.home-shell{
  padding-top:40px
}

.home-shell .topbar{
  margin-bottom:0
}

/* Опускаем форму немного ниже шапки */
.search-card{
  position:relative;
  margin-top:148px;
  padding:12px;
  border:0;
  border-radius:20px;
  background:transparent;
  box-shadow:none
}

.search-strip{
  display:grid;
  grid-template-columns:minmax(0,1fr) 256px;
  gap:12px
}

.search-fields{
  position:relative;
  display:grid;
  grid-template-columns:
    minmax(190px,1.15fr)
    0
    minmax(190px,1.15fr)
    minmax(145px,.72fr)
    minmax(145px,.72fr)
    minmax(185px,.9fr);
  min-width:0;
  border-radius:18px;
  background:#fff
}

.airport-cell{
  position:relative;
  min-width:0;
  height:76px;
  background:#fff
}

.origin-cell{
  border-radius:18px 0 0 18px
}

.destination-cell,
.date-field,
.passenger-field{
  border-left:2px solid #0064b4
}

.airport-cell input{
  width:100%;
  height:76px;
  padding:0 18px;
  border:0;
  border-radius:0;
  background:transparent;
  color:#172033;
  font-size:18px;
  font-weight:500;
  outline:0
}

.origin-cell input{
  padding-right:38px;
  border-radius:18px 0 0 18px
}

.destination-cell input{
  padding-left:38px
}

.airport-cell input::placeholder{
  color:#8993a4;
  opacity:1
}

.airport-cell:focus-within,
.date-field:focus-within,
.passenger-field:focus-within{
  z-index:4;
  box-shadow:inset 0 0 0 2px #0064b4
}

.swap-wrap{
  position:relative;
  z-index:8;
  width:0
}

.swap-btn{
  position:absolute;
  top:50%;
  left:0;
  display:grid;
  place-items:center;
  width:34px;
  height:34px;
  padding:0;
  border:1px solid #d8e2f1;
  border-radius:50%;
  background:#fff;
  color:#0064b4;
  font-size:18px;
  font-weight:800;
  cursor:pointer;
  transform:translate(-50%,-50%);
  box-shadow:0 3px 10px rgba(16,24,40,.13)
}

.swap-btn:hover{
  background:#edf4ff
}

.date-field{
  position:relative;
  min-width:0;
  height:76px;
  background:#fff
}

.date-button{
  display:flex;
  align-items:center;
  justify-content:space-between;
  width:100%;
  height:76px;
  gap:12px;
  padding:0 18px;
  border:0;
  background:transparent;
  color:#8993a4;
  text-align:left;
  cursor:pointer
}

.date-button strong{
  overflow:hidden;
  font-size:18px;
  font-weight:500;
  line-height:1.2;
  text-overflow:ellipsis;
  white-space:nowrap
}

.date-button.has-value{
  color:#172033
}

.calendar-icon{
  flex:0 0 auto;
  width:23px;
  height:23px;
  fill:none;
  stroke:#0064b4;
  stroke-width:2;
  stroke-linecap:round;
  stroke-linejoin:round
}

.date-native-input{
  position:absolute!important;
  left:12px!important;
  bottom:2px!important;
  width:1px!important;
  height:1px!important;
  padding:0!important;
  border:0!important;
  opacity:0!important;
  pointer-events:none!important
}

.passenger-field{
  position:relative;
  min-width:0;
  height:76px;
  border-radius:0 18px 18px 0;
  background:#fff
}

.passenger-btn{
  display:flex;
  align-items:center;
  justify-content:space-between;
  width:100%;
  height:76px;
  gap:10px;
  padding:0 18px;
  border:0;
  border-radius:0 18px 18px 0;
  background:transparent;
  color:#172033;
  text-align:left;
  cursor:pointer
}

.passenger-copy{
  display:flex;
  min-width:0;
  flex-direction:column;
  gap:3px
}

.passenger-copy strong{
  overflow:hidden;
  font-size:17px;
  font-weight:500;
  line-height:1.2;
  text-overflow:ellipsis;
  white-space:nowrap
}

.passenger-copy span{
  color:#8993a4;
  font-size:16px
}

.passenger-arrow{
  flex:0 0 auto;
  color:#8993a4;
  font-size:18px
}

.search-submit{
  display:flex;
  align-items:center;
  justify-content:center;
  height:76px;
  padding:0 25px;
  border:0;
  border-radius:18px;
  background:#0064b4;
  color:#fff;
  font-size:22px;
  font-weight:800;
  white-space:nowrap;
  cursor:pointer;
  transition:background .15s,transform .05s
}

.search-submit:hover:not(:disabled){
  background:#0064b4;
  cursor:wait
}

.search-footer{
  display:flex;
  align-items:center;
  justify-content:space-between;
  min-height:22px;
  gap:16px;
  margin-top:10px;
  padding:0 4px
}

.direct-line{
  display:flex;
  align-items:center;
  gap:8px;
  color:#0064b4;
  font-size:14px;
  cursor:pointer
}

.direct-line input{
  width:18px;
  height:18px;
  accent-color:#0064b4;
  color:#667085;
  font-size:13px;
  text-align:right
}

.airport-list{
  position:absolute;
  z-index:40;
  top:calc(100% + 8px);
  left:0;
  right:0;
  max-height:330px;
  overflow:auto;
  padding:6px;
  border:1px solid #e2e8f0;
  border-radius:14px;
  background:#fff;
  box-shadow:0 20px 45px rgba(16,24,40,.18)
}

.airport-option{
  display:block;
  width:100%;
  padding:11px 12px;
  border:0;
  border-radius:10px;
  background:#fff;
  text-align:left;
  cursor:pointer
}

.airport-option:hover,
.airport-option.active{
  background:#edf4ff
}

.airport-option strong{
  display:block
}

.airport-option span{
  display:block;
  margin-top:3px;
  color:#667085;
  font-size:12px
}

.airport-empty{
  padding:13px;
  color:#667085;
  font-size:13px
}

.passenger-popover{
  position:absolute;
  z-index:38;
  top:84px;
  right:0;
  width:min(370px,calc(100vw - 40px));
  padding:8px;
  background:#fff
}

.counter-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:15px;
  padding:11px
}

.counter-copy strong{
  display:block
}

.counter-copy span{
  color:#667085;
  font-size:12px
}

.counter{
  display:flex;
  align-items:center;
  gap:10px
}

.counter button{
  width:34px;
  height:34px;
  border:1px solid #d7dee8;
  border-radius:10px;
  background:#fff;
  color:#0064b4;
  font-size:20px;
  cursor:pointer
}

.counter output{
  min-width:20px;
  text-align:center;
  font-weight:750
}

.popover-footer{
  padding:8px
}

@media(max-width:1150px){
  .search-strip{
    grid-template-columns:1fr
  }

  .search-submit{
    width:100%
  }
}

@media(max-width:900px){
  .search-fields{
    grid-template-columns:
      minmax(0,1fr)
      0
      minmax(0,1fr)
  }

  .departure-field{
    border-left:0;
    border-top:2px solid #0064b4
  }

  .return-field,
  .passenger-field{
    border-top:2px solid #0064b4
  }

  .departure-field,
  .return-field,
  .passenger-field{
    border-radius:0
  }

  .passenger-field,
  .passenger-btn{
    border-radius:0 0 18px 0
  }
}

@media(max-width:650px){
  .home-shell{
    width:min(100% - 20px,1240px);
    padding-top:20px
  }

  .home-shell .topbar{
    align-items:flex-start
  }

  .brand-copy span,
  .user-line{
    display:none
  }

  .top-actions{
    gap:5px
  }

  .top-actions .btn{
    min-height:40px;
    padding:8px 9px;
    font-size:12px
  }

  .search-card{
    margin-top:72px;
    padding:9px;
    border-radius:17px
  }

  .search-strip{
    gap:9px
  }

  .search-fields{
    display:block;
    border-radius:14px
  }

  .airport-cell,
  .date-field,
  .passenger-field{
    height:64px;
    border:0;
    border-top:2px solid #0064b4;
    border-radius:0
  }

  .origin-cell{
    border-top:0;
    border-radius:14px 14px 0 0
  }

  .passenger-field,
  .passenger-btn{
    border-radius:0 0 14px 14px
  }

  .airport-cell input,
  .date-button,
  .passenger-btn{
    height:64px
  }

  .airport-cell input,
  .origin-cell input,
  .destination-cell input{
    padding:0 18px
  }

  .swap-wrap{
    position:absolute;
    top:64px;
    right:25px;
    width:auto
  }

  .swap-btn{
    top:0;
    left:0;
    width:36px;
    height:36px;
    transform:translate(-50%,-50%) rotate(90deg)
  }

  .search-submit{
    height:64px;
    border-radius:14px;
    font-size:19px
  }

  .search-footer{
    align-items:flex-start;
    flex-direction:column
  }

  .search-meta{
    width:100%;
    text-align:left
  }

  .passenger-popover{
    position:fixed;
    top:auto;
    right:10px;
    bottom:10px;
    left:10px;
    width:auto;
    max-height:calc(100vh - 20px);
    overflow:auto;
    z-index:100
  }
}

/* AVIAMARKET THIN BRAND BORDERS START */

/* Тонкая рамка вокруг всей формы */
.search-card{
  border:1px solid #0064b4;
}

/* Общая рамка вокруг всех граф */
.search-fields{
  border:1px solid #0064b4;
  border-radius:18px;
}

/* Убираем старые толстые разделители */
.airport-cell,
.date-field,
.passenger-field{
  border:0!important;
}

/* Тонкие разделители между графами */
.destination-cell,
.date-field,
.passenger-field{
  border-left:1px solid #0064b4!important;
}

.origin-cell{
  border-left:0!important;
}

/* Планшет: тонкая линия между двумя рядами */
@media(max-width:900px){
  .departure-field,
  .return-field,
  .passenger-field{
    border-top:1px solid #0064b4!important;
  }

  .departure-field{
    border-left:0!important;
  }

  .return-field,
  .passenger-field{
    border-left:1px solid #0064b4!important;
  }
}

/* Телефон: единый контур и тонкие линии между графами */
@media(max-width:650px){
  .airport-cell,
  .date-field,
  .passenger-field{
    border:0!important;
    border-top:1px solid #0064b4!important;
  }

  .origin-cell{
    border-top:0!important;
  }
}

/* AVIAMARKET THIN BRAND BORDERS END */

/* AVIAMARKET INDIVIDUAL CELL BORDERS START */

/* Без рамки вокруг всей формы */
.search-card{
  border:0!important;
}

.search-fields{
  border:0!important;
}

/* Тонкая рамка только вокруг каждой отдельной графы */
.airport-cell,
.date-field,
.passenger-field{
  border:1px solid #0064b4!important;
}

/* Соединяем графы без двойной линии */
.destination-cell,
.date-field,
.passenger-field{
  margin-left:-1px;
}

.origin-cell{
  margin-left:0;
}

@media(max-width:650px){
  .airport-cell,
  .date-field,
  .passenger-field{
    margin-left:0;
    margin-top:-1px;
  }

  .origin-cell{
    margin-top:0;
  }
}

/* AVIAMARKET INDIVIDUAL CELL BORDERS END */




/* AVIAMARKET WHITE PAGE BACKGROUND START */

html,
body{
  min-height:100%;
  background:#ffffff!important;
}

.home-shell{
  min-height:100vh;
}

.brand-copy strong{
  color:#172033;
}

.brand-copy span,
.user-line{
  color:#667085;
}

.logo{
  background:#0064b4;
  color:#ffffff;
  box-shadow:0 8px 20px rgba(0, 100, 180, .20);
}

.top-actions .btn-light{
  background:#edf4ff;
  color:#0064b4;
}

.search-card{
  background:transparent!important;
}

.search-fields,
.airport-cell,
.date-field,
.passenger-field,
.airport-cell input,
.date-button,
.passenger-btn{
  background:#ffffff;
}

.direct-line{
  color:#0064b4!important;
}

.search-meta{
  color:#667085!important;
}

/* Белая кнопка остаётся заметной на белом фоне */
.search-submit{
  background:#ffffff!important;
  color:#0064b4!important;
  border:1px solid #0064b4!important;
}

.search-submit:hover:not(:disabled){
  background:#f3f7fb!important;
  color:#0064b4!important;
}

/* AVIAMARKET WHITE PAGE BACKGROUND END */

/* AVIAMARKET CELL BORDER FIT FIX START */

/* Внешней рамки вокруг всей формы нет */
.search-card,
.search-fields{
  border:0!important;
  box-shadow:none!important;
}

/* Обычная тонкая рамка вокруг каждой отдельной графы */
.airport-cell,
.date-field,
.passenger-field{
  box-sizing:border-box!important;
  border:1px solid #0064b4!important;
}

/*
  Внутренние элементы занимают только внутреннюю часть графы
  и больше не перекрывают нижнюю рамку.
*/
.airport-cell input,
.date-button,
.passenger-btn{
  box-sizing:border-box!important;
  height:100%!important;
}

/* Соединённые графы без двойных линий */
.destination-cell,
.date-field,
.passenger-field{
  margin-left:-1px;
}

.origin-cell{
  margin-left:0;
}

@media(max-width:650px){
  .airport-cell,
  .date-field,
  .passenger-field{
    margin-left:0;
    margin-top:-1px;
  }

  .origin-cell{
    margin-top:0;
  }
}

/* AVIAMARKET CELL BORDER FIT FIX END */

/* AVIAMARKET BLACK CELL BORDERS START */

.airport-cell,
.date-field,
.passenger-field{
  border-color:#1f2937!important;
}

/* AVIAMARKET BLACK CELL BORDERS END */

/* AVIAMARKET BLACK SWAP ARROW START */

.swap-btn{
  color:#1f2937!important;
}

.swap-btn:hover{
  color:#1f2937!important;
}

/* AVIAMARKET BLACK SWAP ARROW END */

/* AVIAMARKET BLACK CALENDAR ICON START */

.date-button{
  color:#1f2937!important;
}

.date-button svg{
  color:#1f2937!important;
  fill:none!important;
  stroke:#1f2937!important;
}

.date-button svg *{
  stroke:#1f2937!important;
}

.date-button:hover,
.date-button:hover svg,
.date-button:focus,
.date-button:focus svg{
  color:#1f2937!important;
  stroke:#1f2937!important;
}

/* AVIAMARKET BLACK CALENDAR ICON END */

/* AVIAMARKET BLACK DIRECT CHECKBOX START */

.direct-line{
  color:#1f2937!important;
}

.direct-line span{
  color:#1f2937!important;
}

.direct-line input{
  appearance:none;
  -webkit-appearance:none;
  display:grid;
  place-content:center;
  width:20px;
  height:20px;
  margin:0;
  border:1.5px solid #1f2937;
  border-radius:3px;
  background:#ffffff;
  cursor:pointer;
}

.direct-line input:checked{
  background:#1f2937;
}

.direct-line input:checked::after{
  content:"";
  width:5px;
  height:10px;
  margin-top:-2px;
  border:solid #ffffff;
  border-width:0 2px 2px 0;
  transform:rotate(45deg);
}

/* AVIAMARKET BLACK DIRECT CHECKBOX END */

/* AVIAMARKET THIN CALENDAR ICON START */

.calendar-icon,
.date-button svg,
.date-button svg *{
  stroke-width:1.35!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
}

/* AVIAMARKET THIN CALENDAR ICON END */

/* AVIAMARKET APP COLOR SEARCH BUTTON START */

.search-submit{
  background:#0064b4!important;
  color:#ffffff!important;
  border:1px solid #0064b4!important;
  box-shadow:0 8px 20px rgba(0,100,180,.18);
}

.search-submit:hover:not(:disabled){
  background:#0064b4!important;
  color:#ffffff!important;
  border-color:#0064b4!important;
}

.search-submit:active{
  background:#0064b4!important;
  color:#ffffff!important;
}

/* AVIAMARKET APP COLOR SEARCH BUTTON END */

/* AVIAMARKET HEADER BUTTONS BLACK START */

.top-actions .btn-light{
  background:#ffffff!important;
  color:#1f2937!important;
  border:1px solid #1f2937!important;
  font-weight:400!important;
  box-shadow:none!important;
}

.top-actions .btn-light:hover{
  background:#f5f5f5!important;
  color:#1f2937!important;
  border-color:#1f2937!important;
}

.top-actions .btn-light:active{
  background:#eeeeee!important;
}

/* AVIAMARKET HEADER BUTTONS BLACK END */

/* AVIAMARKET LOGO APP COLOR START */

.logo{
  background:#0064b4!important;
  color:#ffffff!important;
  box-shadow:0 8px 20px rgba(0,100,180,.20)!important;
}

/* AVIAMARKET LOGO APP COLOR END */

/* AVIAMARKET DIRECT UNDER SEARCH START */

.search-side{
  display:flex;
  min-width:0;
  flex-direction:column;
  gap:10px;
}

.search-side .search-submit{
  width:100%;
}

.search-side .direct-line{
  justify-content:flex-start;
  min-height:22px;
  padding-left:4px;
  color:#1f2937!important;
  white-space:nowrap;
}

.search-footer{
  justify-content:flex-end;
  margin-top:8px;
}

@media(max-width:1150px){
  .search-side{
    width:100%;
  }
}

@media(max-width:650px){
  .search-side{
    gap:9px;
  }

  .search-side .direct-line{
    padding-left:2px;
  }
}

/* AVIAMARKET DIRECT UNDER SEARCH END */

/* AVIAMARKET SWAP CENTER FIX START */

/* Компьютер и планшет: стрелка строго по центру полей */
@media(min-width:651px){
  .swap-wrap{
    position:relative!important;
    top:auto!important;
    right:auto!important;
    width:0!important;
    height:76px!important;
    align-self:start!important;
  }

  .swap-btn{
    position:absolute!important;
    top:38px!important;
    left:0!important;
    right:auto!important;
    margin:0!important;
    transform:translate(-50%,-50%)!important;
  }

  .swap-btn:active{
    transform:translate(-50%,-50%) scale(.96)!important;
  }
}

/* AVIAMARKET SWAP CENTER FIX END */

/* AVIAMARKET SOFT BLACK SUGGESTIONS START */

.airport-list,
.airport-option,
.airport-option strong,
.airport-option:hover,
.airport-option.active{
  color:#1f2937!important;
}

.airport-option span,
.airport-empty{
  color:#667085!important;
}

/* AVIAMARKET SOFT BLACK SUGGESTIONS END */

/* AVIAMARKET SUGGESTIONS NORMAL TEXT START */

.airport-list,
.airport-option,
.airport-option strong,
.airport-option b,
.airport-option span,
.airport-empty{
  font-weight:400!important;
}

/* AVIAMARKET SUGGESTIONS NORMAL TEXT END */

/* AVIAMARKET PASSENGERS NORMAL TEXT START */

.passenger-popup,
.passenger-popup *,
.passenger-popover,
.passenger-popover *,
.passenger-panel,
.passenger-panel *,
.passenger-menu,
.passenger-menu *,
.passengers-popup,
.passengers-popup *,
.passengers-popover,
.passengers-popover *,
#passengerPopup,
#passengerPopup *,
#passengerPopover,
#passengerPopover *,
#passengerPanel,
#passengerPanel *,
#passengerMenu,
#passengerMenu *,
#passengersPopup,
#passengersPopup *{
  font-weight:400!important;
}

/* AVIAMARKET PASSENGERS NORMAL TEXT END */

/* AVIAMARKET PASSENGER DONE APP COLOR START */

.passenger-popup .btn-primary,
.passenger-popover .btn-primary,
.passenger-panel .btn-primary,
.passenger-menu .btn-primary,
.passengers-popup .btn-primary,
.passengers-popover .btn-primary,
#passengerPopup .btn-primary,
#passengerPopover .btn-primary,
#passengerPanel .btn-primary,
#passengerMenu .btn-primary,
#passengersPopup .btn-primary,
#passengersPopover .btn-primary{
  background:#0064b4!important;
  color:#ffffff!important;
  border:1px solid #0064b4!important;
  box-shadow:none!important;
  font-weight:400!important;
}

.passenger-popup .btn-primary:hover,
.passenger-popover .btn-primary:hover,
.passenger-panel .btn-primary:hover,
.passenger-menu .btn-primary:hover,
.passengers-popup .btn-primary:hover,
.passengers-popover .btn-primary:hover,
#passengerPopup .btn-primary:hover,
#passengerPopover .btn-primary:hover,
#passengerPanel .btn-primary:hover,
#passengerMenu .btn-primary:hover,
#passengersPopup .btn-primary:hover,
#passengersPopover .btn-primary:hover{
  background:#0064b4!important;
  color:#ffffff!important;
  border-color:#0064b4!important;
}

.passenger-popup .btn-primary:active,
.passenger-popover .btn-primary:active,
.passenger-panel .btn-primary:active,
.passenger-menu .btn-primary:active,
.passengers-popup .btn-primary:active,
.passengers-popover .btn-primary:active,
#passengerPopup .btn-primary:active,
#passengerPopover .btn-primary:active,
#passengerPanel .btn-primary:active,
#passengerMenu .btn-primary:active,
#passengersPopup .btn-primary:active,
#passengersPopover .btn-primary:active{
  background:#0064b4!important;
  color:#ffffff!important;
  border-color:#0064b4!important;
}

/* AVIAMARKET PASSENGER DONE APP COLOR END */

/* AVIAMARKET BRAND NORMAL TEXT START */

.brand,
.brand-name,
.brand-title,
.brand-text,
.logo-text,
.site-name,
.site-title,
.header-brand{
  font-weight:400!important;
}

/* AVIAMARKET BRAND NORMAL TEXT END */

/* AVIAMARKET BRAND WEIGHT FINAL START */

.brand,
.brand *,
.brand-name,
.brand-name *,
.brand-title,
.brand-title *,
.brand-text,
.brand-text *,
.site-brand,
.site-brand *,
.site-name,
.site-name *,
.site-title,
.site-title *,
.header-brand,
.header-brand *,
.logo-text,
.logo-text *{
  font-weight:400!important;
  font-synthesis:none!important;
  text-shadow:none!important;
  -webkit-text-stroke:0!important;
}

/* AVIAMARKET BRAND WEIGHT FINAL END */

/* AVIAMARKET ADMIN NAME SOFT BLACK START */

.top-actions,
.top-actions > span,
.top-actions .user-info,
.top-actions .user-name,
.top-actions .user-role,
.top-actions .admin-info,
.top-actions [class*="user"],
.top-actions [class*="admin"]{
  color:#1f2937!important;
}

/* AVIAMARKET ADMIN NAME SOFT BLACK END */

/* AVIAMARKET SEARCH HEIGHT COMPACT START */

@media(min-width:651px){

  .airport-cell,
  .date-field,
  .passenger-field,
  .search-submit{
    height:72px!important;
    min-height:72px!important;
  }

  .airport-cell input,
  .date-field button,
  .passenger-field button{
    height:100%!important;
    min-height:0!important;
  }

  .search-submit{
    padding-top:0!important;
    padding-bottom:0!important;
  }

  .swap-wrap{
    height:72px!important;
  }

  .swap-btn{
    top:36px!important;
  }
}

/* AVIAMARKET SEARCH HEIGHT COMPACT END */


/* AVIAMARKET HIDE CALENDAR AFTER DATE START */

.date-field.date-selected .date-button svg,
.date-field.date-selected button svg,
.date-field.date-selected .calendar-icon{
  display:none!important;
}

/* AVIAMARKET HIDE CALENDAR AFTER DATE END */

/* AVIAMARKET PASSENGER LABEL CLEAN START */

#passengerButton .passenger-class,
#passengerButton .passenger-cabin,
#passengerButton .passenger-subtitle,
#passengerButton .passenger-arrow,
#passengerButton .passenger-chevron,
#passengerButton .chevron,
#passengerButton [class*="arrow"],
#passengerButton [class*="chevron"]{
  display:none!important;
}

#passengerButton::after{
  display:none!important;
  content:none!important;
}

/* AVIAMARKET PASSENGER LABEL CLEAN END */





/* AVIAMARKET SEARCH BALANCED WIDTH START */

@media(min-width:1001px){
  .search-card{
    width:90vw!important;
    max-width:1440px!important;
    margin-left:50%!important;
    margin-right:0!important;
    transform:translateX(-50%)!important;
  }

  .search-strip,
  .search-fields{
    width:100%!important;
    max-width:none!important;
  }
}

/* AVIAMARKET SEARCH BALANCED WIDTH END */

/* AVIAMARKET SEARCH ALL EQUAL FINAL START */

@media(min-width:1001px){
  .search-fields{
    display:flex!important;
    align-items:flex-start!important;
    width:100%!important;
  }

  .search-fields > .airport-cell,
  .search-fields > .date-field,
  .search-fields > .passenger-field,
  .search-fields > .search-side{
    flex:1 1 0!important;
    width:0!important;
    min-width:0!important;
    max-width:none!important;
  }

  .search-fields > .swap-wrap{
    flex:0 0 0!important;
    width:0!important;
    min-width:0!important;
    max-width:0!important;
  }

  .airport-cell input,
  .date-field .date-button,
  .passenger-field #passengerButton,
  .search-side,
  .search-side .search-submit,
  #searchButton{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
  }
}

/* AVIAMARKET SEARCH ALL EQUAL FINAL END */



/* AVIAMARKET PLACEHOLDER LOGIC START */

:root{
  --field-placeholder:#8a94a6;
  --field-value:#1f2937;
}

/* Откуда и Куда: пустое поле */
.field-origin input::placeholder,
.field-destination input::placeholder{
  color:var(--field-placeholder)!important;
  opacity:1!important;
  font-weight:400!important;
}

/* Откуда и Куда: выбранное значение */
.field-origin input,
.field-destination input{
  color:var(--field-value)!important;
}

/* Когда и Обратно: подсказка */
.field-departure-date:not(.field-has-value) .date-button,
.field-departure-date:not(.field-has-value) .date-button span,
.field-departure-date:not(.field-has-value) .date-button div,
.field-return-date:not(.field-has-value) .date-button,
.field-return-date:not(.field-has-value) .date-button span,
.field-return-date:not(.field-has-value) .date-button div{
  color:var(--field-placeholder)!important;
}

/* Когда и Обратно: выбранная дата */
.field-departure-date.field-has-value .date-button,
.field-departure-date.field-has-value .date-button span,
.field-departure-date.field-has-value .date-button div,
.field-return-date.field-has-value .date-button,
.field-return-date.field-has-value .date-button span,
.field-return-date.field-has-value .date-button div{
  color:var(--field-value)!important;
}

/* Календарь остаётся тёмным */
.field-departure-date svg,
.field-departure-date svg *,
.field-return-date svg,
.field-return-date svg *{
  color:var(--field-value)!important;
  stroke:var(--field-value)!important;
}

/* Пассажиры: показываем подсказку вместо начального значения */
.field-passengers.field-placeholder #passengerButton{
  position:relative!important;
  color:transparent!important;
}

.field-passengers.field-placeholder #passengerButton > *{
  visibility:hidden!important;
}

.field-passengers.field-placeholder #passengerButton::before{
  content:"Пассажиры";
  position:absolute;
  left:20px;
  top:50%;
  transform:translateY(-50%);
  display:block;
  visibility:visible!important;
  color:var(--field-placeholder)!important;
  font-size:15px!important;
  font-weight:400!important;
  line-height:1.2!important;
  pointer-events:none;
}

/* Пассажиры: выбранное количество */
.field-passengers:not(.field-placeholder) #passengerButton,
.field-passengers:not(.field-placeholder) #passengerButton *{
  color:var(--field-value)!important;
}

/* AVIAMARKET PLACEHOLDER LOGIC END */

/* AVIAMARKET LIGHT FONT RULES START */

/* Все надписи и выбранные значения в форме */
#searchForm .airport-cell input,
#searchForm .date-field .date-button,
#searchForm .date-field .date-button *:not(svg):not(path),
#searchForm .passenger-field #passengerButton,
#searchForm .passenger-field #passengerButton *:not(svg):not(path),
#searchForm #searchButton,
#searchForm #searchButton *:not(svg):not(path){
  font-family:inherit!important;
  font-size:15px!important;
  font-weight:400!important;
  line-height:1.2!important;
  letter-spacing:normal!important;
  -webkit-text-size-adjust:none!important;
  text-size-adjust:none!important;
}

/* Подсказки Откуда и Куда */
#searchForm .airport-cell input::placeholder{
  font-family:inherit!important;
  font-size:15px!important;
  font-weight:400!important;
  line-height:1.2!important;
}

/* Подсказка Пассажиры */
#searchForm .field-passengers.field-placeholder
#passengerButton::before{
  font-size:15px!important;
  font-weight:400!important;
  line-height:1.2!important;
}

/* Значки не изменяем */
#searchForm svg,
#searchForm svg *{
  font-size:initial!important;
}

/* AVIAMARKET LIGHT FONT RULES END */

/* AVIAMARKET SEARCH POINTER CURSOR START */

#searchButton,
#searchButton *,
.search-submit,
.search-submit *{
  cursor:pointer!important;
}

/* Даже если кнопка временно заблокирована */
#searchButton:disabled,
.search-submit:disabled{
  cursor:pointer!important;
}

/* AVIAMARKET SEARCH POINTER CURSOR END */

/* AVIAMARKET SAFE SEARCH BAR START */

/*
  Только оформление.
  Кнопка, отправка формы и JavaScript не изменяются.
*/
#searchForm #searchButton{
  position:relative;
  overflow:hidden;
}

/* Скрываем только известные круглые индикаторы внутри кнопки */
#searchForm #searchButton .spinner,
#searchForm #searchButton .loader,
#searchForm #searchButton .search-spinner,
#searchForm #searchButton .loading-spinner{
  display:none!important;
}

/* Движущаяся полоса появляется только в состоянии загрузки */
#searchForm #searchButton:disabled::after,
#searchForm #searchButton[aria-busy="true"]::after,
#searchForm #searchButton.loading::after,
#searchForm #searchButton.is-loading::after{
  content:"";
  position:absolute;
  left:-36%;
  bottom:0;
  width:36%;
  height:3px;
  border-radius:999px;
  background:rgba(255,255,255,.95);
  box-shadow:0 0 6px rgba(255,255,255,.45);
  pointer-events:none;
  animation:aviamarket-safe-search-bar 1.1s ease-in-out infinite;
}

@keyframes aviamarket-safe-search-bar{
  from{
    transform:translateX(0);
  }

  to{
    transform:translateX(380%);
  }
}

@media (prefers-reduced-motion:reduce){
  #searchForm #searchButton:disabled::after,
  #searchForm #searchButton[aria-busy="true"]::after,
  #searchForm #searchButton.loading::after,
  #searchForm #searchButton.is-loading::after{
    animation-duration:2s;
  }
}

/* AVIAMARKET SAFE SEARCH BAR END */

/* Убираем тень вокруг элементов очистки даты */
.date-field:focus-within,
.date-field .date-button:focus,
.date-field .date-button:focus-visible,
.date-field button,
.date-field button::before,
.date-field button::after{
  box-shadow:none!important;
  text-shadow:none!important;
  filter:none!important;
}



/* AVIAMARKET RESTORE HOME SEARCH FIELDS START */

@media(min-width:901px){

  /* Одна общая рамка вокруг полей поиска */
  #searchForm .search-fields{
    border:1px solid #0064b4 !important;
    background:#ffffff !important;
    box-shadow:none !important;
  }

  /* Убираем отдельные тёмные рамки у каждого поля */
  #searchForm .search-fields > .airport-cell,
  #searchForm .search-fields > .date-field,
  #searchForm .search-fields > .passenger-field{
    border:0 !important;
    border-color:transparent !important;
    box-shadow:none !important;
  }

  /* Оставляем только тонкие внутренние разделители */
  #searchForm .search-fields > .destination-cell,
  #searchForm .search-fields > .date-field,
  #searchForm .search-fields > .passenger-field{
    border-left:1px solid #0064b4 !important;
  }

  #searchForm .search-fields > .origin-cell{
    border-left:0 !important;
  }

  /* Спокойное выделение активного поля */
  #searchForm .airport-cell:focus-within,
  #searchForm .date-field:focus-within,
  #searchForm .passenger-field:focus-within{
    box-shadow:inset 0 0 0 1px #0064b4 !important;
  }
}

/* AVIAMARKET RESTORE HOME SEARCH FIELDS END */

/* AVIAMARKET COMPLETE SEARCH CORNERS START */

@media(min-width:901px){
  #searchForm .search-fields{
    position:relative !important;
    border:0 !important;
    border-radius:18px !important;
    overflow:visible !important;
  }

  /* Цельная внешняя рамка поверх белых полей */
  #searchForm .search-fields::after{
    content:"";
    position:absolute;
    inset:0;
    z-index:20;
    box-sizing:border-box;
    border:1px solid #0064b4;
    border-radius:18px;
    pointer-events:none;
  }
}

/* AVIAMARKET COMPLETE SEARCH CORNERS END */

/* AVIAMARKET BLACK SEARCH FIELDS START */

@media(min-width:901px){

  #searchForm .search-fields{
    position:relative !important;
    border:0 !important;
    border-radius:18px !important;
    overflow:visible !important;
    box-shadow:none !important;
  }

  /* Полная внешняя чёрная рамка */
  #searchForm .search-fields::after{
    content:"";
    position:absolute;
    inset:0;
    z-index:20;
    box-sizing:border-box;
    border:1px solid #1f2937 !important;
    border-radius:18px !important;
    pointer-events:none;
  }

  /* Убираем синие рамки отдельных полей */
  #searchForm .search-fields > .airport-cell,
  #searchForm .search-fields > .date-field,
  #searchForm .search-fields > .passenger-field{
    border:0 !important;
    border-color:transparent !important;
    box-shadow:none !important;
  }

  /* Чёрные разделители */
  #searchForm .search-fields > .destination-cell,
  #searchForm .search-fields > .date-field,
  #searchForm .search-fields > .passenger-field{
    border-left:1px solid #1f2937 !important;
  }

  #searchForm .search-fields > .origin-cell{
    border-left:0 !important;
  }

  /* Активное поле также выделяется чёрным */
  #searchForm .airport-cell:focus-within,
  #searchForm .date-field:focus-within,
  #searchForm .passenger-field:focus-within{
    box-shadow:inset 0 0 0 1px #1f2937 !important;
  }
}

/* AVIAMARKET BLACK SEARCH FIELDS END */


/* AVIAMARKET SQUARE SEARCH FIELDS START */

@media(min-width:901px){

  #searchForm .search-fields{
    height:76px !important;
    min-height:76px !important;
    border-radius:0 !important;
    overflow:visible !important;
  }

  #searchForm .search-fields::after{
    border-radius:0 !important;
  }

  #searchForm .search-fields > .airport-cell,
  #searchForm .search-fields > .date-field,
  #searchForm .search-fields > .passenger-field{
    height:76px !important;
    min-height:76px !important;
    border-radius:0 !important;
  }

  #searchForm .airport-cell input,
  #searchForm .date-field .date-button,
  #searchForm .passenger-field #passengerButton{
    height:76px !important;
    min-height:76px !important;
    border-radius:0 !important;
  }

  #searchForm .origin-cell,
  #searchForm .origin-cell input,
  #searchForm .destination-cell,
  #searchForm .passenger-field,
  #searchForm .passenger-btn{
    border-radius:0 !important;
  }
}

/* AVIAMARKET SQUARE SEARCH FIELDS END */

/* AVIAMARKET SEARCH FIELDS BUTTON HEIGHT START */

@media(min-width:901px){

  #searchForm .search-strip{
    align-items:start !important;
  }

  /* Поля имеют ту же высоту, что и кнопка Поиск */
  #searchForm .search-fields,
  #searchForm .search-fields > .airport-cell,
  #searchForm .search-fields > .date-field,
  #searchForm .search-fields > .passenger-field,
  #searchForm .airport-cell input,
  #searchForm .date-field .date-button,
  #searchForm .passenger-field #passengerButton,
  #searchForm #searchButton,
  #searchForm .search-submit{
    box-sizing:border-box !important;
    height:76px !important;
    min-height:76px !important;
    max-height:76px !important;
  }

  /* У полей прямые углы */
  #searchForm .search-fields,
  #searchForm .search-fields::after,
  #searchForm .search-fields > .airport-cell,
  #searchForm .search-fields > .date-field,
  #searchForm .search-fields > .passenger-field,
  #searchForm .airport-cell input,
  #searchForm .date-field .date-button,
  #searchForm .passenger-field #passengerButton{
    border-radius:0 !important;
  }
}

/* AVIAMARKET SEARCH FIELDS BUTTON HEIGHT END */



/* AVIAMARKET SEARCH HEIGHT 64 START */

@media(min-width:901px){

  #searchForm .search-fields,
  #searchForm .search-fields > .airport-cell,
  #searchForm .search-fields > .date-field,
  #searchForm .search-fields > .passenger-field,
  #searchForm .search-fields > .swap-wrap,
  #searchForm .airport-cell input,
  #searchForm .date-field .date-button,
  #searchForm .passenger-field #passengerButton,
  #searchForm #searchButton,
  #searchForm .search-submit{
    height:64px !important;
    min-height:64px !important;
    max-height:64px !important;
  }

  #searchForm .swap-btn{
    top:50% !important;
  }
}

/* AVIAMARKET SEARCH HEIGHT 64 END */

/* AVIAMARKET MERGED SEARCH BUTTON START */

@media(min-width:901px){

  /* Убираем расстояние между полями и кнопкой */
  #searchForm .search-strip{
    gap:0 !important;
    column-gap:0 !important;
  }

  #searchForm .search-side{
    margin-left:0 !important;
    padding-left:0 !important;
  }

  /* Убираем правую линию у блока полей */
  #searchForm .search-fields::after{
    border-right:0 !important;
  }

  /* Кнопка соединяется вплотную с полями */
  #searchForm #searchButton,
  #searchForm .search-submit{
    box-sizing:border-box !important;
    height:64px !important;
    min-height:64px !important;
    max-height:64px !important;
    margin-left:0 !important;
    border-radius:0 !important;
    border-left:0 !important;
  }
}

/* AVIAMARKET MERGED SEARCH BUTTON END */

/* AVIAMARKET HIDE DEPARTURE CALENDAR ICON START */
#searchForm #departureDateButton .calendar-icon{
  display:none !important;
}
/* AVIAMARKET HIDE DEPARTURE CALENDAR ICON END */

/* AVIAMARKET EQUAL SEARCH FIELD SIZE START */

@media(min-width:1151px){

  /*
   * Пять одинаковых полей слева
   * и одна такая же колонка для кнопки Поиск.
   */
  #searchForm .search-strip{
    grid-template-columns:minmax(0,5fr) minmax(0,1fr) !important;
    gap:0 !important;
    column-gap:0 !important;
  }

  #searchForm .search-fields{
    grid-template-columns:
      minmax(0,1fr)
      0
      minmax(0,1fr)
      minmax(0,1fr)
      minmax(0,1fr)
      minmax(0,1fr) !important;
    width:100% !important;
    min-width:0 !important;
  }

  #searchForm .search-side{
    width:100% !important;
    min-width:0 !important;
    margin:0 !important;
    padding:0 !important;
  }

  #searchForm .search-fields,
  #searchForm .search-fields > .airport-cell,
  #searchForm .search-fields > .date-field,
  #searchForm .search-fields > .passenger-field,
  #searchForm .airport-cell input,
  #searchForm .date-field .date-button,
  #searchForm .passenger-field #passengerButton,
  #searchForm #searchButton,
  #searchForm .search-submit{
    box-sizing:border-box !important;
    height:64px !important;
    min-height:64px !important;
    max-height:64px !important;
  }

  #searchForm #searchButton,
  #searchForm .search-submit{
    width:100% !important;
    min-width:0 !important;
    max-width:none !important;
  }
}

/* AVIAMARKET EQUAL SEARCH FIELD SIZE END */






/* AVIAMARKET SEARCH CLEAN EQUAL SIZE START */

/* Убираем только внешние рамки */
#searchForm .search-fields,
#searchForm .airport-cell,
#searchForm .date-field,
#searchForm .passenger-field,
#searchForm .airport-cell input,
#searchForm .date-field .date-button,
#searchForm .passenger-field #passengerButton,
#searchForm #searchButton,
#searchForm .search-submit{
  box-sizing:border-box !important;
  border:0 !important;
  outline:0 !important;
  box-shadow:none !important;
}

/* Внутренний разделитель Откуда / Куда */
#searchForm .swap-wrap::before{
  content:"" !important;
  display:block !important;
  position:absolute !important;
  top:0 !important;
  bottom:0 !important;
  left:50% !important;
  width:1px !important;
  background:#1f2937 !important;
  pointer-events:none !important;
}

/* Остальные внутренние разделители */
#searchForm .departure-field,
#searchForm .return-field,
#searchForm .passenger-field{
  border-left:1px solid #1f2937 !important;
}

/* Кнопка имеет точно такой же размер */
#searchForm #searchButton,
#searchForm .search-submit{
  position:relative !important;
  width:100% !important;
  height:64px !important;
  min-height:64px !important;
  max-height:64px !important;
  margin:0 !important;
  background:#ffffff !important;
  color:#0064b4 !important;
}

/* Разделитель перед кнопкой не занимает место */
#searchForm #searchButton::before{
  content:"" !important;
  display:block !important;
  position:absolute !important;
  top:0 !important;
  bottom:0 !important;
  left:0 !important;
  width:1px !important;
  background:#1f2937 !important;
  pointer-events:none !important;
}

/* AVIAMARKET SEARCH CLEAN EQUAL SIZE END */

/* AVIAMARKET REMOVE SEARCH OUTER FRAME START */

/* Удаляем старую внешнюю чёрную рамку блока полей */
#searchForm .search-fields::after,
#searchForm .search-fields::before{
  content:none !important;
  display:none !important;
  border:0 !important;
  outline:0 !important;
  box-shadow:none !important;
}

/* У внешнего блока не должно быть рамок */
#searchForm .search-fields{
  border:0 !important;
  outline:0 !important;
  box-shadow:none !important;
}

/* Убираем верхние, нижние и крайние внешние линии */
#searchForm .origin-cell,
#searchForm .destination-cell,
#searchForm .departure-field,
#searchForm .return-field,
#searchForm .passenger-field{
  border-top:0 !important;
  border-bottom:0 !important;
  border-right:0 !important;
}

/* Внутренние разделители сохраняем */
#searchForm .departure-field,
#searchForm .return-field,
#searchForm .passenger-field{
  border-left:1px solid #1f2937 !important;
}

/* AVIAMARKET REMOVE SEARCH OUTER FRAME END */


/* AVIAMARKET SEARCH TEXT SIZE START */
#searchForm #searchButton{
  font-size:22px !important;
  font-weight:700 !important;
}
/* AVIAMARKET SEARCH TEXT SIZE END */

/* AVIAMARKET SEARCH TEXT UPPERCASE START */
#searchForm #searchButton{
  text-transform:uppercase !important;
}
/* AVIAMARKET SEARCH TEXT UPPERCASE END */

/* AVIAMARKET SEARCH LETTER SPACING START */
#searchForm #searchButton{
  letter-spacing:2px !important;
}
/* AVIAMARKET SEARCH LETTER SPACING END */

/* AVIAMARKET DIRECT ONLY WHITE START */
#searchForm .search-side label,
#searchForm .search-side label span{
  color:#ffffff !important;
}
/* AVIAMARKET DIRECT ONLY WHITE END */

/* AVIAMARKET DIRECT CHECKBOX NO BORDER START */
#searchForm .direct-line input{
  border:0 !important;
  outline:0 !important;
  box-shadow:none !important;
}
/* AVIAMARKET DIRECT CHECKBOX NO BORDER END */


/* AVIAMARKET DIRECT CHECKBOX BRAND START */
#searchForm .direct-line input,
#searchForm .direct-line input:checked{
  background:#ffffff !important;
  border:0 !important;
  outline:0 !important;
  box-shadow:none !important;
}

#searchForm .direct-line input:checked::after{
  border-color:#0064b4 !important;
}
/* AVIAMARKET DIRECT CHECKBOX BRAND END */

/* AVIAMARKET RESTORE SEARCH LOADING BAR START */
#searchForm #searchButton:disabled::after,
#searchForm #searchButton[aria-busy="true"]::after,
#searchForm #searchButton.loading::after,
#searchForm #searchButton.is-loading::after{
  background:#0064b4 !important;
  box-shadow:0 0 7px rgba(0,100,180,.5) !important;
  height:3px !important;
  z-index:5 !important;
}
/* AVIAMARKET RESTORE SEARCH LOADING BAR END */

/* AVIAMARKET CLEAN HEADER EDGE START */
.home-shell > .topbar {
  background: transparent !important;
}
/* AVIAMARKET CLEAN HEADER EDGE END */

/* AVIAMARKET ALL SEARCH DIVIDERS START */
@media (min-width:651px){

  /*
   * Убираем старые границы и отрицательные смещения.
   * Все линии ниже создаются отдельными слоями.
   */
  #searchForm .search-fields > .airport-cell,
  #searchForm .search-fields > .date-field,
  #searchForm .search-fields > .passenger-field{
    position:relative !important;
    margin-left:0 !important;
    border-left:0 !important;
    border-right:0 !important;
  }

  /*
   * 1. Откуда | Куда
   * Линия проходит через центр блока со стрелкой.
   */
  #searchForm .search-fields > .swap-wrap{
    position:relative !important;
    z-index:30 !important;
  }

  #searchForm .search-fields > .swap-wrap::before{
    content:"" !important;
    display:block !important;
    position:absolute !important;
    top:0 !important;
    bottom:0 !important;
    left:50% !important;
    width:0 !important;
    border-left:1px solid #1f2937 !important;
    background:transparent !important;
    transform:none !important;
    pointer-events:none !important;
    z-index:1 !important;
  }

  #searchForm .search-fields > .swap-wrap button{
    position:relative !important;
    z-index:2 !important;
    background:#ffffff !important;
  }

  /*
   * 2. Куда | Когда
   * 3. Когда | Обратно
   * 4. Обратно | Пассажиры
   */
  #searchForm .search-fields > .departure-field::before,
  #searchForm .search-fields > .return-field::before,
  #searchForm .search-fields > .passenger-field::before{
    content:"" !important;
    display:block !important;
    position:absolute !important;
    top:0 !important;
    bottom:0 !important;
    left:0 !important;
    width:1px !important;
    border:0 !important;
    background:#1f2937 !important;
    pointer-events:none !important;
    z-index:100 !important;
  }

  /* 5. Пассажиры | Поиск */
  #searchForm .search-fields > .passenger-field::after{
    content:"" !important;
    display:block !important;
    position:absolute !important;
    top:0 !important;
    right:0 !important;
    bottom:0 !important;
    width:1px !important;
    border:0 !important;
    background:#1f2937 !important;
    pointer-events:none !important;
    z-index:100 !important;
  }

  /*
   * Удаляем прежние дополнительные линии,
   * чтобы нигде не было двойных разделителей.
   */
  #searchForm .search-fields > .departure-field::after,
  #searchForm #searchButton::before{
    content:none !important;
    display:none !important;
  }
}
/* AVIAMARKET ALL SEARCH DIVIDERS END */

/* AVIAMARKET SINGLE MONTH CALENDAR START */
.single-month-calendar{
  position:fixed;
  z-index:10000;

  box-sizing:border-box;
  width:min(430px,calc(100vw - 20px));
  min-height:370px;
  padding:16px 18px 18px;

  background:#ffffff;
  color:#171c26;

  border:1px solid #edf0f4;
  border-radius:18px;

  box-shadow:
    0 16px 38px rgba(23,32,51,.16),
    0 3px 10px rgba(23,32,51,.07);
}

.single-calendar-header{
  display:grid;
  grid-template-columns:40px 1fr 40px;
  align-items:center;
  min-height:40px;
}

.single-calendar-title{
  display:block;
  color:#171c26;
  font-size:19px;
  font-weight:700;
  line-height:1.2;
  text-align:center;
}

.single-calendar-nav{
  display:flex;
  align-items:center;
  justify-content:center;

  width:40px;
  height:40px;
  min-height:40px;
  padding:0;

  border:0;
  border-radius:50% !important;

  background:#f2f4f6;
  color:#98a2b3;

  font-family:Arial,sans-serif;
  font-size:31px;
  font-weight:300;
  line-height:1;

  cursor:pointer;
}

.single-calendar-nav:hover:not(:disabled),
.single-calendar-nav:focus-visible:not(:disabled){
  background:#e8edf2;
  color:#667085;
}

.single-calendar-nav:disabled{
  opacity:.38;
  cursor:default;
}

.single-calendar-weekdays{
  display:grid;
  grid-template-columns:repeat(7,1fr);
  align-items:center;

  height:44px;
  margin-top:2px;
}

.single-calendar-weekdays span{
  color:#171c26;
  font-size:15px;
  font-weight:400;
  text-align:center;
}

.single-calendar-weekdays span:nth-child(6),
.single-calendar-weekdays span:nth-child(7){
  color:#8c98a8;
}

.single-calendar-days{
  display:grid;
  grid-template-columns:repeat(7,1fr);
  grid-template-rows:repeat(6,43px);
  gap:3px 4px;
}

.single-calendar-day{
  display:flex;
  align-items:center;
  justify-content:center;

  width:100%;
  height:43px;
  min-height:43px;
  padding:0;

  border:0;
  border-radius:0 !important;

  background:transparent;
  color:#171c26;

  font-size:16px;
  font-weight:400;
  line-height:1;

  cursor:pointer;
}

.single-calendar-day:hover:not(:disabled):not(.is-selected),
.single-calendar-day:focus-visible:not(:disabled):not(.is-selected){
  background:#edf4ff;
  color:#0064b4;
  outline:none;
}

.single-calendar-day:disabled{
  background:transparent;
  color:#c3ccd7;
  cursor:default;
}

.single-calendar-day.is-today:not(.is-selected){
  box-shadow:inset 0 0 0 1px #0064b4;
  color:#0064b4;
}

.single-calendar-day.is-selected{
  background:#0064b4;
  color:#ffffff;
  font-weight:600;
}

.single-calendar-empty{
  display:block;
  height:43px;
}

@media(max-width:650px){
  .single-month-calendar{
    width:calc(100vw - 16px);
    min-height:342px;
    padding:12px 10px 14px;
    border-radius:16px;
  }

  .single-calendar-title{
    font-size:18px;
  }

  .single-calendar-nav{
    width:36px;
    height:36px;
    min-height:36px;
    font-size:28px;
  }

  .single-calendar-weekdays{
    height:40px;
  }

  .single-calendar-weekdays span{
    font-size:14px;
  }

  .single-calendar-days{
    grid-template-rows:repeat(6,40px);
    gap:2px;
  }

  .single-calendar-day,
  .single-calendar-empty{
    height:40px;
    min-height:40px;
  }

  .single-calendar-day{
    font-size:15px;
  }
}
/* AVIAMARKET SINGLE MONTH CALENDAR END */

/* AVIAMARKET DATE CLEAR ON HOVER START */
.date-field{
  position:relative !important;
}

.date-clear-button{
  position:absolute !important;
  top:50% !important;
  right:10px !important;
  z-index:30 !important;

  display:none !important;
  align-items:center !important;
  justify-content:center !important;

  width:30px !important;
  height:30px !important;
  min-height:30px !important;
  padding:0 !important;

  border:0 !important;
  border-radius:0 !important;
  outline:0 !important;

  background:transparent !important;
  color:#1f2937 !important;

  font-family:Arial,sans-serif !important;
  font-size:24px !important;
  font-weight:400 !important;
  line-height:1 !important;

  box-shadow:none !important;
  transform:translateY(-50%) !important;
  cursor:pointer !important;
}

/* Показываем только при выбранной дате и наведении на поле */
.date-field.date-has-value:hover
.date-clear-button{
  display:flex !important;
}

.date-clear-button:hover{
  color:#0064b4 !important;
}

/* Место под крестик сохраняется, поэтому дата не прыгает */
.date-field.date-has-value .date-button{
  padding-right:46px !important;
}
/* AVIAMARKET DATE CLEAR ON HOVER END */

/* AVIAMARKET CALENDAR ARROWS CENTER START */
.single-calendar-nav{
  position:relative !important;

  display:grid !important;
  place-items:center !important;

  padding:0 !important;
  overflow:hidden !important;

  font-size:0 !important;
  line-height:1 !important;

  background:#edf5ff !important;
  color:#0064b4 !important;
}

/* Собственная стрелка точно в центре круга */
.single-calendar-nav::before{
  display:block !important;

  font-family:Arial,sans-serif !important;
  font-size:32px !important;
  font-weight:400 !important;
  line-height:1 !important;

  color:currentColor !important;
  transform:translateY(-1px) !important;
}

.single-calendar-nav[data-calendar-prev]::before{
  content:"‹" !important;
}

.single-calendar-nav[data-calendar-next]::before{
  content:"›" !important;
}

/* Недоступная стрелка остаётся серой */
.single-calendar-nav:disabled{
  background:#f2f4f6 !important;
  color:#a8b2c1 !important;
  opacity:1 !important;
}

/* Активная стрелка при наведении */
.single-calendar-nav:hover:not(:disabled),
.single-calendar-nav:focus-visible:not(:disabled){
  background:#dcecff !important;
  color:#0064b4 !important;
}
/* AVIAMARKET CALENDAR ARROWS CENTER END */

/* AVIAMARKET SEARCH TEXT BOLD START */
#searchButton,
.search-submit{
  font-weight:800 !important;
}
/* AVIAMARKET SEARCH TEXT BOLD END */

/* AVIAMARKET POPULAR CITIES START */
#searchForm .search-footer{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  flex-wrap:wrap !important;

  gap:10px 16px !important;
  margin-top:12px !important;
  padding:0 !important;
}

.popular-cities{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:8px;
}

.popular-cities-title{
  color:#ffffff;
  font-size:14px;
  font-weight:400;
  white-space:nowrap;
}

.popular-cities-list{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:6px;
}

.popular-cities-list button{
  display:inline-flex;
  align-items:center;
  justify-content:center;

  min-height:32px;
  padding:0 11px;

  border:1px solid #ffffff !important;
  border-radius:0 !important;

  background:#ffffff !important;
  color:#0064b4 !important;

  font-family:inherit !important;
  font-size:13px !important;
  font-weight:400 !important;
  line-height:1 !important;

  box-shadow:none !important;
  cursor:pointer;
}

.popular-cities-list button:hover,
.popular-cities-list button:focus-visible{
  background:#eaf3ff !important;
  color:#004f91 !important;
}

.popular-cities-list button:active{
  background:#dcecff !important;
}

@media(max-width:650px){
  #searchForm .search-footer,
  .popular-cities{
    align-items:flex-start !important;
    flex-direction:column !important;
  }

  .popular-cities-list{
    width:100%;
  }

  .popular-cities-list button{
    min-height:34px;
  }
}
/* AVIAMARKET POPULAR CITIES END */

/* AVIAMARKET POPULAR BLUE BUTTONS START */
.popular-cities-list button{
  background:#0064b4 !important;
  color:#ffffff !important;
  border:1px solid #ffffff !important;
}

.popular-cities-list button:hover,
.popular-cities-list button:focus-visible{
  background:#00579d !important;
  color:#ffffff !important;
  border-color:#ffffff !important;
}

.popular-cities-list button:active{
  background:#004b88 !important;
  color:#ffffff !important;
}
/* AVIAMARKET POPULAR BLUE BUTTONS END */

/* AVIAMARKET POPULAR BUTTONS FINAL START */
html body .popular-cities-list button{
  background:#ffffff !important;
  color:#1f2937 !important;
  border:1px solid #d9e0ea !important;

  font-weight:400 !important;
  text-shadow:none !important;
  box-shadow:none !important;
}

html body .popular-cities-list button:hover,
html body .popular-cities-list button:focus-visible{
  background:#f5f7fa !important;
  color:#111827 !important;
  border-color:#b8c2d0 !important;
}

html body .popular-cities-list button:active{
  background:#e9edf2 !important;
  color:#111827 !important;
}
/* AVIAMARKET POPULAR BUTTONS FINAL END */

