@font-face{font-family:Barlow;src:url('assets/fonts/BarlowCondensed-Medium.ttf') format('truetype');font-weight:400 600;font-display:swap}
@font-face{font-family:Barlow;src:url('assets/fonts/BarlowCondensed-Bold.ttf') format('truetype');font-weight:700 900;font-display:swap}
:root{color-scheme:light;--paper:#e7e5dc;--ink:#202722;--sage:#a9b1a2;--rule:#6d776a;--orange:#ed6a32}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:Barlow,'Arial Narrow',sans-serif;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
a:focus-visible{outline:3px solid #a83b14;outline-offset:5px}
.masthead{height:92px;padding:0 48px;display:flex;align-items:center;justify-content:space-between}
.brand{font-size:28px;letter-spacing:.055em;font-weight:700;display:flex;align-items:center;gap:12px}
.category,.nav-link{font-size:14px;letter-spacing:.12em;font-weight:600}
.nav-link{font-size:13px;color:#45513e;border-bottom:1px solid #929b8b;padding:5px 0}
main{padding:32px 32px 0}
.hero{max-width:1600px;margin:auto;background:var(--sage) linear-gradient(180deg,#9ba79f,#d4dbd0);border:1px solid transparent;background-origin:border-box;overflow:hidden;padding-top:32px}
h1{font-size:clamp(100px,19.7vw,315px);font-weight:700;line-height:.84;letter-spacing:-.038em;text-align:center;margin:19px 24px 0;padding-right:.035em}
.hero-grid{position:relative;display:grid;grid-template-columns:37% 63%;min-height:550px;margin-top:18px}
.intro{position:relative;z-index:3;display:flex;align-items:flex-start;flex-direction:column;padding:42px 0 35px 44px}
.eyebrow{font-size:13px;font-weight:600;letter-spacing:.18em;margin:0 0 24px;display:flex;align-items:center;gap:9px}
.status-dot{width:6px;height:6px;background:var(--ink);display:inline-block}
.pitch{padding-left:16px;margin:4px 25px 33px 0}
.pitch-text{max-width:360px;font-size:46px;line-height:1.04;letter-spacing:-.015em;font-weight:700;margin:0;text-wrap:pretty}
.pitch-text>span{display:block;white-space:nowrap}
.quest-cta{font-family:inherit;border:0;text-align:left;display:flex;align-items:center;justify-content:space-between;gap:30px;min-height:60px;padding:16px 21px;background:var(--ink);color:#f2f0e7;font-size:21px;font-weight:600;width:290px;max-width:100%;transition:background .15s ease}
.quest-cta:disabled{opacity:1;cursor:default}
/* One group render (robots + technician). It sizes to the artwork box (container
   units), never past the r2 robot slot: its width fits the lineup and its top stays
   24px inside the box. Frame numbers come from robots.json on .lineup-frame. */
.artwork{--robot-max:440px;--lineup-bottom:80px;--lineup-inset:32px;container-type:size;position:relative;margin:0;isolation:isolate;min-width:0;overflow:hidden}
.robot-lineup{position:absolute;left:0;right:32px;bottom:var(--lineup-bottom);display:flex;align-items:flex-end;justify-content:center;z-index:2}
.lineup-frame{--h:min(var(--robot-max),calc((100cqw - var(--lineup-inset)) * var(--body-pixels) / var(--width-pixels)),calc((100cqh - var(--lineup-bottom) - 24px) * var(--body-pixels) / (var(--frame-pixels) - var(--below-pixels))));position:relative;flex:0 0 auto}
.lineup-art{display:block;width:auto;height:calc(var(--h) * var(--frame-pixels) / var(--body-pixels));margin-bottom:calc(var(--h) * var(--below-pixels) / var(--body-pixels) * -1)}


footer{padding:29px 48px 31px;display:flex;align-items:center;justify-content:space-between;gap:18px;max-width:1700px;margin:auto;font-size:13px}
.footer-brand{font-size:20px;letter-spacing:.08em;font-weight:700}footer a{border-bottom:1px solid #929b8b;padding:6px 0}footer a span{margin-left:18px}
@media(min-width:1700px){h1{font-size:315px}.hero-grid{min-height:630px}.intro{padding-top:65px}}
@media(max-width:1000px){.hero{padding-top:30px}.masthead{padding:0 28px;height:76px}.category{display:none}main{padding:22px 20px 0}h1{font-size:19.5vw;margin-left:12px;margin-right:12px}.hero-grid{grid-template-columns:41% 59%;min-height:480px}.intro{padding:35px 10px 30px 24px}.pitch-text{font-size:38px}.quest-cta{font-size:18px;padding:15px;gap:12px;width:255px}.artwork{--robot-max:300px;--lineup-bottom:64px;--lineup-inset:15px}.robot-lineup{right:15px}footer{padding:23px 28px}}
@media(max-width:620px){.hero{padding-top:25px}.masthead{height:68px;padding:0 20px}.brand{font-size:23px;gap:8px}.nav-link{font-size:12px}main{padding:14px 12px 0}h1{font-size:19.4vw;margin:17px 5px 0}.hero-grid{display:flex;flex-direction:column;margin-top:17px;min-height:0}.artwork{--robot-max:230px;--lineup-bottom:50px;--lineup-inset:0px;order:0;height:auto;aspect-ratio:1.35;margin:0 13px}.intro{order:1;padding:24px 22px 28px;align-items:stretch}.robot-lineup{left:0;right:0}.eyebrow{font-size:11px;margin-bottom:19px}.pitch{margin:0 0 24px;padding-left:13px}.pitch-text{font-size:35px;line-height:1.05;max-width:310px}.quest-cta{width:100%;font-size:21px;min-height:58px;padding:15px 18px}footer{display:flex;gap:8px;padding:23px 21px}.footer-brand{font-size:18px}footer a{font-size:12px}footer a span{margin-left:9px}}
@media(max-width:370px){.artwork{--robot-max:205px}.pitch-text{font-size:32px}.quest-cta{font-size:19px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.quest-cta{transition:none}}
