/* ============================================================
   Theme: BOULANGERIE  -  warm, French, hand-made
   ------------------------------------------------------------
   For: patisseries, bakeries, French / European cafes.
   Mood: a neighbourhood boulangerie. Warm cream and kraft,
   raspberry-wine accent, gold-leaf pops, high-contrast serif,
   soft rounded corners. The menu reads like a printed carte
   with dotted price leaders.
   ============================================================ */

@import url('https://fonts.googleapis.com/css2?family=Fraunces:ital,opsz,wght@0,9..144,400;0,9..144,500;0,9..144,600;0,9..144,700;1,9..144,500;1,9..144,600&family=Mulish:wght@400;500;600;700&display=swap');

.theme-boulangerie {
  /* -------- Surfaces (cream + kraft) --------------------- */
  --bg:        #F6EEE0;
  --bg-2:      #EFE2CC;
  --surface:   #FCF7EC;

  /* -------- Text (espresso brown) ------------------------ */
  --fg:            #3A2A20;
  --fg-muted:      #836E5B;
  --heading-color: #4A2A2A;

  /* -------- Accent (raspberry-wine) + gold leaf ---------- */
  --accent:        #9C3F54;
  --accent-bright: #B85A6E;
  --accent-hover:  #7C2F40;
  --accent-2:      #C9A24B;   /* gold leaf - rules, dots       */
  --on-accent:     #FCF7EC;

  --hairline:   rgba(74, 42, 42, 0.16);
  --hairline-2: rgba(74, 42, 42, 0.30);

  /* -------- Hero (warm appetising veil) ------------------ */
  --hero-ink: #FCF7EC;
  --hero-min-h: 92vh;
  --hero-overlay:
    radial-gradient(120% 95% at 50% 38%, rgba(58,30,24,0.20) 0%, rgba(48,24,20,0.52) 66%, rgba(40,20,16,0.82) 100%),
    linear-gradient(180deg, rgba(58,30,24,0.34) 0%, rgba(58,30,24,0.30) 42%, rgba(40,20,16,0.88) 100%);

  /* -------- Footer (deep cocoa) -------------------------- */
  --footer-bg:     #3A2620;
  --footer-fg:     rgba(252, 247, 236, 0.78);
  --footer-strong: #FCF7EC;
  --footer-head:   #C9A24B;

  /* -------- Type ----------------------------------------- */
  --font-display: 'Fraunces', Georgia, 'Times New Roman', serif;
  --font-body:    'Mulish', system-ui, -apple-system, 'Segoe UI', sans-serif;

  --fs-hero: clamp(2.8rem, 6.5vw + 1rem, 5.4rem);
  --heading-weight: 600;
  --heading-tracking: -0.015em;
  --eyebrow-tracking: 0.24em;

  /* -------- Soft, baked corners -------------------------- */
  --radius-1: 6px;
  --radius-2: 14px;
  --radius-3: 22px;
  --rule-color: var(--accent-2);
  --shadow-1: 0 1px 2px rgba(74,42,42,0.06), 0 6px 20px rgba(74,42,42,0.10);
  --shadow-2: 0 16px 44px rgba(74,42,42,0.16);
}

/* ---- Structural personality: single-column carte ----------- */

.theme-boulangerie .menu-grid {
  grid-template-columns: 1fr;
  max-width: 46rem;
  margin-inline: auto;
  gap: var(--space-7);
}
.theme-boulangerie .menu-group {
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  padding: 0;
}
.theme-boulangerie .menu-group__title {
  justify-content: center;
  border-bottom: 0;
  margin-bottom: var(--space-4);
}
.theme-boulangerie .menu-group__title h3 {
  position: relative;
  padding-bottom: var(--space-3);
}
.theme-boulangerie .menu-group__title h3::after {
  content: "";
  position: absolute;
  left: 50%; bottom: 0;
  transform: translateX(-50%);
  width: 34px; height: 2px;
  background: var(--accent-2);
}

/* Dotted price leaders */
.theme-boulangerie .menu-row {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  border-bottom: 0;
  padding-block: var(--space-2);
}
.theme-boulangerie .menu-row__name { order: 1; }
.theme-boulangerie .menu-row::after {
  content: "";
  order: 2;
  flex: 1 1 1.5rem;
  min-width: 1.5rem;
  margin: 0 var(--space-3);
  transform: translateY(-0.28em);
  border-bottom: 2px dotted var(--hairline-2);
}
.theme-boulangerie .menu-row__price { order: 3; color: var(--accent); }
.theme-boulangerie .menu-row__desc { order: 4; flex-basis: 100%; margin-top: 0; }

/* Warm italic intro */
.theme-boulangerie .intro__lede em { color: var(--accent); }
