/* State owns the frame, breakpoints, typography and market cards. Only Geo additions live here. */
.is-map-unavailable .geo-map-legend{display:none}
.geo-state-link{display:flex;align-items:center;justify-content:center;gap:10px;background:#000;color:#fff!important;border-radius:6px;padding:14px 12px;text-decoration:none;font-weight:650;min-height:50px;font-size:.9rem}
.geo-state-link i:first-child{color:#ffae00}.geo-state-link i:last-child{font-size:.7rem}
.geo-map-wrap{position:relative}.geo-google-map{position:absolute;inset:0;overflow:hidden}.geo-google-map>p{padding:160px 25px;color:#50657a}
.geo-map-empty{position:absolute;inset:0 0 auto;z-index:3;margin:0;padding:8px 12px;background:#f0f5fa;color:#153b60;font-size:.78rem;line-height:1.5;font-weight:600}.geo-map-empty[hidden],.geo-contact-actions [hidden]{display:none!important}.geo-map-wrap.has-no-selection .geo-map-overlay{top:54px}
.geo-map-overlay{position:absolute;left:12px;top:12px;right:12px;z-index:2;pointer-events:none}.geo-map-overlay>p{font-size:.76rem;color:#294158;margin:0 0 5px;max-width:95%;text-shadow:0 1px 2px #fff}.geo-map-controls{display:flex;gap:6px;flex-wrap:wrap;pointer-events:auto}.geo-map-controls button,.geo-zip-map{border:1px solid #d4dde7;border-radius:6px;background:#fff;color:#19476e;padding:6px 8px;font:inherit;font-size:.73rem;cursor:pointer}.geo-map-controls button[aria-pressed=true]{background:#153b60;color:#fff}
.geo-map-legend{position:absolute;left:10px;bottom:28px;right:60px;display:flex;justify-content:center;gap:12px;flex-wrap:wrap;color:#50657a;font-size:.69rem;background:#ffffffdf;padding:5px;border-radius:5px;pointer-events:none}.geo-dot{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:4px}.geo-target-dot{background:#ffb020}.geo-nearby-dot{background:#111827}
.geo-small{font-size:.73rem;color:#627692;line-height:1.5;margin:8px 0}.geo-multiline{white-space:pre-line}.geo-distribution{margin-top:12px}.geo-distribution-track,.geo-bar-track{display:block;background:#d9e3ed;border-radius:5px;overflow:hidden;height:10px}.geo-distribution-track>span,.geo-bar-track>span{display:block;background:#20567d;height:100%}.geo-distribution-labels{display:flex;justify-content:space-between;font-size:.72rem;color:#627692;margin-top:5px}.geo-zip-bars{display:grid;gap:8px}.geo-zip-bar{display:grid;grid-template-columns:64px 1fr 32px;align-items:center;gap:9px;font-size:.78rem}.geo-bar-track{height:8px;background:#edf1f5}.geo-chart-wrap{position:relative;height:220px;margin:12px 0}.geo-data-scroll{max-height:400px;overflow:auto}.geo-table{width:100%;border-collapse:collapse;font-size:.72rem}.geo-table th,.geo-table td{border-bottom:1px solid #e2e8ee;padding:8px 4px;text-align:left;vertical-align:top;overflow-wrap:anywhere}.geo-source-badge{display:inline-block;color:#815306;background:#fff3d6;border-radius:20px;padding:4px 9px;font-size:.69rem;margin-bottom:8px}
.geo-page summary{cursor:pointer}.geo-page .state-page-mi-group-body p{font-size:.82rem;line-height:1.6}.geo-page .state-page-mi-group-body>details,.geo-page .state-page-market-card>details{margin-top:12px}.geo-page summary:not(.state-page-mi-group-head):not(.state-page-faq-question){font-size:.82rem;font-weight:650;color:#19476e;padding:9px 0}.geo-page .state-page-mi-badge{max-width:42%;overflow-wrap:anywhere;text-align:center}.geo-page .state-page-mi-group-title{min-width:0}.geo-notice{padding:12px;background:#fff4da;border-left:3px solid #e4a231}.geo-map-wrap>.geo-notice{position:absolute;bottom:40px;left:12px;right:12px;z-index:4;font-size:.8rem}
.geo-locations-head{padding:12px 8px}.geo-option-list{list-style:none;padding:0;margin:0}.geo-select-card{display:flex;gap:8px;align-items:center;cursor:pointer;font-size:.78rem;font-weight:650;margin-top:10px}.geo-select-card input{accent-color:#184e78;width:17px;height:17px}.geo-select-card .geo-small{margin:0 0 0 auto;text-align:right;font-weight:400;font-size:.6rem}.geo-page #geo-nearby-list{max-height:390px;overflow:auto}.geo-page #geo-nearby-list .geo-option{border-bottom:1px solid #e3e8ee;padding:10px 0}.geo-page #geo-nearby-list label{display:flex;gap:8px;align-items:flex-start;font-size:.74rem;cursor:pointer}.geo-page .geo-option-check{accent-color:#194e77}.geo-page [id]{scroll-margin-top:15px}
.geo-main:not(.geo-enhanced) #geo-locations-panel{display:block}.geo-enhanced[data-sidebar-view=market] #geo-locations-panel,.geo-enhanced[data-sidebar-view=locations] #geo-market-panel{display:none!important}.geo-enhanced #geo-locations-panel:not([hidden]){flex-direction:column}
.geo-mobile-locations{display:none}.geo-cart{z-index:1000}.geo-page .finder-cart-inner{max-width:740px}.geo-page .finder-cart-summary{min-width:0}.geo-page #geo-quote-status:empty{display:none}.geo-page #geo-quote-status:not(:empty){position:fixed;bottom:85px;left:20px;right:20px;padding:14px;border-radius:8px;background:#0b1a2b;color:#fff;z-index:1001;font-size:.85rem}.geo-page button:focus-visible,.geo-page a:focus-visible:not(.state-page-faq-answer a),.geo-page input:focus-visible,.geo-page summary:focus-visible:not(.state-page-faq-question){outline:3px solid #1789c9;outline-offset:3px}
@media(max-width:992px){.geo-mobile-locations{display:inline-block}.geo-page .state-page-map-top .state-page-headline{min-width:0}.geo-page .geo-state-link{min-height:45px}.geo-page .geo-map-legend{gap:8px;font-size:.6rem}.geo-page .geo-map-overlay{top:12px}.geo-page .finder-cart-inner{gap:8px}.geo-page .finder-cart-summary{font-size:.75rem;gap:4px}.geo-page .finder-cart .btn{font-size:.75rem;padding:10px}.geo-page .finder-cart-details{font-size:.7rem}.geo-page .state-page-sidebar{padding-bottom:90px!important}}
@media(prefers-reduced-motion:reduce){.geo-page *{scroll-behavior:auto!important}}
/* The reference keeps the four monthly cards compact. Descriptions remain in the editor. */
body.geo-page .geo-budget-note{margin-top:8px}body.geo-page .geo-budget-note>summary{font-size:.69rem;padding:2px 0}
body.geo-page .finder-card-toggle.geo-select-card{display:flex;gap:8px;align-items:center;justify-content:center;margin:0}.geo-option-list .finder-card{margin-bottom:10px}.geo-page .finder-card .geo-small{margin:0}.geo-page #geo-nearby-list .finder-card{padding:.7rem .8rem .75rem;margin-bottom:8px}.geo-page #geo-nearby-list .finder-card label{font-size:.8rem;align-items:center;justify-content:center}
/* Static inventory remains accessible if the interactive bundle cannot load. */
.geo-main:not(.geo-enhanced) .state-page-tab-panels{display:block;overflow:auto}.geo-main:not(.geo-enhanced) .state-page-tab-panel{display:block;height:auto;overflow:visible}.geo-main:not(.geo-enhanced) .state-page-market-scroll{height:auto;overflow:visible}
@media(max-width:992px){body.geo-page .geo-cart .finder-cart-details{display:inline-flex!important;font-size:.7rem;white-space:nowrap}body.geo-page .geo-cart .finder-cart-summary{gap:6px}}
/* Keep Details and the full editorial CTA usable on small phones. */
@media(max-width:575.98px){body.geo-page.finder-page .geo-cart{padding:8px 10px calc(8px + env(safe-area-inset-bottom,0px))}body.geo-page.finder-page .geo-cart .finder-cart-inner{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px}body.geo-page.finder-page .geo-cart .finder-cart-summary{flex:0 0 auto;gap:6px}body.geo-page.finder-page .geo-cart .finder-cart-details{margin-left:4px;font-size:.7rem}body.geo-page.finder-page .geo-cart .finder-cart-details::after{display:none}body.geo-page.finder-page .geo-cart .btn{width:100%;min-width:0;max-width:100%;height:auto;min-height:40px;font-size:.72rem;line-height:1.25;white-space:normal;padding:8px;justify-content:center}}
@media(max-width:992px){body.geo-page.finder-page #geo-locations-panel{flex:0 0 auto!important;height:auto!important;overflow:visible!important}body.geo-page.finder-page #geo-locations-panel .finder-list-scroll{display:block!important;flex:0 0 auto;height:auto;max-height:none;overflow:visible}}

/* The road component uses the State Market Info card frame. */
#road-highway-coverage h2{margin:0}
.geo-road-list{list-style:none;padding:0;margin:0}
.geo-road-list>li{padding:.7rem 0;border-bottom:1px solid rgba(15,23,42,.08)}
.geo-road-list>li:last-child{border:0;padding-bottom:0}
.geo-road-description{margin:.15rem 0 .3rem!important}
.geo-road-source{display:block;color:#52627a;font-size:.75rem;overflow-wrap:anywhere;line-height:1.5}
.geo-road-source a{color:#174c78;text-decoration:underline}
.geo-road-evidence{font-size:.75rem;margin-top:.35rem;color:#52627a}
.geo-road-evidence summary{cursor:pointer;color:#174c78;font-weight:600}
.geo-road-evidence p{margin:.4rem 0!important}
@media(max-width:992px){#road-highway-coverage{scroll-margin-top:calc(var(--bm-local-bar-height,0px) + 90px)}}

/* Compact own-ZCTA facts; complete comparisons remain in the disclosure. */
.geo-page .geo-demographic-highlights{display:grid;grid-template-columns:repeat(var(--geo-highlight-columns,3),minmax(0,1fr));gap:8px;margin:0 0 12px}
.geo-page .geo-demographic-highlight{padding:10px 8px;border:1px solid #dbe3ec;border-radius:8px;background:#f7f9fc;overflow-wrap:anywhere}
.geo-page .geo-demographic-highlight span,.geo-page .geo-demographic-highlight small{display:block;color:#64748b;font-size:11px;line-height:1.4}
.geo-page .geo-demographic-highlight strong{display:block;font-size:14px;line-height:1.4;margin:5px 0}
.geo-page .geo-show-point{display:block;width:100%;margin:8px 0;font-size:.76rem;background:#fff;color:#19476e;border-color:#cbd5e1}
.geo-page .geo-show-point:hover,.geo-page .geo-show-point:focus{background:#edf5f7;color:#19476e;border-color:#19476e}
.geo-page .geo-map-option+.geo-map-option{border-top:1px solid #e2e8ee;margin-top:10px;padding-top:10px}
.geo-page #inventory{scroll-margin-top:calc(var(--bm-local-bar-height,0px) + 90px)}

/* All reordered Geo sections inherit the same State tokens, including disclosures
   outside #market-data. Keep these overrides scoped away from State pages. */
body.geo-page.finder-page .geo-market-content{
    --mi-navy:#0f172a;--mi-slate:#64748b;--mi-muted:#94a3b8;
    --mi-blue:#2563eb;--mi-blue-soft:rgba(37,99,235,.1);--mi-amber:#f59e0b;
    --mi-border:rgba(15,23,42,.08);--mi-track:#e5e7eb;
    --mi-card-bg:#fff;--mi-card-bg-soft:#f8fafc;
    --mi-radius-card:14px;--mi-radius-soft:10px;--mi-shadow-card:0 4px 14px rgba(15,23,42,.04);
    --geo-card-padding:16px;--geo-card-radius:18px;--geo-block-gap:14px;
    display:flex;flex-direction:column;gap:var(--geo-block-gap);color:var(--mi-navy);
}
body.geo-page.finder-page .state-page-market-scroll.geo-market-content>*{flex:0 0 auto;min-width:0;margin:0}
body.geo-page.finder-page .geo-market-content>.state-page-market-card,
body.geo-page.finder-page .geo-market-content>.state-page-mi,
body.geo-page.finder-page .geo-market-content>.state-page-mi-group,
body.geo-page.finder-page #road-highway-coverage>.state-page-mi-group{
    padding:var(--geo-card-padding);border:0;border-radius:var(--geo-card-radius);
    background:rgba(255,255,255,.94);box-shadow:0 14px 32px rgba(15,23,42,.08),inset 0 1px 0 rgba(255,255,255,.92);
}
body.geo-page.finder-page #road-highway-coverage>.state-page-mi-group{margin:0}
body.geo-page.finder-page .geo-market-content .state-page-mi-group-title,
body.geo-page.finder-page .geo-market-content>.state-page-market-card>.state-page-section-title,
body.geo-page.finder-page .geo-market-content .state-page-mi-head h2{
    font-size:.9rem;font-weight:800;line-height:1.4;letter-spacing:0;
}
body.geo-page.finder-page .geo-market-content .state-page-mi-group-title{margin:0}
body.geo-page.finder-page .geo-market-content .state-page-section-title{margin-bottom:12px}
body.geo-page.finder-page .geo-market-content .state-page-rich-text,
body.geo-page.finder-page .geo-market-content .state-page-mi-group-body>p{
    font-size:.82rem;line-height:1.6;color:#475467;
}
body.geo-page.finder-page .geo-market-content .state-page-mi-group-body>p{margin:0 0 12px}
body.geo-page.finder-page .geo-market-content .state-page-mi-group-body>p:last-child{margin-bottom:0}
body.geo-page.finder-page #market-data .state-page-mi-summary{margin-bottom:0}
body.geo-page.finder-page .geo-market-content>.state-page-market-card>.state-page-mi-group{
    margin:12px 0 0;padding:12px;border:1px solid var(--mi-border);border-radius:var(--mi-radius-card);
    background:var(--mi-card-bg-soft);box-shadow:none;
}
body.geo-page.finder-page .geo-market-content .state-page-mi-group-head{gap:10px;align-items:center;min-height:28px}
body.geo-page.finder-page .geo-market-content .state-page-mi-group-head>i:last-child{margin-left:auto;flex:0 0 auto;color:var(--mi-slate);font-size:.75rem;transition:transform .15s ease}
body.geo-page.finder-page .geo-market-content details[open]>.state-page-mi-group-head>i:last-child{transform:rotate(180deg)}
body.geo-page.finder-page #pricing>.state-page-mi-group-body{display:grid;gap:16px}
body.geo-page.finder-page #pricing>.state-page-mi-group-body>.state-page-market-card{
    margin:0;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;
}
body.geo-page.finder-page #pricing>.state-page-mi-group-body>.state-page-market-card+.state-page-market-card{padding-top:16px;border-top:1px solid var(--mi-border)}
body.geo-page.finder-page #pricing .state-page-section-title{font-size:.82rem;line-height:1.4}
body.geo-page.finder-page .geo-market-content .geo-road-list>li{padding:12px 0}
body.geo-page.finder-page .geo-market-content .geo-road-list>li:last-child{padding-bottom:0}
body.geo-page.finder-page .geo-market-content .geo-demographic-highlight{border-radius:var(--mi-radius-soft);padding:10px}
body.geo-page.finder-page .geo-market-content .state-page-market-card--faq{
    background:radial-gradient(420px 180px at 100% 0%,rgba(245,164,0,.16),transparent 60%),linear-gradient(180deg,#0b1a2b 0%,#13243a 100%);
    box-shadow:0 18px 42px rgba(11,26,43,.22);
}
/* A native, keyboard-operable disclosure styled as a quiet text link. */
body.geo-page.finder-page .geo-methodology-toggle{padding:0 4px;border:0;border-radius:0;background:transparent;box-shadow:none}
body.geo-page.finder-page .geo-methodology-toggle>summary{
    display:flex;align-items:center;gap:6px;width:fit-content;max-width:100%;list-style:none;
    padding:2px 0;font-size:.72rem;font-weight:400;line-height:1.5;color:#64748b;
}
body.geo-page.finder-page .geo-methodology-toggle>summary::-webkit-details-marker{display:none}
body.geo-page.finder-page .geo-methodology-toggle>summary span{text-decoration:underline;text-underline-offset:3px}
body.geo-page.finder-page .geo-methodology-toggle>summary i{font-size:.6rem;transition:transform .15s ease}
body.geo-page.finder-page .geo-methodology-toggle[open]>summary i{transform:rotate(180deg)}
body.geo-page.finder-page .geo-methodology-toggle .geo-methodology{margin-top:8px;font-size:.72rem;line-height:1.5;color:var(--bs-secondary-color,#64748b);overflow-wrap:anywhere;overflow-x:auto}
body.geo-page.finder-page .geo-methodology :where(*){font-family:inherit!important;font-size:inherit!important;line-height:inherit!important;color:inherit!important}
body.geo-page.finder-page .geo-methodology :where(p,ul,ol,blockquote){margin-top:0!important;margin-bottom:.55em!important}
body.geo-page.finder-page .geo-methodology :where(ul,ol){padding-left:1.4em}
body.geo-page.finder-page .geo-methodology a{text-decoration:underline;text-underline-offset:2px}
body.geo-page.finder-page .geo-methodology-toggle .geo-methodology>:last-child{margin-bottom:0}
@media(max-width:992px){body.geo-page.finder-page .geo-market-content{--geo-card-padding:14px;--geo-card-radius:16px}}
.geo-page .geo-demographic-plot-scroll{max-height:360px;overflow-y:auto;overflow-x:hidden;margin:12px 0;scrollbar-gutter:stable}
.geo-page .geo-demographic-plot-scroll .geo-chart-wrap{margin:0}
.geo-page .geo-single-metric{margin:12px 0;padding:16px;border:1px solid #dbe5f2;border-radius:14px;background:linear-gradient(135deg,#f0f5ff,#f8fafc);color:#0f172a}
.geo-page .geo-single-metric-head{display:flex;align-items:center;justify-content:space-between;gap:12px;color:#526b89;font-size:.73rem}
.geo-page .geo-single-metric-head i{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:9px;background:#e0ebff;color:#2563eb;font-size:16px}
.geo-page .geo-single-metric-label{margin:12px 0 4px;font-size:.8rem;color:#526b89}
.geo-page .geo-single-metric-measure{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}
.geo-page .geo-single-metric-measure strong{font-size:1.85rem;font-weight:800;line-height:1.25;letter-spacing:-.03em}
.geo-page .geo-single-metric-measure span{font-size:.78rem;color:#526b89}
.geo-page #geo-demographic-values th[scope=rowgroup]{width:70px;vertical-align:top;white-space:nowrap}
.geo-page #geo-demographic-values tbody+tbody tr:first-child>*{border-top:2px solid #dbe3ec}

.geo-map-wrap:has(.gm-style-iw-c) .geo-map-legend{visibility:hidden}

/* Contact and map guidance share the existing campaign button styles. */
.geo-contact-actions{display:grid;gap:10px}.geo-contact-actions .btn{display:flex;align-items:center;justify-content:center;gap:8px;min-height:46px}.geo-map-prompt{font-size:.78rem;line-height:1.5;text-align:center;color:#19476e;text-underline-offset:3px}.geo-budget-note a{color:#19476e;text-decoration:underline;text-underline-offset:2px}

.geo-map-wrap:has(.gm-style-iw-c) .geo-map-empty{visibility:hidden}.geo-map-wrap.has-no-selection:has(.gm-style-iw-c) .geo-map-overlay{top:12px}
/* Nearby options are hidden when the active context has no option within 15 miles. */
body.geo-page #nearby-details[hidden]{display:none!important}
