/* Home Watch Tulum — generated from tokens.json by build.py */
@font-face{font-family:"Fraunces";src:url("/assets/fonts/fraunces-latin-300-normal.woff2") format("woff2");font-weight:300;font-style:normal;font-display:swap}
@font-face{font-family:"Fraunces";src:url("/assets/fonts/fraunces-latin-300-italic.woff2") format("woff2");font-weight:300;font-style:italic;font-display:swap}
@font-face{font-family:"Fraunces";src:url("/assets/fonts/fraunces-latin-400-normal.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"DM Sans";src:url("/assets/fonts/dm-sans-latin-400-normal.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"DM Sans";src:url("/assets/fonts/dm-sans-latin-500-normal.woff2") format("woff2");font-weight:500;font-style:normal;font-display:swap}
:root{
  --color-brand-primary: #483349;
  --color-brand-secondary: #9A8A9A;
  --color-brand-accent: #B08D57;
  --color-brand-accent-deep: #8A6C3F;
  --color-brand-ink: #22262A;
  --color-bg-page: #F4EFE6;
  --color-bg-raised: #FBF8F2;
  --color-bg-surface: #FFFFFF;
  --color-bg-sunken: #EEE7DC;
  --color-bg-inverse: #483349;
  --color-bg-inverse-strong: #22262A;
  --color-bg-photo-placeholder: #9A8A9A;
  --color-text-primary: #22262A;
  --color-text-heading: #483349;
  --color-text-secondary: #4A4E52;
  --color-text-label: #6E5F6E;
  --color-text-inverse: #F4EFE6;
  --color-text-inverse-muted: #CFC4CF;
  --color-text-on-accent: #22262A;
  --color-text-link: #483349;
  --color-border-subtle: #E8E0D4;
  --color-border-default: #E2D9CC;
  --color-border-strong: #DDD3C6;
  --color-border-input: #6E5F6E;
  --color-border-accent: #B08D57;
  --color-border-inverse: rgba(244, 239, 230, 0.18);
  --color-action-primary-bg: #483349;
  --color-action-primary-bg-hover: #22262A;
  --color-action-primary-bg-active: #22262A;
  --color-action-primary-fg: #F4EFE6;
  --color-action-secondary-fg: #483349;
  --color-action-secondary-bg-hover: #EEE7DC;
  --color-action-secondary-border-hover: #483349;
  --color-action-secondary-bg-active: #E2D9CC;
  --color-action-text-fg-hover: #22262A;
  --color-action-disabled-bg: #EEE7DC;
  --color-action-disabled-fg: #9A8A9A;
  --color-action-disabled-border: #E2D9CC;
  --color-action-selected: #B08D57;
  --color-focus-ring: #483349;
  --color-focus-ring-inverse: #F4EFE6;
  --color-status-ok: #3E7D5A;
  --color-status-ok-fg: #FFFFFF;
  --color-status-watch: #C9A227;
  --color-status-watch-fg: #22262A;
  --color-status-soon-fg: #22262A;
  --color-status-soon: #D97B2B;
  --color-status-urgent: #B23A2E;
  --color-status-urgent-fg: #FFFFFF;
  --color-feedback-error: #B23A2E;
  --color-feedback-success: #3E7D5A;
  --font-serif: "Fraunces", Georgia, serif;
  --font-sans: "DM Sans", system-ui, sans-serif;
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-5: 20px;
  --space-6: 24px;
  --space-8: 32px;
  --space-10: 40px;
  --space-12: 48px;
  --space-14: 56px;
  --space-18: 72px;
  --space-24: 96px;
  --radius-none: 0;
  --radius-sm: 3px;
  --radius-md: 4px;
  --radius-pill: 999px;
  --radius-circle: 50%;
  --shadow-none: none;
  --shadow-sm: 0 1px 2px rgba(34, 38, 42, 0.06);
  --shadow-md: 0 6px 20px rgba(34, 38, 42, 0.08);
  --shadow-float: 0 8px 24px rgba(34, 38, 42, 0.18);
  --shadow-pressed: inset 0 0 0 1px #B08D57;
  --border-hairline: 1px;
  --border-medium: 1.5px;
  --border-focus: 2px;
  --border-focus-offset: 2px;
  --stroke-icon-24: 1.25px;
  --stroke-icon-16: 1.5px;
  --bp-tablet: 600px;
  --bp-desktop: 1024px;
  --bp-wide: 1344px;
  --grid-columns-mobile: 4;
  --grid-margin-mobile: 20px;
  --grid-gutter-mobile: 16px;
  --grid-columns-tablet: 8;
  --grid-margin-tablet: 32px;
  --grid-gutter-tablet: 24px;
  --grid-columns-desktop: 12;
  --grid-margin-desktop: 72px;
  --grid-gutter-desktop: 24px;
  --container-max: 1200px;
  --measure-text: 640px;
  --size-touch-min: 44px;
  --size-control: 48px;
  --size-checkbox: 20px;
  --size-nav-mobile: 64px;
  --size-nav-desktop: 72px;
  --size-whatsapp: 56px;
  --size-icon-sm: 16px;
  --size-icon-md: 24px;
  --size-icon-lg: 32px;
  --z-nav: 50;
  --z-float: 60;
}
