[hidden]{display:none !important}
:root{
    --bg:#f7f9fc;
    --surface:#ffffff;
    --surface-solid:#ffffff;
    --surface-muted:#f2f6fb;
    --line:#d9e3ee;
    --line-strong:#c6d2df;
    --text:#0f172a;
    --text-soft:#5c697d;
    --accent:#4d78ff;
    --accent-rgb:77,120,255;
    --accent-soft:rgba(77,120,255,.10);
    --accent-contrast:#ffffff;
    --success:#0f766e;
    --error:#b42318;
    --radius:26px;
    --radius-sm:18px;
    --shadow:0 12px 34px rgba(15,23,42,.06);
    --shadow-strong:0 24px 56px rgba(15,23,42,.16);
    --glass-blur:20px;
    --container:1240px;
    --font-ui:"Cuttio Sans Fallback", Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    --ease:cubic-bezier(.2,.8,.2,1);
    --dur-fast:.22s;
    --dur-slow:.52s;
    --header-bg:rgba(247,249,252,.72);
    --header-border:rgba(217,227,238,.72);
    --bg-glow-1:rgba(77,120,255,.12);
    --bg-glow-2:rgba(6,182,212,.08);
    --bg-glow-3:rgba(244,63,181,.06);
    --surface-rgb:255,255,255;
    --bg-rgb:247,249,252;
    --pointer-x:50%;
    --pointer-y:24%;
}
html[data-theme="light"]{
    --bg:#f7f9fc;
    --surface:#ffffff;
    --surface-solid:#ffffff;
    --surface-muted:#f2f6fb;
    --line:#d9e3ee;
    --line-strong:#c6d2df;
    --text:#0f172a;
    --text-soft:#5c697d;
    --shadow:0 12px 34px rgba(15,23,42,.06);
    --shadow-strong:0 24px 56px rgba(15,23,42,.16);
    --header-bg:rgba(247,249,252,.72);
    --header-border:rgba(217,227,238,.72);
    --bg-glow-1:rgba(var(--accent-rgb),.14);
    --bg-glow-2:rgba(6,182,212,.09);
    --bg-glow-3:rgba(244,63,181,.06);
    --surface-rgb:255,255,255;
    --bg-rgb:247,249,252;
}
html[data-theme="dark"]{
    --bg:#070d18;
    --surface:#0f1828;
    --surface-solid:#0d1726;
    --surface-muted:#111d31;
    --line:#22324b;
    --line-strong:#314765;
    --text:#eef4ff;
    --text-soft:#a8b5cb;
    --shadow:0 16px 42px rgba(0,0,0,.34);
    --shadow-strong:0 28px 70px rgba(0,0,0,.48);
    --header-bg:rgba(7,13,24,.64);
    --header-border:rgba(34,50,75,.72);
    --bg-glow-1:rgba(var(--accent-rgb),.17);
    --bg-glow-2:rgba(6,182,212,.10);
    --bg-glow-3:rgba(244,63,181,.08);
    --surface-rgb:15,24,40;
    --bg-rgb:7,13,24;
}
html[data-accent="mono"]{--accent:#111827;--accent-rgb:17,24,39;--accent-soft:rgba(17,24,39,.08);--accent-contrast:#ffffff}
html[data-accent="cyan"]{--accent:#08b6ff;--accent-rgb:8,182,255;--accent-soft:rgba(8,182,255,.14);--accent-contrast:#03111b}
html[data-accent="magenta"]{--accent:#f43fb5;--accent-rgb:244,63,181;--accent-soft:rgba(244,63,181,.14);--accent-contrast:#ffffff}
html[data-accent="yellow"]{--accent:#f2ba00;--accent-rgb:242,186,0;--accent-soft:rgba(242,186,0,.18);--accent-contrast:#121826}
html[data-accent="key"]{--accent:#0f172a;--accent-rgb:15,23,42;--accent-soft:rgba(15,23,42,.12);--accent-contrast:#ffffff}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
    margin:0;
    font-family:var(--font-ui);
    color:var(--text);
    background:
        radial-gradient(1100px 520px at 100% -10%, var(--bg-glow-1), transparent 58%),
        radial-gradient(880px 420px at 0% 18%, var(--bg-glow-2), transparent 60%),
        radial-gradient(920px 440px at 72% 82%, var(--bg-glow-3), transparent 64%),
        var(--bg);
    text-rendering:optimizeLegibility;
    -webkit-font-smoothing:antialiased;
    transition:background var(--dur-slow) var(--ease), color var(--dur-fast) var(--ease);
    position:relative;
    overflow-x:hidden;
}
body::before,
body::after{
    content:"";
    position:fixed;
    inset:auto;
    pointer-events:none;
    z-index:0;
    filter:blur(46px);
    opacity:.9;
    transform:translate3d(0,0,0);
    animation:ambientFloat 16s var(--ease) infinite alternate;
}
body::before{
    width:32rem;height:32rem;left:-8rem;top:12rem;
    background:radial-gradient(circle at center, rgba(var(--accent-rgb),.16), transparent 68%);
}
body::after{
    width:28rem;height:28rem;right:-6rem;top:6rem;
    background:radial-gradient(circle at center, rgba(6,182,212,.12), transparent 66%);
    animation-duration:22s;
}
@keyframes ambientFloat{from{transform:translate3d(0,0,0) scale(1)}to{transform:translate3d(1rem,-1.5rem,0) scale(1.08)}}
img{max-width:100%;height:auto;display:block}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit}
.container{width:min(var(--container),calc(100% - 32px));margin-inline:auto;position:relative;z-index:1}
.skip-link{
    position:absolute;left:12px;top:-48px;z-index:200;
    background:var(--text);color:#fff;padding:12px 16px;border-radius:12px
}
.skip-link:focus{top:12px}
.site-header{
    position:sticky;top:0;z-index:80;background:var(--header-bg);
    backdrop-filter:blur(18px);border-bottom:1px solid var(--header-border);
    transition:background var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease)
}
.site-header__inner{min-height:78px;display:flex;align-items:center;justify-content:space-between;gap:24px}
main{display:block;position:relative;z-index:1}
.section{padding:76px 0;position:relative}
.section--compact{padding:52px 0}
.section-head{display:grid;gap:14px;max-width:800px;margin-bottom:32px}
.section-head h2{margin:0;font-size:clamp(1.75rem,3vw,2.75rem);line-height:1.05;letter-spacing:-.03em}
.section-head p{margin:0;color:var(--text-soft);font-size:1.02rem;line-height:1.7}
.hero{padding:72px 0 28px;position:relative}
.hero__grid{display:grid;gap:28px}
.hero__panel{
    background:linear-gradient(180deg, rgba(255,255,255,.24), rgba(255,255,255,.05)), var(--surface);
    border:1px solid rgba(255,255,255,.24);box-shadow:var(--shadow-strong);
    border-radius:34px;padding:28px;transition:background var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease), box-shadow var(--dur-fast) var(--ease);
    backdrop-filter:blur(24px)
}
