html,body{
    margin:0;
    padding:0;
    background-color:black;
    color: white;
}
body{
/*
        overflow: hidden;
        user-select: none;
        pointer-events: none;
*/
    }


#mobile_orientation{
    width: 100vw;
    height: 100vh;
    position: fixed;
    opacity: 0;
    user-select: none;
    pointer-events: none;
    background-color: black;
    z-index: 100;
    display: flex;
    padding-top: 15%;
    justify-content: center;
}

#mobile_orientation.aktiv{
    opacity: 1;
    user-select: auto;
    pointer-events: auto;
}

#mobile_orientation p{
    text-align: center;
    font-family: "roboto", bold;
}


/*FOKEP*//*FOKEP*//*FOKEP*//*FOKEP*//*FOKEP*//*FOKEP*//*FOKEP*//*FOKEP*//*FOKEP*//*FOKEP*//*FOKEP*/
#load_in{
    width: 100vw;
    height:100vh;
    background-color: black;
    opacity: 0.92;
    position: fixed;
    z-index: 50;
    transition: 1s  forwards;
    pointer-events: auto;
    user-select: auto;
    background-color: black;
    transition: opacity 1s  forwards;
}

#load_in_video{
    height: 100%;
    position: relative;
    /* Center the child element horizontally */
    left: 50%;
    opacity: 1;
    transform: translateX(-50%);
    transition: opacity 1s  forwards;
}

#load_in.off{
    opacity: 0;
    pointer-events: none;
    user-select: none;
    transition: opacity 1s  forwards;
}
#load_in_video.off{
    opacity: 0;
    pointer-events: none;
    user-select: none;
    transition: opacity 1s  forwards;
}

.videokeret{
    height:100vh;
    position: relative;
    opacity: 0;
    animation: videomegjelenes 1.5s forwards;
    animation-delay: 0s;
}

@keyframes videomegjelenes{
    0%{
        opacity: 0;
    }
    100%{
        opacity:  1;
    }
}
#main_video2{
    display: none;
}
#main_video{
    width:50%;
    position: fixed;
    left: 50%;
    transform: translateX(-50%);
    height: auto;
    animation: mainvideoanim 1s linear;
    animation-play-state: paused;
  /* Bind the animation to scroll */
  animation-delay: calc(var(--scroll) * -1s);
  /* These last 2 properites clean up overshoot weirdness */
  animation-iteration-count: 1;
  animation-fill-mode: both;
    display: block;
}

@keyframes mainvideoanim{
    0%{
        opacity: 1;
    }
    8%{
        opacity: 0.3;
    }
    75%{
        opacity: 0.3;
    }
    85%{
/*        transform: translateY(var(--body-height));*/
        opacity: 0;
    }
    100%{
        opacity: 0;
    }
}


#main-frame{
    width:100vw;
    height:100vh;
    position: relative;
    background-color: white !important;
}

#main_text{
    position: absolute;
    top:50%;
    left:7%;
    width:75%;
    height:15%;
    opacity: 0;
    animation: videomegjelenes 1s forwards;
    animation-delay: 1.4s;
}


@keyframes maintextanim{
    0%{
        transform: translateY(0);
    }
    100%{
        transform: translateY(-29000px);
    }
}
#main_text h1{
    font-family: cormol;
    color:white;
    text-transform: uppercase;
    font-size: 8vmax;
    letter-spacing: 2px;
    font-weight: 200;
    animation: maintextanim 1s ease-in;
    animation-play-state: paused;
  /* Bind the animation to scroll */
  animation-delay: calc(var(--scroll) * -1s);
  /* These last 2 properites clean up overshoot weirdness */
  animation-iteration-count: 1;
  animation-fill-mode: both;
}

#main_text span{
    font-family: 'academy' !important;
    font-weight: 200;
    font-size:150%;
    margin-right: -2%;
}
#main_text p{
    font-family: roboto;
    font-size:1.5vmax;
    padding-left: 1%;
    padding-right: 20%;
    color: #E3D1B1;
    margin-top: -11%;
    line-height: 180%;
    animation: maintextanim 1s ease-in;
    animation-play-state: paused;
  /* Bind the animation to scroll */
  animation-delay: calc(var(--scroll) * -0.7s);
  /* These last 2 properites clean up overshoot weirdness */
  animation-iteration-count: 1;
  animation-fill-mode: both;
}

#location{
    position:absolute;
    width:100px;
    top:65%;
    right:25%;
    opacity: 0;
    display: none;
}

#mobile{
    position:absolute;
    width:100px;
    top:65%;
    right:15%;
    opacity: 0;
}

@media only screen and (max-width:728px){
    *{
/*        border: 1px solid red;*/
    }
   
    #main-frame{
        width:100%;
        height:100%;
        position: relative;
    }
    
    .videokeret{
        width: 100vw;
        overflow: hidden !important;
    }
    
    #main_video{
        display:none;
    }
    
    #main_video2{
        width:110%;
        position: fixed;
        top: 5%;
        left: 50%;
        transform: translateY(-0%) translateX(-50%);
        animation: mainvideoanim 1s linear;
        animation-play-state: paused;
      /* Bind the animation to scroll */
      animation-delay: calc(var(--scroll) * -1s);
      /* These last 2 properites clean up overshoot weirdness */
      animation-iteration-count: 1;
      animation-fill-mode: both;
        display: block;
    }

    #main_text{
        position: absolute;
        top:65%;
        left:5%;
        width:90%;
        height:10%;
    }
    #main_text h1{
        color:#E3D1B1;
        text-transform: uppercase;
        font-size: 11vw;
        text-align: left;
        letter-spacing: 1px;
    }
    #main_text p{
        color: #987554;
        width: 100%;
        font-size: 4vw;
        padding-left: 2%;
        padding-right: 0;
    }

    #location{
        position:absolute;
        width:60px;
        top:60%;
        left:35%;
    }

    #mobile{
        position:absolute;
        width:60px;
        top:60%;
        left:10%;
    }
    
    .load-in{
        display:none;
    }
}

/*FOKEP VEGE*//*FOKEP VEGE*//*FOKEP VEGE*//*FOKEP VEGE*//*FOKEP VEGE*//*FOKEP VEGE*//*FOKEP VEGE*//*FOKEP VEGE*//*FOKEP VEGE*/

/*NEW SERVICE (DESKTOP)*//*NEW SERVICE (DESKTOP)*//*NEW SERVICE (DESKTOP)*//*NEW SERVICE (DESKTOP)*//*NEW SERVICE (DESKTOP)*/
#new_services{
    padding-top: 2%;
}
#new_services h2{
    font-family: cormo;
    font-size: 2.6vmax;
    color: #E5D3B3;
    text-transform: uppercase;
    position: relative;
    z-index: 10;
}
#new_services p{
    font-family: roboto;
    font-size: 1.5vmax;
    color: #987554;
    position: relative;
    z-index: 10;
}
#new_service1{
    display:grid;
    grid-template-columns: 50% 50%;
    grid-template-rows: 100%;
    overflow: hidden;
}

#new_service1_kep{
    position: relative;
    width: 100%;
    opacity: 0;
    transition: 0.2s ease-out;
    z-index: 15;
}
#new_service1_kep.active{
        opacity: 1;
        transition: 0.2s ease-out;
    }
#new_service1_kep img{
    position: relative;
    width:100%;
    z-index: 15;
}

.bal{
    border-radius: 0rem 2rem 2rem 0rem;
}
.jobb{
    border-radius: 2rem 0rem 0rem 2rem;
}
#new_service1_szoveg{
    position: relative;
    padding:10%;
    padding-right:20%;
    z-index: 10;
}

#new_service2_szoveg{
    position: relative;
    padding:10%;
    padding-left:20%;
     text-align: right;
    z-index: 10;
}
#new_service1_szoveg h2{
    transform: translateY(10vw) skewX(0deg);
    transition: 1s ease-out;
    position: relative;
    z-index: 10;
    opacity: 0;
}
#new_service1_szoveg h2.active{
    opacity: 1;
    transform: translateY(0) skewX(0deg);
    transition: 0.8s ease-out;
}
#new_service2_szoveg h2{
    opacity: 0;
    transform: translateY(10vw) skewX(0deg);
    transition: 0.8s ease-out;
    z-index: 10;
}
#new_service2_szoveg h2.active{
    opacity: 1;
    transform: translateY(0) skewX(0deg);
    transition: 0.8s ease-out;
}
#new_service1_szoveg p{
    opacity: 0;
    transform: translateY(10vw) skewX(0deg);
    transition: 0.5s ease-out;
    z-index: 10;
}
#new_service1_szoveg p.active{
    opacity: 1;
    transform: translateY(0) skewX(0deg);
    transition: 1s ease-out;
}
#new_service2_szoveg p{
    opacity: 0;
    transform: translateY(10vw) skewX(0deg);
    transition: 05s ease-out;
    z-index: 10;
}
#new_service2_szoveg p.active{
    opacity: 1;
    transform: translateY(0) skewX(0deg);
    transition: 1s ease-out;
}

@media only screen and (max-width:728px){
    #new_service1{
        display:grid;
        grid-template-columns: 100%;
        grid-template-rows: 50% 50%;
        grid-template-areas: 
        "kep"
        "szoveg";
    }
    
    #new_services h2{
        
    }
    
    #new_services p{
        font-size: 2vmax;
    }
    
    #new_services #new_service1:nth-child(2) #new_service1_szoveg {
        
    }
    
    #new_service2_szoveg{
        grid-area: szoveg;
    }
    
    #new_service1 #new_service1_kep:nth-of-type(2){
         grid-area: kep;
    }
    #new_service1_kep.active{
        opacity: 1;
        transition: 0.8s ease-out;
    }
}

/*SERVICES*//*SERVICES*//*SERVICES*//*SERVICES*//*SERVICES*//*SERVICES*//*SERVICES*//*SERVICES*//*SERVICES*//*SERVICES*//*SERVICES*/
#services_bigframe{
    position: relative;
    height: 100vh;
    width:100vw;
    align-items: center;
    justify-content: center;
    display: flex;
    align-items: center;
    justify-items: center;
    display: none;
}

#services_frame{
    width:60%;
    height:80%;
    display: none;
    grid-template-rows: 1fr 1fr 1fr;
    row-gap: 2vmin;
}

.services{
    display:grid;
    grid-template-columns: 1fr 4fr;
    border: 1px solid white;
    border-radius: 0vmin;
}

.service_img_frame{
    width:100%;
    height:100%;
    display: grid;
    align-items:center;
    justify-items:center;
}
.service_img{
    width:12vmin;
    
}

.service_text{
        align-items: center;
    padding-right: 50px;
}

.service_text h2{
    color: #E3D1B1;
    font-family: inter;
}

.service_text p{
    color: #987554;
    font-family: inter;
}
@media only screen and (max-width:1028px){
    #services_bigframe{
    display: none;
    }
    #services_frame{
        width:80%;
    }
    .service_text *{
/*        border: 1px solid red;*/
    }
    .service_text{
        height:100%;
        display: flex;
        align-items: center;
/*        border: 1px solid red;*/
    }
    
    .service_text h2{
        align-self: left;
    }
}
@media only screen and (max-width:728px){
    *{
        /*border:1px solid red;*/
    }
    #services_bigframe{
        position: relative;
        width:100%;
        height:70vh;
        align-items: center;
        justify-content: center;
        display: flex;
        align-items: center;
        justify-items: center;
        overflow: hidden;
        display: none;
/*        border:1px solid red;*/
    }

    #services_frame{
        width:70%;
        height:100%;
        display: flex;
        row-gap: 0vmin;
        margin-top:5vmin;
    }

    .services{
        display:grid;
        top:5%;
        grid-template-columns: 100%;
        grid-template-rows: 30% 70%;
        border: 1px solid white;
        border-radius: 3vmin;
        position: absolute;
        opacity: 0;
        transition: opacity 0.5s, transform 0.5s, width 0.5s;
        transform: translateX(0%) translateY(-50%);
        padding-top:5%;
        padding-bottom: 5%;
    }
    
    .services.active {
        width: 70%; /* Set to full width when active */
        opacity: 1;
        transform: translateX(0%);
        overflow:hidden;
    }
            
    .services.next {
        width: 70%;
        transform: translateX(100%);
        overflow:hidden;
    }
            
    .services.prev {
        width: 70%;
        transform: translateX(-100%);
        overflow:hidden;
    }    

    .service_img_frame{
        width:100%;
        height:100%;
        display: grid;
        align-items: center;
        justify-items: center;
    }
    .service_img{
        width:20vmin;
        margin-bottom:5%;
    }
    
    .service_text{
        align-items: center;
        margin-left:10%;
        width:80%;
    }
    .service_text h2{
        color: #E3D1B1;
        font-family: inter;
        font-size: 5vmin;
    }

    .service_text p{
        color: #987554;
        font-family: inter;
        font-size: 4vmin;
    }
    #fotovabb{
                position: absolute;
                top:50%;
                right:5%;
                transform: translateY(-50%);
                color: white;
                font-size: 7vmax;
                font-family: 'Roboto3',bold;
                cursor: pointer;
                width:40px;
                height:40px;
                z-index:25;
                background-color: white;
                opacity: 0;
                pointer-events: none;
                user-select: none;
            }
            #fovissza{
                position: absolute;
                top:50%;
                left: 5%;
                transform: translateY(-50%);
                color: white;
                font-size: 7vmax;
                font-family: 'Roboto3', bold;
                cursor: pointer;
                width:40px;
                height:40px;
                z-index:25;
                background-color: white;
                opacity: 0;
                pointer-events: none;
                user-select: none;
            }
}

/*SERVICES VEGE*//*SERVICES VEGE*//*SERVICES VEGE*//*SERVICES VEGE*//*SERVICES VEGE*//*SERVICES VEGE*//*SERVICES VEGE*//*SERVICES VEGE*/

#brand_frame{
    width: 100%;
    overflow: hidden;
    position: relative;
    height:20vw;
    margin-top:10vh;
    margin-bottom:5vh;
}

#brand_belt{
    position: absolute;
    width: 300vw;
    animation: belt_anim 18s linear infinite;
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr;
    will-change: transform;
}

.brand_img{
    margin:10%;
    width:80%;
}

@keyframes belt_anim{
    0% {
        transform: translate3d(0, 0, 0);
    }
    100% {
        transform: translate3d(-200vw, 0, 0);
    }
}


@media only screen and (max-width:728px){
    #brand_frame{
        width: 100%;
        height:30vh;
        margin-top:0vh;
        margin-bottom: 5vh;
    }

#brand_belt{
    width: 600vw;
    animation: belt_anim2 18s linear infinite;
    will-change: transform;
}

.brand_img{
    margin:10%;
    width:80%;
}

@keyframes belt_anim2{
    0% {
        transform: translate3d(0, 0, 0);
    }
    100% {
        transform: translate3d(-400vw, 0, 0);
    }
}
}

/*ROLUNK*//*ROLUNK*//*ROLUNK*//*ROLUNK*//*ROLUNK*//*ROLUNK*//*ROLUNK*//*ROLUNK*//*ROLUNK*//*ROLUNK*//*ROLUNK*//*ROLUNK*//*ROLUNK*/

#aboutus_frame{
    width:100%;
    height:80%;
    display: grid;
    grid-template-columns: 1fr 1fr;
    position: relative;
    z-index: 10;
}

#aboutus_img{
    display: flex;
    align-items: flex-start;
    justify-content: center;
    filter: brightness(90%);
    padding-top: 15%;
}

#aboutus_img img{
    width:100%;
    margin-top: -20px;
}

#aboutus_text{
    display: flex;
    justify-content: center;
    flex-direction: column;
    padding: 5%;
}

#aboutus_text h2{
    color: #E3D1B1;
    font-family: cormo;
    opacity: 0;
    transition: 1s ease-out;
    font-size: 2vmax;
}
#aboutus_text h2.active{
    opacity: 1;
    transition: 1s ease-out;
}
#aboutus_text p{
    color: #987554;
    font-family: roboto;
    opacity: 0;
    transition: 1s ease-out;
    font-size: 1.4vmax;
}
#aboutus_text p.active{
    opacity: 1;
    transition: 1s ease-out;
}

#counters_frame{
    display: grid;
    grid-template-columns: 25% 40% 35%;
    padding-right:10%;
    padding-top: 20px;
}

.counter{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}
#count1{
    font-family: roboto;
    font-size: 7vmin;
}
#count2{
    font-family: roboto;
    font-size: 7vmin;
}
#count3{
    font-family: roboto;
    font-size: 7vmin;
}

.counter h2{
    color: white !important;
    font-size: 3vmin !important;
    font-family: roboto !important;
}


@media only screen and (max-width:928px){
    
    #aboutus_frame{
        grid-template-columns: 100%;
        grid-template-rows: 40% 60%;
/*        border: 1px solid red;*/
        margin-top: -25vmin;
        height:auto;
    }
    
    #counters_frame{
        display: grid;
        grid-template-columns: 35% 35% 43%;
        padding-right:10%;
    }
    
    #aboutus_text h2{
        font-size: 2.4vmax;
    }
    #aboutus_text p{
        font-size: 2vmax;
    }
}




/*TERKEP*//*TERKEP*//*TERKEP*//*TERKEP*//*TERKEP*//*TERKEP*//*TERKEP*//*TERKEP*//*TERKEP*//*TERKEP*//*TERKEP*//*TERKEP*//*TERKEP*//*TERKEP*//*TERKEP*//*TERKEP*//*TERKEP*//*TERKEP*//*TERKEP*//*TERKEP*//*TERKEP*//*TERKEP*//*TERKEP*//*TERKEP*//*TERKEP*//*TERKEP*//*TERKEP*//*TERKEP*/

.mapouter{
    opacity: 0;
    transition: 1s;
    margin-top:8vmax;
}
.mapouter.active{
    opacity: 1;
    transition: 1s;
}

.mapouter iframe{
    filter:  
        hue-rotate(0deg) 
        contrast(100%)
        sepia(0%)
        brightness(70%);
}