/* =========================
   RESET / BASE
========================= */
*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0;
  font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial;
  background:#f7f7f7;
  color:#333;
  overflow-x:hidden;
}
img{max-width:100%;height:auto;vertical-align:middle;border:0}
a{color:#337ab7;text-decoration:none;outline:0;background:transparent}

:root{
	--line: rgba(17,24,39,.12);
  --muted:#6b7280;
  --card:#fff;
  --soft:#f3f4f6;
  --blue:#3d95fb;
  --greenDark:#16a34a;
}

/* =========================
   HEADER / GRID HELPERS (legacy)
========================= */
header{
  color:#fff;
  position:relative;
  margin-bottom:0;
  background:#305b95 url(/img/back.png) repeat-x;
  display:block;
}
header .main-info{padding:20px 0 8px}

:before,:after{box-sizing:border-box}
.wrap{max-width:1200px;margin:0 auto;padding:22px 18px;overflow-x:hidden}
.wrap:before,.wrap:after{display:table;content:" "}
.wrap:after{clear:both}

.col-xs-3{width:25%;float:left}
.col-xs-9{width:75%;float:left;position:relative;min-height:1px}
.pull-right{float:right}
.pull-left{float:left!important}
.hidden{display:none!important}

.header .header-info{padding-top:9px;padding-left:0;padding-right:0}
.header .phone-info{
  background:url(/img/phone2.png) no-repeat center left;
  padding-left:34px;
  width:214px;
  min-height:60px;
}
.header-phone-info{display:inline;font-size:11px}
.header-info-gold{color:#ffd971}
.pseudo-link{text-decoration:none!important;display:inline-block;line-height:1.1;border-bottom:1px dashed}
.gotham-medium{font-family:Gotham,"Helvetica Neue",Helvetica,Arial,sans-serif;font-weight:500!important}
.header-block-height{display:block;min-height:20px}
.header-info .site-phone{
  color:#fff;
  text-decoration:none;
  font-weight:700;
  display:block;
}
.site-phone,.show-hidden-phone{white-space:nowrap}
.header-clbk{cursor:pointer}
.header-info .current-city-phone-wrapper{font-size:18px;line-height:18px;padding-top:3px}
.CoverFooter_toursAmountWrapper__W1f7Z {color: white;}

.header .city-info{background:url(/img/marker2.png) no-repeat center left;min-width:245px}
header .city-info{padding-left:30px;margin-right:20px}
.accountAccess{
  display:inline-flex;align-items:center;gap:8px;color:#fff;font-weight:700;line-height:1.2;
}
.accountAccess--desktop{
  order:3;min-height:54px;margin:3px 0 0 20px;padding:0 2px 0 20px;
  border-left:1px solid rgba(255,255,255,.13);
  white-space:nowrap;
}
.accountAccess:hover,.accountAccess:focus-visible{color:#ffd971}
.accountAccess__icon{
  width:27px;height:27px;flex:0 0 27px;display:inline-flex;align-items:center;justify-content:center;
  border:2px solid #ffd971;border-radius:50%;color:#ffd971;
}
.accountAccess__icon svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round}
@media (min-width:768px){
  .header>.wrap{padding-top:14px;padding-bottom:10px}
  .header .main-info{display:flex;align-items:center;min-height:76px;padding:8px 0}
  .header .logo{float:none;flex:0 0 300px;width:300px}
  .header .logo img{display:block;width:min(100%,280px);height:auto}
  .header .header-info{float:none;flex:1 1 auto;width:auto;min-width:0;display:flex;align-items:center;justify-content:flex-end}
  .header .header-info .city-info{order:1}
  .header .header-info .phone-info{order:2;flex:0 0 214px}
  .header .header-info>.clearfix{display:none}
}
@media (min-width:768px) and (max-width:1120px){
  .header .city-info{display:none}
  .header .logo{flex-basis:285px;width:285px}
}
@media (min-width:768px) and (max-width:900px){
  .header .logo{flex-basis:240px;width:240px}
  .header .logo img{width:min(100%,220px)}
}

.content{
	max-width: 1260px;
    margin: 0 auto;
    padding: 18px 14px;
}
.content_container {
    padding-top: 50px;
    padding-bottom: 100px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
}
.content_left{width:300px;}
.content_left .moduletable{padding:6px;border:1px dashed #1dbbc0;}
.content_left h3{font-size:34px;line-height:38px;color:#1dbbc0;padding:5px;margin:0px;}
.content_left ul{padding:0px;margin:0px;}
.content_left ul li{display:block;border-top:1px dotted #fff;}
.content_left ul li:first-child{border-top:none;}
.content_left ul li a{display:block;font-size:16px;line-height:20px;color:#fff;position:relative;padding:8px 22px;}
.content_left ul li a:before{content:'';display:block;width:5px;height:1px;background:#fff;position:absolute;top:17px;left:7px;}
.content_left ul li a:hover{text-decoration:underline;}
.content_left ul li.active a{background:#454445;color:#1dbbc0;}
.content_left ul li.active a:before{background:#1dbbc0;}
.content_left-module{background:#120e27;margin-bottom:20px;padding:4px;}
.content_right{width:calc(100% - 330px);}
.content_right h1{font-size:30px;line-height:34px;margin:0px;margin-bottom:20px;color:#098ad3;font-weight:normal;border-bottom:1px dashed #000;padding-bottom:10px;}
.content_right p{margin-top:15px;font-size:14px;line-height:18px;}
.content_right b{font-weight:bold;}
.content_right p a{text-decoration:underline;}
.content_right img.float-left{border:5px solid #31363b;display:block;margin:0px 20px 20px 0px;}
.content_right img.float-right{border:5px solid #31363b;display:block;margin:0px 0px 20px 20px;}
.text-block_left{background:#e3e2e2;position:relative;}
.text-block_left:before{content:'';background:#f1efed;width:100%;height:50px;position:absolute;z-index:1;top:0;left:0;}
.text-block_left:after{content:'';border:1px dashed #0989d3;width:calc(100% - 9px);height:calc(100% - 9px);top:3px;left:3px;position:absolute;z-index:2;}
.text-block_left-title{position:relative;z-index:3;font-size:20px;color:#098ad3;height:60px;line-height:52px;padding:0 20px;}
.text-block_left-menu{position:relative;z-index:3;padding:20px;display:flex;flex-direction:column;align-items:flex-start;padding-top:0;}
.text-block_left-menu a{display:flex;align-items:center;width:100%;padding:10px 0;border-bottom:1px solid #c0bfbf;color:#213067;}
.text-block_left-menu svg{display:block;width:28px;height:28px;margin-right:10px;}
.text-block_left-menu a:hover{background:#0989d3;color:#fff;}
.text-block_left-menu a:hover svg g{fill:#fff;}
.text-block_text-3 {
    font-size: 18px;
    line-height: 1.4;
    margin-bottom: 20px;
}
/* =========================
   MOBILE MENU
========================= */
.mobMenu{
  position:fixed;
  inset:0;
  z-index:10050;
  display:none;
}
body.mobMenuOpen .mobMenu{display:block}
.mobMenu__overlay{position:absolute;inset:0;background:rgba(17,24,39,.35)}
.mobMenu__panel{
  position:absolute;top:0;right:0;
  width:min(92vw,420px);
  height:100%;
  background:#fff;
  box-shadow:-18px 0 50px rgba(16,24,40,.25);
  display:flex;flex-direction:column;
}
.mobMenu__top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:14px;
  border-bottom:1px solid rgba(17,24,39,.12);
}
.mobMenu__logo img{height:28px;width:auto;display:block}
.mobMenu__close{
  border:0;background:transparent;
  font-size:22px;cursor:pointer;
  padding:10px;line-height:1;
}
.mobMenu__nav{overflow:auto;padding:10px 0}
.mobNav{list-style:none;margin:0;padding:0}
.mobNav>li{border-bottom:1px solid rgba(17,24,39,.08)}
.mobNav a{
  display:block;
  padding:14px 16px;
  color:#111827;
  font-weight:800;
  text-decoration:none;
}
.mobNav a:active{background:#f3f4f6}
.mobNav__account a{display:flex;align-items:center;gap:10px;color:#8e3c16}
.mobNav__account .accountAccess__icon{border-color:#d5a000;color:#d5a000}

/* accordion */
.mobBurger{display:none}
.mobDrop__btn{
  width:100%;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:14px 16px;
  border:0;
  background:transparent;
  cursor:pointer;
  font-weight:900;
  font-size:16px;
  color:#111827;
}
.mobDrop__chev{opacity:.7}
.mobDrop__box{display:none;padding:0 0 10px}
.mobDrop.is-open .mobDrop__box{display:block}
.mobDrop__list{list-style:none;margin:0;padding:0}
.mobDrop__list a{
  font-weight:650;
  padding:10px 16px 10px 26px;
  color:#374151;
}
.mobDrop__countries{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
.mobDrop__countries a{display:flex;align-items:center;padding:8px 10px;font-size:14px}
.mobDrop__countries .country-icon{flex-shrink:0}
.mobDrop__countries .country-menu-divider{
  grid-column:1 / -1;
  margin:8px 10px;
  border:0;
  border-top:1px solid #d1d5db;
}
.mobNav__request{padding:14px 16px;border-bottom:0!important}
.mobNav__request button{
  width:100%;border:0;border-radius:12px;padding:13px 18px;cursor:pointer;
  background:#098ad3;color:#fff;font:inherit;font-weight:800;
}

/* =========================
   NAVBAR (legacy)
========================= */
.navbar-main{
  border:1px solid #ecc455;
  background:#ffd971;

  margin-top:12px;
  margin-bottom:0;
  color:#655640;
  border-radius:0;
  font-size:15px;
  font-weight:700;
}
.navbar-main.tt-nav-fixed{
  position:fixed;
  top:0;
  left:0;
  right:0;
  z-index:10030;
  margin-top:0;
  box-shadow:0 4px 14px rgba(0,0,0,.12);
}
.navbar-main .wrap{padding:0}
.navbar-main .navbar{margin:0;min-height:46px;width:100%;display:block}
.navbar{position:relative;min-height:50px;margin-bottom:20px;border:1px solid transparent}
.navbar-main .navbar-collapse{padding-left:0;padding-right:0}
.navbar-main .navbar-nav{display:flex;align-items:center;justify-content:center;gap:clamp(0px,calc((100vw - 768px)/20),12px);width:100%;padding:0;list-style:none}
.navbar-main .navbar-nav>li{
  float:none;
  display:block;
  flex:0 0 auto;
  text-align:center;
  vertical-align:middle;
}
.navbar-main .navbar-nav>li>a{
  color:#655640;
  white-space:nowrap;
}
.navbar-main .navbar-nav>li.request-menu-item{flex:0 0 auto;padding:5px 6px}
.request-menu-button{
  display:block;width:100%;min-width:154px;padding:9px 15px;border:1px solid rgb(254 254 255);border-radius:8px;
  background:#305b95;color:#fff;font:inherit;font-weight:800;white-space:nowrap;cursor:pointer;
  box-shadow:0 3px 9px rgba(9,138,211,.22);
  transition:background-color .2s ease,transform .2s ease,box-shadow .2s ease;
}
.request-menu-button:hover,.request-menu-button:focus-visible{
  background:#087abd;box-shadow:0 5px 13px rgba(9,138,211,.3);transform:translateY(-1px);
}
.navbar-main .navbar-brand{height:auto;font-size:15px}
.navbar-nav{margin:0}
.nav>li>a{position:relative;display:block;padding:10px 15px}
.r8{border-radius:8px}

.marked{list-style:disc;margin-left:27px}
.marked>a,.lmMenu--mobile .marked{color:#4a4d4d;font-size:13px}
.navbar-main ul.dropdown-menu>li.marked>a>span,
.navbar-main .lmMenu li.marked>a>span{border-bottom-color:#a49669}

.bordered-brown{text-decoration:none;border-bottom:1px solid #baa164}

.header img.country-icon{
  width:24px;
  height:16px;
  object-fit:contain;
  margin-right:5px;
  vertical-align:text-top;
  border-radius:3px;
}

/* dropdowns */
.navbar-nav>li.dropdown{position:relative}
.navbar-nav>li.dropdown>.dropdown-menu{
  position:absolute;
  top:100%;
  left:0;
  display:none;
  min-width:260px;
  max-width:720px;
  padding:14px 12px;
  margin-top:0;
  border-radius:0 0 8px 8px;
  background:#fede85;
  box-shadow:0 10px 22px rgba(0,0,0,.18);
}
.header .wrap{overflow:visible}

#hot_offers_menu.lmMenu {width:600px;max-width:calc(100vw - 32px);grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;}
.navbar-nav > li.dropdown:hover > #hot_offers_menu,
.navbar-nav > li.dropdown:focus-within > #hot_offers_menu {display:grid;opacity:1;visibility:visible;pointer-events:auto;transform:none;}
.lmMenu,.lmMenu ul {list-style:none;margin:0;padding:0;}
.lmMenu .lmMenu__group {float:none;width:auto;min-width:0;}
.lmMenu__heading {display:block;font-weight:700;margin-bottom:12px;margin-left:12px;}
.lmMenu--mobile a {display:block;padding:7px 4px;white-space:normal;line-height:1.4;}
.lmMenu__all {grid-column:1/-1;border-top:1px solid #dfc887;padding-top:8px;}
.lmMenu--mobile {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:12px;}
.lmMenu--mobile .lmMenu__heading {color:#4b5563;font-size:14px;}
.lmMenu--mobile a {font-size:14px;font-weight:650;}
.lmMenu--mobile .lmMenu__group:nth-child(3) {grid-column:1/-1;}
.lmRelated {margin:24px 0;padding:18px;background:#fff;border-radius:12px;}
.lmRelated__links {display:flex;flex-wrap:wrap;gap:10px 18px;}
.lmLanding > p,.ttHotNew__intro {line-height:1.6;}
.lmIntro {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px;align-items:center;margin:20px 0 28px;}
.lmIntro h2 {font-size:22px;line-height:1.3;margin:0 0 10px;}
.lmIntro p {font-size:15px;line-height:1.6;margin:0;}
.lmIntro__action {padding-left:20px;border-left:2px solid #f2ce79;}
.lmIntro__action .request-menu-button {width:auto;max-width:100%;white-space:normal;margin-top:14px;padding:12px 28px;}
@media(max-width:767px) {
  .lmIntro {grid-template-columns:minmax(0,1fr);gap:18px;}
  .lmIntro__action {padding-left:0;border-left:0;}
  .lmIntro__action .request-menu-button {width:100%;}
}

.dropdown-menu{
  position:absolute;
  top:100%;
  left:0;
  z-index:1000;
  display:none;
  float:left;
  min-width:160px;
  padding:5px 0;
  margin:2px 0 0;
  font-size:14px;
  text-align:left;
  list-style:none;
  background:#fff;
  background-clip:padding-box;
  border:1px solid rgba(0,0,0,.15);
  border-radius:4px;
  box-shadow:0 6px 12px rgba(0,0,0,.175);
}
.dropdown-menu>li.divider,
.lmMenu .lmMenu__group > ul > li.divider{
  margin:9px 14px;
  overflow:hidden;
  height:0;
  border-top:1px solid #f2ce79;
  border-bottom:1px solid #f9d780;
  background:transparent;
}
.dropdown-menu li>a{padding:0}
  /* ПОЯВЛЕНИЕ при наведении */
.navbar-nav > li.dropdown:hover > .dropdown-menu{
  display: block;                /* показываем */
  opacity: 1;                    /* делаем видимым */
  pointer-events: auto;          /* снова кликабельно */
  transform: translateY(0);      /* возвращаем на место */
}

#tours-menu{width:556px}
#tours-menu li{width:262px;min-height:25px}
#tours-menu .country-menu-divider{
  clear:both;
  float:none;
  width:auto;
  min-height:0;
  margin:10px 0;
  border-color:#c4a45c;
}
#tours-menu .menu-country-show-all{width:100%;min-height:auto}
.country-show-all-decoration{
  height:0;
  margin:4px 14px;
  border-top:1px solid #f2ce79;
  border-bottom:1px solid #f9d780;
  background:transparent;
}
#countries-menu-list{width:462px}
#countries-menu-list>li{width:230px;min-height:25px}

/* =========================
   FILTERS (generic)
========================= */
.flt{border-top:1px solid var(--line);padding-top:12px;margin-top:12px}
.flt__head{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}
.flt__head span{font-weight:500}
.flt__clear{border:0;background:transparent;color:var(--muted);cursor:pointer}
.flt__clear:hover{color:#111827}
.flt__lbl{font-size:12px;color:var(--muted);margin-bottom:6px;display:block}
.flt__two{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.flt__input{
  width:100%;
  padding:10px;
  border-radius:10px;
  border:1px solid var(--line);
  background:#fff;
  color:#111827;
}
.flt__list{display:grid;gap:8px;max-height:220px;overflow:auto;padding-right:6px}
.fltItem{display:flex;justify-content:space-between;align-items:center;gap:10px}
.fltItem label{display:flex;gap:10px;align-items:center;cursor:pointer}
.fltCount{color:var(--muted);font-size:12px}

/* rating radio */
.radioList{display:grid;gap:10px}
.radioItem{display:flex;gap:10px;align-items:center}

/* footer */
.footer{margin-top:48px;background:#183454;color:#d8e3ef}
.footer__wrap{max-width:1200px;margin:0 auto;padding:0 18px}
.footer h2{margin:0;font-size:16px;line-height:1.4;font-weight:700}
.footer p{margin:0;line-height:1.65}
.footer a:focus-visible,.footer button:focus-visible{outline:3px solid #fede85;outline-offset:5px;border-radius:3px}
.footer__benefits{background:#eef3f8;border-top:1px solid #dee6ef;color:#25364f}
.footer__benefitGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px;padding-top:30px;padding-bottom:30px}
.footer__benefit{display:flex;align-items:flex-start;gap:15px}
.footer__benefit svg{flex:0 0 32px;width:32px;height:32px;fill:none;stroke:#305b95;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.footer__benefit p{margin-top:6px;color:#536479;font-size:14px}
.footer__contact{background:#305b95;color:#fff}
.footer__contactGrid{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:30px;padding-top:30px;padding-bottom:30px}
.footer__contact h2{font-size:23px}
.footer__contact p{margin-top:7px;font-size:14px;color:#e0eafa;max-width:480px}
.footer__phone{display:flex;flex-direction:column;gap:5px}
.footer__phone a{color:#fff;font-size:25px;font-weight:750;white-space:nowrap}
.footer__phone a:hover{text-decoration:underline;text-underline-offset:4px}
.footer__phone span{font-size:13px;color:#e0eafa}
.footer__button{display:inline-flex;align-items:center;justify-content:center;gap:18px;min-height:48px;padding:13px 22px;border:0;border-radius:8px;background:#fede85;color:#233650;font:inherit;font-size:15px;font-weight:750;cursor:pointer}
.footer__button:hover{background:#ffdf70}
.footer__button span{font-size:20px;line-height:1}
.footer__main{display:grid;grid-template-columns:1.4fr 1fr 1.1fr 1fr;gap:38px;padding-top:42px;padding-bottom:36px}
.footer__main>*{min-width:0}
.footer__wordmark{display:inline-block;color:#fff;font-size:29px;font-weight:800;letter-spacing:-1px;line-height:1.2}
.footer__wordmark span{color:#fede85}
.footer__wordmark:hover{color:#fff}
.footer__brand .footer__tagline{margin:12px 0;color:#fede85;font-size:13px;font-weight:600}
.footer__brand p{max-width:275px;font-size:14px}
.footer__nav h2{color:#fff;margin-bottom:13px}
.footer__nav ul{list-style:none;margin:0;padding:0}
.footer__nav a{display:inline-block;padding:6px 0;color:#d8e3ef;font-size:14px;line-height:1.45}
.footer__nav a:hover{color:#fede85;text-decoration:underline;text-underline-offset:4px}
.footer__bottom{padding-top:22px;padding-bottom:24px;border-top:1px solid #405771;font-size:13px;color:#bccbdd}
.footer__bottom .footer__copyright{margin-top:16px;color:#d8e3ef}
@media(max-width:1000px){
  .footer__contactGrid{grid-template-columns:minmax(0,1fr) auto;gap:20px}
  .footer__contactGrid>div:first-child{grid-column:1/-1}
  .footer__main{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 40px}
  .footer__benefitGrid{gap:22px}
  .footer__benefit{flex-direction:column;gap:10px}
}
@media(max-width:600px){
  .footer{margin-top:32px}
  .footer__benefitGrid{grid-template-columns:minmax(0,1fr);gap:22px;padding-top:24px;padding-bottom:24px}
  .footer__benefit{flex-direction:row;gap:14px}
  .footer__contactGrid{grid-template-columns:minmax(0,1fr);gap:20px;padding-top:26px;padding-bottom:26px}
  .footer__contact h2{font-size:22px}
  .footer__button{width:100%}
  .footer__main{gap:26px 18px;padding-top:30px;padding-bottom:30px}
  .footer__brand{grid-column:1/-1}
  .footer__brand p{max-width:400px}
  .footer__nav h2{font-size:15px}
  .footer__nav a{padding:9px 0}
  .footer__bottom{padding-top:20px;padding-bottom:22px}
}

/* reusable request banner */
.requestCta{
  width:calc(100% - 28px);max-width:1172px;min-height:88px;margin:32px auto 0;padding:12px 18px;
  display:grid;grid-template-columns:minmax(210px,280px) 1fr auto;align-items:center;gap:22px;
  border:1px solid rgba(48,91,149,.16);border-radius:14px;background:#f3f5fb;
  box-shadow:0 8px 24px rgba(48,91,149,.08);color:#232323;
}
.requestCta__team{display:flex;align-items:center;min-width:0}
.requestCta__team img{display:block;width:100%;height:auto}
.requestCta__text{margin:0;font-size:18px;line-height:1.35;font-weight:750;color:#25364f}
.requestCta__button{
  display:inline-flex;align-items:center;justify-content:center;min-width:224px;min-height:48px;padding:12px 24px;
  border-radius:25px;background:#098ad3;color:#fff;font-weight:800;text-align:center;white-space:nowrap;
  box-shadow:0 5px 14px rgba(9,138,211,.2);transition:background-color .2s ease,transform .2s ease,box-shadow .2s ease;
}
.requestCta__button:hover,.requestCta__button:focus-visible{
  background:#087abd;color:#fff;transform:translateY(-1px);box-shadow:0 7px 18px rgba(9,138,211,.28);
}
@media (max-width:800px){
  .requestCta{grid-template-columns:200px 1fr;gap:10px 18px;padding:14px 16px}
  .requestCta__text{font-size:16px}
  .requestCta__button{grid-column:1/-1;width:100%;min-width:0}
}
@media (max-width:520px){
  .requestCta{grid-template-columns:1fr;margin-top:24px;padding:18px 16px;gap:13px;text-align:center}
  .requestCta__team{width:min(100%,300px);margin:0 auto}
  .requestCta__button{grid-column:auto}
}

/* =========================
   COMMON REQUEST FORM
========================= */
body.requestModalOpen{overflow:hidden}
.requestModal{
  position:fixed;inset:0;z-index:10100;background:#fff;color:#232323;overflow-y:auto;
}
.requestModal[hidden]{display:none}
.requestModal__dialog{position:relative;min-height:100%;padding:54px 20px 44px}
.requestModal__close{
  position:fixed;top:18px;right:22px;z-index:2;width:48px;height:48px;padding:0;
  border:0;background:transparent;color:#232323;font:300 42px/1 Arial,sans-serif;cursor:pointer;
}
.requestModal__close:hover{color:#098ad3}
.requestModal__close:focus-visible{outline:3px solid rgba(9,138,211,.35);outline-offset:2px;border-radius:50%}
.requestModal__content{width:min(100%,440px);margin:0 auto}
.requestModal__logo{display:block;width:240px;max-width:70%;margin:0 auto 24px}
.requestModal__logo img{display:block;width:100%;height:auto}
.requestModal__title{margin:0 0 8px;text-align:center;font-size:28px;color:#305b95}
.requestModal__lead{margin:0 0 22px;text-align:center;color:#667085;line-height:1.45}
.requestForm{display:grid;gap:13px}
.requestForm__field{display:block}
.requestForm__label{display:block;margin:0 0 5px;font-size:13px;font-weight:700;color:#4b5563}
.requestForm__field input,.requestForm__field textarea,.requestForm__field select{
  display:block;width:100%;padding:14px 16px;border:1px solid #cfd3d8;border-radius:11px;
  background:#fff;color:#232323;font:inherit;line-height:1.35;outline:0;resize:vertical;
  transition:border-color .2s ease,box-shadow .2s ease;
}
.requestForm__field input,.requestForm__field select{min-height:52px}
.requestForm__field select{cursor:pointer}
.requestForm__field textarea{min-height:92px}
.requestForm__field input:focus,.requestForm__field textarea:focus,.requestForm__field select:focus{
  border-color:#098ad3;box-shadow:0 0 0 3px rgba(9,138,211,.13);
}
.requestForm__field small{display:none;margin:5px 3px 0;color:#b42318;font-size:12px}
.requestForm__field.is-invalid small{display:block}
.requestForm__field.is-invalid input{border-color:#b42318}
.requestForm__submit{
  width:100%;min-height:50px;margin-top:4px;border:0;border-radius:25px;padding:12px 20px;
  background:#098ad3;color:#fff;font:inherit;font-weight:800;text-transform:uppercase;cursor:pointer;
  box-shadow:0 5px 14px rgba(9,138,211,.2);transition:background-color .2s ease,opacity .2s ease;
}
.requestForm__submit:hover{background:#087abd}
.requestForm__submit:disabled{cursor:wait;opacity:.65}
.requestForm__notice{margin:4px 8px 0;text-align:center;font-size:12px;line-height:1.45;color:#667085}
.requestForm__result{min-height:22px;text-align:center;font-size:14px;font-weight:700}
.requestForm__result.is-success{color:#16723a}
.requestForm__result.is-error{color:#b42318}
@media (max-width:600px){
  .requestModal__dialog{padding:66px 16px 30px}
  .requestModal__close{top:10px;right:10px}
  .requestModal__logo{width:205px;margin-bottom:18px}
  .requestModal__title{font-size:24px}
  .requestModal__lead{font-size:14px}
}

/* =========================
   CUSTOMER ACCOUNT
========================= */
body.accountModalOpen{overflow:hidden}
.accountModal{position:fixed;inset:0;z-index:10120;display:grid;place-items:center;padding:22px;color:#303033}
.accountModal[hidden]{display:none}
.accountModal__backdrop{position:absolute;inset:0;background:rgba(20,24,31,.7)}
.accountModal__dialog{
  position:relative;z-index:1;width:min(100%,520px);max-height:calc(100vh - 44px);overflow-y:auto;
  padding:42px 38px 34px;border-radius:17px;background:#fff;box-shadow:0 28px 80px rgba(0,0,0,.3);
}
.accountModal__close{
  position:absolute;top:13px;right:15px;width:40px;height:40px;padding:0;border:0;background:transparent;
  color:#d8450b;font:300 35px/1 Arial,sans-serif;cursor:pointer;
}
.accountModal__close:hover{color:#a83208}
.accountModal__close:focus-visible{outline:3px solid rgba(216,69,11,.25);border-radius:50%}
.accountModal__title{max-width:390px;margin:10px 0 22px;font-size:34px;line-height:1.14;color:#303033}
.accountModal__step{margin:0 0 5px;text-align:center;color:#305b95;font-weight:800}
.accountModal__step+.accountModal__title{text-align:center;max-width:none;margin-top:0}
.accountModal__lead{margin:-9px 0 22px;color:#626b78;line-height:1.5}
.accountModal__switch{margin:24px 0 0;text-align:center;line-height:1.45}
.accountModal__switch button,.accountForm__link{
  padding:0;border:0;border-bottom:1px solid currentColor;background:transparent;color:#3f4144;font:inherit;cursor:pointer;
}
.accountModal__switch button:hover,.accountForm__link:hover{color:#d8450b}
.accountModal__mailStatus{margin:0 0 18px;padding:11px 13px;border-radius:10px;background:#fff7ed;color:#9a3412;font-size:14px}

body.favoritesSearchGateOpen{overflow:hidden}
.favoritesSearchGate{position:fixed;inset:0;z-index:10110;display:grid;place-items:center;padding:22px;color:#1f2937}
.favoritesSearchGate[hidden]{display:none}
.favoritesSearchGate__backdrop{position:absolute;inset:0;background:rgba(20,24,31,.7)}
.favoritesSearchGate__dialog{
  position:relative;z-index:1;width:min(100%,470px);padding:38px 34px 32px;border-radius:17px;
  background:#fff;box-shadow:0 28px 80px rgba(0,0,0,.3);text-align:center;
}
.favoritesSearchGate__close{
  position:absolute;top:10px;right:12px;width:40px;height:40px;padding:0;border:0;background:transparent;
  color:#305b95;font:300 33px/1 Arial,sans-serif;cursor:pointer;
}
.favoritesSearchGate__heart{
  width:58px;height:58px;margin:0 auto 14px;display:grid;place-items:center;border-radius:50%;
  background:#fff3c4;color:#e53935;font-size:34px;line-height:1;
}
.favoritesSearchGate h2{margin:0 0 11px;color:#305b95;font-size:29px}
.favoritesSearchGate p{margin:0 auto 24px;max-width:390px;color:#626b78;line-height:1.5}
.favoritesSearchGate__actions{display:grid;grid-template-columns:1fr 1fr;gap:11px}
.favoritesSearchGate__actions[hidden]{display:none}
.favoritesSearchGate__primary,.favoritesSearchGate__secondary{
  min-height:49px;display:flex;align-items:center;justify-content:center;padding:11px 15px;border-radius:10px;
  font:inherit;font-weight:800;text-decoration:none;cursor:pointer;
}
.favoritesSearchGate__primary{border:1px solid #305b95;background:#305b95;color:#fff}
.favoritesSearchGate__primary:hover{background:#244873;color:#fff}
.favoritesSearchGate__secondary{border:1px solid #305b95;background:#fff;color:#305b95}
.favoritesSearchGate__secondary:hover{background:#eef4ff}
@media (max-width:520px){
  .favoritesSearchGate__dialog{padding:35px 19px 24px}
  .favoritesSearchGate__actions{grid-template-columns:1fr}
}
.accountForm{display:grid;gap:16px}
.accountForm__field{display:grid;gap:6px;font-weight:650}
.accountForm__field>span:first-child{font-size:15px}
.accountForm__field b,.accountCheck b{color:#d8450b}
.accountForm__field em{color:#747b85;font-size:12px;font-style:normal;font-weight:500}
.accountForm__field input{
  width:100%;min-height:51px;padding:12px 15px;border:1px solid #9da3aa;border-radius:10px;
  background:#fff;color:#303033;font:inherit;font-weight:400;outline:0;
}
.accountForm__field input:focus{border-color:#305b95;box-shadow:0 0 0 3px rgba(48,91,149,.13)}
.accountForm__password{position:relative;display:block}
.accountForm__password input{padding-right:82px}
.accountForm__password button{
  position:absolute;top:50%;right:12px;transform:translateY(-50%);padding:7px;border:0;background:transparent;
  color:#303033;font:inherit;font-weight:650;cursor:pointer;
}
.accountForm__link--left{justify-self:start;margin-top:-3px}
.accountForm__optional{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.accountCheck{display:flex;align-items:flex-start;gap:9px;font-size:14px;line-height:1.38;cursor:pointer}
.accountCheck input{width:18px;height:18px;margin:1px 0 0;accent-color:#305b95;flex:0 0 auto}
.accountCheck--remember{align-items:center;margin-top:-4px;color:#4b5563}
.accountCheck--remember input{margin-top:0}
.accountForm__submit,.accountForm__secondary{
  width:100%;min-height:51px;padding:12px 20px;border-radius:10px;font:inherit;font-weight:800;cursor:pointer;
}
.accountForm__submit{border:1px solid #303033;background:#fff;color:#303033}
.accountForm__submit:hover{background:#305b95;border-color:#305b95;color:#fff}
.accountForm__secondary{border:1px solid #305b95;background:#305b95;color:#fff}
.accountForm__secondary:hover{background:#244873}
.accountForm__submit:disabled,.accountForm__secondary:disabled{opacity:.58;cursor:wait}
.accountForm__result{display:none;padding:10px 12px;border-radius:9px;font-size:14px;line-height:1.4}
.accountForm__result.is-error,.accountForm__result.is-success{display:block}
.accountForm__result.is-error{background:#fff1f0;color:#b42318}
.accountForm__result.is-success{background:#ecfdf3;color:#16723a}
.accountStrength{display:grid;gap:7px;margin-top:-7px;font-size:13px}
.accountStrength small{color:#667085}
.accountStrength__bars{display:grid;grid-template-columns:repeat(5,1fr);gap:9px}
.accountStrength__bars i{height:6px;border-radius:5px;background:#c9cdd2}
.accountStrength[data-score="1"] .accountStrength__bars i:nth-child(-n+1),
.accountStrength[data-score="2"] .accountStrength__bars i:nth-child(-n+2){background:#dc2626}
.accountStrength[data-score="3"] .accountStrength__bars i:nth-child(-n+3){background:#f59e0b}
.accountStrength[data-score="4"] .accountStrength__bars i:nth-child(-n+4),
.accountStrength[data-score="5"] .accountStrength__bars i:nth-child(-n+5){background:#16a34a}

.accountActionPage{min-height:54vh;padding:54px 18px;display:grid;place-items:start center}
.accountActionCard{
  width:min(100%,560px);padding:34px;border:1px solid rgba(17,24,39,.1);border-radius:17px;background:#fff;
  box-shadow:0 14px 42px rgba(48,91,149,.1);text-align:center;
}
.accountActionCard h1{margin:0 0 13px;color:#305b95;font-size:30px}
.accountActionCard__status{margin:0;color:#5e6672;line-height:1.55}
.accountActionCard__status.is-error{color:#b42318}
.accountActionCard__status.is-success{color:#16723a}
.accountActionCard__note{margin-top:18px;padding-top:18px;border-top:1px solid rgba(17,24,39,.1);font-size:14px}
.accountActionCard__link{display:none;margin-top:22px;color:#305b95;font-weight:800;text-decoration:underline}
.accountActionCard__link.is-visible{display:inline-block}
.accountActionCard .accountForm{margin-top:22px;text-align:left}

.managerPage{max-width:1200px;margin:36px auto;padding:0 20px;color:#243b5a}
.managerPage h1{font-size:30px}.managerPage a{color:#305b95;text-decoration:underline}
.managerPage__card{margin:24px 0;padding:24px;background:#fff;border:1px solid #d0d9e5;border-radius:14px}
.managerPage__card h2{margin:0 0 12px;font-size:22px}
.managerPage__card p{line-height:1.5}
.managerPage__success,.managerPage__error{padding:15px;border-radius:10px;background:#eaf8ef;color:#176c35}
.managerPage__error{background:#fff0ed;color:#ac2e21}
.managerForm{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:end;gap:16px;margin-top:20px}
.managerForm label{display:flex;flex-direction:column;gap:7px;font-weight:600}
.managerForm input,.managerForm select{width:100%;box-sizing:border-box;padding:12px;border:1px solid #b7c3d2;border-radius:8px;font:inherit;background:#fff;color:#243b5a}
.managerForm input:focus,.managerForm select:focus{outline:2px solid #305b95;outline-offset:2px}
.managerForm__submit{grid-column:1/-1}
.managerForm label.managerForm__guestConfirm{grid-column:1/-1;flex-direction:row;align-items:flex-start;padding:14px;border-radius:8px;background:#fff7df;font-size:14px;line-height:1.5}
.managerForm__guestConfirm input{width:18px;height:18px;flex:0 0 18px;margin-top:2px}
.managerPage__requestSource{margin:16px 0;padding:18px;border:1px solid #d0d9e5;border-radius:10px;background:#f5f8fc}
.managerPage__requestSource h3{margin-top:0}.managerPage__requestComment{white-space:pre-wrap;overflow-wrap:anywhere}
.managerRequestTabs{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0}
.managerRequestTabs a{padding:10px 14px;border:1px solid #d0d9e5;border-radius:8px;text-decoration:none}
.managerRequestTabs a[aria-current="page"]{background:#305b95;color:#fff;border-color:#305b95;font-weight:700}
.managerHistory{margin:16px 0;padding:15px;border:1px solid #d0d9e5;border-radius:10px;background:#f9fbfe}
.managerHistory summary{cursor:pointer;line-height:1.6;color:#243b5a;overflow-wrap:anywhere}
.managerHistory summary>span{display:block;margin-top:5px;color:#727b87;font-size:13px}
.managerHistory td{white-space:pre-wrap;min-width:140px}.managerHistory th{min-width:120px}
.managerForm button{padding:13px 24px;border:0;border-radius:8px;background:#305b95;color:#fff;font:inherit;font-weight:700;cursor:pointer}
.managerPage__table{overflow-x:auto;margin:15px 0}.managerPage table{width:100%;border-collapse:collapse;font-size:14px}
.managerPage th,.managerPage td{text-align:left;vertical-align:top;padding:12px;border-bottom:1px solid #d0d9e5;line-height:1.6;overflow-wrap:anywhere}
#zgloszenia table{table-layout:fixed;min-width:960px}
#zgloszenia th:nth-child(1){width:24%}
#zgloszenia th:nth-child(2){width:46%}
#zgloszenia th:nth-child(3){width:13%}
#zgloszenia th:nth-child(4){width:17%}
#zgloszenia th,#zgloszenia td{overflow-wrap:break-word;word-break:normal}
@media(max-width:600px){.managerForm{grid-template-columns:1fr}.managerPage__card{padding:16px}.managerPage{padding:0 12px}}
.loyaltyMedal{--metal:#c1844c;--metal-light:#f7d8b7;--metal-dark:#8b542a;display:block;width:48px;height:56px;flex:0 0 48px;filter:drop-shadow(0 3px 3px rgba(30,40,55,.12))}
.loyaltyMedal--silver{--metal:#aab8c9;--metal-light:#eef3f9;--metal-dark:#61758c}
.loyaltyMedal--gold{--metal:#e7b537;--metal-light:#fff1af;--metal-dark:#a97912}
.loyaltyMedal__ribbon,.loyaltyMedal__star{fill:var(--metal-dark)}
.loyaltyMedal__edge{fill:var(--metal);stroke:var(--metal-dark);stroke-width:1}
.loyaltyMedal__face{fill:var(--metal-light);stroke:var(--metal);stroke-width:1.5}
.loyaltyMedal__shine{stroke:#fff;opacity:.8}
.accountLoyaltyBadge{display:flex;flex-direction:column;gap:14px;margin:18px 16px 8px;padding:18px;border-radius:12px;border:1px solid #dcc5ae;background:linear-gradient(135deg,#fffaf3,#f8ead9);color:#76512d;text-decoration:none;line-height:1.4}
.accountLoyaltyBadge--silver{border-color:#ccd4df;background:#f3f6fa;color:#53637a}
.accountLoyaltyBadge--gold{border-color:#e1c359;background:#fff7d8;color:#856313}
.accountLoyaltyBadge__head{display:flex;align-items:center;gap:12px}
.accountLoyaltyBadge__head>div{display:flex;flex-direction:column;gap:3px;min-width:0}
.accountLoyaltyBadge__head small{font-size:12px;opacity:.85}.accountLoyaltyBadge__head strong{font-size:20px}
.accountLoyaltyBadge__rate{margin:0;font-size:13px}
.accountLoyaltyBadge__balance{display:flex;flex-direction:column;gap:5px;padding-top:13px;border-top:1px solid rgba(90,70,40,.15)}
.accountLoyaltyBadge__balance>span{font-size:12px}.accountLoyaltyBadge__balance strong{font-size:26px;line-height:1.2}.accountLoyaltyBadge__balance small{font-size:14px;font-weight:500}
.accountLoyaltyBadge__link{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:13px;font-weight:650}.accountLoyaltyBadge__link b{font-size:22px;line-height:1}
.accountLoyaltyBadge:hover{box-shadow:0 4px 14px rgba(48,60,80,.1)}
.accountLoyalty__summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:28px 0}
.accountLoyalty__summary>div{min-width:0;display:flex;flex-direction:column;justify-content:space-between;gap:18px;padding:20px;border-radius:12px;background:#f5f8fc;border:1px solid #dce4ef}
.accountLoyalty__summary>div>span{font-size:13px;color:#727b87;line-height:1.4}.accountLoyalty__summary strong{font-size:22px;color:#243b5a;overflow-wrap:anywhere;line-height:1.35}
.accountLoyalty__summary strong>small{font-size:12px;font-weight:500;color:#727b87}
.accountLoyalty__level{display:flex;align-items:center;gap:12px}.accountLoyalty__level strong{font-size:18px}.accountLoyalty__level strong>small{display:block;margin-top:5px}
.accountLoyalty__tiers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:20px 0 24px}
.accountLoyalty__tier{display:flex;align-items:center;flex-direction:column;gap:10px;padding:18px 10px;border:1px solid #e0e6ed;border-radius:12px;background:#fbfcfe;text-align:center}
.accountLoyalty__tier strong{font-size:16px}.accountLoyalty__tier strong b{margin-left:5px}.accountLoyalty__tier small{font-size:12px;color:#727b87;line-height:1.5}
.accountLoyalty__tier.is-current{border-color:#305b95;background:#f0f5fc}.accountLoyalty__tier>span{padding:3px 9px;border-radius:20px;background:#305b95;color:#fff;font-size:11px;font-weight:600}
.accountLoyalty__rules{padding:20px;border:1px solid #d0d9e5;border-radius:12px;margin:24px 0;line-height:1.6}
.accountLoyalty__rules h2{margin-top:0}.accountLoyalty__rules ul{padding-left:22px}.accountLoyalty__rules li{margin:8px 0}
.accountLoyalty__transaction{display:flex;align-items:center;justify-content:space-between;gap:18px}
.accountLoyalty__transaction p,.accountOrderCard__loyalty{font-size:14px;color:#727b87;margin-bottom:0}
@media(max-width:1100px){.accountLoyalty__summary{grid-template-columns:1fr}.accountLoyalty__summary>div{gap:12px}}
@media(max-width:700px){.accountLoyalty__tiers{grid-template-columns:1fr}.accountLoyalty__transaction{align-items:flex-start;flex-direction:column}}
.accountOrders__group{margin-top:28px}
.accountOrders__group>h2{display:flex;align-items:center;gap:10px;margin:0 0 12px;font-size:22px;color:#243b5a}
.accountOrders__group>h2 small{padding:3px 9px;border-radius:20px;background:#eef4ff;color:#305b95;font-size:13px}
.accountOrders__hint{margin:0 0 15px;color:#727b87;font-size:14px;line-height:1.5}
.accountOrders__empty{padding:24px;border:1px dashed #d0d9e5;border-radius:12px;background:#f9fbfe;color:#727b87}
.accountOrders__empty p{margin:0 0 10px}
.accountOrders__empty a{color:#305b95;font-weight:700}
.accountOrderCard{margin-top:14px;padding:20px;border:1px solid #dce3ec;border-radius:13px;background:#fff}
.accountOrderCard__head{display:flex;align-items:center;justify-content:space-between;gap:12px;color:#727b87;font-size:13px}
.accountOrderCard__status{padding:5px 10px;border-radius:20px;background:#eef4ff;color:#305b95;font-weight:700;white-space:nowrap}
.accountOrderCard__status--paid,.accountOrderCard__status--completed{background:#ecfdf3;color:#16723a}
.accountOrderCard__status--cancelled{background:#fff1f0;color:#b42318}
.accountOrderCard__status--closed{background:#f1f3f5;color:#667085}
.accountOrderCard h3{margin:14px 0 4px;color:#243b5a;font-size:21px;overflow-wrap:anywhere}
.accountOrderCard__location{margin:0;color:#727b87;font-size:14px}
.accountOrderCard__facts{display:grid;grid-template-columns:1fr 1fr;gap:14px 20px;margin:18px 0}
.accountOrderCard__facts>div{min-width:0}
.accountOrderCard__facts dt{color:#727b87;font-size:12px}
.accountOrderCard__facts dd{margin:3px 0 0;color:#243b5a;font-size:14px;overflow-wrap:anywhere}
.accountOrderCard__price{display:flex;justify-content:space-between;align-items:center;gap:12px;padding-top:14px;border-top:1px solid #e8edf3;font-size:14px;color:#727b87}
.accountOrderCard__price strong{color:#243b5a;font-size:21px;white-space:nowrap}
.accountOrderCard__refund{margin:10px 0 0;text-align:right;font-size:13px;color:#727b87}
.accountOrders__pagination{display:flex;align-items:center;justify-content:center;gap:16px;flex-wrap:wrap;margin-top:18px;font-size:14px}
.accountOrders__pagination a{padding:7px 12px;border:1px solid #d0d9e5;border-radius:8px;color:#305b95;font-weight:700}
.accountOrders__pagination span{color:#727b87}
@media(max-width:600px){
  .accountOrderCard{padding:16px}
  .accountOrderCard__head{align-items:flex-start;flex-wrap:wrap}
  .accountOrderCard__facts{grid-template-columns:1fr}
  .accountOrderCard__price{align-items:flex-start;flex-direction:column;gap:5px}
  .accountOrderCard__refund{text-align:left}
}

.accountPage{min-height:62vh;padding:42px 18px 64px;background:#f7f8fa}
.accountPage__wrap{width:min(100%,1200px);margin:0 auto;display:grid;grid-template-columns:285px minmax(0,1fr);gap:34px;align-items:start}
.accountSidebar,.accountContent{border:1px solid rgba(17,24,39,.09);border-radius:16px;background:#fff;box-shadow:0 10px 28px rgba(48,91,149,.07)}
.accountSidebar{overflow:hidden}
.accountSidebar__identity{display:flex;align-items:center;gap:12px;padding:22px 20px;border-bottom:1px solid rgba(17,24,39,.09)}
.accountSidebar__identity>div{min-width:0;display:grid;gap:2px}
.accountSidebar__identity strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#243b5a}
.accountSidebar__identity small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#727b87}
.accountSidebar__avatar{width:42px;height:42px;flex:0 0 42px;display:grid;place-items:center;border-radius:50%;background:#fff3c4;color:#b98500}
.accountSidebar__avatar svg{width:27px;height:27px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round}
.accountNav{display:grid;padding:10px 0}
.accountNav__item{min-height:58px;padding:12px 17px;display:grid;grid-template-columns:25px minmax(0,1fr) auto;align-items:center;gap:10px;border-left:3px solid transparent;color:#344054}
.accountNav__item svg,.accountSidebar__logout svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.accountNav__item b{font-size:26px;font-weight:400}
.accountNav__item small{padding:3px 6px;border-radius:8px;background:#f1f3f5;color:#78818d;font-size:10px;white-space:nowrap}
.accountNav__item.is-active{border-left-color:#305b95;background:#eaf1fa;color:#234d83;font-weight:800}
.accountNav__item.is-planned{color:#7b8490;cursor:default}
.accountUnreadBadge{display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;min-width:18px;height:18px;padding:0 5px;margin-left:6px;border-radius:20px;background:#d92d20;color:#fff;font-size:11px;font-weight:700;line-height:1;vertical-align:top;transform:translateY(-3px)}
.accountSidebar__logout{width:100%;min-height:58px;padding:13px 20px;display:flex;align-items:center;gap:11px;border:0;border-top:1px solid rgba(17,24,39,.09);background:#fff;color:#9b2c24;font:inherit;font-weight:750;cursor:pointer}
.accountSidebar__logout:hover{background:#fff6f5}
.accountSidebar__logout:disabled{opacity:.55;cursor:wait}
.accountContent{padding:34px 38px 40px}
.accountContent__eyebrow{margin:0 0 3px;color:#b27d00;font-size:13px;font-weight:850;text-transform:uppercase;letter-spacing:.08em}
.accountContent h1{margin:0 0 10px;color:#243b5a;font-size:34px}
.accountContent__lead{max-width:680px;margin:0 0 30px;color:#667085;line-height:1.55}
.accountProfileForm{padding-top:26px;border-top:1px solid rgba(17,24,39,.09)}
.accountProfileForm__grid{display:grid;grid-template-columns:1fr 1fr;gap:22px 20px}
.accountProfileForm__field{display:grid;gap:7px;color:#344054;font-weight:700}
.accountProfileForm__field span{font-size:14px}
.accountProfileForm__field em{color:#7b8490;font-size:11px;font-style:normal;font-weight:500}
.accountProfileForm__field input{width:100%;min-height:52px;padding:12px 14px;border:1px solid #c8cdd3;border-radius:9px;background:#fff;color:#25282c;font:inherit;outline:0}
.accountProfileForm__field input:focus{border-color:#305b95;box-shadow:0 0 0 3px rgba(48,91,149,.12)}
.accountProfileForm__field input[readonly]{background:#f3f4f6;color:#69717c;cursor:not-allowed}
.accountProfileForm__field small{color:#7b8490;font-size:11px;font-weight:400}
.accountProfileForm__field--email{grid-column:1/-1;max-width:calc(50% - 10px)}
.accountProfileForm__result{display:none;margin-top:20px;padding:11px 13px;border-radius:9px;font-size:14px;font-weight:650}
.accountProfileForm__result.is-success,.accountProfileForm__result.is-error{display:block}
.accountProfileForm__result.is-success{background:#ecfdf3;color:#16723a}
.accountProfileForm__result.is-error{background:#fff1f0;color:#b42318}
.accountProfileForm__submit{min-width:190px;min-height:50px;margin-top:24px;padding:12px 22px;border:0;border-radius:9px;background:#305b95;color:#fff;font:inherit;font-weight:800;cursor:pointer}
.accountProfileForm__submit:hover{background:#244873}
.accountProfileForm__submit:disabled{opacity:.58;cursor:wait}
.accountContent--favorites{min-width:0}
.accountFavorites__heading{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;padding-bottom:24px;border-bottom:1px solid rgba(17,24,39,.09)}
.accountFavorites__heading .accountContent__lead{margin-bottom:0}
.accountFavorites__limit{flex:0 0 auto;padding:9px 13px;border-radius:10px;background:#fff3c4;color:#8a6300;font-size:15px;white-space:nowrap}
.accountFavorites__result{display:none;margin:20px 0 0;padding:11px 13px;border-radius:9px;font-size:14px;font-weight:650}
.accountFavorites__result.is-success,.accountFavorites__result.is-error{display:block}
.accountFavorites__result.is-success{background:#ecfdf3;color:#16723a}
.accountFavorites__result.is-error{background:#fff1f0;color:#b42318}
.accountFavorites__empty{padding:48px 20px 24px;text-align:center;color:#667085}
.accountFavorites__empty[hidden]{display:none}
.accountFavorites__empty>span{width:64px;height:64px;margin:0 auto 14px;display:grid;place-items:center;border-radius:50%;background:#fff3c4;color:#c99200;font-size:42px;line-height:1}
.accountFavorites__empty h2{margin:0 0 8px;color:#243b5a;font-size:22px}
.accountFavorites__empty p{margin:0 auto 18px;max-width:520px;line-height:1.5}
.accountFavorites__empty a{display:inline-flex;min-height:44px;align-items:center;padding:9px 18px;border-radius:9px;background:#305b95;color:#fff;font-weight:800}
.accountFavorites__list{display:grid;gap:16px;padding-top:22px}
.accountFavoriteCard{display:grid;grid-template-columns:52px minmax(0,1fr);gap:16px;padding:20px;border:1px solid #dde2e8;border-radius:13px;background:#fff;transition:border-color .18s ease,box-shadow .18s ease,opacity .18s ease}
.accountFavoriteCard:hover{border-color:#bdc9d8;box-shadow:0 8px 22px rgba(48,91,149,.08)}
.accountFavoriteCard.is-busy{opacity:.65}
.accountFavoriteCard__heart{width:46px;height:46px;display:grid;place-items:center;border-radius:50%;background:#fff0ef;color:#e53935}
.accountFavoriteCard__heart svg{width:27px;height:27px}
.accountFavoriteCard__heart path{fill:currentColor;stroke:#cf2f2b;stroke-width:.7;stroke-linejoin:round}
.accountFavoriteCard__body{min-width:0}
.accountFavoriteCard__top{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}
.accountFavoriteCard__top h2{margin:0 0 5px;font-size:21px;line-height:1.25}
.accountFavoriteCard__top h2 a{color:#243b5a}
.accountFavoriteCard__top h2 a:hover{color:#305b95;text-decoration:underline}
.accountFavoriteCard__top p{margin:0;color:#667085;font-size:14px}
.accountFavoriteCard__facts{min-height:20px;margin-top:7px;display:flex;align-items:center;flex-wrap:wrap;gap:7px 12px;color:#667085;font-size:12px}
.accountFavoriteCard__stars{color:#e7ad00;letter-spacing:1px}
.accountFavoriteCard__open{flex:0 0 auto;padding:7px 0;color:#305b95;font-size:13px;font-weight:800;white-space:nowrap}
.accountFavoriteCard__open span{font-size:20px;vertical-align:-1px}
.accountFavoriteCard__note{display:grid;gap:7px;margin-top:16px}
.accountFavoriteCard__note>span{display:flex;justify-content:space-between;gap:12px;color:#344054;font-size:13px;font-weight:750}
.accountFavoriteCard__note small{color:#7b8490;font-weight:500}
.accountFavoriteCard__note textarea{width:100%;min-height:68px;resize:vertical;padding:10px 12px;border:1px solid #c8cdd3;border-radius:9px;background:#fbfcfd;color:#25282c;font:inherit;font-size:14px;line-height:1.45;outline:0}
.accountFavoriteCard__note textarea:focus{border-color:#305b95;background:#fff;box-shadow:0 0 0 3px rgba(48,91,149,.1)}
.accountFavoriteCard__actions{min-height:36px;margin-top:10px;display:flex;align-items:center;flex-wrap:wrap;gap:9px 14px}
.accountFavoriteCard__actions button{min-height:36px;padding:7px 13px;border:1px solid #305b95;border-radius:8px;background:#305b95;color:#fff;font:inherit;font-size:12px;font-weight:800;cursor:pointer}
.accountFavoriteCard__actions button:hover{background:#244873;border-color:#244873}
.accountFavoriteCard__actions button:disabled{cursor:wait}
.accountFavoriteCard__actions .accountFavoriteCard__remove{border-color:#d7dce2;background:#fff;color:#a62a22}
.accountFavoriteCard__actions .accountFavoriteCard__remove:hover{border-color:#e5a8a3;background:#fff6f5}
.accountFavoriteCard__actions [data-favorite-card-status]{font-size:12px;font-weight:700}
.accountFavoriteCard__actions [data-favorite-card-status].is-success{color:#16723a}
.accountFavoriteCard__actions [data-favorite-card-status].is-error{color:#b42318}

@media (max-width:900px){
  .accountPage__wrap{grid-template-columns:1fr;gap:20px}
  .accountSidebar__identity{padding:17px 18px}
  .accountNav{grid-template-columns:1fr 1fr;padding:0}
  .accountNav__item{border-left:0;border-bottom:1px solid rgba(17,24,39,.08)}
  .accountNav__item.is-active{border-left:0;border-bottom:3px solid #305b95}
}

@media (max-width:767px){.accountAccess--desktop{display:none}}
@media (max-width:560px){
  .accountModal{padding:0;place-items:stretch}
  .accountModal__dialog{width:100%;max-height:100vh;min-height:100vh;border-radius:0;padding:48px 22px 30px}
  .accountModal__title{font-size:29px}
  .accountForm__optional{grid-template-columns:1fr}
  .accountActionPage{padding:28px 12px}
  .accountActionCard{padding:26px 20px}
  .accountActionCard h1{font-size:25px}
  .accountPage{padding:18px 10px 38px}
  .accountNav{grid-template-columns:1fr}
  .accountNav__item{min-height:52px}
  .accountContent{padding:25px 18px 30px}
  .accountContent h1{font-size:29px}
  .accountProfileForm__grid{grid-template-columns:1fr}
  .accountProfileForm__field--email{grid-column:auto;max-width:none}
  .accountProfileForm__submit{width:100%}
  .accountFavorites__heading{gap:12px}
  .accountFavoriteCard{grid-template-columns:42px minmax(0,1fr);gap:12px;padding:16px}
  .accountFavoriteCard__heart{width:40px;height:40px}
  .accountFavoriteCard__heart svg{width:23px;height:23px}
  .accountFavoriteCard__top{display:block}
  .accountFavoriteCard__open{display:inline-flex;margin-top:7px;padding:2px 0}
  .accountFavoriteCard__actions{align-items:stretch}
  .accountFavoriteCard__actions button{flex:1 1 160px}
  .accountFavoriteCard__actions [data-favorite-card-status]{flex-basis:100%}
}

/* pagination */
.pagination{
  display:flex;
  gap:8px;
  align-items:center;
  justify-content:center;
  margin:18px 0 6px;
  flex-wrap:wrap;
}
.pgBtn{
  border:1px solid var(--line);
  background:#fff;
  color:#111827;
  border-radius:10px;
  padding:10px 12px;
  font-weight:950;
  cursor:pointer;
  min-width:44px;
}
.pgBtn:hover{background:var(--soft)}
.pgBtn:disabled{opacity:.5;cursor:not-allowed}
.pgBtn.active{border-color:var(--blue);background:#eef4ff}
.pgDots{color:var(--muted);font-weight:950;padding:0 6px}

/* =========================
   RESULTS PAGE
========================= */
.resultsWrap{max-width:1260px;margin:0 auto;padding:18px 14px}
.resultsGrid{
  display:grid;
  grid-template-columns:340px minmax(0,1fr);
  gap:16px;
  align-items:start;
}
.filters{
  position:sticky;
  top:14px;
  z-index:40;
  border:1px solid #dbe2ea;
  border-radius:10px;
  background:#fff;
  padding:12px;
  max-height: calc(100vh - 76px); 
  overflow: auto;                
  overscroll-behavior: contain;
  box-shadow:0 3px 12px rgba(15,23,42,.035);
  scrollbar-width:thin;
  scrollbar-color:#cbd5e1 transparent;
}
body.tt-nav-is-fixed .filters{
  top:62px;
  /*max-height:calc(100vh - 76px);*/
}
.sidebarSearch{margin-bottom:10px}
.filters__title{
  margin:0;
  padding:2px 2px 9px;
  border-bottom:1px solid #d9e6f2;
  color:#17175c;
  font-size:17px;
  line-height:1.15;
  font-weight:800;
}
.resultsFiltersPanel .flt{
  margin-top:12px;
  padding-top:0;
  border-top:0;
}
.resultsFiltersPanel .flt__head{
  margin-bottom:5px;
  padding:0 0 6px;
  border-bottom:1px solid #d9e6f2;
}
.resultsFiltersPanel .flt__head > span{
  color:#17175c;
  font-size:14px;
  line-height:1.2;
  font-weight:800;
}
.resultsFiltersPanel .flt__clear{
  padding:2px 0;
  color:#2563eb;
  font-size:11px;
  line-height:1.2;
  font-weight:700;
}
.resultsFiltersPanel .flt__clear:hover{
  color:#174ea6;
  text-decoration:underline;
  text-underline-offset:2px;
}
.resultsFiltersPanel .flt__input{
  height:36px;
  padding:7px 10px;
  border-color:#d5dce5;
  border-radius:7px;
  font-size:13.5px;
  outline:0;
}
.resultsFiltersPanel .flt__input:focus{
  border-color:#4f88b9;
  box-shadow:0 0 0 3px rgba(79,136,185,.13);
}
.resultsFiltersPanel .flt__list{
  gap:0;
  max-height:none;
  overflow:visible;
  padding-right:0;
}
.resultsFiltersPanel .fltItem,
.resultsFiltersPanel .radioItem{
  min-height:30px;
  margin:0;
  padding:3px 1px;
  color:#25245f;
  font-size:13.5px;
  line-height:1.2;
}
.resultsFiltersPanel .fltItem__label,
.resultsFiltersPanel .fltItem__main,
.resultsFiltersPanel .fltItem label,
.resultsFiltersPanel .radioItem{
  display:flex;
  align-items:center;
  gap:9px;
}
.resultsFiltersPanel .fltItem__label{
  justify-content:space-between;
  width:100%;
  cursor:pointer;
}
.resultsFiltersPanel .fltItem label,
.resultsFiltersPanel .radioItem{
  cursor:pointer;
}
.resultsFiltersPanel .radioList{gap:0}
.resultsFiltersPanel input[type="checkbox"],
.resultsFiltersPanel input[type="radio"]{
  appearance:none;
  -webkit-appearance:none;
  position:relative;
  flex:0 0 18px;
  width:18px;
  height:18px;
  margin:0;
  border:1px solid #b8c0ca;
  background:#fff;
  cursor:pointer;
  transition:border-color .15s ease,background-color .15s ease,box-shadow .15s ease;
}
.resultsFiltersPanel input[type="checkbox"]{border-radius:3px}
.resultsFiltersPanel input[type="radio"]{border-radius:50%}
.resultsFiltersPanel label:hover input{border-color:#6f9bc4}
.resultsFiltersPanel input:checked{
  border-color:#4f88b9;
  background:#4f88b9;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.2);
}
.resultsFiltersPanel input[type="checkbox"]:checked::after{
  content:"";
  position:absolute;
  left:5px;
  top:2px;
  width:5px;
  height:9px;
  border:solid #fff;
  border-width:0 2px 2px 0;
  transform:rotate(45deg);
}
.resultsFiltersPanel input[type="radio"]:checked::after{
  content:"";
  position:absolute;
  inset:5px;
  border-radius:50%;
  background:#fff;
}
.resultsFiltersPanel input:focus-visible{
  outline:3px solid rgba(37,99,235,.22);
  outline-offset:2px;
}
.resultsFiltersPanel .fltCount{
  color:#7b8798;
  font-size:11px;
}

/* right head */
.resultsCacheIndicator{
  display:inline-block;
  width:8px;
  height:8px;
  margin:0 6px;
  border-radius:50%;
  background:#22a447;
  vertical-align:middle;
}

.rightCol__head{
  display:flex;
  justify-content:flex-end;
  align-items:center;
  margin-bottom:12px;
  gap:12px;
  flex-wrap:wrap;
}
.rightCol{
  position:relative;
  z-index:1;
}
.filters .sidebarSearch{
  position:relative;
  z-index:50;
}
.filters .sidebarSearch .SearchBlock_fieldsOutlineContainer__JN44L{
  z-index:60;
}
.filters .sidebarSearch .DefaultField_container__zFkF9.is-open{
  z-index:70;
}
.resultsFiltersToggle{display:none}
.resultsFiltersPanel{display:block}
.rightCol__title{font-weight:950;font-size:20px}
.rightCol__muted{color:var(--muted);font-size:12px}
.sortBox{display:flex;align-items:center;gap:10px}
.sortBox__label{font-weight:900;color:#111827}
.sortBox__select{
  padding:10px 12px;
  border-radius:10px;
  border:1px solid var(--line);
  background:#fff;
  font-weight:900;
  color:#111827;
}
.resultsViewSwitch{display:inline-flex;align-items:center;gap:6px}
.resultsViewButton{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:48px;
  height:48px;
  padding:0;
  border:1px solid transparent;
  border-radius:8px;
  background:#f1f5f9;
  color:#111827;
  cursor:pointer;
  transition:background-color .15s ease,border-color .15s ease,color .15s ease;
}
.resultsViewButton:hover{background:#e5ebf2}
.resultsViewButton.is-active{border-color:#cbd5e1;background:#e2e8f0;color:#111827}
.resultsViewButton:focus-visible{outline:3px solid rgba(37,99,235,.25);outline-offset:2px}
.resultsViewButton svg{width:22px;height:22px;fill:currentColor}

/* list cards */
.list{display:grid;gap:14px}
.resultsWrap .list.is-compact{
  grid-template-columns:repeat(auto-fill,minmax(330px,1fr));
  align-items:stretch;
}
.resultsWrap .list.is-compact .itemGrid{
  grid-template-columns:1fr;
  grid-template-rows:auto minmax(0,1fr);
  gap:10px;
  height:100%;
  padding:10px;
}
.resultsWrap .list.is-compact .thumbWrap{
  width:100%;
  height:auto;
  aspect-ratio:16/10;
  border-radius:12px;
}
.resultsWrap .list.is-compact .itemMain{
  display:flex;
  flex-direction:column;
  min-height:0;
  height:100%;
}
.resultsWrap .list.is-compact .itemBody{
  flex:1 1 auto;
  grid-template-columns:minmax(0,1fr) minmax(132px,42%);
  gap:10px;
  align-items:start;
}
.resultsWrap .list.is-compact .itemSide{
  align-self:end;
  border:0;
  padding:0;
  background:transparent;
}
.resultsWrap .list.is-compact .priceBox{padding:2px 0 0}
.resultsWrap .list.is-compact .priceCta{padding:8px}
.resultsWrap .list.is-compact .priceCtaVal{font-size:22px}

.hotelTextBlock{padding: 0 10px;}
.hotelTextBlock h2{
	margin-bottom: 2px;
	background: linear-gradient(120deg, #f97316, #ea580c);
    -webkit-background-clip: text;
    color: transparent;
}

/* card */
.item{
  width:100%;
  overflow:hidden;
  border-radius:12px;
  border:1px solid var(--line);
  background:var(--card);
  box-shadow:0 10px 26px rgba(16,24,40,.06);
}
.item--hot{
  position:relative;
  border:2px solid #f97316;
  background:linear-gradient(115deg,#fff7ed 0%,#ffffff 34%,#fffbeb 100%);
  box-shadow:0 14px 34px rgba(234,88,12,.18),0 0 0 3px rgba(251,146,60,.10);
}
.item--hot .itemGrid{padding:11px}
.item--potential{
  position:relative;
  border:2px solid #0ea5a4;
  background:linear-gradient(115deg,#f0fdfa 0%,#ffffff 38%,#eff6ff 100%);
  box-shadow:0 13px 30px rgba(13,148,136,.14),0 0 0 3px rgba(45,212,191,.08);
}
.item--potential .itemGrid{padding:11px}
.itemGrid{
  display:grid;
  grid-template-columns:260px 1fr;
  gap:14px;
  align-items:start;
  padding:12px;
  width:100%;
  max-width:100%;
}
.thumbWrap{
  position:relative; 
  /* width:240px; */
  height:180px;
  border-radius:5px;
  overflow:hidden;
  background:#eef2ff;
  /* border:1px solid var(--line); */
}
/* .thumb{width:320px;height:240px;object-fit:cover;display:block} */
.thumb{width:100%;height:100%;object-fit:cover;display:block}
.hotOfferRibbon{
  position:absolute;
  top:9px;
  left:9px;
  z-index:5;
  display:inline-flex;
  align-items:center;
  min-height:28px;
  padding:5px 9px;
  border:1px solid rgba(255,255,255,.72);
  border-radius:6px;
  background:linear-gradient(135deg,#ef4444 0%,#ea580c 100%);
  color:#fff;
  font-size:11px;
  font-weight:900;
  line-height:1;
  letter-spacing:.045em;
  text-transform:uppercase;
  box-shadow:0 6px 16px rgba(153,27,27,.34);
}
.favoriteButton{
  width:36px;height:36px;padding:0;display:inline-grid;place-items:center;border:1px solid rgba(255,255,255,.75);
  border-radius:50%;background:rgba(35,49,65,.68);color:#fff;box-shadow:0 5px 14px rgba(0,0,0,.22);
  cursor:pointer;transition:color .18s ease,background-color .18s ease,transform .18s ease,opacity .18s ease;
}
.favoriteButton svg{width:21px;height:21px;overflow:visible}
.favoriteButton svg path{fill:currentColor;stroke:#fff;stroke-width:1.35;stroke-linejoin:round}
.favoriteButton:hover{transform:scale(1.06);background:rgba(35,49,65,.84)}
.favoriteButton:focus-visible{outline:3px solid rgba(255,217,113,.85);outline-offset:2px}
.favoriteButton.is-favorite{color:#e53935;background:rgba(35,49,65,.82)}
.favoriteButton.is-loading{opacity:.58;cursor:wait;transform:none}
.favoriteButton[hidden]{display:none}
.favoriteButton--overlay,.favoriteButton--hotel{position:absolute;top:10px;right:10px;z-index:8}
.favoriteButton--hotel{top:14px;right:14px;z-index:9}
.offerSliderCard .timg_box{position:relative;min-height:70px}
.favoriteToast{
  position:fixed;left:50%;bottom:26px;z-index:10200;max-width:min(92vw,520px);padding:13px 18px;
  border-radius:11px;background:#243b5a;color:#fff;box-shadow:0 12px 34px rgba(0,0,0,.28);font-size:14px;font-weight:750;
  opacity:0;pointer-events:none;transform:translate(-50%,18px);transition:opacity .2s ease,transform .2s ease;
}
.favoriteToast.is-visible{opacity:1;transform:translate(-50%,0)}
.favoriteToast.is-error{background:#a62a22}

.resultsNotice{
  margin:18px 0;padding:24px;border:1px solid #c9d8ec;border-radius:14px;background:#f5f9ff;
  color:#526174;text-align:center;
}
.resultsNotice>strong{display:block;margin-bottom:7px;color:#305b95;font-size:20px}
.resultsNotice>span{display:block;line-height:1.5}
.resultsNotice__actions{margin-top:17px;display:flex!important;justify-content:center;gap:10px;flex-wrap:wrap}
.resultsNotice__actions button,.resultsNotice__actions a{
  min-width:150px;min-height:44px;display:inline-flex;align-items:center;justify-content:center;padding:9px 16px;
  border:1px solid #305b95;border-radius:9px;background:#305b95;color:#fff;font:inherit;font-weight:800;text-decoration:none;cursor:pointer;
}
.resultsNotice__actions button.is-secondary{background:#fff;color:#305b95}

.itemMain{min-width:0}
.hotelHead{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:14px;
}
.hotelHeadMain{min-width:0;flex:1 1 auto}
.hotelHeadRating{
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  gap:6px;
  flex:0 0 auto;
}
.ratingBadge{
  padding:1px 5px 3px 5px;
  border-radius:5px 5px 5px 0;
  background:#72cb01;
  color:#ffffff;
  font-weight:550;
  font-size:17px;
  display:flex;
  align-items:center;
  gap:6px;
  justify-content:center;
  text-align:center;
  box-shadow:1px 1px 3px #555;
  z-index:10;
}
.ratingOverlay{
  position:absolute;
  top:7px;
  right:7px;
}
.ratingBadgeIcon{
  width:16px;
  height:16px;
  display:block;
}
.ratingMeta{
  display:inline-flex;
  align-items:center;
  gap:6px;
  margin-top:4px;
  padding-right: 10px;
}
.ratingMetaIcon{
  width:15px;
  height:15px;
  display:block;
}
.ratingBadge--green-strong{background:#26a641}
.ratingBadge--green{background:#72cb01}
.ratingBadge--lime{background:#b7e11a;color:#1f2937}
.ratingBadge--yellow{background:#f2c700;color:#1f2937}
.ratingBadge--orange{background:#f59e0b}
.ratingBadge--red{background:#ef4444}
.ratingReviews{
  font-size:12px;
  color:var(--muted);
  white-space:nowrap;
}
.starsRow{
  display:inline-flex;
  gap:1px;
  align-items:center;
  margin-left:1px;
  font-size:1.0em;
  line-height:1;
  vertical-align:text-top;
  position:relative;
  top:-2px;
}
.starOn{color:#f5b301}
.starOff{
  color:#d1d5db;
  text-shadow:
    0 0 0 #f5b301,
    0 0 0 #f5b301,
    0 0 0 #f5b301;
}
.itemMain h3{
  margin:0;
  display:inline;
}
.hotelTitleLink{
  color:inherit;
  text-decoration:none;
}
.hotelTitleLink:hover{
  text-decoration:underline;
}
.placeLine{color:var(--muted)}

/* Results cards: hotel metadata follows the home-page offer layout. */
.resultsWrap .itemMain .resultsCardMeta,
.offerTopMeta .resultsCardMeta{
  display:flex;
  align-items:center;
  gap:10px;
  min-height:18px;
  margin-top:3px;
  margin-left: 2px;
}
.resultsWrap .itemMain .resultsCardMeta .starsRow,
.offerTopMeta .resultsCardMeta .starsRow{
  margin-left:0;
  top:0;
}
.resultsWrap .itemMain .resultsCardMeta .resultsCardRating,
.offerTopMeta .resultsCardMeta .resultsCardRating{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:30px;
  height:22px;
  padding:0 6px;
  border-radius:5px;
  color:#fff;
  font-size:12px;
  line-height:1;
  font-weight:700;
  white-space:nowrap;
}
.resultsWrap .itemMain .resultsCardMeta .ratingMeta,
.offerTopMeta .resultsCardMeta .ratingMeta{
  margin-top:0;
  padding-right:0;
}
.resultsWrap .itemMain .placeLine{
  display:flex;
  align-items:center;
  gap:8px;
  margin-top:4px;
}
.tourDurationBadge{
  display:inline-block;
  padding:2px 7px;
  border:1px solid #93c5fd;
  border-radius:999px;
  background:#eaf3ff;
  color:#1d4ed8;
  font-size:12px;
  font-weight:700;
  line-height:16px;
  vertical-align:baseline;
  white-space:nowrap;
}

.itemBody{
  display:grid;
  grid-template-columns:1fr 190px;
  gap:14px;
  margin-top:4px;
  align-items:start;
}

.facts{display:grid;margin-top:2px}
.fact{
  display:flex;
  align-items:center;
  gap:10px;
  border-radius:999px;
  width:max-content;
  max-width:100%;
}
.fact__ico{width:17px;height:20px;display:inline-block;flex:0 0 auto}
.fact__txt{font-size:13px;color:#111827;font-weight: 500;}
.fact__txt b{font-weight:550}
.factWide{width:100%}
.resultsMobileNights{display:none}

.roomTag{
  display:inline-flex;
  align-items:center;
  gap:10px;
  padding:0 10px;
  border-radius:999px;
  background:#ecfdf5;
  border:1px solid rgba(34,197,94,.25);
  color:#065f46;
  font-size:13px;
  margin-top:6px;
  max-width:100%;
}
.roomTag span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-bottom:3px}

.itemSide{
  display:flex;
  flex-direction:column;
  gap:10px;
  min-width:0;
}
.priceBox{
  text-align:right;
  display:flex;
  flex-direction:column;
  gap:6px;
  padding:2px 2px 0;
}
.priceMarker{
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  gap:3px;
  width:100%;
  padding:7px 9px;
  border:1px solid rgba(21,128,61,.25);
  border-radius:8px;
  background:#f0fdf4;
  color:#166534;
  text-align:right;
  line-height:1.2;
  box-shadow:0 5px 14px rgba(21,128,61,.08);
}
.priceMarker__title{
  font-size:11px;
  font-weight:800;
  letter-spacing:.025em;
  text-transform:uppercase;
}
.priceMarker__proof{
  display:block;
  font-size:10px;
  font-weight:550;
  color:#3f6212;
}
.priceMarker__proof b{
  color:#15803d;
  font-weight:900;
}
.priceMarker--best{
  border-color:rgba(180,126,0,.38);
  background:linear-gradient(135deg,#fff8d6 0%,#ecfdf3 100%);
  color:#755300;
  box-shadow:0 6px 16px rgba(180,126,0,.13);
}
.priceMarker--historical{
  border-color:rgba(5,150,105,.3);
  background:linear-gradient(135deg,#ecfdf5 0%,#f0fdfa 100%);
}
.priceMarker--near{
  border-color:rgba(22,163,74,.22);
  background:#f0fdf4;
}
.priceMarker--hot{
  gap:0;
  padding:7px 10px 3px;
  box-shadow:none;
}
.priceScale{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:80px;min-height:28px;vertical-align:middle;cursor:help;border-radius:4px;box-sizing:border-box;line-height:1;white-space:normal}
.priceScale:focus-visible{outline:2px solid #475569;outline-offset:2px}
.priceScale[data-price-level="1"]{--scale-color:#77d846}
.priceScale[data-price-level="2"]{--scale-color:#b4df3f}
.priceScale[data-price-level="3"]{--scale-color:#f2b936}
.priceScale[data-price-level="4"]{--scale-color:#fe632b}
.priceScale[data-price-level="5"]{--scale-color:#F36B3F}
.priceScale__segments{display:flex;gap:3px;width:72px}
.priceScale__segment{height:9px;flex:1;border-radius:2px;background:#E9EDF2}
.priceScale__segment.is-filled{background:var(--scale-color)}
.show-hot-percent .priceScale[data-price-percent] > *{display:none}
.show-hot-percent .priceScale[data-price-percent]::after{
  content:"−" attr(data-price-percent) "%";
  /* Original discount colours: #ff552e at 15%, #ff0000 at 30% and above. */
  background:rgb(255, calc(85 * (30 - clamp(15, var(--discount-percent, 15), 30)) / 15), calc(46 * (30 - clamp(15, var(--discount-percent, 15), 30)) / 15));
  color:#fff;padding:6px 8px;border-radius:2px;box-shadow:0 2px 4px rgba(0,0,0,.2);
  font-size:18px;font-weight:650;line-height:1.2;white-space:nowrap;
}
.show-hot-percent .priceMarker--hot .priceScale[data-price-percent]::after{background:none;color:#dc2626;padding:0;border-radius:0;box-shadow:none}
.priceScale__legend{display:block;width:100%;padding:4px 2px;border-radius:4px;box-sizing:border-box;background:var(--scale-color);color:#35150b;font:800 9px/1.15 Arial,sans-serif;text-align:center;letter-spacing:.1px}
.priceScaleTooltip{position:fixed;z-index:10000;box-sizing:border-box;width:280px;max-width:calc(100vw - 16px);padding:12px 14px;border:1px solid #dbe2ea;border-radius:8px;background:#fff;color:#253044;box-shadow:0 6px 22px rgba(15,23,42,.18);font:13px/1.4 Arial,sans-serif;text-align:left;white-space:normal}
.priceScaleTooltip[hidden]{display:none}
.priceScaleTooltip__title{display:block;margin-bottom:5px;font-size:13px}
.priceScaleTooltip__context{display:block;margin-top:7px;color:#64748b;font-size:11px}
.priceMarker--hot .priceMarker__title,
.priceMarker--favorable .priceMarker__title{
  font-size:11px;
  font-weight:650;
  letter-spacing:0;
  text-transform:uppercase;
}
.priceMarker--hot[data-hot-level="5"]{border:0;background:none;padding:0 9px}
.priceMarker--hot[data-hot-level="5"] .priceScale{width:150px;max-width:100%}
.priceMarker--hot .priceScale__legend{padding:6px 8px;font-size:12px;font-weight:650}
.priceMarker--favorable{box-shadow:none}
.priceMarker--potential{
  position:relative;
  overflow:hidden;
  border:1px solid rgba(13,148,136,.42);
  background:linear-gradient(135deg,#ecfeff 0%,#f0fdfa 52%,#eff6ff 100%);
  color:#0f766e;
  box-shadow:0 7px 18px rgba(13,148,136,.13);
}
.priceMarker--potential:before{
  position:absolute;
  top:0;
  left:0;
  width:4px;
  height:100%;
  content:"";
  background:linear-gradient(#14b8a6,#3b82f6);
}
.priceMarker--potential .priceMarker__title{
  color:#0f766e;
  font-size:11px;
}
.priceMarker__potentialDiscount{
  color:#0369a1;
  font-size:12px;
  font-weight:850;
  line-height:1.15;
}
.priceBox--hot .priceTop .priceVal{color:#dc2626;font-weight:650}
.priceBox--hot .priceCta{
  border:0;
  background:#f2d36a;
  box-shadow:none;
  padding:8px 10px;
}
.priceBox--hot .priceCta:hover{background:#eecb56;box-shadow:none;transform:none}
.priceBox--hot .priceCtaVal{color:#9a3412;font-weight:650}
.priceBox--potential .priceTop .priceVal,
.priceBox--potential .priceCtaVal{
  color:#0f766e;
  font-weight:800;
}
.priceBox--potential .priceCta{
  border-color:rgba(13,148,136,.34);
  box-shadow:0 9px 21px rgba(13,148,136,.14);
}
.priceBox--best .priceTop .priceVal,
.priceBox--historical .priceTop .priceVal{
  color:#047857;
  font-weight:700;
}
.priceBox--best .priceCtaVal,
.priceBox--historical .priceCtaVal{
  color:#064e3b;
  font-weight:700;
}
.priceBox--best .priceCta{
  border-color:rgba(22,163,74,.35);
  box-shadow:0 9px 21px rgba(22,163,74,.16),0 5px 14px rgba(184,134,11,.14);
}
.priceTop{
  padding-right: 10px;
}
.priceTop,
.priceBottom{
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  justify-content:center;
  /* min-height:58px; */
}
.priceTop .priceLabel,
.priceBottom .priceLabel{
  font-size:11px;
  color:#6b7280;
  line-height:1.25;
}
.priceTop .priceVal{
  display:block;
  width:100%;
  text-align:right;
  font-size:21px;
  font-weight:450;
  margin-top:2px;
  line-height:1;
  color:#111827;
  font-variant-numeric:tabular-nums;
}
.priceBottom .priceVal{
  font-size:28px;
  font-weight:650;
  margin-top:2px;
  line-height:1;
  color:#0f172a;
}
.priceCta{
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  justify-content:flex-end;
  gap:2px;
  width:100%;
  text-decoration:none;
  color:#1f2937;
  font-weight:700;
  border-radius:5px;
  background:#f2d36a;
  border:1px solid rgba(184,134,11,.2);
  box-shadow:0 8px 18px rgba(184,134,11,.18);
  padding:10px 10px;
  cursor:pointer;
  transition:transform .12s ease, box-shadow .12s ease, background-color .12s ease;
}
.priceBottom .priceCta{
  margin-top:0;
}
.priceCtaLead{
  font-size:12px;
  font-weight:500;
  color:#5b4a1a;
}
.priceCtaVal{
  display:block;
  width:100%;
  text-align:right;
  font-size: 24px;
  font-weight:550;
  line-height:1;
  text-decoration:none;
  color:#1f2937;
  font-variant-numeric:tabular-nums;
  text-wrap-mode: nowrap;
}
.priceCtaPrefix{
  font-size:14px;
  font-weight:600;
  color:#5b4a1a;
}
.priceCta:hover{
  background:#eecb56;
  box-shadow:0 10px 22px rgba(184,134,11,.24);
  transform:translateY(-1px);
}
.priceCta:active .priceCtaVal{
  opacity:1;
}
.priceCta:focus-visible{
  outline:2px solid #b8860b;
  outline-offset:2px;
}

/* results responsive */
/* @media (max-width:1100px){
  .resultsGrid{grid-template-columns:1fr}
  .filters{position:relative;top:auto}
  .itemGrid{grid-template-columns:1fr}
  .thumbWrap,.thumb{width:100%}
  .thumbWrap{height:240px}
  .thumb{height:240px}
  .itemSide{
    border-left:0;
    padding-left:0;
    border-top:1px solid var(--line);
    padding-top:12px;
  }
} */
@media (max-width:1100px){
  .itemBody{
    grid-template-columns:1fr 170px;
  }
}

@media (max-width:1100px){
  .itemGrid{
    grid-template-columns:1fr; /* вместо 240 / 1fr / 160 */
  }

  .thumbWrap{
    width:100%;
    height:240px;
  }

.thumb{
    width:100%;
    height:100%;
    object-fit:cover;
  }

  .hotelHead{
    gap:10px;
  }
  .hotelHeadRating{
    align-items:flex-end;
  }
  .ratingBadgeIcon{
    width:14px;
    height:14px;
  }
  .ratingMetaIcon{
    width:14px;
    height:14px;
  }
  .ratingReviews{
    font-size:11px;
  }

  .itemBody{
    grid-template-columns:1fr 1fr;
    gap:12px;
  }

  .itemSide{
    border:0;
    border-radius:0;
    padding:0;
    background:transparent;
  }
  .priceBox{
    padding:2px 0 0;
  }
  .priceTop .priceVal{
    font-size:22px;
  }
  .priceBottom .priceVal{
    font-size:24px;
  }
  .priceCtaLead{
    font-size:11px;
  }
  .priceCtaVal{
    font-size:24px;
  }
}
@media (max-width:560px){
  .favoriteButton{width:36px;height:36px}
  .favoriteButton svg{width:21px;height:21px}
  .favoriteToast{bottom:14px;width:calc(100% - 24px);max-width:none;text-align:center}
}
@media (max-width:700px){
  .resultsWrap .resultsNightsSeparator,
  .resultsWrap .resultsNightsValue{
    display:none;
  }
  .resultsWrap .resultsMobileNights{
    display:flex;
  }
  .priceMarker{
    padding:6px 7px;
  }
  .priceMarker__title{
    font-size:10px;
  }
  .priceMarker__proof{
    font-size:9px;
  }
  .priceCtaPrefix{
    display:none;
  }
}
@media (max-width:767px){
  .resultsViewSwitch{display:none}
  .resultsFiltersToggle{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:9px;
    width:100%;
    min-height:50px;
    margin:10px 0 0;
    padding:10px 16px;
    border:0;
    border-radius:10px;
    background:#0b63ce;
    color:#fff;
    font:inherit;
    font-size:16px;
    font-weight:800;
    cursor:pointer;
    box-shadow:0 5px 14px rgba(11,99,206,.18);
  }
  .resultsFiltersToggle:hover,
  .resultsFiltersToggle.is-active{background:#0958b8}
  .resultsFiltersToggle:focus-visible{outline:3px solid rgba(37,99,235,.3);outline-offset:2px}
  .resultsFiltersToggle svg{
    width:22px;
    height:22px;
    fill:none;
    stroke:currentColor;
    stroke-width:1.8;
    stroke-linecap:round;
    stroke-linejoin:round;
  }
  .resultsFiltersToggle__count{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:23px;
    height:23px;
    padding:0 6px;
    border-radius:999px;
    background:#fff;
    color:#0b63ce;
    font-size:12px;
    line-height:1;
  }
  .resultsFiltersToggle__count[hidden]{display:none}
  .resultsFiltersPanel.is-collapsed{display:none}
}

/* =========================
   SEARCH PANEL (main + sidebar)
========================= */
.Cover_cover__euqUT{
  position:relative;
  display:flex;
  justify-content:center;
  width:100%;
  max-width:100vw;
  padding:.75rem .625rem 1.5rem;
  background:#3d95fb;
}
.Cover_imagesWrapper___8qdk{
  position:absolute;
  top:0;left:0;
  overflow:hidden;
  width:100%;
  height:100%;
  pointer-events:none;
  background:#305b95 url(/img/back.png) repeat-x;
}
.Cover_content__0gI_5{
  position:relative;
  display:flex;
  flex-direction:column;
  width:100%;
  max-width:1200px;
  height:100%;
  border-radius:8px;
}
.Cover_searchFormWrapper__a7BO8{position:relative}
.MainTitle_title__qBKeT{
  font-size:1.25rem;
  font-weight:800;
  line-height:1.2;
  margin:1.5rem 0;
  text-align:center;
  color:#fff;
}
.SearchBlock_container__zNJl0{position:relative;width:100%}

/* switcher */
.SearchType_switcher__ezOGP{
  position:relative;
  display:flex;
  flex-shrink:0;
  width:346px;
  max-width:100%;
  box-sizing:border-box;
  margin-right:0;
  border-radius:12px 12px 0 0;
  background:rgba(243,249,255,.3);
  backdrop-filter:blur(4px);
}
.SearchType_switcherInner__hDQgM{
  display:flex;
  flex:1;
  min-width:0;
  box-sizing:border-box;
  margin:.25rem;
  padding:.25rem;
  border-radius:8px;
  background:#fff;
}
.SearchType_button__6PMA5{
  font:inherit;
  cursor:pointer;
  background:transparent;
  font-size:.875rem;
  font-weight:650;
  line-height:1.14;
  z-index:2;
  display:flex;
  align-items:center;
  flex:1 1 0;
  min-width:0;
  justify-content:center;
  box-sizing:border-box;
  width:auto;
  height:32px;
  padding:0 .5rem;
  color:#313140;
  border:0;
  border-radius:4px;
  transition:all .2s ease;
}
.SearchType_button__6PMA5:first-child{margin-right:2px}
.SearchType_button__6PMA5:hover{background:#eef4ff}
.SearchType_button__6PMA5.SearchType_active__91uCy{color:#fff;background:#3d95fb}
.SearchType_button__6PMA5.SearchType_active__91uCy:hover{background:#2f86f7}

.SearchBlock_fieldsOutlineContainer__JN44L{
  position:relative;
  /* Keep open search dropdowns above offer cards and their discount badges. */
  z-index:100;
  padding:4px;
  border-radius:0 12px 12px 12px;
  background:rgba(243,249,255,.3);
  backdrop-filter:blur(4px);
}
.SearchBlock_quickFilters{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:20px;
  margin:8px 10px 10px;
}
.SearchBlock_aiRow{
  display:flex;
  align-items:center;
  gap:8px;
  margin:0;
  color:#fff;
  font-size:13px;
  font-weight:600;
  cursor:pointer;
}
.SearchBlock_aiRow input[type="checkbox"]{
  width:16px;
  height:16px;
  accent-color:#ffd971;
}
.filters .sidebarSearch .SearchBlock_quickFilters{display:none}
.SearchBlock_fieldsContainer__B78jo{
  display:flex;
  align-items:center;
  flex-direction:column; /* mobile first */
}

.DefaultField_container__zFkF9{
  position:relative;
  width:100%;
  height:56px;
  margin-bottom:.5rem;
  padding:.625rem .75rem;
  cursor:pointer;
  border-radius:8px;
  background:#fff;
  user-select:none;
}
.DefaultField_label__ZQLeE{
  pointer-events:none;
  font-size:.75rem;
  font-weight:400;
  line-height:1.33;
  color:#a1a1a1;
}
.DefaultField_containerTitle__AbRgh{display:flex;flex-direction:column}
.DefaultField_title__a5XO_{
  font-size:1rem;
  font-weight:400;
  line-height:1.25;
  white-space:nowrap;
  color:#313140;
}

.SearchBlock_containerForNightsAndTourists__z0pXY{display:flex;width:100%}
/* .NightsAmount_container__Bc41J{width:calc(50% - 4px)}
.TouristsAmount_container__gUjoC{width:calc(50% - 4px)} */
.SearchBlock_divider__VZo3e{width:8px}


/* button (legacy classes) */
.kqXRuv{font-size:1rem;line-height:1.25;font-weight:600;padding:16px 20px;height:56px}
.hdYtFb{
  font-size:.75rem;
  line-height:1.33;
  font-weight:650;
  position:relative;
  width:fit-content;
  box-sizing:border-box;
  display:flex;
  align-items:center;
  justify-content:center;
  background:#ffd971;
  color:rgb(49,49,64);
  font-family:"Open Sans",sans-serif;
  border:0;
  border-radius:8px;
  cursor:pointer;
  transition:.5s ease-in-out;
  overflow:hidden;
}
.SearchButton_searchButton__EaReB{width:100%}
.hdYtFb>span{position:relative;display:flex;align-items:center;white-space:nowrap}
.ixxyVm{margin:0 .25rem 0 0}
svg.SearchButton_buttonIcon__dZpeU path{fill:#313140}

/* top tabs links */
.Cover_desktopLinks__zD_PL{position:absolute;top:2px;left:356px}
.LinkTabs_linkTabs__5I0Me{
  display:flex;
  overflow-x:scroll;
  flex-shrink:0;
  width:calc(100% + 20px);
  margin:2px 0 0;
  padding-left:10px;
  scrollbar-width:none;
}
.LinkTab_linkTab__WGGSJ{list-style:none}
.LinkTab_link__TF7_y{
  display:flex;
  align-items:center;
  justify-content:center;
  height:32px;
  margin-right:.5rem;
  padding:0 1.5rem 0 1rem;
  white-space:nowrap;
  text-decoration:none;
  color:#fff;
  border:1px solid hsla(0,0%,100%,.2);
  border-radius:8px;
  background:rgba(243,249,255,.3);
  transition:all .2s ease;
  backdrop-filter:blur(4px);
  font-size:.75rem;
  font-weight:650;
  line-height:1.33;
}

/* footer buttons */
.CoverFooter_footer__gV2V7{
  display:grid;
  width:100%;
  margin-top:1.5rem;
  grid-template-columns:1fr 1fr;
  grid-template-rows:1fr 1fr;
  grid-template-areas:
    "logos tours"
    "buttons buttons";
  grid-gap:1rem 0;
}
.Buttons_buttons__9fr2k{display:flex;grid-area:buttons}
.Buttons_buttons__9fr2k a.Buttons_buttonLink__YDbLX:first-child{margin-right:.5rem}
.Buttons_buttons__9fr2k a.Buttons_buttonLink__YDbLX{
  width:100%;
  color:#fff;
  border-color:#fff;
  background:transparent;
  backdrop-filter:blur(4px);
}
.lgZukj.lgZukj{
  background:#fff;
  color:rgb(61,149,251);
  border:1px solid rgb(61,149,251);
  font-size:.75rem;
  line-height:1.33;
  font-weight:650;
  padding:8px 16px;
  height:32px;
}
.Buttons_buttons__9fr2k a.Buttons_buttonLink__YDbLX svg{margin-right:.25rem;fill:#ffd709}

@media (min-width:1200px){
  .MainTitle_title__qBKeT{font-size:2.5rem;font-weight:800;line-height:1.2}
  .CoverFooter_footer__gV2V7{margin-top:1.5rem}
  .CoverFooter_countryOffersWrapper__vraxy{padding-left:.25rem}
}

/* ===== TABLET+ (but still VERTICAL form) ===== */
@media (min-width:768px){
  .Cover_cover__euqUT{padding:1.5rem 3.875rem}
  .CoverFooter_footer__gV2V7{
    display:flex;
    align-items:center;
    justify-content:space-between;
    margin-top:1rem
  }
  .MainTitle_title__qBKeT{
    font-size:2rem;
    font-weight:800;
    line-height:1.25;
    margin:2.25rem 0
  }

  /* ВАЖНО: до 960 панель остаётся ВЕРТИКАЛЬНОЙ */
  .SearchBlock_fieldsContainer__B78jo{
    display:flex;
    flex-direction:column;
    background:transparent;
  }
}

/* ===== DESKTOP (HORIZONTAL from 960+) ===== */
@media (min-width:960px){
  .Cover_cover__euqUT{padding:4.25rem 1.5rem 2rem}
  .MainTitle_title__qBKeT{margin:0 0 2.5rem}

  /* GRID вместо flex-row */
  .SearchBlock_fieldsContainer__B78jo{
    display:grid;
    align-items:stretch;
    gap:0;
    background:#fff;
    border-radius:.5rem;
    grid-template-columns: 16% 16% 20% 33% 15%; /* dep, dest, dates, nights+pax, btn */
    grid-auto-rows:auto;
  }
  .SearchBlock_fieldsContainer__B78jo > *{min-width:0}

  /* HOTELS tab grid */
  body.tt-type-hotels .SearchBlock_fieldsContainer__B78jo{
    grid-template-columns: 28% 32% 20% 20%; /* dest, dates, pax, btn */
  }


  /* nights/tourists inside */
  .SearchBlock_containerForNightsAndTourists__z0pXY{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:8px;
  }

  /* divider not needed */
  .SearchBlock_divider__VZo3e{display:none}

  /* separators between fields */
  .DefaultField_container__zFkF9{
    margin-bottom:0;
    padding:.625rem 1rem;
    cursor:auto;
  }
  .DefaultField_container__zFkF9:before{
    position:absolute;
    bottom:8px;
    left:0;
    width:1px;
    height:38px;
    content:"";
    border-left:1px solid #a1a1a1;
  }
  .SearchBlock_fieldsContainer__B78jo > :first-child:before{display:none}
  body.tt-type-hotels .SearchBlock_fieldsContainer__B78jo > :first-child:before{display:none}

  .DefaultField_containerTitle__AbRgh{cursor:pointer}
  .DefaultField_title__a5XO_{font-weight:400;line-height:1.33}

  .LinkTabs_linkTabs__5I0Me{overflow-x:hidden;margin-left:0;padding-left:0}
  .LinkTab_link__TF7_y{height:40px}
  .CoverFooter_footer__gV2V7{margin-top:2.125rem}
  .CoverFooter_countryOffersWrapper__vraxy{width:33%}
  .Buttons_buttons__9fr2k{flex:1 1 auto;width:30%}
  .Buttons_buttons__9fr2k a.Buttons_buttonLink__YDbLX{width:156px}
}

@media (max-width:767px){
  .content{
    padding:14px 10px;
  }
  .content_container{
    padding-top:18px;
    padding-bottom:28px;
    display:flex;
    flex-direction:column;
    align-items:stretch;
    gap:14px;
  }
  .content_left {
    width:100%;
  }
  .content_right{
    width:100%;
    min-width:0;
  }
  .content_right h1{
    font-size:28px;
    line-height:1.2;
    margin-bottom:12px;
    word-break:break-word;
  }
  .text-block_left{
    width:100%;
  }
  .text-block_left-menu{
    padding:14px;
    padding-top:0;
  }
  .text-block_left-menu a{
    font-size:15px;
    line-height:1.25;
  }
  .SearchBlock_fieldsContainer__B78jo{box-sizing:border-box}
  .header .city-info{display:none}
  .navbar-main{display:none}
  .Cover_desktopLinks__zD_PL{display:none}
  .pull-right{float:none}
  .main-info{padding:0!important}
  .wrap{padding-left:14px;padding-right:14px}

  /* Compact two-level mobile header */
  .header>.wrap{
    padding-top:0;
    padding-bottom:0;
    overflow:visible;
  }
  .header .main-info{display:block}
  .header .logo{
    float:none;
    width:auto;
    height:64px;
    display:flex;
    align-items:center;
    padding-right:92px;
  }
  .header .logo a{display:inline-flex;align-items:center}
  .header .logo img{
    display:block;
    width:170px;
    max-height:43px;
    object-fit:contain;
  }
  .header .header-info{
    float:none;
    width:100%;
    min-height:0;
    padding:0;
  }
  .header .phone-info{
    width:100%;
    min-height:46px;
    padding:0 2px;
    background:none;
    border-top:1px solid rgba(255,255,255,.16);
    display:flex;
    align-items:center;
    justify-content:center;
    gap:18px;
  }
  .header .phone-info .current-city-phone-wrapper{
    position:relative;
    min-height:0;
    padding:0 0 0 27px;
    font-size:18px;
    line-height:1;
  }
  .header .phone-info .current-city-phone-wrapper:before{
    content:"";
    position:absolute;
    left:0;
    top:50%;
    width:21px;
    height:21px;
    background:url(/img/phone2.png) no-repeat center/contain;
    transform:translateY(-50%);
  }
  .header .phone-info [data-role="work-schedule"]{
    position:relative;
    padding-left:10px;
    color:rgba(255,255,255,.82);
    font-size:11px;
    line-height:1.25;
  }
  .header .phone-info [data-role="work-schedule"]:before{
    content:"";
    position:absolute;
    left:0;
    top:.4em;
    width:6px;
    height:6px;
    border-radius:50%;
    background:#55d98b;
    box-shadow:0 0 0 2px rgba(85,217,139,.16);
  }
  .header .phone-info .header-clbk{display:none}
  .filters{
    position: relative;
    top: auto;
    max-height: none;
    overflow: visible;
  }
  .SearchBlock_containerForNightsAndTourists__z0pXY{
    display:flex;
    gap:8px;
  }
  .SearchBlock_divider__VZo3e{display:none}

  .resultsGrid{grid-template-columns:1fr}

  .mobBurger{
    position:absolute;
    top:10px;
    right:14px;
    z-index:30;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    min-height:44px;
    padding:9px 12px;
    border-radius:12px;
    border:1px solid rgba(255,255,255,.25);
    background:rgba(18,52,96,.28);
    color:#fff;
    cursor:pointer;
  }
  .mobBurger__txt{font-weight:800;font-size:14px}
  .mobBurger__icon{font-size:18px;line-height:1}
}

@media (max-width:374px){
  .header .phone-info{gap:10px}
  .header .phone-info .current-city-phone-wrapper{font-size:16px;padding-left:24px}
  .header .phone-info .current-city-phone-wrapper:before{width:18px;height:18px}
  .header .phone-info [data-role="work-schedule"]{font-size:10px}
}


/* =========================
   SIDEBAR SEARCH (RESULTS) 

========================= */
.filters .sidebarSearch .SearchBlock_fieldsOutlineContainer__JN44L{
  padding:8px;
  border-radius:16px;
  background:#305b95;
  backdrop-filter:none;
}
.filters .sidebarSearch .SearchBlock_fieldsContainer__B78jo{
  display:flex;
  flex-direction:column;
  align-items:stretch;
  background:transparent;
  gap:8px;
}

/* make fields full width inside sidebar */
.filters .sidebarSearch .DepartureCity_container__xiPzS,
.filters .sidebarSearch .WhereDirection_container__lwAht,
.filters .sidebarSearch .DepartureDates_container__opV43,
.filters .sidebarSearch .SearchButton_searchButton__EaReB{
  width:100%;
}

/* field look in sidebar */
.filters .sidebarSearch .DefaultField_container__zFkF9,
.filters .sidebarSearch .WhereDirection_container__lwAht{
  margin:0;
  height:56px;
  padding:.625rem .75rem;
  border-radius:12px;
  background:#fff;
  cursor:pointer;
}

/* remove desktop separators inside sidebar */
.filters .sidebarSearch .DefaultField_container__zFkF9:before,
.filters .sidebarSearch .WhereDirection_container__lwAht:before{display:none}

/* nights/tourists in sidebar = 2 columns with ровный отступ (как на мобиле) */
.filters .sidebarSearch .SearchBlock_containerForNightsAndTourists__z0pXY{
  width:100%;
  display:flex;
  gap:8px;
}
.filters .sidebarSearch .NightsAmount_container__Bc41J,
.filters .sidebarSearch .TouristsAmount_container__gUjoC{
  width:calc(50% - 4px);
  margin:0;
}
.filters .sidebarSearch .SearchBlock_divider__VZo3e{display:none}

/* search button in sidebar */
.filters .sidebarSearch .SearchButton_searchButton__EaReB{height:56px;border-radius:12px}

/* hide extra stuff in sidebar */
.filters .sidebarSearch .Cover_desktopLinks__zD_PL,
.filters .sidebarSearch .CoverFooter_footer__gV2V7{display:none}

/* search type switcher in results sidebar */
.filters .sidebarSearch .SearchType_switcher__ezOGP{
  width:100%;
  margin:0 0 8px;
}

/* =========================
   POPUPS / MODALS (SP_)
========================= */
.SP_hiddenInput{position:absolute;inset:0;opacity:0;pointer-events:none}
.SP_modal{
  position:absolute;
  top:calc(100% + 6px);
  z-index:2147483000;
  display:none;
  background:transparent;
  padding:0;
  min-width: 250px;
}
#depModal,#destModal{
	left:0;right:0;
}
#nightsModal{
left:0;
}
#paxModal{
right:0;
}
.SP_modal--calendar{
  position:fixed;
  inset:0;
  background:rgba(17,24,39,.20);
  padding:16px;
  z-index:2147483000;
}
.DefaultField_container__zFkF9.is-open .SP_modal{display:block}
.DefaultField_container__zFkF9.is-open .SP_modal--calendar{
  display:flex;
  align-items:center;
  justify-content:center;
}
.SP_modalInner{
  background:#fff;
  border-radius:12px;
  border:1px solid rgba(17,24,39,.12);
  box-shadow:0 18px 50px rgba(16,24,40,.18);
  overflow:hidden;
  width:unset;
}
.SP_modalInner--calendar{padding:0}

/* daterangepicker inside modal */
.SP_modalInner--calendar .daterangepicker{
  position:static;
  margin:0;
  box-shadow:none;
  border:0;
  z-index:2147483001 !important;
}

.SP_calendarHint{font-size:12px;color:#6b7280;margin-bottom:10px}

/* lists */
.SP_list{max-height:260px;overflow:auto;padding:6px}
.SP_item{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:10px 12px;
  border-radius:10px;
  cursor:pointer;
  font-size:14px;
  color:#111827;
}
.SP_item:hover{background:#f3f4f6}
.SP_item.is-active{background:#eef4ff;color:#3d95fb;font-weight:800}
.SP_item--favorites{margin-bottom:5px;border-bottom:1px solid #e5e7eb;border-radius:10px 10px 4px 4px;color:#305b95;font-weight:800}
.SP_itemFavoriteMain{display:flex;align-items:center;gap:9px;min-width:0}
.SP_itemHeart{color:#e53935;font-size:22px;line-height:1}
.SP_item--favorites small{color:#7b8490;font-size:11px;font-weight:700;white-space:nowrap}
.SP_item--favorites.is-active small{color:#3d95fb}

/* counters */
.SP_counterBox{padding:12px}
.SP_counterRow{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:10px 6px;
  border-radius:12px;
  background:#f9fafb;
  border:1px solid rgba(17,24,39,.08);
}
.SP_counterRow + .SP_counterRow{margin-top:10px}
.SP_btnMinus,.SP_btnPlus{
  width:38px;height:38px;
  border-radius:10px;
  border:1px solid rgba(17,24,39,.14);
  background:#fff;
  font-size:20px;
  line-height:1;
  cursor:pointer;
  color:#3d95fb;
  font-weight:950;
}
.SP_btnMinus:disabled,.SP_btnPlus:disabled{opacity:.4;cursor:not-allowed}
.SP_counterTxt{font-size:14px;color:#111827;font-weight:650}
.SP_counterNum{font-weight:950}

/* pax children */
.SP_addChildBtn{
  width:100%;
  margin-top:10px;
  padding:12px 14px;
  border-radius:12px;
  border:1px solid rgba(29,78,216,.35);
  background:#eef4ff;
  color:#3d95fb;
  font-weight:950;
  cursor:pointer;
}
.SP_childrenWrap{margin-top:12px}
.SP_childrenTitle{font-size:12px;color:#6b7280;margin:2px 0 10px}
.SP_agesGrid{display:grid;grid-template-columns:repeat(6,1fr);gap:8px}
.SP_age{
  padding:10px 0;
  border-radius:10px;
  border:1px solid rgba(17,24,39,.14);
  background:#fff;
  cursor:pointer;
  font-weight:900;
  color:#111827;
  text-align:center;
  font-size:12px;
}
.SP_age:hover{background:#f3f4f6}
.SP_age.is-active{background:#e8f0ff;border-color:#3d95fb;color:#1d4ed8}
.SP_childrenFooter{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-top:10px;
}
.SP_linkDanger{border:0;background:transparent;color:#b91c1c;font-weight:950;cursor:pointer}
.SP_childrenCount{font-size:12px;color:#6b7280;font-weight:800}

/* daterangepicker: hide off-month days */
.daterangepicker td.ends,
.daterangepicker td.off.in-range,
.daterangepicker td.off.start-date,
.daterangepicker td.off.end-date{
  visibility:hidden;
  pointer-events:none;
}
.daterangepicker .weekend{color:red}
.daterangepicker td.off:hover{background:transparent}


/* =========================
   OFFER PAGE
========================= */

.ttCrumbs{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  align-items:center;
  color:var(--muted);
  font-size:12px;
  margin:6px 0 14px;
}
.ttBackBtn{
  border:1px solid var(--line);
  background:#fff;
  color:#1f2937;
  border-radius:8px;
  padding:5px 10px;
  font-weight:800;
  font-size:12px;
  line-height:1;
  cursor:pointer;
  margin-right:4px;
}
.ttBackBtn:hover{
  background:#f9fafb;
}
.ttCrumbs a{color:#305b95;font-weight:800}
.ttCrumbs span{opacity:.8}

.offerTopGrid{
  display:grid;
  grid-template-columns: 2fr 1fr;
  gap:14px;
  align-items:start;
  margin-bottom:14px;
}
.offerSliderCard, .offerSummaryCard{
  border:1px solid var(--line);
  border-radius:14px;
  background:#fff;
  box-shadow:0 10px 26px rgba(16,24,40,.06);
  overflow:hidden;
}
.offerSummaryCard{
  overflow:visible;
}
.offerSliderCard .post_car{
  position:relative;
}
.offerImageBadges{
  position:absolute;
  top:12px;
  left:12px;
  right:12px;
  z-index:7;
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  pointer-events:none;
}
.offerImageBadgeLeft{
  font-size:12px;
  padding:6px 10px;
  border-radius:8px;
  box-shadow:0 2px 8px rgba(0,0,0,.22);
}
.offerSliderStub{
  height:360px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:6px;
  background:#f3f4f6;
}
.offerSliderStub__title{font-weight:950;color:#111827}
.offerSliderStub__hint{color:var(--muted);font-size:12px}

.offerSummaryHead{padding:14px;border-bottom:1px solid var(--line)}
.offerSummaryTitle{font-weight:950}
.offerSummaryMuted{color:var(--muted);font-size:12px;margin-top:4px}
.offerSummaryBody{padding:12px 14px;display:grid;gap:10px}
.offerTopMeta{display:grid;gap:6px}
.offerTopMetaTitle{font-size:21px;line-height:1.2;font-weight:650;color:#111827}
.offerTopMeta .starsRow{
  font-size:1.02em;
  top:0;
  margin-left:8px;
  vertical-align:baseline;
}
.offerBadge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:max-content;
  padding:4px 10px;
  border-radius:999px;
  font-size:11px;
  font-weight:900;
  letter-spacing:.2px;
}
.offerBadge--last{
  background:#ff6a00;
  color:#fff;
}
.offerSummaryRow{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
  padding:8px 10px;
  border:1px solid #e5e7eb;
  border-radius:10px;
  background:#fafafa;
}
.offerSummaryRow span{
  color:#6b7280;
  font-size:12px;
  line-height:1.3;
  min-width:108px;
}
.offerSummaryRow b{
  color:#111827;
  font-size:15px;
  line-height:1.35;
  text-align:right;
  font-weight:800;
}
.offerSummaryRow--price{
  background:#f3f8ff;
  border-color:#dbeafe;
}
.offerSummaryRow--op{
  background:#ebf9ef;
  border-color:#b7e7c1;
}
.offerInfoList{display:grid;gap:8px}
.offerInfoRow{
  display:flex;
  align-items:flex-start;
  gap:10px;
  padding:0;
  border:0;
  background:transparent;
}
.offerInfoRow--switch{
  appearance:none;
  width:100%;
  text-align:left;
  font:inherit;
  color:inherit;
  cursor:pointer;
  align-items:center;
  border:1px solid #e5e7eb;
  border-radius:8px;
  padding:7px 9px;
  transition:background-color .15s ease,border-color .15s ease;
}
.offerInfoRow--switch:hover{
  background:#f8fafc;
  border-color:#cfd5df;
}
.offerInfoRow--switch .fact__txt{
  flex:1 1 auto;
}
.offerInfoChevron{
  color:#6b7280;
  font-size:11px;
  line-height:1;
  margin-left:6px;
}
.offerInfoRow .fact__ico{
  width:18px;
  height:18px;
  margin-top:1px;
}
.offerInfoRow .fact__txt{
  font-size:14px;
  line-height:1.35;
  font-weight:500;
}
.offerInfoRow .fact__sub{
  display:block;
  margin-top:2px;
  font-size:13px;
  color:#4b5563;
  font-weight:400;
}
.offerSummaryTotal{
  margin-top:6px;
  padding:10px 12px;
  border-radius:6px;
  border:1px solid #b7e7c1;
  background:#ebf9ef;
  font-size:22px;
  line-height:1.2;
  font-weight:650;
  color:#464a48;
  text-align:center;
}
.offerSummaryTotal b{font-weight:900}
.offerRow{display:flex;justify-content:space-between;gap:10px}
.offerK{color:var(--muted);font-size:12px}
.offerV{color:#111827;font-size:12px;text-align:right}

.ttPriceForecast{
  margin:0 0 14px;
  padding:16px;
  border:1px solid rgba(5,150,105,.28);
  border-radius:14px;
  background:linear-gradient(135deg,#f0fdf4 0%,#f8fafc 58%,#fffbeb 100%);
  box-shadow:0 10px 26px rgba(16,24,40,.06);
}
.ttPriceForecast--exceptional{
  border-color:rgba(234,88,12,.48);
  background:linear-gradient(135deg,#fff1f2 0%,#fff7ed 45%,#fffbeb 100%);
  box-shadow:0 14px 34px rgba(234,88,12,.14);
}
.ttPriceForecast--exceptional .ttPriceForecast__eyebrow{color:#c2410c}
.ttPriceForecast--exceptional .ttPriceForecast__confidence{
  border-color:rgba(234,88,12,.35);
  background:#fff7ed;
  color:#c2410c;
}
.ttPriceForecast[hidden]{display:none}
.ttPriceForecast__head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
  margin-bottom:13px;
}
.ttPriceForecast__eyebrow{
  display:block;
  margin-bottom:3px;
  color:#047857;
  font-size:11px;
  font-weight:850;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.ttPriceForecast__head h2{
  margin:0;
  color:#0f172a;
  font-size:20px;
  line-height:1.2;
}
.ttPriceForecast__confidence{
  flex:0 0 auto;
  padding:6px 9px;
  border:1px solid rgba(5,150,105,.24);
  border-radius:999px;
  background:#fff;
  color:#047857;
  font-size:11px;
  font-weight:800;
}
.ttPriceForecast__grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
}
.ttPriceForecast__period--alternative{
  margin-top:14px;
  padding-top:12px;
  border-top:1px dashed rgba(5,150,105,.32);
}
.ttPriceForecast__subhead{
  margin-bottom:8px;
  color:#047857;
  font-size:12px;
  font-weight:850;
  letter-spacing:.03em;
  text-transform:uppercase;
}
.ttPriceForecast__cell{
  display:flex;
  flex-direction:column;
  gap:4px;
  min-width:0;
  padding:12px;
  border:1px solid rgba(148,163,184,.24);
  border-radius:10px;
  background:rgba(255,255,255,.82);
}
.ttPriceForecast__cell strong{
  color:#0f172a;
  font-size:17px;
  line-height:1.25;
}
.ttPriceForecast__cell--price strong{color:#047857;font-size:20px}
.ttPriceForecast__cell span:not(.ttPriceForecast__label){
  color:#64748b;
  font-size:12px;
  line-height:1.35;
}
.ttPriceForecast__label{
  color:#475569;
  font-size:11px;
  font-weight:750;
  line-height:1.3;
}
.ttPriceForecast__status{
  margin-top:10px;
  padding:9px 11px;
  border-radius:9px;
  background:#dcfce7;
  color:#166534;
  font-size:13px;
  font-weight:750;
}
.ttPriceForecast__status--live{
  border:1px solid #a5f3fc;
  background:#ecfeff;
  color:#155e75;
}
.ttPriceForecast__status--live strong,
.ttPriceForecast__status--live span{display:block}
.ttPriceForecast__status--live span{margin-top:3px;font-weight:650}
.ttPriceForecast__status--better,
.ttPriceForecast__status--exceptional{
  margin:0 0 12px;
  border:1px solid rgba(234,88,12,.34);
  background:linear-gradient(135deg,#fff7ed 0%,#fef3c7 100%);
  color:#9a3412;
}
.ttPriceForecast__status--exceptional{
  border-color:rgba(220,38,38,.38);
  background:linear-gradient(135deg,#fff1f2 0%,#ffedd5 58%,#fef3c7 100%);
  box-shadow:0 8px 20px rgba(234,88,12,.12);
}
.ttPriceForecast__status--better strong,
.ttPriceForecast__status--better span,
.ttPriceForecast__status--exceptional strong,
.ttPriceForecast__status--exceptional span{display:block}
.ttPriceForecast__status--better strong,
.ttPriceForecast__status--exceptional strong{font-size:15px;color:#b91c1c}
.ttPriceForecast__status--better span,
.ttPriceForecast__status--exceptional span{margin-top:4px;font-weight:650;line-height:1.4}
.ttPriceForecast__status--better b,
.ttPriceForecast__status--exceptional b{font-weight:900;color:#b91c1c}
.ttPriceForecast__note{
  margin-top:10px;
  color:#64748b;
  font-size:11px;
  line-height:1.4;
}
.ttPriceForecast__loading{
  padding:5px 0;
  color:#475569;
  font-size:13px;
  font-weight:700;
}

.ttPaxUnavailable{
  position:fixed;
  inset:0;
  z-index:100080;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:16px;
  background:rgba(15,23,42,.46);
  backdrop-filter:blur(4px);
}
.ttPaxUnavailable[hidden]{display:none}
.ttPaxUnavailable__card{
  position:relative;
  width:min(480px,100%);
  padding:30px 28px 26px;
  border-radius:16px;
  background:#fff;
  box-shadow:0 24px 70px rgba(15,23,42,.28);
  text-align:center;
}
.ttPaxUnavailable__close{
  position:absolute;
  top:10px;
  right:10px;
  width:34px;
  height:34px;
  border:0;
  border-radius:50%;
  background:#f1f5f9;
  color:#64748b;
  font-size:23px;
  line-height:1;
  cursor:pointer;
}
.ttPaxUnavailable__icon{
  display:flex;
  align-items:center;
  justify-content:center;
  width:54px;
  height:54px;
  margin:0 auto 14px;
  border-radius:50%;
  background:#fff7ed;
  color:#f97316;
  font-size:30px;
  font-weight:900;
}
.ttPaxUnavailable__card h2{
  margin:0 0 9px;
  color:#0f172a;
  font-size:24px;
  line-height:1.2;
}
.ttPaxUnavailable__card p{
  margin:0;
  color:#475569;
  font-size:15px;
  line-height:1.5;
}
.ttPaxUnavailable__pax{
  margin:15px 0;
  padding:11px 13px;
  border-radius:10px;
  background:#f8fafc;
  color:#0f172a;
  font-size:15px;
  font-weight:800;
}
.ttPaxUnavailable__card .ttPaxUnavailable__hint{
  color:#64748b;
  font-size:13px;
}
.ttPaxUnavailable__button{
  width:100%;
  margin-top:20px;
  padding:12px 16px;
  border:0;
  border-radius:9px;
  background:#ffca00;
  color:#312e20;
  font-size:15px;
  font-weight:850;
  cursor:pointer;
}
@media (max-width:520px){
  .ttPaxUnavailable__card{padding:28px 18px 20px}
  .ttPaxUnavailable__card h2{font-size:21px}
}

.offerReserveBtn{
  width:calc(100% - 28px);
  margin:0 14px 14px;
  height:46px;
  border-radius:6px;
  border:0;
  background:#ffca00;
  color:#313140;
  font-weight:950;
  cursor:pointer;
}
.offerReserveBtn:hover{filter:brightness(.98)}

.offerTabs{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  margin:10px 0;
}
.offerTab{
  border:1px solid var(--line);
  background:#fff;
  border-radius:6px;
  padding:10px 14px;
  cursor:pointer;
  font-weight:900;
  color:#111827;
}
.offerTab.is-active{
  background: #fffcf7;
  border-color: #fba33d;
  color: #f57317;
}

.offerPanel{display:none}
.offerPanel.is-active{display:block}

.ttReviewsSection{overflow:hidden}
#hotelReviewsBox{min-width:0}
.ttReviewsLoading{
  min-height:150px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  color:#475569;
  font-weight:750;
}
.ttReviewsSpinner{
  width:20px;
  height:20px;
  border:2px solid #dbe3ee;
  border-top-color:#f57317;
  border-radius:50%;
  animation:ttReviewsSpin .8s linear infinite;
}
@keyframes ttReviewsSpin{to{transform:rotate(360deg)}}
.ttReviewsSummary{
  display:grid;
  grid-template-columns:minmax(210px,280px) minmax(0,1fr);
  gap:22px;
  padding:18px;
  border:1px solid #dbe3ee;
  border-radius:10px;
  background:#fffdf9;
}
.ttReviewsSummary__main{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  justify-content:center;
  min-width:0;
  padding-right:22px;
  border-right:1px solid #e5e7eb;
}
.ttReviewsSummary__source{
  display:flex;
  align-items:center;
  gap:8px;
  color:#334155;
  font-size:14px;
  font-weight:850;
}
.ttReviewsSummary__source img{width:22px;height:22px;display:block}
.ttReviewsSummary__score{display:flex;align-items:baseline;gap:6px;margin-top:9px}
.ttReviewsSummary__score strong{
  display:inline-flex;
  align-items:center;
  min-height:48px;
  padding:3px 12px 5px;
  border-radius:8px 8px 8px 0;
  background:#26a641;
  color:#fff;
  box-shadow:1px 1px 3px rgba(15,23,42,.25);
  font-size:31px;
  line-height:1;
  font-weight:900;
}
.ttReviewsSummary__score span{color:#64748b;font-size:16px;font-weight:750}
.ttReviewsSummary__count{margin-top:8px;color:#64748b;font-size:13px}
.ttReviewsSubscores{
  display:grid;
  grid-template-columns:repeat(2,minmax(150px,1fr));
  gap:10px 16px;
  align-content:center;
}
.ttReviewsSubscore{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  min-height:42px;
  padding:8px 10px;
  border:1px solid #e5e7eb;
  border-radius:8px;
  background:#fff;
}
.ttReviewsSubscore span{min-width:0;color:#334155;font-size:13px;line-height:1.25}
.ttReviewsSubscore strong{
  flex:0 0 auto;
  min-width:39px;
  padding:4px 7px;
  border:1px solid #9bd8ad;
  border-radius:6px;
  background:#edf9f0;
  color:#187c34;
  text-align:center;
  font-size:15px;
  font-weight:900;
}
.ttTaReviewsList{display:flex;flex-direction:column;gap:14px;margin-top:18px}
.ttTaReviewCard{
  display:grid;
  grid-template-columns:180px minmax(0,1fr);
  overflow:hidden;
  border:1px solid #d8dee8;
  border-radius:10px;
  background:#fff;
}
.ttTaReviewCard__meta{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:7px;
  padding:16px;
  border-right:1px solid #e5e7eb;
  background:#fbfcfe;
}
.ttTaReviewCard__author{color:#25305f;font-size:14px;line-height:1.3;overflow-wrap:anywhere}
.ttTaReviewCard__meta time{color:#64748b;font-size:12px;line-height:1.35}
.ttTaReviewCard__rating{
  display:inline-flex;
  align-items:baseline;
  gap:2px;
  margin-top:2px;
  padding:5px 8px;
  border-radius:6px 6px 6px 0;
  background:#26a641;
  color:#fff;
  font-size:16px;
  line-height:1;
  font-weight:900;
}
.ttTaReviewCard__rating small{font-size:10px;font-weight:800;opacity:.9}
.ttTaReviewCard__body{min-width:0;padding:17px 20px}
.ttTaReviewCard__text{
  position:relative;
  color:#4b5563;
  font-size:15px;
  line-height:1.55;
  overflow-wrap:anywhere;
}
.ttTaReviewCard__text.is-collapsed{max-height:140px;overflow:hidden}
.ttTaReviewCard__text.is-collapsed::after{
  content:"";
  position:absolute;
  right:0;
  bottom:0;
  left:0;
  height:42px;
  background:linear-gradient(to bottom,rgba(255,255,255,0),#fff 88%);
  pointer-events:none;
}
.ttTaReviewCard__toggle{
  margin-top:10px;
  padding:0;
  border:0;
  background:transparent;
  color:#1769aa;
  font:inherit;
  font-size:13px;
  font-weight:800;
  cursor:pointer;
}
.ttTaReviewCard__toggle:hover{text-decoration:underline}
.ttReviewsEmpty{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:8px;
  margin-top:16px;
  padding:16px;
  border:1px solid #e2e8f0;
  border-radius:9px;
  background:#f8fafc;
  color:#475569;
}
.ttReviewsFooter{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  margin-top:18px;
  padding-top:15px;
  border-top:1px solid #e5e7eb;
}
.ttReviewsFooter p{margin:0;color:#64748b;font-size:12px;line-height:1.45}
.ttReviewsExternal{
  flex:0 0 auto;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  min-height:40px;
  padding:8px 13px;
  border:1px solid #305b95;
  border-radius:7px;
  background:#305b95;
  color:#fff;
  font-size:13px;
  font-weight:850;
  text-decoration:none;
}
.ttReviewsExternal:hover{filter:brightness(.96);text-decoration:none}
.ttReviewsExternal--fallback{margin-top:5px}
@media (max-width:760px){
  .ttReviewsSummary{grid-template-columns:1fr;gap:16px;padding:14px}
  .ttReviewsSummary__main{padding:0 0 14px;border-right:0;border-bottom:1px solid #e5e7eb}
  .ttReviewsSubscores{grid-template-columns:1fr 1fr;gap:8px}
  .ttTaReviewCard{grid-template-columns:1fr}
  .ttTaReviewCard__meta{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;border-right:0;border-bottom:1px solid #e5e7eb;padding:13px 14px}
  .ttTaReviewCard__meta time{grid-column:1}
  .ttTaReviewCard__rating{grid-column:2;grid-row:1 / span 2;margin:0}
  .ttTaReviewCard__body{padding:15px}
  .ttReviewsFooter{align-items:stretch;flex-direction:column}
  .ttReviewsExternal{align-self:flex-start}
}
@media (max-width:460px){
  .ttReviewsSubscores{grid-template-columns:1fr}
  .ttReviewsSummary__score strong{font-size:27px;min-height:44px}
  .ttReviewsExternal{align-self:stretch;text-align:center}
}

.ttHotelDescriptionMeta{
  display:grid;
  gap:10px;
  margin:2px 0 18px;
}
.ttHotelDescriptionMeta .offerTopMeta{
  gap:0;
}
.ttHotelDescriptionMeta .offerInfoList{
  gap:0;
}
.ttHotelDescriptionMeta .offerInfoRow{
  align-items:center;
}
.ttHotelDescription{
  position:relative;
}
.ttHotelDescription__content{
  position:relative;
}
.ttHotelDescription.is-collapsed .ttHotelDescription__content{
  max-height:280px;
  overflow:hidden;
}
.ttHotelDescription.is-collapsed .ttHotelDescription__content::after{
  content:"";
  position:absolute;
  right:0;
  bottom:0;
  left:0;
  height:92px;
  background:linear-gradient(to bottom,rgba(255,255,255,0),#fff 88%);
  pointer-events:none;
}
.ttHotelDescription__toggle{
  position:relative;
  z-index:1;
  display:inline-flex;
  align-items:center;
  gap:10px;
  min-height:38px;
  margin:8px 0 0 4px;
  padding:7px 10px;
  border:0;
  border-radius:8px;
  background:#fff;
  color:#087abd;
  font:inherit;
  font-size:14px;
  font-weight:850;
  cursor:pointer;
}
.ttHotelDescription__toggle:hover,
.ttHotelDescription__toggle:focus-visible{
  background:#f0f7ff;
  color:#0669a3;
}
.ttHotelDescription__toggle:focus-visible{
  outline:2px solid rgba(8,122,189,.35);
  outline-offset:2px;
}
.ttHotelDescription__toggle[hidden]{display:none}
.ttHotelDescription__chevron{
  width:9px;
  height:9px;
  margin-top:-4px;
  border-right:2px solid currentColor;
  border-bottom:2px solid currentColor;
  transform:rotate(45deg);
  transition:transform .2s ease,margin .2s ease;
}
.ttHotelDescription.is-expanded .ttHotelDescription__chevron{
  margin-top:4px;
  transform:rotate(225deg);
}
@media (max-width:640px){
  .ttHotelDescription.is-collapsed .ttHotelDescription__content{
    max-height:230px;
  }
  .ttHotelDescriptionMeta{
    margin-bottom:14px;
  }
}

.ttHotelMapWrap{
  position:relative;
  overflow:hidden;
  border-radius:12px;
}
.ttGoogleMapsBtn{
  position:absolute;
  right:16px;
  bottom:28px;
  z-index:1000;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  min-height:44px;
  padding:10px 16px;
  border:0;
  border-radius:6px;
  background:#ffca00;
  box-shadow:0 4px 14px rgba(15,23,42,.22);
  color:#313140;
  font-size:14px;
  font-weight:950;
  line-height:1.2;
  text-decoration:none;
  white-space:nowrap;
}
.ttGoogleMapsBtn:hover{
  color:#313140;
  filter:brightness(.98);
}
.ttGoogleMapsBtn:focus-visible{
  outline:3px solid rgba(245,115,23,.42);
  outline-offset:2px;
}
.ttGoogleMapsBtn svg{
  width:19px;
  height:19px;
  fill:none;
  stroke:currentColor;
  stroke-linecap:round;
  stroke-linejoin:round;
  stroke-width:1.9;
}
.ttGoogleMapsBtn[hidden]{display:none}
@media (max-width:520px){
  .ttGoogleMapsBtn{
    right:10px;
    bottom:26px;
    min-height:42px;
    padding:9px 13px;
    font-size:13px;
  }
}

.ttBooking{
  width: 100%;
  max-width: none;
  margin: 0 auto;
}
.ttBookingForm{
  display: flex;
  flex-direction: column;
  gap: 18px;
  width: 100%;
  margin-top: 20px;
}
.ttPackageSummary{
  border: 1px solid #d9e3ef;
  border-radius: 16px;
  background: #f8fbff;
  padding: 20px;
}
.ttPackageHead{
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 20px;
  padding-bottom: 16px;
  border-bottom: 1px solid #dfe7f1;
}
.ttPackageEyebrow{
  display: block;
  margin-bottom: 4px;
  color: #1d6fd6;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: .06em;
  text-transform: uppercase;
}
.ttPackageHead h2{
  margin: 0;
  color: #172033;
  font-size: 24px;
  line-height: 1.2;
}
.ttPackagePrice{
  flex: 0 0 auto;
  text-align: right;
}
.ttPackagePrice span{
  display: block;
  color: #5b6677;
  font-size: 12px;
  font-weight: 700;
}
.ttPackagePrice strong{
  display: block;
  margin-top: 3px;
  color: #13233b;
  font-size: 25px;
  line-height: 1.1;
}
.ttPackageGrid{
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px 18px;
  padding: 17px 0 14px;
}
.ttPackageFact span{
  display: block;
  margin-bottom: 3px;
  color: #687589;
  font-size: 12px;
  font-weight: 700;
}
.ttPackageFact strong{
  display: block;
  color: #172033;
  font-size: 14px;
  line-height: 1.35;
}
.ttPackageFoot{
  color: #59677a;
  font-size: 12px;
  line-height: 1.45;
}
.ttBookingProg{
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
  margin-bottom: 10px;
}
.ttBookingProgItem{
  position: relative;
  padding-top: 4px;
}
.ttBookingProgItem::before{
  content: "";
  position: absolute;
  left: 34px;
  right: 0;
  top: 18px;
  height: 2px;
  background: #d6dde8;
}
.ttBookingProgItem:last-child::before{
  display: none;
}
.ttBookingProgNum{
  position: relative;
  z-index: 1;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-weight: 800;
  font-size: 14px;
  border: 2px solid #d6dde8;
  color: #334155;
  background: #fff;
}
.ttBookingProgText{
  display: block;
  margin-top: 8px;
  color: #5b6677;
  font-size: 14px;
  font-weight: 700;
}
.ttBookingProgItem.is-active .ttBookingProgNum,
.ttBookingProgItem.is-done .ttBookingProgNum{
  border-color: #1d6fd6;
  background: #1d6fd6;
  color: #fff;
}
.ttBookingProgItem.is-done::before{
  background: #1d6fd6;
}
.ttBookingProgItem.is-active .ttBookingProgText{
  color: #111827;
}
.ttBookingStep{
  display: none;
}
.ttBookingStep.is-active{
  display: block;
  width: 100%;
}
.ttBookingTitle{
  margin: 0 0 10px;
  font-size: 35px;
  line-height: 1.1;
  font-weight: 700;
  color: #171a21;
}
.ttBookingHint{
  margin: 0 0 16px;
  padding: 14px 16px;
  border-radius: 12px;
  background: #eef3fa;
  color: #2b3648;
  font-size: 16px;
}
.ttFormGrid2{
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}
.ttField{
  display: block;
  margin: 0 0 14px;
}
.ttField > span{
  display: block;
  margin: 0 0 7px;
  font-size: 13px;
  color: #1f2937;
  font-weight: 800;
}
.ttField input,
.ttField textarea{
  width: 100%;
  height: 48px;
  border: 1px solid #c4cfdf;
  border-radius: 10px;
  padding: 0 13px;
  font-size: 22px;
  line-height: 1.2;
  color: #16243a;
  background: #fff;
}
.ttField input.ttDateInput{
  padding-right: 44px;
  background-image: url('/img/icons/hotel__date-icon.svg');
  background-repeat: no-repeat;
  background-position: right 13px center;
  background-size: 21px 21px;
  cursor: pointer;
}
.ttField textarea{
  min-height: 96px;
  height: auto;
  padding-top: 12px;
  padding-bottom: 12px;
  font-size: 15px;
  resize: vertical;
}
.ttField input:focus,
.ttField textarea:focus{
  outline: none;
  border-color: #1d6fd6;
  box-shadow: 0 0 0 3px rgba(29, 111, 214, .14);
}
.ttConsent{
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 12px;
  align-items: start;
  margin: 6px 0 14px;
}
.ttConsent p{
  margin: 0;
  font-size: 15px;
  line-height: 1.4;
  color: #253145;
}
.ttCheckbox{
  width: 30px;
  height: 30px;
  display: inline-block;
  position: relative;
}
.ttCheckbox input{
  position: absolute;
  inset: 0;
  opacity: 0;
  cursor: pointer;
}
.ttCheckbox span{
  position: absolute;
  inset: 0;
  border: 1px solid #7ca8e2;
  border-radius: 7px;
  background: #fff;
}
.ttCheckbox input:checked + span{
  background: #1d6fd6;
  border-color: #1d6fd6;
}
.ttCheckbox input:checked + span::after{
  content: "";
  position: absolute;
  left: 8px;
  top: 4px;
  width: 9px;
  height: 14px;
  border: solid #fff;
  border-width: 0 2px 2px 0;
  transform: rotate(45deg);
}
.ttBookingBtn{
  border: 0;
  border-radius: 10px;
  height: 52px;
  padding: 0 24px;
  background: #ffca00;
  color: #2d2d2d;
  font-size: 16px;
  font-weight: 900;
  cursor: pointer;
}
.ttBookingBtn[disabled]{
  background: #f2e7bf;
  color: #a3a9b6;
  cursor: not-allowed;
}
.ttBookingBtnGhost{
  background: #fff;
  color: #2a3850;
  border: 1px solid #c4cfdf;
}
.ttTravellersWrap{
  display: grid;
  gap: 14px;
}
.ttTravellerCard{
  border: 1px solid #d2dbe9;
  border-radius: 12px;
  background: #fff;
  padding: 14px;
  margin: 0;
}
.ttTravellerLegend{
  padding: 0 8px;
  font-size: 16px;
  font-weight: 800;
  color: #1f2937;
}
.ttGender{
  display: flex;
  gap: 12px;
  align-items: center;
  flex-wrap: wrap;
  margin-top: 4px;
}
.ttGender > span{
  font-size: 13px;
  font-weight: 800;
  color: #1f2937;
}
.ttGender label{
  display: inline-flex;
  gap: 6px;
  align-items: center;
  font-size: 14px;
  color: #1f2937;
}
.ttActions{
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
}
.ttOrderResult{
  margin-top: 10px;
  font-size: 14px;
  min-height: 20px;
}
.ttBookingSuccess{
  max-width: 760px;
  margin: 12px auto 24px;
  padding: 30px;
  border: 1px solid #bfe3c7;
  border-radius: 18px;
  background: #f4fcf6;
  text-align: center;
}
.ttBookingSuccessIcon{
  display: flex;
  align-items: center;
  justify-content: center;
  width: 58px;
  height: 58px;
  margin: 0 auto 14px;
  border-radius: 50%;
  background: #17833a;
  color: #fff;
  font-size: 32px;
  font-weight: 900;
}
.ttBookingSuccessOverline{
  margin: 0 0 5px;
  color: #18733a;
  font-size: 13px;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .05em;
}
.ttBookingSuccess h2{
  margin: 0 0 10px;
  color: #153220;
  font-size: 29px;
}
.ttBookingSuccessLead{
  margin: 0 auto 20px;
  max-width: 620px;
  color: #34483b;
  line-height: 1.5;
}
.ttBookingEmailStatus{
  margin: 0 0 20px;
  padding: 11px 14px;
  border-radius: 10px;
  font-size: 14px;
  line-height: 1.4;
}
.ttBookingEmailStatus.is-sent{
  background: #e2f6e7;
  color: #176634;
}
.ttBookingEmailStatus.is-warning{
  background: #fff4d6;
  color: #7a5200;
}
.ttBookingNextSteps{
  padding: 18px 20px;
  border-radius: 13px;
  background: #fff;
  text-align: left;
}
.ttBookingNextSteps h3{margin:0 0 10px;font-size:17px;color:#172033}
.ttBookingNextSteps ol{margin:0;padding-left:21px;color:#344054;line-height:1.5}
.ttBookingNextSteps li + li{margin-top:7px}
.ttBookingSuccessNote{margin:16px 0;color:#526052;font-size:13px}
.ttBookingExpired{
  margin: 4px 0;
  padding: 38px 24px 42px;
  border-radius: 16px;
  background: #fff;
  text-align: center;
}
.ttBookingExpiredIcon{
  display: flex;
  align-items: center;
  justify-content: center;
  width: 60px;
  height: 60px;
  margin: 0 auto 18px;
  border-radius: 50%;
  background: #fff5e7;
  color: #18202d;
  font-size: 29px;
  line-height: 1;
  font-weight: 500;
}
.ttBookingExpired h2{
  margin: 0 0 12px;
  color: #111827;
  font-size: 26px;
}
.ttBookingExpired > p{
  max-width: 820px;
  margin: 0 auto;
  color: #26354a;
  font-size: 18px;
  line-height: 1.55;
}
.ttBookingExpired .ttBookingExpiredNote{
  margin-top: 5px;
  color: #64748b;
  font-size: 14px;
}
.ttBookingExpired .ttBookingExpiredError{
  margin-top: 12px;
  color: #b42318;
  font-size: 14px;
  font-weight: 700;
}
.ttBookingExpiredBtn{
  min-height: 50px;
  margin-top: 22px;
  padding: 0 22px;
  border: 0;
  border-radius: 10px;
  background: #0865c9;
  color: #fff;
  font-size: 16px;
  font-weight: 900;
  cursor: pointer;
}
.ttBookingExpiredBtn:hover{background:#0758ae}
.ttBookingExpiredBtn[disabled]{opacity:.65;cursor:wait}
@media (max-width: 900px){
  .Cover_desktopLinks__zD_PL{display: none}
  .ttBookingTitle{
    font-size: 36px;
  }
  .ttPackageGrid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width: 720px){
  .ttBookingProg{
    grid-template-columns: repeat(2, minmax(0, 1fr));
    row-gap: 12px;
  }
  .ttBookingProgItem:nth-child(2)::before,
  .ttBookingProgItem:nth-child(4)::before{
    display: none;
  }
  .ttFormGrid2{
    grid-template-columns: 1fr;
  }
  .ttField input{
    font-size: 18px;
  }
  .ttBookingTitle{
    font-size: 30px;
  }
  .ttPackageSummary{padding:16px}
  .ttPackageHead{display:block}
  .ttPackagePrice{margin-top:14px;text-align:left}
  .ttPackageGrid{grid-template-columns:1fr}
  .ttBookingSuccess{padding:22px 16px}
  .ttBookingSuccess h2{font-size:24px}
  .ttBookingExpired{padding:30px 16px 34px}
  .ttBookingExpired > p{font-size:16px}
}

.ttReviewsList{
  display:grid;
  gap:16px;
}
.ttReviewCard{
  border:1px solid #9dc896;
  border-radius:0;
  background:#edfde6;
  padding:14px;
  box-shadow:none;
}
.ttReviewHead{
  display:flex;
  align-items:flex-start;
  justify-content:flex-start;
  gap:12px;
}
.ttReviewAuthorWrap{
  display:flex;
  align-items:center;
  gap:10px;
  min-width:0;
  flex:1 1 auto;
}
.ttReviewAuthorMeta{
  display:flex;
  flex-direction:column;
  gap:6px;
  min-width:0;
}
.ttReviewAvatar{
  display:none;
}
.ttReviewAuthor{
  font-size:inherit;
  line-height:1.25;
  font-weight:500;
  color:#0d1117;
}
.ttReviewRate{
  display:flex;
  align-items:center;
  justify-content:center;
  padding:11px 12px;
  border-radius:2px;
  background:#219106;
  border:0;
  color:#fff;
  font-family:poppinssemi,sans-serif;
  font-weight:700;
  font-size:18px;
  line-height:1;
  white-space:nowrap;
  margin-top:2px;
}
.ttReviewRate--5{background:#219106;color:#fff}
.ttReviewRate--4{background:#8bcf4b;color:#fff}
.ttReviewRate--3{background:#f4cf4f;color:#1f2937}
.ttReviewRate--2{background:#f39a3f;color:#fff}
.ttReviewRate--1{background:#e14b4b;color:#fff}
.ttReviewDate{
  margin:0;
  font-size:inherit;
  line-height:1.2;
  color:#525a65;
  display:flex;
  align-items:center;
  gap:10px;
}
/* .ttReviewDate::before{
  content:"";
  width:14px;
  height:14px;
  border:2px solid #9aa0a6;
  border-radius:50%;
  flex:0 0 14px;
} */
.ttReviewTitle{
  margin:18px 0 10px;
  font-size:24px;
  line-height:1.15;
  color:#0d1117;
}
.ttReviewText{
  margin:0;
  color:#1f2937;
  font-size:inherit;
  line-height:1.45;
}
.ttReviewPhotos{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:14px;
}
.ttReviewPhoto{
  display:block;
  width:120px;
  height:120px;
  object-fit:cover;
  border-radius:4px;
  border:0;
}
.ttReviewLink{
  display:inline-block;
  margin-top:12px;
  color:#06892b;
  font-weight:700;
}
.ttReviewLink:hover{text-decoration:underline}

@media (max-width: 700px){
  .ttReviewAuthor{font-size:inherit}
  .ttReviewDate{font-size:inherit}
  .ttReviewTitle{font-size:22px}
  .ttReviewText{font-size:inherit}
  .ttReviewRate{
    padding:9px 10px;
    font-size:16px;
  }
}

@media (max-width: 1100px){
  .offerTopGrid{grid-template-columns:1fr}
  .offerSliderStub{height:240px}
  .offerTopMetaTitle{font-size:18px}
  .offerInfoRow .fact__txt{font-size:13px}
  .offerSummaryTotal{font-size:20px}
  .ttPriceForecast__grid{grid-template-columns:1fr 1fr}
  .ttPriceForecast__cell--monitor{grid-column:1 / -1}
}
@media (max-width: 640px){
  .ttPriceForecast{padding:13px}
  .ttPriceForecast__head{flex-direction:column;gap:8px}
  .ttPriceForecast__head h2{font-size:18px}
  .ttPriceForecast__grid{grid-template-columns:1fr}
  .ttPriceForecast__cell--monitor{grid-column:auto}
}



/* Calendar */
.ttCalBtn{
  display:inline-flex;align-items:center;justify-content:center;
  width:38px;height:34px;border-radius:10px;border:1px solid #eaecf0;
  background:#fff;cursor:pointer
}
.ttCalBtn:hover{background:#f8fafc}
.ttCalBtn[aria-disabled="true"]{opacity:.45;pointer-events:none}
.ttCalMonth{font-weight:800}
.ttCalCard{background:#fff;border:1px solid #e7e9f2;border-radius:14px;box-shadow:0 1px 6px rgba(0,0,0,.04)}
.ttCalTableWrap{overflow:auto}
.ttCalTable{border-collapse:separate;border-spacing:0;width:100%;min-width:980px}
.ttCalTable th,.ttCalTable td{border-bottom:1px solid #eef0f7;border-right:1px solid #eef0f7;padding:10px 10px;vertical-align:middle}
.ttCalTable th:first-child,.ttCalTable td:first-child{border-left:1px solid #eef0f7}
.ttCalTable tr:first-child th{border-top:1px solid #eef0f7}
.ttCalTable th{background:#fbfbfd;position:sticky;top:0;z-index:5;font-size:12px;color:#344054;text-align:center}
.ttCalRowHdr{font-weight:500;text-align:left;background:#fbfbfd;position:sticky;left:0;z-index:4;min-width:80px}
.ttCalCell{
  display:flex;
  flex-direction:column;
  gap:4px;
  align-items:center;
  justify-content:center;
  min-height:64px;
  padding:8px 10px;
  border:1px solid #d9dde6;
  border-radius:8px;
  background:#fff;
  text-decoration:none;
  color:inherit;
  transition:background-color .16s ease,border-color .16s ease,box-shadow .16s ease;
}
.ttCalCell--click{cursor:pointer}
.ttCalCell--click:hover{
  background:#f3f4f6;
  border-color:#cfd5df;
}
.ttCalCell--best{
  background:#e7f4e8;
  border-color:#c5dec8;
}
.ttCalCell--best.ttCalCell--click:hover{
  background:#dfeee1;
}
.ttCalCell--current{
  border-color:#ff7a00;
  box-shadow:inset 0 0 0 1px #ff7a00;
}
.ttCalPrice{font-weight:700;white-space:nowrap}
.ttCalHint{font-size:12px;color:#667085}
.ttCalTag{font-size:11px;white-space:nowrap;padding:2px 6px;border-radius:999px;border:1px solid #eaecf0;background:#f8fafc;color:#475467}
.ttCalEmpty{color:#c0c6d4; text-align: center;}

/* Calendar2 */
.ttCal2Layout{
  display:grid;
  grid-template-columns:200px 1fr;
  gap:12px;
  align-items:start;
}
.ttCal2MealFilter{
  display:grid;
  gap:5px;
  min-width:260px;
  color:#475467;
  font-size:13px;
  font-weight:700;
}
.ttCal2MealFilter select{
  width:100%;
  min-height:42px;
  padding:8px 38px 8px 12px;
  border:1px solid #cbd5e1;
  border-radius:10px;
  background:#fff;
  color:#111827;
  font:inherit;
  font-weight:600;
  cursor:pointer;
}
.ttCal2MealFilter select:focus{
  outline:2px solid rgba(59,130,246,.2);
  border-color:#3b82f6;
}
.ttCal2MealFilter select:disabled{
  opacity:.6;
  cursor:wait;
}
.ttCal2Tabs{
  display:grid;
  justify-content: stretch;
  gap:8px;
}
.ttCal2Tab{
  border:1px solid #eaecf0;
  background:#fff;
  color:#1f2937;
  border-radius:10px;
  padding:10px 12px;
  font-weight:800;
  cursor:pointer;
  text-align:left;
}
.ttCal2Tab.is-active{
  border-color:#f59e0b;
  color:#f97316;
  background:#fffbeb;
}
.ttCal2List{
  display:grid;
  gap:8px;
}
.ttCal2Item{
  display:grid;
  grid-template-columns:minmax(520px,1fr) auto auto;
  align-items:center;
  gap:12px;
  padding:10px 12px;
  border:1px solid #eaecf0;
  border-radius:10px;
  background:#fff;
  color:#111827;
  text-decoration:none;
}
.ttCal2Item:hover{
  background:#f8fafc;
}
.ttCal2Item.is-current{
  border-color:#ff7a00;
  box-shadow:inset 0 0 0 1px #ff7a00;
}
.ttCal2Item.is-best{
  background:#e7f4e8;
  border-color:#c5dec8;
}
.ttCal2Left{
  display:grid;
  grid-template-columns:100px 24px 64px minmax(95px,1fr) minmax(0,1fr) minmax(0,1fr);
  align-items:center;
  gap:12px;
  min-width:0;
}
.ttCal2Date{
  font-weight:700;
}
.ttCal2Dow{
  color:#64748b;
  min-width:22px;
  text-transform:lowercase;
}
.ttCal2Duration{
  color:#111827;
}
.ttCal2Op{
  color:#475467;
  text-align:left;
}
.ttCal2Airport{
  color:#475467;
  text-align:left;
  overflow-wrap:anywhere;
}
.ttCal2Meal{
  color:#475467;
  text-align:left;
}
.ttCal2MobileMeta{
  display:none;
}
.ttCal2Price{
  white-space:nowrap;
  font-weight:900;
}
.ttCal2Arrow{
  color:#98a2b3;
  font-size:20px;
  line-height:1;
}
.ttCal2Empty{
  padding:14px;
  border:1px dashed #d0d5dd;
  border-radius:10px;
  color:#667085;
  background:#fff;
}
.ttCal2Err{
  color:#b00020;
}
.ttCalNotice{
  padding:20px 22px;
  border:1px solid #f3d69a;
  border-radius:12px;
  background:#fffbf2;
  color:#785621;
  line-height:1.6;
}
.ttCalNotice__title{
  display:block;
  color:#684719;
  font-size:16px;
  font-weight:700;
}
.ttCalNotice__text{
  margin:6px 0 0;
  font-size:14px;
}

@media (max-width: 900px){
  .ttCal2MealFilter{
    width:100%;
    min-width:0;
  }
  .ttCal2Layout{
    grid-template-columns:1fr;
  }
  .ttCal2Tabs{
    display:flex;
    flex-wrap:wrap;
  }
  .ttCal2Item{
    grid-template-columns:1fr;
    gap:6px;
  }
  .ttCal2Left{
    grid-template-columns:1fr;
    gap:4px;
  }
  .ttCal2Arrow{
    display:none;
  }
}

@media (max-width: 700px){
  .ttCal2MealFilter select{
    font-size:16px;
  }
  .ttCal2Tabs{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:8px;
  }
  .ttCal2Tab{
    min-width:0;
    padding:10px 8px;
    font-size:14px;
    text-align:center;
  }
  .ttCal2List{
    min-width:0;
  }
  .ttCal2Item{
    width:100%;
    min-width:0;
    box-sizing:border-box;
    grid-template-columns:minmax(0,1fr) auto;
    align-items:center;
    gap:5px 10px;
    padding:10px 12px;
    overflow:hidden;
  }
  .ttCal2Left{
    display:contents;
    min-width:0;
  }
  .ttCal2Date{
    display:block;
    grid-column:1;
    grid-row:1;
    min-width:0;
    font-size:15px;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
  }
  .ttCal2Dow,
  .ttCal2Duration,
  .ttCal2Airport,
  .ttCal2Op,
  .ttCal2Meal,
  .ttCal2Arrow{
    display:none;
  }
  .ttCal2MobileMeta{
    display:block;
    grid-column:1 / -1;
    grid-row:2;
    min-width:0;
    font-size:13px;
    line-height:1.35;
    color:#64748b;
    white-space:normal;
    overflow-wrap:anywhere;
  }
  .ttCal2Left > .ttCal2Airport{
    display:none;
  }
  .ttCal2Price{
    grid-column:2;
    grid-row:1;
    white-space:nowrap;
    font-size:16px;
    line-height:1.1;
  }
}



.benefits {/*  padding: 60px 0; */ }
.benefits__container { max-width: 1200px; margin: 0 auto; padding: 0 16px; }

.benefits__title {
  text-align: center;
  font-size: 28px;
  line-height: 1.2;
  margin: 0 0 32px;
}

.benefits__grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 24px;
}

.card {
  background: #f6f6f7;
  border-radius: 16px;
  padding: 28px 22px;
  text-align: center;
}

.card__icon img { width: 56px; height: 56px; object-fit: contain; }
.card__title { margin: 14px 0 10px; font-size: 18px; line-height: 1.2; }
.card__text { margin: 0 0 18px; font-size: 15px; line-height: 1.4; color: #4a4a4a; }

.card__widget { margin: 10px 0 0; display: flex; justify-content: center; }

.btn {
  display: inline-block;
  padding: 12px 22px;
  border-radius: 999px;
  color: #fff;
  text-decoration: none;
  background: linear-gradient(90deg, #1476d4, #7a3a9c);
  font-size: 13px;
  font-weight: 600;
}

/* адаптив */
@media (max-width: 960px) {
  .benefits__grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 480px) {
  .benefits__grid { grid-template-columns: 1fr; }
}

.safety {
  padding: 50px 0;
  background: #305b95 url(/img/back.png) repeat-x;
}

.safety__container {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 16px;
}

.safety__header {
  display: flex;
  align-items: center;
  gap: 14px;
  color: #fff;
  margin-bottom: 18px;
}

.safety__badge {
  width: 52px;
  height: 52px;
  object-fit: contain;
}

.safety__title {
  margin: 0;
  font-size: 30px;
  line-height: 1.2;
  font-weight: 700;
}

.safety__subtitle {
  margin: 6px 0 0;
  font-size: 18px;
  opacity: 0.95;
}

.safety__card {
  background: #fff;
  border-radius: 18px;
  padding: 26px;
  display: grid;
  grid-template-columns: 1.2fr 0.8fr;
  gap: 18px;
  align-items: center;
}

.safety__content p { margin: 0 0 12px; }
.safety__list { margin: 0 0 14px; padding-left: 18px; }
.safety__list li { margin: 6px 0; }

.safety__note { margin-top: 10px; }

.safety__media img {
  width: 100%;
  height: auto;
  display: block;
}


/* адаптив */
@media (max-width: 960px) {
  .safety__card { grid-template-columns: 1fr; }
  .safety__media { order: 2; }
}
@media (max-width: 480px) {
  .safety__title { font-size: 24px; }
  .safety__subtitle { font-size: 16px; }
}

.ttStaleToast{
  position:fixed;
  right:18px;
  bottom:18px;
  z-index:10060;
  width:min(420px,calc(100vw - 24px));
  background:#fff7ed;
  border:1px solid #fed7aa;
  border-radius:12px;
  box-shadow:0 14px 35px rgba(15,23,42,.22);
  padding:12px 12px 10px;
  opacity:0;
  transform:translateY(14px);
  pointer-events:none;
  transition:opacity .2s ease,transform .2s ease;
}
.ttStaleToast.is-visible{
  opacity:1;
  transform:translateY(0);
  pointer-events:auto;
}
.ttStaleToast__title{
  font-size:14px;
  font-weight:800;
  color:#9a3412;
  margin:0 0 6px;
}
.ttStaleToast__text{
  font-size:13px;
  color:#7c2d12;
  margin:0 0 10px;
}
.ttStaleToast__btn{
  border:0;
  border-radius:8px;
  background:#ea580c;
  color:#fff;
  font-size:13px;
  font-weight:700;
  padding:8px 12px;
  cursor:pointer;
}
.ttStaleToast__btn:hover{ background:#c2410c; }

.ttWordmark{display:inline-flex;align-items:baseline;white-space:nowrap;color:#fff;font-size:36px;font-weight:800;letter-spacing:-1px;line-height:1.2;text-decoration:none}
.ttWordmark>span{color:#fede85}
.ttWordmark>small{font-size:.52em;letter-spacing:0;margin-left:2px;color:inherit}
.ttWordmark:hover{color:#fff}
.ttWordmark--light,.ttWordmark--light:hover{color:#1b3551}
.ttWordmark--light>span{color:#9b6b00}
.footer__wordmark.ttWordmark{font-size:29px}
.mobMenu__logo.ttWordmark{font-size:28px}
.requestModal__logo{text-align:center;text-decoration:none}
.requestModal__logo .ttWordmark{font-size:32px}
.header .logo .brandLogo{display:inline-flex;flex-direction:column;align-items:flex-start;max-width:100%;text-decoration:none}
@media(max-width:767px){.brandLogo .ttWordmark{font-size:26px}}
.brandLogo__tagline{display:block;margin-top:5px;color:#fff;font-size:16px;line-height:1.35;font-weight:500}
@media(max-width:767px){
  .header .logo{height:80px}
  .brandLogo__tagline{max-width:180px;font-size:11px;margin-top:4px}
}

/* Homepage: agency introduction above the hot-offer listings. */
.homeIntro{max-width:1232px;margin:28px auto;padding:28px;box-sizing:border-box;background:#fff;border:1px solid #dbe2ea;border-radius:14px;color:#244b73}
.homeIntro p{margin:0 0 14px;line-height:1.65;font-size:15px}
.homeIntro .homeIntro__eyebrow{color:#346395;font-size:12px;font-weight:700;letter-spacing:.07em;margin-bottom:8px}
.homeIntro h2{margin:0 0 12px;color:#17175c;font-size:28px;line-height:1.25}
.homeIntro__benefits{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin:22px 0 18px}
.homeIntro__benefits>div{border-top:3px solid #ffda65;padding-top:14px}
.homeIntro h3{margin:0 0 10px;font-size:18px;line-height:1.4;color:#17175c}
.homeIntro__benefits p{margin:0}
.homeIntro a{color:#185caa;text-decoration:underline;text-underline-offset:3px}
.homeIntro a:hover{color:#17175c}
.homeIntro__contact{display:flex;align-items:center;justify-content:space-between;gap:20px;background:#f2f7fc;border-radius:8px;padding:18px}
.homeIntro__contact p{margin:0;flex:1}
.homeIntro__contact strong{display:block;color:#17175c}
.homeIntro__button{border:1px solid #fff;border-radius:8px;background:#315f96;color:#fff;padding:13px 18px;font:inherit;font-weight:700;cursor:pointer;line-height:1.4;max-width:100%}
.homeIntro__button:hover{background:#244b73}
.homeIntro__button:focus-visible{outline:3px solid #d8a400;outline-offset:3px}
@media(max-width:1280px){.homeIntro{margin:24px 14px}}
@media(max-width:760px){
  .homeIntro{padding:20px;margin:20px 14px}
  .homeIntro h2{font-size:24px}
  .homeIntro__benefits{grid-template-columns:1fr;gap:16px;margin:18px 0}
  .homeIntro__contact{align-items:stretch;flex-direction:column;gap:14px;padding:16px}
}
@media (max-width: 640px){
  .ttStaleToast{
    left:12px;
    right:12px;
    bottom:12px;
    width:auto;
  }
}
