/* Housemid — generated from tokens.json */
@font-face { font-family: "Archivo Expanded"; src: url("fonts/ArchivoExpanded-Variable.woff2") format("woff2"); font-weight: 300 800; font-style: normal; font-display: swap; }
@font-face { font-family: "Archivo"; src: url("fonts/Archivo-Variable.woff2") format("woff2"); font-weight: 300 800; font-style: normal; font-display: swap; }
@font-face { font-family: "Archivo Condensed"; src: url("fonts/ArchivoCondensed-Variable.woff2") format("woff2"); font-weight: 300 800; font-style: normal; font-display: swap; }
:root, [data-theme="light"] {
  --hm-azul: #1C3F8C;
  --hm-tinta: #0B0C0F;
  --hm-grafito: #171A21;
  --hm-cielo: #8EAEF0;
  --hm-lino: #F5F4F1;
  --hm-piedra: #8A8780;
  --hm-tinta-900: var(--hm-tinta);
  --hm-tinta-800: #111319;
  --hm-tinta-700: var(--hm-grafito);
  --hm-tinta-600: #20242D;
  --hm-tinta-500: #2B303B;
  --hm-tinta-400: #414755;
  --hm-tinta-300: #7A7F8A;
  --hm-gris-050: #FFFFFF;
  --hm-gris-100: var(--hm-lino);
  --hm-gris-200: #EAE8E3;
  --hm-gris-300: #DEDBD4;
  --hm-gris-400: #C2BEB5;
  --hm-gris-500: var(--hm-piedra);
  --hm-gris-600: #5B5A56;
  --hm-gris-700: #3F3E3A;
  --hm-azul-100: #EEF2FB;
  --hm-azul-300: #BCCDF3;
  --hm-azul-400: #A7BEF2;
  --hm-azul-500: var(--hm-cielo);
  --hm-azul-600: #7396E3;
  --hm-azul-700: var(--hm-azul);
  --hm-azul-800: #152F6B;
  --hm-azul-a12: rgba(142,174,240,.12);
  --hm-azul-a24: rgba(142,174,240,.24);
  --hm-azul-a40: rgba(142,174,240,.40);
  --hm-acento-100: var(--hm-azul-100);
  --hm-acento-300: #BCCDF3;
  --hm-acento-400: #3D5FAE;
  --hm-acento-500: var(--hm-azul);
  --hm-acento-600: var(--hm-azul-800);
  --hm-acento-700: var(--hm-azul);
  --hm-acento-a12: rgba(28,63,140,.08);
  --hm-acento-a24: rgba(28,63,140,.18);
  --hm-acento-a40: rgba(28,63,140,.65);
  --hm-success: #15803D;
  --hm-success-soft: #D3F5DF;
  --hm-success-ink: #0B5A2B;
  --hm-danger: #E11D48;
  --hm-danger-soft: #FFD6DC;
  --hm-danger-ink: #94102A;
  --hm-warning: #E6580C;
  --hm-warning-soft: #FFE7C2;
  --hm-warning-ink: #7A4000;
  --hm-info: #2563EB;
  --hm-info-soft: #D8E6FF;
  --hm-info-ink: #1747A6;
  --hm-chart-1: var(--hm-azul);
  --hm-chart-2: #2E6F73;
  --hm-chart-3: #A8752E;
  --hm-chart-4: #A8564A;
  --hm-chart-5: #6A6862;
  --hm-chart-6: #7D4F7A;
  --hm-chart-series: var(--hm-acento-500);
  --hm-chart-compare: #C2BEB5;
  --hm-chart-grid: #EAE8E3;
  --surface-page: var(--hm-gris-100);
  --surface-card: var(--hm-gris-050);
  --surface-sunken: var(--hm-gris-200);
  --surface-hover: var(--hm-gris-100);
  --border-subtle: var(--hm-gris-300);
  --border-strong: var(--hm-gris-400);
  --text-strong: var(--hm-tinta);
  --text-body: #24262D;
  --text-muted: var(--hm-gris-600);
  --text-faint: var(--hm-gris-500);
  --text-on-acento: #FFFFFF;
  --text-azul: var(--hm-azul);
  --text-acento: var(--text-azul);
  --text-shell-accent: var(--hm-cielo);
  --surface-shell: var(--hm-tinta-900);
  --surface-shell-raised: var(--hm-tinta-700);
  --surface-shell-hover: var(--hm-tinta-600);
  --border-shell: var(--hm-tinta-500);
  --text-shell-strong: var(--hm-lino);
  --text-shell-body: #D5D7DC;
  --text-shell-muted: var(--hm-piedra);
  --action-primary-bg: var(--hm-acento-500);
  --action-primary-bg-hover: var(--hm-acento-600);
  --action-primary-fg: var(--text-on-acento);
  --action-secondary-bg: var(--hm-tinta-700);
  --action-secondary-fg: var(--hm-gris-050);
  --action-secondary-border: var(--hm-tinta-500);
  --focus-ring: var(--hm-acento-a40);
  --cat-plum: #7C3AED;
  --cat-plum-soft: #EADFFE;
  --cat-plum-ink: #5B21B6;
  --cat-teal: #0D9488;
  --cat-teal-soft: #CDF3EF;
  --cat-teal-ink: #0A5550;
  --cat-amber: #B07800;
  --cat-amber-soft: #FFF0BF;
  --cat-amber-ink: #6B4F00;
  --surface-tertiary: #CFCECA;
  --accent-soft: #E4E8F1;
  --heat-1: #3B6FD8;
  --heat-2: #5AA2F0;
  --heat-3: #63CFCB;
  --heat-4: #86D98A;
  --heat-5: #F4DC6A;
  --heat-6: #F6A45A;
  --heat-7: #E8605F;
  --shadow-none: none;
  --shadow-card: 0 1px 2px rgba(11,12,15,.04),0 1px 3px rgba(11,12,15,.06);
  --shadow-card-hover: 0 2px 4px rgba(11,12,15,.05),0 6px 16px rgba(11,12,15,.08);
  --shadow-pop: 0 8px 24px rgba(11,12,15,.12),0 2px 6px rgba(11,12,15,.08);
  --shadow-modal: 0 24px 64px rgba(11,12,15,.28);
  --shadow-shell: inset 0 0 0 1px #2B303B;
  --glow-azul: 0 0 0 1px rgba(142,174,240,.40),0 0 20px rgba(142,174,240,.18);
  --glow-azul-soft: 0 0 18px rgba(142,174,240,.12);
  --glow-acento: 0 0 0 1px rgba(142,174,240,.40),0 0 20px rgba(142,174,240,.18);
  --glow-acento-soft: 0 0 18px rgba(142,174,240,.12);
  --ring-focus: 0 0 0 3px #5A7BC4;
}
[data-theme="dark"] {
  --hm-tinta-900: var(--hm-tinta);
  --hm-tinta-700: var(--hm-grafito);
  --hm-gris-100: var(--hm-lino);
  --hm-gris-500: var(--hm-piedra);
  --hm-azul-500: var(--hm-cielo);
  --hm-azul-700: var(--hm-azul);
  --hm-acento-100: #1A2338;
  --hm-acento-300: var(--hm-azul-300);
  --hm-acento-400: var(--hm-azul-400);
  --hm-acento-500: var(--hm-cielo);
  --hm-acento-600: var(--hm-azul-600);
  --hm-acento-700: var(--hm-azul-300);
  --hm-acento-a12: rgba(142,174,240,.12);
  --hm-acento-a24: rgba(142,174,240,.24);
  --hm-acento-a40: rgba(142,174,240,.70);
  --hm-success: #4ADE80;
  --hm-success-soft: rgba(74,222,128,0.18);
  --hm-success-ink: #BBF7D0;
  --hm-danger: #FB7185;
  --hm-danger-soft: rgba(251,113,133,0.18);
  --hm-danger-ink: #FECDD3;
  --hm-warning: #FB923C;
  --hm-warning-soft: rgba(251,146,60,0.18);
  --hm-warning-ink: #FED7AA;
  --hm-info: #60A5FA;
  --hm-info-soft: rgba(96,165,250,0.2);
  --hm-info-ink: #BFDBFE;
  --hm-chart-1: var(--hm-cielo);
  --hm-chart-2: #6FB7A8;
  --hm-chart-3: #E0B070;
  --hm-chart-4: #E0907E;
  --hm-chart-5: #C9C7C1;
  --hm-chart-6: #C98BB8;
  --hm-chart-series: var(--hm-acento-500);
  --hm-chart-compare: #4A4F5B;
  --hm-chart-grid: var(--hm-tinta-500);
  --surface-page: var(--hm-tinta-900);
  --surface-card: var(--hm-tinta-700);
  --surface-sunken: var(--hm-tinta-800);
  --surface-hover: var(--hm-tinta-600);
  --border-subtle: var(--hm-tinta-500);
  --border-strong: var(--hm-tinta-400);
  --text-strong: var(--hm-lino);
  --text-body: var(--text-shell-body);
  --text-muted: var(--text-shell-muted);
  --text-faint: var(--hm-tinta-300);
  --text-on-acento: var(--hm-tinta);
  --text-azul: var(--hm-cielo);
  --text-acento: var(--text-azul);
  --text-shell-accent: var(--hm-cielo);
  --surface-shell: var(--hm-tinta-900);
  --surface-shell-raised: var(--hm-tinta-700);
  --surface-shell-hover: var(--hm-tinta-600);
  --border-shell: var(--hm-tinta-500);
  --text-shell-strong: var(--hm-lino);
  --text-shell-muted: var(--hm-piedra);
  --action-primary-bg: var(--hm-acento-500);
  --action-primary-bg-hover: var(--hm-acento-600);
  --action-primary-fg: var(--text-on-acento);
  --action-secondary-bg: var(--hm-tinta-700);
  --action-secondary-fg: var(--hm-gris-050);
  --action-secondary-border: var(--hm-tinta-500);
  --focus-ring: var(--hm-acento-a40);
  --cat-plum: #A78BFA;
  --cat-plum-soft: rgba(167,139,250,0.2);
  --cat-plum-ink: #DDD6FE;
  --cat-teal: #2DD4BF;
  --cat-teal-soft: rgba(45,212,191,0.18);
  --cat-teal-ink: #CCFBF1;
  --cat-amber: #FACC15;
  --cat-amber-soft: rgba(250,204,21,0.18);
  --cat-amber-ink: #FEF08A;
  --surface-tertiary: #2C2E33;
  --accent-soft: #252C3A;
  --heat-1: #3B6FD8;
  --heat-2: #5AA2F0;
  --heat-3: #63CFCB;
  --heat-4: #86D98A;
  --heat-5: #F4DC6A;
  --heat-6: #F6A45A;
  --heat-7: #E8605F;
}
:root {
  --space-0: 0;
  --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-16: 64px;
  --space-20: 80px;
  --space-24: 96px;
  --radius-xs: 4px;
  --radius-sm: 6px;
  --radius-md: 8px;
  --radius-lg: 10px;
  --radius-xl: 12px;
  --radius-2xl: 16px;
  --radius-3xl: 24px;
  --radius-pill: 999px;
  --layout-sidebar-w: 216px;
  --layout-sidebar-w-collapsed: 64px;
  --layout-topbar-h: 60px;
  --layout-gutter: 16px;
  --layout-card-pad: 16px;
  --layout-card-pad-lg: 20px;
  --layout-content-pad: 20px;
  --layout-max-marketing: 1120px;
  --layout-tabbar-h: 64px;
  --fs-display-xl: 56px;
  --fs-display-lg: 40px;
  --fs-display-md: 30px;
  --fs-title-lg: 22px;
  --fs-title-md: 18px;
  --fs-title-sm: 15px;
  --fs-metric-lg: 32px;
  --fs-metric-sm: 24px;
  --fs-body: 14px;
  --fs-body-sm: 13px;
  --fs-caption: 12px;
  --fs-micro: 11px;
  --lh-display-xl: 1.02;
  --lh-display-lg: 1.06;
  --lh-display-md: 1.12;
  --lh-title-lg: 1.2;
  --lh-title-md: 1.3;
  --lh-title-sm: 1.35;
  --lh-metric-lg: 1.05;
  --lh-metric-sm: 1.1;
  --lh-body: 1.5;
  --lh-body-sm: 1.45;
  --lh-caption: 1.35;
  --lh-micro: 1.3;
  --fw-light: 300;
  --fw-regular: 400;
  --fw-medium: 500;
  --fw-semibold: 600;
  --fw-bold: 700;
  --tracking-wordmark: .42em;
  --tracking-eyebrow: .18em;
  --tracking-tight: -.01em;
  --tracking-metric: -.01em;
  --tracking-normal: 0;
  --dur-instant: 80ms;
  --dur-fast: 140ms;
  --dur-base: 220ms;
  --dur-slow: 400ms;
  --dur-flow: 1200ms;
  --ease-flow: cubic-bezier(.22,.61,.36,1);
  --ease-in-out: cubic-bezier(.4,0,.2,1);
  --ease-exit: cubic-bezier(.4,0,1,1);
  --font-display: "Owners Wide","Archivo Expanded",system-ui,sans-serif;
  --font-condensed: "Owners Condensed","Archivo Condensed","Archivo",system-ui,sans-serif;
  --font-sans: "Owners","Owners Text","Archivo",system-ui,-apple-system,"Segoe UI",sans-serif;
  --font-mono: "SFMono-Regular",ui-monospace,Menlo,Consolas,monospace;
}
.display-xl { font-family: var(--font-display); font-size: 56px; line-height: 1.02; font-weight: 700; letter-spacing: -.01em; }
.display-lg { font-family: var(--font-display); font-size: 40px; line-height: 1.06; font-weight: 700; letter-spacing: -.01em; }
.display-md { font-family: var(--font-display); font-size: 30px; line-height: 1.12; font-weight: 600; letter-spacing: -.01em; }
.title-lg { font-family: var(--font-display); font-size: 22px; line-height: 1.2; font-weight: 600; }
.eyebrow { font-family: var(--font-display); font-size: 11px; line-height: 1.3; font-weight: 600; letter-spacing: .18em; }
.metric-lg { font-family: var(--font-condensed); font-size: 32px; line-height: 1.05; font-weight: 600; letter-spacing: -.01em; }
.metric-sm { font-family: var(--font-condensed); font-size: 24px; line-height: 1.1; font-weight: 600; }
.title-md { font-family: var(--font-sans); font-size: 18px; line-height: 1.3; font-weight: 600; }
.title-sm { font-family: var(--font-sans); font-size: 15px; line-height: 1.35; font-weight: 600; }
.body { font-family: var(--font-sans); font-size: 14px; line-height: 1.5; font-weight: 400; }
.body-sm { font-family: var(--font-sans); font-size: 13px; line-height: 1.45; font-weight: 400; }
.caption { font-family: var(--font-sans); font-size: 12px; line-height: 1.35; font-weight: 400; }
