/*
 Theme Name:   GeneratePress Child
 Description:  Default GeneratePress child theme
 Template:     generatepress
 Version:      1.0.0
*/

/**
 * Root variables ---------------------------------
 * */
:root {
    /* Border */
    --border-radius-extra-large: 2px;
    --border-radius-large: 2px;
    --border-radius-mid: 2px;
    --border-radius-min: 2px;

    /* Color */
    --color-bg-body: #f4e7da;
    --color-bg-dark: #2a2f30;
    --color-bg-error: #df302217;
    --color-bg-input: #ccc2b94d;
    --color-bg-note: #d1aa3b17;
    --color-bg-link: #0f4d45;
    --color-bg-bottom-right: linear-gradient(to bottom right, #efe8e038, #4d42351f);
    --color-bg-content-light: #e9e0d67a;
    --color-border-element: #a5a5a5a3;
    --color-border-input: #ece5df;
    --color-border-min: rgba(0, 0, 0, 0.07);
    --color-border-mid: rgb(149 51 61 / 55%);
    --color-border-line: #4140404e;
    --color-border-line-dark: #cdbca14f;
    --color-border-menu: #ffffff57;
    --color-error: #a00;
    --color-input-placeholder: #929292;
    --color-link: #95333d;
    --color-link-active: #117063;
    --color-main: #cdbca1;
    --color-note: #ae6509;
    --color-overlay: #161616e0;
    --color-sub: #745f48;
    --color-success: #2d5789;
    --color-text: #232323;
    --color-text-light: #e6eceb;
    --color-text-header: #202020;
    --color-title: #95333d;
    --color-title-second: #1E3957;
    --color-warning: #773224;

    /* Element size */
    --max-width-session: 1500px;
    --image-width-200: clamp(110px, 17vw, 200px);

    /* Font size */
    --font-size-14: clamp(13px, 1.5vw, 14px);
    --font-size-15: clamp(14px, 1.5vw, 15px);
    --font-size-16: clamp(14.5px, 1.5vw, 16px);
    --font-size-17: clamp(15px, 1.5vw, 17px);
    --font-size-18: clamp(16px, 1.5vw, 18px);
    --font-size-20: clamp(17px, 2vw, 20px);
    --font-size-23: clamp(19px, 2vw, 23px);
    --font-size-25: clamp(20px, 2vw, 25px);
    --font-size-30: clamp(23px, 6.5vw, 30px);
    --font-size-35: clamp(26px, 6.5vw, 35px);
    --font-size-45: clamp(30px, 6.5vw, 45px);
    --font-size-55: clamp(35px, 10.5vw, 55px);
    --font-size-65: clamp(38px, 10.5vw, 65px);
    --font-size-75: clamp(41px, 10.5vw, 75px);
    --font-size-85: clamp(44px, 10.5vw, 85px);
    --font-size-95: clamp(47px, 10.5vw, 95px);
    --font-size-14rem: clamp(47px, 10.5vw, 95px);

    /* margin and padding */
    --max-width-section: 1650px;
    --padding-container: clamp(.5em, 2.5vw, 2em);

    /* Shadow */
    --box-shadow-button: 4px 4px 5px #7b6c5d73, -4px -4px 5px #fdf3e9b3;
    --box-shadow-hover: 6px 6px 9px #9898985e, -6px -6px 9px #f0f0f085;
    --box-shadow-image: 6px 6px 10px #7b6c5d73, -6px -6px 10px #fdf3e9b3;
    --box-shadow-item: 3px 3px 7px #7b6c5d73, -3px -3px 7px #fdf3e9b3;
    --box-shadow-input: 0 0 0 #ffffff00, 0 0 0 #ffffff00,
        inset 2px 2px 3px #8989893d, inset -2px -2px 3px #f3f3f32e;
    --box-shadow-input-hover: 4px 4px 7px #9898985e,
        -4px -4px 7px #f0f0f085, inset 0 0 0 #ffffff00, inset 0 0 0 #ffffff00;
    --box-shadow-min: inset 2px 2px 3px #89898914,
        inset -2px -2px 3px #f3f3f32e;
    --box-shadow-modal: 0 10px 30px #282828d9;
    --box-shadow-modal-container: 10px 0 30px #232323bf;
    --box-shadow-p-archive: inset 2px 2px 5px #b1b1b11a,
        inset -2px -2px 5px #f3f3f32b;
    --box-shadow-small: inset 2px 2px 3px #51515114,
        inset -2px -2px 3px #ffffff2e;
    --box-shadow-sub-menu: 10px 10px 10px #00000024;
    --emboss-in-normal: inset 3px 3px 3px #5151511a,
        inset -3px -3px 3px #ffffff45;
    --text-shadow-warm: 0.5px 0.5px 0px #6b553bb0, -0.5px -0.5px 0px #ccaf88bf;
    --text-shadow-black: 0.8px 0.8px 0.5px #32323237,
        -0.8px -0.8px .5px #32323237;
    --text-shadow-body: 0.5px 0.5px 0.5px #3232321f,
        -0.5px -0.5px .5px #fbfbfbb5;

    /* transition */
    --transition-background-color: background-color 0.2s cubic-bezier(0.39, 0.58, 0.57, 1);
    --transition-border-radius: border-radius 0.2s cubic-bezier(0.39, 0.58, 0.57, 1);
    --transition-border-color: border-color 0.2s cubic-bezier(0.39, 0.58, 0.57, 1);
    --transition-box-shadow: box-shadow 0.3s cubic-bezier(0.39, 0.58, 0.57, 1);
    --transition-color: color 0.3s cubic-bezier(0.39, 0.58, 0.57, 1);
    --transition-height: height 0.3s cubic-bezier(0.39, 0.58, 0.57, 1);
    --transition-max-height: max-height 0.3s cubic-bezier(0.39, 0.58, 0.57, 1);
    --transition-max-width: max-width 0.3s cubic-bezier(0.39, 0.58, 0.57, 1);
    --transition-opacity: opacity 0.3s cubic-bezier(0.39, 0.58, 0.57, 1);
    --transition-transform: transform 0.3s cubic-bezier(0.39, 0.58, 0.57, 1);
}

/**
 * END Root variables
 * */

/**
 * Core ---------------------------------
 * */

/* ---------- font Customize ---------- */
@font-face {
    font-family: "iCielBCCubano";
    src: url('/wp-content/themes/generatepress-child/assets/font/iCielBCCubano-Normal.woff2') format('woff2');
    font-weight: 200 900;
    font-style: normal;
    font-display: block;
}

@font-face {
    font-family: "Bitter";
    src: url('/wp-content/themes/generatepress-child/assets/font/Bitter-VariableFont_wght.woff2') format('woff2');
    font-weight: 200 900;
    font-style: normal;
    font-display: block;
}

/* ----- Basic core ----- */
:focus-visible {
    outline: none;
}

html {
    width: 100% !important;
    max-width: 100% !important;
}

body {
    position: relative;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 250px !important;
    margin: 0 auto;
    overflow-x: hidden !important;
    overflow-y: auto;
    margin: 0 auto;
    padding: 0;
    word-wrap: break-word;
    outline: none !important;
    font-family: "Bitter", -apple-system, system-ui, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
    font-size: var(--font-size-20);
    color: var(--color-text);
    font-weight: 350;
}

/* Ẩn scrollbar trên tất cả các phần tử bên trong body #!# */
body * {
    /* Firefox */
    scrollbar-width: none !important;
    scrollbar-color: transparent transparent !important;

    /* Internet Explorer 10+ */
    -ms-overflow-style: none !important;
}

/* Đối với các trình duyệt sử dụng WebKit (Chrome, Safari, Edge) */
body *::-webkit-scrollbar {
    display: none !important;
}

/* Hidden scrollbar elements custom */
.wc-bookings-booking-form .block-picker,
.wfsmodal-body,
.wfsmodal-container,
.wfs-cart-content-area,
.search-wrap.mobile-focusing,
.wfs-sidebar-menu,
#wfs-sticky-sidebar,
.tan-modal-wrap,
.main-navigation,
.inside-header-home,
.category-description {
    scrollbar-width: none !important;
    scrollbar-color: transparent transparent !important;
    -ms-overflow-style: none !important;
}

.wc-bookings-booking-form .block-picker::-webkit-scrollbar,
.wfsmodal-body::-webkit-scrollbar,
.wfsmodal-container::-webkit-scrollbar,
.wfs-cart-content-area::-webkit-scrollbar,
.search-wrap.mobile-focusing::-webkit-scrollbar,
.wfs-sidebar-menu::-webkit-scrollbar,
#wfs-sticky-sidebar::-webkit-scrollbar,
.tan-modal-wrap::-webkit-scrollbar,
.main-navigation::-webkit-scrollbar,
.inside-header-home::-webkit-scrollbar,
.category-description::-webkit-scrollbar {
    display: none !important;
}


@media (max-width: 280px) {
    body, .site-content, .entry-header {
        word-wrap: break-word;
        overflow-wrap: anywhere;
    }
}

a {
    text-decoration: none;
    font-weight: 500;
}

p {
    margin-bottom: 1em;
}

img {
    border-radius: var(--border-radius-min);
}

/* ----- Disable zoom on mobile ----- */
input,
textarea,
select {
    font-size: 16px !important;
    touch-action: manipulation !important;
    /* Ngăn zoom hoặc thao tác không mong muốn */
}

button,
.button-link {
    touch-action: manipulation !important;
    -webkit-user-select: none;
    /* Ngăn chọn văn bản trên trình duyệt WebKit */
    user-select: none !important;
    /* Ngăn chọn văn bản */
}

/* ----- Form core ----- */

/* hidden default style input */
input:-webkit-autofill,
input:-internal-autofill-selected,
input:autofill {
    background-color: var(--color-bg-input) !important;
    box-shadow: var(--box-shadow-input) !important;
}

input::-webkit-search-cancel-button {
    display: none !important;
}

/* input */
input,
textarea,
select {
    -moz-appearance: none;
    -webkit-appearance: none;
    appearance: none;
    background-color: var(--color-bg-input) !important;
    color: var(--color-text);
    box-shadow: var(--box-shadow-input) !important;
    box-sizing: border-box;
    border: 1px solid var(--color-border-input) !important;
    border-radius: var(--border-radius-extra-large) !important;
    outline: none !important;
    transition: var(--transition-box-shadow);
    -webkit-transition: var(--transition-box-shadow);
    -moz-transition: var(--transition-box-shadow);
    -o-transition: var(--transition-box-shadow);
}

textarea {
    border-radius: var(--border-radius-mid) !important;
}

input[type="checkbox"],
input[type="radio"] {
    padding: 0 !important;
    line-height: 1;
    min-width: 1.2em;
    min-height: 1.2em;
    font-weight: bold;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    color: var(--color-success) !important;
}

input[type="checkbox"] {
    border-radius: var(--border-radius-min) !important;
}


input[type=checkbox]:checked::before {
    content: "✓";
}

input[type=radio]:checked::before {
    content: "◉";
}

input:focus,
input[type=checkbox]:checked,
textarea:focus {
    box-shadow: var(--box-shadow-input-hover) !important;
}

textarea {
    width: 100%;
    border-radius: var(--border-radius-min);
}

select {
    background: url('/wp-content/themes/generatepress-child/icon/chevron-down.svg') no-repeat right 0.75rem center;
    background-size: var(--font-size-23);
    padding: 0.5rem 2rem 0.5rem 1rem;
    text-wrap: balance;

}

/* ----- END Form core ----- */

/* ----- Typography----- */

/* fix font jQuery */
.ui-widget {
    font-family: "Bitter", -apple-system, system-ui, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
}

button,
input[type="button"],
input[type="submit"],
input[type="reset"],
.button-link {
    font-family: "Bitter", -apple-system, system-ui, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
}

h1 {
    font-family: "iCielBCCubano", -apple-system, system-ui, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
    font-size: var(--font-size-45);
    font-weight: normal;
}

h2 {
    font-family: "iCielBCCubano", -apple-system, system-ui, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
    font-size: var(--font-size-35);
}

h3 {
    font-family: "iCielBCCubano", -apple-system, system-ui, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
    font-size: var(--font-size-30);
}

h4 {
    font-family: "Bitter", -apple-system, system-ui, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
    font-size: var(--font-size-23);
    padding:0;
    margin: 0;
}

h5 {
    font-family: "Bitter", -apple-system, system-ui, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
    font-size: var(--font-size-20);
    padding:0;
    margin: 0;
}

strong {
    font-weight: 600;
}

/* Break all word table */
@media (max-width: 310px) {

    table,
    table.woocommerce-table.woocommerce-table--order-details.shop_table.order_details {
        word-break: break-all !important;
        overflow-wrap: break-word !important;
    }

    table th,
    table td,
    table a {
        font-size: var(--font-size-15) !important;
    }
}

/**
 * END Typography
 * */

/* ----- background texture ----- */
body, .tan-modal-wrap,
.wfs-cart-overview, div#wfsServiceModal-content, .wfs-cart-expanded, 
.wfsmodal-body, .wfs-search-container, footer.wfsmodal-footer, .inox_modal_popup_warp, .new-event-content {
    background-image: url(/wp-content/uploads/2026/04/texturetastic-gray.png);
}

@media (max-width: 500px) {
    .search-wrap.search-bar-item {
        background-image: url(/wp-content/uploads/2026/04/texturetastic-gray.png);
    }
}

/* ----- Color and stlye core ----- */
html,
body {
    background-color: var(--color-bg-body);
}

/* body {
    text-shadow: var(--text-shadow-body);
} */

/* Nav menu link */
.main-navigation .main-nav ul li:not([class*="current-menu-"]):hover>a,
.main-navigation .main-nav ul li:not([class*="current-menu-"]):focus>a,
.main-navigation .main-nav ul li.sfHover:not([class*="current-menu-"])>a,
.main-navigation .menu-bar-item:hover>a,
.main-navigation .menu-bar-item.sfHover>a {
    color: var(--color-text-light);
}

/* link */
a,
a:hover,
a:focus {
    color: var(--color-link);
}

a:active {
    color: var(--color-link-active);
}

/* Button */
button,
input[type="button"],
input[type="submit"],
input[type="reset"],
.edit-service-icon button:hover,
input[type="button"]:hover,
input[type="submit"]:hover,
input[type="reset"]:hover,
button:focus,
input[type="button"]:focus,
input[type="submit"]:focus,
input[type="reset"]:focus{
    color: var(--color-text-light);
    background-color: var(--color-bg-link) !important;
    border: none;
    box-shadow: none !important;
}

button,
input[type="button"],
input[type="reset"],
input[type="submit"],
.edit-service-icon {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: var(--font-size-20);
    font-weight: 600;
    text-transform: uppercase;
    border: none;
    border-radius: var(--border-radius-extra-large);
    cursor: pointer;
    outline: none !important;
    box-shadow: none !important;
}

button:active,
input[type="button"]:active,
input[type="submit"]:active,
input[type="reset"]:active,
.edit-service-icon:active {
    color: var(--color-bg-body) !important;
    background-color: var(--color-link-active) !important;
    transform: scale(1.015, 1.03) !important;
}

/* ----- END Color and style core ----- */

/* ----- Input number button styling ----- */

/* Ẩn nút tăng/giảm trên tất cả trình duyệt */
.input-number-wrapper input[type="number"]::-webkit-inner-spin-button,
.input-number-wrapper input[type="number"]::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

.input-number-wrapper input[type="number"] {
    -moz-appearance: textfield;
    /* Firefox */
    appearance: none;
    /* Chuẩn mới */
}

/* Đảm bảo input không bị kéo dài quá mức */
input[type="number"]::-webkit-outer-spin-button,
input[type="number"]::-webkit-inner-spin-button {
    display: none;
    /* Phòng trường hợp thuộc tính bị ghi đè */
}

/* input number wrapper */
.input-number-wrapper {
    display: flex;
    justify-content: center;
    max-width: 10.7em;
}

.input-number-wrapper input[type="number"] {
    text-align: center;
    border-radius: 0 !important;
    font-weight: 500;
    background-color: var(--color-bg-input) !important;
    padding: 0;
    line-height: 1;
    min-width: 48px;
}

.input-number-wrapper .btn-decrease,
.input-number-wrapper .btn-increase {
    cursor: pointer;
    max-height: 45px;
    padding-bottom: 12px !important;
}

.input-number-wrapper .btn-decrease {
    border-radius: var(--border-radius-large) 0 0 var(--border-radius-large) !important;
}

.input-number-wrapper .btn-increase {
    border-radius: 0 var(--border-radius-large) var(--border-radius-large) 0 !important;
}

/* Transision */
a,
button,
input[type="button"],
input[type="submit"],
input[type="reset"],
.button-link {
    transition: var(--transition-height);
    -webkit-transition: var(--transition-height);
    -moz-transition: var(--transition-height);
    -o-transition: var(--transition-height);
}

/**
 * END Core
 * */

/**
 * Wordpress core customize ---------------------------------
 * */

/* Hidden search WP */
form.search-form,
.wp-block-search {
    display: none !important;
}

.wp-block-button__link {
    border-radius: var(--border-radius-extra-large);
    ;
    background-color: var(--color-main);
    padding: 0.3em 1.5em !important;
    text-transform: uppercase;
}

/* WP Single post */
.site-main .wp-block-group__inner-container {
    padding: 0;
}

.wp-block-heading {
    color: var(--color-link);
    font-weight: bold;
}

.wp-block-media-text>.wp-block-media-text__content {
    padding-top: 1em
}

/* END WP Single post */

/* Image - text */
figure {
    margin: 0;
    padding: 0;
    line-height: 0.7;
}

@media (max-width: 750px) {
    .wp-block-media-text.is-stacked-on-mobile {
        grid-template-columns: 100% !important;
    }

    .wp-block-media-text.is-stacked-on-mobile>.wp-block-media-text__media {
        grid-column: 1;
        grid-row: 1;
    }

    .wp-block-media-text.is-stacked-on-mobile>.wp-block-media-text__content {
        grid-column: 1;
        grid-row: 2;
    }
}

/* END Image - text */

/**
 * END Wordpress custom ---------------------------------
 * */

/**
 * Utils ---------------------------------
 * */
 /* a button link */
.button-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: var(--font-size-23);
    text-transform: uppercase;
    color: var(--color-text-light);
    border-radius: var(--border-radius-extra-large);
    transition: var(--transition-box-shadow);
    -webkit-transition: var(--transition-box-shadow);
    -moz-transition: var(--transition-box-shadow);
    -o-transition: var(--transition-box-shadow);
    background-color: var(--color-bg-link);
}

.button-link:hover {
    box-shadow: var(--box-shadow-button);
    color: var(--color-text-light);
}

.button-link:focus {
    color: var(--color-text-light);
}

.button-link:active {
    transform: scale(1.015, 1.03) !important;
}
.color-note {
    color: var(--color-note) !important;
}

.color-success {
    color: var(--color-success) !important;
}

.color-warning {
    color: var(--color-warning) !important;
}

.color-error {
    color: var(--color-error);
}

.max-width-1000 {
    max-width: 1000px;
    margin: 0 auto;
    padding-left: .5em;
    padding-right: .5em;
}

.no-scroll-y {
    touch-action: none !important;
    overscroll-behavior: none;
    /* Ngăn cuộn tầng */
    overflow: hidden;
    /* Ngăn cuộn nội dung */
    position: fixed;
    width: 100%;
}

.session-title {
    padding: 1em 0;
    margin-bottom: 3em;
    background: var(--color-bg-content-light);
}

.session-title h3 {
    color: var(--color-text);
    text-transform: uppercase;
}

.session-title hr {
    flex: 1;
    color: var(--color-border-element);
}

.sub-field-form {
    padding: 0 !important;
    margin: -1em 1em 0 1em !important;
}

.tan-disable {
    opacity: 0.45;
    pointer-events: none;
    cursor: not-allowed;
    touch-action: none;
    color: gray;
}

.tan-hidden {
    display: none !important;
}

.tan-icon-svg {
    width: 1em;
    height: 1em;
    fill: currentcolor;
}

.tan-margin-0 {
    margin: 0;
}

.tan-note {
    display: block;
    font-size: 90%;
    font-style: italic;
    padding: .5em 0;
    color: var(--color-warning);
}

.tan-session {
    padding-top: clamp(2.5em, 5vw, 5em);
    padding-bottom: clamp(2.5em, 5vw, 5em);
}

/**
 * END Utils ---------------------------------
 * */

/**
 * Tan toggle checkbox ---------------------------------
 * */
.tan-toggle-checkbox input[type="checkbox"] {
    display: none !important;
}

.tan-toggle-checkbox label {
    position: relative;
    display: inline-block;
    width: 50px;
    height: 29px;
    background-color: var(--color-bg-input);
    box-shadow: var(--box-shadow-input) !important;
    border: 1px solid var(--color-border-input) !important;
    border-radius: 29px;
    cursor: pointer;
    transition: background-color 0.3s;
    transition: border 0.3s;
}

.tan-toggle-checkbox label::after {
    content: "";
    position: absolute;
    top: 3px;
    left: 3px;
    width: 21px;
    height: 21px;
    background-color: var(--color-input-placeholder);
    border-radius: 50%;
    transition: transform 0.3s, background-color 0.3s;
}

.tan-toggle-checkbox input[type="checkbox"]:checked+label {
    background-color: var(--color-success);
    box-shadow: var(--box-shadow-input-hover) !important;
    border-color: var(--color-success) !important;
}

.tan-toggle-checkbox input[type="checkbox"]:checked+label::after {
    transform: translateX(21px);
    background-color: var(--color-bg-body);
}

/**
 * END Tan toggle checkbox ---------------------------------
 * */

/**
 * Snipper Loading styling ---------------------------------
 * */

/* ----- Button loading ----- */

/* linear-gradient */
.loading-button {
    position: relative;
    border: none;
    cursor: not-allowed !important;
    pointer-events: none !important;
    touch-action: none;
    overflow: hidden;
    color: gray !important;
    text-shadow: none !important;
}

.loading-button::before {
    content: "";
    position: absolute;
    top: 0;
    left: -150%;
    width: 300%;
    height: 100%;
    background: linear-gradient(120deg, rgba(255, 255, 255, 0) 0%, rgba(200, 200, 200, 0.55) 40%, rgba(255, 255, 255, 0) 100%);
    animation: slideOverlay 0.7s infinite linear;
    z-index: 1;
    mix-blend-mode: overlay;
}

@keyframes slideOverlay {
    0% {
        left: -150%;
    }

    100% {
        left: 150%;
    }
}

/* spinner rotate */
.loading-button::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 26px;
    height: 26px;
    margin-top: -12px;
    margin-left: -12px;
    border: 3.5px solid var(--color-link-active);
    border-top-color: transparent;
    border-radius: 50%;
    animation: spin 0.7s linear infinite;
    opacity: .8;
}

@keyframes spin {
    0% {
        transform: rotate(0deg);
    }

    100% {
        transform: rotate(360deg);
    }
}

/* ----- END Button loading ----- */


/**
 * END Loading styling ---------------------------------
 * */

/**
 * Tan Modal ---------------------------------
 * */

.tan-modal-container {
    position: fixed;
    overflow: hidden;
    z-index: 999991;
    width: 100%;
    height: 100%;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background-color: rgba(43, 43, 43, 0);
    display: none;
    visibility: hidden;
}

.tan-modal-container.active {
    display: block;
    visibility: visible;
}

.tan-modal-wrap {
    position: fixed;
    z-index: 1;
    top: 0;
    bottom: 0;
    left: 0;
    transform: translatex(-150%);
    background-color: var(--color-bg-body);
    width: 93%;
    max-width: 98vw;
    max-height: 100vh;
    -webkit-overflow-scrolling: touch;
    /* Tối ưu cuộn trên iOS */
    touch-action: auto !important;
    overflow-x: hidden;
    overflow-y: scroll;
    display: flex;
    flex-direction: column;
    align-items: center;
    box-shadow: var(--box-shadow-modal-container);
}

.tan-modal-content {
    width: 100%;
    margin: 0;
    padding: 3em 1em 3em 1em;
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
}

.close-modal-button {
    position: fixed;
    transform: translatex(100vw);
    top: 1em;
    right: 2%;
    font-size: 16px;
    padding: 10px;
    font-weight: bold;
    z-index: 9999999;
    color: var(--color-text);
    visibility: hidden;
    opacity: 1;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: var(--color-bg-body);
    width: 35px;
    height: 35px;
    line-height: 1;
    border-radius: 30px;
    box-shadow: var(--box-shadow-modal-container);
}

/**
 * END Tan Modal ---------------------------------
 * */

/**
 * GeneratePress theme custom ---------------------------------
 * */

/* Theme page core */
.separate-containers.no-sidebar .site-main {
    margin-top: 0;
}

.page-content:not(:first-child),
.entry-content:not(:first-child),
.entry-summary:not(:first-child) {
    margin-top: 0;
}

.separate-containers .inside-article,
.separate-containers .comments-area,
.separate-containers .page-header,
.separate-containers .paging-navigation {
    padding: var(--padding-container);
}

.entry-content {
    padding-top: clamp(20px, 5vw, 50px);
    padding-bottom: clamp(20px, 5vw, 50px);
}

/* END Theme page core */

/* Theme single post core */
.single .page-header-image-single {
    display: none !important;
}

.single .separate-containers .inside-article,
.single .separate-containers .comments-area,
.separate-containers .page-header,
.single .separate-containers .paging-navigation {
    padding: .5em !important;
}

.single .entry-meta {
    display: none !important;
}

@media (max-width:600px) {
    .separate-containers .inside-article {
        padding: .5em;
    }
}

/* END Theme single post core */

/**
 * END GeneratePress theme custom ---------------------------------
 * */


/**
* Swiper cutom ---------------------------------
*/
.swiper {
    width: 100%;
    height: auto;
}

.swiper-wrapper {
    padding-bottom: 2.5em;
    gap: unset;
}

.swiper-slide {
    text-align: center;
    font-size: 18px;
    display: flex;
    justify-content: center;
    align-items: center;
}

.swiper-slide img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: cover;
}

/**
* END Swiper cutom ---------------------------------
*/

/**
* Plugin PhotoSwipe cutom ---------------------------------
*/
.pswp__button {
    background-color: #ffffff30 !important;
}

/**
* END Plugin PhotoSwipe cutom ---------------------------------
*/

/**
* Plugin Gravity form cutom ---------------------------------
*/
.gform-theme--framework {
    max-width: 700px;
    margin: 0 auto;
}

.gform-theme--framework .gfield--type-section .gsection_title {
    margin-bottom: 0 !important;
}

.gform_title {
    font-size: clamp(25px, 7vw, 35px);
    color: var(--color-bg-link);
    margin-bottom: 5px;
}

.gform_description {
    color: var(--color-title);
    font-size: var(--font-size-18);
}

.gform_drop_area.gform-theme-field-control {
    background: #ffffff9c;
}

.gform_required_legend {
    display: none;
}

.gform-body fieldset label {
    cursor: pointer;
}

/* radio gform */
.gform-theme--framework input[type=radio]:where(:not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *))::before {
    background-color: var(--color-warning) !important;
}

/* gform total input */
.gfield--type-total {
    display: flex !important;
    gap: .5em !important;
}

label.gfield_label.gform-field-label {
    word-wrap: normal !important;
    white-space: nowrap !important;
}

input.ginput_total {
    background: none !important;
    border: none !important;
    box-shadow: none !important;
    font-size: var(--font-size-17) !important;
}

.gform-theme--framework input[type=checkbox]:where(:not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *))::before {
    color: var(--color-success);
    font-weight: bold;
}

.gform-theme--framework .gf_progressbar .percentbar_blue {
    background-color: var(--color-link);
}

.gform_page_footer {
    position: relative;
}

/* gform footer - spinner loader */
.gform_footer {
    position: relative !important;
    width: 100% !important;
    max-width: 500px !important;
    margin: 2em auto !important;
}

.gform_footer .gform-loader {
    position: absolute !important;
    right: 10px;
    font-size: 2.5px;
    border-block-end-color: #f7dfb6 !important;
    border-block-start-color: #f9f3e863 !important;
    border-inline-end-color: #f7dfb6 !important;
    border-inline-start-color: #f9f3e863 !important;
}

/* gform button */
.gform_button.button {
    width: 100% !important;
    display: block;
    text-transform: uppercase !important;
    font-size: var(--font-size-16) !important;
    font-weight: 600 !important;
    background-color: var(--color-bg-link) !important;
    color: var(--color-bg-body) !important;
}

.gform_previous_button {
    color: #ebebeb !important;
}

.form-confirm {
    border: 1px dashed #0303036b;
    border-radius: var(--border-radius-extra-large);
    ;
    padding: 0 1em;
    margin-top: 2em;
}

/**
* END Plugin Gravity form cutom ---------------------------------
*/

/**
 * Shortcode style ---------------------------------
 * */

/* Shortcode [hours_working] */
.hours-working {
    font-size: var(--font-size-20);
}

.hours-working h4 {
    margin-bottom: .2em;
    font-size: var(--font-size-30);
}

.hours-working p {
    margin-bottom: 0.3em;
}

.hours-working .day-off {
    font-weight: 700;
}

.hours-working-button {
    display: flex;
    align-items: center;
    gap: 1em;
    flex-wrap: wrap;
    justify-content: center;
    margin-top: 1em;
    font-size: var(--font-size-16);
}

.hours-working-button a {
    display: inline-flex;
    align-items: center;
    gap: .5em;
    line-height: 1;
}

.hours-working-icon-button {
    background-color: var(--color-title);
    padding: .4em;
    border-radius: var(--border-radius-extra-large);
    color: var(--color-text-light);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: var(--font-size-16);
}

/* wfs modal hours_working */
/* END Shortcode [hours_working] */


/**
 * Header customize ---------------------------------
 * */

header#masthead {
    position: relative;
    top: 0;
    left: 0;
    right: 0;
    margin: 0 auto;
    max-height: 1550px;
    overflow: hidden;
    background-color: var(--color-bg-bottom-right);
}

.inside-header {
    margin: 0;
    padding: 0;
}

.site-logo {
    display: none !important;
    /* hide original logo theme */
}

/**
 * Inside Header content ---------------------------------
 * */
.inside-header-content {
    width: 100%;
    margin: 0 !important;
    padding: 0;
}

/* ---- Default page top banner ---- */
.page-top-banner-wrap {
    position: absolute;
    width: 100%;
    height: 100%;
}

.page-top-banner-content video,
.page-top-banner-content img {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
    height: 100%;
    object-fit: cover;
    opacity: 1;
    object-position: 20% 0%;
}

.page-top-banner-content video {
    backface-visibility: hidden;
    will-change: transform;
}

img.cover-normal {
    object-position: 50% 65%;
    border-bottom: 1px solid #b7afa4;
}

/* ---- Default site logo with menu ---- */
/* Logo custom */
.site-logo-with-menu {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .5em;
    padding-top: 1em;
    padding: 0 var(--padding-container);
    padding-top: 1em;
    max-width: var(--max-width-session);
    margin: 0 auto;
    margin-bottom: 2em;
}

.logo-custom {
    border-radius: 100%;
    background-color: #ffffff5e;
    box-shadow: 4px 4px 9px #98989836, -4px -4px 9px #ffffff4f;
    padding: 3px 3px 0px 1px;
    align-content: center;
    vertical-align: middle;
    line-height: 1;
}

.site-logo-with-menu .logo-custom {
    width: clamp(55px, 10vw, 70px);
}

.nav-below-header .main-navigation .inside-navigation.grid-container,
.nav-above-header .main-navigation .inside-navigation.grid-container {
    padding: 0;
}

/* Navigator main menu */
#menu-primary-menu li a {
    margin: 1em 2px;
    padding: 0 .8em;
    line-height: 40px;
    border-radius: var(--border-radius-large);
    font-size: var(--font-size-20);
    color: var(--color-text-header);
    transition: var(--transition-background-color, --transition-transform);
    -webkit-transition: var(--transition-background-color, --transition-transform);
    -moz-transition: var(--transition-background-color, --transition-transform);
    -o-transition: var(--transition-background-color, --transition-transform);
}

#menu-primary-menu li a:hover {
    background-color: var(--color-bg-link);
    color: var(--color-text-light);
}

li.current-menu-item a {
    border: 1px solid var(--color-bg-link);
}

/* none border menu archive */
li#menu-item-275 a {
    border: none;
}

#menu-primary-menu li a:active {
    color: var(--color-bg-body) !important;
    background-color: var(--color-link-active) !important;
    transform: scale(1.015, 1.03) !important;
}

/* Toggle button open menu */
.toggle-button-mobile-menu button {
    width: 100%;
    padding: .6em;
    font-size: 20px;
}

/* Navigator menu min-width 769px */
@media (min-width: 769px) {

    .toggle-button-mobile-menu,
    .logo-in-modal-wrapper,
    .main-navigation .hours-working-wrapper {
        display: none;
    }

    .main-navigation {
        position: unset;
        overflow: unset;
        z-index: unset;
        width: unset;
        height: unset;
        background-color: unset;
        display: unset;
        visibility: unset;
    }

    .main-navigation .inside-navigation {
        position: unset;
        transform: unset;
        background: unset;
        width: unset;
        height: unset;

    }

    .main-navigation .tan-modal-wrap {
        box-shadow: none;
    }

    .main-navigation .tan-modal-content {
        opacity: unset;
        position: unset;
        padding: unset;
    }
}

/* Mobile menu popup max-width:768px */
@media (max-width: 768px) {
    .inside-header-home .site-logo-with-menu {
        display: flex;
        padding: clamp(.5em, 2vw, 1em);
        flex-direction: column;
        align-items: center;
        gap: 1em;
    }

    .main-navigation ul,
    .gen-sidebar-nav,
    .main-navigation:not(.slideout-navigation):not(.toggled) .main-nav>ul,
    .has-inline-mobile-toggle #site-navigation .inside-navigation>*:not(.navigation-search):not(.main-nav) {
        display: flex;
        flex-direction: column;
        color: var(--color-link);
    }

    .inside-navigation .main-nav {
        margin: 3em 0;
        padding: 2em 0;
        border-top: 1px solid var(--color-border-line-dark);
        border-bottom: 2px solid var(--color-border-line-dark);
    }

    .inside-navigation .logo-in-modal-wrapper {
        max-width: clamp(70px, 20vw, 90px);
        margin: 0 auto;
    }

    #menu-primary-menu li a {
        font-size: var(--font-size-25);
        margin: .3em 0;
        color: var(--color-text-link);
    }

    header#masthead {
        color: var(--color-text);
    }

    /* close icon popop mobile menu */
    .close-mobile-menu-button {
        background-color: var(--color-bg-dark);
        color: var(--color-text-light);
    }

    /* Working hours in popup mobile menu */
    .inside-navigation .hours-working h3 {
        font-size: var(--font-size-45);
    }

    .inside-navigation .hours-working-button {
        justify-content: center;
    }
}

/* ----- Title page in header  ----- */
.page-title-in-header {
    color: var(--color-text-header);
    text-align: center;
    margin: .5em 0 2.5em 0;
    padding-left: var(--padding-container);
    padding-right: var(--padding-container);
    position: relative;
    z-index: 1;
    text-shadow: var(--text-shadow-warm);
}

.page-title-in-header h5 {
    margin: 0;
}

.page-title-in-header h1 {
    width: 100%;
    font-size: var(--font-size-65);
    text-transform: uppercase;
    margin: 0;
    word-wrap: normal !important;
    white-space: nowrap !important;
    text-overflow: ellipsis;
    display: inline-block;
    overflow: hidden;
    color: var(--color-title);
}


/**
 * END Header customize ---------------------------------
 * */

/**
 * Page theme custom ---------------------------------
 * */

.featured-image.page-header-image.grid-container.grid-parent,
.entry-title {
    display: none;
}

/**
 * END Page theme custom ---------------------------------
 * */

/**
 * Homepage design --------------------------------- */

/* ----- Preloader homepage ----- */
#preloader-container {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: var(--color-bg-dark); 
    z-index: 999999;
    margin: 0;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
}

.loader-wrapper {
    position: relative;
    width: 140px;
    height: 140px;
    opacity: 0;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* Kiểu dáng vòng tròn */
.loader-ring {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
}

.loader-ring svg {
    width: 100%;
    height: 100%;
    filter: drop-shadow(0 0 8px rgba(205, 188, 161, 0.3)); 
}

.loader-logo {
    position: relative;
    z-index: 2;
    width: 85px;
}

.loader-logo figure {
    margin: 0;
    line-height: 1;
    display: flex;
    align-items: center;
    justify-content: center;
}

.loader-logo img {
    width: 100%;
    height: auto;
    object-fit: contain;
}

/* ----- Inside header homepage ----- */
.inside-header-home {
    width: 100%;
    min-height: 100vh;
    max-height: 14400px;
    overflow-x: hidden;
    overflow-y: auto;
}

/* Homegroup welcome */
.inside-header-home .group-welcome {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: center;
    position: relative;
    z-index: 1;
}

.group-welcome #menu-primary-menu li a:hover {
    color: #f6f6f6;
}

/* Home banner logo with menu */
.inside-header-home .site-logo-with-menu {
    display: flex;
    flex-direction: column;
    padding-top: 2em;
}

.inside-header-home .site-logo-with-menu .logo-custom {
    width: clamp(70px, 10vw, 85px);
    margin: 0 auto;
}

/* home banner welcome warp */
.home-welcome-wrap {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    width: 100%;
    margin-top: 5%;
    margin-bottom: 15%;
}

/* Home welcome block scroll */
.home-welcome-block {
    width: 100%;
    padding: .5em;
    position: relative;
}

.home-welcome-block.welcome-home {
    max-width: 950px;
}

.home-welcome-block.logo-text {
    width: 95%;
    max-width: 900px;
    margin: 0 auto;
}

.home-welcome-block.logo-text h1 {
    font-size: clamp(5rem, 18vw, 13rem);
    color: var(--color-title);
    line-height: 1;
}

.home-welcome-block.logo-text h3 {
    font-size: clamp(3rem, 10vw, 5rem);
    margin-bottom: -5px;
    color: var(--color-title);
}

.home-below-welcome h2 {
    font-size: clamp(30px, 4vw, 59px);
    margin-bottom: -20px;
    color: var(--color-bg-link);
    letter-spacing: 8px;
    margin-top: -8px;
    line-height: 1;
    margin-left: 10px;
}

.home-below-welcome h4 {
    font-size: clamp(26px, 8vw, 75px);
    letter-spacing: 3px;
    line-height: 1.1;
    text-transform: uppercase;
}

.home-below-welcome h5 {
    font-size: clamp(22px, 6vw, 45px);
    text-transform: uppercase;
    letter-spacing: 11px;
    line-height: 1;
}

.logo-text figure {
    max-width: 80vw;
}

.block-content {
    padding-bottom: 41vh;
}

.block-content h1 {
    font-size: var(--font-size-85);
    padding-bottom: 2em;
}

.scroll-content.scroll-5 h1 {
    padding: 0;
    margin: .2em;
    padding-top: 1em;
}

.scroll-content.scroll-6 {
    margin-top: 1em;
    max-width: 450px;
    margin: 0 auto;
}

.scroll-content.scroll-6 a {
    display: block;
    padding: .2em 1em;
    font-size: var(--font-size-30);
    font-weight: 500;
    margin-bottom: .1em;
}

.home-session {
    display: block;
    margin: 0 auto;
}

/**/
#post-2 .entry-content {
    padding: 0;
}

/* ==========================================================================
   Homepage Section design
   ========================================================================== */

/* ----- homepage Section global ----- */
.section-wrap {
    width: 100%;
    max-width: 100%;
    position: relative;
    overflow: hidden;
}

.global-section {
    padding: 80px var(--padding-container);
}

.global-container {
    display: grid;
    grid-template-columns: 2.5fr 1fr;
    gap: clamp(10px, 3vw, 60px);
    max-width: var(--max-width-section);
    margin: 0 auto;
}

.global-section a.button-link {
    padding: .5em clamp(3rem, 5vw, 6rem);
    text-align: center;
    line-height: 1.2;
}

.dropcap-letter {
    margin-right: 2px;
    background: var(--color-text);
    display: inline-flex;
    margin-bottom: -4px;
    align-items: center;
    justify-content: center;
    transform: translateY(-10px);
    border-radius: var(--border-radius-min);
    padding: .3em 1em;
}

.dropcap-letter h3 {
    font-size: var(--font-size-65);
    color: var(--color-text-light);
    transform: translateY(-3px);
    line-height: 1;
    margin:0;
    padding: 0;
}

.reserve-box {
    background: var(--color-title);
    color: var(--color-text-light);
    padding: 35px 20px;
    margin-bottom: 40px;
    border-radius: var(--border-radius-min);
}

.reserve-box h2 {
    font-size: clamp(30px, 4vw, 80px);
    font-weight: 700;
}

.reserve-small {
    font-size: var(--font-size-20);
    text-transform: uppercase;
    font-style: italic;
    padding: 0;
    display: flex;
    align-items: center;
    gap: 1em;
}

.reserve-small .text {
    font-size: var(--font-size-25);
    line-height: 1.1;
    white-space: nowrap;
}

.reserve-small .line {
    width: 100%;
    height: 1px;
    background-color: var(--color-text-light);
}

.section-line-break {
    width: 100%;
    border-top: 1px solid var(--color-border-mid);
    max-width: var(--max-width-section);
    margin: 2em auto;
}

@media (max-width: 475px) {
    .dropcap-letter {
        transform: translateY(-7px);
    }

    .reserve-small .text {
        white-space: normal;
    }
}

@media (max-width: 700px) {
    .global-section {
        padding-top: 20px;
        padding-bottom: 20px;
    }

    .global-container {
        grid-template-columns: 1fr;
    }
}

/* ----- homepage - sec-speisekarte ----- */
/* LEFT */
.sec-speisekarte-left {
    margin-bottom: 3em;
}

.sec-speisekarte .sec-speisekarte-title {
    font-size: clamp(3.6rem, 8vw, 9rem);
    color: var(--color-title);
    line-height: 1;
    margin-bottom: 30px;
    padding: 0;
    font-weight: 700;
}

.sec-speisekarte-visual {
    text-align: center;
    max-width: 95%;
    margin: 0 auto;
}

.sec-speisekarte-visual img {
    width: 100%;
    max-width: 650px;
}

.sec-speisekarte-button {
    text-align: right;
    margin-top: 3em;
}

/* RIGHT */
.sec-speisekarte-right {
    border-left: 1px solid var(--color-border-mid);
    padding-left: clamp(10px, 4vw, 40px);
}

.sec-speisekarte .contact-visual {
    text-align: center;
    max-width: 95%;
    margin: 0 auto;
}

.sec-speisekarte .contact-visual img {
    width: 100%;
    height: 100%;
    margin: 20px 0;
    max-width: 400px;
}

.sec-speisekarte-right a.button-link {
    margin-bottom: 1.5em;
}

.sec-speisekarte-right .hours-working-button {
    display: none !important;
}

.sec-speisekarte .contact-info {
    text-align: center;
}

.sec-speisekarte-right .phone a {
    font-size: clamp(25px, 3vw, 35px);
    font-style: italic;
}

.sec-speisekarte-right .info-block {
    margin: 1em auto;
}

.sec-speisekarte-right .info-block h4 {
    font-weight: 500;
}

@media (max-width: 700px) {
    .sec-speisekarte {
        padding-top: 60px;
    }

    .sec-speisekarte .sec-speisekarte-title {
        font-size: clamp(2.2rem, 12vw, 6rem);
        text-align: center;
    }

    .sec-speisekarte-right {
        padding: 0;
        border: none;
    }

    .sec-speisekarte .reserve-box h2 {
        font-size: clamp(30px, 10vw, 65px);
    }

    .sec-speisekarte .contact-visual img {
        margin-top: 0;
    }
}

/* ----- homepage - sec-mittag and sec-order-online ----- */
.sec-mittag-order {
    padding-bottom: 0;
}

.sec-mittag-container {
    align-items: stretch;
}

.sec-mittag-title {
    font-size: clamp(4rem, 8vw, 9rem);
    color: var(--color-title);
    line-height: 0.9;
    margin: 0 0 15px 0;
}

.sec-mittag-subtitle {
    font-size: clamp(2rem, 8vw, 7rem);
    color: var(--color-bg-link);
    line-height: 0.9;
}

.italic-title {
    font-size: clamp(2.2rem, 3.5vw, 4.5rem);
    color: var(--color-title);
    font-style: italic;
    line-height: 1.1;
    text-align: center;
    margin-bottom: 20px;
    padding-bottom: 40px;
}

.mittag-content {
    display: grid;
    grid-template-columns: 1.5fr 1fr;
    margin-top: 4em;
    min-height: 750px;
}

.sketch-img, .sketch-img-small {
    mix-blend-mode: multiply;
    filter: contrast(1.1) grayscale(.7);
}

.aesthetic-photo {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border: 1px solid var(--color-border-mid);
}

/* LEFT COLUMN  */
.sec-mittag-left {
    border-right: 1px solid var(--color-border-mid);
    padding-right: clamp(10px, 3vw, 60px);
    display: flex;
    flex-direction: column;
    padding-bottom: 40px;
}

.mittag-top-row {
    display: flex;
    gap: 30px;
    margin-bottom: 40px;
    flex-direction: column;
}

.mittag-photo {
    margin-top: 5em;
    display: flex;
}

.mittag-info-wrap {
    display: flex;
    align-items: center;
    justify-content: center;
    padding-left: clamp(10px, 3vw, 60px);
}

.info-inner-box {
    border: 1px solid var(--color-border-input);
    text-align: center;
    width: 100%;
    height: 100%;
    border-radius: var(--border-radius-min);
    background-color: var(--color-bg-input);
    box-shadow: var(--box-shadow-input);
}

.info-inner-box .drink-sketch {
    max-width: 100%;
    margin: 0px auto 2em auto;
}

.info-inner-box .drink-sketch img {
    width: 100%;
    height: 100%;
    margin-top: -10em;
}

.info-inner-box .info-text {
    padding: clamp(.7em, 2vw, 2em);
}

.info-inner-box h4 {
    font-weight: 700;
}

.info-inner-box h5 {
    margin-bottom: 3em;
}

.sec-online-order {
    padding-top: 0;
}

.online-order-left {
    border-right: 1px solid var(--color-border-mid);
    padding: 0;
    margin: 0;
    padding-right: clamp(10px, 3vw, 60px);
}

.online-order-left h2.sec-mittag-title {
    margin-bottom: 2rem;
}

.order-header-wrap {
    display: grid;
    grid-template-columns: 1fr;
    gap: 20px;
    align-items: end;
    margin-bottom: 40px;
    border-top: 1px solid var(--color-border-mid);
    padding-top: 80px;
}

.product-sketch-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1px;
    margin: 4.3em auto;
}

.product-item {
    text-align: center;
}

.product-item figure {
    display: flex;
    align-items: center;
    justify-content: center;
    max-width: 450px;
    margin: 0 auto;
    padding: 0;
    margin-bottom: 1em;
}

.product-item .sketch-img {
    max-height: 100%;
    width: auto;
}

.prod-name {
    font-weight: 600;
    color: var(--color-bg-link);
    text-transform: uppercase;
    font-size: var(--font-size-25);
}

.action-shop {
    text-align: right;
}

.sec-mittag-right {
    display: flex;
    flex-direction: column;
}

.specials-section {
    text-align: center;
    margin-bottom: 80px;
}

.special-item {
    margin: 0em auto;
    border-bottom: 1px solid var(--color-border-mid);
    padding: 1.5em 0;
}

.special-name {
    font-weight: 600;
    font-size: var(--font-size-35);
    color: var(--color-bg-link);
}

.special-item figure {
    max-width: 280px;
    margin: 0 auto 15px auto;
    width: 90%;
}
/* Note */
.online-order-right h4 {
    line-height: 1;
}

.cooks-note-section {
    text-align: center;
    margin-top: -2.5em;
}

.cooks-note-section h3.right-title {
    line-height: .9;
    font-size: clamp(2.2rem, 4.5vw, 4.5rem);
}

.note-red-box {
    background-color: var(--color-title);
    color: var(--color-text-light);
    padding: clamp(10px, 2vw, 60px);
    margin-bottom: 0;
}

.note-greeting, .note-signature {
    font-size: clamp(25px, 3.5vw, 35px);
    font-style: italic;
    margin: 20px 0;
}

.note-red-box p {
    font-size: var(--font-size-18);
}

.note-photo figure {
    margin: 0;
    height: 100%;
    border: 10px solid var(--color-title);
    border-radius: 0 0 2px 2px;
}

.note-photo img {
    max-height: 650px;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

@media (max-width: 850px) {
    .sec-mittag-container {
        grid-template-columns: 1fr;
    }

    .sec-mittag-left {
        border: none;
    }

    .sec-mittag-left {
        border: none;
        padding-right: 0;
    }

    .sec-mittag-left .sec-mittag-title {
        font-size: clamp(2.4rem, 12vw, 9rem);
    }

    .sec-mittag-subtitle {
        font-size: clamp(1.8rem, 10vw, 7rem);
    }

    .italic-title {
        font-size: clamp(2.5rem, 11vw, 5rem);
        text-align: left;
        margin-bottom: 0;
    }

    .cooks-note-section h3.right-title {
        font-size: clamp(3.2rem, 9.5vw, 5.5rem);
    }

    .spec-item-wrap {
        display: grid;
        grid-template-columns: 1fr 1fr;
    }

    .special-item {
        padding: 3em .7em 0 .7em;
        margin-bottom: -10px;
        border: none;
    }

    .specials-section .italic-title {
        padding: 0;
        border: none;
    }

    .sec-online-order-container {
        grid-template-columns: 1fr;
    }

    .online-order-left {
        margin: 0;
        padding: 0;
        border: none;
    }

    .online-order-left h2.sec-mittag-title {
        margin-bottom: 2rem;
        font-size: clamp(3rem, 14vw, 7rem);
    }

    .online-order-right {
        display: grid;
        grid-template-columns: 1fr 1fr;
        margin-top: 5em;
    }

    .cooks-note-section {
        margin-top: 5em;
    }
}

@media (max-width: 550px) {
    .mittag-content {
        grid-template-columns: 1fr;
        margin: 0;
    }

    .mittag-photo {
        margin-top: 2em;
    }

    .mittag-info-wrap {
        padding: 0;
        margin-top: 4em;
    }

    .info-inner-box {
        width: 80%;
        max-width: 400px;
    }

    .info-inner-box .drink-sketch img {
        margin: 0;
    }

    .spec-item-wrap {
        grid-template-columns: 1fr;
    }

    .specials-section .italic-title {
        text-align: center;
    }

    .special-item {
        margin: 0 auto;
        max-width: 380px;
        border-top: 1px dashed var(--color-border-line);
        padding: 0;
        margin-top: 2em;
        padding-top: 3em;
    }

    .special-item figure {
        max-width: 75%;
    }

    .product-sketch-grid {
        grid-template-columns: 1fr;
        gap: 30px;
    }    

    .product-item {
        text-align: center;
        max-width: 400px;
        margin: 0 auto;
    }

    .action-shop {
        text-align: center;
    }

    .online-order-right {
        grid-template-columns: 1fr;
        max-width: 428px;
        margin: 0 auto;
        border-top: 1px solid var(--color-border-mid);
        margin-top: 5em;
    }
}

/* ----- homepage - sec-sushi ----- */
.sec-sushi-container {
    grid-template-columns: 1fr;
    align-items: center;
}

.sushi-title .title {
    background: var(--color-title);
    color: var(--color-text-light);
    padding: 20px;
    font-size: clamp(4rem, 12vw, 13rem);
}

.sushi-top-row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    border: 10px solid var(--color-title);
    border-radius: var(--border-radius-mid);
}

.sushi-top-row h3 {
    color: var(--color-bg-link);
    padding: 20px;
    font-size: clamp(22px, 2.5vw, 45px);
}

.sushi-pencil figure {
    padding-top: 1em;
    width: 95%;
    margin: auto;
}

.sushi-bottom-row {
    display: grid;
    grid-template-columns: 1fr 2fr;
    gap: 20px;
    margin-top: 2em;
}

.btn-sushi {
    margin-top: 2em;
}

.sushi-bottom-row .product-sketch-grid {
    margin: 0;
}

.sushi-item.product-sketch-grid figure {
    height: 100%;
    max-height: 365px;
}

.sushi-item.product-sketch-grid figure img {
    height: 100%;
    width: auto;
    object-fit: cover;
}

@media (max-width: 978px) {
    .btn-sushi {
        margin-top: 3em;
    }

    .sushi-bottom-row {
        grid-template-columns: 1fr;
        gap: 3.5em;
    }

    .sushi-item.product-sketch-grid figure {
        height: auto;
        max-height: 100%;
    }
}

@media (max-width: 700px) {
    .sushi-top-row {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 550px) {
    .sushi-bottom-row .prod-name {
        margin-bottom: 20px;
    }
}

/* ----- homepage - sec-gutschein ----- */
.sec-gutschein-container {
    grid-template-columns: 1fr;
}

.sec-gutschein-right {
    position: relative;
    min-height: 776px;
    overflow: hidden;
    border-radius: var(--border-radius-mid);
    display: flex;
    align-items: center;
    box-shadow: var(--box-shadow-image);
    background: var(--color-bg-bottom-right);
    margin: 0 auto;
    width: 100%;
    border-left: clamp(5px, 2vw, 40px) solid var(--color-title);
}

.gutschein-pic {
    position: absolute;
    right: 0;
    top: 0;
    max-width: 500px;
}

.gutschein-bottom-row {
    display: grid;
    grid-template-columns: 2fr 1fr;
    width: 100%;
}

.gutschein-content {
    padding: 20px;
    max-width: 700px;
    margin: 0 auto;
}

.gutschein-content h4 {
    text-transform: uppercase;
    font-weight: 600;
    font-size: var(--font-size-25);
}

.highlight {
    display: flex;
}

.highlight h1 {
    font-size: clamp(3rem, 14vw, 8rem);
    line-height: .8;
    color: var(--color-title);
    padding: 0 1rem;
    margin: 1rem 0 2rem 0;
}

.gutschein-content .symbolic {
    border-right: 3px solid var(--color-title);
    padding-left: 0;
}

.btn-gutschein {
    margin: 60px 0;
    position: relative;
}

@media (max-width: 700px) {
    .gutschein-bottom-row {
        grid-template-columns: 1fr;
    }

    .gutschein-pic {
        right: -100px;
    }
}

@media (max-width: 450px) {
    .gutschein-content .symbolic {
        display: none;
    }

    .highlight h1 {
        padding: 0;
    }
}


/* ----- homepage - sec-about-us ----- */
.sec-about-us-container {
    grid-template-columns: 1.3fr 1fr;
    border-left: none;
    border-right: none;
}

/* LEFT */
.sec-about-us-left {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.sec-about-us .reserve-box h2 {
    font-size: clamp(4.5rem, 9vw, 10rem);
}

.sec-about-us-left h1 {
    font-size: clamp(25px, 5vw, 45px);
    margin-top: -2em;
    padding: 2em 0;
}

/* RIGHT */
.sec-about-us-right figure {
    width: 100%;
    height: 100%;
    overflow: hidden;
    min-height: 870px;
}

.sec-about-us-right img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border: 1px solid var(--color-border-mid);
}

@media (max-width: 700px) {
    .sec-about-us-container {
        grid-template-columns: 1fr;
    }

    .sec-about-us-left h1 {
        font-size: clamp(25px, 9vw, 45px);
        margin: 0;
        margin-bottom: 1em;
        padding: 20px 0;
    }

    .sec-about-us .reserve-box h2 {
        font-size: clamp(3rem, 16vw, 10rem);
    }
}
/**
 * END Homepage design ---------------------------------
 * */

/**
 * Page gutschein design ---------------------------------
 * */
.page-gutschein-container {
    position: relative;
    display: flex;
    justify-content: center;
    width: 100%;
    max-width: var(--max-width-session);
    margin: 0 auto;
}

.page-gutschein-container .column {
    box-sizing: border-box;
    padding: 4em var(--padding-container);
}

.gutschein-left {
    background-color: var(--color-bg-content-light);
    flex: 4.3;
    border-radius: var(--border-radius-large)
}

.gutschein-left .page-gutschein-content {
    max-width: 600px;
    margin: 0 auto;
}

.gutschein-left .page-gutschein-content h1 {
    color: var(--color-title);
}

.page-gutschein-image {
    max-width: 85%;
    margin: 0 auto;
    margin-top: 3em;
}

.page-gutschein-image img {
    border-radius: var(--border-radius-large);
    box-shadow: 0px 5px 20px #cfccbe;
}

.gutschein-right {
    flex: 5.7;
}

/* gform message error */
.gform-theme--framework .gform_validation_errors {
    border-radius: var(--border-radius-large) !important;
}

/* Confirm message */
.gutschein-confirm-container {
    background-color: var(--color-bg-body);
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 1em;
}

.gutschein-confirm {
    font-size: var(--font-size-16);
    font-weight: 500;
    text-align: center;
    border: 1px dashed var(--color-border-mid);
    border-radius: var(--border-radius-large);
    padding: 1.5em;
    max-width: 1000px;
    background-color: var(--color-bg-content-light);
}

.gutschein-confirm figure {
    padding: .5em;
}

.gutschein-confirm svg {
    font-size: 50px;
    color: var(--color-success);
}

.gutschein-confirm h2 {
    color: var(--color-success);
}

@media(max-width: 780px) {
    .page-gutschein-container {
        flex-wrap: wrap;
    }

    .page-gutschein-text {
        text-align: center;
    }

    .page-gutschein-container .column {
        flex: unset;
        width: 100%;
    }

    .gutschein-left h1, .page-gutschein-text h5 {
        text-align: center;
    }

    .column.gutschein-right .gform_heading {
        text-align: center;
    }
}

/**
 * END Page Gutschein design ---------------------------------
 * */

/**
 * Page cancellation-policy design ---------------------------------
 * */

#post-11 .entry-content {
    max-width: 850px;
    margin: auto;
}

.cancellation-policy-wrapper {
    border: 15px solid var(--color-bg-link);
    border-radius: var(--border-radius-large);
    background-color: var(--color-bg-content-light);
    overflow: hidden;
    box-shadow: 0 0 50px #7070705c;
}

.cancellation-policy-wrapper .wp-block-image {
    background-color: var(--color-bg-dark);
    padding: 2em .5em;

}

.cancellation-policy-content {
    padding: var(--padding-container);
}


/**
 * END Page cancellation-policy ------------------------------------------------------------------
 * */

/**
 * Page privacy-policy design ---------------------------------
 * */

#post-3 .wp-block-group {
    padding-left: 1em;
    margin-bottom: 2em;
}

#post-3 .wp-block-group h4 {
    margin-bottom: .25em;
}

/**
 * END Page privacy-policy ---------------------------------
 * */

/**
 * Page Impressum design ---------------------------------
 * */

#post-224 .wp-block-group {
    max-width: 1200px;
    margin: auto;
    margin-bottom: 4em;
    border: 1px dashed var(--color-main);
    border-radius: var(--border-radius-large);
    padding: var(--padding-container);
}

/**
 * END Page Impressum design ---------------------------------
 * */

/**
 * ShopPage foodstore design ------------------------------------------------------------------
 * */

.page-top-banner-wrap.page-id-7 {
    background: linear-gradient(to bottom, #f9e0c4, #4d4235);
}

 img.cover-shop {
    object-position: 45% 90%;
    opacity: .7;
}

/* Shoppage container */
article#post-95 .entry-content {
    padding-top: 0;
}

#foodstore_shop_container {
    position: relative;
    display: block;
    width: 100%;
}

#foodstore {
    margin: 1em auto;
}

#foodstore .fs-row, .wfs-cart-wrapper .fs-row {
    margin: 0 !important;
}

/* important fix margin */
.fs-container {
    width: var(--max-width-session);
    padding-right: 0;
    padding-left: 0;
}

#wfs-food-items {
    padding-left: var(--padding-container);
    padding-right: var(--padding-container);
}

.fs-container a,
.fs-container a:hover {
    color: var(--color-link);
}



/* END Shoppage container */

/* -----  Direct link order type ----- */
#direct_order_type_modal_container .tan-modal-wrap {
    justify-content: center;
}
#direct_order_type_modal_container .tan-modal-content {
    text-align: center;
    max-height: 100%;
}
.direct-order-type-body .info {
    padding: .3em 0;
    font-size: var(--font-size-17);
    font-style: italic;
}
.direct-order-type-body .take-away {
    margin-bottom: 2em;
    border-bottom: 1px dashed var(--color-border-mid);
}

/* ----- WFS sidebar categories ----- */
ul.wfs-sidebar-content.tan-modal-content.wfs-category-grid {
    padding: 5% 0;
}

.wfs-cat-image-wrap {
    display: none !important;
}

.wfs-cat-image-wrap img {
    max-height: 300px;
    width: auto;
}

.wfs-sidebar-menu ul a {
    display: flex;
    align-items: center;
    gap: 2em;
    max-width: 700px;
    margin: 0 auto;
    padding: 1.5em var(--padding-container);
    border-bottom: 1px dashed var(--color-border-line);
}

.wfs-sidebar-menu ul li a:hover {
    background-color: var(--color-bg-note);
}

.wfs-sidebar-menu ul li a.active {
    background-color: var(--color-bg-note);
    font-weight: 700;
}

.wfs-sidebar-menu .wfs-cat-name {
    font-size: clamp(34px, 6.5vw, 55px);
    color: var(--color-title);
    line-height: 1;
}

.wfs-sidebar-menu .wfs-cat-description {
    font-size: var(--font-size-20);
    color: var(--color-text);
}

.wfs-sidebar-menu .wfs-cat-description .cate-second-title {
    font-size: clamp(25px, 5.5vw, 45px);
    color: var(--color-bg-link);
    line-height: 1;
}

/* ---- WFS search bar stick ---- */
.wfs-search-container {
    position: sticky;
    position: -webkit-sticky;
    top: 0;
    z-index: 1;
    background-color: var(--color-bg-body);
    padding: 0;
    padding-top: 1.5em;
    box-shadow: 0 20px 25px 25px #e1d8ce96;
    margin-bottom: clamp(2em, 10vw, 3em);
}

.wfs-search-wrap {
    position: relative;
    display: flex;
    border-radius: 0 0 5px 5px;
    align-items: center;
    gap: 1em;
    width: 100%;
}

.search-bar-item a {
    align-items: center;
    justify-content: center;
    color: var(--color-text-light);
    background: var(--color-bg-link);
    font-size: 23px;
    width: 42px;
    height: 42px;
    display: inline-flex;
    cursor: pointer;

}

.search-bar-item a:hover {
    color: var(--color-text-light);
    background: var(--color-bg-link);
}

/* WFS Search wrap */
.search-wrap {
    position: relative;
    flex: 1;
    display: inline-flex;
    align-items: center;
}

.wfs-search-container .wfs-food-search {
    border-radius: var(--border-radius-extra-large) !important;
    height: 100%;
    border: 1px solid var(--color-bg-link) !important;
}

.search-bar-content {
    width: 100%;
}

/* Add class "searching" */
input.wfs-food-search.searching,
input.wfs-food-search.searching:focus {
    border: 2px solid var(--color-warning) !important;
    color: var(--color-warning) !important;
    font-size: var(--font-size-20);
}

.search-wrap i.wfs-icon-search,
.search-wrap i.wfs-icon-close {
    position: absolute;
    top: 50%;
    transform: translatey(-50%);
    right: .2em;
    font-size: 23px;
    cursor: pointer;
    padding: 0 .5em;
    color: var(--color-title);
}

.search-wrap i.wfs-icon-close {
    font-size: 25px;
    right: 0;
    color: var(--color-error);
}

/* Open search btn */
.open-search-btn i.wfs-icon-search {
    position: unset;
    top: unset;
    right: unset;
    position: relative;
    color: var(--color-text-light);
    padding: 0 .5em;
}

/* Close search btn */
.close-search-mobile {
    cursor: pointer;
}

/* Btn Kasse */
.search-bar-item .text {
    width: unset;
    padding: 0 1em;
    color: var(--color-text-light);
    font-size: var(--font-size-20);
    text-transform: uppercase;
    background: var(--color-bg-link);
}

.search-bar-item .text:hover {
   background: var(--color-bg-link); 
   color: var(--color-text-light);
}

/* Search notification */
#search_notification {
    display: none;
    padding: 1em;
    text-align: center;
    color: var(--color-warning);
}

.open-category-btn.search-bar-item .icon {
        display: none;
    }

@media (max-width: 750px) {
    .open-category-btn.search-bar-item .icon {
        display: inline-flex;
    }
    .open-category-btn.search-bar-item .text {
        display: none;  
    }
}

@media (min-width: 501px) {

    .open-search-btn,
    .close-search-mobile,
    .wfs-search-wrap .wfs-proceed-to-checkout.icon {
        display: none;
    }
}

@media (max-width: 500px) {
    .wfs-search-wrap {
        justify-content: center;
        align-items: unset;
    }

    .search-bar-item a {
        width: 40px;
        height: 40px;
        font-size: 21px;
    }

    .wfs-proceed-to-checkout.text {
        display: none;
    }

    .search-wrap {
        position: absolute;
        width: 100%;
        max-width: 0%;
        overflow: hidden;
        padding: 0;
        background-color: var(--color-bg-body) !important;
        z-index: 1;
        transition: var(--transition-max-width);
        -webkit-transition: var(--transition-max-width);
        -moz-transition: var(--transition-max-width);
        -o-transition: var(--transition-max-width);
        left: 0;
    }

    .search-wrap.mobile-focusing {
        max-width: 100%;
        overflow: visible;
    }

    /* Mobile close search */
    .close-search-mobile {
        padding-right: .5em;
        line-height: 1;
        font-size: 20px;
    }

    .close-search-mobile i {
        color: var(--color-warning);
        font-weight: 700;
    }
}

/* END Mobile search bar sticky  */

/* ---- END WFS search bar stick ---- */

/* -----  WFS Shop item design ----- */
.wrapper-category {
    position: relative;
}

.wfs-food-item-container {
    align-items: center;
    max-width: 100%;
    flex-flow: nowrap;
    margin-bottom: 1em;
}

.wfs-food-item-container:after {
    display: none;
}

/* WFS item images */
.wfs-food-item-image-container {
    padding-right: 0;
    padding-left: 0;
}

.wfs-food-item-image-container img {
    object-fit: cover;
    width: 100% !important;
    height: 100%;
    border-radius: var(--border-radius-mid) !important;
}

/* WFS cate description */
.wfs-category-short-desciption {
    color: var(--color-title);
    font-weight: 600;
    font-size: var(--font-size-25);
    line-height: 1;
    margin-top: -5px;
    margin-bottom: 0;
}

p.cate_des_spec {
    text-align: center;
    max-width: 600px;
    border: 1px dashed #a5a5a5;
    border-radius: var(--border-radius-extra-large);
    ;
    color: #292929;
    font-size: 17px;
    line-height: 1.2;
    padding: 10px;
    margin: 10px auto !important;
}

p.cate_des_spec.special-product {
    font-weight: 600;
    border-color: var(--color-bg-link);
    color: var(--color-bg-link);
    ;
}

/* WFS title and description item */
.wfs-food-item-title {
    font-size: var(--font-size-25);
    font-weight: 400;
}

.second-title-product {
    font-size: var(--font-size-16);
}

sup.sub-info-product {
    font-weight: 400;
    padding-right: .7em;
}

.des-wraming-product {
    color: var(--color-warning);
}

.wfs-food-item-description {
    display: inline !important;
    color: var(--color-text);
    text-align: left;
}

.special-product {
    display: inline-block;
    font-weight: 600;
    color: var(--color-bg-link);
    font-size: var(--font-size-20);
}

.wfs-food-item-summery {
    padding: 0;
}

.main-description-product {
    font-size: var(--font-size-17);
}

.wfs-food-item-summery .main-description-product {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
}

.wfs-food-item-summery ul.main-description-product {
    overflow: visible;
    display: flex;
    margin: 0;
    flex-direction: column;
    margin-left: 1em;
}

.wfs-food-item-summery .price {
    display: none !important;
}

span.TaniNox_Price_shop {
    font-weight: 600;
    vertical-align: middle;
    display: inline-block;
    color: var(--color-bg-link)
}

i.wfs-icon-plus {
    font-weight: 700;
}

/* Button plus and price item */
.wfs-food-item-cart-action .button-add-to-cart {
    display: inline-flex !important;
    width: 36px;
    height: 36px;
    color: var(--color-text-light);
    padding: 0;
    margin-top: 0;
}

.button-add-to-cart:active {
    background-color: var(--color-link-active) !important;
}

.button-add-to-cart i {
    font-size: 20px;
}

.button-add-to-cart svg {
    font-size: 25px;
}

button.fs-btn.fs-btn-primary.button-add-to-cart.wfs-product-modal {
    display: none;
    border-radius: 100%;
}

@media (max-width: 375px) {
    .fs-text-right.wfs-food-item-cart-action {
        flex-direction: row;
        margin-left: auto;
    }
}

/* information food */
.infomation-food-wrap {
    display: flex;
    margin-top: 3em;
    justify-content: center;
}

.infomation-food-content {
    text-align: center;
    padding: 1em;
    border-radius: var(--border-radius-extra-large);
    border-top: 1px dashed var(--color-border-line);
    margin: 2em 0 2em 0;
}

.infomation-food-content h4 {
    margin-bottom: 0;
    margin-top: 1em;
}

.warpper-after-image {
    flex: 100%;
    display: flex;
    align-items: start;
    justify-content: flex-end;
    padding: 0;
    gap: .5em;
}

/* Add class "not-in-search-custom" */
.wfs-category-title-container.not-in-search-custom {
    display: block;
    visibility: hidden !important;
    height: 0 !important;
    overflow: hidden !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* WFS Cate title */
.wfs-food-item-title:hover {
    color: var(--color-link-active) !important;
}

.wfs-category-title-container .wfs-category-title {
    color: var(--color-title) !important;
    line-height: 1;
    font-size: clamp(2.7rem, 10vw, 6rem);
    margin-bottom: -10px !important;
}

.wfs-category-title-container .cate-second-title {
    color: var(--color-bg-link);
    margin-bottom: 10px !important;
    line-height: 1;
    font-size: clamp(2.2rem, 8vw, 4.5rem);
}

.cate-second-title.smaller {
    font-size: var(--font-size-35);
    color: var(--color-bg-link);
    margin: 5px 0 !important;
}

.wfs-category-title-container {
    margin: 6em .5em 3em;
}

/* ----- Custom layout in live search ----- */
.layout-in-search .shop-category-image, .layout-in-search img, .layout-in-search .wfs-food-item-image-container,
.layout-in-search .wfs-category-title-container, .layout-in-search .product-listing-end {
    display: none !important;
}

.layout-in-search .wrapper-category {
    max-width: 1000px !important;
    margin: 0 auto;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    padding: 0 !important;
}

.layout-in-search .category-content {
    box-shadow: none !important;
    display: flex !important;
    flex-direction: column;
    max-width: 615px !important;
    margin: 0 auto !important;
}

.layout-in-search .wrapper-list-product {
    margin: 0 !important;
    padding: 0 !important;
    border: none !important;
    display: block;
}

.layout-in-search .warpper-after-image {
    display: flex !important;
    padding: 0 .5em 0 .5em;
}

.layout-in-search .wrapper-list-product .fs-row {
    display: flex !important;
    flex-direction: column !important;
    width: 100% !important;
}

.layout-in-search .fs-text-right.wfs-food-item-cart-action {
    flex-direction: column !important;
    margin: 0 !important;
    padding: 0 !important;
}

.layout-in-search .fs-col-lg-6.fs-col-md-6.fs-col-sm-12.fs-col-xs-12.fs-2-columns {
    margin: 0 !important;
    padding: 0 !important;
    display: flex;
    justify-content: flex-start !important;
    width: 100% !important;
    max-width: 100% !important;
}

.layout-in-search .layout-in-search .fs-text-right.wfs-food-item-cart-action {
    margin: 0 !important;
    padding: 0 !important;
}


/* ----- Custom Category shop page ----- */

/* Custom shop page global */
#wfs-food-items .category-content {
    display: grid;
    grid-template-columns: .9fr 1fr;
    box-shadow: var(--box-shadow-image);
}

.shop-category-image {
    line-height: .6;
}

.shop-category-image figure {
    width: 100%;
    height: 100%;
}

.shop-category-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: 30%;
}

.wrapper-list-product {
    display: flex;
    flex-direction: column;
    justify-content: center;
    border: 1px solid var(--color-title);
    border-left: 1px dashed rgb(73 73 73 / 55%);
    border-radius: var(--border-radius-mid);
    padding: clamp(.5em, 4.5vw, 3em) clamp(.5em, 4.5vw, 4em);
}

.wrapper-list-product .fs-row {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    width: 100%;
}

.wrapper-list-product .fs-col-lg-6.fs-col-md-6.fs-col-sm-12.fs-col-xs-12.fs-2-columns {
    width: 100%;
    display: flex;
    align-items: flex-start;
}

@media (max-width:1024px) {
    #wfs-food-items .category-content {
        grid-template-columns: 1fr 1.2fr;
    }
}

@media (max-width:678px) {
    #wfs-food-items .category-content {
        grid-template-columns: 1fr 1.3fr;
    }
}

@media (max-width:539px) {
    #wfs-food-items .category-content {
        grid-template-columns: 1fr;
    }
}

/* ===== Custom: shop category 1fr ===== */
#category_49_wrapper .category-content,
#category_50_wrapper .category-content,
#category_51_wrapper .category-content,
#category_52_wrapper .category-content,
#category_53_wrapper .category-content {
    grid-template-columns: 1fr !important;
}

#category_49_wrapper .shop-category-image img,
#category_50_wrapper .shop-category-image img,
#category_51_wrapper .shop-category-image img,
#category_52_wrapper .shop-category-image img,
#category_53_wrapper .shop-category-image img {
    max-height: 420px;
    min-height: 200px;
}

#category_49_wrapper .wrapper-list-product,
#category_50_wrapper .wrapper-list-product,
#category_51_wrapper .wrapper-list-product,
#category_52_wrapper .wrapper-list-product,
#category_53_wrapper .wrapper-list-product {
    border-left: 1px solid var(--color-title);
    border-top: 1px dashed rgb(73 73 73 / 55%);
}

@media (min-width: 601px) {
    #category_49_wrapper .wrapper-list-product .fs-row,
    #category_50_wrapper .wrapper-list-product .fs-row,
    #category_51_wrapper .wrapper-list-product .fs-row,
    #category_52_wrapper .wrapper-list-product .fs-row,
    #category_53_wrapper .wrapper-list-product .fs-row {
        display: grid;
        grid-template-columns: 1fr 1fr;
    }

    #category_49_wrapper .wrapper-list-product .fs-row::before,
    #category_50_wrapper .wrapper-list-product .fs-row::before,
    #category_51_wrapper .wrapper-list-product .fs-row::before,
    #category_52_wrapper .wrapper-list-product .fs-row::before,
    #category_53_wrapper .wrapper-list-product .fs-row::before {
        content: none;
    }

    #category_49_wrapper .right-col,
    #category_50_wrapper .right-col,
    #category_51_wrapper .right-col,
    #category_52_wrapper .right-col,
    #category_53_wrapper .right-col {
        padding-left: clamp(.5em, 1.5vw, 2em);
    }

    #category_49_wrapper .left-col,
    #category_50_wrapper .left-col,
    #category_51_wrapper .left-col,
    #category_52_wrapper .left-col,
    #category_53_wrapper .left-col {
        padding-right: clamp(.5em, 1.5vw, 2em);
    }
}


/* ====== Custom: shop category Special Sushi ====== */
@media (min-width: 601px) {
    #category_54_wrapper .wrapper-list-product .fs-row {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        grid-auto-rows: auto;
        align-items: stretch;
    }

    #category_54_wrapper .wrapper-list-product .fs-row::before {
        content: none;
    }

    #category_54_wrapper .right-col {
        padding-left: clamp(.5em, 1.5vw, 2em);
    }

    #category_54_wrapper .left-col {
        padding-right: clamp(.5em, 1.5vw, 2em);
    }
}

#category_54_wrapper .category-content {
    grid-template-columns: 1fr;
    box-shadow: none;
}

div#category_54_image {
    display: none;
}

#category_54_wrapper .wrapper-list-product {
    border:none;
    padding: 0;
}

#category_54_wrapper .wfs-food-item-container {
    display: flex;
    grid-template-columns: 1fr;
    width: 100%;
    margin-bottom: 0;
    padding-bottom: 1.5em;
    border: 1px dashed var(--color-border-line);
    border-radius: var(--border-radius-mid);
    box-shadow: var(--box-shadow-item);
    flex-direction: column;
    height: 100%;
}

#category_54_wrapper .warpper-after-image {
    padding: .8em clamp(.5em, 1.5vw, 1em) 1em;
    width: 100%;
}

#category_54_wrapper .wfs-food-item-image-container {
    width: 100%;
    height: 100%;   
}

#category_54_wrapper .wfs-food-item-image-container img {
    min-height: 180px;
    max-height: 280px;
}


/* ====== Custom: shop category Sushi Combo ====== */
@media (max-width:649px) {
    #category_57_wrapper .category-content {
        grid-template-columns: 1fr !important;
    }
}





/* Custom: MON TRUA – MITTAGSKARTE */

/* #category_17_wrapper div#category_17_image {
    flex: 65%;
    max-width: 50%;
}

div#category_17_wrapper .wfs-category-title-container {
    text-align: center;
}

div#category_17_wrapper .warpper-after-image {
    display: block;
}

div#category_17_wrapper .fs-text-right.wfs-food-item-cart-action {
    flex-direction: row; 
    gap: 1em;
    padding: 0;
    padding-top: .5em;
}

div#category_17_wrapper .button-add-to-cart {
    margin-top: 0;
} */

/* Custom: SUPPEN */
/* div#category_24_wrapper {
    max-width: 1000px;
    margin: auto;
}

div#\32 4_start {
    text-align: center;;
}

div#category_24_image {
    float: left;
    width: 35%;
}

#category_24_wrapper .fs-row {
    display: flex;
    flex-direction: column;
}

#category_24_wrapper .fs-col-lg-6.fs-col-md-6.fs-col-sm-12.fs-col-xs-12.fs-2-columns {
    width: 100%;
    justify-content: flex-start;
}

@media (max-width:768px) {
    div#category_24_image {
        float: unset;
        display: flex;
        justify-content: center;
        margin: 0 auto;
        margin-top: -3em;
        width: 50%;
    }
    #category_24_wrapper .fs-col-lg-6.fs-col-md-6.fs-col-sm-12.fs-col-xs-12.fs-2-columns {
        width: 100%;
        justify-content: center;
    }
} */

/* VORSPEISE */
/* div#category_25_wrapper {
    max-width: 1200px;
    margin: 0 auto;
    margin-top: 4em;
}

div#category_25_image {
    float: right;
    margin-top: -14em;
    margin-bottom: 2em;
    margin-right: 2em;
    max-width: 45%;
    height: 362px;
}

div#category_25_image img {
    width: 100%;
    height: 100%;
    max-height: 100%;
    object-fit: cover;
    object-position: center;
}

@media (max-width: 830px) {
    div#category_25_wrapper {
        margin-top: 0;
    }
    div#\32 5_start {
        text-align: center;
    }
    div#category_25_image {
        float: none;
        margin: -1em auto 3em auto;
        width: 100%;
        overflow: hidden;
        max-width: 550px;
        max-height: 250px;
    }
    div#category_25_image img {
        width: 100%;
        height: 100%;
        max-width: 100%;
        max-height: 100%;
        object-fit: cover;
    }
} */

/* GOI - SALAT */
/* div#category_26_wrapper {
    max-width: 1100px;
    margin: 0 auto;
}

div#\32 6_start {
    text-align: center;
}

#category_26_wrapper .wrapper-list-product {
    padding-top: 1.5em;
}

div#category_26_image {
    float: left;
    margin-right: 1em;
    max-width: 42%;
    height: 310px;
}

div#category_26_image img {
    width: 100%;
    height: 100%;
    max-height: 100%;
    object-fit: cover;
    object-position: center;
}

#category_26_wrapper .wrapper-list-product .fs-row {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
}

#category_26_wrapper .fs-col-lg-6.fs-col-md-6.fs-col-sm-12.fs-col-xs-12.fs-2-columns {
    width: 100%;
}

@media (max-width: 660px) {
    div#category_26_image {
        float: none;
        margin: -1em auto 3em auto;
        width: 100%;
        overflow: hidden;
        max-width: 550px;
        max-height: 250px;
    }
    div#category_26_image img {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }
} */

/* SPEZIALITÄTEN DES HAUSES */
/* div#category_33_wrapper {
    max-width: 1200px;
    margin: 0 auto;
}

div#\33 3_start {
    position: relative;
}

div#\33 3_start h3 {
    text-align: center;
    border: 1px dashed var(--color-title);
    max-width: 600px;
    border-radius: var(--border-radius-extra-large);
    padding: .2em .2em 0 .2em;
}

div#category_33_image {
    float: right;
    margin-top: -1em;
    height: 635px;
    max-width: 41%;
}

div#category_33_image img {
    width: 100%;
    height: 100%;
    max-height: 100%;
    object-fit: cover;
    object-position: center;
}

#category_33_wrapper .fs-row {
    display: flex;
    flex-direction: column;
}

#category_33_wrapper .fs-col-lg-6.fs-col-md-6.fs-col-sm-12.fs-col-xs-12.fs-2-columns {
    display: flex;
    justify-content: flex-start;
    width: 100%;
}

@media (max-width: 660px) {
    div#category_33_image {
        float: none;
        margin: -1em auto 3em auto;
        width: 100%;
        overflow: hidden;
        max-width: 550px;
        max-height: 250px;
    }
    div#\33 3_start {
        text-align: center;
    }
    div#\33 3_start h3 {
        margin: 0 auto !important;
    }
} */

/* MON CHINH
WARME HAUPTGERICHTE */
/* div#category_43_wrapper {
    max-width: 1200px;
    margin: 0 auto;
}

#category_43_wrapper div#category_43_image {
    float: left;
    margin-top: -1em;
    height: 608px;
    max-width: 42%;
}

div#category_43_image img {
    width: 100%;
    height: 100%;
    max-height: 100%;
    object-fit: cover;
    object-position: center;
}

#category_43_wrapper .wrapper-list-product {
    margin-top: -1em;
}

#category_43_wrapper .fs-row {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
}

#category_43_wrapper .fs-col-lg-6.fs-col-md-6.fs-col-sm-12.fs-col-xs-12.fs-2-columns {
    width: 100%;
    justify-content: flex-end;
}

@media (max-width: 660px) {
    #category_43_wrapper div#category_43_image {
        float: none;
        margin: -1em auto 3em auto;
        width: 100%;
        overflow: hidden;
        max-width: 550px;
        max-height: 250px;
    }
    div#\34 3_start {
        text-align: center;
    }
} */

/* NIGIRI */
/* div#category_46_wrapper, #category_60_wrapper {
    max-width: 1200px;
    margin: 0 auto;
    overflow: visible;
}

div#\34 6_start, div#\36 0_start {
    margin-bottom: 1em;
}

div#\36 0_start {
    margin-top: 0;
}

div#classic-nigiri_end {
    border: none;
    margin-bottom: -5em;
}

#category_60_wrapper .fs-row {
    display: flex;
    flex-direction: column;
}

div#category_60_image {
    float: right;
    margin-top: -17em;
    height: 480px;
    max-width: 45%;
}

div#category_60_image img {
    max-height: 453px;
}

#category_60_wrapper .fs-col-lg-6.fs-col-md-6.fs-col-sm-12.fs-col-xs-12.fs-2-columns {
    width: 100%;
    justify-content: flex-start;
    max-width: 90%;
}

@media (max-width: 768px) {
    div#\34 6_start, div#\36 0_start {
        text-align: center;
    }
    #category_60_wrapper .fs-col-lg-6.fs-col-md-6.fs-col-sm-12.fs-col-xs-12.fs-2-columns {
        max-width: 100%;
    }
    div#category_60_wrapper {
        display: flex;
        flex-direction: column;
    }
    div#\36 0_start {
        order: 2;
    }
    div#category_60_image {
        float: none;
        height: auto;
        order: 1;
        margin: 0 auto;
        max-width: 75%;
        padding: 0;
        margin-top: -4em;
        margin-bottom: -2em;
    }
    #category_60_wrapper .wrapper-list-product {
        order: 3;
    }
    div#aburi-nigiri_end {
        order: 4;
    }
} */

/* Maki Rolls */
/* div#category_47_wrapper {
    max-width: 1200px;
    margin: 0 auto;
}

div#\34 7_start {
    text-align: left;
    margin-top: 6em;
}

div#category_47_image {
    float: right;
    margin-top: -8em;
    max-width: 50%;
}

@media (max-width: 1200px) {
    div#\34 7_start {
        text-align: center;
        margin-top: 5em;
    }
    div#category_47_image {
        float: none;
        max-width: 100%;
        width: 98%;
        text-align: center;
        margin: 0 auto;
        margin-top: -3em;
    }
} */

/* INSIDE OUT ROLL (hidden) */
/* div#category_61_wrapper {
    text-align: center;
}

h3#\36 1 {
    font-size: var(--font-size-85);
}

div#category_61_image {
    margin-top: -3em;
}

#category_61_wrapper .wrapper-list-product, div#inside-out-rolls_end {
    display: none;
} */

/* INSIDE OUT */
/* #category_49_wrapper, #category_50_wrapper, #category_51_wrapper, #category_52_wrapper, #category_53_wrapper {
    max-width: 1200px;
    margin: 0 auto;
}

div#veggie-inside-out-rolls_end, div#chicken-inside-out_end, div#salmon-inside-out_end, div#duck-inside-out_end {
    border: none;
}

div#\34 9_start, div#\35 0_start, div#\35 1_start, div#\35 2_start, div#\35 3_start {
    margin-top: .5em;
    margin-bottom: .5em;
} 

#category_50_wrapper, #category_51_wrapper, #category_52_wrapper, #category_53_wrapper {
    margin-top: -6.5em;
}

div#\35 4_start {
    text-align: center;
}

h3#\34 9, h3#\35 0, h3#\35 1, h3#\35 2, h3#\35 3 {
    font-size: var(--font-size-45);
    padding-top: .5em;
}

@media (max-width: 550px) {
    h3#\34 9, h3#\35 0, h3#\35 1, h3#\35 2, h3#\35 3 {
        text-align: center;
    } 
} */

/* SPECIAL SUSHI */
/* div#category_54_wrapper {
    max-width: 1100px;
    margin: 0 auto;
}

div#\35 4_start {
    text-align: center;
}

#category_54_wrapper .shop-category-image {
    float: left;
    max-width: 41%;
    height: 650px;
}

#category_54_wrapper .shop-category-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    max-height: 100%;
}

#category_54_wrapper .fs-row {
    display: flex;
    flex-direction: column;
}

#category_54_wrapper .fs-col-lg-6.fs-col-md-6.fs-col-sm-12.fs-col-xs-12.fs-2-columns {
    width: 100%;
    display: flex;
    justify-content: flex-end;
}

@media (max-width: 700px) {
    #category_54_wrapper .shop-category-image {
        float: none;
        margin: -1em auto 3em auto;
        width: 100%;
        overflow: hidden;
        max-width: 100%;
        height: 250px;
    }
    #category_54_wrapper .shop-category-image img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        max-height: 100%;
    }
} */

/* SASHIMI */
/* div#category_55_wrapper {
    max-width: 1100px;
    margin: 0 auto;
}

div#\35 5_start {
    text-align: center;
}

div#category_55_image {
    float: left;
    margin-top: -1.5em;
    width: 38%;
}

.category_55_image .shop-category-image img {
    max-height: 320px;
    width: auto;
}

#category_55_wrapper .fs-row {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
}

#category_55_wrapper .fs-col-lg-6.fs-col-md-6.fs-col-sm-12.fs-col-xs-12.fs-2-columns {
    width: 100%;
}

@media (max-width: 700px) {
    div#category_55_image {
        float: none;
        display: flex;
        justify-content: center;
        margin: 0 auto;
        margin-top: -2em;
        width: 60%;
    }
} */

/* FUTO BIG ROLLS */
/* div#category_56_wrapper {
    max-width: 1200px;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
}

div#\35 6_start {
    order: 1;
    text-align: center;
}

div#category_56_image {
    order: 3;
    margin-top: -10em;
    margin-bottom: -5em;
}

div#category_56_image img {
    max-height: 385px;
    float: right;
    margin-right: 1.2em;
    max-width: 50%;
}

#category_56_wrapper .wrapper-list-product {
    order: 2;
}

div#futo-big-rolls_end {
    order: 4;
}

@media (max-width: 768px) {
    div#category_56_wrapper {
        display: unset;
    }
    div#category_56_image {
        margin-top: -4em;
        margin-bottom: 0;
        float: none;
        width: 100%;
        text-align: center;
    }
    div#category_56_image img {
        max-height: 385px;
        float: none;
        margin-right: 0;
        max-width: 75%;
    }
} */

/* Sushi Combo */
/* div#category_57_wrapper {
    max-width: 1200px;
    margin: 0 auto;
}

div#\35 7_start {
    margin-left: 2.5em;
}

h3#\35 7 {
    font-size: var(--font-size-65);
}

div#category_57_image {
    float: left;
    max-width: 45%;
}

div#category_57_image img {
    max-height: 500%;
}

#category_57_wrapper .wrapper-list-product {
    margin-top: -8.5em;
}

#category_57_wrapper .fs-row {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
}

#category_57_wrapper .fs-col-lg-6.fs-col-md-6.fs-col-sm-12.fs-col-xs-12.fs-2-columns {
    width: 100%;
}

@media (max-width: 768px) {
    div#\35 7_start {
        margin-left: 0;
        text-align: center;
    }
    div#category_57_image {
        float: none;
        max-width: 55%;
        margin: auto;
        margin-top: -3em;
    }
    #category_57_wrapper .wrapper-list-product {
        margin-top: 0;
    }
} */

/* DESSERT */
/* div#category_58_wrapper {
    max-width: 1200px;
    margin: 0 auto;
}

div#\35 8_start {
    text-align: center;
    position: relative;
}

h3#\35 8 {
    font-size: var(--font-size-75);
}

#category_58_wrapper div#category_58_image {
    text-align: center;
    margin-top: -4em;
}

div#category_58_image img {
    max-height: 350px;
    max-width: 60%;
}

#category_58_wrapper .wrapper-list-product {
    margin-top: -3em;
}

#category_58_wrapper .fs-row {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.fs-col-lg-6.fs-col-md-6.fs-col-sm-12.fs-col-xs-12.fs-2-columns {
    display: flex;
    justify-content: center;
}

div#dessert_end {
    border: none;
} */
/*
* END Custom Category shop page
*/

/*
* Custom mobile item shop
*/

@media(min-width:769px) {
    .fs-col-md-6 {
        width: 50%;
    }
}

@media(max-width:550px) {
    #wfs-food-items {
        padding: 0;
    }
}

/* -----  END WFS Shop item design ----- */


/* -----  WFS bottom cart design ----- */

/* WFS bottom cart bar sticky */
.wfs-cart-overview {
    background-color: var(--color-bg-body) !important;
    box-shadow: var(--box-shadow-modal) !important;
    border-top: 1px solid var(--color-border-input);
    padding-left: var(--padding-container);
    padding-right: var(--padding-container);
}

.wfs-cart-overview>div.fs-container {
    padding-left: 0;
    padding-right: 0;
}

.wfs-cart-overview-row {
    padding: 0;
    padding-bottom: .5em;
    gap: .5em;
}

.wfs-cart-toggle {
    width: unset;
    align-items: center;
    display: inline-flex;
    position: relative;
}

.wfs-cart-toggle a {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    gap: 5px;
    font-size: var(--font-size-30);
}

.wfs-cart-toggle .wfs-cart-subtotal-custom {
    font-size: var(--font-size-20);
}

span.count-items-mini {
    position: absolute;
    background-color: var(--color-title);
    width: 21px;
    height: 21px;
    border-radius: 100%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: var(--color-text-light);
    font-size: 13px;
    right: -20px;
    top: 0;
}

.wfs-cart-overview-description {
    width: unset;
    margin-right: .5em;
    margin-right: auto;
    line-height: 30px;
    display: block;
}

.wfs-cart-overview-description p {
    font-size: var(--font-size-18);
    text-wrap: nowrap;
}

.wfs-cart-service-settings {
    width: unset;
    font-size: var(--font-size-16);
    display: block !important;
    margin-left: auto;
    padding-right: 1em;
    position: relative;
    top: 3px;
}

.wfs-cart-service-settings .wfs-change-service {
    color: var(--color-warning) !important;
    font-weight: 600;
}

.wfs-cart-purchase-actions {
    flex: unset;
}

.wfs-cart-subtotal {
    font-size: var(--font-size-20) !important;
}

a.wfs-clear-cart,
.wfs-change-service-mobile {
    display: none !important;
}

.fs-btn-md {
    border-radius: var(--border-radius-extra-large);
}

.fs-btn-md.fs-btn-primary.wfs-proceed-to-checkout {
    border-radius: var(--border-radius-extra-large);
    padding-left: 1.25em;
    padding-right: 1.25em;
}

.fs-text-right .wfs-cart-purchase-actions-mobile>a {
    margin: 0;
    padding: 0 .5em
}

.fs-text-right a.wfs-proceed-to-checkout {
    padding-right: 0;
}

.fs-text-right a.wfs-proceed-to-checkout svg {
    font-size: 25px;
    top: 3px;
    position: relative;
}

/* Info order setting in bottom cart */
.wfs-cart-overview-row .info-order-setting-wrapper {
    background: none;
    margin-bottom: 0;
    margin-left: 1em;
    padding: 0;
    font-size: var(--font-size-18);
}

.wfs-cart-overview-row .info-order-content {
    gap: .2em;
    line-height: 1;
}

@media (max-width:770px) {
    .wfs-cart-overview-row .info-order-setting-wrapper .info-order-label {
        display: none;
    }
}

@media (min-width: 671px) {
    .wfs-cart-purchase-actions-mobile {
        display: none !important;
    }

    .wfs-cart-purchase-actions,
    .wfs-cart-overview-description,
    .wfs-cart-service-settings {
        display: block;
    }
}

@media (max-width:670px) {

    .wfs-cart-service-settings,
    .wfs-cart-subtotal-custom .text {
        display: none;
    }

    .wfs-cart-overview-description {
        display: none !important;
    }
}

@media (max-width:550px) {

    .wfs-cart-overview-row .info-order-type,
    .wfs-cart-overview-row .info-order-date-time {
        display: none;
    }

    .wfs-cart-overview-row .info-order-type-time.mobile {
        display: inline-block;
    }
}

@media (max-width:405px) {
    .wfs-cart-overview-row .info-order-setting-wrapper {
        display: none;
    }

    .wfs-change-service-mobile {
        display: inline-block !important;
        margin-right: .5em !important;
    }
}

/*----- WFS bottom cart expanded customize -----*/
.wfs-cart-expanded {
    -webkit-transition: var(--transition-height), var(--transition-opacity);
    -moz-transition: var(--transition-height), var(--transition-opacity);
    -o-transition: var(--transition-height), var(--transition-opacity);
    transition: var(--transition-height), var(--transition-opacity);
}


.wfs-body-fade.active {
    background-color: var(--color-overlay);
    opacity: 1;
}

.wfs-cart-expanded.empty.active,
.wfs-cart-expanded.active {
    height: 75vh;
    padding-bottom: 1em !important;
    background-color: var(--color-bg-body)
}

.wfs-cart-expanded .fs-container {
    padding: 0 1.5em;
    height: 100%;
    padding-bottom: 35px;
}

.wfs-cart-content-area {
    background: var(--color-bg-input);
    box-shadow: var(--emboss-in-normal) !important;
    height: 100%;
    -webkit-overflow-scrolling: touch;
    padding: 1.5em;
    border: 1px solid var(--color-border-input);
    border-radius: var(--border-radius-mid);
}

.wfs-cart-expanded-header {
    padding: 0 0 .75em 0;
}

.wfs-cart-expanded-header .wfs-icon-close {
    background-color: var(--color-title);
    padding: 5px;
    border-radius: var(--border-radius-mid);
    font-size: var(--font-size-25) !important;
}

.wfs-cart-wrapper .wfs-close-cart-icon {
    border-radius: 100%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    height: 30px;
    padding: .2em;
}

.wfs-cart-wrapper .wfs-close-cart-icon i.wfs-icon-close {
    font-size: 21px;
}

.wfs-cart-wrapper i.wfs-icon-close {
    margin-right: -1px;
}

.wfs-empty-cart-container .wfs-empty-cart-image img {
    margin: 0 auto;
    mix-blend-mode: multiply;
    filter: contrast(1.1) grayscale(1);
}

/* cart expended content left */
.cart-content-left {
    width: 65%;
    padding-right: .65em;
}

.wfs-cart-item-container {
    padding-left: 0;
}

.wfs-cart-item {
    border-bottom: 1px dashed var(--color-border-min);
}

.wfs-cart-item-left {
    padding-right: .5em;
    display: inline-flex;
    flex-wrap: wrap;
    align-items: center;
}

.wfs-cart-item-title {
    margin: 0;
    flex-wrap: wrap;
    flex-direction: column;
}

.wfs-cart-item-title p {
    font-size: var(--font-size-18) !important;
}

p.special-items-cart-info {
    display: inline-block;
    font-size: var(--font-size-15) !important;
    border-radius: var(--border-radius-mid);
    color: var(--color-warning);
    font-weight: 500;
    padding-top: .3em;
}

.wfs-cart-actions.wfs-cart-item-edit,
.wfs-cart-actions.wfs-cart-item-delete {
    background-color: var(--color-bg-link);
    color: var(--color-text-light);
    display: inline-flex;
    justify-content: center;
    align-items: center;
    border-radius: 100%;
    margin-right: 1em;
    font-size: 18px;
    width: 30px;
    height: 30px;
}

.wfs-cart-actions.wfs-cart-item-edit:focus,
.wfs-cart-actions.wfs-cart-item-delete:focus {
    background-color: var(--color-link-active) !important;
}

.wfs-cart-actions.wfs-cart-item-delete {
    background-color: var(--color-warning);
    margin-right: 0;
}

i.wfs-icon-trash-o {
    margin-top: -1px;
    margin-right: -1px;
}

.fs-text-right {
    white-space: nowrap;
    padding-right: 0;
}

.fs-text-right.wfs-food-item-cart-action {
    display: inline-flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    gap: 7px;
}

.clear-cart-custom {
    text-align: right;
    padding: 1em .65em 2em 0;
}

.fs-btn-secondary {
    color: var(--color-warning) !important;
    border-color: var(--color-warning) !important;
    border-radius: var(--border-radius-extra-large);
    ;
}

button.fs-btn-md.fs-btn-secondary.wfs-clear-cart,
button.fs-btn-md.fs-btn-secondary.wfs-clear-cart:hover {
    background-color: var(--color-warning) !important;
    color: var(--color-bg-body) !important;
    border: none;
}

/* wfs addon in cart */
.wfs-cart-item-left .wfs-cart-addon,
.wfs-cart-item-left .wfs-special-instruction {
    display: block;
    width: 100%;
    font-weight: 500;
    font-size: var(--font-size-15) !important;
}

/* cart expended content right */
.cart-content-right {
    width: 40%;
    border-left: 1px solid var(--color-border-min);
    padding-left: .65em;
}

.wfs-cart-totals-container {
    padding-right: 0;
}

.wfs-cart-totals-container hr {
    background: none;
    border-top: 1px dashed var(--color-border-min);
}

.wfs-cart-totals-item-left {
    flex: unset !important;
}

.rebowl-box-note {
    display: block;
    font-size: var(--font-size-15);
    font-style: italic;
    font-weight: 500;
    color: var(--color-warning);
}

.wfs-cart-item {
    flex-wrap: wrap;
}

/* media max-width */
@media(max-width: 800px) {
    .wfs-cart-content-area {
        align-content: flex-start;
    }

    .wfs-cart-content-area {
        flex-wrap: wrap;
    }

    .cart-content-left,
    .cart-content-right {
        width: 100%;
        margin: 0;
        padding: 0;
    }

    .wfs-cart-item-container {
        padding-right: 0;
    }

    .cart-content-right {
        border-left: none;
        border-top: 1px solid var(--color-border-min);
        padding: 1.5em 0 4em 0;
        margin-top: .5em
    }

    .wfs-cart-totals-container {
        padding-left: 0;
    }
}

@media (max-width:767px) {
    .wfs-cart-totals-container {
        padding: 0;
    }

    .wfs-cart-actions.wfs-cart-item-edit {
        margin-right: .5em;
    }
}

@media (max-width:450px) {
    .wfs-cart-content-area {
        padding: .7em;
    }

    .wfs-cart-expanded .fs-container {
        padding-left: .7em;
        padding-right: .7em;
    }

    .fs-row.wfs-cart-item {
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        gap: .8em;
        padding: .3em 0;
    }

    .clear-cart-custom {
        text-align: left;
    }
}

/* Media max-height */
@media (max-height: 600px) {

    .wfs-cart-expanded.empty.active,
    .wfs-cart-expanded.active {
        height: 83vh;
        max-height: 100% !important;
    }
}

/* END WFS cart expanded */

/* -----  WFS Info Order Setting Wrapper ----- */

/* -----  WFS modal item ----- */

/* wfs modal dialog overlay */
#wfsModal,
.wfsmodal {
    z-index: 99999;
    background: var(--color-overlay);
    width: 100%;
    height: 100%;
    overflow: hidden;
}

.wfsmodal-dialog {
    top: 5%;
}

/* wfs modal container */
.wfsmodal-container {
    max-height: 100%;
    margin: 0;
    -webkit-overflow-scrolling: touch;
    border-radius: var(--border-radius-mid);
    /* hidden scrollbar */
    /* scrollbar-width: none;
    scrollbar-width: hidden; */
}

/* hidden scrollbar safari */
/* .inside-header-home::-webkit-scrollbar {
    display: none;
} */

.wfs-service-modal-container button.wfs-update-service:disabled, .wfs-service-modal-container button.wfs-update-service[disabled] {
    border: 1px solid #8080807d;
    background-color: #cccccc !important;
    color: gray;
    cursor: default;
    opacity: .8;
}

#wfsServiceModal .tab-content {
    margin-bottom: 1.5em;
    padding-bottom: 1.5em;
}

#wfsServiceModal .wfsmodal-container,
#wfsConfirmationModal .wfsmodal-container {
    max-width: 600px;
}

/* wfs modal header */
header.wfsmodal-header {
    background-color: var(--color-bg-link);
    box-shadow: 0 5px 15px -7px #383737;
    position: sticky;
    position: -webkit-sticky;
    top: 0;
    z-index: 9;
    justify-content: space-between;
    align-items: center;
    border-radius: 0;
    border-bottom: .6px solid var(--color-bg-body);
}

header.wfsmodal-header h5 {
    color: var(--color-text-light);
    font-size: var(--font-size-25);
    font-weight: 500;
}

.wfsmodal-container .wfsmodal-header .modal__close {
    width: 30px;
    height: 30px;
    border-radius: 30px;
    background-color: var(--color-bg-body) !important;
    color: var(--color-bg-link) !important;
}

.wfsmodal-header .modal__close:before {
    content: none;
}

button.modal__close i.wfs-icon-close {
    font-size: 21px;
    font-weight: bold;
}

/* wfs modal images item */
.product-image-container {
    text-align: center;
    margin-bottom: 20px
}

.product-image-container img {
    border-radius: var(--border-radius-mid);
    border: 1px solid #b5b5b5;
    box-shadow: 2px 2px 15px rgb(0 0 0 / 20%);
}

.wfsmodal {
    z-index: 99999;
}

.wfsmodal .modal-content-wrapper {
    display: block;
}

/* END wfs modal images item */

/* wfs Modal variable item */
.wfsmodal-body {
    overflow-y: scroll;
    overflow-x: hidden;
    height: 100%;
    -webkit-overflow-scrolling: touch;
    background-color: var(--color-bg-body);
    padding-bottom: 3em;
}

.inox_price_popup {
    padding-bottom: 1em;
    margin-bottom: 1.5em;
    border-bottom: 1px solid var(--color-border-element);
    font-weight: 600;
}

.product-content .main-description-product {
    padding-top: 1em;
}

.product-content ul.main-description-product {
    margin-left: 1em;
}

.product-content .des-wraming-product {
    margin-bottom: 0;
}

.wfs-variations .wfs-variation>div {
    padding-top: 8px;
    padding-bottom: 8px;
    display: inline-flex;
}

.wfsmodal input[type="checkbox"],
.wfsmodal input[type="radio"] {
    width: 1em !important;
    height: 1em !important;
}

.wfs-variation.wfs-variation-radio {
    border-bottom: 1px solid var(--color-border-min);
    padding: 5px 10px;
}

.wfs-variations .wfs-variation:hover {
    background-color: rgb(0 0 0 /5%);
    border-radius: var(--border-radius-mid);
}

p.wfs-pricing-option-label {
    display: none !Important;
}

.wfs-variation-image {
    display: none !Important;
}

.wfs-variation-info {
    width: 100%;
    display: flex;
}

.wfs-variation-name {
    display: inline-block;
    margin-right: 10px;
}

.wfs-variation-price {
    float: right;
}

span.inox_sub_desc {
    font-weight: 400;
}

.wfs-variation-price {
    font-weight: 600;
    margin-left: auto;
}

/* wfs Extra addon*/
h6.wfs-addon-category-title {
    margin-top: 10px;
    text-transform: uppercase;
}

/* wfs note popup */
.wfsmodal .wfs-special-instruction-wrapper {
    margin-top: 1em;
}

/* wfs modal add to cart button */
.wfsmodal-footer .wfs-modal-add-to-cart a {
    display: flex;
    align-items: center;
    justify-content: center;
    line-height: 1;
    font-size: var(--font-size-16);
    padding: 0 5px;
    border-radius: var(--border-radius-extra-large);
    height: 100%;
    min-height: 44px;
    background-color: var(--color-bg-link);
}

.wfsmodal-footer .wfs-modal-add-to-cart a:active {
    background-color: var(--color-link-active) !important;
    transform: scale(1.015, 1.03) !important;
}

.wfsmodal-footer .wfs-modal-add-to-cart svg {
    font-size: 25px;
}

.add-to-cart-icon {
    font-size: var(--font-size-30);
    display: none;
}

/* wfs modal footer */
footer.wfsmodal-footer {
    position: sticky;
    position: -webkit-sticky;
    bottom: 0;
    width: 100%;
    background-color: var(--color-bg-body);
    box-shadow: 0 -5px 15px -12px #383737;
    border-top: 1px solid var(--color-bg-body);
}

.wfs-modal-actions{
    align-items: center;
}

.wfs-modal-count input {
    min-height: 44px;
    padding-bottom: 2px !important;
}

input.wfs-qty-btn.wfs-qtyminus {
    border-radius: var(--border-radius-extra-large) 0 0 var(--border-radius-extra-large) !important;
}

input.wfs-qty-btn.wfs-qtyplus {
    border-radius: 0 var(--border-radius-extra-large) var(--border-radius-extra-large) 0 !important;
}

.wfs-modal-quantity{
    flex: 1;
}

.wfs-modal-quantity .wfs-qty-input{
    width: 50px;
}

@media (max-width: 921px) or (max-height: 921px) {
    .wfsmodal-dialog {
        top: 5px;
        bottom: 5px;
    }

    footer.wfsmodal-footer {
        padding-bottom: 30px;
    }
}

@media (max-width: 400px) {
    .wfsmodal-body {
        padding: 1.5em .5em 2em .5em;
    }

    .wfs-variation.wfs-variation-radio {
        padding: 5px 0;
    }

    .wfs-variation-radio .wfs-variation-info .wfs-variation-price {
        margin-right: 0;
    }

        .wfs-modal-actions{
            padding: 0 5px;
        }
}

@media (max-width: 335px) {
    .wfs-cart-action-text {
        display: none;
    }

    .add-to-cart-icon{
        display: block;
    }
}

/* -----  END WFS modal item ----- */

/* -----  WFS modal service date time ----- */

.wfs-service-dates-wrapper,
.wfs-service-time-wrapper {
    font-size: var(--font-size-16);
}

.wfs-service-time-wrapper.loading-button {
    border-radius: var(--border-radius-mid);
}

.wfs-service-modal-container select {
    padding: 0.4em 1.8em 0.4em .8em !important;
    min-height: 41px !important;
    height: unset !important;
}

.foodstore_service_error {
    border-radius: var(--border-radius-extra-large);
    padding: .5em 1em;
    margin-top: 0;
    margin-bottom: .7em;
    float: unset;
    /* important fix */
    height: 0;
    background-color: var(--color-bg-error);
    color: var(--color-error);
    text-align: center;
}

select.wfs-service-dates {
    margin-bottom: 9px;
}

/* Notice pickup time */
.pickup-notice {
    height: 0;
    overflow: hidden;
    text-align: center;
    font-size: var(--font-size-15);
}

.pickup-notice p {
    margin: 0;
    padding: 0;
}

/* .btn-manual-open-cart {
    border-radius: 42px;
    width: 37px;
    height: 37px;
    margin-top: .5em;
    padding: 0;
}

.btn-manual-open-cart svg {
    font-size: 20px;
} */

.wfs-service-modal-container button.wfs-update-service {
    border-radius: var(--border-radius-extra-large);
    color: var(--color-text-light);
    font-size: var(--font-size-18);
    height: unset;
    max-width: 400px;
    margin: 1em auto 2em auto;
    padding: .5em;
}

/* -----  END WFS modal service date time ----- */

/* ----- Order type option ----- */

.order-type-wrapper {
    display: none !important;
}


.order-type-title {
    margin-bottom: .3em;
}

.error-services {
    height: 0;
    overflow: hidden;
    display: block;
    margin: -.4em 1em .5em .8em;
    font-size: var(--font-size-15);
    font-style: italic;
    color: var(--color-error);
}

.toggle-description {
    overflow: hidden;
    height: 0;
    font-style: italic;
    padding: 0 .8em;
}

.book-table-description label {
    font-style: normal;
}

.book-table-description p {
    padding: 0 .8em;
}

.toggle-description.active {
    height: auto;
}

/* ----- change service session in modal service----- */
.booking-session-in-modal {
    margin-top: 1em;
    margin-bottom: 4em;
    text-align: center;
}

.booking-session-in-modal h4 {
    margin: 0;
}

.booking-session-in-modal .info-order-setting-wrapper {
    background: none;
}

.booking-session-in-modal .info-order-change-btn,
.booking-session-in-modal .info-order-type {
    display: none !important;
}

.booking-session-in-modal .info-order-setting-wrapper {
    justify-content: center;
}

.booking-session-in-modal .change-service-wrap {
    display: flex;
    flex-direction: column;
    gap: 1em;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
}

.booking-session-in-modal .change-service-wrap a {
    min-width: 300px;
    padding: .2em 1em;
    text-transform: capitalize;
    font-size: var(--font-size-16);
    font-weight: 600;
}

/* ----- WFS Hour working in modal service----- */

#wfsServiceModal .hours-working {
    border-top: 1px dashed var(--color-border-line);
    padding-top: 1.5em;
    text-align: center;
    font-size: var(--font-size-15);
}


/* -----  info order setting ----- */
.info-order-type-time.mobile {
    display: none;
}

.info-order-setting-wrapper {
    background-color: var(--color-bg-content-light);
    padding: 1em;
    border-radius: var(--border-radius-mid);
    margin-bottom: 1em;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .5em;
    font-size: var(--font-size-17);
}

.info-order-content {
    display: flex;
    flex-direction: column;
    gap: .5em;
    line-height: 1.2;
}

.info-order-status {
    opacity: .6;
}

.info-order-status.info-selected {
    opacity: 1;
    font-weight: 500;
    display: inline-block;
}

.info-order-icon {
    font-size: var(--font-size-17);
    color: gray;
    vertical-align: middle;
    opacity: .6;
}

.info-order-icon.info-selected {
    color: var(--color-success);
    opacity: 1;
}

.info-order-change-btn .wfs-change-service {
    background-color: var(--color-bg-link);
    color: var(--color-text-light);
    font-size: var(--font-size-20);
    padding: .25em;
}

/* -----  WFS toast ----- */

.jq-toast-wrap {
    z-index: 99999999 !important;
}

.jq-toast-wrap {
    width: auto;
    max-width: 415px;

}

.jq-toast-single {
    font-size: var(--font-size-15);
    padding: .5em;
    padding-right: 2em;
    line-height: 18px;
}

.close-jq-toast-single {
    font-size: 25px;
    padding: 5px;
    top: -2px;
    right: 3px;
}

/* -----  END WFS toast----- */

/**
 * END ShopPage foodstore design ------------------------------------------------------------------
 * */

/**
 * Booking product customize ------------------------------------------------------------------
 * */
#post-14 .woocommerce-breadcrumb,
#post-14 p.price,
#post-14 .product_meta,
#post-14 .woocommerce div.product .product_title {
    display: none !important;
}

#post-14 .entry-content {
    padding: 0;
    margin: 0;
}

#post-14 .summary.entry-summary {
    width: 100% !important;
    float: unset !important;
    position: relative;
}

/* booked info in booking page */
.info-booked-wrapper {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 3;
    background-color: var(--color-overlay);
    width: 100%;
    height: 100%;
    padding: 4em var(--padding-container);
    display: flex;
    justify-content: center;
    align-items: flex-start;
}

.info-booked-content {
    background-color: var(--color-bg-body);
    padding: var(--padding-container);
    border-radius: var(--border-radius-large);
}

.action-booked ul {
    display: flex;
    gap: 1em;
    list-style: none;
    margin: 1em 0;
    margin-bottom: .5em;
    flex-direction: column;
    align-items: center;
    width: 100%;
}

.action-booked ul li {
    width: 100%;
}

.action-booked li a {
    padding: .5em 1em;
    text-transform: capitalize;
    width: 100%;
    font-size: var(--font-size-18);
}

/* booking head content */
.booking-head-wrapper {
    background-image: url('https://quanconam.de/wp-content/uploads/2026/04/page-booking-table-2000px-style-2.jpg');
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
}

.booking-head-content {
    max-width: 800px;
    margin: 0 auto;
    text-align: center;
    padding: 3em var(--padding-container);
}

.woocommerce-product-details__short-description ul {
    list-style: none;
}

/* form booking */
.woocommerce div.product form.cart {
    margin: 2em 0;
    max-width: 655px;
    margin: 0 auto;
    padding: 2em var(--padding-container);
}

/* Booking form wrapper */
.wc-bookings-booking-form {
    border: none;
    display: flex;
    flex-direction: column;
    margin: 0 auto;
    padding: 0;
}

/* fieldset calendar wrap */
.wc-bookings-booking-form fieldset {
    margin: 0;
    padding: 0;
}

.wc-bookings-date-picker-timezone-block {
    text-align: right;
    font-style: italic;
    font-size: 90%;
    padding-right: 2em;
}

.wc-bookings-date-picker .ui-widget-content {
    border-radius: var(--border-radius-large) !important;
    overflow: hidden;
    box-shadow: 0 0 50px #7070705c;
    border: 2px solid var(--color-bg-body);
}

/* datepicker header */
.wc-bookings-date-picker .ui-datepicker-header {
    background-image: none;
    background-color: var(--color-title-second);
    color: var(--color-text-light);
}

.wc-bookings-date-picker .ui-datepicker .ui-datepicker-prev,
.wc-bookings-date-picker .ui-datepicker .ui-datepicker-next {
    top: 0;
    right: 0;
    height: 100% !important;
    width: 2.5em !important;
    background: none !important;
}

.wc-bookings-date-picker .ui-datepicker .ui-datepicker-prev:active,
.wc-bookings-date-picker .ui-datepicker .ui-datepicker-next:active {
    background-color: var(--color-link-active) !important;
}

.wc-bookings-date-picker .ui-datepicker .ui-datepicker-prev span,
.wc-bookings-date-picker .ui-datepicker .ui-datepicker-next span {
    background: url(/wp-content/themes/generatepress-child/icon/chevron-down-light.svg) no-repeat center;
    background-size: 30px;
    padding: 0 !important;
    top: 45%;
    transform: rotate(-90deg);
}

span.ui-icon.ui-icon-circle-triangle-w {
    transform: rotate(90deg) !important;
}

.wc-bookings-date-picker .ui-datepicker .ui-datepicker-title {
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 500;
    font-size: var(--font-size-25);
}

/* datepicker table */
.woocommerce div.product form.cart table {
    background-color: var(--color-bg-body) !important;
}

.ui-datepicker table {
    font-size: var(--font-size-18);
    border-collapse: separate;
}

.wc-bookings-date-picker .ui-datepicker th {
    padding: 0;
    line-height: clamp(20px, 7vw, 40px);
    border: 0.5px solid var(--color-bg-body);
    border-top: 1px solid;
    border-spacing: 10px !important;
    background-color: var(--color-title);
    color: var(--color-text-light);
    font-weight: 600;
    border-radius: 0 0 clamp(2px, 10vw, 4px) clamp(2px, 10vw, 4px);
}

.wc-bookings-date-picker .ui-datepicker td {
    border-radius: clamp(2px, 10vw, 4px);
    position: relative;
}

.wc-bookings-date-picker .ui-datepicker td .ui-state-default {
    padding: 0;
    line-height: clamp(25px, 10vw, 60px);
    border-radius: clamp(2px, 10vw, 4px);
}

.wc-bookings-date-picker .ui-datepicker td.bookable a {
    background-color: #145a51 !important;
}

.wc-bookings-date-picker .ui-datepicker td.bookable-range .ui-state-default {
    background-color: var(--color-bg-body) !important;
    color: var(--color-text) !important;
}

.ui-state-disabled,
.ui-widget-content .ui-state-disabled,
.ui-widget-header .ui-state-disabled {
    opacity: .4;
}

/* Current day */
.wc-bookings-date-picker .ui-datepicker td.ui-datepicker-current-day {
    background-color: var(--color-link-active);
}

.wc-bookings-date-picker .ui-datepicker td.ui-datepicker-current-day a {
    width: clamp(17px, 7vw, 40px);
    height: clamp(17px, 7vw, 40px);
    border-radius: 50%;
    margin: 0 auto;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--color-bg-body);
    font-weight: 600;
    line-height: 1;
    min-width: 17px;
    min-height: 17px;
}

/*  */
.wc-bookings-booking-cost.price {
    display: none !important;
    text-align: center;
    background: none;
    border: none;
}

/* number of person */
p.form-field.form-field-wide.wc_bookings_field_persons {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: .7em;
    order: 3;
    /* 	border-top: 1px solid var(--color-border-min);
	border-bottom: 1px solid var(--color-border-min); */
    margin: 1em 0;
    padding: 1em 0 1.5em 0;
    background-color: var(--color-bg-input);
    border-radius: var(--border-radius-large);

}

p.form-field.form-field-wide.wc_bookings_field_persons label {
    font-weight: 600;
}

.wc-bookings-booking-form .form-field input[type=number] {
    width: 100%;
}

/* block pick time */
.wc-bookings-booking-form .form-field {
    display: flex;
    width: 100%;
    justify-content: center;
    align-items: center;
    padding: 1em .5em;
    border-radius: 20px;
    background-color: var(--color-bg-input);
    margin-top: 1em;
}

.wc-bookings-booking-form .block-picker {
    overflow: visible;
    display: flex;
    flex-wrap: wrap;
}

.wc-bookings-booking-form .block-picker li {
    padding: .8em .7em;
    float: none;
    min-width: 33.3%;
}

.wc-bookings-booking-form .block-picker li a {
    margin: 0 auto;
    position: relative;
    padding: .4em 1.5em;
    border: 1px solid var(--color-border-input);
    border-radius: var(--border-radius-large);
    box-shadow: var(--box-shadow-input);
    font-size: var(--font-size-17);
    background-color: var(--color-bg-input) !important;
    color: var(--color-text) !important;
    font-weight: 500;
    transition: var(--transition-box-shadow), var(--transition-transform), var(--transition-border-color);
    -webkit-transition: var(--transition-box-shadow), var(--transition-transform), var(--transition-border-color);
    -moz-transition: var(--transition-box-shadow), var(--transition-transform), var(--transition-border-color);
    -o-transition: var(--transition-box-shadow), var(--transition-transform), var(--transition-border-color);
}

.wc-bookings-booking-form .block-picker li a.selected {
    background-color: var(--color-bg-input) !important;
    box-shadow: var(--box-shadow-input-hover);
    color: var(--color-text) !important;
    border: 1.5px solid var(--color-bg-link);
    scale: 1.1;
}

/* booking-spaces-left */
.booking-spaces-left {
    background-color: var(--color-bg-input) !important;
    border-radius: var(--border-radius-large);
    border: none !important;
    padding: .2em 1em;
    color: var(--color-text);
    border: 1px solid var(--color-bg-body);
    display: inline-block !important;
    position: absolute;
    bottom: -1.1em;
    left: 50%;
    transform: translatex(-50%);
    font-size: 12px;
}

/* Button submit booking form */
.woocommerce div.product form.cart .button {
    display: block;
    float: unset !important;
    width: 100%;
    max-width: 450px;
    margin: 2em auto !important;
    border-radius: var(--border-radius-large) !important;
    background-color: var(--color-bg-link) !important;
    padding: .8em 1.5em;
    overflow: hidden;
}

.woocommerce div.product form.cart .button:active {
    background-color: var(--color-link-active) !important;
}

/* @ media Woocommerce Booking */
@media(max-width:460px) {
    .wc-bookings-booking-form .block-picker li {
        min-width: 50%;
    }

    .wc-bookings-date-picker .ui-widget-content {
        border-radius: 15px !important;
    }
}

@media(max-width:305px) {
    .wc-bookings-booking-form .block-picker {
        flex-direction: column;
        align-items: center;
        width: 100%;
    }

    .wc-bookings-booking-form .block-picker li {
        min-width: 70%;
    }
}

/**
 * Woocommerce custom master style ------------------------------------------------------------------
 * */

.woocommerce-checkout .checkout .checkout-inline-error-message {
    display: none;
}

/* hidden button forward cart page in message wrap  */
.button.wc-forward {
    display: none !important;
}

/* styling woocommerce-notices-wrapper */
.woocommerce-message::before {
    color: var(--color-success);
}

.woocommerce-message {
    border-top-color: var(--color-success);
}

/* ----- Woocommerce checkout ----- */

/* woo form container  */
form.checkout.woocommerce-checkout {
    max-width: 835px;
    margin: 0 auto;
    text-align: center;
}

/* woo checkout form styling  */
p#wfs_service_type_field label,
.woocommerce-billing-fields h3,
h3#order_review_heading {
    font-size: var(--font-size-30);
    text-transform: uppercase;
    font-weight: 400;
    color: var(--color-bg-link);
}

.woocommerce form .form-row.woocommerce-invalid .select2-container,
.woocommerce form .form-row.woocommerce-invalid input.input-text,
.woocommerce form .form-row.woocommerce-invalid select {
    color: var(--color-error);
}

textarea#order_comments::placeholder {
    color: var(--color-input-placeholder);
    font-size: var(--font-size-16);
}

.woocommerce form .form-row label {
    line-height: 1.5;
    font-size: var(--font-size-15);
}

/* woo error message */
.woocommerce-notices-wrapper {
    background-color: var(--color-bg-content-light);
}

.woocommerce-notices-wrapper>div {
    max-width: 1500px;
    margin: 2px auto;
}

.woocommerce-error {
    border-top-color: var(--color-error);
}

.woocommerce-error::before {
    top: .7em;
    left: .5em;
}

.woocommerce-error,
.woocommerce-info,
.woocommerce-message {
    background-color: var(--color-bg-note);
    border-radius: var(--border-radius-min);
    font-size: var(--font-size-18);
}


.woocommerce-error::before {
    color: var(--color-error);
}

.woocommerce-error li {
    padding-left: 1em !important;
}

/* woo wfs service type */
p#wfs_service_type_field label {
    line-height: 2;
}

#wfs_checkout_fields {
    margin-bottom: 2em;
}

#wfs_service_type_field {
    padding: 0;
}

#wfs_service_type_field abbr {
    display: none;
}

#wfs_checkout_fields .wfs_co_service_type .input-radio:checked+label {
    display: none !important;
}

p#wfs_service_date_field label,
p#wfs_service_time_field label {
    text-align: left;
    margin-bottom: 5px;
}

#wfs_service_time_field h5,
.wfs-service-time-wrapper h5 {
    margin: 0;
    font-size: var(--font-size-18);
    line-height: 21px;
    color: var(--color-warning);
}

/* woo customer details session */
div#customer_details {
    margin-bottom: 2em;
}

.woocommerce-billing-fields h3, h3#order_review_heading {
    margin-bottom: 30px;
    color: var(--color-title);
}

.woocommerce .col2-set .col-1,
.woocommerce-page .col2-set .col-1,
.woocommerce .col2-set .col-2,
.woocommerce-page .col2-set .col-2 {
    width: 100%;
}

.woocommerce form .form-row-first,
.woocommerce form .form-row-last,
.woocommerce-page form .form-row-first,
.woocommerce-page form .form-row-last {
    width: 49%;
}

.col2-set label {
    margin-bottom: 5px;
    text-align: left;
}

#order_comments {
    min-height: 160px !important;
    max-width: 835px !important;
}

span.optional {
    display: none;
}

.woocommerce-additional-fields h3 {
    display: none;
}

.woocommerce-additional-fields {
    margin-top: 30px;
}

/* Book table info in order review */
.checkout-service-info-wrapper {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    padding-bottom: 1.5em;
    margin-bottom: .5em;
    border-bottom: 1.5px solid var(--color-border-min);
    gap: .5em;
}

.checkout-service-info-content {
    text-align: left;
}

.checkout-service-info-content p {
    padding: 0;
    margin: 0;
    font-weight: 500;
    font-size: var(--font-size-15)
}

.checkout-service-info-content span.info-time {
    display: inline-block;
}

.checkout-service-info-content .edit-service-icon {
    width: 30px;
    height: 30px;
    font-size: 14px;
    flex: 1;
}

.redirect-edit-cart {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    flex-wrap: wrap;
    font-size: 14px;
    gap: .5em;
}

.redirect-edit-cart .btn-manual-open-cart {
    margin: 0;
}

@media (max-width:600px) {
    .checkout-service-info-wrapper {
        padding-left: 0;
        padding-right: 0;
    }

    .redirect-edit-cart .text-icon {
        display: none;
    }
}

/* styling only book table checkout */
.only-book-table-checkout .woocommerce-checkout-review-order-table {
    display: none !important;
}

.only-book-table-checkout .checkout-service-info-wrapper {
    padding-top: 2em;
    flex-direction: column;
    justify-content: space-between;
    display: flex;
    align-items: center;
    gap: 2em;
}

.only-book-table-checkout .checkout-service-info-content {
    border: 1px dashed var(--color-border-mid);
    padding: 1em 2em;
    border-radius: var(--border-radius-mid);
    text-align: center;
}

.only-book-table-checkout .checkout-service-info-content h2 {
    margin-bottom: .2em;
    color: var(--color-success);
}

.only-book-table-checkout .only-booking-info {
    text-align: left;
}

.only-book-table-checkout .redirect-edit-cart {
    margin-left: auto;
    text-align: center;
}

/* button change service in checkout */
.redirect-booking-page-wrapper {
    margin-left: auto;
}

.edit-service-btn {
    display: inline-flex;
    gap: .5em;
    align-items: center;
    cursor: pointer;
}

.edit-service-icon {
    background-color: var(--color-bg-link);
    color: var(--color-text-light);
    width: 30px;
    height: 30px;
    border-radius: 30px;
    display: inline-flex;
    font-size: 18px;
    align-items: center;
    justify-content: center;
    padding: 0;
}

/* woo order review session */
#order_review {
    margin-bottom: 2em;
    background-color: var(--color-bg-content-light);
    border-radius: var(--border-radius-mid);
    padding: var(--padding-container);
}

table.shop_table.woocommerce-checkout-review-order-table,
.woocommerce table,
.woocommerce th,
.woocommerce td {
    border: none;
}

#order_review th {
    padding-left: 0;
    padding-right: 0;
    font-size: var(--font-size-15);
}

.cart_item td.product-name,
td.product-total {
    font-weight: 400;
    font-size: var(--font-size-16);
}

.cart_item td {
    border-bottom: none !important;
    border-top: 1px dashed var(--color-border-min) !important;
}

table.shop_table.woocommerce-checkout-review-order-table tbody tr:first-child td {
    border-top: none !important;
}

tr.cart-subtotal th,
tr.cart-subtotal td {
    border-top: 2px solid var(--color-border-min) !important;
}

tr.order-total th,
tr.order-total td {
    border-top: 0 !important;
    font-size: var(--font-size-18) !important;
}

table.shop_table tfoot td,
.product-total {
    text-align: right;
}

tr.order-total {
    color: var(--color-bg-link);
    font-size: 120%;
}

table.shop_table.woocommerce-checkout-review-order-table td {
    padding-left: 0;
    padding-right: 0;
}

tr.cart-subtotal td {
    font-weight: 600 !important;
}

/* woo payment session */
#add_payment_method #payment,
.woocommerce-cart #payment,
.woocommerce-checkout #payment {
    background: none;
}

#add_payment_method #payment ul.payment_methods,
.woocommerce-cart #payment ul.payment_methods,
.woocommerce-checkout #payment ul.payment_methods {
    border-bottom: 1px solid var(--color-border-min);
}

#add_payment_method #payment,
.woocommerce-cart #payment,
.woocommerce-checkout #payment li.wc_payment_method.payment_method_cod,
li.wc_payment_method.payment_method_cheque,
li.wc_payment_method.payment_method_bacs,
li.wc_payment_method.payment_method_paypal {
    font-size: var(--font-size-17);
}

#add_payment_method #payment ul.payment_methods li input,
.woocommerce-cart #payment ul.payment_methods li input,
.woocommerce-checkout #payment ul.payment_methods li input {
    margin-right: .5em;
}

li.wc_payment_method label {
    font-weight: 500;
}

.woocommerce #payment #place_order,
.woocommerce-page #payment #place_order {
    width: 100%;
    border-radius: var(--border-radius-extra-large);
    color: var(--color-text-light);
    background-color: var(--color-bg-link);
    padding: .4em 1em;
    max-width: 495px;
    margin: 0 auto;
    margin-top: .2em;
    float: none;
    font-size: var(--font-size-18);
    display: block;
}

ul.wc_payment_methods li {
    display: flex;
    align-items: center;
}

/* terms-and-conditions */
.woocommerce-terms-and-conditions-wrapper {
    padding-bottom: .5em;
}

.woocommerce-privacy-policy-text {
    font-size: var(--font-size-14);
}

.woocommerce-privacy-policy-text p {
    margin-bottom: .5em;
}


@media (max-width: 600px) {
    .woocommerce table.shop_table {
        padding: .5em 0 !important;
    }
}

@media (max-width: 420px) {
    #order_review {
        padding: .7em;
    }

    #wfs_checkout_fields {
        display: flex;
        flex-direction: column;
    }
}

@media (max-width: 300px) {
    #order_review {
        padding: .7em .3em;
    }

    .woocommerce form .form-row-first,
    .woocommerce form .form-row-last,
    .woocommerce-page form .form-row-first,
    .woocommerce-page form .form-row-last {
        width: 100%
    }
}

/* ----- END woocommerce checkout ----- */

/* ----- woocommerce thankyou page ----- */

/* booking info thankyou page */
.wc-booking-summary {
    margin: .5em 0 !important;
    background-color: var(--color-bg-input);
    border-radius: var(--border-radius-mid);
    padding: .5em clamp(.5em, 2vw, 1em);
    color: var(--color-text);
}

.status-paid,
.status-unpaid,
.status-confirmed {
    display: none !important;
}

.wc-booking-summary-list {
    margin: 0 !important;
}

.wc-booking-summary-list li {
    margin: 0 !important;
}

.woocommerce-order {
    max-width: 650px;
    margin: 0 auto;
    padding: 20px;
    border: 1px dashed var(--color-border-mid);
    border-radius: 15px;
    background-color: var(--color-bg-content-light);
}

ul.order_details li {
    line-height: 1.2;
    margin-bottom: .8em;
}

.woocommerce ul.order_details {
    display: none !important;
}

#guest-cancel-order-section {
    background-color: var(--color-bg-note) !important;
    border: none !important;
}

.woocommerce-order h2 {
    margin-bottom: 0;
    font-size: var(--font-size-30);
}

.only-book-table-thankyou {
    text-align: center;
    padding-bottom: 1em;
}

.only-book-table-thankyou h3 {
    color: var(--color-success);
    margin-bottom: 5px;
}

.only-book-table-thankyou p {
    margin: 0;
}

.woocommerce table.shop_table {
    border: none !important;
    padding: .5em 0;
}

.woocommerce-order-details tr td:last-child {
    text-align: right;
    font-weight: 600;
}

.woocommerce-order-details .order-again {
    display: none !important;
}

.woocommerce table.shop_table td {
    border-top: 1px solid var(--color-border-min);
}

/* hidđen meta item variable item */
.woocommerce table.shop_table ul.wc-item-meta {
    display: none !important;
}

.woocommerce .woocommerce-customer-details address {
    border: none;
}

p.woocommerce-customer-details--phone {
    margin-bottom: 0;
}

/* only-book-table thankyou page */
.only-book-table-checkout .woocommerce-order h2,
.only-book-table-checkout table thead,
.only-book-table-checkout table tfoot tr:nth-child(1),
.only-book-table-checkout table tfoot tr:nth-child(2) {
    display: none !important;
}

.only-book-table-checkout table tbody tr:first-child td {
    border: none !important;
}

@media (max-width:544px) {
    .woocommerce-order {
        padding: 10px;
    }

    .woocommerce table.shop_table td {
        padding: .5em 0;
    }
}


@media (max-width:450px) {

    .woocommerce table.shop_table td,
    .woocommerce table.shop_table th {
        padding: .5em 0;
    }
}

/* ----- END Woocomerce thankyou page ----- */


/**
 * Footer customize ------------------------------------------------------------------
 * */
.before-footer-container {
    width: 100%;
    background-color: var(--color-bg-dark);
    color: var(--color-text-light);
    padding: 1em 0;
    padding-top: 9em;
}

.before-footer-wrap {
    width: 100%;
    max-width: var(--max-width-session);
    margin: 0 auto;
    padding: var(--padding-container);
}

.before-footer-container hr {
    background-color: var(--color-border-line-dark);
    margin: 0;
    padding: 0;
    height: 2px;
}

.before-footer-container a {
    color: var(--color-text-light);
}

.before-footer-wrap row {
    width: 100%;
}

/* footer logo title */
.footer-logo {
    max-width: clamp(200px, 28vw, 220px);
    margin: 0 auto;
}

.footer-logo figure {
    margin-top: -4.7em;
    padding: 0 3em;
    background-color: var(--color-bg-dark);
}

.footer-logo-content {
    text-align: center;
}

/* footer main content */
.footer-main-content {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 1.5em;
    padding: 2em 0;
    font-size: var(--font-size-16);
    text-align: left;
}

.footer-main-content h4 {
    font-size: var(--font-size-30);
}

.footer-main-content h4,
.footer-main-content h5 {
    margin-bottom: .2em;
}

.footer-main-content ul {
    list-style: none;
    margin: 0;
}

.footer-address h3 {
    margin: 0;
    line-height: 1;
}

.footer-address h5 {
    margin-bottom: .4em;
    line-height: 1;
    margin-top: 5px;
}

.footer-address p {
    padding: 0;
    margin: 0
}

.address-item-social ul {
    display: flex;
    gap: .7em;
    font-size: 25px;
    margin: .5em 0;
}

.footer-link .link-item-2 {
    margin-top: 1em;
}

.footer-main-content .hours-working-button {
    justify-content: flex-start;
}

/* Footer link */
.column.footer-link a{
    line-height: 1.85;
}

/* footer copyright */
.inside-site-info {
    background-color: #232728;
    color: var(--color-text-light);
    border-top: 3px solid var(--color-border-line-dark);
    font-size: var(--font-size-15)
}

.inside-site-info.grid-container {
    max-width: 100%;
    padding: 20px var(--padding-container);
    padding-top: 1em;
    padding-bottom: 6em;
}

.inside-site-info a {
    color: var(--color-text-light);
}

/* @media footer */
@media(max-width:655px) {
    .footer-main-content {
        gap: 2em;
    }
    
    .footer-main-content .column {
        width: 100%;
    }

    .footer-working-hours {
        width: 100%;
        margin-bottom: 1em;
        border: 1px solid var(--color-border-line-dark);
        padding: 2em 0;
        border-left: 0;
        border-right: 0;
    }
}

/*  New Event homepage */
#new_event_homepage_container {
    max-width: 1310px;
    margin: 3em auto;
    font-size: var(--font-size-18);
    border: 3px solid var(--color-title);
    padding: 1em var(--padding-container);
    border-radius: var(--border-radius-large);
    background-color: var(--color-bg-note);
}


new-event-header-homepage h1 {
    margin: 10px 0 20px 0;
    font-size: var(--font-size-65);
}

/* Module New Event frontend */
.new-event-modal {
    width: 100%;
    max-width: 1000px;
    top: 2%;
    bottom: 2%;
    left: 0;
    right: 0;
    margin: auto;
    padding: var(--padding-container);
    box-shadow: none;
    overflow: hidden;
    background: none;
}

.new-event-content-wrapper.tan-modal-content {
    padding: 0;
    height: 100%;
    max-height: 100vh;
}

.new-event-header {
    background-color: var(--color-bg-link);
    color: var(--color-text-light);
    display: flex;
    justify-content: space-between;
    /* align-items: center; */
    border-radius: var(--border-radius-large) var(--border-radius-large) 0 0;
    padding: .5em var(--padding-container);
    box-shadow: 0px 5px 15px #37270d78;
    border-bottom: 1px solid #f0f0f082;
    position: relative;
    z-index: 1;
}

.new-event-header h2 {
    margin: 0;
    align-content: center;
}

.close-event-button {
    position: static;
    font-size: 16px;
    background-color: var(--color-bg-body);
    color: var(--color-link);
    border-radius: 35px;
    width: 35px;
    height: 35px;
}

.new-event-content {
    padding: 2em var(--padding-container);
    overflow-x: hidden;
    overflow-y: scroll;
    max-height: 100vh;
    background-color: var(--color-bg-body);
    border-radius: 0 0 var(--border-radius-large) var(--border-radius-large);
    box-shadow: 0 5px 30px #18181899;
}

.new-event-content p {
    margin-bottom: 0;
    font-size: var(--font-size-16);
}

/* END Module New Event */