/* GRrace — tiny custom CSS for things theme.json can't express */

/* Top contact bar — tighter typography + orange icons next to the items */
.grrace-topbar {
  font-size: 0.9rem;
  border-bottom: 1px solid #ececec;
}
.grrace-topbar .wp-block-paragraph,
.grrace-topbar p {
  margin: 0;
}
.grrace-topbar a {
  color: var(--wp--preset--color--text);
  text-decoration: none;
}
.grrace-topbar a:hover {
  color: var(--wp--preset--color--primary);
}
.grrace-topbar svg {
  color: var(--wp--preset--color--primary);
  vertical-align: -3px;
  margin-right: 0.5rem;
}

/* Primary nav — orange underline on hover, services dropdown */
.wp-block-navigation .wp-block-navigation-item__content:hover,
.wp-block-navigation .current-menu-item > .wp-block-navigation-item__content {
  color: var(--wp--preset--color--primary);
}

/* Hero — generous vertical padding on dark surface */
.grrace-hero {
  padding-top: clamp(4rem, 8vw, 8rem);
  padding-bottom: clamp(4rem, 8vw, 8rem);
}

/* Service / testimonial / team / pricing cards */
.grrace-card {
  background: #fff;
  border: 1px solid #ececec;
  border-radius: 8px;
  padding: 2rem;
  transition: transform 0.15s ease, box-shadow 0.15s ease;
  height: 100%;
}
.grrace-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 12px 24px -16px rgba(0, 0, 0, 0.15);
}
.grrace-card .wp-block-image {
  margin-bottom: 1.25rem;
}

/* Service icons — orange tint via CSS filter when used as <img> */
.grrace-service-icon img {
  width: 64px;
  height: 64px;
}

/* Pricing tier — big price treatment */
.grrace-price {
  font-family: var(--wp--preset--font-family--heading);
  font-size: 2.5rem;
  font-weight: 700;
  color: var(--wp--preset--color--primary);
  line-height: 1;
}
.grrace-price small {
  font-size: 0.9rem;
  color: var(--wp--preset--color--muted);
  font-weight: 500;
}

/* Footer — lighter type, links inherit muted */
.grrace-footer {
  font-size: 0.95rem;
}
.grrace-footer a {
  color: var(--wp--preset--color--light-surface);
  text-decoration: none;
}
.grrace-footer a:hover {
  color: var(--wp--preset--color--primary);
}
.grrace-footer h3,
.grrace-footer h4 {
  color: var(--wp--preset--color--white);
}

/* "Three ways to minimise tax" — big numbered headings */
.grrace-numbered-step .wp-block-heading {
  font-size: 4rem;
  color: var(--wp--preset--color--primary);
  line-height: 1;
  margin-bottom: 1rem;
}

/* Pixel-tight star image */
.grrace-stars img {
  height: 22px;
  width: auto;
}

/* Forms — Fluent Forms style overrides to match theme buttons */
.fluentform .ff-btn-submit,
.fluentform .ff-btn-primary {
  background: var(--wp--preset--color--primary) !important;
  border: none !important;
  border-radius: 999px !important;
  padding: 0.85rem 1.75rem !important;
  font-family: var(--wp--preset--font-family--heading) !important;
  font-weight: 600 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.04em !important;
  font-size: 0.875rem !important;
}
.fluentform .ff-btn-submit:hover {
  background: var(--wp--preset--color--primary-dark) !important;
}
.fluentform input[type="text"],
.fluentform input[type="email"],
.fluentform input[type="tel"],
.fluentform textarea {
  border-radius: 6px !important;
  border: 1px solid #d8d8d8 !important;
  padding: 0.85rem 1rem !important;
}
