/* v4.8 service-led callback popup; deliberately limited to the homepage dialog. */
body.sm48-book-open{overflow:hidden}
.sm48-modal[hidden]{display:none!important}
.sm48-modal{position:fixed;z-index:99998;inset:0;display:grid;place-items:center;padding:18px;color:#17343d}
.sm48-modal-shade{position:absolute;inset:0;background:rgba(5,18,29,.76);backdrop-filter:blur(7px)}
.sm48-modal-panel{position:relative;background:#f7fafb;box-shadow:0 30px 95px #0005;border-radius:20px;width:min(670px,100%);max-height:min(92dvh,950px);overflow-y:auto;overscroll-behavior:contain;outline:none;padding:22px 22px 20px}
.sm48-modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:15px;margin-bottom:14px}
.sm48-modal-head span{color:#b77b2e;font-size:10px;font-weight:900;letter-spacing:.16em}
.sm48-modal-head h2{font-size:clamp(21px,3vw,27px);color:#153443;line-height:1.2;margin:5px 0 6px;letter-spacing:-.035em}
.sm48-modal-head p{font-size:12px;margin:0;color:#56727f}
.sm48-modal-head>button{flex:none;display:grid;place-items:center;width:35px;height:35px;border-radius:50%;border:1px solid #dce8eb;background:#fff;color:#183946;font-size:24px;cursor:pointer}
.sm48-service-nav{display:grid;grid-template-columns:31px minmax(0,1fr) 31px;gap:7px;align-items:center}
.sm48-service-nav>button{height:45px;border-radius:10px;background:white;color:#21505f;border:1px solid #dfebec;font-size:24px;cursor:pointer}
.sm48-service-slider{display:flex;gap:9px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin;padding:5px 1px 12px}
.sm48-service-option{flex:0 0 128px;min-height:87px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;background:#fff;border:2px solid #e2e9ec;border-radius:12px;font-size:11px;font-weight:850;color:#21404e;line-height:1.3;cursor:pointer;text-align:center;padding:9px 7px;scroll-snap-align:start}
.sm48-service-option span{font-size:23px;line-height:1.15}
.sm48-service-option[aria-pressed="true"]{background:#e5f5f1;border-color:#0c8676;box-shadow:0 4px 13px #0b776e20}
.sm48-service-option:focus-visible,.sm48-modal button:focus-visible,.sm48-modal input:focus-visible{outline:3px solid #ffc263;outline-offset:2px}
.sm48-book-selected{background:#eef4f5;border:1px solid #d7e7e9;border-radius:9px;padding:9px 12px;margin:2px 0 12px;font-size:12px;color:#506e78}
.sm48-book-selected strong{color:#125a51}
.sm48-form-shell .sm-crm-lead-form{max-width:none!important;width:100%!important;margin:0!important;border-radius:13px!important;padding:15px!important;min-height:0!important;box-shadow:none!important;background:#fff!important;overflow:visible!important}
.sm48-form-shell .sm-v24-form-heading{margin:0 0 10px!important}
.sm48-form-shell .sm-v24-fields{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px!important}
.sm48-form-shell .sm-v24-fields label:last-child{grid-column:1/-1}
.sm48-form-shell .sm-v24-fields label{width:auto!important;min-width:0;color:#1b3c46!important}
.sm48-form-shell .sm-v24-fields input{width:100%!important;box-sizing:border-box}
.sm48-form-shell .sm-v24-submit{min-height:44px!important;margin-top:12px!important}
.sm48-form-shell .sm-v24-field-label small{font-size:10px;font-weight:500;color:#6a7d84}
@media(max-width:540px){.sm48-modal{padding:9px}.sm48-modal-panel{max-height:96dvh;border-radius:13px;padding:14px}.sm48-service-option{flex-basis:104px;min-height:78px;font-size:10px}.sm48-form-shell .sm-v24-fields{grid-template-columns:1fr}.sm48-form-shell .sm-v24-fields label:last-child{grid-column:auto}.sm48-modal-head h2{font-size:21px}.sm48-modal-head p{font-size:11px}.sm48-form-shell .sm-crm-lead-form{padding:12px!important}}
@media(prefers-reduced-motion:reduce){.sm48-service-slider{scroll-behavior:auto}}
