:root{--ink:#233c39;--muted:#596c61;--paper:#f8f7f2;--white:#fff;--emerald:#315b49;--emerald2:#203d34;--lake:#39727b;--saffron:#ba935b;--line:#e4e8df;--radius:14px;--shadow:0 20px 60px #203b3020;--max:1280px}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:110px}
body{margin:0;background:#fcfcf8;color:var(--ink);font-family:Inter,"Segoe UI",system-ui,sans-serif;font-size:15px;line-height:1.75}
a{text-decoration:none;color:inherit}
img{max-width:100%;display:block}
button,input,select,textarea{font:inherit}
button{cursor:pointer}
h1,h2,h3,h4{font-family:Georgia,"Times New Roman",serif;font-weight:400;letter-spacing:-.05em;line-height:1.12;margin:0 0 22px}
h1{font-size:clamp(3rem,5.5vw,5.7rem)}
h2{font-size:clamp(2.5rem,4.2vw,4.3rem)}
h3{font-size:1.6rem}
h4{font-size:1.25rem}
h2 em,h1 em{color:#9c9d6e;font-weight:400}
p{margin:0 0 20px}
.container{width:min(var(--max),calc(100% - 80px));margin:auto}
.section{padding:100px 0}
.section.soft{background:#f2f4ec}
.section.dark{background:var(--emerald2);color:#fff}
.eyebrow{display:block;color:#9d825a;font-size:12px;letter-spacing:.18em;text-transform:uppercase;font-weight:650;margin-bottom:21px}
.eyebrow i{width:22px;height:1px;background:#a88a5e;display:inline-block;vertical-align:middle;margin-right:10px}
.lead{font-size:1.13rem;color:#6f8177;line-height:1.8}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:17px;background:var(--emerald);color:#fff;border:1px solid var(--emerald);border-radius:5px;padding:14px 23px;font-size:12px;font-weight:650;letter-spacing:.02em;line-height:1.5;cursor:pointer;transition:background .2s,transform .2s}
.btn:hover{background:#244738;transform:translateY(-2px)}
.btn.small{font-size:12px;padding:11px 16px}
.btn.gold{background:#d7c39a;color:#223f33;border-color:#d7c39a}
.btn.gold:hover{background:#e5d7b9}
.btn.light{background:#fff;color:var(--ink);border-color:#d7dfd4}
.btn.outline,.btn.outline-dark{background:transparent}
.btn.outline{color:#fff;border-color:#ffffff77}
.btn.outline-dark{color:#476951;border-color:#768d75}
.text-link{display:inline-flex;align-items:center;gap:10px;font-size:12px;color:#4c6e56;line-height:1.5;font-weight:650;border-bottom:1px solid #c5d1c1;padding-bottom:5px}
.text-link:hover{color:#243e30}
.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:55px;margin-bottom:40px}
.section-head h2{margin:0}
.section-head>div:last-child{max-width:410px}
.section-head p{color:#64736a;font-size:13px;line-height:1.8}
.section-head>.text-link{margin-bottom:8px}
.utility-bar{font-size:12px;letter-spacing:.04em;background:#284839;color:#d4ddd3;padding:8px 0}
.utility-bar>.container{display:flex;justify-content:space-between;align-items:center}
.utility-bar .container>div{display:flex;gap:23px}
.site-header{position:sticky;top:0;z-index:60;background:#fcfcf8f5;backdrop-filter:blur(14px);border-bottom:1px solid #e5e9df}
.site-header.scrolled{box-shadow:0 3px 20px #1c372e08}
.nav-wrap{display:flex;justify-content:space-between;align-items:center;gap:24px;min-height:105px}
.brand{display:flex;align-items:center;gap:13px;flex-shrink:0}
.brand-logo{width:68px;height:73px;object-fit:contain}
.brand-text strong{display:block;font-family:Georgia,serif;font-size:13px;letter-spacing:.07em;font-weight:400}
.brand-text>span{font-size:10px;letter-spacing:.18em;display:block;margin-top:2px;color:#98a090}
.nav{display:flex;align-items:center;gap:24px;font-size:12px;color:#778375}
.nav>a,.nav-drop>a{padding:15px 0;display:block}
.nav a:hover,.nav a.active{color:#314f39}
.nav a.active{box-shadow:0 1px #a8b69b}
.nav-drop{position:relative}
.drop-menu{display:none;position:absolute;top:100%;left:-20px;width:270px;background:#fff;padding:12px;border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow)}
.drop-menu a{display:block;padding:10px;font-size:12px;border-radius:5px}
.drop-menu a:hover{background:#f1f4ec}
.nav-drop:hover .drop-menu,.nav-drop:focus-within .drop-menu{display:block}
.header-actions{display:flex;align-items:center;gap:10px}
.mobile-toggle{display:none;background:transparent;border:1px solid #d2dacd;border-radius:5px;color:#466744;font-size:20px;padding:5px 10px}
.mobile-menu{display:none}
.skip-link{position:fixed;left:10px;top:-100px;background:#fff;padding:10px;z-index:100}
.skip-link:focus{top:10px}
a:focus-visible,button:focus-visible{outline:3px solid #bfb579;outline-offset:5px}
/* New home design */
.welcome-hero{padding:50px 0 75px;overflow:hidden;background:radial-gradient(ellipse at 10% 30%,#f7f7ef,transparent 65%)}
.welcome-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:75px;align-items:center}
.welcome-copy{padding:20px 0}
.welcome-copy h1{font-size:clamp(3.2rem,5.6vw,5.7rem);line-height:1.06;letter-spacing:-.06em;max-width:630px;margin:25px 0}
.welcome-copy>p{max-width:510px;font-size:14px;color:#5c6e60;line-height:1.9}
.hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:25px;margin-top:29px}
.welcome-details{display:flex;gap:33px;margin-top:46px}
.welcome-details>div{border-right:1px solid #dce2d5;padding-right:24px}
.welcome-details>div:last-child{border:0;padding-right:0}
.welcome-details strong{display:block;font-family:Georgia;font-weight:400;font-size:21px;line-height:1.3;letter-spacing:-.03em;color:#597058}
.welcome-details span{font-size:12px;color:#63745c}
.welcome-visual{position:relative;padding:0 15px 45px 15px}
.hero-arch{height:570px;border-radius:220px 220px 10px 10px;overflow:hidden;position:relative;background:#d6d9c8;border:7px solid #f3f4e9;outline:1px solid #dfe4d5}
.hero-arch>picture,.hero-arch>picture>img{width:100%;height:100%;object-fit:cover;object-position:center}
.hero-arch:after{position:absolute;inset:65% 0 0;content:'';background:linear-gradient(transparent,#21352c99)}
.image-label{position:absolute;bottom:20px;left:0;right:0;text-align:center;font-size:10px;letter-spacing:.18em;color:#fff;z-index:1}
.hero-inset{position:absolute;width:186px;bottom:0;left:-45px;border:7px solid #fcfcf8;background:#fcfcf8;box-shadow:0 15px 40px #3e583126}
.hero-inset img{width:100%;height:135px;object-fit:cover}
.hero-inset span{font:italic 12px Georgia;display:block;text-align:center;padding:11px 2px 5px;color:#7f896b}
.hero-location{position:absolute;right:-5px;bottom:0;color:#657c60;font-size:12px;letter-spacing:.04em;padding:15px;background:#f2f4e9}
.hero-location>span{font-size:26px;float:left;line-height:1.3;margin-right:12px;color:#c1ad7b}
.hero-location small{font-size:10px;color:#97a58d}
.booking-bar{position:relative;z-index:2;margin:0}
.booking-panel{display:grid;grid-template-columns:1.35fr 1fr 1fr .8fr auto;align-items:center;gap:24px;padding:30px 32px;background:#fff;border:1px solid #e2e7d9;border-radius:8px;box-shadow:0 17px 45px #29422708}
.booking-intro{padding-right:18px;border-right:1px solid #e4e8de}
.booking-intro .eyebrow{font-size:10px;margin-bottom:6px}
.booking-intro strong{font:20px/1.2 Georgia;color:#425d45;display:block}
.field label{display:block;font-size:12px;font-weight:650;letter-spacing:.03em;color:#799077;margin-bottom:7px}
.field input,.field select,.field textarea{width:100%;border:1px solid #dfe5d9;border-radius:5px;background:#fff;padding:11px 12px;font-size:13px;color:#4f644e;outline:none;min-width:0}
.field input:focus,.field select:focus,.field textarea:focus{border-color:#89a57b;box-shadow:0 0 0 3px #9dba9c1c}
.field input[type=checkbox]{width:auto;accent-color:var(--emerald)}
.field textarea{resize:vertical;line-height:1.8}
.booking-panel .field input,.booking-panel .field select{border:0;padding:3px 0;background:transparent}
.booking-panel>.btn{white-space:nowrap;padding:15px 18px}
.comfort-strip{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:36px 0;color:#8a9c7b;font-size:12px;border-bottom:1px solid #e1e6d8}
.rooms-section{padding-top:85px}
.cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:40px 32px}
.room-card{background:#fff;border:1px solid #e3e9de;border-radius:8px;overflow:hidden}
.room-photo-link,.room-card>a{display:block;position:relative;overflow:hidden}
.room-img{width:100%;height:300px;object-fit:cover;transition:transform .5s}
.room-card:hover .room-img{transform:scale(1.035)}
.room-number{position:absolute;left:22px;top:20px;color:#fff;font:italic 24px Georgia;text-shadow:0 1px 6px #0008}
.photo-arrow{position:absolute;right:18px;bottom:18px;display:grid;place-items:center;width:37px;height:37px;border-radius:50%;background:#fff;color:#5e7751}
.room-card-body{padding:27px 30px 25px}
.room-card-body .eyebrow{font-size:10px;margin-bottom:12px}
.room-card h3{font-size:27px;margin-bottom:12px;letter-spacing:-.035em}
.room-card-body>p{font-size:12px;color:#607256;line-height:1.8}
.room-meta{display:flex;flex-wrap:wrap;gap:7px 20px;font-size:12px;color:#62775a;margin:18px 0 20px}
.room-meta>span{position:relative}
.room-meta>span+span:before{content:'·';position:absolute;left:-11px}
.room-meta .chip:before{display:none}
.chip{background:#f1f5ec;color:#7e9672;padding:5px 9px;border-radius:5px;font-size:12px}
.room-bottom{border-top:1px solid #eaf0e3;padding-top:19px;display:flex;justify-content:space-between;gap:12px;align-items:center}
.room-bottom .text-link{font-size:12px}
.price strong{font-size:13px;color:#6f8b5f;font-weight:550}
.price small{font-size:12px;color:#8c9d82}
.story-section{background:#f1f4e9}
.story-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}
.story-photo{position:relative;padding:0 0 24px}
.story-photo>img{width:100%;height:550px;object-fit:cover;border-radius:7px 80px 7px 7px}
.story-note{position:absolute;bottom:0;left:-20px;background:#fff;padding:23px 26px;box-shadow:0 15px 45px #3b4d241a;display:flex;gap:20px;align-items:center}
.story-note>span{font-size:32px;color:#b5ad72}
.story-note strong{font:italic 19px/1.4 Georgia;color:#657452}
.story-copy>p{color:#5d7150;font-size:13px;line-height:1.9}
.story-copy .lead{font-size:16px;color:#657856}
.story-copy h2{margin-bottom:25px}
.story-points{margin:25px 0 30px}
.story-points>div{display:flex;gap:18px;border-top:1px solid #dce4cd;padding-top:17px;margin-top:14px}
.story-points>div>span{font:italic 18px Georgia;color:#b6b18d}
.story-points p{font-size:12px;color:#65794f;margin:0}
.story-points strong{display:block;color:#617a4b;font-size:13px;margin-bottom:4px}
.offer-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.offer-card{border:1px solid #e5e9db;border-radius:8px;padding:30px 26px;background:#fff}
.offer-card:nth-child(2){background:#f6f4eb}
.offer-card:nth-child(3){background:#f1f5ef}
.offer-card:nth-child(4){background:#f7f5ef}
.offer-icon{display:block;color:#9baa87;font-size:34px;height:60px}
.offer-card .eyebrow{font-size:10px;letter-spacing:.13em;margin-bottom:12px}
.offer-card h3{font-size:22px;line-height:1.15;min-height:51px}
.offer-card p{font-size:12px;color:#607247;min-height:66px}
.offer-card .text-link{font-size:12px}
.amenities-layout{display:grid;grid-template-columns:1fr 1.2fr;gap:100px;align-items:center}
.amenities-layout>div:first-child>p{font-size:13px;color:#c0cdbb;max-width:390px}
.amenities-section .eyebrow{color:#aab896}
.amenities-section h2{color:#e5eddd}
.amenities-section h2 em{color:#a5b590}
.amenities-showcase{display:grid;grid-template-columns:1fr 1fr;gap:30px 45px}
.amenities-showcase>div{border-bottom:1px solid #ffffff15;padding-bottom:24px}
.amenities-showcase span{font-size:30px;color:#95b28c;display:block;margin-bottom:15px;line-height:1}
.amenities-showcase strong{font-family:Georgia;font-size:21px;font-weight:400;display:block;color:#dfe8d5;margin-bottom:8px}
.amenities-showcase p{font-size:12px;color:#c0cdbb;line-height:1.9;margin:0}
.home-gallery{display:grid;grid-template-columns:1.4fr 1fr 1fr;grid-template-rows:180px 180px;gap:17px}
.home-gallery a{overflow:hidden;border-radius:7px}
.home-gallery a:first-child{grid-row:1/3}
.home-gallery a:nth-child(2){grid-column:2/4}
.home-gallery img{width:100%;height:100%;object-fit:cover;transition:.4s}
.home-gallery a:hover img{transform:scale(1.04)}
.reviews{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.review-card{padding:30px;border:1px solid #dee6d3;border-radius:8px;background:#fff}
.review-card blockquote{margin:16px 0 25px;font:19px/1.6 Georgia;color:#71805d}
.review-card strong{font-size:12px}
.review-card small{display:block;font-size:12px;color:#8fa278}
.stars{letter-spacing:.12em;color:#b6a167;font-size:12px}
.final-cta{padding-top:0}
.cta-band{position:relative;text-align:center;border-radius:10px;background:#e9eede;padding:70px 35px;overflow:hidden}
.cta-band:before,.cta-band:after{content:'';position:absolute;width:340px;height:340px;bottom:-130px;border:1px solid #d7dfc7;border-radius:50%;pointer-events:none}
.cta-band:before{left:-160px}
.cta-band:after{right:-120px;width:400px;height:400px;bottom:-190px}
.cta-band h2{font-size:clamp(2.7rem,4.5vw,4.5rem);color:#45613b}
.cta-band p{font-size:12px;color:#62754d}
.cta-band .btn{margin-top:15px}
.cta-band .eyebrow{color:#98a080}
.footer{background:#243d31;color:#d2dec8;padding:0 0 24px}
.footer-top{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:37px 0;border-bottom:1px solid #ffffff15}
.footer-top>span{font:italic 27px Georgia;color:#d0dac4}
.footer-top a{font-size:12px;border-bottom:1px solid #6b805a;padding-bottom:7px;color:#b6c39c}
.footer-grid{display:grid;grid-template-columns:1.2fr .7fr .8fr 1fr;gap:65px;padding:48px 0}
.footer-brand{position:relative}
.footer-logo{height:83px;width:79px;object-fit:contain;background:#f9f8e9;border-radius:5px;padding:4px;margin-bottom:15px}
.footer h3{font-size:23px;margin-bottom:14px;color:#d1dfbd}
.footer h4{font-family:inherit;font-size:12px;letter-spacing:.06em;color:#b8c5a1;margin-bottom:20px;font-weight:550}
.footer p,.footer a{font-size:12px;line-height:1.9;color:#8c9f80}
.footer a{display:block;margin:8px 0}
.footer a:hover{color:#d7e0c7}
.footer-bottom{border-top:1px solid #ffffff12;padding-top:22px;display:flex;justify-content:space-between;gap:15px;font-size:12px;color:#718968}
.mobile-actions{display:none}
/* Inner pages and booking */
.page-hero{position:relative;background:#283e32;color:#fff;min-height:420px;display:flex;align-items:flex-end;overflow:hidden}
.page-hero>img,.page-hero>picture,.page-hero>picture>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 52%}
.page-hero:before{opacity:var(--hero-overlay,.7);content:'';position:absolute;inset:0;background:linear-gradient(90deg,#13261ecf,#13261e33),linear-gradient(0deg,#13261e99,transparent);z-index:1}
.page-hero>.container{position:relative;z-index:2;padding:70px 0 60px}
.page-hero h1{font-size:clamp(2.8rem,5vw,4.9rem);max-width:900px}
.page-hero p{font-size:13px;max-width:600px}
.breadcrumbs{font-size:12px;color:#d1d9c8;letter-spacing:.12em;text-transform:uppercase;margin-bottom:23px}
.page-hero .lead{margin-bottom:0}
.room-detail-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(290px,.8fr);gap:50px;align-items:start}
.room-gallery-main{border-radius:8px;overflow:hidden;background:#f1f3ed;height:450px}
.room-gallery-main img{width:100%;height:100%;object-fit:contain}
.thumb-row{display:grid;grid-template-columns:repeat(6,1fr);gap:7px;margin-top:10px}
.thumb-row button{padding:0;border:2px solid transparent;border-radius:6px;background:#f0f3e9;overflow:hidden}
.thumb-row button.active{border-color:#8faa73}
.thumb-row img{height:65px;width:100%;object-fit:cover}
.room-info-panel{padding:30px;border:1px solid #e0e7d4;background:#fff;border-radius:8px;position:sticky;top:135px}
.room-info-panel .eyebrow{font-size:10px}
.room-info-panel .room-meta{line-height:1.6}
.amenity-list{display:grid;grid-template-columns:1fr 1fr;gap:11px}
.amenity{padding:10px 13px;border:1px solid #e3e9da;border-radius:5px;font-size:12px;color:#809a6c}
.room-detail-grid p{color:#86977b}
.room-detail-grid .notice{font-size:12px;color:#97a686;line-height:1.8}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.full{grid-column:1/-1}
.contact-card{padding:35px;border:1px solid #e0e7d8;border-radius:8px;background:#fff}
.contact-card h2{font-size:32px}
.contact-card h3{font-size:23px}
.contact-card>p{font-size:13px;color:#839772}
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px}
.map-wrap{border-radius:8px;border:1px solid var(--line);overflow:hidden;height:650px}
.map-wrap iframe{width:100%;height:100%;border:0}
.notice{font-size:12px;color:#899b7a;line-height:1.8}
.alert{padding:15px 20px;border:1px solid #d8e5ca;background:#eef5e6;color:#678151;border-radius:7px;margin-bottom:25px;font-size:13px}
.alert.error{background:#fff0e9;border-color:#f3d9cd;color:#b47963}
.feature-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.feature-card,.experience-card{padding:28px;border:1px solid #e0e8d7;border-radius:7px;background:#fff}
.feature-icon{font-size:26px;color:#8fa876;margin-bottom:20px}
.feature-card h3,.experience-card h3{font-size:24px}
.feature-card p,.experience-card p{font-size:12px;color:#8a9d78}
.experience-card img{width:100%;height:200px;object-fit:cover}
.stat-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:17px;margin:25px 0}
.stat{padding:22px;border:1px solid #dee7d1;border-radius:6px;background:#fff;font-size:12px;color:#93a580}
.stat strong{display:block;font:25px Georgia;color:#758d5d;margin-bottom:5px}
.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;grid-auto-rows:230px}
.gallery-grid>a{border-radius:8px;overflow:hidden}
.gallery-grid img{width:100%;height:100%;object-fit:cover}
.gallery-grid>a:first-child{grid-column:span 2;grid-row:span 2}
.lightbox{display:none;position:fixed;inset:0;background:#13251aea;z-index:200;align-items:center;justify-content:center;padding:50px 30px}
.lightbox.open{display:flex}
.lightbox img{max-width:100%;max-height:88svh;object-fit:contain}
.lightbox-close{position:absolute;right:24px;top:10px;font-size:35px;color:#fff;background:none;border:0}
.table-wrap{overflow:auto}
.tariff-table{width:100%;border-collapse:collapse;min-width:720px;border:1px solid var(--line)}
.tariff-table th,.tariff-table td{padding:18px;border-bottom:1px solid var(--line);text-align:left;font-size:12px}
.tariff-table th{background:#edf3e7;color:#7e956a;text-transform:uppercase;font-size:12px;letter-spacing:.08em}
.rating-panel{display:grid;grid-template-columns:1fr 2fr;gap:35px;background:#fff;padding:40px;border:1px solid var(--line);border-radius:8px;margin-bottom:30px}
.rating-big{font:65px Georgia;color:#90a572}
.rating-panel>div{font-size:12px;color:#92a67d}
.rating-panel .lead{font-size:15px}
.facility-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.facility-group{background:#fff;border:1px solid #dfe7d5;border-radius:8px;padding:25px}
.facility-group h3{font-size:24px;color:#6f8658}
.facility-group ul{padding:0;margin:0;list-style:none}
.facility-group li{display:flex;justify-content:space-between;gap:15px;font-size:12px;color:#7c9270;border-top:1px solid #ecf1e5;padding:11px 0;line-height:1.5}
.facility-group li:first-child{border:0}
.facility-group li small{text-align:right;max-width:40%;font-size:12px;color:#ac956a;flex-shrink:0}
.facility-notes{padding:25px;background:#eaf0e1;border-radius:7px;margin-top:24px;font-size:12px;color:#7b8e6c}
.facility-notes p{margin:5px 0}
.offer-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.offer-choice{display:flex!important;align-items:start;gap:9px;padding:14px;border:1px solid #dfe6d7;border-radius:7px;text-transform:none!important;letter-spacing:0!important;cursor:pointer}
.offer-choice input{margin-top:4px;width:auto}
.offer-choice span{flex:1}
.offer-choice strong,.offer-choice small{display:block;font-size:12px}
.offer-choice small{font-size:12px;font-weight:400;color:#99a988;margin-top:4px}
.offer-choice em{font-size:12px;font-style:normal;font-weight:400;color:#ad996f;max-width:70px}
.rich-content{max-width:980px}
.rich-content img,.contact-card img{max-width:100%;height:auto}
.rich-content h2{margin-top:30px}
.rich-content p{color:#7d9270}
.content-section{padding-bottom:0}
@media(max-width:1250px){.container{width:min(var(--max),calc(100% - 50px))}
.nav{gap:16px}
.brand-text{display:none}
.welcome-grid{gap:50px}
.welcome-copy h1{font-size:5.5vw}
.hero-arch{height:530px}
.hero-inset{left:-30px;width:165px}
.booking-panel{gap:18px;padding:24px}
.booking-intro strong{font-size:18px}
.offer-card{padding:25px 20px}
.story-grid{gap:55px}
.amenities-layout{gap:60px}
.footer-grid{gap:35px}
}
@media(max-width:1000px){.nav{display:none}
.brand-text{display:block}
.mobile-toggle{display:block}
.nav-wrap{min-height:90px}
.brand-logo{height:65px;width:62px}
.mobile-menu.open{display:block;position:fixed;z-index:80;right:18px;left:18px;top:125px;max-height:calc(100svh - 160px);overflow:auto;padding:15px;background:#fff;border:1px solid #dee6d2;border-radius:8px;box-shadow:var(--shadow)}
.mobile-menu a{display:block;padding:11px 14px;border-bottom:1px solid #f2f5ee;font-size:12px}
.mobile-menu .room-mobile-link{font-size:12px;color:#94a584;padding-left:27px}
.mobile-menu a:hover{background:#edf2e8}
.welcome-grid{gap:30px}
.welcome-copy h1{font-size:5.8vw}
.hero-arch{height:475px;border-radius:160px 160px 8px 8px}
.hero-inset{width:145px}
.hero-inset img{height:100px}
.welcome-details{gap:17px}
.welcome-details>div{padding-right:16px}
.welcome-details strong{font-size:18px}
.welcome-details span{font-size:10px}
.hero-location{right:-10px;font-size:12px}
.hero-location>span{display:none}
.booking-intro{grid-column:1/-1;border:0;display:flex;gap:15px;align-items:center}
.booking-intro .eyebrow{margin:0}
.booking-panel{grid-template-columns:1fr 1fr 1fr auto}
.comfort-strip{font-size:12px;gap:15px;flex-wrap:wrap;justify-content:center}
.offer-grid,.feature-grid,.facility-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.story-grid{gap:38px}
.story-photo>img{height:480px}
.story-note{left:-10px;padding:18px}
.story-note strong{font-size:16px}
.amenities-layout{gap:45px}
.amenities-showcase{gap:25px}
.room-img{height:250px}
.room-card-body{padding:24px}
.room-card h3{font-size:24px}
.footer-grid{grid-template-columns:repeat(2,1fr);gap:30px}
.room-detail-grid{grid-template-columns:1fr}
.room-info-panel{position:static}
.contact-grid{grid-template-columns:1fr}
.map-wrap{height:390px}
.reviews{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:720px){body{padding-bottom:56px}
.container{width:calc(100% - 36px)}
.utility-bar{font-size:10px;padding:7px 0}
.utility-bar .container>span{display:none}
.utility-bar .container>div{width:100%;justify-content:space-between;gap:8px}
.nav-wrap{min-height:83px;gap:10px}
.brand{gap:8px}
.brand-logo{width:51px;height:56px}
.brand-text strong{font-size:12px}
.brand-text>span{font-size:6px;letter-spacing:.13em}
.header-actions .btn{font-size:12px;padding:10px 12px}
.mobile-toggle{font-size:17px;padding:4px 8px}
.mobile-menu.open{top:116px;max-height:calc(100svh - 180px)}
.section{padding:70px 0}
.section-head{display:block;margin-bottom:30px}
.section-head>div:last-child{margin-top:20px}
.section-head p{font-size:12px}
.section-head>.text-link{margin-top:18px}
h2{font-size:38px}
.eyebrow{font-size:12px;margin-bottom:17px}
.welcome-hero{padding:25px 0 35px}
.welcome-grid{display:block}
.welcome-copy{padding:15px 0 28px}
.welcome-copy h1{font-size:clamp(40px,10.5vw,69px);max-width:560px;margin:20px 0}
.welcome-copy>p{font-size:12px;max-width:480px}
.hero-actions{gap:22px;margin-top:23px}
.hero-actions .btn{font-size:12px;padding:13px 20px}
.hero-actions .text-link{font-size:12px}
.welcome-details{margin-top:30px;gap:24px}
.welcome-details strong{font-size:18px}
.welcome-details span{font-size:10px}
.welcome-visual{padding:5px 28px 43px 44px;max-width:480px;margin:10px auto 0}
.hero-arch{height:390px;border-radius:170px 170px 8px 8px}
.hero-inset{left:0;width:150px;bottom:0;border-width:5px}
.hero-inset img{height:110px}
.hero-inset span{font-size:12px}
.hero-location{right:7px;padding:12px;font-size:10px}
.hero-location small{font-size:10px}
.image-label{font-size:6px}
.booking-panel{padding:22px;grid-template-columns:1fr 1fr;gap:20px}
.booking-intro{display:block}
.booking-intro strong{font-size:24px}
.booking-intro .eyebrow{margin-bottom:5px}
.booking-panel .btn{grid-column:1/-1;padding:13px}
.booking-panel .field:nth-last-child(2){grid-column:1/-1}
.comfort-strip{padding:25px 0;gap:10px 22px;font-size:12px;line-height:1.9}
.cards{grid-template-columns:1fr;gap:25px}
.room-img{height:280px}
.room-card-body{padding:25px}
.room-card h3{font-size:28px}
.room-meta{font-size:12px}
.story-grid{display:flex;flex-direction:column;gap:35px}
.story-photo{width:100%;padding-bottom:20px}
.story-photo>img{height:390px;border-radius:6px 60px 6px 6px}
.story-note{left:10px;padding:16px 20px}
.story-note strong{font-size:17px}
.story-note>span{font-size:25px}
.story-copy>p{font-size:12px}
.story-copy .lead{font-size:15px}
.offer-grid{gap:12px}
.offer-card{padding:23px 18px}
.offer-card h3{font-size:23px;min-height:56px}
.offer-card .eyebrow{font-size:10px}
.offer-card p{font-size:12px;min-height:74px}
.offer-icon{height:48px;font-size:28px}
.amenities-layout{grid-template-columns:1fr;gap:35px}
.amenities-showcase{gap:22px}
.amenities-showcase strong{font-size:20px}
.amenities-showcase p{font-size:12px}
.home-gallery{grid-template-columns:1fr 1fr;grid-template-rows:220px 160px 160px;gap:10px}
.home-gallery a:first-child{grid-column:1/3;grid-row:auto}
.home-gallery a:nth-child(2){grid-column:auto}
.home-gallery a:last-child{grid-column:1/3}
.reviews{grid-template-columns:1fr}
.final-cta{padding-top:0}
.cta-band{padding:45px 25px}
.cta-band h2{font-size:39px}
.cta-band:before{display:none}
.footer-top{display:block;padding:32px 0}
.footer-top>span{font-size:24px}
.footer-top a{display:inline-block;margin-top:19px;font-size:12px}
.footer-grid{grid-template-columns:1fr 1fr;padding:35px 0;gap:33px 22px}
.footer-brand{grid-column:1/-1;display:grid;grid-template-columns:85px 1fr;gap:0 20px}
.footer-logo{grid-row:1/3;height:89px}
.footer-brand h3{font-size:23px}
.footer-brand p{font-size:12px;max-width:240px}
.footer-grid>div:last-child{grid-column:1/-1}
.footer-bottom{display:block;font-size:10px}
.footer-bottom>span{display:block;margin:7px 0}
.mobile-actions{display:grid;grid-template-columns:repeat(4,1fr);position:fixed;bottom:0;left:0;right:0;background:#294b38;color:#cedcc0;z-index:90;box-shadow:0 -5px 20px #23402e15;padding-bottom:env(safe-area-inset-bottom)}
.mobile-actions a{text-align:center;font-size:12px;padding:17px 2px;border-right:1px solid #ffffff12}
.mobile-actions a:last-child{background:#c6bd94;color:#345435;font-weight:650}
.page-hero{min-height:350px}
.page-hero>.container{padding:60px 0 40px}
.page-hero h1{font-size:40px}
.page-hero p{font-size:12px}
.breadcrumbs{font-size:10px;margin-bottom:17px}
.room-detail-grid{gap:28px}
.room-gallery-main{height:300px}
.thumb-row{grid-template-columns:repeat(4,1fr)}
.room-info-panel{padding:26px}
.amenity-list{gap:8px}
.amenity{font-size:12px;padding:10px}
.form-grid{grid-template-columns:1fr;gap:17px}
.full{grid-column:auto}
.contact-card{padding:25px}
.contact-card h2{font-size:29px}
.contact-grid{gap:25px}
.feature-grid{gap:13px}
.feature-card,.experience-card{padding:22px}
.feature-card h3,.experience-card h3{font-size:24px}
.feature-card p,.experience-card p{font-size:12px}
.facility-grid{grid-template-columns:1fr}
.facility-group h3{font-size:27px}
.facility-group li{font-size:12px}
.facility-group li small{font-size:12px}
.offer-choices{grid-template-columns:1fr}
.gallery-grid{grid-template-columns:repeat(2,1fr);grid-auto-rows:160px;gap:10px}
.gallery-grid>a:first-child{grid-row:span 1;height:auto}
.rating-panel{grid-template-columns:1fr;padding:28px;gap:20px}
.rating-big{font-size:52px}
.lightbox{padding:50px 10px}
.rich-content h2{font-size:34px}
}
@media(max-width:390px){.brand-text{display:none}
.welcome-copy h1{font-size:41px}
.welcome-details{gap:14px}
.welcome-details>div{padding-right:12px}
.hero-arch{height:350px}
.hero-inset{width:130px}
.hero-inset img{height:100px}
.offer-grid,.feature-grid{grid-template-columns:1fr}
.offer-card h3,.offer-card p{min-height:0}
.room-img{height:240px}
.room-card-body{padding:21px}
.room-bottom{align-items:flex-start}
.room-bottom .text-link{white-space:nowrap}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}
*{transition:none!important;animation:none!important}
}
@media print{.site-header,.utility-bar,.mobile-actions,.mobile-menu,.footer,.btn{display:none!important}
.room-gallery-main,.room-gallery-main img{height:auto;max-height:none;object-fit:contain}
.section{padding:20px 0}
.container{width:100%}
.room-detail-grid{display:block}
body{padding:0;color:#222;background:#fff}
}

.hero-arch>picture{display:block}
