:root{--color-primary: #A3195B;--color-primary-hover: #861349;--color-primary-light: #F7E8EF;--color-primary-subtle: #FCF6F9;--color-dark: #18202B;--color-text: #4B5563;--color-text-muted: #737D8C;--color-border: #E2E5E9;--color-white: #FFFFFF;--color-bg-secondary: #F6F7F8;--color-bg-dark: #171A20;--font-family-base: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji";--fs-h1: clamp(2.25rem, 1.5rem + 3vw, 3.5rem);--fs-h2: clamp(1.75rem, 1.35rem + 1.6vw, 2.5rem);--fs-h3: clamp(1.375rem, 1.2rem + .8vw, 1.75rem);--fs-h4: clamp(1.125rem, 1.05rem + .4vw, 1.375rem);--fs-body: 1rem;--fs-small: .875rem;--fs-eyebrow: .8125rem;--lh-heading: 1.15;--lh-body: 1.6;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-full: 999px;--shadow-sm: 0 1px 2px rgba(24, 32, 43, .06);--shadow-md: 0 4px 16px rgba(24, 32, 43, .08);--shadow-lg: 0 12px 32px rgba(24, 32, 43, .1);--transition-fast: .15s ease;--transition-base: .25s ease;--container-max-width: 1280px;--container-padding: clamp(1.25rem, 5vw, 3rem);--section-spacing-y: clamp(3rem, 6vw, 6rem);--section-spacing-y-small: clamp(2rem, 4vw, 3.5rem)}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;font-family:var(--font-family-base);background-color:var(--color-white);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,p,figure,blockquote,dl,dd{margin:0}ul,ol{margin:0;padding:0;list-style:none}img,picture,svg,video{display:block;max-width:100%;height:auto}button,input,textarea,select{font:inherit;color:inherit}button{cursor:pointer;background:none;border:none;padding:0}body,p{font-size:var(--fs-body);color:var(--color-text);line-height:var(--lh-body)}h1,h2,h3,h4{color:var(--color-dark);font-weight:700;line-height:var(--lh-heading);letter-spacing:-.02em;margin:0 0 1rem}h1{font-size:var(--fs-h1);letter-spacing:-.03em}h2{font-size:var(--fs-h2)}h3{font-size:var(--fs-h3);font-weight:600}h4{font-size:var(--fs-h4);font-weight:600}p{margin:0 0 1rem}p:last-child{margin-bottom:0}a{color:var(--color-primary);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--color-primary-hover);text-decoration:underline}a:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px;border-radius:var(--radius-sm)}.eyebrow{display:inline-block;font-size:var(--fs-eyebrow);font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--color-primary);margin:0 0 .5rem}.container{width:100%;max-width:var(--container-max-width);margin-inline:auto;padding-inline:var(--container-padding)}.section{padding-block:var(--section-spacing-y)}.section--small{padding-block:var(--section-spacing-y-small)}@keyframes page-fade-in{0%{opacity:0}to{opacity:1}}router-outlet+*{animation:page-fade-in .2s ease-out}@media(prefers-reduced-motion:reduce){router-outlet+*{animation:none}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:3rem;padding:.75rem 1.75rem;border-radius:var(--radius-md);border:1px solid transparent;font-family:var(--font-family-base);font-size:var(--fs-small);font-weight:600;line-height:1;white-space:nowrap;text-decoration:none;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background-color var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast),box-shadow var(--transition-fast)}.btn:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.btn:disabled,.btn.is-disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.btn--primary{background-color:var(--color-primary);border-color:var(--color-primary);color:var(--color-white)}.btn--primary:hover{background-color:var(--color-primary-hover);border-color:var(--color-primary-hover);color:var(--color-white)}.btn--secondary{background-color:var(--color-white);border-color:var(--color-border);color:var(--color-dark)}.btn--secondary:hover{background-color:var(--color-bg-secondary);border-color:var(--color-dark);color:var(--color-dark)}.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}
