.category-cards {
        width: min(1120px, calc(100% - 48px));
        margin: clamp(38px, 5vw, 72px) auto;
        color: var(--brand-ink);
        font-family: inherit;
    }
    .category-cards, .category-cards * { box-sizing: border-box; }
    .category-cards__heading {
        margin: 0 0 clamp(22px, 3vw, 34px);
        color: var(--brand-ink);
        font-size: clamp(22px, 2.6vw, 34px);
        font-weight: 500;
        line-height: 1.15;
        letter-spacing: -.035em;
        text-align: center;
    }
    .category-cards__list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: clamp(16px, 1.8vw, 24px); }
    .category-cards__slider-controls { display: none; }
    .category-cards__card {
        position: relative;
        isolation: isolate;
        min-height: clamp(520px, 43vw, 620px);
        overflow: hidden;
        border: 1px solid color-mix(in srgb, var(--brand-navy) 10%, var(--brand-bg));
        border-radius: 24px;
        background-color: var(--brand-mist);
        background-image: var(--category-card-image);
        background-clip: padding-box;
        background-position: 62% center;
        background-size: cover;
        box-shadow: 0 12px 34px color-mix(in srgb, var(--brand-ink) 5%, transparent);
    }
    .category-cards__card::before {
        position: absolute;
        inset: 0;
        background: linear-gradient(180deg, var(--brand-bg) 0%, color-mix(in srgb, var(--brand-bg) 96%, transparent) 34%, color-mix(in srgb, var(--brand-bg) 70%, transparent) 55%, transparent 78%);
        content: '';
        pointer-events: none;
    }
    .category-cards__link { position: relative; display: block; min-height: inherit; color: inherit; text-decoration: none; }
    .category-cards__content {
        display: flex;
        width: 100%;
        min-height: inherit;
        flex-direction: column;
        align-items: flex-start;
        justify-content: flex-start;
        padding: clamp(28px, 3vw, 42px);
    }
    .category-cards__eyebrow, .category-cards__intro, .category-cards__title, .category-cards__description { margin: 0; }
    .category-cards__eyebrow { color: var(--brand-accent); font-size: 14px; font-weight: 750; letter-spacing: .34em; line-height: 1.2; text-transform: uppercase; }
    .category-cards__intro { margin-top: 24px; font-size: clamp(17px, 1.5vw, 21px); line-height: 1.2; }
    .category-cards__title { margin-top: 2px; font-size: clamp(32px, 3vw, 43px); font-weight: 650; line-height: 1; letter-spacing: -.035em; }
    .category-cards__rule { width: 42px; height: 3px; margin-top: 24px; border-radius: 99px; background: var(--brand-navy); }
    .category-cards__description { max-width: 270px; margin-top: 18px; font-size: clamp(14px, 1.2vw, 17px); line-height: 1.45; }
    .category-cards__button {
        display: inline-flex;
        min-height: 52px;
        align-items: center;
        gap: 22px;
        margin-top: 26px;
        padding: 12px 18px;
        border: 1px solid color-mix(in srgb, var(--brand-accent) 14%, transparent);
        border-radius: 12px;
        color: var(--brand-accent);
        background: var(--brand-bg);
        box-shadow: 0 7px 18px color-mix(in srgb, var(--brand-ink) 8%, transparent);
        font-size: 15px;
        font-weight: 700;
        line-height: 1.2;
        transition: transform .2s ease, box-shadow .2s ease;
    }
    .category-cards__button svg, .category-cards__round-arrow svg { width: 20px; height: 20px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
    .category-cards__round-arrow {
        position: absolute;
        top: auto;
        right: 22px;
        bottom: 22px;
        display: grid;
        width: 56px;
        height: 56px;
        place-items: center;
        border: 1px solid color-mix(in srgb, var(--brand-navy) 12%, transparent);
        border-radius: 50%;
        color: var(--brand-navy);
        background: var(--brand-bg);
        box-shadow: 0 7px 18px color-mix(in srgb, var(--brand-ink) 10%, transparent);
        transform: none;
        transition: transform .2s ease;
    }
    .category-cards__link:hover .category-cards__button, .category-cards__link:focus-visible .category-cards__button { transform: translateY(-2px); box-shadow: 0 10px 24px color-mix(in srgb, var(--brand-ink) 12%, transparent); }
    .category-cards__link:hover .category-cards__round-arrow, .category-cards__link:focus-visible .category-cards__round-arrow { transform: translateX(4px); }
    .category-cards__link:focus-visible { outline: 3px solid color-mix(in srgb, var(--brand-accent) 45%, transparent); outline-offset: -5px; border-radius: 24px; }

    @media (max-width: 1024px) {
        .category-cards { width: 90%; margin-right: auto; margin-left: auto; }
        .category-cards__list {
            display: flex;
            gap: clamp(14px, 2.3vw, 24px);
            overflow-x: auto;
            scroll-behavior: smooth;
            scroll-snap-type: x mandatory;
            scrollbar-width: none;
            overscroll-behavior-inline: contain;
        }
        .category-cards__list::-webkit-scrollbar { display: none; }
        .category-cards__card { min-height: clamp(360px, 52vw, 480px); background-position: 58% center; }
        .category-cards__card { min-width: 80%; flex: 0 0 80%; scroll-snap-align: start; scroll-snap-stop: always; }
        .category-cards__card::before { background: linear-gradient(90deg, var(--brand-bg) 0%, color-mix(in srgb, var(--brand-bg) 97%, transparent) 30%, color-mix(in srgb, var(--brand-bg) 76%, transparent) 43%, transparent 65%); }
        .category-cards__content { width: 52%; padding: clamp(28px, 4vw, 48px); }
        .category-cards__button { width: max-content; white-space: nowrap; }
        .category-cards__round-arrow { display: none; }
        .category-cards__slider-controls { display: flex; justify-content: center; margin-top: 16px; }
        .category-cards__slider-dots { display: flex; align-items: center; gap: 8px; }
        .category-cards__slider-dot { width: 7px; height: 7px; border-radius: 50%; background: color-mix(in srgb, var(--brand-navy) 24%, transparent); transition: width .2s ease, background-color .2s ease; }
        .category-cards__slider-dot.is-active { width: 22px; border-radius: 99px; background: var(--brand-accent); }
    }
    @media (max-width: 640px) {
        .category-cards { width: 95%; margin: 30px auto; }
        .category-cards__heading { margin-bottom: 20px; font-size: 21px; }
        .category-cards__list { gap: 14px; }
        .category-cards__card { min-height: 58vw; border-radius: 14px; background-position: 59% center; }
        .category-cards__card::before { background: linear-gradient(90deg, var(--brand-bg) 0%, color-mix(in srgb, var(--brand-bg) 98%, transparent) 30%, color-mix(in srgb, var(--brand-bg) 77%, transparent) 46%, transparent 68%); }
        .category-cards__content { width: 57%; padding: 5vw; }
        .category-cards__eyebrow { font-size: 2.3vw; letter-spacing: .3em; }
        .category-cards__intro { margin-top: 3.4vw; font-size: 3.5vw; }
        .category-cards__title { font-size: 5.8vw; }
        .category-cards__rule { width: 5vw; height: 2px; margin-top: 3.1vw; }
        .category-cards__description { margin-top: 2.8vw; font-size: 2.75vw; line-height: 1.35; }
        .category-cards__button { min-height: 0; gap: 2.6vw; margin-top: 3.4vw; padding: 2vw 3.2vw; border-radius: 7px; font-size: 2.6vw; }
        .category-cards__button svg { width: 3.2vw; height: 3.2vw; }
        .category-cards__round-arrow { right: 3vw; width: 8vw; height: 8vw; }
        .category-cards__round-arrow svg { width: 3.8vw; height: 3.8vw; }
        .category-cards__link:focus-visible { border-radius: 14px; }
    }
    @media (prefers-reduced-motion: reduce) {
        .category-cards__button, .category-cards__round-arrow { transition: none; }
        .category-cards__list { scroll-behavior: auto; }
        .category-cards__slider-dot { transition: none; }
    }
