:root{
    --gutter-x: 1.5rem;
    --gutter-y: 0;
    --indent-between: 4.375rem;
    --yummy-color: #D4DA42;
    --yummy-dark-color: #9ba22e;
}
@font-face {
    font-family: 'Futura PT Book';
    font-style: normal;
    font-weight: normal;
    src: local('Futura PT Book'), url('../fonts/FuturaCyrillicBook.woff') format('woff');
}
* {
    box-sizing: border-box;
    /*outline: solid 1px red;*/
}
html, body {
    overflow-x: hidden;
    background-color: #F5F5F5;
    user-select: none;
}
img, svg {pointer-events: none;}
body {
    font-family: 'Futura PT Book';
    font-style: normal;
    font-weight: 400;
    line-height: 1.6;
    color: black;
    min-width: 320px;
    position: relative;
    margin: 0;
    padding: 0;
}
.body-container{
    display: flex !important;
    flex-direction: column !important;
    min-height: 100vh !important;
}
.body-section {
    flex-grow: 1 !important;
}
.center-absolutely {
    position: absolute;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
}
.w-20{
    width: 20% !important;
}
.mb-10 {
    margin-bottom: 10rem;
}
.header{
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
}
.header-top{
    position: absolute;
    top: 0;
    width: 100%;
}
.header-bottom{
    position: absolute;
    top: calc(100vh - 140px);
    bottom: var(--indent-between);
    width: 100%;
}
.img{
    width: 100%;
    height: 100%;
    object-fit: cover;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
    pointer-events: none;
}
a[data-fslightbox]{
    width: 100%;
    height: 100%;
    display: block;
    position: relative;
}
.header-background-img{
    background-image: url("../images/2025_IMIDZH_YUMMY.jpg");
    background-color: #d8e073;
    background-repeat: no-repeat;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
    background-position: center top;
    height: calc(100vh + 600px);
}
.header-logo{
    margin-top: 53px;
    max-width: 315px;
    max-height: 47px;
}
.header-logo-collection{
    margin-top: 30px;
    max-width: 222px;
    max-height: 129px;
}
.header-title{
    max-width: 401px;
    max-height: 120px;
    width: 100%;
    height: 100%;

    font-size: 4rem;
    line-height: 60px;

    display: flex;
    align-items: flex-end;

    margin-bottom: var(--indent-between);
}
.header-info{
    max-width: 1253px;
    max-height: 500px;
    width: 100%;
    height: 100%;
    background: white;
    opacity: 0.9;
    padding: var(--indent-between);
}
.header-info-title{
    font-size: 24px;
    line-height: 18px;
    text-transform: uppercase;
    color: black;
    margin-bottom: calc(var(--indent-between) - 5px);
}
.yummy-handles .header-info-title{
    padding-top: var(--indent-between);
}
.header-info-name{
    font-size: 42px;
    line-height: 40px;
    display: flex;
    align-items: flex-end;
    text-transform: uppercase;

    color: black;
    margin-bottom: 20px;
    max-width: 1020px;
}
.header-info-description{
    font-size: 26px;
    line-height: 26px;
    display: flex;
    align-items: flex-end;
    color: black;
}
.px-body-yummy{
    padding-right: var(--indent-between) !important;
    padding-left: var(--indent-between) !important;
}
.py-body-yummy{
    padding-top: 4.563rem !important;
    padding-bottom: 4.563rem !important;
}
.bg-body-yummy{
    background: #EAF0F9;
}
/***********************************/
.yummy-btn{
    position: relative;
    max-width: 280px;
    max-height: 76px;
    width: 100%;
    height: 100%;
    font-size: 26px;
    line-height: 26px;
    font-weight: 600;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    padding: 25px;
    border: 1px solid black;
    text-decoration: none;
    color: black;
    transition: border-color 0.35s ease-in-out;
    z-index: 1;
}
.yummy-btn:before, .yummy-btn:after {
    content: "";
    position: absolute;
    width: 0px;
    height: 0px;
    box-sizing: content-box;
    z-index: -1;
    transition: transform 0.25s ease-in-out;
}
.yummy-btn:before {
    top: 0;
    left: 0;
    border-top: 1px transparent solid;
    border-right: 1px transparent solid;
}
.yummy-btn:after {
    bottom: -1px;
    right: 0;
    border-bottom: 1px transparent solid;
    border-left: 1px transparent solid;
}
.yummy-btn:hover {
    border: none;
}

.yummy-btn:hover:before {
    -webkit-animation: top-right-border 0.75s 1 0s forwards;
    animation: top-right-border 0.75s 1 0s forwards;
}
.yummy-btn:hover:after {
    -webkit-animation: bottom-left-border 0.75s 1 0.75s forwards;
    animation: bottom-left-border 0.75s 1 0.75s forwards;
}
@-webkit-keyframes outline-reset {
    0% {
        border-color: black;
    }
    100% {
        border-color: transparent;
    }
}
@keyframes outline-reset {
    0% {
        border-color: black;
    }
    100% {
        border-color: transparent;
    }
}
@-webkit-keyframes top-right-border {
    0% {
        border-color: black;
        width: 0px;
        height: 0;
    }
    50% {
        width: 100%;
        height: 0;
    }
    100% {
        border-color: black;
        width: 100%;
        height: 100%;
    }
}
@keyframes top-right-border {
    0% {
        border-color: black;
        width: 0px;
        height: 0;
    }
    50% {
        width: 100%;
        height: 0;
    }
    100% {
        border-color: black;
        width: 100%;
        height: 100%;
    }
}
@-webkit-keyframes bottom-left-border {
    0% {
        border-color: black;
        width: 0px;
        height: 0;
    }
    50% {
        width: 100%;
        height: 0;
    }
    100% {
        border-color: black;
        width: 100%;
        height: 100%;
    }
}
@keyframes bottom-left-border {
    0% {
        border-color: black;
        width: 0px;
        height: 0;
    }
    50% {
        width: 100%;
        height: 0;
    }
    100% {
        border-color: black;
        width: 100%;
        height: 100%;
    }
}
/***********************************/


.block-info-title{
    position: relative;
    font-size: 1.4rem;
    line-height: 30px;
    display: flex;
    align-items: flex-end;
    text-transform: uppercase;
    color: black;
}
.new-collection .block-info-title span{
    position: absolute;
    bottom: -45px;
    width: 250px;
    line-height: 1;
}
.block-info{
    border-top: 4px solid black;
    font-size: 1.625rem;
    line-height: 26px;
    display: flex;
    align-items: flex-end;
    text-align: justify;
    padding: 1px;
    margin-bottom: 30px;
}
.about-collection{
    margin-top: 190px;
    margin-bottom: 59px;
}
.castella{
    object-fit: contain;
    margin-top: 240px;
    max-width: 577px;
    max-height: 723px;
    width: 100%;
    height: auto;
}
.new-collection{
    margin-top: 369px;
}
.new-collection-img{
    object-fit: contain;
    max-width: 500px;
    max-height: 688px;
    width: 100%;
    height: auto;
}
.about-series{
    position: relative;
    margin-top: 195px;
}
.mm img{
    position: absolute;
    max-height: 450px;
    left: 0;
    top: -600px;
}
.bg-carousel{
    background-image: url(../images/mmmmm.svg);
    background-repeat: repeat-x;
    background-position-y: center!important;
    background-size: 50%;
    position: absolute;
    width: 100%;
    height: 100px;
}
.bg-position-y-c{
    top: 36%;
}
.bg-position-y-b{
    bottom: var(--indent-between);
}

.yummy-handles{
    position: relative;
    padding-bottom: var(--indent-between);
}
.yummy-handles .g-container{
    display: grid; /*1935*/
    grid-gap: var(--indent-between);
    grid-auto-flow: dense;
    grid-template-areas: "g01 g01 g03 g03 g04 ."    /*1*/
                         "g01 g01 g03 g03 g05 ."    /*1*/
                         "g02 g02 g03 g03 g05 ."    /*1*/
                         ".   .   .   g06 g07 g08"  /*2*/
                         ".   g09 g09 g11 g11 g12"  /*3*/
                         "g10 g10 g10 g11 g11 g12"  /*3*/
                         ".   g13 g13 g14 g14 g14"; /*4*/
    grid-template-columns: fit-content(100%);
}
.yummy-handles .g-container .g-item:nth-child(1){
    grid-area: g01;
    justify-self: end;
    align-self: end;
    /*max-width: 257px;
    max-height: 338px;*/
    width: 13.28vw;
    height: 17.47vw;
}
.yummy-handles .g-container .g-item:nth-child(2){
    grid-area: g02;
    justify-self: end;
    align-self: end;
    /*max-width: 439px;
    max-height: 290px;*/
    width: 22.69vw;
    height: 100%;/*14vw;*/
}
.yummy-handles .g-container .g-item:nth-child(3){
    grid-area: g03;
    /*max-width: 541px;
    max-height: 768px;*/
    width: 100%;/*29vw;*/
    height: auto;/*42.1vw;*/
}
.yummy-handles .g-container .g-item:nth-child(4){
    grid-area: g04;
    justify-self: start;
    /*max-width: 318px;
    max-height: 313px;*/
    width: 100%;/*16.48vw;*/
    height: 17.5vw;
}
.yummy-handles .g-container .g-item:nth-child(5){
    grid-area: g05;
    justify-self: start;
    align-self: end;
    /*max-width: 318px;
    max-height: 385px;*/
    width: 100%;/*16.48vw;*/
    height: 21vw;
}
.yummy-handles .g-container .g-item:nth-child(6){
    grid-area: g06;
    justify-self: end;
    /*max-width: 284px;
    max-height: 373px;*/
    width: 100%;/*15.3vw;*/
    height: 19.28vw;
}
.yummy-handles .g-container .g-item:nth-child(7){
    grid-area: g07;
    /*max-width: 318px;
    max-height: 373px;*/
    width: 100%;/*16.48vw;*/
    height: 19.28vw;
}
.yummy-handles .g-container .g-item:nth-child(8){
    grid-area: g08;
    /*max-width: 279px;
    max-height: 373px;*/
    width: 14.42vw;
    height: 19.28vw;
}
.yummy-handles .g-container .g-item:nth-child(9){
    grid-area: g09;
    justify-self: end;
    /*max-width: 463px;
    max-height: 362px;*/
    width: 23.93vw;
    height: 100%;/*19.8vw;*/
}
.yummy-handles .g-container .g-item:nth-child(10){
    grid-area: g10;
    justify-self: end;
    /*max-width: 669px;
    max-height: 459px;*/
    width: 34.57vw;
    height: 100%;/*23.72vw;*/
}
.yummy-handles .g-container .g-item:nth-child(11){
    grid-area: g11;
    /*max-width: 676px;
    max-height: 893px;*/
    width: 100%;/*34.94vw;*/
    height: auto;/*46.15vw;*/
}
.yummy-handles .g-container .g-item:nth-child(12){
    grid-area: g12;
    /*max-width: 279px;
    max-height: 429px;*/
    width: 14.42vw;
    height: 22.17vw;
}
.yummy-handles .g-container .g-item:nth-child(13){
    grid-area: g13;
    justify-self: end;
    /*max-width: 476px;
    max-height: 622px;*/
    width: 24.6vw;
    height: 32.14vw;
}
.yummy-handles .g-container .g-item:nth-child(14){
    grid-area: g14;
    display: grid;
    grid-gap: var(--indent-between);
    grid-template-columns: repeat(2, 1fr);
}
.yummy-handles .g-container .g-item:nth-child(14) .yummy-handle-img:nth-child(1){
    /*max-width: 477px;
    max-height: 622px;*/
    width: 100%;/*24.65vw;*/
    height: 32.14vw;
}
.yummy-handles .g-container .g-item:nth-child(14) .yummy-handle-img:nth-child(2){
   /* max-width: 299px;
    max-height: 393px;*/
    width: 15.45vw;
    height: 20.31vw;
}
.yummy-handles .yummy-handle-img{
    position: relative;
}
.yummy-handles .yummy-handle-img .img_overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: var(--yummy-color);
    font-weight: 600;
    font-size: 2.5vw; /*48px*/
    line-height: 45px;
    letter-spacing: 3px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    transition: opacity 1s;
    opacity: 0;
    color: black!important;
}
.yummy-handles .yummy-handle-img .img_overlay:hover {
    opacity: 0.9;
}
.yummy-handles-title{
    position: absolute;
    font-size: 24px;
    line-height: 30px;
    top: 10px;
    left: 4.563rem;
}
.yummy-handles-specification{
    position: relative;
    padding-top: 60px;
}
.yummy-handles-specification .yummy-handles-title{
    top: 60px;
}
.yummy-handles-specification a[data-fancybox="gallery"]{
    width: 100%;
    height: 100%;
    display: block;
}
footer .footer{
    width: 100%;
    height: 100%;
    background: var(--yummy-color);
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
    padding: var(--indent-between);
}
footer .footer .footer-logo{
    margin-bottom: 172px;
    max-width: 314px;
    max-height: 47px;
}
footer .footer .logo-collection{
    max-width: 606px;
    max-height: 353px;
}
.mobile .header-info{
    padding: 0;
    margin-top: var(--indent-between);
}
.mobile .header-info-title{
    font-size: 24px;
    line-height: 30px;
}
.mobile .header-info-name{
    font-size: 18px;
    line-height: 18px;
}
.mobile .header-info-description{
    font-size: 16px;
    line-height: 16px;
}
.mobile .yummy-btn{
    margin-bottom: var(--indent-between);
 }
@media screen and (max-width: 1700px) {
    .yummy-handles .g-container,
    .yummy-handles .g-container .g-item:nth-child(14){
        grid-gap: 1.875rem;
    }
}
@media screen and (max-width: 1280px) {
    :root{
        --indent-between: 2rem;
    }
    .header-logo,
    .header-logo-collection{
        margin-top: 10px;
    }
}
@media screen and (max-width: 992px) {
    :root{
        --indent-between: 1rem;
    }
    .header-logo,
    .header-logo-collection{
        margin-top: 0;
        width: 50vw;
    }
    footer .footer .footer-logo{
        margin-bottom: 0;
        max-width: 100px;
    }
    .header-info-name {
        font-size: 25px;
        line-height: 25px;
    }
    .header-info-description {
        font-size: 20px;
        line-height: 20px;
    }
    .yummy-handles .g-container .g02{
        max-width: 257px;
    }
    .px-body-yummy {
        padding-right: 1rem !important;
        padding-left: 1rem !important;
    }
    .header-title{
        font-size: 48px;
        line-height: 48px;
    }
    .yummy-handles-specification .yummy-handles-title{
        top: 20px;
        left: 1rem;
    }
    .bg-carousel{
        background-size: 100%;
    }
    .yummy-handles .yummy-handle-img .img_overlay {
        font-size: 25px;
        line-height: 25px;
    }
    footer .footer .logo-collection{
        max-width: 280px;
    }
    .header-bottom{
        top: calc(100vh - 140px);
    }
}
@media screen and (max-width: 736px) {
    .header-logo,
    .header-logo-collection{
        width: 30vw;
    }
    footer .footer .logo-collection,
    footer .footer .yummy-btn{
        max-width: 130px;
    }
    footer .footer .yummy-btn{
        font-size: 12px;
        line-height: 1;
        padding: 10px;
    }
    .header-info-title{
        font-size: 20px;
        line-height: 20px;
        margin-bottom: 10px;
    }
    .header-info-name {
        font-size: 16px;
        line-height: 16px;
        margin-bottom: 10px;
    }
    .header-background-img{
        height: 100vh;
    }
    .header-info-description,
    .yummy-handles .yummy-handle-img .img_overlay {
        font-size: 16px;
        line-height: 16px;
    }
    .yummy-btn {
        position: relative;
        max-width: 210px;
        max-height: 50px;
        font-size: 16px;
    }
    .px-body-yummy {
        padding-right: 1rem !important;
        padding-left: 1rem !important;
    }
    .header-title{
        font-size: 48px;
        line-height: 48px;
    }
    .yummy-handles-specification .yummy-handles-title{
        top: 20px;
        left: 1rem;
    }
    .yummy-handles .g-container .g02 {
        max-width: 100px;
    }
    .yummy-handles .g-container {
        grid-template-areas: "g01"
                             "g02"
                             "g03"
                             "g03"
                             "g04"
                             "g05"
                             "g06"
                             "g07"
                             "g08"
                             "g09"
                             "g10"
                             "g11"
                             "g12"
                             "g13"
                             "g14";
        grid-template-columns: 100%;
        justify-content: center;
        justify-items: center;
    }
    .yummy-handles .g-container .g-item:nth-child(14){
        grid-template-columns: 1fr;
    }
    .yummy-handles .g-container .g-item .yummy-handle-img,
    .yummy-handles .g-container .g-item{
        width: 100% !important;
        height: 100%!important;
    }
    .header-title{
        margin-bottom: unset;
    }
}
@media screen and (max-width: 450px) {
    .header-background-img {
        background-position: -350px top;
    }
}
@media screen and (max-width: 320px) {
    .header-title{
        font-size: 28px;
        line-height: 28px;
    }
}