.academy-manual{
    position:relative;
    overflow:hidden;
    padding:155px 0 165px;
    background:#FDF3F2;
}

.academy-manual__wave{
    position:absolute;
    left:0;
    width:100%;
    z-index:1;
    pointer-events:none;
}

.academy-manual__wave svg{
    display:block;
    width:100%;
    height:100%;
}

.academy-manual__wave path{
    fill:#fffdfb;
}

.academy-manual__wave--top{
    top:-1px;
    height:95px;
}

.academy-manual__wave--bottom{
    bottom:-1px;
    height:95px;
}

.academy-manual__grid{
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:minmax(0,.92fr) minmax(440px,1.08fr);
    gap:clamp(70px,8vw,135px);
    align-items:center;
}

.academy-manual__copy{
    position:relative;
    z-index:3;
    max-width:680px;
}

.academy-manual__kicker{
    display:block;
    margin:0 0 13px;
    color:#b56f80;
    font-family:var(--script);
    font-size:clamp(29px,2.5vw,37px);
    line-height:1;
}

.academy-manual__copy h2{
    max-width:650px;
    margin:0;
    color:#4d4346;
    font-family:var(--serif);
    font-size:clamp(36px,3.45vw,51px);
    line-height:1;
    letter-spacing:-.032em;
    font-weight:500;
}

.academy-manual__copy h2 span{
    display:block;
    margin-top:6px;
    color:#b85f73;
    font-family:var(--script);
    font-size:.96em;
    line-height:.95;
    font-weight:400;
    letter-spacing:0;
}

.academy-manual__intro{
    max-width:625px;
    margin:26px 0 0;
    color:#65575b;
    font-size:16px;
    line-height:1.75;
}

.academy-manual__features{
    display:grid;
    gap:10px;
    margin-top:34px;
}

.academy-manual__feature{
    display:grid;
    grid-template-columns:74px minmax(0,1fr);
    gap:18px;
    align-items:center;
    min-height:102px;
    padding:15px 21px 15px 13px;
    border-radius:21px;
    background:#fffdfb;
    opacity:1;
    --pmf-reveal-from:translateX(-14px);transform:none;
    transition:
        opacity .55s ease,
        transform .55s cubic-bezier(.22,1,.36,1);
}

.academy-manual__feature.is-visible{
    opacity:1;
    transform:none;
}

.academy-manual__feature-icon{
    width:68px;
    height:68px;
    display:grid;
    place-items:center;
    border-radius:52% 48% 57% 43% / 44% 58% 42% 56%;
    background:#f6dddf;
    transition:
        transform .4s cubic-bezier(.22,1,.36,1),
        border-radius .4s cubic-bezier(.22,1,.36,1),
        background-color .35s ease;
}

.academy-manual__feature:nth-child(2) .academy-manual__feature-icon{
    border-radius:45% 55% 43% 57% / 57% 44% 56% 43%;
}

.academy-manual__feature:nth-child(3) .academy-manual__feature-icon{
    border-radius:58% 42% 52% 48% / 42% 55% 45% 58%;
}

.academy-manual__feature-icon svg{
    width:43px;
    height:43px;
    fill:none;
    stroke:#4d4346;
    stroke-width:1.7;
    stroke-linecap:round;
    stroke-linejoin:round;
    transition:stroke .35s ease;
}

.academy-manual__feature-copy strong{
    display:block;
    margin:0 0 7px;
    color:#4d4346;
    font-family:var(--serif);
    font-size:20px;
    line-height:1.14;
    font-weight:600;
}

.academy-manual__feature-copy p{
    max-width:535px;
    margin:0;
    color:#736469;
    font-size:14px;
    line-height:1.62;
}

.academy-manual__visual{
    position:relative;
    min-height:650px;
    display:flex;
    align-items:center;
    justify-content:center;
    perspective:1500px;
}

.academy-manual__shape{
    position:absolute;
    display:block;
    pointer-events:none;
}

.academy-manual__shape--large{
    z-index:0;
    width:500px;
    height:545px;
    max-width:94%;
    border-radius:55% 45% 43% 57% / 44% 56% 44% 56%;
    background:#edbec2;
    transform:rotate(-5deg);
}

.academy-manual__shape--small{
    z-index:0;
    width:170px;
    height:170px;
    right:1%;
    top:74px;
    border:1px solid rgba(165,77,97,.22);
    border-radius:50%;
}

.academy-manual__book{
    position:relative;
    z-index:2;
    width:min(100%,390px);
    padding:0;
    transform:rotate(1.5deg);
    transform-style:preserve-3d;
    transition:transform .6s cubic-bezier(.22,1,.36,1);
}

.academy-manual__pages{
    position:absolute;
    display:block;
    inset:0;
    border-radius:5px 14px 14px 5px;
    background:#fffdfb;
    box-shadow:0 14px 34px rgba(86,56,64,.08);
    transition:transform .65s cubic-bezier(.22,1,.36,1);
}

.academy-manual__pages--back{
    z-index:0;
    transform:translate(24px,13px) rotate(3.4deg);
}

.academy-manual__pages--middle{
    z-index:1;
    transform:translate(12px,7px) rotate(1.7deg);
}

.academy-manual__cover{
    position:relative;
    z-index:3;
    width:100%;
    overflow:hidden;
    border-radius:5px 14px 14px 5px;
    background:#fff;
    box-shadow:
        0 34px 70px rgba(76,48,56,.16),
        0 10px 24px rgba(76,48,56,.08);
    transform-origin:left center;
    transform-style:preserve-3d;
    backface-visibility:hidden;
    transition:
        transform .72s cubic-bezier(.22,1,.36,1),
        box-shadow .72s cubic-bezier(.22,1,.36,1);
}

.academy-manual__cover img{
    display:block;
    width:100%;
    height:auto;
    backface-visibility:hidden;
}

.academy-manual__spine{
    position:absolute;
    z-index:4;
    top:1%;
    bottom:1%;
    left:8px;
    width:1px;
    background:rgba(72,49,55,.16);
    pointer-events:none;
    transition:
        opacity .5s ease,
        transform .6s cubic-bezier(.22,1,.36,1);
}

[data-manual-reveal]{
    opacity:1;
    --pmf-reveal-from:translateY(22px);transform:none;
    transition:
        opacity .75s ease,
        transform .75s cubic-bezier(.22,1,.36,1);
}

[data-manual-reveal].is-visible{
    opacity:1;
    transform:none;
}

@media(hover:hover) and (pointer:fine){
    .academy-manual__feature:hover .academy-manual__feature-icon{
        transform:rotate(4deg) scale(1.05);
        border-radius:44% 56% 47% 53% / 57% 43% 56% 44%;
        background:#edb7bd;
    }

    .academy-manual__feature:hover .academy-manual__feature-icon svg{
        stroke:#fff;
    }

    .academy-manual__visual:hover .academy-manual__book{
        transform:rotate(1deg) translateY(-4px);
    }

    .academy-manual__visual:hover .academy-manual__cover{
        transform:rotateY(-7deg) translateX(-2px);
        box-shadow:
            12px 36px 76px rgba(76,48,56,.18),
            4px 12px 28px rgba(76,48,56,.10);
    }

    .academy-manual__visual:hover .academy-manual__pages--middle{
        transform:translate(17px,8px) rotate(2.2deg);
    }

    .academy-manual__visual:hover .academy-manual__pages--back{
        transform:translate(30px,14px) rotate(4deg);
    }

    .academy-manual__visual:hover .academy-manual__spine{
        transform:translateX(-1px);
        opacity:.75;
    }
}

@media(max-width:1050px){
    .academy-manual__grid{
        grid-template-columns:minmax(0,.9fr) minmax(390px,1.1fr);
        gap:55px;
    }

    .academy-manual__visual{
        min-height:600px;
    }

    .academy-manual__book{
        width:min(100%,360px);
    }

    .academy-manual__shape--large{
        width:450px;
        height:500px;
    }
}

@media(max-width:900px){
    .academy-manual{
        padding:140px 0 145px;
    }

    .academy-manual__grid{
        grid-template-columns:1fr;
        gap:55px;
    }

    .academy-manual__copy{
        max-width:720px;
    }

    .academy-manual__visual{
        width:min(100%,650px);
        margin-inline:auto;
    }
}

@media(max-width:700px){
    .academy-manual{
        padding:115px 0 125px;
    }

    .academy-manual__wave--top,
    .academy-manual__wave--bottom{
        height:65px;
    }

    .academy-manual__kicker{
        font-size:clamp(27px,7vw,33px);
    }

    .academy-manual__copy h2{
        font-size:clamp(33px,8.8vw,43px);
    }

    .academy-manual__intro{
        margin-top:22px;
        font-size:14px;
        line-height:1.7;
    }

    .academy-manual__features{
        margin-top:28px;
        gap:9px;
    }

    .academy-manual__feature{
        grid-template-columns:62px minmax(0,1fr);
        gap:14px;
        min-height:94px;
        padding:12px 13px 12px 10px;
        border-radius:18px;
    }

    .academy-manual__feature-icon{
        width:58px;
        height:58px;
    }

    .academy-manual__feature-icon svg{
        width:38px;
        height:38px;
    }

    .academy-manual__feature-copy strong{
        font-size:18px;
    }

    .academy-manual__feature-copy p{
        font-size:13px;
        line-height:1.58;
    }

    .academy-manual__visual{
        min-height:520px;
    }

    .academy-manual__shape--large{
        width:360px;
        height:425px;
    }

    .academy-manual__shape--small{
        width:120px;
        height:120px;
        top:55px;
    }

    .academy-manual__book{
        width:min(82vw,320px);
    }
}

@media(max-width:430px){
    .academy-manual__feature{
        grid-template-columns:55px minmax(0,1fr);
        gap:11px;
    }

    .academy-manual__feature-icon{
        width:51px;
        height:51px;
    }

    .academy-manual__feature-icon svg{
        width:34px;
        height:34px;
    }

    .academy-manual__feature-copy strong{
        font-size:17px;
    }

    .academy-manual__feature-copy p{
        font-size:12.5px;
    }

    .academy-manual__visual{
        min-height:470px;
    }

    .academy-manual__shape--large{
        width:310px;
        height:365px;
    }

    .academy-manual__book{
        width:min(78vw,285px);
    }

    .academy-manual__pages--back{
        transform:translate(17px,10px) rotate(3.4deg);
    }

    .academy-manual__pages--middle{
        transform:translate(9px,5px) rotate(1.7deg);
    }
}

@media(prefers-reduced-motion:reduce){
    [data-manual-reveal],
    .academy-manual__feature{
        opacity:1;
        transform:none;
        transition:none;
    }

    .academy-manual__book,
    .academy-manual__cover,
    .academy-manual__pages,
    .academy-manual__spine,
    .academy-manual__feature-icon,
    .academy-manual__feature-icon svg{
        transition:none;
    }
}
