.fira_sans_thin {

    font-family: "Fira Sans", sans-serif;

    font-weight: 100;

    font-style: normal;

}



.fira_sans_extralight {

    font-family: "Fira Sans", sans-serif;

    font-weight: 200;

    font-style: normal;

}



.fira_sans_light {

    font-family: "Fira Sans", sans-serif;

    font-weight: 300;

    font-style: normal;

}



.fira_sans_regular {

    font-family: "Fira Sans", sans-serif;

    font-weight: 400;

    font-style: normal;

}



.fira_sans_medium {

    font-family: "Fira Sans", sans-serif;

    font-weight: 500;

    font-style: normal;

}



.fira_sans_semibold {

    font-family: "Fira Sans", sans-serif;

    font-weight: 600;

    font-style: normal;

}



.fira_sans_bold {

    font-family: "Fira Sans", sans-serif;

    font-weight: 700;

    font-style: normal;

}



.fira_sans_extrabold {

    font-family: "Fira Sans", sans-serif;

    font-weight: 800;

    font-style: normal;

}



.fira_sans_black {

    font-family: "Fira Sans", sans-serif;

    font-weight: 900;

    font-style: normal;

}



.fira_sans_thin_italic {

    font-family: "Fira Sans", sans-serif;

    font-weight: 100;

    font-style: italic;

}



.fira_sans_extralight_italic {

    font-family: "Fira Sans", sans-serif;

    font-weight: 200;

    font-style: italic;

}



.fira_sans_light_italic {

    font-family: "Fira Sans", sans-serif;

    font-weight: 300;

    font-style: italic;

}



.fira_sans_regular_italic {

    font-family: "Fira Sans", sans-serif;

    font-weight: 400;

    font-style: italic;

}



.fira_sans_medium_italic {

    font-family: "Fira Sans", sans-serif;

    font-weight: 500;

    font-style: italic;

}



.fira_sans_semibold_italic {

    font-family: "Fira Sans", sans-serif;

    font-weight: 600;

    font-style: italic;

}



.fira_sans_bold_italic {

    font-family: "Fira Sans", sans-serif;

    font-weight: 700;

    font-style: italic;

}



.fira_sans_extrabold_italic {

    font-family: "Fira Sans", sans-serif;

    font-weight: 800;

    font-style: italic;

}



.fira_sans_black_italic {

    font-family: "Fira Sans", sans-serif;

    font-weight: 900;

    font-style: italic;

}



.playfair_display_title {

    font-family: "Playfair Display", serif;

    font-optical-sizing: auto;

    font-weight: 400;

    font-style: normal;

}



.loader_wrapper {

    position:fixed;

    top:0;

    left:0;

    width:100%;

    height:100%;

    background:black;

    overflow:hidden;

    z-index:99;

}



.loader_wrapper .loader {

    width:100%;

    height:100%;

    display:flex;

    justify-content:center;

    align-items:center;

}



.loader_wrapper .loader img {

    width:40%;

}



html {

    scroll-behavior:smooth;

}



body {

    overflow-x:hidden;

    background-color:rgb(246,246,246);

}



:root {

    --title:rgb(34,34,34);

    --bck:rgb(99, 99, 99);

}



::-webkit-scrollbar {

    width:5px;

}



::-webkit-scrollbar-track {

    background:rgb(201, 201, 201);

}

  

::-webkit-scrollbar-thumb {

    background:#1b1b1b;

}

  

::-webkit-scrollbar-thumb:hover {

    background:#000000;

}



.backgroundTitleScreen {

    position:absolute;

    top:0;

    left:0;

    width:100%;

    height:100%;

    z-index:1;

    overflow-y:hidden;

}



.backgroundTitleScreen video {

    width:100%;

    height:auto;

}



.titleScreen {

    position:absolute;

    top:0;

    left:0;

    width:100%;

    height:100%;

    z-index:2;

    background:rgba(43, 43, 43, 0.5);

}



.titleScreen .logo {

    position:inherit;

    top:30%;

    left:30%;

    width:40%;

    height:40%;

    display:flex;

    justify-content:center;

    align-items:center;

}



.titleScreen .logo div {

    width:100%;

    height:auto;

    text-align:center;

}



.titleScreen .logo div img {

    width:100%;

}



.titleScreen .logo div p {

    color:white;

    font-size:14pt;

    margin-top:-15px;

    text-shadow: 2px 2px 5px rgb(40,40,40);

}



.titleScreen .info {

    position:inherit;

    bottom:20px;

    left:0;

    width:100%;

    height:60px;

    text-align:center;

    color:white;

    font-size:14pt;

}



.titleScreen .info a {

    color:white;

    text-decoration:none;

}



.titleScreen .menuPC {

    position:inherit;

    top:0;

    right:0;

    width:60%;

    height:80px;

    color:white;

}



.titleScreen .menuPC a {

    color:white;

    text-decoration:none;

}



.titleScreen .menuPC h3 {

    float:left;

    width:16.6%;

    text-align:center;

}



.about {

    position:absolute;

    top:100%;

    left:0;

    width:100%;

    height:100%;

    z-index:2;

}



.about div {

    float:left;

}



.about .left {

    width:35%;

    height:100%;

    display:flex;

    justify-content:center;

    align-items:center;

}



.about .left div {

    height:80%;

}



.about .left div h2 {

    color:var(--title);

    font-size:40pt;

    padding-left:45px;

}



.about .left div p {

    color:var(--bck);

    padding-left:50px;

    padding-right:60px;

}



.about .right {

    width:65%;

    height:100%;

    display:flex;

    justify-content:center;

    align-items:center;

}



.about .right img {

    width:100%;

    height:75%;

    filter:grayscale(50%);

}



.products {

    position:absolute;

    top:200%;

    left:0;

    width:100%;

    height:2800px;

    z-index:2;

}



.products h2 {

    color:var(--title);

    font-size:40pt;

    text-align:center;

}



.products p {

    color:var(--bck);

    text-align:center;

    margin-top:-20px;

}



.products div div {

    float:left;

}



.products div div h2 {

    color:var(--title);

    font-size:40pt;

}



.products div div p {

    color:var(--bck);

    font-size:10pt;

}



.products div div h3 {

    color:rgb(40,40,40);

    font-size:12pt;

    border:2px solid rgb(40,40,40);

    width:35%;

    padding:10px;

    text-align:center;

    transition:0.3s;

}



.products div .leftImg {

    width:65%;

    height:100%;

}



.products div .rightImg {

    width:65%;

    height:100%;

}



.products div .leftText {

    width:35%;

    height:100%;

}



.products div .leftText h2 {

    text-align:left;

    padding-right:60px;

    padding-left:55px;

}



.products div .leftText p {

    text-align:left;

    padding-right:60px;

    padding-left:55px;

}



.products div .leftText h3 {

    margin-left:55px;

    cursor:pointer;

}



.products div .rightText {

    width:35%;

    height:100%;

}



.products div .rightText h2 {

    text-align:right;

    padding-left:60px;

    padding-right:55px;

}



.products div .rightText p {

    text-align:right;

    padding-left:60px;

    padding-right:55px;

}



.products div .rightText h3 {

    margin-left:calc(65% - 75px);

    cursor:pointer;

}



.products .showcase1, .products .showcase2, .products .showcase3, .products .showcase4, .products .showcase5 {

    width:100%;

    height:500px;

    margin-bottom:50px;

}



.swiper {

    width:100%;

    height:100%;

    cursor:grab;

}



.swiper-slide {

    text-align:center;

    font-size:18px;

    display:flex;

    justify-content:center;

    align-items:center;

}



.swiper-slide img {

    width:95%;

}



.swiper-slide .swiper-text {

    position:absolute;

    top:0%;

    left:0;

    width:100%;

    height:100%;

    background:rgba(246,246,246,0.9);

    display:flex;

    justify-content:center;

    align-items:center;

    cursor:grab;

    opacity:0;

    z-index:4;

    transition:0.5s;

}



.swiper-slide .swiper-text:hover {

    opacity:1;

    transition:1s ease-out;

}



.swiper-slide .swiper-text .text {

    color:black;

    text-align:center;

}



.swiper-slide .swiper-text .text h2 {

    font-size:34pt;

    margin-top:-15px;

}



.swiper-slide .swiper-text .text p {

    padding:0px 50px 0px 50px;

    margin-top:-20px;

}



.findUs {

    position:absolute;

    top:calc(200% + 2800px);

    left:0;

    width:100%;

    height:60%;

    z-index:2;

}



.findUs .background {

    position:absolute;

    top:0;

    left:0;

    width:100%;

    height:100%;

    overflow:hidden;

    z-index:1;

}



.findUs .background img {

    width:100%;

    height:auto;

}



.findUs .infos {

    position:absolute;

    top:0;

    left:0;

    width:100%;

    height:100%;

    background:rgba(43, 43, 43, 0.5);

    z-index:3;

    display:flex;

    justify-content:center;

    align-items:center;

}



.findUs .infos .infosPanel {

    width:70%;

    height:60%;

    background:rgba(14, 14, 14, 0.7);

    border-radius:7px;

}



.findUs .infos .infosPanel div {

    height:100%;

    float:left;

}



.findUs .infos .infosPanel .left {

    width:50%;

    display:flex;

    justify-content:center;

    align-items:center;

}



.findUs .infos .infosPanel .left h2 {

    font-size:36pt;

    color:white;

    margin-left:50px;

}



.findUs .infos .infosPanel .right {

    width:50%;

}



.findUs .infos .infosPanel .right a {

    color:white;

    text-decoration:none;

}



.findUs .infos .infosPanel .right div {

    width:40%;

    height:80px;

    position:relative;

    top:calc(50% - 40px);

    background:white;

    border-radius:3px;

    text-align:center;

}



.findUs .infos .infosPanel .right div h3 {

    font-size:11pt;

    margin-top:18px;

}



.findUs .infos .infosPanel .right div h4 {

    margin-top:-10px;

}



.findUs .infos .infosPanel .right .contact {

    color:black;

    border:2px solid white;

    margin-right:10px;

}



.findUs .infos .infosPanel .right .place {

    background:transparent;

    color:white;

    border:2px solid white;

    margin-right:50px;

}



.partner::-webkit-scrollbar {

    display:none;

}



.partner {

    position:absolute;

    top:calc(260% + 2800px);

    left:0;

    width:100%;

    height:100%;

    z-index:2;

    overflow-y:scroll;

}



.partner h2 {

    color:var(--title);

    font-size:40pt;

    text-align:center;

}



.partner p {

    color:var(--bck);

    text-align:center;

    margin-top:-20px;

}



.partner img {

    width:15%;

    height:auto;

    display:inline;

    margin-top:15px;

    margin-left:calc(40% / 5);

}



.footer {

    position:absolute;

    top:calc(360% + 2800px);

    left:0;

    width:100%;

    height:75%;

    z-index:2;

    background:rgb(18,18,18);

}



.footer .upper {

    position:absolute;

    top:0;

    left:0;

    width:100%;

    height:50px;

    text-align:center;

    background:black;

}



.footer .upper a {

    color:white;

    text-decoration:none;

}



.footer .upper h3 {

    line-height:50%;

}



.footer .mid {

    position:absolute;

    top:50px;

    left:0;

    width:100%;

    height:calc(100% - 100px);

}



.footer .mid div {

    width:50%;

    height:60%;

    margin-top:30px;

    float:left;

}



.footer .mid div .content {

    width:90%;

    margin-left:5%;

    text-align:center;

}



.footer .mid div .content img {

    width:80%;

    margin-bottom:30px;

}



.footer .mid div .content p {

    color:white;

    text-align:left;

    padding-left:10%;

}



.footer .mid div .content a {

    color:white;

    text-decoration:none;

}



.footer .mid div .content h5 {

    font-size:12pt;

    text-align:right;

    padding-right:45px;

}



.footer .bottom {

    position:absolute;

    bottom:0;

    left:0;

    width:100%;

    height:50px;

    text-align:center;

    background:black;

}



.footer .bottom h4 {

    color:white;

    line-height:50%;

    text-align:left;

    padding-left:40px;

}