
:root{
  --black:#0C0E11; --graphite:#1C2126; --titanium:#A7ADB2; --platinum:#E7E9E8; --paper:#F4F3EF; --emerald:#0B5D4B; --emerald-dk:#084A3C; --focus:#0B5D4B;
  --font:"IBM Plex Sans","DejaVu Sans",system-ui,sans-serif; --mono:"IBM Plex Mono","DejaVu Sans Mono",ui-monospace,monospace;
  --signal:#5BB394; --accent:#0B5D4B;
  /* modo claro */
  --bg:#F4F3EF; --bg-alt:#EAE9E4; --surface:#FFFFFF; --surface-2:#F8F7F4;
  --ink:#0C0E11; --ink-strong:#0C0E11; --muted:#5F666C; --line:#D3D5D2; --line-soft:#E3E3DF;
  --head-bg:rgba(244,243,239,.9); --head-line:#D8D9D5; --nav:#5F666C; --nav-hover:#0C0E11;
  --logo-ring:#1C2126; --logo-text:#0C0E11; --logo-sub:#5F666C;
  --deco:#D6D7D2; --field-bg:#FFFFFF; --field-line:#80878D; --btn-line:#6B7278;
  color-scheme:light;
  box-sizing:border-box; padding-top:env(safe-area-inset-top,0px); padding-bottom:env(safe-area-inset-bottom,0px);
}
@media (prefers-color-scheme: dark){ :root:not([data-theme="light"]){
  --bg:#111417; --bg-alt:#0C0E11; --surface:#171B1F; --surface-2:#14181C;
  --ink:#E7E9E8; --ink-strong:#F4F3EF; --muted:#A7ADB2; --line:#2A3036; --line-soft:#20262B;
  --head-bg:rgba(12,14,17,.9); --head-line:#1F252A; --nav:#A7ADB2; --nav-hover:#F4F3EF;
  --logo-ring:#A7ADB2; --logo-text:#F4F3EF; --logo-sub:#A7ADB2;
  --deco:#20262B; --field-bg:#14181C; --field-line:#6B7278; --focus:#5BB394; --accent:#5BB394; --btn-line:#6B7278; color-scheme:dark; } }
:root[data-theme="dark"]{
  --bg:#111417; --bg-alt:#0C0E11; --surface:#171B1F; --surface-2:#14181C;
  --ink:#E7E9E8; --ink-strong:#F4F3EF; --muted:#A7ADB2; --line:#2A3036; --line-soft:#20262B;
  --head-bg:rgba(12,14,17,.9); --head-line:#1F252A; --nav:#A7ADB2; --nav-hover:#F4F3EF;
  --logo-ring:#A7ADB2; --logo-text:#F4F3EF; --logo-sub:#A7ADB2;
  --deco:#20262B; --field-bg:#14181C; --field-line:#6B7278; --focus:#5BB394; --accent:#5BB394; --btn-line:#6B7278; color-scheme:dark; }

html{ scroll-behavior:smooth; scroll-padding-top:calc(env(safe-area-inset-top,0px) + 72px); }
*,*::before,*::after{ box-sizing:border-box; }
body{ margin:0; background:var(--bg); color:var(--ink); font-family:var(--font); font-size:1.0625rem; line-height:1.6; -webkit-font-smoothing:antialiased; font-variant-numeric:tabular-nums; }
body,.top,.hero,.alt,.band,.sheet,.grade-card,.aud article,.ledger,.guards,.guards div,input,select,footer{ transition:background-color .45s ease,color .45s ease,border-color .45s ease; }
a{ color:inherit; text-underline-offset:.22em; text-decoration-thickness:1px; }
:focus-visible{ outline:2px solid var(--focus); outline-offset:3px; }
.wrap{ width:100%; max-width:1200px; margin:0 auto; padding:0 clamp(20px,5vw,48px); }
.sr{ position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); }

/* logo */
.logo .lr{ fill:none; stroke:var(--logo-ring); stroke-width:8.5; transition:stroke .45s; }
.logo .lt{ fill:var(--logo-text); transition:fill .45s; }
.logo .ls{ fill:var(--logo-sub); transition:fill .45s; }

/* cabeçalho */
.top{ position:sticky; top:env(safe-area-inset-top,0px); z-index:10; background:var(--head-bg); backdrop-filter:saturate(1.2) blur(10px); -webkit-backdrop-filter:saturate(1.2) blur(10px); border-bottom:1px solid var(--head-line); }
.top .wrap{ display:flex; align-items:center; gap:22px; min-height:68px; }
.top nav{ display:flex; gap:22px; margin-left:auto; font-size:.88rem; }
.top nav a{ color:var(--nav); text-decoration:none; padding:8px 0; white-space:nowrap; position:relative; }
.top nav a::after{ content:""; position:absolute; left:0; right:0; bottom:2px; height:1px; background:var(--accent); transform:scaleX(0); transform-origin:left; transition:transform .35s ease; }
.top nav a:hover{ color:var(--nav-hover); }
.top nav a:hover::after{ transform:scaleX(1); }
.btn{ white-space:nowrap; display:inline-flex; align-items:center; justify-content:center; gap:10px; min-height:48px; padding:0 22px; font:500 .95rem/1 var(--font); text-decoration:none; border-radius:2px; border:1px solid transparent; cursor:pointer; transition:background-color .25s,border-color .25s,color .25s; }
.btn-primary{ background:var(--emerald); color:#fff; }
.btn-primary:hover{ background:var(--emerald-dk); }
.btn-line{ border-color:var(--btn-line); color:var(--ink); background:transparent; }
.btn-line:hover{ border-color:var(--ink); }
.btn-sm{ min-height:40px; padding:0 16px; font-size:.88rem; }
.btn .arrow{ transition:transform .25s; }
.btn:hover .arrow{ transform:translateX(3px); }
.theme{ width:44px; height:44px; flex-shrink:0; display:flex; align-items:center; justify-content:center; background:transparent; border:0; padding:0; cursor:pointer; border-radius:50%; color:var(--logo-ring); }
.theme svg{ width:22px; height:22px; display:block; overflow:visible; }
.theme circle{ fill:none; stroke:currentColor; stroke-width:1.6; }
.theme path{ fill:currentColor; stroke:none; }
.theme:hover{ color:var(--ink-strong); }
.theme.redraw svg{ animation:turn .6s cubic-bezier(.3,.1,.1,1); }

/* herói */
.hero{ background:var(--bg-alt); color:var(--ink); position:relative; overflow:hidden; }
.hero .wrap{ display:grid; grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr); gap:56px; align-items:center; padding-top:clamp(64px,10vw,128px); padding-bottom:clamp(64px,9vw,120px); position:relative; z-index:1; }
.ring{ position:absolute; right:-14vw; top:50%; transform:translateY(-50%); width:min(78vw,1000px); height:auto; pointer-events:none; }
.ring path{ stroke:var(--deco); stroke-width:2.2; fill:none; stroke-dasharray:260; stroke-dashoffset:260; animation:draw 2.6s cubic-bezier(.3,.1,.1,1) .3s forwards; transition:stroke .45s; }
.ring .ring2{ stroke-width:.5; animation-delay:.9s; }
h1{ font-weight:200; font-size:clamp(2.4rem,5.4vw,4.4rem); line-height:1.03; letter-spacing:-.025em; margin:0 0 28px; color:var(--ink-strong); }
h1 span{ display:block; }
.lead{ font-size:clamp(1.05rem,1.6vw,1.22rem); line-height:1.6; color:var(--ink); max-width:36rem; margin:0 0 36px; font-weight:300; }
.hero-ctas{ display:flex; flex-wrap:wrap; gap:14px; align-items:center; }
.hero-note{ margin-top:22px; font-size:.9rem; color:var(--muted); }

/* ficha */
.sheet{ background:var(--surface); border:1px solid var(--line); margin:0; width:100%; box-shadow:0 30px 60px -40px rgba(12,14,17,.35); }
.sheet-h{ display:flex; justify-content:space-between; align-items:center; padding:16px 22px; border-bottom:1px solid var(--line); font-size:.82rem; color:var(--muted); }
.sheet-h .live{ display:inline-flex; align-items:center; gap:8px; }
.sheet-h .live::before{ content:""; width:7px; height:7px; border-radius:50%; background:var(--accent); animation:pulse 2.4s ease-in-out infinite; }
.sheet dl{ margin:0; padding:10px 22px 6px; display:grid; grid-template-columns:auto 1fr; column-gap:0; font-size:.92rem; }
.sheet dt{ color:var(--muted); padding:9px 0; border-bottom:1px solid var(--line-soft); }
.sheet dd{ margin:0; padding:9px 0 9px 24px; border-bottom:1px solid var(--line-soft); text-align:right; color:var(--ink-strong); }
.sheet .grade{ border:1px solid var(--ink); padding:1px 8px; font-weight:600; font-size:.8rem; }
.sheet-lock{ display:flex; gap:12px; align-items:flex-start; padding:16px 22px 20px; background:var(--surface-2); font-size:.86rem; color:var(--ink); line-height:1.5; border-top:1px solid var(--line-soft); }
.sheet-lock svg{ flex-shrink:0; margin-top:2px; color:var(--muted); }
.redact{ display:grid; gap:7px; padding:14px 22px 4px; }
.redact div{ display:flex; justify-content:space-between; align-items:center; font-size:.8rem; color:var(--muted); }
.redact i{ display:block; height:9px; background:var(--line); border-radius:1px; transform-origin:left; }

/* faixa */
.band{ background:var(--surface); color:var(--ink); border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.band .wrap{ display:flex; flex-wrap:wrap; gap:8px 28px; align-items:center; padding-top:18px; padding-bottom:18px; font-size:.95rem; }
.band .wrap::before{ content:""; width:3px; align-self:stretch; background:var(--accent); }
.band strong{ color:var(--ink-strong); font-weight:600; }
.band a{ margin-left:auto; color:var(--ink-strong); display:inline-flex; align-items:center; gap:8px; font-weight:500; white-space:nowrap; }
.band a:hover .arrow{ transform:translateX(3px); } .band .arrow{ transition:transform .25s; }
@media (min-width: 961px){ .band .wrap{ flex-wrap:nowrap; } .band span{ flex:1; } }

/* seções */
section{ padding:clamp(72px,10vw,128px) 0; }
.alt{ background:var(--bg-alt); color:var(--ink); }
h2{ font-weight:200; font-size:clamp(2rem,4.2vw,3.2rem); line-height:1.08; letter-spacing:-.02em; margin:0 0 20px; max-width:18ch; color:var(--ink-strong); }
h3{ font-weight:500; font-size:1.12rem; margin:0 0 8px; letter-spacing:-.005em; color:var(--ink-strong); }
.intro{ font-size:1.12rem; color:var(--muted); max-width:40rem; margin:0; line-height:1.65; }
.head{ display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:48px; align-items:end; margin-bottom:56px; }

.questions{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); border-top:1px solid var(--ink); }
.questions div{ padding:28px 28px 8px 0; }
.questions div + div{ padding-left:28px; border-left:1px solid var(--line); }
.questions p{ margin:0; font-size:1.3rem; font-weight:300; line-height:1.4; color:var(--ink-strong); }
.questions small{ display:block; margin-top:14px; color:var(--muted); font-size:.95rem; line-height:1.55; }

.steps{ list-style:none; margin:0; padding:0; display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:0; counter-reset:s; }
.steps li{ counter-increment:s; padding:0 24px 0 0; position:relative; }
.steps li::before{ content:counter(s); display:block; font-weight:200; font-size:3rem; line-height:1; margin-bottom:18px; color:var(--ink-strong); }
.steps li::after{ content:""; position:absolute; top:24px; left:44px; right:12px; height:1px; background:var(--line); transform-origin:left; }
.steps li:last-child::after{ display:none; }
.steps p{ margin:0; color:var(--muted); font-size:.97rem; line-height:1.55; }

.principle{ font-weight:200; font-size:clamp(1.6rem,3.2vw,2.5rem); line-height:1.2; color:var(--ink-strong); margin:0 0 64px; max-width:26ch; letter-spacing:-.015em; }
.guards{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1px; background:var(--line); border:1px solid var(--line); }
.guards div{ background:var(--bg-alt); padding:32px 28px; }
.guards p{ margin:0; color:var(--muted); font-size:.97rem; line-height:1.6; }
.guards svg{ display:block; margin-bottom:22px; color:var(--ink-strong); }
.honest{ margin-top:36px; display:flex; gap:14px; align-items:flex-start; max-width:52rem; color:var(--ink); font-size:.97rem; line-height:1.6; }
.honest svg{ flex-shrink:0; margin-top:3px; color:var(--muted); }

.grades{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.grade-card{ background:var(--surface); border:1px solid var(--line); padding:32px 28px; display:flex; flex-direction:column; gap:12px; transition:transform .35s ease,border-color .35s; }
.grade-card:hover{ transform:translateY(-4px); border-color:var(--ink); }
.grade-card .g{ font-weight:200; font-size:3.4rem; line-height:1; letter-spacing:.02em; color:var(--ink-strong); }
.grade-card .t{ font-size:.9rem; color:var(--muted); }
.grade-card p{ margin:0; font-size:.97rem; line-height:1.55; }
.grade-card.top-g{ border-color:var(--ink); }
.meter{ height:3px; background:var(--line-soft); margin-top:auto; }
.meter i{ display:block; height:3px; background:var(--accent); transform-origin:left; transform:scaleX(var(--w,1)); }
.subtypes{ margin-top:40px; display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); border-top:1px solid var(--line); }
.subtypes div{ padding:22px 20px 0 0; }
.subtypes strong{ display:block; font-weight:500; margin-bottom:6px; color:var(--ink-strong); }
.subtypes span{ color:var(--muted); font-size:.93rem; line-height:1.55; }

.split{ display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:64px; align-items:center; }
.ledger{ background:var(--surface); border:1px solid var(--line); }
.ledger-row{ display:flex; justify-content:space-between; gap:24px; padding:18px 26px; border-bottom:1px solid var(--line); font-size:.98rem; }
.ledger-row span:last-child{ color:var(--muted); text-align:right; }
.ledger-row.total{ border-bottom:1px solid var(--line); font-weight:500; color:var(--ink-strong); }
.ledger-row.total span:last-child{ color:var(--ink-strong); }
.ledger-foot{ padding:14px 26px 18px; font-size:.85rem; color:var(--muted); }

.aud{ display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:24px; }
.aud article{ background:var(--surface); border:1px solid var(--line); padding:40px 36px; display:flex; flex-direction:column; gap:18px; }
.aud h3{ font-weight:300; font-size:1.8rem; letter-spacing:-.01em; margin:0; }
.aud ul{ margin:0; padding:0; list-style:none; display:flex; flex-direction:column; gap:12px; }
.aud li{ display:grid; grid-template-columns:18px 1fr; gap:12px; font-size:.98rem; line-height:1.55; }
.aud li svg{ margin-top:5px; color:var(--accent); }

.aud .fact{ margin-top:auto; padding-top:18px; border-top:1px solid var(--line); font-size:.9rem; color:var(--muted); line-height:1.55; }

.nots{ display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:32px; border-top:1px solid var(--ink); padding-top:32px; }
.nots p{ margin:0; color:var(--muted); font-size:.97rem; line-height:1.55; }

.faq{ max-width:50rem; }
.faq details{ border-bottom:1px solid var(--line); }
.faq summary{ list-style:none; cursor:pointer; display:flex; justify-content:space-between; align-items:center; gap:24px; padding:22px 0; font-size:1.1rem; min-height:44px; color:var(--ink-strong); }
.faq summary::-webkit-details-marker{ display:none; }
.faq summary::after{ content:""; width:12px; height:12px; border-right:1.5px solid var(--ink); border-bottom:1.5px solid var(--ink); transform:rotate(45deg); transition:transform .3s; flex-shrink:0; margin-top:-6px; }
.faq details[open] summary::after{ transform:rotate(225deg); margin-top:6px; }
.faq details p{ margin:0 0 24px; color:var(--muted); line-height:1.65; max-width:44rem; }
.faq details[open] p{ animation:fadeUp .45s ease; }

.cta .wrap{ display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:64px; align-items:start; }
form{ display:grid; gap:16px; }
label{ display:grid; gap:6px; font-size:.9rem; color:var(--ink); }
input,select{ font:inherit; font-size:1rem; min-height:50px; width:100%; min-width:0; padding:0 14px; background:var(--field-bg); color:var(--ink-strong); border:1px solid var(--field-line); border-radius:2px; }
input[type=checkbox],input[type=radio]{ min-width:auto; flex-shrink:0; }
input:focus,select:focus{ border-color:var(--accent); outline:2px solid var(--focus); outline-offset:0; }
.consent{ display:flex; gap:12px; align-items:flex-start; font-size:.88rem; color:var(--muted); line-height:1.5; }
.consent input{ min-height:auto; width:20px; height:20px; margin-top:2px; accent-color:var(--accent); padding:0; }
.form-msg{ font-size:.92rem; color:var(--ink); min-height:1.4em; }
.cta-ring{ width:64px; height:64px; margin-bottom:28px; color:var(--logo-ring); }
.cta-ring path{ fill:none; stroke:currentColor; stroke-width:6; stroke-dasharray:260; stroke-dashoffset:260; }
.cta-ring.in path, .cta.in .cta-ring path{ animation:draw 1.8s cubic-bezier(.3,.1,.1,1) forwards; }

footer{ background:var(--bg-alt); color:var(--muted); border-top:1px solid var(--line); font-size:.85rem; }
footer .wrap{ display:flex; flex-wrap:wrap; gap:14px 40px; justify-content:space-between; align-items:center; padding-top:32px; padding-bottom:40px; }

/* animações */
@keyframes draw{ from{ stroke-dashoffset:260; } to{ stroke-dashoffset:0; } }
@keyframes fadeUp{ from{ opacity:0; transform:translateY(14px); } to{ opacity:1; transform:none; } }
@keyframes fade{ from{ opacity:0; } to{ opacity:1; } }
@keyframes pulse{ 0%,100%{ opacity:1; } 50%{ opacity:.25; } }
@keyframes turn{ from{ transform:rotate(-180deg); } to{ transform:none; } }
@keyframes grow{ from{ transform:scaleX(0); } to{ transform:scaleX(1); } }
.top .logo .lr{ stroke-dasharray:260; stroke-dashoffset:260; animation:draw 1.6s cubic-bezier(.3,.1,.1,1) .1s forwards; }
.top .logo .lt,.top .logo .ls{ opacity:0; animation:fade .9s ease .75s forwards; }
.hero h1 span{ opacity:0; animation:fadeUp .9s cubic-bezier(.2,.7,.2,1) forwards; }
.hero h1 span:nth-child(1){ animation-delay:.25s; } .hero h1 span:nth-child(2){ animation-delay:.45s; }
.hero .lead,.hero .hero-ctas,.hero .hero-note,.hero .trust{ opacity:0; animation:fadeUp .9s cubic-bezier(.2,.7,.2,1) forwards; }
.hero .lead{ animation-delay:.65s; } .hero .hero-ctas{ animation-delay:.8s; } .hero .hero-note{ animation-delay:.95s; } .hero .trust{ animation-delay:1.1s; }
.sheet{ opacity:0; animation:fadeUp 1s cubic-bezier(.2,.7,.2,1) .6s forwards; }
.sheet dt,.sheet dd{ opacity:0; animation:fade .5s ease forwards; }
.sheet dt:nth-of-type(1),.sheet dd:nth-of-type(1){ animation-delay:1.0s; }
.sheet dt:nth-of-type(2),.sheet dd:nth-of-type(2){ animation-delay:1.12s; }
.sheet dt:nth-of-type(3),.sheet dd:nth-of-type(3){ animation-delay:1.24s; }
.sheet dt:nth-of-type(4),.sheet dd:nth-of-type(4){ animation-delay:1.36s; }
.sheet dt:nth-of-type(5),.sheet dd:nth-of-type(5){ animation-delay:1.48s; }
.sheet dt:nth-of-type(6),.sheet dd:nth-of-type(6){ animation-delay:1.6s; }
.redact i{ transform:scaleX(0); animation:grow .7s cubic-bezier(.3,.1,.1,1) forwards; }
.redact div:nth-child(1) i{ animation-delay:1.8s; } .redact div:nth-child(2) i{ animation-delay:1.95s; } .redact div:nth-child(3) i{ animation-delay:2.1s; }
.sheet-lock{ opacity:0; animation:fade .8s ease 2.3s forwards; }

html.js .reveal{ opacity:0; transform:translateY(18px); transition:opacity .9s cubic-bezier(.2,.7,.2,1),transform .9s cubic-bezier(.2,.7,.2,1); }
html.js .reveal.in{ opacity:1; transform:none; }
html.js .stagger > *{ opacity:0; transform:translateY(14px); transition:opacity .7s ease,transform .7s ease; }
html.js .stagger.in > *{ opacity:1; transform:none; }
html.js .stagger.in > *:nth-child(2){ transition-delay:.1s; } html.js .stagger.in > *:nth-child(3){ transition-delay:.2s; }
html.js .stagger.in > *:nth-child(4){ transition-delay:.3s; } html.js .stagger.in > *:nth-child(5){ transition-delay:.4s; }
html.js .stagger.in > *:nth-child(6){ transition-delay:.5s; }
html.js .steps li::after{ transform:scaleX(0); transition:transform 1s cubic-bezier(.3,.1,.1,1) .5s; }
html.js .steps.in li::after{ transform:scaleX(1); }
html.js .grades .meter i{ transform:scaleX(0); transition:transform 1.2s cubic-bezier(.3,.1,.1,1) .4s; }
html.js .grades.in .meter i{ transform:scaleX(var(--w,1)); }

@media (max-width: 1180px){ .top nav{ display:none; } .top .theme{ margin-left:auto; } }
@media (max-width: 960px){
  .top .btn-sm{ padding:0 12px; font-size:.82rem; }
  .hero-ctas .btn{ white-space:normal; text-align:center; }
  .hero .wrap,.head,.split,.aud,.cta .wrap{ grid-template-columns:minmax(0,1fr); gap:40px; }
  .ring{ right:-40vw; width:130vw; }
  .questions,.guards,.grades{ grid-template-columns:minmax(0,1fr); }
  .questions div + div{ padding-left:0; border-left:0; border-top:1px solid var(--line); }
  .steps{ grid-template-columns:minmax(0,1fr); gap:32px; }
  .steps li::after{ display:none; }
  .subtypes{ grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 16px; }
  .nots{ grid-template-columns:repeat(2,minmax(0,1fr)); }
  .band a{ margin-left:0; }
}
@media (max-width: 560px){ .nots,.subtypes{ grid-template-columns:minmax(0,1fr); } }
/* iPhone: o botão do cabeçalho repete o do início da página, logo abaixo; sai para caber sem rolagem lateral */
@media (max-width: 560px){ .top .btn-sm{ display:none; } .top .logo{ width:140px; height:auto; } }
@media (prefers-reduced-motion: reduce){
  html{ scroll-behavior:auto; }
  *,*::before,*::after{ animation:none !important; transition:none !important; }
  .ring path,.top .logo .lr,.cta-ring path{ stroke-dashoffset:0 !important; }
  .top .logo .lt,.top .logo .ls,.hero h1 span,.hero .lead,.hero .hero-ctas,.hero .hero-note,.hero .trust,.sheet,.sheet dt,.sheet dd,.sheet-lock{ opacity:1 !important; }
  .redact i{ transform:none !important; }
  html.js .reveal,html.js .stagger > *{ opacity:1 !important; transform:none !important; }
  html.js .steps li::after{ transform:none !important; }
  html.js .grades .meter i{ transform:scaleX(var(--w,1)) !important; }
}

.pt0{ padding-top:0; }
.meter i.w34{ --w:.34; } .meter i.w67{ --w:.67; } .meter i.w100{ --w:1; }
.redact i.r46{ width:46%; } .redact i.r38{ width:38%; } .redact i.r30{ width:30%; }
.ledger-row.you{ border-top:0; } .ledger-row.you span{ font-size:1.35rem; font-weight:300; }
.hp{ position:absolute; left:-9999px; width:1px; height:1px; overflow:hidden; }
.form-msg.err{ color:#EE8B80; } :root[data-mode="light"] .form-msg.err{ color:#B03A2E; }
.top .enter{ color:var(--nav); text-decoration:none; font-size:.88rem; white-space:nowrap; padding:8px 0; }
.top .enter:hover{ color:var(--nav-hover); }
@media (max-width: 1180px){ .top .enter{ margin-left:auto; } .top .theme{ margin-left:0; } }

.skip{ position:absolute; left:-9999px; } .skip:focus{ left:1rem; top:1rem; background:var(--surface); color:var(--ink); padding:.5rem; z-index:99; }

/* provas de segurança na primeira dobra */
.trust{ list-style:none; margin:30px 0 0; padding:22px 0 0; border-top:1px solid var(--line); display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; max-width:40rem; }
.trust li{ display:flex; gap:10px; align-items:flex-start; font-size:.86rem; line-height:1.45; color:var(--ink); }
.trust svg{ flex-shrink:0; margin-top:1px; color:var(--accent); }


/* segurança: o coração da missão, em VERUS Black nos dois modos */
.sec-dark{ --bg-alt:#0C0E11; --surface:#171B1F; --ink:#E7E9E8; --ink-strong:#F4F3EF; --muted:#A7ADB2; --line:#2A3036; --line-soft:#20262B; --focus:#5BB394; --accent:#5BB394; color-scheme:dark; }
.sec-dark .principle{ padding-left:28px; border-left:2px solid var(--signal); }
.sec-dark .guards div{ transition:background-color .35s; }
.sec-dark .guards div:hover{ background:#14181C; }
.sec-dark .guards svg{ color:var(--signal); }

/* o que a VERUS não faz: assinatura da marca */
.signature h2{ max-width:22ch; margin-bottom:40px; }
.signature .nots{ border-top:0; padding-top:0; gap:16px; }
.signature .nots div{ background:var(--surface); border:1px solid var(--line); border-top:2px solid var(--accent); padding:28px 24px; }
.signature .nots h3::before{ content:""; display:block; width:22px; height:22px; margin-bottom:18px; border:1.5px solid var(--ink-strong); border-radius:50%;
  background:linear-gradient(135deg,transparent calc(50% - .75px),var(--ink-strong) calc(50% - .75px),var(--ink-strong) calc(50% + .75px),transparent calc(50% + .75px)); }


@media (max-width: 960px){ .trust{ grid-template-columns:minmax(0,1fr); gap:12px; } }
