@font-face{font-family:Rajdhani;src:url('fonts/Rajdhani-Medium.woff2') format('woff2');font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:Rajdhani;src:url('fonts/Rajdhani-Bold.woff2') format('woff2');font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:'IBM Plex Mono';src:url('fonts/IBMPlexMono-Regular.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}
:root{--brand:#c00;--ink:#202020;--muted:#575753;--paper:#f4f3ef;--line:#d7d6d0;--ease:cubic-bezier(.2,.7,.2,1);--technical:Rajdhani,'Bahnschrift',Arial,sans-serif;--mono:'IBM Plex Mono',Consolas,monospace}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased;min-height:100svh;display:flex;flex-direction:column}
a{color:inherit}img{display:block;max-width:100%}button{font:inherit}
a:focus-visible,button:focus-visible{outline:2px solid var(--brand);outline-offset:6px}::selection{background:var(--brand);color:white}
.topbar,main,footer{width:min(1440px,100%);margin-inline:auto;padding-inline:clamp(22px,5vw,80px)}
.topbar{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-block:30px;border-bottom:3px solid var(--brand)}
.brand{display:block;flex-shrink:0}.brand img{width:clamp(150px,16vw,218px);height:auto}
.discipline{font-family:var(--technical);font-weight:700;text-transform:uppercase;font-size:17px;line-height:1.3;margin:0;text-align:right;letter-spacing:.02em}.discipline span{display:block;color:var(--brand);font-family:var(--mono);font-size:10px;font-weight:400;letter-spacing:.025em;margin-top:7px}
main{flex:1}
.hero{display:grid;gap:30px;padding-block:45px 35px;align-items:center}.message{min-width:0}
.status{display:block;width:fit-content;background:var(--brand);color:#fff;font-family:var(--mono);font-size:11px;font-weight:400;text-transform:uppercase;letter-spacing:.07em;padding:10px 14px;margin:0 0 27px}
h1{font-family:var(--technical);font-size:clamp(43px,5.2vw,75px);line-height:1;font-weight:700;text-transform:uppercase;letter-spacing:-.025em;margin:0;text-wrap:balance}
h1>span,h1>em{display:block}h1 em{font-style:normal;color:var(--brand)}
.intro{font-size:16px;line-height:1.65;max-width:34ch;margin:26px 0;color:var(--muted)}.intro strong{font-weight:700;color:var(--ink)}
.cta{display:inline-flex;align-items:center;justify-content:space-between;gap:25px;min-height:52px;padding:13px 18px;background:var(--brand);color:white;text-decoration:none;font-family:var(--technical);font-weight:700;text-transform:uppercase;letter-spacing:.025em;font-size:18px;transition:background-color .2s var(--ease)}.cta span{font-size:25px;transition:transform .2s var(--ease)}.cta:hover{background:#a40000}.cta:hover span,.cta:focus-visible span{transform:translate(3px,-3px)}
.scene{margin:0;min-width:0;border-top:3px solid var(--brand)}.scene__frame{position:relative;overflow:hidden;aspect-ratio:3/2;background:#eae7e1}.plant{width:100%;height:100%;object-fit:contain;mix-blend-mode:normal;transform:none}.plant-canvas{position:absolute;inset:0;width:100%;height:100%;display:block}.has-3d .plant{visibility:hidden}.scene__corner{display:none}
figcaption{display:flex;align-items:center;flex-wrap:wrap;justify-content:space-between;gap:10px 16px;padding:10px 14px;background:var(--ink);color:#fff;font-family:var(--mono);font-size:10px;line-height:1.5}.scene__controls{display:flex;gap:16px;margin-left:auto}.motion-toggle,.motion-replay{border:0;background:none;color:#fff;font:inherit;min-height:32px;padding:0;cursor:pointer;text-decoration:underline;text-underline-offset:4px}figcaption button:focus-visible{outline-color:white}[hidden]{display:none!important}
.contact-strip{background:var(--brand);color:white;padding:26px 22px;display:grid;gap:24px;margin-bottom:35px}.contact-strip p{font-family:var(--technical);font-size:21px;font-weight:700;line-height:1.2;margin:0}.contact-strip p span{display:block;font-family:Arial,Helvetica,sans-serif;font-size:13px;line-height:1.6;font-weight:400;margin-top:8px}
address{display:grid;gap:18px;font-style:normal;min-width:0}address a{display:block;text-decoration:none;font-family:var(--technical);font-weight:700;font-size:20px;line-height:1.15;overflow-wrap:anywhere;min-height:48px}address a>span{display:block;font-family:var(--mono);font-weight:400;font-size:10px;margin-bottom:8px;text-transform:uppercase;letter-spacing:.1em}address b{font-weight:700;padding-left:8px}address a:hover{text-decoration:underline;text-underline-offset:4px}.contact-strip a:focus-visible{outline-color:white}
footer{padding-block:22px;border-top:1px solid var(--line);display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;font-family:var(--mono);font-size:10px;color:var(--muted)}
@media(min-width:700px){address{grid-template-columns:1fr 1fr;gap:25px}.hero{padding-block:60px 48px}.contact-strip{grid-template-columns:.85fr 1.3fr;gap:30px;padding:30px}address a{font-size:22px}}
@media(min-width:1000px){.hero{grid-template-columns:.9fr 1.15fr;gap:28px;min-height:560px;padding-block:55px}.scene{align-self:center}.contact-strip{grid-template-columns:.9fr 1.15fr;gap:28px}address a{font-size:24px}}
@media(max-width:600px){.scene__frame{aspect-ratio:1.25}.scene__controls{gap:14px}}
@media(max-width:399px){.discipline{font-size:13px}.discipline span{font-size:8px}.topbar{gap:15px}h1{font-size:43px}}
@media(prefers-reduced-motion:reduce){.cta,.cta span{transition:none}.cta:hover span,.cta:focus-visible span{transform:none}.motion-toggle,.motion-replay{display:none}}
/* Construction cues: hazard yellow and black, orange high-visibility workwear. */
:root{--caution:#ffd02a;--caution-ink:#202020}
.status{position:relative;background:var(--caution);color:var(--caution-ink);padding-left:26px;font-weight:400}
.status::before{content:'';position:absolute;inset:0 auto 0 0;width:10px;background:repeating-linear-gradient(-45deg,var(--caution-ink) 0 5px,var(--caution) 5px 10px)}
.scene{border-top:0}.scene::before{content:'';display:block;height:8px;background:repeating-linear-gradient(-45deg,var(--caution-ink) 0 12px,var(--caution) 12px 24px)}
figcaption>span:first-child{color:var(--caution)}
.cta span{color:var(--caution)}
.component-tags{position:absolute;inset:0;pointer-events:none;display:none}.has-3d .component-tags{display:block}.component-tag{position:absolute;transform:translate(-50%,-50%);padding:3px 6px;background:#fffffff2;border:1px solid #777e84;border-radius:2px;color:#202830;white-space:nowrap;font-family:var(--mono);font-size:11px;line-height:1.2;font-weight:400;box-shadow:0 1px 3px #20202012}
@media(max-width:600px){.component-tag{font-size:10px;padding:3px 4px}}

