/* Approved preview mark: original logo, 25% opacity, centered, 50% of frame width. */
.media-watermark-frame { position:relative; isolation:isolate; overflow:hidden; border-radius:var(--radius,6px); }
.media-watermark-frame > img { display:block; }
.media-watermark { position:absolute; left:50%; top:50%; width:50%; transform:translate(-50%,-50%); opacity:.25; z-index:2; pointer-events:none; }
.media-watermark .media-watermark-logo { position:static; display:block; width:100%; height:auto; max-width:none; margin:0; padding:0; border:0; border-radius:0; object-fit:contain; filter:invert(1) drop-shadow(0 1px 2px #0008); }
.hero-v3 > .media-watermark { z-index:-1; }
.detail-hero .detail-head,.detail-hero .breadcrumbs { position:relative; z-index:3; }
.media-watermark-region img,.media-watermark-frame img,.media-watermark-frame video { -webkit-user-drag:none; -webkit-touch-callout:none; user-select:none; }
.media-fullscreen { position:absolute; right:10px; top:10px; z-index:4; width:44px; height:44px; display:grid; place-items:center; color:#fff; background:#192019bb; border:1px solid #ffffff44; border-radius:6px; cursor:pointer; }
.media-fullscreen:focus-visible { outline:3px solid var(--accent,#e0d2b4); outline-offset:3px; }
.media-video-frame:fullscreen { width:100vw; height:100vh; border-radius:0; background:#000; display:grid; place-items:center; }
.media-video-frame:fullscreen > video { width:100%; height:100%; max-height:none; object-fit:contain; }
.media-video-frame:fullscreen .media-fullscreen { top:16px; right:16px; }
.media-watermark-frame[hidden],.media-fullscreen[hidden] { display:none; }
.journey-note p { font-style:normal; line-height:1.6; margin-top:14px; }
.rider-feedback { margin-top:24px; padding-top:20px; border-top:1px solid var(--line); }
.journey-note .rider-feedback p { margin:12px 0 0; font-size:16px; line-height:1.7; }
/* Generic highlights: orange waypoint inside restrained sand rings. */
.route-destination { color:#e5d7b9; pointer-events:none; }
.destination-stem { fill:none; stroke:currentColor; stroke-width:1; opacity:.65; }
.destination-anchor { fill:currentColor; }
.route-destination-badge { transform:translateY(-45px); }
.destination-ring-outer { fill:var(--ink); stroke:currentColor; stroke-width:1.5; }
.destination-ring-inner { fill:none; stroke:currentColor; stroke-width:.7; opacity:.65; }
.destination-waypoint { fill:#ff6b18; }
.route-highlights-entered .destination-ring-inner { animation:waypoint-breathe 4s ease-in-out 2; }
@keyframes waypoint-breathe { 0%,100% { opacity:.65; } 50% { opacity:.2; } }
@media(prefers-reduced-motion:reduce) { .route-highlights-entered .destination-ring-inner { animation:none; } }
.route-stops .route-stop-highlight { display:inline-flex; align-items:center; gap:6px; color:#e5d7b9; font-weight:600; }
.route-stops .destination-label-icon { width:16px; height:16px; flex:0 0 16px; }
@media(max-width:700px) {
 .route-destination-badge { transform:translateY(-70px) scale(2); }
 .route-stops .route-stop-highlight { display:block; }
 .route-stops .route-stop-highlight .destination-label-icon { display:none; }
}
.header-language { align-items:center; gap:8px; }
.header-language a { width:44px; height:44px; min-height:44px; padding:0; line-height:1; font-weight:600; border-radius:4px; }
.header-language .language-separator { display:block; align-self:center; width:1px; height:16px; padding:0; font-size:0; background:currentColor; opacity:.35; }
