/* ===== Round 3 (Oct 14 overnight): "Check my area" ZIP / city checker (service-area page + compact strip on home) ===== */
.area-check-sec{padding-top:clamp(1.5rem,4vw,2.5rem)}
.area-check{padding:clamp(1.25rem,3vw,2rem);max-width:52rem;border-color:var(--heading);box-shadow:6px 6px 0 var(--accent),0 0 22px rgba(45,226,230,.18)}
.area-check .ac-label{display:block;font-family:var(--pixel);font-weight:400;font-size:clamp(1rem,2.4vw,1.35rem);line-height:1.6;color:var(--gold);text-shadow:3px 3px 0 rgba(255,62,165,.45);margin:0 0 .5rem}
.area-check .ac-hint{display:block;font-size:1.15rem;color:var(--muted);margin:0 0 .9rem}
.area-check .ac-row{display:flex;gap:.9rem;flex-wrap:wrap;align-items:stretch}
.area-check .ac-input{flex:1 1 14rem;min-height:60px;font-size:1.35rem;border-color:var(--heading);background:var(--bg);transition:border-color var(--dur-hover,.2s) ease,box-shadow var(--dur-hover,.2s) ease}
.area-check .ac-input:focus{outline:3px solid var(--gold);outline-offset:2px;border-color:var(--gold);box-shadow:0 0 14px rgba(255,210,63,.35)}
.area-check .ac-go{flex:0 0 auto;min-height:60px;min-width:9rem;font-size:1.3rem;font-family:var(--body);font-weight:700}
.ac-result{margin-top:1.1rem}
.ac-result[hidden]{display:none}
.ac-result .ac-box{border:var(--px) solid var(--border);background:var(--surface2);padding:1rem 1.2rem;box-shadow:4px 4px 0 var(--shadow2)}
.ac-result .ac-box p{margin:0 0 .6rem;font-size:1.2rem;line-height:1.55;max-width:none}
.ac-result .ac-title{font-weight:700;font-size:1.35rem!important;color:var(--text)}
.ac-result.ac-yes .ac-box{border-color:var(--green);box-shadow:4px 4px 0 var(--gold),0 0 18px rgba(57,255,136,.25)}
.ac-result.ac-yes .ac-title{color:var(--green)}
.ac-result.ac-no .ac-box{border-color:var(--gold);box-shadow:4px 4px 0 var(--accent)}
.ac-result.ac-no .ac-title{color:var(--gold)}
.ac-result.ac-empty .ac-box,.ac-result.ac-invalid .ac-box{border-color:var(--heading);border-style:dashed}
.ac-result .ac-btns{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:.8rem}
.ac-result .ac-btns .btn{font-size:1.15rem;min-height:56px}
/* compact strip inside the home Contact card */
.area-check.ac-compact{max-width:none;margin-top:1.25rem;padding:1rem 1.1rem;box-shadow:4px 4px 0 var(--accent)}
.area-check.ac-compact .ac-label{font-size:clamp(.9rem,2vw,1.05rem)}
@media (max-width:560px){.area-check .ac-go{flex:1 1 100%}.ac-result .ac-btns .btn{width:100%}}
@media (prefers-reduced-motion:no-preference){
  html:not(.calm) .ac-result.ac-show .ac-box{animation:kaAcIn var(--dur-in,.45s) var(--ease-out,cubic-bezier(.16,1,.3,1)) both}
}
@keyframes kaAcIn{from{opacity:0;transform:translate3d(0,12px,0)}to{opacity:1;transform:none}}
