/* Location-only composition; shared homepage styles remain untouched. */
.wr-location-page #lo-perspective > .sticky__layer:has(> .lo-perspective__head) {
    margin-top: 100svh; min-height: 100svh; box-sizing: border-box;
    padding: 110px var(--spacing-layout) 64px; background: #041c1e;
    display: flex; flex-direction: column; justify-content: center; gap: 40px;
    position: relative;
    box-shadow: 0 -2px 0 #041c1e, 0 2px 0 #041c1e;
}
.wr-location-page #lo-perspective > .sticky__layer > .lo-perspective__head {
    margin: 0 !important; padding: 0 !important;
}
.wr-location-page #lo-perspective > .sticky__layer > .lo-perspective__caption {
    padding: 0 !important;
}
.wr-location-page #lo-perspective .lo-perspective__caption-item {
    grid-template-columns: 32px minmax(0,1fr) !important;
    min-height: 100px !important; padding: 18px 0 !important; gap: 0 20px !important;
}
.wr-location-page #lo-perspective .lo-perspective__caption-item__text {
    grid-column: 2; text-align: left !important; overflow: hidden;
    max-height: 0; opacity: 0; transition: max-height .3s ease, opacity .3s ease, padding .3s ease;
}
.wr-location-page #lo-perspective .is-open .lo-perspective__caption-item__text {
    max-height: 100px; opacity: 1; padding-top: 16px;
}
.wr-location-page #lo-perspective .lo-perspective__caption-item__text .text-c1 {
    max-width: none; margin-left: 0;
}
.wr-location-feature-toggle {
    display: block; width: 100%; padding: 0; border: 0; background: none;
    color: inherit; text-align: left; cursor: pointer;
}
.wr-location-feature-toggle:focus-visible { outline: 1px solid #eeefef; outline-offset: 6px; }
@media (max-width: 979px) {
    .wr-location-page #lo-perspective > .sticky__layer:has(> .lo-perspective__head) {
        padding: 80px 20px 40px; gap: 24px;
    }
}
@media (prefers-reduced-motion: reduce) {
    .wr-location-page #lo-perspective .lo-perspective__caption-item__text { transition: none; }
}
.wr-location-page .wr-footer :is(.wr-footer__legal, .footer__bottom) {
    --t-small: rgba(238,239,239,.5);
}
.wr-location-page .lo-intro__content > .background::after {
    content: ""; position: absolute; inset: 0; pointer-events: none;
    background: linear-gradient(to bottom, rgba(0,0,0,.68), rgba(0,0,0,.26) 110px, transparent 260px);
}
.wr-location-page #lo-parks { background: #041c1e; }
.wr-location-page #lo-parks .lo-parks__content {
    display: flex; flex-direction: column; padding: 100px var(--spacing-layout) 80px;
    gap: 48px; margin: 0;
}
.wr-location-page #lo-parks .lo-parks__caption {
    order: 0; display: grid; grid-template-columns: minmax(0, 2fr) minmax(0, 3fr);
    width: 100%; max-width: none; padding: 0 !important; margin: 0 !important; flex-basis: auto;
}
.wr-location-page #lo-parks .lo-parks__caption__title {
    align-self: center; padding: 40px 56px 40px 0 !important; margin: 0 !important;
}
.wr-location-page #lo-parks .lo-parks__caption__title h3 {
    font-size: 40px; line-height: 1.35; color: #eeefef;
}
.wr-location-page #lo-parks .lo-parks__caption__image {
    width: 100%; max-width: none; padding: 0; margin: 0; aspect-ratio: 6 / 5;
}
.wr-location-page #lo-parks .lo-parks__content > .col:not(.lo-parks__caption) {
    order: 1; width: 100%; max-width: none; flex-basis: auto; padding: 0;
}
.wr-location-page #lo-parks .lo-parks__list {
    display: grid; grid-template-columns: minmax(0, 3fr) minmax(0, 2fr);
    align-items: start; gap: 48px; padding: 0 !important; width: 76%; margin-left: auto;
}
.wr-location-page #lo-parks .lo-parks__list-item {
    width: 100%; max-width: none; margin: 0 !important; padding: 0 !important;
}
.wr-location-page #lo-parks .lo-parks__list-item > div { padding: 0 !important; aspect-ratio: 4 / 3; }
.wr-location-page #lo-parks .lo-parks__list-item:last-child > div { aspect-ratio: 1; }
.wr-location-page #lo-parks :is(.lo-parks__caption__image, .lo-parks__list-item) picture {
    display: block; width: 100%; height: 100%; overflow: hidden;
}
.wr-location-page #lo-parks :is(.lo-parks__caption__image, .lo-parks__list-item) img {
    width: 100%; height: 100%; object-fit: cover;
}
@media (max-width: 979px), (max-aspect-ratio: 10/11) and (max-width: 1439px) {
    .wr-location-page #lo-parks .lo-parks__content { padding: 72px 20px 48px; gap: 24px; }
    .wr-location-page #lo-parks .lo-parks__caption { grid-template-columns: minmax(0,1fr); gap: 32px; }
    .wr-location-page #lo-parks .lo-parks__caption__title { padding: 0 !important; }
    .wr-location-page #lo-parks .lo-parks__caption__title h3 { font-size: 30px; line-height: 1.35; }
    .wr-location-page #lo-parks .lo-parks__list { width: 100%; gap: 16px; }
}
.wr-location-page { font-family: Inter, Helvetica, Arial, sans-serif; }
.wr-location-page .location-page :is(h1,h2,h3,.lo-photos__title) {
    font-family: "Playfair Display", Georgia, serif;
    font-weight: 400;
    letter-spacing: 0;
}
.wr-location-page .lang-toggle {
    border: 0; border-radius: 0; padding: 0; background: none;
    display: inline-flex; align-items: center; gap: .45em;
    margin-right: 1.4em; font-size: 12px; line-height: 1;
}
.wr-location-page .lang-toggle__opt {
    background: none; border: 0; border-bottom: 1px solid transparent;
    border-radius: 0; margin: 0; padding: .3em 0; color: inherit;
    font: inherit; opacity: .45; cursor: pointer;
}
.wr-location-page .lang-toggle__opt.is-active { opacity: 1; background: none; border-bottom-color: currentColor; }
.wr-location-page .lang-toggle__sep { display: inline; opacity: .35; }
.wr-location-page .js-header { font-size: 12px; }
.wr-location-page .js-header .btn { font-weight: 400; }
.wr-location-page .js-header .icon { color: #eeefef; }
html:not([data-lang="en"]) .wr-location-page .t-en,
html[data-lang="en"] .wr-location-page .t-de { display: none !important; }
.wr-location-page .lo-intro__caption { text-align: right; }
.wr-location-page .lo-intro__caption h1 { font-size: 112px; line-height: 1.05; }
.wr-location-page .lo-intro__caption .text-c1 { line-height: 1.6; }
.wr-location-page .lo-intro__caption .lo-intro__next { right: auto; left: 0; }
.wr-location-page #lo-perspective .lo-perspective__caption-cards { counter-reset: location-feature; }
.wr-location-page #lo-perspective .lo-perspective__head {
    background: #041c1e; margin-bottom: 0 !important;
    padding-bottom: 48px; position: relative;
    box-shadow: 0 0 0 2px #041c1e;
}
.wr-location-page #lo-perspective .lo-perspective__caption {
    background: #041c1e; position: relative; padding: 0 var(--spacing-layout) 72px;
    gap: 56px;
    box-shadow: 0 0 0 2px #041c1e;
}
.wr-location-page #lo-perspective .wr-perspective-intro {
    position: relative; inset: auto; flex: 0 1 35%; width: 35%;
    padding: 24px 0; font-size: 20px; line-height: 1.65;
}
.wr-location-page #lo-perspective .lo-perspective__caption-item {
    counter-increment: location-feature;
    display: grid; grid-template-columns: 32px minmax(0, 1fr) minmax(100px, .65fr);
    align-items: center; gap: 20px; aspect-ratio: auto;
    min-height: 136px; padding: 28px 30px;
    border: 0; border-top: 1px solid rgba(255,255,255,.22);
    border-radius: 0; background: #041c1e; backdrop-filter: none;
}
.wr-location-page #lo-perspective .lo-perspective__caption-item::before {
    content: "0" counter(location-feature); color: #9aafa8; font-size: 12px;
}
.wr-location-page #lo-perspective .lo-perspective__caption-item .h3 {
    font-family: "Playfair Display", Georgia, serif; font-size: 36px; line-height: 1.2;
}
.wr-location-page #lo-perspective .lo-perspective__caption-item br { display: none; }
.wr-location-page #lo-perspective .lo-perspective__caption-item__text { align-self: center; }
.wr-location-page #lo-perspective .lo-perspective__caption-item__text .text-c1 {
    font-size: 15px; line-height: 1.5; padding-top: 0;
}
.wr-location-page #lo-perspective .lo-perspective__caption-cards > .mb-0\.5 {
    padding: 30px; margin-bottom: 0 !important; background: #041c1e;
    font-size: 18px; line-height: 1.6;
}
.wr-location-page .cookie-consent { --t-text: #eeefef; --t-small: #eeefef; --t-button-outline-text: #eeefef; color: #eeefef; }
.wr-location-page .cookie-consent :is(a,span) { color: #eeefef; }
@media (min-width: 980px) and (min-aspect-ratio: 10/11), (min-width: 1440px) {
    .wr-location-page .lo-intro__text-sticky .lo-intro__text {
        left: auto; right: 0; width: 46%; margin-left: auto; padding-left: 30px; padding-right: var(--spacing-layout);
    }
    .wr-location-page .lo-intro__text h3 { font-size: 48px; line-height: 1.25; }
    .wr-location-page #lo-video .lo-video__title { left: var(--spacing-layout); right: auto; max-width: 65%; }
    .wr-location-page #lo-video .lo-video__title h2 { text-align: left; font-size: 76px; line-height: 1.12; }
    .wr-location-page #lo-video .lo-video__text { position: absolute; top: auto; bottom: var(--spacing-layout); left: auto; right: var(--spacing-layout); margin: 0; width: 34%; max-width: 480px; padding: 24px 28px; background: #041c1e; color: #eeefef; line-height: 1.65; }
    .wr-location-page #lo-perspective .lo-perspective__head { text-align: left; padding-right: var(--spacing-layout); }
    .wr-location-page #lo-perspective .lo-perspective__head h2 { font-size: 88px; line-height: 1.1; }
    .wr-location-page #lo-perspective .lo-perspective__caption-cards { margin: 0; padding: 0; flex: 1 1 0; width: auto; gap: 0; }
    .wr-location-page #lo-perspective .lo-perspective__caption-text.is-hidden--md-down { left: auto; right: var(--spacing-layout); width: 30%; line-height: 1.65; }
    .wr-location-page #lo-photos .lo-photos__title { width: 64%; margin-left: var(--spacing-layout); margin-right: auto; text-align: left; font-size: 58px; line-height: 1.2; }
    .wr-location-page #lo-photos .lo-photos__3 { flex-basis: 33%; width: 33%; margin-left: 8%; }
    .wr-location-page #lo-photos .lo-photos__4 { flex-basis: 37%; width: 37%; margin-left: 14%; }
    .wr-location-page #lo-slider .lo-slider__slider-caption {
        padding: max(110px, 30vh) 5% 0 6%;
        --t-small: #eeefef; --t-text: #eeefef; --t-heading: #fff;
    }
    .wr-location-page #lo-slider .lo-slider__slider-caption .js-nature-controller-selector {
        width: 100%; max-width: 460px; flex-basis: auto; position: relative; z-index: 1;
    }
    .wr-location-page #lo-slider .lo-slider__slider-caption .text-t1 {
        color: #eeefef !important; font-size: 20px; line-height: 1.65;
    }
    .wr-location-page #lo-slider .lo-slider__slider-caption .text-color-heading {
        display: block; margin-bottom: 20px; color: #fff;
        font-family: "Playfair Display", Georgia, serif; font-size: 36px; line-height: 1.2;
    }
    .wr-location-page #lo-slider .lo-slider__slider-caption .group {
        margin-top: 36px;
    }
    .wr-location-page #lo-slider .lo-slider__slider-caption .btn {
        color: #eeefef; border-color: rgba(255,255,255,.45);
    }
    .wr-location-page #lo-slider .lo-slider__slider__images { padding-right: var(--spacing-layout); padding-bottom: var(--spacing-layout); }
}
@media (max-width: 979px), (max-aspect-ratio: 10/11) and (max-width: 1439px) {
    .wr-location-page .lo-intro__caption h1 { font-size: 54px !important; }
    .wr-location-page .lo-intro__caption > .pr-3 { padding-right: 0 !important; }
    .wr-location-page .lo-intro__caption { padding-bottom: 28px; }
    .wr-location-page .wr-intro-text-mobile h3 { font-size: 34px; line-height: 1.3; }
    .wr-location-page #lo-video .lo-video__title h2 { font-size: 40px !important; line-height: 1.15; text-align: left; }
    .wr-location-page #lo-video .lo-video__text { padding: 18px 20px; background: #041c1e; color: #eeefef; }
    .wr-location-page #lo-video .lo-video__text p { line-height: 1.4; }
    .wr-location-page #lo-perspective .lo-perspective__head h2 { font-size: 48px !important; line-height: 1.15; }
    .wr-location-page #lo-perspective .lo-perspective__head { padding-right: 20px; padding-bottom: 28px; }
    .wr-location-page #lo-perspective .lo-perspective__caption { flex-direction: column; gap: 0; padding: 0 20px 40px; background: #041c1e; }
    .wr-location-page #lo-perspective .wr-perspective-intro { width: 100%; flex: auto; padding: 0 0 28px; font-size: 17px; }
    .wr-location-page #lo-perspective .lo-perspective__caption-text.is-hidden--lg-up {
        position: relative; inset: auto; width: 100%; padding: 28px 0; font-size: 17px; line-height: 1.6;
    }
    .wr-location-page #lo-perspective .lo-perspective__caption-cards { width: 100%; padding: 0; gap: 0; }
    .wr-location-page #lo-perspective .lo-perspective__caption-cards > .mb-0\.5 { padding: 0 0 28px; font-size: 16px; }
    .wr-location-page #lo-perspective .lo-perspective__caption-item { grid-template-columns: 22px minmax(0,1fr); gap: 12px; padding: 24px 0; min-height: 120px; }
    .wr-location-page #lo-perspective .lo-perspective__caption-item .h3 { font-size: 30px; }
    .wr-location-page #lo-perspective .lo-perspective__caption-item__text { grid-column: 2; text-align: left; }
    .wr-location-page #lo-perspective .lo-perspective__caption-item__text .text-c1 { max-width: none; margin-left: 0; }
    .wr-location-page #lo-photos .lo-photos__title { font-size: 34px; line-height: 1.25; text-align: left; }
}
