/* Dark, immersive layout (v3) */
:root{--bg:#141414;--bg2:#1b1b1b;--ink:#f6f5e8;--mut:#a3a298;--dline:rgba(246,245,232,.14);--pad:max(24px,4vw)}
html{background:var(--bg)}body{background:var(--bg);color:var(--ink);font-size:16px}
.lab{font:500 11px var(--mono);letter-spacing:.04em;color:var(--mut);margin:0}
.lab b{color:var(--red);font-weight:500}
.nav{position:fixed;inset:0 0 auto;z-index:60;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:18px var(--pad);transition:background .3s,padding .3s}
.nav.is-scrolled{padding-block:12px}.nav:before{content:"";position:absolute;inset:0;z-index:-1;background:rgba(20,20,20,.86);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);opacity:0;transition:opacity .3s}.nav.is-scrolled:before{opacity:1}
.nav .brand-mark i:nth-child(2){background:var(--cream)}
.nav-links{display:flex;gap:34px;font-size:13px;font-weight:700}.nav-links a{position:relative;padding:4px 0}
.nav-links a:after{content:"";position:absolute;left:0;bottom:-2px;height:1px;width:100%;background:var(--red);transform:scaleX(0);transform-origin:right;transition:transform .3s var(--ease)}
.nav-links a:hover:after{transform:scaleX(1);transform-origin:left}
.nav-btn{background:var(--red);padding:12px 16px}.nav-btn:hover{background:var(--cream);color:var(--carbon)}
.menu-toggle span{background:var(--ink)}
.stage{position:relative;min-height:100svh;display:flex;flex-direction:column;justify-content:flex-end;gap:26px;padding:150px var(--pad) 44px;overflow:hidden}
.stage-bg{position:absolute;inset:0;pointer-events:none}.sh{position:absolute;display:block}
.s1{width:min(46vw,640px);aspect-ratio:1;border-radius:50%;background:var(--red);right:-6vw;top:8vh;animation:drift 14s ease-in-out infinite}
.s2{width:min(30vw,420px);aspect-ratio:1;border-radius:50%;border:1px solid rgba(255,255,216,.45);right:24vw;top:26vh;animation:drift 18s ease-in-out infinite reverse}
.s3{width:min(15vw,200px);aspect-ratio:1;background:var(--cream);right:8vw;bottom:20vh;border-radius:6px;transform:rotate(18deg);animation:tumble 16s ease-in-out infinite}
.s4{right:34vw;top:14vh;font-size:min(14vw,190px);line-height:1;color:var(--cream);font-weight:400;animation:spin 30s linear infinite}
@keyframes drift{50%{transform:translate(-3vw,3vh) scale(1.05)}}@keyframes tumble{50%{transform:rotate(-12deg) translateY(-30px)}}
.stage-title{position:relative;font-size:clamp(46px,9.2vw,152px);line-height:1.02;letter-spacing:-.05em;font-weight:800;margin:0;max-width:1300px}
.wm{display:inline-block;overflow:hidden;vertical-align:top;padding-bottom:.08em;margin-bottom:-.08em}.wm>span{display:inline-block}
.stage-foot{position:relative;display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:24px}
.stage-foot p{max-width:430px;margin:0;color:#d6d5c8;line-height:1.8;font-size:15px}
.stage-cta{display:flex;align-items:center;gap:28px;flex-wrap:wrap}
.btn-red{background:var(--red)}.btn-red:hover{background:var(--cream);color:var(--carbon)}
.light{border-color:var(--ink)}
.scroll-cue{font:11px var(--mono);color:var(--mut)}
.band{padding:130px 0}.wrap{padding-inline:var(--pad)}
.band-head{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:46px}
.band-head h2{font-size:clamp(40px,6vw,92px);line-height:1.02;letter-spacing:-.06em;font-weight:800;margin:14px 0 0}
.band-head a{font-size:12px;font-weight:800;border-bottom:1px solid var(--ink);padding-bottom:5px;white-space:nowrap}
.rail{display:flex;gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;padding:0 var(--pad) 22px;scrollbar-width:thin;scrollbar-color:var(--red) transparent;cursor:grab}
.rail.drag{cursor:grabbing;scroll-snap-type:none}
.pcard{flex:0 0 min(80vw,470px);scroll-snap-align:start}
.pcard .work-visual{height:min(62vh,540px);border-radius:6px;padding:22px;display:flex;flex-direction:column;justify-content:space-between}
.ptag{font:10px var(--mono);letter-spacing:.06em}.ptitle{font-size:clamp(36px,4.6vw,64px);line-height:.92;letter-spacing:-.07em;font-weight:800}
.pplay{align-self:flex-end;display:grid;place-items:center;width:46px;height:46px;border:1px solid currentColor;border-radius:50%;font-size:20px;transition:transform .3s,background .3s}
.work-visual:hover .pplay{background:var(--red);border-color:var(--red);color:#fff;transform:rotate(45deg)}
.p1{background:radial-gradient(circle at 70% 30%,#e9744f,#6a2f3d 45%,#15151c 75%);color:#fff}
.p2{background:linear-gradient(160deg,#d7e8e1,#9fc3b6);color:var(--carbon)}
.p3{background:radial-gradient(circle at 80% 22%,var(--red) 0 18%,transparent 19%),var(--cream);color:var(--carbon)}
.p4{background:radial-gradient(circle at 70% 25%,#f9b04d,var(--red) 30%,#2a1414 62%),#20201f;color:#fff}
.pmeta{display:flex;justify-content:space-between;gap:12px;padding-top:14px}.pmeta h3{margin:0;font-size:18px;letter-spacing:-.04em}.pmeta p{margin:2px 0 0;font-size:12px;color:var(--mut)}
.statement{font-size:clamp(28px,4.6vw,70px);line-height:1.15;letter-spacing:-.05em;font-weight:700;margin:26px 0 0;max-width:1200px}
.sw{opacity:.2}.statement.static .sw{opacity:1}.statement em{font-family:Georgia,serif;font-weight:400}
.svc-list{border-top:1px solid var(--dline);margin:0 var(--pad)}
.svc{position:relative;display:grid;grid-template-columns:70px 1.1fr 1fr 44px;gap:20px;align-items:center;padding:34px 0;border-bottom:1px solid var(--dline);overflow:hidden;isolation:isolate;transition:padding .35s var(--ease)}
.svc:before{content:"";position:absolute;inset:0;background:var(--red);transform:scaleY(0);transform-origin:bottom;transition:transform .45s var(--ease);z-index:-1}
.svc:hover{padding-inline:20px}.svc:hover:before{transform:scaleY(1)}
.svc-n{font:11px var(--mono);color:var(--red);transition:color .3s}.svc:hover .svc-n{color:var(--cream)}
.svc h3{font-size:clamp(28px,4.4vw,64px);letter-spacing:-.06em;line-height:1;margin:0}
.svc p{margin:0;color:var(--mut);font-size:14px;line-height:1.7;transition:color .3s}.svc:hover p{color:#fff}
.svc-go{width:44px;height:44px;border:1px solid var(--dline);border-radius:50%;display:grid;place-items:center;transition:transform .4s var(--ease)}.svc:hover .svc-go{transform:rotate(45deg);border-color:#fff}
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin:60px var(--pad) 0;border-top:1px solid var(--dline);padding-top:30px}
.stat strong{display:block;font-size:clamp(56px,9vw,140px);line-height:.95;letter-spacing:-.08em;font-weight:800}.stat span{font:11px var(--mono);color:var(--mut)}
.steps4{display:grid;grid-template-columns:repeat(4,1fr);gap:26px;margin:0 var(--pad)}
.step4{border-top:1px solid var(--dline);padding-top:18px}.step4 b{font:11px var(--mono);color:var(--red)}.step4 h3{font-size:30px;letter-spacing:-.06em;margin:8px 0}.step4 p{font-size:13px;color:var(--mut);line-height:1.8;margin:0}
.quotes{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:0 var(--pad)}
.quote{margin:0;padding:34px;background:var(--bg2);border-radius:6px}.quote p{font-size:clamp(19px,2.2vw,28px);line-height:1.45;letter-spacing:-.04em;margin:0 0 26px}.quote footer{font-size:12px;color:var(--mut)}.quote strong{display:block;color:var(--ink);font-size:13px}
.cta{background:var(--red);color:#fff;padding:120px var(--pad)}.cta-grid{display:grid;grid-template-columns:1fr .9fr;gap:8%;align-items:start}
.cta h2{font-size:clamp(46px,7vw,112px);line-height:.98;letter-spacing:-.065em;font-weight:800;margin:16px 0 22px}.cta .lab{color:rgba(255,255,255,.85)}
.cta-grid>div>p{max-width:420px;line-height:1.8;color:rgba(255,255,255,.9)}
.mailbtn{display:inline-flex;gap:14px;align-items:center;margin-top:18px;background:var(--carbon);color:#fff;border:0;padding:15px 18px;font:800 12px var(--font);cursor:pointer;transition:background .25s,color .25s}.mailbtn:hover{background:var(--cream);color:var(--carbon)}
.foot{padding:36px var(--pad) 22px;background:var(--bg)}.foot-top{display:flex;justify-content:space-between;gap:30px;flex-wrap:wrap;padding-bottom:28px;border-bottom:1px solid var(--dline)}
.foot nav{display:flex;gap:24px;font-size:13px;flex-wrap:wrap}.foot nav a:hover{color:var(--red)}.foot small{display:block;margin-top:18px;font:10px var(--mono);color:var(--mut)}
@media(max-width:800px){.nav-links{position:fixed;inset:0;background:var(--bg);flex-direction:column;justify-content:center;align-items:center;gap:26px;font-size:30px;display:none}.nav-links.is-open{display:flex}.nav-btn{display:none}.menu-toggle{display:block;position:relative;z-index:70}
.band{padding:84px 0}.band-head{display:block}.svc{grid-template-columns:36px 1fr 38px}.svc p{grid-column:2/3;grid-row:2}.svc-go{grid-row:1;grid-column:3}
.stats,.steps4{grid-template-columns:1fr 1fr}.quotes,.cta-grid{grid-template-columns:1fr}.s2{display:none}.stage{padding-top:120px}}
