/* ═══════════════════════════════════════════════════════════════
   BAMI · CONTACT + BOOKING · ISOLATED STYLESHEET (v1)
   All selectors prefixed with .bk-  (bami kontakt)
   Nothing here overrides or depends on style.css except
   the shared :root palette (--cyan, --violet, --bg-void, etc).
   If :root vars are missing, fallbacks ensure graceful degrade.
   ═══════════════════════════════════════════════════════════════ */

.bk-root{
  --bk-bg:        var(--bg-void, #020409);
  --bk-surface:   var(--bg-surface, #080e1c);
  --bk-card:      var(--bg-card, #0c1424);
  --bk-card-h:    var(--bg-card-h, #111d35);
  --bk-glass:     rgba(12,20,36,.72);
  --bk-glass-h:   rgba(17,29,53,.88);
  --bk-border:    rgba(255,255,255,.06);
  --bk-border-h:  rgba(0,212,255,.32);
  --bk-cyan:      var(--cyan, #00d4ff);
  --bk-violet:    var(--violet, #7c3aed);
  --bk-green:     var(--green, #00e5a0);
  --bk-orange:    var(--orange, #ff6a35);
  --bk-rose:      var(--rose, #ff4d6d);
  --bk-gold:      var(--gold, #f59e0b);
  --bk-txt1:      var(--txt1, #ddeeff);
  --bk-txt2:      var(--txt2, #6e90b0);
  --bk-txt3:      var(--txt3, #374f68);
  --bk-font-hd:   var(--font-hd, 'Orbitron', monospace);
  --bk-font-body: var(--font-body, 'Rajdhani', sans-serif);
  --bk-font-alt:  var(--font-alt, 'Exo 2', sans-serif);
  --bk-r-sm: 10px; --bk-r-md: 16px; --bk-r-lg: 22px; --bk-r-xl: 30px;
  --bk-ease: cubic-bezier(.4,0,.2,1);
  --bk-spring: cubic-bezier(.34,1.56,.64,1);
  --bk-shadow: 0 20px 60px rgba(0,0,0,.55), 0 0 0 1px rgba(255,255,255,.03) inset;
  --bk-glow-c: 0 0 40px rgba(0,212,255,.22);
  --bk-glow-v: 0 0 40px rgba(124,58,237,.22);
  position: relative;
  isolation: isolate;
}

/* ── HERO (self-contained, does not touch .page-hero) ────────── */
.bk-hero{
  position:relative; padding:8.5rem 0 4rem; overflow:hidden;
  background:
    radial-gradient(ellipse at 20% 0%,  rgba(0,212,255,.10), transparent 55%),
    radial-gradient(ellipse at 85% 35%, rgba(124,58,237,.10), transparent 55%),
    linear-gradient(180deg, var(--bk-surface) 0%, var(--bk-bg) 100%);
}
.bk-hero::before{
  content:''; position:absolute; inset:0; pointer-events:none;
  background-image:
    linear-gradient(rgba(0,212,255,.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(0,212,255,.035) 1px, transparent 1px);
  background-size: 60px 60px;
  mask-image: radial-gradient(ellipse at 50% 40%, #000 0%, transparent 70%);
}
.bk-hero::after{
  content:''; position:absolute; left:0; right:0; bottom:0; height:1px;
  background:linear-gradient(90deg,transparent,rgba(0,212,255,.22),transparent);
}
.bk-hero-inner{
  max-width:1280px; margin:0 auto; padding:0 2.5rem;
  position:relative; z-index:2;
  display:grid; grid-template-columns:1fr auto; gap:2rem; align-items:flex-end;
}
.bk-breadcrumb{
  display:flex; align-items:center; gap:.55rem;
  font-size:.78rem; color:var(--bk-txt3); margin-bottom:1.5rem;
  font-family:var(--bk-font-alt); letter-spacing:.04em;
}
.bk-breadcrumb a{ color:var(--bk-cyan); text-decoration:none; opacity:.85; transition:opacity .2s; }
.bk-breadcrumb a:hover{ opacity:1; }
.bk-breadcrumb i{ font-size:.55rem; opacity:.5; }
.bk-eyebrow{
  display:inline-flex; align-items:center; gap:10px;
  padding:6px 16px; border-radius:100px;
  background:rgba(0,212,255,.07); border:1px solid rgba(0,212,255,.22);
  color:var(--bk-cyan); font-size:.72rem; font-weight:700;
  letter-spacing:.18em; text-transform:uppercase;
  font-family:var(--bk-font-alt); margin-bottom:1.25rem;
}
.bk-eyebrow .bk-pulse{
  width:7px; height:7px; border-radius:50%; background:var(--bk-cyan);
  box-shadow:0 0 0 0 rgba(0,212,255,.6); animation:bkPulse 2s ease infinite;
}
@keyframes bkPulse{ 0%,100%{box-shadow:0 0 0 0 rgba(0,212,255,.5)} 50%{box-shadow:0 0 0 8px rgba(0,212,255,0)} }
.bk-title{
  font-family:var(--bk-font-hd); font-weight:800;
  font-size:clamp(2.3rem, 4.8vw, 4rem); line-height:1.05;
  letter-spacing:.02em; color:var(--bk-txt1); margin:0 0 1rem;
}
.bk-title .bk-grad{
  background:linear-gradient(135deg, var(--bk-cyan) 0%, var(--bk-violet) 60%, var(--bk-orange) 100%);
  -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent;
}
.bk-lead{ color:var(--bk-txt2); font-size:1.05rem; line-height:1.7; max-width:620px; }

/* language switch inside hero */
.bk-lang{
  display:inline-flex; padding:4px; border-radius:100px;
  background:rgba(255,255,255,.03); border:1px solid var(--bk-border);
  backdrop-filter:blur(12px);
}
.bk-lang button{
  appearance:none; border:none; cursor:pointer; background:transparent;
  padding:8px 18px; border-radius:100px;
  font-family:var(--bk-font-alt); font-size:.72rem; font-weight:700;
  letter-spacing:.18em; text-transform:uppercase; color:var(--bk-txt3);
  transition:all .3s var(--bk-ease);
}
.bk-lang button.is-active{
  background:linear-gradient(135deg, var(--bk-cyan), var(--bk-violet));
  color:#fff; box-shadow:0 4px 20px rgba(0,212,255,.35);
}
.bk-lang button:hover:not(.is-active){ color:var(--bk-txt1); }

/* ── MAIN SECTION ───────────────────────────────────────────── */
.bk-section{ position:relative; padding:1.5rem 0 6.5rem; }
.bk-section .bk-container{ max-width:1280px; margin:0 auto; padding:0 2.5rem; }
.bk-grid{
  display:grid; grid-template-columns: 380px 1fr; gap:2.25rem;
  align-items:start;
}

/* ── LEFT: contact channels ─────────────────────────────────── */
.bk-channels{ display:flex; flex-direction:column; gap:.85rem; position:sticky; top:90px; }
.bk-channels h3{
  font-family:var(--bk-font-hd); font-size:.82rem; font-weight:700;
  letter-spacing:.18em; text-transform:uppercase; color:var(--bk-txt3);
  margin:0 0 .5rem; padding-left:.25rem;
}
.bk-channel{
  display:flex; gap:1.1rem; align-items:flex-start;
  padding:1.15rem 1.3rem;
  background:var(--bk-glass); backdrop-filter:blur(16px);
  border:1px solid var(--bk-border); border-radius:var(--bk-r-lg);
  position:relative; overflow:hidden;
  transition: transform .35s var(--bk-spring), border-color .3s, background .3s;
}
.bk-channel::before{
  content:''; position:absolute; left:0; top:0; bottom:0; width:2px;
  background:linear-gradient(180deg, var(--bk-cyan), var(--bk-violet));
  transform:scaleY(0); transform-origin:top; transition:transform .4s var(--bk-ease);
}
.bk-channel:hover{ transform:translateX(6px); background:var(--bk-glass-h); border-color:var(--bk-border-h); }
.bk-channel:hover::before{ transform:scaleY(1); }
.bk-ch-icon{
  width:44px; height:44px; flex-shrink:0; border-radius:12px;
  display:flex; align-items:center; justify-content:center;
  font-size:1rem; color:var(--bk-cyan);
  background:linear-gradient(135deg, rgba(0,212,255,.14), rgba(0,212,255,.04));
  border:1px solid rgba(0,212,255,.2);
}
.bk-ch-icon.is-green{ color:var(--bk-green); background:linear-gradient(135deg,rgba(0,229,160,.14),rgba(0,229,160,.04)); border-color:rgba(0,229,160,.2); }
.bk-ch-icon.is-violet{ color:var(--bk-violet); background:linear-gradient(135deg,rgba(124,58,237,.14),rgba(124,58,237,.04)); border-color:rgba(124,58,237,.22); }
.bk-ch-icon.is-gold{ color:var(--bk-gold); background:linear-gradient(135deg,rgba(245,158,11,.14),rgba(245,158,11,.04)); border-color:rgba(245,158,11,.22); }
.bk-ch-body h4{ font-family:var(--bk-font-hd); font-size:.86rem; font-weight:700; color:var(--bk-txt1); margin:0 0 .3rem; letter-spacing:.03em; }
.bk-ch-body a{ color:var(--bk-cyan); text-decoration:none; font-weight:600; font-size:.92rem; }
.bk-ch-body a.is-green{ color:var(--bk-green); }
.bk-ch-body a.is-violet{ color:var(--bk-violet); }
.bk-ch-body p{ font-size:.76rem; color:var(--bk-txt3); margin:.2rem 0 0; line-height:1.5; }

/* ── RIGHT: tabs card ───────────────────────────────────────── */
.bk-card{
  background:var(--bk-glass); backdrop-filter:blur(28px) saturate(180%);
  border:1px solid var(--bk-border); border-radius:var(--bk-r-xl);
  box-shadow:var(--bk-shadow); overflow:hidden; position:relative;
}
.bk-card::before{
  content:''; position:absolute; top:0; left:0; right:0; height:1px;
  background:linear-gradient(90deg,transparent,rgba(0,212,255,.4),rgba(124,58,237,.4),transparent);
}

/* tabs */
.bk-tabs{ display:flex; gap:0; border-bottom:1px solid var(--bk-border); padding:0 1.25rem; }
.bk-tab{
  appearance:none; background:transparent; border:none; cursor:pointer;
  display:inline-flex; align-items:center; gap:10px;
  padding:1.1rem 1.25rem;
  font-family:var(--bk-font-alt); font-size:.76rem; font-weight:700;
  letter-spacing:.14em; text-transform:uppercase; color:var(--bk-txt3);
  position:relative; transition:color .3s var(--bk-ease);
}
.bk-tab i{ font-size:.9rem; opacity:.8; }
.bk-tab::after{
  content:''; position:absolute; left:1rem; right:1rem; bottom:-1px; height:2px;
  background:linear-gradient(90deg, var(--bk-cyan), var(--bk-violet));
  border-radius:2px; transform:scaleX(0); transform-origin:left;
  transition:transform .35s var(--bk-ease);
}
.bk-tab:hover{ color:var(--bk-txt2); }
.bk-tab.is-active{ color:var(--bk-txt1); }
.bk-tab.is-active::after{ transform:scaleX(1); }

.bk-panels{ padding:2rem 2rem 2.25rem; }
.bk-panel{ display:none; animation:bkFade .5s var(--bk-ease) both; }
.bk-panel.is-active{ display:block; }
@keyframes bkFade{ from{opacity:0;transform:translateY(10px)} to{opacity:1;transform:none} }

/* ── FORM ───────────────────────────────────────────────────── */
.bk-form{ display:flex; flex-direction:column; gap:1.1rem; }
.bk-row{ display:grid; grid-template-columns:1fr 1fr; gap:1rem; }
.bk-field{ display:flex; flex-direction:column; gap:.4rem; }
.bk-label{
  font-family:var(--bk-font-alt); font-size:.66rem; font-weight:700;
  letter-spacing:.18em; text-transform:uppercase; color:var(--bk-txt3);
}
.bk-label .bk-req{ color:var(--bk-rose); margin-left:3px; }
.bk-input, .bk-textarea{
  width:100%; padding:13px 16px;
  background:rgba(255,255,255,.025);
  border:1px solid var(--bk-border); border-radius:var(--bk-r-sm);
  color:var(--bk-txt1); font-family:var(--bk-font-body); font-size:.95rem;
  transition:border-color .3s, background .3s, box-shadow .3s;
  outline:none;
}
.bk-input::placeholder, .bk-textarea::placeholder{ color:#46607a; }
.bk-input:focus, .bk-textarea:focus{
  border-color:rgba(0,212,255,.45);
  background:rgba(0,212,255,.03);
  box-shadow:0 0 0 3px rgba(0,212,255,.08);
}
.bk-textarea{ resize:vertical; min-height:130px; line-height:1.6; }

/* action bar */
.bk-action{
  display:flex; align-items:center; justify-content:space-between; gap:1rem;
  margin-top:.5rem; flex-wrap:wrap;
}
.bk-action small{ font-size:.75rem; color:var(--bk-txt3); line-height:1.5; }
.bk-submit{
  appearance:none; border:none; cursor:pointer;
  display:inline-flex; align-items:center; gap:10px;
  padding:14px 30px; border-radius:var(--bk-r-md);
  background:linear-gradient(135deg, var(--bk-cyan) 0%, var(--bk-violet) 100%);
  color:#fff; font-family:var(--bk-font-body); font-size:.95rem; font-weight:700;
  letter-spacing:.08em; text-transform:uppercase;
  box-shadow:0 6px 24px rgba(0,212,255,.32);
  position:relative; overflow:hidden;
  transition: transform .35s var(--bk-spring), box-shadow .35s, filter .3s;
}
.bk-submit::after{
  content:''; position:absolute; inset:0;
  background:linear-gradient(120deg, transparent 30%, rgba(255,255,255,.22) 50%, transparent 70%);
  transform:translateX(-120%); transition:transform .8s var(--bk-ease);
}
.bk-submit:hover{ transform:translateY(-2px) scale(1.015); box-shadow:0 14px 40px rgba(0,212,255,.48); }
.bk-submit:hover::after{ transform:translateX(120%); }
.bk-submit:disabled{ filter:grayscale(.4) brightness(.7); cursor:not-allowed; transform:none; }
.bk-submit i{ font-size:.85rem; }

/* ── BOOKING: calendar + slots ──────────────────────────────── */
.bk-booking{ display:grid; grid-template-columns: 1.05fr 1fr; gap:1.75rem; }

.bk-cal{
  background:rgba(255,255,255,.015);
  border:1px solid var(--bk-border);
  border-radius:var(--bk-r-lg);
  padding:1.25rem;
}
.bk-cal-head{
  display:flex; align-items:center; justify-content:space-between;
  margin-bottom:1rem; padding:0 .25rem;
}
.bk-cal-title{
  font-family:var(--bk-font-hd); font-size:1rem; font-weight:700;
  color:var(--bk-txt1); letter-spacing:.05em;
}
.bk-cal-nav{ display:flex; gap:.4rem; }
.bk-cal-btn{
  appearance:none; background:rgba(255,255,255,.04); border:1px solid var(--bk-border);
  color:var(--bk-txt2); width:34px; height:34px; border-radius:10px;
  cursor:pointer; display:inline-flex; align-items:center; justify-content:center;
  transition:all .25s var(--bk-ease);
}
.bk-cal-btn:hover:not(:disabled){ border-color:var(--bk-border-h); color:var(--bk-cyan); background:rgba(0,212,255,.06); }
.bk-cal-btn:disabled{ opacity:.3; cursor:not-allowed; }

.bk-cal-weekdays{
  display:grid; grid-template-columns:repeat(7,1fr); gap:4px;
  margin-bottom:6px;
}
.bk-cal-weekdays span{
  text-align:center; font-family:var(--bk-font-alt);
  font-size:.62rem; font-weight:700; letter-spacing:.2em;
  text-transform:uppercase; color:var(--bk-txt3); padding:6px 0;
}
.bk-cal-days{ display:grid; grid-template-columns:repeat(7,1fr); gap:4px; }
.bk-day{
  appearance:none; background:transparent; border:1px solid transparent;
  aspect-ratio:1/1; border-radius:12px; cursor:pointer;
  font-family:var(--bk-font-hd); font-size:.85rem; font-weight:600;
  color:var(--bk-txt2); position:relative;
  transition: all .28s var(--bk-ease);
}
.bk-day.is-empty{ pointer-events:none; opacity:0; }
.bk-day.is-muted{ color:var(--bk-txt3); pointer-events:none; opacity:.3; }
.bk-day.is-disabled{
  color:var(--bk-txt3); pointer-events:none;
  text-decoration:line-through; text-decoration-color:rgba(110,144,176,.3);
  opacity:.35;
}
.bk-day:not(.is-muted):not(.is-disabled):not(.is-empty):hover{
  border-color:var(--bk-border-h); background:rgba(0,212,255,.06); color:var(--bk-txt1);
  transform:translateY(-1px);
}
.bk-day.is-today{ color:var(--bk-cyan); }
.bk-day.is-today::after{
  content:''; position:absolute; bottom:6px; left:50%; transform:translateX(-50%);
  width:4px; height:4px; border-radius:50%; background:var(--bk-cyan);
  box-shadow:0 0 8px var(--bk-cyan);
}
.bk-day.is-selected{
  background:linear-gradient(135deg, var(--bk-cyan), var(--bk-violet));
  color:#fff; border-color:transparent;
  box-shadow:0 8px 24px rgba(0,212,255,.4), 0 0 0 3px rgba(0,212,255,.15);
  transform:translateY(-1px);
}
.bk-day.is-selected::after{ background:#fff; box-shadow:0 0 6px #fff; }

/* slot panel */
.bk-slot-panel{
  background:rgba(255,255,255,.015);
  border:1px solid var(--bk-border);
  border-radius:var(--bk-r-lg);
  padding:1.25rem; display:flex; flex-direction:column; min-height:100%;
}
.bk-slot-head{
  display:flex; align-items:center; justify-content:space-between;
  gap:1rem; margin-bottom:1rem; padding:0 .25rem;
}
.bk-slot-date{
  font-family:var(--bk-font-hd); font-size:.95rem; font-weight:700;
  color:var(--bk-txt1); letter-spacing:.03em; line-height:1.25;
}
.bk-slot-sub{
  font-family:var(--bk-font-alt); font-size:.65rem; font-weight:700;
  letter-spacing:.18em; text-transform:uppercase; color:var(--bk-txt3);
  margin-top:.3rem;
}
.bk-slot-badge{
  padding:5px 12px; border-radius:100px;
  background:rgba(0,229,160,.08); border:1px solid rgba(0,229,160,.22);
  color:var(--bk-green); font-family:var(--bk-font-alt);
  font-size:.62rem; font-weight:700; letter-spacing:.14em; text-transform:uppercase;
  white-space:nowrap;
}
.bk-slot-grid{
  display:grid; grid-template-columns:repeat(2,1fr); gap:.55rem;
}
.bk-slot{
  appearance:none; cursor:pointer;
  padding:11px 14px; border-radius:var(--bk-r-sm);
  background:rgba(255,255,255,.025); border:1px solid var(--bk-border);
  color:var(--bk-txt1); font-family:var(--bk-font-hd); font-size:.92rem;
  font-weight:700; letter-spacing:.05em; position:relative;
  transition:all .28s var(--bk-ease); text-align:center;
  display:inline-flex; align-items:center; justify-content:center; gap:8px;
}
.bk-slot::before{
  content:''; width:6px; height:6px; border-radius:50%;
  background:var(--bk-green); box-shadow:0 0 8px var(--bk-green); opacity:.8;
}
.bk-slot:hover:not(:disabled){
  border-color:var(--bk-border-h); background:rgba(0,212,255,.07);
  transform:translateY(-1px); color:var(--bk-cyan);
}
.bk-slot.is-selected{
  background:linear-gradient(135deg, rgba(0,212,255,.2), rgba(124,58,237,.2));
  border-color:var(--bk-cyan); color:#fff;
  box-shadow:0 8px 24px rgba(0,212,255,.25), 0 0 0 1px rgba(0,212,255,.3);
}
.bk-slot:disabled{
  cursor:not-allowed; color:var(--bk-txt3); background:rgba(255,77,109,.04);
  border-color:rgba(255,77,109,.12); text-decoration:line-through;
}
.bk-slot:disabled::before{ background:var(--bk-rose); box-shadow:none; opacity:.5; }

.bk-slot-empty{
  display:flex; flex-direction:column; align-items:center; justify-content:center;
  text-align:center; padding:3rem 1.5rem; color:var(--bk-txt3);
  border:1px dashed var(--bk-border); border-radius:var(--bk-r-md);
  font-size:.88rem; line-height:1.6;
}
.bk-slot-empty i{ font-size:1.75rem; color:var(--bk-cyan); opacity:.5; margin-bottom:.75rem; }

/* booking form reveal */
.bk-bform{ margin-top:1.75rem; padding-top:1.5rem; border-top:1px dashed var(--bk-border); }
.bk-bform-title{
  font-family:var(--bk-font-hd); font-size:.92rem; font-weight:700;
  color:var(--bk-txt1); margin-bottom:.25rem; letter-spacing:.04em;
}
.bk-bform-meta{
  display:inline-flex; align-items:center; gap:10px; flex-wrap:wrap;
  padding:8px 14px; border-radius:100px;
  background:rgba(0,212,255,.06); border:1px solid rgba(0,212,255,.2);
  font-family:var(--bk-font-alt); font-size:.72rem; font-weight:600;
  letter-spacing:.06em; color:var(--bk-cyan); margin-bottom:1.25rem;
}
.bk-bform-meta i{ font-size:.7rem; }
.bk-bform-meta strong{ color:#fff; font-weight:700; font-family:var(--bk-font-hd); letter-spacing:.05em; }

/* toast / status */
.bk-toast{
  position:fixed; bottom:28px; left:50%; transform:translate(-50%,140%);
  padding:14px 22px 14px 18px;
  background:var(--bk-card); border:1px solid var(--bk-border-h);
  border-radius:100px;
  display:inline-flex; align-items:center; gap:12px;
  box-shadow:0 20px 60px rgba(0,0,0,.6), var(--bk-glow-c);
  font-family:var(--bk-font-body); font-size:.92rem; font-weight:600;
  color:var(--bk-txt1); z-index:10000;
  transition:transform .45s var(--bk-spring), opacity .3s;
  opacity:0; max-width:calc(100vw - 32px);
}
.bk-toast.is-show{ transform:translate(-50%,0); opacity:1; }
.bk-toast i{ font-size:1rem; }
.bk-toast.is-ok{ border-color:rgba(0,229,160,.35); box-shadow:0 20px 60px rgba(0,0,0,.6), 0 0 40px rgba(0,229,160,.2); }
.bk-toast.is-ok i{ color:var(--bk-green); }
.bk-toast.is-err{ border-color:rgba(255,77,109,.35); box-shadow:0 20px 60px rgba(0,0,0,.6), 0 0 40px rgba(255,77,109,.2); }
.bk-toast.is-err i{ color:var(--bk-rose); }

/* success screen (after booking) */
.bk-success{
  text-align:center; padding:2.25rem 1rem 1rem;
  animation:bkFade .5s var(--bk-ease) both;
}
.bk-success-ring{
  width:84px; height:84px; border-radius:50%; margin:0 auto 1.25rem;
  background:radial-gradient(circle, rgba(0,229,160,.18), rgba(0,229,160,0) 70%);
  display:flex; align-items:center; justify-content:center; position:relative;
}
.bk-success-ring::before{
  content:''; position:absolute; inset:0; border-radius:50%;
  border:1.5px solid rgba(0,229,160,.5); animation:bkRing 2s ease infinite;
}
@keyframes bkRing{ 0%{transform:scale(1); opacity:.7} 100%{transform:scale(1.4); opacity:0} }
.bk-success-ring i{ color:var(--bk-green); font-size:2rem; }
.bk-success h3{ font-family:var(--bk-font-hd); font-size:1.35rem; margin:0 0 .5rem; color:var(--bk-txt1); letter-spacing:.03em; }
.bk-success p{ color:var(--bk-txt2); font-size:.95rem; line-height:1.65; max-width:420px; margin:0 auto 1.25rem; }
.bk-success-meta{
  display:inline-flex; align-items:center; gap:12px; flex-wrap:wrap; justify-content:center;
  padding:10px 18px; border-radius:100px;
  background:rgba(0,212,255,.06); border:1px solid rgba(0,212,255,.22);
  font-family:var(--bk-font-hd); font-size:.78rem; color:var(--bk-txt1);
  letter-spacing:.05em; margin-bottom:1.5rem;
}
.bk-success-meta i{ color:var(--bk-cyan); }
.bk-success-reset{
  appearance:none; background:transparent; border:1px solid var(--bk-border);
  color:var(--bk-txt2); padding:10px 22px; border-radius:var(--bk-r-sm);
  cursor:pointer; font-family:var(--bk-font-body); font-size:.85rem; font-weight:600;
  letter-spacing:.06em; text-transform:uppercase;
  transition:all .3s var(--bk-ease);
}
.bk-success-reset:hover{ border-color:var(--bk-cyan); color:var(--bk-cyan); background:rgba(0,212,255,.05); }


/* ── SELECT dark override ───────────────────────────────────── */
select.bk-input{
  appearance:none; -webkit-appearance:none;
  background-color:rgba(8,14,28,.92);
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%2300d4ff' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");
  background-repeat:no-repeat;
  background-position:right 14px center;
  padding-right:40px;
  cursor:pointer;
  color:var(--bk-txt1);
}
select.bk-input option{
  background:#0c1424;
  color:#ddeeff;
  padding:10px;
}
select.bk-input option:checked,
select.bk-input option:hover{
  background:rgba(0,212,255,.15);
  color:#00d4ff;
}
/* ── RESPONSIVE ─────────────────────────────────────────────── */
@media (max-width: 1080px){
  .bk-grid{ grid-template-columns:1fr; }
  .bk-channels{ position:static; flex-direction:row; flex-wrap:wrap; }
  .bk-channels h3{ flex-basis:100%; }
  .bk-channel{ flex:1 1 calc(50% - .5rem); min-width:260px; }
}
@media (max-width: 860px){
  .bk-hero{ padding:6.5rem 0 3rem; }
  .bk-hero-inner{ grid-template-columns:1fr; align-items:flex-start; }
  .bk-hero-inner .bk-lang{ align-self:flex-start; }
  .bk-booking{ grid-template-columns:1fr; }
  .bk-section .bk-container,
  .bk-hero-inner{ padding:0 1.5rem; }
}
@media (max-width: 640px){
  .bk-hero{ padding:5.5rem 0 2.5rem; }
  .bk-channels{ flex-direction:column; }
  .bk-channel{ flex:1 1 100%; }
  .bk-panels{ padding:1.25rem 1.1rem 1.5rem; }
  .bk-tabs{ padding:0 .5rem; overflow-x:auto; }
  .bk-tabs::-webkit-scrollbar{ display:none; }
  .bk-tab{ padding:.95rem .85rem; font-size:.7rem; gap:7px; white-space:nowrap; }
  .bk-row{ grid-template-columns:1fr; }
  .bk-action{ flex-direction:column-reverse; align-items:stretch; }
  .bk-submit{ width:100%; justify-content:center; }
  .bk-slot-grid{ grid-template-columns:repeat(2,1fr); }
  .bk-cal, .bk-slot-panel{ padding:1rem; }
  .bk-cal-weekdays span{ font-size:.55rem; letter-spacing:.12em; }
  .bk-day{ font-size:.78rem; border-radius:10px; }
}
@media (max-width: 380px){
  .bk-slot-grid{ grid-template-columns:1fr; }
}

/* reduced motion */
@media (prefers-reduced-motion: reduce){
  .bk-root *{ animation:none !important; transition:none !important; }
}
