:root {
    /* --- Brand Colors --- */
    --rk-color-gold: #f7a81b;
    --rotary-gold: #f7a81b;
    --rotary-blue: #17458f;
    --rk-color-azure: #0067c8;
    --rk-color-sky-blue: #00a2e0;
    /* --- Grays / Neutrals --- */
    --section-grey: #f1f3f5;
    --rk-color-blue-black: #0e1b2f;
    --rk-color-charcoal: #54565a;
    --rk-color-pewter: #898a8d;
    --rk-color-smoke: #b1b1b1;
    --rk-color-silver: #d0cfcd;
    --rk-color-subtle-grey: #f0f2f7;
    --rk-color-white: #ffffff;
    /* --- Semantic --- */
    --rk-color-error: #e02927;
    --rk-color-success: #009739;
    /* --- Typography Families --- */
    --rk-font-display: "Plus Jakarta Sans", "Open Sans", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
    --rk-font-body: "Open Sans", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
    --rk-font-condensed: "Open Sans Condensed", "Open Sans", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
    --font-sans: var(--rk-font-body);
    /* --- Typography Settings --- */
    --rotary-blue-bg-nav-scrolled: rgba(10, 25, 47, 0.95);
    /* Desktop Scale */
    --rk-heading-xxl-desktop-size: 6rem;
    --rk-heading-xxl-desktop-line-height: 1.05;
    --rk-heading-xxl-desktop-letter-spacing: -1px;
    --rk-heading-xl-desktop-size: 3rem;
    --rk-heading-xl-desktop-line-height: 1.2;
    --rk-heading-xl-desktop-letter-spacing: -1px;
    --rk-heading-l-desktop-size: 2.5rem;
    --rk-heading-l-desktop-line-height: 1.25;
    --rk-heading-l-desktop-letter-spacing: 0;
    --rk-heading-m-desktop-size: 2rem;
    --rk-heading-m-desktop-line-height: 1.1;
    --rk-heading-m-desktop-letter-spacing: -0.75px;
    --rk-heading-s-desktop-size: 1.75rem;
    --rk-heading-s-desktop-line-height: 1.3;
    --rk-heading-s-desktop-letter-spacing: 1px;
    /* Mobile Scale */
    --rk-heading-xxl-mobile-size: 2.75rem;
    --rk-heading-xxl-mobile-line-height: 50px;
    --rk-heading-xxl-mobile-letter-spacing: -1px;
    --rk-heading-xl-mobile-size: 2rem;
    --rk-heading-xl-mobile-line-height: normal;
    --rk-heading-xl-mobile-letter-spacing: -1px;
    --rk-heading-l-mobile-size: 1.75rem;
    --rk-heading-l-mobile-line-height: normal;
    --rk-heading-l-mobile-letter-spacing: 0;
    --rk-heading-m-mobile-size: 1.5rem;
    --rk-heading-m-mobile-line-height: normal;
    --rk-heading-m-mobile-letter-spacing: -0.75px;
    --rk-heading-s-mobile-size: 1.375rem;
    --rk-heading-s-mobile-line-height: 1.3;
    --rk-heading-s-mobile-letter-spacing: 1px;
    /* Body Scale */
    --rk-body-large-size: 1.125rem;
    --rk-body-large-line-height: 1.45;
    --rk-body-large-letter-spacing: 0;
    --rk-body-regular-size: 1rem;
    --rk-body-regular-line-height: 1.5;
    --rk-body-regular-letter-spacing: 0;
    --rk-display-size: 5rem;
    --rk-display-line-height: 1.05;
    --rk-display-letter-spacing: -1px;
    --rk-action-size: 1.125rem;
    --rk-action-line-height: 1.1;
    --rk-action-letter-spacing: 1px;
    /* Weights */
    --rk-font-weight-light: 300;
    --rk-font-weight-regular: 400;
    --rk-font-weight-medium: 500;
    --rk-font-weight-bold: 700;
    --rk-font-weight-extrabold: 800;
    /* --- Alpha Colors --- */
    --rk-color-blue-black-a04: rgba(14, 27, 47, 0.04);
    --rk-color-blue-black-a10: rgba(14, 27, 47, 0.10);
    --rk-color-blue-black-a18: rgba(14, 27, 47, 0.18);
    --rk-color-blue-black-a30: rgba(14, 27, 47, 0.30);
    --rk-color-blue-black-a60: rgba(14, 27, 47, 0.60);
    --rk-color-blue-black-a75: rgba(14, 27, 47, 0.75);
    --rk-color-blue-black-a78: rgba(14, 27, 47, 0.78);
    --rk-color-blue-black-a90: rgba(14, 27, 47, 0.90);
    --rk-color-white-a10: rgba(255, 255, 255, 0.10);
    --rk-color-white-a15: rgba(255, 255, 255, 0.15);
    --rk-color-white-a50: rgba(255, 255, 255, 0.50);
    --rk-color-white-a60: rgba(255, 255, 255, 0.60);
    --rk-color-white-a90: rgba(255, 255, 255, 0.90);
    --rk-color-gold-a35: rgba(247, 168, 27, 0.35);
    /* --- Spacing --- */
    --section-spacing: 80px;
    --section-spacing-reverse: -80px;
    --section-desktop-padding-x: 215px;
}

html, body {
    font-family: var(--font-sans);
}

body {
    font-family: var(--font-sans) !important;
}

strong, b {
    font-weight: var(--rk-font-weight-bold);
    color: var(--rk-color-blue-black);
}

/* --- Utilities --- */
.section-wrapper {
    overflow: hidden;
}

.bg-grey {
    background-color: var(--section-grey);
}

.py-section {
    padding-top: var(--section-spacing);
    padding-bottom: var(--section-spacing);
}

.pb-section {
    padding-bottom: var(--section-spacing);
}

#blazor-error-ui {
    display: none !important;
}
