/* MARGIN */
body{
    --container-space : 7vw;
    font-family: "Montserrat", sans-serif;
    background-color: var(--wp--preset--color--blanc);
    color: var(--wp--preset--color--noir);
}

/* INITIAL LIST STYLE*/
.nav ul {
    list-style: none;
    margin-bottom: 0;
}
.list-unstyled {
    list-style: none;
    margin: 0;
    padding: 0;
}
p{
    color: var(--wp--preset--color--noir);
}
strong{
    font-weight: 600;
}
a{
    text-decoration: none;
    color: var(--wp--preset--color--noir);
}
ul{
    list-style: none;
    margin: 0;
    padding: 0;
}
li{
    transition: font-weight 0.3s ease;
}
li a:hover{
    cursor: pointer;
    font-weight: 800;
}
a:where(:not(.wp-element-button)) {
    text-decoration: none;
}
a:-webkit-any-link {
    color: inherit;
}
a:focus {
    outline: none;
}
:root :where(a:where(:not(.wp-element-button))) {
    text-decoration: none;
}
.text-split-animation{
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 0.2rem;
    overflow: hidden;
}
.text-split-animation .word{
    display: flex;
}
.text-split-animation .char{
    display: block;
    position: relative;
    overflow: hidden;
}
.text-split-animation .char span,
.text-split-animation .line span{
    display: inline-block;
    position: relative;
    transform: translateY(0);
    font-size: 70px;
}
.text-split-animation .line{
    display: block;
    width: 100%;
    overflow: hidden;
}
h1{
    display: flex;
}
.text-reveal, .text-typewritting, .text-wave, .text-fade-blur, .text-3d-rotation {
    display: flex;
    justify-content: center;
}

/* Styles pour l'animation text-wave */
.text-wave {
    margin: 0.5em 0;
    font-weight: bold;
}
.text-wave .char {
    display: inline-block;
    transition: transform 0.3s ease;
}

/* Styles pour l'animation text-fade-blur */
.text-fade-blur {
    margin: 0.5em 0;
}
.text-fade-blur .word {
    display: inline-block;
    margin-right: 0.5em;
    opacity: 0;
}

/* Styles pour l'animation text-3d-rotation */
.text-3d-rotation {
    margin: 0.5em 0;
    font-weight: bold;
}
.text-3d-rotation .char {
    display: inline-block;
    transform-style: preserve-3d;
    backface-visibility: hidden;
}

/* HIDE SCROLLBAR */
.hide-scrollbar {
    scrollbar-width: none;
    -ms-overflow-style: none;
}

.hide-scrollbar::-webkit-scrollbar {
    display: none;
}

/* LENIS SCROLL SETTINGS*/
html.lenis, html.lenis body {
    height: auto;
}

.lenis.lenis-smooth {
    scroll-behavior: auto!important;
}

.lenis.lenis-smooth [data-lenis-prevent] {
    overscroll-behavior: contain;
}

.lenis.lenis-stopped {
    overflow: hidden;
}

.lenis.lenis-smooth iframe {
    pointer-events: none;
}
/* ELFSIGHT WIDGET */
.es-grid-layout {
  display: grid;
  align-items: stretch;
}

.es-grid-layout > div {
  display: flex;
}

.es-grid-layout > div > .gcLstm {
  display: flex;
  flex-direction: column;
  flex: 1;
}

.es-repost-preview-block {
  margin-top: auto!important;
}
.part-col{
    position: relative;
    padding: 3rem 0;
    &::before{
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 1px;
        background: linear-gradient(90deg, rgba(192, 196, 180, 0.00) 0%, #C0C4B4 50%, rgba(192, 196, 180, 0.00) 100%);
        z-index: 2;
    }
    &::after{
        content: "";
        position: absolute;
        bottom: 0;
        left: 0;
        width: 100%;
        height: 1px;
        background: linear-gradient(90deg, rgba(192, 196, 180, 0.00) 0%, #C0C4B4 50%, rgba(192, 196, 180, 0.00) 100%);
        z-index: 2;
    }
}
/* HELPERS CLASS */
.flex-start{
    display: flex;
    justify-content: flex-start!important;
}
@media (max-width: 768px){
    body .fullscreen-block--wrap:first-child{
        display: none;
    }
    .align-start{
        display: flex;
        align-items: flex-start!important;
        & a {
            text-align: left;
        }
    }
}


/* VIEW TRANSITION */
@view-transition{
    navigation: auto;
}
::view-transition-old(root){
    animation: 1.5s cubic-bezier(0.87, 0, 0.13, 1) both move-out;
}
::view-transition-new(root){
    animation: 1.5s cubic-bezier(0.87, 0, 0.13, 1) both move-in;
}
@keyframes move-out {
    from{
        opacity: 1;
        transform: translateY(0);
    }
    to{
        opacity: 0.5;
        transform: translateY(-35%);
    }
}
@keyframes move-in {
    from{
        clip-path: polygon(0 100%, 100% 100%, 100% 100%, 0 100%);
    }
    to{
        clip-path: polygon(0 100%, 100% 100%, 100% 0%, 0 0%);
    }
}

/* MEDIA QUERIES SAMPLES */
@media (max-width: 2560px) {
}
@media (max-width: 1920px) {
}
@media (max-width: 1600px) {
    body{
        --container-space : 5vw;
    }
}
@media (max-width: 1200px) {
}
@media (max-width: 1024px) {
}
@media (max-width: 768px) {
    body{
        --container-space : 1.33em;
    }
}
@media (max-width: 576px) {   
}