/* =========================================================
   Páginas interiores de serviço e de zona
   Usa os tokens de tema do styles.css — não redefine cores.
   ========================================================= */

/* ---------- Cabeçalho da página ---------- */
.pg-hero{background:var(--bg2);border-bottom:1px solid var(--border);padding:calc(var(--nav-h) + clamp(48px,7vw,84px)) 0 clamp(44px,6vw,72px)}
.pg-crumb{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:clamp(18px,3vw,26px);font-family:'DM Sans',sans-serif;font-size:.76rem;letter-spacing:.08em;text-transform:uppercase;color:var(--text3)}
.pg-crumb a{color:var(--accent)}
.pg-crumb a:hover{text-decoration:underline}
.pg-crumb span[aria-hidden]{color:var(--text3);opacity:.6}
.pg-hero h1{font-size:clamp(1.9rem,4.4vw,3.1rem);font-weight:900;line-height:1.12;margin-bottom:18px;max-width:20ch}
.pg-lead{font-size:clamp(.95rem,2.3vw,1.09rem);color:var(--text2);line-height:1.74;max-width:62ch}
.pg-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:clamp(26px,4vw,36px)}

/* ---------- Secções ---------- */
.pg-sec{padding:clamp(52px,7vw,var(--sec-y-sm)) 0}
.pg-sec--alt{background:var(--bg2)}
.pg-sec > .container > .section-title{margin-bottom:18px}
.pg-prose{max-width:68ch}
.pg-prose p{font-size:clamp(.9rem,2.2vw,.98rem);line-height:1.8;color:var(--text2);margin-bottom:16px}
.pg-prose p:last-child{margin-bottom:0}
.pg-prose strong{color:var(--text);font-weight:700}
.pg-prose a{color:var(--accent);text-decoration:underline;text-underline-offset:3px}

/* ---------- Grelha do que inclui ---------- */
.pg-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(270px,100%),1fr));gap:clamp(16px,2.4vw,24px);margin-top:clamp(30px,4vw,44px)}
.pg-card{background:var(--card);border:1px solid var(--border);border-radius:var(--r-md);padding:clamp(20px,2.6vw,26px);border-top:3px solid var(--accent)}
.pg-card h3{font-size:1.02rem;font-weight:700;margin-bottom:10px;color:var(--text)}
.pg-card p{font-size:.87rem;line-height:1.72;color:var(--text2)}

/* ---------- Lista com marcador ---------- */
.pg-checks{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(310px,100%),1fr));gap:12px 30px;margin-top:clamp(26px,3.5vw,36px)}
.pg-checks li{position:relative;padding-left:28px;font-size:.9rem;line-height:1.7;color:var(--text2)}
.pg-checks li::before{content:'';position:absolute;left:6px;top:.62em;width:8px;height:8px;background:var(--accent);transform:rotate(45deg)}
.pg-checks strong{color:var(--text);font-weight:600}

/* ---------- Zonas servidas ---------- */
.pg-zonas{display:flex;flex-wrap:wrap;gap:10px;margin-top:clamp(24px,3.4vw,32px)}
.pg-zona{display:inline-flex;align-items:center;padding:9px 16px;border:1px solid var(--border);border-radius:100px;background:var(--card);font-size:.84rem;color:var(--text2)}
a.pg-zona{color:var(--text);border-color:var(--border2);transition:background .2s,color .2s,border-color .2s}
a.pg-zona:hover{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}

/* ---------- Bloco de contacto final ---------- */
.pg-cta{background:var(--bg3);border-top:1px solid var(--border);border-bottom:1px solid var(--border);padding:clamp(48px,6.5vw,84px) 0}
.pg-cta-inner{display:grid;grid-template-columns:1.25fr 1fr;gap:clamp(32px,5vw,64px);align-items:center}
.pg-cta h2{font-size:clamp(1.6rem,3.4vw,2.4rem);font-weight:900;margin-bottom:14px}
.pg-cta p{font-size:clamp(.9rem,2.2vw,1rem);color:var(--text2);line-height:1.74;max-width:52ch}
.pg-tels{display:flex;flex-direction:column;gap:14px}
.pg-tel{display:flex;align-items:center;gap:14px;background:var(--card);border:1px solid var(--border);border-radius:var(--r-md);padding:16px 18px;transition:border-color .2s,transform .2s}
.pg-tel:hover{border-color:var(--accent);transform:translateY(-2px)}
.pg-tel svg{width:22px;height:22px;flex-shrink:0;fill:none;stroke:var(--accent);stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.pg-tel .icon-solid{fill:var(--accent);stroke:none}
.pg-tel-label{display:block;font-family:'DM Sans',sans-serif;font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:var(--text3);margin-bottom:3px}
.pg-tel-val{display:block;font-family:'Archivo',sans-serif;font-size:1rem;font-weight:700;color:var(--text)}

/* ---------- Outras páginas ---------- */
.pg-rel-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(240px,100%),1fr));gap:14px;margin-top:clamp(26px,3.6vw,36px)}
.pg-rel-card{display:flex;flex-direction:column;gap:7px;background:var(--card);border:1px solid var(--border);border-radius:var(--r-md);padding:18px 20px;transition:border-color .2s,transform .2s}
.pg-rel-card:hover{border-color:var(--accent);transform:translateY(-2px)}
.pg-rel-card strong{font-family:'Archivo',sans-serif;font-size:.97rem;font-weight:700;color:var(--text)}
.pg-rel-card span{font-size:.82rem;color:var(--text2);line-height:1.6}

/* ---------- FAQ da página ---------- */
.pg-faq-grid{display:grid;grid-template-columns:1fr 1.25fr;gap:clamp(32px,5.5vw,72px);align-items:start}

@media (max-width:900px){
  .pg-cta-inner,.pg-faq-grid{grid-template-columns:1fr}
}
@media (max-width:640px){
  .pg-hero h1{max-width:none}
  .pg-actions .btn{width:100%;justify-content:center}
}
