/*
Theme Name: Enchanted Lights 2025
Theme based on Twenty Twenty-Five
Theme URI: https://wordpress.org/themes/twentytwentyfive/
Author: the WordPress team
Author URI: https://wordpress.org
Description: Twenty Twenty-Five emphasizes simplicity and adaptability. It offers flexible design options, supported by a variety of patterns for different page types, such as services and landing pages, making it ideal for building personal blogs, professional portfolios, online magazines, or business websites. Its templates cater to various blog styles, from text-focused to image-heavy layouts. Additionally, it supports international typography and diverse color palettes, ensuring accessibility and customization for users worldwide.
Requires at least: 6.7
Tested up to: 6.8
Requires PHP: 7.2
Version: 1.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: twentytwentyfive
Tags: one-column, custom-colors, custom-menu, custom-logo, editor-style, featured-images, full-site-editing, block-patterns, rtl-language-support, sticky-post, threaded-comments, translation-ready, wide-blocks, block-styles, style-variations, accessibility-ready, blog, portfolio, news
*/

/*
 * Link styles
 * https://github.com/WordPress/gutenberg/issues/42319
 */
a {
	text-decoration-thickness: 1px !important;
	text-underline-offset: .1em;
}

/* Increase the bottom margin on submenus, so that the outline is visible. */
.wp-block-navigation .wp-block-navigation-submenu .wp-block-navigation-item:not(:last-child) {
	margin-bottom: 3px;
}

/* Increase the outline offset on the parent menu items, so that the outline does not touch the text. */
.wp-block-navigation .wp-block-navigation-item .wp-block-navigation-item__content {
	outline-offset: 4px;
}

/* Remove outline offset from the submenus, otherwise the outline is visible outside the submenu container. */
.wp-block-navigation .wp-block-navigation-item ul.wp-block-navigation__submenu-container .wp-block-navigation-item__content {
	outline-offset: 0;
}

/*
 * Progressive enhancement to reduce widows and orphans
 * https://github.com/WordPress/gutenberg/issues/55190
 */
h1, h2, h3, h4, h5, h6, blockquote, caption, figcaption, p {
	text-wrap: pretty;
}

/*
 * Change the position of the more block on the front, by making it a block level element.
 * https://github.com/WordPress/gutenberg/issues/65934
*/
.more-link {
	display: block;
}

/* -----------------------------------------
 * Added Styles for EnchantedLights2025 Template
 * -----------------------------------------
 */

/* -- Theme Colors -- */
:root, :before, :after {
    --color-1: rgba(129,21,255,1);
    --color-1-rgba: rgba(129,21,255,1);
    --color-1-rgb-numbers-only: 129,21,255;
    --clr1-r: 129;
    --clr1-g: 21;
    --clr1-b: 255;
    --color-2: rgba(255,42,208,1);
    --color-2-rgba: rgba(255,42,208,1);
    --color-2-rgb-numbers-only: 255,42,208;
    --clr2-r: 255;
    --clr2-g: 42;
    --clr2-b: 208;
    --color-3: rgba(255,143,42,1);
    --color-3-rgba: rgba(255,143,42,1);
    --color-3-rgb-numbers-only: 255,143,42;
    --clr3-r: 255;
    --clr3-g: 143;
    --clr3-b: 42;
    --color-4: rgba(255,169,17,1);
    --color-4-rgba: rgba(255,169,17,1);
    --color-4-rgb-numbers-only: 255,169,17;
    --clr4-r: 255;
    --clr4-g: 169;
    --clr4-b: 17;
    --gradient-links: rgba(198,198,198,1);
    --gradient-links-rgba: rgba(198,198,198,1);
    --gradient-links-rgb-numbers-only: 198,198,198;
    --grad-links-r: 198;
    --grad-links-g: 198;
    --grad-links-b: 198;
}

header:has(>.is-position-sticky) {
	position: sticky;
	top: calc( 0px + var( --wp-admin--admin-bar--height, 0px ) );
	z-index: 100;
}

.navbar img {
    height: 100px;
    width: auto;
	filter: drop-shadow(rgba(0, 0, 0, 0.92) 4px 4px 4px);
}

/* Neutralize the WP default for 600px to switch from the hamburger mobile menu */
@media (min-width: 600px) {
    .wp-block-navigation__responsive-container-open:not(.always-shown) {
        display: flex;
    }
    .wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open) {
        display: none;
    }
}

.nav-menu > li > a, li.woocommerce-account-actions-and-cart {
    text-transform: uppercase;
    font-weight: 400;
    color: rgba(115,255,0,1) !important;
    font-size: 20px;
    position: relative;
    text-decoration: none;
}

.nav-menu > li > a:hover, li.woocommerce-account-actions-and-cart {
	color: rgba(255,0,80,1) !important;
}

@media (min-width: 1020px) {

	/* Switch from the mobile hamburger menu to the desktop navigation menu */
	.wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open) {
		background-color:inherit;
		display:block;
		position:relative;
		width:100%;
		z-index:auto
	}
	.wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open) .wp-block-navigation__responsive-container-close {
		display:none
	}
	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container.wp-block-navigation__submenu-container.wp-block-navigation__submenu-container.wp-block-navigation__submenu-container {
		left:0
	}

    .wp-block-navigation__responsive-container-open:not(.always-shown) {
	    display: none !important;
	}

	.mobile-only-btn {
		display: none;
	}


	h1.cd-headline {
	    font-size: 40px;
	}

}

@media (max-width: 1220px) {

    h1.cd-headline {
        font-size: 30px;
    }

	.iconic-wsb-product-bumps__image img:not(.iconic-wsb-product-bumps__image--cropped) {
  		width: 120px !important;
	}

}

@media (max-width: 895px) {

    h1.cd-headline {
        font-size: 25px;
    }

}

@media (max-width: 1019px) {

	.nav-menu {
		flex-grow: 0;
	}

	.mobile-only-btn {
		margin-left: auto !important;
	}

	.product-page-title {
  		font-size: 20px !important;
	}

	.section-header {
  		font-size: 24px !important;
	}


}

@media (max-width: 767px) {

	header:has(>.is-position-sticky) {
		top: 0;
	}

    #calendar .blank-day, #calendar .week-header {
        display: none;
    }    

    .page-header {
        font-size: 40px !important;
    }

    #calendar {
        grid-template-columns: repeat(1, 1fr) !important;
        grid-template-rows: repeat(2, 1fr) !important;
        grid-auto-flow: row !important;
    }

	.woocommerce form .form-row-first, .woocommerce form .form-row-last, .woocommerce-page form .form-row-first, .woocommerce-page form .form-row-last {
  		width: 100%;
	}

	.iconic-wsb-product-bumps__image img:not(.iconic-wsb-product-bumps__image--cropped) {
  		width: 90px !important;
	}
}

@media (max-width: 769px) {

	.product-name {
		display: block !important;
	}

	#add_payment_method #payment, .woocommerce-cart #payment, .woocommerce-checkout #payment .woocommerce-page table.shop_table {
		width: 100% !important;
	}

}

.navbar {
	position: relative;
	z-index: 999;
}

.navbar-background {
  position: absolute;
  width: 100%;
  z-index: 10;
  height: 70px;
  padding: 0;
  top: 10px;
}

.nav-menu {

}

.vertical-line-spacer {
	background-color: #b1b1b1;
	height: 30px !important;
}

:root {
    --conic-gradient: conic-gradient( #FF2E2E, #FF831E, #FCFF51, #58FF57, #575FFF, #D257FF, #FF57E5, #FF1556 )
}

.rgb-animated-btn > a {
    width: 139px;
    height: 34px;
    border-radius: 5px;
    position: relative;
    display: flex!important;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    cursor: pointer;
    transition: transform .3s ease
}

.rgb-animated-btn > a::before {
    content: '';
    position: absolute;
    width: 150%;
    height: 450%;
    background: var(--conic-gradient);
    animation: spin 1.5s infinite linear
}

.rgb-animated-btn > a::after {
    content: 'TICKETS';
    position: absolute;
    background-color: #151320;
    width: 133px;
    height: 28px;
    border-radius: 5px;
    font-size: 17px;
    letter-spacing: 1px;
    color: #fffb00;
    font-weight: 500;
    display: flex!important;
    align-items: center;
    justify-content: center
}

.rgb-animated-btn > a:hover {
    transform: scale(1.1)
}

.rgb-animated-btn > a:hover::before {
    animation: spin 1.5s infinite linear
}

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

.wp-block-navigation__responsive-container-close svg, .wp-block-navigation__responsive-container-open svg {
  fill: rgba(115,255,0,1);
  display: block;
  height: 50px;
  pointer-events: none;
  width: 50px;
}


/* ----- BEGIN -- Mobile Menu Modal and Content Formatting */
.wp-block-navigation:not(.has-background) .wp-block-navigation__responsive-container.is-menu-open {
	background-color: #000;
}

.wp-block-navigation:not(.has-text-color) .wp-block-navigation__responsive-container.is-menu-open {
  color: #000;
}

.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation-item__content {
	font-size: 35px;
}

.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .rgb-animated-btn {
	width:250px;
	height: auto;
}

.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .rgb-animated-btn > a {
    width: 250px;
    height: auto;
}

.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .rgb-animated-btn > a::before {
    width: 240%;
    height: 540%;
}

.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .rgb-animated-btn > a::after {
    width: 240px;
    height: 41px;
    font-size: 35px;
}

.wp-block-navigation__responsive-container-close {
	padding-bottom: 30px;
}

.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content > ul.is-responsive:nth-child(1) {
	padding-top: 30px;
}


.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content > ul.nav-menu:not(:last-child) > li {
	border-bottom: 3px solid #5e5e67;
}

.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-social-links {
	display: none;
}
/* ----- END -- Mobile Menu Modal and Content Formatting */


.entry-content {	
	margin-block-start: 0;	
}

.wp-block-cover__video-background {
	opacity: 50%;
}

.header-tagline {
    color: #21F70D;
    text-shadow: 2px 2px 3px black;
    font-size: 26px;
    padding-bottom: 25px;
}

.btn-tickets {

}

/* ----- Begin -- Rotating Headline */

h1.cd-headline {
    color: #FFFFFF;
    text-transform: inherit;
    line-height: 1.35;
    letter-spacing: -2.0px;
    font-weight: 700;
    padding-bottom: 0px;
  	margin-bottom: 0px;
}

.cd-headline-prefix {
    text-shadow: 2px 5px 7px black
}

.cd-headline.rotate-1 .cd-words-wrapper {
  display: inline-block;
  perspective: 300px;
}

.cd-headline.rotate-1 b {
  opacity: 0;
  transform-origin: 50% 100%;
  transform: rotateX(180deg);
  display: inline-block;
  position: absolute;
  left: 0;
  top: 0;
}

.cd-headline.rotate-1 b.is-visible {
  position: relative;
  opacity: 1;
  transform: rotateX(0deg);
}

.cd-headline.rotate-1 b {
  opacity: 0;
  transform-origin: 50% 100%;
  transform: rotateX(180deg);
  display: inline-block;
  position: absolute;
  left: 0;
  top: 0;
}

.cd-headline.rotate-1 b.is-visible {
  position: relative;
  opacity: 1;
  transform: rotateX(0deg);
  animation: cd-rotate-1-in 1.2s;
}

.cd-headline.rotate-1 b.is-hidden {
  transform: rotateX(180deg);
  animation: cd-rotate-1-out 1.2s;
}

@keyframes cd-rotate-1-in {
  0% {
    transform: rotateX(180deg);
    opacity: 0;
  }
  35% {
    transform: rotateX(120deg);
    opacity: 0;
  }
  65% {
    opacity: 0;
  }
  100% {
    transform: rotateX(360deg);
    opacity: 1;
  }
}

@keyframes cd-rotate-1-out {
  0% {
    transform: rotateX(0deg);
    opacity: 1;
  }
  35% {
    transform: rotateX(-40deg);
    opacity: 1;
  }
  65% {
    opacity: 0;
  }
  100% {
    transform: rotateX(180deg);
    opacity: 0;
  }
}


/* ----- End -- Rotating Headline */

.btn-gradient-outline, .btn-gradient-outline-hard, .btn-gradient-outline-hard:before, .btn-gradient-outline:before, .btn-gradient:before, .btn-lg:not([class*=btn-]):before, .btn-sm:not([class*=btn-]):before, .btn:before, .btn:not([class*=btn-]):before, .gradient-back-v1, .gradient-back-v1-hover:hover, span.underliner:before {
    background: rgb(var(--clr1-r),var(--clr1-g),var(--clr1-b));
    background: -o-linear-gradient(left,rgba(var(--clr1-r),var(--clr1-g),var(--clr1-b),1) 0,rgba(var(--clr2-r),var(--clr2-g),var(--clr2-b),1) 50%,rgba(var(--clr3-r),var(--clr3-g),var(--clr3-b),1) 100%);
    background: -webkit-gradient(linear,left top,right top,from(rgba(var(--clr1-r),var(--clr1-g),var(--clr1-b),1)),color-stop(50%,rgba(var(--clr2-r),var(--clr2-g),var(--clr2-b),1)),to(rgba(var(--clr3-r),var(--clr3-g),var(--clr3-b),1)));
    background: linear-gradient(90deg,rgba(var(--clr1-r),var(--clr1-g),var(--clr1-b),1) 0,rgba(var(--clr2-r),var(--clr2-g),var(--clr2-b),1) 50%,rgba(var(--clr3-r),var(--clr3-g),var(--clr3-b),1) 100%);
}

.clipped-text, .clipped-text-hover:hover {
  display: inline-block;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent;
  filter: drop-shadow(2px 2px 3px rgb(0, 0, 0))
}

.cover-content {
	text-align: center;
}


/* ----- Begin -- Glowing Button */

a.glowing-button {
    position: relative;
    width: 250px;
    height: 60px;
    line-height: 58px;
    font-size: 30px;
    font-weight: 700;
    letter-spacing: 1px;
    text-decoration: none;
}

a.glowing-button::before{
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(45deg, #fb0094, #00f, #0f0, 
    #ff0, #f00, #fb0094, #00f, #0f0, #ff0, #f00);
    background-size: 400%;
    opacity: 1;
    filter: blur(20px);
    transition: 0.5s;
    animation: animate 20s linear infinite;
}
a.glowing-button::after{
    content: '';
    position: absolute;
    top: -3px;
    left: -4px;
    width: 103%;
    height: 111%;
    background: linear-gradient(45deg, #fb0094, #00f, #0f0, 
    #ff0, #f00, #fb0094, #00f, #0f0, #ff0, #f00);
    background-size: 400%;
    opacity: 1;
    transition: 0.5s;
    animation: animate 20s linear infinite;
}

a.glowing-button:hover::before,
a.glowing-button:hover::after{
    color: rgb(119, 23, 23);
}

@keyframes animate{
    0%{
        background-position: 0 0;
    }
    50%{
        background-position: 300% 0;
    }
    100%{
        background-position: 0 0;
    }
}

a.glowing-button span{
    position: absolute;
    display: block;
    top: 1px;
    left: 1px;
    right: 1px;
    bottom: 1px;
    text-align: center;
    background: #ffef00;
    color: rgb(119, 23, 23);
    z-index: 1;
}

a.glowing-button:hover span{
    background: #000000;
    color: rgb(255, 255, 255);
    font-weight: 600;
}

a.glowing-button span::before{
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 50%;
    background: rgba(255, 255, 255, 0.1);
}

/* ----- End -- Glowing Button */

.no-margin {
	margin:0;
}

.testimonial-quote {
	color: #70fd9c;
	line-height: 25px;
	font-size: 18px;
}

.feature-title {
	font-size: 24px;
	font-weight: 600;
}
.feature-description {
	color: #C6C6C6;
 	text-transform: initial;
 	font-size: 16px;
 	line-height: 24px;
 	font-weight: 400;
    letter-spacing: 1px;
}

.sleigh-section {
    margin-top: 60px;
}

.section-header {
    font-size: 40px;
    font-weight: 600;
}

.section-text {
    font-size: 20px;
    color: #dbd9d9;
}

.highlighted-text {
    color: orange;
    text-decoration: underline;
}

.page-header {
  text-transform: uppercase;
  font-size: 77px;
  line-height: 1.1;
  letter-spacing: 0px;
  font-weight: 700;
  text-align: center;
  padding-top: 30px;
}

/* ----- Begin -- Calendar Styles ------ */

#calendar {
    gap: 0px 0px;
    grid-auto-flow: row;
    border-radius: 0px 0px 0px 0px;
}

#calendar .week-header {
  text-align: center;
  height: 40px;
  background: #3f8e2e;
  white-space: nowrap;
  padding-top: 10px;
  font-size: 19px;
}

#calendar .day {
    padding: 3px;
    background-color: rgb(245, 245, 245);
    gap: 0px;
    width: 100%;
	height: 100%;
}

#calendar .date {
  text-align: center;
  background: #333;
  color: #fff;
  height: 30px;
  padding-top: 7px;
  line-height: 1.4;
  font-size: 18px;
  width: 100%;
  letter-spacing: 2px;
}

#calendar .event {
  display: block;
  margin-top: 1px;
  margin-bottom: 5px;
  background: #cfffdb;
  border: 1px solid #196c6f;
  color: #009aaf;
  text-decoration: none;
  width: 100%;
}

#calendar .event-desc {
  color: #000;
  font-size: 16px;
  padding-top: 3px;
}

#calendar .calendar-event-rides {
	width: 100%;
  background-color: #d2f0ff;
  line-height: 0.2;
  padding-top: 10px;
  padding-bottom: 5px;
}

#calendar .calendar-event-corn {
	width: 100%;
  background-color: #fffed2;
  line-height: 0.2;
  padding-top: 10px;
  padding-bottom: 5px;
}

#calendar .calendar-event-lights {
  width: 100%;
  background-color: #ede3f4;
  line-height: 0.2;
  padding-top: 10px;
  padding-bottom: 5px;
}

#calendar .event-price, .event-price p {
  color: #884bb5;
  font-size: 18px;
  text-align: center;
  font-weight: 600;
  margin-bottom: 5px;
  margin-top: 5px;
}

#calendar .event-time {
    color: #a02020;
    font-size: 15px;
    text-align: center;
    margin-bottom: 10px;
}

#calendar .calendar-button {
  width: 100%;
  margin-top: auto;
}

#calendar .blank-day {
  width: 100%;
  heigh: 100%;
  background-color: rgb(245, 245, 245);
}

#calendar .calendar-button a {
  background: #f7d629;
  border: 1px solid #ff6c00;
  color: #732d2a;
  text-decoration: none;
  display: block;
  font-size: 16px;
  height: 35px;
  font-weight: 500;
  line-height: 2;
  overflow: hidden;
  padding-left: 5px;
  padding-right: 5px;
}

#calendar .calendar-button a:hover {
  color: #ffffff;
  background: #d42aec;
}

#calendar .calendar-button a:hover {
  color: #ffffff;
  background: #d42aec;
}

#calendar .sold-out a {
    pointer-events: none; /* Disables clicking and hovering */
    color: grey;          /* Changes the text color to grey */
    text-decoration: none;/* Removes the underline */
    background-color: #d4d2d2;
    border: 1px solid grey;
}

#calendar .unavailable a {
    pointer-events: none; /* Disables clicking and hovering */
    color: grey;          /* Changes the text color to grey */
    text-decoration: none;/* Removes the underline */
    background-color: #d4d2d2;
    border: 1px solid grey;
}

#calendar .unavailable .event {
    background-color: white;
}

/* ----- End -- Calendar Styles ------ */

.calendar-footer {
    font-size: 20px;
    color: #eeeacb;
}

.faq-page-title {
    font-size: 64px;
}

.title-question {
    font-size: 26px;
    padding-left: 2em;
    text-indent:-2em;
}

.faq-answer-title {
    font-size: 26px;
    color: #ffbaf7;
}

.faq-answer-text {
    font-size: 18px;
    color: #eeeacb;
    padding-left: 50px;
}

.faq-section {
    background-color: #CB7501;
    margin-top: 10px;
}

.toggle-item {
    width: 100%;
}

.toggle-item p {
    padding-left: 20px;
}

.toggle-item summary {
  background-color: #4D1343;
  line-height: 1;
  margin: 0;
  padding: 15px;
  border-bottom: 1px solid #d4d4d4;
  cursor: pointer;
  outline: none;
  color: #ccffa3;
}

.faq-questions {
    font-size: 18px;
    font-weight: 400;
}

.faq-box {
    max-width: 1400px;
    padding-top: 20px;
    padding-bottom: 20px;
}

.restrictions-box {
    margin: 0 auto;
    width: 80%;
    font-size: 18px;
    line-height: 1;
    margin-top:50px;
    color:#ffe300;
}

.map-img img {
    border: 2px solid #7b5f4b
}

.corny-main-logo img {
    margin-top: 50px;
}

.features-section {
    max-width: 1200px;
    margin-right: auto;
  margin-left: auto;
}

.location-section {
    max-width: 1200px;
    margin-right: auto;
    margin-left: auto;
}

.testimonials-section {
    max-width: 1200px;
    margin-right: auto;
    margin-left: auto;
}

.faq-title-section {
    max-width: 1200px;
    margin-right: auto;
    margin-left: auto;
    margin-top: 50px;
}

.christmas-section {
    max-width: 1200px;
    margin-right: auto;
    margin-left: auto;
}

.policy-text {
    font-size: 18px;
    color: #dbd9d9;
    text-align: left;
}

input, textarea {
  outline: none;
  padding-top: 12px;
  padding-right: 18px;
  padding-bottom: 10px;
  padding-left: 18px;
  margin-bottom: 18px;
  color: rgba(204,215,224,1);
  background-color: rgba(142,151,161,0.09);
  border-top-width: 0;
  border-right-width: 0;
  border-bottom-width: 1px;
  border-left-width: 0;
  border-top-style: none;
  border-left-style: none;
  border-bottom-style: solid;
  border-right-style: none;
  border-top-color: rgba(255,255,255,0.01);
  border-right-color: rgba(255,255,255,0.01);
  border-bottom-color: rgba(255,255,255,0.45);
  border-left-color: rgba(255,255,255,0.01);
}
body, button, input, optgroup, select, textarea {
}
button, hr, input {
  overflow: visible;
}
button, input, optgroup, select, textarea {
  margin: 0;
    margin-bottom: 0px;
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
}

input:hover, textarea:hover {
  color: rgba(204,215,224,1);
}
input:focus:hover, input:hover, textarea:focus:hover, textarea:hover {
  border-top-color: rgba(255,255,255,0.01);
  border-right-color: rgba(255,255,255,0.01);
  border-bottom-color: rgba(255,255,255,0.65);
  border-left-color: rgba(255,255,255,0.01);
}

button, button[type="submit"], input[type="button"], input[type="reset"], input[type="submit"] {
  background-color: #2c4253;
  border-color: #00dcff;
}

button:hover, button[type="submit"]:hover, input[type="button"]:hover, input[type="reset"]:hover, input[type="submit"]:hover {
  border-color: #d3ff2a;
  background-color: #111210;
}

.product-page-title {
  font-size: 38px;
  font-weight: 600;
  color: #ff76ff;
}

.product-page-exerpt {
   font-size: 18px;
   color: #acd5ba;
}

.product-page-variation-title {
	
}
.product-page-variation-dropdown {
	font-size: 22px;
    font-weight: 400;
}

.product-page-variation-dropdown tr {
	display: block;
}

.product-page-variation-dropdown th {
	line-height: initial !important;
	margin-bottom: 0px !important;
	padding-bottom: 0px !important;
}

.product-page-variation-dropdown .value {
	line-height: initial !important;
	display: block;
}


.product-page-variation-dropdown label {
	display: block;
	font-weight: 400 !important;
	margin-bottom: 0px;
	padding-bottom: 0px;
}
.product-page-variation-dropdown select {
  border-color: rgba(129,21,255,1);
  box-shadow: 0 0 0 0.25rem rgba(129, 21, 255, 0.25);
  background-size: 30px !important;
  -webkit-background-size: 30px !important;
  background-color: #d2d6a4 !important;
}

.woocommerce-variation-description {
	font-size: 20px;
	color: #f7e5e5;
}

.ticket-date {
	color: #eeff2a;
}

input.input-text.qty.text {
  background-color: #fff;
  font-size: 20px;
  color: #000;
  font-weight: 600;
  text-align: center;
  width: 120px;
}

button.single_add_to_cart_button.button.alt, iconic-wsb-product-bumps__button, button, button[type="submit"] {
  width: 100%;
  border-color: #00ff34ed;
  background: #284a29;
  opacity: 1;
  border-style: solid;
  border-width: 1px;
  border-radius: 3px;
  color: white;
  font-size: 20px;
}

.single_add_to_cart_button.wc-variation-selection-needed {
  border-color: red !important;
  background: #221a1b !important;
  color: #7b6969;
}

#tab-title-description {
    display: none;
}

#tab-description {
	color: #cdc9e3;
}

/* Cart Page */
.woocommerce table.shop_table {
  border-spacing: 0;
  border-collapse: separate;
  font-weight: 400 !important;
  border: 1px solid rgba(8, 186, 255, 0.5);
}

.woocommerce table.shop_table tbody th, .woocommerce table.shop_table tbody td {
   border: 1px solid rgba(69, 75, 77, 0.5);
   font-weight: 400 !important;
}

@media screen and (min-width: 48em) {
  table.shop_table_responsive thead {
    display: table-header-group;
  }
}

.shop_table thead {
  background-color: #10202f;
}

.woocommerce-cart main .woocommerce {
	max-width: unset;
	font-size: 16px;
}

.woocommerce-page .woocommerce-cart-form .product-thumbnail a img {
	display: none;
}

#add_payment_method .cart-collaterals .cart_totals tr td, #add_payment_method .cart-collaterals .cart_totals tr th, .woocommerce-cart .cart-collaterals .cart_totals tr td, .woocommerce-cart .cart-collaterals .cart_totals tr th, .woocommerce-checkout .cart-collaterals .cart_totals tr td, .woocommerce-checkout .cart-collaterals .cart_totals tr th {
  border-top: 1px solid #e9e6ed5c;
}

.woocommerce .cart .button, .woocommerce .cart input.button {
  	width: unset;
	float: none;
	padding-top: 5px;
    padding-bottom: 5px;
    padding-left: 15px;
    padding-right: 15px;
}

.woocommerce-cart a.button.wc-forward {
  background: #551387;
  width: 80%;
  text-align: center;
  padding: 7px 12px;
  margin: 4px 4px 15px;
  border: 2px solid rgba(129,21,255,1);
  border-radius: 3px;
  font-size: 18px;
  font-weight: 400;
  text-transform: uppercase;
  display: inline-block;
}

.woocommerce-cart a.button.wc-forward:hover {
  color: #ffe661;
}

.wc-proceed-to-checkout {
	text-align: center;
}

.woocommerce-checkout main .woocommerce {
  max-width: unset;
}
.woocommerce .col2-set .col-1, .woocommerce-page .col2-set .col-1, .woocommerce .col2-set .col-2, .woocommerce-page .col2-set .col-2 {
  float: initial;
  width: 60%;
  margin: 0 auto;
}

#order_review_heading {
	text-align: center;
}

.woocommerce-checkout-review-order-table {
	margin: 0 auto !important;
	font-size: 18px;
}

.woocommerce table.shop_table tbody th, .woocommerce table.shop_table tfoot td, .woocommerce table.shop_table tfoot th {
  font-weight: 400;
}

.woocommerce form input.input-checkbox, .woocommerce form input[type="checkbox"] {
  appearance: auto;
  width: 30px;
  height: 30px;
  vertical-align: middle;
}

#add_payment_method #payment, .woocommerce-cart #payment, .woocommerce-checkout #payment {
  background: black;
  margin-top: 50px;
  width: 70%;
  margin: 0 auto;
	margin-top: 50px;
}

.el-product-price {
	font-size: 28px;
    line-height: 2.5em;
    color: #ff8339;
}

.footer-columns {
    row-gap: .5rem;
}

.iconic-wsb-product-bumps__header {
  background: rgb(7, 103, 85);
}

.iconic-wsb-product-bumps__title {
  font-size: 18px;
}

.iconic-wsb-product-bumps {
  border: 1px solid rgb(7, 103, 85);
  margin-top: 0px;
}

.iconic-wsb-product-bumps__image img:not(.iconic-wsb-product-bumps__image--cropped) {
  width: 170px;
  height: auto;
  border-color: #256d71;
  padding: 10px;
  border-width: 2px;
  border-style: solid;
  margin-left: 10px;
  margin-right: 10px;
}

.iconic-wsb-product-bumps--has-sales-pitch .iconic-wsb-product-bumps__images {
  padding-bottom: 5px !important;
  margin-bottom: 0px !important;
  margin-top: 15px !important;
}

.woocommerce-variation-add-to-cart .quantity {
	max-height: 40px;
}

.single_add_to_cart_button {
	word-break: initial;
}

.iconic-wsb-product-bumps__image::after {
  font-size: 50px;
  width: 25px;
}

.iconic-wsb-product-bumps__sales_pitch {
  background: none;
  font-size: 16px;
	color: #6daba3;
}

.iconic-wsb-bump-product__title, .iconic-wsb-bump-product__price {
   margin: 0 5px 0 0;
  font-size: 16px;
  font-weight: 200;
}

.iconic-wsb-bump-product__checkbox {
	width: 20px !important;
	height: 20px !important;
	position: absolute;
	top: 8px;
}

select.iconic-wsb-bump-product__select {
	padding-left: 10px;
    padding-top: 7px;
    padding-bottom: 7px;
    padding-right: 10px;
    font-size: 16px;
}

.iconic-wsb-bump-product__body {
	padding-left: 35px;
}

.iconic-wsb-product-bumps__total-price-label {
  opacity: 0.8;
  font-size: 18px;
}

button:hover, button[type="submit"]:hover, input[type="button"]:hover, input[type="reset"]:hover, input[type="submit"]:hover {
    border-color: #d3ff2a;
    background-color: #471151;
}

.iconic-wsb-product-bumps__total-price-amount {
    font-size: 100%; 
    display: block;
}

.product-attraction-title {
	text-decoration: underline;
    color: #ffe19b;
}

.hidden {
    display: none !important;
}

.custom-vertical-gallery {
    display: flex;
    flex-direction: column;
    gap: 15px;
}

.custom-vertical-gallery img {
    width: 100%; /* Adjust as needed */
    max-width: 600px; /* Optional max width */
    height: auto;
}

.already-in-cart-text {
	font-size: 16px;
	color: #ffcd00;
}

.wc-block-components-notice-banner a {
    color: #913333;
}

.order-received-text {
	font-size: 18px;

}

.order-received-text h1 {
    font-size: 28px;
    padding-top: 0px;
    margin-top: 0px;
    color: #ffdb7c;
}

.wp-block-woocommerce-order-confirmation-status {
	font-size: 18px !important;
}

.wp-block-woocommerce-order-confirmation-status p {
	margin-bottom: 30px;
	color: #f6ffbf;
}

.wc-block-order-confirmation-summary-list-item__key {
	font-weight: 400;
	color: #ffb76d;
}

.wc-block-order-confirmation-totals table {
    border: 1px solid hsl(152.86deg 36.29% 53.28%);
    border-radius: 0px;
    background-color: #292b2a6e;
}

.wc-block-order-confirmation-totals table thead {
	background-color: #013104;
	font-weight: 500px;
}

.wc-block-order-confirmation-totals__table th, .wc-block-order-confirmation-totals__table td {
    border: 1px solid #373535 !important;
}

.fooevents-attendee-number {
	display: none;
}

.fooevents-eventname {
	color: #e6f844;
}

#add_payment_method #payment, .woocommerce-cart #payment, .woocommerce-checkout #payment {
    width: 70%;
}

#add_payment_method #payment div.payment_box .form-row, .woocommerce-cart #payment div.payment_box .form-row, .woocommerce-checkout #payment div.payment_box .form-row {
    margin: 0 0 10px;
}

#add_payment_method #payment div.form-row, .woocommerce-cart #payment div.form-row, .woocommerce-checkout #payment div.form-row
{
    padding: 0em;
}

#add_payment_method #payment div.payment_box, .woocommerce-cart #payment div.payment_box, .woocommerce-checkout #payment div.payment_box {
    margin: 1em 0;
    font-size: 18px;
    border-radius: 0px;
    line-height: 1.5;
    background-color: #000;
    color: #fff;
}

.woocommerce-page form .form-row label {
    margin-bottom: 0px;
}

.order-received-text p {
	color: #f6ffbf;
}

/* This section is for the non-block version of the WooCommerce Order Confirmation Page */
.woocommerce-page ul.woocommerce-order-overview {
  font-size: 20px;
  font-weight: 300;
  color: #ffb76d;
}

.woocommerce-page ul.woocommerce-order-overview strong {
	color: #fff;
}

.woocommerce-order-details__title {
	font-size: 28px;
    margin-bottom: 10px;
}

.woocommerce-page table.shop_table {
  width: 70%;
  border-collapse: inherit;
  border: 1px solid hsl(152.86deg 36.29% 53.28%);
  border-radius: 0px;
  background-color: #000;
  text-align: left;
  line-height: 1;
  margin-bottom: 40px;
}

.woocommerce-order-details table thead {
	background-color: #013104;
	font-weight: 500px;
}

.woocommerce-order-details th, .woocommerce-order-details td {
    border: 1px solid #373535 !important;
	font-weight: normal;
}

.barcode-wrapper {
	width: 100%;
	text-align: center;
}
.ticket-barcode {
	width: 400px; 
}

.product-purchase-note p {
	font-weight: normal;
	line-height: 1.2;
}

.product-purchase-note strong {
	color: #da9090;
}
