/*
 * GCI accessibility styles (approved 2026-10-20; added by Exceed)
 * 1. Color contrast: WCAG 2.2 AA (4.5:1) for buttons, links, footer and copyright bar.
 * 2. Visible form labels above each Contact Form 7 field (labels already exist for screen readers),
 *    plus the theme's intended side-by-side layout for paired fields (CF7 wraps each row in a <p>).
 * 3. Slimmer keyboard focus outline for form fields (the 3px ring + white halo in functions.php suits links/buttons).
 */
/* teal #06A0AE -> #05808B (white text 3.16 -> 4.70) */
.button, .wpcf7-form .wpcf7-submit, .accordion button:not(.collapsed), .service-tabs .nav a.active { background:#05808B !important; border-color:#05808B !important; }
.slick-dots li.slick-active button { background:#05808B !important; }
/* hover green #179E85 -> #117663 (white text 3.4 -> 5.5) */
.button:hover, .wpcf7-form .wpcf7-submit:hover, .button.orange-button:hover { background:#117663 !important; border-color:#117663 !important; }
/* body links #30A0AE -> #057B86 on cream (2.82 -> 4.56) */
a, .form-section ul li i { color:#057B86; }
.jq-file:hover .jq-file__browse, .jq-file:active .jq-file__browse { background:#057B86 !important; }
/* footer green #179E85 -> #117663, text #D1CFBC -> #F0EDD5 (2.13 -> 4.68) */
footer#footer { background:#117663 !important; }
footer#footer p, footer#footer ul li, footer#footer a, footer#footer .textwidget { color:#F0EDD5 !important; }
footer#footer ul li i { color:#117663 !important; }
/* orange bar: keep #DA9A48, dark text #303030 (2.04 -> 5.47) */
footer#footer .copyright, footer#footer .copyright a { color:#303030 !important; }
.button.orange-button { color:#303030 !important; }
/* VISIBLE FORM LABELS preview: show the existing (screen-reader) labels above each field */
.wpcf7-form label.sr-only { position:static !important; width:auto !important; height:auto !important; margin:14px 0 4px !important; padding:0 !important; overflow:visible !important; clip:auto !important; white-space:normal !important; display:block; text-align:left; font-size:14px; font-weight:700; color:#303030; }
.wpcf7 .d-flex.two-input > p { display:grid; grid-template-columns:49% 49%; grid-template-rows:auto auto; grid-auto-flow:column; justify-content:space-between; width:100%; margin:0; }
.wpcf7 .d-flex.two-input > p > span { width:auto !important; }
.wpcf7 .d-flex.two-input > p > br, .wpcf7 .d-flex > p > br { display:none; }
.wpcf7 .d-flex:not(.two-input) > p { width:100%; margin:0; }
@media (max-width: 767px) { .wpcf7 .d-flex.two-input > p { grid-template-columns:100%; grid-auto-flow:row; grid-template-rows:none; } }

/* form-field focus: 2px outline on the field edge, no halo */
.wpcf7-form input:focus-visible, .wpcf7-form textarea:focus-visible { outline:2px solid #0b4f57; outline-offset:0; box-shadow:none; }
.wpcf7-form .jq-file:focus-within { outline:2px solid #0b4f57; outline-offset:0; box-shadow:none; }
.wpcf7-form .wpcf7-submit:focus-visible { outline:3px solid #0b4f57; outline-offset:2px; box-shadow:0 0 0 5px #fff; }
