.trainings-hero{
        position:relative;
        height:100vh;
        height:100svh;
        min-height:720px;
        overflow:hidden;
        isolation:isolate;
        background:#21161a;
        color:#fff;
    }

    .trainings-hero-media{
        position:absolute;
        inset:0;
        z-index:0;
        overflow:hidden;
    }

    .trainings-hero-media__image{
        width:100%;
        height:100%;
        object-fit:cover;
        object-position:center 32%;
        transform:scale(1.045);
        filter:saturate(.9) contrast(1.02);
        transition:transform 2.2s cubic-bezier(.22,1,.36,1);
    }

    .trainings-hero.is-ready .trainings-hero-media__image{
        transform:scale(1);
    }

    .trainings-hero-overlay{
        position:absolute;
        inset:0;
        z-index:1;
        pointer-events:none;
        background:
            linear-gradient(
                90deg,
                rgba(20,10,14,.86) 0%,
                rgba(20,10,14,.76) 21%,
                rgba(20,10,14,.57) 39%,
                rgba(20,10,14,.31) 58%,
                rgba(20,10,14,.11) 76%,
                rgba(20,10,14,.03) 100%
            ),
            linear-gradient(
                180deg,
                rgba(13,7,10,.20) 0%,
                rgba(13,7,10,.02) 46%,
                rgba(35,15,21,.24) 78%,
                rgba(35,15,21,.50) 100%
            );
    }

    .trainings-hero-glow{
        position:absolute;
        z-index:2;
        left:-190px;
        bottom:-230px;
        width:650px;
        height:650px;
        border-radius:50%;
        background:radial-gradient(
            circle,
            rgba(217,140,151,.25) 0%,
            rgba(217,140,151,.10) 37%,
            rgba(217,140,151,0) 70%
        );
        filter:blur(6px);
        pointer-events:none;
    }

    .trainings-hero-container{
        position:relative;
        z-index:4;
        height:100%;
    }

    .trainings-hero-copy{
        width:min(650px,48vw);
        height:100%;
        display:flex;
        flex-direction:column;
        justify-content:center;
        padding:clamp(126px,15vh,160px) 0 clamp(112px,14vh,150px);
        opacity:1;
        --pmf-reveal-from:translateY(24px);transform:none;
        transition:
            opacity .9s ease .15s,
            transform 1s cubic-bezier(.22,1,.36,1) .15s;
    }

    .trainings-hero.is-ready .trainings-hero-copy{
        opacity:1;
        transform:none;
    }

    .trainings-hero-eyebrow{
        margin:0 0 18px;
        color:#f1a8b5;
        font-family:var(--small);
        font-size:11px;
        line-height:1.2;
        font-weight:700;
        letter-spacing:.19em;
        text-transform:uppercase;
    }

    .trainings-hero-title{
        max-width:720px;
        margin:0;
        color:#fff;
        font-family:var(--serif);
        font-size:clamp(54px,5vw,82px);
        line-height:.87;
        letter-spacing:-.047em;
        font-weight:500;
    }

    .trainings-hero-title > span{
        display:block;
    }

    .trainings-hero-title strong{
        display:block;
        width:max-content;
        max-width:100%;
        margin-top:15px;
        color:#f0a6b4;
        font-family:var(--script);
        font-size:.82em;
        line-height:.88;
        font-weight:400;
        letter-spacing:-.02em;
    }

    .trainings-hero-lead{
        width:min(100%,570px);
        margin:30px 0 0;
        color:rgba(255,255,255,.82);
        font-family:var(--sans);
        font-size:16px;
        line-height:1.68;
        font-weight:400;
    }

    .trainings-hero-actions{
        display:flex;
        align-items:center;
        flex-wrap:wrap;
        gap:14px;
        margin-top:32px;
    }

    .trainings-hero .btn--primary{
        min-height:50px;
        padding:0 26px;
        border:1px solid rgba(255,255,255,.08);
        background:#e993a3;
        color:#fff;
        box-shadow:0 14px 34px rgba(21,8,13,.22);
    }

    .trainings-hero .btn--primary:hover{
        background:#d98295;
    }

    .trainings-hero-curve{
        position:absolute;
        z-index:6;
        left:0;
        right:0;
        bottom:-1px;
        width:100%;
        height:clamp(92px,14vh,150px);
        pointer-events:none;
    }

    .trainings-hero-curve svg{
        display:block;
        width:100%;
        height:100%;
        overflow:visible;
    }

    .trainings-hero-curve-shape{
        fill:#fffaf7;
    }

    .trainings-hero-curve-shadow{
        fill:none;
        stroke:rgba(45,20,28,.16);
        stroke-width:16;
        stroke-linecap:round;
        transform:translateY(7px);
        filter:blur(8px);
    }

    .trainings-hero-curve-highlight{
        fill:none;
        stroke:rgba(255,255,255,.92);
        stroke-width:2;
        transform:translateY(1px);
    }

    @media (min-width:901px) and (max-height:760px){
        .trainings-hero{
            min-height:620px;
        }

        .trainings-hero-copy{
            padding-top:105px;
            padding-bottom:96px;
        }

        .trainings-hero-title{
            font-size:clamp(50px,4.6vw,70px);
        }

        .trainings-hero-lead{
            margin-top:22px;
            font-size:15px;
        }

        .trainings-hero-actions{
            margin-top:24px;
        }
    }

    @media (max-width:1100px){
        .trainings-hero-copy{
            width:min(610px,58vw);
        }

        .trainings-hero-title{
            font-size:clamp(52px,6vw,76px);
        }

        .trainings-hero-overlay{
            background:
                linear-gradient(
                    90deg,
                    rgba(20,10,14,.88) 0%,
                    rgba(20,10,14,.72) 32%,
                    rgba(20,10,14,.40) 58%,
                    rgba(20,10,14,.10) 100%
                ),
                linear-gradient(
                    180deg,
                    rgba(13,7,10,.15) 0%,
                    rgba(13,7,10,.04) 48%,
                    rgba(35,15,21,.42) 100%
                );
        }
    }

    @media (max-width:900px){
        .trainings-hero{
            height:100svh;
            min-height:720px;
        }

        .trainings-hero-media__image{
            object-position:58% center;
        }

        .trainings-hero-overlay{
            background:
                linear-gradient(
                    180deg,
                    rgba(17,9,12,.16) 0%,
                    rgba(17,9,12,.17) 28%,
                    rgba(17,9,12,.45) 54%,
                    rgba(17,9,12,.82) 79%,
                    rgba(17,9,12,.94) 100%
                );
        }

        .trainings-hero-glow{
            left:-220px;
            bottom:-180px;
            width:560px;
            height:560px;
            opacity:.8;
        }

        .trainings-hero-container{
            width:min(calc(100% - 36px),var(--max));
        }

        .trainings-hero-copy{
            width:100%;
            justify-content:flex-end;
            align-items:flex-start;
            padding:130px 0 128px;
        }

        .trainings-hero-title{
            width:min(100%,650px);
            font-size:clamp(50px,10vw,72px);
        }

        .trainings-hero-lead{
            width:min(100%,540px);
            margin-top:24px;
            font-size:15px;
        }

        .trainings-hero-actions{
            margin-top:27px;
        }

        .trainings-hero-curve{
            height:90px;
        }
    }

    @media (max-width:620px){
        .trainings-hero{
            min-height:680px;
        }

        .trainings-hero-media__image{
            object-position:60% center;
        }

        .trainings-hero-copy{
            padding:116px 0 104px;
        }

        .trainings-hero-eyebrow{
            margin-bottom:13px;
            font-size:10px;
        }

        .trainings-hero-title{
            font-size:clamp(45px,13.5vw,61px);
            line-height:.88;
        }

        .trainings-hero-title strong{
            margin-top:12px;
            font-size:.78em;
        }

        .trainings-hero-lead{
            margin-top:20px;
            font-size:14px;
            line-height:1.62;
        }

        .trainings-hero-actions{
            width:100%;
            margin-top:24px;
        }

        .trainings-hero-actions .btn{
            width:100%;
            max-width:320px;
        }

        .trainings-hero-curve{
            height:68px;
        }
    }

    @media (max-width:420px){
        .trainings-hero-title{
            font-size:clamp(43px,13vw,56px);
        }

        .trainings-hero-lead{
            max-width:335px;
        }
    }

    @media (prefers-reduced-motion:reduce){
        .trainings-hero-media__image,
        .trainings-hero-copy{
            transition:none;
        }

        .trainings-hero-media__image{
            transform:none;
        }

        .trainings-hero-copy{
            opacity:1;
            transform:none;
        }
    }
