  @font-face{font-family:"JetBrains Mono";src:url("/fonts/jbm-regular.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}
  @font-face{font-family:"JetBrains Mono";src:url("/fonts/jbm-semibold.woff2") format("woff2");font-weight:600;font-style:normal;font-display:swap}
  @font-face{font-family:"JetBrains Mono";src:url("/fonts/jbm-extrabold.woff2") format("woff2");font-weight:800;font-style:normal;font-display:swap}
  :root{
    --ink:#090605;
    --amber:#ff9d2f; --amber-soft:#ffc580; --ember:#e0731a;
    --fg:#efe6d6; --muted:rgba(239,230,214,.62); --dim:rgba(239,230,214,.34);
    --acc:#ff9d2f;
    --frame:rgba(255,182,110,.24); --grid:rgba(255,182,110,.5); --line:rgba(255,205,150,.13);
    --glass:linear-gradient(150deg,rgba(255,236,214,.11),rgba(22,15,11,.24));
    --glass-brd:rgba(255,232,200,.22); --glass-hi:rgba(255,248,232,.45);
    --mono:"JetBrains Mono",ui-monospace,"SF Mono","Cascadia Code",Menlo,Consolas,monospace;
    --disp:"JetBrains Mono",ui-monospace,"SF Mono","Cascadia Code",Menlo,Consolas,monospace;
    --maxw:1200px;
  }
  *{box-sizing:border-box}
  html{background:var(--ink);scroll-snap-type:y mandatory;scroll-behavior:smooth}
  @media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
  body{margin:0;background:var(--ink);color:var(--fg);font-family:var(--disp);font-size:15.5px;line-height:1.7;
    font-weight:400;-webkit-font-smoothing:antialiased;overflow-x:hidden}
  a{color:inherit;text-decoration:none}
  ::selection{background:var(--amber);color:#160c02}
  a:focus-visible,button:focus-visible{outline:2px solid var(--amber);outline-offset:3px;border-radius:4px}

  .pal-a{--slab:rgba(9,6,5,.46);--acc:#ff9d2f;--glow:transparent}
  .pal-b{--slab:rgba(16,10,7,.44);--acc:#ffbf74;--glow:radial-gradient(90% 70% at 12% -5%,rgba(255,150,50,.16),transparent 58%)}

  #core{position:fixed;inset:0;width:100%;height:100%;z-index:1;display:block;pointer-events:none}
  .scan{position:fixed;inset:0;z-index:3;pointer-events:none;opacity:.4;background:repeating-linear-gradient(0deg,rgba(0,0,0,.18) 0 1px,transparent 1px 3px);mix-blend-mode:multiply}
  .frame{position:fixed;inset:24px;z-index:6;pointer-events:none;border:1px solid var(--frame)}
  .cm{position:absolute;color:var(--frame);font-family:var(--mono);font-size:15px;line-height:1}
  .cm.tl{top:-8px;left:-8px}.cm.tr{top:-8px;right:-8px}.cm.bl{bottom:-8px;left:-8px}.cm.br{bottom:-8px;right:-8px}
  .anno{position:fixed;z-index:6;pointer-events:none;font-family:var(--mono);font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--dim)}
  .anno.b{left:50%;bottom:30px;transform:translateX(-50%);transition:opacity .5s}

  nav{position:fixed;top:0;left:0;right:0;z-index:20;padding:26px clamp(40px,5vw,64px) 34px;display:flex;align-items:center;justify-content:flex-end;color:var(--fg);
    background:linear-gradient(to bottom,rgba(9,6,5,.66),rgba(9,6,5,0))}
  .nav-links{display:flex;gap:26px;font-family:var(--mono);font-size:.74rem;letter-spacing:.05em}
  .nav-links a{color:var(--muted);transition:color .25s}.nav-links a:hover{color:var(--amber)}
  .nav-links a.on{color:var(--amber)}
  .nav-links .n{opacity:.55;margin-right:5px}
  @media(max-width:880px){.nav-links{display:none}}

  main{position:relative;z-index:4}
  main>section{scroll-snap-align:start;scroll-snap-stop:always}
  footer{scroll-snap-align:end}
  section{position:relative;min-height:100vh;display:flex;flex-direction:column;justify-content:center;padding:clamp(96px,13vh,150px) clamp(40px,5vw,64px)}
  .inner{max-width:var(--maxw);margin:0 auto;width:100%}
  section.slab{background:var(--slab)}
  section.slab::before{content:"";position:absolute;inset:0;background:var(--glow);pointer-events:none;z-index:0}
  section.slab .inner{position:relative;z-index:1}
  section.show{background:transparent}

  .glass{background:var(--glass);backdrop-filter:blur(28px) saturate(1.5) brightness(1.05);-webkit-backdrop-filter:blur(28px) saturate(1.5) brightness(1.05);
    border:1px solid var(--glass-brd);border-radius:22px;box-shadow:0 44px 100px -38px rgba(0,0,0,.7),inset 0 1px 0 var(--glass-hi),inset 0 0 80px rgba(255,175,85,.05)}

  .kicker{font-family:var(--mono);font-size:.74rem;letter-spacing:.16em;text-transform:uppercase;color:var(--acc);margin:0 0 22px}
  .caret{display:inline-block;width:.5em;height:.85em;background:var(--acc);margin-left:7px;vertical-align:-0.06em;animation:blink 1.15s steps(1) infinite}
  @keyframes blink{50%{opacity:0}}
  @media(prefers-reduced-motion:reduce){.caret{animation:none}}

  .hero-card{max-width:660px;padding:clamp(30px,4vw,46px)}
  .greet{font-family:var(--disp);font-weight:800;font-size:clamp(1.9rem,4.5vw,3.05rem);line-height:1.12;margin:0;letter-spacing:-.035em}
  .greet .nm{color:var(--amber)}
  .greet::after,.t-eyebrow::after,.contact-word::after{content:".";color:var(--amber)}
  .hero-sub{margin:20px 0 0;font-size:clamp(.94rem,1.35vw,1.05rem);color:var(--muted);max-width:54ch}
  .hero-sub b{color:var(--fg);font-weight:600}
  .hero-meta{display:grid;grid-template-columns:1fr 1fr;gap:10px 30px;margin-top:26px;padding-top:22px;border-top:1px solid var(--line);font-family:var(--mono);font-size:.76rem;color:var(--muted)}
  .hero-meta span b{color:var(--acc);font-weight:400;letter-spacing:.06em}
  @media(max-width:560px){.hero-meta{grid-template-columns:1fr}}

  .t-eyebrow{font-family:var(--disp);font-weight:800;font-size:clamp(1.7rem,3.8vw,2.6rem);line-height:1.1;letter-spacing:-.03em;margin:0}
  .lead{max-width:58ch;margin:20px 0 0;color:var(--muted);font-size:clamp(.94rem,1.35vw,1.04rem)}
  .lead b{color:var(--fg);font-weight:600}

  .triad{display:grid;grid-template-columns:repeat(3,1fr);margin-top:clamp(38px,5vw,56px);padding:0;overflow:hidden}
  .tri{position:relative;padding:clamp(26px,3vw,38px) clamp(22px,2.6vw,32px);transition:background .45s}
  .tri+.tri{border-left:1px solid var(--line)}
  .tri::before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--acc),transparent 75%);opacity:0;transition:opacity .45s}
  .tri:hover{background:rgba(255,157,47,.045)}
  .tri:hover::before{opacity:1}
  .tri .i{font-family:var(--mono);font-size:.72rem;letter-spacing:.14em;color:var(--acc);text-transform:uppercase}
  .tri h3{font-family:var(--disp);font-weight:600;font-size:1.22rem;margin:16px 0 10px}
  .tri p{margin:0;color:var(--muted);font-size:.92rem}
  @media(max-width:820px){.triad{grid-template-columns:1fr}.tri+.tri{border-left:0;border-top:1px solid var(--line)}}

  .anat{display:grid;grid-template-columns:1.55fr 1fr;margin-top:clamp(34px,4vw,48px);padding:0;overflow:hidden}
  .apath{padding:clamp(26px,3.4vw,42px);position:relative}
  .apath .ah{font-family:var(--mono);font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;color:var(--dim);margin:0 0 22px;display:flex;align-items:center;gap:8px}
  .apath .ah i{width:7px;height:7px;border-radius:50%;background:#8fbf5a;box-shadow:0 0 9px rgba(140,200,90,.65);animation:pulse 2.4s ease-in-out infinite}
  @keyframes pulse{50%{opacity:.3}}
  @media(prefers-reduced-motion:reduce){.apath .ah i{animation:none}}
  .step{position:relative;padding:0 0 24px 36px;font-family:var(--mono)}
  .step:last-child{padding-bottom:0}
  .step::before{content:"";position:absolute;left:9px;top:5px;width:9px;height:9px;border-radius:50%;background:var(--acc);box-shadow:0 0 11px rgba(255,150,40,.55)}
  .step::after{content:"";position:absolute;left:13px;top:20px;bottom:2px;width:1px;background:linear-gradient(rgba(255,182,110,.4),rgba(255,182,110,.08))}
  .step:last-child::after{display:none}
  .step .sh{font-size:.9rem;color:var(--fg);margin:0}
  .step .sh b{color:var(--acc);font-weight:600}
  .step .sd{font-size:.76rem;color:var(--muted);margin:5px 0 0;max-width:44ch}
  .astats{border-left:1px solid var(--line);display:flex;flex-direction:column;justify-content:center;gap:clamp(18px,2.6vw,28px);padding:clamp(26px,3.4vw,42px)}
  .stat b{display:block;font-family:var(--disp);font-weight:800;font-size:clamp(1.7rem,2.6vw,2.3rem);line-height:1;letter-spacing:-.03em;color:var(--amber)}
  .stat span{display:block;margin-top:6px;font-family:var(--mono);font-size:.66rem;letter-spacing:.14em;text-transform:uppercase;color:var(--dim)}
  @media(max-width:880px){.anat{grid-template-columns:1fr}.astats{border-left:0;border-top:1px solid var(--line);flex-direction:row;flex-wrap:wrap;justify-content:flex-start;gap:22px 34px}}
  .svc{margin-top:24px}
  .svc .h{font-family:var(--mono);font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:var(--dim);margin:0 0 13px;display:flex;align-items:center;gap:12px}
  .svc .h::after{content:"";flex:1;height:1px;background:var(--line)}
  .chips{display:flex;flex-wrap:wrap;gap:7px}
  .tag{font-family:var(--mono);font-size:.78rem;padding:6px 11px;border:1px solid var(--line);border-radius:8px;color:var(--fg);transition:.25s;background:rgba(255,255,255,.02)}
  .tag:hover{border-color:var(--acc);color:var(--acc);transform:translateY(-2px)}
  .tag.new::before{content:"+";color:var(--acc);margin-right:5px;opacity:.8}

  .exp{display:grid;grid-template-columns:1fr 1fr;gap:14px 48px;margin-top:clamp(36px,5vw,54px)}
  @media(max-width:820px){.exp{grid-template-columns:1fr}}
  .row{display:grid;grid-template-columns:1fr auto;align-items:baseline;gap:14px;padding:13px 0 15px;border-top:1px solid var(--line);font-family:var(--mono)}
  .row .l{font-size:.9rem;color:var(--fg)}
  .row .v{font-size:.78rem;color:var(--acc);font-variant-numeric:tabular-nums}
  .yrs{grid-column:1/3;display:flex;gap:5px;margin-top:10px}
  .cell{height:7px;flex:1;border-radius:2px;background:rgba(255,205,150,.08)}
  .cell.f,.cell.h{background:linear-gradient(90deg,var(--ember),var(--amber));box-shadow:0 0 8px rgba(255,150,40,.35);opacity:0;transform:scaleX(.35);transition:opacity .5s cubic-bezier(.2,.7,.2,1),transform .5s cubic-bezier(.2,.7,.2,1)}
  .cell.h{background:rgba(255,157,47,.34);box-shadow:none}
  .row.in .cell.f,.row.in .cell.h{opacity:1;transform:none}
  @media(prefers-reduced-motion:reduce){.cell.f,.cell.h{opacity:1;transform:none;transition:none}}

  .sg{margin-top:30px}
  .sg h4{font-family:var(--mono);font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);display:flex;align-items:center;gap:14px;margin:0 0 13px}
  .sg h4 .x{opacity:.5}.sg h4::after{content:"";flex:1;height:1px;background:var(--line)}

  .machines{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:clamp(34px,4vw,48px)}
  @media(max-width:1040px){.machines{grid-template-columns:repeat(2,1fr)}}
  @media(max-width:560px){.machines{grid-template-columns:1fr}}
  .mach{border-radius:16px;padding:24px;background:var(--glass);border:1px solid var(--glass-brd);box-shadow:inset 0 1px 0 var(--glass-hi),0 20px 46px -30px rgba(0,0,0,.6);backdrop-filter:blur(22px) saturate(1.45);-webkit-backdrop-filter:blur(22px) saturate(1.45)}
  .mach .h{font-family:var(--mono);font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--acc)}
  .mach h3{font-family:var(--disp);font-weight:600;font-size:1.2rem;margin:8px 0 15px}
  .mach dl{margin:0;display:grid;gap:7px;font-family:var(--mono);font-size:.8rem}
  .mach dl div{display:grid;grid-template-columns:56px 1fr;gap:12px}
  .mach dt{color:var(--dim)}.mach dd{margin:0;color:var(--fg)}

  .desktop-wrap{min-height:280vh;display:block;padding:0}
  .desktop-sticky{position:sticky;top:0;min-height:100vh;display:flex;flex-direction:column;justify-content:center;padding:clamp(68px,9vh,110px) clamp(40px,5vw,64px)}
  .caro-stage{margin-top:clamp(16px,2.4vw,26px);position:relative}
  #carousel{display:block;width:100%;height:min(52vh,500px);cursor:grab;touch-action:pan-y}
  #carousel:active{cursor:grabbing}
  .caro-cap{display:flex;flex-wrap:wrap;gap:6px 10px;justify-content:center;margin-top:16px}
  .caro-cap button{background:rgba(255,255,255,.02);border:1px solid var(--line);border-radius:10px;color:var(--muted);cursor:pointer;padding:9px 15px;font-family:var(--mono);font-size:.76rem;transition:.25s}
  .caro-cap button .q{color:var(--dim);margin-right:7px}
  .caro-cap button[aria-current="true"]{color:#160c02;background:var(--amber);border-color:var(--amber)}
  .caro-cap button[aria-current="true"] .q{color:rgba(22,12,2,.6)}
  .caro-hint{text-align:center;margin-top:11px;font-family:var(--mono);font-size:.66rem;letter-spacing:.18em;text-transform:uppercase;color:var(--dim)}

  .lb{position:fixed;inset:0;z-index:60;display:none;align-items:center;justify-content:center;flex-direction:column;gap:14px;background:rgba(7,4,3,.93);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
  .lb.open{display:flex;animation:lbIn .25s ease}
  @keyframes lbIn{from{opacity:0}}
  @media(prefers-reduced-motion:reduce){.lb.open{animation:none}}
  .lb img{max-width:min(1600px,94vw);max-height:82vh;border-radius:10px;border:1px solid var(--glass-brd);box-shadow:0 40px 120px -40px rgba(0,0,0,.9)}
  .lb-cap{font-family:var(--mono);font-size:.8rem;color:var(--muted);letter-spacing:.06em}
  .lb button{position:absolute;background:rgba(255,255,255,.03);border:1px solid var(--line);border-radius:10px;color:var(--fg);cursor:pointer;font-family:var(--mono);font-size:1rem;padding:10px 14px;transition:border-color .25s,color .25s}
  .lb button:hover{border-color:var(--acc);color:var(--acc)}
  .lb-x{top:26px;right:30px}
  .lb-p{left:26px;top:50%;transform:translateY(-50%)}
  .lb-n{right:26px;top:50%;transform:translateY(-50%)}
  .noscroll{overflow:hidden}
  @media(max-width:560px){.lb-p{left:10px}.lb-n{right:10px}.lb-x{top:14px;right:14px}}

  .contact-word{font-family:var(--disp);font-weight:800;font-size:clamp(2.2rem,5.2vw,3.7rem);line-height:1.06;margin:0;letter-spacing:-.035em}
  .cx{display:flex;flex-direction:column;margin-top:clamp(30px,4vw,44px);max-width:780px;font-family:var(--mono)}
  .cx a{display:flex;align-items:baseline;gap:22px;padding:20px 0;border-top:1px solid var(--line)}
  .cx a:last-child{border-bottom:1px solid var(--line)}
  .cx .w{font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:var(--dim);width:104px;flex:none}
  .cx .v{font-size:clamp(1rem,1.7vw,1.28rem);color:var(--fg);transition:color .25s;overflow-wrap:anywhere}
  .cx .ar{margin-left:auto;color:var(--dim);font-size:1.1rem;transition:transform .3s,color .3s}
  .cx a:hover .v{color:var(--acc)}
  .cx a:hover .ar{color:var(--acc);transform:translate(4px,-4px)}
  @media(max-width:560px){.cx a{flex-wrap:wrap;gap:6px 14px}.cx .w{width:auto}.cx .v{font-size:.92rem;flex-basis:100%;order:3}}

  footer{position:relative;z-index:4;background:var(--ink);color:rgba(239,230,214,.5);padding:38px clamp(40px,5vw,64px);font-family:var(--mono);font-size:.78rem;display:flex;justify-content:space-between;flex-wrap:wrap;gap:16px;border-top:1px solid var(--line)}
  footer .p{color:var(--amber)}

  .rv{opacity:0;transform:translateY(28px);transition:opacity .9s cubic-bezier(.2,.7,.2,1),transform .9s cubic-bezier(.2,.7,.2,1)}
  .rv.in{opacity:1;transform:none}
  @media(prefers-reduced-motion:reduce){.rv{opacity:1;transform:none;transition:none}}

  /* compact pass so every section fits a 1080p-class viewport */
  @media(max-height:1020px){
    section{padding-top:clamp(56px,7vh,84px);padding-bottom:clamp(56px,7vh,84px)}
    .kicker{margin-bottom:14px}
    .lead{margin-top:14px}
    .anat{margin-top:22px}
    .apath{padding:clamp(20px,2.4vw,28px)}
    .apath .ah{margin-bottom:14px}
    .step{padding-bottom:14px}
    .step .sd{margin-top:3px;font-size:.74rem;max-width:none}
    .svc .h{margin-bottom:10px}
    .tag{padding:5px 10px}
    .astats{padding:clamp(20px,2.4vw,28px);gap:16px}
    .stat b{font-size:clamp(1.5rem,2.2vw,1.9rem)}
    .svc{margin-top:16px}
    .triad{margin-top:26px}
    .exp{margin-top:24px}
    .machines{margin-top:24px}
    .sg{margin-top:20px}
  }
