/* Mobile: keep the atmosphere without repainting large filters on every scroll. */
@media (max-width:700px), (hover:none) and (pointer:coarse){
 .sahne-layers .ambient-tonal-field{filter:none;mix-blend-mode:normal;background:radial-gradient(ellipse at 20% 30%,#35465335,transparent 65%),radial-gradient(ellipse at 80% 75%,#35465330,transparent 60%)}
 .sahne-layers .cinema:before,.sahne-layers .material-section:before{animation:none}
 .sahne-layers .edge-fog{animation:none;filter:none}
 .sahne-layers .project-picture img{filter:var(--photo-grade);transition:opacity .55s ease;transform:none}
 .sahne-layers .project-picture .intro-toned-image{filter:grayscale(1) sepia(.15) blur(2px);mix-blend-mode:luminosity}
 .sahne-layers.intro-complete .intro-toned-image{display:none}
 .sahne-layers .material-image{filter:grayscale(.8);transform:none}
 .sahne-layers .material-section .formation-grid{transform:none}
 .sahne-layers .formation-cell{backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px);box-shadow:inset 1px 1px 0 #ffffff35,0 8px 20px #35465318}
 .sahne-layers .decorative-cell{backdrop-filter:none;-webkit-backdrop-filter:none}
 .sahne-layers .formation-cell:before{background-position:center,50% center}
 .sahne-layers .sidebar{backdrop-filter:none;-webkit-backdrop-filter:none}
 .sahne-layers .menu{backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
 .sahne-layers .journey-line{transition:opacity .3s}
 .sahne-layers .letter-heading .reveal-letter{animation:none;opacity:1;transform:none}
 .sahne-layers .letter-heading:not(.letters-visible){opacity:.25}
 .sahne-layers .letter-heading{transition:opacity .45s}
}
@media(max-width:700px){
 .sahne-layers .sidebar{padding-top:env(safe-area-inset-top,0px);height:calc(66px + env(safe-area-inset-top,0px))}
 .sahne-layers .menu{top:calc(66px + env(safe-area-inset-top,0px));overflow-y:auto;overscroll-behavior:contain;gap:18px;padding:32px 9vw max(32px,env(safe-area-inset-bottom,0px))}
 .sahne-layers .menu>a{font-size:clamp(26px,7vw,36px)}
 .sahne-layers .menu .menu-email{font-size:14px;margin-top:22px}
 .sahne-layers:not(.detail-page) .cinema{padding-top:calc((82px + env(safe-area-inset-top,0px)) * var(--intro-exit));transition:none}
 .sahne-layers:not(.detail-page) .project{grid-template-columns:calc(76px * var(--intro-exit)) minmax(0,1fr);column-gap:calc(10px * var(--intro-exit));transition:none}
 .sahne-layers .project-side{gap:8px}
 .sahne-layers .project-side .project-name{font-size:32px}
 .sahne-layers .project-side-copy{font-size:14px}
 .sahne-layers .rail-controls button,.sahne-layers .menu-toggle{min-width:44px;min-height:44px}
 .sahne-layers .project-caption a{display:inline-flex;align-items:center;min-height:44px}
 .sahne-layers .contact-bottom>a{overflow-wrap:anywhere}
 .sahne-layers .contact{padding-bottom:max(35px,env(safe-area-inset-bottom,0px))}
}
@media(prefers-reduced-motion:reduce){.sahne-layers .letter-heading{opacity:1!important;transition:none}}

/* Keep every menu item reachable, including short landscape viewports. */
.sahne-layers .menu{overflow-y:auto;overscroll-behavior:contain;justify-content:flex-start}
.sahne-layers .menu>a:first-child{margin-top:auto}
.sahne-layers .menu>a:last-child{margin-bottom:auto}
.sahne-layers .menu>a{flex-shrink:0}
