:root{
  --bg:#0f1115;
  --text:#f4f6fb;
  --muted:#d0d4df;
  --line:rgba(255,255,255,.08);
  --accent:#3fa98c;
  --shadow:0 20px 60px rgba(0,0,0,.45);
  --radius:18px;
}

*{box-sizing:border-box}
html,body{margin:0;padding:0}

body{
  font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;
  background:
    linear-gradient(180deg,rgba(11,11,12,.82),rgba(11,11,12,.92)),
    url("../img/bg.webp") center/cover fixed no-repeat,
    radial-gradient(1000px 600px at 10% -10%,rgba(34,197,94,.18),transparent 55%),
    radial-gradient(900px 700px at 90% 0%,rgba(74,222,128,.14),transparent 60%),
    var(--bg);
  color:var(--text);
  line-height:1.5;
}

a{color:inherit;text-decoration:none}
.container{max-width:1120px;margin:0 auto;padding:0 18px}

/* ================= NAV ================= */

.nav{
  position:sticky;
  top:0;
  z-index:50;
  backdrop-filter:blur(14px);
  background:rgba(11,11,12,.60);
  border-bottom:1px solid var(--line);
}

.nav-inner{
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:14px 0;
  gap:14px;
  flex-wrap:nowrap; /* важно: стабильность */
}

.brand{
  display:flex;
  align-items:center;
  gap:12px;
  flex:0 0 auto;
  min-width:260px; /* чтобы логотип не прыгал */
  white-space:nowrap;
}

.brand img{
  width:60px;
  height:60px;
  border-radius:10px;
  background:#fff;
}

.brand .name{font-weight:700;letter-spacing:.2px}
.brand .sub{
  font-size:12px;
  color:var(--muted);
  white-space:nowrap;
  display:block;
  min-width:190px; /* стабилизация RU/EN/AM */
}

.actions{
  display:flex;
  align-items:center;
  gap:10px;
  justify-content:flex-end;
  flex-wrap:nowrap;    /* важно: не прыгать */
  white-space:nowrap;  /* важно */
  flex:1 1 auto;
}

.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  padding:10px 14px;
  border-radius:14px;
  border:1px solid var(--line);
  background:rgba(255,255,255,.04);
  color:var(--text);
  font-weight:600;
  transition:transform .12s ease,background .12s ease,border-color .12s ease;
}

.btn:hover{
  transform:translateY(-1px);
  background:rgba(255,255,255,.07);
  border-color:rgba(255,255,255,.18);
}

.btn.primary{
  background:linear-gradient(135deg,rgba(63,169,140,.25),rgba(63,169,140,.12));
  border-color:rgba(63,169,140,.6);
}

.btn.primary:hover{
  background:linear-gradient(135deg,rgba(63,169,140,.32),rgba(63,169,140,.18));
  border-color:rgba(63,169,140,.8);
}


/* брендовые кнопки контакта (в стиле сайта) */
.btn.whatsapp{
  background:linear-gradient(135deg, rgba(37,211,102,.22), rgba(37,211,102,.10));
  border-color:rgba(37,211,102,.72);
  color:#eafff2;
}
.btn.whatsapp:hover{
  background:linear-gradient(135deg, rgba(37,211,102,.30), rgba(37,211,102,.14));
  border-color:rgba(37,211,102,.92);
}

.btn.telegram{
  background:linear-gradient(135deg, rgba(34,158,217,.22), rgba(34,158,217,.10));
  border-color:rgba(34,158,217,.72);
  color:#ecf8ff;
}
.btn.telegram:hover{
  background:linear-gradient(135deg, rgba(34,158,217,.30), rgba(34,158,217,.14));
  border-color:rgba(34,158,217,.92);
}

.btn.email{
  background:linear-gradient(135deg, rgba(160,160,170,.18), rgba(160,160,170,.08));
  border-color:rgba(180,180,195,.55);
  color:var(--text);
}
.btn.email:hover{
  background:linear-gradient(135deg, rgba(160,160,170,.24), rgba(160,160,170,.10));
  border-color:rgba(210,210,225,.70);
}

.btn.small{padding:8px 12px;border-radius:12px;font-size:14px}

/* кнопки языка */
.panel2{
  border:1px solid var(--line);
  background:rgba(255,255,255,.03);
  border-radius:var(--radius);
  padding:14px;
  color:#fff;
  margin-left:2px;
  cursor:pointer;
}

.button-group{
  margin-left:15px;
  display:flex;
  gap:6px;
  flex:0 0 150px; /* фикс место под языки */
  white-space:nowrap;
}

/* На мобилке разрешаем перенос (чтобы не ломало) */
@media (max-width:980px){
  .nav-inner{flex-wrap:wrap}
  .button-group{flex:0 0 auto}
  .brand{min-width:0}
  .brand .sub{min-width:0}
  .actions{flex-wrap:wrap;white-space:normal}
}

/* ================= LAYOUT / SECTIONS ================= */

.hero{padding:46px 0 22px}
.hero-grid{display:grid;grid-template-columns:1.3fr .9fr;gap:18px;align-items:stretch}
@media (max-width:980px){.hero-grid{grid-template-columns:1fr}}

.h-card{
  border:1px solid var(--line);
  background:rgba(255,255,255,.03);
  border-radius:var(--radius);
  overflow:hidden;
  box-shadow:var(--shadow);
}

.h-card.pad{padding:18px}
.kicker{color:var(--accent);font-weight:700;letter-spacing:.4px;font-size:12px;text-transform:uppercase}

h1{margin:.35rem 0 0;font-size:44px;line-height:1.06}
@media (max-width:540px){h1{font-size:34px}}

.lead{margin:14px 0 0;color:var(--muted);font-size:16px;max-width:58ch}

.hero-photos{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:10px}
.hero-photos img{width:100%;height:201.93px;object-fit:cover;border-radius:16px;border:1px solid var(--line)}
@media (max-width:540px){.hero-photos img{height:190px}}

.badges{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}
.badge{padding:8px 10px;border-radius:999px;border:1px solid var(--line);background:rgba(255,255,255,.03);color:var(--muted);font-size:13px}

.section{padding:22px 0}

.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
@media (max-width:980px){.grid-3{grid-template-columns:repeat(2,1fr)}}
@media (max-width:640px){.grid-3{grid-template-columns:1fr}}

.card{border:1px solid var(--line);background:rgba(255,255,255,.03);border-radius:var(--radius);overflow:hidden}
.card.pad{padding:14px}
.muted{color:var(--muted);font-size:14px}

.apts{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
@media (max-width:980px){.apts{grid-template-columns:repeat(2,1fr)}}
@media (max-width:640px){.apts{grid-template-columns:1fr}}

.apt{border:1px solid var(--line);background:rgba(255,255,255,.03);border-radius:var(--radius);overflow:hidden;display:flex;flex-direction:column}
.apt img{width:100%;height:190px;object-fit:cover;border-bottom:1px solid var(--line)}
.apt .p{padding:14px;display:flex;flex-direction:column;gap:10px;flex:1}

.row{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}
.price{font-weight:800}
.tag{font-size:12px;color:var(--muted);border:1px solid var(--line);padding:6px 9px;border-radius:999px;display:inline-flex;align-items:center;gap:8px}

.split{display:grid;grid-template-columns:1.1fr .9fr;gap:14px;align-items:start}
@media (max-width:980px){.split{grid-template-columns:1fr}}

.panel{border:1px solid var(--line);background:rgba(255,255,255,.03);border-radius:var(--radius);padding:14px}
.panel h2{margin:0 0 10px;font-size:20px}

.list{margin:0;padding-left:18px;color:var(--muted)}
.small{color:var(--muted);font-size:13px}
.hr{height:1px;background:var(--line);margin:14px 0}

.form{display:grid;grid-template-columns:1fr 1fr;gap:10px}
@media (max-width:640px){.form{grid-template-columns:1fr}}

.field{display:flex;flex-direction:column;gap:6px}
label{font-size:13px;color:var(--muted)}

input,select,textarea{
  background:rgba(0,0,0,.25);
  border:1px solid var(--line);
  border-radius:14px;
  padding:10px 12px;
  color:var(--text);
  outline:none;
}

textarea{min-height:110px;resize:vertical}

.notice{
  border:1px solid rgba(74,222,128,.35);
  background:rgba(74,222,128,.08);
  padding:12px;
  border-radius:14px;
  color:var(--text);
}

.warn{
  border:1px solid rgba(244,63,94,.35);
  background:rgba(244,63,94,.08);
  padding:12px;
  border-radius:14px;
  color:var(--text);
}

.footer{
  padding:26px 0 40px;
  border-top:1px solid var(--line);
  margin-top:18px;
  color:var(--muted);
  font-size:14px;
}

.pills{display:flex;flex-wrap:wrap;gap:10px}
.pill{border:1px solid var(--line);border-radius:999px;padding:8px 10px;background:rgba(255,255,255,.03);font-size:13px}

.disabled{opacity:.55;pointer-events:none}

/* ================= GALLERY SLIDER (3 visible) ================= */

.gallery-slider{
  display:grid;
  grid-template-columns:44px 1fr 44px;
  gap:10px;
  align-items:center;
}

.gtrack-wrap{
  overflow:hidden;
  border-radius:16px;
}

.gtrack{
  display:flex;
  gap:10px;
  transition:transform .25s ease;
  will-change:transform;
}

.gitem{
  flex:0 0 calc((100% - 20px) / 3); /* 3 visible */
}

.gitem img{
  width:100%;
  height:180px;
  object-fit:cover;
  border-radius:16px;
  border:1px solid var(--line);
  cursor:zoom-in;
}

.gbtn{
  width:44px;
  height:44px;
  border-radius:14px;
  border:1px solid var(--line);
  background:rgba(255,255,255,.04);
  color:var(--text);
  font-size:28px;
  line-height:1;
  display:flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
  user-select:none;
}

.gbtn:hover{
  background:rgba(255,255,255,.07);
  border-color:rgba(255,255,255,.18);
}

.gbtn:disabled{
  opacity:.45;
  cursor:not-allowed;
}

@media (max-width:980px){
  .gitem{flex-basis:calc((100% - 10px) / 2)}
  .gitem img{height:200px}
}

@media (max-width:520px){
  .gallery-slider{grid-template-columns:40px 1fr 40px}
  .gbtn{width:40px;height:40px;border-radius:12px}
  .gitem{flex-basis:100%}
  .gitem img{height:220px}
}

/* ================= LIGHTBOX (lb) ================= */

.lb{
  position:fixed;
  inset:0;
  background:rgba(0,0,0,.90);
  display:flex;
  align-items:center;
  justify-content:center;
  opacity:0;
  visibility:hidden;
  transition:opacity .18s ease;
  z-index:99999; /* поверх sticky nav */
}

.lb.active{
  opacity:1;
  visibility:visible;
}

.lb__img{
  max-width:92vw;
  max-height:92vh;
  border-radius:18px;
  border:1px solid rgba(255,255,255,.12);
  box-shadow:0 20px 60px rgba(0,0,0,.65);
  cursor:zoom-out;
  user-select:none;
  -webkit-user-drag:none;
}

.lb__btn{
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  width:46px;
  height:46px;
  border-radius:14px;
  border:1px solid rgba(255,255,255,.18);
  background:rgba(255,255,255,.08);
  color:#fff;
  font-size:22px;
  font-weight:900;
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:center;
  transition:transform .12s ease, background .12s ease;
}

.lb__btn:hover{
  transform:translateY(-50%) scale(1.03);
  background:rgba(255,255,255,.12);
}

.lb__btn:disabled{
  opacity:.35;
  cursor:default;
  pointer-events:none;
}

.lb__prev{left:14px}
.lb__next{right:14px}

.lb__close{
  position:absolute;
  top:14px;
  right:14px;
  width:44px;
  height:44px;
  border-radius:14px;
  border:1px solid rgba(255,255,255,.18);
  background:rgba(255,255,255,.08);
  color:#fff;
  font-size:22px;
  font-weight:900;
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:center;
}

.lb__cap{
  position:absolute;
  bottom:14px;
  left:50%;
  transform:translateX(-50%);
  padding:8px 12px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.14);
  background:rgba(0,0,0,.35);
  color:#fff;
  font-size:13px;
}

@media (max-width:520px){
  .lb__btn{width:42px;height:42px;border-radius:12px}
  .lb__prev{left:10px}
  .lb__next{right:10px}
  .lb__close{width:42px;height:42px;border-radius:12px}
}
/* контейнер с кнопками под картой */
.panel .btn.small{
  padding:10px 14px;
  border-radius:12px;
  font-weight:600;
  text-decoration:none;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  transition:
  background-color .15s ease,
  box-shadow .15s ease,
  transform .1s ease;
}

/* первая кнопка — Google Maps */
.panel .btn.small[href*="google.com/maps"]{
  background:#fff;
  color:#1f1f1f;
  border:1px solid #dadce0;
  box-shadow:0 1px 2px rgba(0,0,0,.08);
}

.panel .btn.small[href*="google.com/maps"]:hover{
  box-shadow:0 3px 8px rgba(0,0,0,.15);
}

.panel .btn.small[href*="google.com/maps"]:active{
  transform:translateY(1px);
}

/* вторая кнопка — Яндекс */
.panel .btn.small[href*="yandex"]{
  background:#FFDB4D;
  color:#111;
  border:1px solid rgba(0,0,0,.2);
  box-shadow:0 1px 2px rgba(0,0,0,.12);
}

.panel .btn.small[href*="yandex"]:hover{
  background:#ffd633;
  box-shadow:0 3px 8px rgba(0,0,0,.18);
}

.panel .btn.small[href*="yandex"]:active{
  transform:translateY(1px);
}
/* Google кнопка — разноцветный текст */
.panel .btn.small[href*="google.com/maps"]{
  background:#fff;
  border:1px solid #dadce0;
  box-shadow:0 1px 2px rgba(0,0,0,.08);
  font-weight:700;
  position:relative;
}

/* убираем обычный цвет текста */
.panel .btn.small[href*="google.com/maps"]{
  color:transparent;
}

/* рисуем цветной текст */
.panel .btn.small[href*="google.com/maps"]::before{
  content:"Google Maps";
  background:
    linear-gradient(
      90deg,
      #4285F4 0%,   /* G — синий */
      #DB4437 20%, /* o — красный */
      #F4B400 40%, /* o — жёлтый */
      #4285F4 60%, /* g — синий */
      #0F9D58 80%, /* l — зелёный */
      #DB4437 100% /* e — красный */
    );
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
}

/* hover эффект */
.panel .btn.small[href*="google.com/maps"]:hover{
  box-shadow:0 3px 8px rgba(0,0,0,.15);
}

.panel .btn.small[href*="google.com/maps"]:active{
  transform:translateY(1px);
}
/* общий стиль кнопок под картой */
.panel .btn.small{
  min-height:44px;
  padding:10px 16px;
  border-radius:12px;
  font-weight:700;
  text-decoration:none;
  display:flex;
  align-items:center;
  justify-content:center;
  flex:1 1 220px; /* одинаковая ширина, переносятся на мобилках */
  transition:
    background-color .15s ease,
    box-shadow .15s ease,
    transform .1s ease;
}

/* ===================== */
/* GOOGLE — разноцветный */
/* ===================== */
.panel .btn.small[href*="goo.gl"],
.panel .btn.small[href*="google"]{
  background:#fff;
  border:1px solid #dadce0;
  box-shadow:0 1px 2px rgba(0,0,0,.08);
  color:transparent;
}

.panel .btn.small[href*="goo.gl"]::before,
.panel .btn.small[href*="google"]::before{
  content:"Google Maps";
  background:linear-gradient(
    90deg,
    #4285F4 0%,
    #DB4437 20%,
    #F4B400 40%,
    #4285F4 60%,
    #0F9D58 80%,
    #DB4437 100%
  );
  align-items: center;
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
}

.panel .btn.small[href*="goo.gl"]:hover,
.panel .btn.small[href*="google"]:hover{
  box-shadow:0 3px 8px rgba(0,0,0,.15);
}

/* ================= */
/* YANDEX — красный */
/* ================= */
.panel .btn.small[href*="yandex"]{
  background:#FFDB4D;
  border:1px solid rgba(0,0,0,.2);
  color:#E21A1A; /* фирменный красный */
  box-shadow:0 1px 2px rgba(0,0,0,.12);
}

.panel .btn.small[href*="yandex"]:hover{
  background:#ffd633;
  box-shadow:0 3px 8px rgba(0,0,0,.18);
}

/* нажатие */
.panel .btn.small:active{
  transform:translateY(1px);
}
.btn.small{
  display: flex;
}

.busy{background:#e74c3c!important;color:white}

/* BUSY_UI_V1 */

.busy-warning{font-size:12px;color:#e74c3c}
button:disabled, .btn:disabled, input[type=submit]:disabled{opacity:.5;cursor:not-allowed}


/* BUSY_UI_REMOTE_V1 */
.busy-warning{font-size:12px;color:#e74c3c}
button:disabled, .btn:disabled, input[type=submit]:disabled{opacity:.5;cursor:not-allowed}


/* RESERVATIONS_UI_V1 */
.busy-warning{font-size:12px;color:#e74c3c}
button:disabled, .btn:disabled, input[type=submit]:disabled{opacity:.5;cursor:not-allowed}



/* Home availability search */
.search-box{background:rgba(255,255,255,.03);border:1px solid var(--line);border-radius:16px;padding:16px;margin:14px 0 18px}

/* Blue highlight variant (matches site style) */
.search-box--blue{
  border-color:rgba(120,170,255,.35);
  background:
    radial-gradient(900px 260px at 0% 0%, rgba(72,140,255,.22), rgba(0,0,0,0)),
    radial-gradient(700px 220px at 100% 100%, rgba(68,200,255,.14), rgba(0,0,0,0)),
    rgba(255,255,255,.03);
  box-shadow:0 18px 40px rgba(10,30,80,.22);
}

/* Reset button (grey) */
.btn.btn-reset{
  background:rgba(255,255,255,.10);
  border-color:rgba(255,255,255,.18);
  color:#e9ecf6;
}
.btn.btn-reset:hover{background:rgba(255,255,255,.16)}

/* Booking-like guests picker */
.guests-field{position:relative}
.guests-btn{
  width:100%;
  min-width:180px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  background:rgba(255,255,255,.04);
  border:1px solid var(--line);
  color:var(--text);
  border-radius:12px;
  padding:10px 12px;
  cursor:pointer;
}
.guests-btn .chev{opacity:.75}
.guests-btn:focus{outline:2px solid rgba(90,170,255,.45);outline-offset:2px}

.guests-pop{
  position:absolute;
  z-index:30;
  top:100%;
  left:0;
  margin-top:8px;
  width:min(360px, 92vw);
  border-radius:16px;
  border:1px solid rgba(120,170,255,.35);
  background:
    radial-gradient(900px 260px at 0% 0%, rgba(72,140,255,.18), rgba(0,0,0,0)),
    rgba(10,12,16,.92);
  box-shadow:0 18px 45px rgba(0,0,0,.45);
  padding:12px;
  backdrop-filter: blur(10px);
}
.guests-pop .row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 8px;border-top:1px solid rgba(255,255,255,.08)}
.guests-pop .row:first-child{border-top:0}
.guests-pop .t{font-weight:700}
.guests-pop .s{font-size:12px;color:var(--muted);margin-top:2px}
.guests-pop .step{display:flex;align-items:center;gap:10px}
.guests-pop .n{min-width:22px;text-align:center;font-weight:800}
.step-btn{
  width:34px;height:34px;
  border-radius:12px;
  border:1px solid rgba(255,255,255,.16);
  background:rgba(255,255,255,.06);
  color:var(--text);
  cursor:pointer;
}
.step-btn:hover{background:rgba(255,255,255,.10)}
.step-btn:disabled{opacity:.45;cursor:not-allowed}
.guests-pop .hint{padding:8px 8px 0;color:var(--muted);font-size:12px}
.guests-done{
  margin-top:10px;
  width:100%;
  border-radius:12px;
  padding:10px 12px;
  border:1px solid rgba(63,169,140,.35);
  background:rgba(63,169,140,.18);
  color:#eafff7;
  font-weight:800;
  cursor:pointer;
}
.guests-done:hover{background:rgba(63,169,140,.24)}

/* Motion polish */
html{scroll-behavior:smooth}
.btn, .apt-card, .card{transition:transform .16s ease, box-shadow .16s ease, background .16s ease, border-color .16s ease}
.btn:hover{transform:translateY(-1px)}
.apt-card:hover{transform:translateY(-2px);box-shadow:0 14px 34px rgba(0,0,0,.35)}

@media (max-width:640px){
  .search-form input,.search-form select{min-width:100%}
  .guests-btn{min-width:100%}
  .search-form{gap:10px}
}

/* Home search results (shown above full apartment list) */
.home-results{margin-top:12px}
.home-results-title{font-weight:800;margin:8px 0 10px}
.search-title{font-weight:700;margin-bottom:10px}
.search-form{display:flex;gap:12px;flex-wrap:wrap;align-items:flex-end}
.search-form .field{display:flex;flex-direction:column;gap:6px}
.search-form label{font-size:12px;color:var(--muted)}
.search-form input,.search-form select{background:rgba(255,255,255,.04);border:1px solid var(--line);color:var(--text);border-radius:12px;padding:10px 12px;min-width:160px}
.search-form .checkbox{min-width:auto}
.search-form .checkline{display:flex;gap:8px;align-items:center;font-size:14px;color:var(--text)}
#homeSearchHint{white-space:pre-line}


/* =========================
   SEO STORY (designer style)
   ========================= */
.seo-story{padding:54px 0}
.seo-kicker{
  display:inline-flex;
  align-items:center;
  gap:10px;
  padding:8px 12px;
  border:1px solid var(--line);
  background:rgba(255,255,255,.03);
  border-radius:999px;
  color:var(--muted);
  font-size:13px;
  letter-spacing:.2px;
}
.seo-kicker:before{
  content:"";
  width:8px;height:8px;border-radius:50%;
  background:var(--accent);
  box-shadow:0 0 0 6px rgba(63,169,140,.12);
}

.seo-grid{
  margin-top:14px;
  display:grid;
  grid-template-columns: 1.35fr .9fr;
  gap:14px;
  align-items:start;
}
@media (max-width:980px){
  .seo-grid{grid-template-columns:1fr}
}

.seo-main{
  border:1px solid var(--line);
  background:
    radial-gradient(900px 260px at 0% 0%, rgba(63,169,140,.10), rgba(0,0,0,0)),
    rgba(255,255,255,.03);
  border-radius:var(--radius);
  padding:18px;
}

.seo-title{
  margin:6px 0 10px;
  font-size:26px;
  line-height:1.15;
}
@media (max-width:640px){
  .seo-title{font-size:22px}
}

.seo-text{
  margin:0 0 10px;
  color:var(--muted);
  line-height:1.75;
  font-size:15px;
}

.seo-chips{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin:12px 0 10px;
}
.seo-chip{
  border:1px solid var(--line);
  background:rgba(0,0,0,.20);
  color:#e9ecf6;
  padding:6px 10px;
  border-radius:999px;
  font-size:12px;
}

.seo-note{
  margin:0;
  color:#eef2fb;
  opacity:.92;
  line-height:1.7;
  font-size:14px;
}

.seo-card h2{margin:0 0 10px;font-size:18px}
.seo-list{margin:0;padding:0;list-style:none;color:var(--muted)}
.seo-list li{
  display:flex;
  gap:10px;
  padding:8px 0;
  border-top:1px solid var(--line);
}
.seo-list li:first-child{border-top:0}
.seo-tick{
  width:22px;height:22px;
  border-radius:8px;
  display:grid;place-items:center;
  background:rgba(63,169,140,.14);
  border:1px solid rgba(63,169,140,.35);
  color:#dff7ef;
  flex:0 0 22px;
  margin-top:1px;
}


/* Make "free transfer" labels pop (H3-like size) */
.free-transfer-h3{
  font-size:18px !important;
  font-weight:800 !important;
  letter-spacing:.2px;
  color:var(--text) !important;
}
label .free-transfer-h3{
  display:inline-block;
  transform:translateY(1px);
}



/* Transfer checkbox label (designer emphasis) */
input#transfer + span,
span[data-i18n="lblTransfer"]{
  font-size:18px !important;
  font-weight:800 !important;
  color:var(--text) !important;
}



/* ===== FORCE GREEN BUTTONS (site-wide) ===== */
:root{
  --btn-green:#22c55e;
  --btn-green-bg:rgba(34,197,94,.16);
  --btn-green-bg2:rgba(34,197,94,.24);
  --btn-green-border:rgba(34,197,94,.65);
}

button,
input[type="button"],
input[type="submit"],
.btn,
.panel2{
  background: linear-gradient(135deg,var(--btn-green-bg),rgba(34,197,94,.08));
  border-color: var(--btn-green-border) !important;
  color: var(--text, #f4f6fb) !important;
}

button:hover,
input[type="button"]:hover,
input[type="submit"]:hover,
.btn:hover,
.panel2:hover{
  background: linear-gradient(135deg,var(--btn-green-bg2),rgba(34,197,94,.12));
  transform: translateY(-1px);
}

button:disabled,
input[type="button"]:disabled,
input[type="submit"]:disabled,
.btn:disabled,
.btn[disabled],
.panel2:disabled{
  opacity:.55;
  cursor:not-allowed;
}




/* ===== KEEP MAP BUTTONS ORIGINAL (NOT GREEN) ===== */
a.btn.small[href*="maps.app.goo.gl"],
a.btn.small[href*="goo.gl/maps"],
a.btn.small[href*="google.com/maps"],
a.btn.small[href*="maps.google."],
a.btn.small[href*="google."][href*="maps"]{
  background:#fff !important;
  color:#1f1f1f !important;
  border:1px solid #dadce0 !important;
  box-shadow:0 1px 2px rgba(0,0,0,.08);
}

a.btn.small[href*="maps.app.goo.gl"]:hover,
a.btn.small[href*="goo.gl/maps"]:hover,
a.btn.small[href*="google.com/maps"]:hover,
a.btn.small[href*="maps.google."]:hover,
a.btn.small[href*="google."][href*="maps"]:hover{
  box-shadow:0 3px 8px rgba(0,0,0,.15);
  transform:translateY(-1px);
}

a.btn.small[href*="yandex"]{
  background:#FFDB4D !important;
  color:#111 !important;
  border:1px solid rgba(0,0,0,.2) !important;
  box-shadow:0 1px 2px rgba(0,0,0,.12);
}

a.btn.small[href*="yandex"]:hover{
  box-shadow:0 3px 8px rgba(0,0,0,.18);
  transform:translateY(-1px);
}


/* Booking contact row */
.booking-title{
  margin: 0 0 10px;
  font-size: 18px;
  font-weight: 800;
}
.contact-buttons{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  align-items:center;
}
.copy-mini{
  width:44px;
  height:44px;
  padding:0;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:14px;
  border:1px solid var(--line);
  background:rgba(255,255,255,.04);
  color:var(--text);
  cursor:pointer;
  transition:transform .12s ease,background .12s ease,border-color .12s ease;
}
.copy-mini:hover{
  transform:translateY(-1px);
  background:rgba(255,255,255,.07);
}
.copy-mini:active{
  transform:translateY(0px) scale(.98);
}
.copy-mini svg{
  width:18px;
  height:18px;
  fill:currentColor;
  opacity:.9;
}
.copy-mini.copied{
  border-color:var(--btn-green-border);
  background:var(--btn-green-bg);
}

.contact-buttons{display:flex;gap:12px;flex-wrap:wrap;align-items:center}
.btn-viber{
  border:1px solid #00c853;
  color:#fff;
  background:transparent;
}
.btn-viber:hover{
  background:#7360F2;
  border-color:#7360F2;
}
/* Search buttons */
.search-buttons{
display:flex;
align-items:center;
gap:12px;
justify-content:flex-start;
}

/* Search button */
.search-buttons .btn.primary{
background:transparent;
border:2px solid #32d27c;
color:#ffffff;
padding:10px 20px;
border-radius:25px;
font-weight:600;
cursor:pointer;
transition:all 0.25s ease;
}

/* Reset button */
.search-buttons .btn-reset{
background:transparent;
border:2px solid #32d27c;
color:#ffffff;
padding:10px 20px;
border-radius:25px;
font-weight:500;
cursor:pointer;
transition:all 0.25s ease;
}

/* Hover */
.search-buttons .btn.primary:hover,
.search-buttons .btn-reset:hover{
background:#32d27c;
color:#0f1b2d;
transform:translateY(-1px);
box-shadow:0 4px 12px rgba(50,210,124,0.35);
}

/* Mobile */
@media (max-width:768px){
.search-buttons{
width:100%;
margin-top:8px;
}
.search-buttons .btn{
flex:1;
text-align:center;
}
}
/* ===== SEARCH FORM FIX (buttons left) ===== */

/* SEARCH BUTTONS LEFT */

.search-form{
display:flex;
flex-wrap:wrap;
gap:12px;
align-items:flex-end;
width:100%;
}

.search-form .field{
display:flex;
flex-direction:column;
gap:6px;
min-width:160px;
}

/* кнопки уходят на новую строку слева */
.search-form .btn{
height:42px;
padding:0 18px;
display:flex;
align-items:center;
justify-content:center;
white-space:nowrap;
order:10;
margin-top:4px;
}

/* Search */
.search-form .btn.primary{
background:linear-gradient(135deg,rgba(63,169,140,.30),rgba(63,169,140,.12));
border-color:rgba(63,169,140,.7);
}

/* Reset */
.search-form .btn-reset{
background:rgba(255,255,255,.08);
border:1px solid rgba(255,255,255,.2);
color:#e9ecf6;
}

.search-form .btn-reset:hover{
background:rgba(255,255,255,.16);
}