/*!
Theme Name: Bullseye (2024)
Theme URI: #
Author: The Digital MC
Author URI: https://thedigitalmc.com/
Description: Description
Version: 1.0.0
Tested up to: 5.4
Requires PHP: 5.6
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: bullseye
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned.

Bullseye is based on Underscores https://underscores.me/, (C) 2012-2020 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal https://necolas.github.io/normalize.css/
*/

/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
# Generic
	- Normalize
	- Box sizing
# Base
	- Typography
	- Elements
	- Links
	- Forms
## Layouts
# Components
	- Navigation
	- Posts and pages
	- Comments
	- Widgets
	- Media
	- Captions
	- Galleries
# plugins
	- Jetpack infinite scroll
# Utilities
	- Accessibility
	- Alignments

--------------------------------------------------------------*/

:root {
  --color-primary: #ed1d24;
  --color-secondary: #3088d8;
  --color-white: #fff;
  --color-black: #000;
}

/*--------------------------------------------------------------
# Generic
--------------------------------------------------------------*/

/* Normalize
--------------------------------------------- */

/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */

/* Document
	 ========================================================================== */

/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */

html {
  line-height: 1.15;
  -webkit-text-size-adjust: 100%;
}

/* Sections
	 ========================================================================== */

/**
 * Remove the margin in all browsers.
 */

body {
  margin: 0;
  overflow-x: hidden; /* To prevent Horizontal Scrollbar */
  max-width: 100vw;
}
body.noscroll {
  overflow: hidden !important;
}

/**
 * Render the `main` element consistently in IE.
 */
main {
  display: block;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/* Grouping content
	 ========================================================================== */

/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  box-sizing: content-box;
  height: 0;
  overflow: visible;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
  font-family: monospace, monospace;
  font-size: 1em;
}

/* Text-level semantics
	 ========================================================================== */

/**
 * Remove the gray background on active links in IE 10.
 */
a {
  background-color: transparent;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  border-bottom: none;
  text-decoration: underline;
  text-decoration: underline dotted;
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
  font-family: monospace, monospace;
  font-size: 1em;
}

/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Embedded content
	 ========================================================================== */

/**
 * Remove the border on images inside links in IE 10.
 */
img {
  border-style: none;
}

/* Forms
	 ========================================================================== */

/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  font-size: 100%;
  line-height: 1.15;
  margin: 0;
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input {
  overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select {
  text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */
button,
[type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
}

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */
fieldset {
  padding: 0.35em 0.75em 0.625em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *		`fieldset` elements in all browsers.
 */
legend {
  box-sizing: border-box;
  color: inherit;
  display: table;
  max-width: 100%;
  padding: 0;
  white-space: normal;
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
  overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */
[type="checkbox"],
[type="radio"] {
  box-sizing: border-box;
  padding: 0;
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

/* Hide arrows in number inputs with the .hide-arrow class */
.hide-arrow[type="number"]::-webkit-inner-spin-button,
.hide-arrow[type="number"]::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

.hide-arrow[type="number"] {
  -moz-appearance: textfield; /* Firefox */
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type="search"] {
  -webkit-appearance: textfield;
  outline-offset: -2px;
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit;
}

/* Interactive
	 ========================================================================== */

/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */
summary {
  display: list-item;
}

/* Misc
	 ========================================================================== */

/**
 * Add the correct display in IE 10+.
 */
template {
  display: none;
}

/**
 * Add the correct display in IE 10.
 */
[hidden] {
  display: none;
}

/* Box sizing
--------------------------------------------- */

/* Inherit box-sizing to more easily change it's value on a component level.
@link http://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/ */
*,
*::before,
*::after {
  box-sizing: inherit;
}

html {
  box-sizing: border-box;
}

/*--------------------------------------------------------------
# Base
--------------------------------------------------------------*/

/* Typography
--------------------------------------------- */
body,
button,
input,
select,
optgroup,
textarea {
  color: var(--color-black);
  font-family: "HvDTrial Brandon Grotesque", -apple-system, BlinkMacSystemFont,
    "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue",
    sans-serif;
  font-size: 1rem;
  line-height: 1.5;
}

.h1,
.h2,
.h3,
.h4,
.h5,
.h6 {
  font-size: inherit;
  font-weight: inherit;
  margin: 0;
}

.h1,
.h2,
.h3,
.h4,
.h5,
.h6,
h1,
h2,
h3,
h4,
h5,
h6 {
  clear: both;
  line-height: 0.8;
  font-family: "Dharma Gothic E ExBold";
}

.h1.font-brandon,
.h2.font-brandon,
.h3.font-brandon,
.h4.font-brandon,
.h5.font-brandon,
.h6.font-brandon,
h1.font-brandon,
h2.font-brandon,
h3.font-brandon,
h4.font-brandon,
h5.font-brandon,
h6.font-brandon {
  line-height: 1;
  font-weight: 700;
}

h1.with-br span,
h2.with-br span,
h3.with-br span,
h4.with-br span,
h5.with-br span,
h6.with-br span {
  display: block;
}

.header-repeater > h1,
.header-repeater > h2 {
  line-height: 0.9;
}

p {
  margin-bottom: 1.5em;
}

dfn,
cite,
em,
i {
  font-style: italic;
}

blockquote {
  margin: 0 1.5em;
}

address {
  margin: 0 0 1.5em;
}

pre {
  background: #eee;
  font-family: "Courier 10 Pitch", courier, monospace;
  line-height: 1.6;
  margin-bottom: 1.6em;
  max-width: 100%;
  overflow: auto;
  padding: 1.6em;
}

code,
kbd,
tt,
var {
  font-family: monaco, consolas, "Andale Mono", "DejaVu Sans Mono", monospace;
}

abbr,
acronym {
  border-bottom: 1px dotted #666;
  cursor: help;
}

mark,
ins {
  background: var(--color-white) 9c0;
  text-decoration: none;
}

big {
  font-size: 125%;
}

/* Elements
--------------------------------------------- */
body {
  background: var(--color-white);
}

hr {
  background-color: #ccc;
  border: 0;
  height: 1px;
  margin-bottom: 1.5em;
}

ul,
ol {
  margin: 0 0 1.5em 3em;
}

ul {
  list-style: disc;
}

ol {
  list-style: decimal;
}

li > ul,
li > ol {
  margin-bottom: 0;
  margin-left: 1.5em;
}

dt {
  font-weight: 700;
}

dd {
  margin: 0 1.5em 1.5em;
}

/* Make sure embeds and iframes fit their containers. */
embed,
iframe,
object {
  max-width: 100%;
}

img {
  height: auto;
  max-width: 100%;
}

figure {
  margin: 1em 0;
}

table {
  margin: 0 0 1.5em;
  width: 100%;
}

/* Links
--------------------------------------------- */
a {
  transition: 400ms;
}

a:not(.text-white):hover,
a:not(.text-white):focus,
a:not(.text-white):active {
  color: #ed1d2f;
  /* opacity: 0.5; */
}

a:focus {
  outline: thin dotted;
}

a:hover,
a:active {
  outline: 0;
}

/* Forms
--------------------------------------------- */
/* button, */
input[type="button"],
input[type="reset"],
input[type="submit"] {
  color: var(--color-white);
  text-transform: uppercase;
  font-size: 35px; /*35 on prohibition */
  font-family: "Prohibition";
  /* background-color: #afaba9; */
  background-color: var(--color-primary);
  cursor: pointer;
  padding: 12px 20px 10px;
  transition: 0.3s;
  width: auto;
  min-width: 250px;
  transition: 0.3s;
}

button:not(.slick-arrow):hover,
input[type="button"]:hover,
input[type="reset"]:hover,
input[type="submit"]:hover {
  background-color: var(--color-black);
}

button:active,
button:focus,
input[type="button"]:active,
input[type="button"]:focus,
input[type="reset"]:active,
input[type="reset"]:focus,
input[type="submit"]:active,
input[type="submit"]:focus {
  border-color: #aaa #bbb #bbb;
}

input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
input[type="number"],
input[type="tel"],
input[type="range"],
input[type="date"],
input[type="month"],
input[type="week"],
input[type="time"],
input[type="datetime"],
input[type="datetime-local"],
input[type="color"],
textarea {
  color: #666;
  border: 1px solid var(--color-black);
  border-radius: 4px;
  padding: 8px;
}

textarea:not(.wpcf7-textarea) {
  padding: 8px;
}

input[type="text"]:focus,
input[type="email"]:focus,
input[type="url"]:focus,
input[type="password"]:focus,
input[type="search"]:focus,
input[type="number"]:focus,
input[type="tel"]:focus,
input[type="range"]:focus,
input[type="date"]:focus,
input[type="month"]:focus,
input[type="week"]:focus,
input[type="time"]:focus,
input[type="datetime"]:focus,
input[type="datetime-local"]:focus,
input[type="color"]:focus,
textarea:focus {
  color: #111;
}

.bg-black input[type="text"]:focus,
.bg-black input[type="email"]:focus,
.bg-black input[type="url"]:focus,
.bg-black input[type="password"]:focus,
.bg-black input[type="search"]:focus,
.bg-black input[type="number"]:focus,
.bg-black input[type="tel"]:focus,
.bg-black input[type="range"]:focus,
.bg-black input[type="date"]:focus,
.bg-black input[type="month"]:focus,
.bg-black input[type="week"]:focus,
.bg-black input[type="time"]:focus,
.bg-black input[type="datetime"]:focus,
.bg-black input[type="datetime-local"]:focus,
.bg-black input[type="color"]:focus,
.bg-black textarea:focus {
  color: #fff;
}

.bg-black input,
.bg-black textarea {
  color: #ccc;
}

.bg-black input:focus,
.bg-black textarea:focus {
  color: #fff;
}


.select2-container--default .select2-selection--single {
  border: 1px solid var(--color-black);
  height: 47px;
  display: flex;
  align-items: center;
  position: relative;
}

.select2-container--default
  .select2-selection--single
  .select2-selection__arrow {
  top: 50%;
  transform: translateY(-50%);
}

textarea {
  width: 100%;
}

/*--------------------------------------------------------------
# Layouts
--------------------------------------------------------------*/

/*--------------------------------------------------------------
# Components
--------------------------------------------------------------*/

/* Navigation
--------------------------------------------- */
.hide-nav-elements button,
.hide-nav-elements a:not([href="#"]),
.hide-nav-elements header,
.hide-nav-elements footer,
.hide-nav-elements #buy-tickets {
  display: none !important;
}
.hide-nav-elements a.sponsor-item {
  display: inline !important;
  pointer-events: none !important;
  cursor: default !important;
}
.hide-nav-elements #pre-footer * {
  pointer-events: none;
}

body.hide-menu nav#site-navigation .mega-menu,
body.hide-menu .contact-info-header > div:last-of-type{
  display: none !important;
}

body.hide-menu a.custom-logo-link{
  pointer-events: none;
}

body.hide-footer footer .hide-when-footer-is-hidden,
body.hide-footer footer #footer-sub-menu { 
  display: none !important;
}

.main-navigation {
  display: block;
  width: 100%;
}

.main-navigation .mega-menu {
  display: none;
  list-style: none;
  margin: 0;
  padding-left: 0;
}

/* Small menu. */
.menu-toggle,
.main-navigation.toggled ul {
  display: block;
}

/* @media screen and (min-width: 37.5em) { */
@media screen and (min-width: 1205px) {
  .menu-toggle,
  .main-navigation .mobile-menu-button {
    display: none;
  }

  .main-navigation .mega-menu {
    display: flex;
  }
}

@media screen and (max-width: 1204px) {
  #masthead .contact-info-header {
    display: none;
  }

  #site-navigation {
    justify-content: end;
  }
}

.site-main .comment-navigation,
.site-main .posts-navigation,
.site-main .post-navigation {
  margin: 0 0 1.5em;
}

.comment-navigation .nav-links,
.posts-navigation .nav-links,
.post-navigation .nav-links {
  display: flex;
}

.comment-navigation .nav-previous,
.posts-navigation .nav-previous,
.post-navigation .nav-previous {
  flex: 1 0 50%;
}

.comment-navigation .nav-next,
.posts-navigation .nav-next,
.post-navigation .nav-next {
  text-align: end;
  flex: 1 0 50%;
}

/* Comments
--------------------------------------------- */
.comment-content a {
  word-wrap: break-word;
}

.bypostauthor {
  display: block;
}

/* Widgets
--------------------------------------------- */
.widget {
  margin: 0 0 1.5em;
}

.widget:last-child {
  margin: 0;
}

.widget select {
  max-width: 100%;
}

/* Media
--------------------------------------------- */
.page-content .wp-smiley,
.entry-content .wp-smiley,
.comment-content .wp-smiley {
  border: none;
  margin-bottom: 0;
  margin-top: 0;
  padding: 0;
}

/* Make sure logo link wraps around logo image. */
.custom-logo-link {
  display: inline-block;
}

/* Captions
--------------------------------------------- */
.wp-caption {
  margin-bottom: 1.5em;
  max-width: 100%;
}

.wp-caption img[class*="wp-image-"] {
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.wp-caption .wp-caption-text {
  margin: 0.8075em 0;
}

.wp-caption-text {
  text-align: center;
}

/* Galleries
--------------------------------------------- */
.gallery {
  margin-bottom: 1.5em;
  display: grid;
  grid-gap: 1.5em;
}

.gallery-item {
  display: inline-block;
  text-align: center;
  width: 100%;
}

.gallery-columns-2 {
  grid-template-columns: repeat(2, 1fr);
}

.gallery-columns-3 {
  grid-template-columns: repeat(3, 1fr);
}

.gallery-columns-4 {
  grid-template-columns: repeat(4, 1fr);
}

.gallery-columns-5 {
  grid-template-columns: repeat(5, 1fr);
}

.gallery-columns-6 {
  grid-template-columns: repeat(6, 1fr);
}

.gallery-columns-7 {
  grid-template-columns: repeat(7, 1fr);
}

.gallery-columns-8 {
  grid-template-columns: repeat(8, 1fr);
}

.gallery-columns-9 {
  grid-template-columns: repeat(9, 1fr);
}

.gallery-caption {
  display: block;
}
.vip-gallery {
  position: relative;
  padding-bottom: 50%;
}
.vip-gallery .slick-list {
  height: 100% !important;
}
.vip-gallery .bg-cover {
  background-position: bottom center;
}
.vip-gallery .vip-gallery-inner.slick-slider {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}
.vip-gallery-mobile .vip-gallery-images img {
  height: 100%;
  object-fit: cover;
}
.vip-gallery-mobile .vip-gallery-images .slick-track {
  min-height: 320px;
}
.vip-gallery-mobile .vip-gallery-images .bg-cover {
  height: 100%;
  object-fit: cover;
}
/*--------------------------------------------------------------
# Plugins
--------------------------------------------------------------*/

/* Jetpack infinite scroll
--------------------------------------------- */

/* Hide the Posts Navigation and the Footer when Infinite Scroll is in use. */
.infinite-scroll .posts-navigation,
.infinite-scroll.neverending .site-footer {
  display: none;
}

/* Re-display the Theme Footer when Infinite Scroll has reached its end. */
.infinity-end.neverending .site-footer {
  display: block;
}

/*--------------------------------------------------------------
# Utilities
--------------------------------------------------------------*/

/* Accessibility
--------------------------------------------- */

/* Text meant only for screen readers. */
.screen-reader-text {
  border: 0;
  clip: rect(1px, 1px, 1px, 1px);
  clip-path: inset(50%);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute !important;
  width: 1px;
  word-wrap: normal !important;
}

.screen-reader-text:focus {
  background-color: #f1f1f1;
  border-radius: 3px;
  box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
  clip: auto !important;
  clip-path: none;
  color: #21759b;
  display: block;
  font-size: 0.875rem;
  font-weight: 700;
  height: auto;
  left: 5px;
  line-height: normal;
  padding: 15px 23px 14px;
  text-decoration: none;
  top: 5px;
  width: auto;
  z-index: 100000;
}

/* Do not show the outline on the skip link target. */
#primary[tabindex="-1"]:focus {
  outline: 0;
}

/* Alignments
--------------------------------------------- */
.alignleft {
  /*rtl:ignore*/
  float: left;

  /*rtl:ignore*/
  margin-right: 0.75rem;
  margin-bottom: 0.75rem;
}

.alignright {
  /*rtl:ignore*/
  float: right;

  /*rtl:ignore*/
  margin-left: 1.5rem;
  margin-bottom: 1.5rem;
}

.aligncenter {
  clear: both;
  display: block;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 1.5rem;
}

.text-shadow {
  text-shadow: -1px -1px 0 var(--color-black), 1px -1px 0 var(--color-black),
    -1px 1px 0 var(--color-black), 1px 1px 0 var(--color-black),
    0px 2px 4px rgba(0, 0, 0, 0.5);
}

/* ---------------------------------------
 * Wysiwyg
--------------------------------------- */
.wysiwyg h1,
.wysiwyg h2,
.wysiwyg h3,
.wysiwyg h4,
.wysiwyg h5 {
  /* margin-bottom: 1rem; */
}

.wysiwyg {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  font-size: 1.2rem;
}

.wysiwyg h1 {
  font-size: 3.75rem; /* 60px */
  line-height: 1;
  margin-bottom: 0.25rem;
}

.wysiwyg h2 {
  font-size: 3rem; /* 48px */
  line-height: 1;
  margin-bottom: 0.15rem;
}

.wysiwyg h3 {
  font-size: 2.25rem; /* 36px */
  line-height: 2.5rem; /* 40px */
}

.wysiwyg h4 {
  font-size: 1.875rem; /* 30px */
  line-height: 2.25rem; /* 36px */
}

.wysiwyg h5 {
  font-size: 1.5rem; /* 24px */
  line-height: 2rem; /* 32px */
}

.wysiwyg a:not(.btn) {
  text-decoration: underline;
  color: var(--color-primary);
}

/* .wysiwyg a.btn {
  width: auto;
  display: inline-block;
  padding: 1rem;
  margin-bottom: 1rem;
} */
.wysiwyg .btn,
.wysiwyg a.btn,
.btn {
  min-height: 60px;
  height: auto;
  width: auto;
  display: inline-block;
  padding: 1rem;
  margin-bottom: 1rem;
}
/*
 * Mega Menu - Hover logic.
 * This can be refactored to use just CSS with :has(),
 * but currently has 92.8% support across all browsers.
 */

/* ---------------------------------------
 * Mega Menu - Hover logic.
 * This can be refactored to use just CSS with :has(),
 * but currently has 92.8% support across all browsers.
--------------------------------------- */
#masthead {
  transition: 0.3s;
}
#masthead.hovered {
  background-color: #fef3f3;
}

#masthead:after {
  content: "";
  bottom: 0;
  left: 0;
  z-index: 10;
  width: 100%;
  height: calc(100% - 150px);
  transition: 0.3s;
  opacity: 0;
  pointer-events: none;
  position: fixed;
  background-color: var(--color-primary);
}

#masthead.hovered:after {
  opacity: 0.85;
}

.mega-menu-item {
  align-items: center;
  display: flex;
  z-index: 20;
  align-items: stretch;
}

/* ---------------------------------------
 * Mega Menu Title
 * The list item seen at the menu
--------------------------------------- */
.mega-menu-title {
  /* position: relative; */
  display: flex;
  align-items: center;
  z-index: 20;
  cursor: pointer;
  height: 100%;
  display: flex;
  align-items: center;
  text-transform: uppercase;
  font-weight: 700;
}
/* 
.mega-menu-title:before {
  content: attr(data-text);
  font-weight: bold;
  visibility: hidden;
  height: 0;
  opacity: 0;
  overflow: hidden;
  white-space: nowrap;
  position: absolute;
  pointer-events: none;
}

.mega-menu-title:hover span,
.mega-menu-item.hovered .mega-menu-title span {
  visibility: hidden;
  height: 0;
  overflow: hidden;
  opacity: 0;
}

.mega-menu-title:hover:before,
.mega-menu-item.hovered .mega-menu-title:before {
  height: auto;
  opacity: 1;
  visibility: visible;
} */

.mega-menu-title a {
  padding: 43px 0;
  position: relative;
}

.hovered .mega-menu-item:hover .mega-menu-title a:after {
  content: "";
  width: 100%;
  height: 12px;
  display: block;
  position: absolute;
  left: 0;
  bottom: 0;
  background-color: var(--color-white);
}

.hovered .mega-menu-item:hover .mega-menu-title,
.mega-menu-item:hover .mega-menu-title {
  color: var(--color-primary);
}

/* ---------------------------------------
 * Mega Menu Content
 * Pops up when a menu item is hovered
--------------------------------------- */
#site-navigation > ul > li.mega-menu-item.hover-trigger > .mega-menu-title > a,
#site-navigation
  > ul
  > li.mega-menu-item.hover-trigger
  > .mega-menu-title
  > a:hover {
  cursor: default;
  position: relative;
  margin-right: 9px;
}

#site-navigation
  > ul
  > li.mega-menu-item.hover-trigger
  > .mega-menu-title
  > a::before {
  content: "▼";
  display: inline-block;
  margin-right: 1px;
  font-size: 0.6em;
  vertical-align: middle;
  position: absolute;
  right: -15px;
  top: 50%;
  margin-top: -12px;
  color: rgb(237, 29, 36);
}

.mega-menu-content {
  overflow: hidden;
  position: absolute;
  left: 0;
  top: 108px;
  height: 200px;
  width: 100%;
  background-color: white;
  height: 100%;
  transition: 0.3s;
  height: 0;
}
.hovered .mega-menu-item:hover .mega-menu-content {
  /* height: 80vh; */
  height: calc(100vh - 108px);
  /* overflow: auto; */
}
.allowscroll .mega-menu-content {
  overflow: auto;
}

/* WebKit-based browsers (Chrome, Safari) */
.mega-menu-content::-webkit-scrollbar,
body::-webkit-scrollbar {
  width: 25px; /* Width of the scrollbar */
}

.mega-menu-content::-webkit-scrollbar-track,
body::-webkit-scrollbar-track {
  background: #eee; /* Background of the scrollbar track */
  border-radius: 25px; /* Rounded edges for the track */
}

.mega-menu-content::-webkit-scrollbar-thumb,
body::-webkit-scrollbar-thumb {
  background: var(--color-black); /* Color of the scrollbar thumb */
  border-radius: 25px; /* Rounded edges for the thumb */
}

/* Firefox */
.mega-menu-content,
body {
  scrollbar-width: 25px; /* Makes the scrollbar 25px wide */
  scrollbar-color: var(--color-black) #eee; /* Thumb color and track color */
}

/* Optional: For better appearance in Firefox */
.mega-menu-content::-moz-scrollbar,
body::-moz-scrollbar {
  width: 25px; /* Width of the scrollbar */
}

.mega-menu-content::-moz-scrollbar-track,
body::-moz-scrollbar-track {
  background: #eee; /* Background of the scrollbar track */
  border-radius: 25px; /* Rounded edges for the track */
}

.mega-menu-content::-moz-scrollbar-thumb,
body::-moz-scrollbar-thumb {
  background: var(--color-black); /* Color of the scrollbar thumb */
  border-radius: 25px; /* Rounded edges for the thumb */
}

/*
 * Tailgate Hover Logic from children.
 * This can be refactored to use just CSS with :has(),
 * but currently has 92.8% support across all browsers.
 */
.hovered.tailgate-section {
  /* background-color: #0076b6; */
}

.hovered.tailgate-section .blue-overlay {
  opacity: 0.7;
}

.hovered.tailgate-section .tailgate-item:hover .tailgate-btn {
  opacity: 1;
}
.hovered.tailgate-section .tailgate-item:hover .tailgate-icon {
  transform: translateY(-10px) scale(1.2);
  bottom: 10px;
  -webkit-filter: drop-shadow(5px 5px 5px #222);
  filter: drop-shadow(3px 3px 3px #222);
}

.tailgate-header-image {
  -webkit-filter: drop-shadow(5px 5px 5px #222);
  filter: drop-shadow(3px 3px 3px #222);
}

/*
 * VIP Tailgates inside Mega Menu Hover Logic from children.
 * This can be refactored to use just CSS with :has(),
 * but currently has 92.8% support across all browsers.
 */
.mm-tailgate-btn.active {
  opacity: 1;
}

.mm-tailgate-content {
  display: none;
}

.mm-tailgate-content.active {
  display: flex;
}
.mm-tailgate-content .tailgate-header-image {
  width: 80%;
  max-height: 80%;
}

/* WYSIWYG styles */
/* .wysiwyg p {
  margin-bottom: 20px;
}

.wysiwyg p:last-child {
  margin-bottom: 0;
} */

.wysiwyg ul {
  list-style: disc;
  padding-left: 22px;
  /* list-style-position: inside; */
}
.wysiwyg ul ul {
  margin-top: 24px;
}
.wysiwyg li {
  margin-bottom: 24px;
}

.wysiwyg li:last-child {
  margin-bottom: 0;
}

.h-full.slider .slick-list,
.h-full.slider .slick-track,
.h-full.sync-slider .slick-list,
.h-full.sync-slider .slick-track,
.fixed-height-slider .slick-list,
.fixed-height-slider .slick-track {
  height: 100%;
}

/*
 * Mobile Menu styles
 */
.mobile-menu {
  display: flex;
  align-items: center;
}

.mobile-menu-button {
  display: flex;
  flex-direction: column;
  cursor: pointer;
  z-index: 50;
  -webkit-user-select: none;
  user-select: none;
}

.mobile-menu-button span {
  display: flex;
  width: 29px;
  height: 2px;
  margin-bottom: 5px;
  position: relative;
  background: var(--color-black);
  border-radius: 3px;
  z-index: 1;
  transform-origin: 5px 0px;
  transition: transform 0.5s cubic-bezier(0.77, 0.2, 0.05, 1),
    background 0.5s cubic-bezier(0.77, 0.2, 0.05, 1), opacity 0.55s ease;
}

.mobile-menu-button span.line-3 {
  transform-origin: 0% 100%;
}

.mobile-menu.open .mobile-menu-button span {
  opacity: 1;
  transform: rotate(45deg) translate(-3px, -1px);
  background: var(--color-primary);
}
.mobile-menu.open .mobile-menu-button span.line-2 {
  opacity: 0;
  transform: rotate(0deg) scale(0.2, 0.2);
}

.mobile-menu.open .mobile-menu-button span.line-3 {
  transform: rotate(-45deg) translate(0, -1px);
}

.menu-content,
.sub-menu-container {
  width: 90%;
  height: 100%;
  top: 0;
  position: fixed;
  right: 0;
  box-shadow: 0 0 10px #85888c;
  margin-top: 0;
  padding-top: 80px;
  background-color: var(--color-white);
  -webkit-font-smoothing: antialiased;
  transform-origin: 0% 0%;
  transform: translate(105%, 0);
  transition: 0.4s;
  z-index: 30;
  overflow-y: scroll;
}

.has-admin-bar .menu-content,
.has-admin-bar .sub-menu-container {
  padding-top: 110px;
}

.open .menu-content,
.open .sub-menu-container {
  transition: transform 0.5s cubic-bezier(0.77, 0.2, 0.05, 1);
}

.menu-item,
.sub-menu > li {
  /* border-bottom: 2px solid var(--color-primary); */
  border-bottom: 2px solid rgba(144, 144, 144, 0.25);
}

.menu-item a {
  /* All Menu Item*/
  padding: 15px;
  display: block;
  transition-delay: 2s;
  font-size: 30px;
  text-transform: uppercase;
}

.mobile-menu-logo a {
  padding: 15px;
  display: block;
}

.mobile-menu.open .menu-content,
.sub-menu-container.open {
  /* When opened */
  transform: none;
}

.mobile-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 20;
  background-color: var(--color-primary);
  transition: 0.3s;
  opacity: 0;
  pointer-events: none;
}
.open .mobile-overlay {
  opacity: 0.85;
  pointer-events: auto;
}
.white.mobile-overlay {
  background-color: var(--color-white);
}

/* Sub Menu */
.sub-menu-container {
  overflow-y: auto;
}

.sub-menu ul {
  position: relative;
  /* border-left: 6px solid var(--color-primary); */
  margin-bottom: 20px;
}

.sub-menu ul:before {
  content: "";
  position: absolute;
  left: 1rem;
  height: 0;
  width: 10px;
  top: 0;
  border-left: 2px solid;
  border-right: 2px solid;
  border-color: rgba(144, 144, 144, 0.25);
  transition: height 1s cubic-bezier(0.77, 0.2, 0.05, 1) 0.5s;
}

.sub-menu-container.open ul:before {
  height: 100%;
}

.sub-menu ul a {
  position: relative;
  font-size: 25px;
  border: none;
}

.back-btn {
  text-align: center;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 20px;
  padding-left: 20px;
}

.logo-background-repeat,
#vip-tailgate {
  position: relative;
}

.logo-background-repeat,
#vip-tailgate::before {
  content: " ";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  background-image: url(./assets/images/target-white-space.svg);
  background-size: 130px;
  background-repeat: space;
  opacity: 0.2;
}

.logo-background-repeat.product-header {
  background-size: 115px;
}

.sub-vip-tailgate-item {
}

.sub-menu .sub-vip-tailgate-item {
  border: none;
}

.sub-vip-tailgate-item a {
  display: flex;
  gap: 40px;
  align-items: center;
  color: var(--color-white);
  padding-left: 40px;
}

.sub-vip-tailgate-item img {
  width: auto;
  height: 100%;
  max-height: 60px;
  filter: drop-shadow(3px 3px 3px #222);
}

.menu-item .has-sub {
  display: flex;
  justify-content: space-between;
}

.has-sub .arrow {
  transform: rotate(90deg);
  display: block;
}

/*
 * Slick Slider
 */
.slick-arrow {
  width: 40px; /* Adjust the width as needed */
  height: 40px; /* Adjust the height as needed */
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  border: none;
  cursor: pointer;
}

.slick-arrow:focus {
  outline: none; /* Remove focus outline */
}

.slick-prev {
  background-image: url("assets/images/slider-left-arrow.png");
}

.inside .slick-prev {
  -webkit-filter: drop-shadow(5px 5px 5px #222);
  filter: drop-shadow(3px 3px 3px #222);
}

.slick-next {
  background-image: url("assets/images/slider-right-arrow.png");
}

.inside .slick-next {
  -webkit-filter: drop-shadow(5px 5px 5px #222);
  filter: drop-shadow(3px 3px 3px #222);
}

.slider-nav {
  display: flex;
  justify-content: center;
  align-items: center;
  max-width: 500px;
  margin: auto;
  margin-top: 80px;
}

.slider-nav .slick-arrow.slick-hidden {
  display: block;
}

/* .events-image-slider .sync-slider img {
  height: 80VH;
  width: 100%;
  object-fit: cover;
}
@media (max-width: 480px) {
  .events-image-slider .sync-slider img {
    height: 50VH;
  }
} */

.events-image-slider .sync-slider .slick-slide > div {
  position: relative;
  width: 100%;
  padding-bottom: 50%; /* 16:9 aspect ratio (9/16 = 0.5625 or 56.25%) */
  height: 0;
  overflow: hidden;
  display: flex;
  justify-content: flex-start; /* Align content to the left */
}

.events-image-slider .sync-slider .slick-slide > div img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  /* object-fit: contain; */
  object-fit: cover;
}

.direction-indicator {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 20px;
  width: 100%;
}

.slick-direction-dot:before {
  content: "";
  border-radius: 100%;
  background-color: #dedfe0;
  width: 8px;
  height: 8px;
  display: block;
  transition: background 0.5s, opacity 0.5s;
}

.slick-direction-dot.active:before {
  background-color: var(--color-primary);
}

/* Inside Version */
.slider-nav.inside {
  position: absolute;
  bottom: 0;
  left: 0;
  margin-top: 0;
  width: 100%;
  height: 100%;
  max-width: none;
}

.slider-nav.inside .direction-indicator {
  bottom: 20px;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
}

.slider-nav.inside .slick-direction-dot:before {
  background-color: var(--color-white);
  opacity: 0.35;
}

.slider-nav.inside .slick-direction-dot.active:before {
  opacity: 1;
}

.slider-nav.inside .slick-prev {
  background-image: url("assets/images/slider-left-arrow-white.png");
  position: absolute;
  left: 40px;
}

.slider-nav.inside .slick-next {
  background-image: url("assets/images/slider-right-arrow-white.png");
  position: absolute;
  right: 40px;
}

.dots-only-slider-nav {
  display: flex;
  gap: 10px;
  justify-content: center;
  align-items: center;
  margin: 16px auto;
}

.dots-only-slider-nav button {
  display: block;
  width: 9px;
  height: 9px;
  padding: 0;
  opacity: 0.35;
  border: none;
  border-radius: 100%;
  background-color: var(--color-white);
  text-indent: -9999px;
}

.dots-only-slider-nav .slick-active button {
  opacity: 1;
}

.dot-primary .dots-only-slider-nav button {
  opacity: 1;
  background-color: #b1babf;
}

.dot-primary .dots-only-slider-nav .slick-active button {
  background-color: var(--color-primary);
}

/*
 * Contact Form 7
 */
.wpcf7-form-control {
  /*border-radius: 13px;*/
  border-radius: 4px;
  border: none;
  outline: 0;
  max-width: 100%;
  width: 100%;
}

.wpcf7-not-valid-tip {
  font-size: 16px;
  padding: 5px;
}

.wpcf7-tel,
.wpcf7-text,
.wpcf7-email,
.wpcf7-textarea,
.wpcf7-select,
.ss-main.wpcf7-select {
  background-color: #d9d9d9;
  /*padding: 15px 18px;*/
  padding: 8px;
  font-size: 17px; /* Should be 20 on Brandon */
  border: 1px solid var(--color-black);
}

.wpcf7-form-control::placeholder {
  color: #a7a3a0;
}

.wpcf7-textarea {
  min-height: 180px;
}

.wpcf7-submit {
  color: var(--color-white);
  text-transform: uppercase;
  font-size: 35px; /*35 on prohibition */
  font-family: "Prohibition";
  /* background-color: #afaba9; */
  background-color: var(--color-primary);
  border-radius: 13px;
  cursor: pointer;
  padding: 12px 20px 10px;
  transition: 0.3s;
  width: auto;
  min-width: 250px;
}

.wpcf7-submit:hover {
  background-color: var(--color-black);
}

/***** Slim Select DD Overrides *****/
.ss-content.wpcf7-select {
  padding: 0;
}

/***** Radio *****/
.wpcf7-radio,
.wpcf7-checkbox {
  /*display: grid;*/
  /*grid-template-columns: repeat(2, minmax(0, 1fr));*/
  display: flex;
  flex-direction: column;
  gap: 10px;
  font-size: 17px; /* Should be 20 on Brandon */
  color: var(--color-black);
}

.wpcf7-list-item {
  margin-left: 0;
}

.wpcf7-radio .wpcf7-list-item span {
  display: flex;
  gap: 12px;
  position: relative;
  cursor: pointer;
}

/* @wpcf7-radio -> Compared to .custom-radio, the styling for contact form 7
 * must use :before/:after so the forms doesn't need to be edited.
 */
.custom-radio input[type="radio"],
.wpcf7-radio .wpcf7-list-item input[type="radio"] {
  position: absolute;
  opacity: 0;
  margin: 0;
  padding: 0;
}

.wpcf7-radio .wpcf7-list-item span:before {
  /* The Custom Radio */
  content: "";
  height: 26px;
  width: 26px;
  display: block;
  border: 2px solid #d9d9d9;
  border-radius: 100%;
  margin-top: 2px;
  flex-shrink: 0;
}

.wpcf7-radio .wpcf7-list-item input[type="radio"]:checked ~ span:before {
  border-color: var(--color-primary);
  border-width: 5px;
}

.wpcf7-radio .wpcf7-list-item span:after {
  content: "";
  border-radius: 100%;
  border: 2.5px solid var(--color-primary);
  position: absolute;
  top: 10px;
  left: 8px;
  height: 10px;
  width: 10px;
  opacity: 0;
}

.wpcf7-radio .wpcf7-list-item input[type="radio"]:checked ~ span:after {
  opacity: 1;
}

/***** Checkbox: For the existing forms only *****/
.wpcf7-list-item > label {
  display: flex;
  align-items: start;
}

.wpcf7-checkbox input[type="checkbox"] {
  margin-top: 6px;
  margin-right: 6px;
}

/*two-column check group */
@media (min-width: 768px) {
  .two-col-checks {
    display: block;
    column-count: 2;
  }
  .two-col-checks .wpcf7-list-item {
    display: block;
  }
}

/***** Partner Card  *****/
.partner-card {
  background-color: transparent;
  perspective: 1000px;
  cursor: pointer;
}

.partner-card-inner {
  position: relative;
  width: 100%;
  height: 100%;
  transition: transform 0.8s;
  transform-style: preserve-3d;
}

.partner-card:hover .partner-card-inner {
  transform: rotateY(180deg);
}

.partner-card-front,
.partner-card-back {
  width: 100%;
  height: 100%;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  border-radius: 25px;
}

.partner-card-front {
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
}

.partner-card-back {
  padding: 1.5rem;
  position: relative;
}

.partner-card-front {
  background-color: var(--color-white);
  color: black;
}

.partner-card-back {
  transform: rotateY(180deg);
}

/* Custom Radio - Different approach than Radio (Contact Form 7) Read: @wpcf7-radio */
.custom-radio {
  position: relative;
  height: 32px;
  width: 32px;
}

.custom-radio .outer-border,
.custom-radio .default-border {
  height: 100%;
  width: 100%;
  display: block;
  border: 4px solid var(--color-primary);
  border-radius: 100%;
  position: absolute;
  opacity: 0;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  cursor: pointer;
  z-index: 1;
}

.custom-radio .default-border {
  border-color: #d9d9d9;
  z-index: 0;
  opacity: 1;
}

.custom-radio .inner-border {
  border-radius: 100%;
  border: 4px solid var(--color-primary);
  position: absolute;
  height: 16px;
  width: 16px;
  opacity: 0;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  cursor: pointer;
}
/* 
.custom-radio input[type="radio"]:checked ~ .outer-border {
  border-color: var(--color-primary);
} */

.custom-radio input[type="radio"]:checked ~ .inner-border,
.custom-radio input[type="radio"]:checked ~ .outer-border {
  opacity: 1;
}

/* double-border for radio button */
.double-border {
  position: relative;
  padding: 60px;
}

.double-border:before,
.double-border:after {
  content: "";
  position: absolute;
  border: 4px solid var(--color-primary);
  border-radius: 10px;
}

.double-border:before {
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
}

.double-border:after {
  top: 10px;
  left: 10px;
  height: calc(100% - 20px);
  width: calc(100% - 20px);
}

/**
* Contact Form 7 style when primary background
**/
.bg-primary .wpcf7,
.bg-black .wpcf7 {
  color: var(--color-white);
}

.bg-primary .wpcf7-form-control,
.bg-black .wpcf7-form-control {
  /*border-radius: 0;*/
  background-color: transparent;
  border: 1px solid var(--color-white);
}

.bg-primary .wpcf7 label,
.bg-primary .wpcf7-not-valid-tip,
.bg-black .wpcf7 label,
.bg-black .wpcf7-not-valid-tip {
  text-transform: uppercase;
  font-weight: 700;
  color: var(--color-white);
}

.bg-primary .wpcf7-not-valid-tip,
.bg-black .wpcf7-not-valid-tip {
  padding-left: 0;
  text-decoration: underline;
}

.bg-primary .wpcf7 .wpcf7-list-item label,
.bg-black .wpcf7 .wpcf7-list-item label {
  text-transform: none;
  font-weight: 400;
  color: var(--color-white);
}

/*slim select drop arrow*/
.bg-primary .ss-main .ss-arrow path,
.bg-black .ss-main .ss-arrow path {
  stroke: var(--color-white);
}

.bg-primary .wpcf7-form-control.wpcf7-checkbox,
.bg-black .wpcf7-form-control.wpcf7-checkbox {
  border: none;
}

.bg-primary .wpcf7-form-control.wpcf7-submit,
.bg-black .wpcf7-form-control.wpcf7-submit {
  background-color: var(--color-white);
  color: var(--color-primary);
  font-size: 28px;
  max-width: 200px;
}

.bg-primary .wpcf7-form-control.wpcf7-submit:hover,
.bg-black .wpcf7-form-control.wpcf7-submit:hover {
  opacity: 0.7;
}

.sponsorship-form .wpcf7-form-control-wrap {
  display: block;
  margin-bottom: 1rem;
}

/**
* Overlay Hover Effect
**/
.gradient-overlay-full,
.gradient-overlay {
  position: relative;
}

.gradient-overlay-full:before,
.gradient-overlay:before {
  content: "";
  background: linear-gradient(
    to bottom,
    rgba(237, 29, 36, 0) 30%,
    rgba(237, 29, 36, 1) 70%
  );
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  mix-blend-mode: overlay;
  opacity: 0.5;
}

.gradient-overlay-full:before {
  background: linear-gradient(
    to bottom,
    rgba(237, 29, 36, 0) 0%,
    rgba(237, 29, 36, 1) 100%
  );
}

.gradient-overlay-hover .gradient-overlay:before,
.gradient-overlay-hover .gradient-overlay-full:before {
  opacity: 0;
  transition: opacity 0.3s;
}

.gradient-overlay-hover:hover .gradient-overlay:before,
.gradient-overlay-hover:hover .gradient-overlay-full:before {
  opacity: 1;
}

.xoo-wsc-modal.xoo-wsc-cart-active .xoo-wsc-basket {
  display: none;
}

.xoo-wsc-modal .xoo-wsc-basket {
  display: block;
}

a.remove-padding {
  padding-left: 15px;
  padding-right: 15px;
}

.sync-slider-nav .slick-active {
  opacity: 1;
}

.sync-slider-nav .slick-active > div {
  position: relative;
}

.sync-slider-nav .slick-active > div:before {
  content: "";
  pointer-events: none;
  position: absolute;
  width: 100%;
  height: 100%;
  opacity: 0;
  top: 0px;
  left: 0px;
  border: 4px solid var(--color-primary);
  transition: opacity 0.5s;
}

.sync-slider-nav .slick-active > div:before {
  opacity: 1;
}

.black-overlay {
  position: relative;
}

.black-overlay:before {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.4);
  pointer-events: none;
}

.black-overlay.has-underlay:before {
  z-index: 1;
}

.black-overlay.darker:before {
  background-color: rgba(0, 0, 0, 0.6);
}

.black-overlay.darkest:before {
  background-color: rgba(0, 0, 0, 0.8);
}

/* Add to cart button - Had to use important because woocommerce has a lot of specificity */
button.button,
.add-to-cart-button {
  font-size: 35px !important;
  background-color: var(--color-secondary) !important;
  color: white !important;
  padding: 12px 15px 10px !important;
  text-transform: uppercase !important;
  font-weight: 400 !important;
  font-family: "prohibition_testround", sans-serif !important;
  border-radius: 13px !important;
  transition: opacity 0.5s;
}

button.button:hover,
.add-to-cart-button:hover {
  opacity: 0.6 !important;
}

.added_to_cart.wc-forward {
  display: none !important;
}

.add-to-cart-button.loading {
  padding-right: 20px !important;
  display: flex !important;
}

.add-to-cart-button:after {
  margin-left: 0 !important;
}

.add-to-cart-button.loading:after {
  right: 10px !important;
  top: 10px !important;
}

:where(body:not(.woocommerce-block-theme-has-button-styles))
  .woocommerce
  a.button.loading::after {
  position: static !important;
}

/* Mobile Menu - new updates (lost changes) */
a.first-level,
a.second-level,
a.third-level {
  padding: 11px 9.5px;
  line-height: 1;
}

a.first-level,
.back-btn a {
  font-size: 1.8rem;
}

a.second-level {
  font-size: 1.4rem;
}

a.third-level {
  font-size: 1.2rem;
}

.back-btn {
  background-color: var(--color-primary);
  padding: 1.5rem 0 1.5rem 0.8rem;
  display: flex;
}

.back-btn a {
  color: var(--color-white);
  line-height: 0.8;
  padding: 0;
  position: relative;
  top: 4px;
}

.back-btn .divider {
  flex: 1;
}

.second-level.has-nested-items {
  position: relative;
  transition: 0.5s;
}

.second-level.has-nested-items.open {
  background-color: rgba(237, 29, 36, 0.05);
}

.second-level.has-nested-items ~ ul {
  max-height: 0;
  margin-bottom: 0;
  overflow: hidden;
  transition: 0.5s;
  pointer-events: none;
  margin-left: 0;
  padding-left: 30px;
}

.second-level.has-nested-items.open ~ ul {
  border-top: 2px solid rgba(144, 144, 144, 0.25);
  max-height: 100vh;
  pointer-events: auto;
}

.second-level.has-nested-items:before {
  content: url("assets/images/mobile-menu-submenu-arrow.png");
  position: absolute;
  top: 50%;
  transform: translateY(-50%) rotate(-90deg);
  right: 20px;
  transition: transform 0.5s;
}

.second-level.has-nested-items.open:before {
  transform: translateY(-50%);
}

.second-level.has-nested-items.open ~ ul li a {
  transition: 0.5s;
}

.second-level.has-nested-items.open ~ ul li:hover a {
  color: var(--color-primary);
}

.mobile-contact a {
  display: flex;
  align-items: center;
  gap: 1rem;
  color: var(--color-primary);
}

.mobile-contact a span {
  position: relative;
  top: 2px;
}

@media (max-width: 480px) {
  /* Hero section for very small devices */
  h1.hero-header {
    font-size: 30px;
  }

  a.hero-btn.btn {
    height: 42px;
  }
}

.tailgate-mega-menu-overlay {
  position: relative;
}

.tailgate-mega-menu-overlay:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  pointer-events: none;
  /* background: linear-gradient(to top, rgba(0, 0, 0, 0.9), transparent); */
  background: linear-gradient(to top, rgba(0, 0, 0, 0.9) 30%, transparent);
  transition: background 0.3s;
}

.tailgate-mega-menu-overlay:hover::before {
  background: linear-gradient(to top, rgba(0, 0, 0, 0.9) 10%, transparent);
}

.tailgate-mega-menu-content {
  position: relative;
}

.tailgate-mega-menu-content:after {
  content: "";
  pointer-events: none;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-color: var(--color-black);
  opacity: 0.3;
  z-index: 1;
  transition: opacity 0.3s;
}

.tailgate-mega-menu-content:hover::after {
  opacity: 0.2;
}

#colophon a:hover {
  color: var(--color-white);
  opacity: 0.5;
  transition: opacity 0.3s;
}

/* 3/7/2025 */
.super-bowl-cta {
  max-width: max-content;
  margin-left: auto;

  text-align: center;
  display: flex;
  flex-direction: column;
  position: relative;
}

.super-bowl-title,
.super-bowl-cta span {
  font-size: 5.5rem;
}

.super-bowl-cta span {
  line-height: 0.7;
  margin: auto;
}

.super-bowl-cta .block {
  background-color: var(--color-black);
  height: 0.5rem;
  width: 100%;
}

.super-bowl-details-arrow,
.super-bowl-details-arrow-2 {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  max-width: none;
  pointer-events: none;
  z-index: -1;
  width: 550px;
}

.super-bowl-details-arrow {
  display: none;
}

.super-bowl-small-logo .text-regular {
  font-size: 1.5rem;
}

.super-bowl-small-logo .text-large {
  font-size: 2.5rem;
  line-height: 1;
}

.image-text-title {
  font-size: 2.438rem;
}

.image-text-subtitle {
  line-height: 1;
  font-size: 1.625rem;
  margin-top: 0.5rem;
}

.image-text-copy {
  font-size: 1.25rem;
  margin-top: 1rem;
}

.image-text-copy a {
  text-decoration: underline;
}

.super-bowl-details {
  font-size: 25px;
}

.super-bowl-btn {
  max-width: max-content;
  margin-top: 1rem;
  margin-left: auto;
}

.super-bowl-details-divider {
  display: block;
}

.super-bowl-partners {
  display: flex;
  justify-content: center;
  gap: 1rem;
  flex-wrap: wrap;
}

.super-bowl-partners img {
  width: 48px;
}
@media (max-width: 720px) {
  .super-bowl-partners img {
    width: 48px;
    flex: 1 1 calc(100% / 6 - 1rem); /* Each image takes 1/5 of the row width */
    max-width: calc(100% / 6 - 1rem); /* Ensures a max of 5 per row */
  }
}
/* EO 3/7/2025 */

@media (max-width: 1180px) {
  .super-bowl-details {
    font-size: 21px;
  }
}

@media (max-width: 1023px) {
  .md-below-bg-none {
    background-image: none !important;
  }

  .md-below-hide {
    display: none !important;
  }

  .md-below-h-auto {
    height: auto !important;
  }
  .add-to-cart-button {
    font-size: 28px !important;
  }
}

@media (min-width: 1023px) {
  .lg-above-h-full.sync-slider,
  .lg-above-h-full.sync-slider .slick-list,
  .lg-above-h-full.sync-slider .slick-track {
    height: 100% !important;
  }
}

.scroll-shadow {
  width: 400px;
  height: 20px;
  position: fixed;
  background-image: radial-gradient(
    farthest-side at 50% 100%,
    rgba(0, 0, 0, 0.4) 0%,
    rgba(0, 0, 0, 0) 100%
  );
  left: 60%;
  transform: translateX(-50%);
  opacity: 0;
  transition: opacity 0.5s;
}

.scroll-shadow.bottom {
  bottom: 0;
}

.is-scrollable-bottom > .scroll-shadow.bottom {
  opacity: 1;
}

#primary {
  overflow-x: hidden;
  overflow-y: hidden;
}

.woocommerce img.max-w-\[150px\],
.woocommerce-page img.max-w-\[150px\] {
  max-width: 150px !important;
}

.pre-footer-divider {
  background-color: var(--color-primary);
  height: 2px;
  margin-top: 1rem;
  margin-bottom: 1rem;
}

#footer-logo-list {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 30px;
  flex-wrap: nowrap;
}

#footer-logo-list > div {
  padding: 10px;
}
#footer-logo-list img {
  max-height: 90px;
  width: auto;
  max-width: 100%;
}
@media (max-width: 1024px) {
  /* #footer-logo-list > div {
      flex: 1 1 calc(33.33% - 20px); 
      max-width: calc(33.33% - 20px); 
  } */
  #footer-logo-list > div {
    padding: 5px;
  }
}

.woocommerce-Tabs-panel--description {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

.woocommerce-Tabs-panel--description h2 {
  font-size: 3rem;
  display: none;
}

.woocommerce-Tabs-panel--description a {
  text-decoration: underline;
  color: var(--color-primary);
  transition: 0.5s;
}

.woocommerce-Tabs-panel--description a:hover {
  opacity: 0.6;
}

.woocommerce-notice {
  font-size: 30px;
  line-height: 1.2em;
  margin-bottom: 15px;
}

.woocommerce-order-details .order-again {
  display: none !important;
}

.woocommerce-order-details table.order-details td,
.woocommerce-order-details table.order-details th {
  text-align: left;
  padding: 5px;
}
.woocommerce-order-details table.order-details td[data-column="Ticket"] a {
  background: var(--color-primary);
  border-radius: 10px;
  padding: 10px 50px;
  margin: 0px 0px;
  display: inline-block;
  color: #fff;
  text-decoration: none;
  font-size: 36px;
  line-height: 1.2em;
}
.woocommerce-order-details
  table.order-details
  td[data-column="Ticket"]
  a:hover {
  background: var(--color-black);
}
@media only screen and (max-width: 480px) {
  .woocommerce-order-details table.order-details td::before {
    display: block;
    width: 100%;
    float: none !important;
  }
}

.product-header {
  background-image: url(./assets/images/target-white-space.svg);
  background-repeat: repeat;
}

.mobile-tailgate-logo {
  display: flex;
  justify-content: center;
  width: 80px;
}

.telephone-sublayout {
  font-size: 1.2rem;
  color: var(--color-white);
}

.sponsor-item {
  transition: opacity 0.4s;
}

.sponsor-item:hover {
  opacity: 0.8;
}

.sponsor-item {
  transition: opacity 0.4s;
}

.sponsor-item:hover {
  opacity: 0.8;
}

.primary-overlay:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: var(--color-primary);
  opacity: 0.6;
}

.primary-overlay > div {
  position: relative;
  z-index: 1;
}

.section-image {
  background-position: center bottom;
  background-repeat: no-repeat;
  background-size: cover;
}

.tailgate-features ul ul {
  list-style: inside;
}
.tailgate-item {
  width: 20%;
  padding: 1% 1% 60px 1%;
  margin: 0px 0px 35px 0px;
}
@media (max-width: 1024px) {
  .tailgate-item {
    width: 25%;
    padding: 0px;
  }

  .super-bowl-details-divider,
  .super-bowl-cta {
    display: none;
  }

  .super-bowl-details-arrow {
    display: block;
  }
}

/* Phone: Target devices with a width less than 600px */
@media (max-width: 600px) {
  .tailgate-item {
    width: 33.3%;
    margin: 0px;
    padding: 0px;
  }
}
@media (max-width: 768px) {
  .inactive-tailgates > div {
    max-width: 20%;
  }
}
label[for="payment_method_nmi"] img {
  display: inline-block;
}

.full-divider {
  position: relative;
}

.full-divider:before,
.full-divider:after {
  content: "";
  height: 3px;
  background-color: var(--color-primary);
  width: 100%;
  display: block;
}

.full-divider:before {
  margin-bottom: 0.75rem;
}

h4.ts-package-subheader {
  line-height: 1.2;
}

/* Woocommerce input */
.woocommerce form .form-row .input-checkbox {
  height: 24px;
  width: 24px;
}
#used_verizon_card ~ span.optional {
  display: none !important;
}

.woocommerce div.product form.cart .quantity select {
  border: 1px solid var(--color-black);
}

/* 3/1/2025 */
.quantity-sm-box {
  height: 32px;
  font-size: 1rem;
}

.shortcode-variant-container {
  display: flex;
  flex-direction: column;
  gap: 2rem; /* Equivalent to Tailwind's gap-8 (32px) */
  margin-top: 1rem; /* Equivalent to Tailwind's mt-4 (16px) */
}

#variation-select {
  font-size: 1rem;
}

.variation-select-container .clear-btn {
  font-size: 1rem;
  margin-left: auto;
  margin-top: 1rem;
}

.variation-select-container {
  justify-content: end;
  display: flex;
  flex-direction: column;
}

@media (min-width: 1024px) {
  /* lg breakpoint in Tailwind */
  .shortcode-variant-container {
    flex-direction: row;
  }
}

/* 4/28/2025 -> Packages 2 Template */
.hotel-inclusions ul {
  list-style: disc;
  font-size: 1rem;
  margin-left: 2rem;
}

.packages-2-hotel-item {
  padding: 23px 15px 22px;
  border: 1px solid var(--color-primary);
}

.packages-2-hotel-btn {
  max-width: max-content;
}

.packages-cta {
  padding: 50px 0;
  position: relative;
  color: var(--color-white);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  background-attachment: fixed;
}

.packages-cta:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: var(--color-primary);
  opacity: 0.8;
}

.packages-cta-content {
  position: relative;
  z-index: 1;
}

.packages-cta-copy.wysiwyg a {
  color: var(--color-white) !important;
}

.packages-cta-copy.wysiwyg a:hover {
  opacity: 0.8;
}

.hotel-inclusions {
  max-width: 600px;
  margin-left: auto;
  margin-right: auto;
}

.hotel-inclusions .wysiwyg {
  border: 1px solid var(--color-primary);
  padding: 20px 30px;
  border-radius: 13px;
}

.hotel-inclusions .wysiwyg li {
  margin-bottom: 1rem;
  line-height: 1.1;
}

.hotel-inclusions .wysiwyg li ul {
  margin-bottom: 1rem;
  margin-top: 1rem;
}

.header-layout-3.gradient-overlay-full:before,
.header-layout-3.gradient-overlay:before {
  opacity: 0.8;
}

@media (max-width: 575px) {
  .packages-cta {
    background-attachment: scroll;
  }
}

/* Form Edits
--------------------------------------------- */
.fsLabelVertical {
  display: flex !important;
  margin-bottom: 15px;
  flex-direction: column;
}

.fsSubField {
  display: flex;
  flex-direction: column-reverse;
  margin-bottom:10px;
}

.fsSubmitButton {
  padding: 10px 20px !important;
  background: #000!important;
}

.fsLabel {
	font-weight:bold;
}

select.fsFieldSelect {
	padding:8px !important;
	border-radius:5px;
	border:1px solid #000;
	color:#000 !important;
}