/*
	Theme Name: Master Study Child
	Theme URI: http://stylemix.net
	Description: MasterStudy Child Theme
	Author: StylemixThemes
	Author URI: http://stylemix.net
	Template: masterstudy
	Version: 3.0
	License: GNU General Public License v2 or later
	License URI: http://www.gnu.org/licenses/gpl-2.0.html
	Tags: classes, courses, education, education center, learning center, tutoring, teaching, study, studying, learning, lessons, instructor, teacher, mentor
	Text Domain: masterstudy-child
*/


:root {
    --accent-hover: #1e3a8a !important;
    --accent-10: #cddeff !important;
}


/* UPD SEPT */
@media (max-width: 400px) {
    .course-title-holder {
        padding-right: 5px;
    }
}

@media(max-width: 480px){
    .woocommerce-MyAccount-navigation ul {
        padding-left: 0;
    }
    .woocommerce-MyAccount-navigation ul li {
        display: block;
    }
}

@media (max-width: 767px) {
    .table-responsive>.table>tbody>tr>td,
    .table-responsive>.table>tbody>tr>th,
    .table-responsive>.table>tfoot>tr>td,
    .table-responsive>.table>tfoot>tr>th,
    .table-responsive>.table>thead>tr>td,
    .table-responsive>.table>thead>tr>th {
        overflow: hidden;
        text-overflow: ellipsis;
    }
}

@media (max-width: 655px) {
    .course_table tr td.number.number-visible.title, .course_table tr td.title {
        padding-left: 20px;
        display: block;
        width: 100%;
    }
    .course_table tr td.stm_badge {
        display: block;
        width: 100%;
        text-align: left;
    }
    .course_table tr td .meta {
        padding-left: 12px;
    }
    .course_table tr td.stm_badge .badge_unit {
        margin-left: 15px;
    }
    .woocommerce-message {
        padding-right: 26px;
    }
    .woocommerce-message .button {
        position: static;
        float: none;
        display: block;
    }
    .woocommerce-message .button:after {
        display: none;
    }
    .shop_table > tbody > tr td.actions {
        padding-left: 15px;
        padding-right: 15px;
    }
    .woocommerce .shop_table.cart .coupon .button {
        display: block;
        margin-top: 15px;
    }
    .woocommerce .shop_table.cart .coupon {
        float: none;
        margin-bottom: 30px;
    }
    .woocommerce .shop_table.cart .button.update-cart {
        float: none;
        margin-bottom: 15px;
    }
}

.tp-caption .icon_in_btn {
    text-align: center !important;
}

@media (max-width: 991px){
    .overflowed_content .wpb_column .vc_column-inner{
        margin-top: 0 !important;
    }
}

body .vc_row[data-vc-full-width] {
    overflow: visible;
}
body .vc_row[data-vc-full-width].vc_parallax {
    overflow: hidden;
}

.woocommerce-product-gallery {
    position: relative;
    margin-bottom: 3em
}
.woocommerce-product-gallery figure {
    margin: 0
}
.woocommerce-product-gallery .woocommerce-product-gallery__image:nth-child(n+2) {
    width: 25%;
    display: inline-block
}
.woocommerce-product-gallery .flex-control-thumbs li {
    list-style: none;
    float: left;
    cursor: pointer
}
.woocommerce-product-gallery .flex-control-thumbs img {
    opacity: .5
}
.woocommerce-product-gallery .flex-control-thumbs img.flex-active, .woocommerce-product-gallery .flex-control-thumbs img:hover {
    opacity: 1
}
.woocommerce-product-gallery img {
    display: block
}
.woocommerce-product-gallery--columns-3 .flex-control-thumbs li {
    width: 33.3333%
}
.woocommerce-product-gallery--columns-4 .flex-control-thumbs li {
    width: 25%
}
.woocommerce-product-gallery--columns-5 .flex-control-thumbs li {
    width: 20%
}
.woocommerce-product-gallery__trigger {
    position: absolute;
    top: 1em;
    right: 1em;
    z-index: 99
}
ol.flex-control-nav.flex-control-thumbs {
    padding-left: 0px;
}
.woocommerce-product-gallery--columns-4 .flex-control-thumbs li {
    width: 20%;
}
.woocommerce-product-gallery__trigger {
    right: inherit;
    left: .5em;
}
.woocommerce div.product div.images .woocommerce-product-gallery__trigger {
    position: absolute;
    top: .5em;
    right: .5em;
    font-size: 2em;
    z-index: 9;
    width: 36px;
    height: 36px;
    background: #fff;
    text-indent: -9999px;
    border-radius: 100%;
    box-sizing: content-box;
}
.woocommerce div.product div.images .woocommerce-product-gallery__trigger:before {
    content: "";
    display: block;
    width: 10px;
    height: 10px;
    border: 2px solid #000;
    border-radius: 100%;
    position: absolute;
    top: 9px;
    left: 9px;
    box-sizing: content-box;
}
.woocommerce div.product div.images .woocommerce-product-gallery__trigger:after {
    content: "";
    display: block;
    width: 2px;
    height: 8px;
    background: #000;
    border-radius: 6px;
    position: absolute;
    top: 19px;
    left: 22px;
    -webkit-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    transform: rotate(-45deg);
    box-sizing: content-box;
}


/* Woo My Account Tabs*/
.woocommerce-account .woocommerce-MyAccount-navigation {
    display: table;
    float: none;
    width: 100%; }
.woocommerce-account .woocommerce-MyAccount-content {
    float: none;
    width: 100%;
}
.woocommerce-MyAccount-navigation ul {
    display: table !important;
    table-layout: fixed;
    width: 100%;
    list-style: none;
    padding: 0;
    margin: 0;
    margin-bottom: 30px; }
.woocommerce-MyAccount-navigation  ul > li {
    display: table-cell; }
.woocommerce-MyAccount-navigation  ul > li > a {
    display: block;
    padding: 12px 20px;
    background-color: #457992;
    border: 0;
    border-left: 1px solid #fff;
    border-radius: 0;
    color: #fff;
    text-transform: uppercase;
    text-align: center;
    font-size: 14px;}
.woocommerce-MyAccount-navigation  ul > li.is-active a,
.woocommerce-MyAccount-navigation  ul > li a:hover,
.woocommerce-MyAccount-navigation  ul > li a:focus {
    background-color: #f0f2f5;
    color: #457992; }
.woocommerce div.product form.cart .variations td.label {
    display: none;
}
.woocommerce-product-gallery {
    position: relative;
    margin-bottom: 3em
}
.woocommerce-product-gallery figure {
    margin: 0
}
a.woocommerce-LoopProduct-link.woocommerce-loop-product__link {
    z-index: 9 !important;
}
.stm_archive_product_inner_unit .stm_archive_product_inner_unit_centered .stm_featured_product_price .price h5 {
    font-weight: normal;
}
.widget_stm_recent_posts span.h6 {
    display: inline !important;
}
.widget_stm_recent_posts .cats_w {
    margin-left: 83px;
}

.header_default.header_5 {
    height: 68px;
    padding: 10px 0px;
}

.logo-unit {
    margin-top: -2px;
}

.search-toggler {
    border-radius: 8px;
}

.transparent_header_off .header_default::after {
    content: "";
    display: none;
    position: absolute;
    width: 21%;
    height: 1px;
    z-index: 10;
    bottom: -3px;
    left: 0;
    right: 0;
    background: rgb(3, 153, 157);
}

.msme-8px {
    margin-left: 8px;
    margin-right: 8px;
}

.copyright_text {
    color: gray !important;
    font-size: 12px;
    line-height: 1.2;
}

.uppercase {
    text-transform: uppercase;
}

.stm_lms_courses__single__inner {
    height: 100%;
    background-color: #fff;
    margin: 0 10px;
    border-radius: 14px;
    border: 2px solid #e5e7eb !important;
    box-shadow: 0 10px 15px 0 #e5e7eb, 0 1px 2px -1px #e5e7eb;
    transition: 0.3s;
}

.stm_lms_courses__single__inner:hover {
    box-shadow: 0 0 #e5e7eb, 0 0 #e5e7eb;
}

.stm_lms_courses__single--info {
    border-radius: 14px;
}

.stm_lms_recent_courses__term {
    border: 2px solid #1e3a8a;
}

.stm_lms_courses__single--image::after, .stm_lms_courses__single--image::before {
    width: 0px !important;
}

.stm_lms_courses__single--info_preview a {
    border-radius: 8px;
}

.stmlms-lms-clocks {
    color: var( --e-global-color-primary )
}

.stm_lms_courses__single--term {
    margin: 0 0 10px;
    color: #1f2937 !important;
    font-size: 13px;
    border: 1px solid #e5e7eb;
    border-radius: 4px;
    padding: 2px 12px;
    max-width: fit-content;
}

.stats_counter .stats_counter_title {
    text-transform: lowercase !important;
    font-weight: 400;
}

.box-prem {
    min-width: 240px !important;
    width: 100% !important;
    max-width: 85% !important;
}

.e-n-accordion-item-title {
    box-shadow: 0 0 30px #eeebe4;
    transition: all ease-in 0.2s;
}

.e-n-accordion-item-title:hover {
    box-shadow: 0 0 0 #eeebe4;
}


/* Типографика */
.binnep-title {
    color: #1f2124;
    font-weight: 700;
    margin-bottom: 10px;
}

.binnep-subtitle {
    color: #03999D;
    font-weight: 600;
    margin-bottom: 25px;
    display: block;
}

.binnep-h3 {
    color: #1f2124;
    margin-top: 50px;
    margin-bottom: 30px;
    position: relative;
    padding-left: 15px;
    font-weight: bold
}

.binnep-h3::before {
    content: '';
    position: absolute;
    left: 0;
    top: 5px;
    bottom: 5px;
    width: 4px;
    background-color: #F68651;
    border-radius: 2px;
}

.binnep-text {
    margin-bottom: 15px;
}

/* Секция с опытом - Сетка */
.binnep-results-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 20px;
    margin-top: 20px;
}

.binnep-card {
    background-color: #ffffff;
    border: 2px solid #EEEBE4;
    border-radius: 8px;
    padding: 25px;
    box-shadow: 0 4px 15px #eeebe4;
    transition: transform 0.3s ease;
}

.binnep-card strong {
    margin-bottom: 10px;
    display: block;
}

.binnep-card:hover {
    transform: translateY(-5px);
}

/* Преимущества - Сетка иконок */
.binnep-features-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 25px;
}

.feature-item {
    background: #ffffff;
    padding: 20px;
    border-radius: 10px;
    box-shadow: 0 4px 10px #eeebe4;
}

.feature-icon {
    margin-bottom: 15px;
    display: block;
}

.feature-title {
    font-weight: 700;
    color: #1f2124;
    margin-bottom: 10px;
    display: block;
}

/* Для кого мы работаем */
.target-audience-list {
    display: flex;
    flex-direction: column;
    gap: 15px;
}

.audience-item {
    background-color: #fff;
    padding: 20px;
    border-left: 5px solid #03999D;
    border-radius: 0 8px 8px 0;
    box-shadow: 0 2px 8px #eeebe4;
}

/* Направления */
.directions-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(45%, 1fr));
    gap: 20px;
}

.direction-item {
    display: flex;
    align-items: flex-start;
    gap: 15px;
}

.direction-marker {
    color: #F68651;
    font-weight: bold;
}

/* Ценности */
.values-container {
    display: flex;
    flex-wrap: wrap;
    gap: 15px;
}

.value-tag {
    background-color: #ffffff;
    border: 1px solid #03999D;
    color: #1f2124;
    padding: 10px 20px;
    border-radius: 50px;
    font-weight: 600;
}

.value-description {
    display: block;
    font-weight: 400;
    color: #555;
    margin-top: 5px;
}

/* CTA блок */
.binnep-cta {
    margin-top: 60px;
    text-align: center;
    background-color: #03999D;
    color: #ffffff;
    padding: 40px;
    border-radius: 16px;
}

.binnep-cta h3 {
    font-weight: 600;
    color: #ffffff;
    margin-top: 0;
}

.binnep-cta p {
    max-width: 800px;
    margin: 0 auto 20px auto;
}

.feature-icon-i {
    font-size: 2rem; /* Размер иконки (примерно 56px) */
    color: #03999D;    /* Твой фирменный цвет */
    margin-bottom: 20px;
    display: block;
    line-height: 1;    /* Убирает лишние отступы сверху/снизу строчного элемента */
    transition: transform 0.3s ease;
}

/* Эффект при наведении на карточку - иконка немного подпрыгивает */
.feature-item:hover .feature-icon-i {
    transform: translateY(-3px);
}

/* Адаптивность для мобильных */
@media (max-width: 768px) {
    .directions-grid { grid-template-columns: 1fr; }
    .binnep-wrapper { padding: 20px 15px; }
    .binnep-wrapper {
        padding: 20px 0; /* Убираем боковые отступы у враппера, чтобы скролл был от края до края */
    }

    .binnep-h3 {
        margin-left: 20px; /* Возвращаем отступ заголовку */
    }

    /* Превращаем сетку в горизонтальный скролл */
    .binnep-features-grid {
        display: flex;
        overflow-x: auto;
        gap: 15px;
        padding: 10px 20px 30px 20px; /* Отступы: снизу больше для тени */
        scroll-snap-type: x mandatory; /* Доводка карточки при скролле */
        -webkit-overflow-scrolling: touch; /* Плавность на iOS */

        /* Скрываем полосу прокрутки */
        scrollbar-width: none; /* Firefox */
        -ms-overflow-style: none;  /* IE 10+ */
    }

    .binnep-features-grid::-webkit-scrollbar {
        display: none; /* Chrome/Safari */
    }

    .feature-item {
        min-width: 280px; /* Фиксированная ширина карточки */
        width: 280px;
        scroll-snap-align: center; /* Центрирование при остановке скролла */
        /* Сброс стиля для последнего элемента (который был на всю ширину) */
        grid-column: auto !important;
    }

    .feature-icon-i {
        font-size: 1.4rem; /* Размер иконки (примерно 56px) */
        color: #03999D;    /* Твой фирменный цвет */
        margin-bottom: 20px;
        display: block;
        line-height: 1;    /* Убирает лишние отступы сверху/снизу строчного элемента */
        transition: transform 0.3s ease;
    }
}

/* --- НОВЫЕ СТИЛИ ДЛЯ СТРАНИЦЫ ДОКУМЕНТОВ --- */

.binnep-doc-wrapper {
    max-width: 100%;
    margin: 0 auto;
}

/* Списки с галочками */
.binnep-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.binnep-list li {
    position: relative;
    padding-left: 25px;
    margin-bottom: 10px;
    color: #555;
}

.binnep-list li::before {
    content: '✔';
    position: absolute;
    left: 0;
    top: 0;
    color: #03999D;
    font-weight: bold;
}

/* Стили для таблицы реквизитов */
.requisites-table {
    width: 100%;
    border-collapse: collapse;
    margin-top: 15px;
    font-size: 0.95em;
}

.requisites-table td {
    padding: 8px 0;
    border-bottom: 1px solid #eeebe4;
    color: #555;
}

.requisites-table td:first-child {
    font-weight: 600;
    color: #1f2124;
    width: 40%;
    padding-right: 15px;
}

/* Кнопки скачивания */
.downloads-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
    gap: 15px;
}

.download-link {
    display: flex;
    align-items: center;
    background: #f9f9f9;
    padding: 15px;
    border-radius: 8px;
    text-decoration: none;
    color: #1f2124;
    border: 1px solid #EEEBE4;
    transition: all 0.3s ease;
}

.download-link:hover {
    border-color: #03999D;
    background: #fff;
    box-shadow: 0 4px 10px rgba(3, 153, 157, 0.1);
}

.download-link i {
    font-size: 24px;
    color: #F68651; /* Оранжевый PDF */
    margin-right: 15px;
}

.download-link span {
    font-weight: 600;
    line-height: 1.2;
}

/* Лицензия блок */
.license-block {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    align-items: center;
}
.license-text {
    flex: 1;
    min-width: 300px;
}
.license-visual {
    flex: 0 0 150px;
    text-align: center;
    opacity: 0.8;
}
.license-visual i {
    font-size: 80px;
    color: #EEEBE4;
}

/* Ссылка внутри текста */
.text-link {
    color: #03999D;
    text-decoration: underline;
    font-weight: 600;
}
.text-link:hover {
    text-decoration: none;
    color: #F68651;
}

/* Контакты */
.contacts-mini-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 15px;
    margin-top: 15px;
}
.contact-box {
    background: #fcfcfc;
    padding: 15px;
    border-radius: 6px;
    border: 1px solid #eee;
}
.contact-box h4 {
    margin: 0 0 10px 0;
    font-size: 1rem;
    color: #1f2124;
}

table tr {
    border: 0px solid #ccc;
}

/* --- НОВЫЕ СТИЛИ ДЛЯ КОНТАКТОВ (Дополнение) --- */
.binnep-contact-wrapper {
    max-width: 1200px;
    margin: 0 auto;
    font-family: inherit; /* Наследует шрифт темы */
}

/* Списки контактов */
.contact-list {
    list-style: none;
    padding: 0;
    margin: 0;
}
.contact-list li {
    margin-bottom: 15px;
    position: relative;
    padding-left: 0;
}
.contact-label {
    display: block;
    font-size: 0.9em;
    color: #888;
    margin-bottom: 4px;
}
.contact-value {
    font-weight: 600;
    color: #1f2124;
    text-decoration: none;
    font-size: 1.1em;
    display: flex;
    align-items: center;
    gap: 10px;
}
.contact-value:hover {
    color: #03999D;
}
.contact-icon-small {
    color: #F68651;
    font-size: 1.1em;
}

/* Сетка для основного контента */
.contact-main-layout {
    display: grid;
    grid-template-columns: 1.2fr 0.8fr;
    gap: 30px;
    margin-top: 40px;
}

/* Форма */
.binnep-form-box {
    background: #f9f9f9;
    padding: 30px;
    border-radius: 12px;
    border: 1px solid #EEEBE4;
}
.form-group {
    margin-bottom: 20px;
}
.form-label {
    display: block;
    margin-bottom: 8px;
    font-weight: 600;
    font-size: 0.95em;
    color: #1f2124;
}
.binnep-input, .binnep-textarea {
    width: 100%;
    padding: 12px 15px;
    border: 1px solid #ddd;
    border-radius: 6px;
    font-size: 1rem;
    transition: border-color 0.3s;
    box-sizing: border-box;
}
.binnep-input:focus, .binnep-textarea:focus {
    border-color: #03999D;
    outline: none;
}
.binnep-textarea {
    resize: vertical;
    min-height: 120px;
}
.binnep-btn {
    background-color: #03999D;
    color: white;
    border: none;
    padding: 15px 30px;
    border-radius: 6px;
    font-weight: 700;
    cursor: pointer;
    width: 100%;
    transition: background-color 0.3s;
    font-size: 1rem;
}
.binnep-btn:hover {
    background-color: #027a7d;
}
.form-consent {
    font-size: 0.8em;
    color: #777;
    margin-top: 10px;
    line-height: 1.4;
}

/* График работы */
.schedule-list {
    list-style: none;
    padding: 0;
}
.schedule-list li {
    display: flex;
    justify-content: space-between;
    margin-bottom: 10px;
    border-bottom: 1px dashed #ddd;
    padding-bottom: 5px;
}
.schedule-list li span:last-child {
    font-weight: 700;
    color: #1f2124;
}

/* Юридический блок */
.legal-details {
    font-size: 0.9em;
    color: #555;
    background: #f4f4f4;
    padding: 20px;
    border-radius: 8px;
    margin-top: 15px;
}
.legal-row {
    display: flex;
    justify-content: space-between;
    margin-bottom: 8px;
}

/* Карта */
.map-container {
    width: 100%;
    height: 400px;
    background-color: #eee;
    border-radius: 12px;
    overflow: hidden;
    margin-top: 40px;
    position: relative;
}

/* Адаптивность */
@media (max-width: 768px) {
    .contact-main-layout {
        grid-template-columns: 1fr;
    }
    .binnep-features-grid {
        /* Используем ваш стиль для горизонтального скролла на мобильных */
        display: flex;
        overflow-x: auto;
        gap: 15px;
        padding: 10px 5px 20px 5px;
        scroll-snap-type: x mandatory;
    }
    .binnep-card {
        min-width: 280px;
        scroll-snap-align: center;
    }
}

.stm_lms_courses__archive{margin-top:70px!important}