/* ================================================================
   ZEEST GLOBAL — wins over app.css on ALL pages (load last)
   ================================================================ */

/* ── Footer: theme light bg, NOT white, NOT old dark purple ── */
body.zeest-site .site-footer,
body.zeest-site footer.site-footer,
body.zeest-site footer.zeest-footer {
  background: #F7F7FC !important;
  background: var(--bg) !important;
  color: var(--ink-dim) !important;
  border-top: 1px solid var(--line) !important;
  margin-top: 48px !important;
}

body.zeest-site .site-footer .ftr-inner,
body.zeest-site .site-footer .foot-top,
body.zeest-site .ftr-inner {
  background: transparent !important;
  color: inherit !important;
  max-width: 90rem !important;
  margin: 0 auto !important;
  padding: 48px 32px 32px !important;
  display: grid !important;
  grid-template-columns: 1.6fr 1fr 1fr 1fr 1fr !important;
  gap: 32px !important;
}

body.zeest-site .site-footer .ftr-bottom,
body.zeest-site .site-footer .foot-bottom {
  background: #F7F7FC !important;
  background: var(--bg) !important;
  border-top: 1px solid var(--line) !important;
  color: var(--ink-dim) !important;
  max-width: 90rem !important;
  margin: 0 auto !important;
  padding: 18px 32px !important;
  text-align: center !important;
  font-size: 12.5px !important;
}

body.zeest-site .ftr-col h4,
body.zeest-site .foot-col h5,
body.zeest-site .foot-col .foot-col-title {
  color: var(--ink) !important;
  font-size: 13.5px !important;
  font-weight: 700 !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
  margin: 0 0 16px !important;
}

body.zeest-site .ftr-col ul,
body.zeest-site .foot-col ul {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 11px !important;
}

body.zeest-site .ftr-col li,
body.zeest-site .foot-col li {
  margin: 0 !important;
  padding: 0 !important;
}

body.zeest-site .ftr-col a,
body.zeest-site .foot-col a,
body.zeest-site .ftr-legal a {
  color: var(--ink-dim) !important;
  font-size: 13.5px !important;
  display: block !important;
}

body.zeest-site .ftr-col a:hover,
body.zeest-site .foot-col a:hover,
body.zeest-site .ftr-legal a:hover {
  color: var(--ink) !important;
}

body.zeest-site .ftr-bottom span,
body.zeest-site .foot-bottom span {
  color: var(--ink-dim) !important;
}

body.zeest-site .ftr-brand p,
body.zeest-site .foot-brand p {
  color: var(--ink-dim) !important;
  font-size: 13.5px !important;
}

body.zeest-site .brand-text-fallback--footer,
body.zeest-site .ftr-logo .brand-zeest {
  color: var(--ink) !important;
}

body.zeest-site .ftr-social a,
body.zeest-site .foot-social a {
  background: var(--card) !important;
  border: 1px solid var(--line) !important;
  color: var(--ink-dim) !important;
  width: 32px !important;
  height: 32px !important;
  border-radius: 8px !important;
}

body.zeest-site .ftr-social a:hover,
body.zeest-site .foot-social a:hover {
  color: var(--violet) !important;
  background: var(--violet-tint) !important;
}

@media (max-width: 900px) {
  body.zeest-site .site-footer .ftr-inner,
  body.zeest-site .ftr-inner {
    grid-template-columns: 1fr 1fr !important;
    padding: 48px 18px 32px !important;
  }
}

/* ── Kill old dark / gradient heroes on every page ── */
body.zeest-site .page-hero,
body.zeest-site .page-hero--brand,
body.zeest-site .page-hero--app,
body.zeest-site .home-hero {
  background: var(--card) !important;
  color: var(--ink) !important;
  border-bottom: 1px solid var(--line) !important;
  padding: 32px 0 !important;
  margin: 0 !important;
}

body.zeest-site .page-hero::before,
body.zeest-site .page-hero--brand::before,
body.zeest-site .home-hero::before {
  display: none !important;
}

body.zeest-site .page-hero h1,
body.zeest-site .page-hero--brand h1,
body.zeest-site .page-hero-inner h1 {
  color: var(--ink) !important;
  font-size: clamp(24px, 3vw, 32px) !important;
  font-weight: 800 !important;
}

body.zeest-site .page-hero__lead,
body.zeest-site .page-hero-inner p,
body.zeest-site .page-hero .eyebrow {
  color: var(--ink-dim) !important;
}

body.zeest-site .page-hero .breadcrumb-nav a,
body.zeest-site .page-hero .breadcrumb-nav span {
  color: var(--ink-dim) !important;
}

body.zeest-site .page-hero-inner,
body.zeest-site .page-hero .wrap {
  max-width: 90rem !important;
  margin: 0 auto !important;
  padding: 0 32px !important;
}

/* ── Content rails — .wrap is the single rail; main is full bleed ── */
body.zeest-site:not(.zeest-dash) .site-main {
  max-width: none !important;
  width: 100% !important;
  margin: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

body.zeest-site.zeest-dash .site-main {
  max-width: none !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

body.zeest-site .site-content,
body.zeest-site .site-section,
body.zeest-site .app-shell,
body.zeest-site .app-shell__inner,
body.zeest-site:not(.zeest-dash) .dashboard-layout,
body.zeest-site .profile-form-shell,
body.zeest-site .about-shell,
body.zeest-site .pricing-shell,
body.zeest-site .blog-shell,
body.zeest-site .search-page-top,
body.zeest-site .panel-narrow,
body.zeest-site .panel-medium {
  max-width: var(--page-max, 90rem);
  margin-left: auto;
  margin-right: auto;
  padding-left: var(--page-pad, clamp(18px, 2.5vw, 40px));
  padding-right: var(--page-pad, clamp(18px, 2.5vw, 40px));
}

@media (max-width: 640px) {
  body.zeest-site .site-content,
  body.zeest-site .site-section,
  body.zeest-site .page-hero-inner,
  body.zeest-site .app-shell__inner {
    padding-left: 18px;
    padding-right: 18px;
  }
}

body.zeest-site .site-section {
  padding-top: 48px;
  padding-bottom: 48px;
}

/* ── Cards everywhere ── */
body.zeest-site .card,
body.zeest-site .list-card,
body.zeest-site .about-intro-card,
body.zeest-site .pricing-card,
body.zeest-site .blog-card,
body.zeest-site .profile-form-card,
body.zeest-site .locations-filter-card,
body.zeest-site .search-empty-card,
body.zeest-site .card-tint-warn,
body.zeest-site .card-spaced {
  background: var(--card) !important;
  border: 1px solid var(--line) !important;
  border-radius: 14px !important;
  box-shadow: none !important;
  color: var(--ink) !important;
}

body.zeest-site .card h2,
body.zeest-site .card h3 {
  color: var(--ink) !important;
  font-weight: 800 !important;
}

body.zeest-site .muted,
body.zeest-site .app-lead,
body.zeest-site p.muted {
  color: var(--ink-dim) !important;
}

/* ── App / dashboard pages (provider, buyer, affiliate) ── */
body.zeest-site .app-shell {
  padding-top: 32px;
  padding-bottom: 16px;
  background: transparent !important;
}

body.zeest-site .app-title,
body.zeest-site .dash-top h1 {
  font-size: 26px !important;
  font-weight: 800 !important;
  color: var(--ink) !important;
}

body.zeest-site .eyebrow,
body.zeest-site .section-label {
  color: var(--violet) !important;
  font-size: 12.5px !important;
  font-weight: 600 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.06em !important;
}

body.zeest-site .dash-top {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  flex-wrap: wrap;
  margin-bottom: 24px;
}

body.zeest-site:not(.zeest-dash) .dashboard-layout {
  display: grid;
  grid-template-columns: 1fr 320px;
  gap: 24px;
  padding-bottom: 48px;
}

@media (max-width: 960px) {
  body.zeest-site:not(.zeest-dash) .dashboard-layout {
    grid-template-columns: 1fr;
  }
}

body.zeest-site .stat-card,
body.zeest-site .stats-grid .stat-card {
  background: var(--card) !important;
  border: 1px solid var(--line) !important;
  border-radius: 14px !important;
  padding: 20px !important;
}

body.zeest-site .stat-value {
  font-size: 28px !important;
  font-weight: 800 !important;
  color: var(--ink) !important;
}

body.zeest-site .stat-label {
  color: var(--ink-dim) !important;
  font-size: 13px !important;
}

body.zeest-site .stats-grid,
body.zeest-site .stats-grid-3 {
  display: grid;
  gap: 16px;
}

body.zeest-site .stats-grid {
  grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
}

body.zeest-site .stats-grid-3 {
  grid-template-columns: repeat(3, 1fr);
}

/* ── Tables (admin + dashboards) ── */
body.zeest-site .table-wrap {
  border: 1px solid var(--line);
  border-radius: 14px;
  overflow: hidden;
  background: var(--card);
}

body.zeest-site table th {
  background: var(--bg) !important;
  color: var(--ink-dim) !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.04em !important;
  padding: 12px 16px !important;
  border-bottom: 1px solid var(--line) !important;
}

body.zeest-site table td {
  padding: 12px 16px !important;
  border-bottom: 1px solid var(--line) !important;
  font-size: 14px !important;
  color: var(--ink) !important;
}

body.zeest-site table tr:hover td {
  background: rgba(108, 92, 231, 0.03) !important;
}

/* ── Forms ALL pages ── */
body.zeest-site input:not([type="checkbox"]):not([type="radio"]),
body.zeest-site select,
body.zeest-site textarea,
body.zeest-site .form-row input,
body.zeest-site .auth-form input,
body.zeest-site .settings-block input,
body.zeest-site .settings-block select,
body.zeest-site .settings-block textarea {
  border: 1px solid var(--line) !important;
  border-radius: 9px !important;
  padding: 11px 13px !important;
  font-family: inherit !important;
  font-size: 14px !important;
  background: var(--card) !important;
  color: var(--ink) !important;
  box-shadow: none !important;
}

body.zeest-site input:focus,
body.zeest-site select:focus,
body.zeest-site textarea:focus {
  outline: none !important;
  border-color: var(--violet) !important;
  box-shadow: 0 0 0 3px rgba(108, 92, 231, 0.12) !important;
}

body.zeest-site label,
body.zeest-site .form-row label {
  font-size: 13.5px !important;
  font-weight: 600 !important;
  color: var(--ink) !important;
}

/* ── Buttons ALL pages ── */
body.zeest-site .btn-primary,
body.zeest-site button.btn-primary,
body.zeest-site input[type="submit"].btn-primary {
  background: var(--violet) !important;
  color: #fff !important;
  border: none !important;
  border-radius: 9px !important;
  font-weight: 600 !important;
  padding: 10px 18px !important;
}

body.zeest-site .btn-primary:hover {
  background: var(--violet-dark) !important;
}

body.zeest-site .btn-ghost,
body.zeest-site .btn-outline,
body.zeest-site button.btn-ghost {
  background: var(--card) !important;
  color: var(--ink) !important;
  border: 1px solid var(--line) !important;
  border-radius: 9px !important;
  font-weight: 600 !important;
}

body.zeest-site .btn-ghost:hover,
body.zeest-site .btn-outline:hover {
  border-color: var(--ink-dim) !important;
}

body.zeest-site .btn-cta {
  background: var(--ink) !important;
  color: #fff !important;
  border-radius: 9px !important;
}

/* ── Auth pages ALL ── */
body.zeest-site .auth-page {
  min-height: calc(100vh - 80px);
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  padding: 0 !important;
  margin: 0 !important;
  background: var(--bg) !important;
}

@media (max-width: 900px) {
  body.zeest-site .auth-page {
    grid-template-columns: 1fr !important;
  }
}

body.zeest-site .auth-visual-side {
  background: linear-gradient(155deg, #6C5CE7, #5847D8 60%, #4436B8) !important;
  color: #fff !important;
  padding: 48px !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: space-between !important;
}

@media (max-width: 900px) {
  body.zeest-site .auth-visual-side {
    display: none !important;
  }
}

body.zeest-site .auth-form-side {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 48px 32px !important;
  background: var(--bg) !important;
}

body.zeest-site .auth-heading {
  font-size: 25px !important;
  font-weight: 800 !important;
  color: var(--ink) !important;
}

body.zeest-site .auth-sub {
  color: var(--ink-dim) !important;
}

body.zeest-site .auth-error {
  border-radius: 9px !important;
  padding: 12px 14px !important;
  font-size: 14px !important;
}

body.zeest-site .auth-success {
  background: #e9f7ef !important;
  color: var(--green) !important;
  border: 1px solid #ccfbf1 !important;
}

/* ── Provider profile (business.html patterns) ── */
body.zeest-site .profile-hero,
body.zeest-site .provider-profile-shell {
  background: transparent !important;
}

body.zeest-site .profile-tabs a.active,
body.zeest-site .tabs a.active {
  color: var(--violet) !important;
  font-weight: 700 !important;
  border-bottom: 2px solid var(--violet) !important;
}

body.zeest-site .side-card,
body.zeest-site .profile-sidebar-card {
  background: var(--card) !important;
  border: 1px solid var(--line) !important;
  border-radius: 14px !important;
  padding: 22px !important;
}

body.zeest-site .profile-area-chip,
body.zeest-site .cat-sub-chip,
body.zeest-site .service-area-tag {
  border: 1px solid var(--line) !important;
  background: var(--card) !important;
  border-radius: 20px !important;
  padding: 6px 13px !important;
  font-size: 13px !important;
  color: var(--ink) !important;
}

body.zeest-site .profile-area-chip:hover,
body.zeest-site .cat-sub-chip:hover {
  border-color: var(--violet) !important;
  color: var(--violet) !important;
  background: var(--violet-tint) !important;
}

/* ── Pricing cards ── */
body.zeest-site .pricing-card,
body.zeest-site .plan-card {
  border-radius: 14px !important;
  border: 1px solid var(--line) !important;
}

body.zeest-site .pricing-card--featured,
body.zeest-site .plan-card--highlight {
  border-color: var(--violet) !important;
  box-shadow: 0 8px 24px rgba(108, 92, 231, 0.12) !important;
}

/* ── Blog ── */
body.zeest-site .blog-card,
body.zeest-site .blog-post-card {
  border-radius: 14px !important;
  overflow: hidden !important;
  border: 1px solid var(--line) !important;
}

/* ── Sector / category legacy tiles ── */
body.zeest-site .sector-sq-card {
  background: var(--card) !important;
  border: 1px solid var(--line) !important;
  border-radius: 14px !important;
  padding: 22px 16px !important;
  text-align: center !important;
}

body.zeest-site .sector-sq-card:hover {
  box-shadow: 0 10px 24px rgba(20, 22, 43, 0.07) !important;
  transform: translateY(-2px) !important;
}

body.zeest-site .cat-card {
  border-radius: 14px !important;
  border: 1px solid var(--line) !important;
  border-left-width: 1px !important;
}

/* ── Status badges ── */
body.zeest-site .status-badge,
body.zeest-site .badge-stage,
body.zeest-site .service-area-tag {
  border-radius: 20px !important;
}

body.zeest-site .status-active,
body.zeest-site .status-approved,
body.zeest-site .success-text {
  color: var(--green) !important;
}

body.zeest-site .error,
body.zeest-site .status-rejected {
  color: var(--red) !important;
}

body.zeest-site .warn-text,
body.zeest-site .status-pending {
  color: var(--orange) !important;
}

/* ── Provider nav sidebar ── */
body.zeest-site .provider-nav,
body.zeest-site .provider-nav a {
  border-radius: 9px !important;
}

body.zeest-site .provider-nav a.active,
body.zeest-site .provider-nav a:hover {
  background: var(--violet-tint) !important;
  color: var(--violet) !important;
}

/* ── Admin body (also has zeest-admin) ── */
body.zeest-admin .site-footer {
  display: none;
}

body.zeest-admin .admin-layout-wrap {
  background: var(--bg) !important;
}

/* ── 404 / legal / static ── */
body.zeest-site .legal-content,
body.zeest-site .static-page-content,
body.zeest-site .prose {
  max-width: 720px;
  color: var(--ink-dim);
  line-height: 1.65;
}

body.zeest-site .prose h2 {
  color: var(--ink) !important;
  font-weight: 800 !important;
}

/* ── Header sticky clean ── */
body.zeest-site .site-header {
  background: var(--card) !important;
  border-bottom: 1px solid var(--line) !important;
  box-shadow: none !important;
}

/* ── Remove old purple body gradient ── */
body.zeest-site,
body.zeest-admin {
  background: var(--bg) !important;
}

body.zeest-site .site-shell {
  background: transparent !important;
}

/* ── Near-me, AI, misc ── */
body.zeest-site .near-me-banner {
  background: var(--violet-tint) !important;
  border: 1px solid rgba(108, 92, 231, 0.15) !important;
  border-radius: 14px !important;
}

body.zeest-site .home-ai-compact,
body.zeest-site .ai-banner {
  background: linear-gradient(120deg, var(--violet-tint), #F4F1FE) !important;
  border: none !important;
  border-radius: 18px !important;
}

/* ── Quill / rich editor ── */
body.zeest-site .ql-toolbar,
body.zeest-site .ql-container,
body.zeest-admin .ql-toolbar,
body.zeest-admin .ql-container {
  border-color: var(--line) !important;
  border-radius: 9px !important;
}

/* ── Mobile menu ── */
body.zeest-site .mobile-menu {
  background: var(--card) !important;
}

body.zeest-site .mm-nav a {
  color: var(--ink) !important;
  font-weight: 500 !important;
}

body.zeest-site .mm-footer .btn-primary {
  width: 100% !important;
  justify-content: center !important;
}

/* ================================================================
   FINAL OVERRIDES — beat app.css !important on ALL pages
   ================================================================ */

@media (min-width: 768px) {
  body.zeest-site .ftr-inner,
  body.zeest-site .foot-top {
    grid-template-columns: 1.6fr 1fr 1fr 1fr 1fr !important;
  }
}

/* Auth — split panel like mockup login.html */
body.zeest-site .site-main > .auth-page,
body.zeest-site .auth-page {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  min-height: calc(100vh - var(--header-h, 72px)) !important;
  background: var(--bg) !important;
  border: none !important;
  box-shadow: none !important;
  border-radius: 0 !important;
  overflow: hidden !important;
}

body.zeest-site .auth-form-side {
  flex: unset !important;
  width: auto !important;
  max-width: none !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  padding: clamp(1.5rem, 4vw, 3rem) clamp(1.25rem, 3vw, 2.5rem) !important;
  padding-left: max(18px, calc((100vw - 90rem) / 2 + 32px)) !important;
  background: var(--bg) !important;
}

body.zeest-site .auth-form-body {
  max-width: 400px !important;
  width: 100% !important;
}

body.zeest-site .auth-benefit-side {
  display: none !important;
  position: relative !important;
  overflow: hidden !important;
  flex-direction: column !important;
  justify-content: center !important;
  padding: clamp(2rem, 4vw, 3rem) !important;
  color: #fff !important;
  background: linear-gradient(155deg, #6C5CE7, #5847D8 60%, #4436B8) !important;
}

body.zeest-site .auth-benefit-side::before,
body.zeest-site .auth-benefit-side::after {
  display: none !important;
}

body.zeest-site .auth-benefit-inner {
  position: relative !important;
  z-index: 1 !important;
  max-width: 26rem !important;
}

body.zeest-site .auth-benefit-brand {
  font-family: inherit !important;
  font-size: 19px !important;
  font-weight: 800 !important;
  color: #fff !important;
  margin: 0 0 1rem !important;
}

body.zeest-site .auth-benefit-heading {
  font-family: inherit !important;
  font-size: clamp(1.45rem, 2.6vw, 1.95rem) !important;
  font-weight: 800 !important;
  color: rgba(255, 255, 255, 0.96) !important;
  letter-spacing: -0.02em !important;
}

body.zeest-site .auth-benefit-sub {
  color: rgba(255, 255, 255, 0.78) !important;
  font-size: 15px !important;
  line-height: 1.55 !important;
}

body.zeest-site .auth-benefit-list {
  margin-top: 1.5rem !important;
}

body.zeest-site .auth-benefit-list li {
  color: rgba(255, 255, 255, 0.92) !important;
  font-size: 14px !important;
}

body.zeest-site .auth-benefit-list i {
  color: rgba(255, 255, 255, 0.85) !important;
}

@media (min-width: 900px) {
  body.zeest-site .auth-benefit-side {
    display: flex !important;
  }
}

@media (max-width: 899px) {
  body.zeest-site .site-main > .auth-page,
  body.zeest-site .auth-page {
    grid-template-columns: 1fr !important;
  }

  body.zeest-site .auth-form-side {
    padding-left: 18px !important;
    padding-right: 18px !important;
  }
}

/* Provider profile — business.html patterns */
body.zeest-site .profile-stage {
  background: transparent !important;
  padding: 0 !important;
  margin: 0 !important;
}

body.zeest-site .profile-panel {
  background: var(--card) !important;
  border: 1px solid var(--line) !important;
  border-radius: 14px !important;
  box-shadow: none !important;
  overflow: hidden !important;
}

body.zeest-site .profile-panel__body {
  padding: 28px !important;
}

body.zeest-site .profile-biz-name {
  font-size: clamp(24px, 3vw, 32px) !important;
  font-weight: 800 !important;
  color: var(--ink) !important;
}

body.zeest-site .profile-panel__eyebrow {
  color: var(--orange) !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.04em !important;
}

body.zeest-site .profile-meta-chip {
  background: var(--violet-tint) !important;
  color: var(--violet) !important;
  border-radius: 20px !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  padding: 6px 12px !important;
}

body.zeest-site .profile-stars,
body.zeest-site .profile-rating-row .stars {
  color: var(--orange) !important;
}

body.zeest-site .profile-body {
  display: grid !important;
  grid-template-columns: 1.85fr 1fr !important;
  gap: 32px !important;
  padding-top: 32px !important;
  padding-bottom: 48px !important;
}

@media (max-width: 960px) {
  body.zeest-site .profile-body {
    grid-template-columns: 1fr !important;
  }
}

body.zeest-site .pcard {
  background: var(--card) !important;
  border: 1px solid var(--line) !important;
  border-radius: 14px !important;
  box-shadow: none !important;
  padding: 22px !important;
  margin-bottom: 24px !important;
}

body.zeest-site .pcard-head {
  font-size: 19px !important;
  font-weight: 800 !important;
  color: var(--ink) !important;
  margin-bottom: 16px !important;
}

body.zeest-site .profile-sidebar,
body.zeest-site .profile-aside {
  display: flex !important;
  flex-direction: column !important;
  gap: 16px !important;
}

body.zeest-site .profile-sidebar-card,
body.zeest-site .side-card {
  background: var(--card) !important;
  border: 1px solid var(--line) !important;
  border-radius: 14px !important;
  padding: 22px !important;
}

body.zeest-site .profile-gallery-main-wrap {
  border-radius: 14px !important;
  overflow: hidden !important;
}

body.zeest-site .profile-gallery-thumbs button,
body.zeest-site .profile-gallery-thumbs img {
  border-radius: 8px !important;
}

body.zeest-site .breadcrumb-bar {
  padding: 20px 0 0 !important;
  font-size: 13.5px !important;
  color: var(--ink-dim) !important;
  max-width: 90rem !important;
  margin: 0 auto !important;
  padding-left: 32px !important;
  padding-right: 32px !important;
}

body.zeest-site .breadcrumb-bar a {
  color: var(--violet) !important;
  font-weight: 600 !important;
}

/* Campaign / landing heroes */
body.zeest-site .lp-hero,
body.zeest-site .lp-hero--photo {
  background: var(--card) !important;
  min-height: auto !important;
  border-bottom: 1px solid var(--line) !important;
}

body.zeest-site .lp-hero--photo::before,
body.zeest-site .lp-hero--photo::after {
  display: none !important;
}

body.zeest-site .lp-hero__brand,
body.zeest-site .lp-hero__headline {
  color: var(--ink) !important;
}

body.zeest-site .lp-hero-text p {
  color: var(--ink-dim) !important;
}

/* Pricing page */
body.zeest-site .pricing-hero,
body.zeest-site .pricing-shell {
  background: transparent !important;
}

body.zeest-site .billing-plan-card,
body.zeest-site .pricing-card {
  background: var(--card) !important;
  border: 1px solid var(--line) !important;
  border-radius: 14px !important;
  box-shadow: none !important;
}

/* About / static */
body.zeest-site .about-shell,
body.zeest-site .about-intro-card,
body.zeest-site .about-step-card {
  background: var(--card) !important;
  border: 1px solid var(--line) !important;
  border-radius: 14px !important;
}

/* Blog */
body.zeest-site .blog-post-layout {
  display: grid !important;
  grid-template-columns: 1fr 280px !important;
  gap: 32px !important;
}

@media (max-width: 960px) {
  body.zeest-site .blog-post-layout {
    grid-template-columns: 1fr !important;
  }
}

/* Search / directory */
body.zeest-site .providers-grid {
  display: grid !important;
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)) !important;
  gap: 20px !important;
}

body.zeest-site .dir-header,
body.zeest-site .dir-bar {
  background: var(--card) !important;
  border-bottom: 1px solid var(--line) !important;
}

body.zeest-site .dir-header__inner h1,
body.zeest-site .dir-section__head h2 {
  color: var(--ink) !important;
  font-weight: 800 !important;
}

/* Referral landing */
body.zeest-site .referral-hero,
body.zeest-site .referral-shell {
  background: transparent !important;
}

/* Dashboard nav sidebar */
body.zeest-site .provider-nav {
  background: var(--card) !important;
  border: 1px solid var(--line) !important;
  border-radius: 14px !important;
  padding: 12px !important;
}

body.zeest-site .provider-nav a {
  color: var(--ink-dim) !important;
  font-weight: 500 !important;
  padding: 10px 12px !important;
}

/* Newsletter strip */
body.zeest-site .newsletter-strip,
body.zeest-site .newsletter-inner {
  background: var(--violet-tint) !important;
  border: 1px solid rgba(108, 92, 231, 0.15) !important;
  border-radius: 14px !important;
}

/* 404 */
body.zeest-site .error-page,
body.zeest-site .not-found-shell {
  text-align: center !important;
  padding: 64px 32px !important;
}

body.zeest-site .error-page h1 {
  font-size: clamp(48px, 8vw, 72px) !important;
  font-weight: 800 !important;
  color: var(--violet) !important;
}

/* Admin panel — all admin views */
body.zeest-admin {
  background: var(--bg) !important;
  font-family: 'Inter', system-ui, sans-serif !important;
}

body.zeest-admin .admin-layout-wrap,
body.zeest-admin .admin-content {
  background: var(--bg) !important;
}

body.zeest-admin .admin-card,
body.zeest-admin .admin-panel,
body.zeest-admin .admin-stat-card,
body.zeest-admin .card {
  background: var(--card) !important;
  border: 1px solid var(--line) !important;
  border-radius: 14px !important;
  box-shadow: none !important;
}

body.zeest-admin .admin-header {
  background: var(--card) !important;
  border-bottom: 1px solid var(--line) !important;
  box-shadow: none !important;
}

body.zeest-admin .admin-sidebar {
  background: var(--card) !important;
  border-right: 1px solid var(--line) !important;
}

body.zeest-admin .admin-nav-link {
  color: var(--ink-dim) !important;
  border-radius: 9px !important;
}

body.zeest-admin .admin-nav-link--active,
body.zeest-admin .admin-nav-link:hover {
  background: var(--violet-tint) !important;
  color: var(--violet) !important;
}

body.zeest-admin .admin-page-title,
body.zeest-admin h1 {
  color: var(--ink) !important;
  font-weight: 800 !important;
}

body.zeest-admin .btn-primary,
body.zeest-admin button.btn-primary {
  background: var(--violet) !important;
  border-radius: 9px !important;
}

body.zeest-admin table th {
  background: var(--bg) !important;
  color: var(--ink-dim) !important;
}

body.zeest-admin table td {
  border-bottom: 1px solid var(--line) !important;
}

body.zeest-admin input,
body.zeest-admin select,
body.zeest-admin textarea {
  border: 1px solid var(--line) !important;
  border-radius: 9px !important;
  background: var(--card) !important;
}
