/* Original layout, font metrics, images and brand colours are retained. */
.elementor-location-footer .elementor-element-aed9c28 a,
.elementor-location-footer .elementor-element-3b90386 a {
    color: #d0a66f;
}
.elementor-location-footer .elementor-element-aed9c28 a:hover,
.elementor-location-footer .elementor-element-3b90386 a:hover {
    color: #e3be8c;
}
/* A two-colour keyboard indicator works on both light and dark surfaces.
   Outlines/shadows do not change dimensions or mouse presentation. */
body :where(a, button, input, select, textarea, [role="button"], [tabindex]):focus-visible {
    outline: 2px solid #f0d4ab;
    outline-offset: 3px;
    box-shadow: 0 0 0 5px #242424;
}
#kr-main-content:focus { outline: none; box-shadow: none; }
html { scroll-padding-top: 210px; scroll-padding-bottom: 110px; }
@media (max-width: 1024px) {
    html { scroll-padding-top: 130px; }
}

/* Allow existing form text to wrap only where the original exceeds the viewport. */
@media (max-width: 480px) {
    .gform_wrapper .gform_button { max-width: 100%; white-space: normal; }
    .gform_wrapper legend .gfield_required { display: inline-block; }
}

/* The wallpaper form's required markers originally used dark red on charcoal. */
#gform_wrapper_2 .gfield_required { color: #ff9b8a; }

/* Validation summaries have a pale error background; retain the native panel. */
.gform_wrapper .gform_validation_errors .gform_submission_error { color: #8f1d08; }
@media (max-width: 360px) {
    #gform_wrapper_2 #field_2_7 legend .gfield_required { display: block; margin-inline-start: 0; }
}

/* Keep the existing outlined gold heading, strengthen only its outline. */
.elementor-element-9958376 .elementor-heading-title {
    text-shadow: -1px -1px 0 #333333, 1px -1px 0 #333333, -1px 1px 0 #333333, 1px 1px 0 #333333;
}
