/* ============================================================
   TENIS ARENA — COURTS REDESIGN
   ============================================================ */

.ta-courts-redesign {
    --courts-max:
        1280px;

    background:
        var(--ta-ivory-soft);

    color:
        var(--ta-ink);
}


.ta-courts-redesign,
.ta-courts-redesign *,
.ta-courts-redesign input,
.ta-courts-redesign select,
.ta-courts-redesign button {
    font-family:
        "Cormorant Garamond",
        Georgia,
        serif !important;
}


.ta-courts-container {
    width:
        min(
            calc(100% - 96px),
            var(--courts-max)
        );

    margin-inline:
        auto;
}


/* ============================================================
   HERO
   ============================================================ */

.ta-courts-hero {
    position:
        relative;

    min-height:
        410px;

    overflow:
        hidden;

    color:
        var(--ta-ivory);

    background:
        var(--ta-forest-deep);
}


.ta-courts-hero-image,
.ta-courts-hero-overlay {
    position:
        absolute;

    inset:
        0;

    width:
        100%;

    height:
        100%;
}


.ta-courts-hero-image {
    object-fit:
        cover;

    object-position:
        center 58%;
}


.ta-courts-hero-overlay {
    background:
        linear-gradient(
            90deg,
            rgba(4,43,33,.94),
            rgba(4,43,33,.66) 48%,
            rgba(4,43,33,.22)
        );
}


.ta-courts-hero-inner {
    position:
        relative;

    z-index:
        2;

    min-height:
        410px;

    display:
        grid;

    grid-template-columns:
        minmax(0,1fr)
        390px;

    gap:
        72px;

    align-items:
        center;
}


.ta-courts-hero-copy {
    max-width:
        620px;
}


.ta-courts-eyebrow {
    display:
        flex;

    align-items:
        center;

    gap:
        12px;

    margin-bottom:
        15px;

    font-size:
        .66rem;

    letter-spacing:
        .16em;

    text-transform:
        uppercase;

    font-weight:
        600;

    color:
        var(--ta-gold);
}


.ta-courts-eyebrow::before {
    content:
        "";

    width:
        34px;

    height:
        1px;

    background:
        var(--ta-gold);
}


.ta-courts-hero h1 {
    margin:
        0;

    font-size:
        clamp(
            3.25rem,
            4vw,
            4.8rem
        );

    line-height:
        .9;

    letter-spacing:
        -.043em;

    font-weight:
        500;

    color:
        var(--ta-ivory);
}


.ta-courts-hero-copy > p {
    max-width:
        540px;

    margin:
        18px
        0
        0;

    font-size:
        1rem;

    line-height:
        1.48;

    color:
        rgba(246,240,228,.77);
}


.ta-courts-hero-actions {
    display:
        flex;

    flex-wrap:
        wrap;

    gap:
        10px;

    margin-top:
        24px;
}


.ta-courts-btn {
    min-height:
        42px;

    display:
        inline-flex;

    align-items:
        center;

    justify-content:
        center;

    padding:
        0
        18px;

    border:
        1px solid
        transparent;

    text-decoration:
        none;

    text-transform:
        uppercase;

    letter-spacing:
        .075em;

    font-size:
        .66rem;

    font-weight:
        600;
}


.ta-courts-btn-primary {
    background:
        var(--ta-forest);

    border-color:
        rgba(246,240,228,.15);

    color:
        var(--ta-ivory);
}


.ta-courts-btn-outline {
    border-color:
        rgba(246,240,228,.50);

    color:
        var(--ta-ivory);
}


/* ============================================================
   HERO QUICK
   ============================================================ */

.ta-courts-quick {
    padding:
        22px;

    border:
        1px solid
        rgba(246,240,228,.25);

    background:
        rgba(4,43,33,.91);
}


.ta-courts-quick-kicker {
    margin-bottom:
        17px;

    font-size:
        .65rem;

    letter-spacing:
        .15em;

    text-transform:
        uppercase;

    font-weight:
        600;

    color:
        var(--ta-gold);
}


.ta-courts-quick label {
    display:
        block;

    margin-bottom:
        13px;
}


.ta-courts-quick label > span {
    display:
        block;

    margin-bottom:
        6px;

    font-size:
        .60rem;

    letter-spacing:
        .12em;

    text-transform:
        uppercase;

    color:
        rgba(246,240,228,.63);
}


.ta-courts-quick select,
.ta-courts-quick input {
    width:
        100%;

    height:
        42px;

    padding:
        0
        11px;

    border:
        1px solid
        rgba(246,240,228,.30);

    border-radius:
        0;

    outline:
        0;

    background:
        rgba(4,43,33,.50);

    color:
        var(--ta-ivory);

    font-size:
        .90rem;
}


.ta-courts-quick option {
    background:
        var(--ta-ivory);

    color:
        var(--ta-ink);
}


.ta-courts-quick-submit {
    width:
        100%;

    height:
        44px;

    display:
        flex;

    align-items:
        center;

    justify-content:
        space-between;

    margin-top:
        3px;

    padding:
        0
        15px;

    border:
        1px solid
        var(--ta-gold);

    background:
        var(--ta-gold);

    color:
        var(--ta-forest-deep);

    cursor:
        pointer;

    text-transform:
        uppercase;

    letter-spacing:
        .07em;

    font-size:
        .66rem;

    font-weight:
        700;
}


.ta-courts-quick > p {
    margin:
        11px
        0
        0;

    font-size:
        .70rem;

    line-height:
        1.38;

    color:
        rgba(246,240,228,.58);
}


/* ============================================================
   GLOBAL SECTION
   ============================================================ */

.ta-courts-section {
    padding:
        55px
        0;

    border-bottom:
        1px solid
        var(--ta-border);
}


.ta-courts-section-head {
    display:
        grid;

    grid-template-columns:
        34px
        minmax(0,660px);

    gap:
        17px;

    margin-bottom:
        27px;
}


.ta-courts-section-index {
    padding-top:
        7px;

    font-size:
        .60rem;

    letter-spacing:
        .15em;

    font-weight:
        700;

    color:
        var(--ta-clay);
}


.ta-courts-section-kicker {
    margin-bottom:
        6px;

    font-size:
        .61rem;

    letter-spacing:
        .15em;

    text-transform:
        uppercase;

    font-weight:
        600;

    color:
        var(--ta-clay);
}


.ta-courts-section-head h2,
.ta-courts-cms-copy h2,
.ta-courts-forest-cta h2 {
    margin:
        0;

    font-style:
        normal;

    font-weight:
        500;

    letter-spacing:
        -.038em;
}


.ta-courts-section-head h2 {
    font-size:
        clamp(
            2.65rem,
            3.3vw,
            3.8rem
        );

    line-height:
        .92;

    color:
        var(--ta-forest);
}


.ta-courts-section-head p {
    max-width:
        525px;

    margin:
        8px
        0
        0;

    font-size:
        .88rem;

    line-height:
        1.48;

    color:
        var(--ta-muted);
}


/* ============================================================
   COURT CARDS
   ============================================================ */

.ta-courts-grid {
    display:
        grid;

    grid-template-columns:
        repeat(
            2,
            minmax(0,1fr)
        );

    gap:
        16px;
}


.ta-courts-card {
    min-width:
        0;

    border:
        1px solid
        var(--ta-border);

    background:
        var(--ta-ivory);
}


.ta-courts-card-media {
    position:
        relative;

    display:
        block;

    height:
        280px;

    overflow:
        hidden;

    text-decoration:
        none;
}


.ta-courts-card-media img {
    width:
        100%;

    height:
        100%;

    object-fit:
        cover;

    transition:
        transform
        700ms
        cubic-bezier(
            .22,
            1,
            .36,
            1
        );
}


.ta-courts-card:hover
.ta-courts-card-media img {
    transform:
        scale(1.025);
}


.ta-courts-card-index {
    position:
        absolute;

    top:
        14px;

    right:
        14px;

    min-width:
        33px;

    height:
        33px;

    display:
        flex;

    align-items:
        center;

    justify-content:
        center;

    background:
        rgba(246,240,228,.92);

    color:
        var(--ta-clay);

    font-size:
        .60rem;

    letter-spacing:
        .12em;

    font-weight:
        700;
}


.ta-courts-card-body {
    padding:
        20px
        22px
        22px;
}


.ta-courts-card-meta {
    display:
        flex;

    align-items:
        center;

    gap:
        8px;

    margin-bottom:
        8px;

    font-size:
        .61rem;

    text-transform:
        uppercase;

    letter-spacing:
        .10em;

    color:
        var(--ta-muted);
}


.ta-courts-card-meta i {
    width:
        3px;

    height:
        3px;

    border-radius:
        50%;

    background:
        var(--ta-gold);
}


.ta-courts-card h3 {
    margin:
        0;

    font-size:
        clamp(
            2.2rem,
            2.5vw,
            2.8rem
        );

    line-height:
        .95;

    font-weight:
        500;

    letter-spacing:
        -.032em;

    color:
        var(--ta-forest);
}


.ta-courts-card p {
    max-width:
        550px;

    margin:
        11px
        0
        0;

    font-size:
        .86rem;

    line-height:
        1.48;

    color:
        var(--ta-muted);
}


.ta-courts-card-actions {
    display:
        flex;

    align-items:
        flex-end;

    justify-content:
        space-between;

    gap:
        25px;

    margin-top:
        21px;
}


.ta-courts-text-link {
    min-width:
        178px;

    display:
        inline-flex;

    align-items:
        center;

    justify-content:
        space-between;

    gap:
        25px;

    padding-bottom:
        6px;

    border-bottom:
        1px solid
        var(--ta-forest);

    text-decoration:
        none;

    text-transform:
        uppercase;

    letter-spacing:
        .08em;

    font-size:
        .61rem;

    font-weight:
        700;

    color:
        var(--ta-forest);
}


.ta-courts-text-link strong {
    color:
        var(--ta-clay);

    font-size:
        .95rem;

    font-weight:
        400;

    transition:
        transform
        300ms
        ease;
}


.ta-courts-text-link:hover strong {
    transform:
        translateX(4px);
}


.ta-courts-card-reserve {
    text-decoration:
        none;

    text-transform:
        uppercase;

    letter-spacing:
        .09em;

    font-size:
        .62rem;

    font-weight:
        600;

    color:
        var(--ta-clay);
}


/* ============================================================
   EXPERIENCE
   ============================================================ */

.ta-courts-experience {
    background:
        var(--ta-ivory);
}


.ta-courts-pillars {
    display:
        grid;

    grid-template-columns:
        repeat(
            4,
            minmax(0,1fr)
        );

    border-top:
        1px solid
        var(--ta-border);

    border-bottom:
        1px solid
        var(--ta-border);
}


.ta-courts-pillars article {
    position:
        relative;

    min-height:
        190px;

    padding:
        24px;

    border-right:
        1px solid
        var(--ta-border);
}


.ta-courts-pillars article:last-child {
    border-right:
        0;
}


.ta-courts-pillar-icon {
    display:
        inline-flex;

    width:
        32px;

    height:
        32px;

    align-items:
        center;

    justify-content:
        center;

    border:
        1px solid
        var(--ta-gold);

    border-radius:
        50%;

    color:
        var(--ta-gold);
}


.ta-courts-pillar-number {
    position:
        absolute;

    top:
        27px;

    right:
        22px;

    font-size:
        .58rem;

    color:
        var(--ta-clay);

    letter-spacing:
        .12em;
}


.ta-courts-pillars h3 {
    margin:
        19px
        0
        0;

    font-size:
        1.55rem;

    line-height:
        1;

    font-weight:
        500;

    color:
        var(--ta-forest);
}


.ta-courts-pillars p {
    margin:
        7px
        0
        0;

    font-size:
        .78rem;

    line-height:
        1.43;

    color:
        var(--ta-muted);
}


/* ============================================================
   PROCESS
   ============================================================ */

.ta-courts-process {
    background:
        var(--ta-ivory-soft);
}


.ta-courts-section-head-split {
    grid-template-columns:
        34px
        minmax(0,1fr)
        300px;

    align-items:
        end;
}


.ta-courts-section-head-split > p {
    margin:
        0
        0
        3px;
}


.ta-courts-process-grid {
    display:
        grid;

    grid-template-columns:
        repeat(
            5,
            minmax(0,1fr)
        );

    border-top:
        1px solid
        var(--ta-border);

    border-bottom:
        1px solid
        var(--ta-border);
}


.ta-courts-process-grid article {
    min-height:
        155px;

    padding:
        22px;

    border-right:
        1px solid
        var(--ta-border);
}


.ta-courts-process-grid article:last-child {
    border-right:
        0;
}


.ta-courts-process-grid span {
    font-size:
        .60rem;

    font-weight:
        700;

    letter-spacing:
        .13em;

    color:
        var(--ta-clay);
}


.ta-courts-process-grid strong {
    display:
        block;

    margin-top:
        22px;

    font-size:
        1.4rem;

    font-weight:
        500;

    color:
        var(--ta-forest);
}


.ta-courts-process-grid p {
    margin:
        6px
        0
        0;

    font-size:
        .75rem;

    line-height:
        1.42;

    color:
        var(--ta-muted);
}


/* ============================================================
   CMS EDITORIAL SECTIONS
   ============================================================ */

.ta-courts-cms-section {
    background:
        var(--ta-ivory);
}


.ta-courts-cms-layout {
    display:
        grid;

    grid-template-columns:
        minmax(0,.85fr)
        minmax(0,1.15fr);

    align-items:
        stretch;

    border:
        1px solid
        var(--ta-border);
}


.ta-courts-cms-layout.is-reversed
.ta-courts-cms-copy {
    order:
        2;

    border-left:
        1px solid
        var(--ta-border);

    border-right:
        0;
}


.ta-courts-cms-layout.is-reversed
.ta-courts-cms-media {
    order:
        1;
}


.ta-courts-cms-copy {
    display:
        flex;

    flex-direction:
        column;

    justify-content:
        center;

    padding:
        42px;

    border-right:
        1px solid
        var(--ta-border);
}


.ta-courts-cms-copy h2 {
    font-size:
        clamp(
            2.35rem,
            3vw,
            3.45rem
        );

    line-height:
        .93;

    color:
        var(--ta-forest);
}


.ta-courts-cms-body {
    margin-top:
        14px;

    white-space:
        pre-line;

    font-size:
        .86rem;

    line-height:
        1.5;

    color:
        var(--ta-muted);
}


.ta-courts-cms-copy
.ta-courts-text-link {
    margin-top:
        23px;
}


.ta-courts-cms-media {
    min-height:
        340px;

    overflow:
        hidden;
}


.ta-courts-cms-media img {
    width:
        100%;

    height:
        100%;

    object-fit:
        cover;
}


/* ============================================================
   UTILITIES
   ============================================================ */

.ta-courts-utilities {
    background:
        var(--ta-ivory-soft);
}


.ta-courts-utility-grid {
    display:
        grid;

    grid-template-columns:
        repeat(
            3,
            minmax(0,1fr)
        );

    border-top:
        1px solid
        var(--ta-border);

    border-bottom:
        1px solid
        var(--ta-border);
}


.ta-courts-utility-grid > a {
    min-height:
        205px;

    padding:
        25px;

    border-right:
        1px solid
        var(--ta-border);

    text-decoration:
        none;

    color:
        var(--ta-ink);

    transition:
        background-color
        360ms
        ease;
}


.ta-courts-utility-grid > a:last-child {
    border-right:
        0;
}


.ta-courts-utility-grid > a:hover {
    background:
        var(--ta-ivory);
}


.ta-courts-utility-grid > a > span {
    display:
        block;

    font-size:
        .59rem;

    letter-spacing:
        .13em;

    color:
        var(--ta-clay);
}


.ta-courts-utility-grid h3 {
    margin:
        34px
        0
        0;

    font-size:
        1.8rem;

    font-weight:
        500;

    color:
        var(--ta-forest);
}


.ta-courts-utility-grid p {
    margin:
        8px
        0
        0;

    font-size:
        .78rem;

    line-height:
        1.43;

    color:
        var(--ta-muted);
}


.ta-courts-utility-grid strong {
    display:
        inline-block;

    margin-top:
        22px;

    padding-bottom:
        5px;

    border-bottom:
        1px solid
        var(--ta-forest);

    text-transform:
        uppercase;

    letter-spacing:
        .08em;

    font-size:
        .60rem;

    color:
        var(--ta-forest);
}


/* ============================================================
   FOREST CTA
   ============================================================ */

.ta-courts-forest-cta {
    position:
        relative;

    overflow:
        hidden;

    padding:
        45px
        0;

    background:
        var(--ta-forest-deep);

    color:
        var(--ta-ivory);
}


.ta-courts-forest-cta::after {
    content:
        "";

    position:
        absolute;

    inset:
        0;

    pointer-events:
        none;

    background:
        linear-gradient(
            90deg,
            rgba(198,164,106,.05),
            transparent 45%,
            rgba(182,82,40,.06)
        );
}


.ta-courts-forest-inner {
    position:
        relative;

    z-index:
        2;

    display:
        grid;

    grid-template-columns:
        minmax(0,1fr)
        420px;

    gap:
        80px;

    align-items:
        center;
}


.ta-courts-forest-inner > div:first-child > span {
    font-size:
        .58rem;

    letter-spacing:
        .14em;

    color:
        var(--ta-clay);
}


.ta-courts-forest-kicker {
    margin-top:
        9px;

    font-size:
        .61rem;

    letter-spacing:
        .15em;

    text-transform:
        uppercase;

    color:
        var(--ta-gold);
}


.ta-courts-forest-cta h2 {
    margin-top:
        9px;

    font-size:
        clamp(
            2.65rem,
            3.25vw,
            3.8rem
        );

    line-height:
        .92;

    color:
        var(--ta-ivory);
}


.ta-courts-forest-copy {
    padding-left:
        30px;

    border-left:
        1px solid
        rgba(199,165,82,.55);
}


.ta-courts-forest-copy p {
    margin:
        0;

    font-size:
        .88rem;

    line-height:
        1.48;

    color:
        rgba(246,240,228,.75);
}


.ta-courts-forest-copy a {
    display:
        inline-flex;

    align-items:
        center;

    justify-content:
        space-between;

    min-width:
        190px;

    margin-top:
        19px;

    padding-bottom:
        6px;

    border-bottom:
        1px solid
        var(--ta-gold);

    text-decoration:
        none;

    text-transform:
        uppercase;

    letter-spacing:
        .08em;

    font-size:
        .62rem;

    font-weight:
        600;

    color:
        var(--ta-ivory);
}


.ta-courts-forest-copy strong {
    color:
        var(--ta-gold);

    font-weight:
        400;
}


/* ============================================================
   EMPTY
   ============================================================ */

.ta-courts-empty {
    grid-column:
        1 / -1;

    padding:
        50px;

    border:
        1px solid
        var(--ta-border);

    text-align:
        center;
}


.ta-courts-empty h3 {
    margin:
        10px
        0;

    font-size:
        2.4rem;

    font-weight:
        500;

    color:
        var(--ta-forest);
}


.ta-courts-empty p {
    color:
        var(--ta-muted);
}


/* ============================================================
   TABLET
   ============================================================ */

@media (max-width: 1023px) {

    .ta-courts-container {
        width:
            min(
                calc(100% - 64px),
                var(--courts-max)
            );
    }


    .ta-courts-hero-inner {
        grid-template-columns:
            minmax(0,1fr)
            340px;

        gap:
            38px;
    }


    .ta-courts-grid {
        grid-template-columns:
            1fr
            1fr;
    }


    .ta-courts-pillars {
        grid-template-columns:
            repeat(
                2,
                1fr
            );
    }


    .ta-courts-pillars
    article:nth-child(2) {
        border-right:
            0;
    }


    .ta-courts-pillars
    article:nth-child(-n+2) {
        border-bottom:
            1px solid
            var(--ta-border);
    }


    .ta-courts-process-grid {
        grid-template-columns:
            repeat(
                3,
                1fr
            );
    }


    .ta-courts-process-grid
    article:nth-child(3) {
        border-right:
            0;
    }


    .ta-courts-process-grid
    article:nth-child(-n+3) {
        border-bottom:
            1px solid
            var(--ta-border);
    }


    .ta-courts-section-head-split {
        grid-template-columns:
            34px
            1fr;
    }


    .ta-courts-section-head-split
    > p {
        grid-column:
            2;
    }


    .ta-courts-forest-inner {
        grid-template-columns:
            1fr
            340px;

        gap:
            45px;
    }

}


/* ============================================================
   MOBILE
   ============================================================ */

@media (max-width: 720px) {

    .ta-courts-container {
        width:
            min(
                calc(100% - 40px),
                var(--courts-max)
            );
    }


    .ta-courts-hero {
        min-height:
            0;
    }


    .ta-courts-hero-inner {
        min-height:
            0;

        grid-template-columns:
            1fr;

        gap:
            27px;

        padding-top:
            40px;

        padding-bottom:
            40px;
    }


    .ta-courts-hero h1 {
        font-size:
            clamp(
                3rem,
                13vw,
                4rem
            );
    }


    .ta-courts-section {
        padding:
            42px
            0;
    }


    .ta-courts-section-head,
    .ta-courts-section-head-split {
        grid-template-columns:
            25px
            minmax(0,1fr);

        gap:
            10px;
    }


    .ta-courts-section-head h2 {
        font-size:
            clamp(
                2.35rem,
                10vw,
                3rem
            );
    }


    .ta-courts-section-head-split
    > p {
        grid-column:
            2;
    }


    .ta-courts-grid {
        grid-template-columns:
            1fr;
    }


    .ta-courts-card-media {
        height:
            220px;
    }


    .ta-courts-pillars,
    .ta-courts-process-grid,
    .ta-courts-utility-grid {
        grid-template-columns:
            1fr;
    }


    .ta-courts-pillars article,
    .ta-courts-process-grid article,
    .ta-courts-utility-grid > a {
        border-right:
            0;

        border-bottom:
            1px solid
            var(--ta-border);
    }


    .ta-courts-pillars article:last-child,
    .ta-courts-process-grid article:last-child,
    .ta-courts-utility-grid > a:last-child {
        border-bottom:
            0;
    }


    .ta-courts-cms-layout,
    .ta-courts-cms-layout.is-reversed {
        grid-template-columns:
            1fr;
    }


    .ta-courts-cms-layout.is-reversed
    .ta-courts-cms-copy,

    .ta-courts-cms-layout.is-reversed
    .ta-courts-cms-media {
        order:
            initial;
    }


    .ta-courts-cms-copy,
    .ta-courts-cms-layout.is-reversed
    .ta-courts-cms-copy {
        padding:
            26px;

        border-right:
            0;

        border-left:
            0;

        border-bottom:
            1px solid
            var(--ta-border);
    }


    .ta-courts-cms-media {
        min-height:
            230px;
    }


    .ta-courts-forest-inner {
        grid-template-columns:
            1fr;

        gap:
            25px;
    }


    .ta-courts-forest-copy {
        padding-left:
            0;

        padding-top:
            20px;

        border-left:
            0;

        border-top:
            1px solid
            rgba(199,165,82,.55);
    }


    .ta-courts-card-actions {
        align-items:
            flex-start;

        flex-direction:
            column;
    }


    .ta-courts-hero-actions {
        flex-direction:
            column;
    }


    .ta-courts-btn {
        width:
            100%;
    }

}


/* ============================================================
   REDUCED MOTION
   ============================================================ */

@media (prefers-reduced-motion: reduce) {

    .ta-courts-card-media img,
    .ta-courts-text-link strong {
        transition:
            none !important;
    }

}


/* ============================================================
   TENIS ARENA — TERENURI / LARGE DESKTOP FLUID WIDTH
   Only large desktop. Tablet + mobile remain unchanged.
   ============================================================ */

@media (min-width: 1280px) {

    /*
     * Nu mai limităm pagina la containerul editorial de 1280px.
     * Păstrăm doar 48px gutter pe fiecare latură.
     */

    .ta-courts-redesign
    .ta-courts-container {
        width:
            calc(100% - 96px) !important;

        max-width:
            none !important;
    }


    /* HERO */

    .ta-courts-hero-inner {
        grid-template-columns:
            minmax(0, 1.15fr)
            minmax(360px, .58fr) !important;

        column-gap:
            clamp(
                56px,
                6vw,
                130px
            ) !important;
    }


    .ta-courts-hero-copy {
        max-width:
            760px !important;
    }


    .ta-courts-quick {
        width:
            100%;

        max-width:
            470px;

        justify-self:
            end;
    }


    /* SECTION HEADINGS */

    .ta-courts-section-head {
        grid-template-columns:
            38px
            minmax(0, 820px) !important;

        column-gap:
            20px !important;
    }


    .ta-courts-section-head-split {
        grid-template-columns:
            38px
            minmax(0, 1fr)
            minmax(300px, 430px) !important;

        align-items:
            end;
    }


    .ta-courts-section-head p {
        max-width:
            680px !important;
    }


    /* COURT CARDS */

    .ta-courts-grid {
        grid-template-columns:
            repeat(
                2,
                minmax(0, 1fr)
            ) !important;

        gap:
            clamp(
                18px,
                1.8vw,
                34px
            ) !important;
    }


    .ta-courts-card-media {
        height:
            clamp(
                300px,
                23vw,
                430px
            ) !important;
    }


    .ta-courts-card-body {
        padding:
            24px
            clamp(
                24px,
                2vw,
                38px
            )
            28px !important;
    }


    .ta-courts-card p {
        max-width:
            720px !important;
    }


    /* EXPERIENCE — evenly distributed */

    .ta-courts-pillars {
        width:
            100%;
    }


    .ta-courts-pillars article {
        min-height:
            210px !important;

        padding:
            28px
            clamp(
                24px,
                2vw,
                40px
            ) !important;
    }


    /* PROCESS */

    .ta-courts-process-grid {
        width:
            100%;

        grid-template-columns:
            repeat(
                5,
                minmax(0, 1fr)
            ) !important;
    }


    .ta-courts-process-grid article {
        min-height:
            175px !important;

        padding:
            26px
            clamp(
                20px,
                1.7vw,
                34px
            ) !important;
    }


    /* INFORMATION / UTILITIES */

    .ta-courts-utility-grid {
        width:
            100%;

        grid-template-columns:
            repeat(
                3,
                minmax(0, 1fr)
            ) !important;
    }


    .ta-courts-utility-grid > a {
        min-height:
            225px !important;

        padding:
            30px
            clamp(
                26px,
                2.2vw,
                44px
            ) !important;
    }


    /* CMS editorial sections */

    .ta-courts-cms-layout {
        grid-template-columns:
            minmax(0, .82fr)
            minmax(0, 1.18fr) !important;
    }


    .ta-courts-cms-copy {
        padding:
            clamp(
                42px,
                4vw,
                76px
            ) !important;
    }


    /* CTA */

    .ta-courts-forest-inner {
        grid-template-columns:
            minmax(0, 1fr)
            minmax(360px, 520px) !important;

        gap:
            clamp(
                60px,
                7vw,
                150px
            ) !important;
    }

}


@media (min-width: 1800px) {

    /*
     * La 27" / ultrawide:
     * păstrăm ritmul fără să lipim conținutul de marginea monitorului.
     */

    .ta-courts-redesign
    .ta-courts-container {
        width:
            calc(100% - 128px) !important;
    }

}
