/*
Theme Name: Semplice v7 Child
Theme URI: https://www.semplice.com
Template: semplice7
Author: Semplicelabs
Author URI: https://www.semplice.com
Description: With Semplice you can build fully responsive case studies &amp; custom branded project pages with just a few clicks. Visit our documentation, changelog and follow us on Twitter for update notifications.
Version: 7.1.6.1746452895
Updated: 2025-05-05 15:48:15

*/

.my-button-class {
    border-radius: 2.2222222222222223rem !important;
	border-width: 0.0556rem !important;
	padding-bottom: 0.8333333333333334rem !important;
    padding-left: 1.3888888888888888rem !important;
    padding-right: 1.3888888888888888rem !important;
    padding-top: 0.8333333333333334rem !important;
	border-style: solid !important;
	border-color: #000000 !important;
	font-family: "Rubik", sans-serif;
    font-weight: 900;
    font-style: normal;
	color:#000000 !important;
}

.my-button-class:hover {
    background-color: #FF753D !important;
    border-color: #FF753D !important;
	color:#FFFF !important;
}

.unclickable > a {
    pointer-events: none !important;
}

.tribe-common--breakpoint-medium.tribe-events .tribe-events-calendar-list__ticket {
    justify-content: flex-end;
	min-width: 280px;
}

.tribe-common .tribe-common-g-row {
    display: flex;
	align-items: center;
}

.tribe-common--breakpoint-medium.tribe-events .tribe-events-calendar-list__event {
    flex-direction: row-reverse;
    justify-content: flex-end;
    min-width: 1200px;
}

.tribe-common--breakpoint-medium.tribe-events .tribe-events-header--has-event-search .tribe-events-header__events-bar {
    margin-left: 0;
    width: 100%;
    margin-top: 20px;
}

.tribe-common--breakpoint-medium.tribe-events .tribe-common-c-btn.tribe-events-c-search__button {
    flex: none;
    margin-top: 0;    
	border-radius: 2.2222222222222223rem !important;
    border-width: 0.0556rem !important;
    border-style: solid !important;
    border-color: #000000 !important;
    font-family: "Rubik", sans-serif;
    font-weight: 900;
    font-style: normal;
    color: #000000 !important;
    background-color: transparent !important;
}

.tribe-common--breakpoint-medium.tribe-events .tribe-common-c-btn.tribe-events-c-search__button:hover {
    flex: none;
    margin-top: 0;    
	border-radius: 2.2222222222222223rem !important;
    border-width: 0.0556rem !important;
    border-style: solid !important;
    border-color: #ff753d!important;
    font-family: "Rubik", sans-serif;
    font-weight: 900;
    font-style: normal;
    color: #ffff !important;
    background-color: #ff753d !important;
}

.tribe-events .tribe-events-header {
    align-items: center;
    display: flex
;
    flex-direction: row-reverse;
    flex-wrap: wrap;
    justify-content: space-between;
    margin: 0 calc(var(--tec-grid-gutter-page-small) * -1);
    padding: 0 var(--tec-grid-gutter-page-small) var(--tec-spacer-3);
    position: relative;
    margin-top: 80px;
}




/* =============================================================
   NAV BAR (desktop ≥ 992 px)
   ============================================================ */
.qlp-nav      { position:sticky; top:0; z-index:250; font-family:"Rubik",sans-serif }

/* barre */
.qlp-bar{
	display:flex; align-items:center; gap:2rem;
	padding:.8rem 1.6rem;
	background:#fff
}

/* LOGO – pousse tout le reste à droite */
.qlp-logo     { margin-right:auto }
.qlp-logo img { width:5.3rem; height:auto }

/* liens texte */
.qlp-links ul{
	display:flex; gap:2.8rem; list-style:none; margin:0; padding:0
}
.qlp-links a{
	font:900 1.1rem/1 "Rubik",sans-serif;
	text-transform:uppercase; letter-spacing:.02rem;
	color:#000; text-decoration:none
}
.qlp-links a:hover,
.qlp-links a.active{ color:#ff753d }

/* bouton langue (desktop) */
.qlp-lang{
	background:transparent; border:.06rem solid #000; border-radius:3.7rem;
	padding: .5rem .7rem;
	font:900 .8rem/1 "Rubik",sans-serif; text-transform:uppercase;
	cursor:pointer; transition:.25s;
	color:#000;
}

/* état “page courante” – garde la typo noire, pas de fond orange */
.qlp-lang.active,
.qlp-lang.current-menu-item,
.qlp-lang.current_page_item{
	/* rien à changer : on conserve les valeurs de base */
}

/* hover seulement si le bouton n’est PAS actif */
.qlp-lang:not(.active):not(.current-menu-item):not(.current_page_item):hover{
	background:#ff753d; color:#fff; border-color:#ff753d;
}

/* burger */
.qlp-burger{ --w:24px; --h:2px;
	width:var(--w); height:14px; background:none; border:0;
	position:relative; cursor:pointer; margin-left:2rem
}
.qlp-burger span,
.qlp-burger span:before,
.qlp-burger span:after{
	content:""; display:block; width:var(--w); height:var(--h);
	background:#000; position:absolute; left:0; transition:.3s
}
.qlp-burger span          { top:50%; transform:translateY(-50%) }
.qlp-burger span:before   { top:-6px }
.qlp-burger span:after    { top:6px }
/* état “croix” */
.qlp-burger.open span            { background:transparent }
.qlp-burger.open span:before     { top:0; transform:rotate(45deg) }
.qlp-burger.open span:after      { top:0; transform:rotate(-45deg) }

/* =============================================================
   OVERLAY
   ============================================================ */
.qlp-overlay{
	position:fixed; inset:0; background:#000;
	display:flex; flex-direction:column; align-items:center; justify-content:center;
	height:100vh; width:100%;
	opacity:0; pointer-events:none; transition:.5s ease;
	text-align:center;                    /* ← centrage horizontal global */
}
.qlp-overlay.show{ opacity:.97; pointer-events:auto }

/* bouton de fermeture (facultatif) */
.qlp-overlay-close{
	position:absolute; top:1.5rem; right:1.5rem;
	font-size:2rem; background:none; border:0; color:#fff; cursor:pointer
}

/* liens dans l’overlay */
.qlp-overlay-nav ul{
	list-style:none; padding:0; margin:0;
	display:flex; flex-direction:column; gap:1.5rem
}
.qlp-overlay-nav a{
	color:#fff; font:900 2.5rem/1 "Rubik",sans-serif;
	text-transform:uppercase; text-decoration:none
}
.qlp-overlay-nav a:hover{ color:#ff753d }

/* bouton langue dans l’overlay (toujours visible & centré) */
.qlp-overlay .qlp-lang{
	margin:2.7rem auto 0;                     /* auto -> centrage horizontal */
	border:1px solid #fff; border-radius:3.7rem;
	padding:.8rem 1.3rem;
	font:900 .9rem/1 "Rubik",sans-serif;
	background:transparent; color:#fff; display:inline-block
}
.qlp-overlay .qlp-lang:hover{
	background:#ff753d; border-color:#ff753d; color:#000
}

/* =============================================================
   BREAKPOINT ≤ 991 px – on masque liens & bouton dans la barre
   (mais PAS dans l’overlay)
   ============================================================ */
@media(max-width:991.98px){
	.qlp-bar .qlp-links { display:none }
	.qlp-bar .qlp-lang  { display:none }   /* caché seulement dans la barre */
	/* .qlp-burger reste affiché */
}

/* === lien actif ‑ barre ET overlay =========================== */
.qlp-links li.current-menu-item   > a,
.qlp-links li.current_page_item   > a,
.qlp-links a.active,                       /* si vous ajoutez manuellement .active */
.qlp-overlay-nav li.current-menu-item > a,
.qlp-overlay-nav li.current_page_item > a,
.qlp-overlay-nav a.active{
	color:#ff753d;
}

/* facultatif : désactiver le survol orange déjà présent
   (sinon la couleur ne change pas) */
.qlp-links li.current-menu-item   > a:hover,
.qlp-links li.current_page_item   > a:hover,
.qlp-overlay-nav li.current-menu-item > a:hover,
.qlp-overlay-nav li.current_page_item > a:hover{
	color:#ff753d;
}

.tribe-events .tribe-events-header {
    align-items: center;
    display: flex
;
    flex-direction: row-reverse;
    flex-wrap: wrap;
    justify-content: space-between;
    margin: 0 calc(var(--tec-grid-gutter-page-small) * -1);
    padding: 0 var(--tec-grid-gutter-page-small) var(--tec-spacer-3);
    position: relative;
    margin-top: 20px;
}

.tribe-common--breakpoint-medium.tribe-events .tribe-events-l-container {
    min-height: 700px;
    padding-bottom: var(--tec-spacer-14);
    padding-top: var(--tec-spacer-4);
}

.tribe-events .tribe-events-l-container {
    min-height: 600px;
    padding-bottom: var(--tec-spacer-12);
    padding-top: var(--tec-spacer-3);
}


.tribe-common--breakpoint-medium.tribe-events .tribe-events-c-search__input-group {
    align-items: center;
    display: flex;
    flex: auto;
    font-family: "Rubik", sans-serif !important;
    font-weight: 900 !important;
    font-style: normal;
    color: #000000 !important;
}

.tribe-common--breakpoint-medium.tribe-events--filter-bar-horizontal.tribe-events .tribe-events-header--has-event-search .tribe-events-c-events-bar__filter-button {
    align-items: center;
    display: flex
;
    margin: calc(var(--tec-spacer-2) * -1) 0;
    padding: var(--tec-spacer-4) var(--tec-spacer-5);
    font-family: "Rubik", sans-serif !important;
}

.tribe-common--breakpoint-medium.tribe-events--filter-bar-horizontal.tribe-events .tribe-events-header--has-event-search .tribe-events-c-events-bar__filter-button-container {
    border-right: 0px solid var(--tec-color-border-events-bar);
}

.tribe-common.tribe-common--breakpoint-medium button.tribe-events-c-top-bar__datepicker-button {
    font-size: var(--tec-font-size-6);
    font-family: "Rubik", sans-serif !important;
    font-weight: 800 !important;
}

.tribe-events button.tribe-events-c-top-bar__datepicker-button {
    background-color: transparent;
    background-image: none;
    border: none;
    border-radius: 0;
    box-shadow: none;
    color: var(--tec-color-text-primary);
    font-size: var(--tec-font-size-4);
    font-style: normal;
    outline: none;
    padding: 0;
    text-decoration: none;
    text-shadow: none;
    transition: var(--tec-transition-opacity);
    font-family: "Rubik", sans-serif !important;
    font-weight: 800 !important;
}

.tribe-common--breakpoint-medium.tribe-common .tribe-common-h4--min-medium {
    font-size: var(--tec-font-size-8);
    line-height: var(--tec-line-height-1);
    font-family: "Rubik", sans-serif !important;
    font-weight: 800 !important;
}

.tribe-common .tribe-common-h5, .tribe-common .tribe-common-h6 {
    color: var(--tec-color-text-primary);
    text-transform: none;
    line-height: var(--tec-line-height-1);
	font-size: var(--tec-font-size-4);
    font-family: "Rubik", sans-serif !important;
    font-weight: 800 !important;
}

.tribe-events .tribe-events-calendar-list__event-date-tag {
    flex: none;
    position: relative;
    width: 54px;
    padding-right: 20px;
}

/* === BREAKPOINT   768 px – 991.98 px ============================= */
@media (min-width:768px) and (max-width:1110.98px){

	.my-button-class{
		/* –– taille & paddings plus petits –– */
		padding: .6rem 1rem !important;   /* top/bottom .6 rem  |  left/right 1 rem */
		font-size: .8rem !important;      /* au lieu de .9 rem  */
		border-radius: 1.8rem !important; /* coin plus serré    */
	}

}

/* === BREAKPOINT   mobile  ≤ 767 px  ================================= */
@media (max-width:767.98px){

	.my-button-class{
		/* encore plus petit si nécessaire */
		padding: .5rem .9rem !important;   /* exemple */
		font-size: .75rem !important;
		border-radius: 1.6rem !important;
	}
}

.tribe-events .tribe-events-calendar-list__event-header>:last-child {
    margin-bottom: 0;
    line-height: var(--tec-line-height-1);
    font-size: var(--tec-font-size-2);
    font-family: "Rubik", sans-serif !important;
}

.tribe-events .tribe-events-calendar-list__event-venue {
    font-style: normal;
    line-height: var(--tec-line-height-1);
    font-size: var(--tec-font-size-0);
    font-family: "Rubik", sans-serif !important;
}

.tribe-common--breakpoint-medium.tribe-common .tribe-common-b2 {
    font-size: var(--tec-font-size-1);
    line-height: var(--tec-line-height-3);
    font-weight: 800 !important;
    color: black;
}

.tribe-events-widget-events-list__event-organizer-label{display:none !important;}
/* rangée = flex  ➜ 3 « colonnes » qui tiennent sur la même ligne */
.tribe-events-widget-events-list__event-row{
	display:flex;          /* remplace le grid d’origine */
	align-items:center;
	column-gap:1.5rem;     /* petit espacement horizontal */
}

/* col 1 (date‑tag) garde sa largeur auto – rien à changer */

/* col 2 (titre + méta) grandit pour occuper l’espace restant */
.tribe-events-widget-events-list__event-wrapper{
	flex:1 1 0;
}

/* col 3 (CTA) : largeur = celle du bouton, poussée complètement à droite */
.tribe-events-widget-events-list__event-cta{
	flex:0 0 auto;         /* ne s’étend pas */
	margin-left:auto;      /* pousse vers le bord droit */
}

/* le bouton lui‑même reste à sa taille naturelle */
.tribe-events-widget-events-list__event-cta .my-button-class{
	display:inline-block; /* pas de bloc 100 % */
	white-space:nowrap;   /* empêche le texte de se casser */
}

.tribe-events-widget .tribe-events-widget-events-list__event-date-tag-month {
    font-family: var(--tec-font-family-sans-serif);
    font-size: var(--tec-font-size-0);
    font-weight: var(--tec-font-weight-regular);
    line-height: var(--tec-line-height-2);
    color: black !important;
    text-transform: uppercase;
}

@media (max-width:867.98px){
.tribe-events-widget .tribe-events-widget-events-list__event-date-tag {
    flex: none;
    position: relative;
    width: 36px !important;
}}

#content-holder h3 {
    font-size: 2.1rem !important;
    line-height: 2.2222222222222223rem;
    letter-spacing: 0.027777777777777776rem;
}

@media (max-width:867.98px){
#content-holder h3 {
    font-size: 1.10rem !important;
    line-height: 1.5rem !important;
    letter-spacing: 0.027777777777777776rem;
}}


.tribe-common .tribe-common-anchor-thin:active, .tribe-common .tribe-common-anchor-thin:focus, .tribe-common .tribe-common-anchor-thin:hover {
    border-bottom: 0px solid !important;
}


.wp-block-file__button {
    background: transparent;
    color: white;
    text-decoration: none;
    border-radius: 2.2222222222222223rem !important;
    border-width: 0.0556rem !important;
    padding-bottom: 0.8333333333333334rem !important;
    padding-left: 1.3888888888888888rem !important;
    padding-right: 1.3888888888888888rem !important;
    padding-top: 0.8333333333333334rem !important;
    border-style: solid !important;
    border-color: white;
    font-family: "Rubik", sans-serif;
    font-weight: 900;
    font-style: normal;
	margin-top: 10px;
}
.wp-block-file__button:hover {
    background-color: #FF753D !important;
    border-color: #FF753D !important;
	color:black !important;
}

/* === BREAKPOINT   768 px – 991.98 px ============================= */
@media (min-width:768px) and (max-width:900.98px){

	.wp-block-file__button{
		/* –– taille & paddings plus petits –– */
		padding: .6rem 1rem !important;   /* top/bottom .6 rem  |  left/right 1 rem */
		font-size: .8rem !important;      /* au lieu de .9 rem  */
		border-radius: 1.8rem !important; /* coin plus serré    */
	}

}

/* === BREAKPOINT   mobile  ≤ 767 px  ================================= */
@media (max-width:767.98px){

	.wp-block-file__button{
		/* encore plus petit si nécessaire */
		padding: .5rem .9rem !important;   /* exemple */
		font-size: .75rem !important;
		border-radius: 1.6rem !important;
	}
}

.wp-block-button__link {
    background: transparent;
    color: white;
    text-decoration: none;
    border-radius: 2.2222222222222223rem !important;
    border-width: 0.0556rem !important;
    padding-bottom: 0.8333333333333334rem !important;
    padding-left: 1.3888888888888888rem !important;
    padding-right: 1.3888888888888888rem !important;
    padding-top: 0.8333333333333334rem !important;
    border-style: solid !important;
    border-color: white;
    font-family: "Rubik", sans-serif;
    font-weight: 900;
    font-style: normal;
	font-size: 14px;
	margin-top: 10px;
}

.wp-block-button__link:hover {
    background-color: #FF753D !important;
    border-color: #FF753D !important;
	color:black !important;
}

/* === BREAKPOINT   768 px – 991.98 px ============================= */
@media (min-width:768px) and (max-width:900.98px){

	.wp-block-button__link{
		/* –– taille & paddings plus petits –– */
		padding: .6rem 1rem !important;   /* top/bottom .6 rem  |  left/right 1 rem */
		font-size: .8rem !important;      /* au lieu de .9 rem  */
		border-radius: 1.8rem !important; /* coin plus serré    */
	}

}

/* === BREAKPOINT   mobile  ≤ 767 px  ================================= */
@media (max-width:767.98px){

	.wp-block-button__link{
		/* encore plus petit si nécessaire */
		padding: .5rem .9rem !important;   /* exemple */
		font-size: .75rem !important;
		border-radius: 1.6rem !important;
	}
}

.passster-form button[type=submit] { 
	background: transparent;
    color: white;
    text-decoration: none;
    border-radius: 2.2222222222222223rem !important;
    border-width: 0.0556rem !important;
    padding-bottom: 0.8333333333333334rem !important;
    padding-left: 1.3888888888888888rem !important;
    padding-right: 1.3888888888888888rem !important;
    padding-top: 0.8333333333333334rem !important;
    border-style: solid !important;
    border-color: white;
    font-family: "Rubik", sans-serif;
    font-weight: 900;
    font-style: normal;
	font-size: 14px;
	margin-top: 10px;
	text-transform: uppercase;
}


.passster-form button[type=submit]:hover {
    background-color: #FF753D !important;
    border-color: #FF753D !important;
	color:black !important;
}

.passster-form input[type=email], .passster-form input[type=password], .passster-form input[type=text] {
    width: 100%;
    border: 1px solid #000000;
    background: #fff;
    margin: 0 0 5px;
    padding: 10px;
    box-sizing: border-box;
    font-family: "Rubik", sans-serif;
}

.passster-form > form {
    background: #000000;
    padding: 0px !important;
    margin: 0px 0px 0px 0px !important;
    border-radius: 0px;
}

main header#qlp-nav {
  display: none;
}

#content_DUPLIQUE .semplice-marquee-text {
    color: #000000;
    font-size: 3.3333333333333335rem;
    line-height: 4.111111111111111rem;
    margin-right: 13.88888888888889rem;
    text-transform: none;
    letter-spacing: 0rem;
}

/* Définir une base commune */
#content_DUPLIQUE .semplice-marquee-text {
  color: #000;
  text-transform: none;
  letter-spacing: 0;
  margin-right: 13.8889rem;
  font-size: 3.3333rem;
  line-height: 4.1111rem;
}

/* Responsive adjustments */

@media (max-width: 1440px) {
  #content_DUPLIQUE .semplice-marquee-text {
    font-size: 1.8rem;
    line-height: 3.5rem;
    margin-right: 11rem;
  }
}

@media (max-width: 1024px) {
  #content_DUPLIQUE .semplice-marquee-text {
    font-size: 2.2rem;
    line-height: 2.8rem;
    margin-right: 8rem;
  }
}

@media (max-width: 768px) {
  #content_DUPLIQUE .semplice-marquee-text {
    font-size: 1.8rem;
    line-height: 2.4rem;
    margin-right: 6rem;
  }
}

@media (max-width: 480px) {
  #content_DUPLIQUE .semplice-marquee-text {
    font-size: 1.4rem;
    line-height: 1.8rem;
    margin-right: 4rem;
  }
}

.teamqlp a:hover {
    color: black !important;
}

/* Cible uniquement la grille principale, pas les enfants */
.masonry {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: flex-start !important;
    align-items: flex-start !important;
    height: auto !important;
    margin: 0 !important;
    box-sizing: border-box !important;
}

/* Réinitialise seulement les projets visibles (évite display: none) */
.masonry > .project:not([style*="display: none"]) {
    position: static !important;
    transform: none !important;
    opacity: 1 !important;
    display: block !important; /* facultatif : assure un bon rendu */
}

/* Responsive : layout personnalisé */
.masonry > .project:not([style*="display: none"]) {
    width: calc(25% - 15px);
    margin: 0 10px 20px 0;
    box-sizing: border-box;
}

/* Items dans tous ces conteneurs */
[class*="masonry-content"] .masonry-item,
.masonry .masonry-item {
  position: relative !important;
  top: auto !important;
  left: auto !important;
  transform: none !important;
  height: auto !important;

  box-sizing: border-box !important;
  width: 25% !important; /* 4 colonnes desktop */
  margin: 0 !important;
}

@media (max-width: 1024px) {
    .masonry > .project:not([style*="display: none"]) {
        width: calc(50% - 10px);
    }
}

@media (max-width: 768px) {
    .masonry > .project:not([style*="display: none"]) {
        width: 100%;
    }
}

/* Corrige les largeurs forcées par Masonry */
.masonry .masonry-item-width {
  width: 0 !important; /* annule largeur Masonry par défaut */
}

/* Force la largeur 25% sur items qui ont cette classe */
[class*="masonry-content"] .masonry-item.masonry-item-width,
.masonry .masonry-item.masonry-item-width {
  width: 25% !important;
}
