:root{--red:#ed1028;--ink:#0b0d10;--muted:#62676d;--paper:#f8f8f6}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:var(--ink);line-height:1.6}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #ff5c6c;outline-offset:5px}img{display:block;width:100%;object-fit:cover}h1,h2,h3,p{margin:0}h1,h2{line-height:1.06;letter-spacing:-.045em}h1{font-size:clamp(40px,4.9vw,72px);max-width:740px}h2{font-size:clamp(30px,3.2vw,46px)}h3{line-height:1.3;font-size:18px;letter-spacing:-.02em}p{margin-top:20px}ul{list-style:none;margin:0;padding:0}.wrap{width:min(1240px,88%);margin:auto}.section{padding:90px 0}.light{background:var(--paper)}.dark{background:#090c0f;color:white}.eyebrow{font-size:11px;font-weight:700;letter-spacing:.16em;display:flex;align-items:center;gap:13px;margin:0 0 23px}.eyebrow:before{content:'';width:32px;height:2px;flex:none;background:var(--red)}.btn{background:var(--red);color:white;padding:21px 25px;display:inline-flex;align-items:center;justify-content:center;gap:24px;border:0;border-radius:5px;font-size:12px;font-weight:800;letter-spacing:.025em;min-height:54px;transition:background .2s,transform .2s}.btn:hover{background:#c90019;transform:translateY(-2px)}.btn span{font-size:21px;line-height:1}.compact{padding:14px 18px;font-size:10px;min-height:45px}.brand{display:inline-flex;flex-direction:column;line-height:1}.brand strong{font-size:34px;font-weight:900;letter-spacing:-2px}.brand strong span{color:var(--red)}.brand small{font-size:8px;letter-spacing:.23em;padding-top:7px}.nav{display:flex;align-items:center;justify-content:space-between;gap:24px;height:86px}header{position:absolute;z-index:10;inset:0 0 auto;color:white;border-bottom:1px solid #ffffff24}nav{display:flex;gap:32px;font-size:12px}nav a:hover{color:#ff8995}.hero{min-height:790px;position:relative;color:white;display:flex;align-items:center;padding:140px 0 100px}.hero picture,.hero-photo,.shade{position:absolute;inset:0;width:100%;height:100%}.hero-photo{object-position:center}.shade{background:linear-gradient(90deg,rgba(3,15,22,.86),rgba(3,15,22,.42) 52%,rgba(3,15,22,.04)),linear-gradient(0deg,rgba(3,15,22,.7),transparent 35%)}.hero-content{position:relative}.lead{font-size:18px;line-height:1.5;max-width:490px;color:#e6ebed;margin-top:24px}.hero-perks{display:flex;gap:25px;margin:34px 0;font-size:11px;line-height:1.4}.hero-perks li{display:flex;gap:10px;align-items:center}.hero-perks li>span{font-size:32px;line-height:1}.micro{font-size:11px;color:#d3d8db;margin-top:13px}.hero-caption{position:absolute;bottom:24px;left:6%;right:6%;font-size:9px;letter-spacing:.14em;display:flex;justify-content:space-between;color:#e8edef}.package{display:grid;grid-template-columns:.85fr 1.15fr;gap:80px}.light p{color:var(--muted);font-size:14px}.checklist{font-size:13px;display:grid;gap:12px}.checklist li{position:relative;padding-left:25px}.checklist li:before{content:'✓';position:absolute;left:0;color:var(--red);font-weight:bold}.gallery{display:grid;grid-template-columns:1.1fr 1fr;gap:14px;margin-top:26px}.gallery figure{margin:0;position:relative;overflow:hidden;border-radius:4px}.gallery img{height:165px}.gallery figcaption{position:absolute;bottom:0;padding:20px 10px 8px;color:white;background:linear-gradient(transparent,#000b);width:100%;font-size:10px}.gallery-slot{border:1px solid #d8dadb;display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:165px;text-align:center;padding:15px;font-size:12px;color:#525960;border-radius:4px}.gallery-slot>span{color:var(--red);font-size:25px}.gallery-slot small{margin-top:8px;font-size:10px}.small,.light .small{font-size:11px;line-height:1.6;color:#777f87}.preview-layout{display:grid;grid-template-columns:1.15fr 1fr;align-items:center;gap:65px}.preview-layout p:not(.eyebrow){color:#aeb6bd;font-size:14px}.preview-layout .small{font-size:11px!important}.video-shell{border:1px solid #384148;border-radius:6px;overflow:hidden;position:relative;background:#111a20}#video-placeholder{position:relative}.video-shell img{aspect-ratio:16/10;filter:brightness(.62)}.video-overlay{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px}.video-overlay strong{font-size:10px;letter-spacing:.12em}.play{height:64px;width:64px;border:1px solid #fff;background:#ffffff17;border-radius:100%;color:white;font-size:23px;padding-left:10px}.play:hover{background:#ed1028}.video-status{margin:0;padding:12px 18px;font-size:11px!important}video{width:100%;aspect-ratio:16/9;background:black}.text-link{display:inline-block;border-bottom:1px solid #5e656a;padding-bottom:6px;margin-top:28px;font-size:10px;font-weight:bold;letter-spacing:.1em}.text-link span{margin-left:20px}.benefit-heading{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:end}.benefit-heading p:last-child{max-width:470px}.benefits{display:grid;grid-template-columns:repeat(4,1fr);margin-top:48px;gap:28px}.benefits article{border-top:1px solid #dedfdf;padding-top:24px}.line-icon{font-size:32px;color:var(--red);display:block;margin-bottom:20px;line-height:1}.benefits p{font-size:12px;margin-top:12px}.offer{position:relative;background:linear-gradient(90deg,#061018ed,#061018d9),url('assets/balneario-camboriu.webp') center 65%/cover}.offer-layout{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}.offer h2{font-size:36px;max-width:460px}.price{font-size:76px;font-weight:800;line-height:1;letter-spacing:-.07em;margin-top:30px}.price small{font-size:31px;letter-spacing:-.03em}.payment-label{font-size:10px;letter-spacing:.12em;margin-top:14px;color:#b4bfc6}.offer-panel .btn{width:100%;margin-top:30px}.availability{font-size:12px;color:#e6c3a1;text-align:center;margin-top:17px}.availability span{font-size:8px;margin-right:6px}.offer-panel>.small{text-align:center;color:#aeb8bf}.faq-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:90px}details{border-bottom:1px solid #dadcdd;padding:19px 0}details:first-child{border-top:1px solid #dadcdd}summary{font-size:14px;cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:20px;font-weight:bold}summary:after{content:'+';color:var(--red);font-size:20px;line-height:1}details[open] summary:after{content:'−'}details p{font-size:13px!important;padding-right:20px;margin-top:15px}footer{color:#c2c6cb;padding:60px 0 0;font-size:11px}.footer-grid{display:grid;grid-template-columns:1fr 1.3fr .8fr 1fr;gap:38px}.footer-grid h3{font-size:10px;letter-spacing:.1em;color:white;margin:0 0 20px}.footer-grid p{font-size:11px;line-height:1.9;margin:0 0 24px}.footer-grid>.brand{color:white}.footer-grid .brand{margin-bottom:20px;color:white}.footer-grid a,.legal-link{display:block;margin-bottom:9px;overflow-wrap:anywhere}.footer-grid a:hover,.legal-link:hover{color:white}.legal-link{border:0;padding:0;color:inherit;background:none;font-size:11px;text-align:left}.footer-grid .small{color:#868f98;font-size:10px;margin-top:20px}.footer-bottom{border-top:1px solid #24282c;margin-top:40px;padding:22px 0;display:flex;justify-content:space-between;color:#838c94;font-size:10px}dialog{border:1px solid #ddd;border-radius:8px;padding:30px;width:min(690px,92%);max-height:86vh;color:var(--ink);background:var(--paper)}dialog::backdrop{background:#000b}dialog h2{font-size:30px}dialog p{font-size:14px}dialog h3{margin-top:24px}.dialog-top{display:flex;justify-content:space-between;gap:20px}.dialog-top button{background:none;border:0;font-size:28px}.dialog-top .eyebrow{font-size:9px}dialog .btn{margin-top:25px}.skip{position:fixed;top:-80px;left:15px;background:white;padding:10px;z-index:30}.skip:focus{top:10px}[hidden]{display:none!important}
@media(min-width:1600px){.hero{min-height:880px}}@media(max-width:900px){nav{gap:18px}.package,.preview-layout,.offer-layout,.faq-layout{gap:35px}.footer-grid{grid-template-columns:1fr 1fr;gap:35px}.hero{min-height:740px}.hero h1{max-width:600px}.benefits{grid-template-columns:1fr 1fr}.offer h2{font-size:30px}.offer-panel .btn{font-size:10px;gap:12px}}@media(max-width:600px){.wrap{width:88%}.nav{height:76px;gap:14px}nav{display:none}.brand strong{font-size:28px}.brand small{font-size:6.5px}.compact{font-size:9px;padding:11px 12px;gap:8px;min-height:40px}.hero{min-height:830px;padding:130px 0 95px;align-items:center}.hero-photo{object-position:62% center}.shade{background:linear-gradient(90deg,#03121bd9,#03121b55),linear-gradient(0deg,#03121bbf,transparent 90%)}h1{font-size:43px;max-width:410px}.hero .eyebrow{font-size:9px;letter-spacing:.12em}.lead{font-size:16px}.hero-perks{gap:13px;font-size:9px;margin:28px 0}.hero-perks li{gap:7px}.hero-perks li>span{font-size:23px}.hero .btn{width:100%;font-size:11px;gap:12px;padding:19px 12px}.hero-caption{font-size:8px;bottom:22px}.hero-caption span{display:none}.section{padding:56px 0}.package,.preview-layout,.benefit-heading,.offer-layout,.faq-layout{grid-template-columns:1fr;gap:30px}h2{font-size:34px}.eyebrow{font-size:10px;margin-bottom:18px}.package p{font-size:14px}.gallery img,.gallery-slot{height:145px;min-height:145px}.preview-layout{gap:30px}.preview-layout>div:last-child{grid-row:1}.benefit-heading{gap:0}.benefits{gap:25px 20px;margin-top:30px}.benefits h3{font-size:16px}.benefits p{font-size:12px}.offer h2{font-size:34px}.price{font-size:72px}.offer-layout{gap:36px}.offer-panel .btn{font-size:11px}.faq-layout{gap:28px}.footer-grid{grid-template-columns:1fr;gap:25px}.footer-grid>div:first-child{padding-bottom:6px}.footer-grid h3{margin-bottom:13px}.footer-grid p{margin-bottom:18px}.footer-bottom{display:grid;gap:7px}dialog{padding:22px}.video-overlay strong{font-size:9px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}

/* Apenas o player autorizado da prévia; enquadramento vertical completo. */
.video-shell-portrait{width:min(100%,360px);justify-self:center;background:#000}
.video-shell-portrait video{display:block;width:100%;height:auto;aspect-ratio:9/16;object-fit:contain;background:#000}

/* Galeria manual e faixa institucional — melhorias locais da landing. */
.carousel-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:28px 0 14px;font-size:11px;font-weight:bold;letter-spacing:.05em}
.carousel-actions{display:flex;gap:8px}.carousel-actions button{width:34px;height:34px;border:1px solid #d2d5d6;border-radius:50%;background:transparent;color:var(--ink);font-size:18px}.carousel-actions button:disabled{opacity:.3;cursor:default}
.photos-track{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 14px)/2);gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;overscroll-behavior-x:contain;scrollbar-width:thin;padding-bottom:10px}
.photo-card{margin:0;scroll-snap-align:start;min-width:0}.photo-card img{aspect-ratio:4/3;height:auto;border-radius:5px;object-fit:cover}.photo-card figcaption{padding-top:9px;font-size:11px;line-height:1.5}.photo-card figcaption span{display:block;color:#747b82;font-size:10px}
.trust-strip{background:#101317;color:#fff;border-top:1px solid #282c31;border-bottom:1px solid #282c31;padding:34px 0}.trust-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:34px}.trust-grid article{display:flex;align-items:flex-start;gap:15px}.trust-grid svg{width:26px;height:26px;flex:none;color:var(--red)}.trust-grid h3{font-size:11px;letter-spacing:.05em;line-height:1.5}.trust-grid p{font-size:12px;line-height:1.65;color:#aeb6bd;margin-top:8px}
@media(min-width:1200px){.photos-track{grid-auto-columns:calc((100% - 28px)/3)}}
@media(max-width:700px){.trust-grid{grid-template-columns:1fr;gap:26px}.trust-strip{padding:30px 0}}
@media(max-width:600px){.photos-track{grid-auto-columns:86%}.video-shell-portrait{width:min(100%,360px)}}
@media(prefers-reduced-motion:reduce){.photos-track{scroll-behavior:auto}}

.collection-highlights{display:flex;flex-wrap:wrap;gap:12px 20px;margin-top:26px;font-size:11px;font-weight:700}.collection-highlights li{display:flex;align-items:center;gap:8px}.collection-highlights li:before{content:"";width:5px;height:5px;border-radius:50%;background:var(--red);flex:none}

/* Refinamento pontual: navegação de alto contraste. */
.carousel-actions button{width:40px;height:40px;min-width:40px;display:inline-flex;align-items:center;justify-content:center;background:#000;color:#fff;border-color:#000;line-height:1;transition:background .18s,border-color .18s}
.carousel-actions button:hover:not(:disabled){background:#30353b;border-color:#30353b}
.carousel-actions button:disabled{opacity:.5;background:#000;border-color:#000;color:#fff;cursor:default}
.photos-track{max-width:100%;min-width:0}.package>div{min-width:0}

/* Fotografia licenciada em toda a seção, atrás do vídeo e texto. */
.preview-cinematic{position:relative;isolation:isolate;background:#090c0f url('assets/gallery/video-background.webp') center/cover no-repeat}
.preview-cinematic:before{content:"";position:absolute;inset:0;background:rgba(3,10,15,.78);z-index:-1;pointer-events:none}
.preview-cinematic>.wrap{position:relative}.preview-cinematic .background-credit{font-size:10px!important;line-height:1.6;color:#c0c7cc;margin-top:24px}
.photo-card figcaption a,.background-credit a{text-decoration:underline;text-underline-offset:2px}.photo-card figcaption span{font-size:9px;line-height:1.6}
@media(max-width:600px){.preview-cinematic{background-position:45% center}}

/* Refinamento V3: navegação e créditos */
.nav-instagram{display:inline-flex;align-items:center;gap:5px;white-space:nowrap}.credits-disclosure{font-size:11px;color:#aeb2b6;margin-top:24px;max-width:850px}.credits-disclosure summary{cursor:pointer}.photo-credits{font-size:11px;line-height:1.7}.credits-disclosure a{text-decoration:underline}.nav nav{gap:20px}@media(max-width:1050px){.nav nav{gap:12px}}@media(max-width:760px){.nav nav{display:none}}

/* Only the approved hero headline. */
.hero h1 .hero-title-line{display:block}.hero h1 .hero-title-highlight{width:fit-content;background:var(--red);color:#fff;padding:.05em .14em .08em;border-radius:4px;white-space:nowrap}
@media(max-width:600px){.hero h1{font-size:clamp(32px,10.4vw,43px)}}
