﻿@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Forum&display=swap');

/* Глобальный шрифт и цвет основного текста для всего сайта */
* {
    font-family: 'Inter', sans-serif;
    color: #1f2022;
}
.status-order {
    background: var(--bs-success-bg-subtle);
    border-radius: 0.375rem;
    padding-left: 0.2em;
}

body {
    color: #1f2022;
}

/* Элегантный шрифт Forum для абсолютно всех заголовков на сайте */
h1, h2, h3, h4, h5, h6, .landing-header {
    font-family: 'Forum', serif !important;
    font-weight: 400;
    letter-spacing: 1px;
}

a {
    cursor: pointer;
}

#Currency_1 {
    display: none;
}

.animate-underline .animate-target, .animate-underline.animate-target {
    position: relative;
    text-decoration: none;
}

.animate-underline:hover .animate-target:after, .animate-underline:hover.animate-target:after {
    transform: scaleX(1);
    transform-origin: bottom left;
}

.animate-underline .animate-target:after, .animate-underline.animate-target:after {
    background-color: currentcolor;
    bottom: 0;
    content: "";
    height: 1px;
    left: 0;
    position: absolute;
    transform: scaleX(0);
    transform-origin: bottom right;
    transition: transform .3s ease-out;
    width: 100%;
}

.catalogue-good-description {
    font-weight: 600;
}

/*BS5.2*/
.social-buttons {
    margin-top: 3em;
}

.fw-bold {
    font-weight: 700 !important;
}

#ReportForm .badge {
    background: grey;
    --bs-badge-padding-x: 0.75em;
    --bs-badge-padding-y: 0.55em;
    --bs-badge-font-size: 0.85em;
    background-color: var(--bs-gray-500);
}

.green-text {
    color: rgb(194, 240, 102);
}

#ModuleNewsRubricsOffice {
    display: none;
}

.admin-up {
    padding: 20px;
}

.btn-primary-shop {
    color: #212529;
    background-color: rgb(194 240 102) !important;
}

.font-weight-bold {
    font-weight: 700 !important;
}

.btn.btn-sm {
    padding: 0.5rem 1.6rem !important;
    font-size: .64rem !important;
}

:root {
    --bs-primary: #78599e;
    --bs-primary-rgb: 137,86,163;
}

.btn-deep-orange {
    color: #fff;
    background-color: #e5a4c2 !important;
}

.ModalButtonColor {
    width: 162px;
    height: 50px;
    background: #E5A4C2;
    box-shadow: inset 4px 4px 0px #CBDD57;
    border-radius: 50px 100px;
    padding: 0.6em 3em;
    color: white;
}

.btn {
    text-transform: uppercase;
    line-height: 1.5;
    padding: 0.84rem 2.14rem;
}

.btn:hover, .btn:focus, .btn:active {
    outline: 0;
    background: #E5A4C2;
    -webkit-box-shadow: 0 5px 11px 0 rgba(0,0,0,0.18), 0 4px 15px 0 rgba(0,0,0,0.15);
    box-shadow: 0 5px 11px 0 rgba(0,0,0,0.18), 0 4px 15px 0 rgba(0,0,0,0.15);
}

p {
    line-height: 21.78px;
}

.navbar {
    -webkit-box-shadow: 0 0 0 0 rgb(0 0 0 / 16%), 0 0 0 0 rgb(0 0 0 / 12%); 
    box-shadow: 0 0 0 0 rgb(0 0 0 / 16%), 0 0 0 0 rgb(0 0 0 / 12%);
    background-color: #fff0;
}

.testimonial--card { 
    background: rgba(229, 164, 194, 0.1);
    box-shadow: 10px 10px 20px #CBDD57;
    border-radius: 124px 50px 178.5px;
    margin: 1.5em;
}

.navbar .navbar-nav .nav-item .dropdown-menu a:hover, .navbar .navbar-nav .nav-item .dropdown-menu a:focus, .navbar .navbar-nav .nav-item .dropdown-menu a:active {
    background-color: #8956a3;
    color: white;
}

.news--card {
    background: #FFFFFF;
    border: 3px solid #DBE888;
    box-sizing: border-box;
    box-shadow: 10px 10px 10px #E5A4C2;
    border-radius: 100px 30px;
    background-image: url(/ok-content/uploads/images/Ellipse28.png);
    min-height: 245px;
}

.contact--card {
    border: 3px solid #976AAE;
    box-sizing: border-box;
    box-shadow: 10px 10px 10px #E5A4C2;
    border-radius: 100px 30px;
    background-color: transparent !important;
}

.custom-card {
    background: #FFFFFF;
    box-shadow: 0px 0px 0px 10px rgba(98, 53, 92, 0.25);
    border-radius: 50px 100px;
    margin: 0.5em;
    padding: 1em;
    background-image: url(/ok-content/uploads/images/Ellipse28.png);
}

.header-text {
    color: #8956A3;
}

.btn-custom {
    width: 240px;
    height: 63px;
    background: #E5A4C2;
    box-shadow: inset 10px 10px 0px #CBDD57;
    border-radius: 50px 100px;
    padding: 1.6em 3em;
    color: #FFFFFF;
    font-size: 15px;
}

.btn-buy {
    margin: 0.375rem;
    width: 100px;
    height: 30px;
    background: #E5A4C2;
    box-shadow: inset 4px 4px 0px #CBDD57;
    border-radius: 50px 100px;
    padding: 0.6em 3em;
    color: white;
    font-size: smaller;
}

.btn-news {
    width: 162px;
    height: 30px;
    background: #E5A4C2;
    box-shadow: inset 4px 4px 0px #CBDD57;
    border-radius: 50px 100px;
    padding: 0.6em 3em;
    color: white;
}

.btn-custom:hover {
    color: #CBDD57;
}

.figure-custom {
    border: 5px solid #8855A2;
    box-sizing: border-box;
    box-shadow: 10px 10px 0px #F0D2DF;
    border-radius: 30px;
    margin: 2em;
    padding: 1em;
}   

.bg_spot:after {
    content: '';
    position: absolute;
    z-index: -1;
    left: 529.4px;
    top: 0;
    width: 746px;
    height: 609px;
    background-image: url(/ok-content/uploads/images/spot1.png);
    background-repeat: no-repeat;
}

@media (max-width: 992px) {
    .bg_spot:after {  
        left: auto;
        top: auto;
        width: auto;
        height: auto;
        background-image: none;
        background-repeat: no-repeat;
    }
}

.bg_spot2:before {
    content: '';
    position: absolute;
    z-index: -1;
    width: 555px;
    height: 685px;
    right: 0;
    background-image: url(/ok-content/uploads/images/spot2.png);
    background-repeat: no-repeat;
}

@media (max-width: 992px) {
    .bg_footer_bottom:before {
         height: 100px !important;
    }
}

.pink-text {
    color: #e5a4c2 !important;
}

.green-menu {
    background-color: #CBDD57 !important;
}

.violet-text {
    color: #8855A2 !important;
}

i:hover {
    color: #aec400 !important;
}

.bg_footer_bottom {
    width: 100%;
    background: url(/ok-content/uploads/images/vector2.svg) no-repeat top;
    background-size: cover;
    padding: 7.5% 0;
    display: flex;
    justify-content: center;
    position: relative;
}

/* Настройки шрифтов для элементов подвала (ссылки и спаны переведены на Inter) */
footer.page-footer a {
    font-family: 'Inter', sans-serif; 
    letter-spacing: 0.5px;
    color: rgb(194 240 102);
}

footer.page-footer span {
    font-family: 'Inter', sans-serif; 
    letter-spacing: 0.5px;
    color: rgb(194 240 102);
}

footer.page-footer h6 {
    font-family: 'Forum', serif; 
    letter-spacing: 1px;
    color: rgb(194 240 102);
}

.navbar.double-nav a {
    font-family: 'Inter', sans-serif; 
    letter-spacing: 0.5px;
    color: rgb(194 240 102);
}

::selection {
    background: #815aa1;
    color: #fff;
    text-shadow: none;
}

input[type="checkbox"]:checked+label:before {
    border-right: 2px solid #976aae;
    border-bottom: 2px solid #976aae;
}   

@media (max-height: 992px) {
    .side-nav .logo-wrapper a, .side-nav .logo-wrapper {
        height: 100%;
    }
}

.customul ul li::before {
    content: url(/Images/userfiles/images/v.png);
    color: #3b356b;
    padding-right: 5px;
    position: absolute;
    top: 0px;
    left: 0px;  
}

.customul ul li {
    padding-left: 40px; 
    position: relative;
    list-style-type: none !important;
    color: #41454e !important;
    line-height: 2em;
}

a {
    color: #8956a3;
}

.nav-tabs {
    background-color: #9a80ad;
}

.side-nav .logo-wrapper {
     border-bottom: none; 
}

.carousel .carousel-control-prev-icon {
    background-image: url(/ok-content/uploads/images/arrow-left.png);
}

.carousel .carousel-control-next-icon {
    background-image: url(/ok-content/uploads/images/arrow-right.png);
}

.carousel .carousel-control-prev-icon, .carousel .carousel-control-next-icon {
    width: 32px;
    height: 51px;
}

#NewsRubricsWrapper ul {
    display: block;
    list-style-type: none !important;
    padding-inline-start: 0px;
}

.form-control:focus {
    box-shadow: 0 0 0 0 rgba(0,123,255,.25);
}

.md-form input:not([type]):focus:not([readonly]), .md-form input[type="text"]:not(.browser-default):focus:not([readonly]), .md-form input[type="password"]:not(.browser-default):focus:not([readonly]), .md-form input[type="email"]:not(.browser-default):focus:not([readonly]), .md-form input[type="url"]:not(.browser-default):focus:not([readonly]), .md-form input[type="time"]:not(.browser-default):focus:not([readonly]), .md-form input[type="date"]:not(.browser-default):focus:not([readonly]), .md-form input[type="datetime"]:not(.browser-default):focus:not([readonly]), .md-form input[type="datetime-local"]:not(.browser-default):focus:not([readonly]), .md-form input[type="tel"]:not(.browser-default):focus:not([readonly]), .md-form input[type="number"]:not(.browser-default):focus:not([readonly]), .md-form input[type="search"]:not(.browser-default):focus:not([readonly]), .md-form input[type="search-md"]:focus:not([readonly]), .md-form textarea.md-textarea:focus:not([readonly]) {
    border-bottom: 1px solid #00875b;
    box-shadow: 0 0px 0 0 #00875b;
}

.md-form input:not([type]):focus:not([readonly])+label, .md-form input[type="text"]:not(.browser-default):focus:not([readonly])+label, .md-form input[type="password"]:not(.browser-default):focus:not([readonly])+label, .md-form input[type="email"]:not(.browser-default):focus:not([readonly])+label, .md-form input[type="url"]:not(.browser-default):focus:not([readonly])+label, .md-form input[type="time"]:not(.browser-default):focus:not([readonly])+label, .md-form input[type="date"]:not(.browser-default):focus:not([readonly])+label, .md-form input[type="datetime"]:not(.browser-default):focus:not([readonly])+label, .md-form input[type="datetime-local"]:not(.browser-default):focus:not([readonly])+label, .md-form input[type="tel"]:not(.browser-default):focus:not([readonly])+label, .md-form input[type="number"]:not(.browser-default):focus:not([readonly])+label, .md-form input[type="search"]:not(.browser-default):focus:not([readonly])+label, .md-form input[type="search-md"]:focus:not([readonly])+label, .md-form textarea.md-textarea:focus:not([readonly])+label {
    color: #00875b;
}

.mdb-skin input[type="email"]:focus:not([readonly]), .mdb-skin input[type="text"]:focus:not([readonly]), .mdb-skin input[type="password"]:focus:not([readonly]), .mdb-skin input[type="number"]:focus:not([readonly]), .mdb-skin textarea.md-textarea:focus:not([readonly]) {
    border-color: #75fe02 !important;
    -webkit-box-shadow: 0 1px 0 0 #33b5e5 !important;
    box-shadow: 0 0px 0 0 #75fe02 !important;
}

.input-group.md-form.form-sm.form-1 input {
    border: 1px solid #bdbdbd !important;
    border-top-right-radius: 0.25rem;
    border-bottom-right-radius: 0.25rem;
}

.input-group.md-form.form-sm.form-2 input {
    border: 1px solid #bdbdbd !important;
    border-top-left-radius: 0.25rem;
    border-bottom-left-radius: 0.25rem;
}

.btn-fb {
    display: none !important;
    visibility: hidden;
}

/*ШАПКА*/
.topbar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.625rem 0;
    font-size: .875rem;
}

.topbar>.container, .topbar>.container-fluid, .topbar>.container-sm, .topbar>.container-md, .topbar>.container-lg, .topbar>.container-xl {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.topbar-text, .topbar .topbar-link {
    display: inline-block;
    margin-bottom: 0;
    text-decoration: none !important;
}

a {
    transition: color .25s ease-in-out;
    text-decoration: none;
}
    
.input-group>:not(:first-child):not(.dropdown-menu):not(.valid-tooltip):not(.valid-feedback):not(.invalid-tooltip):not(.invalid-feedback) {
    margin-left: -1px;
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
}

.input-group .position-absolute {
    z-index: 6;
}   

.navbar-light .navbar-tool-icon-box.bg-secondary {
    background-color: #f3f5f9 !important;
}

.navbar-light .navbar-tool-icon-box {
    color: #4b566b;
}

[class^=bi-], [class*=" bi-"] {
    display: inline-block;
}

.navbar-tool-icon {
    font-size: 1.25rem;
}

.navbar-tool-icon-box {
    position: relative;
    width: 2.875rem;
    height: 2.875rem;
    transition: color .25s ease-in-out;
    border-radius: 50%;
    line-height: 2.625rem;
    text-align: center;
}

@media (max-width: 767.98px) { 
    .navbar-tool-icon-box {
        width: 1.875rem;
    }
    #navbarDropdownMenuLink-5 img {
        display: none;
    }
}

#navbarDropdownMenuLink-5 img {
    margin-top: -0.25em !important;
}

.navbar-tool .navbar-tool-label {
    position: absolute;
    top: -0.3125rem;
    right: -0.3125rem;
    width: 1.25rem;
    height: 1.25rem;
    border-radius: 50%;
    background-color: var(--bs-primary);
    color: #fff;
    font-size: .75rem;
    font-weight: 500;
    text-align: center;
    line-height: 1.25rem;
}

.navbar-tool {
    position: relative;
    display: flex;
    align-items: center;
}

.navbar-tool-icon {
    font-size: 1.25rem;
    line-height: 2.875rem;
}

.navbar-tool-text {
    display: none;
    flex-grow: 0;
    flex-shrink: 0;
    padding-left: 0.875rem;
    transition: color .25s ease-in-out;
    font-size: .875rem;
    text-decoration: none !important;
    white-space: nowrap;
}

@media (min-width: 992px) {
    .navbar-expand-lg .navbar-tool-text {
        display: block;
    }
}

.navbar-light .navbar-tool-text>small, .navbar-light .navbar-tool-text>.small {
    color: #676d7b;
}

.navbar-tool-text>small, .navbar-tool-text>.small {
    display: block;
    margin-bottom: -0.125rem;
}

@media (min-width: 992px) {
    .navbar-tool .navbar-tool-tooltip {
        display: block;
        position: absolute;
        top: -0.5rem;
        left: 50%;
        transform: translateX(-50%);
        transition: opacity .2s ease-in-out, top .2s ease-in-out;
        padding: 0.0625rem 0.375rem;
        border-radius: 0.25rem;
        background-color: #2b3445;
        color: #fff;
        font-size: .6875rem;
        white-space: nowrap;
        opacity: 0;
    }
}

@font-face {
    font-family: 'Proxima Nova Rg';
    src: url('/ok-content/fonts/ProximaNova-Regular.eot');
    src: local('/ok-content/fonts/Proxima Nova Regular'), local('/ok-content/fonts/ProximaNova-Regular'),
        url('/ok-content/fonts/ProximaNova-Regular.eot?#iefix') format('embedded-opentype'),
        url('/ok-content/fonts/ProximaNova-Regular.woff') format('woff'),
        url('/ok-content/fonts/ProximaNova-Regular.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
}

.dropdown-menu {
    --bs-dropdown-link-active-bg: #7f58a0;
}

/* Жирный шрифт и фиолетовый цвет для главного названия товара */
.product-title, 
.catalogue-good-name,
.catalogue-item h1,
.product-details h1,
h1 {
    font-weight: 700 !important;
    color: #8855A2 !important;
}

/* Золотой цвет для всех видов звездочек рейтинга и отзывов */
.star-rating,
.star-rating *,
.star-rating-icon,
.star-rating-icon.active,
.rating-stars,
.rating-stars *,
.product-rating,
.product-rating *,
.rating,
.rating *,
.review-rating *,
i[class*="star"],
span[class*="star"],
svg[class*="star"],
.bi-star-fill,
.bi-star,
.ci-star-filled,
.ci-star {
    color: #ffc107 !important;
    fill: #ffc107 !important;
}

/* ==========================================================================
   ОБЪЕДИНЕННАЯ НАСТРОЙКА ТОВАРОВ (КАТАЛОГ И КАРТОЧКА ТОВАРА - 900x1200 px / 3:4)
   ========================================================================== */

/* 1. КАРТОЧКА ТОВАРА: Слайдер и главное изображение */
.mySwiper {
    max-width: 480px !important; /* Уменьшаем ширину блока картинки в карточке */
    margin: 0 auto !important;   /* Центрируем блок */
}

.mySwiper .ratio-1x1 {
    --bs-aspect-ratio: 133.33% !important; /* Перестраиваем рамку слайдера из 1:1 в 3:4 */
}

swiper-slide img,
.main-good-image {
    width: 100% !important;
    height: 100% !important;
    max-height: 100% !important;
    object-fit: contain !important; /* Фото входит целиком без обрезки */
    object-position: center !important;
    left: 0 !important;
}

/* 2. КАТАЛОГ ТОВАРОВ И БЛОК "С ЭТИМ ПОКУПАЮТ" (Гибкая пропорция 3:4) */
.zoom {
    overflow: hidden;
    cursor: default;
    width: 100% !important;
    height: auto !important;
    aspect-ratio: 3 / 4 !important; /* Пропорция 3:4 подстраивается под любую ширину экрана */
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.zoom img, 
.goods-image,
.imgsize-catalog {
    width: 100% !important;
    height: 100% !important;
    max-width: 100% !important;
    max-height: 100% !important;
    object-fit: contain !important; /* Исключает обрезку верха и низа */
    object-position: center !important;
    margin: 0 auto !important;
    display: block !important;
}

.zoom:hover img {
    -webkit-transform: scale(1.05);
    transform: scale(1.05);
}

/* 3. МИНИАТЮРЫ ГАЛЕРЕИ (Под главным фото) */
.swiper-thumb-img {
    object-fit: contain !important;
    width: 100% !important;
    height: 100% !important;
}

/* ==========================================================================
   Стиль вкладок и блоков для карточки товара (Micelline Premium)
   Изолированные классы с префиксом .mc-
   ========================================================================== */

.mc-tabs-wrapper {
    font-family: 'Inter', sans-serif;
    color: #1f2022;
    line-height: 1.7;
}

/* Сброс глобального фиолетового фона вкладок из основного style.css */
.mc-tabs-wrapper .nav-tabs,
ul.mc-tabs-nav {
    background-color: transparent !important;
    background: transparent !important;
    border-bottom: 1px solid #eaedf1 !important;
    display: flex !important;
    flex-wrap: nowrap !important; /* На ПК вкладки в одну строку */
    gap: 28px !important;
    margin-bottom: 24px !important;
    padding-left: 0 !important;
    list-style: none !important;
}

.mc-tabs-nav .nav-item {
    margin-bottom: -1px !important;
    background: transparent !important;
}

.mc-tabs-nav .nav-link {
    border: none !important;
    background: transparent !important;
    background-color: transparent !important;
    color: #8c8e9a !important;
    font-size: 1.05rem !important;
    font-weight: 500 !important;
    padding: 8px 0 14px 0 !important;
    border-bottom: 2px solid transparent !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    transition: all 0.2s ease-in-out !important;
    cursor: pointer !important;
    white-space: nowrap !important;
}

/* Эффекты наведения только для ПК (защита от залипания цвета на смартфонах) */
@media (hover: hover) {
    .mc-tabs-nav .nav-link:hover {
        color: #8855A2 !important;
        background: transparent !important;
    }
    
    .mc-btn-primary:hover,
    .mc-btn-primary:focus {
        background-color: #a376be !important;
        color: #ffffff !important;
        transform: translateY(-2px);
        box-shadow: 0 6px 16px rgba(136, 85, 162, 0.3);
    }
}

.mc-tabs-nav .nav-link.active {
    color: #8855A2 !important;
    font-weight: 700 !important;
    border-bottom: 2px solid #8855A2 !important;
    background: transparent !important;
    background-color: transparent !important;
}

/* Информационный блок с фиолетовой акцентной полосой слева */
.mc-info-box {
    background-color: #f8f9fa !important;
    border: 1px solid #eaedf1 !important;
    border-left: 4px solid #8855A2 !important;
    padding: 16px 20px !important;
    border-radius: 12px !important;
    margin-bottom: 20px !important;
    box-shadow: none !important;
    position: relative !important;
}

/* Отключение случайных декоративных линий из глобального CSS */
.mc-info-box::before,
.mc-info-box::after,
.mc-tabs-wrapper::before,
.mc-tabs-wrapper::after,
.mc-tabs-nav::before,
.mc-tabs-nav::after {
    display: none !important;
    content: none !important;
}

/* Список с аккуратными фиолетовыми маркерами */
.mc-list {
    list-style: none !important;
    padding-left: 0 !important;
    margin-bottom: 20px !important;
}

.mc-list li {
    display: flex;
    align-items: flex-start;
    margin-bottom: 10px;
}

.mc-list .mc-bullet {
    color: #8855A2;
    font-size: 1.2rem;
    line-height: 1;
    margin-right: 10px;
    flex-shrink: 0;
}

/* Стили для фирменной кнопки */
.mc-btn-primary {
    display: inline-block;
    background-color: #8855A2 !important;
    color: #ffffff !important;
    padding: 12px 24px;
    border-radius: 8px;
    text-decoration: none !important;
    font-weight: 600;
    font-size: 1rem;
    transition: all 0.2s ease-in-out;
    text-align: center;
    border: none;
    box-shadow: 0 4px 12px rgba(136, 85, 162, 0.2);
}

/* Адаптив для мобильных устройств (сетка для вкладок) */
@media (max-width: 576px) {
    .mc-tabs-wrapper .nav-tabs,
    ul.mc-tabs-nav {
        display: flex !important;
        flex-wrap: wrap !important;
        gap: 8px !important;
    }
    .mc-tabs-nav .nav-item {
        flex: 1 1 auto !important;
        margin-bottom: 0 !important;
    }
    .mc-tabs-nav .nav-link {
        width: 100% !important;
        white-space: normal !important;
        font-size: 0.85rem !important;
        padding: 8px 6px 12px 6px !important;
        text-align: center !important;
        line-height: 1.2 !important;
    }
    .mc-btn-primary {
        display: block;
        width: 100%;
    }
}

/* ==========================================================================
   Универсальная брендовая кнопка Micelline
   Имеет защиту от перекрашивания ссылок Bootstrap
   ========================================================================== */

a.mc-btn-purple {
    display: inline-block !important;
    background-color: #8855A2 !important; /* Наш фирменный цвет */
    color: #ffffff !important;            /* Белый текст */
    padding: 12px 24px !important;
    border-radius: 8px !important;
    text-decoration: none !important;
    font-weight: 600 !important;
    font-size: 1rem !important;
    transition: all 0.2s ease-in-out !important;
    text-align: center !important;
    border: none !important;
    box-shadow: 0 4px 12px rgba(136, 85, 162, 0.2) !important;
}

/* Эффект наведения (кнопка светлеет, текст строго белый) */
a.mc-btn-purple:hover,
a.mc-btn-purple:focus,
a.mc-btn-purple:active {
    background-color: #E5A4C2 !important; 
    color: #ffffff !important;            
    transform: translateY(-2px) !important;
    box-shadow: 0 6px 16px rgba(136, 85, 162, 0.3) !important;
    text-decoration: none !important;
}

