*{box-sizing:border-box}html{scroll-behavior:auto;background:var(--forge-black)}body{margin:0;font-family:var(--font-display);background:var(--forge-black);color:var(--forge-warm);overflow-x:hidden}a{color:inherit;text-decoration:none}button{font:inherit}.skip-link{position:fixed;left:1rem;top:-5rem;background:#fff;color:#000;padding:1rem;z-index:9999}.skip-link:focus{top:1rem}.forge-noise{position:fixed;inset:0;pointer-events:none;opacity:.045;z-index:1000;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.8'/%3E%3C/svg%3E")}.forge-grid{position:fixed;inset:0;pointer-events:none;z-index:2;opacity:.05;background:linear-gradient(90deg,transparent calc(25% - .5px),currentColor 25%,transparent calc(25% + .5px),transparent calc(50% - .5px),currentColor 50%,transparent calc(50% + .5px),transparent calc(75% - .5px),currentColor 75%,transparent calc(75% + .5px))}.site-header{height:var(--header-h);position:fixed;inset:0 0 auto;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:0 var(--page-pad);z-index:100;mix-blend-mode:difference;color:#fff}.brand{display:flex;align-items:center;gap:.75rem;width:max-content}.brand-mark{width:38px;color:var(--forge-orange)}.brand-copy{display:grid;font-size:.78rem;line-height:1;letter-spacing:.12em;text-transform:uppercase}.brand-copy span{opacity:.62}.header-meta{display:flex;gap:2rem;font:700 .63rem var(--font-mono);letter-spacing:.12em}.status-dot::before{content:"";display:inline-block;width:6px;height:6px;margin-right:.55rem;border-radius:50%;background:var(--forge-orange);box-shadow:0 0 14px var(--forge-orange)}.menu-trigger{justify-self:end;border:0;background:none;color:inherit;display:grid;grid-template-columns:auto 24px;gap:.8rem;align-items:center;cursor:pointer;text-transform:uppercase;font:700 .7rem var(--font-mono);letter-spacing:.14em}.menu-trigger i{grid-column:2;height:1px;background:currentColor;display:block;transition:transform var(--medium) var(--ease-out)}.menu-trigger i:last-child{margin-top:-6px}.menu-trigger[aria-expanded=true] i:first-of-type{transform:translateY(3px) rotate(45deg)}.menu-trigger[aria-expanded=true] i:last-child{transform:translateY(-3px) rotate(-45deg)}.menu-overlay{position:fixed;inset:0;background:var(--forge-orange);color:var(--forge-black);z-index:90;display:grid;place-items:center;clip-path:inset(0 0 100% 0);visibility:hidden}.menu-overlay nav{display:grid;position:relative;z-index:2}.menu-overlay nav a{display:grid;grid-template-columns:4rem auto;align-items:center;font-size:clamp(2.8rem,8vw,8rem);font-weight:800;line-height:.95;letter-spacing:-.06em}.menu-overlay nav span{font:700 .7rem var(--font-mono);letter-spacing:.1em}.menu-overlay>p{position:absolute;bottom:2rem;left:var(--page-pad);font:700 .7rem var(--font-mono);letter-spacing:.12em;text-transform:uppercase}.menu-orbit{position:absolute;width:min(75vw,900px);aspect-ratio:1;border:1px solid rgba(11,12,13,.18);border-radius:50%}.menu-orbit:before,.menu-orbit:after{content:"";position:absolute;inset:12%;border:inherit;border-radius:inherit}.menu-orbit:after{inset:28%}.chapter{min-height:100svh;padding:calc(var(--header-h) + 2rem) var(--page-pad) var(--space-7);position:relative;overflow:hidden}.chapter-index,.eyebrow,.component-label{font:700 .66rem var(--font-mono);letter-spacing:.14em;text-transform:uppercase}.engine-hero{display:flex;flex-direction:column;justify-content:flex-end}.hero-kicker{position:absolute;top:20%;left:var(--page-pad);overflow:hidden;font:700 .68rem var(--font-mono);letter-spacing:.16em}.hero-title{margin:0 0 4vh;font-size:clamp(4rem,13.5vw,13rem);line-height:.75;letter-spacing:-.085em;font-weight:800;position:relative;z-index:3}.title-line{display:block;overflow:hidden}.title-line--accent{color:var(--forge-orange);padding-left:20vw}.hero-footer{display:grid;grid-template-columns:minmax(260px,520px) auto;justify-content:space-between;align-items:end;gap:2rem;position:relative;z-index:4}.hero-footer p{font-size:clamp(1rem,1.5vw,1.35rem);line-height:1.5;color:#b7b8b9;margin:0}.text-link{display:inline-flex;gap:1rem;align-items:center;font-weight:700;border-bottom:1px solid currentColor;padding-bottom:.55rem}.hero-orb{position:absolute;width:clamp(280px,44vw,680px);aspect-ratio:1;right:-9vw;top:12%;border-radius:50%;display:grid;place-items:center}.orb-core{width:28%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle at 30% 30%,#ffb06d,var(--forge-orange) 38%,#5b2105 75%,#120803);box-shadow:0 0 80px rgba(216,115,42,.42)}.orb-ring{position:absolute;inset:15%;border:1px solid rgba(216,115,42,.35);border-radius:50%}.orb-ring--2{inset:2%;border-style:dashed;animation:spin 24s linear infinite}.scroll-prompt{position:absolute;right:var(--page-pad);bottom:2rem;display:flex;align-items:center;gap:1rem;font:700 .6rem var(--font-mono);letter-spacing:.16em;transform:rotate(90deg);transform-origin:right}.scroll-prompt i{width:55px;height:1px;background:currentColor;display:block}@keyframes spin{to{transform:rotate(1turn)}}.chapter--light{background:var(--forge-warm);color:var(--forge-black)}.chapter--cream{background:#ded6ca;color:var(--forge-black)}.chapter-head{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid currentColor;padding-top:1rem;margin-bottom:12vh;font:700 .65rem var(--font-mono);letter-spacing:.1em}.chapter-head p{margin:0;max-width:34rem;font-family:var(--font-display);font-size:clamp(1rem,1.4vw,1.25rem);letter-spacing:0;font-weight:500;line-height:1.5}.chapter-head--inverse{color:var(--forge-warm)}.display-sample{font-size:clamp(5rem,15vw,15rem);font-weight:800;letter-spacing:-.095em;line-height:.72}.type-spec-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #bcb7af;margin-top:10vh}.type-spec-grid article{padding:1.5rem;border-right:1px solid #bcb7af}.type-spec-grid article:first-child{padding-left:0}.type-spec-grid article:last-child{border:0}.type-spec-grid span{font:700 .65rem var(--font-mono)}.type-spec-grid strong{display:block;margin:2rem 0 1rem;font-size:clamp(1.1rem,1.6vw,1.5rem)}.type-spec-grid p{margin:0;line-height:1.55;color:#5b5b58}.motion-stage{height:72vh;position:relative;display:grid;place-items:center;margin:0 calc(var(--page-pad)*-1);border-block:1px solid #2b2e30}.motion-word{position:absolute;font-size:clamp(3.2rem,10vw,10rem);font-weight:800;letter-spacing:-.07em}.motion-word--a{transform:translate(-22vw,-16vh)}.motion-word--b{color:var(--forge-orange)}.motion-word--c{transform:translate(18vw,18vh)}.motion-axis{width:1px;height:100%;background:linear-gradient(transparent,#383b3e,transparent)}.motion-rules{display:grid;grid-template-columns:repeat(4,1fr);margin-top:5rem}.motion-rules>div{padding:1.5rem;border-left:1px solid #333638}.motion-rules span,.motion-rules em{font:700 .65rem var(--font-mono);font-style:normal;color:var(--forge-grey)}.motion-rules strong{font-size:2rem;display:block;margin:2rem 0 .5rem}.motion-rules em{color:var(--forge-orange)}.motion-rules p{line-height:1.5;color:#aaa}.component-grid{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:#aea79e;border:1px solid #aea79e}.component-panel{background:#ded6ca;min-height:420px;padding:2rem;position:relative;display:flex;flex-direction:column;justify-content:space-between}.forge-button{display:flex;justify-content:space-between;align-items:center;width:min(100%,420px);border:1px solid currentColor;padding:1.4rem 1.6rem;font-weight:800;font-size:1.1rem;transition:background var(--medium),color var(--medium)}.forge-button:hover{background:var(--forge-black);color:var(--forge-warm)}.image-reveal{height:290px;overflow:hidden;background:var(--forge-black);padding:2rem;transform-style:preserve-3d}.fake-interface{height:100%;background:var(--forge-warm);padding:1rem;display:grid;grid-template-columns:1fr 2fr;gap:.75rem}.fake-interface div{background:var(--forge-orange)}.fake-interface div:nth-child(2),.fake-interface div:nth-child(4){background:#bbb4aa}.system-readout{display:grid;grid-template-columns:auto 1fr;align-items:end;gap:1rem}.system-readout b{font-size:clamp(7rem,15vw,14rem);line-height:.7;letter-spacing:-.09em}.system-readout span{font:700 .7rem var(--font-mono);padding-bottom:.5rem}.system-readout i{grid-column:1/-1;height:4px;background:linear-gradient(90deg,var(--forge-orange) 98%,rgba(0,0,0,.1) 98%)}.component-panel--cursor p{font-size:clamp(2rem,4vw,4rem);line-height:1.05;font-weight:700;letter-spacing:-.045em;max-width:10em}.sandbox{background:var(--forge-orange);color:var(--forge-black);display:grid;grid-template-columns:1.3fr .7fr;align-content:center;gap:4rem}.sandbox-copy h2{font-size:clamp(4.5rem,12vw,12rem);line-height:.72;letter-spacing:-.09em;margin:1.5rem 0 3rem}.sandbox-copy>p:last-child{max-width:42rem;font-size:1.2rem;line-height:1.5}.sandbox-console{align-self:center;border-top:1px solid currentColor}.sandbox-console div{display:flex;justify-content:space-between;border-bottom:1px solid currentColor;padding:1.2rem 0;font:700 .7rem var(--font-mono)}.sandbox-console b{font-weight:700}.sandbox-console b:before{content:"";display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--forge-black);margin-right:.7rem}.sandbox-cta{position:absolute;left:var(--page-pad);bottom:2.5rem;display:flex;gap:1rem;font-weight:800;border-bottom:2px solid currentColor;padding-bottom:.5rem}.sandbox-lines{position:absolute;inset:0;opacity:.14;background:repeating-radial-gradient(ellipse at 100% 50%,transparent 0 30px,currentColor 31px 32px,transparent 33px 62px)}.forge-cursor{position:fixed;left:0;top:0;width:18px;height:18px;border:1px solid var(--forge-orange);border-radius:50%;z-index:1200;pointer-events:none;display:grid;place-items:center;transform:translate(-50%,-50%);transition:width var(--medium) var(--ease-out),height var(--medium) var(--ease-out),background var(--medium),border-color var(--medium);mix-blend-mode:difference}.forge-cursor span{font:700 .58rem var(--font-mono);letter-spacing:.08em;color:#fff;opacity:0;transition:opacity var(--fast)}.forge-cursor.is-active{width:86px;height:86px;background:var(--forge-orange);border-color:var(--forge-orange);mix-blend-mode:normal}.forge-cursor.is-active span{opacity:1}.system-page{background:var(--forge-warm);color:var(--forge-black)}.system-shell{max-width:1500px;margin:auto;padding:4rem var(--page-pad) 8rem}.system-back{font:700 .7rem var(--font-mono)}.system-shell header{padding:12vh 0}.system-shell header span{font:700 .7rem var(--font-mono)}.system-shell h1{font-size:clamp(4rem,12vw,11rem);line-height:.8;letter-spacing:-.085em;margin:1rem 0 3rem}.system-shell header p{font-size:1.3rem;max-width:45rem}.system-shell section{border-top:1px solid #bdb8b0;padding:3rem 0 8rem}.system-shell h2{font-size:2rem}.swatches{display:grid;grid-template-columns:repeat(5,1fr);gap:1rem}.swatches div{display:grid;gap:.5rem}.swatches i{height:220px;background:var(--swatch);border:1px solid rgba(0,0,0,.1)}.swatches code,.swatches b{font-size:.8rem}.type-table>div{border-bottom:1px solid #cbc6be;padding:1rem 0}.t-xxl{font-size:clamp(4rem,10vw,10rem);font-weight:800;letter-spacing:-.08em}.t-xl{font-size:clamp(3rem,7vw,7rem);font-weight:800}.t-h{font-size:clamp(2rem,4vw,4rem);font-weight:700}.t-body{font-size:1.25rem}.t-tech{font:700 .75rem var(--font-mono)}.spacing-bars{display:grid;gap:1rem}.spacing-bars div{font:700 .7rem var(--font-mono)}.spacing-bars div:after{content:"";display:block;width:var(--w);min-width:8px;height:24px;background:var(--forge-orange);margin-top:.4rem}.button-row{display:flex;gap:3rem;align-items:center;flex-wrap:wrap}
@media(max-width:900px){.site-header{grid-template-columns:1fr auto}.header-meta{display:none}.hero-title{font-size:clamp(4rem,19vw,8rem)}.title-line--accent{padding-left:12vw}.hero-footer{grid-template-columns:1fr}.hero-orb{right:-35vw;opacity:.7}.type-spec-grid,.motion-rules{grid-template-columns:1fr 1fr}.component-grid{grid-template-columns:1fr}.sandbox{grid-template-columns:1fr;padding-bottom:8rem}.swatches{grid-template-columns:1fr 1fr}.forge-cursor{display:none}}
@media(max-width:600px){:root{--header-h:72px}.brand-copy{display:none}.chapter{padding-bottom:5rem}.chapter-head{grid-template-columns:1fr;gap:1.5rem;margin-bottom:8vh}.hero-kicker{top:18%}.hero-title{font-size:19vw}.hero-footer p{font-size:1rem}.type-spec-grid,.motion-rules{grid-template-columns:1fr}.type-spec-grid article,.motion-rules>div{border:0;border-top:1px solid #bcb7af;padding-left:0}.motion-rules>div{border-color:#333}.component-panel{min-height:330px}.menu-overlay nav a{grid-template-columns:2.5rem auto;font-size:14vw}.swatches{grid-template-columns:1fr}.swatches i{height:140px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}.forge-cursor{display:none}}

/* ENGINE 1.1 — native-scroll stability patch */
html,body{width:100%;min-width:0;min-height:100%;overflow-y:auto!important}
body{position:relative}
main{display:block;width:100%;min-width:0}
.chapter{width:100%;max-width:none}
.site-header{width:100%}
.forge-cursor{opacity:0}
html.cursor-ready .forge-cursor{opacity:1}
@media (pointer:coarse),(max-width:900px){.forge-cursor{display:none!important}}

/* ENGINE 1.2 — hard viewport reset */
:root{--page-pad:clamp(24px,4vw,72px)}
html,body{margin:0!important;padding:0!important;width:100%!important;max-width:none!important;min-height:100%!important;overflow-x:clip!important}
body{position:relative!important;left:auto!important;right:auto!important;transform:none!important}
main,#main{position:relative!important;display:block!important;width:100%!important;max-width:none!important;margin:0!important;padding:0!important;left:auto!important;right:auto!important;transform:none!important}
.chapter,.engine-hero,.type-lab,.motion-lab,.component-lab,.sandbox{position:relative;width:100%!important;max-width:none!important;margin-left:0!important;margin-right:0!important;left:auto!important;right:auto!important;transform:none}
.engine-hero{min-height:100vh;min-height:100svh}
.motion-stage{margin-left:calc(var(--page-pad) * -1)!important;margin-right:calc(var(--page-pad) * -1)!important;width:auto!important}
.pin-spacer{width:100%!important;max-width:none!important;margin:0!important;padding:0!important;transform:none!important}
.site-header{left:0!important;right:0!important;transform:none!important}
@media(max-width:900px){.engine-hero{min-height:100svh}.hero-title{font-size:clamp(4rem,18vw,8rem)}}

/* ENGINE 1.4 — production navigation */
.menu-overlay{padding:clamp(90px,10vh,130px) var(--page-pad) 72px;place-items:stretch}
.menu-layout{width:min(1180px,88vw);margin:auto;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);gap:clamp(3rem,8vw,9rem);align-items:center;position:relative;z-index:2}
.menu-overlay .menu-primary{display:grid}
.menu-overlay .menu-primary>a{grid-template-columns:4rem auto;font-size:clamp(3.1rem,6.4vw,7rem);line-height:.91;transition:opacity .25s ease,transform .25s ease}
.menu-overlay .menu-primary:hover>a:not(:hover){opacity:.32}
.menu-overlay .menu-primary>a:hover{transform:translateX(10px)}
.menu-overlay .menu-primary .menu-project{margin-top:.12em}
.menu-services{border-top:1px solid rgba(11,12,13,.38);opacity:.28;transform:translateX(24px);transition:opacity .35s ease,transform .45s var(--ease-out);pointer-events:auto}
.menu-layout:has([data-services-trigger]:hover) .menu-services,.menu-layout:has([data-services-trigger]:focus-visible) .menu-services,.menu-services:hover,.menu-services:focus-within{opacity:1;transform:none}
.menu-services-head{display:flex;justify-content:space-between;padding:0 0 1rem;margin-top:-1.7rem;font:700 .62rem var(--font-mono);letter-spacing:.14em;text-transform:uppercase}
.menu-services-head b{font-weight:700;opacity:.55}
.menu-services>a{display:grid;grid-template-columns:2.4rem 1fr auto;align-items:center;gap:.75rem;padding:1rem 0;border-bottom:1px solid rgba(11,12,13,.25);font-size:clamp(1.1rem,1.55vw,1.55rem);letter-spacing:-.025em;transition:padding .2s ease,background .2s ease}
.menu-services>a span{font:700 .58rem var(--font-mono);letter-spacing:.1em;opacity:.62}
.menu-services>a strong{font-weight:700}.menu-services>a i{font-style:normal;font-size:.9rem;opacity:.55}
.menu-services>a:hover,.menu-services>a:focus-visible{padding-left:.6rem;padding-right:.35rem;background:rgba(244,241,235,.12)}
@media(max-width:900px){.menu-overlay{overflow-y:auto;padding-top:90px}.menu-layout{width:100%;grid-template-columns:1fr;gap:2.5rem;align-content:start}.menu-overlay .menu-primary>a{font-size:clamp(3rem,11vw,6rem);grid-template-columns:3rem auto}.menu-services{opacity:1;transform:none}.menu-services-head{margin-top:0}.menu-services>a{font-size:1.15rem;padding:.85rem 0}.menu-overlay>p{position:relative;left:auto;bottom:auto;margin:2rem 0 0}}
@media(max-width:600px){.menu-overlay{padding-left:24px;padding-right:24px}.menu-overlay .menu-primary>a{font-size:12vw;grid-template-columns:2.5rem auto}.menu-services{display:grid;grid-template-columns:1fr 1fr;column-gap:1rem}.menu-services-head{grid-column:1/-1}.menu-services>a{grid-template-columns:1.7rem 1fr}.menu-services>a i{display:none}}
.menu-overlay.services-active .menu-services{opacity:1;transform:none}

/* V7.8 — Tri-Cut identity */
.brand{gap:.9rem}
.brand-mark{width:42px;height:42px;display:block;flex:0 0 42px;color:#E97824;overflow:visible}
.brand-copy{font-size:.77rem;line-height:1.08;letter-spacing:.18em;font-weight:500}
.brand-copy strong{font-weight:700;letter-spacing:.2em}
.brand-copy span{opacity:.72;letter-spacing:.185em}
@media(max-width:600px){.brand-mark{width:38px;height:38px;flex-basis:38px}}
