/* From The Core Coaching — design tokens
   Source: design handoff README.md "Design Tokens" section.
   Swap values here (not per-component) if the brand system ever changes. */

:root {
  /* Colors */
  --charcoal: #2d2d2d;
  --rose: #a46161;
  --teal: #507076;
  --blush: #cebfb8;
  --off-white: #f8f8f8;
  --white: #ffffff;
  --grey: #999999;
  --muted-grey: #777777;

  --sand-hairline: rgba(161, 143, 128, 0.12);
  --sand-hairline-strong: rgba(161, 143, 128, 0.3);
  --blush-border: rgba(206, 191, 184, 0.4);
  --blush-border-strong: rgba(206, 191, 184, 0.5);

  /* Fonts */
  --font-display: 'Cormorant Garamond', serif;
  --font-label: 'Cinzel', serif;
  --font-body: 'Jost', sans-serif;

  /* Spacing */
  --gutter: 4rem;
  --gutter-mobile: 1.5rem;
  --section-pad: 3rem;
  --section-pad-mobile: 4.5rem;
  --container-max: 1180px;

  /* Shadows */
  --shadow-flagship: 0 16px 48px rgba(164, 97, 97, 0.28);
  --shadow-card: 0 10px 36px rgba(164, 97, 97, 0.07);
}

*, *::before, *::after { box-sizing: border-box; }

html { scroll-behavior: smooth; }

body {
  margin: 0;
  font-family: var(--font-body);
  background: var(--off-white);
  color: var(--charcoal);
  overflow-x: hidden;
}

a { color: var(--rose); text-decoration: none; }

img { max-width: 100%; display: block; }

.container {
  max-width: var(--container-max);
  margin: 0 auto;
  padding: 0 var(--gutter);
}

.eyebrow {
  font-family: var(--font-label);
  font-size: 0.63rem;
  letter-spacing: 0.35em;
  text-transform: uppercase;
  color: var(--rose);
  display: block;
  margin-bottom: 1.4rem;
}

.section-heading {
  font-family: var(--font-display);
  font-size: clamp(1.9rem, 3vw, 3rem);
  font-weight: 300;
  line-height: 1.18;
  margin: 0;
}

.section-heading em { font-style: italic; color: var(--rose); }

@keyframes fadeUp {
  from { opacity: 0; transform: translateY(22px); }
  to { opacity: 1; transform: translateY(0); }
}

@media (max-width: 860px) {
  .container { padding: 0 var(--gutter-mobile); }
}
