/* 404 */
.no-results .no-results-title h1 {
   font-size: 44px;
}

.no-results p {
   font-size: 22px;
}

/* 404 */

/* *,
*::before,
*::after {
   box-sizing: inherit;
   margin: 0;
   padding: 0;
} */

a {
   color: inherit;
   text-decoration: none;
}

img {
   display: block;
   max-width: 100%;
   height: auto;
}

.dropmenu__item--has-children:hover ul.submenu-rose {
   display: block;
}

.header__top-nav,
.dropmenu,
.submenu-rose,
.header-bottom__nav-list {
   list-style: none;
   margin: 0;
   padding: 0;
}

/* .main-container {
   max-width: 1356px;
   padding: 0 15px;
   margin: 0 auto;
} */

:root {
   --gray-10: #f5f5f5;
   --gray-15: #eaeaea;
   --gray-40: #AAAAAA;
   --gray-50: #7E7E7E;
   --pink: #ff3c72;
   --deep-pink: #F1225C;
   --dark: #272727;
   --white: #fff;
}

/* @font-face {
   font-family: 'Inter';
   src: url(fonts/Inter18pt-Regular.woff2);
   font-display: swap;
   font-weight: 400;
   font-style: normal;
}

@font-face {
   font-family: 'Inter';
   src: url(fonts/Inter18pt-SemiBold.woff2);
   font-display: swap;
   font-weight: 600;
   font-style: normal;
}

@font-face {
   font-family: 'Inter';
   src: url(fonts/Inter24pt-Bold.woff2);
   font-display: swap;
   font-weight: 700;
   font-style: normal;
} */

.cat_add3 {
   flex-grow: 1;
}

.main__container.container a {
   text-decoration: none !important;
}

.main__container.container p {
   margin: 0 0 0px !important;
}

.mob-parent-arrow {
   display: flex;
}

.mob-parent-arrow a.p-open {
   width: 80%;
}

.mob-parent-arrow svg {
   width: 20%;
   cursor: pointer;
}

.btn-reset {
   border: none;
   padding: 0;
   background-color: transparent;
   cursor: pointer;
}

.header__top {
   margin-bottom: 10px;
   border-bottom: 1px solid var(--gray-15);
}

.header__top-nav {
   display: flex;
   max-width: 400px;
   margin-top: 5px;
   margin-bottom: 5px;
   justify-content: space-between;
   gap: 16px;
   font-size: 12px;
}

.header-top__link {
   color: var(--gray-50);
}

.header-top__link:hover {
   color: var(--pink) !important;
}

.header-top__link:active {
   color: var(--deep-pink);
}

.header__middle {
   display: flex;
   justify-content: space-between;
   margin-bottom: 10px;
   align-items: center;
}

.header__middle-left {
   display: flex;
   align-items: center;
}

.logo {
   margin-right: 16px;
}

.header-middle__descr {
   max-width: 236px;
   font-size: 12px;
}

.header-middle__right {
   display: flex;
}

.telephone {
   display: block;
   margin-bottom: 3px;
   font-size: 20px;
}

.telephone:hover {
   color: var(--pink);
}

.telephone:active {
   color: var(--deep-pink);
}

.header-middle__contact {
   margin-right: 20px;
   margin-top: 3px;
}

.contacts__descr {
   display: block;
   font-size: 12px;
   color: var(--gray-50);
}

.header-middle__review {
   padding: 7px 12px;
   background-color: var(--gray-10);
   border-radius: 12px;
}

.review__link {
   display: flex;
   align-items: center;
   font-size: 14px;
   margin-bottom: 3px;
}

.review__descr {
   display: block;
   font-size: 10px;
   color: var(--gray-50);
}

.review__link svg {
   margin-right: 3px;
}

.review__link span {
   margin-right: 3px;
}



.header-bottom__container {
   display: flex;
   align-items: center;
   padding: 12px;
   gap: 32px;
   background-color: var(--gray-10);
   border-radius: 12px;
}

.header-bottom__nav {
   display: flex;
   align-items: center;
   width: 70%;
   margin-right: 32px;
   overflow: hidden;
}

.header-bottom__nav-list {
   display: flex;
   width: 100%;
   gap: 32px;
   white-space: nowrap;
   padding: 10px 0;
   transition: opacity 0.2s ease-in-out, visibility 0.2s ease-in-out;
   opacity: 1;
   visibility: visible;
}

.header-bottom__nav-list::-webkit-scrollbar {
   height: 0.5px;
   /* Высота скроллбара */
}

.hidden-nav {
   opacity: 0;
   visibility: hidden;
}

.header-bottom__link {
   white-space: nowrap;
}

.burger-btn {
   display: flex;
   flex-direction: row;
   gap: 8px;
   margin-right: 15px;
   padding: 8px 22px;
   background-color: var(--pink);
   border-radius: 12px;
   color: var(--white);
   align-items: center;
   transition: all 0.2s ease-in-out;
}

.burger-btn svg {
   flex-shrink: 0;
}

.burger-btn:hover,
.mobile-burger-btn:hover,
.burger-btn.lighter {
   background-color: var(--deep-pink);
   box-shadow: 0px 0px 12px 0px #F1225C80;
}

/* NAVIGATION */

.navigation {
   position: relative;
   overflow: hidden;
   margin-right: 20px;
}

.nav-container {
   display: flex;
   overflow-x: auto;
   scroll-behavior: smooth;
   -webkit-overflow-scrolling: touch;
}

.menu {
   display: flex;
   padding: 5px 0;
   margin: 0;
   list-style: none;
   gap: 32px;
   scrollbar-color: transparent transparent;
   /* thumb and track color */
   scrollbar-width: 0px;
}

.nav-container::-webkit-scrollbar {
   visibility: hidden;
   width: 0px;
   display: none;
}

.nav-container::-webkit-scrollbar {
   width: 0;
}

.nav-container::-webkit-scrollbar-track {
   background: transparent;
}

.nav-container::-webkit-scrollbar-thumb {
   background: transparent;
   border: none;
}

.nav-container {
   -ms-overflow-style: none;
   scrollbar-width: none;
}

.menu li {
   flex-shrink: 0;
}

.menu li:hover a {
   color: var(--pink) !important;
}

.arrow {
   position: absolute;
   top: 50%;
   transform: translateY(-50%);
   color: white;
   border: none;
   padding: 10px;
   cursor: pointer;
   z-index: 1;
}

.arrow-left {
   left: 0;
   background: linear-gradient(to right, #f5f5f5 0%, rgba(245, 245, 245, 0.8) 100%);
}

.arrow-right {
   right: 0;
   background: linear-gradient(to left, #f5f5f5 0%, rgba(245, 245, 245, 0.8) 100%);
}

@media (max-width: 1024px) {

   .navigation {
      max-width: 80%;
   }
}

/* Mobile Burger Menu */

.mobile-burger-btn {
   display: none;
   flex-direction: column;
   align-items: center;
   justify-content: center;
   gap: 4px;
   padding: 8px;
   background-color: var(--pink);
   border-radius: 12px;
   cursor: pointer;
}

.mobile-burger-btn span {
   width: 20px;
   height: 2px;
   background-color: var(--white);
   border-radius: 10px;
}

.header-bottom__link {
   font-size: 16px;
   flex-shrink: 0;
}

.header-bottom__link:hover {
   color: var(--pink);
}

.header-bottom__link:active {
   color: var(--deep-pink);
}

.service {
   display: flex;
   gap: 7px;
   margin-left: auto;
}

.icon-favorite {
   margin-right: 10px;
}

.icon-favorite1:hover {
   fill: var(--deep-pink);
}

.icon-shop1:hover {
   fill: var(--deep-pink);
}

#wrap {
   /* display: block; */
   position: relative;
   height: 32px;
   float: right;
   padding: 0;
   position: relative;
   margin-right: 15px;
}

#search_clone_h {
   position: relative;
   height: 36px;
   float: right;
   padding: 0;
   position: relative;
   margin-right: 15px;
}

#search {
   height: 27px;
   font-size: 16px;
   display: inline-block;
   font-family: "Lato";
   font-weight: 400;
   border: none;
   outline: none;
   color: var(--gray-50);
   padding: 3px;
   padding-right: 40px;
   padding-left: 10px;
   width: 0px;
   position: absolute;
   top: 0;
   right: 0;
   background: none;
   z-index: 3;
   transition: width .4s cubic-bezier(0.000, 0.795, 0.000, 1.000);
   cursor: pointer;
}

#search:focus:hover {
   border-bottom: 1px solid #BBB;
}

#search:focus {
   width: 800px;
   z-index: 1;
   border: none;
   background-color: var(--white);
   border-radius: 15px;
   cursor: text;
}

#search_submit {
   height: 32px;
   width: 32px;
   display: inline-block;
   float: right;
   background: url(/image/new-menu/Search.svg) center center no-repeat;
   text-indent: -10000px;
   border: none;
   position: absolute;
   top: 0;
   right: 0;
   z-index: 2;
   cursor: pointer;
   transition: opacity .4s ease;
}

#search_submit:hover {
   opacity: 0.8;
}

/* Основные стили для скрытия и позиционирования меню */
.menu-wrapper {
   position: relative;
   display: inline-block;
}

.burger-btn {
   background-color: var(--pink);
   border: none;
   cursor: pointer;
}

/* Позиционирование и стили для dropmenu */
.dropmenu {
   display: none;
   position: absolute;
   top: 50px;
   /* Появляется сразу под кнопкой */
   left: -11px;
   list-style: none;
   padding: 0;
   margin: 8px 0;
   background-color: var(--gray-10);
   border-radius: 15px;
   width: 278px;
   padding: 10px 0;
   z-index: 999999999;
}

.mobile-dropmenu {
   display: none;
   position: fixed;
   top: 0;
   left: 0;
   background-color: var(--white);
   width: 100%;
   height: 100%;
   z-index: 9999999999;
}

.mobile-dropmenu-wrapper {
   display: flex;
   flex-direction: column;
   height: 100%;
   padding: 8px 16px 0 16px;
}

.mobile-dropmenu-top {
   display: flex;
   justify-content: space-between;
   align-items: center;
   margin-bottom: 20px;
}

.close-menu {
   cursor: pointer;
}

.mobile-dropmenu-main-item {
   display: flex;
   align-items: center;
   gap: 6px;
   font-size: 20px;
   font-weight: 600;
   line-height: 20px;
   letter-spacing: -0.025em;
   background-color: var(--gray-10);
   border-radius: 12px;
   padding: 16px;
   cursor: pointer;
}

.mobile-dropmenu-main-item::before {
   content: '';
   display: block;
   position: relative;
   top: 0;
   left: 0;
   width: 8px;
   height: 8px;
   border-radius: 100%;
   background-color: var(--pink);
}

.mobile-dropmenu-main-item .main-item-arrow {
   margin-right: 0;
   margin-left: auto;
}

.mobile-dropmenu-list {
   display: flex;
   flex-direction: column;
   margin-top: 20px;
   padding: 0 16px;
   gap: 4px;
}

.mobile-dropmenu-item {
   padding: 12px;
   color: var(--gray-50);
}

.mobile-dropmenu-bottom {
   display: flex;
   flex-direction: column;
   gap: 20px;
   padding: 20px 12px;
   margin-top: auto;
   margin-bottom: 0;
   border-top: 1px solid #dcdcdc;
}

.mobile-dropmenu-bottom .bottom-container1 {
   display: flex;
   justify-content: space-between;
}

.mobile-dropmenu-bottom .bottom-container1 div {
   display: flex;
   flex-direction: column;
   gap: 8px;
}

.mobile-dropmenu-bottom .bottom-container1 div a {
   font-size: 20px;
   font-weight: 600;
   line-height: 20px;
   letter-spacing: -0.025em;
}

.mobile-dropmenu-bottom .bottom-container1 div span {
   font-size: 14px;
   font-weight: 400;
   line-height: 16px;
   color: var(--gray-50);
}

.mobile-dropmenu-bottom .bottom-container2 {
   display: flex;
   flex-direction: column;
   gap: 6px;
}

.mobile-dropmenu-bottom .bottom-container2 div {
   display: flex;
   align-items: center;
   gap: 10px;
}

.mobile-dropmenu-bottom .bottom-container2 div span {
   display: flex;
   align-items: center;
   gap: 6px;
}

.mobile-dropmenu-bottom .bottom-container2 .yandex-text {
   font-size: 10px;
   font-weight: 500;
   line-height: 12.1px;
   color: #8c8c8c;
}

/* Мобильный поиск */
.mobile-search-wrapper {
   padding: 0 16px;
   margin-top: 8px;
}

.mobile-search-wrapper form {
   display: flex;
   align-items: center;
   position: relative;
}

.mobile-search-wrapper #mobile-search {
   width: 100%;
   background-color: var(--gray-10);
   font-size: 16px;
   font-weight: 400;
   line-height: 16px;
   padding: 16px 16px 16px 44px;
   border: none;
   border-radius: 14px;
   outline: none;
}

.mobile-search-wrapper #mobile-search-submit {
   position: absolute;
   background: url(/image/new-menu/mobile-search.svg) center center no-repeat;
   height: 20px;
   width: 20px;
   margin-left: 16px;
   display: inline-block;
   border: none;
   cursor: pointer;
}

/* Добавляем класс для отображения меню при клике */
.dropmenu.open {
   display: block;
}

.mobile-dropmenu.open {
   display: block;
}

.submenu-rose__name.lvl3:hover .submenu-rose-lv3 {
   display: block !important;
}

/* Стили для подменю */
.submenu-rose {
   display: none;
   position: absolute;
   top: -20px;
   left: 97%;
   /* Появляется справа от пункта "Розы" */
   margin-left: 8px;
   background-color: var(--gray-10);
   border-radius: 15px;
   width: 278px;
}

.submenu-rose-lv3 {
   display: none;
   position: absolute;
   top: -10px;
   left: 97%;
   /* Появляется справа от пункта "Розы" */
   margin-left: 8px;
   background-color: var(--gray-10);
   border-radius: 15px;
   width: 278px;
}

/* Добавляем класс для отображения подменю при клике */
.submenu-rose.open {
   display: block;
}

/* Стили для элементов списка */
.dropmenu__item,
.submenu-rose-lv3__name,
.submenu-rose__name {
   height: 48px;
   display: flex;
   align-items: center;
   padding: 0 20px;
   position: relative;
}

/* Стили для ссылок */
.dropmenu__link,
.submenu-rose__link {
   text-decoration: none;
   color: var(--dark);
   width: 100%;
   height: 100%;
   display: flex;
   align-items: center;
   justify-content: space-between;
   transition: transform 0.2s ease;
   padding-left: 24px;
   position: relative;
}

.submenu-rose-lv3__link {
   text-decoration: none;
   color: var(--dark);
   width: 100%;
   height: 100%;
   display: flex;
   align-items: center;
   justify-content: space-between;
   transition: transform 0.2s ease;
   position: relative;
}

.submenu-rose__name span {
   color: var(--deep-pink);
   padding-left: 24px;
   font-size: 18px;
}

/* Эффект при наведении на ссылки */
.dropmenu__link:hover,
.submenu-rose-lv3__link:hover,
.submenu-rose__link:hover {
   color: var(--deep-pink) !important;
   transform: translateX(8px);
}

/* Точка слева от элемента при наведении */
.dropmenu__link::before,
.submenu-rose__link::before {
   content: "";
   position: absolute;
   left: 8px;
   width: 8px;
   height: 8px;
   background-color: transparent;
   border-radius: 50%;
   top: 50%;
   transform: translateY(-50%);
   transition: background-color 0.2s ease;
}

.submenu-rose-lv3__link::before {
   content: "";
   position: absolute;
   left: -20px;
   width: 8px;
   height: 8px;
   background-color: transparent;
   border-radius: 50%;
   top: 50%;
   transform: translateY(-50%);
   transition: background-color 0.2s ease;
}

/* Показ точки при наведении */
.dropmenu__link:hover::before,
.submenu-rose-lv3__link:hover::before,
.submenu-rose__link:hover::before {
   background-color: var(--deep-pink) !important;
}

.overlay {
   position: fixed;
   top: 0;
   left: 0;
   width: 100%;
   height: 100%;
   background-color: rgba(0, 0, 0, 0.1);
   /* Черный с прозрачностью */
   display: none;
   /* Скрыт по умолчанию */
   z-index: 10;
   /* Оверлей выше контента */
}

/* Когда меню открыто, показываем оверлей */
.overlay.show {
   display: block;
}

.service-768 {
   display: none;
}

/* Стили для блока каталога */

.catalog {
   display: none;
   position: absolute;
   z-index: 100;
   top: 0;
   left: 0;
   background-color: var(--white);
   width: 100%;
   height: 100%;
}

.catalog.show {
   display: block;
}

.close-catalog,
.catalog-close-menu {
   cursor: pointer;
}

.catalog-wrapper-top {
   display: flex;
   justify-content: space-between;
   align-items: center;
   padding: 14px;
}

.catalog-wrapper-top h3 {
   margin-left: 16px;
   margin-right: auto;
}

.catalog-wrapper .mobile-dropmenu-item span.red a {
   color: var(--pink);
   padding-top: 10px;
   text-decoration: underline;
}

.catalog-wrapper .mobile-dropmenu-item a {
   display: flex;
   justify-content: space-between;
   align-items: center;
   font-size: 16px;
   font-weight: 400;
   line-height: 16px;
   cursor: pointer;
}

.catalog-wrapper .mobile-dropmenu-item p {
   display: flex;
   justify-content: space-between;
   align-items: center;
   font-size: 16px;
   font-weight: 400;
   line-height: 16px;
   cursor: pointer;
}

.catalog-wrapper .mobile-dropmenu-item .dropdown-menunew {
   display: none;
}

.catalog-wrapper .mobile-dropmenu-item .dropdown-menunew.open {
   display: block;
   margin-top: 20px;
}

.catalog-wrapper .mobile-dropmenu-item .rotate-new-mob {
   transform: rotate(90deg);
}

.hidden-lv3 {
   display: none;
}

.open-lv3 {
   display: block;
}
      
/* Разрешаем прокрутку внутри мобильного меню */
.mobile-dropmenu.open {
   overflow-y: auto;
   max-height: 100vh;  /* Ограничиваем высоту меню, чтобы оно не вылезало за границы экрана */
}

.mobile-dropmenu .catalog-wrapper {
   max-height: fit-content;
   overflow-y: auto;
}

.catalog-wrapper .arrow.rotate {
   transform: rotate(90deg);
}

.category-item {
   display: flex;
   /* Показываем все элементы по умолчанию */
}

.show-more-btn {
   margin-top: 10px;
   cursor: pointer;
   background-color: #44944a;
   border-color: #44944a;
   color: #ffffff;
   border-width: 4px;
   border-style: solid;
   border-radius: 16px;
   vertical-align: middle;
   text-align: center;
   text-decoration: none;
   outline: none;
   padding: 2px 5px;
}

.show-more-btn:hover {
   background-color: #377a3d;
   border-color: #377a3d;
   color: #ffffff;
   border-width: 4px;
   border-style: solid;
}

@media (max-width:768px) {

   .main__container {
      padding: 12px 24px 0 24px;
   }

   .header__top {
      display: none;
   }

   .service {
      display: none;
   }

   .header-middle__contact {
      display: none;
   }

   .header-middle__review {
      display: none;
   }

   .service-768 {
      display: flex;
      gap: 7px;
      margin-left: auto;
   }

   #search:focus {
      width: 200px;
      z-index: 1;
      border: none;
      background-color: var(--gray-15);
      border-radius: 15px;
      cursor: text;
   }

   .header-bottom__nav-list {
      opacity: 1;
      visibility: visible;
   }

   .hidden-nav {
      display: none;
      /* Не используем скрытие с помощью opacity и visibility */
   }

   .dropmenu {
      width: 220px;
   }

   .submenu-rose {
      width: 220px;
   }

   .submenu-rose-lv3 {
      width: 220px;
   }

   .dropmenu__item {
      padding-left: 0;
   }

   .dropmenu__item,
   .submenu-rose-lv3__name,
   .submenu-rose__name {
      padding-left: 0;
   }

   .dropmenu__link::before,
   .submenu-rose-lv3__link::before,
   .submenu-rose__link::before {
      width: 5px;
      height: 5px;
   }
}

@media (min-width: 992px) {
   .category-item.hidden {
      display: none;
   }
}

@media (min-width: 620px) and (max-width: 991px) {
   .category-item.hidden {
      display: none;
   }
}

@media (max-width: 620px) {
   .show-more-btn {
      display: none;
      /* Скрываем кнопку на малых экранах */
   }
}

@media (max-width:450px) {
   /* Запрещаем прокрутку body, когда меню открыто */
   .no-scroll {
      overflow: hidden;
   }

   .header-bottom {
      display: none;
   }

   .mobile-burger-btn {
      display: flex;
      margin-right: 12px;
   }

   .header__middle {
      margin-bottom: 0;
   }

   .header-middle__descr {
      display: none;
   }

   .icon-favorite1 {
      fill: var(--gray-40);
   }

   .icon-shop1 {
      fill: var(--gray-40);
   }

   .icon-shop:hover .icon-shop1 {
      fill: var(--pink);
   }

   #search:focus {
      width: 175px;
      z-index: 1;
      border: none;
      background-color: var(--gray-15);
      border-radius: 15px;
      cursor: text;
   }

   #search_submit {
      height: 32px;
      width: 32px;
      display: inline-block;
      float: right;
      background: url(/image/new-menu/Icon-search450.svg) center center no-repeat;
      text-indent: -10000px;
      border: none;
      position: absolute;
      top: 0;
      right: 0;
      z-index: 2;
      cursor: pointer;
      transition: opacity .4s ease;
   }

   .submenu-rose-lv3,
   .submenu-rose {
      width: 200px;
   }

   /* 404 */
   .no-results .no-results-title h1 {
      font-size: 32px;
   }

   .no-results p {
      font-size: 18px;
   }

   /* 404 */

}