/* Scroll-linked presentation: natural scrolling, one short sticky scene. */
:root{--scene-header:90px}.dream-hero{--scene-progress:0}
@supports(overflow:clip){
 @media(min-width:901px) and (prefers-reduced-motion:no-preference){
  .dream-hero.scroll-scene{height:148svh;min-height:850px;overflow:clip}
  .scroll-scene .dream-layout{position:sticky;top:var(--scene-header);height:calc(100svh - var(--scene-header));min-height:590px;padding-block:45px;max-height:950px}
  .scroll-scene .dream-copy{transform:translateY(calc(var(--scene-progress) * -16px));opacity:calc(1 - var(--scene-progress) * .16)}
  .scroll-scene .dream-visual,.scroll-scene .dream-visual:hover{transform:perspective(1400px) rotateY(calc(-5deg + var(--scene-progress) * 5deg)) scale(calc(1 + var(--scene-progress) * .055));transition:none}
  .scroll-scene .floating-code{transform:translateY(calc(var(--scene-progress) * -14px)) rotate(calc(4deg - var(--scene-progress) * 3deg));transition:none}
  .scroll-scene .hero-bottom-link{position:absolute;bottom:0;left:0;right:0;background:#0b1422e8}
 }
}
.visual-image,.it-image{overflow:hidden}.it-image{border-radius:10px}.visual-image img,.it-image img{transform-origin:60% 55%;transition:none;backface-visibility:hidden}.visual-image:hover img{transform:none}
.rail-navigation{display:none;justify-content:flex-end;gap:8px;margin-top:22px}.rail-navigation button{height:42px;width:42px;border-radius:50%;border:1px solid #9db0aa;background:#f3f2ed;color:#1a3c41;font-size:20px;cursor:pointer;transition:background .2s}.rail-navigation button:hover{background:#d4e5da}.rail-navigation button:focus-visible{outline:3px solid #a94418;outline-offset:3px}
@media(max-width:760px){
 .project-pair{display:flex;gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-inline:0;overscroll-behavior-x:contain;padding-bottom:12px;scrollbar-width:thin;scrollbar-color:#9eb5aa transparent;-webkit-overflow-scrolling:touch}
 .project-pair>.project{flex:0 0 90%;min-width:0;scroll-snap-align:start}
 .project-pair .project-visual{height:300px}.project-pair .project-caption{display:block}.project-pair .project-caption>a{max-width:none;font-size:12px;display:inline-block}
 .rail-navigation{display:flex}.dream-hero{height:auto;min-height:0}.dream-layout{position:static}.visual-image img,.it-image img{transform:none!important}
}
@media(max-height:720px) and (min-width:901px){.dream-hero.scroll-scene{height:auto;min-height:0}.scroll-scene .dream-layout{position:relative;top:auto;height:auto;min-height:590px}.scroll-scene .hero-bottom-link{position:relative}}
@media(prefers-reduced-motion:reduce){.dream-hero.scroll-scene{height:auto;min-height:0}.scroll-scene .dream-layout{position:static;height:auto}.dream-copy,.dream-visual,.floating-code,.visual-image img,.it-image img{transform:none!important;opacity:1!important}.rail-navigation button{transition:none}}
@media print{.dream-hero.scroll-scene{height:auto;min-height:0}.scroll-scene .dream-layout{position:static;height:auto}.project-pair{display:grid;overflow:visible}.rail-navigation{display:none}}
