@import"https://fonts.googleapis.com/css2?family=Newsreader:ital,opsz,wght@0,6..72,400..700;1,6..72,400..700&family=Plus+Jakarta+Sans:wght@400;500;600;700&display=swap";:root{--color-primary: #087A45;--color-primary-dark: #056137;--color-navy: #102A43;--color-navy-soft: #243B53;--color-background: #FAF8F3;--color-surface: #FFFFFF;--color-surface-warm: #F3EBDD;--color-text: #172B3A;--color-muted: #627D98;--color-border: #D9E0DC;--color-green-soft: #E4F0E8;--color-blue-soft: #E5F0F7;--color-orange-soft: #F8E9D8;--color-orange: #D97732;--color-error: #B42318;--color-success: #087A45;--font-serif: "Newsreader", "Playfair Display", Georgia, Cambria, serif;--font-sans: "Plus Jakarta Sans", system-ui, -apple-system, sans-serif;--space-2xs: clamp(.25rem, .5vw, .375rem);--space-xs: clamp(.5rem, .8vw, .625rem);--space-sm: clamp(.75rem, 1.2vw, 1rem);--space-md: clamp(1.25rem, 2vw, 1.75rem);--space-lg: clamp(2rem, 3.5vw, 3rem);--space-xl: clamp(3rem, 5vw, 4.5rem);--space-2xl: clamp(4.5rem, 8vw, 6.5rem);--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-full: 9999px;--shadow-subtle: 0 1px 3px rgba(16, 42, 67, .05), 0 4px 12px rgba(16, 42, 67, .03);--shadow-hover: 0 4px 12px rgba(16, 42, 67, .08), 0 8px 24px rgba(16, 42, 67, .04);--container-max: 1240px;--container-narrow: 860px}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{background-color:var(--color-background);color:var(--color-text);font-family:var(--font-sans);line-height:1.65;font-weight:400;min-height:100vh;display:flex;flex-direction:column}#root{display:flex;flex-direction:column;min-height:100vh}h1,h2,h3,h4,.font-serif{font-family:var(--font-serif);color:var(--color-navy);line-height:1.25;font-weight:600;text-wrap:balance}h1{font-size:clamp(2rem,3.8vw,3.4rem);letter-spacing:-.015em}h2{font-size:clamp(1.6rem,2.6vw,2.3rem);letter-spacing:-.01em}h3{font-size:clamp(1.25rem,1.8vw,1.6rem)}p{color:var(--color-text);margin-bottom:var(--space-sm);text-wrap:pretty}a{color:var(--color-primary);text-decoration:none;transition:color .15s cubic-bezier(.16,1,.3,1)}a:hover{color:var(--color-primary-dark)}img{max-width:100%;height:auto;display:block}.container{width:100%;max-width:var(--container-max);margin-left:auto;margin-right:auto;padding-left:clamp(1rem,3vw,2.5rem);padding-right:clamp(1rem,3vw,2.5rem)}.container-narrow{width:100%;max-width:var(--container-narrow);margin-left:auto;margin-right:auto;padding-left:clamp(1rem,3vw,2.5rem);padding-right:clamp(1rem,3vw,2.5rem)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;font-family:var(--font-sans);font-size:.9375rem;font-weight:600;padding:.75rem 1.4rem;border-radius:var(--radius-sm);border:1px solid transparent;cursor:pointer;transition:all .2s cubic-bezier(.16,1,.3,1);text-decoration:none;line-height:1.2}.btn-primary{background-color:var(--color-primary);color:#fff;border-color:var(--color-primary)}.btn-primary:hover{background-color:var(--color-primary-dark);border-color:var(--color-primary-dark);color:#fff;transform:translateY(-1px)}.btn-secondary{background-color:var(--color-surface);color:var(--color-navy);border-color:var(--color-navy)}.btn-secondary:hover{background-color:var(--color-navy);color:#fff;transform:translateY(-1px)}.btn-outline{background-color:transparent;color:var(--color-primary);border-color:var(--color-primary)}.btn-outline:hover{background-color:var(--color-green-soft);color:var(--color-primary-dark)}.eyebrow{display:inline-block;font-size:.8125rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--color-primary);margin-bottom:.5rem}.badge{display:inline-flex;align-items:center;font-size:.75rem;font-weight:600;padding:.25rem .625rem;border-radius:var(--radius-full)}.badge-green{background-color:var(--color-green-soft);color:var(--color-primary-dark)}.badge-orange{background-color:var(--color-orange-soft);color:var(--color-orange)}.badge-blue{background-color:var(--color-blue-soft);color:var(--color-navy-soft)}.form-input,.form-textarea,.form-select{width:100%;font-family:var(--font-sans);font-size:.9375rem;padding:.75rem 1rem;border:1px solid var(--color-border);border-radius:var(--radius-sm);background-color:var(--color-surface);color:var(--color-text);outline:none;transition:border-color .15s ease}.form-input:focus,.form-textarea:focus,.form-select:focus{border-color:var(--color-primary);box-shadow:0 0 0 2px var(--color-green-soft)}:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}
