.hc-map-section{padding:5rem 0;background:var(--paper)}.hc-map-tiles--dark{filter:invert(1) hue-rotate(180deg) brightness(.95) contrast(.9) saturate(.35)}.hc-map-section .section-head h2{letter-spacing:-.01em}.hc-map-section .section-head p{font-family:var(--font-accent);font-size:1.15rem;line-height:1.55;max-width:640px;margin:1rem auto 0;color:var(--ink-soft)}.hc-map-wrap{display:grid;grid-template-columns:1fr 360px;gap:0;margin:3rem auto 0;max-width:1200px;background:var(--ink);border-radius:4px;overflow:hidden;box-shadow:var(--shadow-lg);border:1px solid rgba(184,157,94,.18);position:relative;height:580px}.hc-map-wrap:before,.hc-map-wrap:after{content:"";position:absolute;width:28px;height:28px;border:1px solid var(--gold);pointer-events:none;z-index:500}.hc-map-wrap:before{top:12px;left:12px;border-right:none;border-bottom:none}.hc-map-wrap:after{bottom:12px;right:12px;border-left:none;border-top:none}.hc-map{height:100%;width:100%;background:var(--ink)}.hc-map-side{padding:1.75rem 1.5rem;background:linear-gradient(180deg,var(--ink) 0%,var(--ink-soft) 100%);color:var(--ivory);display:flex;flex-direction:column;overflow-y:auto;border-left:1px solid rgba(184,157,94,.18)}.hc-map-side__eyebrow{font-family:var(--font-body);font-size:.72rem;letter-spacing:.22em;text-transform:uppercase;color:var(--gold-bright);font-weight:600;margin-bottom:.5rem}.hc-map-side__title{font-family:var(--font-display);font-size:1.45rem;color:var(--ivory);margin:0 0 .4rem;font-weight:600;line-height:1.2;letter-spacing:-.01em}.hc-map-side__subtitle{font-family:var(--font-accent);font-style:italic;font-size:1rem;color:var(--gold-soft);margin-bottom:1.25rem}.hc-map-side__body{font-family:var(--font-body);font-size:.92rem;color:#f8f6f2c7;line-height:1.6;margin-bottom:1.25rem}.hc-map-side__details{list-style:none;padding:0;margin:0 0 1.5rem;border-top:1px solid rgba(255,255,255,.08)}.hc-map-side__details li{display:flex;justify-content:space-between;padding:.55rem 0;border-bottom:1px solid rgba(255,255,255,.08);font-family:var(--font-body);font-size:.88rem;color:#f8f6f2c7}.hc-map-side__details li span:last-child{color:var(--gold-bright);font-weight:500;font-variant-numeric:tabular-nums}.hc-map-side__cta{background:var(--gold);color:var(--ink);border-color:var(--gold);margin-bottom:.75rem}.hc-map-side__cta:hover{background:var(--gold-bright);border-color:var(--gold-bright)}.hc-map-side__hint{font-family:var(--font-body);font-size:.78rem;color:#f8f6f280;text-align:center;margin-top:.5rem;line-height:1.5}.hc-map-side__zonelist{list-style:none;padding:0;margin:1.25rem 0 0}.hc-map-side__zonelist li{display:flex;align-items:center;gap:.65rem;font-family:var(--font-body);font-size:.88rem;color:#f8f6f2b3;padding:.45rem 0}.hc-map-side__zonelist .dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}@media(max-width:768px){.hc-map-wrap{grid-template-columns:1fr;height:auto}.hc-map{height:400px}.hc-map-side{border-left:none;border-top:1px solid rgba(184,157,94,.18)}}.hc-map-pin{background:transparent;border:none}.hc-map-pin__dot{width:16px;height:16px;border-radius:50%;background:var(--gold-bright);border:2px solid var(--ink);box-shadow:0 0 0 2px var(--gold-bright),0 4px 12px #0006}.hc-map-pin__ring{position:absolute;top:-8px;left:-8px;width:32px;height:32px;border-radius:50%;border:1px solid var(--gold);opacity:.5;animation:hc-map-ring 2.4s ease-in-out infinite}@keyframes hc-map-ring{0%,to{transform:scale(1);opacity:.5}50%{transform:scale(1.5);opacity:0}}.hc-map-pin--home .hc-map-pin__dot{width:22px;height:22px;background:var(--gold-bright);box-shadow:0 0 0 3px var(--gold),0 0 20px var(--gold-glow),0 4px 12px #0006}.leaflet-popup-content-wrapper{background:var(--ink);color:var(--ivory);border-radius:4px;border:1px solid var(--gold);box-shadow:0 12px 30px #00000080}.leaflet-popup-tip{background:var(--ink);border:1px solid var(--gold)}.leaflet-popup-content{margin:.85rem 1rem;font-family:var(--font-body);font-size:.9rem}.leaflet-popup-content strong{display:block;font-family:var(--font-display);color:var(--gold-bright);font-size:1rem;margin-bottom:.25rem}.leaflet-popup-close-button{color:var(--gold-bright)!important}.leaflet-container{font-family:var(--font-body)}
