:root{--white:#fff;--off-white:#fff;--light-grey:#fff;--mid-grey:#e2e4e9;--text-dark:#111;--text-mid:#444;--text-muted:#888;--text-light:#bbb;--teal:#12141a;--teal-light:#f1f5f9;--teal-dark:#1f2937;--teal-muted:#12141a0d;--teal-border:#12141a1f;--amber:#12141a;--amber-dark:#000;--amber-light:#374151;--amber-muted:#12141a0d;--sage:#64748b;--sage-light:#f8fafc;--bg:var(--white);--bg-alt:var(--off-white);--bg-section:var(--light-grey);--surface:var(--white);--border:var(--mid-grey);--border-light:#ebebeb;--text-primary:var(--text-dark);--text-secondary:var(--text-mid);--font-display:"DM Serif Display", serif;--font-body:"DM Sans", sans-serif;--section-pad:clamp(4rem, 8vw, 7rem);--container:1200px;--container-sm:820px;--container-md:1040px;--ease:cubic-bezier(.4, 0, .2, 1);--ease-out:cubic-bezier(0, 0, .2, 1);--black:var(--text-dark);--gold:var(--amber);--gold-light:var(--amber-light);--gold-dark:var(--amber-dark);--gold-muted:var(--amber-muted);--gold-border:#f5a62338;--cream:var(--text-dark);--cream-2:var(--text-mid);--cream-3:var(--text-mid);--cream-muted:var(--text-mid);--gray-1:var(--text-muted);--gray-2:var(--text-mid);--color-black:var(--text-dark);--color-gold:var(--amber);--color-gold-light:var(--amber-light);--color-gold-dark:var(--amber-dark);--color-gold-muted:var(--amber-muted);--color-gold-border:#f5a62338;--color-white:var(--white);--color-cream:var(--text-dark);--color-cream-2:var(--text-mid);--color-cream-3:var(--text-mid);--color-cream-muted:var(--text-mid);--color-sage:var(--sage);--color-sage-light:#9ab79d;--color-sage-dark:#5b7b5e;--color-sage-muted:var(--sage-light);--color-bg:var(--white);--color-bg-alt:var(--off-white);--color-bg-secondary:var(--off-white);--color-surface:var(--white);--color-border:var(--mid-grey);--color-border-gold:#f5a62338;--color-text-primary:var(--text-dark);--color-text-secondary:var(--text-mid);--color-text-muted:var(--text-muted)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:16px}body{font-family:var(--font-body);background:var(--white);color:var(--text-dark);line-height:1.6;overflow-x:hidden}img{max-width:100%;display:block}ul,ol{list-style:none}a{color:inherit;text-decoration:none}button,a{cursor:pointer;font-family:inherit}button:focus,a:focus,input:focus,select:focus,textarea:focus{outline:none}button:focus-visible,a:focus-visible{outline:2px solid var(--teal);outline-offset:3px}input,select,textarea{font-family:inherit}.container{max-width:var(--container);margin:0 auto;padding:0 2rem}.section{padding:var(--section-pad) 0}.display-xl{font-family:var(--font-display);color:var(--text-dark);font-size:clamp(2.8rem,6vw,5rem);font-weight:400;line-height:1.05}.display-lg{font-family:var(--font-display);font-size:clamp(2rem,4.5vw,3.5rem);font-weight:400;line-height:1.1}.display-md{font-family:var(--font-display);font-size:clamp(1.6rem,3vw,2.4rem);font-weight:400;line-height:1.15}.heading{font-family:var(--font-body);letter-spacing:.02em;color:var(--text-dark);font-size:clamp(1rem,1.8vw,1.25rem);font-weight:600}.body-lg{font-family:var(--font-body);color:var(--text-mid);font-size:1rem;font-weight:400;line-height:1.75}.body-sm{font-family:var(--font-body);color:var(--text-mid);font-size:.875rem;line-height:1.65}.label{font-family:var(--font-body);letter-spacing:.15em;text-transform:uppercase;color:var(--teal);font-size:.7rem;font-weight:600}.section-header{margin-bottom:3.5rem}.section-header--center{text-align:center}.section-eyebrow{font-family:var(--font-body);letter-spacing:.18em;text-transform:uppercase;color:var(--teal);align-items:center;gap:.6rem;margin-bottom:1rem;font-size:.72rem;font-weight:600;display:inline-flex}.section-eyebrow:before,.section-eyebrow:after{content:"";background:var(--teal);opacity:.5;width:20px;height:1.5px;display:block}.section-eyebrow--left:after,.section-eyebrow--left:before{display:none}.section-title{font-family:var(--font-display);color:var(--text-dark);margin-bottom:1rem;font-size:clamp(1.8rem,4vw,3rem);font-weight:400;line-height:1.1}.section-title strong{color:var(--teal);font-weight:700}.section-subtitle{font-family:var(--font-body);color:var(--text-mid);max-width:560px;font-size:1rem;line-height:1.75}.section-header--center .section-subtitle{margin:0 auto}.btn{font-family:var(--font-body);letter-spacing:.02em;cursor:pointer;transition:all .25s var(--ease);white-space:nowrap;border:none;border-radius:6px;justify-content:center;align-items:center;gap:8px;font-size:.9rem;font-weight:600;display:inline-flex;position:relative}.btn-primary{background:var(--amber);color:#fff;padding:14px 32px;box-shadow:0 2px 12px #12141a26}.btn-primary:hover{background:var(--amber-dark);transform:translateY(-1px);box-shadow:0 6px 20px #12141a40}.btn-outline{color:var(--text-dark);border:1.5px solid var(--border);background:0 0;padding:13px 31px}.btn-outline:hover{border-color:var(--teal);color:var(--teal)}.btn-teal{background:var(--teal);color:#fff;padding:14px 32px}.btn-teal:hover{background:var(--teal-dark);transform:translateY(-1px)}.btn-sm{padding:10px 22px;font-size:.82rem}.card{background:var(--white);border:1px solid var(--border-light);transition:box-shadow .3s var(--ease), border-color .3s var(--ease);border-radius:12px}.card:hover{border-color:var(--teal-border);box-shadow:0 8px 32px #00000014}.badge-pill{background:var(--teal-muted);border:1px solid var(--teal-border);color:var(--teal-dark);letter-spacing:.06em;border-radius:100px;align-items:center;gap:5px;padding:4px 12px;font-size:.72rem;font-weight:600;display:inline-flex}.badge-sage{background:var(--sage-light);color:#4a7e5a;border:1px solid #6a9e7a40;border-radius:100px;align-items:center;padding:4px 12px;font-size:.72rem;font-weight:600;display:inline-flex}.divider{background:var(--border-light);height:1px;margin:0}.divider-teal{background:linear-gradient(90deg, transparent, var(--teal), transparent);opacity:.4;height:1.5px}[data-reveal]{opacity:0;transition:opacity .6s var(--ease-out), transform .6s var(--ease-out);transform:translateY(20px)}[data-reveal].visible{opacity:1;transform:none}.page-banner{background:var(--off-white);border-bottom:1px solid var(--border-light);padding:9.25rem 0 3.5rem;position:relative}.grain-overlay{display:none}.announcement-bar{background:var(--teal);color:#fff;text-align:center;letter-spacing:.04em;z-index:1001;padding:9px 1rem;font-size:.8rem;font-weight:500;position:fixed;top:0;left:0;right:0}@media (max-width:768px){.container{padding:0 1.25rem}}
