
:root{
  --fire:#e85d04;--ember:#f48c06;--gold:#ffd60a;
  --dark:#2a1a0a;--dark2:#3a2510;--dark3:#4a3018;--dark4:#5a3d20;
  --smoke:#a89070;--cream:#f5ebe0;--muted:#d4b890;
  --green:#4caf50;--red:#c0392b;--viber:#7360f2;--tg:#229ED9;
}
*{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
body{font-family:'Jost',sans-serif;background:var(--dark);color:var(--cream);overflow-x:hidden;}
::-webkit-scrollbar{width:5px;}
::-webkit-scrollbar-track{background:var(--dark2);}
::-webkit-scrollbar-thumb{background:var(--fire);border-radius:3px;}

/* ===== NAV ===== */
nav{position:fixed;top:0;left:0;right:0;z-index:500;background:rgba(13,5,0,.93);backdrop-filter:blur(16px);border-bottom:1px solid rgba(232,93,4,.15);padding:0 24px;height:64px;display:flex;align-items:center;justify-content:space-between;}
.nav-logo{font-family:'Cormorant Garamond',serif;font-size:20px;font-weight:700;color:var(--gold);cursor:pointer;white-space:nowrap;flex-shrink:0;}
.nav-logo span{color:var(--fire);}
.nav-links{display:flex;gap:24px;align-items:center;}
.nav-links a{color:var(--muted);font-size:13px;font-weight:500;text-decoration:none;cursor:pointer;transition:color .2s;}
.nav-links a:hover{color:var(--cream);}
.nav-book{background:linear-gradient(135deg,var(--fire),var(--ember));color:#fff!important;padding:8px 20px;border-radius:50px;font-weight:600!important;font-size:12px!important;letter-spacing:1px!important;text-transform:uppercase;}

.nav-promo{
  background:linear-gradient(135deg,rgba(255,214,10,.15),rgba(244,140,6,.1));
  border:1px solid rgba(255,214,10,.4);
  color:var(--gold)!important;
  padding:7px 16px;border-radius:50px;
  font-weight:600!important;font-size:12px!important;
  letter-spacing:.5px!important;
  animation:promoBlink 3s ease-in-out infinite;
  position:relative;overflow:hidden;
}
.nav-promo::before{
  content:'';position:absolute;inset:0;
  background:linear-gradient(90deg,transparent,rgba(255,214,10,.15),transparent);
  transform:translateX(-100%);
  animation:promoShine 3s ease-in-out infinite;
}
@keyframes promoBlink{
  0%,100%{box-shadow:0 0 0 0 rgba(255,214,10,.0);}
  50%{box-shadow:0 0 12px 2px rgba(255,214,10,.25);}
}
@keyframes promoShine{
  0%{transform:translateX(-100%);}
  40%,100%{transform:translateX(100%);}
}

.nav-admin{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);color:var(--smoke)!important;padding:7px 14px;border-radius:50px;font-size:11px!important;}
.hamburger{display:none;flex-direction:column;gap:4px;cursor:pointer;padding:4px;flex-shrink:0;}
.hamburger span{width:22px;height:2px;background:var(--cream);border-radius:2px;}
.mobile-menu{display:none;position:fixed;top:64px;left:0;right:0;background:rgba(13,5,0,.98);backdrop-filter:blur(16px);padding:20px 24px;flex-direction:column;gap:0;border-bottom:1px solid rgba(232,93,4,.15);z-index:499;}
.mobile-menu.open{display:flex;}
.mobile-menu a{color:var(--muted);font-size:15px;font-weight:500;text-decoration:none;padding:12px 0;border-bottom:1px solid rgba(255,255,255,.05);cursor:pointer;}

/* ===== HERO ===== */
#hero{min-height:100vh;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;position:relative;overflow:hidden;padding:100px 24px 60px;}
.hero-bg{position:absolute;inset:0;background:linear-gradient(180deg,#0d0500 0%,#1a0800 50%,#0d0500 100%);}
.hero-glow{position:absolute;inset:0;background:radial-gradient(ellipse 70% 50% at 50% 60%,rgba(232,93,4,.22) 0%,transparent 65%);animation:glowPulse 4s ease-in-out infinite alternate;}
@keyframes glowPulse{0%{opacity:.6;}100%{opacity:1;}}
.hero-img-wrap{position:absolute;inset:0;}
.hero-img-wrap img{width:100%;height:100%;object-fit:cover;opacity:.25;filter:saturate(1.4);}
.hero-content{position:relative;z-index:2;max-width:680px;}
.hero-eyebrow{font-size:11px;letter-spacing:4px;text-transform:uppercase;color:var(--fire);font-weight:600;margin-bottom:20px;display:flex;align-items:center;justify-content:center;gap:10px;}
.hero-eyebrow::before,.hero-eyebrow::after{content:'';width:30px;height:1px;background:var(--fire);}
.hero-title{font-family:'Cormorant Garamond',serif;font-size:clamp(42px,9vw,88px);font-weight:700;line-height:1;margin-bottom:16px;background:linear-gradient(160deg,#fff 0%,var(--gold) 45%,var(--fire) 85%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;}
.hero-sub{font-size:clamp(14px,3vw,17px);color:var(--muted);line-height:1.7;margin-bottom:32px;font-weight:300;}
.hero-address{display:inline-flex;align-items:center;gap:8px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:50px;padding:8px 18px;font-size:13px;color:var(--muted);margin-bottom:32px;}
.hero-btns{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;}
.btn-fire{background:linear-gradient(135deg,var(--fire),var(--ember));color:#fff;padding:14px 32px;border-radius:50px;font-size:14px;font-weight:700;letter-spacing:1px;text-transform:uppercase;border:none;cursor:pointer;transition:all .25s;box-shadow:0 4px 24px rgba(232,93,4,.4);}
.btn-fire:hover,.btn-fire:active{transform:translateY(-2px);box-shadow:0 8px 32px rgba(232,93,4,.6);}
.btn-outline{background:transparent;color:var(--cream);padding:14px 32px;border-radius:50px;font-size:14px;font-weight:500;border:1px solid rgba(255,255,255,.2);cursor:pointer;transition:all .25s;}
.btn-outline:hover{border-color:rgba(255,255,255,.4);}
.hero-scroll{position:absolute;bottom:30px;left:50%;transform:translateX(-50%);color:var(--smoke);font-size:11px;letter-spacing:2px;text-transform:uppercase;animation:bounce 2s ease-in-out infinite;}
@keyframes calBtnPulse{
  0%,100%{box-shadow:0 0 0 0 rgba(255,214,10,.0);}
  50%{box-shadow:0 0 12px 2px rgba(255,214,10,.15);}
}
@keyframes bounce{0%,100%{transform:translateX(-50%) translateY(0);}50%{transform:translateX(-50%) translateY(6px);}}

/* ===== COMMON ===== */
section{padding:80px 24px;}
.container{max-width:1100px;margin:0 auto;}
.section-tag{font-size:10px;letter-spacing:4px;text-transform:uppercase;color:var(--fire);font-weight:700;margin-bottom:12px;}
.section-title{font-family:'Cormorant Garamond',serif;font-size:clamp(32px,6vw,52px);font-weight:700;line-height:1.1;margin-bottom:16px;}
.section-title span{color:var(--gold);}
.section-desc{color:var(--muted);font-size:15px;line-height:1.8;font-weight:300;}
.divider{width:40px;height:2px;background:linear-gradient(90deg,var(--fire),var(--ember));border-radius:2px;margin:20px 0;}

/* ===== FEATURES ===== */
#features{padding:32px 24px;border-top:1px solid rgba(255,255,255,.04);border-bottom:1px solid rgba(255,255,255,.04);background:var(--dark2);}
.features-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;scrollbar-width:none;}
.features-grid::-webkit-scrollbar{display:none;}
.feat-item{text-align:center;padding:16px 8px;border-right:1px solid rgba(255,255,255,.06);border-bottom:1px solid rgba(255,255,255,.06);}
.feat-item:nth-child(3n){border-right:none;}
.feat-item:nth-child(4),.feat-item:nth-child(5),.feat-item:nth-child(6){border-bottom:none;}
@media(min-width:600px){
  .features-grid{grid-template-columns:repeat(6,1fr);}
  .feat-item{border-bottom:none;}
  .feat-item:nth-child(3n){border-right:1px solid rgba(255,255,255,.06);}
  .feat-item:last-child{border-right:none;}
}
.feat-icon{font-size:26px;margin-bottom:8px;}
.feat-label{font-size:12px;color:var(--muted);font-weight:500;}

/* ===== BANYAS ===== */
#banyas{background:var(--dark);}
.banyas-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px;margin-top:48px;}
.banya-card-site{background:var(--dark2);border:1px solid rgba(255,255,255,.06);border-radius:20px;overflow:hidden;transition:all .3s;cursor:pointer;}
.banya-card-site:hover{border-color:rgba(232,93,4,.3);transform:translateY(-4px);box-shadow:0 20px 40px rgba(0,0,0,.4);}
.banya-card-img{height:200px;overflow:hidden;background:linear-gradient(135deg,var(--dark3),var(--dark4));display:flex;align-items:center;justify-content:center;}
.banya-card-img svg{width:100px;height:100px;}
.banya-card-body{padding:20px;}
.banya-card-name{font-family:'Cormorant Garamond',serif;font-size:22px;font-weight:700;margin-bottom:8px;}
.banya-card-desc{font-size:13px;color:var(--muted);line-height:1.7;margin-bottom:16px;font-weight:300;}
.banya-card-price-row{display:flex;align-items:center;justify-content:space-between;}
.banya-price-num{font-size:22px;font-weight:700;color:var(--fire);}
.banya-price-per{font-size:11px;color:var(--smoke);}
.banya-book-btn{background:rgba(232,93,4,.15);border:1px solid rgba(232,93,4,.3);color:var(--ember);padding:7px 18px;border-radius:50px;font-size:12px;font-weight:600;cursor:pointer;transition:all .2s;}
.banya-book-btn:hover{background:var(--fire);color:#fff;border-color:var(--fire);}

/* ===== GALLERY ===== */
#gallery{background:var(--dark2);}
.gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:48px;}
.gallery-item{aspect-ratio:1;overflow:hidden;border-radius:10px;cursor:pointer;position:relative;background:var(--dark3);transition:box-shadow .3s;}
.gallery-item:hover{box-shadow:0 8px 32px rgba(232,93,4,.35);}
.gallery-item-wide{grid-column:span 2;aspect-ratio:2/1;}
.gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .45s cubic-bezier(.25,.46,.45,.94);}
.gallery-item:hover img{transform:scale(1.12);}
.gallery-overlay{position:absolute;inset:0;transition:background .3s;}
.gallery-item:hover .gallery-overlay{background:rgba(232,93,4,.12);}
.gallery-empty{grid-column:span 4;text-align:center;padding:48px;color:var(--smoke);}
.gallery-empty div{font-size:40px;margin-bottom:12px;}
.gallery-tab-btn{background:var(--dark2);border:1px solid rgba(255,255,255,.08);color:var(--muted);padding:8px 16px;border-radius:50px;font-family:'Jost',sans-serif;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s;}
.gallery-tab-btn.active{background:linear-gradient(135deg,var(--fire),var(--ember));color:#fff;border-color:transparent;}
.lightbox{position:fixed;inset:0;background:rgba(0,0,0,.96);z-index:3000;display:none;align-items:center;justify-content:center;}
.lightbox.open{display:flex;}
.lightbox-close{position:absolute;top:20px;right:20px;background:rgba(255,255,255,.1);border:none;color:#fff;width:44px;height:44px;border-radius:50%;cursor:pointer;font-size:20px;z-index:10;transition:background .2s;}
.lightbox-close:hover{background:rgba(255,255,255,.25);}

/* ===== PRICES ===== */
#prices{background:var(--dark);}
.prices-wrap{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;margin-top:48px;}
.price-card{background:var(--dark2);border:1px solid rgba(255,255,255,.06);border-radius:20px;padding:28px;transition:border-color .3s;}
.price-card.featured{border-color:rgba(232,93,4,.4);background:linear-gradient(135deg,rgba(232,93,4,.07),var(--dark2));}
.price-card-name{font-family:'Cormorant Garamond',serif;font-size:20px;font-weight:700;margin-bottom:6px;}
.price-card-desc{font-size:12px;color:var(--muted);margin-bottom:20px;line-height:1.6;}
.price-card-main{font-size:38px;font-weight:700;color:var(--fire);line-height:1;}
.price-card-per{font-size:12px;color:var(--smoke);margin-top:4px;}
.price-card-items{margin-top:16px;display:flex;flex-direction:column;gap:6px;}
.price-item{display:flex;justify-content:space-between;font-size:13px;padding:7px 0;border-bottom:1px solid rgba(255,255,255,.05);}
.price-item:last-child{border-bottom:none;}
.price-item-label{color:var(--muted);}
.price-item-val{color:var(--cream);font-weight:600;}



/* ===== REVIEW FORM ===== */
.review-form-btn{
  display:flex;justify-content:center;margin-top:32px;
}
.leave-review-btn{
  background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.12);
  color:var(--muted);padding:12px 28px;border-radius:50px;
  font-family:'Jost',sans-serif;font-size:14px;font-weight:600;
  cursor:pointer;transition:all .25s;display:flex;align-items:center;gap:8px;
}
.leave-review-btn:hover{border-color:rgba(232,93,4,.4);color:var(--cream);background:rgba(232,93,4,.06);}

/* Review submit modal */
.review-modal-overlay{
  position:fixed;inset:0;background:rgba(0,0,0,.75);backdrop-filter:blur(8px);
  z-index:2000;display:none;align-items:flex-end;justify-content:center;
}
.review-modal-overlay.open{display:flex;}
.review-modal{
  background:var(--dark);border:1px solid rgba(255,255,255,.08);
  border-radius:28px 28px 0 0;width:100%;max-width:560px;
  max-height:90vh;overflow-y:auto;
  box-shadow:0 -8px 40px rgba(232,93,4,.15);
  animation:sheetUp .4s cubic-bezier(.22,.68,0,1.2);
}
@keyframes sheetUp{from{transform:translateY(100%);}to{transform:translateY(0);}}
.review-modal-header{
  background:linear-gradient(135deg,var(--dark2),var(--dark3));
  padding:16px 20px 20px;border-bottom:1px solid rgba(255,255,255,.06);
  position:sticky;top:0;z-index:1;
}
.review-modal-drag{display:flex;justify-content:center;margin-bottom:12px;}
.review-modal-drag span{width:40px;height:4px;background:rgba(255,255,255,.2);border-radius:4px;}
.review-modal-title{font-family:'Cormorant Garamond',serif;font-size:22px;font-weight:700;}
.review-modal-sub{font-size:12px;color:var(--smoke);margin-top:4px;}
.review-modal-close{
  position:absolute;top:16px;right:16px;
  background:rgba(255,255,255,.06);border:none;color:var(--muted);
  width:32px;height:32px;border-radius:50%;cursor:pointer;font-size:16px;
  display:flex;align-items:center;justify-content:center;
}
.review-modal-body{padding:20px;display:flex;flex-direction:column;gap:16px;}
.star-picker{display:flex;gap:8px;font-size:32px;cursor:pointer;}
.star-picker span{opacity:.3;transition:all .15s;cursor:pointer;}
.star-picker span.active{opacity:1;filter:drop-shadow(0 0 4px rgba(255,214,10,.6));}
.review-success{
  display:none;text-align:center;padding:32px 20px;
}
.review-success.show{display:block;}
.review-success-icon{font-size:56px;margin-bottom:12px;}
.review-success-title{font-family:'Cormorant Garamond',serif;font-size:24px;font-weight:700;color:var(--gold);margin-bottom:8px;}
.review-success-sub{font-size:13px;color:var(--muted);}

/* Pending badge in admin */
.pending-badge{
  background:rgba(255,214,10,.15);border:1px solid rgba(255,214,10,.3);
  color:var(--gold);padding:3px 10px;border-radius:20px;font-size:11px;font-weight:700;
}
.pending-count{
  position:absolute;top:-4px;right:-4px;
  background:var(--fire);color:#fff;width:18px;height:18px;
  border-radius:50%;font-size:10px;font-weight:700;
  display:flex;align-items:center;justify-content:center;
}

/* ===== PROMOS ===== */
#promos{background:var(--dark2);}
.promos-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px;margin-top:48px;}
.promo-card{
  position:relative;border-radius:20px;overflow:hidden;
  background:var(--dark);border:1px solid rgba(255,255,255,.06);
  transition:all .3s;cursor:default;
}
.promo-card:hover{transform:translateY(-4px);box-shadow:0 20px 40px rgba(0,0,0,.4);}
.promo-card.hot{border-color:rgba(232,93,4,.4);}
.promo-card.special{border-color:rgba(255,214,10,.3);}
.promo-badge{
  position:absolute;top:16px;right:16px;
  padding:5px 12px;border-radius:50px;
  font-size:10px;font-weight:700;letter-spacing:1px;text-transform:uppercase;
}
.promo-badge.hot{background:linear-gradient(135deg,var(--fire),var(--ember));color:#fff;}
.promo-badge.special{background:linear-gradient(135deg,#b8860b,var(--gold));color:#1a0800;}
.promo-badge.new{background:linear-gradient(135deg,#1a6b2a,#4caf50);color:#fff;}
.promo-card-top{
  padding:28px 24px 20px;
  position:relative;overflow:hidden;
}
.promo-card-top::before{
  content:'';position:absolute;inset:0;
  background:radial-gradient(ellipse 80% 60% at 50% 100%,rgba(232,93,4,.1) 0%,transparent 70%);
}
.promo-card-icon{font-size:40px;margin-bottom:12px;position:relative;z-index:1;}
.promo-card-title{
  font-family:'Cormorant Garamond',serif;font-size:22px;font-weight:700;
  margin-bottom:8px;position:relative;z-index:1;
}
.promo-card-desc{
  font-size:13px;color:var(--muted);line-height:1.7;font-weight:300;
  position:relative;z-index:1;
}
.promo-card-bottom{
  padding:16px 24px 20px;
  border-top:1px solid rgba(255,255,255,.06);
  display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;
}
.promo-price-block{}
.promo-old-price{font-size:13px;color:var(--smoke);text-decoration:line-through;margin-bottom:2px;}
.promo-new-price{font-family:'Cormorant Garamond',serif;font-size:28px;font-weight:700;color:var(--fire);line-height:1;}
.promo-new-price span{font-size:14px;color:var(--smoke);font-family:'Jost',sans-serif;font-weight:400;}
.promo-discount{
  background:rgba(232,93,4,.15);border:1px solid rgba(232,93,4,.3);
  color:var(--ember);padding:6px 14px;border-radius:50px;
  font-size:13px;font-weight:700;white-space:nowrap;
}
.promo-valid{font-size:11px;color:var(--smoke);margin-top:8px;width:100%;}
.promo-book-btn{
  background:linear-gradient(135deg,var(--fire),var(--ember));
  color:#fff;border:none;padding:10px 20px;border-radius:50px;
  font-family:'Jost',sans-serif;font-size:13px;font-weight:600;
  cursor:pointer;transition:all .2s;white-space:nowrap;
  box-shadow:0 4px 14px rgba(232,93,4,.3);
}
.promo-book-btn:hover{transform:translateY(-1px);box-shadow:0 6px 20px rgba(232,93,4,.5);}
.promos-empty{
  text-align:center;padding:48px;color:var(--smoke);
  grid-column:1/-1;
}


/* ===== COUNTER ===== */
#counter{
  background:linear-gradient(135deg,var(--dark2),var(--dark3));
  border-top:1px solid rgba(232,93,4,.1);
  border-bottom:1px solid rgba(232,93,4,.1);
  padding:48px 24px;
}
.counter-grid{
  display:grid;grid-template-columns:repeat(4,1fr);
  gap:0;max-width:900px;margin:0 auto;
}
.counter-item{
  text-align:center;padding:20px 16px;
  border-right:1px solid rgba(255,255,255,.06);
  position:relative;
}
.counter-item:last-child{border-right:none;}
.counter-icon{font-size:32px;margin-bottom:10px;}
.counter-num{
  font-family:'Cormorant Garamond',serif;
  font-size:clamp(36px,7vw,56px);font-weight:700;line-height:1;
  background:linear-gradient(135deg,var(--gold),var(--fire));
  -webkit-background-clip:text;-webkit-text-fill-color:transparent;
  background-clip:text;
}
.counter-suffix{
  font-family:'Cormorant Garamond',serif;
  font-size:clamp(24px,5vw,36px);font-weight:700;
  background:linear-gradient(135deg,var(--gold),var(--fire));
  -webkit-background-clip:text;-webkit-text-fill-color:transparent;
  background-clip:text;
}
.counter-label{
  font-size:12px;color:var(--muted);margin-top:6px;
  font-weight:500;letter-spacing:.3px;line-height:1.4;
}
.counter-sub{
  font-size:11px;color:var(--smoke);margin-top:3px;line-height:1.4;
}
@media(max-width:480px){
  .counter-grid{grid-template-columns:repeat(2,1fr);}
  .counter-item:nth-child(2){border-right:none;}
  .counter-item:nth-child(1),.counter-item:nth-child(2){border-bottom:1px solid rgba(255,255,255,.06);}
}

/* ===== REVIEWS ===== */
#reviews{background:var(--dark2);}
.reviews-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:16px;margin-top:48px;}
.review-card{background:var(--dark);border:1px solid rgba(255,255,255,.06);border-radius:16px;padding:20px;}
.review-stars{color:var(--gold);font-size:14px;margin-bottom:10px;letter-spacing:2px;}
.review-text{font-size:14px;color:var(--muted);line-height:1.7;font-weight:300;margin-bottom:14px;}
.review-author{display:flex;align-items:center;gap:10px;}
.review-avatar{width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,var(--fire),var(--ember));display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:700;color:#fff;flex-shrink:0;}
.review-name{font-size:13px;font-weight:600;}
.review-date{font-size:11px;color:var(--smoke);}

/* ===== CONTACTS ===== */
#contacts{background:var(--dark);}
.contacts-wrap{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-top:48px;align-items:start;}
.contact-item{display:flex;gap:14px;align-items:flex-start;margin-bottom:20px;}
.contact-icon{width:44px;height:44px;border-radius:12px;background:rgba(232,93,4,.12);border:1px solid rgba(232,93,4,.2);display:flex;align-items:center;justify-content:center;font-size:20px;flex-shrink:0;}
.contact-label{font-size:11px;color:var(--smoke);letter-spacing:1px;text-transform:uppercase;margin-bottom:4px;}
.contact-val{font-size:15px;font-weight:500;}
.contact-val a{color:var(--cream);text-decoration:none;}
.messenger-btns{display:flex;gap:10px;flex-wrap:wrap;}
.msg-btn{display:flex;align-items:center;gap:8px;padding:11px 20px;border-radius:50px;font-size:13px;font-weight:600;text-decoration:none;border:none;cursor:pointer;transition:all .2s;}
.msg-btn.viber{background:#7360f2;color:#fff;box-shadow:0 4px 14px rgba(115,96,242,.3);}
.msg-btn.telegram{background:#229ED9;color:#fff;box-shadow:0 4px 14px rgba(34,158,217,.3);}
.msg-btn:hover{transform:translateY(-2px);}
.map-wrap{border-radius:20px;overflow:hidden;height:300px;background:var(--dark2);border:1px solid rgba(255,255,255,.06);display:flex;align-items:center;justify-content:center;color:var(--smoke);font-size:13px;text-align:center;}
.map-wrap iframe{width:100%;height:100%;border:0;}

/* ===== FOOTER ===== */
footer{background:var(--dark2);border-top:1px solid rgba(255,255,255,.06);padding:32px 24px;text-align:center;}
.footer-logo{font-family:'Cormorant Garamond',serif;font-size:24px;font-weight:700;color:var(--gold);margin-bottom:8px;}
.footer-sub{font-size:12px;color:var(--smoke);}
.footer-copy{margin-top:16px;font-size:11px;color:var(--dark4);}



/* ===== VENIK ANIMATION ===== */
.venik-scene{
  position:relative;width:200px;height:200px;
  margin:0 auto;flex-shrink:0;
}
@media(max-height:700px),(max-width:480px){.venik-scene{width:120px;height:120px;}.venik-left,.venik-right{transform:scale(.6);transform-origin:bottom center;}.venik-glow{display:none;}}

/* Пара / пар */
.venik-steam{position:absolute;top:0;left:50%;transform:translateX(-50%);}
.vs-particle{
  position:absolute;border-radius:50px;
  background:rgba(200,200,220,.35);
  animation:vsSteam var(--dur,2s) ease-out infinite;
  animation-delay:var(--del,0s);
  opacity:0;
}
@keyframes vsSteam{
  0%{opacity:0;transform:translateY(0) scaleX(1);}
  15%{opacity:.9;}
  70%{opacity:.3;transform:translateY(-100px) scaleX(6);}
  100%{opacity:0;transform:translateY(-140px) scaleX(8);}
}

/* Вінник лівий */
.venik-left{
  position:absolute;bottom:20px;left:10px;
  transform-origin:80% 90%;
  animation:venikSwingL .55s ease-in-out infinite;
}
/* Вінник правий */
.venik-right{
  position:absolute;bottom:20px;right:10px;
  transform-origin:20% 90%;
  animation:venikSwingR .55s ease-in-out infinite;
  animation-delay:.27s;
}

@keyframes venikSwingL{
  0%{transform:rotate(-40deg) translateY(0) scale(1);}
  50%{transform:rotate(20deg) translateY(-20px) scale(1.05);}
  100%{transform:rotate(-40deg) translateY(0) scale(1);}
}
@keyframes venikSwingR{
  0%{transform:rotate(40deg) translateY(0) scale(1);}
  50%{transform:rotate(-20deg) translateY(-20px) scale(1.05);}
  100%{transform:rotate(40deg) translateY(0) scale(1);}
}

/* Іскри */
.venik-sparks{position:absolute;inset:0;pointer-events:none;}
.vspark{
  position:absolute;border-radius:50%;
  width:5px;height:5px;
  background:var(--gold);
  animation:vsparkFly var(--sd,1.5s) ease-out infinite;
  animation-delay:var(--sdel,0s);
  opacity:0;
}
@keyframes vsparkFly{
  0%{opacity:0;transform:translate(0,0) scale(1.5);}
  10%{opacity:1;}
  100%{opacity:0;transform:translate(var(--sx,20px),var(--sy,-60px)) scale(0);}
}

/* Фон жару */
.venik-glow{
  position:absolute;bottom:0;left:50%;transform:translateX(-50%);
  width:120px;height:60px;
  background:radial-gradient(ellipse,rgba(232,93,4,.25) 0%,transparent 70%);
  animation:venikGlow 1.2s ease-in-out infinite alternate;
}
@keyframes venikGlow{
  0%{opacity:.3;transform:translateX(-50%) scaleX(.8);}
  50%{opacity:1;transform:translateX(-50%) scaleX(1.5);}
  100%{opacity:.3;transform:translateX(-50%) scaleX(.8);}
}

/* Успіх текст */
.success-venik-title{
  font-family:'Cormorant Garamond',serif;
  font-size:28px;font-weight:700;
  background:linear-gradient(135deg,var(--gold),var(--fire));
  -webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;
  text-align:center;margin-top:8px;
}
.success-venik-sub{
  font-size:14px;color:var(--muted);text-align:center;
  margin-top:4px;margin-bottom:16px;
}


/* ===== BOOKINGS TABLE ===== */
.bookings-filter{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:16px;}
.bfilter-btn{
  padding:6px 14px;border-radius:50px;border:1px solid rgba(255,255,255,.08);
  background:var(--dark);color:var(--smoke);font-family:'Jost',sans-serif;
  font-size:12px;font-weight:600;cursor:pointer;transition:all .2s;
}
.bfilter-btn.active{background:var(--dark3);color:var(--cream);border-color:rgba(255,255,255,.2);}
.bfilter-btn.f-new.active{background:rgba(255,214,10,.15);border-color:rgba(255,214,10,.4);color:var(--gold);}
.bfilter-btn.f-working.active{background:rgba(34,158,217,.15);border-color:rgba(34,158,217,.4);color:#6ec6f0;}
.bfilter-btn.f-done.active{background:rgba(76,175,80,.15);border-color:rgba(76,175,80,.4);color:var(--green);}
.bfilter-btn.f-cancel.active{background:rgba(192,57,43,.15);border-color:rgba(192,57,43,.4);color:var(--red);}

.booking-row{
  background:var(--dark);border:1px solid rgba(255,255,255,.06);
  border-radius:14px;padding:14px;margin-bottom:10px;
  transition:border-color .2s;
}
.booking-row.status-new{border-left:3px solid var(--gold);}
.booking-row.status-working{border-left:3px solid #229ED9;}
.booking-row.status-done{border-left:3px solid var(--green);}
.booking-row.status-cancel{border-left:3px solid var(--red);opacity:.6;}

.booking-row-top{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;flex-wrap:wrap;margin-bottom:8px;}
.booking-row-name{font-size:14px;font-weight:700;}
.booking-row-details{font-size:12px;color:var(--muted);line-height:1.8;margin-bottom:8px;}
.booking-row-actions{display:flex;gap:6px;align-items:center;flex-wrap:wrap;}

.status-badge{
  display:inline-flex;align-items:center;gap:5px;
  padding:4px 12px;border-radius:20px;font-size:11px;font-weight:700;
  cursor:pointer;transition:all .2s;border:1px solid transparent;
}
.status-badge.new{background:rgba(255,214,10,.15);border-color:rgba(255,214,10,.3);color:var(--gold);}
.status-badge.working{background:rgba(34,158,217,.15);border-color:rgba(34,158,217,.3);color:#6ec6f0;}
.status-badge.done{background:rgba(76,175,80,.15);border-color:rgba(76,175,80,.3);color:var(--green);}
.status-badge.cancel{background:rgba(192,57,43,.15);border-color:rgba(192,57,43,.3);color:var(--red);}

.tg-send-btn{
  display:flex;align-items:center;gap:6px;
  background:#229ED9;color:#fff;border:none;
  padding:6px 14px;border-radius:20px;font-family:'Jost',sans-serif;
  font-size:12px;font-weight:700;cursor:pointer;transition:all .2s;
}
.tg-send-btn:hover{background:#1a8bc4;transform:translateY(-1px);}

.new-count-badge{
  display:inline-flex;align-items:center;justify-content:center;
  background:var(--fire);color:#fff;
  width:20px;height:20px;border-radius:50%;font-size:11px;font-weight:700;
  margin-left:6px;animation:badgePulse 1.5s ease-in-out infinite;
}
@keyframes badgePulse{0%,100%{transform:scale(1);}50%{transform:scale(1.2);}}

/* ===== CALL BUTTON ===== */
.call-btn-wrap{
  position:fixed;bottom:28px;right:24px;z-index:1500;
  display:flex;flex-direction:column;align-items:flex-end;gap:0;
}
/* Ховаємо кнопку в адмінці */
body.in-admin .call-btn-wrap{display:none;}

.call-popup{
  position:absolute;bottom:72px;right:0;
  background:var(--dark2);border:1px solid rgba(232,93,4,.3);
  border-radius:16px;padding:14px 16px;
  box-shadow:0 8px 32px rgba(0,0,0,.5);
  min-width:200px;
  opacity:0;transform:scale(.9) translateY(8px);
  transition:all .25s cubic-bezier(.175,.885,.32,1.275);
  pointer-events:none;
}
.call-popup.open{opacity:1;transform:scale(1) translateY(0);pointer-events:all;}
.call-popup-num{
  font-family:'Cormorant Garamond',serif;
  font-size:20px;font-weight:700;color:var(--gold);
  text-align:center;margin-bottom:12px;letter-spacing:.5px;
}
.call-popup-actions{display:flex;gap:8px;}
.call-popup-action{
  flex:1;display:flex;align-items:center;justify-content:center;gap:6px;
  padding:9px 8px;border-radius:10px;
  font-family:'Jost',sans-serif;font-size:12px;font-weight:700;
  cursor:pointer;transition:all .2s;text-decoration:none;border:none;
}
.call-action{
  background:linear-gradient(135deg,var(--fire),var(--ember));
  color:#fff;box-shadow:0 3px 10px rgba(232,93,4,.4);
}
.call-action:hover{box-shadow:0 5px 16px rgba(232,93,4,.6);}
.copy-action{
  background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1)!important;
  color:var(--muted);
}
.copy-action:hover{background:rgba(255,255,255,.1);color:var(--cream);}
/* Змінюємо call-btn на button */
.call-btn{
  width:62px;height:62px;border-radius:50%;
  background:linear-gradient(135deg,#1a0800,#2d1200);
  border:2px solid rgba(232,93,4,.5);
  display:flex;align-items:center;justify-content:center;
  cursor:pointer;
  box-shadow:0 4px 24px rgba(232,93,4,.4);
  animation:callPulse 2.5s ease-in-out infinite;
  transition:all .25s;position:relative;overflow:hidden;
}
.call-btn.active{
  border-color:rgba(232,93,4,.8);
  box-shadow:0 6px 28px rgba(232,93,4,.6);
  animation:none;
}

.call-btn::before{
  content:'';position:absolute;inset:0;border-radius:50%;
  background:radial-gradient(circle at 50% 80%,rgba(232,93,4,.35) 0%,transparent 70%);
  animation:glowPulse 2s ease-in-out infinite alternate;
}
.call-btn:hover{
  transform:scale(1.1);
  box-shadow:0 8px 32px rgba(232,93,4,.6), 0 0 0 8px rgba(232,93,4,.1);
}
@keyframes callPulse{
  0%,100%{box-shadow:0 4px 24px rgba(232,93,4,.4), 0 0 0 0 rgba(232,93,4,.3);}
  50%{box-shadow:0 4px 24px rgba(232,93,4,.5), 0 0 0 12px rgba(232,93,4,.0);}
}
.call-btn-icon{
  position:relative;z-index:1;
  width:28px;height:28px;
  animation:phoneBounce 2.5s ease-in-out infinite;
}
@keyframes phoneBounce{
  0%,100%{transform:rotate(0deg);}
  10%{transform:rotate(-15deg);}
  20%{transform:rotate(15deg);}
  30%{transform:rotate(-10deg);}
  40%{transform:rotate(10deg);}
  50%,100%{transform:rotate(0deg);}
}
/* Вогняні іскри навколо кнопки */
.call-sparks{
  position:absolute;inset:-8px;border-radius:50%;
  pointer-events:none;
}
.call-spark{
  position:absolute;
  width:4px;height:4px;border-radius:50%;
  background:var(--fire);
  animation:sparkFly var(--dur,1.5s) ease-out infinite;
  animation-delay:var(--del,0s);
  opacity:0;
}
@keyframes sparkFly{
  0%{opacity:0;transform:translate(0,0) scale(1);}
  20%{opacity:1;}
  100%{opacity:0;transform:translate(var(--tx,10px),var(--ty,-20px)) scale(0);}
}
/* Тултіп */
.call-tooltip{
  background:var(--dark2);border:1px solid rgba(232,93,4,.3);
  color:var(--cream);font-family:'Jost',sans-serif;font-size:12px;font-weight:600;
  padding:6px 14px;border-radius:50px;white-space:nowrap;
  opacity:0;transform:translateX(10px);transition:all .3s;
  pointer-events:none;
  box-shadow:0 4px 16px rgba(0,0,0,.4);
}
.call-btn-wrap:hover .call-tooltip{opacity:1;transform:translateX(0);}
/* Хвиля при натисканні */
.call-ripple{
  position:absolute;border-radius:50%;
  background:rgba(232,93,4,.3);
  width:100%;height:100%;
  animation:ripple 1s ease-out forwards;
  pointer-events:none;
}
@keyframes ripple{
  0%{transform:scale(1);opacity:.6;}
  100%{transform:scale(2.5);opacity:0;}
}



/* ===== ANIMATED LOGO ===== */
.nav-logo{position:relative;overflow:visible!important;}
.logo-steam{
  position:absolute;top:-8px;left:50%;transform:translateX(-50%);
  width:60px;height:20px;pointer-events:none;overflow:visible;
  display:none;
}
@media(min-width:480px){.logo-steam{display:block;}}
.logo-steam-p{
  position:absolute;border-radius:50px;
  background:rgba(200,190,180,.25);
  animation:logoSteam var(--d,2s) ease-out infinite;
  animation-delay:var(--dl,0s);
  opacity:0;
}
@keyframes logoSteam{
  0%{opacity:0;transform:translateY(0) scaleX(1);}
  20%{opacity:.6;}
  100%{opacity:0;transform:translateY(-18px) scaleX(3);}
}
.logo-fire{
  display:inline-block;
  animation:logFirePulse 1.8s ease-in-out infinite alternate;
  filter:drop-shadow(0 0 6px rgba(232,93,4,.7));
}
@keyframes logFirePulse{
  0%{transform:scale(1) rotate(-3deg);filter:drop-shadow(0 0 4px rgba(232,93,4,.5));}
  100%{transform:scale(1.15) rotate(3deg);filter:drop-shadow(0 0 10px rgba(255,214,10,.8));}
}
.logo-text-dobra{
  background:linear-gradient(135deg,var(--gold) 0%,var(--ember) 50%,var(--gold) 100%);
  background-size:200% auto;
  -webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;
  animation:logoShine 3s linear infinite;
}
@keyframes logoShine{
  0%{background-position:200% center;}
  100%{background-position:-200% center;}
}

/* ===== STATUS BADGE ===== */
.status-wrap{
  display:none!important;
  display:flex;align-items:center;gap:8px;
  background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);
  border-radius:50px;padding:5px 14px;font-size:12px;font-weight:600;
  cursor:default;transition:all .3s;
}
.status-dot{
  width:8px;height:8px;border-radius:50%;flex-shrink:0;
  animation:statusPulse 2s ease-in-out infinite;
}
.status-open .status-dot{background:#4caf50;box-shadow:0 0 0 0 rgba(76,175,80,.4);}
.status-closed .status-dot{background:#c0392b;}
@keyframes statusPulse{
  0%,100%{box-shadow:0 0 0 0 rgba(76,175,80,.4);}
  50%{box-shadow:0 0 0 6px rgba(76,175,80,.0);}
}
.status-open{border-color:rgba(76,175,80,.3);}
.status-closed{border-color:rgba(192,57,43,.3);}
.status-text{color:var(--cream);}
.status-timer{color:var(--smoke);font-size:11px;}


/* ===== WOOD TEXTURE REPLACED ===== */
.wood-texture{
  background-image:
    repeating-linear-gradient(
      88deg,
      transparent 0px,
      transparent 8px,
      rgba(0,0,0,.03) 8px,
      rgba(0,0,0,.03) 9px
    ),
    repeating-linear-gradient(
      92deg,
      transparent 0px,
      transparent 12px,
      rgba(255,255,255,.015) 12px,
      rgba(255,255,255,.015) 13px
    ),
    repeating-linear-gradient(
      89deg,
      transparent 0px,
      transparent 25px,
      rgba(0,0,0,.02) 25px,
      rgba(0,0,0,.02) 26px
    );
}

/* Hero wood */
#hero .hero-bg{
  background:linear-gradient(180deg,#2a1a0a 0%,#3a2510 50%,#2a1a0a 100%);
}
#hero::after{
  content:'';position:absolute;inset:0;pointer-events:none;
  background-image:
    repeating-linear-gradient(
      89deg,
      transparent 0px, transparent 6px,
      rgba(255,180,80,.025) 6px, rgba(255,180,80,.025) 7px
    ),
    repeating-linear-gradient(
      91deg,
      transparent 0px, transparent 15px,
      rgba(0,0,0,.04) 15px, rgba(0,0,0,.04) 16px
    ),
    repeating-linear-gradient(
      88deg,
      transparent 0px, transparent 30px,
      rgba(255,150,50,.015) 30px, rgba(255,150,50,.015) 31px
    );
  z-index:1;
}
#hero .hero-content{z-index:2;}
#hero .hero-glow{z-index:1;}
#hero .hero-img-wrap{z-index:0;}
#hero .hero-scroll{z-index:2;}

/* Nav wood */
nav{
  background:rgba(42,26,10,.95)!important;
  background-image:
    repeating-linear-gradient(
      89deg,
      transparent 0px, transparent 8px,
      rgba(255,160,60,.02) 8px, rgba(255,160,60,.02) 9px
    )!important;
  border-bottom:1px solid rgba(232,93,4,.2)!important;
}

/* Features wood */
#features{
  background-image:
    repeating-linear-gradient(
      89deg,
      transparent 0px, transparent 10px,
      rgba(255,160,60,.03) 10px, rgba(255,160,60,.03) 11px
    ),
    linear-gradient(180deg,var(--dark2),var(--dark3));
}

/* Cards wood effect */
.banya-card-site, .price-card, .review-card, .event-card{
  background-image:
    repeating-linear-gradient(
      89deg,
      transparent 0px, transparent 12px,
      rgba(255,160,60,.02) 12px, rgba(255,160,60,.02) 13px
    ) !important;
}

/* Section dividers - wood grain line */
section{
  border-top:1px solid rgba(139,90,43,.15);
}

/* Counter wood */
#counter{
  background-image:
    repeating-linear-gradient(
      89deg,
      transparent 0px, transparent 8px,
      rgba(255,160,60,.03) 8px, rgba(255,160,60,.03) 9px
    ),
    linear-gradient(135deg,var(--dark2),var(--dark3))!important;
}

/* FAQ wood */
.faq-item{
  background-image:
    repeating-linear-gradient(
      89deg,
      transparent 0px, transparent 14px,
      rgba(255,160,60,.025) 14px, rgba(255,160,60,.025) 15px
    )!important;
}

/* Footer wood */
footer{
  background-image:
    repeating-linear-gradient(
      89deg,
      transparent 0px, transparent 8px,
      rgba(255,160,60,.03) 8px, rgba(255,160,60,.03) 9px
    ),
    linear-gradient(180deg,var(--dark2),var(--dark))!important;
  border-top:2px solid rgba(139,90,43,.3)!important;
}



/* Mobile status bar */
.mobile-status-bar{
  position:fixed;top:56px;left:0;right:0;z-index:499;
  height:28px;
  display:flex;align-items:center;justify-content:center;gap:8px;
  font-family:'Jost',sans-serif;font-size:11px;font-weight:600;
  background:rgba(42,26,10,.95);
  border-bottom:1px solid rgba(232,93,4,.15);
  backdrop-filter:blur(8px);
  transition:all .3s;
}
.mobile-status-bar .ms-dot{
  width:7px;height:7px;border-radius:50%;flex-shrink:0;
}
.mobile-status-bar.open-bar .ms-dot{background:#4caf50;box-shadow:0 0 6px rgba(76,175,80,.6);}
.mobile-status-bar.closed-bar .ms-dot{background:#c0392b;}
.mobile-status-bar .ms-text{color:var(--cream);}
.mobile-status-bar .ms-timer{color:var(--smoke);font-size:10px;}
@media(min-width:768px){.mobile-status-bar{display:none;}}

/* Adjust hero padding for mobile status bar */
@media(max-width:767px){
  #hero{padding-top:120px!important;}
}

/* ===== ADVANCED WOOD ===== */

/* Глибша текстура дерева для hero */
#hero{
  background:
    radial-gradient(ellipse 20% 8% at 15% 30%, rgba(139,80,20,.08) 0%, transparent 100%),
    radial-gradient(ellipse 15% 6% at 70% 60%, rgba(100,55,10,.06) 0%, transparent 100%),
    radial-gradient(ellipse 25% 10% at 45% 80%, rgba(160,90,25,.07) 0%, transparent 100%),
    repeating-linear-gradient(
      89.5deg,
      transparent 0px, transparent 4px,
      rgba(200,120,40,.018) 4px, rgba(200,120,40,.018) 5px,
      transparent 5px, transparent 10px,
      rgba(100,50,10,.012) 10px, rgba(100,50,10,.012) 11px,
      transparent 11px, transparent 20px,
      rgba(180,100,30,.015) 20px, rgba(180,100,30,.015) 21px
    ),
    repeating-linear-gradient(
      90.5deg,
      transparent 0px, transparent 35px,
      rgba(80,40,8,.04) 35px, rgba(80,40,8,.04) 37px
    );
}

/* Вузли дерева — кільця */
#hero::before{
  content:'';position:absolute;inset:0;pointer-events:none;z-index:1;
  background:
    radial-gradient(ellipse 8% 4% at 20% 25%, rgba(80,40,8,.12) 0%, rgba(80,40,8,.04) 40%, transparent 70%),
    radial-gradient(ellipse 6% 3% at 75% 55%, rgba(80,40,8,.10) 0%, rgba(80,40,8,.03) 40%, transparent 70%),
    radial-gradient(ellipse 5% 2% at 55% 15%, rgba(80,40,8,.08) 0%, transparent 60%),
    radial-gradient(ellipse 10% 5% at 85% 80%, rgba(80,40,8,.09) 0%, transparent 60%),
    radial-gradient(ellipse 7% 3% at 35% 70%, rgba(80,40,8,.07) 0%, transparent 60%);
}

/* Тепле сяйво як від вогню крізь дерево */
#hero .hero-glow{
  background:
    radial-gradient(ellipse 60% 45% at 50% 60%, rgba(232,93,4,.18) 0%, transparent 65%),
    radial-gradient(ellipse 30% 20% at 30% 80%, rgba(244,140,6,.08) 0%, transparent 60%),
    radial-gradient(ellipse 30% 20% at 70% 80%, rgba(244,140,6,.08) 0%, transparent 60%);
}

/* Секції з деревом */
#features, #counter, #reviews, #gallery{
  background-image:
    radial-gradient(ellipse 40% 15% at 10% 50%, rgba(100,55,15,.06) 0%, transparent 70%),
    radial-gradient(ellipse 30% 10% at 90% 30%, rgba(80,40,8,.05) 0%, transparent 70%),
    repeating-linear-gradient(
      89.3deg,
      transparent 0px, transparent 5px,
      rgba(180,100,30,.022) 5px, rgba(180,100,30,.022) 6px,
      transparent 6px, transparent 14px,
      rgba(100,55,15,.015) 14px, rgba(100,55,15,.015) 15px,
      transparent 15px, transparent 28px,
      rgba(160,85,20,.018) 28px, rgba(160,85,20,.018) 29px
    ) !important;
}

/* Картки — ефект полірованого дерева */
.banya-card-site, .price-card, .event-card{
  background-image:
    repeating-linear-gradient(
      89deg,
      transparent 0px, transparent 7px,
      rgba(200,120,40,.025) 7px, rgba(200,120,40,.025) 8px,
      transparent 8px, transparent 18px,
      rgba(120,65,15,.018) 18px, rgba(120,65,15,.018) 19px
    ),
    linear-gradient(135deg, rgba(255,255,255,.02) 0%, transparent 50%) !important;
  box-shadow:inset 0 1px 0 rgba(255,200,100,.04), inset 0 -1px 0 rgba(0,0,0,.1) !important;
}

/* Навбар — темне полірване дерево */
nav{
  background:
    repeating-linear-gradient(
      89deg,
      transparent 0px, transparent 6px,
      rgba(180,100,30,.025) 6px, rgba(180,100,30,.025) 7px,
      transparent 7px, transparent 15px,
      rgba(100,55,15,.018) 15px, rgba(100,55,15,.018) 16px
    ),
    rgba(42,26,10,.96) !important;
  box-shadow:0 2px 20px rgba(0,0,0,.4), inset 0 -1px 0 rgba(232,93,4,.15) !important;
}

/* Футер — темне дерево з прожилками */
footer{
  background:
    repeating-linear-gradient(
      89deg,
      transparent 0px, transparent 8px,
      rgba(180,100,30,.02) 8px, rgba(180,100,30,.02) 9px,
      transparent 9px, transparent 20px,
      rgba(100,55,15,.015) 20px, rgba(100,55,15,.015) 21px
    ),
    linear-gradient(180deg, var(--dark3), var(--dark2)) !important;
  border-top:2px solid rgba(180,100,30,.2) !important;
}

/* FAQ — світліше дерево */
.faq-item{
  background-image:
    repeating-linear-gradient(
      89deg,
      transparent 0px, transparent 10px,
      rgba(200,120,40,.02) 10px, rgba(200,120,40,.02) 11px,
      transparent 11px, transparent 25px,
      rgba(140,75,20,.015) 25px, rgba(140,75,20,.015) 26px
    ) !important;
  border-color:rgba(180,100,30,.12) !important;
}
.faq-item:hover, .faq-item.open{
  border-color:rgba(232,93,4,.35) !important;
  box-shadow:0 4px 20px rgba(100,50,10,.2) !important;
}

/* Review cards */
.review-card{
  background-image:
    repeating-linear-gradient(
      89deg,
      transparent 0px, transparent 8px,
      rgba(180,100,30,.02) 8px, rgba(180,100,30,.02) 9px
    ) !important;
}

/* Booking popup wood header */
.booking-header{
  background:
    repeating-linear-gradient(
      89deg,
      transparent 0px, transparent 5px,
      rgba(180,100,30,.03) 5px, rgba(180,100,30,.03) 6px
    ),
    linear-gradient(135deg, var(--dark2), var(--dark3)) !important;
}

@media(min-width:900px){.status-wrap{display:flex!important;}}
/* ===== LANG SWITCHER ===== */
.lang-switcher{
  display:flex;gap:1px;background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.08);border-radius:50px;padding:2px;
  flex-shrink:0;
}
.lang-btn{
  padding:4px 8px;border-radius:50px;border:none;
  font-family:'Jost',sans-serif;font-size:10px;font-weight:700;
  cursor:pointer;transition:all .2s;background:transparent;
  color:var(--smoke);letter-spacing:.3px;
}
.lang-btn.active{background:var(--dark3);color:var(--cream);}
.lang-btn:hover:not(.active){color:var(--muted);}



/* ===== FAQ ===== */
#faq{background:var(--dark);}
.faq-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:48px;}
.faq-item{
  background:var(--dark2);border:1px solid rgba(255,255,255,.06);
  border-radius:16px;padding:16px;cursor:pointer;
  transition:all .3s;position:relative;overflow:hidden;
}
.faq-item::before{
  content:'';position:absolute;inset:0;
  background:radial-gradient(ellipse 80% 60% at 50% 100%,rgba(232,93,4,.06) 0%,transparent 70%);
  opacity:0;transition:opacity .3s;
}
.faq-item:hover{border-color:rgba(232,93,4,.25);transform:translateY(-2px);}
.faq-item:hover::before{opacity:1;}
.faq-item.open{border-color:rgba(232,93,4,.35);background:linear-gradient(135deg,rgba(232,93,4,.06),var(--dark2));}
.faq-emoji{font-size:24px;margin-bottom:6px;}
.faq-q{
  font-family:'Cormorant Garamond',serif;
  font-size:15px;font-weight:700;color:var(--cream);
  margin-bottom:6px;display:flex;justify-content:space-between;align-items:flex-start;gap:6px;
}
.faq-arrow{
  font-size:12px;color:var(--smoke);transition:transform .3s;flex-shrink:0;margin-top:2px;
}
.faq-item.open .faq-arrow{transform:rotate(180deg);color:var(--fire);}
.faq-a{
  font-size:12px;color:var(--muted);line-height:1.6;font-weight:300;
  max-height:0;overflow:hidden;transition:max-height .4s ease,opacity .3s;
  opacity:0;
}
.faq-item.open .faq-a{max-height:600px;opacity:1;}
.faq-tag{
  display:inline-block;background:rgba(232,93,4,.12);border:1px solid rgba(232,93,4,.2);
  color:var(--ember);font-size:9px;font-weight:700;letter-spacing:1px;
  padding:2px 8px;border-radius:20px;margin-bottom:6px;text-transform:uppercase;
}
@media(max-width:600px){
  .faq-grid{grid-template-columns:repeat(2,1fr);}
}


/* ===== TEMP SLIDER ===== */
.temp-wrap{background:var(--dark2);border:2px solid var(--dark3);border-radius:14px;padding:16px;}
.temp-display{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;}
.temp-value{font-family:'Cormorant Garamond',serif;font-size:36px;font-weight:700;line-height:1;}
.temp-mode{font-size:12px;color:var(--muted);text-align:right;line-height:1.4;}
.temp-slider{
  -webkit-appearance:none;appearance:none;
  width:100%;height:6px;border-radius:6px;outline:none;cursor:pointer;
  background:linear-gradient(90deg,#5bc8dc 0%,#4caf50 30%,#f48c06 65%,#e85d04 100%);
}
.temp-slider::-webkit-slider-thumb{
  -webkit-appearance:none;appearance:none;
  width:26px;height:26px;border-radius:50%;
  background:var(--cream);border:3px solid var(--fire);
  box-shadow:0 2px 8px rgba(0,0,0,.4);cursor:pointer;transition:transform .2s;
}
.temp-slider::-webkit-slider-thumb:hover{transform:scale(1.15);}
.temp-labels{display:flex;justify-content:space-between;margin-top:8px;}
.temp-label{font-size:10px;color:var(--smoke);font-weight:600;}



/* ===== PRINT SCHEDULE ===== */
@media print {
  body * { visibility: hidden !important; }
  #printArea, #printArea * { visibility: visible !important; }
  #printArea {
    position: fixed !important;
    left: 0 !important; top: 0 !important;
    width: 100% !important;
    background: #fff !important;
    color: #000 !important;
  }
}
.print-modal-overlay{
  position:fixed;inset:0;background:rgba(0,0,0,.8);backdrop-filter:blur(8px);
  z-index:5000;display:none;align-items:center;justify-content:center;padding:20px;
}
.print-modal-overlay.open{display:flex;}
.print-modal{
  background:#fff;border-radius:12px;
  width:100%;max-width:960px;max-height:90vh;
  overflow-y:auto;padding:0;
  box-shadow:0 20px 60px rgba(0,0,0,.5);
}
#printArea{
  padding:24px 32px;
  font-family:Arial,sans-serif;
  color:#1a1a1a;
  background:#fff;
}
.print-header{
  display:flex;justify-content:space-between;align-items:flex-start;
  border-bottom:3px solid #e85d04;padding-bottom:14px;margin-bottom:20px;
}
.print-logo{font-size:24px;font-weight:900;color:#e85d04;letter-spacing:1px;}
.print-logo span{color:#ffd60a;}
.print-date-info{text-align:right;}
.print-date-info .big{font-size:20px;font-weight:700;color:#1a1a1a;}
.print-date-info .small{font-size:12px;color:#666;margin-top:2px;}
.print-stats{display:flex;gap:16px;margin-bottom:20px;}
.print-stat{background:#f8f4f0;border:1px solid #e8d8c8;border-radius:8px;padding:10px 16px;text-align:center;flex:1;}
.print-stat-num{font-size:22px;font-weight:900;color:#e85d04;}
.print-stat-label{font-size:10px;color:#888;text-transform:uppercase;letter-spacing:1px;margin-top:2px;}
.print-table{width:100%;border-collapse:collapse;margin-bottom:20px;}
.print-table th{background:#e85d04;color:#fff;padding:10px 12px;text-align:left;font-size:12px;font-weight:700;letter-spacing:.5px;}
.print-table th:first-child{border-radius:6px 0 0 0;}
.print-table th:last-child{border-radius:0 6px 0 0;}
.print-table td{padding:10px 12px;border-bottom:1px solid #f0e8e0;font-size:12px;vertical-align:top;}
.print-table tr:nth-child(even) td{background:#fdf9f6;}
.print-table tr:last-child td{border-bottom:none;}
.print-banya-badge{display:inline-block;padding:2px 8px;border-radius:20px;font-size:11px;font-weight:700;}
.print-banya-0{background:#fff3e0;color:#e65100;}
.print-banya-1{background:#fce4ec;color:#c62828;}
.print-banya-2{background:#e3f2fd;color:#1565c0;}
.print-status{display:inline-block;padding:2px 8px;border-radius:20px;font-size:10px;font-weight:700;}
.print-status-new{background:#fff9c4;color:#f57f17;}
.print-status-working{background:#e3f2fd;color:#1565c0;}
.print-status-done{background:#e8f5e9;color:#2e7d32;}
.print-status-cancel{background:#ffebee;color:#c62828;text-decoration:line-through;}
.print-time-block{font-size:14px;font-weight:700;color:#e85d04;}
.print-footer{border-top:2px solid #f0e8e0;padding-top:12px;display:flex;justify-content:space-between;align-items:center;font-size:11px;color:#888;}
.print-footer-logo{font-weight:700;color:#e85d04;}
.print-actions{display:flex;gap:10px;padding:16px 24px;background:#f8f8f8;border-top:1px solid #eee;border-radius:0 0 12px 12px;}
.no-data-print{text-align:center;padding:40px;color:#888;font-size:14px;}

/* ===== STATS ===== */
.stats-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-bottom:20px;}
.stats-grid.four{grid-template-columns:repeat(4,1fr);}
.stat-card{background:var(--dark);border:1px solid rgba(255,255,255,.06);border-radius:14px;padding:16px;text-align:center;}
.stat-card-num{font-family:'Cormorant Garamond',serif;font-size:32px;font-weight:700;color:var(--fire);line-height:1;}
.stat-card-label{font-size:11px;color:var(--smoke);text-transform:uppercase;letter-spacing:1px;margin-top:6px;}
.stat-card-sub{font-size:12px;color:var(--muted);margin-top:4px;}
.chart-wrap{background:var(--dark);border:1px solid rgba(255,255,255,.06);border-radius:14px;padding:16px;margin-bottom:12px;}
.chart-title{font-size:13px;font-weight:600;color:var(--gold);margin-bottom:14px;}
.bar-chart{display:flex;align-items:flex-end;gap:4px;height:100px;}
.bar-col{flex:1;display:flex;flex-direction:column;align-items:center;gap:4px;}
.bar{width:100%;border-radius:4px 4px 0 0;background:linear-gradient(to top,var(--fire),var(--ember));min-height:4px;transition:height .5s ease;}
.bar-label{font-size:9px;color:var(--smoke);text-align:center;white-space:nowrap;}
.bar-val{font-size:10px;color:var(--muted);font-weight:600;}
.banya-stat{display:flex;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid rgba(255,255,255,.05);}
.banya-stat:last-child{border-bottom:none;}
.banya-stat-bar{flex:1;height:8px;background:var(--dark2);border-radius:4px;overflow:hidden;}
.banya-stat-fill{height:100%;background:linear-gradient(90deg,var(--fire),var(--ember));border-radius:4px;transition:width .6s ease;}
.banya-stat-name{font-size:13px;font-weight:600;min-width:90px;}
.banya-stat-count{font-size:12px;color:var(--smoke);min-width:60px;text-align:right;}
.period-btns{display:flex;gap:6px;margin-bottom:14px;}
.period-btn{padding:5px 12px;border-radius:20px;border:1px solid rgba(255,255,255,.08);background:var(--dark2);color:var(--smoke);font-family:'Jost',sans-serif;font-size:11px;font-weight:600;cursor:pointer;transition:all .2s;}
.period-btn.active{background:var(--fire);color:#fff;border-color:var(--fire);}
.temp-stat{display:flex;justify-content:space-between;align-items:center;padding:8px 0;border-bottom:1px solid rgba(255,255,255,.05);font-size:13px;}
.temp-stat:last-child{border-bottom:none;}
.temp-stat-bar{flex:1;height:6px;background:var(--dark2);border-radius:3px;overflow:hidden;margin:0 10px;}
.temp-stat-fill{height:100%;border-radius:3px;}
@media(max-width:600px){.stats-grid.four{grid-template-columns:repeat(2,1fr);}}


/* ===== EVENTS ===== */
#events{background:var(--dark2);}
.events-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:48px;}
.event-card{
  background:var(--dark);border:1px solid rgba(255,255,255,.06);
  border-radius:24px;overflow:hidden;transition:all .3s;
}
.event-card:hover{border-color:rgba(232,93,4,.3);transform:translateY(-4px);box-shadow:0 20px 40px rgba(0,0,0,.4);}
.event-card-top{
  padding:28px 24px 20px;
  background:linear-gradient(135deg,var(--dark2),var(--dark3));
  position:relative;overflow:hidden;
}
.event-card-top::before{
  content:'';position:absolute;inset:0;
  background:radial-gradient(ellipse 80% 60% at 50% 100%,rgba(232,93,4,.1) 0%,transparent 70%);
}
.event-card-emoji{font-size:48px;margin-bottom:14px;position:relative;z-index:1;display:block;}
.event-card-name{
  font-family:'Cormorant Garamond',serif;font-size:24px;font-weight:700;
  margin-bottom:8px;position:relative;z-index:1;
}
.event-card-sub{font-size:13px;color:var(--smoke);position:relative;z-index:1;}
.event-card-body{padding:20px 24px 24px;}
.event-features{display:flex;flex-direction:column;gap:10px;margin-bottom:20px;}
.event-feature{display:flex;align-items:flex-start;gap:10px;}
.event-feature-icon{font-size:18px;flex-shrink:0;margin-top:1px;}
.event-feature-text{font-size:13px;color:var(--muted);line-height:1.5;}
.event-feature-text strong{color:var(--cream);font-weight:600;}
.event-badge{
  display:inline-flex;align-items:center;gap:6px;
  background:rgba(232,93,4,.12);border:1px solid rgba(232,93,4,.25);
  color:var(--ember);padding:6px 14px;border-radius:50px;
  font-size:12px;font-weight:700;margin-bottom:14px;
}
.event-book-btn{
  width:100%;padding:13px;
  background:linear-gradient(135deg,var(--dark3),var(--dark4));
  border:1px solid rgba(232,93,4,.3);color:var(--ember);
  border-radius:50px;font-family:'Jost',sans-serif;font-size:13px;font-weight:700;
  cursor:pointer;transition:all .25s;letter-spacing:.5px;
}
.event-book-btn:hover{background:linear-gradient(135deg,var(--fire),var(--ember));color:#fff;border-color:var(--fire);}
@media(max-width:640px){.events-grid{grid-template-columns:1fr;}}

/* ===== BACK TO TOP ===== */
.back-top{
  position:fixed;bottom:100px;right:24px;z-index:1400;
  width:44px;height:44px;border-radius:50%;
  background:linear-gradient(135deg,var(--dark3),var(--dark4));
  border:1px solid rgba(232,93,4,.4);
  color:var(--ember);font-size:18px;
  display:flex;align-items:center;justify-content:center;
  cursor:pointer;transition:all .3s;
  opacity:0;pointer-events:none;
  box-shadow:0 4px 16px rgba(0,0,0,.4);
}
.back-top.visible{opacity:1;pointer-events:all;}
.back-top:hover{background:linear-gradient(135deg,var(--fire),var(--ember));border-color:var(--fire);color:#fff;transform:translateY(-3px);box-shadow:0 8px 24px rgba(232,93,4,.4);}

/* ===== TOAST ===== */
.toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%) translateY(80px);background:var(--dark3);border:1px solid rgba(232,93,4,.4);color:var(--cream);padding:12px 24px;border-radius:50px;font-size:14px;font-weight:500;z-index:9999;transition:transform .4s cubic-bezier(.175,.885,.32,1.275);white-space:nowrap;}
.toast.show{transform:translateX(-50%) translateY(0);}

/* ===== LIGHTBOX ===== */
.lightbox{position:fixed;inset:0;background:rgba(0,0,0,.95);z-index:3000;display:none;align-items:center;justify-content:center;}
.lightbox.open{display:flex;}
.lightbox img{max-width:90vw;max-height:90vh;object-fit:contain;border-radius:12px;}
.lightbox-close{position:absolute;top:20px;right:20px;background:rgba(255,255,255,.1);border:none;color:#fff;width:40px;height:40px;border-radius:50%;cursor:pointer;font-size:20px;}

/* ========================================
   🔥 BOOKING POPUP — тематика лазні
   ======================================== */
.booking-overlay{
  position:fixed;inset:0;z-index:2000;
  display:none;align-items:flex-end;justify-content:center;
  background:rgba(0,0,0,.7);backdrop-filter:blur(6px);
}
.booking-overlay.open{display:flex;}

/* Дым сверху */
.booking-steam{
  position:absolute;top:0;left:0;right:0;height:200px;
  background:linear-gradient(to bottom,rgba(139,115,85,.08) 0%,transparent 100%);
  pointer-events:none;overflow:hidden;
}
.steam-particle{
  position:absolute;bottom:0;
  width:3px;border-radius:50px;
  background:rgba(200,180,150,.3);
  animation:steamRise var(--dur,4s) ease-out infinite;
  animation-delay:var(--del,0s);
  opacity:0;
}
@keyframes steamRise{
  0%{opacity:0;transform:translateY(0) scaleX(1);}
  20%{opacity:.6;}
  80%{opacity:.2;transform:translateY(-160px) scaleX(3);}
  100%{opacity:0;transform:translateY(-200px) scaleX(4);}
}

.booking-sheet{
  position:relative;
  width:100%;max-width:620px;
  max-height:92vh;
  background:var(--dark);
  border-radius:28px 28px 0 0;
  overflow:hidden;
  display:flex;flex-direction:column;
  box-shadow:0 -20px 60px rgba(232,93,4,.2), 0 -4px 0 rgba(232,93,4,.5);
  animation:sheetUp .45s cubic-bezier(.22,.68,0,1.2);
}
@keyframes sheetUp{from{transform:translateY(100%);}to{transform:translateY(0);}}

/* Огненная шапка */
.booking-header{
  position:relative;
  background:linear-gradient(135deg,#1a0800,#2d1200);
  padding:0 20px 20px;
  flex-shrink:0;
  border-bottom:1px solid rgba(232,93,4,.2);
  overflow:hidden;
}
.booking-header::before{
  content:'';position:absolute;inset:0;
  background:radial-gradient(ellipse 80% 60% at 50% 100%,rgba(232,93,4,.25) 0%,transparent 70%);
}
/* Drag handle */
.booking-drag{
  display:flex;justify-content:center;padding:12px 0 8px;
  position:relative;z-index:1;
}
.booking-drag span{
  width:40px;height:4px;border-radius:4px;
  background:rgba(255,255,255,.2);
}
.booking-header-inner{
  position:relative;z-index:1;
  display:flex;align-items:center;gap:14px;
}
/* Flame SVG */
.header-flame{
  width:48px;height:56px;flex-shrink:0;
  filter:drop-shadow(0 0 12px rgba(232,93,4,.8));
  animation:flamePop 2.5s ease-in-out infinite alternate;
}
@keyframes flamePop{
  0%{transform:scale(1) rotate(-2deg);}
  100%{transform:scale(1.08) rotate(2deg);}
}
.booking-header-text{}
.booking-header-text h2{
  font-family:'Cormorant Garamond',serif;
  font-size:24px;font-weight:700;
  color:var(--cream);line-height:1.1;
}
.booking-header-text p{
  font-size:12px;color:var(--smoke);margin-top:4px;
}
.booking-close{
  position:absolute;top:16px;right:16px;z-index:2;
  background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);
  color:var(--muted);width:34px;height:34px;border-radius:50%;
  cursor:pointer;font-size:18px;display:flex;align-items:center;justify-content:center;
  transition:all .2s;
}
.booking-close:hover{background:rgba(232,93,4,.2);color:var(--cream);}

/* Вогненна смуга під шапкою */
.fire-strip{
  height:3px;
  background:linear-gradient(90deg,transparent,var(--fire),var(--gold),var(--ember),transparent);
  background-size:200% 100%;
  animation:fireLine 2s linear infinite;
  flex-shrink:0;
}
@keyframes fireLine{0%{background-position:200% 0;}100%{background-position:-200% 0;}}

.booking-body{
  overflow-y:auto;flex:1;
  padding:20px;
  scrollbar-width:thin;scrollbar-color:var(--fire) var(--dark2);
}

/* ===== FORM ELEMENTS (from banya_4.html) ===== */
.section-label{font-size:10px;letter-spacing:3px;text-transform:uppercase;color:var(--smoke);font-weight:700;margin-bottom:10px;}
.date-row{display:flex;gap:7px;overflow-x:auto;padding-bottom:4px;scrollbar-width:none;}
.date-row::-webkit-scrollbar{display:none;}
.date-chip{flex-shrink:0;background:var(--dark2);border:2px solid var(--dark3);border-radius:12px;padding:9px 12px;text-align:center;cursor:pointer;transition:all .2s;min-width:50px;}
.date-chip .dn{font-size:9px;color:var(--smoke);font-weight:700;text-transform:uppercase;letter-spacing:1px;}
.date-chip .dd{font-family:'Playfair Display',serif;font-size:20px;font-weight:700;color:var(--cream);}
.date-chip.selected{border-color:var(--fire);background:rgba(232,93,4,.12);}
.date-chip.selected .dd{color:var(--gold);}

.banya-cards{display:flex;flex-direction:column;gap:9px;}
.banya-card-form{background:var(--dark2);border:2px solid var(--dark3);border-radius:14px;padding:12px 14px;cursor:pointer;transition:all .25s;display:flex;align-items:center;gap:12px;}
.banya-card-form.active{border-color:var(--fire);background:rgba(232,93,4,.1);}
.banya-card-svg{width:50px;height:50px;flex-shrink:0;}
.banya-card-info h3{font-family:'Cormorant Garamond',serif;font-size:17px;font-weight:700;color:var(--cream);margin-bottom:2px;}
.banya-card-info p{font-size:11px;color:var(--smoke);}
.banya-card-price{font-size:13px;font-weight:700;color:var(--ember);margin-top:3px;}
.banya-check{width:22px;height:22px;border-radius:50%;background:var(--fire);display:flex;align-items:center;justify-content:center;font-size:12px;opacity:0;transition:opacity .2s;flex-shrink:0;color:#fff;}
.banya-card-form.active .banya-check{opacity:1;}

.time-grid-form{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin-top:10px;}
.time-slot{background:var(--dark2);border:2px solid var(--dark3);border-radius:10px;padding:10px 4px;text-align:center;font-size:12px;font-weight:700;cursor:pointer;transition:all .15s;color:var(--smoke);}
.time-slot.free:hover{border-color:var(--green);color:var(--cream);background:rgba(76,175,80,.08);}
.time-slot.sel-start,.time-slot.sel-end{border-color:var(--green);background:rgba(76,175,80,.3);color:#fff;box-shadow:0 0 8px rgba(76,175,80,.4);}
.time-slot.sel-mid{border-color:rgba(76,175,80,.5);background:rgba(76,175,80,.15);color:var(--cream);}
.time-slot.busy{background:rgba(192,57,43,.1);border-color:rgba(192,57,43,.3);color:var(--red);opacity:.6;cursor:not-allowed;text-decoration:line-through;}
.time-slot.pending{background:rgba(255,214,10,.08);border-color:rgba(255,214,10,.35);color:var(--gold);cursor:not-allowed;}
.time-slot.pending::after{content:" ⏳";font-size:9px;}
.time-hint{font-size:11px;color:var(--smoke);line-height:1.5;margin-bottom:4px;}
.sel-badge{margin-top:10px;background:rgba(76,175,80,.1);border:1px solid rgba(76,175,80,.3);border-radius:10px;padding:9px 14px;font-size:12px;color:var(--green);font-weight:600;text-align:center;display:none;}
.sel-badge.show{display:block;}

.price-box{background:linear-gradient(135deg,rgba(232,93,4,.12),rgba(244,140,6,.06));border:1px solid rgba(232,93,4,.3);border-radius:14px;padding:14px;display:none;}
.price-box.show{display:block;}
.price-row-f{display:flex;justify-content:space-between;font-size:12px;padding:5px 0;border-bottom:1px solid rgba(61,26,0,.4);}
.price-row-f:last-child{border-bottom:none;padding-top:8px;margin-top:4px;}
.price-row-f .pk{color:var(--smoke);}
.price-row-f .pv{color:var(--cream);font-weight:600;}
.price-total-big{font-family:'Playfair Display',serif;font-size:22px;font-weight:900;color:var(--gold);}

.field-group{display:flex;flex-direction:column;gap:7px;}
.field-label{font-size:11px;color:var(--smoke);font-weight:700;letter-spacing:1px;text-transform:uppercase;}
.field-input{background:var(--dark2);border:2px solid var(--dark3);border-radius:12px;padding:13px 15px;color:var(--cream);font-family:'Jost',sans-serif;font-size:15px;outline:none;transition:border-color .2s;width:100%;}
.field-input:focus{border-color:var(--fire);}
.field-input::placeholder{color:var(--smoke);opacity:.5;}
.counter-row{display:flex;align-items:center;gap:14px;background:var(--dark2);border:2px solid var(--dark3);border-radius:12px;padding:8px 14px;}
.counter-btn{background:var(--dark3);border:none;color:var(--cream);width:34px;height:34px;border-radius:50%;font-size:20px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s;}
.counter-btn:hover{background:var(--fire);}
.counter-val{font-family:'Playfair Display',serif;font-size:26px;font-weight:700;color:var(--gold);flex:1;text-align:center;}
.counter-label{font-size:12px;color:var(--smoke);}
.venik-item{background:var(--dark2);border:2px solid var(--dark3);border-radius:12px;padding:10px 13px;display:flex;align-items:center;gap:10px;transition:border-color .2s;}
.venik-item.has-count{border-color:rgba(232,93,4,.4);}

.notice-box{background:rgba(244,140,6,.07);border:1px solid rgba(244,140,6,.25);border-radius:14px;padding:14px 16px;}
.notice-title{font-size:12px;font-weight:700;color:var(--ember);margin-bottom:8px;}
.notice-text{font-size:12px;color:var(--smoke);line-height:1.6;margin-bottom:12px;}
.notice-btns{display:flex;gap:8px;}
.notice-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:6px;padding:10px 8px;border-radius:10px;font-family:'Jost',sans-serif;font-size:12px;font-weight:700;text-decoration:none;border:none;cursor:pointer;transition:all .2s;}
.notice-btn.viber{background:rgba(115,96,242,.2);border:1px solid rgba(115,96,242,.4);color:#a594ff;}
.notice-btn.telegram{background:rgba(34,158,217,.2);border:1px solid rgba(34,158,217,.4);color:#6ec6f0;}

.submit-fire{
  width:100%;padding:16px;
  background:linear-gradient(135deg,var(--fire),var(--ember));
  color:#fff;border:none;border-radius:50px;
  font-family:'Jost',sans-serif;font-size:15px;font-weight:700;
  letter-spacing:1px;text-transform:uppercase;cursor:pointer;
  box-shadow:0 4px 24px rgba(232,93,4,.5);transition:all .25s;
  position:relative;overflow:hidden;
}
.submit-fire::after{
  content:'';position:absolute;inset:0;
  background:linear-gradient(135deg,rgba(255,214,10,.15),transparent);
  opacity:0;transition:opacity .3s;
}
.submit-fire:hover::after{opacity:1;}
.submit-fire:hover{transform:translateY(-2px);box-shadow:0 8px 32px rgba(232,93,4,.6);}

/* Success inside popup */
.booking-success{overflow-y:auto;

  display:none;text-align:center;padding:32px 20px;
  flex-direction:column;align-items:center;gap:18px;
}
.booking-success.show{display:flex;}
.success-circle{width:80px;height:80px;border-radius:50%;background:linear-gradient(135deg,#2e7d32,#4caf50);display:flex;align-items:center;justify-content:center;font-size:38px;box-shadow:0 0 40px rgba(76,175,80,.5);animation:pulse 2s ease-in-out infinite;}
@keyframes pulse{0%,100%{box-shadow:0 0 40px rgba(76,175,80,.4);}50%{box-shadow:0 0 60px rgba(76,175,80,.8);}}
.success-title{font-family:'Cormorant Garamond',serif;font-size:28px;font-weight:700;color:var(--gold);}
.success-details{background:var(--dark2);border-radius:16px;padding:16px;width:100%;max-width:360px;text-align:left;display:flex;flex-direction:column;gap:8px;}
.srow{display:flex;justify-content:space-between;font-size:13px;gap:8px;}
.srow .k{color:var(--smoke);flex-shrink:0;}
.srow .v{color:var(--cream);font-weight:600;text-align:right;}
.srow.total-row{border-top:1px solid var(--dark3);padding-top:8px;margin-top:4px;}
.srow.total-row .v{color:var(--gold);font-family:'Playfair Display',serif;font-size:20px;font-weight:900;}



/* ===== CALENDAR ===== */
#calendar{background:var(--dark);}
.cal-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px;flex-wrap:wrap;gap:12px;}
.cal-nav{display:flex;align-items:center;gap:12px;}
.cal-nav-btn{background:var(--dark2);border:1px solid rgba(255,255,255,.08);color:var(--cream);width:36px;height:36px;border-radius:50%;cursor:pointer;font-size:18px;display:flex;align-items:center;justify-content:center;transition:all .2s;}
.cal-nav-btn:hover{background:var(--fire);border-color:var(--fire);}
.cal-week-label{font-family:'Cormorant Garamond',serif;font-size:18px;font-weight:700;color:var(--gold);}
.cal-banya-tabs{display:flex;gap:6px;flex-wrap:wrap;}
.cal-banya-tab{background:var(--dark2);border:1px solid rgba(255,255,255,.08);color:var(--muted);padding:6px 14px;border-radius:50px;font-family:'Jost',sans-serif;font-size:12px;font-weight:500;cursor:pointer;transition:all .2s;}
.cal-banya-tab.active{background:linear-gradient(135deg,var(--fire),var(--ember));color:#fff;border-color:transparent;}
.cal-wrap{overflow-x:auto;border-radius:16px;border:1px solid rgba(255,255,255,.06);}
.cal-table{width:100%;border-collapse:collapse;min-width:600px;}
.cal-table th{background:var(--dark2);padding:10px 8px;font-size:11px;font-weight:600;letter-spacing:.5px;color:var(--muted);text-align:center;border-bottom:1px solid rgba(255,255,255,.06);position:sticky;top:0;z-index:1;}
.cal-table th.time-col{width:54px;color:var(--smoke);position:sticky;left:0;z-index:3;background:var(--dark2);}
.cal-table th.today-col{color:var(--gold);}
.cal-table td{padding:3px 4px;border:1px solid rgba(255,255,255,.04);text-align:center;vertical-align:middle;}
.cal-table td.time-cell{font-size:11px;color:var(--smoke);background:var(--dark2);padding:4px 8px;white-space:nowrap;position:sticky;left:0;z-index:2;border-right:1px solid rgba(255,255,255,.08);}
.cal-slot{height:32px;border-radius:6px;font-size:10px;font-weight:600;display:flex;align-items:center;justify-content:center;cursor:default;transition:all .2s;}
.cal-slot.free{background:rgba(76,175,80,.08);color:rgba(76,175,80,.4);}
.cal-slot.free:hover{background:rgba(76,175,80,.15);color:var(--green);cursor:pointer;}
.cal-slot.busy{background:rgba(232,93,4,.2);color:var(--ember);border:1px solid rgba(232,93,4,.2);}
.cal-slot.pending{background:rgba(255,214,10,.1);color:var(--gold);border:1px solid rgba(255,214,10,.25);}
.cal-slot.past{background:rgba(255,255,255,.02);color:rgba(255,255,255,.1);cursor:not-allowed;}
.cal-slot.today-col{border-left:2px solid rgba(255,214,10,.2);}
.cal-legend{display:flex;gap:16px;margin-top:14px;flex-wrap:wrap;}
.cal-legend-item{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--muted);}
.cal-legend-dot{width:12px;height:12px;border-radius:3px;}

/* ===== VIDEO ===== */
#video{background:var(--dark2);}
.video-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;margin-top:48px;}
.video-card{background:var(--dark);border:1px solid rgba(255,255,255,.06);border-radius:16px;overflow:hidden;transition:border-color .3s,transform .3s;cursor:pointer;}
.video-card:hover{border-color:rgba(232,93,4,.4);transform:translateY(-4px);}
.video-thumb{position:relative;padding-bottom:56.25%;height:0;overflow:hidden;background:var(--dark3);}
.video-thumb img{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;transition:transform .4s;}
.video-card:hover .video-thumb img{transform:scale(1.05);}
.video-play-btn{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.3);transition:background .3s;}
.video-card:hover .video-play-btn{background:rgba(0,0,0,.15);}
.video-play-icon{width:60px;height:60px;background:rgba(232,93,4,.9);border-radius:50%;display:flex;align-items:center;justify-content:center;transition:transform .3s,background .3s;box-shadow:0 8px 32px rgba(232,93,4,.4);}
.video-card:hover .video-play-icon{transform:scale(1.12);background:var(--fire);}
.video-caption{padding:14px 16px;font-size:13px;color:var(--muted);font-family:Jost,sans-serif;}
.video-empty{text-align:center;padding:48px;color:var(--smoke);grid-column:span 2;}
.video-lightbox{position:fixed;inset:0;background:rgba(0,0,0,.97);z-index:3100;display:none;align-items:center;justify-content:center;}
.video-lightbox.open{display:flex;}
.video-lightbox-inner{width:min(900px,90vw);height:min(506px,50vw);position:relative;}
@media(max-width:600px){.video-lightbox-inner{width:95vw;height:53.4vw;}}

/* ===== ADMIN ===== */
#admin-panel{display:none;min-height:100vh;background:var(--dark);padding-top:64px;}
.admin-header{background:var(--dark2);border-bottom:1px solid rgba(255,255,255,.06);padding:20px 24px;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;}
.admin-header h1{font-family:'Cormorant Garamond',serif;font-size:24px;font-weight:700;color:var(--gold);}
.admin-tabs-bar{display:flex;gap:4px;background:var(--dark);border-radius:12px;padding:4px;}
.admin-tab{padding:8px 14px;border-radius:8px;border:none;background:transparent;color:var(--smoke);font-family:'Jost',sans-serif;font-size:12px;font-weight:500;cursor:pointer;transition:all .2s;}
.admin-tab.active{background:var(--fire);color:#fff;}
.admin-content{padding:20px;max-width:900px;margin:0 auto;}
.admin-section{display:none;}
.admin-section.active{display:block;}
.admin-card{background:var(--dark2);border:1px solid rgba(255,255,255,.06);border-radius:16px;padding:20px;margin-bottom:16px;}
.admin-card h3{font-size:14px;font-weight:600;margin-bottom:14px;color:var(--gold);}
.admin-field{display:flex;flex-direction:column;gap:6px;margin-bottom:12px;}
.admin-label{font-size:11px;letter-spacing:2px;text-transform:uppercase;color:var(--smoke);}
.admin-input,.admin-textarea,.admin-select{background:var(--dark);border:1px solid rgba(255,255,255,.08);border-radius:10px;padding:10px 14px;color:var(--cream);font-family:'Jost',sans-serif;font-size:13px;width:100%;outline:none;transition:border-color .2s;}
.admin-input:focus,.admin-textarea:focus,.admin-select:focus{border-color:rgba(232,93,4,.5);}
.admin-textarea{resize:vertical;min-height:70px;}
.admin-select option{background:var(--dark);}
.admin-row{display:grid;grid-template-columns:1fr 1fr;gap:12px;}
.admin-btn{padding:9px 18px;border-radius:50px;border:none;font-family:'Jost',sans-serif;font-size:13px;font-weight:600;cursor:pointer;transition:all .2s;}
.admin-btn.primary{background:linear-gradient(135deg,var(--fire),var(--ember));color:#fff;}
.admin-btn.secondary{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);color:var(--muted);}
.admin-btn.danger{background:rgba(192,57,43,.12);border:1px solid rgba(192,57,43,.3);color:var(--red);}
.booking-list-item{background:var(--dark);border:1px solid rgba(255,255,255,.06);border-radius:12px;padding:14px;margin-bottom:10px;display:flex;justify-content:space-between;align-items:flex-start;gap:12px;flex-wrap:wrap;}
.bli-name{font-size:14px;font-weight:600;margin-bottom:4px;}
.bli-details{font-size:12px;color:var(--muted);line-height:1.7;}
.stat-grid-a{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-bottom:20px;}
.stat-box{background:var(--dark);border:1px solid rgba(255,255,255,.06);border-radius:14px;padding:16px;text-align:center;}
.stat-num{font-family:'Cormorant Garamond',serif;font-size:36px;font-weight:700;color:var(--fire);}
.stat-label{font-size:11px;color:var(--smoke);letter-spacing:1px;text-transform:uppercase;margin-top:4px;}
.review-admin-item{background:var(--dark);border:1px solid rgba(255,255,255,.06);border-radius:12px;padding:13px;margin-bottom:10px;}
.login-wrap{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px;}
.login-box{background:var(--dark2);border:1px solid rgba(255,255,255,.06);border-radius:24px;padding:36px;max-width:360px;width:100%;text-align:center;}
.login-box h2{font-family:'Cormorant Garamond',serif;font-size:28px;margin-bottom:6px;color:var(--gold);}
.login-box p{font-size:13px;color:var(--muted);margin-bottom:24px;}
.login-error{font-size:12px;color:var(--red);margin-top:8px;display:none;}
.price-field-input{background:var(--dark3);border:1px solid rgba(232,93,4,.3);border-radius:8px;padding:7px 10px;color:var(--gold);font-family:'Playfair Display',serif;font-size:16px;font-weight:700;width:90px;text-align:right;outline:none;}

@media(max-width:768px){
  .nav-links{display:none;}
  .hamburger{display:flex;}
  .contacts-wrap{grid-template-columns:1fr;}
  .admin-row{grid-template-columns:1fr;}
  .gallery-grid{grid-template-columns:repeat(2,1fr);}
  .gallery-item-wide{grid-column:span 2;}
  .gallery-empty{grid-column:span 2;}
  .admin-tabs-bar{flex-wrap:wrap;}
}
@media(max-width:480px){
  .gallery-grid{grid-template-columns:repeat(2,1fr);}
  .gallery-item-wide{grid-column:span 1;aspect-ratio:1;}
  .time-grid-form{grid-template-columns:repeat(3,1fr);}
}
