/* Phase 5 presentation for pages that still used the previous palette.
   Tokens match css/pmg-public.css. Page scripts, prices, and copy stay in the HTML. */

body.pmg-provider,
body.pmg-directory,
body.pmg-leads,
body.pmg-review,
body.pmg-venue,
body.pmg-portal,
body.pmg-settings,
body.pmg-guide,
body.pmg-blog {
  --pmg-ink: #221c2b;
  --pmg-plum: #3d3450;
  --pmg-purple: #7c4f99;
  --pmg-purple-text: #5f3b76;
  --pmg-tint: #f3eef7;
  --pmg-page: #f5f4f7;
  --pmg-border: #e8e5ec;
  --pmg-radius: 4px;
}

body.pmg-provider {
  --bg0: #f5f4f7;
  --bg1: #fbfafc;
  --surface: #fff;
  --border: #e8e5ec;
  --text: #221c2b;
  --muted: #655e70;
  --accent: #7c4f99;
  --accent2: #3d3450;
  --radius: 4px;
  --radius-lg: 4px;
  --glow: none;
  font-family: "Assistant", "Heebo", system-ui, sans-serif;
  background: #f5f4f7;
  color: #221c2b;
}

body.pmg-provider .header,
body.pmg-provider .card,
body.pmg-provider .plans-ribbon,
body.pmg-provider .dash-tabs,
body.pmg-provider .lp-card,
body.pmg-provider .lp-preview-card,
body.pmg-provider .lp-progress {
  background: #fff;
  box-shadow: none;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}

body.pmg-provider .btn,
body.pmg-provider .chip-btn,
body.pmg-provider .dash-tab,
body.pmg-provider .form-group input,
body.pmg-provider .form-group textarea,
body.pmg-provider .form-group select,
body.pmg-provider .lp-btn-light,
body.pmg-provider .lp-btn-ghost,
body.pmg-provider .lp-toggle {
  border-radius: 4px;
  font-family: inherit;
}

body.pmg-provider .form-group input,
body.pmg-provider .form-group textarea,
body.pmg-provider .form-group select,
body.pmg-provider .lp-card input,
body.pmg-provider .lp-card textarea,
body.pmg-provider .lp-card select,
body.pmg-provider .logo-preview {
  background: #fff;
  color: #221c2b;
}

body.pmg-provider .btn-primary,
body.pmg-provider .lp-btn-light,
body.pmg-provider .dash-tab.active {
  background: #3d3450;
  color: #fff;
  box-shadow: none;
}

body.pmg-provider .dash-tab:hover { background: #f3eef7; color: #221c2b; }
body.pmg-provider .lp-hero {
  background: #f3eef7;
  border-color: #e8e5ec;
  box-shadow: none;
}
body.pmg-provider .lp-preview-tag { color: #5f3b76; background: #f3eef7; }
body.pmg-provider .lp-progress__bar { background: #e8e5ec; }
body.pmg-provider .pill.active { color: #166534; background: #eef7f1; }
body.pmg-provider .pill.pending { color: #92400e; background: #fffbeb; }
body.pmg-provider .pill.inactive { color: #9f1239; background: #fff1f2; }
body.pmg-provider .header h1,
body.pmg-provider .lp-hero h3 {
  font-family: "Frank Ruhl Libre", "Heebo", serif;
}

body.pmg-directory {
  --violet: #7c4f99;
  --indigo: #5f3b76;
  --indigo-soft: #f3eef7;
  --bg: #fbfafc;
  --text: #221c2b;
  --muted: #655e70;
  --border: #e8e5ec;
  --surface: #fff;
  --radius: 4px;
  --radius-xl: 4px;
  --radius-2xl: 4px;
  --shadow: 0 1px 2px rgba(30, 25, 38, 0.04);
  --shadow-hover: 0 8px 24px rgba(61, 52, 80, 0.08);
  font-family: "Assistant", "Heebo", system-ui, sans-serif;
  background: #fbfafc;
  color: #221c2b;
}

body.pmg-directory .site-header { background: #fff; }
body.pmg-directory .search-hero__btn,
body.pmg-directory .btn-primary {
  background: #3d3450;
  box-shadow: none;
}
body.pmg-directory .hero__bg {
  background: linear-gradient(160deg, #3d3450 0%, #7c4f99 100%);
}
body.pmg-directory h1,
body.pmg-directory .hero h1 {
  font-family: "Frank Ruhl Libre", "Heebo", serif;
}

body.pmg-leads {
  font-family: "Assistant", "Heebo", system-ui, sans-serif;
  background: #f5f4f7;
  color: #221c2b;
}
body.pmg-leads .summary-box {
  background: #3d3450;
  border-radius: 4px;
  box-shadow: none;
}
body.pmg-leads .back-btn,
body.pmg-leads button,
body.pmg-leads .btn { border-radius: 4px; font-family: inherit; }
body.pmg-leads .btn-quote { background: #7c4f99; }

body.pmg-review {
  font-family: "Assistant", "Heebo", system-ui, sans-serif;
  background: #f5f4f7 !important;
  color: #221c2b;
}
body.pmg-review .card {
  border-radius: 4px;
  border-color: #e8e5ec;
  box-shadow: none;
}
body.pmg-review h1 { color: #221c2b; font-family: "Frank Ruhl Libre", "Heebo", serif; }
body.pmg-review button,
body.pmg-review input,
body.pmg-review textarea { border-radius: 4px; font-family: inherit; }

body.pmg-venue {
  --navy: #3d3450;
  --navy2: #2a2438;
  --blue: #7c4f99;
  --gold: #c3a3d8;
  --bg: #f5f4f7;
  --card: #fff;
  --text: #221c2b;
  --muted: #655e70;
  --border: #e8e5ec;
  font-family: "Assistant", "Heebo", system-ui, sans-serif;
}
body.pmg-venue .nav-item,
body.pmg-venue .btn,
body.pmg-venue button,
body.pmg-venue input,
body.pmg-venue select,
body.pmg-venue textarea { border-radius: 4px; }
body.pmg-venue .topbar h1,
body.pmg-venue .sidebar h2 { font-family: "Frank Ruhl Libre", "Heebo", serif; }

body.pmg-portal {
  font-family: "Assistant", "Heebo", system-ui, sans-serif !important;
  background: #f5f4f7 !important;
  color: #221c2b;
}
body.pmg-portal .box {
  border-radius: 4px;
  box-shadow: none;
  border: 1px solid #e8e5ec;
}
body.pmg-portal h1 { color: #221c2b; font-family: "Frank Ruhl Libre", "Heebo", serif; }
body.pmg-portal .btn { border-radius: 4px; font-family: inherit; }
body.pmg-portal .btn-primary { background: #3d3450; }
body.pmg-portal .spinner { border-color: #e8e5ec; border-top-color: #7c4f99; }
body.pmg-portal .price-box {
  background: #f3eef7;
  border-color: #ddd0e8;
  color: #3d3450;
  border-radius: 4px;
}
body.pmg-portal #card-element { border-radius: 4px; }

body.pmg-settings {
  --pmg-pink: #7c4f99;
  --pmg-pink-deep: #3d3450;
  --pmg-grad: #3d3450;
  --pmg-bg-page: #f5f4f7;
  --pmg-bg-soft: #f3eef7;
  --pmg-border-soft: #e8e5ec;
  --pmg-border-pink: #ddd0e8;
  --pmg-ink: #221c2b;
  --pmg-text-2: #655e70;
  --pmg-r-card: 4px;
  --pmg-r-input: 4px;
  font-family: "Assistant", "Heebo", system-ui, sans-serif;
}

body.pmg-guide {
  --primary: #7c4f99;
  --accent: #3d3450;
  --bg: #f5f4f7;
  --text: #221c2b;
  --muted: #655e70;
  --border: #e8e5ec;
  font-family: "Assistant", "Heebo", system-ui, sans-serif;
  background: #f5f4f7;
}
body.pmg-guide h1 { font-family: "Frank Ruhl Libre", "Heebo", serif; }

body.pmg-legal {
  background: #f5f4f7 !important;
  color: #221c2b;
  font-family: "Assistant", "Heebo", system-ui, sans-serif !important;
}
body.pmg-legal .global-logo { top: 14px; right: 14px; }
body.pmg-legal .legal-container,
body.pmg-legal .container {
  border-radius: 4px !important;
  box-shadow: none !important;
  border: 1px solid #e8e5ec;
  overflow-wrap: anywhere;
}
body.pmg-legal h1,
body.pmg-legal h2 { color: #3d3450 !important; }
body.pmg-legal h1 { font-family: "Frank Ruhl Libre", "Heebo", serif; }
body.pmg-legal .back-link a { color: #5f3b76; }
body.pmg-legal .header { background: #3d3450 !important; }
body.pmg-legal .highlight,
body.pmg-legal .highlight-box,
body.pmg-legal .info-box {
  background: #f3eef7;
  border-color: #7c4f99;
  border-radius: 4px;
}
body.pmg-legal .back-btn {
  background: #3d3450 !important;
  border-radius: 4px;
  color: #fff;
}

body.pmg-blog .blog-page { padding: 48px 0 72px; min-height: 60vh; }
body.pmg-blog .blog-kicker {
  margin: 0;
  font: 700 12px/1 "Assistant", system-ui, sans-serif;
  letter-spacing: 0.14em;
  color: #7c4f99;
}
body.pmg-blog .blog-page h1 {
  margin: 12px 0 0;
  font-family: "Frank Ruhl Libre", "Heebo", serif;
  font-weight: 500;
  font-size: clamp(32px, 4vw, 48px);
  color: #221c2b;
}
body.pmg-blog .blog-lead { margin-top: 10px; color: #655e70; }
body.pmg-blog .preferred-source-wrap { display: flex; justify-content: center; margin-top: 18px; }
html:has(body.pmg-blog) { scroll-padding-top: 96px; }
body.pmg-blog #soro-blog { min-height: 320px; max-width: 100%; scroll-margin-top: 96px; }
body.pmg-blog #soro-blog img { max-width: 100%; height: auto; }
body.pmg-blog .blog-status {
  margin: 28px 0;
  padding: 16px;
  border: 1px solid #e8e5ec;
  border-radius: 4px;
  background: #fff;
  color: #655e70;
  text-align: center;
}
body.pmg-blog .pmg-nav a[aria-current="page"] { color: #3d3450; }

body.pmg-provider :focus-visible,
body.pmg-directory :focus-visible,
body.pmg-leads :focus-visible,
body.pmg-review :focus-visible,
body.pmg-venue :focus-visible,
body.pmg-portal :focus-visible,
body.pmg-settings :focus-visible,
body.pmg-guide :focus-visible,
body.pmg-legal :focus-visible,
body.pmg-blog :focus-visible {
  outline: 2px solid #7c4f99;
  outline-offset: 2px;
}

@media (prefers-reduced-motion: reduce) {
  body.pmg-provider *,
  body.pmg-directory *,
  body.pmg-leads *,
  body.pmg-review *,
  body.pmg-venue *,
  body.pmg-portal *,
  body.pmg-settings *,
  body.pmg-guide *,
  body.pmg-legal *,
  body.pmg-blog * {
    animation: none !important;
    transition: none !important;
  }
}

@media (max-width: 720px) {
  body.pmg-legal { padding: 58px 12px 28px !important; }
  body.pmg-legal .legal-container,
  body.pmg-legal .container { padding: 24px 16px !important; }
  body.pmg-provider .lp-grid { grid-template-columns: 1fr; }
}
