@import url('https://fonts.googleapis.com/css?family=Nunito:300,300i,400,400i,600,600i,700,700i,800,800i,900,900i');
@import url('https://fonts.googleapis.com/css2?family=Quicksand:wght@300;400;500;600;700&display=swap');
@import url("/templates/merchmaker/fonts/font-awesome/css/font-awesome.css");
@import url("/templates/merchmaker/fonts/elegant_font/HTML_CSS/style.css");
@import url("/templates/merchmaker/fonts/et-line-font/style.css");

/* import custom fonts */
@font-face {
    font-family: 'Montserrat';
    src: url('/templates/merchmaker/css/font/Montserrat-Regular.eot');
    src: local('Montserrat'), local('Montserrat-Regular'),
        url('/templates/merchmaker/css/font/Montserrat-Regular.eot?#iefix') format('embedded-opentype'),
        url('/templates/merchmaker/css/font/Montserrat-Regular.woff') format('woff'),
        url('/templates/merchmaker/css/font/Montserrat-Regular.ttf') format('truetype');
    font-weight: 500;
    font-style: normal;
}
/* ================================================== */

html {
    overflow: auto !important;
    padding: 0 !important;
    margin: 0 !important;
    background: #fff;
}

body {
    font-family: "Montserrat", Arial, Helvetica, sans-serif;
    font-size: 15px;
    font-weight: 500;
    background: #fff;
    line-height: 1.8em;
    padding: 0;
    display: none;
    color: #000000;
}
#wrapper {
	width:100%;
	position:relative;
}


/*  header	*/

header {
	display:table-cell;
    width: 100%;
    height: 80px;
    position: absolute;
    top: 20px;
    left: 0;
    z-index: 1000;
    background: #333333;
}

header .info {
    display: none;
    color: #fff;
    padding: 10px 0 10px 0;
    width: 100%;
    z-index: 100;
    background: #242424;
}

header .info .col {
    display: inline-block;
    font-size: 12px;
}

header .info .col {
    padding-right: 30px;
}

header .info .col:last-child {
    padding-right: 0px;
}

header .info i {
    font-size: 14px;
    margin-right: 15px;
}

header .info .social.col {
    border: none;
}

header .info .social i {
    color: #fff;
    font-size: 14px;
    display: inline-block;
    float: none;
    padding: 0 10px 0 10px;
    margin: 0;
}

header .info strong {
    font-size: 12px;
}

header.header-bg {
    background: rgba(0, 0, 0, 0.5);
}

header.transparent {
    background: rgba(0, 0, 0, 0.0);
}

header:not(.smaller):not(.header-mobile).header-light.transparent {
    background: rgba(255, 255, 255, 0.0);
}

header.autoshow {
    top: -120px;
    height: 70px !important;
}

header.autoshow.scrollOn,
header.autoshow.scrollOff {
    -o-transition: .5s;
    -ms-transition: .5s;
    -moz-transition: .5s;
    -webkit-transition: .5s;
    transition: .5s;
    outline: none;
}

header.autoshow.scrollOn {
    top: 0;
}

header.autoshow.scrollOff {
    top: -120px;
}

header div#logo {
    display:table-cell;
	vertical-align:middle;
	position:absolute;
    font-family: "Oswald", sans-serif;
    font-size: 72px;
    color: white;
    font-weight: 400;
    line-height: 60px;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -ms-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
}

header .logo-2 {
    display: none;
}

header .logo-scroll {
    display: none;
}

header nav {
    float: right;
}

header nav a {
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -ms-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
}

header nav a:hover {
    color: #555;
}

header.smaller #mainmenu a {
    padding-top: 18px;
    padding-bottom: 18px;
}

header.smaller #mainmenu a {
    padding-top: 18px;
    padding-bottom: 18px;
}

header.smaller #mainmenu li li a {
    padding-top: 2px;
    padding-bottom: 2px;
}

header.smaller #mainmenu ul {
    top: 40px;
}

header.smaller #mainmenu ul ul {
    top: 0px;
}

header.smaller {
    height: 70px;
    background: rgba(21, 21, 21, .95);
    position: fixed;
    top: 0px;
	-webkit-box-shadow: 8px 8px 40px 0px rgba(0,0,0,0.1);
	-moz-box-shadow: 8px 8px 40px 0px rgba(0,0,0,0.1);
	box-shadow: 8px 8px 40px 0px rgba(0,0,0,0.1);
}

header.smaller .btn-rsvp {
    height: 100px;
    padding-top: 55px;
}

.boxed header.smaller {
    margin-top: 0px;
}

header.smaller div#logo {
    line-height: 48px;
}

header.smaller.scroll-light {
    background: #fff;
}

header:not(.header-light).smaller.scroll-light div#logo .logo {
    display: none;
}

header.smaller.scroll-light div#logo .logo-2 {
    display: inline-block;
    margin-top:10px;
}

header.smaller.scroll-light div#logo .logo-scroll {
    display: inline-block;
}

header.smaller.scroll-light #mainmenu a,
header.header-mobile.header-light #mainmenu a {
    color: #333;
}

header.smaller.scroll-light #mainmenu a:hover,
header.header-mobile.header-light #mainmenu a:hover {
    color: #eb3349;
}


header.smaller.scroll-light #mainmenu li li a {
    color: #fff;
}

header.smaller.header-light div#logo .logo {
    display: none;
}

.logo-smaller div#logo {
    width: 150px;
    height: 30px;
    line-height: 65px;
    font-size: 30px;
}

.logo-smaller div#logo img {
    line-height: 75px;
    font-size: 30px;
}

.logo-smaller div#logo .logo-1 {
    display: none;
}

.logo-smaller div#logo .logo-2 {
    display: inline-block;
}

.logo-small {
    margin-bottom: 20px;
}

#logo-container{
	position:fixed;
	width:100%;
	z-index:1000;
	padding:40px 0;
}





#section-footer-menu {padding: 50px 0 70px 0;}
.footer1col img {margin:0 0 15px 0;}
.footer1col p {line-height: 1.4em;}
#section-footer-menu ul {padding-left: 12px;}
#section-footer-menu a {color: #fff;}


/* SHOP */
section#category-shop, section#object-shop {padding:10px 0 20px 0;}
section#category-shop h1, , section#object-shop h1 {margin:-5px 0 0 0;}


  .catalog-filters-sidebar {
      width: 100%;
      background: #fdfdfd;
      border: 1px solid #e0e0e0;
      padding: 10px 10px 0 10px;
      border-radius: 8px;
      margin:0 0 20px 0;
  }

  .filters-sidebar-title {
      font-size: 18px;
      font-weight: bold;
      margin-bottom: 5px;
      text-transform: uppercase;
      color: #999;
  }

  .filter-group {
      border-bottom: 1px solid #eaeaea;

  }

  .filter-group:last-child {
      border-bottom: none;
  }

  /* Заголовок-аккордеон */
  .filter-group-header {
      width: 100%;
      background: none;
      border: none;
      border-radius: 5px;
      text-align: left;
      font-size: 16px;
      font-weight: 600;
      padding: 5px 5px 5px 10px;
      cursor: pointer;
      color: #222;
      background-color: #f5f5f5;
      position: relative;
      margin:0 0 10px 0;
  }


  /* Маленькая стрелочка для индикации открытия (аккордеон) */
  .filter-group-header::after {
      content: '▼';
      font-size: 15px;
      position: absolute;
      right: 10px;
      top: 5px;
      color: #999;
      transition: transform 0.2s ease; /* Плавный поворот */
  }
  /* Если группа активна — переворачиваем стрелочку вверх */
  .filter-group.active .filter-group-header::after {
      transform: rotate(180deg);
  }


  /* Контейнер со скроллом */
  .filter-group-content {
    margin-top: 10px;
    display: none;
  }

  .filter-group.active .filter-group-content {
      display: block;
  }

  .filter-scroll-box {
      max-height: 180px; /* Ограничиваем высоту, чтобы не растягивать сайт */
      overflow-y: auto;
      padding-right: 10px;
  }

  /* Кастомный красивый скроллбар */
  .filter-scroll-box::-webkit-scrollbar {
      width: 4px;
  }
  .filter-scroll-box::-webkit-scrollbar-thumb {
      background: #ccc;
      border-radius: 4px;
  }

  /* Чекбоксы */
  .filter-checkbox-label {
      display: flex;
      align-items: center;
      font-size: 14px;
      color: #555;
      margin-bottom: 8px;
      cursor: pointer;
      user-select: none;
  }

  .filter-checkbox-label input {
      margin-right: 10px;
      cursor: pointer;
  }

  .filter-checkbox-label:hover {
      color: #000;
  }

  .filter-actions-panel {
    margin-top: 25px;
    padding-top: 20px;
    border-top: 2px solid #e0e0e0;
    /* Скрываем панель по умолчанию */
    display: none;
}

.filter-btn {
    width: 100%;
    padding: 12px;
    font-size: 14px;
    font-weight: 600;
    border: none;
    border-radius: 4px;
    cursor: pointer;
    margin-bottom: 10px;
    transition: background 0.2s, color 0.2s;
}

/* Главная кнопка "Показать" */
.filter-btn-submit {
    background: linear-gradient(to right, #eb3349, #f45c43);
    color: #fff;
}
.filter-btn-submit:hover {
    background: #313131;
}

/* Кнопки в ряд */
.filter-buttons-row {
    display: flex;
    gap: 10px;
}

.filter-btn-collapse, .filter-btn-reset {
    background: #f0f0f0;
    color: #333;
    border: 1px solid #ccc;
    margin-bottom: 0;
    font-weight: normal;
}
.filter-btn-collapse:hover, .filter-btn-reset:hover {
    background: #e0e0e0;
}

/* Стили для чекбокса "По всем категориям" */
.filter-global-search {
    display: flex;
    align-items: center;
    font-size: 13px;
    color: #555;
    margin-bottom: 15px;
    cursor: pointer;
    user-select: none;
    font-weight: 600;
}
.filter-global-search input {
    margin-right: 8px;
}

/* Контейнер сетки: автоматически распределяет карточки по ширине */
.catalog-sections-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: 24px;
    padding: 20px 0;
    width: 100%;
}

/* Сама карточка категории */
.catalog-section-card {
    display: flex;
    flex-direction: column;

    /* Полупрозрачный белый фон создает эффект матового стекла на темной подложке */
    background: rgba(255, 255, 255, 0.03);

    /* Едва заметная тонкая грань, имитирующая толщину стекла */
    border: 1px solid rgba(0, 0, 0, 0.2);
    border-radius: 16px; /* Чуть мягче скруглим углы */

    overflow: hidden;
    text-decoration: none;

    /* Эффект матового размытия (работает в Safari и Chrome) */
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);

    transition: transform 0.4s cubic-bezier(0.16, 1, 0.3, 1),
                border-color 0.4s ease,
                box-shadow 0.4s ease,
                background-color 0.4s ease;
}

/* Ограничитель для фото категории — убираем внутреннюю черноту */
.section-card-image {
    width: 100%;
    aspect-ratio: 1 / 1;
    overflow: hidden;
    background: transparent; /* Никакого черного под изображениями */
    position: relative;

    /* Мягкий градиент снизу вверх, чтобы картинка плавно уходила в текст */
    /* Особенно круто смотрится, если у товаров прозрачный фон */
    mask-image: linear-gradient(to bottom, black 85%, transparent 100%);
    -webkit-mask-image: linear-gradient(to bottom, black 85%, transparent 100%);
}

.section-card-image img {
    width: 100%;
    height: 100%;
    object-fit: contain; /* Если у товаров прозрачный фон, contain сохранит их пропорции. Если фото сплошные — верни cover */
    transition: transform 0.6s cubic-bezier(0.16, 1, 0.3, 1);
}

/* Текстовый блок внутри карточки */
.section-card-content {
    padding: 20px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    flex-grow: 1;
}

/* Название категории */
.section-card-title {
    font-size: 18px;
    margin: 0 0 12px 0;
    font-weight: 600;
    transition: color 0.3s ease;
}

/* Стрелочка/ссылка "Смотреть товары" */
.section-card-link {
    font-size: 14px;
    color: #aaaaaa;
    font-weight: 500;
    display: flex;
    align-items: center;
    gap: 8px;
    transition: color 0.3s ease;
}

.section-card-link i {
    font-size: 12px;
    transition: transform 0.3s ease;
}

/* ==========================================================================
   ЭФФЕКТЫ ПРИ НАВЕДЕНИИ (HOVER EFFECTS)
   ========================================================================== */
   @media (hover: hover) {
       .catalog-section-card:hover {
           transform: translateY(-8px);

           /* При наведении стекло становится чуть светлее и "ближе" к пользователю */
           background: rgba(255, 255, 255, 0.06);

           /* Подсвечиваем грани фирменным оранжевым с полупрозрачностью */
           border-color: rgba(255, 87, 34, 0.4);

           /* Дорогое, глубокое свечение вместо резкой тени */
           box-shadow: 0 20px 40px rgba(0, 0, 0, 0.4),
                       0 0 30px rgba(255, 87, 34, 0.1);
       }

       .catalog-section-card:hover .section-card-image img {
           transform: scale(1.06) rotate(1deg); /* Добавим микро-поворот для динамики */
       }

       .catalog-section-card:hover .section-card-title {
           color: #ff5722;
       }

       .catalog-section-card:hover .section-card-link {
           color: #aaaaaa;
       }

       .catalog-section-card:hover .section-card-link i {
           transform: translateX(6px);
       }

   }

   .product-glass-card {
       display: flex;
       flex-direction: column;
       background: rgba(255, 255, 255, 0.02);
       border: 1px solid rgba(255, 255, 255, 0.06);
       border-radius: 14px;
       overflow: hidden;
       height: 100%;
       backdrop-filter: blur(8px);
       -webkit-backdrop-filter: blur(8px);
       transition: transform 0.4s cubic-bezier(0.16, 1, 0.3, 1),
                   border-color 0.4s ease,
                   box-shadow 0.4s ease,
                   background-color 0.4s ease;
   }

   /* Область фотографии */
   * Уплотняем сетку: уменьшаем дефолтные отступы Bootstrap, чтобы карточки стояли ближе друг к другу */
.px-8 {
    padding-left: 8px !important;
    padding-right: 8px !important;
}

/* Пересобираем карточку под 3:4 */
.product-glass-card {
    display: flex;
    flex-direction: column;
    background: rgba(255, 255, 255, 0.02); /* Почти прозрачный фон */

    /* Твоя серая рамочка в первоначальном виде */
    border: 1px solid rgba(128, 128, 128, 0.25);

    border-radius: 12px;
    overflow: hidden;
    height: 100%;
    position: relative; /* Важно для позиционирования внутренних элементов */
    transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1);
}

/* Эффект при наведении на саму карточку */
.product-glass-card:hover {
    border-color: rgba(128, 128, 128, 0.45); /* Рамочка становится четче */
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.15); /* Мягкая тень для объема */
}



/* Настраиваем внутренности текстового блока */
.product-card-details {
    padding: 16px;
    display: flex;
    flex-direction: column;
    flex-grow: 1;
    background: transparent; /* Никаких фонов, полная чистота */
}

/* Цена теперь чуть выше кнопок и имеет отступ */
.product-card-details .oz-price-box {
    margin-bottom: 14px;
}

/* Стилизация обертки твоих кнопок внутри карточки каталога */
.product-card-details .oz-action-wrapper {
    margin-top: auto; /* Прижимает кнопку корзины к самому низу карточки */
    width: 100%;
}

/* Делаем главную кнопку "Добавить в корзину" компактнее для плитки */
.product-card-details .oz-btn-primary {
    width: 100%;
    padding: 10px 12px;
    font-size: 14px;
    font-weight: 600;
    border-radius: 8px;
    text-align: center;
}

/* Селектор количества уплотняем, чтобы красиво помещался в плитку */
.product-card-details .oz-quantity-selector {
    display: flex;
    flex-direction: column;
    gap: 8px;
    width: 100%;
}

.product-card-details .oz-selector-controls {
    display: flex;
    align-items: center;
    justify-content: space-between;
    background: rgba(255, 255, 255, 0.05);
    border-radius: 6px;
    padding: 4px;
}

.product-card-details .oz-btn-checkout {
    display: block;
    text-align: center;
    padding: 6px;
    font-size: 13px;
    border-radius: 6px;
}

.product-card-details .oz-btn-customize {
    display: block;
    width: 100%;
    padding: 10px 12px;
    font-size: 14px;
    font-weight: 600;
    border-radius: 8px;
    text-align: center;
    text-decoration: none;

    /* Можно сделать её стильным контрастным цветом или оставить в тон основным */
    background: #fff;
    color: #000;

    transition: background 0.3s ease, transform 0.2s ease;
}

.product-card-details .oz-btn-customize:hover {
    background: rgba(255, 255, 255, 0.9);
    transform: translateY(-1px);
}

/* Область изображения — строгие 3:4 без внутренних падингов, чтобы мокап садился вплотную */
.product-card-image {
    width: 100%;
    aspect-ratio: 3 / 4;
    position: relative;
    overflow: hidden;
    background: #141414; /* Темная подложка, если мокап прозрачный */
}


/* Позиционирование картинок для наложения друг на друга */
.product-card-image a {
    display: block;
    width: 100%;
    height: 100%;
    position: relative;
}

.product-card-image img {
    width: 100%;
    height: 100%;
    object-fit: cover; /* Изображение полностью заполняет формат 3:4 */
    position: absolute;
    top: 0;
    left: 0;
    transition: opacity 0.5s ease, transform 0.5s ease;
}

/* Начальное состояние картинок */
.product-card-image .img-main {
    opacity: 1;
    z-index: 2;
}

.product-card-image .img-hover {
    opacity: 0;
    z-index: 1;
    transform: scale(1.02); /* Живое фото изначально чуть увеличено для эффекта глубины */
}


.product-card-title {
    font-size: 15px;
    line-height: 1.3;
    margin: 0 0 12px 0;
    font-weight: 500;
}

   .product-card-title a {
       color: #e0e0e0;
       text-decoration: none;
       transition: color 0.3s ease;
   }

   /* Нижняя строка: Цена + Корзина */
   .product-card-footer {
       display: flex;
       align-items: center;
       justify-content: space-between;
       gap: 12px;
       margin-top: auto;
   }

   /* Перебиваем стили старого oz-price-box */
   .product-card-footer .oz-price-box {
       display: flex;
       flex-direction: column; /* Цена под ценой, если есть старая */
       gap: 2px;
   }

   .product-card-footer .oz-current-price {
       font-size: 18px;
       font-weight: 700;
       color: #ffffff;
   }

   .product-card-footer .oz-old-price {
       font-size: 13px;
       color: #777777;
       text-decoration: line-through;
   }

   /* Кнопка Корзины */
   .product-btn-cart {
       width: 42px;
       height: 42px;
       background: rgba(255, 255, 255, 0.05);
       border: 1px solid rgba(255, 255, 255, 0.1);
       color: #ffffff;
       border-radius: 10px;
       display: flex;
       align-items: center;
       justify-content: center;
       font-size: 16px;
       transition: all 0.3s ease;
   }

   /* Акционный шильдик */
   .product-badge-sale {
       position: absolute;
       top: 12px;
       right: 12px;
       background: #ff5722;
       color: #ffffff;
       font-size: 11px;
       font-weight: 600;
       text-transform: uppercase;
       padding: 4px 10px;
       border-radius: 6px;
       box-shadow: 0 4px 10px rgba(255, 87, 34, 0.3);
       letter-spacing: 0.5px;
       z-index: 3;
       pointer-events: none;
   }

   /* ==========================================================================
      ЭФФЕКТЫ ПРИ НАВЕДЕНИИ
      ========================================================================== */
   @media (hover: hover) {
     .product-glass-card:hover {
      border-color: #ff5722;
      box-shadow: 0 12px 24px rgba(0, 0, 0, 0.6), 0 0 15px rgba(255, 87, 34, 0.15);
  }

  /* Плавная рокировка картинок */
  .product-glass-card:hover .img-main {
      opacity: 0;
  }

  .product-glass-card:hover .img-hover {
      opacity: 1;
      transform: scale(1); /* Картинка "встает" на место при проявлении */
  }

  .product-glass-card:hover .product-card-title a {
      color: #000000;
  }
   }

   /* Вспомогательный класс отступа */
   .mb16 { margin-bottom: 16px; }

   /* --- БЛОК ПЛИТОК (На всю ширину) --- */
   .product-ready-variants-section {
       width: 100%;
       margin: 40px 0;
       clear: both;
   }

   .variants-section-title {
       font-size: 20px;
       font-weight: 600;
       color: #2c2d2e;
       margin-bottom: 20px;
       text-transform: uppercase;
       letter-spacing: 0.5px;
   }

   /* Адаптивная сетка плиток */
   .variants-tiles-grid {
       display: grid;
       grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
       gap: 16px;
   }

   .variant-tile-item {
       display: flex;
       flex-direction: column;
       background: #ffffff;
       border: 1px solid #e4e6e9;
       border-radius: 8px;
       text-decoration: none;
       overflow: hidden;
       transition: transform 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease;
   }

   .variant-tile-item:hover {
       transform: translateY(-4px);
       border-color: #bdbfc2;
       box-shadow: 0 6px 12px rgba(0, 0, 0, 0.05);
   }

   .tile-image-wrapper {
       position: relative;
       width: 100%;
       padding-top: 133.33%; /* Вертикальные превьюшки 3х4 */
       background: #f0f2f5;
   }

   .tile-image-wrapper img {
       position: absolute;
       top: 0;
       left: 0;
       width: 100%;
       height: 100%;
       object-fit: cover;
   }

   .tile-name-info {
       padding: 10px;
       text-align: center;
       background: #ffffff;
       border-top: 1px solid #f0f2f5;
   }

   .tile-person-name {
       font-size: 14px;
       color: #2c2d2e;
       font-weight: 500;
   }


   /* --- СЕЛЕКТОР С АВТОЗАПОЛНЕНИЕМ (В правой колонке) --- */
   .product-name-selector-wrapper {
       margin-bottom: 24px;
   }

   .selector-title {
       display: block;
       font-size: 13px;
       font-weight: 600;
       color: #8e9296;
       text-transform: uppercase;
       margin-bottom: 8px;
       letter-spacing: 0.5px;
   }



   #name-search-input {
       width: 100%;
       padding: 12px 40px 12px 16px;
       font-size: 15px;
       border: 1px solid #bdbfc2;
       border-radius: 6px;
       background: #ffffff;
       outline: none;
       transition: border-color 0.2s ease;
   }

   #name-search-input:focus {
       border-color: #2c2d2e;
   }

   .search-input-container i {
       position: absolute;
       right: 16px;
       top: 50%;
       transform: translateY(-50%);
       color: #8e9296;
       pointer-events: none;
       font-size: 12px;
   }

   /* Контейнер выпадающего списка под инпутом */
.search-input-container {
    position: relative;
}

.oz-custom-autocomplete-dropdown {
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    max-height: 220px;
    overflow-y: auto;
    background: #ffffff;
    border: 1px solid #2c2d2e;
    border-top: none;
    border-radius: 0 0 6px 6px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
    z-index: 999;
    box-sizing: border-box;
}

/* Скругляем верх инпута, когда меню открыто */
#name-search-input:focus {
    border-color: #2c2d2e;
    border-radius: 6px 6px 0 0;
}

/* Элемент списка имен */
.oz-dropdown-item {
    padding: 10px 16px;
    font-size: 15px;
    color: #2c2d2e;
    cursor: pointer;
    transition: background 0.15s ease;
    text-align: left;
}

.oz-dropdown-item:hover {
    background-color: #f0f2f5;
}

/* Настройка скроллбара */
.oz-custom-autocomplete-dropdown::-webkit-scrollbar {
    width: 6px;
}
.oz-custom-autocomplete-dropdown::-webkit-scrollbar-thumb {
    background: #bdbfc2;
    border-radius: 3px;
}

/* Контейнер карточки */
.oz-product-container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 20px;
    font-family: 'Inter', sans-serif;
    color: #1a1a1a;
}



/* ТОВАР */
/* Основной блок: делим на 2 колонки */
.oz-product-main {
    margin-bottom: 50px;
}

/* ЛЕВАЯ КОЛОНКА: ГАЛЕРЕЯ (По компоновке Ozon) */
.oz-visual-block {
    display: flex;
    gap: 16px;

}
.oz-thumbs-gallery {
    display: flex;
    flex-direction: column;
    gap: 10px;

}
.oz-thumb-item {
    width: 76px;
    height: 101px;
    border: 1px solid #e4e7ed;
    border-radius: 8px;
    cursor: pointer;
    overflow: hidden;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #fff;
    flex-shrink: 0;
}
.oz-thumb-item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.oz-thumb-item.active {
    border-color: #005bff;
    box-shadow: 0 0 0 1px #005bff;
}
.oz-info-block {margin:20px 0 0 0;}


/* Кнопка видео в галерее */
/* Кнопка видео в галерее с превью */
.oz-thumb-video {
    position: relative;
    background-color: #f0f2f5;
    background-size: cover;       /* Растягиваем картинку по всей плитке */
    background-position: center;  /* Центрируем фото */
    background-repeat: no-repeat;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    overflow: hidden;             /* Чтобы оверлей не вылезал за скругления */
    transition: transform 0.3s ease;
}

/* Затемняющий слой поверх картинки */
.video-preview-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.4); /* Насыщенность затемнения (0.4 = 40%) */
    z-index: 1;
    transition: background 0.3s ease;
}

.oz-thumb-video:hover .video-preview-overlay {
    background: rgba(0, 0, 0, 0.55); /* Чуть сильнее затемняем при наведении */
}

/* Поднимаем иконки выше затемняющего слоя */
.video-play-icon,
.video-sub-icon {
    position: relative;
    z-index: 2;
}

/* Верхняя иконка Play */
.video-play-icon {
    font-size: 40px;
    color: #ffffff; /* Делаем иконку белой, так как фон теперь темный */
    line-height: 1;
    margin-bottom: 6px;
    transition: transform 0.3s ease, color 0.3s ease;
}

.oz-thumb-video:hover .video-play-icon {
    color: #ff4d4f;       /* Иконка становится красной/активной при ховере */
    transform: scale(1.1); /* Слегка увеличиваем Play при наведении */
}

/* Блок второй иконки под Play */
.video-sub-icon {
    display: flex;
    align-items: center;
    gap: 4px;
    font-size: 11px;
    color: #e4e6e9; /* Светло-серый цвет для хорошей читаемости */
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

/* Главное фото */
.oz-main-photo-wrapper {
    flex-grow: 1;
    border: 1px solid #e4e7ed;
    border-radius: 12px;
    overflow: hidden;
    position: relative;
    background: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
}
.oz-main-photo-wrapper img {
    max-width: 100%;
}
.oz-badge-sale {
    position: absolute;
    top: 15px;
    left: 15px;
    background: #f91155;
    color: #fff;
    padding: 4px 10px;
    font-weight: 700;
    font-size: 12px;
    border-radius: 6px;
}

/* ПРАВАЯ КОЛОНКА */
.oz-product-title {
    font-size: 24px;
    line-height: 32px;
    font-weight: 700;
    margin: 0 0 15px 0;
}
.oz-price-box {
    display: flex;
    align-items: baseline;
    gap: 8px;
    margin-bottom: 10px;
}
.oz-current-price { font-size: 32px; font-weight: 800; color: #fe541e; }
.oz-old-price { font-size: 18px; color: #707f94; text-decoration: line-through; }
.oz-discount-badge { background: rgba(254, 204, 188, 0.3); color: #fe541e; padding: 2px 6px; font-weight: 700; border-radius: 4px; font-size: 14px; }
.oz-manufacturing-deadline { font-size: 14px; font-weight: 600; text-align:center; padding:10px 0; }
.oz-divider { border: 0; border-top: 1px solid #e4e7ed; margin: 20px 0; }

/* КАСТОМИЗАЦИЯ */
/* Жестко ограничиваем форму, чтобы она не распирала контейнер */
#oz-add-to-cart-form {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
}

/* На всякий случай зажимаем и саму панель кастомизации */
.oz-customization-panel {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    overflow: hidden; /* Финальный щит: всё, что не влезает, будет скрыто, а не растянет экран */
}

/* Защита для текстового поля */
.oz-checkout-textarea {
    max-width: 100% !important;
    box-sizing: border-box !important;
}

.oz-customization-panel {
    background: #f7f9fa;
    padding: 16px;
    border-radius: 12px;
}
.oz-customization-panel h3 { font-size: 16px; margin: 0 0 15px 0; font-weight: 700; }
.oz-input-group { margin-bottom: 15px; }
.oz-input-group label { display: block; font-size: 14px; margin-bottom: 6px; font-weight: 500; }
.oz-input-group input[type="text"] {
    width: 100%; padding: 10px 12px; border: 1px solid #cbd5e1; border-radius: 8px; box-sizing: border-box; font-size: 14px;
}
.input-hint { color: #707f94; font-size: 12px; display: block; margin-top: 4px; }


/* Многострочный ввод текста */
.oz-checkout-textarea {
    width: 100%;
    padding: 12px 15px;
    border: 1px solid #cbd5e1;
    border-radius: 6px;
    font-size: 14px;
    color: #1e293b;
    background-color: #ffffff;
    resize: vertical; /* Разрешаем тянуть только по высоте */
    min-height: 80px;
    transition: border-color 0.2s;
}
.oz-checkout-textarea:focus {
    border-color: #f45c43;
    outline: none;
}

/* Дропзона для множества файлов */
/* Общий контейнер для блока загрузки — делаем его строго блочным */
.oz-file-upload-container {
    width: 100%;
    display: block;
    box-sizing: border-box;
}

.oz-hidden-file-input {
    position: absolute !important;
    opacity: 0 !important;
    width: 1px !important;
    height: 1px !important;
    overflow: hidden !important;
    pointer-events: none !important;
}

/* Наша безопасная блочная кнопка */
.oz-dropzone {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    margin: 10px 0 !important;
    padding: 15px 10px !important; /* Компактные отступы для узких колонок */
    background: #ffffff !important;
    border: 2px dashed #cbd5e1 !important;
    border-radius: 8px !important;
    text-align: center !important;
    cursor: pointer;
    overflow: hidden !important;
}

.oz-dropzone:hover {
    border-color: #f45c43 !important;
    background: rgba(244, 92, 67, 0.01) !important;
}

/* Иконка и тексты внутри нашей кнопки */
.oz-drop-icon {
    display: block !important;
    font-size: 22px !important; /* Чуть уменьшили размер */
    color: #94a3b8 !important;
    margin: 0 auto 6px auto !important;
}
.oz-dropzone:hover .oz-drop-icon {
    color: #f45c43 !important;
}

.oz-drop-title {
    display: block !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    color: #475569 !important;
    margin: 0 auto 2px auto !important;
    line-height: 1.3 !important;
}

.oz-drop-subtitle {
    display: block !important;
    font-size: 11px !important;
    color: #94a3b8 !important;
    margin: 0 auto !important;
    line-height: 1.2 !important;
}

/* Список превью под кнопкой — железная блочная структура */
.oz-file-preview-list {
    margin-top: 10px;
    display: block !important;
    width: 100% !important;
}

.oz-file-preview-item {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    background: #f1f5f9 !important;
    padding: 6px 10px !important;
    border-radius: 6px !important;
    border: 1px solid #e2e8f0 !important;
    font-size: 12px !important;
    margin-bottom: 4px !important;
    box-sizing: border-box !important;
    width: 100% !important;
    overflow: hidden !important;
}

.oz-file-preview-name {
    display: flex !important;
    align-items: center !important;
    gap: 6px !important;
    font-weight: 500 !important;
    min-width: 0 !important;
    flex: 1 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important; /* Обрезка точек в конце длинных имен */
}
.oz-file-preview-name i {
    color: #f45c43 !important;
    flex-shrink: 0 !important;
}

.oz-file-preview-size {
    color: #64748b !important;
    font-size: 11px !important;
    flex-shrink: 0 !important;
    margin-left: 8px !important;
}

/* Кнопки заказа */

.oz-action-wrapper {
    display: flex;
    flex-direction: column;
    gap: 12px;
    margin-bottom: 25px;
    max-width: 300px; /* Делаем блок чуть компактнее и аккуратнее */
}
.product-glass-card .oz-action-wrapper {
margin-bottom: 0;
}
.oz-action-wrapper .hidden {
    display: none !important;
}

/* Блок счетчика количества */
.oz-quantity-selector {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
    background: #f9f9f9;
    padding: 12px;
    border-radius: 12px;
    border: 2px solid #e0e0e0;
    width: 100%;
}

.oz-selector-title {
    font-size: 13px;
    font-weight: 600;
    color: #666;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.oz-selector-controls {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 20px;
    width: 100%;
}

.oz-qty-btn {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    border: 2px solid #f45a44;
    background: #fff;
    color: #f45a44;
    font-size: 16px;
    font-weight: 700;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.2s ease;
    user-select: none;
}

.oz-qty-btn:hover {
    background: #f45a44;
    color: #fff;
}

.oz-qty-value {
    font-size: 20px;
    font-weight: 700;
    color: #333;
    min-width: 30px;
    text-align: center;
}

/* Наша главная градиентная кнопка во всю ширину */
.oz-btn-primary.oz-action-btn-main {
    width: 100%;
    background-image: linear-gradient(to right, rgb(235, 51, 73), rgb(244, 92, 67));
    color: #fff;
    border: none;
    padding: 16px;
    border-radius: 12px;
    font-size: 16px;
    font-weight: 700;
    cursor: pointer;
    transition: background 0.2s;
}

.oz-btn-primary.oz-action-btn-main:hover {
    background: #e04430;
    background-image: none;
}

.oz-btn-primary.oz-action-btn-main:disabled {
    opacity: 0.7;
    cursor: not-allowed;
}

/* Кнопка "Оформить заказ" внутри блока счетчика */
.oz-btn-checkout {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 48px;
    margin-top: 12px;
    background-color: #28a745; /* Зеленый цвет успеха и завершения */
    color: #ffffff !important;
    border: none;
    border-radius: 12px;
    font-size: 16px;
    font-weight: 700;
    text-decoration: none;
    transition: background-color 0.2s;
    box-sizing: border-box;
}

.oz-btn-checkout:hover {
    background-color: #218838;
    color: #ffffff;
    text-decoration:none;
}

/* Страница корзины */
/* Общий контейнер корзины */
.oz-cart-page {
    width: 100%;
    margin-top: 30px;
}

/* Пустая корзина */
.oz-cart-empty {

    padding: 30px 0;
}
.oz-empty-text {
    font-size: 18px;
    color: #666;
    margin-bottom: 20px;
}
.oz-btn-back {
    display: inline-block;
    padding: 14px 28px;
    background-image: linear-gradient(to right, rgb(235, 51, 73), rgb(244, 92, 67));
    color: #fff !important;
    text-decoration: none;
    border-radius: 12px;
    font-weight: 600;
}
.oz-btn-back:hover {text-decoration:none;}

/* иконки в шапке */
/* Общие обертки для относительного позиционирования элементов */
.oz-cart-icon-wrapper, .oz-user-link {
    position: relative;
    display: inline-block;
}

/* Красивый кружочек с количеством товаров */
.oz-cart-badge {
    position: absolute;
    top: -6px;      /* Смещаем чуть выше и правее иконки */
    right: 5px;
    background-image: linear-gradient(to right, rgb(235, 51, 73), rgb(244, 92, 67)); /* В твоем фирменном градиенте */
    color: #ffffff;
    font-size: 11px;
    font-weight: 700;
    min-width: 18px;
    height: 18px;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0 4px;
    box-shadow: 0 2px 5px rgba(244, 92, 67, 0.4);
    animation: oz-pop-in 0.3s ease-out; /* Легкий эффект появления */
}

/* Точка-индикатор авторизованного пользователя */
.oz-user-status-dot {
    position: absolute;
    bottom: 0;
    right: 14px;
    top: -3px;
    width: 10px;
    height: 10px;
    background-color: #28a745; /* Аккуратный зеленый цвет онлайн-статуса */
    border-radius: 50%;
    border: 1px solid #fff; /* Чтобы не сливалась с темной иконкой */
}

/* Эффект для авторизованной иконки (например, легкое свечение или изменение прозрачности) */
.oz-user-link.is-logged img {
    filter: drop-shadow(0 0 2px rgba(40, 167, 69, 0.3));
}

/* Оформление заказа */
/* Общие отступы для страницы оформления */
.oz-checkout-page {
    padding-top: 10px;
    padding-bottom: 20px;
}

/* Стилизация каждого отдельного блока-кубика */
.oz-checkout-block {
    background: #ffffff;
    border: 1px solid #eef2f5;
    border-radius: 8px;
    padding: 25px;
    margin-bottom: 25px;
    box-shadow: 0 4px 15px rgba(0,0,0,0.02);
}

/* Шапка блока с номером шага */
.oz-block-header {
    display: flex;
    align-items: center;
    margin-bottom: 20px;
    border-bottom: 1px solid #f8fafc;
    padding-bottom: 15px;
}

.oz-block-number {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    background-image: linear-gradient(to right, rgb(235, 51, 73), rgb(244, 92, 67)); /* Твой фирменный градиент */
    color: #ffffff;
    font-weight: 700;
    font-size: 14px;
    border-radius: 50%;
    margin-right: 15px;
}

.oz-block-header h3 {
    margin: 0;
    font-size: 18px;
    font-weight: 600;
    color: #1e293b;
}

/* Правая колонка с итогами */

  .oz-checkout-sidebar {
  position: -webkit-sticky; /* Поддержка для Safari */
  position: sticky;
  top: 130px; /* Увеличили отступ, чтобы блок не заползал ПОД твою фиксированную шапку */
  z-index: 10; /* Поднимаем над основным контентом, но ниже шапки сайта */

  background: #f8fafc;
  border: 1px solid #e2e8f0;
  border-radius: 8px;
  padding: 25px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.02);
}
.oz-sidebar-over {
  position: relative;
}

/* Временные заглушки для визуализации кубиков */
.oz-stub-alert {
    background: #f1f5f9;
    border: 1px dashed #cbd5e1;
    color: #64748b;
    padding: 20px;
    text-align: center;
    border-radius: 6px;
    font-size: 13px;
}

/* Главная кнопка действия */
.oz-main-submit-btn {
    width: 100%;
    height: 50px;
    border: none;
    background-image: linear-gradient(to right, rgb(235, 51, 73), rgb(244, 92, 67));
    color: #ffffff;
    font-size: 16px;
    font-weight: 600;
    border-radius: 6px;
    margin-top: 20px;
    cursor: pointer;
    transition: opacity 0.2s;
}
.oz-main-submit-btn:disabled {
    opacity: 0.6;
    cursor: not-allowed;
}

/* Анимация появления баджа */
@keyframes oz-pop-in {
    0% { transform: scale(0); }
    80% { transform: scale(1.2); }
    100% { transform: scale(1); }
}

/* Структура корзины (две колонки: список и итоги) */
.oz-cart-container {
    display: flex;
    flex-direction: column;
    margin-left:-15px;
    margin-right:-15px;
  gap: 5px;
}

@media (min-width: 992px) {
    .oz-cart-container {
        flex-direction: row;
        align-items: flex-start;
    }
    .oz-cart-items-list {
        flex: 1;
    }
    .oz-cart-summary-panel {

        top: 20px;
    }
}

/* Строка товара (легкий дизайн без бордеров таблицы) */

.oz-cart-item-row {
    display: block !important; /* Строка теперь является цельным контейнером */
    margin-bottom: 12px;
    background: #ffffff;
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    transition: all 0.2s ease;
}

/* Флекс-контейнер для основных данных (название, цена, кол-во) */
.oz-cart-item-main-flex {
  display: flex !important;
  align-items: center;
  justify-content: space-between;
  padding: 16px;
  gap: 15px;
  flex-wrap: wrap !important;
}

/* СТИЛЬ РАМКИ ДЛЯ ПЕРСОНАЛИЗИРОВАННОГО ЗАКАЗА */
.oz-cart-item-row.oz-is-custom-item {
    border: 1px solid #ffedd5 !important; /* Мягкий оранжевый контур */
    background: #fffcf9 !important; /* Тонкая теплая подложка */
    box-shadow: 0 2px 8px rgba(234, 88, 12, 0.04);
}

/* Контейнер кастомных данных внутри карточки */
.oz-cart-custom-data {
    margin: 0 16px 16px 16px; /* Отступы внутри рамки */
    padding: 12px;
    background-color: #ffffff;
    border: 1px dashed #fed7aa;
    border-radius: 6px;
    font-size: 13px;
}

.oz-cart-meta-item {
    margin-bottom: 6px;
}

.oz-cart-meta-label {
    color: #64748b;
    margin-right: 6px;
}

.oz-cart-meta-value {
    color: #1e293b;
    font-weight: 600;
}

/* Бэйдж */
.oz-cart-custom-badge {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: #ea580c;
    font-size: 12px;
    font-weight: 600;
}

/* Блок с прикрепленными макетами в корзине */
.cart-uploaded-files {
    margin-top: 10px;
    padding: 8px;
    background-color: #f9f9f9;
    border-radius: 4px;
}

.cart-uploaded-files__title {
    font-weight: bold;
    font-size: 12px;
    display: block;
    margin-bottom: 5px;
    color: #333;
}

.cart-uploaded-files__list {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
}

/* Элемент превью макета */
.uploaded-file-preview {
    text-align: center;
    width: 60px;
}

.uploaded-file-preview__link {
    display: block;
}

.uploaded-file-preview__image {
    width: 60px;
    height: 60px;
    object-fit: contain;
    border: 1px solid #ddd;
    border-radius: 4px;
    transition: border-color 0.2s ease, transform 0.2s ease;
}

.uploaded-file-preview__image:hover {
    border-color: #999;
    transform: scale(1.05);
}



/* Контейнер информационного блока при оформлении */
.oz-order-notice-block {
    display: flex;
    align-items: flex-start;
    gap: 6px;
    background-color: #fef8f2; /* Очень мягкий, едва заметный оранжево-бежевый фон */
    border: 1px solid #fde6d2; /* Светлая рамка в тон */
    border-left: 4px solid #ea580c; /* Жирный акцентный левый край для фокуса */
    border-radius: 6px;
    padding: 10px 10px;
    margin: 10px 0;
    line-height: 1.2em;
    box-shadow: 0 1px 3px rgba(234, 88, 12, 0.02);
    box-sizing: border-box !important; /* Включаем paddings внутрь ширины блока */
    width: 100% !important;            /* Блок послушно занимает всю доступную ширину родителя */
    max-width: 100% !important;        /* Запрещаем ему становиться шире экрана */

}

/* Стилизация иконки внутри блока */
.oz-order-notice-block i,
.oz-order-notice-block .fa {
    color: #ea580c; /* Наш фирменный глубокий оранжевый */
    font-size: 16px;
    margin-top: 2px; /* Легкое выравнивание по первой строке текста */
    flex-shrink: 0; /* Иконка не должна сжиматься, если текст длинный */
}

/* Стилизация самого текста */


.oz-order-notice-block p {
    color: #475569;
    font-size: 14px;
    line-height: 1.5;
    margin: 0;
    font-weight: 500;

    /* Разрешаем тексту переноситься на новые строки при любом сжатии */
    word-break: break-word !important;
    white-space: normal !important;
}

/* Если внутри текста есть важные выделения через <strong> */
.oz-order-notice-block strong {
    color: #1e293b; /* Делаем акцентные слова чуть темнее и весомее */
    font-weight: 600;
}

.oz-cart-item-info {
  flex: 1 1 250px !important; /* Базовая ширина 250px, может расти */
  min-width: 0; /* Защита от распирания длинными ссылками */
}
.oz-cart-item-title {
    font-size: 16px;
    font-weight: 600;
    color: #222;
    text-decoration: none;
    transition: color 0.2s;
}
.oz-cart-item-title:hover {
    color: #f45a44;
}

.oz-cart-item-price-single {
    font-size: 14px;
    color: #888;
    min-width: 100px;
}

/* Интерактивный счетчик количества в корзине */
.oz-cart-qty-controls {
    display: flex;
    align-items: center;
    gap: 12px;
    background: #f9f9f9;
    padding: 6px 12px;
    border-radius: 10px;
    border: 1px solid #e5e5e5;
}
.oz-cart-qty-btn {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    border: 1px solid #f45a44;
    background: #fff;
    color: #f45a44;
    font-size: 14px;
    font-weight: 700;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.2s;
    user-select: none;
}
.oz-cart-qty-btn:hover {
    background: #f45a44;
    color: #fff;
}
.oz-cart-qty-btn:disabled {
    opacity: 0.5;
    cursor: not-allowed;
}
.oz-cart-qty-value {
    font-size: 16px;
    font-weight: 700;
    color: #333;
    min-width: 24px;
    text-align: center;
}

/* Итоговая стоимость позиции */
.oz-cart-item-total {
    font-size: 18px;
    font-weight: 700;
    text-align: right;
}

/* Кнопка удаления (крестик) */
.oz-btn-remove-item {
    background: none;
    border: none;
    color: #bbb;
    font-size: 24px;
    cursor: pointer;
    padding: 0 10px;
    transition: color 0.2s;
    line-height: 1;
}
.oz-btn-remove-item:hover {
    color: #dc3545;
}

/* АДАПТИВНОСТЬ ДЛЯ СМАРТФОНОВ (до 768px) */
@media screen and (max-width: 768px) {
    .oz-cart-item-main-flex {
        flex-direction: row !important; /* Оставляем строчную логику, но с умным заполнением */
        align-items: center !important;
        justify-content: space-between !important;
        padding: 12px !important;
        gap: 10px !important;
    }

    /* Название товара на мобильном выносим на всю ширину верхнего яруса */
    .oz-cart-item-info {
        flex: 1 1 100% !important;
        margin-bottom: 5px;
    }

    /* Цена, количество и общая стоимость аккуратно встанут в ряд снизу */
    .oz-cart-item-price-single,
    .oz-cart-item-quantity,
    .oz-cart-item-total {
        flex: 0 1 auto !important;
        font-size: 13px !important;
    }

    /* Крестик удаления прижмем к правому краю */
    .oz-cart-item-remove {
        flex: 0 0 auto !important;
        margin-left: auto !important;
    }

    /* Отступы для ТЗ внутри мобильной рамки */
    .oz-cart-custom-data {
        margin: 0 12px 12px 12px !important;
        padding: 10px !important;
    }
}

/* Панель итогов */
.oz-cart-summary-panel {
    background: #fdfdfd;
    border: 1px solid #f0f0f0;
    border-radius: 16px;
    padding: 24px;
    box-shadow: 0 4px 12px rgba(0,0,0,0.02);
}

/* Контейнер строки итогов */
.oz-summary-row {
    display: flex;
    flex-wrap: wrap;       /* Разрешаем перенос элементов на новую строку, если тесно */
    align-items: baseline; /* Выравниваем текст по нижней линии шрифта */
    justify-content: space-between; /* Текст слева, цена справа */
    gap: 8px;              /* Безопасный зазор между текстом и ценой */
    width: 100%;           /* Жестко ограничиваем ширину рамками сайдбара */
}

/* Текст "Итого к оплате:" */
.oz-summary-label {
    font-size: 16px;
    color: #64748b;
    font-weight: 500;
    flex-shrink: 1;        /* Позволяет тексту сужаться при необходимости */
}

/* Блок самой цены с валютой */
.oz-summary-value, .oz-summary-currency {
    font-size: 24px;       /* Умеренно крупный размер, чтобы не ломать верстку */
    font-weight: 700;
    color: #1e293b;
    white-space: nowrap;   /* Чтобы сама цифра и символ ₽ не разрывались */
}

.oz-total-price-block {
    white-space: nowrap; /* Запрещаем разрыв внутри этой пары */
    display: inline-block;
}

/* Чуть-чуть подправим отступ у валюты, если нужно */
.oz-summary-currency {
    margin-left: 4px; /* Фиксированный красивый зазор между цифрой и ₽ */
}
/* Если в разметке ₽ идет отдельным тегом, склеим их визуально */
#cart-total-price {
    display: inline-block;
}



.oz-btn-checkout-submit {
    width: 100%;
    background-image: linear-gradient(to right, rgb(235, 51, 73), rgb(244, 92, 67));
    color: #fff;
    border: none;
    border-radius: 12px;
    font-size: 16px;
    font-weight: 700;
    cursor: pointer;
    transition: background 0.2s;
    padding:12px 0;
    line-height: normal;
}
.oz-btn-checkout-submit:hover {
    background: #e04430;
    background-image: none;
}

/* Первый блок в корзине - контакты */
/* Блок предложения авторизации */
.oz-auth-suggestion {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 15px;
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    padding: 12px 20px;
    border-radius: 6px;
    margin-bottom: 25px;
}

.oz-suggestion-text {
    font-size: 14px;
    color: #475569;
    font-weight: 500;
}

.oz-auth-social-buttons {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
}

/* Кнопки быстрого входа */
.oz-btn-mini-auth {
    font-size: 13px;
    font-weight: 500;
    padding: 6px 12px;
    border-radius: 4px;
    text-decoration: none !important;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    transition: opacity 0.2s;
}
.oz-btn-mini-auth:hover { opacity: 0.8; }

.oz-vk { background: #0077FF; color: #fff !important; }
.oz-yandex { background: #E60000; color: #fff !important; font-weight: 700; }

.oz-btn-link-auth {
    font-size: 13px;
    color: #64748b !important;
    text-decoration: underline !important;
    margin-left: 5px;
}

/* Стилизация полей ввода */
.oz-form-group {
    margin-bottom: 18px;
}

.oz-form-group label {
    display: block;
    font-size: 13px;
    font-weight: 600;
    color: #475569;
    margin-bottom: 6px;
}

.oz-required {
    color: #ef4444;
}

.oz-checkout-input {
    width: 100%;
    height: 44px;
    background: #ffffff;
    border: 1px solid #cbd5e1;
    border-radius: 6px;
    padding: 0 15px;
    font-size: 14px;
    color: #1e293b;
    outline: none;
    transition: border-color 0.2s, box-shadow 0.2s;
}

/* Эффект фокуса на поле ввода */
.oz-checkout-input:focus {
    border-color: #f45c43; /* Твой фирменный цвет */
    box-shadow: 0 0 0 3px rgba(244, 92, 67, 0.15);
}

/* Второй блок оформления заказа - доставка */
/* Кнопки-ссылки («Изменить», «Добавить») */
.oz-btn-link-action {
    background: transparent;
    border: none;
    color: #f45c43; /* Твой фирменный цвет */
    font-size: 13px;
    font-weight: 600;
    text-decoration: underline;
    cursor: pointer;
    padding: 0;
    transition: color 0.2s;
}
.oz-btn-link-action:hover {
    color: #eb3349;
}

/* Строка превью адреса */
.oz-current-address-delivery {
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    padding: 15px 20px;
    border-radius: 6px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 15px;
}
.oz-address-label {
    font-size: 12px;
    color: #64748b;
    display: block;
    margin-bottom: 2px;
}
.oz-address-text {
    font-size: 14px;
    color: #1e293b;
}

/* Варианты сохраненных адресов (радиокнопки в списке) */
.oz-saved-address-option {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px;
    border: 1px solid #e2e8f0;
    border-radius: 6px;
    margin-bottom: 8px;
    cursor: pointer;
    font-size: 13px;
}
.oz-saved-address-option.active {
    border-color: #cbd5e1;
    background: #f1f5f9;
}
.oz-sub-title {
    font-size: 14px;
    font-weight: 600;
    color: #475569;
}
/* Сетка для плиток доставки */
.oz-delivery-slots {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
    gap: 15px;
    margin-bottom: 25px;
}

/* Сама плитка (label) */
.oz-delivery-slot {
    border: 1px solid #cbd5e1;
    border-radius: 8px;
    padding: 15px;
    cursor: pointer;
    transition: all 0.2s ease;
    background: #ffffff;
}

.oz-delivery-slot:hover {
    border-color: #94a3b8;
}

/* Активная выбранная плитка */
.oz-delivery-slot.active {
    border-color: #f45c43;
    background: rgba(244, 92, 67, 0.02);
    box-shadow: 0 0 0 3px rgba(244, 92, 67, 0.1);
}

.oz-slot-title {
    font-size: 15px;
    font-weight: 700;
    color: #1e293b;
    margin-bottom: 4px;
}

.oz-slot-desc {
    font-size: 12px;
    color: #64748b;
    line-height: 1.3;
}

/* Специфический инфо-блок */
.oz-pickup-info {
    margin-top: 15px;
}
/* Вспомогательные классы для скрытия элементов и отступов */
.oz-hidden-block {
    display: none;
}
.oz-mgmt-zone {
    margin-top: 20px;
}
.oz-btn-add-space {
    margin-top: 15px;
    display: inline-block;
}
.oz-new-address-constructor {
    margin-top: 25px;
    border-top: 1px dashed #cbd5e1;
    padding-top: 20px;
}
.oz-title-space {
    margin-bottom: 15px;
}
.oz-pickup-info {
    margin-top: 15px;
}
/* Элемент доставки в сайдбаре */
.oz-delivery-sidebar-info {
    font-size: 13px;
    color: #64748b;
    border-top: 1px dashed #cbd5e1;
    padding-top: 10px;
}
/* Специфический стиль плашки самовывоза */
.oz-pickup-notice-style {
    background: #f0fdf4;
    border-color: #bbf7d0;
}
.oz-pickup-notice-style i {
    color: #16a34a;
}

/* Третий блок оформления заказа - оплата */
/* Контейнер табов плательщика (Физлицо / Юрлицо) */
.oz-payer-tabs {
    display: inline-flex;
    background: #f1f5f9; /* Мягкий серый фон подложки */
    padding: 4px;
    border-radius: 8px;
    margin-bottom: 25px; /* Зазор до заголовка способов оплаты */
    border: 1px solid #e2e8f0;
}

/* Кнопки переключения внутри контейнера */
.oz-payer-tab {
    border: none;
    background: transparent;
    padding: 8px 20px;
    font-size: 14px;
    font-weight: 600;
    color: #64748b; /* Приглушенный цвет для неактивного таба */
    border-radius: 6px;
    cursor: pointer;
    transition: all 0.2s ease;
}

/* Эффект наведения на неактивный таб */
.oz-payer-tab:hover {
    color: #475569;
}

/* Активный выбранный переключатель */
.oz-payer-tab.active {
    background: #ffffff; /* Белая аккуратная плашка сверху */
    color: #1e293b;     /* Контрастный темный текст */
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.05); /* Легкая тень для объема */
}
/* Контейнер для сетки методов оплаты */
.oz-payment-slots {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 15px;
}

/* Плитка оплаты */
.oz-payment-slot {
    border: 1px solid #cbd5e1;
    border-radius: 8px;
    padding: 15px;
    cursor: pointer;
    transition: all 0.2s ease;
    background: #ffffff;
}
.oz-payment-slot:hover {
    border-color: #94a3b8;
}

/* Активное состояние плитки оплаты */
.oz-payment-slot.active {
    border-color: #f45c43;
    background: rgba(244, 92, 67, 0.02);
    box-shadow: 0 0 0 3px rgba(244, 92, 67, 0.1);
}

/* Скрываем нативный radio-кружок, т.к. выбираем всей плиткой */
.oz-hidden-radio {
    display: none;
}

/* Отключение курсора для единственного безналичного метода */
.oz-disabled-click {
    cursor: default;
}
.oz-disabled-click:hover {
    border-color: #f45c43;
}



/* Маркетплейсы */
.oz-marketplaces-block { margin-top: 20px; }
.marketplaces-title { font-size: 14px; font-weight: 600; margin-bottom: 10px; color: #707f94; }
.oz-market-links { display: flex; gap: 10px; }
a.market-btn {
    flex: 1; text-align: center; padding: 10px; border-radius: 8px; text-decoration: none; color: #fff; font-weight: 700; font-size: 13px;
}
a.market-btn:hover {
    text-decoration: none; color: #fff;
}
a.market-btn.wb { background: #8a2be2; }
a.market-btn.wb:hover { background: #6f14c4; }
a.market-btn.ozon { background: #005bff; }
a.market-btn.ozon:hover { background: #053997; }
a.market-btn.yam { background: #ffcc00; color: #000; }
a.market-btn.yam:hover { background: #b79305; color: #000; }

/* НИЖНИЙ БЛОК: ТАБЫ */
.oz-product-details { margin-top: 40px; padding-top: 10px; }
.oz-details-tabs { display: flex; gap: 24px; margin-bottom: 20px; border-bottom: 1px solid #e4e7ed; }
.tab-btn {
    background: none; border: none; padding: 10px 0; font-size: 16px; font-weight: 600; color: #707f94; cursor: pointer; position: relative;
}
.tab-btn.active { color: #1a1a1a; border: none; }
.tab-btn.active::after {
    content: ''; position: absolute; bottom: -1px; left: 0; width: 100%; height: 2px; background: #f45a44;
}
.oz-tab-content { display: none; line-height: 24px; }
.oz-tab-content.active { display: block; }
.oz-specs-table { width: 100%; max-width: 600px; border-collapse: collapse; }
.oz-specs-table td { padding: 10px 0; border-bottom: 1px solid #e4e7ed; font-size: 15px; }
.oz-specs-table tr td:first-child { color: #707f94; width: 40%; }

/* МОДАЛЬНОЕ ОКНО (ВИДЕО) */
.oz-modal { display: none; position: fixed; z-index: 9999; left: 0; top: 0; width: 100%; height: 100%; background: rgba(0,0,0,0.6); align-items: center; justify-content: center; }
.oz-modal-content { background: #fff; padding: 20px; border-radius: 16px; width: 90%; max-width: 700px; position: relative; }
.oz-modal-close { position: absolute; top: -20px; right: -25px; font-size: 28px; cursor: pointer; color: #707f94; }
.video-responsive-wrapper { position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden; border-radius: 8px; background: #000; }
.video-placeholder { position: absolute; top: 0; left: 0; width: 100%; height: 100%; display: flex; align-items: center; justify-content: center; color: #fff; text-align: center; padding: 20px; box-sizing: border-box; }

/* Контейнер для лоадера */
.video-loader-wrapper {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #111; /* Темный фон в тон видео */
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    z-index: 2; /* Выше, чем само видео */
    transition: opacity 0.3s ease;
}

.video-loader-wrapper p {
    color: #aaa;
    font-size: 14px;
    margin-top: 15px;
    font-family: sans-serif;
}

/* Сам спиннер (крутилка) */
.video-spinner {
    width: 50px;
    height: 50px;
    border: 4px solid rgba(255, 255, 255, 0.1);
    border-left-color: #005bff; /* Фирменный синий цвет */
    border-radius: 50%;
    animation: video-spin 1s linear infinite;
}

/* Анимация вращения */
@keyframes video-spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

/* Плеер изначально прячем, пока не загрузится */
#product-video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
}

/* Класс, который мы добавим через JS, когда видео загрузится */
#product-video.loaded {
    opacity: 1;
}

/* Контейнер всего блока */
.oz-specs-container {
    max-width: 600px; /* Ограничиваем по ширине, как на маркетплейсах */
    margin: 20px 0;
}

.oz-specs-title {
    font-size: 18px;
    font-weight: 700;
    margin-bottom: 20px;
    color: #1a1a1a;
}

/* Сетка списка */
.oz-specs-list {
    display: flex;
    flex-direction: column;
    gap: 12px; /* Расстояние между строками */
}

/* Строка-контейнер */
.oz-spec-row {
    display: flex;
    align-items: flex-end; /* Выравниваем точки и текст по нижней линии */
    width: 100%;
}





/* 1. Названию свойства принудительно даем первый порядок */
.oz-spec-name {
    color: #707f94;
    font-size: 14px;
    white-space: nowrap;
    order: 1; /* Встает самым первым слева */
}

/* 2. Точкам (псевдоэлементу) даем второй порядок */
.oz-spec-row::after {
    content: "";
    flex-grow: 1;
    border-bottom: 2px dotted #cbd5e1;
    margin: 0 4px 4px 8px;
    height: 0;
    order: 2; /* Железно встает посередине */
}

/* 3. Значению свойства даем третий порядок */
.oz-spec-value {
    color: #1a1a1a;
    font-size: 14px;
    font-weight: 500;
    padding-left: 4px;
    background: #fff;
    text-align: right;
    order: 3; /* Железно уходит в самый правый край */
}

/* КОНТАКТЫ */
/* Основной контейнер */
.contacts-page {
    max-width: 1200px;
    margin: 0 auto;
}

.contacts-page__title {
    font-size: 32px;
    margin-bottom: 30px;
    color: #222;
}

/* Сетка */
.contacts-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 40px;
}

/* Стили информационных блоков */
.contacts-block {
    margin-bottom: 25px;
}

.contacts-block__title {
    font-size: 18px;
    font-weight: bold;
    margin-bottom: 8px;
    color: #111;
}

.contacts-block__text {
    font-size: 16px;
    line-height: 1.5;
    margin: 4px 0;
    color: #444;
}

.contacts-block__subtext {
    font-size: 14px;
    color: #777;
    line-height: 1.4;
    margin-top: 4px;
}

.contacts-link {
    color: #0066cc;
    text-decoration: none;
    transition: color 0.2s ease;
}

.contacts-link:hover {
    color: #004499;
}

/* Кнопки мессенджеров */
.contacts-messengers {
    display: flex;
    gap: 12px;
    margin-top: 10px;
}

.messenger-btn {
    display: inline-block;
    padding: 10px 20px;
    border-radius: 4px;
    color: #fff;
    text-decoration: none;
    font-weight: 500;
    font-size: 14px;
    transition: transform 0.2s ease, opacity 0.2s ease;
}

.messenger-btn:hover {
    transform: translateY(-2px);
    opacity: 0.9;
}

.messenger-btn--wa {
    background-color: #25D366;
}

.messenger-btn--tg {
    background-color: #0088cc;
}

.contacts-block--requisites {
    margin-top: 40px;
    padding-top: 20px;
    border-top: 1px solid #eee;
}

/* Блок интерактивной карты */
.contacts-map__render {
    width: 100%;
    height: 450px;
    background-color: #f0f0f0;
    border-radius: 8px;
    overflow: hidden;
    border: 1px solid #ddd;
}

/* Раздел путеводителя */
.route-guide {
    margin-top: 50px;
    padding-top: 30px;
    border-top: 2px solid #f0f0f0;
}

.route-guide__title {
    font-size: 24px;
    margin-bottom: 8px;
    color: #111;
}

.route-guide__subtitle {
    font-size: 15px;
    color: #666;
    margin-bottom: 25px;
}

/* Табы / Переключатели */
.route-tabs {
    display: flex;
    gap: 10px;
    margin-bottom: 30px;
    border-bottom: 1px solid #ddd;
    padding-bottom: 10px;
}

.route-tabs__btn {
    padding: 12px 24px;
    font-size: 15px;
    font-weight: 500;
    background: #f5f5f5;
    border: 1px solid #ddd;
    border-radius: 4px;
    cursor: pointer;
    transition: all 0.2s ease;
    color: #555;
}

.route-tabs__btn:hover {
    background: #ebeeef;
}

.route-tabs__btn.is-active {
    background: #0066cc;
    color: #fff;
    border-color: #0066cc;
}

/* Панели с контентом */
.route-pane {
    display: none;
}

.route-pane.is-active {
    display: block;
}

.route-pane__grid {
    display: grid;
    grid-template-columns: 1fr 1.2fr;
    gap: 40px;
}

/* Адаптивное видео (16:9) */
.route-video__title, .route-steps__title {
    font-size: 16px;
    font-weight: bold;
    margin-bottom: 15px;
    color: #333;
}

.route-video__wrapper {
    position: relative;
    width: 100%;
    border-radius: 6px;
    overflow: hidden;
    border: 1px solid #ddd;
    background: #000;
    aspect-ratio: 16 / 9; /* Современное CSS-свойство для удержания пропорций */
}

/* Стили для самого плеера */
.route-video__player {
    width: 100%;
    height: 100%;
    object-fit: cover; /* Видео идеально заполняет рамку без черных полей */
    display: block;
}



/* Фото-галерея шагов */
.route-gallery {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.route-photo {
    display: flex;
    gap: 15px;
    align-items: flex-start;
    background: #fafafa;
    padding: 10px;
    border-radius: 6px;
    border: 1px solid #eee;
}

.route-photo__img {
    width: 120px;
    height: 80px;
    object-fit: cover; /* Картинки шагов не искажаются */
    border-radius: 4px;
    border: 1px solid #ddd;
    flex-shrink: 0;
}

.route-photo__desc {
    font-size: 14px;
    line-height: 1.4;
    color: #444;
}

/* Мобильная адаптивность */
@media (max-width: 992px) {
    .route-pane__grid {
        grid-template-columns: 1fr;
        gap: 30px;
    }

    .route-tabs {
        flex-direction: column;
    }
}

/* Адаптивность для мобильных устройств */
@media (max-width: 768px) {
    .contacts-grid {
        grid-template-columns: 1fr;
        gap: 30px;
    }

    .contacts-map__render {
        height: 300px;
    }

    .contacts-messengers {
        flex-direction: column;
    }

    .messenger-btn {
        text-align: center;
    }
}

/* Технические требования */
.req-page {
    max-width: 1200px;
    margin: 0 auto;
    padding: 20px;
}

.req-page__title {
    font-size: 32px;
    margin-bottom: 10px;
    color: #111;
}

.req-page__subtitle {
    font-size: 16px;
    color: #666;
    margin-bottom: 40px;
    line-height: 1.5;
}

.req-section {
    margin-bottom: 50px;
}

.req-section__title {
    font-size: 22px;
    font-weight: bold;
    margin-bottom: 20px;
    color: #222;
    padding-bottom: 10px;
    border-bottom: 2px solid #eee;
}

/* Сетка карточек "Хорошо / Плохо" */
.req-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 30px;
}

.req-card {
    padding: 25px;
    border-radius: 6px;
    border: 1px solid #ddd;
}

.req-card--danger {
    background-color: #fff5f5;
    border-color: #feb2b2;
}

.req-card--success {
    background-color: #f0fff4;
    border-color: #9ae6b4;
}

.req-card__title {
    font-size: 18px;
    font-weight: bold;
    margin-bottom: 15px;
}

.req-card--danger .req-card__title { color: #c53030; }
.req-card--success .req-card__title { color: #22543d; }

.req-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.req-list li {
    position: relative;
    padding-left: 25px;
    margin-bottom: 10px;
    font-size: 15px;
    line-height: 1.4;
    color: #2d3748;
}

.req-list--minus li::before {
    content: "✕";
    position: absolute;
    left: 0;
    color: #e53e3e;
    font-weight: bold;
}

.req-list--plus li::before {
    content: "✓";
    position: absolute;
    left: 0;
    color: #38a169;
    font-weight: bold;
}




/* АДАПТИВНОСТЬ */
@media (max-width: 768px) {
    .oz-product-main { grid-template-columns: 1fr; gap: 20px; }
    .oz-visual-block { flex-direction: column-reverse; height: auto; }
    .oz-thumbs-gallery { flex-direction: row; width: 100%; }
    .oz-main-photo-wrapper { height: 350px; }
    .oz-action-buttons { grid-template-columns: 1fr; }
}

/* КОРЗИНА */
/* Контейнер управления элементами корзины в карточке */
.product-cart-control {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    margin-top: 15px;
}

/* Поле ввода количества товара */
.product-cart-control .cart-quantity-field {
    width: 70px;
    height: 40px;
    padding: 5px;
    border: 1px solid #ccc;
    border-radius: 4px;
    text-align: center;
}

/* Кнопка добавления в корзину */
.product-cart-control .btn-add-to-cart {
    height: 40px;
    padding: 0 20px;
    background-color: #0077FF; /* Или ваш базовый цвет бренда */
    color: #ffffff;
    border: none;
    border-radius: 4px;
    font-size: 14px;
    font-weight: 500;
    cursor: pointer;
    transition: background-color 0.2s ease;
}

/* Состояние при наведении */
.product-cart-control .btn-add-to-cart:hover {
    background-color: #0066DD;
}

/* Состояние успешного добавления (переключается через JS) */
.product-cart-control .btn-add-to-cart.added {
    background-color: #28a745;
}


#mainmenu {
    font-family: "Montserrat";
    float: right;
    font-size: 14px;
    font-weight: bold;
}

#mainmenu.style-2 > li{
	text-transform:none;
	font-size:13px;
}

#mainmenu ul {
    float: right;
    margin: 0px 0px;
    padding: 0px 0px;
    height: 30px;
}

#mainmenu li {
    margin: 0px 0px;
    padding: 0px 0px;
    float: left;
    display: inline;
    list-style: none;
    position: relative;
}

#mainmenu a {
    display: inline-block;
    padding: 0px 0px 18px 20px;
    line-height: 35px;
    text-decoration: none;
    color: #fff;
    text-align: center;
    outline: none;
}

.header-light #mainmenu>li>a {
    color: #222;
}

#mainmenu li a:after {
    float: right;
    position: relative;
    font-family: "FontAwesome";
    content: "\f111";
    font-size: 6px;
    margin-left: 20px;
    margin-top: 0px;
    color: #f7c51e;
}

#mainmenu li:last-child a:after {
    display: none;
}

#mainmenu.no-separator li a:after {
    font-size: 0px;
}

#mainmenu.line-separator li a:after {
    content: "/";
    font-size: 14px;
}

#mainmenu.circle-separator li a:after {
    content: "\f10c";
    font-size: 9px;
}

#mainmenu.strip-separator li a:after {
    content: "\f068";
    font-size: 9px;
}

#mainmenu.plus-separator li a:after {
    content: "\f067";
    font-size: 11px;
}

#mainmenu.square-separator li a:after {
    content: "\f096";
    font-size: 11px;
}

#mainmenu.heart-separator li a:after {
    content: "\f004";
    font-size: 8px;
}

#mainmenu li li {
    font-weight: normal;
    border-bottom: solid 1px #eeeeee;
}

#mainmenu li li:last-child {
    border-bottom: none;
}

#mainmenu li li a {
    padding: 2px 15px 2px 15px;
    background: #222327;
    border-top: none;
    color: #ccc;
    width: 100%;
    border-left: none;
    text-align: left;
}

#mainmenu li li a:hover {
    color: #111;
}

#mainmenu li li a:after {
    content: none !important;
}

#mainmenu li li li a {
    padding: 2px 15px 2px 15px;
    background: #222327;
}

#mainmenu li li a:hover,
#mainmenu ul li:hover>a {
    color: #111;
    background: #1a8b49;
}

#mainmenu li ul {
    width: 210px;
    height: auto;
    position: absolute;
    top: 44px;
    left: 0px;
    z-index: 10;
    visibility: hidden;
    opacity: 0;
}

#mainmenu li li {
    display: block;
    float: none;
    text-transform: none;
}

#mainmenu li>ul {
    margin-top: 30px;
}

#mainmenu li:hover>ul {
    visibility: visible;
    opacity: 1;
    margin-top: 0px;
}

#mainmenu li ul ul {
    left: 100%;
    top: 0px;
}

#mainmenu li ul ul li a {
    background: #202020;
}

#mainmenu li:hover>ul {
    color: #1a8b49;
}

#mainmenu select {
    padding: 10px;
    height: 36px;
    font-size: 14px;
    border: none;
    background: #ff4200;
    color: #212121;
}

#mainmenu select option {
    padding: 10px;
}

#mainmenu .btn-type {
    padding: 0;
    margin: 0;
}

#mainmenu .btn-type a {
    background: #eee;
    padding: 0;
    margin: 0;
}


#mainmenu > li ul.mega{
	position:fixed;
	left:0;
	height:0%;
	width:100%;
	margin-top:30px;
	visibility: hidden;
	opacity: 0;
	overflow:hidden;
}
#mainmenu > li:hover ul.mega{
	visibility: visible;
	opacity: 1;
}
#mainmenu li ul.mega > li{
	width:100%;
}
#mainmenu li ul.mega li.title{
		padding:0px 10px 15px 10px;
		text-align:left;
		color:#fff;
		font-weight:bold;
}
#mainmenu li ul.mega > li ul{
	position:static;
	visibility: visible;
	opacity: 1;
	left:0;
	float:none;
	width:100%;
}
#mainmenu li ul.mega .inner{
	background:#404146;
}
#mainmenu ul.mega > li ul li{
	margin:0;
	padding:0;
}

#mainmenu li ul.mega .menu-content{
	background:#404146;
	padding:30px;
}

#mainmenu li ul.mega a.hover:hover{
	opacity:.5;
	background:none;
}
#mainmenu li ul.mega a:hover {
	-webkit-box-shadow: 8px 8px 40px 0px rgba(0,0,0,0.2);
	-moz-box-shadow: 8px 8px 40px 0px rgba(0,0,0,0.2);
	box-shadow: 8px 8px 40px 0px rgba(0,0,0,0.2);
}
#mainmenu li ul.mega a,
#mainmenu li ul.mega img{
	border-radius:3px;
	-moz-border-radius:3px;
	-webkit-border-radius:3px;
}
#mainmenu li ul.mega a:hover img{
	opacity:.5;
}
header.header-mobile #mainmenu > li ul.mega{
	visibility: visible;
	opacity: 1;
}
header:not(.header-mobile) #mainmenu > li:hover ul.mega{
	height:auto;
}

a.no-padding{
	padding:0 !important;
}

.personal-w, .personal {text-align:right;}
.personal-w img, .personal img {height:30px; margin:0 20px 0 0;}

.personal {display:none; padding-top:15px;}
.smaller .personal {display:block;}
.smaller .personal-w {display:none;}

.header-mobile .personal-w {display:none;}
.header-mobile .personal {display:block; padding-top:10px;}
.header-mobile .personal-w img, .header-mobile .personal img {height:28px; margin:0 15px 0 0;}
/* menu toggle for mobile */

#menu-btn {
    display: none;
    float: right;
    margin-top: 5px;
    width: 36px;
    height: 36px;
    padding: 6px;
    text-align: center;
    cursor: pointer;
}

#menu-btn:before {
    font-family: FontAwesome;
    content: "\f0c9";
    font-size: 24px;
}

#menu-btn:hover {
    background: #fff;
}

#menu-btn:hover:before {
    color: #222;
}

header.header-mobile.header-light,
header.header-mobile.header-light #menu-btn,
header.header-mobile.header-light #menu-btn:hover {
    background: none;
}

header.header-mobile.header-light #menu-btn {
    color: #222;
}


/* ================================================== */


/* content */


/* ================================================== */

#content {
    width: 100%;
    background: #fff;
    padding: 90px 0 90px 0;
    z-index: 100;
}


/* ================================================== */


/* section */


/* ================================================== */

section {
    padding: 100px 0 100px 0;
    position: relative;
	background:#ffffff;
}

.section{
	padding:120px 0 120px;
}

section,#subheader{
-webkit-background-size: 100%;
-moz-background-size: 100%;
-o-background-size: 100%;
background-size: 100%;
}

.img-fluid {
  width: 100%;
}

.section-fixed {
    position: fixed;
    width: 100%;
    min-height: 100%;
    height: auto;
}

.full-height {
    overflow: hidden !important;
}


/* ================================================== */


/* footer */


/* ================================================== */

footer {
    background: #ffffff;
    padding: 30px 0 30px 0;
}

footer h3 {
    color: #fff;
    font-size: 20px;
    text-transform: none;
    font-weight: normal;
}

footer a:hover {
    color: #212121;
}



.subfooter {
    font-size: 12px;
    background: #282828;
    margin-top: 80px;
    padding: 30px 0 20px 0;
}






header.header-mobile {
	position:fixed;
	top:0;
    height: 70px;
    background: #fff;
}

header.header-mobile #logo {
    margin-top: -3px;
}

header.header-mobile .logo {
    display: none;
}

header.header-mobile .btn-rsvp {
    padding-top: 40px;
    height: 90px;
}

header.header-mobile .logo-2 {
    display: inline-block !important;
    margin-top:-3px;
}



.inner-header-banners {margin-top:70px; margin-bottom:15px;}






/* ================================================== */


/* contact form */


/* ================================================== */

.error {
    clear: both;
    display: none;
    color: #e73c37;
    padding-top: 20px;
}

.success {
    clear: both;
    display: none;
    color: #96c346;
    padding-top: 20px;
}

.error img {
    vertical-align: top;
}

.full {
    width: 98%;
}

.de_form input[type=text],
.de_form textarea,
.de_form input[type=email],
#search,
.de_form select {
    font-size: 14px;
    padding: 10px;
    margin-bottom: 20px;
    color: #212121;
	border:none;
    height: auto;
    box-shadow: none;
    -moz-box-shadow: none;
    -webkit-box-shadow: none;
}

.de_form input[type=text],
.de_form textarea,
.de_form textarea:focus,
.de_form input[type=email],
#search,
.de_form select {
    background: rgba(0,0,0,.05);
}

.de_form.form_underline input[type=text],
.de_form.form_underline textarea,
.de_form.form_underline input[type=email],
#search,
.de_form.form_underline select {
    font-size: 14px;
    padding: 10px;
    margin-bottom: 20px;
    color: #212121;
    border: solid 1px #cccccc;
    background: none;
    height: auto;
    box-shadow: none;
    -moz-box-shadow: none;
    -webkit-box-shadow: none;
}

.de_form textarea.form-control {
    height: 165px;
}

.text-light .de_form.form_underline input[type=text],
.text-light .de_form.form_underline textarea,
.text-light .de_form.form_underline input[type=email],
#search,
.text-light .de_form select {
    color: #ffffff;
    border: solid 1px rgba(255, 255, 255, .2);
}

.text-light ::-webkit-input-placeholder {
    /* Edge */
    color: #ffffff;
}

.text-light :-ms-input-placeholder {
    /* Internet Explorer 10-11 */
    color: #ffffff;
}

.text-light ::placeholder {
    color: #ffffff;
}

.form-underline input[type=text],
.form-underline textarea,
.form-underline input[type=email],
.form-underline select {
    padding: 10px 0 10px 0;
    margin-bottom: 20px;
    border: none;
    border-bottom: solid 2px #bbbbbb;
    background: none;
    border-radius: 0 !important;
    height: auto;
    box-shadow: none;
    -moz-box-shadow: none;
    -webkit-box-shadow: none;
}

.form-underline select {
    -webkit-appearance: none;
    -webkit-border-radius: 0px;
    -moz-appearance: none;
    appearance: none;
    background: url('/templates/merchmaker/images/ui/arrow-down-form.png') no-repeat 98% 60%;
}


.form-underline input[type=text],
.form-underline textarea,
.form-underline input[type=email],
.form-underline select {
    color: #333;
    border-bottom: solid 1px #bbb;
}

.error_input {
    border: solid 1px #D31E2B !important;
}




.arrow-up,
.arrow-down {
    width: 0;
    height: 0;
    border-left: 40px solid transparent;
    border-right: 40px solid transparent;
    border-bottom: 40px solid #fff;
    position: fixed;
    margin-left: auto;
    margin-right: auto;
    left: 0;
    right: 0;
    bottom: 0;
    cursor: pointer;
    z-index: 101;
}

.arrow-down {
    border-top: 40px solid #fff;
    border-bottom: none;
    position: fixed;
    z-index: 102;
    top: -40px;
}

.arrow-up:before {
    font-family: "FontAwesome";
    font-size: 20px;
    content: "\f067";
    color: #222;
    position: relative;
    top: 12px;
    margin: 0 0 0 -8px !important;
}

.arrow-down:before {
    font-family: "FontAwesome";
    font-size: 20px;
    content: "\f068";
    color: #222;
    position: relative;
    top: -35px;
    margin: 0 0 0 -8px !important;
}





/* 1. Убираем контур при обычном клике мышкой */
button:focus {
    outline: none;
}

/* 2. Но красиво подсвечиваем кнопку, если на нее перешли КЛАВИАТУРОЙ */
button:focus-visible {
    outline: 2px solid #005bff; /* Наш фирменный синий цвет */
    outline-offset: 2px; /* Небольшой отступ контура от самой кнопки */
}

/* ------------------------------ */

a {
    color: #1a1a1a;
    text-decoration: none;
}

a:hover {
    color: #1a1a1a;
    text-decoration: none;
}







.front img {
    margin:0 0 15px 0;
}

.de_light .info a {
    color: #fff;
}

.de_light .info a:hover {
    color: #eee;
    text-decoration: none;
}


a.btn-custom:hover,
.btn-custom:hover {
    color: #fff;
    opacity: .8;
    -webkit-box-shadow: 8px 8px 40px 0px rgba(0, 0, 0, 0.3);
    -moz-box-shadow: 8px 8px 40px 0px rgba(0, 0, 0, 0.3);
    box-shadow: 8px 8px 40px 0px rgba(0, 0, 0, 0.3);
}




.btn-custom {
    padding: 8px 10px 8px 10px;
    font-weight: bold;
    text-transform: uppercase;
}

.btn-custom.btn-small {
    padding: 5px 20px 5px 20px;
    font-weight: bold;
    text-transform: uppercase;
}




a.btn-custom,
.btn-custom,
a.btn-slider,
.btn-slider {
    font-family: "Montserrat";
    font-size: 12px;
    min-width: 120px;
}

a.btn-custom,
.btn-custom {
    background: #eee !important;
    color: #000 !important;
    border-radius: 40px;
    padding: 10px 30px 10px 30px;
    min-width: 120px;
    text-decoration: none;
}

a.btn-custom.active-imya, a.btn-custom.active-foto, a.btn-custom.active-sale {background: #ff5311 !important; color:#fff !important;}

a.btn-border,
.btn-border {
    padding: 10px 30px 10px 30px;
    border: solid 1px rgba(255, 255, 255, 1);
    background: none;
    border-radius: 40px;
    color: #fff;
    font-family: "Montserrat";
    font-weight: bold;
    font-size: 13px;
    text-transform: uppercase;
    text-decoration: none;
}

input.btn-border {
    padding: 5px 30px 5px 30px;
}

a.btn-border:hover {
    background: #ffffff;
}

.btn-rsvp {
    color: #ffffff !important;
    cursor: pointer;
    text-align: center;
    float: right;
    display: inline-block;
    text-align: center;
    position: relative;
    right: 0;
    top: -30px;
    min-width: auto;
    background: #333;
    padding: 60px 15px 15px 15px;
    font-size: 12px;
    font-weight: bold;
    text-decoration: none;
}

.btn-rsvp:hover,
.btn-close:hover {
    opacity: .8;
}

.btn-close {
    color: #ffffff;
    cursor: pointer;
    text-align: center;
    display: block;
    text-align: center;
    width: 60px;
    height: 60px;
    background: #333;
    font-size: 32px;
    font-weight: bold;
    text-decoration: none;
    margin: 0 auto;
    padding-top: 12px;
    position: absolute;
    left: 0;
    right: 0;
}

a.btn-fullwidth {
    display: block;
    withd: 100%;
    text-align: center;
    background: #333;
    color: #fff;
    text-decoration: none;
    padding: 40px;
    text-transform: uppercase;
    font-weight: bold;
}

a.btn-fullwidth:hover {
    background: #eee;
}




.play-button {
    border-radius: 60px;
    -moz-border-radius: 60px;
    -webkit-border-radius: 60px;
    color: #fff;
    text-decoration: none !important;
    border: solid 5px rgba(255, 255, 255, .3);
    display: inline-block;
    text-align: center;
    width: 80px;
    height: 80px;
    padding-top: 22px;
    padding-left: 5px;
}

.play-button:before {
    font-family: "FontAwesome";
    font-size: 20px;
    content: "\f04b";
    position: relative;
    color: #fff;
}

.play-button:hover {
    border: solid 5px rgba(255, 255, 255, 1);
}

.play-button.dark {
    color: #222;
    border: solid 5px rgba(0, 0, 0, .1);
}

.play-button.dark:before {
    color: #222;
}

.play-button.dark:hover {
    border: solid 5px rgba(0, 0, 0, .5);
}

.text-light .play-button {
    border-radius: 60px;
    -moz-border-radius: 60px;
    -webkit-border-radius: 60px;
    color: #fff;
    text-decoration: none !important;
    border: solid 5px rgba(255, 255, 255, .3);
    display: inline-block;
    text-align: center;
    width: 80px;
    height: 80px;
    padding-top: 22px;
    padding-left: 5px;
}

.text-light .play-button:before {
    font-family: "FontAwesome";
    font-size: 20px;
    content: "\f04b";
    position: relative;
    color: #fff;
}

.text-light .play-button.dark {
    color: #fff;
    border: solid 5px rgba(255, 255, 255, .3);
}

.text-light .play-button.dark:before {
    color: #fff;
}

.text-light .play-button.dark:hover {
    border: solid 5px rgba(255, 255, 255, 1);
}




.spacer-single {
    width: 100%;
    height: 30px;
    display: block;
    clear: both;
}

.spacer-double {
    width: 100%;
    height: 60px;
    display: block;
    clear: both;
}

.spacer-half {
    width: 100%;
    height: 15px;
    display: block;
    clear: both;
}
.break {clear:both;}

hr {
    display: block;
    clear: both;
    border-top: solid 1px #ddd;
    margin: 40px 0 40px 0;
}











/* heading */


/* ------------------------------ */

h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: "Montserrat";
    font-weight: 600;
    color: #212121;
}

footer h1,
footer h2,
footer h3,
footer h4,
footer h5,
footer h6 {
    color: #fff;
}

h1,
h2.text-light,
footer h3,
footer h4,
footer h5,
footer h6 {
    color: #ff5311;
}

h1 {
    color: #1a1a1a;
    font-size: 30px;
    font-weight: 700;
    margin-bottom: 10px; /* Уменьшаем отступ снизу */
}

/* Выводим кубики отдельной строкой под заголовком */
h1::after {
    content: '';
    display: block;
    width: 44px;
    height: 8px;
    margin-top: 12px; /* Отступ от текста до кубиков */
    background: linear-gradient(90deg,
        #ff5311 0px, #ff5311 8px,   /* 1-й: оранжевый (начинаем с бренда) */
        transparent 8px, transparent 13px,
        #1a1a1a 13px, #1a1a1a 21px, /* 2-й: графит */
        transparent 21px, transparent 26px,
        #2e7d32 26px, #2e7d32 34px  /* 3-й: зеленый (выгода) */
    ) no-repeat;
}

h1.big::after {
    margin-top: 0; /* Отступ от текста до кубиков */
    background: none;
}
.err p {color:#ff5311;}
.text-light {
    color: #bbb;
}

.text-light h1,
.text-light h2,
.text-light h3,
.text-light h4,
.text-light h5,
.text-light h6 {
    color: #fff !important;
}

.text-white {
    color: #ffffff;
}

.text-white h1,
.text-white h2,
.text-white h3,
.text-white h4,
.text-white h5,
.text-white h6 {
    color: #ffffff;
}


/* feature box style 1 */

.feature-box i {
    border: none;
}

.feature-box i {
	font-size:32px;
    margin-bottom: 20px;
}

.feature-box.style-2 i{
	text-align:center;
	font-size:24px;
	background:#333333;
	padding:12px 0;
	width:48px;
	height:48px;
	border-radius:3px;
	-moz-border-radius:3px;
	-webkit-border-radius:3px;
}

.feature-box.left.style-2 .text {
    padding-left: 70px;
}

.feature-box:hover .inner i {
    color: #fff;
}

.feature-box.left i {
    position: absolute;
}

.feature-box.left .text {
    padding-left: 60px;
}

.feature-box-style-1 {
    position: relative;
    text-align: center;
    overflow: hidden;
    border: solid 1px #eee;
    border-radius: 10px;
}

.text-light .feature-box-style-1 {
    border-color: rgba(255, 255, 255, .05);
}

.feature-box-style-1 h3 {
    margin-bottom: 5px;
}

.feature-box-style-1 .front {
    padding: 60px 0 60px 0;
}

.feature-box-style-1 .front span {
    font-size: 14px;
}

.feature-box-style-1 .info {
	display:table;
    color: #ffffff;
    position: absolute;
    width: 100%;
	height:100%;
    top: 100%;
    padding: 30px;
    opacity: 0;
}

.feature-box-style-1 .info p{
	display:table-cell;
	vertical-align:middle;
}

.feature-box-style-1 i {
    text-shadow: none;
    width: 68px;
    height: 68px;
    text-align: center;
    text-align: center;
    font-size: 72px !important;
    margin-bottom: 20px;
}

.feature-box-style-1.invert,
.feature-box-style-1.invert h3,
.feature-box-style-1.invert i {
    color: #ffffff;
}

.feature-box-style-1:hover .info {
    top: 0;
    opacity: 1;
}

.feature-box-style-1:hover .front {
    opacity: 0;
}

.shadow,
.feature-box-style-1:hover {
    border: none;
    -webkit-box-shadow: 8px 8px 40px 0px rgba(0, 0, 0, 0.3);
    -moz-box-shadow: 8px 8px 40px 0px rgba(0, 0, 0, 0.3);
    box-shadow: 8px 8px 40px 0px rgba(0, 0, 0, 0.3);
}

.f-hover {
    -o-transition: .5s;
    -ms-transition: .5s;
    -moz-transition: .5s;
    -webkit-transition: .5s;
    transition: .5s;
    outline: none;
}


/* feature-box style 2 */

.feature-box-style-1-2 {
    margin-bottom: 30px;
}

.feature-box-style-1-2 .text {
    padding-left: 48px;
}

.feature-box-style-1-2 i {
    text-shadow: none;
    color: #212121;
    font-size: 24px;
    text-align: center;
    position: absolute;
}

.feature-box-style-1-2 i.dark {
    background-color: #333333;
}

.feature-box-style-1-2 h3 {
    line-height: normal;
    margin-bottom: 5px;
}

.feature-box-style-1-2.no-bg h2 {
    padding-top: 12px;
}

.feature-box-style-1-2.no-bg .inner,
.feature-box-style-1-2.no-bg .inner:hover {
    padding: 0;
    background: none;
}


/* feature-box image style 3 */

.feature-box-image-2 {
    margin-bottom: 30px;
}

.feature-box-image-2 .text {
    padding-left: 100px;
}

.feature-box-image-2 img {
    position: absolute;
}

.feature-box-image-2 i {
    background-color: #333333;
}

.feature-box-image-2 h3 {
    line-height: normal;
    margin-bottom: 5px;
}

.feature-box-image-2.no-bg h2 {
    padding-top: 12px;
}

.feature-box-image-2.no-bg {}

.feature-box-image-2.no-bg .inner,
.feature-box-image-2.no-bg .inner:hover {
    padding: 0;
    background: none;
}


/* with image */

.feature-box-image img {
    width: 100%;
    margin-bottom: 10px;
    height: auto;
}

.feature-box-image h3 {
    line-height: normal;
    margin-bottom: 5px;
    font-size: 20px;
    font-weight: bold;
}


/* feature-box image style 4 */

.feature-box-big-icon {
    text-align: center;
}

.feature-box-big-icon .text {}

.feature-box-big-icon i {
    float: none;
    display: inline-block;
    text-shadow: none;
    color: #212121;
    font-size: 40px;
    padding: 40px;
    width: 120x;
    height: 120x;
    text-align: center;
    border: none;
    border-radius: 10px;
    -moz-border-radius: 10px;
    -web-kit-border-radius: 10px;
    background: #333;
    margin-bottom: 40px;
    cursor: default;
}

.feature-box-big-icon i:after {
    content: "";
    position: absolute;
    margin: 75px 0 0 -40px;
    border-width: 20px 20px 0 20px;
    /*size of the triangle*/
    border-style: solid;
}

.feature-box-big-icon:hover i,
.feature-box-big-icon:hover i:after {
    -o-transition: .5s;
    -ms-transition: .5s;
    -moz-transition: .5s;
    -webkit-transition: .5s;
    transition: .5s;
}

.feature-box-big-icon:hover i {
    background: #333;
}

.feature-box-big-icon:hover i:after {
    border-color: #333 transparent;
}



/* list */

.ul-style-2 {
    padding: 0;
    list-style: none;
}

.ul-style-2 li {
    margin: 5px 0 5px 0;
}

.ul-style-2 li:before {
    font-family: "FontAwesome";
    content: "\f00c";
    margin-right: 15px;
}


/* pagination */


/* ======================================== */

.pagination li a {
    font-size: 12px;
    color: #888;
    border: solid 1px #eee;
    border-right: none;
    background: none;
    padding: 15px 20px 15px 20px;
    border-radius: 0;
    -moz-border-radius: 0;
    -webkit-border-radius: 0;
}

.pagination li a i.fa {
    font-size: 13px; padding:2px 0 2px;
}
.pagination li:last-child a {
    border-right: solid 1px #eee;
}

ul.breadcrumb {background-color: #fff; padding-left:0px; margin:0;}
.breadcrumb a { color: #1a1a1a; text-decoration: none; }
.breadcrumb .current { color: #1a1a1a; font-weight: 700;}



/* preloader */


/* ================================================== */

#preloader {
    position: fixed;
    z-index: 20000;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(255, 255, 255, .8);
    text-align: center;
}

.preloader1 {
    width: 60px;
    height: 60px;
    display: inline-block;
    padding: 0px;
    border-radius: 100%;
    border: 2px solid;
    border-top-color: rgba(0, 0, 0, 0.65);
    border-bottom-color: rgba(0, 0, 0, 0.1);
    border-left-color: rgba(0, 0, 0, 0.1);
    border-right-color: rgba(0, 0, 0, 0.1);
    -webkit-animation: preloader1 0.9s ease-in infinite;
    animation: preloader1 0.9s ease-in infinite;
    position: absolute;
    margin-left: -30px;
    top: 45%;
}

@keyframes preloader1 {
    from {
        transform: rotate(0deg);
    }
    to {
        transform: rotate(360deg);
    }
}

@-webkit-keyframes preloader1 {
    from {
        -webkit-transform: rotate(0deg);
    }
    to {
        -webkit-transform: rotate(360deg);
    }
}

.preloader-wrap {
    position: fixed;
    top: 0;
    left: 0;
    display: table;
    width: 100%;
    height: 100%;
}

.spinner {
    display: table-cell;
    vertical-align: middle;
    margin: 100px auto 0;
    width: 70px;
    text-align: center;
}

.spinner>div {
    width: 18px;
    height: 18px;
    background-color: #333;
    border-radius: 100%;
    display: inline-block;
    -webkit-animation: sk-bouncedelay 1.4s infinite ease-in-out both;
    animation: sk-bouncedelay 1.4s infinite ease-in-out both;
}

.spinner .bounce1 {
    -webkit-animation-delay: -0.32s;
    animation-delay: -0.32s;
}

.spinner .bounce2 {
    -webkit-animation-delay: -0.16s;
    animation-delay: -0.16s;
}

@-webkit-keyframes sk-bouncedelay {
    0%,
    80%,
    100% {
        -webkit-transform: scale(0)
    }
    40% {
        -webkit-transform: scale(1.0)
    }
}

@keyframes sk-bouncedelay {
    0%,
    80%,
    100% {
        -webkit-transform: scale(0);
        transform: scale(0);
    }
    40% {
        -webkit-transform: scale(1.0);
        transform: scale(1.0);
    }
}


/* progress bar */


/* ================================================== */

.de-progress {
    width: 100%;
    height: 4px;
    background: #ddd;
    margin-top: 20px;
    margin-bottom: 20px;
}

.de-progress .progress-bar {
    background: #333;
    height: 4px;
    box-shadow: none !important;
}

.de-progress {
    background: #eee;
}

.skill-bar {
    margin-bottom: 40px;
}


/* social-icons */


/* ================================================== */

.social-icons {
    display: inline-block;
}

.social-icons i {
    text-shadow: none;
    color: #fff;
    padding: 12px 10px 8px 10px;
    width: 34px;
    height: 34px;
    text-align: center;
    font-size: 16px;
    border-radius: 60px;
    -moz-border-radius: 60px;
    -webkit-border-radius: 60px;
    margin: 0 5px 0 5px;
}

.sc-icon i {
    text-shadow: none;
    color: #fff;
    padding: 10px 8px 10px 8px;
    width: 30px;
    height: 30px;
    text-align: center;
    font-size: 16px;
    border-radius: 60px;
    -moz-border-radius: 60px;
    -webkit-border-radius: 60px;
    margin: 0 3px 0 3px;
}


.social-icons i.fa-google-plus {
    padding: 12px 14px 10px 6px;
}

.social-icons i:hover {
    background: #fff;
    border-color: #212121;
    color: #333;
}

.social-icons.big i {
    font-size: 26px;
    width: auto;
    height: auto;
    margin: 0 15px 0 15px;
}

.social-icons.big i:hover {
    background: none;
}

.fa-vk {
    background: #3e5a9b;
}

.fa-youtube-play {
    background: #ff0100;
}

.fa-telegram {
    background: #0075ad;
}
svg{
	fill: currentcolor;
	width: 15px;
	height: 15px;
}
img.svg{
	width: 15px;
	height: 15px;
}

.social{
	margin: 0px;
	list-style-type: none;
	position: relative;
	top: 0px;
}
.social li{
	margin: 5px 16px 0px 0px;
	display: inline-block;
}
.social li:last-child {margin-right: 0px;}
.social li a{
	text-decoration: none;
	color: #000000;
}
.social-back li a{
	text-decoration: none;
	color: #ffffff;
}

.social li .svg, .social-back li .svg{
	width: 32px !important;
	height: 32px !important;
}







/* margin top */

.mt0 {
    margin-top: 0;
}

.mt10 {
    margin-top: 10px;
}

.mt20 {
    margin-top: 20px;
}

.mt30 {
    margin-top: 30px;
}

.mt40 {
    margin-top: 40px;
}

.mt50 {
    margin-top: 50px;
}

.mt60 {
    margin-top: 60px;
}

.mt70 {
    margin-top: 70px;
}

.mt80 {
    margin-top: 80px;
}

.mt90 {
    margin-top: 90px;
}

.mt100 {
    margin-top: 100px;
}


/* margin bottom */

.mb0 {
    margin-bottom: 0;
}

.mb10 {
    margin-bottom: 10px;
}

.mb20 {
    margin-bottom: 20px;
}

.mb30 {
    margin-bottom: 30px;
}

.mb40 {
    margin-bottom: 40px;
}

.mb50 {
    margin-bottom: 50px;
}

.mb60 {
    margin-bottom: 60px;
}

.mb70 {
    margin-bottom: 70px;
}

.mb80 {
    margin-bottom: 80px;
}

.mb90 {
    margin-bottom: 90px;
}

.mb100 {
    margin-bottom: 100px;
}

.mb0 {
    margin-bottom: 0;
}

.mb10 {
    margin-bottom: 10px;
}

.mb20 {
    margin-bottom: 20px;
}

.mb30 {
    margin-bottom: 30px;
}

.mb40 {
    margin-bottom: 40px;
}

.mb50 {
    margin-bottom: 50px;
}

.mb60 {
    margin-bottom: 60px;
}

.mb70 {
    margin-bottom: 70px;
}

.mb80 {
    margin-bottom: 80px;
}

.mb90 {
    margin-bottom: 90px;
}

.mb100 {
    margin-bottom: 100px;
}

.ml0 {
    margin-left: 0;
}

.ml10 {
    margin-left: 10px;
}

.ml20 {
    margin-left: 20px;
}

.ml30 {
    margin-left: 30px;
}

.ml40 {
    margin-left: 40px;
}

.ml50 {
    margin-left: 50px;
}

.ml60 {
    margin-left: 60px;
}

.ml70 {
    margin-left: 70px;
}

.ml80 {
    margin-left: 80px;
}

.ml90 {
    margin-left: 90px;
}

.ml100 {
    margin-left: 100px;
}

.mr0 {
    margin-right: 0;
}

.mr10 {
    margin-right: 10px;
}

.mr20 {
    margin-right: 20px;
}

.mr30 {
    margin-right: 30px;
}

.mr40 {
    margin-right: 40px;
}

.mr50 {
    margin-right: 50px;
}

.mr60 {
    margin-right: 60px;
}

.mr70 {
    margin-right: 70px;
}

.mr80 {
    margin-right: 80px;
}

.mr90 {
    margin-right: 90px;
}

.mr100 {
    margin-right: 100px;
}

.padding30 {
    padding: 30px;
}

.padding40 {
    padding: 40px;
}

.padding50 {
    padding: 50px;
}

.padding60 {
    padding: 60px;
}

.padding70 {
    padding: 70px;
}

.padding80 {
    padding: 80px;
}

.pt0 {
    padding-top: 0;
}

.pt10 {
    padding-top: 10px;
}

.pt20 {
    padding-top: 20px;
}

.pt30 {
    padding-top: 30px;
}

.pt40 {
    padding-top: 40px;
}

.pt60 {
    padding-top: 60px;
}

.pt80 {
    padding-top: 80px;
}

.pt100 {
    padding-top: 100px;
}

.pb0 {
    padding-bottom: 0;
}

.pb10 {
    padding-bottom: 10px;
}

.pb20 {
    padding-bottom: 20px;
}

.pb30 {
    padding-bottom: 30px;
}

.pb40 {
    padding-bottom: 40px;
}

.pb60 {
    padding-bottom: 60px;
}

.pb80 {
    padding-bottom: 80px;
}

.pb100 {
    padding-bottom: 100px;
}

.pl130 {
    padding-left: 130px;
}


/* margin top */

.mt-10 {
    margin-top: -10px;
}

.mt-20 {
    margin-top: -20px;
}

.mt-30 {
    margin-top: -30px;
}

.mt-40 {
    margin-top: -40px;
}

.mt-50 {
    margin-top: -50px;
}

.mt-60 {
    margin-top: -60px;
}

.mt-70 {
    margin-top: -70px;
}

.mt-80 {
    margin-top: -80px;
}

.mt-90 {
    margin-top: -90px;
}

.mt-100 {
    margin-top: -100px;
}

.absolute {
    position: absolute;
    z-index: 1;
}

.relative {
    position: relative;
    z-index: 1;
}

.overflow-hidden {
    overflow: hidden;
}

.width100 {
    width: 100%;
}

.border1 {
    border-width: 1px !important;
}

.bordertop {
    border-top: solid 1px #eee;
}

.borderbottom {
    border-bottom: solid 1px #eee;
}

.z-index1000 {
    z-index: 1000;
    position: relative;
}


/* ================================================== */


/* anim */


/* ================================================== */

de_tab .de_nav li span,
.feature-box-style-1 i,
a.btn-line:after,
.de_count,
.social-icons a i,
.de_tab.tab_steps .de_nav li span,
.de_tab.tab_steps .de_nav li span:hover,
.de-gallery .overlay .icon i,
.de-gallery .overlay .icon i:hover,
.product img,
.product img:hover,
.mfp-close,
.mfp-close:hover,
.pic-hover .bg-overlay,
.pic-hover:hover>.bg-overlay,
i.btn-action-hide,
.pic-hover.hover-scale img,
.text-rotate-wrap,
.text-rotate-wrap .item,
.overlay-v,
header,
.owl-slider-nav .next,
.owl-slider-nav .prev,
#back-to-top.show,
#back-to-top.hide,
.social-icons-sm i,
.social-icons-sm i:hover,
.overlay-v i,
.overlay-v i:hover,
.de_tab .de_nav li span,
#popup-box.popup-show,
#popup-box.popup-hide,
.form-underline input[type=text],
.form-underline textarea,
.form-underline input[type=email],
.form-underline select,
.btn-rsvp,
.btn-close,
.btn-custom,
.overlay-v .v-center,
.de_tab.tab_style_4 .de_nav li,
.form-subscribe input[type=text],
.picframe,
.filter,
#floating-icon a,
#floating-icon span,
.box-fx,
.box-fx:hover,
.box-fx .info,
.box-fx:hover .info,
.feature-box-style-1,
.feature-box-style-1:hover,
.feature-box-style-1 .info,
.feature-box-style-1:hover .info,
.feature-box-style-1 .front,
.feature-box-style-1:hover .front,
.picframe .overlay,
.picframe:hover .overlay,
#btn-close .line-1,
#btn-close .line-2,
#btn-close:hover .line-1,
#btn-close:hover .line-2,
.page-overlay,
.picframe.sc-icon .icons,
#mainmenu li ul.mega a img,
#mainmenu li ul.mega a:hover img{
    -o-transition: .5s;
    -ms-transition: .5s;
    -moz-transition: .5s;
    -webkit-transition: .5s;
    transition: .5s;
    outline: none;
}

a.btn-fx:after,
a.btn-fx:hover:after,
a.btn-fx:before,
a.btn-fx:hover:before,
#mainmenu li,
#mainmenu li ul,
.widget-post li .post-date {
    -o-transition: .2s ease;
    -ms-transition: .2s ease;
    -moz-transition: .2s ease;
    -webkit-transition: .2s ease;
    transition: .2s ease;
    outline: none;
}

.picframe img {
    -o-transition: 1s ease;
    -ms-transition: 1s ease;
    -moz-transition: 1s ease;
    -webkit-transition: 1s ease;
    transition: 1s ease;
    outline: none;
}

.picframe.gray img {
    -webkit-filter: grayscale(100%);
    -moz-filter: grayscale(100%);
    -o-filter: grayscale(100%);
    -ms-filter: grayscale(100%);
    filter: grayscale(100%);
}

@keyframes bounce {
    0%,
    100%,
    20%,
    50%,
    80% {
        -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
        transform: translateY(0)
    }
    40% {
        -webkit-transform: translateY(-30px);
        -ms-transform: translateY(-30px);
        transform: translateY(-30px)
    }
    60% {
        -webkit-transform: translateY(-15px);
        -ms-transform: translateY(-15px);
        transform: translateY(-15px)
    }
}

.feature-box i {
    -webkit-animation-duration: 1s;
    animation-duration: 1s;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
    animation-iteration-count: infinite;
    -webkit-animation-iteration-count: infinite;
    color: white;
}

.feature-box:hover i {
    cursor: pointer;
    animation-name: bounce;
    -moz-animation-name: bounce;
}


/* ================================================== */


/* video */


/* ================================================== */

video,
object {
    display: inline-block;
    vertical-align: baseline;
    min-width: 100%;
    min-height: 100%;
}

.video-wrapper {
    position: relative;
    width: 100%;
    height: 0;
    padding-bottom: 56.25%;
}

.video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.de-video-container {
    top: 0%;
    left: 0%;
    height: 500px;
    width: 100%;
    overflow: hidden;
}

.de-video-content {
    width: 100%;
    position: absolute;
    z-index: 10;
}

.de-video-overlay {
    position: absolute;
    width: 100%;
    min-height: 100%;
    background: rgba(30, 30, 30, .6);
}

.de-video-overlay-dark {
    position: absolute;
    width: 100%;
    min-height: 100%;
    background: rgba(0, 0, 0, .6);
}

.de-video-overlay.dotted {
    background: url(/templates/merchmaker/images_02/dotted.png);
}

.video-fixed {
    width: 100%;
    position: fixed;
    top: 0;
}


/* youtube, vimeo */

.video-container {
    position: relative;
    padding-bottom: 56.25%;
    padding-top: 30px;
    height: 0;
    overflow: hidden;
}

.video-container iframe,
.video-container object,
.video-container embed {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.de-video-container .btn-line:hover:after,
.de-video-container a.btn-line:hover:after,
.de-video-container a.btn-line.hover:after {
    color: #212121;
}


/* ================================================== */


/* map */


/* ================================================== */


/* --------------- map --------------- */

#map-container {
    position: absolute;
    width: 50%;
    height: 100%;
    margin-top: 0px;
    right: 10px;
}

#map {
    width: 100%;
    height: 100%;
}

.float-form {
    float: left;
    width: 50%;
}


/* ================================================== */


/* call to action */


/* ================================================== */

.call-to-action-box {
    background: #f5f5f5;
    border: solid 1px #ddd;
    background: rgb(255, 255, 255);
    /* Old browsers */
    background: -moz-linear-gradient(top, rgba(255, 255, 255, 1) 0%, rgba(242, 242, 242, 1) 100%);
    /* FF3.6+ */
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, rgba(255, 255, 255, 1)), color-stop(100%, rgba(242, 242, 242, 1)));
    /* Chrome,Safari4+ */
    background: -webkit-linear-gradient(top, rgba(255, 255, 255, 1) 0%, rgba(242, 242, 242, 1) 100%);
    /* Chrome10+,Safari5.1+ */
    background: -o-linear-gradient(top, rgba(255, 255, 255, 1) 0%, rgba(242, 242, 242, 1) 100%);
    /* Opera 11.10+ */
    background: -ms-linear-gradient(top, rgba(255, 255, 255, 1) 0%, rgba(242, 242, 242, 1) 100%);
    /* IE10+ */
    background: linear-gradient(to bottom, rgba(255, 255, 255, 1) 0%, rgba(242, 242, 242, 1) 100%);
    /* W3C */
    filter: progid: DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#f2f2f2', GradientType=0);
    /* IE6-9 */
}

.call-to-action-box {
    background: #27282B;
    border: solid 1px #202220;
}

.call-to-action-box .inner {
    padding: 20px 20px 20px 20px;
}

.call-to-action-box .text {
    margin-right: 20px;
    float: left;
}

.call-to-action-box .act {
    float: right;
}

.call-to-action-box h3 {
    margin: 0;
    margin-top: 10px;
}

.call-to-action-box .btn {
    color: #212121;
}

.call-to-action-box {
    background: #202220;
    color: #212121;
}

.call-to-action-boxh3 {
    color: #212121;
}


/* ================================================== */


/* overide bootstrap */


/* ================================================== */

.container-fluid {
    padding: 0px;
    margin: 0px;
}

.btn-primary {
    text-shadow: none;
    border: none !important;
}

.btn.btn-primary:hover {
    background: #555;
}

.img-responsive {
    display: inline-block;
}

.img-shadow {
    -webkit-box-shadow: 8px 8px 40px 0px rgba(0, 0, 0, 0.3);
    -moz-box-shadow: 8px 8px 40px 0px rgba(0, 0, 0, 0.3);
    box-shadow: 8px 8px 40px 0px rgba(0, 0, 0, 0.3);
}

.img-auto {
    width: auto !important;
    height: auto !important;
    ;
}

.label {
    font-family: "Montserrat", Arial, Helvetica, sans-serif;
}

table thead {
    font-weight: bold;
}

.accordion-heading a {
    text-decoration: none;
    border: none;
    outline: none;
}

p.lead {
    font-size: 15px;
    line-height: 26px;
    margin-top: 0;
    font-weight: 500;
}

.text-light p.lead {
    color: rgba(255, 255, 255, .8);
}

.panel-group {
    opacity: .8;
}

.panel-heading,
.panel-body {
    background: #27282B;
    border: solid 1px #202220 !important;
    border-radius: 0 !important;
}

.panel-body {
    border-top: none !important;
}

.progress {
    background: #27282B;
}

.panel-heading h4 a {
    display: block;
}

.panel-heading h4 a:hover {
    color: #212121;
}

.panel-default,
.panel-collapse,
.panel-collapse,
.panel-group .panel {
    border: none !important;
    border-radius: 0 !important;
}

.panel-heading {
    background: #222 !important;
}

.table-bordered,
.table-bordered td {
    border: solid 1px #202220;
}

blockquote {
    font-size: 16px;
    font-style: italic;
    font-weight: 300;
    line-height: 1.7em;
    color: #333;
    background: #f9f9f9;
    padding: 30px;
}

blockquote span {
    display: block;
    font-size: 14px;
    font-style: normal;
    font-weight: normal;
}

blockquote.s2 {
    border: none;
    text-align: left;
    background: #f2f2f2;
    padding: 30px 30px 30px 60px;
    margin-top: 20px;
    border-radius: 5px;
    -moz-border-radius: 5px;
    -webkit-border-radius: 5px;
}

blockquote.s2:before {
    font-family: "FontAwesome";
    content: "\f10e";
    font-style: normal;
    position: absolute;
    margin-left: -30px;
}

.col-md-3 {
    margin-right: -1px;
}


/* ======================================== */


/* toggle */


/* ======================================== */

.toggle-list {
    list-style: none;
    margin: 0;
    padding: 0;
}

.toggle-list li {
    margin-bottom: 10px;
    background: #fff;
    border: solid 1px #ddd;
    border-bottom: solid 3px #ddd;
}

.toggle-list li h2 {
    -moz-user-select: none;
    -html-user-select: none;
    user-select: none;
    color: #555;
    font-size: 16px;
    line-height: 20px;
    font-family: "Montserrat", Arial, Helvetica, sans-serifr;
    padding: 10px 20px 0px 60px;
    font-weight: 700;
    display: block;
    letter-spacing: normal;
}

.toggle-list li .acc_active:hover {
    color: #777;
    background: url(/templates/merchmaker/images_02/icon-slide-plus.png) 20px center no-repeat;
    padding-left: 80px;
    -o-transition: .5s;
    -ms-transition: .5s;
    -moz-transition: .5s;
    -webkit-transition: .5s;
    transition: .5s;
}

.toggle-list li .acc_noactive:hover {
    color: #777;
    background: url(/templates/merchmaker/images_02/icon-slide-min.png) 20px center no-repeat;
    -o-transition: .5s;
    -ms-transition: .5s;
    -moz-transition: .5s;
    -webkit-transition: .5s;
    transition: .5s;
}

.toggle-list .ac-content {
    display: none;
    padding: 20px;
    border-top: solid 1px #e5e5e5;
}

.acc_active {
    background: url(/templates/merchmaker/images_02/icon-slide-plus.png) 20px center no-repeat;
    -o-transition: .5s;
    -ms-transition: .5s;
    -moz-transition: .5s;
    -webkit-transition: .5s;
    transition: .5s;
    height: 32px;
}

.acc_noactive {
    background: url(/templates/merchmaker/images_02/icon-slide-min.png) 20px center no-repeat;
}


/* ================================================== */


/* image position */


/* ================================================== */

.img-left {
    float: left;
    margin: 5px 15px 15px 0;
}

.img-right {
    float: right;
    margin: 5px 0 15px 15px;
}


/* ================================================== */


/* flickr */


/* ================================================== */

#flickr-photo-stream img {
    width: 48px;
    height: auto;
    margin: 0 12px 12px 0;
    float: left;
}

#flickr-photo-stream a img {
    border: solid 2px #fff;
}

#flickr-photo-stream a:hover img {
    border: solid 2px #777777;
}

hr {
    border-top: solid 1px #555;
}

hr.blank {
    border: none;
    margin: 20px 0 20px 0;
}


/* ================================================== */


/* font awesome icons */


/* ================================================== */

i {
    display: inline-block !important;
}

i.large {
    font-size: 72px;
    text-align: center;
    display: inline-block;
    float: none;
}

i.medium {
    font-size: 20px;
    padding: 10px;
    text-align: center;
    display: inline-block;
    float: none;
}

i.small {
    font-size: 12px;
    padding: 4px;
    text-align: center;
    display: inline-block;
    float: none;
}

i.circle-icon {
    border-radius: 75px;
    -moz-border-radius: 75px;
    -webkit-border-radius: 75px;
}

.fa-android {
    color: #469159;
}

.fa-apple {
    color: #0EC3F7;
}


/* extra ^ */

.de_center p {
    width: 100%;
}

.de_center .de_icon {
    float: none;
    margin: 0 auto;
}


/* ================================================== */


/* transition */


/* ================================================== */

a,
a:hover,
.test-column,
.test-column:hover {
    -o-transition: .3s;
    -ms-transition: .3s;
    -moz-transition: .3s;
    -webkit-transition: .3s;
    transition: .3s;
}

.de_contact_info {
    font-size: 40px;
    font-weight: bold;
}

.de_contact_info i {
    float: none;
    margin-right: 20px;
}

.center-div {
    margin: 0 auto !important;
}


/* ================================================== */


/* gallery */


/* ================================================== */

#gallery-carousel .item {
    text-align: center;
    font-size: 12px;
    width: 100%;
    cursor: e-resize;
}

.de_carousel .item {
    width: 100%;
    display: block;
}

#gallery-carousel .item img {
    width: 100%;
    height: auto;
}

#gallery-carousel .item h4 {
    margin-bottom: 0;
    font-size: 14px;
}

#gallery .item {
    width: 100%;
    overflow: hidden;
}


.overlay-v {
    width: 100px;
    position: absolute;
    width: 100%;
    height: 100%;
    overflow: hidden;
    z-index: 2;
}

.overlay-v i {
    background: #fff;
    padding: 10px;
    width: 48px;
    height: 48px;
    font-weight: normal;
    font-size: 32px;
    border-radius: 60px;
    -moz-border-radius: 60px;
    -webkit-border-radius: 60px;
    margin-top: 100%;
    color: #222;
    opacity: 0;
}

.overlay-v:hover i {
    margin-top: 25%;
    opacity: 1;
}

.overlay-v .v-center {
    background: #fff;
    padding: 40px;
    width: 100.5%;
    height: 100.5%;
    font-weight: normal;
    margin-top: 100%;
    color: #222;
    opacity: 0;
    position: absolute;
    left: 0;
	display:table;
}

.overlay-v:hover > span {
    margin-top: 0px;
    opacity: .9;
}

.invert.transparent .overlay-v > span{
	margin-top:0;
	opacity:1;
	background:none;
}

.overlay-v .v-center > span{
	display:table-cell;
	vertical-align:middle;
}

.overlay-sc {
    text-align: center;
    width: 100px;
    position: absolute;
    width: 100%;
    height: 100%;
    overflow: hidden;
    z-index: 2;
}

.overlay-v:hover {
    background: rgba(30, 30, 30, .5);
}

.filter {
    text-align: center;
    width: 100px;
    position: absolute;
    width: 100%;
    height: 100%;
    overflow: hidden;
    z-index: 1;
    /*
background: -moz-linear-gradient(45deg, rgba(136,73,227,0.5) 0%, rgba(73,145,227,0.5) 100%);
background: -webkit-linear-gradient(45deg, rgba(136,73,227,0.5) 0%,rgba(73,145,227,0.5) 100%);
background: linear-gradient(45deg, rgba(136,73,227,0.5) 0%,rgba(73,145,227,0.5) 100%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#808849e3', endColorstr='#804991e3',GradientType=1 );
	*/
}

.picframe:hover .filter {
    opacity: 0;
}

.picframe:hover img {
    -webkit-filter: grayscale(0);
    filter: none;
    opacity: 1;
    transform: scale(1.1);
}

.picframe .overlay {
    text-align: center;
    display: block;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, .8);
    position: absolute;
    opacity: 0;
    z-index: 200;
}

.picframe:hover .overlay {
    opacity: 1;
}

.picframe .title {
    display: table;
    width: 100%;
    height: 100%;
    position: absolute;
    color: #ffffff;
    font-size: 16px;
    font-weight: 400;
}

.picframe .title>span {
    display: table-cell;
    vertical-align: middle;
}

.picframe.sc-icon .icons{
	text-align:center;
	position:absolute;
	width:100%;
	z-index:100;
	bottom:-20px;
	opacity:0;
}

.picframe.sc-icon:hover .icons{
	bottom:20px;
	opacity:1;
}


.pf_text {
    color: #212121;
    letter-spacing: 5px;
}

.pf_text h4 {
    color: #212121;
    margin-bottom: 0;
    font-size: 14px;
}

.project-view {
    padding: 30px 0 80px 0;
}

.project-view h2 {
    margin-bottom: 20px;
    font-size: 34px;
}

.project-info {
    color: #ccc;
    margin-left: 20px;
}

.de_light .project-info {
    color: #606060;
}

.project-info {
    margin-left: 20px;
}

.project-info h2 {
    margin-top: 0;
}

.project-info span {
    display: block;
}

.project-info span.title {
    text-transform: uppercase;
    font-size: 12px;
    color: #111;
    font-weight: bold;
}

.project-info span.val {
    margin-bottom: 15px;
}

.de_light .project-info .details {
    background: #eee;
    border-color: #ddd;
}

.project-infoproject-info span {
    display: block;
}

.project-info span.title {
    display: inline-block;
    min-width: 80px;
}

.project-info span.val {
    margin-bottom: 15px;
}

.project-images img {
    width: 100%;
}

.picframe {
    position: relative;
    overflow: hidden;
}

.picframe img {
    width: 100%;
}

.picframe span.icon {
    cursor: pointer;
}

.hover-shadow:hover{
	-webkit-box-shadow: 8px 8px 40px 0px rgba(0, 0, 0, 0.5);
    -moz-box-shadow: 8px 8px 40px 0px rgba(0, 0, 0, 0.5);
    box-shadow: 8px 8px 40px 0px rgba(0, 0, 0, 0.5);
}

.pf-click{
	cursor:pointer;
}

#btn-close {
    display: block;
    width: 60px;
    height: 60px;
    margin: 0 auto;
    cursor: pointer;
    padding-top: 30px;
    margin-bottom: 30px;
}

#btn-close .line-1,
#btn-close .line-2 {
    width: 60px;
    height: 2px;
    background: #333;
    position: absolute;
    border-radius: 10px;
}

#btn-close .line-1 {
    -webkit-transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    -o-transform: rotate(-45deg);
    transform: rotate(-45deg);
}

#btn-close .line-2 {
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    transform: rotate(45deg);
}

#btn-close:hover .line-1,
#btn-close:hover .line-2 {
    -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
}

.project-name {
    font-size: 12px;
    font-weight: bold;
    display: block;
}

.info-details .info-text {
    margin-bottom: 20px;
}

.info-details .title {
    display: block;
    font-weight: bold;
}

.overlay .info-area {
    display: block;
    margin-top: 10%;
}

.overlay .sb-icons {
    display: block;
    margin-top: 200px;
}

.de-gallery .overlay {
    text-align: center;
}

.de-gallery .overlay .pf_text {
    display: inline-block;
    opacity: 0;
}

.de-gallery .project-name {
    font-size: 14px;
    text-transform: uppercase;
}

.de-gallery .overlay .icon {
    display: inline-block;
    margin-top: 200px;
    text-align: center;
}

.de-gallery .overlay .icon i {
    text-shadow: none;
    color: #fff;
    border: solid 1px rgba(255, 255, 255, .1);
    font-size: 22px;
    padding: 20px;
    width: 60px;
    height: 60px;
    text-align: center;
    margin-left: 10px;
}

.de-gallery .overlay .icon i.icon-info {
    margin-left: 0px;
}

.de-gallery .overlay .icon i:hover {
    color: #222;
    background: #fff;
}

.grid_gallery .item {
    margin-bottom: 30px;
}

a.img-icon-url,
a.img-icon-zoom {
    display: inline-block;
    width: 36px;
    height: 36px;
    background: url(/templates/merchmaker/images_02/icon-url.png) center no-repeat;
    margin: 0 auto;
    margin: 0 2px 0 2px;
}

a.img-icon-zoom {
    background: url(/templates/merchmaker/images_02/icon-zoom.png) center no-repeat;
}

.pf_full_width {
    width: 100%;
}

.pf_full_width .item {
    float: left;
    width: 24.99%;
}

.pf_full_width.pf_4_cols {
    width: 101%;
}

.pf_full_width.pf_3_cols .item {
    width: 33.3%;
}

.pf_full_width.pf_2_cols .item {
    width: 49.9%;
}

.gallery_border {}

.pf_full_width.gallery_border .item,
.pf_full_width.gallery_border.pf_2_cols .item,
.pf_full_width.gallery_border.pf_3_cols .item {
    float: left;
    width: 23.9%;
    margin-right: 1%;
    margin-bottom: 1%;
}

.pf_full_width.gallery_border.pf_3_cols .item {
    width: 32.3% !important;
}

.pf_full_width.gallery_border.pf_2_cols .item {
    width: 48.9%;
}

.pf_full_width img {
    float: left;
    width: 100%;
}

.pf_full_width.grid {
    padding: .75%;
    padding-bottom: 0;
}

.pf_full_width.grid .item {
    margin: 0 .75% .75% 0;
    width: 32%;
}

.pf_full_width.grid.pf_4_cols .item {
    margin: 0 .75% .75% 0;
    width: 23.9%;
}

.pf_full_width.grid.pf_2_cols .item {
    margin: 0 .75% .75% 0;
    width: 48.5%;
}

.gallery-cols .item {
    margin-bottom: 30px;
}

.pic-grey {
    -webkit-filter: grayscale(100%);
    -moz-filter: grayscale(100%);
    -o-filter: grayscale(100%);
    -ms-filter: grayscale(100%);
    filter: grayscale(100%);
}


/* ================================================== */


/* widget */


/* ================================================== */

#sidebar {
    padding-left: 20px;
}

.widget {
    margin-bottom: 30px;
    padding-bottom: 30px;
    border-bottom: solid 1px #eeeeee;
}

.de_light .widget {
    border-bottom: solid 1px #ddd;
}

.widget h3 {
    text-transform: uppercase;
    font-size: 16px;
    letter-spacing: normal;
    letter-spacing: 1px;
}

.widget ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

.widget .small-border {
    height: 2px;
    width: 30px;
    background: #fff;
    margin: 10px 0 20px 0;
    display: block;
}

.widget_category li {
    padding: 8px 20px 8px 20px;
    margin-bottom: 8px;
    background: #111;
}

.widget_category li:before {
    font-family: "FontAwesome";
    content: "\f07b";
    margin-right: 10px;
}

.de_light .widget_category li {
    background: none;
    border: solid 1px #eee;
}

.widget_category li a {
    color: #606060;
}

.widget_recent_post li {
    padding-left: 20px;
    background: url(/templates/merchmaker/images_02/list-arrow.png) left 2px no-repeat;
    border-bottom: solid 1px #222;
    padding-bottom: 7px;
    margin-bottom: 5px;
}

.widget_recent_post li a {
    color: #555;
}

.widget-post li {
    border-bottom: solid 1px #f2f2f2;
    padding-bottom: 8px;
    margin-bottom: 8px;
}

.widget-post li a {
    padding-left: 60px;
    display: block;
    text-decoration: none;
}

.widget-post .post-date {
    position: absolute;
    color: #222;
    margin-right: 10px;
    text-align: center;
    width: 50px;
    font-size: 10px;
    text-transform: uppercase;
}

.widget-post li:hover>.post-date {
    background: #222;
    color: #fff;
}

.widget .comments li {
    padding-left: 20px;
    background: url(/templates/merchmaker/images_02/list-arrow.png) left 2px no-repeat;
    border-bottom: solid 1px #eee;
    padding-bottom: 7px;
    margin-bottom: 5px;
}

.widget_tags li {
    text-shadow: none;
    display: inline-block;
    margin-right: 3px;
    margin-bottom: 16px;
}

.widget_tags li a {
    font-size: 12px;
    text-decoration: none;
    margin-bottom: 5px;
    border-radius: 1px;
    -moz-border-radius: 1px;
    -webkit-border-radius: 1px;
    border: solid 1px rgba(255, 255, 255, .1);
    color: #888;
    padding: 7px 10px 7px 10px;
}

.de_light .widget_tags li a {
    color: #606060;
    border: solid 1px rgba(0, 0, 0, .2);
}

.widget_tags li a:hover {
    color: #555;
    border-color: #555;
}

.de_light .widget_tags li a:hover {
    color: #111;
    border-color: #111;
}

.widget_top_rated_product ul {
    padding: 0;
}

.widget_top_rated_product li {
    min-height: 80px;
}

.widget_top_rated_product li .text {
    padding-top: 5px;
    padding-left: 75px;
}

.widget_top_rated_product li img {
    position: absolute;
    width: 60px;
    height: 60px;
}

.widget_tags li a {
    border-color: #555;
}

.widget_tags li a:hover {
    color: #212121;
    border-color: #212121;
}

footer .widget {
    border: none !important;
    margin-bottom: 0;
}

.widget_tags ul {
    margin-top: 30px;
}

footer .widget.widget_tags li a {
    border-color: #222;
}

footer .widget_recent_post li {
    padding: 0 0 10px 0;
    margin: 0;
    margin-bottom: 10px;
    background: none;
    border-bottom-color: rgba(255, 255, 255, .1);
}

footer .widget_recent_post li a {
    color: #ccc;
}

footer .widget h3 {
    margin-bottom: 20px;
}

footer .widget_list li {
    padding: 0 0 10px 0;
    margin: 0;
    margin-bottom: 10px;
    background: none;
    border-bottom-color: rgba(255, 255, 255, .1);
}

footer .widget_list li a {
    color: #ccc;
}

.inline-block {
    display: inline-block;
}


/* ================================================== */


/* misc */


/* ================================================== */

span.tiny{
	font-size:13px;
	color:#212121;
}
span.tiny-2{
	font-size:12px;
	color:#212121;
	display:inline-block;
	line-height:1.4em;
	margin-bottom:5px;
	border-radius:2px;
}

#pp-nav.right {
    right: 25px
}
#pp-nav.left {
    left: 25px;
}
#pp-nav span,
.pp-slidesNav span{
	 border: 1px solid #000;
}

.pp-tooltip{
	background:#333333;
	padding:2px 8px;
	margin-top:-5px;
}

/* video button begin */

body {
  background: #faf8f5;
}

.video-play-button {
  position: absolute;
  z-index: 10;
  top: 50%;
  left: 50%;
  transform: translateX(-50%) translateY(-50%);
  box-sizing: content-box;
  display: block;
  width: 32px;
  height: 44px;
  /* background: #eb3349; */
  border-radius: 50%;
  padding: 18px 20px 18px 28px;
}

.video-play-button:before {
  content: "";
  position: absolute;
  z-index: 0;
  left: 50%;
  top: 50%;
  transform: translateX(-50%) translateY(-50%);
  display: block;
  width: 80px;
  height: 80px;
  background: #ba1f24;
  border-radius: 50%;
  animation: pulse-border 1500ms ease-out infinite;
}

.video-play-button:after {
  content: "";
  position: absolute;
  z-index: 1;
  left: 50%;
  top: 50%;
  transform: translateX(-50%) translateY(-50%);
  display: block;
  width: 80px;
  height: 80px;
  background: #eb3349;
  border-radius: 50%;
  transition: all 200ms;
}

.video-play-button:hover:after {
  background-color: darken(#eb3349, 10%);
}

.video-play-button img {
  position: relative;
  z-index: 3;
  max-width: 100%;
  width: auto;
  height: auto;
}

.video-play-button span {
  display: block;
  position: relative;
  z-index: 3;
  width: 0;
  height: 0;
  border-left: 32px solid #fff;
	border-top: 22px solid transparent;
	border-bottom: 22px solid transparent;
}

@keyframes pulse-border {
  0% {
    transform: translateX(-50%) translateY(-50%) translateZ(0) scale(1);
    opacity: 1;
  }
  100% {
    transform: translateX(-50%) translateY(-50%) translateZ(0) scale(1.5);
    opacity: 0;
  }
}
/* video-button close */

#floating-icon {
    position: fixed;
    right: 0;
    top: 43%;
    z-index: 1000;
}

#floating-icon a,
#floating-icon span {
    position: relative;
    width: 160px;
    display: block;
    padding: 5px;
    border-radius: 10px 0 0 10px;
    -moz-border-radius: 10px 0 0 10px;
    -webkit-border-radius: 10px 0 0 10px;
    color: #fff;
    right: -119px;
    text-decoration: none;
    margin-bottom: 5px;
    -webkit-touch-callout: none;
    /* iOS Safari */
    -webkit-user-select: none;
    /* Safari */
    -khtml-user-select: none;
    /* Konqueror HTML */
    -moz-user-select: none;
    /* Firefox */
    -ms-user-select: none;
    /* Internet Explorer/Edge */
    user-select: none;
    /* Non-prefixed version, currently */
}

#floating-icon a:hover,
#floating-icon span:hover {
    right: 0;
}

#floating-icon i {
    color: #fff;
    padding: 8px;
    font-size: 20px;
}

.md-float-right {
    float: right;
}

.schedule-item {
    padding: 40px 20px 20px 20px;
    color: #fff;
    min-height: 80px;
}

.schedule-listing:nth-child(2n+2) {
    background: rgba(255, 255, 255, .1);
}

.schedule-item .sc-time,
.schedule-item .sc-pic,
.schedule-item .sc-name,
.schedule-item .sc-info {
    float: left;
}

.schedule-item .sc-time {
    text-align: center;
    width: 150px;
}

.schedule-item .sc-pic {
    width: 100px;
    text-align: center
}

.schedule-item .sc-pic img {
    margin-top: -20px;
    width: 60px;
    height: auto;
    border: solid 3px #fff;
}

.schedule-item .sc-name {
    margin-top: -12px;
    font-weight: normal;
    font-size: 14px;
    width: 160px;
}

.schedule-item .sc-name h4 {
    font-size: 14px;
    margin: 0;
    line-height: 1.6em;
    font-weight: bold;
}

.schedule-item .sc-name span {
    font-weight: normal;
    font-size: 12px;
}

.schedule-item .sc-info {
    width: calc(100%/2);
}

.schedule-item .sc-info h3 {
    font-size: 18px !important;
    margin-bottom: 10px;
    font-weight: bold;
}

.de_tab.tab_style_4 .de_nav {
    -webkit-touch-callout: none;
    /* iOS Safari */
    -webkit-user-select: none;
    /* Safari */
    -khtml-user-select: none;
    /* Konqueror HTML */
    -moz-user-select: none;
    /* Firefox */
    -ms-user-select: none;
    /* Internet Explorer/Edge */
    user-select: none;
    /* Non-prefixed version, currently
                                  supported by Chrome and Opera */
}

strong {
    color: #000;
}

.text-light strong {
    color: #fff;
}

.bg-white {
    background: #ffffff;
}

.wh80 {
    width: 80%;
    height: 80%;
}

.border-bottom {
    border-bottom: solid 1px #e5e5e5;
}

.color-overlay {
    background: rgba(157, 130, 235, .3);
}

section .color-overlay {
    padding: 60px 0 60px 0;
}

.color-overlay-2 {
    background: rgba(26, 37, 48, .85);
}

.fontsize24 {
    font-size: 24px !important;
}

.fontsize32 {
    font-size: 32px !important;
}

.fontsize36 {
    font-size: 36px !important;
}

.fontsize40 {
    font-size: 40px !important;
}

.fontsize48 {
    font-size: 48px !important;
}

.overlay50 {
    background: rgba(0, 0, 0, .5)
}

.overlay60 {
    background: rgba(0, 0, 0, .6)
}

.overlay70 {
    background: rgba(0, 0, 0, .7)
}

.overlay80 {
    background: rgba(0, 0, 0, .8)
}

.hidden-xy {
    overflow: hidden;
}

.border-box {
    border: solid 1px #dddddd;
}

.display-table {
    display: table;
}

.display-table [class*="col-"] {
    float: none;
    display: table-cell;
    vertical-align: top;
    margin: 0;
    padding: 0;
}

#popup-box {
    position: fixed;
    background: #fff;
    width: 100%;
    height: 100%;
    z-index: 10000;
    top: -100%;
    overflow-y: auto;
}

#popup-box.popup-show {
    top: 0;
}

#popup-box.popup-hide {
    top: -100%;
}

.overlay-s1 {
    background: rgba(217, 42, 224, .5);
}

.overlay-s2 {
    background: rgba(255, 135, 140, .5);
}

.overlay-s3 {
    background: rgba(91, 35, 108, .5);
}

.circle {
    background: #333;
    display: inline-block;
    padding: 20px;
    font-size: 40px;
    color: #fff;
    margin-top: 140px;
    width: 70px;
    height: 70px;
    border-radius: 60px;
    -moz-border-radius: 60px;
    -webkit-border-radius: 60px;
    -webkit-box-shadow: 8px 8px 40px 0px rgba(0, 0, 0, 0.6);
    -moz-box-shadow: 8px 8px 40px 0px rgba(0, 0, 0, 0.6);
    box-shadow: 8px 8px 40px 0px rgba(0, 0, 0, 0.6);
}

#services-list {
    padding: 0;
    margin: 0;
}

#services-list li a {
    color: #fff;
}

#services-list li.active a:after {
    font-family: "FontAwesome";
    content: "\f054";
    float: right;
}

.de_light #services-list li a {
    color: #999;
}

#services-list li {
    font-weight: bold;
    list-style: none;
    margin: 0;
    background: rgba(0, 0, 0, .3);
    margin-bottom: 2px;
}

.de_light #services-list li {
    background: #eee;
}

#services-list li a {
    display: block;
    padding: 15px 20px 15px 20px;
    text-decoration: none;
}

#services-list li a:hover {
    color: #111;
}

.pic-services img {
    margin-bottom: 30px;
}

#services-list li.active a,
#services-list li.active a:hover {
    color: #fff;
    background: #333;
}

.teaser-text {
    font-family: "Montserrat";
    font-size: 18px;
    color: rgba(255, 255, 255, .5);
    line-height: normal;
    font-weight: 300;
}

.teaser-text h2 {}

#navigation {
    position: fixed;
    width: 100%;
    height: 60px;
    top: 0;
    right: 20px;
    text-align: center;
    margin-bottom: 60px;
    z-index: 1000;
}

img.img-fullwidth {
    width: 100%;
    height: auto;
}

img.grey-hover {
    filter: gray;
    /* IE6-9 */
    -webkit-filter: grayscale(1);
    /* Google Chrome, Safari 6+ & Opera 15+ */
    filter: grayscale(1);
    /* Microsoft Edge and Firefox 35+ */
    opacity: .5;
}


/* Disable grayscale on hover */

img.grey-hover:hover {
    -webkit-filter: grayscale(0);
    filter: none;
    opacity: 1;
}


/*
.mfp-close{
color:#fff !important;
position:absolute;
width:100%;
font-size:48px;
margin-top:40px;
z-index:1000;
}

.de_light .mfp-close{
color:rgba(0,0,0,.5) !important;
}

.de_light .mfp-close:hover{
color:rgba(0,0,0,1) !important;
}
*/

.mfp-close-btn-in .mfp-close {
    color: #ffffff;
}


/**
       * Simple fade transition,
       */

.mfp-fade.mfp-bg {
    opacity: 0;
    -webkit-transition: all 0.5s ease-out;
    -moz-transition: all 0.5s ease-out;
    transition: all 0.5s ease-out;
}

.mfp-fade.mfp-bg.mfp-ready {
    opacity: 0.8;
}

.mfp-fade.mfp-bg.mfp-removing {
    opacity: 0;
}

.mfp-fade.mfp-wrap .mfp-content {
    opacity: 0;
    -webkit-transition: all 0.15s ease-out;
    -moz-transition: all 0.15s ease-out;
    transition: all 0.15s ease-out;
}

.mfp-fade.mfp-wrap.mfp-ready .mfp-content {
    opacity: 1;
}

.mfp-fade.mfp-wrap.mfp-removing .mfp-content {
    opacity: 0;
}

.nav-prev:before,
.nav-next:before,
.nav-exit:before {
    font-family: "FontAwesome";
    content: '\f177';
    color: #fff;
    padding: 20px;
    font-size: 24px;
    cursor: pointer;
}

.nav-exit:before {
    width: 100%;
    display: block;
}

.nav-next:before {
    content: '\f178';
    width: 100%;
    background: #555;
}

.nav-exit:before {
    content: '\f00d';
}

.de_light .nav-exit:before {
    color: #222;
}

.container-4 .de-team-list {
    width: 24.9%;
    float: left;
    position: relative;
}

.container-3 .de-team-list {
    width: 33.3%;
    float: left;
    position: relative;
}

.no-bottom {
    margin-bottom: 0;
    padding-bottom: 0;
}

p {
    margin-bottom: 20px;
}

h1.b {
	font-weight:bold;
}

p.intro {
    color: #555;
    font-size: 16px;
    line-height: 1.5em;
}

.bg-grey {
    background: #f5f5f5;
}

.no-bottom .col-md-12 {}

.no-bottom {
    padding-bottom: 0 !important;
}

.no-top {
    padding-top: 0 !important;
}

.no-margin {
    margin: 0 !important;
}

.nopadding {
    padding: 0 !important;
    margin: 0 !important;
}

#filters i {
    margin-right: 10px;
}

.bg-side {
    position: relative;
    overflow: hidden !important;
}

.image-container {
    position: absolute;
    padding: 0;
    margin: 0 !important;
    background-size: cover !important;
}

.image-slider {
    cursor: move;
}

.inner-padding {
    padding: 90px 0 90px 0;
}

.no-padding,
section.no-padding {
    padding: 0;
}

.float-left {
    float: left;
}

#loader-area {
    display: none;
    background: #fff;
}

.loader {
    position: fixed;
    left: 0px;
    top: 0px;
    width: 100%;
    height: 100%;
    z-index: 99999;
    background: url('/templates/merchmaker/images_02/page-loader.gif') 50% 50% no-repeat rgb(249, 249, 249);
}

.page-overlay {
    display: none;
    width: 100%;
    height: 100%;
    background: rgba(255, 255, 255, .8);
    border-radius: 10px;
    position: fixed;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 10000;
    margin: auto;
}

.teaser {
    font-family: "Montserrat";
    font-size: 16px;
    font-weight: 300;
}

.teaser.style-2 {
    letter-spacing: 20px;
    text-transform: uppercase;
}

.teaser.style-3 {
    font-size: 14px;
}

.teaser.style-4 {
    letter-spacing: 5px;
    text-transform: uppercase;
    font-size: 14px;
}

.form-control:focus {
    box-shadow: none;
    -moz-box-shadow: none;
    -webkit-box-shadow: none;
}

/

.text-light .owl-theme .owl-controls .owl-page span {
    background-color: #fff;
}

.text-light .owl-theme .owl-controls .owl-page.active span {
    background: none;
}

.text-light .owl-theme .owl-controls .owl-page.active span:before {
    border: solid 2px #fff;
}

.text-slider {
    color: #fff;
    display: inline-block;
}

.text-slider.med-text {
    font-size: 72px;
    line-height: 84px;
    font-weight: bold;
}

.text-slider.big-text {
    font-size: 120px;
    line-height: 120px;
    font-weight: bold;
}

.border-deco .item {
    display: inline-block;
}

.text-slider.dark {
    color: #222;
}

.item i {
    font-size: 60px;
    margin-top: 5px;
}

.text-slider.big-text i {
    font-size: 90px;
    margin-top: 15px;
}

.text-slider h1 {
    font-size: 60px;
}

.text-rotate-wrap {
    display: inline-block;
}

.text-rotate-wrap .item {
    display: none;
}

.red {
    color: #ff0000 !important;
}

.teal {
    color: #009999 !important;
}

.purple {
    color: #663366 !important;
}

.green {
    color: #009900 !important;
}

.bg-overlay {
    position: absolute;
    width: 100%;
    height: 100%;
    z-index: 1;
}

.center-y {
    position: relative;
}

.overlay-bg {
    width: 100%;
    height: 100%;
    z-index: 100;
    background: rgba(20, 20, 20, 1);
    top: 0;
}

.overlay-bg.light {
    background: rgba(255, 255, 255, .8);
}

.overlay-gradient {
    width: 100%;
    height: 100%;
    z-index: 100;
    top: 0;
    /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#8849e3+0,4991e3+100&0.5+0,0.5+100 */
    background: -moz-linear-gradient(45deg, rgba(136, 73, 227, 0.9) 0%, rgba(73, 145, 227, 0.9) 100%);
    /* FF3.6-15 */
    background: -webkit-linear-gradient(45deg, rgba(136, 73, 227, 0.9) 0%, rgba(73, 145, 227, 0.9) 100%);
    /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(45deg, rgba(136, 73, 227, 0.9) 0%, rgba(73, 145, 227, 0.9) 100%);
    /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid: DXImageTransform.Microsoft.gradient( startColorstr='#808849e3', endColorstr='#804991e3', GradientType=1);
    /* IE6-9 fallback on horizontal gradient */
}

.overlay-bg.t0 {
    background: rgba(30, 30, 30, 0);
}

.overlay-bg.t50 {
    background: rgba(30, 30, 30, .5);
}

.overlay-bg.c1 {
    background: rgba(30, 30, 30, .8);
}

.pricing-s1 .inner {
    /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#8849e3+0,4991e3+100&0.5+0,0.5+100 */
    background: -moz-linear-gradient(45deg, rgba(136, 73, 227, 0.9) 0%, rgba(73, 145, 227, 0.9) 100%);
    /* FF3.6-15 */
    background: -webkit-linear-gradient(45deg, rgba(136, 73, 227, 0.9) 0%, rgba(73, 145, 227, 0.9) 100%);
    /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(45deg, rgba(136, 73, 227, 0.9) 0%, rgba(73, 145, 227, 0.9) 100%);
    /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid: DXImageTransform.Microsoft.gradient( startColorstr='#808849e3', endColorstr='#804991e3', GradientType=1);
    /* IE6-9 fallback on horizontal gradient */
}

.full-height .overlay-bg,
.full-height .overlay-gradient {
    display: table;
}

.full-height .center-y {
    display: table-cell;
    vertical-align: middle;
}

.pic-hover {
    width: 100%;
    position: relative;
    overflow: hidden;
}

i.btn-action-hide {
    opacity: 0;
}

.pic-hover:hover .bg-overlay {
    background: rgba(0, 0, 0, .5);
}

.pic-hover:hover i.btn-action-hide {
    opacity: 1;
}

.pic-hover.hover-scale:hover img {
    -moz-transform: scale(1.1);
    -webkit-transform: scale(1.1);
    transform: scale(1.1);
}

.center-xy {
    position: absolute;
    z-index: 5;
}

.center-xy i.btn-action {
    font-size: 24px;
    border: solid 2px rgba(255, 255, 255, .3);
    padding: 16px;
    width: 60px;
    height: 60px;
    border-radius: 60px;
    text-align: center;
    color: #fff;
}

.center-xy i.btn-action:hover {
    border-color: rgba(255, 255, 255, 0);
    background: rgba(255, 255, 255, .3);
}

.center-xy i.btn-action.btn-play {
    padding-left: 20px;
}

.bg-grey,
section.bg-grey {
    background: #f9f9f9;
}

.wow {
    visibility: hidden;
}

#back-to-top {
    position: fixed;
    bottom: -40px;
    right: 30px;
    z-index: 1020;
    width: 36px;
    height: 36px;
    text-align: center;
    line-height: 34px;
    color: #fff;
    cursor: pointer;
    border: 0;
    border-radius: 60px;
    text-decoration: none;
    transition: opacity 0.2s ease-out;
    outline: none;
    opacity: 0;
    -webkit-box-shadow: 8px 8px 40px 0px rgba(0, 0, 0, 0.3);
    -moz-box-shadow: 8px 8px 40px 0px rgba(0, 0, 0, 0.3);
    box-shadow: 8px 8px 40px 0px rgba(0, 0, 0, 0.3);
}

#back-to-top.show {
    bottom: 30px;
    opacity: 1;
}

#back-to-top.hide {
    bottom: -40px;
}

#back-to-top:before {
    font-family: "FontAwesome";
    font-size: 14px;
    content: "\f176";
    color: #fff;
    position: relative;
    margin: 5px;
}


/* mouse scroll icon begin */

.mouse {
    position: absolute;
    z-index: 10000;
    width: 22px;
    height: 42px;
    bottom: 40px;
    left: 50%;
    margin-left: -12px;
    border-radius: 15px;
    border: 1px solid #fff;
    -webkit-animation: intro 1s;
    animation: intro 1s;
}

.scroll {
    display: block;
    width: 3px;
    height: 3px;
    margin: 6px auto;
    border-radius: 4px;
    background: #fff;
    -webkit-animation: finger 1s infinite;
    animation: finger 1s infinite;
}

@-webkit-keyframes intro {
    0% {
        opacity: 0;
        -webkit-transform: translateY(40px);
        transform: translateY(40px);
    }
    100% {
        opacity: 1;
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
}

@keyframes intro {
    0% {
        opacity: 0;
        -webkit-transform: translateY(40px);
        transform: translateY(40px);
    }
    100% {
        opacity: 1;
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
}

@-webkit-keyframes finger {
    0% {
        opacity: 1;
    }
    100% {
        opacity: 0;
        -webkit-transform: translateY(20px);
        transform: translateY(20px);
    }
}

@keyframes finger {
    0% {
        opacity: 1;
    }
    100% {
        opacity: 0;
        -webkit-transform: translateY(20px);
        transform: translateY(20px);
    }
}


/* mouse scroll icon close */

@-moz-keyframes bounce {
    0%,
    20%,
    50%,
    80%,
    100% {
        -moz-transform: translateY(0);
        transform: translateY(0);
    }
    40% {
        -moz-transform: translateY(-30px);
        transform: translateY(-30px);
    }
    60% {
        -moz-transform: translateY(-15px);
        transform: translateY(-15px);
    }
}

@-webkit-keyframes bounce {
    0%,
    20%,
    50%,
    80%,
    100% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
    40% {
        -webkit-transform: translateY(-30px);
        transform: translateY(-30px);
    }
    60% {
        -webkit-transform: translateY(-15px);
        transform: translateY(-15px);
    }
}

@keyframes bounce {
    0%,
    20%,
    50%,
    80%,
    100% {
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
    40% {
        -moz-transform: translateY(-30px);
        -ms-transform: translateY(-30px);
        -webkit-transform: translateY(-30px);
        transform: translateY(-30px);
    }
    60% {
        -moz-transform: translateY(-15px);
        -ms-transform: translateY(-15px);
        -webkit-transform: translateY(-15px);
        transform: translateY(-15px);
    }
}

.arrow-anim {
    position: absolute;
    bottom: 0;
    left: 50%;
    margin-left: -20px;
    width: 40px;
    height: 40px;
    background-size: contain;
}

.arrow-anim:before {
    content: "\f107";
    font-family: "FontAwesome";
    font-size: 32px;
}

.bounce {
    -moz-animation: bounce 2s infinite;
    -webkit-animation: bounce 2s infinite;
    animation: bounce 2s infinite;
}

a.read_more {
    display: inline-block;
    font-weight: bold;
    color: #222222;
    text-decoration: none;
}

a.read_more:hover {
    color: #707070;
}

a.read_more i {
    margin-left: 8px;
}

.text-light a.read_more {
    color: #fff;
}

.text-black {
    color: #222;
}


/* timeline */

.timeline {
    margin-top: 20px;
    position: relative;
    padding: 10px
}

.timeline:before {
    content: '';
    position: absolute;
    top: 0;
    left: 127px;
    height: 100%;
    width: 1px;
    background: #eee;
}

.text-light .timeline:before {
    background: rgba(255, 255, 255, .1);
}

.timeline .tl-block {
    position: relative;
    margin-top: 10px;
}

.timeline .tl-block:after {
    content: ' ';
    clear: both;
    display: block;
}

.timeline .tl-block .tl-time {
    float: left;
    padding: 10px 20px 0px 20px;
    margin-top: -15px;
    border: solid 1px #ddd;
}

.timeline .tl-block .tl-time:after {
    width: 50px;
    height: 1px;
    background: #ddd;
}

.timeline .tl-block .tl-bar {
    float: left;
    width: 5%;
    position: absolute;
    margin-left: 114px;
}

.timeline .tl-block .tl-line {
    background: #333;
    margin-right: 10px;
    border-radius: 10px;
    width: 8px;
    height: 8px;
    font-size: 10px;
    text-align: center;
    line-height: 15px;
}

.timeline .tl-message {
    border-radius: 3px;
    float: left;
    margin-left: 150px;
    top: 0;
    margin-top: -50px;
    margin-bottom: 30px;
}

.timeline .tl-block .tl-message:after {
    display: block;
    content: ' ';
    clear: both;
}

.timeline .tl-block .tl-message .tl-icon {
    float: left;
    left: 100px;
}

.timeline .tl-block .tl-message .tl-main {
    float: left;
}

.timeline .tl-block .tl-message .tl-main .tl-title {}

.timeline .tl-block .tl-message .tl-main .tl-content {}

.timeline .tl-block .tl-message .tl-main .tl-content label {
    font-weight: bold;
    display: inline-block;
    width: 80px;
}

.timeline .tl-block .tl-message .tl-main .tl-content span {}

.timeline .tl-block .tl-message h3 {
    text-transform: none;
}

.timeline .tl-block .tl-time h4 {
    margin: 0 0 10px 0;
}

.timeline .tl-block .tl-main h4 {
    margin-top: -24px;
}

.timeline.exp:before {
    left: 214px;
}

.timeline.exp .tl-message {
    margin-left: 250px;
}

.timeline.exp .tl-block .tl-bar {
    margin-left: 200px;
}


/* timeline */

.timeline {
    list-style: none;
    padding: 20px 0 20px;
    position: relative;
}

.timeline:before {
    top: 0;
    bottom: 0;
    position: absolute;
    content: " ";
    width: 1px;
    border-left: dashed 1px rgba(0, 0, 0, .2);
    left: 50%;
}

.timeline>li {
    position: relative;
    margin-top: -15%;
}

.timeline>li:first-child {
    position: relative;
    margin-top: 0px;
}

.timeline>li:before,
.timeline>li:after {
    content: " ";
    display: table;
}

.timeline>li:after {
    clear: both;
}

.timeline>li:before,
.timeline>li:after {
    content: " ";
    display: table;
}

.timeline>li:after {
    clear: both;
}

.timeline>li>.timeline-panel {
    width: 46%;
    float: left;
    /* border: 1px solid #d4d4d4; */
    border-radius: 2px;
    position: relative;
    /* background: #f5f5f5; */
}

.timeline>li>.timeline-panel:before {
    position: absolute;
    top: 26px;
    right: -14px;
    display: inline-block;
    border-top: 15px solid transparent;
    /* border-left: 15px solid #ccc;
  border-right: 0 solid #ccc; */
    border-bottom: 15px solid transparent;
    content: " ";
}

.timeline>li>.timeline-panel:after {
    position: absolute;
    top: 27px;
    right: -14px;
    display: inline-block;
    /*border-top: 14px solid transparent;
  border-left: 14px solid #f5f5f5;
  border-right: 0 solid #f5f5f5;
  border-bottom: 14px solid transparent;*/
    content: " ";
}

.timeline>li>.timeline-badge {
    color: #fff;
    width: 40px;
    height: 40px;
    line-height: 40px;
    font-size: 14px;
    text-align: center;
    position: absolute;
    top: 16px;
    left: 50%;
    margin-left: -20px;
    background-color: #fff;
    z-index: 100;
    border-top-right-radius: 50%;
    border-top-left-radius: 50%;
    border-bottom-right-radius: 50%;
    border-bottom-left-radius: 50%;
}

.timeline>li.timeline-inverted>.timeline-panel {
    float: right;
}

.timeline>li.timeline-inverted>.timeline-panel:before {
    border-left-width: 0;
    border-right-width: 15px;
    left: -15px;
    right: auto;
}

.timeline>li.timeline-inverted>.timeline-panel:after {
    border-left-width: 0;
    border-right-width: 15px;
    left: -14px;
    right: auto;
}

.timeline-badge.primary {
    background-color: #2e6da4 !important;
}

.timeline-badge.success {
    background-color: #3f903f !important;
}

.timeline-badge.warning {
    background-color: #f0ad4e !important;
}

.timeline-badge.danger {
    background-color: #d9534f !important;
}

.timeline-badge.info {
    background-color: #5bc0de !important;
}

.timeline-title {
    margin-top: 0;
    color: inherit;
}

.timeline-body>p,
.timeline-body>ul {
    margin-bottom: 0;
}

.timeline-body>p+p {
    margin-top: 5px;
}

.timeline-heading h4 {
    color: #888888;
    font-size: 12px;
}

#de-arrow-nav-set {
    text-align: center;
}

#de-arrow-nav-set i {
    color: #222;
    font-size: 32px;
}

#de-arrow-nav-set i.icon_menu {
    display: inline-block;
}

.profile_pic h3 {
    margin-bottom: 0px;
}

.profile_pic .subtitle {
    font-size: 13px;
    display: block;
    margin-bottom: 10px;
    color: #999;
}

.profile_pic .tiny-border {
    margin-bottom: 20px;
}



.pf-hover:hover .btn-next {
    right: 30px;
    opacity: 1;
}

.pf-hover:hover .btn-prev {
    left: 30px;
    opacity: 1;
}



.gallery-item {
    margin: 15px;
}

.table {
    display: table;
    margin-bottom: 0;
}

.table [class*="col-"] {
    float: none;
    display: table-cell;
    vertical-align: top;
}

.table .table {
    background: none;
}

.text-middle,
.table [class*="col-"].text-middle {
    vertical-align: middle;
}


/* ================================================== */


/* quick-search */


/* ================================================== */

.quick-search {
    display: inline-block;
    float: right;
    margin-left: 10px;
    padding: 10px 0 0 0;
}

.quick-search input {
    width: 120px;
    border-radius: 40px;
}

.side-bg {
    position: relative;
}

.side-bg .image-container {
    height: 100%;
    overflow: hidden;
    padding: 0;
    position: absolute;
    top: 0
}

.side-bg .background-image {
    background-position: 50% 50%!important;
    background-size: cover!important;
    width: 100%;
    height: 100%;
    left: 0;
    position: absolute;
    z-index: 0;
}

.side-bg.right .image-container {
    right: 0;
}

.btn-search {border:1px solid #ccc; color:#000;}
.btn-search:hover {color:#fff; background-color:#f35844;}

.search-result {margin:20px 0 0 0;}
.search-item {margin:0 0 30px 0;}
.search-item h3 {margin:0 0 5px 0;}
.search-item a:hover {text-decoration:none;}


/* ================================================== */
/* форма аторизации и регистрации */
#auth-modal {
    background: #fff;
    padding: 30px;
    max-width: 420px;
    margin: 40px auto;
    position: relative;
    border-radius: 6px;
    box-shadow: 0 10px 30px rgba(0,0,0,0.1);
}

/* Шапка с переключателями */
.auth-tabs-nav {
    display: flex;
    border-bottom: 2px solid #eee;
    margin-bottom: 25px;
}

.tab-nav-btn {
    flex: 1;
    background: none;
    border: none;
    padding: 12px;
    font-size: 16px;
    font-weight: 600;
    color: #999;
    cursor: pointer;
    text-align: center;
    transition: all 0.2s ease;
    border-bottom: 2px solid transparent;
    margin-bottom: -2px;
}

.tab-nav-btn.active {
    color: #ff0000; /* Цвет MerchMaker */
    border-bottom-color: #ff0000;
}

/* Управление видимостью табов */
.auth-tab-content {
    display: none;
}

.auth-tab-content.active {
    display: block;
    animation: fadeInAuth 0.3s ease;
}

@keyframes fadeInAuth {
    from { opacity: 0; transform: translateY(5px); }
    to { opacity: 1; transform: translateY(0); }
}

/* Элементы форм */
.auth-form-group {
    margin-bottom: 18px;
}

.auth-form-group label {
    display: block;
    margin-bottom: 6px;
    font-size: 14px;
    color: #333;
}

.auth-form-group .form-control {
    width: 100%;
    padding: 10px 12px;
    border: 1px solid #ddd;
    border-radius: 4px;
    font-size: 14px;
    box-sizing: border-box;
}

.auth-form-group .form-control:focus {
    border-color: #ff0000;
    outline: none;
}

.checkbox-group label {
    display: flex;
    align-items: flex-start;
    font-size: 12px;
    color: #666;
    cursor: pointer;
}

.checkbox-group input {
    margin-right: 8px;
    margin-top: 2px;
}

.btn-auth-submit {
    width: 100%;
    padding: 12px;
    background: #ff0000;
    color: #fff;
    border: none;
    border-radius: 4px;
    font-weight: bold;
    font-size: 15px;
    cursor: pointer;
    transition: background 0.2s ease;
    margin-top: 10px;
}

.btn-auth-submit:hover {
    background: #cc0000;
}

.social-auth-wrapper {
    margin-top: 25px;
    padding-top: 20px;
    border-top: 1px solid #eee;
    text-align: center;
}

.social-auth-title {
    margin-bottom: 15px;
    font-size: 13px;
    color: #999;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.social-auth-buttons {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 15px;
    min-height: 40px;
}



/* Наш главный контейнер блока соцсетей */
#social-auth-block {
    display: block !important;
    margin-top: 25px;
    padding-top: 20px;
    border-top: 1px solid #eee;
    text-align: center;
}

/* Флекс-контейнер для полноценных кнопок */
.social-auth-buttons {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;          /* Если на смартфоне не влезут в ряд, они аккуратно перенесутся друг под друга */
    justify-content: center;
    align-items: center;
    gap: 15px;                /* Расстояние между кнопками */
    margin-top: 15px;
    width: 100%;
    position: relative;
}

/* Жесткие рамки под полноценные текстовые кнопки */
#yandex-auth-container,
#vk-auth-container {
    position: relative !important;
    width: 230px !important;
    height: 44px !important;
    min-width: 230px !important;
    min-height: 44px !important;
    max-width: 230px !important;
    overflow: hidden !important;
    display: flex !important;          /* Включаем флекс для центрирования содержимого */
    justify-content: center !important;
    align-items: center !important;    /* Выравниваем строго по центру по вертикали */
}

/* Убираем любые скроллы и рамки внутри фреймов */
#yandex-auth-container iframe,
#vk-auth-container iframe {
    position: absolute !important;     /* Переводим в абсолют, чтобы игнорировать внутренние сдвиги SDK */
    top: 50% !important;               /* Сдвигаем на половину высоты вниз */
    left: 50% !important;              /* Сдвигаем на половину ширины вправо */
    transform: translate(-50%, -50%) !important; /* Идеально центрируем по обеим осям */
    width: 100% !important;
    height: 100% !important;           /* Заставляем занять всю высоту контейнера */
    margin: 0 !important;
    padding: 0 !important;
    border: none !important;
    display: block !important;
}

/* Возвращаем оверлей Яндекса на его законное место поверх левой кнопки */
#yandex-click-overlay {
    position: absolute;
    width: 230px;
    height: 44px;
    z-index: 9999;
    cursor: pointer;
    background: rgba(0,0,0,0);

    /* Ровняем строго по центру верхней кнопки Яндекса */
    left: 50%;
    transform: translateX(-50%);
    top: 15px; /* Корректируй этот отступ (выше/ниже), чтобы он сел ровно на Яндекс */
}

/* Если кнопки перенеслись друг под друга на маленьком экране смартфона */
@media (max-width: 530px) {
    #yandex-click-overlay {
        /* На смартфонах Яндекс окажется сверху по центру, ровняем оверлей по нему */
        left: 50%;
        transform: translateX(-50%);
        top: 0;
    }
}
/* Ловушка для ботов: скрываем поле от реальных пользователей */
.user-field-middle {
    position: absolute;
    visibility: hidden;
    overflow: hidden;
    width: 0;
    height: 0;
    left: -9999px;
    z-index: -1;
}
.success-message {
    color: #27ae60;
    font-size: 16px;
    font-weight: bold;
    text-align: center;
    padding: 20px 0;
    line-height: 1.4;
}
.success-message span {
    font-size: 14px;
    font-weight: normal;
    color: #555;
}



/**
 * ЛИЧНЫЙ КАБИНЕТ (MERCHMAKER)
 * Единый файл стилей для модульной структуры ЛК
 */

/* 1. Общие контейнеры и базовые карточки */
.lk-page-container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 20px;
    font-family: inherit;
    box-sizing: border-box;
}

.lk-page-container *,
.lk-page-container *::before,
.lk-page-container *::after {
    box-sizing: border-box;
}

.lk-card {
    background: #ffffff;
    border: 1px solid #e6e1da;
    border-radius: 8px;
    padding: 24px;
    box-shadow: 0 2px 4px rgba(0,0,0,0.02);
}

.lk-card h4 {margin-bottom:10px;}

.lk-card-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 15px;
}
.lk-card-title {
  margin: 0;
}
.lk-user-badge {
  background-color: #e8f5e9; /* мягкий зеленый для скидки */
  color: #2e7d32;
  padding: 4px 10px;
  border-radius: 4px;
  font-size: 1.1rem;
  font-weight: bold;
  position:relative;
  top:-5px;
}

/* Элемент списка */
.lk-legal-item {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 12px;
  border: 1px solid #e0e0e0;
  border-radius: 6px;
  margin-bottom: 10px;
}

.lk-legal-info {
  display: flex;
  flex-direction: column;
}

/* Кнопки управления */
.lk-legal-controls {
  display: flex;
  gap: 8px;
}

.lk-control-btn {
  background: none;
  border: none;
  padding: 6px;
  cursor: pointer;
  color: #757575;
  transition: color 0.2s, background-color 0.2s;
  border-radius: 4px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.lk-control-btn:hover {
  background-color: #f5f5f5;
}

.js-edit-legal:hover {
  color: #1976d2; /* синий при наведении на редактирование */
}

.js-delete-legal:hover {
  color: #d32f2f; /* красный при наведении на удаление */
}

.lk-card-title {
    font-size: 18px;
    font-weight: 600;
    margin-top: 0;
    margin-bottom: 20px;
    color: #333333;
    border-bottom: 1px solid #f0f0f0;
    padding-bottom: 10px;
}

.lk-card-title-legal {
    font-size: 18px;
    font-weight: 600;
    margin-top: 0;
    margin-bottom: 0;
    color: #333333;
    padding-bottom: 10px;
}

.lk-header-border {border-bottom: 1px solid #f0f0f0;}

.lk-section-desc {
    font-size: 14px;
    color: #666666;
    margin: -10px 0 20px 0;
    line-height: 1.5;
}

/* 2. Горизонтальная навигация (Табы) */
.lk-navigation {
    display: flex;
    border-bottom: 2px solid #e0e0e0;
    margin-bottom: 30px;
    gap: 30px;
}

.lk-nav-link {
    color: #666666 !important;
    text-decoration: none;
    font-size: 16px;
    font-weight: 500;
    padding: 12px 4px;
    position: relative;
    transition: color 0.2s ease;
}

.lk-nav-link:hover {
    color: #1a1a1a !important;
}

/* Состояние активной страницы */
.lk-nav-link.is-active {
    color: #1a1a1a;
    font-weight: 600;
}

.lk-nav-link.is-active::after {
    content: '';
    position: absolute;
    bottom: -2px;
    left: 0;
    width: 100%;
    height: 2px;
    background-color: #ff5311;
}

/* 3. Сетки страниц (Layouts) */
.lk-profile-grid {
    display: grid;
    grid-template-columns: 1fr 320px;
    gap: 24px;
    align-items: start;
}

.lk-main-col {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

/* 4. Формы, поля ввода и интерактивные элементы */
.lk-form-group {
    margin-bottom: 15px;
}

.lk-form-group label {
    display: block;
    font-size: 14px;
    margin-bottom: 5px;
    color: #555555;
}

.lk-form input[type="text"],
.lk-form input[type="email"],
.lk-form input[type="tel"] {
    width: 100%;
    padding: 10px 12px;
    border: 1px solid #cccccc;
    border-radius: 4px;
    font-size: 14px;
    color: #333333;
    transition: border-color 0.2s;
}

.lk-form input:focus {
    border-color: #ff5311;
    outline: none;
}

/* Состояния видимости (управление через JS) */
.lk-form-hidden {
    display: none;
}

.lk-form-hidden.is-visible {
    display: block;
    margin-top: 20px;
}

.lk-preview-hidden {
    display: none;
}

.lk-preview-hidden.is-visible {
    display: block;
}

/* Стилизация элементов формы добавления организации */
.lk-input-search-group input {
    flex-grow: 1;
}

.lk-input-error {
    display: none; /* По умолчанию скрыта, показывается через JS */
    color: #c0392b;
    font-size: 13px;
    margin-top: 5px;
}

.lk-input-error.is-visible {
    display: block;
}

/* Ссылка ручного ввода внутри ошибки */
.lk-link-inline {
    color: #ff5311;
    text-decoration: underline;
    cursor: pointer;
    margin-left: 5px;
}
.lk-link-inline:hover { text-decoration: none; }

/* Декоративный разделитель блока реквизитов */
.lk-legal-fields-block {
    background: #fffdf7;
    border: 1px solid #fff59d;
    padding: 20px;
    border-radius: 4px;
}

/* Контейнер самой карточки юрлица */
.checkout-legal-item.lk-legal-item {
    display: flex;
    align-items: center; /* Центрируем всё строго по вертикали */
    justify-content: space-between; /* Название слева, кнопки управления справа */
    gap: 15px; /* Расстояние между элементами внутри карточки */
    padding: 12px 16px;
    border: 1px solid #e0e0e0;
    border-radius: 6px;
    margin-bottom: 10px;
    cursor: pointer;
    transition: all 0.2s ease;
}

/* Стили при наведении и выборе радиокнопки */
.checkout-legal-item.lk-legal-item:hover {
    border-color: #b5b5b5;
    background-color: #fafafa;
}

/* Сама радиокнопка (отступы, чтобы не прилипала) */
.checkout-legal-item .js-select-legal {
    margin: 0;
    flex-shrink: 0; /* Чтобы радиокнопка не сжималась */
    transform: scale(1.1); /* Слегка увеличим для удобства клика */
}

.checkout-legal-info {
    flex-grow: 1; /* Занимает всё свободное пространство по центру */
    display: flex;
    flex-direction: column; /* Выстраиваем название и ИНН друг под другом */
    gap: 4px; /* Небольшой аккуратный отступ между строками */
    text-align: left; /* Строго по левому краю */
}
/* Блок предпросмотра результатов DaData */
.lk-legal-preview {
    background: #fffdf7;
    border: 1px solid #fff59d;
    padding: 15px;
    border-radius: 4px;
    margin-top: 15px;
}

.lk-legal-hidden {
  display:none;
}

.lk-preview-title {
    margin: 0 0 8px 0;
    font-size: 14px;
}

.lk-preview-row {
    margin: 0 0 5px 0;
    font-size: 13px;
}

.lk-preview-row:last-of-type {
    margin-bottom: 15px;
}

/* Кнопка подтверждения */
.lk-btn-confirm {
    background: #2e7d32; /* Твой приглушенный зеленый для финансового действия */
}

.lk-btn-confirm:hover {
    background: #215d25;
}

/* Поиск ИНН (инпут + кнопка в одну строку) */
.lk-input-search-group {
    display: flex;
    gap: 10px;
}

/* Элементы ошибок */
.lk-input-error {
    color: #c0392b;
    font-size: 12px;
    margin-top: 5px;
}

/* Кнопки и ссылки */
.lk-btn {
    background: #1a1a1a;
    color: #ffffff;
    border: none;
    padding: 10px 20px;
    border-radius: 4px;
    font-size: 14px;
    cursor: pointer;
    font-weight: 500;
    transition: background 0.2s ease;
}

.lk-btn:hover {
    background: #ff5311;
}

.lk-btn-secondary {
  background: #f0edea; /* Мягкий серый с теплым подтоном */
  color: #333333;
  border: 1px solid #dcd7d2;
}

.lk-btn-secondary:hover {
  background: #e4ded9;
  color: #000000;
}

.lk-btn-sm {
    padding: 6px 12px;
    font-size: 12px;
    text-align: center;
}

.lk-link {
    color: #ff5311;
    text-decoration: underline;
    font-size: 14px;
}

.lk-link:hover {
    text-decoration: none;
    color:#333;
}

/* 5. Блок бонусов (Кошелек) */
.lk-wallet-card {
    background: #fdfdfd;
    border-color: #dcdcdc;
}

.lk-bonus-count {
    font-size: 36px;
    font-weight: bold;
    color: #2e7d32;
    margin-bottom: 10px;
}

.lk-bonus-count .lk-currency {
    font-size: 18px;
    font-weight: normal;
    color: #777777;
}

.lk-bonus-desc {
    font-size: 14px;
    color: #666666;
    line-height: 1.5;
    margin: 0;
}

/* 6. Блок юридических лиц */
.lk-legal-item {
    display: flex;
    justify-content: space-between;
    align-items: center;
    background: #fdfbfa;
    padding: 15px;
    border-radius: 6px;
    margin-bottom: 15px;
    border-left: 4px solid #ff5311;
}

.lk-legal-info {
    display: flex;
    flex-direction: column;
}

.lk-legal-name {
    font-weight: bold;
    color: #333333;
}

.lk-legal-inn {
    font-size: 12px;
    color: #777777;
    margin-top: 2px;
}

.lk-legal-badge {
    background: #e8f5e9;
    color: #2e7d32;
    font-size: 13px;
    padding: 6px 12px;
    border-radius: 20px;
    font-weight: 500;
}

.lk-legal-action {
    margin-top: 15px;
}

.lk-legal-preview {
    background: #fffde7;
    border: 1px solid #fff59d;
    padding: 15px;
    border-radius: 4px;
    margin-top: 15px;
}

.lk-legal-preview p {
    margin: 0 0 10px 0;
    font-size: 13px;
}

/* 7. Страница истории заказов (Таблицы) */
.lk-table-responsive {
    width: 100%;
    overflow-x: auto;
}

.lk-table {
    width: 100%;
    border-collapse: collapse;
    text-align: left;
    font-size: 14px;
}

.lk-table th,
.lk-table td {
    padding: 12px;
    border-bottom: 1px solid #f0f0f0;
}

.lk-table th {
    background: #fbfbfb;
    color: #555555;
    font-weight: 600;
}

/* Бейджи статусов */
.lk-status {
    padding: 4px 8px;
    border-radius: 4px;
    font-size: 12px;
    font-weight: 500;
    display: inline-block;
}

.status-processing {
    background: #fff3cd;
    color: #856404;
}

.status-completed {
    background: #d4edda;
    color: #155724;
}

/* 8. Страница макетов (Карточки) */
.lk-grid-templates {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: 20px;
    margin-top: 20px;
}

.lk-template-item {
    border: 1px solid #e0e0e0;
    border-radius: 6px;
    overflow: hidden;
    background: #ffffff;
    display: flex;
    flex-direction: column;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.lk-template-item:hover {
    transform: translateY(-2px);
    box-shadow: 0 4px 10px rgba(0,0,0,0.05);
}

.lk-template-preview {
    background: #f7f7f7;
    height: 180px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-bottom: 1px solid #e0e0e0;
    color: #888888;
    font-size: 13px;
    padding: 15px;
    text-align: center;
}

.lk-img-placeholder {
    font-style: italic;
    color: #999999;
}

.lk-template-meta {
    padding: 15px;
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.lk-template-title {
    font-weight: 600;
    font-size: 14px;
    color: #333333;
}

.lk-template-date {
    font-size: 12px;
    color: #777777;
    margin-bottom: 10px;
}

/* 9. Адаптивность для мобильных телефонов и планшетов */
@media (max-width: 768px) {
    .lk-navigation {
        gap: 15px;
        overflow-x: auto;
        white-space: nowrap;
        padding-bottom: 5px;
        -webkit-overflow-scrolling: touch;
    }

    .lk-nav-link {
        font-size: 14px;
        padding: 10px 2px;
    }

    .lk-profile-grid {
        grid-template-columns: 1fr;
    }

    .lk-sidebar-col {
        order: -1; /* Бонусы улетают наверх перед основными настройками */
    }

    .lk-legal-item {
        flex-direction: column;
        align-items: flex-start;
        gap: 10px;
    }

    .lk-legal-badge {
        align-self: flex-start;
    }

    .lk-input-search-group {
        flex-direction: column;
    }

    .lk-btn {
        width: 100%;
        text-align: center;
    }
}

/* Стили для выезжающей панели профиля */
.drawer-profile-content {
    position: relative;
    padding:40px 40px 100px;
}

.user-welcome-zone {
    margin-bottom: 30px;
    padding-bottom: 20px;
    border-bottom: 1px solid #eee;
}

.user-welcome-title {
    font-weight: 700;
    margin-bottom: 5px;
}

.user-status-badge {
    font-size: 12px;
    color: #888;
    background: #f5f5f5;
    padding: 3px 8px;
    border-radius: 12px;
    display: inline-block;
}

.user-order-tracker {
    margin-bottom: 35px;
    background: #f9f9f9;
    padding: 15px;
    border-radius: 6px;
}

.user-order-tracker .tracker-title {
    font-weight: bold;
    font-size: 14px;
    margin-bottom: 10px;
    color: #333;
}

.user-order-tracker .order-number-date {
    margin: 0 0 5px 0;
    font-size: 13px;
}

.user-order-tracker .order-status-text {
    margin: 0;
    font-size: 13px;
    color: #ff0000; /* Фирменный красный MerchMaker */
}

.user-order-tracker .order-empty-text {
    margin: 0;
    font-size: 13px;
    color: #999;
    font-style: italic;
}

.drawer-menu-links {
    list-style: none;
    padding: 0;
    margin: 0 0 40px 0;
}

.drawer-menu-links li {
    margin-bottom: 15px;
}

.drawer-menu-links li a {
    text-decoration: none;
    color: #333;
    font-weight: 600;
    display: block;
    transition: color 0.2s ease;
}

.drawer-menu-links li a:hover {
    color: #ff0000;
}

.drawer-logout-zone {
    position: absolute;
    bottom: 30px;
    left: 0;
    right: 0;
}

.btn-logout {
    display: block;
    text-align: center;
    color: #999;
    text-decoration: none;
    font-size: 14px;
    padding: 10px;
    border: 1px solid #ddd;
    border-radius: 4px;
    transition: all 0.2s ease;
}

.btn-logout:hover {
    color: #333;
    border-color: #999;
    background: #f5f5f5;
}

/* ================================================== */



.separator {
    line-height: 0.5;
    text-align: center;
    margin: 30px 0 30px 0;
}

.separator span {
    display: inline-block;
    position: relative;
}

.separator span:before,
.separator span:after {
    content: "";
    position: absolute;
    border-bottom: 1px solid rgba(255, 255, 255, .1);
    top: 5px;
    width: 150px;
}

.separator span:before {
    right: 100%;
    margin-right: 15px;
}

.separator span:after {
    left: 100%;
    margin-left: 15px;
}

.separator span i {
    margin-top: -5px;
}

.separator span i:before {
    font-size: 8px;
    padding: 0;
    margin: 0;
    float: none;
    font-family: FontAwesome;
    content: "\f111";
}

.de_light .separator span:before,
.de_light .separator span:after {
    border-bottom: 1px solid rgba(0, 0, 0, .2);
}

.text-light .separator span:before,
.text-light .separator span:after {
    border-bottom: 1px solid rgba(255, 255, 255, .1);
}


/* --------------------------------------------------
	 * plugin
	 * --------------------------------------------------*/




.side-content { display: flex; overflow-y: scroll; display: block; max-width: 414px; width: 100%; right: -100%; height:100%; background: #ffffff; position: fixed; z-index: 99999; transition: 0.5s ease; top: 0; opacity: 0; box-shadow: 0px 0px 85px rgba(0, 0, 0, 0.2); }
.side-content-info { padding: 40px 40px 100px; }
.side-content-open { right: 0; opacity: 1;}

  /*content*/
.side-content-image { position: fixed; bottom: 0; background:#2046f2; }
.mega-menu .menu-links  li.side-menu-main:hover { color: inherit; }
.side-content .side-logo img { height: 40px; display: block; }
.side-content .side-logo p { display: block; clear: both; }
.menu-toggle-hamburger.menu-close { display: block; text-align: right; }
.menu-toggle-hamburger.menu-close span { color: #353535; background: #f6f7f8; border-radius: 50%; width: 30px; height: 30px; line-height: 30px; cursor: pointer; display: inline-block; text-align: center; font-size: 12px; font-weight: bold; transition: all 0.5s ease-in-out; -webkit-transition: all 0.5s ease-in-out; -o-transition: all 0.5s ease-in-out; -ms-transition: all 0.5s ease-in-out; -moz-transition: all 0.5s ease-in-out; }
.menu-toggle-hamburger.menu-close span:hover { color: #ffffff; background: #2046f2; }

/* ================================================== */


/* R E S P O N S I V E */


/* ================================================== */

@media(min-width:980px) and (max-width: 1199px) {
    header #mainmenu a {
        padding-left: 5px;
        padding-right: 5px;
    }
    #mainmenu li a:after {
        margin-left: 15px;
    }
    .pf_full_width.gallery_border .item,
    .pf_full_width.gallery_border.pf_2_cols .item,
    .pf_full_width.gallery_border.pf_3_cols .item {
        float: left;
        width: 23.95%;
    }
}


/* --------------------------------------------------
	design for 768px
	/* ================================================== */

@media (min-width: 768px) and (max-width: 979px) {
    .slider_text {
        padding-top: 0px;
    }
}

@media only screen and (max-width: 992px) {
    .text-center-sm {
        text-align: center;
    }
    #menu-btn {
        display: block;
        position: relative;
        float: right;
    }
    header {
        display: none;
    }
    header .info {
        display: none !important;
    }
    header.header-bg {
        background: rgba(0, 0, 0, 1);
    }
    header,
    header.fixed {
        display: block;
        position: static;
        margin: 0;
        padding: 0;
        margin-top: 0;
        height: auto;
        background: #000000;
        padding: 15px 0 15px 0;
    }
    #de-sidebar {
        position: absolute !important;
        width: 100%;
        right: 1px;
    }
    header.side-header,
    .de_light header.side-header {
        position: absolute !important;
        display: block;
        height: 60px;
        top: 0;
        background: #000;
    }
    header.side-header #mainmenu {
        position: absolute;
        background: #000;
        margin: 0;
        top: 60px;
        left: 0;
        width: 100%;
    }
    header.side-header #logo .logo {
        display: none;
    }
    header.side-header #logo .logo-2 {
        display: inline-block;
        position: absolute;
        height: 30px;
        top: 15px;
        left: 40px;
    }
    header.side-header #menu-btn {
        position: absolute;
        top: 8px;
        right: 30px;
        height: 0;
        z-index: 2000;
        height: 35px;
    }
    header.side-header #mainmenu li {
        display: block;
    }
    header.side-header #mainmenu a,
    .de_light.de-navbar-left header #mainmenu>li>a {
        display: block;
        text-align: center;
        color: #fff;
    }
    .de_light.de-navbar-left header #mainmenu>li {
        border-bottom: solid 1px rgba(255, 255, 255, .1);
    }
    header.side-header #mainmenu a:hover {
        background: none !important;
    }
    header.side-header #mainmenu a:hover {
        background: none !important;
    }
    header.side-header .social-icons-2 {
        display: none;
    }
    header.autoshow {
        height: auto !important;
        top: 0 !important;
    }
    header.autoshow #mainmenu li a {
        background: none !important;
    }
    header.header-mobile-sticky {
        position: fixed;
    }
    .de-navbar-left #subheader {
        padding: 0;
        margin: 0;
    }
    #subheader span {
        display: none;
    }
    #subheader .crumb {
        display: none;
    }
    .de-navbar-left #subheader {
        padding-top: 70px;
    }
    .slider_text h1 {
        font-size: 32px;
    }
    .slider_text .description {
        display: none;
    }
    div#logo {
        margin-top: -15px;
    }
    #logo,
    #logo .inner {
        vertical-align: middle;
        height: auto;
    }
    #domain-check .text,
    #domain-check .button {
        width: 100%;
    }
    .container-4 .de-team-list {
        width: 49.9%;
        float: left;
        position: relative;
    }
    #testimonial-full blockquote {
        padding: 20px;
    }
    #revolution-slider {}
    nav {
        width: 100%;
    }

    #mainmenu {
		margin-top:20px !important;
        display: none;
        float: none;
        z-index: 200;
        width: 100%;
        margin: 0;
        padding: 0;
    }
    #mainmenu a {
        text-align: left;
        padding-left: 0;
        padding-top: 10px !important;
        padding-bottom: 10px !important;
    }
    #mainmenu li li a,
    #mainmenu li li li a {
        padding-left: 0;
    }
    #mainmenu a:hover {
        background: #111 !important;
    }
    #mainmenu a:hover {
        background: #111 !important;
    }
    #mainmenu li ul {
        display: block;
        position: inherit;
        margin: 0;
        width: 100%;
    }
    #mainmenu li {
        border-bottom: solid 1px #eeeeee;
        margin: 0;
        width: 100%;
        display: block;
    }
    #mainmenu li a:after {
        display: none;
    }
    #mainmenu li:last-child {
        margin-bottom: 30px;
    }
    #mainmenu li ul {
        border-top: solid 1px #eeeeee;
        top: auto;
        width: auto;
        height: auto;
        position: inherit;
        visibility: visible;
        opacity: 1;
    }
    #mainmenu li ul a {
        width: 100%;
        background: none;
        border: none;
    }
    #mainmenu li ul li {
        border: none;
        padding-left: 40px !important;
    }
    #mainmenu li ul li a {
        display: block;
    }
    #mainmenu li ul li:last-child {
        border-bottom: none;
        margin: 0;
    }
    #mainmenu li ul li:last-child a {
        border-bottom: none;
    }
    #mainmenu li a {
        color: #212121;
    }
    #mainmenu li li a {
        font-size: 10px;
    }
    #mainmenu li li a:hover {
        color: #fff;
    }
    header.header-mobile #mainmenu {
        display: none;
        float: none;
        z-index: 200;
        width: 100%;
        margin: 0;
        padding: 0;
    }
    header.header-mobile #mainmenu a {
        text-align: left;
        padding-top: 10px !important;
        padding-bottom: 10px !important;
    }
    header.header-mobile #mainmenu a:hover {
        background: none !important;
    }
    header.header-mobile #mainmenu li ul {
        display: block;
        position: inherit;
        margin: 0;
        width: 100%;
    }
    header.header-mobile #mainmenu li {
        border-bottom: solid 1px #eee;
        ;
        margin: 0;
        width: 100%;
        display: block;
    }
    header.header-light.header-mobile #mainmenu li,
    header.header-light.header-mobile #mainmenu li ul li a {
        border-color: #eee;
    }
    header.header-mobile #mainmenu li a:after {
        display: none;
    }
    header.header-mobile #mainmenu li:last-child {
        margin-bottom: 30px;
    }
    header.header-mobile #mainmenu li ul {
        border-top: none;
        top: auto;
    }
    header.header-mobile #mainmenu li ul a {
        width: 100%;
        background: none;
        border: none;
    }
    header.header-mobile #mainmenu li ul li {
        border: none;
        padding-left: 40px !important;
    }
    header #mainmenu li ul li:first-child {
        border-top: solid 1px #eeeeee;
    }
    header.header-mobile #mainmenu li ul li a {
        display: block;
        border-bottom: solid 1px #eeeeee;
    }
    header.header-mobile #mainmenu li ul li:last-child {
        border-bottom: none;
        margin: 0;
    }
    header.header-mobile #mainmenu li ul li:last-child a {
        border-bottom: none;
    }
    header.header-mobile #mainmenu li a {
        color: #888;
    }
    header.header-mobile #mainmenu li a:hover {
        color: #333;
    }
    header.header-mobile #mainmenu li li a {
        font-size: 12px;
    }
    header.header-mobile #mainmenu li li a:hover {
        color: #888;
    }
    header.header-mobile #mainmenu li ul {
        height: 0;
        overflow: hidden;
        position: relative;
        left: 0;
    }
    header.header-mobile #mainmenu li ul li ul li:last-child {
        border-bottom: solid 1px #eeeeee;
    }
    header.header-mobile #mainmenu li ul li ul {
        margin-bottom: 10px;
    }
    header.header-mobile #mainmenu>li>span {
        width: 36px;
        height: 36px;
        background: url(/templates/merchmaker/images/ui/arrow-down.png) center no-repeat;
        position: absolute;
        right: 0;
        margin-top: 10px;
        z-index: 1000;
        cursor: pointer;
    }
    header.header-mobile #mainmenu li span.active {
        background: url(/templates/merchmaker/images/ui/arrow-up.png) center no-repeat;
    }
    header.header-mobile #mainmenu li>ul>li>span {
        width: 36px;
        height: 36px;
        background: url(/templates/merchmaker/images/ui/arrow-down.png) center no-repeat;
        position: absolute;
        right: 0;
        margin-top: -45px;
        z-index: 1000;
        cursor: pointer;
    }
    header.header-mobile #mainmenu>li>ul>li>span.active {
        background: url(/templates/merchmaker/images/ui/arrow-up.png) center no-repeat;
    }
    header.header-mobile #mainmenu li ul li a {
        border-bottom: solid 1px #eeeeee;
    }
    header.header-mobile #mainmenu li ul li:last-child>a {
        border-bottom: none !important;
    }
    header.header-light.header-mobile #mainmenu>li>span,
    header.header-light.header-mobile #mainmenu li>ul>li>span {
        background: url(/templates/merchmaker/images/ui/arrow-down-dark.png) center no-repeat;
    }
    header.header-light.header-mobile #mainmenu>li>span.active,
    header.header-light.header-mobile #mainmenu li>ul>li>span.active {
        background: url(/templates/merchmaker/images/ui/arrow-up-dark.png) center no-repeat;
    }
    /* header light */
    .header-light #mainmenu ul li a,
    .header-light #mainmenu ul li a:hover {
        color: #333 !important;
    }
    .de_tab.tab_steps .de_nav {
        text-align: center;
    }
    .de_tab.tab_steps .de_nav li {
        display: block;
        margin: 0;
        padding: 0;
    }
    .de_tab.tab_steps .de_nav li span {
        margin: 0;
        margin-bottom: 40px;
        display: inline-block;
    }
    .de_tab.tab_steps .de_nav li .v-border {
        border: none;
    }
    .hidden-phone {
        display: none;
    }
    .grid_gallery .item {
        width: 100%;
    }
    .table {
        display: block;
    }
    .table [class*="col-"] {
        float: none;
        display: block;
        vertical-align: top;
    }
    .sm-hide {
        display: none;
    }
    .btn-rsvp {
        position: absolute;
    }
    .btn-close {
        position: relative;
    }
    .de_tab.tab_style_4 .de_nav li {
        min-width: 100px;
    }
    .de_tab.tab_style_4 .de_nav {
        border-radius: 0;
        -moz-border-radius: 0;
        -webkit-border-radius: 0;
    }
    .de_tab.tab_style_4 .de_nav li {
        min-width: 33.3%;
        width: 33.3%;
        border: none;
    }
    .de_tab.tab_style_4 .de_nav li:first-child,
    .de_tab.tab_style_4 .de_nav li:last-child {
        border-radius: 0;
        -moz-border-radius: 0;
        -webkit-border-radius: 0;
    }
    #custom-owl-slider {
        width: 120%;
        height: 120%;
    }
    .md-float-right {
        float: none;
    }
    #custom-owl-slider .item img {
        height: 100% !important;
    }
    .schedule-item .sc-time,
    .schedule-item .sc-pic,
    .schedule-item .sc-name,
    .schedule-item .sc-info {
        text-align: left;
        width: 130px;
    }
    .schedule-item .sc-info {
        margin-top: 20px;
        width: 100%;
    }
    .schedule-item .sc-info h3 {
        font-size: 22px;
    }
    .schedule-item .sc-pic {
        width: 60px;
    }
    .schedule-item .sc-pic img {
        border: none;
        width: 40px;
        margin-top: -10px;
    }
    .schedule-item .sc-name span {
        display: inline-block;
        margin-top: -20px;
    }
    .sm-text-center {
        text-align: center;
    }
    .sm-mb10 {
        margin-bottom: 10px;
    }
    .sm-mb20 {
        margin-bottom: 20px;
    }
    .sm-mb30 {
        margin-bottom: 30px;
    }
	.sm-mb40 {
        margin-bottom: 30px;
    }
    .bg-custom {
        background-attachment: scroll !important;
        background-position: top !important;
    }
    .mb-md-30 {
        margin-bottom: 30px;
    }

	h1,
    h1.very-big {
        font-size: 3vw;
        line-height: 3vw;
		letter-spacing:0;
    }
	h1.very-big span.underline{
		height:6px;
	}

	h1.big span.underline{
		height:3px;
	}
}


/* --------------------------------------------------
	custom for 320px & 480px
	/* -------------------------------------------------- */

@media only screen and (max-width: 767px) {
    .pricing-2-col .pricing-box,
    .pricing-3-col .pricing-box,
    .pricing-4-col .pricing-box,
    .pricing-5-col .pricing-box {
        width: 100%;
    }
    #subheader h1 {
        font-size: 24px;
    }
    .picframe img {
        width: 100%;
    }
    .container-4 .de-team-list {
        width: 100%;
        float: left;
        position: relative;
    }
    .countdown-section {
        font-size: 12px;
    }
    .countdown-amount {
        font-size: 36px;
    }
    .container {
        padding-left: 30px;
        padding-right: 30px;
    }
    .feature-box-image,
    .pricing-box {
        margin-bottom: 30px;
    }
    #filters li.pull-right {
        float: none !important;
    }
    .de_tab .de_nav li {
        display: block;
        width: 100%;
    }
    .pf_full_width .item {
        float: left;
        width: 49.9% !important;
    }


    #de-sidebar {
        width: 100%;
        display: block;
        position: relative;
    }
    .gallery_border {
        margin-left: 0px;
    }
    .pf_full_width.gallery_border .item {
        width: 48.9% !important;
    }
    body.boxed {
        margin: 0px;
    }
    #map-container {
        position: static;
        width: 100%;
        height: 500px;
        right: 0;
    }
    .float-form {
        float: none;
        width: 100%;
    }
    h1,
    h1.big,
    h1.very-big {
        font-size: 5vw;
        line-height: 5vw;
		letter-spacing:0;
    }
	h1.very-big span.underline{
		height:3px;
	}
    .subtitle.s2 span {
        display: block;
        padding: 0;
    }
    .countdown-s1 .countdown-show4 .countdown-section,
    .countdown-s3 .countdown-show4 .countdown-section,
    .countdown-s5 .countdown-show4 .countdown-section {
        width: 70px;
    }
    .countdown-s3 .countdown-show4 .countdown-section {
        width: 70px;
        height: 80px;
        float: left;
        border: solid 2px rgba(255, 255, 255, .1);
        padding: 0;
        margin: 2px;
        border-radius: 0;
        padding-top: 20px;
    }
    .countdown-s3 .countdown-amount {
        width: auto;
        margin: 0;
        font-size: 28px;
        font-weight: 500;
    }
    .countdown-s3 .countdown-period {
        width: auto;
        margin: 0 auto;
        font-weight: 400;
        font-size: 12px;
        padding-top: 0px;
    }

	.mb-sm-0{
		margin-bottom:0;
	}

    .mb-sm-30 {
        margin-bottom: 30px;
    }

	.side-bg .background-image{
		display:none;
	}

	section{
	-webkit-background-size: auto 100% !important;
	-moz-background-size: auto 100% !important;
	-o-background-size: auto 100% !important;
	background-size: auto 100% !important;
	background-attachment:scroll !important;
	background-position:top !important;
	}
}


/* --------------------------------------------------
	design for 480px
	/* -------------------------------------------------- */

@media only screen and (min-width: 480px) and (max-width: 767px) {
    .container {
        padding-left: 30px;
        padding-right: 30px;
    }
    .feature-box-image,
    .pricing-box {
        margin-bottom: 30px;
    }
	.xs-hide{
		display:none;
	}
}


/* --------------------------------------------------
	design for 320px
	/* -------------------------------------------------- */

@media only screen and (max-width: 480px) {
    .pf_full_width .item {
        float: left;
        width: 100% !important;
    }

    header div#logo img {
        max-width: 200px;
        height: auto;
    }
    .pf_full_width.gallery_border .item {
        width: 100% !important;
    }
    h3.s2 span {
        display: block;
        margin: 0;
        padding: 0;
    }
}

@media only screen and (max-width: 420px) {
    .schedule-item .sc-name {
        float: none;
        width: 100%;
    }
    .schedule-item .sc-pic {
        display: none;
    }
}

#ifrm {
    display: none
}
