/*
Theme Name: Salient Child Theme
Description: This is a custom child theme for Salient
Theme URI:   https://themeforest.net/item/salient-responsive-multipurpose-theme/4363266
Author: ThemeNectar
Author URI:  https://themeforest.net/user/themenectar
Template: salient
Version: 1.0
*/

.main-content{
	opacity: 1;
	animation: fadeIn 2s ease-in forwards;
}
@keyframes fadeIn {
	from {
		opacity: 0;
	}
	to {
		opacity: 1;
	}
}

/* NAVIGATION PRINCIPALE */

#header-outer[data-format="centered-menu"] #top nav >.sf-menu >li:not(:last-child):after {
    content: "|";
}

/* TYPO TITRES */
@font-face {
    font-family: 'swear-display';
    src: url('/wp-content/themes/salient-child/font/SwearDisplay-Light.woff2') format('woff2'),
        url('/wp-content/themes/salient-child/font/SwearDisplay-Light.woff') format('woff');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

h1, h2  {
    font-family: 'swear-display', sans-serif !important;
	font-weight: 300 !important;
}

h1 {
    font-size: 100px !important;
}

.titre_section h2{
    font-size: 100px !important;
	line-height: 100px !important;
	color: #FFF !important;
}

#page-header-bg .nectar-particles .span_6 .inner-wrap, #page-header-bg .span_6 {
    transform: translateY(0%) !important;
}

/* Cacher le logo en page d'accueil */
.home #header-outer.transparent #top #logo {
    visibility: hidden !important;
}
.small-nav #top #logo img{
	height: 45px !important;
	margin-top: 15px;
}

@media only screen and (min-width: 1px) and (max-width: 999px) {
    #page-header-bg {
        min-height: 300px;
    }
	#page-header-bg .span_6 .inner-wrap {
        padding-top: 83px !important;
    }
}

/* MENU */
#header-outer[data-format="centered-menu"] #top nav >.sf-menu >li:not(:last-child):after {
    content: "|";
    opacity: 0.7 !important;
    color: #FFF;
}
.sf-menu li ul li a .menu-title-text:after, body #header-outer .mobile-header li:not([class*=button_])>a .menu-title-text:after, body #header-outer[data-lhe=animated_underline] #top nav>ul>li:not([class*=button_])>a .menu-title-text:after, body #header-outer[data-lhe=animated_underline] .nectar-header-text-content a:after, body #header-secondary-outer[data-lhe=animated_underline] nav>.sf-menu>li:not([class*=button_])>a .menu-title-text:after {
    border-width: 0px;
}

.sf-menu>li ul {
    padding: 20px 0px;
    background-color: transparent !important;
	box-shadow: unset !important;
}
.sf-menu li ul li a .menu-title-text:after {
    height: 1px !important;
}

li ul.sub-menu{
	margin-top: -50px;
	width: 200px;
	text-align: center !important;
	margin-left: -56px;
}

/* Style de base du menu */
.sf-menu a {
    opacity: 1 !important;
    transition: opacity 0.8s ease !important;
	color: #FFF !important;
}
.sf-menu:hover a {
    opacity: 0.5 !important;
}
.sf-menu:hover a:hover {
    opacity: 1 !important;
}


/* BOUTON */
.regular-button{
	border: 1px solid #D3967D;
}
.icon-button-arrow{
	background-color: transparent !important;
    box-shadow: unset !important;
}

.regular-button:hover{
	border: 1px solid #D3967D00;
	background-color: #D3967D !important;
	color: #FFF !important;
}
.regular-button:hover .icon-button-arrow{
	color: #FFF !important;
}

body.material .nectar-button.see-through-2 i.icon-button-arrow {
    color: #FFF !important;
}

.btn_blanc{
	border: 1px solid #FFF !important;
	background-color: #FFFFFF00 !important;
}
.nectar-button.regular-button.btn_blanc:hover{
	border: 1px solid #FFFFFF00 !important;
	background-color: #FFFFFF33 !important;
}
body.material .nectar-button.has-icon:not([class*=see-through]) i {
    transform: translateY(-50%) translateX(2px) !important;
}
body.material .nectar-button.has-icon {
    padding-right: 24px !important;
}
body.material[data-button-style^=rounded] .nectar-button.has-icon[data-color-override="#ffffff"].regular-button i, body.material[data-button-style^=rounded] .nectar-button.has-icon[data-color-override="#ffffff"].regular-button:hover i {
    background-color: rgba(0, 0, 0, 0) !important;
}

body.material[data-button-style^=rounded] .nectar-button i, body.material[data-button-style^=rounded] .nectar-button.has-icon:hover i {
    background-color: rgba(0, 0, 0, 0) !important;
}

.nectar-button:hover i.fa{
	color: #FFF !important;
}
.nectar-button.has-icon i {
    transition: all 0.3s ease;
}

body.material .nectar-button.has-icon:not([class*=see-through]):hover i {
    transform: translateY(-50%) translateX(2px) scale(1.2)!important;
}

.row .col.section-title {
	border-bottom: 0px solid #FFFFFF00 !important;
}
/* ACTUALITES */
#actualites_home h2:first-child{
	font-size: 80px;
}

#actualites_home .nectar-fancy-box h2{
	font-style: italic;
	line-height: 36px;
}

#actualites_home .nectar-fancy-box img{
    position: absolute;
    bottom: 0px;
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    gap: 10px;
    align-items: center;
}

#actualites_home .nectar-fancy-box {
    aspect-ratio: 1/1; 
    min-height: unset !important; 
    height: 100% !important;  
}

#actualites_home .nectar-fancy-box .inner {
    display: flex;
    flex-direction: column;
    justify-content: center;
    height: 100%;
    padding: 5% !important;  /* Padding uniforme */
	min-height: unset !important;
}

/* Maintenir le ratio carré de la galerie */
#actualites_home .wpb_gallery_grid .wpb_image_grid .wpb_image_grid_ul img {
    aspect-ratio: 1/1;
    object-fit: cover;
}

#actualites_home .wpb_gallery{
	margin-bottom: 0px !important;
}

/* MODULE PRESSE */

.presse-filters {
	text-align: center;
	margin-bottom: 40px;
}
            
.filter-btn {
	display: inline-block;
	padding: 5px 20px;
	margin: 0 10px;
	border: 1px solid #D3967D;
	border-radius: 20px;
	text-decoration: none;
	color: #D3967D;
	transition: all 0.3s ease;
}

.filter-btn.active, .filter-btn:hover {
	background-color: #D3967D;
	border-color: #D3967D;
	color: #fff;
}

.presse-item {
	padding: 60px 40px;
	margin-bottom: 20px;
}

.presse-item.hidden {
	display: none;
}

.bg-white {
	background-color: #fff;
}

.bg-salmon {
	background-color: #D3967D;
}

.presse-header {
	margin-bottom: 40px;
	max-width: 900px;
	margin: auto;
}

.presse-title {
	font-size: 60px;
	line-height: 66px;
	margin-bottom: 20px;
}

.presse-subtitle {
	font-size: 14px;
	line-height: 18px;
	color: #D3967D;
    margin-bottom: 30px !important;
    margin-top: -15px;
}

.presse-content-wrapper {
	max-width: 900px;
	margin: auto;
	display: flex;
	gap: 40px;
	align-items: flex-start;
}

.presse-image {
	flex: 0 0 160px;
}
.presse-content {
	flex: 1;
}


.presse-image img {
	width: 100%;
	max-width: 140px !important;
	height: auto;
	display: block;
}

.presse-image .default-thumb {
	padding: 20px;
}
.extraits-supplementaires{
	padding: 0px 0px 40px;
}
.extrait-item {
	padding: 20px 0px 20px;
}
.extrait-image img {
	width: 100%;
	max-width: 140px !important;
	height: auto;
	display: block;
	position: absolute;
	margin-left: -200px;
}

.extrait-image .default-thumb {
	padding: 20px;
}

.bg-white .extrait-image img{
	filter: brightness(0);
}

.bg-salmon .extrait-image img{
	filter: brightness(0) invert(1);
}

.presse-content {
	flex: 1;
	color: #09090B;
	font-size: 18px;
	min-height: 150px;
}

.presse-excerpt {
	margin-bottom: 30px;
}

.presse-full-content {
	margin: 30px 0;
	opacity: 0;
	max-height: 0;
	overflow: hidden;
	transition: all 1.5s ease;
}

.presse-full-content.active {
	opacity: 1;
	max-height: 2000px;
}

.toggle-content {
	display: inline-block;
	padding: 10px 20px;
	border: 1px solid #D3967D;
	color: #D3967D;
	background: none;
	cursor: pointer;
	transition: all 0.3s ease;
}

.toggle-content:hover {
	background-color: #D3967D;
	color: #fff;
	border: 1px solid #FFFFFF00;
}

.toggle-content.active::after {
	content: "×";
	margin-left: 10px;
}

.bg-salmon h2, .bg-salmon h3, .bg-salmon .presse-content, .bg-salmon .toggle-content{
	color: #FFF !important;
}
.bg-salmon .toggle-content{
	border: 1px solid #FFF;
}
.bg-salmon .toggle-content:hover {
	background-color: #FFFFFF22;
	border: 1px solid #FFFFFF00;
}

@media (max-width: 768px) {
	.presse-image {
		flex: 0 0 80px;
	}
	.presse-image img, .extrait-image img {
		max-width: 80px !important;
	}
	.extrait-image img {
    	margin-left: -100px;
		margin-top: 20px;
	}
	.presse-content-wrapper {
    	gap: 20px;
	}
	.presse-image .default-thumb {
		padding: 8px;
	}
}

@media (max-width: 440px) {
	.presse-image {
		flex: 0 0 60px;
	}
	.presse-image img, .extrait-image img {
		max-width: 60px !important;
	}
	.extrait-image img {
    	margin-left: -80px;
	}
	.presse-item, .presse-excerpt, .extrait-texte, .contenu-principal {
		font-size: 12px !important;
		line-height: 20px;
	}
}
.load-more-hidden {
	display: none;
}

.load-more-container {
	text-align: center;
	margin: 40px 0;
}

.load-more-btn {
	display: inline-block;
	width: 60px;
	height: 60px;
	border: 1px solid #D3967D;
	color: #D3967D;
	background: none;
	cursor: pointer;
	transition: all 0.3s ease;
	font-size: 28px;
}

.load-more-btn:hover {
	background-color: #D3967D;
	color: #fff;
}

.presse-item {
	opacity: 0;
	transform: translateY(20px);
	transition: opacity 0.5s ease, transform 0.5s ease;
}

.presse-item.visible {
	opacity: 1;
	transform: translateY(0);
} 
.home_slider_btn{
	margin-top: -30px;
}
.presse-slider-wrapper {
	margin: 40px 0;
	overflow: hidden;
}

.presse-slider {
	position: relative;
	overflow: hidden;
}

.presse-slider .presse-item {
	display: none;
	margin-bottom: 0;
	padding-bottom: 0px !important;
}

.presse-slider .presse-item.active {
	display: block;
}
.bg-white .presse-image{
	filter: brightness(0);
}

.bg-salmon .presse-image {
	filter: brightness(0) invert(1);
}

.slider-dots {
	text-align: center;
	margin-top: 30px;
}

.dot {
	display: inline-block;
	width: 12px;
	height: 12px;
	margin: 0 5px;
	border-radius: 50%;
	background-color: #FFF;
	opacity: 0.5;
	cursor: pointer;
	transition: all 0.3s ease;
}

.dot.active {
	opacity: 1;
	transform: scale(1.2);
}

.bg-salmon .dot {
	background-color: #FFF;
}
.presse-page .presse-header, .presse-page .presse-content-wrapper{
	max-width: 900px;
	margin: auto;
}

/* FOOTER */
.footer ul {
	list-style-type: none;
}
.footer li{
	list-style: none;
	color:#FFF;
}

.footer ul li {
    opacity: 1 !important;
    transition: opacity 0.4s ease !important;
}

.footer ul:hover li {
    opacity: 0.5 !important;
}
.footer ul:hover li:hover {
    opacity: 1 !important;
}


#footer-outer{
	display: none;
}

/* CALENDRIER */
.calendrier_entry{
	border-top: 1px solid #D3967D !important;
	transition: all 0.2s ease;
	margin-bottom: 0px !important;
	padding-bottom: 20px;
	background-color: #D3967D00;
}
.calendrier_entry h2{
	margin-bottom: -4px;
}
.calendrier_entry:hover{
	background-color: #D3967DFF;
}

.calendrier_entry span{
	transition: all 0.2s ease;
}

.calendrier_entry:hover span{
	color: #FFF !important;
}

.calendrier_entry:hover .nectar-button{
	border: 1px solid #FFF;
}

.calendrier_entry:hover .nectar-button:hover{
	background-color: #FFFFFF33 !important;
	border: 1px solid #FFFFFF00;
}
.calendrier_entry:hover img{
	filter: invert(1) !important;
}

.calendrier_entry .nectar_video_player_self_hosted{
	display: inline-block;
	background-color: #d3967d;
	border: 1px solid #FFF !important;
    width: 30px;
    height: 29px;
    border-radius: 30px;
    padding-top: 6px;
	transition: all 0.2s ease;
}

.calendrier_entry .nectar_video_player_self_hosted .play_button svg{
	width: 8px;
	margin-left: 2px;
}

.calendrier_entry .nectar_video_player_self_hosted:hover{
	background-color: #FFFFFF33;
}


.calendrier_entry .nectar_video_player_self_hosted path {
  fill: none !important;
  stroke: white;
  stroke-width: 60px;
}

.calendrier_entry .nectar_video_player_self_hosted .play_button .play:before {
    background-color: #ffffff00;
}

.calendrier_entry img{
	max-width: 120px !important;
}
@media only screen and (min-width: 1000px) {
	.calendrier_entry .vc_col-sm-1{
		width: 25%;
	}
}
@media only screen and (max-width: 999px) {
	.calendrier_entry .column_container{
		width: 100%;
		text-align: center;
	}
}
/* SOCIAL */
.home .nectar_hook_before_content_global_section:first-child{
	display: none;
}
.nectar_hook_before_content_global_section{
	position: relative;
    top: -80px;
	height: 0px;
    width: 100%;
    text-align: right;
	z-index: 1000;
}
.nectar_hook_before_content_global_section img{
    width: 40px !important;
	padding: 10px !important;
	transition: opacity 0.4s ease !important;
	display: inline-block;
}
.nectar_hook_before_content_global_section:hover img{
    opacity: 0.5 !important;
}
.nectar_hook_before_content_global_section:hover img:hover{
    opacity: 1 !important;
}

@media only screen and (max-width: 1280px) {	
	#actualites_home .nectar-fancy-box h2{
		font-size: 30px !important;
		line-height: 32px;
	}
	#actualites_home .nectar-fancy-box .inner {
		padding: 0% 2% !important;  /* Padding uniforme */
	}
	#actualites_home .nectar-fancy-box img{
		display:none;
	}
}

/* Tablette */
@media only screen and (max-width: 768px) {	
    h1, .titre_section h2 {
        font-size: 60px !important;
    }
	#actualites_home h2:first-child{
		font-size: 60px;
	}
	
	.presse-title {
		font-size: 40px;
		line-height: 46px;
	}
}
@media only screen and (max-width: 690px) {
	.home .presse-content{
		display:none;
	}
	.home_slider_btn{
		margin-left: 0px !important;
		margin-top: -30px;
	}
	.presse-excerpt, .presse-full-content{
		font-size: 14px;
	}
}

/* Mobile */
@media only screen and (max-width: 480px) {
    h1, .titre_section h2 {
        font-size: 48px !important;
    }
	#actualites_home h2:first-child{
		font-size: 42px;
	}
	#actualites_home .nectar-fancy-box h2{
		font-size: 26px;
		line-height: 30px;
	}
	.presse-title {
		font-size: 26px;
		line-height: 28px;
	}
}

#slide-out-widget-area a {
    color: #999 !important;
}


.enregistrement{
	border-bottom: 1px solid #D3967D;
	margin-bottom: 40px !important;
}

/* PHOTOS */
.work-meta{
	width: 100% !important;
	text-align: center !important;
	overflow: hidden;
}
.work-meta .title{
	font-size: 18px !important;
	line-height: 22px !important;
}
.work-meta p{
	font-size: 14px;
	color: #D3967D;
}
.work-info a, .work-info .vert-center {
	font-size: 0px !important;
	transition: all 0s ease !important;
}
/* Style de base pour le conteneur */
.work-info a.default-link.gallery {
    background: transparent !important;
    width: 60px !important;
    height: 60px !important;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    position: relative;
    padding: 0 !important;
    color: transparent;
}

/* Pastille ronde avec flou */
.work-info a.default-link.gallery::after {
    content: '';
    position: absolute;
    width: 60px;
    height: 60px;
    background: rgba(255, 255, 255, 0.15);
    border-radius: 50%;
}

/* SVG de l'œil en blanc */
.work-info a.default-link.gallery::before {
   content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='16' viewBox='0 0 24 16'%3E%3Cpath d='M12 0C7 0 2.73 3.11 0 7.5C2.73 11.89 7 15 12 15C17 15 21.27 11.89 24 7.5C21.27 3.11 17 0 12 0ZM12 12.5C9.24 12.5 7 10.26 7 7.5C7 4.74 9.24 2.5 12 2.5C14.76 2.5 17 4.74 17 7.5C17 10.26 14.76 12.5 12 12.5ZM12 4.5C10.34 4.5 9 5.84 9 7.5C9 9.16 10.34 10.5 12 10.5C13.66 10.5 15 9.16 15 7.5C15 5.84 13.66 4.5 12 4.5Z' fill='white'/%3E%3C/svg%3E");
   position: absolute;
   z-index: 2;
   display: flex;
   align-items: center;
   justify-content: center;
	padding-top: 8px;
}

/* Effet hover */
.work-item .work-info {
    opacity: 0;
	transition: all 0.3s ease !important;
}
.work-item:hover .work-info {
    opacity: 1;
}
.work-item:hover .work-info-bg {
    opacity: 0.2 !important;
}

#page-header-bg{
	background-color: #FFF !important;
}

html body.material .nectar-button.btn_retour i.icon-button-arrow{
	transform: rotate(180deg) !important;
    position: relative;
	left: -130px;
}
html body.material .nectar-button.btn_retour:hover i.icon-button-arrow{
	transform: rotate(180deg) scale(1.2) !important;
    position: relative;
	left: -130px;
}
.nectar-button.btn_retour span {
    left: 30px;
}

/* HEADER & ANIMATION */
#header-outer{
	background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0)) !important;
    background-color: transparent !important;

}

#page-header-wrap h1, .home .img-with-aniamtion-wrap{
	opacity: 0;
	animation: fadeInBottom 1s 1.6s ease-out forwards;
	position: relative;
}
#home_decouvrir{
	opacity: 0;
	animation: fadeIn 1s 2.4s ease-out forwards;
}
.nectar_hook_before_content_global_section{
	opacity: 0;
	animation: fadeIn 0.8s 3s ease-out forwards;
	
}
.home .nectar-highlighted-text{
	opacity: 0;
	animation: fadeInBottom 1s 2.2s ease-out forwards;
}
@keyframes fadeInBottom {
	from {
		opacity: 0;
		bottom: -20px;
	}
	to {
		opacity: 1;
		bottom: 0px;
	}
}
.nectar_video_player_self_hosted .play_button .play{
	width: 60px !important;
    height: 60px !important;
	margin-top: -30px !important;
    margin-left: -30px !important;
}
.nectar_video_player_self_hosted .play_button .play:before {
	background-color: #ffffff3b;
}
.presse-btn{
	padding: 30px 0px;
}
@media only screen and (max-width: 1140px) {
	.presse-btn{
		padding: 30px 40px;
	}
}

.row .col img.img-with-animation.nectar-lazy:not([srcset]) {
    width: unset !important;
}

/* FORMULAIRE */
.wpcf7 input[type=text], .wpcf7 input[type=email], .wpcf7 textarea{
	background-color: #ffffff !important;
	color: #666 !important;
}

.wpcf7-form input::placeholder,
.wpcf7-form textarea::placeholder {
    color: #d3967d !important;
}
.wpcf7-form {
	text-align: right;
	padding-bottom: 120px !important;
	
}
.wpcf7-form .wpcf7-not-valid-tip {
    color: #d3967d !important;
}
.wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.unaccepted .wpcf7-response-output, .wpcf7 form.payment-required .wpcf7-response-output {
    border-color: #ffffff !important;
    text-align: center !important;
    padding: 2px !important;
	color: #d3967d !important;
}

.wpcf7-spinner {
    background-color: #ffffff33 !important;
    right: 110px;
    top: 15px;
}
.wpcf7-submit {
    background-color: transparent !important;
    color: white !important;
    border: 1px solid white !important;
	text-transform: lowercase;
    padding: 10px 20px !important;
    font-size: 16px;
    cursor: pointer;
    transition: all 0.3s ease;
    display: inline-flex;
    align-items: center;
	transition: all 0.2s ease;
	position: absolute !important;
	right: 0px;
}

.wpcf7-submit:hover {
    background-color: #ffffff33 !important;
	border: 1px solid #ffffff33 !important;
}

.error404 .nectar-button[data-color-override="false"].regular-button{
	background-color: #d3967d !important;
}

.play_button_with_text{
	color: #d3967d !important;
	padding: 0px !important;
}
.play_button_with_text span {
  display: flex !important;
  align-items: center;
  flex-direction: row-reverse;
}

.play_button_with_text svg path {
  fill: #d3967d !important;
}

.play_button_with_text .play>.inner-wrap:before{
	border-color: #d3967d !important;
}

.play_button_with_text .link-text {
  margin-left: 0px !important; 
	margin-right: 10px !important; 
	color: #d3967d !important;
}

.play_button_with_text .play {
  display: inline-block;
  width: 24px !important;
	height: 24px !important;
}

.calendrier_entry:hover .play_button_with_text .link-text {
	color: #fff !important;
}

.calendrier_entry:hover .play_button_with_text svg path {
  fill: #fff !important;
}

.calendrier_entry:hover .play_button_with_text .play>.inner-wrap:before{
	border-color: #fff !important;
}
.calendrier_entry .wpb_text_column{
	margin-bottom: 0px;
}

.galerie_diaporama .element{
	display: none;
}
.galerie_diaporama .element:first-child{
	display: inline-block;
	width: 100% !important;
}

.repertoire_operas .wpb_wrapper p, .repertoire_concerts .wpb_wrapper p  {
	white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
	font-size: 16px;
}

@media only screen and (max-width: 1180px) {
	.repertoire_operas .col .vc_col-sm-4, .repertoire_concerts .col .vc_col-sm-4{
		width: 50% !important;
		text-align: left !important;
	}
	.repertoire_operas .col .vc_col-sm-4:first-child, .repertoire_concerts .col .vc_col-sm-4:first-child{
		width: 100% !important;
	}
	.work-info a.default-link.gallery{
		width: 100% !important;
		height: 100% !important;
	}
	.repertoire_operas .wpb_wrapper p, .repertoire_concerts .wpb_wrapper p  {
		white-space: nowrap;
	  	overflow: hidden;
	  	text-overflow: ellipsis;
		font-size: 13px;
	}
}

/* ACF */
.elements-container {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    margin: 20px 0;
}

.element {
    flex: 0 0 calc(33.333% - 20px);
    border: 1px solid #eee;
    padding: 15px;
    border-radius: 5px;
}

.element-image img {
    max-width: 100%;
    height: auto;
}

.element-texte {
    margin-top: 10px;
}

@media (max-width: 768px) {
    .element {
        flex: 0 0 calc(50% - 20px);
    }
}

@media (max-width: 480px) {
    .element {
        flex: 0 0 100%;
    }
}
