/* ==========================================================================
   Gradus Lab · site institucional (one-page)
   Sistema gráfico: degraus de papel recortado (grão, borda irregular, sombra)
   ========================================================================== */

/* ---------- Fontes hospedadas no próprio site (woff2, só os pesos usados) ---------- */
@font-face{font-family:'Bricolage Grotesque';font-style:normal;font-weight:600 700;font-display:swap;src:url("../fonts/bricolage-grotesque-600-700-latin.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:'Bricolage Grotesque';font-style:normal;font-weight:600 700;font-display:swap;src:url("../fonts/bricolage-grotesque-600-700-latin-ext.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:'Fraunces';font-style:italic;font-weight:500;font-display:swap;src:url("../fonts/fraunces-italic-500-latin.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:'Fraunces';font-style:italic;font-weight:500;font-display:swap;src:url("../fonts/fraunces-italic-500-latin-ext.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:'Instrument Sans';font-style:normal;font-weight:400 600;font-display:swap;src:url("../fonts/instrument-sans-400-600-latin.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:'Instrument Sans';font-style:normal;font-weight:400 600;font-display:swap;src:url("../fonts/instrument-sans-400-600-latin-ext.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}

:root{
  color-scheme:light;
  --azul:#1E3A5F; --azul-2:#2C4E7A; --azul-esc:#162C49; --azul-3:#3B5F8C;
  --coral:#D9774B; --coral-esc:#A8532C; --coral-profundo:#7E3A1A; --coral-claro:#F3D5C4; --coral-suave:#F8E9E0;
  --salvia:#9DB4A0; --salvia-clara:#D6E0D6; --salvia-suave:#EAF0EA; --salvia-esc:#6F8A73;
  --creme:#FAF6EF; --papel:#F1EADC; --papel-esc:#E4DAC6;
  --texto:#22262E; --texto-2:#4A5160; --linha:rgba(30,58,95,.14);
  --fd:'Bricolage Grotesque','Helvetica Neue',Arial,sans-serif;
  --fs:'Fraunces',Georgia,'Times New Roman',serif;
  --fb:'Instrument Sans','Helvetica Neue',Arial,sans-serif;
  --nav-h:72px;
  --gutter:clamp(20px,4.5vw,80px);
  /* Escala de espaçamento vertical, usada entre blocos e caixas auxiliares */
  --esp-1:clamp(12px,1.2vw,18px);
  --esp-2:clamp(20px,2.2vw,32px);
  --esp-3:clamp(30px,3.4vw,48px);
  /* Altura única da transição em degrau */
  --sep-h:clamp(44px,6vw,92px);
  /* Tamanhos de texto fluidos */
  --txt-corpo:clamp(16px,1.15vw,18px);
  --txt-apoio:clamp(14.5px,1vw,16px);
  --txt-nota:clamp(13px,.85vw,14.5px);
  --max:1312px;
  --ease:cubic-bezier(.2,.7,.2,1);
  --grain:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='220'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 0.35 0 0 0 0 0.28 0 0 0 0 0.2 0 0 0 0.55 0'/%3E%3C/filter%3E%3Crect width='220' height='220' filter='url(%23n)'/%3E%3C/svg%3E");
}
@media (max-width:760px){:root{--nav-h:64px}}

*{box-sizing:border-box}
/* Garante que [hidden] esconda também elementos com display próprio (links do blog) */
[hidden]{display:none !important}
html{scroll-behavior:smooth;scroll-padding-top:calc(var(--nav-h) + 8px)}
body{margin:0;background:var(--creme);color:var(--texto);font-family:var(--fb);font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased;overflow-x:clip}
a{color:inherit;text-decoration:none}
img,svg{max-width:100%}
button{font:inherit;color:inherit}
:focus-visible{outline:3px solid var(--coral);outline-offset:3px}
.skip{position:absolute;left:16px;top:-60px;z-index:200;background:var(--azul);color:var(--creme);padding:10px 14px;border-radius:4px}
.skip:focus{top:12px}

.wrap{max-width:var(--max);margin-inline:auto;padding-inline:var(--gutter)}
section{position:relative;scroll-margin-top:var(--nav-h)}
.sec{padding-block:clamp(64px,9vw,120px)}

/* Fundos de seção (nunca dois iguais em sequência) */
.bg-creme{background:var(--creme)}
.bg-papel{background:var(--papel)}
.bg-azul{background:var(--azul);color:var(--creme)}
.bg-salvia{background:var(--salvia)}
.bg-salvia-clara{background:var(--salvia-clara)}
.bg-salvia-suave{background:var(--salvia-suave)}
.bg-coral-claro{background:var(--coral-claro)}

/* ---------- Tipografia ---------- */
h1,h2,h3,h4{margin:0;font-family:var(--fd);letter-spacing:-.02em;color:var(--azul)}
.t-h1,.t-h2,.t-giant,.final h2{text-wrap:balance}
.t-h1{font-size:clamp(40px,5.2vw,78px);line-height:1.02;font-weight:700;letter-spacing:-.025em}
.t-h2{font-size:clamp(32px,4.2vw,60px);line-height:1.05;font-weight:700;letter-spacing:-.025em}
.t-h3{font-size:clamp(22px,2vw,28px);line-height:1.15;font-weight:700}
.t-giant{font-size:clamp(30px,4.6vw,66px);line-height:1.08;font-weight:700;letter-spacing:-.025em}
em.d{font-family:var(--fs);font-style:italic;font-weight:500;font-size:1.06em;letter-spacing:-.01em;color:var(--coral-esc)}
.bg-azul h1,.bg-azul h2,.bg-azul h3{color:var(--creme)}
.bg-azul em.d{color:var(--coral)}
.eyebrow{display:inline-flex;align-items:center;gap:10px;margin:0 0 22px;font:600 13px/1.2 var(--fb);letter-spacing:.09em;text-transform:uppercase;color:var(--azul)}
.eyebrow i{flex:none;display:inline-block;width:18px;height:14px;background:
  linear-gradient(var(--coral),var(--coral)) 12px 0/6px 14px no-repeat,
  linear-gradient(var(--azul),var(--azul)) 6px 5px/6px 9px no-repeat,
  linear-gradient(var(--azul),var(--azul)) 0 10px/6px 4px no-repeat}
.bg-azul .eyebrow{color:var(--salvia-clara)}
.bg-azul .eyebrow i{background:
  linear-gradient(var(--coral),var(--coral)) 12px 0/6px 14px no-repeat,
  linear-gradient(var(--salvia-clara),var(--salvia-clara)) 6px 5px/6px 9px no-repeat,
  linear-gradient(var(--salvia-clara),var(--salvia-clara)) 0 10px/6px 4px no-repeat}
.lead{margin:24px 0 0;font-size:clamp(17px,1.25vw,19px);line-height:1.55;color:var(--texto-2);max-width:52ch}
.bg-azul .lead,.bg-azul p{color:rgba(250,246,239,.84)}
p{margin:0}
.txt{max-width:62ch;color:var(--texto-2);font-size:17px;line-height:1.6}
.txt + .txt{margin-top:14px}
h1 + .txt,h2 + .txt,h3 + .txt{margin-top:24px}
.bg-azul .txt{color:rgba(250,246,239,.84)}
.nota{font-size:13px;color:var(--texto-2);line-height:1.4}
.ph{color:var(--coral-esc);font-weight:500}
.bg-azul .ph{color:var(--coral-claro)}
.cta{display:flex;flex-wrap:wrap;align-items:center;gap:22px;margin-top:34px}

/* ---------- Caixas auxiliares ----------
   Todas ocupam a largura do contêiner e o texto preenche a largura útil da caixa. */
.caixa{width:100%;max-width:none}
.caixa > *,.caixa p{max-width:none}

/* ---------- Papel recortado ---------- */
.paper{position:relative;isolation:isolate;background:transparent}
.paper::before{content:"";position:absolute;inset:0;z-index:-1;background:var(--bg,var(--papel));border-radius:inherit;filter:url(#rough);box-shadow:0 14px 26px -12px rgba(22,44,73,.35),0 2px 4px rgba(22,44,73,.12),inset 0 1px 0 rgba(255,255,255,.28)}
.paper::after{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background-image:var(--grain);background-size:220px 220px;opacity:.28;mix-blend-mode:multiply;border-radius:inherit}
.paper > *{position:relative;z-index:1}
.paper.flat::before{box-shadow:0 1px 2px rgba(22,44,73,.08)}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:15px 24px;border:0;border-radius:6px;font:600 15px/1 var(--fd);color:var(--texto);--bg:var(--coral);letter-spacing:.005em;cursor:pointer;transition:transform .25s ease;white-space:nowrap}
.btn:hover{transform:translateY(-2px)}
.btn.sm{padding:11px 16px;font-size:14px}
.btn.ghost{--bg:var(--papel);color:var(--azul)}
.link{display:inline-flex;align-items:center;gap:8px;font:600 15px/1 var(--fd);color:var(--azul);border-bottom:2px solid var(--salvia);padding-bottom:4px;background:none;border-top:0;border-left:0;border-right:0;cursor:pointer}
.bg-azul .link{color:var(--creme);border-color:var(--coral)}
.tag{display:inline-block;padding:6px 10px;border-radius:3px;font:600 12px/1 var(--fb);letter-spacing:.06em;text-transform:uppercase}
.tag.coral{--bg:var(--coral);color:var(--texto)}
.tag.salvia{--bg:var(--salvia-clara);color:var(--azul)}
.tag.papel{--bg:var(--papel);color:var(--azul)}

/* Fotos: impressas em papel, com grão, borda irregular, sombra de colagem e inclinação própria */
.foto{margin:0;padding:10px 10px 14px;border-radius:2px;--bg:var(--creme);rotate:var(--rot,0deg)}
.foto::after{opacity:.16}
.foto img{display:block;width:100%;height:auto;border-radius:1px}

/* Transição em degrau entre seções */
/* A transição se sobrepõe ao fim da seção anterior: as seções se encontram direto, sem faixa da cor anterior */
.sep{position:relative;height:var(--sep-h);margin-top:calc(-1 * var(--sep-h));background:var(--para);overflow:hidden;z-index:1}
/* Quem vem antes de uma transição ganha a folga equivalente, para nada ficar coberto */
main > *:has(+ .sep){padding-bottom:calc(var(--esp-3) + var(--sep-h))}
.sep i{position:absolute;inset:0;display:block;filter:url(#rough)}
.sep i::before{content:"";position:absolute;inset:-4px 0 0 0;background:var(--de);
  clip-path:polygon(0 0,100% 0,100% 16%,80% 16%,80% 37%,60% 37%,60% 58%,40% 58%,40% 79%,20% 79%,20% 100%,0 100%)}
.sep.sobe i::before{clip-path:polygon(0 0,100% 0,100% 100%,80% 100%,80% 79%,60% 79%,60% 58%,40% 58%,40% 37%,20% 37%,20% 16%,0 16%)}
.sep.fino i::before{clip-path:polygon(0 0,100% 0,100% 10%,87.5% 10%,87.5% 25%,75% 25%,75% 40%,62.5% 40%,62.5% 55%,50% 55%,50% 70%,37.5% 70%,37.5% 85%,25% 85%,25% 100%,0 100%)}

/* ---------- Movimento ---------- */
@keyframes rise{from{opacity:0;transform:translateY(46px)}to{opacity:1;transform:none}}
@keyframes riseKeep{from{opacity:0;translate:0 46px}to{opacity:1;translate:0 0}}
@keyframes fadeUp{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
@keyframes lay{from{opacity:0;transform:translateY(-22px) rotate(-2.5deg)}to{opacity:1;transform:none}}
@keyframes pousa{from{transform:translateY(-14px)}to{transform:none}}
.anim{animation:fadeUp .8s var(--ease) both;animation-delay:calc(var(--d,0)*.12s + .2s)}
.js .rv{opacity:0;transform:translateY(20px);transition:opacity .7s var(--ease),transform .7s var(--ease);transition-delay:calc(var(--d,0)*.1s)}
.js .rv.is-in{opacity:1;transform:none}

/* ==========================================================================
   Menu fixo
   ========================================================================== */
.topo{position:fixed;top:0;left:0;right:0;z-index:100;padding-top:env(safe-area-inset-top,0px);background:rgba(250,246,239,0);transition:background .35s ease,box-shadow .35s ease}
.topo.is-scrolled{background:rgba(250,246,239,.86);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);box-shadow:0 1px 0 var(--linha)}
.topo-in{max-width:var(--max);margin-inline:auto;padding-inline:var(--gutter);height:var(--nav-h);display:flex;align-items:center;justify-content:space-between;gap:24px;transition:height .3s ease}
.topo.is-scrolled .topo-in{height:calc(var(--nav-h) - 10px)}
.logo{display:inline-flex;align-items:center;gap:10px;font:700 19px/1 var(--fd);letter-spacing:-.01em;color:var(--azul);white-space:nowrap}
.logo svg{width:22px;height:22px;display:block;flex:none}
.menu{display:flex;align-items:center;gap:30px}
.menu-links{display:flex;gap:28px;margin:0;padding:0;list-style:none;font:500 15px var(--fb);color:var(--texto-2)}
.menu-links a{position:relative;padding:6px 0;transition:color .2s;white-space:nowrap}
@media (min-width:901px) and (max-width:1180px){.menu{gap:20px}.menu-links{gap:17px;font-size:14.5px}}
.menu-links a::after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--coral);transform:scaleX(0);transform-origin:left;transition:transform .25s var(--ease)}
.menu-links a:hover{color:var(--azul)}
.menu-links a[aria-current="true"]{color:var(--azul)}
.menu-links a[aria-current="true"]::after{transform:scaleX(1)}
.menu-progress{display:none}
.burger{display:none;width:44px;height:44px;border:0;background:none;cursor:pointer;border-radius:6px;padding:0;place-items:center}
.burger span{display:block;width:22px;height:2px;background:var(--azul);margin:5px auto;transition:transform .3s,opacity .3s}
.burger[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.burger[aria-expanded="true"] span:nth-child(2){opacity:0}
.burger[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

@media (max-width:900px){
  .burger{display:grid}
  .menu{position:fixed;left:0;right:0;top:calc(var(--nav-h) + env(safe-area-inset-top,0px));bottom:0;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:0;padding:12px var(--gutter) 40px;background:var(--creme);border-top:1px solid var(--linha);overflow:auto;
    transform:translateY(-8px);opacity:0;visibility:hidden;transition:opacity .25s ease,transform .25s ease,visibility 0s .25s}
  .topo.is-open .menu{transform:none;opacity:1;visibility:visible;transition-delay:0s}
  .topo.is-open{background:var(--creme)}
  .menu-links{flex-direction:column;gap:0;font-size:20px;font-family:var(--fd);font-weight:600;color:var(--azul)}
  .menu-links li{border-bottom:1px solid var(--linha)}
  .menu-links a{display:block;padding:16px 0}
  .menu-links a::after{display:none}
  .menu-links a[aria-current="true"]{color:var(--coral-esc)}
  .menu .btn{margin-top:22px;align-self:flex-start}
  .menu-progress{display:flex;align-items:center;gap:14px;margin-top:22px;font:500 13px var(--fb);color:var(--texto-2)}
}
body.menu-aberto{overflow:hidden}

/* Indicador de progresso: mini-escada de 4 degraus */
.progresso{position:fixed;right:10px;top:50%;transform:translateY(-50%);z-index:90;display:flex;flex-direction:column;gap:6px;opacity:0;transition:opacity .4s}
.progresso.is-on{opacity:1}
.pstep{position:relative;width:18px;height:12px;border:0;padding:0;cursor:pointer;background:var(--papel-esc);border-radius:2px;transition:background .3s,transform .3s;margin-left:calc(var(--i)*4px);box-shadow:0 2px 4px rgba(22,44,73,.15)}
.pstep.reached{background:var(--azul)}
.pstep[aria-current="true"]{background:var(--coral);transform:scaleX(1.25)}
.pstep span{position:absolute;right:calc(100% + 10px);top:50%;transform:translateY(-50%) translateX(6px);white-space:nowrap;font:500 12px/1 var(--fb);color:var(--azul);background:var(--creme);padding:6px 9px;border-radius:3px;box-shadow:0 2px 8px rgba(22,44,73,.18);opacity:0;pointer-events:none;transition:opacity .2s,transform .2s}
.pstep:hover span,.pstep:focus-visible span{opacity:1;transform:translateY(-50%)}
.mini-prog{display:flex;align-items:flex-end;gap:3px}
.mini-prog .pstep{width:14px;margin:0;height:calc(6px + var(--i)*4px)}
.mini-prog .pstep span{display:none}
@media (max-width:900px){.progresso{display:none}}

/* Voltar ao topo */
.topo-btn{position:fixed;right:18px;bottom:calc(18px + env(safe-area-inset-bottom,0px));z-index:90;width:46px;height:46px;border:0;border-radius:6px;cursor:pointer;--bg:var(--papel);color:var(--azul);display:grid;place-items:center;opacity:0;visibility:hidden;transform:translateY(8px);transition:opacity .3s,transform .3s,visibility 0s .3s}
.topo-btn.is-on{opacity:1;visibility:visible;transform:none;transition-delay:0s}
.topo-btn svg{width:20px;height:20px}

/* ==========================================================================
   Capítulo 1 · Início
   ========================================================================== */
.hero-a{min-height:100svh;display:grid;align-content:center;padding-top:calc(var(--nav-h) + 16px);padding-bottom:56px;overflow:hidden}
.hero-a .grid{display:grid;grid-template-columns:7fr 5fr;gap:48px;align-items:center}
.stack{position:relative;width:100%;aspect-ratio:620/540;--mx:0;--my:0}
.step{position:absolute;animation:rise .95s var(--ease) both;animation-delay:calc(var(--i)*.13s + .1s)}
.step .sheet{position:absolute;inset:0;border-radius:3px;transform:translate(calc(var(--mx)*var(--px,0)*1px),calc(var(--my)*var(--py,0)*1px)) rotate(var(--r,0deg));transition:transform .5s ease-out}
.s1{--i:0;left:0;bottom:0;width:100%;height:22%}   .s1 .sheet{--bg:var(--azul);--px:-4;--py:-2;--r:.3deg}
.s2{--i:1;left:17%;bottom:19%;width:83%;height:21%}  .s2 .sheet{--bg:var(--salvia);--px:-8;--py:-4;--r:-.4deg}
.s3{--i:2;left:34%;bottom:37%;width:66%;height:20%}  .s3 .sheet{--bg:var(--papel);--px:-12;--py:-6;--r:.5deg}
.s4{--i:3;left:52%;bottom:54%;width:48%;height:19%}  .s4 .sheet{--bg:var(--coral);--px:-16;--py:-8;--r:-.5deg}
.s5{--i:4;left:70%;bottom:70%;width:30%;height:18%}  .s5 .sheet{--bg:var(--azul);--px:-20;--py:-10;--r:.6deg}
.stack .foto-hero{position:absolute;left:0;bottom:20%;width:50%;--rot:-4deg;animation:pousa .9s var(--ease) both;animation-delay:.3s}
.stack .note{position:absolute;right:2%;top:2%;padding:10px 14px;border-radius:3px;--bg:var(--papel);font:500 13px/1.35 var(--fb);color:var(--azul);transform:rotate(3deg);animation:lay 1s var(--ease) both;animation-delay:1.1s}
.stack .note b{font-family:var(--fs);font-style:italic;font-weight:500;color:var(--coral-esc)}

/* O ponto cego */
.cego-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:56px;align-items:start}
.quote{margin:var(--esp-3) 0 0;padding:clamp(22px,2vw,30px) clamp(24px,2.2vw,32px);border-radius:3px;--bg:var(--papel);color:var(--azul);font:500 clamp(19px,1.6vw,24px)/1.35 var(--fs);font-style:italic;transform:rotate(-.8deg);width:100%}
.bg-azul .quote p{color:var(--azul)}
.quote span{display:block;margin-top:12px;font:600 12px/1 var(--fb);letter-spacing:.08em;text-transform:uppercase;color:var(--coral-esc);font-style:normal}
/* Faixa de independência (logo depois do hero): tira de papel larga e discreta */

.faixa{padding-block:clamp(32px,4vw,52px)}
.faixa-grid{display:grid;grid-template-columns:5fr 7fr;gap:20px clamp(32px,5vw,72px);align-items:start}
.faixa-titulo{font:700 clamp(24px,2.3vw,34px)/1.12 var(--fd);letter-spacing:-.02em;color:var(--azul);text-wrap:balance}
.faixa-titulo em.d{font-size:1.04em}
.faixa-corpo p{font-size:var(--txt-corpo);line-height:1.6;color:var(--texto-2)}
@media (max-width:760px){
  .faixa-grid{grid-template-columns:1fr}

}

/* Gráfico em degraus de papel */
.grafico{margin:0;display:grid;gap:14px;align-self:end}
.g-titulo{font:600 12px/1.3 var(--fb);letter-spacing:.08em;text-transform:uppercase;color:var(--salvia-clara)}
.degraus-dados{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:14px;align-items:end;--escala:3px}
.dd{display:grid;grid-template-rows:auto auto auto;align-content:end;gap:8px}
.dd-valor{font:700 clamp(30px,2.8vw,42px)/1 var(--fd);letter-spacing:-.02em;color:var(--coral-claro);justify-self:center}
.dd-barra{display:block;border-radius:3px 3px 0 0;height:calc(var(--v)*var(--escala));--bg:var(--salvia)}
.dd:nth-child(2) .dd-barra{--bg:var(--coral)}
.dd:nth-child(3) .dd-barra{--bg:var(--creme)}
.dd-etapa{font:500 13px/1.3 var(--fb);color:rgba(250,246,239,.88);text-align:center;min-height:2.6em}
.g-legenda{font-size:15px;line-height:1.5;color:rgba(250,246,239,.9)}
.g-fonte{font-size:12px;color:var(--salvia-clara);margin-top:14px}
.contrastes{list-style:none;margin:var(--esp-3) 0 0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(16px,1.6vw,24px);align-items:stretch}
.contraste{padding:clamp(22px,2vw,30px) clamp(22px,2vw,30px) clamp(24px,2.2vw,32px);border-radius:3px;--bg:var(--azul-2);color:var(--creme);display:grid;grid-template-rows:auto 1fr;gap:clamp(8px,.9vw,14px);height:100%}
.contraste b{font:700 clamp(44px,4.4vw,68px)/1 var(--fd);letter-spacing:-.03em;color:var(--coral-claro)}
.contraste p{font-size:var(--txt-apoio);line-height:1.55;color:rgba(250,246,239,.9)}
.fechamento{margin-top:var(--esp-3);max-width:none}
.bg-azul .fechamento{color:rgba(250,246,239,.9)}
.apoio-dado{margin-top:var(--esp-2);font-size:var(--txt-nota);line-height:1.55;color:var(--texto-2)}

/* A pergunta-teste */
.pergunta{text-align:left;min-height:100svh;display:grid;align-content:center}
.pergunta .t-giant{max-width:20ch}
.pergunta .resp{margin-top:34px;font:600 clamp(22px,2.4vw,34px)/1.2 var(--fd);letter-spacing:-.015em;color:var(--coral-esc)}

/* Fechamento do ponto cego: a tira e a foto lado a lado */
.cego-fecho{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,auto);gap:clamp(24px,3vw,48px);align-items:center;margin-top:var(--esp-3)}
.cego-fecho .quote{margin-top:0}
.foto-cego{--rot:1.6deg;width:min(100%,420px);justify-self:end}

/* A próxima linha da lista */
.lista-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:56px;align-items:center}
.checklist{list-style:none;margin:0;padding:30px 32px;border-radius:3px;--bg:var(--creme);display:grid;gap:16px;justify-self:end;width:min(100%,420px);transform:rotate(1.2deg)}
.ck{display:flex;align-items:flex-start;gap:14px;font:600 clamp(16px,1.25vw,18px)/1.3 var(--fd);color:var(--azul);padding:6px 8px;border-radius:3px}
.ck .box{flex:none;width:24px;height:24px;border:2.5px solid var(--azul);border-radius:4px;position:relative;background:var(--creme);margin-top:0}
.ck.aberto .box{border-color:var(--salvia-esc)}
.ck.aberto span:last-child{color:var(--texto-2)}
.ck.feito .box::after{content:"";position:absolute;left:5px;top:0;width:8px;height:14px;border:solid var(--coral);border-width:0 3px 3px 0;transform:rotate(42deg)}
.ck.feito span:last-child{color:var(--texto-2);text-decoration:line-through;text-decoration-color:var(--salvia);text-decoration-thickness:2px}
.ck.proximo{background:var(--coral-claro);margin:4px -8px 0;padding:12px 16px;transform:rotate(-1deg);box-shadow:0 8px 16px -10px rgba(22,44,73,.4)}
.ck.proximo .box{border-color:var(--coral-esc);border-style:dashed;background:transparent}
.ck.proximo span:last-child{color:var(--azul)}

/* As 4 perguntas · cartões que viram */
.flips{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;margin-top:48px}
.flip{position:relative;min-height:300px;border:0;background:none;padding:0;text-align:left;cursor:pointer;perspective:1400px}
.flip-in{display:block;position:relative;width:100%;height:100%;min-height:300px;transform-style:preserve-3d;transition:transform .8s var(--ease)}
.flip[aria-pressed="true"] .flip-in{transform:rotateY(180deg)}
@media (hover:hover){.flip:hover .flip-in{transform:rotateY(180deg)}}
.flip-f,.flip-b{position:absolute;inset:0;display:grid;align-content:space-between;gap:16px;padding:24px;border-radius:4px;backface-visibility:hidden;-webkit-backface-visibility:hidden}
.flip-f{--bg:var(--creme)}
.flip-b{--bg:var(--azul);color:var(--creme);transform:rotateY(180deg)}
.flip-f .num{font:600 12px/1 var(--fb);letter-spacing:.08em;color:var(--coral-esc)}
.flip-f h3{font-size:clamp(20px,1.6vw,24px);line-height:1.2;color:var(--azul)}
.flip-b{align-content:start;gap:18px}
.flip-b .num{font:600 12px/1 var(--fb);letter-spacing:.08em;color:var(--coral-claro)}
.flip-b p{font-size:15.5px;line-height:1.5;color:rgba(250,246,239,.92)}
.flips-dica{margin-top:18px;font-size:13px;color:var(--texto-2)}

/* ==========================================================================
   Capítulo 2 · Programas
   ========================================================================== */
.hero-b{position:relative;min-height:75svh;overflow:hidden;color:var(--creme);padding-top:calc(var(--nav-h) + 40px);padding-bottom:180px}
.layers{position:absolute;inset:0;z-index:0}
.layer{position:absolute;inset:0;filter:url(#rough) drop-shadow(0 12px 14px rgba(22,44,73,.25))}
.js .layer{animation:riseKeep 1.1s var(--ease) both;animation-play-state:paused}
.js .hero-b.is-in .layer{animation-play-state:running}
.layer i{position:absolute;inset:0;display:block;clip-path:polygon(0 0,100% 0,100% 56%,80% 56%,80% 67%,60% 67%,60% 78%,40% 78%,40% 89%,20% 89%,20% 100%,0 100%)}
.layer i::after{content:"";position:absolute;inset:0;background-image:var(--grain);background-size:220px 220px;opacity:.22;mix-blend-mode:multiply}
.layer.coral{transform:translate(30px,40px);animation-delay:0s}   .layer.coral i{background:var(--coral)}
.layer.salvia{transform:translate(15px,20px);animation-delay:.14s} .layer.salvia i{background:var(--salvia)}
.layer.azul{animation-delay:.28s}                                    .layer.azul i{background:var(--azul)}
.hero-b .body{position:relative;z-index:5;display:grid;grid-template-columns:1.05fr .95fr;gap:40px;align-items:start}
.hero-b h2{color:var(--creme);font-size:clamp(40px,5.6vw,84px)}
.hero-b h2 em.d{color:var(--coral)}
.hero-b .lead{color:rgba(250,246,239,.84)}
.foto-programas{position:relative;justify-self:end;width:min(100%,460px);margin-top:10px;--rot:2.5deg}

/* Os 3 programas como degraus */
.programas{padding-top:24px}
.prog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;align-items:end;margin-top:28px}
.prog{display:grid;gap:0}
.prog-card{padding:26px 24px 28px;border-radius:4px;--bg:var(--papel);display:flex;flex-direction:column;gap:14px;min-height:100%}
.prog-card .num{font:600 12px/1.3 var(--fb);letter-spacing:.08em;text-transform:uppercase;color:var(--coral-esc);display:flex;flex-wrap:nowrap;justify-content:space-between;align-items:flex-start;gap:12px}
.prog-card .num > span:first-child{flex:1 1 auto;min-width:0}
.prog-card .num .tag{flex:0 0 auto;max-width:100%}
.prog-card h3{font-size:clamp(22px,1.7vw,26px);line-height:1.15}
.prog-card .mote{font:500 16px/1.4 var(--fs);font-style:italic;color:var(--azul)}
.prog-card p{font-size:14.5px;line-height:1.5;color:var(--texto-2)}
.prog-card ul{margin:0;padding:0 0 0 18px;font-size:14px;line-height:1.5;color:var(--texto-2)}
.prog-card li+li{margin-top:4px}
.prog-card .rot{font:600 11px/1.2 var(--fb);letter-spacing:.07em;text-transform:uppercase;color:var(--azul);margin-top:4px}
.prog-base{height:calc(var(--n)*56px);margin-top:-2px;border-radius:0 0 3px 3px;--bg:var(--salvia-clara)}
/* Três colunas: corpos dos cartões com a mesma altura; a escada fica no deslocamento do topo e nas bases */
@media (min-width:1001px){
  .prog-grid{align-items:stretch}
  .prog{display:flex;flex-direction:column}
  .prog:nth-child(1){margin-top:112px}
  .prog:nth-child(2){margin-top:56px}
  .prog-card{flex:1 1 auto;min-height:0}
  .prog-base{flex:none}
}
.prog:nth-child(2) .prog-base{--bg:var(--coral-claro)}
.prog:nth-child(3) .prog-base{--bg:var(--salvia)}
.prog-card p strong{color:var(--azul);font-weight:600}
.prog.destaque .prog-card{--bg:var(--azul);color:var(--creme)}
.prog.destaque .prog-card h3,.prog.destaque .prog-card .mote,.prog.destaque .rot,.prog.destaque .prog-card p strong{color:var(--creme)}
.prog.destaque .prog-card .mote em.d{color:var(--coral)}
.prog.destaque .prog-card p,.prog.destaque .prog-card ul{color:rgba(250,246,239,.86)}
.prog.destaque .prog-card .num{color:var(--coral-claro)}
.prog.destaque .prog-card::before{box-shadow:0 26px 40px -18px rgba(22,44,73,.55),0 2px 4px rgba(22,44,73,.12)}
.selo,.prog.destaque .prog-card .selo{margin:10px 0 0;padding:14px 16px;border-radius:3px;--bg:var(--coral-claro);color:var(--azul);font:600 13.5px/1.4 var(--fb);transform:rotate(-1.5deg);position:relative}
.selo::after{inset:5px;border:1.5px dashed var(--coral-esc);border-radius:2px;background:none;opacity:1;mix-blend-mode:normal}
.prog-marker{display:none}

/* Pacotes */
.pacotes-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:44px;align-items:stretch}
.pacote{padding:28px 26px 30px;border-radius:4px;--bg:var(--creme);display:grid;gap:14px;align-content:start;position:relative}
.pacote.rec{--bg:var(--azul);color:var(--creme);transform:translateY(-12px)}
.pacote.rec h3,.pacote.rec .quem{color:var(--creme)}
.pacote.rec p,.pacote.rec li{color:rgba(250,246,239,.86)}
.pacote.rec .tag{position:absolute;top:-14px;left:22px;transform:rotate(-2deg)}
.pacote h3{font-size:clamp(24px,1.9vw,30px)}
.pacote .desc{font-size:15.5px;line-height:1.55;color:var(--texto-2)}
.pacote.rec .desc{color:rgba(250,246,239,.88)}
.manutencao{margin-top:var(--esp-3);padding:clamp(20px,2vw,28px) clamp(22px,2.2vw,32px);width:100%;border-radius:3px;--bg:var(--salvia-clara);display:grid;grid-template-columns:auto 1fr;gap:18px;align-items:start;transform:rotate(.4deg)}
.manutencao .ico{width:34px;height:28px;background:
  linear-gradient(var(--azul),var(--azul)) 0 20px/10px 8px no-repeat,
  linear-gradient(var(--azul),var(--azul)) 12px 10px/10px 18px no-repeat,
  linear-gradient(var(--coral),var(--coral)) 24px 0/10px 28px no-repeat}
.manutencao h3{font-size:20px;margin-bottom:6px}
.manutencao p{font-size:var(--txt-apoio);line-height:1.55;color:var(--texto-2)}

/* Entregáveis: a mesa */
.mesa-sec{overflow:hidden}
.mesa{position:relative;margin-top:44px;padding:36px 28px 44px;display:grid;grid-template-columns:repeat(6,1fr);gap:30px 22px;border-radius:6px;background:rgba(250,246,239,.18)}
.folha{position:relative;padding:26px 24px 30px;border-radius:2px;--bg:var(--creme);display:grid;align-content:start;gap:10px;transform:rotate(var(--r,0deg));transition:transform .4s var(--ease);grid-column:span 2}
.folha:hover{transform:rotate(0deg) translateY(-6px)}
.folha:nth-child(1){--r:-1.8deg}.folha:nth-child(2){--r:1.4deg;margin-top:16px}.folha:nth-child(3){--r:-1deg}
.folha:nth-child(4){--r:1.8deg;grid-column:2/span 2}.folha:nth-child(5){--r:-1.4deg;grid-column:4/span 2;margin-top:12px}
.folha p{font-size:14.5px;line-height:1.5;color:var(--texto-2)}
.nota-juridica{margin-top:var(--esp-3);padding:clamp(16px,1.5vw,22px) clamp(18px,1.8vw,26px);border-radius:3px;--bg:var(--creme);color:var(--azul);font-size:var(--txt-apoio);line-height:1.55;width:100%;transform:rotate(-.4deg)}
.folha .tipo{font:600 11px/1 var(--fb);letter-spacing:.08em;text-transform:uppercase;color:var(--coral-esc)}
.folha h3{font-size:20px;line-height:1.2}
.folha p{font-size:14px;line-height:1.5;color:var(--texto-2)}
.folha .linhas{display:grid;gap:7px;margin-top:6px}
.folha .linhas i{display:block;height:6px;border-radius:3px;background:var(--papel-esc)}
.folha .linhas i:nth-child(2){width:82%}.folha .linhas i:nth-child(3){width:64%}
.clipe{position:absolute;top:-12px;left:22px;width:16px;height:38px;border:3px solid var(--azul-3);border-radius:8px;box-sizing:border-box;z-index:2}
.clipe.coral{border-color:var(--coral)}
.carimbo{position:absolute;right:16px;bottom:18px;padding:9px 12px;border:2px solid var(--coral-esc);border-radius:4px;color:var(--coral-esc);font:700 11px/1.25 var(--fb);letter-spacing:.08em;text-transform:uppercase;transform:rotate(-6deg);opacity:.85;max-width:150px;text-align:center;mask-image:var(--grain);-webkit-mask-image:var(--grain);mask-size:120px;-webkit-mask-size:120px}
.carimbo.breve{right:18px;top:18px;bottom:auto;font-size:12px;padding:8px 12px;transform:rotate(6deg);opacity:1}

/* Alternativa para motores que renderizam mal o filtro de deslocamento (WebKit): borda simples, mesma sombra */
.no-rough .paper::before,.no-rough .sep i,.no-rough .layer i::before{filter:none}
.no-rough .layer{filter:drop-shadow(0 12px 14px rgba(22,44,73,.25))}

/* ==========================================================================
   Capítulo 3 · Como funciona (jornada em tiras)
   ========================================================================== */
.hero-c{min-height:75svh;padding-top:calc(var(--nav-h) + 40px);padding-bottom:clamp(64px,9vw,120px);overflow:hidden}
.hero-c .wrap{position:relative;z-index:1}
.titulo-tiras{margin:0;display:flex;flex-direction:column;align-items:flex-start;gap:6px}
.titulo-tiras .strip{font-size:clamp(30px,4.6vw,66px)}
.titulo-tiras .t2{margin-left:8%}
.strip em.d{font-size:1em}
.jornada{list-style:none;margin:48px 0 0;padding:0;display:flex;flex-direction:column;align-items:flex-start;gap:6px}
.jornada .strip{font-size:clamp(24px,3vw,44px);white-space:normal;max-width:18ch}
.etapa{display:grid;grid-template-columns:max-content minmax(0,1fr);justify-content:stretch;gap:10px 28px;align-items:center;margin-left:calc(var(--i)*4%);max-width:calc(100% - var(--i)*4%)}
.etapa .strip{justify-self:start}
.etapa p{font-size:var(--txt-apoio);line-height:1.55;color:var(--texto-2);max-width:none}
.js .etapa .strip,.js .etapa p{opacity:0;transform:translateY(-16px) rotate(-1.5deg);transition:opacity .8s var(--ease),transform .8s var(--ease)}
.js .etapa.is-in .strip,.js .etapa.is-in p{opacity:1;transform:rotate(var(--r,0deg))}
.js .etapa.is-in p{transform:none}
.fecho{display:inline-block;margin:44px 0 0;padding:16px 22px;border-radius:3px;--bg:var(--coral-claro);font:600 clamp(22px,2.4vw,34px)/1.2 var(--fd);letter-spacing:-.015em;color:var(--azul);transform:rotate(-1deg)}
.quando{margin-top:var(--esp-3);padding:clamp(18px,1.6vw,24px) clamp(20px,1.9vw,28px);border-radius:3px;--bg:var(--salvia-suave);width:100%;font-size:var(--txt-apoio);line-height:1.55;color:var(--texto-2)}
.quando .rot{font:600 11px/1.2 var(--fb);letter-spacing:.07em;text-transform:uppercase;color:var(--azul);margin-bottom:6px}
.strip{display:inline-flex;align-items:baseline;gap:.35em;padding:.16em .36em .18em;border-radius:3px;font:700 clamp(26px,4vw,60px)/1 var(--fd);letter-spacing:-.025em;color:var(--azul);white-space:nowrap;transform:rotate(var(--r,0deg))}
.strip b{font:600 .38em/1 var(--fb);letter-spacing:.06em;color:var(--coral-esc);transform:translateY(-.15em)}
.strip.c1{--bg:var(--azul);color:var(--creme);--r:-.6deg} .strip.c1 b{color:var(--coral)}
.strip.c2{--bg:var(--salvia-clara);--r:.5deg}
.strip.c3{--bg:var(--papel);--r:-.4deg}
.strip.c4{--bg:var(--coral-claro);--r:.7deg}
.strip.c5{--bg:var(--azul);color:var(--creme);--r:-.5deg} .strip.c5 b{color:var(--coral)}
.strip.c6{--bg:var(--salvia-clara);--r:.4deg}

/* O que a lei já pede: fichas de papel */
.lei .lead{max-width:60ch}
.fichas{display:grid;grid-template-columns:repeat(6,1fr);gap:30px 22px;margin-top:48px}
.ficha{grid-column:span 2;border-radius:3px;--bg:var(--creme);padding:0 0 22px;display:grid;align-content:start;transform:rotate(var(--r,0deg));transition:transform .4s var(--ease)}
.ficha:hover{transform:rotate(0) translateY(-4px)}
.ficha:nth-child(1){--r:-1.2deg}.ficha:nth-child(2){--r:.9deg;margin-top:14px}.ficha:nth-child(3){--r:-.6deg}
.ficha:nth-child(4){--r:1deg;grid-column:2/span 2}.ficha:nth-child(5){--r:-.9deg;grid-column:4/span 2;margin-top:10px}
.lei .ficha-norma{margin:0;padding:20px 22px 14px;border-bottom:2px solid var(--coral);font:600 13.5px/1.4 var(--fb);letter-spacing:0;color:var(--texto-2)}
.lei .ficha-norma b{font:700 22px/1.15 var(--fd);letter-spacing:-.015em;color:var(--azul)}
.ficha dl{margin:0;padding:16px 22px 0;display:grid;gap:4px}
.ficha dt{margin-top:10px;font:600 11px/1.2 var(--fb);letter-spacing:.08em;text-transform:uppercase;color:var(--coral-esc)}
.ficha dt:first-child{margin-top:0}
.ficha dd{margin:0;font-size:14.5px;line-height:1.5;color:var(--texto-2)}
.ficha-prog{display:inline-block;margin-top:2px;padding:5px 10px;border-radius:3px;background:var(--salvia-clara);color:var(--azul);font:600 13px/1.3 var(--fb);transition:background .2s}
.ficha-prog:hover{background:var(--coral-claro)}
.lei .lei-nota{margin-top:var(--esp-3);font-size:var(--txt-nota);line-height:1.6;color:rgba(250,246,239,.8);max-width:none}

/* Base legal nos programas */
.prog-card .base-legal{margin-top:auto;padding-top:8px;font-size:12.5px;line-height:1.5;color:var(--texto-2)}
.base-legal a{color:var(--azul);text-decoration:underline;text-underline-offset:2px;text-decoration-color:var(--salvia)}
.base-legal a:hover{color:var(--coral-esc)}
.prog.destaque .prog-card .base-legal{color:rgba(250,246,239,.86)}
.prog.destaque .base-legal a{color:var(--creme);text-decoration-color:var(--coral)}
.prog.destaque .base-legal a:hover{color:var(--coral-claro)}

/* Perguntas frequentes (sanfona) */
.faq-grid{display:grid;grid-template-columns:5fr 7fr;gap:48px;align-items:start}
.sanfona{display:grid;gap:10px}
.sf{border-radius:3px;background:var(--creme);box-shadow:0 10px 22px -14px rgba(22,44,73,.35)}
.sf-h{margin:0;font-size:inherit}
.sf-btn{width:100%;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px 20px;border:0;background:none;text-align:left;cursor:pointer;font:600 clamp(16px,1.3vw,18px)/1.3 var(--fd);color:var(--azul);border-radius:3px}
.sf-btn:hover{color:var(--coral-esc)}
.sf-ico{flex:none;width:22px;height:22px;position:relative;border-radius:50%;background:var(--coral-claro)}
.sf-ico::before,.sf-ico::after{content:"";position:absolute;left:50%;top:50%;width:10px;height:2px;background:var(--coral-esc);transform:translate(-50%,-50%);transition:transform .3s var(--ease)}
.sf-ico::after{transform:translate(-50%,-50%) rotate(90deg)}
.sf-btn[aria-expanded="true"] .sf-ico::after{transform:translate(-50%,-50%) rotate(0)}
.sf-btn[aria-expanded="true"] .sf-ico{background:var(--coral)}
.sf-p{padding:0 20px 20px}
.sf-p p{font-size:15.5px;line-height:1.55;color:var(--texto-2);max-width:60ch}

/* ==========================================================================
   Capítulo 4 · Quem somos
   ========================================================================== */
.mini-escada{display:flex;align-items:flex-end;gap:0;height:56px;margin-bottom:26px}
.mini-escada i{display:block;width:34px;border-radius:2px 2px 0 0;margin-right:-2px}
.mini-escada i:nth-child(1){height:22%;--bg:var(--papel-esc)}
.mini-escada i:nth-child(2){height:46%;--bg:var(--salvia)}
.mini-escada i:nth-child(3){height:72%;--bg:var(--coral)}
.mini-escada i:nth-child(4){height:100%;--bg:var(--azul)}
.fundadora{display:grid;grid-template-columns:380px 1fr;gap:56px;align-items:start;margin-top:48px}
.fundadora-foto{margin:0;padding:12px 12px 16px;border-radius:2px;--bg:var(--creme);transform:rotate(-2.5deg);width:100%}
.fundadora-foto img{display:block;width:100%;height:auto;aspect-ratio:380/560;object-fit:cover;object-position:50% 20%;border-radius:1px}
.fundadora-foto::after{opacity:.16}
.fundadora h3{font-size:clamp(28px,2.4vw,36px)}
.fundadora .cargo{font:600 12px/1.2 var(--fb);letter-spacing:.07em;text-transform:uppercase;color:var(--coral-esc);margin:8px 0 18px}
.fundadora .bio{font-size:16px;line-height:1.6;color:var(--texto-2);max-width:58ch}
.fala{margin:0 0 22px;padding:0;max-width:58ch}
.fala p{font:500 clamp(18px,1.5vw,21px)/1.5 var(--fs);font-style:italic;color:var(--azul)}
.fundadora .formacao{margin-top:16px;font-size:13px;line-height:1.5;color:var(--texto-2);max-width:58ch}
.citacao{margin:26px 0 0;padding:20px 24px;border-radius:3px;--bg:var(--papel);transform:rotate(.8deg);display:inline-block}
.citacao p{font:500 clamp(20px,1.8vw,26px)/1.3 var(--fs);font-style:italic;color:var(--azul);letter-spacing:-.01em}
.citacao p em.d{font-size:1em}
.parceria{margin-top:28px;padding:26px 30px 30px;border-radius:3px;--bg:var(--salvia-clara);transform:rotate(-.4deg)}
.parceiro-logo{display:inline-block;margin-top:24px;padding:4px 0;border-radius:2px}
.parceiro-logo img{display:block;width:200px;height:auto}
.parceiro-logo:hover img{opacity:.85}
.parceria h3{font-size:22px;margin-bottom:6px}
.parceria p{font-size:var(--txt-apoio);line-height:1.6;color:var(--texto-2)}

/* Link do LinkedIn (ícone desenhado aqui, nada é carregado de fora) */
.link-in{display:inline-flex;align-items:center;gap:8px;font:600 14px/1.3 var(--fb);color:var(--azul);text-decoration:underline;text-underline-offset:3px;text-decoration-color:var(--salvia);transition:color .2s}
.link-in:hover{color:var(--coral-esc)}
.ico-in{flex:none;width:18px;height:18px;fill:currentColor}
.linkedin-linha{margin-top:var(--esp-1)}
.rodape-in{color:rgba(250,246,239,.8);text-decoration-color:rgba(250,246,239,.4);margin-top:4px}
.rodape-in:hover{color:var(--coral-claro)}

/* Manifesto */
.manifesto{padding-block:clamp(56px,7.5vw,104px)}
/* A foto é o fundo do bloco, sem moldura; a camada de cor por cima mantém a frase legível */
.manifesto-quadro{position:relative;isolation:isolate;overflow:hidden;border-radius:4px;display:grid;place-items:center;min-height:clamp(300px,38vw,480px);padding:clamp(36px,5vw,80px) clamp(24px,4vw,72px)}
.manifesto-fundo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 42%;filter:blur(3px);transform:scale(1.05);z-index:-2}
.manifesto-quadro::before{content:"";position:absolute;inset:0;background:rgba(250,246,239,.88);z-index:-1}

.manifesto-frase{margin:0;max-width:20ch;text-align:center;font:500 clamp(32px,4.8vw,72px)/1.15 var(--fs);font-style:italic;color:var(--azul);letter-spacing:-.01em;text-wrap:balance}
.manifesto-frase em.d{font-size:1em}

/* Recursos */
.recursos-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}
.recurso{position:relative;padding:36px 30px 40px;border-radius:2px;--bg:var(--creme);display:grid;gap:14px;transform:rotate(-2deg);width:min(100%,440px);justify-self:end;align-content:start;transition:transform .4s var(--ease)}
.recurso:hover{transform:rotate(0) translateY(-6px)}
.recurso .tipo{font:600 11px/1 var(--fb);letter-spacing:.08em;text-transform:uppercase;color:var(--coral-esc)}
.recurso h3{font-size:clamp(22px,1.9vw,28px);max-width:20ch}
.recurso p{font-size:15px;line-height:1.5;color:var(--texto-2)}
.recurso .btn{justify-self:start;margin-top:6px}
.recursos-blog{margin-top:22px}

/* ==========================================================================
   Fechamento
   ========================================================================== */
.final{text-align:center;padding-block:clamp(80px,12vw,150px)}
.final h2{font-size:clamp(38px,5.4vw,82px);margin-inline:auto;max-width:14ch}
/* Sobre o sálvia, o coral de destaque escurece para manter o contraste mínimo */
.bg-salvia em.d{color:var(--coral-profundo)}
.final .lead{margin-inline:auto;text-align:center;color:var(--azul-esc);max-width:44ch}
.final .cta{justify-content:center}
.email{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;margin-top:22px;font:500 15px var(--fb);color:var(--azul)}
.email code{font:600 15px var(--fd);color:var(--azul);user-select:all;white-space:nowrap}
.copiar{border:0;background:var(--creme);color:var(--azul);border-radius:4px;padding:6px 10px;font:600 12px var(--fb);cursor:pointer}
.final .nota{margin-top:26px;color:var(--azul-esc)}

.rodape{position:relative;overflow:hidden;padding-block:72px 150px;color:var(--creme)}
.rodape-escada{position:absolute;left:0;right:0;bottom:0;height:150px;z-index:0;pointer-events:none}
.rodape-escada i{position:absolute;bottom:0;border-radius:3px 3px 0 0;background:var(--azul-2);opacity:.45}
.rodape-escada i:nth-child(1){left:0;width:22%;height:100%;background:var(--azul-3)}
.rodape-escada i:nth-child(2){left:20%;width:22%;height:78%}
.rodape-escada i:nth-child(3){left:40%;width:22%;height:56%;background:var(--salvia-esc);opacity:.35}
.rodape-escada i:nth-child(4){left:60%;width:22%;height:36%}
.rodape-escada i:nth-child(5){left:80%;width:22%;height:18%;background:var(--azul-3)}
.rodape-escada i::after{content:"";position:absolute;inset:0;background-image:var(--grain);background-size:220px;opacity:.25;mix-blend-mode:multiply}
.rodape .wrap{position:relative;z-index:1}
.rodape-top{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:40px;align-items:start}
.assinatura{font:700 clamp(26px,2.6vw,38px)/1.15 var(--fd);letter-spacing:-.02em;color:var(--creme);margin-top:18px;max-width:16ch}
.assinatura em.d{color:var(--coral)}
.apoio{margin-top:16px;font-size:14px;line-height:1.5;color:rgba(250,246,239,.72);max-width:38ch}
.rodape .logo{color:var(--creme)}
.rodape h4,.rodape .rodape-h{font:600 12px/1 var(--fb);letter-spacing:.08em;text-transform:uppercase;color:var(--salvia-clara);margin-bottom:14px}
.rodape ul{list-style:none;margin:0;padding:0;display:grid;gap:8px;font-size:15px}
.rodape ul a:hover{color:var(--coral-claro)}
.rodape .dados-empresa{display:grid;gap:8px;font-size:14px;color:rgba(250,246,239,.8)}
.rodape-bottom{margin-top:56px;padding-top:18px;border-top:1px solid rgba(250,246,239,.18);display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;font-size:13px;color:rgba(250,246,239,.78)}
/* Sem JavaScript, o link do rodapé abre a política pelo endereço #privacidade */
.modal:target:not([open]){display:block;position:fixed;inset:0;margin:auto;z-index:300;height:fit-content;max-height:85vh;box-shadow:0 0 0 100vmax rgba(22,44,73,.55)}
.link-rodape{border:0;background:none;padding:0;font:inherit;color:inherit;cursor:pointer;text-decoration:underline;text-underline-offset:3px;text-decoration-color:rgba(250,246,239,.4)}
.link-rodape:hover{color:var(--coral-claro)}

/* Modal da política de privacidade */
.modal{border:0;padding:0;background:transparent;max-width:min(92vw,640px);width:100%;margin:auto;color:var(--texto)}
.modal::backdrop{background:rgba(22,44,73,.55);backdrop-filter:blur(3px)}
.modal-in{position:relative;background:var(--creme);border-radius:4px;padding:34px 36px 30px;box-shadow:0 30px 60px -20px rgba(22,44,73,.6);max-height:85vh;overflow:auto}
.modal-in::after{content:"";position:absolute;inset:0;pointer-events:none;background-image:var(--grain);background-size:220px;opacity:.18;mix-blend-mode:multiply;border-radius:inherit}
.modal-fechar{position:absolute;top:14px;right:14px;width:40px;height:40px;border:0;border-radius:50%;background:var(--papel);color:var(--azul);font:400 26px/1 var(--fd);cursor:pointer;display:grid;place-items:center;z-index:1}
.modal-fechar:hover{background:var(--coral-claro)}
.modal .t-h3{margin:0 0 18px;padding-right:44px}
.modal-corpo{display:grid;gap:12px;font-size:15.5px;line-height:1.55;color:var(--texto-2)}
.modal-corpo strong{color:var(--azul);font-weight:600}
.modal-corpo .nota{margin-top:6px}
@media (max-width:760px){.modal-in{padding:26px 20px 24px}}

/* ==========================================================================
   Responsivo
   ========================================================================== */
@media (max-width:1000px){
  .flips{grid-template-columns:repeat(2,1fr)}
  .prog-grid{grid-template-columns:repeat(2,1fr);align-items:start}
  .prog-base{display:none}
  .pacotes-grid{grid-template-columns:1fr}
  .pacote.rec{transform:none}
  .mesa{grid-template-columns:repeat(2,1fr)}
  .folha,.folha:nth-child(4),.folha:nth-child(5){grid-column:auto}
  .folha:nth-child(5){grid-column:1/-1;max-width:60%;margin:0 auto}
  .fichas{grid-template-columns:repeat(2,1fr)}
  .ficha,.ficha:nth-child(4){grid-column:auto;margin-top:0}
  .ficha:nth-child(5){grid-column:1/-1;max-width:60%;margin:0 auto}
  .degraus-dados{--escala:2.6px}
  .contrastes{grid-template-columns:1fr}
  .faq-grid{grid-template-columns:1fr;gap:28px}
  .fundadora{grid-template-columns:300px 1fr;gap:36px}
  .recursos-grid{grid-template-columns:1fr;gap:32px}
  .recurso{justify-self:start}
  .rodape-top{grid-template-columns:1fr 1fr}
}
@media (max-width:760px){
  .hero-a{min-height:0;padding-top:calc(var(--nav-h) + 20px);padding-bottom:48px}
  .hero-a .grid{grid-template-columns:1fr;gap:40px}
  .stack{max-width:520px}
  .cego-grid{grid-template-columns:1fr;gap:34px}
  .quote{transform:none;max-width:none}
  .dado{grid-template-columns:1fr;gap:10px}
  .dado p{padding-top:0}
  .pergunta{min-height:0;display:block}
  .cego-fecho{grid-template-columns:1fr;gap:26px}
  .foto-cego{justify-self:start;width:min(100%,420px)}
  .lista-grid{grid-template-columns:1fr;gap:34px}
  .checklist{justify-self:start;transform:none;padding:24px 20px}
  .flips{grid-template-columns:1fr;gap:16px}
  .flip,.flip-in{min-height:230px}
  .hero-b{min-height:0;padding-top:calc(var(--nav-h) + 24px);padding-bottom:150px}
  .layer i{clip-path:polygon(0 0,100% 0,100% 74%,75% 74%,75% 82%,50% 82%,50% 90%,25% 90%,25% 100%,0 100%)}
  .layer.coral{transform:translate(16px,22px)} .layer.salvia{transform:translate(8px,11px)}
  .hero-b .body{grid-template-columns:1fr;gap:28px}
  .foto-programas{justify-self:start;width:min(100%,340px);margin:10px 0 0}
  .prog-grid{grid-template-columns:1fr;gap:16px}
  .prog{grid-template-columns:auto 1fr;gap:12px;align-items:start}
  .prog-marker{display:flex;flex-direction:column;align-items:flex-end;gap:3px;width:28px;padding-top:8px}
  .prog-marker i{display:block;width:calc(10px + var(--k)*5px);height:6px;border-radius:2px;background:var(--papel-esc)}
  .prog-marker i.on{background:var(--coral)}
  .manutencao{grid-template-columns:1fr;transform:none}
  .mesa{grid-template-columns:1fr;padding:24px 14px 32px;gap:22px}
  .folha,.folha:nth-child(2),.folha:nth-child(4),.folha:nth-child(5){margin:0;grid-column:auto;max-width:none}
  .fichas{grid-template-columns:1fr;gap:22px;margin-top:36px}
  .ficha,.ficha:nth-child(n){grid-column:auto;margin:0;max-width:none;transform:none}
  .lei .ficha-norma b{font-size:20px}
  .degraus-dados{--escala:2.2px;gap:10px}
  .jornada .strip{max-width:100%}
  .dd-etapa{font-size:12px}
  .grafico{margin-top:8px}
  .contrastes{margin-top:40px}
  .etapa{grid-template-columns:1fr;gap:6px;margin-left:calc(var(--i)*2%)}
  .etapa p{padding-bottom:14px}
  .strip{white-space:normal;font-size:clamp(24px,7.4vw,32px)}
  .fundadora{grid-template-columns:1fr;gap:30px;margin-top:36px}
  .fundadora-foto{width:min(70vw,300px);transform:rotate(-2deg)}
  .citacao{transform:none;display:block}
  .parceria{transform:none;padding:24px 22px 26px}
  .parceiro-logo img{width:170px}
  .recurso{transform:none;padding:30px 22px 34px}
  .manifesto{min-height:0}


  .manifesto-frase{max-width:none}
  .manifesto-quadro{min-height:clamp(260px,64vw,360px)}
  .fecho{font-size:22px;transform:none}
  .rodape-top{grid-template-columns:1fr;gap:28px}
  .rodape-escada{height:110px}
  .rodape{padding-bottom:120px}
  .topo-btn{right:14px}
}

/* Em telas pequenas, a entrada é mais curta: o hero fica pronto antes */
@media (max-width:760px){
  .anim{animation-duration:.5s;animation-delay:calc(var(--d,0)*.06s + .05s)}
  .step{animation-duration:.6s;animation-delay:calc(var(--i)*.08s)}
  .stack .foto-hero{animation-delay:.1s}
  .stack .note{animation-delay:.6s}
}

/* ---------- Movimento reduzido ---------- */
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .step,.layer,.anim,.stack .foto-hero,.stack .note,.js .layer{animation:none!important}
  .step .sheet{transition:none}
  .js .rv,.js .etapa .strip,.js .etapa p{opacity:1;transition:none}
  .js .etapa p{transform:none}
  .sf-ico::before,.sf-ico::after{transition:none}
  .flip-in{transition:none}
  .folha,.recurso,.btn,.menu-links a::after,.topo,.topo-in{transition:none}
  .topo-btn,.progresso,.menu{transition:none}
}
