/* Three camera compositions from the original Blender packer scene. */
:root{--bg:#000;--panel:#09131b;--accent:#32d6df}
.preview-note{position:absolute;top:80px;left:5%;padding:0;background:none;z-index:21;font-size:.75rem;color:#8d999e;gap:16px;pointer-events:none}.preview-note span:first-child{display:none}
.header{position:fixed;top:0;left:0;width:100%;margin:0;padding:25px 5%;border:0;border-radius:0;box-shadow:none;background:linear-gradient(#000d,#0000);backdrop-filter:blur(4px)}
.brand{font-weight:500;font-size:1.35rem}.brand-mark{display:none}.brand>span:last-child{color:inherit}.nav-contact{background:#fff;color:#111;border:0;border-radius:0;padding:10px 24px}.nav-contact:hover{color:#111;background:#d5faff}
.cinematic{position:relative;background:#000;height:100svh;min-height:680px;border:0}.cinematic.is-enhanced{height:340svh;min-height:2200px}
.cinematic-stage{position:sticky;top:0;height:100svh;min-height:680px;overflow:hidden;background:#000;isolation:isolate}
.packer-visual{position:absolute;inset:0;z-index:-3}.packer-visual img,.packer-visual canvas{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover}.packer-visual canvas{opacity:0}.packer-visual canvas.ready{opacity:1}
.cinematic-shade{position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(0deg,#000e 0%,#0007 25%,transparent 55%)}
.cinematic-copy{position:absolute;left:5%;bottom:15%;width:min(530px,43%);opacity:0;visibility:hidden;pointer-events:none;transform:translateY(12px);transition:opacity .35s,transform .45s,visibility .35s}
.cinematic-copy.is-active{opacity:1;visibility:visible;pointer-events:auto;transform:none}
.cinematic-copy[data-shot="1"]{left:auto;right:5%;top:18%;bottom:auto;width:min(500px,39%)}
.cinematic-copy[data-shot="2"]{left:auto;right:5%;width:min(530px,43%)}
.cinematic-copy h1,.cinematic-copy h2{font-size:clamp(1.9rem,2.6vw,3.2rem);font-weight:500;line-height:1.17;letter-spacing:-.045em;text-wrap:balance}.cinematic-copy .eyebrow{font-size:.75rem;font-weight:500;letter-spacing:.08em;margin-bottom:17px;color:#a5c4cb}.cinematic-copy>p:not(.eyebrow){font-size:1rem;line-height:1.6;max-width:450px;margin-top:20px;color:#c5cbd0}
.hero-cta{background:#fff;color:#111;border:0;border-radius:0;font-weight:500;padding:12px 22px;min-height:46px;margin-top:25px}.hero-cta:hover{background:#c9f6f7}
.cinematic-bottom{position:absolute;left:5%;right:5%;bottom:27px;display:flex;align-items:center;gap:24px;color:#b6c1c5;font-size:.875rem}.scroll-cue{flex:1}.scroll-cue span{margin-left:12px;color:var(--accent)}.cinematic-bottom .motion-toggle{min-height:44px;border-color:#6a7279;color:#dce4e7;background:#0009;border-radius:0}.shot-counter{font-variant-numeric:tabular-nums;font-size:.875rem}
.cinematic-progress{position:absolute;bottom:0;left:0;right:0;height:2px;background:#ffffff15}.cinematic-progress i{display:block;height:100%;background:var(--accent);transform-origin:left;transform:scaleX(0)}
.cinematic:not(.is-enhanced) .scroll-cue{visibility:hidden}.cinematic:not(.is-enhanced) .shot-counter{display:none}
.section.services{background:linear-gradient(#000,#08141e);border-top:0}.reduced .cinematic-copy{transition:none}
@media(min-width:1700px){.cinematic-copy{width:550px}.cinematic-copy[data-shot="2"]{width:550px}}
@media(max-width:720px){.header{top:0;width:100%;padding:16px 6%;border-radius:0}.preview-note{top:67px;left:6%;font-size:.75rem}nav{left:4%;right:4%;background:#090d12fa}.nav-contact{color:#111} .cinematic,.cinematic-stage{min-height:760px;height:100svh}.cinematic.is-enhanced{height:300svh;min-height:2280px}.packer-visual{top:12%;bottom:38%;left:-20%;right:-20%}.packer-visual img,.packer-visual canvas{object-fit:contain}.cinematic-shade{background:linear-gradient(0deg,#000 0%,#000d 26%,transparent 58%)}.cinematic-copy,.cinematic-copy[data-shot="1"],.cinematic-copy[data-shot="2"]{left:6%;right:6%;width:auto;top:auto;bottom:15%}.cinematic-copy h1,.cinematic-copy h2{font-size:clamp(1.8rem,6.5vw,2.5rem);line-height:1.18}.cinematic-copy .eyebrow{font-size:.75rem;margin-bottom:12px}.cinematic-copy>p:not(.eyebrow){font-size:1rem;line-height:1.55;margin-top:15px;max-width:480px}.hero-cta{margin-top:18px}.cinematic-bottom{left:6%;right:6%;bottom:20px;gap:12px;flex-wrap:wrap;font-size:.8125rem}.cinematic-bottom .motion-toggle{font-size:.8125rem;padding:9px 10px}.shot-counter{display:none}.scroll-cue span{margin-left:4px}}
@media(max-height:650px) and (min-width:721px){.cinematic-stage{min-height:650px}.cinematic-copy{bottom:14%}.cinematic-copy h1,.cinematic-copy h2{font-size:1.9rem}}
@media(prefers-reduced-motion:reduce){.cinematic-copy{transition:none}}

/* Continuous journey draft. New Blender mechanical sequence remains pending. */
.cinematic.is-enhanced{height:600svh;min-height:4200px}
.journey-panel.cinematic-copy{left:auto;right:5%;top:120px;bottom:100px;width:min(660px,48%);padding:0}
.panel-scroll{max-height:100%;overflow:auto;padding:20px 24px;background:linear-gradient(90deg,#0008,#000e);scrollbar-width:thin;scrollbar-color:#46606a transparent}
.journey-panel .section-heading{margin-bottom:22px}.journey-panel h2{font-size:clamp(1.7rem,2.2vw,2.6rem)}
.journey-panel .service-grid,.journey-panel .steps,.journey-panel .demo-feature{display:block}.journey-panel article{padding:16px 0;background:none;border:0;border-bottom:1px solid #ffffff20}.journey-panel h3{font-size:1.15rem;margin:8px 0}.journey-panel p{font-size:.95rem;line-height:1.55}.journey-panel .reveal{opacity:1;transform:none}.journey-panel .demo-copy{padding:16px 0}.journey-panel .demo-media{border-radius:0}.journey-panel video{max-height:32svh;width:100%;object-fit:contain}.journey-panel .contact-copy h2{font-size:2rem}.journey-panel form{margin-top:18px}.journey-panel .section{padding:12px 0;background:none}.journey-panel .faq-section{display:block}.journey-panel .engineering-note{margin-top:20px}.journey-faq{margin-top:22px}
.cinematic[data-chapter="3"] .packer-visual,.cinematic[data-chapter="4"] .packer-visual{opacity:.28}
.chapter-controls{display:flex;gap:14px;align-items:center;flex:1}.chapter-controls button{background:#0008;border:1px solid #ffffff50;color:white;width:44px;height:44px;cursor:pointer}.chapter-controls button:disabled{opacity:.3;cursor:default}.header a[aria-current="step"]{text-decoration:underline;text-underline-offset:6px}
@media(max-width:720px){.cinematic.is-enhanced{height:600svh;min-height:4200px}.journey-panel.cinematic-copy{left:5%;right:5%;width:auto;top:36%;bottom:100px}.panel-scroll{padding:12px 16px;background:#000d}.journey-panel .section-heading h2{font-size:1.65rem}.chapter-controls{gap:8px;font-size:.8rem}.cinematic-bottom{gap:6px}.journey-panel video{max-height:25svh}}

/* Preserve readable content if scripting is unavailable. */
.cinematic:not(.is-enhanced){height:auto;min-height:100svh}.cinematic:not(.is-enhanced) .cinematic-stage{height:auto;overflow:visible;position:relative}.cinematic:not(.is-enhanced) .shot-copy{position:relative;inset:auto;width:auto;margin:0 5%;padding:130px 0 40px;opacity:1;visibility:visible;pointer-events:auto;transform:none}.cinematic:not(.is-enhanced) .panel-scroll{max-height:none;overflow:visible}.cinematic:not(.is-enhanced) .cinematic-bottom{display:none}

.packer-visual{transition:transform .8s ease,opacity .6s ease}
@media(min-width:721px){.cinematic[data-chapter="1"] .packer-visual,.cinematic[data-chapter="2"] .packer-visual{transform:translateX(-24%) scale(.64)}}
@media(max-width:720px){.cinematic:not([data-chapter="0"]) .packer-visual{top:8%;bottom:62%;left:-10%;right:-10%}}
.reduced .packer-visual{transition:none}

/* Textured atmospheric layers, below the shade and all interactive content. */
.packer-atmosphere{position:absolute;inset:0;z-index:-2;overflow:hidden;pointer-events:none;opacity:.85;transition:opacity .8s ease;contain:paint;mix-blend-mode:screen;mask-image:radial-gradient(ellipse at 50% 46%,transparent 9%,#0003 30%,#000 66%);-webkit-mask-image:radial-gradient(ellipse at 50% 46%,transparent 9%,#0003 30%,#000 66%)}
.packer-atmosphere i{position:absolute;display:block;width:100%;height:80%;left:-38%;top:4%;background:url("assets/ambient-smoke.svg") center/100% 100% no-repeat;transform-origin:center;animation:packer-haze-drift 20s ease-in-out infinite alternate;will-change:transform}
.packer-atmosphere i:nth-child(2){left:35%;top:9%;height:84%;opacity:.8;animation-duration:27s;animation-delay:-12s;animation-direction:alternate-reverse}
.packer-atmosphere i:nth-child(3){left:0;top:36%;height:62%;opacity:.6;animation-duration:24s;animation-delay:-17s}
@keyframes packer-haze-drift{from{transform:translate3d(-7%,5%,0) scale(.94) rotate(-6deg)}to{transform:translate3d(12%,-10%,0) scale(1.16) rotate(5deg)}}
.cinematic[data-chapter="1"] .packer-atmosphere,.cinematic[data-chapter="2"] .packer-atmosphere{opacity:.45}
.cinematic[data-chapter="3"] .packer-atmosphere,.cinematic[data-chapter="4"] .packer-atmosphere{opacity:.15}
.cinematic.is-atmosphere-idle .packer-atmosphere i{animation-play-state:paused}
@media(max-width:720px){.packer-atmosphere{inset:9% -12% 40%;opacity:.62}.packer-atmosphere i{top:6%;height:94%;width:130%;left:-55%}.packer-atmosphere i:nth-child(2){left:25%;top:12%;height:90%}.packer-atmosphere i:nth-child(3){display:none}.cinematic:not([data-chapter="0"]) .packer-atmosphere{inset:4% -12% 60%;opacity:.36}}
