.locations{padding-block:95px 105px;scroll-margin-top:85px}
.locations-heading{display:flex;justify-content:space-between;align-items:end;gap:60px;margin-bottom:42px}
.locations-heading .eyebrow{font-size:11px;margin-bottom:20px}
.locations h2{font-size:clamp(40px,4.3vw,64px);line-height:1.07;letter-spacing:-.045em}
.locations-heading>p{max-width:280px;font-size:14px;line-height:1.7;color:var(--muted)}
.location-layout{display:grid;grid-template-columns:minmax(280px,.8fr) minmax(0,1.5fr);gap:40px;align-items:start}
.location-search-label,.location-filters label{font-size:11px;display:block;color:var(--muted)}
.location-directory input,.location-directory select{width:100%;border:1px solid var(--line);border-radius:0;background:transparent;color:var(--ink);font:inherit;font-size:14px;min-height:48px;padding:12px;outline-offset:3px}
.location-directory input{margin-top:8px}
.location-filters{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:15px}
.location-filters select{margin-top:6px;font-size:12px}
.location-count{font-size:11px;color:var(--muted);margin-top:24px;padding-bottom:12px;border-bottom:1px solid var(--line);font-variant-numeric:tabular-nums}
.location-list{max-height:430px;overflow-y:auto;overscroll-behavior-y:contain;scrollbar-width:thin;padding-right:12px}
.location-card{padding:20px 0;border-bottom:1px solid var(--line);position:relative}
.location-card .location-meta{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);display:flex;justify-content:space-between;gap:15px}
.location-card h3{font-size:19px;line-height:1.3;letter-spacing:-.02em;margin:10px 0 7px;font-weight:500}
.location-card p{font-size:12px;color:var(--muted);line-height:1.6}
.location-card .text-link{font-size:12px;min-height:44px;gap:25px;margin-top:4px}
.reseller-help{border-top:1px solid var(--line);margin-top:20px;padding-top:20px}.reseller-help p{font-size:12px}.reseller-help .text-link{font-size:12px;min-height:44px;gap:24px}
.location-map{height:540px;background:#133a2c;position:relative;overflow:hidden}
.location-map iframe{width:100%;height:100%;border:0;position:absolute;inset:0}
.map-placeholder{height:100%;position:relative;isolation:isolate;color:#fff}
.map-placeholder>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}
.map-placeholder::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#092f27ed,#092f2790);z-index:-1}
.map-placeholder>div{padding:45px;max-width:480px;display:flex;height:100%;flex-direction:column;justify-content:center;align-items:start}
.map-placeholder .eyebrow{font-size:10px;letter-spacing:.16em;margin-bottom:22px}
.map-placeholder h3{font:normal clamp(42px,4vw,66px)/1.06 Georgia,serif;letter-spacing:-.04em;margin-bottom:22px}
.map-placeholder p:not(.eyebrow){font-size:14px;line-height:1.65;max-width:260px}
.map-placeholder button{margin-top:26px}.map-placeholder small{font-size:10px;line-height:1.5;margin-top:16px;max-width:260px;color:#dce5dc}
.map-footnote{display:flex;justify-content:space-between;align-items:start;gap:24px;border-bottom:1px solid var(--line);padding:18px 0}
.map-footnote p{font-size:11px;color:var(--muted);max-width:270px}.map-footnote .text-link{font-size:11px;white-space:nowrap;gap:16px}
.location-source-note{font-size:10px;line-height:1.65;color:var(--muted);margin-top:16px;max-width:540px}
.location-empty{padding:28px 0}.location-empty h3{font-size:20px}.location-empty p{font-size:12px;line-height:1.7;margin-top:10px}.location-empty button{font-size:12px;min-height:44px;margin-top:10px}
@media(max-width:1000px){.location-layout{grid-template-columns:minmax(270px,1fr) minmax(0,1.25fr);gap:28px}.map-placeholder>div{padding:32px}.map-footnote{display:block}.map-footnote .text-link{margin-top:12px}.locations-heading{gap:30px}}
@media(max-width:700px){.locations{padding-block:60px 65px}.locations-heading{display:block;margin-bottom:30px}.locations-heading>p{margin-top:20px;max-width:340px;font-size:13px}.locations h2{font-size:40px}.location-layout{grid-template-columns:1fr;gap:30px}.location-map{height:380px}.map-placeholder>div{padding:30px}.map-placeholder h3{font-size:46px}.map-placeholder p:not(.eyebrow){font-size:13px}.map-placeholder .eyebrow{margin-bottom:15px}.map-placeholder button{margin-top:18px}.map-footnote{display:flex;gap:20px}.map-footnote .text-link{margin-top:0;white-space:normal}.location-list{max-height:410px}.location-count{margin-top:20px}.location-card h3{font-size:19px}.location-directory select{font-size:13px}.location-source-note{font-size:11px}}
