@import url("https://fonts.googleapis.com/css2?family=DM+Sans:ital,opsz,wght@0,9..40,300;0,9..40,400;0,9..40,500;0,9..40,600;0,9..40,700;1,9..40,400&family=Space+Grotesk:wght@400;500;600;700&display=swap");:root{--color-primary-50:#eff6ff;--color-primary-100:#dbeafe;--color-primary-200:#bfdbfe;--color-primary-300:#93c5fd;--color-primary-400:#60a5fa;--color-primary-500:#3b82f6;--color-primary-600:#2563eb;--color-primary-700:#1d4ed8;--color-primary-800:#1e40af;--color-primary-900:#1e3a8a;--color-primary-950:#172554;--color-primary:var(--color-primary-800);--color-primary-hover:var(--color-primary-900);--color-primary-active:var(--color-primary-950);--color-primary-disabled:#93aadc;--color-on-primary:#fff;--color-accent-50:#f0fdf4;--color-accent-100:#dcfce7;--color-accent-200:#bbf7d0;--color-accent-300:#86efac;--color-accent-400:#4ade80;--color-accent-500:#22c55e;--color-accent-600:#16a34a;--color-accent-700:#15803d;--color-accent-800:#166534;--color-accent-900:#14532d;--color-accent:var(--color-accent-600);--color-accent-hover:var(--color-accent-700);--color-accent-active:var(--color-accent-800);--color-accent-disabled:#8fc4a0;--color-on-accent:#fff;--color-stone-50:#fafaf9;--color-stone-100:#f5f5f4;--color-stone-200:#e7e5e4;--color-stone-300:#d6d3d1;--color-stone-400:#a8a29e;--color-stone-500:#78716c;--color-stone-600:#57534e;--color-stone-700:#44403c;--color-stone-800:#292524;--color-stone-900:#1c1917;--color-stone-950:#0c0a09;--color-bg:var(--color-stone-50);--color-bg-alt:#fff;--color-surface:#fff;--color-surface-hover:var(--color-stone-100);--color-surface-raised:#fff;--color-text:var(--color-stone-900);--color-text-secondary:var(--color-stone-600);--color-text-tertiary:var(--color-stone-500);--color-text-muted:var(--color-stone-400);--color-text-inverse:#fff;--color-border:var(--color-stone-200);--color-border-light:hsla(25,5%,45%,.12);--color-border-emphasis:var(--color-stone-300);--color-success:#16a34a;--color-success-light:#f0fdf4;--color-success-border:#bbf7d0;--color-on-success:#fff;--color-warning:#d97706;--color-warning-light:#fffbeb;--color-warning-border:#fde68a;--color-on-warning:#fff;--color-error:#dc2626;--color-error-light:#fef2f2;--color-error-border:#fecaca;--color-on-error:#fff;--color-info:var(--color-primary-600);--color-info-light:var(--color-primary-50);--color-info-border:var(--color-primary-200);--color-on-info:#fff;--font-display:"Space Grotesk",system-ui,-apple-system,sans-serif;--font-body:"DM Sans",system-ui,-apple-system,sans-serif;--text-hero:clamp(2.75rem,5vw + 1rem,4.5rem);--text-h1:clamp(2.25rem,4vw + 0.5rem,3.5rem);--text-h2:clamp(1.75rem,3vw + 0.5rem,2.5rem);--text-h3:clamp(1.375rem,2vw + 0.5rem,1.75rem);--text-h4:clamp(1.125rem,1.5vw + 0.25rem,1.375rem);--text-h5:1rem;--text-h6:0.875rem;--text-body:1rem;--text-body-lg:1.125rem;--text-body-sm:0.875rem;--text-small:0.8125rem;--text-caption:0.75rem;--text-overline:0.6875rem;--leading-hero:1.05;--leading-heading:1.15;--leading-subheading:1.3;--leading-body:1.6;--leading-tight:1.25;--leading-loose:1.8;--tracking-tightest:-0.03em;--tracking-tighter:-0.02em;--tracking-tight:-0.01em;--tracking-normal:0;--tracking-wide:0.02em;--tracking-wider:0.04em;--tracking-widest:0.08em;--weight-light:300;--weight-regular:400;--weight-medium:500;--weight-semibold:600;--weight-bold:700;--space-unit:8px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--space-16:64px;--space-20:80px;--space-24:96px;--space-32:128px;--space-xs:var(--space-1);--space-sm:var(--space-2);--space-md:var(--space-4);--space-lg:var(--space-6);--space-xl:var(--space-8);--space-2xl:var(--space-12);--space-3xl:var(--space-16);--section-py-mobile:var(--space-16);--section-py-tablet:var(--space-20);--section-py-desktop:var(--space-24);--section-px-mobile:var(--space-5);--section-px-tablet:var(--space-8);--section-px-desktop:var(--space-10);--card-padding-sm:var(--space-4);--card-padding-md:var(--space-6);--card-padding-lg:var(--space-8);--card-padding-xl:var(--space-10);--button-padding-sm:var(--space-2) var(--space-4);--button-padding-md:var(--space-3) var(--space-5);--button-padding-lg:var(--space-4) var(--space-8);--input-padding:var(--space-3) var(--space-4);--gap-xs:var(--space-2);--gap-sm:var(--space-3);--gap-md:var(--space-4);--gap-lg:var(--space-6);--gap-xl:var(--space-8);--gap-2xl:var(--space-12);--shadow-xs:0 1px 2px rgba(28,25,23,.04);--shadow-sm:0 1px 3px rgba(28,25,23,.06),0 1px 2px rgba(28,25,23,.04);--shadow-card:0 2px 8px rgba(28,25,23,.06),0 6px 20px rgba(28,25,23,.04);--shadow-card-hover:0 4px 16px rgba(28,25,23,.08),0 12px 32px rgba(28,25,23,.06);--shadow-elevated:0 8px 24px rgba(28,25,23,.1),0 2px 8px rgba(28,25,23,.05);--shadow-modal:0 16px 48px rgba(28,25,23,.14),0 4px 16px rgba(28,25,23,.06);--shadow-sticky:0 4px 12px rgba(28,25,23,.06);--shadow-cta:0 2px 8px rgba(22,163,74,.2);--shadow-cta-hover:0 4px 16px rgba(22,163,74,.3);--shadow-primary:0 2px 8px rgba(30,64,175,.15);--shadow-primary-hover:0 4px 16px rgba(30,64,175,.25);--radius-xs:4px;--radius-sm:6px;--radius-md:8px;--radius-lg:12px;--radius-xl:16px;--radius-2xl:20px;--radius-3xl:24px;--radius-full:9999px;--radius-button-sm:var(--radius-sm);--radius-button-md:var(--radius-md);--radius-button-lg:var(--radius-lg);--radius-card:var(--radius-xl);--radius-input:var(--radius-md);--radius-badge:var(--radius-full);--radius-modal:var(--radius-2xl);--duration-instant:100ms;--duration-fast:150ms;--duration-base:200ms;--duration-moderate:300ms;--duration-slow:500ms;--duration-reveal:600ms;--ease-default:cubic-bezier(0.25,0.1,0.25,1.0);--ease-in:cubic-bezier(0.4,0,1,1);--ease-out:cubic-bezier(0,0,0.2,1);--ease-in-out:cubic-bezier(0.4,0,0.2,1);--ease-spring:cubic-bezier(0.34,1.56,0.64,1);--ease-decelerate:cubic-bezier(0.0,0.0,0.2,1);--transition-colors:color var(--duration-fast) var(--ease-default),background-color var(--duration-fast) var(--ease-default),border-color var(--duration-fast) var(--ease-default);--transition-shadow:box-shadow var(--duration-base) var(--ease-default);--transition-transform:transform var(--duration-base) var(--ease-out);--transition-all:all var(--duration-base) var(--ease-default);--blur-sm:4px;--blur-md:8px;--blur-lg:16px;--blur-xl:24px;--blur-nav:20px;--backdrop-nav:blur(var(--blur-nav)) saturate(180%);--backdrop-modal:blur(var(--blur-lg));--backdrop-glass:blur(var(--blur-md)) saturate(150%);--breakpoint-sm:640px;--breakpoint-md:768px;--breakpoint-lg:1024px;--breakpoint-xl:1280px;--container-sm:640px;--container-md:768px;--container-lg:1024px;--container-xl:1200px;--container-max:1200px;--content-max-width:65ch}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}body{font-family:var(--font-body);font-size:var(--text-body);font-weight:var(--weight-regular);line-height:var(--leading-body);color:var(--color-text);background-color:var(--color-bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.text-hero{font-size:var(--text-hero);line-height:var(--leading-hero);letter-spacing:var(--tracking-tightest)}.h1,.text-hero,h1{font-family:var(--font-display);font-weight:var(--weight-bold);color:var(--color-text)}.h1,h1{font-size:var(--text-h1);line-height:var(--leading-heading);letter-spacing:var(--tracking-tighter)}.h2,h2{font-size:var(--text-h2);line-height:var(--leading-heading);letter-spacing:var(--tracking-tighter)}.h2,.h3,h2,h3{font-family:var(--font-display);font-weight:var(--weight-semibold);color:var(--color-text)}.h3,h3{font-size:var(--text-h3);line-height:var(--leading-subheading);letter-spacing:var(--tracking-tight)}.h4,h4{font-family:var(--font-display);font-size:var(--text-h4);letter-spacing:var(--tracking-tight)}.h4,.h5,h4,h5{font-weight:var(--weight-semibold);line-height:var(--leading-subheading);color:var(--color-text)}.h5,h5{font-size:var(--text-h5)}.h5,.h6,h5,h6{font-family:var(--font-body);letter-spacing:var(--tracking-normal)}.h6,h6{font-size:var(--text-h6);font-weight:var(--weight-semibold);line-height:var(--leading-subheading);color:var(--color-text-secondary)}.text-body-lg{font-size:var(--text-body-lg)}.text-body-lg,.text-body-sm{line-height:var(--leading-body)}.text-body-sm{font-size:var(--text-body-sm)}.text-small{font-size:var(--text-small)}.text-caption,.text-small{line-height:var(--leading-tight)}.text-caption{font-size:var(--text-caption);color:var(--color-text-tertiary)}.text-overline{font-family:var(--font-body);font-size:var(--text-overline);font-weight:var(--weight-semibold);line-height:1;letter-spacing:var(--tracking-widest);text-transform:uppercase;color:var(--color-text-muted)}.text-lead,p{max-width:var(--content-max-width)}.text-lead{font-size:var(--text-body-lg);line-height:var(--leading-loose);color:var(--color-text-secondary)}.container{width:100%;max-width:var(--container-max);margin-left:auto;margin-right:auto;padding-left:var(--section-px-mobile);padding-right:var(--section-px-mobile)}@media (min-width:768px){.container{padding-left:var(--section-px-tablet);padding-right:var(--section-px-tablet)}}@media (min-width:1024px){.container{padding-left:var(--section-px-desktop);padding-right:var(--section-px-desktop)}}.section{padding-top:var(--section-py-mobile);padding-bottom:var(--section-py-mobile)}@media (min-width:768px){.section{padding-top:var(--section-py-tablet);padding-bottom:var(--section-py-tablet)}}@media (min-width:1024px){.section{padding-top:var(--section-py-desktop);padding-bottom:var(--section-py-desktop)}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);font-family:var(--font-body);font-weight:var(--weight-semibold);text-decoration:none;border:none;cursor:pointer;transition:var(--transition-all);white-space:nowrap}.btn:active{transform:scale(.98)}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn-cta{background-color:var(--color-accent);color:var(--color-on-accent);box-shadow:var(--shadow-cta);border-radius:var(--radius-button-lg);padding:var(--button-padding-lg);font-size:var(--text-body)}.btn-cta:hover:not(:disabled){background-color:var(--color-accent-hover);box-shadow:var(--shadow-cta-hover);transform:translateY(-1px)}.btn-cta:active:not(:disabled){background-color:var(--color-accent-active);transform:translateY(0) scale(.98)}.btn-primary{background-color:var(--color-primary);color:var(--color-on-primary);box-shadow:var(--shadow-primary);border-radius:var(--radius-button-md);padding:var(--button-padding-md);font-size:var(--text-body-sm)}.btn-primary:hover:not(:disabled){background-color:var(--color-primary-hover);box-shadow:var(--shadow-primary-hover);transform:translateY(-1px)}.btn-secondary{background-color:var(--color-stone-100);color:var(--color-text);border-radius:var(--radius-button-md);padding:var(--button-padding-md);font-size:var(--text-body-sm)}.btn-secondary:hover:not(:disabled){background-color:var(--color-stone-200);box-shadow:var(--shadow-sm)}.btn-ghost{background-color:transparent;color:var(--color-text-secondary);border-radius:var(--radius-button-md);padding:var(--button-padding-md);font-size:var(--text-body-sm)}.btn-ghost:hover:not(:disabled){color:var(--color-text);background-color:var(--color-stone-100)}.btn-outline{background-color:transparent;color:var(--color-text);border:1.5px solid var(--color-border);border-radius:var(--radius-button-md);padding:var(--button-padding-md);font-size:var(--text-body-sm)}.btn-outline:hover:not(:disabled){border-color:var(--color-border-emphasis);background-color:var(--color-surface-hover);box-shadow:var(--shadow-sm)}.btn-sm{padding:var(--button-padding-sm);font-size:var(--text-small);border-radius:var(--radius-button-sm)}.btn-lg{padding:var(--button-padding-lg);font-size:var(--text-body);border-radius:var(--radius-button-lg)}.card{background-color:var(--color-surface);border:1px solid var(--color-border-light);border-radius:var(--radius-card);padding:var(--card-padding-md);transition:var(--transition-shadow),var(--transition-transform)}.card-interactive:hover{box-shadow:var(--shadow-card-hover);transform:translateY(-2px)}.card-elevated{border:1px solid var(--color-border-light);border-radius:var(--radius-card);padding:var(--card-padding-md);box-shadow:var(--shadow-card);transition:var(--transition-shadow),var(--transition-transform)}.card-elevated,.input{background-color:var(--color-surface)}.input{font-family:var(--font-body);font-size:var(--text-body-sm);padding:var(--input-padding);border:1.5px solid var(--color-border);border-radius:var(--radius-input);color:var(--color-text);transition:var(--transition-colors),var(--transition-shadow);width:100%}.input:focus{outline:none;border-color:var(--color-primary-600);box-shadow:0 0 0 3px rgba(30,64,175,.12)}.input::-moz-placeholder{color:var(--color-text-muted)}.input::placeholder{color:var(--color-text-muted)}.badge{display:inline-flex;align-items:center;gap:var(--space-1);font-family:var(--font-body);font-weight:var(--weight-semibold);font-size:var(--text-caption);line-height:1;padding:var(--space-1) var(--space-3);border-radius:var(--radius-full);border:1px solid}.badge-default{background-color:var(--color-stone-100);color:var(--color-text-secondary);border-color:var(--color-stone-200)}.badge-success{background-color:var(--color-success-light);color:var(--color-success);border-color:var(--color-success-border)}.badge-warning{background-color:var(--color-warning-light);color:var(--color-warning);border-color:var(--color-warning-border)}.badge-error{background-color:var(--color-error-light);color:var(--color-error);border-color:var(--color-error-border)}.badge-info{background-color:var(--color-info-light);color:var(--color-primary-700);border-color:var(--color-info-border)}.nav-glass{background:hsla(60,9%,98%,.85);backdrop-filter:var(--backdrop-nav);-webkit-backdrop-filter:var(--backdrop-nav);border-bottom:1px solid var(--color-border-light)}.overlay{background:rgba(12,10,9,.4);backdrop-filter:var(--backdrop-modal);-webkit-backdrop-filter:var(--backdrop-modal)}.focus-ring:focus-visible{outline:none;box-shadow:0 0 0 2px var(--color-bg),0 0 0 4px var(--color-primary-400)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeDown{0%{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translateX(-24px)}to{opacity:1;transform:translateX(0)}}@keyframes slideInRight{0%{opacity:0;transform:translateX(24px)}to{opacity:1;transform:translateX(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes pulse-dot{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.5);opacity:.5}}.reveal{opacity:0;transform:translateY(20px);transition:opacity var(--duration-reveal) var(--ease-out),transform var(--duration-reveal) var(--ease-out)}.reveal.in{opacity:1;transform:translateY(0)}.reveal-left{opacity:0;transform:translateX(-24px);transition:opacity var(--duration-reveal) var(--ease-out),transform var(--duration-reveal) var(--ease-out)}.reveal-left.in{opacity:1;transform:translateX(0)}.reveal-right{opacity:0;transform:translateX(24px);transition:opacity var(--duration-reveal) var(--ease-out),transform var(--duration-reveal) var(--ease-out)}.reveal-right.in{opacity:1;transform:translateX(0)}.reveal-scale{opacity:0;transform:scale(.95);transition:opacity var(--duration-reveal) var(--ease-out),transform var(--duration-reveal) var(--ease-out)}.reveal-scale.in{opacity:1;transform:scale(1)}.delay-1{transition-delay:.1s}.delay-2{transition-delay:.2s}.delay-3{transition-delay:.3s}.delay-4{transition-delay:.4s}.delay-5{transition-delay:.5s}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--color-stone-300);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--color-primary-400)}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.reveal,.reveal-left,.reveal-right,.reveal-scale{opacity:1;transform:none;transition:none}html{scroll-behavior:auto}}