/* Fair E Web Host cross-site UI consistency layer */
:root {
  --fwh-brand: #15803d;
  --fwh-brand-dark: #0f5f2d;
  --fwh-accent: #0369a1;
  --fwh-ink: #172033;
  --fwh-muted: #64748b;
  --fwh-surface: #ffffff;
  --fwh-soft: #f6f9f7;
  --fwh-border: #dbe4ec;
  --fwh-focus: #f59e0b;
  --fwh-radius: 14px;
  --fwh-shadow: 0 12px 34px rgba(15, 31, 52, .09);
}
html { scroll-behavior: smooth; }
body {
  overflow-x: hidden;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
}
img, svg { max-width: 100%; }
:where(a, button, input, select, textarea, summary, [tabindex]):focus-visible {
  outline: 3px solid var(--fwh-focus) !important;
  outline-offset: 2px !important;
}
header {
  isolation: isolate;
  box-shadow: 0 1px 0 rgba(15, 31, 52, .08);
}
header .brand img,
header .logo img,
header img[alt*="Fair E Web Host"] {
  object-fit: contain;
}
header nav a, header .nav__link {
  text-underline-offset: 4px;
}
header nav a:not(.btn):not(.btn-primary):not(.btn-plan),
header .nav__link {
  min-height: 42px;
  display: inline-flex;
  align-items: center;
}
.btn, .btn-primary, .btn-plan, [class*="btn-"] {
  min-height: 42px;
}
.pricing-card, .package-card, .service-card, .feature-card {
  border-radius: var(--fwh-radius);
}
.pricing-card, .package-card {
  box-shadow: 0 8px 26px rgba(15, 31, 52, .07);
}
.pricing-card:hover, .package-card:hover {
  box-shadow: var(--fwh-shadow);
}
footer {
  border-top: 1px solid rgba(148, 163, 184, .22);
}
footer a { text-underline-offset: 3px; }
footer a:hover { text-decoration: underline; }
.fwh-client-nav-item .fwh-client-link,
.fwh-header-client { white-space: nowrap; }
[data-catalog-status="synced"] { --fwh-catalog-state: synced; }
[data-catalog-status="unmatched"] { --fwh-catalog-state: stale; }
@media (max-width: 820px) {
  header nav ul { gap: .35rem; }
  .fwh-client-nav-item { width: 100%; }
  .fwh-client-nav-item a { display: flex; width: 100%; justify-content: center; }
  footer .footer-grid { row-gap: 1.5rem; }
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    scroll-behavior: auto !important;
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .01ms !important;
  }
}

/* Unified storefront/billing bridge states */
.fwh-footer-utility {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: .55rem 1rem;
  max-width: 1180px;
  margin: 1.5rem auto 0;
  padding: 1rem 1.25rem;
  border-top: 1px solid rgba(148, 163, 184, .25);
  font-size: .9rem;
}
.fwh-footer-utility a { color: inherit; text-decoration-thickness: 1px; text-underline-offset: 3px; }
.fwh-footer-utility a:hover { text-decoration: underline; }
.fwh-header-tools { display: inline-flex; align-items: center; margin-inline-start: .75rem; }
.fwh-client-link { white-space: nowrap; }
.pricing-card[data-catalog-status="unmatched"] { border-style: dashed; }
.fwh-catalog-warning {
  margin: .65rem 0 1rem;
  padding: .65rem .75rem;
  border-radius: 10px;
  background: #fff7ed;
  color: #9a3412;
  font-size: .83rem;
  line-height: 1.4;
  font-weight: 650;
}
@media (max-width: 720px) {
  .fwh-footer-utility { justify-content: flex-start; }
  .fwh-header-tools { display: flex; width: 100%; margin: .6rem 0 0; }
}
