:root{--ink:#18392f;--paper:#f7f7f0;--green:#516d50;--line:#d7ddcf;--muted:#617267;--accent:#c7db97;--white:#fff;--body:Arial,"Malgun Gothic","Apple SD Gothic Neo",sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--body);font-size:16px;line-height:1.75;word-break:keep-all}a{color:inherit;text-decoration:none}button{font:inherit}img{display:block;max-width:100%}h1,h2,h3,p,figure{margin:0}h1,h2,h3{line-height:1.3;letter-spacing:-.055em}a:focus-visible,button:focus-visible{outline:3px solid #748c38;outline-offset:5px}.skip-link{position:fixed;top:-80px;left:20px;background:var(--white);padding:12px 20px;z-index:100}.skip-link:focus{top:8px}.site-header{height:88px;padding:0 5.2%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:32px;background:var(--paper)}.wordmark{font-family:Arial,sans-serif;font-size:28px;font-weight:800;letter-spacing:-1.5px;display:flex;align-items:center;gap:9px;line-height:1}.brand-dot{color:#719446;margin-left:-8px}.site-header nav{display:flex;align-items:center;gap:32px;font-size:14px;font-weight:600}.site-header nav a:hover{color:#668044}.site-header .nav-contact{border:1px solid #9dad99;padding:10px 19px;border-radius:3px;margin-left:12px;display:flex;gap:30px}.menu-toggle{display:none}.hero{display:grid;grid-template-columns:1fr 1fr;min-height:650px}.hero-copy{padding:68px 7% 36px 10.4%;align-self:center}.eyebrow{font-family:var(--body);font-size:14px;line-height:1.6;font-weight:700;letter-spacing:.11em;display:flex;align-items:center;gap:9px}.status-dot{width:7px;height:7px;flex:none;background:#678947;border-radius:50%}h1{font-size:clamp(40px,4.25vw,69px);line-height:1.22;font-weight:600;margin-top:35px}h1 em{font-style:normal;color:var(--green)}.hero-description{margin-top:30px;font-size:16px;line-height:1.9;color:var(--muted)}.hero-actions{display:flex;gap:26px;align-items:center;flex-wrap:wrap;margin-top:34px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:34px;border-radius:3px;padding:16px 23px;font-size:14px;font-weight:600;line-height:1.5;transition:background .15s,transform .15s}.button:hover{transform:translateY(-2px)}.button-dark{background:var(--ink);color:var(--white)}.button-dark:hover{background:#31533e}.text-link{font-size:14px;font-weight:600;border-bottom:1px solid #a7b4a3;padding:8px 0;display:inline-flex;gap:20px}.hero-footnote{font-size:14px;color:var(--muted);margin-top:52px}.hero-image{position:relative;overflow:hidden;min-height:650px}.hero-image>img{width:100%;height:100%;position:absolute;object-fit:cover;object-position:50% 53%}.hero-image:after{content:"";position:absolute;inset:65% 0 0;background:linear-gradient(transparent,rgba(8,22,15,.63));pointer-events:none}.hero-image figcaption{position:absolute;z-index:1;bottom:27px;left:32px;right:20px;color:var(--white);font-size:14px;line-height:1.8}.hero-image figcaption span{display:block;font-size:14px;font-weight:700;letter-spacing:.14em}.section{padding:100px 7.5%;scroll-margin-top:20px}h2{font-size:clamp(30px,3vw,45px);font-weight:600;line-height:1.38}.section-heading>.eyebrow,.field-copy>.eyebrow{margin-bottom:24px}.section-lead{margin-top:25px;color:var(--muted);font-size:16px;line-height:1.9}.intro{display:grid;grid-template-columns:1.1fr 1fr;column-gap:8%;row-gap:42px;border-top:1px solid var(--line)}.intro-description{padding-top:34px;font-size:16px}.intro-description .muted{margin-top:20px}.muted{color:var(--muted)}.growing-loop{grid-column:1/-1;display:grid;grid-template-columns:repeat(4,1fr);list-style:none;padding:0;margin:0;border-top:1px solid #aebaab;border-bottom:1px solid var(--line)}.growing-loop li{padding:27px 26px 31px;border-right:1px solid var(--line)}.growing-loop li:first-child{padding-left:0}.growing-loop li:last-child{border:0}.step-number{font-size:14px;display:flex;justify-content:space-between;color:var(--green);margin-bottom:26px}.step-number span{font-size:21px;font-weight:400}.growing-loop h3{font-size:24px;font-weight:600}.growing-loop p{font-size:14px;color:var(--muted);margin-top:14px}.diagram-note{grid-column:1/-1;font-size:14px;color:var(--muted);margin-top:-21px}.platform{background:var(--ink);color:var(--paper);display:grid;grid-template-columns:1.1fr 1fr;gap:8%}.platform .eyebrow{color:var(--accent)}.platform .section-lead,.platform-details p{color:#bdcdbf}.platform-details article{padding:0 0 29px;margin-bottom:29px;border-bottom:1px solid #416051}.pill{display:inline-block;border:1px solid #789077;padding:3px 10px;font-size:14px;letter-spacing:.08em;color:var(--accent);border-radius:2px;margin-bottom:16px}.platform-details h3{font-size:24px;font-weight:500;margin-bottom:17px}.platform-details p{font-size:16px;line-height:1.85}.platform-details .platform-note{font-size:14px;color:#abbfac}.field{display:grid;grid-template-columns:.85fr 1fr;gap:10%;align-items:center}.field-image{height:620px;position:relative;overflow:hidden;border-radius:3px}.field-image img{width:100%;height:100%;object-fit:cover;object-position:50% 67%}.field-image figcaption{position:absolute;bottom:19px;left:20px;background:#17392ee8;color:white;font-size:14px;padding:6px 11px;letter-spacing:.04em}.field-stats{margin:28px 0 0}.field-stats>div{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:14px 0;border-bottom:1px solid var(--line)}.field-stats dt{font-size:14px;color:var(--muted)}.field-stats dd{margin:0;white-space:nowrap;font-size:14px}.field-stats strong{font-family:Arial,sans-serif;font-weight:500;font-size:45px;line-height:1.3;letter-spacing:-2px;margin-right:6px}.field-note{font-size:14px;color:var(--muted);margin-top:24px}.roadmap{display:grid;grid-template-columns:1fr 1.2fr;gap:8%;background:#eaf0e3;border-top:1px solid var(--line)}.roadmap-list article{display:flex;gap:23px;padding:27px 0;border-bottom:1px solid #c5d0bd}.roadmap-list article:first-child{padding-top:0}.roadmap-number{font-size:14px;color:var(--green);padding-top:4px}.roadmap-label{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px}.roadmap-label h3{font-size:22px;font-weight:600}.roadmap-label span{font-size:14px;background:#d9e4cc;padding:4px 8px;white-space:nowrap;border-radius:2px}.roadmap-list p{color:var(--muted);font-size:14px;margin-top:14px}.contact{background:var(--ink);color:var(--paper);display:flex;justify-content:space-between;align-items:center;gap:40px}.contact .eyebrow{color:var(--accent);margin-bottom:25px}.contact h2{font-size:clamp(36px,4vw,57px)}.contact p:not(.eyebrow){color:#bfcebf;font-size:16px;margin-top:25px}.button-light{background:var(--accent);color:var(--ink);white-space:nowrap}.button-light:hover{background:#deebb9}footer{display:flex;align-items:center;padding:35px 5.2%;gap:27px}footer .wordmark{font-size:23px}footer p{font-size:14px;color:var(--muted)}footer small{font-size:14px;margin-left:auto;color:var(--muted)}footer>a:last-child{font-size:14px;margin-left:20px}
@media(min-width:1600px){.hero{min-height:760px}.hero-image{min-height:760px}.section{padding-top:120px;padding-bottom:120px}}
@media(max-width:1050px){.site-header{padding:0 4%;height:76px}.site-header nav{gap:19px}.site-header .nav-contact{margin-left:0;padding:8px 12px;gap:14px}.hero-copy{padding:45px 7% 30px 8%}.hero,.hero-image{min-height:620px}h1{font-size:44px}.desktop-break{display:none}.hero-actions{gap:13px}.hero-actions .button{gap:18px;padding:14px 17px}.hero-description{font-size:16px}.hero-footnote{margin-top:32px}.section{padding:78px 6%}.intro,.platform,.roadmap{column-gap:6%}.field{gap:7%}.field-image{height:560px}.growing-loop li{padding-left:18px;padding-right:18px}.contact{gap:24px}footer{flex-wrap:wrap;gap:20px}footer p{display:none}}
@media(max-width:760px){html{scroll-padding-top:20px}.site-header{height:72px;position:relative;z-index:5;padding:0 6%}.wordmark{font-size:25px}.menu-toggle{display:flex;gap:15px;background:none;border:0;padding:10px 0 10px 10px;color:var(--ink);font-size:14px;cursor:pointer}.site-header nav{display:none;position:absolute;left:0;right:0;top:72px;background:var(--paper);padding:18px 6% 26px;border-bottom:1px solid var(--line);box-shadow:0 15px 20px #17392e10;align-items:stretch}.site-header nav.is-open{display:flex;flex-direction:column;gap:0}.site-header nav>a{padding:12px 0}.site-header .nav-contact{margin-top:10px;padding:12px 15px;justify-content:space-between}.hero{display:flex;flex-direction:column;min-height:0}.hero-copy{padding:43px 6% 34px}.eyebrow{font-size:14px;letter-spacing:.08em}h1{font-size:clamp(38px,9.8vw,57px);margin-top:28px}.hero-description{margin-top:23px;font-size:16px}.hero-actions{margin-top:26px;gap:25px}.hero-footnote{margin-top:31px;font-size:14px}.hero-image{min-height:390px;height:65vw;max-height:500px}.hero-image img{object-position:62% 50%}.hero-image figcaption{left:6%;bottom:22px}.section{padding:64px 6%}.intro,.platform,.field,.roadmap{grid-template-columns:1fr;gap:33px}h2{font-size:31px}.section-heading>.eyebrow,.field-copy>.eyebrow{margin-bottom:18px}.intro-description{padding-top:0;font-size:16px}.growing-loop{grid-template-columns:1fr 1fr}.growing-loop li{padding:23px 15px!important}.growing-loop li:nth-child(2){border-right:0}.growing-loop li:nth-child(-n+2){border-bottom:1px solid var(--line)}.growing-loop li:nth-child(odd){padding-left:0!important}.growing-loop h3{font-size:23px}.growing-loop p{font-size:14px}.step-number{margin-bottom:17px}.diagram-note{margin-top:-13px;font-size:14px}.platform .section-lead br{display:none}.platform-details h3{font-size:23px}.platform-details article:last-of-type{margin-bottom:19px}.field-image{height:470px;grid-row:2}.field-copy{grid-row:1}.field-stats strong{font-size:43px}.section-lead{font-size:16px;margin-top:20px}.roadmap-list article:first-child{padding-top:10px}.roadmap-list article{gap:17px}.roadmap-label h3{font-size:21px}.contact{align-items:flex-start;flex-direction:column;gap:27px}.contact h2{font-size:43px}.contact p:not(.eyebrow){font-size:14px}.contact p br{display:none}footer{padding:29px 6%;gap:20px}footer small{order:3;width:100%;margin:0}footer>a:last-child{margin-left:auto}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}.button:hover{transform:none}}

/* LLM architecture and development evidence */
[hidden] { display: none !important; }
.autonomy-explorer { grid-column: 1 / -1; border: 1px solid var(--line); background: #fff; border-radius: 4px; overflow: hidden; }
.explorer-heading { display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 10px; padding: 20px 28px; border-bottom: 1px solid var(--line); }
.explorer-heading > span:last-child { font-size: 14px; color: var(--muted); }
.loop-tabs { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); background: #edf2e7; border-bottom: 1px solid var(--line); }
.loop-tabs button { text-align: left; background: transparent; color: var(--ink); border: 0; border-right: 1px solid var(--line); padding: 23px 25px; cursor: pointer; min-width: 0; }
.loop-tabs button:last-child { border-right: 0; }
.loop-tabs button[aria-selected="true"] { background: var(--ink); color: white; }
.loop-tabs button:hover:not([aria-selected="true"]) { background: #e1ead5; }
.loop-tabs button:focus-visible { outline-offset: -4px; }
.loop-tabs button > span { display: flex; align-items: center; justify-content: space-between; font-size: 14px; margin-bottom: 17px; opacity: .85; }
.loop-tabs i { font-style: normal; }
.loop-tabs strong { display: block; font-size: 25px; line-height: 1.4; font-weight: 600; }
.loop-tabs small { display: block; font-size: 14px; line-height: 1.6; margin-top: 6px; }
.loop-panel { display: grid; grid-template-columns: 1fr 1fr; gap: 7%; padding: 38px 40px 32px; min-height: 342px; }
.panel-kicker { font-size: 14px; color: #537048; display: block; margin-bottom: 15px; }
.loop-panel h3 { font-size: 29px; font-weight: 600; line-height: 1.5; }
.loop-panel p { font-size: 16px; color: var(--muted); margin-top: 17px; }
.loop-panel dl { margin: 0; align-self: center; }
.loop-panel dl > div { padding: 17px 0; border-bottom: 1px solid var(--line); }
.loop-panel dl > div:first-child { padding-top: 0; }
.loop-panel dl > div:last-child { border-bottom: 0; padding-bottom: 0; }
.loop-panel dt { font-size: 14px; color: var(--green); margin-bottom: 7px; font-weight: 600; }
.loop-panel dd { margin: 0; font-size: 16px; color: var(--muted); }
.loop-caption { font-size: 14px; color: var(--muted); margin: 0 40px; padding: 18px 0 23px; border-top: 1px solid var(--line); }
.scope-note { grid-column: 1 / -1; display: flex; gap: 28px; padding-left: 19px; border-left: 2px solid #9dae8e; align-items: baseline; }
.scope-note > span { font-size: 14px; font-weight: 600; white-space: nowrap; }
.scope-note p { color: var(--muted); font-size: 14px; }
.observation { display: grid; grid-template-columns: 1fr 1fr; gap: 8%; background: #eaf0e3; }
.observation-copy > p { margin-bottom: 28px; color: var(--muted); font-size: 16px; }
.observation-row { display: flex; gap: 25px; padding: 25px 0; border-top: 1px solid #c5d0bd; }
.observation-row > span { font-size: 14px; letter-spacing: .07em; min-width: 68px; padding-top: 3px; color: var(--green); }
.observation-row h3 { font-size: 22px; font-weight: 600; }
.observation-row p { font-size: 16px; color: var(--muted); margin-top: 12px; }
.platform-position { margin-top: 37px; padding-top: 24px; border-top: 1px solid #416051; color: var(--accent); font-size: 18px; line-height: 2; }
.platform-position span { margin-right: 5px; }
.platform-details article:last-child { border-bottom: 0; padding-bottom: 0; margin-bottom: 0; }
.experience { padding-top: 0; }
.experience-heading { display: flex; justify-content: space-between; align-items: flex-end; gap: 35px; margin-bottom: 35px; }
.experience-heading .eyebrow { margin-bottom: 21px; }
.experience-year { font-family: Arial, sans-serif; font-size: clamp(64px, 8vw, 125px); font-weight: 400; line-height: .95; letter-spacing: -.075em; color: #a8b797; }
.experience-image { position: relative; width: 100%; aspect-ratio: 3.1; overflow: hidden; border-radius: 3px; margin-bottom: 30px; }
.experience-image img { width: 100%; height: 100%; object-fit: cover; object-position: 50% 53%; }
.experience-image figcaption { position: absolute; bottom: 18px; left: 20px; background: #17392ee8; color: white; padding: 5px 11px; font-size: 14px; }
.experience-facts { display: grid; grid-template-columns: repeat(3, 1fr); gap: 4%; }
.experience-facts article { border-top: 1px solid #b5c3aa; padding-top: 23px; }
.experience-facts article > span { font-size: 14px; color: var(--green); }
.experience-facts h3 { font-size: 23px; margin-top: 12px; font-weight: 600; }
.experience-facts p { font-size: 16px; color: var(--muted); margin-top: 14px; }
.experience-source { font-size: 14px; color: var(--muted); margin-top: 25px; }
.partner-topics { display: flex; flex-wrap: wrap; gap: 18px; margin-top: 27px; }
.partner-topics span { border-bottom: 1px solid #6a826b; padding-bottom: 5px; font-size: 14px; color: var(--accent); }
footer { background: #fff; }
.footer-brand { width: 160px; flex-shrink: 0; }
.footer-brand img { width: 100%; height: auto; }
@media (max-width: 1050px) {
  .loop-tabs button { padding: 20px 16px; }
  .loop-panel { gap: 5%; padding: 30px; }
  .loop-panel h3 { font-size: 27px; }
  .loop-caption { margin-left: 30px; margin-right: 30px; }
  .observation { gap: 6%; }
  .observation-row { gap: 17px; }
}
@media (max-width: 760px) {
  .explorer-heading { padding: 16px 18px; }
  .explorer-heading .eyebrow { font-size: 14px; }
  .loop-tabs { overflow-x: auto; grid-template-columns: repeat(5, minmax(110px, 1fr)); scrollbar-width: thin; }
  .loop-tabs button { padding: 18px 15px; }
  .loop-tabs strong { font-size: 23px; }
  .loop-tabs small { font-size: 14px; }
  .loop-panel { grid-template-columns: 1fr; padding: 27px 20px 24px; gap: 24px; min-height: 0; }
  .loop-panel h3 { font-size: 25px; }
  .loop-panel dl { border-top: 1px solid var(--line); padding-top: 22px; }
  .loop-caption { margin: 0 20px; font-size: 14px; }
  .scope-note { flex-direction: column; gap: 8px; }
  .observation { grid-template-columns: 1fr; gap: 30px; }
  .observation-row { flex-direction: column; gap: 12px; }
  .platform-position { margin-top: 25px; padding-top: 18px; }
  .experience { padding-top: 0; }
  .experience-heading { align-items: flex-start; flex-direction: column-reverse; gap: 25px; }
  .experience-year { font-size: 67px; }
  .experience-image { aspect-ratio: 1.3; }
  .experience-image img { object-position: 53% 50%; }
  .experience-image figcaption { left: 12px; right: 12px; bottom: 12px; font-size: 14px; }
  .experience-facts { grid-template-columns: 1fr; gap: 25px; }
  .experience-facts article { padding-top: 20px; }
  .experience-facts h3 { font-size: 23px; }
  .experience-facts p { margin-top: 10px; }
  .contact h2 { font-size: 36px; }
  .footer-brand { width: 145px; }
}

/* A diagram readers can follow without technical background. */
.design-overview { background: #edf2e7; border-top: 1px solid var(--line); }
.design-heading { display: grid; grid-template-columns: 1.15fr 1fr; gap: 8%; align-items: end; margin-bottom: 38px; }
.design-heading .eyebrow { margin-bottom: 22px; }
.design-heading > p { font-size: 16px; color: var(--muted); line-height: 1.9; }
.diagram-symbols { position: absolute; width: 0; height: 0; overflow: hidden; }
.system-map { padding: 26px 30px 25px; background: #fff; border: 1px solid #ced8c4; border-radius: 5px; }
.map-heading { display: flex; justify-content: space-between; flex-wrap: wrap; gap: 8px; margin-bottom: 27px; font-size: 14px; }
.map-heading > span:first-child { font-weight: 600; color: var(--ink); }
.map-heading > span:last-child { color: var(--muted); }
.flow-nodes { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 35px; }
.flow-node { display: flex; flex-direction: column; position: relative; padding: 23px 17px 25px; border: 1px solid #d5dfcc; border-radius: 4px; background: #f8faf5; transition: border-color .15s, background .15s; }
.flow-node:hover { background: #eef3e6; border-color: #7e9b66; }
.flow-node-ai { background: #e5efcc; border-color: #a8bd85; }
.flow-number { font-size: 14px; color: var(--green); }
.flow-icon { display: grid; place-items: center; width: 58px; height: 58px; background: var(--ink); color: #f0f5e9; border-radius: 13px; margin: 19px 0 21px; }
.flow-icon svg { width: 36px; height: 36px; stroke: currentColor; fill: none; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.flow-node h3 { font-size: 21px; font-weight: 600; letter-spacing: -.045em; line-height: 1.5; }
.flow-node p { font-size: 14px; color: var(--muted); margin-top: 12px; }
.flow-forward { position: absolute; right: -28px; top: 48%; font-size: 24px; color: #7c9570; }
.feedback-track { position: relative; height: 31px; margin: 0 11%; border: 1.5px solid #8aa277; border-top: 0; border-radius: 0 0 12px 12px; }
.feedback-track:before { content: ''; position: absolute; left: -5px; top: 0; border-left: 4px solid transparent; border-right: 4px solid transparent; border-bottom: 7px solid #8aa277; }
.feedback-label { width: fit-content; position: relative; margin: -14px auto 0; padding: 0 15px; background: #fff; font-size: 14px; color: #4f6e3e; text-align: center; }
.feedback-label > span { padding-right: 7px; font-size: 19px; }
.map-footnote { text-align: center; color: var(--muted); font-size: 14px; margin-top: 22px; }
@media (max-width: 1050px) {
  .system-map { padding: 23px 22px; }
  .flow-nodes { gap: 25px; }
  .flow-node { padding: 19px 12px; }
  .flow-node h3 { font-size: 19px; }
  .flow-forward { right: -21px; font-size: 21px; }
}
@media (max-width: 760px) {
  .design-heading { grid-template-columns: 1fr; gap: 24px; margin-bottom: 27px; }
  .design-heading > p br { display: none; }
  .system-map { padding: 22px 17px; }
  .flow-nodes { grid-template-columns: 1fr; gap: 31px; padding-left: 14px; }
  .flow-node { min-height: 152px; padding: 20px 18px 20px 90px; }
  .flow-icon { position: absolute; left: 17px; top: 40px; width: 54px; height: 54px; margin: 0; }
  .flow-node h3 { font-size: 21px; margin-top: 10px; }
  .flow-node p { margin-top: 7px; }
  .flow-node p br { display: none; }
  .flow-forward { right: 50%; top: auto; bottom: -31px; transform: translateX(50%) rotate(90deg); font-size: 24px; }
  .feedback-track { height: auto; position: absolute; top: 0; bottom: 0; left: 0; width: 8px; margin: 0; border-right: 0; border-top: 1.5px solid #8aa277; border-radius: 7px 0 0 7px; }
  .system-map { position: relative; }
  .feedback-track { display: none; }
  .feedback-label { margin-top: 25px; padding: 12px 4px; border-top: 1px solid #c8d5be; border-bottom: 1px solid #c8d5be; }
  .map-footnote { text-align: left; margin-top: 18px; }
}
@media (prefers-reduced-motion: reduce) { .flow-node { transition: none; } }

/* Early business vision and the path to autonomous farm operation. */
.business-model { grid-column: 1 / -1; display: grid; grid-template-columns: 1.05fr 1fr 1fr; column-gap: 36px; row-gap: 26px; padding-top: 38px; border-top: 1px solid #627965; }
.business-model-heading .eyebrow { margin-bottom: 17px; font-size: 14px; }
.business-model-heading h3 { font-size: 27px; line-height: 1.55; font-weight: 500; letter-spacing: -.035em; }
.business-offering { padding-left: 26px; border-left: 1px solid #52705b; }
.business-offering > span { display: block; color: #c9dba3; font-size: 14px; margin-bottom: 12px; }
.business-offering h4 { font-size: 21px; font-weight: 500; margin-bottom: 13px; }
.business-offering p { font-size: 16px; color: #bdcdbf; line-height: 1.85; }
.business-support { grid-column: 1 / -1; color: #bdcdbf; font-size: 14px; border-top: 1px solid #416051; padding-top: 20px; }
.origin-story { margin-top: 49px; padding-top: 38px; border-top: 1px solid var(--line); display: grid; grid-template-columns: .8fr 1.2fr; gap: 8%; }
.origin-story .eyebrow { color: var(--green); margin-bottom: 18px; }
.origin-story h3 { font-size: clamp(27px, 2.6vw, 36px); font-weight: 600; line-height: 1.5; letter-spacing: -.045em; }
.origin-story-copy > p { font-size: 16px; line-height: 1.9; color: var(--muted); }
.origin-story-copy > p + p { margin-top: 16px; }
.origin-story-copy .origin-source { font-size: 14px; color: #62735b; }
.growth-roadmap { display: block; background: #eaf0e3; }
.growth-heading { display: grid; grid-template-columns: 1.2fr 1fr; gap: 8%; align-items: end; margin-bottom: 44px; }
.growth-heading .eyebrow { margin-bottom: 23px; color: var(--green); }
.growth-heading > p { font-size: 16px; color: var(--muted); line-height: 1.9; }
.growth-stages { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px; margin: 0; padding: 0; list-style: none; }
.growth-stage { min-width: 0; display: flex; flex-direction: column; padding: 26px 24px 23px; border: 1px solid #b9c9ad; border-top: 3px solid #92aa7c; border-radius: 3px; background: #f4f7ee; }
.growth-stage.stage-current { background: #fff; border-color: #799360; border-top-color: #385c38; }
.stage-top { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 33px; }
.stage-number { font-family: Arial, sans-serif; font-size: 32px; font-weight: 400; color: #5d7952; line-height: 1; letter-spacing: -.03em; }
.stage-state { display: inline-block; padding: 5px 9px; border-radius: 2px; font-size: 14px; color: #4d673d; background: #e4ecd9; }
.stage-current .stage-state { color: #fff; background: #3c643c; }
.stage-horizon { font-size: 14px; font-weight: 600; color: #506d40; margin-bottom: 9px; }
.growth-stage h3 { font-size: clamp(21px, 2vw, 26px); line-height: 1.5; font-weight: 600; letter-spacing: -.045em; word-break: keep-all; }
.stage-intro { font-size: 16px; line-height: 1.75; margin-top: 16px; color: #52634a; }
.stage-details { margin: 25px 0 0; padding: 24px 0 0; border-top: 1px solid #c9d5c1; }
.stage-details > div + div { margin-top: 23px; }
.stage-details dt { font-size: 14px; font-weight: 600; color: #315437; margin-bottom: 9px; }
.stage-details dd { margin: 0; font-size: 16px; color: #52634a; line-height: 1.85; }
.stage-gate { padding-top: 24px; margin-top: auto; }
.stage-gate > span { display: block; font-size: 14px; font-weight: 600; color: #42623c; border-top: 1px solid #c9d5c1; padding-top: 20px; }
.stage-gate p { color: #596a50; font-size: 14px; line-height: 1.8; margin-top: 8px; }
.automation-horizon { display: grid; grid-template-columns: minmax(0, 1fr) 44px minmax(0, 1fr); align-items: center; margin-top: 36px; padding: 28px 30px; background: #dce7d0; border-radius: 3px; }
.automation-horizon-heading { grid-column: 1 / -1; display: flex; justify-content: space-between; align-items: baseline; gap: 20px; margin-bottom: 23px; }
.automation-horizon-heading h3 { font-size: 21px; font-weight: 600; flex-shrink: 0; }
.automation-horizon-heading p { font-size: 14px; color: #52664a; }
.automation-now, .automation-later { align-self: stretch; padding: 21px 23px; border-radius: 3px; }
.automation-now { background: #244c37; color: #eff5e7; }
.automation-later { border: 1px dashed #8ca07a; }
.automation-now > span, .automation-later > span { font-size: 14px; display: block; margin-bottom: 9px; }
.automation-now > span { color: #d2e4b4; }
.automation-later > span { color: #536e44; }
.automation-horizon strong { display: block; font-size: 20px; font-weight: 600; line-height: 1.6; }
.automation-horizon p { line-height: 1.8; }
.automation-now p, .automation-later p { font-size: 14px; margin-top: 9px; }
.automation-now p { color: #c6d8be; }
.automation-later p { color: #53674a; }
.automation-expand { text-align: center; font-size: 26px; color: #597344; }
.growth-note { margin-top: 23px; font-size: 14px; color: #5e7053; line-height: 1.8; }
@media (max-width: 1100px) {
  .business-model { column-gap: 24px; }
  .business-offering { padding-left: 20px; }
  .business-model-heading h3 { font-size: 24px; }
  .growth-stages { gap: 16px; }
  .growth-stage { padding: 24px 18px 21px; }
  .growth-stage h3 { font-size: 23px; }
  .stage-gate p br { display: none; }
  .automation-horizon-heading { display: block; }
  .automation-horizon-heading p { margin-top: 9px; }
}
@media (max-width: 820px) {
  .business-model { grid-template-columns: 1fr 1fr; }
  .business-model-heading { grid-column: 1 / -1; }
  .business-model-heading h3 br { display: none; }
  .business-offering { padding-left: 0; border-left: 0; }
  .origin-story { grid-template-columns: 1fr; gap: 24px; }
  .growth-heading { grid-template-columns: 1fr; gap: 25px; }
  .growth-stages { grid-template-columns: 1fr; gap: 23px; }
  .growth-stage { padding: 27px 25px; }
  .stage-top { margin-bottom: 23px; }
  .growth-stage h3 { font-size: 27px; }
  .stage-details { display: grid; grid-template-columns: 1fr 1fr; gap: 28px; }
  .stage-details > div + div { margin-top: 0; }
  .stage-gate { padding-top: 24px; }
  .automation-horizon { grid-template-columns: 1fr; gap: 0; padding: 25px; }
  .automation-horizon-heading { margin-bottom: 20px; }
  .automation-expand { transform: rotate(90deg); padding: 2px 0; }
}
@media (max-width: 480px) {
  .business-model { grid-template-columns: 1fr; gap: 27px; }
  .business-offering + .business-offering { border-top: 1px solid #52705b; padding-top: 24px; }
  .origin-story { margin-top: 34px; padding-top: 30px; }
  .growth-heading { margin-bottom: 31px; }
  .growth-stage { padding: 25px 21px; }
  .stage-details { grid-template-columns: 1fr; gap: 23px; }
  .automation-horizon { padding: 23px 17px; }
  .automation-now, .automation-later { padding: 19px 16px; }
  .automation-horizon strong { font-size: 18px; }
}

/* Restored email contact. */
.contact { display: grid; grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr); gap: 7%; align-items: start; }
.contact-copy { min-width: 0; }
.contact .contact-routing { margin: 36px 0 23px; padding-top: 25px; border-top: 1px solid #416051; }
.contact-routing > span { display: block; font-size: 14px; font-weight: 600; color: #e6f2cb; margin-bottom: 9px; }
.contact .contact-routing p { margin: 13px 0 0; font-size: 16px; color: #c8d5c5; line-height: 1.85; }
.contact-social { display: inline-block; color: #d5e3cf; font-size: 14px; padding: 8px 0; }
.contact-form { min-width: 0; width: 100%; padding: 34px; border-radius: 5px; background: #f7f9f1; color: #193a2e; }
.contact-form h3 { font-size: 26px; font-weight: 600; letter-spacing: -.04em; }
.contact .contact-form p { max-width: none; margin: 0; color: #52634f; font-size: 14px; line-height: 1.7; }
.contact .contact-form .form-description { margin: 7px 0 25px; }
.contact .contact-form .preview-notice { padding: 12px 14px; margin: 0 0 22px; background: #e9eedb; border-left: 2px solid #809655; }
.contact-form [hidden] { display: none !important; }
.contact-form label { display: block; font-size: 14px; font-weight: 600; margin-bottom: 8px; }
.contact-form label span { color: #65745f; font-weight: 400; }
.contact-form input, .contact-form textarea { width: 100%; min-width: 0; border: 1px solid #b8c6ae; border-radius: 3px; background: #fff; color: #193a2e; font: inherit; font-size: 16px; padding: 12px 13px; line-height: 1.5; }
.contact-form input::placeholder, .contact-form textarea::placeholder { color: #798471; opacity: 1; }
.contact-form textarea { display: block; resize: vertical; min-height: 145px; }
.contact-form button { border: 0; border-radius: 3px; padding: 13px 17px; font: inherit; font-size: 14px; font-weight: 600; cursor: pointer; }
.email-verification-row { display: flex; align-items: stretch; gap: 9px; }
.email-verification-row input { flex: 1; }
.email-verification-row button { flex: 0 0 auto; background: #dbe7c1; color: #22432f; }
.contact-form button:disabled { opacity: .55; cursor: default; }
.contact-form :is(input, textarea, button):focus-visible { outline: 3px solid #66894c; outline-offset: 3px; }
.contact .contact-form .verification-status { min-height: 24px; margin: 9px 0 20px; }
.form-columns { display: grid; grid-template-columns: 1fr 1fr; gap: 17px; margin-bottom: 23px; }
.contact .contact-form .message-count { margin: 6px 0 14px; text-align: right; font-size: 13px; }
.contact .contact-form .form-status { margin-bottom: 13px; }
.contact .contact-form .is-error { color: #9f362a; }
.contact-form .contact-submit { display: block; width: 100%; background: #193f30; color: #f9fcf4; font-size: 16px; }
.contact .contact-form .form-purpose { margin-top: 13px; font-size: 13px; }
.contact-form noscript a { text-decoration: underline; }
@media (max-width: 960px) { .contact { grid-template-columns: 1fr; gap: 40px; } .contact-form { max-width: 680px; } }
@media (max-width: 480px) {
  .contact-form { padding: 25px 19px; }
  .email-verification-row { flex-direction: column; }
  .form-columns { grid-template-columns: 1fr; gap: 19px; }
}

/* Concept render and matching native labels. */
.hardware-concept { display: grid; grid-template-columns: minmax(0, 1.65fr) minmax(270px, 1fr); gap: 38px; align-items: start; }
.concept-figure { margin: 0; min-width: 0; }
.concept-image-wrap { position: relative; background: #ecefdf; border: 1px solid #d0d8c4; border-radius: 4px; overflow: hidden; }
.concept-image-wrap > img { width: 100%; height: auto; }
.concept-status { position: absolute; top: 16px; left: 16px; padding: 5px 10px; background: #f8faf2ed; color: #395139; border: 1px solid #c9d4bb; border-radius: 3px; font-size: 14px; }
.hardware-pin { position: absolute; display: grid; place-items: center; width: 30px; height: 30px; border-radius: 50%; background: #17392f; color: #fff; border: 2px solid #f4f8ec; box-shadow: 0 2px 7px #17392f30; font-family: Arial, sans-serif; font-size: 15px; font-weight: 700; transform: translate(-50%, -50%); }
.pin-tower { left: 51%; top: 29%; }
.pin-camera { left: 29%; top: 64%; }
.pin-sensor { left: 56%; top: 71%; }
.pin-computer { left: 82%; top: 61%; }
.concept-figure figcaption { display: flex; justify-content: space-between; flex-wrap: wrap; gap: 9px; padding: 12px 0 0; color: var(--muted); font-size: 14px; }
.concept-figure figcaption a { color: var(--ink); text-decoration: underline; text-underline-offset: 4px; white-space: nowrap; }
.hardware-legend > h3 { font-size: 26px; font-weight: 600; margin: 0 0 9px; }
.hardware-legend > div { display: flex; gap: 15px; border-bottom: 1px solid #ced8c4; padding: 16px 0; }
.hardware-legend > div:last-child { border-bottom: 0; }
.legend-letter { display: grid; place-items: center; flex: 0 0 26px; height: 26px; background: var(--ink); color: #fff; border-radius: 50%; font-size: 14px; font-weight: 600; }
.hardware-legend section { padding: 0; }
.hardware-legend h4 { font-size: 18px; font-weight: 600; line-height: 1.5; letter-spacing: -.03em; margin: 0 0 7px; }
.hardware-legend p { font-size: 14px; line-height: 1.85; color: var(--muted); }
.concept-note { font-size: 14px; color: var(--muted); padding-left: 16px; margin: 26px 0 42px; border-left: 2px solid #91a87b; }
.flow-output { display: block; padding-top: 15px; margin-top: auto; color: #466138; font-size: 14px; font-weight: 600; }
.flow-node p { margin-bottom: 15px; }
@media (max-width: 1100px) {
  .hardware-concept { grid-template-columns: 1fr; gap: 27px; }
  .hardware-legend { display: grid; grid-template-columns: 1fr 1fr; gap: 0 30px; }
  .hardware-legend > h3 { grid-column: 1 / -1; }
  .hardware-legend > div:last-child { border-bottom: 1px solid #ced8c4; }
}
@media (max-width: 760px) {
  .hardware-concept { gap: 25px; }
  .hardware-legend { grid-template-columns: 1fr; gap: 0; }
  .hardware-legend > h3 { font-size: 24px; }
  .hardware-pin { width: 25px; height: 25px; font-size: 14px; }
  .concept-status { top: 10px; left: 10px; font-size: 14px; padding: 3px 7px; }
  .concept-figure figcaption { font-size: 14px; gap: 7px; }
  .concept-note { margin: 23px 0 32px; }
  .flow-output { padding-top: 10px; margin-top: 0; }
}
