:root{--font-heading:"Inter", Arial, sans-serif;--font-body:"Inter", Arial, sans-serif;--color-background:#fff;--color-surface:#f7f7f7;--color-text:#161616;--color-text-muted:#666;--color-primary:#222;--color-primary-contrast:#fff;--color-secondary:#ededed;--color-border:#ddd;--color-header-background:#fff;--color-footer-background:#111;--color-footer-text:#fff;--color-media-text:#fff;--color-media-text-muted:#e5e5e5;--color-media-overlay:#000;--shadow-soft:0 18px 60px #00000014;--radius-sm:.55rem;--radius-md:.9rem;--radius-lg:1.35rem;--container:1240px}*{box-sizing:border-box}html{min-width:320px}body{background:var(--color-background);min-height:100vh;color:var(--color-text);font-family:var(--font-body);text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;margin:0;font-size:.975rem;line-height:1.68}button,input,textarea,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}img,svg{max-width:100%;display:block}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:var(--font-heading);letter-spacing:-.045em;line-height:1.04}:focus-visible{outline:3px solid color-mix(in srgb, var(--color-primary) 55%, transparent);outline-offset:3px}.container{width:min(calc(100% - clamp(2rem, 7vw, 7rem)), var(--container));margin-inline:auto}.public-site{--control-size:2.75rem;--control-radius:.4rem;--type-display:clamp(2.35rem, 3.5vw, 3.5rem);--type-section:clamp(1.9rem, 2.7vw, 2.7rem);--type-content-heading:clamp(1.72rem, 2.2vw, 2.3rem);--type-subheading:clamp(1.3rem, 1.7vw, 1.7rem);--type-lead:clamp(1.08rem, .35vw + 1rem, 1.2rem);--type-body:clamp(1rem, .18vw + .96rem, 1.07rem);--type-supporting:clamp(.88rem, .12vw + .86rem, .94rem);--type-eyebrow:clamp(.64rem, .08vw + .63rem, .69rem);--leading-body:1.76;--leading-supporting:1.68;--home-hero-title-size:clamp(3.3rem, 6.35vw, 6.35rem);--home-section-title-size:clamp(2.2rem, 3.15vw, 3.35rem);--home-display-title-size:clamp(2.55rem, 3.75vw, 3.9rem);--home-cta-title-size:clamp(2.55rem, 4.4vw, 4.5rem);--home-body-size:clamp(1rem, .24vw + .96rem, 1.1rem);--home-supporting-size:clamp(.89rem, .16vw + .86rem, .97rem);--home-card-title-size:clamp(1.04rem, .3vw + .99rem, 1.18rem);--home-card-supporting-size:clamp(.86rem, .16vw + .83rem, .94rem);--home-eyebrow-size:clamp(.66rem, .1vw + .64rem, .72rem);--home-body-leading:1.72;--home-supporting-leading:1.64;--space-section:clamp(4.5rem, 6.5vw, 6.5rem);--space-group:clamp(2.5rem, 4vw, 4rem);--space-component:clamp(1rem, 2vw, 1.75rem);--color-body-text:color-mix(in srgb, var(--color-text) 88%, var(--color-text-muted));--inner-title-size:var(--type-display);--inner-subtitle-size:var(--type-supporting);--inner-lead-size:clamp(1.08rem, .4vw + 1rem, 1.22rem);--inner-body-size:var(--type-body);--inner-supporting-size:var(--type-supporting);--inner-label-size:var(--type-eyebrow);--inner-h2-size:clamp(1.7rem, 2.15vw, 2.3rem);--inner-h3-size:clamp(1.28rem, 1.6vw, 1.65rem);--inner-body-leading:1.76;--inner-lead-leading:1.68;--inner-supporting-leading:1.65;--inner-heading-color:var(--color-text);--inner-body-color:var(--color-body-text);--inner-muted-color:var(--color-text-muted);background:var(--color-background);color:var(--color-text)}.public-site .button{min-height:var(--control-size);border-radius:var(--control-radius)}.editorial-link{width:fit-content;color:inherit;background:0 0;border:0;align-items:center;gap:.45rem;padding:0;transition:opacity .18s;display:inline-flex}.editorial-link>span{text-decoration:underline;-webkit-text-decoration-color:color-mix(in srgb, currentColor 45%, transparent);text-decoration-color:color-mix(in srgb, currentColor 45%, transparent);text-underline-offset:.28em;text-decoration-thickness:1px}.editorial-link:after{content:"↗";opacity:.65;font-size:.9em;font-weight:500;line-height:1;transition:transform .18s}.editorial-link:hover{opacity:.68}.editorial-link:hover:after{transform:translate(.12rem,-.12rem)}.skip-link{z-index:999;border-radius:var(--radius-sm);background:var(--color-primary);color:var(--color-primary-contrast);padding:.75rem 1rem;position:fixed;top:.75rem;left:.75rem;transform:translateY(-180%)}.skip-link:focus{transform:translateY(0)}.button{background:var(--color-primary);min-height:2.9rem;color:var(--color-primary-contrast);cursor:pointer;letter-spacing:.055em;text-transform:uppercase;border:1px solid #0000;border-radius:.2rem;justify-content:center;align-items:center;gap:.65rem;padding:.72rem 1.1rem;font-size:.76rem;font-weight:760;line-height:1;transition:border-color .26s,background-color .26s,color .26s,opacity .26s;display:inline-flex}.button:hover{background:color-mix(in srgb, var(--color-primary) 86%, var(--color-background))}.button:disabled{cursor:wait;opacity:.65}.button-secondary{border-color:var(--color-border);background:var(--color-background);color:var(--color-text)}.button-secondary:hover{border-color:var(--color-text);background:var(--color-background)}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.error-page{align-content:center;justify-items:start;gap:.8rem;min-height:70vh;padding-block:clamp(4rem,12vw,8rem);display:grid}.error-page h1,.error-page p{margin-bottom:0}.error-code{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.08em;font-weight:800}.error-actions{flex-wrap:wrap;gap:.75rem;margin-top:.5rem;display:flex}.admin-error-panel{color:#631f1f;background:#fff7f7;border:1px solid #e0b2b2;border-radius:1rem;max-width:760px;padding:clamp(1.25rem,4vw,2rem)}.admin-error-panel h1{margin-bottom:.5rem}.admin-error-panel p:first-child{color:#9c3b3b;text-transform:uppercase;letter-spacing:.06em;font-weight:800}@media (max-width:600px){.public-site{--inner-title-size:clamp(2.2rem, 11vw, 3.4rem);--inner-h2-size:clamp(1.55rem, 7vw, 2rem);--inner-h3-size:clamp(1.22rem, 5.4vw, 1.5rem);--inner-body-size:1rem;--inner-lead-size:clamp(1.06rem, 3.8vw, 1.16rem)}}@media (max-width:480px){.container{width:min(calc(100% - 1.5rem), var(--container))}.button{min-height:2.75rem}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
