.estimate-eyebrow {color:#0a5f9f;font-size:12px;font-weight:800;letter-spacing:.09em;margin:0 0 8px}
.home-intro .estimate-eyebrow {font-size:12px;color:#0a5f9f;margin-bottom:10px}
.home-actions {display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-top:18px}
.estimate-button {display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:11px 18px;border:1px solid #0a5f9f;border-radius:8px;background:#fff;color:#0a5f9f;font:700 15px/1.3 Roboto,system-ui,sans-serif;text-decoration:none;cursor:pointer}
.estimate-button--primary {background:#0a5f9f;color:#fff}
.estimate-button:hover {filter:brightness(.92)}
.estimate-button:disabled {cursor:default;opacity:.7}
.estimate-button:focus-visible,.estimate-close:focus-visible,.mobile-contact a:focus-visible,.mobile-contact button:focus-visible {outline:3px solid #ef9639;outline-offset:3px}
.home-services .service-tile-grid {grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.home-services .service-tile {background:#f8fbfe;border:1px solid #dce8f1;padding:14px 9px;gap:9px;align-content:start;color:#123b5a;font:700 14px/1.3 Roboto,system-ui,sans-serif;text-decoration:none;min-height:124px}
.home-services .service-tile img {width:46px;height:46px;object-fit:contain}
.home-services__more {display:inline-block;font-weight:700;color:#0a5f9f;margin-top:12px}
.home-services .service-tile:last-child {grid-column:2}
body .site-header .header-stack {grid-template-columns:minmax(0,1fr) minmax(280px,380px)}
body .site-header .logo {width:clamp(160px,18vw,240px)}
body .site-header .brand-doctor {font-size:clamp(20px,2vw,28px)}
body .site-header .brand-clinic {font-size:clamp(14px,1.3vw,17px)}
.estimate-dialog {padding:0;width:min(680px,calc(100% - 24px));max-height:calc(100dvh - 32px);border:1px solid #d5e2ee;border-radius:16px;color:#142b41;box-shadow:0 24px 80px #071f3959;overflow:auto}
.estimate-dialog::backdrop {background:#07192ab3}
.estimate-dialog__heading {display:flex;gap:16px;justify-content:space-between;padding:22px 24px 18px;background:#f2f8fc;border-bottom:1px solid #dce8f1}
.estimate-dialog__heading h2 {font-size:26px;line-height:1.2;margin:0 0 8px;color:#0b4166}
.estimate-dialog__heading p:last-child {margin:0;font-size:14px}
.estimate-close {flex:none;width:38px;height:38px;border:1px solid #ccdce8;border-radius:50%;background:#fff;color:#17466a;font-size:26px;line-height:1;cursor:pointer}
#estimateForm {padding:20px 24px}
.estimate-fields {display:grid;grid-template-columns:1fr 1fr;gap:14px}
.estimate-fields label {display:grid;gap:6px;font-size:14px;font-weight:700;min-width:0}
.estimate-fields label:has(.estimate-optional) {display:block}
.estimate-fields label:has(.estimate-optional) input {display:block;margin-top:6px}
.estimate-fields label:has(.estimate-optional) small {display:block;margin-top:6px}
.estimate-fields input,.estimate-fields select,.estimate-fields textarea {box-sizing:border-box;width:100%;min-height:44px;border:1px solid #b9cddd;border-radius:7px;padding:10px;background:#fff;color:#142b41;font:400 16px/1.4 Roboto,system-ui,sans-serif}
.estimate-fields input:focus,.estimate-fields select:focus,.estimate-fields textarea:focus {outline:2px solid #0a5f9f;outline-offset:1px}
.estimate-fields textarea {resize:vertical}
.estimate-fields input[type=file] {font-size:13px;padding:8px}
.estimate-fields small {font-size:12px;font-weight:400;line-height:1.5;color:#536b7d}
.estimate-wide {grid-column:1/-1}
.estimate-optional {font-weight:400}
.estimate-trap {position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.estimate-status {font-size:14px;line-height:1.5;margin:14px 0;color:#175b3c}
.estimate-status:empty {display:none}
.estimate-status.is-error {color:#a22525}
.estimate-actions {display:flex;gap:16px;align-items:center;justify-content:space-between;margin-top:18px;border-top:1px solid #e0eaf1;padding-top:16px}
.estimate-actions p {font-size:12px;max-width:200px;margin:0;color:#536b7d}
.estimate-actions a {color:#0a5f9f;white-space:nowrap}
.mobile-contact {display:none}
@media(max-width:900px) {body .site-header .header-stack {grid-template-columns:1fr}}
@media(max-width:700px) {
 body {padding-bottom:calc(74px + env(safe-area-inset-bottom,0px))!important}
 .floating-chat-widget {bottom:calc(84px + env(safe-area-inset-bottom,0px))}
 .floating-chat-panel {max-height:calc(100dvh - 112px)}
 .home-services .service-tile-grid {grid-template-columns:repeat(2,minmax(0,1fr))}
 .home-services .service-tile:last-child {grid-column:1/-1;min-height:100px}
 body .site-header .logo {width:170px}
 .mobile-contact {display:grid;grid-template-columns:1fr 1fr;gap:8px;position:fixed;bottom:0;left:0;right:0;z-index:800;padding:10px 12px calc(10px + env(safe-area-inset-bottom,0px));background:#fff;border-top:1px solid #d5e2ee;box-shadow:0 -4px 18px #122e4712}
 .mobile-contact a,.mobile-contact button {display:flex;align-items:center;justify-content:center;border:1px solid #0a5f9f;border-radius:7px;padding:10px 6px;min-height:44px;font:700 12px/1.3 Roboto,system-ui,sans-serif;text-decoration:none;color:#0a5f9f;background:#fff;cursor:pointer}
 .mobile-contact button {background:#0a5f9f;color:#fff}
 .estimate-dialog__heading {padding:18px 16px}
 #estimateForm {padding:16px}
 .estimate-fields {grid-template-columns:1fr;gap:12px}
 .estimate-actions {flex-direction:column-reverse;align-items:stretch;gap:12px}
 .estimate-actions p {max-width:none;text-align:center}
 .estimate-dialog__heading h2 {font-size:23px}
}
