/* Signature Goods — tokens. No editar valores aquí sin actualizar el design system. */
@font-face{font-family:"Inter";src:url("../fonts/Inter-Light.ttf") format("truetype");font-weight:300;font-style:normal;font-display:swap;}
@font-face{font-family:"Inter";src:url("../fonts/Inter-Regular.ttf") format("truetype");font-weight:400;font-style:normal;font-display:swap;}
@font-face{font-family:"Inter";src:url("../fonts/Inter-Medium.ttf") format("truetype");font-weight:500;font-style:normal;font-display:swap;}
@font-face{font-family:"Inter";src:url("../fonts/Inter-SemiBold.ttf") format("truetype");font-weight:600;font-style:normal;font-display:swap;}
@font-face{font-family:"Playfair Display";src:url("../fonts/PlayfairDisplay-SemiBold.ttf") format("truetype");font-weight:600;font-style:normal;font-display:swap;}
@font-face{font-family:"Playfair Display";src:url("../fonts/PlayfairDisplay-Bold.ttf") format("truetype");font-weight:700;font-style:normal;font-display:swap;}
@font-face{font-family:"Playfair Display";src:url("../fonts/PlayfairDisplay-SemiBoldItalic.ttf") format("truetype");font-weight:600;font-style:italic;font-display:swap;}

:root {
  /* ---- Color ---- */
  --navy: #253849;
  --navy-deep: #1C2B39;
  --accent: #B3A157;
  --accent-soft: rgba(179, 161, 87, .18);
  --almost-white: #FBFCFC;
  --stone: #F2EFE9;
  --stone-deep: #E8E3DB;
  --ink: #252422;
  --slate: #67696B;

  --bg: #FBFCFC;
  --bg-alt: #F2EFE9;
  --surface-card: #FFFFFF;
  --surface-neutral: #E8E3DB;
  --surface-dark: #253849;
  --surface-dark-deep: #1C2B39;

  --text-heading: #252422;
  --text-body: #252422;
  --muted: #67696B;
  --on-dark: #E8E3DB;
  --on-dark-muted: #8EA0B0;
  --heading-on-dark: #FBFCFC;

  --border: #E7E3DC;
  --rule: #E7E3DC;

  /* ---- Tipografía ---- */
  --font-serif-display: "Playfair Display", Georgia, serif;
  --font-sans: "Inter", system-ui, sans-serif;

  --h1-size: 60px;   --h1-lh: 1.05;  --h1-track: -0.5px;
  --h2-size: 40px;   --h2-lh: 1.10;  --h2-track: -0.25px;
  --h3-size: 24px;   --h3-lh: 1.20;
  --eyebrow-size: 13px; --eyebrow-track: 2.5px;
  --body-lg-size: 18px;
  --body-size: 16px; --body-lh: 1.6;
  --caption-size: 13px; --caption-lh: 1.5;
  --ui-size: 15px;   --ui-track: 0.3px;

  /* ---- Espaciado y rejilla ---- */
  --sp-1: 4px;  --sp-2: 8px;  --sp-3: 12px; --sp-4: 16px; --sp-5: 24px;
  --sp-6: 32px; --sp-7: 48px; --sp-8: 64px; --sp-9: 96px; --sp-10: 128px;
  --container-max: 1200px;
  --gutter: 24px;
  --section-y: 96px;
  --header-h: 72px;
  --header-h-scrolled: 60px;

  /* ---- Radios ---- */
  --radius-pill: 999px;
  --radius-panel: 16px;
  --radius-card: 12px;
  --radius-input: 10px;
  --radius-image: 4px;

  /* ---- Elevación ---- */
  --shadow-subtle: 0 1px 2px rgba(37, 56, 73, .06);
  --shadow-card: 0 8px 24px rgba(37, 56, 73, .08);
  --shadow-hover: 0 10px 26px rgba(37, 56, 73, .10);
  --shadow-float: 0 8px 24px rgba(37, 56, 73, .25);

  /* ---- Motion ---- */
  --ease: cubic-bezier(.25, .1, .25, 1);
  --dur-input: 150ms;
  --dur: 180ms;
  --dur-slow: 250ms;

  /* ---- Texturas de placeholder (sustituir por foto real) ---- */
  --plate-navy: radial-gradient(120% 90% at 50% 40%, #33506a 0%, #253849 70%);
  --scrim-navy: linear-gradient(180deg, rgba(37, 56, 73, .15), rgba(37, 56, 73, .65));
}

@media (max-width: 1080px) {
  :root {
    --h1-size: 36px;
    --h2-size: 28px;
    --h3-size: 20px;
    --section-y: 56px;
  }
}

/* Modo oscuro: charcoal navy con títulos ocre */
:root[data-theme="dark"] {
  --bg: #253849;
  --bg-alt: #2B4155;
  --surface-card: #2E4659;
  --surface-neutral: #33506A;
  --surface-dark: #1C2B39;
  --surface-dark-deep: #16222E;

  --accent: #C7B36B;
  --accent-soft: rgba(199, 179, 107, .32);

  --navy: #E8E3DB;
  --navy-deep: #FBFCFC;
  --almost-white: #253849;
  --stone: #E8E3DB;

  --ink: #FFFFFF;
  --text-body: #E4E9ED;
  --text-heading: #C7B36B;
  --muted: #B3C1CC;
  --on-dark: #FFFFFF;
  --on-dark-muted: #C2CED8;
  --heading-on-dark: #C7B36B;

  --border: #3A5468;
  --rule: #3A5468;
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: 0.01ms !important;
    transition-duration: 0.01ms !important;
  }
}
