/* ============================================================
   POSTO SEGURO — Páginas internas (Alíquotas ICMS · Links Rápidos)
   Reaproveita tokens, nav, botões e footer de editorial.css.
   ============================================================ */

/* nav sempre sólida nas páginas internas */
.nav.solid{ background:rgba(10,10,11,.9); backdrop-filter:blur(16px) saturate(1.2); border-bottom-color:var(--line-d); }
.nav-links a.cur{ color:#fff; }
.nav-links a.cur::after{ content:""; display:block; height:2px; background:var(--yellow); margin-top:5px; }

/* ---- hero da página interna ---- */
.page-hero{ padding:calc(84px + clamp(56px,9vw,120px)) 0 clamp(40px,5vw,64px); position:relative; overflow:hidden; }
.page-hero .glow{ position:absolute; border-radius:50%; filter:blur(80px); pointer-events:none; }
.page-hero .glow.a{ width:520px; height:520px; background:rgba(255,212,0,.10); top:-180px; right:-120px; }
.page-hero .ph-in{ position:relative; }
.page-hero .crumbs{ font-family:var(--f-mono); font-size:12px; letter-spacing:.16em; text-transform:uppercase; color:var(--txt-d-dim); display:flex; gap:10px; align-items:center; margin-bottom:26px; }
.page-hero .crumbs a{ color:var(--txt-d); }
.page-hero .crumbs a:hover{ color:#fff; }
.page-hero h1{ font-size:clamp(40px,7vw,86px); line-height:.94; }
.page-hero h1 em{ font-style:normal; color:var(--yellow); }
.page-hero .lead{ margin-top:24px; max-width:60ch; color:var(--txt-d); font-size:clamp(16px,1.8vw,19px); line-height:1.6; }

.page-body{ padding:clamp(8px,2vw,24px) 0 clamp(80px,10vw,130px); }

/* ====================== ICMS — MAPA ====================== */
.icms-layout{ display:grid; grid-template-columns:1.35fr 1fr; gap:clamp(28px,4vw,60px); align-items:start; }

.map-card{ background:var(--ink-3); border:1px solid var(--line-d); border-radius:22px; padding:clamp(20px,3vw,34px); }
.br-map-wrap{ position:relative; }
#brMap{ display:block; width:100%; height:auto; }
#brMap .speck{ fill:transparent; }
#brMap .state{ fill:#24242a; stroke:#0A0A0B; stroke-width:.5; }
#brMap .uf{ cursor:pointer; stroke:#0A0A0B; stroke-width:.5; transition:filter .16s, stroke .16s, stroke-width .16s; }
#brMap .uf:hover{ filter:brightness(1.18); }
#brMap .uf.active{ stroke:#fff; stroke-width:1.4; filter:brightness(1.08); }

/* tooltip que segue o cursor */
.map-tip{ position:absolute; z-index:6; pointer-events:none; transform:translate(-50%,-145%);
  background:#0A0A0B; border:1px solid var(--line-d); border-radius:9px; padding:7px 11px;
  font-family:var(--f-mono); font-size:12px; color:#fff; white-space:nowrap;
  box-shadow:0 8px 24px -10px rgba(0,0,0,.8); opacity:0; transition:opacity .14s; }
.map-tip.show{ opacity:1; }
.map-tip b{ color:var(--yellow); }

/* legenda */
.map-legend{ display:flex; align-items:center; gap:18px; flex-wrap:wrap; margin-top:22px; font-family:var(--f-mono); font-size:12px; color:var(--txt-d); }
.map-legend .scale{ display:flex; align-items:center; gap:0; border-radius:6px; overflow:hidden; }
.map-legend .scale i{ width:34px; height:12px; display:block; }
.map-legend .ends{ display:flex; justify-content:space-between; gap:8px; }

/* painel de detalhe */
.uf-panel{ background:var(--ink-card); border:1px solid var(--line-d); border-radius:22px; padding:clamp(26px,3vw,38px); position:sticky; top:104px; }
.uf-panel .empty{ color:var(--txt-d); font-size:15px; line-height:1.6; }
.uf-panel .empty b{ color:#fff; font-weight:700; }
.uf-detail{ display:none; }
.uf-detail.show{ display:block; }
.uf-detail .reg{ font-family:var(--f-mono); font-size:12px; letter-spacing:.16em; text-transform:uppercase; color:var(--yellow); }
.uf-detail h2{ font-size:clamp(30px,4vw,46px); margin-top:10px; line-height:.96; }
.uf-detail .big{ display:flex; align-items:baseline; gap:8px; margin-top:24px; padding-bottom:24px; border-bottom:1px solid var(--line-d); }
.uf-detail .big .v{ font-family:var(--f-disp); font-weight:900; font-size:clamp(48px,8vw,76px); letter-spacing:-.04em; line-height:.9; }
.uf-detail .big .u{ font-family:var(--f-disp); font-weight:900; font-size:28px; color:var(--yellow); }
.uf-detail .big .lab{ font-family:var(--f-mono); font-size:12px; color:var(--txt-d-dim); text-transform:uppercase; letter-spacing:.12em; margin-left:auto; align-self:center; max-width:11ch; text-align:right; }
.uf-detail dl{ margin:24px 0 0; display:grid; grid-template-columns:1fr auto; gap:14px 16px; }
.uf-detail dt{ color:var(--txt-d); font-size:14px; }
.uf-detail dd{ margin:0; font-family:var(--f-mono); font-weight:600; color:#fff; font-size:14px; }
.uf-detail .src{ margin-top:26px; }

.disc{ margin-top:30px; border:1px solid var(--line-d); border-radius:16px; padding:20px 24px; background:rgba(255,212,0,.05);
  font-family:var(--f-mono); font-size:12.5px; line-height:1.6; color:var(--txt-d); }
.disc b{ color:#fff; font-weight:700; }
.disc .lbl{ color:var(--yellow); }

@media(max-width:880px){
  .icms-layout{ grid-template-columns:1fr; }
  .uf-panel{ position:static; }
}

/* ====================== LINKS RÁPIDOS ====================== */
.lr-cats{ display:flex; flex-direction:column; gap:clamp(40px,5vw,64px); }

.lr-cat-hd{ display:flex; align-items:center; gap:16px; margin-bottom:clamp(18px,2vw,24px);
  padding-bottom:18px; border-bottom:1px solid var(--line-d); }
.lr-cat-hd .ic{ width:48px; height:48px; border-radius:13px; flex:none; display:grid; place-items:center;
  color:var(--yellow); background:rgba(255,212,0,.10); border:1px solid rgba(255,212,0,.22); }
.lr-cat-hd .tt h3{ font-size:clamp(20px,2.4vw,25px); letter-spacing:-.02em; line-height:1.1; }
.lr-cat-hd .tt p{ color:var(--txt-d-dim); font-family:var(--f-mono); font-size:11.5px;
  letter-spacing:.08em; text-transform:uppercase; margin-top:5px; }

.lr-tiles{ display:grid; grid-template-columns:repeat(auto-fill,minmax(270px,1fr)); gap:clamp(12px,1.4vw,16px); }
.lr-tile{ position:relative; overflow:hidden; isolation:isolate;
  display:flex; flex-direction:column; gap:16px; min-height:128px;
  padding:22px 22px 20px; border-radius:16px;
  background:linear-gradient(165deg,var(--ink-3),var(--ink-card) 90%);
  border:1px solid var(--line-d);
  transition:transform .3s var(--ease), border-color .3s, box-shadow .3s; }
.lr-tile::before{ content:""; position:absolute; inset:0 auto auto 0; width:100%; height:2px;
  background:linear-gradient(90deg,var(--yellow),rgba(255,212,0,0));
  transform:scaleX(0); transform-origin:left; transition:transform .35s var(--ease); }
.lr-tile .t{ font-family:var(--f-disp); font-weight:600; font-size:16px; line-height:1.3; color:#fff;
  padding-right:26px; letter-spacing:-.01em; text-wrap:balance; }
.lr-tile .d{ margin-top:auto; align-self:flex-start; font-family:var(--f-mono); font-size:10.5px;
  letter-spacing:.02em; color:var(--txt-d); background:rgba(255,255,255,.05);
  border:1px solid var(--line-d); border-radius:999px; padding:5px 11px; white-space:nowrap; max-width:100%;
  overflow:hidden; text-overflow:ellipsis; transition:color .2s, border-color .2s, background .2s; }
.lr-tile .d.on{ color:var(--yellow); border-color:rgba(255,212,0,.32); background:rgba(255,212,0,.08); }
.lr-tile .go{ position:absolute; top:20px; right:20px; color:var(--txt-d); opacity:.55;
  transition:transform .3s var(--ease), opacity .2s, color .2s; }
.lr-tile:hover{ transform:translateY(-4px); border-color:rgba(255,212,0,.35);
  box-shadow:0 20px 48px -26px rgba(0,0,0,.7); }
.lr-tile:hover::before{ transform:scaleX(1); }
.lr-tile:hover .go{ transform:translate(3px,-3px); opacity:1; color:var(--yellow); }
.lr-tile:hover .d:not(.on){ color:#fff; border-color:rgba(255,255,255,.22); }

/* CTA de retorno comum às páginas internas */
.back-cta{ margin-top:clamp(48px,6vw,80px); border-top:1px solid var(--line-d); padding-top:clamp(32px,4vw,52px); display:flex; align-items:center; justify-content:space-between; gap:24px; flex-wrap:wrap; }
.back-cta p{ font-family:var(--f-disp); font-weight:900; font-size:clamp(22px,3vw,32px); letter-spacing:-.03em; }

/* ====================== SOBRE NÓS ====================== */
/* manifesto de abertura */
.ab-manifesto{ padding:clamp(20px,3vw,40px) 0 clamp(56px,7vw,96px); }
.ab-manifesto .lead-xl{ font-family:var(--f-disp); font-weight:700; letter-spacing:-.03em;
  font-size:clamp(26px,4.2vw,52px); line-height:1.08; max-width:24ch; text-wrap:balance; }
.ab-manifesto .lead-xl em{ font-style:normal; color:var(--yellow); }
.ab-manifesto .sub{ margin-top:28px; max-width:62ch; color:var(--txt-d); font-size:clamp(16px,1.8vw,19px); line-height:1.7; }
.ab-pills{ display:flex; flex-wrap:wrap; gap:12px; margin-top:34px; }
.ab-pills span{ display:inline-flex; align-items:center; gap:10px; padding:11px 18px; border-radius:999px;
  border:1px solid var(--line-d); background:var(--ink-3); color:#fff; font-size:14px; }
.ab-pills span::before{ content:""; width:7px; height:7px; border-radius:50%; background:var(--yellow); flex:none; }

/* faixa de números */
.ab-stats{ display:grid; grid-template-columns:repeat(4,1fr); gap:clamp(16px,2vw,24px);
  border-top:1px solid var(--line-d); border-bottom:1px solid var(--line-d); padding:clamp(34px,4vw,52px) 0; }
.ab-stat .v{ font-family:var(--f-disp); font-weight:900; letter-spacing:-.04em; line-height:.9;
  font-size:clamp(38px,5.5vw,68px); }
.ab-stat .v em{ font-style:normal; color:var(--yellow); }
.ab-stat .k{ margin-top:14px; font-family:var(--f-mono); font-size:12px; letter-spacing:.1em;
  text-transform:uppercase; color:var(--txt-d); line-height:1.5; max-width:22ch; }

/* história: heading sticky + narrativa/timeline */
.ab-section{ padding:clamp(56px,8vw,110px) 0; }
.ab-section.ln{ border-top:1px solid var(--line-d); }
.ab-split{ display:grid; grid-template-columns:.85fr 1.15fr; gap:clamp(32px,5vw,72px); align-items:start; }
.ab-head{ position:sticky; top:104px; }
.ab-kicker{ font-family:var(--f-mono); font-size:12px; letter-spacing:.18em; text-transform:uppercase;
  color:var(--yellow); display:flex; align-items:center; gap:10px; }
.ab-kicker::before{ content:""; width:26px; height:1px; background:var(--yellow); }
.ab-head h2{ margin-top:18px; font-size:clamp(32px,4.6vw,56px); letter-spacing:-.03em; line-height:.98; }
.ab-head h2 em{ font-style:normal; color:var(--yellow); }
.ab-head .note{ margin-top:20px; color:var(--txt-d); font-size:15px; line-height:1.65; max-width:34ch; }

.ab-prose p{ color:var(--txt-d); font-size:clamp(16px,1.8vw,18px); line-height:1.8; text-wrap:pretty; }
.ab-prose p + p{ margin-top:20px; }
.ab-prose strong{ color:#fff; font-weight:600; }

/* timeline */
.timeline{ margin-top:40px; display:flex; flex-direction:column; gap:0; }
.tl-item{ position:relative; padding:0 0 36px 38px; border-left:1px solid var(--line-d); }
.tl-item:last-child{ padding-bottom:0; }
.tl-item::before{ content:""; position:absolute; left:-6px; top:4px; width:11px; height:11px; border-radius:50%;
  background:var(--yellow); box-shadow:0 0 0 4px rgba(255,212,0,.14); }
.tl-item .yr{ font-family:var(--f-mono); font-weight:600; font-size:13px; letter-spacing:.06em; color:var(--yellow); }
.tl-item h4{ margin-top:8px; font-size:20px; letter-spacing:-.01em; }
.tl-item p{ margin-top:8px; color:var(--txt-d); font-size:15px; line-height:1.7; max-width:48ch; }

/* fundadores */
.founders{ display:grid; grid-template-columns:repeat(2,1fr); gap:clamp(16px,2vw,22px); }
.fdr{ background:linear-gradient(165deg,var(--ink-3),var(--ink-card) 90%); border:1px solid var(--line-d);
  border-radius:18px; padding:clamp(22px,2.4vw,28px); transition:border-color .3s, transform .3s var(--ease); }
.fdr:hover{ border-color:rgba(255,212,0,.3); transform:translateY(-3px); }
.fdr .mono{ width:54px; height:54px; border-radius:14px; display:grid; place-items:center;
  font-family:var(--f-disp); font-weight:900; font-size:20px; letter-spacing:-.02em; color:var(--yellow);
  background:rgba(255,212,0,.10); border:1px solid rgba(255,212,0,.22); }
.fdr h4{ margin-top:18px; font-size:19px; letter-spacing:-.01em; }
.fdr .role{ margin-top:6px; font-family:var(--f-mono); font-size:11.5px; letter-spacing:.08em;
  text-transform:uppercase; color:var(--txt-d-dim); }
.fdr p{ margin-top:14px; color:var(--txt-d); font-size:14px; line-height:1.65; }

/* valores */
.values{ display:grid; grid-template-columns:repeat(3,1fr); gap:clamp(14px,1.6vw,18px); }
.val{ position:relative; overflow:hidden; padding:clamp(22px,2.4vw,28px); border-radius:16px;
  background:var(--ink-3); border:1px solid var(--line-d); transition:border-color .3s, background .3s; }
.val:hover{ border-color:rgba(255,212,0,.3); }
.val .ic{ width:44px; height:44px; border-radius:12px; display:grid; place-items:center; color:var(--yellow);
  background:rgba(255,212,0,.10); border:1px solid rgba(255,212,0,.22); }
.val h4{ margin-top:18px; font-size:18px; letter-spacing:-.01em; }
.val p{ margin-top:10px; color:var(--txt-d); font-size:14px; line-height:1.65; }

@media(max-width:880px){
  .ab-split{ grid-template-columns:1fr; gap:36px; }
  .ab-head{ position:static; }
  .ab-stats{ grid-template-columns:repeat(2,1fr); gap:32px 20px; }
  .founders{ grid-template-columns:1fr; }
  .values{ grid-template-columns:1fr; }
}

/* localização + mapa */
.ab-map{ display:grid; grid-template-columns:.9fr 1.1fr; gap:clamp(28px,4vw,56px); align-items:stretch; }
.ab-map .info .ab-kicker{ margin-bottom:18px; }
.ab-map .info h2{ font-size:clamp(30px,4vw,48px); letter-spacing:-.03em; line-height:.98; }
.ab-map .info h2 em{ font-style:normal; color:var(--yellow); }
.ab-map .addr{ margin-top:26px; display:flex; flex-direction:column; gap:18px; }
.ab-map .addr .row{ display:flex; gap:14px; align-items:flex-start; }
.ab-map .addr .ic{ width:40px; height:40px; border-radius:11px; flex:none; display:grid; place-items:center;
  color:var(--yellow); background:rgba(255,212,0,.10); border:1px solid rgba(255,212,0,.22); }
.ab-map .addr .row b{ display:block; font-size:16px; color:#fff; letter-spacing:-.01em; }
.ab-map .addr .row span{ display:block; margin-top:4px; color:var(--txt-d); font-size:14.5px; line-height:1.55; }
.ab-map .addr .row a{ color:var(--txt-d); }
.ab-map .addr .row a:hover{ color:var(--yellow); }
.ab-map .info .btn{ margin-top:30px; }
.ab-map .frame{ position:relative; border-radius:22px; overflow:hidden; border:1px solid var(--line-d);
  min-height:380px; background:var(--ink-3); }
.ab-map .frame iframe{ position:absolute; inset:0; width:100%; height:100%; border:0; display:block; }

@media(max-width:880px){
  .ab-map{ grid-template-columns:1fr; }
  .ab-map .frame{ min-height:320px; height:320px; }
}

/* ====================== DOCUMENTO LEGAL ====================== */
.legal-layout{ display:grid; grid-template-columns:240px 1fr; gap:clamp(36px,5vw,72px); align-items:start; }
.legal-toc{ position:sticky; top:104px; }
.legal-toc .eff{ font-family:var(--f-mono); font-size:12px; letter-spacing:.04em; line-height:1.6; color:var(--txt-d); border:1px solid var(--line-d); border-radius:14px; padding:16px 18px; margin-bottom:22px; background:rgba(255,212,0,.05); }
.legal-toc .eff b{ display:block; color:var(--yellow); font-weight:700; text-transform:uppercase; letter-spacing:.12em; font-size:11px; margin-bottom:6px; }
.legal-toc nav{ display:flex; flex-direction:column; gap:2px; }
.legal-toc nav a{ display:block; padding:11px 14px; border-radius:10px; color:var(--txt-d); font-size:14px; line-height:1.4; transition:color .2s, background .2s; }
.legal-toc nav a:hover{ color:#fff; background:var(--ink-3); }
.legal-toc nav a.cur{ color:var(--yellow); background:var(--ink-3); }

.legal-doc{ max-width:74ch; }
.legal-doc section{ scroll-margin-top:120px; }
.legal-doc section + section{ margin-top:clamp(40px,5vw,64px); padding-top:clamp(40px,5vw,64px); border-top:1px solid var(--line-d); }
.legal-doc h2{ font-size:clamp(24px,3.2vw,34px); letter-spacing:-.025em; line-height:1.05; display:flex; align-items:baseline; gap:14px; }
.legal-doc h2 .n{ font-family:var(--f-mono); font-size:14px; font-weight:600; color:var(--yellow); flex:none; }
.legal-doc p{ margin-top:18px; color:var(--txt-d); font-size:clamp(15px,1.7vw,17px); line-height:1.75; text-wrap:pretty; }
.legal-doc ul{ margin:18px 0 0; padding:0; list-style:none; display:flex; flex-direction:column; gap:12px; }
.legal-doc ul li{ position:relative; padding-left:26px; color:var(--txt-d); font-size:clamp(15px,1.7vw,17px); line-height:1.7; }
.legal-doc ul li::before{ content:""; position:absolute; left:4px; top:11px; width:7px; height:7px; border-radius:2px; background:var(--yellow); }
.legal-doc strong{ color:#fff; font-weight:600; }
.legal-doc .help{ margin-top:clamp(40px,5vw,64px); border:1px solid var(--line-d); border-radius:18px; padding:clamp(24px,3vw,32px); background:var(--ink-3); display:flex; align-items:center; justify-content:space-between; gap:20px; flex-wrap:wrap; }
.legal-doc .help b{ font-family:var(--f-disp); font-weight:900; font-size:clamp(19px,2.4vw,24px); letter-spacing:-.02em; color:#fff; }
.legal-doc .help span{ display:block; color:var(--txt-d); font-size:14px; margin-top:4px; font-family:var(--f-mono); }
.legal-doc .cstate{ font-family:var(--f-mono); font-size:13.5px; color:var(--yellow); border-left:2px solid var(--yellow); padding-left:14px; }

@media(max-width:880px){
  .legal-layout{ grid-template-columns:1fr; }
  .legal-toc{ position:static; }
  .legal-toc nav{ display:none; }
}

/* nav das páginas internas no mobile: faixa rolável (sem hambúrguer) */
@media(max-width:760px){
  .nav.solid .nav-inner{ gap:12px; }
  .nav.solid .nav-links{ display:flex; gap:15px; flex:1; min-width:0; overflow-x:auto;
    scrollbar-width:none; -ms-overflow-style:none; -webkit-overflow-scrolling:touch; }
  .nav.solid .nav-links::-webkit-scrollbar{ display:none; }
  .nav.solid .nav-links a{ white-space:nowrap; font-size:11px; }
}
