/*
Theme Name: Impreza Child
Template: Impreza
Version: 1.0
Author:	UpSolution
Theme URI: http://impreza.us-themes.com/
Author URI: http://us-themes.com/
*/

/*Add your own styles here:*/


/* ==========================================================================
   PLUGINS / THIRD PARTY
   ========================================================================== */
.cmplz-cookiebanner .cmplz-buttons {
    flex-direction: row-reverse;
}

.grecaptcha-badge {
    visibility: hidden;
}


/* ==========================================================================
   GLOBAL / UTILITIES
   ========================================================================== */
.w-toplink{
	border-radius: 100px !important;
    background: linear-gradient(180deg, #FCFFCE 0%, #13284547 80%, #132845 100%) !important;
}



/* ==========================================================================
   INTRO VIDEO
   ========================================================================== */
#page-content > section:not(#scroll-intro-row):not(#intro-video-row) {
  transition: opacity .5s ease;
}

#intro-video-row{
	position: fixed;
    inset: 0;
    z-index: 200;
    background: #132845;
    padding: 0;
    margin: 0;
    width: 100dvw;
    height: 100dvh;
	transition: .5s ease;
}
#intro-video-row .l-section-h.i-cf, #intro-video-row .g-cols, #intro-video-row .wpb_column.vc_column_container, #intro-video-row .vc_column-inner{
	    height: 100%;
    max-height: 100%;
    width: 100%;
    display: block;
}
#intro-video-row .vc_column-inner{
	display: flex;
    align-items: center;
}
#intro-video-row>.l-section-h.i-cf{
	padding: 0;
}

#intro-video-row .w-html{
	display: flex;
    justify-content: center;
    align-items: center;
	width: 100%;
}

#intro-video-row .w-html #intro-video{
    height: 100%;
    object-fit: cover;
}


/* ==========================================================================
   SCROLL INTRO
   ========================================================================== */
#scroll-intro-row, #scroll-intro-row #intro-wrapper{
	 transition: opacity .5s ease;
}

#scroll-intro-row #intro-wrapper>.intro-slide{
	position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  transition: opacity .5s ease;
  pointer-events: none;
}
#scroll-intro-row #intro-wrapper>.intro-slide:first-of-type .wpb_text_column>.wpb_wrapper>p:last-of-type{
	font-size: 18px;
}
#scroll-intro-row #intro-wrapper>.intro-slide.active {
  opacity: 1;
  pointer-events: auto;
}

#scroll-intro-row #intro-wrapper .w-image img{
	width: 100% !important;
}


/* ==========================================================================
   HEADER
   ========================================================================== */
header #main-menu li.menu-item .w-nav-title, header #main-menu2 li.menu-item .w-nav-title{
	position: relative;
}

header #main-menu li.menu-item:not(#menu-item-14519) .w-nav-title::before, 
header #main-menu2 li.menu-item .w-nav-title::before{
	content: "";
    height: 1px;
    display: inline-block;
    width: 0%;
    background-color: #FCFFCE;
    position: absolute;
    bottom: 0;
    left: 0;
	transition: .3s ease;
}


header #main-menu li.menu-item:not(#menu-item-14519):hover .w-nav-title::before,
header #main-menu2 li.menu-item:hover .w-nav-title::before{
	width: 100%;
}
header .l-subheader.at_middle .l-subheader-cell.at_right{
	padding-right: var(--menu-items-gap, 20px);
}
header #main-menu li#menu-item-14519 .w-nav-title{
	padding: 0.55em 1.1em;
    background-color: #FCFFCE;
	border: 1px solid transparent;
    border-radius: 200px;
    color: #132845;
	transition: .3s ease;
	
}

header #main-menu li#menu-item-14519 .w-nav-title:hover{
    background-color: rgba(252,255,206,0.2);
    color: #132845;
	border-color: #FCFFCE;
	color: #FCFFCE;
}

header .line-container{
	flex: 1;
}

header .l-subheader.at_middle{
	border-top: 1px solid;
}

header .l-subheader.at_bottom{
	border-top: 1px solid;
	border-bottom: 1px solid;
}

header #countdown{
	display: flex;
    gap: 1rem;
	align-items: center;
}

header #countdown .number{
	font-size: 28px;
	margin-right: 0.4rem;
	display: inline-block;
	min-width: 2ch;
	text-align: right;
}

header #countdown .text{
	font-size: 18px;
}


/* ==========================================================================
   HERO ROW
   ========================================================================== */
#hero-row .hero-shows-container{
	display: grid !important;
    grid-template-rows: auto auto auto;
    justify-content: unset;
}
#hero-row .g-cols.vc_row:first-of-type{
	grid-template-columns: auto 1fr;
    align-items: center;
    gap: 0 1rem;
}
#hero-row .g-cols.vc_row:first-of-type>.wpb_column:last-of-type{
	position: static;
    grid-column: 1 / 3;
}

#hero-row .shows-grid{
	display: grid !important;
    grid-template-columns: repeat(5, 1fr);
    grid-row: 2;
    width: 80%;
    justify-items: center;
    margin: 0 auto;
}
/*
#hero-row .shows-grid > *:nth-child(-n+3), #hero-row .shows-grid > *:nth-child(n+8){
	grid-column: span 4;
}
#hero-row .shows-grid > *:nth-child(n+4):nth-child(-n+7){
	grid-column: span 3;
}
*/

/*#hero-row .shows-grid > *:nth-child(-n+3) {
  grid-column: span 2;
}

#hero-row .shows-grid > *:nth-child(n+6) {
  grid-column: span 2;
}

/* Centra la segunda fila empezando en la columna 2 */

/*#hero-row .shows-grid > *:nth-child(6) {
  grid-column: 2 / span 2;
}*/

#hero-row .bottom-info{
	grid-row: 3;
    justify-self: center;
    align-self: end;
    width: 100%;
    justify-content: space-between;
    padding: 0.8rem;
	gap: 0.5rem;
}

#hero-row .concert .name{
	font-size: 36px;
	margin-top: 0.8rem;
}
#hero-row .concert .sub-name{
	margin-top: 0.3rem;
}
#hero-row .concert p{
	display: flex;
    flex-direction: column;
    align-items: center;
}

#hero-row .concert p>br{
	display: none;
}

#hero-row .background-video-container video{
	width: 100%;
    height: 100%;
    object-fit: cover;
}




/* ==========================================================================
   SUN DEATH ROW
   ========================================================================== */
/*#sun-death-row .sun-death-circle{
	border-radius: 85vw 85vw 0 0;
    width: 100%;
    margin: 0 auto;
    aspect-ratio: 2 / 1;
}

#08-sun-death-row .vc_column-inner{
	min-height: 2387px !important;
	position: relative;
}*/

#sun-death-row{
	overflow-x: clip;
}
#sun-death-row .artist img{
	width: 100%;
}


/* ==========================================================================
   CONCERTS ROW
   ========================================================================== */
#concerts-row{
	background: linear-gradient(180deg, #132845 0%, rgba(78, 95, 104, 0.96) 5.29%, rgba(149, 160, 146, 0.92) 12.98%, #C6CDAE 24.04%, #FCFFCE 64.9%)
}
#concerts-row #concerts-list .concierto .share-btn{
	cursor: pointer;
}
#concerts-row #concerts-list .concierto{
	padding: 1rem 0;
}
#concerts-row #concerts-list .concierto .outer-wrapper>.header-wrapper .title-wrapper>.w-post-elm.post_title{
	cursor: pointer;
}
#concerts-row #concerts-list .concierto .outer-wrapper>.header-wrapper .title-wrapper .w-text{
	opacity: 0;
	transition: .3s ease;
}
#concerts-row #concerts-list .concierto .outer-wrapper>.header-wrapper .title-wrapper{
	justify-content: space-between;
}
#concerts-row #concerts-list .concierto .outer-wrapper>.header-wrapper .date-wrapper .line{
	flex: 1;
}
#concerts-row #concerts-list .concierto .outer-wrapper>.content-wrapper .info-wrapper>*{
	flex: 1;
}
#concerts-row #concerts-list .concierto .outer-wrapper>.content-wrapper{
	height: 0;
	transition: .5s cubic-bezier(0.5, 0, 0.3, 1);
}
#concerts-row #concerts-list .concierto .outer-wrapper>.content-wrapper .info-wrapper .data-wrapper{
	justify-content: space-between;
}

#concerts-row #concerts-list .concierto .outer-wrapper>.content-wrapper .info-wrapper .data-wrapper .data .line{
	flex: 1;
}
#concerts-row #concerts-list .concierto .outer-wrapper>.content-wrapper .tickets-wrapper .btn-wrapper .info-mobile-btn{
	display: none;
	flex: .3;
}
#concerts-row #concerts-list .concierto .outer-wrapper>.content-wrapper .tickets-wrapper .btn-wrapper>.w-btn:last-child{
	flex: 1;
}
#concerts-row #concerts-list .concierto:hover .outer-wrapper>.header-wrapper .title-wrapper .w-text{
	opacity: 1;
}


/* ==========================================================================
   ME MARBELLA ROW — GALLERY
   ========================================================================== */
#me-marbella-row .img-gallery .w-gallery-list>.w-gallery-item:first-child{
	grid-column: 1 / 3;
    grid-row: 1 / 3;
    aspect-ratio: unset;
}
#me-marbella-row .img-gallery .w-gallery-list>.w-gallery-item:nth-child(2){
	grid-column: 3 / 5;
    grid-row: 1;
    aspect-ratio: unset;
}

#me-marbella-row .img-gallery .w-gallery-list>.w-gallery-item:nth-child(3){
	grid-column: 3;
	grid-row: 2;
	aspect-ratio: unset;
}

#me-marbella-row .img-gallery .w-gallery-list>.w-gallery-item:last-child{
	grid-column: 4;
	grid-row: 2;
	aspect-ratio: unset;
}
#me-marbella-row .rating-inner-row .rating-block{
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 0.5rem;
}
#me-marbella-row .rating-inner-row .rating-block .rating-text{
	color: white;
	font-family: 'Akatab';
	font-size: 12px;
	text-decoration: underline;
}

/* ==========================================================================
   FOOTER
   ========================================================================== */
footer #menu-menu-legal a{
	text-decoration: underline;
}

/* ==========================================================================
   MEDIA QUERIES
   ========================================================================== */
@media screen and (width<=1440px){
	#hero-row .shows-grid {
		width: 95%;
	}
}

@media screen and (width<=1280px){
	#hero-row .shows-grid {
		width: 100%;
		grid-template-columns: repeat(4, 1fr);
		padding: 0 0.5rem;
	}
	
	#hero-row .shows-grid>.concert{
		grid-column: auto;
	}
	#hero-row .shows-grid>.concert:nth-child(9){
		grid-column: 2;
	}
	#hero-row .shows-grid>.concert:nth-child(10){
		grid-column: 3;
	}
	
}
@media screen and (width<=1024px){
	#hero-row .background-video-container video{
		height: 120%;
	}
	#hero-row .concert .name{
		font-size: 32px;
	}
	#hero-row .shows-grid {
		grid-template-columns: repeat(2, 1fr);
		width: 80%;
	}
	#hero-row .shows-grid>.concert{
		grid-column: auto !important;
	}
	
	
}

@media screen and (width<=900px){
	#intro-video-row .w-html #intro-video {
		transform: scale(1.5);
	}
	header #main-menu>ul.w-nav-list.level_1{
		display: flex;
		flex-direction: column;
	}
	header .l-subheader-cell.at_center .w-html.ush_html_1{
		border-width: 0 !important;
	}
	header #main-menu>ul.w-nav-list.level_1>li:not(.w-nav-close){
		order: 2;
    	padding: 0.8rem 1rem 0.8rem 1.2rem;
	}
	header #main-menu>ul.w-nav-list.level_1>li:not(.w-nav-close):not(#menu-item-14519)>a.w-nav-anchor.level_1{
		font-size: 32px;
		border-bottom: 1px solid;
		padding: 0 0 0.2rem;
		line-height: 1;
		text-align: left;
		width: 11.7rem;
	}
	header #main-menu>ul.w-nav-list.level_1>li#menu-item-14519>a{
		    width: 100%;
		padding-left: 0;
		padding-right: 0;
	}
	header #main-menu>ul.w-nav-list.level_1>li#menu-item-14519 .w-nav-title{
		font-size: 28px;
		width: 100%;
		display: block;
		text-align: center;
	}
	header #main-menu>ul.w-nav-list.level_1>li.w-nav-close{
		display: block;
		position: static;
		order: 1;
		margin-left: auto;
		color: #FCFFCE;
		width: fit-content;
		opacity: 1;
		font-weight: 300;
		font-size: 1.8rem;
		margin-bottom: 2rem;
	}
	header #main-menu>ul.w-nav-list.level_1>li.w-nav-close:before{
		font-weight: lighter;
	}
	header #main-menu>ul.w-nav-list.level_1::after{
		content: '';
		display: block;
		width: 100%;
		height: 6rem;
		background-image: url(/wp-content/uploads/2026/05/Frame-515636.svg);
		background-repeat: no-repeat;
		background-position: center;
		background-size: cover;
		margin-top: 6rem;
		order: 3;
	}
	#scroll-intro-row #intro-wrapper{
		height: calc(100dvh - 50px - 46px) !important;
	}
	#scroll-intro-row .scroll-down-text{
		/*position: static !important;
		transform: unset !important;
		text-align: center;
		display: block;*/
		bottom: 0 !important;
	}
	#scroll-intro-row #intro-wrapper>.intro-slide{
		flex-direction: column;
		justify-content: flex-start;
	}
	#scroll-intro-row #intro-wrapper>.intro-slide>.w-image{
		margin: 0;
		width: 100%;
		height: unset;
		flex: 1;
		min-height: 0;
		overflow: auto;
	}
	#scroll-intro-row #intro-wrapper>.intro-slide>.wpb_text_column{
		padding: 1rem;
		flex: 0 0 auto;
    	margin-bottom: 2rem;
	}

	#hero-row .shows-grid{
		grid-template-columns: 1fr;
		width: 100%;
		padding: 2rem 2rem 6rem;
		gap: 1.3rem;
	}
	#hero-row .shows-grid>.concert{
		grid-column: auto !important;
	}
	#hero-row .concert .name {
		font-size: 24px;
		margin-top: 0.5rem;
	}
	#hero-row .background-video-container video {
		object-fit: none;
		object-position: 40% 55%;
	}
	#hero-row .cta-hero-btn{
		width: 100%;
	}
	#concerts-row{
		    background: linear-gradient(180deg, #132845 0%, #FCFFCE 4%);
	}
	#concerts-row #concerts-list .concierto .outer-wrapper>.header-wrapper .title-wrapper .w-text{
		opacity: 1;
	}
	#concerts-row #concerts-list .concierto .outer-wrapper>.content-wrapper>.info-wrapper{
		flex-direction: column;
		gap: 1rem;
	}
	#concerts-row #concerts-list .concierto .outer-wrapper>.content-wrapper>.info-wrapper>.w-post-elm.post_image{
		width: 100%;
		margin: 0;
	}
	#concerts-row #concerts-list .concierto .outer-wrapper>.content-wrapper .info-wrapper .data-wrapper{
		justify-content: unset;
	}
	#concerts-row #concerts-list .concierto .outer-wrapper>.content-wrapper .info-wrapper .data-wrapper>.mobile-wrapper{
		height: 0;
		transition: .5s cubic-bezier(0.5, 0, 0.3, 1);
	}
	#concerts-row #concerts-list .concierto .outer-wrapper>.content-wrapper{
		height: auto;
	}
	#concerts-row #concerts-list .concierto .outer-wrapper>.content-wrapper .info-wrapper>*{
		flex: auto;
		height: auto !important;
	}
	#concerts-row #concerts-list .concierto .outer-wrapper>.content-wrapper .tickets-wrapper .btn-wrapper .info-mobile-btn{
		display: block;
	}
	
	#concerts-row #concerts-list .w-grid-list>.concierto:not(:first-of-type) .w-post-elm.post_image img{
		object-position: 50% 29%;
	}
	#me-marbella-row .img-gallery .w-gallery-list{
		grid-template-columns: 1fr !important;
	}
	#me-marbella-row .img-gallery .w-gallery-list>.w-gallery-item{
		grid-column: auto !important;
		grid-row: auto !important;
	}
	#me-marbella-row .rating-inner-row .rating-block{
		justify-content: flex-start;
	}
	#me-marbella-row .w-btn-wrapper:has(>.w-btn.us-btn-style_5){
		padding: 0 1.5rem;
	}
	#me-marbella-row .w-btn.us-btn-style_5{
		width: 100%;
	}
	footer .main-row .wpb_column.vc_column_container>.vc_column-inner{
		display: flex;
		justify-content: space-between;
		align-items: center;
	}
}

@media screen and (width<=500px){
	#scroll-intro-row #intro-wrapper>.intro-slide>.wpb_text_column {
		width: 100% !important;
	}
	header .l-subheader.at_bottom{
		line-height: 60px;
		height: 60px;
	}
	header #countdown>span:not(.title){
		display: flex;
		flex-direction: column;
		align-items: center;
		line-height: 1;
	}
	header #countdown .number{
		line-height: 1;
		margin: 0;
		font-size: 24px;
	}
	#sun-death-row .sun-death-wrapper>.w-text{
		max-width: 70% !important;
	}
	#concerts-row #concerts-list .concierto .outer-wrapper>.content-wrapper .tickets-wrapper .btn-wrapper>.w-btn:first-of-type{
		margin-inline-end: 0.2rem !important;
	}
	#concerts-row #concerts-list .concierto .outer-wrapper>.content-wrapper .tickets-wrapper .btn-wrapper>.w-btn{
		font-size: 19px;
		padding: 0.5em 0.6em;
	}
}
