/* ENCORP — layout plano inspirado no Stroke Beyond Borders.
   Cores: mantém o azul do Encorp. Sem sombras, relevo, degradés nem 3D. Carregar por último. */
:root{--sbb-navy:#0b1a33;--sbb-navy2:#0a1850;--sbb-blue:#0148E0;--sbb-text:#0f2547;--sbb-muted:#5b6b85;--sbb-line:#dfe6f0;--sbb-field:#efefef;--sbb-soft:#eef3fb;--sbb-w:1140px}
html,body{background:#fff}
*,*::before,*::after{box-shadow:none!important;text-shadow:none!important}

/* ---------- botões planos (maiúsculas, negrito, cantos quase rectos) ---------- */
.sbb-btn,.btn,.ec-news-more a,.cta .btn{display:inline-block;background:var(--sbb-blue)!important;color:#fff!important;border:0!important;border-radius:3px!important;padding:14px 24px!important;font-weight:800!important;font-size:14px!important;letter-spacing:.2px;text-transform:uppercase;text-decoration:none!important;cursor:pointer;transition:background .15s ease}
.sbb-btn:hover,.btn:hover,.ec-news-more a:hover{background:var(--sbb-navy2)!important}
.btn.alt{background:#fff!important;color:var(--sbb-navy)!important;border:1px solid var(--sbb-navy)!important}
.sbb-btn.on-dark{background:#fff!important;color:var(--sbb-navy)!important}

/* ======================= PÁGINAS ESTÁTICAS (templates/header.html + footer.html) ======================= */
body > header{display:block!important;background:#fff!important;border:0!important;padding:0!important;text-align:center}
body > header .sbb-logo{display:block;padding:20px 16px}
body > header .sbb-logo img{display:block;height:62px;width:auto;margin:0 auto;background:transparent;border:0;border-radius:0}
body > header nav{display:flex;justify-content:safe center;flex-wrap:nowrap;gap:0;flex-basis:auto;background:var(--sbb-navy);padding:0 8px;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}body > header nav::-webkit-scrollbar{display:none}
body > header nav a{flex:0 0 auto;white-space:nowrap;background:none!important;color:#fff!important;border-radius:0!important;padding:16px .8em!important;font-size:var(--nvf,13px)!important;font-weight:600;text-transform:uppercase;letter-spacing:.3px}
body > header nav a:hover{background:var(--sbb-navy2)!important}
main{max-width:var(--sbb-w)!important}
main h1,main h2{background:none!important;border:0!important;border-radius:0!important;text-align:center!important;color:var(--sbb-navy)!important;text-transform:uppercase;letter-spacing:.3px!important;font-weight:800;padding:0!important;margin:34px 0 14px!important;font-size:clamp(20px,3vw,28px)!important;line-height:1.2}
main h1{margin-top:22px!important;font-size:clamp(24px,4vw,36px)!important}
main h3{color:var(--sbb-navy)}
.card{background:#fff!important;border:1px solid var(--sbb-line)!important;border-left:1px solid var(--sbb-line)!important;border-radius:6px!important;transition:border-color .15s ease}
.card:hover{transform:none!important;border-color:var(--sbb-blue)!important}
.hero img{border:0!important;border-radius:6px!important}
.cta,.pdf,.vid,.calc-box{background:#fff;border:1px solid var(--sbb-line);border-radius:6px}
.notice,.info-box,.alert-box{border-radius:4px}
hr{border:0!important;height:1px!important;background:var(--sbb-line)!important;margin:30px 0}
.tag,.chip{border-radius:3px!important}

/* rodapé em colunas (estáticas) */
body > footer{border-top:48px solid var(--sbb-navy);margin-top:40px;padding:0!important;text-align:left;background:#fff;color:var(--sbb-text)}
.sbb-ft{max-width:var(--sbb-w);margin:0 auto;padding:36px 20px 8px}
.sbb-ft-logo{text-align:center;margin-bottom:26px}
.sbb-ft-logo img{height:64px;width:auto}
.sbb-cols{display:grid;grid-template-columns:repeat(4,1fr);gap:28px 32px}
.sbb-cols h4{margin:0 0 12px;font-size:15px;font-weight:800;text-transform:uppercase;letter-spacing:.5px;color:var(--sbb-navy)}
.sbb-cols a{display:block;padding:4px 0;font-size:14px;line-height:1.35;color:#222;text-decoration:none;background:none;border:0;text-align:left;cursor:pointer;font-family:inherit}
.sbb-cols a::before{content:"// ";color:var(--sbb-muted)}
.sbb-cols a:hover{color:var(--sbb-blue)}
.sbb-ft-note{max-width:var(--sbb-w);margin:0 auto;padding:12px 20px 30px;text-align:center;font-size:12.5px;color:var(--sbb-muted);line-height:1.7;border-top:1px solid var(--sbb-line)}
.sbb-ft-note p{margin:4px 0}
.sbb-ft-note a{color:var(--sbb-navy)}
@media(max-width:899px){.sbb-cols{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.sbb-cols{grid-template-columns:1fr}}

/* ======================= APLICAÇÃO (index.html) ======================= */
#app{max-width:none!important;background:#fff!important}
#app .top-fixed{max-width:none!important;left:0;right:0;background:#fff!important;border:0!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
#app .top-fixed header.sbb-hd{background:#fff!important;padding:0!important;border:0!important}
.sbb-logo-row{position:relative;display:flex;align-items:center;justify-content:center;padding:14px 64px}
.sbb-logo{display:block;line-height:0}
.sbb-logo-img{height:56px;width:auto;max-width:100%;object-fit:contain;background:transparent!important;border:0!important;border-radius:0!important;padding:0!important}
.sbb-logo-row .head-right{position:absolute;right:14px;top:50%;transform:translateY(-50%);display:flex;align-items:center;gap:8px}
.sbb-nav{background:var(--sbb-navy)}
.sbb-nav-in{max-width:none;margin:0 auto;display:flex;justify-content:center;flex-wrap:nowrap}
.sbb-nav button{flex:0 1 auto;white-space:nowrap;background:none;border:0;color:#fff;font-family:inherit;font-size:var(--nvf,13px);font-weight:600;text-transform:uppercase;letter-spacing:.2px;padding:16px .8em;cursor:pointer}
.sbb-nav button:hover{background:var(--sbb-navy2)}
#app .menu-btn{background:var(--sbb-navy)!important;border-radius:4px!important}
@media(min-width:900px){#app .menu-btn{display:none!important}.sbb-logo-row{padding:18px 120px}.sbb-logo-img{height:64px}}
@media(max-width:899px){.sbb-nav{display:none}.sbb-logo-img{height:46px}.sbb-logo-row{padding:10px 112px 10px 14px;justify-content:flex-start}}

/* contentor central (as faixas coloridas ocupam a largura toda) */
#app .view{padding-left:0!important;padding-right:0!important;background:#fff!important}
#app .view > *:not(.sbb-band):not(.sbb-footer):not(.view){max-width:var(--sbb-w);margin-left:auto!important;margin-right:auto!important;padding-left:20px;padding-right:20px;box-sizing:border-box;width:100%}
#app .view > .section-title,#app .view > .section-title-center{width:100%}

/* títulos de secção: texto simples, maiúsculas */
#app .section-title,#app .section-title-center{background:none!important;border:0!important;border-radius:0!important;margin-top:40px!important;margin-bottom:14px!important;text-align:center!important;color:var(--sbb-navy)!important;font-size:clamp(22px,3.2vw,30px)!important;font-weight:800!important;letter-spacing:.3px!important;text-transform:uppercase;padding-left:20px!important;padding-right:20px!important}
#app .section-title::before,#app .section-title::after{display:none!important}

/* pesquisa */
#app .searchbar{margin-top:30px!important;margin-bottom:10px!important}
#app .searchbar input{height:64px!important;background:var(--sbb-field)!important;border:0!important;border-radius:4px!important;font-size:16px!important;padding:0 70px 0 20px!important;color:#333}
#app .searchbar input::placeholder{color:#8a8a8a}
#app .searchbar .clear{right:60px!important}
.sbb-search-btn{position:absolute;right:0;top:0;height:100%;width:64px;background:none;border:0;color:var(--sbb-blue);cursor:pointer;display:flex;align-items:center;justify-content:center}
.sbb-search-btn svg{width:24px;height:24px}

/* áreas de estudo (cartões grandes) */
#app .quick-strip{display:grid!important;grid-template-columns:repeat(3,1fr);gap:20px;max-width:var(--sbb-w)!important;overflow:visible}
@media(min-width:900px){#app .quick-strip{grid-template-columns:repeat(6,1fr)}}
#app .proc-img-card{background:transparent!important;border:0!important;padding:0!important}
#app .proc-img-card img{border-radius:8px}
#app .proc-img-list{gap:16px}

/* cartões da lista de ferramentas */
#app .home-card,#app .tool-card{background:#fff!important;border:1px solid var(--sbb-line)!important;border-radius:6px!important}
#app .home-card:hover,#app .tool-card:hover{border-color:var(--sbb-blue)!important}
#app .home-card:active{transform:none}
#app .home-list{max-width:var(--sbb-w);margin:0 auto}

/* notícias: 3 colunas, imagem em cima, "Leia mais…" */
#app .ec-news{display:grid!important;grid-template-columns:repeat(3,1fr)!important;gap:28px!important}
@media(max-width:899px){#app .ec-news{grid-template-columns:1fr!important}}
#app .ec-nc{flex-direction:column!important;background:transparent!important;border:0!important;border-radius:0!important;min-height:0!important}
#app .ec-nc-im{flex:none!important;width:100%;aspect-ratio:16/9;background:var(--sbb-soft)!important;border-radius:0!important}
#app .ec-nc-im img{width:100%;height:100%;object-fit:cover;border-radius:0!important}
#app .ec-nc-b{padding:14px 0 0!important}
#app .ec-nc-t{font-size:18px!important;font-weight:700!important;line-height:1.3!important;-webkit-line-clamp:4!important;color:var(--sbb-navy)!important}
#app .ec-nc-s,#app .ec-nc-k,#app .ec-nc-m{display:none!important}
#app .ec-nc-b::after{content:"Leia mais…";color:var(--sbb-blue);text-decoration:underline;font-size:15px;margin-top:8px}
#app .ec-news-more{text-align:center;margin:30px auto!important}

/* faixa azul-marinho (missão) */
#app .view > .sbb-band{max-width:none;width:100%;background:var(--sbb-navy);color:#fff;padding:64px 20px;margin:56px 0 0!important}
.sbb-band-in{max-width:960px;margin:0 auto;display:grid;grid-template-columns:200px 1fr;gap:44px;align-items:center}
.sbb-band-in img{width:100%;height:auto;background:#fff;border-radius:8px;padding:14px}
.sbb-band h2{margin:0 0 14px;font-size:clamp(22px,3vw,32px);font-weight:500;line-height:1.3;color:#fff}
.sbb-band h2 b{font-weight:800}
.sbb-band p{margin:0 0 24px;font-size:17px;line-height:1.6;color:#dbe4f5}
@media(max-width:699px){.sbb-band-in{grid-template-columns:1fr;text-align:center}.sbb-band-in img{max-width:160px;margin:0 auto}}

/* programa de educação continuada */
.sbb-edu-lead{font-size:18px;color:var(--sbb-text);margin:0 0 20px}
.sbb-courses{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
@media(max-width:899px){.sbb-courses{grid-template-columns:1fr}}
.sbb-course{display:flex;flex-direction:column;justify-content:flex-end;gap:8px;min-height:190px;padding:24px;background:var(--sbb-navy);color:#fff;border-radius:0;text-decoration:none}
.sbb-course:nth-child(2){background:var(--sbb-blue)}
.sbb-course:nth-child(3){background:var(--sbb-navy2)}
.sbb-course small{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.6px;color:#bcd0f5}
.sbb-course b{font-size:21px;line-height:1.25}
.sbb-course span{font-size:13.5px;color:#dbe4f5}
.sbb-edu-btns{display:flex;flex-wrap:wrap;justify-content:center;gap:16px;margin:34px 0 10px}

/* rodapé da app */
#app .brand-footer{background:transparent!important;border:0!important;border-radius:0!important;margin:30px 0 10px!important}
#app .view > .sbb-footer{max-width:none;width:100%;margin:64px 0 0;padding:0}
.sbb-footer-bar{height:48px;background:var(--sbb-navy)}
.sbb-footer-in{max-width:var(--sbb-w);margin:0 auto;padding:36px 20px 10px}
.sbb-footer .sbb-ft-logo img{height:64px}
.sbb-footer .bf-socials{margin:0 0 30px}
.sbb-footer .bf-socials a{background:transparent!important;color:var(--sbb-navy)}
.sbb-footer .sbb-cols a{background:none}
.sbb-footer-note{max-width:var(--sbb-w);margin:0 auto;padding:12px 20px 34px;text-align:center;font-size:12.5px;color:var(--sbb-muted);border-top:1px solid var(--sbb-line)}
.sbb-footer-note b{color:var(--sbb-navy)}

/* gaveta lateral e fixos: planos */
#app .drawer,#app .drawer-overlay *{border-radius:0}
.lang-switch{border-radius:4px!important}

/* divisores decorativos com estrelas: removidos */
.star-divider{display:none!important}

/* menu numa só linha: tamanho ajustado ao zoom aplicado em ecrãs largos */
:root{--nvf:13px}
@media(min-width:900px){:root{--nvf:calc(1vw*.98)}}
@media(min-width:1200px){:root{--nvf:calc(1vw*.86)}}
@media(min-width:1600px){:root{--nvf:calc(1vw*.8)}}
@media(min-width:1500px){:root{--nvf:12.5px}}
/* Processo de Enfermagem e páginas de conteúdo: tabelas e imagens nunca saem do ecrã */
main table{display:block;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;border-collapse:collapse}
main img{max-width:100%;height:auto}
main h3,main .section-title,main .sec-title{text-align:center}

/* ---------- Menu inferior: selecção em azul, como o cabeçalho ---------- */
.nav-btn.active{background:var(--sbb-navy)!important;color:#fff!important;font-weight:800}
.nav-btn.active svg{stroke:#fff!important}
.nav-btn:hover{color:var(--sbb-navy)}
.nav-btn.active:hover{color:#fff}

/* ---------- Botão «Abrir no YouTube»: maiúsculas e contornado ---------- */
.yt-open{display:inline-block!important;font-size:13px!important;font-weight:800!important;text-transform:uppercase!important;letter-spacing:.4px;color:var(--sbb-navy)!important;background:transparent!important;border:2px solid var(--sbb-navy)!important;border-radius:3px!important;padding:12px 22px!important;text-decoration:none!important}
.yt-open:hover,.yt-open:focus-visible{background:var(--sbb-navy)!important;color:#fff!important}

/* ---------- Logótipo (ícone) sempre à esquerda, em qualquer ecrã ---------- */
.sbb-logo-row{justify-content:flex-start!important;padding:10px 112px 10px 14px!important}
.sbb-logo-img{height:52px;width:auto}
@media(min-width:900px){.sbb-logo-row{padding:14px 120px 14px 28px!important}.sbb-logo-img{height:62px}}
body > header .sbb-logo{padding:14px 16px;text-align:left}
body > header .sbb-logo img{margin:0!important;height:56px}
.sbb-ft-logo img,.sbb-footer .sbb-ft-logo img{height:72px;width:auto}

/* ---------- Processo de Enfermagem: cartões em cima, formulário em baixo, tudo centrado ---------- */
#view-processo{text-align:center}
#view-processo .proc-img-list{justify-content:center;flex-wrap:wrap;overflow:visible;gap:12px;padding:14px 12px 6px}
#view-processo .home-list{display:flex!important;flex-direction:column;align-items:center;max-width:520px;margin:6px auto 0;padding:10px 12px 6px}
#view-processo .home-card{width:100%;flex-direction:column;justify-content:center;text-align:center;border-left-width:1px!important}
#view-processo .home-card .info{flex:none}
#view-processo .home-card .chev-r{display:none}

/* ---------- Cursos: cartões pequenos, 2 por linha ---------- */
#view-cursos .ec-lista{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;align-items:stretch}
#view-cursos .ec-lista>.cl-chips,#view-cursos .ec-lista>.cl-n,#view-cursos .ec-lista>.cl-b{grid-column:1/-1}
#view-cursos .ec-lista .cl-card{margin:0;display:flex;flex-direction:column}
#view-cursos .cl-pro .cl-cv{aspect-ratio:16/10;font-size:28px}
#view-cursos .cl-pro .cl-bd{padding:9px 10px 2px;flex:1}
#view-cursos .cl-pro .cl-t{font-size:14px;line-height:1.25;margin:3px 0}
#view-cursos .cl-pro .cl-s{font-size:12px;line-height:1.35;-webkit-line-clamp:3}
#view-cursos .cl-pro .cl-k{font-size:10px}
#view-cursos .cl-pro .cl-tag{font-size:10.5px;padding:2px 7px}
#view-cursos .cl-pro .cl-b{padding:6px 10px 10px}
#view-cursos .cl-pro .cl-b a,#view-cursos .cl-pro .cl-b button{padding:8px 10px!important;font-size:12px!important;display:block;text-align:center}
#view-cursos .cl-row img{width:56px;height:56px}
.ec-grid.ec-grid2{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.ec-grid2 .ec-cc-b{padding:10px 12px 12px;gap:6px}
.ec-grid2 .ec-cc h3{font-size:14.5px}
.ec-grid2 .ec-cc p{font-size:12.5px;-webkit-line-clamp:3}
.ec-grid2 .ec-cc-m li{font-size:10.5px;padding:2px 8px}
.ec-grid2 .ec-cc-a .btn{padding:8px 12px;font-size:12px}
.ec-grid2 .ec-cc-im::before{font-size:30px}

/* ---------- Página Apoiar ---------- */
.ap-wrap{max-width:720px;margin:0 auto;padding:6px 12px 28px;text-align:center}
.ap-lead{font-size:15px;line-height:1.6;margin:8px 0 14px}
.ap-msg{background:#fff;border:1px solid #dfe6f0;border-left:4px solid #e8a317;border-radius:14px;padding:14px 16px;text-align:left;font-size:14px;line-height:1.7}
.ap-msg p{margin:0 0 10px;hyphens:none}.ap-msg p:last-child{margin:0}
.ap-h{font-size:18px;margin:22px 0 4px;color:var(--sbb-navy,#0b1a33)}
.ap-g{display:grid;gap:12px;margin:12px 0}
.ap-c{background:#fff;border:1px solid #dfe6f0;border-radius:14px;padding:14px 16px;text-align:left;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;box-shadow:0 1px 3px rgba(11,26,51,.08)}
.ap-c b{display:block;color:var(--sbb-navy,#0b1a33);font-size:15px}
.ap-i{font-size:20px;margin-right:6px}.ap-r{display:block;font-size:11.5px;text-transform:uppercase;letter-spacing:.3px;color:#5b6b85;margin-top:2px}
.ap-n{font-size:19px;font-weight:800;letter-spacing:.3px;overflow-wrap:anywhere;color:var(--sbb-navy,#0b1a33);margin-top:2px}
.ap-cp{border:2px solid var(--sbb-navy,#0b1a33);background:transparent;color:var(--sbb-navy,#0b1a33);font-weight:800;border-radius:3px;padding:9px 16px;cursor:pointer;text-transform:uppercase;font-size:12px;letter-spacing:.4px}
.ap-cp:hover{background:var(--sbb-navy,#0b1a33);color:#fff}
.ap-tit{background:#e7ecf4;border-radius:14px;padding:12px 16px;margin:6px 0 10px}
.ap-tit span{display:block;font-size:11.5px;text-transform:uppercase;letter-spacing:.3px;color:#5b6b85}
.ap-tit b{font-size:17px;color:var(--sbb-navy,#0b1a33)}
.ap-nota{font-size:12.5px;color:#5b6b85;margin:6px 0 0}
.ap-wrap .ap-lead{text-align:center!important;hyphens:none}
.ap-wrap .ap-msg,.ap-wrap .ap-msg p{text-align:left!important;hyphens:none}

/* ---------- Introdução ENCORP (home) ---------- */
.enc-intro{max-width:560px;margin:6px auto 4px;padding:6px 18px 0;text-align:center}
.enc-intro b{display:block;font-size:26px;letter-spacing:2px;color:var(--sbb-navy,#0b1a33);font-weight:900}
.enc-intro span{display:block;font-size:13.5px;font-weight:700;color:var(--sbb-navy,#0b1a33);line-height:1.4;margin-top:2px}
.enc-intro p{font-size:13px;line-height:1.55;color:#34455f;margin:8px 0 0;text-align:center!important;hyphens:none}

/* ---------- Botão flutuante do WhatsApp (animado) ---------- */
.wa-float{position:fixed;right:16px;bottom:20px;z-index:90;width:58px;height:58px;border-radius:50%;background:#25D366;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 14px rgba(0,0,0,.32);text-decoration:none;animation:wa-bob 3.6s ease-in-out infinite;-webkit-tap-highlight-color:transparent}
.wa-float::before,.wa-float::after{content:"";position:absolute;inset:0;border-radius:50%;background:rgba(37,211,102,.5);z-index:-1;animation:wa-ring 2.4s ease-out infinite}
.wa-float::after{animation-delay:1.2s}
.wa-float svg{width:34px;height:34px;display:block}
.wa-float:hover,.wa-float:focus-visible{filter:brightness(1.08)}
body:has(.bottom-nav) .wa-float{bottom:calc(88px + env(safe-area-inset-bottom,0px))}
@keyframes wa-ring{0%{transform:scale(1);opacity:.75}100%{transform:scale(1.9);opacity:0}}
@keyframes wa-bob{0%,84%,100%{transform:translateY(0) rotate(0)}88%{transform:translateY(-7px) rotate(-9deg)}92%{transform:translateY(0) rotate(9deg)}96%{transform:rotate(-4deg)}}
@media(prefers-reduced-motion:reduce){.wa-float,.wa-float::before,.wa-float::after{animation:none}}

/* ---------- Ferramentas na home: cards animados ---------- */
.home-tools .home-card{transition:transform .25s ease,box-shadow .25s ease}
.home-tools .home-card.ht-rv{opacity:0;transform:translateY(22px) scale(.97)}
.home-tools .home-card.ht-rv.ht-in{opacity:1;transform:none;transition:opacity .55s ease var(--ht-d,0ms),transform .55s cubic-bezier(.2,.8,.2,1) var(--ht-d,0ms),box-shadow .25s ease}
.home-tools .home-card:hover,.home-tools .home-card:focus-visible{transform:translateY(-4px);box-shadow:0 8px 20px rgba(11,26,51,.16)}
.home-tools .home-card:active{transform:scale(.98)}
.home-tools .icon-box{animation:ht-float 3.6s ease-in-out infinite}
.home-tools .home-card:nth-child(2n) .icon-box{animation-delay:-1.4s}
.home-tools .home-card:nth-child(3n) .icon-box{animation-delay:-2.4s}
@keyframes ht-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-3px)}}
@media(prefers-reduced-motion:reduce){.home-tools .icon-box{animation:none}.home-tools .home-card.ht-rv{opacity:1;transform:none}}

/* ---------- Título no cabeçalho: ENCORP (cima) + nome completo (baixo), centrado entre o logótipo e o seletor de idioma ---------- */
.sbb-title{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:0 6px}
.sbb-title b{display:block;font-size:clamp(15px,4.8vw,20px);font-weight:900;letter-spacing:1.5px;text-transform:uppercase;color:var(--sbb-navy,#0b1a33);line-height:1.1}
.sbb-title span{display:block;font-size:clamp(7.5px,2.25vw,10px);font-weight:600;line-height:1.25;margin-top:2px;color:var(--sbb-navy,#0b1a33);text-align:center}
@media(min-width:900px){.sbb-title b{font-size:26px;letter-spacing:2px}.sbb-title span{font-size:13px;margin-top:3px}}
.enc-intro{margin-top:10px}
.enc-intro p{font-size:13.5px;line-height:1.6;margin-top:0}

/* ---------- Cartão «Sobre o sistema» ---------- */
.about-splash-overlay{display:none;position:fixed;inset:0;z-index:150;background:rgba(6,20,40,.6);align-items:center;justify-content:center;padding:14px}
.about-splash-overlay.open{display:flex}
.about-splash-card{position:relative;background:#fff;border:1px solid var(--borda,#AEBBD3);border-radius:18px;width:100%;max-width:420px;max-height:92vh;max-height:92dvh;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:26px 20px 20px;text-align:center;animation:fs-pop .25s ease}
.about-splash-card .fs-close{position:absolute;top:10px;right:10px;z-index:2}
.about-splash-card .as-logo{display:block;margin:0 auto 8px;height:84px;width:auto}
.about-splash-card .as-title{margin:0;font-size:24px;font-weight:900;letter-spacing:2px;color:var(--sbb-navy,#0b1a33);line-height:1.15}
.about-splash-card .as-sub{margin-top:4px;font-size:12.5px;font-weight:700;line-height:1.35;color:var(--sbb-navy,#0b1a33)}
.about-splash-card .as-text{margin:12px 0 16px;font-size:13.5px;line-height:1.6;color:#34455f;text-align:center;hyphens:none}
@media(min-width:900px){.about-splash-overlay{padding:0}.about-splash-card{max-height:calc(92vh / 1.15)}}
@media(min-width:1200px){.about-splash-card{max-height:calc(92vh / 1.25)}}
@media(min-width:1600px){.about-splash-card{max-height:calc(92vh / 1.5)}}

/* ---------- WhatsApp: esconde-se sobre o rodapé no telemóvel ---------- */
.wa-float{transition:opacity .2s ease,visibility .2s ease}
.wa-float.wa-hide{opacity:0;visibility:hidden;pointer-events:none;animation:none}
@media(max-width:899px){.wa-float{width:52px;height:52px;right:14px;bottom:calc(16px + env(safe-area-inset-bottom,0px))}.wa-float svg{width:30px;height:30px}}

/* ---------- Ecrãs: telemóvel, tablet, portátil, computador, TV e futura app Android ---------- */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%;-webkit-tap-highlight-color:transparent}
body{overflow-x:hidden}
img,video,iframe,svg{max-width:100%}
#app .top-fixed header.sbb-hd{padding-left:env(safe-area-inset-left,0px)!important;padding-right:env(safe-area-inset-right,0px)!important}
.wa-float{right:calc(14px + env(safe-area-inset-right,0px))}
@media(min-width:1920px){html{zoom:1.75}.founder-splash-card,.about-splash-card{max-height:calc(92vh / 1.75)!important}}
@media(min-width:2560px){html{zoom:2.3}.founder-splash-card,.about-splash-card{max-height:calc(92vh / 2.3)!important}}
@media(min-width:3600px){html{zoom:3.2}.founder-splash-card,.about-splash-card{max-height:calc(92vh / 3.2)!important}}
@media(max-height:520px) and (orientation:landscape){.founder-splash-card,.about-splash-card{max-height:96vh!important}.wa-float{width:46px;height:46px;bottom:10px}}
@media(max-width:359px){.sbb-title b{font-size:14px}.sbb-title span{font-size:7px}}

/* ---------- Telemóvel e tablet: menu das páginas sem cortes + rodapé em 2 colunas arrumadas ---------- */
@media(max-width:899px){
  body > header nav{flex-wrap:wrap;justify-content:center;overflow:visible;padding:6px 6px;gap:0 2px}
  body > header nav a{padding:10px 11px!important;font-size:12px!important;letter-spacing:.2px}
  body > header .sbb-logo{padding:14px 16px}
  body > header .sbb-logo img{height:54px}
  .sbb-ft,.sbb-footer-in{padding:28px 16px 6px}
  .sbb-cols{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 18px}
  .sbb-cols h4{font-size:13.5px;margin-bottom:8px;overflow-wrap:anywhere}
  .sbb-cols a{font-size:13.5px;padding:5px 0;overflow-wrap:anywhere;hyphens:auto}
  .sbb-ft-note,.sbb-footer-note{padding:14px 16px 28px;font-size:12px}
  body > footer{border-top-width:32px}
  .sbb-footer-bar{height:32px}
  main{padding-left:16px;padding-right:16px;box-sizing:border-box}
  main table{display:block;max-width:100%;overflow-x:auto}
  main pre,main code{white-space:pre-wrap;overflow-wrap:anywhere}
}
@media(max-width:400px){
  body > header nav a{padding:9px 9px!important;font-size:11.5px!important}
  .sbb-cols{gap:22px 12px}
  .sbb-cols a{font-size:13px}
}
@media(max-width:320px){.sbb-cols{grid-template-columns:1fr}}
/* tablet largo e portátil pequeno: 4 colunas só a partir de 900px (já definido); entre 600 e 899 fica em 2 */
/* barra inferior sem cortes em ecrãs muito estreitos */
.bottom-nav{width:100%;box-sizing:border-box}
.nav-btn{min-width:0}
@media(max-width:359px){.nav-btn{font-size:9.5px!important;margin:4px 1px!important;padding:8px 0 7px!important;letter-spacing:-.1px}.nav-btn svg{width:18px;height:18px}}
@media(max-width:420px){.nav-btn{font-size:9.8px!important;margin:4px 1px!important;padding:8px 0 7px!important;letter-spacing:-.15px;white-space:nowrap}.nav-btn svg{width:19px;height:19px}}
.sbb-footer .sbb-cols h4{text-align:left!important}
