/* banner */

.bic-home-banner__thumbnail {
    position: relative;
}

.bic-home-banner__thumbnail::before {
    position: absolute;
    content: "";
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    width: 100%;
    height: 100%;
    display: block;
    z-index: 0;
    background: linear-gradient(90deg, rgba(0, 0, 0, 0.60) 0%, rgba(0, 0, 0, 0.40) 50%, rgba(0, 0, 0, 0.00) 100%);
}

.banner-content {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: 195px;
    width: 45%;
}

.banner-subtitle {
    border-radius: 33554400px;
    border: 1px solid rgba(255, 107, 53, 0.30);
    background: #82391D;
    backdrop-filter: blur(4px);
    padding: 9px 27px;
    display: inline-flex;
    color: #000;
    text-transform: uppercase;
}

h2.banner-title {
    font-size: 75px;
    color: #fff;
    font-weight: 700;
    line-height: 100px;
}

h2.banner-title span {
    color: var(--bic-primary-color);
}

.banner-description {
    font-size: 25px;
    color: #E5E7EB;
    font-weight: 400;
}

.banner-button {
    margin-top: 40px;
}



a.banner-button-link{
    border-radius: 10px;
    background: var(--Linear, linear-gradient(276deg, #FF6B35 0.05%, #E94A26 100.05%));
    box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.10), 0 4px 6px -4px rgba(0, 0, 0, 0.10);
    padding: 18.5px 45px 19.5px 45px;
    color: #fff;
    font-weight: 500;
}

.banner-button-link:hover {
    box-shadow: 0 6px 32px -8px #E94A26cc, 0 1.5px 10px -6px #FF6B35cc;
    transition: box-shadow 0.4s cubic-bezier(.77, 0, .175, 1), transform 0.3s cubic-bezier(.77, 0, .175, 1);
    transform: translateY(-2px) scale(1.03);
    transition: all 0.3s ease;
}

/* about */

.bic-about {
    background: linear-gradient(180deg, #FFF 0%, #FFF7ED 100%);
    padding: var(--bic-site-gap) 0;
}

.box-about-wrap {
    display: flex;
    gap: 90px;
}

.box-about-content {
    display: flex;
    flex-direction: column;
    gap: 35px;
}

.box-about-gallery {
    flex: 0 0 50%;
    max-width: 50%;
}

.about-features_block {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
}

.about-features-item {
    display: flex;
    align-items: center;
    gap: 13px;
}

.about-note {
    display: flex;
    padding: 23.1px 22.5px 22.5px 22.5px;
    flex-direction: column;
    align-items: flex-start;
    align-self: stretch;
    border-radius: 11.25px;
    border-left: 4px solid var(--Color-Cam, #E94A26);
    background: linear-gradient(90deg, rgba(255, 107, 53, 0.10) 0%, #FFEDD4 100%);
    border-left: 4px solid var(--Color-Cam, #E94A26);
    font-weight: 600;
}

.box-about-gallery-large {
    border-radius: 18px;
    overflow: hidden;
    padding-top: 59%;
    position: relative;
}

.swiper-slide.box-about-gallery-large img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
}

.box-about-gallery-thumb {
    border-radius: 15.25px;
    background: rgba(255, 255, 255, 0.00);
    box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.10), 0 4px 6px -4px rgba(0, 0, 0, 0.10);
    overflow: hidden;
    margin-top: 22px;
    padding-top: 13.7%;
    position: relative;
}

.swiper-slide.box-about-gallery-thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
}

.about-features-item-title {
    font-weight: 500;
}

/* food menu */

.box-foodMenu-gallery {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 22px;
}

section.bic-ani.bic-foodMenu .desc {
    width: 45%;
    margin: auto;
}

.box-foodMenu-item {
    position: relative;
    padding-top: 100%;
    overflow: hidden;
    border-radius: 11px;
}

.box-foodMenu-item img {
    width: 100%;
    height: auto;
    object-fit: cover;
    position: absolute;
    top: 0;
    left: 0;
}

@media (min-width:1025px) {
    .banner-content {
        left: 10.1563vw;
    }
    
    h2.banner-title {
        font-size: 3.9063vw;
        line-height: 5.2083vw;
    }
    
    .banner-description {
        font-size: 1.3021vw;
    }
    
    .banner-button {
        margin-top: 2.0833vw;
    }
    
    .banner-subtitle {
        padding: 0.4688vw 1.4063vw;
        border-radius: 1747.6042vw;
    }
    
    a.banner-button-link {
        border-radius: 0.5208vw;
        padding: 0.9635vw 2.3438vw 1.0156vw 2.3438vw;
        box-shadow: 0 0.5208vw 0.7813vw -0.1563vw rgba(0, 0, 0, 0.10), 0 0.2083vw 0.3125vw -0.2083vw rgba(0, 0, 0, 0.10);
    }
    
    .banner-button-link:hover {
        box-shadow: 0 0.3125vw 1.6667vw -0.4167vw #E94A26cc, 0 0.0781vw 0.5208vw -0.3125vw #FF6B35cc;
    }
    
    .box-about-wrap {
        gap: 4.6875vw;
    }
    
    .box-about-content {
        gap: 1.8229vw;
    }
    
    .about-features_block {
        gap: 1.0417vw;
    }
    
    .about-features-item {
        gap: 0.6771vw;
    }
    
    .about-note {
        padding: 1.2031vw 1.1719vw 1.1719vw 1.1719vw;
        border-radius: 0.5859vw;
        border-left: 0.2083vw solid var(--Color-Cam, #E94A26);
    }
    
    .box-about-gallery-large {
        border-radius: 0.9375vw;
    }
    
    .box-about-gallery-thumb {
        border-radius: 0.7943vw;
        margin-top: 1.1458vw;
        box-shadow: 0 0.5208vw 0.7813vw -0.1563vw rgba(0, 0, 0, 0.10), 0 0.2083vw 0.3125vw -0.2083vw rgba(0, 0, 0, 0.10);
    }
    
    .box-foodMenu-gallery {
        gap: 1.1458vw;
    }
    
    .box-foodMenu-item {
        border-radius: 0.5729vw;
    }
}

@media (max-width:1024px) and (min-width:768px) {

    .bic-home-banner__thumbnail img {
        height: 450px;
    }
    .banner-content {
        left: 15px;
        width: 100%;
        top: 57%;
    }

    .banner-subtitle {
        padding: 7px 20px;
    }

    .banner-description {
        font-size: 16px;
    }

    h2.banner-title {
        font-size: 30px;
        line-height: unset;
    }

    a.banner-button-link {
        padding: 14px 35px 14px 35px;
    }

    .box-about-wrap {
        display: flex;
        gap: 30px;
        flex-direction: column;
    }

    .box-about-gallery {
        flex: 0 0 100%;
        max-width: 100%;
    }

    .box-about-content {
        gap: 25px;
    }

    .about-note {
        padding: 20px 15px;  
    }

    .box-about-gallery-thumb {
        margin-top: 16px;
        padding-top: 18.7%;
        border-radius: 10px;
    }

    section.bic-ani.bic-foodMenu .desc {
        width: 100%;
    }

    .box-foodMenu-gallery {
        grid-template-columns: repeat(1, 1fr);
        gap: 22px;
    }

    button, input[type="button"], input[type="reset"], input[type="submit"], .bic-button a {
        padding: 15px 30px; 
        margin-top: 30px;
    }
}

@media (max-width:576px) {

    .bic-home-banner__thumbnail img {
        height: 450px;
    }
    .banner-content {
        left: 15px;
        width: 100%;
        top: 57%;
    }

    .banner-subtitle {
        padding: 7px 20px;
    }

    .banner-description {
        font-size: 16px;
    }

    h2.banner-title {
        font-size: 30px;
        line-height: unset;
    }

    a.banner-button-link {
        padding: 14px 35px 14px 35px;
    }

    .box-about-wrap {
        display: flex;
        gap: 30px;
        flex-direction: column;
    }

    .box-about-gallery {
        flex: 0 0 100%;
        max-width: 100%;
    }

    .box-about-content {
        gap: 25px;
    }

    .about-note {
        padding: 20px 15px;  
    }

    .box-about-gallery-thumb {
        margin-top: 16px;
        padding-top: 18.7%;
        border-radius: 10px;
    }

    section.bic-ani.bic-foodMenu .desc {
        width: 100%;
    }

    .box-foodMenu-gallery {
        grid-template-columns: repeat(1, 1fr);
        gap: 22px;
    }

    button, input[type="button"], input[type="reset"], input[type="submit"], .bic-button a {
        padding: 15px 30px; 
        margin-top: 30px;
    }
}