:root{--color-primary-950:#062a2c;--color-primary-900:#0a3538;--color-primary-800:#0c4a4e;--color-primary-700:#0e5e62;--color-primary-600:#117377;--color-primary-500:#1a8a8e;--color-primary-400:#2da7ab;--color-primary-300:#5fc4c8;--color-primary-200:#9bdde0;--color-primary-100:#d1eef0;--color-primary-50:#ebf8f8;--color-sand-700:#a88454;--color-sand-600:#c39a6b;--color-sand-500:#d8b285;--color-sand-400:#e4c5a3;--color-sand-300:#ecd6bb;--color-sand-200:#f3e6cf;--color-sand-100:#faf2e3;--color-coral-700:#c44a1f;--color-coral-600:#dc5a2a;--color-coral-500:#ff6b35;--color-coral-400:#ff8c5e;--color-coral-300:#ffac8a;--color-cream-50:#fdfaf3;--color-cream-100:#f9f4e9;--color-cream-200:#f3e9d4;--color-ink-900:#0c1c1f;--color-ink-800:#14282a;--color-ink-700:#1f3839;--color-ink-600:#38504f;--color-ink-500:#5a6e6c;--color-ink-400:#80908e;--color-ink-300:#aab6b4;--color-ink-200:#d1d8d6;--color-ink-100:#e8edeb;--surface-page:var(--color-cream-50);--surface-raised:#fff;--surface-soft:var(--color-cream-100);--surface-deep:var(--color-primary-900);--surface-overlay:#0a1c1f8c;--text-primary:var(--color-ink-900);--text-secondary:var(--color-ink-600);--text-muted:var(--color-ink-500);--text-on-deep:var(--color-cream-50);--text-on-deep-soft:var(--color-ink-200);--border-soft:#0a1c1f14;--border-medium:#0a1c1f24;--font-serif:var(--font-cormorant,"Cormorant Garamond"), Georgia, "Times New Roman", serif;--font-sans:var(--font-inter,"Inter"), -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--text-display:clamp(2.75rem, 5.5vw + 1rem, 6rem);--text-h1:clamp(2.25rem, 3.5vw + .5rem, 4rem);--text-h2:clamp(1.75rem, 2vw + .75rem, 2.75rem);--text-h3:clamp(1.25rem, 1vw + .75rem, 1.875rem);--text-h4:clamp(1.125rem, .5vw + .875rem, 1.375rem);--text-lead:clamp(1.125rem, .4vw + 1rem, 1.375rem);--text-eyebrow:.8125rem;--leading-tight:1.1;--leading-snug:1.25;--leading-normal:1.5;--leading-relaxed:1.65;--tracking-tight:-.02em;--tracking-normal:0;--tracking-wide:.08em;--tracking-wider:.16em;--weight-regular:400;--weight-medium:500;--weight-semibold:600;--weight-bold:700;--space-0:0;--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;--space-32:8rem;--space-40:10rem;--space-48:12rem;--section-y:clamp(4rem, 6vw + 1rem, 8rem);--radius-xs:6px;--radius-sm:12px;--radius-md:20px;--radius-lg:28px;--radius-xl:40px;--radius-2xl:56px;--radius-pill:9999px;--shadow-xs:0 1px 2px #0a1c1f0d;--shadow-sm:0 2px 8px #0a1c1f0f, 0 1px 2px #0a1c1f0a;--shadow-md:0 8px 24px #0a1c1f14, 0 2px 6px #0a1c1f0a;--shadow-lg:0 16px 48px #0a1c1f1f, 0 4px 12px #0a1c1f0f;--shadow-xl:0 28px 72px #0a1c1f2e, 0 8px 24px #0a1c1f14;--shadow-glow-teal:0 16px 48px #1a8a8e38;--shadow-glow-coral:0 16px 48px #ff6b3538;--container-narrow:720px;--container-base:1120px;--container-wide:1320px;--container-full:1480px;--gutter:clamp(1.25rem, 4vw, 2.5rem);--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-in-out:cubic-bezier(.65, 0, .35, 1);--ease-spring:cubic-bezier(.34, 1.56, .64, 1);--duration-fast:.18s;--duration-base:.28s;--duration-slow:.48s;--duration-slower:.72s}
*,:before,:after{box-sizing:border-box}*{margin:0;padding:0}html{-webkit-text-size-adjust:100%;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;scroll-behavior:smooth}body{font-family:var(--font-sans);font-size:var(--text-lead);line-height:var(--leading-normal);color:var(--text-primary);background:var(--surface-page);font-feature-settings:"ss01", "cv11";min-height:100dvh;overflow-x:hidden}img,picture,video,canvas,svg{max-width:100%;display:block}img{height:auto}button,input,textarea,select{font:inherit;color:inherit}button{cursor:pointer;background:0 0;border:0}a{color:inherit;text-decoration:none}h1,h2,h3,h4,h5,h6{font-family:var(--font-serif);font-weight:var(--weight-medium);line-height:var(--leading-tight);letter-spacing:var(--tracking-tight);color:var(--text-primary)}h1{font-size:var(--text-h1)}h2{font-size:var(--text-h2)}h3{font-size:var(--text-h3)}h4{font-size:var(--text-h4)}p{line-height:var(--leading-relaxed)}::selection{background:var(--color-primary-200);color:var(--color-primary-900)}:focus-visible{outline:2px solid var(--color-primary-500);outline-offset:3px;border-radius:var(--radius-xs)}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
