@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;1,400&family=Manrope:wght@300;400;500;600&display=swap');
:root{--ink:#171313;--cream:#fffaf5;--red:#c83d3f;--orange:#fb521f;--amber:#ff9418;--yellow:#ffc20b;--gold:#fb521f;--white:#fff;--line:rgba(23,19,19,.16);--sunset:linear-gradient(90deg,#c83d3f 0%,#fb521f 45%,#ff9418 72%,#ffc20b 100%)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:Manrope,sans-serif;font-weight:300}a{color:inherit;text-decoration:none}button{font:inherit}::selection{background:var(--gold);color:white}.cursor{position:fixed;z-index:99;width:10px;height:10px;border:1px solid var(--gold);border-radius:50%;pointer-events:none;margin:-5px;display:none}@media(pointer:fine){.cursor{display:block}}
.nav{height:88px;position:absolute;inset:0 0 auto;z-index:30;padding:0 5vw;display:flex;align-items:center;color:white;border-bottom:1px solid #ffffff38}.brand{font:500 25px "Cormorant Garamond",serif;letter-spacing:.18em}.brand span{color:#d4b578;font-size:19px}.nav-links{margin-left:auto;display:flex;gap:38px;font-size:12px;letter-spacing:.12em;text-transform:uppercase}.nav-links a{position:relative}.nav-links a:after{content:"";position:absolute;bottom:-8px;left:0;width:0;height:1px;background:white;transition:.3s}.nav-links a:hover:after{width:100%}.nav-book{margin-left:55px;font-size:12px;text-transform:uppercase;letter-spacing:.12em;border:1px solid #ffffff8c;padding:14px 19px}.nav-book span{margin-left:16px}.menu{display:none;background:none;border:0;width:34px}.menu i{display:block;height:1px;background:white;margin:7px 0}
.hero{height:100vh;min-height:720px;position:relative;color:white;overflow:hidden;background:#17251f}.hero-slide,.hero-shade{position:absolute;inset:0}.hero-slide{opacity:0;transform:scale(1.07);transition:opacity 1.2s ease,transform 7s ease;background-size:cover;background-position:center}.hero-slide.active{opacity:1;transform:scale(1)}.slide-one{background-image:url('https://images.unsplash.com/photo-1600607687939-ce8a6c25118c?auto=format&fit=crop&w=2200&q=90')}.slide-two{background-image:url('https://images.unsplash.com/photo-1601918774946-25832a4be0d6?auto=format&fit=crop&w=2200&q=90')}.hero-shade{background:linear-gradient(90deg,#091611b8,#0916112e 62%,#09161157)}.hero-copy{position:absolute;z-index:2;left:10vw;top:52%;transform:translateY(-45%);max-width:850px}.eyebrow{font-size:10px;letter-spacing:.26em;font-weight:600}.eyebrow span{width:34px;height:1px;background:var(--gold);display:inline-block;vertical-align:middle;margin-right:14px}.hero h1,.about h2,.section-head h2,.experience-content h2,.offer h2,.footer-top h2{font-family:"Cormorant Garamond",serif;font-weight:400;letter-spacing:-.04em}.hero h1{font-size:clamp(70px,8vw,128px);line-height:.82;margin:36px 0}.hero h1 em,.about h2 em,.section-head h2 em,.experience-content h2 em,.offer h2 em,.footer-top h2 em{font-weight:400}.hero-intro{font-size:15px;line-height:1.8;max-width:490px;color:#ffffffcc}.circle-link{position:absolute;left:62vw;top:66%;width:135px;height:135px;border-radius:50%;border:1px solid #ffffff8c;display:flex;align-items:center;justify-content:center;font-size:11px;text-transform:uppercase;letter-spacing:.13em;transition:.35s}.circle-link b{position:absolute;right:-7px;background:var(--gold);width:29px;height:29px;border-radius:50%;display:grid;place-items:center}.circle-link:hover{background:white;color:var(--ink);transform:rotate(-8deg)}.hero-index{position:absolute;z-index:3;right:5vw;bottom:74px;display:flex;align-items:center;gap:12px}.hero-index b{font:22px "Cormorant Garamond"}.hero-index span{width:65px;height:1px;background:white}.hero-index small{opacity:.6}.hero-prev,.hero-next{position:absolute;z-index:3;bottom:68px;border:0;background:transparent;color:white;font-size:21px}.hero-prev{left:5vw}.hero-next{left:8vw}
.booking{position:relative;z-index:8;margin:-42px auto 0;max-width:1160px;background:#fff;display:grid;grid-template-columns:repeat(3,1fr) 1.3fr;box-shadow:0 20px 50px #141e181f}.booking>div{padding:25px 28px;border-right:1px solid var(--line)}.booking label{display:block;font-size:9px;text-transform:uppercase;letter-spacing:.2em;color:#867964;margin-bottom:10px}.booking button{border:0;background:none;padding:0;width:100%;display:flex;justify-content:space-between;color:var(--ink)}.booking>a{background:var(--ink);color:white;display:flex;align-items:center;justify-content:space-between;padding:0 35px;text-transform:uppercase;font-size:11px;letter-spacing:.15em;transition:.3s}.booking>a:hover{background:var(--gold)}
.section-pad{padding:145px 8vw}.about{display:grid;grid-template-columns:1.05fr .95fr;gap:10vw;align-items:center}.about-image{height:670px;position:relative}.image-parallax{position:absolute;inset:0;background:url('https://images.unsplash.com/photo-1566073771259-6a8506099945?auto=format&fit=crop&w=1400&q=88') center/cover}.stamp{position:absolute;right:-62px;bottom:55px;width:128px;height:128px;border-radius:50%;background:var(--ink);color:#d9c39a;display:grid;place-items:center;text-align:center;font-family:"Cormorant Garamond";letter-spacing:.18em;font-size:12px;line-height:1.45;animation:slowspin 20s linear infinite}.dark{color:#877451}.light{color:#d4bb8e}.about h2,.section-head h2,.experience-content h2,.footer-top h2{font-size:clamp(55px,6vw,88px);line-height:.9;margin:36px 0}.about-copy>p:not(.eyebrow){line-height:1.9;font-size:14px;color:#59645f;max-width:500px}.facts{display:flex;gap:42px;margin:42px 0;border-top:1px solid var(--line);padding-top:30px}.facts div{display:flex;flex-direction:column}.facts b{font:400 36px "Cormorant Garamond"}.facts span{font-size:9px;text-transform:uppercase;letter-spacing:.12em;color:#7a827e}.text-link{font-size:11px;text-transform:uppercase;letter-spacing:.14em;border-bottom:1px solid var(--ink);padding-bottom:8px}.text-link span{margin-left:18px}
.suites{background:var(--ink);color:white}.section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:70px}.section-head>p{max-width:370px;font-size:13px;line-height:1.8;color:#ffffff94;margin-bottom:15px}.room-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}.room-photo{height:480px;background-size:cover;background-position:center;position:relative;overflow:hidden;transition:.7s}.room-photo:before{content:"";position:absolute;inset:0;background:linear-gradient(transparent 55%,#000a)}.room:hover .room-photo{background-size:auto 110%}.room-photo>span{position:absolute;top:20px;left:20px;font:18px "Cormorant Garamond"}.room-photo>a{position:absolute;bottom:25px;left:25px;font-size:10px;text-transform:uppercase;letter-spacing:.14em;transform:translateY(20px);opacity:0;transition:.35s}.room:hover .room-photo>a{opacity:1;transform:none}.room-meta{display:flex;justify-content:space-between;padding-top:22px}.room-meta small{font-size:9px;color:#c8b58d;text-transform:uppercase;letter-spacing:.13em}.room-meta h3{font:400 29px "Cormorant Garamond";margin:6px 0}.room-meta p{font-size:9px;color:#ffffff8c}.room-meta p b{font:400 20px "Cormorant Garamond";color:white}
.manifesto{background:#bd9e68;color:#17251f;overflow:hidden;padding:25px 0}.marquee{display:flex;width:max-content;animation:marquee 25s linear infinite}.marquee span{font:400 56px "Cormorant Garamond";white-space:nowrap}.experiences{display:grid;grid-template-columns:1fr 1fr;gap:9vw}.experience-photo>div{height:700px;background:url('https://images.unsplash.com/photo-1540555700478-4be289fbecef?auto=format&fit=crop&w=1400&q=88') center/cover}.experience-photo>p{font:italic 25px/1.35 "Cormorant Garamond";max-width:480px;margin:35px 0}.experience-content h2{margin-bottom:55px}.service{display:grid;grid-template-columns:50px 1fr 30px;gap:15px;align-items:start;border-top:1px solid var(--line);padding:23px 0}.service>span{font:13px "Cormorant Garamond";color:#a08762}.service h3{font:400 25px "Cormorant Garamond";margin:0 0 6px}.service p{font-size:11px;margin:0;color:#727b77}.service>b{font-weight:300;transition:.3s}.service:hover>b{transform:translate(5px,-5px);color:var(--gold)}
.offer{height:680px;position:relative;display:grid;place-items:center;text-align:center;color:white;overflow:hidden}.offer-bg{position:absolute;inset:-5%;background:url('https://images.unsplash.com/photo-1540541338287-41700207dee6?auto=format&fit=crop&w=2200&q=90') center/cover;background-attachment:fixed}.offer:after{content:"";position:absolute;inset:0;background:#0c1b1585}.offer-copy{position:relative;z-index:2}.offer-copy>p{font-size:10px;letter-spacing:.27em}.offer h2{font-size:clamp(55px,6vw,88px);line-height:.9;margin:36px 0}.offer a{display:inline-block;border:1px solid #ffffff99;padding:17px 27px;text-transform:uppercase;font-size:10px;letter-spacing:.15em}.offer a span{margin-left:25px}
.testimonials{text-align:center;max-width:1050px;margin:auto}.review{animation:reviewin .6s ease}.quote{font:110px/.6 "Cormorant Garamond";color:#bba47c}.review blockquote{font:italic 42px/1.25 "Cormorant Garamond";margin:22px auto 40px;max-width:900px}.review-person{display:flex;flex-direction:column;gap:5px}.review-person b{text-transform:uppercase;font-size:10px;letter-spacing:.18em}.review-person small{color:#8d8f8c;font-size:10px}.review-controls{display:flex;justify-content:center;align-items:center;gap:24px;margin-top:38px}.review-controls button{border:1px solid var(--line);background:none;border-radius:50%;width:42px;height:42px}.review-controls span{font-size:10px;letter-spacing:.15em}
footer{background:#101d18;color:white;padding:120px 8vw 25px}.footer-top{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #ffffff26;padding-bottom:95px}.footer-top h2{margin-bottom:0}.footer-circle{width:165px;height:165px;border:1px solid #bca376;border-radius:50%;display:grid;place-items:center;text-align:center;text-transform:uppercase;letter-spacing:.14em;font-size:11px;transition:.35s}.footer-circle:hover{background:#bca376;color:#15221d;transform:rotate(-5deg)}.footer-grid{display:grid;grid-template-columns:2fr repeat(3,1fr);gap:60px;padding:75px 0}.footer-grid>div{display:flex;flex-direction:column;align-items:start;gap:13px}.footer-grid p,.footer-grid a{font-size:11px;line-height:1.8;color:#ffffff99}.footer-grid b{font:400 20px "Cormorant Garamond";margin-bottom:10px}.footer-bottom{border-top:1px solid #ffffff1a;padding-top:25px;display:flex;justify-content:space-between;font-size:8px;text-transform:uppercase;letter-spacing:.14em;color:#ffffff59}
.reveal{opacity:0;transform:translateY(45px);transition:opacity .9s ease,transform .9s cubic-bezier(.16,1,.3,1)}.reveal.in-view{opacity:1;transform:none}.loaded .hero-copy>*{animation:heroIn 1s both}.loaded .hero-copy>*:nth-child(2){animation-delay:.15s}.loaded .hero-copy>*:nth-child(3){animation-delay:.3s}.loaded .hero-copy>*:nth-child(4){animation-delay:.45s}@keyframes heroIn{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:none}}@keyframes slowspin{to{transform:rotate(360deg)}}@keyframes marquee{to{transform:translateX(-50%)}}@keyframes reviewin{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
@media(max-width:900px){.nav{height:70px}.nav-links{position:fixed;inset:70px 0 auto;background:#15221d;padding:35px 6vw;display:flex;flex-direction:column;transform:translateY(-150%);transition:.4s}.nav-links.open{transform:none}.nav-book{display:none}.menu{display:block;margin-left:auto}.hero{min-height:680px}.hero-copy{left:7vw;right:7vw}.hero h1{font-size:65px}.circle-link{left:auto;right:8vw;top:72%;width:105px;height:105px}.hero-prev,.hero-next{display:none}.booking{margin:0;grid-template-columns:1fr 1fr}.booking>a{min-height:75px}.about,.experiences{grid-template-columns:1fr}.about-image{height:520px}.stamp{right:20px}.section-pad{padding:90px 7vw}.section-head{display:block}.room-grid{grid-template-columns:1fr}.room-photo{height:520px}.experience-photo>div{height:550px}.offer-bg{background-attachment:scroll}.footer-grid{grid-template-columns:1fr 1fr}.cursor{display:none}}
@media(max-width:560px){.hero{height:90vh}.hero h1{font-size:53px}.hero-intro{font-size:13px;padding-right:20px}.circle-link{display:none}.hero-index{bottom:35px}.booking{grid-template-columns:1fr}.booking>div{padding:18px 22px}.booking>a{min-height:65px}.about-image{height:430px}.about h2,.section-head h2,.experience-content h2,.footer-top h2{font-size:52px}.facts{gap:20px;flex-wrap:wrap}.facts b{font-size:29px}.room-photo{height:420px}.manifesto .marquee span{font-size:40px}.experience-photo>div{height:430px}.review blockquote{font-size:31px}.offer{height:560px}.offer h2{font-size:50px}.footer-top{align-items:start}.footer-circle{width:115px;height:115px}.footer-grid{grid-template-columns:1fr}.footer-bottom{gap:15px;flex-direction:column}.room-meta{display:block}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.reveal{opacity:1;transform:none}}

/* Identidade Cores do Verão */
.brand-logo{width:138px;height:70px;display:flex;align-items:center;overflow:hidden}.brand-logo img{display:block;width:134px;height:auto;mix-blend-mode:screen;filter:brightness(1.18) contrast(1.08)}
.hero{background:#171313}.slide-one{background-image:url('assets/area-piscina-panoramica.jpg')}.slide-two{background-image:url('assets/vista-jardim-piscina.jpg')}.slide-three{background-image:url('assets/jardim-parede-vermelha.jpg')}.hero-shade{background:linear-gradient(90deg,rgba(23,10,10,.82),rgba(56,17,12,.28) 62%,rgba(23,10,10,.46))}.hero:after{content:"";position:absolute;z-index:1;inset:auto 0 0;height:5px;background:var(--sunset)}
.nav-book{border-color:#ffffffb3;background:rgba(200,61,63,.15)}.nav-book:hover{background:var(--red);border-color:var(--red)}
.booking>a,.suites,footer{background:#171313}.booking>a:hover{background:var(--red)}
.image-parallax{background-image:url('assets/jardim-cores-do-verao.jpg');background-position:center}.stamp{background:var(--red);color:white}.stamp:after{content:"";position:absolute;inset:7px;border:1px solid rgba(255,194,11,.65);border-radius:50%}
.dark{color:var(--red)}.light{color:#ff9a1b}.room-meta small,.service>span,.quote{color:var(--orange)}
.manifesto{background:var(--sunset);color:#171313}.experience-photo>div{background-image:url('assets/experiencia-piscina.jpg');background-position:center}.offer-bg{background-image:url('assets/piscinas-hidro.jpg')}.offer:after{background:linear-gradient(90deg,rgba(23,10,10,.74),rgba(200,61,63,.34))}
.footer-circle{border-color:var(--orange)}.footer-circle:hover{background:var(--sunset);color:#171313}.footer-logo{display:block;width:190px;height:96px;overflow:hidden;background:white;border-radius:3px}.footer-logo img{width:190px;height:auto;display:block}
.eyebrow span,.hero-index span{background:var(--sunset)}
@media(max-width:900px){.nav-links{background:#171313}.brand-logo{width:112px;height:58px}.brand-logo img{width:108px}}

/* Cabeçalho editorial claro */
.site-header{position:absolute;inset:0 0 auto;z-index:40;background:#fff;color:var(--ink);box-shadow:0 8px 35px rgba(23,19,19,.08)}
.header-shell{width:min(1180px,90vw);margin:0 auto;display:flex;align-items:center}
.top-strip{height:35px;border-top:2px solid var(--ink);border-bottom:1px solid #eee;background:#fff;color:#8a817e;font-size:9px;letter-spacing:.04em}
.top-strip .header-shell{height:100%;justify-content:space-between}.top-strip a{transition:color .3s}.top-strip a:hover{color:var(--red)}
.site-header .nav{position:relative;inset:auto;height:88px;padding:0;background:#fff;color:var(--ink);border:0}
.nav-shell{height:100%}.site-header .brand-logo{width:116px;height:76px;mix-blend-mode:normal;overflow:visible}.site-header .brand-logo img{width:110px;height:auto;mix-blend-mode:multiply;filter:none}
.site-header .nav-links{margin-left:auto;gap:34px;font-size:10px;font-weight:500;color:#665f5c}.site-header .nav-links a:after{background:var(--sunset);height:2px;bottom:-12px}
.site-header .nav-book{margin-left:44px;color:var(--red);border:1px solid rgba(200,61,63,.45);background:transparent;padding:15px 20px;transition:color .35s,background .35s,border-color .35s,transform .35s}.site-header .nav-book:hover{color:#fff;background:var(--red);border-color:var(--red);transform:translateY(-2px)}
.hero{padding-top:123px;min-height:820px}.hero-copy{top:57%}

/* Hover das acomodações: camada transformável, sem salto de background-size */
.room-photo{isolation:isolate;background:none!important;transition:none;clip-path:inset(0)}
.room-photo-image{position:absolute;z-index:-2;inset:-2px;background-position:center;background-size:cover;transform:scale(1.001);transition:transform 1.1s cubic-bezier(.2,.75,.25,1),filter .8s ease;will-change:transform}
.room-photo-shade{position:absolute;z-index:-1;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.04) 40%,rgba(0,0,0,.66));opacity:.75;transition:opacity .65s ease}
.room-photo:before{display:none}.room:hover .room-photo-image{transform:scale(1.075);filter:saturate(1.05)}.room:hover .room-photo-shade{opacity:1}
.room-photo>a{display:flex;align-items:center;gap:12px}.room-photo>a b{font-size:16px;font-weight:300;transition:transform .4s ease}.room:hover .room-photo>a b{transform:translate(5px,-5px)}
.room-meta{transition:transform .55s cubic-bezier(.2,.75,.25,1)}.room:hover .room-meta{transform:translateY(-4px)}

/* Ritmos variados de entrada */
.reveal-left{transform:translateX(-65px)}.reveal-right{transform:translateX(65px)}.reveal-scale{transform:scale(.92)}
.room:nth-child(1){transform:translateY(55px)}.room:nth-child(2){transform:translateY(-35px)}.room:nth-child(3){transform:translateX(55px)}
.room.in-view{transform:none}.room-delay-1{transition-delay:.14s}.room-delay-2{transition-delay:.28s}
.service:nth-child(odd){transform:translateX(42px)}.service:nth-child(even){transform:translateX(-42px)}.service.in-view{transform:none}.service-delay-1{transition-delay:.1s}.service-delay-2{transition-delay:.2s}.service-delay-3{transition-delay:.3s}
.about-image.in-view .image-parallax,.experience-photo.in-view>div{animation:gentleZoom 9s cubic-bezier(.2,.7,.2,1) both}.offer.in-view .offer-bg{animation:offerZoom 11s ease-out both}

/* Rodapé claro no mesmo sistema do topo */
footer{position:relative;background:#fff!important;color:var(--ink);padding:0;border-top:4px solid transparent;border-image:var(--sunset) 1}
.footer-main{padding:50px 0 38px}.footer-shell{width:min(1180px,90vw);margin:0 auto;display:flex;align-items:center;justify-content:space-between}
.footer-logo{width:165px;height:auto;min-height:108px;background:transparent;overflow:visible;display:flex;align-items:center}.footer-logo img{width:160px;height:auto;mix-blend-mode:multiply}
.footer-nav{display:flex;gap:34px;text-transform:uppercase;font-size:9px;letter-spacing:.1em;color:#655e5b}.footer-nav a,.socials a{transition:color .3s,transform .3s}.footer-nav a:hover{color:var(--red);transform:translateY(-2px)}
.socials{display:flex;gap:10px}.socials a{width:32px;height:32px;border:1px solid #e8dfda;border-radius:50%;display:grid;place-items:center;text-transform:uppercase;font-size:9px;font-weight:600;color:#9b6f58}.socials a:hover{background:var(--red);border-color:var(--red);color:#fff;transform:translateY(-3px)}
.footer-lower{border-top:1px solid #ece7e3;padding:17px 0;color:#8c8582;font-size:8px;letter-spacing:.05em}.footer-contact{display:flex;gap:28px}.footer-contact a{color:var(--red)}
.to-top{position:absolute;right:2.5vw;top:50%;transform:translateY(-50%);width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:var(--red);color:#fff;font-size:20px;transition:transform .35s,background .35s}.to-top:hover{transform:translateY(-55%);background:var(--orange)}

@keyframes gentleZoom{from{transform:scale(1.08)}to{transform:scale(1)}}
@keyframes offerZoom{from{transform:scale(1)}to{transform:scale(1.09)}}

@media(max-width:900px){.top-strip{display:none}.site-header .nav{height:76px}.hero{padding-top:76px;min-height:720px}.nav-shell{width:86vw}.site-header .brand-logo{width:96px;height:64px}.site-header .brand-logo img{width:90px}.site-header .nav-links{inset:76px 0 auto;margin:0;background:#fff;color:var(--ink);box-shadow:0 18px 30px rgba(23,19,19,.12)}.site-header .nav-links a:after{display:none}.site-header .menu i{background:var(--ink)}.footer-shell{gap:28px;flex-wrap:wrap}.footer-nav{order:3;width:100%;justify-content:center}.to-top{right:5vw}.room:nth-child(n),.service:nth-child(n){transform:translateY(38px)}.room.in-view,.service.in-view{transform:none}}
@media(max-width:560px){.footer-main{padding:38px 0 28px}.footer-shell{justify-content:center;text-align:center}.footer-nav{gap:18px;flex-wrap:wrap}.footer-lower .footer-shell{flex-direction:column;gap:10px}.footer-contact{flex-direction:column;gap:6px}.to-top{top:26px;width:42px;height:42px}.site-header .nav-book{display:none}}

@media(prefers-reduced-motion:reduce){.room-photo-image,.room-meta,.service,.room{transition:none!important}.room:hover .room-photo-image{transform:none}.about-image.in-view .image-parallax,.experience-photo.in-view>div,.offer.in-view .offer-bg{animation:none!important}}

/* Rodapé: tipografia ampliada em aproximadamente 30% */
.footer-nav{font-size:11.7px}
.socials a{font-size:11.7px}
.footer-lower{font-size:10.4px}

/* Ícones, localização, contato e WhatsApp */
.top-strip span,.top-strip a{display:flex;align-items:center;gap:7px}.site-header .nav-links{gap:27px}.site-header .nav-book{margin-left:32px}
.location{display:grid;grid-template-columns:.88fr 1.12fr;gap:8vw;align-items:center;background:#fff}
.location h2,.contact h2{font:400 clamp(55px,6vw,88px)/.9 "Cormorant Garamond",serif;letter-spacing:-.04em;margin:34px 0}.location h2 em,.contact h2 em{font-weight:400}
.location-copy>p:not(.eyebrow){font-size:14px;line-height:1.9;color:#67615e;max-width:540px}.location-facts{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:38px 0}.location-facts div{min-height:132px;padding:22px;background:#fff9f3;border:1px solid #f2e5dc;display:grid;grid-template-columns:28px 1fr;align-items:center}.location-facts svg{color:var(--orange);grid-row:1/3}.location-facts b{font:400 29px "Cormorant Garamond"}.location-facts span{font-size:9px;line-height:1.5;letter-spacing:.1em;text-transform:uppercase;color:#817773}.map-link{display:inline-flex;align-items:center;gap:11px;padding-bottom:8px;border-bottom:1px solid var(--ink);font-size:10px;font-weight:600;letter-spacing:.13em;text-transform:uppercase}.map-link svg{color:var(--red)}
.map-card{height:570px;position:relative;overflow:hidden;background:linear-gradient(145deg,#f4cda9,#e87b57);box-shadow:0 35px 70px rgba(92,39,25,.16)}.map-grid{position:absolute;inset:-15%;opacity:.5;background-image:linear-gradient(30deg,transparent 48%,#fff 49%,#fff 51%,transparent 52%),linear-gradient(120deg,transparent 46%,#fff 47%,#fff 49%,transparent 50%);background-size:125px 95px;transform:rotate(-8deg)}.map-card:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 50% 50%,transparent 0 20%,rgba(103,24,22,.12) 75%)}.map-pin{position:absolute;z-index:2;left:50%;top:47%;transform:translate(-50%,-50%);width:165px;height:165px;border-radius:50%;background:#fff;box-shadow:0 18px 50px rgba(73,25,17,.2);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.map-pin svg{color:var(--red);margin-bottom:7px}.map-pin span{font:500 21px "Cormorant Garamond"}.map-pin small{font-size:8px;text-transform:uppercase;letter-spacing:.1em;color:#827572;margin-top:5px}.map-label{position:absolute;z-index:2;background:#fff;padding:10px 14px;font-size:9px;text-transform:uppercase;letter-spacing:.12em;box-shadow:0 8px 20px #5b21182b}.map-label.beach{right:10%;top:17%}.map-label.mucuge{left:8%;bottom:16%}
.contact{display:grid;grid-template-columns:1fr 1fr;gap:10vw;align-items:center;background:#171313;color:#fff}.contact-intro>p:not(.eyebrow){max-width:500px;color:#ffffffa8;font-size:14px;line-height:1.9}.contact-panel{border-top:1px solid #ffffff38}.contact-panel>a{display:grid;grid-template-columns:36px 1fr 20px;gap:18px;align-items:center;padding:25px 4px;border-bottom:1px solid #ffffff38;transition:padding .35s,background .35s}.contact-panel>a:hover{padding-left:16px;background:#ffffff0a}.contact-panel>a>svg{color:var(--orange)}.contact-panel>a span{display:flex;flex-direction:column;gap:6px}.contact-panel small{font-size:9px;text-transform:uppercase;letter-spacing:.13em;color:#ffffff85}.contact-panel b{font:400 23px "Cormorant Garamond";overflow-wrap:anywhere}.contact-panel i{font-style:normal;font-size:18px}.contact-panel>p{font-size:9px;letter-spacing:.12em;text-transform:uppercase;color:#ffffff7d;margin:22px 4px 0}
.whatsapp-float{position:fixed;z-index:75;right:28px;bottom:28px;height:56px;padding:0 20px;border-radius:30px;background:#25d366;color:#fff;display:flex;align-items:center;gap:10px;box-shadow:0 14px 38px rgba(20,110,56,.35);font-size:10px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;transition:transform .35s,box-shadow .35s}.whatsapp-float:before{content:"";position:absolute;inset:-7px;border:1px solid rgba(37,211,102,.45);border-radius:40px;animation:whatsappPulse 2.4s infinite}.whatsapp-float:hover{transform:translateY(-4px);box-shadow:0 20px 44px rgba(20,110,56,.45)}.whatsapp-float svg{width:21px}.socials svg{display:block}
@keyframes whatsappPulse{0%,100%{transform:scale(.95);opacity:0}45%{opacity:1}80%{transform:scale(1.1);opacity:0}}
@media(max-width:1100px){.site-header .nav-links{gap:20px}.site-header .nav-book{margin-left:20px;padding:14px}.site-header .nav-links a{font-size:9px}}
@media(max-width:900px){.location,.contact{grid-template-columns:1fr;gap:60px}.map-card{height:480px}.whatsapp-float{right:18px;bottom:18px}.contact{gap:45px}}
@media(max-width:560px){.location h2,.contact h2{font-size:52px}.location-facts{grid-template-columns:1fr}.map-card{height:390px}.map-pin{width:135px;height:135px}.map-label.beach{right:4%}.map-label.mucuge{left:4%}.contact-panel b{font-size:19px}.whatsapp-float{width:54px;height:54px;padding:0;justify-content:center}.whatsapp-float span{display:none}}

/* Passeios */
.tours{background:#fff8f1}.tours-head{display:flex;align-items:end;justify-content:space-between;gap:50px;margin-bottom:65px}.tours-head h2,.review-heading h2,.budget h2{font:400 clamp(55px,6vw,88px)/.9 "Cormorant Garamond",serif;letter-spacing:-.04em;margin:34px 0 0}.tours-head h2 em,.review-heading h2 em,.budget h2 em{font-weight:400}.tours-head>p{max-width:420px;font-size:13px;line-height:1.85;color:#706966;margin:0 0 6px}.tour-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.tour-card{height:500px;position:relative;overflow:hidden;border:0;padding:0;color:#fff;background:#241813;text-align:left;cursor:pointer}.tour-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transform:scale(1.01);transition:transform 1s cubic-bezier(.2,.75,.25,1),filter .6s}.tour-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(20,7,4,.02) 30%,rgba(20,7,4,.82));transition:background .5s}.tour-card:hover img{transform:scale(1.08);filter:saturate(1.08)}.tour-card:hover .tour-shade{background:linear-gradient(180deg,rgba(200,61,63,.04),rgba(20,7,4,.9))}.tour-number{position:absolute;top:22px;left:22px;font:20px "Cormorant Garamond"}.tour-info{position:absolute;inset:auto 24px 27px;display:flex;flex-direction:column}.tour-info small{font-size:8px;text-transform:uppercase;letter-spacing:.17em;color:#ffbe72}.tour-info b{font:400 29px "Cormorant Garamond";margin:7px 0 20px}.tour-info i{font-style:normal;font-size:9px;text-transform:uppercase;letter-spacing:.13em;transform:translateY(12px);opacity:0;transition:.4s}.tour-card:hover .tour-info i{transform:none;opacity:1}.tour-1{transform:translateY(28px)}.tour-2{transform:translateY(-18px)}.tour-3{transform:translateY(18px)}.tour-card.in-view{transform:none}
.tour-modal{position:fixed;z-index:120;inset:0;background:rgba(17,8,7,.82);backdrop-filter:blur(10px);display:grid;place-items:center;padding:4vw;animation:modalFade .3s ease}.tour-modal-card{position:relative;width:min(1080px,94vw);min-height:610px;background:#fff;display:grid;grid-template-columns:1.08fr .92fr;box-shadow:0 40px 100px #0008;animation:modalUp .45s cubic-bezier(.16,1,.3,1)}.tour-modal-card>img{width:100%;height:100%;min-height:610px;object-fit:cover}.tour-modal-copy{padding:70px 60px;display:flex;flex-direction:column;justify-content:center}.tour-modal-copy h2{font:400 clamp(48px,5vw,72px)/.92 "Cormorant Garamond";letter-spacing:-.04em;margin:28px 0}.tour-modal-copy>p:not(.eyebrow){font-size:14px;line-height:1.9;color:#6e6662}.tour-modal-copy>a{margin-top:26px;align-self:flex-start;display:flex;align-items:center;gap:12px;padding:16px 20px;background:var(--red);color:#fff;font-size:9px;text-transform:uppercase;letter-spacing:.12em}.tour-modal-copy>a span{margin-left:12px}.modal-close{position:absolute;z-index:2;right:18px;top:18px;width:44px;height:44px;border:0;border-radius:50%;background:#171313;color:#fff;display:grid;place-items:center;cursor:pointer}.modal-close svg{width:18px}@keyframes modalFade{from{opacity:0}}@keyframes modalUp{from{opacity:0;transform:translateY(35px) scale(.98)}}

/* Orçamento */
.budget{background:linear-gradient(120deg,#a72f35,#ef572a 58%,#ff9418);color:#fff;display:grid;grid-template-columns:.8fr 1.2fr;gap:8vw;align-items:center}.budget-copy>p:not(.eyebrow){font-size:13px;line-height:1.85;color:#ffffffc2;max-width:440px}.budget h2{margin-bottom:30px}.budget-form{background:#fff;color:var(--ink);display:grid;grid-template-columns:1fr 1fr;padding:30px;gap:14px;box-shadow:0 30px 70px rgba(78,16,12,.25)}.budget-form label{border:1px solid #eee3dc;padding:16px 18px;display:flex;flex-direction:column;gap:12px}.budget-form label span{display:flex;align-items:center;gap:8px;font-size:8px;text-transform:uppercase;letter-spacing:.12em;color:#8a7a74}.budget-form label svg{width:15px;color:var(--orange)}.budget-form input,.budget-form select{border:0;background:transparent;color:var(--ink);font:400 17px "Cormorant Garamond";outline:0;width:100%}.budget-form button{grid-column:1/-1;min-height:58px;border:0;background:#171313;color:#fff;display:flex;align-items:center;justify-content:center;gap:12px;font-size:9px;text-transform:uppercase;letter-spacing:.13em;cursor:pointer;transition:.35s}.budget-form button:hover{background:var(--red)}.budget-form button svg{width:18px}.budget-form button i{font-style:normal;margin-left:auto;margin-right:18px}

/* Avaliações em carrossel */
.testimonials{max-width:none;margin:0;background:#fff;text-align:left}.review-heading{display:grid;grid-template-columns:1fr auto;align-items:end;margin-bottom:55px}.review-heading .eyebrow{grid-column:1/-1}.review-heading h2{margin-bottom:0}.rating{display:flex;align-items:center;gap:17px;padding-bottom:6px}.rating>b{font:400 58px "Cormorant Garamond"}.rating>span{display:grid;grid-template-columns:repeat(5,14px);gap:3px;color:var(--orange)}.rating svg,.stars svg{width:13px;height:13px}.rating small{grid-column:1/-1;color:#8b817d;font-size:8px;text-transform:uppercase;letter-spacing:.1em;margin-top:4px}.review-carousel{overflow:hidden;margin-right:-8vw}.review-track{display:flex;gap:24px;transition:transform .75s cubic-bezier(.16,1,.3,1);transform:translateX(calc(var(--review-index) * (-33.333% - 8px)))}.review-card{flex:0 0 calc(33.333% - 16px);min-height:340px;padding:35px;background:#fff9f4;border:1px solid #f0e4dc;display:flex;flex-direction:column}.review-card>svg{color:#e5cabc;width:32px;height:32px}.stars{display:flex;color:var(--orange);gap:3px;margin:24px 0}.review-card blockquote{font:italic 25px/1.35 "Cormorant Garamond";margin:0 0 35px}.review-card>div:last-child{display:flex;flex-direction:column;gap:5px;margin-top:auto}.review-card b{font-size:10px;text-transform:uppercase;letter-spacing:.12em}.review-card small{font-size:9px;color:#8d8581}.testimonials .review-controls{justify-content:flex-start}.google-map{height:570px;overflow:hidden;box-shadow:0 35px 70px rgba(92,39,25,.16);background:#ead8cb}.google-map iframe{width:100%;height:100%;border:0;filter:saturate(.8) sepia(.08)}

@media(max-width:1100px){.tour-grid{grid-template-columns:1fr 1fr}.tour-card{height:440px}.site-header .nav-links{gap:12px}.site-header .nav-links a{font-size:8px}.site-header .nav-book{font-size:9px;padding:12px 10px}.budget{grid-template-columns:1fr}.review-card{flex-basis:calc(50% - 12px)}.review-track{transform:translateX(calc(var(--review-index) * (-50% - 12px)))}}
@media(max-width:900px){.tours-head{display:block}.tours-head>p{margin-top:28px}.tour-modal-card{grid-template-columns:1fr;max-height:90vh;overflow:auto}.tour-modal-card>img{height:330px;min-height:330px}.tour-modal-copy{padding:45px 36px}.budget-form{max-width:720px}.review-heading{grid-template-columns:1fr}.rating{margin-top:30px}.google-map{height:480px}}
@media(max-width:560px){.tour-grid{grid-template-columns:1fr}.tour-card{height:420px}.tours-head h2,.review-heading h2,.budget h2{font-size:52px}.tour-modal{padding:12px}.tour-modal-card{width:100%;max-height:92vh}.tour-modal-card>img{height:260px;min-height:260px}.tour-modal-copy{padding:35px 24px}.tour-modal-copy h2{font-size:46px}.budget-form{grid-template-columns:1fr;padding:18px}.budget-form button{grid-column:auto}.review-heading h2{font-size:48px}.review-carousel{margin-right:-7vw}.review-card{flex-basis:92%;min-height:320px;padding:28px}.review-track{gap:14px;transform:translateX(calc(var(--review-index) * (-92% - 14px)))}.google-map{height:390px}}

/* Formulário de orçamento com calendário visual */
.budget-copy>small{display:block;margin-top:18px;font-size:9px;letter-spacing:.1em;text-transform:uppercase;color:#fff9}.budget-form{grid-template-columns:repeat(6,1fr)}.budget-form label{grid-column:span 2;min-width:0}.budget-form .date-field{grid-column:span 3}.budget-form label span small{margin-left:auto;font-size:7px;color:#aa8f84;letter-spacing:.06em}.budget-form input::placeholder{color:#a99c96;opacity:1}.budget-form input[type=number]{appearance:textfield}.budget-form input[type=number]::-webkit-inner-spin-button,.budget-form input[type=number]::-webkit-outer-spin-button{margin:0}.flatpickr-calendar{font-family:Manrope,sans-serif;border:0;border-radius:0;box-shadow:0 22px 60px rgba(57,24,17,.22);padding:10px}.flatpickr-months .flatpickr-month{height:44px}.flatpickr-current-month{font-size:14px;padding-top:8px}.flatpickr-weekday{font-size:9px!important;text-transform:uppercase;color:#94766b!important}.flatpickr-day{border-radius:50%;transition:background .2s,color .2s}.flatpickr-day:hover{background:#fff0e7;border-color:#fff0e7}.flatpickr-day.selected,.flatpickr-day.startRange,.flatpickr-day.endRange{background:var(--red);border-color:var(--red)}.flatpickr-day.today{border-color:var(--orange)}.flatpickr-day.today:hover{background:var(--orange);border-color:var(--orange);color:#fff}.flatpickr-months .flatpickr-prev-month:hover svg,.flatpickr-months .flatpickr-next-month:hover svg{fill:var(--red)}
@media(max-width:900px){.budget-form{grid-template-columns:repeat(6,1fr)}}
@media(max-width:560px){.budget-form{grid-template-columns:1fr}.budget-form label,.budget-form .date-field,.budget-form button{grid-column:1}}

/* Escala tipográfica: textos auxiliares mais legíveis */
.eyebrow{font-size:13px;line-height:1.5}.top-strip{font-size:11px}.about-copy>p:not(.eyebrow){font-size:16px}.facts span{font-size:12px;line-height:1.45}.text-link{font-size:13px}.section-head>p{font-size:16px}.room-photo>a{font-size:12px}.room-meta small{font-size:12px;line-height:1.45}.room-meta p{font-size:12px}.service>span{font-size:16px}.service p{font-size:14px;line-height:1.6}.tours-head>p{font-size:16px}.tour-info small{font-size:12px;line-height:1.45}.tour-info i{font-size:12px}.tour-modal-copy>p:not(.eyebrow){font-size:16px}.tour-modal-copy>a{font-size:12px}.budget-copy>p:not(.eyebrow){font-size:17px}.budget-copy>small{font-size:12px;line-height:1.5}.budget-form label span{font-size:11px;line-height:1.35}.budget-form label span small{font-size:10px}.budget-form input,.budget-form select{font-size:20px}.budget-form button{position:relative;font-size:12px;text-align:center}.budget-form button i{position:absolute;right:22px;margin:0}.location-copy>p:not(.eyebrow),.contact-intro>p:not(.eyebrow){font-size:17px}.location-facts span{font-size:12px}.map-link{font-size:12px}.contact-panel small{font-size:12px}.contact-panel>p{font-size:12px}.rating small{font-size:11px}.review-card b{font-size:12px}.review-card small{font-size:12px}.footer-nav{font-size:12px}.footer-lower{font-size:11px}
@media(max-width:560px){.eyebrow{font-size:11px}.budget-copy>p:not(.eyebrow),.location-copy>p:not(.eyebrow),.contact-intro>p:not(.eyebrow){font-size:16px}.budget-form input,.budget-form select{font-size:19px}.tour-info small,.tour-info i{font-size:11px}}

.footer-contact{flex-wrap:wrap;justify-content:center}.footer-contact a{white-space:nowrap}

/* Conteúdo final: imagens do acervo local e controles da landing page. */
.stamp { animation: none; }
body { overflow-x: clip; }
button, input, select, textarea { font: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }
button:not(:disabled) { cursor: pointer; }
button:disabled { cursor: default; opacity: .45; }
:focus-visible { outline: 3px solid #bc3b32; outline-offset: 5px; }
main:focus { outline: none; }
.skip-link { position: fixed; top: 12px; left: 12px; z-index: 200; padding: 14px 22px; background: #fff; color: var(--ink); transform: translateY(-180%); clip-path: inset(50%); }
.skip-link:focus-visible { transform: none; clip-path: none; }
.hero-slide, .image-parallax, .experience-photo > div, .offer-bg { background-image: none; }
.hero-slide picture, .offer-bg picture { display: block; width: 100%; height: 100%; }
.hero-slide img, .image-parallax img, .experience-photo > div > img, .offer-bg img, .room-photo-image img { display: block; width: 100%; height: 100%; object-fit: cover; }
.hero h1 { font-size: clamp(60px, 7.3vw, 110px); line-height: .94; }
.hero-copy { max-width: 850px; }
.hero-pause { position: absolute; z-index: 3; bottom: 71px; left: 13vw; background: transparent; border: 0; border-bottom: 1px solid #ffffff88; color: #fff; font-size: 11px; padding: 4px 0; }
.hero button:focus-visible { outline-color: #fff; }
.hero-slide img { object-position: center; }
.booking input { width: 100%; min-width: 0; border: 0; border-bottom: 1px solid #eee3dc; background: transparent; padding: 8px 0; color: var(--ink); font-size: 15px; color-scheme: light; }
.booking label { color: #685c54; font-size: 11px; }
.booking > button { width: 100%; border: 0; padding: 25px; display: flex; align-items: center; justify-content: space-between; gap: 12px; color: #fff; background: var(--ink); font-size: 12px; text-transform: uppercase; letter-spacing: .08em; transition: background .25s; }
.booking > button:hover { background: var(--red); }
.booking > div { min-width: 0; }
.room-summary { color: #ffffffc4; font-size: 14px; line-height: 1.75; min-height: 74px; margin: 20px 0; }
.room { display: flex; flex-direction: column; min-width: 0; }
.room-photo { flex-shrink: 0; }
.room-summary { flex: 1; }
.room-details { margin-top: auto; }
.marquee span { padding-right: .4em; }
.room-details { width: 100%; padding: 15px 0; border: 0; border-top: 1px solid #ffffff45; display: flex; justify-content: space-between; gap: 15px; background: transparent; color: #fff; font-size: 12px; text-transform: uppercase; letter-spacing: .06em; text-align: left; }
.room-details:hover { color: #ffbc79; }
.room-photo > a { opacity: 1; transform: none; text-shadow: 0 1px 6px #000; }
.room-photo-open { position: absolute; inset: 0; z-index: 1; width: 100%; height: 100%; border: 0; padding: 0; background: transparent; }
.room-photo-open:focus-visible { outline-color: #fff; outline-offset: -5px; }
.room-photo > a { z-index: 3; }
.room-photo > span, .room-photo .photo-count { pointer-events: none; }
.room-title-open { padding: 0; border: 0; background: transparent; color: inherit; font: inherit; text-align: left; }
.room-title-open:hover { color: #ffbc79; }
.booking-status:not(:empty) { padding: 14px 25px; background: #fff; }
.room-photo-shade { opacity: 1; }
.room-photo:focus-within .room-photo-image { transform: scale(1.04); }
.room-meta { gap: 10px; }
.room-meta p { flex-shrink: 0; }
.room-meta p b { display: block; margin-top: 3px; }
.room-meta h3 { line-height: 1.1; }
.tour-info i { opacity: 1; transform: none; }
.tour-card:focus-visible { outline-offset: -5px; outline-color: #fff; }
.tour-modal { padding: 24px; }
.tour-modal-card { max-height: calc(100dvh - 48px); min-height: 0; overflow-y: auto; overscroll-behavior: contain; align-items: stretch; }
.tour-modal-card > img { min-height: 0; max-height: 780px; height: 100%; object-fit: cover; }
.tour-modal-copy { padding: 60px 40px 40px; }
.tour-modal-copy h2 { font-size: clamp(38px, 4vw, 58px); overflow-wrap: break-word; }
.tour-modal-copy > p:not(.eyebrow) { font-size: 15px; line-height: 1.75; }
.tour-modal-copy .eyebrow { font-size: 11px; letter-spacing: .09em; }
.tour-modal-copy ul { padding-left: 18px; margin: 8px 0; color: #665d58; font-size: 13px; line-height: 1.75; }
.tour-modal-copy li + li { margin-top: 8px; }
.tour-modal-copy > a { line-height: 1.5; }
.modal-close { font: 28px/1 Arial, sans-serif; }
.modal-gallery { display: flex; flex-direction: column; justify-content: center; background: #f4ece5; min-width: 0; }
.modal-gallery img { width: 100%; height: min(60vh, 550px); min-height: 0; flex: 0 0 auto; object-fit: contain; }
.gallery-controls { flex: 0 0 68px; display: flex; align-items: center; justify-content: center; gap: 24px; background: #f4ece5; }
.gallery-controls button { width: 42px; height: 42px; border-radius: 50%; border: 1px solid #b6a497; background: transparent; font-size: 20px; color: var(--ink); }
.gallery-controls span { font-size: 12px; font-variant-numeric: tabular-nums; }
.gallery-caption { margin: 0; padding: 0 20px 18px; color: #65584f; text-align: center; font-size: 12px; line-height: 1.5; }
.modal-gallery img { touch-action: pan-y; user-select: none; }
.photo-count { position: absolute; top: 20px; right: 20px; z-index: 2; padding: 7px 10px; border-radius: 20px; background: #171313b3; color: #fff; font-size: 11px; line-height: 1.4; letter-spacing: .03em; }
.budget-form input, .budget-form select, .budget-form textarea { font: 15px/1.5 Manrope, sans-serif; padding: 4px 0; color: var(--ink); width: 100%; min-width: 0; color-scheme: light; }
.budget-form input:focus-visible, .budget-form select:focus-visible, .budget-form textarea:focus-visible { outline: 2px solid var(--red); outline-offset: 4px; }
.budget-form label:focus-within { border-color: var(--red); }
.budget-form label span { color: #6b5950; letter-spacing: .06em; }
.budget-form .guests-field { grid-column: span 2; }
.budget-form .accommodation-field { grid-column: span 4; }
.budget-form .wide-field { grid-column: 1 / -1; }
.budget-form textarea { resize: vertical; min-height: 75px; border: 0; background: transparent; }
.budget-form label span small { font-size: 10px; color: #75645c; }
.budget-form input::placeholder, .budget-form textarea::placeholder { color: #84756e; }
.form-status { grid-column: 1 / -1; margin: 0; font-size: 12px; line-height: 1.7; color: #66534b; }
.form-status:empty { display: none; }
.form-status a, .no-script-note a { text-decoration: underline; text-underline-offset: 3px; }
.no-script-note { line-height: 1.7; }
.review-track { will-change: transform; }
.review-card { min-width: 0; }
.review-controls button { color: var(--ink); }
.review-card small { color: #71645d; }
.rating small { color: #71645d; }
.reveal, .room:nth-child(n), .service:nth-child(n) { opacity: 1; transform: none; }
.js-reveal .reveal { opacity: 0; transform: translateY(32px); }
.js-reveal .reveal.in-view { opacity: 1; transform: none; }
.footer-logo img { width: 160px; }

@media (max-width: 1100px) {
  .hero-copy { max-width: 78vw; }
  .room-meta { display: block; }
  .room-summary { min-height: 100px; }
  .tour-modal-copy { padding: 58px 28px 30px; }
}
@media (max-width: 900px) {
  .stamp { display: none; }
  .review-carousel { margin-right: -7vw; }
  .site-header .nav-links { max-height: calc(100dvh - 76px); overflow-y: auto; visibility: hidden; }
  .site-header .nav-links.open { visibility: visible; }
  .site-header .nav-links a { font-size: 12px; padding: 8px 0; }
  .menu { width: 44px; height: 44px; }
  .hero-copy { max-width: none; top: 53%; }
  .hero h1 { font-size: clamp(48px, 8vw, 72px); }
  .hero-pause { left: 7vw; bottom: 70px; }
  .booking > button { min-height: 76px; }
  .room-meta { display: flex; }
  .room-summary { min-height: 0; }
  .tour-modal-card { grid-template-columns: 1fr; }
  .tour-modal-card > img { height: 330px; }
  .modal-gallery img { flex: none; height: 360px; }
  .tour-modal-copy { padding: 32px; }
}
@media (max-width: 600px) {
  .hero { min-height: 700px; }
  .hero h1 { font-size: clamp(38px, 9vw, 53px); line-height: 1.02; }
  .hero-copy { top: 49%; }
  .hero-intro { font-size: 14px; line-height: 1.85; padding-right: 0; }
  .hero .eyebrow { font-size: 10px; letter-spacing: .12em; }
  .hero .eyebrow span { width: 19px; margin-right: 7px; }
  .hero-pause { bottom: 32px; }
  .hero-index { bottom: 32px; }
  .booking > div { padding: 17px 7vw; }
  .booking > button { padding: 22px 7vw; }
  .booking input { font-size: 16px; }
  .room-meta { display: block; }
  .room-photo > a { left: 20px; font-size: 11px; }
  .tour-modal { padding: 12px; }
  .tour-modal-card { width: 100%; max-height: calc(100dvh - 24px); }
  .tour-modal-card > img { height: 280px; }
  .modal-gallery img { height: 300px; }
  .tour-modal-copy { padding: 28px 24px; }
  .tour-modal-copy h2 { font-size: 40px; margin: 22px 0; }
  .tour-modal-copy > a { font-size: 11px; }
  .budget-form { grid-template-columns: 1fr; }
  .budget-form label, .budget-form .date-field, .budget-form .guests-field, .budget-form .accommodation-field, .budget-form .wide-field, .budget-form button { grid-column: 1; }
  .budget-form input, .budget-form select, .budget-form textarea { font-size: 16px; }
  .budget-form button { font-size: 11px; padding: 16px 38px 16px 16px; }
  .budget-form button i { right: 14px; }
  .facts { gap: 18px; }
  .facts span { font-size: 10px; }
  .footer-contact a { white-space: normal; overflow-wrap: anywhere; }
}
.common-areas { background: #f7f3ed; }
.common-heading { display:flex; align-items:end; justify-content:space-between; gap:32px; margin:24px 0 32px; }
.common-heading h2 { font:400 clamp(40px,5vw,68px)/1.05 'Cormorant Garamond',serif; max-width:620px; margin:0; }
.common-heading p { max-width:300px; line-height:1.7; color:#706761; }
.common-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; }
.common-grid button { border:0; padding:0; background:#fff; color:var(--ink); text-align:left; cursor:pointer; overflow:hidden; }
.common-grid img { display:block; width:100%; height:300px; object-fit:cover; }
.common-grid span { display:block; padding:20px; font:500 16px 'Manrope',sans-serif; }
.common-grid button:focus-visible,.common-all:focus-visible { outline:3px solid var(--red); outline-offset:5px; }
.common-all { display:block; margin:30px auto 0; background:none; border:0; border-bottom:1px solid currentColor; padding:10px 0; cursor:pointer; }
.contact-panel>a>span { min-width:0; }
.contact-panel a[href^="mailto:"] b { font-size:clamp(14px,1.55vw,23px); overflow-wrap:normal; white-space:nowrap; letter-spacing:-.025em; }
@media(max-width:600px) {
  .common-heading { display:block; }
  .common-heading p { margin-top:20px; }
  .common-grid { grid-template-columns:1fr; gap:20px; }
  .common-grid img { height:240px; }
  .contact-panel a[href^="mailto:"] { grid-template-columns:24px minmax(0,1fr); gap:10px; }
  .contact-panel a[href^="mailto:"] i { display:none; }
  .contact-panel a[href^="mailto:"] b { font-size:clamp(13px,3.8vw,21px); }
}
@media (prefers-reduced-motion: reduce) {
  .js-reveal .reveal { opacity: 1; transform: none; }
  .hero-slide { transform: none; }
  .loaded .hero-copy > * { animation: none !important; opacity: 1; }
}
