﻿/* =========================================================
   ==== Split Section — Expertise / About  ====
   ========================================================= */

.split-section {
    position: relative;
    overflow: hidden;
    --split-radius: var(--radius-lg);
    color: var(--text-ink);
}

    .split-section .split-bg {
        position: absolute;
        inset: 0;
        pointer-events: none;
        z-index: 0;
        background: radial-gradient(900px 360px at 12% 0%, color-mix(in srgb, var(--brand-1) 10%, transparent) 0%, transparent 70%), radial-gradient(680px 260px at 95% 85%, color-mix(in srgb, var(--brand-2) 9%, transparent) 0%, transparent 75%), linear-gradient(180deg, var(--surface-2) 0%, var(--surface) 70%);
    }

    /* used variants */
    .split-section.split-section--bleed {
        background: linear-gradient(180deg, var(--surface-2) 0%, var(--surface) 60%);
        padding-block: clamp(2rem, 5vw, 4rem);
    }

        .split-section.split-section--bleed > .container {
            max-width: min(1200px, 92vw);
        }

    .split-section.split-section--alt .split-card {
        box-shadow: 0 10px 26px rgba(0,0,0,.06);
        border: 1px solid rgba(0,0,0,.06);
    }

    .split-section.split-section--alt .split-media::after {
        background: linear-gradient( 180deg, rgba(0,0,0,0) 50%, color-mix(in srgb, var(--brand-1) 8%, transparent) );
    }

/* Text card */
.split-card {
    position: relative;
    z-index: 1;
    background: var(--surface);
    border-radius: var(--split-radius);
    box-shadow: var(--shadow);
    padding: clamp(1rem, 2.5vw, 2.25rem);
    border: 1px solid rgba(0,0,0,.04);
    overflow: hidden;
}

    .split-card::after {
        content: "";
        position: absolute;
        top: -60px;
        right: -60px;
        width: 160px;
        height: 160px;
        border-radius: 50%;
        background: radial-gradient( closest-side, color-mix(in srgb, var(--brand-2) 35%, transparent), transparent 70% );
        filter: blur(2px);
    }

    .split-card header h2,
    .about-header h2 {
        font-weight: 800;
        letter-spacing: .2px;
        line-height: 1.18;
        font-size: clamp(1.25rem, 1.5rem + .8vw, 2rem);
        margin-bottom: .5rem;
        position: relative;
        padding-left: 1.25rem;
    }

        .split-card header h2::before,
        .about-header h2::before {
            content: "";
            position: absolute;
            inset: 0 auto 0 0;
            width: 6px;
            border-radius: 6px;
            background: linear-gradient(180deg, var(--brand-2), var(--brand-1));
            transform: translateY(2px);
        }

    .split-card .lead {
        font-size: clamp(1rem, .9rem + .4vw, 1.15rem);
    }

.split-media {
    position: relative;
    z-index: 1;
    border-radius: var(--split-radius);
    overflow: hidden;
}

    .split-media::before {
        content: "";
        display: block;
        padding-top: 75%;
        border-radius: inherit;
        background: linear-gradient( 180deg, color-mix(in srgb, var(--brand-1) 6%, transparent), transparent 60% );
    }

.split-img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: inherit;
    box-shadow: var(--shadow-2);
    transform-origin: center;
}

.split-media::after {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: inherit;
    background: linear-gradient(180deg, rgba(0,0,0,0) 55%, rgba(0,0,0,.08));
    pointer-events: none;
}

/* Expertise bullets */
.expertise-list i {
    color: var(--brand-2);
    background: color-mix(in srgb, var(--brand-2) 10%, transparent);
    width: 28px;
    height: 28px;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-right: .5rem;
    font-size: 1rem;
}

.expertise-list li {
    padding: .25rem 0;
}

/* Typographic rhythm */
.split-section .split-card p {
    margin-bottom: .8rem;
}

.split-section .split-card ul {
    margin-bottom: .6rem;
}

/* Image hover (desktop) */
@media (hover:hover) and (min-width: 992px) {
    .split-media:hover .split-img {
        transform: translateY(-2px) scale(1.01);
        transition: transform .5s ease, box-shadow .5s ease;
        box-shadow: 0 22px 48px rgba(0,0,0,.12);
    }
}
