.contact-page .inner-banner{background-image:url('../../source/contact/banner.webp');background-position:center 55%}
.contact-page .inner-banner::before{background:linear-gradient(90deg,rgba(10,14,12,.88),rgba(10,14,12,.56) 60%,rgba(10,14,12,.34)),linear-gradient(180deg,rgba(8,11,9,.18),rgba(8,11,9,.52))}
.contact-layout{display:grid;grid-template-columns:minmax(300px,.62fr) minmax(0,1.38fr);gap:clamp(60px,9vw,140px);align-items:start}
.contact-intro h2{margin:0 0 24px;max-width:11ch;font-size:clamp(40px,4.8vw,68px);line-height:.96;letter-spacing:-.055em;font-weight:500}
.contact-intro>p{margin:0 0 42px;max-width:39ch;color:var(--muted);font-size:17px;line-height:1.65}
.contact-details{border-top:1px solid var(--line)}
.contact-detail{padding:20px 0;border-bottom:1px solid var(--line)}
.contact-detail span{display:block;margin-bottom:7px;color:var(--muted);font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.contact-detail a,.contact-detail address{color:var(--ink);font-size:17px;font-style:normal;line-height:1.5;text-decoration:none}
.contact-detail a:hover{color:var(--orange)}
.contact-form{padding:clamp(30px,4vw,54px);background:#f4f3ef;border-top:4px solid var(--orange)}
.contact-form-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,.72fr);gap:36px;align-items:end;margin-bottom:34px}
.contact-form h2{margin:0;font-size:clamp(32px,3.4vw,48px);line-height:1;letter-spacing:-.045em;font-weight:500}
.contact-form-head p{margin:0;color:var(--muted);font-size:14px;line-height:1.6}
.contact-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 20px}
.contact-field{display:flex;flex-direction:column;gap:9px}
.contact-field.full{grid-column:1/-1}
.contact-field label{font-size:12px;font-weight:700;letter-spacing:.03em}
.contact-field input,.contact-field select,.contact-field textarea{width:100%;min-height:54px;padding:14px 16px;background:#fff;color:var(--ink);border:1px solid #c9cbc6;border-radius:0;font:inherit;font-size:15px;outline:none;transition:border-color .2s ease,box-shadow .2s ease}
.contact-field textarea{min-height:148px;resize:vertical;line-height:1.5}
.contact-field input:focus,.contact-field select:focus,.contact-field textarea:focus{border-color:var(--orange);box-shadow:0 0 0 3px rgba(242,95,24,.12)}
.contact-submit{display:flex;align-items:center;justify-content:space-between;gap:22px;margin-top:24px}
.contact-submit p{margin:0;max-width:40ch;color:var(--muted);font-size:12px;line-height:1.5}
.contact-submit button{min-height:54px;padding:0 30px;background:var(--orange);color:#fff;border:1px solid var(--orange);border-radius:0;font:inherit;font-size:12px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;cursor:pointer}
.contact-submit button:hover{background:var(--ink);border-color:var(--ink)}
.contact-success{display:none;margin-top:18px;padding:14px 16px;background:#e7efe8;color:#24482b;font-size:14px}.contact-success.is-visible{display:block}
@media(max-width:920px){.contact-layout{grid-template-columns:1fr;gap:48px}.contact-intro h2{max-width:14ch}.contact-form-head{grid-template-columns:1fr;gap:14px}}
@media(max-width:620px){.contact-fields{grid-template-columns:1fr}.contact-field.full{grid-column:auto}.contact-form{padding:28px 22px}.contact-submit{align-items:stretch;flex-direction:column}.contact-submit button{width:100%}}
