/* ==========================================================================
   HORIZONS — "Strategic Vision & Next Growth Horizons"
   ========================================================================== */

.horizons {
    background-color: #10151d;
}

.horizons__heading {
    font-size: 32px;
    font-weight: 800;
    color: var(--medal-white);
    margin: 0 0 40px;
}

.horizons__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-template-rows: auto 70px auto;
    gap: 0 24px;
}

.horizon-card {
    background-color: #1a2029;
    border: 1px solid var(--medal-border);
    padding: 20px 24px;
}

.horizon-card__label {
    color: var(--medal-red);
    font-size: 13px;
    font-weight: 700;
    display: block;
    margin-bottom: 4px;
}

.horizon-card h3 {
    color: var(--medal-white);
    font-size: 20px;
    font-weight: 800;
    line-height: 1.25;
    margin: 0 0 10px;
}

.horizon-card p {
    color: var(--medal-gray-light);
    font-size: 13.5px;
    line-height: 1.55;
    margin: 0 0 16px;
}

.horizon-card__image {
    height: 180px;
    background-size: cover;
    background-position: center;
    background-color: #262d38;
}

/* --- Красный коннектор посередине --- */

.horizons__connector {
    grid-column: 1 / 3;
    position: relative;
    height: 70px;
}

.horizons__connector::before {
    content: '';
    position: absolute;
    top: 50%;
    left: 0;
    right: 0;
    height: 4px;
    background-color: var(--medal-red);
    transform: translateY(-50%);
}

.horizons__connector::after {
    content: '';
    position: absolute;
    top: 50%;
    right: -6px;
    width: 0;
    height: 0;
    border-top: 10px solid transparent;
    border-bottom: 10px solid transparent;
    border-left: 16px solid var(--medal-red);
    transform: translateY(-50%);
}

.horizons__connector-label {
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    background-color: var(--medal-red);
    color: var(--medal-white);
    font-weight: 800;
    font-size: 14px;
    padding: 8px 16px;
    z-index: 2;
}

.horizons__connector-stem {
    position: absolute;
    top: 0;
    bottom: 0;
    width: 4px;
    background-color: var(--medal-red);
}

.horizons__connector-stem--1 { left: 25%; }
.horizons__connector-stem--2 { left: 75%; }

@media (max-width: 900px) {
    .horizons__grid {
        grid-template-columns: 1fr;
        grid-template-rows: none;
        gap: 20px;
    }

    .horizons__connector {
        grid-column: 1;
        height: 40px;
    }

    .horizons__connector-stem,
    .horizons__connector::after {
        display: none;
    }
}
