:root{--color-bg: #031410;--color-bg-alt: #021009;--color-surface: rgba(255, 255, 255, .04);--color-surface-hover: rgba(255, 255, 255, .07);--color-border: rgba(255, 255, 255, .1);--color-border-strong: rgba(255, 255, 255, .18);--color-text: #ede8dc;--color-text-muted: rgba(237, 232, 220, .58);--color-text-subtle: rgba(237, 232, 220, .32);--color-accent: #8fd4a8;--color-accent-dim: rgba(143, 212, 168, .12);--color-accent-glow: rgba(143, 212, 168, .25);--color-blue: #5b82f5;--color-blue-dim: rgba(91, 130, 245, .12);--color-blue-glow: rgba(91, 130, 245, .25);--gradient-brand: linear-gradient(135deg, var(--color-accent) 0%, var(--color-blue) 100%);--gradient-brand-rev: linear-gradient(135deg, var(--color-blue) 0%, var(--color-accent) 100%);--color-cta-bg: #ede8dc;--color-cta-text: #062319;--font-serif: "Playfair Display", Georgia, "Times New Roman", serif;--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--text-xs: .75rem;--text-sm: .875rem;--text-base: 1rem;--text-lg: 1.125rem;--text-xl: 1.25rem;--text-2xl: 1.5rem;--text-3xl: 1.875rem;--text-4xl: 2.25rem;--text-5xl: 3rem;--text-6xl: 3.75rem;--text-7xl: 4.5rem;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-16: 4rem;--space-20: 5rem;--space-24: 6rem;--radius-sm: .25rem;--radius-md: .5rem;--radius-lg: 1rem;--radius-xl: 1.5rem;--radius-2xl: 2rem;--radius-full: 9999px;--shadow-sm: 0 1px 4px rgba(0, 0, 0, .4);--shadow-md: 0 4px 16px rgba(0, 0, 0, .5);--shadow-lg: 0 8px 32px rgba(0, 0, 0, .6);--shadow-glow: 0 0 40px rgba(143, 212, 168, .15);--transition-fast: .15s ease;--transition-base: .25s ease;--container-max: 1100px;--nav-height: 72px}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;scroll-behavior:smooth;-webkit-text-size-adjust:100%;overflow-x:hidden}body{font-family:var(--font-sans);background-color:var(--color-bg);color:var(--color-text);line-height:1.6;min-height:100vh;overflow-x:hidden;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}img,svg{display:block;max-width:100%}a{color:inherit;text-decoration:none}h1,h2,h3,h4{font-family:var(--font-serif);line-height:1.15;color:var(--color-text);font-weight:700}h1 em,h2 em,h3 em{font-style:italic;color:var(--color-accent)}.em-blue em{color:var(--color-blue)}.em-gradient em{background:var(--gradient-brand);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}p{color:var(--color-text-muted)}.container{width:100%;max-width:var(--container-max);margin-inline:auto;padding-inline:var(--space-6)}.btn{display:inline-flex;align-items:center;gap:var(--space-2);padding:.875rem 1.75rem;border-radius:var(--radius-full);font-family:var(--font-sans);font-size:var(--text-sm);font-weight:600;cursor:pointer;border:none;outline:none;text-decoration:none;transition:all var(--transition-base);white-space:nowrap}.btn--primary{background:var(--color-cta-bg);color:var(--color-cta-text);box-shadow:0 4px 20px #0000004d}.btn--primary:hover{background:#fff;transform:translateY(-2px);box-shadow:0 8px 32px #0006}.btn--ghost{background:transparent;color:var(--color-text);border:1px solid var(--color-border)}.btn--ghost:hover{border-color:var(--color-border-strong);background:#ffffff0d;transform:translateY(-1px)}.btn--lg{padding:1rem 2rem;font-size:var(--text-base)}.label{display:inline-flex;align-items:center;gap:var(--space-2);font-family:var(--font-sans);font-size:var(--text-xs);font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--color-accent);margin-bottom:var(--space-5)}.label:before{content:"•";font-size:.6rem}.reveal{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s ease}.reveal.visible{opacity:1;transform:translateY(0)}.reveal-delay-1{transition-delay:.1s}.reveal-delay-2{transition-delay:.2s}.reveal-delay-3{transition-delay:.3s}.reveal-delay-4{transition-delay:.4s}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:var(--color-bg)}::-webkit-scrollbar-thumb{background:#8fd4a84d;border-radius:99px}:focus-visible{outline:2px solid var(--color-accent);outline-offset:3px}::selection{background:#8fd4a840;color:var(--color-text)}@keyframes fade-up{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse-soft{0%,to{box-shadow:0 0 #8fd4a800}50%{box-shadow:0 0 0 8px #8fd4a814}}
