/* Navigation and sticky stage share a fixed origin at every scroll position. */
:root{--nav-height:92px}body{padding-top:var(--nav-height)}
body.is-home{--nav-height:76px}
.header,.is-home .header,.has-scrolled .header,.is-home.has-scrolled .header{position:fixed;top:0;left:0;right:0;height:var(--nav-height);padding:0 4.3%;background:#000;color:white;border-bottom:1px solid #202020;z-index:50;transition:none}
.header .brand{display:flex;align-items:center}
.is-home .header .brand img{width:120px}
.header nav{gap:clamp(10px,1.5vw,25px)}.header .button.small{padding:12px 14px}.header .menu-toggle{flex-shrink:0}
.rotor-experience{position:relative;height:calc(100svh - var(--nav-height) + var(--rotor-travel));background:#000;color:#fff;font-family:Helvetica,Arial,sans-serif;isolation:isolate;--rotor-travel:clamp(280px,42svh,440px);--rotor-width:min(58vw,calc((100svh - 170px)*1.3344),1120px);--rotor-y:48%}
.rotor-experience *{box-sizing:border-box}.rotor-experience button{font:inherit;cursor:pointer;color:inherit}.rotor-experience button:focus-visible{outline:2px solid #ffc20e;outline-offset:6px}
.rotor-stage{position:sticky;top:var(--nav-height);height:calc(100svh - var(--nav-height));overflow:hidden;background:#000}
.rotor-visual{position:absolute;inset:0;z-index:1;pointer-events:none;background:#000;isolation:isolate;will-change:opacity}
/* Reference factory plate: warm safety rails and floor reflections remain visible. */
.rotor-atmosphere{position:absolute;inset:0;z-index:0;overflow:hidden;pointer-events:none}
.rotor-atmosphere img{width:100%;height:100%;max-width:none;object-fit:cover;object-position:50% 46%;opacity:.92;transform:scale(calc(1.015 + var(--scene-progress,0)*.025))}
.rotor-atmosphere:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,#0003,transparent 32%,transparent 63%,#0008),radial-gradient(ellipse 83% 90% at 50% 43%,transparent 45%,#0008 100%)}
.rotor-contact-shadow{position:absolute;left:48%;top:65%;width:35%;height:5%;border-radius:50%;background:#000a;filter:blur(14px);transform:translateX(-50%) rotate(-9deg);pointer-events:none}
/* Solid rotor pixels inside a frame-matched silhouette; no blend transparency. */
.rotor-frame,.rotor-callouts{position:absolute;left:50%;top:var(--rotor-y);width:var(--rotor-width);aspect-ratio:1660/1244;transform:translate(-50%,-50%)}
.rotor-frame{z-index:1;mix-blend-mode:normal}
.rotor-camera{position:absolute;inset:0;transform-origin:50% 50%;will-change:transform}
.rotor-poster,.rotor-video,.rotor-frames{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;max-width:none;user-select:none;-webkit-user-drag:none}
.rotor-video{opacity:0;pointer-events:none;transition:opacity .16s linear}.rotor-video.is-ready{opacity:1}
.rotor-frames{opacity:0;pointer-events:none;transition:opacity .12s linear}.rotor-frames.is-ready{opacity:1}
/* Five photographic oil beads, independently framed from one transparent asset. */
.rotor-oil{position:absolute;inset:0;z-index:2;pointer-events:none}
.rotor-oil-drop{position:absolute;display:block;height:auto;overflow:hidden;pointer-events:none;transform:translateY(calc(var(--scene-progress,0)*var(--oil-travel,-24px)))}
.rotor-oil-left{width:clamp(95px,8vw,155px);left:-24px;top:8%;--oil-travel:-42px}
.rotor-oil-small{width:30px;left:2.7%;top:58%;--oil-travel:-16px}
.rotor-oil-right{width:clamp(150px,14vw,265px);right:-50px;top:68%;--oil-travel:-34px}
.rotor-oil-medium{width:clamp(42px,4vw,74px);right:17%;bottom:11%;--oil-travel:-20px}
.rotor-oil-tiny{width:26px;right:12.2%;bottom:6%;--oil-travel:-12px}
.rotor-intro{position:absolute;inset:0;z-index:3;pointer-events:none;will-change:opacity}
.rotor-meta{position:absolute;top:24px;left:4.2%;right:4.2%;display:flex;justify-content:space-between;font-size:11px;letter-spacing:.13em;color:#b6b6b6}
.rotor-meta span:first-child:before{content:'';display:inline-block;width:21px;height:2px;background:#ffc20e;vertical-align:middle;margin-right:12px}
.rotor-side{position:absolute;top:43.5%;font-size:clamp(24px,2.1vw,38px);font-weight:400;letter-spacing:-.045em;line-height:1.1;text-shadow:0 2px 18px #000}.rotor-side-left{left:4.2%}.rotor-side-right{right:4.2%}
.rotor-callouts{height:auto;overflow:visible;pointer-events:none}
.rotor-callout text{font:400 19px Helvetica,Arial,sans-serif;letter-spacing:3px;fill:#c0c0c0}
.rotor-callout path{fill:none;stroke:#aaa;stroke-width:1;vector-effect:non-scaling-stroke;opacity:.8}
.rotor-callout circle{fill:#bfbfbf}
.rotor-callouts-mobile{display:none}
.rotor-bottom-copy{position:absolute;left:4.2%;right:4.2%;bottom:90px;display:block;text-shadow:0 2px 24px #0008}
.rotor-bottom-copy h1{font-size:clamp(38px,3.7vw,70px);letter-spacing:-.045em;line-height:1.03;margin:0;color:#fff;font-weight:400}.rotor-bottom-copy h1 span{color:#b4b4b4}
.rotor-bottom-copy p{margin:14px 0 0;font-size:clamp(15px,1.25vw,22px);line-height:1.5;color:#b1b1b1;max-width:620px}
.rotor-bottom-bar{position:absolute;bottom:25px;left:4.2%;right:4.2%;display:flex;align-items:center;justify-content:space-between;gap:35px;z-index:6}
.rotor-bottom-bar button{background:none;border:0;padding:8px 0;display:flex;align-items:center;gap:15px;font-size:14px;text-align:left}
.rotor-scroll-arrow{display:block;color:#ffc20e;font-size:20px;animation:rotor-cue 2s ease-in-out 3}
.rotor-progress{height:1px;background:#292929;flex:1;max-width:160px;overflow:hidden;opacity:.6}.rotor-progress i{display:block;height:100%;width:100%;background:#ffc20e;transform:scaleX(0);transform-origin:left}
.rotor-note{display:none}
.rotor-world{position:absolute;inset:0;z-index:0;opacity:0;background:#080808;overflow:hidden}
.rotor-world-art{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover;object-position:60% 40%;opacity:.78;will-change:transform}
.rotor-world-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.95),rgba(0,0,0,.78) 44%,rgba(0,0,0,.42)),linear-gradient(0deg,rgba(0,0,0,.85),transparent 40%)}
.rotor-world-copy{position:absolute;inset:0;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:50px 7% 90px;opacity:0;will-change:opacity,transform}
.rotor-world-kicker{font-size:12px;letter-spacing:.15em;color:#ffc20e;margin-bottom:32px}
.rotor-world h2{font-size:clamp(44px,6vw,92px);line-height:1.08;letter-spacing:-.055em;font-weight:400;max-width:1050px;margin:0 0 28px}.rotor-world h2 em{color:#ffc20e}
.rotor-world p{font-size:18px;line-height:1.7;color:#c1c1c1;margin:0 0 30px}.rotor-world-actions{display:flex;gap:30px;align-items:center}.rotor-world-actions>a:last-child{font-size:15px;border-bottom:1px solid #696969;padding:14px 0}.rotor-world-actions>a:last-child span{margin-left:18px}
.rotor-world-foot{position:absolute;bottom:30px;left:7%;right:7%;display:flex;justify-content:space-between;gap:25px;font-size:12px;letter-spacing:.08em;color:#aaa;opacity:0}
@keyframes rotor-cue{0%,100%{transform:translateY(0)}50%{transform:translateY(5px)}}
@media(max-width:1100px){.header nav>a{font-size:13px}.header .button.small{font-size:13px;gap:10px}.header .brand img{width:115px}.header{gap:15px}}
@media(max-width:950px){:root{--nav-height:78px}body.is-home{--nav-height:72px}.header,.is-home .header,.has-scrolled .header,.is-home.has-scrolled .header{padding:0 5%}.header .menu-toggle{margin-left:auto}.header nav{background:#000;max-height:calc(100svh - var(--nav-height));overflow-y:auto}.header nav>a{font-size:16px}.rotor-experience{--rotor-width:78vw;--rotor-y:44%}.rotor-callout text{font-size:21px}.rotor-bottom-copy h1{font-size:clamp(38px,5vw,48px)}}
@media(max-width:700px){
 .rotor-experience{--rotor-travel:clamp(260px,48svh,400px);--rotor-width:100vw;--rotor-y:44%}.rotor-meta{top:25px;left:6%;right:6%;font-size:10px}.rotor-meta span:last-child{display:none}
 .rotor-side{top:22%;font-size:25px}.rotor-side-left{left:6%}.rotor-side-right{right:6%}
 .rotor-atmosphere img{object-position:52% center;opacity:.8}
 .rotor-contact-shadow{top:57%;width:65%}
 .rotor-oil-left{width:80px;left:-30px;top:8%}.rotor-oil-small{width:20px;left:3%;top:60%}.rotor-oil-right{width:110px;right:-42px;top:66%}.rotor-oil-medium{width:39px;right:12%;bottom:9%}.rotor-oil-tiny{display:none}
 .rotor-callouts{display:none}.rotor-callouts-mobile{position:absolute;top:58%;left:6%;right:6%;display:flex;justify-content:space-between;gap:12px;color:#b5b5b5;font-size:9px;text-transform:uppercase;letter-spacing:.13em}
 .rotor-bottom-copy{bottom:104px;left:6%;right:6%}.rotor-bottom-copy h1{font-size:clamp(32px,9vw,48px)}.rotor-bottom-copy p{max-width:290px;font-size:14px;margin-top:14px}
 .rotor-bottom-bar{left:6%;right:6%;bottom:18px;gap:10px 18px;flex-wrap:wrap}.rotor-note{width:100%;text-align:left;order:3}.rotor-progress{max-width:110px}
 .rotor-world-copy{padding:35px 6% 115px}.rotor-world-kicker{font-size:12px;line-height:1.6;margin-bottom:24px}.rotor-world h2{font-size:clamp(40px,10vw,62px)}.rotor-world p{font-size:16px}
 .rotor-world-actions{flex-direction:column;align-items:flex-start;gap:12px}.rotor-world-actions .button{font-size:14px;padding:16px 20px}
 .rotor-world-foot{left:6%;right:6%;bottom:25px;font-size:12px;line-height:1.7}.rotor-world-foot>span:last-child{display:none}.rotor-world-art{object-position:60% center}.rotor-world-shade{background:linear-gradient(90deg,#000e,#000b),linear-gradient(0deg,#000d,transparent 65%)}
}
@media(max-height:620px) and (min-width:701px){.rotor-experience{--rotor-width:min(54vw,calc((100svh - 150px)*1.3344));--rotor-y:44%}.rotor-bottom-copy{bottom:68px}.rotor-bottom-copy h1{font-size:34px}.rotor-bottom-copy p{font-size:13px;margin-top:8px}.rotor-world-kicker{margin-bottom:12px}.rotor-world h2{font-size:44px;margin-bottom:16px}.rotor-world p{margin-bottom:16px}.rotor-world-copy{padding-top:20px;padding-bottom:70px}}
/* Keep the complete opening legible on short phones and landscape screens. */
@media(max-height:650px) and (max-width:700px){
 .rotor-meta{top:18px;font-size:10px}.rotor-side{top:20%;font-size:22px}
 .rotor-experience{--rotor-width:min(96vw,calc((100svh - 155px)*1.3344));--rotor-y:42%}
 .rotor-oil-left{width:60px;left:-25px}.rotor-oil-small{display:none}.rotor-oil-right{width:90px;right:-35px;top:62%}.rotor-oil-medium{width:30px;bottom:6%}
 .rotor-callouts-mobile{top:56%;font-size:8px}
 .rotor-bottom-copy{bottom:76px}.rotor-bottom-copy h1{font-size:clamp(30px,8.5vw,36px)}.rotor-bottom-copy p{font-size:12px;max-width:265px;margin-top:10px}
 .rotor-bottom-bar{bottom:14px}.rotor-note{display:none}
 .rotor-world-copy{padding:20px 6% 65px}.rotor-world-kicker{margin-bottom:10px;font-size:10px}
 .rotor-world h2{font-size:clamp(28px,8vw,42px);margin-bottom:14px}.rotor-world p{font-size:14px;margin-bottom:16px}
 .rotor-world-actions{gap:6px}.rotor-world-actions .button{padding:12px 16px;font-size:13px}
 .rotor-world-actions>a:last-child{padding:8px 0;font-size:13px}.rotor-world-foot{bottom:18px;font-size:10px}
}
@media(prefers-reduced-motion:reduce){.rotor-scroll-arrow{animation:none}.rotor-camera{will-change:auto}.rotor-video,.rotor-frames{display:none;transition:none}}
