
:root{font-family:"DM Sans",sans-serif;color:#172320;background:#f1f0e9;font-synthesis:none;scroll-behavior:smooth;--dark:#111d1a;--dark2:#192825;--cream:#f1f0e9;--white:#f9f8f3;--line:#d4d7cc;--accent:#d6f36a;--orange:#c97855;--ink:#172320}
*{box-sizing:border-box}html{scroll-padding-top:90px}body{margin:0;min-width:320px;overflow-x:clip}body,button,input{font-family:"DM Sans",sans-serif}button{cursor:pointer}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:"Manrope",sans-serif;letter-spacing:-.065em}h2 em,h1 em,h3 em{font-style:normal;color:var(--orange)}::selection{background:var(--accent);color:var(--dark)}:focus-visible{outline:3px solid #dd8539;outline-offset:4px}.container{width:min(1440px,calc(100% - 8.3vw));margin:auto}.eyebrow,.micro-label,.stage-caption,.frame-top,.frame-bottom,.image-kicker,.project-meta,.stage-code,.hero-number,.section-heading,.paper-header,.simulation-top,.simulation-footer,.method-code,.method-footer,.method-index,.result-count,.footer-bottom small,.story-overline,.hero-tags,.timeline span,.cv-eyebrow{font-family:"IBM Plex Mono",monospace;text-transform:uppercase;font-size:10px;letter-spacing:.12em;line-height:1.5}.eyebrow{font-weight:500;margin:0 0 30px;color:#777d70}.eyebrow.light{color:#acb9ac}.skip{position:fixed;z-index:300;top:-80px;left:15px;padding:10px 15px;background:var(--accent);color:var(--dark)}.skip:focus{top:10px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.scroll-meter{position:fixed;top:0;left:0;right:0;height:3px;z-index:105;pointer-events:none}.scroll-meter span{display:block;width:0;height:100%;background:var(--accent);transform-origin:left}.header{height:84px;display:flex;align-items:center;justify-content:space-between;padding:0 4.15vw;position:absolute;left:0;right:0;top:0;z-index:100;color:var(--cream);border-bottom:1px solid #ffffff21}.brand{display:flex;align-items:center;gap:14px;white-space:nowrap;font-size:11px;font-weight:800;letter-spacing:.08em}.brand-mark{font-family:"Manrope",sans-serif;display:grid;place-items:center;background:var(--accent);color:var(--dark);font-size:24px;font-weight:800;letter-spacing:-.08em;width:46px;height:46px;border-radius:50%}.brand-mark span{color:var(--orange)}.nav{display:flex;gap:33px}.nav a{font-size:13px;color:#e1e6de;transition:color .25s}.nav a:hover{color:var(--accent)}.header-cta{font-size:12px;font-weight:700;border-bottom:1px solid #bac3a7;padding:9px 0}.header-cta span{padding-left:16px}.menu-toggle{display:none;border:0;background:transparent;color:inherit;padding:8px}.menu-toggle span{display:block;width:22px;height:1px;background:currentColor;margin:6px 0}
.btn{display:inline-flex;align-items:center;justify-content:space-between;gap:40px;padding:19px 22px;border:1px solid transparent;border-radius:3px;font-size:13px;font-weight:800;min-height:57px;transition:transform .25s,background .25s,color .25s}.btn:hover{transform:translateY(-3px)}.btn span{font-size:18px;font-weight:400}.btn-accent{background:var(--accent);color:var(--dark)}.btn-accent:hover{background:#e7ff99}.btn-ghost{border-color:#ffffff56;color:var(--cream);background:#ffffff0b}.btn-dark{color:var(--cream);background:var(--dark)}.btn-outline{border-color:var(--ink);color:var(--ink)}
.hero{min-height:900px;background:var(--dark);position:relative;color:var(--cream);overflow:hidden;padding-top:84px}.hero-glow{position:absolute;pointer-events:none;right:-10vw;top:-17vh;width:75vw;height:85vh;background:radial-gradient(ellipse,#57725360 0%,#1e342b50 36%,transparent 68%);filter:blur(12px)}.hero-lattice{position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(to right,#ffffff06 1px,transparent 1px),linear-gradient(to bottom,#ffffff04 1px,transparent 1px);background-size:12.5% 120px;mask-image:linear-gradient(90deg,transparent,#000 55%)}.hero-lattice i{position:absolute;width:7px;height:7px;border:1px solid #d6f36a77;transform:rotate(45deg)}.hero-lattice i:nth-child(1){left:53%;top:19%}.hero-lattice i:nth-child(2){left:94%;top:72%}.hero-lattice i:nth-child(3){left:60%;top:88%}.hero-layout{min-height:730px;display:grid;grid-template-columns:1.04fr .96fr;align-items:center;gap:2vw;position:relative}.hero-copy{position:relative;z-index:4;padding:85px 0 70px}.hero .eyebrow{font-size:10px;margin-bottom:30px}.pulse{display:inline-block;width:7px;height:7px;background:var(--accent);border-radius:50%;box-shadow:0 0 0 5px #c2ff5b25;margin-right:15px;animation:pulse 2.7s ease-in-out infinite}@keyframes pulse{50%{box-shadow:0 0 0 10px #c2ff5b07}}.hero h1{font-size:clamp(55px,5.35vw,90px);line-height:1.12;font-weight:700;letter-spacing:-.08em;margin-bottom:30px}.hero h1 .outlined{color:transparent;-webkit-text-stroke:1px #e8eee2;text-shadow:none}.hero h1 em{color:var(--accent)}.hero-lead{max-width:525px;font-size:15px;line-height:1.85;color:#bbc7bf;margin-bottom:28px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.hero-tags{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px;color:#91a59b}.hero-tags span+span:before{content:"•";margin-right:12px;color:var(--orange)}.hero-stage{height:650px;position:relative;isolation:isolate;perspective:1100px;display:flex;align-items:center;justify-content:center;z-index:2}.orbit{position:absolute;border:1px solid #a2c8a337;border-radius:50%;transform:rotate(-20deg)}.orbit-a{width:670px;height:350px}.orbit-b{width:530px;height:530px;transform:rotate(54deg)}.stage-caption{position:absolute;top:66px;right:15px;color:#b0c0b2}.stage-frame{background:#eaece5;border:1px solid #7f958a;box-shadow:0 60px 110px #000b,0 0 0 12px #ffffff05;overflow:hidden}.stage-primary{width:min(87%,590px);position:relative;transform:translate(2%,2%) rotateY(-13deg) rotateX(7deg) rotateZ(-5deg);border-radius:9px;z-index:3;will-change:transform}.stage-primary img{aspect-ratio:1.55;object-fit:cover;width:100%;background:#a2aba1}.frame-top{display:flex;justify-content:space-between;align-items:center;padding:12px 14px;font-size:8px;gap:10px;color:var(--dark);background:#efefe8}.frame-top>span:nth-child(2){margin-right:auto}.frame-led{width:8px;height:8px;border-radius:50%;background:#c87855}.frame-bottom{display:flex;justify-content:space-between;align-items:center;padding:15px;background:#dfe4dc;color:var(--ink);font-size:9px}.frame-bottom b{font-size:16px}.stage-secondary{position:absolute;right:-1%;bottom:10%;width:47%;transform:rotate(8deg) rotateY(14deg);z-index:4;border:9px solid #192925}.stage-secondary img{aspect-ratio:1.48;object-fit:cover}.stage-code{position:absolute;left:2%;bottom:12%;display:grid;gap:8px;background:#192723eb;border:1px solid #849b80;padding:17px 22px;transform:rotate(-8deg);color:#cad0c5;z-index:5;font-size:9px}.stage-code strong{color:var(--accent);margin-top:4px}.stage-code i{font-style:normal}.stage-cross{position:absolute;font-size:28px;font-weight:300;color:var(--accent)}.cross-a{left:6%;top:12%}.cross-b{right:5%;bottom:7%}.hero-foot{position:relative;z-index:4;display:flex;align-items:center;justify-content:space-between;gap:15px;border-top:1px solid #ffffff27;padding-top:25px;padding-bottom:35px}.hero-foot>div{display:grid;gap:4px}.hero-foot .micro-label{color:#9eae9e}.hero-foot strong{font-size:12px;font-weight:500}.scroll-cue{font-size:11px;border-bottom:1px solid #fff6;padding-bottom:8px}.scroll-cue span{margin-left:25px}.hero-number{color:#748777}
.statement{padding:150px 0 160px;background:var(--cream)}.statement-grid{display:grid;grid-template-columns:.32fr 1.45fr .55fr;align-items:start;gap:45px}.statement-grid h2{font-size:clamp(36px,4.3vw,68px);line-height:1.18;font-weight:600;margin:0}.statement-grid p:last-child{color:#65706a;font-size:14px;line-height:1.9;margin-top:16px}
.experience{padding:95px 0 140px;background:#e3e8de}.section-heading{display:flex;justify-content:space-between;color:#6a796b;border-bottom:1px solid #b5c1b3;margin-bottom:80px;font-size:10px}.section-heading .eyebrow{margin-bottom:20px}.experience-layout{display:grid;grid-template-columns:1fr 1.06fr;gap:7vw;align-items:center}.story-sticky{padding-bottom:45px}.story-overline{color:#7f8675;display:block;margin-bottom:26px}.experience-story h2{font-size:clamp(42px,4.45vw,72px);line-height:1.12;margin-bottom:24px}.experience-story h2 em{color:var(--orange)}.experience-story p{font-size:15px;line-height:1.9;color:#66766c;max-width:515px}.step-list{display:grid;border-top:1px solid #bbc6ba;margin:40px 0 33px}.step{border:0;border-bottom:1px solid #bbc6ba;background:transparent;text-align:left;padding:17px 12px 17px 0;color:#68796b;font-size:16px;display:flex;gap:26px;align-items:center;transition:padding .2s,color .2s}.step span{font-family:"IBM Plex Mono",monospace;font-size:11px}.step:hover,.step.is-active{color:var(--ink);padding-left:12px}.step.is-active{font-weight:700;background:#edf1e8}.inline-arrow{font-size:13px;font-weight:800;border-bottom:1px solid currentColor;padding-bottom:7px;display:inline-flex;justify-content:space-between;min-width:275px}.simulation{border:1px solid #9cac9e;background:#eff0e8;box-shadow:30px 36px 0 #c3d0c1;min-width:0}.simulation-top,.simulation-footer{display:flex;align-items:center;justify-content:space-between;padding:18px 25px;border-bottom:1px solid #cfdbcf;color:#66776b;font-size:10px}.status-led{width:8px;height:8px;border-radius:50%;background:#72b96a;display:inline-block;margin-right:9px}.simulation-body{padding:40px 32px 45px}.sim-flow{display:grid;grid-template-columns:1fr .7fr 1fr .7fr 1fr;align-items:center;margin:10px 0 40px}.flow-unit{width:100%;aspect-ratio:1/1;display:flex;flex-direction:column;align-items:center;justify-content:center;border:1px solid #cbd9c9;background:#e2e8e0;gap:10px;transition:background .35s,transform .35s,color .35s}.flow-unit.active{background:var(--dark);color:var(--accent);transform:translateY(-8px)}.flow-unit.done{background:#c4d6bb;color:var(--dark)}.flow-icon{font-size:32px}.flow-unit small{font:9px "IBM Plex Mono",monospace;letter-spacing:.08em}.flow-link{height:1px;background:#9bad9f;position:relative}.flow-link span{display:block;height:3px;width:0;background:#809f70;transition:width .5s}.flow-link.complete span{width:100%}.sim-paper{background:white;padding:28px;box-shadow:0 18px 40px #2035200d;border:1px solid #c8d3c7;min-height:242px}.paper-header{display:flex;justify-content:space-between;color:#879185;border-bottom:1px solid #e3e5db;padding-bottom:18px}.sim-paper h3{font-size:27px;letter-spacing:-.055em;margin:27px 0 8px}.sim-paper>p{font-size:13px;line-height:1.7;color:#607066;min-height:44px}.paper-meta{display:flex;justify-content:space-between;gap:10px;border-top:1px solid #e3e5db;padding-top:13px;font-family:"IBM Plex Mono",monospace;font-size:10px;color:#456255}.sim-controls{display:flex;align-items:center;gap:20px;margin-top:22px}.sim-controls .btn{padding:15px 20px;min-height:51px;font-size:12px}.reset{border:0;background:transparent;color:#54685a;text-decoration:underline;font-size:12px}.simulation-footer{border-top:1px solid #cfdbcf;border-bottom:0;background:#e5eadf}
.work{padding:148px 0;background:var(--white)}.work-heading,.archive-header,.resumes-head{display:flex;align-items:end;justify-content:space-between;gap:7vw;margin-bottom:64px}.work-heading h2,.archive-header h2,.resumes h2,.about h2{font-size:clamp(44px,5.1vw,79px);line-height:1.08;margin:0;font-weight:700}.work-heading>p,.archive-header>p,.resumes-head>p{max-width:310px;font-size:14px;line-height:1.8;color:#6c776f}.feature{display:grid;grid-template-columns:1.2fr .8fr;min-height:575px;background:#e2e8df;margin-bottom:27px;overflow:hidden}.feature-image{display:block;position:relative;overflow:hidden;min-height:320px;background:#bcc8bc}.feature-image img{width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.2,.7,.25,1);filter:saturate(.85)}.feature-image:hover img{transform:scale(1.055)}.image-kicker{position:absolute;top:23px;left:23px;z-index:2;background:#13221ddc;color:#f6f4ea;padding:11px 13px;font-size:9px}.image-overlay{position:absolute;left:25px;right:25px;bottom:15px;color:#fff;font:90px "Manrope",sans-serif;display:flex;justify-content:space-between;align-items:end;text-shadow:0 5px 25px #1b3b3c59}.image-overlay i{font-style:normal;font-size:30px}.feature-copy{padding:clamp(35px,5.2vw,86px);display:flex;align-items:flex-start;flex-direction:column;justify-content:center}.project-meta{color:#6d846d;font-size:10px;line-height:1.8;margin-bottom:34px}.feature-copy h3{font-size:clamp(34px,4.2vw,65px);font-weight:700;line-height:1.06;margin:0 0 22px}.feature-copy h3 span{color:var(--orange)}.feature-copy>p{line-height:1.8;font-size:14px;color:#68756e;max-width:390px;margin-bottom:30px}.text-link{font-size:13px;border-bottom:1px solid currentColor;padding-bottom:8px;font-weight:800}.feature-pair{display:grid;grid-template-columns:1fr 1fr;gap:27px}.feature-card{display:flex;flex-direction:column;min-height:0;background:#edeee8}.feature-card .feature-image{height:370px}.feature-card .feature-copy{min-height:360px;padding:43px}.feature-card .feature-copy h3{font-size:clamp(34px,3.3vw,50px)}.feature-card .project-meta{margin-bottom:22px}.bridge{min-height:240px;display:flex;align-items:center;justify-content:space-between;gap:45px;padding:70px 0;border-top:1px solid #c9d1c6;margin-top:65px}.bridge span{font:10px "IBM Plex Mono",monospace;letter-spacing:.14em;max-width:150px;color:#77837a}.bridge strong{font-size:clamp(24px,3.1vw,50px);font-family:"Manrope",sans-serif;letter-spacing:-.055em;max-width:780px;line-height:1.3}.feature-inverse{grid-template-columns:.8fr 1.2fr;background:#e7dfd1}.zero21-art{background:#1a1918;display:flex;align-items:center;justify-content:center;min-height:520px;color:#fff}.zero21-typography{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:28px;padding:50px;z-index:1}.zero21-typography:before{content:"";position:absolute;width:390px;height:390px;max-width:80vw;background:radial-gradient(ellipse,#a9afa359,transparent 65%);top:20%;left:20%;z-index:-1}.zero21-typography span,.zero21-typography small{font:11px "IBM Plex Mono",monospace;letter-spacing:.18em;color:#d9d2c6}.zero21-typography strong{font:700 clamp(55px,5vw,90px)/.99 "Manrope",sans-serif;letter-spacing:-.07em}.work-tail{padding:42px 0 0;display:flex;align-items:center;justify-content:space-between;gap:30px}.work-tail p{font-size:14px;max-width:550px;line-height:1.8;color:#607067}
.method{background:#111c1a;color:var(--white);padding:140px 0 155px;position:relative;overflow:hidden}.method:before{content:"";pointer-events:none;position:absolute;right:0;top:0;width:50%;height:100%;background:radial-gradient(ellipse,#294a3d66,transparent 60%)}.method-top{position:relative;display:grid;grid-template-columns:1.1fr 1.2fr .7fr;gap:30px;margin-bottom:75px}.method-top h2{font-size:clamp(41px,4.65vw,74px);line-height:1.1;margin:0}.method-top h2 em{color:var(--accent)}.method-top p:last-child{color:#aebdb2;line-height:1.8;font-size:14px}.method-grid{position:relative;display:grid;grid-template-columns:.55fr 1.45fr;border:1px solid #42534b}.method-rail{display:flex;flex-direction:column;border-right:1px solid #42534b}.method-tab{background:transparent;color:#9caea3;border:0;border-bottom:1px solid #42534b;padding:30px 30px;text-align:left;font-size:16px;display:flex;gap:27px;align-items:center;transition:background .25s}.method-tab:last-child{border-bottom:0}.method-tab>span{font:11px "IBM Plex Mono",monospace;color:#708d7e}.method-tab:hover,.method-tab.is-active{background:#283e34;color:#e5f9a1}.method-content{min-height:510px;padding:42px 55px;background:radial-gradient(circle at 72% 35%,#3754474d,transparent 38%)}.method-code,.method-footer{display:flex;justify-content:space-between;color:#849e8f}.method-indicator{color:var(--accent)}.method-indicator i{font-style:normal}.method-symbol{font:120px "Manrope",sans-serif;line-height:1;color:var(--accent);padding:70px 0 28px;text-align:center}.method-index{color:#8ca290}.method-content h3{font-size:clamp(28px,3vw,43px);margin:10px 0 12px}.method-content p{color:#b2c2b7;line-height:1.8;max-width:510px;font-size:14px}.method-footer{margin-top:55px;border-top:1px solid #42534b;padding-top:22px}
.archive{padding:145px 0;background:var(--cream)}.archive-controls{display:grid;gap:21px}.search-label{border:1px solid #cbd2c7;background:#f8f8f3;padding:17px 20px;display:flex;align-items:center;gap:17px}.search-label>span{font-size:26px;color:#758678;line-height:1}.search-label input{border:0;outline:0;background:transparent;width:100%;font-size:15px;color:var(--ink)}.search-label:focus-within{outline:2px solid #608775}.filter-row{display:flex;flex-wrap:wrap;gap:8px}.filter{border:1px solid #c6d0c1;background:transparent;border-radius:30px;padding:11px 17px;color:#617065;font-size:12px}.filter:hover,.filter.is-active{background:var(--dark);color:var(--cream)}.result-count{margin:22px 0 22px;color:#78877d}.catalog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}.catalog-item{border:1px solid #d4d9cd;padding:27px;min-height:230px;background:#f7f7f1;display:flex;flex-direction:column;transition:background .2s,transform .2s}.catalog-item:hover{background:#e1e9dc;transform:translateY(-3px)}.catalog-item-top{display:flex;justify-content:space-between;gap:10px;font:9px "IBM Plex Mono",monospace;color:#78887a;letter-spacing:.08em}.catalog-item h3{font-size:22px;line-height:1.2;letter-spacing:-.045em;margin:26px 0 11px}.catalog-item p{font-size:12px;line-height:1.7;color:#67746b;margin-bottom:22px}.catalog-item>a{margin-top:auto;display:flex;justify-content:space-between;border-top:1px solid #d4d9cd;padding-top:15px;font-size:12px;font-weight:700}.catalog-item>a span{font-size:18px}.empty{border:1px dashed #b9c6b6;padding:40px;text-align:center;grid-column:1/-1}
.about{padding:145px 0;background:#e2e8df}.about-layout{display:grid;grid-template-columns:1fr 1fr;gap:10%}.about-copy>p{font-size:17px;line-height:1.85;color:#596c5e}.timeline{border-top:1px solid #aebdae;margin-top:45px}.timeline>div{display:grid;grid-template-columns:110px 1fr;column-gap:16px;padding:23px 0;border-bottom:1px solid #aebdae}.timeline span{color:#728777;grid-row:1/3}.timeline strong{font-size:14px}.timeline small{font-size:12px;margin-top:6px;color:#718171}
.resumes{padding:145px 0;background:var(--white)}.cv-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.cv-card{background:#eeefe8;border:1px solid #d4d6cb;padding:30px;display:flex;flex-direction:column;gap:18px;min-height:235px;transition:background .2s,transform .2s}.cv-card:hover{background:#e1e9df;transform:translateY(-3px)}.cv-card.featured{background:#d6f36a;grid-column:span 2}.cv-card.featured:hover{background:#c9ed4c}.cv-top{display:flex;justify-content:space-between;font:10px "IBM Plex Mono",monospace;color:#5a705f}.cv-title{font-family:"Manrope",sans-serif;font-weight:700;letter-spacing:-.055em;font-size:26px;line-height:1.2;max-width:270px}.cv-card.featured .cv-title{font-size:36px;max-width:390px}.cv-end{border-top:1px solid #0002;padding-top:15px;margin-top:auto;display:flex;justify-content:space-between;font-weight:700;font-size:12px}.cv-end span{font-size:19px}
.footer{padding:140px 0 40px;background:#111b19;color:#f1f2e8}.footer h2{font-size:clamp(45px,6vw,90px);line-height:1.1;margin:20px 0 56px}.footer h2 em{color:var(--accent)}.footer-mail{font-size:clamp(20px,3vw,41px);font-family:"Manrope",sans-serif;letter-spacing:-.05em;border-bottom:1px solid #708578;padding-bottom:12px;display:inline-flex;gap:20px}.footer-mail span{font-size:28px;color:var(--accent)}.footer-bottom{border-top:1px solid #3c4a43;padding-top:28px;margin-top:140px;display:grid;grid-template-columns:1fr auto auto;gap:30px;align-items:end}.footer-bottom div{display:grid;gap:5px}.footer-bottom div strong{font-size:12px}.footer-bottom div span{font-size:11px;color:#849c8f}.footer-bottom nav{display:flex;gap:20px;font-size:12px}.footer-bottom small{color:#71867a}
.reveal{opacity:1}.js .reveal:not(.is-visible){opacity:0;transform:translateY(35px)}.js .reveal{transition:opacity .65s,transform .65s}.js .reveal.is-visible{opacity:1;transform:translateY(0)}
@media(min-width:1440px){.container{width:min(1360px,calc(100% - 120px))}.header{padding:0 max(60px,calc((100vw - 1360px)/2))}}
@media(max-width:1100px){.nav{gap:18px}.hero-layout{grid-template-columns:1.1fr .9fr}.hero h1{font-size:clamp(52px,5.3vw,74px)}.hero-stage{height:520px}.orbit-a{width:450px}.orbit-b{width:400px;height:400px}.stage-code{left:-2%;bottom:8%}.stage-secondary{right:-8%}.statement-grid{grid-template-columns:.3fr 1.4fr}.statement-grid p:last-child{grid-column:2;max-width:500px}.method-top{grid-template-columns:1fr 2fr}.method-top p:last-child{grid-column:2}.feature-copy{padding:40px}.feature{min-height:450px}.feature-card .feature-image{height:285px}}
@media(max-width:800px){.container{width:calc(100% - 44px)}.header{height:72px;padding:0 22px}.brand-mark{width:39px;height:39px;font-size:23px}.brand-name{font-size:10px}.header-cta{margin-left:auto;margin-right:18px;font-size:11px}.menu-toggle{display:block}.nav{display:none;position:absolute;top:72px;left:0;right:0;background:#1b2b24;border-bottom:1px solid #54705a;padding:24px;box-shadow:0 18px 30px #0005;flex-direction:column;gap:22px}.nav.open{display:flex}.nav a{font-size:16px}.hero{min-height:0;padding-top:72px}.hero-layout{grid-template-columns:1fr;min-height:0;gap:10px}.hero-copy{padding:85px 0 18px}.hero h1{font-size:clamp(48px,8.3vw,81px)}.hero-stage{width:min(680px,100%);height:470px;margin:auto}.hero-foot{padding-top:20px;padding-bottom:35px}.hero-number{display:none}.statement{padding:100px 0}.statement-grid{grid-template-columns:1fr;gap:20px}.statement-grid p:last-child{grid-column:auto}.statement-grid h2{font-size:clamp(37px,6vw,60px)}.experience{padding:80px 0 115px}.experience-layout{grid-template-columns:1fr;gap:40px}.experience-story h2{font-size:50px}.step-list{margin:25px 0}.simulation{box-shadow:12px 15px 0 #c3d0c1}.work{padding:90px 0}.work-heading,.archive-header,.resumes-head{align-items:start;flex-direction:column;gap:10px}.feature{grid-template-columns:1fr;min-height:auto}.feature-image{height:440px}.feature-copy{min-height:330px}.feature-inverse .feature-copy{order:2}.feature-inverse .feature-image{order:1}.feature-pair{gap:18px}.feature-card .feature-image{height:280px}.feature-card .feature-copy{min-height:350px;padding:32px}.feature-card .feature-copy h3{font-size:35px}.bridge{gap:25px}.method{padding:90px 0}.method-top{grid-template-columns:1fr}.method-top p:last-child{grid-column:1}.method-grid{grid-template-columns:1fr}.method-rail{flex-direction:row;overflow-x:auto;border-right:0;border-bottom:1px solid #42534b}.method-tab{white-space:nowrap;min-width:max-content;padding:20px}.method-content{min-height:435px;padding:28px}.method-symbol{padding:45px 0 20px;font-size:84px}.archive,.resumes,.about{padding:90px 0}.catalog-grid{grid-template-columns:repeat(2,1fr)}.cv-grid{grid-template-columns:repeat(2,1fr)}.about-layout{grid-template-columns:1fr;gap:40px}.footer{padding:90px 0 25px}.footer-bottom{margin-top:100px;grid-template-columns:1fr auto}.footer-bottom small{grid-column:1/-1}}
@media(max-width:550px){.container{width:calc(100% - 34px)}.header{padding:0 17px}.brand{gap:8px}.brand-name{font-size:9px}.header-cta{font-size:0;border:1px solid #9aae9c;width:36px;height:36px;border-radius:50%;display:grid;place-items:center;margin-right:9px}.header-cta span{font-size:17px;padding:0}.hero-copy{padding:65px 0 15px}.hero h1{font-size:clamp(42px,11vw,59px);line-height:1.11}.hero-lead{font-size:14px}.hero-actions{flex-direction:column;align-items:stretch}.hero-actions .btn{width:100%}.hero-tags{font-size:9px;gap:7px}.hero-tags span+span:before{margin-right:7px}.hero-stage{height:360px;margin-left:-10px;width:calc(100% + 20px)}.stage-caption{top:8px;right:18px}.stage-primary{width:88%}.stage-secondary{width:46%;bottom:7%;right:0}.stage-code{left:2%;bottom:1%;padding:8px;font-size:7px;gap:4px}.stage-frame .frame-top{padding:8px;font-size:6px}.frame-bottom{font-size:7px;padding:9px}.orbit-a{width:340px;height:220px}.orbit-b{width:260px;height:260px}.hero-foot>div{display:none}.hero-foot .scroll-cue{width:100%;display:flex;justify-content:space-between}.statement{padding:78px 0}.statement-grid h2{font-size:37px}.experience{padding:75px 0 85px}.section-heading{margin-bottom:45px}.section-heading>p{display:none}.experience-story h2{font-size:42px}.simulation-body{padding:28px 15px}.simulation-top,.simulation-footer{padding:15px 12px;font-size:8px}.flow-unit small{font-size:7px}.flow-icon{font-size:22px}.sim-flow{margin-bottom:25px}.sim-paper{padding:19px;min-height:240px}.sim-paper h3{font-size:24px}.sim-controls{gap:12px}.sim-controls .btn{padding:12px;font-size:10px;gap:10px}.sim-paper>p{min-height:63px}.work-heading h2,.archive-header h2,.resumes h2,.about h2{font-size:44px}.work-heading{margin-bottom:40px}.feature{margin-bottom:17px}.feature-image{height:300px;min-height:300px}.feature-copy{min-height:290px;padding:30px}.feature-copy h3{font-size:43px}.feature-pair{grid-template-columns:1fr}.feature-card .feature-image{height:300px}.feature-card .feature-copy{min-height:280px}.bridge{display:block;padding:60px 0;min-height:0}.bridge span{display:block;margin-bottom:30px}.bridge strong{font-size:27px}.zero21-art{min-height:330px}.zero21-typography{padding:20px}.zero21-typography strong{font-size:55px}.work-tail{flex-direction:column;align-items:start}.work-tail .btn{width:100%}.method-top h2{font-size:43px}.method-content{padding:20px}.method-footer{margin-top:35px;font-size:8px}.method-content h3{font-size:28px}.catalog-grid,.cv-grid{grid-template-columns:1fr}.catalog-item{min-height:210px}.cv-card.featured{grid-column:span 1}.cv-card.featured .cv-title{font-size:30px}.timeline>div{grid-template-columns:75px 1fr}.footer h2{font-size:45px}.footer-mail{font-size:20px}.footer-bottom{grid-template-columns:1fr;gap:25px}.footer-bottom nav{gap:14px;flex-wrap:wrap}.footer-bottom small{grid-column:auto}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.js .reveal:not(.is-visible){opacity:1;transform:none}.btn:hover,.catalog-item:hover,.cv-card:hover{transform:none}}

/* Laboratório Vivo / identidade editorial — direção local 02 */
:root{--dark:#121719;--dark2:#192124;--cream:#f8f6f1;--white:#fffdfa;--line:#c9cacb;--accent:#f1c32f;--orange:#b94427;--ink:#151819;--blue:#174fca;--blue-pale:#e6eefb;font-family:"IBM Plex Sans",sans-serif;background:#f8f6f1;color:#151819}
body,button,input{font-family:"IBM Plex Sans",sans-serif}
h1,h2,h3{font-family:"Archivo Black",sans-serif;font-weight:400;letter-spacing:-.057em}
h2 em,h1 em,h3 em{font-style:normal;color:var(--blue)}
.eyebrow,.micro-label,.stage-caption,.image-kicker,.project-meta,.hero-number,.section-heading,.paper-header,.simulation-top,.simulation-footer,.method-code,.method-footer,.method-index,.result-count,.footer-bottom small,.story-overline,.hero-tags,.timeline span,.cv-eyebrow,.frame-top,.frame-bottom{font-family:"IBM Plex Mono",monospace}
.header{height:82px;color:var(--ink);background:#fffdf7;border-bottom:2px solid #222;box-shadow:0 1px 0 #eee;padding:0 4.15vw}
.brand{gap:10px}
.brand-mark{width:49px;height:49px;border:2px solid #111;border-radius:50%;background:#f1c32f;color:#1e2421;font:700 19px "IBM Plex Mono",monospace;letter-spacing:-.12em;transform:rotate(-14deg)}
.brand-name{display:flex;flex-direction:column;gap:3px;font:700 12px "IBM Plex Sans",sans-serif;letter-spacing:-.01em}
.brand-name small{font:9px "IBM Plex Mono",monospace;color:#5d6263;letter-spacing:.06em}
.nav{align-self:stretch;gap:0;margin-left:auto;margin-right:25px;border-right:1px solid #d3d3d0;border-left:1px solid #d3d3d0}
.nav a{display:flex;align-items:center;padding:0 17px;border-right:1px solid #d3d3d0;color:#181c1e;font:600 11px "IBM Plex Mono",monospace;text-transform:uppercase;letter-spacing:-.02em}
.nav a:last-child{border:0}.nav a:hover{background:#f1c32f;color:#151819}
.header-cta{font:700 12px "IBM Plex Sans",sans-serif;text-transform:uppercase;border:0;border-radius:0;background:#b94427;color:#fff;padding:14px 16px;margin:0}
.header-cta:hover{background:#174fca}
.menu-toggle{color:#171a1b}
.btn{border-radius:0;font:700 12px "IBM Plex Mono",monospace;text-transform:uppercase;letter-spacing:.01em;box-shadow:3px 3px 0 #101718}
.btn-accent{background:#b94427;color:white;border-color:#101718}
.btn-accent:hover{background:#174fca;color:#fff}
.btn-ghost{background:#fffdfa;color:#191c1c;border-color:#191c1c}
.btn-ghost:hover{background:#f1c32f}
.btn-dark{background:#174fca;border-color:#16191c}
.btn-outline{box-shadow:3px 3px 0 #12191b}
.hero{background:#fffdfa;color:#14191c;padding-top:82px;min-height:845px}
.hero:before{content:"";position:absolute;top:0;bottom:0;right:0;width:48%;background:#e9effa;clip-path:polygon(22% 0,100% 0,100% 100%,0 100%);z-index:0}
.hero-graph{position:absolute;inset:83px 0 0;z-index:0;pointer-events:none;background:linear-gradient(0deg,transparent 49.95%,#050c1508 50%,transparent 50.05%)}
.hero-graph span{position:absolute;font:30px "IBM Plex Mono",monospace;color:#b94427}
.hero-graph span:nth-child(1){left:51%;top:15%}
.hero-graph span:nth-child(2){right:5%;bottom:23%}
.hero-graph span:nth-child(3){right:35%;bottom:7%;font-size:17px}
.hero-layout{min-height:705px;grid-template-columns:1.06fr .94fr;gap:2vw}
.hero-copy{padding:70px 0 66px}
.hero .eyebrow{color:#bd3e23;font:600 11px "IBM Plex Mono",monospace;margin-bottom:28px}
.short-mark{display:inline-block;width:29px;height:6px;background:#bf4829;border-radius:100%;margin-right:7px;vertical-align:middle}
.hero h1{font-size:clamp(58px,6.2vw,103px);line-height:.98;letter-spacing:-.075em;margin:0 0 33px;max-width:900px}
.hero h1 span{display:block;white-space:nowrap}
.hero h1 .hero-blue{color:#174fca}
.hero h1 .punctuation{display:inline;color:#b94427}
.hero-lead{max-width:580px;color:#272f33;font:400 16px/1.72 "IBM Plex Sans",sans-serif;margin:0 0 30px}
.hero-actions{gap:13px}
.hero-tags{color:#1b242c;font-size:10px;letter-spacing:0;margin-top:35px;max-width:550px}
.hero-tags span+span:before{color:#b94427}
.hero-stage{height:590px;perspective:none;margin-top:35px;isolation:isolate;display:block;align-self:center}
.scene-label{position:absolute;top:2px;left:5%;z-index:7;background:#f1c32f;padding:12px 17px;transform:rotate(-2deg);font:700 11px "IBM Plex Mono",monospace;box-shadow:3px 3px 0 #151819}
.object-plate{position:absolute;top:27px;left:3%;right:3%;height:480px;border:2px solid #10191b;border-radius:9px;box-shadow:14px 15px 0 #174fca;overflow:hidden;background:#ead9c5;margin:0;will-change:transform}
.object-plate .object-art{height:100%;width:100%;object-fit:cover;display:block;transform:scale(1.055)}
.object-plate figcaption{position:absolute;bottom:12px;right:10px;background:#fffaf0;padding:6px 8px;font:600 9px "IBM Plex Mono",monospace;color:#1a1c1c;max-width:240px}
.stage-project-link{position:absolute;z-index:8;bottom:5px;right:-2px;display:grid;grid-template-columns:1fr auto;gap:2px 22px;align-items:center;width:min(370px,77%);padding:20px 23px;background:#b94427;color:#fff;border:2px solid #172125;box-shadow:5px 5px 0 #171c1c;transform:rotate(2deg);transition:transform .25s}
.stage-project-link:hover{transform:rotate(0) translateY(-6px)}
.stage-project-link span:first-child{grid-column:1/-1;font:10px "IBM Plex Mono",monospace}
.stage-project-link strong{font:700 14px "IBM Plex Sans",sans-serif;text-transform:uppercase}
.stage-project-link span:last-child{font-size:22px;justify-self:end;line-height:1}
.stage-stamp{position:absolute;left:0;bottom:12px;display:grid;place-content:center;border:2px dashed #174fca;color:#174fca;width:100px;height:95px;transform:rotate(-10deg);font:700 13px/.95 "Archivo Black",sans-serif;text-align:center;z-index:8;background:#fff9d7b8}
.hero-foot{border-top:2px solid #171b1c;color:#25292c;padding-top:22px;padding-bottom:25px}
.hero-foot .micro-label{color:#b94427}
.hero-foot strong,.scroll-cue{font:500 12px "IBM Plex Mono",monospace}
.hero-number{color:#5e656b}
.statement{background:#f5f2e8;border-top:1px solid #181818;padding:140px 0}
.statement h2{font-size:clamp(36px,4.45vw,70px);text-transform:none;letter-spacing:-.06em}
.statement h2 em{color:#174fca}
.statement-grid p:last-child{color:#454b49}
.experience{background:#e8edf7;border-top:2px solid #1d2426;padding:115px 0 140px}
.experience h2{font-size:clamp(36px,4vw,66px)}
.experience h2 em{color:#174fca}
.experience-story p{color:#293540}
.step-list,.step{border-color:#9fabc0}
.step.is-active{background:#d8e4fb}
.simulation{background:#f7f7f0;box-shadow:13px 13px 0 #174fca;border:2px solid #111a1c}
.simulation-top{background:#171d20;color:#fff;padding:14px 18px}
.simulation-footer{background:#e5eaf1}
.sim-paper{box-shadow:5px 6px 0 #d5d5d5;border:1px solid #282b2b}
.flow-unit.active{background:#174fca;color:#fff}
.flow-link.complete span{background:#b94427}
.work{background:#fffcf6;padding:130px 0}
.work-heading h2,.archive-header h2,.resumes h2,.about h2{font-size:clamp(45px,4.8vw,80px)}
.work-heading h2 em,.archive-header h2 em,.resumes h2 em,.about h2 em{color:#174fca}
.feature{background:#e7e9e9;border:2px solid #111a1b;box-shadow:7px 7px 0 #174fca;margin-bottom:37px}
.feature-image{background:#d7e0e7}
.image-kicker{background:#f1c32f;color:#161b1e;font-weight:600}
.feature-copy{background:#f3f4f3}
.feature-copy h3{font-size:clamp(36px,4.15vw,68px)}
.feature-copy h3 span{color:#b94427}
.feature-copy>p{color:#434b4d}
.project-meta{color:#97442f;font-weight:600}
.feature-card{box-shadow:4px 4px 0 #111a1b}
.feature-card .feature-copy{background:#e7e9e9}
.feature-inverse{box-shadow:7px 7px 0 #b94427}
.feature-inverse .feature-copy{background:#f2e7db}
.text-link{font-family:"IBM Plex Mono",monospace}
.bridge span{color:#b94427}
.bridge strong{font-family:"Archivo Black",sans-serif;font-size:clamp(24px,2.9vw,43px);font-weight:400}
.method{background:#121719;color:#fff;border-top:8px solid #174fca}
.method:before{background:radial-gradient(ellipse,#113c7350,transparent 55%)}
.method-top h2{font-size:clamp(42px,4.2vw,68px)}
.method-top h2 em{color:#f1c32f}
.method-rail{border-color:#697074}
.method-grid{border-color:#697074}
.method-tab{border-color:#485257}
.method-tab.is-active,.method-tab:hover{background:#174fca;color:#fff}
.method-content{background:linear-gradient(140deg,#131e2a 0%,#152330 55%,#102129 100%)}
.method-symbol{color:#f1c32f}
.method-content h3{font-size:clamp(27px,3vw,42px)}
.archive{background:#f6f3ec}
.search-label{border:2px solid #1f2625;border-radius:0;background:#fff}
.filter{border-radius:0;border:1px solid #151819;background:#f9f8f3;font-family:"IBM Plex Mono",monospace}
.filter.is-active,.filter:hover{background:#174fca;color:white}
.catalog-item{border:1px solid #121717;background:#fffefa;box-shadow:3px 3px 0 #b8c6db}
.catalog-item:hover{background:#e8effe;transform:translate(-2px,-2px);box-shadow:5px 5px 0 #174fca}
.catalog-item h3{font-family:"Archivo Black",sans-serif;font-size:20px}
.about{background:#e8edf7;border-top:2px solid #161b1e}
.about-copy>p{color:#283946}
.timeline,.timeline>div{border-color:#a0b3c6}
.resumes{background:#fffaf0}
.cv-card{background:#f4f0e7;border:1px solid #1b252c;box-shadow:3px 3px 0 #174fca}
.cv-card:hover{background:#fff4d8;transform:translate(-2px,-2px)}
.cv-card.featured{background:#f1c32f;box-shadow:7px 7px 0 #151819}
.cv-card.featured:hover{background:#f7d763}
.cv-title{font-family:"Archivo Black",sans-serif;font-weight:400;font-size:24px}
.cv-card.featured .cv-title{font-size:32px}
.footer{background:#174fca;color:#fff}
.footer h2{font-family:"Archivo Black",sans-serif}
.footer h2 em{color:#f1c32f}
.footer-mail{font-family:"Archivo Black",sans-serif}
.footer-mail span{color:#f1c32f}
.footer-bottom{border-color:#8db4e8}
.footer-bottom div span,.footer-bottom small{color:#c6dafa}
.case-page{font-family:"IBM Plex Sans",sans-serif}
.case-page .case-header{background:#fffdf8;color:#141819;border-bottom:2px solid #151819}
.case-page .case-hero{background:#174fca}
.case-page .case-hero:after{background:none}
.case-page .case-hero h1 span{color:#f1c32f}
.case-page .case-hero h1,.case-page .case-header-grid h1{font-family:"Archivo Black",sans-serif}
.case-page .case-decisions{background:#121719}
.case-page .decision{background:#1c2730}
.case-page .case-next{background:#f1c32f}
.case-page .case-footer{background:#121719}
@media(max-width:1100px){
.nav a{padding:0 11px}
.hero h1{font-size:clamp(58px,5.75vw,82px)}
.hero-stage{height:540px}
.object-plate{height:430px}
}
@media(max-width:800px){
.header{height:72px;padding:0 22px}.nav{display:none;position:absolute;top:72px;left:0;right:0;align-self:auto;margin:0;border:0;background:#fffefa;border-bottom:2px solid #111;padding:0 22px;box-shadow:0 15px 20px #0002}.nav.open{display:flex}.nav a{display:block;color:#151819;padding:15px 0;border-bottom:1px solid #ddd}.nav a:last-child{border:0}
.header-cta{margin-left:auto;margin-right:15px}
.hero{padding-top:72px}.hero-layout{grid-template-columns:1fr;gap:10px}.hero-copy{padding:70px 0 12px}
.hero h1{font-size:clamp(55px,8vw,88px)}
.hero:before{width:100%;top:51%;height:49%;clip-path:polygon(0 14%,100% 0,100% 100%,0 100%)}
.hero-stage{height:500px;margin:15px auto 15px;width:min(680px,100%);align-self:auto}
.object-plate{height:390px}
.statement{padding:90px 0}.experience{padding:90px 0}.work{padding:100px 0}
}
@media(max-width:550px){
.header{padding:0 17px}.brand-mark{width:39px;height:39px;font-size:16px}.brand-name{font-size:10px}.brand-name small{font-size:7px}.header-cta{width:36px;height:36px;padding:0;border:1px solid #171b1c;border-radius:50%;font-size:0}.header-cta span{font-size:17px}
.hero-copy{padding:60px 0 5px}
.hero h1{font-size:clamp(43px,10.1vw,59px);letter-spacing:-.066em;margin-bottom:28px}
.hero-lead{font-size:14px;line-height:1.75}
.hero-actions{flex-direction:column}.hero-actions .btn{width:100%}
.hero-tags{margin-top:26px;font-size:9px}
.hero-stage{width:100%;height:365px;margin:35px 0 30px}
.object-plate{height:290px;left:0;right:3%;top:19px;border-width:1px;box-shadow:9px 11px 0 #174fca;border-radius:5px}
.object-plate .object-art{object-position:48% center}
.object-plate figcaption{font-size:7px;max-width:180px}
.scene-label{font-size:8px;top:-1px;left:7%;padding:9px 11px}
.stage-project-link{width:78%;padding:13px 15px;bottom:0;right:0}
.stage-project-link span:first-child{font-size:8px}
.stage-project-link strong{font-size:11px}
.stage-stamp{height:65px;width:65px;font-size:9px;bottom:12px;left:0}
.hero-foot>div{display:none}.hero-foot{border-top:2px solid #101819}
.statement-grid h2,.experience-story h2{font-size:clamp(35px,9vw,48px)}
.feature{box-shadow:4px 4px 0 #174fca}
.feature-image{height:300px}
.method-top h2{font-size:40px}
.cv-card.featured{box-shadow:4px 4px 0 #151819}
.footer h2{font-size:clamp(36px,9vw,50px)}
}
@media(prefers-reduced-motion:reduce){.stage-project-link:hover{transform:none}}

@media(max-width:360px){.footer-mail{font-size:16px;display:flex;flex-wrap:wrap;overflow-wrap:anywhere;word-break:break-word}.hero h1{font-size:39px}.brand-name small{max-width:160px}.header-cta{flex-shrink:0}}

/* Revisão de contraste para textos de interface: fundo / legenda */
.eyebrow{color:#48524b}
.section-heading,.section-heading .eyebrow,.section-heading>p{color:#394b61}
.story-overline{color:#46566a}
.result-count{color:#46554a}
.catalog-item-top{color:#43564d}
.archive-header>p,.work-heading>p,.resumes-head>p{color:#46544a}
.case-page .case-hero .case-breadcrumb,.case-page .case-hero .case-breadcrumb a,.case-page .case-hero .eyebrow.light{color:#fff}
.case-page .case-hero .case-summary p,.case-page .case-hero .case-summary dt,.case-page .case-hero .case-headline{color:#fff}
.case-page .case-hero .case-breadcrumb a:hover{color:#f9da63}

.step{color:#354c42}
.demo-action.primary span:first-child{color:#fff}
.demo-note{color:#344a5e}
.case-page .case-two>p,.case-page .case-two>div>p{color:#364a40}
.case-page .case-caution{color:#35483c}
.case-page .case-proof p{color:#364a40}
.case-page .case-tech{color:#354b3f!important}
.paper-header,.simulation-footer{color:#354940}.simulation-footer span{color:#354940}.paper-header span{color:#354940}
.timeline span,.timeline small{color:#344953}
.cv-card.featured .cv-top,.cv-card.featured .cv-top span{color:#222827}.footer .eyebrow.light{color:#fff}

/* LAB / V3: public project evidence as the visual language, not stock art */
.hero-stage{height:615px;perspective:none;position:relative}
.live-halo{position:absolute;top:2%;right:5%;font:400 155px/.8 "Archivo Black",sans-serif;letter-spacing:-.13em;color:#174fca18;transform:rotate(-12deg);pointer-events:none}
.stage-window{position:absolute;display:flex;flex-direction:column;background:#f7f9fb;border:2px solid #13191b;box-shadow:8px 9px 0 #174fca;overflow:hidden;transition:transform .35s cubic-bezier(.2,.85,.25,1);z-index:2}
.stage-window:hover{transform:translateY(-8px) rotate(0deg)}
.stage-window-top{display:flex;align-items:center;justify-content:space-between;background:#151d21;color:#f4f6f5;font:600 9px "IBM Plex Mono",monospace;padding:11px 13px;letter-spacing:.01em}
.stage-window img{display:block;width:100%;height:calc(100% - 32px);max-width:100%;object-fit:contain;object-position:center;background:#eef2f4;padding:12px}
.stage-main{left:3%;top:9%;width:90%;height:405px;transform:rotate(-3deg);z-index:2}
.stage-field{left:-2%;bottom:9%;width:51%;height:192px;transform:rotate(-8deg);box-shadow:6px 7px 0 #b94427;z-index:3}
.stage-inventory{right:-3%;bottom:0;width:50%;height:191px;transform:rotate(7deg);box-shadow:6px 7px 0 #f1c32f;z-index:4}
.stage-evidence-label{position:absolute;bottom:0;left:1%;font:500 9px "IBM Plex Mono",monospace;background:#f9fbfc;padding:9px;color:#34424d;z-index:1}
.hero .hero-stage:after{content:"+";position:absolute;right:-3%;top:12%;font:70px "IBM Plex Mono",monospace;color:#b94427;pointer-events:none}
.feature-image img{object-fit:contain;object-position:center;background:#e2e9ed;padding:25px;filter:none}
.feature-card .feature-image img{padding:17px}
.feature-image:hover img{transform:scale(1.015)}
.feature-image.zero21-live{background:#080a0c}
.feature-image.zero21-live img{background:#080a0c;padding:0;object-fit:contain}
.feature-hubora{background:#e5e8fb;grid-template-columns:1.1fr .9fr}
.feature-hubora .feature-image{background:#17171d}
.feature-hubora .feature-image img{background:#111115;object-fit:contain}
.feature-hubora .feature-copy{background:#ebecf1}
.feature-hubora .project-meta{color:#473296}
.real-workbench{background:#12191c;color:#f2f5f1;padding:115px 0 145px;overflow:clip;position:relative}
.real-workbench:before{content:"";position:absolute;right:-15%;top:-10%;height:800px;width:900px;background:radial-gradient(ellipse,#3052b344,transparent 70%);pointer-events:none}
.workbench-heading{display:grid;grid-template-columns:1fr 2fr;column-gap:7vw;align-items:start;margin-bottom:70px;border-bottom:1px solid #546269;padding-bottom:65px}
.workbench-heading .eyebrow{color:#f1c32f;margin-top:13px}
.workbench-heading h2{font:400 clamp(43px,5vw,82px)/1.04 "Archivo Black",sans-serif;letter-spacing:-.072em;margin:0 0 24px}
.workbench-heading h2 em{color:#f1c32f}
.workbench-heading>p{grid-column:2;font:14px/1.8 "IBM Plex Sans",sans-serif;color:#c5d2ce;max-width:650px}
.workbench-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:7%;align-items:start}
.workbench-narrative{display:flex;flex-direction:column;gap:10px}
.workbench-chapter{position:relative;display:flex;flex-direction:column;min-height:236px;text-align:left;border:1px solid #4a5a60;background:#172125;padding:33px 29px;gap:16px;color:#d0d6d1;transition:background .3s,border-color .3s}
.workbench-chapter:hover{border-color:#f1c32f;background:#1e2c32}
.workbench-chapter.is-selected{background:#1844a2;border-color:#d5e1f9;box-shadow:6px 6px 0 #f1c32f;color:#fff}
.chapter-n{font:600 10px "IBM Plex Mono",monospace;letter-spacing:.07em;color:#f1c32f}
.workbench-chapter strong{font:400 clamp(20px,2.1vw,32px)/1.2 "Archivo Black",sans-serif;letter-spacing:-.04em;max-width:420px}
.workbench-chapter>span:last-child{font:13px/1.7 "IBM Plex Sans",sans-serif;color:#c6d2d5}
.workbench-sticky{position:sticky;top:90px}
.workbench-visual{min-height:565px;display:flex;flex-direction:column;background:#f4f5f2;color:#192229;box-shadow:9px 10px 0 #f1c32f;border:2px solid #f1c32f}
.workbench-window-top,.workbench-info{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:17px 22px;font:600 10px "IBM Plex Mono",monospace}
.workbench-window-top{color:#fff;background:#263039}
.workbench-window-top span:last-child{color:#cad6d2}
.workbench-screen{height:480px;background:linear-gradient(135deg,#c8d3e0,#f6f9fa);display:flex;align-items:center;justify-content:center;padding:18px;overflow:hidden}
.workbench-screen img{display:block;width:auto;height:auto;max-width:100%;max-height:100%;object-fit:contain;box-shadow:0 12px 30px #19212b2b}
.workbench-info{background:#fffefa;min-height:68px}
.workbench-info>span{font-size:9px;color:#58655c}
.workbench-info a{border-bottom:2px solid #174fca;padding-bottom:6px;font-size:11px;white-space:nowrap}
.workbench-info a span{font-size:17px}
@media(max-width:1140px){
 .hero-stage{height:550px}.stage-main{height:365px}.stage-field,.stage-inventory{height:155px}
 .workbench-heading{grid-template-columns:1fr 1.9fr}
 .workbench-visual{min-height:470px}.workbench-screen{height:370px}
 .workbench-chapter{min-height:202px;padding:25px}
}
@media(max-width:800px){
 .hero-stage{width:min(670px,100%);height:510px}
 .stage-main{height:365px}.stage-field,.stage-inventory{height:175px}
 .workbench-heading{display:block}.workbench-heading>p{margin-top:25px}
 .workbench-layout{grid-template-columns:1fr;gap:30px}
 .workbench-narrative{display:flex;flex-direction:row;gap:10px;overflow-x:auto;scroll-snap-type:x mandatory;padding:6px 3px 14px}
 .workbench-chapter{flex:0 0 230px;min-height:170px;scroll-snap-align:start;padding:20px;gap:12px}
 .workbench-chapter strong{font-size:20px}
 .workbench-chapter>span:last-child{font-size:11px}
 .workbench-sticky{position:static}
 .workbench-visual{min-height:0}.workbench-screen{height:440px}
 .real-workbench{padding:90px 0}
}
@media(max-width:550px){
 .hero-stage{height:385px;width:100%;margin:30px 0 36px}
 .stage-main{top:6%;left:3%;height:253px;width:94%;transform:rotate(-2deg)}
 .stage-field{left:0;bottom:10%;width:52%;height:140px;transform:rotate(-6deg)}
 .stage-inventory{right:-3%;bottom:1%;width:52%;height:138px;transform:rotate(6deg)}
 .stage-window-top{padding:7px;font-size:7px}.stage-window img{padding:4px}
 .stage-evidence-label{font-size:7px;bottom:0}
 .live-halo{font-size:90px}
 .workbench-heading{margin-bottom:25px;padding-bottom:30px}
 .workbench-heading h2{font-size:39px}
 .workbench-screen{height:245px;padding:10px}
 .workbench-window-top{padding:10px;font-size:7px}
 .workbench-info{padding:12px;font-size:8px}.workbench-info a{font-size:9px}
 .workbench-chapter{flex-basis:200px}
 .feature-image img{padding:12px}
}
@media(prefers-reduced-motion:reduce){.stage-window,.workbench-chapter,.feature-image img{transition:none}}
