:root{--rail-x:64px;--font:"Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--max:760px;--ink:#38220f;--ink-soft:#38220fd1;--ink-faint:#38220f8c;--line:#38220f1a}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--font);color:var(--ink);-webkit-font-smoothing:antialiased;background:#fff7ef;overflow-x:hidden}a{color:inherit;text-decoration:none}::selection{color:#fff;background:#ff6a00}.bg{z-index:-2;position:fixed;inset:0}.bg__glow{z-index:-1;pointer-events:none;opacity:.12;background-image:radial-gradient(55% 45% at 50% 12%,currentColor,#0000 70%);position:fixed;inset:0}.progress{transform-origin:0%;z-index:100;border-radius:0 4px 4px 0;height:4px;position:fixed;top:0;left:0;right:0}.thread{top:0;left:var(--rail-x);z-index:40;pointer-events:none;width:2px;height:100vh;position:fixed}.thread__base{background:var(--line);border-radius:2px;position:absolute;inset:0}.thread__fill{transform-origin:top;border-radius:2px;position:absolute;top:0;left:0;right:0}.thread__comet{border-radius:50%;width:16px;height:16px;position:absolute;left:50%;transform:translate(-50%,-50%)}.thread__comet:after{content:"";background:inherit;filter:blur(14px);opacity:.55;border-radius:50%;position:absolute;inset:-10px}.thread__comet:before{content:"";background:inherit;border-radius:50%;animation:2.4s ease-out infinite cometPulse;position:absolute;inset:-4px}@keyframes cometPulse{0%{opacity:.5;transform:scale(.6)}to{opacity:0;transform:scale(2.6)}}.thread__node{border:2px solid #38220f2e;border-radius:50%;width:12px;height:12px;position:absolute;left:50%;transform:translate(-50%,-50%)}.scene{z-index:1;min-height:100vh;padding:14vh 7vw 14vh calc(var(--rail-x) + 56px);align-items:center;display:flex;position:relative}.scene__inner{width:100%;max-width:var(--max)}.scene__title .word{vertical-align:bottom;margin-right:.26em;display:inline-block;overflow:hidden}.scene__title .word__inner{will-change:transform;display:inline-block}.scene__label{letter-spacing:.18em;text-transform:uppercase;color:var(--accent);margin-bottom:18px;font-size:.82rem;font-weight:700;display:inline-block}.scene__title{letter-spacing:-.03em;color:var(--ink);margin-bottom:24px;font-size:clamp(2rem,6vw,3.6rem);font-weight:800;line-height:1.05}.scene__body{color:var(--ink-soft);max-width:64ch;margin-bottom:18px;font-size:clamp(1.05rem,2.2vw,1.35rem);line-height:1.65}.scene__body:last-child{margin-bottom:0}.scene--model .scene__inner{grid-template-columns:minmax(0,1.25fr) minmax(250px,.85fr);align-items:center;gap:clamp(24px,5vw,72px);max-width:1160px;display:grid}.scene--model .scene__content{max-width:var(--max)}.model-wrap{aspect-ratio:1;cursor:grab;touch-action:pan-y;-webkit-user-select:none;user-select:none;width:100%;max-width:480px;margin-inline:auto;position:relative}.model-wrap:active{cursor:grabbing}.model-wrap:before{content:"";filter:blur(6px);background:radial-gradient(50% 50%,#38220f42,#0000 70%);width:56%;height:8%;position:absolute;bottom:7%;left:50%;transform:translate(-50%)}.model-wrap canvas{position:relative}.model-wrap__hint{letter-spacing:.18em;text-transform:uppercase;color:var(--ink-faint);pointer-events:none;white-space:nowrap;font-size:.7rem;font-weight:600;position:absolute;bottom:-8px;left:50%;transform:translate(-50%)}.hero__model{width:min(36vw,500px);position:absolute;top:50%;right:5vw;transform:translateY(-50%)}.scene__stats{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:16px;margin-top:30px;display:grid}.stat{background:#ffffff8c;border:1px solid #ff8a1a47;border-radius:18px;padding:20px 22px;transition:transform .3s cubic-bezier(.16,1,.3,1),box-shadow .3s;box-shadow:0 18px 38px -24px #ff6a0066}.stat:hover{transform:translateY(-4px);box-shadow:0 26px 46px -22px #ff6a0080}.stat__value{letter-spacing:-.02em;color:var(--accent);font-variant-numeric:tabular-nums;font-size:clamp(1.7rem,3.4vw,2.3rem);font-weight:800;display:block}.stat__label{color:var(--ink-faint);margin-top:6px;font-size:.85rem;line-height:1.4;display:block}.scene__photo,.scene__tile{border-radius:18px;margin-top:10px}.scene__photo img,.scene__tile img{border:1px solid #ff8a1a47;border-radius:18px;width:100%;height:auto;display:block;box-shadow:0 24px 48px -22px #ff6a0061}.scene__tile img{aspect-ratio:4/3;object-fit:cover;transition:transform .35s cubic-bezier(.16,1,.3,1),box-shadow .35s}.scene__tile:hover img{transform:translateY(-4px)scale(1.015);box-shadow:0 30px 56px -22px #ff6a0080}.scene__photo figcaption,.scene__tile figcaption{color:var(--ink-faint);margin-top:10px;font-size:.88rem}.scene__gallery{grid-template-columns:repeat(2,1fr);gap:18px;margin-top:26px;display:grid}.scene__gallery .scene__tile:first-child{grid-column:1/-1}.scene__gallery .scene__tile:first-child img{aspect-ratio:16/9}.hero{justify-content:flex-start}.hero__eyebrow{letter-spacing:.05em;color:var(--accent);margin-bottom:14px;font-size:1rem;font-weight:600}.hero__title{letter-spacing:-.04em;background:linear-gradient(110deg, var(--ink) 20%, var(--accent) 50%, var(--ink) 80%);-webkit-text-fill-color:transparent;background-size:220%;-webkit-background-clip:text;background-clip:text;margin-bottom:22px;font-size:clamp(3rem,12vw,7rem);font-weight:900;line-height:.98;animation:7s linear infinite shimmer}@keyframes shimmer{to{background-position:220%}}.hero__tagline{color:var(--ink-soft);max-width:40ch;font-size:clamp(1.15rem,2.6vw,1.6rem);line-height:1.5}.scroll-hint{bottom:6vh;left:calc(var(--rail-x) + 56px);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-faint);align-items:center;gap:12px;font-size:.85rem;display:flex;position:absolute}.scroll-hint__dot{border:2px solid #38220f4d;border-radius:14px;width:26px;height:42px;position:relative}.scroll-hint__dot span{background:var(--accent);border-radius:4px;width:4px;height:8px;animation:1.6s ease-in-out infinite scrollpip;position:absolute;top:8px;left:50%;transform:translate(-50%)}@keyframes scrollpip{0%{opacity:0;transform:translate(-50%)}40%{opacity:1}80%{opacity:0;transform:translate(-50%,14px)}to{opacity:0}}.contact__links{flex-wrap:wrap;gap:14px;margin-top:32px;display:flex}.btn{border:1px solid #38220f29;border-radius:999px;align-items:center;padding:14px 28px;font-size:1rem;font-weight:600;transition:transform .15s,background .2s,border-color .2s,box-shadow .2s;display:inline-flex}.btn:hover{transform:translateY(-2px)}.btn--primary{background:var(--accent);color:#fff;box-shadow:0 12px 26px -12px var(--accent);border-color:#0000}.btn--primary:hover{box-shadow:0 16px 34px -10px var(--accent)}.btn--ghost:hover{border-color:var(--accent);color:var(--accent);box-shadow:0 0 0 1px var(--accent) inset, 0 10px 24px -14px var(--accent)}.footer{color:var(--ink-faint);margin-top:64px;font-size:.85rem}.aurora{z-index:-2;pointer-events:none;position:fixed;inset:0;overflow:hidden}.aurora__blob{filter:blur(80px);opacity:.14;background-image:radial-gradient(circle,currentColor,#0000 68%);border-radius:50%;width:52vw;height:52vw;position:absolute}.aurora__blob--1{top:-8%;left:-6%}.aurora__blob--2{bottom:-14%;right:-8%}.mouseglow{z-index:-1;pointer-events:none;opacity:.07;position:fixed;inset:0}.grain{z-index:90;pointer-events:none;opacity:.03;mix-blend-mode:multiply;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");position:fixed;inset:0}html.lenis,html.lenis body{height:auto}.lenis.lenis-smooth{scroll-behavior:auto!important}.lenis.lenis-stopped{overflow:hidden}@media (width<=960px){.scene--model .scene__inner{grid-template-columns:1fr;gap:8px}.scene--model .model-wrap{max-width:min(66vw,320px)}.hero{flex-direction:column;justify-content:center;align-items:flex-start}.hero__model{align-self:center;width:min(58vw,300px);margin-top:18px;position:relative;top:auto;right:auto;transform:none}}@media (width<=720px){:root{--rail-x:26px}.scene{padding:12vh 7vw 12vh calc(var(--rail-x) + 34px)}.scroll-hint{left:calc(var(--rail-x) + 34px)}.scene__gallery{grid-template-columns:1fr;gap:14px}.scene__stats{grid-template-columns:repeat(2,1fr);gap:12px}}@media (prefers-reduced-motion:reduce){.scroll-hint__dot span,.hero__title,.thread__comet:before,.aurora__blob{animation:none}.scene__tile img{transition:none}html{scroll-behavior:auto}}
