/* =========================================================
   JUST DANCE — WZORZEC RASY
   ========================================================= */

.breed-page{
    background:#f7f6f2;
    color:#292827;
}

.breed-container{
    width:min(1180px, calc(100% - 48px));
    margin:0 auto;
}

/* HERO ----------------------------------------------------- */

.breed-hero{
    min-height:620px;
    display:grid;
    grid-template-columns:1.15fr .85fr;
    background:#242323;
}

.breed-hero__image{
    min-height:620px;
    overflow:hidden;
}

.breed-hero__image img{
    width:100%;
    height:100%;
    display:block;
    object-fit:cover;
    object-position:center;
}

.breed-hero__content{
    display:flex;
    flex-direction:column;
    justify-content:center;
    padding:70px clamp(40px,7vw,100px);
    color:#fff;
}

.breed-kicker{
    margin-bottom:22px;
    color:#c79a62;
    font-size:12px;
    font-weight:600;
    letter-spacing:.24em;
}

.breed-hero h1{
    margin:0;
    font-size:clamp(54px,6vw,86px);
    line-height:.93;
    font-weight:300;
    letter-spacing:-.035em;
}

.breed-hero h1 em{
    color:#c08a49;
    font-family:Georgia, "Times New Roman", serif;
    font-weight:400;
}

.breed-hero__content p{
    max-width:390px;
    margin:30px 0 0;
    color:#d8d5d0;
    font-size:16px;
    line-height:1.8;
}

/* INTRO ---------------------------------------------------- */

.breed-intro{
    padding:90px 0 70px;
    text-align:center;
    background:#f7f6f2;
}

.section-label,
.breed-index__label{
    display:block;
    color:#a36d2f;
    font-size:11px;
    font-weight:700;
    letter-spacing:.22em;
}

.breed-intro h2{
    margin:15px 0 18px;
    font-size:clamp(34px,4vw,52px);
    line-height:1.05;
    font-weight:300;
}

.breed-intro p{
    max-width:650px;
    margin:0 auto;
    color:#73706c;
    font-size:16px;
    line-height:1.8;
}

/* LAYOUT --------------------------------------------------- */

.breed-layout{
    display:grid;
    grid-template-columns:220px minmax(0, 1fr);
    gap:85px;
    padding-bottom:110px;
}

.breed-index{
    position:sticky;
    top:100px;
    align-self:start;
    padding:8px 0 0 22px;
    border-left:1px solid #d8c2a4;
}

.breed-index__label{
    margin-bottom:18px;
}

.breed-index a{
    display:block;
    padding:8px 0;
    color:#77736e;
    text-decoration:none;
    font-size:13px;
    line-height:1.4;
    transition:.2s ease;
}

.breed-index a:hover{
    color:#a36d2f;
    transform:translateX(3px);
}

/* SECTIONS ------------------------------------------------- */

.breed-section{
    position:relative;
    padding:0 0 72px;
    margin:0 0 72px;
    border-bottom:1px solid #ded9d1;
    scroll-margin-top:105px;
}

.breed-section:last-child{
    margin-bottom:0;
}

.breed-number{
    display:block;
    margin-bottom:13px;
    color:#b47c38;
    font-size:12px;
    font-weight:700;
    letter-spacing:.18em;
}

.breed-section h2{
    margin:0 0 25px;
    color:#a36d2f;
    font-size:clamp(30px,3.5vw,46px);
    line-height:1.05;
    font-weight:300;
}

.breed-section p{
    max-width:800px;
    margin:0 0 17px;
    color:#5f5c58;
    font-size:16px;
    line-height:1.85;
}

.breed-highlight{
    margin-top:30px;
    padding:27px 30px;
    border-left:3px solid #b47c38;
    background:#eeece7;
}

.breed-highlight strong{
    display:block;
    margin-bottom:12px;
    color:#a36d2f;
    font-size:12px;
    letter-spacing:.15em;
}

.breed-highlight p{
    margin:0 0 8px;
    font-size:15px;
    line-height:1.7;
}

.breed-highlight p:last-child{
    margin-bottom:0;
}

/* MOBILE --------------------------------------------------- */

@media(max-width:900px){
    .breed-hero{
        grid-template-columns:1fr;
    }

    .breed-hero__image{
        min-height:430px;
        max-height:58vh;
    }

    .breed-hero__content{
        min-height:390px;
    }

    .breed-layout{
        grid-template-columns:1fr;
        gap:35px;
    }

    .breed-index{
        position:relative;
        top:auto;
        display:flex;
        flex-wrap:wrap;
        gap:4px 18px;
        padding:0 0 15px;
        border-left:0;
        border-bottom:1px solid #d8c2a4;
    }

    .breed-index__label{
        width:100%;
    }

    .breed-index a{
        padding:5px 0;
    }
}

@media(max-width:600px){
    .breed-container{
        width:min(100% - 30px, 1180px);
    }

    .breed-hero__image{
        min-height:320px;
    }

    .breed-hero__content{
        min-height:330px;
        padding:50px 25px;
    }

    .breed-intro{
        padding:65px 0 45px;
    }

    .breed-layout{
        padding-bottom:60px;
    }

    .breed-section{
        padding-bottom:48px;
        margin-bottom:48px;
    }

    .breed-section p{
        font-size:15px;
        line-height:1.75;
    }

    .breed-highlight{
        padding:22px;
    }
}
