/* Modern House — design tokens (Moonprint-extracted system; Figtree/Fraunces stand in for licensed Fellix/Awesome Serif) */
:root {
  color-scheme: light;
  --color-background: #ffffff;
  --color-foreground: #18181b;
  --color-surface: #d3d3d6;
  --color-surface-hover: #cacace;
  --color-muted: #6b6b6d;
  --color-border: #e4e6ec;
  --color-accent: #c9ae72;
  --color-accent-hover: #c1a15c;
  --color-accent-foreground: #0a0a0a;
  --color-accent-soft: #c9ae7229;
  --color-ring: #c9ae7240;
  --palette-near-white-1: #ffffff;
  --palette-dark-gray-2: #18181b;
  --palette-light-gray-3: #c7c7c7;
  --palette-gray-4: #868789;
  --palette-light-gray-5: #d3d3d6;
  --palette-deep-sky-6: #1b2436;
  --palette-gray-7: #6b6b6d;
  --palette-pale-muted-blue-8: #e4e6ec;
  --palette-light-gray-9: #b5b5b6;
  --palette-dark-gray-10: #464649;
  --palette-orange-11: #c9ae72;
  --palette-pale-orange-12: #f4f0e9;
  --palette-light-muted-orange-13: #ccc2b0;
  --palette-light-gray-14: #a7a7a8;
  --palette-pale-orange-red-15: #e5d9cc;
  --palette-dark-gray-16: #2b2d31;
  --font-sans: Figtree, Inter, -apple-system, BlinkMacSystemFont, "Helvetica Neue", Arial, sans-serif;
  --font-display: Fraunces, "Cormorant Garamond", Georgia, serif;
  --font-mono: "DM Mono", "SF Mono", ui-monospace, Menlo, monospace;
  --text-display-size: 61.92px;
  --text-display-weight: 300;
  --text-display-leading: 73.0656px;
  --text-display-tracking: -1.2384px;
  --text-heading-2-size: 20px;
  --text-heading-2-weight: 600;
  --text-heading-2-leading: 26px;
  --text-heading-2-tracking: 0;
  --text-heading-3-size: 17.28px;
  --text-heading-3-weight: 400;
  --text-heading-3-leading: 27.648px;
  --text-heading-3-tracking: 0;
  --text-heading-3-2-size: 17px;
  --text-heading-3-2-weight: 400;
  --text-heading-3-2-leading: 27.2px;
  --text-heading-3-2-tracking: 0;
  --text-heading-3-3-size: 16px;
  --text-heading-3-3-weight: 400;
  --text-heading-3-3-leading: 26.4px;
  --text-heading-3-3-tracking: 0.16px;
  --text-heading-3-4-size: 16px;
  --text-heading-3-4-weight: 400;
  --text-heading-3-4-leading: 24px;
  --text-heading-3-4-tracking: 0;
  --text-heading-3-5-size: 16px;
  --text-heading-3-5-weight: 400;
  --text-heading-3-5-leading: 26.4px;
  --text-heading-3-5-tracking: 0;
  --text-heading-3-6-size: 16px;
  --text-heading-3-6-weight: 400;
  --text-heading-3-6-leading: 25.6px;
  --text-heading-3-6-tracking: 0;
  --text-heading-3-7-size: 15.84px;
  --text-heading-3-7-weight: 400;
  --text-heading-3-7-leading: 25.344px;
  --text-heading-3-7-tracking: 0;
  --text-heading-3-8-size: 15px;
  --text-heading-3-8-weight: 400;
  --text-heading-3-8-leading: 22.5px;
  --text-heading-3-8-tracking: 0;
  --text-heading-3-9-size: 15px;
  --text-heading-3-9-weight: 600;
  --text-heading-3-9-leading: 18px;
  --text-heading-3-9-tracking: 0;
  --text-heading-3-10-size: 15px;
  --text-heading-3-10-weight: 400;
  --text-heading-3-10-leading: 18px;
  --text-heading-3-10-tracking: 0;
  --text-heading-3-11-size: 15px;
  --text-heading-3-11-weight: 400;
  --text-heading-3-11-leading: 21.75px;
  --text-heading-3-11-tracking: 0;
  --text-label-size: 14px;
  --text-label-weight: 600;
  --text-label-leading: 16.8px;
  --text-label-tracking: 0;
  --text-body-size: 14px;
  --text-body-weight: 400;
  --text-body-leading: 21.7px;
  --text-body-tracking: 0;
  --text-body-2-size: 13px;
  --text-body-2-weight: 400;
  --text-body-2-leading: 19.5px;
  --text-body-2-tracking: 0;
  --text-label-2-size: 13px;
  --text-label-2-weight: 400;
  --text-label-2-leading: 15.6px;
  --text-label-2-tracking: 0;
  --text-small-size: 12px;
  --text-small-weight: 400;
  --text-small-leading: 19.2px;
  --text-small-tracking: 0;
  --space-2: 2px;
  --space-4: 4px;
  --space-6: 6px;
  --space-8: 8px;
  --space-10: 10px;
  --space-12: 12px;
  --space-14: 14px;
  --space-16: 16px;
  --space-18: 18px;
  --space-20: 20px;
  --space-22: 22px;
  --space-24: 24px;
  --space-28: 28px;
  --space-40: 40px;
  --space-52: 52px;
  --space-58: 58px;
  --radius-sm: 2px;
  --radius-md: 6px;
  --radius-lg: 9px;
  --radius-xl: 13.6224px;
  --radius-2xl: 20px;
  --radius-full: 9999px;
  --shadow-sm: rgba(20, 35, 53, 0.2) 0px 16px 40px 0px;
  --shadow-md: rgba(20, 35, 53, 0.18) 0px 16px 40px 0px;
  --shadow-lg: rgba(24, 24, 27, 0.18) 0px 40px 80px 0px;
  --shadow-xl: rgba(20, 35, 53, 0.12) 0px 1px 0px 0px;
  --duration-primary: 1125ms;
  --duration-secondary: 250ms;
  --duration-tertiary: 375ms;
  --duration-quaternary: 1500ms;
  --duration-five: 1250ms;
  --duration-six: 375ms;
  --duration-seven: 250ms;
  --duration-eight: 525ms;
  --duration-instant: 125ms;
  --duration-fast: 200ms;
  --duration-base: 300ms;
  --duration-slow: 500ms;
  --ease-custom-1: cubic-bezier(0.16, 0.84, 0.44, 1);
  --ease-default: ease;
  --ease-material-standard: cubic-bezier(0.4, 0, 0.2, 1);
  --ease-default-2: cubic-bezier(0.32, 0.08, 0.24, 1);
  --ease-material-standard-2: cubic-bezier(0.33, 0, 0.2, 1);
  --ease-out-strong: cubic-bezier(0.23, 1, 0.32, 1);
  --ease-in-out-strong: cubic-bezier(0.77, 0, 0.175, 1);
  --ease-drawer: cubic-bezier(0.32, 0.72, 0, 1);
  --container: 980px;
  --gradient-1: linear-gradient(rgb(255, 255, 255) 0%, rgb(248, 249, 250) 40%);
  --gradient-2: radial-gradient(rgba(12, 14, 18, 0.55) 0%, rgba(12, 14, 18, 0.35) 70%), linear-gradient(rgba(12, 14, 18, 0.2), rgba(12, 14, 18, 0.45));
  --gradient-3: radial-gradient(70% 38% at 50% 84%, oklch(0.76 0.08 82 / 0.6) 0%, oklch(0.58 0.07 72 / 0.3) 40%, rgba(0, 0, 0, 0) 72%), radial-gradient(34% 30% at 16% 74%, oklch(0.66 0.07 70 / 0.35) 0%, rgba(0, 0, 0, 0) 70%), radial-gradient(26% 26% at 80% 26%, oklch(0.82 0.06 85 / 0.3) 0%, rgba(0, 0, 0, 0) 70%), linear-gradient(118deg, rgba(0, 0, 0, 0) 34%, oklch(0.86 0.04 85 / 0.12) 47%, rgba(0, 0, 0, 0) 60%);
}

/* Text style utilities */
.text-display { font-family: var(--font-display); font-size: var(--text-display-size); font-weight: var(--text-display-weight); line-height: var(--text-display-leading); letter-spacing: var(--text-display-tracking); }
.text-heading-2 { font-family: var(--font-display); font-size: var(--text-heading-2-size); font-weight: var(--text-heading-2-weight); line-height: var(--text-heading-2-leading); letter-spacing: var(--text-heading-2-tracking); }
.text-heading-3 { font-family: var(--font-display); font-size: var(--text-heading-3-size); font-weight: var(--text-heading-3-weight); line-height: var(--text-heading-3-leading); letter-spacing: var(--text-heading-3-tracking); }
.text-heading-3-2 { font-family: var(--font-display); font-size: var(--text-heading-3-2-size); font-weight: var(--text-heading-3-2-weight); line-height: var(--text-heading-3-2-leading); letter-spacing: var(--text-heading-3-2-tracking); }
.text-heading-3-3 { font-family: var(--font-display); font-size: var(--text-heading-3-3-size); font-weight: var(--text-heading-3-3-weight); line-height: var(--text-heading-3-3-leading); letter-spacing: var(--text-heading-3-3-tracking); }
.text-heading-3-4 { font-family: var(--font-display); font-size: var(--text-heading-3-4-size); font-weight: var(--text-heading-3-4-weight); line-height: var(--text-heading-3-4-leading); letter-spacing: var(--text-heading-3-4-tracking); }
.text-heading-3-5 { font-family: var(--font-display); font-size: var(--text-heading-3-5-size); font-weight: var(--text-heading-3-5-weight); line-height: var(--text-heading-3-5-leading); letter-spacing: var(--text-heading-3-5-tracking); }
.text-heading-3-6 { font-family: var(--font-display); font-size: var(--text-heading-3-6-size); font-weight: var(--text-heading-3-6-weight); line-height: var(--text-heading-3-6-leading); letter-spacing: var(--text-heading-3-6-tracking); }
.text-heading-3-7 { font-family: var(--font-display); font-size: var(--text-heading-3-7-size); font-weight: var(--text-heading-3-7-weight); line-height: var(--text-heading-3-7-leading); letter-spacing: var(--text-heading-3-7-tracking); }
.text-heading-3-8 { font-family: var(--font-display); font-size: var(--text-heading-3-8-size); font-weight: var(--text-heading-3-8-weight); line-height: var(--text-heading-3-8-leading); letter-spacing: var(--text-heading-3-8-tracking); }
.text-heading-3-9 { font-family: var(--font-display); font-size: var(--text-heading-3-9-size); font-weight: var(--text-heading-3-9-weight); line-height: var(--text-heading-3-9-leading); letter-spacing: var(--text-heading-3-9-tracking); }
.text-heading-3-10 { font-family: var(--font-display); font-size: var(--text-heading-3-10-size); font-weight: var(--text-heading-3-10-weight); line-height: var(--text-heading-3-10-leading); letter-spacing: var(--text-heading-3-10-tracking); }
.text-heading-3-11 { font-family: var(--font-display); font-size: var(--text-heading-3-11-size); font-weight: var(--text-heading-3-11-weight); line-height: var(--text-heading-3-11-leading); letter-spacing: var(--text-heading-3-11-tracking); }
.text-label { font-family: var(--font-sans); font-size: var(--text-label-size); font-weight: var(--text-label-weight); line-height: var(--text-label-leading); letter-spacing: var(--text-label-tracking); }
.text-body { font-family: var(--font-sans); font-size: var(--text-body-size); font-weight: var(--text-body-weight); line-height: var(--text-body-leading); letter-spacing: var(--text-body-tracking); }
.text-body-2 { font-family: var(--font-sans); font-size: var(--text-body-2-size); font-weight: var(--text-body-2-weight); line-height: var(--text-body-2-leading); letter-spacing: var(--text-body-2-tracking); }
.text-label-2 { font-family: var(--font-sans); font-size: var(--text-label-2-size); font-weight: var(--text-label-2-weight); line-height: var(--text-label-2-leading); letter-spacing: var(--text-label-2-tracking); }
.text-small { font-family: var(--font-sans); font-size: var(--text-small-size); font-weight: var(--text-small-weight); line-height: var(--text-small-leading); letter-spacing: var(--text-small-tracking); }
