@font-face{font-family:Fraunces;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/7452ca4a93358909-s.woff2) format("woff2");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:Fraunces;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/e0ecb571b51ea3b5-s.p.woff2) format("woff2");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:Fraunces;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/6e8c7cb283336a9d-s.p.woff2) format("woff2");unicode-range:u+00??,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:Fraunces Fallback;src:local("Times New Roman");ascent-override:84.71%;descent-override:22.09%;line-gap-override:0.00%;size-adjust:115.45%}.__className_44e684{font-family:Fraunces,Fraunces Fallback;font-style:normal}.__variable_44e684{--font-fraunces:"Fraunces","Fraunces Fallback"}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(/_next/static/media/886030b0b59bc5a7-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(/_next/static/media/0aa834ed78bf6d07-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(/_next/static/media/67957d42bae0796d-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(/_next/static/media/f911b923c6adde36-s.woff2) format("woff2");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:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(/_next/static/media/939c4f875ee75fbb-s.p.woff2) format("woff2");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:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(/_next/static/media/bb3ef058b751a6ad-s.p.woff2) format("woff2");unicode-range:u+00??,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:JetBrains Mono Fallback;src:local("Arial");ascent-override:75.79%;descent-override:22.29%;line-gap-override:0.00%;size-adjust:134.59%}.__className_fdaf1b{font-family:JetBrains Mono,JetBrains Mono Fallback;font-style:normal}.__variable_fdaf1b{--font-jb:"JetBrains Mono","JetBrains Mono Fallback"}@font-face{font-family:generalSans;src:url(/_next/static/media/eb38d80f1efefe0e-s.p.woff2) format("woff2");font-display:swap;font-weight:400}@font-face{font-family:generalSans;src:url(/_next/static/media/c769b9ad37242ab7-s.p.woff2) format("woff2");font-display:swap;font-weight:500}@font-face{font-family:generalSans;src:url(/_next/static/media/bd2e31d9f13a7622-s.p.woff2) format("woff2");font-display:swap;font-weight:600}@font-face{font-family:generalSans Fallback;src:local("Arial");ascent-override:99.89%;descent-override:23.74%;line-gap-override:9.89%;size-adjust:101.11%}.__className_21ed75{font-family:generalSans,generalSans Fallback}.__variable_21ed75{--font-general:"generalSans","generalSans Fallback"}:root{--frost:#f1f2f0;--surface:#ffffff;--graphite:#1c1e20;--slate:#5b6066;--line:#d9dbd8;--brass:#6e5738;--brass-light:#c9a876;--glass:#234a5c;--glass-light:#8fb3c4;--glass-tint:#dce8ec;--danger:#b3261e;--ok:#2e6b4f;--font-ui:var(--font-general),system-ui,sans-serif;--font-display:var(--font-fraunces),Georgia,serif;--font-mono:var(--font-jb),ui-monospace,monospace;--panel-w:400px}*{box-sizing:border-box}body,html{margin:0;height:100%}body{background:var(--frost);color:var(--graphite);font:400 15px/1.5 var(--font-ui);-webkit-font-smoothing:antialiased}button,input,select{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--glass);outline-offset:2px}.app{display:grid;grid-template-rows:auto 1fr;height:100dvh}.topbar{display:flex;align-items:center;gap:28px;padding:18px 28px;border-bottom:1px solid var(--line);background:var(--frost)}.wordmark{display:block;line-height:0}.logo,.pictogram,.signature{display:block;max-width:100%;height:auto}.topbar nav{display:flex;gap:22px;color:var(--slate);font-size:14px}.topbar nav a{color:inherit;text-decoration:none}.topbar nav a[aria-current=page]{color:var(--graphite)}.workspace{grid-template-columns:1fr var(--panel-w)}.stage,.workspace{display:grid;min-height:0}.stage{position:relative;grid-template-rows:auto 1fr}.stage-bar{display:flex;justify-content:space-between;align-items:center;padding:16px 28px 0}.line-title{font-family:var(--font-display);font-size:44px;line-height:1;font-weight:300;margin:0}.line-title small{display:block;font-family:var(--font-ui);font-size:14px;color:var(--slate);margin-top:8px;font-weight:400}.view-toggle{display:inline-flex;border:1px solid var(--line);border-radius:999px;padding:3px;background:var(--surface)}.view-toggle button{border:0;background:none;padding:6px 16px;border-radius:999px;cursor:pointer;color:var(--slate)}.view-toggle button[aria-pressed=true]{background:var(--graphite);color:var(--frost)}.canvas{min-height:0;padding:12px 28px 28px}.canvas>*{width:100%;height:100%}.plan text{font-family:var(--font-mono)}.plan .dim{stroke:var(--brass);stroke-width:1}.plan .dim-label{fill:var(--brass);font-size:13px}.plan .pane{fill:var(--surface);stroke:var(--graphite);stroke-width:1.5}.plan .pane-label{fill:var(--slate);font-size:11px}.plan .wall{fill:url(#hatch);stroke:var(--graphite);stroke-width:1}.plan .post{fill:var(--brass)}.plan .dim-legend{fill:var(--slate)}.side{border-left:1px solid var(--line);background:var(--surface);display:grid;grid-template-rows:1fr auto;min-height:0}.steps{overflow-y:auto;padding:8px 24px 24px}.step{padding:20px 0;border-bottom:1px solid var(--line)}.step:last-child{border-bottom:0}.step h2{display:flex;gap:10px;align-items:baseline;margin:0 0 14px;font-size:15px;font-weight:600}.step h2 .n{color:var(--brass);font-family:var(--font-mono);font-size:12px;font-weight:400}.systems{display:grid;grid-template-columns:1fr 1fr;grid-gap:8px;gap:8px}.system{text-align:left;border:1px solid var(--line);background:var(--surface);border-radius:6px;padding:12px;cursor:pointer;transition:border-color .15s}.system .pictogram{margin-bottom:8px}.system strong{display:block;font-family:var(--font-display);font-size:21px;font-weight:400;line-height:1.1}.system span{font-size:13px;color:var(--slate)}.system[aria-pressed=true]{border-color:var(--graphite);box-shadow:inset 0 0 0 1px var(--graphite)}.segmented{display:flex;flex-wrap:wrap;gap:6px}.segmented button{border:1px solid var(--line);background:var(--surface);border-radius:999px;padding:6px 14px;cursor:pointer;font-size:14px}.segmented button[aria-pressed=true]{background:var(--graphite);color:var(--frost);border-color:var(--graphite)}.segmented button:disabled{opacity:.4;cursor:not-allowed}.fields{display:grid;grid-template-columns:1fr 1fr;grid-gap:12px;gap:12px;margin-top:14px}.field{display:grid;grid-gap:4px;gap:4px;font-size:13px;color:var(--slate);align-content:start}.field.wide{grid-column:1/-1}.field input,.field select,.field textarea{border:1px solid var(--line);border-radius:6px;padding:8px 10px;background:var(--surface);color:var(--graphite);font-size:15px;width:100%}.field textarea{resize:vertical;min-height:64px;font:inherit}.project-save{margin-top:4px}.project-save summary{cursor:pointer;font-size:14px;color:var(--slate)}.project-save .fields{margin-top:10px}.doc-snapshot{white-space:pre-wrap;overflow-wrap:anywhere;font-size:13px;line-height:1.55;color:var(--graphite);background:var(--frost);border:1px solid var(--line);border-radius:6px;padding:12px 14px;margin:8px 0 0}.panel-table{max-width:100%;overflow-x:auto}.panel-table .bom{min-width:460px;width:100%}@media (max-width:640px){.panel-table .bom{min-width:0;display:block}.panel-table .bom thead{display:none}.panel-table .bom tr{display:block;padding:8px 0;border-bottom:1px solid var(--line)}.panel-table .bom td{display:block;text-align:left;padding:2px 0}.panel-table .bom td.num,.panel-table .bom th.num{text-align:left;padding-left:0}}.field .unit{position:relative}.field .unit input{padding-right:40px;font-family:var(--font-mono)}.field .unit:after{content:attr(data-unit);position:absolute;right:10px;top:50%;transform:translateY(-50%);font-size:12px}.check{display:flex;gap:8px;align-items:center;margin-top:12px;font-size:14px}.hint{font-size:13px;color:var(--slate);margin:8px 0 0}.summary{border-top:1px solid var(--line);padding:16px 24px 20px;background:var(--surface)}.status{display:flex;gap:8px;align-items:flex-start;font-size:14px;margin:0 0 12px}.status:before{content:"";flex:none;width:8px;height:8px;border-radius:50%;margin-top:6px;background:var(--ok)}.status[data-status=requires-designer]:before{background:var(--brass)}.status[data-status=invalid]:before{background:var(--danger)}.issues{margin:-4px 0 12px;padding-left:16px;font-size:13px;color:var(--danger)}.price{display:flex;justify-content:space-between;align-items:baseline;gap:12px}.price .amount{font-family:var(--font-display);font-size:34px;font-weight:300;line-height:1}.price .vat{font-size:13px;color:var(--slate);text-align:right}.actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.btn{flex:1 1;border-radius:6px;padding:11px 14px;cursor:pointer;font-weight:500;border:1px solid var(--graphite);text-align:center;text-decoration:none;display:inline-block;color:var(--graphite)}.btn.primary{background:var(--graphite);color:var(--frost)}.btn.ghost{background:var(--surface)}.btn:disabled{opacity:.4;cursor:not-allowed}.bom{width:100%;border-collapse:collapse;font-size:13px}.bom th{text-align:left;font-weight:500;color:var(--slate);padding:6px 0}.bom td,.bom th{border-bottom:1px solid var(--line)}.bom td{padding:7px 0;vertical-align:top}.bom .num{text-align:right;font-family:var(--font-mono);white-space:nowrap;padding-left:10px;padding-right:16px}.bom td:last-child.num,.bom th:last-child.num{padding-right:0}.bom .noreturn{color:var(--brass);font-size:12px;display:block}.demo-note{font-size:12px;color:var(--slate);margin:10px 0 0}@media (max-width:900px){.app{height:auto;min-height:100dvh}.topbar{padding:14px 16px;gap:16px}.topbar nav{display:none}.workspace{grid-template-columns:1fr}.stage{height:52vh}.stage-bar{padding:12px 16px 0}.line-title{font-size:32px}.canvas{padding:8px 16px 12px}.side{border-left:0;border-top:1px solid var(--line)}.steps{padding:0 16px 16px}.summary{position:-webkit-sticky;position:sticky;bottom:0;padding:12px 16px;box-shadow:0 -1px 0 var(--line)}}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}.admin,.admin-login{min-height:100dvh}.admin-login{display:grid;grid-template-columns:minmax(280px,1fr) minmax(360px,1fr)}.admin-login-brand{background:var(--glass-tint);color:var(--graphite);padding:48px;display:flex;flex-direction:column;justify-content:space-between}.admin-login-brand p{font-family:var(--font-display);font-size:clamp(48px,8vw,112px);line-height:.95;font-weight:300;max-width:6ch;margin:0}.admin-login-form{align-self:center;width:min(100% - 48px,420px);margin:48px auto}.admin-login-form h1{font-family:var(--font-display);font-size:52px;font-weight:300;margin:0 0 8px}.admin-login-form p{color:var(--slate);margin:0 0 32px}.admin-login-form form{display:grid;grid-gap:12px;gap:12px}.admin-login-form input{width:100%;border:1px solid var(--line);background:var(--surface);border-radius:4px;padding:12px 14px;margin-bottom:12px}.admin-login-form button{justify-self:start;margin-top:8px}@media (max-width:700px){.admin-login{grid-template-columns:1fr}.admin-login-brand{min-height:190px;padding:24px}.admin-login-brand p{font-size:50px}}.admin-main{max-width:960px;padding:28px}.admin-crm{height:calc(100dvh - 110px);min-height:500px}.admin:has(.admin-crm,.admin-db)>.demo-note{display:none}.admin-crm iframe{display:block;width:100%;height:100%;border:0}.admin-title{font-family:var(--font-display);font-weight:300;font-size:40px;margin:0 0 8px}.admin-block{background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:20px 24px;margin-top:20px}.admin-block h2{font-size:16px;font-weight:600;margin:0 0 12px}.dropzone{display:block;border:1px dashed var(--slate);border-radius:8px;padding:18px;cursor:pointer;color:var(--slate)}.dropzone input{display:block;margin-bottom:8px}.sheet-list{list-style:none;padding:0;margin:14px 0;display:grid;grid-gap:4px;gap:4px;font-size:14px}.sheet-list li{display:grid;grid-template-columns:1fr 160px 80px;grid-gap:12px;gap:12px;color:var(--slate)}.sheet-list li[data-loaded=true]{color:var(--graphite)}.admin-block code,.sheet-list code{font-family:var(--font-mono);font-size:12px}.link{border:0;background:none;padding:0;color:var(--glass);text-decoration:underline;cursor:pointer;font:inherit}@media (max-width:900px){.admin-main{padding:16px}.sheet-list li{grid-template-columns:1fr auto}.sheet-list li code{display:none}}.order-grid{display:grid;grid-template-columns:minmax(0,1fr) 420px;grid-gap:32px;gap:32px;max-width:1200px;padding:28px;align-items:start}.order-summary{position:-webkit-sticky;position:sticky;top:20px;background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:20px 24px}.order-summary .bom{margin-top:14px}.order-summary .bom tr:last-child td{font-weight:600;border-bottom:0}.choice{display:grid;grid-gap:8px;gap:8px}.choice label{display:flex;gap:10px;align-items:flex-start;border:1px solid var(--line);border-radius:6px;padding:12px;cursor:pointer;font-size:14px;color:var(--slate)}.choice label strong{color:var(--graphite);font-weight:500}.choice label:has(input:checked){border-color:var(--graphite);box-shadow:inset 0 0 0 1px var(--graphite)}.buyer{border:0;padding:0;margin:16px 0 0;min-width:0}.buyer legend{font-size:14px;color:var(--graphite);margin-bottom:8px;padding:0;max-width:60ch}.bom-producer{display:block;font-size:12px;color:var(--slate)}.check.consent{align-items:flex-start}.check input{flex:none;margin-top:3px}.field-error{color:var(--danger);font-size:13px;margin:4px 0 0}.field input[aria-invalid=true]{border-color:var(--danger)}.fields .wide{grid-column:1/-1}@media (max-width:900px){.order-grid{grid-template-columns:1fr;padding:16px}.order-summary{position:static}}.bom th.num{font-family:var(--font-ui)}.offer-shell{padding:24px 16px 48px}.offer-toolbar{max-width:210mm;margin:0 auto 16px;display:flex;justify-content:space-between;align-items:center;font-size:14px}.offer-toolbar a:not(.btn){color:var(--slate)}.offer-toolbar .btn{flex:none}.offer-page{width:210mm;min-height:297mm;margin:0 auto;background:var(--surface);padding:16mm 16mm 12mm;display:flex;flex-direction:column;box-shadow:0 0 0 1px var(--line);background:var(--surface) url(/brand/lumoro-watermark.svg) center /60% auto no-repeat}.offer-head{display:flex;justify-content:space-between;align-items:flex-start;border-bottom:1px solid var(--graphite);padding-bottom:6mm}.offer-head dl{display:grid;grid-template-columns:auto auto;grid-gap:1mm 6mm;gap:1mm 6mm;margin:0;font-size:11px}.offer-head dt{color:var(--slate)}.offer-head dd{margin:0;font-family:var(--font-mono);text-align:right}.offer-title{font-family:var(--font-display);font-weight:300;font-size:40px;margin:8mm 0 4mm}.offer-grid{display:grid;grid-template-columns:1.1fr 1fr;grid-gap:8mm;gap:8mm;align-items:center;margin-bottom:6mm}.offer-drawing{height:70mm}.offer-drawing svg{width:100%;height:100%}.offer-params{margin:0;font-size:12px;display:grid;grid-gap:2mm;gap:2mm}.offer-params div{display:grid;grid-template-columns:22mm 1fr;grid-gap:3mm;gap:3mm;border-bottom:1px solid var(--line);padding-bottom:2mm}.offer-params dt{color:var(--slate)}.offer-params dd{margin:0}.offer-bom{font-size:11px;margin-top:4mm}.offer-bom .sku{display:block;color:var(--slate);font-family:var(--font-mono);font-size:9px}.offer-totals{margin:5mm 0 0 auto;font-size:12px;border-collapse:collapse;min-width:70mm}.offer-totals td{padding:1.5mm 0}.offer-totals td:last-child{text-align:right;font-family:var(--font-mono);padding-left:10mm}.offer-totals .grand td{border-top:1px solid var(--graphite);font-weight:600;font-size:14px;padding-top:3mm}.offer-totals .grand td:last-child{font-family:var(--font-display);font-weight:300;font-size:24px}.panel-plates{display:flex;flex-wrap:wrap;gap:12px;margin:12px 0 4px}.offer-terms{margin-top:8mm;font-size:10.5px;color:var(--slate)}.offer-terms h2{font-size:12px;color:var(--graphite);margin:0 0 2mm;font-weight:600}.offer-terms ul{margin:0;padding-left:4mm;display:grid;grid-gap:1mm;gap:1mm}.offer-warning{font-size:14px}.offer-foot{margin-top:auto;padding-top:6mm;display:flex;justify-content:space-between;gap:8mm;font-size:9px;color:var(--slate);border-top:1px solid var(--line)}.offer-foot span:last-child{text-align:right;max-width:75%}.offer-demo{text-align:center;font-size:12px;color:var(--slate)}@page{size:A4;margin:0}@media print{body{background:var(--surface)}.offer-shell{padding:0}.offer-demo,.offer-toolbar{display:none}.offer-page{box-shadow:none;margin:0}}@media screen and (max-width:900px){.offer-page{width:100%;min-height:0;padding:20px 16px}.offer-grid{grid-template-columns:1fr}}.map-page{display:grid;grid-template-columns:minmax(0,1fr) 420px;min-height:calc(100dvh - 64px)}.map-canvas{padding:28px;display:grid;grid-template-rows:1fr auto}.map-canvas svg{width:100%;height:100%;max-height:78dvh}.voiv{fill:var(--surface);stroke:var(--line);stroke-width:1.2}.reach{fill:var(--glass);fill-opacity:.07;stroke:var(--glass);stroke-width:1;stroke-dasharray:4 4}.pin circle{fill:var(--brass)}.pin .pro-ring{fill:none;stroke:var(--brass);stroke-width:1.5}.pin.active circle:not(.pro-ring){fill:var(--graphite)}.here line{stroke:var(--graphite);stroke-width:2}.map-legend{font-size:13px;color:var(--slate);display:flex;align-items:center;gap:6px}.map-legend .dot{width:8px;height:8px;border-radius:50%;background:var(--brass);display:inline-block}.map-legend .dot.pro{box-shadow:0 0 0 2px var(--frost),0 0 0 3px var(--brass);margin-left:8px}.map-side{background:var(--surface);border-left:1px solid var(--line);padding:28px}.map-results{margin-top:20px;border-top:1px solid var(--line);padding-top:16px}.map-results h2{font-size:15px;margin:0 0 10px}.map-results ol{list-style:none;padding:0;margin:0;display:grid;grid-gap:10px;gap:10px}.map-results li{display:grid;grid-gap:2px;gap:2px;border:1px solid var(--line);border-radius:6px;padding:12px;font-size:14px}.map-results li>span{color:var(--slate);font-size:13px}.badges{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px}.badge{font-size:12px;border:1px solid var(--line);border-radius:999px;padding:1px 8px;color:var(--graphite)}@media (max-width:900px){.map-page{grid-template-columns:1fr}.map-canvas,.map-side{padding:16px}.map-side{border-left:0;border-top:1px solid var(--line)}}.panel-main{max-width:1040px;padding:28px}.panel-h2{font-size:16px;font-weight:600;margin:32px 0 12px}.panel-card{background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:18px 20px;margin-bottom:12px}.panel-card h3{margin:0;font-size:17px;font-weight:500}.panel-card h4{margin:14px 0 6px;font-size:13px;font-weight:600;color:var(--slate)}.panel-card p{margin:6px 0;font-size:14px}.panel-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.panel-amount{font-family:var(--font-display);font-size:26px;font-weight:300;text-align:right}.panel-amount small{display:block;font-family:var(--font-ui)}.mono,.panel-amount small{font-size:12px;color:var(--slate)}.mono{font-family:var(--font-mono)}.panel-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));grid-gap:12px;gap:12px}.panel-cols{display:grid;grid-template-columns:1fr 1fr;grid-gap:20px;gap:20px}.link-card{display:block;color:inherit;text-decoration:none}.link-card:hover{border-color:var(--graphite)}.timeline{list-style:none;padding:0;margin:18px 0 8px;display:grid;grid-template-columns:repeat(6,1fr);font-size:12px;color:var(--slate)}.timeline li{position:relative;padding-top:16px}.timeline li:before{content:"";position:absolute;top:4px;left:0;right:0;height:2px;background:var(--line)}.timeline li[data-state=done]:before{background:var(--graphite)}.timeline .tl-dot{position:absolute;top:0;left:0;width:10px;height:10px;border-radius:50%;background:var(--line)}.timeline li[data-state=done] .tl-dot{background:var(--graphite)}.timeline li[data-state=current]{color:var(--graphite);font-weight:600}.timeline li[data-state=current] .tl-dot{background:var(--brass);box-shadow:0 0 0 3px var(--surface),0 0 0 4px var(--brass)}.docs,.events{list-style:none;padding:0;margin:0;display:grid;grid-gap:6px;gap:6px;font-size:14px}.events li{display:grid;grid-template-columns:110px 1fr;grid-gap:8px;gap:8px}.events time{font-size:13px;padding-top:1px}.docs li[data-pending],.events time{color:var(--slate)}.docs a{color:var(--glass)}.meter{height:6px;background:var(--line);border-radius:3px;overflow:hidden;margin:10px 0 6px}.meter span{display:block;height:100%;background:var(--brass)}@media (max-width:900px){.panel-main{padding:16px}.panel-cols{grid-template-columns:1fr}.timeline{grid-template-columns:repeat(3,1fr);row-gap:12px}}.home,.line-page{max-width:1240px;margin:0 auto;padding:0 28px}.hero{display:grid;grid-template-columns:1fr 1.1fr;grid-gap:48px;gap:48px;align-items:center;min-height:calc(88dvh - 64px);padding:40px 0}.hero h1{font-family:var(--font-display);font-weight:300;font-size:clamp(44px,6.4vw,92px);line-height:.98;letter-spacing:-.02em;margin:0 0 24px;max-width:11ch}.hero p{font-size:18px;line-height:1.55;color:var(--slate);max-width:46ch;margin:0 0 28px}.hero-cta{display:flex;gap:10px;flex-wrap:wrap}.hero-cta .btn{flex:none;padding:13px 22px}.section-h{font-family:var(--font-display);font-weight:300;font-size:clamp(28px,3.2vw,40px);margin:0 0 24px;letter-spacing:-.01em}.glyph{width:100%;height:auto;overflow:visible}.g-slab{fill:#d9dbd8}.g-glass{fill:none;stroke:var(--graphite);stroke-width:1.5}.g-metal{fill:var(--brass)}.g-dim line{stroke:var(--brass);stroke-width:1}.g-dim text{fill:var(--brass);font-family:var(--font-mono);font-size:11px}.g-dim .g-legend{fill:var(--slate);font-size:9px}.glyph-draw .g-dim line,.glyph-draw .g-glass{stroke-dasharray:800;stroke-dashoffset:800;animation:draw 1.6s cubic-bezier(.6,0,.2,1) forwards}.glyph-draw .g-dim line{animation-delay:.9s}.glyph-draw .g-dim text{opacity:0;animation:fade .6s 1.9s forwards}@keyframes draw{to{stroke-dashoffset:0}}@keyframes fade{to{opacity:1}}@media (prefers-reduced-motion:reduce){.glyph-draw .g-dim line,.glyph-draw .g-glass{stroke-dasharray:none;stroke-dashoffset:0}.glyph-draw .g-dim text{opacity:1}}.photo{margin:0}.photo img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;border-radius:2px;background:var(--line)}.photo figcaption{font-size:13px;line-height:18px;color:var(--slate);margin-top:8px}.hero .photo img{aspect-ratio:5/4}.realizations{padding:64px 0;border-top:1px solid var(--line)}.realizations ul{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(4,1fr);grid-gap:24px 20px;gap:24px 20px}.realizations li:first-child{grid-column:span 2;grid-row:span 2}.trust-grid{display:grid;grid-template-columns:1fr 1.2fr;grid-gap:48px;gap:48px;align-items:start}.trust-grid .glyph{max-width:460px}.lines{padding:64px 0;border-top:1px solid var(--line)}.lines ul{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(4,1fr);grid-gap:20px;gap:20px}.lines.compact ul{grid-template-columns:repeat(3,1fr)}.lines a{display:grid;grid-gap:4px;gap:4px;color:inherit;text-decoration:none;padding:20px;background:var(--surface);border:1px solid var(--line);border-radius:8px;transition:border-color .15s}.lines a:focus-visible,.lines a:hover{border-color:var(--graphite)}.lines .glyph{margin-bottom:14px}.line-name{font-family:var(--font-display);font-size:34px;font-weight:300;line-height:1}.line-kind{font-size:14px}.line-meaning{font-size:13px;color:var(--slate);font-style:italic}.steps-home{padding:64px 0;border-top:1px solid var(--line)}.steps-home ol{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(4,1fr);grid-gap:28px;gap:28px}.steps-home .n{font-family:var(--font-mono);color:var(--brass);font-size:13px}.steps-home h3{font-size:18px;font-weight:500;margin:8px 0}.steps-home p{color:var(--slate);margin:0;max-width:34ch}.trust{padding:64px 0;border-top:1px solid var(--line)}.trust dl{margin:0;display:grid;grid-template-columns:1fr;grid-gap:24px;gap:24px}.trust dt{font-weight:500;margin-bottom:6px}.trust dd{margin:0;color:var(--slate);max-width:52ch}.installers{margin:24px 0 72px;padding:36px 40px;background:var(--graphite);color:var(--frost);border-radius:8px;display:flex;gap:32px;align-items:center;justify-content:space-between}.installers .section-h{margin-bottom:10px}.installers p{margin:0;color:var(--frost);max-width:60ch}.installers .btn.primary{background:var(--frost);color:var(--graphite);border-color:var(--frost);flex:none}.site-foot{border-top:1px solid var(--line);padding:40px 28px;display:grid;grid-template-columns:2fr 1fr 1fr 1.2fr;grid-gap:32px;gap:32px;max-width:1240px;margin:0 auto;font-size:14px}.site-foot p{color:var(--slate);max-width:40ch}.site-foot nav{display:grid;grid-gap:8px;gap:8px;align-content:start}.site-foot a{color:var(--graphite);text-decoration:none}.site-foot .site-legal{grid-column:1/-1;max-width:none;margin:0;padding-top:20px;border-top:1px solid var(--line);font-size:12px;line-height:1.6}.line-hero{display:grid;grid-template-columns:1fr 1.1fr;grid-gap:48px;gap:48px;align-items:center;padding:56px 0}.line-hero h1{font-family:var(--font-display);font-weight:300;font-size:clamp(56px,8vw,112px);line-height:.95;margin:6px 0 4px;letter-spacing:-.02em}.line-hero h1 .signature{height:clamp(40px,5vw,64px);width:auto;margin:12px 0 8px}.line-lead{font-size:18px;color:var(--slate);max-width:46ch;margin:20px 0 28px}.line-hero .btn{flex:none;padding:13px 22px}.line-cols{display:grid;grid-template-columns:1fr 1fr;grid-gap:48px;gap:48px;padding:56px 0;border-top:1px solid var(--line)}.plain-list{padding-left:18px;grid-gap:8px;gap:8px}.plain-list,.spec{margin:0;display:grid}.spec{grid-gap:10px;gap:10px}.spec div{display:grid;grid-template-columns:170px 1fr;grid-gap:12px;gap:12px;border-bottom:1px solid var(--line);padding-bottom:10px}.spec dt{color:var(--slate)}.spec dd{margin:0}.spec a{color:var(--graphite);-webkit-text-decoration-color:var(--line);text-decoration-color:var(--line);text-underline-offset:3px}.producers{padding:56px 0;border-top:1px solid var(--line)}.producers .line-cols{padding:0;border-top:0}.producers-note{color:var(--slate);max-width:64ch;margin:0 0 20px}.faq{padding:56px 0;border-top:1px solid var(--line);max-width:760px}.faq details{border-bottom:1px solid var(--line);padding:14px 0}.faq summary{cursor:pointer;font-weight:500}.faq p{color:var(--slate);margin:10px 0 0}@media (max-width:900px){.home,.line-page{padding:0 16px}.hero,.line-hero{grid-template-columns:1fr;min-height:0;gap:28px;padding:32px 0}.lines ul,.lines.compact ul{grid-template-columns:1fr 1fr;gap:12px}.lines a{padding:14px}.line-name{font-size:26px}.line-cols,.steps-home ol,.trust dl,.trust-grid{grid-template-columns:1fr;gap:24px}.realizations ul{grid-template-columns:1fr 1fr;gap:16px 12px}.installers{flex-direction:column;align-items:flex-start;padding:24px}.site-foot{padding:32px 16px}.site-foot,.spec div{grid-template-columns:1fr}.spec div{gap:2px}.topbar{align-items:center}.topbar nav{display:flex;overflow-x:auto;gap:16px;font-size:13px;white-space:nowrap;scrollbar-width:none}}.legal{max-width:760px;margin:0 auto;padding:40px 28px 64px;font-size:15px;line-height:1.65}.legal h1{font-family:var(--font-display);font-weight:300;font-size:clamp(32px,4.4vw,48px);line-height:1.05;letter-spacing:-.01em;margin:0 0 10px}.legal-meta{color:var(--slate);font-size:13px;margin:0 0 32px}.legal-draft{border-left:3px solid var(--brass);background:var(--surface);padding:10px 14px;font-size:14px;margin:0 0 28px}.legal h2{font-size:17px;font-weight:600;margin:36px 0 10px;scroll-margin-top:16px}.legal h3{font-size:15px;font-weight:600;margin:24px 0 8px}.legal p{margin:0 0 12px}.legal hr{border:0;border-top:1px solid var(--line);margin:32px 0}.legal-list{list-style:none;padding:0;margin:0 0 12px;display:grid;grid-gap:8px;gap:8px}.legal-list li{position:relative;padding-left:32px}.legal-list li:before{content:attr(data-marker);position:absolute;left:0;font-family:var(--font-mono);font-size:12px;color:var(--brass);top:2px}.legal-list .legal-list{margin:8px 0 0}.legal-table{overflow-x:auto;margin:0 0 16px;border:1px solid var(--line);border-radius:6px;background:var(--surface)}.legal-table table{border-collapse:collapse;font-size:13px;line-height:1.5;min-width:640px}.legal-table th{text-align:left;font-weight:600;background:var(--frost)}.legal-table td,.legal-table th{padding:8px 12px;border-bottom:1px solid var(--line);vertical-align:top}.legal-table tr:last-child td{border-bottom:0}.legal-nav{display:flex;flex-wrap:wrap;gap:8px 20px;margin-top:48px;padding-top:20px;border-top:1px solid var(--line);font-size:14px}.consent a,.legal-nav a{color:var(--glass)}@media (max-width:900px){.legal{padding:28px 16px 48px}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.pick-head{display:flex;justify-content:space-between;align-items:baseline;gap:16px;flex-wrap:wrap}.pick-head h2{font-family:var(--font-mono);font-weight:400;font-size:15px;margin:0;white-space:nowrap}.pick-head .hint{margin:0}.pick-lines{list-style:none;padding:0;margin:8px 0 20px}.pick-line{display:grid;grid-template-columns:minmax(0,1.2fr) 90px minmax(0,1.6fr);grid-gap:16px;gap:16px;padding:16px 0 16px 14px;border-bottom:1px solid var(--line);border-left:3px solid var(--line)}.pick-line[data-status=complete]{border-left-color:var(--ok)}.pick-line[data-status=partial]{border-left-color:var(--brass)}.pick-line[data-status=over]{border-left-color:var(--danger)}.pick-item{display:grid;grid-gap:2px;gap:2px;font-size:14px;align-content:start}.pick-item strong{font-weight:500}.pick-need{text-align:right;font-size:14px;padding-top:8px;color:var(--graphite)}.pick-batches{display:grid;grid-gap:8px;gap:8px}.pick-batch{display:grid;grid-template-columns:minmax(0,1fr) 120px auto;grid-gap:8px;gap:8px;align-items:center}.pick-batch .field-error{grid-column:1/-1;margin:0}.pick-foot{display:flex;justify-content:space-between;gap:12px;font-size:13px}.pick-status{color:var(--slate)}.pick-line[data-status=complete] .pick-status{color:var(--ok)}.pick-line[data-status=over] .pick-status{color:var(--danger)}@media (max-width:900px){.admin-block.pick{padding:16px}.pick-line{grid-template-columns:minmax(0,1fr) auto;padding-left:10px}.pick-batches{grid-column:1/-1;min-width:0}.pick-batch{grid-template-columns:minmax(0,1fr) 104px auto}.pick-batch .field .unit input{padding-right:32px}}.legal-table td.nowrap{white-space:nowrap}.partner-card{margin:14px 0 0;display:grid;grid-gap:6px;gap:6px;font-size:14px;border:1px solid var(--line);border-radius:6px;padding:12px 14px;background:var(--surface)}.partner-card div{display:grid;grid-template-columns:80px minmax(0,1fr);grid-gap:10px;gap:10px}.partner-card dt{color:var(--slate)}.partner-card dd{margin:0;overflow-wrap:anywhere}.doc-details{margin-top:12px;border-top:1px solid var(--line);padding-top:10px;font-size:14px}.doc-details summary{cursor:pointer;font-weight:500}.doc-details .legal-list{margin-top:10px;font-size:13px}.panel-nav{display:flex;flex-wrap:wrap;gap:8px 20px;border-bottom:1px solid var(--line);padding:18px 0;margin-bottom:24px}.panel-nav a{color:var(--slate);padding:6px 0}.panel-nav a[aria-current=page]{color:var(--graphite);border-bottom:2px solid var(--brass)}.panel-nav a:focus-visible{outline:2px solid var(--brass);outline-offset:4px}.inquiry{margin-top:18px;padding-top:16px;border-top:1px solid var(--line)}.inquiry-h{font-size:17px;font-weight:600;margin:0}.inquiry textarea{width:100%;resize:vertical;font:inherit}.inquiry .btn{margin-top:14px}.inquiry-legal{font-size:12px;color:var(--slate);margin:12px 0 0;line-height:1.5}.inquiry-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.price-label{display:block;font-size:12px;color:var(--slate);margin-bottom:2px}@media (max-width:560px){.inquiry .fields{grid-template-columns:1fr}}