.product-home {
    --product-bg:#0b1220;
    --product-panel:#111c2e;
    --product-raised:#17243a;
    --product-ink:#f3f6fc;
    --product-copy:#bbc7da;
    --product-muted:#a5b4ca;
    --product-line:#2a3950;
    --product-blue:#2563eb;
    --product-blue-hover:#1d4ed8;
    --product-link:#8cb8ff;
    --product-green:#73d9b1;
    --product-purple:#c8acff;
    --product-header:#0b1220f5;
    --product-focus:#93c5fd;
    margin:0;
    background:var(--product-bg);
    color:var(--product-ink);
    font-family:'Inter Variable',Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
    font-size:16px;
    line-height:1.65;
    -webkit-font-smoothing:antialiased;
    color-scheme:dark;
    scrollbar-color:var(--product-muted) var(--product-bg);
    scrollbar-width:auto;
}
.product-home ::-webkit-scrollbar { width:12px; height:12px; }
.product-home ::-webkit-scrollbar-track { background:var(--product-bg); }
.product-home ::-webkit-scrollbar-thumb { background:var(--product-muted); border:3px solid var(--product-bg); border-radius:8px; }
.product-home ::-webkit-scrollbar-thumb:hover { background:var(--product-copy); }
.product-home ::-webkit-scrollbar-thumb:active { background:var(--product-ink); }

.product-price-grid { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,.8fr); gap:64px; align-items:center; }
.product-price-card { padding:40px; border:1px solid var(--product-line); border-top:4px solid var(--product-blue); background:var(--product-panel); border-radius:14px; }
.product-price-card .product-price { margin-top:16px; color:var(--product-ink); font-size:20px; }
.product-price strong { font-size:clamp(44px,5vw,68px); letter-spacing:-.06em; font-variant-numeric:tabular-nums; }
.product-setup { padding-block:24px; margin-block:20px; border-block:1px solid var(--product-line); color:var(--product-copy); }
.product-setup strong { color:var(--product-ink); font-size:24px; display:block; }
.product-setup span { display:block; font-size:14px; }
.product-price-note { font-size:14px; color:var(--product-muted); margin-bottom:24px!important; }
.product-price-card .product-button { width:100%; margin-top:12px; }
.product-start-steps { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:32px; padding:0; list-style:none; }
.product-start-steps li { padding:28px; background:var(--product-panel); border-radius:12px; border:1px solid var(--product-line); }
.product-start-steps h3 { margin-block:20px 12px; }
.product-start-steps p { color:var(--product-copy); }
.product-actions form { margin:0; }
.product-button { font-family:inherit; cursor:pointer; }
@media(max-width:760px) {
    .product-price-grid,.product-start-steps { grid-template-columns:minmax(0,1fr); gap:24px; }
    .product-price-card { padding:26px; }
    .product-actions form { width:100%; }
    .product-actions form .product-button { width:100%; }
}
html[data-theme=light] .product-home {
    --product-bg:#f8fafc;
    --product-panel:#ffffff;
    --product-raised:#edf2f8;
    --product-ink:#12213a;
    --product-copy:#43546d;
    --product-muted:#54657d;
    --product-line:#dbe3ee;
    --product-link:#1d4ed8;
    --product-green:#08734f;
    --product-purple:#6d28d9;
    --product-header:#f8fafcf5;
    --product-focus:#1d4ed8;
    color-scheme:light;
}
html { scroll-behavior:smooth; }
.product-home * { box-sizing:border-box; }
.product-home :is(h1,h2,h3,p,figure) { margin:0; }
.product-home a { color:inherit; }
.product-home button,.product-home select { font:inherit; }
.product-home svg { display:block; flex-shrink:0; width:22px; height:22px; }
.product-home img { display:block; max-width:100%; height:auto; }
.product-home :is(a,button,select,summary):focus-visible { outline:3px solid var(--product-focus); outline-offset:5px; }
.product-home :is(section,[id]) { scroll-margin-top:108px; }
.product-wrap { width:min(100% - 112px,1680px); margin-inline:auto; }
.product-sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; border:0; }
.product-skip { position:fixed; top:12px; left:16px; z-index:100; padding:12px 18px; background:var(--product-ink); color:var(--product-bg)!important; border-radius:8px; text-decoration:none; transform:translateY(-180%); }
.product-skip:focus { transform:translateY(0); }
.product-header { position:sticky; top:0; z-index:40; background:var(--product-header); border-bottom:1px solid var(--product-line); backdrop-filter:blur(16px); }
.product-header-inner { display:flex; align-items:center; justify-content:space-between; gap:28px; min-height:84px; }
.product-brand { display:inline-flex; align-items:center; flex-shrink:0; font-size:26px; line-height:1; font-weight:780; letter-spacing:-.045em; text-decoration:none; }
.product-nav { display:flex; align-items:center; gap:30px; }
.product-nav a,.product-status-link { display:inline-flex; align-items:center; min-height:44px; font-size:14px; font-weight:560; text-decoration:none; color:var(--product-copy); white-space:nowrap; }
.product-nav a:hover,.product-status-link:hover,.product-footer a:hover { color:var(--product-link); }
.product-header-actions { display:flex; align-items:center; gap:20px; }
.product-theme { display:flex; align-items:center; gap:10px; color:var(--product-copy); font-size:13px; }
.product-theme select { max-width:150px; min-height:44px; padding:8px 28px 8px 10px; border:1px solid var(--product-line); border-radius:8px; color:var(--product-copy); background:var(--product-panel); cursor:pointer; font-size:13px; }
.product-button { display:inline-flex; align-items:center; justify-content:center; gap:12px; min-height:52px; padding:12px 22px; border:1px solid transparent; border-radius:9px; font-size:15px; font-weight:650; line-height:1.5; text-decoration:none; text-align:center; transition:background-color .15s,border-color .15s; }
.product-button svg { width:19px; height:19px; }
.product-button-primary { background:var(--product-blue); color:#fff!important; border-color:var(--product-blue); }
.product-button-primary:hover { background:var(--product-blue-hover); border-color:var(--product-blue-hover); }
.product-button-outline { background:transparent; border-color:var(--product-line); color:var(--product-ink); }
.product-button-outline:hover { background:var(--product-raised); border-color:var(--product-muted); }
.product-button-small { min-height:44px; padding:9px 18px; font-size:14px; }
.product-menu { display:none; }
.product-hero { border-bottom:1px solid var(--product-line); }
.product-hero-grid { display:grid; grid-template-columns:minmax(0,.85fr) minmax(0,1.25fr); align-items:center; gap:68px; padding-block:112px 88px; }
.product-eyebrow { color:var(--product-link); font-size:12px; font-weight:720; line-height:1.5; letter-spacing:.10em; text-transform:uppercase; }
.product-hero h1 { margin-top:24px; font-size:clamp(42px,3.3vw,64px); font-weight:720; letter-spacing:-.055em; line-height:1.09; }
.product-hero h1 span { color:var(--product-copy); }
.product-lead { max-width:34em; margin-top:28px!important; font-size:19px; line-height:1.75; color:var(--product-copy); }
.product-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:34px; }
.product-hero-note { max-width:38em; margin-top:22px!important; color:var(--product-muted); font-size:13px; }
.product-screen { min-width:0; padding:10px 10px 0; background:var(--product-panel); border:1px solid var(--product-line); border-radius:14px; box-shadow:0 24px 64px #0003; }
.product-screen-link { display:block; border:1px solid var(--product-line); border-radius:8px; overflow:hidden; }
.product-screen img { width:100%; aspect-ratio:16/9; object-fit:contain; background:#0b1220; }
.product-screen figcaption { display:flex; align-items:center; justify-content:space-between; gap:16px; min-height:50px; padding:10px 4px; color:var(--product-muted); font-size:11px; line-height:1.5; }
.product-screen figcaption a { display:inline-flex; align-items:center; gap:6px; min-height:32px; color:var(--product-copy); text-decoration:none; white-space:nowrap; }
.product-screen figcaption a:hover { color:var(--product-link); }
.product-screen figcaption svg { width:14px; height:14px; }
.product-hero-bottom { display:flex; align-items:center; justify-content:space-between; gap:28px; padding-block:27px; border-top:1px solid var(--product-line); }
.product-hero-bottom>p { color:var(--product-ink); font-size:14px; font-weight:600; }
.product-hero-bottom ul { display:flex; flex-wrap:wrap; gap:16px 34px; margin:0; padding:0; list-style:none; color:var(--product-muted); font-size:13px; }
.product-section { padding-block:104px; }
.product-section-heading { max-width:790px; margin-bottom:44px; }
.product-section-heading h2 { margin-top:16px; font-size:clamp(31px,2.45vw,46px); font-weight:680; line-height:1.16; letter-spacing:-.045em; }
.product-section-heading>p:not(.product-eyebrow) { max-width:680px; margin-top:22px; font-size:17px; line-height:1.75; color:var(--product-copy); }
.product-feature-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; }
.product-feature { min-width:0; padding:28px; border:1px solid var(--product-line); border-radius:12px; background:var(--product-panel); }
.product-feature-icon { display:inline-flex; align-items:center; justify-content:center; width:44px; height:44px; margin-bottom:22px; border:1px solid var(--product-line); border-radius:10px; color:var(--product-link); background:var(--product-raised); }
.product-feature h3 { max-width:24em; margin-bottom:12px; font-size:18px; line-height:1.45; font-weight:640; letter-spacing:-.025em; }
.product-feature p { color:var(--product-copy); font-size:14px; line-height:1.8; }
.product-type-legend { display:flex; flex-wrap:wrap; gap:7px; margin:18px 0 0; padding:0; list-style:none; font-size:10px; font-weight:650; line-height:1.5; }
.product-type-legend li { padding:3px 7px; border:1px solid currentColor; border-radius:4px; }
.product-type-labor { color:var(--product-link); }.product-type-stock { color:var(--product-green); }.product-type-supplier { color:var(--product-purple); }
.product-workflow { border-block:1px solid var(--product-line); background:var(--product-panel); }
.product-heading-row { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,.75fr); align-items:end; gap:100px; max-width:none; }
.product-heading-row>p { max-width:490px!important; margin:0!important; }
.product-steps { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:38px; margin:52px 0 0; padding:0; list-style:none; }
.product-steps li { padding-top:24px; border-top:2px solid var(--product-line); }
.product-step-number { color:var(--product-green); font-size:13px; font-weight:720; letter-spacing:.05em; }
.product-steps h3 { margin-top:18px; font-size:20px; font-weight:620; letter-spacing:-.025em; }
.product-steps p { margin-top:12px; color:var(--product-copy); font-size:14px; line-height:1.8; }
.product-portal-grid { display:grid; grid-template-columns:minmax(0,.95fr) minmax(0,1fr); align-items:center; gap:120px; }
.product-portal-grid .product-section-heading { margin-bottom:0; }
.product-text-link { display:inline-flex; align-items:center; gap:10px; min-height:44px; margin-top:24px; color:var(--product-link)!important; font-size:14px; font-weight:620; text-decoration:none; }
.product-text-link:hover { text-decoration:underline; text-underline-offset:4px; }
.product-text-link svg { width:18px; height:18px; }
.product-portal-details { display:grid; gap:0; padding:8px 32px; border:1px solid var(--product-line); border-radius:12px; background:var(--product-panel); }
.product-portal-details article { display:flex; gap:22px; padding-block:30px; }
.product-portal-details article+article { border-top:1px solid var(--product-line); }
.product-portal-details article>svg { width:24px; height:24px; margin-top:3px; color:var(--product-green); }
.product-portal-details h3 { margin-bottom:10px; font-size:18px; font-weight:620; line-height:1.45; letter-spacing:-.025em; }
.product-portal-details p { color:var(--product-copy); font-size:14px; line-height:1.8; }
.product-faq-section { border-top:1px solid var(--product-line); }
.product-faq-grid { display:grid; grid-template-columns:minmax(0,.75fr) minmax(0,1.1fr); gap:120px; }
.product-faq-grid .product-section-heading { margin:0; }
.product-faq details { border-bottom:1px solid var(--product-line); }
.product-faq details:first-child { border-top:1px solid var(--product-line); }
.product-faq summary { padding:24px 24px 24px 4px; font-size:16px; font-weight:580; cursor:pointer; line-height:1.6; }
.product-faq summary::marker { color:var(--product-link); }
.product-faq details[open] summary { color:var(--product-link); }
.product-faq details>div { padding:0 20px 26px; color:var(--product-copy); font-size:15px; line-height:1.8; }
.product-faq .product-text-link { margin-top:12px; }
.product-cta-section { padding-top:0; }
.product-cta { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:72px; padding:54px 60px; border:1px solid var(--product-line); border-radius:16px; background:var(--product-panel); }
.product-cta h2 { max-width:840px; margin-top:14px; font-size:clamp(28px,2.2vw,40px); line-height:1.18; font-weight:660; letter-spacing:-.04em; }
.product-cta p:not(.product-eyebrow) { max-width:760px; margin-top:18px; color:var(--product-copy); font-size:16px; }
.product-cta-actions { display:flex; flex-direction:column; align-items:center; gap:13px; }
.product-cta-actions>span { color:var(--product-muted); font-size:11px; }
.product-footer { padding-block:42px; border-top:1px solid var(--product-line); }
.product-footer-inner { display:flex; align-items:center; justify-content:space-between; gap:30px; }
.product-footer-inner>div { flex-shrink:0; }
.product-footer nav { justify-content:flex-end; max-width:780px; }
.product-faq p { overflow-wrap:anywhere; }
.product-footer .product-brand { font-size:23px; }
.product-footer p { margin-top:12px; color:var(--product-muted); font-size:12px; }
.product-footer nav { display:flex; flex-wrap:wrap; gap:16px 32px; }
.product-footer nav a { display:inline-flex; align-items:center; min-height:44px; color:var(--product-copy); text-decoration:none; font-size:13px; }
@media(min-width:1700px) {
    .product-hero-grid { min-height:680px; padding-block:80px 56px; }
    .product-features { padding-top:80px; }
}
@media(max-width:1440px) {
    .product-wrap { width:min(100% - 72px,1680px); }
    .product-header-inner { gap:20px; }.product-nav { gap:20px; }.product-header-actions { gap:12px; }
    .product-hero-grid { gap:40px; padding-block:84px 68px; }
    .product-hero h1 { font-size:clamp(40px,3.8vw,54px); }.product-lead { font-size:17px; }
    .product-feature { padding:24px; }.product-feature h3 { font-size:17px; }
    .product-portal-grid,.product-faq-grid { gap:72px; }
}
@media(max-width:1180px) {
    .product-desktop-theme { display:none; }.product-hero-grid { gap:32px; }
    .product-feature-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .product-hero-bottom { align-items:flex-start; }.product-hero-bottom ul { justify-content:flex-end; gap:12px 24px; max-width:60%; }
    .product-portal-grid,.product-faq-grid { gap:48px; }.product-heading-row { gap:56px; }
}
@media(max-width:980px) {
    .product-wrap { width:calc(100% - 48px); }.product-header-inner { min-height:72px; }
    .product-nav,.product-status-link { display:none; }.product-menu { display:block; position:relative; }
    .product-menu>summary { display:flex; align-items:center; justify-content:center; gap:8px; min-height:44px; padding:8px 10px; border:1px solid var(--product-line); border-radius:8px; font-size:13px; cursor:pointer; list-style:none; }
    .product-menu>summary::-webkit-details-marker { display:none; }.product-menu>summary svg { width:20px; height:20px; }
    .product-menu-panel { position:absolute; right:0; top:calc(100% + 12px); width:300px; max-width:calc(100vw - 48px); padding:16px; border:1px solid var(--product-line); border-radius:10px; background:var(--product-panel); box-shadow:0 12px 30px #0003; }
    .product-menu:not([open]) .product-menu-panel { display:none; }.product-menu-panel nav { display:grid; }
    .product-menu-panel nav a { display:flex; align-items:center; min-height:44px; padding:8px; color:var(--product-copy); text-decoration:none; font-size:14px; }
    .product-menu-panel .product-theme { justify-content:space-between; margin-top:12px; padding-top:16px; border-top:1px solid var(--product-line); }
    .product-hero-grid { grid-template-columns:1fr; padding-block:72px 48px; gap:44px; }.product-hero-copy { max-width:740px; }
    .product-hero h1 { max-width:720px; font-size:56px; }.product-lead { max-width:650px; font-size:18px; }
    .product-screen { max-width:100%; }.product-section { padding-block:80px; }.product-cta-section { padding-top:0; }
    .product-heading-row,.product-portal-grid,.product-faq-grid { grid-template-columns:1fr; gap:40px; }
    .product-heading-row>p { max-width:650px!important; }.product-steps { gap:24px; grid-template-columns:repeat(2,minmax(0,1fr)); }
    .product-portal-grid .product-section-heading { max-width:650px; }.product-faq-grid .product-section-heading { max-width:650px; }
    .product-cta { grid-template-columns:1fr; gap:32px; padding:40px; }.product-cta-actions { align-items:flex-start; }
}
@media(max-width:640px) {
    .product-wrap { width:calc(100% - 36px); }.product-home :is(section,[id]) { scroll-margin-top:90px; }
    .product-header-inner { min-height:68px; gap:12px; }.product-brand { font-size:23px; }.product-header-actions { gap:8px; }
    .product-button-small { padding-inline:12px; font-size:13px; }.product-menu>summary { padding-inline:9px; }.product-menu>summary span { display:none; }
    .product-hero-grid { padding-block:52px 36px; gap:36px; }.product-eyebrow { font-size:10px; letter-spacing:.08em; }
    .product-hero h1 { margin-top:20px; font-size:clamp(36px,9.6vw,48px); letter-spacing:-.05em; }.product-lead { margin-top:22px!important; font-size:16px; line-height:1.8; }
    .product-actions { display:grid; gap:10px; margin-top:28px; }.product-actions .product-button { width:100%; }.product-button { font-size:14px; padding-inline:18px; }
    .product-hero-note { margin-top:18px!important; font-size:12px; }.product-screen { padding:6px 6px 0; border-radius:10px; }
    .product-screen img { aspect-ratio:420/760; }
    .product-screen figcaption { flex-wrap:wrap; gap:0 14px; padding:8px 4px; font-size:10px; }.product-screen figcaption a { min-height:34px; }
    .product-hero-bottom { flex-direction:column; gap:16px; padding-block:24px; }.product-hero-bottom>p { font-size:13px; }
    .product-hero-bottom ul { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); max-width:none; width:100%; gap:10px; font-size:11px; }
    .product-section { padding-block:60px; }.product-section-heading { margin-bottom:30px; }.product-section-heading h2 { font-size:32px; }
    .product-section-heading>p:not(.product-eyebrow) { font-size:15px; margin-top:18px; }.product-feature-grid { grid-template-columns:1fr; gap:12px; }
    .product-feature { padding:24px; }.product-feature-icon { margin-bottom:18px; }.product-feature h3 { font-size:18px; }.product-feature p { font-size:14px; }
    .product-steps { margin-top:32px; gap:28px; grid-template-columns:1fr; }.product-steps li { padding-top:18px; }.product-steps h3 { margin-top:12px; font-size:20px; }
    .product-heading-row,.product-portal-grid,.product-faq-grid { gap:32px; }.product-portal-details { padding-inline:20px; }
    .product-portal-details article { gap:16px; padding-block:24px; }.product-portal-details h3 { font-size:17px; }.product-portal-details article>svg { width:22px; height:22px; }
    .product-faq summary { padding-block:20px; font-size:15px; }.product-faq details>div { padding:0 4px 22px 18px; font-size:14px; }
    .product-cta-section { padding-top:0; }.product-cta { padding:28px 24px; border-radius:12px; gap:28px; }.product-cta h2 { font-size:29px; }.product-cta p:not(.product-eyebrow) { font-size:14px; }
    .product-cta-actions,.product-cta-actions .product-button { width:100%; }.product-cta-actions { align-items:center; }
    .product-footer { padding-block:32px; }.product-footer-inner { flex-direction:column; align-items:flex-start; gap:20px; }.product-footer nav { gap:4px 20px; }
    .product-footer nav { justify-content:flex-start; }
}
@media(forced-colors:active) { .product-home { scrollbar-color:auto; } }
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; }.product-home * { transition:none!important; } }
