/* Standalone quote page. All rules are scoped to preserve the home contact form. */
.quote-page{--quote-electric:#206fff;background:var(--ink,#05042F);color:var(--mist,#F3F4FA);outline:none}
.quote-page *{box-sizing:border-box}
.quote-page [id]{scroll-margin-top:120px}
.quote-shell{padding:140px 0 84px;background:radial-gradient(ellipse at 0% 10%,rgba(32,111,255,.22),transparent 48%),linear-gradient(135deg,#05042F 18%,#080669 100%)}
.quote-breadcrumb{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin:0 0 38px;font-size:13px;line-height:1.7;color:rgba(255,255,255,.8)}
.quote-breadcrumb a{color:#fff;text-decoration:underline;text-underline-offset:4px}
.quote-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);grid-template-rows:auto 1fr;column-gap:clamp(32px,5vw,72px);row-gap:38px;align-items:start}
.quote-introduction,.quote-form-panel{min-width:0}
.quote-introduction{grid-column:1;grid-row:1}
.quote-introduction .eyebrow{background:none;border:0;padding:0;letter-spacing:.2em}
.quote-page h1{margin:24px 0;font-size:clamp(2.5rem,4.7vw,4.2rem);line-height:1.1;letter-spacing:-.035em;font-weight:800;color:#fff;overflow-wrap:break-word;text-wrap:balance}
.quote-lead{margin:0;max-width:540px;font-size:17px;line-height:1.8;color:rgba(255,255,255,.88)}
.quote-contact-details{grid-column:1;grid-row:2;min-width:0}
.quote-contact-details h2{margin:0;font-size:18px;line-height:1.5;font-weight:750;color:#fff}
.quote-page .contact-items{margin-top:16px;gap:12px}
.quote-page .contact-item{padding:16px;background:rgba(255,255,255,.055)}
.quote-page .contact-item>div{min-width:0;overflow-wrap:anywhere}
.quote-page .contact-item .icon{color:#fff;background:rgba(32,111,255,.16);border-color:rgba(32,111,255,.5)}
.quote-page .contact-item small{font-size:12px;line-height:1.5;color:rgba(255,255,255,.76);margin-bottom:4px}
.quote-page .contact-item strong,.quote-page .contact-item a{font-size:15px;line-height:1.6;font-weight:650}
.quote-page .contact-item a{text-decoration:underline;text-underline-offset:4px}
.quote-form-panel{grid-column:2;grid-row:1 / span 2;outline:none}
.quote-page .quote-form{position:relative;gap:19px;padding:32px;background:rgba(255,255,255,.075);border-color:rgba(255,255,255,.24);box-shadow:0 18px 48px rgba(0,0,0,.14)}
.quote-form-heading h2{margin:0 0 8px;font-size:24px;line-height:1.35;letter-spacing:-.02em;color:#fff;font-weight:750}
.quote-form-heading p{margin:0;font-size:12px;line-height:1.65;color:rgba(255,255,255,.78)}
.quote-form .form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.quote-form .field{min-width:0}
.quote-form .field label{font-size:13px;line-height:1.6;color:rgba(255,255,255,.88)}
.quote-form .field input,.quote-form .field select,.quote-form .field textarea{min-width:0;max-width:100%;font-size:16px;line-height:1.5;background:rgba(5,4,47,.4);border-color:rgba(255,255,255,.32);padding:12px 13px}
.quote-form .field textarea{min-height:150px}
.quote-form .field input::placeholder,.quote-form .field textarea::placeholder{color:rgba(255,255,255,.58)}
.quote-form .field select option{background:#080669;color:#fff}
.quote-form .form-consent{font-size:12px;line-height:1.75;color:rgba(255,255,255,.88);gap:11px}
.quote-form .form-consent input{flex:0 0 20px;accent-color:var(--quote-electric);margin:3px 0 0}
.quote-form .form-consent span{min-width:0}
.quote-form .form-privacy-note{margin:0;font-size:12px;line-height:1.8;color:rgba(255,255,255,.82)}
.quote-form .submit{font-size:14px;line-height:1.6;padding:15px 18px;min-height:50px;white-space:normal;text-align:center}
.quote-form .submit:hover{background:#F3F4FA}
.quote-page .form-message{margin-bottom:16px;padding:17px 19px;font-size:14px;line-height:1.75;color:#fff}
.quote-page .success{background:#104239;border-color:#5bcaa8}
.quote-page .error{background:#542334;border-color:#f396a7}
.quote-page a:focus-visible,.quote-form .submit:focus-visible,.quote-form input:focus-visible,.quote-form select:focus-visible,.quote-form textarea:focus-visible{outline:3px solid #fff;outline-offset:4px}
.quote-form .field input:focus,.quote-form .field select:focus,.quote-form .field textarea:focus{border-color:#fff;box-shadow:0 0 0 3px rgba(32,111,255,.4)}
@media(max-width:960px){
 .quote-grid{grid-template-columns:minmax(0,1fr);grid-template-rows:auto;gap:40px}
 .quote-introduction{grid-column:1;grid-row:1;max-width:760px}
 .quote-page .contact-items{grid-template-columns:repeat(2,minmax(0,1fr))}
 .quote-page .quote-form{max-width:760px}
 .quote-form-panel{grid-column:1;grid-row:2;max-width:760px;width:100%}
 .quote-contact-details{grid-column:1;grid-row:3;max-width:760px;width:100%}
 .quote-lead{max-width:700px}
}
@media(max-width:600px){
 .quote-shell{padding:116px 0 60px}
 .quote-breadcrumb{margin-bottom:28px;font-size:12px;gap:9px}
 .quote-page h1{font-size:clamp(2.15rem,8.6vw,3rem);margin:20px 0}
 .quote-lead{font-size:16px;line-height:1.8}
 .quote-page .contact-items{grid-template-columns:minmax(0,1fr)}
 .quote-page .quote-form{padding:24px 20px}
 .quote-form .form-grid{grid-template-columns:minmax(0,1fr);gap:19px}
 .quote-form-heading h2{font-size:22px}
}
