/* ======================================================================
   CATALOG TOURS (archive maclay_tour)
   Файл: catalog-tours.css (или как у тебя называется)
   Задачи файла:
   1) Hero как на круизах (1-в-1)
   2) Фильтр Tourvisor под Hero (с отрицательным отступом)
   3) Каталог + старый скролл стран (опционально)
   4) Блок "Индивидуальное решение"
   ====================================================================== */


/* ======================================================================
   [01] CATALOG SECTION (общие отступы)
   ====================================================================== */

.main .catalog{
  margin: 70px 0;
}

/* (Если это реально используется где-то в шаблоне) */
.main .catalog-tour .title-text{
  margin-top: 36px;
}


/* ======================================================================
   [02] OLD REGIONS SCROLL (опционально, если блок включишь обратно)
   ====================================================================== */

.main .catalog-list{
  margin-top: 72px;
  height: 370px;
  overflow-x: scroll;
}

/* Скроллбар скрыт по умолчанию */
.main .catalog-list::-webkit-scrollbar{
  height: 10px;
  background: #ccc;
  border-radius: 50px;
  display: none;
}

.main .catalog-list::-webkit-scrollbar-thumb{
  background: #777;
  border-radius: 50px;
}

.main .catalog-list:hover::-webkit-scrollbar{
  display: block;
}

.main .catalog-list .catalog-btn{
  margin-right: 16px;
}

.main .catalog-list .catalog-btn:last-child{
  margin-right: 0;
}

.main .catalog-list .catalog-btn input{
  display: none;
}

.main .catalog-list .catalog-btn span{
  min-width: 155px;
  height: 230px;
  border-radius: 24px;
  overflow: hidden;
  cursor: pointer;
  transition: 0.3s all;

  display: flex;
  align-items: end;
  justify-content: center;

  padding: 24px 10px;
  position: relative;

  font-size: 22px;
  color: #fff;
}

.main .catalog-list .catalog-btn .list-img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  position: absolute;
  top: 0;
  left: 0;
}

.main .catalog-list .catalog-btn .list-name{
  position: relative;
  z-index: 2;
}

.main .catalog-list .catalog-btn input:checked ~ span{
  min-width: 530px;
  height: 335px;
}


/* ======================================================================
   [03] INSIDE CATALOG (заголовки/подписи внутри страницы)
   ====================================================================== */

.main .catalog-box .title-text{
  font-size: 76px;
  line-height: 60px;
  margin: 72px 0 36px;
}

.main .catalog-box .title-subinfo{
  font-size: 16px;
  line-height: 24px;
  color: #8a8a8a;
  max-width: 500px;
  margin-bottom: 50px;
}

.main .catalog-box .block3 .title-text{
  margin: 72px 0;
  font-size: 48px;
  line-height: 100%;
}

.main .catalog-box .block3-item .item .title-text{
  margin: 0;
}


/* ======================================================================
   [04] INDIVIDUAL SOLUTION (форма)
   ====================================================================== */

.main .solution{
  margin-bottom: 70px;
}

.main .solution .title-text{
  margin: 36px 0 72px;
}

.main .solution .filter{
  min-width: 406px;
  margin-right: 45px;
}

.main .solution .filter-item{
  margin-bottom: 24px;
}

.main .solution .filter-item .item-title{
  font-size: 14px;
  margin-bottom: 10px;
  padding-left: 24px;
}

.main .solution .filter-item .input-item .input-box{
  width: 49%;
}

.main .solution .filter-item .input-item .input-box .form-inp{
  border-radius: 50px 4px 4px 50px;
}

.main .solution .filter-item .input-item .input-box:last-child .form-inp{
  border-radius: 4px 50px 50px 4px;
}

.main .solution .filter-item .filter-check{
  display: flex;
  flex-direction: column;
  padding: 16px 24px;
  border-radius: 28px;
  border: 0.5px solid #1C1B1F;
}

.main .solution .filter-item .filter-check label{
  display: flex;
  align-items: center;
  cursor: pointer;
  font-size: 14px;
  color: rgba(28, 27, 31, 0.3019607843);
  margin-bottom: 5px;
}

.main .solution .filter-item .filter-check label:last-child{
  margin-bottom: 0;
}

.main .solution .filter-item .filter-check label input{
  appearance: none;
}

.main .solution .filter-item .filter-check label p{
  color: #1c1b1f;
  display: flex;
  align-items: center;
}

.main .solution .filter-item .filter-check label p::before{
  content: "Выбрать";
  color: rgba(28, 27, 31, 0.3019607843);
  display: block;
  width: 85px;
}

.main .solution .filter-item .filter-check label svg{
  margin-right: 5px;
}

.main .solution .filter-item .filter-check label input:checked ~ p::before{
  content: "Выбрано";
  color: #1c1b1f;
  font-weight: 700;
}

.main .solution .filter-item .filter-check label input:checked ~ p svg path{
  fill: #1c1b1f;
}

.main .solution .filter-item .select-box p{
  display: inline-block;
  text-align: center;
  font-size: 14px;
  margin: 0 10px;
  white-space: nowrap;
}

.main .solution .filter-item .select{
  width: 45%;
}

.main .solution .filter-item .select-head{
  border-radius: 50px 4px 4px 50px;
}

.main .solution .filter-item .select:last-child .select-head{
  border-radius: 4px 50px 50px 4px;
}

.main .solution .filter .input-box{
  margin-bottom: 6px;
}

.main .solution .filter .submit-form{
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 5px 5px 5px 25px;
  background: #fff;
  border: 0.5px solid #1C1B1F;
  color: #1c1b1f;
  margin-top: 36px;
}

.main .solution .filter .submit-form:hover{
  background: #adf3ff;
  opacity: 1;
  border-color: #adf3ff;
}

.main .solution .solution-photo{
  width: 100%;
  max-height: 1075px;
}

.main .solution .solution-photo img{
  width: 100%;
  height: 100%;
  border-radius: 24px;
  object-fit: cover;
}

/* (Если у тебя реально есть отдельная страница solution_info) */
.main .solution_info .solution-photo{
  max-height: 560px;
  object-fit: contain;
}


/* ======================================================================
   [05] HERO (общая база для catalog-hero, используется и в круизах, и в турах)
   ВАЖНО: сюда НЕ пихаем специфичные стили туров, только база.
   ====================================================================== */

.main .wrapper.catalog-hero{
  position: relative;
  display: block !important;
  overflow: hidden;

  height: clamp(560px, 68vh, 760px) !important;
  min-height: clamp(560px, 68vh, 760px) !important;
}

/* фон-обёртка */
.main .wrapper.catalog-hero .catalog-hero__bg{
  position: absolute;
  inset: 0;
  z-index: 0;
}

/* затемнение */
.main .wrapper.catalog-hero .catalog-hero__bg::after{
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(0,0,0,.25) 0%, rgba(0,0,0,.35) 55%, rgba(0,0,0,.45) 100%);
  pointer-events: none;
}

/* картинка */
.main .wrapper.catalog-hero .wrapper-bg{
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  display: block;

  object-fit: cover;
  object-position: center 25%;
}

/* всегда desktop фон */
.main .wrapper.catalog-hero .wrapper-bg--desktop{ display: block !important; }
.main .wrapper.catalog-hero .wrapper-bg--mobile{ display: none !important; }

/* Контейнер контента */
.main .wrapper.catalog-hero .catalog-hero__inner{
  position: relative;
  z-index: 2;
  height: 100%;

  display: flex;
  flex-direction: column;
}

/* Базовый вид заголовка/подзаголовка (если вдруг где-то ещё используешь) */
.main .wrapper.catalog-hero .catalog-hero__title{
  margin: 0;
  color: #fff;
  font-size: clamp(44px, 5vw, 72px);
  line-height: 1.05;
}

.main .wrapper.catalog-hero .catalog-hero__subtitle{
  margin: 16px 0 0;
  color: rgba(255,255,255,.85);
  font-size: 16px;
  line-height: 1.6;
}

/* "Читать отзывы" — по умолчанию скрываем в hero (включишь — уберёшь) */
.main .wrapper.catalog-hero .catalog-hero__reviews{
  display: none !important;
}

/* Socials справа (как у круизов) */
.main .wrapper.catalog-hero .socials{
  position: absolute;
  right: 28px;
  top: 50%;
  transform: translateY(-50%);
  z-index: 5;
}

@media (max-width: 768px){
  .main .wrapper.catalog-hero .socials{
    top: -140px;
    transform: none;
    right: 14px;
  }
}

@media (max-width: 420px){
  .main .wrapper.catalog-hero .socials{
    top: -140px;
  }
}


/* ======================================================================
   [06] TOURS HERO (архив maclay_tour) — 1-в-1 как cruises-hero
   ====================================================================== */

body.post-type-archive-maclay_tour .main .wrapper.catalog-hero.tours-hero .catalog-hero__inner{
  align-items: flex-start;
  text-align: left;

  justify-content: center;
  padding: 120px 0 120px;
}

body.post-type-archive-maclay_tour .main .wrapper.catalog-hero.tours-hero .catalog-hero__content{
  max-width: 760px;
  padding-left: 20px;
  padding-right: 20px;
}

/* фикс “тонкого” текста: всегда нормальный вес */
body.post-type-archive-maclay_tour .main .wrapper.catalog-hero.tours-hero .catalog-hero__title{
  font-weight: 500 !important;
  font-size: clamp(36px, 4vw, 66px);
  line-height: 1.02;
}

body.post-type-archive-maclay_tour .main .wrapper.catalog-hero.tours-hero .catalog-hero__subtitle{
  margin-top: 14px;
  font-size: clamp(16px, 1.6vw, 22px);
  line-height: 1.55;
  color: rgba(255,255,255,.88);
}

@media (max-width: 980px){
  body.post-type-archive-maclay_tour .main .wrapper.catalog-hero.tours-hero .catalog-hero__inner{
    align-items: center;
    text-align: center;
    justify-content: center;
    padding: 110px 0 90px;
  }
}

@media (min-width: 1200px){
  body.post-type-archive-maclay_tour .main .wrapper.catalog-hero.tours-hero .catalog-hero__content{
    padding-left: 28px;
    padding-right: 28px;
  }
}

/* =========================================================
   FIX: архив туров — табы белые как надо
   ========================================================= */

body.post-type-archive-maclay_tour .maclay-tourvisor-filter .tab-header .tab-btn{
  color: #fff !important;
  font-weight: 400 !important;
}

body.post-type-archive-maclay_tour .maclay-tourvisor-filter .tab-header .tab-btn:hover{
  color: #AEF3FF !important;
}

body.post-type-archive-maclay_tour .maclay-tourvisor-filter .tab-header .tab-btn.active{
  color: #fff !important;
}

body.post-type-archive-maclay_tour .maclay-tourvisor-filter .tab-header .tab-btn.active::after{
  background: #AEF3FF !important;
}

/* Иконки тоже делаем белыми */
body.post-type-archive-maclay_tour .maclay-tourvisor-filter .tab-header .tab-btn img{
  filter: brightness(0) invert(1) !important;
  opacity: 1 !important;
}
/* УБРАТЬ ПУСТОТУ МЕЖДУ ЗАГОЛОВКОМ И КАРТОЧКАМИ (архив туров) */
body.post-type-archive-maclay_tour .reviews-page{
  padding-bottom: 0 !important;
  margin-bottom: 0 !important;
}

body.post-type-archive-maclay_tour .reviews-page .title-text{
  margin: 0 !important;
}

/* ВОТ ЗДЕСЬ ЧАЩЕ ВСЕГО СИДИТ ОТСТУП */
body.post-type-archive-maclay_tour .catalog-content{
  margin-top: 0 !important;
  padding-top: 0 !important;
}

body.post-type-archive-maclay_tour .catalog-content .block3-item{
  margin-top: 0 !important;
  padding-top: 0 !important;
}

/* И на всякий: твой .catalog сейчас делает 70px сверху */
body.post-type-archive-maclay_tour .main .catalog{
  margin-top: 0 !important;
}

/* ======================================================================
   [08] RESPONSIVE (каталог + solution)
   ====================================================================== */

@media (max-width: 992px){
  .main .catalog .title-text{
    margin: 24px 0 32px;
  }
}

@media (max-width: 767px){
  .main .solution-box{
    flex-direction: column-reverse;
  }

  .main .solution .filter{
    margin-right: 0;
    min-width: 300px;
  }

  .main .solution .solution-photo{
    height: auto;
    margin-bottom: 32px;
  }

  .main .solution .solution-photo img{
    object-fit: contain;
  }
}

@media (max-width: 576px){
  .main .catalog-box .title-text{
    font-size: 44px;
  }

  .main .catalog-box .block3{
    margin-bottom: 0;
  }

  .main .catalog-box .block3 .block3-item{
    margin-top: 0 !important;
  }

  .main .catalog-box .block3 .title-text{
    font-size: 32px;
    margin: 50px 0 0;
  }

  .main .catalog-list .catalog-btn span{
    min-width: 120px;
    height: 180px;
  }

  .main .catalog-list .catalog-btn input:checked ~ span{
    min-width: 300px;
    height: 250px;
  }
}

/* Мобилка: скрываем фото в блоке "Индивидуальное решение" */
@media (max-width: 767px){
  .main .solution .solution-photo{
    display: none !important;
  }
}
/* =========================================================
   ARCHIVE maclay_tour
   HERO: нормальный старт + рост вниз ТОЛЬКО при расширении формы
   ========================================================= */

body.post-type-archive-maclay_tour .main .wrapper.catalog-hero{
  position: relative;
  display: block !important;

  /* КЛЮЧЕВОЕ:
     hero НЕ фуллскрин на старте,
     но МОЖЕТ расти вниз */
  height: auto !important;
  min-height: 620px !important;

  overflow: hidden;
  padding-bottom: 40px;
}

/* фон всегда покрывает реальную высоту hero */
body.post-type-archive-maclay_tour .main .wrapper.catalog-hero .catalog-hero__bg,
body.post-type-archive-maclay_tour .main .wrapper.catalog-hero .wrapper-bg{
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}

/* внутренний контейнер НЕ держится за 100% */
body.post-type-archive-maclay_tour .main .wrapper.catalog-hero .catalog-hero__inner{
  position: relative;
  z-index: 2;

  height: auto !important;
  display: flex;
  flex-direction: column;
}

/* уменьшаем стартовую высоту, чтобы НЕ раздувало сразу */
body.post-type-archive-maclay_tour .main .wrapper.catalog-hero.tours-hero
.catalog-hero__inner{
  padding: 10px 0 10px !important;
}

/* фильтр — в потоке, именно он тянет hero вниз при расширении */
body.post-type-archive-maclay_tour .tours-filter-wrapper{
  position: relative !important;
  transform: none !important;
  margin-top: 16px !important;
}

/* текст под фильтром — прижат вниз, но НЕ растягивает hero сам */
body.post-type-archive-maclay_tour .catalog-hero__subtitle,
body.post-type-archive-maclay_tour .catalog-hero__desc,
body.post-type-archive-maclay_tour .catalog-hero__text{
  margin-top: auto;
  padding-top: 18px;
}

/* мобилка — без фиксированной высоты вообще */
@media (max-width: 768px){
  body.post-type-archive-maclay_tour .main .wrapper.catalog-hero{
    min-height: auto !important;
    padding: 160px 0 40px !important;
    overflow: visible;
  }
}

/* H1 "Каталог туров" — по центру, только архив туров */
body.post-type-archive-maclay_tour .catalog-title-center{
  width: 100%;
  text-align: center;
  margin: 0 auto 24px;
  
}
/* H1 в hero — поверх, не влияет на раскладку и не двигает фильтр */
body.post-type-archive-maclay_tour .wrapper.catalog-hero{
  position: relative; /* на всякий, чтобы absolute считался от hero */
}

body.post-type-archive-maclay_tour .catalog-hero__h1{
  position: absolute;
  left: 50%;
  top: -50px;            /* подгони под твой хедер */
  transform: translateX(-50%);
  z-index: 10;

  width: min(1100px, calc(100% - 40px));
  text-align: center;

  margin: 0;
  color: #fff;
}


