/* Elementos partilhados por todas as páginas públicas. */
body.night {
  --paper:#211a16;
  --sand:#302720;
  --ink:#f1e9dd;
  --line:#5b493b;
  --muted:#d3c7b7;
  background:#211a16 !important;
  color:#f1e9dd !important;
}
body.night main, body.night .subnav { background:#211a16 !important; }
body.night .subnav { border-color:#5b493b !important; }
body.night .project-card, body.night .card, body.night .info-card,
body.night .board, body.night .contact-card, body.night .clds-card,
body.night .news-card, body.night .feature-news, body.night .panel,
body.night .document-card, body.night .empty { background:#302720 !important; border-color:#5b493b !important; color:#f1e9dd !important; }
body.night .clds, body.night .info, body.night .document, body.night .offer,
body.night .area, body.night .purpose, body.night .callout, body.night .note,
body.night .project-related a { background:#302720 !important; border-color:#5b493b !important; color:#f1e9dd !important; }
body.night .areas { background:#5b493b !important; border-color:#5b493b !important; }
body.night .areas .area { color:#f1e9dd !important; }
body.night table, body.night th, body.night td { border-color:#6d5949 !important; color:#f1e9dd !important; }
body.night th { background:#3b3028 !important; }
body.night .project-card small, body.night .project-card strong,
body.night .card p, body.night .body, body.night .body p,
body.night .section-top p, body.night .intro, body.night .hint,
body.night .contact-card p, body.night .clds-card p, body.night .clds p,
body.night .info p, body.night .offer, body.night .document,
body.night .lead, body.night .note, body.night .area { color:#e3d8ca !important; }
body.night .clds h3, body.night .document, body.night .offer,
body.night .board dt { color:#f1e9dd !important; }
body.night .clds small, body.night .info strong, body.night .document:before,
body.night .offer:before { color:#f0ddad !important; }
body.night .document:before { background:#211a16 !important; }
body.night .body a, body.night .return { color:#f0ddad !important; }
body.night input, body.night textarea, body.night select { background:#211a16; color:#f1e9dd; border-color:#6d5949; }

/* Nas páginas interiores, a barra é sempre a mesma e mantém-se no topo. */
body:not(.is-home) header { position:sticky !important; top:0; z-index:40; }
body:not(.is-home) header .nav-wrap, body:not(.is-home) header .wrap { min-height:96px; }
body:not(.is-home) header nav { margin-left:auto; }
.site-theme-toggle { width:38px; height:38px; padding:0; border:1px solid rgba(255,255,255,.55); border-radius:50%; background:transparent; color:#fff; font:700 1rem/1 Arial,sans-serif; cursor:pointer; flex:0 0 38px; }
.site-theme-toggle { margin-left:14px; }
.site-theme-toggle:hover { background:rgba(255,255,255,.14); }

.funding-bar { position:fixed; z-index:45; bottom:0; left:0; width:100%; min-height:76px; padding:7px 18px; display:flex; align-items:center; justify-content:center; gap:20px; background:#433126; border-top:1px solid rgba(255,255,255,.2); box-shadow:0 -7px 22px rgba(25,16,11,.17); }
.funding-bar__label { color:#d7bd8e; font-size:.68rem; letter-spacing:.12em; font-weight:800; text-transform:uppercase; white-space:nowrap; }
.funding-strip { position:relative; width:min(667px,73vw); aspect-ratio:667/109; flex:0 1 667px; }
.funding-strip img { display:block; width:100%; height:100%; object-fit:contain; }
.funding-strip a { position:absolute; display:block; border-radius:2px; outline-offset:2px; }
.funding-strip a:focus-visible, .funding-strip a:hover { outline:2px solid #d7bd8e; background:rgba(255,255,255,.12); }
.funding-strip .pessoas { left:1%; top:0; width:16%; height:60%; }
.funding-strip .pepac { left:17%; top:0; width:16%; height:60%; }
.funding-strip .norte { left:33%; top:0; width:13%; height:60%; }
.funding-strip .centro { left:46%; top:0; width:16%; height:60%; }
.funding-strip .portugal { left:62%; top:0; width:17%; height:60%; }
.funding-strip .eu { left:79%; top:0; width:20%; height:60%; }
.funding-strip .prr { left:30%; top:60%; width:14%; height:40%; }
.funding-strip .republica { left:44%; top:60%; width:16%; height:40%; }
.funding-strip .eu-prr { left:60%; top:60%; width:14%; height:40%; }
.funding-logos { display:flex; align-items:center; justify-content:center; gap:19px; max-width:calc(100vw - 190px); }
.funding-logo { display:block; width:auto; height:38px; max-width:142px; object-fit:contain; }
.funding-logo--prr { max-width:220px; }
.funding-logos a { display:block; border-radius:2px; outline-offset:3px; }
.funding-logos a:focus-visible, .funding-logos a:hover { outline:2px solid #d7bd8e; }

/* Cabeçalho comum: mantém as mesmas dimensões em todas as páginas. */
body > header, body > header.top { position:sticky !important; top:0; z-index:80; height:96px !important; min-height:96px !important; background:#6d4e30 !important; color:#fff !important; }
body > header > .nav-wrap, body > header > .wrap { width:min(1120px,calc(100% - 44px)) !important; height:96px !important; min-height:96px !important; margin:auto !important; display:flex !important; align-items:center !important; gap:24px !important; }
body > header .brand { display:flex !important; align-items:center !important; flex:0 0 auto; }
body > header .brand span { display:none !important; }
body > header .brand img, body > header .logo { display:block !important; width:178px !important; height:62px !important; max-width:178px !important; max-height:62px !important; object-fit:contain !important; }
body > header nav { height:100% !important; margin-left:auto !important; display:flex !important; align-items:center !important; gap:17px !important; font-size:.84rem !important; font-weight:700 !important; white-space:nowrap; }
body > header .nav-group, body > header .drop { height:100% !important; display:flex !important; align-items:center !important; position:relative; }
body > header .nav-dropdown, body > header .drop i { position:absolute !important; display:block !important; top:88px !important; left:-14px; min-width:205px; padding:8px 0; background:var(--paper); border:1px solid var(--line); box-shadow:0 14px 26px rgba(51,35,22,.16); opacity:0; visibility:hidden; transform:translateY(-7px); transition:opacity .18s ease,transform .18s ease,visibility .18s; font-style:normal; z-index:100; }
body > header .drop i a { display:block; padding:9px 15px; color:var(--ink) !important; font-size:.84rem; white-space:nowrap; }
body > header .drop i a:hover { background:var(--brown); color:#fff !important; }
body > header .drop:hover i, body > header .drop:focus-within i { opacity:1; visibility:visible; transform:none; }
body > header .nav-cta { display:inline-flex !important; align-items:center; justify-content:center; padding:10px 14px; border:1px solid rgba(255,255,255,.7); border-radius:3px; color:#fff !important; }
body > header .nav-cta:hover { background:rgba(255,255,255,.14); }
body > header nav > a.is-current, body > header nav .drop.is-current > a { color:#f0ddad !important; box-shadow:none; }
body > header nav .nav-cta.is-current { background:rgba(255,255,255,.14); box-shadow:none; border-color:#f0ddad; }

/* A barra de cofinanciamento usa os logótipos transparentes, sem caixas brancas. */
.funding-bar .funding-logo { background:transparent !important; padding:0 !important; border:0 !important; }
.site-social { display:flex; align-items:flex-start; justify-content:center; gap:16px; min-height:0; padding:20px 22px 92px; background:var(--sand); border-top:1px solid var(--line); color:var(--ink); }
.site-social p { margin:0; font-size:.74rem; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }
.site-social div { display:flex; align-items:center; gap:9px; }
.site-social a { width:34px; height:34px; display:grid; place-items:center; border:1px solid var(--line); border-radius:50%; color:var(--brown); text-decoration:none; background:var(--paper); }
.site-social a:hover, .site-social a:focus-visible { border-color:var(--gold); background:#fff; outline:0; }
.site-social span { color:inherit !important; font:800 .94rem/1 Arial,sans-serif !important; letter-spacing:0 !important; text-transform:none !important; }
body.night .site-social { background:#302720; border-color:#5b493b; color:#f1e9dd; }
body.night .site-social a { background:#211a16; border-color:#5b493b; color:#f1e9dd; }
main { padding-bottom:64px !important; }

/* Todos os documentos, PDFs, links de recursos e mapas seguem o mesmo padrão visual. */
main .document, main .download a, main a[href$=".pdf" i], main a[href*=".pdf?" i],
main .body a, main .article-body a, main .article-content a, main #body a, main .map {
  display:inline-flex; align-items:center; gap:10px; min-height:48px; margin:5px 5px 5px 0;
  padding:10px 14px; border:1px solid var(--line); background:var(--paper); color:var(--ink);
  font:700 .9rem/1.25 Montserrat,Arial,sans-serif; text-decoration:none !important;
}
main .document::before, main .download a::before, main a[href$=".pdf" i]::before, main a[href*=".pdf?" i]::before {
  content:'PDF'; width:29px; height:29px; display:grid; place-items:center; flex:0 0 29px;
  background:var(--brown); color:#fff; font:800 .63rem/1 Arial,sans-serif; letter-spacing:.03em;
}
main .body a:not([href*=".pdf"])::before, main .article-body a:not([href*=".pdf"])::before,
main .article-content a:not([href*=".pdf"])::before, main #body a:not([href*=".pdf"])::before, main .map::before {
  content:'↗'; width:25px; height:25px; display:grid; place-items:center; flex:0 0 25px;
  border-radius:50%; background:var(--sand); color:var(--brown); font-weight:800;
}
main .document:hover, main .download a:hover, main a[href$=".pdf" i]:hover, main a[href*=".pdf?" i]:hover,
main .body a:hover, main .article-body a:hover, main .article-content a:hover, main #body a:hover, main .map:hover { border-color:var(--gold); box-shadow:0 7px 16px rgba(68,53,39,.1); }
body.night main .document, body.night main .download a, body.night main a[href$=".pdf" i], body.night main a[href*=".pdf?" i], body.night main .body a, body.night main .article-body a, body.night main .article-content a, body.night main #body a, body.night main .map { background:#302720 !important; border-color:#5b493b !important; color:#f1e9dd !important; }

/* Mantemos as caixas de ligação, mas sem ícones decorativos repetidos. */
main .document::before, main .download a::before, main a[href$=".pdf" i]::before, main a[href*=".pdf?" i]::before,
main .body a::before, main .article-body a::before, main .article-content a::before, main #body a::before, main .map::before { content:none !important; display:none !important; }

/* Ligações dentro do texto são discretas; as caixas ficam reservadas a documentos e ações. */
main .body a:not([href$=".pdf" i]):not([href*=".pdf?" i]):not(.social-link),
main .article-body a:not([href$=".pdf" i]):not([href*=".pdf?" i]):not(.social-link),
main .article-content a:not([href$=".pdf" i]):not([href*=".pdf?" i]):not(.social-link),
main #body a:not([href$=".pdf" i]):not([href*=".pdf?" i]):not(.social-link) {
  display:inline !important; min-height:0 !important; margin:0 !important; padding:0 !important;
  border:0 !important; background:transparent !important; color:var(--brown) !important;
  font:inherit !important; font-weight:700 !important; line-height:inherit !important;
  text-decoration:underline !important; text-decoration-thickness:1px; text-underline-offset:3px;
}
main .body a:not([href$=".pdf" i]):not([href*=".pdf?" i]):not(.social-link):hover,
main .article-body a:not([href$=".pdf" i]):not([href*=".pdf?" i]):not(.social-link):hover,
main .article-content a:not([href$=".pdf" i]):not([href*=".pdf?" i]):not(.social-link):hover,
main #body a:not([href$=".pdf" i]):not([href*=".pdf?" i]):not(.social-link):hover { color:#a8783c !important; box-shadow:none !important; }
body.night main .body a:not([href$=".pdf" i]):not([href*=".pdf?" i]):not(.social-link),
body.night main .article-body a:not([href$=".pdf" i]):not([href*=".pdf?" i]):not(.social-link),
body.night main .article-content a:not([href$=".pdf" i]):not([href*=".pdf?" i]):not(.social-link),
body.night main #body a:not([href$=".pdf" i]):not([href*=".pdf?" i]):not(.social-link) { background:transparent !important; color:#dfc28c !important; }

/* Redes sociais: o mesmo ícone circular em todo o conteúdo importado. */
main a.social-link {
  width:36px !important; height:36px !important; min-height:36px !important; margin:5px 7px 5px 0 !important;
  padding:0 !important; display:inline-grid !important; place-items:center; vertical-align:middle;
  border:1px solid var(--line) !important; border-radius:50%; background:var(--paper) !important;
  color:var(--brown) !important; text-decoration:none !important;
}
main a.social-link svg, .site-social a svg { width:17px; height:17px; fill:currentColor; stroke:currentColor; stroke-width:1.8; }
main a.social-link:hover, main a.social-link:focus-visible { border-color:var(--gold) !important; background:var(--sand) !important; box-shadow:none !important; outline:0; }
body.night main a.social-link { background:#302720 !important; border-color:#5b493b !important; color:#f1e9dd !important; }
.site-social a svg { width:15px; height:15px; }

/* O conteúdo importado pode trazer alinhamentos antigos: logótipos e imagens ficam todos à esquerda. */
main .body [style*="text-align"], main #body [style*="text-align"] { text-align:left !important; }
main .body img, main #body img { display:block !important; float:none !important; clear:both !important; margin:16px 0 !important; }

/* Fichas do CLDS5G: logótipo e designação no mesmo bloco, por concelho. */
.clds-project-list { display:grid; gap:36px; }
.clds-project { padding-bottom:30px; border-bottom:1px solid var(--line); }
.clds-project-identity { display:flex; align-items:center; gap:22px; padding:15px; margin:0 0 22px; border:1px solid var(--line); background:var(--sand); }
.clds-project-identity img { width:250px !important; max-width:42vw; max-height:250px; object-fit:contain; margin:0 !important; }
.clds-project-identity h4 { margin:0; color:var(--ink); font-size:1rem; line-height:1.35; text-transform:uppercase; }
.clds-project-sheet { margin:0 0 12px; }
.clds-project-sheet img { width:auto; max-width:min(100%,360px); max-height:none; }
.clds-project-actions { display:flex; flex-wrap:wrap; gap:8px; margin:10px 0 12px; }
main .clds-project-actions a { text-transform:uppercase; }
main .clds-project-actions a.clds-action, main .body .clds-project-actions a.clds-action, main #body .clds-project-actions a.clds-action { display:inline-flex !important; align-items:center; justify-content:center; min-height:48px !important; margin:0 !important; padding:11px 14px !important; border:1px solid var(--line) !important; background:var(--paper) !important; color:var(--ink) !important; font:800 .88rem/1.2 Montserrat,Arial,sans-serif !important; text-decoration:none !important; text-decoration-line:none !important; box-shadow:none !important; }
main .clds-project-actions a.clds-action:hover, main .body .clds-project-actions a.clds-action:hover, main #body .clds-project-actions a.clds-action:hover { border-color:var(--gold) !important; background:var(--sand) !important; box-shadow:0 7px 16px rgba(68,53,39,.1) !important; }
body.night main .clds-project-actions a.clds-action, body.night main .body .clds-project-actions a.clds-action, body.night main #body .clds-project-actions a.clds-action { background:#302720 !important; border-color:#5b493b !important; color:#f1e9dd !important; }
/* Abrange também as fichas CLDS que já estejam carregadas antes da normalização. */
main .clds-project-actions > a, main .body .clds-project-actions > a, main #body .clds-project-actions > a { display:inline-flex!important; align-items:center!important; justify-content:center!important; box-sizing:border-box!important; min-height:48px!important; margin:0!important; padding:11px 14px!important; border:1px solid var(--line)!important; background:var(--paper)!important; color:var(--ink)!important; font:800 .88rem/1.2 Montserrat,Arial,sans-serif!important; text-decoration:none!important; text-decoration-line:none!important; box-shadow:none!important; }
body.night main .clds-project-actions > a, body.night main .body .clds-project-actions > a, body.night main #body .clds-project-actions > a { background:#302720!important; border-color:#5b493b!important; color:#f1e9dd!important; }
/* Os links de vídeo não são PDF: esta regra vence a aparência discreta das hiperligações no conteúdo. */
main #body .clds-project-actions > a.clds-action:not([href$=".pdf" i]):not([href*=".pdf?" i]) { display:inline-flex!important; align-items:center!important; justify-content:center!important; min-height:48px!important; margin:0!important; padding:11px 14px!important; border:1px solid var(--line)!important; background:var(--paper)!important; color:var(--ink)!important; font:800 .88rem/1.2 Montserrat,Arial,sans-serif!important; text-decoration:none!important; text-decoration-line:none!important; }
body.night main #body .clds-project-actions > a.clds-action:not([href$=".pdf" i]):not([href*=".pdf?" i]) { background:#302720!important; border-color:#5b493b!important; color:#f1e9dd!important; }
.project-social { display:flex; align-items:center; gap:8px; margin:14px 0; }
main .project-social a { display:grid !important; place-items:center; width:38px; min-height:38px !important; height:38px; margin:0 !important; padding:8px !important; border-radius:50%; background:var(--paper); color:var(--brown); }
main .project-social a::before { content:none !important; display:none !important; }
.project-social svg { width:18px; height:18px; fill:currentColor; stroke:currentColor; stroke-width:1.8; }
.project-social svg rect, .project-social svg circle { fill:none; }
body.night .clds-project-identity { background:#302720; border-color:#5b493b; }
body.night .clds-project-identity h4 { color:#f1e9dd; }

.project-related { margin-top:48px; padding-top:32px; border-top:1px solid var(--line); }
.project-related h2 { margin:0 0 18px; font-size:1.7rem; }
.project-related > div { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.project-related a { display:flex; flex-direction:column; gap:5px; padding:18px; border:1px solid var(--line); background:var(--sand); }
.project-related a:hover { border-color:#cfb17b; }
.project-related a span { color:#6d4e30; font-size:.84rem; font-weight:700; }
.project-local-nav { display:flex; flex-wrap:wrap; gap:8px; margin:0 0 28px; padding:13px 0; border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.project-local-nav a { padding:8px 11px; border:1px solid transparent; color:var(--ink); font-size:.84rem; font-weight:800; text-decoration:none; }
.project-local-nav a:hover, .project-local-nav a[aria-current="page"] { border-color:#c7a56d; background:var(--sand); color:var(--brown); }
.project-related--pis .project-related-group + .project-related-group, .project-related--pepac .project-related-group + .project-related-group { margin-top:26px; }
.project-related--pis > .project-related-group, .project-related--pepac > .project-related-group { display:block; }
.project-related--pis .project-related-group > div, .project-related--pepac .project-related-group > div { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.project-related--pis h3, .project-related--pepac h3 { margin:0 0 12px; color:var(--brown); font-size:.9rem; letter-spacing:.08em; text-transform:uppercase; }
.project-related--pepac .pepac-links { display:flex; align-items:center; gap:8px; overflow-x:auto; padding:2px 0 8px; }
.project-related--pepac .pepac-links a { flex:0 0 auto; display:block; padding:11px 14px; border:1px solid var(--line); background:var(--sand); color:var(--ink); font-size:.82rem; font-weight:800; text-decoration:none; white-space:nowrap; }
.project-related--pepac .pepac-links a:hover, .project-related--pepac .pepac-links a[aria-current="page"] { border-color:#c7a56d; background:var(--brown); color:#fff; }
.project-current-note { margin:0; padding:18px; border:1px solid var(--line); background:var(--sand); font-weight:700; }
body.night .project-local-nav a { color:#f1e9dd; }
body.night .project-local-nav a:hover, body.night .project-local-nav a[aria-current="page"], body.night .project-current-note { background:#302720; border-color:#5b493b; color:#f1e9dd; }
body.night .project-related--pis h3, body.night .project-related--pepac h3 { color:#dfc28c; }
body.night .project-related--pepac .pepac-links a { background:#302720; border-color:#5b493b; color:#f1e9dd; }
body.night .project-related--pepac .pepac-links a:hover, body.night .project-related--pepac .pepac-links a[aria-current="page"] { background:#6d4e30; border-color:#c7a56d; color:#fff; }

@media (max-width:780px) {
  body > header, body > header.top, body > header > .nav-wrap, body > header > .wrap { height:80px !important; min-height:80px !important; }
  body > header .brand img, body > header .logo { width:155px !important; height:54px !important; max-width:155px !important; max-height:54px !important; }
  body > header nav { display:none !important; }
  body:not(.is-home) header .nav-wrap, body:not(.is-home) header .wrap { min-height:80px; }
  .site-theme-toggle { margin-left:auto; }
  .site-social { min-height:0; padding:16px 15px 76px; }
  .funding-bar { min-height:60px; padding:5px 10px; gap:0; }
  .funding-bar__label { display:none; }
  .funding-strip { width:min(667px,96vw); }
  .funding-logos { max-width:100%; gap:8px; }
  .funding-logo { height:28px; max-width:15vw; }
  .funding-logo--prr { max-width:31vw; }
  main { padding-bottom:50px !important; }
  .project-related > div { grid-template-columns:1fr; }
  .project-related--pis .project-related-group > div, .project-related--pepac .project-related-group > div { grid-template-columns:1fr; }
  .clds-project-identity { align-items:flex-start; flex-direction:column; }
  .clds-project-identity img { max-width:100%; }
}

/* Ligações de documentos e ofertas — apresentação uniforme, sem caixas vazias */
main .offers{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important}
main .offers .offer{display:flex!important;align-items:center!important;min-height:56px!important;margin:0!important;padding:14px 16px!important;border:1px solid var(--line)!important;background:var(--paper)!important;color:var(--ink)!important;font:700 .9rem/1.35 Montserrat,Arial,sans-serif!important;text-decoration:none!important;transition:border-color .2s ease,background .2s ease,transform .2s ease!important}
main .offers .offer::before{content:none!important;display:none!important;width:0!important;height:0!important;min-width:0!important;margin:0!important;padding:0!important;border:0!important;background:transparent!important}
main .offers .offer:hover,main .offers .offer:focus-visible{border-color:var(--gold)!important;background:var(--sand)!important;transform:translateY(-2px)!important;outline:none!important}
main .offers .offer::after{content:'Abrir ↗';margin-left:auto;color:var(--brown);font-size:.74rem;font-weight:800;letter-spacing:.04em;white-space:nowrap}
@media(max-width:680px){main .offers{grid-template-columns:1fr!important}main .offers .offer{min-height:52px!important}}

/* Listas de ofertas importadas das notícias: uma ligação por entidade, sem ícones vazios */
main .legacy-offer-link{display:flex!important;align-items:center!important;justify-content:space-between!important;width:min(100%,900px)!important;min-height:54px!important;margin:8px 0!important;padding:13px 16px!important;border:1px solid var(--line)!important;background:var(--paper)!important;color:var(--ink)!important;font:700 .92rem/1.35 Montserrat,Arial,sans-serif!important;text-decoration:none!important;box-sizing:border-box!important;transition:background .2s ease,border-color .2s ease,transform .2s ease!important}
main .legacy-offer-link::before{content:none!important;display:none!important;width:0!important;height:0!important;margin:0!important;padding:0!important;border:0!important}
main .legacy-offer-link::after{content:'Abrir PDF ↗';flex:0 0 auto;margin-left:18px;color:var(--brown);font-size:.74rem;font-weight:800;letter-spacing:.04em;white-space:nowrap}
main .legacy-offer-link:hover,main .legacy-offer-link:focus-visible{border-color:var(--gold)!important;background:var(--sand)!important;transform:translateY(-2px)!important;outline:none!important}
@media(max-width:680px){main .legacy-offer-link{align-items:flex-start!important;gap:10px!important}main .legacy-offer-link::after{margin-left:0!important}}

/* Menus suspensos: contraste fixo sobre qualquer fotografia da página inicial */
body > header .drop i{background:#fffaf3!important;border-color:#bfa47c!important;box-shadow:0 16px 30px rgba(37,24,14,.28)!important}
body > header .drop i a{color:#2f241c!important;font-weight:800!important;text-shadow:none!important}
body > header .drop i a:hover,body > header .drop i a:focus-visible{background:#6d4e30!important;color:#fff!important;outline:none!important}
body.night > header .drop i{background:#302720!important;border-color:#806b59!important}
body.night > header .drop i a{color:#f7efe5!important}
body.night > header .drop i a:hover,body.night > header .drop i a:focus-visible{background:#6d4e30!important;color:#fff!important}

/* Faixa social, contactos e consentimento: a mesma apresentação em todo o site. */
/* A faixa social termina cada página. A reserva inferior pertence apenas à barra fixa de cofinanciamento, evitando uma faixa alta ou ícones desalinhados. */
body{padding-bottom:76px!important}.site-social{display:block!important;box-sizing:border-box!important;min-height:92px!important;height:92px!important;margin:0!important;padding:0 22px!important;background:var(--sand)!important;border-top:1px solid var(--line)!important}.site-social__inner{width:min(1120px,100%)!important;height:92px!important;min-height:0!important;margin:0 auto!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:16px!important;padding:0!important}.site-social p{margin:0!important;line-height:34px!important;white-space:nowrap}.site-social a{transition:transform .18s ease,border-color .18s ease,background .18s ease}.site-social a:hover{transform:translateY(-2px)}
.adrimag-contact-form{display:grid;grid-template-columns:1fr 1fr;gap:16px;max-width:720px;margin-top:24px;padding:26px;border:1px solid var(--line);background:var(--sand);border-radius:10px}.adrimag-contact-form label{display:grid;gap:7px;font-weight:800}.adrimag-contact-form .full{grid-column:1/-1}.adrimag-contact-form input,.adrimag-contact-form textarea{width:100%;padding:12px;border:1px solid var(--line);border-radius:5px;background:var(--paper);color:var(--ink);font:inherit}.adrimag-contact-form textarea{min-height:130px;resize:vertical}.adrimag-contact-form button{justify-self:start;border:0;border-radius:5px;background:var(--brown);color:#fff;padding:13px 18px;font:800 .9rem Montserrat,Arial,sans-serif;cursor:pointer}.adrimag-contact-form small{grid-column:1/-1;color:var(--muted)}.adrimag-contact-form small a{text-decoration:underline;color:var(--brown)}
.cookie-banner{position:fixed;z-index:80;left:18px;right:18px;bottom:92px;display:flex;align-items:center;justify-content:center;gap:18px;max-width:1020px;margin:auto;padding:15px 18px;border:1px solid #bda479;border-radius:8px;background:#fffaf1;color:#33261e;box-shadow:0 16px 34px rgba(30,19,11,.26)}.cookie-banner p{margin:0;font-size:.86rem}.cookie-banner a{color:var(--brown);font-weight:800;text-decoration:underline}.cookie-actions{display:flex;gap:10px;flex:0 0 auto}.cookie-banner .cookie-secondary{background:transparent;color:var(--brown);border:1px solid var(--brown)}body.night .cookie-banner .cookie-secondary{color:#e6c98d;border-color:#e6c98d}.cookie-banner button{flex:0 0 auto;border:0;border-radius:4px;background:var(--brown);color:#fff;padding:10px 16px;font:800 .82rem Montserrat,Arial,sans-serif;cursor:pointer}.to-top{position:fixed;z-index:44;right:21px;bottom:104px;width:42px;height:42px;border:1px solid rgba(255,255,255,.55);border-radius:50%;background:#6d4e30;color:#fff;font-size:1.25rem;font-weight:800;opacity:0;visibility:hidden;transform:translateY(10px);transition:.2s;cursor:pointer;box-shadow:0 6px 15px rgba(31,20,12,.24)}.to-top.visible{opacity:1;visibility:visible;transform:none}.to-top:hover{background:#523820}
body.night .cookie-banner{background:#302720;color:#f1e9dd;border-color:#806b59}body.night .cookie-banner a{color:#e6c98d}body.night .adrimag-contact-form{background:#302720;border-color:#5b493b}body.night .adrimag-contact-form input,body.night .adrimag-contact-form textarea{background:#211a16;border-color:#5b493b;color:#f1e9dd}body.night .adrimag-contact-form small{color:#d0c1b4}
@media(max-width:780px){body{padding-bottom:64px!important}.site-social{height:78px!important;min-height:78px!important;padding:0 15px!important}.site-social__inner{height:78px!important;min-height:0!important;gap:11px!important;padding:0!important}.adrimag-contact-form{grid-template-columns:1fr;padding:18px}.adrimag-contact-form .full{grid-column:auto}.cookie-banner{left:10px;right:10px;bottom:70px;align-items:flex-start;flex-direction:column;gap:11px}.cookie-actions{align-self:flex-end}.to-top{right:14px;bottom:78px;width:39px;height:39px}}
