/* Chakra Petch Bold (OFL), subset to F/A/C/T glyphs only (828 B) - logo letters */
@font-face{font-family:'Chakra Petch';font-style:normal;font-weight:700;
  src:url(data:font/woff2;base64,d09GMgABAAAAAAM8AA4AAAAABowAAALnAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGhYbgTIcLgZgAFQRCAqBeIFDCw4AATYCJAMYBCAFhCwHIBtSBcgEHv716u9L3igrljlbwf5ciJn5YAmh+r2AEq7IHFyO2zyWTpDAshB/tK+5FugCiwpsDaCAE9GUgddOoBYBuMO5FQQ0FhbLea4RTipqYXFlNf7DHa5R8Fz9HQMWZEXlj1Ex1GOMYvdxky9RsLtb0QCx9TKlpCMRMz+ZO4aJmH/MP3GU0O6VUMZ4bWzA9UrU/rAcUEOSCu6EV+A7Ryzlt5h7Z8uOJFI6GKOUM8bDiJKpnBylR1mm1AMVboVoJV6EFzrtaLI2nhQUVujsQadaffb/JiTkMyVZF2J9WHxWTpJeHXXGAPT+K8B2DHL3GduZSxKdPAoopno2o7EL5nPznHnWPG3uazOiVQuEaeJFgNXWu8+MkK6fxOvlKcr3DMVfktIu/TV7m4d077K4yyG3Fq1Wq9b6GrX6OrXOowZNZGtTlKluOcKNavc2D9zxwF3R2jThhSa1hitbr25tT2oKa0KemG+eWJa67XvqtmXbtGaH0uAg2XhsGLXj40NL0t5fDRkNufo+bcnQ+HgtuSc+OvvPpzpT/ZfwtPSeM9x5r2wJAFyT81xe1PCqzSvzm92mvsuKPlnY/sj9dDTe8W/Sv+vymHyKwLYUvLZiw497/m/S/yfy2OYgKLUqVTQKb3xUFmFRVpOi5JKnlOJVq9pKATZyLteYBmrfbju9hEtIB+IcFZ6hWBDMd+xS699DrJLMUQT+EDZBbCGfarEVnUSNJ/MN9OPCxTjpxBCDky4MBhjHBXo0zl8NE80YBn3EMJliKimgnw6GMOhgCj246KKfKPIZY5huaunBaHdpjFF04ogmVvdmoI91qpcOZuBijH6GMJrVCWVmrfVkwnpf1VmaPtZfdQGFVKD7c8xKKc3Ut6aA8Y4zZ/3Qty/tOvHEEkcqqalmdu1Bn5l7CgabHaSHrnaQt0Lo3ztwSsq91jtZbx8Dpe4ZdEqnuhhjhBhGSGQPdxFHDzFYjYI+uiWEPWmU32ceIh4NAAAA) format('woff2')}
:root{
  --paper:#FCFCFA;
  --tint:#F1F4EF;
  --ink:#17201B;
  --sec:#4A564F;
  --line:#DEE3DC;
  --accent:#0F5132;
  --accent-deep:#0B3D26;
  --copper:#B45309;
  --footer:#14231C;
  --footer-ink:#F2F5F1;
  --sans:-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  --mono:ui-monospace,"SF Mono","Cascadia Code",Consolas,"Liberation Mono",monospace;
  --wrap:1060px;
}
*{margin:0;padding:0;box-sizing:border-box}
html{-webkit-print-color-adjust:exact;print-color-adjust:exact}
@media (prefers-reduced-motion: no-preference){html{scroll-behavior:smooth}}
[id]{scroll-margin-top:clamp(16px,3vw,28px)}
body{background:var(--paper);font-family:var(--sans);color:var(--ink);
     font-size:16px;line-height:1.55}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 clamp(18px,4vw,32px)}
a{color:var(--accent)}
a:focus-visible,button:focus-visible{outline:2px solid var(--copper);outline-offset:2px}
b,strong{font-weight:700}

/* ---------- top bar ---------- */
.topbar{border-bottom:1px solid var(--line);background:var(--paper)}
.topbar .wrap{display:flex;align-items:center;justify-content:space-between;gap:16px;
              padding-top:14px;padding-bottom:14px}
.wordmark{display:flex;flex-direction:column;align-items:center;gap:5px;width:46px;
          color:var(--accent);text-decoration:none}
.wordmark svg{display:block}
.wordmark svg rect{fill:var(--accent)}
.wordmark svg polygon{fill:var(--paper)}
.wordmark .wtxt{width:100%;display:flex;justify-content:space-between;line-height:1;
                font-family:"Chakra Petch",var(--sans);font-weight:700;font-size:10px}
nav.menu{display:flex;gap:22px;font-family:var(--mono);font-size:12px;
         letter-spacing:.08em;text-transform:uppercase}
nav.menu a{color:var(--sec);text-decoration:none}
nav.menu a:hover{color:var(--accent)}

/* ---------- language switch ---------- */
.lang{display:flex;align-items:center;gap:4px;flex:none;
      font-family:var(--mono);font-size:12px;letter-spacing:.08em}
.lang a{color:var(--sec);text-decoration:none;padding:2px 7px;border-radius:2px;
        border:1px solid transparent}
.lang a:hover{color:var(--accent)}
.lang a[aria-current="page"]{color:var(--accent);font-weight:700;
        background:var(--tint);border-color:var(--line)}

@media (max-width:760px){
  .topbar .wrap{flex-wrap:wrap;row-gap:6px}
  nav.menu{flex:1;min-width:0;justify-content:flex-end;flex-wrap:wrap;gap:8px 14px}
  .lang{order:-1;margin-left:auto}
  .btns{flex-direction:column;align-items:stretch}
  .btns .btn{text-align:center}
  .btns .btn.ghost{order:-1}
  .btnnote{order:1}
  .cta .btns{flex-direction:row}
  .cta .btns .btn{flex:1}
}

/* ---------- hero ---------- */
.hero{padding:clamp(40px,7vw,84px) 0 clamp(32px,5vw,56px);
      border-bottom:1px solid var(--line);
      background:
        linear-gradient(180deg, var(--paper) 0%, var(--tint) 140%)}
.hero h1{font-size:clamp(30px,4.6vw,52px);line-height:1.12;font-weight:800;
         letter-spacing:-.02em;max-width:21ch;text-wrap:balance}
.hero h1 em{font-style:normal;color:var(--accent)}
.lede{margin-top:18px;font-size:clamp(16px,1.6vw,19px);color:var(--sec);max-width:62ch}
.loc{margin-top:16px;font-family:var(--mono);font-size:12px;letter-spacing:.1em;
     text-transform:uppercase;color:var(--accent)}
.value{margin-top:22px;background:var(--paper);border:1px solid var(--line);
       border-left:3px solid var(--accent);padding:16px 20px;max-width:74ch}
.value b{color:var(--accent)}
.value .second{display:block;margin-top:8px}
.btns{margin-top:26px;display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.btn{display:inline-block;padding:12px 22px;font-size:15px;font-weight:700;
     text-decoration:none;border-radius:3px;border:1.5px solid var(--accent)}
.btn.primary{background:var(--accent);color:#fff}
.btn.primary:hover{background:var(--accent-deep)}
.btn.ghost{color:var(--accent);background:transparent}
.btn.ghost:hover{background:var(--tint)}
.btnnote{font-family:var(--mono);font-size:12px;color:var(--sec)}

/* ---------- sections ---------- */
section{padding:clamp(36px,5vw,60px) 0 clamp(10px,2vw,20px)}
section.band{background:var(--tint);border-top:1px solid var(--line);
             border-bottom:1px solid var(--line);
             padding-bottom:clamp(36px,5vw,56px)}
.kick{display:flex;align-items:center;gap:10px;font-size:14px;font-weight:700;
      letter-spacing:.12em;text-transform:uppercase;margin-bottom:22px}
.knum{font-family:var(--mono);font-weight:700;color:#fff;background:var(--accent);
      padding:2px 8px;border-radius:2px;flex:none}
.kline{flex:1;height:1px;background:var(--line)}
.ktrace{color:var(--accent);flex:none}

/* ---------- stat tiles ---------- */
.stats{display:grid;grid-template-columns:repeat(5,1fr);gap:0}
.stat{border-left:1px solid var(--line);padding:4px 18px}
.stat:first-child{border-left:none;padding-left:0}
.stat .lbl{font-family:var(--mono);font-size:11px;letter-spacing:.1em;
           text-transform:uppercase;color:var(--sec)}
.stat .val{font-family:var(--mono);font-variant-numeric:tabular-nums;
           font-size:clamp(22px,2.6vw,30px);font-weight:700;line-height:1.15;
           margin:6px 0 4px;white-space:nowrap}
.stat .val small{font-size:.55em;font-weight:600}
.stat .sub{font-size:13px;color:var(--sec);line-height:1.4}
.statnote{margin-top:16px;font-size:13px;color:var(--sec)}
.fill-in{color:var(--copper);font-family:var(--mono);font-size:.92em}
@media (max-width:900px){
  .stats{grid-template-columns:repeat(2,1fr);gap:16px 0}
  .stat{padding:4px 14px;border-top:1px solid var(--line)}
  .stat:first-child{padding-left:14px;border-left:1px solid var(--line)}
  .stat .val{font-size:clamp(18px,6vw,26px)}
}

/* ---------- segments ---------- */
.segs{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.seg{background:var(--paper);border:1px solid var(--line);padding:20px 22px}
.seg h3{font-size:17px;margin-bottom:6px}
.seg .tagline{font-family:var(--mono);font-size:11px;letter-spacing:.09em;
              text-transform:uppercase;color:var(--accent);margin-bottom:10px}
.seg p{font-size:14.5px;color:var(--sec)}
@media (max-width:760px){.segs{grid-template-columns:1fr}}

/* ---------- process steps ---------- */
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;position:relative}
.steps::before{content:"";position:absolute;top:16px;left:48px;right:48px;height:1px;
               background:var(--line)}
.step{position:relative}
.step .n{position:relative;z-index:1;display:inline-flex;align-items:center;
         justify-content:center;width:32px;height:32px;border-radius:50%;
         background:var(--accent);color:#fff;font-family:var(--mono);
         font-size:14px;font-weight:700}
.step h3{font-size:16px;margin:10px 0 6px}
.step p{font-size:14.5px;color:var(--sec)}
@media (max-width:760px){
  .steps{grid-template-columns:1fr}
  .steps::before{display:none}
}

/* ---------- two-column lists ---------- */
.cols{display:grid;grid-template-columns:1fr 1fr;gap:0 44px}
.cols>div{min-width:0}
ul.tech{list-style:none}
ul.tech li{position:relative;padding:0 0 12px 20px;font-size:14.5px;line-height:1.5}
ul.tech li::before{content:"";position:absolute;left:0;top:8px;width:7px;height:7px;
                   border:1.5px solid var(--accent);background:transparent}
.roadmap{border-top:1px dashed var(--line);margin-top:6px;padding-top:12px;
         font-size:13.5px;color:var(--sec)}
.roadmap .rl{font-family:var(--mono);font-size:11px;letter-spacing:.1em;
             text-transform:uppercase;color:var(--copper)}
@media (max-width:860px){
  .cols{grid-template-columns:1fr}
  .cols>div+div{margin-top:36px;padding-top:34px;border-top:1px dashed var(--accent)}
}

/* ---------- models ---------- */
.models{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.model{background:var(--paper);border:1px solid var(--line);padding:16px 18px}
.model h3{font-size:15.5px;display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.model .tag{font-family:var(--mono);font-size:10px;letter-spacing:.09em;
            text-transform:uppercase;color:var(--accent);border:1px solid var(--accent);
            padding:1px 6px;border-radius:2px}
.model p{margin-top:8px;font-size:14px;color:var(--sec)}
@media (max-width:860px){.models{grid-template-columns:1fr}}

/* ---------- team & status ---------- */
.duo{display:grid;grid-template-columns:1.05fr .95fr;gap:24px}
.team p{padding-bottom:10px;font-size:14.5px}
.status{border:1px solid var(--copper);padding:16px 20px;height:fit-content}
.badge{display:inline-block;font-family:var(--mono);font-size:11px;font-weight:700;
       letter-spacing:.11em;text-transform:uppercase;color:#fff;
       background:var(--copper);padding:3px 9px;border-radius:2px}
.status p{margin-top:10px;font-size:14.5px}
@media (max-width:860px){.duo{grid-template-columns:1fr}}

/* ---------- footer CTA ---------- */
footer.cta{margin-top:clamp(36px,5vw,60px);background:var(--footer);
           color:var(--footer-ink);padding:clamp(36px,5vw,56px) 0 28px}
.cta .big{font-size:clamp(20px,2.6vw,28px);font-weight:800;line-height:1.3;
          max-width:30ch;text-wrap:balance}
.cta .big .days{color:#8FD3A8}
.cta .alt{margin-top:12px;font-size:15px;color:#B9C6BC;max-width:70ch}
.cta .alt b{color:#E8EFE9}
.cta .btns{margin-top:22px}
.cta .btn{border-color:#8FD3A8}
.cta .btn.primary{background:#8FD3A8;color:var(--footer)}
.cta .btn.primary:hover{background:#A9E0BE}
.cta .btn.ghost{color:#CFE5D6}
.cta .btn.ghost:hover{background:rgba(143,211,168,.12)}
.footrow{margin-top:26px;padding-top:20px;border-top:1px solid rgba(242,247,243,.22);
         display:flex;align-items:center;gap:22px}
.contacts{font-family:var(--mono);font-size:13px;display:flex;flex-direction:column;gap:7px}
.contacts .ph{color:#E4B57F}
.contacts a{color:#8FD3A8}
.footlogo{width:64px;flex:none;display:flex;flex-direction:column;gap:6px}
.footlogo svg{display:block;width:100%;height:auto}
.footlogo svg rect{fill:#8FD3A8}
.footlogo svg polygon{fill:var(--footer)}
.footlogo .fl{width:100%;display:flex;justify-content:space-between;
              font-family:"Chakra Petch",var(--sans);
              font-weight:700;font-size:13px;line-height:1;color:#8FD3A8}
.fineprint{margin-top:14px;font-family:var(--mono);font-size:11px;color:#7E8F84}

/* ---------- portal section + live mockup ---------- */
.portal{display:grid;grid-template-columns:1.02fr .98fr;gap:28px;align-items:start}
.portal .roadmap{margin-top:14px}
.pm{background:var(--paper);border:1px solid var(--line);border-radius:4px;
    box-shadow:0 1px 2px rgba(23,32,27,.05);overflow:hidden}
.pm-h{display:flex;align-items:center;gap:8px;padding:11px 15px;
      border-bottom:1px solid var(--line);background:var(--tint)}
.pm-h .num{font-family:var(--mono);font-weight:700;font-size:13px;color:var(--accent)}
.pm-h .bd{font-size:12.5px;color:var(--sec)}
.pm-live{margin-left:auto;display:inline-flex;align-items:center;gap:6px;
         font-family:var(--mono);font-size:10.5px;letter-spacing:.06em;
         text-transform:uppercase;color:var(--accent)}
.pm-dot{width:7px;height:7px;border-radius:50%;background:var(--accent)}
@media (prefers-reduced-motion:no-preference){
  .pm-dot{animation:pmPulse 1.8s ease-in-out infinite}
}
@keyframes pmPulse{0%,100%{opacity:1}50%{opacity:.28}}
.pm-body{padding:13px 15px;display:flex;flex-direction:column;gap:11px}
.pm-row{display:grid;grid-template-columns:18px 1fr auto;gap:10px;align-items:center}
.pm-ic{width:17px;height:17px;color:var(--accent);display:flex;align-items:center;justify-content:center}
.pm-ic svg{width:17px;height:17px;display:block}
.pm-lab{font-size:13px;line-height:1.2}
.pm-lab .b{display:block;height:5px;border-radius:3px;background:var(--line);
           margin-top:6px;overflow:hidden}
.pm-lab .b i{display:block;height:100%;background:var(--accent);border-radius:3px}
.pm-row.copper .pm-ic{color:var(--copper)}
.pm-row.copper .pm-lab .b i{background:var(--copper)}
.pm-n{font-family:var(--mono);font-variant-numeric:tabular-nums;font-size:12px;
      color:var(--sec);white-space:nowrap}
.pm-n b{color:var(--accent)}
.pm-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;
         padding:10px 15px;border-top:1px solid var(--line);font-size:12px;color:var(--sec)}
.pm-scrap{font-family:var(--mono);font-size:10.5px;color:var(--copper);
          border:1px solid var(--copper);border-radius:2px;padding:1px 7px}
@media (max-width:860px){
  .portal{grid-template-columns:1fr;gap:20px}
}

/* ---------- print: compact brief ---------- */
@page{size:A4;margin:12mm}
@media print{
  body{background:#fff;font-size:10pt;line-height:1.4}
  .topbar,.btns,nav.menu,.lang{display:none}
  .hero{padding:0 0 10px;background:#fff;border-bottom:2px solid var(--ink)}
  .hero h1{font-size:20pt}
  .lede{margin-top:8px;font-size:10.5pt}
  .value{margin-top:10px;font-size:10pt}
  section{padding:12px 0 4px}
  section.band{background:#fff;border:none;padding-bottom:8px}
  .kick{margin-bottom:10px;font-size:10pt}
  .stat .val{font-size:15pt}
  ul.tech li,.step p,.model p,.team p,.status p{font-size:9.5pt;padding-bottom:6px}
  .segs,.models{gap:10px}
  footer.cta{margin-top:14px;padding:14px 0 10px}
  .cta .big{font-size:14pt}
  .pm{box-shadow:none}
  section,.stat,.step,.model,.status,.seg,.pm{break-inside:avoid;page-break-inside:avoid}
  h2{break-after:avoid}
}
