:root{--color-primary:#145c3a;--color-primary-dark:#0d4229;--color-primary-light:#1c7a4d;--color-secondary:#174a78;--color-secondary-dark:#103455;--color-secondary-light:#24629b;--color-accent:#b42332;--color-accent-dark:#8d1a26;--color-background:#f5f7f5;--color-surface:#fff;--color-surface-muted:#eef2ee;--color-overlay:#0f1e148c;--color-text:#202b25;--color-text-muted:#66736b;--color-text-inverse:#fff;--color-text-link:var(--color-primary);--color-text-link-hover:var(--color-primary-dark);--color-border:#dce4de;--color-border-strong:#b8c4bb;--color-focus:#174a78;--color-success:#145c3a;--color-warning:#8a6d1a;--color-error:#b42332;--font-heading:var(--font-manrope), system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-body:var(--font-inter), system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--container-width:1320px;--container-narrow:760px;--container-padding:var(--space-4);--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-6:24px;--space-8:32px;--space-12:48px;--space-16:64px;--space-24:96px;--radius-sm:8px;--radius-md:12px;--radius-lg:18px;--radius-pill:999px;--shadow-card:0 8px 28px #14281c12;--shadow-card-hover:0 12px 36px #14281c1f;--shadow-header:0 2px 12px #14281c0f;--transition-fast:.12s ease;--transition-base:.2s ease;--transition-slow:.32s ease;--bp-mobile-small:360px;--bp-mobile:390px;--bp-tablet:768px;--bp-desktop:1024px;--bp-desktop-large:1440px}@media (prefers-reduced-motion:reduce){:root{--transition-fast:0s;--transition-base:0s;--transition-slow:0s}}
*,:before,:after{box-sizing:border-box}html{-moz-text-size-adjust:100%;text-size-adjust:100%;scroll-behavior:smooth}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body,h1,h2,h3,h4,h5,h6,p,figure,blockquote,dl,dd,ol,ul,fieldset,legend{margin:0;padding:0}ol,ul{list-style:none}img,picture,svg,video,canvas{max-width:100%;height:auto;display:block}button,input,select,textarea{font:inherit;color:inherit;background:0 0;border:none;margin:0;padding:0}button{cursor:pointer;text-align:inherit}button:disabled{cursor:not-allowed}a{color:inherit;text-decoration:none}table{border-collapse:collapse;border-spacing:0}hr{background-color:var(--color-border);border:0;height:1px}:focus{outline:none}:focus-visible{outline:2px solid var(--color-focus);outline-offset:3px;border-radius:4px}html,body{overflow-x:hidden}
body{font-family:var(--font-body);color:var(--color-text);background-color:var(--color-background);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;font-size:1rem;font-weight:400;line-height:1.5}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);color:var(--color-text);letter-spacing:-.01em;font-weight:700;line-height:1.2}h1{font-size:clamp(2.25rem,4.2vw,4.5rem);font-weight:800;line-height:1.1}h2{font-size:clamp(1.75rem,2.8vw,2.5rem);font-weight:700;line-height:1.15}h3{font-size:clamp(1.35rem,1.8vw,1.75rem);font-weight:700;line-height:1.25}h4{font-size:clamp(1.15rem,1.4vw,1.35rem);font-weight:700;line-height:1.3}h5{font-size:1.05rem;font-weight:600;line-height:1.35}h6{letter-spacing:.02em;font-size:.95rem;font-weight:600;line-height:1.4}p{margin-bottom:var(--space-4);line-height:1.65}p:last-child{margin-bottom:0}a{color:var(--color-text-link);text-underline-offset:3px;transition:color var(--transition-fast);text-decoration:underline;text-decoration-thickness:1px}a:hover{color:var(--color-text-link-hover);text-decoration-thickness:2px}a.no-underline{text-decoration:none}small{color:var(--color-text-muted);font-size:.85rem}strong,b{color:var(--color-text);font-weight:600}em,i{font-style:italic}.prose ul,.prose ol{margin:var(--space-4) 0;padding-left:var(--space-6)}.prose ul{list-style:outside}.prose ol{list-style:decimal}.prose li{margin-bottom:var(--space-2);line-height:1.6}blockquote{font-family:var(--font-heading);color:var(--color-text);padding-left:var(--space-6);border-left:3px solid var(--color-primary);margin:var(--space-6) 0;font-size:1.15rem;font-weight:500;line-height:1.5}code,pre{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.9em}::selection{color:var(--color-text);background-color:#145c3a33}
.visuallyHidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skipLink{top:var(--space-2);left:var(--space-2);padding:var(--space-3) var(--space-4);background-color:var(--color-primary);color:var(--color-text-inverse);border-radius:var(--radius-sm);z-index:1000;transition:transform var(--transition-base);font-weight:600;position:absolute;transform:translateY(-200%)}.skipLink:focus-visible{outline:2px solid var(--color-text-inverse);outline-offset:2px;transform:translateY(0)}.container{width:100%;max-width:var(--container-width);padding-inline:var(--space-4);margin-inline:auto}@media (min-width:768px){.container{padding-inline:var(--space-6)}}@media (min-width:1024px){.container{padding-inline:var(--space-8)}}.containerNarrow{width:100%;max-width:var(--container-narrow);padding-inline:var(--space-4);margin-inline:auto}.section{padding-block:var(--space-12)}@media (min-width:768px){.section{padding-block:var(--space-16)}}@media (min-width:1024px){.section{padding-block:var(--space-24)}}.sectionCompact{padding-block:var(--space-8)}@media (min-width:768px){.sectionCompact{padding-block:var(--space-12)}}.textCenter{text-align:center}.measure{max-width:65ch}.measureNarrow{max-width:55ch}.surface{background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md)}.surfaceMuted{background-color:var(--color-surface-muted);border-radius:var(--radius-md)}.mt-0{margin-top:0}.mt-2{margin-top:var(--space-2)}.mt-4{margin-top:var(--space-4)}.mt-6{margin-top:var(--space-6)}.mt-8{margin-top:var(--space-8)}.mb-0{margin-bottom:0}.mb-2{margin-bottom:var(--space-2)}.mb-4{margin-bottom:var(--space-4)}.mb-6{margin-bottom:var(--space-6)}.mb-8{margin-bottom:var(--space-8)}
@keyframes fadeInUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes spin{to{transform:rotate(360deg)}}.fadeInUp{animation:fadeInUp var(--transition-slow) ease-out both}.fadeIn{animation:fadeIn var(--transition-slow) ease-out both}.spin{animation:.9s linear infinite spin}@media (prefers-reduced-motion:reduce){.fadeInUp,.fadeIn,.spin{animation:none}}
html{height:100%}body{flex-direction:column;min-height:100%;display:flex}main{flex:1}html,body{overflow-x:hidden}img{shape-margin:1rem;background-repeat:no-repeat;background-size:cover;font-style:italic}@media (max-width:768px){input,select,textarea{font-size:16px}}
