
.customer{background:#f5f8f9;color:#182d36}
.customer header,.customer main,.customer footer{max-width:1120px}
.customer header{padding-top:20px;padding-bottom:20px}
.customer main{padding-top:40px}.customer h1{font-size:2.25rem;letter-spacing:-.025em;margin-bottom:24px}
.customer h2{font-size:1.25rem;margin-bottom:12px}.customer h3{font-size:1rem;margin:0 0 12px}
.customer p{margin-bottom:16px}.customer section{margin:24px 0;padding-bottom:24px}
.customer label{font-size:.9375rem}.customer input:not([type=checkbox]),.customer select{min-height:48px}
.customer .fields{gap:20px}.customer small{font-size:.8125rem}
.customer .supporting{margin:12px 0}.customer summary{font-size:.9375rem;min-height:44px}
.customer .pilot-note{font-size:.8125rem;color:#435962;margin:0 0 24px;display:flex;gap:8px;align-items:baseline}
.customer .pilot-note strong{color:#075c73;white-space:nowrap}
.customer .progress-panel{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:24px 28px;background:#e6eff3;border:0;border-radius:12px;margin:0 0 20px}
.customer .progress-panel h2{font-size:1.25rem}.customer .progress-panel p{margin:0;max-width:60ch;font-size:.9375rem}
.customer .progress-panel .next-owner{font-size:.8125rem;margin-bottom:8px;color:#435962}
.customer .progress-actions{flex:none;display:flex;flex-direction:column;align-items:center;gap:12px;margin:0}
.customer .progress-actions a:last-child{font-size:.875rem}
.customer .request-builder{max-width:840px;margin:0 auto;background:#fff;border:1px solid #ccd7dc;border-radius:12px;padding:28px 32px}
.customer .form-intro{color:#435962;font-size:.875rem}
.customer .request-builder .form-section{border:0}.customer .request-builder .form-section>summary{font-size:1.125rem;padding:16px 0}
.customer .request-builder .section-body{padding:12px 0 24px}.customer .step-heading{display:none}
.customer .step-nav{list-style:none;padding:0;margin:0 0 28px;display:flex;border-bottom:1px solid #ccd7dc;gap:20px}
.customer [hidden]{display:none!important}
.customer .step-nav li{flex:1}.customer .step-nav button{border:0;border-radius:0;background:none;padding:12px 0;width:100%;font-size:.9375rem;text-align:left;color:#435962;border-bottom:3px solid transparent}
.customer .step-nav [aria-current=step]{border-color:#075c73;color:#075c73;font-weight:700}
.customer .step-nav span{display:inline-grid;place-items:center;border:1px solid #ccd7dc;border-radius:50%;width:28px;height:28px;margin-right:8px;font-size:.8125rem}
.customer .step-nav [aria-current=step] span{background:#075c73;border-color:#075c73;color:white}
.customer .enhanced .form-section>summary{display:none}.customer .enhanced .step-heading{display:block;margin:0 0 24px;font-size:1.5rem;outline-offset:6px}
.customer .form-actions{display:flex;align-items:center;gap:12px;border-top:1px solid #ccd7dc;padding-top:20px}
.customer .form-actions .step-next{margin-left:auto}.customer .form-actions .save-draft{font-size:.875rem}
.customer .request-builder .supporting{padding:8px 0;border-top:1px solid #ccd7dc}
.customer .request-builder .supporting>.fields{padding:12px 0}
.customer .draft-check{margin:16px 0;font-size:.875rem}.customer .draft-check ul{display:flex;flex-wrap:wrap;gap:8px 24px;padding-left:20px}
.customer .request-overview{display:grid;grid-template-columns:1fr 1fr;gap:20px 32px;border:0;background:#fff;padding:24px;border-radius:12px}
.customer .request-overview h2{grid-column:1/-1;margin:0}.customer .request-overview p{margin:0;font-size:.9375rem}
.customer .request-overview strong{display:block;font-size:1.125rem;margin-bottom:4px}
.customer .coverage-note{font-size:.875rem;color:#435962;margin:16px 0}
.customer .quote-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:start}
.customer .quote-card{min-width:0;background:#fff;border:1px solid #ccd7dc;border-radius:12px;padding:28px}
.customer .quote-card h3{font-size:1.25rem;margin-bottom:4px}.customer .quote-card .service-name{font-size:.875rem;color:#435962}
.customer .quote-price{font-size:2.5rem;font-weight:700;line-height:1.1;letter-spacing:-.03em;display:block;margin:20px 0}
.customer .quote-price small{display:inline;font-size:.875rem;letter-spacing:0;font-weight:400;margin-left:8px}
.customer .quote-facts{margin:0}.customer .quote-facts>div{display:grid;grid-template-columns:110px minmax(0,1fr);gap:16px;padding:12px 0;border-top:1px solid #e0e7eb}
.customer .quote-facts dt{font-size:.8125rem;color:#435962}.customer .quote-facts dd{margin:0;font-size:.9375rem;font-weight:500}
.customer .quote-card .expiry{font-size:.8125rem;color:#435962;margin:16px 0 0}
.customer .quote-card form>button{width:100%;margin-top:16px}.customer .quote-card details section{padding-bottom:16px}
.customer .quote-card .quote-terms{display:block}.customer .quote-card .quote-terms .quote-price{font-size:1.5rem}
.customer .quote-terms{display:grid;grid-template-columns:1fr 1fr;gap:24px 32px}
.customer .quote-terms>section{margin:0;padding:24px 0}.customer .quote-terms>.quote-total{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:12px 32px}
.customer .quote-total h2{margin:0}.customer .quote-total .quote-price{margin:8px 0 0}
.customer .quote-total .price-breakdown{margin:0;list-style:none;padding:0}.customer .quote-total .price-breakdown li{margin-bottom:8px}
.customer .quote-total .visit-summary{margin:0}.customer .quote-total details{grid-column:1/-1;margin:0}
.customer .quote-terms ul{padding-left:20px}.customer .quote-terms li{margin-bottom:8px;font-size:.9375rem}
.customer .scope-review{background:white;border:1px solid #ccd7dc;border-radius:12px;padding:20px 24px;margin:20px 0}
.customer .scope-review>summary{font-size:1rem}.customer .scope-groups{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;padding-top:20px}
.customer .scope-groups dl{margin:0}.customer .scope-groups dt{font-size:.8125rem;color:#435962}.customer .scope-groups dd{margin:0 0 12px;font-size:.9375rem}
.customer .approval-box{background:#fff;border:1px solid #ccd7dc;border-radius:12px;padding:28px;display:grid;grid-template-columns:1fr 1.5fr;gap:16px 40px}
.customer .approval-box .check{font-size:.9375rem;line-height:1.5;margin:0 0 20px}.customer .approval-box .check input{min-height:0}
.customer .approval-box p{font-size:.875rem}.customer .approval-box button{width:100%}
.customer .review-provider{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin:24px 0}.customer .review-provider strong{font-size:1.25rem}.customer .review-provider small{margin:0}
@media(max-width:700px){
.customer header{padding:16px 20px;gap:16px}.customer nav{font-size:.875rem;gap:12px 16px}
.customer main{padding:24px 20px}.customer h1{font-size:1.75rem;line-height:1.2}
.customer .progress-panel{display:block;padding:20px}.customer .progress-actions{align-items:stretch;margin-top:16px}.customer .progress-actions a:last-child{align-self:flex-start}
.customer .request-builder{padding:20px 16px}.customer .step-nav{gap:8px;margin-bottom:20px}.customer .step-nav button{font-size:.8125rem}.customer .step-nav span{width:22px;height:22px;margin-right:4px}
.customer .request-builder .fields{gap:16px}.customer .form-actions{flex-wrap:wrap}.customer .form-actions button{font-size:.875rem;padding:12px}.customer .form-actions .step-next{flex:1}
.customer .quote-grid,.customer .quote-terms,.customer .quote-terms>.quote-total,.customer .approval-box,.customer .request-overview{grid-template-columns:1fr}
.customer .quote-card{padding:24px 20px}.customer .quote-facts>div{grid-template-columns:90px minmax(0,1fr);gap:12px}
.customer .scope-groups{grid-template-columns:1fr 1fr;gap:16px}.customer .approval-box{padding:24px 20px}
.customer .review-provider{display:block}.customer .review-provider small{margin-top:8px}.customer .quote-terms{gap:0}
}
@media(max-width:600px){.customer [data-step]:first-of-type .fields{grid-template-columns:repeat(2,minmax(0,1fr))}.customer [data-step]:first-of-type .field{grid-column:1/-1}.customer [data-step]:first-of-type .field:nth-last-child(-n+2){grid-column:auto}}
@media(prefers-reduced-motion:no-preference){.customer input,.customer select,.customer button{transition:background-color .15s,border-color .15s}}
