:root{--brand-50: #ecfdf5;--brand-100: #d1fae5;--brand-200: #a7f3d0;--brand-300: #6ee7b7;--brand-400: #34d399;--brand-500: #10b981;--brand-600: #059669;--brand-700: #047857;--brand-800: #065f46;--brand-900: #064e3b;--ink-700: #1f3b33;--ink-800: #16302a;--ink-900: #0f221e;--ink-950: #0a1613;--stone-50: #fafaf9;--stone-100: #f5f5f4;--stone-200: #e7e5e4;--stone-300: #d6d3d1;--stone-400: #a8a29e;--stone-500: #78716c;--stone-600: #57534e;--stone-700: #44403c;--stone-800: #292524;--stone-900: #1c1917;--accent-500: #f59e0b;--accent-600: #d97706;--amber-500: #f59e0b;--red-500: #dc2626;--color-primary: var(--brand-700);--color-primary-hover: var(--brand-800);--color-primary-soft: var(--brand-50);--color-accent: var(--accent-500);--text-strong: var(--stone-900);--text-body: var(--stone-600);--text-muted: var(--stone-500);--text-faint: var(--stone-400);--text-on-dark: #ffffff;--surface: #ffffff;--surface-subtle: var(--stone-50);--surface-muted: var(--stone-100);--surface-dark: var(--ink-900);--border: var(--stone-200);--border-strong: var(--stone-300);--shadow-xs: 0 1px 2px rgba(28, 25, 23, .06);--shadow-sm: 0 1px 3px rgba(28, 25, 23, .08), 0 1px 2px rgba(28, 25, 23, .04);--shadow-md: 0 4px 12px rgba(28, 25, 23, .08);--shadow-lg: 0 12px 28px rgba(28, 25, 23, .1);--shadow-xl: 0 24px 48px rgba(28, 25, 23, .14);--radius-xs: .25rem;--radius-sm: .375rem;--radius-md: .5rem;--radius-lg: .75rem;--radius-xl: 1rem;--radius-2xl: 1.5rem;--radius-pill: 999px;--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-display: var(--font-sans);--font-mono: "SFMono-Regular", ui-monospace, Menlo, Consolas, monospace;--fs-xs: .8125rem;--fs-sm: .875rem;--fs-base: 1rem;--fs-lg: 1.0625rem;--fs-xl: 1.1875rem;--fs-2xl: clamp(1.25rem, 1.12rem + .6vw, 1.5rem);--fs-3xl: clamp(1.5rem, 1.28rem + 1vw, 2rem);--fs-4xl: clamp(1.875rem, 1.5rem + 1.7vw, 2.75rem);--fs-5xl: clamp(2.25rem, 1.7rem + 2.6vw, 3.5rem);--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.5rem;--space-6: 2rem;--space-7: 2.5rem;--space-8: 3rem;--space-9: 4rem;--space-10: 5rem;--container-max: 1200px;--container-gutter: clamp(1.25rem, 4vw, 2rem);--section-y: clamp(3.5rem, 6vw, 6rem);--ease: cubic-bezier(.4, 0, .2, 1);--duration: .2s;--transition: color var(--duration) var(--ease), background-color var(--duration) var(--ease), border-color var(--duration) var(--ease), box-shadow var(--duration) var(--ease), transform var(--duration) var(--ease), opacity var(--duration) var(--ease);--primary-color: var(--brand-700);--primary-dark: var(--brand-900);--primary-light: var(--brand-500);--secondary-color: var(--brand-500);--secondary-dark: var(--brand-700);--accent-color: var(--accent-500);--success-color: var(--accent-600);--warning-color: var(--amber-500);--error-color: var(--red-500);--text-primary: var(--text-strong);--text-secondary: var(--text-body);--text-light: var(--text-faint);--text-inverse: #ffffff;--bg-primary: var(--surface);--bg-secondary: var(--surface-subtle);--bg-tertiary: var(--surface-muted);--bg-dark: var(--ink-900);--border-color: var(--border)}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{font-family:var(--font-sans);font-size:var(--fs-base);line-height:1.65;color:var(--text-body);background-color:var(--surface);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-feature-settings:"cv11","ss01"}main{min-height:calc(100vh - 200px)}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);color:var(--text-strong);line-height:1.2;font-weight:700;letter-spacing:-.02em;text-wrap:balance}h1{font-size:var(--fs-5xl)}h2{font-size:var(--fs-4xl)}h3{font-size:var(--fs-2xl);letter-spacing:-.015em}h4{font-size:var(--fs-lg);letter-spacing:-.01em}p{margin-bottom:var(--space-4);color:var(--text-body);text-wrap:pretty}p:last-child{margin-bottom:0}a{color:var(--color-primary);text-decoration:none;transition:var(--transition)}a:hover{color:var(--color-primary-hover)}ul{list-style:none}img,svg{max-width:100%;height:auto;display:block}button{font-family:inherit;font-size:inherit;color:inherit}strong{color:var(--text-strong);font-weight:600}::selection{background:var(--brand-600);color:#fff}:focus-visible{outline:2px solid var(--brand-600);outline-offset:2px;border-radius:var(--radius-xs)}:focus:not(:focus-visible){outline:none}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:var(--surface-subtle)}::-webkit-scrollbar-thumb{background:var(--stone-300);border-radius:var(--radius-pill);border:2px solid var(--surface-subtle)}::-webkit-scrollbar-thumb:hover{background:var(--stone-400)}.container{width:100%;max-width:var(--container-max);margin-inline:auto;padding-inline:var(--container-gutter)}.container-narrow{max-width:820px}.section-padding,.section{padding-block:var(--section-y)}.section-subtle{background:var(--surface-subtle)}.section-dark{background:var(--surface-dark);color:#ffffffbf}.section-dark h1,.section-dark h2,.section-dark h3,.section-dark h4{color:#fff}.page-hero{position:relative;isolation:isolate;overflow:hidden;padding-block:clamp(3rem,6vw,5rem);text-align:center;color:#ffffffbf;background-color:var(--ink-900);background-image:linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(150deg,var(--ink-950) 0%,var(--ink-800) 60%,#15423a 100%);background-size:56px 56px,56px 56px,auto}.page-hero:after{content:"";position:absolute;top:-55%;right:-8%;width:min(36rem,65%);aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,rgba(16,185,129,.28) 0%,rgba(245,158,11,.12) 45%,transparent 70%);z-index:-1;pointer-events:none}.page-hero .eyebrow{color:var(--brand-300)}.page-title{font-size:var(--fs-4xl);font-weight:800;letter-spacing:-.03em;color:#fff;margin-bottom:.875rem}.page-subtitle{font-size:var(--fs-lg);line-height:1.7;color:#ffffffb3;max-width:42rem;margin:0 auto}.section-header{max-width:44rem;margin:0 auto var(--space-8);text-align:center}.section-header--left{margin-inline:0;text-align:left}.eyebrow{display:inline-flex;align-items:center;gap:.5rem;font-size:var(--fs-xs);font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--brand-700);margin-bottom:var(--space-3)}.eyebrow:before{content:"";width:1.75rem;height:2px;border-radius:var(--radius-pill);background:currentColor}.section-header--center .eyebrow:before,.section-header:not(.section-header--left) .eyebrow:before{display:none}.section-title{font-size:var(--fs-4xl);font-weight:700;letter-spacing:-.025em;color:var(--text-strong);margin-bottom:var(--space-4);text-align:center}.section-header--left .section-title{text-align:left}.section-lead{font-size:var(--fs-lg);color:var(--text-muted);line-height:1.7;margin-bottom:0}.lead{font-size:var(--fs-lg);line-height:1.7;color:var(--text-muted)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1.375rem;border-radius:var(--radius-md);font-size:var(--fs-sm);font-weight:600;line-height:1.5;letter-spacing:.01em;cursor:pointer;border:1px solid transparent;white-space:nowrap;text-decoration:none;transition:var(--transition);-webkit-user-select:none;user-select:none}.btn-lg{padding:.9375rem 1.75rem;font-size:var(--fs-base)}.btn-sm{padding:.5rem 1rem;font-size:var(--fs-xs)}.btn-block{width:100%}.btn-primary{background:var(--brand-700);border-color:var(--brand-700);color:#fff;box-shadow:0 1px 2px #1c191714,0 6px 16px -6px #05966980}.btn-primary:hover{background:var(--brand-800);border-color:var(--brand-800);color:#fff;transform:translateY(-1px);box-shadow:0 2px 4px #1c191714,0 10px 24px -8px #0596698c}.btn-primary:active{transform:translateY(0);background:var(--brand-900)}.btn-secondary{background:var(--surface);color:var(--text-strong);border-color:var(--border-strong);box-shadow:var(--shadow-xs)}.btn-secondary:hover{border-color:var(--brand-400);color:var(--brand-700);background:var(--brand-50);transform:translateY(-1px)}.btn-secondary:active{transform:translateY(0)}.btn-ghost{background:transparent;color:var(--text-body)}.btn-ghost:hover{background:var(--surface-muted);color:var(--text-strong)}.btn-white{background:#fff;color:var(--brand-700);box-shadow:var(--shadow-md)}.btn-white:hover{background:var(--brand-50);color:var(--brand-800);transform:translateY(-1px)}.btn-outline{background:#ffffff0a;color:#fff;border-color:#ffffff59;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.btn-outline:hover{background:#ffffff1f;border-color:#fff9;color:#fff;transform:translateY(-1px)}.btn:disabled,.btn[disabled]{opacity:.55;cursor:not-allowed;transform:none;box-shadow:none}.card{position:relative;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);padding:var(--space-6);transition:var(--transition);overflow:hidden}.card:before{content:"";position:absolute;inset:0 0 auto;height:3px;background:linear-gradient(90deg,var(--brand-600) 0%,var(--brand-400) 55%,var(--accent-500) 100%);opacity:0;transition:opacity var(--duration) var(--ease);pointer-events:none}.card:hover{transform:translateY(-3px);border-color:var(--brand-200);box-shadow:var(--shadow-lg)}.card:hover:before{opacity:1}.card-flat{box-shadow:none}.card-flat:hover{transform:none;box-shadow:var(--shadow-sm)}.surface-panel{background:var(--surface-subtle);border:1px solid var(--border);border-radius:var(--radius-xl);padding:var(--space-6)}.badge{display:inline-flex;align-items:center;gap:.375rem;padding:.3125rem .75rem;border-radius:var(--radius-pill);font-size:var(--fs-xs);font-weight:600;line-height:1.4;background:var(--brand-50);color:var(--brand-800);border:1px solid var(--brand-100)}.badge-accent{background:#fffbeb;color:#b45309;border-color:#fde68a}.badge-neutral{background:var(--surface-muted);color:var(--text-body);border-color:var(--border)}.icon-tile{display:inline-flex;align-items:center;justify-content:center;width:3.25rem;height:3.25rem;border-radius:var(--radius-lg);background:var(--brand-50);color:var(--brand-600);border:1px solid var(--brand-100);transition:var(--transition)}.divider{height:1px;border:0;background:var(--border);margin-block:var(--space-6)}.grid-backdrop{background-image:linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px);background-size:56px 56px}.text-center{text-align:center}.gradient-text{background:linear-gradient(135deg,var(--brand-500) 0%,var(--accent-500) 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent}.glass{background:#ffffffd1;-webkit-backdrop-filter:saturate(180%) blur(14px);backdrop-filter:saturate(180%) blur(14px);border-bottom:1px solid var(--border)}.mb-1{margin-bottom:var(--space-4)}.mb-2{margin-bottom:var(--space-6)}.mb-3{margin-bottom:var(--space-8)}.mt-1{margin-top:var(--space-4)}.mt-2{margin-top:var(--space-6)}.mt-3{margin-top:var(--space-8)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@keyframes fadeIn{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:fadeIn .5s var(--ease) both}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.float-animation{animation:float 6s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.65}}.pulse-animation{animation:pulse 2.4s ease-in-out infinite}@keyframes slideInUp{0%{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-28px)}to{opacity:1;transform:translate(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(28px)}to{opacity:1;transform:translate(0)}}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}@media print{.header,.footer,.nav-mobile,.menu-toggle,.carousel-control,.carousel-indicators{display:none!important}main{min-height:auto}.container{max-width:none;padding:0}.card{box-shadow:none;border:1px solid var(--border)}}
