/* ═══════════════════════════════════════════════════════════════════
   site-2026.css — o desenho novo do site público (23-Out-2026)
   ═══════════════════════════════════════════════════════════════════
   Proposta A escolhida pelo João: cores da marca, refinado — heróis
   azul-noite, secções em azul-gelo, nunca branco liso (regra de 22-Out).
   Par do js/site-2026.js. Tudo com o prefixo s26- para não tocar nas
   regras antigas (marca-2026.css, premium-2026.css, estilos do index).
   Pré-visualização de onde nasceu: GestorPRO\site-novo\previa.html. */

.s26{
  --s26-verm:#EC1C24; --s26-verm2:#CA1118; --s26-celeste:#3BB2F6; --s26-azul:#1B6FC9; --s26-noite:#061224;
  --s26-fundo:#F3F8FE; --s26-fundo2:#E8F1FB; --s26-cartao:#FBFDFF; --s26-linha:#D6E3F2;
  --s26-tinta:#0B1628; --s26-tinta2:#43556E; --s26-suave:#6B7C93;
  --s26-raio:18px; --s26-sombra:0 18px 50px rgba(6,18,36,.14);
  --s26-heroi:radial-gradient(1200px 600px at 85% -10%,rgba(59,178,246,.28),transparent 60%),
              radial-gradient(800px 500px at -10% 110%,rgba(236,28,36,.22),transparent 60%),
              linear-gradient(160deg,#071A33 0%,#061224 60%,#0A1E3C 100%);
  font-family:'Plus Jakarta Sans','Segoe UI',system-ui,-apple-system,sans-serif;
  color:var(--s26-tinta);line-height:1.6;box-sizing:border-box;
}
.s26 *,.s26 *::before,.s26 *::after{box-sizing:border-box}
.s26 img{max-width:100%;height:auto;display:block}
.s26-wrap{max-width:1180px;margin:0 auto;padding:0 20px}

/* ── Botões ─────────────────────────────────────────────────────── */
.s26-btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:13px 22px;border-radius:12px;font-weight:700;
  font-size:15px;text-decoration:none;border:1px solid transparent;cursor:pointer;transition:transform .18s,box-shadow .18s,background .18s;white-space:nowrap;font-family:inherit;line-height:1.2}
.s26-btn:hover{transform:translateY(-2px)}
.s26-btn:active{transform:none}
.s26-btn:focus-visible{outline:3px solid rgba(59,178,246,.55);outline-offset:3px}
.s26-btn-verm{background:linear-gradient(135deg,#EC1C24,#CA1118);color:#fff!important;box-shadow:0 10px 24px rgba(202,17,24,.35)}
.s26-btn-verm:hover{box-shadow:0 14px 30px rgba(202,17,24,.45)}
.s26-btn-linha{border-color:rgba(255,255,255,.28);color:#fff!important;background:rgba(255,255,255,.04)}
.s26-btn-linha:hover{background:rgba(255,255,255,.1)}
.s26-btn-claro{background:var(--s26-cartao);color:var(--s26-tinta)!important;border-color:var(--s26-linha)}

/* ── Herói ──────────────────────────────────────────────────────── */
.s26-heroi{background:var(--s26-heroi);color:#fff;position:relative;overflow:hidden;padding:84px 0 96px}
.s26-heroi::after{content:"";position:absolute;inset:0;pointer-events:none;
  background-image:linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px);
  background-size:56px 56px;-webkit-mask-image:radial-gradient(ellipse at 60% 30%,#000 20%,transparent 70%);mask-image:radial-gradient(ellipse at 60% 30%,#000 20%,transparent 70%)}
.s26-heroi .s26-wrap{display:grid;grid-template-columns:1.02fr 1fr;gap:48px;align-items:center;position:relative;z-index:1}
.s26-heroi .s26-wrap>*{min-width:0}
.s26-selo-topo{display:inline-flex;align-items:center;gap:9px;padding:7px 14px 7px 8px;border-radius:99px;background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.16);font-size:13px;font-weight:600;color:#DCE8F7!important;text-decoration:none}
.s26-selo-topo b{background:#EC1C24;color:#fff;border-radius:99px;padding:2px 9px;font-size:11px;letter-spacing:.06em;text-transform:uppercase}
.s26-heroi h1{font-size:clamp(28px,3.8vw,44px);line-height:1.1;letter-spacing:-.035em;margin:22px 0 18px;font-weight:800;color:#fff;text-wrap:balance}
.s26-heroi h1 em{font-style:normal;background:linear-gradient(90deg,#7FD0FA,#3BB2F6 45%,#9CC8FF);-webkit-background-clip:text;background-clip:text;color:transparent}
.s26-heroi .s26-sub{font-size:clamp(16px,1.6vw,19px);color:#BFD0E6;max-width:560px;margin:0 0 30px}
.s26-accoes{display:flex;flex-wrap:wrap;gap:12px}
.s26-provas{display:flex;flex-wrap:wrap;gap:18px 26px;margin-top:34px;color:#A9BDD6;font-size:13.5px}
.s26-provas span{display:inline-flex;align-items:center;gap:8px}
.s26-provas i{color:#3BB2F6}
.s26-palco{position:relative;perspective:1400px}
.s26-palco img.s26-portatil{filter:drop-shadow(0 40px 60px rgba(0,0,0,.45));transform:rotateY(-8deg) rotateX(4deg);transition:transform .6s cubic-bezier(.2,.7,.2,1)}
.s26-palco:hover img.s26-portatil{transform:rotateY(-2deg) rotateX(1deg)}
.s26-flutua{position:absolute;display:flex;gap:11px;align-items:center;padding:12px 15px;border-radius:14px;
  background:rgba(255,255,255,.96);color:#0B1628;box-shadow:0 18px 40px rgba(0,0,0,.3);font-size:13px;line-height:1.35;animation:s26-boia 6s ease-in-out infinite}
.s26-flutua i{width:36px;height:36px;border-radius:10px;display:grid;place-items:center;font-size:16px;color:#fff;flex-shrink:0}
.s26-flutua b{display:block;font-size:14px}
.s26-flutua small{color:#5B6B82}
.s26-flutua.s26-f1{left:-18px;top:14%}
.s26-flutua.s26-f1 i{background:linear-gradient(135deg,#10B981,#047857)}
.s26-flutua.s26-f2{right:-8px;bottom:12%;animation-delay:-3s}
.s26-flutua.s26-f2 i{background:linear-gradient(135deg,#EC1C24,#CA1118)}
/* No index o menu é fixo (nav{position:fixed}) e tem a faixa de contactos por cima: o herói começa abaixo dos dois */
.s26-heroi.s26-sob-menu{padding-top:168px}
@media (max-width:900px){ .s26-heroi.s26-sob-menu{padding-top:132px} }
@keyframes s26-boia{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}
@media (max-width:980px){
  .s26-heroi{padding:56px 0 70px}
  .s26-heroi .s26-wrap{grid-template-columns:1fr}
  .s26-palco{max-width:620px;margin:0 auto}
  .s26-flutua.s26-f1{left:0}.s26-flutua.s26-f2{right:0}
}
@media (max-width:520px){ .s26-flutua{display:none} .s26-heroi .s26-accoes .s26-btn{flex:1 1 100%} }

/* ── Secções ────────────────────────────────────────────────────── */
.s26-sec{padding:96px 0;background:var(--s26-fundo)}
.s26-sec.s26-alt{background:var(--s26-fundo2)}
.s26-sec.s26-escura{background:linear-gradient(165deg,#081B35,#061224);color:#EAF2FC}
.s26-olho{display:inline-flex;align-items:center;gap:8px;font-size:12.5px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#1B6FC9}
.s26-escura .s26-olho{color:#3BB2F6}
.s26-tit{max-width:760px;margin:0 auto 52px;text-align:center}
.s26-tit h2{font-size:clamp(28px,3.6vw,44px);line-height:1.12;letter-spacing:-.03em;margin:12px 0 14px;font-weight:800;text-wrap:balance;color:inherit}
.s26-tit h2 span{color:#1B6FC9}
.s26-escura .s26-tit h2 span{color:#3BB2F6}
.s26-tit p{font-size:17px;color:var(--s26-tinta2);margin:0}
.s26-escura .s26-tit p{color:#A9BBD3}
@media (max-width:640px){ .s26-sec{padding:68px 0} .s26-tit{margin-bottom:36px} }
.s26-cartao{background:var(--s26-cartao);border:1px solid var(--s26-linha);border-radius:var(--s26-raio);padding:26px;box-shadow:var(--s26-sombra)}
.s26-escura .s26-cartao{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.12);box-shadow:none;color:#EAF2FC}

/* ── Ferramentas ────────────────────────────────────────────────── */
.s26-duas{display:grid;grid-template-columns:1fr 1fr;gap:26px;align-items:start}
.s26-duas>*,.s26-grelha>*,.s26-linha-f>*{min-width:0}
@media (max-width:920px){ .s26-duas{grid-template-columns:1fr} }
.s26-campo{display:grid;gap:6px;margin-bottom:14px}
.s26-campo label{font-size:13px;font-weight:700;color:var(--s26-tinta2)}
.s26-escura .s26-campo label{color:#A9BBD3}
.s26 .s26-campo input,.s26 .s26-campo select,.s26 .s26-linha-f input,.s26 .s26-linha-f select{width:100%;padding:12px 14px;border-radius:11px;border:1px solid var(--s26-linha);
  background:var(--s26-fundo);color:var(--s26-tinta);font:inherit;font-size:15px;transition:border-color .2s,box-shadow .2s;margin:0;min-width:0}
.s26-escura .s26-campo input,.s26-escura .s26-campo select,.s26-escura .s26-linha-f input,.s26-escura .s26-linha-f select{background:rgba(0,0,0,.25);border-color:rgba(255,255,255,.12);color:#fff}
.s26 .s26-campo input:focus,.s26 .s26-campo select:focus,.s26 .s26-linha-f input:focus,.s26 .s26-linha-f select:focus{outline:none;border-color:#3BB2F6;box-shadow:0 0 0 4px rgba(59,178,246,.18)}
.s26-escura select option{color:#0B1628}
.s26-grelha{display:grid;gap:12px}
.s26-g-cli{grid-template-columns:1.4fr 1fr 1fr}
.s26-g-2{grid-template-columns:1fr 1fr}
@media (max-width:560px){ .s26-g-cli{grid-template-columns:1fr 1fr} .s26-g-cli>:first-child{grid-column:1 / -1} .s26-g-2{grid-template-columns:1fr} }

.s26-linhas{display:grid;gap:10px;margin-bottom:12px}
.s26-linha-f{display:grid;grid-template-columns:2.2fr .8fr 1.2fr 1fr 38px;gap:8px;align-items:center}
.s26 .s26-linha-f input,.s26 .s26-linha-f select{padding:10px 11px;font-size:14px;border-radius:10px}
.s26-linha-f button{width:38px;height:38px;border-radius:10px;border:1px solid rgba(255,255,255,.14);background:transparent;color:#F8A5A8;cursor:pointer}
.s26-cab-linhas{font-size:12px;font-weight:700;color:#8EA3BF;text-transform:uppercase;letter-spacing:.06em}
@media (max-width:560px){
  .s26-linha-f{grid-template-columns:1fr 1fr 38px}
  .s26 .s26-linha-f input.s26-l-desc{grid-column:1 / -1}
  .s26-cab-linhas{display:none}
}
.s26-mais{background:none;border:1px dashed rgba(255,255,255,.2);color:#C9D6E8;border-radius:10px;padding:10px 14px;cursor:pointer;font-weight:700;width:100%;font-family:inherit;font-size:14px}
.s26-mais:hover{border-color:#3BB2F6;color:#fff}

.s26-doc{background:#FCFDFE;color:#0B1628;border-radius:14px;padding:26px;box-shadow:0 30px 60px rgba(0,0,0,.35);position:relative;overflow:hidden;font-size:13px}
.s26-doc::before{content:"EXEMPLO · SEM VALOR FISCAL";position:absolute;top:44%;left:-10%;right:-10%;text-align:center;transform:rotate(-18deg);
  font-size:30px;font-weight:800;letter-spacing:.08em;color:rgba(236,28,36,.08);pointer-events:none}
.s26-doc-topo{display:flex;justify-content:space-between;gap:16px;border-bottom:2px solid #0B1628;padding-bottom:14px;margin-bottom:14px}
.s26-doc-topo .s26-emp{display:flex;gap:10px;align-items:center}
.s26-doc-topo .s26-emp img{width:38px;height:38px}
.s26-doc-topo .s26-tipo{text-align:right}
.s26-doc-topo .s26-tipo b{display:block;font-size:16px}
.s26-doc table{width:100%;border-collapse:collapse;margin:10px 0}
.s26-doc th{text-align:left;font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:#5B6B82;border-bottom:1px solid #D6E3F2;padding:6px 4px;background:none}
.s26-doc td{padding:7px 4px;border-bottom:1px solid #EEF3F9;vertical-align:top;color:#0B1628}
.s26-doc .s26-num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}
.s26-doc-pe{display:flex;justify-content:space-between;gap:16px;align-items:flex-end;margin-top:10px}
.s26-doc-pe .s26-qr{width:96px;height:96px;flex-shrink:0;background:#fff}
.s26-doc-pe .s26-qr img,.s26-doc-pe .s26-qr canvas{width:96px!important;height:96px!important}
.s26-totais{min-width:190px}
.s26-totais div{display:flex;justify-content:space-between;gap:16px;padding:3px 0}
.s26-totais .s26-total{font-size:16px;font-weight:800;border-top:2px solid #0B1628;margin-top:6px;padding-top:8px}
.s26-doc-nota{margin-top:12px;font-size:11px;color:#5B6B82;border-top:1px dashed #D6E3F2;padding-top:10px}
.s26-pisca{animation:s26-pisca .5s ease}
@keyframes s26-pisca{from{background:rgba(59,178,246,.25)}to{background:transparent}}
@media (max-width:480px){ .s26-doc{padding:18px} .s26-doc-pe{flex-direction:column;align-items:stretch} .s26-totais{min-width:0} }

.s26-resultado{display:grid;gap:10px}
.s26-res{display:flex;justify-content:space-between;gap:14px;padding:12px 16px;border-radius:12px;background:var(--s26-fundo);border:1px solid var(--s26-linha);font-variant-numeric:tabular-nums}
.s26-res span{color:var(--s26-tinta2)}
.s26-res.s26-menos b{color:#DC2626}
.s26-res.s26-grande{background:linear-gradient(135deg,#1B6FC9,#0B4F9C);color:#fff;border:0;padding:18px}
.s26-res.s26-grande span{color:#D5E6FA}
.s26-res.s26-grande b{font-size:24px}
.s26-barra{height:12px;border-radius:99px;overflow:hidden;display:flex;background:var(--s26-linha);margin:6px 0 4px}
.s26-barra i{display:block;height:100%;transition:width .5s cubic-bezier(.2,.7,.2,1)}
.s26-legenda{display:flex;flex-wrap:wrap;gap:14px;font-size:12.5px;color:var(--s26-tinta2)}
.s26-legenda span::before{content:"";display:inline-block;width:10px;height:10px;border-radius:3px;margin-right:6px;background:var(--c)}
.s26-nota{font-size:12.5px;color:var(--s26-suave);margin:12px 0 0}

/* Escolher o plano */
.s26-quiz{max-width:860px;margin:0 auto}
.s26-passo{display:none}
.s26-passo.s26-on{display:block;animation:s26-entra .35s ease both}
.s26-passo h3{font-size:22px;margin:0 0 18px;letter-spacing:-.01em;color:var(--s26-tinta)}
.s26-opcoes{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,190px),1fr));gap:12px}
.s26-opcao{text-align:left;border:1.5px solid var(--s26-linha);background:var(--s26-fundo);color:var(--s26-tinta);border-radius:14px;padding:18px;cursor:pointer;transition:all .2s;font-family:inherit}
.s26-opcao i{font-size:20px;color:#1B6FC9;display:block;margin-bottom:10px}
.s26-opcao b{display:block;font-size:15px}
.s26-opcao small{color:var(--s26-tinta2);font-size:13px}
.s26-opcao:hover{border-color:#1B6FC9;transform:translateY(-2px)}
.s26-progresso{display:flex;gap:6px;margin-bottom:22px}
.s26-progresso i{flex:1;height:5px;border-radius:99px;background:var(--s26-linha);transition:background .3s}
.s26-progresso i.s26-on{background:linear-gradient(90deg,#EC1C24,#1B6FC9)}
.s26-sugestao{display:grid;grid-template-columns:auto 1fr auto;gap:22px;align-items:center}
.s26-sugestao .s26-ic{width:64px;height:64px;border-radius:18px;display:grid;place-items:center;font-size:26px;color:#fff}
.s26-sugestao h3{margin:0 0 4px;font-size:24px;color:var(--s26-tinta)}
.s26-sugestao p{margin:0;color:var(--s26-tinta2)}
.s26-sugestao .s26-preco{text-align:right}
.s26-sugestao .s26-preco b{font-size:28px;letter-spacing:-.02em}
.s26-voltar{background:none;border:0;color:#1B6FC9;font-weight:700;cursor:pointer;margin-top:16px;padding:6px 0;font-family:inherit;font-size:14px}
@media (max-width:640px){ .s26-sugestao{grid-template-columns:1fr} .s26-sugestao .s26-preco{text-align:left} }
@keyframes s26-entra{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}

/* ── Entrada ao rolar ───────────────────────────────────────────── */
.s26-revela{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.7,.2,1)}
.s26-revela.s26-visto{opacity:1;transform:none}
.s26-d1{transition-delay:.08s}.s26-d2{transition-delay:.16s}.s26-d3{transition-delay:.24s}
html:not(.s26-js) .s26-revela{opacity:1;transform:none}

@media (prefers-reduced-motion:reduce){
  .s26 *,.s26 *::before,.s26 *::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
  .s26-revela{opacity:1;transform:none}
}

/* ═══ CAMADA COMUM (24-Out-2026, 2.ª fase) ═══════════════════════════
   Afina o que as páginas antigas já têm, sem lhes mexer no HTML. Vale em
   todas as páginas que carregam este ficheiro (vem depois do premium-2026.css,
   que usa !important nas imagens — por isso também aqui). */

/* Heróis dos módulos: o portátil sem moldura, inclinado, como no index.
   Só nas imagens de portátil com fundo transparente (as mockup-*.webp de
   1600 px); as capturas planas continuam com a moldura, que lhes faz falta. */
.st-shot:has(img[width="1600"]){border:0!important;border-radius:0!important;overflow:visible!important;background:none!important;box-shadow:none!important;perspective:1400px}
.st-shot:has(img[width="1600"]) img{border:0!important;border-radius:0!important;box-shadow:none!important;
  filter:drop-shadow(0 40px 60px rgba(0,0,0,.45));transform:rotateY(-8deg) rotateX(4deg);transition:transform .6s cubic-bezier(.2,.7,.2,1)}
.st-shot:has(img[width="1600"]):hover img{transform:rotateY(-2deg) rotateX(1deg)}

/* Index: a faixa do certificado era branca lisa — passa a azul-gelo (regra de 22-Out) */
.trust-bar{background:linear-gradient(180deg,#F3F8FE,#E8F1FB)!important;border-bottom:1px solid #D6E3F2}

@media (prefers-reduced-motion:reduce){
  .st-shot:has(img[width="1600"]) img,.st-shot:has(img[width="1600"]):hover img{transform:none;transition:none}
}
