/* sehnua.css */
/* This file contains the CSS styles for sehnua design website. */

@import url('https://fonts.googleapis.com/css2?family=Outfit:wght@100..900&display=swap');

/* General styles */
body {
    background: linear-gradient(180deg, #f0f0f0 0 119px, #f0f0f0 119px 119px, #ccc 90%);
    /* background-image: url('https://www.sehnua.com/img/animated_bg1.gif');
    background-repeat: no-repeat;
    background-size: 100% 100%; */
    background-attachment: fixed;
    font-family: 'Outfit', sans-serif;
    color: #000;
    margin: 0;
    padding: 0;
}
h1 {
    padding: 0 60px;
    font-size: 32pt;
    /* line-height: 28pt; */
    font-weight: 900;
    color: #000;
    text-align: left;
    margin-top: 0;
    margin-bottom: 0;
}
h2 {
    padding: 0 60px;
    font-size: 12pt;
    font-weight: 300;
    color: #666;
    text-align: left;
    margin-top: 0;
    margin-bottom: 40px;
}
p {
    padding: 0 60px;
    margin: 0;
}

.video {
    width: 1050px;
    height: 590px;
}

/* Header styles */
#header {
    position: fixed;
    z-index: 1000;
    width: 100%;
    height: 210px;
    top: 0;
    vertical-align: middle;
    background: linear-gradient(180deg, #f0f0f0 0 119px, transparent 119px 100%);
}
#logo {
    position: absolute;
    width: 600px;
    height: auto;
    left: 50%;
    margin-left: -300px;
    top: 53px;
    /*border:rgba(0, 0, 0, 0.1) solid 1px;*/
    transition: all 0.3s ease;
}
.logo2 {
    height: auto !important;
    left: 50% !important;
}
#headerLine {
    position: fixed;
    top: 118px;
    left: 50%;
    width: 750px;
    margin-left: -375px;

    border-style: solid;
    border-width: 0 0 1px 0;
    border-color: #14b4ef;

    transition: all 0.3s ease;
}
.headerLine2 {
    width: 1150px !important;
    margin-left: -575px !important;
    top: 118px !important;
    border-width: 0 0 1px 0 !important;
}
#animation_container {
    position: relative;
    width: 760px;
    height: 90px;
    top: 72px;
    left: 50%;
    margin-left: -500px;
    right: 0;
    background-color:rgba(153, 204, 255, 0.00);
}
/* Footer styles */
#footer {
    position: fixed;
    bottom: 0;
    left: 50%;
    width: 750px;
    margin-left: -375px;
    height: 30px;

    font-size: 8px;
    line-height: 30px;
    color: #000;
    text-align: center;

    border-style: solid;
    border-width: 1px 0 0 0;
    border-color: #14b4ef;

    transition: all 0.3s ease;
}
.footer2 {
    width: 1150px !important;
    margin-left: -575px !important;

    border-style: solid !important;
    border-width: 1px 0 0 0 !important;
    border-color: #14b4ef !;

    background-color: rgba(204,204,204, 1.0) !important;
}

/* BACK BUTTONS */
.backButton {
    position: absolute;
    top: 0;
    left: 0;
    width: 70px;
    height: 70px;
    cursor: pointer;
    transition: all 0.1s ease;
    text-decoration: none;
    color: #000;
}
.pageCorner {
    position: absolute;
    top: 0;
    left: 0;
    width: 40px;
    height: 40px;
    border-radius: 50% 0 0 0;
    
    border-style: solid;
    border-width: 1px 0 0 1px;
    border-color: #000;

    cursor: pointer;
    text-decoration: none;
    color: #000;
    transition: all 0.1s ease;
}
.backButton:hover .pageCorner {
    top: 0px;
    left: 0px;
    width: 70px;
    height: 70px;
    border-radius: 100% 0 0 0 !important;
    border-color: #fff;
    background: linear-gradient(-45deg, transparent, transparent, #333);
    transition: all 0.2s ease;
}
.backButton2 {
    position: absolute;
    bottom: 0;
    right: 0;
    width: 70px;
    height: 70px;
    cursor: pointer;
    text-decoration: none;
    color: #000;
    background: linear-gradient(135deg, transparent 0% 50%, #333 50%, transparent 100%);
    transition: all 0.1s ease;
}
.backButton2:hover {
    width: 70px;
    height: 70px;
    transition: all 0.2s ease;
}
.pageCorner2 {
    position: absolute;
    bottom: 0;
    right: 0;
    width: 70px;
    height: 70px;
    cursor: pointer;
    text-decoration: none;
    color: #000;
    background-color: #fff;
    transition: all 0.1s ease;
}
.backButton2:hover .pageCorner2 {
    width: 70px;
    height: 70px;
    transform: rotate3d(-1, 1, 0, 45deg);
    border-color: #fff;
    transition: all 0.2s ease;
}
.pageCorner2b {
    position: absolute;
    bottom: 0;
    right: 0;
    width: 40px;
    height: 40px;
    border-style: solid;
    border-width: 0 1px 1px 0;
    border-color: #000;
    cursor: pointer;
    text-decoration: none;
    transition: all 0.1s ease;
}
.backButton2:hover .pageCorner2b {
    width: 70px;
    height: 70px;
    border-color: #fff;
    transition: all 0.2s ease;
}

/* Menu position 1 */
#menu {
    z-index: 1000;
    position: fixed;
    margin: auto;
    top: 180px;
    left: 50%;
    margin-left: -490px;
    width: 960px;
    padding: 5px 10px;
    margin-bottom: 10px;
    text-align: center;
    /* transition: all 0.3s ease; */
    /*border:rgba(0, 0, 0, 0.1) solid 1px;*/
}
.item {
    display: inline-block;
    padding: 5px 10px;
    margin: 0 5px;
    font-size: 13pt;
    color: #000;
    cursor: pointer;

    border-style: solid !important;
    border: transparent solid 2px;
    border-radius: 15px;

    transition: all 0.3s ease;
}
.item:hover {
    border: #ccc solid 2px;

    transition: all 0.1s ease !important;
}
.itemSelected {
    border-style: solid !important;
    border: #000 solid 2px;
}
/* Menu position 2 */
@keyframes menuGo2 {
  0%    {opacity: 1.0;top: 180px;}
  70%   {opacity: 0.0;top: 180px;}
  80%   {opacity: 0.0;top: -100px;}
  100%  {opacity: 1.0;top: -5px;}
}
@keyframes menuGo2b {
  0%    {opacity: 1.0;top: 150px;}
  70%   {opacity: 0.0;top: 150px;}
  80%   {opacity: 0.0;top: -100px;}
  100%  {opacity: 1.0;top: -5px;}
}
@keyframes itemGo2 {
  0%    {border-width: 2px;border-radius: 15px;font-size: 13pt;top:0}
  70%   {border-width: 2px;border-radius: 15px;font-size: 11pt;top:-10px}
  80%   {border-width: 0 2px 2px 2px;border-radius: 0 0 15px 15px;font-size: 11pt;}
  100%  {border-width: 0 2px 2px 2px;border-radius: 0 0 15px 15px;font-size: 11pt;}
}
@keyframes itemGo2b {
  0%    {border-width: 2px;border-radius: 15px;top:0}
  70%   {border-width: 2px;border-radius: 15px;top:-10px}
  80%   {border-width: 0 2px 2px 2px;border-radius: 0 0 15px 15px;}
  100%  {border-width: 0 2px 2px 2px;border-radius: 0 0 15px 15px;}
}
.menu2 {
    top: -5px !important;
    transition-delay: 0.4s;
    /* text-align: right !important; */

    animation-name: menuGo2;
    animation-duration: 0.5s;
}
.menu2 .item {
    position: relative;
    font-size: 11pt;
    border-radius: 0 0 15px 15px;
    border-width: 0 2px 2px 2px;

    transition-delay: 0.0s;

    animation-name: itemGo2;
    animation-duration: 0.5s;
}
/* .menu2 .item:hover {
    transition-delay: 0.0s;
}*/

.menuSeparator {
    color: #ccc;
    font-weight: bold;
}

/* Book styles */
#book {
    position: relative;
    margin: auto;
    left: 50%;
    margin-top: 270px;
    margin-bottom: 100px;
    margin-left: -525px;
    width: 1050px;

    /* border: 1pt solid #000;
    border-radius: 30px 0 0 0; */
    
    transition: all 0.3s ease;
}
#gallery {
    margin: 0;
    padding: 0;
}
.gallery {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
    gap: 25px;
    /* padding: 20px; */
}
.project {
    width: 1050px !important;
    padding: 70px 0px !important;
    background-color: #fff;

    /* background-image: url('https://www.sehnua.com/img/animated_bg1.gif');
    background-repeat: no-repeat;
    background-size: 100% 100%; */
    
    border-radius: 20px 0 0 0;
    box-shadow: 0 5px 5px rgba(0, 0, 0, 0.2);

    transition: all 0.3s ease-out;
}

.thumbnailImg {
    visibility: hidden !important;
    width: 0;
    height: 0;
}

/* Vignette */
.thumbnail {
    background: white;
    border-radius: 15px 0 0 0;
    overflow: hidden;
    transform: translateY(-170px) rotate3d(1, 0, 0, 10deg) translateY(170px);
    box-shadow: 0 20px 20px rgba(0, 0, 0, 0.3);
    transition: all 0.3s ease-out;
    cursor: pointer;
    position: relative;
    border-style: solid;
    border-color: #888;
    border-width: 0 0 3px 0;
}
.thumbnail:hover {
    transform: translateY(-170px) rotate3d(1, 0, 0, 0) translateY(170px) !important;
    box-shadow: 0 5px 5px rgba(0, 0, 0, 0.2);
    transition: all 0.2s ease-out;
}
.thumbnail:active {
    box-shadow: 0 0 0 rgba(0, 0, 0, 0.2);
    border-width: 3px 0 0 0;
    transition: all 0.0s ease-out;
}

.projectImg {
    width: 100%;
    height: auto;
    object-fit: cover;
    border-radius: 15px 0 0 0;
    box-shadow: inset 0 -3px 3px rgba(0, 0, 0, 0.1);
    transition: all 0.3s ease-out;
}

/* Vignette image */
.thumbnail-image {
    width: 100%;
    height: 200px;
    object-fit: cover;
    background: linear-gradient(45deg, #f0f0f0, #e0e0e0);
    display: flex;
    align-items: center;
    justify-content: center;
    color: #666;
    font-size: 14px;
    border-radius: 15px 0 40px 0;
    box-shadow: inset 0 -3px 3px rgba(0, 0, 0, 0.1);

    opacity: 0.9;
    transition: all 0.3s ease-out;
}

.thumbnail-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 15px 0 40px 0;
    box-shadow: inset 0 -3px 3px rgba(0, 0, 0, 0.1);
    transition: all 0.3s ease-out;
}

.thumbnail:hover .thumbnail-image {
    opacity: 1.0;
    transition: all 0.2s ease-out;
}

/* Vignette titre */
.thumbnail-title {
    font-size: 1.3rem;
    font-weight: bold;
    color: #333;
    margin-bottom: 10px;
    line-height: 1.4;
    opacity: 0.8;
    transition: all 0.3s ease-out;
}

.thumbnail:hover .thumbnail-title {
    opacity: 1.0 !important;
    transition: all 0.2s ease-out;
}

/* Vignette sous-titre */
.thumbnail-path {
    font-size: 0.9rem;
    color: #999;
    opacity: 0.0;
    filter: blur(5px);
    -webkit-filter: blur(5px);
    transition: all 0.3s ease-out;
}

.thumbnail:hover .thumbnail-path {
    opacity: 1.0 !important;
    filter: blur(0px) !important;
    -webkit-filter: blur(0px) !important;
    transition: all 0.2s ease-out;
}

.thumbnail-content {
    padding: 20px;
}

.thumbnailOutUp {
    opacity: 0.05 !important;
}

/* DESKTOP 800>1150 */
@media (min-width: 800px) and (max-width: 1150px) {
    #header {
        height: 200px !important;
    }
    #header {
        background: linear-gradient(180deg, #f0f0f0 0 95px, transparent 95px 100%);
    }
    #logo {
        width: 500px;
        height: auto;
        top: 40px;
        margin-left: -250px;
    }
    /* .logo2 {
        width: 360px !important;
        margin-left: -330px !important;
        top: 56px !important;
        height: auto;
    } */
    #headerLine {
        top: 95px !important;
        width: 600px;
        margin-left: -300px;
    }
    .headerLine2 {
        top: 65px !important;
        width: 780px !important;
        margin-left: -390px !important;
    }
    #menu {
        top: 150px;
        width: 630px !important;
        margin-left: -325px !important;
    }
    .menu2 {
        /* top: 60px !important; */
        animation-name: menuGo2b;
    }
    .menu2 .item {
        animation-name: itemGo2b;
    }
    .item {
        font-size: 10pt;
    }
    #book {
        width: 750px;
        margin-top: 220px;
        margin-left: -375px;
    }
    #dom_overlay_container {
        width: 750px !important;
        height: 100px !important;
        margin-left: -375px;
    }
    .video {
        width: 750px;
        height: 422px;
    }
}

/* DESKTOP >800 */
@media only screen and (max-width: 800px) and (-webkit-min-device-pixel-ratio: 2),
only screen and (max-width: 650px) and (min--moz-device-pixel-ratio: 2),
only screen and (max-width: 650px) and (-o-min-device-pixel-ratio: 2/1),
only screen and (max-width: 650px) and (min-resolution: 192dpi),
only screen and (max-width: 650px) and (min-resolution: 2dppx) {
    #header {
        height: 180px !important;
        background: linear-gradient(180deg, #f0f0f0 0 95px, transparent 95px 100%);
    }
    #logo {
        width: 400px !important;
        height: auto;
        top: 52px;
        margin-left: -200px;
    }
    /* .logo2 {
        width: 400px !important;
        margin-left: -200px !important;
        top: 52px !important;
    } */
    #headerLine {
        top: 95px !important;
        width: 500px;
        margin-left: -250px;
    }
    .headerLine2 {
        width: 100% !important;
        margin-left: -50% !important;
    }
    #menu {
        top: 130px;
        width: 630px !important;
        margin-left: -325px !important;
    }
    /* .menu2 {
        text-align: center !important;
        opacity: 0.0 !important;
        
    } */
    .item {
        font-size: 9pt;
    }
    #book {
        position: relative;
        top: 180px;
        padding-bottom: 75px !important;
        left: 0;
        right: 0;
        margin: 0 15px 0 15px;
        padding: 10px;
        width: auto;
    }
    .gallery {
        gap: 15px;
        padding: 10px;
    }
    .video {
        width: 100%;
        height: 393px;
    }
}

/* DESKTOP >650 */
@media only screen and (max-width: 650px) and (-webkit-min-device-pixel-ratio: 2),
only screen and (max-width: 650px) and (min--moz-device-pixel-ratio: 2),
only screen and (max-width: 650px) and (-o-min-device-pixel-ratio: 2/1),
only screen and (max-width: 650px) and (min-resolution: 192dpi),
only screen and (max-width: 650px) and (min-resolution: 2dppx) {
    /* Vignette */
    .thumbnail {
        transform: translateY(-170px) perspective(50cm) rotate3d(1, 0, 0, 0deg) translateY(170px) !important;
        box-shadow: 0 5px 5px rgba(0, 0, 0, 0.2);
        border-color: #888;
        border-width: 0 0 3px 0;
        opacity: 1.0 !important;
        filter: blur(0px) !important;
        -webkit-filter: blur(0px) !important;
    }
    .thumbnail-image img {
        opacity: 1.0 !important;
        transition: all 0.3s ease-out;
    }
    .thumbnail:hover .thumbnail-image img {
        opacity: 1.0;
        transition: all 0.2s ease-out;
    }
    .thumbnail-path {
        opacity: 1.0;
        filter: blur(0px);
        -webkit-filter: blur(0px);
        transition: all 0.3s ease-out;
    }
    .thumbnail:hover .thumbnail-path {
        opacity: 1.0;
        transition: all 0.3s ease-out;
    }
    .thumbnailOutUp {
        /* opacity: 0.05 !important; */
    }
    .thumbnailOutBottom {
        transform: translateY(-170px) perspective(50cm) rotate3d(1, 0, 0, 45deg) translateY(170px) !important;
        opacity: 0.7 !important;
        filter: blur(1px) !important;
        -webkit-filter: blur(1px) !important;
    }
    .thumbnailOutBottom:hover {
        transform: translateY(-170px) perspective(50cm) rotate3d(1, 0, 0, 45deg) translateY(170px) !important;
    }
    .video {
        width: 100%;
        height: 320px;
    }
}

@media (max-width: 480px) {
    #logo {
        width: 300px !important;
        height: auto;
        top: 63px;
        margin-left: -150px;
    }
    /* .logo2 {
        top: 63px !important;
    } */
    .gallery {
        grid-template-columns: repeat(auto-fill, minmax(1fr, 1fr));
    }
}

@media (max-width: 370px) {
    /* MODE TEXTE ? */
}

#myDiv {
    width: 100%;
    height: 100px;
    background-color: lightblue;
    transition: height 0.3s ease;
}
