/* Bliink blocks — visitor-facing styles. Every colour is a variable so templates can re-skin them
   (set them on body via a template's custom CSS). */
.bxb{
  --bxb-bg:rgba(255,255,255,.94); --bxb-ink:#16161a; --bxb-mute:#6e6c67; --bxb-line:rgba(22,22,26,.10);
  --bxb-accent:#16161a; --bxb-accent-ink:#fff; --bxb-radius:16px;
  --bxb-soft:rgba(22,22,26,.05); --bxb-solid:#fff; --bxb-border:0 solid transparent; --bxb-blur:none;
  --bxb-shadow:0 1px 2px rgba(0,0,0,.05),0 10px 28px -14px rgba(0,0,0,.22);
  font-family:inherit;color:var(--bxb-ink);text-align:left
}
.bxb-title{font-weight:700;font-size:1.05rem;letter-spacing:-.01em;margin:0 0 .6rem;display:flex;align-items:center;justify-content:space-between;gap:.5rem}

/* FAQ */
.bxb-faq{background:var(--bxb-bg);border-radius:var(--bxb-radius);padding:.9rem 1rem;box-shadow:0 1px 2px rgba(0,0,0,.06)}
.bxb-faq-item{border-top:1px solid var(--bxb-line)}
.bxb-faq-item:first-of-type{border-top:0}
.bxb-faq-item summary{list-style:none;cursor:pointer;padding:.75rem 1.6rem .75rem 0;font-weight:600;position:relative}
.bxb-faq-item summary::-webkit-details-marker{display:none}
.bxb-faq-item summary::after{content:"+";position:absolute;right:.2rem;top:.6rem;font-size:1.2rem;font-weight:400;transition:transform .25s}
.bxb-faq-item[open] summary::after{transform:rotate(45deg)}
.bxb-faq-a{padding:0 0 .9rem;color:var(--bxb-mute);line-height:1.55;white-space:pre-line}

/* Countdown */
.bxb-count{background:var(--bxb-bg);border-radius:var(--bxb-radius);padding:1rem;text-align:center}
.bxb-count .bxb-title{justify-content:center}
.bxb-count-row{display:grid;grid-template-columns:repeat(4,1fr);gap:.5rem}
.bxb-count-cell{background:var(--bxb-soft);border-radius:12px;padding:.6rem 0}
.bxb-count-cell b{display:block;font-size:1.6rem;font-variant-numeric:tabular-nums;line-height:1.1}
.bxb-count-cell span{font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;color:var(--bxb-mute)}
.bxb-count-done{font-weight:700;font-size:1.1rem;padding:.4rem 0}

/* Gallery */
.bxb-gallery{position:relative;--bxb-ratio:16/10}
.bxb-gal-track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:.5rem;border-radius:var(--bxb-radius);scrollbar-width:none}
.bxb-gal-track::-webkit-scrollbar{display:none}
.bxb-gal-slide{flex:0 0 100%;margin:0;scroll-snap-align:center;position:relative}
.bxb-gal-img{width:100%;aspect-ratio:var(--bxb-ratio);object-fit:cover;border-radius:var(--bxb-radius);display:block}
.bxb-gal-slide figcaption{position:absolute;left:.7rem;bottom:.7rem;background:rgba(0,0,0,.55);color:#fff;font-size:.8rem;padding:.25rem .6rem;border-radius:99px}
.bxb-gal-dots{display:flex;justify-content:center;gap:.35rem;margin-top:.5rem}
.bxb-gal-dot{width:7px;height:7px;border-radius:50%;border:0;padding:0;background:currentColor;opacity:.3;cursor:pointer}
.bxb-gal-dot.on{opacity:.9}

/* Testimonials */
.bxb-quotes .bxb-title{justify-content:center}
.bxb-quote{background:var(--bxb-bg);border-radius:var(--bxb-radius);padding:1.1rem 1.1rem 1rem;margin:0;cursor:pointer}
.bxb-quote.in{animation:bxbIn .5s ease}
@keyframes bxbIn{from{opacity:0;transform:translateY(6px)}}
.bxb-quote blockquote{margin:0 0 .8rem;padding:0;border:0;background:none;font-style:normal;font-size:1rem;line-height:1.5;color:inherit}
.bxb-quote figcaption{display:flex;align-items:center;gap:.6rem}
.bxb-quote-ph{width:38px;height:38px;border-radius:50%;object-fit:cover}
.bxb-quote figcaption b{display:block;font-size:.9rem}
.bxb-quote figcaption small{display:block;color:var(--bxb-mute);font-size:.78rem}

/* Buttons (grid + solid) */
.bxb-btns{display:grid;grid-template-columns:repeat(var(--bxb-cols,2),minmax(0,1fr));gap:.5rem}
.bxb-btn{display:flex;align-items:center;justify-content:center;text-align:center;min-height:48px;padding:.6rem .8rem;border-radius:12px;
  background:var(--bxb-bg);color:var(--bxb-ink)!important;font-weight:600;text-decoration:none!important;transition:transform .15s}
.bxb-btn:hover{transform:translateY(-1px)}
.bxb-btn-solid{background:var(--bxb-accent);color:var(--bxb-accent-ink)!important;margin-top:.4rem}

/* Divider */
.bxb-div{height:var(--bxb-gap);display:flex;align-items:center;justify-content:center}
.bxb-div-line::before{content:"";width:100%;height:1px;background:currentColor;opacity:.25}
.bxb-div-dots::before{content:"• • •";letter-spacing:.4em;opacity:.45}
.bxb-div-wave::before{content:"";width:60%;height:10px;opacity:.35;background:radial-gradient(circle at 5px -1px,transparent 5px,currentColor 5.5px,transparent 6.5px) 0 0/10px 10px repeat-x}

/* Feature + product cards */
.bxb-card{background:var(--bxb-bg);border-radius:var(--bxb-radius);overflow:hidden}
.bxb-card-img{width:100%;aspect-ratio:16/9;object-fit:cover;display:block}
.bxb-product .bxb-card-img{aspect-ratio:1/1}
.bxb-card-body{padding:1rem}
.bxb-card-title{font-weight:700;font-size:1.05rem;margin-bottom:.25rem}
.bxb-card-text{color:var(--bxb-mute);margin:.2rem 0 .4rem;line-height:1.5;white-space:pre-line}
.bxb-price{display:flex;gap:.5rem;align-items:baseline;margin:.15rem 0 .2rem}
.bxb-price b{font-size:1.15rem}
.bxb-price s{color:var(--bxb-mute);font-size:.9rem}

/* Hours */
.bxb-hours{background:var(--bxb-bg);border-radius:var(--bxb-radius);padding:.9rem 1rem}
.bxb-hours-row{display:flex;justify-content:space-between;padding:.35rem 0;border-top:1px solid var(--bxb-line);font-size:.92rem}
.bxb-hours-row.today{font-weight:700}
.bxb-badge{font-size:.72rem;font-weight:700;padding:.2rem .55rem;border-radius:99px}
.bxb-badge.open{background:#e3f6ea;color:#17803d}
.bxb-badge.closed{background:#fde8e6;color:#b42318}
.bxb-note{display:block;color:var(--bxb-mute);margin-top:.5rem}


/* ---------- Layout: half width + card styles ---------- */
.bxb-l{padding-right:6px!important}.bxb-r{padding-left:6px!important}
.bxb-half>*,.bxb-half .bxb{height:100%}
.bxb-pill{border-radius:99px}
.bxb-chip{display:inline-block;font-size:.7rem;font-weight:700;padding:.2rem .6rem;border-radius:99px;background:rgba(255,255,255,.22);backdrop-filter:blur(8px);margin-bottom:.4rem;align-self:flex-start}

/* Profile card */
.bxb-profile{box-shadow:0 10px 30px -12px rgba(0,0,0,.25)}
.bxb-prof-cover{display:block;width:100%;height:120px;object-fit:cover;background:linear-gradient(135deg,#d9d4ff,#ffd9c7)}
.bxb-profile .bxb-card-body{padding-top:0}
.bxb-prof-av{width:76px;height:76px;border-radius:50%;object-fit:cover;margin-top:-38px;border:4px solid var(--bxb-solid);background:var(--bxb-bg);display:block}
.bxb-profile .bxb-card-title{margin-top:.5rem;display:flex;align-items:center;gap:.35rem}
.bxb-tick{display:inline-grid;place-items:center;width:18px;height:18px;border-radius:50%;background:#2f80ed;color:#fff;font-size:.65rem}
.bxb-prof-handle{color:var(--bxb-mute);font-size:.85rem}
.bxb-prof-foot{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;margin-top:.7rem}
.bxb-prof-stat b{display:block;font-size:1rem;line-height:1.1}
.bxb-prof-stat small{color:var(--bxb-mute);font-size:.72rem}
.bxb-prof-foot .bxb-btn{margin:0 0 0 auto;min-height:40px;padding:.4rem 1.1rem}

/* Photo card + Event share the overlay */
.bxb-photo,.bxb-event{position:relative;display:block;border-radius:22px;overflow:hidden;min-height:240px;background:#222;color:#fff!important;text-decoration:none!important;box-shadow:0 14px 34px -14px rgba(0,0,0,.45)}
.bxb-half .bxb-photo{min-height:200px}
.bxb-photo-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.bxb-photo-text{position:relative;display:flex;flex-direction:column;justify-content:flex-end;min-height:inherit;height:100%;padding:1rem;
  background:linear-gradient(to top,rgba(0,0,0,.72),rgba(0,0,0,.15) 55%,transparent)}
.bxb-photo-title{font-size:1.45rem;font-weight:700;line-height:1.1;letter-spacing:-.02em}
.bxb-half .bxb-photo-title{font-size:1.1rem}
.bxb-photo-sub{opacity:.85;font-size:.85rem;margin-top:.3rem}
.bxb-photo-btn{align-self:flex-start;margin-top:.7rem;background:#fff;color:#16161a;font-weight:600;font-size:.85rem;padding:.45rem 1rem;border-radius:99px}
.bxb-photo:hover .bxb-photo-img{transform:scale(1.03)}
.bxb-photo-img{transition:transform .5s}

/* Stats */
.bxb-stats{background:var(--bxb-bg);border-radius:var(--bxb-radius);padding:1rem}
.bxb-stats-row{display:flex;align-items:flex-end;gap:1.1rem;flex-wrap:wrap}
.bxb-stats b{display:block;font-variant-numeric:tabular-nums;letter-spacing:-.03em;line-height:1}
.bxb-stats-big b{font-size:3.2rem}
.bxb-stats-small b{font-size:1.5rem;color:var(--bxb-mute)}
.bxb-stats small{display:block;color:var(--bxb-mute);font-size:.72rem;margin-top:.25rem}
.bxb-stats-big{margin-right:auto}

/* Event */
.bxb-event{min-height:300px}
.bxb-event .bxb-photo-text{background:linear-gradient(to top,rgba(10,60,80,.9),rgba(10,60,80,.35) 50%,transparent)}
.bxb-event-row{display:flex;align-items:center;gap:.7rem;margin:.7rem 0 .2rem}
.bxb-event-date{background:#fff;color:#16161a;border-radius:10px;min-width:46px;text-align:center;padding:.25rem .3rem;line-height:1.1}
.bxb-event-date small{display:block;font-size:.62rem;text-transform:uppercase;font-weight:700;color:#b42318}
.bxb-event-date b{font-size:1.2rem}
.bxb-event-where{flex:1;min-width:0}
.bxb-event-where b{display:block;font-size:.9rem}
.bxb-event-where small{display:block;opacity:.8;font-size:.75rem}
.bxb-event-time{font-size:.85rem;font-weight:600}
.bxb-event .bxb-btn{--bxb-accent:#fff;--bxb-accent-ink:#16161a;margin-top:.6rem;align-self:flex-start;min-height:40px;padding:0 1.6rem}

/* Ticket / pass */
.bxb-ticket{display:block;background:var(--bxb-bg);color:var(--bxb-ink)!important;text-decoration:none!important;border-radius:22px;padding:1.1rem 1.1rem .9rem;position:relative}
.bxb-tk-route{display:flex;align-items:center;gap:.6rem}
.bxb-tk-route b{display:block;font-size:1.8rem;letter-spacing:-.02em;line-height:1}
.bxb-tk-route small{display:block;color:var(--bxb-mute);font-size:.75rem}
.bxb-tk-route>div:last-child{text-align:right}
.bxb-tk-line{flex:1;height:1.5px;position:relative;background:linear-gradient(90deg,var(--bxb-line) 40%,transparent 40% 60%,var(--bxb-line) 60%)}
.bxb-tk-line::after{content:"\2708\FE0E";position:absolute;left:50%;top:-.75rem;transform:translateX(-50%);padding:0 .3rem;font-size:.9rem}
.bxb-tk-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(60px,1fr));gap:.5rem;margin-top:.9rem;padding:.6rem .7rem;border-radius:12px;background:rgba(47,128,237,.12)}
.bxb-tk-grid small{display:block;color:var(--bxb-mute);font-size:.68rem}
.bxb-tk-grid b{font-size:.92rem}
.bxb-tk-cut{margin:1rem -1.1rem .8rem;border-top:2px dotted var(--bxb-line);position:relative}
.bxb-tk-bars{display:flex;justify-content:center;gap:2px;height:46px}
.bxb-tk-bars i{background:currentColor;display:block}
.bxb-tk-code{text-align:center;font-family:ui-monospace,monospace;letter-spacing:.3em;font-size:.8rem;margin-top:.35rem}

/* Button styles */
.bxb-btn-solid{background:var(--bxb-accent);color:var(--bxb-accent-ink)!important}
.bxb-btn-outline{background:transparent;border:1.5px solid currentColor;color:inherit!important}
.bxb-btn-arrow{justify-content:space-between;border-radius:99px;padding:.35rem .4rem .35rem 1.2rem;gap:.6rem}
.bxb-arrow{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:var(--bxb-accent);color:var(--bxb-accent-ink);flex:none}

/* Product — compact */
.bxb-pc{background:var(--bxb-bg);color:var(--bxb-ink);border-radius:22px;padding:.5rem .5rem .8rem}
.bxb-pc-img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:16px;background:#fff;display:block;margin-bottom:.6rem}
.bxb-pc .bxb-card-title,.bxb-pc-brand,.bxb-pc-row{padding:0 .5rem}
.bxb-pc-brand{display:block;color:var(--bxb-mute)}
.bxb-pc-row{display:flex;align-items:center;justify-content:space-between;margin-top:.5rem}
.bxb-pc .bxb-price b{font-size:1.5rem}
.bxb-pc-cart{display:grid;place-items:center;width:44px;height:44px;border-radius:14px;background:#fff;text-decoration:none!important;font-size:1.1rem}

/* ---------- Landing mode ---------- */
body.bxb-landing .link-content{flex:0 0 100%;max-width:1080px}
body.bxb-landing #blocks_container>*{padding-left:6px!important;padding-right:6px!important}
body.bxb-landing{padding-top:64px}
.bxb-nav{position:fixed;top:10px;left:50%;transform:translateX(-50%);z-index:50;width:min(1060px,calc(100% - 20px));display:flex;align-items:center;gap:1rem;
  padding:.45rem .45rem .45rem 1rem;border-radius:99px;background:rgba(255,255,255,.82);backdrop-filter:blur(14px) saturate(1.4);-webkit-backdrop-filter:blur(14px) saturate(1.4);box-shadow:0 6px 24px -10px rgba(0,0,0,.25)}
.bxb-nav-brand{display:flex;align-items:center;gap:.5rem;font-weight:700;margin-right:auto;min-height:38px}
.bxb-nav-logo{height:28px;width:auto;border-radius:6px}
.bxb-nav-links{display:flex;gap:1.1rem}
.bxb-nav-links a{color:var(--bxb-ink)!important;text-decoration:none!important;font-size:.9rem;opacity:.75}
.bxb-nav-links a:hover{opacity:1}
.bxb-nav-cta{min-height:38px;padding:0 1.1rem;margin:0}
.bxb-sticky{position:fixed;left:50%;bottom:14px;transform:translateX(-50%);z-index:50;width:calc(100% - 32px);max-width:420px;box-shadow:0 10px 30px -8px rgba(0,0,0,.4);display:none}
@media (max-width:767px){.bxb-nav-links,.bxb-nav-cta{display:none}.bxb-sticky{display:flex}body.bxb-landing{padding-bottom:80px}}

/* Hero */
.bxb-hero{position:relative;overflow:hidden;border-radius:28px;min-height:380px;display:flex;align-items:flex-end;justify-content:center;background:#16161a;color:#fff;text-align:center}
body.bxb-landing .bxb-hero{min-height:min(72vh,640px)}
.bxb-hero-media{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.bxb-hero-text{position:relative;width:100%;padding:2.5rem 1.2rem 2rem;background:linear-gradient(to top,rgba(0,0,0,.7),rgba(0,0,0,.2) 60%,transparent)}
.bxb-hero-title{font-size:clamp(2rem,6vw,4rem);font-weight:700;letter-spacing:-.035em;line-height:1.02;margin:.3rem auto .6rem;max-width:14ch;color:#fff}
.bxb-hero-sub{max-width:46ch;margin:0 auto 1.2rem;opacity:.85;font-size:1.05rem}
.bxb-hero-btns{display:flex;gap:.6rem;justify-content:center;flex-wrap:wrap}
.bxb-hero .bxb-btn{--bxb-accent:#fff;--bxb-accent-ink:#16161a;min-height:46px;padding:0 1.5rem;margin:0}
.bxb-hero .bxb-btn-outline{color:#fff!important}

/* Section titles */
.bxb-sec-title{font-size:clamp(1.5rem,4vw,2.4rem);font-weight:700;letter-spacing:-.03em;text-align:center;margin:.5rem 0 .3rem}
.bxb-sec-sub{text-align:center;opacity:.75;margin:0 auto 1.2rem;max-width:50ch}

/* Pricing */
.bxb-plans{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.8rem}
.bxb-plan{background:var(--bxb-bg);color:var(--bxb-ink);border-radius:22px;padding:1.3rem;display:flex;flex-direction:column;text-align:left}
.bxb-plan-hot{--bxb-bg:#16161a;--bxb-ink:#fff;--bxb-mute:#a3a19b;--bxb-accent:#fff;--bxb-accent-ink:#16161a;box-shadow:0 18px 40px -16px rgba(0,0,0,.5)}
.bxb-plan-name{font-weight:600;color:var(--bxb-mute)}
.bxb-plan-price{margin:.4rem 0 .8rem}
.bxb-plan-price b{font-size:2.4rem;letter-spacing:-.03em}
.bxb-plan-price small{color:var(--bxb-mute);margin-left:.2rem}
.bxb-plan-list{list-style:none;padding:0;margin:0 0 1rem;flex:1}
.bxb-plan-list li{padding:.35rem 0 .35rem 1.5rem;position:relative;font-size:.92rem}
.bxb-plan-list li::before{content:"✓";position:absolute;left:0;font-weight:700}
.bxb-plan .bxb-btn{margin:0}

/* Logo strip */
.bxb-logos{overflow:hidden;padding:.6rem 0;-webkit-mask:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent);mask:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent)}
.bxb-logos-title{text-align:center;font-size:.75rem;letter-spacing:.14em;text-transform:uppercase;opacity:.7;margin-bottom:.8rem}
.bxb-logos-track{display:flex;gap:2.6rem;width:max-content;animation:bxbMarq 28s linear infinite}
.bxb-logos:hover .bxb-logos-track{animation-play-state:paused}
.bxb-logo{height:30px;width:auto;filter:grayscale(1);opacity:.75}
@keyframes bxbMarq{to{transform:translateX(-50%)}}

/* Poll / mood */
.bxb-poll{background:var(--bxb-bg);border-radius:var(--bxb-radius);padding:1rem}
.bxb-poll-opts{display:grid;gap:.45rem}
.bxb-poll-opt{position:relative;overflow:hidden;display:flex;align-items:center;justify-content:space-between;gap:.5rem;width:100%;min-height:46px;padding:.5rem .9rem;
  border:1.5px solid var(--bxb-line);border-radius:12px;background:transparent;color:inherit;font:inherit;font-weight:600;text-align:left;cursor:pointer;transition:border-color .2s}
.bxb-poll-opt:hover:not(:disabled){border-color:currentColor}
.bxb-poll-opt:disabled{cursor:default}
.bxb-poll-bar{position:absolute;left:0;top:0;bottom:0;width:0;background:var(--bxb-soft);transition:width .7s cubic-bezier(.2,.8,.2,1)}
.bxb-poll-opt.mine{border-color:currentColor}
.bxb-poll-label,.bxb-poll-pct{position:relative}
.bxb-poll-pct{font-size:.85rem;opacity:0;transition:opacity .4s}
.bxb-poll.done .bxb-poll-pct{opacity:.7}
.bxb-poll-emoji .bxb-poll-opts{grid-template-columns:repeat(auto-fit,minmax(48px,1fr))}
.bxb-poll-emoji .bxb-poll-opt{flex-direction:column;justify-content:center;font-size:1.6rem;min-height:64px;padding:.4rem;border-radius:16px;text-align:center}
.bxb-poll-emoji .bxb-poll-pct{font-size:.7rem}
.bxb-poll-emoji .bxb-poll-bar{top:auto;width:100%!important;height:0}
.bxb-poll-emoji.done .bxb-poll-opt.mine{background:var(--bxb-soft);transform:scale(1.05)}

/* =====================================================================
   Themes. A page picks one in its Page style block; any block can override
   it with its own Card style. Every surface reads these variables.
   ===================================================================== */
.bxb-faq,.bxb-count,.bxb-quote,.bxb-btns>.bxb-btn:not(.bxb-btn-solid):not(.bxb-btn-outline),.bxb-card,.bxb-hours,.bxb-stats,.bxb-ticket,.bxb-pc,.bxb-plan:not(.bxb-plan-hot),.bxb-poll{
  box-shadow:var(--bxb-shadow);border:var(--bxb-border);backdrop-filter:var(--bxb-blur);-webkit-backdrop-filter:var(--bxb-blur);border-radius:var(--bxb-radius)}
.bxb-btns>.bxb-btn{border-radius:calc(var(--bxb-radius) - 4px)}
.bxb-btn-arrow{border-radius:99px!important}
.bxt-light{--bxb-radius:20px}

/* Glass — frosted panes, bright edge, works on any colourful background */
.bxt-glass{--bxb-bg:linear-gradient(135deg,rgba(255,255,255,.30),rgba(255,255,255,.08));--bxb-ink:#fff;--bxb-mute:rgba(255,255,255,.74);
  --bxb-line:rgba(255,255,255,.2);--bxb-soft:rgba(255,255,255,.14);--bxb-solid:rgba(255,255,255,.55);--bxb-accent:#fff;--bxb-accent-ink:#16161a;--bxb-radius:24px;
  --bxb-border:1px solid rgba(255,255,255,.38);--bxb-blur:blur(18px) saturate(1.6);
  --bxb-shadow:0 10px 36px -10px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.5),inset 0 -1px 0 rgba(255,255,255,.08)}
.bxt-glass .bxb-tk-grid{background:rgba(255,255,255,.12)}

/* Midnight — deep cards with a soft neon edge */
.bxt-dark{--bxb-bg:linear-gradient(160deg,#20202a,#0d0d12);--bxb-ink:#f4f3ef;--bxb-mute:#9c9aa8;--bxb-line:rgba(255,255,255,.08);
  --bxb-soft:rgba(255,255,255,.06);--bxb-solid:#14141a;--bxb-accent:#fff;--bxb-accent-ink:#16161a;--bxb-radius:24px;
  --bxb-border:1px solid rgba(150,160,255,.28);
  --bxb-shadow:0 0 0 4px rgba(120,130,255,.06),0 0 28px -8px rgba(120,130,255,.45),0 20px 40px -20px rgba(0,0,0,.8),inset 0 1px 0 rgba(255,255,255,.07)}
.bxt-dark .bxb-tk-grid{background:rgba(120,130,255,.12)}

/* Gradient — vivid mesh colours, each card a different mix */
.bxt-gradient{--g:linear-gradient(135deg,#ff8a5b,#ff3d7f 55%,#8a2be2);
  --bxb-bg:radial-gradient(120% 90% at 15% 0%,rgba(255,255,255,.38),transparent 55%),var(--g);
  --bxb-ink:#fff;--bxb-mute:rgba(255,255,255,.82);--bxb-line:rgba(255,255,255,.24);--bxb-soft:rgba(255,255,255,.16);--bxb-solid:rgba(255,255,255,.6);
  --bxb-accent:#fff;--bxb-accent-ink:#16161a;--bxb-radius:26px;--bxb-shadow:0 18px 40px -18px rgba(90,20,140,.6)}
.bxt-gradient[data-g="1"]{--g:linear-gradient(135deg,#00c6ff,#0072ff 55%,#3a1c71)}
.bxt-gradient[data-g="2"]{--g:linear-gradient(135deg,#38ef7d,#11998e 60%,#0b4f6c)}
.bxt-gradient[data-g="3"]{--g:linear-gradient(135deg,#f9d423,#ff4e50 60%,#c2185b)}
.bxt-gradient .bxb-tk-grid{background:rgba(255,255,255,.16)}

/* Clay — soft puffy pastel cards */
.bxt-clay{--bxb-bg:#fbf4ee;--bxb-ink:#3b2f2a;--bxb-mute:#8a7b72;--bxb-line:rgba(59,47,42,.1);--bxb-soft:rgba(59,47,42,.06);--bxb-solid:#fbf4ee;
  --bxb-accent:#ff7a59;--bxb-accent-ink:#fff;--bxb-radius:30px;
  --bxb-shadow:10px 12px 24px -6px rgba(80,40,20,.22),inset 3px 3px 6px rgba(255,255,255,.9),inset -4px -4px 8px rgba(120,70,40,.08)}
.bxt-clay .bxb-tk-grid{background:#f3e7dc}

/* Mono — bold black outlines, hard shadow */
.bxt-mono{--bxb-bg:#fff;--bxb-ink:#000;--bxb-mute:#555;--bxb-line:#000;--bxb-soft:#f0f0f0;--bxb-solid:#fff;--bxb-accent:#000;--bxb-accent-ink:#fff;
  --bxb-radius:14px;--bxb-border:2px solid #000;--bxb-shadow:5px 5px 0 #000}
.bxt-mono .bxb-tk-grid{background:#f0f0f0;border:2px solid #000}

/* image-led cards follow the theme's frame */
.bxt-glass:is(.bxb-photo,.bxb-event,.bxb-hero){border:1px solid rgba(255,255,255,.4)}
.bxt-dark:is(.bxb-photo,.bxb-event,.bxb-hero){box-shadow:0 0 0 1px rgba(150,160,255,.3),0 0 30px -8px rgba(120,130,255,.5)}
.bxt-clay:is(.bxb-photo,.bxb-event,.bxb-hero){border-radius:30px;box-shadow:10px 12px 24px -6px rgba(80,40,20,.3)}
.bxt-mono:is(.bxb-photo,.bxb-event,.bxb-hero){border:2px solid #000;box-shadow:5px 5px 0 #000;border-radius:14px}
.bxt-gradient:is(.bxb-photo,.bxb-event,.bxb-hero) .bxb-photo-text{background:linear-gradient(to top,rgba(90,20,140,.85),rgba(255,61,127,.25) 60%,transparent)}
.bxt-mono .bxb-btn-solid,.bxt-mono .bxb-pc-cart{border:2px solid #000}
.bxt-mono .bxb-poll-opt,.bxt-mono .bxb-hours-row{border-color:#000}

/* ---------- Illustrated themes ---------- */
.bxb-title,.bxb-card-title,.bxb-photo-title,.bxb-hero-title,.bxb-sec-title,.bxb-stats b,.bxb-tk-route b,.bxb-plan-price b,.bxb-count-cell b{font-family:var(--bxb-head,inherit)}

/* Floral — cream paper, blossoms in the corners, elegant serif */
.bxt-floral{--bxb-head:'Fraunces',Georgia,serif;--bxb-bg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 40'%3E%3Cg fill='%23f6a5b9'%3E%3Ccircle cx='20' cy='11' r='7'/%3E%3Ccircle cx='29' cy='18' r='7'/%3E%3Ccircle cx='25' cy='29' r='7'/%3E%3Ccircle cx='15' cy='29' r='7'/%3E%3Ccircle cx='11' cy='18' r='7'/%3E%3C/g%3E%3Ccircle cx='20' cy='20' r='5' fill='%23ffd166'/%3E%3C/svg%3E") right -16px top -16px/70px no-repeat,url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 40'%3E%3Cg fill='%23c9b6f2'%3E%3Ccircle cx='20' cy='11' r='7'/%3E%3Ccircle cx='29' cy='18' r='7'/%3E%3Ccircle cx='25' cy='29' r='7'/%3E%3Ccircle cx='15' cy='29' r='7'/%3E%3Ccircle cx='11' cy='18' r='7'/%3E%3C/g%3E%3Ccircle cx='20' cy='20' r='5' fill='%23ffd166'/%3E%3C/svg%3E") left -22px bottom -22px/58px no-repeat,linear-gradient(160deg,#fffaf5,#fdeef0);
  --bxb-ink:#4a2f3a;--bxb-mute:#9a7b86;--bxb-line:rgba(160,90,110,.16);--bxb-soft:rgba(246,165,185,.16);--bxb-solid:#fffaf5;--bxb-accent:#d9577f;--bxb-accent-ink:#fff;
  --bxb-radius:28px;--bxb-border:1px solid rgba(217,87,127,.18);--bxb-shadow:0 14px 30px -18px rgba(160,60,90,.45)}
.bxt-floral .bxb-tk-grid{background:rgba(246,165,185,.18)}

/* Jungle — deep greens, leaves tucked into the corners */
.bxt-jungle{--bxb-head:'Bricolage Grotesque',system-ui,sans-serif;--bxb-bg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 40'%3E%3Cpath d='M6 34C6 16 18 6 34 6c0 16-10 28-28 28z' fill='%2348bb78'/%3E%3Cpath d='M9 31L30 10' stroke='%23164e2b' stroke-width='1.6'/%3E%3C/svg%3E") right -10px top -12px/74px no-repeat,url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 40'%3E%3Cpath d='M6 34C6 16 18 6 34 6c0 16-10 28-28 28z' fill='%232f855a'/%3E%3Cpath d='M9 31L30 10' stroke='%23164e2b' stroke-width='1.6'/%3E%3C/svg%3E") left -18px bottom -20px/64px no-repeat,radial-gradient(120% 80% at 80% 0%,#1f6b45,#0e3b26 70%);
  --bxb-ink:#ecfdf3;--bxb-mute:#a7d7b9;--bxb-line:rgba(236,253,243,.14);--bxb-soft:rgba(236,253,243,.1);--bxb-solid:#0e3b26;--bxb-accent:#c6f432;--bxb-accent-ink:#0e3b26;
  --bxb-radius:26px;--bxb-border:1px solid rgba(198,244,50,.22);--bxb-shadow:0 18px 36px -18px rgba(5,40,20,.8)}
.bxt-jungle .bxb-tk-grid{background:rgba(198,244,50,.12)}

/* Cartoon — chunky outlines, comic dots, bouncy */
.bxt-cartoon{--bxb-head:'Fredoka',system-ui,sans-serif;--bxb-bg:radial-gradient(rgba(0,0,0,.09) 1.2px,transparent 1.6px) 0 0/12px 12px,#fff6c9;
  --bxb-ink:#1b1b1b;--bxb-mute:#5b5545;--bxb-line:#1b1b1b;--bxb-soft:#ffe58a;--bxb-solid:#fff6c9;--bxb-accent:#ff5d8f;--bxb-accent-ink:#fff;
  --bxb-radius:22px;--bxb-border:3px solid #1b1b1b;--bxb-shadow:6px 6px 0 #1b1b1b}
.bxt-cartoon[data-g="1"]{--bxb-bg:radial-gradient(rgba(0,0,0,.09) 1.2px,transparent 1.6px) 0 0/12px 12px,#c9f0ff;--bxb-solid:#c9f0ff}
.bxt-cartoon[data-g="2"]{--bxb-bg:radial-gradient(rgba(0,0,0,.09) 1.2px,transparent 1.6px) 0 0/12px 12px,#ffd6e5;--bxb-solid:#ffd6e5}
.bxt-cartoon[data-g="3"]{--bxb-bg:radial-gradient(rgba(0,0,0,.09) 1.2px,transparent 1.6px) 0 0/12px 12px,#d8ffc9;--bxb-solid:#d8ffc9}
.bxt-cartoon .bxb-btn-solid,.bxt-cartoon .bxb-pc-cart,.bxt-cartoon .bxb-poll-opt,.bxt-cartoon .bxb-tk-grid{border:2.5px solid #1b1b1b}
.bxt-cartoon .bxb-btn{transition:transform .15s}
.bxt-cartoon .bxb-btn:hover{transform:translate(-2px,-2px) rotate(-1deg)}
.bxt-cartoon .bxb-tk-grid{background:#fff}

/* Retro — 70s sunset stripes, warm and rounded */
.bxt-retro{--bxb-head:'Shrikhand',Georgia,serif;--bxb-bg:linear-gradient(#f4a259 0 6px,#e76f51 6px 12px,#b5482f 12px 18px,transparent 18px),#fbecd3;
  --bxb-ink:#3d2314;--bxb-mute:#8c6448;--bxb-line:rgba(61,35,20,.15);--bxb-soft:rgba(231,111,81,.12);--bxb-solid:#fbecd3;--bxb-accent:#e76f51;--bxb-accent-ink:#fff;
  --bxb-radius:24px;--bxb-border:2px solid #3d2314;--bxb-shadow:0 10px 0 -4px #f4a259}
.bxt-retro .bxb-tk-grid{background:#f6dcb5}

/* Holo — iridescent Y2K foil */
.bxt-holo{--bxb-bg:radial-gradient(100% 70% at 0% 0%,rgba(255,255,255,.75),transparent 60%),linear-gradient(120deg,#fbc2eb,#a6c1ee 30%,#c2f0e7 55%,#fde2a7 80%,#f5b5d6);
  --bxb-ink:#2a2140;--bxb-mute:#5f5680;--bxb-line:rgba(42,33,64,.14);--bxb-soft:rgba(255,255,255,.4);--bxb-solid:#e9e0fb;--bxb-accent:#2a2140;--bxb-accent-ink:#fff;
  --bxb-radius:26px;--bxb-border:1px solid rgba(255,255,255,.8);--bxb-shadow:0 16px 36px -18px rgba(90,60,160,.55),inset 0 1px 0 #fff}
.bxt-holo .bxb-tk-grid{background:rgba(255,255,255,.45)}

/* Paper — notebook page, handwritten titles */
.bxt-paper{--bxb-head:'Caveat',cursive;--bxb-bg:linear-gradient(90deg,transparent 22px,rgba(229,83,83,.4) 22px 23.5px,transparent 23.5px),repeating-linear-gradient(#fffdf6 0 25px,#d7e3f4 25px 26px);
  --bxb-ink:#22303f;--bxb-mute:#5f6f80;--bxb-line:rgba(34,48,63,.18);--bxb-soft:rgba(255,226,120,.35);--bxb-solid:#fffdf6;--bxb-accent:#22303f;--bxb-accent-ink:#fffdf6;
  --bxb-radius:6px;--bxb-shadow:0 1px 0 rgba(0,0,0,.08),0 12px 24px -16px rgba(0,0,0,.35)}
.bxt-paper .bxb-card-body,.bxt-paper.bxb-faq,.bxt-paper.bxb-stats,.bxt-paper.bxb-hours,.bxt-paper.bxb-poll,.bxt-paper.bxb-count,.bxt-paper.bxb-quotes .bxb-quote,.bxt-paper.bxb-ticket{padding-left:2.1rem}
.bxt-paper .bxb-title,.bxt-paper .bxb-card-title{font-size:1.5rem;font-weight:700}
.bxt-paper .bxb-tk-grid{background:rgba(255,226,120,.35)}

/* Galaxy — starfield night */
.bxt-galaxy{--bxb-bg:radial-gradient(#fff 1px,transparent 1.5px) 0 0/46px 46px,radial-gradient(rgba(255,255,255,.6) 1px,transparent 1.5px) 23px 17px/37px 37px,radial-gradient(120% 90% at 100% 0%,#5b2a86,#1a1446 50%,#0a0a1f);
  --bxb-ink:#f1ecff;--bxb-mute:#b3a8d9;--bxb-line:rgba(241,236,255,.14);--bxb-soft:rgba(241,236,255,.1);--bxb-solid:#1a1446;--bxb-accent:#ffd36e;--bxb-accent-ink:#1a1446;
  --bxb-radius:24px;--bxb-border:1px solid rgba(180,160,255,.25);--bxb-shadow:0 0 30px -10px rgba(140,100,255,.6)}
.bxt-galaxy .bxb-tk-grid{background:rgba(255,211,110,.12)}

/* Candy — pastel stripes, sweet and soft */
.bxt-candy{--bxb-head:'Fredoka',system-ui,sans-serif;--bxb-bg:repeating-linear-gradient(135deg,rgba(255,255,255,.55) 0 14px,transparent 14px 28px),linear-gradient(135deg,#ffd1e8,#d7c8ff);
  --bxb-ink:#4b2a5a;--bxb-mute:#8a6a99;--bxb-line:rgba(75,42,90,.14);--bxb-soft:rgba(255,255,255,.5);--bxb-solid:#f3d6f5;--bxb-accent:#ff6fb5;--bxb-accent-ink:#fff;
  --bxb-radius:30px;--bxb-border:2px solid #fff;--bxb-shadow:0 12px 26px -14px rgba(200,80,160,.55)}
.bxt-candy[data-g="1"]{--bxb-bg:repeating-linear-gradient(135deg,rgba(255,255,255,.55) 0 14px,transparent 14px 28px),linear-gradient(135deg,#c8f5ff,#d7c8ff)}
.bxt-candy[data-g="2"]{--bxb-bg:repeating-linear-gradient(135deg,rgba(255,255,255,.55) 0 14px,transparent 14px 28px),linear-gradient(135deg,#fff3b0,#ffd1e8)}
.bxt-candy .bxb-tk-grid{background:rgba(255,255,255,.55)}

/* image cards in the illustrated themes */
.bxt-cartoon:is(.bxb-photo,.bxb-event,.bxb-hero){border:3px solid #1b1b1b;box-shadow:6px 6px 0 #1b1b1b}
.bxt-retro:is(.bxb-photo,.bxb-event,.bxb-hero){border:2px solid #3d2314;box-shadow:0 10px 0 -4px #f4a259}
.bxt-floral:is(.bxb-photo,.bxb-event,.bxb-hero){border-radius:28px;box-shadow:0 14px 30px -18px rgba(160,60,90,.6)}
.bxt-jungle:is(.bxb-photo,.bxb-event,.bxb-hero) .bxb-photo-text{background:linear-gradient(to top,rgba(14,59,38,.9),rgba(14,59,38,.3) 60%,transparent)}
.bxt-galaxy:is(.bxb-photo,.bxb-event,.bxb-hero) .bxb-photo-text{background:linear-gradient(to top,rgba(26,20,70,.9),rgba(91,42,134,.3) 60%,transparent)}
.bxt-candy:is(.bxb-photo,.bxb-event,.bxb-hero){border:3px solid #fff;border-radius:30px}

@media (prefers-reduced-motion:reduce){.bxt-cartoon .bxb-btn{transition:none}.bxb-poll-bar,.bxb-poll-opt{transition:none}.bxb-logos-track{animation:none}.bxb-quote.in{animation:none}.bxb-btn,.bxb-photo-img{transition:none}}

/* phone fixes: landing menu replaces the app's floating scroll/share buttons; tighter compact product at half width */
body.bxb-landing #top_left_floating,body.bxb-landing #top_right_floating{display:none}
.bxb-half .bxb-pc .bxb-price{flex-wrap:wrap;gap:0 .35rem}
.bxb-half .bxb-pc .bxb-price b{font-size:1.15rem}
.bxb-half .bxb-pc-row{gap:.4rem}
.bxb-half .bxb-pc-cart{width:38px;height:38px;border-radius:12px;flex:none}
