.contact-page__grid {
    display: grid;
    gap: 1rem;
    align-items: start;
}

.contact-card {
    display: grid;
    gap: 1rem;
    padding: 1.25rem;
}

.contact-card--accent {
    background: var(--accent-panel-bg);
}

.contact-card__title {
    margin: 0;
    font-size: 1.35rem;
    line-height: 1.2;
}

.contact-directory {
    display: grid;
    gap: 0.85rem;
    margin: 0;
}

.contact-directory__row {
    display: grid;
    gap: 0.25rem;
    padding: 0.95rem 1rem;
    border: 1px solid rgba(255, 255, 255, 0.08);
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.03), rgba(255, 255, 255, 0.01));
    text-decoration: none;
    transition: transform 0.18s ease, border-color 0.18s ease, background-color 0.18s ease, box-shadow 0.18s ease;
}

.contact-directory__row:hover,
.contact-directory__row:focus-visible {
    border-color: var(--soft-line);
    background: linear-gradient(180deg, rgba(255, 45, 33, 0.12), rgba(255, 255, 255, 0.04));
    box-shadow: 0 14px 36px rgba(0, 0, 0, 0.28);
    transform: translateY(-1px);
    outline: none;
}

.contact-directory__label {
    color: var(--muted);
    font-size: 0.95rem;
    text-decoration: none;
}

.contact-directory__value {
    font-size: 1rem;
    line-height: 1.5;
    text-decoration: none;
}

.contact-company {
    color: var(--muted);
    line-height: 1.7;
}

.contact-company p {
    margin: 0 0 1rem;
}

.contact-company p:last-child {
    margin-bottom: 0;
}

@media (min-width: 900px) {
    .contact-page__grid {
        grid-template-columns: minmax(0, 1.3fr) minmax(280px, 0.9fr);
    }
}
