.red-text {
    /* Darkened from pure red for WCAG AA contrast (>=4.5:1 on white). */
    color: #c62828;
}

.form-field-help-text {
    /* Darkened brand gold for WCAG AA contrast (~5:1 on white); was #b39604 (~2.9:1). */
    color: #7a6800;
}

.about-heading {
    /* Darkened brand gold to clear AA large-text contrast (>=3:1) on the cream
       about section; was #b39604 (~2.7:1 on #fbf8ec). */
    color: #9c8300;
}

/* Serve the hero background as WebP where supported, JPG fallback otherwise.
   Browsers that don't understand image-set() fall back to the plain url() line;
   the homepage also preloads the WebP so this LCP image is fetched early. */
.header10_background-image-wrapper {
    background-image: url("../images/Craig-Doonan-image.jpg");
    background-image: -webkit-image-set(
        url("../images/Craig-Doonan-image.webp") type("image/webp"),
        url("../images/Craig-Doonan-image.jpg") type("image/jpeg")
    );
    background-image: image-set(
        url("../images/Craig-Doonan-image.webp") type("image/webp"),
        url("../images/Craig-Doonan-image.jpg") type("image/jpeg")
    );
}

.w-form-done {
    display: block;
}

.mb-20 {
    margin-bottom: 20px;
}

/* -------------------------------------------------------------------------
   Accessibility: visible keyboard focus indicators (WCAG 2.4.7)
   Additive only — mouse users are unaffected (:focus-visible).
   ------------------------------------------------------------------------- */
.form_input:focus-visible,
.w-input:focus-visible,
.w-select:focus-visible,
textarea:focus-visible,
.button:focus-visible,
button:focus-visible,
.navbar2_link:focus-visible,
.footer4_link:focus-visible,
.footer4_legal-link:focus-visible {
    outline: 2px solid #1d1d1d;
    outline-offset: 2px;
}

/* The real radio/checkbox inputs are visually hidden, so surface their focus
   ring on the adjacent custom control instead. */
.form_radio:focus-within .form_radio-icon,
.form_checkbox:focus-within .form_checkbox-icon {
    outline: 2px solid #1d1d1d;
    outline-offset: 2px;
}
