/* Readable homeowner forms. Loaded after the page's layout styles. */
@font-face{font-family:'Plus Jakarta Sans';src:url('/fonts/plus-jakarta-sans-latin.woff2') format('woff2');font-style:normal;font-weight:400 800;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0300-0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Plus Jakarta Sans';src:url('/fonts/plus-jakarta-sans-latin-ext.woff2') format('woff2');font-style:normal;font-weight:400 800;font-display:swap;unicode-range:U+0100-024F,U+1E00-1EFF,U+20A0-20AB}

:is(.request-page,.qlp-form,.campaign-form-card,#jobWizard,.ch-postcode-form,.ch-offer-content){
    --form-ink:#16344d;
    --form-copy:#3e566b;
    --form-border:#aebfcf;
    font-family:'Plus Jakarta Sans',Arial,sans-serif;
    font-size:16px;
    color:var(--form-ink);
}
:is(#homeLeadForm,#homeownerQuoteLanding,#jobWizard,.campaign-form-card) :is(input,select,textarea)::placeholder{
    color:#62758a;opacity:1;
}
:is(#homeLeadForm,#homeownerQuoteLanding,#jobWizard,.campaign-form-card) :is(input,select,textarea):focus-visible{
    outline:3px solid #91b5ff;outline-offset:2px;
}

/* Four-step request page: larger choices, labels and solid surfaces. */
.ccs-home.ccs-home-refresh.request-page{background:#edf3f8;padding-top:22px}
.ccs-home.ccs-home-refresh.request-page .ccs-home-lead-shell{width:min(1180px,calc(100% - 48px))}
.ccs-home.ccs-home-refresh.request-page .ccs-home-lead-card-v4{background:#fff;border:1px solid #c8d6e2;box-shadow:0 8px 26px #15344d0a}
.ccs-home.ccs-home-refresh.request-page .ccs-home-lead-main{padding:30px 32px}
.request-page .request-page-top{font-size:14px;color:#405971}
.request-page .request-page-progress{max-width:760px;margin-bottom:24px}
.request-page .request-page-progress-line{top:23px;background:#bdccda;height:3px}
.request-page .request-page-step-icon{width:48px;height:48px;border-color:#b2c3d2;color:#4c647b;background:#edf3f8}
.request-page .request-page-step-icon svg{width:23px;height:23px}
.request-page .request-page-progress button{gap:8px;color:#486078;opacity:1}
.request-page .request-page-progress strong{font-size:14px;font-weight:650}
.request-page .request-page-progress [aria-current=step]{color:#174eaa}
.ccs-home.ccs-home-refresh.request-page .home-request-tabs{max-width:580px;padding:5px;margin-bottom:24px;background:#edf2f7;border-color:#c9d6e2}
.ccs-home.ccs-home-refresh.request-page .home-request-tabs button{min-height:48px;font-size:15px;line-height:1.5;font-weight:650;color:#3e566b}
.ccs-home.ccs-home-refresh.request-page .home-request-tabs button[aria-selected=true]{color:#173f7b;background:#fff;border-color:#8faed5}
.ccs-home.ccs-home-refresh.request-page .ccs-home-lead-step-title-v4{gap:14px;margin-bottom:22px}
.ccs-home.ccs-home-refresh.request-page .ccs-home-lead-step-title-v4 strong{font-size:28px!important;font-weight:700;letter-spacing:-.65px;line-height:1.3;color:#16344d}
.ccs-home.ccs-home-refresh.request-page .ccs-home-lead-step-title-v4 small{font-size:15px;line-height:1.7;color:#3e566b}
.ccs-home.ccs-home-refresh.request-page #homeLeadForm{grid-template-columns:minmax(0,1fr) 265px;gap:28px}
.ccs-home.ccs-home-refresh.request-page .request-service-picker.is-enhanced .request-service-cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.ccs-home.ccs-home-refresh.request-page .request-service-cards button{min-height:154px;padding:18px 13px;gap:9px;border:1px solid #b6c8d8;border-radius:13px;background:#fff;color:#16344d;opacity:1}
.ccs-home.ccs-home-refresh.request-page .request-service-cards button>span{width:42px;height:42px;background:#e8f1ff;color:#205ac0}
.ccs-home.ccs-home-refresh.request-page .request-service-cards button>span svg{width:27px;height:27px}
.ccs-home.ccs-home-refresh.request-page .request-service-cards strong{font-size:15px;font-weight:650;line-height:1.5;color:#16344d}
.ccs-home.ccs-home-refresh.request-page .request-service-cards small{font-size:13px;line-height:1.6;color:#455d73}
.ccs-home.ccs-home-refresh.request-page :is(.request-service-cards,.request-property-cards) button[aria-pressed=true]{background:#eaf2ff;border:2px solid #2563eb;color:#174eaa;box-shadow:0 0 0 1px #2563eb}
.ccs-home.ccs-home-refresh.request-page .request-property-picker legend{font-size:16px;font-weight:650;color:#16344d;margin-bottom:10px}
.ccs-home.ccs-home-refresh.request-page .request-property-cards button{min-height:60px;padding:12px 10px;gap:8px;background:#fff;border-color:#b6c8d8;font-size:15px;font-weight:600;color:#16344d;line-height:1.5}
.ccs-home.ccs-home-refresh.request-page .request-property-cards button svg{width:23px;height:23px}
.ccs-home.ccs-home-refresh.request-page #homeLeadForm .ccs-home-lead-fields{gap:20px}
.ccs-home.ccs-home-refresh.request-page #homeLeadForm .ccs-home-lead-fields label>span{font-size:15px;font-weight:650;color:#243e55;margin-bottom:9px;text-transform:none;letter-spacing:0}
.ccs-home.ccs-home-refresh.request-page #homeLeadForm .ccs-home-lead-fields :is(input,select,textarea){min-height:56px;padding:13px 15px;font-size:17px;font-weight:500;line-height:1.5;background:#fff;color:#16344d;border:1px solid #aebfcf;border-radius:10px;box-shadow:none}
.ccs-home.ccs-home-refresh.request-page .request-room-counts{gap:0 24px;margin-top:20px}
.ccs-home.ccs-home-refresh.request-page .request-room-counts legend{font-size:16px;color:#243e55;font-weight:650}
.ccs-home.ccs-home-refresh.request-page .request-room-row{min-height:65px;padding:10px 0;gap:12px}
.ccs-home.ccs-home-refresh.request-page .request-room-row>label{font-size:15px;font-weight:600;color:#243e55;line-height:1.5}
.ccs-home.ccs-home-refresh.request-page .request-counter{gap:5px}
.ccs-home.ccs-home-refresh.request-page .request-counter button{width:42px;height:42px;font-size:24px;border-radius:9px;background:#eaf1fb;color:#174eaa;opacity:1}
.ccs-home.ccs-home-refresh.request-page .request-counter button:disabled{background:#edf1f5;color:#60758a}
.ccs-home.ccs-home-refresh.request-page #homeLeadForm .request-counter input{width:34px;min-height:42px;font-size:18px;font-weight:650;color:#16344d}
.ccs-home.ccs-home-refresh.request-page .request-frequency>span{font-size:15px;color:#243e55}
.ccs-home.ccs-home-refresh.request-page .request-frequency select{min-height:52px;font-size:17px;color:#16344d;border-color:#aebfcf;background:#fff}
.ccs-home.ccs-home-refresh.request-page #homeLeadForm :is(.ccs-home-field-help,.uk-phone-feedback){font-size:14px;color:#455d73;line-height:1.65}
.ccs-home.ccs-home-refresh.request-page #homeLeadForm :is(.ccs-home-lead-next,.ccs-home-lead-submit){min-height:54px;font-size:17px;font-weight:650;padding:14px 24px;background:#2563eb;color:#fff;opacity:1;line-height:1.5}
.ccs-home.ccs-home-refresh.request-page #homeLeadForm .ccs-home-lead-next:disabled{background:#e0e8f2;color:#50647b;border:1px solid #b9cadc;opacity:1}
.ccs-home.ccs-home-refresh.request-page #homeLeadForm .ccs-home-lead-back{min-height:48px;font-size:15px;color:#234b70;font-weight:600}
.ccs-home.ccs-home-refresh.request-page .request-summary-toggle{font-size:14px;min-height:48px;background:#16344d}
.ccs-home.ccs-home-refresh.request-page .request-live-summary{background:#fff;border-color:#bdcddd}
.ccs-home.ccs-home-refresh.request-page .request-live-summary h3{font-size:14px;background:#16344d;color:#fff;padding:18px}
.ccs-home.ccs-home-refresh.request-page .request-live-summary-body{padding:20px}
.ccs-home.ccs-home-refresh.request-page .request-live-summary-body>strong{font-size:18px;line-height:1.5;color:#16344d}
.ccs-home.ccs-home-refresh.request-page .request-live-summary dl>div{font-size:14px;color:#334f67;line-height:1.6}
.ccs-home.ccs-home-refresh.request-page .request-live-summary dt{color:#405970}
.ccs-home.ccs-home-refresh.request-page .request-live-summary dd{color:#16344d;font-weight:600}
.ccs-home.ccs-home-refresh.request-page .request-live-summary :is(p,a){font-size:14px;line-height:1.7;color:#3e566b}
.ccs-home.ccs-home-refresh.request-page .terms-consent{font-size:14px;line-height:1.7;color:#334f67}
.ccs-home.ccs-home-refresh.request-page .ccs-home-lead-summary{background:#f4f8fc;border-color:#bdcddd;padding:20px}
.ccs-home.ccs-home-refresh.request-page .ccs-home-lead-summary small{font-size:14px;color:#455d73}
.ccs-home.ccs-home-refresh.request-page .ccs-home-lead-summary strong{font-size:17px;color:#16344d;line-height:1.5}
.request-page .request-savings-offer{width:min(1180px,calc(100% - 48px))}
.request-page .request-extras-toggle{padding:18px;background:#f1f6fc;border-color:#aec3d8}
.request-page .request-extras-toggle strong{font-size:17px;color:#1f405e}
.request-page .request-extras-toggle small{font-size:14px;color:#455d73}
.ccs-home.ccs-home-refresh.request-page .request-extras-panel{background:#f7fafd;border-color:#bdcddd}
.request-page .request-extras-panel :is(.ccs-home-lead-extra-head strong,.ccs-home-lead-textarea>span){font-size:16px;color:#243e55}
.request-page .request-extras-panel :is(.ccs-home-lead-extra-head small,.ccs-home-lead-textarea em,.ccs-home-field-help){font-size:14px;color:#455d73}
.ccs-home.ccs-home-refresh.request-page #homeLeadForm .request-extras-panel textarea{font-size:17px;line-height:1.7;color:#16344d;border-color:#aebfcf;background:#fff}
.request-page .request-photo-upload .request-upload-icon{color:#205ac0}
.request-page .request-page-legal{font-size:13px;color:#455d73}
.request-page .request-page-legal a{color:#2c5274}

/* Home and offer entry forms. */
.cristal-home .ch-postcode-form>label{font-size:15px;font-weight:650;color:#243e55;line-height:1.5;margin-bottom:10px}
.cristal-home .ch-postcode-box{border-color:#aebfcf;background:#fff;padding:8px 8px 8px 15px}
.cristal-home .ch-postcode-box input{min-height:54px;font-size:18px;font-weight:500;color:#16344d}
.cristal-home .ch-postcode-box input::placeholder{color:#62758a;opacity:1}
.cristal-home .ch-postcode-box>.ch-button,.cristal-home .ch-offer-form>.ch-button{font-size:16px;min-height:54px;font-weight:600;padding:14px 19px}
.cristal-home .ch-postcode-hints{font-size:14px;color:#3e566b;gap:8px 16px;line-height:1.7}
.cristal-home .ch-offer-content>p{font-size:16px;line-height:1.75;color:#3e566b}
.cristal-home .ch-offer-content .ch-offer-terms{font-size:13px;color:#455d73;line-height:1.7}
.cristal-home .ch-offer-footer :is(button,a){font-size:14px}

/* Quote landing and signed-in job forms use the same reading scale. */
:is(.qlp-form,.campaign-form-card,#jobWizard){background:#fff;border-color:#bdcddd}
:is(.qlp-form,.campaign-form-card,#jobWizard) :is(input,select,textarea):not([type=checkbox]):not([type=radio]):not([type=file]):not([type=hidden]){font-family:inherit;font-size:17px;line-height:1.5;min-height:54px;padding:13px 14px;border:1px solid #aebfcf;border-radius:10px;background:#fff;color:#16344d;box-shadow:none}
:is(.qlp-form,.campaign-form-card,#jobWizard) :is(label,.field>label){font-size:15px;font-weight:650;color:#243e55;line-height:1.6}
:is(.qlp-form,.campaign-form-card,#jobWizard) :is(.field-help,.qlp-help,.qlp-terms,.field-note,.wizard-legal-note){font-size:14px;line-height:1.7;color:#455d73}
:is(.qlp-form-head,.campaign-form-card,.wizard-step-head) :is(h2){font-size:28px;line-height:1.3;letter-spacing:-.6px;color:#16344d}
:is(.qlp-form-head,.campaign-form-card,.wizard-step-head)>p{font-size:16px;line-height:1.75;color:#3e566b}
.qlp-form-head>small{font-size:13px;font-weight:600;color:#345875}
:is(.qlp-form,.campaign-form-card,#jobWizard) :is(.btn,.qlp-submit,.qlp-next,.qlp-back){min-height:52px;font-size:16px;font-weight:650;line-height:1.5}
#jobWizard :is(.service-option,.choice-card,.contact-option,.extra-option){font-size:15px;background:#fff;border-color:#b6c8d8}
#jobWizard :is(.contact-option small,.service-option small,.choice-card small){font-size:14px;line-height:1.65;color:#455d73}
#jobWizard .choice-ui{min-height:100px;padding:18px;border-color:#b6c8d8;background:#fff}
#jobWizard .choice-ui strong{font-size:16px;color:#16344d;line-height:1.5}
#jobWizard .choice-ui small{font-size:14px;color:#455d73;line-height:1.65}
#jobWizard .choice input:checked+.choice-ui{background:#eaf2ff;border-color:#2563eb}
#jobWizard :is(.privacy-box p,.lead-sharing-note p,.lead-contact-preview p){font-size:14px;line-height:1.7;color:#455d73}
#jobWizard :is(.wizard-nav,.wizard-mobile-progress){background:#fff;backdrop-filter:none}

@media(max-width:1100px){
    .ccs-home.ccs-home-refresh.request-page .request-service-picker.is-enhanced .request-service-cards{grid-template-columns:repeat(2,minmax(0,1fr))}
    .ccs-home.ccs-home-refresh.request-page .request-service-cards button{display:grid;grid-template-columns:40px 1fr;align-items:center;text-align:left;min-height:118px;padding:15px 12px;gap:8px 12px}
    .ccs-home.ccs-home-refresh.request-page .request-service-cards button>span{grid-column:1;grid-row:1/3;width:40px;height:40px}
    .ccs-home.ccs-home-refresh.request-page .request-service-cards :is(strong,small){grid-column:2}
}
@media(max-width:700px){
    .ccs-home.ccs-home-refresh.request-page{padding:16px 0 125px}
    .ccs-home.ccs-home-refresh.request-page .ccs-home-lead-shell{width:calc(100% - 24px)}
    .ccs-home.ccs-home-refresh.request-page .ccs-home-lead-main{padding:22px 17px}
    .request-page .request-page-progress{width:calc(100% - 28px);margin-bottom:20px}
    .request-page .request-page-progress-line{top:21px}
    .request-page .request-page-step-icon{width:44px;height:44px}
    .request-page .request-page-progress strong{font-size:12px;line-height:1.5}
    .request-page .request-page-step-icon svg{width:22px;height:22px}
    .ccs-home.ccs-home-refresh.request-page .home-request-tabs{margin-bottom:21px;gap:5px}
    .ccs-home.ccs-home-refresh.request-page .home-request-tabs button{min-height:48px;font-size:13px;padding:10px 8px;gap:7px}
    .ccs-home.ccs-home-refresh.request-page .ccs-home-lead-step-title-v4 strong{font-size:25px!important;line-height:1.35}
    .ccs-home.ccs-home-refresh.request-page #homeLeadForm{gap:20px}
    .ccs-home.ccs-home-refresh.request-page .request-service-cards button{min-height:100px;grid-template-columns:1fr;padding:14px 10px;gap:8px;text-align:center;justify-items:center}
    .ccs-home.ccs-home-refresh.request-page .request-service-cards button>span{grid-row:auto;width:34px;height:34px}
    .ccs-home.ccs-home-refresh.request-page .request-service-cards button>span svg{width:24px;height:24px}
    .ccs-home.ccs-home-refresh.request-page .request-service-cards strong{font-size:14px;grid-column:1;line-height:1.45}
    .ccs-home.ccs-home-refresh.request-page .request-service-cards small{display:none}
    .ccs-home.ccs-home-refresh.request-page .request-property-picker.is-enhanced .request-property-cards{grid-template-columns:repeat(3,minmax(0,1fr))}
    .ccs-home.ccs-home-refresh.request-page .request-property-cards button{flex-direction:column;min-height:76px;font-size:14px;gap:7px}
    .ccs-home.ccs-home-refresh.request-page .request-room-counts{grid-template-columns:1fr;margin-top:16px}
    .ccs-home.ccs-home-refresh.request-page .request-room-row>label{max-width:none;font-size:15px}
    .ccs-home.ccs-home-refresh.request-page .request-counter button{width:44px;height:44px}
    .ccs-home.ccs-home-refresh.request-page #homeLeadForm .ccs-home-lead-fields{gap:19px}
    .ccs-home.ccs-home-refresh.request-page #homeLeadForm .ccs-home-lead-fields :is(input,select,textarea){font-size:17px;min-height:54px}
    .ccs-home.ccs-home-refresh.request-page #homeLeadForm .ccs-home-lead-nav,.ccs-home.ccs-home-refresh.request-page .ccs-home-lead-finish-actions{background:#fff;backdrop-filter:none;padding:12px 17px calc(12px + env(safe-area-inset-bottom))!important;border-top:1px solid #bfcede!important}
    .ccs-home.ccs-home-refresh.request-page #homeLeadForm :is(.ccs-home-lead-next,.ccs-home-lead-submit){font-size:16px;min-height:52px;padding:12px 17px}
    .ccs-home.ccs-home-refresh.request-page .request-extras-toggle{padding:16px;gap:10px}
    .ccs-home.ccs-home-refresh.request-page .request-extras-toggle strong{font-size:16px}
    .ccs-home.ccs-home-refresh.request-page .request-extras-toggle small{font-size:14px}
    .request-page .request-savings-offer{width:calc(100% - 24px);padding:15px}
    .cristal-home .ch-postcode-box:has(>.ch-button){display:grid;grid-template-columns:20px minmax(0,1fr);gap:10px;padding:11px}
    .cristal-home .ch-postcode-box:has(>.ch-button)>svg{display:block}
    .cristal-home .ch-postcode-box:has(>.ch-button) input{width:100%;min-height:44px;font-size:18px}
    .cristal-home .ch-postcode-box>.ch-button{grid-column:1/-1;width:100%;font-size:16px;min-height:52px}
    .cristal-home .ch-postcode-hints{font-size:13px}
    .cristal-home .ch-offer-content{padding-inline:22px}
    :is(.qlp-form,.campaign-form-card,#jobWizard) :is(input,select,textarea):not([type=checkbox]):not([type=radio]):not([type=file]):not([type=hidden]){font-size:17px;min-height:54px}
    :is(.qlp-form-head,.campaign-form-card,.wizard-step-head) h2{font-size:25px}
}
