@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&family=Playfair+Display:wght@600;700&display=swap');
/* GovUrb — tema verde-azulado e laranja (site público). Carregado depois do CSS de cada página;
   para voltar ao aspecto anterior basta retirar a ligação a este ficheiro. */
:root{
  --govurb-green:#0f766e; --govurb-green-2:#115e59; --govurb-light:#edf6f3;
  --govurb-gold:#e88928; --govurb-dark:#12312f; --govurb-gray:#5d6e6c;
  --govurb-border:rgba(18,49,47,.12);
  --gt-ink:#0b2927; --gt-dark:#12312f; --gt-dark-2:#1a4743; --gt-dark-3:#1d5a54;
  --gt-on-dark:#f1faf8; --gt-muted-dark:#b8d6d0; --gt-yellow:#e88928; --gt-yellow-hi:#f0a24f;
  --gt-yellow-deep:#9a5710; --gt-line-dark:rgba(255,255,255,.13);
}
body{color:var(--govurb-dark);font-family:'Inter',system-ui,-apple-system,'Segoe UI',Arial,sans-serif}
h1,h2,.section-title,.hero h1{font-family:'Playfair Display',Georgia,serif;letter-spacing:-.02em}

/* barra de navegação (clara, como a página inicial) */
.navbar-govurb{background:rgba(255,255,255,.96);border-bottom:1px solid var(--govurb-border)}
.navbar-govurb.scrolled{box-shadow:0 10px 30px rgba(18,49,47,.12)}
.brand-logo{background:transparent;border-radius:12px;padding:0}
.brand-logo img{filter:none;height:46px}
.brand-fallback{color:var(--gt-dark)}
.nav-link{color:#48605d!important}
.nav-link:hover,.nav-link.active,.nav-link.show{background:rgba(15,118,110,.09);color:var(--govurb-green)!important}
.navbar-toggler{border-color:rgba(18,49,47,.35)}
.navbar-toggler-icon{filter:none}
.navbar-nav .dropdown-menu,.dropdown-menu{background:#fff;border:1px solid var(--govurb-border)!important}
.dropdown-item{color:#344746}
.dropdown-item:hover,.dropdown-item:focus{background:#ccfbf1;color:#115e59}

/* botões */
.btn-govurb{background:var(--gt-yellow);color:#12312f!important;box-shadow:0 14px 30px rgba(232,137,40,.22)}
.btn-govurb:hover,.btn-govurb:focus{background:var(--gt-yellow-hi);box-shadow:0 18px 38px rgba(232,137,40,.32)}
.btn-outline-govurb{border-color:rgba(255,255,255,.7)}
.btn-outline-govurb:hover{background:#fff;color:#12312f!important}

/* topo */
.hero{background:
  radial-gradient(circle at 18% 20%,rgba(232,137,40,.20),transparent 30%),
  linear-gradient(115deg,rgba(8,44,41,.93),rgba(17,94,89,.84)),
  url('https://images.unsplash.com/photo-1486406146926-c627a92ad1ab?auto=format&fit=crop&w=1920&q=80');
  background-size:cover;background-position:center}
.hero h1 span{color:var(--gt-yellow)}

/* secções claras (leitura) */
.section,.partners-section{background:#fff}
.section-kicker{color:var(--govurb-green-2)}
.section-kicker::before{background:var(--gt-yellow)}
.section-lead{color:var(--govurb-gray)}
.feature-card,.programme-card,.access-card,.territory-card,.resource-card,.partner-item{border-color:var(--govurb-border);box-shadow:0 20px 45px rgba(18,49,47,.06)}
.feature-card:hover,.programme-card:hover,.access-card:hover,.territory-card:hover,.resource-card:hover{box-shadow:0 28px 65px rgba(18,49,47,.14)}
.icon-box{background:var(--gt-dark-2);color:var(--gt-yellow)}
.gold-icon{background:var(--gt-yellow);color:#12312f}
.programme-card{border-top-color:var(--gt-yellow)}
.programme-pill{background:rgba(232,137,40,.16);color:#7a4408}
.access-card li i{color:var(--gt-yellow-deep)}
.secure-panel{background:var(--gt-dark);border:1px solid var(--gt-line-dark)}
.secure-panel h3,.secure-panel h4{color:#fff}
.secure-panel p{color:var(--gt-muted-dark)}
.step-number{background:var(--gt-yellow);color:#12312f}

/* secções escuras: as que já usavam .section-light passam a cinza escuro */
.section-light{background:linear-gradient(180deg,var(--gt-dark),#0b2927);color:var(--gt-on-dark)}
.section-light .section-title,.section-light h1,.section-light h2,.section-light h3,.section-light h4,.section-light h5,.section-light h6{color:#fff}
.section-light .section-kicker{color:var(--gt-yellow)}
.section-light .section-lead,.section-light p,.section-light li,.section-light .text-muted{color:var(--gt-muted-dark)!important}
.section-light .feature-card,.section-light .access-card,.section-light .territory-card,.section-light .resource-card,.section-light .programme-card{background:var(--gt-dark-2);border-color:var(--gt-line-dark);box-shadow:0 20px 45px rgba(0,0,0,.28)}
.section-light .feature-card:hover,.section-light .access-card:hover,.section-light .territory-card:hover{box-shadow:0 28px 65px rgba(0,0,0,.4);border-color:rgba(232,137,40,.45)}
.section-light .icon-box{background:rgba(232,137,40,.14);color:var(--gt-yellow);border:1px solid rgba(232,137,40,.35)}
.section-light .gold-icon{background:var(--gt-yellow);color:#12312f;border-color:var(--gt-yellow)}
.section-light .access-card li i{color:var(--gt-yellow)}
.section-light .programme-pill{background:rgba(232,137,40,.16);color:var(--gt-yellow)}
.section-light .territory-card .territory-media::after{background:linear-gradient(180deg,rgba(18,49,47,0),rgba(18,49,47,.7))}

/* rodapé */
.footer-logo img{filter:none;background:#fff;border-radius:12px;padding:6px 14px}
.footer{background:var(--gt-ink);color:rgba(255,255,255,.72)}
.footer a:hover{color:var(--gt-yellow)}

/* formulário (janela) */
.modal-header{background:var(--gt-dark);color:#fff;border-bottom:3px solid var(--gt-yellow)}
.form-control:focus,.form-select:focus{border-color:var(--gt-yellow);box-shadow:0 0 0 .2rem rgba(232,137,40,.25)}

/* foco visível: escuro em fundo claro, amarelo em fundo escuro */
a:focus-visible,button:focus-visible,.form-control:focus-visible,.form-select:focus-visible{outline:3px solid var(--gt-dark-2);outline-offset:2px}
.navbar a:focus-visible,.navbar button:focus-visible,.hero a:focus-visible,.hero button:focus-visible,.section-light a:focus-visible,.footer a:focus-visible,.secure-panel a:focus-visible,.maintenance-banner button:focus-visible,.modal-header button:focus-visible{outline-color:var(--gt-yellow)}

/* páginas de soluções e projectos (usam --g1/--g2 e cores próprias) */
:root{--g1:#0f766e;--g2:#115e59}
.chip{border-color:#cfe0dc;color:#0b2927}
.chip:hover{border-color:var(--gt-yellow)}
.chip.activo{background:var(--gt-dark);border-color:var(--gt-dark);color:#fff}
.area .icone{background:var(--gt-dark-2);color:var(--gt-yellow)}
.sol{background:#edf6f3}
.badge-estado{background:var(--gt-dark)}
