/* Routario marketing — shared design system. Copied from index.html's inline
   <style> so the homepage stays self-contained and untouched. Multi-page sheet
   for /use-cases, /platform, /trust-security, /why-routario, /pricing. */
:root{
    --ink:#211C18; --ink-deep:#0B0908; --accent:#F2622C; --accent-strong:#C83E18;
    --accent-text:#A8350F; --accent-soft:#FCE7DE; --amber:#F7A23A; --base:#FAF8F5;
    --white:#FFFFFF; --muted:#6E665B; --muted-dk:#C9C0B6; --hairline:#E7E1D8;
    --hairline-dk:rgba(255,255,255,.14); --success:#2E7D5B; --tile:#16202A;
    --shadow-card:0 14px 40px rgba(33,28,24,.08); --shadow-hero:0 30px 70px rgba(22,18,12,.28);
    --radius:18px; --radius-sm:14px;
    --maxw:1180px; --pad:clamp(20px,5vw,64px);
    --t-display:clamp(40px,6.6vw,84px); --t-title:clamp(28px,4.2vw,54px);
    --t-titlesm:clamp(24px,3.2vw,40px); --t-lede:clamp(19px,2.2vw,29px);
    --t-body:clamp(16px,1.45vw,20px); --t-small:clamp(13px,1.05vw,16px);
  }
  *{box-sizing:border-box;}
  html,body{margin:0;padding:0;}
  body{font-family:"Manrope",system-ui,sans-serif;background:var(--base);color:var(--ink);-webkit-font-smoothing:antialiased;line-height:1.5;overflow-x:hidden;}
  .wrap{max-width:var(--maxw);margin:0 auto;padding-left:var(--pad);padding-right:var(--pad);}
  section{padding:clamp(56px,8vw,118px) 0;}
  a{color:inherit;}
  *{-webkit-tap-highlight-color:transparent;}
  a:focus,button:focus{outline:none;}
  a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid var(--accent-strong);outline-offset:2px;border-radius:8px;}
  img{max-width:100%;}

  .eyebrow{font-size:var(--t-small);font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--accent-text);margin:0 0 16px;}
  .title{font-family:"Fraunces",serif;font-variation-settings:"opsz" 144;font-weight:600;letter-spacing:-.025em;line-height:1.06;font-size:var(--t-title);margin:0;color:var(--ink);text-wrap:balance;}
  .titlesm{font-size:var(--t-titlesm);}
  .lede{font-size:var(--t-lede);font-weight:500;line-height:1.34;margin:18px 0 0;}
  .body{font-size:var(--t-body);font-weight:400;line-height:1.55;color:var(--muted);margin:18px 0 0;}
  .body b,.ink{color:var(--ink);font-weight:600;}
  .on-dark .title,.on-dark .lede{color:var(--white);}
  .on-dark .body{color:var(--muted-dk);}
  .on-dark .eyebrow{color:var(--amber);}

  /* ---------- nav ---------- */
  .nav{position:sticky;top:0;z-index:50;background:rgba(250,248,245,.86);backdrop-filter:saturate(1.4) blur(10px);border-bottom:1px solid var(--hairline);}
  .nav .wrap{display:flex;align-items:center;gap:18px;height:66px;}
  .brand{display:flex;align-items:center;gap:11px;text-decoration:none;}
  .brand .lockup{height:30px;width:auto;display:block;}
  .nav .sp{flex:1;}
  .navlinks{display:flex;align-items:center;gap:26px;}
  .navlinks a{text-decoration:none;font-weight:600;font-size:15px;color:var(--muted);transition:color .15s ease;}
  .navlinks a:hover{color:var(--ink);}
  .nav-toggle{display:none;background:transparent;border:0;cursor:pointer;padding:8px;color:var(--ink);border-radius:8px;}
  .nav-toggle svg{width:26px;height:26px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;}
  .nav-contact-m{display:none;}
  @media(max-width:920px){.nav-toggle{display:inline-flex;align-items:center;}.nav .navcta{display:none;}.navlinks{position:absolute;top:100%;left:0;right:0;display:none;flex-direction:column;align-items:stretch;gap:0;background:rgba(250,248,245,.98);backdrop-filter:saturate(1.4) blur(10px);border-bottom:1px solid var(--hairline);box-shadow:var(--shadow-card);padding:6px 0;}.nav.nav-open .navlinks{display:flex;}.navlinks a{padding:13px var(--pad);font-size:17px;border-top:1px solid var(--hairline);color:var(--ink);}.navlinks a:first-child{border-top:0;}.nav-contact-m{display:block;color:var(--accent-text);font-weight:700;}}
  .btn{display:inline-flex;align-items:center;gap:9px;font-family:inherit;font-weight:700;font-size:var(--t-small);padding:12px 20px;border-radius:11px;border:0;cursor:pointer;text-decoration:none;transition:transform .15s ease,background .15s ease;white-space:nowrap;}
  .btn:hover{transform:translateY(-1px);}
  .btn.pri{background:var(--accent);color:#fff;}
  .btn.pri:hover{background:var(--accent-strong);}
  .btn.sec{background:transparent;color:var(--ink);border:1px solid var(--hairline);}
  .btn.lg{padding:15px 26px;font-size:clamp(15px,1.4vw,18px);}
  .nav .btn{padding:10px 16px;}
  @media(max-width:520px){.nav .navcta{display:none;}}

  /* ---------- aperture / dark ---------- */
  .apfield{position:absolute;inset:0;overflow:hidden;pointer-events:none;}
  .ap{position:absolute;border-radius:50%;mix-blend-mode:screen;}
  .ap.pt{background:radial-gradient(circle at 38% 34%,rgba(255,242,226,.74) 0%,rgba(255,243,230,0) 26%),radial-gradient(circle at 49% 47%,rgba(247,162,58,.84) 4%,rgba(247,162,58,0) 56%),radial-gradient(circle at 58% 64%,rgba(200,80,30,.88) 0%,rgba(200,80,30,0) 76%);}
  .ap.hot{background:radial-gradient(circle at 38% 34%,rgba(255,247,233,.88) 0%,rgba(255,243,230,0) 26%),radial-gradient(circle at 49% 47%,rgba(247,162,58,.92) 4%,rgba(247,162,58,0) 56%),radial-gradient(circle at 58% 64%,rgba(200,80,30,.92) 0%,rgba(200,80,30,0) 76%);}
  .ap.white{background:radial-gradient(circle at 38% 34%,rgba(255,250,242,.96) 0%,rgba(255,243,230,0) 26%),radial-gradient(circle at 49% 47%,rgba(247,162,58,.92) 4%,rgba(247,162,58,0) 56%),radial-gradient(circle at 58% 64%,rgba(200,80,30,.92) 0%,rgba(200,80,30,0) 76%);}
  .ap.glow{background:radial-gradient(circle at 50% 50%,rgba(247,162,58,.45) 0%,rgba(247,162,58,0) 48%),radial-gradient(circle at 50% 50%,rgba(200,80,30,.70) 0%,rgba(200,80,30,0) 72%);}
  .dark{position:relative;background:var(--ink-deep);color:var(--white);overflow:hidden;}
  .dark::after{content:"";position:absolute;inset:0;pointer-events:none;opacity:.05;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='200' height='200'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");background-size:200px 200px;}
  .dark .wrap{position:relative;z-index:2;}
  @media(prefers-reduced-motion:no-preference){
    .ap.drift{animation:drift 32s ease-in-out infinite alternate;}
    @keyframes drift{0%{transform:translate(0,0) scaleY(.85);}50%{transform:translate(-16px,20px) scaleY(.8);}100%{transform:translate(18px,-12px) scaleY(.84);}}
    .anim .reveal{opacity:0;transform:translateY(22px);transition:opacity .8s ease,transform .8s cubic-bezier(.22,.7,.2,1);}
    .anim .reveal.in{opacity:1;transform:none;}
  }

  /* ---------- generic layout helpers ---------- */
  .grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(16px,2vw,30px);}
  @media(max-width:860px){.grid3{grid-template-columns:1fr;}}
  .card{background:var(--white);border:1px solid var(--hairline);border-radius:var(--radius);box-shadow:var(--shadow-card);}
  .dark .card{background:rgba(255,255,255,.05);border-color:var(--hairline-dk);box-shadow:none;}
  .two{display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,5vw,72px);margin-top:28px;}
  @media(max-width:760px){.two{grid-template-columns:1fr;}}
  .pullquote{font-family:"Fraunces",serif;font-variation-settings:"opsz" 144;font-weight:600;letter-spacing:-.02em;font-size:clamp(26px,3.4vw,42px);line-height:1.16;color:var(--ink);max-width:26ch;margin:34px 0 0;}
  .pullquote em{color:var(--accent-text);font-style:normal;}

  /* ---------- hero ---------- */
  .hero{min-height:clamp(620px,90vh,920px);display:flex;align-items:center;}
  .herogrid{display:grid;grid-template-columns:1.02fr .98fr;gap:clamp(30px,5vw,64px);align-items:center;width:100%;}
  @media(max-width:980px){.herogrid{grid-template-columns:1fr;gap:46px;}}
  .hero h1{font-family:"Fraunces",serif;font-variation-settings:"opsz" 144;font-weight:600;letter-spacing:-.03em;line-height:1.02;font-size:var(--t-display);color:#fff;margin:0;max-width:14ch;text-wrap:balance;}
  .hero .lede{color:#fff;max-width:40ch;}
  .hero .cta{display:flex;flex-wrap:wrap;gap:14px;margin-top:36px;}
  .herostage{position:relative;}
  .heroframe{position:relative;z-index:2;border-radius:16px;overflow:hidden;border:1px solid rgba(255,255,255,.16);box-shadow:var(--shadow-hero);background:#11100e;}
  .heroframe .bar{display:flex;align-items:center;gap:7px;padding:11px 14px;background:rgba(255,255,255,.04);border-bottom:1px solid rgba(255,255,255,.08);}
  .heroframe .bar i{width:10px;height:10px;border-radius:50%;background:rgba(255,255,255,.22);display:block;}
  .heroframe img{display:block;width:100%;height:auto;}
  .hero-pop{position:absolute;z-index:3;background:var(--white);border:1px solid var(--hairline);border-radius:13px;box-shadow:0 18px 44px rgba(8,6,4,.4);padding:13px 15px;}
  .hero-pop.agent{left:-22px;top:54px;width:min(248px,62%);}
  .hero-pop.dispatch{right:-20px;bottom:34px;width:min(266px,66%);}
  @media(max-width:560px){.hero-pop.agent{display:none;}.hero-pop.dispatch{right:-6px;bottom:16px;width:min(290px,92%);}}
  .pop-head{display:flex;align-items:center;gap:9px;font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--accent-text);}
  .pop-head .pi{width:24px;height:24px;border-radius:7px;background:var(--accent-soft);display:grid;place-items:center;}
  .pop-head .pi svg{width:14px;height:14px;stroke:var(--accent-strong);fill:none;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round;}
  .pop-body{margin:9px 0 0;font-size:14px;font-weight:600;color:var(--ink);line-height:1.32;}
  .pop-sub{margin:3px 0 0;font-size:12px;color:var(--muted);}
  .pop-actions{display:flex;gap:7px;margin-top:11px;}
  .pop-btn{font-size:12px;font-weight:700;padding:7px 12px;border-radius:8px;border:0;background:var(--accent);color:#fff;}
  .pop-btn.ghost{background:var(--base);color:var(--ink);border:1px solid var(--hairline);}
  .pop-prog{height:5px;border-radius:3px;background:var(--accent-soft);margin-top:10px;overflow:hidden;}
  .pop-prog i{display:block;height:100%;width:62%;background:var(--accent);border-radius:3px;}
  .herocap{margin-top:30px;font-size:var(--t-small);color:var(--muted-dk);max-width:62ch;font-style:italic;}

  /* ---------- two kinds of work ---------- */
  .twocol{display:grid;grid-template-columns:1fr 1fr;gap:clamp(18px,2.4vw,28px);margin-top:42px;}
  @media(max-width:820px){.twocol{grid-template-columns:1fr;}}
  .twocard{padding:clamp(26px,3vw,38px);display:flex;flex-direction:column;gap:18px;}
  .twocard .tk-icon{width:50px;height:50px;border-radius:13px;display:grid;place-items:center;}
  .twocard.a .tk-icon{background:var(--accent-soft);}
  .twocard.a .tk-icon svg{stroke:var(--accent-strong);}
  .twocard.b .tk-icon{background:#EEF4F1;}
  .twocard.b .tk-icon svg{stroke:var(--success);}
  .twocard .tk-icon svg{width:26px;height:26px;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;}
  .twocard h3{font-family:"Fraunces",serif;font-variation-settings:"opsz" 144;font-weight:600;font-size:clamp(20px,2.1vw,28px);color:var(--ink);margin:0;letter-spacing:-.02em;}
  .twocard ul{list-style:none;margin:4px 0 0;padding:0;display:flex;flex-direction:column;gap:11px;}
  .twocard li{display:flex;align-items:flex-start;gap:11px;font-size:var(--t-body);color:var(--muted);line-height:1.4;}
  .twocard li::before{content:"";flex:0 0 auto;width:7px;height:7px;border-radius:50%;margin-top:9px;}
  .twocard.a li::before{background:var(--accent);}
  .twocard.b li::before{background:var(--success);}

  /* ---------- use case carousel ---------- */
  .uc-rail{display:flex;gap:clamp(16px,2vw,22px);margin-top:42px;overflow-x:auto;scroll-snap-type:x mandatory;padding:6px 2px 22px;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:var(--hairline) transparent;}
  .uc-rail::-webkit-scrollbar{height:8px;}
  .uc-rail::-webkit-scrollbar-thumb{background:var(--hairline);border-radius:99px;}
  .uc-card{flex:0 0 clamp(264px,82vw,348px);scroll-snap-align:start;background:var(--white);border:1px solid var(--hairline);border-radius:var(--radius);box-shadow:var(--shadow-card);padding:clamp(22px,2.4vw,30px);display:flex;flex-direction:column;gap:15px;text-decoration:none;color:inherit;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;}
  .uc-card:hover{transform:translateY(-3px);box-shadow:0 22px 52px rgba(33,28,24,.13);border-color:#D9CFC2;}
  .uc-icon{width:48px;height:48px;border-radius:12px;background:var(--accent-soft);display:grid;place-items:center;flex:0 0 auto;}
  .uc-icon svg{width:25px;height:25px;stroke:var(--accent-strong);fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;}
  .uc-card h3{font-family:"Fraunces",serif;font-variation-settings:"opsz" 72;font-weight:600;font-size:clamp(20px,2vw,25px);color:var(--ink);margin:0;letter-spacing:-.01em;}
  .uc-card p{font-size:var(--t-small);line-height:1.5;color:var(--muted);margin:0;}
  /* TODO(use-case visuals): replace .uc-viz placeholder strips with real captures —
     catalog diff, loading-bay timeline, site detected-event, supplier comparison, approval stepper. */
  .uc-viz{margin-top:auto;border:1px dashed #D9CFC2;border-radius:11px;background:var(--base);padding:11px 13px;display:flex;flex-direction:column;gap:7px;}
  .uc-viz .vrow{display:flex;align-items:center;gap:8px;font-size:11.5px;font-weight:600;color:var(--muted);}
  .uc-viz .vchip{font-size:10.5px;font-weight:700;padding:3px 8px;border-radius:6px;background:#E9E3DA;color:var(--muted);}
  .uc-viz .vchip.ok{background:#E4F1EA;color:var(--success);}
  .uc-viz .vbar{height:6px;flex:1;border-radius:4px;background:#E7E1D8;position:relative;overflow:hidden;}
  .uc-viz .vbar i{position:absolute;inset:0 40% 0 0;background:var(--accent);border-radius:4px;}
  .uc-more{display:inline-flex;align-items:center;gap:6px;font-size:var(--t-small);font-weight:700;color:var(--accent-text);}
  .uc-hint{margin-top:4px;font-size:var(--t-small);color:var(--muted);}

  /* ---------- numbered scenario steps ---------- */
  .steps{margin-top:28px;}
  .nrow{display:grid;grid-template-columns:74px 1fr;gap:clamp(16px,2.4vw,34px);padding:clamp(18px,2.4vw,26px) 0;border-top:1px solid var(--hairline);align-items:start;}
  .dark .nrow{border-top-color:var(--hairline-dk);}
  .nrow:last-child{border-bottom:1px solid var(--hairline);}
  .dark .nrow:last-child{border-bottom-color:var(--hairline-dk);}
  .nrow .num{font-family:"Fraunces",serif;font-weight:600;font-size:clamp(38px,4.4vw,58px);line-height:.9;color:var(--accent);}
  .nrow h3{font-family:"Fraunces",serif;font-variation-settings:"opsz" 144;font-weight:600;font-size:clamp(18px,1.9vw,25px);color:var(--ink);margin:0 0 6px;letter-spacing:-.02em;}
  .on-dark .nrow h3{color:#fff;}
  .nrow p{font-size:var(--t-body);line-height:1.5;color:var(--muted);margin:0;}
  .on-dark .nrow p{color:var(--muted-dk);}
  .nrow .tag{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:800;letter-spacing:.07em;text-transform:uppercase;color:var(--accent-text);background:var(--accent-soft);padding:4px 11px 4px 9px;border-radius:999px;margin-bottom:9px;}
  .nrow .tag svg{width:13px;height:13px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round;}

  /* ---------- product screenshot tabs ---------- */
  .scrtabs{display:flex;gap:10px;margin:34px 0 26px;flex-wrap:wrap;}
  .scrtab{font-family:inherit;font-size:var(--t-small);font-weight:700;color:var(--muted);background:transparent;border:1px solid var(--hairline);border-radius:9px;padding:10px 17px;cursor:pointer;transition:color .15s,background .15s,border-color .15s;}
  .scrtab.on{background:var(--ink);color:var(--white);border-color:var(--ink);}
  .scrtab:hover:not(.on){color:var(--ink);}
  .scrpane{display:none;}.scrpane.on{display:block;}
  .scrframe{border-radius:16px;overflow:hidden;box-shadow:0 30px 80px rgba(33,28,24,.18);border:1px solid var(--hairline);}
  .scrframe img{display:block;width:100%;height:auto;}
  .scrcap{text-align:center;margin-top:16px;font-size:var(--t-small);color:var(--muted);font-weight:600;}

  /* ---------- experiments -> operations ---------- */
  .gradlist{display:grid;grid-template-columns:repeat(2,1fr);gap:12px 28px;margin-top:30px;max-width:760px;}
  @media(max-width:680px){.gradlist{grid-template-columns:1fr;}}
  .gradlist li{list-style:none;display:flex;align-items:flex-start;gap:11px;font-size:var(--t-body);color:var(--muted-dk);}
  .gradlist li svg{flex:0 0 auto;width:19px;height:19px;stroke:var(--amber);fill:none;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round;margin-top:3px;}
  .gradlist li b{color:#fff;font-weight:600;}
  .calloutbar{margin-top:38px;border-left:3px solid var(--accent);padding:4px 0 4px 24px;font-family:"Fraunces",serif;font-variation-settings:"opsz" 144;font-weight:500;font-style:italic;font-size:clamp(20px,2.2vw,30px);color:#fff;letter-spacing:-.01em;}
  .closingline{margin-top:30px;font-size:var(--t-lede);font-weight:500;color:#fff;max-width:48ch;}

  /* ---------- six capabilities ---------- */
  .capgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(14px,1.8vw,22px);margin-top:42px;}
  @media(max-width:860px){.capgrid{grid-template-columns:1fr 1fr;}}
  @media(max-width:560px){.capgrid{grid-template-columns:1fr;}}
  .capcard{padding:clamp(22px,2.4vw,30px);display:flex;flex-direction:column;gap:13px;}
  .caphex{width:54px;height:60px;display:grid;place-items:center;background:var(--accent-soft);clip-path:polygon(50% 0,100% 25%,100% 75%,50% 100%,0 75%,0 25%);}
  .caphex svg{width:26px;height:26px;stroke:var(--accent-strong);fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;}
  .capcard.gov .caphex{background:#23211D;}
  .capcard.gov .caphex svg{stroke:var(--amber);}
  .capcard h3{font-family:"Fraunces",serif;font-variation-settings:"opsz" 144;font-weight:600;font-size:clamp(21px,2.1vw,27px);color:var(--ink);margin:0;letter-spacing:-.02em;}
  .capcard p{font-size:var(--t-small);line-height:1.5;color:var(--muted);margin:0;}

  /* ---------- integration map ---------- */
  .intmap{display:grid;grid-template-columns:1fr auto auto auto 1fr;gap:clamp(14px,2.4vw,32px);align-items:center;margin-top:44px;}
  @media(max-width:820px){.intmap{grid-template-columns:1fr;gap:22px;text-align:center;}}
  .intcol h4{font-size:var(--t-small);font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:0 0 16px;}
  .intchips{display:flex;flex-wrap:wrap;gap:9px;}
  .intcol--dest{text-align:right;}
  .intcol--dest .intchips{justify-content:flex-end;}
  @media(max-width:820px){.intchips{justify-content:center;}.intcol--dest{text-align:center;}.intcol--dest .intchips{justify-content:center;}}
  .intchip{display:inline-flex;align-items:center;gap:8px;background:var(--white);border:1px solid var(--hairline);border-radius:10px;padding:9px 14px;font-weight:600;font-size:var(--t-small);color:var(--ink);box-shadow:var(--shadow-card);}
  .intchip svg{width:17px;height:17px;stroke:var(--accent-strong);fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;}
  .intcore{display:flex;flex-direction:column;align-items:center;gap:12px;justify-self:center;}
  .intcore .disc{width:clamp(108px,13vw,140px);height:clamp(108px,13vw,140px);border-radius:50%;background:var(--ink-deep);display:grid;place-items:center;box-shadow:var(--shadow-hero);position:relative;overflow:hidden;}
  .intcore .disc img{width:46%;height:auto;position:relative;z-index:2;}
  .intcore .disc .apfield{z-index:1;}
  .intcore .lab{font-weight:800;font-size:var(--t-small);letter-spacing:.04em;color:var(--ink);}
  .intarrow{display:flex;align-items:center;justify-content:center;color:var(--muted-dk);}
  @media(max-width:820px){.intarrow{transform:rotate(90deg);}}
  .intarrow svg{width:30px;height:30px;stroke:currentColor;fill:none;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;}

  /* ---------- deployment tiles ---------- */
  .dtile{padding:clamp(24px,3vw,34px);display:flex;flex-direction:column;gap:14px;}
  .dtile .dicon{width:46px;height:46px;border-radius:12px;background:rgba(242,98,44,.16);display:grid;place-items:center;}
  .dtile .dicon svg{width:24px;height:24px;stroke:var(--amber);fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;}
  .dtile h4{font-family:"Fraunces",serif;font-weight:600;font-size:clamp(20px,2vw,28px);margin:0;color:#fff;}
  .dtile p{margin:0;font-size:var(--t-small);line-height:1.45;color:var(--muted-dk);}
  .modelpoints{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(16px,2vw,28px);margin-top:34px;}
  @media(max-width:780px){.modelpoints{grid-template-columns:1fr;}}
  .modelpoints .mp h4{font-family:"Fraunces",serif;font-weight:600;font-size:clamp(18px,1.8vw,23px);color:#fff;margin:0 0 7px;letter-spacing:-.01em;}
  .modelpoints .mp p{margin:0;font-size:var(--t-small);line-height:1.5;color:var(--muted-dk);}
  .modelpoints .mp .mk{display:inline-grid;place-items:center;width:38px;height:38px;border-radius:10px;background:var(--accent-soft);margin-bottom:13px;}
  .modelpoints .mp .mk svg{width:20px;height:20px;stroke:var(--accent-strong);fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;}

  /* ---------- trust / harness ---------- */
  .trustgrid{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(28px,4vw,60px);margin-top:38px;align-items:start;}
  @media(max-width:880px){.trustgrid{grid-template-columns:1fr;}}
  .trustlist{display:grid;grid-template-columns:1fr 1fr;gap:13px 24px;}
  @media(max-width:520px){.trustlist{grid-template-columns:1fr;}}
  .trustlist .ti{display:flex;align-items:flex-start;gap:11px;font-size:var(--t-small);font-weight:600;color:var(--ink);line-height:1.35;}
  .trustlist .ti svg{flex:0 0 auto;width:19px;height:19px;stroke:var(--success);fill:none;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round;margin-top:1px;}
  /* TODO(trust visuals): swap the staged Harness card for real UI snippets —
     permissions matrix, audit-log rows, scenario version history, a denied-action event. */
  .harnesscard{background:var(--ink-deep);border-radius:18px;padding:clamp(22px,2.6vw,30px);color:#fff;box-shadow:var(--shadow-hero);position:relative;overflow:hidden;}
  .harnesscard .hc-title{display:flex;align-items:center;gap:9px;font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--amber);position:relative;z-index:2;}
  .hc-row{display:flex;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid var(--hairline-dk);position:relative;z-index:2;}
  .hc-row:last-child{border-bottom:0;}
  .hc-ic{width:30px;height:30px;border-radius:8px;background:rgba(255,255,255,.07);display:grid;place-items:center;flex:0 0 auto;}
  .hc-ic svg{width:16px;height:16px;fill:none;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round;}
  .hc-row .hc-tx{font-size:13.5px;font-weight:600;color:#fff;line-height:1.3;}
  .hc-row .hc-tx span{display:block;font-weight:500;font-size:12px;color:var(--muted-dk);margin-top:2px;}
  .hc-state{margin-left:auto;font-size:11px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;padding:4px 9px;border-radius:999px;flex:0 0 auto;}
  .hc-state.ok{background:rgba(46,125,91,.22);color:#7FD2AC;}
  .hc-state.no{background:rgba(215,38,61,.2);color:#F2A4AF;}
  .hc-state.log{background:rgba(247,162,58,.18);color:var(--amber);}

  /* ---------- chips ---------- */
  .chiprow{display:flex;flex-wrap:wrap;gap:11px;margin-top:30px;}
  .chip{display:inline-flex;align-items:center;gap:10px;background:var(--white);border:1px solid var(--hairline);color:var(--ink);font-weight:600;font-size:var(--t-small);padding:11px 17px;border-radius:11px;}
  .chip .dot{width:8px;height:8px;border-radius:50%;background:var(--success);}

  /* ---------- pricing ---------- */
  .pricegrid{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(28px,4vw,60px);align-items:center;margin-top:30px;}
  @media(max-width:820px){.pricegrid{grid-template-columns:1fr;}}
  .pp{display:flex;gap:16px;align-items:flex-start;margin-bottom:22px;}
  .pp .pdot{flex:0 0 auto;width:11px;height:11px;border-radius:50%;background:var(--accent);margin-top:11px;}
  .pp p{margin:0;font-size:var(--t-body);color:var(--ink);}.pp p span{color:var(--muted);}
  .statcard{position:relative;overflow:hidden;background:var(--ink-deep);border-radius:22px;padding:clamp(34px,4vw,52px);color:#fff;box-shadow:var(--shadow-hero);}
  .statcard .sl{font-size:var(--t-small);font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--amber);position:relative;}
  .statcard .sn{font-family:"Fraunces",serif;font-weight:600;font-size:clamp(40px,5vw,72px);line-height:1;margin:14px 0 0;letter-spacing:-.02em;position:relative;}
  .statcard .sn span{font-size:.42em;color:var(--muted-dk);font-weight:500;white-space:nowrap;display:inline-block;}
  .statcard .ss{margin-top:20px;font-size:var(--t-body);line-height:1.45;color:var(--muted-dk);position:relative;max-width:30ch;}
  .pricecaveat{margin-top:18px;font-size:var(--t-small);color:var(--muted);font-style:italic;}
  .tiers-wrap{margin-top:clamp(40px,5vw,60px);overflow-x:auto;-webkit-overflow-scrolling:touch;border:1px solid var(--hairline);border-radius:16px;background:var(--white);box-shadow:var(--shadow-card);}
  .tiers{width:100%;min-width:820px;border-collapse:collapse;}
  .tiers th,.tiers td{text-align:left;padding:14px 18px;border-bottom:1px solid var(--hairline);vertical-align:top;font-size:var(--t-small);line-height:1.45;}
  .tiers tbody tr:last-child th,.tiers tbody tr:last-child td{border-bottom:0;}
  .tiers thead th{font-family:"Fraunces",serif;font-weight:600;font-size:clamp(19px,1.7vw,23px);color:var(--ink);letter-spacing:-.01em;padding-top:22px;padding-bottom:18px;border-bottom:2px solid var(--hairline);}
  .tiers tbody th{font-weight:700;color:var(--ink);}
  .tiers td{color:var(--muted);}
  .tiers .pr{font-weight:800;color:var(--ink);font-size:var(--t-body);white-space:nowrap;}
  .tiers .yes{color:var(--success);font-weight:800;font-size:17px;}
  .tiers .dash{color:var(--muted-dk);}
  .tiers th:first-child,.tiers td:first-child{position:sticky;left:0;background:var(--white);z-index:1;border-right:1px solid var(--hairline);min-width:170px;}
  .tiers .tcell{padding-top:18px;padding-bottom:22px;}
  .tiers .tcell a{display:inline-flex;align-items:center;justify-content:center;font-weight:700;font-size:var(--t-small);padding:10px 16px;border-radius:10px;text-decoration:none;white-space:nowrap;transition:background .15s ease,border-color .15s ease;}
  .tiers .tcell a.pri{background:var(--accent);color:#fff;}
  .tiers .tcell a.pri:hover{background:var(--accent-strong);}
  .tiers .tcell a.sec{border:1px solid var(--hairline);color:var(--ink);}
  .tiers .tcell a.sec:hover{border-color:var(--muted);}

  /* ---------- start small timeline ---------- */
  .timeline{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;margin-top:40px;}
  .tstep{position:relative;}
  .tstep::before{content:"";position:absolute;top:26px;left:50%;width:100%;height:3px;background:var(--hairline);z-index:0;}
  .tstep:last-child::before{display:none;}
  .tnode{position:relative;z-index:1;width:52px;height:52px;border-radius:50%;background:var(--white);border:3px solid var(--accent);display:grid;place-items:center;font-family:"Fraunces",serif;font-weight:600;font-size:23px;color:var(--accent-text);}
  .tstep.done .tnode{background:var(--accent);color:#fff;}
  .tbody h5{margin:20px 0 5px;font-family:"Fraunces",serif;font-weight:600;font-size:clamp(17px,1.7vw,22px);color:var(--ink);letter-spacing:-.01em;}
  .tbody p{margin:0;font-size:var(--t-small);color:var(--muted);line-height:1.45;}
  @media(max-width:760px){
    .timeline{grid-template-columns:1fr;gap:0;}
    .tstep{display:grid;grid-template-columns:52px 1fr;gap:18px;padding-bottom:26px;align-items:start;}
    .tstep::before{top:52px;left:26px;width:3px;height:100%;transform:translateX(-1.5px);}
    .tstep:last-child{padding-bottom:0;}
    .tbody h5{margin:6px 0 4px;}
  }

  /* ---------- contact form ---------- */
  .close h2{font-size:var(--t-display);}
  .closecta{margin-top:30px;font-size:var(--t-body);line-height:1.5;color:#fff;max-width:50ch;border-left:3px solid var(--accent);padding-left:24px;}
  .formsec{background:var(--white);border-top:1px solid var(--hairline);}
  .formgrid{display:grid;grid-template-columns:.92fr 1.08fr;gap:clamp(30px,5vw,72px);align-items:start;}
  @media(max-width:860px){.formgrid{grid-template-columns:1fr;}}
  .lead-form{display:flex;flex-direction:column;gap:18px;}
  .frow{display:grid;grid-template-columns:1fr 1fr;gap:18px;}
  @media(max-width:520px){.frow{grid-template-columns:1fr;}}
  .field label{display:block;font-size:var(--t-small);font-weight:700;color:var(--ink);margin-bottom:7px;}
  .field input,.field textarea{width:100%;font-family:inherit;font-size:var(--t-body);color:var(--ink);background:var(--base);border:1px solid var(--hairline);border-radius:11px;padding:13px 15px;outline:none;transition:border .15s ease,box-shadow .15s ease;}
  .field input:focus,.field textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);}
  .field textarea{min-height:120px;resize:vertical;line-height:1.5;}
  .hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden;}
  .turnstile-shell{min-height:66px;}
  .inline-note{font-size:var(--t-small);color:var(--muted);margin:0;}
  .form-actions{display:flex;align-items:center;gap:18px;flex-wrap:wrap;}
  .form-status{font-size:var(--t-small);font-weight:600;margin:0;}
  .form-status.is-success{color:var(--success);}.form-status.is-error{color:var(--accent-strong);}
  .lead-success{display:none;flex-direction:column;align-items:flex-start;gap:13px;width:100%;box-sizing:border-box;padding:clamp(28px,4vw,40px);background:var(--white);border:1px solid var(--hairline);border-radius:var(--radius);box-shadow:var(--shadow-card);}
  .lead-success.show{display:flex;}
  .lead-success .ok{display:grid;place-items:center;width:46px;height:46px;border-radius:50%;background:var(--success);color:#fff;flex:none;}
  .lead-success .ok svg{width:24px;height:24px;}
  .lead-success h3{font-family:"Fraunces",serif;font-variation-settings:"opsz" 144;font-weight:600;letter-spacing:-.02em;font-size:clamp(23px,2.4vw,31px);line-height:1.08;color:var(--ink);margin:0;}
  .lead-success p{font-size:var(--t-body);color:var(--muted);margin:0;max-width:38ch;line-height:1.5;}

  /* ---------- footer ---------- */
  .footer{background:var(--ink-deep);color:var(--muted-dk);padding:48px 0;}
  .footer .wrap{display:flex;align-items:center;gap:18px;flex-wrap:wrap;}
  .footer .lockup{height:28px;width:auto;}
  .footer a{color:var(--muted-dk);text-decoration:none;font-size:var(--t-small);font-weight:600;}
  .footer a:hover{color:#fff;}
  .footer .sp{flex:1;}
  .footer .links{display:flex;gap:22px;flex-wrap:wrap;}
  .footer .cp{font-size:var(--t-small);width:100%;color:#7a7268;margin:0;}

.uc-caps{display:flex;flex-wrap:wrap;gap:7px;margin-top:14px;}
.uc-caps span{font-size:11px;font-weight:700;letter-spacing:.01em;padding:4px 10px;border-radius:999px;background:var(--accent-soft);color:var(--accent-text);}

.tiers td,.tiers th{transition:background .12s ease;}
.tiers tbody tr:hover>th,.tiers tbody tr:hover>td{background:#FCF4EE;}
.tiers tbody tr:hover>th:first-child,.tiers tbody tr:hover>td:first-child{background:#FCF4EE;}

.uc-viz .vchip.flag{background:#FBE3DE;color:var(--accent-text);}
.uc-viz .vchip.ok::before{content:"\2713 ";}
