/* Black and light grey surfaces with soft gold calls and teal accents. */
body.homepage-refresh {
  --cream: #f3f4f4;
  --body: #51565a;
  --line: #dcdfe1;
  --gold: #ecc059;
  --gold-hover: #f9d37c;
  --accent: #08767d;
  --accent-soft: #e2f4f2;
}

.homepage-refresh :focus-visible {
  outline-color: var(--accent);
}

.homepage-refresh .hero-review-badge:hover {
  background: #f4f5f5;
}

.homepage-refresh .trust-strip {
  background: #f3f4f4;
  border-bottom-color: #dfe2e4;
}

.homepage-refresh .trust-grid > div + div {
  border-left-color: #d8dcde;
}

.homepage-refresh .trust-grid span,
.homepage-refresh .coverage-note p {
  color: #60666a;
}

.homepage-refresh .service-card:hover {
  border-color: #4babae;
}

.homepage-refresh .service-icon {
  background: var(--accent-soft);
  color: var(--accent);
}

.homepage-refresh .services-note {
  color: #63696e;
}

.homepage-refresh .services-note a,
.homepage-refresh .faq-help > .text-link {
  color: var(--accent);
}

.homepage-refresh .review-card {
  border-color: #dfe2e4;
}

.homepage-refresh .review-initials {
  background: var(--accent-soft);
  color: var(--accent);
}

.homepage-refresh .circle-button {
  border-color: #99c9c8;
  background: #e7f3f2;
  color: var(--accent);
}

.homepage-refresh .circle-button:hover:not(:disabled) {
  border-color: var(--accent);
  background: var(--accent);
  color: #fff;
}

.homepage-refresh .review-dot::before,
.homepage-refresh .service-dot::before {
  background: #c9ced1;
}

.homepage-refresh .review-dot[aria-current=true]::before,
.homepage-refresh .review-dot:hover::before,
.homepage-refresh .service-dot[aria-current=true]::before,
.homepage-refresh .service-dot:hover::before {
  background: var(--accent);
}

.homepage-refresh .why-list article > .icon,
.homepage-refresh .property-title > .icon,
.homepage-refresh .coverage-note > .icon,
.homepage-refresh .step-number {
  color: var(--accent);
}

.homepage-refresh .property-section {
  background: #f1f3f4;
}

.homepage-refresh .process-grid article {
  border-top-color: #9bcac7;
}

.homepage-refresh .faq-section {
  background: #f6f7f7;
  border-top-color: #e0e3e5;
}

.homepage-refresh .faq-list,
.homepage-refresh .faq-list details {
  border-color: #d1d7db;
}

.homepage-refresh .faq-list summary:hover {
  color: var(--accent);
}

.homepage-refresh .faq-plus {
  color: var(--accent);
}

.homepage-refresh .urgent-icon,
.homepage-refresh .enquiry-icon {
  color: #e5bf64;
}

.homepage-refresh .hero-image-label {
  right: 0;
}

.homepage-refresh .label-line {
  flex-shrink: 0;
}

/* Preserve the desktop FAQ columns while keeping help after the questions in source order. */
.homepage-refresh .faq-grid {
  grid-template-areas: "heading list" "help list";
  grid-template-rows: min-content 1fr;
  row-gap: 0;
}

.homepage-refresh .faq-heading {
  grid-area: heading;
}

.homepage-refresh .faq-list {
  grid-area: list;
}

.homepage-refresh .faq-help {
  grid-area: help;
  align-self: start;
}

.homepage-refresh .faq-help > p {
  font-size: 16px;
  color: var(--body);
  line-height: 1.65;
  margin-top: 24px;
}

.homepage-refresh .faq-help > .text-link {
  margin-top: 11px;
  gap: 10px;
}

.homepage-refresh .faq-help > .text-link .icon {
  width: 18px;
  height: 18px;
}

@media (max-width: 800px) {
  .homepage-refresh .hero-actions .button {
    justify-content: center;
  }

  .homepage-refresh .hero-actions .button > .icon:first-child {
    margin-right: 0;
  }

  .homepage-refresh .faq-grid {
    grid-template-areas: "heading" "list" "help";
    grid-template-rows: auto auto auto;
    row-gap: 27px;
  }

  .homepage-refresh .faq-help > p {
    margin-top: 0;
  }

  .homepage-refresh .faq-help > p br {
    display: none;
  }

  .homepage-refresh .faq-help > .text-link {
    margin-top: 8px;
  }
}

@media (max-width: 600px) {
  .homepage-refresh .faq-grid {
    row-gap: 24px;
  }
}

@media (max-width: 359px) {
  .homepage-refresh .hero-visual {
    padding-bottom: 50px;
  }
}
