:root {
  /* Colors */
  --color-dark:        #0c1e2a;   /* deep navy — preloader bg */
  --color-dark-2:      #1a3042;   /* slightly lighter navy */
  --color-primary:     #0aa1af;   /* brand teal */
  --color-primary-dim: rgba(10, 161, 175, 0.15);
  --color-white:       #ffffff;
  --color-off-white:   #f4f2ee;
  --color-text:        #1a1a1a;
  --color-text-muted:  rgba(255, 255, 255, 0.65);
  --color-deep:        #07111e;   /* deepest navy — journal, gallery bg */
  --color-sand:        #f4f2ee;   /* warm off-white — gallery text */
  --color-teal:        #0aa1af;   /* alias for primary — journal accents */

  /* Typography */
  --font-heading: 'Abel', 'Cormorant Garamond', sans-serif;
  --font-display: 'Cormorant Garamond', serif;
  --font-body:    'Inter', sans-serif;

  /* Fluid font scale */
  --fs-hero:    clamp(3.5rem, 7vw, 7.5rem);
  --fs-h2:      clamp(2.5rem, 5vw, 5rem);
  --fs-h3:      clamp(1.5rem, 2.5vw, 2.5rem);
  --fs-body:    clamp(1rem, 1.2vw, 1.2rem);
  --fs-small:   clamp(0.7rem, 0.85vw, 0.85rem);
  --fs-label:   clamp(0.65rem, 0.75vw, 0.75rem);

  /* Spacing */
  --space-xs:   0.5rem;
  --space-sm:   1rem;
  --space-md:   2rem;
  --space-lg:   4rem;
  --space-xl:   8rem;
  --space-2xl:  12rem;

  /* Layout */
  --container-max: 1320px;
  --container-pad: clamp(1.5rem, 5vw, 5rem);

  /* Transitions */
  --ease-smooth: cubic-bezier(0.785, 0.135, 0.15, 0.86);
  --ease-out:    cubic-bezier(0.16, 1, 0.3, 1);
  --trans-fast:  0.3s var(--ease-out);
  --trans-mid:   0.65s var(--ease-smooth);

  /* Z-index layers */
  --z-base:      1;
  --z-above:     10;
  --z-nav:       50;
  --z-preloader: 100;
}
