/* DG ONE · G3-05 (item 10) · páginas complementares, navegação e rodapé integrados.
   Carregada depois de styles.css (aprovada, intocada) e g3-08-09.css. Mesmos tokens e o mesmo verbo de
   movimento da bancada: o sinal verde desliza e assenta. Sem estilos inline (CSP style-src 'self'). */

/* ======================= menu com 9 destinos ======================= */
.menu-panel{justify-content:flex-start;overflow-y:auto;overscroll-behavior:contain;background:var(--bg)}
.menu-panel ol{margin-top:auto}
.menu-panel .menu-foot{margin-bottom:auto}
.menu-panel li a{font-size:clamp(24px,4.4vw,44px);padding:12px 0}
.menu-panel.is-open li:nth-child(6) a{transition-delay:.2s}.menu-panel.is-open li:nth-child(7) a{transition-delay:.24s}
.menu-panel.is-open li:nth-child(8) a{transition-delay:.28s}.menu-panel.is-open li:nth-child(9) a{transition-delay:.32s}
.menu-panel li a[aria-current="page"]{color:var(--green)}
.nav-inline a.nav-wa[aria-current="page"]{box-shadow:0 0 0 2px var(--bg),0 0 0 3px var(--green)}

/* ======================= rodapé ======================= */
.foot.fx .wrap{gap:36px}
@media (min-width:900px){.foot.fx .wrap{grid-template-columns:minmax(0,1fr) minmax(0,2.2fr)}}
.fx-cols{display:grid;grid-template-columns:1fr 1fr;gap:28px 24px}
.fx-cols>:last-child{grid-column:1/-1}
@media (min-width:640px){.fx-cols{grid-template-columns:repeat(3,minmax(0,1fr))}.fx-cols>:last-child{grid-column:auto}}
.fx-k{font-size:12px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--ink);margin-bottom:8px}
.fx-place{display:inline-flex;min-height:36px;align-items:center;font-size:14px;color:var(--faint)}
.fx-legal{display:flex;flex-wrap:wrap;gap:4px 20px}
.foot .fx-legal a{gap:8px;font-size:13px}

/* ======================= cabeçalho das páginas ======================= */
.ix-head{padding:calc(var(--header) + clamp(40px,7vw,96px)) 0 clamp(36px,5vw,64px)}
.ix-head-grid{display:grid;gap:18px 48px}
@media (min-width:980px){.ix-head-grid{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);align-items:end}}
.ix-head h1{font-size:clamp(44px,6.6vw,96px);margin-top:14px;letter-spacing:-.035em;line-height:.98}
.ix-head .lead{max-width:42ch}
.ix-head .note{margin-top:14px}
.ix-end{padding-top:clamp(40px,6vw,80px)}

/* sinal: traço verde que desliza da esquerda e assenta (mesmo verbo da bancada) */
.ix-index a,.ab-ledger li{position:relative}
.ix-index a::after,.ab-ledger li::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:var(--green);box-shadow:0 0 12px var(--green-glow);transform:scaleX(0);transform-origin:left;transition:transform .7s var(--ease-out)}
.ix-index a:hover::after,.ix-index a:focus-visible::after,.ab-ledger li:hover::after,.ab-ledger li:focus-within::after{transform:none}

/* ======================= /sobre/ ======================= */
.ab-north-grid{display:grid;gap:clamp(36px,5vw,64px)}
@media (min-width:980px){.ab-north-grid{grid-template-columns:minmax(0,1.35fr) minmax(0,.65fr);align-items:end}}
.ab-quote{font-size:clamp(38px,5.6vw,84px);letter-spacing:-.035em;line-height:1;max-width:13ch}
.ab-quote .hl{display:block}
.ab-plate{margin:0;border:1px solid var(--line);border-radius:var(--r);background:var(--bg-2);padding:8px 24px;position:relative}
.ab-plate::before{content:"Ficha DG ONE";position:absolute;top:-9px;left:18px;padding:0 8px;background:var(--bg);font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--green)}
.ab-plate>div{display:grid;gap:4px;padding:16px 0;border-bottom:1px solid var(--line)}
.ab-plate>div:last-child{border-bottom:0}
.ab-plate dt{font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);font-weight:600}
.ab-plate dd{margin:0;font-size:18px;color:var(--ink);font-weight:600;letter-spacing:-.01em}
.ab-ledger{list-style:none;margin:0;padding:0;border-bottom:1px solid var(--line)}
.ab-ledger li{display:grid;gap:12px 40px;padding:clamp(24px,3vw,36px) 0;border-top:1px solid var(--line)}
@media (min-width:900px){.ab-ledger li{grid-template-columns:minmax(0,.9fr) minmax(0,1.3fr) auto;align-items:baseline}}
.ab-ledger h3{font-size:clamp(24px,2.6vw,34px);letter-spacing:-.02em}
.ab-ledger p{color:var(--muted);max-width:52ch}
.ab-ledger .link-arrow{justify-self:start;white-space:nowrap}
.ix-index-wrap{display:grid;gap:clamp(28px,5vw,64px)}
@media (min-width:980px){.ix-index-wrap{grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);align-items:start}}
.ix-index{list-style:none;margin:0;padding:0;border-bottom:1px solid var(--line)}
.ix-index li{border-top:1px solid var(--line)}
.ix-index a{display:grid;grid-template-columns:1fr auto;gap:6px 20px;align-items:center;padding:clamp(18px,2.4vw,26px) 0;text-decoration:none}
.ix-index .t{font-size:clamp(26px,3.2vw,44px);font-weight:700;letter-spacing:-.03em;line-height:1.05;transition:color .3s,transform .6s var(--ease-out)}
.ix-index .d{grid-column:1;font-size:15px;color:var(--muted)}
.ix-index .arr{grid-column:2;grid-row:1/3;font-size:24px;color:var(--green);transition:transform .5s var(--ease-out)}
.ix-index a:hover .t,.ix-index a:focus-visible .t{color:var(--green);transform:translateX(8px)}
.ix-index a:hover .arr,.ix-index a:focus-visible .arr{transform:translateX(6px)}

/* ======================= /atendimento/ ======================= */
.ax{padding-bottom:clamp(64px,9vw,120px)}
.ax-grid{display:grid;gap:clamp(28px,4vw,56px)}
@media (min-width:980px){.ax-grid{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);align-items:start}.ax-preview{position:sticky;top:calc(var(--header) + 24px)}}
.ax-pick{display:grid;gap:30px}
.ax-pick legend{display:flex!important;align-items:center;gap:10px}
.ax-n{display:inline-grid;place-items:center;width:24px;height:24px;border-radius:50%;border:1px solid var(--green);color:var(--green);font-family:var(--mono);font-size:12px;letter-spacing:0}
.ax-seg button{min-height:48px}
.ax-preview{margin:0;position:relative;overflow:hidden;border:1px solid var(--line);border-radius:28px;padding:clamp(24px,3.4vw,40px);background:radial-gradient(90% 80% at 100% 0%,rgba(131,234,5,.10),transparent 60%),var(--bg-2)}
.ax-signal{position:absolute;left:0;right:0;top:0;height:2px;background:var(--green);box-shadow:0 0 14px var(--green-glow);transform-origin:left;transform:scaleX(1)}
.ax-preview.is-new .ax-signal{animation:ax-sig .9s var(--ease-out)}
.ax-to{font-family:var(--mono);font-size:12px;letter-spacing:.08em;color:var(--muted)}
.ax-to .k{color:var(--green);text-transform:uppercase;letter-spacing:.16em;margin-right:12px}
.ax-bubble{margin:22px 0 14px;padding:18px 20px;min-height:5.2em;border:1px solid rgba(131,234,5,.3);border-radius:20px 20px 6px 20px;background:rgba(131,234,5,.08);font-size:clamp(18px,1.6vw,21px);line-height:1.45;color:var(--ink)}
.ax-preview.is-new .ax-bubble{animation:ax-in .55s var(--ease-out)}
.ax-meta{font-size:13px;color:var(--faint);margin-bottom:20px}
@keyframes ax-sig{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@keyframes ax-in{from{opacity:.25;transform:translateY(8px)}to{opacity:1;transform:none}}
html:not(.js) .ax-pick{display:none}
.ax-channels{display:grid;gap:20px}
@media (min-width:900px){.ax-channels{grid-template-columns:1fr 1fr}}
.ax-ch{border:1px solid var(--line);border-radius:calc(var(--r) + 4px);padding:clamp(24px,3.4vw,40px);display:grid;gap:12px;align-content:start;justify-items:start;background:var(--bg-2)}
.ax-ch.is-sales{border-color:rgba(131,234,5,.35);background:radial-gradient(100% 120% at 0% 0%,rgba(131,234,5,.10),transparent 60%),var(--bg-2)}
.ax-ch h3{font-size:clamp(28px,3.4vw,44px);font-variant-numeric:tabular-nums;letter-spacing:-.02em}
.ax-ch p:not(.eyebrow){color:var(--muted);margin-bottom:10px}
.ax-safe{margin-top:clamp(28px,4vw,48px)}

/* ======================= /opcoes/ ======================= */
.op{padding-bottom:clamp(64px,9vw,120px)}
.op-q{font-size:clamp(28px,3.4vw,44px);letter-spacing:-.025em;margin-bottom:22px}
.op-pick{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:10px}
.op-pick button{min-height:52px;padding:0 22px;border-radius:999px;border:1px solid var(--line-2);background:transparent;cursor:pointer;font-size:15px;font-weight:600;color:var(--muted);transition:border-color .25s,color .25s,background .25s,transform .35s var(--ease-out)}
.op-pick button:hover{border-color:var(--green);color:var(--ink);transform:translateY(-2px)}
.op-pick button[aria-pressed="true"]{background:var(--green);border-color:var(--green);color:var(--bg)}
.op-pick button:active{transform:scale(.98)}
.op-panels{margin-top:clamp(24px,3vw,40px)}
.op-panel{display:grid;gap:22px 56px;padding:clamp(24px,3vw,36px) 0;border-top:1px solid var(--line)}
@media (min-width:980px){.op-panel{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);align-items:start}}
.op-panel h3{font-size:clamp(32px,4.4vw,60px);margin-top:14px;max-width:14ch}
.op-panel .lead{margin-top:18px;max-width:46ch}
.op-panel .actions{margin-top:22px}
html.js .op:not(.is-live) .op-panel+.op-panel{display:none}
.op.is-live .op-panel{animation:jx-in .6s var(--ease-out) both}
.op-steps{list-style:none;margin:26px 0 0;padding:0;counter-reset:s;max-width:52ch}
.op-steps li{counter-increment:s;display:grid;grid-template-columns:40px 1fr;padding:12px 0;border-top:1px solid var(--line);font-size:16px}
.op-steps li::before{content:"0" counter(s);font-family:var(--mono);font-size:12px;letter-spacing:.14em;color:var(--green);padding-top:4px}
.op-rules{margin-top:clamp(40px,6vw,72px)}
html:not(.js) .op-pick{display:none}

/* ======================= /duvidas/ ======================= */
@media (min-width:900px){.fq-toolbar{grid-template-columns:minmax(0,1fr) auto}}
.fq-groups{border-bottom:1px solid var(--line)}
.fq-group{display:grid;gap:8px 48px;padding:clamp(24px,3vw,40px) 0;border-top:1px solid var(--line)}
@media (min-width:980px){.fq-group{grid-template-columns:minmax(0,.32fr) minmax(0,1fr)}.fq-group h2{position:sticky;top:calc(var(--header) + 24px);align-self:start}}
.fq-group h2{font-size:clamp(22px,2.4vw,30px);letter-spacing:-.02em;color:var(--green)}
.fq-item{border-bottom:1px solid var(--line)}
.fq-item:last-child{border-bottom:0}
.fq-item summary{list-style:none;display:grid;grid-template-columns:1fr 28px;gap:16px;align-items:center;min-height:64px;padding:16px 0;cursor:pointer;border-radius:8px}
.fq-item summary::-webkit-details-marker{display:none}
.fq-item .q{font-size:clamp(17px,1.4vw,20px);font-weight:600;letter-spacing:-.01em;transition:color .25s,transform .5s var(--ease-out)}
.fq-item summary:hover .q{color:var(--green);transform:translateX(4px)}
.fq-item .pm{width:28px;height:28px;border-radius:50%;border:1px solid var(--line-2);position:relative;transition:border-color .25s,transform .45s var(--ease-out)}
.fq-item .pm::before,.fq-item .pm::after{content:"";position:absolute;left:8px;right:8px;top:13px;height:1.5px;background:var(--ink);border-radius:2px}
.fq-item .pm::after{transform:rotate(90deg);transition:transform .45s var(--ease-out)}
.fq-item summary:hover .pm{border-color:var(--green)}
.fq-item[open] .pm{border-color:var(--green);transform:rotate(180deg)}
.fq-item[open] .pm::after{transform:rotate(0)}
.fq-item .a{padding:0 44px 24px 0;display:grid;gap:12px;justify-items:start}
.fq-item[open] .a{animation:ax-in .45s var(--ease-out)}
.fq-item .a p{color:var(--muted);max-width:62ch}
.fq-item:target summary .q{color:var(--green)}
.fq .empty{margin-top:24px}

/* ======================= /privacidade/ e /termos/ ======================= */
.lg-toc .k{font-family:var(--mono);font-size:11.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--green)}
/* resumo em quatro fatos: a primeira coisa que o visitante lê, antes do texto corrido */
.lg-facts{margin:0 0 clamp(40px,6vw,72px);display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border:1px solid var(--line);border-radius:var(--r);background:var(--bg-2);overflow:hidden}
.lg-facts>div{display:grid;gap:8px;align-content:start;padding:18px 16px;border-top:1px solid var(--line)}
.lg-facts>div:nth-child(-n+2){border-top:0}
.lg-facts>div:nth-child(even){border-left:1px solid var(--line)}
.lg-facts dt{font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-weight:600}
.lg-facts dd{margin:0;font-size:clamp(16px,1.6vw,20px);line-height:1.25;color:var(--ink);font-weight:600;letter-spacing:-.01em;text-wrap:balance}
.lg-facts>div:first-child dd::before{content:"";display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--green);box-shadow:0 0 10px var(--green-glow);margin-right:10px;vertical-align:2px}
@media (min-width:900px){.lg-facts{grid-template-columns:repeat(4,minmax(0,1fr))}.lg-facts>div{padding:24px 26px;border-top:0}.lg-facts>div+div{border-left:1px solid var(--line)}}
.lg-grid{display:grid;gap:32px 72px}
@media (min-width:980px){.lg-grid{grid-template-columns:260px minmax(0,1fr)}.lg-toc{position:sticky;top:calc(var(--header) + 24px);align-self:start}}
.lg-toc{border:1px solid var(--line);border-radius:var(--r);padding:18px 20px}
.lg-toc ol{list-style:none;margin:10px 0 0;padding:0}
.lg-toc a{display:grid;grid-template-columns:32px 1fr;align-items:center;min-height:40px;font-size:14px;color:var(--muted);text-decoration:none;transition:color .2s}
.lg-toc a:hover{color:var(--green)}
.lg-toc .n{font-family:var(--mono);font-size:12px;color:var(--faint)}
.lg-body{max-width:72ch}
.lg-sec{padding:28px 0;border-top:1px solid var(--line)}
.lg-sec:first-child{border-top:0;padding-top:0}
.lg-sec h2{font-size:clamp(22px,2.4vw,30px);letter-spacing:-.02em}
.lg-sec h2 .n{font-family:var(--mono);font-size:13px;color:var(--green);letter-spacing:.12em;margin-right:14px;vertical-align:5px}
.lg-sec p{margin-top:12px;color:var(--muted)}
.lg-sec .link-arrow{margin-top:16px}
.lg-list{list-style:none;margin:14px 0 0;padding:0;display:grid;gap:10px}
.lg-list li{position:relative;padding-left:22px;color:var(--muted)}
.lg-list li::before{content:"";position:absolute;left:0;top:.62em;width:10px;height:2px;border-radius:1px;background:var(--green)}

/* ======================= /comparar/ · portão ======================= */
.cx-gate{margin-top:28px;display:grid;gap:16px 28px;padding:20px 24px;border:1px dashed var(--line-2);border-radius:var(--r);max-width:980px}
@media (min-width:900px){.cx-gate{grid-template-columns:auto minmax(0,1fr) auto;align-items:center}}
.cx-gate h2{font-size:20px;letter-spacing:-.01em;margin-bottom:4px}
.cx-meter{display:flex;gap:6px}
.cx-meter span{width:34px;height:6px;border-radius:3px;background:var(--line-2)}
.cx-meter span.on{background:var(--green);box-shadow:0 0 10px var(--green-glow)}

/* ======================= movimento reduzido ======================= */
@media (prefers-reduced-motion:reduce){
  .ax-preview.is-new .ax-signal,.ax-preview.is-new .ax-bubble,.fq-item[open] .a,.op.is-live .op-panel{animation:none}
  .ix-index a::after,.ab-ledger li::after,.ix-index .t,.fq-item .q{transition:none}
}
html.reduce-motion .ax-preview.is-new .ax-signal,html.reduce-motion .ax-preview.is-new .ax-bubble,html.reduce-motion .fq-item[open] .a,html.reduce-motion .op.is-live .op-panel{animation:none}
html.reduce-motion .ix-index a::after,html.reduce-motion .ab-ledger li::after,html.reduce-motion .ix-index .t,html.reduce-motion .fq-item .q{transition:none}

/* P2.9: slogan como linha de apoio fora do H1 em /sobre/ */
.ix-sub{margin-top:14px;font-size:clamp(20px,2vw,28px);font-weight:700;letter-spacing:-.02em;color:var(--green)}
/* P2.10: fatos verificáveis (sem selo, depoimento ou foto inventada) */
.ab-proof-grid{list-style:none;margin:0;padding:0;display:grid;gap:0;border-top:1px solid var(--line)}
@media (min-width:760px){.ab-proof-grid{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:clamp(24px,4vw,56px)}}
@media (min-width:1100px){.ab-proof-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
.ab-proof-grid li{display:grid;align-content:start;gap:6px;padding:clamp(20px,2.6vw,30px) 0;border-bottom:1px solid var(--line)}
.ab-proof-grid .k{font-family:var(--mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--green)}
.ab-proof-grid .v{font-size:clamp(22px,2.2vw,28px);font-weight:700;letter-spacing:-.02em;color:var(--ink);line-height:1.15}
.ab-proof-grid .d{color:var(--muted);font-size:15px;max-width:42ch}
.ab-proof-grid .link-arrow{justify-self:start;margin-top:6px}
