/* Small functional additions to the original layout and colors. */
.phone-link { color: inherit; text-decoration: underline; text-underline-offset: .15em; }
.tub-photos { border: 1.5px solid #dce4ee; border-radius: 10px; padding: 1rem; min-width: 0; }
.tub-photos legend { padding: 0 .4rem; font-weight: 700; color: #2A4A7F; }
.tub-photos legend span { font-weight: 400; font-size: .85rem; }
.tub-photos p { font-size: .82rem; line-height: 1.6; color: #5a6a7e; }
.photo-fields { display: grid; gap: .8rem; margin-top: .8rem; }
.photo-fields label { display: block; margin-bottom: .3rem; }
.photo-fields input[type=file] { width: 100%; min-width: 0; font-size: .85rem; padding: .6rem; background: #f5f8fc; }
.photo-fields input::file-selector-button { cursor: pointer; border: 0; border-radius: 6px; background: #2A4A7F; color: #fff; font: inherit; padding: .6rem; margin: 0 .6rem 0 0; }
.photo-fields button { cursor: pointer; background: transparent; color: #2A4A7F; border: 0; text-decoration: underline; font: inherit; font-size: .8rem; padding: .4rem 0; }
.photo-status { margin-top: .6rem; }
.photo-status.is-error { color: #b3261e; }
.email-form-note { color: #5a6a7e; font-size: .75rem; line-height: 1.6; margin-top: .8rem; }
.email-form-note a { text-decoration: underline; }
.referral-consent { display: flex !important; align-items: flex-start; gap: .6rem; margin: 1rem 0; color: #2A4A7F; font-size: .8rem; line-height: 1.6; }
.referral-consent input { flex: 0 0 18px; width: 18px !important; height: 18px; min-height: 18px !important; margin-top: .2rem !important; accent-color: #2A4A7F; }
button:disabled { cursor: wait; opacity: .8; }
[hidden] { display: none !important; }
.drawer-links a.active { background: #fff3eb; color: #b34700; }

.footer-businesses-link { margin-top: .75rem; }
.footer-businesses-link a { display: inline-flex; align-items: center; min-height: 44px; color: inherit; }
