@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(./bricolage-grotesque-vietnamese-wght-normal-BUzh504Q.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(./bricolage-grotesque-latin-ext-wght-normal-CcLUaPy7.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(./bricolage-grotesque-latin-wght-normal-DLoelf7F.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(data:font/woff2;base64,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) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(./manrope-cyrillic-wght-normal-Dvxsihut.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(./manrope-greek-wght-normal-DL7QRZyv.woff2) format("woff2-variations");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(./manrope-vietnamese-wght-normal-usUDDRr7.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(./manrope-latin-ext-wght-normal-Ch3YOpNY.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(./manrope-latin-wght-normal-DHIcAJRg.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg: #F5F7F6;--surface: #FFFFFF;--sunken: #EAEFEC;--ink: #0D1B16;--ink-2: #41554D;--ink-3: #6B7F77;--line: #DDE4E1;--line-strong: #BFCBC5;--brand: #008751;--brand-deep: #006B41;--brand-tint: #E0F2E9;--on-brand: #FFFFFF;--hero: #00704A;--night: #0B1B15;--mint: #7CE3B3;--bad: #C23B2B;--bad-tint: #FCE8E4;--warn: #9C5B00;--warn-tint: #FBEED3;--ok: #0A7A48;--ok-tint: #DDF1E6;--shadow: 0 20px 50px rgba(13, 27, 22, .22);--display: "Bricolage Grotesque Variable", "Bricolage Grotesque", system-ui, -apple-system, "Segoe UI", sans-serif;--body: "Manrope Variable", "Manrope", system-ui, -apple-system, "Segoe UI", sans-serif;--pad: clamp(20px, 4vw, 48px)}*{box-sizing:border-box}html{color-scheme:light}html[data-theme=dark]{color-scheme:dark}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--body);font-size:15px;line-height:1.55;-webkit-font-smoothing:antialiased}h1,h2,h3,p,dl,dd,dt,ol,ul{margin:0}ol,ul{padding:0;list-style:none}h1,h2{font-family:var(--display);letter-spacing:-.015em;text-wrap:balance}h1{font-size:clamp(32px,4.2vw,46px);line-height:1.05;font-weight:700}h2{font-size:22px;line-height:1.2;font-weight:700}h3{font-size:15px;font-weight:700}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.muted{color:var(--ink-2)}.small{font-size:13px}.num{font-variant-numeric:tabular-nums}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}.wrap{max-width:1200px;margin:0 auto;padding-inline:var(--pad)}.page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap}.page-head h1{font-size:clamp(30px,3.6vw,40px)}.page-head p{margin-top:10px;max-width:58ch;color:var(--ink-2);font-size:16px}.sample-tag{padding:5px 12px;border-radius:999px;border:1px solid var(--line-strong);font-size:12.5px;font-weight:600;color:var(--ink-2);white-space:nowrap}.block{border-top:1px solid var(--line-strong);padding-top:22px;min-width:0}.block-head{display:flex;align-items:baseline;justify-content:space-between;gap:8px 20px;flex-wrap:wrap;margin-bottom:20px}.block-head p{color:var(--ink-2);font-size:13.5px}.two-col{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:44px}.two-col.tight{gap:16px}.three{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.three h3{margin-bottom:4px}.three p{color:var(--ink-2)}@media(max-width:900px){.two-col,.three{grid-template-columns:minmax(0,1fr);gap:28px}.two-col.tight{gap:16px}}.status{display:inline-flex;align-items:center;gap:7px;font-weight:700;font-size:13.5px;white-space:nowrap}.status i{width:8px;height:8px;border-radius:50%;background:currentColor}.status-ontrack{color:var(--brand-deep)}.status-overdue{color:var(--bad)}.status-returned{color:var(--warn)}.status-paid{color:var(--ok)}.dot{display:inline-block;width:8px;height:8px;border-radius:50%;flex:none}.dot.ontrack{background:var(--brand)}.dot.overdue{background:var(--bad)}.dot.returned{background:var(--warn)}.dot.paid{background:var(--ok)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:11px 18px;border-radius:9px;border:1px solid var(--line-strong);background:var(--surface);font-weight:700}.btn:hover{background:var(--sunken)}.btn.primary{background:var(--brand);border-color:var(--brand);color:var(--on-brand)}.btn.primary:hover{background:var(--brand-deep);border-color:var(--brand-deep)}.btn.block{width:100%}.btn:disabled{opacity:.5;cursor:not-allowed}.icon-btn{flex:none;width:36px;height:36px;display:grid;place-items:center;border-radius:9px;border:1px solid var(--line-strong);background:var(--surface)}.icon-btn:hover{background:var(--sunken)}.link{border:0;background:transparent;padding:0;color:var(--brand-deep);text-decoration:underline;text-underline-offset:3px;font-weight:600}.link.strong{font-weight:700;font-variant-numeric:tabular-nums}.field{display:grid;gap:6px}.field label{font-size:13.5px;font-weight:700}.input,.select,.textarea{width:100%;padding:11px 12px;border-radius:9px;border:1px solid var(--line-strong);background:var(--surface)}.textarea{min-height:92px;resize:vertical}.form{display:grid;gap:16px;max-width:640px;margin-top:24px}.toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 24px}.tabs{display:flex;flex-wrap:wrap;gap:4px 22px}.tabs button{border:0;border-bottom:2px solid transparent;background:transparent;padding:8px 0;font-weight:700;color:var(--ink-3)}.tabs button span{font-weight:600;margin-left:2px}.tabs button:hover{color:var(--ink)}.tabs button[aria-pressed=true]{color:var(--ink);border-bottom-color:var(--ink)}.search{position:relative;flex:1 1 240px;max-width:340px}.search svg{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--ink-3)}.search .input{padding-left:38px}.scope{margin-top:-20px;color:var(--ink-2)}.table-wrap{overflow-x:auto;border-top:1px solid var(--line-strong);margin-top:-20px}.table{width:100%;min-width:840px;border-collapse:collapse}.table th{text-align:left;font-size:12.5px;font-weight:700;color:var(--ink-3);padding:14px 12px;border-bottom:1px solid var(--line)}.table td{padding:16px 12px;border-bottom:1px solid var(--line);vertical-align:middle}.table tbody tr:hover td{background:var(--sunken)}.table .right{text-align:right}.cell-sub{font-size:12.5px;color:var(--ink-2)}.meter{position:relative;height:5px;width:120px;border-radius:99px;background:var(--sunken);margin-top:7px}.meter i{position:absolute;inset:0 auto 0 0;border-radius:99px;background:var(--brand)}.meter i.over{background:var(--bad)}.meter u{position:absolute;top:-3px;bottom:-3px;left:66.67%;width:2px;background:var(--ink-3)}.empty{padding:44px 16px;text-align:center;color:var(--ink-2);display:grid;gap:12px;justify-items:center}.route-scroll{overflow-x:auto;margin:0 calc(-1 * var(--pad));padding:4px var(--pad) 10px}.route{display:grid;grid-template-columns:repeat(7,minmax(136px,1fr))}.station{position:relative;padding:46px 14px 0 0;min-width:0}.station:before{content:"";position:absolute;top:13px;left:15px;right:-15px;height:4px;border-radius:2px;background:var(--brand)}.station.is-last:before{display:none}.station-node{position:absolute;top:0;left:0;z-index:1;width:30px;height:30px;border-radius:50%;display:grid;place-items:center;border:3px solid var(--brand);background:var(--surface);color:var(--brand-deep);font-weight:800;font-size:13px;padding:0}.station-node:hover{background:var(--brand);color:var(--on-brand)}.is-late .station-node{border-color:var(--bad);color:var(--bad)}.is-late .station-node:hover{background:var(--bad);color:#fff}.is-last .station-node{background:var(--brand);color:var(--on-brand)}.station-title{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.station-title h3{font-size:15px;line-height:1.25}.station-count{font-weight:800;color:var(--ink-3);font-variant-numeric:tabular-nums}.station-who{font-size:12.5px;color:var(--ink-3);margin-top:2px}.tags{margin-top:16px;display:grid;gap:8px}.tag{width:100%;text-align:left;display:grid;gap:1px;padding:9px 11px;border-radius:8px;border:1px solid var(--line-strong);background:var(--surface)}.tag:hover{border-color:var(--ink)}.tag-ref{font-weight:700;font-size:13.5px;font-variant-numeric:tabular-nums}.tag-meta{font-size:12.5px;color:var(--ink-2)}.tag-overdue{background:var(--bad-tint);border-color:var(--bad)}.tag-overdue .tag-meta{color:var(--bad);font-weight:600}.tag-returned{background:var(--warn-tint);border-color:transparent}.tag-returned .tag-meta{color:var(--warn);font-weight:600}.tag-paid{background:var(--ok-tint);border-color:transparent}.tag-paid .tag-meta{color:var(--ok);font-weight:600}.legend{display:flex;flex-wrap:wrap;gap:8px 22px;margin-top:22px;font-size:12.5px;color:var(--ink-2)}.legend li{display:inline-flex;align-items:center;gap:8px}.list{display:grid}.list-row{width:100%;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:3px 16px;text-align:left;padding:14px 0;border:0;border-top:1px solid var(--line);background:transparent}.list li:first-child .list-row{border-top:0;padding-top:0}.list-row:hover .list-main{text-decoration:underline}.list-sub{grid-column:1 / -1;font-size:13px;color:var(--ink-2)}.feed{display:grid;gap:16px}.feed li{display:grid;gap:1px}.feed time{font-size:12.5px;color:var(--ink-3)}.seg{display:inline-flex;padding:4px;gap:4px;border-radius:10px;background:var(--sunken);flex-wrap:wrap}.seg button{padding:8px 16px;border:0;border-radius:7px;background:transparent;font-weight:700;color:var(--ink-2)}.seg button[aria-pressed=true]{background:var(--surface);color:var(--ink);box-shadow:0 1px 2px #00000026}.scrim{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;background:#06120e80}.drawer{position:fixed;top:0;right:0;bottom:0;z-index:41;width:min(500px,100%);overflow-y:auto;background:var(--surface);box-shadow:var(--shadow);padding:26px 24px 32px;display:grid;gap:26px;align-content:start;animation:slide .22s ease-out}@keyframes slide{0%{transform:translate(24px);opacity:0}to{transform:none;opacity:1}}.drawer-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.drawer-head h2{font-size:24px}.drawer-ref{font-size:13px;color:var(--ink-3);font-weight:700;margin-bottom:4px}.drawer-sub{margin-bottom:16px;font-size:14px}.facts{display:grid;grid-template-columns:1fr 1fr;gap:16px 20px}.facts div{display:grid;gap:2px;min-width:0}.facts dt{font-size:12.5px;color:var(--ink-3)}.facts dd{font-weight:700;overflow-wrap:anywhere}.note-box{padding:14px 16px;border-radius:10px;display:grid;gap:4px;font-size:14px}.note-box.warn{background:var(--warn-tint)}.note-box.warn b{color:var(--warn)}.note-box.ok{background:var(--ok-tint)}.note-box.ok b{color:var(--ok)}.steps{display:grid}.step{position:relative;display:grid;grid-template-columns:28px minmax(0,1fr);gap:14px;padding-bottom:18px}.step:last-child{padding-bottom:0}.step:before{content:"";position:absolute;left:13px;top:28px;bottom:0;width:2px;background:var(--line-strong)}.step:last-child:before{display:none}.step.done:before{background:var(--brand)}.mark{position:relative;z-index:1;width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:var(--sunken);color:var(--ink-3);font-size:12px;font-weight:800}.step.done .mark{background:var(--brand);color:var(--on-brand)}.step.current .mark{background:var(--surface);border:3px solid var(--brand);color:var(--brand-deep)}.step.current.late .mark{border-color:var(--bad);color:var(--bad)}.step.current.held .mark{border-color:var(--warn);color:var(--warn)}.step b{display:block;font-size:14.5px;line-height:1.3}.step.todo b{color:var(--ink-2);font-weight:600}.step span{font-size:13px;color:var(--ink-2)}.actions{display:grid;gap:10px}.actor{font-size:13px;color:var(--ink-2)}.history{display:grid;gap:12px;font-size:13.5px}.history li{display:grid;gap:1px}.history time{color:var(--ink-3);font-size:12.5px}.toast{position:fixed;left:50%;transform:translate(-50%);bottom:20px;z-index:60;background:var(--ink);color:var(--bg);padding:12px 20px;border-radius:10px;font-weight:700;font-size:14px;max-width:calc(100% - 32px);box-shadow:var(--shadow)}@media(max-width:900px){.search{max-width:none;flex-basis:100%}}.kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}.kpi{display:flex;flex-direction:column-reverse;gap:4px;padding:4px 24px;border-left:1px solid var(--line-strong);min-width:0}.kpi:first-child{padding-left:0;border-left:0}.kpi dd{font-family:var(--display);font-weight:700;font-size:clamp(34px,4vw,52px);line-height:1;letter-spacing:-.02em;font-variant-numeric:tabular-nums}.kpi dt{font-size:13.5px;color:var(--ink-2)}.kpi.bad dd{color:var(--bad)}.impact{display:grid;gap:40px;min-width:0}.verdict{display:grid;grid-template-columns:minmax(0,1fr) 80px minmax(0,1fr);gap:28px;align-items:center}.verdict-col{display:grid;gap:8px}.verdict-num{font-family:var(--display);font-weight:700;font-size:clamp(76px,11vw,152px);line-height:.9;letter-spacing:-.04em}.verdict-col.before .verdict-num{color:var(--ink-3)}.verdict-col.after .verdict-num{color:var(--brand)}.verdict-label{color:var(--ink-2);max-width:30ch}.verdict-line{width:80px;color:var(--ink-3)}.impact-chart h3{font-family:var(--display);font-size:19px}.impact-chart .block-head{margin-bottom:18px}.caveat{font-size:13px;color:var(--ink-2);max-width:70ch}.desks{display:grid;gap:12px}.desk-row{display:grid;grid-template-columns:minmax(120px,210px) minmax(0,1fr) 48px;gap:16px;align-items:center}.desk-row b{text-align:right}.track{height:14px;border-radius:8px;background:var(--sunken);overflow:hidden}.fill{height:100%;border-radius:8px;background:var(--ink-3);transition:width .5s ease}.fill.new{background:var(--brand)}.total-row{display:flex;justify-content:space-between;gap:12px;margin-top:18px;padding-top:16px;border-top:1px solid var(--line);font-weight:700}@media(max-width:900px){.kpis{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 0}.kpi:nth-child(odd){padding-left:0;border-left:0}.verdict{grid-template-columns:minmax(0,1fr);gap:16px}.verdict-line{transform:rotate(90deg);width:48px;margin-left:24px}.desk-row{grid-template-columns:minmax(84px,120px) minmax(0,1fr) 40px;gap:10px}}.site-header{position:sticky;top:0;z-index:30;background:#f5f7f6eb;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}.site-header .bar{display:flex;align-items:center;justify-content:space-between;gap:20px;height:68px}.site-brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink);font-family:var(--display);font-weight:700;font-size:19px;letter-spacing:.06em}.site-nav{display:flex;align-items:center;gap:4px}.nav-link{border:0;background:transparent;padding:8px 12px;border-radius:8px;font-weight:600;color:var(--ink-2);text-decoration:none}.nav-link:hover{color:var(--ink);background:var(--sunken)}.nav-link.active{color:var(--brand-deep)}.nav-cta{margin-left:8px;padding:9px 16px}.menu-btn{display:none;width:40px;height:40px;border:1px solid var(--line-strong);border-radius:10px;background:var(--surface);position:relative}.menu-btn span{position:absolute;left:11px;right:11px;height:2px;background:var(--ink);border-radius:2px}.menu-btn span:first-child{top:15px}.menu-btn span:last-child{top:23px}.hero{background:var(--hero);color:#fff}.hero-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:56px;align-items:center;padding:84px 0 56px}.hero-copy h1{font-size:clamp(44px,6.6vw,84px);line-height:.98;letter-spacing:-.03em;color:#fff}.hero-copy p{font-size:19px;line-height:1.5;color:#ffffffe0;margin-top:24px;max-width:46ch}.hero-cta{display:flex;gap:12px;flex-wrap:wrap;margin-top:34px}.hero-primary{background:#fff;color:var(--hero);border-color:#fff;font-size:16px;padding:14px 22px;text-decoration:none}.hero-primary:hover{background:var(--brand-tint)}.hero-ghost{background:transparent;color:#fff;border-color:#ffffff8c;font-size:16px;padding:14px 22px}.hero-ghost:hover{background:#ffffff1f}.hero-copy .hero-note{font-size:14px;color:#ffffffb8;margin-top:20px}.mock{position:relative;padding:76px 24px 30px 30px}.mock-card{background:#fff;color:var(--ink);border-radius:18px;box-shadow:0 30px 70px #00000059;overflow:hidden}.mock-bar{display:flex;gap:6px;padding:12px 16px;background:var(--sunken)}.mock-bar i{width:9px;height:9px;border-radius:50%;background:var(--line-strong)}.mock-body{padding:22px;display:grid;gap:16px}.mock-top{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.mock-ref{font-size:12.5px;font-weight:700;color:var(--ink-3)}.mock-top h3{font-family:var(--display);font-size:21px;line-height:1.2;margin-top:4px}.mock-sub{font-size:13.5px;color:var(--ink-2)}.mock-late{display:inline-flex;align-items:center;gap:6px;color:var(--bad);font-weight:700;font-size:13px;white-space:nowrap}.mock-late i{width:8px;height:8px;border-radius:50%;background:var(--bad)}.mock-amount{font-family:var(--display);font-weight:700;font-size:32px;letter-spacing:-.02em}.mock-route{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.mock-route li{height:8px;border-radius:4px;background:var(--sunken)}.mock-route li.done{background:var(--brand)}.mock-route li.now{background:var(--bad)}.mock-where{font-size:14px;color:var(--ink-2)}.mock-where b{display:block;color:var(--ink);font-size:15px}.mock-actions{display:flex;gap:10px;flex-wrap:wrap}.mock-btn{display:inline-flex;align-items:center;gap:6px;padding:9px 14px;border-radius:9px;border:1px solid var(--line-strong);font-weight:700;font-size:13.5px}.mock-btn.primary{background:var(--brand);border-color:var(--brand);color:#fff}.float{position:absolute;background:#fff;color:var(--ink);padding:11px 15px;border-radius:12px;box-shadow:0 14px 40px #00000047;font-weight:700;font-size:13.5px;display:flex;align-items:center;gap:8px}.chip-a{left:0;bottom:0}.chip-b{right:0;top:0;flex-direction:column;align-items:flex-start;gap:0}.chip-b b{font-family:var(--display);font-size:20px;color:var(--brand-deep)}.chip-b small{font-size:11.5px;color:var(--ink-3);font-weight:600}.hero-route-scroll{overflow-x:auto}.hero-route{display:grid;grid-template-columns:repeat(7,minmax(124px,1fr));padding:8px 0 52px}.hero-route li{position:relative;padding:28px 12px 0 0;font-size:13.5px;font-weight:600;color:#ffffffe6}.hero-route li:before{content:"";position:absolute;top:8px;left:0;width:14px;height:14px;border-radius:50%;background:#fff}.hero-route li:after{content:"";position:absolute;top:14px;left:14px;right:-14px;height:2px;background:#ffffff73}.hero-route li:last-child:after{display:none}.hero-route li:last-child:before{background:var(--mint)}.section{padding:104px 0;scroll-margin-top:68px}.section.alt{background:var(--sunken)}.section-head{max-width:720px;margin-bottom:48px;display:grid;gap:16px}.section-head h2{font-size:clamp(32px,4.4vw,52px);line-height:1.04;letter-spacing:-.025em}.section-head p{font-size:18px;color:var(--ink-2);line-height:1.55}.split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:64px;align-items:center}.split .section-head{margin-bottom:0}.compare{margin:0;background:#fff;border:1px solid var(--line);border-radius:22px;padding:26px}.compare svg{width:100%;height:auto;display:block}.compare figcaption{margin-top:10px;font-size:13px;color:var(--ink-3)}.svg-title{font:700 14px var(--body);fill:var(--ink)}.svg-note{font:700 13px var(--body)}.svg-note.bad{fill:var(--bad)}.svg-note.ok{fill:var(--ok)}.how-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.how-card{background:#fff;border:1px solid var(--line);border-radius:20px;overflow:hidden;display:flex;flex-direction:column}.how-visual{min-height:210px;padding:24px;display:grid;place-items:center;align-content:center;gap:14px;border-bottom:1px solid var(--line)}.how-visual.tint{background:var(--brand-tint)}.how-text{padding:24px;display:grid;gap:8px;align-content:start}.how-text h3{font-family:var(--display);font-size:21px;line-height:1.2;letter-spacing:-.01em}.how-text p{color:var(--ink-2)}.docs{display:grid;gap:8px;width:100%;max-width:270px}.docs li{display:flex;align-items:center;gap:10px;background:#fff;border-radius:10px;padding:10px 14px;font-weight:600;font-size:14px;box-shadow:0 1px 3px #0000001a}.docs svg{color:var(--brand);flex:none}.mini-route{display:flex;gap:6px;width:100%;max-width:270px}.mini-route i{flex:1;height:8px;border-radius:4px;background:var(--sunken)}.mini-route .d{background:var(--brand)}.mini-route .n{background:var(--warn)}.mini-query{max-width:270px;font-size:13.5px;background:var(--warn-tint);padding:12px 14px;border-radius:10px;color:var(--ink-2)}.mini-query b{display:block;color:var(--warn)}.paid-chip{background:#fff;border-radius:14px;padding:18px 24px;display:grid;gap:4px;box-shadow:0 6px 18px #0000001a}.paid-amount{font-family:var(--display);font-weight:700;font-size:38px;letter-spacing:-.02em;line-height:1.1}.paid-line{display:flex;align-items:center;gap:8px;color:var(--ok);font-weight:700;font-size:14px}.browser{background:#fff;border:1px solid var(--line-strong);border-radius:18px;box-shadow:var(--shadow);overflow:hidden}.browser-bar{display:flex;align-items:center;gap:6px;padding:12px 16px;background:var(--sunken);border-bottom:1px solid var(--line)}.browser-bar i{width:10px;height:10px;border-radius:50%;background:var(--line-strong)}.browser-bar span{margin-left:12px;font-size:12.5px;font-weight:600;color:var(--ink-3)}.browser-body{padding:28px;display:grid;gap:28px;min-width:0}.browser-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.browser-kpis div{display:flex;flex-direction:column-reverse;gap:2px}.browser-kpis dd{font-family:var(--display);font-weight:700;font-size:clamp(26px,3.2vw,38px);line-height:1.05;letter-spacing:-.02em;font-variant-numeric:tabular-nums}.browser-kpis dt{font-size:13px;color:var(--ink-2)}.browser-kpis .bad dd{color:var(--bad)}.browser-body .route-scroll{margin:0;padding:4px 0 10px}.try-cta{margin-top:28px}.try-cta .btn{text-decoration:none}.pilot-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.pc{padding:30px;border-radius:22px;min-height:220px;display:flex;flex-direction:column;justify-content:space-between;gap:24px}.pc h3{font-family:var(--display);font-size:clamp(25px,2.7vw,33px);line-height:1.08;letter-spacing:-.02em;font-weight:700}.pc p{font-size:16px;opacity:.88}.pc.green{background:var(--hero);color:#fff}.pc.night{background:var(--night);color:#fff}.pc.tint{background:var(--brand-tint);color:var(--ink)}.impact-card{margin-top:20px;background:#fff;border:1px solid var(--line);border-radius:22px;padding:clamp(22px,4vw,44px)}.hosting{background:var(--night);color:#fff;padding:104px 0;scroll-margin-top:68px}.hosting-copy h2{font-size:clamp(32px,4.2vw,50px);line-height:1.05;letter-spacing:-.025em;color:#fff}.hosting-copy p{margin-top:20px;font-size:18px;line-height:1.55;color:#ffffffc2;max-width:48ch}.stack{display:grid}.layer{padding:20px 24px;border-radius:16px;border:1px solid rgba(255,255,255,.2);background:#ffffff0d;display:grid;gap:2px}.layer b{font-size:17px}.layer span{color:#ffffffb8;font-size:14px}.layer.core{background:var(--brand);border-color:var(--brand)}.layer.core span{color:#ffffffeb}.layer.base{background:#fff;color:var(--night);border-color:#fff}.layer.base span{color:var(--ink-2)}.stack-link{height:24px;width:2px;background:#fff6;margin:0 auto}.timeline{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}.timeline li{position:relative;padding-top:38px;display:grid;gap:2px;align-content:start}.timeline li:before{content:"";position:absolute;top:0;left:0;width:22px;height:22px;border-radius:50%;border:3px solid var(--line-strong);background:#fff;z-index:1}.timeline li.now:before{background:var(--brand);border-color:var(--brand)}.timeline li:after{content:"";position:absolute;top:9px;left:22px;right:-24px;height:3px;background:var(--line-strong)}.timeline li:last-child:after{display:none}.timeline b{font-family:var(--display);font-size:20px;line-height:1.2}.timeline span{color:var(--ink-2)}.contact{background:var(--hero);color:#fff;padding:104px 0;scroll-margin-top:68px}.contact .split{align-items:start}.contact-copy h2{font-size:clamp(34px,4.6vw,56px);line-height:1.03;letter-spacing:-.03em;color:#fff}.contact-copy p{margin-top:20px;font-size:18px;color:#ffffffe0}.contact-copy ul{margin-top:14px;display:grid;gap:10px;padding-left:20px;list-style:disc;font-size:17px;color:#ffffffe6;max-width:46ch}.form-card{background:#fff;color:var(--ink);border-radius:22px;padding:clamp(22px,3vw,34px);box-shadow:0 30px 70px #0000004d}.form-card .form{margin-top:0;max-width:none}.site-footer{background:var(--night);color:#ffffffb3;padding:44px 0}.footer-grid{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:32px;align-items:center}.footer-brand{display:flex;align-items:center;gap:12px}.footer-brand b{display:block;color:#fff;font-family:var(--display);letter-spacing:.06em;font-size:17px}.footer-brand span{font-size:12.5px}.footer-grid p{font-size:13.5px;max-width:52ch}.footer-sign{color:#fff;font-weight:600}.demo{padding:40px 0 88px;min-height:70vh}.demo-bar{display:flex;justify-content:space-between;align-items:flex-end;gap:12px 24px;flex-wrap:wrap;margin-bottom:36px;border-bottom:1px solid var(--line-strong)}.demo-title{display:grid;gap:2px;padding-bottom:12px}.demo-title b{font-family:var(--display);font-size:22px}.demo-title span{color:var(--ink-2);font-size:14px}.demo-tabs{display:flex;gap:22px}.demo-tabs a{padding:10px 0;margin-bottom:-1px;border-bottom:3px solid transparent;font-weight:700;color:var(--ink-3);text-decoration:none}.demo-tabs a:hover{color:var(--ink)}.demo-tabs a.active{color:var(--ink);border-bottom-color:var(--brand)}.demo-body{display:grid;gap:44px;align-content:start;min-width:0}@media(max-width:900px){.site-header .bar{height:60px}.menu-btn{display:block}.site-nav{display:none;position:absolute;top:60px;left:0;right:0;flex-direction:column;align-items:stretch;gap:2px;padding:12px var(--pad) 20px;background:var(--bg);border-bottom:1px solid var(--line-strong)}.site-nav.open{display:flex}.nav-link{text-align:left;padding:12px}.nav-cta{margin:8px 0 0}.hero-grid{grid-template-columns:minmax(0,1fr);gap:36px;padding:52px 0 36px}.hero-copy p{font-size:17px}.mock{padding:76px 8px 26px}.split{grid-template-columns:minmax(0,1fr);gap:36px}.section,.hosting,.contact{padding:68px 0;scroll-margin-top:60px}.section-head{margin-bottom:32px}.how-grid,.pilot-cards{grid-template-columns:minmax(0,1fr)}.pc{min-height:170px}.browser-body{padding:18px}.timeline{grid-template-columns:minmax(0,1fr);gap:0}.timeline li{padding:0 0 26px 40px}.timeline li:after{top:24px;bottom:0;left:10px;right:auto;width:3px;height:auto}.footer-grid{grid-template-columns:minmax(0,1fr);gap:16px}.demo{padding-top:28px}}
