.estimate-modal{width:min(100% - 40px,1020px);max-height:calc(100dvh - 40px);margin:auto;padding:0;overflow:hidden;border:0;border-radius:10px 42px 10px 10px;background:#f7f5ef;box-shadow:0 32px 90px rgba(11,13,14,.32);color:#0b0d0e}.estimate-modal::backdrop{background:rgba(14,16,16,.72);backdrop-filter:blur(7px);-webkit-backdrop-filter:blur(7px)}.estimate-modal__panel{position:relative;display:grid;grid-template-columns:minmax(250px,.72fr) minmax(480px,1.28fr);gap:clamp(28px,4vw,52px);align-items:center;min-height:0;max-height:none;margin:0;padding:clamp(28px,3.4vw,44px);overflow:hidden;border-radius:10px 34px 10px 10px}.estimate-modal__close{position:absolute;z-index:3;top:24px;right:24px;display:grid;width:46px;height:46px;margin:0;place-items:center;padding:0;border:1px solid #d5d2c8;border-radius:50%;background:#fff;color:var(--red);transition:background-color .2s ease,color .2s ease,transform .2s ease}.estimate-modal__close:hover{background:var(--red);color:#fff;transform:rotate(5deg)}.estimate-modal__close svg{width:20px;height:20px}.estimate-modal__heading{align-self:start;max-width:320px;padding:18px 0 0}.estimate-modal__heading h2{margin-top:13px;font-size:clamp(42px,4.2vw,58px);line-height:.94}.estimate-modal__heading p{max-width:300px;margin-top:16px;color:#5d625f;font-size:14px;line-height:1.6}.estimate-modal .quote-form{margin:30px 0 0;padding:24px 26px 22px;border:1px solid rgba(17,17,17,.14);border-top:3px solid var(--red);border-radius:0;background:rgba(248,247,242,.975);box-shadow:0 22px 54px rgba(11,13,14,.1)}.estimate-modal .modal-estimate-form .form-grid{grid-template-columns:1fr 1fr;gap:10px 12px}.estimate-modal .modal-estimate-form .field{gap:5px;color:#343633;font-family:Inter,Arial,sans-serif;font-size:10px;font-weight:700;letter-spacing:.045em;line-height:1.2;text-transform:uppercase}.estimate-modal .modal-estimate-form .field input{min-height:44px;padding:9px 11px;border:1px solid #c4c6bf;border-radius:0;background:#fff;color:#171817;font-family:Inter,Arial,sans-serif;font-size:15px;font-weight:450;letter-spacing:0;text-transform:none}.estimate-modal .quote-form .button{position:relative;justify-content:center;min-height:48px;margin-top:14px;width:100%;font-family:Inter,Arial,sans-serif;font-size:12px;font-weight:800;letter-spacing:.065em;text-transform:uppercase}.estimate-modal .quote-form .button svg{position:absolute;right:17px}.estimate-modal .sms-consent{gap:7px;margin-top:12px;padding-top:11px}.estimate-modal .sms-consent label{font-size:11.5px;line-height:1.34}.estimate-modal .sms-consent p{font-size:10.5px;line-height:1.32}.estimate-modal .form-note{margin-top:10px;font-size:10px;line-height:1.4}@media (max-width:800px){.estimate-modal{width:calc(100% - 16px);max-height:calc(100dvh - 16px);border-radius:8px 30px 8px 8px}.estimate-modal__panel{display:block;max-height:none;margin:0;padding:18px 16px;border-radius:8px 26px 8px 8px}.estimate-modal__close{top:14px;right:14px;width:40px;height:40px}.estimate-modal__heading{max-width:none;padding:0 48px 0 0}.estimate-modal__heading h2{margin-top:8px;font-size:clamp(31px,9vw,38px)}.estimate-modal__heading p{max-width:310px;margin-top:10px;font-size:12px;line-height:1.45}.estimate-modal .quote-form{margin-top:15px;padding:15px 14px 14px}.estimate-modal .modal-estimate-form .form-grid{grid-template-columns:1fr 1fr;gap:8px 9px}.estimate-modal .modal-estimate-form .field{grid-column:auto}.estimate-modal .modal-estimate-form .field.wide{grid-column:1/-1}.estimate-modal .modal-estimate-form .field{gap:4px;font-size:8px}.estimate-modal .modal-estimate-form .field input{min-height:39px;padding:7px 9px;font-size:13px}.estimate-modal .sms-consent{gap:6px;margin-top:10px;padding-top:9px}.estimate-modal .sms-consent legend{font-size:9px}.estimate-modal .sms-consent label{grid-template-columns:16px minmax(0,1fr);gap:7px;font-size:10.5px;line-height:1.3}.estimate-modal .sms-consent input{width:16px;height:16px}.estimate-modal .sms-consent p{font-size:9.5px;line-height:1.3}.estimate-modal .quote-form .button{min-height:44px;margin-top:11px;font-size:11px}.estimate-modal .form-note{margin-top:8px;font-size:9px;line-height:1.35}}@media (max-width:800px) and (max-height:650px){.estimate-modal__panel{padding-block:12px}.estimate-modal__heading .eyebrow{font-size:8px}.estimate-modal__heading h2{font-size:29px}.estimate-modal__heading p{display:none}.estimate-modal .quote-form{margin-top:10px;padding-block:12px}.estimate-modal .modal-estimate-form .field input{min-height:36px}.estimate-modal .sms-consent{margin-top:8px}.estimate-modal .sms-consent p{font-size:8.5px}.estimate-modal .form-note{display:none}}@media (prefers-reduced-motion:reduce){.estimate-modal__close{transition:none}.estimate-modal__close:hover{transform:none}}.customer-chat{position:fixed;right:24px;bottom:96px;z-index:70;font-family:Inter,Arial,sans-serif}.customer-chat__trigger{margin-left:auto;display:flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:0 18px;border:0;border-radius:999px;background:#101214;color:#fff;box-shadow:0 14px 34px rgba(16,18,20,.25);font-size:12px;font-weight:800}.customer-chat__trigger:hover{background:#292d30}.customer-chat__trigger svg{width:19px}.customer-chat__panel{position:absolute;right:0;bottom:66px;width:min(390px,calc(100vw - 32px));height:min(650px,calc(100svh - 150px));display:flex;flex-direction:column;overflow:hidden;border:1px solid #d8d7d1;border-radius:18px;background:#fff;box-shadow:0 26px 75px rgba(16,18,20,.24);color:#17191b}.customer-chat__header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 20px;border-bottom:1px solid #e3e2dd;background:#101214;color:#fff}.customer-chat__header span,.customer-chat__header strong{display:block}.customer-chat__header strong{font-size:14px}.customer-chat__header span{margin-top:4px;color:#c5c9cc;font-size:10px}.customer-chat__header span:before{content:"";display:inline-block;width:7px;height:7px;margin-right:7px;border-radius:50%;background:#f0a43b}.customer-chat__header span.is-online:before{background:#25c983}.customer-chat__header button{display:grid;place-items:center;width:36px;height:36px;border:1px solid #ffffff2d;border-radius:50%;background:transparent;color:#fff}.customer-chat__header svg{width:18px}.customer-chat__body{flex:1 1;overflow:auto;padding:24px}.customer-chat__eyebrow{display:block;color:var(--red);font-size:10px;font-weight:850;letter-spacing:.12em;text-transform:uppercase}.customer-chat__body h2{margin:10px 0;font-family:Inter,Arial,sans-serif;font-size:30px;font-weight:750;letter-spacing:-.045em;line-height:1.05}.customer-chat__body>p{color:#61686c;font-size:13px;line-height:1.55}.customer-chat__topics{display:grid;gap:9px;margin-top:22px}.customer-chat__topics button{display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;padding:16px;border:1px solid #dbdad5;border-radius:10px;background:#fff;text-align:left}.customer-chat__topics button:hover{border-color:#ef2922;background:#fff8f6}.customer-chat__topics small,.customer-chat__topics strong{display:block}.customer-chat__topics strong{font-size:13px}.customer-chat__topics small{margin-top:5px;color:#71787c;font-size:10px;line-height:1.4}.customer-chat__topics svg{width:17px;color:var(--red)}.customer-chat__hours{display:flex;gap:12px;align-items:flex-start;margin-top:20px;padding:14px;border-radius:10px;background:#f4f3ef}.customer-chat__hours svg{width:18px;color:#555e63}.customer-chat__hours small,.customer-chat__hours strong{display:block}.customer-chat__hours strong{font-size:11px}.customer-chat__hours small{margin-top:4px;color:#747b7f;font-size:9px;line-height:1.4}.customer-chat__back{margin:0 0 16px;padding:0;border:0;background:none;color:#697176;font-size:11px;font-weight:750}.customer-chat__form{display:block}.customer-chat__form label{display:grid;gap:7px;margin-top:15px;font-size:11px;font-weight:800}.customer-chat__form input,.customer-chat__form textarea{width:100%;min-height:44px;padding:11px 12px;border:1px solid #c9ccce;border-radius:7px;background:#fff;color:#17191b;outline:none;font:inherit}.customer-chat__form textarea{resize:none}.customer-chat__form input:focus,.customer-chat__form textarea:focus{border-color:#626a6e;box-shadow:0 0 0 3px rgba(16,18,20,.08)}.customer-chat__split{display:grid;grid-template-columns:1fr 1fr;gap:10px}.customer-chat__form .customer-chat__consent{margin-top:14px;color:#6b7276;font-size:9px;line-height:1.5}.customer-chat__consent a{text-decoration:underline}.customer-chat__primary{display:flex;align-items:center;justify-content:space-between;gap:18px;width:100%;min-height:48px;margin-top:18px;padding:0 16px;border:0;border-radius:7px;background:var(--red);color:#fff;font-size:11px;font-weight:850}.customer-chat__primary:disabled{opacity:.6}.customer-chat__primary svg{width:18px}.customer-chat__error{margin:10px 20px;padding:10px;border-left:3px solid var(--red);background:#fff2ed;color:#8f211b;font-size:10px;line-height:1.45}.customer-chat__conversation{display:flex;flex:1 1;min-height:0;flex-direction:column;background:#f5f4f1}.customer-chat__messages{flex:1 1;overflow:auto;padding:18px;display:flex;flex-direction:column;gap:10px}.customer-chat__welcome{padding:12px;border-radius:9px;background:#eaf7f1;color:#275849;text-align:center}.customer-chat__welcome span,.customer-chat__welcome strong{display:block}.customer-chat__welcome strong{font-size:11px}.customer-chat__welcome span{margin-top:4px;font-size:9px}.customer-chat__message{align-self:flex-start;max-width:82%;padding:10px 12px;border:1px solid #deded9;border-radius:10px 10px 10px 2px;background:#fff}.customer-chat__message.customer{align-self:flex-end;border-color:#101214;border-radius:10px 10px 2px 10px;background:#101214;color:#fff}.customer-chat__message.system{align-self:center;max-width:94%;padding:6px 10px;border:0;border-radius:999px;background:#e5e4df;color:#636a6e;text-align:center}.customer-chat__message p{margin:0;font-size:12px;line-height:1.45}.customer-chat__message.system p{font-size:9px;font-weight:800}.customer-chat__message span{display:block;margin-top:5px;font-size:8px;opacity:.65}.customer-chat__composer{display:grid;grid-template-columns:1fr 42px;gap:8px;padding:12px;border-top:1px solid #dddcd6;background:#fff}.customer-chat__composer textarea{resize:none;width:100%;padding:10px;border:1px solid #c9ccce;border-radius:8px;outline:none;font-size:12px}.customer-chat__composer button{display:grid;place-items:center;border:0;border-radius:8px;background:var(--red);color:#fff}.customer-chat__received{text-align:center}.customer-chat__received>svg{width:44px;height:44px;margin:10px auto 20px;color:#208d60}.customer-chat__received .customer-chat__hours{text-align:left}.customer-chat__received .customer-chat__primary{justify-content:center}body:has(.customer-chat.is-open) .floating-estimate{opacity:0;pointer-events:none;transform:translateY(12px)}.customer-chat{bottom:24px}.customer-chat__panel{height:min(700px,calc(100svh - 104px))}.customer-chat__form{padding:20px;overflow:hidden}.customer-chat__form .customer-chat__back{margin-bottom:10px}.customer-chat__form h2{margin:7px 0;font-size:28px}.customer-chat__form>p{font-size:12px;line-height:1.4}.customer-chat__form label{gap:5px;margin-top:11px}.customer-chat__form input,.customer-chat__form textarea{min-height:41px;padding:9px 10px}.customer-chat__form textarea{height:62px;min-height:62px}.customer-chat__form .customer-chat__consent{margin-top:9px;line-height:1.35}.customer-chat__form .customer-chat__primary{min-height:44px;margin-top:11px}.customer-chat__body,.customer-chat__messages{scrollbar-width:none}.customer-chat__body::-webkit-scrollbar,.customer-chat__messages::-webkit-scrollbar{display:none}.customer-chat__header button{transition:background-color .18s ease,border-color .18s ease,color .18s ease,transform .18s ease}.customer-chat__header button:hover{border-color:var(--red);background:var(--red);color:#fff;transform:rotate(5deg)}.customer-chat__trigger{background:var(--red);transition:background-color .18s ease,transform .18s ease,box-shadow .18s ease}.customer-chat__trigger:hover{background:#be1710;transform:translateY(-2px);box-shadow:0 18px 40px rgba(239,41,34,.3)}.customer-chat__topics-view>p{margin-top:12px}.customer-chat__topics-view .customer-chat__topics{margin-top:20px}@media(max-width:850px){.customer-chat{right:14px;bottom:14px}.customer-chat__trigger{min-width:54px;min-height:54px;padding:0 16px}.customer-chat__panel{position:fixed;inset:8px;width:auto;height:auto;max-height:none;border-radius:16px}.customer-chat__header{padding:13px 16px}.customer-chat__header button{width:34px;height:34px}.customer-chat__body{padding:16px}.customer-chat__body h2{margin:6px 0 7px;font-size:25px;line-height:1}.customer-chat__body>p{font-size:11px;line-height:1.4}.customer-chat__back{margin-bottom:9px}.customer-chat__form{overflow:hidden}.customer-chat__form label{gap:4px;margin-top:9px;font-size:10px}.customer-chat__form input,.customer-chat__form textarea{min-height:39px;padding:8px 10px}.customer-chat__form textarea{height:56px;min-height:56px}.customer-chat__split{grid-template-columns:1fr 1fr;gap:9px}.customer-chat__form .customer-chat__consent{margin-top:8px;font-size:8px;line-height:1.35}.customer-chat__primary{min-height:44px;margin-top:10px}.customer-chat__topics{margin-top:16px}.customer-chat__hours{margin-top:14px}}@media(max-width:370px){.customer-chat__panel{inset:5px}.customer-chat__header{padding:10px 13px}.customer-chat__body{padding:13px}.customer-chat__body h2{font-size:22px}.customer-chat__form label{margin-top:7px}.customer-chat__form input,.customer-chat__form textarea{min-height:36px;padding:7px 9px}.customer-chat__form textarea{height:48px;min-height:48px}.customer-chat__form .customer-chat__consent{font-size:7.5px}.customer-chat__primary{min-height:40px;margin-top:8px}}@media(max-width:850px){body:has(.floating-estimate.is-revealed:not(.is-form-visible)) .customer-chat:not(.is-open){bottom:max(82px,calc(env(safe-area-inset-bottom) + 82px))}}@media(prefers-reduced-motion:reduce){.customer-chat *{scroll-behavior:auto!important}}