/* Site animado — Maria Santos. Fontes da biblioteca da skill: Domaine Display (titulo), Gilroy (texto), Bebas Neue (numero), Didot LT Italic (palavra de destaque). */
@font-face{font-family:'Domaine Display';src:url('../fonts/domaine-display-domaine-display-regular.woff') format('woff');font-weight:400;font-display:swap}
@font-face{font-family:'Gilroy';src:url('../fonts/gilroy-gilroy-regular.woff') format('woff');font-weight:400 500;font-display:swap}
@font-face{font-family:'Gilroy';src:url('../fonts/gilroy-gilroy-semibold.woff') format('woff');font-weight:600 800;font-display:swap}
@font-face{font-family:'Bebas Neue';src:url('../fonts/bebas-neue-bebasneue-bold.woff') format('woff');font-weight:400 700;font-display:swap}
@font-face{font-family:'Didot LT';src:url('../fonts/didot-lt-std-didotltstd-italic.woff') format('woff');font-weight:400;font-style:italic;font-display:swap}

:root{
  --cream:#F3EEE2; --cream-2:#E9E2D2; --green:#1E4D3E; --green-d:#14352B; --green-x:#0E261E; --gold:#D4AF37; --gold-l:#E6CB74; --ink:#1B2A25;
  --ap-bg:var(--green-d); --ap-ink:#F3EEE2; --ap-muted:rgba(243,238,226,.62); --ap-accent:#D4AF37; --ap-line:rgba(243,238,226,.2);
  --ap-serif:'Domaine Display',Georgia,serif; --ap-sans:'Gilroy',system-ui,sans-serif; --ap-num:'Bebas Neue',sans-serif; --ap-ease:cubic-bezier(.2,.7,.1,1);
  --sec:clamp(84px,12vw,170px);
}
body{font-weight:400}
h1,h2,h3{font-weight:400}
.it{font-family:'Didot LT',Georgia,serif;font-style:italic;font-weight:400}

/* ===== elementos autorais (base da skill) ===== */
/* 1. Grao de filme sobre a pagina (tira o aspecto "digital liso") */
.ap-grain::after{content:"";position:fixed;inset:-50%;z-index:90;pointer-events:none;opacity:.07;mix-blend-mode:overlay;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='220' height='220'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 1  0 0 0 0 1  0 0 0 0 1  0 0 0 .9 0'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>");}

/* 2. Regua editorial com indice  (01) ———— Titulo */
.ap-rule{display:flex;align-items:center;gap:14px;font:600 .74rem/1 var(--ap-sans);letter-spacing:.22em;text-transform:uppercase;color:var(--ap-muted)}
.ap-rule[data-n]::before{content:attr(data-n);color:var(--ap-accent)}
.ap-rule::after{content:"";flex:1;height:1px;background:var(--ap-line)}

/* 3. Mascaras de imagem: arco, pilula, circulo (janela de arquitetura) */
.ap-arch{border-radius:999px 999px 0 0;overflow:hidden}
.ap-pill{border-radius:999px;overflow:hidden}
.ap-circle{border-radius:50%;overflow:hidden;aspect-ratio:1}
.ap-notch{clip-path:polygon(0 0,calc(100% - 36px) 0,100% 36px,100% 100%,0 100%)}

/* 4. Marcas de corte nos cantos (referencia de grafica/arquitetura) */
.ap-crop{position:relative}
.ap-crop::before,.ap-crop::after{content:"";position:absolute;width:18px;height:18px;border:1px solid var(--ap-accent);pointer-events:none}
.ap-crop::before{top:-9px;left:-9px;border-right:0;border-bottom:0}
.ap-crop::after{bottom:-9px;right:-9px;border-left:0;border-top:0}

/* 5. Numeral grande solido (nao contorno) */
.ap-numeral{font-family:var(--ap-num);font-size:clamp(5rem,14vw,12rem);line-height:.82;letter-spacing:-.01em;color:var(--ap-accent)}

/* 6. Link com sublinhado que varre */
.ap-link{position:relative;display:inline-block;color:var(--ap-ink)}
.ap-link::after{content:"";position:absolute;left:0;right:0;bottom:-3px;height:1px;background:currentColor;transform:scaleX(0);transform-origin:right;transition:transform .5s var(--ap-ease)}
.ap-link:hover::after{transform:scaleX(1);transform-origin:left}

/* 7. Botao com preenchimento que varre + seta que desliza */
.ap-btn{background:transparent;position:relative;display:inline-flex;align-items:center;gap:.7rem;padding:1rem 1.6rem;border:1px solid var(--ap-accent);color:var(--ap-ink);
  font:600 .8rem/1 var(--ap-sans);letter-spacing:.18em;text-transform:uppercase;overflow:hidden;isolation:isolate;border-radius:999px;min-height:48px}
.ap-btn::before{content:"";position:absolute;inset:0;background:var(--ap-accent);transform:translateY(101%);transition:transform .5s var(--ap-ease);z-index:-1}
.ap-btn:hover{color:#16130B}
.ap-btn:hover::before{transform:translateY(0)}
.ap-btn i{display:inline-block;transition:transform .4s var(--ap-ease);font-style:normal}
.ap-btn:hover i{transform:translateX(5px)}

/* 8. Texto vertical (lateral de secao) */
.ap-vertical{writing-mode:vertical-rl;transform:rotate(180deg);font:600 .72rem/1 var(--ap-sans);letter-spacing:.3em;text-transform:uppercase;color:var(--ap-muted)}

/* 9. Halo de luz (fundo com profundidade, sem imagem) */
.ap-halo{position:absolute;pointer-events:none;border-radius:50%;filter:blur(40px);
  background:radial-gradient(circle,color-mix(in srgb,var(--ap-accent) 30%,transparent),transparent 65%)}

/* 10. Titulo que sobe linha a linha (mascara). Marcar linhas com <span><i>texto</i></span> */
.ap-lines span{display:block;overflow:hidden}
.ap-lines i{display:block;font-style:normal;transform:translateY(105%);transition:transform 1s var(--ap-ease)}
.ap-lines.in i{transform:none}
.ap-lines span:nth-child(2) i{transition-delay:.08s}
.ap-lines span:nth-child(3) i{transition-delay:.16s}
.ap-lines span:nth-child(4) i{transition-delay:.24s}

/* 11. Etiqueta de secao "03 / 06" */
.ap-chip{display:inline-flex;gap:.6rem;align-items:center;padding:.45rem .8rem;border:1px solid var(--ap-line);border-radius:999px;
  font:600 .72rem/1 var(--ap-sans);letter-spacing:.18em;text-transform:uppercase;color:var(--ap-muted)}
.ap-chip b{color:var(--ap-accent);font-weight:600}

/* 12. Linha de progresso de leitura no topo */
.ap-progress{position:fixed;left:0;top:0;height:2px;width:100%;background:var(--ap-accent);transform:scaleX(0);transform-origin:left;z-index:80}

/* 13. Cursor proprio (ponto + anel com rotulo) — so em dispositivo com mouse */
.ap-cursor,.ap-cursor-ring{position:fixed;left:0;top:0;pointer-events:none;z-index:100;border-radius:50%;opacity:0;transition:opacity .3s}
.ap-cursor{width:6px;height:6px;background:var(--ap-accent);margin:-3px 0 0 -3px}
.ap-cursor-ring{width:38px;height:38px;margin:-19px 0 0 -19px;border:1px solid var(--ap-accent);display:grid;place-items:center;
  font:600 .6rem/1 var(--ap-sans);letter-spacing:.14em;text-transform:uppercase;color:var(--ap-ink);transition:width .35s var(--ap-ease),height .35s var(--ap-ease),margin .35s var(--ap-ease),opacity .3s,background .3s}
.ap-cursor-ring.big{width:84px;height:84px;margin:-42px 0 0 -42px;background:rgba(200,169,106,.16)}
@media (hover:none){.ap-cursor,.ap-cursor-ring{display:none}}

html:not(.js) .ap-lines i{transform:none}
.ap-grain::after{z-index:60}
.ap-btn{color:#F3EEE2;border-color:var(--gold)}
.ap-btn:hover{color:#14352B}
.on-cream{--ap-ink:#1B2A25;--ap-muted:rgba(27,42,37,.6);--ap-line:rgba(27,42,37,.2);--ap-accent:#A98320}
.on-cream .ap-btn{color:var(--green-d)}
.ap-link{color:inherit}

/* ===== estrutura das secoes ===== */
.hs{position:relative;padding:var(--sec) 0;overflow:hidden}
.hs .wrap{position:relative;z-index:2}
.on-cream{background:var(--cream);color:var(--ink)}
.on-green{background:var(--green);color:#F3EEE2}
.on-dark{background:var(--green-d);color:#F3EEE2}
.hs h2{color:inherit;font-size:clamp(2.2rem,5.6vw,5rem);line-height:1.04;letter-spacing:-.01em}
.hs h2 em,.h-hero h1 em{font-family:'Didot LT',Georgia,serif;font-style:italic;font-weight:400;color:var(--gold)}
.on-cream h2 em{color:#A98320}
.h-lead{font-size:clamp(1rem,1.5vw,1.2rem);line-height:1.65;max-width:560px;opacity:.82}
.hs .ap-rule{margin-bottom:clamp(28px,4vw,56px)}

/* ===== sequências de quadros (hero + como funciona): o vídeo anda com o scroll ===== */
.seqwrap{padding:0!important;margin:0;position:relative;overflow:visible;background:var(--green-x);color:#F3EEE2}
.seq-stage{position:sticky;top:0;height:100svh;overflow:hidden;display:flex;align-items:flex-end}
.seq-canvas,.seq-poster,.seq-poster img{position:absolute;inset:0;width:100%;height:100%;display:block}
.seq-poster img{object-fit:cover}.seq-poster{transition:opacity .4s}
.seq-shade{position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(14,38,30,.55) 0%,rgba(14,38,30,0) 26%,rgba(14,38,30,0) 48%,rgba(14,38,30,.72) 100%)}
.seq-bar{position:absolute;left:0;right:0;bottom:0;height:2px;background:rgba(243,238,226,.14);z-index:4}
.seq-bar i{display:block;height:100%;background:var(--gold);transform:scaleX(0);transform-origin:left}

/* ===== 1 hero ===== */
.h-hero{background:var(--green-x)}
.h-hero-in{position:relative;z-index:3;width:100%;padding-bottom:clamp(40px,9vh,96px);padding-top:110px;will-change:transform,opacity}
.h-hero h1{font-size:clamp(2.2rem,min(6.3vw,11.5vh),6.4rem);line-height:1.02;letter-spacing:-.015em;color:#F3EEE2;text-shadow:0 2px 30px rgba(8,24,18,.5)}
.h-hero p{max-width:520px;margin:22px 0 30px;font-size:clamp(1rem,1.6vw,1.2rem);line-height:1.6;font-weight:400;color:rgba(243,238,226,.94);text-shadow:0 1px 16px rgba(8,24,18,.7)}
.h-hero-in .ap-lines span{padding-bottom:.08em}
.h-fade{opacity:0;animation:hfade 1s .5s var(--ap-ease) forwards}
@keyframes hfade{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
html:not(.js) .h-fade{opacity:1;animation:none}
.h-hero .ap-lines i{animation:hup 1.1s .1s var(--ap-ease) forwards}
.h-hero .ap-lines span:nth-child(2) i{animation-delay:.22s}
@keyframes hup{from{transform:translateY(105%)}to{transform:none}}

/* ===== 2 como funciona: voo de drone pelo parque, 4 passos como legenda ===== */
.h-how{padding:0}
.h-how-in{position:relative;z-index:3;width:100%;height:100%;display:flex;flex-direction:column;justify-content:space-between;padding-block:104px clamp(44px,9vh,92px)}
.h-how-label{font:600 .76rem/1 var(--ap-sans);letter-spacing:.24em;text-transform:uppercase;color:#F3EEE2;transition:opacity .5s;text-shadow:0 1px 12px rgba(8,24,18,.7)}
.h-how-label::after{content:"";display:inline-block;vertical-align:middle;margin-left:16px;width:64px;height:1px;background:var(--gold)}
.h-how-steps{position:relative;min-height:clamp(170px,30vh,260px);max-width:560px}
.h-step{position:absolute;left:0;bottom:0;right:0;opacity:0;transform:translateY(26px);transition:opacity .6s var(--ap-ease),transform .6s var(--ap-ease);pointer-events:none}
.h-step.on{opacity:1;transform:none}
.h-step h3{font-size:clamp(2.2rem,4.6vw,4.2rem);line-height:1.04;color:#F3EEE2;text-shadow:0 2px 24px rgba(8,24,18,.55)}
.h-step h3::after{content:"";display:block;width:56px;height:2px;margin:16px 0 14px;background:var(--gold)}
.h-step p{max-width:460px;font-size:clamp(1rem,1.35vw,1.15rem);line-height:1.65;color:rgba(243,238,226,.95);text-shadow:0 1px 16px rgba(8,24,18,.75)}
.h-how .seq-shade-b{background:linear-gradient(0deg,rgba(14,38,30,.82) 0%,rgba(14,38,30,.4) 34%,rgba(14,38,30,0) 58%),linear-gradient(180deg,rgba(14,38,30,.5) 0%,rgba(14,38,30,0) 22%)}
html:not(.js) .h-step{position:static;opacity:1;transform:none;margin-bottom:28px}

/* ===== 3 empreendimentos (linhas editoriais, imagem limpa) ===== */
.h-emp h2{margin-bottom:clamp(36px,6vw,80px)}
.h-trio{display:grid;gap:clamp(48px,7vw,104px)}
.h-card{display:grid;grid-template-columns:1.35fr 1fr;gap:clamp(24px,5vw,80px);align-items:center;position:relative;color:inherit}
.h-card:nth-child(even){grid-template-columns:1fr 1.35fr}
.h-card:nth-child(even) .ph{order:2}
.h-card .ph{position:relative;overflow:hidden;background:var(--green-x);aspect-ratio:16/10}
.h-card .ph img{position:absolute;left:0;top:-8%;width:100%;height:116%;object-fit:cover;will-change:transform;transition:filter .6s}
.h-card:hover .ph img{filter:saturate(1.1) brightness(1.06)}
.h-card .h-tag{position:absolute;left:14px;bottom:14px;z-index:2;padding:7px 12px;background:rgba(14,38,30,.78);color:#F3EEE2;font:600 .68rem/1 var(--ap-sans);letter-spacing:.18em;text-transform:uppercase;backdrop-filter:blur(6px)}
.h-card h3{font-size:clamp(2rem,3.6vw,3.4rem);margin:0 0 12px;color:inherit;line-height:1.08}
.h-card p{font-size:1rem;line-height:1.65;opacity:.8;max-width:38ch}
.h-card .meta{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-top:22px;padding-top:16px;border-top:1px solid var(--ap-line);font:600 .76rem/1.2 var(--ap-sans);letter-spacing:.14em;text-transform:uppercase;max-width:440px}
.h-card .meta b{font-weight:600;color:var(--gold)}
.h-emp-cta{display:flex;justify-content:center;margin-top:clamp(40px,6vw,80px)}

/* ===== 4 vitale destaque (zoom-through fixo) ===== */
.h-vit{position:relative;height:100svh;min-height:640px;overflow:hidden;background:var(--green-x);color:#F3EEE2}
.h-vit-bg{position:absolute;inset:0;will-change:transform}
.h-vit-bg img{width:100%;height:100%;object-fit:cover}
.h-vit::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(14,38,30,.88) 0%,rgba(14,38,30,.55) 45%,rgba(14,38,30,.1) 80%),linear-gradient(0deg,rgba(14,38,30,.7),transparent 40%)}
.h-vit-in{position:relative;z-index:3;height:100%;display:flex;flex-direction:column;justify-content:center;padding-block:100px 60px}
.h-vit h2{color:#F3EEE2;font-size:clamp(3rem,9vw,8.5rem);line-height:.98;margin:18px 0 22px}
.h-vit .h-lead{opacity:.9;max-width:480px}
.h-facts{display:flex;flex-wrap:wrap;gap:14px 40px;margin:34px 0 36px}
.h-facts div{display:flex;flex-direction:column;gap:6px}
.h-facts small{font:600 .68rem/1 var(--ap-sans);letter-spacing:.2em;text-transform:uppercase;color:rgba(243,238,226,.65)}
.h-facts strong{font:400 clamp(1.5rem,2.6vw,2.4rem)/1 'Domaine Display',serif}
.h-facts .price strong{font-family:'Bebas Neue',sans-serif;font-size:clamp(2rem,3.4vw,3.2rem);color:var(--gold);letter-spacing:.02em}
.h-hot{position:absolute;z-index:3;width:16px;height:16px;border-radius:50%;border:1px solid #F3EEE2;background:rgba(243,238,226,.25)}
.h-hot::after{content:"";position:absolute;inset:-9px;border-radius:50%;border:1px solid rgba(243,238,226,.5);animation:hot 2.6s infinite}
@keyframes hot{0%{transform:scale(.6);opacity:1}100%{transform:scale(1.5);opacity:0}}

/* ===== 5 numeros ===== */
.h-num-grid{display:grid;grid-template-columns:1fr 1.15fr;gap:clamp(30px,6vw,100px);align-items:start}
.h-num-grid h2{font-size:clamp(2.2rem,5vw,4.6rem)}
.h-num-grid .h-lead{margin-top:24px}
.h-stats{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--ap-line)}
.h-stat{padding:clamp(22px,3vw,40px) 0 clamp(22px,3vw,36px);border-bottom:1px solid var(--ap-line)}
.h-stat:nth-child(odd){padding-right:clamp(12px,3vw,40px);border-right:1px solid var(--ap-line)}
.h-stat:nth-child(even){padding-left:clamp(12px,3vw,40px)}
.h-stat b{display:block;font:400 clamp(4rem,9vw,8.5rem)/.85 'Bebas Neue',sans-serif;color:#A98320;letter-spacing:.005em}
.h-stat span{display:block;margin-top:14px;font:600 .74rem/1.4 var(--ap-sans);letter-spacing:.16em;text-transform:uppercase;color:var(--ap-muted);max-width:22ch}

/* ===== 6 sobre ===== */
.h-about-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(30px,7vw,110px);align-items:center}
.h-about-ph{position:relative;max-width:460px;width:100%;margin-inline:auto}
.h-about-ph .ph-rect{aspect-ratio:4/5;background:var(--green-x);overflow:hidden}
.h-about-ph img{width:100%;height:100%;object-fit:cover;object-position:50% 20%}
.h-about h2{font-size:clamp(2.4rem,5.4vw,4.8rem)}
.h-about p{max-width:520px;margin-top:20px;font-size:clamp(1rem,1.4vw,1.15rem);line-height:1.7;opacity:.85}
.h-about .role{font:600 .76rem/1.5 var(--ap-sans);letter-spacing:.2em;text-transform:uppercase;color:var(--gold);opacity:1;margin-top:18px}
.h-langs{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}
.h-langs span{padding:9px 16px;border:1px solid var(--ap-line);border-radius:999px;font:600 .72rem/1 var(--ap-sans);letter-spacing:.16em;text-transform:uppercase}
.h-creci{display:inline-flex;align-items:center;gap:10px;margin-top:30px;font:600 .76rem/1 var(--ap-sans);letter-spacing:.2em;text-transform:uppercase;color:rgba(243,238,226,.75)}
.h-creci b{color:var(--gold);font-weight:600}
.h-about .ig{margin-top:22px;display:inline-flex;color:rgba(243,238,226,.85)}

/* ===== 7 CTA ===== */
.h-cta{background:var(--green-x);color:#F3EEE2;text-align:center;padding:calc(var(--sec)*1.1) 0}
.h-cta h2{margin:0 auto 22px;font-size:clamp(2.1rem,5.4vw,5.4rem)}
.h-cta .h-lead{margin:0 auto 38px}
.h-cta .ap-halo{width:min(70vw,760px);aspect-ratio:1;left:50%;top:50%;margin:-380px 0 0 -380px;opacity:.7}
.h-cta small{display:block;margin-top:22px;font:500 .8rem/1.4 var(--ap-sans);letter-spacing:.06em;color:rgba(243,238,226,.6)}
.h-cta .ap-btn{font-size:.86rem;padding:1.2rem 2.1rem}

/* revelar simples (peca de apoio) */
html.js .rv{opacity:0;transform:translateY(34px)}

/* ===== mobile desenhado ===== */
@media(max-width:899px){
  .h-hero-in{padding-bottom:calc(104px + env(safe-area-inset-bottom));padding-top:96px}
  .h-hero h1{font-size:clamp(2.3rem,10.4vw,3.4rem)}
  .h-how-in{padding-block:88px calc(108px + env(safe-area-inset-bottom))}
  .h-step h3{font-size:clamp(2rem,9vw,2.8rem)}
  .h-how-steps{min-height:210px}
  .h-trio{gap:54px}
  .h-card,.h-card:nth-child(even){grid-template-columns:1fr;gap:22px}
  .h-card:nth-child(even) .ph{order:0}
  .h-card .ph{aspect-ratio:4/3}
  .h-vit{min-height:0;height:92svh}
  .h-vit::before{background:linear-gradient(0deg,rgba(14,38,30,.92) 6%,rgba(14,38,30,.55) 55%,rgba(14,38,30,.25))}
  .h-vit-in{justify-content:flex-end;padding-block:90px 48px}
  .h-num-grid,.h-about-grid{grid-template-columns:1fr}
  .h-about-ph{max-width:340px}
  .h-cta .ap-halo{margin:-260px 0 0 -260px}
  .h-hot{display:none}
}

/* ===== quiz (popup) ===== */
.modal-box.qz{max-width:560px;background:var(--cream);color:var(--ink);border-radius:26px;padding:clamp(26px,5vw,42px)}
.qz .modal-x{background:rgba(27,42,37,.08);color:var(--green)}
.qz .form{gap:0;background:transparent;color:var(--ink);display:block}
.qz-top{display:flex;align-items:center;gap:14px;margin:0 40px 18px 0}
.qz-bar{flex:1;height:2px;background:rgba(27,42,37,.14);position:relative;overflow:hidden}
.qz-bar i{position:absolute;inset:0;background:var(--gold);transform:scaleX(.33);transform-origin:left;transition:transform .5s var(--ap-ease)}
.qz-count{font:600 .72rem/1 var(--ap-sans);letter-spacing:.18em;text-transform:uppercase;color:#7a6a3a}
.qz .m-head{margin-bottom:18px;padding-right:0}
.qz .m-head h3{font-size:clamp(1.5rem,4.6vw,2rem);line-height:1.12;color:var(--green)}
.qz .m-head .eyebrow{color:#A98320}
.qz-step{display:none;gap:22px}
.qz-step.on{display:grid;animation:qzin .5s var(--ap-ease)}
@keyframes qzin{from{opacity:0;transform:translateX(18px)}}
.qz-q{display:grid;gap:10px;border:0;padding:0;min-width:0}
.qz-q legend{padding:0;margin-bottom:2px;font:600 .74rem/1.3 var(--ap-sans);letter-spacing:.14em;text-transform:uppercase;color:var(--green)}
.qz-opts{display:flex;flex-wrap:wrap;gap:8px}
.qz-opt{position:relative;cursor:pointer}
.qz-opt input{position:absolute;opacity:0;inset:0;width:100%;height:100%;margin:0;cursor:pointer}
.qz-opt span{display:inline-flex;align-items:center;min-height:44px;padding:0 16px;border:1.5px solid rgba(27,42,37,.22);border-radius:999px;background:#fff;font:500 .94rem/1.2 var(--ap-sans);color:var(--ink);transition:background .25s,border-color .25s,color .25s,transform .25s var(--ap-ease)}
.qz-opt:hover span{border-color:var(--green)}
.qz-opt input:checked+span{background:var(--green);border-color:var(--green);color:#F3EEE2;transform:translateY(-1px)}
.qz-opt input:focus-visible+span{outline:2px solid var(--gold);outline-offset:2px}
.qz-q.err legend::after{content:" *";color:#c0392b}
.qz-q.err .qz-opt span{border-color:#c0392b}
.qz .field label{color:var(--green)}
.qz-consent{display:flex;gap:12px;align-items:flex-start;font:400 .84rem/1.5 var(--ap-sans);color:#4b5558;cursor:pointer}
.qz-consent input{margin-top:3px;width:18px;height:18px;accent-color:var(--green);flex:none}
.qz-consent.err{color:#c0392b}
.qz-nav{display:flex;gap:12px;margin-top:24px}
.qz-nav .btn{width:auto;flex:1;margin:0}
.qz-nav .qz-back{flex:0 0 auto;background:transparent;color:var(--green);border-color:rgba(27,42,37,.3);padding:0 22px}
.qz-nav .qz-back[hidden]{display:none}
.qz .form small{display:block;margin-top:14px;color:#6a7478}
.qz .btn-primary::after{display:none}
.qz .ok p{color:#4b5558}

.qz-nav [hidden]{display:none!important}

/* ===== menu fixo sobre o vídeo: barra verde translúcida (a branca brigava com as sequências) ===== */
.home .hdr.solid{background:rgba(14,38,30,.8);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 1px 0 rgba(212,175,55,.35)}
.home .hdr.solid .brand,.home .hdr.solid .nav a:not(.btn){color:#F3EEE2}
.home .hdr.solid .brand small{color:var(--gold)}
.home .hdr.solid .mark .m-dark{opacity:0}.home .hdr.solid .mark .m-light{opacity:1}
.home .hdr.solid .burger span{background:#F3EEE2}
.home .hdr.solid .lang button{box-shadow:0 0 0 1.5px rgba(243,238,226,.5)}

/* ===== contraste dos textos sobre imagem (AA: >=4,5:1 texto corrido, >=3:1 títulos grandes) ===== */
:root{--on-img:#F7F1E3;--gold-lt:#F2D488;--gold-live:#F2C75C;--tshadow:0 2px 14px rgba(0,0,0,.55)}
/* véu escuro por baixo e pela esquerda, onde o texto fica (em vez de camada uniforme fraca) */
.h-hero .seq-shade{background:linear-gradient(0deg,rgba(7,22,17,.8) 0%,rgba(7,22,17,.62) 30%,rgba(7,22,17,.2) 58%,rgba(7,22,17,.38) 100%),linear-gradient(90deg,rgba(7,22,17,.62) 0%,rgba(7,22,17,.42) 42%,rgba(7,22,17,0) 72%)}
.h-how .seq-shade-b{background:linear-gradient(0deg,rgba(7,22,17,.86) 0%,rgba(7,22,17,.62) 34%,rgba(7,22,17,0) 60%),linear-gradient(180deg,rgba(7,22,17,.66) 0%,rgba(7,22,17,0) 24%),linear-gradient(90deg,rgba(7,22,17,.5) 0%,rgba(7,22,17,0) 60%)}
.h-vit::before{background:linear-gradient(90deg,rgba(7,22,17,.92) 0%,rgba(7,22,17,.8) 40%,rgba(7,22,17,.5) 64%,rgba(7,22,17,.1) 100%),linear-gradient(0deg,rgba(7,22,17,.78),rgba(7,22,17,0) 46%)}
.h-hero h1,.h-hero p,.h-how-label,.h-step h3,.h-step p,.h-vit h2,.h-vit .h-lead,.h-vit .ap-chip,.h-facts small,.h-facts strong{text-shadow:var(--tshadow)}
/* texto principal pleno, sem opacidade reduzida */
.h-hero h1,.h-hero p,.h-step h3,.h-step p,.h-vit h2,.h-vit .h-lead,.h-facts strong,.h-how-label{color:var(--on-img);opacity:1}
.h-hero p{font-weight:500}
/* rótulos pequenos: dourado claro, mais pesado, >=12,5px */
.h-how-label{font-size:.8rem;font-weight:700;letter-spacing:.2em}
.h-facts small{color:var(--gold-lt);font-weight:700;font-size:.8rem;letter-spacing:.16em}
.h-vit .ap-chip{color:var(--on-img);background:rgba(7,22,17,.62);border-color:rgba(242,212,136,.65);font-size:.8rem;font-weight:700;letter-spacing:.14em}
.h-vit .ap-chip b{color:var(--gold-live)}
.h-card .h-tag{font-size:.8rem;font-weight:700;letter-spacing:.14em;background:rgba(7,22,17,.88);-webkit-backdrop-filter:none;backdrop-filter:none}
.h-facts .price strong{color:var(--gold-live);text-shadow:0 2px 10px rgba(0,0,0,.8),0 0 2px rgba(0,0,0,.6)}
/* iOS: sem desfoque caro sobre o canvas/vídeo em movimento */
.home .hdr.solid{-webkit-backdrop-filter:none;backdrop-filter:none;background:rgba(10,30,23,.94)}
.home .sticky{-webkit-backdrop-filter:none;backdrop-filter:none;background:#fff}
@media(max-width:899px){
  .h-hero .seq-shade{background:linear-gradient(0deg,rgba(7,22,17,.88) 0%,rgba(7,22,17,.7) 38%,rgba(7,22,17,.22) 66%,rgba(7,22,17,.4) 100%)}
  .h-vit::before{background:linear-gradient(0deg,rgba(7,22,17,.94) 8%,rgba(7,22,17,.78) 52%,rgba(7,22,17,.42) 100%)}
}
.h-how .seq-shade-b{background:linear-gradient(0deg,rgba(7,22,17,.86) 0%,rgba(7,22,17,.62) 34%,rgba(7,22,17,0) 60%),linear-gradient(180deg,rgba(7,22,17,.82) 0%,rgba(7,22,17,.6) 15%,rgba(7,22,17,0) 34%),linear-gradient(90deg,rgba(7,22,17,.5) 0%,rgba(7,22,17,0) 60%)}
.h-how-label{align-self:flex-start;padding:9px 16px;border-radius:999px;background:rgba(7,22,17,.62)}
