.training-chooser{
        position:relative;
        padding:74px 0 80px;
        overflow:hidden;
        background:#F9EAEA;
    }

    .training-chooser-wave{
        position:absolute;
        top:0;
        left:0;
        z-index:0;
        display:block;
        width:100%;
        height:24px;
        pointer-events:none;
    }

    .training-chooser-wave path{
        fill:#FDF3F2;
    }

    .training-chooser-head,
    .training-chooser-layout{
        position:relative;
        z-index:2;
    }

    .training-chooser-art{
        position:absolute;
        z-index:1;
        pointer-events:none;
    }

    .training-chooser-art svg{
        width:100%;
        height:100%;
        overflow:visible;
    }

    .training-chooser-art path{
        fill:none;
        stroke:rgba(196,112,132,.48);
        stroke-width:1.65;
        stroke-linecap:round;
        stroke-linejoin:round;
        stroke-dasharray:1000;
        stroke-dashoffset:1000;
    }

    .training-chooser.is-art-drawing .training-chooser-art path{
        animation:trainingLineDraw 3.8s cubic-bezier(.22,1,.36,1) forwards;
    }

    .training-chooser.is-art-drawing .training-chooser-art path:nth-child(2){animation-delay:.14s}
    .training-chooser.is-art-drawing .training-chooser-art path:nth-child(3){animation-delay:.28s}
    .training-chooser.is-art-drawing .training-chooser-art path:nth-child(4){animation-delay:.42s}
    .training-chooser.is-art-drawing .training-chooser-art path:nth-child(5){animation-delay:.56s}
    .training-chooser.is-art-drawing .training-chooser-art path:nth-child(6){animation-delay:.70s}
    .training-chooser.is-art-drawing .training-chooser-art path:nth-child(7){animation-delay:.84s}
    .training-chooser.is-art-drawing .training-chooser-art path:nth-child(8){animation-delay:.98s}
    .training-chooser.is-art-drawing .training-chooser-art path:nth-child(9){animation-delay:1.12s}
    .training-chooser.is-art-drawing .training-chooser-art path:nth-child(10){animation-delay:1.26s}

    .training-chooser-art--one{
        top:248px;
        left:max(20px,calc(50% - 830px));
        width:190px;
        height:355px;
        opacity:.82;
        transform:rotate(-3deg);
    }

    @keyframes trainingLineDraw{
        to{stroke-dashoffset:0}
    }

    .training-chooser-head{
        display:grid;
        grid-template-columns:minmax(0,1fr) minmax(300px,460px);
        align-items:end;
        gap:52px;
        padding-bottom:30px;
        border-bottom:1px solid rgba(107,36,55,.10);
    }

    .training-chooser-head-copy p{
        margin:0 0 11px;
        color:#ca8796;
        font-family:var(--script);
        font-size:clamp(30px,2.5vw,38px);
        line-height:1;
        font-weight:500;
    }

    .training-chooser-head-copy h2{
        max-width:760px;
        margin:0;
        color:#4d3d42;
        font-family:var(--serif);
        font-size:clamp(37px,calc(3.7vw - 3px),55px);
        line-height:.98;
        letter-spacing:-.045em;
        font-weight:500;
    }

    .training-chooser-head-copy h2 span{
        color:#d98c97;
        font-family:var(--script);
        font-weight:400;
        letter-spacing:-.02em;
    }

    .training-chooser-intro{
        max-width:430px;
        color:#7a686e;
        font-size:14px;
        line-height:1.78;
    }

    .training-chooser-layout{
        display:grid;
        grid-template-columns:minmax(300px,.76fr) minmax(0,1.44fr);
        gap:clamp(44px,6vw,94px);
        align-items:start;
        margin-top:34px;
    }

    .training-chooser-options{
        position:sticky;
        top:110px;
        display:grid;
        gap:6px;
        padding:14px;
        border-radius:24px;
        background:rgba(255,255,255,.74);
        border:1px solid rgba(202,137,150,.14);
        -webkit-backdrop-filter:blur(10px);
        backdrop-filter:blur(10px);
        box-shadow:0 18px 40px rgba(136,86,99,.06);
    }

    .training-chooser-options button{
        position:relative;
        width:100%;
        min-height:58px;
        display:grid;
        grid-template-columns:1fr auto;
        align-items:center;
        gap:18px;
        padding:12px 14px;
        border:0;
        border-radius:16px;
        background:transparent;
        color:#716067;
        text-align:left;
        cursor:pointer;
        transition:background .28s ease,color .28s ease,transform .28s ease,box-shadow .28s ease;
    }

    .training-chooser-options button span{
        font-family:var(--serif);
        font-size:23px;
        line-height:1.16;
        font-weight:600;
    }

    .training-chooser-options button i{
        width:32px;
        height:32px;
        display:grid;
        place-items:center;
        border:1px solid rgba(185,114,131,.16);
        border-radius:50%;
        color:#c77e8e;
        background:rgba(255,255,255,.85);
        font-size:10px;
        transition:transform .28s ease,background .28s ease,color .28s ease,border-color .28s ease;
    }

    .training-chooser-options button:hover{
        color:#6b2437;
        background:rgba(255,247,246,.92);
        transform:translateX(3px);
        box-shadow:0 12px 26px rgba(181,114,131,.08);
    }

    .training-chooser-options button.is-active{
        color:#6b2437;
        background:#fff;
        box-shadow:0 14px 28px rgba(181,114,131,.10);
    }

    .training-chooser-options button.is-active i{
        border-color:rgba(255,255,255,.30);
        color:#fff;
        background:#d98c97;
    }

    .training-chooser-options button:hover i{
        transform:translateX(3px);
    }

    .training-chooser-stage{
        min-width:0;
        padding-top:8px;
    }

    .training-chooser-media{
        position:relative;
        min-height:500px;
        overflow:hidden;
        border-radius:30px;
        background:#eadede;
        box-shadow:0 24px 58px rgba(126,85,95,.12);
    }

    .training-chooser-media img{
        position:absolute;
        inset:0;
        width:100%;
        height:100%;
        object-fit:cover;
        object-position:center;
        transform:scale(1.001);
        transition:opacity .34s ease,transform .75s cubic-bezier(.22,1,.36,1);
    }

    .training-chooser-stage.is-changing .training-chooser-media img{
        opacity:.16;
        transform:scale(1.03);
    }

    .training-chooser-media-blush{
        position:absolute;
        inset:0;
        background:radial-gradient(circle at 22% 26%,rgba(255,244,243,.38) 0%,rgba(255,244,243,0) 34%);
        pointer-events:none;
    }

    .training-chooser-media-gradient{
        position:absolute;
        inset:0;
        background:
            linear-gradient(180deg,rgba(36,20,26,0) 24%,rgba(36,20,26,.10) 48%,rgba(36,20,26,.68) 84%,rgba(36,20,26,.86) 100%),
            linear-gradient(90deg,rgba(36,20,26,.18) 0%,rgba(36,20,26,0) 32%,rgba(36,20,26,0) 100%);
        pointer-events:none;
    }

    .training-chooser-media-copy{
        position:absolute;
        left:34px;
        right:34px;
        bottom:30px;
        max-width:480px;
        color:#fff;
        transition:opacity .28s ease,transform .38s cubic-bezier(.22,1,.36,1);
    }

    .training-chooser-stage.is-changing .training-chooser-media-copy{
        opacity:0;
        transform:translateY(10px);
    }

    .training-chooser-media-copy span{
        display:block;
        margin-bottom:8px;
        color:#fff;
        font-family:var(--sans);
        font-size:9px;
        line-height:1.2;
        font-weight:700;
        letter-spacing:.15em;
        text-transform:uppercase;
    }

    .training-chooser-media-copy strong{
        display:block;
        max-width:680px;
        font-family:var(--serif);
        font-size:clamp(34px,3.4vw,52px);
        line-height:.92;
        letter-spacing:-.045em;
        font-weight:500;
        text-wrap:balance;
    }

    .training-chooser-media-copy p{
        margin:14px 0 0;
        color:#fff;
        font-size:13px;
        line-height:1.65;
        text-shadow:0 1px 18px rgba(20,10,14,.38);
    }

    .training-chooser-media-copy a{
        display:inline-flex;
        align-items:center;
        gap:9px;
        margin-top:14px;
        color:#fff;
        font-size:12px;
        line-height:1.2;
        font-weight:700;
        padding:10px 14px;
        border-radius:999px;
        background:rgba(255,255,255,.12);
        border:1px solid rgba(255,255,255,.22);
        -webkit-backdrop-filter:blur(8px);
        backdrop-filter:blur(8px);
        transition:background .22s ease,transform .22s ease,border-color .22s ease;
    }

    .training-chooser-media-copy a i{
        font-size:9px;
        transition:transform .22s ease;
    }

    .training-chooser-media-copy a:hover{
        background:rgba(255,255,255,.18);
        border-color:rgba(255,255,255,.30);
        transform:translateY(-1px);
    }

    .training-chooser-media-copy a:hover i{
        transform:translateX(4px);
    }

    @media (max-width:1050px){
        .training-chooser-head{
            grid-template-columns:1fr;
            gap:22px;
        }

        .training-chooser-intro{
            max-width:650px;
        }

        .training-chooser-layout{
            grid-template-columns:1fr;
        }

        .training-chooser-options{
            position:static;
            grid-template-columns:1fr 1fr;
            padding:18px;
        }

        .training-chooser-stage{
            padding-top:6px;
        }

        .training-chooser-media{
            min-height:420px;
        }
    }

    @media (max-width:700px){
        .training-chooser{
            padding:58px 0 64px;
        }

        .training-chooser-wave{
            height:18px;
        }

        .training-chooser-art--one{
            top:250px;
            left:-62px;
            width:150px;
            height:285px;
            opacity:.42;
        }

        .training-chooser-head{
            padding-bottom:24px;
        }

        .training-chooser-head-copy h2{
            font-size:clamp(37px,calc(11vw - 3px),49px);
        }

        .training-chooser-layout{
            gap:26px;
            margin-top:28px;
        }

        .training-chooser-options{
            grid-template-columns:1fr;
            gap:8px;
            padding:10px;
            border-radius:24px;
        }

        .training-chooser-options button{
            min-height:56px;
            padding:11px 12px;
            border-radius:17px;
            transform:none!important;
        }

        .training-chooser-options button span{
            font-size:22px;
        }

        .training-chooser-stage{
            padding-top:0;
        }

        .training-chooser-media{
            min-height:420px;
            border-radius:24px;
        }

        .training-chooser-media-copy{
            left:22px;
            right:22px;
            bottom:22px;
            max-width:none;
        }

        .training-chooser-media-copy strong{
            font-size:clamp(32px,9.5vw,42px);
        }

        .training-chooser-media-copy p{
            font-size:12px;
            line-height:1.6;
        }

        .training-chooser-media-copy a{
            width:max-content;
            max-width:100%;
            white-space:normal;
        }
    }

    @media (prefers-reduced-motion:reduce){
        .training-chooser-options button,
        .training-chooser-options button i,
        .training-chooser-media img,
        .training-chooser-media-copy,
        .training-chooser-media-copy a,
        .training-chooser-media-copy a i{
            transition:none!important;
            animation:none!important;
        }
    }
