 /*  
Theme Name: MATT 2025 V5
Theme URI: http://matthieulaporte.com/
Description: MATT
Version: Version : V.5.2025
Author: Matthieu Laporte
Author URI: http://matthieulaporte.com/
*/

/* typo couleurs general */
html {
    width: 100%;
    padding: 0;
    margin: 0;
    display: block;
    background-color: #ffffff; 
    scroll-behavior: smooth;
}
body {

    font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-size: 12px;
    padding: 0;
    margin: 0;
    border: 0;
    background-color: #ffffff; 
}
/* Forcer le corps à ne pas scroller */
body.no-scroll {
    overflow: hidden; /* Supprime le scroll */
    height: 100%; /* Empêche le contenu de dépasser */
}

strong, b {
    font-weight: 500;
}
span {
    font-weight: 800;
}
h1 {
float: left;
font-size: 20px;
font-weight: 800;
height: auto;
letter-spacing: 1.5px;
margin-bottom: 40px;
padding: 0px 10px 0px 10px;
width: 100%;
text-transform: uppercase;
line-height: 30px;
}
h1 a {
    border-bottom: 0px solid #000;
    padding-bottom: 2px;
}
h2 {
    font-size: 25px;
    font-weight: 700;
    height: auto;
    letter-spacing: 1px;
    margin-bottom: 0px;
    padding: 0;
    width: 100%;
    line-height: 35px;
}
h3 {
    font-size: 22px;
    font-weight: 400;
    height: auto;
    letter-spacing: 0.8px;
    line-height: 35px;
    color: #111;
    margin-bottom: 40px;
}
h3 strong {
    font-weight: 800;
}
h3 a {
    color: #121212;
    text-decoration: none;
    display: inline-block;
    border-bottom: 1px solid #eee;
}
h3 a::after {
    content: '';
    display: block;
    width: 0;
    height: 2px;
    background: #000;
    transition: width .3s;	
        
}
h3 a:hover::after  {
    width: 100%;
    transition: width .3s;
        
}
h4 {
    color: #121212;
    font-size: 32px;
    font-variant: small-caps;
    font-weight: 300;
    letter-spacing: 2px;
    margin: 0;
    padding: 0;
}
p {
    font-size: 16px;
    line-height: 27px;
    font-weight: 400;
    letter-spacing: 0.4px;
    margin-top: 0;
}
p a {
    text-decoration: underline;
    color: #111;
    text-decoration-color: #eee;
    text-decoration-line: revert-layer;
    text-underline-offset: 5px;
    transition: all 0.5s cubic-bezier(0.19, 1, 0.22, 1);
}
p a:hover {
    transition: all 0.5s cubic-bezier(0.19, 1, 0.22, 1);
    text-decoration-color: #111;

}
li {
    font-size: 16px;
    line-height: 27px;
    font-weight: 400;
    letter-spacing: 0.4px;
    margin-top: 0;
}

blockquote {
margin: 0;
padding: 20px 10% 20px 10%;
font-style: italic;
width: 100%;
text-transform: uppercase;
}
hr {
    width: 100%;
    margin-bottom: 20px;
    border-top: 0px solid #fff;
    margin-top: 20px;
    height: 0px;
}
a {
    border: medium none;
    text-decoration: none;
    color: #000000;
    cursor:pointer;
}
a img {
	border:0px;
}


*, *:before, *:after {
    box-sizing: border-box;
}
#overall-fade {
	background-color:#ffffff;
    height: 100%;
    width: 100%;
    float: left;
	z-index:999;
}

#overall-fade {
    animation: fadein 0.5s;
    -moz-animation: fadein 0.5s; /* Firefox */
    -webkit-animation: fadein 0.5s; /* Safari and Chrome */
    -o-animation: fadein 0.5s; /* Opera */
}
@keyframes fadein {
    from {
        opacity:0;
    }
    to {
        opacity:1;
    }
}
@-moz-keyframes fadein { /* Firefox */
    from {
        opacity:0;
    }
    to {
        opacity:1;
    }
}
@-webkit-keyframes fadein { /* Safari and Chrome */
    from {
        opacity:0;
    }
    to {
        opacity:1;
    }
}
@-o-keyframes fadein { /* Opera */
    from {
        opacity:0;
    }
    to {
        opacity: 1;
    }
}

/* container */

.grid-100-fixed {
    height: 60px;
    margin: 0;
    padding: 0;
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 8;
    transition: all 0.5s cubic-bezier(0.19, 1, 0.22, 1);
    background-color:initial;
    border-bottom: initial;
}

.grid-100-fixed-color {
    height: 65px;
    margin: 0;
    padding: 0;
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 99;
	    transition: all 0.5s cubic-bezier(0.19, 1, 0.22, 1);
    background-color: initial;
    opacity: 0;
}
.grid-100-white-title {
    text-align: center;
    margin-bottom: 100px;
    padding: 0;
    text-transform: uppercase;
    border-top: 1px solid #eee;
    padding-top: 100px;
    margin-top: 0px;
}
.grid-100-white-title p {
    letter-spacing: 2px;
    padding: 0;
    margin: 0;
}
.cool-link-all {
    border: 1px solid #111111;
    border-radius: 40px;
    padding: 15px 40px 15px 40px;
    transition: all 0.5s cubic-bezier(0.19, 1, 0.22, 1);
    background-color: #fff;
    display: inline-block;
}
.cool-link-all:hover {
    border: 1px solid #111111;
    transition: all 0.5s cubic-bezier(0.19, 1, 0.22, 1);
    background-color: #111;
}
.cool-link-all a {
    color: #fff;
    mix-blend-mode: difference;
    transition: all 0.5s cubic-bezier(0.19, 1, 0.22, 1);
}
.cool-link-all p {
    color: #fff;
    mix-blend-mode: difference;
    transition: all 0.5s cubic-bezier(0.19, 1, 0.22, 1);
}
.margin-after-project {
    float: left;
    height: 0px;
    width: 100%;
}
.margin-top {
    display: flex;
    height: 30px;
    width: 100%;
}
.margin-top-2 {
    display: flex;
    height: 30px;
    width: 100%;
}
.margin-top-index {
    float: left;
    height: 100px;
    width: 100%;
}
img.lazyloaded {
    -webkit-transition: opacity .3s linear .2s;
    -moz-transition: opacity .3s linear .2s;
    transition: opacity .3s linear .2s;
    opacity: 1;
}