/* LIV — Edição Alívio · indirabrandao.com/live */
@font-face{font-family:'Archivo';font-style:normal;font-weight:100 900;font-stretch:62% 125%;font-display:swap;src:url(../fonts/archivo-latin-wdth-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'EB Garamond';font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/eb-garamond-latin-400-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'EB Garamond';font-style:normal;font-weight:500;font-display:swap;src:url(../fonts/eb-garamond-latin-500-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'EB Garamond';font-style:italic;font-weight:400;font-display:swap;src:url(../fonts/eb-garamond-latin-400-italic.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Archivo';font-style:normal;font-weight:100 900;font-stretch:62% 125%;font-display:swap;src:url(../fonts/archivo-latin-ext-wdth-normal.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'EB Garamond';font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/eb-garamond-latin-ext-400-normal.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'EB Garamond';font-style:normal;font-weight:500;font-display:swap;src:url(../fonts/eb-garamond-latin-ext-500-normal.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'EB Garamond';font-style:italic;font-weight:400;font-display:swap;src:url(../fonts/eb-garamond-latin-ext-400-italic.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
/* ===== Versão 2 — layout de "consultoria": cartões arredondados, pílulas, ícones.
   Só as 4 cores da paleta LIV (sem marrom) e suas transparências. ===== */
:root{
  --navy:#030D2E; --ink:#1C1C1A; --paper:#E5E0D6; --blue:#080A8C;
  --sans:"Archivo",system-ui,-apple-system,"Segoe UI",sans-serif;
  --serif:"EB Garamond",Georgia,serif;
  --tint:rgba(3,13,46,.045);          /* fundo de seção levemente mais frio que o off-white */
  --line:rgba(3,13,46,.12);
  --m:clamp(16px,3vw,48px);
  --r-xl:clamp(8px,.9vw,14px); --r-l:10px; --r-m:8px;   /* cantos discretos: editorial, não SaaS */
  --sec:clamp(72px,8vw,128px);
  --ease:cubic-bezier(.16,1,.3,1);
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:96px;background:var(--navy);color:var(--ink)}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{margin:0;background:var(--navy);color:var(--ink);font-family:var(--sans);font-size:clamp(1rem,.97rem + .15vw,1.0625rem);line-height:1.55;text-rendering:optimizeLegibility}
img{display:block;max-width:100%;height:auto}
picture{display:contents}
h1,h2,h3,p,ul,ol,figure,dl,dd,fieldset{margin:0;padding:0}
ul,ol{list-style:none}
a{color:inherit}
button,input{font:inherit;color:inherit}
:focus-visible{outline:3px solid var(--blue);outline-offset:3px}
.dk :focus-visible{outline-color:var(--paper)}
::selection{background:var(--blue);color:var(--paper)}
.vh{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.hl{color:var(--blue)}
.dk .hl{color:var(--paper);text-decoration:underline;text-decoration-thickness:.08em;text-underline-offset:.14em}

/* Moldura: a página inteira é um grande cartão off-white sobre o marinho */
.page{margin:clamp(8px,1.2vw,16px);border-radius:var(--r-xl);background:var(--paper);overflow:clip}
.in{max-width:1240px;margin-inline:auto;padding-inline:var(--m)}
.sec{padding-block:var(--sec)}
.tint{background:var(--tint)}

.h1{font-weight:700;font-size:clamp(2.75rem,1.4rem + 5vw,5.75rem);line-height:.98;letter-spacing:-0.04em}
.h2{font-weight:700;font-size:clamp(1.875rem,1.2rem + 2.3vw,3.25rem);line-height:1.05;letter-spacing:-0.03em;text-wrap:balance}
.h3{font-weight:700;font-size:clamp(1.125rem,1.02rem + .4vw,1.375rem);line-height:1.2;letter-spacing:-0.01em}
.sub{margin-top:18px;max-width:58ch;font-size:clamp(1.0625rem,1rem + .3vw,1.25rem);line-height:1.55;color:rgba(28,28,26,.82)}
.center{text-align:center}.center .sub{margin-inline:auto}
.eyebrow{display:inline-flex;align-items:center;gap:10px;font-size:.8125rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--blue)}
.eyebrow::before{content:"";width:8px;height:8px;border-radius:50%;background:currentColor}
.dk .eyebrow{color:var(--paper)}

/* Pílulas */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.7em;min-height:52px;padding:.85em 1.6em;border:0;border-radius:999px;background:var(--blue);color:var(--paper);font-weight:700;font-size:.9375rem;letter-spacing:.03em;text-transform:uppercase;text-decoration:none;cursor:pointer;transition:background-color .2s ease,color .2s ease,transform .3s var(--ease)}
.btn:active{transform:scale(.98)}
.btn .arr{display:inline-grid;place-items:center;width:28px;height:28px;margin-right:-.6em;border-radius:50%;background:var(--paper);color:var(--blue);font-size:.875rem;transition:transform .3s var(--ease)}
.btn--ghost{background:transparent;color:var(--paper);box-shadow:inset 0 0 0 1.5px currentColor}
.btn--ghost .arr{background:var(--paper);color:var(--blue)}
.btn--paper{background:var(--paper);color:var(--blue)}
.btn--paper .arr{background:var(--blue);color:var(--paper)}
@media (hover:hover) and (pointer:fine){
  .btn:hover{background:var(--navy)}
  .btn--paper:hover{background:var(--paper);color:var(--navy)}
  .btn--ghost:hover{background:var(--paper);color:var(--blue)}
  .btn:hover .arr{transform:translateX(3px)}
  .card:hover{transform:translateY(-3px)}
}

/* Ícone em quadrado arredondado azul */
.ico{display:inline-grid;place-items:center;flex:none;width:52px;height:52px;border-radius:10px;background:var(--blue);color:var(--paper)}
.ico svg{width:26px;height:26px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.ico.ol{background:rgba(229,224,214,.08);box-shadow:inset 0 0 0 1px rgba(229,224,214,.22)}

.card{background:var(--paper);border:1px solid var(--line);border-radius:var(--r-l);padding:clamp(22px,2.2vw,30px);transition:transform .35s var(--ease)}

/* Entradas: curtas, sem atrasar leitura; conteúdo visível sem JS */
.js .rv{opacity:0;transform:translateY(10px)}
.js .rv.on{opacity:1;transform:none;transition:opacity .45s ease,transform .5s var(--ease);transition-delay:calc(var(--d,0) * 60ms)}
@media (prefers-reduced-motion:reduce){.js .rv{opacity:1;transform:none}*,*::before,*::after{transition:none!important;animation:none!important}}

/* ===== 1. HERO ===== */
.hero{position:relative;background:radial-gradient(70% 90% at 85% 15%,rgba(8,10,140,.16),transparent 60%),radial-gradient(60% 70% at 0% 100%,rgba(3,13,46,.06),transparent 60%),var(--paper)}
.top{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-block:20px}
.top .logo img{width:clamp(140px,12vw,176px)}
.top nav ul{display:flex;gap:clamp(16px,2vw,32px)}
.top nav a{font-size:.8125rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;text-decoration:none;color:var(--navy)}
.top nav a:hover{color:var(--blue)}
.top .btn{min-height:44px;padding:.6em 1.3em;font-size:.8125rem}
.hero-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);align-items:center;gap:clamp(24px,4vw,64px);padding-block:clamp(32px,5vw,72px) clamp(56px,7vw,104px)}
.hero .h1{margin-top:0}
/* LIV monumental: a assinatura da marca continua sendo o maior elemento da página */
.hero .h1 .mon{display:block;font-weight:800;font-size:clamp(7.5rem,2.5rem + 16vw,17.5rem);line-height:.78;letter-spacing:-0.065em;margin-left:-.055em;color:var(--navy)}
.hero .h1 .ed{display:block;margin-top:.35em;font-size:clamp(2rem,1.1rem + 2.8vw,3.75rem);line-height:1;letter-spacing:-0.035em}
.hero .tag{margin-top:22px;max-width:30ch;font-size:clamp(1.125rem,1rem + .5vw,1.5rem);line-height:1.4;color:rgba(28,28,26,.85)}
.when{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:32px}
.when .d{display:flex;align-items:center;min-height:52px;padding:0 22px;border-radius:999px;background:var(--paper);border:1px solid var(--line);font-weight:600;font-size:.9375rem;line-height:1.3}
.when .d svg{display:inline-block;width:18px;height:18px;margin:-3px 8px 0 0;vertical-align:middle;fill:none;stroke:var(--blue);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.where{margin-top:14px;padding-left:22px;font-size:.9375rem;font-weight:500;color:rgba(28,28,26,.78)}
/* Composição geométrica com fotos da comunidade (no lugar dos objetos 3D da referência) */
.geo{position:relative;aspect-ratio:1/1;max-width:560px;justify-self:end;width:100%}
.geo>*{position:absolute}
.geo .g-arc{right:0;top:0;width:58%;aspect-ratio:1/2;border-radius:0 999px 999px 0;background:var(--blue)}
.geo .g-ph1{left:6%;top:20%;width:54%;aspect-ratio:4/5;border-radius:var(--r-l);overflow:hidden;z-index:2}
.geo .g-ph2{right:4%;bottom:4%;width:44%;aspect-ratio:1/1;border-radius:50%;overflow:hidden;z-index:3;box-shadow:0 0 0 8px var(--paper)}
.geo .g-dot{left:0;bottom:8%;width:16%;aspect-ratio:1/1;border-radius:50%;background:radial-gradient(circle at 35% 30%,var(--paper),rgba(3,13,46,.25));z-index:1}
.geo .g-sq{left:0;top:6%;width:14%;aspect-ratio:1/1;border-radius:12px;background:var(--navy);z-index:1}
.geo img{width:100%;height:100%;object-fit:cover}
.js .geo>*{opacity:0;transform:translateY(16px) scale(.98)}
.js .geo.on>*{opacity:1;transform:none;transition:opacity .6s ease,transform .8s var(--ease)}
.js .geo.on .g-ph1{transition-delay:.08s}.js .geo.on .g-ph2{transition-delay:.16s}

/* ===== 2. PERGUNTA + IDENTIFICAÇÃO ===== */
.qh{max-width:24ch;margin-inline:auto}
.idcards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(14px,1.6vw,22px);margin-top:clamp(40px,4.4vw,64px)}
.idcards .card{display:flex;gap:16px;align-items:flex-start}
.idcards .card p{font-size:1.0625rem}
.idcards .card .lead{font-weight:600;font-size:clamp(1.0625rem,1rem + .3vw,1.25rem);line-height:1.45}
.idcards .card .body p+p{margin-top:.8em}
.wide{margin-top:clamp(32px,4vw,56px);border-radius:var(--r-xl);overflow:hidden}
.wide img{width:100%;aspect-ratio:21/9;object-fit:cover;object-position:50% 45%}

/* ===== 2b. NASCEU ===== */
.born{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(24px,4vw,64px);align-items:stretch}
.born .after p{margin-top:18px;font-size:clamp(1.0625rem,1rem + .3vw,1.25rem);max-width:48ch}
.relief{display:flex;flex-direction:column;justify-content:space-between;gap:28px;padding:clamp(28px,3.4vw,52px);border-radius:var(--r-xl);background:var(--navy);color:var(--paper)}
.relief p{font-family:var(--serif);font-size:clamp(1.75rem,1.1rem + 2.2vw,3rem);line-height:1.12;letter-spacing:-0.01em;text-wrap:balance}
.relief em{font-style:italic;padding:0 .12em;border-radius:.2em;background:var(--blue)}
.relief .yr{display:flex;align-items:center;gap:14px;font-weight:700;font-size:.875rem;letter-spacing:.1em}
.relief .yr i{flex:1;height:1px;background:rgba(229,224,214,.35)}

/* ===== 3. PILARES — painel escuro em lista ===== */
.panel{margin-top:clamp(40px,4.4vw,64px);border-radius:var(--r-xl);background:var(--navy);color:var(--paper);overflow:hidden}
.prow{display:grid;grid-template-columns:auto minmax(0,1fr) minmax(0,1.15fr);gap:clamp(16px,2.6vw,40px);align-items:start;padding:clamp(24px,2.8vw,40px) clamp(22px,3vw,48px)}
.prow+.prow{border-top:1px solid rgba(229,224,214,.14)}
.prow .lt{display:grid;place-items:center;width:clamp(56px,5vw,72px);aspect-ratio:1;border-radius:10px;background:var(--blue);font-weight:800;font-size:clamp(1.75rem,1.2rem + 1.2vw,2.5rem);line-height:1}
.prow .h3{font-size:clamp(1.25rem,1.05rem + .7vw,1.75rem)}
.prow .h3 .n{opacity:.6;font-weight:500}
.prow .key{margin-top:10px;font-family:var(--serif);font-size:clamp(1.25rem,1.05rem + .6vw,1.625rem);line-height:1.25}
.prow .body{font-size:1.0625rem;line-height:1.6;color:rgba(229,224,214,.86)}
.prow .body p+p{margin-top:.8em}
.bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px 24px;padding:clamp(20px,2.4vw,30px) clamp(22px,3vw,48px);background:var(--blue)}
.bar p{font-weight:700;font-size:clamp(1.25rem,1rem + .9vw,1.875rem);letter-spacing:-0.015em}

/* ===== 4. CONSTRUÇÃO — etapas numeradas ligadas por uma linha ===== */
.appr{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.6fr);gap:clamp(28px,4vw,72px);align-items:start}
.appr .pre{font-family:var(--serif);font-size:clamp(1.75rem,1.1rem + 2vw,2.75rem);line-height:1.12}
.appr .mini{position:relative;height:160px;margin-top:36px}
.appr .mini span{position:absolute;display:block}
.mini .a{left:0;bottom:0;width:96px;height:96px;border-radius:14px;background:var(--blue)}
.mini .b{left:70px;bottom:40px;width:104px;height:104px;border-radius:50%;overflow:hidden;box-shadow:0 0 0 6px var(--paper)}
.mini .b img{width:100%;height:100%;object-fit:cover}
.mini .c{left:190px;bottom:0;width:56px;height:56px;border-radius:50%;background:radial-gradient(circle at 35% 30%,var(--paper),rgba(3,13,46,.3))}
.steps{position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(16px,2vw,32px);counter-reset:st}
.steps::before{content:"";position:absolute;left:calc(100% / 6);right:calc(100% / 6);top:27px;border-top:1.5px dashed rgba(8,10,140,.45)}
.steps li{position:relative;text-align:center}
.num{position:relative;z-index:1;flex:none;display:inline-grid;place-items:center;width:56px;height:56px;border-radius:50%;background:var(--blue);color:var(--paper);font-weight:800;font-size:1.0625rem;box-shadow:0 0 0 8px var(--paper)}
.steps p{margin-top:20px;font-weight:700;font-size:clamp(1.125rem,1rem + .5vw,1.5rem);line-height:1.2;letter-spacing:-0.01em;text-wrap:balance}

/* ===== 5. RESULTADOS ===== */
.res-head{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:clamp(20px,4vw,64px);align-items:end}
.res-head .sub{margin-top:0}
.cap{margin-top:clamp(40px,4.4vw,64px);font-weight:700}
.res{position:relative;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(14px,1.6vw,22px);margin-top:20px}
.res .card{display:flex;flex-direction:column;gap:14px}
.res .num{width:52px;height:52px;box-shadow:none}
.res b{font-size:clamp(1.25rem,1.05rem + .7vw,1.625rem);line-height:1.12;letter-spacing:-0.015em}
.res span:last-child{font-size:1.0625rem;line-height:1.5;color:rgba(28,28,26,.85)}
.closing{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);margin-top:clamp(20px,2vw,28px);border-radius:var(--r-xl);overflow:hidden;background:var(--navy);color:var(--paper)}
.closing img{width:100%;height:100%;aspect-ratio:4/3;object-fit:cover}
.closing p{align-self:center;padding:clamp(28px,4vw,64px);font-weight:600;font-size:clamp(1.375rem,1rem + 1.2vw,2.125rem);line-height:1.22;letter-spacing:-0.015em}

/* ===== 6. BENEFÍCIOS — faixa escura ===== */
.perks{background:var(--navy);color:var(--paper);border-radius:var(--r-xl);margin-inline:clamp(8px,1.2vw,16px);padding-block:var(--sec)}
.perks .sub{color:rgba(229,224,214,.85)}
.strip{display:grid;grid-template-columns:1.3fr 1fr 1fr 1.3fr;gap:12px;margin-top:clamp(40px,4.4vw,64px)}
.strip figure{border-radius:var(--r-l);overflow:hidden}
.strip img{width:100%;height:clamp(200px,22vw,300px);object-fit:cover}
.strip figure:nth-child(even){margin-top:clamp(20px,3vw,48px)}
.pk{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(14px,1.6vw,22px);margin-top:clamp(28px,3vw,44px)}
.pk li{display:flex;flex-direction:column;gap:14px;padding:clamp(22px,2.2vw,30px);border-radius:var(--r-l);background:rgba(229,224,214,.06);border:1px solid rgba(229,224,214,.14)}
.pk .h3{font-size:clamp(1.125rem,1.02rem + .45vw,1.375rem)}
.pk p{font-size:1rem;line-height:1.55;color:rgba(229,224,214,.86)}

/* ===== 7. COMUNIDADE ===== */
.tog{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(28px,4vw,72px);align-items:center}
.photos{position:relative;aspect-ratio:1/1}
.photos figure{position:absolute;overflow:hidden}
.photos img{width:100%;height:100%;object-fit:cover}
.photos .p1{left:0;top:0;width:76%;aspect-ratio:5/4;border-radius:var(--r-xl)}
.photos .p2{right:0;bottom:0;width:58%;aspect-ratio:3/2;border-radius:var(--r-xl);box-shadow:0 0 0 8px var(--paper)}
.photos .p3{left:6%;bottom:2%;width:30%;aspect-ratio:1/1;border-radius:50%;box-shadow:0 0 0 8px var(--paper)}
.tog .body{margin-top:20px}
.tog .body p{font-size:clamp(1.0625rem,1rem + .3vw,1.25rem)}
.tog .body p+p{margin-top:.8em}
.invite{margin-top:28px;padding:clamp(24px,3vw,40px);border-radius:var(--r-xl);background:var(--blue);color:var(--paper)}
.invite .lead{font-family:var(--serif);font-size:clamp(1.5rem,1.1rem + 1.2vw,2.125rem);line-height:1.18}
.invite .btn{margin-top:24px;width:100%;justify-content:space-between;min-height:60px;font-size:1rem}
.invite .duo{margin-top:14px;font-size:.9375rem}

/* ===== 8. INGRESSOS ===== */
.opts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(14px,1.8vw,24px);max-width:1040px;margin:clamp(40px,4.4vw,64px) auto 0}
.opt{display:flex;flex-direction:column;padding:clamp(26px,3vw,44px);border-radius:var(--r-xl);background:var(--paper);border:1px solid var(--line)}
.opt.duo2{background:var(--navy);color:var(--paper);border-color:var(--navy)}
.opt .h3{font-size:.9375rem;letter-spacing:.08em}
.price{margin-top:14px;font-weight:800;font-size:clamp(3.5rem,2rem + 4.4vw,6rem);line-height:1;letter-spacing:-0.045em;color:var(--blue)}
.duo2 .price{color:var(--paper)}
.unit{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:14px}
.unit b{font-size:clamp(1.25rem,1.05rem + .7vw,1.625rem);letter-spacing:-0.015em}
.pill{display:inline-block;padding:6px 12px;border-radius:999px;background:var(--blue);color:var(--paper);font-weight:700;font-size:.8125rem;letter-spacing:.02em}
.duo2 .pill{background:var(--paper);color:var(--blue)}
.tot{margin-top:10px;font-size:.9375rem;opacity:.85}
.opt .body{flex:1;margin-top:22px;padding-top:22px;border-top:1px solid var(--line);font-size:1.0625rem}
.duo2 .body{border-color:rgba(229,224,214,.2)}
.opt .body p+p{margin-top:.8em}
.opt .btn{margin-top:28px;min-height:60px;width:100%;justify-content:space-between;font-size:.9375rem}
.duo2 .btn{background:var(--paper);color:var(--blue)}.duo2 .btn .arr{background:var(--blue);color:var(--paper)}
.tickets .note{max-width:70ch;margin:24px auto 0;text-align:center;font-size:.9375rem;color:rgba(28,28,26,.8)}

/* ===== 9. FORMULÁRIO (mesma marcação/validação da versão 1, visual claro) ===== */
.signup{padding-block:var(--sec)}
.signup .grid{max-width:1240px;margin-inline:auto;padding-inline:var(--m);display:grid;grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:clamp(24px,3.4vw,56px);align-items:start}
.signup .head{position:sticky;top:96px}
.signup .head .h2{font-size:clamp(1.875rem,1.2rem + 2.3vw,3.25rem)}
.signup .head .meta{margin-top:12px;font-weight:600;color:var(--blue)}
.signup .head figure{margin-top:28px;border-radius:var(--r-xl);overflow:hidden}
.signup .head img{width:100%;aspect-ratio:4/5;max-height:56svh;object-fit:cover}
.signup form{padding:clamp(20px,3vw,44px);border-radius:var(--r-xl);background:var(--paper);border:1px solid var(--line)}
.ruled{position:relative}
.notice{margin-bottom:28px;padding:16px 20px;border-radius:var(--r-m);border:1.5px dashed var(--blue);color:var(--navy);font-weight:500}
.notice[hidden]{display:none}
.errsum{margin-bottom:28px;padding:16px 20px;border-radius:var(--r-m);background:var(--navy);color:var(--paper)}
.errsum[hidden]{display:none}
.errsum p{font-weight:700}.errsum ul{margin-top:8px;display:grid;gap:4px}
.errsum a{color:var(--paper);font-weight:600;text-underline-offset:3px}
.steps-bar{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:28px;counter-reset:sb}
.steps-bar li{counter-increment:sb;display:flex;align-items:center;gap:10px;padding:10px 14px;border-radius:999px;background:var(--tint);font-size:.875rem;font-weight:700;color:rgba(28,28,26,.6);transition:background-color .25s ease,color .25s ease}
.steps-bar li::before{content:counter(sb);display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:rgba(3,13,46,.12);font-size:.75rem}
.steps-bar li.on{background:var(--blue);color:var(--paper)}
.steps-bar li.on::before{background:var(--paper);color:var(--blue)}
.stp{display:flex;align-items:center;gap:12px;margin:0 0 12px;font-size:.875rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--blue)}
.stp span{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:var(--blue);color:var(--paper);letter-spacing:0}
.fs{border:0;min-width:0}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.fs.st{padding:clamp(18px,2.4vw,30px);border-radius:var(--r-l);background:var(--tint)}
.fs.st+.stp{margin-top:32px}
.fs legend{padding:0;font-weight:700;font-size:clamp(1.25rem,1.1rem + .5vw,1.5rem);letter-spacing:-0.01em}
.field{margin-top:20px}
.field:first-of-type{margin-top:4px}
.field label{display:block;margin-bottom:8px;font-weight:600;font-size:1.0625rem}
.field input[type=text],.field input[type=tel]{width:100%;min-height:56px;padding:14px 18px;border:1.5px solid rgba(3,13,46,.28);border-radius:var(--r-m);background:var(--paper);color:var(--ink);font-size:1.0625rem;transition:border-color .2s ease,box-shadow .2s ease}
.field input::placeholder{color:rgba(28,28,26,.55)}
.field input:hover{border-color:var(--navy)}
.field input:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 4px rgba(8,10,140,.18)}
.field input[aria-invalid=true]{border-width:3px;border-color:var(--blue);background:rgba(8,10,140,.05)}
.err{display:none;align-items:center;gap:10px;margin-top:10px;font-size:.9375rem;font-weight:700;color:var(--blue)}
.err::before{content:"!";flex:none;display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:var(--blue);color:var(--paper);font-size:.8125rem;font-weight:800}
.field.bad .err{display:flex}
.bad-wrap{margin-top:10px}
.q2,.fs .q{margin-top:16px;font-weight:500;font-size:1.0625rem;line-height:1.45}
.counter{display:inline-block;margin-top:12px;padding:5px 12px;border-radius:999px;background:rgba(3,13,46,.08);font-weight:700;font-size:.875rem;font-variant-numeric:tabular-nums}
.counter.full{background:var(--blue);color:var(--paper)}
.chips{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,250px),1fr));gap:10px;margin-top:18px}
.chip{position:relative}
.chip input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer}
.chip span{display:flex;align-items:center;gap:12px;height:100%;min-height:58px;padding:12px 18px;border:1.5px solid rgba(3,13,46,.22);border-radius:var(--r-m);background:var(--paper);font-size:1rem;line-height:1.3;transition:background-color .2s ease,color .2s ease,border-color .2s ease}
.chip span::before{content:"";flex:none;width:18px;height:18px;border-radius:6px;border:1.5px solid currentColor;transition:background-color .2s ease}
.chip:hover span{border-color:var(--blue)}
.chip input:checked+span{background:var(--blue);border-color:var(--blue);color:var(--paper)}
.chip input:checked+span::before{background:var(--paper);border-color:var(--paper)}
.chip input:focus-visible+span{outline:3px solid var(--blue);outline-offset:3px}
.chip input:disabled+span{opacity:.45;border-style:dashed;cursor:not-allowed}
.chips.bad .chip span,.tix.bad .chip span{border-width:2.5px;border-color:var(--blue)}
.other{margin-top:16px}
.js .other[hidden]{display:none}
.tix{display:grid;gap:10px;margin-top:16px}
.tix .chip span{min-height:64px;font-size:1.0625rem;font-weight:600}
.friend-wrap{display:grid;grid-template-rows:0fr;opacity:0;transition:grid-template-rows .4s ease,opacity .3s ease}
.friend-wrap.open{grid-template-rows:1fr;opacity:1}
.friend-wrap>div{overflow:hidden;min-height:0}
.friend{margin-top:20px;padding:20px;border-radius:var(--r-m);background:var(--paper);border:1px solid var(--line)}
.friend .lbl-g{font-weight:700}
.friend .hint{margin-top:2px;font-size:.9375rem;color:rgba(28,28,26,.75)}
.summary{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:12px 24px;margin-top:28px;padding:clamp(18px,2.4vw,28px);border-radius:var(--r-l);background:var(--navy);color:var(--paper)}
.summary .k{font-size:.875rem;font-weight:500;opacity:.85}
.summary .t{display:block;margin-top:4px;font-size:clamp(1.125rem,1rem + .5vw,1.5rem);line-height:1.2}
.summary .u{display:block;margin-top:2px;font-weight:500}.summary .u:empty{display:none}
.sum-r{text-align:right}
.summary .v{display:block;font-weight:800;font-size:clamp(2rem,1.4rem + 2vw,3rem);line-height:1;letter-spacing:-0.04em}
.next{margin-top:12px;font-size:.9375rem}
.submit{margin-top:22px;display:flex;flex-wrap:wrap;align-items:center;gap:16px}
.submit .btn{min-height:60px;font-size:1rem}
.signup .btn--paper{background:var(--blue);color:var(--paper)}
.signup .btn--paper .arr{background:var(--paper);color:var(--blue)}
.btn[aria-busy=true],.btn:disabled{pointer-events:none;opacity:.7}
.form-msg{font-weight:600;max-width:52ch}.form-msg:empty{display:none}
.done{display:none}.sent .done{display:block}
.sent .fs,.sent .submit,.sent .stp,.sent .steps-bar{display:none}

/* ===== 10. INFORMAÇÕES ===== */
.info-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(12px,1.4vw,20px);margin-top:clamp(36px,4vw,56px)}
.info-grid .card{display:flex;gap:16px;align-items:flex-start}
.info-grid dt{font-size:.875rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--blue)}
.info-grid dd{margin-top:6px;font-weight:700;font-size:clamp(1.25rem,1.05rem + .7vw,1.625rem);line-height:1.2;letter-spacing:-0.015em}
.info-grid .wide2{grid-column:span 2}
.info-grid .small dd{font-weight:500;font-size:1.0625rem;line-height:1.45;letter-spacing:0}

/* ===== 10b. DRESS CODE ===== */
.dress-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:20px}
.dress-head .lead{margin-top:12px;font-family:var(--serif);font-size:clamp(1.5rem,1.1rem + 1.4vw,2.375rem);line-height:1.15}
.looks-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-top:clamp(32px,3.6vw,52px)}
.looks-grid figure{border-radius:var(--r-l);overflow:hidden}
.looks-grid img{width:100%;aspect-ratio:2/3;object-fit:cover}
.dress-link{display:inline-flex;align-items:center;gap:14px;min-height:56px;padding:10px 12px 10px 24px;border-radius:999px;background:var(--paper);border:1.5px solid var(--blue);color:var(--blue);font-weight:700;text-decoration:none;transition:background-color .2s ease,color .2s ease}
.dress-link .arr{display:inline-grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--blue);color:var(--paper)}
.dress-link:hover{background:var(--blue);color:var(--paper)}
.dress-link:hover .arr{background:var(--paper);color:var(--blue)}

/* ===== 11. FECHAMENTO — painel azul ===== */
.close{margin:0 clamp(8px,1.2vw,16px) clamp(8px,1.2vw,16px);border-radius:var(--r-xl);background:radial-gradient(80% 120% at 100% 0%,rgba(8,10,140,.9),transparent 60%),var(--navy);color:var(--paper)}
.close .in{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:clamp(28px,4vw,72px);padding-block:clamp(56px,7vw,104px)}
.close .body p{margin-top:16px;font-size:clamp(1.0625rem,1rem + .3vw,1.25rem);color:rgba(229,224,214,.88)}
.close .sign{margin-top:28px;padding-top:20px;border-top:1px solid rgba(229,224,214,.22)}
.close .sign .nm{font-weight:700}
.close .sign .lead{margin-top:4px;font-family:var(--serif);font-size:clamp(1.375rem,1.1rem + 1vw,2rem)}
.cta-box{align-self:center;display:flex;flex-direction:column;gap:22px;padding:clamp(22px,2.6vw,36px);border-radius:var(--r-xl);background:rgba(229,224,214,.07);border:1px solid rgba(229,224,214,.16)}
.cta-box .btn{width:100%;min-height:64px;justify-content:space-between;font-size:1rem}
.facts{display:grid;gap:14px}
.facts li{display:flex;align-items:center;gap:14px;font-weight:600;line-height:1.35}
.facts .ico{width:44px;height:44px;border-radius:50%}
.facts .ico svg{width:22px;height:22px}

/* ===== 12. RODAPÉ ===== */
.foot{color:var(--paper);padding:clamp(48px,6vw,88px) 0 clamp(24px,3vw,40px)}
.foot .essence .h2{font-size:clamp(2rem,1.2rem + 3vw,4rem)}
.foot .essence p:not(.h2){margin-top:12px;font-family:var(--serif);font-size:clamp(1.25rem,1.1rem + .6vw,1.75rem)}
.foot .cols{display:grid;grid-template-columns:1.2fr 1fr 1fr 1fr;gap:28px;margin-top:clamp(40px,5vw,72px);padding-top:28px;border-top:1px solid rgba(229,224,214,.2);font-size:.9375rem}
.foot .k{font-weight:700;margin-bottom:8px}
.foot .brand img{width:170px}
.foot nav ul{display:grid;gap:6px}
.foot nav a{font-weight:600;text-decoration:none}
.foot nav a:hover{text-decoration:underline}

/* ===== Barra fixa (pílula flutuante) ===== */
.sticky{position:fixed;z-index:50;left:50%;top:12px;width:min(calc(100% - 24px),980px);display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:16px;padding:8px 8px 8px 22px;border-radius:10px;background:rgba(3,13,46,.96);color:var(--paper);box-shadow:0 0 0 1px rgba(229,224,214,.12);transform:translate(-50%,-140%);opacity:0;visibility:hidden;transition:transform .45s var(--ease),opacity .3s ease,visibility 0s linear .45s}
.sticky[hidden]{display:none}
.sticky.show{transform:translate(-50%,0);opacity:1;visibility:visible;transition:transform .45s var(--ease),opacity .3s ease,visibility 0s}
.s-logo{font-weight:800;font-size:1.5rem;letter-spacing:-0.05em;text-decoration:none}
.s-mid{display:flex;flex-wrap:wrap;gap:4px 14px;align-items:center;font-size:.875rem;font-weight:600}
.s-ed{font-weight:800;text-transform:uppercase;letter-spacing:.06em}
.s-info{opacity:.88}
.sq{display:inline-block;width:4px;height:4px;margin:0 .6em .18em;border-radius:50%;background:currentColor;vertical-align:middle}
.s-cta{min-height:44px;padding:.55em 1.2em;font-size:.8125rem}
.s-cta .arr{width:24px;height:24px}

/* ===== Tablet ===== */
@media (max-width:1024px){
  .top nav{display:none}
  .hero-grid,.born,.appr,.tog,.close .in,.res-head{grid-template-columns:1fr}
  .geo{justify-self:center;max-width:520px}
  .res{grid-template-columns:repeat(2,minmax(0,1fr))}
  .pk{grid-template-columns:repeat(2,minmax(0,1fr))}
  .signup .grid{grid-template-columns:1fr}
  .signup .head{position:static}
  .signup .head figure{display:none}
  .looks-grid{grid-template-columns:repeat(5,minmax(0,1fr))}
  .s-info{display:none}
}
/* ===== Celular ===== */
@media (max-width:640px){
  html{scroll-padding-top:80px}
  .page{margin:6px;border-radius:10px}
  .top .logo img{width:128px}
  .hero .h1 .mon{font-size:46vw}
  .top .btn{min-height:40px;padding:.5em 1em;font-size:.75rem}
  .when .d{width:100%;border-radius:var(--r-l);padding:12px 16px}
  .when .btn{width:100%;justify-content:space-between}
  .where{padding-left:4px}
  .idcards{grid-template-columns:1fr}
  .wide img{aspect-ratio:4/3}
  .prow{grid-template-columns:auto minmax(0,1fr);row-gap:14px}
  .prow .body{grid-column:1 / -1}
  .bar .btn{width:100%;justify-content:space-between}
  .steps{grid-template-columns:1fr;gap:28px}
  .steps::before{left:27px;right:auto;top:28px;bottom:28px;border-top:0;border-left:1.5px dashed rgba(8,10,140,.45)}
  .steps li{display:flex;align-items:center;gap:18px;text-align:left}
  .steps p{margin-top:0}
  .appr .mini{display:none}
  .res,.pk{grid-template-columns:1fr}
  .closing{grid-template-columns:1fr}
  .strip{grid-template-columns:1fr 1fr}
  .strip figure:nth-child(even){margin-top:24px}
  .strip img{height:180px}
  .perks{margin-inline:6px}
  .opts{grid-template-columns:1fr}
  .info-grid{grid-template-columns:1fr}
  .info-grid .wide2{grid-column:auto}
  .looks-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;margin-inline:calc(-1 * var(--m));padding-inline:var(--m);scroll-padding-inline:var(--m);scrollbar-width:none}
  .looks-grid::-webkit-scrollbar{display:none}
  .looks-grid figure{flex:0 0 62vw;scroll-snap-align:start}
  .dress-link{width:100%;justify-content:space-between}
  .signup form{padding:14px}
  .fs.st{padding:16px 12px}
  .steps-bar li{padding:8px 10px;font-size:.75rem;gap:6px}
  .close{margin-inline:6px}
  .foot .cols{grid-template-columns:1fr 1fr}
  .foot .brand,.foot nav{grid-column:1 / -1}
  .sticky{top:8px;padding:6px 6px 6px 16px;gap:10px}
  .s-mid{font-size:.75rem}
}

[data-d="1"]{--d:1}[data-d="2"]{--d:2}[data-d="3"]{--d:3}[data-d="4"]{--d:4}[data-d="5"]{--d:5}
