:root{--bg: #ffffff;--bg-alt: #f8fafc;--card: #ffffff;--fg: #0f172a;--fg-muted: #475569;--fg-dim: #64748b;--border: #e2e8f0;--border-strong: #cbd5e1;--accent: #2563eb;--accent-hover: #1d4ed8;--accent-tint: #eff6ff;--accent-ring: rgba(37, 99, 235, .28);--ok: #16a34a;--ok-tint: #f0fdf4;--warn: #d97706;--warn-tint: #fffbeb;--band: #0f172a;--band-fg: #f8fafc;--nav-bg: rgba(255, 255, 255, .86);--shadow-sm: 0 1px 2px rgba(15, 23, 42, .06);--shadow-md: 0 8px 24px rgba(15, 23, 42, .08);--radius: 12px;--radius-sm: 8px;--font: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;color-scheme:light}@media (prefers-color-scheme: dark){:root:not([data-theme=light]){--bg: #0b1220;--bg-alt: #111a2e;--card: #141e33;--fg: #e5e7eb;--fg-muted: #9ca3af;--fg-dim: #7b8494;--border: #243043;--border-strong: #34425a;--accent: #60a5fa;--accent-hover: #93c5fd;--accent-tint: rgba(96, 165, 250, .12);--accent-ring: rgba(96, 165, 250, .35);--ok: #4ade80;--ok-tint: rgba(74, 222, 128, .12);--warn: #fbbf24;--warn-tint: rgba(251, 191, 36, .12);--band: #1e293b;--band-fg: #f8fafc;--nav-bg: rgba(11, 18, 32, .86);--shadow-sm: 0 1px 2px rgba(0, 0, 0, .4);--shadow-md: 0 8px 24px rgba(0, 0, 0, .45);color-scheme:dark}}:root[data-theme=dark]{--bg: #0b1220;--bg-alt: #111a2e;--card: #141e33;--fg: #e5e7eb;--fg-muted: #9ca3af;--fg-dim: #7b8494;--border: #243043;--border-strong: #34425a;--accent: #60a5fa;--accent-hover: #93c5fd;--accent-tint: rgba(96, 165, 250, .12);--accent-ring: rgba(96, 165, 250, .35);--ok: #4ade80;--ok-tint: rgba(74, 222, 128, .12);--warn: #fbbf24;--warn-tint: rgba(251, 191, 36, .12);--band: #1e293b;--band-fg: #f8fafc;--nav-bg: rgba(11, 18, 32, .86);--shadow-sm: 0 1px 2px rgba(0, 0, 0, .4);--shadow-md: 0 8px 24px rgba(0, 0, 0, .45);color-scheme:dark}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{margin:0;background:var(--bg);color:var(--fg);font-family:var(--font);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}h1,h2,h3,h4,p,ul,ol,dl,dd,figure,blockquote{margin:0}h1,h2,h3,h4{font-weight:700;letter-spacing:-.02em;line-height:1.15;text-wrap:balance;overflow-wrap:break-word}h1{font-size:clamp(36px,5.2vw,60px);letter-spacing:-.03em;line-height:1.08}h2{font-size:clamp(28px,3.6vw,40px)}h3{font-size:18px;letter-spacing:-.01em}p{overflow-wrap:break-word}a{color:inherit;text-decoration:none}a:hover{color:var(--accent)}strong,b{font-weight:600;color:var(--fg)}img,svg{max-width:100%;display:block}button{font:inherit}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:4px}.container{max-width:1152px;margin:0 auto;padding:0 24px}.container-narrow{max-width:800px;margin:0 auto;padding:0 24px}.muted{color:var(--fg-muted)}.accent{color:var(--accent)}nav.site{position:sticky;top:0;z-index:50;background:var(--nav-bg);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--border)}nav.site .inner{display:flex;align-items:center;justify-content:space-between;height:64px;gap:24px}nav.site .brand{display:inline-flex;align-items:baseline;gap:10px;color:var(--fg)}nav.site .brand .name{font-weight:700;font-size:20px;letter-spacing:-.02em}nav.site .brand .name i{font-style:normal;color:var(--accent)}nav.site .brand .by{font-size:12px;color:var(--fg-dim);font-weight:500}nav.site .brand:hover{color:var(--fg)}nav.site .links{display:flex;align-items:center;gap:8px}nav.site .links>a,nav.site .dropdown>button{display:inline-flex;align-items:center;gap:6px;padding:8px 12px;border-radius:var(--radius-sm);font-size:14px;font-weight:500;color:var(--fg-muted);background:none;border:0;cursor:pointer}nav.site .links>a:hover,nav.site .dropdown>button:hover{color:var(--fg);background:var(--bg-alt)}nav.site .dropdown{position:relative}nav.site .dropdown .menu{position:absolute;top:calc(100% + 8px);left:0;min-width:232px;background:var(--card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-md);padding:6px;opacity:0;visibility:hidden;transform:translateY(-4px);transition:opacity .14s ease,transform .14s ease,visibility .14s}nav.site .dropdown:hover .menu,nav.site .dropdown:focus-within .menu{opacity:1;visibility:visible;transform:translateY(0)}nav.site .dropdown .menu a{display:block;padding:9px 12px;border-radius:6px;font-size:14px;color:var(--fg)}nav.site .dropdown .menu a:hover{background:var(--bg-alt);color:var(--fg)}nav.site .dropdown .menu a.sep{margin-top:6px;padding-top:12px;border-top:1px solid var(--border);border-radius:0 0 6px 6px}nav.site .btn-nav{display:inline-flex;align-items:center;padding:9px 16px;border-radius:var(--radius-sm);background:var(--accent);color:#fff;font-size:14px;font-weight:600;margin-left:8px}nav.site .btn-nav:hover{background:var(--accent-hover);color:#fff}.theme-toggle{width:36px;height:36px;margin-left:4px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--card);color:var(--fg-muted);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;padding:0}.theme-toggle:hover{color:var(--fg);border-color:var(--border-strong)}.theme-toggle .icon-moon,[data-theme=light] .theme-toggle .icon-sun{display:none}[data-theme=light] .theme-toggle .icon-moon{display:block}.breadcrumb{display:flex;flex-wrap:wrap;align-items:center;gap:6px;padding-top:20px;font-size:13px;color:var(--fg-dim)}.breadcrumb a{color:var(--fg-dim)}.breadcrumb a:hover{color:var(--accent)}.breadcrumb span{color:var(--border-strong)}.btn-primary,.btn-secondary,.btn-ghost{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 20px;border-radius:var(--radius-sm);font-size:15px;font-weight:600;line-height:1.3;text-align:center;overflow-wrap:anywhere;transition:background .14s ease,border-color .14s ease,color .14s ease,box-shadow .14s ease}.btn-primary{background:var(--accent);color:#fff;border:1px solid var(--accent)}.btn-primary:hover{background:var(--accent-hover);border-color:var(--accent-hover);color:#fff}.btn-secondary{background:var(--card);color:var(--fg);border:1px solid var(--border-strong)}.btn-secondary:hover{border-color:var(--fg-dim);color:var(--fg);background:var(--bg-alt)}.btn-ghost{padding:12px 4px;color:var(--accent)}.btn-ghost:hover{color:var(--accent-hover)}.btn-lg{padding:14px 24px;font-size:16px}.cta-row{display:flex;flex-wrap:wrap;align-items:center;gap:12px}.badge,.eyebrow{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;font-size:12px;font-weight:600;line-height:1.4;background:var(--accent-tint);color:var(--accent)}.badge.ok{background:var(--ok-tint);color:var(--ok)}.badge.warn{background:var(--warn-tint);color:var(--warn)}.badge.neutral{background:var(--bg-alt);color:var(--fg-muted);border:1px solid var(--border)}.eyebrow:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}.label{font-size:13px;font-weight:600;color:var(--accent);text-transform:uppercase;letter-spacing:.06em}.hero{padding:72px 0 56px;text-align:center}.hero .eyebrow{margin-bottom:22px}.hero h1{max-width:20ch;margin:0 auto}.hero .subline{margin:22px auto 0;max-width:60ch;font-size:clamp(17px,1.6vw,20px);color:var(--fg-muted);line-height:1.6}.hero .cta-row{justify-content:center;margin-top:32px}.hero .hero-note{margin-top:18px;font-size:14px;color:var(--fg-dim)}.hero-visual{margin:48px auto 0;max-width:1040px}.hero-visual .frame{border:1px solid var(--border);border-radius:16px;background:var(--card);box-shadow:var(--shadow-md);overflow:hidden}.product-hero{padding:40px 0 64px}.product-hero .hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:56px;align-items:center}.product-hero .eyebrow{margin-bottom:20px}.product-hero h1{font-size:clamp(34px,4.4vw,54px)}.product-hero .subline{margin-top:20px;font-size:clamp(16px,1.5vw,19px);color:var(--fg-muted);line-height:1.6;max-width:58ch}.product-hero .cta-row{margin-top:28px}.product-hero .hero-note{margin-top:18px;font-size:14px;color:var(--fg-dim);line-height:1.6;max-width:58ch}.product-hero .frame{border:1px solid var(--border);border-radius:16px;background:var(--card);box-shadow:var(--shadow-md);overflow:hidden}.product-hero .caption{margin-top:10px;font-size:13px;color:var(--fg-dim)}.chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px}.chip{display:inline-flex;align-items:center;padding:5px 11px;border-radius:999px;border:1px solid var(--border);background:var(--bg-alt);font-size:13px;font-weight:500;color:var(--fg-muted)}section{padding:80px 0}section.alt{background:var(--bg-alt);border-top:1px solid var(--border);border-bottom:1px solid var(--border)}section.alt+section.alt{border-top:0}.section-head{margin-bottom:40px}.section-head.center{text-align:center}.section-head.center h2,.section-head.center .lead{margin-left:auto;margin-right:auto}.section-head .label{display:block;margin-bottom:12px}.section-head h2{max-width:24ch}.lead{margin-top:14px;max-width:62ch;font-size:17px;color:var(--fg-muted);line-height:1.65}.section-head .lead{margin-top:14px}.cards{display:grid;gap:20px}.cards.cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.cards.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.cards.cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.card{display:flex;flex-direction:column;gap:10px;padding:26px;border-radius:var(--radius);background:var(--card);border:1px solid var(--border);box-shadow:var(--shadow-sm);color:var(--fg);transition:box-shadow .16s ease,border-color .16s ease,transform .16s ease}a.card:hover{box-shadow:var(--shadow-md);border-color:var(--border-strong);color:var(--fg);transform:translateY(-1px)}.card .icon{width:40px;height:40px;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;background:var(--accent-tint);color:var(--accent);margin-bottom:6px}.card .icon svg{width:20px;height:20px}.card .step{width:32px;height:32px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:var(--accent);color:#fff;font-size:14px;font-weight:700;margin-bottom:6px}.card h3{font-size:18px}.card p{font-size:15px;color:var(--fg-muted);line-height:1.6}.card .link{margin-top:auto;padding-top:6px;font-size:14px;font-weight:600;color:var(--accent)}.card .badge{align-self:flex-start}.card.tint{background:var(--accent-tint);border-color:transparent}.card.soft{background:var(--bg-alt);box-shadow:none}.feature{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:56px;align-items:center}.feature.flip>:first-child{order:2}.feature h3{font-size:clamp(22px,2.4vw,28px)}.feature p{margin-top:12px;font-size:16px;color:var(--fg-muted);line-height:1.65;max-width:52ch}.feature .frame{border:1px solid var(--border);border-radius:16px;background:var(--card);box-shadow:var(--shadow-md);overflow:hidden}.spec{display:grid;grid-template-columns:180px minmax(0,1fr);border-top:1px solid var(--border)}.spec dt,.spec dd{padding:14px 0;border-bottom:1px solid var(--border);font-size:15px}.spec dt{font-weight:600;color:var(--fg)}.spec dd{color:var(--fg-muted)}.checklist{list-style:none;padding:0;display:grid;gap:10px}.checklist li{position:relative;padding-left:28px;font-size:15px;color:var(--fg-muted);line-height:1.6}.checklist li:before{content:"";position:absolute;left:0;top:7px;width:16px;height:16px;border-radius:50%;background:var(--ok-tint)}.checklist li:after{content:"";position:absolute;left:5px;top:10px;width:5px;height:8px;border:solid var(--ok);border-width:0 2px 2px 0;transform:rotate(45deg)}.callout{padding:24px 28px;border-radius:var(--radius);background:var(--bg-alt);border:1px solid var(--border)}.callout .label{display:block;margin-bottom:10px}.callout h3{font-size:20px;margin-bottom:8px}.callout p{font-size:15px;color:var(--fg-muted);line-height:1.65}.quote{padding:28px 32px;border-radius:var(--radius);background:var(--accent-tint);border-left:4px solid var(--accent)}.quote .label{display:block;margin-bottom:10px}.quote blockquote{font-size:clamp(17px,1.8vw,20px);line-height:1.55;color:var(--fg);max-width:64ch}.table{width:100%;border-collapse:collapse;font-size:15px}.table th{text-align:left;font-size:13px;font-weight:600;color:var(--fg-dim);padding:0 16px 12px 0;border-bottom:1px solid var(--border-strong)}.table td{padding:16px 16px 16px 0;border-bottom:1px solid var(--border);color:var(--fg-muted);line-height:1.6;vertical-align:top}.table td.strong{color:var(--fg);font-weight:600;white-space:nowrap}.table-wrap{overflow-x:auto}.faq{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 40px}.faq details{border-bottom:1px solid var(--border)}.faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:18px 0;font-size:16px;font-weight:600;color:var(--fg)}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"+";flex:none;width:22px;height:22px;border-radius:50%;border:1px solid var(--border-strong);display:inline-flex;align-items:center;justify-content:center;font-size:15px;font-weight:500;color:var(--fg-dim)}.faq details[open] summary:after{content:"–"}.faq details p{padding:0 0 18px;font-size:15px;color:var(--fg-muted);line-height:1.65;max-width:56ch}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.stat{padding:24px;border-radius:var(--radius);background:var(--card);border:1px solid var(--border)}.stat .n{font-size:clamp(30px,3.2vw,40px);font-weight:700;letter-spacing:-.03em;line-height:1;color:var(--fg);font-variant-numeric:tabular-nums}.stat .k{margin-top:10px;font-size:14px;color:var(--fg-muted);line-height:1.5}.cta-band{padding:56px 40px;border-radius:20px;background:var(--band);color:var(--band-fg);text-align:center}.cta-band h2{color:var(--band-fg);margin:0 auto;max-width:22ch}.cta-band p{margin:14px auto 0;max-width:56ch;font-size:17px;color:#f8fafcc7;line-height:1.6}.cta-band .cta-row{justify-content:center;margin-top:28px}.cta-band .btn-primary{background:#fff;border-color:#fff;color:var(--band)}.cta-band .btn-primary:hover{background:#e2e8f0;border-color:#e2e8f0;color:var(--band)}.cta-band .btn-secondary{background:transparent;color:var(--band-fg);border-color:#f8fafc59}.cta-band .btn-secondary:hover{background:#f8fafc14;color:var(--band-fg);border-color:#f8fafc99}footer.site{background:var(--bg-alt);border-top:1px solid var(--border);padding:56px 0 32px;font-size:14px;color:var(--fg-muted)}footer.site .cols{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:32px}footer.site .brand{display:inline-flex;align-items:baseline;gap:8px;color:var(--fg);font-weight:700;font-size:18px;letter-spacing:-.02em}footer.site .brand i{font-style:normal;color:var(--accent)}footer.site .about{margin-top:12px;max-width:34ch;line-height:1.6}footer.site h4{font-size:13px;font-weight:600;color:var(--fg);margin-bottom:14px}footer.site ul{list-style:none;padding:0;display:grid;gap:9px}footer.site ul a{color:var(--fg-muted)}footer.site ul a:hover{color:var(--accent)}footer.site .legal{margin-top:36px;padding-top:20px;border-top:1px solid var(--border);font-size:13px;color:var(--fg-dim);line-height:1.6}footer.site .bottom{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-top:16px;font-size:13px;color:var(--fg-dim)}@media (max-width: 1024px){.cards.cols-4,.stats{grid-template-columns:repeat(2,minmax(0,1fr))}footer.site .cols{grid-template-columns:1fr 1fr}}@media (max-width: 860px){.product-hero .hero-grid{grid-template-columns:minmax(0,1fr);gap:36px}.feature{grid-template-columns:minmax(0,1fr);gap:28px}.feature.flip>:first-child{order:0}.cards.cols-3,.faq{grid-template-columns:minmax(0,1fr)}}@media (max-width: 640px){section{padding:56px 0}.hero{padding:48px 0 40px}.cards.cols-2,.cards.cols-4,.stats,.spec{grid-template-columns:minmax(0,1fr)}.spec dt{border-bottom:0;padding-bottom:2px}.spec dd{padding-top:0}.cta-band{padding:40px 22px;border-radius:16px}.cta-row .btn-primary,.cta-row .btn-secondary{width:100%}nav.site .inner{gap:12px}nav.site .brand{min-width:0}nav.site .brand .name{font-size:18px}nav.site .brand .by{display:none}nav.site .links{gap:2px;flex:none}nav.site .links>a{display:none}nav.site .dropdown .menu{left:auto;right:0}footer.site .cols{grid-template-columns:1fr;gap:24px}}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
