.page-contacts .page-canvas { min-height: 0; }
.page-resource_unavailable .page-canvas { min-height: 0; }
.resource-unavailable-page { padding: 60px 40px 70px; }
.resource-unavailable-page h1 { font-size: clamp(25px, 4vw, 34px); margin: 0 0 20px; }
.resource-unavailable-page p { font-size: 22px; max-width: 700px; }
.resource-unavailable-page > a { display: inline-block; margin-top: 15px; text-decoration: underline; }
.contacts-page { background: #d2d3d4; padding-bottom: 70px; font-stretch: 87.5%; }
.contacts-hero { position: relative; aspect-ratio: 2.05 / 1; }
.contacts-hero > img { display: block; width: 100%; height: 100%; object-fit: cover; }
.contacts-title, .contacts-panel { margin: 0; width: 260px; padding: 20px 30px 38px 95px; clip-path: polygon(0 0, 100% 0, 92% 78%, 0 100%); font-size: 25px; line-height: 1.2; font-weight: 700; }
.contacts-title { position: absolute; top: 0; left: 0; background: #686a6c; color: white; }
.contacts-section { display: grid; grid-template-columns: 260px minmax(0, 1fr); gap: 16px; margin-top: 38px; padding-right: 40px; align-items: start; }
.contacts-panel { background: #96989a; color: #222; }
.contacts-details { font-style: normal; font-size: 24px; line-height: 1.4; margin: 0; }
.contacts-details p { margin: 0 0 28px; }
.contacts-details p:last-child { margin-bottom: 0; }
.contacts-page a { color: inherit; font-weight: 700; text-decoration: none; overflow-wrap: anywhere; }
.contacts-page a:hover { text-decoration: underline; text-underline-offset: 4px; }
.contacts-page a:focus-visible { outline: 3px solid var(--brand-blue); outline-offset: 4px; }
.contacts-social-links { display: flex; flex-wrap: wrap; gap: 12px 24px; margin-top: 8px; font-size: 18px; }
.contacts-forms-section { margin-top: 60px; }
.contacts-form-list { list-style: none; padding: 0; margin: 0; }
.contacts-form-list li { display: flex; align-items: flex-start; gap: 10px; margin-bottom: 14px; font-size: 23px; line-height: 1.35; font-weight: 700; }
.contacts-document-icon { flex: 0 0 28px; width: 28px; height: 30px; color: #686a6c; }
.contacts-form-pending small { display: inline-block; font-size: 14px; font-weight: 400; margin-left: 10px; color: #4d4f51; }
@media (max-width: 1000px) {
    .contacts-title, .contacts-panel { width: 215px; padding-left: 45px; }
    .contacts-section { grid-template-columns: 215px minmax(0, 1fr); padding-right: 24px; }
    .contacts-details { font-size: 21px; }
    .contacts-form-list li { font-size: 20px; }
}
@media (max-width: 700px) {
    .contacts-hero { aspect-ratio: 1.5 / 1; }
    .contacts-title, .contacts-panel { width: 180px; font-size: 22px; padding: 16px 28px 30px 24px; }
    .contacts-section { display: block; padding-right: 0; margin-top: 28px; }
    .contacts-details, .contacts-forms { padding: 20px 24px 0; }
    .contacts-details { font-size: 20px; }
    .contacts-details strong { overflow-wrap: anywhere; }
    .contacts-page { padding-bottom: 36px; }
    .contacts-form-list li { font-size: 19px; }
    .contacts-form-pending small { display: block; margin-left: 0; margin-top: 3px; }
}
