/* Leapstrat base styles: shared by every page.
   Fonts, resets, colours, announce bar, header, mobile menu, footer, sticky mobile booking bar.
   Breakpoints: desktop 1025px+ | tablet 641–1024px | mobile 640px and below.
   Load on every page BEFORE the page stylesheet. */

* { box-sizing:border-box;margin:0;padding:0 }
html { scroll-behavior:smooth }
body { font-family:'Manrope',system-ui,sans-serif;background:#0E0D12;color:#12100E;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility }
a { color:#4B18E8;text-decoration:none }
a:not([class]):hover { color:#12100E }
input, select, textarea, button { font-family:inherit }
::selection { background:#D8FF57;color:#12100E }
@keyframes drift{from{transform:translateX(0)}to{transform:translateX(-50%)}}
[data-hidden] { display:none !important }
.b-1 { background:#FFFFFF; overflow-x:clip; }
.b-2 { background:#12100E; color:#EFEBE4; }
.b-3 { max-width:1320px; margin:0 auto; padding:0 26px; min-height:40px; display:flex; align-items:center; justify-content:space-between; gap:16px; flex-wrap:wrap; font-size:12.5px; font-weight:600; }
.b-4 { display:inline-flex; align-items:center; gap:9px; }
.b-5 { width:7px; height:7px; background:#D8FF57; display:inline-block; border-radius:50%; }
.b-6 { display:flex; gap:18px; flex-wrap:wrap; }
.b-7 { color:#EFEBE4; }
.b-8 { position:sticky; top:0; z-index:60; background:#FFFFFF; border-bottom:1px solid #E6E1D8; }
.b-9 { max-width:1320px; margin:0 auto; padding:0 26px; min-height:74px; display:flex; align-items:center; justify-content:space-between; gap:20px; flex-wrap:wrap; }
.b-10 { display:inline-flex; align-items:center; gap:10px; color:#12100E; }
.b-11 { height:32px; width:auto; display:block; }
.b-12 { font-family:'Archivo',sans-serif; font-weight:800; font-stretch:112%; font-size:22px; letter-spacing:-0.035em; }
.b-13 { display:flex; align-items:center; gap:clamp(18px,2.2vw,30px); flex-wrap:nowrap; flex:1 1 340px; min-width:0; overflow-x:auto; scrollbar-width:none; font-size:15px; font-weight:600; white-space:nowrap; justify-content:center; }
.b-14 { color:#12100E; padding:12px 0; display:inline-flex; align-items:center; }
.b-15 { color:#12100E; padding:12px 0; display:inline-flex; align-items:center; gap:6px; }
.b-16 { display:block; flex:none; }
.b-17 { background:#4B18E8; color:#fff; font-weight:700; font-size:14.5px; padding:14px 22px; box-shadow:4px 4px 0 #12100E; }
.b-49 { font-size:11.5px; font-weight:700; letter-spacing:0.13em; text-transform:uppercase; color:#D8FF57; }
.b-96 { display:flex; align-items:center; gap:8px; }
.b-199 { background:#12100E; color:rgba(247,244,238,0.8); }
.b-200 { max-width:1320px; margin:0 auto; padding:62px 26px 34px; display:grid; grid-template-columns:minmax(0,1.5fr) minmax(0,1fr) minmax(0,1fr) minmax(0,1.15fr); gap:48px; }
.b-201 { display:inline-flex; align-items:center; gap:10px; }
.b-202 { font-family:'Archivo',sans-serif; font-weight:800; font-stretch:112%; font-size:21px; letter-spacing:-0.035em; color:#F7F4EE; }
.b-203 { margin-top:16px; font-size:15px; line-height:1.6; max-width:330px; }
.b-204 { display:flex; flex-wrap:nowrap; gap:8px; margin-top:22px; }
.b-205 { color:#D8FF57; font-size:13.5px; white-space:nowrap; border:1px solid rgba(216,255,87,0.4); padding:9px 11px; }
.b-206 { display:flex; flex-direction:column; gap:9px; margin-top:16px; }
.b-207 { color:rgba(247,244,238,0.8); font-size:15px; }
.b-208 { margin-top:16px; font-size:15px; line-height:1.7; }
.b-209 { color:#F7F4EE; }
.b-210 { margin-top:12px; font-size:14px; line-height:1.6; color:rgba(247,244,238,0.65); }
.b-211 { border-top:1px solid rgba(247,244,238,0.16); }
.b-212 { max-width:1320px; margin:0 auto; padding:30px 26px; display:grid; grid-template-columns:minmax(0,150px) minmax(0,1fr); gap:40px; align-items:start; }
.b-213 { font-size:11.5px; font-weight:700; letter-spacing:0.13em; text-transform:uppercase; color:#D8FF57; padding-top:2px; }
.b-214 { font-size:13px; font-weight:700; letter-spacing:0.1em; text-transform:uppercase; color:#F7F4EE; }
.b-215 { margin-top:8px; font-size:14.5px; line-height:1.6; text-wrap:pretty; }
.b-216 { max-width:1320px; margin:0 auto; padding:18px 26px; display:flex; gap:14px; flex-wrap:wrap; justify-content:space-between; font-size:13px; }
.b-217 { width:24px; height:24px; display:grid; place-items:center; border:0; background:none; color:inherit; overflow:visible; }
.b-217:hover { transform:translateY(-1px); }
.b-218 { display:block; width:100%; height:100%; overflow:visible; }
.b-hover-1:hover { color:#D8FF57; }
.b-hover-2:hover { color:#4B18E8; }
.b-hover-3:hover { box-shadow:0 0 0 #12100E; background:#12100E; }
.b-hover-15:hover { background:#D8FF57; color:#12100E; }
.b-hover-16:hover { color:#fff; }
.b-hover-17:hover { background:#D8FF57; color:#12100E; border-color:#D8FF57; }
.m-burger { display:none; width:46px; height:46px; background:#12100E; border:0; flex-direction:column; align-items:center; justify-content:center; gap:5px; cursor:pointer; flex:none; }
.m-burger span { display:block; width:20px; height:2px; background:#D8FF57; }
.m-menu { border-top:1px solid #E6E1D8; background:#FFFFFF; padding:8px 26px 20px; max-height:calc(100dvh - 66px); overflow-y:auto; overscroll-behavior:contain; }
.m-menu-link { display:flex; align-items:center; justify-content:space-between; min-height:52px; border-bottom:1px solid #F0EDE6; font-size:17px; font-weight:700; color:#12100E; }
.m-menu-arrow { color:#4B18E8; }
.m-menu-cta { display:flex; align-items:center; justify-content:center; min-height:52px; margin-top:16px; background:#4B18E8; color:#fff; font-weight:800; font-size:16px; box-shadow:4px 4px 0 #12100E; }
.m-menu-cta:hover { color:#fff; background:#12100E; }
.m-menu-contact { display:flex; flex-direction:column; margin-top:8px; font-size:15px; font-weight:600; }
.m-menu-contact a { color:#4B18E8; min-height:44px; display:inline-flex; align-items:center; }
.m-menu-social { display:flex; align-items:center; gap:8px; margin-top:12px; padding-top:16px; border-top:1px solid #F0EDE6; }
.m-social { width:24px; height:24px; display:grid; place-items:center; border:0; background:none; color:inherit; overflow:visible; }
.m-social:hover { transform:translateY(-1px); }
.m-bar { display:none; }
@media (min-width:1025px) {
  .m-menu { display:none !important; }
}
@media (max-width:1024px) {
  .b-9 { flex-wrap:nowrap; min-height:66px; }
  .b-13 { display:none; }
  .b-17 { margin-left:auto; }
  .m-burger { display:flex; }
  .b-200 { grid-template-columns:repeat(2,minmax(0,1fr)); gap:36px; }
  .b-215 { white-space:normal; }
}
@media (max-width:640px) {
  body { padding-bottom:72px; background:#12100E; }
  .b-2 { display:none; }
  .b-8 { z-index:70; transition:transform 0.24s ease; }
  .b-9 { padding:0 18px; min-height:60px; }
  .b-11 { height:28px; }
  .b-12 { font-size:20px; }
  .b-17 { display:none; }
  .m-menu { padding:8px 18px 20px; max-height:calc(100dvh - 60px); }
  .ls-48 > .b-49 { grid-column:1 / -1; }
  .b-200 { grid-template-columns:minmax(0,1fr); padding:44px 18px 28px; gap:30px; }
  .b-212 { grid-template-columns:minmax(0,1fr); gap:12px; padding:24px 18px; }
  .b-216 { padding:18px; }
  .m-bar { display:flex; position:fixed; bottom:0; left:0; right:0; z-index:80; gap:10px; padding:10px 14px; background:rgba(18,16,14,0.96); border-top:1px solid rgba(247,244,238,0.18); }
  .grecaptcha-badge { bottom:84px !important; }
  .m-bar-cta { flex:1; display:flex; align-items:center; justify-content:center; min-height:52px; background:#D8FF57; color:#12100E; font-weight:800; font-size:15.5px; }
  .m-bar-cta:hover { color:#12100E; background:#fff; }
  .m-bar-call { width:52px; min-height:52px; display:flex; align-items:center; justify-content:center; border:1px solid rgba(247,244,238,0.5); color:#D8FF57; font-size:19px; }
  .m-bar-call:hover { color:#12100E; background:#D8FF57; }
}

/* Mobile tap targets (44px minimum) */
@media (max-width:640px) {
  .b-207 { display:flex; align-items:center; min-height:44px; }
  .b-206 { gap:0; }
  .b-217 { width:24px; height:24px; }
}

/* Services dropdown (desktop) */
@keyframes ddIn { from { opacity:0; transform:translateY(-6px); } to { opacity:1; transform:none; } }
.b-16 { transition:transform 0.18s ease; }
.b-15[aria-expanded="true"] { color:#4B18E8; }
.b-15[aria-expanded="true"] .b-16 { transform:rotate(180deg); }
.b-dd { position:absolute; left:0; right:0; top:100%; background:#FFFFFF; border-top:1px solid #E6E1D8; border-bottom:2px solid #12100E; box-shadow:0 28px 48px -28px rgba(18,16,14,0.3); animation:ddIn 0.18s ease-out; }
.b-dd-in { max-width:1320px; margin:0 auto; padding:30px 26px 34px; display:grid; grid-template-columns:minmax(0,270px) minmax(0,1fr); gap:44px; }
.b-dd-label { font-size:11.5px; font-weight:700; letter-spacing:0.13em; text-transform:uppercase; color:#4B18E8; }
.b-dd-h { margin-top:12px; font-family:'Archivo',sans-serif; font-weight:800; font-stretch:112%; font-size:25px; line-height:1.08; letter-spacing:-0.03em; color:#12100E; text-wrap:balance; }
.b-dd-p { margin-top:12px; font-size:15px; line-height:1.6; color:#4A4640; text-wrap:pretty; }
.b-dd-all { margin-top:18px; display:inline-flex; font-size:15px; font-weight:800; color:#4B18E8; border-bottom:2px solid #4B18E8; padding-bottom:3px; }
.b-dd-all:hover { color:#12100E; border-color:#12100E; }
.b-dd-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); border-top:1px solid #E6E1D8; border-left:1px solid #E6E1D8; }
.b-dd-item { display:flex; gap:14px; align-items:flex-start; padding:20px 20px 22px; border-right:1px solid #E6E1D8; border-bottom:1px solid #E6E1D8; color:#12100E; transition:background 0.15s ease; }
.b-dd-item:hover, .b-dd-item:focus-visible { background:#F4F1EA; color:#12100E; outline:none; }
.b-dd-num { flex:none; width:30px; height:30px; display:grid; place-items:center; border:1px solid #E6E1D8; background:#FFFFFF; font-size:12px; font-weight:800; color:#4B18E8; transition:background 0.15s ease, border-color 0.15s ease, color 0.15s ease; }
.b-dd-item:hover .b-dd-num, .b-dd-item:focus-visible .b-dd-num { background:#D8FF57; border-color:#12100E; color:#12100E; }
.b-dd-body { display:flex; flex-direction:column; gap:6px; min-width:0; }
.b-dd-t { display:flex; justify-content:space-between; gap:10px; font-size:16px; font-weight:800; line-height:1.3; }
.b-dd-arr { color:#4B18E8; opacity:0; transform:translateX(-4px); transition:opacity 0.15s ease, transform 0.15s ease; }
.b-dd-item:hover .b-dd-arr, .b-dd-item:focus-visible .b-dd-arr { opacity:1; transform:none; }
.b-dd-d { font-size:14px; line-height:1.55; color:#6A645B; text-wrap:pretty; }
.b-dd-fit { display:flex; flex-direction:column; gap:6px; padding:20px 20px 22px; background:#12100E; color:#F7F4EE; border-right:1px solid #12100E; border-bottom:1px solid #12100E; transition:background 0.15s ease; }
.b-dd-fit:hover, .b-dd-fit:focus-visible { background:#4B18E8; color:#F7F4EE; outline:none; }
.b-dd-fit-t { font-size:16px; font-weight:800; line-height:1.3; }
.b-dd-fit-d { font-size:14px; line-height:1.55; color:rgba(247,244,238,0.78); }
.b-dd-fit-link { margin-top:auto; padding-top:8px; font-size:14.5px; font-weight:800; color:#D8FF57; }
@media (max-width:1180px) { .b-dd-in { grid-template-columns:minmax(0,220px) minmax(0,1fr); gap:32px; } }
@media (max-width:1024px) { .b-dd { display:none !important; } }

/* Engagement models row in the Services dropdown */
.b-dd-models { grid-column:2; display:grid; grid-template-columns:minmax(0,150px) minmax(0,1fr); gap:20px; align-items:center; margin-top:-18px; padding:16px 20px; background:#F7F4EE; border:1px solid #E6E1D8; }
.b-dd-mlabel { font-size:11.5px; font-weight:700; letter-spacing:0.13em; text-transform:uppercase; color:#4B18E8; line-height:1.4; }
.b-dd-mlist { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; }
.b-dd-model { display:flex; flex-direction:column; gap:2px; padding:10px 14px; background:#FFFFFF; border:1px solid #E6E1D8; color:#12100E; transition:border-color 0.15s ease, box-shadow 0.15s ease; }
.b-dd-model:hover, .b-dd-model:focus-visible { border-color:#12100E; box-shadow:4px 4px 0 #4B18E8; color:#12100E; outline:none; }
.b-dd-mt { font-size:14.5px; font-weight:800; }
.b-dd-ms { font-size:13px; color:#6A645B; }
@media (max-width:1180px) { .b-dd-models { grid-template-columns:minmax(0,1fr); gap:10px; } }
.m-sub-label { margin-top:10px; padding-top:14px; border-top:1px solid #F0EDE6; font-size:11.5px; font-weight:700; letter-spacing:0.13em; text-transform:uppercase; color:#6A645B; }
.m-sub-model { padding-left:34px; }

/* Services sub-list in the mobile / tablet menu */
.m-sub-btn { width:100%; background:none; border:0; border-bottom:1px solid #F0EDE6; cursor:pointer; text-align:left; font-family:inherit; }
.m-sub-btn[aria-expanded="true"] { color:#4B18E8; }
.m-sub-sign { width:28px; height:28px; display:grid; place-items:center; color:#4B18E8; font-size:22px; font-weight:700; line-height:1; }
.m-sub-list { display:flex; flex-direction:column; padding:6px 0 10px; border-bottom:1px solid #F0EDE6; }
.m-sub-link { display:flex; align-items:center; gap:12px; min-height:46px; font-size:15.5px; font-weight:600; color:#12100E; }
.m-sub-link:hover { color:#4B18E8; }
.m-sub-num { width:22px; flex:none; font-size:12px; font-weight:800; color:#4B18E8; }
.m-sub-all { padding-left:34px; font-weight:800; color:#4B18E8; }

/* Current page in the nav */
.b-active, .b-active:hover { color:#4B18E8; box-shadow:inset 0 -2px 0 #4B18E8; }
.m-menu-link.b-active { color:#4B18E8; box-shadow:none; }

/* Footer legal links (Privacy policy, Cookie settings) */
.b-legal { display:flex; flex-wrap:wrap; gap:6px 18px; align-items:center; }
.b-legal-a { cursor:pointer; background:none; border:0; padding:0; font:inherit; color:rgba(247,244,238,0.8); border-bottom:1px solid rgba(247,244,238,0.3); }
.b-legal-a:hover { color:#D8FF57; }

/* Cookie consent banner (js/cookie-consent.js) */
.b-ck { position:fixed; left:24px; bottom:24px; z-index:90; width:calc(100% - 48px); max-width:440px; max-height:calc(100vh - 48px); display:flex; flex-direction:column; background:#FFFFFF; color:#12100E; border:1.5px solid #12100E; box-shadow:8px 8px 0 #4B18E8; }
.b-ck-body { padding:22px 22px 18px; overflow-y:auto; min-height:0; flex:1 1 auto; }
.b-ck-label { display:flex; align-items:center; gap:10px; font-size:11.5px; font-weight:700; letter-spacing:0.13em; text-transform:uppercase; color:#4B18E8; }
.b-ck-sq { width:10px; height:10px; background:#D8FF57; border:1.5px solid #12100E; display:block; }
.b-ck-h { margin-top:10px; font-family:'Archivo',sans-serif; font-weight:800; font-stretch:112%; font-size:20px; line-height:1.15; letter-spacing:-0.03em; }
.b-ck-p { margin-top:8px; font-size:14.5px; line-height:1.55; color:#4A4640; }
.b-ck-a { color:#12100E; font-weight:700; border-bottom:1.5px solid #4B18E8; }
.b-ck-a:hover { color:#4B18E8; }
.b-ck-prefs { margin-top:14px; border-top:1px solid #E6E1D8; }
.b-ck-row { display:flex; gap:14px; align-items:flex-start; justify-content:space-between; padding:12px 0; border-bottom:1px solid #E6E1D8; }
.b-ck-row-tx { display:flex; flex-direction:column; gap:3px; min-width:0; }
.b-ck-row-l { font-size:14.5px; font-weight:800; }
.b-ck-row-d { font-size:13px; line-height:1.45; color:#6A645B; }
.b-ck-sw { flex:0 0 44px; height:26px; margin-top:2px; cursor:pointer; background:#FFFFFF; border:1.5px solid #12100E; border-radius:0; padding:0; position:relative; }
.b-ck-sw[disabled] { cursor:not-allowed; opacity:0.55; }
.b-ck-knob { position:absolute; top:2px; left:2px; width:18px; height:18px; background:#12100E; transition:left .15s; }
.b-ck-sw[aria-checked="true"] { background:#4B18E8; }
.b-ck-sw[aria-checked="true"] .b-ck-knob { left:21px; background:#D8FF57; }
.b-ck-btns { flex:none; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; padding:14px 22px 22px; }
.b-ck-open .b-ck-btns { border-top:1px solid #E6E1D8; }
.b-ck-btn { cursor:pointer; min-height:46px; background:#12100E; border:1px solid #12100E; color:#FFFFFF; font-family:inherit; font-weight:700; font-size:14.5px; border-radius:0; }
.b-ck-btn:hover { background:#4B18E8; border-color:#4B18E8; }
@media (max-width:640px) {
  .b-ck { left:12px; right:12px; bottom:84px; width:auto; max-width:none; max-height:calc(100vh - 96px); }  /* sits above the sticky booking bar */
  .b-legal-a { min-height:44px; display:inline-flex; align-items:center; border-bottom:0; text-decoration:underline; text-underline-offset:4px; }
}

/* ============ Booking popup (any page: add the #b-bk markup + js/booking.js; links use data-book) ============ */
.b-bk { position:fixed; inset:0; z-index:200; display:flex; align-items:center; justify-content:center; padding:24px; }
.b-bk[hidden] { display:none; }
.b-bk-backdrop { position:absolute; inset:0; background:rgba(18,16,14,0.8); backdrop-filter:blur(6px); -webkit-backdrop-filter:blur(6px); }
.b-bk-box { position:relative; width:100%; max-width:1200px; max-height:calc(100vh - 48px); display:flex; background:#F7F4EE; border:1px solid #12100E; box-shadow:12px 12px 0 #4B18E8; overflow:hidden; }
.b-bk-side { flex:0 0 360px; background:#12100E; color:#F7F4EE; position:relative; overflow-x:hidden; overflow-y:auto; scrollbar-width:none; padding:26px 28px; display:flex; flex-direction:column; min-height:0; }
.b-bk-side::-webkit-scrollbar { display:none; }
.b-bk-glow { position:absolute; top:-140px; left:-120px; width:420px; height:420px; background:radial-gradient(circle,rgba(75,24,232,0.55),rgba(18,16,14,0) 68%); pointer-events:none; }
.b-bk-side-in { position:relative; display:flex; flex-direction:column; flex:1 0 auto; }
.b-bk-full { display:flex; flex-direction:column; flex:1 0 auto; }
.b-bk-tags { display:flex; flex-wrap:wrap; gap:8px; }
.b-bk-tag { background:#D8FF57; color:#12100E; padding:6px 10px; font-size:11.5px; font-weight:800; letter-spacing:0.12em; text-transform:uppercase; }
.b-bk-tag-o { border:1px solid rgba(247,244,238,0.3); padding:5px 10px; font-size:11.5px; font-weight:700; letter-spacing:0.12em; text-transform:uppercase; }
.b-bk-h { margin-top:16px; font-family:'Archivo',sans-serif; font-weight:800; font-stretch:112%; font-size:clamp(26px,2.4vw,32px); line-height:1.02; letter-spacing:-0.04em; text-wrap:balance; }
.b-bk-lime { color:#D8FF57; }
.b-bk-who { margin-top:18px; display:flex; flex-direction:column; gap:8px; }
.b-bk-person { display:flex; align-items:center; gap:12px; min-width:0; }
.b-bk-img { width:40px; height:40px; object-fit:cover; object-position:50% 20%; display:block; flex:none; border:1.5px solid #D8FF57; filter:grayscale(1) contrast(1.05); }
.b-bk-who-tx { display:flex; flex-direction:column; gap:1px; min-width:0; }
.b-bk-name { font-family:'Archivo',sans-serif; font-weight:800; font-stretch:112%; font-size:15.5px; line-height:1.2; letter-spacing:-0.02em; }
.b-bk-role { font-size:12.5px; font-weight:600; color:rgba(247,244,238,0.66); }
.b-bk-note { margin-top:2px; padding-top:10px; border-top:1px solid rgba(247,244,238,0.16); font-size:13.5px; font-weight:600; line-height:1.45; color:rgba(247,244,238,0.82); }
.b-bk-stats { margin-top:18px; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); border:1px solid rgba(247,244,238,0.16); }
.b-bk-stat { padding:10px 14px; min-width:0; box-shadow:inset -1px 0 0 rgba(247,244,238,0.16); }
.b-bk-stat:last-child { box-shadow:none; }
.b-bk-stat-v { display:block; font-family:'Archivo',sans-serif; font-weight:800; font-stretch:112%; font-size:18px; letter-spacing:-0.03em; color:#D8FF57; white-space:nowrap; }
.b-bk-stat-k { display:block; margin-top:3px; font-size:12.5px; font-weight:600; color:rgba(247,244,238,0.72); }
.b-bk-label { display:block; margin-top:20px; font-size:11.5px; font-weight:700; letter-spacing:0.13em; text-transform:uppercase; color:#D8FF57; }
.b-bk-cover { margin-top:10px; display:flex; flex-direction:column; border-top:1px solid rgba(247,244,238,0.16); }
.b-bk-row { display:grid; grid-template-columns:34px minmax(0,1fr); gap:12px; padding:10px 0; border-bottom:1px solid rgba(247,244,238,0.16); font-size:14.5px; line-height:1.5; font-weight:600; color:rgba(247,244,238,0.88); }
.b-bk-num { width:26px; height:26px; background:#D8FF57; color:#12100E; display:flex; align-items:center; justify-content:center; font-family:'Archivo',sans-serif; font-weight:800; font-stretch:112%; font-size:11.5px; }
.b-bk-write { margin-top:auto; padding-top:16px; font-size:13.5px; line-height:1.5; color:rgba(247,244,238,0.72); }
.b-bk-write a { color:#D8FF57; font-weight:700; border-bottom:1.5px solid #D8FF57; }
.b-bk-write a:hover { color:#fff; }
.b-bk-main { flex:1 1 auto; display:flex; flex-direction:column; min-height:0; min-width:0; background:#F7F4EE; }
.b-bk-top { flex:none; display:flex; align-items:center; justify-content:space-between; gap:16px; padding:12px 12px 12px 24px; border-bottom:1px solid #E6E1D8; background:#FFFFFF; }
.b-bk-pick { display:flex; align-items:center; gap:10px; font-size:11.5px; font-weight:700; letter-spacing:0.13em; text-transform:uppercase; color:#4B18E8; }
.b-bk-sq { width:8px; height:8px; background:#4B18E8; display:block; }
.b-bk-x { cursor:pointer; width:44px; height:44px; flex:none; display:grid; place-items:center; background:#12100E; color:#fff; border:0; border-radius:0; }
.b-bk-x:hover { background:#4B18E8; }
.b-bk-x svg { display:block; }
.b-bk-cal { position:relative; flex:1; min-height:0; overflow:auto; -webkit-overflow-scrolling:touch; display:flex; flex-direction:column; padding:12px 8px; }
.b-bk-loading { position:absolute; inset:0; display:grid; place-items:center; font-size:14px; font-weight:600; color:#8A8378; pointer-events:none; }
.b-bk-loading[hidden] { display:none; }
.b-bk-embed { position:relative; width:100%; margin:auto 0; min-height:480px; }
.b-bk-embed.is-ready { min-height:0; }
@media (max-width:1024px) {
  .b-bk-side { flex-basis:300px; }
  .b-bk-stat { padding:10px; }
  .b-bk-stat-v { font-size:15px; }
  .b-bk-stat-k { font-size:11.5px; }
}
@media (max-width:760px) {
  .b-bk { padding:0; }
  .b-bk-box { height:100%; max-height:none; flex-direction:column; box-shadow:none; border:0; }
  .b-bk-side { flex:0 0 auto; padding:20px 18px; }
  .b-bk-h { font-size:24px; }
  .b-bk-full { display:none; }
  .b-bk-cal { padding:0; }
}
