/* Small additions inherit the approved customer website's typography. */
.staff-footer-link{font:inherit;color:inherit;text-decoration:none}.staff-footer-link:hover{text-decoration:underline;text-underline-offset:4px}.staff-footer-link:focus-visible{outline:2px solid currentColor;outline-offset:5px}.cleaner-choice{margin:20px 0}.cleaner-choice-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding-top:12px}.cleaner-choice-list label{display:flex;align-items:center;gap:8px;font-size:14px}.cleaner-choice-list input{width:18px;height:18px;accent-color:#112d2e}.customer-error{padding:14px;border-radius:12px;background:#ffe5df;color:#8a261c;margin:12px 0;font-size:15px}.customer-success{padding:18px;border-radius:12px;background:#e8f2cf;border:1px solid #a0bb73;margin:14px 0;font-size:15px}.customer-success p{margin:8px 0}.send:disabled{opacity:.6;cursor:wait}.booking-card select option:disabled{color:#777}.site footer>div{flex-wrap:wrap;row-gap:12px}.site footer a{white-space:nowrap}@media(max-width:680px){.site footer>div{justify-content:center}.staff-footer-link{display:inline-flex;align-items:center;min-height:36px}}

.phone-validation{display:block;font-size:14px;line-height:1.6;color:#9a2f1c;margin-top:6px}.phone-validation:empty{display:none}.phone-format-hint{display:block;font-size:14px;line-height:1.6;color:#3f5b59;margin-top:6px}
.booking-time-field{min-width:0}.booking-time-field label{display:flex;flex-direction:column;gap:8px}.booking-availability-note{font-size:14px;line-height:1.6;color:#3f5b59;margin:8px 0 0}.booking-availability-note:empty{display:none}.booking-availability-note.error{color:#9a2f1c}.availability-retry{font:inherit;min-height:44px;padding:8px 16px;margin-top:8px;border:1px solid #112d2e;border-radius:10px;background:transparent;color:#112d2e;cursor:pointer}.availability-retry:focus-visible{outline:2px solid #112d2e;outline-offset:3px}.booking-card select:disabled{opacity:.75}.send:disabled{cursor:not-allowed}

/* Longer approved policy copy retains the existing Perfect Hands theme. */
.legal-trial-note{width:min(1180px,calc(100% - 48px));margin:24px auto 0;padding:16px 20px;background:#fff3e8;border-inline-start:4px solid var(--coral);font-size:1rem;line-height:1.8;box-sizing:border-box}
.legal-hero-page h1{font-size:clamp(2rem,4.4vw,4.25rem);line-height:1.3;letter-spacing:normal;overflow-wrap:anywhere}
.legal-paper p,.legal-paper li{overflow-wrap:anywhere}
.legal-index{max-height:calc(100vh - 40px);overflow-y:auto}
.legal-contact-card{flex-wrap:wrap}
.legal-contact-card .legal-email{padding:8px 0;min-height:44px;justify-content:flex-start;color:var(--mint);text-decoration:underline;text-underline-offset:4px;overflow-wrap:anywhere;font-size:1rem}
.legal-email bdi{white-space:normal;overflow-wrap:anywhere}
.legal-call span{font-size:.875rem}
.terms-consent input{flex-shrink:0;min-width:20px;min-height:20px}
@media(max-width:680px){.legal-index{position:static;max-height:none}.legal-trial-note{width:calc(100% - 32px)}.legal-contact-card>div{min-width:0;max-width:100%}.legal-contact-card>div:last-child{flex-wrap:wrap}.legal-tabs a{padding:10px 8px;overflow-wrap:anywhere}.legal-header{gap:12px}.legal-header .brand strong{font-size:1rem}}

.cleaner-choice-avatar{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;flex:0 0 36px;border-radius:50%;background:#edf3ef;color:#365b49}.cleaner-choice-avatar img{width:100%;height:100%;object-fit:cover;border-radius:50%}
