
/* Shared responsive corrections, loaded after page styles. */
@media(max-width:1100px) {
 .site-header .nav__inner { grid-template-columns:minmax(0,1fr) auto; min-height:72px; gap:12px; }
 .site-header .nav__links { display:none; }
 .site-header .nav__actions { grid-column:2; gap:12px; }
 .site-header .menu-btn { display:block; }
}
@media(max-width:640px) {
 .purpose-grid, .included-grid, .docs-grid, .pricing-panel, .result-grid { grid-template-columns:minmax(0,1fr); }
 .purpose-grid .purpose-card, .purpose-grid .purpose-card:nth-child(n), .included-grid article:nth-child(n) { padding-inline:0; border-right:0; min-width:0; }
 .purpose-grid .purpose-card:not(:last-child), .included-grid article:not(:last-child) { border-bottom:1px solid var(--line); }
 .service-group { grid-template-columns:minmax(0,1fr); gap:24px; }
 .service-group__title { position:static; }
 .service-list { min-width:0; }
 .service-link { gap:12px; }
 .service-link__name { min-width:0; overflow-wrap:break-word; }
 main .button { max-width:100%; min-width:0; white-space:normal; text-align:center; line-height:1.35; }
 .overview-cta { max-width:100%; }
 .lead-form__fields { grid-template-columns:minmax(0,1fr); }
 .lead-form__field--wide { grid-column:auto; }
 .footer__grid { grid-template-columns:minmax(0,1fr); gap:28px; }
}
@media(max-width:480px) {
 .site-header .nav__inner { gap:8px; }
 .site-header .nav__actions { gap:8px; }
 .site-header .brand { font-size:20px; }
 .site-header .nav__phone { display:inline-flex; width:42px; height:42px; padding:0; justify-content:center; }
 .site-header .nav__phone > span:last-child { display:none; }
 .site-header .nav__phone-icon { display:grid; }
 .site-header .menu-btn { flex:0 0 45px; }
}
@media(max-width:640px) {
 .materials-pricing-grid { grid-template-columns:minmax(0,1fr); gap:28px; }
 .materials-side { min-width:0; }
 .materials-side .button { width:100%; align-self:stretch; }
 .hero--service h1 { font-size:clamp(30px,9vw,48px); overflow-wrap:anywhere; }
}

/* Hide the pending banner only while the dialog is open; consent is unchanged. */
body.no-scroll #cookieBanner { visibility:hidden; pointer-events:none; }
#consultationModal { z-index:1300; }

.lead-form__field select { width:100%; min-height:58px; padding:12px 16px; border:1px solid rgba(255,255,255,.25); border-radius:0; background:rgba(255,255,255,.035); color:var(--white); font:inherit; }
.lead-form__field select option { background:#263c50; color:#fffdf8; }
.lead-form__field select:focus-visible { outline:2px solid var(--orange-soft); outline-offset:2px; }

/* Match all shared forms and footers to the current homepage. */
body .page .lead-form { background:#213548; color:#fffdf8; }
body .page .lead-form__title { color:#fffdf8; }
body .page .lead-form__title span { color:#ef873c; }
body .page .lead-form__head p { color:rgba(255,255,255,.72); }
body .page .lead-form .eyebrow { color:rgba(255,255,255,.58); }
body .page .lead-form__card { background:rgba(255,255,255,.045); border-color:rgba(255,255,255,.2); }
body .page .lead-form__field label { color:rgba(255,255,255,.48); }
body .page .lead-form__field input, body .page .lead-form__field textarea, body .page .lead-form__field select { color:#fffdf8; background:rgba(255,255,255,.035); border-color:rgba(255,255,255,.25); }
body .page .lead-form__field input::placeholder, body .page .lead-form__field textarea::placeholder { color:rgba(255,255,255,.38); }
body .page .lead-form__field input:focus, body .page .lead-form__field textarea:focus, body .page .lead-form__field select:focus { background:rgba(255,255,255,.06); border-color:#ef873c; }
body .page .lead-form__submit { background:#cf7035; border-color:#cf7035; color:#fffdf8; }
body .page .lead-form__submit:hover { background:#bb602c; border-color:#bb602c; }
body .page .lead-form__consent { color:rgba(255,255,255,.68); }
body .page .lead-form__consent a { color:rgba(255,255,255,.92); }
body .page .lead-form__status { color:rgba(255,255,255,.76); }
body .footer { background:#192735; color:#fffdf8; }
body .footer .brand__dot { color:#ef873c; }
body .footer .footer__col h3 { color:#f3eee5; }
body .footer .footer__col p, body .footer .footer__col a { color:#e6e8e8; }
body .footer .footer__col .footer__address-label { color:#cbd3d9; }
body .footer .footer__bottom { color:#cbd3d9; }
#consultationModal { --ink:#192735; --navy:#465d73; --navy-dark:#263c50; --orange:#e85d3f; --orange-soft:#f2a18e; --line-strong:rgba(25,39,53,.42); color:#192735; }
/* Contact copy on the left, form controls on the right. */
body .page .lead-form > .shell { display:grid; grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr); gap:clamp(32px,5vw,80px); align-items:start; }
body .page .lead-form__head { margin-bottom:0; min-width:0; }
body .page .lead-form__title { font-size:clamp(38px,4.3vw,68px); line-height:1; }
body .page .lead-form__intro { font-size:clamp(17px,1.5vw,21px); line-height:1.5; }
body .page .lead-form__card { min-width:0; padding:clamp(22px,2.3vw,36px); }
body .page .lead-form__fields { grid-template-columns:minmax(0,1fr) minmax(0,1fr); }
body .page .lead-form__field--wide { grid-column:1/-1; }
body .page .lead-form__field textarea { height:110px; }
body .page .lead-form__submit { grid-column:1/-1; width:auto; min-width:220px; justify-self:start; }
@media(max-width:980px) {
 body .page .lead-form > .shell { grid-template-columns:minmax(0,1fr); gap:32px; }
 body .page .lead-form__head { max-width:680px; }
}
@media(max-width:640px) {
 body .page .lead-form__fields { grid-template-columns:minmax(0,1fr); }
 body .page .lead-form__field--wide, body .page .lead-form__submit { grid-column:auto; }
 body .page .lead-form__submit { width:100%; min-width:0; }
}
body .page .lh-contact .lead-form__title { font-size:clamp(46px,5.5vw,88px); } @media(max-width:640px) { body .page .lh-contact .lead-form__title { font-size:clamp(40px,11vw,56px); } }
@media(min-width:981px) { body .page .lh-contact .lead-form__card { margin-top:32px; } }
