/*GENERAL*/

body { background: #EDEAE2; }
.font--content { font-family: 'Libre Franklin', sans-serif; }
.font--heading { font-family: 'Roboto Condensed', sans-serif; }

.size--14 { font-size: 14px; line-height: 17px; }
.size--14 { font-size: 16px; line-height: 19px; }
.size--18 { font-size: 18px; line-height: 21px; }
.size--24 { font-size: 24px; line-height: 28px; }
.size--30 { font-size: 30px; line-height: 35px; }
.size--36 { font-size: 36px; line-height: 42px; }

.text--uppercase { text-transform: uppercase; }
.text--center { text-align: center; }

.weight--bold { font-weight: 700; }

.small-container { max-width: 540px; }
.center-cotnainer { margin: 0 auto; }

.spacing { letter-spacing: .05em; }

/*main.front { margin-top: -185px; }*/

@media (max-width: 992px) {
    main.front { margin-top: -50px; }
}

@media (max-width: 768px) {
    main.front { margin-top: 0; }
}

@media (max-width: 500px) {
    .small-container { max-width: 300px; }
}

/*GENERAL*/

/*HEADER*/

.header { padding: 0 100px; position: relative; z-index: 2; background: #fff; width: 100%; height: 100px;
    filter: drop-shadow(0px 5px 5px rgba(0, 0, 0, 0.15)); transition: .3s; }
.header__container { display: flex; height: 100%; }
.header.scroll { position: fixed; top: 0; background: #fff; height: 60px; transition: .3s; }
.header.scroll .header__container { justify-content: space-between; align-items: center; height: 100%; transition: .3s }
.header.scroll #nav-icon span { background: #000; transition: .3s }
.header.scroll #nav-icon.open span { background: #000; transition: .3s }
.header.scroll #block-phone { margin-left: 0; font-size: 36px; line-height: 42px; transition: .3s; color: #fff;
    align-items: center; }
.header.scroll #block-phone svg { width: 30px; height: 30px; margin-right: 15px; }
.header.scroll #block-phone path { fill: #fff; }
.header.scroll #block-phone circle { stroke: #fff; }
.header.scroll #block-phone a { margin-top: -4px; }
.header.scroll #block-menu { margin-left: 0; transition: .3s }
/*.header.scroll .branding__img { display: none; }*/

.branding { display: none; }
.branding__img { height: 185px; width: auto; }

@media (max-width: 1020px) {
    .header { padding: 0 20px; }
}

@media (max-width: 768px) {
    .node-2 .branding:not(.mobile) { display: none; }
    .node-2 .branding.mobile { display: flex; justify-content: center; margin: 50px 0; }

    .branding { display: block; }
}

#block-phone {font-size: 36px; font-weight: 700; line-height: 42px; letter-spacing: 0.05em; bottom: 50px; right: 50px;
    position: fixed; z-index: 11; }
#block-phone > a { margin-top: -8px; color: #fff; background: #1d1d1d; border-radius: 50px; display: flex; z-index: 1;
    justify-content: center; align-items: center; padding: 10px 20px; transition: .3s; }
#block-phone > a:hover { opacity: .7; transition: .3s; }
#block-phone > a img { margin-right: 10px; width: 32px; height: auto; }
#block-phone > img { margin: 0 0 10px auto; display: block; }
#block-phone svg { margin-right: 15px; margin-top: -2px; width: 30px; height: 30px; }

.phone__social { margin: 5px; justify-content: center; display: none; }
.phone__social a { margin: 0 10px; display: inline-block; transition: .3s; }
.phone__social img { transition: .3s; width: 40px; height: auto; }
.phone__social a:hover img { opacity: .8; transition: .3s; }

@media (max-width: 768px) {
    .phone__social { display: flex; }
}

@media (max-width: 380px) {
    #block-phone { right: 20px; }
}

@media (max-width: 360px) {
    #block-phone { font-size: 30px; }
}

#block-menu { width: 100%; }

.menu__lvl-0 { display: flex; justify-content: space-between; align-items: center; padding: 0; width: 100%; margin: 0;
    height: 100%; z-index: 10; }
.menu__item { display: block; }
.menu__link { font-size: 24px; font-weight: 300; text-transform: uppercase; padding: 15px 0; display: block;
    transition: .3s; font-family: "Roboto Condensed", sans-serif; }
.menu__link:hover,
.menu__link.is-active { opacity: .7; transition: .3s; }
.menu__link--logo { padding: 0; }
.menu__link--logo img { max-height: 90px; width: auto; transition: .3s; }
.scroll .menu__link--logo img { max-height: 50px; width: auto; transition: .3s; }
.menu__link.small { font-size: 18px; }
.menu__item.small-container { display: flex; align-items: center; }
.menu__item.small-container img { margin-left: 10px; }
.menu__link:hover { opacity: .7; transition: .3s; }

#nav-icon { width: 40px; height: 25px; position: relative; cursor: pointer; display: none; transform: rotate(0deg);
    transition: .5s ease-in-out; z-index: 10; }
#nav-icon span { display: block; position: absolute; height: 4px; width: 100%; background: #1E1E1C; opacity: 1;
    transform: rotate(0deg); transition: .25s ease-in-out; left: 0;}
#nav-icon.open span { background: #1E1E1C; }
#nav-icon span:nth-child(1) { top: 0; }
#nav-icon span:nth-child(2),
#nav-icon span:nth-child(3) { top: 10px; }
#nav-icon span:nth-child(4) { top: 20px; }
#nav-icon.open span:nth-child(1) { top: 18px; width: 0; left: 50%; }
#nav-icon.open span:nth-child(2) { transform: rotate(45deg); }
#nav-icon.open span:nth-child(3) { transform: rotate(-45deg); }
#nav-icon.open span:nth-child(4) { top: 18px; width: 0; left: 50%; }
/*.menu__link[href^="/imprezy"] { display: none; }*/

@media (max-width: 768px) {
    .branding__img { height: 70px; width: auto; }
    .scroll .branding__img { height: 50px; width: auto; }

    .header { height: 80px; background: #fff; }
    .header__container { justify-content: space-between; align-items: center; height: 100%; }

    #nav-icon { display: block; }
    #nav-icon span { background: #000; }
    #nav-icon.open span { background: #000; }

    .menu__link--logo { display: none; }
    .menu__lvl-0 { display: none; height: 100vh; width: 320px; position: fixed; top: 0; right: 0; background: #fff;
        padding: 0 0 0 30px; }
    .menu__item:first-child { margin-top: 100px; }

    #block-menu { margin-left: 0; width: initial; }
    #block-phone > img { display: none; }

}

@media (max-width: 400px) {
    /*#block-phone { font-size: 24px; line-height: 28px; }*/
    .header.scroll #block-phone { font-size: 24px; line-height: 28px; }
}

/*HEADER*/

/*TOP*/

.top__container { display: flex; }
.top__part { width: 50%; }
.top--text { background: #F26638; padding: 100px 100px 150px; position: relative; }
.page .top--text { background: #1796DE; }
.top--image img { width: 100%; height: 100%; object-fit: cover; }
.top__label { font-size: 64px; margin-bottom: 50px; }
.top__description { max-width: 400px; }

.top__social { margin: 30px 0 5px; display: flex; }
.top__social a { margin: 10px 10px; display: inline-block; transition: .3s; }
.top__social a:first-child { margin-left: 0; }
.top__social img { transition: .3s; width: 40px; height: auto; }
.top__social a:hover img { opacity: .8; transition: .3s; }

.top--image.slick-slider .slick-track,
.top--image.slick-slider .slick-list { height: 100%; }
.top--image.slick-slider .slide picture { display: none; height: 100%; }
.top--image.slick-slider .slick-active picture { display: block; }

.node-4 .top__container { max-height: 850px; }
.node-4 .top__label { line-height: 1.1; }
.node-4 .top--image .slide picture { height: 100%; }
.node-4 .top--image .slide img { width: 100%; height: 100%; object-fit: cover; }

@media (max-width: 1100px) {
    .top__label { font-size: 48px; }
    .node-4 .top__container { max-height: 950px; }
}

@media (max-width: 850px) {
    .top__part { width: 100%; }
    .top__container { flex-direction: column; }
    .top--text { padding: 50px 20px 150px; text-align: center; }
    .top--image { overflow: hidden; }
    .page .top--text { padding: 50px 20px; }
    .top__description { margin: 0 auto; }

    .node-4 .top__container { max-height: initial; }
    .node-4 .top--image { max-height: 500px; }
}

@media (max-width: 768px) {
    .top__social { display: none; }
}

@media (max-width: 600px) {
    .node-4 .top--image { max-height: 350px; }
}

/*TOP*/

/*VEGE*/

.dishes__vege { margin: 50px 0; position: relative; z-index: 1; }

.vege__line { overflow: hidden; width: 100%; }
.vege__line-container { width: 120%; display: flex; justify-content: center; align-items: center; margin-left: -10%; }
.vege__line picture { width: calc(100% / 3); }
.vege__line img { width: 100%; height: auto; }
.vege__label { margin: 20px 0; }
.vege__container { margin: 50px auto; }
.vege__bamboo { position: absolute; right: 0; bottom: 120px; }

@media (max-width: 500px) {
    .vege__bamboo { display: none; }
}

/*VEGE*/

/*DISHES*/

.dishes { position: relative; }
.dishes__spoon-container { position: absolute; right: 250px; top: 150px; overflow: hidden; }
.dishes__spoon { height: auto; }
.dishes__sticks-container { position: absolute; right: 0; bottom: -350px; overflow: hidden; }
.dishes__sticks { height: auto; width: 450px; }
.dishes__container { overflow: hidden; }
.dishes__bamboo { position: absolute; top: 550px; left: 0; height: auto; }
.dishes__writing-container { position: absolute; overflow: hidden; top: 0; right: 0; }
.dishes__writing { width: 180px; height: auto; position: relative; right: -15px; z-index: -1; }

.dish { display: flex; align-items: center; }
.dish:first-child { margin-top: 50px; }
.node-2 .dish:not(:first-child) .dish--part { width: 50%; display: flex; position: relative; }

.node-2 .dish:first-child { text-align: center; display: flex; flex-direction: column; }
.node-2 .dish:first-child .dish__description { order: 1; }

.dish__japan { margin: 15px 0; display: block; }
.dish__description--container { padding: 0 20px; }
.node-2 .dish:first-child .dish__description--container { margin: 0 auto; }
.dish:nth-child(odd) .dish__description { order: -1; justify-content: flex-end; z-index: 1; }

.dish__image img { display: block; margin: 0 auto; width: 850px; height: auto; }
.dish:nth-child(even) .dish__image img { margin-left: -100px; }
.node-3 .dish:nth-child(odd) .dish__image img { margin-right: -100px; }
.dish:nth-child(odd) .dish__image { justify-content: flex-end; }
.node-2 .dish:not(:first-child):nth-child(odd) .dish__image img { margin-right: -100px; }
.node-3 .dish { justify-content: center; }

.dish__spacer { margin-bottom: 30px; }
.dish__subtitle { margin-bottom: 30px; }

.dish__bamboo { position: absolute; right: 0; bottom: -100px; height: auto; }

.dish__slider { max-width: 850px; margin: 0 auto; }
.dish__slider img { max-width: 850px; height: auto; margin: 0 auto; }

@media (max-width: 1800px) {
    .dishes__spoon-container { right: initial; left: 43%; }
    .dish__bamboo { bottom: -200px; z-index: -1; }
    .dishes__sticks-container { z-index: 0; }
}

@media (max-width: 1500px) {
    .dish__image img { width: 700px; height: auto; }
    .dishes__spoon-container { left: 37%; z-index: -1; }
}

@media (max-width: 1300px) {
    .dishes__spoon-container { left: initial; right: 0; }
}

@media (max-width: 1200px) {
    .dishes__bamboo { top: 490px; z-index: -1; left: -200px; }
    .dish__image img { width: 600px; height: auto; }
}

@media (max-width: 1100px) {
    .dishes__sticks-container { bottom: -200px; }
    .dishes__sticks { max-width: 400px; }
}

@media (max-width: 992px) {
    .dishes__bamboo { left: -300px; top: 600px; }
    .dishes__spoon-container { left: -400px; top: 400px; }
    .dishes__spoon { width: 600px; height: auto; }
    .node-2 .dish:not(:first-child) .dish__image img { width: 120%; }
}

@media (max-width: 768px) {
    .dishes__writing-container { display: none; }
    .dishes__bamboo { left: -400px; top: 140vw; }
    .dishes__spoon-container { display: none; }

    .dish { margin-bottom: 50px; }
    .node-3 .dish { flex-wrap: wrap; }
    .node-2 .dish:not(:first-child) { display: block; }
    .dish__description--container { margin: 0 auto; text-align: center; }
    .dish:nth-child(odd) .dish__description { order: 1; }
    .node-2 .dish:not(:first-child) .dish--part { width: 100%; display: block; }
    .node-3 .dish .dish--part { width: 100%; display: block; }
    .dish .dish__image { margin-bottom: 50px; }
    .dish:nth-child(odd) .dish__image { justify-content: initial; }
    .node-2 .dish:not(:first-child):nth-child(odd) .dish__image img { margin-right: 0; }
    .dishes .dish:first-child .dish__image img { width: 110vw; margin-left: -5vw; margin-right: initial; }
    .dishes .dish:not(:first-child) .dish__image img { width: 120%; margin-left: -10%; }

    .dishes__sticks-container { position: static; margin: -70px 0 -100px auto; display: block; text-align: right; }
}

@media (max-width: 500px) {
    .dishes__sticks { width: 70%; }
}

@media (max-width: 400px) {
    /*.dishes__sticks { width: 100%; }*/
}

/*DISHES*/

/*MENU*/

.card { margin-top: 100px; }
.card__label { margin-bottom: 30px; }
.card__description { margin-bottom: 30px; }
.card__description div { display: flex; justify-content: space-around; flex-wrap: wrap; }
.card__description div img { margin: 10px; }
.card__phone { margin-bottom: 100px; }
.card__phone img { margin-top: -7px; }
.card__image { z-index: 1; position: relative; }
.card__image img { width: 90%; height: auto; max-width: 1000px; }
.card--mobile { display: none; }

.card__full-width { margin-bottom: 100px; }
.card__full-width img { height: auto; width: 100%; }

.card .menu-items__container { width: 980px; margin: 0 auto; }
.card .menu-item__type,
.card .menu-item { display: flex; margin: 30px 0; justify-content: space-between; }
.card .menu-item__title,
.card .menu-item__subtitle { margin: 0; text-align: left; }
.card .menu-item__title { font-weight: 500; font-size: 17px; }
.card .menu-item__sublabel { font-size: 15px; font-weight: 400; }
.card .menu-item__subtitle { font-size: 13px; margin-top: -3px; }
.card .menu-item__price { text-align: right; min-width: 110px; margin-left: 15px; }
.card .menu-item__custom { margin-bottom: 20px; }
.card .menu-item__custom img { max-width: 100%; height: auto; }
.card .menu-item__big-name .menu-item__title { font-weight: 700; font-size: 18px; }
.card .menu-item--types { display: flex; flex-direction: column; justify-content: space-between; margin-bottom: -30px; }
.card .menu-item__types { padding-left: 20px; }

@media (max-width: 1020px) {
    .card .menu-items__container { width: 100%; padding: 0 20px; }
}

@media (max-width: 768px) {
    .card--desktop { display: none; }
    .card--mobile { display: block; }
}

@media (max-width: 400px) {
    .card .menu-item__title { font-size: 14px; }
}

/*MENU*/

/*GALLERY*/

.gallery { margin-top: 50px; }
.gallery__label { padding-bottom: 50px; position: relative; }

.gallery__background { background: no-repeat center /cover; background-blend-mode: multiply; padding-bottom: 34%;
    position: absolute; width: 100%; bottom: 0; z-index: -1; }

.gallery__images { display: flex; flex-wrap: wrap; margin-top: -5px; }
.colorbox { width: calc(100% / 6); height: calc(100vw / 6); overflow: hidden; padding: 5px; }
.colorbox img { width: 100%; height: 100%; object-fit: cover; }
.colorbox:before { content: attr(title); width: calc(100% / 6 - 10px); height: calc(100vw / 6 - 10px); transition: .3s;
    justify-content: center; align-items: center; background: rgba(0, 0, 0, .3); display: flex; opacity: 0;
    text-transform: uppercase; position: absolute; color: #fff; font-weight: 700; font-size: 18px;
    font-family: "Roboto Condensed", sans-serif; text-align: center; padding: 0 10px }
.colorbox:hover:before { opacity: 1; transition: .3s; }

@media (max-width: 1100px) {
    .colorbox { height: calc(100vw / 4); width: calc(100% / 4); }
    .colorbox:before { height: calc(100vw / 4 - 10px); width: calc(100% / 4 - 10px); }
}

@media (max-width: 700px) {
    .colorbox { width: calc(100% / 3); height: calc(100vw / 3);}
    .colorbox:before { height: calc(100vw / 3 - 10px); width: calc(100% / 3 - 10px); }
}

@media (max-width: 560px) {
    .colorbox { height: calc(100vw / 2); width: calc(100% / 2); }
    .colorbox:before { height: calc(100vw / 2 - 10px); width: calc(100% / 2 - 10px); }
}

/*GALLERY*/

/*CATERING*/

.catering { display: flex; justify-content: center; align-items: center; position: relative; margin-top: 100px;
    background: no-repeat center /cover; }
.catering__wrapper { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); padding: 200px 0;
    z-index: 1; }
.catering__container { background: #fff; padding: 60px 70px 40px; max-width: 700px; }
.catering__label { margin-bottom: 20px; }
.catering__link { text-align: center; }
.catering__link-container a { display: inline-block; padding: 12px 30px; background: #1796DE; color: #fff;
    font-weight: 300; transition: .3s; margin: 0 auto; }
.catering__link-container:hover { transition: .3s; opacity: .7; }
.catering__link img { margin-left: 20px; }
.catering__decor { position: absolute; bottom: -100px; right: 0; }

.catering__sliders { width: 100%; display: flex; }
.catering__right,
.catering__left { width: 50%; }
.catering__sliders img { width: 100%; height: 100%; object-fit: cover; }
.catering__sliders .slick-slider,
.catering__sliders .slick-slider .slick-track,
.catering__sliders .slick-slider .slick-list { height: 100%; }

@media (max-width: 850px) {
    /*.catering__container { max-width: 90%; }*/
    .catering__wrapper { padding: 100px 0; width: 90%; }
}

@media (max-width: 500px) {
    .catering__container { padding: 50px 30px 30px; }
}


@media (max-width: 360px) {
    .catering__link-container { padding: 5px 13px; }
}

/*CATERING*/

/*MAP*/

.map { margin-top: 50px; }
.map__label { margin-bottom: 50px; display: flex; justify-content: center; align-items: center; }
.map__label img { margin-top: -10px; margin-right: 20px; }
.map__google { width: 100%; height: 400px; }
.map__google iframe { width: 100%; height: 100%; }

/*MAP*/

/*EVENTS*/

.events { margin: 100px 0; position: relative; }
.events__grass { position: absolute; left: 0; top: -100px; overflow: hidden; }
.events__grass img { max-width: 100%; height: auto; }
.events__container { margin: 0 auto; }
.events__label { margin: 0 0 30px; }

/*EVENTS*/

/*PLACE*/

.place { position: relative; }
.place__container { display: flex; }
.place__part { width: 50%; }
.place--text { background: #fff; padding: 100px; }
.place__label { margin-bottom: 50px; }
.place--image img { width: 100%; height: 100%; object-fit: cover; }
.place__decor { position: absolute; bottom: -100px; right: 0; }

@media (max-width: 850px) {
    .place__container { flex-wrap: wrap; }
    .place__part { width: 100%; }
    .place--text { padding: 50px 20px; text-align: center; }
    .place__description { max-width: 540px; margin: 0 auto; }
}

/*PLACE*/

/*FOOTER*/

#block-footer { margin: 50px 0 0; }
.footer { margin: 50px 0; text-align: center; position: relative; }
.footer__top img { margin-top: -7px; margin-right: 15px; }
.footer__ludek { position: absolute; right: 20px; top: 0; width: 300px; height: auto; }


@media (max-width: 1100px) {
    .footer { margin-bottom: 200px; }
}

@media (max-width: 992px) {
    .footer__ludek { position: static; margin-top: 30px; }
}

.socials { margin: 30px 0 0; }
.social { margin: 0 10px; }

/*FOOTER*/

/*LOGIN FORM*/

#user-login-form .login-form { margin-top: 50px; padding: 0 30px; }
#user-login-form .logo { text-align: center; }
#user-login-form .logo img { width: 320px; height: auto; margin-bottom: 50px; }
#user-login-form .logo h2 { color: #666666; font-family: 'Montserrat', sans-serif; font-size: 16px;
    margin-bottom: 50px; }

#user-login-form #edit-name--description,
#user-login-form #edit-pass--description { display: none; }

#user-login-form .login-fields label { display: none; }
#user-login-form .login-fields .form-text { width: 500px; margin-bottom: 30px; height: 25px; border-radius: 5px;
    border: 2px solid #6666; background-color: #F3F4EE; padding-left: 5px; font-size: 14px; }
#user-login-form .login-fields .form-text:focus { border: 2px solid #0085D0; }
#user-login-form .login-fields .field { display: flex; margin: 0 auto; }
#user-login-form .login-fields { max-width: max-content; margin: 0 auto; }
#user-login-form .login-fields p { line-height: 20px; width: 150px; color: #666666;  font-size: 16px;
    font-family: 'Montserrat', sans-serif; font-weight: normal; }
#user-login-form .login-submit { max-width: max-content; margin: 0 0 0 auto; }
#user-login-form #edit-submit { padding: 10px 50px; border-radius: 5px; border: 0; background-color: #0085D0;
    color: white; font-family: 'Montserrat', sans-serif; font-size: 15px; font-weight: normal; }
#user-login-form #edit-submit:hover { opacity: 0.85; }


@media (max-width: 700px) {
    #user-login-form .login-fields .form-text { width: 100%; }
}

@media (max-width: 450px) {
    #user-login-form .login-fields .field { display: block; }
    #user-login-form .login-fields p { margin: 0; }
    #user-login-form .login-submit { margin: 0 auto; }

    #user-login-form .logo img { width: 100%; }
}

/*END LOGIN FORM*/