:root{--color-bg: #07070f;--color-surface: #0d0d1c;--color-surface-raised: #131328;--color-accent: #6366f1;--color-accent-hover: #818cf8;--color-text-primary: #eeeeff;--color-text-muted: #8585b0;--color-border: #1a1a35;--color-header-bg: rgba(7, 7, 15, .7);--color-header-border: rgba(255, 255, 255, .08);--color-header-shadow: 0 4px 24px rgba(0, 0, 0, .4);--color-btn-hover-bg: rgba(255, 255, 255, .06);--font-heading: "Space Grotesk", sans-serif;--font-body: "Inter", sans-serif;--space-1: .5rem;--space-2: 1rem;--space-3: 1.5rem;--space-4: 2rem;--space-5: 2.5rem;--space-6: 3rem;--space-8: 4rem;--space-10: 5rem;--space-12: 6rem;--space-16: 8rem;--max-width: 1100px;--header-height: 3.5rem;--section-padding-y: var(--space-10);--radius-sm: .25rem;--radius-md: .5rem;--radius-lg: 1rem;--radius-full: 9999px;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .5);--shadow-md: 0 4px 16px rgba(0, 0, 0, .5);--shadow-accent: 0 0 32px rgba(99, 102, 241, .25);--transition-fast: .15s ease;--transition-base: .25s ease;--transition-slow: .4s ease;--icon-filter: invert(1)}[data-theme=light]{--icon-filter: invert(0);--color-bg: #f8f8ff;--color-surface: #ffffff;--color-surface-raised: #f0f0fb;--color-accent: #4f46e5;--color-accent-hover: #6366f1;--color-text-primary: #0f0f23;--color-text-muted: #5b5b8a;--color-border: #e0e0f0;--color-header-bg: rgba(248, 248, 255, .85);--color-header-border: rgba(0, 0, 0, .08);--color-header-shadow: 0 4px 24px rgba(0, 0, 0, .1);--color-btn-hover-bg: rgba(0, 0, 0, .06);--shadow-sm: 0 1px 3px rgba(0, 0, 0, .1);--shadow-md: 0 4px 16px rgba(0, 0, 0, .12);--shadow-accent: 0 0 32px rgba(79, 70, 229, .2)}[data-palette=sea]{--color-bg: #030d0f;--color-surface: #071619;--color-surface-raised: #0b1e22;--color-accent: #5eead4;--color-accent-hover: #99f6e4;--color-text-primary: #f0fdfa;--color-text-muted: #4a9b8e;--color-border: #0e2a2e;--color-header-bg: rgba(3, 13, 15, .7);--color-header-border: rgba(94, 234, 212, .1);--shadow-accent: 0 0 32px rgba(94, 234, 212, .25)}[data-palette=sea][data-theme=light]{--color-bg: #f0fdfb;--color-surface: #ffffff;--color-surface-raised: #ccfbf1;--color-accent: #0f766e;--color-accent-hover: #0d9488;--color-text-primary: #042f2e;--color-text-muted: #2f7d74;--color-border: #99f6e4;--color-header-bg: rgba(240, 253, 251, .85);--color-header-border: rgba(15, 118, 110, .15);--color-header-shadow: 0 4px 24px rgba(0, 0, 0, .1);--color-btn-hover-bg: rgba(0, 0, 0, .06);--shadow-sm: 0 1px 3px rgba(0, 0, 0, .1);--shadow-md: 0 4px 16px rgba(0, 0, 0, .12);--shadow-accent: 0 0 32px rgba(15, 118, 110, .2)}[data-palette=forest]{--color-bg: #030f07;--color-surface: #071a0e;--color-surface-raised: #0b2414;--color-accent: #4ade80;--color-accent-hover: #86efac;--color-text-primary: #ecfdf5;--color-text-muted: #4d9166;--color-border: #0e2e18;--color-header-bg: rgba(3, 15, 7, .7);--color-header-border: rgba(74, 222, 128, .1);--shadow-accent: 0 0 32px rgba(74, 222, 128, .25)}[data-palette=forest][data-theme=light]{--color-bg: #f0fdf4;--color-surface: #ffffff;--color-surface-raised: #dcfce7;--color-accent: #15803d;--color-accent-hover: #16a34a;--color-text-primary: #052e16;--color-text-muted: #3f6652;--color-border: #bbf7d0;--color-header-bg: rgba(240, 253, 244, .85);--color-header-border: rgba(21, 128, 61, .15);--color-header-shadow: 0 4px 24px rgba(0, 0, 0, .1);--color-btn-hover-bg: rgba(0, 0, 0, .06);--shadow-sm: 0 1px 3px rgba(0, 0, 0, .1);--shadow-md: 0 4px 16px rgba(0, 0, 0, .12);--shadow-accent: 0 0 32px rgba(21, 128, 61, .2)}[data-palette=desert]{--color-bg: #100a00;--color-surface: #1e1200;--color-surface-raised: #2a1900;--color-accent: #fbbf24;--color-accent-hover: #fcd34d;--color-text-primary: #fffbeb;--color-text-muted: #a0784a;--color-border: #3d2800;--color-header-bg: rgba(16, 10, 0, .7);--color-header-border: rgba(251, 191, 36, .1);--shadow-accent: 0 0 32px rgba(251, 191, 36, .25)}[data-palette=desert][data-theme=light]{--color-bg: #fffbeb;--color-surface: #ffffff;--color-surface-raised: #fef3c7;--color-accent: #b45309;--color-accent-hover: #d97706;--color-text-primary: #1c1000;--color-text-muted: #7c5a2a;--color-border: #fde68a;--color-header-bg: rgba(255, 251, 235, .85);--color-header-border: rgba(180, 83, 9, .15);--color-header-shadow: 0 4px 24px rgba(0, 0, 0, .1);--color-btn-hover-bg: rgba(0, 0, 0, .06);--shadow-sm: 0 1px 3px rgba(0, 0, 0, .1);--shadow-md: 0 4px 16px rgba(0, 0, 0, .12);--shadow-accent: 0 0 32px rgba(180, 83, 9, .2)}[data-palette=fire]{--color-bg: #0f0600;--color-surface: #1c0c03;--color-surface-raised: #271207;--color-accent: #fb923c;--color-accent-hover: #fdba74;--color-text-primary: #fff7ed;--color-text-muted: #b07040;--color-border: #3d1a05;--color-header-bg: rgba(15, 6, 0, .7);--color-header-border: rgba(251, 146, 60, .12);--shadow-accent: 0 0 32px rgba(251, 146, 60, .25)}[data-palette=fire][data-theme=light]{--color-bg: #fff7ed;--color-surface: #ffffff;--color-surface-raised: #fef3c7;--color-accent: #c2410c;--color-accent-hover: #ea580c;--color-text-primary: #1c0800;--color-text-muted: #78350f;--color-border: #fed7aa;--color-header-bg: rgba(255, 247, 237, .85);--color-header-border: rgba(194, 65, 12, .15);--color-header-shadow: 0 4px 24px rgba(0, 0, 0, .1);--color-btn-hover-bg: rgba(0, 0, 0, .06);--shadow-sm: 0 1px 3px rgba(0, 0, 0, .1);--shadow-md: 0 4px 16px rgba(0, 0, 0, .12);--shadow-accent: 0 0 32px rgba(194, 65, 12, .2)}@media(max-width:768px){:root{--section-padding-y: var(--space-6)}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body{background-color:var(--color-bg);color:var(--color-text-primary);font-family:var(--font-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100dvh}ul,ol{list-style:none}img,svg{display:block;max-width:100%}button{cursor:pointer;border:none;background:none;font:inherit}a{color:inherit;text-decoration:none}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);color:var(--color-text-primary);line-height:1.1;font-weight:700}p{font-family:var(--font-body);line-height:1.75}.section-label{font-family:var(--font-body);font-size:.75rem;font-weight:500;letter-spacing:.15em;text-transform:uppercase;color:var(--color-accent);display:block;margin-bottom:var(--space-2)}.section-heading{font-family:var(--font-heading);font-size:clamp(2rem,4vw,2.75rem);font-weight:700;color:var(--color-text-primary);margin-bottom:var(--space-6)}.container{max-width:var(--max-width);margin-inline:auto;padding-inline:var(--space-4)}.scroll-reveal{opacity:0;transform:translateY(24px);transition:opacity .5s ease,transform .5s ease;transition-delay:var(--reveal-delay, 0ms)}.scroll-reveal.is-visible{opacity:1;transform:translateY(0)}@media(prefers-reduced-motion:reduce){.scroll-reveal{opacity:1;transform:none;transition:none}}[data-palette=default]:not([data-theme=light]) .hero__cta--outline:hover{background-color:var(--color-accent);color:#fff}[data-palette=default][data-theme=light] .hero__cta--outline:hover{background-color:var(--color-accent);color:#fff}[data-palette=sea]:not([data-theme=light]) .hero__cta:not(.hero__cta--outline){color:var(--color-bg)}[data-palette=sea]:not([data-theme=light]) .hero__cta--outline:hover{background-color:var(--color-accent);color:var(--color-bg)}[data-palette=sea][data-theme=light] .hero__cta--outline:hover{background-color:var(--color-accent);color:#fff}[data-palette=forest]:not([data-theme=light]) .hero__cta:not(.hero__cta--outline){color:var(--color-bg)}[data-palette=forest]:not([data-theme=light]) .hero__cta--outline:hover{background-color:var(--color-accent);color:var(--color-bg)}[data-palette=forest][data-theme=light] .hero__cta--outline:hover{background-color:var(--color-accent);color:#fff}[data-palette=desert]:not([data-theme=light]) .hero__cta--outline:hover{background-color:var(--color-accent);color:var(--color-bg)}[data-palette=desert][data-theme=light] .hero__cta--outline:hover{background-color:var(--color-accent);color:#fff}[data-palette=fire]:not([data-theme=light]) .hero__cta--outline:hover{background-color:var(--color-accent);color:var(--color-bg)}[data-palette=fire][data-theme=light] .hero__cta--outline:hover{background-color:var(--color-accent);color:#fff}
