* {
    font-family: sans-serif;
    box-sizing: border-box;
    padding: 0;
}
html, body {
    background-color: #BBB;
    width: 100%;
    height: 100%;
    margin: 0;
    overflow: hidden;
}
body {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    height: 100vh;
}
.alignement {
    display: inline-flex;
}
#nomENThaut {
    display: block;
    text-align: center;
    margin: 0px 0px;
    padding: 0px 0px;
    font-family: sans-serif;
    font-size: 128%;
    line-height: 1.5;
    padding-top: 20px;
    margin-bottom: 5px;
}
#LANGUE {
    display: none;
    float: right;
    margin: -5px 0px 0px 0px;
    padding: 0px 0px;
    font-size: 80%;
    line-height: 1.5;
}
.blocPortfolio{
    position:relative;
    display:inline-block;
}
.menuPrincipal{
    display:flex;
    justify-content:center;
    align-items:center;
    text-align: center;
    gap:120px;
}
.menuPROJETS {
    font-size: 14px;
    display: none;
    position: absolute;
    z-index: 1000;
    top: 20px;
    left: 50%;
    transform: translateX(-50%);
}
.menuPROJETS a, .menuPROJETS button{
    display: block;
    margin: 15px 0;
}
.blocMaquettes {
    position: relative;
}
.menuMaquettes {
    font-size: 14px;
    display: none;
    position: absolute;
    z-index: 1001;
    top: 15px;
    left: 20px;
}
.menuMaquettes a{
    display: block;
    margin: 15px 7px;
}
ul {
    line-height: 1;
    background: transparent;
    padding: 0px 0px 0px 0px;
    margin: 0px 20px 0px 0px;
}
button {
    margin-right: 2px;
    margin-left: 2px;
    cursor: pointer;
    background: transparent;
    border-color: white;
    border: 0.5px solid black;
    width: 10px;
    height: 10px;
    border-radius: 2px;
    text-align: center;
}
.button1 {
    position:fixed;
    top: 2rem;
    right: 2rem;
    font-size: 25px;
    float: right;
    cursor: pointer;
    background: transparent;
    color: #BBB;
    border-color: black;
    border: none;
    border-radius:50%;
    z-index:9999;
}
button:active {
    box-shadow: inset 0px 0px 0px #000,
                inset 2px 2px 2px grey;
}
li {
    display: inherit;
    background: transparent;
    line-height: .8;
}
a {
    text-decoration: none;
    color: black;
    background: transparent;
    border: 0;
    padding: 0;
}


#overlay{
    display:none;
    position:fixed;
    inset:0;
    background:rgba(0,0,0,.8);
    z-index:9998;
}

#expo{
    display:none;
    position:fixed;
    top:50%;
    left:50%;
    transform:translate(-50%,-50%);
    background:#111;
    border-radius:15px;
    z-index:9999;
    padding:2px;
    width: auto;
    height: auto;
    max-width: 90vw;
    max-height: 90vh;
    overflow:visible;
}

#contenuExpo{
    display: flex;
    opacity: 1;
    transition: opacity .4s step-end;
}

#contenuExpo img,
#contenuExpo video{
    display: block;
    max-width:90vw;
    max-height:85vh;
    border-radius: 10px;
    opacity: 1;
    transition: opacity .4s ease-in-out;
}


.commandes{
    text-align:center;
    margin-top:20px;
}


footer{
    margin-top: auto;
    display: flex;
    justify-content: space-between;
    align-items: center;
}
#nomENTbas {
    margin: 0px 0px 0px 5px;
    line-height: 1.5;
}
#LOGODIBLINKEDIN {
    margin: 5px 0px 0px 0px;
}

.business-card-container{
    flex: 1;
    display:flex;
    justify-content:center;
    align-items:center;
    background:transparent;
    overflow:hidden;
    perspective: 1000px;
}
.business-card, .infos, .contact, .qr, h1, h2, p{
    background: transparent;
}
.business-card::before{
    content:"";
    position:absolute;
    top:-30%;
    left:-10%;
    width:30%;
    height:160%;
    background:linear-gradient(90deg, transparent,rgba(255,255,255,.08), rgba(255,255,255,.18), rgba(255,255,255,.08), transparent);
    transform:rotate(20deg);
    pointer-events:none;
    filter: blur(8px);
    opacity: .6;
}
.business-card{
    cursor: pointer;
    width:850px;
    height:420px;
    background:linear-gradient(135deg, rgba(255,255,255,.15), rgba(255,255,255,.03));
    border:1px solid rgba(255,255,255,.4);
    backdrop-filter:blur(20px);
    border-radius:40px;
    display:flex;
    align-items:center;
    justify-content:center;
    color:white;
    position:relative;
    box-shadow:
        0 25px 60px rgba(0,0,0,.4),
        0 0 20px rgba(255,255,255,.4),
        0 0 60px rgba(255,255,255,.15);
    transition: transform .35s cubic-bezier(.2,.8,.2,1), box-shadow .35s ease;
    transform-style: preserve-3d;
}
.business-card::after{
    content:"";
    position:absolute;
    width:65%;
    height:35px;
    bottom:-50px;
    left:50%;
    transform:translateX(-50%);
    border-radius:50%;
    background:rgb(249, 249, 249);
    filter:blur(30%);
}
.floating-card{
    animation: floatCard 4s ease-in-out infinite;
}
@keyframes floatCard{
    0%,100%{
        transform:
        translateY(0)
        rotateX(1deg);
    }
    50%{
        transform:
        translateY(-15px)
        rotateX(-1deg);
    }
}
.glass-card{
    overflow:hidden;
    border-radius:40px;
}
.infos h1{
    background: none;
    font-size:36px;
    color:#000000;
    margin-bottom:20px;
    transform: translateZ(40px);
}

.infos h2{
    background: none;
    font-size: 22px;
    color:#000000;
    line-height:1.6;
    margin-bottom:40px;
    transform: translateZ(25px);
}

.contact p{
    background: none;
    font-size:16px;
    color:#000000;
    margin: 4px 0;
    transform: translateZ(15px);
}

.qr{
    margin-left: 50px;
    text-align:center;
    transform: translateZ(60px);
}

.qr img{
    margin-left: 50px;
    width:120px;
    border-radius:20px;
    border:2px solid #f4f8f4;
    box-shadow:
    0 0 20px #f7f8f7,
    0 0 40px #f6f8f7;
    transform: translateZ(80px), rotate(-10deg);
}

