.connectivity-section {
    margin-top: clamp(112px, 12vw, 184px);
}

.connectivity-intro {
    max-width: 850px;
    margin-bottom: clamp(58px, 7vw, 106px);
}

.connectivity-intro h2::before,
.connectivity-row__text::before {
    content: '';
    display: block;
    width: clamp(52px, 5vw, 78px);
    height: 1px;
    margin-bottom: 21px;
    background: linear-gradient(90deg, var(--gold), rgba(215, 218, 222, .58));
}

.connectivity-intro__label {
    margin: 0 0 20px;
    color: var(--gold);
    font-size: 10px;
    font-weight: 600;
    line-height: 1.5;
    letter-spacing: .23em;
    text-transform: uppercase;
}

.connectivity-intro h2 {
    margin: 0;
    font-family: Manrope, Arial, sans-serif;
    font-size: clamp(36px, 4.6vw, 70px);
    font-weight: 500;
    line-height: 1.01;
    letter-spacing: -.045em;
}

.connectivity-intro h2::before { margin-top: 0; }

.connectivity-intro > p:last-child {
    max-width: 720px;
    margin: 24px 0 0;
    color: var(--muted);
    font-size: clamp(14px, 1.05vw, 16px);
    line-height: 1.72;
}

.connectivity-rows {
    display: flex;
    flex-direction: column;
    gap: clamp(74px, 8vw, 122px);
}

.connectivity-row {
    display: grid;
    grid-template-columns: minmax(0, 7fr) minmax(280px, 5fr);
    gap: clamp(42px, 5.5vw, 88px);
    align-items: center;
}

.connectivity-row--smartphone {
    grid-template-columns: minmax(280px, 5fr) minmax(0, 7fr);
}

.connectivity-media {
    position: relative;
    min-width: 0;
    height: clamp(370px, 35vw, 560px);
    overflow: hidden;
    background: var(--surface);
    outline: 1px solid rgba(215, 218, 222, .065);
    outline-offset: -1px;
}

.connectivity-media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    filter: brightness(.72) saturate(.76) contrast(1.04);
    transform: scale(1.012);
    transition: filter 650ms ease, transform 800ms cubic-bezier(.22, 1, .36, 1);
}

.connectivity-media:hover img { filter: brightness(.8) saturate(.82) contrast(1.05); }

.connectivity-row__text {
    max-width: 480px;
}

.connectivity-row__title {
    margin: 0;
    color: rgba(215, 218, 222, .72);
    font-size: 10px;
    font-weight: 600;
    line-height: 1.5;
    letter-spacing: .18em;
    text-transform: uppercase;
}

.connectivity-row__text h3 {
    margin: 18px 0 0;
    font-family: Manrope, Arial, sans-serif;
    font-size: clamp(28px, 3vw, 46px);
    font-weight: 500;
    line-height: 1.05;
    letter-spacing: -.04em;
}

.connectivity-row__body {
    margin: 21px 0 0;
    color: var(--muted);
    font-size: clamp(13px, .95vw, 15px);
    line-height: 1.72;
}

.connectivity-row__more {
    display: inline-block;
    margin-top: 24px;
    color: var(--text);
    font-size: 11px;
    font-weight: 600;
    letter-spacing: .06em;
    opacity: .66;
    transition: opacity 300ms ease, color 300ms ease;
}

.connectivity-row__more:hover,
.connectivity-row__more:focus-visible { color: var(--gold); opacity: 1; }

@media (max-width: 980px) {
    .connectivity-row,
    .connectivity-row--smartphone {
        grid-template-columns: minmax(0, 1.08fr) minmax(260px, .92fr);
        gap: clamp(30px, 4vw, 48px);
    }
    .connectivity-row--smartphone { grid-template-columns: minmax(260px, .92fr) minmax(0, 1.08fr); }
    .connectivity-media { height: clamp(340px, 43vw, 440px); }
}

@media (max-width: 720px) {
    .connectivity-section { margin-top: 92px; }
    .connectivity-intro { margin-bottom: 50px; }
    .connectivity-row,
    .connectivity-row--smartphone {
        display: flex;
        flex-direction: column;
        align-items: stretch;
        gap: 28px;
    }
    .connectivity-row__text { order: 1; max-width: 620px; }
    .connectivity-media { order: 2; width: 100%; height: clamp(320px, 72vw, 450px); }
    .connectivity-row__text h3 { font-size: clamp(29px, 8vw, 42px); }
}

@media (prefers-reduced-motion: reduce) {
    .connectivity-media img,
    .connectivity-row__more { transition: none; }
    .connectivity-media:hover img { transform: none; }
}
