:root {
  --acds-coral: #f36150;
  --acds-coral-dark: #dc4d3e;
  --acds-black: #080808;
  --acds-copy: #4f4f4f;
  --acds-muted: #777777;
  --acds-line: rgba(8, 8, 8, 0.12);
  --acds-white: #ffffff;
  --acds-soft: #f6f6f6;
  --acds-drawing: #f8f7fa;
  --acds-width: 1380px;
  --acds-font-heading: Helvetica, Arial, sans-serif;
  --acds-font-body: "Roboto Flex", Arial, sans-serif;
  --acds-button-radius: 8px;
  --acds-button-height: 50px;
  --acds-focus: 0 0 0 3px rgba(243, 97, 80, 0.24);
}

/* Shared typography: all three ACDS systems use the same pair and rhythm. */
.acds-homepage,
.acds-service-portfolio,
.acds-editorial-template,
.acds-advice-centre {
  font-family: var(--acds-font-body) !important;
  color: var(--acds-copy);
  -webkit-font-smoothing: antialiased;
}

.acds-homepage h1,
.acds-homepage h2,
.acds-homepage h3,
.acds-service-portfolio h1,
.acds-service-portfolio h2,
.acds-service-portfolio h3,
.acds-service-portfolio h4,
body.single-post .acds-editorial-template h1,
body.single-post .acds-editorial-template h2,
body.single-post .acds-editorial-template h3,
body.single-post .acds-editorial-template h4 {
  font-family: var(--acds-font-heading) !important;
  font-weight: 700 !important;
  color: var(--acds-black) !important;
  letter-spacing: -0.055em !important;
  word-break: normal !important;
  overflow-wrap: normal !important;
  hyphens: none !important;
}

.acds-eyebrow,
.acds-section-kicker,
body.single-post .acds-editorial-kicker {
  font-family: var(--acds-font-body) !important;
  font-size: 10px !important;
  font-weight: 800 !important;
  line-height: 1.3 !important;
  letter-spacing: 0.15em !important;
  text-transform: uppercase !important;
}

/* One shared button language: compact rectangular buttons, no pill styling. */
.acds-button,
.acds-contact-submit,
.acds-service-hero-actions .et_pb_button,
.acds-service-inline-quote-button,
.acds-service-final-cta-button,
body.single-post .acds-editorial-button,
body.single-post .acds-editorial-sidebar-card__direct-button,
body.single-post .acds-editorial-sidebar-card__form button {
  min-height: var(--acds-button-height) !important;
  border-radius: var(--acds-button-radius) !important;
  font-family: var(--acds-font-body) !important;
  font-size: 13px !important;
  font-weight: 800 !important;
  line-height: 1.2 !important;
  letter-spacing: 0.02em !important;
  text-transform: none !important;
  box-shadow: none !important;
}

.acds-button:focus-visible,
.acds-contact-submit:focus-visible,
.acds-service-hero-actions .et_pb_button:focus-visible,
.acds-service-inline-quote-button:focus-visible,
.acds-service-final-cta-button:focus-visible,
body.single-post .acds-editorial-button:focus-visible,
body.single-post .acds-editorial-sidebar-card__direct-button:focus-visible,
body.single-post .acds-editorial-sidebar-card__form button:focus-visible {
  outline: none !important;
  box-shadow: var(--acds-focus) !important;
}

.acds-button.is-coral,
.acds-contact-submit,
.acds-service-hero-actions .et_pb_button,
.acds-service-inline-quote-button,
.acds-service-final-cta-button,
body.single-post .acds-editorial-button--coral {
  border-color: var(--acds-coral) !important;
  background: var(--acds-coral) !important;
  color: #ffffff !important;
}

.acds-button.is-coral:hover,
.acds-contact-submit:hover,
.acds-service-hero-actions .et_pb_button:hover,
.acds-service-inline-quote-button:hover,
.acds-service-final-cta-button:hover,
body.single-post .acds-editorial-button--coral:hover {
  border-color: var(--acds-coral-dark) !important;
  background: var(--acds-coral-dark) !important;
  color: #ffffff !important;
  transform: none !important;
}
