/* 
Theme Name: Dour 2026
Author: Grégory Ruelle
Template: hello-elementor
Version: 1.0.0.3
Text Domain: dour
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
*/

html .fancybox__backdrop{
	opacity: 1;
	background: #202020d1;
}
html .bio_popup{
	background: #030908;
	color: #fff;
	width: 1000px;
	max-width: 98%;
	align-items: flex-start;
	overflow-y: scroll;
	overflow-x: hidden;
	padding: 0;
	max-width: 320px;
}
html .bio_head{
	color: #C83A54;
	width: 100%;
	position: relative;
}
html .bio_head:before,
html .bio_head:after{
	content: '';
	position: absolute;
	top: 0;
	bottom: 0;
	background-size: cover !important;
	aspect-ratio: 23 / 100;
	background-position: center;
	min-width: 60px;
}
html .bio_head:before{
	right: calc(50% + 100px);
}
html .bio_head:after{
	left: calc(50% + 100px);
}
html .bio_title{
	font-family: "Alfabet Extra Bold", Sans-serif;
	font-size: 22px;
	line-height: 1.1;
	font-weight: normal;
	text-transform: uppercase;
	text-align: center;
	color: #000;
	max-width: 200px;
	margin: 0 auto;
	padding: 10px 0;
}
html .bio_subname{
	display: block;
	font-size: 32px;
}
html .bio_date{
	font-family: "Nimbus SDOT ITALIC", Sans-serif;
	font-size: 30px;
	font-weight: normal;
	text-transform: uppercase;
	text-align: center;
	margin-bottom: 6px;
}
html .bio_body{
	display: flex;
	flex-wrap: wrap;
	padding: 20px 20px 0 20px;
}
html .bio_body_left{
	padding: 0 20px;
}
html .bio_img{
	max-width: 200px;
	height: auto;
	margin: 0 auto;
	display: block;
}
html .bio_body_right{
	padding: 0 20px;
}
html .bio_desc{
	text-align: justify;
	font-family: "Roboto", Sans-serif;
	font-size: .875rem;
	line-height:  1.3;
	font-weight: 500;
	color: #000;
}
html .bio_rs{
	display: flex;
	justify-content: center;
	margin-top: 20px;
}

html .bio_rs_icon{
	color: rgba(255,255,255,1);
	font-size: 28px;
	transition: all .3s ease-in-out;
	margin: 0 12px;
}

html .bio_rs_icon:hover{
	transform: scale(1.1);
	color: rgba(255,255,255,.9);
}

html .bio_footer{
	text-align: center;
	width: 100%;
	padding: 10px 0;
}

html .bio_more{
	font-family: "Roboto", Sans-serif;
	font-size: .875rem;
	text-decoration:  underline;
	color: #000;
	font-weight: 500;
	transition: color .2s ease-in-out;
}
html .is-close-btn{
	background: #fff;
	color: #000;
	opacity: 1 !important;
}
.artist-popup:hover .artist-image{
	transform: scale(1.05);
}

.artist-image{
	transition: transform .2s ease-in-out;
}

.artists-container{
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	grid-template-rows: repeat(1, 1fr);
	grid-auto-flow: row;
	justify-items: center;
	gap: 10px;
	max-width: 1280px;
	margin: 0 auto;
}


.bio_spotify{
	margin:  0 auto;
}

@media (min-width: 768px) {

	html .bio_body{
		padding: 30px 30px 0 30px;
	}

	html .bio_title{
		padding:  20px 0;
	}
	html .bio_body_left,
	html .bio_body_right{
		width: 50%;
	}
	.artists-container{
		grid-template-columns: repeat(3, 1fr);
		gap: 2rem;
	}
}
@media (min-width:1024px) {
	.artists-container{
		grid-template-columns: repeat(4, 1fr);
	}
}

.twitter-icon:before{
	content: '';
	display: block;
	width: 28px;
	height: 28px;
	background-image: url('data:image/svg+xml;base64,CjxzdmcgdmVyc2lvbj0iMS4xIiBpZD0iQ2FscXVlXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IgogICAgIHZpZXdCb3g9IjAgMCA1MTIgNTEyIiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCA1MTIgNTEyOyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+CjxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+CiAgICAuc3Qwe2ZpbGw6I0ZGRkZGRjt9Cjwvc3R5bGU+CjxwYXRoIGNsYXNzPSJzdDAiIGQ9Ik0zODkuMiw0OGg3MC42TDMwNS42LDIyNC4yTDQ4Nyw0NjRIMzQ1TDIzMy43LDMxOC42TDEwNi41LDQ2NEgzNS44bDE2NC45LTE4OC41TDI2LjgsNDhoMTQ1LjZsMTAwLjUsMTMyLjkKICAgIEwzODkuMiw0OHogTTM2NC40LDQyMS44aDM5LjFMMTUxLjEsODhoLTQyTDM2NC40LDQyMS44eiIvPgo8L3N2Zz4K');
	background-size: contain;
	background-repeat: no-repeat;
	position: relative;
	top: 7px;
}





/* Mini-player en bas-gauche, caché par défaut */
#spotify-mini {
	position: fixed;
	left: 16px;
	bottom: 16px;
	width: 360px;
	max-width: calc(100vw - 32px);
	height: 152px; /* hauteur embed standard */
	border-radius: 10px;
	overflow: hidden;
	box-shadow: 0 10px 30px rgba(0,0,0,.25);
	background: #000;
	z-index: 99999;
	display: none;
	transform: translateY(8px);
	opacity: 0;
	transition: transform .2s ease, opacity .2s ease;
}

#spotify-mini.is-open {
	display: block;
	transform: translateY(0);
	opacity: 1;
}

#spotify-mini iframe {
	display: block;
	width: 100%;
	height: 100%;
	border: 0;
}

#spotify-mini .spotify-mini__close {
	position: absolute;
	top: 8px;
	right: 8px;
	width: 28px;
	height: 28px;
	border: 0;
	padding: 0;
	border-radius: 14px;
	font-size: 18px;
	line-height: 28px;
	text-align: center;
	background: #fff;
	color: #000;
	cursor: pointer;
}

#spotify-mini .spotify-mini__close:hover {
	background: var( --e-global-color-primary );
	color: #fff;
}

@media (max-width: 480px) {
	#spotify-mini {
		left: 8px;
		right: 8px;
		width: auto;
		height: 96px;
		bottom: 8px;
		border-radius: 8px;
	}
}



.flip-box{
	aspect-ratio: 1/1;
	width:100%;
	perspective:1000px;
	-webkit-perspective:1000px;
}

.flip-box-inner{
	position:relative;
	width:100%;
	height:100%;
	transition:transform .6s;
	transform-style:preserve-3d;
	-webkit-transform-style:preserve-3d;
	overflow:hidden;
}

/* flip au survol (desktop) */
.flip-box:hover .flip-box-inner{
	transform:rotateY(180deg);
}

/* faces empilées */
.flip-box-front,
.flip-box-back{
	position:absolute;
	inset:0;
	display:flex;
	align-items:center;
	justify-content:center;
}

/* gestion d'affichage sans backface-visibility */
.flip-box-front{
	opacity:1;
	visibility:visible;
	transition:opacity .3s, visibility .3s;
	z-index:2;
}
.flip-box:hover .flip-box-front,
.flip-box.is-flipped .flip-box-front{
	opacity:0;
	visibility:hidden;
	z-index:1;
}

.flip-box-back{
	opacity:0;
	visibility:hidden;
	transition:opacity .3s .15s, visibility .3s .15s;
	z-index:1;
	transform:rotateY(180deg); /* <-- ajoute ceci */
}
.flip-box:hover .flip-box-back,
.flip-box.is-flipped .flip-box-back{
	opacity:1;
	visibility:visible;
	z-index:3;
}

/* contenu */
.flip-box-front img{
	width:100%;
	height:100%;
	object-fit:cover;
	display:block;
}

.flip-box-back{
	flex-direction:column;
	gap:.5rem;
	padding:1rem;
	background:#111;
	color:#fff;
	text-align:center;
}

/* bouton */
.btn-spotify{
	display:inline-block;
	padding:.5rem .9rem;
	border-radius:20px;
	background:#1db954;
	color:#fff;
	text-decoration:none;
	font-weight:700;
}
.btn-spotify:hover{ filter:brightness(1.05); }

/* liens RS */
.social-links{
	display:flex;
	gap:.75rem;
	margin-top:.5rem;
	justify-content:center;
}
.social-links a{
	color:#fff;
	text-decoration:none;
	border-bottom:1px solid transparent;
}
.social-links a:hover{
	border-bottom-color:#fff;
}


.flip-box:hover .flip-box-inner,
.flip-box.is-flipped .flip-box-inner{
	transform:rotateY(180deg);
}

.flip-box_desc{
	text-align: left;
	font-size: .875rem;
	line-height: 1.3;
	display: -webkit-box;
	-webkit-line-clamp: 8;
	-webkit-box-orient: vertical;
	overflow: hidden;
	color: #000;
	margin-bottom: 0;
}

.artist-popup-link{
	color: #fff !important;
	border-width: 0;
	border-radius: 35px;
	font-weight: 500;
	font-size: .875rem !important;
	padding: .25rem 1rem;
	font-family: "Alfabet Medium", sans-serif !important;
	transition: all .2s ease-in-out;
	margin-top: .5rem;
}
.artist_link{
	color: #000 !important;
	text-decoration: underline !important;
	font-size: .875rem !important;
	font-family: "Alfabet Medium", sans-serif !important;
	transition: color .2s ease-in-out;
	padding: 0;
	border-width: 0 !important;
	background: none !important;
}
.flip_color_1 .artist-popup-link{
	background: #284136;
	border: 1px solid #284136;
}
.flip_color_1 .flip-box-back{
	background: #FAABF8;
}
.flip_color_2 .artist-popup-link{
	background: #016AF8;
	border: 1px solid #016AF8;
}
.flip_color_2 .flip-box-back{
	background: #06F2DD;
}
.flip_color_3 .artist-popup-link{
	background: #417601;
	border: 1px solid #417601;
}
.flip_color_3 .flip-box-back{
	background: #F0FF34;
}
.flip_color_4 .artist-popup-link{
	background: #D61803;
	border: 1px solid #D61803;
}
.flip_color_4 .flip-box-back{
	background: #BAAAE9;
}
.flip_color_5 .artist-popup-link{
	background: #B63CEF;
	border: 1px solid #B63CEF;
}
.flip_color_5 .flip-box-back{
	background: #B9F437;
}

@media (min-width:1024px) {
	.artist-popup{
		display: none !important;
	}
}

@media (max-width:1023px) {
	.flip-box{
		display: none !important;
	}
}



.bio_popup.bio_color_1{
	background: #FAABF8;
}
.bio_color_1 .bio_head::before{
	background: url('./img/bio_1_left.jpg') no-repeat;
}
.bio_color_1 .bio_head::after{
	background: url('./img/bio_1_right.jpg') no-repeat;
}
.bio_color_1 .bio_more:hover,
.flip_color_1 .artist_link:hover,
.flip_color_1 .artist-popup-link:hover{
	color: #284136 !important;
	background: none !important;
}

.bio_popup.bio_color_2{
	background: #06F2DD;
}
.bio_color_2 .bio_head::before{
	background: url('./img/bio_2_left.jpg') no-repeat;
}
.bio_color_2 .bio_head::after{
	background: url('./img/bio_2_right.jpg') no-repeat;
}
.bio_color_2 .bio_more:hover,
.flip_color_2 .artist_link:hover,
.flip_color_2 .artist-popup-link:hover{
	color: #016AF8 !important;
	background: none !important;
}

.bio_popup.bio_color_3{
	background: #F0FF34;
}	
.bio_color_3 .bio_head::before{
	background: url('./img/bio_3_left.jpg') no-repeat;
}
.bio_color_3 .bio_head::after{
	background: url('./img/bio_3_right.jpg') no-repeat;
}
.bio_color_3 .bio_more:hover,
.flip_color_3 .artist_link:hover,
.flip_color_3 .artist-popup-link:hover{
	color: #417601 !important;
	background: none !important;
}

.bio_popup.bio_color_4{
	background: #BAAAE9;
}
.bio_color_4 .bio_head::before{
	background: url('./img/bio_44_left.jpg') no-repeat;
}
.bio_color_4 .bio_head::after{
	background: url('./img/bio_44_right.jpg') no-repeat;
}
.bio_color_4 .bio_more:hover,
.flip_color_4 .artist_link:hover,
.flip_color_4 .artist-popup-link:hover{
	color: #D61803 !important;
	background: none !important;
}

.bio_popup.bio_color_5{
	background: #B9F437;
}
.bio_color_5 .bio_head::before{
	background: url('./img/bio_5_left.jpg') no-repeat;
}
.bio_color_5 .bio_head::after{
	background: url('./img/bio_5_right.jpg') no-repeat;
}
.bio_color_5 .bio_more:hover,
.flip_color_5 .artist_link:hover,
.flip_color_5 .artist-popup-link:hover{
	color: #B63CEF !important;
	background: none !important;
}

.bio_related_artists{
	margin: 0 -5px;
}
.bio_related_artists ul{
	padding: 0;
	display: flex;
	list-style: none;
}
.bio_related_artists li{
	width: 25%;
	padding: 0 5px;
}

.bio_related_artists a{
	display: block;
}
.bio_related_artists img{
	aspect-ratio:  1 / 1;
	object-fit: cover;
}