/* Theme: Coastal Cream — beach café (espresso + sand + ocean teal) */
@import url("https://fonts.googleapis.com/css2?family=Fraunces:opsz,wght@9..144,600;9..144,700&family=Source+Sans+3:wght@400;500;600;700&display=swap");

body.theme-coastal {
  --background: #f7f1e8;
  --foreground: #2a1f18;
  --card: #fffaf3;
  --primary: #3b2a22;
  --primary-foreground: #f7f1e8;
  --secondary: #efe4d4;
  --muted: #efe6da;
  --muted-foreground: #6b5a4e;
  --border: #e2d3c0;
  --gold: #1f8a8c;
  --gold-foreground: #063738;
  --gold-soft: rgba(31, 138, 140, 0.14);
  --shadow-soft: 0 10px 30px -12px rgba(59, 42, 34, 0.35);
  --shadow-card: 0 4px 18px -6px rgba(59, 42, 34, 0.16);
  --radius: 0.95rem;
  --font-display: "Fraunces", Georgia, serif;
  --font-sans: "Source Sans 3", "Inter", system-ui, sans-serif;
  font-family: var(--font-sans);
}

body.theme-coastal h1,
body.theme-coastal h2,
body.theme-coastal h3,
body.theme-coastal h4,
body.theme-coastal .logo-text strong,
body.theme-coastal .logo-mark,
body.theme-coastal .service-card h3,
body.theme-coastal .rating-banner .big {
  font-family: var(--font-display);
}

body.theme-coastal .topbar { background: #3b2a22; }
body.theme-coastal .logo-mark {
  background: linear-gradient(135deg, #3b2a22, #1f8a8c);
  border-radius: 0.75rem;
}
body.theme-coastal .btn-gold {
  background: var(--gold);
  color: var(--gold-foreground);
  border-radius: 999px;
}
body.theme-coastal .btn-outline { border-radius: 999px; }
body.theme-coastal .hero-overlay {
  background: linear-gradient(105deg, rgba(42,31,24,.78) 0%, rgba(42,31,24,.45) 48%, rgba(31,138,140,.28) 100%);
}
body.theme-coastal .feature-icon { color: var(--gold); }
body.theme-coastal .cta-band { background: #3b2a22; }
body.theme-coastal .site-footer { background: #241912; }
