/* ==============================
   DekoKZ Studio Core
   refactor 30.06
============================== */

#page-content{
    background:#fff;
}

/* =========================================
   Общие компоненты DekoKZ
========================================= */

html{
    scroll-behavior:smooth;
}

.product-rating,
.reviews-distribution,
.rating-distribution,
.review-rate,
.rating-count,
.rating-value,
.rating-stars,
.product-reviews__summary,
.shop-review-summary,
.reviews-summary,
.rating-total{
    display:none !important;
}

.dkz-product-page-section{
    padding:56px 36px !important;
    margin:0 !important;
    background:#fff !important;
    border-top:1px solid #eeeeee !important;
}

.dkz-product-page-section:nth-child(even){
    background:#faf8fb !important;
}

.dkz-product-page-section .product-card_head,
.dkz-gallery-section .product-card_head,
#product-description .product-card_head{
    text-align:center;
}

.dkz-product-page-section .product-card_head h2,
.dkz-gallery-section .product-card_head h2,
#product-description .product-card_head h2{
    margin:0 auto 24px;
    text-align:center;
}

.dkz-gallery-section .product-card_head{
    margin-bottom:20px;
}

.dkz-gallery-section__intro{
    max-width:800px;
    margin:0 auto 40px;
    text-align:center;
    line-height:1.7;
}

.dkz-learn{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:24px;
}

.dkz-learn__item{
    background:#fafafa;
    border:1px solid #ececec;
    border-radius:12px;
    padding:24px;
}

.dkz-learn__item h3{
    margin:0 0 12px;
    font-size:20px;
    line-height:1.3;
}

.dkz-learn__item p{
    margin:0;
    line-height:1.7;
}

.dkz-faq{
    width:100%;
    max-width:none;
}

.dkz-faq__item{
    width:100%;
    margin-bottom:12px;
    border:1px solid #e8e8e8;
    border-radius:10px;
    background:#fff;
    overflow:hidden;
}

.dkz-faq__item summary{
    position:relative;
    padding:20px 54px 20px 22px;
    cursor:pointer;
    list-style:none;
    font-weight:600;
    font-size:16px;
    line-height:1.5;
}

.dkz-faq__item summary::-webkit-details-marker{
    display:none;
}

.dkz-faq__item summary:after{
    content:"+";
    position:absolute;
    right:22px;
    top:50%;
    transform:translateY(-50%);
    font-size:24px;
    font-weight:400;
    color:#888;
}

.dkz-faq__item[open] summary:after{
    content:"−";
}

.dkz-faq__item p{
    margin:0;
    padding:0 22px 22px;
    line-height:1.7;
    color:#555;
}

/* =========================================
   Общая галерея DekoKZ
========================================= */

.dkz-gallery-standard{
    display:flex !important;
    align-items:flex-start !important;
    gap:26px !important;
    max-width:980px !important;
    margin:30px auto 0 !important;
}

.dkz-gallery-standard__previews{
    width:92px !important;
    flex:0 0 92px !important;
    display:flex !important;
    flex-direction:column !important;
    gap:10px !important;
    max-height:520px !important;
    overflow-y:auto !important;
    overflow-x:hidden !important;
    padding-right:6px !important;
}

.dkz-gallery-standard__preview{
    width:80px !important;
    height:80px !important;
    padding:6px !important;
    border:1px solid #e5e5e5 !important;
    background:#fff !important;
    cursor:pointer !important;
    box-sizing:border-box !important;
}

.dkz-gallery-standard__preview.selected{
    border:1px solid #bfbfbf !important;
    box-shadow:0 0 0 1px #bfbfbf inset !important;
}

.dkz-gallery-standard__preview img{
    display:block !important;
    width:100% !important;
    height:100% !important;
    object-fit:contain !important;
}

.dkz-gallery-standard__main{
    flex:1 1 auto !important;
    min-width:0 !important;
    background:#fff !important;
    display:block !important;
    padding:0 !important;
    margin:0 !important;
}

.dkz-gallery-standard__link{
    display:flex !important;
    align-items:flex-start !important;
    justify-content:center !important;
    width:100% !important;
    height:520px !important;
    line-height:normal !important;
}

.dkz-gallery-standard__link img{
    display:block !important;
    max-width:100% !important;
    max-height:520px !important;
    width:auto !important;
    height:auto !important;
    object-fit:contain !important;
}

.dkz-gallery-standard__caption{
    width:100% !important;
    padding:12px 0 0 !important;
    text-align:center !important;
    font-size:15px !important;
    line-height:1.5 !important;
    color:#555 !important;
}

.dkz-gallery-standard__previews::-webkit-scrollbar{
    width:6px;
}

.dkz-gallery-standard__previews::-webkit-scrollbar-track{
    background:#f3f3f3;
}

.dkz-gallery-standard__previews::-webkit-scrollbar-thumb{
    background:#cfcfcf;
    border-radius:6px;
}

/* =========================================
   Общие CTA
========================================= */

.dkz-contact-cta{
    margin:80px 0 40px;
    padding:60px 40px !important;
    text-align:center;
    background:#faf8fb;
    border:1px solid #ece8f0;
    border-radius:18px;
    overflow:hidden;
}

.dkz-contact-cta__icon{
    font-size:48px;
    margin-bottom:20px;
}

.dkz-contact-cta h2{
    margin:0 0 20px;
    font-size:42px;
}

.dkz-contact-cta__text{
    max-width:760px;
    margin:0 auto 35px;
    line-height:1.8;
    font-size:18px;
}

.dkz-contact-cta a.dkz-contact-cta__button.button,
.dkz-contact-cta__button{
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:12px !important;
    width:auto !important;
    min-width:220px !important;
    max-width:320px !important;
    margin:0 auto !important;
    padding:14px 28px !important;
    background:#25D366 !important;
    border:2px solid #25D366 !important;
    border-radius:50px !important;
    color:#ffffff !important;
    font-size:18px !important;
    font-weight:700 !important;
    line-height:1.2 !important;
    text-align:center !important;
    text-decoration:none !important;
    white-space:nowrap !important;
    box-sizing:border-box !important;
    transition:all .25s ease;
}

.dkz-contact-cta a.dkz-contact-cta__button.button:hover,
.dkz-contact-cta__button:hover{
    background:#1fb457 !important;
    border-color:#1fb457 !important;
    color:#ffffff !important;
    transform:translateY(-2px);
    box-shadow:0 10px 25px rgba(37,211,102,.25);
}

.dkz-contact-cta__button em,
.dkz-contact-cta__button i{
    flex:0 0 auto !important;
    color:#ffffff !important;
    font-size:22px !important;
}

.dkz-contact-cta__note{
    margin-top:18px;
    font-size:14px;
    opacity:.75;
}

.dkz-final-buy,
.dkz-live-final-cta{
    margin:0 0 60px;
    padding:60px 40px !important;
    text-align:center !important;
    background:#faf8fb;
    border:1px solid #ece8f0;
    border-radius:18px;
}

.dkz-final-buy h2,
.dkz-live-final-cta h2{
    margin:0 0 25px !important;
    text-align:center !important;
}

.dkz-final-buy__text,
.dkz-live-final-cta p{
    max-width:700px;
    margin:0 auto 25px !important;
    line-height:1.8;
    text-align:center !important;
}

.dkz-final-buy__label{
    font-size:20px;
    font-weight:600;
    margin:0 auto 12px !important;
    text-align:center !important;
}

.dkz-final-buy__price{
    font-size:42px;
    font-weight:700;
    line-height:1;
    margin:0 auto 25px;
    text-align:center !important;
}

.dkz-final-buy .button,
.dkz-live-final-cta .button{
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    margin-left:auto !important;
    margin-right:auto !important;
    box-sizing:border-box !important;
}

.dkz-cta-training{
    margin:80px 40px;
    padding:60px;
    background:#faf8fb;
    border:1px solid #ece8f0;
    border-radius:16px;
    text-align:center;
}

.dkz-cta-training h2{
    margin:0 0 20px;
}

.dkz-cta-training__text{
    max-width:800px;
    margin:0 auto 40px;
    line-height:1.8;
}

.dkz-cta-training__grid{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:20px;
    max-width:900px;
    margin:0 auto 40px;
}

.dkz-cta-training__item{
    background:#fff;
    border:1px solid #ececec;
    border-radius:10px;
    padding:24px;
    text-align:left;
}

.dkz-cta-training__item strong{
    display:block;
    margin-bottom:10px;
}

.dkz-cta-training__item span{
    display:block;
    line-height:1.6;
}

.dkz-cta-training__buy{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:40px;
    margin-top:35px;
}

.dkz-cta-training__offer{
    text-align:center;
}

.dkz-cta-training__label{
    font-size:20px;
    font-weight:600;
    margin-bottom:10px;
    line-height:1.4;
}

.dkz-cta-training__price{
    font-size:42px;
    font-weight:700;
    line-height:1;
}

/* =========================================
   Отзывы
========================================= */

#product-reviews > div > h2{
    text-align:center;
    margin-bottom:30px;
}

.dkz-no-reviews{
    max-width:800px;
    margin:0 auto 40px;
    padding:32px 0;
    text-align:center;
}

.dkz-no-reviews__title{
    margin-bottom:10px;
    text-align:center;
    font-size:22px;
    font-weight:700;
}

.dkz-no-reviews__text{
    max-width:760px;
    margin:0 auto;
    text-align:center;
    color:#666;
}

#product-reviews .reviews-content{
    text-align:center;
}

#product-reviews .reviews-content .review,
#product-reviews .reviews-content .reviews-list,
#product-reviews .reviews-content .js-reviews-outer{
    text-align:left;
}

.dkz-review-login{
    max-width:800px;
    margin:16px auto 0;
    text-align:center;
}

/* =========================================
   Онлайн МК / Онлайн урок: Hero
========================================= */

.dkz-online-mk-page .product-info.dkz-online-mk-product-info{
    max-width:none !important;
    width:100% !important;
}

.dkz-online-mk-page .product-card.dkz-online-mk-card{
    display:grid !important;
    grid-template-columns:58% 42% !important;
    width:100% !important;
    background:#fff !important;
    align-items:stretch !important;
}

.dkz-online-mk-page .dkz-online-mk-gallery{
    display:block !important;
    width:100% !important;
    margin:0 !important;
    padding:0 !important;
    background:#fff !important;
    overflow:hidden !important;
}

.dkz-online-mk-page .dkz-online-main-image{
    display:block !important;
    width:100% !important;
    height:auto !important;
    margin:0 !important;
    padding:0 !important;
}

.dkz-online-mk-page .dkz-online-main-image img{
    display:block !important;
    max-width:100% !important;
    height:auto !important;
}

.dkz-online-mk-page .product-card__right.dkz-online-mk-cart{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    width:100% !important;
    margin:0 !important;
    padding:0 !important;
    background:#fff !important;
}

.dkz-online-mk-page .dkz-online-cart{
    width:100% !important;
    max-width:none !important;
    margin:0 !important;
    padding:56px 54px !important;
    box-sizing:border-box !important;
}

.dkz-online-mk-page .dkz-short-description{
    margin:0 0 32px 0 !important;
    padding:0 !important;
}

.dkz-online-mk-page .product-card__summary{
    line-height:1.6 !important;
}

.dkz-online-mk-page .dkz-online-info{
    margin:0 0 34px 0 !important;
    padding:24px 0 !important;
    border-top:1px solid #e4e4e4 !important;
    border-bottom:1px solid #e4e4e4 !important;
}

.dkz-online-mk-page .dkz-online-info__item{
    display:flex !important;
    align-items:flex-start !important;
    gap:10px !important;
    margin:0 0 12px 0 !important;
    font-size:15px !important;
    line-height:1.45 !important;
}

.dkz-online-mk-page .dkz-online-info__item:last-child{
    margin-bottom:0 !important;
}

.dkz-online-mk-page .product-card__prices-add2cart.dkz-online-cart__buy{
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    gap:28px !important;
    margin:0 !important;
    padding:0 !important;
    border:none !important;
}

.dkz-online-mk-page .dkz-online-cart__price .price{
    font-size:28px !important;
    font-weight:700 !important;
}

.dkz-online-mk-page .dkz-online-cart__button{
    white-space:nowrap !important;
}

.dkz-online-mk-title{
    text-align:center;
}

.dkz-online-mk-page .dkz-online-mk-title{
    padding-left:40px !important;
}

.dkz-online-mk-page .product-list,
.dkz-online-mk-page .products-slider-box{
    padding-left:40px !important;
}

/* =========================================
   Живой МК: хлебные крошки + H1
========================================= */

.dkz-live-mk-page .breadcrumbs{
    width:100% !important;
    margin:0 !important;
    padding:14px 40px 8px !important;
    background:#f5f5f5 !important;
    box-sizing:border-box !important;
}

.dkz-live-mk-title{
    width:100% !important;
    margin:0 !important;
    padding:12px 40px 30px !important;
    background:#f5f5f5 !important;

    text-align:left !important;
    font-size:32px !important;
    line-height:1.25 !important;
    font-weight:700 !important;

    box-sizing:border-box !important;
}

.dkz-live-mk-page .product-info.dkz-live-mk-product-info{
    max-width:none !important;
    width:100% !important;
    margin:0 !important;
    padding:0 !important;
}


/* -----------------------------------------
   Основная Hero-карточка
----------------------------------------- */

.dkz-live-mk-page .product-card.dkz-live-mk-card{
    display:grid !important;
    grid-template-columns:58% 42% !important;

    width:100% !important;

    margin:0 !important;
    padding:0 !important;

    background:#fff !important;

    align-items:stretch !important;
    box-sizing:border-box !important;
}


/* -----------------------------------------
   Галерея
----------------------------------------- */

.dkz-live-mk-page .dkz-live-mk-gallery{
    display:block !important;

    width:100% !important;

    margin:0 !important;
    padding:0 !important;

    background:#fff !important;

    overflow:hidden !important;
    box-sizing:border-box !important;
}


.dkz-live-gallery__main,
.dkz-live-gallery__link{
    display:block;
    width:100%;
}


.dkz-live-gallery__link img{
    display:block;

    width:100%;
    height:auto;

    margin:0;
    padding:0;
}


.dkz-live-gallery__empty{
    padding:80px 30px;

    text-align:center;

    background:#faf8fb;
    color:#666;
}


/* -----------------------------------------
   Правая часть Hero
----------------------------------------- */

.dkz-live-mk-page .product-card__right.dkz-live-mk-cart{
    display:flex !important;

    align-items:center !important;
    justify-content:center !important;

    width:100% !important;

    margin:0 !important;
    padding:0 !important;

    background:#fff !important;

    box-sizing:border-box !important;
}


.dkz-live-cart{
    width:100% !important;
    max-width:none !important;

    margin:0 !important;
    padding:56px 54px !important;

    box-sizing:border-box !important;
}


/* -----------------------------------------
   Бейджи
----------------------------------------- */

.dkz-live-cart__badges{
    display:flex;
    flex-wrap:wrap;

    gap:8px;

    margin:0 0 16px !important;
}


.dkz-live-cart__badge{
    display:inline-flex;
    align-items:center;

    padding:7px 14px;

    border-radius:999px;

    background:#f2e4cf;
    color:#5f4630;

    font-size:13px;
    font-weight:700;

    text-transform:uppercase;
    letter-spacing:.04em;
}


/* -----------------------------------------
   Подзаголовок
----------------------------------------- */

.dkz-live-cart__subtitle{
    margin:0 0 18px !important;

    color:#777;

    font-size:15px;
    font-weight:700;

    text-transform:uppercase;
    letter-spacing:.04em;
}


/* -----------------------------------------
   Короткое описание
----------------------------------------- */

.dkz-live-cart__summary{
    margin:0 0 32px !important;

    line-height:1.7;
}


/* -----------------------------------------
   Характеристики
----------------------------------------- */

.dkz-live-cart__meta{
    display:grid;
    grid-template-columns:repeat(2,1fr);

    gap:14px;

    margin:0 0 34px !important;
    padding:24px 0;

    border-top:1px solid #e4e4e4;
    border-bottom:1px solid #e4e4e4;
}


.dkz-live-cart__meta-item{
    min-width:0;
}


.dkz-live-cart__meta-item span{
    display:block;

    margin:0 0 5px !important;

    color:#777;

    font-size:13px;
}


.dkz-live-cart__meta-item strong{
    display:block;

    margin:0 !important;

    font-size:15px;
    line-height:1.35;
}


/* -----------------------------------------
   Цена и CTA
----------------------------------------- */

.dkz-live-cart__hero-buy{
    display:flex;

    align-items:center;
    justify-content:space-between;

    gap:24px;

    margin:0 !important;
}


.dkz-live-cart__hero-price .price,
.dkz-live-cart__price .price{
    font-size:28px !important;
    font-weight:700 !important;
}
/* =========================================
   Живой МК: Как принять участие
========================================= */



.dkz-live-cart__dates{
    max-width:1100px;
    margin:0 auto 28px;
}

.dkz-live-cart__dates-title{
    margin:0 0 16px;
    font-size:22px;
    font-weight:700;
    text-align:center;
}

.dkz-live-cart__sku-list{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:16px;
}

.dkz-live-cart__sku{
    display:flex;
    align-items:flex-start;
    gap:14px;
    padding:20px;
    background:#fff;
    border:1px solid #ece8f0;
    border-radius:14px;
    cursor:pointer;
}

.dkz-live-cart__sku input{
    margin-top:4px;
}

.dkz-live-cart__sku-info{
    display:block;
    flex:1 1 auto;
    min-width:0;
}

.dkz-live-cart__sku-info strong{
    display:block;
    margin-bottom:8px;
    font-size:17px;
    line-height:1.35;
}

.dkz-live-cart__sku-info em{
    display:block;
    color:#666;
    font-size:14px;
    font-style:normal;
}

.dkz-live-cart__sku-price{
    flex:0 0 auto;
    font-weight:700;
}

.dkz-live-cart__buy{
    margin-top:22px;
    text-align:center;
}

.dkz-live-cart__no-dates{
    max-width:760px;
    margin:0 auto 28px;
    padding:24px 26px;
    background:#fff;
    border:1px solid #ece8f0;
    border-radius:14px;
    text-align:center;
}

.dkz-live-cart__no-dates strong,
.dkz-live-cart__no-dates span{
    display:block;
}

.dkz-live-cart__no-dates strong{
    margin-bottom:8px;
    font-size:18px;
}

.dkz-live-cart__no-dates span{
    color:#666;
    line-height:1.6;
}

.dkz-live-cart__options{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:18px;
    max-width:1100px;
    margin:0 auto;
}

.dkz-live-cart__option{
    display:block;
    padding:24px;
    background:#fff;
    border:1px solid #ece8f0;
    border-radius:14px;
    color:inherit !important;
    text-decoration:none !important;
    transition:all .25s ease;
}

.dkz-live-cart__option:hover{
    transform:translateY(-3px);
    box-shadow:0 14px 30px rgba(0,0,0,.08);
}

.dkz-live-cart__option strong{
    display:block;
    margin-bottom:10px;
    font-size:18px;
    line-height:1.35;
}

.dkz-live-cart__option span{
    display:block;
    color:#666;
    line-height:1.6;
}

.dkz-live-timeline{
    display:grid;
    grid-template-columns:repeat(6,1fr);
    gap:14px;
    max-width:1100px;
    margin:0 auto;
}

.dkz-live-timeline__item{
    position:relative;
    padding:22px 16px;
    background:#fff;
    border:1px solid #ececec;
    border-radius:12px;
    text-align:center;
}

.dkz-live-timeline__item span{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:34px;
    height:34px;
    margin-bottom:12px;
    border-radius:50%;
    background:#f2e4cf;
    color:#5f4630;
    font-weight:700;
}

.dkz-live-timeline__item strong{
    display:block;
    line-height:1.35;
}

/* =========================================
   Онлайн курс
========================================= */

.dkz-course-program{
    padding:56px 36px !important;
    margin:0 !important;
    background:#faf8fb !important;
    border-top:1px solid #eeeeee !important;
}

.dkz-course-program__inner{
    max-width:1100px;
    margin:0 auto;
}

.dkz-course-program__head{
    max-width:760px;
    margin:0 auto 32px;
    text-align:center;
}

.dkz-course-program__label{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    margin:0 0 14px;
    padding:7px 14px;
    border-radius:999px;
    background:#f2e4cf;
    color:#5f4630;
    font-size:13px;
    font-weight:700;
    text-transform:uppercase;
    letter-spacing:.04em;
}

.dkz-course-program__head h2{
    margin:0 0 18px;
}

.dkz-course-program__head p{
    margin:0;
    font-size:17px;
    line-height:1.7;
    color:#666;
}

.dkz-course-program__notice{
    max-width:760px;
    margin:0 auto;
    padding:22px 26px;
    background:#fff;
    border:1px solid #ece8f0;
    border-radius:12px;
    text-align:center;
    font-size:16px;
    line-height:1.6;
    color:#555;
}

.dkz-course-program__notice strong{
    color:#222;
    font-weight:700;
}

.dkz-course-lessons{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:24px;
    margin-top:34px;
}

.dkz-course-lesson{
    display:block;
    background:#fff;
    border:1px solid #ece8f0;
    border-radius:14px;
    overflow:hidden;
    text-decoration:none !important;
    color:inherit !important;
    transition:all .25s ease;
}

.dkz-course-lesson:hover{
    transform:translateY(-3px);
    box-shadow:0 14px 30px rgba(0,0,0,.08);
}

.dkz-course-lesson__image{
    background:#fff;
    padding:22px;
    text-align:center;
}

.dkz-course-lesson__image img{
    display:block;
    width:100%;
    height:220px;
    object-fit:contain;
}

.dkz-course-lesson__content{
    padding:22px 24px 24px;
    border-top:1px solid #f0f0f0;
}

.dkz-course-lesson__number{
    display:inline-flex;
    margin-bottom:12px;
    padding:6px 12px;
    border-radius:999px;
    background:#f2e4cf;
    color:#5f4630;
    font-size:13px;
    font-weight:700;
}

.dkz-course-lesson__title{
    min-height:48px;
    margin-bottom:18px;
    font-size:18px;
    font-weight:700;
    line-height:1.35;
}

.dkz-course-lesson__link{
    font-size:15px;
    font-weight:700;
    color:#777be8;
}

.dkz-course-lesson__separate{
    display:inline-flex;
    align-items:center;
    margin:20px 0 20px 4px;
    padding:5px 10px;
    border-radius:999px;
    background:#eef8f1;
    color:#2f7d4d;
    font-size:12px;
    font-weight:700;
    letter-spacing:.02em;
}

.dkz-course-about{
    max-width:900px;
    margin:0 auto 60px;
}

.dkz-course-about h2{
    text-align:center;
    margin-bottom:30px;
}

.dkz-course-about .content{
    text-align:left;
    line-height:1.8;
}

/* =========================================
   Урок курса
========================================= */

.dkz-lesson-course{
    margin:0 0 56px;
    padding:54px 36px;
    background:#faf8fb;
    border:1px solid #ece8f0;
    border-radius:18px;
    text-align:center;
}

.dkz-lesson-course__inner{
    max-width:860px;
    margin:0 auto;
}

.dkz-lesson-course__label{
    display:inline-flex;
    margin-bottom:16px;
    padding:7px 15px;
    border-radius:999px;
    background:#f2e4cf;
    color:#5f4630;
    font-size:13px;
    font-weight:700;
    text-transform:uppercase;
    letter-spacing:.04em;
}

.dkz-lesson-course__title{
    margin:0 0 26px;
    font-size:32px;
    line-height:1.25;
}

.dkz-lesson-course__meta{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:16px;
    margin:0 auto 28px;
}

.dkz-lesson-course__meta-item{
    padding:18px;
    background:#fff;
    border:1px solid #ececec;
    border-radius:12px;
}

.dkz-lesson-course__meta-item strong{
    display:block;
    margin-bottom:6px;
    font-size:18px;
}

.dkz-lesson-course__meta-item span{
    display:block;
    color:#666;
    font-size:14px;
}

.dkz-lesson-course__text{
    max-width:720px;
    margin:0 auto 30px;
    line-height:1.8;
    color:#666;
}

.dkz-lesson-course__price{
    margin:0 auto 28px;
    text-align:center;
}

.dkz-lesson-course__price span{
    display:block;
    margin-bottom:8px;
    color:#666;
    font-size:15px;
}

.dkz-lesson-course__price strong{
    display:block;
    font-size:34px;
    line-height:1;
}

.dkz-lesson-course__button{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:14px 28px;
    border-radius:999px;
    background:#777be8;
    color:#fff !important;
    font-size:16px;
    font-weight:700;
    text-decoration:none !important;
}

/* =========================================
   Адаптив: планшет
========================================= */

@media (min-width:769px) and (max-width:1100px){

    .dkz-online-mk-page .product-card.dkz-online-mk-card,
    .dkz-live-mk-page .product-card.dkz-live-mk-card{
        display:grid !important;
        grid-template-columns:52% 48% !important;
        align-items:center !important;
    }

    .dkz-online-mk-page .dkz-online-mk-gallery,
    .dkz-live-mk-page .dkz-live-mk-gallery{
        padding:24px !important;
        box-sizing:border-box !important;
    }

    .dkz-online-mk-page .dkz-online-main-image img,
    .dkz-live-gallery__link img{
        display:block !important;
        max-width:100% !important;
        max-height:620px !important;
        width:auto !important;
        height:auto !important;
        margin:0 auto !important;
        object-fit:contain !important;
    }

    .dkz-online-mk-page .product-card__right.dkz-online-mk-cart,
    .dkz-live-mk-page .product-card__right.dkz-live-mk-cart{
        padding:0 !important;
        background:#fff !important;
    }

    .dkz-online-mk-page .dkz-online-cart,
    .dkz-live-cart{
        padding:36px 32px !important;
    }

    .dkz-online-mk-page .product-card__prices-add2cart.dkz-online-cart__buy{
        display:block !important;
    }

    .dkz-online-mk-page .dkz-online-cart__price{
        margin-bottom:22px !important;
    }

    .dkz-online-mk-page .dkz-online-cart__button-wrap,
    .dkz-online-mk-page .dkz-online-cart__button{
        width:auto !important;
    }

    .dkz-online-mk-page .dkz-online-cart__button{
        justify-content:center !important;
    }

    .dkz-gallery-section,
    .dkz-product-page-section,
    #product-description,
    #product-reviews{
        padding-left:36px !important;
        padding-right:36px !important;
    }

    .dkz-cta-training,
    .dkz-contact-cta{
        margin:56px 0 36px !important;
        padding:46px 32px !important;
    }

    .dkz-cta-training__grid{
        grid-template-columns:1fr 1fr !important;
    }

    .dkz-learn{
        grid-template-columns:1fr !important;
    }

    .dkz-live-cart__sku-list,
    .dkz-live-cart__options{
        grid-template-columns:1fr 1fr;
    }

    .dkz-live-included,
    .dkz-live-timeline{
        grid-template-columns:repeat(3,1fr);
    }
}

/* =========================================
   Адаптив: мобильная версия
========================================= */

@media (max-width:768px){

    .dkz-online-mk-page,
    .dkz-live-mk-page{
        overflow:hidden;
    }

    .dkz-online-mk-page .dkz-online-mk-title,
    .dkz-live-mk-title{
        padding-left:20px !important;
        padding-right:20px !important;
        font-size:24px !important;
        line-height:1.25 !important;
    }

    .dkz-online-mk-page .product-info.dkz-online-mk-product-info,
    .dkz-live-mk-page .product-info.dkz-live-mk-product-info{
        max-width:100% !important;
        padding:0 14px !important;
        box-sizing:border-box !important;
    }

    .dkz-online-mk-page .product-card.dkz-online-mk-card,
    .dkz-live-mk-page .product-card.dkz-live-mk-card{
        display:block !important;
        min-height:0 !important;
    }

    .dkz-online-mk-page .dkz-online-mk-gallery,
    .dkz-live-mk-page .dkz-live-mk-gallery{
        padding:20px !important;
    }

    .dkz-online-mk-page .dkz-online-main-image,
    .dkz-live-gallery__main{
        min-height:0 !important;
        padding:0 !important;
    }

    .dkz-online-mk-page .dkz-online-main-image img,
    .dkz-live-gallery__link img{
        max-width:100% !important;
        height:auto !important;
    }

    .dkz-online-mk-page .product-card__right.dkz-online-mk-cart,
    .dkz-live-mk-page .product-card__right.dkz-live-mk-cart{
        padding:0 !important;
        background:#fff !important;
    }

    .dkz-online-mk-page .dkz-online-cart,
    .dkz-live-cart{
        padding:28px 20px !important;
    }

    .dkz-online-mk-page .product-card__prices-add2cart.dkz-online-cart__buy,
    .dkz-live-cart__hero-buy{
        display:block !important;
        text-align:left !important;
    }

    .dkz-online-mk-page .dkz-online-cart__price,
    .dkz-live-cart__hero-price{
        margin-bottom:20px !important;
    }

    .dkz-online-mk-page .dkz-online-cart__button-wrap,
    .dkz-online-mk-page .dkz-online-cart__button,
    .dkz-live-cart__button{
        width:auto !important;
    }

    .dkz-online-mk-page .dkz-online-cart__button,
    .dkz-live-cart__button{
        justify-content:center !important;
    }

    .dkz-gallery-section,
    .dkz-product-page-section,
    #product-description,
    #product-reviews{
        padding-left:18px !important;
        padding-right:18px !important;
    }

    .dkz-gallery-standard{
        display:block !important;
    }

    .dkz-gallery-standard__previews{
        width:100% !important;
        flex-direction:row !important;
        overflow-x:auto !important;
        overflow-y:hidden !important;
        max-height:none !important;
        gap:8px !important;
        margin-bottom:14px !important;
        padding-bottom:4px !important;
    }

    .dkz-gallery-standard__preview{
        flex:0 0 74px !important;
        width:74px !important;
        height:74px !important;
    }

    .dkz-gallery-standard__link{
        height:360px !important;
    }

    .dkz-gallery-standard__link img{
        max-height:360px !important;
    }

    .dkz-cta-training{
        margin:40px 0 !important;
        padding:34px 18px !important;
        border-radius:14px !important;
    }

    .dkz-cta-training h2,
    .dkz-course-program__head h2,
    .dkz-lesson-course__title{
        font-size:26px !important;
        line-height:1.25 !important;
    }

    .dkz-cta-training__text,
    .dkz-course-program__head p{
        font-size:15px !important;
        line-height:1.7 !important;
    }

    .dkz-cta-training__grid,
    .dkz-learn,
    .dkz-live-cart__meta,
    .dkz-live-cart__sku-list,
    .dkz-live-cart__options,
    .dkz-live-included,
    .dkz-live-timeline,
    .dkz-course-lessons,
    .dkz-lesson-course__meta{
        grid-template-columns:1fr !important;
    }

    .dkz-cta-training__grid,
    .dkz-course-lessons{
        gap:18px !important;
    }

    .dkz-cta-training__item,
    .dkz-learn__item{
        padding:18px !important;
    }

    .dkz-cta-training__buy{
        flex-direction:column !important;
        gap:18px !important;
    }

    .dkz-cta-training__label,
    .dkz-final-buy__label{
        font-size:18px !important;
    }

    .dkz-cta-training__price,
    .dkz-final-buy__price{
        font-size:34px !important;
    }

    .dkz-faq__item summary{
        padding:16px 48px 16px 18px !important;
        font-size:15px !important;
    }

    .dkz-faq__item p{
        padding:0 18px 18px !important;
        font-size:14px !important;
    }

    .dkz-contact-cta{
        margin:45px 0 30px !important;
        padding:40px 20px !important;
        border-radius:14px !important;
    }

    .dkz-contact-cta h2,
    .dkz-final-buy h2,
    .dkz-live-final-cta h2{
        font-size:28px !important;
        line-height:1.2 !important;
    }

    .dkz-contact-cta__text,
    .dkz-final-buy__text,
    .dkz-live-final-cta p{
        font-size:15px !important;
        line-height:1.7 !important;
    }

    .dkz-contact-cta a.dkz-contact-cta__button.button,
    .dkz-contact-cta__button{
        min-width:0 !important;
        max-width:240px !important;
        padding:13px 24px !important;
        font-size:16px !important;
        gap:10px !important;
    }

    .dkz-contact-cta__button em,
    .dkz-contact-cta__button i{
        font-size:18px !important;
    }

    .dkz-final-buy,
    .dkz-live-final-cta{
        padding:40px 20px !important;
        margin:40px 0 !important;
        text-align:center !important;
    }

    .dkz-course-program{
        padding:40px 18px !important;
    }

    .dkz-course-program__head{
        margin-bottom:24px;
    }

    .dkz-course-program__notice{
        padding:18px;
        font-size:15px;
    }

    .dkz-course-lesson__image img{
        height:200px;
    }

    .dkz-lesson-course{
        padding:40px 20px;
        margin-bottom:40px;
    }
}


/* =========================================
   DekoKZ: внутренний контейнер секций
========================================= */

.dkz-product-page-section__inner{
    max-width:1200px;
    margin:0 auto;
}

.dkz-product-page-section__inner .content{
    width:100%;
}



/* =========================================
   Живой МК: основная кнопка записи
========================================= */


.dkz-live-section{
    width:100% !important;
    padding:56px 36px !important;
    border-top:1px solid #ece8f0 !important;
    box-sizing:border-box !important;
}

.dkz-live-section--white{
    background:#fff !important;
}

.dkz-live-section--soft{
    background:#faf8fb !important;
}

.dkz-live-section__inner{
    max-width:1200px !important;
    margin:0 auto !important;
}

.dkz-live-section .product-card_head{
    margin:0 0 34px !important;
    text-align:center !important;
}

.dkz-course-program__availability{
    min-height:36px;
    display:flex;
    align-items:center;
    margin:0 0 16px 14px;
}

.dkz-course-program__availability-badge{
    display:inline-flex;
    align-items:center;
    padding:7px 14px;
    border-radius:999px;
    background:#eef8f1;
    color:#2f7d4c;
    font-size:13px;
    font-weight:600;
}

/* ============================================================
   DekoKZ — GLOBAL SECTION HEADER ALIGNMENT

   Общий горизонтальный отступ для секционных заголовков:
   "Все мастер-классы"
   "Выберите направление обучения"
   и других dkz-section-header
============================================================ */

.dkz-section-header {
    width: 100%;
    box-sizing: border-box;

    padding-left: 30px;
    padding-right: 30px;
}


/* ============================================================
   MOBILE
============================================================ */

@media (max-width: 768px) {

    .dkz-section-header {
        padding-left: 16px;
        padding-right: 16px;
    }

}

/* =========================================
   Живой МК: что входит в стоимость
========================================= */

.dkz-live-included{
    display:grid;
    grid-template-columns:repeat(5, minmax(0, 1fr));
    gap:16px;
    width:100%;
    max-width:1100px;
    margin:0 auto;
}

.dkz-live-included__item{
    display:flex;
    align-items:center;
    justify-content:center;

    min-width:0;
    min-height:94px;
    padding:22px 18px;

    background:#fff;
    border:1px solid #ececec;
    border-radius:12px;

    box-sizing:border-box;

    text-align:center;
    font-weight:700;
    line-height:1.45;
}


/* =========================================
   Материалы оплачиваются отдельно:
   4 карточки в строку
========================================= */

.dkz-live-included--materials-extra{
    grid-template-columns:repeat(4, minmax(0, 1fr));
}


/* =========================================
   Плашка о дополнительной оплате материалов
========================================= */

.dkz-live-materials-note{
    display:flex;
    align-items:flex-start;
    gap:18px;

    width:100%;
    max-width:1100px;
    margin:18px auto 0;
    padding:20px 24px;

    background:#fff8ed;
    border:1px solid #ead8bd;
    border-radius:12px;

    box-sizing:border-box;
}

.dkz-live-materials-note::before{
    content:"!";
    display:flex;
    align-items:center;
    justify-content:center;
    flex:0 0 30px;

    width:30px;
    height:30px;

    background:#f2e4cf;
    border-radius:50%;

    color:#725338;
    font-size:18px;
    font-weight:800;
    line-height:1;
}

.dkz-live-materials-note strong{
    display:block;
    flex:0 0 auto;

    margin:4px 0 0;

    color:#4f3b2c;
    font-size:16px;
    line-height:1.4;
}

.dkz-live-materials-note span{
    display:block;
    flex:1 1 auto;

    margin:4px 0 0;

    color:#685c52;
    font-size:15px;
    line-height:1.55;
}


/* =========================================
   Планшет
========================================= */

@media (min-width:769px) and (max-width:1100px){

    .dkz-live-included,
    .dkz-live-included--materials-extra{
        grid-template-columns:repeat(2, minmax(0, 1fr));
    }

    .dkz-live-materials-note{
        align-items:flex-start;
    }
}


/* =========================================
   Мобильная версия
========================================= */

@media (max-width:768px){

    .dkz-live-included,
    .dkz-live-included--materials-extra{
        grid-template-columns:1fr;
        gap:12px;
    }

    .dkz-live-included__item{
        min-height:0;
        padding:18px;
    }

    .dkz-live-materials-note{
        display:grid;
        grid-template-columns:30px 1fr;
        gap:4px 14px;

        margin-top:14px;
        padding:18px;
    }

    .dkz-live-materials-note::before{
        grid-column:1;
        grid-row:1 / span 2;
    }

    .dkz-live-materials-note strong{
        grid-column:2;
        margin:2px 0 0;
        font-size:16px;
    }

    .dkz-live-materials-note span{
        grid-column:2;
        margin:2px 0 0;
        font-size:14px;
    }
}

/* =========================================
   Живой МК: Hero и переход к контенту
========================================= */

/* Серый фон области Hero */
.dkz-live-mk-page .product-info.dkz-live-mk-product-info{
    max-width:none !important;
    width:100% !important;
    margin:0 !important;
    padding:0 !important;
    background:#f5f5f5 !important;
}

/* После белой Hero-карточки виден серый фон родителя */
.dkz-live-mk-page .product-card.dkz-live-mk-card{
    margin:0 0 40px !important;
}

/* Второй блок страницы — белый */
.dkz-live-mk-page #participation.dkz-live-participation{
    margin:0 !important;
    background:#fff !important;
}

/* =========================================
   Живой МК: сброс стандартных обёрток контента
========================================= */

.dkz-live-mk-page .dkz-live-mk-content{
    margin:0 !important;
    padding:0 !important;
}

.dkz-live-mk-page .product-card__tabs{
    margin:0 !important;
    padding:0 !important;
}

.dkz-live-mk-page .product-card__sections{
    margin:0 !important;
    padding:0 !important;
    background:transparent !important;
}


/* ============================================================
   DekoKZ LIVE MK
   Автоматический контраст секций и карточек

   Белая секция  -> серые карточки
   Soft секция   -> белые карточки
============================================================ */


/* ------------------------------------------------------------
   1. Цветовые переменные секций
------------------------------------------------------------ */

.dkz-live-section--white{
    --dkz-section-bg:#ffffff;
    --dkz-card-bg:#faf8fb;
    --dkz-card-border:#ece8f0;

    background:var(--dkz-section-bg) !important;
}


.dkz-live-section--soft{
    --dkz-section-bg:#faf8fb;
    --dkz-card-bg:#ffffff;
    --dkz-card-border:#ececec;

    background:var(--dkz-section-bg) !important;
}


/* ------------------------------------------------------------
   2. Блок "Как вам удобнее принять участие?"

   Этот блок находится вне общего потока dkz-live-section,
   поэтому задаём ему ту же логику, что и белой секции.
------------------------------------------------------------ */

.dkz-live-participation{
    --dkz-section-bg:#ffffff;
    --dkz-card-bg:#faf8fb;
    --dkz-card-border:#ece8f0;

    background:var(--dkz-section-bg) !important;
}


/* ------------------------------------------------------------
   3. Карточки "Как принять участие"
------------------------------------------------------------ */

.dkz-live-participation .dkz-live-participation__item,
.dkz-live-participation .dkz-live-participation__card{
    background:var(--dkz-card-bg) !important;
    border-color:var(--dkz-card-border) !important;
}


/* ------------------------------------------------------------
   4. Универсальные карточки контентных блоков
------------------------------------------------------------ */

.dkz-live-section .dkz-learn__item,
.dkz-live-section .dkz-live-included__item,
.dkz-live-section .dkz-live-timeline__item{
    background:var(--dkz-card-bg) !important;
    border-color:var(--dkz-card-border) !important;
}


/* ------------------------------------------------------------
   5. Контент дополнительных страниц
   "Кому подходит", FAQ и другие DekoKZ-блоки
------------------------------------------------------------ */

.dkz-live-section .dkz-content-section__body .dkz-learn__item,
.dkz-live-section .dkz-content-section__body .dkz-live-included__item,
.dkz-live-section .dkz-content-section__body .dkz-live-timeline__item{
    background:var(--dkz-card-bg) !important;
    border-color:var(--dkz-card-border) !important;
}


/* ------------------------------------------------------------
   6. Media Slider

   Внешний слайдер прозрачный.
   Карточки фотографий получают противоположный фон секции.
------------------------------------------------------------ */

.dkz-live-section .dkz-media-slider{
    background:transparent !important;
}


.dkz-live-section .dkz-media-slider__body,
.dkz-live-section .dkz-media-slider__viewport,
.dkz-live-section .dkz-media-slider__track,
.dkz-live-section .dkz-media-slider__slide{
    background:transparent !important;
}


.dkz-live-section .dkz-media-slider__card,
.dkz-live-section .dkz-media-slider__image-link{
    background:var(--dkz-card-bg) !important;
}


/* ------------------------------------------------------------
   7. FAQ

   В белой секции вопросы будут soft,
   в soft-секции — белыми.
------------------------------------------------------------ */

.dkz-live-section .dkz-faq__item{
    background:var(--dkz-card-bg) !important;
    border-color:var(--dkz-card-border) !important;
}


/* ------------------------------------------------------------
   8. Отзывы

   Подготавливаем общую переменную для карточек отзывов.
------------------------------------------------------------ */

.dkz-live-section #product-reviews .review,
.dkz-live-section #product-reviews .review-item,
.dkz-live-section #product-reviews .product-review{
    background:var(--dkz-card-bg) !important;
    border-color:var(--dkz-card-border) !important;
}

/* =========================================
   Как принять участие
   Белый фон секции → серые карточки
========================================= */

.dkz-live-participation{
    background:#fff !important;
}

/* Карточки ближайших дат */
.dkz-live-participation .dkz-live-date-card{
    background:#faf8fb !important;
    border-color:#ece8f0 !important;
}

/* =========================================
   Живой МК: "Как вам удобнее принять участие?"
   Белая секция → светло-серые карточки
========================================= */

.dkz-live-mk-page .dkz-live-participation{
    background:#fff !important;
}

/* Карточки ближайших дат */
.dkz-live-mk-page .dkz-live-participation .dkz-live-date-card{
    background:#faf8fb !important;
    border-color:#ece8f0 !important;
}

/* Творческий четверг / Индивидуальный МК / Следующая группа */
.dkz-live-mk-page .dkz-live-participation .dkz-live-option-card{
    background:#faf8fb !important;
    border-color:#ece8f0 !important;
}

/* =========================================
   Живой МК: серый промежуток Hero → участие
========================================= */

.dkz-live-mk-page .product-card.dkz-live-mk-card{
    margin:0 0 56px !important;
}

/* =========================================
   Стык: "Как принять участие" → первая секция
========================================= */

.dkz-live-participation + .dkz-live-mk-content .dkz-live-section:first-child{
    padding-top:48px !important;
}