/* Samvora presentation styles. Whitespace-only compaction: tools/optimize-v32-presentation.mjs. */
:root{--green:#157a4b;--green-2:#11683f;--green-3:#0c5132;--leaf-2:#3fae6a;--mint:#e7f4ec;--amber:#f2a51d;--amber-2:#e08a00;--amber-t:#8f5600;--sun-soft:#fdf3dc;--forest:#0b2f25;--forest-2:#0e3a2e;--forest-3:#134638;--teal:#0f7468;--teal-2:#0c6157;--teal-soft:#e3f2ee;--orange:#e8890f;--leaf:#3fae6a;--bg:#fbfaf6;--bg-warm:#f7f3ea;--bg-grey:#f1f5ef;--bg-tint:#eaf4ee;--surface:#ffffff;--surface-2:#f6f8f3;--surface-3:#edf1ea;--text:#10261e;--text-2:#3a4c44;--text-3:#56685f;--line:rgba(16, 38, 30, 0.1);--line-2:rgba(16, 38, 30, 0.19);--shadow:0 1px 2px rgba(16, 38, 30, 0.04), 0 14px 34px -14px rgba(16, 38, 30, 0.16);--shadow-lg:0 2px 4px rgba(16, 38, 30, 0.04), 0 34px 80px -30px rgba(16, 38, 30, 0.3);--solar:#8f5600;--store:#0d7444;--f-store:#14a05e;--c-store:#12935a;--c-soc:#12935a;--ink:#0b2f25;--ink-2:#0e3a2e;--ink-3:#134638;--cyan:#5fd6b4;--cyan-2:#8fe3c6;--paper:#f7f3ea;--f-dg:#d9692e;--dg:#b4511f;--f-motor:#0f7468;--bp:rgba(160, 230, 200, 0.07);--radius-xl:28px;}
body{background:var(--bg);}
.ink, .theme-dark{--bg:#0b2f25;--bg-warm:#0b2f25;--bg-grey:#0e3a2e;--surface:#0f3a2e;--surface-2:#134638;--surface-3:#18523f;--text:#f1f7f2;--text-2:#bfd3c8;--text-3:#92ab9f;--line:rgba(255, 255, 255, 0.1);--line-2:rgba(255, 255, 255, 0.2);--solar:#f6b23a;--store:#5fe0a0;--grid:#9db8ff;--ems:#c9b8ff;--alert:#ff9384;--dg:#ff9a63;--f-solar:#f6b23a;--f-store:#4fdc96;--f-grid:#8fb0ff;--f-load:#eef5f0;--f-ems:#c2adff;--f-dg:#ff8a4c;--f-motor:#6fd8c6;--c-solar:#eaa53a;--c-store:#3fcf8a;--c-grid:#7ea2f7;--c-load:#eef5f0;--c-soc:#4fdc96;--teal:#8fe3c6;--teal-2:#b2eed9;--sd-box:#0f3a2e;--sd-box-line:rgba(255, 255, 255, 0.16);--sd-wire:#2f5a4b;--sd-bus:#0d3328;--sd-bus-line:rgba(255, 255, 255, 0.14);--sd-row:rgba(255, 255, 255, 0.03);--sd-row-line:rgba(255, 255, 255, 0.08);--sd-card:linear-gradient(180deg, #11402f, #0c3125);color:var(--text);background:radial-gradient(ellipse 60% 70% at 82% 0%, rgba(95, 214, 180, 0.14), transparent 62%),
    radial-gradient(ellipse 50% 60% at 4% 100%, rgba(242, 165, 29, 0.1), transparent 60%),
    linear-gradient(var(--bp) 1px, transparent 1px) 0 0 / 48px 48px,
    linear-gradient(90deg, var(--bp) 1px, transparent 1px) 0 0 / 48px 48px,
    linear-gradient(180deg, #0a2a21, #0d3529 70%, #0f3b2e);}
.ink :focus-visible, .theme-dark :focus-visible{outline-color:#f6b23a;}
.ink .btn, .theme-dark .btn{background:var(--amber);border-color:var(--amber);color:#241500;}
.ink .btn:hover, .theme-dark .btn:hover{background:#ffbb3d;border-color:#ffbb3d;box-shadow:0 12px 30px -12px rgba(242, 165, 29, 0.7);}
.ink .btn.secondary, .theme-dark .btn.secondary{background:rgba(255, 255, 255, 0.05);color:#f1f7f2;border-color:rgba(255, 255, 255, 0.26);}
.ink .btn.secondary:hover, .theme-dark .btn.secondary:hover{background:rgba(255, 255, 255, 0.1);border-color:rgba(255, 255, 255, 0.5);}
.ink .eyebrow, .theme-dark .eyebrow{color:var(--cyan-2);}
.ink .eyebrow::before, .theme-dark .eyebrow::before{background:linear-gradient(90deg, #f2a51d, #5fd6b4);}
.ink .lead, .theme-dark .lead{color:#bfd3c8;}
.ink .link-arrow, .theme-dark .link-arrow, .theme-dark .t-teal{color:var(--cyan-2);}
.ink .subnav a{background:rgba(255, 255, 255, 0.05);border-color:rgba(255, 255, 255, 0.14);color:#d3e3da;}
.hero, .page-hero{color:var(--text);background:radial-gradient(ellipse 46% 62% at 92% -6%, rgba(242, 165, 29, 0.2), transparent 64%),
    radial-gradient(ellipse 52% 66% at -4% 108%, rgba(63, 174, 106, 0.16), transparent 62%),
    radial-gradient(ellipse 40% 50% at 50% 120%, rgba(15, 116, 104, 0.08), transparent 70%),
    linear-gradient(180deg, #fbfaf5, #f6f3ea);}
.hero::before, .page-hero::before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.5;background-image:radial-gradient(circle at 92% -6%, transparent 0 120px, rgba(224, 138, 0, 0.12) 121px 122px, transparent 123px 190px, rgba(224, 138, 0, 0.09) 191px 192px, transparent 193px 270px, rgba(224, 138, 0, 0.06) 271px 272px, transparent 273px);-webkit-mask-image:linear-gradient(180deg, #000 30%, transparent);mask-image:linear-gradient(180deg, #000 30%, transparent);}
.hero > *, .page-hero > *{position:relative;}
.page-hero{padding-top:clamp(36px, 5vw, 72px);padding-bottom:clamp(48px, 6vw, 88px);border-bottom:1px solid var(--line);}
.page-hero h1{max-width:18ch;font-weight:600;letter-spacing:-0.045em;}
.page-hero h1 em, .hero h1 em, .grad{font-style:normal;background:linear-gradient(96deg, #157a4b 10%, #2f9a63 45%, #e08a00 95%);-webkit-background-clip:text;background-clip:text;color:transparent;}
.page-hero .crumbs, .page-hero .crumbs a{color:var(--text-3);}
.page-hero .subnav a[aria-current="page"], .page-hero .subnav a:hover{border-color:var(--green);color:var(--green-2);background:var(--mint);}
@media (min-width:1040px){.page-hero-grid{grid-template-columns:minmax(0, 0.92fr) minmax(0, 1.08fr);}
}
.page-hero .art, .page-hero .photo, .page-hero .site-concept{box-shadow:0 40px 80px -42px rgba(16, 38, 30, 0.55), 0 0 0 1px rgba(16, 38, 30, 0.06);border:0;}
.page-hero .hero-visual{position:relative;}
.page-hero .hero-visual::before{content:"";position:absolute;inset:-18px -18px auto auto;width:62%;height:70%;border-radius:28px;background:linear-gradient(135deg, rgba(242, 165, 29, 0.22), rgba(63, 174, 106, 0.16));z-index:-1;}
.btn{background:var(--green);border-color:var(--green);}
.btn:hover{background:var(--green-2);border-color:var(--green-2);box-shadow:0 12px 28px -12px rgba(21, 122, 75, 0.6);}
.btn.secondary{background:rgba(255, 255, 255, 0.75);}
.link-arrow, .text-button{color:var(--green-2);}
.eyebrow{color:var(--teal);}
.eyebrow::before{background:linear-gradient(90deg, var(--amber), var(--leaf-2));}
.sec--paper{background:var(--paper);}
.sec--blueprint{background:linear-gradient(var(--line) 1px, transparent 1px) 0 0 / 56px 56px, linear-gradient(90deg, var(--line) 1px, transparent 1px) 0 0 / 56px 56px, var(--paper);}
.ink.sec{border-top:1px solid rgba(165, 237, 237, 0.06);}
.sec-head .h2{font-weight:600;}
.sec-num{font:500 0.72rem/1 var(--mono);color:var(--text-3);letter-spacing:0.1em;}
.site-header{background:rgba(251, 250, 246, 0.88);}
.site-header .header-actions .btn{background:var(--green);border-color:var(--green);color:#fff;}
.site-header .header-actions .btn:hover{background:var(--green-2);border-color:var(--green-2);}
.site-footer{background:linear-gradient(180deg, #0b2f25, #08251d);color:#a9c0b4;border-top:0;position:relative;}
.site-footer::before{content:"";position:absolute;inset:0 0 auto;height:3px;background:linear-gradient(90deg, #f2a51d, #3fae6a 50%, #0f7468);}
.site-footer .foot-tagline{color:#f1f7f2;}
.site-footer .foot-grid h2{color:#8fb3a3;}
.site-footer a:hover, .site-footer .foot-contact a{color:#ffc95c;}
.site-footer .foot-base{border-top-color:rgba(255, 255, 255, 0.1);color:#8fb3a3;}
.site-footer .foot-brand img{background:#fff;padding:10px 14px;border-radius:12px;width:190px;}
.cta-band{background:radial-gradient(ellipse 60% 90% at 92% 0%, rgba(242, 165, 29, 0.32), transparent 60%), radial-gradient(ellipse 50% 80% at 0% 100%, rgba(95, 214, 180, 0.18), transparent 60%), linear-gradient(120deg, #0b2f25, #0f4434 55%, #157a4b);box-shadow:0 40px 100px -50px rgba(11, 47, 37, 0.7);}
.cta-band .btn{background:var(--amber);border-color:var(--amber);color:#241500;}
.cta-band .ph img{opacity:0.9;}
.art{position:relative;margin:0;border-radius:var(--radius-lg);overflow:hidden;background:#0d3328;box-shadow:0 30px 70px -40px rgba(16, 38, 30, 0.55);}
.art img{width:100%;height:auto;aspect-ratio:5 / 3;object-fit:cover;}
.art figcaption{position:absolute;left:12px;bottom:12px;font:500 0.64rem/1 var(--mono);letter-spacing:0.1em;text-transform:uppercase;color:#eaf5ef;background:rgba(11, 47, 37, 0.72);padding:6px 10px;border-radius:999px;backdrop-filter:blur(6px);}
.showcase{display:grid;gap:14px;grid-template-columns:repeat(auto-fill, minmax(min(100%, 250px), 1fr));}
.show{position:relative;display:grid;grid-template-rows:auto 1fr;border-radius:18px;overflow:hidden;text-decoration:none;color:var(--text);background:#fff;border:1px solid var(--line);box-shadow:var(--shadow);transition:transform 0.4s var(--ease), box-shadow 0.4s, border-color 0.4s;isolation:isolate;}
.show img{width:100%;height:auto;aspect-ratio:5 / 3;object-fit:cover;transition:transform 0.9s var(--ease), filter .5s;background:#0d3328;}
.show .show-body{padding:14px 16px 18px;display:grid;gap:5px;align-content:start;position:relative;}
.show .show-body::before{content:"";position:absolute;left:16px;right:16px;top:0;height:2px;background:linear-gradient(90deg, var(--amber), var(--leaf-2));transform:scaleX(0);transform-origin:left;transition:transform .5s var(--ease);}
.show b{font-size:1.02rem;letter-spacing:-0.015em;}
.show span{font-size:0.84rem;color:var(--text-2);line-height:1.45;}
.show em{font:normal 500 0.64rem/1 var(--mono);letter-spacing:0.1em;text-transform:uppercase;color:var(--teal);}
.show:hover, .show:focus-visible{transform:translateY(-4px);box-shadow:0 30px 60px -30px rgba(16, 38, 30, 0.45);border-color:rgba(21, 122, 75, 0.35);}
.show:hover img, .show:focus-visible img{transform:scale(1.05);}
.show:hover .show-body::before, .show:focus-visible .show-body::before{transform:scaleX(1);}
.ink .show{background:rgba(255, 255, 255, 0.04);border-color:rgba(255, 255, 255, 0.12);color:var(--text);box-shadow:none;}
.show--wide{grid-column:span 2;}
@media (max-width:640px){.show--wide{grid-column:auto;}
}
.ops-grid{display:grid;gap:14px;margin-top:22px;}
@media (min-width:960px){.ops-grid{grid-template-columns:1.15fr 1fr 1fr;}
}
.ops{border-radius:18px;padding:22px 22px 24px;background:var(--surface);border:1px solid var(--line);position:relative;overflow:hidden;}
.ops::before{content:"";position:absolute;inset:0 0 auto;height:3px;background:var(--k, var(--teal));}
.ops h3{font-size:1.05rem;letter-spacing:-0.015em;display:flex;align-items:center;gap:10px;margin-bottom:14px;}
.ops h3 .mono{font-size:0.66rem;letter-spacing:0.12em;color:var(--text-3);font-weight:500;}
.ops ol, .ops ul{list-style:none;display:grid;gap:10px;font-size:0.93rem;color:var(--text-2);}
.ops ol{counter-reset:op;}
.ops ol li{counter-increment:op;display:grid;grid-template-columns:28px 1fr;gap:8px;}
.ops ol li::before{content:counter(op, decimal-leading-zero);font:500 0.72rem/1.9 var(--mono);color:var(--teal);}
.ops ul li{display:grid;grid-template-columns:18px 1fr;gap:8px;}
.ops--fit ul li::before{content:"✓";color:var(--store);font-weight:700;}
.ops--limit ul li::before{content:"!";color:var(--dg);font-weight:700;font-family:var(--mono);text-align:center;}
.ops b{color:var(--text);font-weight:600;}
.ops--how{--k:linear-gradient(90deg, #f6a623, #45d5c6);}
.ops--fit{--k:var(--f-store);}
.ops--limit{--k:var(--f-dg);}
.scene-band .sec-head{margin-bottom:26px;}
.scene-band .scene{box-shadow:0 60px 120px -60px rgba(0, 0, 0, 0.7), 0 0 0 1px rgba(255, 255, 255, 0.1);}
.scene-note{margin-top:14px;font-size:0.82rem;color:var(--text-3);max-width:90ch;}
.scene-note b{color:var(--text-2);font-weight:500;}
.graph-row{display:grid;gap:14px;}
@media (min-width:960px){.graph-row--2{grid-template-columns:repeat(2, minmax(0, 1fr));}
.graph-row--3{grid-template-columns:repeat(3, minmax(0, 1fr));}
}
.graph{margin:0;border-radius:18px;padding:18px 18px 16px;background:var(--surface);border:1px solid var(--line);display:grid;gap:10px;min-width:0;color:var(--text);}
.graph-head{display:flex;flex-wrap:wrap;gap:8px 14px;align-items:center;justify-content:space-between;}
.graph-t{font-size:0.98rem;letter-spacing:-0.01em;font-weight:600;}
.graph-modes{display:inline-flex;flex-wrap:wrap;gap:4px;border:1px solid var(--line);border-radius:12px;padding:3px;}
.graph-modes button{border:0;background:transparent;color:var(--text-3);font-size:0.74rem;padding:5px 9px;border-radius:9px;font-weight:500;}
.graph-modes button[aria-pressed="true"]{background:var(--text);color:var(--bg);}
.graph-legend{list-style:none;display:flex;flex-wrap:wrap;gap:6px 14px;font-size:0.76rem;color:var(--text-2);}
.graph-legend li{display:inline-flex;align-items:center;gap:6px;}
.graph-legend li::before{content:"";width:14px;height:3px;border-radius:2px;background:var(--k, var(--text));}
.graph-legend [data-k="solar"]{--k:var(--c-solar);}
.graph-legend [data-k="solar-d"]{--k:repeating-linear-gradient(90deg, var(--c-solar) 0 4px, transparent 4px 7px);}
.graph-legend [data-k="load"]{--k:var(--c-load);}
.graph-legend [data-k="load-d"]{--k:repeating-linear-gradient(90deg, var(--c-load) 0 4px, transparent 4px 7px);}
.graph-legend [data-k="store"], .graph-legend [data-k="soc"], .graph-legend [data-k="crit"]{--k:var(--c-store);}
.graph-legend [data-k="chg"]{--k:color-mix(in srgb, var(--c-store) 45%, transparent);}
.graph-legend [data-k="grid"]{--k:var(--c-grid);}
.graph-legend [data-k="grid-d"]{--k:repeating-linear-gradient(90deg, var(--c-grid) 0 4px, transparent 4px 7px);}
.graph-legend [data-k="limit"]{--k:repeating-linear-gradient(90deg, var(--text-3) 0 3px, transparent 3px 6px);}
.graph-legend [data-k="pcs"]{--k:var(--f-ems);}
.graph-legend [data-k="ems"]{--k:var(--f-ems);}
.graph-legend [data-k="dg"]{--k:var(--f-dg);}
.graph-legend [data-k="outage"]{--k:var(--alert);}
.graph-legend [data-k="ncrit"]{--k:color-mix(in srgb, var(--c-grid) 55%, transparent);}
.graph-legend [data-k="dol"]{--k:var(--alert);}
.graph-legend [data-k="sd"]{--k:var(--c-solar);}
.graph-legend [data-k="soft"]{--k:var(--c-grid);}
.graph-legend [data-k="vfd"]{--k:var(--c-store);}
.graph-plot{position:relative;min-height:200px;outline-offset:4px;touch-action:pan-y;}
.graph-plot--split{display:grid;gap:16px;}
@media (min-width:640px){.graph-plot--split{grid-template-columns:1fr 1fr;}
}
.graph-plot svg{display:block;width:100%;height:auto;overflow:visible;}
.graph-read{min-height:1.4em;font:400 0.8rem/1.4 var(--mono);color:var(--text-2);}
.graph-instructions{margin:0;font-size:0.73rem;line-height:1.45;color:var(--text-3);}
.graph-context{margin:0;padding:11px 12px;background:color-mix(in srgb, var(--c-store) 7%, var(--surface));border-left:3px solid var(--c-store);border-radius:6px;font-size:0.79rem;line-height:1.55;color:var(--text-2);}
.graph-plot[tabindex="0"]:focus-visible{outline:2px solid var(--c-store);border-radius:8px;}
.graph-plot--numeric{display:block;}
.graph-engine-panels{display:grid;gap:12px;}
.graph-engine-panel{min-width:0;padding-top:3px;}
.graph-engine-panel > b{display:block;margin:0 0 7px;font-size:0.77rem;color:var(--text-2);font-weight:600;}
.graph-engine-panel--reserve{grid-column:1 / -1;}
.graph-limits{margin:1px 0 0;font:400 0.71rem/1.5 var(--mono);color:var(--text-3);}
.graph{container-type:inline-size;}
@container (min-width:540px){.graph-engine-panels--paired{grid-template-columns:repeat(2, minmax(0, 1fr));}
}
.graph-tooltip{position:absolute;z-index:4;top:8px;right:8px;width:min(340px, calc(100% - 16px));padding:11px 13px;background:var(--surface);color:var(--text);border:1px solid var(--line-2);border-radius:10px;box-shadow:var(--shadow);pointer-events:none;font-size:0.7rem;line-height:1.45;}
.graph-tooltip[hidden]{display:none;}
.graph-plot--numeric .graph-tooltip{position:static;width:auto;margin-top:12px;box-shadow:none;}
.graph-tooltip > b{display:block;padding-bottom:8px;font:500 0.71rem/1.45 var(--mono);}
.graph-tooltip-note{display:block;margin-bottom:8px;color:var(--text-3);font-size:0.65rem;}
.graph-tooltip dl{display:grid;grid-template-columns:minmax(0, 1fr) auto;gap:5px 10px;}
.graph-tooltip dd{margin:0;font-family:var(--mono);font-weight:600;text-align:right;}
.graph-legend[data-engine="true"] li[data-side="before"]::before{background:repeating-linear-gradient(90deg, var(--k, var(--text)) 0 4px, transparent 4px 7px);}
.graph figcaption{display:grid;gap:6px;font-size:0.8rem;color:var(--text-3);line-height:1.5;}
.graph-basis{justify-self:start;font:500 0.62rem/1 var(--mono);letter-spacing:0.08em;text-transform:uppercase;color:var(--text-3);border:1px solid var(--line-2);padding:6px 9px;border-radius:999px;}
.graph:not(.graph--live) .graph-fallback{font-size:0.86rem;color:var(--text-2);}
.g-svg text{font-family:var(--mono);}
.g-tick{font-size:10.5px;fill:var(--text-3);}
.g-axis-label{font:10px var(--mono);fill:var(--text-2);}
.g-mark{fill:currentColor;stroke:currentColor;stroke-width:1.5;}
.g-mark--open{fill:var(--surface);stroke-width:2;}
.g-mark--load{color:var(--c-load);}
.g-mark--solar{color:var(--c-solar);}
.g-mark--grid{color:var(--c-grid);}
.g-mark--store, .g-mark--crit{color:var(--c-store);}
.g-mark--soc{color:var(--c-soc);}
.g-mark--shed{color:var(--alert);}
.g-mark--dg{color:var(--f-dg);}
.g-ylab, .g-bandl, .g-note, .g-side, .g-rowl{font-size:9.5px;fill:var(--text-3);letter-spacing:0.06em;}
.g-side{font-size:10px;fill:var(--text-2);}
.g-rowl{font-size:10.5px;fill:var(--text-2);letter-spacing:0;}
.g-gridl{stroke:var(--line);stroke-width:1;}
.g-axis{stroke:var(--line-2);stroke-width:1;}
.g-band--peak{fill:color-mix(in srgb, var(--alert) 9%, transparent);}
.g-band--off{fill:color-mix(in srgb, var(--c-grid) 6%, transparent);}
.g-band--normal{fill:transparent;}
.g-sun{fill:color-mix(in srgb, var(--c-solar) 8%, transparent);}
.g-l{fill:none;stroke-width:2.2;stroke-linejoin:round;stroke-linecap:round;}
.g-dash{stroke-dasharray:5 4;stroke-width:1.8;}
.g-l--reference{stroke-width:5;opacity:0.45;}
.g-l--solar{stroke:var(--c-solar);}
.g-l--load{stroke:var(--c-load);}
.g-l--grid{stroke:var(--c-grid);}
.g-l--soc{stroke:var(--c-soc);stroke-width:2.6;}
.g-l--dg{stroke:var(--f-dg);stroke-width:2.6;}
.g-l--store{stroke:var(--c-store);}
.g-l--shed{stroke:var(--alert);}
.g-l--crit{stroke:var(--c-store);stroke-width:3;stroke-dasharray:2 4;}
.g-l--dol{stroke:var(--alert);}
.g-l--sd{stroke:var(--c-solar);}
.g-l--soft{stroke:var(--c-grid);}
.g-l--vfd{stroke:var(--c-store);stroke-width:3;}
.g-a{stroke:none;}
.g-a--solar{fill:color-mix(in srgb, var(--c-solar) 42%, transparent);}
.g-a--store{fill:color-mix(in srgb, var(--c-store) 55%, transparent);}
.g-a--grid{fill:color-mix(in srgb, var(--c-grid) 34%, transparent);}
.g-a--chg{fill:color-mix(in srgb, var(--c-store) 26%, transparent);}
.g-a--load{fill:color-mix(in srgb, var(--c-load) 9%, transparent);}
.g-a--crit{fill:color-mix(in srgb, var(--c-store) 50%, transparent);}
.g-a--ncrit{fill:color-mix(in srgb, var(--c-grid) 30%, transparent);}
.g-a--shed{fill:repeating-linear-gradient(45deg, transparent, transparent);fill:color-mix(in srgb, var(--alert) 12%, transparent);}
.g-window{fill:color-mix(in srgb, var(--c-store) 7%, transparent);}
.g-limit{stroke:var(--text-3);stroke-dasharray:3 4;stroke-width:1;}
.g-pcs{stroke:var(--f-ems);stroke-dasharray:6 4;stroke-width:1.2;}
.g-bar--chg{fill:color-mix(in srgb, var(--c-store) 70%, transparent);}
.g-bar--dis{fill:var(--c-store);}
.g-bar--before{fill:color-mix(in srgb, var(--c-grid) 30%, transparent);stroke:var(--c-grid);stroke-dasharray:3 3;}
.g-bar--after{fill:var(--c-grid);}
.g-outage{fill:color-mix(in srgb, var(--alert) 10%, transparent);}
.g-dg{fill:var(--f-dg);}
.g-bess{fill:var(--c-store);}
.g-start{stroke:var(--alert);stroke-width:2;}
.g-cursor{stroke:var(--text);stroke-width:1;stroke-dasharray:2 3;opacity:0.7;}
.g-st-bg{fill:color-mix(in srgb, var(--text) 4%, transparent);}
.g-st--solar{fill:var(--c-solar);}
.g-st--chg{fill:color-mix(in srgb, var(--c-store) 55%, transparent);}
.g-st--store{fill:var(--c-store);}
.g-st--grid{fill:var(--c-grid);}
.g-st--outage{fill:var(--alert);}
.g-st--shed{fill:color-mix(in srgb, var(--alert) 50%, transparent);}
.g-st--on{fill:color-mix(in srgb, var(--text) 14%, transparent);}
[class*="g-st--d-"]{fill:color-mix(in srgb, var(--f-ems) 30%, transparent);}
.g-st--d-discharge, .g-st--d-shift{fill:color-mix(in srgb, var(--f-ems) 75%, transparent);}
.g-st--d-charge{fill:color-mix(in srgb, var(--f-ems) 50%, transparent);}
.g-st--d-shed{fill:var(--alert);}
.g-st--d-restore{fill:var(--c-grid);}
.mech{border-radius:22px;overflow:hidden;background:#0b2f25;color:#f1f7f2;border:1px solid rgba(255, 255, 255, 0.08);display:grid;box-shadow:var(--shadow);}
@media (min-width:960px){.mech{grid-template-columns:minmax(0, 1.1fr) minmax(0, 0.9fr);}
}
.mech-stage{position:relative;min-height:280px;background:radial-gradient(ellipse 70% 70% at 50% 45%, rgba(95, 214, 180, 0.12), transparent 70%), linear-gradient(var(--bp) 1px, transparent 1px) 0 0 / 32px 32px, linear-gradient(90deg, var(--bp) 1px, transparent 1px) 0 0 / 32px 32px, #0a2a21;}
.mech-stage svg{width:100%;height:100%;display:block;}
.mech-side{padding:24px;display:grid;gap:14px;align-content:start;border-left:1px solid rgba(255, 255, 255, 0.08);}
.mech-side h3{font-size:1.3rem;letter-spacing:-0.02em;}
.mech-side p{color:#c3d6cc;font-size:0.93rem;}
.mech-steps{display:flex;flex-wrap:wrap;gap:6px;}
.mech-steps button{border:1px solid rgba(255, 255, 255, 0.2);background:transparent;color:#d3e3da;transition:background .25s, border-color .25s;border-radius:999px;padding:6px 12px;font-size:0.78rem;}
.mech-steps button[aria-pressed="true"]{background:rgba(242, 165, 29, 0.18);border-color:#f2a51d;color:#fff;}
.mech-check{list-style:none;display:grid;gap:6px;font-size:0.84rem;color:#a9c0b4;border-top:1px solid rgba(255, 255, 255, 0.08);padding-top:12px;}
.mech-check li::before{content:"→ ";color:var(--cyan);}
.mech .label{font:500 0.66rem/1 var(--mono);letter-spacing:0.1em;text-transform:uppercase;color:var(--cyan-2);}
.mech-nav{display:flex;gap:6px;overflow-x:auto;padding-bottom:6px;margin-bottom:14px;scrollbar-width:thin;}
.mech-nav a{flex:none;text-decoration:none;font-size:0.82rem;padding:8px 13px;border-radius:999px;border:1px solid var(--line);color:var(--text-2);background:var(--surface);}
.mech-nav a:hover{border-color:var(--teal);color:var(--teal);}
.mech-list{display:grid;gap:22px;}
.m-flow{stroke-dasharray:4 8;animation:svFlow 1.4s linear infinite;}
.m-rev{animation-direction:reverse;}
@media (prefers-reduced-motion:reduce){.m-flow{animation:none;stroke-dasharray:none;}
}
.status-key{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0 0;}
.status-key span{font:500 0.7rem/1 var(--mono);letter-spacing:0.06em;padding:8px 11px;border-radius:999px;border:1px solid var(--line-2);color:var(--text-2);display:inline-flex;gap:8px;align-items:center;}
.status-key span::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--k);}
.arch-stack{display:grid;gap:8px;}
.arch-layer{display:grid;grid-template-columns:150px 1fr;gap:14px;align-items:center;padding:14px 16px;border-radius:14px;background:var(--surface);border:1px solid var(--line);position:relative;}
.arch-layer::after{content:"";position:absolute;left:90px;bottom:-9px;width:2px;height:10px;background:var(--line-2);}
.arch-layer:last-child::after{display:none;}
.arch-layer .mono{font-size:0.7rem;letter-spacing:0.1em;text-transform:uppercase;color:var(--k, var(--teal));}
.arch-layer b{display:block;font-size:0.98rem;}
.arch-layer span{font-size:0.86rem;color:var(--text-2);}
@media (max-width:640px){.arch-layer{grid-template-columns:1fr;gap:4px;}
.arch-layer::after{left:24px;}
}
.module{display:grid;gap:18px;border-radius:22px;padding:clamp(20px, 3vw, 32px);background:var(--surface);border:1px solid var(--line);}
@media (min-width:900px){.module{grid-template-columns:1fr 1fr;align-items:start;}
}
.cap-list{list-style:none;display:grid;gap:8px;}
.cap-list li{display:grid;grid-template-columns:auto 1fr;gap:10px;align-items:baseline;font-size:0.92rem;color:var(--text-2);}
.cap-list .st{font:500 0.62rem/1 var(--mono);letter-spacing:0.06em;text-transform:uppercase;padding:5px 8px;border-radius:6px;white-space:nowrap;}
.st--now{background:color-mix(in srgb, var(--c-store) 16%, transparent);color:var(--store);}
.st--dev{background:color-mix(in srgb, var(--c-solar) 18%, transparent);color:var(--solar);}
.st--plan{background:color-mix(in srgb, var(--text) 8%, transparent);color:var(--text-3);}
.record{display:grid;gap:0;border-radius:22px;overflow:hidden;border:1px solid var(--line);background:var(--surface);}
@media (min-width:900px){.record{grid-template-columns:1.1fr 0.9fr;}
}
.record-photo{position:relative;min-height:260px;background:repeating-linear-gradient(135deg, var(--surface-2) 0 14px, var(--surface-3) 14px 28px);display:grid;place-items:center;color:var(--text-3);font:500 0.75rem/1.4 var(--mono);text-align:center;padding:24px;}
.record-body{padding:clamp(20px, 3vw, 32px);display:grid;gap:12px;align-content:start;}
.scene{--f-dg:#d9692e;--f-motor:#0f8a7c;--f-solar:#e89a0c;--f-store:#12a05c;--f-grid:#3f6fe0;--f-load:#31495a;--f-ems:#7c62e0;--sk1:#cfe9e6;--sk2:#eef4ea;--sk3:#f8f1df;--gr1:#dcebdc;--gr2:#c4dccb;--halo:#ffd77a;position:relative;margin:0;border-radius:var(--radius-lg, 22px);overflow:hidden;background:#f4f6ef;color:var(--text, #10261e);container-type:inline-size;isolation:isolate;box-shadow:0 40px 90px -46px rgba(16, 38, 30, .45), 0 0 0 1px rgba(16, 38, 30, .08);}
.scene-stage{position:relative;aspect-ratio:16 / 9;background:linear-gradient(180deg, #d7ece8, #f4f1e4);}
.scene--narrow .scene-stage{aspect-ratio:1 / .95;}
@container (width < 620px){.scene--reserved .scene-stage{aspect-ratio:1 / .95;}
}
.scene-stage > img{width:100%;height:100%;object-fit:cover;}
.scene-stage svg.iso{position:absolute;inset:0;width:100%;height:100%;}
.scene-cap{position:absolute;left:14px;bottom:12px;font:500 .72rem/1 var(--mono);letter-spacing:.06em;text-transform:uppercase;color:#eaf5ef;background:rgba(11, 47, 37, .72);padding:7px 10px;border-radius:8px;backdrop-filter:blur(6px);}
.scene-basis{position:absolute;right:12px;top:12px;font:500 .68rem/1 var(--mono);letter-spacing:.06em;text-transform:uppercase;color:#2c4a3e;background:rgba(255, 255, 255, .78);border:1px solid rgba(16, 38, 30, .12);padding:7px 10px;border-radius:999px;backdrop-filter:blur(6px);}
.scene-bar{display:flex;flex-wrap:wrap;gap:10px 16px;align-items:center;justify-content:space-between;padding:12px 14px;border-bottom:1px solid rgba(16, 38, 30, .08);background:linear-gradient(180deg, #ffffff, #f7f8f3);}
.scene-tabs{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;max-width:100%;}
.scene-tabs::-webkit-scrollbar{display:none;}
.scene-tabs button{flex:none;text-align:left;border:1px solid rgba(16, 38, 30, .12);background:#fff;color:#3a4c44;border-radius:12px;padding:7px 11px;line-height:1.2;transition:background .25s, border-color .25s, color .25s, box-shadow .25s;}
.scene-tabs button b{display:block;font-size:.82rem;font-weight:600;color:#10261e;}
.scene-tabs button span{font:400 .68rem/1.3 var(--mono);color:#56685f;}
.scene-tabs button[aria-selected="true"]{background:#e7f4ec;border-color:#157a4b;box-shadow:inset 0 -2px 0 #157a4b;}
.scene-tabs button:hover{border-color:rgba(21, 122, 75, .5);}
.scene-tools{display:flex;gap:8px;align-items:center;flex-wrap:wrap;}
.seg--dark{display:inline-flex;border:1px solid rgba(16, 38, 30, .14);border-radius:999px;padding:3px;background:#f1f4ee;}
.seg--dark button{border:0;background:transparent;color:#3a4c44;padding:6px 12px;border-radius:999px;font-size:.78rem;font-weight:500;transition:background .25s, color .25s;}
.seg--dark button[aria-pressed="true"]{background:#157a4b;color:#fff;}
.scene-motion{border:1px solid rgba(16, 38, 30, .16);background:#fff;color:#3a4c44;border-radius:999px;padding:6px 12px;font-size:.78rem;}
.scene :focus-visible{outline:2px solid #e08a00;outline-offset:2px;}
.scene-foot{display:grid;grid-template-columns:minmax(0, 1.15fr) minmax(0, 1fr);gap:18px 28px;padding:16px 18px 18px;border-top:1px solid rgba(16, 38, 30, .08);background:#fbfaf6;}
.scene-legend{list-style:none;display:grid;grid-template-columns:repeat(2, minmax(0, 1fr));gap:6px 16px;font-size:.8rem;}
.scene-legend li{display:grid;grid-template-columns:20px minmax(0, auto) 1fr;gap:8px;align-items:baseline;color:#3a4c44;}
.scene-legend li:has(button), .scene-legend li:has(.scene-legend-item){display:block;}
.scene-legend button, .scene-legend-item{width:100%;display:grid;grid-template-columns:24px minmax(0, 1fr);gap:3px 8px;align-items:baseline;text-align:left;min-height:44px;border:1px solid transparent;border-radius:9px;padding:6px;background:transparent;font:inherit;color:inherit;}
.scene-legend button span:last-child, .scene-legend-item span:last-child{grid-column:2;}
.scene-legend button[aria-pressed="true"]{border-color:#e08a00;background:#fff3d8;}
.scene-inspect-hint{font-size:.77rem;color:#56685f;margin-bottom:7px;}
.scene-inspect{padding:11px;margin-top:9px;border:1px solid #d39222;border-radius:10px;background:#fff3d8;font-size:.84rem;}
.scene-inspect span{display:block;margin-top:4px;color:#3a4c44;}
.scene-legend .n{width:18px;height:18px;border-radius:50%;display:grid;place-items:center;font:600 .62rem/1 var(--mono);background:color-mix(in srgb, var(--k) 18%, #fff);color:#10261e;border:1px solid var(--k);}
.scene-legend b{color:#10261e;font-weight:600;white-space:nowrap;}
.scene-legend span:last-child{color:#3a4c44;}
.scene-legend li[data-st="ghost"]{opacity:.62;}
.scene-legend li[data-st="open"] span:last-child, .scene-legend li[data-st="trip"] span:last-child{color:#b3261e;}
.scene-legend li[data-st="shed"] span:last-child{color:#8f5600;}
.scene-narr p{color:#0f7468;font-size:.72rem;letter-spacing:.05em;text-transform:uppercase;margin-bottom:8px;}
.scene-narr ol{padding-left:18px;display:grid;gap:5px;font-size:.86rem;color:#2c3f37;}
@container (max-width:700px){.scene-foot{grid-template-columns:1fr;}
.scene-legend{grid-template-columns:1fr;}
}
.iso .ridge-1{fill:#b9d8cc;opacity:.75;}
.iso .ridge-2{fill:#a3c9b5;opacity:.7;}
.iso .gnd-edge{stroke:#8fbaa1;}
.iso .grid-l{stroke:#2f6b52;stroke-opacity:.08;}
.iso .rd{stroke:#7d8c88;opacity:.5;}
.iso .rd-l{stroke:#ffffff;opacity:.8;}
.iso [filter="url(#svBlur)"]{opacity:.16;}
.iso .l-tint{fill:#0b1a33;opacity:0;pointer-events:none;transition:opacity 1.4s ease, fill 1.4s ease;}
.iso .sky-sun, .iso .sky-sun-c{transition:opacity 1.4s ease;}
.iso .sky-moon{opacity:0;transition:opacity 1.4s ease;}
.iso[data-scenario="motor"] .l-tint{fill:#ffcf75;opacity:.07;}
.iso[data-scenario="peak"] .l-tint{fill:#7a4256;opacity:.2;}
.iso[data-scenario="outage"] .l-tint{fill:#25305a;opacity:.32;}
.iso[data-scenario="extended"] .l-tint{fill:#0b1a33;opacity:.46;}
.iso[data-scenario="peak"] .sky-sun, .iso[data-scenario="peak"] .sky-sun-c{opacity:.5;}
.iso[data-scenario="peak"] .sky-sun-c{fill:#ffb36b;}
.iso[data-scenario="outage"] .sky-sun, .iso[data-scenario="outage"] .sky-sun-c, .iso[data-scenario="extended"] .sky-sun, .iso[data-scenario="extended"] .sky-sun-c{opacity:0;}
.iso[data-scenario="outage"] .sky-moon, .iso[data-scenario="extended"] .sky-moon{opacity:.9;}
.scene-seq{display:flex;gap:0;overflow-x:auto;border-top:1px solid rgba(16, 38, 30, .08);scrollbar-width:thin;background:#fff;}
.scene-seq button{flex:1 0 168px;text-align:left;border:0;border-right:1px solid rgba(16, 38, 30, .07);background:transparent;color:#3a4c44;padding:14px 16px;display:grid;gap:4px;align-content:start;transition:background .25s, box-shadow .25s;}
.scene-seq button:hover, .scene-seq button[aria-pressed="true"]{background:#fdf3dc;box-shadow:inset 0 3px 0 #f2a51d;}
.scene-seq .mono{color:#0f7468;font-size:.68rem;}
.scene-seq b{font-size:.86rem;color:#10261e;font-weight:600;}
.scene-seq small{font-size:.74rem;color:#56685f;line-height:1.4;}
.iso text{font-family:var(--font);}
.iso .l-fit{transition:opacity .3s;}
.iso [data-absent]{display:none;}
.iso [data-ghost]{opacity:.26;filter:grayscale(1);}
.iso [data-ghost] *{animation:none !important;}
.iso.has-focus [data-part]:not(.is-focus), .iso.has-hover [data-part]:not(.is-hover){opacity:.35;transition:opacity .25s;}
.iso [data-part].is-focus, .iso [data-part].is-hover{filter:drop-shadow(0 0 7px rgba(242, 165, 29, .95));}
.iso.has-equip-focus .mc[data-eq]:not(.is-selected){opacity:.48;}
.iso .mc.is-selected{filter:drop-shadow(0 0 8px rgba(224, 138, 0, .95)) !important;}
.iso .physical-annotation.is-selected{filter:drop-shadow(0 0 8px rgba(224, 138, 0, .95));}
.iso .led{fill:#4b5d6b;}
.iso [data-st="in"] .led, .iso [data-st="out"] .led, .iso [data-st="on"] .led, .iso [data-st="ramp"] .led, .iso [data-st="surge"] .led{fill:#3ddc97;}
.iso [data-st="standby"] .led{fill:#f6b23a;animation:svBlink 1.6s steps(2) infinite;}
.iso [data-st="open"] .led, .iso [data-st="trip"] .led{fill:#ff6b5b;animation:svBlink .8s steps(2) infinite;}
.iso .switchgear .led-bus{fill:#3ddc97;}
.iso[data-scenario="outage"] .switchgear .led:not(.led-bus), .iso[data-scenario="extended"] .switchgear .led:not(.led-bus){fill:#ff6b5b;}
.iso .pv .glint{opacity:0;}
.iso .pv[data-st="in"] .glint{animation:svGlint 4.5s ease-in-out infinite;}
.iso .pv[data-st="off"]{filter:brightness(.6) saturate(.6);}
.iso .pv[data-st="trip"]{filter:brightness(.55) saturate(.4);}
.iso .soc-seg{fill:#24433d;transition:fill .4s;}
.iso .soc-seg.on{fill:#3ddc97;}
.iso .bess[data-st="in"] .soc-seg.on{fill:#3ddc97;}
.iso .bess[data-st="out"] .soc-seg.on{animation:svPulse 1.4s ease-in-out infinite;}
.iso .win{fill:#1a3347;transition:fill .5s;}
.iso [data-st="on"] .win{fill:#8fc3d6;}
.iso [data-st="on"] .win.lit{fill:#ffd88a;}
.iso [data-st="shed"] .win{fill:#2b4256;}
.iso [data-st="shed"] .win.lit{fill:#5a6f80;}
.iso .lift [data-lift] rect{transition:fill .4s;}
.iso .lift:not([data-st="on"]) [data-lift] rect{fill:#4d5f6e;}
.iso .disp{fill:#1a3347;}
.iso [data-st="on"] .disp{fill:#7fe1d6;}
.iso .temp{fill:#7fd6ff;}
.iso .cold:not([data-st="on"]) .temp{fill:#ff9b8f;}
.iso .exhaust circle{fill:#9aa9b4;opacity:0;}
.iso .mc[data-eq="dg"][data-st="in"] .exhaust circle{animation:svPuff 2.4s ease-out infinite;animation-delay:calc(var(--i) * .8s);}
.iso .mc[data-eq="dg"][data-st="in"]{filter:drop-shadow(0 0 10px rgba(255, 138, 76, .35));}
.iso .pcs-mode{fill:#5d7891;}
.iso .pcs[data-st="in"] .pcs-mode, .iso .pcs[data-st="out"] .pcs-mode{fill:#7ff0c8;}
.iso[data-scenario="outage"] .pcs[data-st="in"], .iso[data-scenario="extended"] .pcs[data-st="in"]{filter:drop-shadow(0 0 10px rgba(61, 220, 151, .5));}
.iso .ems-bar{animation:svBar 2.2s ease-in-out infinite;animation-delay:var(--d);transform-box:fill-box;transform-origin:bottom;}
.iso .ems-ping{animation:svPing 2.4s ease-out infinite;transform-box:fill-box;transform-origin:center;}
.iso .vfd-hz{transform-box:fill-box;transform-origin:left;transform:scaleX(.08);transition:transform 3.2s linear;}
.iso .vfd[data-st="on"] .vfd-hz, .iso .vfd[data-st="ramp"] .vfd-hz{transform:scaleX(1);}
.iso .vfd[data-st="surge"] .vfd-hz{transform:scaleX(1);transition-duration:.1s;fill:#ff8a4c;}
.iso .mc[data-st="surge"]{animation:svShake .14s linear 7;}
.iso .cable .c-base{fill:none;stroke:#6c7f7a;stroke-opacity:.55;stroke-width:4;stroke-linecap:round;stroke-linejoin:round;}
.iso .cable.dc .c-base{stroke-dasharray:1 0;}
.iso .cable .c-flow{fill:none;stroke:var(--k);stroke-width:2.8;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:3 7;opacity:0;}
.iso .cable.f-fwd .c-flow, .iso .cable.f-rev .c-flow{opacity:1;animation:svFlow 1.6s linear infinite;}
.iso .cable.f-rev .c-flow{animation-direction:reverse;}
.iso .cable.f-surge .c-flow{animation-duration:.5s;stroke-width:3.4;}
.iso .cable.f-open .c-base{stroke:#c0392b;stroke-opacity:.7;stroke-dasharray:6 6;}
.iso .cable.is-hidden, .iso .comm.is-hidden{display:none;}
.iso .comm{fill:none;stroke:#7c62e0;stroke-width:1.3;stroke-dasharray:2 5;opacity:.75;animation:svFlow 3s linear infinite;}
.iso .co-line{stroke:rgba(16, 38, 30, .5);stroke-width:1.2;fill:none;vector-effect:non-scaling-stroke;pointer-events:none;}
.iso .co-dot{fill:#10261e;stroke:#fff;stroke-width:1.2;}
.iso .co{outline:none;}
.iso .co[role="button"] .co-label, .iso .co[role="button"] .co-pin{cursor:pointer;}
.iso .co-card{fill:rgba(255, 255, 255, .96);stroke:#a7c4b4;stroke-width:1;}
.iso .co-name{font-size:14px;font-weight:600;fill:#10261e;}
.iso .co-state{font:600 12px var(--mono);fill:#0b6b5f;}
.iso .co.is-selected .co-card, .iso .co:focus-visible .co-card{fill:#fff3d8;stroke:#b66a00;stroke-width:2;}
.iso .co[data-st="open"] .co-state, .iso .co[data-st="trip"] .co-state, .iso .co[data-st="off"] .co-state{fill:#b3261e;}
.iso .co[data-st="shed"] .co-state, .iso .co[data-st="standby"] .co-state{fill:#8f5600;}
.iso .co[data-st="ghost"] .co-state{fill:#56685f;}
.iso .co.is-hidden{display:none;}
.iso .co-pin{display:none;}
.iso .co-pin circle{fill:#ffffff;stroke:#157a4b;stroke-width:1.8;}
.iso .co-pin text{font:700 16px var(--mono);fill:#10261e;pointer-events:none;}
.scene--narrow .iso .co-label{display:none;}
.scene--narrow .iso .co-pin{display:inline;}
.iso .co.is-selected .co-pin circle, .iso .co:focus-visible .co-pin circle{fill:#ffe3a5;stroke:#a96100;stroke-width:2.5;}
.scene.is-paused .iso *, .scene.is-still .iso *{animation-play-state:paused !important;}
@keyframes svFlow{to{stroke-dashoffset:-100;}
}
@keyframes svGlint{0%, 100%{opacity:0;}
50%{opacity:.9;}
}
@keyframes svBlink{50%{opacity:.25;}
}
@keyframes svPulse{50%{opacity:.55;}
}
@keyframes svPuff{0%{opacity:.75;transform:translate(0, 0) scale(.6);}
100%{opacity:0;transform:translate(10px, -34px) scale(2.4);}
}
@keyframes svBar{50%{transform:scaleY(.45);}
}
@keyframes svPing{0%{opacity:.9;transform:scale(.6);}
100%{opacity:0;transform:scale(3);}
}
@keyframes svShake{25%{transform:translate(1px, -1px);}
75%{transform:translate(-1px, 1px);}
}
.iso .exhaust circle{transform-box:fill-box;transform-origin:center;}
@media (prefers-reduced-motion:reduce){.iso *, .iso *::before{animation:none !important;transition:none !important;}
.iso .cable.f-fwd .c-flow, .iso .cable.f-rev .c-flow{stroke-dasharray:none;opacity:.9;}
.iso .pv[data-st="in"] .glint{opacity:.35;}
.iso .mc[data-eq="dg"][data-st="in"] .exhaust circle{opacity:.5;}
}
.hero-scene{margin-top:28px;}
.hero-scene .scene{box-shadow:0 60px 120px -60px rgba(16, 38, 30, 0.55), 0 0 0 1px rgba(16, 38, 30, 0.08);}
.hero-visual .art{box-shadow:0 50px 100px -50px rgba(16, 38, 30, 0.6);}
.xp-plant{margin-bottom:10px;}
.xp-plant .scene{border-radius:14px;box-shadow:0 0 0 1px rgba(255, 255, 255, 0.14);}
.scene--external .scene-narr{display:none;}
.scene--external .scene-foot{grid-template-columns:1fr;}
.scene--external .scene-legend{grid-template-columns:repeat(auto-fill, minmax(280px, 1fr));}
.qa-layout{display:grid;gap:22px;align-items:center;}
@media (min-width:1040px){.qa-layout{grid-template-columns:minmax(0, 1.15fr) minmax(0, 0.85fr);}
}
.qa-layout .qa{margin:0;box-shadow:0 40px 90px -40px rgba(0, 0, 0, 0.8);}
.qa-art img{transition:opacity 0.4s var(--ease);}
.reference-demo{border:1px solid var(--line);border-radius:18px;background:var(--surface);margin:14px 0;}
.reference-demo > summary{padding:18px 22px;min-height:60px;cursor:pointer;font-weight:600;color:var(--text);}
.reference-demo[open] > summary{border-bottom:1px solid var(--line);}
.ink .trust-row span{color:var(--text-2);}
.ink .xp-opt input:checked + span{background:rgba(95, 214, 180, 0.16);border-color:var(--cyan);color:#ffffff;}
.part .role{color:color-mix(in srgb, var(--k, var(--text-3)) 55%, #0f1d2b);}
.case-status[data-status]{color:color-mix(in srgb, currentColor 60%, #0f1d2b);}
.case-status[data-status="engineering-study"]{color:#5a43b8;}
.case-status[data-status="in-execution"]{color:#2a55bd;}
.arch-layer .cap-list{display:inline-flex;margin-top:6px;}
.arch-layer .cap-list .st{display:inline-block;}
.hero--brand{padding-top:clamp(30px, 4.5vw, 64px);padding-bottom:clamp(28px, 4vw, 48px);}
.hero-brand{display:grid;gap:clamp(28px, 4vw, 56px);align-items:center;}
@media (min-width:1100px){.hero-brand{grid-template-columns:minmax(0, 1fr) minmax(0, 1.05fr);}
}
.hero--brand .display{margin-top:18px;font-size:clamp(2.6rem, 1.3rem + 4.6vw, 5.4rem);line-height:1;letter-spacing:-0.05em;font-weight:600;}
.hero--brand .lead{margin-top:20px;}
.hero--brand .btn-row{margin-top:26px;}
.journeys{display:grid;gap:10px;margin-top:26px;}
@media (min-width:620px){.journeys{grid-template-columns:1fr 1fr;}
}
.journey-card{position:relative;display:grid;gap:3px;padding:14px 40px 14px 16px;border-radius:16px;text-decoration:none;background:rgba(255, 255, 255, .78);border:1px solid var(--line);box-shadow:var(--shadow);transition:transform .35s var(--ease), box-shadow .35s, border-color .35s;}
.journey-card .mono{font-size:.66rem;letter-spacing:.1em;text-transform:uppercase;color:var(--green-2);}
.journey-card b{font-size:.98rem;letter-spacing:-.01em;}
.journey-card span:last-of-type{font-size:.82rem;color:var(--text-2);}
.journey-card i{position:absolute;right:14px;top:50%;translate:0 -50%;font-style:normal;color:var(--green);transition:transform .3s var(--ease);}
.journey-card:hover{transform:translateY(-2px);border-color:rgba(21, 122, 75, .4);box-shadow:0 22px 40px -26px rgba(16, 38, 30, .5);}
.journey-card:hover i{transform:translateX(4px);}
.journey-card--oem .mono{color:var(--amber-t);}
.journey-card--oem i{color:var(--amber-2);}
.hero-brand-visual{position:relative;min-width:0;}
.hero-brand-visual::before{content:"";position:absolute;inset:8% -4% -6% 10%;border-radius:40px;background:radial-gradient(ellipse at 70% 20%, rgba(242, 165, 29, .35), transparent 60%), radial-gradient(ellipse at 20% 90%, rgba(63, 174, 106, .3), transparent 60%);filter:blur(30px);z-index:0;}
.hero-vignette{position:relative;z-index:1;border-radius:26px;overflow:hidden;background:linear-gradient(180deg, #d7ece8, #f4f1e4);box-shadow:0 50px 100px -50px rgba(16, 38, 30, .6), 0 0 0 1px rgba(16, 38, 30, .07);}
.hero-vignette > img{width:100%;height:auto;aspect-ratio:16 / 10;object-fit:cover;}
.hero-vignette .scene{border-radius:0;box-shadow:none;background:transparent;}
.hero-vignette .scene-foot, .hero-vignette .scene-basis, .hero-vignette .l-co{display:none;}
.hero-vignette .scene-stage{aspect-ratio:16 / 10;}
.vg-bar{position:absolute;left:12px;right:12px;bottom:12px;display:flex;gap:8px;align-items:center;justify-content:space-between;z-index:2;}
.vg-cap{display:inline-flex;align-items:center;gap:8px;font-size:.8rem;font-weight:500;color:var(--text);background:rgba(255, 255, 255, .88);backdrop-filter:blur(8px);padding:8px 12px;border-radius:999px;box-shadow:0 8px 20px -12px rgba(16, 38, 30, .5);max-width:100%;}
.vg-dot{width:8px;height:8px;border-radius:50%;background:var(--green);box-shadow:0 0 0 4px rgba(21, 122, 75, .18);flex:none;}
.hero-vignette[data-s="peak"] .vg-dot{background:var(--amber-2);box-shadow:0 0 0 4px rgba(224, 138, 0, .2);}
.hero-vignette[data-s="outage"] .vg-dot{background:#6a4fd0;box-shadow:0 0 0 4px rgba(106, 79, 208, .2);}
.vg-btn{flex:none;border:1px solid var(--line-2);background:rgba(255, 255, 255, .9);border-radius:999px;padding:6px 12px;font-size:.76rem;}
.hero-roles{position:relative;z-index:2;list-style:none;display:flex;flex-wrap:wrap;gap:6px;margin-top:14px;justify-content:center;}
.hero-roles li{font-size:.78rem;color:var(--text-2);background:rgba(255, 255, 255, .82);border:1px solid var(--line);border-radius:999px;padding:6px 11px;}
.hero-roles b{color:var(--k);font-weight:700;}
.cap-strip{list-style:none;display:flex;flex-wrap:wrap;gap:8px 22px;margin-top:clamp(28px, 4vw, 44px);padding-top:18px;border-top:1px solid var(--line);font:500 .74rem/1.4 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--text-3);}
.cap-strip li{display:inline-flex;align-items:center;gap:8px;}
.cap-strip li::before{content:"";width:6px;height:6px;border-radius:50%;background:linear-gradient(135deg, var(--amber), var(--leaf-2));}
.sec--changes{background:radial-gradient(ellipse 50% 40% at 100% 0%, rgba(242, 165, 29, .08), transparent 60%), radial-gradient(ellipse 50% 40% at 0% 100%, rgba(63, 174, 106, .08), transparent 60%), var(--bg);}
.mv{opacity:0;transform:translateY(18px);}
.mv.mv-in{opacity:1;transform:none;transition:opacity .8s var(--ease) var(--mv-d, 0ms), transform .8s var(--ease) var(--mv-d, 0ms);}
@media (prefers-reduced-motion:reduce){.mv{opacity:1;transform:none;}
}
.carousel--live{position:relative;}
.carousel--live .car-track{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(260px, 23%);grid-template-columns:none;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-inline:2px;padding:4px 2px 18px;scrollbar-width:none;overscroll-behavior-x:contain;}
.carousel--live .car-track::-webkit-scrollbar{display:none;}
.carousel--live .car-track > *{scroll-snap-align:start;}
.carousel--live .car-track:focus-visible{outline:2px solid var(--amber-2);outline-offset:4px;border-radius:18px;}
@media (max-width:900px){.carousel--live .car-track{grid-auto-columns:minmax(240px, 72%);}
}
.car-nav{display:flex;align-items:center;gap:12px;margin-top:8px;}
.car-btn{width:44px;height:44px;border-radius:50%;border:1px solid var(--line-2);background:var(--surface);color:var(--text);font-size:1.05rem;display:grid;place-items:center;transition:background .25s, color .25s, transform .25s var(--ease), border-color .25s;}
.car-btn:hover:not(:disabled){background:var(--forest);color:#fff;border-color:var(--forest);transform:translateY(-1px);}
.car-btn:disabled{opacity:.35;cursor:default;}
.car-pos{flex:1;height:3px;border-radius:3px;background:var(--line);overflow:hidden;max-width:260px;}
.car-pos i{display:block;height:100%;background:linear-gradient(90deg, var(--amber), var(--leaf-2));border-radius:3px;transition:margin-left .2s;}
.ink .car-btn{background:rgba(255, 255, 255, .06);color:#fff;}
.iso .l-trench path{fill:none;stroke:#c9d2cc;stroke-width:11;stroke-linecap:square;stroke-linejoin:miter;}
.iso .l-trench{filter:drop-shadow(0 1px 0 #9fb0a6);}
@media (max-width:1099px){#svai #svai-launch{padding:8px;min-height:50px;gap:0}
#svai #svai-launch > span:last-child{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
}
.crumbs a{display:inline-flex;align-items:center;min-height:24px;}
.table-scroll{max-width:100%;min-width:0;}
.bill-box{min-width:0;}
.bill-box input[type=file]{max-width:100%;min-width:0;}
main select{max-width:100%;}
