/* ===== БАЗА / НОРМАЛИЗАЦИЯ ===== */
html{ -webkit-text-size-adjust:100%; text-size-adjust:100%; }
.mc-form *{ box-sizing:border-box; font-family:"Gilroy", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif; }

/* Контейнер формы (на десктопе сидит в колонке шириной ~50% экрана) */
.mc-form {
  color:#E8E8E8;
  width:100%;            /* занимает ширину своей колонки */
  max-width: 100%;       /* если форма стоит во флекс/грид-колонке 50% */
}
  .mc-form{ max-width: none; }  /* пусть тянется в адаптивной колонке */


/* Сетка и вертикальные интервалы */
.mc-form .wpcf7-form {
  display: grid;
  grid-template-columns: 1fr;
}

/* Пара первых полей в один ряд на ≥768px */
.mc-form .row-2 p {
  display: grid;
  grid-template-columns: 1fr;
}
/* Поля: только нижняя граница, прозрачный фон */
.mc-form input[type="text"],
.mc-form input[type="email"],
.mc-form input[type="tel"],
.mc-form select,
.mc-form textarea {
  width:100%;
  background:transparent;
  border:0;
    border-bottom-color:#FFFFFF !important; 
  color:#FFFFFF !important;
  padding: 30px !important;
  font-size:20px;
  line-height:1.4;
  outline:none;
  -webkit-appearance:none; 
  appearance:none;
}
.mc-form select,
.mc-form input[type=number] {
  width:100%;
  height: 80px !important;
  background: transparent !important;
  border: 0;
  border-bottom: 1px solid #FFFFFF !important; 
  color:#FFFFFF !important;
  padding: 20px !important;
  font-size:20px;
  line-height:1.4;
  outline:none;
  -webkit-appearance:none; 
  appearance:none;
}
.mc-form .number-field {
  color:#FFFFFF !important;
}
.mc-form select option
 {
  width:100%;
  background: rgba(36, 36, 36, 1.0) !important;
  color:#FFFFFF !important;
  margin: 30px !important;
  font-size:20px;
  line-height:2 !important;
  -webkit-appearance:none; appearance:none;
}
.mc-form select option::before,
.mc-form select option::after {
  margin-top: 20px;
  content: "\2192" !important;
  display: block !important;
}
.mc-form textarea {
}
.mc-form p {
  margin-block-start: var(--space-30px);
  margin-block-end: 0 !important;
 }
 .wpcf7 .button-with-arrow-red {
    margin-bottom: 0 !important;
}
.mc-form textarea { min-height: 160px; }
.mc-form p {
    padding-bottom: 0 !important;
}

/* строки как flex-контейнеры */
.row-2 .cf7-row{
  display: flex;
  flex-wrap: wrap;
  gap: 16px; /* расстояние между колонками */
}

/* колонки по умолчанию на всю ширину */
.row-2 .cf7-col-12{
  flex: 0 0 100%;
}

/* 3 колонки во второй строке */
.row-2 .cf7-row-2 .cf7-col-4{
  flex: 0 0 calc((100% - 32px) / 3); /* 2 gap по 16px */
}

/* адаптив: на планшете 2 колонки */
@media (max-width: 1024px){
  .row-2 .cf7-row-2 .cf7-col-4{
    flex: 0 0 calc((100% - 16px) / 2);
  }
}

/* адаптив: на телефоне 1 колонка */
@media (max-width: 640px){
  .row-2 .cf7-row-2 .cf7-col-4{
    flex: 0 0 100%;
  }
}

/* чтобы инпуты/селекты растягивались */
.row-2 .wpcf7-form-control{
  width: 100%;
  box-sizing: border-box;
}


/* Placeholder */
.mc-form::placeholder { color:rgba(255,255,255,.75) !important; }

/* Фокус */
.mc-form input:focus,
.mc-form select:focus,
.mc-form textarea:focus { 
  border-bottom:1px solid rgba(255,255,255,.4) !important;
    padding: var(--space-20px); 
}
.wpcf7-form-control-wrap {
  gap: var(--space-20px); 
}
.wpcf7-list-item-label::before, .wpcf7-list-item-label::after {
    content: " ";
    padding-left: 8px;
}
.wpcf7-list-item {
    margin: 0 !important;
}

/* контейнер (если оборачиваете кнопку) */
.wpcf7 .button-with-arrow-red { width: 100% !important; margin-bottom: 20px; }

/* сам submit; работает и когда класс на контейнере, и когда на input */
.wpcf7 .button-with-arrow-red .wpcf7-submit,
.wpcf7 .wpcf7-submit.button-with-arrow-red {
  display: inline-flex;
  align-items: center;
  justify-content: flex-start;
  position: relative;
  cursor: pointer;
  margin-top: var(--space-30px); 

  min-width: 100% !important;
  height: var(--space-76px) !important;
  padding: var(--space-24px, 24px) var(--space-60px, 60px) var(--space-22px, 22px) var(--space-20px, 20px);

  font-family: "Gilroy", sans-serif;
  font-size: var(--text-16px, 16px);
  font-weight: 500;
  text-transform: uppercase;
  white-space: nowrap;

  color: #fff;
  background: #9F001E;
  border: 1px solid #9F001E;
  border-radius: 0 0 24px 0;

  /* только цвета — без анимации позиции/трансформаций */
  transition: background-color .3s ease, border-color .3s ease, color .3s ease;

  /* стрелка справа как фон, фиксировано на месте */
  background-image: url("data:image/svg+xml,%3Csvg width='24' height='22' viewBox='0 0 24 22' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M13.0115 1.48274L22 11M22 11L13.0115 20.5173M22 11H0.0280762' stroke='white' stroke-width='2'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-size: 24px 22px;
  background-position: right 20px center;

  -webkit-appearance: none;
  appearance: none;
}

.wpcf7 .button-with-arrow-red .wpcf7-submit:hover,
.wpcf7 .wpcf7-submit.button-with-arrow-red:hover {
  color: #0E0F14;
  background-color: #ffffff;
  border-color: #ffffff;

  /* стрелка остаётся на месте, меняется только цвет */
  background-image: url("data:image/svg+xml,%3Csvg width='24' height='22' viewBox='0 0 24 22' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M13.0115 1.48274L22 11M22 11L13.0115 20.5173M22 11H0.0280762' stroke='%230E0F14' stroke-width='2'/%3E%3C/svg%3E");
}

/* фокус с клавиатуры (не влияет на стрелку) 
.wpcf7 .button-with-arrow-red .wpcf7-submit:focus,
.wpcf7 .wpcf7-submit.button-with-arrow-red:focus {
  outline: 2px solid rgba(255,255,255,.35);
  outline-offset: 2px;
}*/



/* ==========
   Базовые переменные и контейнер
   ========== */
.cat-filter{
  --mc-bg:#0E0F14;
  --mc-text:#FFFFFF;
  --mc-muted:#C7C8CC;
  --mc-line:#ffffff;          /* цвет линий-подчёркиваний и разделителей */
  --mc-chip-border:#FFFFFF;
  --mc-chip-text:#FFFFFF;
  --mc-chip-active-bg:#FFFFFF;
  --mc-chip-active-text:#0E0F14 !important;
  --mc-gap:20px;
  color:var(--mc-text);
  background:var(--mc-bg);
}

.search-filter-input-checkbox__label {
    color: unset;
    width: 100%;
    display: flex;
    justify-content: var(--search-filter-count-justification);
}

/* Заголовки секций (Год, Стоимость, Подборки и т.д.) */
.cat-filter .search-filter-label{
  font-family:"Gilroy",system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;
  font-weight:700;
  font-size:18px;
  line-height:1.2;
  letter-spacing:.02em;
  text-transform:uppercase;
  color:var(--mc-text);
  margin:28px 0 12px;
}
/* Класс .search-filter-label есть в вашем HTML. */ /* :contentReference[oaicite:1]{index=1} */

/* Разделительные линии между блоками */
.cat-filter .elementor-widget-search-filter-field{
}

/* ==========
   Диапазоны (ГОД, СТОИМОСТЬ) — два селекта в строку
   ========== */
.cat-filter .search-filter-select-range{            /* контейнер двух выпадашек */
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:24px;
}
/* Класс .search-filter-select-range присутствует. */ /* :contentReference[oaicite:2]{index=2} */

/* Шапка комбобокса + поле ввода */
.cat-filter .search-filter-component-combobox__header{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:8px 0;
  border-bottom:2px solid var(--mc-line);
}

/* Классы combobox'а из HTML. */ /* :contentReference[oaicite:3]{index=3} */
.cat-filter .search-filter-component-combobox__selection span,
.cat-filter .search-filter-component-combobox__selection,
.cat-filter .search-filter-component-combobox__actions-input{
  font-family:"Gilroy",system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;
  font-size:18px;
  line-height:1.8 !important;
  color:var(--mc-text);
}

li.search-filter-component-combobox-base__listbox-option option {
  background: rgba(255,255,255, .0) !important;
  padding: 0 !important;
}
.cat-filter .search-filter-component-combobox__actions-input{
  background:transparent;
  border:none;
  outline:none;
  width:100%;
  padding:0;
  color:var(--mc-text);
  caret-color:var(--mc-text);
}

/* Иконки «стрелка/очистить» в правой части шапки */
.cat-filter .search-filter-component-combobox__listbox-toggle .search-filter-icon__svg,
.cat-filter .search-filter-component-combobox__clear-selection .search-filter-icon__svg{
  width:18px; height:18px;
  display:block;
  fill: var(--mc-text);
}
/* Иконки и обёртки есть в HTML. */ /* :contentReference[oaicite:4]{index=4} */

/* ==========
   Чекбоксы-чипы (ПОДБОРКИ, СТАТУС)
   ========== */
.cat-filter .search-filter-input-group{
  display:flex;
  flex-wrap:wrap;
  gap:16px 16px;
} /* Группа чекбоксов есть. */ /* :contentReference[oaicite:5]{index=5} */

.cat-filter .search-filter-input-checkbox{
  position:relative;
}

/* Скрываем дефолтный svg-чекбокса из плагина */
.cat-filter .search-filter-input-checkbox__control{ display:none; }

/* Метка как кнопка-чип */
.cat-filter .search-filter-input-checkbox__container{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:14px 18px 14px 10px;
  border:1px solid var(--mc-chip-border);
  border-radius:0;
  color:var(--mc-chip-text);
  background:transparent;
  cursor:pointer;
  transition:.2s ease;
  min-height:48px;
}
.cat-filter .search-filter-input-checkbox__label{
  font-weight:500;
  font-size:16px;
  text-transform:uppercase;
  letter-spacing:.02em;
  display:inline-flex; 
  gap:0; 
  align-items:center;
}

/* Активное состояние (чекбокс отмечен) */
.cat-filter .search-filter-input-checkbox__input:checked + .search-filter-input-checkbox__container{
  background:var(--mc-chip-active-bg);
  color:var(--mc-chip-active-text);
  border-color:var(--mc-chip-active-bg);
}
/* Эти классы/структура именно такие. */ /* :contentReference[oaicite:6]{index=6} */

/* ==========
   Выпадающие списки (Марка, Модель, Регион…)
   ========== */
.cat-filter .search-filter-component-combobox.search-filter-field__input{
  display:block;
  padding-left: 0 !important;
}
.cat-filter .search-filter-component-combobox.search-filter-field__input .search-filter-component-combobox__header{
  border-bottom:2px solid var(--mc-line);
}
.cat-filter .search-filter-component-combobox__selection-placeholder{
  min-height:24px;
  opacity:.8;
}
/* Классы для «Марка/Модель/Регион/Состояние/Документы». */ /* :contentReference[oaicite:7]{index=7} */ /* :contentReference[oaicite:8]{index=8} */ /* :contentReference[oaicite:9]{index=9} */ /* :contentReference[oaicite:10]{index=10} */ /* :contentReference[oaicite:11]{index=11} */

/* ==========
   Шапка фильтров (иконка «скрыть фильтры») — опционально
   ========== */
.cat-filter .sf-title,
.cat-filter .sf-toggle{
  color:var(--mc-text);
}


.cat-filter .search-filter-component-combobox.search-filter-field__input {
    background-color: rgba(0, 0, 0, 0.0);
}
.search-filter-component-combobox-base {
  border: 0 !important;
    background-color: rgba(0, 0, 0, 0.0);
}


/* ==========
   Адаптив
   ========== */
@media (min-width:768px){
  /* На планшете/десктопе можно сделать 2 колонки у диапазонов */
  .cat-filter .search-filter-select-range{ grid-template-columns:1fr 1fr; }
}
@media (min-width:1024px){
  .cat-filter{ --mc-gap:24px; }
  .cat-filter .search-filter-label{ font-size:20px; margin:32px 0 14px; }
}



/* ПРОКАТ */

.rent-header-cover-1 h1, .rent-arch h2 {	
	font-family: "Gilroy" !important;
	font-size: var(--text-56px) !important;
	font-weight: 800; 
	line-height: 1.2em;
}
.rent-header-cover-1 .left-text p {	
	font-family: "Gilroy" !important;
	font-size: var(--text-20px) !important;
	font-weight: 500; 
	line-height: 1.2em;
  max-width: 30vw !important;
}
.rent-header-cover-1 .right-text p {	
	font-family: "Gilroy" !important;
	font-size: var(--text-20px) !important;
	font-weight: 500; 
	line-height: 1.2em;
  max-width: 30vw !important;
}
/*   .rent-header-cover-1::before{
    background-size: auto 100% !important;
  } */

 .rent-header-cover-2::before {
    background-size: auto 100% !important;
  }
@media (max-width:1024px){  
.rent-header-cover-1 .left-text p {	
	font-size: var(--text-18px) !important;
  max-width: 90vw !important;
}
.rent-header-cover-1 .right-text p {	
	font-size: var(--text-18px) !important;
  max-width: 100vw !important;
}
}
@media (max-width:768px){  
  .rent-header-cover-2::before {
	background-position: center bottom !important;
    background-size: auto 80% !important;
  }
.rent-header-cover-1 .left-text p {	
	font-size: var(--text-16px) !important;
  max-width: 90vw !important;
}
.rent-header-cover-1 .right-text p {	
	font-size: var(--text-16px) !important;
  max-width: 100vw !important;
}
}

/* МАСТЕРСКАЯ */
.workshop-counter .elementor-counter-title {
  margin: 30px 0 0 8px !important;
}

.info-slider p {
	font-family: "Gilroy" !important;
	font-size: var(--text-36px) !important;
	font-weight: 800; 
	line-height: 1em;
}

@media (max-width:1024px){
.info-slider p {
	font-size: var(--text-32px) !important;
}
}

@media (max-width:768px){
.info-slider p {
	font-size: var(--text-24px) !important;
}
}

.cases-carousel.elementor-widget-loop-carousel .elementor-swiper-button svg.icon-arrow-horizontal  {
  stroke: #ffffff !important;
}
.didyouknow-carousel.elementor-widget-loop-carousel .elementor-swiper-button svg.icon-arrow-horizontal  {
  stroke: #0E0F14 !important;
}
.elementor-widget-loop-carousel .elementor-swiper-button {
  opacity: 1;
  transition: all ease .3s;
}
.elementor-widget-loop-carousel .elementor-swiper-button:hover  {
  opacity: .5 !important;
}

/* по умолчанию прячем SVG, место под иконку сохраняется */
.text-width-arrow .elementor-icon-box-icon .elementor-icon svg {
  opacity: 0;
  transition: opacity .25s ease;
  pointer-events: none;        /* чтобы иконка не перехватывала ховер/клик */
}

/* показываем SVG при наведении на общий блок */
.text-width-arrow:hover .elementor-icon-box-icon .elementor-icon svg {
  opacity: 1;
}