

:where(#primary > section) { padding: var(--section-gap) 0; }

.contacts-maps,
.contacts-main { background: var(--color-bg-alt); }

.contacts-maps .page-title { margin: 0 0 var(--sp-6); }

.contacts-maps__grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: var(--sp-6); }
.contacts-maps__frame {
    aspect-ratio: 16 / 10;
    border-radius: var(--radius-lg);
    overflow: hidden;
    box-shadow: var(--shadow);
}
.contacts-maps__frame iframe { display: block; width: 100%; height: 100%; border: 0; }
.contacts-maps__address {
    display: flex;
    align-items: flex-start;
    gap: var(--sp-2);
    margin-top: var(--sp-3);
    color: var(--color-text-light);
    font-size: var(--fs-sm);
}
.contacts-maps__address svg { flex: none; margin-top: 2px; color: var(--color-primary); }

.contacts-cities__head { text-align: center; align-items: center; margin-bottom: var(--sp-5); }

.contacts-main__grid { display: grid; grid-template-columns: 1.3fr 1fr; gap: var(--sp-8); align-items: start; }

.contacts-info {
    padding: var(--sp-6);
    background: var(--color-bg);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-lg);
}
.contacts-info__row {
    display: flex;
    align-items: center;
    gap: var(--sp-3);
    margin-bottom: var(--sp-4);
    color: var(--color-text-light);
}
.contacts-info__row:last-child { margin-bottom: 0; }
.contacts-info__row svg { flex: none; color: var(--color-primary); }
.contacts-info__row a { color: inherit; }
.contacts-info__row a:hover { color: var(--color-primary); }
.contacts-info__tag {
    display: inline-block;
    margin-left: var(--sp-2);
    padding: 1px var(--sp-3);
    background: var(--color-accent-soft);
    border-radius: var(--radius-pill);
    font-size: var(--fs-xs);
    font-weight: 600;
    color: var(--color-primary);
}

@media (max-width: 1023px) {
    .contacts-main__grid { grid-template-columns: 1fr; }
    .contacts-info { order: -1; }
}

@media (max-width: 767px) {
    .contacts-maps__grid { grid-template-columns: 1fr; }
}
