.pn-instant-result{border:1px solid #c5dfe0;border-radius:16px;background:#f2f8f8;padding:22px;margin-top:20px;color:#062439}
.pn-instant-result[hidden]{display:none!important}.pn-instant-result h3{font-size:20px;margin:0 0 8px}.pn-instant-result p{font-size:14px;line-height:1.55;margin:8px 0}.pn-instant-result .pn-instant-amount{font-size:34px;font-weight:600;margin:5px 0}
.pn-pdf-download{display:block;text-align:center;border-radius:24px;background:#286d75;color:#fff!important;padding:13px 18px;font-weight:600;margin:16px 0;text-decoration:none}.pn-pdf-download:focus-visible,.pn-another-estimate:focus-visible{outline:3px solid #062439;outline-offset:3px}.pn-instant-result ul{font-size:12px;line-height:1.5;margin:14px 0;padding-left:20px}.pn-another-estimate{background:transparent!important;border:0!important;color:#286d75!important;text-decoration:underline;padding:8px 0!important;font-size:14px}
.pn-priority-estimate .elementor-field-group-property,.pn-priority-estimate .elementor-field-group-first_visit,.pn-priority-estimate .elementor-field-group-condition,.pn-priority-estimate .elementor-field-group-clutter,.pn-priority-estimate .elementor-field-group-pets,.pn-priority-estimate .elementor-field-group-half_baths{padding-top:8px}
@media(max-width:480px){.pn-priority-estimate .e-form__indicators__indicator__label{white-space:normal!important;width:48px!important;max-width:48px;flex-shrink:0;min-height:28px;line-height:1.3!important;text-align:center}.pn-priority-estimate .e-form__indicators__indicator{align-self:flex-start}}
.pn-priority-estimate .pn-home-starting-note{font-family:"DM Sans",sans-serif;font-size:12px;line-height:1.5;color:#5a7078;margin:7px 0 0}
.pn-priority-estimate .pn-home-number{display:flex;align-items:stretch;width:100%;height:56px;border:1px solid #d5e4e2;border-radius:12px;background:#fbfefe;overflow:hidden;transition:border-color .15s,box-shadow .15s}
.pn-priority-estimate .pn-home-number:focus-within{border-color:#5b9b9f;box-shadow:0 0 0 2px #e6f2f0}
.pn-priority-estimate .pn-home-number input{flex:1!important;min-width:0!important;width:0!important;min-height:54px!important;height:54px!important;border:0!important;border-radius:0!important;box-shadow:none!important;background-color:transparent!important;background-position:8px center!important;padding:0 4px 0 24px!important;text-align:center!important;font-family:"DM Sans",sans-serif!important;font-size:15px!important;color:#062439!important;appearance:textfield;-moz-appearance:textfield}
.pn-priority-estimate .pn-home-number input::-webkit-inner-spin-button,.pn-priority-estimate .pn-home-number input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
.pn-priority-estimate .pn-home-number button{flex:0 0 36px!important;width:36px!important;min-height:54px!important;padding:0!important;border:0!important;border-radius:0!important;background:#eff7f6!important;color:#286d75!important;font:500 21px/1 "DM Sans",sans-serif!important;cursor:pointer}
.pn-priority-estimate .pn-home-number button:hover:not(:disabled){background:#dceeed!important}.pn-priority-estimate .pn-home-number button:disabled{opacity:.35;cursor:default}.pn-priority-estimate .pn-home-number button:focus-visible{outline:2px solid #286d75;outline-offset:-4px}
.pn-priority-estimate .pn-home-choice{font-family:"DM Mono",monospace!important;font-size:12px!important;font-weight:400!important;letter-spacing:.3px!important;text-align:left!important;padding-left:40px!important;padding-right:32px!important;background-repeat:no-repeat!important;background-position:14px center!important;background-size:15px 15px!important;color:#062439!important}
.pn-priority-estimate .pn-home-choice.pn-is-placeholder{color:#9db3b8!important}

.pn-priority-estimate .elementor-field-group-half_baths{padding-top:0}

.pn-priority-estimate .pn-home-number,.pn-priority-estimate .pn-home-select{position:relative}
.pn-priority-estimate .pn-home-icon{position:absolute;left:44px;top:50%;transform:translateY(-50%);width:15px;height:15px;display:block;pointer-events:none;color:#5b9b9f}
.pn-priority-estimate .pn-home-select .pn-home-icon{left:14px}
.pn-priority-estimate .pn-home-icon svg{display:block;width:15px;height:15px}
.elementor-element.pn-priority-estimate .pn-home-number input.elementor-field,.elementor-element.pn-priority-estimate select.pn-home-choice{background-image:none!important}
.elementor-element.pn-priority-estimate.pn-estimate-form .elementor-field-group:is(.elementor-field-group-size,.elementor-field-group-bedrooms,.elementor-field-group-bathrooms)::after{content:none!important}
/* Included package services are locked, checked, and excluded from optional extras. */
.pn-priority-estimate .pn-addon-included-badge[hidden]{display:none!important}
.pn-priority-estimate .elementor-field-group-addons label{gap:8px}
.pn-priority-estimate .pn-addon-label-text{min-width:0;flex:1}
.pn-priority-estimate .pn-addon-included-badge{flex:none;display:inline-block;padding:3px 7px;border-radius:20px;background:#d7eae6;color:#286b73;font-size:10px;font-weight:600;line-height:1.3;letter-spacing:.15px}
.pn-priority-estimate .elementor-field-group-addons .pn-addon-included>label{background:#edf6f3!important;border-color:#9abfba!important;cursor:default!important}
.pn-priority-estimate .pn-addon-included>input{cursor:default!important}
@media(max-width:480px){.pn-priority-estimate .pn-addon-included>label{flex-wrap:wrap}.pn-priority-estimate .pn-addon-included-badge{margin-left:auto;padding:2px 6px;font-size:9px}}
@media(max-width:480px){
.pn-priority-estimate form.elementor-form .elementor-field-group-addons .elementor-field-option.pn-addon-included>label{display:grid!important;grid-template-columns:18px minmax(0,1fr);grid-template-rows:auto auto;column-gap:7px;row-gap:2px;height:64px!important;min-height:64px!important;align-content:center}
.pn-priority-estimate .pn-addon-included>label::before{grid-column:1;grid-row:1/span 2;align-self:center}
.pn-priority-estimate .pn-addon-included .pn-addon-label-text{grid-column:2;grid-row:1;white-space:normal!important;line-height:14px!important}
.pn-priority-estimate .pn-addon-included .pn-addon-included-badge{grid-column:2;grid-row:2;justify-self:start;margin:0}
}

/* Puranova refined form system — compact, confident, consistent. */
.elementor-element.pn-priority-estimate form .elementor-form-fields-wrapper{row-gap:12px!important}
.elementor-element.pn-priority-estimate form .elementor-field-label{font-family:"DM Sans",sans-serif!important;font-size:12px!important;font-weight:600!important;line-height:1.35!important;letter-spacing:.15px!important;color:#062439!important;padding-bottom:5px!important;margin-bottom:0!important}
.elementor-element.pn-priority-estimate form .elementor-field-option>label{font-family:"DM Sans",sans-serif!important;font-weight:600!important;color:#062439!important;transition:background .16s,border-color .16s,box-shadow .16s}
.elementor-element.pn-priority-estimate form .elementor-field-group-type .elementor-field-option>label{height:46px!important;min-height:46px!important;padding:7px 10px!important;font-size:13px!important;background:#f0f7f5!important;border:1px solid #c4dbd6!important;border-radius:11px!important}
.elementor-element.pn-priority-estimate form .elementor-field-group-frequency .elementor-field-option>label{height:44px!important;min-height:44px!important;padding:6px 8px!important;font-size:12px!important;background:#f0f7f5!important;border:1px solid #c4dbd6!important;border-radius:10px!important}
.elementor-element.pn-priority-estimate form :is(.elementor-field-group-type,.elementor-field-group-frequency) .elementor-field-option>input:checked+label{background:#dceee8!important;border-color:#2a6b73!important;box-shadow:inset 0 0 0 1px #2a6b73!important}
.elementor-element.pn-priority-estimate form .elementor-field-option>label:hover{background:#e6f2ed!important;border-color:#82aba4!important}
.elementor-element.pn-priority-estimate form .elementor-field-option>input:focus-visible+label{outline:3px solid #5b9b9f;outline-offset:2px}
.elementor-element.pn-priority-estimate form .elementor-field-group-addons .elementor-field-option{background:#f0f7f5!important;border-color:#c4dbd6!important}
.elementor-element.pn-priority-estimate form .elementor-field-group-addons .elementor-field-option>label{height:46px!important;min-height:46px!important;font-size:12px!important;padding:7px 10px!important}
.elementor-element.pn-priority-estimate form .elementor-field-group-addons .pn-addon-selected{background:#e2f0e9!important;border-color:#2a6b73!important}
.elementor-element.pn-priority-estimate form .elementor-field:not(input[type=checkbox]):not(input[type=radio]):not(input[type=file]){min-height:46px!important;border-radius:11px!important;background-color:#fbfefd!important;color:#062439!important;font-family:"DM Sans",sans-serif!important;font-size:14px!important;line-height:1.4!important}
.elementor-element.pn-priority-estimate form textarea.elementor-field{min-height:96px!important}
.elementor-element.pn-priority-estimate form .elementor-field:focus{border-color:#2a6b73!important;box-shadow:0 0 0 3px rgba(91,155,159,.13)!important;outline:none}
.elementor-element.pn-priority-estimate form .pn-home-number{min-height:46px!important;border-radius:11px!important;background:#fbfefd!important}
.elementor-element.pn-priority-estimate form .pn-home-number input{height:46px!important;min-height:46px!important;font-weight:600!important}
.elementor-element.pn-priority-estimate form .pn-home-number button{min-height:46px!important;background:#e8f3ee!important;font-weight:600!important}
.elementor-element.pn-priority-estimate form select.pn-home-choice{height:46px!important;font-family:"DM Sans",sans-serif!important;font-size:13px!important;font-weight:500!important;letter-spacing:0!important}
.elementor-element.pn-priority-estimate form .pn-home-choice.pn-is-placeholder{color:#8ea5aa!important;font-weight:400!important}
.elementor-element.pn-priority-estimate form .elementor-button{min-height:46px!important;padding:12px 18px!important;font-size:14px!important;font-weight:600!important}
.elementor-element.pn-priority-estimate form .pn-category-toggle{padding:12px!important;background:#f0f7f5!important}
.elementor-element.pn-priority-estimate form .pn-category-title{font-weight:600!important;color:#062439!important}
.elementor-element.pn-priority-estimate form .pn-scope-category{border-color:#c4dbd6!important;border-radius:12px!important}
.elementor-element.pn-priority-estimate form .pn-review-section{padding:14px!important;background:#f6fbf8!important;border-color:#c4dbd6!important}
.elementor-element.pn-priority-estimate form .pn-category-body .pn-scope-tile{padding:10px!important}
@media(max-width:767px){.elementor-element.pn-priority-estimate form .elementor-field-group-type .elementor-field-option>label{height:52px!important;min-height:52px!important;font-size:12px!important}.elementor-element.pn-priority-estimate form .elementor-field-group-frequency .elementor-field-subgroup{grid-template-columns:repeat(2,minmax(0,1fr))!important}.elementor-element.pn-priority-estimate form .elementor-field-group-addons .elementor-field-option>label{height:54px!important;min-height:54px!important}.elementor-element.pn-priority-estimate form .elementor-field-group-addons .pn-addon-included>label{height:64px!important;min-height:64px!important}}

.elementor-element.pn-priority-estimate form :is(.elementor-field-group-step3,.elementor-field-group-step4){row-gap:12px!important;}
.elementor-element.pn-priority-estimate form .elementor-field-group-sec_cleaning{margin-bottom:6px!important;}

.elementor-element.pn-priority-estimate form .pn-home-number{height:48px!important;min-height:48px!important;}
.elementor-element.pn-priority-estimate form input[type=file]::file-selector-button{border:1px solid #c4dbd6;border-radius:9px;background:#e8f3ee;color:#062439;font:600 12px "DM Sans",sans-serif;padding:9px 12px;margin-right:10px;cursor:pointer;}
.elementor-element.pn-priority-estimate form .pn-selection-chip{font-weight:600;}
@media(max-width:480px){.elementor-element.pn-priority-estimate form :is(.elementor-field-group-property,.elementor-field-group-first_visit,.elementor-field-group-condition,.elementor-field-group-clutter,.elementor-field-group-pets){width:100%!important;padding-top:0!important;}}

.elementor-element.pn-priority-estimate form :is(.elementor-field-group-step3,.elementor-field-group-step4)>.elementor-field-group{margin-bottom:0!important;}

/* Alignment and quieter compact choices. */
.elementor-element.pn-priority-estimate form .e-form__indicators{max-width:340px!important;width:100%!important;margin-left:auto!important;margin-right:auto!important}
.elementor-element.pn-priority-estimate form :is(.elementor-field-group-type,.elementor-field-group-frequency) .elementor-field-option>label{font-weight:400!important;justify-content:flex-start!important;gap:7px!important;padding-left:10px!important;padding-right:10px!important}
.elementor-element.pn-priority-estimate form .elementor-field-group-type .elementor-field-subgroup{max-width:430px!important;margin-left:auto!important;margin-right:auto!important}
.elementor-element.pn-priority-estimate form .elementor-field-group-type .elementor-field-option>label{font-size:12px!important;white-space:nowrap!important}
.elementor-element.pn-priority-estimate form .elementor-field-group-frequency .elementor-field-subgroup{grid-template-columns:repeat(2,minmax(0,1fr))!important;max-width:340px!important;margin-left:auto!important;margin-right:auto!important;gap:8px!important}
.elementor-element.pn-priority-estimate form .elementor-field-option>label::before{flex:0 0 18px!important;margin:0!important}
.elementor-element.pn-priority-estimate form :is(.elementor-field-group-zip,.elementor-field-group-name,.elementor-field-group-phone,.elementor-field-group-email) input{height:48px!important;min-height:48px!important;padding-top:0!important;padding-bottom:0!important}
.elementor-element.pn-priority-estimate form :is(.elementor-field-group-zip,.elementor-field-group-name,.elementor-field-group-phone,.elementor-field-group-email)::after{top:auto!important;bottom:16.5px!important;height:15px!important;width:15px!important;transform:none!important}
.elementor-element.pn-priority-estimate form .elementor-field-group-zip input{max-width:230px!important}
.pn-form-assurance{font-family:"DM Sans",sans-serif!important;font-size:11px!important;line-height:1.5!important;white-space:nowrap!important;text-wrap:nowrap!important;margin:0!important}
.elementor-element.pn-priority-estimate form .pn-addon-quantity{display:flex;align-items:center;justify-content:space-between;gap:7px;padding:5px 9px!important}
.elementor-element.pn-priority-estimate form .pn-addon-quantity .pn-quantity-unit{font-size:10px!important;margin:0!important;line-height:1.25!important}
.elementor-element.pn-priority-estimate form .pn-addon-quantity .pn-quantity-controls{flex:0 0 96px;width:96px!important;gap:0!important}
.elementor-element.pn-priority-estimate form .pn-addon-quantity .pn-quantity-controls button{width:30px!important;min-width:30px!important;height:34px!important;min-height:34px!important;border-radius:7px!important;font-size:18px!important}
.elementor-element.pn-priority-estimate form .elementor-field-group-addons .pn-addon-quantity input{width:30px!important;min-width:30px!important;height:34px!important;min-height:34px!important;font-size:13px!important;padding:0!important}
@media(max-width:767px){.elementor-element.pn-priority-estimate form .elementor-field-group-type .elementor-field-option>label{font-size:10.5px!important;padding-left:7px!important;padding-right:6px!important;gap:5px!important}.elementor-element.pn-priority-estimate form .pn-addon-quantity{flex-direction:column;align-items:stretch;gap:3px}.elementor-element.pn-priority-estimate form .pn-addon-quantity .pn-quantity-controls{flex:auto;width:100%!important}.pn-form-assurance{font-size:10px!important;white-space:normal!important;text-wrap:pretty!important}}
.elementor-element.pn-priority-estimate form .e-form__indicators__indicator__label{width:64px!important;max-width:64px!important;flex-shrink:0!important;text-wrap:normal!important}
.pn-form-assurance{font-size:12px!important}
@media(max-width:767px){.elementor-element.pn-priority-estimate form .e-form__indicators__indicator__label{width:54px!important;max-width:54px!important}.elementor-element.pn-priority-estimate form .elementor-field-group-type .elementor-field-option>label{font-size:11.5px!important;white-space:normal!important}.pn-form-assurance{font-size:10.5px!important}}

/* Match the original headline measure and the two choice groups. */
.pn-hero .pn-hero-title{width:100%!important;max-width:600px!important;}
.elementor-element.pn-priority-estimate form .elementor-field-group-frequency .elementor-field-subgroup{max-width:430px!important;gap:8px!important;}
.elementor-element.pn-priority-estimate form .elementor-field-group-frequency .elementor-field-option>label{height:46px!important;min-height:46px!important;}
.elementor-element.pn-priority-estimate form :is(.elementor-field-group-sec_cleaning,.elementor-field-group-sec4){margin-bottom:6px!important;}
@media(max-width:767px){.elementor-element.pn-priority-estimate form .elementor-field-group-frequency .elementor-field-option>label{height:52px!important;min-height:52px!important;}}

/* Deliberate ZIP field structure and restored room photography. */
.elementor-element.pn-priority-estimate form .elementor-field-group-zip{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:0!important}
.elementor-element.pn-priority-estimate form .elementor-field-group-zip>.elementor-field-label{display:block!important;width:100%!important;max-width:none!important;padding-bottom:5px!important}
.elementor-element.pn-priority-estimate form .elementor-field-group-zip::after{content:none!important;display:none!important}
.elementor-element.pn-priority-estimate form .pn-zip-control{position:relative;width:100%;display:block}
.elementor-element.pn-priority-estimate form .elementor-field-group-zip input{display:block!important;width:100%!important;max-width:none!important;padding-left:40px!important;background-image:none!important}
.elementor-element.pn-priority-estimate form .pn-zip-control .pn-zip-icon{left:14px!important;top:50%!important;transform:translateY(-50%)!important;width:15px!important;height:15px!important}
.pn-hero .pn-hero-copy-photo{padding-top:0!important;align-self:flex-start!important}
.pn-hero .pn-hero-copy-photo>.pn-eyebrow{margin-bottom:14px!important}
.pn-hero .pn-hero-copy-photo>.elementor-widget-text-editor{max-width:600px;margin-top:16px!important}
.pn-hero .pn-hero-room-photo{display:block;box-sizing:border-box;width:100%;max-width:600px;height:142px;margin:18px 0 0;padding:6px;background:#e6f2ef;border:1px solid #c6ddda;border-radius:19px;box-shadow:0 12px 28px -22px rgba(6,36,57,.4);overflow:hidden}
.pn-hero .pn-hero-room-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 58%;border-radius:13px}
.pn-hero .pn-hero-copy-photo>.e-con{margin-top:18px!important}
.pn-hero .pn-hero-copy-photo>.pn-iconlist{margin-top:18px!important;padding-top:16px!important}
@media(min-width:1025px){.pn-hero:has(.e-form__indicators__indicator--state-active[aria-label="Go to step 1: Cleaning"]) .pn-hero-copy-photo{align-self:stretch!important;padding-bottom:24px!important}.pn-hero:has(.e-form__indicators__indicator--state-active[aria-label="Go to step 1: Cleaning"]) .pn-hero-copy-photo>.e-con{margin-top:auto!important;padding-top:18px!important}}
@media(max-width:1024px){.pn-hero .pn-hero-room-photo{display:none!important}.pn-hero .pn-hero-copy-photo{padding-bottom:0!important}}

/* Larger homepage photo, with the action row at the teal section edge. */
@media(min-width:1025px){
 .pn-hero .pn-hero-room-photo{height:202px;}
 .pn-hero:has(.e-form__indicators__indicator--state-active[aria-label="Go to step 1: Cleaning"]) .pn-hero-copy-photo{margin-bottom:-36px!important;padding-bottom:0!important;}
}

/* Weekday-only service calendar. */
.pn-weekday-calendar{z-index:100000!important;font-family:"DM Sans",sans-serif}.pn-weekday-calendar .flatpickr-day.flatpickr-disabled{color:#b2bdc1!important;cursor:not-allowed!important}.pn-weekday-calendar .flatpickr-day.selected,.pn-weekday-calendar .flatpickr-day.selected:hover{background:#286d75!important;border-color:#286d75!important;color:#fff!important}.pn-weekday-calendar .flatpickr-current-month .numInputWrapper{width:64px!important}.pn-weekday-calendar input.cur-year{padding:0 4px!important;height:28px!important;min-height:0!important;border:0!important;background:transparent!important;box-shadow:none!important}

.pn-instant-result .pn-pdf-download{background:transparent;color:#286d75!important;border:1px solid #aacacc;font-size:14px}.pn-final-quote{border-top:1px solid #c5dfe0;margin-top:22px;padding-top:22px}.pn-instant-result .pn-final-quote h3{font-size:19px}.pn-instant-result .pn-request-final{display:block;width:100%;min-height:48px;border:1px solid #286d75;border-radius:24px;background:#286d75;color:#fff;font-family:inherit;font-size:16px;font-weight:600;padding:13px 18px;margin:16px 0 10px;cursor:pointer}.pn-instant-result .pn-request-final:hover{background:#1c5660}.pn-request-final:focus-visible{outline:3px solid #062439;outline-offset:3px}.pn-instant-result .pn-request-final:disabled{opacity:.8;cursor:default}.pn-instant-result .pn-final-note{font-size:12px;color:#5a7078;text-align:center}.pn-final-quote [role=status]:empty{display:none}.pn-final-quote [role=status]{color:#8d3030}.pn-instant-result .pn-another-estimate{display:block;margin:14px auto 0}

/* Stable validation layout: messages occupy their own row, icons stay with controls. */
.pn-priority-estimate form .e-form__step{align-items:flex-start!important;align-content:flex-start!important}
.pn-priority-estimate form .elementor-field-type-text.elementor-field-group,.pn-priority-estimate form .elementor-field-type-tel.elementor-field-group,.pn-priority-estimate form .elementor-field-type-email.elementor-field-group{flex-direction:column!important;align-items:stretch!important;justify-content:flex-start!important;align-self:flex-start!important}
.pn-priority-estimate form .elementor-field-type-text>.elementor-field-label,.pn-priority-estimate form .elementor-field-type-tel>.elementor-field-label,.pn-priority-estimate form .elementor-field-type-email>.elementor-field-label{display:block;width:100%;flex:0 0 auto;line-height:16px!important;padding-bottom:5px!important;margin:0!important}
.pn-priority-estimate form .elementor-field-group-name::after,.pn-priority-estimate form .elementor-field-group-phone::after,.pn-priority-estimate form .elementor-field-group-email::after{top:37.5px!important;bottom:auto!important;transform:none!important}
.pn-priority-estimate form .elementor-help-inline{display:block!important;flex:0 0 auto!important;width:100%!important;max-width:100%;box-sizing:border-box;margin:7px 0 0!important;padding:0!important;font-family:"DM Sans",sans-serif!important;font-size:12px!important;line-height:1.5!important;white-space:normal;overflow-wrap:anywhere;color:#a83f46}
.pn-priority-estimate form .elementor-help-inline::before{display:none!important}
.pn-priority-estimate form .elementor-error input.elementor-field,.pn-priority-estimate form .elementor-error select.elementor-field,.pn-priority-estimate form .elementor-error textarea.elementor-field{border-color:#b94a50!important}
.pn-priority-estimate form>.elementor-message-danger{display:block;box-sizing:border-box;width:100%;margin:16px 0 0!important;padding:12px 14px!important;border:1px solid #e9c4c6;border-radius:10px;background:#fff5f5;font:400 13px/1.5 "DM Sans",sans-serif;color:#92383e;overflow-wrap:anywhere}
.pn-priority-estimate form>.elementor-message-danger::before{display:none!important}
.pn-priority-estimate form .e-form__buttons{clear:both;align-items:center!important;flex-wrap:nowrap!important;width:100%!important;margin-top:16px}
.pn-priority-estimate form .e-form__buttons__wrapper{align-items:center!important;margin-bottom:0!important}
.pn-priority-estimate form .e-form__buttons__wrapper__button{min-height:46px;white-space:normal;line-height:1.3!important}

.elementor-element.pn-priority-estimate form.elementor-form .elementor-field-group.elementor-field-group-name::after,.elementor-element.pn-priority-estimate form.elementor-form .elementor-field-group.elementor-field-group-phone::after,.elementor-element.pn-priority-estimate form.elementor-form .elementor-field-group.elementor-field-group-email::after{top:37.5px!important;bottom:auto!important;transform:none!important}

/* Match the return-later section to the final-quote section at every width. */
.pn-instant-result .pn-return-later .pn-request-final{box-sizing:border-box;text-align:center;text-decoration:none}.pn-instant-result .pn-return-later>p{font-size:14px;color:#062439;text-align:left;line-height:1.6}

/* Keep the Priority Cleaning explanation separate from the choice cards. */
.pn-priority-estimate .elementor-field-group-priority_intro{margin-top:14px!important}.pn-priority-estimate .pn-priority-description{margin-top:0!important}

/* A real-request loading state: centered, calm, and unmistakably Puranova. */
html.pn-estimate-loading{overflow:hidden!important}
.pn-loading-overlay{--pn-sweep:8%;position:fixed;inset:0;z-index:2147483000;display:grid;place-items:center;padding:24px;background:rgba(6,36,57,.48);backdrop-filter:blur(7px);-webkit-backdrop-filter:blur(7px);font-family:"DM Sans",Arial,sans-serif;color:#062439}
.pn-loading-overlay[hidden]{display:none!important}.pn-loading-overlay *{box-sizing:border-box}
.pn-loading-card{width:min(100%,440px);padding:30px 30px 24px;border:1px solid #bed9d8;border-radius:26px;background:radial-gradient(ellipse at 80% 0,#d4e8e6 0,transparent 58%),#fbfefd;box-shadow:0 24px 80px #06243940;text-align:center}
.pn-loading-brand{font-size:12px;letter-spacing:4px;font-weight:500;color:#286d75}.pn-loading-emblem{display:grid;place-items:center;width:58px;height:58px;border-radius:18px;margin:20px auto 16px;background:#e2f0ee;color:#286d75;font-size:32px;animation:pn-clean-sparkle 2.8s ease-in-out infinite}
.pn-loading-overlay h2{font-family:inherit!important;font-size:25px!important;font-weight:600!important;line-height:1.25!important;color:#062439!important;margin:0 0 12px!important;letter-spacing:-.4px}
.pn-loading-caption{font-size:15px!important;line-height:1.55!important;color:#38616a!important;margin:0!important;min-height:70px}
.pn-loading-track{position:relative;height:10px;border-radius:99px;background:#dfebe9;margin:42px 13px 22px;box-shadow:inset 0 1px 3px #06243912}
.pn-loading-fill{position:absolute;inset:0 auto 0 0;width:var(--pn-sweep);border-radius:inherit;background:linear-gradient(90deg,#478f93,#205a63);transition:width .2s linear;overflow:hidden}.pn-loading-fill:after{content:"";position:absolute;inset:0;background:linear-gradient(100deg,transparent,#ffffff70,transparent);transform:translateX(-100%);animation:pn-clean-shine 2.2s linear infinite}
.pn-loading-broom{position:absolute;left:var(--pn-sweep);bottom:-4px;width:48px;height:60px;transform:translateX(-50%);transition:left .2s linear;filter:drop-shadow(0 3px 2px #06243920)}.pn-loading-broom svg{display:block;width:100%;height:100%;overflow:visible}.pn-broom-swish{transform-origin:28px 57px;animation:pn-clean-sweep .65s ease-in-out infinite alternate}
.pn-loading-footnote{font-size:12px!important;line-height:1.5!important;color:#52646e!important;margin:0!important}
@keyframes pn-clean-sweep{from{transform:rotate(-9deg)}to{transform:rotate(9deg)}}@keyframes pn-clean-shine{to{transform:translateX(100%)}}@keyframes pn-clean-sparkle{50%{transform:scale(1.08);opacity:.7}}
@media(max-width:480px){.pn-loading-overlay{padding:20px}.pn-loading-card{padding:26px 22px 22px;border-radius:22px}.pn-loading-overlay h2{font-size:23px!important}.pn-loading-caption{font-size:14px!important}}
@media(prefers-reduced-motion:reduce){.pn-loading-emblem,.pn-broom-swish,.pn-loading-fill:after{animation:none!important}.pn-loading-fill,.pn-loading-broom{transition:none!important}}

.pn-loading-complete .pn-loading-fill,.pn-loading-complete .pn-loading-broom{transition-duration:140ms;transition-timing-function:ease-out}.pn-loading-complete .pn-broom-swish{animation:none}
