@import url('https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Manrope:wght@400;500;600;700;800&display=swap');

:root { --bg:#101a19; --panel:#172522; --panel2:#1b2c29; --ink:#eef5e9; --muted:#99aaa1; --line:rgba(221,244,219,.14); --mint:#b4efbd; --lime:#d5f77a; --sand:#f4cf9e; --max:1180px; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:var(--bg); color:var(--ink); font-family:Manrope,Arial,sans-serif; }
a { color:inherit; text-decoration:none; }
.page-shell { width:min(var(--max),calc(100% - 72px)); margin:0 auto; }
.site-header { display:flex; align-items:center; justify-content:space-between; gap:24px; padding:28px 0; border-bottom:1px solid var(--line); }
.brand { display:flex; align-items:center; gap:12px; font-size:13px; font-weight:700; letter-spacing:-.02em; }
.brand-mark { display:grid; place-items:center; width:35px; height:35px; border:1px solid rgba(180,239,189,.5); color:var(--mint); font:11px 'DM Mono',monospace; }
.nav-links { display:flex; align-items:center; gap:27px; color:var(--muted); font-size:12px; }
.nav-links a:hover,.site-footer a:hover { color:var(--mint); }
.nav-cta { padding:10px 14px; border:1px solid rgba(180,239,189,.45); color:var(--ink); }
.menu-button { display:none; background:transparent; border:1px solid var(--line); color:var(--ink); padding:9px 12px; font:11px 'DM Mono',monospace; text-transform:uppercase; }
.mobile-nav { display:none; flex-direction:column; gap:16px; padding:19px 0; border-bottom:1px solid var(--line); color:var(--muted); font-size:13px; }
.mobile-nav.open { display:flex; }
.section-grid { display:grid; grid-template-columns:1fr 1fr; gap:70px; align-items:center; }
.hero { min-height:650px; padding:80px 0 82px; }
.eyebrow { margin:0 0 19px; color:var(--mint); font:10px 'DM Mono',monospace; letter-spacing:.12em; text-transform:uppercase; }
h1,h2,h3,p { margin-top:0; }
h1 { max-width:700px; margin-bottom:25px; font-size:clamp(45px,6.2vw,78px); line-height:1.02; letter-spacing:-.075em; }
.hero-text { max-width:590px; color:var(--muted); font-size:16px; line-height:1.8; }
.hero-actions { display:flex; gap:12px; align-items:center; margin:32px 0 25px; }
.button { display:inline-flex; gap:12px; align-items:center; padding:13px 16px; border:1px solid var(--line); font-size:12px; font-weight:700; transition:transform .2s ease,border-color .2s ease,background .2s ease; }
.button:hover { transform:translateY(-3px); border-color:rgba(180,239,189,.6); }
.button-primary { background:var(--mint); color:#10201a; border-color:var(--mint); }.button-secondary { color:var(--ink); }
.availability { display:flex; align-items:center; gap:9px; color:var(--muted); font:11px 'DM Mono',monospace; }
.status-dot { width:7px; height:7px; border-radius:50%; background:var(--lime); box-shadow:0 0 0 5px rgba(213,247,122,.1); }
.hero-art { position:relative; min-height:440px; overflow:hidden; }
.hero-art:after { content:''; position:absolute; inset:14% 10% 9%; border:1px solid rgba(180,239,189,.13); border-radius:50%; transform:rotate(-17deg); }
.orb { position:absolute; border-radius:50%; filter:blur(1px); }.orb-one { width:270px; height:270px; top:14%; right:11%; background:radial-gradient(circle at 40% 30%,rgba(180,239,189,.65),rgba(59,113,83,.24) 45%,transparent 70%); }.orb-two { width:350px; height:350px; bottom:-16%; left:2%; background:radial-gradient(circle at 50% 40%,rgba(244,207,158,.2),transparent 65%); }
.lab-card { position:absolute; z-index:2; top:19%; left:10%; right:8%; min-height:265px; padding:24px; background:rgba(27,44,41,.87); border:1px solid rgba(180,239,189,.33); box-shadow:0 28px 80px rgba(0,0,0,.24); transform:rotate(-4deg); }
.lab-top,.lab-footer { display:flex; justify-content:space-between; color:var(--muted); font:10px 'DM Mono',monospace; letter-spacing:.09em; text-transform:uppercase; }.lab-live { color:var(--lime); }.lab-value { margin:56px 0 24px; color:var(--ink); font-size:34px; font-weight:800; letter-spacing:-.07em; }.lab-lines { display:flex; flex-direction:column; gap:6px; height:40px; justify-content:flex-end; border-bottom:1px solid var(--line); }.lab-lines span { display:block; height:3px; background:linear-gradient(90deg,var(--mint),rgba(180,239,189,.05)); }.lab-lines span:nth-child(1){width:72%}.lab-lines span:nth-child(2){width:94%}.lab-lines span:nth-child(3){width:56%}.lab-lines span:nth-child(4){width:83%}.lab-lines span:nth-child(5){width:97%}.lab-footer { margin-top:13px; font-size:9px; }
.floating-chip { position:absolute; z-index:3; display:flex; align-items:center; gap:8px; padding:10px 12px; background:#21342f; border:1px solid var(--line); color:#d9ebdc; font:11px 'DM Mono',monospace; box-shadow:0 12px 35px rgba(0,0,0,.25); }.chip-icon { color:var(--mint); }.chip-pcr { top:12%; left:0; transform:rotate(3deg); }.chip-quality { right:0; top:28%; transform:rotate(4deg); }.chip-soil { left:10%; bottom:10%; transform:rotate(-5deg); }
.proof-strip { display:flex; justify-content:space-between; gap:20px; flex-wrap:wrap; padding:20px 0 21px; border-top:1px solid var(--line); border-bottom:1px solid var(--line); color:var(--muted); font:10px 'DM Mono',monospace; text-transform:uppercase; letter-spacing:.08em; }
.intro-section { padding:135px 0 40px; align-items:start; }.intro-section h2,.section-heading h2,.education-section h2 { max-width:540px; margin-bottom:0; font-size:clamp(35px,4.5vw,58px); line-height:1.06; letter-spacing:-.07em; }.intro-copy { max-width:570px; color:var(--muted); font-size:15px; line-height:1.85; }.intro-copy .lead { color:var(--ink); font-size:21px; line-height:1.52; letter-spacing:-.04em; }
.work-section,.projects-section,.capabilities-section { padding:110px 0 0; }.section-heading { max-width:720px; margin-bottom:52px; }.section-heading h2 { margin-bottom:18px; }.section-heading > p:last-child { max-width:620px; color:var(--muted); font-size:15px; line-height:1.7; }
.timeline { border-top:1px solid var(--line); }.timeline-item { display:grid; grid-template-columns:130px 25px 1fr; gap:20px; padding:31px 0; border-bottom:1px solid var(--line); }.timeline-date { color:var(--muted); font:11px 'DM Mono',monospace; }.timeline-marker { width:9px; height:9px; margin-top:4px; border:1px solid var(--mint); border-radius:50%; box-shadow:0 0 0 6px rgba(180,239,189,.06); }.timeline-body { max-width:760px; }.timeline-body .eyebrow { margin-bottom:10px; }.timeline-body h3 { margin-bottom:10px; font-size:25px; letter-spacing:-.05em; }.timeline-body p:not(.eyebrow) { color:var(--muted); font-size:14px; line-height:1.75; }.tag-row { display:flex; flex-wrap:wrap; gap:7px; margin-top:19px; }.tag-row span { padding:5px 8px; border:1px solid var(--line); color:#cde1d1; font:10px 'DM Mono',monospace; }
.project-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:22px; }.project-card { background:var(--panel); border:1px solid var(--line); transition:transform .24s ease,border-color .24s ease; }.project-card:hover { transform:translateY(-5px); border-color:rgba(180,239,189,.48); }.project-featured { grid-column:span 2; display:grid; grid-template-columns:1.04fr .96fr; }.project-visual { position:relative; min-height:238px; overflow:hidden; padding:20px; }.visual-label { color:var(--muted); font:10px 'DM Mono',monospace; letter-spacing:.1em; }.visual-microbiology { display:flex; flex-direction:column; justify-content:center; gap:13px; background:linear-gradient(145deg,#1c3a32,#172622); }.visual-microbiology:after { content:''; position:absolute; right:-70px; bottom:-150px; width:300px; height:300px; border:1px solid rgba(180,239,189,.27); border-radius:50%; box-shadow:0 0 0 24px rgba(180,239,189,.04),0 0 0 48px rgba(180,239,189,.025); }.micro-flow { position:relative; z-index:1; display:flex; align-items:center; gap:10px; font:12px 'DM Mono',monospace; }.micro-flow i { padding:9px 10px; color:#e8f7e9; border:1px solid rgba(180,239,189,.4); background:rgba(10,26,22,.42); font-style:normal; }.micro-flow b { color:var(--mint); font-weight:400; }.micro-flow.second { margin-left:34px; opacity:.72; }.visual-quality { background:linear-gradient(145deg,#3a2e25,#252322); }.quality-grid { position:absolute; inset:77px 27px 28px; display:grid; grid-template-columns:1fr auto; border:1px solid rgba(244,207,158,.3); font:10px 'DM Mono',monospace; }.quality-grid span,.quality-grid b { display:flex; align-items:center; padding:0 11px; border-bottom:1px solid rgba(244,207,158,.12); }.quality-grid b { color:var(--sand); font-weight:400; }.quality-grid span:nth-last-child(2),.quality-grid b:last-child { border-bottom:0; }.visual-plant { background:linear-gradient(145deg,#293b31,#172421); }.plant-stem { position:absolute; bottom:45px; left:50%; width:2px; height:130px; background:linear-gradient(var(--mint),rgba(180,239,189,.05)); transform:rotate(8deg); }.plant-stem span { position:absolute; width:54px; height:25px; border:1px solid rgba(180,239,189,.55); border-radius:100% 0 100% 0; }.plant-stem span:nth-child(1){top:10px;left:-45px;transform:rotate(-25deg)}.plant-stem span:nth-child(2){top:40px;left:4px;transform:rotate(35deg)}.plant-stem span:nth-child(3){top:76px;left:-47px;transform:rotate(-25deg)}.plant-stem span:nth-child(4){top:103px;left:6px;transform:rotate(32deg)}.plant-axis { position:absolute; left:24px; bottom:22px; color:var(--muted); font:9px 'DM Mono',monospace; }
.project-body { padding:25px 26px 28px; }.project-meta { display:flex; justify-content:space-between; gap:20px; color:var(--muted); font:10px 'DM Mono',monospace; text-transform:uppercase; letter-spacing:.07em; margin-bottom:21px; }.project-body h3 { margin-bottom:12px; font-size:25px; line-height:1.1; letter-spacing:-.05em; }.project-body p { max-width:620px; color:var(--muted); font-size:13px; line-height:1.7; }
.capability-grid { display:grid; grid-template-columns:repeat(4,1fr); border-top:1px solid var(--line); }.capability { min-height:255px; padding:27px 24px 24px 0; margin-right:24px; border-bottom:1px solid var(--line); border-right:1px solid var(--line); }.capability + .capability { padding-left:24px; }.capability:last-child { margin-right:0; border-right:0; }.cap-number { color:var(--mint); font:11px 'DM Mono',monospace; }.capability h3 { margin:34px 0 12px; font-size:21px; line-height:1.15; letter-spacing:-.05em; }.capability p { color:var(--muted); font-size:13px; line-height:1.7; }
.education-section { padding:135px 0; align-items:start; border-bottom:1px solid var(--line); }.education-copy { max-width:580px; }.education-entry { padding:0 0 26px; margin-bottom:25px; border-bottom:1px solid var(--line); }.education-entry:last-child { margin-bottom:0; border-bottom:0; }.education-entry span { display:block; margin-bottom:9px; color:var(--mint); font:10px 'DM Mono',monospace; }.education-entry strong { display:block; margin-bottom:8px; font-size:20px; letter-spacing:-.04em; }.education-entry p { margin-bottom:0; color:var(--muted); font-size:13px; line-height:1.7; }
.contact-section { padding:140px 0 120px; text-align:center; }.contact-section h2 { max-width:830px; margin:0 auto 29px; font-size:clamp(40px,6vw,74px); line-height:1.02; letter-spacing:-.08em; }.contact-email { display:inline-block; padding-bottom:9px; border-bottom:1px solid rgba(180,239,189,.45); color:var(--mint); font:14px 'DM Mono',monospace; }.contact-email span { margin-left:8px; }.contact-details { display:flex; justify-content:center; flex-wrap:wrap; gap:20px; margin:25px 0 5px; color:var(--muted); font:11px 'DM Mono',monospace; }.centered-actions { justify-content:center; margin-top:30px; }.site-footer { display:flex; justify-content:space-between; flex-wrap:wrap; gap:20px; padding:20px 0 29px; border-top:1px solid var(--line); color:var(--muted); font:10px 'DM Mono',monospace; }.site-footer a:hover { color:var(--mint); }
.reveal { opacity:1; transform:none; }.js-ready .reveal { opacity:0; transform:translateY(16px); transition:opacity .65s ease,transform .65s ease; }.js-ready .reveal.visible { opacity:1; transform:none; }
@media (max-width:850px) { .page-shell{width:min(var(--max),calc(100% - 36px));}.nav-links{display:none;}.menu-button{display:block;}.hero{min-height:0;padding:67px 0 60px;}.section-grid{grid-template-columns:1fr;gap:45px;}.hero-art{min-height:355px;}.intro-section{padding-top:100px;}.work-section,.projects-section,.capabilities-section{padding-top:90px;}.project-featured{grid-column:span 2;grid-template-columns:1fr;}.capability-grid{grid-template-columns:repeat(2,1fr);}.capability{margin-right:0;padding:25px 20px 25px 0;}.capability:nth-child(2n){padding-left:20px;border-right:0;}.education-section{padding:105px 0;}.site-footer span:nth-child(2){order:3;width:100%;} }
@media (max-width:540px) { h1{font-size:46px;}.hero-text{font-size:15px;}.hero-actions{flex-direction:column;align-items:stretch;}.button{justify-content:center;}.hero-art{min-height:320px;}.lab-card{min-height:220px;left:7%;right:3%;}.lab-value{margin:43px 0 19px;font-size:27px;}.floating-chip{font-size:9px;padding:7px 9px;}.chip-pcr{left:0;top:9%;}.chip-quality{right:-4px;top:21%;}.chip-soil{left:3%;bottom:7%;}.timeline-item{grid-template-columns:1fr 17px;gap:16px;}.timeline-date{grid-column:1 / -1;}.timeline-marker{grid-column:2;grid-row:2;}.timeline-body{grid-column:1;grid-row:2;}.project-grid{grid-template-columns:1fr;}.project-featured{grid-column:span 1;}.project-visual{min-height:210px;}.micro-flow{gap:5px;font-size:9px;}.micro-flow i{padding:7px 5px;}.micro-flow.second{margin-left:13px;}.capability-grid{grid-template-columns:1fr;}.capability,.capability:nth-child(2n){padding:25px 0;border-right:0;}.capability h3{margin-top:25px;}.contact-section{padding:105px 0 85px;}.contact-email{font-size:11px;}.site-footer{font-size:9px;} }
@media (prefers-reduced-motion: reduce) { html{scroll-behavior:auto;} .js-ready .reveal{transition:none;transform:none;opacity:1;} .button,.project-card{transition:none;} }

