:root{--color-logo-yellow:#f5c842;--color-logo-red:#c0392b;--color-logo-blue:#2e86c1;--color-bg:#fff;--color-bg-soft:#f5f7fa;--color-bg-muted:#eef2f6;--color-bg-dark:#1a2940;--color-bg-dark-soft:#243454;--color-primary:#2e86c1;--color-primary-hover:#2474a8;--color-primary-strong:#1f5f8c;--color-primary-soft:#e3eff8;--color-primary-tint:#f0f7fc;--color-accent:#f5c842;--color-accent-hover:#e0b530;--color-accent-soft:#fef6dc;--color-accent-strong:#8a6d1a;--color-danger:#c0392b;--color-danger-soft:#fbe5e2;--color-success:#27ae60;--color-success-hover:#219150;--color-success-soft:#e8f8ef;--color-success-strong:#1e8449;--color-text:#1f2d3d;--color-text-soft:#3d4f63;--color-text-muted:#6b7a8d;--color-text-on-dark:#f4f7fa;--color-text-on-dark-muted:#a8b6c8;--color-border:#e3e8ee;--color-border-strong:#cdd5de;--color-border-dark:#ffffff1a;--font-sans:"Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-display:"Space Grotesk", "Inter", system-ui, sans-serif;--font-mono:"JetBrains Mono", ui-monospace, "SF Mono", Menlo, monospace;--fs-xs:clamp(.75rem, .72rem + .15vw, .8125rem);--fs-sm:clamp(.875rem, .84rem + .18vw, .9375rem);--fs-base:1rem;--fs-lg:clamp(1.125rem, 1.06rem + .3vw, 1.25rem);--fs-xl:clamp(1.375rem, 1.25rem + .6vw, 1.625rem);--fs-2xl:clamp(1.75rem, 1.5rem + 1.2vw, 2.25rem);--fs-3xl:clamp(2.25rem, 1.85rem + 2vw, 3.25rem);--fs-4xl:clamp(2.75rem, 2.1rem + 3.2vw, 4.5rem);--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.5rem;--space-6:2rem;--space-8:3rem;--space-10:4rem;--space-12:6rem;--space-16:8rem;--container-max:1200px;--container-narrow:880px;--radius-sm:6px;--radius-md:12px;--radius-lg:20px;--radius-pill:999px;--shadow-sm:0 1px 2px #1f2d3d0a;--shadow-md:0 4px 16px #1f2d3d0f;--shadow-lg:0 16px 40px #1f2d3d14;--shadow-glow:0 8px 24px #2e86c12e;--ease-out:cubic-bezier(.2, .8, .2, 1);--duration-fast:.16s;--duration-base:.28s;--duration-slow:.48s}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-sans);font-size:var(--fs-base);color:var(--color-text-soft);background:var(--color-bg);margin:0;line-height:1.65}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);margin:0 0 var(--space-4);letter-spacing:-.02em;color:var(--color-text);font-weight:600;line-height:1.15}h1{font-size:var(--fs-4xl)}h2{font-size:var(--fs-3xl)}h3{font-size:var(--fs-2xl)}h4{font-size:var(--fs-xl)}p{margin:0 0 var(--space-4)}a{color:var(--color-primary);transition:color var(--duration-fast) var(--ease-out);text-decoration:none}img,svg,video{max-width:100%;height:auto;display:block}button{font:inherit;cursor:pointer}:focus-visible{outline:2px solid var(--color-primary);outline-offset:3px;border-radius:var(--radius-sm)}.container{width:100%;max-width:var(--container-max);padding-inline:var(--space-5);margin-inline:auto}.container-narrow{width:100%;max-width:var(--container-narrow);padding-inline:var(--space-5);margin-inline:auto}.section{padding-block:var(--space-12)}.section-soft{background:var(--color-bg-soft)}.section-muted{background:var(--color-bg-muted)}.section-dark{background:var(--color-bg-dark);color:var(--color-text-on-dark)}.section-dark h1,.section-dark h2,.section-dark h3,.section-dark h4{color:var(--color-text-on-dark)}.section-dark p{color:var(--color-text-on-dark-muted)}.eyebrow{align-items:center;gap:var(--space-2);font-family:var(--font-mono);font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.12em;color:var(--color-primary);margin-bottom:var(--space-4);font-weight:500;display:inline-flex}.eyebrow:before{content:"";background:currentColor;width:24px;height:1px}.section-dark .eyebrow{color:var(--color-accent)}.btn{align-items:center;gap:var(--space-2);border-radius:var(--radius-sm);font-weight:600;font-size:var(--fs-sm);transition:all var(--duration-base) var(--ease-out);white-space:nowrap;cursor:pointer;font-family:var(--font-sans);border:1px solid #0000;padding:.875rem 1.625rem;display:inline-flex}.btn-primary{background:linear-gradient(135deg, var(--color-primary), var(--color-primary-strong));color:#fff;box-shadow:var(--shadow-sm);border:1px solid #ffffff1a}.btn-primary:hover{background:linear-gradient(135deg, var(--color-primary-hover), var(--color-primary-strong));color:#fff;box-shadow:var(--shadow-glow);transform:translateY(-2px)}.btn-secondary{background:var(--color-bg);color:var(--color-text);border-color:var(--color-border-strong);box-shadow:var(--shadow-sm)}.btn-secondary:hover{border-color:var(--color-primary);color:var(--color-primary);background:var(--color-primary-soft);box-shadow:var(--shadow-md);transform:translateY(-2px)}.btn-ghost{color:var(--color-text);background:0 0;border-color:#0000;padding-inline:.5rem}.btn-ghost:hover{color:var(--color-primary)}.section-dark .btn-secondary{color:var(--color-text-on-dark);border-color:var(--color-border-dark);background:0 0}.section-dark .btn-secondary:hover{border-color:var(--color-accent);color:var(--color-accent)}@media (prefers-reduced-motion:no-preference){.reveal{opacity:0;transition:opacity var(--duration-slow) var(--ease-out), transform var(--duration-slow) var(--ease-out);transform:translateY(24px)}.reveal.is-visible{opacity:1;transform:none}}.badge{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.08em;border-radius:var(--radius-pill);white-space:nowrap;justify-content:center;align-items:center;padding:.2rem .6rem;font-size:10px;font-weight:600;display:inline-flex}.badge-success{color:#27ae60;background:#eafaf1}.badge-accent{background:var(--color-accent-soft);color:#b88a00}.badge-danger{background:var(--color-danger-soft);color:var(--color-danger)}.badge-neutral{background:var(--color-bg-muted);color:var(--color-text-muted)}.badge-primary{background:var(--color-primary-soft);color:var(--color-primary)}.badge-warning{color:#b7950b;background:#fef9e7}.badge-success-outline{color:#27ae60;background:#eafaf1;border:1px solid #27ae6033}.spinner{border:3px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;width:32px;height:32px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.btn-danger{background:linear-gradient(135deg, var(--color-danger), #a93226);color:#fff;box-shadow:var(--shadow-sm);border-color:#0000}.btn-danger:hover{color:#fff;background:linear-gradient(135deg,#a93226,#922b21);transform:translateY(-2px);box-shadow:0 8px 24px #c0392b40}
