@import "https://fonts.googleapis.com/css2?family=Source+Sans+Pro:wght@400;600;700&display=swap";
:root{--color-primary:#d52349;--color-primary-hover:#b01b3a;--color-secondary:#252122;--color-text:#444;--color-text-light:#777;--color-bg:#f4f4f4;--color-white:#fff;--color-border:#ddd;--color-success:#2e7d4f;--color-success-bg:#e6f4ec;--color-warning:#b8860b;--color-warning-bg:#fcf3e0;--color-danger:#d52349;--color-danger-bg:#fde8ec;--color-info:#3a7ca5;--color-info-bg:#e7f1f6;--font-family-base:"Source Sans Pro", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-size-base:1.1rem;--line-height-base:1.6;--spacing-sm:.5rem;--spacing-md:1rem;--spacing-lg:2rem;--spacing-xl:4rem;--container-width:1200px;--sidebar-width:260px;--header-height:72px;--border-radius:8px;--border-radius-sm:4px;--shadow-sm:0 1px 2px hsla(var(--shadow-color), .06), 0 2px 4px hsla(var(--shadow-color), .08);--shadow-md:0 2px 4px hsla(var(--shadow-color), .06), 0 6px 12px hsla(var(--shadow-color), .1);--shadow-lg:0 8px 16px hsla(var(--shadow-color), .1), 0 16px 32px hsla(var(--shadow-color), .12);--transition-base:all .3s ease;--focus-ring:2px solid var(--color-primary);--focus-offset:2px;--color-primary-rgb:213, 35, 49;--color-primary-soft:#fbe9ed;--color-primary-tint:#d5234914;--color-primary-strong:#9a1733;--color-neutral-0:#fff;--color-neutral-50:#fafafa;--color-neutral-100:#f4f4f4;--color-neutral-200:#ececec;--color-neutral-300:#ddd;--color-neutral-400:#c4c4c4;--color-neutral-500:#9a9a9a;--color-neutral-600:#777;--color-neutral-700:#555;--color-neutral-800:#444;--color-neutral-900:#252122;--surface-page:var(--color-bg);--surface-card:var(--color-white);--surface-raised:var(--color-neutral-50);--surface-sunken:var(--color-neutral-100);--surface-overlay:#2521228c;--border-subtle:var(--color-neutral-200);--border-default:var(--color-border);--border-strong:var(--color-neutral-400);--color-success-border:#bfe3cd;--color-warning-border:#ecd9a6;--color-danger-border:#f4c2cd;--color-info-border:#c4dceb;--on-primary:#fff;--on-dark:#fff;--on-light:var(--color-text);--fs-2xs:.75rem;--fs-xs:clamp(.78rem, .74rem + .2vw, .85rem);--fs-sm:clamp(.88rem, .85rem + .2vw, .95rem);--fs-base:clamp(1rem, .96rem + .2vw, 1.1rem);--fs-md:clamp(1.1rem, 1.04rem + .3vw, 1.25rem);--fs-lg:clamp(1.3rem, 1.18rem + .6vw, 1.6rem);--fs-xl:clamp(1.6rem, 1.36rem + 1.1vw, 2rem);--fs-2xl:clamp(2rem, 1.6rem + 1.8vw, 2.75rem);--lh-tight:1.2;--lh-snug:1.4;--lh-base:1.6;--lh-relaxed:1.75;--fw-regular:400;--fw-semibold:600;--fw-bold:700;--tracking-tight:-.01em;--tracking-wide:.5px;--tracking-wider:1px;--space-0:0;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.5rem;--space-6:2rem;--space-8:3rem;--space-10:4rem;--space-12:6rem;--section-gap:clamp(1.5rem, 1rem + 2vw, 3rem);--container-gutter:clamp(1rem, .5rem + 2vw, 2rem);--measure-form:32rem;--measure-prose:70ch;--content-width:var(--container-width);--radius-xs:4px;--radius-sm:6px;--radius-md:8px;--radius-lg:12px;--radius-xl:16px;--radius-pill:999px;--shadow-color:220, 10%, 15%;--shadow-xs:0 1px 2px hsla(var(--shadow-color), .06);--shadow-xl:0 16px 32px hsla(var(--shadow-color), .12), 0 28px 56px hsla(var(--shadow-color), .16);--shadow-focus:0 0 0 3px rgba(var(--color-primary-rgb), .18);--shadow-inset:inset 0 1px 2px hsla(var(--shadow-color), .06);--elevation-0:none;--elevation-1:var(--shadow-sm);--elevation-2:var(--shadow-md);--elevation-3:var(--shadow-lg);--elevation-4:var(--shadow-xl);--dur-instant:80ms;--dur-fast:.14s;--dur-base:.22s;--dur-slow:.36s;--dur-slower:.52s;--ease-standard:cubic-bezier(.2, 0, 0, 1);--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-in:cubic-bezier(.4, 0, 1, 1);--ease-spring:cubic-bezier(.34, 1.56, .64, 1);--transition-colors:color var(--dur-fast) var(--ease-standard), background-color var(--dur-fast) var(--ease-standard), border-color var(--dur-fast) var(--ease-standard);--transition-transform:transform var(--dur-base) var(--ease-out);--transition-shadow:box-shadow var(--dur-base) var(--ease-standard);--bp-xs:360px;--bp-sm:480px;--bp-md:768px;--bp-lg:992px;--bp-xl:1200px;--bp-2xl:1440px;--z-base:1;--z-sticky:100;--z-header:1000;--z-dropdown:1100;--z-overlay:1200;--z-modal:1300;--z-toast:1400;--focus-ring-color:var(--color-primary);--focus-ring-width:2px}@media (prefers-reduced-motion:reduce){:root{--dur-instant:1ms;--dur-fast:1ms;--dur-base:1ms;--dur-slow:1ms;--dur-slower:1ms}}
*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-moz-text-size-adjust:100%;text-size-adjust:100%}body{font-family:var(--font-family-base);font-size:var(--font-size-base);line-height:var(--line-height-base);color:var(--color-text);background-color:var(--color-bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;min-height:100vh;overflow-x:hidden}a{color:var(--color-primary);transition:color var(--dur-fast,.14s) var(--ease-standard,ease);text-decoration:none}a:hover{color:var(--color-primary-hover)}ul{list-style:none}img,picture,svg,video,canvas{max-width:100%;height:auto;display:block}svg{height:auto}h1,h2,h3,h4,h5,h6{color:var(--color-secondary);font-weight:var(--fw-bold,700);margin-bottom:var(--spacing-md);line-height:var(--lh-tight,1.2);overflow-wrap:break-word}h1{font-size:var(--fs-xl,2rem)}h2{font-size:var(--fs-lg,1.6rem)}h3{font-size:var(--fs-md,1.25rem)}p{margin-bottom:var(--spacing-md);overflow-wrap:break-word}button,input,select,textarea,button{font-family:inherit}:focus-visible{outline:var(--focus-ring);outline-offset:var(--focus-offset)}.container{max-width:var(--container-width);padding-inline:var(--container-gutter,var(--spacing-md));margin:0 auto}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute!important}.stack-sm>*+*{margin-top:var(--spacing-sm)}.stack-md>*+*{margin-top:var(--spacing-md)}.stack-lg>*+*{margin-top:var(--spacing-lg)}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}
