/* ==========================================================================
   Better Business Summit 2027 — theme stylesheet
   Design tokens first, then layout, then components in page order.
   ========================================================================== */

html.BBS {
  --ink:#01060E;
  --ink-2:#010A14;
  --panel:linear-gradient(170deg,rgba(9,42,70,.5),rgba(2,12,22,.82));
  --panel-hi:linear-gradient(170deg,rgba(18,80,126,.62),rgba(3,20,36,.86));
  --panel-solid:linear-gradient(170deg,rgba(9,42,70,.6),rgba(2,12,22,.92));
  --line:rgba(127,217,255,.16);
  --line-2:rgba(127,217,255,.22);
  --cyan:#29C3FF;
  --cyan-2:#5EC8F5;
  --cyan-3:#7FD9FF;
  --ice:#EAF6FF;
  --text:#DCEBF7;
  --muted:#A9C6DA;
  --dim:#8FB1C7;
  --meta:#5C86A2;
  --meta-2:#7FA8C2;
  --faint:#4E748C;
  --display:'Archivo',system-ui,sans-serif;
  --body:'Instrument Sans',system-ui,sans-serif;
  --mono:'IBM Plex Mono',ui-monospace,monospace;
  --gutter:clamp(16px,3vw,44px);
  --shell:1400px;
  --header-h:78px;
  --tap:44px;
}

.bbs-page--ryi {
  --display: 'Instrument Sans', system-ui, sans-serif;
  --body: 'Instrument Sans', system-ui, sans-serif;
  --font-display: 'Instrument Sans', system-ui, sans-serif;
  --font-body: 'Instrument Sans', system-ui, sans-serif;
  --font-editorial: 'Instrument Serif', Georgia, 'Times New Roman', serif;
  --font-sans: 'Instrument Sans', ui-sans-serif, system-ui, sans-serif;
}

*{box-sizing:border-box}
html,body{margin:0;padding:0;background:var(--ink);-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{font-family:var(--body);color:var(--text);-webkit-font-smoothing:antialiased;min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;position:relative;overflow-x:hidden}
a{color:var(--cyan-2);text-decoration:none}
a:hover,a:focus-visible,a:active{color:#BFE9FF}
::selection{background:#1E86C8;color:#fff}
input,textarea,select{font-family:var(--body);font-size:16px}
img{max-width:100%;display:block;height:auto}
button,a,.bbs-chip,.bbs-btn{-webkit-tap-highlight-color:rgba(41,195,255,.18)}

.bbs-shell{max-width:var(--shell);margin:0 auto;padding-left:var(--gutter);padding-right:var(--gutter)}
.bbs-section{padding-top:clamp(56px,7vw,112px);padding-bottom:clamp(56px,7vw,112px)}
.bbs-band{border-top:1px solid rgba(127,217,255,.14);border-bottom:1px solid rgba(127,217,255,.14);background:linear-gradient(180deg,rgba(6,34,58,.55),rgba(1,8,16,.15))}
.bbs-grid-2{display:grid;grid-template-columns:1fr;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:clamp(24px,4vw,72px);align-items:start}
.bbs-partners-enquiry{grid-template-columns:minmax(0,1fr)}
.bbs-partners-enquiry > *{min-width:0;max-width:100%}
@media (min-width:1100px){
  .bbs-partners-enquiry{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
}
@media (max-width:1099px){
  html.BBS .bbs-partners-enquiry .mm-form .mauticform-row{width:100%}
}
.bbs-main{flex:1;position:relative;z-index:1}

/* --- ambient background layers ------------------------------------------ */
.bbs-bg{position:fixed;z-index:0;pointer-events:none}
.bbs-bg--wash{inset:0;background:radial-gradient(120% 82% at 50% 6%,#0C4165 0%,#06223D 32%,#010A14 64%,#000308 100%)}
.bbs-bg--aurora{inset:-20%;background:radial-gradient(closest-side,rgba(35,150,220,.3),rgba(0,0,0,0) 70%);animation:bbsAurora 18s ease-in-out infinite}
.bbs-bg--stars{inset:-50%;opacity:.5;background-size:1000px 620px;animation:bbsDriftA 140s linear infinite,bbsTwinkle 7s ease-in-out infinite;
  background-image:radial-gradient(1.4px 1.4px at 40px 60px,#EAF7FF,transparent),radial-gradient(1.2px 1.2px at 220px 180px,#9FD8F5,transparent),radial-gradient(1.6px 1.6px at 420px 90px,#fff,transparent),radial-gradient(1px 1px at 640px 260px,#BFE9FF,transparent),radial-gradient(1.3px 1.3px at 780px 40px,#fff,transparent),radial-gradient(1px 1px at 150px 420px,#7FD9FF,transparent),radial-gradient(1.5px 1.5px at 520px 520px,#fff,transparent),radial-gradient(1px 1px at 900px 380px,#9FD8F5,transparent)}
.bbs-bg--stars2{inset:-50%;opacity:.34;background-size:820px 700px;animation:bbsDriftB 200s linear infinite;
  background-image:radial-gradient(1px 1px at 100px 140px,#fff,transparent),radial-gradient(1px 1px at 330px 400px,#8FD3F2,transparent),radial-gradient(1px 1px at 560px 120px,#fff,transparent),radial-gradient(1px 1px at 820px 480px,#BFE9FF,transparent),radial-gradient(1px 1px at 250px 620px,#fff,transparent)}

/* --- type ---------------------------------------------------------------- */
.bbs-eyebrow{font-family:var(--mono);font-size:12px;letter-spacing:.2em;color:var(--cyan-2);text-transform:uppercase}
.bbs-label{font-family:var(--mono);font-size:10px;letter-spacing:.12em;color:var(--meta);text-transform:uppercase}
.bbs-meta{font-family:var(--mono);font-size:11px;letter-spacing:.1em;color:var(--meta-2);text-transform:uppercase}
.bbs-lead{font-size:clamp(16px,1.3vw,19px);line-height:1.65;color:var(--muted);text-wrap:pretty}
.bbs-body{font-size:clamp(16px,1.25vw,18.5px);line-height:1.7;color:var(--muted);text-wrap:pretty;margin:0 0 16px}
.bbs-emph{font-size:clamp(17px,1.3vw,19.5px);line-height:1.6;color:var(--ice);font-weight:600}

.bbs-h1,.bbs-h2,.bbs-h3{font-family:var(--display);font-weight:900;text-transform:uppercase;letter-spacing:-.045em;margin:0;text-wrap:balance}
.bbs-h1{font-size:clamp(42px,6.2vw,92px);line-height:.9;letter-spacing:-.05em}
.bbs-h2{font-size:clamp(32px,4.2vw,60px);line-height:.94}
.bbs-h3{font-size:clamp(22px,2vw,29px);line-height:1.02;letter-spacing:-.035em}
.bbs-h2--lg{font-size:clamp(38px,5.6vw,88px);line-height:.88;letter-spacing:-.05em}
.bbs-h2--sm{font-size:clamp(30px,3.8vw,54px);line-height:.96}

/* gradient text treatments */
.bbs-chrome{background-image:linear-gradient(180deg,#FFF,#BFE9FF 45%,#3BAEE4 100%);-webkit-background-clip:text;background-clip:text;color:transparent}
.bbs-chrome--deep{background-image:linear-gradient(180deg,#FFF,#D6F0FF 30%,#8FD3F2 60%,#1E8CC9 100%);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 6px 34px rgba(41,150,220,.4))}
.bbs-chrome--page{background-image:linear-gradient(180deg,#FFF,#CFEAFB 42%,#2AA7E0 100%);-webkit-background-clip:text;background-clip:text;color:transparent;animation:bbsRise .7s ease both}
.bbs-shimmer{background-image:linear-gradient(100deg,#0C6FA9 0%,#3BAEE4 22%,#FFF 40%,#A9DCF7 58%,#3BAEE4 76%,#0C6FA9 100%);background-size:200% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:bbsShimmer 6s linear infinite}
.bbs-plain{color:var(--ice)}

/* --- buttons ------------------------------------------------------------- */
.bbs-btn{display:inline-block;text-align:center;font-family:var(--display);font-weight:900;font-size:14px;letter-spacing:.09em;text-transform:uppercase;padding:19px 36px;border-radius:3px;border:0;cursor:pointer;min-height:var(--tap);touch-action:manipulation;-webkit-appearance:none;appearance:none;transition:transform .18s,box-shadow .18s,background .2s,border-color .2s,color .2s}
.bbs-btn--primary{background-image:linear-gradient(180deg,#7FE0FF 0%,#29C3FF 46%,#0A83C8 100%);color:#00131F;box-shadow:0 0 28px rgba(41,195,255,.3)}
.bbs-btn--primary:focus-visible,.bbs-btn--primary:active{color:#00131F;box-shadow:0 0 36px rgba(41,195,255,.62)}
.bbs-btn--ghost{border:1px solid rgba(127,217,255,.42);color:var(--ice);background:none}
.bbs-btn--ghost:hover,.bbs-btn--ghost:focus-visible,.bbs-btn--ghost:active{background:rgba(41,195,255,.14);border-color:var(--cyan);color:#fff}
.bbs-btn--sm{font-size:12px;padding:13px 20px;min-height:var(--tap)}
.bbs-btn--lg{font-size:15px;padding:20px 40px}
.bbs-btn--block{display:block;width:100%}
.bbs-btn--pulse{animation:bbsPulse 3.6s ease-out infinite}
.bbs-link-arrow{font-family:var(--display);font-weight:800;font-size:13px;letter-spacing:.1em;text-transform:uppercase;border-bottom:2px solid var(--cyan);padding-bottom:5px;color:var(--ice)}

/* state / theme chips */
.bbs-chips{display:flex;flex-wrap:wrap;gap:9px}
.bbs-chips--scroll{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;padding-bottom:6px}
.bbs-chip{cursor:pointer;flex:0 0 auto;font-family:var(--display);font-weight:800;font-size:13px;letter-spacing:.1em;padding:14px 26px;border-radius:3px;text-transform:uppercase;transition:all .2s;border:1px solid rgba(127,217,255,.24);background:rgba(4,20,36,.55);color:var(--text);min-height:var(--tap);touch-action:manipulation;-webkit-appearance:none;appearance:none}
.bbs-chip:hover,.bbs-chip:focus-visible,.bbs-chip:active{border-color:rgba(41,195,255,.55);color:#fff}
.bbs-chip[aria-pressed="true"]{border-color:var(--cyan);background:rgba(41,195,255,.18);color:var(--ice);box-shadow:0 0 22px rgba(41,195,255,.28)}
.bbs-chip--theme{font-size:11.5px;letter-spacing:.11em;padding:10px 16px;border-radius:100px;min-height:var(--tap);display:inline-flex;align-items:center}
.bbs-chip--theme[aria-pressed="true"]{background:rgba(41,195,255,.14);box-shadow:none}

/* --- header -------------------------------------------------------------- */
.bbs-header{position:-webkit-sticky;position:sticky;top:0;z-index:60;background:rgba(1,8,16,.94);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid rgba(95,190,240,.16);padding-top:env(safe-area-inset-top)}
.bbs-header__bar{max-width:var(--shell);margin:0 auto;padding:0 var(--gutter);height:var(--header-h);display:flex;align-items:center;gap:clamp(14px,2vw,36px)}
@media (min-width:940px){
  .bbs-header__bar{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:clamp(14px,2vw,36px)}
  .bbs-header__bar .bbs-logo{justify-self:start}
  .bbs-header__bar .bbs-nav{margin-left:0;justify-self:center}
  .bbs-header__bar .bbs-btn--primary{justify-self:end;margin-left:0}
}
.bbs-logo{display:flex;align-items:center;gap:8px;flex:0 0 auto;height:100%;min-height:var(--tap)}
.bbs-logo:focus-visible,.bbs-logo:active{outline:2px solid var(--cyan);outline-offset:4px}
.bbs-logo__img{display:block;width:auto;height:calc(var(--header-h) - 20px);max-height:58px;object-fit:contain}
.bbs-logo__mark{font-family:var(--display);font-weight:900;font-size:27px;letter-spacing:-.03em;line-height:1;background-image:linear-gradient(180deg,#FFF 0%,#DCEEFA 28%,#9FD8F5 50%,#2AA7E0 76%,#0E6FA8 100%);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 0 14px rgba(60,180,240,.4))}
.bbs-logo__year{font-family:var(--mono);font-size:12px;color:var(--cyan-2);letter-spacing:.16em}
.bbs-nav{margin-left:auto;display:flex;align-items:center;gap:clamp(8px,1.5vw,28px)}
.bbs-nav a{font-family:var(--display);font-weight:700;font-size:13px;letter-spacing:.1em;text-transform:uppercase;color:#CFE6F5;padding:12px 0;min-height:var(--tap);display:inline-flex;align-items:center;border-bottom:2px solid transparent;transition:color .18s}
.bbs-nav a:hover,.bbs-nav a:focus-visible,.bbs-nav a:active{color:#fff}
.bbs-nav a.is-active{border-bottom-color:var(--cyan-2)}
.bbs-header .bbs-btn--primary{margin-left:auto;flex:0 0 auto;font-size:13px;padding:14px 24px;box-shadow:0 0 24px rgba(41,195,255,.35)}
.bbs-burger{display:none;background:rgba(94,200,245,.08);border:1px solid rgba(94,200,245,.3);color:var(--text);width:var(--tap);height:var(--tap);min-width:var(--tap);min-height:var(--tap);border-radius:3px;font-size:18px;cursor:pointer;align-items:center;justify-content:center;flex:0 0 auto;-webkit-appearance:none;appearance:none}
.bbs-drawer{display:none;flex-direction:column;padding:8px var(--gutter) 26px;border-top:1px solid rgba(94,200,245,.14);gap:2px;animation:bbsFade .2s ease}
.bbs-drawer.is-open{display:flex}
.bbs-drawer[hidden]{display:none !important}
.bbs-drawer a{font-family:var(--display);font-weight:800;font-size:clamp(22px,7vw,26px);letter-spacing:-.02em;text-transform:uppercase;color:var(--ice);padding:16px 0;min-height:var(--tap);border-bottom:1px solid rgba(94,200,245,.12)}
.bbs-drawer a:last-child{color:var(--cyan-2);border-bottom:0}
@media (max-width:939px){
  .bbs-nav{display:none}
  .bbs-burger{display:flex}
  .bbs-header .bbs-btn--primary{margin-left:auto;padding:12px 16px;font-size:12px}
  .bbs-header__bar{height:var(--header-h);padding-top:0;padding-bottom:0}
  .bbs-drawer{position:fixed;left:0;right:0;top:calc(var(--header-h) + env(safe-area-inset-top));bottom:0;z-index:59;background:rgba(1,8,16,.98);overflow-y:auto;-webkit-overflow-scrolling:touch;padding-bottom:calc(26px + env(safe-area-inset-bottom))}
}

/* --- hero ---------------------------------------------------------------- */
.bbs-hero{position:relative;overflow-x:hidden;display:flex;flex-direction:column}
.bbs-hero__media{position:relative;width:100%;aspect-ratio:16/9;overflow:hidden}
.bbs-hero__media video,.bbs-hero__media img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;object-position:center}
.bbs-hero__glow{position:absolute;inset:0;mix-blend-mode:screen;background:radial-gradient(60% 45% at 50% 44%,rgba(41,195,255,.22),rgba(0,0,0,0) 70%);animation:bbsAurora 12s ease-in-out infinite;pointer-events:none}
.bbs-hero__sweep{position:absolute;top:0;bottom:0;width:22%;mix-blend-mode:screen;background:linear-gradient(90deg,transparent,rgba(190,235,255,.16),transparent);animation:bbsSweep 9s ease-in-out infinite;pointer-events:none}
.bbs-hero__fade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(1,6,14,.45) 0%,rgba(1,6,14,0) 22%,rgba(1,6,14,0) 72%,rgba(1,6,14,.85) 100%);pointer-events:none}
.bbs-hero__sound{position:absolute;right:clamp(12px,2vw,20px);bottom:clamp(12px,2vw,20px);z-index:3;width:var(--tap);height:var(--tap);min-width:var(--tap);min-height:var(--tap);padding:0;display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(127,217,255,.42);border-radius:3px;background:rgba(1,8,16,.72);color:var(--ice);cursor:pointer;touch-action:manipulation;-webkit-appearance:none;appearance:none}
.bbs-hero__sound:hover,.bbs-hero__sound:focus-visible,.bbs-hero__sound:active{background:rgba(41,195,255,.18);border-color:var(--cyan);color:#fff}
.bbs-hero__sound[aria-pressed="true"]{border-color:rgba(41,195,255,.7);color:#BFE9FF}
.bbs-hero__sound-icon{width:18px;height:18px;flex:0 0 18px;display:block}
.bbs-hero__sound-icon svg{display:block;width:100%;height:100%}
.bbs-hero__cta{position:relative;max-width:var(--shell);width:100%;margin:clamp(20px,2.4vw,36px) auto 0;padding:0 var(--gutter) clamp(30px,3.4vw,52px);display:flex;flex-wrap:wrap;align-items:end;justify-content:space-between;gap:clamp(20px,2.6vw,40px);animation:bbsRise 1s cubic-bezier(.2,.7,.3,1) both}
.bbs-hero__copy{min-width:min(100%,320px)}
.bbs-hero__kicker{display:flex;align-items:center;gap:14px}
.bbs-hero__rule{width:clamp(26px,4vw,54px);height:1px;background:linear-gradient(90deg,transparent,var(--cyan));flex:0 0 auto}
.bbs-hero__title{font-family:var(--display);font-weight:900;font-size:clamp(16px,2.1vw,30px);letter-spacing:.02em;line-height:1.1;text-transform:uppercase;background-image:linear-gradient(180deg,#FFF 0%,#DCEEFA 30%,#9FD8F5 54%,#2AA7E0 80%,#0E6FA8 100%);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 0 18px rgba(60,180,240,.35))}
.bbs-hero__sub{font-family:var(--mono);font-size:11px;letter-spacing:.2em;color:var(--meta-2);text-transform:uppercase;padding-left:calc(clamp(26px,4vw,54px) + 14px)}

.bbs-marquee{position:relative;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:linear-gradient(90deg,rgba(6,30,52,.92),rgba(10,60,95,.6),rgba(6,30,52,.92));overflow:hidden}
.bbs-marquee__track{display:flex;width:max-content;animation:bbsMarquee 34s linear infinite}
.bbs-marquee span{font-family:var(--display);font-weight:800;font-size:13px;letter-spacing:.18em;text-transform:uppercase;color:#8FCDEA;padding:16px 26px;white-space:nowrap}

.bbs-statement{font-family:var(--display);font-weight:700;font-size:clamp(20px,1.8vw,27px);line-height:1.22;letter-spacing:-.025em;margin:0 0 8px;text-wrap:pretty}
.bbs-rule-left{border-left:2px solid var(--cyan);padding-left:20px}

/* --- tour date cards ----------------------------------------------------- */
.bbs-cardgrid{display:grid;grid-template-columns:1fr;grid-template-columns:repeat(auto-fit,minmax(min(100%,248px),1fr));gap:clamp(12px,1.4vw,18px)}
.bbs-datecard{position:relative;background:linear-gradient(165deg,rgba(14,62,98,.5),rgba(3,16,29,.72));border:1px solid rgba(127,217,255,.18);border-radius:4px;padding:clamp(20px,2vw,26px);display:flex;flex-direction:column;gap:16px;overflow:hidden;transition:transform .22s,border-color .22s,box-shadow .22s}
.bbs-datecard:focus-within,.bbs-datecard:active{border-color:rgba(41,195,255,.65)}
.bbs-datecard__head{display:flex;align-items:baseline;justify-content:space-between;gap:8px;border-bottom:1px solid rgba(127,217,255,.14);padding-bottom:14px}
.bbs-datecard__code{font-family:var(--display);font-weight:900;font-size:clamp(30px,2.6vw,40px);letter-spacing:-.045em;line-height:1;background-image:linear-gradient(180deg,#FFF,#CFEAFB 40%,#3BAEE4 100%);-webkit-background-clip:text;background-clip:text;color:transparent}
.bbs-row{display:flex;gap:10px}
.bbs-row__k{font-family:var(--mono);font-size:10px;letter-spacing:.12em;color:var(--meta);text-transform:uppercase;width:52px;flex:0 0 52px;padding-top:3px}
.bbs-row__v{font-family:var(--display);font-weight:700;font-size:15px;line-height:1.35;color:var(--ice)}

/* --- pillars / takeaways ------------------------------------------------- */
.bbs-hairgrid{display:grid;grid-template-columns:1fr;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:1px;background:var(--line);border:1px solid var(--line);border-radius:4px;overflow:hidden}
.bbs-hairstack{display:flex;flex-direction:column;gap:1px;background:var(--line);border:1px solid var(--line);border-radius:4px;overflow:hidden}
.bbs-pillar{background:linear-gradient(170deg,rgba(9,42,70,.55),rgba(2,12,22,.82));padding:clamp(24px,2.4vw,38px);display:flex;flex-direction:column;gap:14px;min-height:320px;transition:background .25s}
.bbs-pillar:hover{background:linear-gradient(170deg,rgba(18,80,126,.7),rgba(3,20,36,.86))}
.bbs-pillar__num{font-family:var(--mono);font-size:12px;color:var(--cyan)}
.bbs-pillar__tag{font-family:var(--mono);font-size:10.5px;letter-spacing:.2em;color:var(--meta);text-transform:uppercase}
.bbs-pillar__hook{font-family:var(--display);font-weight:700;font-size:16.5px;line-height:1.35;letter-spacing:-.01em;color:var(--cyan-3);text-wrap:pretty}
.bbs-pillar p{font-size:14.5px;line-height:1.68;color:var(--dim);margin:0;text-wrap:pretty}
.bbs-takeaway{background:linear-gradient(170deg,rgba(9,42,70,.45),rgba(2,12,22,.8));padding:clamp(18px,1.8vw,24px) clamp(18px,2vw,26px);display:flex;gap:16px;align-items:start;transition:background .22s}
.bbs-takeaway:hover{background:linear-gradient(170deg,rgba(18,80,126,.6),rgba(3,20,36,.86))}
.bbs-takeaway__n{font-family:var(--mono);font-size:11px;color:var(--cyan);padding-top:4px;flex:0 0 auto}
.bbs-takeaway p{font-size:15.5px;line-height:1.6;color:#CFE6F5;margin:0;text-wrap:pretty}
.bbs-friction{display:flex;gap:14px;align-items:center;border:1px solid var(--line);background:rgba(4,22,40,.5);border-radius:3px;padding:15px 18px;transition:all .22s}
.bbs-friction:focus-within,.bbs-friction:active{border-color:rgba(41,195,255,.5);background:rgba(10,52,84,.55)}
.bbs-friction-list{display:flex;flex-direction:column;gap:10px}
.bbs-friction__dot{width:6px;height:6px;border-radius:50%;background:var(--cyan);box-shadow:0 0 8px var(--cyan);flex:0 0 auto}
.bbs-friction span:last-child{font-family:var(--display);font-weight:700;font-size:16px;letter-spacing:-.015em;color:var(--text)}

/* --- session cards / agenda ---------------------------------------------- */
.bbs-type{font-family:var(--display);font-weight:800;font-size:10px;letter-spacing:.12em;text-transform:uppercase;padding:4px 9px;border-radius:2px;background:rgba(41,195,255,.28);color:var(--ice)}
.bbs-type--keynote{background:var(--cyan);color:#00131F}
.bbs-type--soft{background:rgba(127,217,255,.14);color:#9FD8F5}
.bbs-pilltag{display:inline-flex;align-items:center;gap:6px;font-family:var(--mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;border:1px solid currentColor;border-radius:100px;padding:3px 10px}

.bbs-featured{background:linear-gradient(170deg,rgba(9,42,70,.5),rgba(2,12,22,.82));padding:clamp(20px,2vw,30px);display:flex;flex-direction:column;gap:12px;transition:background .25s}
.bbs-featured:hover{background:var(--panel-hi)}
.bbs-featured__title{font-family:var(--display);font-weight:800;font-size:20px;line-height:1.18;letter-spacing:-.025em;color:var(--ice);text-wrap:pretty}
.bbs-featured p{font-size:14px;line-height:1.65;color:var(--dim);margin:0;flex:1;text-wrap:pretty}
.bbs-featured__foot{font-family:var(--mono);font-size:11px;color:var(--meta);letter-spacing:.06em;border-top:1px solid rgba(127,217,255,.14);padding-top:12px}

.bbs-agendabar{position:-webkit-sticky;position:sticky;top:calc(var(--header-h) + env(safe-area-inset-top));z-index:40;background:rgba(1,8,16,.94);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid rgba(127,217,255,.2);margin:0 calc(-1 * var(--gutter)) clamp(24px,3vw,36px);padding:16px var(--gutter);display:flex;flex-wrap:wrap;gap:16px 24px;justify-content:space-between;align-items:center}
.bbs-agendabar__city{font-family:var(--display);font-weight:900;font-size:clamp(19px,2.2vw,28px);line-height:1.05;letter-spacing:-.035em;text-transform:uppercase;color:var(--ice)}
.bbs-agendabar__city em{font-style:normal;color:var(--cyan-2)}
.bbs-agendabar__meta{display:flex;flex-wrap:wrap;gap:6px 16px;font-family:var(--mono);font-size:11px;letter-spacing:.1em;color:var(--meta-2);margin-top:6px;text-transform:uppercase}
.bbs-agendabar__meta i{font-style:normal;color:#2E5670}

.bbs-timeline{display:flex;flex-direction:column}
.bbs-slot{display:grid;grid-template-columns:minmax(56px,104px) 1fr;gap:clamp(10px,1.6vw,22px);transition:opacity .3s}
.bbs-slot.is-dimmed{opacity:.25}
.bbs-slot.is-hidden{display:none}
.bbs-slot__time{text-align:right;padding-top:18px;font-family:var(--mono);font-size:12.5px;letter-spacing:.04em;color:var(--cyan-3);white-space:nowrap}
.bbs-slot__track{position:relative;border-left:1px solid var(--line-2);padding:0 0 clamp(12px,1.6vw,18px) clamp(16px,2vw,28px)}
.bbs-slot__dot{position:absolute;left:-4px;top:22px;width:9px;height:9px;border-radius:50%;background:var(--cyan);box-shadow:0 0 12px var(--cyan)}
.bbs-slot--break .bbs-slot__dot{left:-2.5px;width:5px;height:5px;background:rgba(127,217,255,.5);box-shadow:none}
.bbs-slot__break{display:flex;align-items:center;gap:14px;padding:10px 0 10px 2px}
.bbs-slot__break span:first-child{font-family:var(--mono);font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--meta-2);white-space:nowrap}
.bbs-slot__break i{flex:1;height:1px;background:repeating-linear-gradient(90deg,rgba(127,217,255,.28) 0 5px,transparent 5px 10px)}

.bbs-session{background:var(--panel);border:1px solid rgba(127,217,255,.18);border-radius:4px;overflow:hidden;transition:border-color .22s,transform .22s}
.bbs-session:focus-within,.bbs-session:active{border-color:rgba(41,195,255,.5)}
.bbs-session__toggle{width:100%;cursor:pointer;background:none;border:0;text-align:left;padding:clamp(18px,2vw,26px) clamp(16px,2vw,28px);display:grid;grid-template-columns:minmax(0,1fr) auto;gap:clamp(12px,2vw,24px);align-items:start;color:inherit;min-height:var(--tap);touch-action:manipulation}
.bbs-session__tags{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:10px}
.bbs-session__partner{font-family:var(--mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--meta)}
.bbs-session__title{font-family:var(--display);font-weight:800;font-size:clamp(18px,1.7vw,25px);line-height:1.18;letter-spacing:-.03em;color:var(--ice);text-wrap:pretty}
.bbs-session__speakers{font-size:14px;color:var(--dim);margin-top:8px}
.bbs-session__chev{font-family:var(--mono);font-size:18px;color:var(--cyan-2);padding-top:2px;transition:transform .22s}
.bbs-session[open] .bbs-session__chev,.bbs-session.is-open .bbs-session__chev{transform:rotate(180deg)}
.bbs-session__body{display:none;padding:0 clamp(16px,2vw,28px) clamp(22px,2.4vw,28px);animation:bbsFade .22s ease}
.bbs-session.is-open .bbs-session__body{display:block}
.bbs-session__inner{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:clamp(20px,2.4vw,36px);border-top:1px solid var(--line);padding-top:20px}
.bbs-session__inner p{font-size:15px;line-height:1.7;color:var(--muted);margin:0;text-wrap:pretty}
.bbs-minispeaker{display:flex;gap:14px;align-items:center}
.bbs-minispeaker__img{width:60px;height:60px;flex:0 0 60px;border-radius:3px;background:linear-gradient(165deg,rgba(14,62,98,.7),rgba(2,12,22,.9));border:1px solid var(--line-2);display:flex;align-items:center;justify-content:center;font-family:var(--mono);font-size:8px;color:var(--meta);text-align:center;letter-spacing:.08em;overflow:hidden}
.bbs-minispeaker__img img{width:100%;height:100%;object-fit:cover}

/* --- speakers ------------------------------------------------------------ */
.bbs-speakergrid{display:grid;grid-template-columns:1fr 1fr;grid-template-columns:repeat(auto-fit,minmax(min(100%,160px),1fr));gap:clamp(14px,1.6vw,22px)}
.bbs-speakergrid--home{grid-template-columns:1fr 1fr;grid-template-columns:repeat(auto-fit,minmax(min(100%,150px),1fr))}
.bbs-speaker{cursor:pointer;text-align:left;background:var(--panel);border:1px solid rgba(127,217,255,.18);border-radius:4px;padding:0;display:flex;flex-direction:column;overflow:hidden;transition:transform .22s,border-color .22s,box-shadow .22s;color:inherit;font:inherit}
.bbs-speaker:focus-visible,.bbs-speaker:active{border-color:rgba(41,195,255,.6)}
.bbs-speaker--bare{background:none;border:0;border-radius:0}
.bbs-speaker__home{padding-top:12px}
.bbs-speaker.is-hidden{display:none}
.bbs-portrait{position:relative;width:100%;aspect-ratio:1/1;background:linear-gradient(165deg,rgba(14,62,98,.55),rgba(2,12,22,.85));overflow:hidden}
.bbs-portrait--tall{aspect-ratio:4/5;border:1px solid rgba(127,217,255,.2);border-radius:4px}
.bbs-portrait img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.bbs-portrait__hatch{position:absolute;inset:0;background-image:repeating-linear-gradient(135deg,rgba(127,217,255,.07) 0 10px,transparent 10px 20px)}
.bbs-portrait__label{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-family:var(--mono);font-size:10px;letter-spacing:.14em;color:var(--meta);text-transform:uppercase}
.bbs-speaker__meta{padding:18px 18px 20px;display:flex;flex-direction:column;gap:5px;flex:1}
.bbs-speaker__name{font-family:var(--display);font-weight:800;font-size:18px;letter-spacing:-.02em;line-height:1.15;color:var(--ice)}
.bbs-speaker__role{font-size:13.5px;color:var(--dim);line-height:1.4}
.bbs-speaker__co{font-family:var(--display);font-weight:700;font-size:13px;color:var(--text)}
.bbs-speaker__states{font-family:var(--mono);font-size:10.5px;color:var(--cyan-2);letter-spacing:.1em;margin-top:8px;text-transform:uppercase}

/* --- locations ----------------------------------------------------------- */
.bbs-venue{background:var(--panel);border:1px solid rgba(127,217,255,.18);border-radius:4px;display:grid;grid-template-columns:1fr;align-items:start;overflow:hidden;scroll-margin-top:calc(var(--header-h) + env(safe-area-inset-top) + 16px)}
.bbs-venue__img{position:relative;min-width:0;background:linear-gradient(160deg,rgba(14,62,98,.6),rgba(2,12,22,.9))}
.bbs-venue__img--empty{min-height:300px}
.bbs-venue__photo{display:block}
.bbs-venue__img img{display:block;width:100%;height:auto}
@media (min-width:640px){
  .bbs-venue{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:stretch}
  .bbs-venue__img{border-right:1px solid rgba(127,217,255,.14)}
  .bbs-venue__photo{position:absolute;inset:0;display:flex}
  .bbs-venue__img img{flex:1 1 auto;width:100%;height:100%;min-height:100%;object-fit:cover;object-position:center}
}
.bbs-venue__body{padding:clamp(24px,2.6vw,42px);display:flex;flex-direction:column;gap:20px}
.bbs-venue__facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:16px 24px;border-top:1px solid rgba(127,217,255,.14);border-bottom:1px solid rgba(127,217,255,.14);padding:20px 0}
.bbs-venue__facts .bbs-row__v{font-size:15px}
.bbs-venue__actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:auto}

/* --- tickets ------------------------------------------------------------- */
.bbs-ticketgrid{display:grid;grid-template-columns:1fr;gap:clamp(14px,1.6vw,22px)}
.bbs-ticket{background:linear-gradient(170deg,rgba(9,42,70,.5),rgba(2,12,22,.85));border:1px solid rgba(127,217,255,.18);border-radius:4px;padding:clamp(20px,2.4vw,34px);display:flex;flex-direction:column;gap:18px;scroll-margin-top:96px;min-width:0;overflow:hidden;transition:transform .22s,border-color .22s}
.bbs-ticket:focus-within,.bbs-ticket:active{border-color:rgba(41,195,255,.65)}
.bbs-ticket.is-active{border-color:rgba(41,195,255,.65);box-shadow:0 0 44px rgba(41,195,255,.16)}
.bbs-ticket__head{display:flex;align-items:baseline;justify-content:space-between;gap:8px;min-width:0}
html.BBS .bbs-ticket__city{font-family:var(--display);font-weight:900;text-transform:uppercase;letter-spacing:-.04em;margin:0;font-size:clamp(22px,4vw,28px);line-height:1.1;min-width:0;white-space:nowrap}
.bbs-ticket__head .bbs-meta{flex:0 0 auto}
.bbs-ticket__facts{border-top:1px solid rgba(127,217,255,.14);padding-top:16px;display:flex;flex-direction:column;gap:10px;flex:1;min-width:0}
.bbs-ticket__facts .bbs-row__v{overflow-wrap:break-word}

@media (min-width:700px){
  .bbs-ticketgrid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (min-width:960px){
  .bbs-ticketgrid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (min-width:1200px){
  .bbs-ticketgrid{grid-template-columns:repeat(5,minmax(0,1fr))}
  .bbs-ticket{padding:18px 12px 20px;gap:14px}
  html.BBS .bbs-ticket__city{font-size:clamp(15px,1.1vw,18px)}
  .bbs-ticket .bbs-btn{padding-left:10px;padding-right:10px;font-size:12px}
  .bbs-ticket .bbs-link-arrow{font-size:11px}
}

/* --- partners ------------------------------------------------------------ */
.bbs-tier{margin-bottom:clamp(48px,5vw,84px)}
.bbs-tier__head{display:flex;align-items:baseline;gap:16px;margin-bottom:clamp(20px,2.4vw,32px)}
.bbs-tier__head h2{font-family:var(--display);font-weight:900;font-size:clamp(20px,2.2vw,32px);letter-spacing:-.03em;margin:0;text-transform:uppercase;white-space:nowrap;color:var(--ice)}
.bbs-tier__head i{flex:1;height:1px;background:rgba(127,217,255,.2)}
.bbs-tier__head span{font-family:var(--mono);font-size:11px;color:var(--faint);letter-spacing:.1em}
.bbs-logogrid{--logo-min:180px;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,var(--logo-min)),1fr));gap:clamp(16px,2vw,32px)}
.bbs-logogrid--320{--logo-min:225px}
.bbs-logogrid--320 .bbs-logo-tile{max-width:var(--logo-min)}
.bbs-logogrid--220{--logo-min:220px}
.bbs-logogrid--180{--logo-min:180px}
.bbs-logogrid--150{--logo-min:150px}
.bbs-logogrid--130{--logo-min:130px}
.bbs-logo-tile--5-2{aspect-ratio:3/2}
.bbs-logo-tile--3-2{aspect-ratio:3/2}
.bbs-logo-tile{background:#fff;border:1px solid rgba(127,217,255,.28);border-radius:3px;display:flex;align-items:center;justify-content:center;padding:10px 12px;font-family:var(--mono);font-size:10.5px;letter-spacing:.12em;color:var(--meta);text-transform:uppercase;text-align:center;transition:border-color .22s,background .22s,box-shadow .22s;width:100%;min-height:var(--tap);cursor:pointer;-webkit-appearance:none;appearance:none}
.bbs-logo-tile__img{max-width:94%;max-height:82%;width:auto;height:auto;object-fit:contain}
.bbs-logo-tile--tight{padding:6px 8px}
.bbs-logo-tile--tight .bbs-logo-tile__img{max-width:98%;max-height:90%}
.bbs-logo-tile__name{font-family:var(--display);font-weight:800;font-size:clamp(18px,2vw,24px);line-height:1.15;letter-spacing:-.02em;color:var(--ice);text-transform:none;text-wrap:balance}
.bbs-logo-tile:focus-visible,.bbs-logo-tile:active{border-color:rgba(41,195,255,.7);box-shadow:0 0 0 2px rgba(41,195,255,.28);background:#fff}
.bbs-logo-tile--dashed{border-style:dashed}
.bbs-logo-tile--text .bbs-logo-tile__name{color:#062036;font-size:clamp(15px,1.5vw,19px);letter-spacing:-.01em}
.bbs-logo-tile--static{cursor:default}

/* --- partner slider (home, directly under the hero) ---------------------- */
.bbs-partner-strip{border-bottom:1px solid var(--line);padding-top:clamp(22px,2.6vw,36px);padding-bottom:clamp(26px,3vw,44px);background:linear-gradient(180deg,rgba(6,34,58,.5),rgba(1,8,16,.2))}
.bbs-partner-strip__head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 20px;margin-bottom:clamp(16px,2vw,24px)}
html.BBS .bbs-partner-strip__title{font-family:var(--mono);font-weight:400;font-size:11px;letter-spacing:.2em;line-height:1.4;color:var(--meta-2);text-transform:uppercase;margin:0}
.bbs-partner-marquee{position:relative;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 7%,#000 93%,transparent 100%);mask-image:linear-gradient(90deg,transparent 0,#000 7%,#000 93%,transparent 100%)}
.bbs-partner-marquee__track{display:flex;width:max-content;animation:bbsPartnerScroll 70s linear infinite}
.bbs-partner-marquee:hover .bbs-partner-marquee__track,.bbs-partner-marquee:focus-within .bbs-partner-marquee__track{animation-play-state:paused}
.bbs-partner-marquee__set{display:flex;flex:0 0 auto;align-items:center}
.bbs-partner-marquee .bbs-logo-tile{width:clamp(140px,14vw,200px);flex:0 0 auto;margin-right:clamp(12px,1.4vw,20px)}

/* --- testimonials -------------------------------------------------------- */
.bbs-quote{margin:0;background:linear-gradient(170deg,rgba(9,42,70,.45),rgba(2,12,22,.82));padding:clamp(24px,2.4vw,34px);display:flex;flex-direction:column;gap:16px;transition:background .25s}
.bbs-quote:hover{background:linear-gradient(170deg,rgba(18,80,126,.6),rgba(3,20,36,.86))}
.bbs-quote__mark{font-family:var(--display);font-weight:900;font-size:44px;line-height:.6;color:rgba(41,195,255,.45)}
.bbs-quote blockquote{margin:0;font-size:16px;line-height:1.7;color:#CFE6F5;flex:1;text-wrap:pretty}
.bbs-quote figcaption{border-top:1px solid rgba(127,217,255,.14);padding-top:14px}
.bbs-hairgrid--quotes{grid-template-columns:1fr}
.bbs-hairgrid--quotes > :last-child:nth-child(odd){grid-column:1/-1}
@media (min-width:900px){.bbs-hairgrid--quotes{grid-template-columns:repeat(2,minmax(0,1fr))}}

.bbs-note{font-family:var(--mono);font-size:11.5px;line-height:1.8;color:var(--meta);letter-spacing:.04em;border:1px dashed rgba(127,217,255,.24);border-radius:3px;padding:clamp(16px,2vw,22px);background:rgba(4,20,36,.5)}
.bbs-note strong{color:var(--cyan-3)}

/* --- forms --------------------------------------------------------------- */
.bbs-formcard{background:var(--panel-solid);border:1px solid var(--line-2);border-radius:4px;padding:clamp(24px,3vw,40px);scroll-margin-top:96px;box-shadow:0 24px 70px rgba(0,0,0,.5);width:100%;max-width:100%;min-width:0}
.bbs-formcard__title{font-family:var(--display);font-weight:900;font-size:clamp(22px,2.2vw,32px);letter-spacing:-.035em;text-transform:uppercase;margin-bottom:6px;color:var(--ice)}
.bbs-formcard__sub{font-family:var(--mono);font-size:11px;letter-spacing:.14em;color:var(--meta);text-transform:uppercase;margin-bottom:26px}
.bbs-formcard__contact{margin:-8px 0 26px;min-width:0}
.bbs-formcard__contact a{overflow-wrap:break-word}
.bbs-form{display:flex;flex-direction:column;gap:14px}
.bbs-form .form-field,.bbs-form label{display:flex;flex-direction:column;gap:6px}
.bbs-form label > span,.bbs-form .form-label{font-family:var(--mono);font-size:10px;letter-spacing:.12em;color:var(--meta);text-transform:uppercase}
.bbs-form input:not([type="radio"]):not([type="checkbox"]):not([type="hidden"]):not([type="submit"]):not([type="button"]),.bbs-form select,.bbs-form textarea,.mm-form input:not([type="radio"]):not([type="checkbox"]):not([type="hidden"]):not([type="submit"]):not([type="button"]),.mm-form select,.mm-form textarea,.mauticform-input,.mauticform-selectbox,.mauticform-textarea{background:rgba(2,14,26,.8);border:1px solid rgba(127,217,255,.2);border-radius:3px;color:var(--ice);font-size:16px;line-height:1.4;padding:13px 14px;outline:none;width:100%;min-height:var(--tap);-webkit-appearance:none;appearance:none}
.bbs-form input:not([type="radio"]):not([type="checkbox"]):focus,.bbs-form select:focus,.bbs-form textarea:focus,.bbs-form input:not([type="radio"]):not([type="checkbox"]):focus-visible,.bbs-form select:focus-visible,.bbs-form textarea:focus-visible{border-color:rgba(41,195,255,.6)}
html.BBS .mm-form .mauticform-radiogrp,html.BBS .bbs-formcard .mauticform-radiogrp{display:block}
html.BBS .mm-form .mauticform-radiogrp > .mauticform-label,html.BBS .bbs-formcard .mauticform-radiogrp > .mauticform-label{display:block;width:100%;margin-bottom:8px}
html.BBS .mm-form .mauticform-radiogrp-row,html.BBS .bbs-formcard .mauticform-radiogrp-row{display:inline-flex;align-items:center;gap:10px;margin:0 32px 0 0;min-height:var(--tap)}
html.BBS .mm-form .mauticform-radiogrp-row:last-of-type,html.BBS .bbs-formcard .mauticform-radiogrp-row:last-of-type{margin-right:0}
html.BBS .mm-form .mauticform-checkboxgrp-row,html.BBS .bbs-formcard .mauticform-checkboxgrp-row{display:flex;align-items:flex-start;gap:12px;margin:0;min-height:var(--tap)}
html.BBS .mm-form .mauticform-row .mauticform-radiogrp-label,html.BBS .mm-form .mauticform-row .mauticform-checkboxgrp-label,html.BBS .bbs-formcard .mauticform-radiogrp-label,html.BBS .bbs-formcard .mauticform-checkboxgrp-label{display:inline;margin:0;font-size:15px;line-height:1.45;font-weight:400;color:var(--ice);cursor:pointer}
html.BBS .mm-form input[type="radio"],html.BBS .mm-form input[type="checkbox"],html.BBS .bbs-formcard input[type="radio"],html.BBS .bbs-formcard input[type="checkbox"],html.BBS .mauticform-radiogrp-radio,html.BBS .mauticform-checkboxgrp-checkbox{-webkit-appearance:auto;appearance:auto;width:22px;height:22px;min-width:22px;min-height:22px;margin:11px 0 0;padding:0;flex:0 0 22px;background:none;border:0;border-radius:0;accent-color:var(--cyan);cursor:pointer}
html.BBS .mm-form input[type="radio"],html.BBS .bbs-formcard input[type="radio"],html.BBS .mauticform-radiogrp-radio{margin-top:0;border-radius:50%}
html.BBS .mm-form .mauticform-checkboxgrp-label a,html.BBS .bbs-formcard .mauticform-checkboxgrp-label a{color:var(--cyan-3);text-decoration:underline}
.bbs-form textarea{resize:vertical}
.bbs-form__pair{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:14px}
.bbs-form button[type="submit"]{margin-top:6px;padding:19px}
/* Mautic submit CTA inside .bbs-formcard (contact + partnership). components.css hides the wrapper for legacy custom-button pages; re-enable it here. */
html.BBS .bbs-formcard .mm-form .mauticform-button-wrapper{display:block !important;width:100%;margin:8px 0 0}
html.BBS .bbs-formcard .mm-form .mauticform-button-wrapper .mauticform-button,html.BBS .bbs-formcard .mm-form .mauticform-button-wrapper button[type="submit"]{display:block;width:100%;text-align:center;font-family:var(--display);font-weight:900;font-size:15px;letter-spacing:.09em;text-transform:uppercase;padding:20px 40px;min-height:var(--tap);border:0;border-radius:3px;cursor:pointer;touch-action:manipulation;-webkit-appearance:none;appearance:none;background-image:linear-gradient(180deg,#7FE0FF 0%,#29C3FF 46%,#0A83C8 100%);color:#00131F;box-shadow:0 0 28px rgba(41,195,255,.3);transition:transform .18s,box-shadow .18s}
html.BBS .bbs-formcard .mm-form .mauticform-button-wrapper .mauticform-button:focus-visible,html.BBS .bbs-formcard .mm-form .mauticform-button-wrapper .mauticform-button:active{color:#00131F;box-shadow:0 0 36px rgba(41,195,255,.62)}
@media (hover:hover){html.BBS .bbs-formcard .mm-form .mauticform-button-wrapper .mauticform-button:hover{transform:translateY(-2px);color:#00131F;box-shadow:0 0 36px rgba(41,195,255,.62)}}
html.BBS .bbs-formcard .mm-form .mauticform-button-wrapper .mauticform-button[disabled]{opacity:.6;cursor:wait;transform:none}
.bbs-form-messages{background:rgba(41,195,255,.12);border:1px solid rgba(41,195,255,.55);border-radius:3px;padding:12px 14px;font-size:13.5px;color:#BFE9FF;line-height:1.5}
.bbs-contactcard{background:var(--panel);border:1px solid rgba(127,217,255,.18);border-radius:4px;padding:clamp(20px,2.2vw,28px);display:flex;flex-direction:column;gap:8px;transition:transform .22s,border-color .22s,box-shadow .22s}
.bbs-contactcard:focus-within,.bbs-contactcard:active{border-color:rgba(41,195,255,.6)}
.bbs-contactcard__tag{font-family:var(--mono);font-size:10px;letter-spacing:.2em;color:var(--cyan-2);text-transform:uppercase}
.bbs-contactcard__title{font-family:var(--display);font-weight:800;font-size:20px;letter-spacing:-.025em;color:var(--ice)}
.bbs-contactcard p{font-size:14.5px;line-height:1.6;color:var(--dim);margin:0;text-wrap:pretty}
.bbs-contactcard__detail{font-family:var(--mono);font-size:12px;letter-spacing:.06em;color:var(--cyan-3);margin-top:4px;display:inline-flex;align-items:center;min-height:var(--tap)}

/* --- footer + mobile bar + modals ---------------------------------------- */
.bbs-footer{position:relative;z-index:1;background:rgba(1,6,14,.86);border-top:1px solid var(--line);margin-top:auto}
.bbs-footer__cols{max-width:var(--shell);margin:0 auto;padding:clamp(44px,5vw,76px) var(--gutter) clamp(28px,3vw,40px);display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:clamp(28px,3vw,48px)}
.bbs-footer__col{display:flex;flex-direction:column;gap:9px}
.bbs-footer__col a{color:var(--muted);font-size:14.5px}
.bbs-footer__col a:hover{color:var(--cyan-3)}
.bbs-footer__h{font-family:var(--mono);font-size:10px;letter-spacing:.16em;color:var(--faint);text-transform:uppercase;margin-bottom:4px}
.bbs-footer__mark{font-family:var(--display);font-weight:900;font-size:34px;letter-spacing:-.04em;line-height:1;margin-bottom:12px;background-image:linear-gradient(180deg,#FFF,#CFEAFB 40%,#2AA7E0 100%);-webkit-background-clip:text;background-clip:text;color:transparent}
.bbs-footer__mark-img{display:block;width:auto;height:auto;max-width:min(220px,100%);max-height:168px;object-fit:contain}
.bbs-footer__legal{border-top:1px solid rgba(127,217,255,.12)}
.bbs-footer__legal div{max-width:var(--shell);margin:0 auto;padding:18px var(--gutter);display:flex;flex-wrap:wrap;gap:8px 24px;justify-content:space-between;font-family:var(--mono);font-size:10.5px;letter-spacing:.08em;color:#3E6076;text-transform:uppercase}

.bbs-mobilebar{display:none;position:fixed;left:0;right:0;bottom:0;z-index:70;background:rgba(1,8,16,.96);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-top:1px solid var(--line-2);padding:10px 14px calc(10px + env(safe-area-inset-bottom));gap:10px;align-items:center;transition:transform .3s cubic-bezier(.2,.7,.3,1);transform:translateY(120%)}
.bbs-mobilebar__copy{flex:1;min-width:0}
.bbs-mobilebar.is-visible{transform:none}
.bbs-mobilebar__city{font-family:var(--display);font-weight:800;font-size:13px;color:var(--ice);line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.bbs-mobilebar__venue{font-family:var(--mono);font-size:10px;color:var(--meta);letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
@media (max-width:939px){
  body.has-mobilebar{padding-bottom:0}
  .bbs-mobilebar{display:flex}
  body.has-mobilebar .bbs-footer__legal div{padding-bottom:calc(96px + env(safe-area-inset-bottom))}
}

.bbs-modal{display:none;position:fixed;inset:0;z-index:90;background:rgba(1,6,14,.88);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);align-items:center;justify-content:center;padding:clamp(12px,3vw,40px);padding-top:calc(clamp(12px,3vw,40px) + env(safe-area-inset-top));padding-bottom:calc(clamp(12px,3vw,40px) + env(safe-area-inset-bottom));animation:bbsFade .18s ease}
.bbs-modal.is-open{display:flex}
.bbs-modal__panel{background:linear-gradient(170deg,rgba(11,50,82,.98),rgba(2,12,22,.99));border:1px solid rgba(127,217,255,.26);border-radius:4px;max-width:860px;width:100%;max-height:88vh;max-height:88dvh;overflow-y:auto;-webkit-overflow-scrolling:touch;display:grid;grid-template-columns:1fr;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));animation:bbsPop .22s ease;box-shadow:0 40px 100px rgba(0,0,0,.7)}
.bbs-modal__img{position:relative;min-height:300px;background:linear-gradient(160deg,rgba(14,62,98,.7),rgba(2,12,22,.95))}
.bbs-modal__body{padding:clamp(24px,3vw,40px);display:flex;flex-direction:column;gap:16px}
.bbs-modal__close{cursor:pointer;background:none;border:1px solid rgba(127,217,255,.28);border-radius:3px;width:var(--tap);height:var(--tap);flex:0 0 var(--tap);font-size:16px;color:var(--dim);-webkit-appearance:none;appearance:none}
.bbs-modal__close:hover,.bbs-modal__close:focus-visible,.bbs-modal__close:active{background:rgba(41,195,255,.18);color:#fff}
.bbs-modal__states{display:flex;flex-wrap:wrap;gap:6px}
.bbs-modal__states span{font-family:var(--display);font-weight:800;font-size:11px;letter-spacing:.1em;padding:6px 12px;border-radius:2px;background:rgba(41,195,255,.16);border:1px solid rgba(41,195,255,.4);color:#BFE9FF}
.bbs-modal__bio{font-size:15px;line-height:1.75;color:var(--muted);margin:0;border-top:1px solid var(--line);padding-top:16px;text-wrap:pretty}
.bbs-modal__session{border-left:2px solid var(--cyan);padding-left:12px}
.bbs-partner-modal__panel{display:flex;flex-direction:column;max-width:640px;grid-template-columns:1fr}
.bbs-partner-modal__logo{background:#fff;border:1px solid var(--line);border-radius:3px;min-height:140px;display:flex;align-items:center;justify-content:center;padding:16px 18px}
.bbs-partner-modal__logo img{max-width:100%;max-height:140px;width:auto;height:auto;object-fit:contain}
.bbs-modal__head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}

/* --- motion -------------------------------------------------------------- */
@keyframes bbsRise{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}
@keyframes bbsFade{from{opacity:0}to{opacity:1}}
@keyframes bbsPop{from{opacity:0;transform:scale(.97) translateY(12px)}to{opacity:1;transform:none}}
@keyframes bbsDriftA{from{transform:translate3d(0,0,0)}to{transform:translate3d(-600px,-320px,0)}}
@keyframes bbsDriftB{from{transform:translate3d(0,0,0)}to{transform:translate3d(420px,-520px,0)}}
@keyframes bbsTwinkle{0%,100%{opacity:.3}50%{opacity:.95}}
@keyframes bbsShimmer{0%{background-position:0% 50%}100%{background-position:200% 50%}}
@keyframes bbsAurora{0%,100%{opacity:.4;transform:translate3d(-4%,0,0) scale(1)}50%{opacity:.85;transform:translate3d(4%,-3%,0) scale(1.14)}}
@keyframes bbsMarquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@keyframes bbsPulse{0%,100%{box-shadow:0 0 0 0 rgba(41,195,255,.42)}70%{box-shadow:0 0 0 18px rgba(41,195,255,0)}}
@keyframes bbsSweep{0%{transform:translateX(-120%) skewX(-18deg)}55%,100%{transform:translateX(260%) skewX(-18deg)}}
@keyframes bbsPartnerScroll{from{transform:translate3d(0,0,0)}to{transform:translate3d(-50%,0,0)}}
@keyframes bbsSliceGlow{0%,100%{opacity:.55;transform:translate3d(0,0,0) scale(1)}50%{opacity:1;transform:translate3d(calc(24% * var(--slice-dir)),5%,0) scale(1.2)}}
@keyframes bbsSliceSweep{0%{opacity:0;transform:translate3d(-110%,0,0)}12%,88%{opacity:1}100%{opacity:0;transform:translate3d(290%,0,0)}}

/* --- slice glow: every home page section ---------------------------------
   ::before  drifting cyan bloom (alternates side per slice)
   ::after   light sweep travelling along the slice's top edge
   JS adds html.bbs-io and .is-lit; off-screen slices pause so nothing animates unseen. */
.bbs-slice{position:relative;isolation:isolate;overflow:hidden;overflow:clip;--slice-dir:1}
.bbs-slice.bbs-shell{max-width:none;padding-left:max(var(--gutter),calc((100% - var(--shell)) / 2 + var(--gutter)));padding-right:max(var(--gutter),calc((100% - var(--shell)) / 2 + var(--gutter)))}
.bbs-slice:nth-of-type(even){--slice-dir:-1}
.bbs-slice::before,.bbs-slice::after{content:"";position:absolute;z-index:-1;pointer-events:none}
.bbs-slice::before{top:-35%;bottom:-35%;left:-15%;width:65%;background:radial-gradient(closest-side,rgba(41,195,255,.26),rgba(41,195,255,.09) 55%,rgba(41,195,255,0) 100%);animation:bbsSliceGlow 10s ease-in-out infinite;will-change:transform,opacity}
.bbs-slice:nth-of-type(even)::before{left:auto;right:-15%;animation-delay:-5s}
.bbs-slice::after{top:0;left:0;width:38%;height:120px;background:linear-gradient(90deg,rgba(190,235,255,0),rgba(190,235,255,.95),rgba(190,235,255,0)) 0 0/100% 1px no-repeat,radial-gradient(60% 100% at 50% 0,rgba(127,217,255,.28),rgba(41,195,255,.09) 50%,rgba(41,195,255,0) 80%);animation:bbsSliceSweep 7s ease-in-out infinite;will-change:transform,opacity}
.bbs-slice:nth-of-type(3n)::after{animation-delay:-2.3s}
.bbs-slice:nth-of-type(3n+1)::after{animation-delay:-4.6s}
html.bbs-io .bbs-slice:not(.is-lit)::before,html.bbs-io .bbs-slice:not(.is-lit)::after{animation-play-state:paused}

/* Helpers that replace export inline styles */
.bbs-pagehero{border-bottom:1px solid var(--line);background:linear-gradient(180deg,rgba(8,44,74,.6),rgba(1,8,16,.1))}
.bbs-pagehero__inner{padding-top:clamp(44px,5.5vw,84px);padding-bottom:clamp(44px,5.5vw,84px)}
.bbs-pagehero__title{margin-bottom:22px}
.bbs-pagehero__lead{max-width:62ch;margin:0}
.bbs-stack{display:flex;flex-direction:column;gap:12px}
.bbs-stack--tight{display:flex;flex-direction:column;gap:9px}
.bbs-stack--10{display:flex;flex-direction:column;gap:10px;flex:1}
.bbs-stack--copy{display:flex;flex-direction:column;gap:11px}
.bbs-cta-row{display:flex;flex-wrap:wrap;gap:14px}
.bbs-split-head{display:flex;flex-wrap:wrap;align-items:end;justify-content:space-between;gap:20px;margin-bottom:clamp(28px,3vw,46px)}
.bbs-mb-14{margin-bottom:14px}
.bbs-mb-18{margin-bottom:18px}
.bbs-mb-22{margin-bottom:22px}
.bbs-mb-24{margin-bottom:24px}
.bbs-mb-26{margin-bottom:26px}
.bbs-mb-28{margin-bottom:28px}
.bbs-mb-30{margin-bottom:30px}
.bbs-mb-34{margin-bottom:34px}
.bbs-mb-38{margin-bottom:38px}
.bbs-mb-42{margin-bottom:42px}
.bbs-mb-block{margin-bottom:clamp(40px,5vw,72px)}
.bbs-narrow{max-width:46ch}
.bbs-h2--tour{font-size:clamp(32px,4.8vw,68px);line-height:.92}
.bbs-h2--take{font-size:clamp(30px,4.4vw,64px);margin-bottom:24px}
.bbs-h2--friction{font-size:clamp(28px,4.4vw,62px);max-width:22ch;margin-bottom:clamp(28px,3vw,44px)}
.bbs-h2--speakers{max-width:18ch}
.bbs-h2--quotes{max-width:20ch}
.bbs-h2--partners{font-size:clamp(24px,3vw,42px);line-height:1.05}
.bbs-h2--close{max-width:16ch;margin-bottom:26px}
.bbs-programhead{display:flex;flex-wrap:wrap;align-items:center;gap:12px 16px;margin-bottom:30px}
@media (max-width:1099px){
  .bbs-programhead .bbs-chips{flex:1 0 100%;width:100%;min-width:100%}
  .bbs-programhead__when{flex:1 0 100%}
}
.bbs-featured__tags{display:flex;flex-wrap:wrap;align-items:center;gap:10px}
.bbs-friction-pull{display:block;font-family:var(--display);font-weight:900;font-size:clamp(26px,3vw,44px);line-height:1.05;letter-spacing:-.04em;text-transform:uppercase;margin:0 0 30px}
.bbs-toggle-all{background:none;border:0;cursor:pointer;letter-spacing:.14em;min-height:var(--tap);padding:8px 0;color:var(--meta-2);font:inherit;text-transform:uppercase;-webkit-appearance:none;appearance:none;touch-action:manipulation}
.bbs-toggle-all:focus-visible,.bbs-toggle-all:active{color:var(--ice)}
.bbs-agenda-tools{display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;align-items:center;margin-bottom:clamp(20px,2.4vw,30px)}
.bbs-agenda-foot{margin-top:clamp(36px,4vw,56px)}
.bbs-venues{display:flex;flex-direction:column;gap:clamp(24px,3vw,40px)}
.bbs-partner-tier{margin-bottom:42px}
.bbs-partner-tier__name{letter-spacing:.2em;margin-bottom:18px;border-bottom:1px solid rgba(127,217,255,.14);padding-bottom:10px}
.bbs-bg--local{position:absolute;inset:0;z-index:0;overflow:hidden}
.bbs-close-band{position:relative;overflow:hidden;overflow:clip;border-top:1px solid var(--line)}
.bbs-close-inner{position:relative;z-index:1;padding-top:clamp(60px,7.5vw,120px);padding-bottom:clamp(60px,7.5vw,120px)}
.bbs-close-lead{max-width:62ch;margin:0 0 38px}
.bbs-close-card{background:linear-gradient(165deg,rgba(14,62,98,.6),rgba(2,12,22,.9));border:1px solid rgba(127,217,255,.24);border-radius:4px;padding:clamp(24px,3vw,44px);display:grid;grid-template-columns:1fr;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:26px;align-items:center}
.bbs-close-value{font-family:var(--display);font-weight:800;font-size:clamp(20px,2vw,28px);letter-spacing:-.025em;color:var(--ice)}
.bbs-label--gap{margin-bottom:8px}
.bbs-section-pad{padding-top:clamp(36px,4vw,64px);padding-bottom:clamp(56px,7vw,100px)}
.bbs-section-bottom{padding-bottom:clamp(56px,7vw,110px)}
.bbs-prop-title{font-size:clamp(40px,5.6vw,84px);line-height:.88;margin-bottom:26px}
.bbs-prop-line{display:block;background-image:linear-gradient(180deg,#FFF 0%,#E6F4FF 26%,#A9DCF7 50%,#3BAEE4 74%,#0C6FA9 100%);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 6px 30px rgba(41,150,220,.4))}
.bbs-inline-iconrow{display:flex;align-items:center;gap:10px}
.bbs-pull-rule{border-left:2px solid rgba(41,195,255,.5);padding-left:20px;display:flex;flex-direction:column;gap:8px}
.bbs-statement--ice{color:var(--ice)}
.bbs-statement--cyan{color:var(--cyan-3);margin:0}
.bbs-body-gap{margin:0 0 16px}
.bbs-emph-gap{margin:0 0 34px}
.bbs-honeypot{display:none}
.bbs-speaker-btn{background:none;border:0}
.bbs-footer__blurb{letter-spacing:.14em;color:var(--cyan-2);line-height:1.8}
.bbs-footer__email{color:#3E6076;margin-top:4px}
.bbs-modal-open{overflow:hidden;position:fixed;width:100%;touch-action:none}

@media (hover:hover) and (pointer:fine){
  .bbs-btn--primary:hover{transform:translateY(-2px);color:#00131F;box-shadow:0 0 36px rgba(41,195,255,.62)}
  .bbs-datecard:hover{transform:translateY(-4px);border-color:rgba(41,195,255,.65);box-shadow:0 18px 50px rgba(0,0,0,.55),0 0 40px rgba(41,195,255,.12)}
  .bbs-friction:hover{border-color:rgba(41,195,255,.5);background:rgba(10,52,84,.55);transform:translateX(4px)}
  .bbs-session:hover{border-color:rgba(41,195,255,.5);transform:translateX(3px)}
  .bbs-speaker:hover{transform:translateY(-4px);border-color:rgba(41,195,255,.6);box-shadow:0 18px 46px rgba(0,0,0,.5)}
  .bbs-ticket:hover{transform:translateY(-4px)}
  .bbs-contactcard:hover{transform:translateY(-3px);border-color:rgba(41,195,255,.6);box-shadow:0 16px 44px rgba(0,0,0,.5)}
  .bbs-logo-tile:hover{border-color:rgba(41,195,255,.7);background:#fff;box-shadow:0 0 0 2px rgba(41,195,255,.22)}
}

@supports not (background-clip:text){
  .bbs-chrome,.bbs-chrome--deep,.bbs-chrome--page,.bbs-shimmer,.bbs-prop-line,.bbs-logo__mark,.bbs-hero__title,.bbs-datecard__code,.bbs-footer__mark{color:var(--ice);background:none;filter:none}
}

@media (max-width:639px){
  html.BBS{--gutter:16px;--header-h:64px}
  .bbs-logo__img{height:calc(var(--header-h) - 16px);max-height:48px}
  .bbs-footer__mark-img{max-width:160px;max-height:128px}
  .bbs-h1{font-size:clamp(32px,11vw,48px);line-height:.95}
  .bbs-prop-title{font-size:clamp(32px,10vw,48px);margin-bottom:18px}
  .bbs-h2{font-size:clamp(26px,8vw,40px)}
  .bbs-partners-enquiry .bbs-h2{letter-spacing:0;line-height:1.12;overflow-wrap:break-word}
  .bbs-partners-enquiry .bbs-body{overflow-wrap:break-word}
  .bbs-formcard{padding:20px 16px}
  .bbs-formcard__title{letter-spacing:0;line-height:1.15}
  html.BBS .bbs-formcard .mm-form input:not([type="radio"]):not([type="checkbox"]):not([type="hidden"]):not([type="submit"]):not([type="button"]),html.BBS .bbs-formcard .mm-form select,html.BBS .bbs-formcard .mm-form textarea{max-width:100%;min-width:0}
  .bbs-section,.bbs-section-pad{padding-top:clamp(40px,10vw,56px);padding-bottom:clamp(40px,10vw,56px)}
  .bbs-section-bottom{padding-bottom:clamp(40px,10vw,56px)}
  .bbs-hero__sub{padding-left:0}
  .bbs-hero__cta{margin-top:8px;padding-bottom:24px}
  .bbs-cta-row{width:100%}
  .bbs-cta-row .bbs-btn{flex:1 1 100%;text-align:center}
  .bbs-slot{grid-template-columns:1fr}
  .bbs-slot__time{text-align:left;padding-top:0;padding-bottom:4px}
  .bbs-slot__track{border-left:0;padding-left:0}
  .bbs-slot__dot{display:none}
  .bbs-tier__head h2{white-space:normal}
  .bbs-speakergrid,.bbs-speakergrid--home{grid-template-columns:1fr 1fr}
  .bbs-session__inner{grid-template-columns:1fr}
  .bbs-agendabar{top:calc(var(--header-h) + env(safe-area-inset-top))}
  .bbs-close-card{grid-template-columns:1fr}
  .bbs-programhead{width:100%}
  .bbs-agenda-tools .bbs-chips{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;max-width:100%}
  .bbs-h2--friction,.bbs-h2--speakers,.bbs-h2--quotes,.bbs-h2--close{max-width:none}
}

