/* custom css file */

/* HEADER */
header .menu a {
  color: #eee3d0 !important;
  text-transform: uppercase;
}
header .menu a:hover,
header .menu a:active {
  color: #fff !important;
}

header .fl-row-content-wrap {
  padding: 20px 0 !important;
}

header .header-left-menu .fl-node-content {
  margin-left: 0;
}

header .header-right-menu .fl-node-content {
  margin-right: 0;
}

header .fl-menu-icon {
  color: #fff;
}

header .sub-menu {
  background: #000 !important;
}

/* desktop nav groups visible by default */
header .header-left-menu,
header .header-right-menu {
  display: block;
}

/* mobile group hidden by default */
header .header-mobile-menu {
  display: none;
}

@media screen and (max-width: 1200px) {
  header .menu a {
    font-size: 13px;
  }
}

@media screen and (max-width: 1000px) {
  header .header-left-menu,
  header .header-right-menu {
    display: none !important;
  }

  header .header-mobile-menu {
    display: block !important;
  }
}

/* header register button */
.shimmer-btn .fl-button {
  position: relative;
  overflow: hidden;
  background: linear-gradient(
    180deg,
    #f6ecd3 0%,
    #e4cfaa 25%,
    #c89e5f 50%,
    #f3e4c1 70%,
    #b98547 90%,
    #f5ebd7 100%
  );
  border: 1px solid rgba(255,255,255,0.2);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.35),
    0 4px 14px rgba(0,0,0,0.25);
}

/* shimmer sweep */
.shimmer-btn .fl-button::before {
  content: "";
  position: absolute;
  top: -30%;
  left: -120%;
  width: 60%;
  height: 160%;
  transform: rotate(20deg);

  background: linear-gradient(
    90deg,
    rgba(255,255,255,0) 0%,
    rgba(255,255,255,0.15) 35%,
    rgba(255,255,255,0.85) 50%,
    rgba(255,255,255,0.15) 65%,
    rgba(255,255,255,0) 100%
  );

  pointer-events: none;
  animation: shimmerSweep 3s ease-in-out infinite;
}

/* subtle gloss layer */
.shimmer-btn .fl-button::after {
  content: "";
  position: absolute;
  inset: 1px;
  background: linear-gradient(
    180deg,
    rgba(255,255,255,0.2) 0%,
    rgba(255,255,255,0.05) 40%,
    rgba(0,0,0,0.12) 100%
  );
  pointer-events: none;
}

/* text styling */
.shimmer-btn .fl-button-text {
  position: relative;
  z-index: 2;
  color: #2a1f12 !important;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

/* hover polish */
.shimmer-btn .fl-button:hover {
  transform: translateY(-1px);
  filter: brightness(1.05);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.4),
    0 8px 20px rgba(0,0,0,0.3);
}

/* animation */
@keyframes shimmerSweep {
  0% {
    left: -120%;
    opacity: 0;
  }
  10% {
    opacity: 1;
  }
  35% {
    left: 130%;
    opacity: 1;
  }
  36% {
    opacity: 0;
  }
  100% {
    left: 130%;
    opacity: 0;
  }
}

/* MAIN CONTENT */
.full-width-content .site-inner {
    max-width: 100% !important;
}
.full-width-content .content-sidebar-wrap {
    width: 100% !important;
}
.site-inner { margin: 0; }
.content { padding: 0 !important; }
.full-width-content .content {
    width: 100% !important;
}

/* HEADING TAGS */
.content h2 { font-size: 38px !important; text-transform: uppercase !important; }

/* TEXT AREAS */
.text-padded-tan { background: #c9985d !important; padding: 30px !important; }
.text-padded-black { background: #000 !important; padding: 30px !important; }

.text-light,
.text-light h1,
.text-light h2,
.text-light h3,
.text-light h4,
.text-light h5,
.text-light h6,
.text-light p,
.text-light span,
.text-light div,
.text-light li,
.text-light a,
.text-light strong,
.text-light em,
.text-light small,
.text-light label {
    color: #fff !important;
} 

/* VIDEOS */
.fl-bg-video-audio { display: none; }

#home-video .fl-bg-video,
#home-video iframe {
  object-fit: contain !important;
  width: 100% !important;
  height: 100% !important;
  min-height: auto !important;
  background: black; /* or transparent */
}

.video-wrapper {
  position: relative;
  width: 100%;
  padding-top: 56.25%; /* 16:9 aspect ratio = 9/16 = 0.5625 */
  overflow: hidden;
}

.video-wrapper iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 0;
}

/* MOBILE HIDDEN AND DISPLAY */
.mobile-hidden { display: block !important; }
.mobile-display { display: none !important; }

/* HOME CARDS */
#home-cards .fl-col-content {
    position: relative;
    overflow: hidden;
    padding: 0 !important;
}

/* PAGE HEADERS */
/* HERO GRADIENT TEXT */
#page-header h1.heading-title,
#page-header h1.heading-title .title-text{
  background-image: linear-gradient(90deg,
    #ba8d5e 0%,
    #9e6b36 4%,

    /* highlight band 1 */
    #ebdabf 22%,
    #c79258 28%,

    #9e6b36 40%,

    /* highlight band 2 */
    #ebdabf 52%,
    #c79258 58%,

    #9e6b36 70%,

    /* highlight band 3 */
    #ebdabf 82%,
    #9e6b36 88%,

    #ba8d5e 100%
  );

  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;

  display: inline-block;
  font-size: 70px;
}

/* Make the two lines stack nicely */
#page-header h1.heading-title .title-text{
  display: block;
  width: 100%;
}

/* Optional polish */
#page-header h1.heading-title{
  text-transform: uppercase;
  font-weight: 800;
  letter-spacing: 2px;
  line-height: 1.1;
}

.page-header { margin: 0 20px !important; }

/* BUTTONS */
.fl-button, .fl-button:visited { background: #EEE3D1 !important; border-radius: 0 !important; font-weight: bold !important; text-transform: uppercase; font-family: 'Good Pro Bold'; border: none !important; }
.fl-button:active, .fl-button:hover { background: #9e6b36 !important; }
.fl-button:active span, .fl-button:hover span { color: #fff !important; }

.black-btn .fl-button { background: #000 !important; color: #fff !important; }
.black-btn .fl-button span { color: #fff !important; }

.black-btn .fl-button:active, .black-btn .fl-button:hover { background: #9e6b36 !important; }
.black-btn .fl-button:active span, .black-btn .fl-button:hover span { color: #fff !important; }

/* black shimmer button */
.black-shimmer-btn .fl-button {
  position: relative;
  overflow: hidden;

  /* FORCE black */
  background: #000 !important;
  background-image: none !important;

  border: 1px solid rgba(255,255,255,0.15);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.08),
    0 4px 14px rgba(0,0,0,0.5);
}

/* shimmer sweep */
.black-shimmer-btn .fl-button::before {
  content: "";
  position: absolute;
  top: -30%;
  left: -120%;
  width: 50%;
  height: 160%;
  transform: rotate(20deg);

  background: linear-gradient(
    220deg,
    rgba(255,255,255,0) 0%,
    rgba(255,255,255,0.06) 35%,
    rgba(255,255,255,0.35) 50%,
    rgba(255,255,255,0.06) 65%,
    rgba(255,255,255,0) 100%
  );

  pointer-events: none;
  animation: blackShimmerSweep 3.5s ease-in-out infinite;
}

/* subtle gloss */
.black-shimmer-btn .fl-button::after {
  content: "";
  position: absolute;
  inset: 1px;
  background: linear-gradient(
    220deg,
    rgba(255,255,255,0.12) 0%,
    rgba(255,255,255,0.03) 40%,
    rgba(0,0,0,0.3) 100%
  );
  pointer-events: none;
}

/* text */
.black-shimmer-btn .fl-button-text {
  position: relative;
  z-index: 2;
  color: #ffffff !important;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

/* hover */
.black-shimmer-btn .fl-button:hover {
  transform: translateY(-1px);
  filter: brightness(1.1);
  background-color: #9e6b36 !important;
}

@keyframes blackShimmerSweep {
  0% {
    left: -50%;
    opacity: 0;
  }

  /* fade in */
  10% {
    opacity: 1;
  }

  /* slower sweep (~2 seconds of the 3.5s total) */
  60% {
    left: 100%;
    opacity: 1;
  }

  /* fade out quickly */
  62% {
    opacity: 0;
  }

  /* rest (~1.5s) */
  100% {
    left: 100%;
    opacity: 0;
  }
}

/* FULLWIDTH ELEMENTS */
.fullwidth, .fullwidth .fl-button { display: block !important; text-align: center; }

/* MORE INFORMATION SECTION */
#more-information .fl-row-content-wrap { text-transform: uppercase; padding: 80px 0 60px 0 !important; }
.event-width .fl-row-content{
  max-width:1100px;
  margin:0 auto;
}

.event-width h2{
  display:block;
  width:100%;
  margin:0;
}

#more-information h2 { font-size: 90px !important; font-weight: bold; font-family: 'Good Pro Bold'; }

#more-information h3 { font-weight: bold; color: #9e6b36; font-family: 'Good Pro Bold'; }
#more-information h5 { background: url('https://theonenationals.mystagingwebsite.com/wp-content/uploads/2025/06/more-information-header-bg.png') no-repeat center ; display: inline-block !important; width: auto !important; padding: 8px 30px; color: #000 !important; margin: 0 auto 20px; line-height: 100%; }

/* OPENING TEXT SECTIONS */
.opening-text h5 { font-size: 18px !important; }
.opening-text img { padding: 0; border: 1px solid #000; max-width: 100% !important; }

/* FORMS */
::placeholder { color: #777; }

/* contact form */
#gform_10 .gform_footer input[type=submit] { color: #fff; font-size: 22px; text-transform: uppercase; padding: 8px 20px; background: #9e6b36; }
#gform_10 .gform_footer input[type=submit]:hover { background: #777; }

/* signup form */
#signup h3 { color: #000; margin: 0; font-family: 'Good Pro Bold'; font-size: 40px; line-height: 100%; }
#signup .fl-module-html { margin: 0; }
#signup .form-holder {text-align: right; position: relative; }
#signup .gform_wrapper { margin: 0 !important; }
#signup .gform_wrapper form { display: flex; flex-direction: row; justify-content: center; align-items: center; }
#signup .gform_confirmation_wrapper { position: absolute; left: 0; right: 0; bottom: 8px; margin: 0 auto; text-align: center; }
#signup .gform_body { display: block; align-self: flex-end; padding-top: 0; margin-top: 0; flex: 4; }
#signup .ginput_container { margin-top: 0; }
#signup .gform_fields, #signup .gform_footer { display: block; }
#signup .gfield { margin-top: 0 !important; }
#signup .gform_heading { display: none; }
#signup #field_9_1 { border-bottom: 2px solid #000;  }
#signup #input_9_1 { margin-top: 0; background: transparent; border: none; width: 100%; text-transform: uppercase; text-align: center; font-size: 2.2rem !important; }
#signup #input_9_1::placeholder { color: #000; }
#signup .gform_footer { text-align: left; padding: 0; }
#signup .gform_footer input { margin: 0 !important; max-height: 30px; }
#signup #gform_confirmation_message_9 { color: #000; font-size: 24px; }

/* SITE FOOTER */
#site-footer h4 { font-size: 18px; font-weight: bold; }
#site-footer #logos-collaboration img { border: 1px solid #EEE3D1; padding: 20px 40px; }

#site-footer nav li { margin: 0 10px; }
#site-footer nav a, #site-footer nav a:visited { color: #EEE3D1; text-transform: uppercase; }
#site-footer nav a:active, #site-footer nav a:hover { color: #fff; }

#site-footer #logo-bydanceone img { height: 120px; width: auto; }

/* CENTERED COLUMNS */
.column-centered { margin: 0 auto !important; display: block; float: none !important; }

/* TEXT */
.bold-text, .bold-text h1, .bold-text h2, .bold-text h3, .bold-text h4, .bold-text h5, .bold-text h6, .bold-text p, .bold-text li { font-family: 'Good Pro Bold', sans-serif !important; }
.text-dark, .text-dark h1, .text-dark h2, .text-dark h3, .text-dark h4, .text-dark h5, .text-dark h6, .text-dark p, .text-dark li { color: #000 !important; }
.text-light, .text-light h1, .text-light h2, .text-light h3, .text-light h4, .text-light h5, .text-light h6, .text-light p, .text-light li { color: #edddc3 !important; }
.text-white, .text-white h1, .text-white h2, .text-white h3, .text-white h4, .text-white h5, .text-white h6, .text-white p, .text-white li { color: #fff !important; }

b,strong { font-family: 'Good Pro Bold', sans-serif !important; }

h2.heading-bronze-grad{
  background-image: linear-gradient(90deg,
    #4e2a12 0%,     /* deep shadow bronze edge */
    #6d3a18 25%,    /* your bronze */
    #a9652b 45%,    /* mid bronze highlight */
    #da8c3f 55%,    /* your gold */
    #6d3a18 70%,    /* warm bronze */
    #5a2f14 100%    /* dark edge again */
  );

  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
  display: inline-block;
}

.text-large, .text-large p { font-size: 20px !important; }

.fl-module-rich-text { margin: 0 20px 15px !important; }

.no-margin, .no-margin h1, .no-margin h2, .no-margin h3, .no-margin h4, .no-margin h5, .no-margin h6, .no-margin p, .no-margin li { margin: 0 !important; }

/* PASSWORD PROTECTED FORMS */
.ppw-swp-form { text-align: center; max-width: 600px !important; }
.ppw-swp-form label { font-size: 22px; font-weight: bold; color: #000; text-transform: uppercase; text-align: center; margin: 0 0 15px 0; }
.ppw-swp-form input[type=password] { margin: 15px 0; font-size: px; border: 2px solid #000; padding: 10px 20px; text-align: center; }
.ppw-swp-form input[type=submit] { font-size: 22px;  background: transparent !important; padding: 10px 20px !important; line-height: 100% !important; border-radius: 0; color: #9e6b36 !important; border: 2px solid #9e6b36 !important; font-size: 16px !important; text-transform: uppercase; font-family: 'GT America Bold', sans-serif !important; letter-spacing: 3px !important; transition-duration: 0.2s !important; text-decoration: none !important; }
.ppw-swp-form input[type=submit]:hover { color: #fff !important; border: 2px solid #fff !important; background: #9e6b36 !important; }

.ppw-post-password-container { text-align: center; font-size: 22px; }
.ppw-ppf-input-container { padding: 30px 0; }
.ppw-ppf-field-container { margin: 15px 0 0 !important; font-size:  20px; }
.ppw-ppf-field-container label { font-size: 20px; }
.ppw-ppf-field-container input[type="password"] { font-size: 20px; margin: 0 10px; }
.ppw-ppf-field-container input[type="submit"] { font-size: 20px; }

/* GOOGLE RECAPTCHA */
.grecaptcha-badge { 
    visibility: hidden;
}
/* TABLES */
.tablepress thead th{
  background: linear-gradient(
    90deg,
    #9e6b36 0%,
    #edddc3 50%,
    #9e6b36 100%
  );
  color:#000 !important;
  padding:8px 14px;
  font-size:22px !important;
  font-weight:bold !important;
  font-family:'Good Pro Bold';
  border: 2px solid #000;
}
.tablepress thead .row-2 th{
  color: #eadec6 !important;
}
.tablepress td{
  background:transparent !important;
  color:#000 !important;
  padding: 8px 14px !important;
}

table.tablepress{
  border-collapse:separate;        /* needed for radius */
  border-spacing:0;
  border:2px solid #000;           /* outer frame */
  border-radius:0;              /* rounded frame */
  overflow:hidden;                 /* clip interior to radius */
}

.tablepress tr { background: transparent !important; }

.tablepress thead tr:first-child{ background: transparent !important; }

/* Cell borders (single lines inside) */
.tablepress th{
  border:1px solid #000;           /* header grid lines */
}
.tablepress td{
  border:1px solid #000 !important;
}

/* Remove inner duplicates */
.tablepress tr:not(:first-child) th,
.tablepress tr:not(:first-child) td{ border-top:none; }
.tablepress th:not(:last-child),
.tablepress td:not(:last-child){ border-right:none; }

/* ---- Bottom corner fix ---- */
/* No bottom cell border on the last row so the 2px outer frame shows cleanly */
.tablepress tbody tr:last-child td{ border-bottom:none; }

/* Round bottom-left & bottom-right cells */
.tablepress tbody tr:last-child td:first-child{ border-bottom-left-radius:0; }
.tablepress tbody tr:last-child td:last-child{  border-bottom-right-radius:0; }

tfoot th { background: #eadec6 !important; }
tfoot tr { border: none !important; }

/* Remove tfoot borders */
.tablepress tfoot th,
.tablepress tfoot td {
  border: none !important;
  background: transparent !important;
}

/* Optional: if you want to completely hide it visually */
.tablepress tfoot {
  display: none;
}

/* PERFORMANCE DIVISIONS TABLE */
.tablepress-id-2 th,
.tablepress-id-2 td {
	width: 50%;
}

/* PERFORMANCE DIVISIONS TABLE */
.tablepress-id-3 th.column-1,
.tablepress-id-3 td.column-1 {
	width: 25%;
}

/* FULL WEEK SCHEDULE TABLE */
#tablepress-6 td { vertical-align: middle; }

#tablepress-6 .column-1 { background-color: #000 !important; color: #fff !important; border-bottom: 1px solid #fff !important; }

/* AGE DIVISIONS TABLE 2 */
.tablepress-id-7 th,
.tablepress-id-7 td {
	width: 50%;
}

/* --- UNIFIED TABLE STYLES (MATCHING SAMPLE OUTLINE) --- */
/* ===== A) Scroll wrapper (required for mobile horizontal scroll) ===== */
.schedule-wrap{
  max-width: 100%;
  overflow-x: auto;
  overflow-y: visible;
  -webkit-overflow-scrolling: touch;
  position: relative; /* helps sticky behave */
}

/* ===== 1) Base Table Container ===== */
table.schedule {
  width: 100%;
  min-width: 900px;            /* <— add: forces horizontal scroll on mobile */
  border-collapse: separate;
  border-spacing: 0;
  border: 2px solid #000;      /* Matching the outer 2px frame */
  border-radius: 0;
  font-family: 'Arial', sans-serif; /* Fallback if 'Good Pro Bold' isn't loaded */
}

/* ===== 2) Header Gradient (The "Gold" Bar) ===== */
table.schedule thead th {
  background: linear-gradient(
    90deg,
    #9e6b36 0%,
    #edddc3 50%,
    #9e6b36 100%
  );
  color: #000 !important;
  padding: 8px 14px;
  font-size: 18px;
  font-weight: bold;
  text-transform: uppercase;
  border: 1px solid #000;

  /* optional sticky header row */
  position: sticky;
  top: 0;
  z-index: 2;
}

/* ===== 3) Body Cells (Light Background, Black Text) ===== */
table.schedule td {
  background: #fff !important;
  color: #000 !important;
  padding: 8px 14px;
  border: 1px solid #000;
  vertical-align: middle;
  text-align: center;
}

/* ===== 4) Special Row Handling (Bands & Breaks) ===== */
table.schedule td.band, 
table.schedule td.break,
table.schedule td.subband {
  background: #eadec6 !important;
  font-weight: bold;
  text-transform: uppercase;
  letter-spacing: 1px;
}

/* ===== 5) Clean up inner borders ===== */
table.schedule tr td {
  border-top: none;
  border-left: none;
}

/* Ensure the first column and header have left borders */
table.schedule td:first-child, 
table.schedule th:first-child {
  border-left: 1px solid #000;
}

/* Handle the 'Time' column specifically */
table.schedule td.time {
  font-weight: bold;
  background: #f9f9f9 !important;
}

/* ===== 6) Formatting for the 'Tight' cells (Little Ones) ===== */
table.schedule td.tight {
  font-size: 13px;
  line-height: 1.3;
  text-align: left;
}

/* ===== 7) Bottom Row Fix ===== */
table.schedule tbody tr:last-child td {
  border-bottom: none;
}

/* ===== B) Sticky FIRST column (this is the key) ===== */
table.schedule th:first-child,
table.schedule td:first-child{
  position: sticky;
  left: 0;
  z-index: 5;

  /* MUST be opaque so scrolled content doesn't show through */
  background: #f9f9f9 !important; /* matches your .time column look */
}

/* Top-left corner cell needs to sit above header + first column */
table.schedule thead th:first-child{
  z-index: 10;
}


/* small logos */
.logo-small img { max-height: 30px; width: auto; }

/* Target ONLY that 3-logo nested group */
.opening-text .fl-node-w8ixcjnfdae7{
  display: inline-flex !important;      /* shrink-wrap box to content */
  align-items: center !important;
  justify-content: center !important;
  flex-wrap: nowrap !important;         /* stop wrapping */
  gap: 40px;

  border: 1px solid rgba(235, 218, 191, 0.55);
  padding: 18px 45px;
  margin: 0 auto;

  width: auto !important;
  max-width: 100% !important;
}

/* Force Beaver columns to behave in a flex row (and shrink if needed) */
.opening-text .fl-node-w8ixcjnfdae7 > .fl-col{
  float: none !important;
  width: auto !important;
  min-width: 0 !important;
  flex: 0 1 auto !important;            /* allow shrink */
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* Remove extra spacing from modules */
.opening-text .fl-node-w8ixcjnfdae7 .fl-module,
.opening-text .fl-node-w8ixcjnfdae7 .fl-photo,
.opening-text .fl-node-w8ixcjnfdae7 .fl-photo-content{
  margin: 0 !important;
}

/* Consistent logo sizing */
.opening-text .fl-node-w8ixcjnfdae7 img{
  display: block;
  height: 58px;
  width: auto;
  max-width: 100%;
}

/* Mobile: allow wrap so it doesn't overflow */
@media (max-width: 640px){
  .opening-text .fl-node-w8ixcjnfdae7{
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 14px;
    padding: 14px 16px;
  }
  .opening-text .fl-node-w8ixcjnfdae7 img{
    height: 48px;
  }
}

/* INDIVIDUAL ARTIST PAGES */
.single-artist .entry-header { display: none; }
/* ============================
   SINGLE ARTIST PROFILE (RIGHT COL)
   Match "directors / producers" styling
   ============================ */

.artist-single-profile { color: #fff; }

/* Logo spacing */
.artist-single-profile .artist-logo img{
  display: block;
  height: 70px;           /* tweak */
  width: auto;
  margin: 0 0 18px 0;
}
.artist-logo-mobile { display: none !important; }

/* Name uses your radial gradient + font */

.artist-single-profile .artist-name{
  font-family: 'Good Pro Bold', sans-serif !important;
  text-transform: uppercase;
  font-size: 90px !important;
  line-height: 100%;
  margin: 40px 0 0 !important;
  color: #EEE3D1 !important;
  background: none !important;
}

.artist-single-profile .artist-name {
  display: inline-block;
  word-spacing: 99vw; /* This forces the second word to wrap */
  line-height: 1.0 !important;    /* Adjust based on your design */
}

/* Tour pill matches your directors .tour */
.artist-single-profile .artist-tour{
  display: block;
  width: fit-content;
  margin: 18px 0 14px;

  background: linear-gradient(90deg,
    rgba(158,107,54,1) 0%,
    rgba(237,221,195,1) 25%,
    rgba(158,107,54,1) 50%,
    rgba(237,221,195,1) 75%,
    rgba(158,107,54,1) 100%
  );
  padding: 4px 20px;
  text-transform: uppercase;
  color: #000;
  font-family: 'Good Pro Bold', sans-serif;
  font-size: 24px;
}

/* Position + social mimic your archive */
.artist-single-profile .artist-position,
.artist-single-profile .artist-social a{
  display: block;
  text-transform: uppercase;
  font-size: 20px;
  color: #edddc3 !important;
  font-family: 'Good Pro Narrow Bold', sans-serif !important;
  margin: 0;
}

.artist-single-profile .artist-social a{
  text-decoration: none;
  margin-top: 10px;
}

.artist-single-profile .artist-social a:hover{
  color: #fff !important;
}

/* Optional: tighten spacing if needed */
.artist-single-profile span{
  display: block;
  clear: both;
}

/* TOC */
.ez-toc-sticky { display: none; }
.toc-display .ez-toc-sticky { display: block; }
.ez-toc-icon-toggle-span svg { fill: #fff !important; color: #fff !important; }
#ez-toc-sticky-container a, #ez-toc-sticky-container a:visited, #ez-toc-container a, #ez-toc-container a:visited { color: #fff !important; }
#ez-toc-sticky-container a:hover { color: #eee3d1 !important; }
#ez-toc-container ul.ez-toc-list { margin: 15px; }
#ez-toc-container ul.ez-toc-list li { margin: 0 0 15px; }
.post-format-image { display: none; }
#ez-toc-container { display: none; margin: -60px 0 0 !important; }

.ez-toc-open-icon { background: #000; border: 1px solid #EEE3D0; color: #fff !important; }
.ez-toc-open-icon:hover { color: #fff !important; }

.ez-toc-sticky-fixed .ez-toc-sidebar .ez-toc-sticky-title-container, .ez-toc-sticky-fixed .ez-toc-sidebar { background: #000; }
.ez-toc-sticky-title { color: #fff !important; }
.ez-toc-close-icon { color: #fff !important; }

/* ABOUT PAGE */
/* ============================
   TOUR DIRECTORS HOVER LOGOS
   View ID: 11083
   ============================ */

/* Optional: tighten up default column spacing if needed */
.js-wpv-view-layout-11083 .row{
  row-gap: 24px;
}
.js-wpv-view-layout-11083 .col-md-6{
  position: relative;
}

/* Card wrapper */
.js-wpv-view-layout-11083 .td-card{
  position: relative;
}

/* Image wrapper (creates stacking context for overlay + logo) */
.js-wpv-view-layout-11083 .td-photo{
  position: relative;
  overflow: hidden;
}

/* Featured image */
.js-wpv-view-layout-11083 .td-photo img{
  display: block;
  width: 100%;
  height: auto;
  position: relative;
  z-index: 0;
}

/* Dark overlay (sits ABOVE image, BELOW logo) */
.js-wpv-view-layout-11083 .td-photo::after{
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,0);
  transition: background 220ms ease;
  pointer-events: none;
  z-index: 1;
}

/* Logo overlay (sits ABOVE overlay) */
.js-wpv-view-layout-11083 .td-logo{
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%,-50%) scale(0.98);
  width: 62%;
  max-width: 320px;
  aspect-ratio: 3 / 1;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  opacity: 0;
  transition: opacity 220ms ease, transform 220ms ease;
  pointer-events: none;
  z-index: 2;

  /* Optional: helps the logo read on busy photos */
  filter: drop-shadow(0 10px 22px rgba(0,0,0,.55));
}

/* Hover state */
.js-wpv-view-layout-11083 .td-photo:hover::after{
  background: rgba(0,0,0,.45);
}
.js-wpv-view-layout-11083 .td-photo:hover .td-logo{
  opacity: 1;
  transform: translate(-50%,-50%) scale(1);
}

/* Logo image mapping */
.js-wpv-view-layout-11083 .td-logo--radix{
  background-image: url('https://theonenationals2026.mystagingwebsite.com/wp-content/uploads/2026/02/logo-radix.png');
}
.js-wpv-view-layout-11083 .td-logo--ovation{
  background-image: url('https://theonenationals2026.mystagingwebsite.com/wp-content/uploads/2026/02/logo-ovation.png');
}
.js-wpv-view-layout-11083 .td-logo--kaos{
  background-image: url('https://theonenationals2026.mystagingwebsite.com/wp-content/uploads/2026/02/logo-kaos.png');
}

/* Mobile: allow a slightly smaller logo */
@media (max-width: 768px){
  .js-wpv-view-layout-11083 .td-logo{
    width: 70%;
    max-width: 280px;
  }
  .js-wpv-view-layout-11083 .td-photo:hover::after{
    background: rgba(0,0,0,.42);
  }
}

/* ============================
   ARTISTIC & PROGRAM DIRECTORS
   Hover overlay + logo (Radix/Ovation)
   View ID: 11109
   ============================ */

.js-wpv-view-layout-11109 .col-md-6{
  position: relative;
}

/* Card wrapper */
.js-wpv-view-layout-11109 .apd-card{
  position: relative;
}

/* Image wrapper */
.js-wpv-view-layout-11109 .apd-photo{
  position: relative;
  overflow: hidden;
}

/* Image */
.js-wpv-view-layout-11109 .apd-photo img{
  display: block;
  width: 100%;
  height: auto;
  position: relative;
  z-index: 0;
}

/* Dark overlay */
.js-wpv-view-layout-11109 .apd-photo::after{
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,0);
  transition: background 220ms ease;
  pointer-events: none;
  z-index: 1;
}

/* Logo overlay (base) */
.js-wpv-view-layout-11109 .apd-logo{
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%,-50%) scale(0.98);
  width: 62%;
  max-width: 320px;
  aspect-ratio: 3 / 1;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  opacity: 0;
  transition: opacity 220ms ease, transform 220ms ease;
  pointer-events: none;
  z-index: 2;

  filter: drop-shadow(0 10px 22px rgba(0,0,0,.55));
}

/* Hover */
.js-wpv-view-layout-11109 .apd-photo:hover::after{
  background: rgba(0,0,0,.45);
}
.js-wpv-view-layout-11109 .apd-photo:hover .apd-logo{
  opacity: 1;
  transform: translate(-50%,-50%) scale(1);
}

/* Logo mapping */
.js-wpv-view-layout-11109 .apd-logo--radix{
  background-image: url('https://theonenationals2026.mystagingwebsite.com/wp-content/uploads/2026/02/logo-radix.png');
}
.js-wpv-view-layout-11109 .apd-logo--ovation{
  background-image: url('https://theonenationals2026.mystagingwebsite.com/wp-content/uploads/2026/02/logo-ovation.png');
}

/* Responsive */
@media (max-width: 768px){
  .js-wpv-view-layout-11109 .apd-logo{
    width: 70%;
    max-width: 280px;
  }
}
@media (max-width: 420px){
  .js-wpv-view-layout-11109 .apd-logo{
    width: 78%;
    max-width: 240px;
  }
}

/* ============================
   EXECUTIVE DIRECTORS
   Hover overlay + logo (Radix/Ovation)
   View ID: 11109
   ============================ */

.js-wpv-view-layout-11114 .col-md-6{
  position: relative;
}

/* Card wrapper */
.js-wpv-view-layout-11114 .apd-card{
  position: relative;
}

/* Image wrapper */
.js-wpv-view-layout-11114 .apd-photo{
  position: relative;
  overflow: hidden;
}

/* Image */
.js-wpv-view-layout-11114 .apd-photo img{
  display: block;
  width: 100%;
  height: auto;
  position: relative;
  z-index: 0;
}

/* Dark overlay */
.js-wpv-view-layout-11114 .apd-photo::after{
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,0);
  transition: background 220ms ease;
  pointer-events: none;
  z-index: 1;
}

/* Logo overlay (base) */
.js-wpv-view-layout-11114 .apd-logo{
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%,-50%) scale(0.98);
  width: 62%;
  max-width: 320px;
  aspect-ratio: 3 / 1;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  opacity: 0;
  transition: opacity 220ms ease, transform 220ms ease;
  pointer-events: none;
  z-index: 2;

  filter: drop-shadow(0 10px 22px rgba(0,0,0,.55));
}

/* Hover */
.js-wpv-view-layout-11114 .apd-photo:hover::after{
  background: rgba(0,0,0,.45);
}
.js-wpv-view-layout-11114 .apd-photo:hover .apd-logo{
  opacity: 1;
  transform: translate(-50%,-50%) scale(1);
}

/* Logo mapping */
.js-wpv-view-layout-11114 .apd-logo--radix{
  background-image: url('https://theonenationals2026.mystagingwebsite.com/wp-content/uploads/2026/02/logo-radix.png');
}
.js-wpv-view-layout-11114 .apd-logo--ovation{
  background-image: url('https://theonenationals2026.mystagingwebsite.com/wp-content/uploads/2026/02/logo-ovation.png');
}

/* Responsive */
@media (max-width: 768px){
  .js-wpv-view-layout-11114 .apd-logo{
    width: 70%;
    max-width: 280px;
  }
}
@media (max-width: 420px){
  .js-wpv-view-layout-11114 .apd-logo{
    width: 78%;
    max-width: 240px;
  }
}

.directors .row, .producers .row { margin: 40px 0 0; }
.directors .row:nth-child(1), .producers .row:nth-child(1) { margin: 0; }
.directors h2, .producers h2 { text-align: center; font-family: 'Good Pro Bold', sans-serif !important; font-size: 60px !important; background: #EDDDC3; background: radial-gradient(circle,rgba(238, 223, 196, 1) 0%, rgba(120, 70, 19, 1) 100%); color: transparent; -webkit-background-clip: text;  -webkit-text-fill-color: transparent; background-clip: text; line-height: 100%; margin: 0; }
.directors span, .producers span { display: block; clear: both; width: fit-content; }
.directors .tour { margin: 20px 0 0; background: linear-gradient(90deg,rgba(158, 107, 54, 1) 0%, rgba(237, 221, 195, 1) 25%, rgba(158, 107, 54, 1) 50%, rgba(237, 221, 195, 1) 75%, rgba(158, 107, 54, 1) 100%); padding: 4px 20px; text-transform: uppercase; color: #000; font-family: 'Good Pro Bold', sans-serif; }
.directors .name, .producers .name { font-family: 'Good Pro Narrow Bold', sans-serif !important; }
.directors .name { text-transform: uppercase; font-size: 40px; line-height: 100%; margin: 15px 0 0; }
.directors .position, .directors .social-link a { text-transform: uppercase; font-size: 20px; color: #edddc3 !important; }
.directors .social-link a:hover { color: #fff !important; }
.producers .name { text-transform: uppercase; font-size: 22px; line-height: 100%; margin: 15px 0 0; }
.producers .position { text-transform: uppercase; font-size: 14px; }

.executive-producer .js-wpv-view-layout { max-width: 280px; margin: 0 auto;}
.executive-producer img { max-height: 240px; width: auto; margin: 0 auto; }
.executive-producer .name { color: #8B7551 !important; }

/* artistic directors */
.artistic-directors.directors .name, .executive-producer .name { text-transform: uppercase; font-size: 24px; line-height: 100%; margin: 15px 0 0; }
.artistic-directors.directors .position, .executive-producer .position { text-transform: uppercase; font-size: 16px; color: #edddc3 !important; }
.artistic-directors.directors .social-link { display: none; }

.artistic-directors img { max-height: 100%; width: auto !important; margin: 0 auto; }

/* BLACK GRADIENT HEADERS */
/* ==========================================
   BLACK BAR (The Parent Module)
   ========================================== */
.fl-module.black-gradient {
  background-color: #000000 !important;
  padding: 22px 28px !important;
  margin: 0 0 15px !important;
  display: block !important;
}

/* ==========================================
   GOLD GRADIENT (The Inner H2)
   ========================================== */
.black-gradient h2 {
  /* Remove default BB margins so it fits the black bar perfectly */
  margin: 0 !important;
  padding: 0 !important;
  
  /* Typography */
  font-weight: 800 !important;
  letter-spacing: 1.5px !important;
  line-height: 1.1 !important;
  text-transform: uppercase !important;

  /* The Gradient Clip */
  background-image: linear-gradient(
    90deg,
    #9e6b36 0%,
    #ebdabf 40%,
    #9e6b36 100%
  ) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  color: transparent !important;
}

.gradient-heading {
font-family: 'Good Pro Bold' !important;
  background-image: linear-gradient(90deg,
    #ba8d5e 0%,
    #9e6b36 4%,

    /* highlight band 1 */
    #ebdabf 22%,
    #c79258 28%,

    #9e6b36 40%,

    /* highlight band 2 */
    #ebdabf 52%,
    #c79258 58%,

    #9e6b36 70%,

    /* highlight band 3 */
    #ebdabf 82%,
    #9e6b36 88%,

    #ba8d5e 100%
  );

  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
    font-weight: bold !important;
}

/* ==========================================
   EZ-TOC COMPATIBILITY
   ========================================== */
/* Prevents TOC markers from creating gaps in the gradient or bar */
.black-gradient .ez-toc-section {
  position: absolute !important;
}

/* RESERVATIONS PAGE */
.city-info i { margin: 0 10px 0 0; width: 20px; }
.city-info li { list-style: none !important; margin: 0 !important; }

/* GRADIENT TEXT - GOLD */
/* Keep the whole heading on one row */
.pp-heading.pp-separator--inline {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 18px;
}

/* Let the separator areas grow so the lines stay visible */
.pp-heading.pp-separator--inline .pp-heading-separator {
	flex: 1 1 0;
	display: flex;
	align-items: center;
}

/* Actual separator line */
.pp-heading.pp-separator--inline .pp-heading-separator span {
	display: block;
	width: 100%;
	height: 2px;
	background: #d8c39a; /* light gold/cream line */
}

/* Prevent heading text from stretching weirdly */
.pp-heading.pp-separator--inline .heading-title {
	flex: 0 0 auto;
	margin: 0;
	line-height: 1;
}

/* Apply the gold gradient ONLY to the text */
.pp-heading.pp-separator--inline .heading-title .title-text, .pp-heading .heading-title .title-text {
	display: inline-block;
	background: linear-gradient(
		90deg,
		#a8743c 0%,
		#c9975b 25%,
		#f1d6a6 50%,
		#c9975b 75%,
		#a8743c 100%
	);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	background-clip: text;
	color: transparent;
	text-transform: uppercase;
}

/* MOBILE */
@media screen and (max-width: 1140px) {
    /* MORE INFORMATION SECTION */
    #more-information h2 { font-size: 70px !important; }
    /* HOME CARDS */
    #home-cards .pp-primary-title, #home-cards .pp-secondary-title { font-size: 48px; }
}
@media screen and (max-width: 1000px) {
    #menu-mobile-menu .sub-menu { padding: 0; }
}
@media screen and (max-width: 1040px) {
    /* HOME CARDS */
    #home-cards .pp-primary-title, #home-cards .pp-secondary-title { font-size: 40px; }
    /* PERFORMANCE DIVISIONS TABLE */
    .tablepress-id-3 th.column-1,
    .tablepress-id-3 td.column-1 {
        width: 25%;
    }
}   
@media screen and (max-width: 1000px) { 
    /* MOBILE HIDDEN AND DISPLAY */
    .mobile-hidden { display: none !important; }
    .mobile-display { display: block !important; }
}
@media screen and (max-width: 900px) {
    /* NEWSLETTER SIGNUP */
    #signup h3 { font-size: 36px; }
    /* MORE INFORMATION SECTION */
    #more-information h2 { font-size: 56px !important; }
    /* HOME CARDS */
    #home-cards .pp-primary-title, #home-cards .pp-secondary-title { font-size: 35px; }
}
@media screen and (max-width: 768px) { 
    /* HEADER */
    header .fl-col-small { width: 33.33333% !important; }
    header .fl-col-group.fl-col-group-equal-height {
        display: flex;
    }
    
    /* MORE INFORMATION SECTION */
    #more-information h2 { font-size: 42px !important; }
    
    /* HOME CARDS */
    #home-cards .pp-primary-title, #home-cards .pp-secondary-title { font-size: 48px; }

    /* ABOUT PAGE */
    .directors.fl-module, .producers.fl-module { margin-top: 0; }
    .directors .row, .producers .row { margin: 0; }
    .directors .col-md-6, .producers .col-md-4 { margin: 0 auto 30px; }
    .directors .name { font-size: 30px; }
    .opening-text .fl-col { width: 80% !important; }
    .opening-text p { font-size: 16px !important; }
    .directors h2, .producers h2 { font-size: 40px !important; }
    
    .directors span, .producers span { margin: 0 auto 10px !important; line-height: 100% !important; }
    .directors span.tour { margin: 15px auto 10px !important; padding: 15px 20px; }
    .apd-card { margin: 0 auto 25px; }
    .artistic-directors.directors .name, .executive-producer .name { margin: 15px auto 5px !important; }
    .artistic-directors.directors .position, .executive-producer .position { margin: 0 auto; }
    
    .apd-logo{ max-width: 70% !important; }
    
    /* SINGLE ARTIST PAGES */
    .artist-single-profile .artist-logo img{ display: none; }
    .artist-single-profile .artist-logo-mobile { display: block; margin: 0 auto 15px; }
    .artist-single-profile .artist-name{ font-size: 48px !important; margin: 20px auto !important; }
    .artist-single-profile, .artist-single-profile .artist-tour{ text-align: center !important; margin: 0 auto !important;  }
    .artist-single-profile .artist-logo img{ display: none; }
    .artist-logo-mobile { display: block !important; margin: 25px auto !important; text-align: center;  }
    
    /* Target ONLY that 3-logo nested group */
    .opening-text .fl-node-w8ixcjnfdae7{
        margin: 0 20px; 
    }
    
    .opening-text .fl-node-w8ixcjnfdae7 img { max-height: 25px; width: auto; }

    /* FORMS */
    #signup h3 { margin: 0 auto; }
    #signup #gform_confirmation_wrapper_9 { position: relative; padding: 25px 0 0; }

    /* COLUMNS */
    .fl-col-small { width: 100% !important; }
}

@media screen and (max-width: 600px) { 
    #more-information h2 { font-size: 30px !important; }
    #more-information h2.mobile-larger  { font-size: 46px !important; }
    /* PAGE HEADERS */
    #page-header h1.heading-title, #page-header h1.heading-title .title-text { font-size: 56px !important; }
    }
    /* HOME CARDS */
    #home-cards .pp-primary-title, #home-cards .pp-secondary-title { font-size: 40px; }
    /* PERFORMANCE DIVISIONS TABLE */
    .tablepress-id-3 th.column-1,
    .tablepress-id-3 td.column-1 {
        width: 50%;
    }

@media screen and (max-width: 575px) { 
.artistic-directors.directors .name, .executive-producer .name { margin: 15px auto 0; }
.artistic-directors.directors .position, .executive-producer .position { margin: 0 auto; }
}

@media screen and (max-width: 560px) { 
    .opening-text .fl-node-w8ixcjnfdae7 img { max-height: 18px; width: auto; }
}