html{
    scroll-behavior: smooth;
}
body{
    margin: 0;
    font-family: 'Montserrat', sans-serif;
    font-size: 16px;
    color: #172030;
}
body.mobil{
    overflow: hidden;
}
p{
    line-height: 25px;
}
a{
    text-decoration: none;
    color: #4CB1BB;
    overflow-wrap: break-word;
}
.header{
    background: url("img/header.jpg") center top no-repeat;
    background-size: cover;
    padding: 50px 10px 100px;
}
nav.desktop{
    display: flex;
    justify-content: space-evenly;
    align-items: center;
    margin: 0 0 160px;
    color:white;
}
.login-header nav.desktop{
    margin: 0 0 0px;
}
nav.desktop div{
    display: flex;
    align-items: center;
    gap: 50px;
}
nav.desktop .logo{
    width: 156px;
}
nav.desktop .main-menu{
    background: url("img/noise.png");
    background-size: 8%;
    display: flex;
    justify-content: space-evenly;
    align-items: center;
    gap: 25px;
    margin: 0;
    padding: 0 40px;
    list-style: none;
    border-radius: 50px;
    backdrop-filter: blur(10px);
}
nav.desktop .fiok{
    list-style: none;
    display: flex;
    align-items: center;
    gap: 20px;
}
nav.desktop .fiok > li {
    background: url(img/noise.png);
    background-size: 8%;
    padding: 0 30px;
    border-radius: 50px;
    backdrop-filter: blur(10px);
}

.frosted {
    background: url(img/noise.png);
    background-size: 8%;
    padding: 0 30px;
    border-radius: 50px;
    backdrop-filter: blur(10px);
}

nav.desktop .fiok a{
    display: flex;
    align-items: center;
    gap: 5px;
    padding: 20px 0;
}
nav.desktop .fiok .sub-menu {
    border-radius: 0 10px 10px 10px;
}
nav.desktop .sub-menu{
    display: none;
    background-image: url(img/noise.png);
    background-size: 8%;
    margin: 10px 0 0 0;
    padding: 10px 15px;
    list-style: none;
    border-radius: 0 0 10px 10px;
    backdrop-filter: blur(10px);
    position: absolute;
    top: 59px;
}
nav.desktop .sub-menu li a{
    font-size: 14px;
    font-weight: 500;
    padding: 10px 0;
}
nav.desktop .main-menu li:nth-child(2):hover .konyv.sub-menu{
    display:block;
}
nav.desktop .main-menu li:nth-child(4):hover .kedvezmenyek.sub-menu{
    display:block;
}
nav.desktop .fiok li:nth-child(2):hover .fiokom.sub-menu{
    display:block;
}

nav.desktop a{
    color:white;
    text-decoration: none;
    text-transform: uppercase;
    font-weight: 700;
    padding: 22px 0;
    display: block;
}


.fiok img {
    height: 23px;
}
.fiok .cart-count {
    position: absolute;
    top: -8px;
    right: 5px;
    background: red;
    border-radius: 50%;
    width: 25px;
    height: 25px;
    display: flex;
    justify-content: center;
}
.mobil-bar {
    visibility: hidden;
    position: fixed;
    top: 20px;
    right: 20px;
    width: 40px;
    background: none;
    padding: 5px;
    border: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 5px;
    z-index: 3;
    backdrop-filter: blur(20px);

}
.mobil-bar img{
    width: 25px;
}
nav.mobil {
    visibility: hidden;
    width: 100%;
    height: 100vh;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 2;
    padding: 40px;
    box-sizing: border-box;
    margin: 0;
    color: white;
    background: rgba(0, 0, 0, 0.3); /* Átlátszó háttér szükséges */
    background-image: url("img/noise.png");
    background-size: 8%;
    backdrop-filter: blur(0px);
    -webkit-backdrop-filter: blur(0px);
    opacity: 0;
    transition: 500ms ease-in-out;
}


nav.mobil.active {
    visibility: visible;
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
    opacity: 1;
}

nav.mobil .logo{
    width: 200px;
    margin: 0 0 30px;
}
nav.mobil ul{
    margin: 0;
    padding: 0 0 0 20px;
    list-style: none;
}
nav.mobil li{
    margin: 0 0 15px;
}
nav.mobil a{
    display: flex;
    gap: 10px;
    color:white;
    font-size: 24px;
    text-decoration: none;
    text-transform: uppercase;
    font-weight: 700;
}
nav.mobil .search{
    width: 23px;
}
nav.mobil .sub-menu {
    display: none;
    margin: 20px 0 0 0;
}
nav.mobil .sub-menu.visible {
    display: block;
}
nav.mobil .sub-menu a{
    font-size: 18px;
    font-weight: 500;
}

.header > div{
    max-width: 1200px;
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
}

.header > div > div{
    width: 50%;
}
.header h1{
    font-family: 'Kaushan Script', cursive;
    font-weight: normal;
    font-size: clamp(50px, 9vw, 96px);
    line-height: clamp(60px, 9vw, 117px);
    margin: 0;
    color:white;
}
.header p{
    color: white;
    font-size: 20px;
    opacity: 0.75;
    margin: 0 0 30px;
}
.cta{
    display: inline-flex;
    gap: 10px;
    align-items: center;
    background: #4CB1BB;
    color: white;
    text-transform: uppercase;
    font-size: 16px;
    font-weight: 700;
    margin: 0 0 10px;
    padding: 21px 33px;
    box-sizing: border-box;
    border-radius: 50px;
    text-decoration: none;
}
.cta img{
    width: 19px;
    filter: invert(1);
}
.video-cta{
    color:white;
    text-decoration: none;
    font-size: 16px;
    font-weight: 700;
    text-transform: uppercase;
    display: inline-flex;
    align-items: center;
    gap: 15px;
    margin: 0 0 0 15px;
}
.video-cta span{
    padding: 21px 20px 21px 24px;
    box-sizing: border-box;
    background: #E8A862;
    border-radius: 50%;
    display: inline-flex;
    justify-content: center;
    align-items: center;
}
.header .velemeny-icons{
    margin: 50px 0;
    display: flex;
    align-items: center;
    color:white;
    font-size: 20px;
}
.header .velemeny-icons .icons{
    width: 178px;
    margin: 0 12px 0 0;
}
.header .velemeny-icons .star{
    width: 20px;
    margin: 0 5px 0 0;
}
.header .velemeny-icons span{
    opacity: 0.75;
    font-size: 16px;
    align-self: flex-end;
}
.header .stat{
    display: flex;
    flex-wrap: wrap;
    color:white;
}
.header .stat div{
    padding: 0 20px;
}
.header .stat div:nth-child(-n+2){
    border-right: 1px solid rgba(255, 255, 255, 0.5);
}
.header .stat h4{
    font-size: clamp(28px, 5vw, 48px);
    font-weight: 700;
    margin: 0;
}
.header .stat p{
    opacity: 0.75;
    font-size: 20px;
    margin: 0;
}

.velemenyek{
    background:#4CB1BB;
    padding: 70px 10px;
    color: white;
}
.velemenyek > div{
    max-width: 1200px;
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-around;
    align-items: flex-start;
}
.velemenyek > div > div{
    width: 48%;
    margin: 0 0 30px;
    display: flex;
    align-items: flex-start;
    gap: 20px;
    position: relative;
}
.velemenyek .hero{
    max-width: 183px;
    border-radius: 50%;
    margin: 0 auto;
}
.velemenyek .aposztrof {
    position: absolute;
    right: 0;
    opacity: 35%;
}
.velemenyek .star5{
    margin: 0 0 10px;
}
.velemenyek p{
    font-style: italic;
    margin: 0;
}
.velemenyek cite{
    font-family: 'Kaushan Script', cursive;
    font-weight: normal;
    font-size: 32px;
    font-style: normal;
}
.about{
    background: #E4F5F6;
    padding: 70px 10px;
}
.about > div{
    max-width: 1200px;
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
}
.about .hero{
    width: 50%;
    display: block;
    margin: 0;
    max-width: 100%;
}
.about > div >div{
    width: 50%;
    max-width: 500px;
    margin: 0 auto;
    position: relative;
}
.about h3{
    font-family: 'Kaushan Script', cursive;
    font-size: clamp(40px, 7vw, 56px);
    font-weight: normal;
    margin: 0;
    position: relative;
}
.about p{
    font-style: italic;
    opacity: 0.75;
    margin: 0 0 30px;
}
.about .aposztrof {
    position: absolute;
    right: 0;
    opacity: 35%;
    width: 150px;
    z-index: 0;
}
.media{
    background: #A4D816;
    padding: 70px 10px;
    text-align: center;
    color: white;
    overflow-x: hidden;
}
.media h3{
    font-family: 'Kaushan Script', cursive;
    font-size: clamp(40px, 7vw, 56px);
    font-weight: normal;
    margin: 0 0 50px;
}
.media img{
    margin: 5px;
    max-width: 200px;
    display: block;
}
.media .slider{
    display: flex;
    align-items: center;
    gap: 100px;
    padding: 0 50px;
    animation: slide-down 40s linear infinite;
    width: max-content;
}
@keyframes slide-down {
    0% { transform: translateX(0); }
    100% { transform: translateX(-50%); }
}

.blog{
    background: url("img/blog-bg.jpg") center center no-repeat;
    background-size: cover;
    padding: 70px 10px;
}
.blog h3{
    font-family: 'Kaushan Script', cursive;
    font-size: clamp(40px, 7vw, 56px);
    font-weight: normal;
    margin: 0 0 60px;
    text-align: center;
}
.blog > div{
    max-width: 1200px;
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
}
.blog > div > div{
    width: 50%;
}
.first-post{
    position: relative;
    margin: 0 0 30px;
}
.first-post img{
    width: 100%;
    display: block;
    margin: 0 0 20px;
    border-radius: 25px;
}
.first-post .post-cat{
    background: white;
    border-radius: 50px;
    padding: 10px 15px;
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    right: 25px;
    top: 25px;
    font-weight: 700;
}
.first-post h4{
    font-family: 'Kaushan Script', cursive;
    font-size: 30px;
    font-weight: normal;
    margin: 0 0 20px;
}
.first-post p{
    opacity: 0.75;
}
.post-cta{
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.post-cta a{
    color:white;
    text-decoration: none;
    font-size: 16px;
    font-weight: 700;
    display: inline-flex;
    align-items: center;
    gap: 15px;
    color: #172030;
}
.post-cta a span{
    width: 60px;
    height: 60px;
    box-sizing: border-box;
    background: #A4D816;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
}
.post-cta a img{
    width: 18px;
    margin: 0;
}
.sidebar{
    padding: 0 0 0 20px;
    box-sizing: border-box;
}
.sidebar a {
    text-decoration: none;
    color: #172030;
    display: flex;
    align-items: flex-start;
    margin: 0 0 20px;
}
.sidebar img{
    width: 100%;
    max-width: 180px;
    border-radius: 10px;
    margin: 0 20px 0 0;
}
.sidebar h5{
    font-size: 20px;
    font-weight: 500;
    margin: 0 0 5px;
}
.sidebar .sidebar-cat{
    background: #F08B52;
    border-radius: 50px;
    padding: 5px 12px;
    font-size: 12px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    right: 25px;
    top: 25px;
    font-weight: 700;
    color: white;
}
.sidebar p {
    margin: 0;
}
.subscribe{
    background: #F08B52;
    padding: 70px 10px;
    color: white;
}
.subscribe > div{
    max-width: 1200px;
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
}
.subscribe > div div:first-child{
    width: 60%;
}
.subscribe > div div:last-child{
    width: 40%;
    text-align: right;
}
.subscribe h3{
    font-family: 'Kaushan Script', cursive;
    font-size: clamp(40px, 7vw, 56px);
    font-weight: normal;
    margin: 0;
}
.subscribe p{
    max-width: 600px;
    opacity: 0.75;
}
.subscribe a{
    display: inline-flex;
    gap: 10px;
    align-items: center;
    background: white;
    color: #F08B52;
    text-transform: uppercase;
    font-size: 16px;
    font-weight: 700;
    padding: 21px 33px;
    box-sizing: border-box;
    border-radius: 50px;
    text-decoration: none;
}
.subscribe a img{
    width: 18px;
}

.partner{
    background: #4CB1BB;
    padding: 70px 10px;
    text-align: center;
    color: white;
}
.partner h3{
    font-family: 'Kaushan Script', cursive;
    font-size: clamp(40px, 7vw, 56px);
    font-weight: normal;
    margin: 0 0 50px;
}
.partner > div > div{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-evenly;
    margin: 0 auto;
}
.partner img{
    max-height: 82px;
    max-width: 100%;
}

footer{
    background: linear-gradient(100deg, #050505, #1C2A43);
    padding: 70px 10px 10px;
}
footer > div{
    max-width: 1200px;
    margin: 0 auto;
}
footer .logos{
    display: flex;
    align-items: center;
    margin: 0 0 70px;
}
footer .logo{
    max-width: 200px;
    padding: 0 50px 0 0;
    margin: 0 50px 0 0;
    border-right: 1px solid rgba(255, 255, 255, 0.5);
}
footer .logo img{
    width: 100%;
}
footer .socials{
    display: flex;
    gap: 20px;
}
footer .links{
    display: flex;
    flex-wrap: wrap;
    color:white;
    margin: 0 0 70px;
}
footer .links div{
    width: 25%;
    margin: 0 0 20px;
}
footer .links h6{
    font-size: 20px;
    font-weight: 700;
    margin: 0 0 30px;
}
footer .links ul{
    list-style: none;
    padding: 0;
    font-size: 16px;
    font-weight: 500;
    opacity: 0.75;
}
footer .links li{
    margin: 0 0 20px;
}
footer .links a{
    text-decoration: none;
    color: white;
}
footer .copyright{
    text-align: center;
    color: white;
    opacity: 0.4;
    font-size: 12px;
}


.login-header{
    background: url("img/konyha-header.jpg") center top no-repeat;
    background-size: cover;
    position: relative;
}

.page-header{
    background: url("img/konyha-header.jpg") center top no-repeat;
    background-size: cover;
    padding: 50px 0 100px;
    position: relative;
}
.page-header .title{
    text-align: center;
    color: white;
 }
.page-header h1{
    font-family: 'Kaushan Script', cursive;
    font-weight: normal;
    font-size: clamp(40px, 9vw, 96px);
    line-height: clamp(50px, 9vw, 117px);
    color:white;
    margin: 0 0 30px;
}
.page-header p{
    font-size: 20px;
}

/***** KONYHA *****/
.order-info{
    background: rgba(76, 177, 187, 0.1);
    padding: 100px 10px;
}
.order-info > div{
    max-width: 1200px;
    margin: 0 auto;
    background: white;
    border-radius: 20px;
    padding: 40px;
    box-sizing: border-box;
}
.order-info button{
    background: white;
    display: inline-flex;
    gap: 10px;
    align-items: center;
    color: #F2C331;
    border: none;
    text-transform: uppercase;
    font-size: 16px;
    font-weight: 700;
    padding: 21px 33px;
    margin:0;
    box-sizing: border-box;
    border-radius: 50px;
    cursor: pointer;
    transition: 200ms ease-in-out;
}
.order-info button.active{
    background: #F2C331;
    color: white;
}
.order-info .info-block{
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: space-between;
    margin: 50px 0 0;
}
.order-info .info-block > div{
    display: none;
    width: 50%;
}
.order-info .info-block > div.active{
    display: block;
}
.order-info .info-block .hero {
    width: 45%;
    display: block;
    background: rgba(242, 195, 49, 0.1);
    border-radius: 15px;
    padding: 0 21px;
    box-sizing: border-box;
}
.order-info .info-block .hero img{
    width: 115px;
    display: block;
    margin:0 auto;
    transform: scale(2.3);
    transform-origin: bottom;
}
.order-info .info-block h4{
    font-family: 'Kaushan Script', cursive;
    font-size: 32px;
    font-weight: normal;
    margin: 0 0 10px;
}
.order-info .info-block p{
    font-style: italic;
    margin: 0;
    opacity: 0.75;
    line-height: 25px;
}
#adomany img {
    width: 100px;
    display: block;
    margin: 0 auto;
}

.menu{
    background: rgba(76, 177, 187, 0.1);
    padding: 100px 10px;
}
.menu > div{
    max-width: 1200px;
    margin: 0 auto;
}
.menu .week{
    display: flex;
    gap: 20px;
    margin: 0 0 20px;
}
.menu .week button{
    background: transparent;
    border: 2px solid #A4D816;
    border-radius: 15px;
    padding: 18px 56px;
    color: #A4D816;
    font-family: 'Montserrat', sans-serif;
    font-size: 20px;
    font-weight: 700;
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
    transition: 200ms ease-in-out;
}
.menu .week button.active{
    background: #A4D816;
    color: white;
}
.menu .menu-title {
    margin: 0 0 12px;
    border-radius: 15px;
}
.menu .title{
    min-height: 63px;
    
    border-radius: 15px;
    padding: 0 20px;
    display: flex;
    justify-content: center;
    flex-direction: column;
    color:white;
    text-transform: uppercase;
}
.menu .title h3{
    font-size: 20px;
    font-weight: 700;
    margin:0;
}
.menu .title span{
    font-size: 16px;
    font-weight: 400;
}
.menu .title p{
    margin:0;
}

.menu .menu-sor {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-start;
}
.menu .menu-card {
    width: 19.5%;
    background: white;
    border-radius: 30px;
    padding: 30px;
    box-sizing: border-box;
    margin: 0 0 20px;
    box-shadow: 0 33px 44px -8px rgba(0,0,0,0.15);
}
.menu .menu-card .menu-img {
    width: 100%;
    margin: -70px 0 0;
}
.menu .menu-day {
    font-size: 16px;
    text-transform: uppercase;
    font-weight: 700;
    color: #4CB1BB;
}
.menu .menu-card-title{
    min-height: 88px;
}
.menu .menu-card-title h5 {
    margin: 0;
    font-size: 14px;
}
.menu .menu-card-title p {
    margin: 0;
    font-size: 12px;
    line-height: normal;
}
.menu .menu-info{
    margin: 0 0 20px;
}
.menu .menu-info img{
    width: 15px;
}
.menu .menu-btn {
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.menu .menu-qty{
    display: flex;
    justify-content: center;
    align-items: center;
    background: #4CB1BB;
    width: 80px;
    height: 30px;
    border-radius: 50px;
    box-shadow: 0 12px 17px -11px #4CB1BB;
}
.menu .menu-qty button{
    width: 40%;
    text-align: center;
    color: white;
    border: none;
    background: none;
    font-family: 'Montserrat', sans-serif;
    padding: 0;
    cursor: pointer;
    appearance: none;
    -webkit-appearance: none;
}
.menu .menu-qty button.minus-btn img{
    transform: rotate(180deg);
}
.menu .menu-qty input {
    width: 15%;
    text-align: center;
    font-family: 'Montserrat', sans-serif;
    font-size: 16px;
    font-weight: 700;
    background: none;
    border: none;
    padding: 0;
    outline: 0;
    color: white;
}
.menu .menu-price{
    font-size: 20px;
    font-weight: 700;
}
.fizetes{
    background: rgba(76, 177, 187, 0.1);
    padding: 0 10px 70px;
    text-align: center;
}
.fizetes h3{
    font-family: 'Kaushan Script', cursive;
    font-size: clamp(40px, 7vw, 56px);
    font-weight: normal;
    margin: 0 0 20px;
}
.fizetes img{
    width: 100%;
    max-width: 677px;
}
.app{
    background: rgba(76, 177, 187, 0.1);
    padding: 0 10px 70px;
    text-align: center;
}
.app h3{
    font-family: 'Kaushan Script', cursive;
    font-size: clamp(40px, 7vw, 56px);
    font-weight: normal;
    margin: 0;
}
.app p{
    opacity: 0.75;
}
.app img{
    max-width: 110px;
}
@media (max-width: 1350px){
    nav.desktop a,
    nav.desktop .sub-menu li a{
        font-size: 12px;
    }
    nav.desktop ul {
        gap: 20px;
        padding: 15px 30px;
    }
    nav.desktop .fiok a {
        padding: 15px 25px;
    }
    nav.desktop .sub-menu {
        top: 54px;
    }
}
@media (max-width: 1150px) {
    p {
        line-height: 22px;
    }
    nav.desktop{
        display: none;
    }
    .mobil-bar{
        visibility: visible;
    }
    .header {
        background: url(img/header.jpg) 38% no-repeat;
        background-size: cover;
    }
    .header p {
        font-size: 16px;
    }
    .video-cta{
        margin: 0;
    }
    .header > div > div {
        width: 100%;
    }
    .header .stat p{
        font-size: 16px;
    }
    .velemenyek > div > div {
        width: 100%;
        flex-wrap: wrap;
    }
    .about .hero {
        width: 80%;
    }
    .about > div >div {
        width: 100%;
    }
    .blog > div > div {
        width: 100%;
    }
    .sidebar {
        padding: 0;
    }
    .sidebar h5 {
        font-size: 14px;
    }
    .sidebar img {
        max-width: 35%;
    }
    .subscribe > div div:first-child,
    .subscribe > div div:last-child{
        width: 100%;
    }
    footer .links div {
        width: 100%;
    }

    /******* KONYHA *******/
    .order-info {
        padding: 10px;
    }
    .order-info .info-block > div {
        width: 100%;
        margin: 0 0 220px;
    }
    .order-info .info-block .hero {
        width: 100%;
        margin: 0;
    }
    .order-info button {
        border: 2px solid;
        font-size: 14px;
        font-weight: 500;
        padding: 10px 20px;
        margin: 0 0 5px;
    }
    .menu .title {
        min-height: 85px;
    }
    .menu .menu-sor {
        display: flex;
        flex-wrap: nowrap;
        overflow-x: auto;
        gap: 20px;
        scrollbar-width: none;
    }
    .menu .menu-card {
        min-width: 230px;
        margin: 40px 0 20px;
        box-shadow: none;
    }
    .menu .week button {
        padding: 18px;
    }
    .menu .menu-title {
        margin: 0 0 20px;
    }
}


.page{
    margin: 0 0 100px;
}
.page:after{
    content: "";
    background: url(img/header-vector.svg) no-repeat;
    background-size: 100%;
    width: 100%;
    height: 135px;
    position: absolute;
    bottom: -1px;
    background-position-y: bottom;
}
/******** KAPCSOLAT *******/
.contact {
    text-align: center;
}
.contact > div{
    max-width: 800px;
    margin: 0 auto 200px;
}
.contact h2{
    font-family: 'Kaushan Script', cursive;
    font-weight: normal;
    font-size: 50px;
    margin: 0 0 30px;
}

/******** AJÁNLOTT TÁPLÁLÉLKIEGÉSZÍTŐK *******/
.tapkieg{
    padding: 50px 10px;
}
.tapkieg > div{
    max-width: 1200px;
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-evenly;
    align-items: flex-start;
}
.tapkieg > div > div{
    width: 31%;
    min-width: 300px;
}
.tapkieg img{
    width: 100%;
    display: block;
    margin: 0 0 20px;
    border-radius: 10px;
}
.tapkieg h3{
    font-family: 'Kaushan Script', cursive;
    font-weight: normal;
    font-size: 26px;
    margin: 0 0 20px;
    color: #172030;
}
.tapkieg p{
    color: #172030;
    opacity: 0.75;
}

/******** PARTNEREK *******/
.partnerek{
    padding: 50px 10px;
}
.partnerek > div{
    max-width: 1200px;
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-start;
}
.partnerek > div > div{
    width: 24%;
    min-width: 250px;
}
.partnerek img{
    display: block;
    margin:0 auto;
}
.partnerek .partner-name{
    text-align: center;
    font-size: 20px;
    font-weight: 700;
}

/******** VEGZETTSÉGEIM *******/
.vegzettseg{
    padding: 50px 10px;
}
.vegzettseg > div{
    max-width: 1200px;
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-evenly;
    align-items: flex-start;
}
.vegzettseg > div > div{
    width: 31%;
    min-width: 300px;
}
.vegzettseg img{
    width: 100%;
    display: block;
    margin:0 auto;
}

/******** SZEREPLESEK *******/
.szereplesek{
    padding: 50px 10px;
}
.szereplesek > div{
    max-width: 1200px;
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-evenly;
    align-items: flex-start;
}
.szereplesek > div a{
    display: block;
    width: 31%;
    min-width: 300px;
    margin: 0 0 50px;
}
.szereplesek img{
    width: 100%;
    display: block;
    margin:0 auto;
    height: 210px;
    object-fit: cover;
}

/******** ORVOSOK *******/
.orvosok{
    padding: 50px 10px;
}
.orvosok > div{
    max-width: 1024px;
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-evenly;
}
.orvosok > div > div{
    width: 31%;
    min-width: 300px;
    background: #4CB1BB;
    border-radius: 10px;
    color: white;
    margin: 0 0 20px;
    padding: 30px;
    box-sizing: border-box;
}
.orvosok h3{
    margin: 0 0 20px;
    font-size: 22px;
}
.orvosok a{
    color: white;
}

/******** ROLAM *******/
.rolam{
    padding: 50px 10px;
}
.rolam > div{
    max-width: 1024px;
    margin: 0 auto;
}
.rolam img{
    width: 50%;
    border-radius: 10px;
    float: right;
    margin: 0 0 0 10px;
}

/******** KISOKOS *******/
.kisokos{
    padding: 50px 10px;
}
.kisokos > div{
    max-width: 800px;
    margin: 0 auto;
}

/********** GYIK **********/
.gyik{
    padding: 0 10px;
}
.gyik > div{
    max-width: 1200px;
    margin: 0 auto;
    border-radius: 20px;
    padding: 40px;
    box-sizing: border-box;
}
.gyik button{
    background: transparent;
    display: inline-flex;
    gap: 10px;
    align-items: center;
    color: #F2C331;
    border: none;
    text-transform: uppercase;
    font-size: 16px;
    font-weight: 700;
    padding: 21px 25px;
    margin:0;
    box-sizing: border-box;
    border-radius: 50px;
    cursor: pointer;
    transition: 200ms ease-in-out;
}
.gyik button.active{
    background: #F2C331;
    color: white;
}
.gyik .info-block{
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: space-between;
    margin: 50px 0 0;
}
.gyik .info-block > div{
    display: none;
    width: 50%;
}
.gyik .info-block > div.active{
    display: block;
}
.gyik .info-block .hero {
    width: 45%;
    display: block;
    background: rgba(242, 195, 49, 0.1);
    border-radius: 15px;
    padding: 0 21px;
    box-sizing: border-box;
}
.gyik .info-block .hero img{
    width: 200px;
    display: block;
    margin: 40px auto 0;
    transform: scale(1.3);
    transform-origin: bottom;
}
.gyik .info-block h4{
    font-family: 'Kaushan Script', cursive;
    font-size: 32px;
    font-weight: normal;
    margin: 0 0 10px;
}
.gyik .info-block h5{
    font-size: 22px;
    margin: 0 0 10px;
}
.gyik .info-block p{
    font-style: italic;
    margin: 0 0 20px;
    opacity: 0.75;
    line-height: 25px;
}
@media (max-width: 500px){
.gyik {
    padding: 10px;
}
.gyik .info-block > div {
    width: 100%;
    margin: 0 0 20px;
}
.gyik .info-block .hero {
    width: 100%;
    margin: 0;
}
.gyik button {
    border: 2px solid;
    font-size: 14px;
    font-weight: 500;
    padding: 10px 20px;
    margin: 0 0 5px;
}
}

/************ RENDELÉSEK *********/
.rendelesek .menu-sor{
    justify-content: flex-start !important;
    gap: 10px;
}
.rendelesek .title{
    min-height: 63px;
    background: #4CB1BB;
    border-radius: 15px;
    padding: 0 20px;
    display: flex;
    align-items: center;
    gap: 30px;
    color:white;
    text-transform: uppercase;
}
.rendelesek .menu-qty{
    color: white !important;
    font-weight: 700;
}
.rendelesek .title button{
    background: white;
    border-radius: 50px;
    padding: 5px 10px;
    color: #4CB1BB;
    border: none;
    height: 30px;
    font-size: 16px;
    font-weight: 500;
    cursor: pointer;
}
.rendelesek .menu-card button{
    background: #4CB1BB;
    border-radius: 50px;
    padding: 5px 10px;
    display: block;
    margin: 25px auto 0;
    color: white;
    border: none;
    height: 25px;
    font-size: 14px;
    font-weight: 500;
    cursor: pointer;
    box-shadow: 0 10px 17px -10px #4CB1BB;
}

.profil {
    padding: 20px 10px 100px;
}
.profil > div{
    max-width: 1200px;
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
}
.profil > div > div,
.profil form{
    width: 50%;
}
.profil h3{
    font-size: 50px;
    margin: 0 0 10px;
}
.profil h5{
    font-size: 18px;
    text-transform: uppercase;
    opacity: 0.5;
    margin: 0 0 10px;
}
.profil form{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.profil form > div:not(:last-child){
    width: 48%;
}
.profil form > div > div{
    margin: 0 0 20px;
}
.profil form label{
    display: block;
    margin: 0 0 10px;
    font-weight: 500;
}
.profil form input{
    width: 100%;
    height: 40px;
    border-radius: 10px;
    border: 1px solid #666;
    padding: 0 10px;
    box-sizing: border-box;
}
.profil #profil-save {
    background: #4CB1BB;
    border: 0;
    padding: 18px 30px;
    box-sizing: border-box;
    color: white;
    font-size: 16px;
    font-weight: 700;
    text-transform: uppercase;
    border-radius: 50px;
}
.profil #profil-delete {
    background: #F08B52;
    border: 0;
    padding: 18px 30px;
    box-sizing: border-box;
    color: white;
    font-size: 16px;
    font-weight: 700;
    text-transform: uppercase;
    border-radius: 50px;
}
@media (max-width: 500px){
    .profil > div > div,
    .profil form{
        width: 100%;
    }
    .profil h3{
        font-size: 40px;
    }
    .profil form > div{
        width: 49%;
    }
}

/********** GYIK **********/
.cart{
    padding: 0 10px;
}
.cart > div{
    max-width: 1200px;
    margin: 0 auto;
    border-radius: 20px;
    padding: 40px;
    box-sizing: border-box;
}
.cart button{
    background: transparent;
    display: inline-flex;
    gap: 10px;
    align-items: center;
    color: #F2C331;
    border: none;
    text-transform: uppercase;
    font-size: 16px;
    font-weight: 700;
    padding: 21px 25px;
    margin:0;
    box-sizing: border-box;
    border-radius: 50px;
    cursor: pointer;
    transition: 200ms ease-in-out;
}
.cart button.active{
    background: #F2C331;
    color: white;
}
.cart .info-block{
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: space-between;
    margin: 50px 0 0;
}
.cart .info-block > div{
    display: block;
    width: 100%;
}
.cart .info-block h4{
    font-family: 'Kaushan Script', cursive;
    font-size: 32px;
    font-weight: normal;
    margin: 0 0 10px;
}
.cart .info-block h5{
    font-size: 22px;
    margin: 0 0 10px;
}
.cart .info-block p{
    margin: 0 0 20px;
    opacity: 0.75;
}
#cart .tetelek{
    border: 1px solid #ccc;
    border-radius: 5px;
    margin: 0 -20px 20px 0;
}
#cart .title {
    display: flex;
    background: #eee;
    font-size: 12px;
    font-weight: 600;
    text-transform: uppercase;
    color: #777;
    padding: 30px;
    box-sizing: border-box;
}
#cart .title div,
#cart .tetel div{
    width: 15%;
}
#cart .title div:first-child,
#cart .tetel div:first-child{
    width: 40%;
}
#cart .tetel {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    font-size: 14px;
    font-weight: 600;
    color: #333;
    padding: 30px;
    box-sizing: border-box;
}
#cart .tetel:not(:last-child) {
    border-bottom: 1px solid #ccc;
}
#cart .delete {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 5px;
    color: #333;
    border: 1px solid;
    width: 100%;
    padding: 20px 20px;
    box-sizing: border-box;
    text-transform: uppercase;
    border-radius: 50px;
    cursor: pointer;
    transition: 200ms ease-in-out;
}
#cart .delete img {
    width: 14px;
    transition: 200ms ease-in-out;
}
#cart .delete:hover {
    color:white;
    background: #333;
}
#cart .delete:hover img {
    filter:invert(1);
}
#cart .total {
    text-align: right;
    font-size: 20px;
    font-weight: 600;
    color: #333;
}
#cart .total span{
    font-size: 28px;
    font-weight: 700;
}
#ship-bill > div{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
#ship-bill > div > div{
    width: 49%;
}
#ship-bill label{
    display: block;
    margin: 0 0 10px;
    font-weight: 500;
}
#ship-bill input[type="text"],
#ship-bill select{
    width: 100%;
    height: 40px;
    border-radius: 10px;
    border: 1px solid #666;
    padding: 0 10px;
    box-sizing: border-box;
}
#pay > div {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
#pay > div > div{
    width: 49%;
}
#pay label{
    display: block;
    margin: 0 0 10px;
    font-weight: 500;
}
#pay select{
    height: 40px;
    border-radius: 10px;
    border: 1px solid #666;
    padding: 0 10px;
    box-sizing: border-box;
}
#pay textarea{
    width: 100%;
    border-radius: 10px;
    border: 1px solid #666;
    margin: 0 0 20px;
    padding: 0 10px;
    box-sizing: border-box;
}
#pay .cards{
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}
#pay .cards img{
    width: 30%;
}
#pay button {
    color: white;
    background: #4CB1BB;
    margin: 30px 0 0;
    padding: 20px 40px;
    box-sizing: border-box;
    text-transform: uppercase;
    border-radius: 50px;
    cursor: pointer;
}

@media (max-width: 500px){
.cart {
    padding: 10px;
}
.cart .info-block > div {
    margin: 0 0 20px;
}
#cart .title {
    display: none;
}
#cart .tetelek .tetel div{
    width: 45%;
    margin: 0 0 20px;
}
#cart .tetelek .tetel div:before{
    content: attr(data-title);
    display: block;
    margin-bottom: 10px;
    font-size: 20px;
}
#cart .tetel {
    padding: 12px;
}
.cart button {
    border: 2px solid;
    font-size: 14px;
    font-weight: 500;
    padding: 10px 20px;
    margin: 0 0 5px;
}
.cart > div {
    padding: 0;
}
#ship-bill > div > div {
    width: 100%;
}
#pay > div > div {
    width: 100%;
}
}

/* LOGIN PAGE STYLES */
.login-page {
    min-height: 80vh;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 60px 10px;
}
.login-container {
    width: 100%;
    max-width: 420px;
    margin: 0 auto;
    display: flex;
    align-items: center;
    justify-content: center;
}
.login-box {

    border-radius: 30px;
    box-shadow: 0 12px 44px -8px rgba(76,177,187,0.15);
    padding: 40px 35px 30px 35px;
    width: 100%;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    align-items: stretch;
}
.login-title {
    font-family: 'Kaushan Script', cursive;
    font-size: 36px;
    color: white;
    text-align: center;
    margin-bottom: 30px;
    font-weight: normal;
}
.form-group {
    margin-bottom: 18px;
}
.login-box label {
    font-weight: 600;
    color: white;
    margin-bottom: 6px;
    display: block;
}
.login-box input[type="text"],
.login-box input[type="email"],
.login-box input[type="password"] {
    width: 100%;
    padding: 14px 16px;
    border-radius: 12px;
    border: 1px solid #E4F5F6;
    background: #F8FCFC;
    font-size: 16px;
    margin-top: 4px;
    margin-bottom: 2px;
    box-sizing: border-box;
    transition: border 0.2s;
}
.login-box input[type="text"]:focus,
.login-box input[type="email"]:focus,
.login-box input[type="password"]:focus {
    border: 1.5px solid #4CB1BB;
    outline: none;
}
.login-btn {
    width: auto;
    min-width: 140px;
    justify-content: center;
    font-size: 18px;
    /* padding: 16px 0; */
    border: none;
    cursor: pointer;
    margin-left: 20px;
}
.forgot-link {
    color: white;
    text-decoration: underline;
    font-size: 15px;
    opacity: 0.85;
    transition: color 0.2s;
}
.forgot-link:hover {
    color: #A4D816;
}
.remember-me label, .remember-me span {
    font-size: 15px;
    color: white;
    font-weight: 500;
}
@media (max-width: 600px) {
    .login-container {
        max-width: 98vw;
    }
    .login-box {
        padding: 25px 10px 20px 10px;
    }
    .login-title {
        font-size: 28px;
    }
}
