:root{--color-cream: #FAF7F2;--color-charcoal: #2C2C2C;--color-copper: #C46E48;--color-sand: #D9C3A5;--color-sage: #6E7F68;--color-copper-dark: #A35A37;--color-copper-light: #E8A07C;--color-charcoal-60: rgba(44,44,44,.6);--color-charcoal-20: rgba(44,44,44,.2);--color-white: #FFFFFF;--font-heading: "Cormorant Garamond", Georgia, serif;--font-body: "Inter", system-ui, -apple-system, sans-serif;--text-xs: .75rem;--text-sm: .875rem;--text-base: 1rem;--text-md: 1.25rem;--text-lg: 1.563rem;--text-xl: 1.953rem;--text-2xl: 2.441rem;--text-3xl: 3.052rem;--text-hero: clamp(3rem, 6vw, 5rem);--leading-tight: 1.2;--leading-snug: 1.35;--leading-normal: 1.6;--leading-loose: 1.8;--weight-regular: 400;--weight-medium: 500;--weight-semibold: 600;--weight-bold: 700;--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;--max-width-content: 1200px;--max-width-narrow: 768px;--gutter: clamp(1.5rem, 5vw, 4rem);--bp-sm: 480px;--bp-md: 768px;--bp-lg: 1024px}*,*:before,*:after{box-sizing:border-box}*{margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--font-body);font-size:var(--text-base);line-height:var(--leading-normal);color:var(--color-charcoal);background-color:var(--color-cream);-webkit-font-smoothing:antialiased}img,svg{display:block;max-width:100%}a{color:inherit}ul,ol{list-style:none}button{font-family:inherit;cursor:pointer;border:none;background:none}.container{max-width:var(--max-width-content);margin-inline:auto;padding-inline:var(--gutter)}.section{padding-block:var(--space-20)}.section--hero{padding-top:var(--space-32);padding-bottom:var(--space-20)}.section--compact{padding-block:var(--space-12)}.section--charcoal{background-color:var(--color-charcoal);color:var(--color-cream)}.section--sand{background-color:var(--color-sand)}.section--white{background-color:var(--color-white)}.section--copper{background-color:var(--color-copper);color:var(--color-white)}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);line-height:var(--leading-tight);color:var(--color-charcoal)}h1{font-size:var(--text-3xl);font-weight:400}h2{font-size:var(--text-2xl);font-weight:400}h3{font-family:var(--font-body);font-size:var(--text-xl);font-weight:var(--weight-semibold)}h4{font-family:var(--font-body);font-size:var(--text-lg);font-weight:var(--weight-semibold)}.hero-heading{font-family:var(--font-heading);font-size:var(--text-hero);font-weight:300;line-height:var(--leading-tight)}.lead{font-size:var(--text-md);color:var(--color-charcoal-60);line-height:var(--leading-loose)}p{line-height:var(--leading-normal)}p+p{margin-top:var(--space-4)}.btn{display:inline-flex;align-items:center;gap:var(--space-2);padding:.75rem 1.75rem;border-radius:2px;font-family:var(--font-body);font-size:var(--text-sm);font-weight:var(--weight-semibold);letter-spacing:.04em;text-transform:uppercase;transition:all .2s ease;cursor:pointer;text-decoration:none;border:2px solid transparent}.btn-primary{background-color:var(--color-copper);color:var(--color-white);border-color:var(--color-copper)}.btn-primary:hover{background-color:var(--color-copper-dark);border-color:var(--color-copper-dark)}.btn-secondary{background-color:transparent;color:var(--color-charcoal);border-color:var(--color-charcoal)}.btn-secondary:hover{background-color:var(--color-charcoal);color:var(--color-cream)}.btn-outline-white{background-color:transparent;color:var(--color-white);border-color:var(--color-white)}.btn-outline-white:hover{background-color:var(--color-white);color:var(--color-copper)}.btn-ghost{background-color:transparent;color:var(--color-sage);border-color:var(--color-sage)}.btn-ghost:hover{background-color:var(--color-sage);color:var(--color-white)}.btn-sm{padding:.5rem 1.25rem;font-size:var(--text-xs)}.btn-lg{padding:1rem 2.25rem;font-size:var(--text-base)}.card{background-color:var(--color-white);border:1px solid var(--color-sand);border-radius:2px;padding:var(--space-8);transition:box-shadow .2s ease,transform .2s ease}.card:hover{box-shadow:0 8px 32px #2c2c2c14;transform:translateY(-2px)}.card-accented{border-top:3px solid var(--color-copper)}.card-stat{background-color:var(--color-cream);border:1px solid var(--color-sand);border-radius:2px;text-align:center;padding:var(--space-10) var(--space-8)}.card-stat .stat-number{font-family:var(--font-heading);font-size:var(--text-3xl);color:var(--color-copper);line-height:1}.card-stat .stat-label{font-size:var(--text-sm);color:var(--color-charcoal-60);margin-top:var(--space-2);text-transform:uppercase;letter-spacing:.08em}.section-header{text-align:center;max-width:680px;margin-inline:auto;margin-bottom:var(--space-16)}.section-eyebrow{display:block;font-size:var(--text-xs);font-weight:var(--weight-semibold);text-transform:uppercase;letter-spacing:.12em;color:var(--color-copper);margin-bottom:var(--space-3)}.section-title{font-family:var(--font-heading);font-size:var(--text-2xl);color:var(--color-charcoal);margin-bottom:var(--space-4)}.section-subtitle{font-size:var(--text-md);color:var(--color-charcoal-60);line-height:var(--leading-loose)}.tag{display:inline-flex;align-items:center;padding:.25rem .75rem;border-radius:2px;font-size:var(--text-xs);font-weight:var(--weight-semibold);letter-spacing:.06em;text-transform:uppercase}.tag-sage{background-color:#6e7f681f;color:var(--color-sage)}.tag-copper{background-color:#c46e481f;color:var(--color-copper)}.tag-sand{background-color:var(--color-sand);color:var(--color-charcoal)}.nav{position:sticky;top:0;z-index:100;background-color:var(--color-cream);border-bottom:1px solid transparent;padding:var(--space-4) 0;transition:border-color .2s,background-color .2s,box-shadow .2s}.nav.scrolled{background-color:var(--color-white);border-bottom-color:var(--color-sand);box-shadow:0 2px 16px #2c2c2c0f}.nav-inner{display:flex;align-items:center;justify-content:space-between}.nav-logo{font-family:var(--font-heading);font-size:1.4rem;font-weight:600;color:var(--color-charcoal);text-decoration:none;letter-spacing:.02em}.nav-logo span{color:var(--color-copper)}.nav-links{display:flex;align-items:center;gap:var(--space-8)}.nav-links a{font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--color-charcoal-60);text-decoration:none;transition:color .15s}.nav-links a:hover{color:var(--color-charcoal)}.nav-cta{margin-left:var(--space-4)}.nav-toggle{display:none;flex-direction:column;gap:5px;width:24px;cursor:pointer;background:none;border:none}.nav-toggle span{display:block;height:2px;background:var(--color-charcoal);transition:all .2s}@media (max-width: 768px){.nav-toggle{display:flex}.nav-links{display:none;flex-direction:column;position:fixed;inset:0;background:var(--color-cream);padding:var(--space-16) var(--space-8);gap:var(--space-6);z-index:99}.nav-links.open{display:flex}.nav-links a{font-size:var(--text-xl);color:var(--color-charcoal)}.nav-cta{display:none}}.footer{background-color:var(--color-charcoal);color:var(--color-sand);padding:var(--space-16) 0 var(--space-8)}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:var(--space-10)}.footer-logo{font-family:var(--font-heading);font-size:1.4rem;color:var(--color-cream);text-decoration:none;display:block;margin-bottom:var(--space-4)}.footer-logo span{color:var(--color-copper)}.footer-brand p{font-size:var(--text-sm);line-height:var(--leading-loose);max-width:280px}.footer-heading{font-size:var(--text-xs);font-weight:var(--weight-semibold);text-transform:uppercase;letter-spacing:.1em;color:var(--color-copper);margin-bottom:var(--space-4)}.footer-links li+li{margin-top:var(--space-3)}.footer-links a{font-size:var(--text-sm);color:var(--color-sand);text-decoration:none;transition:color .15s}.footer-links a:hover{color:var(--color-cream)}.footer-bottom{margin-top:var(--space-12);padding-top:var(--space-6);border-top:1px solid rgba(217,195,165,.2);display:flex;justify-content:space-between;align-items:center;font-size:var(--text-xs);color:#d9c3a580}@media (max-width: 768px){.footer-grid{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1 / -1}.footer-bottom{flex-direction:column;gap:var(--space-2);text-align:center}}@media (max-width: 480px){.footer-grid{grid-template-columns:1fr}}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-6)}.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-6)}.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-6)}@media (max-width: 768px){.grid-3,.grid-2{grid-template-columns:1fr}.grid-4{grid-template-columns:repeat(2,1fr)}}@media (min-width: 481px) and (max-width: 768px){.grid-3{grid-template-columns:repeat(2,1fr)}}@media (max-width: 480px){.grid-4{grid-template-columns:1fr}}.form-group{display:flex;flex-direction:column;gap:var(--space-2);margin-bottom:var(--space-4)}.form-label{font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--color-charcoal)}.form-input,.form-select,.form-textarea{padding:.75rem 1rem;border:1px solid var(--color-sand);border-radius:2px;background:var(--color-white);font-family:var(--font-body);font-size:var(--text-base);color:var(--color-charcoal);transition:border-color .15s,box-shadow .15s;width:100%}.form-input:focus,.form-select:focus,.form-textarea:focus{outline:none;border-color:var(--color-copper);box-shadow:0 0 0 3px #c46e481f}.cta-band{background-color:var(--color-copper);padding-block:var(--space-16);text-align:center}.cta-band h2{color:var(--color-white);font-family:var(--font-heading);font-size:var(--text-2xl);margin-bottom:var(--space-6)}:focus-visible{outline:none;box-shadow:0 0 0 3px #c46e4866}.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}.text-center{text-align:center}.text-copper{color:var(--color-copper)}.text-sage{color:var(--color-sage)}.text-muted{color:var(--color-charcoal-60)}.mt-4{margin-top:var(--space-4)}.mt-6{margin-top:var(--space-6)}.mt-8{margin-top:var(--space-8)}.mb-4{margin-bottom:var(--space-4)}.mb-6{margin-bottom:var(--space-6)}.flex{display:flex}.flex-center{display:flex;align-items:center;justify-content:center}.gap-4{gap:var(--space-4)}.gap-6{gap:var(--space-6)}
