/* late.css -- generated by build.py from the old inline <style> blocks, order preserved */

/* ===== thanks-css ===== */
#thx{position:fixed;inset:0;z-index:400;display:none;align-items:center;justify-content:center;padding:24px;background:rgba(8,8,7,.86);backdrop-filter:blur(7px);-webkit-backdrop-filter:blur(7px)}#thx.on{display:flex}#thxCanvas{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}#thxCard{position:relative;z-index:2;text-align:center;max-width:min(92vw,520px);background:#121110;border:1px solid #2A2724;border-radius:18px;padding:clamp(30px,6vw,48px);box-shadow:0 30px 90px rgba(0,0,0,.6);animation:thxIn .6s cubic-bezier(.16,1.02,.3,1) both}@keyframes thxIn{from{opacity:0;transform:translateY(26px) scale(.94)}to{opacity:1;transform:none}}#thxMark{width:70px;height:70px;margin:0 auto 20px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--yellow);animation:thxPop .7s cubic-bezier(.16,1.4,.3,1) .12s both}@keyframes thxPop{from{transform:scale(0)}to{transform:scale(1)}}#thxMark svg{width:34px;height:34px;stroke:#0C0B0A;stroke-width:3.4;fill:none;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:32;stroke-dashoffset:32;animation:thxTick .5s cubic-bezier(.65,0,.35,1) .5s forwards}@keyframes thxTick{to{stroke-dashoffset:0}}#thxKick{font-size:11.5px;font-weight:800;letter-spacing:.2em;text-transform:uppercase;color:var(--yellow);margin-bottom:12px}#thxTitle{font-size:clamp(24px,4.6vw,36px);font-weight:900;letter-spacing:-.035em;line-height:1.05;color:#fff;margin-bottom:12px}#thxBody{color:#BDBEBB;font-size:15px;line-height:1.65;max-width:38ch;margin:0 auto 24px}#thxBtn{font:inherit;font-size:14px;font-weight:700;cursor:pointer;border:none;border-radius:6px;padding:13px 26px;background:var(--yellow);color:#0C0B0A;transition:transform .15s ease}#thxBtn:hover{transform:translateY(-2px)}#thxTimer{display:block;height:2px;margin-top:22px;border-radius:2px;background:#2A2724;overflow:hidden}#thxTimer i{display:block;height:100%;width:100%;background:var(--yellow);transform-origin:left center;animation:thxRun 6s linear forwards}@keyframes thxRun{to{transform:scaleX(0)}}@media(prefers-reduced-motion:reduce){#thxCard,#thxMark,#thxMark svg,#thxTimer i{animation:none !important}#thxMark svg{stroke-dashoffset:0}#thxCanvas{display:none}}


/* ===== fixes-2026-09 ===== */
@media(max-width:1023.98px){#mainSidebar .help-box{display:none !important}}
.resource-card{min-width:0}.resource-card *{min-width:0;overflow-wrap:anywhere}
@media(max-width:640px){.resource-card{padding:16px;gap:10px;font-size:14px}}


/* ===== base ===== */
#page-team .tm-s2{color:#fff !important;-webkit-text-fill-color:#fff}#page-team .tm-s3{color:#aaa}#page-team .tm-s1{width:72px;height:72px}#page-team .tm-s6{margin-top:36px}#page-team .resource-card{border-color:#2C2925}


/* ===== base ===== */
.tm-s1 img{width:100%;height:100%;object-fit:cover;border-radius:50%;display:block}

/* ===== link-reset: cards that used to be <div onclick> are real links now, same look ===== */
a.venue-card { color: inherit; text-decoration: none; }
.page-banner .banner-title { color: #fff; text-shadow: 0 2px 18px rgba(0,0,0,.65); margin: 0; line-height: normal; }

/* ===== phone fixes (2026-10) ===== */
@media (max-width: 899.98px) {
  /* glass/blur effects are repainted on every scroll frame and make phones stutter; the backgrounds are
     already almost solid, so they look the same without the blur */
  header, header.stuck, .set7-arrow, .sx-arrow, #page-home section.hero .hero-arrow, #cartBack, #thx {
    -webkit-backdrop-filter: none !important; backdrop-filter: none !important; }
  header { background-color: rgba(0,0,0,.94); }
  #boothbuilder #aura { animation: none !important; filter: blur(48px) !important; }
  #rs .tag { -webkit-backdrop-filter: none !important; backdrop-filter: none !important; background: rgba(10,8,7,.86) !important; }
  #rs .grain { display: none !important; }
  /* text that was too small to read on a phone */
  .set7-step-label { font-size: 11px !important; }
  .foot-col-title { font-size: 12px !important; }
  #boothbuilder .cue, #pricecheck .cue, #pricecheck .tl { font-size: 11px !important; }
  #page-catalog .btn.btn-outline, .catalog-card .btn { font-size: 13px; }
  /* nothing may stick out past the right edge of the screen */
  .page-banner { overflow: hidden; }
  /* the WhatsApp button sat on top of the builder / price check buttons */
  body[data-path="/custom-exhibits"] .whatsapp-fab, body[data-path="/price-check"] .whatsapp-fab { display: none !important; }
}
/* ===== booth builder on phones: the picture sits on top, the questions flow underneath and the
   box grows to fit, so every answer and the Next/Back buttons are always reachable ===== */
@media (max-width: 899.98px) {
  #boothbuilder { height: auto !important; min-height: 0 !important; display: flex; flex-direction: column; }
  #boothbuilder #stage { position: relative !important; inset: auto !important; height: min(62vw, 330px); flex: none; }
  #boothbuilder #tilt { height: 100% !important; }
  #boothbuilder #deck { position: relative !important; inset: auto !important; left: auto !important; right: auto !important;
    top: auto !important; bottom: auto !important; max-height: none !important; transform: none !important;
    padding: 6px 18px 22px !important; pointer-events: auto; }
  #boothbuilder #deck::before, #boothbuilder #deck::after { display: none; }
  #boothbuilder .q.on { height: auto; gap: 14px; }
  #boothbuilder .opts { max-width: 100%; }
  #boothbuilder .otherbox input { width: 100%; max-width: 100%; }
  #boothbuilder .otherbox { display: flex; gap: 8px; align-items: center; max-width: 100%; }
  #boothbuilder .otherbox .arrow { flex: none; }
  #boothbuilder #spec { display: none !important; }      /* the running summary covered the answers */
  #boothbuilder.gated { min-height: 560px !important; }  /* room for the intro */
  #boothbuilder.gated #deck { display: none; }
  #boothbuilder #close { position: relative !important; inset: auto !important; }
  #boothbuilder .cue { font-size: 11px; }
  #boothbuilder .opt { -webkit-backdrop-filter: none; backdrop-filter: none; background: rgba(255,255,255,.78); }
}
