/* L::eS region map system — reusable static SVG maps with accessible city links.
   Each mapped location is an in-page or canonical URL, never a guessed page.
   Country outline: deutschlandGeoJSON original border geometry (Unlicense/public domain). */
.les-region-map{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(26px,4vw,58px);margin:clamp(36px,5.8vw,78px) 0 clamp(36px,5vw,64px);padding:clamp(18px,3.5vw,42px);border:1px solid rgba(184,155,77,.28);border-radius:22px;background:linear-gradient(135deg,rgba(255,255,255,.066),rgba(255,255,255,.018) 54%,rgba(184,155,77,.035));box-shadow:0 23px 62px rgba(0,0,0,.19),inset 0 1px 0 rgba(255,255,255,.085);overflow:hidden}
.les-region-map__visual{position:relative;min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;isolation:isolate;border-radius:16px;background:radial-gradient(ellipse at 52% 43%,rgba(184,155,77,.105),transparent 63%),linear-gradient(175deg,rgba(17,22,29,.35),rgba(17,22,29,.02))}
.les-region-map__map-eyebrow{align-self:stretch;padding:20px 21px 0;margin:0!important;font-size:10px!important;font-weight:700;letter-spacing:.16em;color:#d8c191!important}
.les-region-map__svg{display:block;width:100%;height:auto;max-height:530px;aspect-ratio:520/570;overflow:visible}
.les-region-map__outline-highlight{fill:url(#les-de-map-fill);stroke:rgba(214,194,145,.65);stroke-width:1.25;stroke-linejoin:round;vector-effect:non-scaling-stroke}
.les-region-map__marker{cursor:pointer;outline:none}
.les-region-map__marker--current{cursor:default}
.les-region-map__hit{fill:transparent;stroke:none}
/* Neutral places remain understated; the currently displayed region is gold. */
.les-region-map__dot{fill:#25303a;stroke:#9caab3;stroke-width:1.35;vector-effect:non-scaling-stroke;transition:fill .2s ease,stroke .2s ease}
.les-region-map__marker:hover .les-region-map__dot,.les-region-map__marker.is-highlighted .les-region-map__dot,.les-region-map__marker:focus-visible .les-region-map__dot{fill:#b89b4d;stroke:#e5c987;stroke-width:1.5}
.les-region-map__marker--current .les-region-map__dot,.les-region-map__marker--current:hover .les-region-map__dot{fill:#dfb766;stroke:#f4daa3;stroke-width:1.55}
.les-region-map__marker:focus-visible .les-region-map__hit{stroke:#f4d79a;stroke-width:2.5;stroke-dasharray:3 3;fill:rgba(255,255,255,.025)}
.les-region-map__content{display:flex;flex-direction:column;align-self:center;min-width:0;padding:clamp(14px,2vw,26px) 0}
.les-region-map__kicker{display:block;font-size:11px;font-weight:700;letter-spacing:.17em;color:#d9bd7f;margin-bottom:20px}
.les-region-map__title{max-width:430px;margin:0 0 17px!important;font-size:clamp(26px,3vw,44px)!important;line-height:1.14;letter-spacing:-.045em;color:#fff}
.les-region-map__description{margin:0 0 29px!important;max-width:420px;color:#d2d9e2!important;font-size:15px!important;line-height:1.8!important}
.les-region-map__links{display:grid;gap:11px}
.les-region-map__current{display:grid;grid-template-columns:36px minmax(0,1fr);align-items:center;gap:14px;padding:18px 17px;border:1px solid rgba(184,155,77,.42);border-radius:15px;background:linear-gradient(130deg,rgba(184,155,77,.13),rgba(184,155,77,.038));min-width:0}
.les-region-map__current .les-region-map__link-label{font-weight:700;color:#f5f7f8}
.les-region-map__link-index{color:#e1c78c;font-size:11px;font-weight:700;letter-spacing:.09em}
.les-region-map__link-label{font-size:clamp(15px,1.55vw,18px);font-weight:650;line-height:1.4;letter-spacing:-.01em;color:#f5f6f7}
.les-region-map__accordion{margin:0;gap:10px}
.les-region-map .les-region-map__accordion .les-faq-item{border-radius:15px;background:linear-gradient(135deg,rgba(255,255,255,.065),rgba(255,255,255,.018))}
.les-region-map .les-region-map__accordion .les-faq-item.is-open{border-color:rgba(214,190,134,.62);background:linear-gradient(135deg,rgba(255,255,255,.085),rgba(255,255,255,.025))}
.les-region-map .les-region-map__accordion .les-faq-question{display:grid;grid-template-columns:36px minmax(0,1fr);align-items:center;gap:14px;min-height:65px;padding:18px 68px 18px 17px;font-size:inherit;line-height:1.4}
.les-region-map .les-region-map__accordion .les-faq-question::after{right:18px;width:30px;height:30px;font-size:19px;background:rgba(184,155,77,.065)}
.les-region-map .les-region-map__accordion .les-faq-question.is-highlighted{background:rgba(184,155,77,.09)}
.les-region-map .les-region-map__accordion .les-faq-question:focus-visible{outline-offset:-3px}
.les-region-map__accordion:not([data-les-faq-ready="true"]) .les-faq-answer{grid-template-rows:1fr;visibility:visible}
.les-region-map .les-region-map__accordion .les-faq-answer-inner::before{margin:0 20px}
.les-region-map .les-region-map__accordion .les-faq-answer p{padding:19px 20px 9px;margin:0!important;max-width:100%;font-size:14px;line-height:1.78;color:#d3dae2}
.les-region-map__region-cta{display:inline-flex;align-items:center;gap:10px;max-width:calc(100% - 40px);margin:8px 20px 24px;padding:12px 16px;border:1px solid rgba(218,188,126,.48);border-radius:12px;background:rgba(184,155,77,.08);color:#efcf90;font-size:13px;font-weight:700;line-height:1.45;transition:background .2s,border-color .2s,color .2s}
.les-region-map__region-cta svg{display:block;flex:0 0 17px;width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.les-region-map__region-cta:hover,.les-region-map__region-cta:focus-visible{color:#fff3ce;background:rgba(184,155,77,.18);border-color:#dec487}
.les-region-map__region-cta:focus-visible{outline:2px solid #f0d18b;outline-offset:3px}
.les-region-map .les-region-map__accordion .les-faq-item:target{border-color:#e3c689;box-shadow:0 0 0 1px rgba(227,198,137,.28)}
.les-region-map .les-region-map__accordion .les-faq-item[id]{scroll-margin-top:clamp(112px,14vw,148px)}
@media(max-width:980px){.les-region-map{grid-template-columns:1fr;gap:18px;max-width:710px;margin-inline:auto}.les-region-map__svg{max-width:520px;max-height:480px}.les-region-map__content{padding:18px 5px 5px}.les-region-map__title{max-width:none}.les-region-map__description{max-width:560px}}
@media(max-width:620px){.les-region-map{margin-block:38px;padding:15px;border-radius:18px}.les-region-map__visual{border-radius:12px}.les-region-map__map-eyebrow{padding:16px 15px 0;font-size:10px!important}.les-region-map__svg{width:min(100%,420px);max-height:400px}.les-region-map__content{padding:17px 3px 5px}.les-region-map__kicker{margin-bottom:15px}.les-region-map__current{grid-template-columns:27px minmax(0,1fr);gap:10px;padding:16px 12px}.les-region-map .les-region-map__accordion .les-faq-question{grid-template-columns:27px minmax(0,1fr);gap:10px;min-height:60px;padding:16px 52px 16px 12px}.les-region-map .les-region-map__accordion .les-faq-question::after{right:12px;width:29px;height:29px}.les-region-map .les-region-map__accordion .les-faq-answer p{padding:17px 17px 7px}.les-region-map__region-cta{margin:8px 17px 22px;max-width:calc(100% - 34px)}.les-region-map__links{gap:8px}}
@media(prefers-reduced-motion:reduce){.les-region-map__marker *,.les-region-map__region-cta{transition:none}.les-region-map .les-region-map__accordion .les-faq-item:hover{transform:none}}
