/* Scoped service-area map and customer intake, using the existing A-1 palette. */
.area-map-section{padding-top:20px!important}
.area-map-card{margin:0;background:#fffdf8;border:1px solid #d9d3c8;border-radius:22px;overflow:hidden;box-shadow:0 18px 50px #1632470c}
.area-map-header{padding:28px 30px 0;display:flex;align-items:center;justify-content:space-between;gap:20px}
.area-map-header h2{font-size:34px;margin:0}.area-radius{font-size:13px;font-weight:600;color:#163247;background:#eee7d9;padding:10px 14px;border-radius:100px;white-space:nowrap}
.area-map-card img{width:100%;height:auto;display:block}
.area-map-card figcaption{padding:20px 30px;border-top:1px solid #d9d3c8;color:#52616a;font-size:14px;line-height:1.7}
.area-legend{display:flex;flex-wrap:wrap;gap:18px;align-items:center;color:#163247;font-size:13px;margin-bottom:10px}
.area-legend span{display:inline-flex;align-items:center;gap:8px}.area-legend i{display:inline-block;width:14px;height:14px;background:#b38a5538;border:1px dashed #957040;border-radius:50%}
.area-legend .area-center{background:#ae2332;border:3px solid #faefe7}
.map-source{font-size:11px;margin:13px 0 0;color:#59666a}.map-source a{text-decoration:underline;text-underline-offset:3px}
.map-next{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-top:28px}.map-next p{margin:0;max-width:510px}.map-next .btn{white-space:nowrap}
.intake-form{gap:24px;min-width:0}.intake-form fieldset{grid-column:1/-1;min-width:0;margin:0;padding:24px 0 0;border:0;border-top:1px solid #d9d3c8}
.intake-form legend{padding:0 12px 0 0;font-size:18px;font-weight:600;color:#163247}
.intake-form legend span{color:#ae2332;font-size:12px;letter-spacing:.08em;margin-right:10px}
.intake-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.intake-fields .full{grid-column:1/-1}
.intake-form input,.intake-form select,.intake-form textarea{font-size:16px;line-height:1.4;min-width:0;max-width:100%}
.intake-form input::placeholder,.intake-form textarea::placeholder{color:#65717a;opacity:1}
.intake-note{font-size:13px;line-height:1.7;margin:0 0 20px;color:#52616a}
.address-search{position:relative}.address-options{position:absolute;top:100%;left:0;right:0;z-index:25;list-style:none;margin:4px 0 0;padding:6px;background:#fffdf9;border:1px solid #89999f;border-radius:10px;box-shadow:0 12px 28px #16324726;max-height:280px;overflow:auto}
.address-options[hidden]{display:none}.address-options li{padding:13px 10px;line-height:1.5;font-size:14px;border-radius:6px;cursor:pointer;overflow-wrap:anywhere}
.address-options li:hover,.address-options li[aria-selected=true]{background:#ece7dd;color:#163247}
.address-hint{font-size:12px;line-height:1.7;color:#52616a;margin:10px 0 0;min-height:2em}
.address-summary{padding:16px 18px;background:#f0ebe2;border:1px solid #dfd6c8;border-radius:10px;overflow-wrap:anywhere}
.address-summary span{display:block;font-size:11px;color:#52616a;letter-spacing:.08em;text-transform:uppercase;font-weight:600;margin-bottom:6px}
.address-summary p{font-size:14px;margin:0;color:#163247;line-height:1.6}
.intake-form .optional{font-weight:400;color:#596971}.intake-form .privacy{color:#52616a}.intake-form #formStatus{line-height:1.7}
.intake-form .data-credit{font-size:11px;line-height:1.7;margin:0;color:#647078}.data-credit a{text-decoration:underline;text-underline-offset:2px}
@media(max-width:1050px){.contact-layout{grid-template-columns:1fr}.contact-copy{max-width:650px}.contact-copy h1{font-size:58px}}
@media(max-width:600px){.area-map-header{padding:22px 20px 10px;align-items:flex-start;flex-direction:column;gap:12px}.area-map-header h2{font-size:29px}.area-map-card figcaption{padding:18px 20px}.area-map-section{padding-right:5%!important}.area-map-card{border-radius:16px}.area-map-card img{min-height:310px;object-fit:contain}.map-next{display:block}.map-next .btn{margin-top:18px;white-space:normal}.intake-fields{grid-template-columns:1fr}.intake-form fieldset{padding-top:18px}.contact-layout{padding-right:5%!important}.intake-form legend{font-size:17px}.form-panel{padding:24px 18px}.intake-form .btn{font-size:13px}.contact-copy h1{font-size:49px}}
