#fw-section-custom-html-eebd0a19-68c0-4261-8cf9-8e75ff26b556 {

.custom-html .container.wrapper:has(.k2t-releases-wrap) {
  padding: 0;
  max-width: 900px;
  margin: 0 auto;
}

.k2t-releases-wrap {
  background: #121212;
  color: #f3eaff;
  font-family: 'Barlow', sans-serif;
  padding: 40px 24px;
  border-radius: 14px;
}

.k2t-releases-wrap h1,
.k2t-releases-wrap h2,
.k2t-releases-wrap h3 {
  font-family: 'Barlow Condensed', sans-serif;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: #f3eaff;
}

.k2t-releases-wrap h1 { font-size: 2rem; margin: 0; }
.k2t-releases-wrap h2 { font-size: 1.3rem; margin: 0; }
.k2t-releases-wrap h3.k2t-rt-month { font-size: 1rem; color: #E2954E; margin: 20px 0 8px; letter-spacing: 0.08em; }

/* ===== LOGIN ===== */
.k2t-rt-login {
  max-width: 380px;
  margin: 60px auto;
  text-align: center;
}
.k2t-rt-sub { color: #cbb8e0; margin-bottom: 20px; }
#k2t-rt-login-form { display: flex; flex-direction: column; gap: 12px; }

/* ===== HEADER ===== */
.k2t-rt-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  gap: 12px;
}
.k2t-rt-header-actions { display: flex; gap: 10px; }

/* ===== SECTION HEADER + FILTER TOGGLE ===== */
.k2t-rt-section-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  gap: 12px;
  margin: 32px 0 16px;
  border-bottom: 1px solid #2D0252;
  padding-bottom: 12px;
}

.k2t-rt-filter {
  display: flex;
  gap: 6px;
  background: #1a1a1a;
  border: 1px solid #2D0252;
  border-radius: 14px;
  padding: 4px;
}
.k2t-rt-filter-btn {
  font-family: 'Barlow Condensed', sans-serif;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  font-size: 0.8rem;
  background: transparent;
  border: none;
  color: #cbb8e0;
  padding: 7px 14px;
  border-radius: 10px;
  cursor: pointer;
  transition: box-shadow 0.2s ease, background 0.2s ease, color 0.2s ease;
}
.k2t-rt-filter-btn:hover { box-shadow: 0 0 12px rgba(45,2,82,0.5); }
.k2t-rt-filter-btn.active {
  background: #E2954E;
  color: #121212;
}

/* ===== BUTTONS ===== */
.k2t-rt-btn-primary,
.k2t-rt-btn-ghost,
.k2t-rt-btn-danger {
  font-family: 'Barlow Condensed', sans-serif;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  border-radius: 14px;
  padding: 10px 20px;
  border: 1px solid transparent;
  cursor: pointer;
  font-size: 0.95rem;
  transition: box-shadow 0.2s ease, background 0.2s ease;
}
.k2t-rt-btn-primary {
  background: #E2954E;
  color: #121212;
}
.k2t-rt-btn-primary:hover { box-shadow: 0 0 16px rgba(45,2,82,0.6); }

.k2t-rt-btn-ghost {
  background: transparent;
  border-color: #2D0252;
  color: #f3eaff;
}
.k2t-rt-btn-ghost:hover { box-shadow: 0 0 16px rgba(45,2,82,0.6); }

.k2t-rt-btn-danger {
  background: transparent;
  border-color: #7a1f1f;
  color: #e08a8a;
}
.k2t-rt-btn-danger:hover { box-shadow: 0 0 16px rgba(122,31,31,0.5); }

/* ===== FORM ===== */
.k2t-rt-form-panel {
  background: #1a1a1a;
  border: 1px solid #2D0252;
  border-radius: 14px;
  padding: 24px;
  margin-top: 20px;
}
#k2t-rt-form { display: flex; flex-direction: column; gap: 10px; }
#k2t-rt-form label {
  font-family: 'Barlow Condensed', sans-serif;
  text-transform: uppercase;
  font-size: 0.85rem;
  color: #cbb8e0;
  margin-top: 6px;
}
#k2t-rt-form input,
#k2t-rt-form select,
#k2t-rt-form textarea {
  background: #121212;
  border: 1px solid #2D0252;
  color: #f3eaff;
  border-radius: 14px;
  padding: 10px 14px;
  font-family: 'Barlow', sans-serif;
  font-size: 0.95rem;
}
#k2t-rt-form textarea { min-height: 70px; resize: vertical; }
.k2t-rt-form-actions { display: flex; gap: 10px; margin-top: 12px; flex-wrap: wrap; }
.k2t-rt-error { color: #e08a8a; font-size: 0.85rem; min-height: 1.2em; }

/* ===== TRACK NAME ROWS ===== */
.k2t-rt-tracks-list { display: flex; flex-direction: column; gap: 8px; }
.k2t-rt-track-row { display: flex; gap: 8px; align-items: center; }
.k2t-rt-track-row .k2t-rt-track-input { flex: 1; }
.k2t-rt-track-remove {
  background: transparent;
  border: 1px solid #7a1f1f;
  color: #e08a8a;
  border-radius: 14px;
  width: 34px;
  height: 34px;
  min-width: 34px;
  cursor: pointer;
  font-size: 1.1rem;
  line-height: 1;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.k2t-rt-track-remove:hover { box-shadow: 0 0 12px rgba(122,31,31,0.5); }
.k2t-rt-add-track-btn { align-self: flex-start; padding: 6px 16px; font-size: 0.85rem; }

/* ===== TIMELINE ===== */
.k2t-rt-timeline { display: flex; flex-direction: column; gap: 10px; }
.k2t-rt-empty { color: #8a7a9c; font-style: italic; }

.k2t-rt-card {
  display: flex;
  align-items: flex-start;
  gap: 20px;
  background: #1a1a1a;
  border: 1px solid #2D0252;
  border-radius: 14px;
  padding: 16px 20px;
  transition: box-shadow 0.2s ease;
}
.k2t-rt-card:hover { box-shadow: 0 0 18px rgba(45,2,82,0.55); }

/* EDIT: large day-number date block — month/year comes from the section header above */
.k2t-rt-card-date {
  font-family: 'Kameron', serif;
  font-size: 2.4rem;
  line-height: 1;
  font-weight: 600;
  color: #E2954E;
  min-width: 56px;
  text-align: center;
  padding-top: 2px;
}

.k2t-rt-card-body { flex: 1; }
.k2t-rt-card-body h4 { margin: 4px 0 2px; font-size: 1.1rem; font-family: 'Kameron', serif; color: #f3eaff; }
.k2t-rt-artist { margin: 0; color: #cbb8e0; font-size: 0.9rem; }

.k2t-rt-tag-row { display: flex; gap: 6px; flex-wrap: wrap; }
.k2t-rt-tag {
  display: inline-block;
  font-family: 'Barlow Condensed', sans-serif;
  text-transform: uppercase;
  font-size: 0.7rem;
  letter-spacing: 0.05em;
  padding: 3px 10px;
  border-radius: 14px;
}
/* EDIT: tag colours — K2T vs Detached Audio */
.k2t-rt-tag-k2t { background: #E2954E; color: #121212; }
.k2t-rt-tag-detached { background: #2D0252; color: #f3eaff; }
/* EDIT: release-type badge colour */
.k2t-rt-tag-type { background: transparent; border: 1px solid #cbb8e0; color: #cbb8e0; }

.k2t-rt-tracklist {
  margin: 8px 0 4px;
  padding-left: 20px;
  color: #cbb8e0;
  font-size: 0.88rem;
}
.k2t-rt-tracklist li { margin-bottom: 2px; }

.k2t-rt-link {
  display: inline-block;
  margin-top: 6px;
  font-size: 0.85rem;
  color: #E2954E;
  text-decoration: none;
}
.k2t-rt-link:hover { text-decoration: underline; }

.k2t-rt-card-actions .k2t-rt-edit-btn {
  background: transparent;
  border: 1px solid #2D0252;
  color: #f3eaff;
  border-radius: 14px;
  padding: 6px 14px;
  font-family: 'Barlow Condensed', sans-serif;
  text-transform: uppercase;
  font-size: 0.8rem;
  cursor: pointer;
}
.k2t-rt-card-actions .k2t-rt-edit-btn:hover { box-shadow: 0 0 12px rgba(45,2,82,0.6); }

@media (max-width: 600px) {
  .k2t-rt-section-header { flex-direction: column; align-items: flex-start; }
  .k2t-rt-card { flex-direction: column; align-items: flex-start; }
  .k2t-rt-card-actions { align-self: flex-end; }
}
}

#fw-section-custom-html-739243c1-f32d-47ff-bf5b-e7f87c8f6e46 {

/* ============================================================
   K2T NEWS MANAGER — ADMIN STYLES
   Private panel. K2T design system: #121212 base, #1a1a1a
   surfaces, orange #E2954E, purple #2D0552 glow, Barlow heads.
   Status badges: Live (green), Scheduled (purple), Hidden (red).
   ============================================================ */

#k2t-news-admin {
  --bg:      #121212;
  --card:    #1a1a1a;
  --orange:  #E2954E;
  --purple:  #2D0552;
  --text:    #f3eaff;
  --muted:   #9a93a6;
  --radius:  14px;
  --ok:      #4ccf7a;
  --err:     #ff6b6b;

  background: var(--bg);
  color: var(--text);
  font-family: "Barlow", sans-serif;
  max-width: 880px;
  margin: 0 auto;
  padding: 2.5rem 1rem 4rem;
}

#k2t-news-admin * { box-sizing: border-box; }

/* ---------- Headings ---------- */
.k2t-admin-title {
  font-family: "Barlow Condensed", sans-serif;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  font-weight: 700;
  font-size: 2rem;
  margin: 0;
  color: #fff;
}
.k2t-admin-sub { color: var(--muted); margin: 0.2rem 0 0; }

.k2t-section-h {
  font-family: "Barlow Condensed", sans-serif;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  font-weight: 700;
  font-size: 1.3rem;
  color: var(--orange);
  margin: 2rem 0 1rem;
}

/* ---------- Login ---------- */
.k2t-login-box {
  display: flex;
  flex-direction: column;
  gap: 0.8rem;
  max-width: 360px;
  margin: 1.5rem auto 0;
  background: var(--card);
  padding: 1.6rem;
  border-radius: var(--radius);
  border: 1px solid rgba(226, 149, 78, 0.25);
}

/* ---------- Header row ---------- */
.k2t-admin-header {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 1rem;
  border-bottom: 1px solid rgba(255,255,255,0.08);
  padding-bottom: 1.2rem;
}

/* ---------- Add bar ---------- */
.k2t-addbar {
  display: flex;
  align-items: center;
  gap: 1rem;
  margin: 1.5rem 0;
}
.k2t-addbar-hint { color: var(--muted); font-size: 0.95rem; }

/* ---------- Form panel ---------- */
.k2t-card-panel {
  background: var(--card);
  border: 1px solid rgba(226, 149, 78, 0.25);
  border-radius: var(--radius);
  padding: 1.6rem;
  box-shadow: 0 0 20px rgba(45, 5, 82, 0.4);
}
.k2t-form-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1rem 1.2rem;
}
.k2t-label {
  display: flex;
  flex-direction: column;
  gap: 0.35rem;
  font-family: "Barlow Condensed", sans-serif;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  font-size: 0.85rem;
  font-weight: 600;
  color: var(--text);
}
.k2t-label--full { grid-column: 1 / -1; }
.k2t-hint {
  display: block;
  text-transform: none;
  letter-spacing: 0;
  font-family: "Barlow", sans-serif;
  font-weight: 400;
  font-size: 0.8rem;
  color: var(--muted);
}

/* ---------- Fields ---------- */
.k2t-field {
  background: #0e0e0e;
  border: 1px solid rgba(255,255,255,0.12);
  border-radius: 10px;
  padding: 0.6rem 0.75rem;
  color: #fff;
  font-family: "Barlow", sans-serif;
  font-size: 0.95rem;
  width: 100%;
}
.k2t-field:focus {
  outline: none;
  border-color: var(--orange);
  box-shadow: 0 0 0 2px rgba(226,149,78,0.2);
}
.k2t-textarea { resize: vertical; }

/* ---------- Category checkbox group ---------- */
.k2t-cats { border: 1px solid rgba(255,255,255,0.12); border-radius: 10px; padding: 0.9rem 1rem; }
.k2t-cats legend {
  padding: 0 0.4rem;
  font-family: "Barlow Condensed", sans-serif;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  font-size: 0.85rem;
  font-weight: 600;
}
.k2t-cat-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 0.6rem 1.2rem;
  margin: 0.5rem 0;
}
.k2t-cat-opt {
  display: inline-flex;
  align-items: center;
  gap: 0.45rem;
  text-transform: none;
  letter-spacing: 0;
  font-family: "Barlow", sans-serif;
  font-weight: 500;
  font-size: 0.95rem;
  cursor: pointer;
}
.k2t-cat-opt input { width: 16px; height: 16px; accent-color: var(--orange); }

.k2t-checkrow {
  flex-direction: row;
  align-items: center;
  gap: 0.5rem;
}
.k2t-checkrow input { width: 16px; height: 16px; accent-color: var(--orange); }

/* ---------- Form actions ---------- */
.k2t-form-actions {
  display: flex;
  align-items: center;
  gap: 0.8rem;
  margin-top: 1.3rem;
}

/* ---------- Buttons ---------- */
.k2t-btn-primary {
  font-family: "Barlow Condensed", sans-serif;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  font-weight: 700;
  font-size: 0.9rem;
  color: #000;
  background: var(--orange);
  border: none;
  border-radius: 999px;
  padding: 0.6rem 1.4rem;
  cursor: pointer;
  transition: box-shadow 0.2s ease, background 0.2s ease;
}
.k2t-btn-primary:hover { box-shadow: 0 0 18px rgba(45,5,82,0.8); }

.k2t-btn-ghost {
  font-family: "Barlow Condensed", sans-serif;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  font-weight: 600;
  font-size: 0.9rem;
  color: var(--text);
  background: transparent;
  border: 1px solid rgba(255,255,255,0.2);
  border-radius: 999px;
  padding: 0.55rem 1.2rem;
  cursor: pointer;
  transition: border-color 0.2s ease;
}
.k2t-btn-ghost:hover { border-color: var(--orange); }

.k2t-btn-mini {
  font-family: "Barlow", sans-serif;
  font-size: 0.82rem;
  font-weight: 600;
  color: var(--text);
  background: transparent;
  border: 1px solid rgba(255,255,255,0.18);
  border-radius: 8px;
  padding: 0.35rem 0.7rem;
  cursor: pointer;
  transition: border-color 0.2s ease, color 0.2s ease;
}
.k2t-btn-mini:hover { border-color: var(--orange); }
.k2t-btn-mini.is-danger { color: var(--err); border-color: rgba(255,107,107,0.4); }
.k2t-btn-mini.is-danger:hover { border-color: var(--err); }

/* ---------- Story list ---------- */
.k2t-list { display: flex; flex-direction: column; gap: 0.7rem; }
.k2t-row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 1rem;
  background: var(--card);
  border: 1px solid rgba(255,255,255,0.08);
  border-left: 3px solid rgba(255,255,255,0.08);
  border-radius: 12px;
  padding: 0.9rem 1.1rem;
}
.k2t-row.is-scheduled-row { border-left-color: var(--purple); }
.k2t-row-top { display: flex; align-items: center; gap: 0.6rem; }
.k2t-row-title {
  font-family: "Barlow Condensed", sans-serif;
  text-transform: uppercase;
  letter-spacing: 0.03em;
  font-weight: 700;
  font-size: 1.05rem;
  color: #fff;
}
.k2t-row-meta { color: var(--muted); font-size: 0.85rem; margin-top: 0.25rem; }
.k2t-row-actions { display: flex; gap: 0.4rem; flex-shrink: 0; }

/* ---------- Status badges ---------- */
.k2t-badge {
  font-family: "Barlow Condensed", sans-serif;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  font-size: 0.7rem;
  font-weight: 700;
  padding: 0.15rem 0.55rem;
  border-radius: 999px;
}
.k2t-badge.is-live      { background: var(--ok);     color: #00210f; }
.k2t-badge.is-scheduled { background: var(--purple); color: #fff;    }
.k2t-badge.is-hidden    { background: var(--err);    color: #2a0000; }

/* ---------- Messages ---------- */
.k2t-msg { font-size: 0.9rem; color: var(--muted); }
.k2t-msg.is-ok  { color: var(--ok); }
.k2t-msg.is-err { color: var(--err); }

/* ---------- Responsive ---------- */
@media (max-width: 620px) {
  .k2t-form-grid { grid-template-columns: 1fr; }
  .k2t-row { flex-direction: column; align-items: flex-start; }
  .k2t-row-actions { width: 100%; }
}
}



#fw-section-custom-html-120ab54d-1aa7-4905-ba7f-5548ed4da706 {

/* ============================================================
   K2T — EMAIL CAPTURE / MAILING LIST FORM (CSS)
   Matches the established K2T aesthetic:
     dark #1a1a1a card on #121212 · orange #E2954E accent
     purple #2D0552 glow on hover · 14px rounded corners
     uppercase letter-spaced headings · hover-glow (no movement)

   Pair with k2t-email-capture.html.

   Brand: orange #E2954E / purple #2D0552 / dark #1a1a1a
   ============================================================ */

/* ---------- Fonts (Barlow Condensed for display, Barlow for body) ----------
   CHANGE: if these fonts are already loaded site-wide on Fourthwall,
   you can delete this @import to avoid loading them twice. */
@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@500;600;700;800&family=Barlow:wght@300;400;500&display=swap');

/* ---------- Brand variables ----------
   CHANGE: adjust any brand colour in one place here. */
.k2t-signup {
  --k2t-bg:            #121212;  /* page-matching backdrop      */
  --k2t-surface:       #1a1a1a;  /* card surface                */
  --k2t-surface-2:     #222222;  /* input fields                */
  --k2t-accent:        #E2954E;  /* orange — primary accent     */
  --k2t-accent-dim:    rgba(226, 149, 78, 0.15);
  --k2t-glow:          rgba(45, 5, 82, 0.55);   /* purple glow   */
  --k2t-border:        rgba(255, 255, 255, 0.08);
  --k2t-border-bright: rgba(226, 149, 78, 0.35);
  --k2t-text:          #f0f0f0;
  --k2t-text-dim:      #8a8a8a;

  background: var(--k2t-bg);
  padding: 64px 20px;
  font-family: 'Barlow', sans-serif;
  box-sizing: border-box;
}
.k2t-signup *,
.k2t-signup *::before,
.k2t-signup *::after { box-sizing: border-box; }

/* ---------- The card ----------
   Dark panel, faint orange border, 14px corners, purple glow.
   CHANGE (max-width): widen/narrow the whole card here. */
.k2t-signup__inner {
  max-width: 560px;
  margin: 0 auto;
  background: var(--k2t-surface);
  border: 1px solid var(--k2t-border);
  border-radius: 14px;
  padding: 44px 40px;
  position: relative;
  overflow: hidden;
  transition: border-color 0.4s ease, box-shadow 0.4s ease;
}

/* Orange gradient accent strip along the top edge of the card */
.k2t-signup__inner::before {
  content: '';
  position: absolute;
  top: 0; left: 0; right: 0;
  height: 2px;
  background: linear-gradient(
    to right,
    transparent,
    var(--k2t-accent),
    transparent
  );
  opacity: 0.7;
}

/* Hover: brighten border + purple glow, NO movement */
.k2t-signup__inner:hover {
  border-color: var(--k2t-border-bright);
  box-shadow: 0 0 40px var(--k2t-glow);
}

/* ---------- Eyebrow label ---------- */
.k2t-signup__eyebrow {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 18px;
}
.k2t-signup__eyebrow-line {
  width: 28px;
  height: 1px;
  background: var(--k2t-accent);
}
.k2t-signup__eyebrow-text {
  font-family: 'Barlow Condensed', sans-serif;
  text-transform: uppercase;
  letter-spacing: 0.22em;
  font-size: 13px;
  font-weight: 600;
  color: var(--k2t-accent);
}

/* ---------- Heading ---------- */
.k2t-signup__heading {
  font-family: 'Barlow Condensed', sans-serif;
  text-transform: uppercase;
  letter-spacing: 0.03em;
  font-size: clamp(30px, 6vw, 44px);
  font-weight: 800;
  line-height: 1;
  color: var(--k2t-text);
  margin: 0 0 16px;
}
.k2t-signup__heading em {
  color: var(--k2t-accent);
  font-style: normal;
}

/* ---------- Sub-copy ---------- */
.k2t-signup__sub {
  font-size: 16px;
  line-height: 1.55;
  font-weight: 300;
  color: var(--k2t-text-dim);
  margin: 0 0 30px;
  max-width: 46ch;
}

/* ---------- Field + button row ----------
   Email field grows to fill, button sits beside it.
   Stacks vertically on mobile (see media query). */
.k2t-signup__row {
  display: flex;
  align-items: flex-end;
  gap: 12px;
}

.k2t-signup__field {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 7px;
  min-width: 0;
}

.k2t-signup__label {
  font-family: 'Barlow Condensed', sans-serif;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  font-size: 12px;
  font-weight: 600;
  color: var(--k2t-text-dim);
}

/* ---------- Input field ---------- */
.k2t-signup__input {
  width: 100%;
  background: var(--k2t-surface-2);
  border: 1px solid var(--k2t-border);
  border-radius: 10px;
  padding: 13px 15px;
  font-family: 'Barlow', sans-serif;
  font-size: 15px;
  color: var(--k2t-text);
  transition: border-color 0.25s ease, box-shadow 0.25s ease, background 0.25s ease;
}
.k2t-signup__input::placeholder { color: #5f5f5f; }
.k2t-signup__input:hover {
  border-color: rgba(255, 255, 255, 0.18);
}
.k2t-signup__input:focus {
  outline: none;
  border-color: var(--k2t-accent);
  background: #262626;
  box-shadow: 0 0 0 3px var(--k2t-accent-dim);
}

/* ---------- Submit button ----------
   Solid orange, dark text. Subtle hover glow. */
.k2t-signup__button {
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 13px 24px;
  background: var(--k2t-accent);
  color: #1a1208;
  border: none;
  border-radius: 10px;
  font-family: 'Barlow Condensed', sans-serif;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  font-size: 16px;
  font-weight: 700;
  cursor: pointer;
  transition: box-shadow 0.3s ease, background 0.25s ease;
}
.k2t-signup__button:hover {
  background: #eaa05e;
  box-shadow: 0 0 28px rgba(226, 149, 78, 0.45);
}
.k2t-signup__button:active { background: #d28844; }
.k2t-signup__button:focus-visible {
  outline: 2px solid #fff;
  outline-offset: 3px;
}
.k2t-signup__button-arrow {
  width: 13px;
  height: 13px;
  transition: transform 0.3s ease;
}
.k2t-signup__button:hover .k2t-signup__button-arrow {
  transform: translate(2px, -2px);
}

/* ---------- Notice (success / error message) ---------- */
.k2t-signup__notice {
  font-size: 14px;
  font-weight: 400;
  margin: 14px 0 0;
  opacity: 0;
  max-height: 0;
  overflow: hidden;
  transition: opacity 0.3s ease, max-height 0.3s ease;
}
.k2t-signup__notice.is-visible {
  opacity: 1;
  max-height: 60px;
}
.k2t-signup__notice.is-success { color: var(--k2t-accent); }
.k2t-signup__notice.is-error   { color: #e0664f; }

/* ---------- Fine print ---------- */
.k2t-signup__finefooter {
  font-size: 12px;
  line-height: 1.5;
  color: #6a6a6a;
  margin: 18px 0 0;
}

/* ---------- Responsive: stack field + button on small screens ---------- */
@media (max-width: 520px) {
  .k2t-signup { padding: 44px 16px; }
  .k2t-signup__inner { padding: 34px 24px; }
  .k2t-signup__row { flex-direction: column; align-items: stretch; }
  .k2t-signup__button { width: 100%; padding: 15px 24px; }
}

/* ---------- Reduced motion ---------- */
@media (prefers-reduced-motion: reduce) {
  .k2t-signup__inner,
  .k2t-signup__input,
  .k2t-signup__button,
  .k2t-signup__button-arrow,
  .k2t-signup__notice {
    transition: none;
  }
}
}
#fw-section-custom-html-c24d29a1-f6f9-47f8-a5e9-c7554af5ae2c {

/* ============================================================
   K2T NEWS — GRID FEED STYLES (multi-category)
   K2T design system: #121212 base, #1a1a1a cards, orange
   #E2954E accents, purple #2D0552 glow, Barlow Condensed heads.
   Signature: category-keyed left accent bar (primary category)
   + per-category coloured tag pills + "NEW" pulse marker.
   ============================================================ */

.k2t-news {
  --bg:        #121212;
  --card:      #1a1a1a;
  --orange:    #E2954E;
  --purple:    #2D0552;
  --text:      #f3eaff;
  --muted:     #9a93a6;
  --radius:    14px;

  /* category accent colours (left bar + tag pill) */
  --cat-release: #E2954E;   /* orange  */
  --cat-event:   #56b3ff;   /* blue    */
  --cat-label:   #b07fd6;   /* lilac   */
  --cat-stream:  #ff6b6b;   /* red     */
  --cat-general: #8a93a6;   /* neutral grey-blue */
  --cat-default: #777;

  background: var(--bg);
  color: var(--text);
  font-family: "Barlow", sans-serif;
  padding: 3rem 1rem 4rem;
  max-width: 1280px;
  margin: 0 auto;
}

/* ---------- Heading ---------- */
.k2t-news__head { text-align: center; margin-bottom: 2.5rem; }

.k2t-news__title {
  font-family: "Barlow Condensed", sans-serif;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  font-size: clamp(2.2rem, 5vw, 3.4rem);
  font-weight: 700;
  margin: 0 0 0.4rem;
  color: #fff;
}
.k2t-news__sub {
  color: var(--muted);
  font-size: 1.05rem;
  margin: 0 0 1.6rem;
}

/* ---------- Filter chips ---------- */
.k2t-news__filters {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 0.5rem;
}
.k2t-chip {
  font-family: "Barlow Condensed", sans-serif;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  font-size: 0.85rem;
  font-weight: 600;
  color: var(--text);
  background: var(--card);
  border: 1px solid rgba(226, 149, 78, 0.35);
  border-radius: 999px;
  padding: 0.45rem 1.1rem;
  cursor: pointer;
  transition: border-color 0.2s ease, box-shadow 0.2s ease, color 0.2s ease;
}
.k2t-chip:hover {
  border-color: var(--orange);
  box-shadow: 0 0 14px rgba(45, 5, 82, 0.6);
}
.k2t-chip.is-active {
  border-color: var(--orange);
  color: #fff;
  box-shadow: 0 0 16px rgba(45, 5, 82, 0.8);
}

/* ---------- Grid ---------- */
.k2t-news__grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.4rem;
}
.k2t-news__state {
  grid-column: 1 / -1;
  text-align: center;
  color: var(--muted);
  padding: 2rem 0;
}

/* ---------- Card ---------- */
.k2t-card {
  position: relative;
  display: flex;
  flex-direction: column;
  background: var(--card);
  border-radius: var(--radius);
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, 0.06);
  border-left: 3px solid var(--cat-default);   /* accent bar = primary category */
  transition: box-shadow 0.25s ease;
}
.k2t-card:hover {
  box-shadow: 0 0 22px rgba(45, 5, 82, 0.85);   /* purple glow, no movement */
}

/* Featured (newest) story spans the full row and goes horizontal */
.k2t-card.is-featured {
  grid-column: 1 / -1;
  flex-direction: row;
}
.k2t-card.is-featured .k2t-card__media {
  flex: 0 0 48%;
  max-width: 48%;
}
.k2t-card.is-featured .k2t-card__media img { height: 100%; }
.k2t-card.is-featured .k2t-card__title { font-size: 1.9rem; }

/* ---------- Card media ---------- */
.k2t-card__media { width: 100%; background: #000; }
.k2t-card__media img {
  width: 100%;
  height: 200px;
  object-fit: cover;
  display: block;
}

/* ---------- Card body ---------- */
.k2t-card__inner {
  display: flex;
  flex-direction: column;
  gap: 0.7rem;
  padding: 1.2rem 1.3rem 1.4rem;
  flex: 1;
}
.k2t-card__meta {
  display: flex;
  align-items: center;
  gap: 0.45rem;
  flex-wrap: wrap;
}
.k2t-card__tag {
  font-family: "Barlow Condensed", sans-serif;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  font-size: 0.72rem;
  font-weight: 700;
  padding: 0.2rem 0.6rem;
  border-radius: 999px;
  color: #000;
  background: var(--cat-default);
}
.k2t-card__date {
  font-size: 0.78rem;
  letter-spacing: 0.06em;
  color: var(--muted);
  margin-left: 0.2rem;
}

/* "NEW" pulse marker — SIGNATURE element */
.k2t-card__new {
  font-family: "Barlow Condensed", sans-serif;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  font-size: 0.7rem;
  font-weight: 700;
  color: #fff;
  background: var(--purple);
  padding: 0.18rem 0.55rem;
  border-radius: 999px;
  position: relative;
  margin-left: 0.3rem;
}
.k2t-card__new::before {
  content: "";
  position: absolute;
  left: -0.55rem;
  top: 50%;
  transform: translateY(-50%);
  width: 7px; height: 7px;
  border-radius: 50%;
  background: var(--orange);
  animation: k2tNewPulse 1.5s ease-in-out infinite;
}
@keyframes k2tNewPulse {
  0%, 100% { box-shadow: 0 0 0 0 rgba(226, 149, 78, 0.7); }
  50%      { box-shadow: 0 0 0 5px rgba(226, 149, 78, 0); }
}

.k2t-card__title {
  font-family: "Barlow Condensed", sans-serif;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  font-weight: 700;
  line-height: 1.1;
  font-size: 1.25rem;
  margin: 0;
  color: #fff;
}
.k2t-card__excerpt,
.k2t-card__body {
  color: var(--muted);
  font-size: 0.95rem;
  line-height: 1.55;
  margin: 0;
}
.k2t-card__body { color: #cfc7da; }

/* ---------- External link button ---------- */
.k2t-card__btn {
  align-self: flex-start;
  margin-top: auto;
  font-family: "Barlow Condensed", sans-serif;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  font-size: 0.82rem;
  font-weight: 600;
  color: var(--orange);
  border: 1px solid var(--orange);
  border-radius: 999px;
  padding: 0.5rem 1.1rem;
  text-decoration: none;
  transition: background 0.2s ease, color 0.2s ease, box-shadow 0.2s ease;
}
.k2t-card__btn:hover {
  background: var(--purple);
  color: #fff;
  box-shadow: 0 0 16px rgba(45, 5, 82, 0.8);
}

/* ============================================================
   CATEGORY KEYS
   - Accent bar: keyed to the card's PRIMARY (first) category.
   - Tag pills: each pill carries its own category class.
   ============================================================ */

/* Accent bar (on the card) */
.k2t-card.cat-release { border-left-color: var(--cat-release); }
.k2t-card.cat-event   { border-left-color: var(--cat-event); }
.k2t-card.cat-label   { border-left-color: var(--cat-label); }
.k2t-card.cat-stream  { border-left-color: var(--cat-stream); }
.k2t-card.cat-general { border-left-color: var(--cat-general); }

/* Tag pill colours (on each pill) */
.k2t-card__tag.cat-release { background: var(--cat-release); color:#000; }
.k2t-card__tag.cat-event   { background: var(--cat-event);   color:#000; }
.k2t-card__tag.cat-label   { background: var(--cat-label);   color:#000; }
.k2t-card__tag.cat-stream  { background: var(--cat-stream);  color:#fff; }
.k2t-card__tag.cat-general { background: var(--cat-general); color:#000; }

/* ============================================================
   RESPONSIVE
   ============================================================ */
@media (max-width: 900px) {
  .k2t-news__grid { grid-template-columns: repeat(2, 1fr); }
  .k2t-card.is-featured { flex-direction: column; }
  .k2t-card.is-featured .k2t-card__media {
    flex: none; max-width: 100%;
  }
  .k2t-card.is-featured .k2t-card__media img { height: 240px; }
}
@media (max-width: 560px) {
  .k2t-news__grid { grid-template-columns: 1fr; }
  .k2t-card.is-featured .k2t-card__title { font-size: 1.5rem; }
}

/* ---------- Reduced motion ---------- */
@media (prefers-reduced-motion: reduce) {
  .k2t-card__new::before { animation: none; }
}
}
#fw-section-custom-html-6af95a29-b38d-4ed4-aeef-a633fc40bd63 {

/* ============================================================
   DETACHED AUDIO — press-kit-style page styles.
   Paste into the CSS field of the same Fourthwall section.
   K2T palette: orange #E2954E + purple #2D0552 on #121212 / #1a1a1a,
   Barlow Condensed headings, hover GLOW (not movement).
   ------------------------------------------------------------
   QUICK-EDIT VARIABLES — change the look in one place:
   ============================================================ */
.da-wrap {
  --da-bg:         #121212;             /* CHANGE: page background        */
  --da-card:       #1a1a1a;             /* CHANGE: card / block background */
  --da-text:       #f0f0f0;             /* CHANGE: main text colour        */
  --da-muted:      #9a9aa3;             /* CHANGE: secondary / muted text  */
  --da-orange:     #E2954E;             /* CHANGE: K2T orange accent       */
  --da-purple:     #2D0552;             /* CHANGE: K2T purple (glow base)  */
  --da-glow:       rgba(45, 5, 82, 0.55);  /* purple glow on hover        */
  --da-border:     rgba(255,255,255,0.08); /* default card border         */
  --da-radius:     14px;                /* CHANGE: corner roundness        */
  --da-maxw:       860px;               /* CHANGE: max content width       */

  background: var(--da-bg);
  color: var(--da-text);
  max-width: var(--da-maxw);
  margin: 0 auto;
  padding: 56px 20px 64px;
  font-family: 'Barlow', sans-serif;   /* body font (matches site)        */
  line-height: 1.65;
  box-sizing: border-box;
}
.da-wrap *,
.da-wrap *::before,
.da-wrap *::after { box-sizing: border-box; }

/* Pull in the site's fonts (safe to keep even if already loaded) */
@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@400;600;700;800&family=Barlow:wght@300;400;500&display=swap');

/* ---------- HEADER ---------- */
.da-header { text-align: center; margin-bottom: 36px; }
.da-logo { max-width: 200px; height: auto; margin: 0 auto 22px; display: block; }
.da-name {
  font-family: 'Barlow Condensed', sans-serif;
  font-size: clamp(2.4rem, 7vw, 4.2rem);
  font-weight: 800;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  margin: 0 0 10px;
  line-height: 1.05;
}
.da-tagline {
  color: var(--da-muted);
  font-size: clamp(1rem, 2.2vw, 1.15rem);
  max-width: 620px;
  margin: 0 auto 22px;
}

/* ---------- SOCIAL ICONS ---------- */
.da-socials { display: flex; justify-content: center; gap: 18px; margin-bottom: 16px; }
.da-socials a {
  display: inline-flex;
  width: 26px; height: 26px;
  transition: transform 0.2s ease, filter 0.2s ease;
}
.da-socials img { width: 100%; height: 100%; display: block; }
.da-socials a:hover {
  transform: translateY(-2px);
  /* recolour the greyscale icon toward K2T orange on hover */
  filter: brightness(0) saturate(100%) invert(63%) sepia(42%) saturate(640%) hue-rotate(341deg) brightness(95%) contrast(90%);
}

/* ---------- STREAMS LINE ---------- */
.da-streams {
  font-family: 'Barlow Condensed', sans-serif;
  text-transform: uppercase;
  letter-spacing: 0.16em;
  font-size: 0.85rem;
  color: var(--da-muted);
  margin: 0;
}

/* ---------- BLOCKS ---------- */
.da-block {
  background: var(--da-card);
  border: 1px solid var(--da-border);
  border-radius: var(--da-radius);
  padding: 32px 30px;
  margin: 0 auto 24px;
}
.da-h2 {
  font-family: 'Barlow Condensed', sans-serif;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  font-size: clamp(1.5rem, 3.4vw, 2rem);
  font-weight: 800;
  margin: 0 0 18px;
  position: relative;
  padding-bottom: 12px;
}
.da-h2::after {
  content: "";
  position: absolute;
  left: 0; bottom: 0;
  width: 52px; height: 3px;
  background: var(--da-orange);
  border-radius: 2px;
}
.da-bio { color: var(--da-text); margin: 0 0 14px; }
.da-bio:last-child { margin-bottom: 0; }
.da-bio em { color: var(--da-orange); font-style: italic; }

/* ---------- SPOTIFY EMBED ---------- */
.da-spotify-frame {
  border: 1px solid var(--da-border);
  border-radius: var(--da-radius);
  padding: 8px;
  background: #000;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}
.da-spotify-frame:hover {
  border-color: var(--da-orange);
  box-shadow: 0 0 22px var(--da-glow);
}
.da-spotify-frame iframe {
  display: block;
  width: 100%;
  border: 0;
  border-radius: 10px;
}

/* ---------- DEMO EMBED ----------
   The .da-demo-frame creates a K2T-styled surround so the Label Engine
   form (which can't be restyled from outside) reads as part of the site. */
.da-demo-frame {
  border: 1px solid var(--da-border);
  border-radius: var(--da-radius);
  padding: 10px;                 /* CHANGE: thickness of the frame inset */
  background: #000;
  margin-top: 4px;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}
.da-demo-frame:hover {
  border-color: var(--da-orange);
  box-shadow: 0 0 26px var(--da-glow);
}
.da-demo-embed {
  width: 100%;
  border-radius: 10px;
  overflow: hidden;
  background: var(--da-card);     /* set to match your Label Engine form bg */
}
.da-demo-embed iframe {
  width: 100%;
  height: 800px;        /* CHANGE: demo embed height (Label Engine suggests 800) */
  border: 0;
  display: block;
}

/* ---------- LINKS / FOOTER ---------- */
.da-seemore {
  display: inline-block;
  margin-top: 20px;
  font-family: 'Barlow Condensed', sans-serif;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: var(--da-orange);
  font-weight: 700;
  font-size: 1rem;
  text-decoration: none;
  transition: text-shadow 0.2s ease;
}
.da-seemore:hover { text-shadow: 0 0 14px var(--da-glow); }
.da-footer {
  text-align: center;
  color: var(--da-muted);
  font-size: 0.85rem;
  letter-spacing: 0.04em;
  margin-top: 36px;
}
.da-footer a { color: var(--da-orange); text-decoration: none; }
.da-footer a:hover { text-decoration: underline; }

/* ---------- RESPONSIVE ---------- */
@media (max-width: 600px) {
  .da-wrap { padding: 40px 16px 52px; }
  .da-block { padding: 26px 20px; }
  .da-socials { gap: 22px; }
  .da-demo-frame { padding: 6px; }
  .da-demo-embed iframe { height: 820px; }  /* CHANGE: mobile embed height */
}
}
#fw-section-announcement-bar-bd0b06be-cf51-4444-8aba-bce3a3bd6192 {

/* ============================================================
   K2T — "NEW MERCH AVAILABLE" SCROLLING CAROUSEL (CSS)
   Pinned to Fourthwall's real text-carousel classes.
   Palette: k2t-orange #E2954E + k2t-purple #2D0552 on #121212.
   Resting: orange text. Hover: pale lilac text + purple glow.
   Drop into Fourthwall custom CSS — no HTML needed.
   ============================================================ */

/* ---------- THE BAR CONTAINER ----------
   Dark panel with faint orange top/bottom borders to echo the
   card styling used across the site.
   CHANGE: swap the background colour, or the border rgba for a
   stronger/weaker orange edge. */
.text-carousel {
  background: linear-gradient(
    90deg,
    #121212 0%,
    #1a1a1a 50%,
    #121212 100%
  ) !important;
  border-top: 1px solid rgba(226, 149, 78, 0.18) !important;    /* k2t-orange, faint */
  border-bottom: 1px solid rgba(226, 149, 78, 0.18) !important;
  transition: background 0.3s ease, border-color 0.3s ease !important;
}

/* ---------- HOVER: SHIFT THE WHOLE BAR TO PURPLE ----------
   Background takes on a faint k2t-purple tint and the borders shift
   from orange to purple, so the whole strip signals it's clickable.
   CHANGE: adjust the purple tint strength or border alpha. */
.text-carousel:hover {
  background: linear-gradient(
    90deg,
    #1a1a1a 0%,
    #241038 50%,    /* faint k2t-purple lift */
    #1a1a1a 100%
  ) !important;
  border-top-color: rgba(45, 5, 82, 0.7) !important;     /* k2t-purple borders */
  border-bottom-color: rgba(45, 5, 82, 0.7) !important;
}

/* ---------- THE LINK WRAPPER ----------
   The whole bar links to /pages/merch. Kill the default underline. */
.text-carousel__link {
  text-decoration: none !important;
}

/* ---------- EACH "NEW MERCH" UNIT (text + image) ----------
   Force vertical centering so text and image sit dead level.
   CHANGE: adjust the gap (space between text & image) or the
   padding (space between repeated units). */
.text-carousel__line {
  display: inline-flex !important;
  align-items: center !important;            /* centres text + image vertically */
  gap: 16px !important;
  padding: 0 30px !important;
  line-height: 1 !important;                 /* removes extra text line-height that throws off centering */
}

/* ---------- THE SCROLLING TEXT (resting state) ----------
   Orange, uppercase, wide letter-spacing mono-style to match the
   site headings.
   CHANGE: font-size here — this is the main "make it bigger" dial. */
.text-carousel__text {
  font-family: 'Helvetica Neue', Arial, sans-serif !important;
  font-size: 1.1rem !important;              /* CHANGE: bigger/smaller text */
  font-weight: 700 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  line-height: 1 !important;
  color: #E2954E !important;                 /* k2t-orange text (resting) */

  /* Smooth colour + glow change on hover */
  transition: color 0.3s ease, text-shadow 0.3s ease !important;

  /* Very light glow pulse — gently breathes as it scrolls.
     CHANGE SPEED: raise 3.5s for a slower pulse, lower for faster.
     To remove the pulse entirely, delete this animation line. */
  animation: k2tGlowPulse 3.5s ease-in-out infinite !important;
}

/* ---------- HOVER: PALE LILAC TEXT + PURPLE GLOW ----------
   Text shifts to a pale lilac (ties back to the purple) and the glow
   becomes pure k2t-purple — a clear, underline-free state change.
   NOTE: this pauses the pulse on the bright state while hovered,
   then resumes breathing when you move away.
   CHANGE: the hover colour (#f3eaff) or the purple glow alphas. */
.text-carousel:hover .text-carousel__text {
  color: #f3eaff !important;                 /* pale lilac text on hover */
  text-shadow:
    0 0 12px rgba(45, 5, 82, 1),             /* k2t-purple core */
    0 0 24px rgba(45, 5, 82, 0.85),          /* k2t-purple spread */
    0 0 36px rgba(45, 5, 82, 0.5) !important; /* k2t-purple outer halo */
}

/* ---------- THE GLOW PULSE (resting) ----------
   Two very close glow states so the breathing is subtle, not flashy.
   CHANGE: nudge the rgba alpha values up for a more obvious pulse. */
@keyframes k2tGlowPulse {
  0%, 100% {
    text-shadow:
      0 0 8px rgba(45, 5, 82, 0.65),         /* k2t-purple, dimmer */
      0 0 16px rgba(45, 5, 82, 0.40),
      0 0 5px rgba(226, 149, 78, 0.25);      /* faint orange halo */
  }
  50% {
    text-shadow:
      0 0 12px rgba(45, 5, 82, 0.90),        /* k2t-purple, brighter */
      0 0 22px rgba(45, 5, 82, 0.60),
      0 0 8px rgba(226, 149, 78, 0.45);      /* orange halo lifts */
  }
}

/* ---------- THE LITTLE MERCH IMAGE ----------
   Sized to match the text, no border, forced to vertical-align
   middle to kill the slight low-sitting offset.
   CHANGE: height/width to resize, or border-radius for rounding. */
.text-carousel__image {
  height: 34px !important;                   /* CHANGE: image size — keep height = width */
  width: 34px !important;
  object-fit: cover !important;
  border-radius: 6px !important;
  border: none !important;                   /* border removed */
  display: block !important;
  vertical-align: middle !important;
  transition: transform 0.3s ease !important;
}

/* ---------- HOVER: GENTLE IMAGE LIFT ----------
   Tiny scale-up on the thumbnail so it reacts along with the text.
   CHANGE: 1.1 = 10% bigger; lower to 1.05 for subtler, or delete. */
.text-carousel:hover .text-carousel__image {
  transform: scale(1.1) !important;
}

/* ---------- THE IMAGE WRAPPER ----------
   The image sits inside a <span class="text-carousel__media">.
   Make that span a flex box too, so the image can't drift off-centre. */
.text-carousel__media {
  display: inline-flex !important;
  align-items: center !important;
}
}
#fw-section-custom-html-5435f554-fcb6-42b1-9d12-43ecff326459 {

.custom-html .container.wrapper:has(.k2t-wrap) {
  max-width: 100%;
  width: 100%;
  padding: 0;
  margin: 0 auto;
}

.k2t-wrap {
  width: 100%;
  box-sizing: border-box;
}

.k2t-section {
  width: 100%;
  max-width: 1600px;
  margin: 0 auto;
  padding: 0 1rem;
  font-family: 'Barlow', sans-serif;
  box-sizing: border-box;
}

.k2t-card {
  background: #1a0330;
  border: 0.5px solid rgba(255,255,255,0.1);
  border-radius: 16px;
  position: relative;
  overflow: hidden;
  transition: border-color 0.3s ease;
  box-sizing: border-box;
}

.k2t-card.is-live {
  border-color: rgba(226,149,78,0.53);
}

.k2t-card::before {
  content: '';
  position: absolute;
  top: 0; left: 0; right: 0;
  height: 3px;
  background: linear-gradient(90deg, #2D0552, #E2954E, #2D0552);
  opacity: 0.8;
  z-index: 2;
}

.k2t-media {
  display: none;
}

.k2t-card.is-live .k2t-media {
  display: block;
}

.k2t-layout {
  display: grid;
  grid-template-columns: 1fr 300px;
  height: 480px;
}

.k2t-player { background: #000; }

.k2t-player iframe {
  width: 100%;
  height: 100%;
  border: none;
  display: block;
}

.k2t-chat {
  background: #1a0330;
  border-left: 0.5px solid rgba(255,255,255,0.1);
}

.k2t-chat iframe {
  width: 100%;
  height: 100%;
  border: none;
  display: block;
}

@media (max-width: 640px) {
  .k2t-layout {
    grid-template-columns: 1fr;
    grid-template-rows: 260px 300px;
    height: auto;
  }
  .k2t-chat {
    border-left: none;
    border-top: 0.5px solid rgba(255,255,255,0.1);
  }
}

.k2t-info {
  padding: 3.5rem 3rem;
  text-align: center;
}

.k2t-card.is-live .k2t-info {
  padding: 2rem 2.5rem;
}

.k2t-badge {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-family: 'Rajdhani', sans-serif;
  font-weight: 700;
  font-size: 13px;
  letter-spacing: 2.5px;
  text-transform: uppercase;
  padding: 6px 16px;
  border-radius: 4px;
  margin-bottom: 1.5rem;
}

.k2t-badge.live {
  background: rgba(231,76,60,0.13);
  color: #E74C3C;
  border: 1px solid rgba(231,76,60,0.4);
}

.k2t-badge.offline {
  background: rgba(255,255,255,0.04);
  color: #a98ec4;
  border: 0.5px solid rgba(255,255,255,0.16);
}

.k2t-dot {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: currentColor;
  flex-shrink: 0;
}

.k2t-badge.live .k2t-dot {
  animation: k2tBlink 1.4s ease-in-out infinite;
}

@keyframes k2tBlink {
  0%, 100% { opacity: 1; transform: scale(1); }
  50%       { opacity: 0.3; transform: scale(0.65); }
}

.k2t-msg {
  font-size: 22px;
  font-weight: 500;
  color: #f0e8ff;
  margin-bottom: 0;
  line-height: 1.7;
}

.k2t-card:not(.is-live) .k2t-msg {
  margin-bottom: 2.5rem;
}

.k2t-hint {
  font-size: 16px;
  color: #a98ec4;
  margin-top: -1.5rem;
  margin-bottom: 2.5rem;
}

.k2t-checking {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 18px;
  padding: 1.5rem 0;
  color: #a98ec4;
  font-size: 16px;
  letter-spacing: 0.5px;
}

.k2t-spinner {
  width: 26px;
  height: 26px;
  border: 2px solid rgba(255,255,255,0.16);
  border-top-color: #E2954E;
  border-radius: 50%;
  animation: k2tSpin 0.75s linear infinite;
}

@keyframes k2tSpin { to { transform: rotate(360deg); } }

.k2t-picker {
  display: flex;
  gap: 16px;
  justify-content: center;
  flex-wrap: wrap;
  margin-top: 2rem;
}

.k2t-btn {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-family: 'Rajdhani', sans-serif;
  font-size: 17px;
  font-weight: 700;
  letter-spacing: 0.5px;
  text-transform: uppercase;
  padding: 13px 28px;
  border-radius: 8px;
  cursor: pointer;
  border: 0.5px solid rgba(255,255,255,0.16);
  background: #2a0550;
  color: #f0e8ff;
  text-decoration: none;
  transition: transform 0.12s ease, border-color 0.15s ease, background 0.15s ease;
  box-sizing: border-box;
}

.k2t-btn:hover {
  transform: translateY(-2px);
  border-color: rgba(226,149,78,0.53);
  background: #220440;
}

.k2t-btn svg {
  width: 20px;
  height: 20px;
  flex-shrink: 0;
}

.k2t-btn.active-yt {
  background: rgba(255,0,0,0.13);
  border-color: rgba(255,0,0,0.4);
  color: #ff6b6b;
}

.k2t-btn.active-tw {
  background: rgba(145,70,255,0.13);
  border-color: rgba(145,70,255,0.53);
  color: #9146FF;
}
}
#fw-section-custom-html-846780f4-e4db-4bb3-aeb0-0d9bb7d80c0c {

@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@300;400;600;700;900&family=Space+Mono:wght@400;700&display=swap');

.k2t-schedule-wrapper {
  --k2t-surface:     #160d22;
  --k2t-surface-2:   #1c1030;
  --k2t-border:      rgba(226, 149, 78, 0.18);
  --k2t-accent:      #E2954E;
  --k2t-text:        #f0ece8;
  --k2t-text-dim:    #9a8a7a;
  --k2t-text-dimmer: #5a4a3a;
  --k2t-glow:        0 0 32px rgba(226, 149, 78, 0.22);
  width: 100%;
  max-width: 660px;
  margin-left: auto !important;
  margin-right: auto !important;
}

.k2t-toggle-btn {
  display: flex !important;
  align-items: center !important;
  gap: 14px !important;
  background: var(--k2t-surface) !important;
  border: 1px solid var(--k2t-border) !important;
  border-left: 3px solid var(--k2t-accent) !important;
  color: var(--k2t-text) !important;
  font-family: 'Barlow Condensed', sans-serif !important;
  font-size: 1.3rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  padding: 18px 26px !important;
  cursor: pointer !important;
  width: 100% !important;
  text-align: left !important;
  position: relative !important;
  overflow: hidden !important;
  transition: border-color 0.3s, box-shadow 0.3s !important;
  box-sizing: border-box !important;
}

.k2t-toggle-btn::before {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(226,149,78,0.08) 0%, transparent 55%);
  opacity: 0;
  transition: opacity 0.3s;
  pointer-events: none;
}
.k2t-toggle-btn:hover::before,
.k2t-toggle-btn.k2t-active::before { opacity: 1; }

.k2t-toggle-btn:hover,
.k2t-toggle-btn.k2t-active {
  border-color: var(--k2t-accent) !important;
  border-left-color: var(--k2t-accent) !important;
  box-shadow: var(--k2t-glow) !important;
  outline: none !important;
}

.k2t-pulse-dot {
  width: 9px !important;
  height: 9px !important;
  border-radius: 50% !important;
  background: var(--k2t-accent) !important;
  flex-shrink: 0 !important;
  position: relative !important;
  display: inline-block !important;
}
.k2t-pulse-dot::after {
  content: '';
  position: absolute;
  inset: -4px;
  border-radius: 50%;
  border: 1px solid var(--k2t-accent);
  animation: k2tPulseRing 2.2s ease-out infinite;
}
@keyframes k2tPulseRing {
  0%   { opacity: 0.7; transform: scale(1); }
  100% { opacity: 0;   transform: scale(2.5); }
}

.k2t-btn-label {
  flex: 1 !important;
  color: var(--k2t-text) !important;
  font-family: 'Barlow Condensed', sans-serif !important;
}

.k2t-chevron {
  width: 18px !important;
  height: 18px !important;
  flex-shrink: 0 !important;
  color: var(--k2t-accent) !important;
  transition: transform 0.35s cubic-bezier(0.4,0,0.2,1) !important;
}
.k2t-toggle-btn.k2t-active .k2t-chevron {
  transform: rotate(180deg) !important;
}

.k2t-schedule-panel {
  overflow: hidden !important;
  max-height: 0 !important;
  opacity: 0 !important;
  transition: max-height 0.5s cubic-bezier(0.4,0,0.2,1), opacity 0.35s ease !important;
}
.k2t-schedule-panel.k2t-open {
  max-height: 700px !important;
  opacity: 1 !important;
}

.k2t-panel-inner {
  border: 1px solid var(--k2t-border) !important;
  border-top: none !important;
  background: var(--k2t-surface) !important;
}

.k2t-tz-row {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  padding: 14px 26px !important;
  border-bottom: 1px solid var(--k2t-border) !important;
  box-sizing: border-box !important;
}

.k2t-tz-label {
  font-family: 'Space Mono', monospace !important;
  font-size: 0.6rem !important;
  letter-spacing: 0.15em !important;
  text-transform: uppercase !important;
  color: var(--k2t-text-dimmer) !important;
  flex-shrink: 0 !important;
}

.k2t-tz-select {
  flex: 1 !important;
  background: var(--k2t-surface-2) !important;
  border: 1px solid var(--k2t-border) !important;
  color: var(--k2t-text) !important;
  font-family: 'Barlow Condensed', sans-serif !important;
  font-size: 0.95rem !important;
  font-weight: 600 !important;
  letter-spacing: 0.05em !important;
  padding: 7px 32px 7px 10px !important;
  cursor: pointer !important;
  appearance: none !important;
  -webkit-appearance: none !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23E2954E' stroke-width='2' stroke-linecap='round'%3E%3Cpolyline points='4 6 8 10 12 6'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-position: right 8px center !important;
  background-size: 14px !important;
}
.k2t-tz-select:focus {
  outline: none !important;
  border-color: var(--k2t-accent) !important;
  box-shadow: 0 0 0 2px rgba(226,149,78,0.18) !important;
}

.k2t-tz-auto-btn {
  background: none !important;
  border: 1px solid var(--k2t-border) !important;
  color: var(--k2t-text-dim) !important;
  font-family: 'Space Mono', monospace !important;
  font-size: 0.58rem !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  padding: 7px 10px !important;
  cursor: pointer !important;
  white-space: nowrap !important;
  flex-shrink: 0 !important;
  transition: color 0.2s, border-color 0.2s !important;
}
.k2t-tz-auto-btn:hover {
  color: var(--k2t-accent) !important;
  border-color: var(--k2t-accent) !important;
}

.k2t-streams-list {
  padding: 18px 26px !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 12px !important;
  box-sizing: border-box !important;
}

.k2t-stream-card {
  border: 1px solid var(--k2t-border) !important;
  background: var(--k2t-surface-2) !important;
  padding: 18px 20px !important;
  position: relative !important;
  overflow: hidden !important;
  transform: translateY(8px) !important;
  opacity: 0 !important;
  transition: transform 0.4s ease, opacity 0.4s ease, box-shadow 0.3s, border-color 0.3s !important;
  box-sizing: border-box !important;
}
.k2t-stream-card.k2t-visible {
  transform: translateY(0) !important;
  opacity: 1 !important;
}
.k2t-stream-card:nth-child(2) {
  transition-delay: 0.07s !important;
}
.k2t-stream-card::before {
  content: '';
  position: absolute;
  left: 0; top: 0; bottom: 0;
  width: 3px;
  background: #E2954E;
}
.k2t-stream-card::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, rgba(45,5,82,0.2) 0%, transparent 60%);
  opacity: 0;
  transition: opacity 0.3s;
  pointer-events: none;
}
.k2t-stream-card:hover::after { opacity: 1; }
.k2t-stream-card:hover {
  border-color: rgba(226,149,78,0.35) !important;
  box-shadow: var(--k2t-glow) !important;
}

.k2t-card-header {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 12px !important;
  margin-bottom: 14px !important;
}

.k2t-stream-name {
  font-size: 1.55rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.07em !important;
  text-transform: uppercase !important;
  line-height: 1 !important;
  color: #E2954E !important;
  font-family: 'Barlow Condensed', sans-serif !important;
}

.k2t-stream-tag {
  font-family: 'Space Mono', monospace !important;
  font-size: 0.7rem !important;
  letter-spacing: 0.13em !important;
  text-transform: uppercase !important;
  color: rgba(226,149,78,0.7) !important;
  padding: 4px 8px !important;
  border: 1px solid rgba(226,149,78,0.25) !important;
  background: rgba(226,149,78,0.07) !important;
  white-space: nowrap !important;
  flex-shrink: 0 !important;
}

.k2t-schedule-grid {
  display: flex !important;
  flex-direction: column !important;
  gap: 6px !important;
}

.k2t-schedule-row {
  display: flex !important;
  align-items: center !important;
  font-family: 'Space Mono', monospace !important;
  font-size: 0.9rem !important;
}

.k2t-day-name {
  width: 96px !important;
  flex-shrink: 0 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.09em !important;
  color: var(--k2t-text-dim) !important;
  font-family: 'Space Mono', monospace !important;
}

.k2t-day-divider {
  width: 20px !important;
  height: 1px !important;
  background: var(--k2t-border) !important;
  flex-shrink: 0 !important;
  margin: 0 10px !important;
}

.k2t-time-range {
  font-weight: 700 !important;
  letter-spacing: 0.07em !important;
  color: var(--k2t-text) !important;
  font-family: 'Space Mono', monospace !important;
}

.k2t-time-uk {
  margin-left: auto !important;
  font-size: 0.65rem !important;
  letter-spacing: 0.06em !important;
  color: var(--k2t-text-dimmer) !important;
  font-family: 'Space Mono', monospace !important;
}

.k2t-schedule-footer {
  padding: 10px 26px 16px !important;
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  border-top: 1px solid var(--k2t-border) !important;
  box-sizing: border-box !important;
}
.k2t-footer-mark {
  width: 4px !important;
  height: 4px !important;
  border-radius: 50% !important;
  background: var(--k2t-text-dimmer) !important;
  flex-shrink: 0 !important;
}
.k2t-schedule-footer p {
  font-family: 'Space Mono', monospace !important;
  font-size: 0.7rem !important;
  color: var(--k2t-text-dimmer) !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  margin: 0 !important;
}
.k2t-schedule-footer a {
  color: #E2954E !important;
  text-decoration: none !important;
}
.k2t-schedule-footer a:hover {
  text-decoration: underline !important;
}

@media (max-width: 480px) {
  .k2t-toggle-btn   { font-size: 1.05rem !important; padding: 15px 18px !important; }
  .k2t-tz-row       { flex-wrap: wrap !important; padding: 12px 18px !important; }
  .k2t-streams-list { padding: 14px 18px !important; }
  .k2t-stream-card  { padding: 14px 16px !important; }
  .k2t-stream-name  { font-size: 1.25rem !important; }
  .k2t-day-name     { width: 76px !important; }
}
}
#fw-section-custom-html-897af531-09d3-411f-9d0c-64ea44fb2ec7 {

/* Live Shows Section */
.live-shows {
  text-align: center;
  margin: 2rem auto;
  max-width: 1600px;
  padding: 0 1rem;
}

.live-shows-heading {
  font-size: 1.8rem;
  margin-bottom: 1.5rem;
  color: #E2954E;
}

.live-shows-links {
  display: flex;
  align-items: stretch;
}

/* Image panel */
.live-shows-image-panel {
  flex: 1;
  position: relative;
  overflow: hidden;
  min-height: 720px;
}

.live-shows-img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center; 
  opacity: 0;
  transition: opacity 0.4s ease;
}

.live-shows-img.active {
  opacity: 1;
}

/* Default image — grayscale and faded */
.live-shows-img--default {
  filter: grayscale(100%) brightness(0.45);
}

/* Nav */
.live-shows-nav {
  display: flex;
  flex-direction: column;
  width: 340px;
  flex-shrink: 0;
}

.live-shows-item {
  display: flex;
  flex-direction: column;
  justify-content: center;
  flex: 1;
  padding: 2rem 1.5rem;
  text-decoration: none;
  color: inherit;
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
  transition: background 0.3s ease;
}

.live-shows-item:last-child {
  border-bottom: none;
}

.live-shows-item-title {
  font-size: 1.5rem;
  font-weight: bold;
  color: #E2954E;
  margin-bottom: 0.4rem;
  transition: color 0.3s ease;
}

.live-shows-item-desc {
  font-size: 1.0rem;
  opacity: 0.75;
}

/* Purple hover */
.live-shows-item:hover {
  background: rgba(88, 28, 135, 0.45);
}

.live-shows-item:hover .live-shows-item-title {
  color: #fff;
}

/* Mobile */
@media (max-width: 768px) {
  .live-shows-links {
    flex-direction: column;
  }
  .live-shows-image-panel {
    width: 100%;
    aspect-ratio: 16 / 9;
    min-height: unset;
  }
  .live-shows-nav {
    width: 100%;
  }
}
}
#fw-section-custom-html-54003730-6720-496c-9e35-f052222aedad {

/* ============================================= */
/* K2T EVENTS MANAGER — styling (K2T palette)     */
/* ============================================= */

#k2t-admin {
  --k2t-orange: #E2954E;
  --k2t-purple: #2D0552;
  --k2t-bg:     #121212;
  --k2t-card:   #1a1a1a;
  --k2t-lilac:  #f3eaff;

  max-width: 920px;
  margin: 2rem auto;
  padding: 0 1rem 3rem;
  font-family: 'Kameron', serif;
  color: var(--k2t-lilac);
}

/* ===== Titles ===== */
.k2t-admin-title {
  font-size: 2rem;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: 1.5px;
  color: var(--k2t-orange);
  margin: 0;
}
.k2t-admin-sub {
  font-size: 0.95rem;
  font-style: italic;
  color: rgba(243,234,255,0.6);
  margin: 0.2rem 0 0;
}

.k2t-admin-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1rem;
  margin-bottom: 1.5rem;
}

/* ===== Login box ===== */
#k2t-login-view {
  max-width: 380px;
  margin: 4rem auto;
  text-align: center;
}
.k2t-login-box {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  margin-top: 1.5rem;
  background: var(--k2t-card);
  border: 1px solid var(--k2t-orange);
  border-radius: 14px;
  padding: 1.75rem;
  box-shadow: 0 0 22px rgba(45,2,82,0.55);
}

/* ===== "Get started" Add Event bar ===== */
.k2t-addbar {
  display: flex;
  align-items: center;
  gap: 1rem;
  background: var(--k2t-card);
  border: 1px solid var(--k2t-orange);
  border-radius: 14px;
  padding: 1.1rem 1.5rem;
  margin-bottom: 1.5rem;
  box-shadow: 0 0 18px rgba(45,2,82,0.4);
}
.k2t-addbar-hint {
  font-size: 0.9rem;
  font-style: italic;
  color: rgba(243,234,255,0.6);
}

/* ===== Panels ===== */
.k2t-card-panel {
  background: var(--k2t-card);
  border: 1px solid var(--k2t-orange);
  border-radius: 14px;
  padding: 1.5rem 1.6rem;
  margin-bottom: 1.5rem;
  box-shadow: 0 0 18px rgba(45,2,82,0.4);
}
.k2t-section-h {
  font-size: 1.3rem;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: 1px;
  color: var(--k2t-orange);
  margin: 0 0 1.1rem;
}

/* ===== Form ===== */
.k2t-form-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1rem;
}
.k2t-label {
  display: flex;
  flex-direction: column;
  gap: 0.35rem;
  font-size: 0.85rem;
  letter-spacing: 0.5px;
  color: rgba(243,234,255,0.8);
  transition: opacity 0.2s;
}
.k2t-label-full { grid-column: 1 / -1; }
.k2t-hint {
  font-style: italic;
  font-size: 0.75rem;
  color: rgba(243,234,255,0.4);
}

.k2t-label-disabled { opacity: 0.4; }

.k2t-field {
  background: var(--k2t-bg);
  border: 1px solid rgba(226,149,78,0.4);
  border-radius: 10px;
  padding: 0.6rem 0.75rem;
  color: var(--k2t-lilac);
  font-family: 'Kameron', serif;
  font-size: 0.95rem;
  transition: border-color 0.2s, box-shadow 0.2s, opacity 0.2s;
}
.k2t-field:focus {
  outline: none;
  border-color: var(--k2t-orange);
  box-shadow: 0 0 10px rgba(45,2,82,0.7);
}
.k2t-textarea { resize: vertical; min-height: 70px; }

.k2t-field:disabled {
  opacity: 0.4;
  cursor: not-allowed;
  border-color: rgba(243,234,255,0.15);
}

.k2t-field option { background: var(--k2t-bg); color: var(--k2t-lilac); }
input[type="date"].k2t-field { color-scheme: dark; }

.k2t-form-actions {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  margin-top: 1.2rem;
  flex-wrap: wrap;
}

/* ===== Buttons ===== */
.k2t-btn-primary {
  cursor: pointer;
  background: linear-gradient(90deg, var(--k2t-purple), var(--k2t-orange));
  color: #fff;
  border: none;
  border-radius: 999px;
  padding: 0.6rem 1.4rem;
  font-family: 'Kameron', serif;
  font-weight: 700;
  font-size: 0.9rem;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  transition: box-shadow 0.2s;
}
.k2t-btn-primary:hover { box-shadow: 0 0 16px rgba(45,2,82,0.8); }

.k2t-btn-ghost {
  cursor: pointer;
  background: transparent;
  border: 1px solid rgba(243,234,255,0.25);
  color: rgba(243,234,255,0.75);
  border-radius: 999px;
  padding: 0.55rem 1.2rem;
  font-family: 'Kameron', serif;
  font-weight: 700;
  font-size: 0.85rem;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  transition: border-color 0.2s, color 0.2s;
}
.k2t-btn-ghost:hover { border-color: var(--k2t-orange); color: var(--k2t-orange); }

/* Duplicate button */
.k2t-btn-dup {
  cursor: pointer;
  background: transparent;
  border: 1px solid rgba(141,90,200,0.55);
  color: #c9a6e8;
  border-radius: 999px;
  padding: 0.55rem 1.2rem;
  font-family: 'Kameron', serif;
  font-weight: 700;
  font-size: 0.85rem;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  transition: background 0.2s, color 0.2s, border-color 0.2s;
}
.k2t-btn-dup:hover {
  background: rgba(45,5,82,0.4);
  color: #e3cdff;
  border-color: #8d5ac8;
}

/* Publish/Hide toggle button — teal-leaning, distinct from the others */
.k2t-btn-vis {
  cursor: pointer;
  background: transparent;
  border: 1px solid rgba(125,220,143,0.5);
  color: #7ddc8f;
  border-radius: 999px;
  padding: 0.55rem 1.2rem;
  font-family: 'Kameron', serif;
  font-weight: 700;
  font-size: 0.85rem;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  transition: background 0.2s, color 0.2s, border-color 0.2s;
}
.k2t-btn-vis:hover {
  background: rgba(125,220,143,0.12);
  color: #a4ecb2;
  border-color: #7ddc8f;
}

.k2t-btn-danger {
  cursor: pointer;
  background: transparent;
  border: 1px solid rgba(226,80,80,0.5);
  color: #e26a6a;
  border-radius: 999px;
  padding: 0.55rem 1.2rem;
  font-family: 'Kameron', serif;
  font-weight: 700;
  font-size: 0.85rem;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  transition: background 0.2s, color 0.2s;
}
.k2t-btn-danger:hover { background: rgba(226,80,80,0.15); color: #ff8585; }

.k2t-btn-sm { padding: 0.4rem 0.9rem; font-size: 0.78rem; }

/* ===== Event list — grouped sections ===== */
.k2t-list-group { margin-bottom: 1.75rem; }
.k2t-list-group:last-child { margin-bottom: 0; }

.k2t-list-grouphead {
  font-size: 1.1rem;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: 1.5px;
  color: var(--k2t-orange);
  margin: 0 0 0.75rem;
  padding-bottom: 0.4rem;
  border-bottom: 2px solid rgba(226,149,78,0.4);
}

.k2t-list-section { margin-bottom: 0.5rem; }
.k2t-list-section:last-child { margin-bottom: 0; }

.k2t-list-subhead {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  width: 100%;
  cursor: pointer;
  background: rgba(255,255,255,0.02);
  border: none;
  border-radius: 8px;
  text-align: left;
  font-family: 'Kameron', serif;
  font-size: 0.85rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 1px;
  color: rgba(243,234,255,0.75);
  padding: 0.6rem 0.6rem;
  margin: 0.3rem 0 0;
  transition: color 0.2s, background 0.2s;
}
.k2t-list-subhead:hover {
  color: var(--k2t-orange);
  background: rgba(226,149,78,0.06);
}
.k2t-list-count {
  color: var(--k2t-orange);
  font-weight: 700;
}

.k2t-chevron {
  display: inline-block;
  font-size: 0.8rem;
  color: var(--k2t-orange);
  transition: transform 0.2s ease;
  transform: rotate(0deg);
}
.k2t-list-subhead.is-open .k2t-chevron {
  transform: rotate(90deg);
}

.k2t-list-body {
  padding-left: 0.2rem;
}
.k2t-list-body.is-collapsed {
  display: none;
}

.k2t-event-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: 0.85rem 0.5rem;
  border-bottom: 1px solid rgba(243,234,255,0.08);
}
.k2t-event-row:last-child { border-bottom: none; }
.k2t-event-row.is-past { opacity: 0.55; }
/* Hidden (draft) events get a subtle dashed left edge so they stand out */
.k2t-event-row.is-hidden-evt {
  border-left: 2px dashed rgba(243,234,255,0.25);
  padding-left: 0.7rem;
}

.k2t-event-name {
  font-size: 1rem;
  font-weight: 700;
  color: #fff;
  display: flex;
  align-items: center;
  gap: 0.5rem;
  flex-wrap: wrap;
}
.k2t-event-meta {
  font-size: 0.8rem;
  font-style: italic;
  color: rgba(243,234,255,0.55);
  margin-top: 0.2rem;
}

/* Visibility badges */
.k2t-badge {
  font-size: 0.62rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  padding: 0.12rem 0.5rem;
  border-radius: 999px;
}
.k2t-badge-live  { background: rgba(125,220,143,0.15); color: #7ddc8f; border: 1px solid rgba(125,220,143,0.5); }
.k2t-badge-draft { background: rgba(243,234,255,0.08); color: rgba(243,234,255,0.6); border: 1px solid rgba(243,234,255,0.25); }

.k2t-event-actions {
  display: flex;
  gap: 0.5rem;
  flex-shrink: 0;
  flex-wrap: wrap;
}

/* ===== Messages ===== */
.k2t-msg {
  font-size: 0.85rem;
  font-style: italic;
  color: rgba(243,234,255,0.6);
}
.k2t-msg-err { color: #ff8585; font-style: normal; }
.k2t-msg-ok  { color: #7ddc8f; font-style: normal; }

.k2t-empty, .k2t-loading {
  font-size: 0.9rem;
  font-style: italic;
  color: rgba(243,234,255,0.45);
  padding: 0.4rem 0.5rem;
}

/* ===== Mobile ===== */
@media (max-width: 640px) {
  .k2t-form-grid { grid-template-columns: 1fr; }
  .k2t-addbar { flex-direction: column; align-items: flex-start; }
  .k2t-event-row { flex-direction: column; align-items: flex-start; }
  .k2t-event-actions { width: 100%; }
}
}




#fw-section-custom-html-91d5e759-d14e-4005-85c5-d02e2fdfebc4 {

/* K2T Press Kit styles. Scoped under .k2t-epk so it stays contained
   to this block. Fonts inherit from your Fourthwall theme. */

.k2t-epk{
  /* ====== K2T BRAND ====== */
  --k2t-orange: #E2954E;
  --k2t-purple: #2D0552;
  /* ======================= */
  --bg: #121212;
  --panel: #1a1a1e;
  --line: #2b2b32;
  --ink: #eceae6;
  --ink-dim: #9a9aa3;
  --radius: 6px;
  --max: 1080px;

  background: var(--bg);
  color: var(--ink);
  font-family: inherit;
  font-size: 16px;
  line-height: 1.6;
  -webkit-font-smoothing: antialiased;
}
.k2t-epk *{ box-sizing: border-box; margin: 0; padding: 0; font-family: inherit; }
@media (prefers-reduced-motion: reduce){
  .k2t-epk *, .k2t-epk *::before, .k2t-epk *::after{
    animation: none !important;
    transition: none !important;
  }
}
.k2t-epk a{ color: var(--k2t-orange); text-decoration: none; }
.k2t-epk a:hover{ text-decoration: underline; }
.k2t-epk a:focus-visible,
.k2t-epk button:focus-visible{
  outline: 2px solid var(--k2t-orange);
  outline-offset: 3px;
  border-radius: 2px;
}
.k2t-epk .wrap{ max-width: var(--max); margin: 0 auto; padding: 0 24px; }

.k2t-epk .label{
  font-size: 0.72rem;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--ink-dim);
}
.k2t-epk .eyebrow{
  font-size: 0.72rem;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--k2t-orange);
  display: block;
  margin-bottom: 12px;
}

/* hero with site image background */
.k2t-epk .hero{
  border-bottom: 1px solid var(--line);
  position: relative;
  background: var(--bg);
}
.k2t-epk .hero .wrap{ padding-top: 8px; }
.k2t-epk .hero h1{
  font-weight: 900;
  font-size: clamp(3rem, 9vw, 6.5rem);
  line-height: 0.95;
  letter-spacing: -0.02em;
  text-transform: uppercase;
  text-shadow: 0 2px 24px rgba(0,0,0,0.6);
}
.k2t-epk .hero .sub{
  margin-top: 16px;
  max-width: 560px;
  color: var(--ink);
  opacity: 0.85;
  font-size: 1.05rem;
  text-shadow: 0 1px 12px rgba(0,0,0,0.7);
}

/* social icon row — bare icons, no chrome */
.k2t-epk .socials{
  margin-top: 18px;
  display: flex;
  flex-wrap: wrap;
  gap: 18px;
  align-items: center;
}
.k2t-epk .social{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  opacity: 0.75;
  transition: opacity .15s ease, transform .15s ease;
}
.k2t-epk .social img{ width: 22px; height: 22px; display: block; }
.k2t-epk .social:hover{
  opacity: 1;
  transform: translateY(-1px);
}

/* subtle follower total under the icons */
.k2t-epk .follower-count{
  margin-top: 12px;
  font-size: 0.78rem;
  letter-spacing: 0.06em;
  color: var(--ink-dim);
  opacity: 0.8;
}

/* spec strip */
.k2t-epk .spec-strip{
  margin-top: 64px;
  border-top: 1px solid rgba(255,255,255,0.14);
  display: grid;
  grid-template-columns: repeat(3, 1fr);
}
.k2t-epk .spec{
  padding: 20px 24px 24px;
  border-right: 1px solid rgba(255,255,255,0.14);
}
.k2t-epk .spec:last-child{ border-right: 0; }
.k2t-epk .spec .label{ display: block; margin-bottom: 6px; color: var(--k2t-orange); }
.k2t-epk .spec strong{ font-size: 1.05rem; font-weight: 600; }
@media (max-width: 760px){
  .k2t-epk .spec-strip{ grid-template-columns: 1fr; }
  .k2t-epk .spec{ border-right: 0; border-bottom: 1px solid rgba(255,255,255,0.14); }
  .k2t-epk .spec:last-child{ border-bottom: 0; }
}

/* waveform divider — stylised breakbeat amplitude bars */
.k2t-epk .wave{ display: block; width: 100%; height: 20px; color: var(--ink-dim); opacity: .2; }
.k2t-epk .wave rect{ fill: currentColor; }

/* sections */
.k2t-epk section{ padding: 64px 0; border-bottom: 1px solid var(--line); position: relative; }
.k2t-epk section h2{
  font-weight: 800;
  font-size: clamp(1.5rem, 3.4vw, 2.1rem);
  text-transform: uppercase;
  margin-bottom: 28px;
}

/* bio section gets a very dark portrait behind it */
.k2t-epk .bio-section{
  position: relative;
  isolation: isolate;
}
.k2t-epk .bio-section::before{
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  /* Swap the URL below for a portrait/face shot from your gallery */
  background-image:
    linear-gradient(180deg, rgba(18,18,18,0.62) 0%, rgba(18,18,18,0.70) 100%),
    url('https://imgproxy.fourthwall.dev/lyAM6QamNRg32Fz-M3k-BKpVXyQGKxZrOFLz1lIMM8g/w:1920/sm:1/enc/gcdfHBONgV_7LPNn/XK3kjw8lATK2ce7s/vzGJdEvkyr1Lh7CX/MIO4NVfFM7RLO85Z/gFzpgrhj7g9rBh52/hTrvub4fDoJQ7nDf/rqJp36AOuzH_tD8S/ZO62sEYYWhU4uxG3/Jk6R6PATA2Cd2nZF/TuutyjmKm0ZRcPfz/YcZ5tJbPGN0mJZ1b/BYJV9e6VGbYqvcO5/umDjePSrY3xJk6_8/GnnwDMWIqkSze-ne/DhcWud1onX2rhnHz/BetnpEZjMbi3rsNn.jpg');
  background-size: cover;
  background-position: center 25%;
  /* extra darkening so text stays crisp */
  filter: brightness(0.85) grayscale(0.1);
}

/* bios */
.k2t-epk .bio-grid{ display: grid; grid-template-columns: 1fr 1.6fr; gap: 48px; }
@media (max-width: 820px){ .k2t-epk .bio-grid{ grid-template-columns: 1fr; gap: 32px; } }
.k2t-epk .bio-card{
  background: rgba(26,26,30,0.82);
  backdrop-filter: blur(6px);
  border: 1px solid var(--line);
  border-radius: var(--radius);
  padding: 24px;
  align-self: start;
}
.k2t-epk .bio-card-head{
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  margin-bottom: 12px;
}
.k2t-epk .bio-card-head .eyebrow{ margin-bottom: 0; }
.k2t-epk .copy-btn{
  font-size: 0.68rem;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  padding: 7px 14px;
  border-radius: 999px;
  border: 1px solid var(--k2t-orange);
  background: transparent;
  color: var(--k2t-orange);
  cursor: pointer;
  transition: background .15s ease, color .15s ease;
  white-space: nowrap;
}
.k2t-epk .copy-btn:hover{ background: var(--k2t-orange); color: #140800; }
.k2t-epk .copy-btn.copied{
  border-color: var(--k2t-orange);
  background: var(--k2t-orange);
  color: #140800;
}
.k2t-epk .bio-card p{ font-size: 0.95rem; }
.k2t-epk .bio-long p{ color: var(--ink); margin-bottom: 18px; text-shadow: 0 1px 10px rgba(0,0,0,0.6); }
.k2t-epk .bio-long-head{
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  margin-bottom: 18px;
}
.k2t-epk .bio-long-head .eyebrow{ margin-bottom: 0; }
.k2t-epk .bio-long p:last-child{ margin-bottom: 0; }

/* events widget wrapper */
.k2t-epk .events-list{
  background: var(--panel);
  border: 1px solid var(--line);
  border-radius: var(--radius);
  padding: 8px 24px 16px;
}
.k2t-epk .events-status{
  color: var(--ink-dim);
  font-size: 0.95rem;
  padding: 20px 0;
}

/* section (Upcoming / Past Shows) */
.k2t-epk .evt-section + .evt-section{ margin-top: 14px; }
.k2t-epk .evt-section-title{
  font-size: 0.72rem;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--k2t-orange);
  font-weight: 700;
  padding: 24px 0 0;
  margin: 0;
}
.k2t-epk .evt-section-title.has-divider{
  padding-bottom: 18px;
  border-bottom: 1px solid var(--line);
}
.k2t-epk .evt-section-sub{
  margin: 0;
  padding: 8px 0 18px;
  font-size: 0.78rem;
  color: var(--ink-dim);
  font-style: italic;
  border-bottom: 1px solid var(--line);
}

/* event row */
.k2t-epk .evt{
  display: grid;
  grid-template-columns: 170px 1fr auto;
  gap: 20px;
  align-items: center;
  padding: 20px 0;
  border-bottom: 1px solid var(--line);
}
.k2t-epk .evt:last-child{ border-bottom: 0; }

.k2t-epk .evt-date{
  font-size: 0.85rem;
  letter-spacing: 0.04em;
  color: var(--ink-dim);
  white-space: nowrap;
}
/* upcoming rows: brighter date + pill */
.k2t-epk .evt-upcoming .evt-date{ color: var(--ink); font-weight: 600; }
.k2t-epk .evt-tag{
  font-size: 0.6rem;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  font-weight: 700;
  color: #140800;
  background: var(--k2t-orange);
  padding: 3px 9px;
  border-radius: 999px;
}
/* purple edge on upcoming rows — sits in a gutter so row content
   stays aligned with the section title, subtitle and past rows */
.k2t-epk .evt-upcoming{
  position: relative;
}
.k2t-epk .evt-upcoming::before{
  content: "";
  position: absolute;
  left: -16px;
  top: 0;
  bottom: 0;
  width: 3px;
  background: var(--k2t-purple);
}

.k2t-epk .evt-name{
  font-size: 1.02rem;
  font-weight: 600;
  line-height: 1.35;
  color: var(--ink);
}
.k2t-epk .evt-loc{
  margin-top: 4px;
  font-size: 0.85rem;
  color: var(--ink-dim);
}

.k2t-epk .evt-tickets{
  justify-self: end;
  font-size: 0.72rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  font-weight: 600;
  color: #140800;
  background: var(--k2t-orange);
  padding: 9px 16px;
  border-radius: 999px;
  white-space: nowrap;
}
.k2t-epk .evt-tickets:hover{ text-decoration: none; filter: brightness(1.1); }

/* stack the row on narrow screens */
@media (max-width: 640px){
  .k2t-epk .evt{
    grid-template-columns: 1fr;
    gap: 8px;
  }
  .k2t-epk .evt-date{ flex-direction: row; align-items: center; }
  .k2t-epk .evt-tickets{ justify-self: start; margin-top: 4px; }
}

/* downloads */
.k2t-epk .dl-grid{ display: grid; grid-template-columns: repeat(2, 1fr); gap: 16px; }
@media (max-width: 820px){ .k2t-epk .dl-grid{ grid-template-columns: 1fr; } }
.k2t-epk .dl-card{
  display: block;
  background: var(--panel);
  border: 1px solid var(--line);
  border-radius: var(--radius);
  padding: 22px;
  color: var(--ink);
  transition: border-color .15s ease, transform .15s ease;
}
.k2t-epk .dl-card:hover{ text-decoration: none; border-color: var(--k2t-orange); transform: translateY(-2px); }
.k2t-epk .dl-card .ft{
  font-size: 0.68rem;
  letter-spacing: 0.12em;
  color: #140800;
  background: var(--k2t-orange);
  display: inline-block;
  padding: 3px 8px;
  border-radius: 3px;
  margin-bottom: 14px;
}
.k2t-epk .dl-card h3{ font-size: 1.05rem; font-weight: 600; }
.k2t-epk .dl-card-full{ grid-column: 1 / -1; }
.k2t-epk .dl-card p{ font-size: 0.85rem; color: var(--ink-dim); }
.k2t-epk .credit-line{
  margin-top: 18px;
  font-size: 0.8rem;
  color: var(--ink-dim);
}
.k2t-epk .credit-line a{
  color: inherit;
  text-decoration: none;
}
.k2t-epk .credit-line a:hover{ text-decoration: underline; }

/* music & video embeds */
.k2t-epk .media-grid{
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
  align-items: stretch;
}
@media (max-width: 820px){ .k2t-epk .media-grid{ grid-template-columns: 1fr; } }
.k2t-epk .media-item{ display: flex; flex-direction: column; }
.k2t-epk .media-item .eyebrow{ margin-bottom: 12px; }
/* both embeds share one fixed height so the columns match with no gap;
   Spotify simply shows more of the tracklist to fill it */
.k2t-epk .embed{
  position: relative;
  width: 100%;
  height: 460px;
  flex: 1 1 auto;
  border-radius: var(--radius);
  overflow: hidden;
  border: 1px solid var(--line);
  background: #000;
}
.k2t-epk .embed iframe{
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  display: block;
}
/* on mobile the columns stack; give each a sensible standalone height */
@media (max-width: 820px){
  .k2t-epk .embed-video{ height: 0; padding-bottom: 56.25%; }
  .k2t-epk .embed-spotify{ height: 420px; }
}

/* contact — emails in purple */
.k2t-epk .contact-grid{ display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
@media (max-width: 760px){ .k2t-epk .contact-grid{ grid-template-columns: 1fr; } }
.k2t-epk .contact-card{
  background: var(--panel);
  border: 1px solid var(--line);
  border-radius: var(--radius);
  padding: 24px;
}
.k2t-epk .contact-card .label{ display: block; margin-bottom: 8px; color: var(--k2t-orange); }
.k2t-epk .contact-card a{
  font-size: 1.05rem;
  font-weight: 700;
  word-break: break-all;
  color: #ffffff;
}
.k2t-epk .contact-card a:hover{ color: var(--k2t-orange); }

/* footer line */
.k2t-epk .epk-footer{ padding: 40px 0 64px; color: var(--ink-dim); font-size: 0.85rem; }
.k2t-epk .epk-footer .label{ font-size: 0.68rem; }
}
#fw-section-custom-html-950a7734-5290-4cdc-956a-c406b61622ae {

*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }

.collections-heading {
  color: #fff;
  font-size: clamp(0.75rem, 1.2vw, 1rem);
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  margin-bottom: 1rem;
  opacity: 0.5;
}

.home-links {
  position: relative;
  width: 100%;
  min-height: 620px;
  background: #111;
  display: flex;
  align-items: stretch;
}

.home-image-panel {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  width: 55%;
  z-index: 0;
  overflow: hidden;
}

.home-image-panel img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  opacity: 0;
  filter: grayscale(100%);
  transition: opacity 0.5s ease, filter 0.5s ease;
}

.home-image-panel::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(
    to right,
    rgba(17,17,17,0) 0%,
    rgba(17,17,17,0) 40%,
    rgba(17,17,17,0.7) 75%,
    rgba(17,17,17,1) 100%
  );
  z-index: 1;
  pointer-events: none;
}

.home-nav {
  position: relative;
  z-index: 2;
  margin-left: auto;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 3rem 3.5rem 3rem 2rem;
  width: 48%;
  gap: 0.1rem;
}

.home-item {
  display: block;
  text-decoration: none;
  color: #fff;
  padding: 0.45rem 0;
  min-height: 3.5rem;
}

.home-item-title {
  display: block;
  font-size: clamp(1.4rem, 3vw, 2.8rem);
  font-weight: 900;
  font-style: italic;
  text-transform: uppercase;
  letter-spacing: 0.03em;
  line-height: 1.1;
  transition: opacity 0.35s ease, transform 0.35s ease, color 0.35s ease;
  transform-origin: left center;
}

.home-item:hover .home-item-title {
  transform: translateX(1.5rem);
  color: #E2954E;
}

.home-nav:has(.home-item:hover) .home-item:not(:hover) .home-item-title {
  opacity: 0.2;
  transform: scale(0.95);
}

/* nth-of-type targets only <a> elements, ignoring the <h2> */
.home-links:has(.home-item:nth-of-type(1):hover) .home-image-panel img:nth-child(1),
.home-links:has(.home-item:nth-of-type(2):hover) .home-image-panel img:nth-child(2),
.home-links:has(.home-item:nth-of-type(3):hover) .home-image-panel img:nth-child(3),
.home-links:has(.home-item:nth-of-type(4):hover) .home-image-panel img:nth-child(4),
.home-links:has(.home-item:nth-of-type(5):hover) .home-image-panel img:nth-child(5),
.home-links:has(.home-item:nth-of-type(6):hover) .home-image-panel img:nth-child(6) {
  opacity: 1;
  filter: grayscale(0%);
}

@media (max-width: 700px) {
  .home-links {
    min-height: unset;
    display: flex;
    flex-direction: column;
  }
  .home-image-panel {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
  }
  .home-image-panel::after {
    background: linear-gradient(
      to bottom,
      rgba(17,17,17,0.3) 0%,
      rgba(17,17,17,0.75) 60%,
      rgba(17,17,17,0.95) 100%
    );
  }
  .home-nav {
    width: 100%;
    margin-left: 0;
    padding: 1.5rem 1.5rem 2rem;
    justify-content: flex-start;
    min-height: unset;
  }
  .home-item {
    min-height: unset;
  }
  .home-item-title {
    font-size: clamp(2rem, 8vw, 2.8rem);
  }
}

@media (prefers-reduced-motion: reduce) {
  .home-image-panel img,
  .home-item-title {
    transition: none;
  }
}
}



#fw-section-custom-html-e09925e7-8e59-4809-8a27-214eedad96db {

/* ============================================================
   K2T — MUSIC PAGE STYLES (header + embeds)
   Scoped to .k2t-music. Covers BOTH the header block and the
   embeds block — paste once (in either block's CSS area, or in
   your theme's global CSS). No need to duplicate it.
   Brand palette:
     --k2t-bg      #121212  (page dark)
     --k2t-orange  #E2954E  (primary accent)
     --k2t-purple  #2D0552  (secondary accent)
   ============================================================ */

.k2t-music {
  /* CHANGE: tweak brand colours here in one place */
  --k2t-bg: #121212;
  --k2t-surface: #1a1a1a;
  --k2t-orange: #E2954E;
  --k2t-purple: #2D0552;
  --k2t-text: #f2f0ec;
  --k2t-text-dim: #b8b3ab;

  background: var(--k2t-bg);
  color: var(--k2t-text);
  padding: 56px 24px 72px;
  max-width: 1100px;
  margin: 0 auto;
  font-family: inherit; /* uses your Fourthwall theme fonts */
}

/* Header block: no padding at all */
.k2t-music--header { padding: 0; }

/* If the header and embeds end up as separate stacked blocks, this
   trims the doubled-up vertical padding where they meet. */
.k2t-music + .k2t-music { padding-top: 0; }

/* ---------- Header ----------
   margin-bottom removed so the native collection block sits
   right under the title. CHANGE: bump this up (e.g. 16px, 24px)
   if you want a little breathing room back. */
.k2t-music__header { text-align: center; margin-bottom: 0; }

.k2t-music__kicker {
  color: var(--k2t-orange);
  text-transform: uppercase;
  letter-spacing: 0.28em;
  font-size: 0.78rem;
  margin: 0 0 14px;
}

.k2t-music__title {
  font-size: clamp(2.4rem, 6vw, 3.6rem);
  margin: 0 0 16px;
  line-height: 1.05;
  background: linear-gradient(120deg, var(--k2t-text) 30%, var(--k2t-orange) 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}

.k2t-music__intro {
  max-width: 560px;
  margin: 0 auto;
  color: var(--k2t-text-dim);
  font-size: 1.05rem;
  line-height: 1.65;
}

.k2t-music__rule {
  width: 90px; height: 3px;
  margin: 28px auto 0;
  border-radius: 2px;
  background: linear-gradient(90deg, var(--k2t-purple), var(--k2t-orange));
}

/* ---------- Section headings ---------- */
.k2t-music__section { margin-bottom: 72px; }

.k2t-music__heading {
  font-size: clamp(1.6rem, 4vw, 2.1rem);
  margin: 0 0 32px;
  text-align: center;
}
.k2t-music__heading em {
  font-style: normal;
  color: var(--k2t-orange);
}

/* ---------- Embed section ---------- */
.k2t-embed-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
  gap: 28px;
}

.k2t-embed {
  background: var(--k2t-surface);
  border: 1px solid rgba(45, 5, 82, 0.9);
  border-radius: 14px;
  padding: 20px;
  transition: border-color 0.25s ease;
}
.k2t-embed:hover { border-color: var(--k2t-orange); }

.k2t-embed__label {
  margin: 0 0 14px;
  font-size: 0.78rem;
  text-transform: uppercase;
  letter-spacing: 0.24em;
  color: var(--k2t-orange);
}

.k2t-embed__frame {
  border-radius: 10px;
  border: 0;
  display: block;
}

.k2t-embed__link {
  display: inline-block;
  margin-top: 14px;
  color: var(--k2t-orange);
  text-decoration: none;
  font-size: 0.9rem;
}
.k2t-embed__link:hover { text-decoration: underline; }

/* ---------- Mobile ---------- */
@media (max-width: 640px) {
  .k2t-music { padding: 40px 16px 56px; }
  .k2t-music__header { margin-bottom: 44px; }
  .k2t-music__section { margin-bottom: 52px; }
}
}
#fw-section-featured-collection-05f529bf-6bbd-4c66-bda6-585f4abfd955 {

/* ============================================================
   K2T — FEATURED COLLECTION ("releases") CUSTOM CSS
   Scoped to THIS block only. Built from the real rendered HTML.
   Real classes used:
     .product-tile          → the card
     .tile / .tile--zoom    → clickable link inside the card
     .tile__image           → image area
     .tile__item--1/--2     → primary / hover-swap images
     .badge                 → "Latest Release!" pill
     .tile__description     → title + price block
     .tile__heading         → product title
     .tile__price--original → price
     .section-header        → "releases" heading row
     .collection__grid .col-grid → product grid
     .button--secondary     → "See more" button
   Brand: orange #E2954E / purple #2D0552.
   ============================================================ */

/* ---------- "releases" heading row ---------- */
.section-header {
  margin-bottom: 28px !important;
}
/* CHANGE: delete this rule to keep Fourthwall's default heading casing */
.section-header__heading {
  text-transform: uppercase !important;
  letter-spacing: 0.04em !important;
}

/* ---------- Grid spacing + EQUAL-HEIGHT cells ----------
   align-items: stretch makes every grid cell the same height
   as the tallest one in the row. The direct child <div> and the
   card inside it are stretched to fill that height. */
.collection__grid .col-grid {
  gap: 28px !important;
  align-items: stretch !important;
}
.collection__grid .col-grid > div {
  display: flex !important;
}

/* ---------- THE CARD (.product-tile) ----------
   Glow + border on hover only — no lift, no movement.
   flex column + full height so all cards match. */
.product-tile {
  background: #1a1a1a !important;
  border: 1px solid rgba(226, 149, 78, 0.18) !important;
  border-radius: 14px !important;
  overflow: hidden !important;
  width: 100% !important;
  display: flex !important;
  flex-direction: column !important;
  transition: border-color 0.25s ease, box-shadow 0.25s ease !important;
}
.product-tile:hover {
  border-color: rgba(226, 149, 78, 0.55) !important;
  box-shadow: 0 14px 38px rgba(45, 5, 82, 0.55) !important;
}

/* The link fills the card and stacks its contents in a column */
.product-tile .tile {
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;
}

/* ---------- Image area: clip to the rounded top ----------
   Zoom-on-hover removed — image stays put. */
.product-tile .tile__image {
  overflow: hidden !important;
}

/* ---------- "Latest Release!" badge → brand orange pill ---------- */
.product-tile .badge {
  background: #E2954E !important;
  color: #121212 !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.1em !important;
  font-size: 0.68rem !important;
  border-radius: 999px !important;
  padding: 5px 12px !important;
}

/* ---------- Title + price block ----------
   Pushed to fill remaining space so the price sits at the same
   spot on every card. */
.product-tile .tile__description {
  padding: 16px 18px 20px !important;
  flex: 1 1 auto !important;
  display: flex !important;
  flex-direction: column !important;
}

/* Reserve space for ~2 lines of title so one-line and two-line
   titles occupy the same height. CHANGE: bump to 3.9rem if any
   of your titles ever run to three lines. */
.product-tile .tile__heading {
  font-size: 1.05rem !important;
  line-height: 1.3 !important;
  min-height: 2.7rem !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

/* Price → brand orange (exact class from your HTML).
   margin-top: auto pins it to the bottom of the card. */
.product-tile .tile__prices {
  margin-top: auto !important;
}
.product-tile .tile__price,
.product-tile .tile__price--original {
  color: #E2954E !important;
  font-weight: 700 !important;
}

/* ---------- "See more" button → pill in brand style ---------- */
.section-header__cta .button--secondary,
.collection__cta .button--secondary {
  border-radius: 999px !important;
  border-color: #E2954E !important;
  color: #E2954E !important;
  transition: background 0.2s ease, color 0.2s ease !important;
}
.section-header__cta .button--secondary:hover,
.collection__cta .button--secondary:hover {
  background: #E2954E !important;
  color: #121212 !important;
}
}
#fw-section-custom-html-87bb471d-8952-4c79-b6f1-5897b5e83ec6 {

:root {
  --bg: #121212;
  --surface: #1a1a1a;
  --text-primary: #f0f0f0;
  --text-secondary: #888;
  --accent: #E2954E;
  --accent-dim: rgba(226, 149, 78, 0.18);
  --accent-glow: rgba(226, 149, 78, 0.45);
  --purple: #2D0552;
  --purple-mid: rgba(45, 5, 82, 0.75);
  --purple-dim: rgba(45, 5, 82, 0.55);
}

.k2t-wrapper {
  width: 100%;
  max-width: 960px;
  margin: 0 auto;
  padding: 48px 32px;
  font-family: 'Barlow', sans-serif;
}

.k2t-heading {
  font-family: 'Barlow Condensed', sans-serif;
  font-size: clamp(32px, 5vw, 52px);
  font-weight: 800;
  line-height: 1.05;
  letter-spacing: -0.01em;
  text-transform: uppercase;
  color: var(--text-primary);
  margin-bottom: 28px;
}

.k2t-heading em {
  font-style: normal;
  color: var(--accent);
}

.k2t-radio {
  display: none;
}

.k2t-buttons {
  display: flex;
  gap: 12px;
  margin-bottom: 20px;
  flex-wrap: wrap;
}

.k2t-tab-label {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  font-family: 'Barlow Condensed', sans-serif;
  font-size: 18px;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--text-secondary);
  border: 1px solid rgba(255,255,255,0.1);
  background: rgba(255,255,255,0.04);
  border-radius: 6px;
  padding: 14px 28px;
  cursor: pointer;
  transition: background 0.2s, border-color 0.2s, color 0.2s;
}

.k2t-tab-label:hover {
  color: var(--accent);
  border-color: var(--accent-glow);
  background: var(--accent-dim);
}

.k2t-tab-label svg {
  width: 16px;
  height: 16px;
  flex-shrink: 0;
}

#k2t-spotify:checked ~ .k2t-buttons .k2t-label-spotify,
#k2t-bandcamp:checked ~ .k2t-buttons .k2t-label-bandcamp {
  color: var(--accent);
  border-color: var(--accent-glow);
  background: linear-gradient(135deg, var(--accent-dim), var(--purple-dim));
}

.k2t-card {
  background: linear-gradient(135deg, rgba(45, 5, 82, 0.55) 0%, rgba(30, 10, 45, 0.7) 50%, rgba(45, 5, 82, 0.4) 100%);
  border: 1px solid rgba(226, 149, 78, 0.25);
  border-radius: 14px;
  overflow: hidden;
  position: relative;
  display: none;
}

.k2t-card::before {
  content: '';
  position: absolute;
  top: 0; left: 0; right: 0;
  height: 3px;
  background: linear-gradient(to right, var(--accent), var(--purple));
}

.k2t-card-inner {
  padding: 28px;
}

#k2t-spotify:checked ~ .k2t-card-spotify,
#k2t-bandcamp:checked ~ .k2t-card-bandcamp {
  display: block;
}

/* Spotify embed */
.k2t-embed-container {
  border-radius: 8px;
  overflow: hidden;
}

.k2t-embed-container iframe {
  display: block;
  width: 100%;
  border: none;
}

/* Artist button */
.k2t-footer {
  margin-top: 20px;
  display: flex;
  justify-content: center;
}

.k2t-artist-btn {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  font-family: 'Barlow Condensed', sans-serif;
  font-size: 18px;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--accent);
  text-decoration: none;
  border: 1px solid var(--accent-glow);
  background: linear-gradient(135deg, var(--accent-dim), var(--purple-dim));
  border-radius: 6px;
  padding: 14px 32px;
  transition: background 0.2s, border-color 0.2s;
}

.k2t-artist-btn:hover {
  background: linear-gradient(135deg, rgba(226, 149, 78, 0.28), rgba(45, 5, 82, 0.75));
  border-color: var(--accent);
}

.k2t-artist-btn svg {
  width: 16px;
  height: 16px;
  flex-shrink: 0;
}

/* Bandcamp scaled iframe */
.k2t-bandcamp-wrap {
  position: relative;
  width: 100%;
  /* Visible height — adjust if you want more or less of the page showing */
  height: 560px;
  border-radius: 8px;
  overflow: hidden;
}

.k2t-bandcamp-wrap iframe {
  /* Render at 1.4x the container width then scale down so it fits */
  width: 140%;
  height: 140%;
  border: none;
  transform: scale(0.7143);
  transform-origin: top left;
  display: block;
}

/* Mobile */
@media (max-width: 600px) {
  .k2t-wrapper {
    padding: 28px 16px;
  }

  .k2t-heading {
    font-size: 26px;
    margin-bottom: 20px;
  }

  .k2t-buttons {
    flex-direction: column;
  }

  .k2t-tab-label {
    width: 100%;
    justify-content: center;
    font-size: 16px;
    padding: 13px 16px;
  }

  .k2t-card {
    border-radius: 10px;
  }

  .k2t-card-inner {
    padding: 16px;
  }

  .k2t-embed-container {
    position: relative;
    height: 300px;
    overflow: hidden;
  }

  .k2t-embed-container iframe {
    position: absolute;
    top: 0;
    left: 0;
    height: 300px;
  }

  .k2t-footer {
    margin-top: 14px;
  }

  .k2t-artist-btn {
    width: 100%;
    justify-content: center;
    font-size: 16px;
    padding: 13px 16px;
  }

  /* Tighter scale on mobile — shows roughly the same content in less space */
  .k2t-bandcamp-wrap {
    height: 400px;
  }

  .k2t-bandcamp-wrap iframe {
    width: 160%;
    height: 160%;
    transform: scale(0.625);
    transform-origin: top left;
  }
}
}
#fw-section-custom-html-c621a54d-2c2b-49de-9102-962e548f46a5 {

/* ============================================================
   K2T PROJECTS BOARD — styling
   bg #121212 · card #1a1a1a · accent #E2954E · purple glow #2D0552 · lilac #f3eaff
   ============================================================ */
@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@500;600;700&family=Barlow:wght@400;500;600&display=swap');

#k2t-projects {
  --bg:#121212; --card:#1a1a1a; --accent:#E2954E; --purple:#2D0552; --lilac:#f3eaff; --radius:14px;
  background:var(--bg); color:var(--lilac); font-family:'Barlow',sans-serif;
  min-height:100vh; padding:24px; box-sizing:border-box;
}
#k2t-projects *{box-sizing:border-box;}
#k2t-projects .hidden{display:none !important;}

#k2t-projects h1,#k2t-projects h2,#k2t-projects h3{
  font-family:'Barlow Condensed',sans-serif; text-transform:uppercase;
  letter-spacing:.06em; margin:0; color:var(--lilac);
}

/* LOGIN */
.login-gate{display:flex; align-items:center; justify-content:center; min-height:60vh;}
.login-card{
  background:var(--card); border:1px solid var(--accent); border-radius:var(--radius);
  padding:32px; width:100%; max-width:360px; display:flex; flex-direction:column; gap:12px;
}
.login-card h2{font-size:1.8rem;}
.login-sub{color:#b9a8cc; margin:0 0 6px; font-size:.95rem;}
.login-card input{
  background:#0e0e0e; border:1px solid #333; border-radius:8px; padding:11px 13px;
  color:var(--lilac); font-family:'Barlow',sans-serif; font-size:.95rem;
}
.login-card input:focus{outline:none; border-color:var(--accent);}
.login-error{color:#ff6b6b; font-size:.85rem; min-height:1em; margin:0;}

/* BUTTONS */
.accent-btn,.ghost-btn,.danger-btn,#login-btn{
  font-family:'Barlow Condensed',sans-serif; text-transform:uppercase; letter-spacing:.05em;
  font-size:.95rem; border-radius:8px; padding:9px 16px; cursor:pointer; border:1px solid transparent;
  transition:box-shadow .2s ease, background .2s ease, border-color .2s ease;
}
.accent-btn,#login-btn{background:var(--accent); color:#1a1a1a; font-weight:600;}
.accent-btn:hover,#login-btn:hover{box-shadow:0 0 14px var(--purple);}
.ghost-btn{background:transparent; color:var(--lilac); border-color:#444;}
.ghost-btn:hover{border-color:var(--accent); box-shadow:0 0 12px var(--purple);}
.danger-btn{background:transparent; color:#ff6b6b; border-color:#6b2222;}
.danger-btn:hover{box-shadow:0 0 12px #6b2222; border-color:#ff6b6b;}

/* HEADER */
.board-header{display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:14px; margin-bottom:18px;}
.board-title{display:flex; align-items:baseline; gap:12px;}
.board-title h1{font-size:2.2rem;}
.record-count{color:#b9a8cc; font-size:.9rem; letter-spacing:.04em;}
.board-controls{display:flex; align-items:center; gap:10px; flex-wrap:wrap;}

/* VIEW TOGGLE (Kanban / Table) */
.view-toggle{display:inline-flex; border:1px solid var(--accent); border-radius:8px; overflow:hidden;}
.toggle-btn{
  font-family:'Barlow Condensed',sans-serif; text-transform:uppercase; letter-spacing:.04em;
  font-size:.85rem; padding:8px 14px; cursor:pointer; border:none; background:transparent;
  color:var(--lilac); transition:background .15s ease, color .15s ease;
}
.toggle-btn:hover{background:#201528;}
.toggle-btn.active{background:var(--accent); color:#1a1a1a; font-weight:600;}
.toggle-btn:not(:last-child){border-right:1px solid var(--accent);}

.table-picker{
  background:#0e0e0e; color:var(--lilac); border:1px solid var(--accent); border-radius:8px;
  padding:9px 12px; font-family:'Barlow Condensed',sans-serif; text-transform:uppercase;
  letter-spacing:.04em; cursor:pointer;
}
.table-picker:focus{outline:none; box-shadow:0 0 10px var(--purple);}

/* STATUS MSG */
.status-msg{
  display:none; background:var(--card); border-left:3px solid var(--accent); border-radius:6px;
  padding:10px 14px; margin-bottom:16px; font-size:.9rem; color:#cbb9dd;
}
.status-msg.error{border-left-color:#ff6b6b; color:#ffb3b3;}

/* KANBAN */
.board.kanban{display:flex; gap:16px; overflow-x:auto; padding-bottom:12px; align-items:flex-start;}
.kanban-col{
  background:#161616; border:1px solid #2a2a2a; border-radius:var(--radius);
  min-width:270px; max-width:300px; flex:0 0 auto; display:flex; flex-direction:column;
  max-height:78vh; transition:border-color .15s ease, box-shadow .15s ease;
}
.kanban-col.drag-over{border-color:var(--accent); box-shadow:0 0 16px var(--purple);}
.kanban-col-head{
  font-family:'Barlow Condensed',sans-serif; text-transform:uppercase; letter-spacing:.05em;
  font-size:1.05rem; padding:12px 14px; border-bottom:1px solid #2a2a2a; display:flex;
  align-items:center; justify-content:space-between; color:var(--accent); position:sticky;
  top:0; background:#161616; border-radius:var(--radius) var(--radius) 0 0;
}
.col-count{background:#0e0e0e; color:#b9a8cc; font-size:.8rem; border-radius:20px; padding:2px 9px;}
.kanban-col-body{padding:12px; display:flex; flex-direction:column; gap:12px; overflow-y:auto; min-height:60px;}

/* CARD */
.project-card{
  background:var(--card); border:1px solid var(--accent); border-radius:var(--radius);
  padding:14px; cursor:pointer; transition:box-shadow .2s ease, opacity .15s ease;
}
.project-card:hover{box-shadow:0 0 16px var(--purple);}
.project-card.dragging{opacity:.5;}
.project-card[draggable="true"]{cursor:grab;}
.card-title{
  font-family:'Barlow Condensed',sans-serif; text-transform:uppercase; letter-spacing:.04em;
  font-size:1.15rem; color:var(--lilac); margin-bottom:8px; line-height:1.2;
}
.card-meta{display:flex; justify-content:space-between; gap:10px; font-size:.82rem; padding:3px 0; border-top:1px solid #242424;}
.card-meta-key{color:#8d7ba0; text-transform:uppercase; letter-spacing:.03em; font-size:.72rem; flex:0 0 auto; max-width:45%;}
.card-meta-val{color:#d6c8e6; text-align:right; min-width:0;}
.card-meta-val.clamp{white-space:nowrap; overflow:hidden; text-overflow:ellipsis; max-width:60%;}

/* STRAIGHT TABLE VIEW */
.board.tableview{display:block; overflow-x:auto; padding-bottom:12px;}
.data-table-wrap{
  border:1px solid var(--accent); border-radius:var(--radius); overflow:hidden;
  background:var(--card); min-width:max-content;
}
.data-table{border-collapse:collapse; width:100%;}
.data-table thead th{
  font-family:'Barlow Condensed',sans-serif; text-transform:uppercase; letter-spacing:.05em;
  font-size:.82rem; color:var(--accent); text-align:left; padding:12px 16px;
  background:#161616; border-bottom:1px solid #2a2a2a; white-space:nowrap; position:sticky; top:0;
}
.data-table tbody td{
  padding:11px 16px; font-size:.9rem; color:#d6c8e6; border-bottom:1px solid #242424;
  vertical-align:top; max-width:320px;
}
.data-table tbody tr{cursor:pointer; transition:background .15s ease;}
.data-table tbody tr:hover{background:#201528;}
.data-table tbody tr:last-child td{border-bottom:none;}
.cell-clamp{white-space:nowrap; overflow:hidden; text-overflow:ellipsis;}
.empty-cell{color:#8d7ba0; text-align:center; font-style:italic; cursor:default;}

/* EDIT PANEL */
.edit-overlay{position:fixed; inset:0; background:rgba(0,0,0,.72); display:flex; justify-content:flex-end; z-index:9999;}
.edit-panel{
  background:var(--bg); border-left:1px solid var(--accent); width:100%; max-width:460px;
  height:100%; display:flex; flex-direction:column; box-shadow:-8px 0 40px rgba(45,5,82,.5);
}
.edit-panel-head{display:flex; align-items:center; justify-content:space-between; padding:18px 20px; border-bottom:1px solid #2a2a2a;}
.edit-panel-head h3{font-size:1.3rem;}
.edit-fields{padding:20px; overflow-y:auto; flex:1; display:flex; flex-direction:column; gap:16px;}
.field-row{display:flex; flex-direction:column; gap:6px;}
.field-row label{
  font-family:'Barlow Condensed',sans-serif; text-transform:uppercase; letter-spacing:.04em;
  font-size:.85rem; color:var(--accent); display:flex; align-items:center; gap:8px;
}
.ro-tag{background:#2a2a2a; color:#8d7ba0; font-size:.62rem; padding:2px 6px; border-radius:4px; letter-spacing:.05em;}
.field-row input[type="text"],.field-row input[type="number"],.field-row input[type="date"],
.field-row textarea,.field-row select{
  background:#0e0e0e; border:1px solid #333; border-radius:8px; padding:10px 12px;
  color:var(--lilac); font-family:'Barlow',sans-serif; font-size:.92rem; width:100%;
}
.field-row input:focus,.field-row textarea:focus,.field-row select:focus{
  outline:none; border-color:var(--accent); box-shadow:0 0 10px var(--purple);
}
.field-row textarea{resize:vertical;}
.readonly-input{opacity:.55; cursor:not-allowed;}
.multi-box{display:flex; flex-wrap:wrap; gap:8px;}
.multi-opt{
  display:flex; align-items:center; gap:6px; background:#0e0e0e; border:1px solid #333;
  border-radius:8px; padding:6px 10px; font-size:.85rem; cursor:pointer;
  text-transform:none; letter-spacing:0; color:var(--lilac);
}
.multi-opt input{accent-color:var(--accent);}
.edit-panel-foot{display:flex; align-items:center; justify-content:space-between; padding:16px 20px; border-top:1px solid #2a2a2a;}
.edit-foot-right{display:flex; gap:10px;}

/* SCROLLBARS */
.board.kanban::-webkit-scrollbar,.kanban-col-body::-webkit-scrollbar,
.edit-fields::-webkit-scrollbar,.board.tableview::-webkit-scrollbar{height:8px; width:8px;}
.board.kanban::-webkit-scrollbar-thumb,.kanban-col-body::-webkit-scrollbar-thumb,
.edit-fields::-webkit-scrollbar-thumb,.board.tableview::-webkit-scrollbar-thumb{background:#2D0552; border-radius:8px;}

/* RESPONSIVE */
@media (max-width:640px){
  #k2t-projects{padding:14px;}
  .board-header{flex-direction:column; align-items:stretch;}
  .board-controls{justify-content:space-between;}
  .edit-panel{max-width:100%;}
  .board-title h1{font-size:1.8rem;}
}
}























#fw-section-custom-html-5c3c2bcd-a12a-4e49-b198-f15fbb950f02 {

*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }

:root {
  --k2t-orange: #E2954E;
  --k2t-purple: #2D0552;
}

#k2t-events-wrap {
  position: relative;
  width: 100%;
  /* 16:9 shape so the background video fits the section. */
  aspect-ratio: 16 / 9;
  background: #111;
  font-family: 'Kameron', serif;
  color: #fff;
  overflow: hidden;
}

.k2t-video-bg {
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  overflow: hidden;
}
/* Video fills the 16:9 wrapper, then is scaled up so the baked-in
   black bars + YouTube title/controls overflow out of view.
   Increase the scale (e.g. 1.25) to crop more; decrease toward 1
   to crop less. 1.18 trims roughly the chrome on a 1080p source. */
.k2t-video-bg iframe {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  transform: scale(1.28);
  transform-origin: center center;
  border: none;
  pointer-events: none;
}
.k2t-video-bg::after {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.45);
  z-index: 1;
}

.k2t-video-mask {
  position: absolute;
  inset: 0;
  z-index: 2;
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
  background: rgba(0,0,0,0.3);
  opacity: 1;
  transition: opacity 7s ease, backdrop-filter 7s ease, -webkit-backdrop-filter 7s ease;
  pointer-events: none;
}
.k2t-video-mask.clear {
  opacity: 0;
  backdrop-filter: blur(0px);
  -webkit-backdrop-filter: blur(0px);
}

.k2t-booking {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  z-index: 4;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 1.1rem 2rem 0.9rem;
}
.k2t-booking span {
  display: block;
  font-size: clamp(1rem, 1.6vw, 1.3rem);
  font-weight: 700;
  font-style: italic;
  color: #fff;
  line-height: 1.6;
  text-align: center;
}
.k2t-booking a {
  color: #E2954E;
  text-decoration: none;
}
.k2t-booking a:hover { text-decoration: underline; }

.k2t-tabs {
  position: absolute;
  top: 3.2rem;
  right: 3.5rem;
  z-index: 4;
  display: flex;
  gap: 1.2rem;
  align-items: baseline;
}
.k2t-tab {
  cursor: pointer;
  background: none;
  border: none;
  border-bottom: 2px solid transparent;
  color: rgba(255,255,255,0.4);
  font-family: 'Kameron', serif;
  font-weight: 700;
  font-style: italic;
  font-size: clamp(1rem, 1.8vw, 1.3rem);
  letter-spacing: 0.02em;
  padding: 0 0 3px 0;
  transition: color .2s, border-color .2s;
}

.k2t-content-panel {
  position: absolute;
  inset: 0;
  z-index: 3;
  width: 48%;
  right: 0;
  left: auto;
  padding: 6.5rem 3.5rem 2.5rem 2rem;
  display: flex;
  flex-direction: column;
  justify-content: center;
  overflow-y: auto;
  scrollbar-width: none;
  -ms-overflow-style: none;
}
.k2t-content-panel::-webkit-scrollbar { display: none; }

.k2t-panel { display: none; }
.k2t-panel.active { display: flex; flex-direction: column; gap: 0; }

.k2t-section {
  display: block;
  color: #fff;
  padding: 0.35rem 0;
  flex-shrink: 0;
}
.k2t-section-title {
  display: block;
  font-size: clamp(1.4rem, 3vw, 2.6rem);
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: 0.03em;
  line-height: 1.1;
  transition: opacity 0.35s ease, transform 0.35s ease, color 0.35s ease;
  transform-origin: right center;
}
.k2t-section-count {
  font-size: 0.5em;
  font-weight: 700;
  color: #E2954E;
  vertical-align: middle;
  margin-left: 0.3em;
  opacity: 0.85;
}
.k2t-section-sub {
  display: block;
  font-size: clamp(0.75rem, 1.1vw, 0.88rem);
  font-style: italic;
  color: rgba(255,255,255,0.6);
  margin-top: 0.15rem;
  opacity: 0;
  transform: translateY(4px);
  transition: opacity 0.35s ease 0.05s, transform 0.35s ease 0.05s;
}

.k2t-cards {
  display: none;
  margin-top: 0.5rem;
  flex-direction: column;
  gap: 7px;
}
.k2t-section:hover .k2t-cards { display: flex; }
.k2t-section:hover .k2t-section-sub {
  opacity: 1;
  transform: translateY(0);
}

.k2t-card {
  background: rgba(0,0,0,0.45);
  border: 1px solid rgba(255,255,255,0.10);
  border-left: 2px solid #E2954E;
  border-radius: 8px;
  padding: 9px 12px 8px;
  backdrop-filter: blur(2px);
  -webkit-backdrop-filter: blur(2px);
}
.k2t-card-inner {
  display: flex;
  align-items: center;
  gap: 10px;
}
.k2t-card-details {
  flex: 1;
  min-width: 0;
}

/* Fixed-width container — all three rows are block elements inside
   a known width so text-align: right always hits the same edge */
.k2t-card-datebig {
  flex-shrink: 0;
  width: 72px;
}
.k2t-card-datebig .k2t-date-day,
.k2t-card-datebig .k2t-date-mon,
.k2t-card-datebig .k2t-date-yr {
  display: block;
  width: 72px;
  text-align: right;
  letter-spacing: 0;
  line-height: 1.1;
  white-space: nowrap;
}
.k2t-card-datebig .k2t-date-day {
  font-size: clamp(1.6rem, 3vw, 2.2rem);
  font-weight: 900;
  color: #E2954E;
}
.k2t-card-datebig .k2t-date-mon {
  font-size: clamp(1.6rem, 3vw, 2.2rem);
  font-weight: 900;
  color: #fff;
  text-transform: uppercase;
  margin-top: 2px;
}
.k2t-card-datebig .k2t-date-yr {
  font-size: clamp(0.65rem, 1vw, 0.8rem);
  font-weight: 400;
  color: #fff;
  margin-top: 3px;
}

.k2t-card-name {
  font-size: 1rem;
  font-weight: 700;
  color: #fff;
  margin-bottom: 3px;
  line-height: 1.2;
}
.k2t-card-venue {
  font-size: .78rem;
  color: rgba(255,255,255,0.65);
  margin-bottom: 1px;
}
.k2t-card-location {
  font-size: .76rem;
  color: rgba(255,255,255,0.45);
  margin-bottom: 2px;
}
.k2t-card-date {
  font-size: .78rem;
  font-style: italic;
  color: #E2954E;
  font-weight: 400;
  margin-bottom: 5px;
}
.k2t-card-time {
  font-size: .74rem;
  color: rgba(255,255,255,0.5);
  margin-bottom: 5px;
}
.k2t-card-desc {
  font-size: .74rem;
  color: rgba(255,255,255,0.45);
  font-style: italic;
  margin-bottom: 7px;
  line-height: 1.4;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.k2t-card-desc.clamp-2 { -webkit-line-clamp: 2; }
.k2t-card-desc.clamp-3 { -webkit-line-clamp: 3; }

.k2t-btn {
  display: inline-flex;
  align-items: center;
  text-decoration: none;
  font-family: 'Kameron', serif;
  font-weight: 700;
  font-size: .72rem;
  border-radius: 999px;
  padding: 4px 11px;
  border: 1px solid transparent;
  text-transform: uppercase;
  letter-spacing: .2px;
  transition: transform .2s, box-shadow .2s;
}
.k2t-btn:hover { transform: translateY(-1px); box-shadow: 0 4px 12px rgba(0,0,0,.4); }
.k2t-btn-primary {
  background: linear-gradient(90deg, #2D0552, #E2954E);
  color: #fff;
}

.k2t-seemore-wrap { margin-top: 6px; }
.k2t-seemore {
  cursor: pointer;
  background: transparent;
  border: 1px solid rgba(255,255,255,.18);
  color: rgba(255,255,255,.6);
  font-family: 'Kameron', serif;
  font-size: .72rem;
  font-weight: 700;
  font-style: italic;
  letter-spacing: .4px;
  text-transform: uppercase;
  border-radius: 999px;
  padding: 4px 12px;
  transition: background .2s, color .2s, border-color .2s;
}
.k2t-seemore:hover {
  background: rgba(255,255,255,.08);
  color: #fff;
  border-color: rgba(255,255,255,.35);
}

/* Caption under past sections when more than the shown few exist */
.k2t-recent-note {
  margin-top: 6px;
  font-size: .72rem;
  font-style: italic;
  color: rgba(255,255,255,0.45);
  letter-spacing: .3px;
}

.k2t-empty {
  font-size: .8rem;
  color: rgba(255,255,255,0.4);
  font-style: italic;
  padding: 2px 0;
}
.k2t-loading {
  font-size: .8rem;
  color: rgba(255,255,255,0.4);
  font-style: italic;
}

@media (max-width: 700px) {
  #k2t-events-wrap {
    /* On narrow screens a strict 16:9 gets too short for the content,
       so allow it to grow taller while keeping a sensible minimum. */
    aspect-ratio: auto;
    min-height: 660px;
  }
  .k2t-video-bg iframe {
    /* Cover-fill on mobile, since the wrapper is no longer 16:9 here */
    width: 320vh;
    height: 180vh;
    inset: auto;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
  }
  .k2t-booking { padding: 1rem 1.5rem 0.8rem; }
  .k2t-booking span { font-size: clamp(0.85rem, 4vw, 1rem); }
  .k2t-tabs { top: 5rem; right: 0; left: 0; justify-content: center; }
  .k2t-tab { font-size: 1.1rem; }
  .k2t-content-panel {
    position: relative;
    width: 100%;
    left: 0; right: 0;
    padding: 8rem 1.5rem 2rem;
    justify-content: flex-start;
    overflow-y: visible;
    min-height: 660px;
  }
  .k2t-section-title { font-size: clamp(1.6rem, 8vw, 2.2rem); }
}

@media (prefers-reduced-motion: reduce) {
  .k2t-section-title, .k2t-section-sub, .k2t-cards { transition: none; }
  .k2t-video-bg iframe { display: none; }
  .k2t-video-mask { display: none; }
  .k2t-video-bg::before { content: ""; position: absolute; inset: 0; background: #111; }
}
}
#fw-section-announcement-bar-c477cc15-73a5-4f77-946e-2eefa0592ee1 {
--font-heading-scale: 0.79;
--font-body-scale: 1.54;
}
#fw-section-announcement-bar-c477cc15-73a5-4f77-946e-2eefa0592ee1 {
--color-primary: #121212;
--color-primary-rgb: 18, 18, 18;
--color-background: #e2954e;
--color-background-rgb: 226, 149, 78;
--color-on-background: #fffdf8;
--color-on-background-rgb: 255, 253, 248;
--color-on-primary: #f5efea;
--color-on-primary-rgb: 245, 239, 234;
--color-product-image-background: #fffdf8;
--color-background-brightness: 164;
background-color: var(--color-background);
color: var(--color-on-background);
--primary-btn-bg: #fffdf8;
--primary-btn-text: #e2954e;
--primary-btn-border-color: #121212;
--secondary-btn-bg: transparent;
--secondary-btn-text: #fffdf8;
--secondary-btn-border-color: #fffdf8;

}
#fw-section-video-with-text-02baf828-a424-4d08-92b0-b1f97c73511c {

/* ============================================================
   K2T — PREVIOUS EVENT HIGHLIGHTS ("Video with text" sections)
   Scoped to .video-with-text only. Built from the real rendered HTML.

   Real classes used:
     .video-with-text                  → the whole section
     .video-with-text__video-container → wraps the YouTube iframe
     .video-with-text__heading         → the video title (<h2>)
     .video-with-text__text            → description paragraphs
     .video-with-text__cta             → wraps the button
     .button--primary                  → "Watch on YouTube" button

   Matches the releases aesthetic:
     dark #1a1a1a frame · orange #E2954E accents
     purple #2D0552 glow on hover · 14px rounded corners
     hover-glow only (no lift / no movement)

   Does NOT touch the hidden hero video (.k2t-video-bg) — different
   class, so it's safely excluded.

   Brand: orange #E2954E / purple #2D0552 / dark #1a1a1a
   ============================================================ */

/* ---------- THE VIDEO FRAME ----------
   Turns the iframe wrapper into a release-style card: dark panel,
   faint orange border, rounded corners that clip the video.
   CHANGE: adjust 14px to make corners more/less rounded. */
.video-with-text .video-with-text__video-container {
  background: #1a1a1a !important;
  border: 1px solid rgba(226, 149, 78, 0.18) !important;
  border-radius: 14px !important;
  overflow: hidden !important;
  transition: border-color 0.25s ease, box-shadow 0.25s ease !important;
}

/* Hover: brighter orange border + purple glow — no movement,
   exactly like the product cards on the releases page. */
.video-with-text .video-with-text__video-container:hover {
  border-color: rgba(226, 149, 78, 0.55) !important;
  box-shadow: 0 14px 38px rgba(45, 5, 82, 0.55) !important;
}

/* ---------- The iframe itself ----------
   Round its corners to match the frame and force it to fill width. */
.video-with-text .video-with-text__video-container iframe {
  border-radius: 14px !important;
  display: block !important;
  width: 100% !important;
}

/* ---------- Video title (the "K2T presents..." headings) ----------
   Orange to tie into the brand, matching the releases titles.
   CHANGE: delete this rule to leave the titles white/default.
   CHANGE: swap #E2954E for #ffffff if you want white titles. */
.video-with-text .video-with-text__heading {
  color: #E2954E !important;
}

/* ---------- "Watch on YouTube" button → orange pill ----------
   Restyles the default primary button into the rounded pill used by
   the "See more" button on the releases page: orange outline that
   fills orange on hover. The YouTube icon + text inherit the color.
   CHANGE: delete this whole rule to keep Fourthwall's default button. */
.video-with-text .video-with-text__cta .button--primary {
  background: transparent !important;
  border: 1px solid #E2954E !important;
  color: #E2954E !important;
  border-radius: 999px !important;
  transition: background 0.2s ease, color 0.2s ease !important;
}
.video-with-text .video-with-text__cta .button--primary:hover {
  background: #E2954E !important;
  color: #121212 !important;
}

/* ---------- Spacing around each highlight section ----------
   The sections currently have 0 top/bottom padding, so the two
   videos sit flush. This adds breathing room above/below each one,
   matching the 28px rhythm of the releases grid.
   CHANGE: adjust 28px (larger = more vertical space per video). */
.video-with-text {
  padding-top: 28px !important;
  padding-bottom: 28px !important;
}
}
#fw-section-video-with-text-95cafb8d-3fb5-4b56-af94-cd9d4c8fa5f6 {

/* ============================================================
   K2T — PREVIOUS EVENT HIGHLIGHTS ("Video with text" sections)
   Scoped to .video-with-text only. Built from the real rendered HTML.

   Real classes used:
     .video-with-text                  → the whole section
     .video-with-text__video-container → wraps the YouTube iframe
     .video-with-text__heading         → the video title (<h2>)
     .video-with-text__text            → description paragraphs
     .video-with-text__cta             → wraps the button
     .button--primary                  → "Watch on YouTube" button

   Matches the releases aesthetic:
     dark #1a1a1a frame · orange #E2954E accents
     purple #2D0552 glow on hover · 14px rounded corners
     hover-glow only (no lift / no movement)

   Does NOT touch the hidden hero video (.k2t-video-bg) — different
   class, so it's safely excluded.

   Brand: orange #E2954E / purple #2D0552 / dark #1a1a1a
   ============================================================ */

/* ---------- THE VIDEO FRAME ----------
   Turns the iframe wrapper into a release-style card: dark panel,
   faint orange border, rounded corners that clip the video.
   CHANGE: adjust 14px to make corners more/less rounded. */
.video-with-text .video-with-text__video-container {
  background: #1a1a1a !important;
  border: 1px solid rgba(226, 149, 78, 0.18) !important;
  border-radius: 14px !important;
  overflow: hidden !important;
  transition: border-color 0.25s ease, box-shadow 0.25s ease !important;
}

/* Hover: brighter orange border + purple glow — no movement,
   exactly like the product cards on the releases page. */
.video-with-text .video-with-text__video-container:hover {
  border-color: rgba(226, 149, 78, 0.55) !important;
  box-shadow: 0 14px 38px rgba(45, 5, 82, 0.55) !important;
}

/* ---------- The iframe itself ----------
   Round its corners to match the frame and force it to fill width. */
.video-with-text .video-with-text__video-container iframe {
  border-radius: 14px !important;
  display: block !important;
  width: 100% !important;
}

/* ---------- Video title (the "K2T presents..." headings) ----------
   Orange to tie into the brand, matching the releases titles.
   CHANGE: delete this rule to leave the titles white/default.
   CHANGE: swap #E2954E for #ffffff if you want white titles. */
.video-with-text .video-with-text__heading {
  color: #E2954E !important;
}

/* ---------- "Watch on YouTube" button → orange pill ----------
   Restyles the default primary button into the rounded pill used by
   the "See more" button on the releases page: orange outline that
   fills orange on hover. The YouTube icon + text inherit the color.
   CHANGE: delete this whole rule to keep Fourthwall's default button. */
.video-with-text .video-with-text__cta .button--primary {
  background: transparent !important;
  border: 1px solid #E2954E !important;
  color: #E2954E !important;
  border-radius: 999px !important;
  transition: background 0.2s ease, color 0.2s ease !important;
}
.video-with-text .video-with-text__cta .button--primary:hover {
  background: #E2954E !important;
  color: #121212 !important;
}

/* ---------- Spacing around each highlight section ----------
   The sections currently have 0 top/bottom padding, so the two
   videos sit flush. This adds breathing room above/below each one,
   matching the 28px rhythm of the releases grid.
   CHANGE: adjust 28px (larger = more vertical space per video). */
.video-with-text {
  padding-top: 28px !important;
  padding-bottom: 28px !important;
}
}

#fw-section-custom-html-37436608-8d8b-4c3b-b4fc-fdc34853b18f {

*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }

.home-links {
  position: relative;
  width: 100%;
  min-height: 620px;
  height: calc(100vh - 170px);
  max-height: 900px;
  background: #111;
  display: flex;
  align-items: stretch;
  overflow: hidden;
}

.home-image-panel {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  width: 55%;
  z-index: 0;
  overflow: hidden;
  transform: translateZ(0);
  contain: strict;
}

.home-image-panel img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  min-width: 100%;
  min-height: 100%;
  max-width: 100%;
  max-height: 100%;
  object-fit: cover;
  object-position: 50% 20%;
  opacity: 0;
  filter: grayscale(100%);
  transform: translateZ(0);
  transition: opacity 0.5s ease, filter 0.5s ease;
  will-change: opacity;
  display: block;
  margin: 0;
  padding: 0;
  border: none;
  vertical-align: top;
  flex-shrink: 0;
}

/* Default image — visible until something is hovered */
.home-image-panel img.default {
  opacity: 1;
  filter: grayscale(40%);
}

/* Fade default out when any item is hovered */
.home-links:has(.home-item:hover) .home-image-panel img.default {
  opacity: 0;
}

/* Fade only at the right edge where it meets the nav */
.home-image-panel::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(
    to right,
    rgba(17,17,17,0) 0%,
    rgba(17,17,17,0) 40%,
    rgba(17,17,17,0.7) 75%,
    rgba(17,17,17,1) 100%
  );
  z-index: 1;
  pointer-events: none;
  transform: translateZ(0);
}

.home-nav {
  position: relative;
  z-index: 2;
  margin-left: auto;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 3rem 3.5rem 3rem 2rem;
  width: 48%;
  gap: 0.1rem;
}

.home-item {
  display: block;
  text-decoration: none;
  color: #fff;
  padding: 0.45rem 0;
  height: 6rem;
  overflow: hidden;
}

.home-item-title {
  display: block;
  font-size: clamp(1.8rem, 4vw, 3.6rem);
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: 0.03em;
  line-height: 1.1;
  transition: opacity 0.35s ease, transform 0.35s ease;
  transform-origin: right center;
}

.home-item-desc {
  display: block;
  font-size: clamp(0.85rem, 1.3vw, 1rem);
  font-weight: 400;
  font-style: italic;
  color: rgba(255,255,255,0.8);
  line-height: 1.45;
  margin-top: 0.3rem;
  opacity: 0;
  transform: translateY(4px);
  transition: opacity 0.35s ease 0.05s, transform 0.35s ease 0.05s;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.home-item:hover .home-item-desc {
  opacity: 1;
  transform: translateY(0);
}

/* Dim all other titles when one is hovered */
.home-nav:has(.home-item:hover) .home-item:not(:hover) .home-item-title {
  opacity: 0.2;
  transform: scale(0.95);
}

/* nth-child offset by 1 because default image is first in panel */
.home-links:has(.home-item:nth-child(1):hover) .home-image-panel img:nth-child(2),
.home-links:has(.home-item:nth-child(2):hover) .home-image-panel img:nth-child(3),
.home-links:has(.home-item:nth-child(3):hover) .home-image-panel img:nth-child(4),
.home-links:has(.home-item:nth-child(4):hover) .home-image-panel img:nth-child(5),
.home-links:has(.home-item:nth-child(5):hover) .home-image-panel img:nth-child(6),
.home-links:has(.home-item:nth-child(6):hover) .home-image-panel img:nth-child(7) {
  opacity: 1;
  filter: grayscale(0%);
}

/* Mobile: image fills the whole block, text overlays on top */
@media (max-width: 700px) {
  .home-links {
    height: auto;
    min-height: unset;
    max-height: unset;
    display: flex;
    flex-direction: column;
  }
  .home-image-panel {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
  }
  .home-image-panel::after {
    background: linear-gradient(
      to bottom,
      rgba(17,17,17,0.3) 0%,
      rgba(17,17,17,0.75) 60%,
      rgba(17,17,17,0.95) 100%
    );
  }
  .home-nav {
    width: 100%;
    margin-left: 0;
    padding: 2rem 1.5rem;
    justify-content: flex-end;
    min-height: 620px;
  }
}

/* Reduced motion */
@media (prefers-reduced-motion: reduce) {
  .home-image-panel img,
  .home-item-title,
  .home-item-desc {
    transition: none;
  }
}
}

#fw-section-text-carousel-5604c3c9-86bf-43df-9909-e80e2d72164f {

/* ============================================================
   K2T — "NEW MERCH AVAILABLE" SCROLLING CAROUSEL (CSS)
   Pinned to Fourthwall's real text-carousel classes.
   Palette: k2t-orange #E2954E + k2t-purple #2D0552 on #121212.
   Resting: orange text. Hover: pale lilac text + purple glow.
   Drop into Fourthwall custom CSS — no HTML needed.
   ============================================================ */

/* ---------- THE BAR CONTAINER ----------
   Dark panel with faint orange top/bottom borders to echo the
   card styling used across the site.
   CHANGE: swap the background colour, or the border rgba for a
   stronger/weaker orange edge. */
.text-carousel {
  background: linear-gradient(
    90deg,
    #121212 0%,
    #1a1a1a 50%,
    #121212 100%
  ) !important;
  border-top: 1px solid rgba(226, 149, 78, 0.18) !important;    /* k2t-orange, faint */
  border-bottom: 1px solid rgba(226, 149, 78, 0.18) !important;
  transition: background 0.3s ease, border-color 0.3s ease !important;
}

/* ---------- HOVER: SHIFT THE WHOLE BAR TO PURPLE ----------
   Background takes on a faint k2t-purple tint and the borders shift
   from orange to purple, so the whole strip signals it's clickable.
   CHANGE: adjust the purple tint strength or border alpha. */
.text-carousel:hover {
  background: linear-gradient(
    90deg,
    #1a1a1a 0%,
    #241038 50%,    /* faint k2t-purple lift */
    #1a1a1a 100%
  ) !important;
  border-top-color: rgba(45, 5, 82, 0.7) !important;     /* k2t-purple borders */
  border-bottom-color: rgba(45, 5, 82, 0.7) !important;
}

/* ---------- THE LINK WRAPPER ----------
   The whole bar links to /pages/merch. Kill the default underline. */
.text-carousel__link {
  text-decoration: none !important;
}

/* ---------- EACH "NEW MERCH" UNIT (text + image) ----------
   Force vertical centering so text and image sit dead level.
   CHANGE: adjust the gap (space between text & image) or the
   padding (space between repeated units). */
.text-carousel__line {
  display: inline-flex !important;
  align-items: center !important;            /* centres text + image vertically */
  gap: 16px !important;
  padding: 0 30px !important;
  line-height: 1 !important;                 /* removes extra text line-height that throws off centering */
}

/* ---------- THE SCROLLING TEXT (resting state) ----------
   Orange, uppercase, wide letter-spacing mono-style to match the
   site headings.
   CHANGE: font-size here — this is the main "make it bigger" dial. */
.text-carousel__text {
  font-family: 'Helvetica Neue', Arial, sans-serif !important;
  font-size: 1.1rem !important;              /* CHANGE: bigger/smaller text */
  font-weight: 700 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  line-height: 1 !important;
  color: #E2954E !important;                 /* k2t-orange text (resting) */

  /* Smooth colour + glow change on hover */
  transition: color 0.3s ease, text-shadow 0.3s ease !important;

  /* Very light glow pulse — gently breathes as it scrolls.
     CHANGE SPEED: raise 3.5s for a slower pulse, lower for faster.
     To remove the pulse entirely, delete this animation line. */
  animation: k2tGlowPulse 3.5s ease-in-out infinite !important;
}

/* ---------- HOVER: PALE LILAC TEXT + PURPLE GLOW ----------
   Text shifts to a pale lilac (ties back to the purple) and the glow
   becomes pure k2t-purple — a clear, underline-free state change.
   NOTE: this pauses the pulse on the bright state while hovered,
   then resumes breathing when you move away.
   CHANGE: the hover colour (#f3eaff) or the purple glow alphas. */
.text-carousel:hover .text-carousel__text {
  color: #f3eaff !important;                 /* pale lilac text on hover */
  text-shadow:
    0 0 12px rgba(45, 5, 82, 1),             /* k2t-purple core */
    0 0 24px rgba(45, 5, 82, 0.85),          /* k2t-purple spread */
    0 0 36px rgba(45, 5, 82, 0.5) !important; /* k2t-purple outer halo */
}

/* ---------- THE GLOW PULSE (resting) ----------
   Two very close glow states so the breathing is subtle, not flashy.
   CHANGE: nudge the rgba alpha values up for a more obvious pulse. */
@keyframes k2tGlowPulse {
  0%, 100% {
    text-shadow:
      0 0 8px rgba(45, 5, 82, 0.65),         /* k2t-purple, dimmer */
      0 0 16px rgba(45, 5, 82, 0.40),
      0 0 5px rgba(226, 149, 78, 0.25);      /* faint orange halo */
  }
  50% {
    text-shadow:
      0 0 12px rgba(45, 5, 82, 0.90),        /* k2t-purple, brighter */
      0 0 22px rgba(45, 5, 82, 0.60),
      0 0 8px rgba(226, 149, 78, 0.45);      /* orange halo lifts */
  }
}

/* ---------- THE LITTLE MERCH IMAGE ----------
   Sized to match the text, no border, forced to vertical-align
   middle to kill the slight low-sitting offset.
   CHANGE: height/width to resize, or border-radius for rounding. */
.text-carousel__image {
  height: 34px !important;                   /* CHANGE: image size — keep height = width */
  width: 34px !important;
  object-fit: cover !important;
  border-radius: 6px !important;
  border: none !important;                   /* border removed */
  display: block !important;
  vertical-align: middle !important;
  transition: transform 0.3s ease !important;
}

/* ---------- HOVER: GENTLE IMAGE LIFT ----------
   Tiny scale-up on the thumbnail so it reacts along with the text.
   CHANGE: 1.1 = 10% bigger; lower to 1.05 for subtler, or delete. */
.text-carousel:hover .text-carousel__image {
  transform: scale(1.1) !important;
}

/* ---------- THE IMAGE WRAPPER ----------
   The image sits inside a <span class="text-carousel__media">.
   Make that span a flex box too, so the image can't drift off-centre. */
.text-carousel__media {
  display: inline-flex !important;
  align-items: center !important;
}
}