/* Bliink page styles. Layout + the basic blocks first; cards and themes below. */
*,*::before,*::after{box-sizing:border-box}
body{margin:0;min-height:100vh;min-height:100dvh;font-family:var(--bx-font,system-ui),system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;-webkit-font-smoothing:antialiased;line-height:1.5;text-rendering:optimizeLegibility}
img{max-width:100%}
.bx-page{position:relative;z-index:1;max-width:560px;margin:0 auto;padding:48px 16px 36px}
.bx-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}
.bx-cell{grid-column:span 6;min-width:0}
.bx-cell.s-half{grid-column:span 3}
@media (min-width:700px){.bx-cell.s-third{grid-column:span 2}}
.bx-cell.t-heading,.bx-cell.t-text,.bx-cell.t-avatar,.bx-cell.t-socials{text-align:center}
.bx-cell.t-avatar{display:flex;justify-content:center}

/* basic blocks sit on the page background, so they use the page ink */
.bx-heading{margin:.2rem 0 0;color:var(--bxp-ink);font-family:var(--bxb-head,inherit);font-weight:var(--bx-weight,700);letter-spacing:var(--bx-track,-.02em);text-transform:var(--bx-case,none);line-height:1.05;text-wrap:balance}
h1.bx-heading{font-size:2.6rem}h2.bx-heading{font-size:1.75rem}h3.bx-heading{font-size:1.15rem}
.bx-text{margin:0;color:var(--bxp-ink);opacity:.85;font-size:1rem}
.bx-text.left{text-align:left}
.bx-avatar{display:block;border-radius:50%;object-fit:cover;box-shadow:0 8px 24px -10px rgba(0,0,0,.4)}
.bx-avatar.rounded{border-radius:24px}
.bx-image{display:block;width:100%;border-radius:var(--bxb-radius,18px)}
.bx-socials{display:flex;flex-wrap:wrap;justify-content:center;gap:8px}
.bx-social{padding:.45rem .9rem;border-radius:99px;border:1.5px solid currentColor;color:var(--bxp-ink);text-decoration:none;font-size:.85rem;font-weight:600;opacity:.85}
.bx-social:hover{opacity:1}
.bx-link{display:flex;align-items:center;gap:.8rem;min-height:58px;padding:.5rem 1rem;background:var(--bxb-bg);color:var(--bxb-ink);text-decoration:none;font-weight:600;
  border:var(--bxb-border);box-shadow:var(--bxb-shadow);border-radius:var(--bxb-radius);backdrop-filter:var(--bxb-blur);-webkit-backdrop-filter:var(--bxb-blur);transition:transform .15s}
.bx-link:hover{transform:translateY(-2px)}
.bx-link-img{width:42px;height:42px;border-radius:calc(var(--bxb-radius) - 8px);object-fit:cover;flex:none}
.bx-link-label{flex:1;text-align:center}
.bx-link-img+.bx-link-label{margin-right:42px}
.bx-embed{border-radius:var(--bxb-radius,18px);overflow:hidden;background:#000}
.bx-embed iframe{display:block;width:100%;height:100%;border:0}
.bx-form{display:grid;gap:.6rem;background:var(--bxb-bg);color:var(--bxb-ink);padding:1rem;border:var(--bxb-border);box-shadow:var(--bxb-shadow);border-radius:var(--bxb-radius);backdrop-filter:var(--bxb-blur)}
.bx-form :is(input,textarea,select){width:100%;font:inherit;padding:.7rem .9rem;border-radius:12px;border:1.5px solid var(--bxb-line);background:var(--bxb-soft);color:inherit}
.bx-form-row{display:flex;gap:.5rem}
.bx-form-row input{flex:1}
.bx-form .bxb-btn{margin:0;border:0;cursor:pointer;font:inherit;font-weight:600}
.bx-hp{position:absolute!important;left:-9999px;width:1px;height:1px}
.bx-toast{position:sticky;top:12px;z-index:60;margin:0 auto 12px;max-width:320px;text-align:center;background:#16161a;color:#fff;padding:.6rem 1rem;border-radius:99px;font-weight:600}
.bx-empty{text-align:center;color:var(--bxp-ink);opacity:.6}

/* 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 ---------- */
.s-half>*,.s-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}
.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)}
.s-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,.8),rgba(0,0,0,.4) 45%,transparent 75%);text-shadow:0 1px 14px rgba(0,0,0,.35)}
.bxb-photo-title{font-size:1.45rem;font-weight:700;line-height:1.1;letter-spacing:-.02em}
.s-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:"";width:16px;height:16px;top:-8px;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 24 24%27%3E%3Cpath d=%27M21 16v-2l-8-5V3.5a1.5 1.5 0 0 0-3 0V9l-8 5v2l8-2.5V19l-2 1.5V22l3.5-1 3.5 1v-1.5L13 19v-5.5z%27/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 24 24%27%3E%3Cpath d=%27M21 16v-2l-8-5V3.5a1.5 1.5 0 0 0-3 0V9l-8 5v2l8-2.5V19l-2 1.5V22l3.5-1 3.5 1v-1.5L13 19v-5.5z%27/%3E%3C/svg%3E") center/contain no-repeat;transform:translateX(-50%) rotate(90deg);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:var(--bxb-soft);color:var(--bxb-ink)!important;text-decoration:none!important;font-size:1.1rem}

/* ---------- Landing mode ---------- */

.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-sticky{display:flex}}

/* 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}
.bxb-hero-media{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.bxb-hero-text{position:relative;width:100%;padding:3.5rem 1.2rem 2rem;background:linear-gradient(to top,rgba(0,0,0,.82),rgba(0,0,0,.55) 55%,transparent);text-shadow:0 1px 16px rgba(0,0,0,.4)}   /* words stay readable on a busy picture */
.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:"";width:14px;height:14px;top:.55rem;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 24 24%27 fill=%27none%27 stroke=%27black%27 stroke-width=%273%27 stroke-linecap=%27round%27 stroke-linejoin=%27round%27%3E%3Cpath d=%27M5 12l4.5 4.5L19 7%27/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 24 24%27 fill=%27none%27 stroke=%27black%27 stroke-width=%273%27 stroke-linecap=%27round%27 stroke-linejoin=%27round%27%3E%3Cpath d=%27M5 12l4.5 4.5L19 7%27/%3E%3C/svg%3E") center/contain no-repeat;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.is-words .bxb-poll-opt{font-size:.9rem;font-weight:600;line-height:1.25}
.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. Each one is art direction, not a colour swap: a type pair, shapes, surfaces, the page ground and its
   ambient light. A page picks one; any block can wear another through its Card style. Every surface reads these.
   --bxb-head: big display type · --bx-title: small card titles · --bx-font: body · --bx-mono: code and numbers
   --a1..--a3: the aura colours (page.js swaps in the avatar's own colours when the aura is on)
   ===================================================================== */
.bxs,.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:var(--bx-r-btn,calc(var(--bxb-radius) - 4px))}
.bxb-btn{border-radius:var(--bx-r-btn,12px)}
.bx-link{border-radius:var(--bx-r-btn,var(--bxb-radius))}
.bxb-btn-arrow{border-radius:99px!important}
:is(.bxb-photo,.bxb-event,.bxb-hero,.bx-image,.bxb-gal-img,.bx-hero-img){border-radius:var(--bx-r-img,22px)}
:is(.bxb-photo-title,.bxb-hero-title,.bxb-sec-title,.bx-big,.bxb-stats-big b,.bxb-tk-route b,.bxb-plan-price b,.bxb-count-cell b,.bx-ring b){font-family:var(--bxb-head,inherit);font-weight:var(--bx-weight,700);letter-spacing:var(--bx-track,-.02em);text-transform:var(--bx-case,none)}
:is(.bxb-title,.bxb-card-title,.bxb-h){font-family:var(--bx-title,var(--bxb-head,inherit))}
.bx-dark .bxb :is(select,input[type=date],input[type=time]),.bx-dark :is(select,input[type=date],input[type=time]){color-scheme:dark}

/* Clean: white, sharp, quiet. Geist, hairline cards, black pills, a soft aura from your photo */
.bxt-light{--bxb-head:"Geist",system-ui,sans-serif;--bx-font:"Geist",system-ui,sans-serif;--bx-track:-.04em;--bx-weight:700;
  --bxb-bg:#fff;--bxb-ink:#0a0a0a;--bxb-mute:#6b6b76;--bxb-line:rgba(10,10,10,.08);--bxb-soft:#f3f3f5;--bxb-solid:#fff;--bxb-accent:#0a0a0a;--bxb-accent-ink:#fff;
  --bxb-radius:18px;--bx-r-btn:14px;--bx-r-img:18px;--bxb-border:1px solid rgba(10,10,10,.07);--bxb-blur:none;
  --bxb-shadow:0 1px 1px rgba(10,10,10,.03),0 10px 28px -18px rgba(10,10,10,.22);--a1:#c7d2fe;--a2:#fbcfe8;--a3:#bae6fd}
body.bxp.bxt-light{--bxp-bg:#fafafa;--bxp-ink:#0a0a0a;--bxp-paper:#fafafa}

/* Studio: a dark room with warm light. Instrument Serif names, glassy cards, the cover art's colours glowing behind */
.bxt-dark{--bxb-head:"Instrument Serif",Georgia,serif;--bx-font:"Inter Tight",system-ui,sans-serif;--bx-title:"Inter Tight",system-ui,sans-serif;--bx-track:-.01em;--bx-weight:400;
  --bxb-bg:rgba(255,255,255,.05);--bxb-ink:#f4f1ea;--bxb-mute:#aaa59b;--bxb-line:rgba(244,241,234,.1);--bxb-soft:rgba(244,241,234,.07);--bxb-solid:#151516;--bxb-accent:#f4f1ea;--bxb-accent-ink:#0b0b0c;
  --bxb-radius:20px;--bx-r-btn:99px;--bx-r-img:20px;--bxb-border:1px solid rgba(244,241,234,.1);--bxb-shadow:0 30px 60px -40px rgba(0,0,0,.8);--bxb-blur:blur(24px) saturate(1.3);
  --a1:#ff5b2e;--a2:#7a3cff;--a3:#ffb36b}
body.bxp.bxt-dark{--bxp-bg:#0b0b0c;--bxp-ink:#f4f1ea;--bxp-paper:#0b0b0c}

/* Filmi: velvet and gold. Playfair italic like a film title card, gold hairlines, square edges */
.bxt-filmi{--bxb-head:"Playfair Display",Georgia,serif;--bx-font:"DM Sans",system-ui,sans-serif;--bx-title:"DM Sans",system-ui,sans-serif;--bx-track:-.01em;--bx-weight:900;
  --bxb-bg:linear-gradient(180deg,rgba(201,162,75,.09),rgba(201,162,75,.02));--bxb-ink:#f7efe2;--bxb-mute:#cdbb9c;--bxb-line:rgba(201,162,75,.24);--bxb-soft:rgba(201,162,75,.1);--bxb-solid:#2a0e16;
  --bxb-accent:#d4af5a;--bxb-accent-ink:#1e0a10;--bxb-radius:6px;--bx-r-btn:4px;--bx-r-img:4px;--bxb-border:1px solid rgba(212,175,90,.38);--bxb-shadow:0 30px 60px -34px rgba(0,0,0,.8);--bxb-blur:none;
  --a1:#8a1733;--a2:#c9a24b;--a3:#3b0b18}
body.bxp.bxt-filmi{--bxp-bg:radial-gradient(120% 70% at 50% 0%,#4f1426,#1e0a10 62%,#12060a);--bxp-ink:#f7efe2;--bxp-paper:#1e0a10}
.bxt-filmi.bx-heading,body.bxt-filmi h1.bx-heading{font-style:italic}
.bxt-filmi .bxb-k,.bxt-filmi.bxb-k{letter-spacing:.22em;text-transform:uppercase;color:var(--bxb-accent)}

/* Folio: a designer's sheet. Instrument Sans set tight, flat white tiles, nothing that isn't the work */
.bxt-folio{--bxb-head:"Instrument Sans",system-ui,sans-serif;--bx-font:"Instrument Sans",system-ui,sans-serif;--bx-track:-.045em;--bx-weight:600;
  --bxb-bg:#fff;--bxb-ink:#111;--bxb-mute:#6f6f68;--bxb-line:#e7e7e1;--bxb-soft:#f2f2ed;--bxb-solid:#fff;--bxb-accent:#111;--bxb-accent-ink:#fff;
  --bxb-radius:14px;--bx-r-btn:10px;--bx-r-img:12px;--bxb-border:1px solid #e7e7e1;--bxb-shadow:none;--bxb-blur:none;--a1:#2f5bff;--a2:#d9d9d2;--a3:#ffd2a8}
body.bxp.bxt-folio{--bxp-bg:#fafaf7;--bxp-ink:#111;--bxp-paper:#fafaf7}
.bxt-folio .bxb-k,.bxt-folio.bxb-k{color:#2f5bff}

/* Atelier: a lookbook page. Cormorant at display size, tracked capitals, no corners, no shadows */
.bxt-atelier{--bxb-head:"Cormorant Garamond",Georgia,serif;--bx-font:"Manrope",system-ui,sans-serif;--bx-title:"Manrope",system-ui,sans-serif;--bx-track:-.01em;--bx-weight:500;
  --bxb-bg:rgba(255,255,255,.35);--bxb-ink:#1a1816;--bxb-mute:#7a7268;--bxb-line:rgba(26,24,22,.16);--bxb-soft:rgba(26,24,22,.05);--bxb-solid:#f2eee8;--bxb-accent:#1a1816;--bxb-accent-ink:#f2eee8;
  --bxb-radius:0px;--bx-r-btn:0px;--bx-r-img:0px;--bxb-border:1px solid rgba(26,24,22,.2);--bxb-shadow:none;--bxb-blur:none;--a1:#e6d5c3;--a2:#c9b29a;--a3:#efe7dc}
body.bxp.bxt-atelier{--bxp-bg:#f2eee8;--bxp-ink:#1a1816;--bxp-paper:#f2eee8}
:is(.bxt-atelier.bx-link,.bxt-atelier .bxb-btn,.bxt-atelier.bxb-btn,.bxt-atelier .bxb-k,.bxt-atelier .bxb-title,.bxt-atelier .bx-social){text-transform:uppercase;letter-spacing:.16em;font-size:.76rem;font-weight:600}
body.bxt-atelier h1.bx-heading{font-weight:500;letter-spacing:-.02em}

/* Terminal: a good dotfile. Mono headings with a blinking caret, GitHub-dark tiles, a green that means "running" */
.bxt-terminal{--bxb-head:"JetBrains Mono",ui-monospace,monospace;--bx-font:"Geist",system-ui,sans-serif;--bx-mono:"JetBrains Mono",ui-monospace,monospace;--bx-title:"JetBrains Mono",ui-monospace,monospace;--bx-track:-.03em;--bx-weight:700;
  --bxb-bg:#161b22;--bxb-ink:#e6edf3;--bxb-mute:#8b949e;--bxb-line:#30363d;--bxb-soft:#1f262f;--bxb-solid:#0d1117;--bxb-accent:#3fb950;--bxb-accent-ink:#0d1117;
  --bxb-radius:10px;--bx-r-btn:8px;--bx-r-img:8px;--bxb-border:1px solid #30363d;--bxb-shadow:none;--bxb-blur:none;--a1:#3fb950;--a2:#2f81f7;--a3:#a371f7}
body.bxp.bxt-terminal{--bxp-bg:radial-gradient(rgba(255,255,255,.05) 1px,transparent 1.2px) 0 0/22px 22px,#0d1117;--bxp-ink:#e6edf3;--bxp-paper:#0d1117}
body.bxt-terminal h1.bx-heading::before{content:"~/";color:var(--bxb-accent);margin-right:.18em;font-weight:400}
body.bxt-terminal h1.bx-heading::after{content:"";display:inline-block;width:.5em;height:.9em;margin-left:.12em;vertical-align:-.08em;background:var(--bxb-accent);animation:bxCaret 1.1s steps(1) infinite}
@keyframes bxCaret{50%{opacity:0}}

/* Shopfront: a modern store. Bricolage display, soft white product cards, one confident brand colour */
.bxt-shop{--bxb-head:"Bricolage Grotesque",system-ui,sans-serif;--bx-font:"Figtree",system-ui,sans-serif;--bx-track:-.04em;--bx-weight:800;
  --bxb-bg:#fff;--bxb-ink:#111;--bxb-mute:#6b6862;--bxb-line:rgba(17,17,17,.08);--bxb-soft:#f3f1ec;--bxb-solid:#fff;--bxb-accent:#e8361e;--bxb-accent-ink:#fff;
  --bxb-radius:22px;--bx-r-btn:14px;--bx-r-img:18px;--bxb-border:0 solid transparent;--bxb-blur:none;--bxb-shadow:0 1px 2px rgba(0,0,0,.04),0 14px 34px -20px rgba(60,40,20,.28);
  --a1:#ffd7c9;--a2:#ffe8a3;--a3:#d4f0e4}
body.bxp.bxt-shop{--bxp-bg:#f6f5f2;--bxp-ink:#111;--bxp-paper:#f6f5f2}

/* Rang: Indian colour, printed. Unbounded, Mukta (reads Devanagari), inked edges with a peacock shadow */
.bxt-rang{--bxb-head:"Unbounded",system-ui,sans-serif;--bx-font:"Mukta",system-ui,sans-serif;--bx-track:-.03em;--bx-weight:700;
  --bxb-bg:#fffaf0;--bxb-ink:#1b1b1b;--bxb-mute:#6a5a48;--bxb-line:rgba(27,27,27,.14);--bxb-soft:#ffe9c7;--bxb-solid:#fffaf0;--bxb-accent:#e8361e;--bxb-accent-ink:#fff;
  --bxb-radius:18px;--bx-r-btn:14px;--bx-r-img:16px;--bxb-border:2px solid #1b1b1b;--bxb-shadow:5px 5px 0 #0e7c66;--bxb-blur:none;--a1:#e8361e;--a2:#0e7c66;--a3:#f4b400}
body.bxp.bxt-rang{--bxp-bg:#fff4e0;--bxp-ink:#1b1b1b;--bxp-paper:#fff4e0}

/* Editorial: a well-set essay. Newsreader throughout, ruled sections instead of boxes, a drop cap */
.bxt-editorial{--bxb-head:"Newsreader",Georgia,serif;--bx-font:"Newsreader",Georgia,serif;--bx-title:"Newsreader",Georgia,serif;--bx-track:-.02em;--bx-weight:600;
  --bxb-bg:transparent;--bxb-ink:#1c1b19;--bxb-mute:#6e6a60;--bxb-line:rgba(28,27,25,.14);--bxb-soft:rgba(28,27,25,.05);--bxb-solid:#fbfaf6;--bxb-accent:#1c1b19;--bxb-accent-ink:#fbfaf6;
  --bxb-radius:2px;--bx-r-btn:2px;--bx-r-img:2px;--bxb-border:0 solid transparent;--bxb-shadow:inset 0 1px 0 rgba(28,27,25,.18);--bxb-blur:none;--a1:#b4442e;--a2:#e9e6dc;--a3:#d8cfbd}
body.bxp.bxt-editorial{--bxp-bg:#fbfaf6;--bxp-ink:#1c1b19;--bxp-paper:#fbfaf6;font-size:17px}
.bxt-editorial.bx-link{justify-content:space-between;padding-inline:0 .2rem;min-height:56px;font-weight:500;font-size:1.08rem}
.bxt-editorial.bx-link .bx-link-label{text-align:left}
.bxt-editorial.bx-link::after{content:"\2192";color:#b4442e;transition:transform .25s}
.bxt-editorial.bx-link:hover::after{transform:translateX(4px)}
.bxt-editorial .bxb-k,.bxt-editorial.bxb-k{font-variant:small-caps;letter-spacing:.08em;color:#b4442e;font-size:.95rem}
body.bxt-editorial .bx-body .t-text:first-child .bx-text::first-letter{float:left;font-size:3.4em;line-height:.85;padding:.08em .1em 0 0;color:#b4442e;font-weight:600}

/* Night: the flyer for tonight. Space Grotesk in capitals, black, one acid-lime accent */
.bxt-night{--bxb-head:"Space Grotesk",system-ui,sans-serif;--bx-font:"Space Grotesk",system-ui,sans-serif;--bx-track:-.05em;--bx-weight:700;--bx-case:uppercase;
  --bxb-bg:#0f0f0f;--bxb-ink:#f2f2f2;--bxb-mute:#8f8f8f;--bxb-line:#232323;--bxb-soft:#1a1a1a;--bxb-solid:#0a0a0a;--bxb-accent:#c6ff00;--bxb-accent-ink:#050505;
  --bxb-radius:16px;--bx-r-btn:99px;--bx-r-img:16px;--bxb-border:1px solid #232323;--bxb-shadow:none;--bxb-blur:none;--a1:#c6ff00;--a2:#ff2e88;--a3:#3b82f6}
body.bxp.bxt-night{--bxp-bg:#050505;--bxp-ink:#f2f2f2;--bxp-paper:#050505}
body.bxt-night h1.bx-heading{line-height:.88}

/* Seventies: a record sleeve. Shrikhand, sunrise rings, cream cards with a brown outline */
.bxt-retro{--bxb-head:"Shrikhand",Georgia,serif;--bx-font:"DM Sans",system-ui,sans-serif;--bx-title:"DM Sans",system-ui,sans-serif;--bx-track:0;--bx-weight:400;
  --bxb-bg:#fbecd3;--bxb-ink:#3d2314;--bxb-mute:#8c6448;--bxb-line:rgba(61,35,20,.16);--bxb-soft:rgba(231,111,81,.12);--bxb-solid:#fbecd3;--bxb-accent:#e76f51;--bxb-accent-ink:#fff;
  --bxb-radius:24px;--bx-r-btn:99px;--bx-r-img:22px;--bxb-border:2px solid #3d2314;--bxb-shadow:0 6px 0 #f4a259;--bxb-blur:none;--a1:#f4a259;--a2:#e76f51;--a3:#2a9d8f}
body.bxp.bxt-retro{--bxp-bg:repeating-radial-gradient(circle at 50% 115%,#f6e3c4 0 34px,#f2d6ac 34px 68px);--bxp-ink:#3d2314;--bxp-paper:#f6e3c4}

body.bxp{background:var(--bxp-bg)!important;background-attachment:fixed!important;color:var(--bxp-ink)}
:where(.bxb-title,.bxb-card-title,.bxb-h){letter-spacing:-.01em}

/* ---------- Ambient light: slow colour fields behind everything (the aura), and film grain on the moody themes ---------- */
.bx-amb{position:fixed;inset:0;z-index:0;pointer-events:none;overflow:hidden}
:is(.bxt-dark,.bxt-filmi,.bxt-night,.bxt-atelier,.bxt-editorial,.bxt-retro)>.bx-amb::after{content:"";position:absolute;inset:0;opacity:.09;mix-blend-mode:overlay;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}
.bxt-rang>.bx-amb::before{content:"";position:absolute;inset:0 0 auto;height:22px;
  background:radial-gradient(circle at 11px 13px,#e8361e 4.5px,transparent 5px) 0 0/22px 22px repeat-x,radial-gradient(circle at 0 13px,#0e7c66 2.5px,transparent 3px) 0 0/22px 22px repeat-x,linear-gradient(#1b1b1b,#1b1b1b) 0 21px/100% 1px no-repeat}

/* ---------- Layouts. Phones always get one column; wide screens get what the theme is made for ---------- */
.bx-head-in{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}
.bx-head{margin-bottom:14px}
.bx-head .bx-cell.t-heading,.bx-head .bx-cell.t-text{text-align:center}
.bx-head h1.bx-heading{font-size:clamp(2.6rem,12.5vw,3.8rem);line-height:1;margin:.5rem 0 .15rem}
body.bxt-night .bx-head h1.bx-heading{font-size:clamp(3rem,16vw,4.6rem)}
body:is(.bxt-atelier,.bxt-folio) .bx-head .bx-avatar{border-radius:var(--bx-r-img)}
.bx-social{border-radius:var(--bx-r-btn,99px);border:1px solid color-mix(in srgb,var(--bxp-ink) 22%,transparent);background:color-mix(in srgb,var(--bxp-ink) 4%,transparent);min-height:40px;display:inline-flex;align-items:center;transition:background .2s,border-color .2s}
.bx-social:hover{background:var(--bxp-ink);color:var(--bxp-paper,#fff)!important;border-color:transparent}
.bx-head .bx-text{font-size:1.06rem;max-width:36ch;margin-inline:auto;text-wrap:pretty}
.bx-head .bx-avatar{box-shadow:0 0 0 4px color-mix(in srgb,var(--bxp-ink) 8%,transparent),0 20px 40px -18px rgba(0,0,0,.45)}
@media (min-width:1000px){
  .bxl-split .bx-page{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:clamp(48px,7vw,112px);max-width:1200px;padding:88px 48px 56px;align-items:start}
  .bxl-split .bx-head{position:sticky;top:88px;margin:0}
  .bxl-split .bx-head :is(.bx-cell.t-heading,.bx-cell.t-text,.bx-cell.t-socials){text-align:left}
  .bxl-split .bx-head .bx-cell.t-avatar{justify-content:flex-start}
  .bxl-split .bx-head .bx-socials{justify-content:flex-start}
  .bxl-split .bx-head h1.bx-heading{font-size:clamp(3.6rem,6.2vw,6.4rem)}
  .bxl-split .bx-head .bx-text{font-size:1.2rem;margin-inline:0}
  .bxl-split .bx-body{min-width:0}
  .bxl-bento .bx-page{max-width:1180px;padding:72px 40px 56px}
  .bxl-bento .bx-head{margin-bottom:40px}
  .bxl-bento .bx-head-in{display:flex;flex-wrap:wrap;align-items:center;gap:14px 28px}
  .bxl-bento .bx-head .bx-cell{flex:1 1 100%}
  .bxl-bento .bx-head .bx-cell.t-avatar{flex:0 0 auto}
  .bxl-bento .bx-head .bx-cell.t-heading{flex:1 1 0}
  .bxl-bento .bx-head :is(.bx-cell.t-heading,.bx-cell.t-text,.bx-cell.t-socials){text-align:left}
  .bxl-bento .bx-head .bx-socials{justify-content:flex-start}
  .bxl-bento .bx-head h1.bx-heading{font-size:clamp(3.4rem,6vw,6rem);margin:0}
  .bxl-bento .bx-head .bx-text{margin:0;font-size:1.2rem;max-width:52ch}
  .bxl-bento .bx-grid{grid-template-columns:repeat(12,minmax(0,1fr));grid-auto-flow:dense;gap:16px}
  .bxl-bento .bx-cell{grid-column:span 12}
  .bxl-bento .bx-cell:is(.t-link,.t-buttons,.t-whatsapp,.t-contactbar,.t-file,.t-qrcode,.t-offer,.t-upi,.t-product,.t-email,.t-contact,.t-poll,.t-review,.t-hours,.t-map,.t-countdown,.t-faq,.t-testimonials,.t-stats,.t-feature,.t-ticket,.t-rich,.t-group,.t-photo,.t-announce,.t-image,.t-embed,.t-booking,.t-form,.t-player,.t-now,.t-trust,.t-github,.t-release,.t-drop,.t-shopify,.t-event),
  .bxl-bento .bx-cell.s-half{grid-column:span 6}
  .bxl-bento .bx-cell.s-third{grid-column:span 4}
  .bxl-bento .bx-cell:is(.t-heading,.t-text,.t-divider,.t-gallery,.t-hero,.t-projects,.t-lookbook,.t-shopcol,.t-pricing,.t-logos,.t-menu,.t-socials,.t-streams,.t-html){grid-column:span 12}
  .bxl-bento .bx-cell.t-link+.bx-cell.t-link{grid-column:span 6}
  .bxl-stack .bx-page{max-width:600px;padding-top:72px}
  body.bxt-editorial.bxl-stack .bx-page{max-width:660px}
}

/* ---------- Motion: none or subtle. Content is visible without JavaScript; page.js fades cells in as they scroll in, and every cell shows by 1.5 s whatever happens ---------- */
.bx-js body.bxm-calm:not(.bx-picking) .bx-cell{opacity:0;transform:translateY(10px);transition:opacity .5s ease-out,transform .5s ease-out;animation:bxSafe 0s 1.5s forwards}
.bx-js body:not(.bx-picking) .bx-cell.in{opacity:1;transform:none;filter:none;animation:none}
@keyframes bxSafe{to{opacity:1;transform:none;filter:none}}
@media (prefers-reduced-motion:reduce){
  .bx-js body .bx-cell{opacity:1!important;transform:none!important;filter:none!important;animation:none!important;transition:none!important}
  body.bxt-terminal h1.bx-heading::after{animation:none}
}

/* ---------- The badge: small, tasteful, and the way new people find Bliink ---------- */
.bx-foot{display:flex;justify-content:center;margin-top:40px}
.bx-badge{display:inline-flex;align-items:center;gap:.55rem;min-height:44px;padding:.3rem .32rem .3rem .85rem;border-radius:99px;font:600 .8rem/1 var(--bx-font,system-ui);letter-spacing:0;text-transform:none;
  color:var(--bxp-ink)!important;text-decoration:none!important;background:color-mix(in srgb,var(--bxp-ink) 6%,transparent);border:1px solid color-mix(in srgb,var(--bxp-ink) 12%,transparent);
  backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);transition:transform .3s cubic-bezier(.34,1.45,.64,1)}
.bx-badge svg{color:#ff4d6d}
.bx-badge b{padding:.55rem .8rem;border-radius:99px;background:var(--bxp-ink);color:var(--bxp-paper,#fff);font-weight:700}
.bx-badge:hover{transform:translateY(-2px)}
.bx-badge:focus-visible{outline:3px solid var(--bxp-ink);outline-offset:3px}

@media (prefers-reduced-motion:reduce){.bx-link{transition:none}.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 */
.s-half .bxb-pc .bxb-price{flex-wrap:wrap;gap:0 .35rem}
.s-half .bxb-pc .bxb-price b{font-size:1.15rem}
.s-half .bxb-pc-row{gap:.4rem}
.s-half .bxb-pc-cart{width:38px;height:38px;border-radius:12px;flex:none}
.bxb-quote+.bxb-quote{margin-top:.6rem}
.bxb-quotes.rot .bxb-quote:not(.on){display:none}
.bxb-badge:empty{display:none}
.bx-cell.bx-focus{outline:3px solid #ff5d3a;outline-offset:4px;border-radius:12px}
.bx-cell{cursor:default}

@media (min-width:700px){.bx-cell.only-mobile{display:none}}
@media (max-width:699px){.bx-cell.only-desktop{display:none}}

/* =====================================================================
   Designs. Every block type has three or more looks (block_types in app/blocks.php).
   They are built from the shared pieces below and from the theme variables only,
   so each one follows all the themes.
   ===================================================================== */
[hidden]{display:none!important}
a:where(.bxb,.bxb *):where(:not(.bxb-pc-cart)){color:inherit;text-decoration:none}
.bxb{--bx-rule:color-mix(in srgb,currentColor 24%,transparent);--bx-open:#2fbf71;--bx-closed:#e5484d}
.bxs{background:var(--bxb-bg);color:var(--bxb-ink)}                 /* a themed surface: card, tile, button */
.bxb-bare{color:var(--bxp-ink)}                                     /* sits straight on the page */
.bxb-fill{background:var(--bxb-accent);color:var(--bxb-accent-ink)} /* filled with the accent colour */
.bxb-inv{background:var(--bxb-accent-ink);color:var(--bxb-accent)}
.bxb-row{display:flex;align-items:center;gap:.75rem}
.bx-sb{justify-content:space-between}
.bxb-col{display:flex;flex-direction:column;gap:.2rem;min-width:0}
:is(.bxb-row,.bx-tile,.bx-link)>.bxb-col{flex:1}
.bxb-k{font-size:.78rem;font-weight:700}
.bxb-h{font-family:var(--bx-title,var(--bxb-head,inherit));font-size:1.15rem;font-weight:800;line-height:1.15;letter-spacing:-.01em}
.bxb-sub{font-size:.84rem;font-weight:400;line-height:1.4;opacity:.8}
.bxb-more{align-self:flex-start;font-size:.84rem;font-weight:700;text-decoration:underline;text-underline-offset:3px}
a.bxb-more{display:inline-flex;align-items:center;min-height:44px;margin:-.6rem 0}
.bx-big{font-family:var(--bxb-head,inherit);font-size:3rem;font-weight:800;line-height:1;letter-spacing:-.03em}
.bxb-ico{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;flex:none;font-size:.8rem}
.bx-soft{background:var(--bxb-soft);border-radius:min(14px,var(--bxb-radius))}
.bx-tile{display:flex;align-items:center;gap:.75rem;min-height:58px;padding:.6rem .9rem}
.bx-tile>svg,.bx-link>svg{flex:none}
.bxb-bar{display:block;height:7px;border-radius:7px;background:var(--bxb-soft);overflow:hidden}
.bxb-row>.bxb-bar{flex:1}
.bxb-bar i{display:block;height:100%;border-radius:inherit;background:var(--bxb-accent)}
.bx-stars{display:inline-flex;gap:2px;color:var(--bxb-accent)}
.bxb-chips{display:flex;flex-wrap:wrap;gap:.4rem}
.bxb-pick{position:relative;padding:0;border:0;background:none;color:inherit;font:inherit;cursor:pointer}
.bxb-pick input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer}
.bxb-pick span{display:grid;place-items:center;min-height:44px;padding:0 .95rem;border:1.5px solid var(--bx-rule);border-radius:99px;font-size:.9rem;font-weight:600}
.bxb-pick input:checked+span{background:var(--bxb-accent);color:var(--bxb-accent-ink);border-color:transparent}
.bxb-pick input:focus-visible+span{outline:2px solid currentColor;outline-offset:2px}
.bx-list{display:flex;flex-direction:column}
.bx-list-a{display:flex;align-items:center;gap:.75rem;min-height:48px;padding:.5rem .1rem;border-bottom:1px solid var(--bx-rule);font-weight:600}
.bx-list-a>span{flex:1}
.bx-list-a>.bxb-more{flex:none;align-self:center}
.bx-list-k{min-width:3.6rem;flex:none;white-space:nowrap;font-variant-numeric:tabular-nums}
/* picture or map beside the words */
.bx-side{align-items:stretch;padding:.6rem}
.bx-side>.bxb-col{justify-content:center;gap:.25rem;padding:.2rem 0}
.bx-thumb{position:relative;display:grid;place-items:center;width:104px;min-height:92px;flex:none;border-radius:min(12px,var(--bxb-radius));background:var(--bxb-soft);overflow:hidden}
.bx-thumb-img,.bx-thumb iframe{position:absolute;inset:0;width:100%;height:100%;border:0;object-fit:cover}
.bx-thumb .bxb-ico{position:relative}
a.bxb-card{display:block}
.bxb-card.bx-side{display:flex;gap:.75rem}
.bx-side>.bxb-card-img{width:36%;max-width:150px;aspect-ratio:auto;flex:none;border-radius:min(12px,var(--bxb-radius))}
.bx-side>.bxb-card-body{flex:1;min-width:0;padding:.3rem .2rem;justify-content:center}
.bx-side .bxb-btn{align-self:flex-start;min-height:44px;margin-top:.3rem;padding:0 1.1rem}

/* Button (link), heading, text, profile photo, image */
.bx-ctr{justify-content:center}
button.bx-link{width:100%;font:inherit;font-weight:600;cursor:pointer}
.bx-link-pic{gap:.7rem;padding-left:.45rem}
.bx-link-pic .bx-link-img{width:48px;height:48px}
.bx-link-pic .bx-link-label{margin-right:0;text-align:left}
.bx-link-card{padding:.85rem 1rem;background:var(--bxb-accent);color:var(--bxb-accent-ink);box-shadow:5px 5px 0 rgba(0,0,0,.28)}
.bx-outline{background:none;border:1.5px solid currentColor;box-shadow:none;backdrop-filter:none}
.bx-hd .bxb-k{display:flex;align-items:center;gap:.4rem}
.bx-hd .bxb-k::before,.bx-hd-line::after{content:"";width:18px;height:4px;border-radius:4px;background:var(--bxb-accent)}
.bx-hd-line{text-align:center}
.bx-hd-line::after{display:block;width:64px;height:5px;margin:.6rem auto 0}
.bx-text-card{margin:0;padding:1rem;line-height:1.5}
.bx-text-quote{margin:0;padding-left:.9rem;border-left:5px solid var(--bxb-accent);font-size:1.2rem;font-weight:700;line-height:1.3}
.bx-av-ring{position:relative;display:grid;width:fit-content;place-items:center;padding:4px;border:4px solid var(--bxb-accent);border-radius:50%}
.bx-av-ring .bx-avatar{box-shadow:none}
.bx-av-ring .bxb-fill{position:absolute;bottom:-.65rem;padding:.1rem .6rem;border-radius:99px;font-size:.7rem;font-weight:800}
.bx-img-frame{width:78%;margin:.5rem auto;padding:8px 8px 6px;border-radius:4px;transform:rotate(-2deg)}
.bx-img-frame .bx-image{border-radius:2px}
.bx-img-frame figcaption{padding-top:.35rem;text-align:center;font-size:.8rem;font-weight:600}
.bx-img-edge{position:relative;margin:0 -16px}
.bx-img-edge .bx-image{border-radius:0}
.bx-img-edge figcaption{position:absolute;left:0;right:0;bottom:0;padding:.6rem 1rem;background:rgba(0,0,0,.6);color:#fff;font-size:.85rem;font-weight:600}

/* Social icons, contact bar */
.bx-socials-row{gap:12px}
.bx-socials .bxb-ico,.bx-cb .bxb-ico{width:52px;height:52px;border-radius:50%}
.bx-ini{font-size:.85rem;font-weight:800}
.bx-socials-tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(72px,1fr))}
.bx-soc-tile{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.15rem;min-height:86px;padding:.6rem .2rem;background:var(--bxb-soft);border-radius:min(14px,var(--bxb-radius))}
.bx-soc-tile small{font-size:.72rem;opacity:.8}
.bx-cbar{display:flex;justify-content:center;gap:1rem}
.bx-cb{display:flex;flex-direction:column;align-items:center;gap:.35rem;min-width:56px;font-size:.8rem;font-weight:600}
.bxb-btns>.bxb-btn>svg+span{margin-left:.5rem}
.bx-dock{position:fixed;left:0;right:0;bottom:max(12px,env(safe-area-inset-bottom));z-index:40;display:flex;gap:2px;width:min(430px,calc(100% - 24px));margin:0 auto;padding:5px;box-shadow:0 10px 26px -8px rgba(0,0,0,.55)}
.bx-dock-i{flex:1;display:grid;place-items:center;min-height:46px;border-radius:calc(var(--bxb-radius) - 5px);font-size:.88rem;font-weight:700}
.bx-dock-i:first-child{background:var(--bxb-accent);color:var(--bxb-accent-ink)}
.bx-cell:has(>.bx-dock){display:contents}
body:not(.bx-picking):has(.bx-dock){padding-bottom:84px}
.bx-picking .bx-dock{position:static;width:auto}                 /* in the editor's design chooser each design stays in its own cell */
.bx-picking :is(.bx-img-edge,.bx-ticker,.bx-html-edge){margin-inline:0}

/* Embeds: narrow ones (Shorts, TikTok, posts) sit in the middle. Posts and booking pages start at a guess, their width
   times --bx-r plus --bx-x, until their frame reports its real height and page.js sets it */
.bx-embed[style*="max-width"]{margin-inline:auto}
.bx-lite{background:rgba(127,127,127,.14)}
.bx-post{container-type:inline-size}
.bx-post iframe{height:calc(var(--bx-x) + 340px*var(--bx-r));height:calc(var(--bx-x) + 100cqw*var(--bx-r))}

/* QR code block: a saved code comes in the QR studio's own frame, the page's own address is drawn in place */
:is(.bx-qr,.bx-qr3d,.bx-qrn) iframe{display:block;width:100%;height:100%;border:0}
.bx-qrbig{align-items:center;gap:.6rem;padding:1.1rem;text-align:center}
.bx-qrbig .bx-qr{width:min(220px,72%);height:auto;aspect-ratio:1}
.bx-qr3d{display:block;width:min(300px,100%);aspect-ratio:1}
.bx-qrn{display:block;width:100%;height:64px}
.bx-qrcode .bxb-btn{min-height:44px;margin-top:.4rem;padding:0 1.1rem;border:0;font:inherit;font-weight:700;cursor:pointer}
.bx-qrbig .bxb-btn{align-self:center}

/* HTML block: the owner's code runs in a sealed frame; page.js fits the frame to what is inside */
.bx-html iframe{display:block;width:100%;height:120px;border:0}
.bx-html-card{padding:1rem}
.bx-html-edge{margin:0 -16px}

/* Map, file, UPI */
.bx-map{position:relative}
.bx-map .bxb-btn{position:absolute;right:.6rem;bottom:.6rem;margin:0;padding:0 1rem}
.bx-doc{display:flex;flex-direction:column;justify-content:flex-start;gap:6px;width:84px;padding:12px}
.bx-doc i{height:4px;border-radius:4px;background:currentColor;opacity:.3}
.bx-doc i:first-child{width:70%;height:7px;opacity:.8}
.bx-doc i:last-child{width:60%}
.bx-ext{display:grid;place-items:center;width:38px;height:46px;flex:none;border-radius:7px;font-size:.66rem;font-weight:800}
.bx-qr{display:block;width:116px;height:116px;flex:none;padding:6px;border-radius:10px;background:#fff}
.bx-qr svg{display:block;width:100%;height:100%}
.bx-upi{gap:.5rem}
.bx-upi>small,.bx-upi>.bxb-h{text-align:center}
.bx-upi .bxb-chips{display:grid;grid-template-columns:repeat(auto-fit,minmax(64px,1fr))}
.bx-upi input[type=number]{font:inherit;padding:.7rem .9rem;border:1.5px solid var(--bx-rule);border-radius:12px;background:var(--bxb-soft);color:inherit}

/* Forms: email, contact, custom form, booking */
.bx-form option{background:#fff;color:#16161a}
:is(.bx-form[class*="bx-form-"],.bx-book) ::placeholder{color:inherit;opacity:.6}
.bx-form :is(select,input[type=date],input[type=time]){min-height:48px}
.bx-fields{display:grid;gap:.6rem}
.bx-field{display:grid;gap:.4rem;min-width:0}
.bx-wide{grid-column:1/-1}
.bx-book .bx-fields,.bx-form-card .bx-fields{grid-template-columns:repeat(2,minmax(0,1fr))}
.bx-form-card .bx-field:last-child:nth-child(odd){grid-column:1/-1}
.bx-fields~.bx-form-row .bxb-btn{flex:1}
.bx-form-card .bx-form-row{flex-direction:column}
:where(.bx-form-card) .bxb-title{font-size:1.25rem;font-weight:800}
.bx-form-bare,.bx-form-steps,.bx-form-underline{padding:0;background:none;border:0;box-shadow:none;backdrop-filter:none;color:var(--bxp-ink)}
:where(.bx-form-underline) .bxb-title{font-size:1.4rem;font-weight:800;line-height:1.1}
.bx-form-underline .bx-form-row{align-items:center;border-bottom:2px solid currentColor}
.bx-form-underline input{padding-left:0;border:0;border-radius:0;background:none}
.bx-go{display:grid;place-items:center;width:44px;height:44px;flex:none;padding:0;border:0;background:none;color:inherit;cursor:pointer}
.bx-steps small{font-size:.78rem;opacity:.8;white-space:nowrap}
.bx-form-steps .bx-field{gap:.7rem}
.bx-sheet{width:min(440px,100%);max-width:100%;margin:auto auto 0;padding:0;border:0;background:none;overflow:visible}
.bx-sheet::backdrop{background:rgba(0,0,0,.55)}
.bx-sheet .bx-form{max-height:92vh;border-radius:var(--bxb-radius) var(--bxb-radius) 0 0;overflow:auto}
@media (min-width:700px){.bx-sheet{margin:auto}.bx-sheet .bx-form{border-radius:var(--bxb-radius)}}

/* Poll: this or that, scale */
:is(.bxb-poll-duel,.bxb-poll-scale) .bxb-title{justify-content:center}
:is(.bxb-poll-duel,.bxb-poll-scale) .bxb-poll-bar,.bxb-poll-scale .bxb-poll-pct{display:none}
:is(.bxb-poll-duel,.bxb-poll-scale) .bxb-poll-opt.mine{background:var(--bxb-accent);color:var(--bxb-accent-ink);border-color:transparent}
.bxb-poll-duel .bxb-poll-opts{grid-template-columns:1fr 1fr}
.bxb-poll-duel .bxb-poll-opt:last-child:nth-child(odd){grid-column:1/-1}   /* an odd answer out spans the row */
.bxb-poll-duel .bxb-poll-opt{flex-direction:column;justify-content:center;gap:.1rem;min-height:76px;font-size:1.1rem;text-align:center}
.bxb-poll-scale .bxb-poll-opts{display:flex;justify-content:center;gap:.5rem}
.bxb-poll-scale .bxb-poll-opt{width:46px;justify-content:center;padding:0;border-radius:50%}
.bxb-poll-scale>.bxb-row{margin-top:.5rem}

/* Profile card, feature, stats, event, pass, buttons, gallery */
.bx-prof .bxb-prof-av{margin:0;border:0}
.bx-prof-c{display:flex;flex-direction:column;align-items:center;text-align:center}
.bx-prof-c .bxb-card-title{margin-top:.5rem;font-size:1.25rem}
.bx-prof-c .bxb-prof-foot{justify-content:center}
.bx-prof-c .bxb-prof-foot .bxb-btn{margin:0}
.bx-prof .bxb-prof-foot .bxb-btn{min-height:44px}
.bx-prof .bxb-card-title{display:flex;align-items:center;gap:.35rem;margin-bottom:0}
.bx-tile.bx-prof{padding:.9rem}
.bx-tile.bx-prof .bxb-prof-av{border-radius:24%}
/* the profile card's name is an h1; as the page head on a wide screen the card carries the page like the other themes' big names */
h1.bxb-prof-name{margin-top:0;line-height:1.15}
.bx-head .bxb-prof-name{font-size:1.35rem}
@media (min-width:1000px){
  :is(.bxl-split,.bxl-bento) .bx-head .bxb-prof-cover{height:clamp(200px,17vw,260px)}
  :is(.bxl-split,.bxl-bento) .bx-head .bxb-profile .bxb-card-body{padding:0 1.75rem 1.75rem}
  :is(.bxl-split,.bxl-bento) .bx-head .bxb-profile .bxb-prof-av{width:120px;height:120px;margin-top:-60px;border-width:5px}
  :is(.bxl-split,.bxl-bento) .bx-head .bx-prof .bxb-prof-av{width:120px;height:120px}
  :is(.bxl-split,.bxl-bento) .bx-head .bxb-prof-name{margin-top:.9rem;font-family:var(--bxb-head,inherit);font-size:clamp(2.4rem,3.4vw,3.4rem);font-weight:var(--bx-weight,700);letter-spacing:var(--bx-track,-.03em);text-transform:var(--bx-case,none);line-height:1;display:block;text-wrap:balance}
  :is(.bxl-split,.bxl-bento) .bx-head .bxb-prof-name .bxb-tick{width:28px;height:28px;margin-left:.2em;vertical-align:.3em}
  :is(.bxl-split,.bxl-bento) .bx-head .bxb-prof-name .bxb-tick svg{width:17px;height:17px}
  :is(.bxl-split,.bxl-bento) .bx-head .bxb-prof-handle{margin-top:.5rem;font-size:1.05rem}
  :is(.bxl-split,.bxl-bento) .bx-head .bx-prof .bxb-card-text,:is(.bxl-split,.bxl-bento) .bx-head .bxb-profile .bxb-card-text{font-size:1.15rem;max-width:40ch}
  :is(.bxl-split,.bxl-bento) .bx-head .bxb-prof-foot{gap:1.6rem;margin-top:1.3rem}
  :is(.bxl-split,.bxl-bento) .bx-head .bxb-prof-stat b{font-size:1.6rem}
  :is(.bxl-split,.bxl-bento) .bx-head .bxb-prof-stat small{font-size:.8rem}
  :is(.bxl-split,.bxl-bento) .bx-head .bxb-prof-foot .bxb-btn{min-height:52px;padding:.6rem 1.6rem;font-size:1rem}
}
.bx-feat,.bx-strip,.bx-ann,.bx-offer{border:var(--bxb-border);border-radius:min(18px,var(--bxb-radius))}
.bx-feat{padding:1rem}
.bx-stat{display:flex;flex-direction:column;align-items:center;gap:.1rem;padding:.9rem .3rem;text-align:center}
.bx-bars .bxb-row{margin-top:.35rem;font-size:.86rem}
.bx-event .bxb-event-date{min-width:60px;padding:.5rem .3rem;background:var(--bxb-bg);color:var(--bxb-ink);border:var(--bxb-border);border-radius:min(14px,var(--bxb-radius))}
.bx-event .bxb-event-date small{color:inherit}
.bx-event .bxb-event-date b{font-size:1.6rem}
.bx-tk-stub{display:flex;align-items:stretch;padding:0;overflow:hidden}
.bx-tk-stub>.bxb-col{flex:1;padding:1rem 0 1rem 1.1rem}
.bx-tk-stub .bxb-tk-bars{height:auto;margin-left:.9rem;padding:1rem .9rem;border-left:2px dashed var(--bx-rule)}
.bx-tk-badge{align-items:center;width:min(250px,82%);margin:0 auto;padding-top:1.9rem;text-align:center}
.bx-tk-badge::before{content:"";position:absolute;top:.75rem;left:50%;width:34px;height:6px;margin-left:-17px;border-radius:6px;background:currentColor;opacity:.75}
.bx-btn-tiles>.bxb-btn{flex-direction:column;gap:.35rem;min-height:76px;padding:.7rem .2rem;font-size:.8rem}
.bx-btn-tiles>.bxb-btn>svg+span{margin:0}
.bx-gal{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.4rem}
.bx-gal .bxb-gal-img{border-radius:min(12px,var(--bxb-radius))}
.bx-gal-mosaic .bxb-gal-img{height:100%;aspect-ratio:1}
.bx-gal-mosaic .bxb-gal-img:first-child{grid-area:span 2/span 2}

/* Reviews, review us, questions */
.bx-rating>.bxb-col:first-child{flex:none;align-items:center;text-align:center}
.bx-rating>.bxb-col+.bxb-col{gap:.4rem}
.bx-rating.bx-tile{padding:.9rem}
.bx-rating .bxb-btn{margin:0}
.bx-stack{gap:.4rem}
.bx-stack figure{margin:0;padding:.55rem .75rem}
.bx-stack .bxb-ico{width:32px;height:32px;font-weight:800}
.bx-rate{align-items:center;gap:.5rem;padding:.6rem 0;text-align:center}
.bx-rate .bx-stars{gap:8px}
:is(.bx-faq-cards,.bx-faq-num) .bxb-faq-item{border:0}
.bx-faq-cards .bxb-faq-item{margin-top:.4rem;padding:0 .9rem;background:var(--bxb-soft);border-radius:min(14px,var(--bxb-radius))}
.bx-faq-cards .bxb-faq-item[open]{background:var(--bxb-bg);color:var(--bxb-ink)}
.bx-faq-num{counter-reset:q}
.bx-faq-num summary{display:flex;align-items:center;gap:.75rem;padding-right:0}
.bx-faq-num summary::after{display:none}
.bx-faq-num summary::before{counter-increment:q;content:counter(q);display:grid;place-items:center;width:30px;height:30px;flex:none;border-radius:9px;background:var(--bxb-accent);color:var(--bxb-accent-ink);font-size:.85rem;font-weight:800}
.bx-faq-num .bxb-faq-a{padding-left:calc(30px + .75rem)}

/* Countdown: rings, ticker. Opening hours: status, day bar */
.bx-ring{position:relative;display:grid;place-content:center;aspect-ratio:1}
.bx-ring svg{position:absolute;inset:0;width:100%;height:100%;transform:rotate(-90deg)}
.bx-ring circle{fill:none;stroke:var(--bxb-soft);stroke-width:4}
.bx-ring circle+circle{stroke:var(--bxb-accent);stroke-linecap:round;stroke-dasharray:var(--p) 100;transition:stroke-dasharray .4s}
.bx-ring b{font-size:1.3rem;line-height:1.1;font-variant-numeric:tabular-nums}
.bx-ring span{font-size:.6rem;letter-spacing:.06em;text-transform:uppercase;color:var(--bxb-mute)}
.bx-count-tick{gap:.45rem}
.bx-count-tick>small{text-align:center}
.bx-strip{padding:.85rem 1rem;font-weight:700;line-height:1.2}
.bx-strip .bxb-count-row{display:block;font-size:1.35rem;font-weight:800;font-variant-numeric:tabular-nums;white-space:nowrap}
.bx-strip .bxb-count-done{padding:0}
.bx-hours-status summary{min-height:44px;list-style:none;cursor:pointer}
.bx-hours-status summary::-webkit-details-marker{display:none}
.bx-hours-status[open] summary{margin-bottom:.6rem}
.bx-hours-status .bxb-more{align-self:center}
.bx-dot{width:12px;height:12px;flex:none;border-radius:50%;background:var(--bxb-mute)}
.is-open .bx-dot,.bx-online::after{background:var(--bx-open)}
.is-closed .bx-dot{background:var(--bx-closed)}
.bx-online{position:relative}
.bx-online::after{content:"";position:absolute;right:0;bottom:0;width:12px;height:12px;border:2px solid var(--bxb-solid);border-radius:50%}
.bx-hours-bar{gap:.45rem}
.bx-daybar{position:relative;height:14px;border-radius:14px;background:var(--bxb-soft)}
.bx-daybar i{position:absolute;top:0;bottom:0;border-radius:inherit;background:var(--bxb-accent)}
.bx-daybar b{position:absolute;top:-5px;width:4px;height:24px;margin-left:-2px;border-radius:4px;background:currentColor}

/* Hero: centred, beside a picture. Pricing, logo strip */
.bx-hero{padding:1.2rem .4rem;text-align:center}
.bx-hero .bxb-hero-title{color:inherit;font-size:clamp(1.7rem,6vw,3.2rem)}
.bx-hero .bxb-chip,.bxb-plan .bxb-chip{background:var(--bxb-soft);backdrop-filter:none}
.bx-hero .bxb-btn{min-height:46px;margin:0;padding:0 1.5rem}
.bx-hero-split{display:flex;align-items:center;gap:1rem;padding:1.1rem;text-align:left}
.bx-hero-split>div{flex:1;min-width:0}
.bx-hero-split :is(.bxb-hero-title,.bxb-hero-sub){margin-left:0}
.bx-hero-split .bxb-hero-title{font-size:clamp(1.4rem,4.5vw,2.6rem)}
.bx-hero-split .bxb-hero-btns{justify-content:flex-start}
.bx-hero-img{width:40%;max-width:420px;aspect-ratio:1;flex:none;object-fit:cover;border-radius:min(18px,var(--bxb-radius))}
.bx-list .bxb-plan{margin-bottom:.6rem}
.bx-logo-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:.8rem 1.6rem}
.bx-logo{display:grid;place-items:center;font-weight:800;text-align:center}
.bx-logo-tiles .bx-logo{min-height:58px;padding:.5rem;background:var(--bxb-bg);color:var(--bxb-ink);border:var(--bxb-border);border-radius:min(12px,var(--bxb-radius))}

/* Offer, WhatsApp, announcement, link group */
.bx-offer{display:flex;align-items:stretch;overflow:hidden}
.bx-offer>.bxb-col{flex:1;padding:1rem}
:is(.bx-offer,.bx-offer-stripe) .bxb-h{font-size:1.25rem}
.bx-stub{display:grid;place-items:center;width:84px;padding:.4rem;border-left:2px dashed currentColor;text-align:center}
.bx-offer-stripe{display:block;overflow:hidden}
.bx-offer-stripe>.bxb-fill{padding:.4rem .9rem}
.bx-offer-stripe>.bxb-col{padding:.9rem}
.bx-offer-code,.bx-ann-card{padding:.9rem;border:2px dashed var(--bxb-accent);border-radius:min(16px,var(--bxb-radius))}
a.bx-offer-t{display:block;margin:-.65rem 0;padding:.65rem 0}
.bx-offer-code .bxb-row{margin-top:.4rem;gap:.5rem}
.bx-code{flex:1;display:grid;place-items:center;min-height:48px;font-size:1.05rem;font-weight:800;letter-spacing:.12em}
.bx-offer-code .bxb-btn{margin:0;padding:0 1.1rem;border:0;font:inherit;font-weight:700;cursor:pointer}
.bx-asks{align-items:flex-start;gap:.4rem}
.bx-bubble{display:flex;align-items:center;min-height:44px;padding:.4rem .9rem;border-radius:4px 16px 16px 16px;box-shadow:none;font-size:.9rem;font-weight:600}
.bx-ann{padding:.8rem 1rem;line-height:1.25}
.bx-ann svg{flex:none}
.bx-ann-card{border-style:solid;border-width:1.5px}
.bx-ticker{margin:0 -16px;padding:.6rem 0;border-block:2px dashed var(--bxb-accent);overflow:hidden;font-family:var(--bxb-head,inherit);font-weight:800}
.bx-ticker .bxb-logos-track{padding-right:2.6rem;animation-duration:24s}
.bx-ticker span::after{content:"/";margin-left:2.6rem;opacity:.45}
.bx-fold summary{list-style:none;cursor:pointer}
.bx-fold summary::-webkit-details-marker{display:none}
.bx-fold[open] summary svg{transform:rotate(180deg)}
.bx-fold>.bxb-btns{margin:.5rem 0 0 .9rem}
.bx-tabs{display:flex;flex-wrap:wrap;gap:0 1.1rem}
.bx-tabs>input{position:absolute;opacity:0;pointer-events:none}
.bx-tabs>label{display:flex;align-items:center;min-height:44px;border-bottom:3px solid transparent;font-size:.92rem;font-weight:700;opacity:.7;cursor:pointer}
.bx-tabs>input:checked+label{border-color:var(--bxb-accent);opacity:1}
.bx-tabs>input:focus-visible+label{outline:2px solid currentColor;outline-offset:2px}
.bx-tabs>.bxb-btns{display:none;width:100%;margin-top:.6rem}
.bx-tabs>input:nth-of-type(1):checked~div:nth-of-type(1),.bx-tabs>input:nth-of-type(2):checked~div:nth-of-type(2),.bx-tabs>input:nth-of-type(3):checked~div:nth-of-type(3),
.bx-tabs>input:nth-of-type(4):checked~div:nth-of-type(4),.bx-tabs>input:nth-of-type(5):checked~div:nth-of-type(5),.bx-tabs>input:nth-of-type(6):checked~div:nth-of-type(6){display:grid}

@media (prefers-reduced-motion:reduce){
  .bx-ring circle{transition:none}
  .bx-ticker .bxb-logos-track{width:auto;justify-content:center;padding:0}
  .bx-ticker span+span,.bx-ticker span::after{display:none}
}
/* A locked block: a short line, one field at most, one button */
.bx-lock{text-align:center;justify-items:stretch}
.bx-lock p{margin:0;font-weight:600}
.bx-lock .bx-lock-err{font-weight:500;font-size:.9rem;opacity:.85}

/* ---------- Shopify product: the size or colour chooser; Shopify collection: grid, slider, list ---------- */
.bxb-var{width:100%;min-height:48px;margin:.3rem 0 .1rem;padding:.6rem .9rem;font:inherit;border-radius:12px;border:1.5px solid var(--bxb-line);background:var(--bxb-soft);color:inherit}
.bx-side .bxb-var{min-height:44px}
.bxb-shop{display:grid;gap:.75rem}
.bxb-shop>.bxb-h{text-align:center}
.bxb-shop-items{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem}
.bxb-shop-item{display:flex;flex-direction:column;overflow:hidden;min-width:0}
.bxb-shop-img{width:100%;aspect-ratio:1/1;object-fit:cover;display:block;background:#fff}
.bxb-shop-words{display:grid;gap:.1rem;padding:.6rem .75rem .7rem;min-width:0}
.bxb-shop-name{font-weight:650;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.bxb-shop .bxb-price{margin:0;flex-wrap:wrap;gap:0 .4rem}
.bxb-shop .bxb-price b{font-size:1rem}
.bxb-shop-slider .bxb-shop-items{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:.35rem;scrollbar-width:thin}
.bxb-shop-slider .bxb-shop-item{flex:0 0 46%;max-width:210px;scroll-snap-align:start}
.bxb-shop-list .bxb-shop-items{grid-template-columns:minmax(0,1fr)}
.bxb-shop-list .bxb-shop-item{flex-direction:row;align-items:center;min-height:72px}
.bxb-shop-list .bxb-shop-img{width:72px;flex:none;align-self:stretch;height:auto}
.bxb-shop-list .bxb-shop-words{flex:1}

/* keyboard focus that shows on every theme, light or dark */
body.bxp :is(a,button,input,select,textarea,summary,[tabindex]):focus-visible{outline:3px solid var(--bxp-ink);outline-offset:3px;box-shadow:0 0 0 6px color-mix(in srgb,var(--bxp-paper,#fff) 70%,transparent)}
.bx-link-img{aspect-ratio:1}

/* ---------- Page buttons ---------- */
/* The page's own buttons (views/page.php, page.js): the landing menu on phones, the action bar or floating button, share, back to top.
   Colours and shapes come only from the theme's variables. --pb-b is where the bottom row sits: above the contact dock when there is one. */
body.bxp{--pb-b:max(14px,env(safe-area-inset-bottom))}
body.bxp:has(.bx-dock){--pb-b:calc(max(12px,env(safe-area-inset-bottom)) + 66px)}

/* landing top menu: themed glass, and on phones a menu button that opens a sheet under the pill */

/* the bar: full width at the bottom, rises in once the page head has scrolled away */
.bxpb-bar{position:fixed;left:0;right:0;bottom:var(--pb-b);z-index:45;width:min(520px,calc(100% - 24px));margin:0 auto;background:none;
  transition:transform .55s cubic-bezier(.2,.8,.2,1),opacity .3s ease,visibility 0s}
.bx-js .bxpb-bar:not(.on){transform:translateY(calc(100% + var(--pb-b) + 12px));opacity:0;visibility:hidden;transition:transform .45s cubic-bezier(.4,0,.6,1),opacity .3s,visibility 0s .45s}
.bxpb-go{display:flex;align-items:center;gap:.75rem;min-height:60px;padding:7px;border-radius:min(calc(var(--bx-r-btn,14px) * 1.4),99px);
  background:var(--bxb-accent);color:var(--bxb-accent-ink)!important;text-decoration:none!important;font:650 1rem/1.2 var(--bx-font,inherit);
  box-shadow:0 22px 44px -16px rgba(0,0,0,.55),0 2px 6px -2px rgba(0,0,0,.2),inset 0 0 0 1px color-mix(in srgb,var(--bxb-accent-ink) 10%,transparent)}
.bxpb-ic{display:grid;place-items:center;width:46px;height:46px;flex:none;border-radius:var(--bx-r-btn,14px);background:color-mix(in srgb,var(--bxb-accent-ink) 14%,transparent)}
.bxpb-go>.bxpb-l:first-child{padding-left:14px}
.bxpb-l{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:inherit!important;text-decoration:none!important}
.bxpb-ar{display:grid;place-items:center;width:46px;height:46px;flex:none;border-radius:50%;background:var(--bxb-accent-ink);color:var(--bxb-accent);transition:transform .3s cubic-bezier(.34,1.45,.64,1)}
a.bxpb-go:hover .bxpb-ar{transform:translateX(3px)}
.bxpb-go-offer .bxpb-l{white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.94rem;line-height:1.25}
.bxpb-go-offer a.bxpb-l{padding:6px 0}
.bxpb-code{display:inline-flex;align-items:center;gap:7px;flex:none;min-height:46px;padding:0 14px;border:1.5px dashed color-mix(in srgb,var(--bxb-accent-ink) 60%,transparent);border-radius:var(--bx-r-btn,14px);
  background:color-mix(in srgb,var(--bxb-accent-ink) 10%,transparent);color:inherit;font:700 .92rem/1 var(--bx-mono,ui-monospace),ui-monospace,monospace;letter-spacing:.08em;cursor:pointer}
.bxpb-code::after{content:"";width:15px;height:15px;background:currentColor;opacity:.8;
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.2' stroke-linecap='round'%3E%3Crect x='9' y='9' width='11' height='11' rx='2'/%3E%3Cpath d='M5 15V5a1 1 0 0 1 1-1h9'/%3E%3C/svg%3E") center/contain no-repeat;
  mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.2' stroke-linecap='round'%3E%3Crect x='9' y='9' width='11' height='11' rx='2'/%3E%3Cpath d='M5 15V5a1 1 0 0 1 1-1h9'/%3E%3C/svg%3E") center/contain no-repeat}
.bxt-atelier :is(.bxpb-l,.bxpb-pill),.bxt-atelier.bxpb-share-head{text-transform:uppercase;letter-spacing:.14em;font-size:.78rem}
body.bxp:has(.bxpb-bar){padding-bottom:calc(var(--pb-b) + 78px)}
@media (min-width:768px){.bxpb-bar.bxpb-phone{display:none}body.bxp:has(.bxpb-phone){padding-bottom:0}}

/* floating: a round button in the corner with a short label; an offer opens into a card with its code */
.bxpb-float{position:fixed;right:max(16px,env(safe-area-inset-right));bottom:var(--pb-b);z-index:46;display:flex;flex-direction:column;align-items:flex-end;gap:12px;background:none;
  animation:bxpbIn .6s .5s cubic-bezier(.2,.8,.2,1) both}
.bxpb-fab{display:flex;align-items:center;gap:10px;padding:0;border:0;background:none;color:inherit;font:inherit;cursor:pointer;text-decoration:none!important;-webkit-tap-highlight-color:transparent}
.bxpb-pill{display:flex;align-items:center;min-height:38px;padding:0 15px;border-radius:min(99px,calc(var(--bx-r-btn,99px) * 2.5));background:var(--bxb-solid);color:var(--bxb-ink);font:650 .9rem/1 var(--bx-font,inherit);white-space:nowrap;
  box-shadow:0 10px 26px -12px rgba(0,0,0,.4),inset 0 0 0 1px var(--bxb-line);transition:transform .35s cubic-bezier(.34,1.45,.64,1),opacity .2s}
.bxpb-dot{position:relative;display:grid;place-items:center;width:60px;height:60px;flex:none;border-radius:min(50%,calc(var(--bx-r-btn,99px) * 2));background:var(--bxb-accent);color:var(--bxb-accent-ink);
  box-shadow:0 18px 36px -12px rgba(0,0,0,.55),inset 0 0 0 1px color-mix(in srgb,var(--bxb-accent-ink) 12%,transparent);transition:transform .35s cubic-bezier(.34,1.45,.64,1)}
.bxpb-dot svg{grid-area:1/1;transition:transform .35s cubic-bezier(.2,.8,.2,1),opacity .2s}
.bxpb-dot::after{content:"";position:absolute;inset:0;border-radius:inherit;animation:bxpbPing 2.4s 1.4s 2 cubic-bezier(.2,.8,.2,1)}
.bxpb-fab:hover .bxpb-dot{transform:scale(1.06)}
.bxpb-fab:hover .bxpb-pill{transform:translateX(-3px)}
.bxpb-dot svg+svg{opacity:0;transform:rotate(-90deg) scale(.6)}
.bxpb-float.open .bxpb-dot svg:first-child{opacity:0;transform:rotate(90deg) scale(.6)}
.bxpb-float.open .bxpb-dot svg+svg{opacity:1;transform:none}
.bxpb-float.open .bxpb-pill{opacity:0;pointer-events:none}
.bxpb-card{width:min(300px,calc(100vw - 32px));padding:16px;border-radius:calc(var(--bxb-radius,18px) + 4px);background:var(--bxb-solid);color:var(--bxb-ink);
  box-shadow:0 28px 60px -22px rgba(0,0,0,.55),inset 0 0 0 1px var(--bxb-line);transform-origin:bottom right;animation:bxpbPop .38s cubic-bezier(.2,.9,.3,1.15)}
.bxpb-card[hidden]{display:none}
.bxpb-card-t{display:block;font-family:var(--bxb-head,inherit);font-weight:var(--bx-weight,700);letter-spacing:var(--bx-track,-.02em);text-transform:var(--bx-case,none);font-size:1.3rem;line-height:1.1}
.bxpb-card-code{display:flex;align-items:center;gap:8px;margin-top:12px;padding:5px 5px 5px 14px;border:1.5px dashed color-mix(in srgb,var(--bxb-ink) 30%,transparent);border-radius:min(calc(var(--bx-r-btn,14px) * 1.4),99px);background:var(--bxb-soft)}
.bxpb-card-code span{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;font:700 1.02rem/1 var(--bx-mono,ui-monospace),ui-monospace,monospace;letter-spacing:.1em}
.bxpb-card-code button{min-height:44px;padding:0 18px;border:0;border-radius:var(--bx-r-btn,14px);background:var(--bxb-accent);color:var(--bxb-accent-ink);font:700 .88rem/1 var(--bx-font,inherit);cursor:pointer;flex:none}
.bxpb-card-go{display:flex;align-items:center;justify-content:center;gap:6px;min-height:44px;margin-top:6px;color:var(--bxb-ink)!important;font-weight:650;font-size:.92rem;text-decoration:none!important}
.bxpb-card-go svg{transition:transform .25s}.bxpb-card-go:hover svg{transform:translateX(3px)}

/* back to top: a small round button whose thin ring fills as you go down; beside the floating button, above the bar */
.bxpb-top{position:fixed;right:max(16px,env(safe-area-inset-right));bottom:var(--pb-b);z-index:44;display:grid;place-items:center;width:48px;height:48px;padding:0;border:0;border-radius:50%;cursor:pointer;
  background:color-mix(in srgb,var(--bxb-solid,#fff) 84%,transparent);color:var(--bxb-ink);backdrop-filter:blur(14px) saturate(1.3);-webkit-backdrop-filter:blur(14px) saturate(1.3);
  box-shadow:0 12px 30px -14px rgba(0,0,0,.5),inset 0 0 0 1px var(--bxb-line);
  opacity:0;visibility:hidden;transform:translateY(14px) scale(.85);transition:opacity .3s,transform .45s cubic-bezier(.2,.8,.2,1),bottom .45s cubic-bezier(.2,.8,.2,1),visibility 0s .45s}
.bxpb-top.on{opacity:1;visibility:visible;transform:none;transition-delay:0s}
.bxpb-top.bxpb-left{right:auto;left:max(16px,env(safe-area-inset-left))}
.bxpb-top svg:last-child{position:relative;transition:transform .25s}
.bxpb-top:hover svg:last-child{transform:translateY(-2px)}
.bxpb-ring{position:absolute;inset:3px;width:calc(100% - 6px);height:calc(100% - 6px);transform:rotate(-90deg);overflow:visible}
.bxpb-ring circle{fill:none;stroke:var(--bxb-accent);stroke-width:2.4;stroke-linecap:round;stroke-dasharray:100;stroke-dashoffset:100;transition:stroke-dashoffset .12s linear}
body.bxpb-bar-on .bxpb-top{bottom:calc(var(--pb-b) + 72px)}
@media (min-width:768px){body.bxpb-bar-on .bxpb-top{bottom:var(--pb-b)}}   /* wide screens: the bar is centred, the corner is free */

/* share: a round button at the top corner (in the menu on landing pages), or a pill under the name */
.bxpb-share-top{position:absolute;top:max(14px,env(safe-area-inset-top));right:max(14px,env(safe-area-inset-right));z-index:30;display:grid;place-items:center;width:44px;height:44px;padding:0;border:0;border-radius:50%;cursor:pointer;
  background:color-mix(in srgb,var(--bxb-solid,#fff) 70%,transparent);color:var(--bxb-ink);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);box-shadow:0 8px 22px -12px rgba(0,0,0,.4),inset 0 0 0 1px var(--bxb-line);transition:transform .3s cubic-bezier(.34,1.45,.64,1)}
.bxpb-share-top:hover{transform:translateY(-2px)}
.bxpb-hd{grid-column:1/-1;flex:1 1 100%;display:flex;justify-content:center;margin-top:2px}
.bxpb-share-head{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 18px 0 15px;border-radius:var(--bx-r-btn,99px);cursor:pointer;
  border:1px solid color-mix(in srgb,var(--bxp-ink) 22%,transparent);background:color-mix(in srgb,var(--bxp-ink) 4%,transparent);color:var(--bxp-ink);font:600 .9rem/1 var(--bx-font,inherit);transition:background .2s,color .2s,border-color .2s}
.bxpb-share-head:hover{background:var(--bxp-ink);color:var(--bxp-paper,#fff);border-color:transparent}
@media (min-width:1000px){:is(.bxl-split,.bxl-bento) .bxpb-hd{justify-content:flex-start}}

/* the share sheet: from the bottom on phones, a card in the middle on wide screens */
.bxpb-sheet{width:min(420px,100%);max-width:100%;max-height:100dvh;margin:auto auto 0;padding:0;border:0;background:none;color:var(--bxb-ink);overflow:visible}
.bxpb-sheet::backdrop{background:rgba(8,8,10,.5);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px)}
.bxpb-sh-in{max-height:100dvh;overflow:auto;padding:18px 18px calc(20px + env(safe-area-inset-bottom));border-radius:calc(var(--bxb-radius,18px) + 8px) calc(var(--bxb-radius,18px) + 8px) 0 0;
  background:var(--bxb-solid,#fff);box-shadow:0 -24px 60px -20px rgba(0,0,0,.45),inset 0 0 0 1px var(--bxb-line)}
.bxpb-sheet[open] .bxpb-sh-in{animation:bxpbUp .45s cubic-bezier(.2,.8,.2,1)}
@media (min-width:700px){.bxpb-sheet{margin:auto}.bxpb-sh-in{border-radius:calc(var(--bxb-radius,18px) + 8px);padding-bottom:20px}.bxpb-sheet[open] .bxpb-sh-in{animation-name:bxpbPop}}
.bxpb-sh-head{display:flex;align-items:center;justify-content:space-between;gap:12px}
.bxpb-sh-head h2{margin:0;font-family:var(--bxb-head,inherit);font-weight:var(--bx-weight,700);letter-spacing:var(--bx-track,-.02em);text-transform:var(--bx-case,none);font-size:1.35rem;line-height:1.1}
.bxpb-x{display:grid;place-items:center;width:44px;height:44px;margin:-6px -6px -6px 0;padding:0;border:0;border-radius:50%;background:var(--bxb-soft);color:inherit;cursor:pointer}
.bxpb-sh-qr{width:172px;aspect-ratio:1;margin:16px auto;padding:8px;border-radius:18px;background:#fff;box-shadow:0 0 0 1px var(--bxb-line),0 14px 30px -18px rgba(0,0,0,.35)}
.bxpb-sh-qr svg{display:block;width:100%;height:100%}
.bxpb-sh-url{display:flex;align-items:center;gap:8px;padding:5px 5px 5px 14px;border-radius:min(calc(var(--bx-r-btn,14px) * 1.4),99px);background:var(--bxb-soft);box-shadow:inset 0 0 0 1px var(--bxb-line)}
.bxpb-sh-addr{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.92rem;color:var(--bxb-mute)}
.bxpb-sh-copy{flex:none;min-height:44px;padding:0 18px;border:0;border-radius:var(--bx-r-btn,14px);background:var(--bxb-accent);color:var(--bxb-accent-ink);font:700 .88rem/1 var(--bx-font,inherit);cursor:pointer}
.bxpb-sh-to{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:2px;margin-top:16px}
.bxpb-to{display:flex;flex-direction:column;align-items:center;gap:7px;padding:4px 0;font-size:.72rem;font-weight:600;color:var(--bxb-mute)!important;text-decoration:none!important;letter-spacing:0;text-transform:none}
.bxpb-to span{display:grid;place-items:center;width:48px;height:48px;border-radius:50%;background:var(--c);color:#fff;box-shadow:inset 0 0 0 1px rgba(255,255,255,.12);transition:transform .3s cubic-bezier(.34,1.45,.64,1)}
.bxpb-to:hover span{transform:translateY(-3px)}
.bxpb-to-wa{--c:#25D366}.bxpb-to-x{--c:#0f0f0f}.bxpb-to-fb{--c:#1877F2}.bxpb-to-li{--c:#0A66C2}.bxpb-to-tg{--c:#229ED9}
.bxpb-to-em span{background:var(--bxb-soft);color:var(--bxb-ink);box-shadow:inset 0 0 0 1px var(--bxb-line)}

@keyframes bxpbIn{from{opacity:0;transform:translateY(16px) scale(.9)}}
@keyframes bxpbPop{from{opacity:0;transform:translateY(10px) scale(.94)}}
@keyframes bxpbUp{from{transform:translateY(100%)}}
@keyframes bxpbPing{0%{box-shadow:0 0 0 0 color-mix(in srgb,var(--bxb-accent) 55%,transparent)}100%{box-shadow:0 0 0 16px transparent}}
@media (prefers-reduced-motion:reduce){
  :is(.bxpb-float,.bxpb-card,.bxpb-sh-in){animation:none!important}
  .bxpb-dot::after{animation:none!important}
}
/* the streaming and social row follows the page head's alignment on wide screens */
@media (min-width:1000px){:is(.bxl-split,.bxl-bento) .bx-head .bxo-st{justify-content:flex-start;margin-inline:0}}
/* a heading with a label in the page head is centred like the rest of the head on phones, and left on wide split and bento pages */
.bx-head .bx-hd{text-align:center}.bx-head .bx-hd .bxb-k{justify-content:center}
@media (min-width:1000px){:is(.bxl-split,.bxl-bento) .bx-head .bx-hd{text-align:left}:is(.bxl-split,.bxl-bento) .bx-head .bx-hd .bxb-k{justify-content:flex-start}:is(.bxl-split,.bxl-bento) .bx-head .bx-hd-line::after{margin-left:0}}

/* ---------- template review fixes (10 Nov 2026) ---------- */
/* a gradient page keeps its colour past the first screen (overscroll, long pages) */
body.bxp{background-color:var(--bxp-paper,transparent)!important}
/* the "Most chosen" label on the dark pricing plan: dark plan, light label */
.bxb-plan-hot .bxb-chip{background:var(--bxb-accent);color:var(--bxb-accent-ink)}
/* a photo card is a span when it has no link: it still has to be a box, or its frame breaks into lines */
span.bxb-card{display:block}
/* two cards side by side on a phone: the button text stays on one line */
@media (max-width:600px){.bx-cell.s-half .bxb-card .bxb-btn{white-space:nowrap;font-size:clamp(.72rem,3.5vw,.88rem);padding-inline:.55rem;letter-spacing:.01em}}
/* Editorial: plain buttons get the theme's thin frame instead of floating as text */
.bxt-editorial.bxb-btns>.bxb-btn:not(.bxb-btn-solid){border:1px solid color-mix(in srgb,var(--bxb-ink) 20%,transparent);border-radius:0;min-height:48px}
@media (min-width:1000px){
  /* the status pill follows the page head's alignment */
  :is(.bxl-split,.bxl-bento) .bx-head .bxo-now-pill{justify-content:flex-start}
  /* bento: a short card stays its own height instead of stretching into an empty box beside a tall one */
  .bxl-bento .bx-grid{align-items:start}
}
