/* Evolução da identidade: contraste, tipografia e componentes do site. */
:root{--tinta-2:#51493f;--cobre:#985237;--cobre-cl:#e4aa88;--line:#cfc3b4;--surface:#fffdf9}
body{font-size:16px;font-weight:450;line-height:1.65}
.health-page header .site-container{padding-top:20px;padding-bottom:20px}
.display,.display-sm{font-family:'Lora',Georgia,serif;font-weight:600;line-height:1.16;letter-spacing:-.025em}
.rotulo{font-size:12px;font-weight:700;letter-spacing:.16em}
.campo{font-size:16px;min-height:48px;border-color:#b9ab99;border-radius:8px}
.campo::placeholder{color:#74695b}.etiqueta{font-size:14px;color:#51311f}
.simnao span{min-height:44px;display:grid;place-items:center}
.anima .reveal{opacity:1!important;transform:none!important}
#nav{background:#f4efe6f7!important;color:#38322b!important;border-bottom:1px solid var(--line);backdrop-filter:blur(14px)}
#nav nav{font-size:14px;font-weight:600;gap:24px}#nav a{min-height:44px;display:inline-flex;align-items:center}
#nav [data-marca]{display:block;padding-top:5px}#nav [data-marca-sub]{opacity:1;font-size:10px;color:#685345}
#inicio{min-height:760px}#inicio>img{opacity:.55}#inicio h1{max-width:830px}
#inicio .regua-eixo{max-width:740px}
[class*="text-linho/"]{color:#e0d9cd!important}
.bg-cobre{background-color:var(--cobre)!important}.text-tinta-2{color:var(--tinta-2)!important}
.text-cobre-cl{color:var(--cobre-cl)!important}
.regua-num{font-size:13px;color:#e0d9cd}.regua-num b{color:#e4aa88}
section[id]{scroll-margin-top:0}a,button{touch-action:manipulation}button{cursor:pointer}
.region-section{padding:96px 0;background:#eee7db;border-block:1px solid var(--line)}
.site-container{max-width:1180px;margin:auto;padding:0 32px}
.region-heading{display:flex;justify-content:space-between;gap:32px;align-items:end;margin-bottom:32px}
.region-heading h2,.contact-card h2{font-size:clamp(32px,4vw,48px);color:var(--casca);margin-top:14px}
.region-heading>p{max-width:350px;color:var(--tinta-2)}
.zone-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:24px 0}
.zone-tabs button,.map-control{background:var(--surface);border:1px solid #a69884;border-radius:100px;padding:11px 18px;font-size:14px;font-weight:650;min-height:46px;transition:background .2s,color .2s}
.zone-tabs button[aria-pressed=true]{color:#fffdf9;background:var(--mata);border-color:var(--mata)}
.zone-tabs button:hover{border-color:var(--casca)}
.coverage-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);border:1px solid var(--line);border-radius:20px;overflow:hidden;background:var(--surface);box-shadow:0 12px 40px #382b1910}
.map-panel{background:#e8e9df;position:relative;min-height:450px;padding:20px;display:flex;flex-direction:column}
.map-topline{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:12px;font-weight:700;color:#505644;letter-spacing:.1em;text-transform:uppercase}
.map-control{padding:8px 14px;letter-spacing:0;text-transform:none;font-size:12px}
#coverage-map{width:100%;height:340px;display:block;margin:10px auto}
.district{fill:#d1d4c7;stroke:#fafbf4;stroke-width:1;vector-effect:non-scaling-stroke;transition:fill .2s}
.district.served{fill:#d1d4c7}.district.active{fill:#586947;stroke:#fffdf9;stroke-width:1.8}
.district.partial.active{fill:url(#partial-hatch)}
.map-marker circle{fill:#f8f3e9;stroke:#465638;stroke-width:2;vector-effect:non-scaling-stroke}
.map-marker text{font:700 12px 'Hanken Grotesk',sans-serif;fill:#28321f;text-anchor:middle;dominant-baseline:central}
.map-legend{display:flex;gap:16px;flex-wrap:wrap;font-size:12px;font-weight:600;color:#464b3d;margin-top:auto}
.map-legend span{display:flex;align-items:center;gap:6px}.map-legend i{width:10px;height:10px;border-radius:3px;background:#586947}.map-legend span:last-child i{background:#d1d4c7}
.coverage-detail{padding:30px}.coverage-detail h3{font-size:30px;color:var(--casca);margin:8px 0 12px}.coverage-detail p{color:var(--tinta-2);font-size:14px}
.region-list{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:8px;margin:20px 0}
.region-list li{font-size:14px;border:1px solid #d3c9bb;background:#f6f2e9;padding:7px 12px;border-radius:8px}
.region-list li b{font-size:11px;color:#52613f;margin-right:5px}
.coverage-hours{padding:16px 0;border-block:1px solid var(--line);margin:22px 0}.coverage-hours strong{display:block;color:#38322b;font-size:15px}
.postcode-form{margin-top:24px}.postcode-row{display:flex;gap:8px}.postcode-row input{min-width:0;flex:1}.site-button{background:var(--mata);color:#fffdf9;padding:12px 22px;border-radius:8px;border:1px solid transparent;font-size:14px;font-weight:650;min-height:48px;display:inline-flex;align-items:center;justify-content:center;gap:8px}.site-button:hover{background:#3e4938}.site-button:disabled{opacity:.65;cursor:wait}
.status{margin-top:12px;font-size:14px;line-height:1.6;min-height:24px}.status[data-state=error]{color:#9a301e}.status[data-state=success]{color:#38522a}
.map-note{font-size:12px;color:#5d5549;margin-top:16px;max-width:900px}.map-note a{text-decoration:underline}
.contact-section{padding:90px 0;background:var(--linho)}
.contact-card{display:grid;grid-template-columns:1fr 1fr;gap:64px;background:var(--surface);border:1px solid var(--line);border-radius:20px;padding:48px}
.contact-card p{margin-top:20px;color:var(--tinta-2)}.contact-card form{display:grid;gap:18px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.contact-card .consent{display:flex;gap:10px;font-size:13px;color:var(--tinta-2)}.consent input{width:18px;height:18px;accent-color:var(--mata);flex:none;margin-top:3px}
.contact-card .status{margin-top:0}.honey{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.health-disclosure{border:1px solid #bbaa94;border-radius:16px;background:#f8f3eb}.health-disclosure>summary{padding:24px;cursor:pointer;list-style:inside;font-weight:650;color:var(--casca);font-size:18px}.health-disclosure>summary small{display:block;font-size:14px;font-weight:450;margin-top:6px;color:var(--tinta-2)}
.service-strip{background:#e7ddce;border-bottom:1px solid #cfc3b4;padding:22px 0}.service-strip .site-container{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;font-size:14px;font-weight:600;color:#57432f}
.service-strip span:before{content:'✓';margin-right:10px;color:#4c6340}
@media(max-width:900px){.region-heading{display:block}.region-heading>p{margin-top:20px;max-width:600px}.coverage-grid,.contact-card{grid-template-columns:1fr}.contact-card{gap:32px;padding:28px}.coverage-detail{padding:26px}.map-panel{min-height:390px}#coverage-map{height:310px}.site-container{padding:0 24px}.region-section,.contact-section{padding:64px 0}}
@media(max-width:480px){#inicio{min-height:760px}.site-container{padding:0 20px}.map-panel{padding:16px}.zone-tabs button{padding:10px 13px}.coverage-detail{padding:22px}.form-grid{grid-template-columns:1fr}.contact-card{padding:24px}.postcode-row{flex-wrap:wrap}.postcode-row input{flex-basis:140px}.map-topline{font-size:10px}.service-strip .site-container{gap:10px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important}}
