.contact-page { background: #fff; }
.contact-hero { position: relative; display: flex; align-items: center; min-height: 330px; overflow: hidden; background: #061b2c url("assets/home-contact-truck.jpg") center 42% / cover no-repeat; }
.contact-hero::before { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(3,13,22,.96), rgba(3,13,22,.76) 38%, rgba(3,13,22,.14) 76%); }
.contact-hero .container { position: relative; z-index: 1; }
.contact-hero-copy { max-width: 590px; padding: 60px 0; }
.contact-hero h1 { margin: 0 0 15px; color: #fff; font-size: clamp(39px, 5vw, 58px); font-weight: 900; line-height: 1.03; }
.contact-hero p { max-width: 520px; margin: 0; color: #fff; font-size: 16px; font-weight: 600; line-height: 1.7; }
.contact-main { padding: 72px 0; }
.contact-layout { display: grid; grid-template-columns: minmax(0, 1.35fr) minmax(300px, .65fr); box-shadow: 0 18px 50px rgba(6,27,44,.12); }
.contact-form-panel { padding: 42px; background: #fff; }
.contact-details-panel { padding: 42px 34px; background: linear-gradient(145deg, #04131f, #07304b); color: #fff; }
.contact-label { display: inline-block; margin-bottom: 9px; color: #f9ad08; font-size: 11px; font-weight: 900; letter-spacing: .09em; text-transform: uppercase; }
.contact-main h2,
.contact-map-heading h2 { margin: 0 0 14px; color: #071426; font-size: clamp(29px, 4vw, 39px); font-weight: 900; line-height: 1.1; }
.contact-form-panel > p { max-width: 650px; margin: 0 0 26px; color: #5b6878; }
.contact-page .requirement-form label { display: block; margin: 0 0 7px; color: #172235; font-size: 12px; font-weight: 900; }
.contact-page .requirement-form input,
.contact-page .requirement-form textarea { border: 1px solid #dce2e8; background: #f8fafb; color: #071426; padding: 12px 13px; }
.contact-page .requirement-form textarea { min-height: 130px; }
.contact-page .requirement-form .btn { margin-top: 18px; padding: 12px 23px; }
.contact-page .requirement-form input:focus:invalid,
.contact-page .requirement-form textarea:focus:invalid { border-color: #b73737; box-shadow: 0 0 0 3px rgba(183,55,55,.1); }
.contact-page .requirement-form button[disabled] { cursor: wait; opacity: .68; }
.form-honeypot { position: absolute !important; left: -10000px !important; width: 1px; height: 1px; overflow: hidden; }
.form-status { min-height: 22px; margin: 13px 0 0; font-size: 13px; font-weight: 800; }
.form-status.is-success { color: #19723a; }
.form-status.is-error { color: #b73737; }
.contact-details-panel h2 { margin: 0 0 30px; color: #fff; font-size: 29px; font-weight: 900; }
.contact-detail { display: grid; grid-template-columns: 40px 1fr; gap: 13px; padding: 20px 0; border-bottom: 1px solid rgba(255,255,255,.16); }
.contact-detail > span { color: #f9ad08; font-size: 24px; font-weight: 900; }
.contact-detail strong { display: block; margin-bottom: 4px; color: #fff; font-size: 13px; }
.contact-detail a,
.contact-detail p { margin: 0; color: rgba(255,255,255,.76); font-size: 13px; line-height: 1.55; }
.contact-map-section { padding: 64px 0 76px; background: #f5f7f9; }
.contact-map-heading { margin-bottom: 28px; }
.contact-map-grid { display: grid; grid-template-columns: 320px minmax(0,1fr); min-height: 430px; background: #fff; box-shadow: 0 15px 40px rgba(6,27,44,.1); }
.contact-location-list { padding: 24px; }
.contact-page .office-item { padding: 18px 0; }
.contact-map { width: 100%; min-height: 430px; border: 0; }
@media (max-width: 991.98px) { .contact-layout { grid-template-columns: 1fr; } .contact-map-grid { grid-template-columns: 1fr; } .contact-location-list { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; } }
@media (max-width: 767.98px) { .contact-hero { min-height: 380px; background-position: 64% center; } .contact-hero::before { background: rgba(3,13,22,.66); } .contact-hero-copy { padding: 70px 0 52px; } .contact-hero h1 { font-size: 39px; } .contact-main { padding: 44px 0; } .contact-form-panel, .contact-details-panel { padding: 28px 20px; } .contact-location-list { grid-template-columns: 1fr; } .contact-map { min-height: 360px; } }
