@font-face {
    font-family: "helvetica-lightregular";
    src:
        url("../fonts/helvetica_light-webfont.woff2") format("woff2"),
        url("../fonts/helvetica_light-webfont.woff") format("woff"),
        url("../fonts/helvetica_light-webfont.svg#helvetica-lightregular") format("svg");
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: "helvetica_ltregular";
    src:
        url("../fonts/helvetica_lt-webfont.woff2") format("woff2"),
        url("../fonts/helvetica_lt-webfont.woff") format("woff"),
        url("../fonts/helvetica_lt-webfont.svg#helvetica_ltregular") format("svg");
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: "helvetica_ltbold";
    src:
        url("../fonts/helvetica-lt-bold-webfont.woff2") format("woff2"),
        url("../fonts/helvetica-lt-bold-webfont.woff") format("woff"),
        url("../fonts/helvetica-lt-bold-webfont.svg#helvetica_ltbold") format("svg");
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}
@media only screen and (min-width: 1200px) {
    .container {
        max-width: 1290px;
    }
}
* {
    outline: 0 !important;
}

body {
    margin: 0;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.5;
    color: #212529;
    text-align: left;
    background-color: #fcf9f8
}



.preloader {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 99999;
    display: flex;
    flex-flow: row nowrap;
    justify-content: center;
    align-items: center;
    background: none repeat scroll 0 0 #ffffff;
}
.spinner {
    border: 1px solid transparent;
    border-radius: 3px;
    position: relative;
}
.spinner:before {
    content: "";
    box-sizing: border-box;
    position: absolute;
    top: 50%;
    left: 50%;
    width: 45px;
    height: 45px;
    margin-top: -10px;
    margin-left: -10px;
    border-radius: 50%;
    border: 1px solid #ffffff;
    border-top-color: #ffffff;
    animation: spinner 0.9s linear infinite;
}
.spinner2 {
    border: 1px solid transparent;
    border-radius: 3px;
    position: relative;
}
.spinner2:before {
    content: "";
    box-sizing: border-box;
    position: absolute;
    top: 50%;
    left: 50%;
    width: 65px;
    height: 65px;
    margin-top: -20px;
    margin-left: -20px;
    border-radius: 50%;
    border: 1px solid #20202f;
    border-top-color: #0C6C43;
    animation: spinner2 2s linear infinite;
}
@-webkit-@keyframes spinner {
    to {
        transform: rotate(360deg);
    }
}
@keyframes spinner {
    to {
        transform: rotate(360deg);
    }
}
@-webkit-@keyframes spinner2 {
    to {
        transform: rotate(-360deg);
    }
}
@keyframes spinner2 {
    to {
        transform: rotate(-360deg);
    }
}
#back_to_top_btn {
    display: inline-block;
    background-color: #ffffff;
    width: 40px;
    height: 40px;
    text-align: center;
    border-radius: 50%;
    position: fixed;
    bottom: 30px;
    right: 30px;
    transition:
        background-color 0.3s,
        opacity 0.5s,
        visibility 0.5s;
    opacity: 0;
    visibility: hidden;
    z-index: 1000;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.4);
}
#back_to_top_btn::after {
    font-family: "Font Awesome 5 Pro";
    font-weight: 900;
    content: "\f077";
    font-size: 24px;
    color: #0C6C43;
}
#back_to_top_btn:hover {
    cursor: pointer;
    background-color: #ffffff;
}
#back_to_top_btn:active {
    background-color: #ffffff;
}
#back_to_top_btn.show {
    opacity: 1;
    visibility: visible;
}


#main-menu {
    background-color: #ffffff; /* Ensures the navbar itself remains white */
    border-top: 2px solid #ffffff;
    
    /* 2) BALANCED PADDING (Desktop) */
    padding: 20px 100px 30px 100px !important; /* Adjusted bottom padding to avoid massive vertical gaps */
    
    /* 1) RELATIVE CONTEXT FOR ZIGZAG MASKING */
    position: relative;
}

/* Creating the Zigzag border using a sharp transparent masking rule */
#main-menu::after {
    content: "";
    position: absolute;
    bottom: -15px; /* Pushes the teeth exactly below the header element line */
    left: 0;
    width: 100%;
    height: 15px; /* Matches the exact height of the zigzag shapes */
    
    /* FIX: Removed background-color: #ffffff to let the gradient pattern define transparency */
    background-image: 
        linear-gradient(135deg, #ffffff 25%, transparent 25%), 
        linear-gradient(225deg, #ffffff 25%, transparent 25%);
    background-position: 0 0;
    background-size: 20px 20px; /* Modifies the width and density of individual points */
    z-index: 10;
}

/* Mobile & Tablet Specific Responsive Fixes */
@media only screen and (max-width: 992px) {
    #main-menu {
        padding: 0px 20px !important; 
    }
    #main-menu::after {
        bottom: -12px;
        height: 12px;
        background-size: 16px 16px;
    }

    /* 1. Control the wrapper container height tightly */
    .logo-divider-container {
        height: 60px !important; /* Fixed tight structural height context */
        display: flex;
        align-items: center;
        margin: 0;
        padding: 0;
    }

    /* 2. Zero out structural paddings/margins on the anchor element */
    #main-menu .navbar-brand {
        display: flex;
        align-items: center;
        padding-top: 0 !important;
        padding-bottom: 0 !important;
        margin-top: 0 !important;
        margin-bottom: 0 !important;
        height: 100%;
    }

    /* 3. Increase base logo size for mid-range tablet screens safely */
    #main-menu .navbar-brand img {
        width: 140px !important;  /* Scaled up from 120px */
        height: auto;
        display: block;
    }
}


/* Container to manage the height context for the dividers */
.logo-divider-container {
  height: 50px; /* Adjust this to match the desired height of your dividers */
}

/* Style the lines and give them a soft, subtle gray color */
.logo-divider-left, 
.logo-divider-right {
  border-color: #dee2e6 !important; /* Standard light gray border */
  width: 10px;
}


#main-menu .secondary_nav .nav-link {
    font-family: "Hanken Grotesk", sans-serif;
    font-weight: 500;
    font-size: 21px !important;
    color: #000000;
    margin-left: 8px;
    margin-right: 8px;
    outline: 0;
}
#main-menu .secondary_nav .nav-link svg {
    fill: #000000;
    stroke: #000000;
}
#main-menu .main_nav .nav-link {
    font-family: "Hanken Grotesk", sans-serif;
    font-weight: 500;
    font-size: 21px !important;
    color: #000000;
    margin-right: 5px;
    outline: 0;
}
#main-menu .main_nav .nav-link::after {
    content: "";
    display: block;
    width: 0;
    height: 2px;
    background: #0C6C43;
    transition: width 0.5s;
}
#main-menu .main_nav .nav-link:hover::after {
    width: 100%;
}
#main-menu.inner_menu .main_nav .nav-link {
    color: #000000;
}
#main-menu.inner_menu .secondary_nav .nav-link {
    color: #000000;
}
#main-menu.inner_menu .secondary_nav .nav-link svg {
    fill: #000000;
    stroke: #000000;
}
#main-menu .cart_nav_link {
    position: relative;
}
/* #main-menu .cart-badge {
    background: #0C6C43;
    color: #ffffff;
    border-radius: 50%;
    position: absolute;
    right: 0;
    bottom: 0;
} */

#main-menu .cart-badge {
    background: #0C6C43;
    color: #ffffff;
    border-radius: 50%;
    position: absolute !important;
    
    /* Pulls it down and right relative to the edge of the bag icon */
    bottom: -2px !important;
    right: -5px !important;
    left: auto !important;
    top: auto !important;
    
    /* Gives it a perfect uniform circle size */
    width: 18px;
    height: 18px;
    font-size: 11px;
    line-height: 18px;
    text-align: center;
    padding: 0;
    
    /* Prevents layout shifts */
    display: flex !important;
    align-items: center;
    justify-content: center;
}

#main-menu.add_shadow {
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.4);
    background: #ffffff;
}
#main-menu.add_shadow .main_nav .nav-link {
    color: #000000;
}
#main-menu.add_shadow .secondary_nav .nav-link {
    color: #000000;
}
#main-menu.add_shadow .secondary_nav .nav-link svg {
    fill: #000000;
    stroke: #000000;
}
#main-menu .dropdown-toggle::after {
    font-family: "Font Awesome 5 Pro";
    font-weight: 400;
    content: "\f078";
    border: none;
    margin-left: 10px;
 
    vertical-align: 0;
}


/* Responsive Styles for Mobile and Tablet */
/* These styles only apply to small and medium devices, preserving desktop layout */

/* Responsive Styles for Mobile and Tablet */
/* These styles only apply to small and medium devices, preserving desktop layout */

@media only screen and (max-width: 992px) {
    /* Position hamburger menu at top-right */
    #main-menu .navbar-toggler {
        order: 3;
        margin-left: auto;
        position: relative;
        z-index: 1041;
    }
    
    /* Position logo at top-left */
    #main-menu .navbar-brand {
        order: 1;
        margin-right: 0;
        margin-left: 0;
        position: relative;
        z-index: 1041;
    }
    
    /* Hide dividers on mobile/tablet */
    .logo-divider-left,
    .logo-divider-right {
        display: none !important;
    }
    
    /* Fix logo-divider-container for mobile */
    .logo-divider-container {
        height: auto !important;
        margin: 0;
        padding: 0;
        order: 1;
        flex: 0 0 auto;
    }
    
    /* Adjust logo size for mobile/tablet */
    #main-menu .navbar-brand img {
        width: 120px !important;
        height: auto;
    }
    
    /* Fix container for mobile/tablet */
    #main-menu .container-fluid {
        width: 100% !important;
        flex-wrap: nowrap;
        padding-left: 15px;
        padding-right: 15px;
    }
    
    /* Hide desktop right nav items on mobile/tablet */
    #main-menu .secondary_nav {
        display: none !important;
    }
    
    /* Remove the desktop right nav from DOM on mobile */
    #main-menu .secondary_nav.right_nav {
        display: none !important;
    }
    
    /* Mobile menu styling */
    #main-menu .navbar-collapse {
        background: #ffffff;
        padding: 20px 20px 30px 20px;
        position: absolute;
        top: 100%;
        left: 0;
        right: 0;
        z-index: 1040;
        box-shadow: 0 15px 30px rgba(0, 0, 0, 0.15);
        border-top: 1px solid #dee2e6;
        max-height: 80vh;
        overflow-y: auto;
        margin-top: 0;
        transition: all 0.3s ease;
    }
    
    /* Remove background from navbar when menu is open */
    #main-menu .navbar-collapse.show {
        background: #ffffff;
    }
    
    #main-menu .navbar-collapse.show .nav-link {
        color: #000000;
    }
    
    #main-menu .navbar-collapse.show .nav-link svg {
        fill: #000000;
        stroke: #000000;
    }
    
    /* Style for mobile menu items - Navigation links */
    #main-menu .navbar-collapse .main_nav {
        width: 100%;
        margin-bottom: 10px;
        margin-top: 5px;
    }
    
    #main-menu .navbar-collapse .main_nav .nav-item {
        width: 100%;
        padding: 5px 0;
        border-bottom: 1px solid #f0f0f0;
    }
    
    #main-menu .navbar-collapse .main_nav .nav-item:last-child {
        border-bottom: none;
    }
    
    #main-menu .navbar-collapse .main_nav .nav-link {
        font-size: 16px;
        padding: 10px 0;
        margin-left: 0 !important;
        margin-right: 0 !important;
        font-weight: 600;
        color: #000000;
    }
    
    #main-menu .navbar-collapse .main_nav .nav-link::after {
        display: none;
    }
    
    #main-menu .navbar-collapse .main_nav .nav-link:hover {
        color: #0C6C43;
    }
    
    /* Mobile secondary nav items (language, login, cart) */
    #main-menu .navbar-collapse .secondary_nav_mobile {
        display: flex !important;
        flex-direction: column;
        width: 100%;
        border-top: 2px solid #dee2e6;
        padding-top: 15px;
        margin-top: 5px;
    }
    
    #main-menu .navbar-collapse .secondary_nav_mobile .nav-item {
        width: 100%;
        padding: 6px 0;
    }
    
    #main-menu .navbar-collapse .secondary_nav_mobile .nav-item:last-child {
        border-bottom: none;
    }
    
    #main-menu .navbar-collapse .secondary_nav_mobile .nav-link {
        display: flex;
        align-items: center;
        font-size: 16px;
        color: #000000;
        padding: 10px 0;
        font-weight: 500;
    }
    
    #main-menu .navbar-collapse .secondary_nav_mobile .nav-link svg {
        width: 20px;
        height: 20px;
        margin-right: 12px;
        fill: #000000;
        stroke: #000000;
        flex-shrink: 0;
    }
    
    #main-menu .navbar-collapse .secondary_nav_mobile .lang-selector-wrapper {
        width: 100%;
        padding: 6px 0;
    }
    
    /* Style the language dropdown in mobile */
    #main-menu .navbar-collapse .secondary_nav_mobile .lang-selector-wrapper .dropdown {
        width: 100%;
    }
    
    #main-menu .navbar-collapse .secondary_nav_mobile .lang-selector-wrapper .dropdown-toggle {
        width: 100%;
        text-align: left;
        padding: 10px 0;
        font-size: 16px;
        color: #000000;
        background: transparent;
        border: none;
        font-weight: 500;
        display: flex;
        align-items: center;
    }
    
    #main-menu .navbar-collapse .secondary_nav_mobile .cart-wrapper {
        width: 100%;
        padding: 6px 0;
    }
    
    /* Style the cart in mobile */
    #main-menu .navbar-collapse .secondary_nav_mobile .cart-wrapper .cart_nav_link {
        display: flex;
        align-items: center;
        padding: 10px 0;
        font-size: 16px;
        color: #000000;
        font-weight: 500;
        text-decoration: none;
    }
    
    #main-menu .navbar-collapse .secondary_nav_mobile .cart-wrapper .cart_nav_link svg {
        margin-right: 12px;
    }
    
    /* Mobile cart badge position */
    #main-menu .cart-badge {
        right: auto;
        left: 8px;
        position: relative;
        margin-left: 5px;
    }
    
    /* Ensure cart items display properly in mobile */
    .cart_nav_link {
        display: flex;
        align-items: center;
        gap: 8px;
    }
    
    /* Inner menu mobile styles */
    #main-menu.inner_menu .navbar-toggler {
        border-color: rgb(0, 0, 0);
        background: #b99c9c;
    }
    
    #main-menu.inner_menu .navbar-toggler-icon {
        background-image: url("data:image/svg+xml,%3csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3e%3cpath stroke='rgba(255, 255, 255, 1)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
    }
    
    #main-menu.add_shadow .navbar-toggler {
        border-color: rgba(0, 0, 0, 0.1) !important;
    }
    
    #main-menu.add_shadow .navbar-toggler-icon {
        background-image: url("data:image/svg+xml,%3csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3e%3cpath stroke='rgba(0, 0, 0, 0.5)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e") !important;
    }
    
    #main-menu.inner_menu .navbar-collapse {
        background: #ffffff;
    }
    
    #main-menu.inner_menu .navbar-collapse .nav-link {
        color: #000000 !important;
    }
    
    #main-menu.inner_menu .navbar-collapse .nav-link svg {
        fill: #000000 !important;
        stroke: #000000 !important;
    }
    
    /* Override for inner menu on mobile - ensure text is visible */
    #main-menu.inner_menu .navbar-collapse .secondary_nav_mobile .nav-link,
    #main-menu.inner_menu .navbar-collapse .secondary_nav_mobile .lang-selector-wrapper .dropdown-toggle,
    #main-menu.inner_menu .navbar-collapse .secondary_nav_mobile .cart-wrapper .cart_nav_link {
        color: #000000 !important;
    }

    #main-menu .cart-wrapper a,
#main-menu .cart_nav_link,
#main-menu .secondary_nav_mobile .cart-wrapper a {
    position: relative !important;
    display: inline-block !important;
}
    
    /* Ensure nav links in mobile menu use proper font */
    #main-menu .navbar-collapse .nav-link {
        font-family: "Hanken Grotesk", sans-serif;
    }



}

/* Desktop Specific: Center Logo Horizontally and Vertically */
/* Desktop Specific: Center Logo Horizontally, Vertically & Increase Size */
@media only screen and (min-width: 993px) {
    #main-menu .container-fluid {
        display: flex !important;
        align-items: center !important; 
        justify-content: space-between !important;
        position: relative;
    }

    #main-menu {
        padding: 20px 60px 25px 60px; 
    }

    /* 3. Force the logo container into the absolute center */
    .logo-divider-container {
        position: absolute !important;
        left: 50% !important;
        top: 50% !important;
        transform: translate(-50%, -50%) !important; 
        margin: 0 !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        
        /* ADJUSTED: Increased container height context from 50px to 80px to accommodate a bigger logo */
        height: 80px !important; 
        gap: 20px; /* Increased padding gap between dividers and logo */
        z-index: 11; 
    }

    /* NEW ADDITION: Scale up the desktop logo image asset size */
    #main-menu .navbar-brand img {
        width: 250px !important; /* Scaled up from standard size (adjust as desired, e.g., 200px) */
        height: auto !important;
        display: block !important;
    }

    /* ADJUSTED: Explicitly define how the dividers look on desktop with new heights */
    .logo-divider-left, 
    .logo-divider-right {
        display: block !important; 
        height: 40px !important;  /* ADJUSTED: Increased from 30px to match larger logo balance */
        border-left: 1px solid #dee2e6 !important; 
        width: 1px !important;    
    }

    #main-menu .navbar-brand {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        margin: 0 !important;
        padding: 0 !important;
    }
}

/* Small devices (phones, 576px and below) */
/* Small devices (phones, 576px and below) */
@media only screen and (max-width: 576px) {
    /* 4. Scale up small mobile display without adding layout height padding */
   

      #main-menu .navbar-brand img {
        width: 150px !important; /* Scaled up from standard size (adjust as desired, e.g., 200px) */
        height: auto !important;
        display: block !important;
    }
    
    .logo-divider-container {
        height: 50px !important; /* Keeps the main bar height compact on thin viewports */
    }

    #main-menu .navbar-brand {
        padding-top: 0 !important;
        padding-bottom: 0 !important;
    }

    /* Rest of your existing small mobile variables... */
    #main-menu .container-fluid {
        padding-left: 10px;
        padding-right: 10px;
    }
    #main-menu .navbar-toggler {
        padding: 6px 8px;
    }
    #main-menu .navbar-toggler-icon {
        width: 22px;
        height: 22px;
    }
    #main-menu .navbar-collapse {
        padding: 15px 15px 25px 15px;
        max-height: 75vh;
    }
}


/* Tablet devices (577px to 992px) */
@media only screen and (min-width: 577px) and (max-width: 992px) {
    /* 5. Scale up tablet-specific display layout cleanly */
   

      #main-menu .navbar-brand img {
        width: 250px !important; /* Scaled up from standard size (adjust as desired, e.g., 200px) */
        height: auto !important;
        display: block !important;
    }
    
    .logo-divider-container {
        height: 65px !important; /* Expands to cleanly center the larger 150px asset */
    }
}

@media only screen and (max-width: 1100px) and (min-width: 993px) {
    /* Prevent nav links from wrapping on screens between 993px and 1100px */
    #main-menu .main_nav .nav-link {
        font-size: 13px; /* Reduce font size to fit */
        margin-right: 3px;
        padding-left: 5px;
        padding-right: 5px;
        white-space: nowrap; /* Force single line */
    }
    
    #main-menu .secondary_nav .nav-link {
        font-size: 13px;
        margin-left: 4px;
        margin-right: 4px;
        white-space: nowrap;
    }
    
    /* Reduce logo size slightly to free up space */
    

      #main-menu .navbar-brand img {
        width: 250px !important; /* Scaled up from standard size (adjust as desired, e.g., 200px) */
        height: auto !important;
        display: block !important;
    }
    
    /* Reduce padding on navbar */
    #main-menu {
        padding: 15px 40px 25px 40px;
    }
    
    /* Ensure the flex container doesn't wrap */
    #navbarSupportedContent > .d-none.d-lg-flex {
        flex-wrap: nowrap !important;
    }
    
    /* Make the logo container smaller */
    .logo-divider-container {
        height: 40px;
    }
    
    /* Reduce divider width */
    .logo-divider-left, 
    .logo-divider-right {
        width: 5px;
    }
    
    /* Adjust cart and language wrapper spacing */
    #main-menu .secondary_nav .nav-item.px-2 {
        padding-left: 6px !important;
        padding-right: 6px !important;
    }
}

/* ============================================================
   FIX: Overlap issue between 992px and 1400px
   ============================================================ */
@media only screen and (min-width: 993px) and (max-width: 1400px) {
    /* 1. Reduce overall navbar padding to create more space */
    #main-menu {
        padding-left: 30px !important;
        padding-right: 30px !important;
    }

    /* 2. Scale down the logo for medium-large screens */
    #main-menu .navbar-brand img {
        width: 180px !important;
        height: auto !important;
    }

    /* 3. Reduce the logo container gap to reclaim horizontal space */
    .logo-divider-container {
        gap: 3px !important;
        height: 60px !important;
    }

    /* 4. Make divider lines thinner to save space */
    .logo-divider-left, 
    .logo-divider-right {
        width: 1px !important;
        height: 30px !important;
    }

    /* 5. Reduce font sizes of nav links */
    #main-menu .main_nav .nav-link {
        font-size: 16px !important;
        margin-right: 3px;
        padding-left: 6px;
        padding-right: 6px;
        white-space: nowrap;
    }

    #main-menu .secondary_nav .nav-link {
        font-size: 16px !important;
        margin-left: 4px;
        margin-right: 4px;
        white-space: nowrap;
    }

    /* 6. Reduce spacing between nav items */
    #main-menu .main_nav .nav-item {
        margin-right: 0;
    }

    #main-menu .secondary_nav .nav-item.px-2 {
        padding-left: 4px !important;
        padding-right: 4px !important;
    }

    /* 7. Ensure the flex container doesn't wrap and items stay in one line */
    #navbarSupportedContent > .d-none.d-lg-flex {
        flex-wrap: nowrap !important;
        gap: 0 !important;
    }

    /* 8. Ensure left nav and right nav maintain proper spacing */
    #main-menu .main_nav {
        flex-shrink: 0;
    }

    #main-menu .secondary_nav {
        flex-shrink: 0;
    }

    /* 9. Fine-tune the logo container positioning */
    .logo-divider-container {
        position: absolute !important;
        left: 50% !important;
        top: 50% !important;
        transform: translate(-50%, -50%) !important;
        margin: 0 !important;
        z-index: 11 !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
    }

    /* 10. Reduce cart badge size to save space */
    #main-menu .cart-badge {
        width: 16px !important;
        height: 16px !important;
        font-size: 9px !important;
        line-height: 16px !important;
        bottom: -2px !important;
        right: -4px !important;
    }

    /* 11. Slightly reduce language selector size */
    #main-menu .lang-selector-wrapper .dropdown-toggle {
        font-size: 16px !important;
        padding: 0 !important;
    }
}

/* Additional fine-tuning for very narrow desktop screens (993px - 1100px) */
@media only screen and (min-width: 993px) and (max-width: 1100px) {
    #main-menu .navbar-brand img {
        width: 140px !important;
    }

    #main-menu .main_nav .nav-link {
        font-size: 14px !important;
        padding-left: 4px;
        padding-right: 4px;
    }

    #main-menu .secondary_nav .nav-link {
        font-size: 14px !important;
        padding-left: 4px;
        padding-right: 4px;
    }

    .logo-divider-container {
        gap: 6px !important;
    }

    .logo-divider-left, 
    .logo-divider-right {
        width: 1px !important;
        height: 24px !important;
    }

    #main-menu {
        padding-left: 20px !important;
        padding-right: 20px !important;
    }
}

.modal-backdrop.show {
    background: #1d222b;
    opacity: 0.9;
}


.lang-selector-wrapper ul, 
.lang-selector-wrapper li,
.cart-wrapper ul, 
.cart-wrapper li,
.secondary_nav_mobile ul,
.secondary_nav_mobile li {
    list-style: none !important;
    margin: 0;
    padding: 0;
}


#loginModal {
    top: 50px;
}
#loginModal .modal-content {
    border-radius: 0;
    border: 10px solid #0C6C43 !important;
    padding: 10px;
}
#loginModal .modal-content .modal-body {
    border: 1px solid #0C6C43 !important;
    padding: 0;
}
#loginModal .modal-content .modal-body button.close {
    background-color: #0C6C43 !important;
    color: #ffffff;
    opacity: 1;
    padding: 0 7px 5px 7px;
    font-weight: 400;
    font-size: 30px;
}
#loginModal .loginModal_box {
    text-align: center;
    padding: 30px 50px 20px 50px;
}
#loginModal .loginModal_box h4 {
    text-transform: uppercase;
    color: #0C6C43 !important;
    font-family: "Hanken Grotesk", sans-serif;
    font-weight: 600;
    font-size: 36px;
}
#loginModal .loginModal_box .input-group {
    margin-top: 45px;
}
#loginModal .loginModal_box .input-group label {
    position: absolute;
    z-index: 9;
    font-family: "Hanken Grotesk", sans-serif;
    font-weight: 500;
    font-size: 17px;
    color: #474747;
    background: #ffffff;
    top: -12px;
    left: 20px;
    padding-left: 10px;
    padding-right: 10px;
}
#loginModal .loginModal_box .input-group .form-control {
    border-radius: 90px;
    border-right: none;
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
    border-color: #0C6C43 !important;
    font-family: "Hanken Grotesk", sans-serif;
    font-weight: 600;
    font-size: 15px;
    color: #474747;
    font-style: italic;
    padding: 25px 30px;
}
#loginModal .loginModal_box .input-group .form-control:focus {
    box-shadow: none;
    border-color: #0C6C43;
}
#loginModal .loginModal_box .input-group .input-group-text {
    background: none;
    border-color: #0C6C43;
    border-left: none;
    border-top-right-radius: 90px;
    border-bottom-right-radius: 90px;
    padding-right: 20px;
}
#loginModal .loginModal_box .input-group .form-control::placeholder {
    color: #c3cfd2;
    opacity: 1;
}
#loginModal .loginModal_box .input-group .form-control:-ms-input-placeholder {
    color: #c3cfd2;
}
#loginModal .loginModal_box .input-group .form-control::-ms-input-placeholder {
    color: #c3cfd2;
}
#loginModal .loginModal_box .btn {
    width: 100%;
    text-transform: uppercase;
    background-color: #0C6C43;
    border-color: #0C6C43;
    border-radius: 90px;
    padding: 3px;
    color: #ffffff;
    font-family: "Hanken Grotesk", sans-serif;
    font-weight: 500;
    font-size: 30px;
    margin-top: 30px;
}
#loginModal .loginModal_box a {
    font-family: "Hanken Grotesk", sans-serif;
    font-weight: 500;
    font-size: 17px;
    color: #000000;
}
#loginModal .loginModal_box .or_connect_with {
    margin-top: 20px;
    margin-bottom: 10px;
}
#loginModal .loginModal_box .or_connect_with hr {
    border-color: #cdcdcd;
}
#loginModal .loginModal_box .or_connect_with h6 {
    text-transform: uppercase;
    color: #565656;
    font-family: "Hanken Grotesk", sans-serif;
    font-weight: 500;
    font-size: 22px;
    margin-top: 2px;
}
@media only screen and (max-width: 481px) {
    #loginModal .loginModal_box {
        padding: 30px 10px 20px 10px;
    }
    #loginModal .loginModal_box h4 {
        font-size: 26px;
    }
    #loginModal .loginModal_box .input-group {
        margin-top: 30px;
    }
    #loginModal .loginModal_box .col-sm-6 {
        text-align: center !important;
    }
    #loginModal .loginModal_box .or_connect_with {
        margin-top: 10px;
    }
    #loginModal .loginModal_box .btn {
        font-size: 22px;
    }
    #loginModal .loginModal_box .input-group .form-control {
        padding: 20px 30px;
    }
    #loginModal .loginModal_box .or_connect_with .col-sm-3 {
        flex: 0 0 25%;
        max-width: 25%;
    }
    #loginModal .loginModal_box .or_connect_with .col-sm-6 {
        flex: 0 0 50%;
        max-width: 50%;
    }
    #loginModal .loginModal_box .or_connect_with h6 {
        font-size: 16px;
        margin-top: 7px;
    }
    #loginModal .loginModal_box .col-sm-4 {
        flex: 0 0 33.333333%;
        max-width: 33.333333%;
    }
}


/* --- Desktop Settings --- */
#main-banner .carousel-item {
    position: relative;
    min-height: 750px;
    height: 95vh;
    background-color: #000;
}

#main-banner .carousel-item .banner-img {
    height: 100%;
    width: 100%;
    object-fit: cover;
    opacity: 0.85;
}

#main-banner .carousel-item .carousel-caption {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    padding: 2rem 20%;
    color: #ffffff;
    z-index: 10;
}

/* Typography Fluidity */
.banner-title {
    font-family: 'EB Garamond', sans-serif; 
    font-weight: bold; 
    font-size: calc(1.8rem + 1.5vw); 
    margin-bottom: 1rem;
    text-shadow: 0 2px 4px rgba(0,0,0,0.4);
}

.banner-subtitle {
    font-size: 21px !important; 
    font-family: "Hanken Grotesk", sans-serif;
    max-width: 540px; 
    opacity: 0.9;
    text-shadow: 0 1px 3px rgba(0,0,0,0.4);
}

/* Booking Card Styles */
#main-banner .banner-box {
    width: 100%; 
    max-width: 490px; 
    background: rgba(255, 255, 255, 0.98); 
    padding: 2rem; 
    border-radius: 20px !important; 
    box-shadow: 0 8px 24px rgba(0,0,0,0.15);
}

/* Custom Tabs */
.custom-banner-tabs {
    border-bottom: 1px solid #e0e0e0; 
    display: flex; 
    padding-left: 0; 
    list-style: none;
}
.custom-banner-tabs .nav-item {
    flex: 1; 
    text-align: center;
}
.custom-banner-tabs .nav-link {
    color: #666; 
    font-weight: 600; 
    padding: 0.75rem 0; 
    font-size: 21px !important;
    display: block; 
    border: none; 
    border-bottom: 3px solid transparent; 
    text-decoration: none;
    transition: all 0.3s ease;
    white-space: nowrap;
}
.custom-banner-tabs .nav-link.active {
    color: #004D40; 
    border-bottom-color: #004D40;
}

/* Input & Button fields */
#main-banner #postcode_input {
    width: 100%; 
    border: none; 
    border-bottom: 1px solid #ccc !important; 
    padding: 0.5rem 0; 
    background: transparent; 
    outline: none; 
    font-size: 21px !important;
    color: #6B7280;
    font-family: "Hanken Grotesk", sans-serif !important;
}

#main-banner .banner-btn {
    background-color: #0d6845 !important; 
    color: white; 
    border: none !important; 
    padding: 12px 35px !important;
    border-radius: 12px !important; 
    font-family: "Hanken Grotesk", sans-serif !important;
    font-size: 21px !important;
    display: flex; 
    align-items: center; 
    justify-content: center; 
    gap: 0.5rem;
    cursor: pointer;
    transition: background 0.2s ease;
    white-space: nowrap;
    min-width: fit-content;
}
#main-banner .banner-btn:hover {
    background-color: #0a5236;
}
#main-banner .banner-btn i {
    transition: transform 0.2s ease;
}
#main-banner .banner-btn:hover i {
    transform: translateX(5px);
}

/* --- Mobile Responsiveness (Max width 767px covers all phones) --- */
@media (max-width: 767.98px) {
    #main-banner .carousel-item {
        height: auto;
        min-height: 100vh;
        display: flex;
        align-items: center;
    }
    
    #main-banner .carousel-item .banner-img {
        position: absolute;
        top: 0;
        left: 0;
        height: 100%;
    }

    #main-banner .carousel-item .carousel-caption {
        position: relative;
        padding: 2rem 15px;
    }
    
    .text-left {
        text-align: center !important;
    }
    
    .banner-subtitle {
        margin: 0 auto 2rem auto;
    }
    
    #main-banner .banner-box {
        padding: 1.25rem;
        max-width: 100%;
        margin: 0 auto;
    }
    
    /* Ensure button text doesn't wrap on mobile */
    #main-banner .banner-btn {
        padding: 12px 25px !important;
        font-size: 14px !important;
        white-space: nowrap;
        min-width: fit-content;
        width: auto;
        display: inline-flex;
        margin: 0 auto;
    }
    
    /* Adjust tabs for mobile */
    .custom-banner-tabs .nav-link {
        font-size: 14px;
        white-space: nowrap;
        padding: 0.5rem 0;
    }
}

/* --- Extra small devices (max 400px) --- */
@media (max-width: 400px) {
    #main-banner .banner-box {
        padding: 1rem;
    }
    
    #main-banner .banner-btn {
        padding: 10px 18px !important;
        font-size: 13px !important;
        white-space: nowrap;
    }
    
    .custom-banner-tabs .nav-link {
        font-size: 12px;
        white-space: nowrap;
    }
}

/* --- Tablet & Small Desktop (768px - 1024px) --- */
@media (min-width: 768px) and (max-width: 1024px) {
    #main-banner .carousel-item .carousel-caption {
        padding: 2rem 8%;
    }
    
    #main-banner .banner-box {
        max-width: 400px;
        padding: 1.5rem;
    }
    
    #main-banner .banner-btn {
        padding: 12px 30px !important;
        font-size: 15px !important;
        white-space: nowrap;
    }
}

/* --- Large Desktop (1025px+) --- */
@media (min-width: 1025px) {
    #main-banner .carousel-item .carousel-caption {
        padding: 2rem 20%;
    }
}


@media (min-width: 768px) {
    .banner-text-section {
        padding-right: 3rem; /* Adjust this value up or down to get the exact gap you want */
    }
}

#services {
    padding-top: 80px;
    padding-bottom: 80px;
    background: #fcf9f8;
}

/* Main title styles */
.services-main-title {
    font-family: 'EB Garamond' , sans-serif;
    font-weight: 500;
    font-size: 48px;
    color: #1a1a1a;
    margin-bottom: 15px;
}

.services-subtitle {
    font-family: "Hanken Grotesk" , sans-serif;
    font-weight: 400;
    font-size: 21px !important;
    color: #555;
    max-width: 650px;
    margin: 0 auto 50px;
    line-height: 1.6;
}

#services .card {
    text-align: center;
    border-radius: 12px;
    border-radius: 1px solid #e9e9e9 !important;
    padding: 40px 30px;
    box-shadow: none;
    border: none;
    background: #F6F3F2 !important; /* Soft background fill from screenshot */
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    height: 100%;
}

#services .card:hover {
    transform: translateY(-4px);
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.04);
}

#services .card .card-body {
    padding: 0;
}

#services .card h5 {
    font-family: 'EB Garamond' , sans-serif;
    font-weight: 500;
    font-size: 24px;
    margin: 20px 0 12px;
    color: #1a1a1a;
    text-transform: none; /* Removed uppercase style */
    letter-spacing: 0;
}

#services .card p {
    font-family: "Hanken Grotesk" , sans-serif;
    font-weight: 400;
    font-size: 21px !important;
    color: #666;
    line-height: 1.6;
    margin-bottom: 0;
}

#services .card .services_card_img {
    margin-bottom: 10px;
    display: flex;
    justify-content: center;
    align-items: center;
}

#services .card .services_card_img img {
    width: 79px !important ;
    height: 80px !important;
    object-fit: contain;
}


#services .custom_price-text {
    font-size: 14px !important;
    color: #333 !important;
}

#services .custom_cart_button {
    color: #0C6C43;
    font-size: 20px;
}

/* Responsive adjustments */
@media only screen and (max-width: 992px) {
    .services-main-title {
        font-size: 36px;
    }
    #services .card h5 {
        font-size: 22px;
    }
}

@media only screen and (max-width: 768px) {
    #services {
        padding-top: 50px;
        padding-bottom: 50px;
    }
    .services-main-title {
        font-size: 32px;
    }
    .services-subtitle {
        font-size: 14px;
        margin-bottom: 35px;
    }
}

/* New Menu Showcase Section */
#menu_showcase {
    position: relative;
    padding: 100px 0;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    color: #ffffff;
    overflow: hidden;
}

.menu-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.65);
    z-index: 1;
}

.custom-menu-container {
    position: relative;
    z-index: 2;
    max-width: 1200px;
}

.menu-section-title {
    font-family: 'Playfair Display', Georgia, serif;
    font-weight: 400;
    font-size: 42px;
    color: #ffffff;
    margin-bottom: 60px;
    text-transform: none;
    letter-spacing: 0.5px;
}

.title-arrow-decorator {
    position: absolute;
    bottom: 10px;
    left: 51%;
    transform: translateX(-50%) rotate(-15deg);
    opacity: 0.8;
}

/* Flex Grid Wrapper for Transparent Cards & Center Badge */
.menu-showcase-wrapper {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 20px;
    position: relative;
    margin-top: 20px;
}

/* Side Transparent Cards Layout */
.menu-side-card {
    flex: 1;
    border: 1px solid rgba(255, 255, 255, 0.35);
    border-radius: 20px;
    padding: 50px 40px;
    background: rgba(255, 255, 255, 0.03);
    backdrop-filter: blur(4px);
    -webkit-backdrop-filter: blur(4px);
    min-height: 320px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
}

.menu-card-badge {
    font-family:"EB Garamond" , serif;  ;
    font-size: 24px;
    font-weight: 300;
    color: #ffffff;
    margin-bottom: 10px;
}

.menu-dish-title {
    font-family: 'EB Garamond', serif;
    font-size: 34px;
    font-weight: 500;
    color: #ffffff;
    margin-bottom: 15px;
}

.menu-dish-description {
    font-family: 'Hanken Grotesk', sans-serif;
    font-size: 21px !important;
    color: #cccccc;
    line-height: 1.6;
    margin-bottom: 25px;
    max-width: 90%;
}

.menu-learn-more-btn {
    font-family: 'Hanken Grotesk', sans-serif;
    font-size: 13px;
    font-weight: 600;
    letter-spacing: 1px;
    color: #ffffff;
    background-color: #0d6e45;
    padding: 10px 24px;
    border-radius: 12px;
    text-decoration: none;
    text-transform: uppercase;
    transition: background-color 0.25s ease, transform 0.2s ease;
}

.menu-learn-more-btn:hover {
    background-color: #0a5635;
    color: #ffffff;
    text-decoration: none;
    transform: translateY(-1px);
}

/* Central Red Brand Card Styling */
.menu-center-badge {
    width: 170px;
    height: 290px; /* Increased slightly from 270px to give content breathing room */
    background: #6b0509;
    border: 1px solid rgba(255, 255, 255, 0.4);
    border-radius: 12px;
    padding: 8px;
    box-shadow: 0 10px 30px rgba(0,0,0,0.5);
    z-index: 3;
    flex-shrink: 0;
}


.menu-center-border {
    border: 1px solid rgba(255, 255, 255, 0.25);
    height: 100%;
    width: 100%;
    border-radius: 8px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 15px 10px;
    text-align: center;
}

.menu-icon-wrap {
    color: #ffffff;
    font-size: 24px;
    margin-bottom: 4px;
}

.menu-brand-text {
    font-family: 'EB Garamond', serif;
    font-size: 20px;
    letter-spacing: 3px;
    color: #ffffff;
    font-weight: 400;
}

.menu-separator {
    width: 25px;
    height: 1px;
    background: rgba(255, 255, 255, 0.3);
    margin: 8px 0; 
}

.menu-restaurant-title {
    font-family: 'EB Garamond' , sans-serif;
    font-size: 21px;
    font-weight: 400;
    color: #ffffff;
    line-height: 1.4;
    text-transform: none;
}

.menu-since-year {
    font-family: 'Hanken Grotesk' , sans-serif;
    font-size: 10px;
    color: rgba(255, 255, 255, 0.5);
    letter-spacing: 0.5px;
}

/* Global Bottom Button */
.menu-action-trigger-btn {
    display: inline-block;
    font-family: 'Hanken Grotesk' , sans-serif;
    font-size: 12px;
    font-weight: 500;
    letter-spacing: 2px;
    color: #ffffff;
    text-decoration: none;
    border: 1px solid #ffffff;
    padding: 12px 45px;
    border-radius: 12px;
    background: rgba(0, 0, 0, 0.4);
    transition: all 0.3s ease;
}

.menu-action-trigger-btn:hover {
    background: #ffffff;
    color: #000000;
    text-decoration: none;
    box-shadow: 0 4px 15px rgba(255,255,255,0.2);
}

/* Layout Responsiveness updates */
@media (max-width: 991px) {
    .menu-showcase-wrapper {
        flex-direction: column;
        gap: 30px;
    }
    .menu-center-badge {
        order: -1; /* Puts the red label over top elements natively on smaller viewports */
        height: 200px;
        width: 160px;
    }
    .menu-side-card {
        width: 100%;
        min-height: auto;
        padding: 35px 25px;
        align-items: center;
        text-align: center;
    }
    .menu-dish-description {
        max-width: 100%;
    }
    .title-arrow-decorator {
        display: none;
    }
}

@media (max-width: 576px) {
    .menu-section-title {
        font-size: 30px;
    }
    .menu-card-badge {
        font-size: 18px;
    }
    .menu-dish-title {
        font-size: 26px;
    }
}


#about {
    margin-bottom: 80px;
}
#about h3 {
    font-family: "Hanken Grotesk";
    font-weight: 500;
    font-size: 47px;
}
#about h5 {
    font-family: "Hanken Grotesk", sans-serif;
    font-weight: 400;
    font-size: 23px;
    margin-bottom: 30px;
}
#about .about_btn {
    font-family: "Raleway", sans-serif;
    font-weight: 500;
    font-size: 16px;
    color: #0C6C43;
    text-decoration: none;
    border: 2px solid #0C6C43;
    border-radius: 90px;
    padding: 12px 35px;
}
#about p {
    font-family: "Hanken Grotesk", sans-serif;
    font-weight: 500;
    font-size: 19px;
    color: #525252;
    margin-left: 50px;
}
#about img {
    max-width: 100%;
}
@media only screen and (max-width: 992px) {
    #about h3 {
        font-size: 40px;
    }
    #about h5 {
        font-size: 18px;
    }
    #about p {
        margin-left: 0;
        font-size: 17px;
    }
}
@media only screen and (max-width: 768px) {
    #about h3 {
        font-size: 30px;
    }
    #about h5 {
        font-size: 16px;
    }
    #about p {
        font-size: 12px;
    }
}
@media only screen and (max-width: 481px) {
    #about .d-flex {
        display: block !important;
        text-align: center;
    }
    #about .col-sm-6 {
        padding-left: 15px !important;
    }
    #about .col-sm-5 {
        margin-top: 20px;
        margin-bottom: 20px;
    }
    #about .col-sm-4 {
        margin-bottom: 10px;
    }
    #about h3 {
        font-size: 47px;
    }
    #about h5 {
        font-size: 21px;
    }
    #about .about_btn {
        margin-bottom:;
    }
    #about p {
        font-size: 19px;
    }
    #about {
        margin-bottom: 30px;
    }
}
#products {
    margin-bottom: 50px;
}
#products .card .card-img-overlay {
    background: linear-gradient(rgba(0, 0, 0, 0) 1%, rgba(0, 0, 0, 0.9) 99%);
    border-bottom-left-radius: 20px;
    border-bottom-right-radius: 20px;
    top: auto;
    padding-bottom: 40px;
}
#products .card h5 {
    font-family: "Hanken Grotesk", sans-serif;
    font-weight: 500;
    font-size: 39px;
    color: #ffffff;
    margin-left: 20px;
    margin-bottom: 30px;
}
#products .card a {
    font-family: "Hanken Grotesk", sans-serif;
    font-weight: 500;
    font-size: 19px;
    color: #ffffff;
    text-decoration: none;
    border: 2px solid #ffffff;
    border-radius: 90px;
    padding: 10px 20px;
    margin-left: 10px;
    outline: 0;
}
#products .card {
    border: none;
    border-radius: 20px;
    height: 415px;
}
#products .card img {
    border: none;
    border-radius: 20px;
    height: 415px;
    object-fit: cover;
}
@media only screen and (max-width: 992px) {
    #products .col-sm-6 {
        padding-left: 15px !important;
    }
    #products .card h5 {
        font-size: 30px;
    }
    #products .card a {
        font-size: 18px;
    }
}
@media only screen and (max-width: 768px) {
    #products .card h5 {
        font-size: 22px;
    }
    #products .card a {
        font-size: 16px;
    }
}
@media only screen and (max-width: 481px) {
    #products .col-sm-6 {
        margin-bottom: 20px;
    }
}

@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:wght@500&family=Hanken Grotesk:wght@500&display=swap');

#counter {
   margin-bottom: 5px;
    background: #0C6C43; 
    padding-top: 60px;
    padding-bottom: 60px;
    
    /* Add padding to push the items inward */
    padding-left: 12%;  
    padding-right: 12%;
}

#counter ul.counter-item {
    display: flex;
    align-items: center;
    list-style: none;
    padding-left: 0;
    margin-bottom: 0;
}

#counter .counter-icon-box {
    margin-right: 20px;
    flex-shrink: 0; /* FIX: Prevents icons from squishing on tablet widths */
}

#counter img {
    height: 55px; /* Fixed height for consistency */
    width: auto;
    /* Soft tint effect to match the image icons */
    opacity: 0.6; 
    filter: brightness(0) invert(1); 
}

#counter h4 {
    font-family: 'EB Garamond', serif; /* Elegant numbers */
    font-weight: 500;
    font-size: 42px;
    color: #ffffff;
    margin-bottom: 2px;
    line-height: 1;
    letter-spacing: 0.5px;
}

#counter p {
    font-family: 'Hanken Grotesk', sans-serif; /* Clean uppercase tags */
    font-weight: 500;
    font-size: 11px;
    color: rgba(255, 255, 255, 0.75); /* Slight opacity for the subtitle */
    margin-bottom: 0;
    text-transform: uppercase;
    letter-spacing: 1px;
    line-height: 1.2;
}

/* Responsive adjustments */
@media only screen and (max-width: 992px) {
    #counter {
        /* FIX: Reduce aggressive desktop padding to fit tablet layouts cleanly */
        padding-left: 4%;
        padding-right: 4%;
    }
    #counter h4 {
        font-size: 32px;
    }
    #counter p {
        font-size: 10px;
    }
}

/* main.css */

@media only screen and (max-width: 768px) {
    #counter {
        padding-left: 25px;
        padding-right: 25px;
        padding-top: 25px;
        padding-bottom: 25px;
    }
    #counter h4 {
        font-size: 28px;
    }
    #counter .counter-item {
        margin-bottom: 40px; /* Increased from 20px to 40px for more mobile spacing */
    }
    
    /* FIX: Updated selector to target your Bootstrap 12-column mobile cards */
    #counter .col-12:last-child .counter-item {
        margin-bottom: 0;
    }
}

#blog {
    margin-bottom: 5px;
    overflow-x: hidden;
}
#blog .card_1 .card-img-overlay {
    background: linear-gradient(rgba(0, 0, 0, 0) 1%, rgba(0, 0, 0, 0.9) 99%);
    border-bottom-left-radius: 10px;
    border-bottom-right-radius: 10px;
    top: auto;
}



#blog .card_2 .card-img-overlay {
    background: linear-gradient(rgba(0, 0, 0, 0) 1%, rgba(0, 0, 0, 0.9) 99%);
    border-bottom-left-radius: 20px;
    border-bottom-right-radius: 20px;
    top: auto;
}
#blog .card h5 {
    font-family: "Hanken Grotesk", sans-serif;
    font-weight: 600;
    font-size: 39px;
    color: #ffffff;
}
#blog .card a {
    font-family: "Hanken Grotesk", sans-serif;
    font-weight: 600;
    font-size: 22px;
    color: #ffffff;
    text-decoration: none;
    border: 2px solid #ffffff;
    border-radius: 12px;
    outline: 0;
}
#blog .card_1 a {
    padding: 6px 25px;
}
#blog .card_2 a {
 
 
    padding: 6px 20px;
}

#blog .card_1 {
    border: none;
    border-radius: 0; 
    height: 650px; /* Fixed desktop height */
    position: relative;
    overflow: hidden;
}

#blog .card_1 img {
    border: none;
    border-radius: 0; 
    width: 100% !important; /* Force full width */
    height: 100% !important;
    object-fit: cover;
    object-position: center center; /* Keeps focal point centered */
}

#blog .container-fluid {
    width: 100% !important;
    position: relative;
    left: 50%;
    right: 50%;
    margin-left: -50vw;
    margin-right: -50vw;
}


#blog .card_2 {
    border: none;
    border-radius: 20px;
    height: 415px;
}
#blog .card_2 img {
    border: none;
    border-radius: 20px;
    height: 415px;
    object-fit: cover;
}
#blog .card_2 h5 {
    margin-left: 10px;
}

@media only screen and (max-width: 992px) {
    #blog .card_1 {
        height: 450px; /* Shorter banner for tablets */
    }
    #blog .col-sm-6 {
        padding-left: 15px !important;
    }
    #blog .card h5 {
        font-size: 26px;
    }
    #blog .card a {
        font-size: 18px;
    }
    #blog .card_2 a {
        padding: 6px 18px;
    }
}

@media only screen and (max-width: 768px) {
    #blog .card_1 {
        height: 350px; /* Shorter banner for smaller viewports */
    }
    #blog .card h5 {
        font-size: 19px;
    }
    #blog .card a {
        font-size: 13px;
    }
    #blog .card_1 a {
        padding: 6px 10px;
    }
    #blog .card_2 a {
        padding: 6px 10px;
    }
}

@media only screen and (max-width: 481px) {
    #blog .card_1 {
        height: 250px; /* Perfect height for mobile viewports */
    }
    #blog .col-sm-6 {
        margin-bottom: 20px;
    }
    #blog .col-sm-7 {
        flex: 0 0 58.333333%;
        max-width: 58.333333%;
    }
    #blog .col-sm-5 {
        flex: 0 0 41.666667%;
        max-width: 41.666667%;
    }
    #blog .card_2 a {
        padding: 6px;
    }
}


/* Food Showcase Section Styling */
#food-showcase-section {
    position: relative;
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
    padding: 80px 0; /* Adjust height/padding as needed */
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}

.food-showcase-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.65); /* Dark layout mask matching the image */
    z-index: 1;
}

#food-showcase-section .container {
    z-index: 2;
}

.food-showcase-title {
    font-family: 'EB Garamond' , sans-serif; /* Elegant serif look from reference */
    font-size: calc(2rem + 1.2vw);
    font-weight: 600;
    margin-bottom: 15px;
    letter-spacing: 0.5px;
}

.food-showcase-desc {
    font-size: 21px !important;
    font-weight: 300;
    line-height: 1.6;
    opacity: 0.9;
    max-width: 800px;
    margin: 0 auto 30px auto;
}

.food-showcase-btn {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    background-color: #0d6845; /* Brand matching deep emerald green */
    color: #ffffff !important;
    font-weight: 500;
    font-size: 1rem;
    padding: 12px 35px;
    border-radius: 12px;
    text-decoration: none !important;
    transition: background-color 0.3s ease, transform 0.2s ease;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2);
}

.food-showcase-btn:hover {
    background-color: #0a5236;
    transform: translateY(-2px);
}

.food-showcase-btn i {
    font-size: 1.1rem;
}

/* Responsive adjustments */
@media (max-width: 768px) {
    #food-showcase-section {
        padding: 60px 0;
    }
}

#app {
    margin-bottom: 0px;
}
#app .carousel-item img {
    object-fit: contain;
}
#app .carousel-caption {
    bottom: 100px;
    right: -15%;
}
@media only screen and (max-width: 768px) {
    #app .carousel-caption .app_a img {
        width: 20%;
    }
    #app .carousel-caption .app_g img {
        width: 18%;
    }
}
@media only screen and (max-width: 481px) {
    #app .carousel-caption .app_a img {
        width: 30%;
    }
    #app .carousel-caption .app_g img {
        width: 25%;
    }
    #app .carousel-caption {
        bottom: 0;
    }
}

/* Redesigned Footer Section Styles */
#footer {
    background-color: #1a1a1a;
    color: #a5a5a5;
    padding-top: 60px;
    padding-bottom: 0;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    border: none;
}
#footer h3 {
    text-transform: uppercase;
    color: #ffffff;
    font-family: 'EB Garamond' , sans-serif;
    font-weight: 400;
    font-size: 15px;
    letter-spacing: 2px;
    margin-bottom: 25px;
}
#footer .links_info ul {
    list-style: none;
    padding-left: 0;
    margin-bottom: 0;
}
#footer .links_info ul li {
    margin-bottom: 12px;
    width: 100%;
    float: none;
}
#footer .links_info ul li a {
    text-decoration: none;
    color: #a5a5a5;
    font-size: 16px !important;
    transition: color 0.2s ease;
    display: inline-flex;
    align-items: center;
}
#footer .links_info ul li a::before {
    content: '›';
    margin-right: 8px;
    color: #a5a5a5;
    font-size: 14px;
}
#footer .links_info ul li a:hover {
    color: #ffffff;
}
#footer .contact_us_info ul {
    display: flex;
    align-items: flex-start;
    list-style: none;
    padding-left: 0;
    margin-bottom: 15px;
}
#footer .contact_us_info ul li {
    color: #a5a5a5;
    font-size: 16px !important;
    line-height: 1.4;
}
#footer .contact_us_info ul li a {
    color: #a5a5a5;
    text-decoration: none;
    transition: color 0.2s ease;
}
#footer .contact_us_info ul li a:hover {
    color: #ffffff;
}
#footer .contact_us_info i {
    color: #ffffff;
    margin-right: 12px;
    font-size: 14px;
    width: 16px;
    text-align: center;
    margin-top: 2px;
}
#footer .opening_hours_info {
    display: flex;
    flex-direction: column;
    gap: 12px;
}
#footer .opening_hours_info .hours_row {
    display: flex;
    font-size: 13px;
}
#footer .opening_hours_info .days_col {
    width: 70px;
    color: #a5a5a5;
    font-weight: 500;
}
#footer .opening_hours_info .times_col {
    flex: 1;
}
#footer .opening_hours_info .times_col p {
    color: #a5a5a5;
    margin-bottom: 4px;
    line-height: 1;
}
#footer .opening_hours_info .times_col p:last-child {
    margin-bottom: 0;
}
#footer .footer_newsletter #newsletter_input {
    border: none;
    border-bottom: 1px solid #444444;
    width: 100%;
    font-size: 16px !important;
    outline: 0;
    background: none;
    color: #ffffff;
    margin-bottom: 20px;
    padding-bottom: 8px;
}
#footer .footer_newsletter #newsletter_input::placeholder {
    color: #666666;
}
#footer .footer_newsletter .newsletter-btn {
    width: 100%;
    border-radius: 12px;
    outline: 0;
    border: none;
    background-color: #0d7a46;
    color: #ffffff;
    font-weight: 600;
    font-size: 12px;
    letter-spacing: 1.5px;
    padding: 12px 20px;
    text-transform: uppercase;
    transition: background-color 0.2s ease;
}
#footer .footer_newsletter .newsletter-btn:hover {
    background-color: #0b663a;
}
.footer_divider {
    border-top: 1px solid #282828;
    margin-top: 40px;
    margin-bottom: 25px;
}
#copyright-footer {
    position: relative;
    margin-top: 0
    padding-bottom: 0; /* Cleared out to make room for bottom strip */
}
#copyright-footer .copyright_text {
    color: #888888;
    font-size: 16px !important;
    margin-bottom: 0;
}
#copyright-footer .footer_legal_links a {
    color: #888888;
    font-size: 16px !important;
    text-decoration: none;
    margin-left: 15px;
    transition: color 0.2s ease;
}
#copyright-footer .footer_legal_links a:hover {
    color: #ffffff;
}

/* Redesigned Bottom Panel Strip Match */

.footer_bottom_row_wrapper {
    width: 100%;
    background-color: #1a1a1a; /* Matches your footer color */
    border-bottom: 8px solid #0d7a46; /* Moving the green line here */
}

/* Update your existing .footer_bottom_row styles */
.footer_bottom_row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 30px;
    padding: 15px 0 25px 0;
    flex-wrap: wrap;
    gap: 20px;
    position: relative;
    /* border-bottom: 8px solid #0d7a46; <-- REMOVE OR COMMENT THIS OUT */
}

/* Customized Social Media Icons Styling */
.footer_bottom_row .copyright_social {
    text-align: right;
    display: flex;
    gap: 10px;
    margin-left: auto; /* Pushes content right */
    align-items: center;
}

.footer_bottom_row .copyright_social a {
    text-decoration: none;
    color: #a5a5a5;
    border: 1px solid #282828;
    background-color: #1f1f1f;
    border-radius: 50%;
    margin: 0;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    width: 32px;
    height: 32px;
    transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}

.footer_bottom_row .copyright_social a:hover {
    background-color: #333333;
    border-color: #555555;
    color: #ffffff;
}

.footer_bottom_row .copyright_social a i {
    font-size: 13px;
    width: auto;
    height: auto;
    display: inline-block;
}

/* Also update the responsive media query block down below */
@media only screen and (max-width: 992px) {
    .footer_bottom_row .copyright_social {
        margin-left: auto;
        margin-right: auto;
        justify-content: center;
        order: 1;
    }
}


.payment_methods_box {
    display: flex;
    align-items: center;
    gap: 12px;
}
.payment_methods_box .payment_title {
    font-size: 16px !important;
    color: #888888;
}
.payment_methods_box .gateways_img img {
    max-width: 115px;
    border-radius: 6px;
    display: block;
}
.map_button_wrapper {
    flex: 1;
    display: flex;
    justify-content: center;
    position: absolute;
    bottom: -8px; /* Anchor button frame directly over the green boundary line */
    left: 50%;
    transform: translateX(-50%);
    z-index: 10;
}
.find_us_btn {
    display: inline-flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    background-color: #0d7a46;
    color: #ffffff !important;
    text-decoration: none !important;
    padding: 14px 28px 10px 28px;
    border-radius: 20px 20px 0 0;
    font-size: 11px;
    font-weight: bold;
    letter-spacing: 1px;
    gap: 6px;
    cursor: pointer;
    min-width: 160px;
    box-shadow: 0 -4px 10px rgba(0, 0, 0, 0.3);
    transition: background-color 0.2s ease, transform 0.2s ease;
}
.find_us_btn:hover {
    background-color: #0b663a;
    transform: scale(1.02);
}

/* Customized SVG Icon Configurations */
.map_svg_icon {
    width: 26px;
    height: 26px;
    fill: #ffffff;
    display: block;
}

#copyright-footer .copyright_social {
    text-align: right;
    display: flex;
    gap: 10px;
    margin-left: auto; /* Pushes content right */
}
#copyright-footer .copyright_social a {
    text-decoration: none;
    color: #cccccc;
    border: 1px solid #2e2e2e;
    background-color: #242424;
    border-radius: 50%;
    margin: 0;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    width: 36px;
    height: 36px;
    transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}
#copyright-footer .copyright_social a:hover {
    background-color: #333333;
    border-color: #555555;
    color: #ffffff;
}
#copyright-footer .copyright_social a i {
    font-size: 14px;
    width: auto;
    height: auto;
    display: inline-block;
}

/* Responsive Overrides */
/* Responsive Overrides */
@media only screen and (max-width: 992px) {
    #footer {
        padding-top: 40px;
    }
    #footer .col-lg-3 {
        margin-bottom: 30px;
    }
    .footer_bottom_row {
        display: flex;
        flex-direction: column;
        align-items: center;
        text-align: center;
        gap: 25px; /* Adds clean spacing between elements */
        padding-bottom: 20px; /* Reduced since button is no longer absolutely floating */
        border-bottom: 8px solid #0d7a46;
    }
    #copyright-footer .copyright_social {
        margin-left: auto;
        margin-right: auto;
        justify-content: center;
        order: 1; /* Payment first, social second */
    }
    .payment_methods_box {
        justify-content: center;
        width: 100%;
        order: 0;
    }
    .map_button_wrapper {
        position: relative; /* Removes absolute positioning side effects */
        bottom: -28px; /* Shifts the tab downward to still sit nicely over the green line */
        left: 0;
        transform: none;
        width: 100%;
        order: 2; /* Forces map button to the very bottom */
    }
}

@media only screen and (max-width: 768px) {
    #copyright-footer .footer_legal_links a {
        margin: 0 8px;
    }
}

@media only screen and (max-width: 481px) {
    #footer h3 {
        text-align: left;
    }
    #footer .contact_us_info ul {
        justify-content: flex-start;
    }
}


#categories {
    margin-top: 290px;
    margin-bottom: 100px;
}
#categories .nav-tabs {
    border: 1px solid #ededed;
    border-radius: 90px;
    background: #f7f7f7;
}
#categories .nav-tabs .nav-link {
    color: #000000;
    background: none;
    border: 1px solid transparent;
    text-decoration: none;
    border-radius: 90px;
    font-family: "Hanken Grotesk", sans-serif;
    font-weight: 600;
    font-size: 19px;
}
#categories .nav-tabs .nav-link.active {
    color: #ffffff;
    background: #0C6C43;
    border: 1px solid #0C6C43;
}
#categories .preorder_alert {
    border-color: #9ec745;
    background: #9ec745;
    border-radius: 90px;
    color: #ffffff;
    font-family: "Hanken Grotesk", sans-serif;
    font-weight: 600;
    font-size: 17px;
    text-align: center;
    margin-bottom: 30px;
}
#categories .category_products {
    margin-top: 40px;
}
#categories .category_products .card {
    border-radius: 10px;
    border: 2px solid #f2f2f2;
}
#categories .category_products .card .img_hover_zoom {
    height: 272px;
    overflow: hidden;
    border-top-right-radius: 10px;
    border-top-left-radius: 10px;
}
#categories .category_products .card img {
    border-top-right-radius: 10px;
    border-top-left-radius: 10px;
    height: 272px;
    object-fit: cover;
    transition: transform 0.5s ease;
}
#categories .category_products .card:hover .img_hover_zoom img {
    transform: scale(1.2);
}
#categories .category_products .card .card-body {
    padding: 15px;
}
#categories .category_products .card .card-body h5 {
    font-family: "Hanken Grotesk", sans-serif;
    font-weight: 600;
    font-size: 26px;
    margin-bottom: 10px;
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
#categories .category_products .card .card-body p {
    font-family: "Roboto", sans-serif;
    font-size: 13px;
    margin-bottom: 10px;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
#categories .category_products .card .card-body h4 {
    font-family: "Hanken Grotesk", sans-serif;
    font-weight: 600;
    font-size: 25px;
    text-transform: uppercase;
    color: #0C6C43;
    margin-bottom: 0;
}
#categories .category_products .card .card-body a {
    font-size: 22px;
    color: #ffffff;
    background: #0C6C43;
    border-radius: 50%;
    padding: 3px 8px;
    display: inline-block;
    width: 40px;
    height: 40px;
}
#categories .cart_box .card {
    border-radius: 10px;
    border: 2px solid #f2f2f2;
}
#categories .cart_box .card .card-header {
    border: none;
    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
    background: #0C6C43;
    padding: 3px 15px;
}
#categories .cart_box .card .card-header p {
    color: #ffffff;
    font-family: "Hanken Grotesk", sans-serif;
    font-weight: 600;
    font-size: 30px;
    margin-bottom: 0;
    text-transform: uppercase;
}
#categories .cart_box .card .card-header img {
    object-fit: contain;
    height: auto;
    border-top-right-radius: 0;
    border-top-left-radius: 0;
}
#categories .cart_box .card .card-body {
    padding: 15px;
}
#categories .cart_box .card .card-body h5 {
    font-family: "Hanken Grotesk", sans-serif;
    font-weight: 600;
    font-size: 22px;
    color: #000000;
}
#categories .cart_box .card .card-body h6 {
    font-family: "Hanken Grotesk", sans-serif;
    font-weight: 600;
    font-size: 21px;
    color: #000000;
}
#categories .cart_box .card .list-group-item {
    border-left: none;
    border-right: none;
    padding: 20px 15px;
}
#categories .cart_box .card .list-group-item:first-child {
    border-top-left-radius: 0;
    border-top-right-radius: 0;
}
#categories .cart_box .card .list-group-item:last-child {
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
    border-bottom: 2px solid #000000;
}
#categories .cart_box .card .list-group-item h5 {
    font-family: "Hanken Grotesk", sans-serif;
    font-weight: 600;
    font-size: 18px;
    margin-bottom: 0;
}
#categories .cart_box .card .list-group-item h6 {
    font-family: "Poppins", sans-serif;
    font-weight: 500;
    font-size: 22px;
    color: #000000;
    margin-bottom: 0;
    display: flex;
    align-items: center;
    justify-content: flex-end;
}
#categories .cart_box .card .list-group-item h6 span {
    font-family: "Hanken Grotesk", sans-serif;
    font-weight: 600;
    font-size: 16px;
    color: #0C6C43;
}
#categories .cart_box .card .cart_total #cart_voucher {
    border: none;
    border-bottom: 1px solid #f5f5f5;
    width: 100%;
    font-family: "Poppins", sans-serif;
    font-weight: 500;
    font-size: 12px;
    outline: 0;
    padding-bottom: 20px;
}
#categories .cart_box .card .cart_total {
    padding: 15px;
    padding-top: 35px;
    padding-bottom: 25px;
}
#categories .cart_box .card .cart_total #cart_voucher::placeholder {
    color: #4f4f4f;
    opacity: 1;
}
#categories .cart_box .card .cart_total #cart_voucher:-ms-input-placeholder {
    color: #4f4f4f;
}
#categories .cart_box .card .cart_total #cart_voucher::-ms-input-placeholder {
    color: #4f4f4f;
}
#categories .cart_box .card .cart_total .cart-btn {
    color: #ffffff;
    width: 100%;
    background: #000000;
    border: 1px solid #000000;
    border-radius: 90px;
    padding: 5px 20px;
    font-family: "Poppins", sans-serif;
    font-weight: 500;
    font-size: 23px;
}
#categories .cart_box .card .cart_total p {
    font-family: "Poppins", sans-serif;
    font-weight: 500;
    font-size: 12px;
    color: #4f4f4f;
}
#categories .cart_box .card .cart_total h2 {
    font-family: "Poppins", sans-serif;
    font-weight: 500;
    font-size: 39px;
    color: #000000;
}
#categories .cart_box .card .cart_total .cart_order_btn {
    background: #0C6C43;
    border: 1px solid #0C6C43;
    border-radius: 90px;
    padding: 5px 30px;
    text-decoration: none;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-weight: 500;
    font-size: 30px;
}
#categories .cart_box .card .order_type_box {
    background: #efefef;
}
#categories .cart_box .card .order_type_box p {
    color: #000000;
    margin-bottom: 0;
    padding: 5px 15px;
    font-family: "Hanken Grotesk", sans-serif;
    font-weight: 600;
    font-size: 20px;
}
#categories .cart_box .card .order_type_box img {
    object-fit: contain;
    height: auto;
    border-top-right-radius: 0;
    border-top-left-radius: 0;
}
#categories .cart_box .card .order_type_box .oti {
    -webkit-transform: scaleX(-1);
    transform: scaleX(-1);
}
#categories .cart_box .card .btn-plus,
#categories .cart_box .card .btn-minus {
    border: 2px solid #000000;
    border-radius: 50%;
    color: #000000;
    width: 30px;
    height: 30px;
    padding: 0;
    min-width: 0 !important;
    font-size: 26px;
    display: flex;
    justify-content: center;
    align-items: center;
}
#categories .cart_box .card .input-group {
    width: 90px;
    margin-right: 5px;
}
#categories .cart_box .card .input-group .form-control {
    height: 30px;
    padding: 0;
    border: none;
    background: none;
    color: #000000;
}
@media only screen and (max-width: 992px) {
    #categories .cart_box .card .card-header p {
        font-size: 24px;
    }
    #categories .cart_box .card .card-body h5 {
        font-size: 18px;
    }
    #categories .cart_box .card .card-body h6 {
        font-size: 17px;
    }
    #categories .cart_box .card .order_type_box p {
        font-size: 16px;
        padding: 5px 8px;
    }
    #categories .cart_box .card .list-group-item h5 {
        font-size: 14px;
    }
    #categories .cart_box .card .list-group-item h6 span {
        font-size: 12px;
    }
    #categories .cart_box .card .cart_total .cart-btn {
        font-size: 18px;
    }
    #categories .cart_box .card .cart_total h2 {
        font-size: 24px;
    }
    #categories .cart_box .card .cart_total .cart_order_btn {
        font-size: 24px;
        white-space: nowrap;
    }
    #categories .category_products .tab-content .col-sm-4 {
        flex: 0 0 50%;
        max-width: 50%;
    }
    #categories .category_products .tab-content .col-sm-4 .card-body .col-sm-4 {
        flex: 0 0 33.333333%;
        max-width: 33.333333%;
    }
    #categories .nav-tabs .nav-link {
        font-size: 13px;
    }
}
@media only screen and (max-width: 768px) {
    #categories .preorder_alert {
        font-size: 14px;
    }
    #categories .cart_box .card .card-header p {
        font-size: 18px;
    }
    #categories .cart_box .card .card-body h5 {
        font-size: 16px;
    }
    #categories .cart_box .card .card-body h6 {
        font-size: 15px;
    }
    #categories .cart_box .card .list-group-item h6 {
        display: block;
    }
    #categories .cart_box .card .cart_total .cart-btn {
        font-size: 14px;
        padding: 5px 11px;
    }
    #categories .cart_box .card .cart_total p {
        font-size: 10px;
    }
    #categories .cart_box .card .cart_total h2 {
        font-size: 14px;
    }
    #categories .cart_box .card .cart_total .cart_order_btn {
        font-size: 16px;
        padding: 5px 30px;
    }
    #categories .nav-tabs {
        border-radius: 20px;
    }
}
@media only screen and (max-width: 481px) {
    #categories .category_products .tab-content .col-sm-4 {
        flex: 0 0 100%;
        max-width: 100%;
    }
    #categories .category_products .tab-content .col-sm-4 .card-body .col-sm-8 {
        flex: 0 0 66.666667%;
        max-width: 66.666667%;
    }
    #categories .cart_box .card .card-header .col-sm-8 {
        flex: 0 0 66.666667%;
        max-width: 66.666667%;
    }
    #categories .cart_box .card .card-header .col-sm-4 {
        flex: 0 0 33.333333%;
        max-width: 33.333333%;
    }
    #categories .cart_box .card .card-header p {
        font-size: 24px;
    }
    #categories .cart_box .card .card-body .col-sm-6 {
        flex: 0 0 50%;
        max-width: 50%;
    }
    #categories .cart_box .card .card-body h5 {
        font-size: 18px;
    }
    #categories .cart_box .card .card-body h6 {
        font-size: 17px;
    }
    #categories .cart_box .card .cart_total .col-sm-6 {
        flex: 0 0 50%;
        max-width: 50%;
    }
    #categories .list-group .col-sm-6 {
        flex: 0 0 50%;
        max-width: 50%;
    }
    #categories .cart_box .card .list-group-item h6 {
        display: flex;
    }
}
#inner-app {
    position: relative;
    z-index: 1;
    background: #0C6C43 !important;
    padding-bottom: 50px;
    padding-top: 50px;
}
#inner-app h5 {
    margin-bottom: 0;
    color: #ffffff;
    font-family: "Oswald", sans-serif;
    font-weight: 400;
    font-size: 32px;
}
#inner-app p {
    margin-bottom: 0;
    color: #ffffff;
    font-family: "Oswald", sans-serif;
    font-weight: 400;
    font-size: 28px;
}
#inner-app .inner_app_mobile {
    position: relative;
}
#inner-app .inner_app_mobile2 {
    position: absolute;
    z-index: 2;
    top: -128px;
}
#inner-app .inner_app_mobile2 img {
    max-width: 100%;
}
#inner-app .inner_app_ga img {
    max-width: 100%;
}
@media only screen and (max-width: 992px) {
    #inner-app h5 {
        font-size: 26px;
    }
    #inner-app p {
        font-size: 22px;
    }
    #inner-app .inner_app_mobile2 {
        top: -70px;
    }
}
@media only screen and (max-width: 768px) {
    #inner-app h5 {
        font-size: 20px;
    }
    #inner-app p {
        font-size: 16px;
    }
    #inner-app .inner_app_mobile2 {
        top: -44px;
    }
}
@media only screen and (max-width: 481px) {
    #inner-app .inner_app_mobile2 img {
        display: none;
    }
    #inner-app .inner_app_ga {
        text-align: center !important;
        margin-top: 10px;
    }
}
#inner-banner {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
}
#inner-banner .carousel-item {
    height: 340px;
}
#inner-banner .carousel-item img {
    height: 340px;
    object-fit: cover;
}
#inner-banner .carousel-item .carousel-caption h2 {
    font-family: "Hanken Grotesk", sans-serif;
    font-weight: 500;
    font-size: 53px;
}
#inner-banner .banner_overlay {
    background: rgba(0, 0, 0, 0.3);
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
#inner-banner .pattern_overlay {
    background: url("../images/pattern_overlay.png");
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
#inner-banner .carousel::before {
    content: "";
    background: url(../images/inner_banner_underlayer.png) center top no-repeat;
    width: 100%;
    position: absolute;
    left: 0;
    bottom: -4px;
    height: 40px;
    z-index: 9;
}
#inner-banner .breadcrumb {
    justify-content: center;
    background: none;
}
#inner-banner .breadcrumb li {
    font-family: "Poppins", sans-serif;
    font-weight: 400;
    font-size: 16px;
    color: #ffffff;
}
#inner-banner .breadcrumb li a {
    font-family: "Poppins", sans-serif;
    font-weight: 400;
    font-size: 16px;
    color: #ffffff;
}
#inner-banner .breadcrumb-item + .breadcrumb-item::before {
    font-family: "Font Awesome 5 Pro";
    font-weight: 300;
    content: "\f178";
    padding-right: 18px;
    padding-left: 18px;
    color: #ffffff;
}
.inner_about {
    margin-top: 290px;
    position: relative;
}
#ourstory {
    margin-top: 50px;
    margin-bottom: 50px;
}
#ourstory .story_bg {
    height: 445px;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
}
#ourstory .story_bg_info {
    display: flex;
    align-items: center;
    height: 445px;
    padding: 40px;
}
#ourstory .story_bg_info_1 h6 {
    font-family: "Hanken Grotesk", sans-serif;
    font-weight: 500;
    font-size: 16px;
    font-style: italic;
    color: #aaaaaa;
    margin-bottom: 0;
}
#ourstory .story_bg_info_1 h3 {
    font-family: "Hanken Grotesk", sans-serif;
    font-weight: 500;
    font-size: 38px;
    text-transform: uppercase;
    font-style: italic;
    color: #484848;
    margin-bottom: 20px;
}
#ourstory .story_bg_info_1 p {
    font-family: "Hanken Grotesk", sans-serif;
    font-weight: 500;
    font-size: 16px;
    color: #aaaaaa;
    text-align: justify;
}
#ourstory .story_bg_info_1 h5 {
    font-family: "Hanken Grotesk", sans-serif;
    font-weight: 500;
    font-size: 20px;
    color: #ff2e31;
    font-style: italic;
    margin-top: 40px;
}
#ourstory .story_bg_info_1 h4 {
    font-family: "Hanken Grotesk", sans-serif;
    font-weight: 500;
    font-size: 16px;
    color: #ff2e31;
}
@media only screen and (max-width: 768px) {
    #ourstory .story_bg_info {
        padding: 40px 10px;
    }
}
@media only screen and (max-width: 481px) {
    #ourstory {
        margin-top: 0;
        margin-bottom: 0;
    }
    #ourstory .story_bg_info {
        height: auto;
        min-height: 445px;
    }
    #ourstory .col-sm-6 {
        padding-left: 15px !important;
        padding-right: 15px !important;
        margin-bottom: 10px;
    }
}
#about_services {
    margin-top: 70px;
    margin-bottom: 70px;
}
#about_services .card {
    text-align: center;
    border: none;
}
#about_services .card .card-body {
    padding: 0;
}
#about_services .card h5 {
    font-family: "Hanken Grotesk", sans-serif;
    font-weight: 500;
    font-size: 30px;
    color: #383848;
    margin: 10px;
}
#about_services .card .services_card_img img {
    width: auto;
}
@media only screen and (max-width: 768px) {
    #about_services .card h5 {
        font-size: 25px;
    }
}
@media only screen and (max-width: 481px) {
    #about_services {
        margin-top: 20px;
        margin-bottom: 20px;
    }
    #about_services .card h5 {
        font-size: 30px;
    }
}
#about_video {
    margin-top: 70px;
    margin-bottom: 150px;
}
#about_video .video_wrapper iframe {
    width: 100%;
    height: 445px;
}
#about_video .video_wrapper {
    position: relative;
    background-color: #000;
    height: 445px;
}
#about_video .video_wrapper::before {
    font-family: "Font Awesome 5 Pro";
    font-weight: 900;
    content: "\f04b";
    position: absolute;
    color: #ffffff;
    z-index: 1;
    top: 50%;
    left: 50%;
}
#about_video .videoIframe {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: transparent;
}
#about_video .videoPoster {
    position: absolute;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
    background-image: url("../images/about_video_bg.png");
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
    border: none;
    text-indent: -999em;
    overflow: hidden;
    opacity: 1;
    -webkit-transition:
        opacity 800ms,
        height 0s;
    -moz-transition:
        opacity 800ms,
        height 0s;
    transition:
        opacity 800ms,
        height 0s;
    -webkit-transition-delay: 0s, 0s;
    -moz-transition-delay: 0s, 0s;
    transition-delay: 0s, 0s;
}
#about_video .videoPoster:hover {
    cursor: pointer;
}
#about_video .videoPoster::before {
    content: "";
    position: absolute;
    top: 160px;
    left: 327px;
    width: 150px;
    height: 150px;
    border: 2px solid #fff;
    border-radius: 100%;
}
#about_video .videoPoster::after {
    content: "";
    position: absolute;
    top: 42%;
    left: 354px;
    width: 0;
    height: 0;
    background: #0C6C43;
    border-radius: 100%;
    padding: 50px;
}
#about_video .videoWrapperActive .videoPoster {
    opacity: 0;
    height: 0;
    -webkit-transition-delay: 0s, 800ms;
    -moz-transition-delay: 0s, 800ms;
    transition-delay: 0s, 800ms;
}
@media only screen and (max-width: 992px) {
    #about_video .videoPoster::before {
        left: 162px;
    }
    #about_video .videoPoster::after {
        left: 188px;
    }
}
@media only screen and (max-width: 768px) {
    #about_video .videoPoster::before {
        left: 108px;
        top: 116px;
    }
    #about_video .videoPoster::after {
        left: 135px;
        top: 40%;
    }
    #about_video .video_wrapper {
        height: 350px;
    }
    #about_video .video_wrapper iframe {
        height: 350px;
    }
}
@media only screen and (max-width: 481px) {
    #about_video {
        margin-top: 20px;
        margin-bottom: 20px;
    }
    #about_video .videoPoster::before {
        left: 154px;
    }
    #about_video .videoPoster::after {
        left: 180px;
    }
}
#contact_info {
    margin-top: 300px;
    margin-bottom: 70px;
}
#contact_info .card {
    text-align: center;
    border: none;
    background-color: transparent;
}
#contact_info .card .card-body {
    padding: 0;
}
#contact_info .card h5 {
    font-family: "Hanken Grotesk", sans-serif;
    font-weight: 600;
    font-size: 30px;
    color: #333333;
    text-transform: uppercase;
    margin-top: 25px;
    margin-bottom: 15px;
}
#contact_info .card p {
    font-family: "Hanken Grotesk", sans-serif;
    font-weight: 500;
    font-size: 24px;
    color: #414141;
    margin-bottom: 0;
}
#contact_info .card a {
    font-family: "Hanken Grotesk", sans-serif;
    font-weight: 500;
    font-size: 24px;
    color: #414141;
    margin-bottom: 0;
}
#contact_info .card .services_card_img {
    display: flex;
    justify-content: center;
    align-items: center;
}
#contact_info .card .services_card_img .services_card_img_inner {
    display: flex;
    justify-content: center;
    align-items: center;
    border: 1px solid #0C6C43;
    border-radius: 100%;
    width: 130px;
    height: 130px;
}
#contact_info .card .services_card_img .services_card_img_inner img {
    width: auto;
}



#contact_info .card span {
    margin-left: 30px;
}
@media only screen and (max-width: 481px) {
    #contact_info {
        margin-bottom: 20px;
    }
    #contact_info .card {
        margin-bottom: 20px;
    }
    #contact_info .card .col-sm-6 {
        flex: 0 0 50%;
        max-width: 50%;
    }
    #contact_form .col-sm-7 {
        height: 500px;
    }
}
#contact_form {
    margin-bottom: 70px;
    background: #0C6C43;
}
#contact_form .contact_form_inner {
    width: 100%;
    padding: 50px 20% 50px 0;
}
#contact_form .contact_form_inner h4 {
    color: #ffffff;
    text-transform: uppercase;
    font-family: "Hanken Grotesk", sans-serif;
    font-weight: 600;
    font-size: 30px;
    margin-left: 30px;
    margin-bottom: 30px;
}
#contact_form .contact_form_inner .form-control {
    border-radius: 90px;
    background: transparent;
    border: 2px solid #ffffff;
    font-family: "Hanken Grotesk", sans-serif;
    font-weight: 600;
    font-size: 20px;
    padding: 28px 30px;
    color: #ffffff;
}
#contact_form .contact_form_inner .form-control:focus {
    box-shadow: 0 0 0 0.2rem rgba(255, 255, 255, 0.25);
}
#contact_form .contact_form_inner #message {
    border-radius: 10px;
    padding: 10px 30px;
    resize: none;
    color: #ffffff;
}
#contact_form .contact_form_inner .btn {
    width: 100%;
    text-align: center;
    text-transform: uppercase;
    color: #0C6C43;
    background: #ffffff;
    border-color: #ffffff;
    border-radius: 90px;
    font-family: "Hanken Grotesk", sans-serif;
    font-weight: 600;
    font-size: 30px;
    margin-top: 10px;
}
#contact_form .contact_form_inner .form-control::placeholder {
    color: #ffffff;
    opacity: 1;
}
#contact_form .contact_form_inner .form-control:-ms-input-placeholder {
    color: #ffffff;
}
#contact_form .contact_form_inner .form-control::-ms-input-placeholder {
    color: #ffffff;
}
#contact_form .contact_form_social {
    text-align: center;
    margin-top: 50px;
}
#contact_form .contact_form_social a {
    text-decoration: none;
    color: #ffffff;
    margin: 0 20px;
    font-size: 30px;
}
@media only screen and (max-width: 992px) {
    #contact_form .contact_form_inner {
        padding-right: 0;
    }
}
@media only screen and (max-width: 768px) {
    #contact_info .card h5 {
        font-size: 26px;
    }
    #contact_info .card p {
        font-size: 20px;
    }
    #contact_form .contact_form_social a {
        margin: 0 15px;
    }
}
#gallery {
    margin-top: 290px;
    margin-bottom: 100px;
}
#gallery .nav-tabs {
    border: 1px solid #ededed;
    border-radius: 90px;
    background: #f7f7f7;
    margin-bottom: 70px;
}
#gallery .nav-tabs .nav-link {
    color: #000000;
    background: none;
    border: 1px solid transparent;
    text-decoration: none;
    border-radius: 90px;
    font-family: "Hanken Grotesk", sans-serif;
    font-weight: 600;
    font-size: 19px;
}
#gallery .nav-tabs .nav-link.active {
    color: #ffffff;
    background: #0C6C43;
    border: 1px solid #0C6C43;
}
#gallery #gallery_image {
    position: relative;
    margin: 0 auto;
    width: 100%;
    height: 310px;
    text-align: center;
}
#gallery #gallery_image img {
    width: 100%;
    height: 310px;
    object-fit: cover;
}
#gallery #gallery_image .gallery_image_overlay_text {
    color: #ffffff;
    position: absolute;
    width: 100%;
    height: 100%;
    max-height: 100%;
    top: 0;
    left: 0;
    background: rgba(0, 0, 0, 0.75);
    opacity: 0;
    transition: all 0.5s;
    -webkit-transition: all 0.5s;
    margin: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 15px;
}
#gallery #gallery_image:hover > .gallery_image_overlay_text {
    opacity: 1;
}
#gallery #gallery_image .gallery_image_overlay_text .gallery_image_overlay_text_box {
    border: 1px solid #ffffff;
    width: 100%;
    height: 100%;
    padding: 15px;
}
#gallery #gallery_image .gallery_image_overlay_text .gallery_image_overlay_text_box h4 {
    color: #ffffff;
    font-family: "Hanken Grotesk", sans-serif;
    font-weight: 600;
    font-size: 26px;
}
#gallery #gallery_image .gallery_image_overlay_text .gallery_image_overlay_text_box i {
    font-size: 40px;
}
#gallery .tab-content .g-box {
    padding: 10px;
}
@media only screen and (max-width: 992px) {
    #gallery #gallery_image {
        height: 250px;
    }
    #gallery #gallery_image img {
        height: 250px;
    }
    #gallery .col-sm-6 {
        flex: 0 0 100%;
        max-width: 100%;
    }
}
@media only screen and (max-width: 768px) {
    #gallery #gallery_image {
        height: 200px;
    }
    #gallery #gallery_image img {
        height: 200px;
    }
}
@media only screen and (max-width: 481px) {
    #gallery .nav-tabs {
        border-radius: 25px;
    }
    #gallery #gallery_image {
        height: 310px;
    }
    #gallery #gallery_image img {
        height: 310px;
    }
}
#catering {
    margin-top: 290px;
    margin-bottom: 70px;
}
#catering .cart_box .card {
    border-radius: 10px;
    border: 2px solid #f2f2f2;
}
#catering .cart_box .card .card-header {
    border: none;
    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
    background: #0C6C43;
    padding: 3px 15px;
}
#catering .cart_box .card .card-header p {
    color: #ffffff;
    font-family: "Hanken Grotesk", sans-serif;
    font-weight: 600;
    font-size: 30px;
    margin-bottom: 0;
    text-transform: uppercase;
}
#catering .cart_box .card .card-header img {
    object-fit: contain;
    height: auto;
    border-top-right-radius: 0;
    border-top-left-radius: 0;
}
#catering .cart_box .card .card-body {
    padding: 15px;
}
#catering .cart_box .card .card-body h5 {
    font-family: "Hanken Grotesk", sans-serif;
    font-weight: 600;
    font-size: 22px;
    color: #000000;
}
#catering .cart_box .card h6 {
    font-family: "Hanken Grotesk", sans-serif;
    font-weight: 600;
    font-size: 25px;
    color: #0C6C43;
    margin-left: 15px;
}
#catering .cart_box .card .list-group-item {
    border-left: none;
    border-right: none;
    padding: 10px 15px;
}
#catering .cart_box .card .list-group-item:first-child {
    border-top-left-radius: 0;
    border-top-right-radius: 0;
}
#catering .cart_box .card .list-group-item:last-child {
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
    border-bottom: 2px solid #000000;
}
#catering .cart_box .card .list-group-item h5 {
    font-family: "Hanken Grotesk", sans-serif;
    font-weight: 600;
    font-size: 18px;
    margin-bottom: 0;
}
#catering .cart_box .card .list-group-item h6 {
    font-family: "Poppins", sans-serif;
    font-weight: 500;
    font-size: 22px;
    color: #000000;
    margin-bottom: 0;
    display: flex;
    align-items: center;
    justify-content: end;
}
#catering .cart_box .card .list-group-item h6 span {
    font-family: "Hanken Grotesk", sans-serif;
    font-weight: 600;
    font-size: 16px;
    color: #0C6C43;
}
#catering .cart_box .card .cart_total #cart_voucher {
    border: none;
    border-bottom: 1px solid #f5f5f5;
    width: 100%;
    font-family: "Poppins", sans-serif;
    font-weight: 500;
    font-size: 12px;
    outline: 0;
    padding-bottom: 20px;
}
#catering .cart_box .card .cart_total {
    padding: 15px;
    padding-top: 35px;
    padding-bottom: 25px;
}
#catering .cart_box .card .cart_total #cart_voucher::placeholder {
    color: #4f4f4f;
    opacity: 1;
}
#catering .cart_box .card .cart_total #cart_voucher:-ms-input-placeholder {
    color: #4f4f4f;
}
#catering .cart_box .card .cart_total #cart_voucher::-ms-input-placeholder {
    color: #4f4f4f;
}
#catering .cart_box .card .cart_total .cart-btn {
    color: #ffffff;
    width: 100%;
    background: #000000;
    border: 1px solid #000000;
    border-radius: 90px;
    padding: 5px 20px;
    font-family: "Poppins", sans-serif;
    font-weight: 500;
    font-size: 23px;
}
#catering .cart_box .card .cart_total p {
    font-family: "Poppins", sans-serif;
    font-weight: 500;
    font-size: 12px;
    color: #4f4f4f;
}
#catering .cart_box .card .cart_total h2 {
    font-family: "Poppins", sans-serif;
    font-weight: 500;
    font-size: 39px;
    color: #000000;
}
#catering .cart_box .card .cart_total .cart_order_btn {
    background: #0C6C43;
    border: 1px solid #0C6C43;
    border-radius: 90px;
    padding: 5px 90px;
    text-decoration: none;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-weight: 500;
    font-size: 30px;
}
#catering .cart_box .card .order_type_box {
    background: #efefef;
}
#catering .cart_box .card .order_type_box p {
    color: #000000;
    margin-bottom: 0;
    padding: 5px 15px;
    font-family: "Hanken Grotesk", sans-serif;
    font-weight: 600;
    font-size: 20px;
}
#catering .cart_box .card .order_type_box img {
    object-fit: contain;
    height: auto;
    border-top-right-radius: 0;
    border-top-left-radius: 0;
}
#catering .cart_box .card .btn-plus,
#catering .cart_box .card .btn-minus {
    border: 2px solid #000000;
    border-radius: 50%;
    color: #000000;
    width: 30px;
    height: 30px;
    padding: 0;
    min-width: 0 !important;
    font-size: 26px;
    display: flex;
    justify-content: center;
    align-items: center;
}
#catering .cart_box .card .input-group {
    width: 90px;
    margin-right: 5px;
}
#catering .cart_box .card .input-group .form-control {
    height: 30px;
    padding: 0;
    border: none;
    background: none;
    color: #000000;
}
#catering .cart_box .card .cart_total h5 {
    font-family: "Hanken Grotesk", sans-serif;
    font-weight: 600;
    font-size: 18px;
    margin-bottom: 0;
}
#catering .cart_box .card .cart_remove_btn {
    color: #000000;
    background: transparent;
    border: 2px solid #000000;
    border-radius: 50%;
    padding: 1px 7px;
}
#catering .cart_box .card .card-body .custom-switch .custom-control-label {
    font-family: "Hanken Grotesk", sans-serif;
    font-weight: 600;
    font-size: 18px;
}
#catering .cart_box .card .card-body .custom-switch .custom-control-label::before {
    box-shadow: none;
    background: #cccccc;
    border-color: #cccccc;
}
#catering .cart_box .card .card-body .custom-switch .custom-control-label::after {
    box-shadow: none;
    background: #ffffff;
    border-color: #ffffff;
}
#catering .cart_box .card .card-body .custom-switch .custom-control-input:checked ~ .custom-control-label::before {
    background: #32bea6;
    border-color: #32bea6;
}
#catering .cart_box .card .card-body .form-group label {
    color: #040404;
    font-family: "Hanken Grotesk", sans-serif;
    font-weight: 600;
    font-size: 18px;
}
#catering .cart_box .card .card-body .form-group .form-control {
    border-radius: 0;
    border-color: #efefef;
    background: #efefef;
    color: #040404;
    font-family: "Hanken Grotesk", sans-serif;
    font-weight: 400;
    font-size: 16px;
    box-shadow: none;
}
#catering .cart_box .card .card-body .form-group .sd-container {
    position: relative;
}
#catering .cart_box .card .card-body .form-group .open-button {
    position: absolute;
    top: 3px;
    right: 16px;
    width: 25px;
    height: 25px;
    pointer-events: none;
}
#catering .cart_box .card .card-body .form-group .open-button button {
    border: none;
    background: transparent;
}
#catering .cart_box .card .card-body .form-group .select_wrapper {
    position: relative;
}
#catering .cart_box .card .card-body .form-group .select_wrapper::after {
    font-family: "Font Awesome 5 Pro";
    font-weight: 900;
    content: "\f0dd";
    position: absolute;
    right: 10px;
    top: -2px;
    font-size: 22px;
}
#catering .cart_box .card .card-body .form-group select {
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    position: relative;
}
#catering .cart_box .card .card-body .form-group select::-ms-expand {
    display: none;
}
#catering .cat_card {
    border: none;
}
#catering .card-block {
    margin-left: 10px;
}
#catering .card-block p {
    color: #707070;
    font-family: "Hanken Grotesk", sans-serif;
    font-weight: 600;
    font-size: 18px;
    margin-bottom: 0;
    line-height: 1;
}
#catering .card-block h5 {
    color: #333333;
    font-family: "Hanken Grotesk", sans-serif;
    font-weight: 600;
    font-size: 20px;
}
#catering .card-block .catering_add_btn {
    background: #ffffff;
    border: 2px solid #c7d5dd;
    color: #0C6C43;
    border-radius: 50%;
    box-shadow: none;
    width: 32px;
    height: 32px;
    font-size: 18px;
    padding: 0;
}
#catering .cat_products_row .col-sm-6 {
    border-bottom: 2px solid #f2f2f2;
    padding-top: 15px;
    padding-bottom: 15px;
}
#catering .cat_products_row .col-sm-6:nth-last-child(2),
#catering .cat_products_row .col-sm-6:last-child {
    border-bottom: none;
}
#catering .cat_products_row .cat_card .cat_card_img {
    width: 50px;
}
#catering .cat_products_row .cat_card .cat_card_img img {
    border-radius: 50%;
    height: 50px;
    width: 50px;
    object-fit: cover;
}
#catering #first_cat_hr {
    border-top: 5px solid #e5e5e5;
    margin-right: -15px;
    width: 75%;
    margin-bottom: 50px;
    margin-top: 50px;
    position: relative;
}
#catering #first_cat_hr::before {
    font-family: "Font Awesome 5 Pro";
    font-weight: 900;
    content: "\f111";
    color: #fbbc05;
    position: absolute;
    top: -14px;
    left: -14px;
}
#catering #second_cat_hr {
    border-top: 5px solid #e5e5e5;
    margin-left: 0;
    width: 75%;
    margin-bottom: 50px;
    margin-top: 50px;
    position: relative;
}
#catering #second_cat_hr::after {
    font-family: "Font Awesome 5 Pro";
    font-weight: 900;
    content: "\f111";
    color: #fbbc05;
    position: absolute;
    top: -14px;
    right: -14px;
}
#catering .cat_menu_img {
    position: relative;
}
#catering .cat_menu_img img {
    max-width: 100%;
}
#catering .cat_menu_img .cat_menu_img_info {
    position: absolute;
    z-index: 1;
    top: 0;
    padding: 62px 32px 0px 45px;
}
#catering .cat_menu_img .cat_menu_img_info h4 {
    font-family: "Hanken Grotesk", sans-serif;
    font-weight: 600;
    font-size: 16px;
    color: #ffffff;
    margin-bottom: 0;
    line-height: 1;
    text-align: right;
}
#catering .cat_menu_img .cat_menu_img_info h5 {
    font-family: "Hanken Grotesk", sans-serif;
    font-weight: 600;
    font-size: 12px;
    text-transform: uppercase;
    color: #ffffff;
    text-align: right;
}
#catering .cat_menu_img .cat_menu_img_info h3 {
    font-family: "Hanken Grotesk", sans-serif;
    font-weight: 600;
    font-size: 25px;
    color: #ffffff;
}
#catering .cat_menu_img .cat_menu_img_info p {
    font-family: "Hanken Grotesk", sans-serif;
    font-weight: 500;
    font-size: 12px;
    text-transform: uppercase;
    color: #ffffff;
    margin-bottom: 0;
    padding-right: 42px;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
#catering .cat_menu_img .cat_menu_img_info2 {
    position: absolute;
    z-index: 1;
    top: 0;
    padding: 68px 38px 0px 82px;
}
#catering .cat_menu_img .cat_menu_img_info2 h4 {
    font-family: "Hanken Grotesk", sans-serif;
    font-weight: 600;
    font-size: 16px;
    color: #0C6C43;
    margin-bottom: 0;
    line-height: 1;
    text-align: right;
}
#catering .cat_menu_img .cat_menu_img_info2 h5 {
    font-family: "Hanken Grotesk", sans-serif;
    font-weight: 600;
    font-size: 12px;
    text-transform: uppercase;
    color: #1e1e1e;
    text-align: right;
}
#catering .cat_menu_img .cat_menu_img_info2 h3 {
    font-family: "Hanken Grotesk", sans-serif;
    font-weight: 600;
    font-size: 25px;
    color: #0C6C43;
}
#catering .cat_menu_img .cat_menu_img_info2 p {
    font-family: "Hanken Grotesk", sans-serif;
    font-weight: 500;
    font-size: 12px;
    text-transform: uppercase;
    color: #292929;
    margin-bottom: 0;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
#catering .cat_add_to_cart_row hr {
    border-top: 2px solid #000000;
}
#catering .cat_add_to_cart_row .cat_atc_btn {
    background-color: #0C6C43;
    border-color: #0C6C43;
    border-radius: 90px;
    padding: 3px 35px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-weight: 500;
    font-size: 30px;
    margin-top: 20px;
}
#catering .cat_add_to_cart_row h5 {
    color: #333333;
    font-family: "Hanken Grotesk", sans-serif;
    font-weight: 600;
    font-size: 20px;
}
#catering .cat_add_to_cart_row h4 {
    color: #040404;
    font-family: "Poppins", sans-serif;
    font-weight: 500;
    font-size: 25px;
}
#catering .cat_add_to_cart_row .custom-checkbox {
    height: 50px;
}
#catering .cat_add_to_cart_row .custom-checkbox input#catering_atc_status {
    display: none;
}
#catering .cat_add_to_cart_row .custom-checkbox input#catering_atc_status + label {
    height: 100%;
    width: 100%;
}
#catering .cat_add_to_cart_row .custom-checkbox input#catering_atc_status + label > .status-switch {
    cursor: pointer;
    width: 100%;
    height: 100%;
    position: relative;
    background-color: transparent;
    border: 1px solid #0C6C43;
    color: #333333;
    transition: all 0.5s ease;
    padding: 0;
    border-radius: 90px;
    font-family: "Hanken Grotesk", sans-serif;
    font-weight: 600;
    font-size: 15px;
}
#catering .cat_add_to_cart_row .custom-checkbox input#catering_atc_status + label > .status-switch::before,
#catering .cat_add_to_cart_row .custom-checkbox input#catering_atc_status + label > .status-switch::after {
    border-radius: 90px;
    height: 100%;
    width: 50%;
    display: flex;
    align-items: center;
    position: absolute;
    justify-content: center;
    transition: all 0.3s ease;
}
#catering .cat_add_to_cart_row .custom-checkbox input#catering_atc_status + label > .status-switch::before {
    background-color: #0C6C43;
    color: #ffffff;
    left: 0px;
    z-index: 10;
    content: attr(data-unchecked);
}
#catering .cat_add_to_cart_row .custom-checkbox input#catering_atc_status + label > .status-switch::after {
    right: 0;
    content: attr(data-checked);
}
#catering .cat_add_to_cart_row .custom-checkbox input#catering_atc_status:checked + label > .status-switch {
    background-color: transparent;
    border: 1px solid #0C6C43;
}
#catering .cat_add_to_cart_row .custom-checkbox input#catering_atc_status:checked + label > .status-switch::after {
    left: 0;
    content: attr(data-unchecked);
}
#catering .cat_add_to_cart_row .custom-checkbox input#catering_atc_status:checked + label > .status-switch::before {
    color: #ffffff;
    left: 50%;
    content: attr(data-checked);
}
#catering .cat_add_to_cart_row .btn-plus,
#catering .cat_add_to_cart_row .btn-minus {
    border: 2px solid #000000;
    border-radius: 50%;
    color: #000000;
    width: 30px;
    height: 30px;
    padding: 0;
    min-width: 0 !important;
    font-size: 26px;
    display: flex;
    justify-content: center;
    align-items: center;
    padding-bottom: 5px;
}
#catering .cat_add_to_cart_row .input-group {
    width: 90px;
    margin-right: 5px;
}
#catering .cat_add_to_cart_row .input-group .form-control {
    height: 30px;
    padding: 0;
    border: none;
    background: none;
    color: #000000;
}
#catering .cat_suggestion_row .card {
    border: none;
}
#catering .cat_suggestion_row .card .cat_suggestion_row_img {
    text-align: center;
}
#catering .cat_suggestion_row .card .cat_suggestion_row_img img {
    border-radius: 50%;
    object-fit: cover;
    width: 100px;
    height: 100px;
    border: 1px solid #e05763;
}
#catering .cat_suggestion_row .card .card-body {
    padding: 10px 0 0 0;
    text-align: center;
}
#catering .cat_suggestion_row .card .card-body h5 {
    color: #333333;
    font-family: "Hanken Grotesk", sans-serif;
    font-weight: 600;
    font-size: 20px;
    margin-bottom: 0;
}
.checkbox_container {
    display: block;
    position: relative;
    padding-left: 35px;
    margin-bottom: 30px;
    cursor: pointer;
    font-size: 22px;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}
.checkbox_container input {
    position: absolute;
    opacity: 0;
    cursor: pointer;
    height: 0;
    width: 0;
}
.checkmark {
    position: absolute;
    top: 0;
    right: 0;
    height: 30px;
    width: 30px;
    border-radius: 50%;
    border: 2px solid #0C6C43;
    background-color: transparent;
}
#checkbox_checkmark.checkmark {
    border-radius: 4px;
}
.checkbox_container:hover input ~ .checkmark {
    background-color: transparent;
}
.checkbox_container input:checked ~ .checkmark {
    background-color: #32bea6;
    border-color: #32bea6;
}
.checkmark:after {
    content: "";
    position: absolute;
    display: none;
}
.checkbox_container input:checked ~ .checkmark:after {
    display: block;
}
.checkbox_container .checkmark:after {
    left: 9px;
    top: 4px;
    width: 8px;
    height: 15px;
    border: solid white;
    border-width: 0 3px 3px 0;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
}
#catering .cat_products_row sup {
    color: #0C6C43;
}
@media only screen and (max-width: 992px) {
    #catering .cart_box .card .card-header p {
        font-size: 24px;
    }
    #catering .cart_box .card .card-body h5 {
        font-size: 18px;
    }
    #catering .cart_box .card .card-body h6 {
        font-size: 17px;
    }
    #catering .cart_box .card .order_type_box p {
        font-size: 16px;
        padding: 5px 8px;
    }
    #catering .cart_box .card .list-group-item h5 {
        font-size: 14px;
    }
    #catering .cart_box .card .cart_total h5 {
        font-size: 14px;
    }
    #catering .cart_box .card .list-group-item h6 span {
        font-size: 12px;
    }
    #catering .cart_box .card .cart_total .cart-btn {
        font-size: 18px;
    }
    #catering .cart_box .card .cart_total h2 {
        font-size: 24px;
    }
    #catering .cart_box .card .cart_total .cart_order_btn {
        font-size: 24px;
    }
    #catering .cat_pro_resp {
        margin-left: 0;
    }
    #catering .cat_pro_resp .col-sm-8 {
        flex: 0 0 100%;
        max-width: 100%;
    }
    #catering .cat_pro_resp .col-sm-4 {
        flex: 0 0 100%;
        max-width: 100%;
    }
    #catering .cat_pro_resp2 {
        flex-direction: column-reverse;
    }
    #catering .cat_menu_img {
        text-align: center;
    }
    #catering .cat_menu_img .cat_menu_img_info {
        text-align: left;
        padding: 100px 158px 0px 172px;
    }
    #catering .cat_menu_img .cat_menu_img_info h4 {
        font-size: 21px;
    }
    #catering .cat_menu_img .cat_menu_img_info h5 {
        font-size: 16px;
    }
    #catering .cat_menu_img .cat_menu_img_info h3 {
        font-size: 30px;
    }
    #catering .cat_menu_img .cat_menu_img_info p {
        font-size: 16px;
    }
    #catering .cat_menu_img .cat_menu_img_info2 {
        text-align: left;
        padding: 105px 158px 0px 210px;
    }
    #catering .cat_menu_img .cat_menu_img_info2 h4 {
        font-size: 21px;
    }
    #catering .cat_menu_img .cat_menu_img_info2 h5 {
        font-size: 16px;
    }
    #catering .cat_menu_img .cat_menu_img_info2 h3 {
        font-size: 30px;
    }
    #catering .cat_menu_img .cat_menu_img_info2 p {
        font-size: 16px;
    }
    #catering .cat_suggestion_row .col-sm-8 {
        flex: 0 0 100%;
        max-width: 100%;
    }
    #catering .cat_add_to_cart_row .col-sm-5 {
        flex: 0 0 66.666667%;
        max-width: 66.666667%;
    }
    #catering .cat_add_to_cart_row .cat_atc_btn {
        font-size: 24px;
    }
    #catering .cart_box .card .card-body .col-sm-6 {
        flex: 0 0 100%;
        max-width: 100%;
    }
}
@media only screen and (max-width: 768px) {
    #catering .cart_box .card .card-header p {
        font-size: 18px;
    }
    #catering .cart_box .card .card-body h5 {
        font-size: 16px;
    }
    #catering .cart_box .card .card-body h6 {
        font-size: 15px;
    }
    #catering .cart_box .card .list-group-item h6 {
        display: block;
    }
    #catering .cart_box .card .cart_total .cart-btn {
        font-size: 14px;
        padding: 5px 11px;
    }
    #catering .cart_box .card .cart_total p {
        font-size: 10px;
    }
    #catering .cart_box .card .cart_total h2 {
        font-size: 14px;
    }
    #catering .cart_box .card .cart_total .cart_order_btn {
        font-size: 16px;
        padding: 5px 65px;
    }
    #catering .cart_box .card .card-body .custom-switch .custom-control-label {
        font-size: 14px;
    }
    #catering .cart_box .card .list-group-item .col-sm-10 {
        flex: 0 0 66.666667%;
        max-width: 66.666667%;
    }
    #catering .cart_box .card .list-group-item .col-sm-2 {
        flex: 0 0 33.333333%;
        max-width: 33.333333%;
    }
    #catering .cat_products_row .col-sm-6 {
        flex: 0 0 100%;
        max-width: 100%;
    }
    #catering .cat_products_row .col-sm-6:nth-last-child(2) {
        border-bottom: 2px solid #f2f2f2;
    }
    #catering .cat_add_to_cart_row .col-sm-5 {
        flex: 0 0 83.333333%;
        max-width: 83.333333%;
    }
    #catering .cat_menu_img .cat_menu_img_info {
        padding: 102px 82px 0px 90px;
    }
    #catering .cat_menu_img .cat_menu_img_info2 {
        padding: 105px 82px 0px 132px;
    }
}
@media only screen and (max-width: 481px) {
    #catering .cart_box .card .card-header .col-sm-8 {
        flex: 0 0 66.666667%;
        max-width: 66.666667%;
    }
    #catering .cart_box .card .card-header .col-sm-4 {
        flex: 0 0 33.333333%;
        max-width: 33.333333%;
    }
    #catering .cart_box .card .card-header p {
        font-size: 24px;
    }
    #catering .cart_box .card .card-body h5 {
        font-size: 18px;
    }
    #catering .cart_box .card .card-body h6 {
        font-size: 17px;
    }
    #catering .cart_box .card .cart_total .col-sm-6 {
        flex: 0 0 50%;
        max-width: 50%;
    }
    #catering .list-group .col-sm-6 {
        flex: 0 0 50%;
        max-width: 50%;
    }
    #catering .cart_box .card .list-group-item h6 {
        display: flex;
    }
    #catering .cat_menu_img .cat_menu_img_info {
        padding: 72px 40px 0px 50px;
    }
    #catering .cat_menu_img .cat_menu_img_info h4 {
        font-size: 16px;
    }
    #catering .cat_menu_img .cat_menu_img_info h5 {
        font-size: 12px;
    }
    #catering .cat_menu_img .cat_menu_img_info h3 {
        font-size: 25px;
    }
    #catering .cat_menu_img .cat_menu_img_info p {
        font-size: 12px;
    }
    #catering .cat_menu_img .cat_menu_img_info2 {
        padding: 80px 40px 0px 82px;
    }
    #catering .cat_menu_img .cat_menu_img_info2 h4 {
        font-size: 16px;
    }
    #catering .cat_menu_img .cat_menu_img_info2 h5 {
        font-size: 12px;
    }
    #catering .cat_menu_img .cat_menu_img_info2 h3 {
        font-size: 25px;
    }
    #catering .cat_menu_img .cat_menu_img_info2 p {
        font-size: 12px;
    }
    #catering .cat_pro_resp {
        margin-right: 0;
    }
    #catering .cat_card .col-sm-2 {
        flex: 0 0 16.666667%;
        max-width: 16.666667%;
    }
    #catering .cat_card .col-sm-10 {
        flex: 0 0 83.333333%;
        max-width: 83.333333%;
    }
    #catering .card-block .col-sm-9 {
        flex: 0 0 75%;
        max-width: 75%;
    }
    #catering .card-block .col-sm-3 {
        flex: 0 0 25%;
        max-width: 25%;
    }
    #catering #second_cat_hr {
        margin-left: -15px;
    }
    #catering .cat_suggestion_row .col-sm-3 {
        flex: 0 0 50%;
        max-width: 50%;
    }
    #catering .cat_add_to_cart_row .col-sm-5 {
        flex: 0 0 100%;
        max-width: 100%;
    }
    #catering .cat_add_to_cart_row .col-sm-6 {
        flex: 0 0 50%;
        max-width: 50%;
    }
    #catering .cat_add_to_cart_row .col-sm-4 {
        flex: 0 0 33.333333%;
        max-width: 33.333333%;
    }
    #catering .cat_add_to_cart_row .col-sm-8 {
        flex: 0 0 66.666667%;
        max-width: 66.666667%;
    }
}
.modal-backdrop.show {
    background: #1d222b;
    opacity: 0.9;
}
#cateringModal {
    top: 50px;
}
#cateringModal .modal-content {
    border-radius: 0;
    border: 10px solid #0C6C43;
    padding: 10px;
}
#cateringModal .modal-content .modal-body {
    border: 1px solid #ededed;
    padding: 0;
}
#cateringModal .modal-content .modal-body button.close {
    background-color: #ededed;
    color: #101010;
    opacity: 1;
    padding: 0 7px 5px 7px;
    font-weight: 400;
    font-size: 30px;
}
#cateringModal .cateringModal_box {
    text-align: center;
    padding: 30px 50px 20px 50px;
}
#cateringModal .cateringModal_box h4 {
    text-transform: uppercase;
    color: #333333;
    font-family: "Hanken Grotesk", sans-serif;
    font-weight: 600;
    font-size: 36px;
}
#cateringModal .cateringModal_box .cateringModal_btn {
    width: 100%;
    text-transform: uppercase;
    background-color: #0C6C43;
    border-color: #0C6C43;
    border-radius: 90px;
    padding: 3px;
    color: #ffffff;
    font-family: "Hanken Grotesk", sans-serif;
    font-weight: 500;
    font-size: 30px;
    margin-top: 30px;
}
#cateringModal .custom-checkbox {
    height: 50px;
    margin-bottom: 30px;
    margin-top: 50px;
}
#cateringModal .custom-checkbox input#catering_status {
    display: none;
}
#cateringModal .custom-checkbox input#catering_status + label {
    height: 100%;
    width: 100%;
}
#cateringModal .custom-checkbox input#catering_status + label > .status-switch {
    cursor: pointer;
    width: 100%;
    height: 100%;
    position: relative;
    background-color: transparent;
    border: 1px solid #0C6C43;
    color: #333333;
    transition: all 0.5s ease;
    padding: 0;
    border-radius: 90px;
    font-family: "Hanken Grotesk", sans-serif;
    font-weight: 600;
    font-size: 20px;
}
#cateringModal .custom-checkbox input#catering_status + label > .status-switch::before,
#cateringModal .custom-checkbox input#catering_status + label > .status-switch::after {
    border-radius: 90px;
    height: 100%;
    width: 50%;
    display: flex;
    align-items: center;
    position: absolute;
    justify-content: center;
    transition: all 0.3s ease;
}
#cateringModal .custom-checkbox input#catering_status + label > .status-switch::before {
    background-color: #0C6C43;
    color: #ffffff;
    left: 0px;
    z-index: 10;
    content: attr(data-unchecked);
}
#cateringModal .custom-checkbox input#catering_status + label > .status-switch::after {
    right: 0;
    content: attr(data-checked);
}
#cateringModal .custom-checkbox input#catering_status:checked + label > .status-switch {
    background-color: transparent;
    border: 1px solid #0C6C43;
}
#cateringModal .custom-checkbox input#catering_status:checked + label > .status-switch::after {
    left: 0;
    content: attr(data-unchecked);
}
#cateringModal .custom-checkbox input#catering_status:checked + label > .status-switch::before {
    color: #ffffff;
    left: 50%;
    content: attr(data-checked);
}
#cateringModal .btn-plus,
#cateringModal .btn-minus {
    border: 2px solid #dee6eb;
    border-radius: 50%;
    color: #0C6C43;
    width: 30px;
    height: 30px;
    padding: 0;
    min-width: 0 !important;
    font-size: 26px;
    display: flex;
    justify-content: center;
    align-items: center;
    padding-bottom: 5px;
}
#cateringModal .input-group {
    width: 90px;
    margin-right: 5px;
}
#cateringModal .input-group .form-control {
    height: 30px;
    padding: 0;
    border: none;
    background: none;
    color: #000000;
}
@media only screen and (max-width: 481px) {
    #cateringModal .cateringModal_box {
        padding: 30px 10px 20px 10px;
    }
    #cateringModal .cateringModal_box h4 {
        font-size: 26px;
    }
    #cateringModal .cateringModal_box .col-sm-6 {
        flex: 0 0 50%;
        max-width: 50%;
    }
    #cateringModal .cateringModal_box .cateringModal_btn {
        font-size: 22px;
    }
    #cateringModal .custom-checkbox {
        height: 40px;
    }
    #cateringModal .custom-checkbox input#catering_status + label > .status-switch {
        font-size: 16px;
    }
}
.modal-backdrop.show {
    background: #1d222b;
    opacity: 0.9;
}
#mapsModal {
    top: 50px;
}
#mapsModal .modal-content {
    border-radius: 0;
    border: 10px solid #0C6C43;
    padding: 10px;
}
#mapsModal .modal-content .modal-body {
    border: 1px solid #ededed;
    padding: 0;
}
#mapsModal .modal-content .modal-body button.close {
    background-color: #ededed;
    color: #101010;
    opacity: 1;
    padding: 0 7px 5px 7px;
    font-weight: 400;
    font-size: 30px;
}
#mapsModal .cateringModal_box {
    text-align: center;
    padding: 30px 50px 20px 50px;
}
@media only screen and (max-width: 481px) {
    #mapsModal .cateringModal_box {
        padding: 30px 10px 20px 10px;
    }
}
.swal2-popup {
    border-radius: 0 !important;
    border: 10px solid #0C6C43 !important;
    padding: 10px !important;
}
.swal2-header {
    border: 1px solid #ededed;
    border-bottom: none;
}
.swal2-content {
    border: 1px solid #ededed;
    border-top: none;
    border-bottom: none;
    font-family: "Hanken Grotesk", sans-serif;
    font-size: 22px !important;
}
.swal2-actions {
    border: 1px solid #ededed;
    border-top: none;
    padding-bottom: 15px;
}
.swal2-styled.swal2-confirm {
    border-radius: 90px !important;
    border: 1px solid #0C6C43 !important;
    background: #0C6C43 !important;
    color: #ffffff !important;
    font-family: "Hanken Grotesk", sans-serif;
    font-weight: 600;
    font-size: 26px !important;
    outline: 0 !important;
    box-shadow: none !important;
    padding-top: 5px !important;
    padding-bottom: 5px !important;
}
.swal2-title {
    color: #333333 !important;
    font-family: "Hanken Grotesk", sans-serif;
    font-weight: 600 !important;
    font-size: 36px !important;
}
#checkout {
    margin-top: 290px;
    margin-bottom: 100px;
}
#checkout .preorder_alert {
    border-color: #9ec745;
    background: #9ec745;
    border-radius: 90px;
    color: #ffffff;
    font-family: "Hanken Grotesk", sans-serif;
    font-weight: 600;
    font-size: 17px;
    text-align: center;
    margin-bottom: 30px;
}
#checkout .category_products {
}
#checkout .cart_box .card {
    border-radius: 10px;
    border: 2px solid #f2f2f2;
}
#checkout .cart_box .card .card-header {
    border: none;
    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
    background: #0C6C43;
    padding: 3px 15px;
}
#checkout .cart_box .card .card-header p {
    color: #ffffff;
    font-family: "Hanken Grotesk", sans-serif;
    font-weight: 600;
    font-size: 30px;
    margin-bottom: 0;
    text-transform: uppercase;
}
#checkout .cart_box .card .card-header img {
    object-fit: contain;
    height: auto;
    border-top-right-radius: 0;
    border-top-left-radius: 0;
}
#checkout .cart_box .card .card-body {
    padding: 15px;
}
#checkout .cart_box .card .card-body h5 {
    font-family: "Hanken Grotesk", sans-serif;
    font-weight: 600;
    font-size: 22px;
    color: #000000;
}
#checkout .cart_box .card .card-body h6 {
    font-family: "Hanken Grotesk", sans-serif;
    font-weight: 600;
    font-size: 21px;
    color: #000000;
}
#checkout .cart_box .card .card-body .register_advantages h6 {
    font-size: 16px;
    font-weight: 600;
}
#checkout .cart_box .card .card-body .register_advantages h5 {
    font-size: 16px;
    font-weight: 400;
}
#checkout .cart_box .card .list-group-item {
    border-left: none;
    border-right: none;
    padding: 20px 15px;
}
#checkout .cart_box .card .list-group-item:first-child {
    border-top-left-radius: 0;
    border-top-right-radius: 0;
}
#checkout .cart_box .card .list-group-item:last-child {
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
    border-bottom: 2px solid #000000;
}
#checkout .cart_box .card .list-group-item h5 {
    font-family: "Hanken Grotesk", sans-serif;
    font-weight: 600;
    font-size: 18px;
    margin-bottom: 0;
}
#checkout .cart_box .card .list-group-item h6 {
    font-family: "Poppins", sans-serif;
    font-weight: 500;
    font-size: 22px;
    color: #000000;
    margin-bottom: 0;
    display: flex;
    align-items: center;
    justify-content: flex-end;
}
#checkout .cart_box .card .list-group-item h6 span {
    font-family: "Hanken Grotesk", sans-serif;
    font-weight: 600;
    font-size: 16px;
    color: #0C6C43;
}
#checkout .cart_box .card .cart_total #cart_voucher {
    border: none;
    border-bottom: 1px solid #f5f5f5;
    width: 100%;
    font-family: "Poppins", sans-serif;
    font-weight: 500;
    font-size: 12px;
    outline: 0;
    padding-bottom: 20px;
}
#checkout .cart_box .card .cart_total {
    padding: 15px;
    padding-top: 35px;
    padding-bottom: 25px;
}
#checkout .cart_box .card .cart_total #cart_voucher::placeholder {
    color: #4f4f4f;
    opacity: 1;
}
#checkout .cart_box .card .cart_total #cart_voucher:-ms-input-placeholder {
    color: #4f4f4f;
}
#checkout .cart_box .card .cart_total #cart_voucher::-ms-input-placeholder {
    color: #4f4f4f;
}
#checkout .cart_box .card .cart_total .cart-btn {
    color: #ffffff;
    width: 100%;
    background: #000000;
    border: 1px solid #000000;
    border-radius: 90px;
    padding: 5px 20px;
    font-family: "Poppins", sans-serif;
    font-weight: 500;
    font-size: 23px;
}
#checkout .cart_box .card .cart_total p {
    font-family: "Poppins", sans-serif;
    font-weight: 500;
    font-size: 12px;
    color: #4f4f4f;
}
#checkout .cart_box .card .cart_total h2 {
    font-family: "Poppins", sans-serif;
    font-weight: 500;
    font-size: 39px;
    color: #000000;
}
#checkout .cart_box .card .cart_total .cart_order_btn {
    background: #0C6C43;
    border: 1px solid #0C6C43;
    border-radius: 90px;
    padding: 5px 90px;
    text-decoration: none;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-weight: 500;
    font-size: 30px;
}
#checkout .cart_box .card .order_type_box {
    background: #efefef;
}
#checkout .cart_box .card .order_type_box p {
    color: #000000;
    margin-bottom: 0;
    padding: 5px 15px;
    font-family: "Hanken Grotesk", sans-serif;
    font-weight: 600;
    font-size: 20px;
}
#checkout .cart_box .card .order_type_box img {
    object-fit: contain;
    height: auto;
    border-top-right-radius: 0;
    border-top-left-radius: 0;
}
#checkout .cart_box .card .order_type_box .oti {
    -webkit-transform: scaleX(-1);
    transform: scaleX(-1);
}
#checkout .cart_box .card .btn-plus,
#checkout .cart_box .card .btn-minus {
    border: 2px solid #000000;
    border-radius: 50%;
    color: #000000;
    width: 30px;
    height: 30px;
    padding: 0;
    min-width: 0 !important;
    font-size: 26px;
    display: flex;
    justify-content: center;
    align-items: center;
}
#checkout .cart_box .card .input-group {
    width: 90px;
    margin-right: 5px;
}
#checkout .cart_box .card .input-group .form-control {
    height: 30px;
    padding: 0;
    border: none;
    background: none;
    color: #000000;
}
#checkout .cart_box .card .card-body .form-group label {
    color: #040404;
    font-family: "Hanken Grotesk", sans-serif;
    font-weight: 600;
    font-size: 18px;
}
#checkout .cart_box .card .card-body .form-group .form-control {
    border-radius: 0;
    border-color: #efefef;
    background: #efefef;
    color: #040404;
    font-family: "Hanken Grotesk", sans-serif;
    font-weight: 400;
    font-size: 16px;
    box-shadow: none;
}
#checkout .cart_box .card .card-body .form-group .sd-container {
    position: relative;
}
#checkout .cart_box .card .card-body .form-group .open-button {
    position: absolute;
    top: 3px;
    right: 16px;
    width: 25px;
    height: 25px;
    pointer-events: none;
}
#checkout .cart_box .card .card-body .form-group .open-button button {
    border: none;
    background: transparent;
}
#checkout .cart_box .card .card-body .form-group .select_wrapper {
    position: relative;
}
#checkout .cart_box .card .card-body .form-group .select_wrapper::after {
    font-family: "Font Awesome 5 Pro";
    font-weight: 900;
    content: "\f0dd";
    position: absolute;
    right: 10px;
    top: -2px;
    font-size: 22px;
}
#checkout .cart_box .card .card-body .form-group select {
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    position: relative;
}
#checkout .cart_box .card .card-body .form-group select::-ms-expand {
    display: none;
}
#checkout .checkout_form {
    padding-left: 15px;
    padding-right: 100px;
}
#checkout .checkout_form .checkbox_container {
    display: initial;
}
#checkout .checkout_form .checkmark {
    top: 2px;
}
#checkout .checkout_form .title_label {
    color: #040404;
    font-family: "Hanken Grotesk", sans-serif;
    font-weight: 600;
    font-size: 20px;
    margin-left: 10px;
    margin-right: 20px;
    cursor: pointer;
    display: initial;
}
#checkout .checkout_form .custom_form_group {
    position: relative;
    margin-top: 25px;
}
#checkout .checkout_form .custom_form_group label {
    position: absolute;
    z-index: 9;
    font-family: "Hanken Grotesk", sans-serif;
    font-weight: 500;
    font-size: 17px;
    color: #474747;
    background: #ffffff;
    top: -12px;
    left: 20px;
    padding-left: 10px;
    padding-right: 10px;
}
#checkout .checkout_form .custom_form_group .form-control {
    border-radius: 90px;
    border-color: #0C6C43;
    font-family: "Hanken Grotesk", sans-serif;
    font-weight: 600;
    font-size: 20px;
    color: #040404;
    padding: 25px 30px;
}
#checkout .checkout_form .custom_form_group .form-control:focus {
    box-shadow: none;
    border-color: #0C6C43;
}
#checkout .checkout_form .custom_form_group .form-control::placeholder {
    color: #999999;
    opacity: 1;
}
#checkout .checkout_form .custom_form_group .form-control:-ms-input-placeholder {
    color: #999999;
}
#checkout .checkout_form .custom_form_group .form-control::-ms-input-placeholder {
    color: #999999;
}
#checkout .checkout_form h6 {
    font-family: "Hanken Grotesk", sans-serif;
    font-weight: 600;
    font-size: 20px;
    color: #333333;
    margin-left: 30px;
    margin-top: 5px;
}
#checkout .checkout_form h2 {
    font-family: "Hanken Grotesk", sans-serif;
    font-weight: 600;
    font-size: 26px;
    color: #040404;
    margin-top: 40px;
}
#checkout .checkout_form h5 {
    font-family: "Hanken Grotesk", sans-serif;
    font-weight: 600;
    font-size: 20px;
    color: #333333;
}
#checkout .checkout_form .agreement_section {
    margin-top: 70px;
    margin-bottom: 30px;
}
#checkout .checkout_form .btn {
    background: #0C6C43;
    border: 1px solid #0C6C43;
    border-radius: 90px;
    padding: 5px 90px;
    text-decoration: none;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-weight: 500;
    font-size: 30px;
}
#checkout .checkout_form .custom_form_group textarea.form-control {
    resize: none;
    border-radius: 10px;
    padding: 10px;
}
#checkout .checkout_form sup {
    color: #0C6C43;
}
#checkout .checkout_form hr {
    border-color: #0C6C43;
}
#checkout .date_time_row .form-group label {
    color: #040404;
    font-family: "Hanken Grotesk", sans-serif;
    font-weight: 600;
    font-size: 18px;
}
#checkout .date_time_row .form-group .form-control {
    border-radius: 0;
    border-color: #efefef;
    background: #efefef;
    color: #040404;
    font-family: "Hanken Grotesk", sans-serif;
    font-weight: 400;
    font-size: 16px;
    box-shadow: none;
}
#checkout .date_time_row .form-group .sd-container {
    position: relative;
}
#checkout .date_time_row .form-group .open-button {
    position: absolute;
    top: 3px;
    right: 16px;
    width: 25px;
    height: 25px;
    pointer-events: none;
}
#checkout .date_time_row .form-group .open-button button {
    border: none;
    background: transparent;
}
#checkout .date_time_row .form-group .select_wrapper {
    position: relative;
}
#checkout .date_time_row .form-group .select_wrapper::after {
    font-family: "Font Awesome 5 Pro";
    font-weight: 900;
    content: "\f0dd";
    position: absolute;
    right: 10px;
    top: -2px;
    font-size: 22px;
}
#checkout .date_time_row .form-group select {
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    position: relative;
}
#checkout .date_time_row .form-group select::-ms-expand {
    display: none;
}
@media only screen and (max-width: 992px) {
    #checkout .cart_box .card .card-header p {
        font-size: 24px;
    }
    #checkout .cart_box .card .card-body h5 {
        font-size: 18px;
    }
    #checkout .cart_box .card .card-body h6 {
        font-size: 17px;
    }
    #checkout .cart_box .card .order_type_box p {
        font-size: 16px;
        padding: 5px 8px;
    }
    #checkout .cart_box .card .list-group-item h5 {
        font-size: 14px;
    }
    #checkout .cart_box .card .list-group-item h6 span {
        font-size: 12px;
    }
    #checkout .cart_box .card .cart_total .cart-btn {
        font-size: 18px;
    }
    #checkout .cart_box .card .cart_total h2 {
        font-size: 24px;
    }
    #checkout .cart_box .card .cart_total .cart_order_btn {
        font-size: 24px;
    }
    #checkout .cart_box .card .card-body .date_time_row .col-sm-6 {
        flex: 0 0 100%;
        max-width: 100%;
    }
    #checkout .checkout_form {
        padding-right: 15px;
    }
}
@media only screen and (max-width: 768px) {
    #checkout .preorder_alert {
        font-size: 14px;
    }
    #checkout .cart_box .card .card-header p {
        font-size: 18px;
    }
    #checkout .cart_box .card .card-body h5 {
        font-size: 16px;
    }
    #checkout .cart_box .card .card-body h6 {
        font-size: 15px;
    }
    #checkout .cart_box .card .list-group-item h6 {
        display: block;
    }
    #checkout .cart_box .card .cart_total .cart-btn {
        font-size: 14px;
        padding: 5px 11px;
    }
    #checkout .cart_box .card .cart_total p {
        font-size: 10px;
    }
    #checkout .cart_box .card .cart_total h2 {
        font-size: 14px;
    }
    #checkout .cart_box .card .cart_total .cart_order_btn {
        font-size: 16px;
        padding: 5px 65px;
    }
    #checkout .checkout_form .col-sm-6 {
        flex: 0 0 100%;
        max-width: 100%;
    }
    #checkout .checkout_form .title_label {
        font-size: 20px;
    }
    #checkout .checkout_form h6 {
        font-size: 18px;
    }
    #checkout .checkout_form h2 {
        font-size: 28px;
    }
    #checkout .checkout_form h5 {
        font-size: 18px;
    }
}
@media only screen and (max-width: 481px) {
    #checkout .cart_box .card .card-header .col-sm-8 {
        flex: 0 0 66.666667%;
        max-width: 66.666667%;
    }
    #checkout .cart_box .card .card-header .col-sm-4 {
        flex: 0 0 33.333333%;
        max-width: 33.333333%;
    }
    #checkout .cart_box .card .card-header p {
        font-size: 24px;
    }
    #checkout .cart_box .card .card-body .col-sm-6 {
        flex: 0 0 50%;
        max-width: 50%;
    }
    #checkout .cart_box .card .card-body h5 {
        font-size: 18px;
    }
    #checkout .cart_box .card .card-body h6 {
        font-size: 17px;
    }
    #checkout .cart_box .card .cart_total .col-sm-6 {
        flex: 0 0 50%;
        max-width: 50%;
    }
    #checkout .list-group .col-sm-6 {
        flex: 0 0 50%;
        max-width: 50%;
    }
    #checkout .cart_box .card .list-group-item h6 {
        display: flex;
    }
    #checkout .checkout_form .btn {
        margin-bottom: 20px;
    }
}
#card_payment {
    margin-top: 290px;
    margin-bottom: 100px;
}
#card_payment .preorder_alert {
    border-color: #9ec745;
    background: #9ec745;
    border-radius: 90px;
    color: #ffffff;
    font-family: "Hanken Grotesk", sans-serif;
    font-weight: 600;
    font-size: 17px;
    text-align: left;
    margin-bottom: 30px;
    padding: 5px 1.25rem;
}
#card_payment .category_products {
    margin-top: 40px;
}
#card_payment .cart_box .card {
    border-radius: 10px;
    border: 2px solid #f2f2f2;
}
#card_payment .cart_box .card .card-header {
    border: none;
    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
    background: #0C6C43;
    padding: 3px 15px;
}
#card_payment .cart_box .card .card-header p {
    color: #ffffff;
    font-family: "Hanken Grotesk", sans-serif;
    font-weight: 600;
    font-size: 24px;
    margin-bottom: 0;
    text-transform: uppercase;
}
#card_payment .cart_box .card .list-group-item {
    border-left: none;
    border-right: none;
    padding: 10px 15px;
}
#card_payment .cart_box .card .list-group-item:first-child {
    border-top-left-radius: 0;
    border-top-right-radius: 0;
}
#card_payment .cart_box .card .list-group-item:last-child {
    border-bottom: none;
    border-bottom-left-radius: 10px;
    border-bottom-right-radius: 10px;
}
#card_payment .cart_box .card .list-group-item h5 {
    font-family: "Hanken Grotesk", sans-serif;
    font-weight: 600;
    font-size: 20px;
    margin-bottom: 0;
    color: #0C6C43;
}
#card_payment .cart_box .card .list-group-item h3 {
    font-family: "Poppins", sans-serif;
    font-weight: 500;
    font-size: 28px;
    margin-bottom: 0;
    color: #040404;
}
#card_payment .cart_box .card .list-group-item h4 {
    font-family: "Hanken Grotesk", sans-serif;
    font-weight: 600;
    font-size: 18px;
    margin-bottom: 0;
    color: #040404;
}
#card_payment .cart_box .card .list-group-item p {
    font-family: "Hanken Grotesk", sans-serif;
    font-weight: 600;
    font-size: 16px;
    margin-bottom: 0;
    color: #707070;
}
#card_payment .cart_box .card .list-group-item a {
    font-family: "Hanken Grotesk", sans-serif;
    font-weight: 600;
    font-size: 18px;
    margin-bottom: 0;
    color: #707070;
}
#card_payment .nav-tabs {
    border: 1px solid #ededed;
    border-radius: 90px;
    background: #f7f7f7;
}
#card_payment .nav-tabs .nav-link {
    color: #000000;
    background: none;
    border: 1px solid transparent;
    text-decoration: none;
    border-radius: 90px;
    font-family: "Hanken Grotesk", sans-serif;
    font-weight: 600;
    font-size: 17px;
}
#card_payment .nav-tabs .nav-link.active {
    color: #ffffff;
    background: #0C6C43;
    border: 1px solid #0C6C43;
}
#card_payment .tab-content {
    margin-top: 40px;
}
#card_payment .tab-content .tab-pane .card {
    text-align: center;
    border-radius: 0;
    padding: 20px;
    box-shadow: 8px 8px #f2f2f2;
    height: 120px;
}
#card_payment .tab-content .tab-pane .card img {
    object-fit: contain;
    height: 100%;
}
@media only screen and (max-width: 992px) {
    #card_payment .cart_box .card .card-header p {
        font-size: 24px;
    }
    #card_payment .cart_box .card .list-group-item h5 {
        font-size: 14px;
    }
}
@media only screen and (max-width: 768px) {
    #card_payment .preorder_alert {
        font-size: 14px;
    }
    #card_payment .cart_box .card .card-header p {
        font-size: 18px;
    }
}
@media only screen and (max-width: 481px) {
    #card_payment .cart_box .card .card-header p {
        font-size: 24px;
    }
    #card_payment .preorder_alert {
        margin-top: 20px;
    }
    #card_payment .nav-tabs {
        border-radius: 25px;
    }
}
#child_tab {
    margin-bottom: 20px !important;
}
#child_tab .nav-link {
    font-size: 16px !important;
}
.modal-backdrop.show {
    background: #1d222b;
    opacity: 0.9;
}
.optionsModal {
    top: 50px;
    padding-right: 0;
}
.optionsModal .modal-content {
    border-radius: 0;
    border: 10px solid #0C6C43;
    padding: 10px;
}
.optionsModal .modal-content .modal-body {
    border: 1px solid #ededed;
    padding: 0;
}
.optionsModal .modal-content .modal-body button.close {
    background-color: #ededed;
    color: #101010;
    opacity: 1;
    padding: 0 7px 5px 7px;
    font-weight: 400;
    font-size: 30px;
}
.optionsModal .loginModal_box {
    text-align: center;
    padding: 30px 50px 20px 50px;
}
.optionsModal .loginModal_box h4 {
    text-transform: uppercase;
    color: #0C6C43;
    font-family: "Hanken Grotesk", sans-serif;
    font-weight: 600;
    font-size: 36px;
}
.optionsModal .loginModal_box h5 {
    text-transform: uppercase;
    color: #000000;
    font-family: "Hanken Grotesk", sans-serif;
    font-weight: 600;
    font-size: 20px;
    margin-bottom: 0;
}
.optionsModal .loginModal_box h3 {
    text-transform: uppercase;
    color: #0C6C43;
    font-family: "Hanken Grotesk", sans-serif;
    font-weight: 600;
    font-size: 20px;
    text-align: left;
    margin-bottom: 0;
}
.optionsModal .loginModal_box h6 {
    text-transform: uppercase;
    color: #474747;
    font-family: "Hanken Grotesk", sans-serif;
    font-weight: 500;
    font-size: 17px;
    margin-bottom: 0;
}
.optionsModal .loginModal_box p {
    text-transform: uppercase;
    color: #474747;
    font-family: "Hanken Grotesk", sans-serif;
    font-weight: 500;
    font-size: 17px;
    float: left;
    margin-bottom: 0;
}
.optionsModal .loginModal_box p span {
    color: #0C6C43;
}
.optionsModal .checkbox_container {
    float: right;
}
.optionsModal .checkbox_container .checkmark {
    width: 20px;
    height: 20px;
}
.optionsModal .checkbox_container .checkmark::after {
    left: 5px;
    top: 1px;
    width: 6px;
    height: 12px;
}
.optionsModal .mandatory_options_box {
    margin-top: 10px;
}
.optionsModal hr#bold_hr {
    border-color: #000000;
    border-width: 2px;
}
.optionsModal .loginModal_box h2 {
    text-transform: uppercase;
    color: #040404;
    font-family: "Poppins", sans-serif;
    font-weight: 500;
    font-size: 25px;
    margin-bottom: 0;
}
@media only screen and (max-width: 481px) {
    .optionsModal .loginModal_box {
        padding: 30px 10px 20px 10px;
    }
    .optionsModal .loginModal_box h4 {
        font-size: 26px;
    }
    .optionsModal .col-sm-6 {
        flex: 0 0 50%;
        max-width: 50%;
    }
}
#profile {
    margin-top: 290px;
    margin-bottom: 100px;
}
#profile .preorder_alert {
    border-color: #9ec745;
    background: #9ec745;
    border-radius: 90px;
    color: #ffffff;
    font-family: "Hanken Grotesk", sans-serif;
    font-weight: 600;
    font-size: 17px;
    text-align: left;
    margin-bottom: 30px;
    padding: 5px 1.25rem;
}
#profile .category_products {
    margin-top: 40px;
}
#profile .cart_box .card {
    border-radius: 10px;
    border: 2px solid #f2f2f2;
}
#profile .cart_box .card .card-header {
    border: none;
    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
    background: #0C6C43;
    padding: 3px 15px;
}
#profile .cart_box .card .card-header p {
    color: #ffffff;
    font-family: "Hanken Grotesk", sans-serif;
    font-weight: 600;
    font-size: 24px;
    margin-bottom: 0;
    text-transform: uppercase;
}
#profile .cart_box .card .list-group-item {
    border-left: none;
    border-right: none;
    padding: 10px 15px;
}
#profile .cart_box .card .list-group-item:first-child {
    border-top-left-radius: 0;
    border-top-right-radius: 0;
}
#profile .cart_box .card .list-group-item:last-child {
    border-bottom: none;
    border-bottom-left-radius: 10px;
    border-bottom-right-radius: 10px;
}
#profile .cart_box .card a {
    font-family: "Hanken Grotesk", sans-serif;
    font-weight: 500;
    font-size: 18px;
    margin-bottom: 0;
    color: #040404;
    text-decoration: none;
}
#profile .cart_box .card a i {
    margin-right: 5px;
}
#profile .cart_box .card a::after {
    content: "";
    display: block;
    width: 0;
    height: 2px;
    background: #0C6C43;
    transition: width 0.5s;
}
#profile .cart_box .card a:hover::after {
    width: 100%;
}
#profile .profile_box h5 {
    font-family: "Hanken Grotesk", sans-serif;
    font-weight: 600;
    font-size: 18px;
    margin-bottom: 0;
    color: #040404;
}
.sd-container2 {
    position: relative;
}
.sd-container2 .form-control {
    padding: 6px 30px !important;
    height: 52px !important;
}
.sd-container2 .open-button {
    position: absolute;
    top: 10px;
    right: 30px;
    width: 25px;
    height: 25px;
    pointer-events: none;
}
.sd-container2 .open-button button {
    border: none;
    background: transparent;
}
.custom_profile_card {
    margin-top: 15px;
    margin-bottom: 40px;
    border-radius: 0;
    padding: 20px;
    box-shadow: 8px 8px #f2f2f2;
}
.custom_profile_card p {
    margin-bottom: 0;
    font-family: "Hanken Grotesk", sans-serif;
    font-weight: 400;
    font-size: 16px;
}
.custom_profile_card .btn {
    width: 50px;
}
.custom_profile_card .address_shown {
    border-bottom: 1px solid #eee;
    margin-bottom: 8px;
    padding-bottom: 10px;
}
.custom_profile_card .address_shown:last-child {
    border-bottom: none;
    margin-bottom: 0;
    padding-bottom: 0;
}
.custom_profile_card .row {
    margin-left: 0;
    margin-right: 0;
}
.custom_profile_card .col-sm-12 {
    padding-left: 0;
    padding-right: 0;
}
.theme_btn {
    background: #0C6C43;
    border: 1px solid #0C6C43;
    border-radius: 90px;
    text-decoration: none;
    color: #ffffff !important;
    font-family: "Poppins", sans-serif;
    font-weight: 500;
    font-size: 20px;
    padding: 5px 20px;
}
.theme_tabs {
    border: 1px solid #ededed;
    border-radius: 90px;
    background: #f7f7f7;
}
.theme_tabs .nav-link {
    color: #000000;
    background: none;
    border: 1px solid transparent;
    text-decoration: none;
    border-radius: 90px;
    font-family: "Hanken Grotesk", sans-serif;
    font-weight: 600;
    font-size: 17px;
}
.theme_tabs .nav-link.active {
    color: #ffffff;
    background: #0C6C43;
    border: 1px solid #0C6C43;
}
.theme_tabs .tab-content {
    margin-top: 40px;
}
.theme_tabs .tab-content .tab-pane .card {
    text-align: center;
    border-radius: 0;
    padding: 20px;
    box-shadow: 8px 8px #f2f2f2;
    height: 120px;
}
.theme_tabs .tab-content .tab-pane .card img {
    object-fit: contain;
    height: 100%;
}
.custom_profile_card .table {
    margin-bottom: 0;
}
.custom_profile_card .table td {
    width: 50%;
}
@media only screen and (max-width: 992px) {
    #profile .cart_box .card .card-header p {
        font-size: 24px;
    }
}
@media only screen and (max-width: 768px) {
    #profile .preorder_alert {
        font-size: 14px;
    }
    #profile .cart_box .card .card-header p {
        font-size: 18px;
    }
    .custom_profile_card .col-sm-8 {
        flex: 0 0 50%;
        max-width: 50%;
    }
    .custom_profile_card .col-sm-4 {
        flex: 0 0 50%;
        max-width: 50%;
    }
}
@media only screen and (max-width: 481px) {
    #profile .cart_box .card .card-header p {
        font-size: 24px;
    }
    #profile .preorder_alert {
        margin-top: 20px;
    }
    .custom_profile_card .col-sm-8 {
        flex: 0 0 100%;
        max-width: 100%;
    }
    .custom_profile_card .col-sm-4 {
        flex: 0 0 100%;
        max-width: 100%;
        text-align: center !important;
    }
    .theme_tabs {
        border-radius: 25px;
    }
}
.modal-backdrop.show {
    background: #1d222b;
    opacity: 0.9;
}
.theme_modal {
    top: 50px;
    padding-right: 0 !important;
}
.theme_modal .modal-content {
    border-radius: 0;
    border: 10px solid #0C6C43;
    padding: 10px;
}
.theme_modal .modal-content .modal-body {
    border: 1px solid #ededed;
    padding: 0;
}
.theme_modal .modal-content .modal-body button.close {
    background-color: #ededed;
    color: #101010;
    opacity: 1;
    padding: 0 7px 5px 7px;
    font-weight: 400;
    font-size: 30px;
}
.theme_modal .loginModal_box {
    text-align: center;
    padding: 30px 50px 20px 50px;
}
.theme_modal .loginModal_box h4 {
    text-transform: uppercase;
    color: #0C6C43;
    font-family: "Hanken Grotesk", sans-serif;
    font-weight: 600;
    font-size: 36px;
}
.theme_modal .theme_modal_btn {
    width: 100%;
    text-transform: uppercase;
    background-color: #0C6C43;
    border-color: #0C6C43;
    border-radius: 90px;
    padding: 3px;
    color: #ffffff;
    font-family: "Hanken Grotesk", sans-serif;
    font-weight: 500;
    font-size: 24px;
    margin-top: 30px;
    box-shadow: none;
}
.theme_modal .btn-secondary {
    width: 100%;
    text-transform: uppercase;
    border-radius: 90px;
    padding: 3px;
    color: #ffffff;
    font-family: "Hanken Grotesk", sans-serif;
    font-weight: 500;
    font-size: 24px;
    margin-top: 30px;
    box-shadow: none;
}
.theme_form_group {
    position: relative;
}
.theme_form_group label {
    position: absolute;
    z-index: 9;
    font-family: "Hanken Grotesk", sans-serif;
    font-weight: 500;
    font-size: 14px;
    color: #474747;
    background: #ffffff;
    top: -12px;
    left: 20px;
    padding-left: 10px;
    padding-right: 10px;
}
.theme_form_group .form-control {
    border-radius: 90px;
    border-color: #0C6C43;
    font-family: "Hanken Grotesk", sans-serif;
    font-weight: 600;
    font-size: 16px;
    color: #040404;
    padding: 22px 30px;
}
.theme_form_group .form-control:focus {
    box-shadow: none;
}
.theme_form_group textarea.form-control {
    resize: none;
    border-radius: 10px;
    padding: 10px;
}
.theme_form_group .sd-container2 .form-control {
    height: 46px !important;
}
.theme_form_group .sd-container2 .open-button {
    top: 7px;
}
.theme_form_group2 .checkbox_container {
    display: initial;
}
.theme_form_group2 .checkmark {
    width: 20px;
    height: 20px;
    top: 8px;
}
.theme_form_group2 .checkmark::after {
    width: 6px;
    height: 13px;
    top: 1px;
    left: 5px;
}
.theme_form_group2 .title_label {
    color: #040404;
    font-family: "Hanken Grotesk", sans-serif;
    font-weight: 600;
    font-size: 16px;
    margin-left: 10px;
    margin-right: 20px;
    cursor: pointer;
    display: initial;
}
@media only screen and (max-width: 768px) {
    .theme_modal .themeModal_box .col-sm-6 {
        flex: 0 0 100%;
        max-width: 100%;
    }
}
@media only screen and (max-width: 481px) {
    .theme_modal .loginModal_box {
        padding: 30px 10px 20px 10px;
    }
    .theme_modal .loginModal_box h4 {
        font-size: 26px;
    }
}
.ik_vendor {
    margin-top: 270px;
    margin-bottom: 50px;
}
.ik_vendor .form-container {
    max-width: 420px;
    margin: 0 auto;
    padding: 20px;
    background: #fff;
    border-radius: 12px;
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.04);
}
.ik_vendor .radio-group,
.ik_vendor #preview-zone {
    display: flex;
    gap: 24px;
    margin-bottom: 20px;
    padding-left: 5px;
}
.ik_vendor #preview-zone {
    gap: 6px;
    margin-bottom: 12px;
    flex-wrap: wrap;
}
.ik_vendor .radio-inline {
    font-size: 16px;
    color: #333;
    display: flex;
    align-items: center;
    gap: 8px;
    cursor: pointer;
    font-weight: 500;
}
.ik_vendor .radio-inline input[type="radio"] {
    width: 18px;
    height: 18px;
    accent-color: #0C6C43;
    margin: 0;
    cursor: pointer;
}
.ik_vendor .form-control {
    height: 48px;
    border-radius: 8px;
    border: 1px solid #d0d5dd;
    font-size: 15px;
    box-shadow: none !important;
    margin-bottom: 16px;
}
.ik_vendor .form-control:focus,
.ik_vendor .upload-box:hover {
    border-color: #0C6C43;
}
.ik_vendor .upload-box {
    border: 2px dashed #0C6C43;
    border-radius: 10px;
    padding: 24px;
    text-align: center;
    background: #fffbfa;
    cursor: pointer;
    margin-bottom: 20px;
    transition: background 0.2s ease;
    position: relative;
}
.ik_vendor .upload-box:hover {
    background: #fef3f2;
}
.ik_vendor .upload-box i {
    font-size: 24px;
    color: #333;
    margin-bottom: 6px;
    display: block;
}
.ik_vendor .upload-box span {
    font-size: 14px;
    color: #475467;
    font-weight: 500;
}
.ik_vendor .btn-submit {
    background-color: #dc3226;
    color: #fff;
    border: none;
    width: 100%;
    height: 48px;
    border-radius: 24px;
    font-size: 16px;
    font-weight: 600;
    letter-spacing: 0.3px;
    transition: background 0.2s;
    margin-top: 10px;
}
.ik_vendor .btn-submit:hover {
    background-color: #b92218;
    color: #fff;
}
.ik_vendor .preview-thumb {
    width: 50px;
    height: 50px;
    object-fit: cover;
    border-radius: 6px;
    border: 1px solid #ddd;
}
.ik_vendor .alert {
    border-radius: 8px;
    font-size: 14px;
    padding: 12px;
    display: none;
}


