/* Shared German editorial pages, preserving the original JP Tours visual system. */
:where(a,button,summary,input,textarea):focus-visible{outline:3px solid var(--accent);outline-offset:5px}
.text-link,.article-content a{color:var(--accent);text-decoration:underline;text-underline-offset:5px}
.muted{display:block;margin-top:16px;color:var(--muted);font-size:.72rem}
.mobile-nav{display:none}
.tour-page .topbar{gap:18px}
.tour-page .desktop-nav{gap:20px;font-size:.8rem}
.discovery-section{padding-block:90px}
.discovery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.discovery-card{display:flex;flex-direction:column;border-top:1px solid #4f6264;padding:26px 10px 26px 0;transition:border-color .2s}
.discovery-card:hover{border-color:var(--accent)}
.card-type{color:var(--accent);font-size:.7rem;font-weight:750;letter-spacing:.13em;text-transform:uppercase}
.discovery-card h3{font-size:1.65rem;line-height:1.18;margin:17px 0 12px}
.discovery-card p{font-size:.94rem;color:var(--muted);margin:0 0 22px}
.card-link{margin-top:auto;font-size:.85rem;font-weight:700}.card-link span{color:var(--accent);margin-left:12px}
.tour-discovery-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.tour-discovery{min-width:0;background:var(--panel);border:1px solid var(--line)}
.tour-image-link{display:block;overflow:hidden}.tour-image-link img{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;transition:transform .3s}.tour-image-link:hover img{transform:scale(1.02)}
.tour-discovery-copy{padding:30px}.tour-discovery-copy h3{font-size:clamp(1.5rem,2.6vw,2.35rem);line-height:1.12}.tour-discovery-copy p:not(.section-kicker){color:var(--muted)}
.tour-price{padding-top:20px;border-top:1px solid var(--line)}.tour-price strong{display:block;color:var(--text);font-size:1.6rem}.tour-price span{display:block;font-size:.82rem}
.tour-page .footer-grid{grid-template-columns:1.2fr .9fr 1fr;gap:40px}.footer-grid>div{min-width:0}.footer-grid>div>strong{display:block;margin-bottom:18px}.footer-grid a{display:block;margin:10px 0;font-size:.86rem}
.tour-page .hero-copy h1{font-size:clamp(3.1rem,6.9vw,6.6rem)}
.content-page .page-hero{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:55px;align-items:center;padding-block:132px 48px}
.breadcrumbs{display:flex;flex-wrap:wrap;align-items:center;gap:10px;color:var(--muted);font-size:.72rem;margin-bottom:35px}.breadcrumbs a{text-decoration:underline;text-underline-offset:4px}
.content-page .page-hero h1{font-size:clamp(2.75rem,5.1vw,5.2rem);line-height:1.03;text-transform:none;letter-spacing:-.045em;margin-bottom:25px}
.page-lead{color:#c6d2d1;font-size:1.13rem;line-height:1.65;margin-bottom:28px}
.page-hero figure{margin:0}.page-hero figure img{width:100%;height:auto;aspect-ratio:4/5;object-fit:cover}.page-hero figcaption{color:var(--muted);font-size:.68rem;line-height:1.5;margin-top:10px}
.page-hero.no-image{display:block;max-width:1000px}.page-hero.no-image .page-lead{max-width:780px}
.page-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-block:1px solid var(--line);padding-block:26px;gap:20px}.page-facts strong{display:block;font-size:1.25rem}.page-facts span{display:block;color:var(--muted);font-size:.8rem;margin-top:3px}
.article-layout{display:grid;grid-template-columns:minmax(0,2.3fr) minmax(250px,1fr);gap:70px;padding-block:75px}
.article-content{min-width:0}.article-content>section{scroll-margin-top:100px;margin-bottom:70px}.article-content>section:last-child{margin-bottom:0}
.article-content h2{font-size:clamp(1.85rem,3vw,2.8rem);line-height:1.12;margin:0 0 25px}.article-content h3{font-size:1.3rem;line-height:1.2;margin-bottom:15px}
.article-content p{color:#becdcd;line-height:1.8;margin:0 0 22px}.article-content strong{color:var(--text)}
.article-list,.article-steps{padding-left:22px;margin:24px 0 28px;color:#becdcd}.article-list li,.article-steps li{margin:14px 0;padding-left:6px}.article-list li::marker,.article-steps li::marker{color:var(--accent)}
.editorial-cards{display:grid;gap:0;margin-block:28px}.editorial-cards article{padding:24px 0;border-top:1px solid var(--line)}.editorial-cards article>span{display:block;font-size:.69rem;letter-spacing:.14em;color:var(--accent);margin-bottom:12px}.editorial-cards p{margin-bottom:0}
.source-note{font-size:.84rem;border-left:2px solid var(--accent);padding-left:20px}
.article-aside{align-self:start;position:sticky;top:100px;min-width:0}.contents-nav{display:flex;flex-direction:column;gap:15px;margin-bottom:36px}.contents-nav strong{font-size:.76rem;text-transform:uppercase;letter-spacing:.12em;margin-bottom:3px}.contents-nav a{display:flex;gap:14px;font-size:.88rem;color:var(--muted)}.contents-nav a:hover{color:var(--accent)}.contents-nav a span{color:var(--accent);font-size:.72rem;padding-top:3px}
.inquiry-aside{border:1px solid var(--line);background:var(--panel);padding:26px}.inquiry-aside h2{font-size:1.6rem;line-height:1.2}.inquiry-aside p{color:var(--muted);font-size:.9rem}.inquiry-aside small{display:block;color:var(--muted);font-size:.72rem;line-height:1.6;margin-top:15px}.inquiry-aside .section-kicker{color:var(--accent);font-size:.65rem}
.related-section{border-top:1px solid var(--line)}.related-section h2{font-size:clamp(2rem,4vw,3.7rem)}
.answer{border-top:1px solid var(--line);padding:22px 0}.answer:last-child{border-bottom:1px solid var(--line)}.answer summary{font-size:1.1rem;font-weight:700;cursor:pointer;line-height:1.5;padding-right:12px}.answer summary::marker{color:var(--accent)}.answer p{margin:20px 0 0}
@media(max-width:1100px){.tour-page .desktop-nav{display:none}.mobile-nav{display:block}.mobile-nav summary{cursor:pointer;padding:12px;font-size:.85rem;font-weight:750;list-style:none;border:1px solid var(--line);border-radius:3px}.mobile-nav summary::-webkit-details-marker{display:none}.mobile-nav summary span{margin-left:10px;color:var(--accent)}.tour-page .mobile-nav nav{position:absolute;right:18px;top:calc(100% + 8px);width:min(360px,calc(100vw - 36px));max-height:calc(100dvh - 100px);overflow-y:auto;padding:18px;background:#0d171a;border:1px solid #38504f;display:flex;align-items:stretch;flex-direction:column;gap:0;box-shadow:var(--shadow)}.tour-page .mobile-nav nav a{display:block!important;padding:12px 14px;font-size:.9rem;line-height:1.4}.content-page .page-hero{gap:30px}.article-layout{gap:35px}.discovery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.tour-page .hero-copy h1{font-size:clamp(2.35rem,10.1vw,4rem)}.discovery-section{padding-block:60px}.discovery-grid,.tour-discovery-grid{grid-template-columns:minmax(0,1fr)}.discovery-card{padding-block:25px}.tour-discovery-copy{padding:24px}.tour-page .footer-grid{grid-template-columns:1fr;gap:28px}.content-page .page-hero{display:flex;flex-direction:column;gap:30px;padding-block:28px 30px}.content-page .page-hero h1{font-size:clamp(2.4rem,10vw,4.2rem)}.page-lead{font-size:1.02rem}.breadcrumbs{margin-bottom:30px;font-size:.67rem}.page-hero figure{width:100%}.page-hero figure img{aspect-ratio:16/10}.page-facts{grid-template-columns:1fr;gap:16px;padding-block:22px}.page-facts>div{display:flex;justify-content:space-between;align-items:center;gap:20px}.page-facts strong{font-size:1rem}.page-facts span{font-size:.75rem;text-align:right}.article-layout{display:flex;flex-direction:column;gap:45px;padding-block:45px}.article-aside{position:static;order:-1}.contents-nav{margin-bottom:0;gap:13px}.article-aside .inquiry-aside{display:none}.article-content>section{margin-bottom:50px;scroll-margin-top:88px}.article-content h2{font-size:1.95rem}.article-content p{font-size:1rem}.content-page .final-cta h2{font-size:2.5rem}.content-page .mobile-booking{visibility:visible}.tour-page .mobile-nav summary{padding:10px 12px}.tour-page .topbar .mobile-nav{margin-left:auto}.content-page .page-hero .button{width:100%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.tour-image-link img,.discovery-card{transition:none}}

/* The real view behind the sign is the visual centerpiece of the hike. */
.tour-page .hike-panorama{margin:0 0 52px;position:relative;overflow:hidden;background:#071012}
.tour-page .hike-panorama img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:contain}
.tour-page .hike-panorama figcaption{display:grid;grid-template-columns:1fr auto;gap:4px 24px;align-items:end;margin:0;padding:23px 26px;background:#0b1c1e;border-bottom:1px solid var(--line)}
.tour-page .hike-panorama figcaption strong{display:block;color:var(--text);font-size:clamp(1.25rem,2.2vw,2rem);font-weight:750;line-height:1.2;letter-spacing:-.025em}
.tour-page .hike-panorama figcaption>span{grid-column:1;color:var(--muted);font-size:.82rem;margin-top:4px}
.tour-page .hike-panorama figcaption small{grid-column:2;grid-row:1/3;color:var(--muted);font-size:.65rem}
.hike-panorama figcaption a{text-decoration:underline;text-underline-offset:3px}
.content-page .page-hero.panorama-hero{display:block;padding-top:108px;padding-bottom:48px}
.panorama-hero .breadcrumbs{margin-bottom:22px}
.content-page .panorama-hero .hike-panorama{width:100%;margin-bottom:46px}
.content-page .panorama-intro{display:grid;grid-template-columns:1.15fr .85fr;gap:55px;align-items:center}
.content-page .panorama-intro h1{font-size:clamp(2.75rem,4.7vw,4.7rem);margin-bottom:0}
@media(max-width:760px){
 .tour-page .hike-panorama{margin-inline:-18px;margin-bottom:35px;width:calc(100% + 36px)}
 .tour-page .hike-panorama img{height:auto;aspect-ratio:3/2;object-fit:contain}
 .tour-page .hike-panorama figcaption{display:block;padding:19px 18px}
 .tour-page .hike-panorama figcaption strong{font-size:1.35rem}
 .tour-page .hike-panorama figcaption>span{display:block;font-size:.73rem}
 .tour-page .hike-panorama figcaption small{display:block;margin-top:10px;font-size:.62rem}
 .content-page .page-hero.panorama-hero{padding-top:24px;padding-bottom:32px}
 .content-page .panorama-hero .hike-panorama{width:calc(100% + 36px);margin-inline:-18px;margin-bottom:30px}
 .content-page .panorama-intro{grid-template-columns:minmax(0,1fr);gap:18px}
 .content-page .panorama-intro h1{font-size:clamp(2.35rem,9.8vw,4rem)}
 .content-page .panorama-intro .page-lead{margin-bottom:22px}
}

/* The third private tour. */
@media(min-width:1101px){.tour-discovery-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.tour-discovery-copy{padding:25px}.tour-discovery-copy h3{font-size:1.9rem}}
.tour-discovery{display:flex;flex-direction:column}.tour-discovery-copy{display:flex;flex-direction:column;flex:1}.tour-discovery-copy .tour-price{margin-top:auto}.tour-discovery-copy>.text-link{font-size:.9rem}
.halfday-highlights{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:32px 0}.halfday-highlights>div{border-top:1px solid var(--accent);padding-top:18px}.halfday-highlights strong{font-size:1.1rem}.article-content .halfday-highlights p{font-size:.88rem;margin:10px 0 0}
#halfday-route-field{margin:0 0 25px}#halfday-route-field>small{display:block;font-weight:400;font-size:.8rem;color:var(--muted);margin-top:8px}
@media(max-width:760px){.halfday-highlights{grid-template-columns:minmax(0,1fr);gap:20px}.article-content .button{white-space:normal;text-align:center;max-width:100%}}

/* Real destination photography with generous compositions on every screen. */
.destination-gallery{padding-block:36px 72px}
.destination-gallery .section-head{margin-bottom:30px}
.destination-photo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.destination-photo{position:relative;margin:0;min-width:0;overflow:hidden;background:#0d2023}
.destination-photo--wide{grid-column:1/-1}
.destination-photo a{display:block;position:relative;isolation:isolate}
.destination-photo img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;object-position:var(--photo-position,center)}
.destination-photo--wide img{aspect-ratio:16/9}
.destination-photo figcaption{pointer-events:none;position:absolute;inset:auto 0 0;padding:70px 28px 26px;background:linear-gradient(transparent,rgba(3,12,15,.87));color:#fff}
.destination-photo figcaption>span{display:block;font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;color:#e1f2ed;line-height:1.6}
.destination-photo figcaption strong{display:block;font-size:clamp(1.7rem,2.8vw,2.75rem);line-height:1.13;letter-spacing:-.035em;margin:7px 0 10px;text-wrap:balance}
.destination-photo--wide figcaption{padding:100px 40px 35px}
.destination-photo--wide figcaption strong{font-size:clamp(2rem,4.8vw,4.5rem)}
.destination-photo figcaption small{font-size:.75rem;color:#c6fff0}
.destination-photo a:focus-visible{outline:3px solid var(--accent);outline-offset:-5px}
.destination-gallery-foot{display:flex;justify-content:space-between;align-items:center;gap:30px;padding-block:24px 15px}
.destination-gallery-foot p{color:var(--muted);font-size:.84rem;max-width:560px;margin:0}
.destination-gallery-foot>a{font-size:.86rem;flex-shrink:0}
.photo-credits{font-size:.68rem;color:var(--muted);line-height:1.8}.photo-credits summary{cursor:pointer;display:list-item}.photo-credits p{margin:10px 0 0}.photo-credits a{text-decoration:underline;text-underline-offset:3px}
.content-page .page-hero.destination-hero{display:block;padding-top:108px;padding-bottom:45px}
.destination-hero .breadcrumbs{margin-bottom:24px}
.content-page .destination-hero .destination-hero-photo{margin:0 0 35px}
.content-page .destination-hero .destination-hero-photo img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;object-position:50% 58%}
.content-page .destination-hero .destination-hero-photo figcaption{font-size:.68rem;margin-top:9px}
.destination-intro{display:grid;grid-template-columns:1.1fr .9fr;gap:50px;align-items:center}
.destination-intro .page-lead{margin-bottom:20px}
.hero-group-price{margin:0 0 24px}.hero-group-price strong{display:block;color:var(--accent);font-size:1.75rem;line-height:1.3}.hero-group-price span{display:block;color:var(--muted);font-size:.78rem;line-height:1.6;margin-top:6px}
.destination-gallery--compact{padding-top:60px;padding-bottom:30px}
.halfday-price-box{border:1px solid #45635e;background:#102a29;padding:30px;margin:28px 0}
.halfday-price-box>strong{display:block;font-size:clamp(3.2rem,6vw,4.8rem);line-height:1.1;letter-spacing:-.045em;color:var(--accent)}
.halfday-price-box>strong>span{font-size:1.1rem;letter-spacing:0;white-space:nowrap}.article-content .halfday-price-box>p:last-child{font-size:.95rem;margin:16px 0 0;max-width:400px}
@media(max-width:1000px){.destination-gallery-foot{align-items:flex-start;flex-direction:column;gap:15px}.destination-gallery-foot>a{flex-shrink:1}.destination-intro{gap:30px}}
@media(max-width:760px){
 .destination-gallery{padding-block:10px 45px}.destination-gallery--compact{padding-top:40px;padding-bottom:20px}
 .destination-photo-grid{grid-template-columns:minmax(0,1fr);gap:16px;margin-inline:-18px}
 .destination-photo--wide{grid-column:auto}.destination-photo img,.destination-photo--wide img{aspect-ratio:4/3}
 .destination-photo figcaption,.destination-photo--wide figcaption{padding:65px 22px 22px}
 .destination-photo figcaption strong,.destination-photo--wide figcaption strong{font-size:clamp(1.7rem,7vw,2.6rem)}
 .destination-photo figcaption>span{font-size:.61rem}.destination-photo figcaption small{font-size:.7rem}
 .destination-gallery-foot{padding-top:20px}.destination-gallery-foot p{font-size:.78rem}
 .content-page .page-hero.destination-hero{padding-top:24px;padding-bottom:30px}
 .content-page .destination-hero .destination-hero-photo{width:calc(100% + 36px);margin-inline:-18px;margin-bottom:28px}
 .content-page .destination-hero .destination-hero-photo img{aspect-ratio:4/3}
 .content-page .destination-hero .destination-hero-photo figcaption{padding-inline:18px;font-size:.59rem}
 .destination-intro{grid-template-columns:minmax(0,1fr);gap:0}.content-page .destination-intro h1{margin-bottom:18px}
 .hero-group-price strong{font-size:1.65rem}.hero-group-price span{font-size:.74rem}
 .halfday-price-box{padding:24px}
}

/* Homepage: introduce the tours immediately, with compact, aligned supporting copy. */
.tour-page #touren{padding-block:56px 32px}
.tour-page #privat{padding-block:56px}
.tour-page #privat h2{margin-bottom:0}
.tour-page #privat .intro-grid{margin-left:0;margin-top:24px;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}
.tour-page #privat .intro-grid p{margin:0}
@media(max-width:760px){
 .tour-page #touren{padding-block:40px 24px}
 .tour-page #privat{padding-block:40px}
 .tour-page #privat .intro-grid{grid-template-columns:minmax(0,1fr);gap:16px;margin-top:22px}
}

/* Clear next step directly below the three tour options. */
.tour-overview-cta{margin-top:32px;text-align:center}
.tour-overview-cta .button{min-height:56px;padding:17px 28px;gap:12px;font-size:1.05rem;box-shadow:0 8px 28px rgba(27,213,196,.12)}
.tour-overview-cta p{margin:12px 0 0;color:var(--muted);font-size:.82rem}
@media(max-width:760px){.tour-overview-cta{margin-top:24px}.tour-overview-cta .button{width:100%;padding-inline:18px}}

/* Featured full-day tour: readable badge over the image. */
.tour-image-link{position:relative}
.tour-badge{position:absolute;top:16px;left:16px;z-index:1;padding:9px 13px;border-radius:3px;background:var(--accent);color:var(--accent-dark);font-size:.75rem;font-weight:850;line-height:1.2;letter-spacing:.06em;text-transform:uppercase;box-shadow:0 4px 16px rgba(0,0,0,.2);pointer-events:none}
@media(max-width:760px){.tour-badge{top:12px;left:12px;padding:8px 11px;font-size:.72rem}}
