@import url("https://fonts.googleapis.com/css2?family=Merriweather:wght@400;700&family=Oswald:wght@300;400;500;600&display=swap");

:root {
    /* Brand palette sampled from sabinoexecutivesuites.com */
    --sabino-copper-700: #753e26;
    --sabino-copper-600: #89390e;
    --sabino-copper-500: #a95834;
    --sabino-copper-400: #c9855f;
    --sabino-sand-600: #c5b18b;
    --sabino-sand-500: #dab585;
    --sabino-sand-400: #edcda3;
    --sabino-sand-300: #f1e9d7;
    --sabino-sand-200: #f8f2e5;
    --sabino-sand-100: #fffaef;
    --sabino-espresso-700: #221a10;
    --sabino-espresso-600: #382e1c;
    --sabino-ink-500: #333333;
    --sabino-muted-400: #d4cdbd;
    --sabino-white: #ffffff;

    /* Typography */
    --app-font-body: "Merriweather", "Georgia", serif;
    --app-font-display: "Oswald", "Arial Narrow", sans-serif;

    /* App design-system aliases (used by templates) */
    --app-background: var(--sabino-sand-100);
    --app-surface: var(--sabino-sand-100);
    --app-surface-container: var(--sabino-sand-200);
    --app-surface-container-high: var(--sabino-sand-300);
    --app-surface-container-highest: #e2dccf;
    --app-surface-container-low: #fff7e9;
    --app-surface-container-lowest: var(--sabino-white);
    --app-surface-dim: var(--sabino-muted-400);
    --app-primary-container: var(--sabino-espresso-700);
    --app-surface-tint: var(--sabino-copper-500);
    --app-on-primary-container: var(--sabino-copper-400);
    --app-secondary-container: var(--sabino-sand-400);
    --app-error-container: #f7d0c2;
    --app-on-surface: var(--sabino-ink-500);
    --app-on-surface-variant: #5b4f3d;
    --app-outline: var(--sabino-sand-600);
    --app-outline-soft: rgba(197, 177, 139, 0.35);
    --app-shadow-soft: 0 8px 32px rgba(34, 26, 16, 0.16);
}

[data-bs-theme="light"] {
    /* Bootstrap v5.3 semantic colors */
    --bs-body-bg: var(--sabino-sand-100);
    --bs-body-bg-rgb: 255, 250, 239;
    --bs-body-color: var(--sabino-ink-500);
    --bs-body-color-rgb: 51, 51, 51;
    --bs-emphasis-color: var(--sabino-espresso-700);
    --bs-emphasis-color-rgb: 34, 26, 16;
    --bs-secondary-color: rgba(51, 51, 51, 0.78);
    --bs-secondary-color-rgb: 51, 51, 51;
    --bs-secondary-bg: var(--sabino-sand-200);
    --bs-secondary-bg-rgb: 248, 242, 229;
    --bs-tertiary-bg: var(--sabino-sand-300);
    --bs-tertiary-bg-rgb: 241, 233, 215;
    --bs-border-color: rgba(197, 177, 139, 0.45);
    --bs-border-color-translucent: rgba(56, 46, 28, 0.18);
    --bs-link-color: var(--sabino-espresso-600);
    --bs-link-color-rgb: 56, 46, 28;
    --bs-link-hover-color: var(--sabino-copper-500);
    --bs-link-hover-color-rgb: 169, 88, 52;
    --bs-focus-ring-color: rgba(169, 88, 52, 0.25);

    --bs-primary: var(--sabino-copper-500);
    --bs-primary-rgb: 169, 88, 52;
    --bs-primary-text-emphasis: #5c2f1d;
    --bs-primary-bg-subtle: #f0ddd4;
    --bs-primary-border-subtle: #d7a892;

    --bs-secondary: var(--sabino-espresso-600);
    --bs-secondary-rgb: 56, 46, 28;
    --bs-secondary-text-emphasis: #211a10;
    --bs-secondary-bg-subtle: #e8e1d5;
    --bs-secondary-border-subtle: #c5b8a2;

    --bs-success: #6d7b52;
    --bs-success-rgb: 109, 123, 82;
    --bs-success-text-emphasis: #2d3b1b;
    --bs-success-bg-subtle: #e5eadc;
    --bs-success-border-subtle: #bfd0ab;

    --bs-info: #529cbc;
    --bs-info-rgb: 82, 156, 188;
    --bs-info-text-emphasis: #1f4a5c;
    --bs-info-bg-subtle: #d8eaf2;
    --bs-info-border-subtle: #a3cddd;

    --bs-warning: #c29d65;
    --bs-warning-rgb: 194, 157, 101;
    --bs-warning-text-emphasis: #604521;
    --bs-warning-bg-subtle: #f4ead9;
    --bs-warning-border-subtle: #e2cca7;

    --bs-danger: var(--sabino-copper-600);
    --bs-danger-rgb: 137, 57, 14;
    --bs-danger-text-emphasis: #4b1d07;
    --bs-danger-bg-subtle: #f1ddd2;
    --bs-danger-border-subtle: #d4a081;

    --bs-light: var(--sabino-sand-100);
    --bs-light-rgb: 255, 250, 239;
    --bs-light-text-emphasis: #5b4f3d;
    --bs-light-bg-subtle: #fffdf7;
    --bs-light-border-subtle: var(--sabino-sand-300);

    --bs-dark: var(--sabino-espresso-700);
    --bs-dark-rgb: 34, 26, 16;
    --bs-dark-text-emphasis: var(--sabino-espresso-700);
    --bs-dark-bg-subtle: #e8e1d5;
    --bs-dark-border-subtle: var(--sabino-sand-600);
}
