.pole-unit-card {
    display: flex;
    flex-direction: column;
    gap: 24px;
    padding: 24px;
    border-radius: 24px;
    background: #fff;
}

.pole-unit-card .pole-unit-card__title {
    margin: 0;
    color: #000;
    font: 700 45px/1.13 Rubik, Arial, sans-serif;
    text-align: left;
    text-transform: uppercase;
    overflow-wrap: anywhere;
}

.pole-unit-card__meta {
    display: flex;
    min-height: 51px;
    align-items: center;
    gap: 31px;
}

.pole-unit-card__item {
    display: flex;
    min-width: 0;
    align-items: center;
    gap: 12px;
    color: #00142a;
    text-decoration: none;
}

.pole-unit-card__item--address { flex: 0 1 294px; }
.pole-unit-card__item--hours { flex: 0 1 260px; }
.pole-unit-card__item--contact { flex: 0 0 auto; }
.pole-unit-card__item > img { display: block; flex: 0 0 auto; }
.pole-unit-card__item p, .pole-unit-card__contact-copy {
    min-width: 0;
    margin: 0;
    color: inherit;
    font: 400 12.355px/1.2 Rubik, Arial, sans-serif;
    overflow-wrap: anywhere;
}

.pole-unit-card__item--contact:hover, .pole-unit-card__item--contact:focus-visible,
.pole-unit-card__item--contact a:hover, .pole-unit-card__item--contact a:focus-visible { color: #0051ff; }
.pole-unit-card__item--contact a { color: inherit; text-decoration: none; }
.pole-unit-card__contact-icons { display: inline-flex; flex: 0 0 auto; align-items: center; gap: 8px; }
.pole-unit-card__contact-icons img { display: block; }
.pole-unit-card__courses {
    display: inline-flex;
    flex: 0 0 209px;
    align-items: center;
    justify-content: center;
    width: 209px;
    min-height: 51px;
    margin-left: auto;
    padding: 8px 20px;
    border-radius: 60px;
    background: #0051ff;
    color: #fff;
    font: 800 18px/1.1 Inter, Rubik, Arial, sans-serif;
    text-align: center;
    text-decoration: none;
    white-space: nowrap;
}
.pole-unit-card__courses:hover { background: #0040d6; color: #fff; }
.pole-unit-card__courses:focus-visible { outline: 3px solid #00dfe8; outline-offset: 3px; }
.pole-unit-card__map {
    display: block;
    width: 100%;
    height: 248px;
    border: 0;
    border-radius: 20px;
    background: #dfbebe;
}

@media (max-width: 900px) {
    .pole-unit-card__meta { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: stretch; gap: 16px 24px; }
    .pole-unit-card__item--address, .pole-unit-card__item--hours, .pole-unit-card__item--contact { width: auto; }
    .pole-unit-card__item--contact { grid-column: 1 / -1; }
    .pole-unit-card__courses { justify-self: end; }
}

@media (max-width: 768px) {
    .pole-unit-card { gap: 20px; padding: 16px; border-radius: 20px; }
    .pole-unit-card .pole-unit-card__title { font-size: 26px; line-height: 1.1; }
    .pole-unit-card__meta { grid-template-columns: minmax(0, 1fr); gap: 16px; }
    .pole-unit-card__item, .pole-unit-card__item--contact { grid-column: auto; width: 100%; }
    .pole-unit-card__item p, .pole-unit-card__contact-copy { font-size: 14px; }
    .pole-unit-card__courses { grid-column: auto; justify-self: stretch; width: 100%; margin-left: 0; }
    .pole-unit-card__map { height: 220px; border-radius: 14px; }
}
