.elementor-kit-8{--e-global-color-primary:#A43F1C;--e-global-color-secondary:#124332;--e-global-color-text:#822430;--e-global-color-accent:#D9CEAF;--e-global-typography-primary-font-family:"Roboto";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Roboto Slab";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Roboto";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Roboto";--e-global-typography-accent-font-weight:500;}.elementor-kit-8 e-page-transition{background-color:#FFBC7D;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}
/* Start custom CSS */@import url("https://fonts.googleapis.com/css2?family=Barlow:wght@400;500;600;700;800;900&family=Oswald:wght@400;500;600;700&display=swap");

:root {
  --cp-black: #030504;
  --cp-ink: #06110d;
  --cp-emerald: #073c32;
  --cp-emerald-hover: #0b594a;
  --cp-cream: #d9ceaf;
  --cp-snow: #f4efe2;
  --cp-maroon: #822430;
  --cp-rust: #a43f1c;
  --cp-line: rgba(217, 206, 175, 0.16);
}

/* Remove spacing around Header/Footer shortcode widgets */
[data-elementor-type="header"] .elementor-widget-shortcode .elementor-widget-container,
[data-elementor-type="footer"] .elementor-widget-shortcode .elementor-widget-container {
  margin: 0 !important;
  padding: 0 !important;
}

/* Existing WooCommerce / theme cleanup */
body.single-product #site-header,
body.single-product #site-footer,
body.single-product .entry-header,
body.single-product .page-header,
body.single-product .woocommerce-breadcrumb,
body.single-product .page-title,
body.single-product .entry-title,
#site-footer {
  display: none !important;
}

body.single-product .site,
body.single-product .site-content,
body.single-product main#content,
body.single-product .site-main,
body.single-product .content-area {
  margin-top: 0 !important;
  padding-top: 36px !important;
}

body.tax-product_cat,
body.tax-product_tag,
body.woocommerce,
body.woocommerce-page,
body.woocommerce main#content,
body.woocommerce .site-main,
body.woocommerce .entry-content,
body.woocommerce-page main#content,
body.woocommerce-page .site-main,
body.woocommerce-page .entry-content,
body.post-type-archive-product main#content,
body.post-type-archive-product .site-main,
body.post-type-archive-product .entry-content,
body.tax-product_cat main#content,
body.tax-product_cat .site-main,
body.tax-product_cat .entry-content,
body.tax-product_tag main#content,
body.tax-product_tag .site-main,
body.tax-product_tag .entry-content {
  background: #ffffff !important;
}

main#content,
.site-main,
.entry-content {
  margin-top: 0 !important;
  padding-top: 0 !important;
  border-top: 0 !important;
}

/* =========================================================
   STICKY GLOBAL HEADER
   ========================================================= */

.elementor-location-header {
  position: sticky !important;
  top: 0 !important;
  z-index: 999999 !important;
  margin-bottom: 0 !important;
  overflow: visible !important;
  border: 0 !important;
  background: linear-gradient(90deg, #030504 0%, #071611 48%, #030504 100%) !important;
  isolation: isolate;
}

body.admin-bar .elementor-location-header {
  top: 32px !important;
}

.cp-global-header {
  position: relative !important;
  z-index: 2;
  overflow: visible !important;
  border: 0 !important;
  background: linear-gradient(90deg, #030504 0%, #071611 48%, #030504 100%) !important;
  box-shadow: 0 10px 28px rgba(0, 0, 0, 0.24);
  font-family: "Barlow", Arial, sans-serif;
}

.cp-global-header__inner {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: 24px;
  align-items: center;
  width: min(calc(100% - 36px), 1380px);
  min-height: 184px;
  margin: 0 auto;
  background: transparent !important;
}

.cp-global-brand {
  display: inline-flex;
  gap: 14px;
  align-items: center;
  min-width: 0;
  color: var(--cp-snow);
  text-decoration: none;
  white-space: nowrap;
}

.cp-global-brand > span:last-child {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.cp-global-brand .elementor-widget-theme-site-logo,
.cp-footer-logo {
  display: block;
}

.cp-global-brand .elementor-widget-theme-site-logo img {
  display: block;
  width: 164px !important;
  height: 164px !important;
  max-width: none !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  object-fit: contain;
}

.cp-global-brand .elementor-heading-title {
  display: block;
  margin: 0;
  color: var(--cp-snow);
  font-family: "Oswald", Impact, sans-serif;
  font-size: 1.45rem;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.035em;
  text-transform: uppercase;
}

.cp-global-brand .elementor-widget-text-editor {
  display: block;
  margin-top: 2px;
  color: #b33b55;
  font-family: "Barlow", Arial, sans-serif;
  font-size: 0.74rem;
  font-weight: 800;
  line-height: 1.2;
  letter-spacing: 0.2em;
  text-transform: uppercase;
}

/* Desktop navigation */
.cp-global-nav {
  justify-self: center;
  min-width: 0;
}

.cp-global-menu .elementor-nav-menu {
  display: flex;
  flex-wrap: nowrap;
  justify-content: center;
  gap: 18px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.cp-global-menu .elementor-nav-menu li {
  position: relative;
  margin: 0;
  padding: 0;
  list-style: none;
}

.cp-global-menu .elementor-nav-menu a {
  position: relative;
  display: block;
  padding: 10px 0;
  color: var(--cp-cream);
  font-family: "Barlow", Arial, sans-serif;
  font-size: 0.82rem;
  font-weight: 800;
  letter-spacing: 0.14em;
  text-decoration: none;
  text-transform: uppercase;
}

.cp-global-menu .elementor-nav-menu a::after {
  position: absolute;
  right: 0;
  bottom: 3px;
  left: 0;
  height: 2px;
  content: "";
  background: var(--cp-emerald-hover);
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 0.2s ease;
}

.cp-global-menu .elementor-nav-menu a:hover,
.cp-global-menu .current-menu-item > a,
.cp-global-menu .current-menu-ancestor > a {
  color: var(--cp-snow);
}

.cp-global-menu .elementor-nav-menu a:hover::after,
.cp-global-menu .current-menu-item > a::after,
.cp-global-menu .current-menu-ancestor > a::after {
  transform: scaleX(1);
}

/* Desktop dropdowns */
@media (min-width: 1025px) {
  .cp-global-menu .sub-menu {
    position: absolute;
    top: calc(100% - 1px);
    left: 0;
    z-index: 200;
    display: none;
    min-width: 190px;
    margin: 0;
    padding: 10px;
    list-style: none;
    border: 1px solid var(--cp-line);
    background: #030504;
    box-shadow: 0 18px 34px rgba(0, 0, 0, 0.42);
  }

  .cp-global-menu .menu-item-has-children:hover > .sub-menu,
  .cp-global-menu .menu-item-has-children:focus-within > .sub-menu {
    display: block;
  }

  .cp-global-menu .sub-menu a {
    padding: 11px 14px;
    color: var(--cp-cream);
    font-size: 0.72rem;
    white-space: nowrap;
  }

  .cp-global-menu .sub-menu a:hover,
  .cp-global-menu .sub-menu .current-menu-item > a {
    color: var(--cp-snow);
    background: rgba(217, 206, 175, 0.08);
  }
}

/* Clean square Header CTA */
.cp-global-actions {
  white-space: nowrap;
}

.cp-global-cta .elementor-button {
  display: inline-flex;
  min-width: 160px;
  min-height: 56px;
  align-items: center;
  justify-content: center;
  padding: 0 30px;
  border: 0 !important;
  border-radius: 0 !important;
  background: var(--cp-emerald) !important;
  background-image: none !important;
  box-shadow: none !important;
  clip-path: none !important;
  color: var(--cp-snow);
  font-family: "Barlow", Arial, sans-serif;
  font-size: 0.86rem;
  font-weight: 900;
  letter-spacing: 0.18em;
  text-decoration: none;
  text-shadow: none;
  text-transform: uppercase;
}

.cp-global-cta .elementor-button:hover {
  background: var(--cp-emerald-hover) !important;
  color: #ffffff;
}

/* =========================================================
   GLOBAL FOOTER
   ========================================================= */

.cp-global-footer {
  border: 0 !important;
  border-top: 1px solid var(--cp-line) !important;
  border-radius: 0 !important;
  background:
    radial-gradient(circle at 15% 20%, rgba(10, 71, 58, 0.28), transparent 34%),
    linear-gradient(90deg, #030504 0%, #06110d 50%, #030504 100%) !important;
  color: var(--cp-cream);
}

.cp-global-footer__inner {
  display: grid;
  grid-template-columns: minmax(250px, 1.2fr) minmax(260px, 1fr) auto;
  gap: 54px;
  align-items: center;
  width: min(calc(100% - 56px), 1380px);
  margin: 0 auto;
  padding: 42px 0 34px;
}

.cp-footer-brand {
  display: inline-flex;
  gap: 14px;
  align-items: center;
  color: var(--cp-snow);
  text-decoration: none;
}

.cp-footer-logo img {
  display: block;
  width: 116px !important;
  height: 116px !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  object-fit: contain;
}

.cp-footer-brand-copy {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.cp-footer-name {
  color: var(--cp-snow);
  font-family: "Oswald", Impact, sans-serif;
  font-size: 1.25rem;
  font-weight: 700;
  letter-spacing: 0.035em;
  text-transform: uppercase;
}

.cp-footer-subtitle {
  color: #b33b55;
  font-family: "Barlow", Arial, sans-serif;
  font-size: 0.7rem;
  font-weight: 800;
  letter-spacing: 0.2em;
  text-transform: uppercase;
}

.cp-footer-menu {
  display: grid;
  grid-template-columns: repeat(2, minmax(120px, 1fr));
  gap: 12px 28px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.cp-footer-menu li {
  margin: 0;
  padding: 0;
  list-style: none;
}

.cp-footer-menu a {
  position: relative;
  display: inline-block;
  padding: 10px 0;
  color: var(--cp-cream);
  font-family: "Barlow", Arial, sans-serif;
  font-size: 0.75rem;
  font-weight: 800;
  letter-spacing: 0.12em;
  text-decoration: none;
  text-transform: uppercase;
}

.cp-footer-menu a::after {
  position: absolute;
  right: 0;
  bottom: 3px;
  left: 0;
  height: 2px;
  content: "";
  background: var(--cp-emerald-hover);
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 0.2s ease;
}

.cp-footer-menu a:hover,
.cp-footer-menu .current-menu-item > a {
  color: var(--cp-snow);
}

.cp-footer-menu a:hover::after,
.cp-footer-menu .current-menu-item > a::after {
  transform: scaleX(1);
}

.cp-footer-actions {
  white-space: nowrap;
}

.cp-footer-tickets {
  display: inline-flex;
  min-width: 160px;
  min-height: 54px;
  align-items: center;
  justify-content: center;
  padding: 0 24px;
  border: 0 !important;
  border-radius: 0 !important;
  background: var(--cp-emerald) !important;
  background-image: none !important;
  box-shadow: none !important;
  clip-path: none !important;
  color: var(--cp-snow);
  font-family: "Barlow", Arial, sans-serif;
  font-size: 0.78rem;
  font-weight: 900;
  letter-spacing: 0.14em;
  text-decoration: none;
  text-transform: uppercase;
}

.cp-footer-tickets:hover {
  background: var(--cp-emerald-hover) !important;
  color: #ffffff;
}

.cp-global-footer__bottom {
  border-top: 1px solid var(--cp-line) !important;
}

.cp-global-footer__bottom p {
  width: min(calc(100% - 56px), 1380px);
  margin: 0 auto;
  padding: 16px 0;
  color: rgba(217, 206, 175, 0.5);
  font-family: "Barlow", Arial, sans-serif;
  font-size: 0.7rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

/* =========================================================
   MOBILE + TABLET HEADER
   ========================================================= */

.cp-mobile-actions,
.cp-mobile-menu {
  display: none;
}

@media (max-width: 1024px) {
  body.admin-bar .elementor-location-header {
    top: 46px !important;
  }

  .cp-global-header__inner {
    position: static;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    grid-template-rows: auto auto;
    gap: 12px;
    width: calc(100% - 56px);
    min-height: 0;
    padding: 14px 0;
  }

  .cp-desktop-nav,
  .cp-global-actions {
    display: none !important;
  }

  /* Upper row */
  .cp-global-brand {
    position: absolute;
    top: 38px;
    left: 28px;
    z-index: 3;
    gap: 9px;
    margin: 0;
  }

  .cp-global-brand .elementor-widget-theme-site-logo img {
    width: 64px !important;
    height: 64px !important;
    max-width: 64px !important;
  }

  .cp-global-brand .elementor-heading-title {
    font-size: 1rem;
  }

  .cp-global-brand .elementor-widget-text-editor {
    font-size: 0.55rem;
  }

  /* Hamburger: upper right */
  .cp-mobile-menu {
    position: absolute;
    top: 42px;
    right: 28px;
    z-index: 10002;
    display: block;
    margin: 0;
  }

  .cp-mobile-menu summary {
    display: flex;
    width: 48px;
    height: 48px;
    align-items: center;
    justify-content: center;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    color: transparent;
    cursor: pointer;
    list-style: none;
  }

  .cp-mobile-menu summary::-webkit-details-marker {
    display: none;
  }

  .cp-mobile-menu summary::after {
    color: var(--cp-snow);
    font-size: 2rem;
    line-height: 1;
    content: "☰";
  }

  /* Schedule + Get Tickets */
  .cp-mobile-actions {
    display: grid;
    grid-column: 1 / -1;
    grid-row: 2;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    width: 100%;
    margin-top: 110px;
  }

  .cp-mobile-action {
    display: flex;
    min-height: 48px;
    align-items: center;
    justify-content: center;
    padding: 0 10px;
    border: 0 !important;
    border-radius: 0 !important;
    background: #040304 !important;
    background-image: none !important;
    box-shadow: none !important;
    clip-path: none !important;
    color: var(--cp-snow);
    font-family: "Barlow", Arial, sans-serif;
    font-size: 0.68rem;
    font-weight: 900;
    letter-spacing: 0.12em;
    text-decoration: none;
    text-transform: uppercase;
  }

  .cp-mobile-action:hover {
    background: var(--cp-emerald) !important;
  }

  /* Opened mobile menu */
  .cp-mobile-menu:not([open]) .cp-mobile-menu__panel {
    display: none;
  }

  .cp-mobile-menu[open] .cp-mobile-menu__panel {
    position: absolute;
    top: calc(100% + 12px);
    right: 0;
    z-index: 10003;
    display: block;
    width: min(340px, calc(100vw - 28px));
    padding: 10px;
    border: 1px solid var(--cp-line);
    border-radius: 0;
    background: #030504;
    box-shadow: 0 18px 34px rgba(0, 0, 0, 0.42);
  }

  .cp-mobile-menu .elementor-nav-menu {
    display: flex;
    flex-direction: column;
    gap: 0;
    width: 100%;
    margin: 0;
    padding: 0;
  }

  .cp-mobile-menu .elementor-nav-menu li {
    display: block;
    width: 100%;
    margin: 0;
  }

  .cp-mobile-menu .elementor-nav-menu a {
    display: block;
    width: 100%;
    padding: 13px 14px;
    border-bottom: 1px solid var(--cp-line);
    color: var(--cp-cream);
    font-size: 0.68rem;
    font-weight: 800;
    letter-spacing: 0.12em;
    text-align: right;
  }

  .cp-mobile-menu .elementor-nav-menu a:hover,
  .cp-mobile-menu .current-menu-item > a {
    color: var(--cp-snow);
    background: rgba(217, 206, 175, 0.08);
  }

  /* Tap-to-open Team-style parent links */
  .cp-mobile-menu .menu-item-has-children > a {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    text-align: right;
  }

  .cp-mobile-menu .menu-item-has-children > a::after {
    display: inline-block;
    flex: 0 0 auto;
    margin-left: 10px;
    color: var(--cp-cream);
    font-size: 1.1rem;
    line-height: 1;
    content: "▾";
    transition: transform 0.2s ease;
  }

  .cp-mobile-menu .menu-item-has-children.cp-submenu-open > a::after {
    transform: rotate(180deg);
  }

  .cp-mobile-menu .menu-item-has-children > .sub-menu {
    display: none;
    width: 100%;
    margin: 0;
    padding: 0 14px 6px 0;
    border: 0;
    background: transparent;
    box-shadow: none;
  }

  .cp-mobile-menu .menu-item-has-children.cp-submenu-open > .sub-menu {
    display: block;
  }

  .cp-mobile-menu .sub-menu a {
    color: rgba(217, 206, 175, 0.78);
    font-size: 0.64rem;
    text-align: right;
  }

  /* Footer on tablet/mobile */
  .cp-global-footer__inner {
    grid-template-columns: 1fr 1fr;
    gap: 30px;
    width: min(calc(100% - 32px), 1380px);
  }

  .cp-footer-actions {
    grid-column: 1 / -1;
  }

  .cp-global-footer__bottom p {
    width: min(calc(100% - 32px), 1380px);
  }

  /* Pull first page content closer to the sticky Header */
  .cp-hero,
  .cp-home-hero,
  .cp-page-hero,
  .cp-roster-hero,
  .cps-hero,
  .cp-shop-hero {
    margin-top: -56px !important;
  }
}

@media (max-width: 640px) {
  .cp-global-header__inner {
    width: calc(100% - 36px);
  }

  .cp-global-brand {
    left: 18px;
  }

  .cp-mobile-menu {
    right: 18px;
  }

  .cp-global-footer__inner {
    grid-template-columns: 1fr;
    gap: 26px;
    padding: 30px 0 26px;
  }

  .cp-footer-brand {
    justify-content: center;
  }

  .cp-footer-logo img {
    width: 88px !important;
    height: 88px !important;
  }

  .cp-footer-menu {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px 20px;
  }

  .cp-footer-actions,
  .cp-footer-tickets {
    width: 100%;
  }
}

@media (max-width: 390px) {
  .cp-global-brand .elementor-widget-theme-site-logo img {
    width: 56px !important;
    height: 56px !important;
    max-width: 56px !important;
  }

  .cp-global-brand .elementor-heading-title {
    font-size: 0.88rem;
  }

  .cp-mobile-action {
    font-size: 0.62rem;
  }
}

/* Desktop hero tightening */
@media (min-width: 1025px) {
  .cp-hero,
  .cp-home-hero,
  .cp-page-hero,
  .cp-roster-hero,
  .cps-hero,
  .cp-shop-hero {
    margin-top: -48px !important;
  }
}

/* Square edges across custom Cattle Punchers sections */
html body [class*="cp-"],
html body [class*="cps-"],
html body [class*="cp-"]::before,
html body [class*="cp-"]::after,
html body [class*="cps-"]::before,
html body [class*="cps-"]::after {
  border-radius: 0 !important;
  clip-path: none !important;
  -webkit-clip-path: none !important;
  mask: none !important;
  -webkit-mask: none !important;
}

/* Keyboard accessibility */
.cp-global-header a:focus-visible,
.cp-global-footer a:focus-visible,
.cp-mobile-menu summary:focus-visible {
  outline: 2px solid var(--cp-cream);
  outline-offset: 4px;
}/* Header Tickets button only */
.cp-global-header .cp-global-cta .elementor-button {
  background: #031811 !important;
  border-color: #1a5b4b !important;
  color: #f6f0df !important;
}

.cp-global-header .cp-global-cta .elementor-button:hover {
  background: #0a2b22 !important;
  border-color: #d9ceaf !important;
  color: #f6f0df !important;
}.cp-mobile-social {
  display: none;
}

@media (max-width: 1024px) {
  .cp-mobile-social {
    display: flex !important;
    justify-content: center;
    margin: 10px auto 0;
  }

  .cp-mobile-social .elementor-social-icon {
    margin: 0 5px;
    border: 1px solid var(--cp-line);
    border-radius: 0;
    background: transparent !important;
    color: var(--cp-cream) !important;
  }

  .cp-mobile-social .elementor-social-icon:hover {
    background: var(--cp-emerald) !important;
    color: var(--cp-snow) !important;
  }
}/* Header social icons */
.cp-header-social .elementor-social-icons-wrapper,
.cp-mobile-social .elementor-social-icons-wrapper {
  display: flex;
  gap: 10px;
}

.cp-header-social .elementor-social-icon,
.cp-mobile-social .elementor-social-icon {
  display: inline-flex;
  width: 34px;
  height: 34px;
  align-items: center;
  justify-content: center;
  margin: 0 !important;
  border: 1px solid var(--cp-line);
  border-radius: 50%;
  background: transparent !important;
  color: var(--cp-cream) !important;
}

.cp-header-social .elementor-social-icon:hover,
.cp-mobile-social .elementor-social-icon:hover {
  border-color: var(--cp-emerald-hover);
  background: var(--cp-emerald) !important;
  color: var(--cp-snow) !important;
}

/* Desktop: social icons above Tickets */
@media (min-width: 1025px) {
  .cp-global-actions {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 12px;
  }

  .cp-header-social {
    display: block;
  }

  .cp-mobile-social {
    display: none !important;
  }
}

/* Mobile: social icons below Schedule and Get Tickets */
@media (max-width: 1024px) {
  .cp-header-social {
    display: none !important;
  }

  .cp-mobile-social {
    display: block !important;
    grid-column: 1 / -1;
    grid-row: 3;
    width: 100%;
    margin: 2px 0 0;
  }

  .cp-mobile-social .elementor-social-icons-wrapper {
    justify-content: center;
  }
}/* CATTLE PUNCHERS — HEADER SOCIALS + MOBILE FOOTER NAVIGATION
   Paste this entire block at the very end of the existing site CSS. */

/* Round social icons inside the header shortcode */
.cp-header-social,
.cp-mobile-social {
  align-items: center;
  gap: 10px;
}

.cp-header-social a,
.cp-mobile-social a {
  display: grid;
  width: 34px;
  height: 34px;
  place-items: center;
  border: 1px solid var(--cp-line);
  border-radius: 50%;
  background: transparent;
  color: var(--cp-cream);
  text-decoration: none;
  transition: background .18s ease, border-color .18s ease, color .18s ease;
}

.cp-header-social a:hover,
.cp-mobile-social a:hover {
  border-color: var(--cp-emerald-hover);
  background: var(--cp-emerald);
  color: var(--cp-snow);
}

.cp-header-social svg,
.cp-mobile-social svg {
  width: 17px;
  height: 17px;
}

/* Desktop: icons sit above Tickets. */
@media (min-width: 1025px) {
  .cp-global-actions {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 12px;
  }

  .cp-header-social {
    display: flex;
  }

  .cp-mobile-social {
    display: none;
  }
}

/* Mobile: icons sit centered below Schedule and Get Tickets. */
@media (max-width: 1024px) {
  .cp-header-social {
    display: none;
  }

  .cp-mobile-social {
    display: flex;
    grid-column: 1 / -1;
    grid-row: 3;
    justify-content: center;
    width: 100%;
    margin: 2px 0 0;
  }
}

/* Mobile footer: centered two-column menu, left-aligned links. */
@media (max-width: 640px) {
  .cp-footer-menu {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    column-gap: 34px;
    row-gap: 12px;
    width: min(100%, 340px);
    margin: 0 auto;
  }

  .cp-footer-menu li,
  .cp-footer-menu a {
    text-align: left;
  }

  .cp-footer-menu a {
    display: block;
    padding: 8px 0;
  }
}
/* Add this at the very end of the site CSS. */
.cp-header-social,
.cp-mobile-social {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  align-items: center;
  gap: 10px;
}

.cp-header-social a,
.cp-mobile-social a {
  border: 0 !important;
  color: #ffffff !important;
}

/* Facebook */
.cp-header-social a:nth-child(1),
.cp-mobile-social a:nth-child(1) {
  background: #1877f2 !important;
}

/* Instagram */
.cp-header-social a:nth-child(2),
.cp-mobile-social a:nth-child(2) {
  background: linear-gradient(135deg, #833ab4 0%, #fd1d1d 52%, #fcaf45 100%) !important;
}

/* TikTok */
.cp-header-social a:nth-child(3),
.cp-mobile-social a:nth-child(3) {
  background: #000000 !important;
  color: #ffffff !important;
}

.cp-header-social a:hover,
.cp-mobile-social a:hover {
  border: 0 !important;
  filter: brightness(1.12);
}

@media (min-width: 1025px) {
  .cp-header-social {
    justify-content: flex-end;
  }
}

@media (max-width: 1024px) {
  .cp-mobile-social {
    justify-content: center !important;
  }
}
/* Add this at the very end of the site CSS. */
@media (min-width: 1025px) {
  .cp-mobile-social {
    display: none !important;
  }
}/* End custom CSS */