:root{--blue:#123b5a;--blue2:#0b3049;--navy:#071d2c;--cream:#efe0cc;--paper:#f8f0e5;--paper2:#f1dfc7;--sand:#d9bd98;--coffee:#76503d;--gold:#d99b48;--gold2:#ffc878;--ink:#17262d;--muted:#65615b}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',sans-serif;overflow-x:hidden}a{color:inherit;text-decoration:none}img{display:block}header{position:fixed;z-index:30;top:0;left:0;width:100%;display:flex;align-items:center;justify-content:space-between;padding:20px 5vw;color:#fff;background:linear-gradient(#061724a8,transparent);transition:transform .45s cubic-bezier(.2,.8,.2,1),background .3s,padding .3s}header.scrolled{background:#0b304be8;backdrop-filter:blur(14px);padding-block:13px}header.hidden{transform:translateY(-110%)}.brand{font:500 29px 'Playfair Display',serif}.brand i{font-weight:400}nav{display:flex;gap:25px;font-size:11px;text-transform:uppercase;letter-spacing:.14em}.route{font-size:12px;border-bottom:1px solid #ffffff88;padding-bottom:4px}.hero{height:100svh;min-height:650px;position:relative;display:flex;align-items:center;color:#fff;overflow:hidden}.hero video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.shade{position:absolute;inset:0;background:linear-gradient(90deg,#07141fe8 0%,#07141f78 43%,#07141f08 78%),linear-gradient(0deg,#07141f70,transparent 46%)}.hero-copy{position:relative;z-index:2;width:min(720px,86vw);margin-left:7vw}.kicker{display:block;font-size:11px;font-weight:600;letter-spacing:.22em;margin-bottom:20px}.kicker.dark{color:var(--blue)}h1,h2,h3{font-family:'Playfair Display',serif;font-weight:500;margin:0;line-height:.98}h1{font-size:clamp(54px,6.4vw,98px);letter-spacing:-.04em}h1 em,h2 em{font-weight:400;color:#efb766}h2{font-size:clamp(42px,4.5vw,70px);letter-spacing:-.035em}.hero-copy>p{max-width:520px;font-size:16px;line-height:1.7;color:#f5f1e9;margin:25px 0}.actions{display:flex;gap:12px;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:center;padding:15px 21px;border-radius:100px;font-size:11px;text-transform:uppercase;letter-spacing:.1em;transition:.25s}.btn:hover{transform:translateY(-2px)}.warm{background:linear-gradient(135deg,var(--gold2),var(--gold));color:#16222a;box-shadow:0 10px 35px #e6a84f22}.glass{border:1px solid #ffffff66;background:#ffffff10;backdrop-filter:blur(8px);color:#fff}.whatsapp{border:1px solid #ffffff4d;background:#fff;color:var(--navy)}.scroll{position:absolute;z-index:2;bottom:25px;right:5vw;font-size:10px;letter-spacing:.18em}.hero-reveal{opacity:0;transform:translateY(38px);filter:blur(7px)}body.hero-ready .hero-reveal{opacity:1;transform:none;filter:none;transition:opacity .85s ease,transform 1s cubic-bezier(.16,1,.3,1),filter .8s}.h1r{transition-delay:.18s!important}.h2r{transition-delay:.48s!important}.h3r{transition-delay:.95s!important}.h4r{transition-delay:1.25s!important}.h5r{transition-delay:1.55s!important}.section{position:relative;overflow:hidden}
/* EXPERIENCE: one dominant photograph, editorial panel crossing into it */
.experience{background:linear-gradient(120deg,#ead4b5 0%,#f7ecdc 55%,#efe0ca 100%);padding:105px 5vw 120px;min-height:860px}.exp-stage{position:relative;max-width:1540px;margin:auto;min-height:650px}.exp-photo{position:absolute;left:0;top:0;width:61%;height:650px;overflow:hidden;box-shadow:0 35px 90px #4d35272a}.exp-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 65%,#f7ecdcaa)}.exp-photo img{width:100%;height:100%;object-fit:cover;transform:scale(1.035)}.exp-copy{position:absolute;z-index:3;right:1%;top:75px;width:48%;padding:56px 55px;background:#fbf5ecf2;box-shadow:0 28px 80px #49301e1b;backdrop-filter:blur(8px)}.exp-copy h2{font-size:clamp(44px,4.2vw,68px)}.exp-copy p{font-size:16px;line-height:1.8;color:var(--muted);max-width:540px}.traits{display:flex;gap:8px;flex-wrap:wrap;margin-top:25px}.traits span{border:1px solid #143f6130;border-radius:100px;padding:9px 13px;font-size:11px;color:var(--blue);background:#fff8}.exp-detail{position:absolute;z-index:4;right:8%;bottom:-42px;width:315px;height:205px;margin:0;overflow:hidden;border:8px solid #f7ecdc;box-shadow:0 22px 60px #4b322326}.exp-detail img{width:100%;height:100%;object-fit:cover}.exp-detail figcaption{position:absolute;left:12px;bottom:12px;background:#0b3049e8;color:#fff;padding:9px 11px;font:400 12px 'Playfair Display',serif}
/* FLAVORS: cinematic image stage, only one secondary frame */
.flavors{height:min(900px,92vh);min-height:720px;background:var(--navy);color:#fff}.flavor-bg{position:absolute;inset:0;overflow:hidden}.flavor-bg img{width:100%;height:100%;object-fit:cover;transform:scale(1.04)}.flavor-overlay{position:absolute;inset:0;background:linear-gradient(90deg,#061a29e8 0%,#071d2cae 39%,#071d2c2c 72%),linear-gradient(0deg,#061a29a8 0%,transparent 55%)}.flavor-copy{position:absolute;z-index:3;left:8vw;top:50%;transform:translateY(-50%);width:min(680px,48vw)}.flavor-copy h2{font-size:clamp(50px,5.2vw,82px);text-shadow:0 4px 30px #0003}.flavor-copy p{font-size:16px;line-height:1.7;color:#e7e1d8;max-width:500px;margin:24px 0}.menu-jump{display:inline-block;font-size:11px;text-transform:uppercase;letter-spacing:.14em;border-bottom:1px solid #f2bd70;padding-bottom:6px}.flavor-window{position:absolute;z-index:4;right:7vw;bottom:8%;width:min(350px,24vw);height:290px;margin:0;border:7px solid #f5ead9;box-shadow:0 35px 80px #0006;overflow:hidden}.flavor-window img{width:100%;height:100%;object-fit:cover}.flavor-window figcaption{position:absolute;left:13px;bottom:12px;background:#f8efe9e8;color:var(--navy);padding:9px 12px;font:400 13px 'Playfair Display',serif}
.menu{padding:100px 6vw 120px;background:radial-gradient(circle at 88% 12%,#e8d0ad80 0,transparent 24%),linear-gradient(135deg,#f5e8d5,#fbf5ec 58%,#f1e0c8)}.menu-shell{max-width:1420px;margin:auto}.section-head{max-width:940px}.tabs{display:flex;gap:10px;margin:55px 0 55px}.tab{border:1px solid #123b5a30;background:#fff3;color:var(--blue);padding:15px 25px;border-radius:100px;text-transform:uppercase;font:600 11px 'DM Sans';letter-spacing:.08em;cursor:pointer}.tab.active{background:var(--blue);color:#fff}.menu-list{display:grid;grid-template-columns:1fr 1fr;column-gap:70px}.menu-item{display:flex;justify-content:space-between;gap:20px;padding:22px 0;border-bottom:1px solid #123b5a1b;animation:itemIn .35s both}.menu-item h3{font:500 18px 'DM Sans';letter-spacing:-.02em}.menu-item p{font-size:13px;color:#777168;margin:5px 0 0}.price{font:500 17px 'Playfair Display',serif;color:var(--blue);white-space:nowrap}@keyframes itemIn{from{opacity:0;transform:translateY(8px)}}
.reviews{padding:95px 0 105px;background:linear-gradient(180deg,#ead6b9,#f7ecdd 58%,#efe0cb)}.reviews-head{max-width:1420px;margin:0 auto 52px;padding:0 6vw;display:flex;justify-content:space-between;align-items:end;gap:50px}.reviews-head h2{max-width:860px}.rating{min-width:220px;text-align:right;border-left:1px solid #123b5a25;padding-left:35px}.rating strong{display:block;font:500 52px 'Playfair Display',serif;color:var(--blue);line-height:1}.rating span{display:block;color:#d98e2b;letter-spacing:3px;margin:8px 0}.rating small{font-size:11px;color:#777068}.review-marquee{overflow:hidden;mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent)}.review-track{display:flex;width:max-content;gap:16px;animation:marquee 58s linear infinite;padding:5px 0 22px}.review-marquee:hover .review-track{animation-play-state:paused}.review-card{width:365px;min-height:205px;padding:22px 24px;border:1px solid #123b5a18;background:#fffaf4;box-shadow:0 16px 45px #6d4e3018;display:flex;flex-direction:column;justify-content:space-between}.stars{color:#d9902d;letter-spacing:3px;font-size:13px}.review-card blockquote{font:400 18px/1.42 'Playfair Display',serif;margin:16px 0;color:#23333a}.review-card footer{background:none;padding:0;display:block;color:#7a7770}.review-card footer strong{display:block;color:var(--blue);font:600 12px 'DM Sans';margin-bottom:3px}.review-card footer span{font-size:9px;letter-spacing:.12em;color:#8a8379}@keyframes marquee{to{transform:translateX(-50%)}}
.visit{min-height:790px;display:grid;grid-template-columns:1.08fr .92fr;background:var(--navy);color:#fff;overflow:hidden}.visit-image{min-height:680px;overflow:hidden}.visit-image img{width:100%;height:100%;object-fit:cover}.visit-copy{padding:70px 7vw;display:flex;flex-direction:column;justify-content:center}.visit-copy h2 em{color:#f2c078}.visit-copy>p{color:#d7e0e4;line-height:1.7;max-width:480px;margin:22px 0 28px}.info{border-top:1px solid #ffffff25;padding-top:20px;margin-bottom:22px}.info small,.social-proof small{letter-spacing:.18em;color:#e3ba7e;font-size:9px}.info address{font-style:normal;font:400 18px/1.55 'Playfair Display',serif;margin-top:8px}.social-proof{margin-bottom:24px}.social-proof a{display:flex;flex-direction:column;gap:4px}.social-proof b{font:500 17px 'DM Sans'}.social-proof span{font-size:11px;color:#b9c9d1;letter-spacing:.05em}footer{background:#061824;color:#fff;padding:28px 5vw;display:flex;align-items:center;justify-content:space-between;gap:20px}footer span,footer a{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:#c9d2d6}footer .brand{font-size:25px;text-transform:none;color:#fff;letter-spacing:0}footer div{display:flex;gap:24px}
.reveal{opacity:0;transform:translateY(42px);filter:blur(5px);transition:opacity .78s ease,transform .9s cubic-bezier(.16,1,.3,1),filter .72s}.reveal.in{opacity:1;transform:none;filter:none}.reveal[data-seq="2"]{transition-delay:.10s}.reveal[data-seq="3"]{transition-delay:.20s}.reveal[data-seq="4"]{transition-delay:.30s}.reveal[data-seq="5"]{transition-delay:.40s}.reveal[data-seq="6"]{transition-delay:.50s}.cursor-dot,.cursor-halo{position:fixed;z-index:100;pointer-events:none;border-radius:50%;left:0;top:0;transform:translate(-50%,-50%)}.cursor-dot{width:5px;height:5px;background:#fff;box-shadow:0 0 8px #fff,0 0 15px #62dcff,0 0 25px #ffc978}.cursor-halo{width:30px;height:30px;border:1px solid #6de3ffcc;box-shadow:0 0 15px #49cfff66,inset 0 0 14px #ffc97833;transition:width .2s,height .2s,border-color .2s}.cursor-halo.hover{width:50px;height:50px;border-color:#ffc978ee}@media(pointer:coarse){.cursor-dot,.cursor-halo{display:none}}
@media(max-width:1000px){nav{gap:16px}.exp-copy{width:51%;padding:42px}.exp-detail{right:3%}.review-card{width:340px}}
@media(max-width:850px){header nav,.route{display:none}header{padding:17px 6vw}.hero-copy{margin-left:6vw;margin-top:60px}.hero{min-height:700px}.shade{background:linear-gradient(0deg,#07141fe9 0%,#07141f68 72%)}.experience{padding:75px 6vw 95px}.exp-stage{min-height:0}.exp-photo{position:relative;width:100%;height:470px}.exp-photo:after{display:none}.exp-copy{position:relative;right:auto;top:auto;width:92%;margin:-70px auto 0;padding:38px;box-shadow:0 25px 60px #49301e20}.exp-detail{position:relative;right:auto;bottom:auto;width:60%;height:180px;margin:-12px 5% 0 auto}.flavors{height:800px}.flavor-overlay{background:linear-gradient(0deg,#071d2cf2 0 47%,#071d2c40 80%)}.flavor-copy{left:6vw;right:6vw;top:auto;bottom:60px;width:auto;transform:none}.flavor-window{right:6vw;top:8%;bottom:auto;width:190px;height:220px}.menu{padding:75px 6vw}.menu-list{grid-template-columns:1fr}.reviews-head{display:block}.rating{text-align:left;border-left:0;border-top:1px solid #123b5a25;padding:25px 0 0;margin-top:35px}.review-card{width:305px;min-height:205px}.visit{grid-template-columns:1fr}.visit-image{min-height:460px}.visit-copy{padding:65px 6vw}footer{flex-direction:column;align-items:flex-start}.scroll{display:none}}
@media(max-width:560px){h2{font-size:clamp(39px,12vw,58px)}.exp-photo{height:390px}.exp-copy{width:96%;padding:30px 24px}.exp-detail{width:72%;height:155px}.flavor-window{width:150px;height:175px}.tabs{flex-wrap:nowrap;overflow:auto;padding-bottom:5px}.tab{white-space:nowrap}.review-card{width:280px}.visit-copy h2{font-size:48px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}.reveal,.hero-reveal{opacity:1;transform:none;filter:none}.hero video{display:none}.hero{background:#143f61 url('assets/exterior.png') center/cover no-repeat}}
/* V5 FINAL — refinamentos aprovados */
.exp-copy{right:5%;width:48%;}
.footer-links{align-items:center}
.social-icon{width:38px;height:38px;border:1px solid #ffffff38;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease!important}
.social-icon:hover{transform:translateY(-3px);border-color:#fff;box-shadow:0 0 20px #64dcff45}
.social-icon svg{width:20px;height:20px;fill:none;stroke:#fff;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.social-icon svg .fill-dot{fill:#fff;stroke:none}
.whatsapp-icon svg path:last-child{stroke-width:1.35}
.word{display:inline-block;opacity:0;transform:translateY(.75em);filter:blur(5px);transition:opacity .55s ease,transform .7s cubic-bezier(.16,1,.3,1),filter .55s ease;will-change:opacity,transform,filter}
.word-line.in .word,.hero-ready .hero-copy .word-line .word{opacity:1;transform:none;filter:none}
@media(prefers-reduced-motion:reduce){.word{opacity:1!important;transform:none!important;filter:none!important}}

/* V6.2 — Mobile-safe Hero fallback.
   On touch/mobile viewports we intentionally render the approved cinematic
   poster as the Hero background instead of exposing a browser video surface.
   This prevents iOS/Safari autoplay restrictions from showing a play UI or
   leaving the Hero looking like a paused video. Desktop keeps the video. */
@media (max-width: 820px), (hover: none) and (pointer: coarse) {
  .hero {
    background: #143f61 url('assets/hero-poster.jpg') center center / cover no-repeat;
  }
  .hero video {
    display: none !important;
  }
}
