@font-face {
    font-family: "Forum";
    src: url("../fonts/Forum-Regular.ttf") format("truetype");
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: "Inter Regular";
    src: url("../fonts/Inter-Regular.otf") format("truetype");
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: "Inter ExtraLight";
    src: url("../fonts/Inter-ExtraLight.otf") format("truetype");
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: "Inter Medium";
    src: url("../fonts/Inter-Medium.otf") format("truetype");
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}

:root {
    --font-heading: "Forum", Georgia, "Times New Roman", serif;
    --font-base: "Inter Regular", Helvetica, sans-serif;
    --color-page: #1E1E1E;
    --color-panel: #3E5249;
    --color-text: #FBF5E9;
    --color-accent: #F58220;
    --color-accent-hover: #C85505;
    --container-padding: clamp(20px, 2.2vw, 42px);
    --container-width: 1920px;
    --transition-base: 200ms ease;
}

*,
*::before,
*::after {
    box-sizing: border-box;
}

html {
    min-height: 100%;
    scroll-behavior: smooth;
}

body {
    min-height: 100%;
    margin: 0;
    background: var(--color-page);
    color: var(--color-text);
    font-family: var(--font-base);
    font-size: 16px;
    line-height: 1.5;
    overflow-x: hidden;
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
}

button,
a {
    color: inherit;
    text-decoration: none;
    transition: color var(--transition-base), background-color var(--transition-base), border-color var(--transition-base);
}

button,
input,
textarea,
select {
    font: inherit;
}

button {
    cursor: pointer;
}

img,
picture,
svg {
    display: block;
    max-width: 100%;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: var(--font-heading);
    font-weight: 400;
    margin-top: 0;
}

p {
    margin-top: 0;
}

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

.main-teg {
    font-family: "Inter ExtraLight", sans-serif;
    font-size: 15px;
}
.max-auto{
    max-width: none !important;
}
.radius-box {
    overflow: hidden;
    border-radius: 5px;
    position: relative;
}

.cover{
    object-fit: cover;
    height: 100%;
    width: 100%;
}
.cover-bg {
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
}
.reserv-btn{
    border: 0;
    padding: 0;
    background: none;
    max-width: 330px;
    font-size: 25px;
    color: #FBF5E9;
    font-family: "Forum", sans-serif;
    position: relative;
    max-height: 67px;
}
.reserv-btn span{
    background-color: var(--color-accent);
    padding: 15px 20px;
    text-align: center;
    border-radius: 5px;
    transition: color var(--transition-base), background-color var(--transition-base), border-color var(--transition-base);
    position: relative;
    min-height: 100%;
}
.reserv-btn span:nth-child(1)::after {
    content: '';
    border-left: 1px dashed #ffffff;
    height: 90%;
    position: absolute;
    right: 0;
    top: 0;
    bottom: 0;
    margin: auto;
}
.reserv-btn-width:hover,
.reserv-btn:hover span{
    background-color: var(--color-accent-hover);
}
.reserv-btn-width{
    border: 0;
    background: none;
    width: 100%;
    font-size: 25px;
    color: #FBF5E9;
    font-family: "Forum", sans-serif;
    background-color: var(--color-accent);
    padding: 15px 20px;
    text-align: center;
    border-radius: 5px;
    transition: color var(--transition-base), background-color var(--transition-base), border-color var(--transition-base);
    position: relative;
    justify-content: center;
}
/* Soft light button */
/* Light accent button */
.soft-btn {
    display: inline-flex;
    border: 0;
    padding: 0;
    background: none;
    max-width: 330px;
    width: 100%;
    font-size: 25px;
    color: var(--color-accent);
    font-family: "Forum", sans-serif;
    text-decoration: none;
    position: relative;
}

.soft-btn span {
    width: 100%;
    background-color: var(--color-text);
    padding: 15px 20px;
    text-align: center;
    border-radius: 5px;
    transition: color var(--transition-base), background-color var(--transition-base), border-color var(--transition-base);
    position: relative;
}

.soft-btn:hover {
    color: var(--color-accent);
}

.soft-btn:hover span {
    background-color: #fff;
}

@media (max-width: 575px) {
    .btn-soft-link {
        min-height: 76px;
        padding: 18px 24px;
        font-size: 34px;
    }
}
/* Blog layout fallback section */
.container-xxl {
    width: min(100% - var(--container-padding) * 2, var(--container-width));
    margin-left: auto;
    margin-right: auto;
}

.d-flex {
    display: flex !important;
}
.d-none {
    display: none !important;
}
.d-block {
    display: block !important;
}
.d-inline-flex {
    display: inline-flex !important;
}
.flex-column {
    flex-direction: column !important;
}
.flex-grow-1 {
    flex-grow: 1 !important;
}
.justify-content-between {
    justify-content: space-between !important;
}
.justify-content-end {
    justify-content: flex-end !important;
}
.align-items-center {
    align-items: center !important;
}
.align-items-start {
    align-items: flex-start !important;
}
.align-items-end {
    align-items: flex-end !important;
}
.gap-2 {
    gap: .5rem !important;
}
.gap-3 {
    gap: 1rem !important;
}
.gap-4 {
    gap: 1.5rem !important;
}
.h-100 {
    height: 100% !important;
}
.p-0 {
    padding: 0 !important;
}
.p-3 {
    padding: 1rem !important;
}
.py-5 {
    padding-top: 3rem !important;
    padding-bottom: 3rem !important;
}
.mt-4 {
    margin-top: 1.5rem !important;
}
.mt-5 {
    margin-top: 3rem !important;
}
.mb-4 {
    margin-bottom: 1.5rem !important;
}
.my-4 {
    margin-top: 1.5rem !important;
    margin-bottom: 1.5rem !important;
}
.row {
    display: flex;
    flex-wrap: wrap;
    margin-left: -.75rem;
    margin-right: -.75rem;
}
.row > * {
    flex-shrink: 0;
    max-width: 100%;
    padding-left: .75rem;
    padding-right: .75rem;
    width: 100%;
}
.g-4,
.g-xl-5 {
    row-gap: 1.5rem;
}
.col-6 {
    flex: 0 0 auto;
    width: 50%;
}
.col-12 {
    flex: 0 0 auto;
    width: 100%;
}

@media (min-width: 576px) {
    .col-sm-6 {
        flex: 0 0 auto;
        width: 50%;
    }
}

@media (min-width: 992px) {
    .col-lg-4 {
        flex: 0 0 auto;
        width: 33.33333333%;
    }
    .col-lg-5 {
        flex: 0 0 auto;
        width: 41.66666667%;
    }
    .col-lg-6 {
        flex: 0 0 auto;
        width: 50%;
    }
    .col-lg-7 {
        flex: 0 0 auto;
        width: 58.33333333%;
    }
    .d-lg-block {
        display: block !important;
    }
}

/* Header section */
.hero {
    position: relative;
    overflow: hidden;
    background-color: #1a1a1a;
}

.hero .elem {
    position: relative;
    z-index: 2;
}

header img.logo {
    max-width: 50px;
}

header .menu {
    gap: 15px;
}

header .menu a {
    font-size: 20px;
    font-weight: 400;
}

header .menu a:hover {
    color: var(--color-accent-hover);
}

header .right .title-teg {
    font-family: "Inter Medium", sans-serif;
    font-size: 20px;
}

header .right .light-teg {
    font-family: "Inter ExtraLight", sans-serif;
    font-size: 18px;
}

header .right .btn-link:hover {
    color: var(--color-accent-hover);
}

header .right .bi.bi-geo-alt,
header .right .bi.bi-telephone {
    font-size: 20px;
}

header .btn-link {
    text-transform: uppercase;
    color: var(--color-accent);
    text-decoration: none;
}

header .bar {
    border: 0;
    padding: 5px 13px;
    background-color: var(--color-accent);
    color: #fff;
    font-size: 30px;
    border-radius: 5px;
}

header .bar:hover {
    background-color: var(--color-accent-hover);
}

/* Fixed header section */
body.is-header-fixed header.elem {
    background: rgba(30, 30, 30, .92);
    box-shadow: 0 12px 34px rgba(0, 0, 0, .24);
    left: 0;
    padding: 12px 0;
    position: fixed;
    right: 0;
    top: 0;
    z-index: 900;
}

body.is-header-fixed header.elem img.logo {
    max-width: 44px;
}

@keyframes headerFixedShow {
    from {
        opacity: 0;
        transform: translateY(-12px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Reserve modal section */
.f-html {
    padding: 0;
    width: min(100%, 560px);
    background: none;
}

.reserve-modal {
    color: var(--color-text);
}

.reserve-modal .form-wrapper {
    background-color: var(--color-panel);
    border-radius: 5px;
}
a.accent{
    color: var(--color-accent);
}
a.accent:hover{
    color: var(--color-accent-hover);
}
.reserve-modal h2 {
    font-family: "Forum", sans-serif;
    font-size: 48px;
    line-height: 90%;
}

/* Scroll top section */
.scroll-top {
    align-items: center;
    background: var(--color-accent);
    border: 0;
    border-radius: 5px;
    bottom: 24px;
    box-shadow: 0 12px 28px rgba(0, 0, 0, .26);
    color: var(--color-text);
    display: inline-flex;
    font-size: 28px;
    height: 54px;
    justify-content: center;
    opacity: 0;
    pointer-events: none;
    position: fixed;
    right: 24px;
    transform: translateY(12px);
    transition: opacity var(--transition-base), transform var(--transition-base), background-color var(--transition-base);
    visibility: hidden;
    width: 54px;
    z-index: 850;
}

.scroll-top.is-visible {
    opacity: 1;
    pointer-events: auto;
    transform: translateY(0);
    visibility: visible;
}

.scroll-top:hover {
    background: var(--color-accent-hover);
}

/* Burger menu section */
body.is-burger-open {
    overflow: hidden;
}

.burger-menu {
    position: fixed;
    inset: 0;
    z-index: 1000;
    display: flex;
    flex-direction: column;
    background: #fff;
    color: #111;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transform: translateY(-12px);
    transition: opacity 260ms ease, visibility 260ms ease, transform 260ms ease;
}

.burger-menu.is-open {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: translateY(0);
}

.burger-menu__top {
    flex: 0 0 auto;
    padding: 18px 0;
    background: #fff;
}

.burger-menu__brand {
    gap: 34px;
}

.burger-menu__logo {
    display: block;
    width: 112px;
    height: auto;
}

.burger-menu__phones {
    gap: 4px;
}

.burger-menu__phones a {
    color: #111;
    font-family: "Inter Medium", sans-serif;
    font-size: 24px;
    line-height: 1.25;
}

.burger-menu__controls {
    gap: 34px;
}

.burger-menu__reserve {
    gap: 12px;
    min-height: 52px;
    padding: 10px 30px;
    border-radius: 999px;
    background: var(--color-panel);
    color: #fff;
    font-family: "Inter Medium", sans-serif;
    font-size: 18px;
}

.burger-menu__reserve:hover {
    background: var(--color-accent);
    color: #fff;
}

.burger-menu__reserve .bi {
    font-size: 24px;
}

.burger-menu__close {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 5px;
    min-width: 120px;
    min-height: 96px;
    border: 0;
    background: transparent;
    color: #111;
    font-family: "Inter Medium", sans-serif;
    font-size: 20px;
    line-height: 1;
}

.burger-menu__close .bi {
    font-size: 28px;
}

.burger-menu__body {
    flex: 1 1 auto;
    min-height: 0;
    padding: 52px 0;
    background: var(--color-panel);
    color: var(--color-text);
}

.burger-menu__content {
    gap: 42px;
}

.burger-menu__nav {
    gap: 18px;
}

.burger-menu__nav a {
    width: fit-content;
    color: var(--color-text);
    font-family: "Inter ExtraLight", sans-serif;
    font-size: 22px;
    line-height: 1.2;
}

.burger-menu__nav a:hover,
.burger-menu__action:hover {
    color: var(--color-accent);
}

.burger-menu__actions {
    gap: 30px;
    padding-top: 4px;
}

.burger-menu__action {
    gap: 16px;
    width: fit-content;
    color: rgba(251, 245, 233, .5);
    font-family: "Inter ExtraLight", sans-serif;
    font-size: 20px;
    line-height: 1.2;
}

.burger-menu__action .bi {
    font-size: 24px;
}

.burger-menu__prepay {
    gap: 14px;
    width: fit-content;
    min-height: 52px;
    padding: 12px 30px;
    border-radius: 999px;
    background: var(--color-text);
    color: #111;
    font-family: "Inter Medium", sans-serif;
    font-size: 18px;
    line-height: 1.1;
}

.burger-menu__prepay:hover {
    background: var(--color-accent);
    color: #fff;
}

.burger-menu__promo {
    gap: 34px;
    padding: 26px 0;
    border-top: 1px solid rgba(251, 245, 233, .18);
    border-bottom: 1px solid rgba(251, 245, 233, .18);
    color: var(--color-text);
}

.burger-menu__promo img {
    width: 118px;
    height: 72px;
    object-fit: contain;
}

.burger-menu__promo span {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.burger-menu__promo strong {
    font-family: "Inter Medium", sans-serif;
    font-size: 20px;
    line-height: 1.25;
}

.burger-menu__promo small {
    font-family: "Inter ExtraLight", sans-serif;
    font-size: 20px;
    line-height: 1.2;
    text-transform: uppercase;
}

.burger-menu__image {
    overflow: hidden;
}

.burger-menu__image img {
    width: 100%;
    height: 100%;
    min-height: 520px;
    object-fit: cover;
}

/* Footer section */
.site-footer {
    color: var(--color-text);
}

.site-footer .main-teg {
    color: var(--color-text);
    font-size: 20px;
}

.footer-links {
    display: grid;
    gap: 18px;
}

.footer-links--grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.footer-links a,
.footer-links span {
    color: rgba(251, 245, 233, .74);
    font-family: "Inter ExtraLight", sans-serif;
    font-size: 20px;
    line-height: 115%;
}

.footer-links a:hover {
    color: var(--color-accent);
}

.footer-social {
    color: rgba(251, 245, 233, .74);
}

.footer-brand p {
    color: var(--color-text);
    font-family: "Inter ExtraLight", sans-serif;
    font-size: 20px;
    line-height: 115%;
    margin: 0;
    max-width: 490px;
}

.footer-logo {
    display: block;
    flex: 0 0 200px;
}

.footer-logo img {
    width: 100%;
}

.footer-map {
    height: 100%;
    min-height: 540px;
    overflow: hidden;
    position: relative;
}

.footer-map iframe {
    border: 0;
    display: block;
    height: 100%;
    min-height: inherit;
    width: 100%;
}
.footer-map > #map {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    min-height: inherit;
}
.footer-bottom {
    color: rgba(251, 245, 233, .82);
    font-family: "Inter ExtraLight", sans-serif;
    font-size: 16px;
    line-height: 130%;
}

.footer-bottom a {
    color: rgba(251, 245, 233, .92);
    text-decoration: underline;
    text-underline-offset: 3px;
}

.footer-bottom a:hover {
    color: var(--color-accent);
}

/* Contacts page section */
.contacts-page {
    background: var(--color-page);
}

.contacts-info,
.contacts-form {
    background: var(--color-panel);
    border: 1px solid rgba(251, 245, 233, .08);
    border-radius: 5px;
    box-shadow: 0 18px 46px rgba(0, 0, 0, .18);
    color: var(--color-text);
    padding: clamp(24px, 3.2vw, 48px);
}

.contacts-info {
    display: flex;
    flex-direction: column;
    gap: clamp(34px, 5vw, 84px);
    justify-content: space-between;
}

.contacts-info__title,
.contacts-info__subtitle {
    color: var(--color-text);
    font-family: var(--font-heading);
    font-weight: 400;
    line-height: .95;
    margin: 0;
}

.contacts-info__title {
    font-size: clamp(44px, 4.8vw, 65px);
}

.contacts-info__subtitle {
    font-size: clamp(34px, 3.2vw, 52px);
}

.contacts-info__links {
    display: grid;
    gap: 12px;
    margin-top: 28px;
}

.contacts-info__links a,
.contacts-info__address {
    color: rgba(251, 245, 233, .9);
    font-family: "Inter ExtraLight", sans-serif;
    font-size: clamp(21px, 1.55vw, 28px);
    line-height: 1.2;
    text-decoration: none;
}

.contacts-info__links a:hover {
    color: var(--color-accent);
}

.contacts-info__address {
    margin: 18px 0 0;
}

.contacts-social {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 28px;
}
.contact-faq-form textarea{
    height: 340px;
}
.contacts-social__link {
    max-width: 45px;
    text-decoration: none;
}

.contacts-form .main-teg,
.contacts-info .section-badge {
    color: rgba(251, 245, 233, .9);
    display: inline-block;
    margin-bottom: 18px;
}

.contacts-form .reserv-btn-width:hover {
    background-color: var(--color-accent-hover);
}
/* elem page photo */
.rest-info-groups .line{
    border-bottom: 1px dashed ;
    position: relative;
    top: -5px;
}
/* Masonry gallery */
.gallery-slick-block {
    columns: 3 280px;
    column-gap: 24px;
}

.gallery-slick-block .gallery-slick {
    display: block;
    width: 100%;
    margin-bottom: 24px;
    break-inside: avoid;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    border-radius: 8px;
    min-height: 320px;
}

.gallery-slick-block .gallery-slick:nth-child(3n + 1) {
    min-height: 420px;
}

.gallery-slick-block .gallery-slick:nth-child(3n + 2) {
    min-height: 300px;
}

.gallery-slick-block .gallery-slick:nth-child(3n + 3) {
    min-height: 520px;
}

/* PAGE banquets */
@media (min-width: 992px) {
    .events-sticky-wrapper {
        position: sticky;
        top: 40px;
    }
}

.events-sticky {
    height: 600px;
    position: relative;
}

.events-sticky:before {
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    background: #000000;
    background: linear-gradient(360deg, rgba(0, 0, 0, 1) 0%, rgba(0, 0, 0, 1) 0%, rgba(0, 0, 0, 0) 100%);
}
.events-sticky>*{
    position: relative;
}
.events-title {
    font-size: 46px;
    line-height: 90%;
    font-weight: 400;
}

.events-description {
    font-family: "Inter ExtraLight", sans-serif;
    font-size: 20px;
    letter-spacing: -0.03em;
    line-height: 115%;
    opacity: 0.85;
}


.event-card {
    background-color: var(--color-text, #FBF5E9);
    min-height: 260px;
}

.event-card-num {
    font-size: 28px;
    color: var(--color-accent, #F58220);
    font-family: "Forum", sans-serif;
}

.event-card-title {
    font-size: 25px;
    color: var(--color-accent, #F58220);
    font-weight: 400;
    margin-bottom: 12px;
}

.event-card-desc {
    color: var(--color-panel);
    font-family: "Inter ExtraLight", sans-serif;
    font-size: 20px;
    letter-spacing: -0.03em;
    line-height: 115%;
    margin: 0;
}


.event-card-img-placeholder {
    width: 100%;
    height: 220px;
    background-color: #ccc;
    object-fit: cover;
}


@media (max-width: 991.98px) {
    .events-sticky {
        height: 400px;
    }
}


.halls-main-title {
    font-size: 46px;
    line-height: 90%;
    font-weight: 400;
}

.halls-intro-desc {
    font-family: "Inter ExtraLight", sans-serif;
    font-size: 20px;
    letter-spacing: -0.03em;
    line-height: 115%;
    color: var(--color-text);
    margin: 0;
    opacity: 0.85;
}


.hall-card {
    background-color: var(--color-text, #FBF5E9);
    border-radius: 8px;
}

.hall-card-img-placeholder {
    width: 100%;
    height: 360px;
    background-color: #444;
    object-fit: cover;
}


.hall-badge {
    background: #3e5249ab;
    backdrop-filter: blur(4px);
    color: var(--color-text);
    font-size: 14px;
    font-family: "Inter ExtraLight", sans-serif;
    padding: 6px 12px;
    border-radius: 4px;
    letter-spacing: -0.02em;
}


.hall-card-title {
    font-size: 28px;
    color: var(--color-accent, #F58220);
    font-family: "Forum", sans-serif;
    margin-bottom: 12px;
    font-weight: 400;
}

.hall-card-subtitle {
    font-size: 20px;
    color: var(--color-panel);
    margin-bottom: 12px;
    line-height: 120%;
    font-family: "Inter Medium", sans-serif;
}

.hall-card-desc {
    font-family: "Inter ExtraLight", sans-serif;
    font-size: 20px;
    letter-spacing: -0.03em;
    line-height: 115%;
    color: #333;
    margin: 0;
    opacity: 0.9;
}


.hall-btn-card {
    font-size: 22px;
    padding: 12px 20px;
}


.scenarios-main-title {
    font-size: 46px;
    line-height: 90%;
    font-weight: 400;
    max-width: 900px;
}

.scenarios-subtitle {
    font-family: "Inter ExtraLight", sans-serif;
    font-size: 20px;
    letter-spacing: -0.03em;
    line-height: 115%;
    margin: 0;
    opacity: 0.85;
}

.scenario-card {
    position: relative;
    min-height: 520px;
    color: #fff;
    transition: transform var(--transition-base, 0.3s ease);
}

.scenario-card-bg:before {
    content: '';
    position: absolute;
    width: 100%;
    display: block;
    height: 100%;
    left: 0;
    top: 0;
    background: #000000;
    background: linear-gradient(360deg, rgb(0 0 0) 0%, rgb(0 0 0 / 58%) 0%, rgba(0, 0, 0, 0) 100%);
}

.scenario-card:hover {
    transform: translateY(-5px);
    color: #fff;
}

.scenario-card-bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: center;
    z-index: 1;
}

.scenario-card-title,
.scenario-card-footer {
    position: relative;
    z-index: 2;
}

.scenario-card-title {
    font-size: 28px;
    font-family: "Forum", sans-serif;
    font-weight: 400;
    color: #fff;
}

.scenario-card-desc {
    font-family: "Inter ExtraLight", sans-serif;
    font-size: 18px;
    letter-spacing: -0.03em;
    line-height: 115%;
    color: rgba(255, 255, 255, 0.9);
}

.scenario-card-arrow {
    font-size: 20px;
    line-height: 1;
    color: #fff;
    opacity: 0.8;
    font-weight: 300;
}

@media (min-width: 992px) {
    .faq-sticky-wrapper {
        position: sticky;
        top: 40px;
    }
}

.faq-tag {
    font-size: 14px;
    color: #a0a0a0;
    font-family: "Inter ExtraLight", sans-serif;
}

.faq-main-title {
    font-size: 46px;
    line-height: 95%;
    color: #fff;
    font-weight: 400;
}

.text-accent {
    color: var(--color-accent, #F58220);
}

.faq-item {
    transition: background-color var(--transition-base, 0.3s ease);
}

.faq-header {
    cursor: pointer;
    user-select: none;
    background-color: var(--color-text, #FBF5E9);
}

.faq-title {
    font-size: 25px;
    color: #191919E5;
    font-weight: 400;
    letter-spacing: -0.02em;
}

.faq-toggle-btn {
    width: 44px;
    height: 44px;
    background-color: var(--color-accent, #F58220);
    color: #fff;
    border: none;
    border-radius: 6px;
    font-size: 20px;
    flex-shrink: 0;
    transition: background-color var(--transition-base, 0.3s ease);
}
.faq-content{
    position: relative;
}
.faq-divider {
    border-top: 1px dashed #1E1E1E;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
}

.faq-body {
    display: none;
    overflow: hidden;
    background-color: var(--color-text, #FBF5E9);
}

.faq-item.active .faq-body {
    display: block;
}

.faq-desc {
    font-family: "Inter ExtraLight", sans-serif;
    font-size: 18px;
    letter-spacing: -0.03em;
    line-height: 120%;
    color: #333;
}

/* page den-rozhdeniya*/
.birthday-main-title {
    font-size: 52px;
    font-family: "Forum", sans-serif;
    font-weight: 400;
}

.birthday-main-subtitle {
    font-family: "Inter ExtraLight", sans-serif;
    font-size: 20px;
    letter-spacing: -0.03em;
    line-height: 120%;
    max-width: 700px;
}

.offer-card {
    background-color: var(--color-text, #FBF5E9);
}

.offer-title {
    font-size: 26px;
    color: var(--color-accent, #F58220);
    font-family: "Forum", sans-serif;
    font-weight: 400;
    line-height: 110%;
    margin: 0;
}

.offer-desc {
    font-family: "Inter ExtraLight", sans-serif;
    font-size: 18px;
    letter-spacing: -0.03em;
    line-height: 120%;
    color: #333;
    margin: 0;
}

.offer-img-placeholder {
    width: 260px;
    height: 260px;
    background-color: #444;
    object-fit: cover;
}

.offer-btn {
    max-width: 260px;
    font-size: 20px;
}

.gift-banner {
    background-color: var(--color-accent, #F58220);
}

.gift-title {
    font-size: 28px;
    font-family: "Forum", sans-serif;
    font-weight: 400;
    line-height: 115%;
}

.gift-desc {
    font-family: "Inter ExtraLight", sans-serif;
    font-size: 18px;
    letter-spacing: -0.03em;
    opacity: 0.9;
}

.gift-img-placeholder {
    width: 100%;
    height: 250px;
    background-color: rgba(0, 0, 0, 0.2);
    object-fit: cover;
}

.gift-btn {
    background-color: var(--color-text, #FBF5E9);
    color: var(--color-accent, #F58220);
    font-family: "Forum", sans-serif;
    font-size: 20px;
    transition: opacity 0.3s ease;
}

.gift-btn:hover {
    opacity: 0.9;
}

.birthday-footer {
    background-color: rgba(255, 255, 255, 0.05);
}

.footer-note {
    font-family: "Inter ExtraLight", sans-serif;
    font-size: 15px;
    color: #aaa;
    letter-spacing: -0.02em;
}

.footer-sign {
    font-family: "Forum", sans-serif;
    font-size: 18px;
    color: var(--color-accent, #F58220);
}
.certs-main-title {
    font-size: 52px;
    font-family: "Forum", sans-serif;
    font-weight: 400;
}

.certs-main-subtitle {
    font-family: "Inter ExtraLight", sans-serif;
    font-size: 20px;
    letter-spacing: -0.03em;
    line-height: 120%;
    color: #ccc;
    max-width: 700px;
}

.cert-instruction-card {
    background-color: rgba(255, 255, 255, 0.04);
    border: 1px solid rgba(255, 255, 255, 0.08);
}

.cert-steps-list {
    font-family: "Inter ExtraLight", sans-serif;
    font-size: 18px;
    color: #ddd;
    line-height: 160%;
}

.cert-steps-list li::marker {
    color: var(--color-accent, #F58220);
    font-family: "Forum", sans-serif;
    font-size: 20px;
}

.cert-security-note {
    border-top: 1px dashed rgba(255, 255, 255, 0.15);
    font-family: "Inter ExtraLight", sans-serif;
    font-size: 15px;
    color: #aaa;
}

.cert-card {
    background-color: var(--color-text, #FBF5E9);
}

.cert-tag {
    font-size: 14px;
    color: #888;
    font-family: "Inter ExtraLight", sans-serif;
}

.cert-card-title {
    font-size: 32px;
    color: var(--color-accent, #F58220);
    font-family: "Forum", sans-serif;
    font-weight: 400;
    line-height: 110%;
}

.cert-card-desc {
    font-family: "Inter ExtraLight", sans-serif;
    font-size: 18px;
    letter-spacing: -0.03em;
    line-height: 125%;
    color: #333;
}

.highlight-text {
    color: #000;
    font-weight: 600;
}

.cert-form-btn-wrapper form {
    width: 100%;
    margin: 0;
    padding: 0;
}

.cert-limited-img {
    width: 100%;
    height: 190px;
    object-fit: cover;
    border: 2px solid var(--color-accent, #F58220);
    transition: transform var(--transition-base, 0.3s ease);
}

.cert-limited-img:hover {
    transform: scale(1.03);
}

@media (max-width: 991.98px) {
    .cert-limited-img {
        height: 120px;
    }
}

@media (max-width: 767.98px) {
    .certs-main-title {
        font-size: 38px;
    }
    .cert-card-title {
        font-size: 26px;
    }
}
@media (max-width: 767.98px) {
    .birthday-main-title {
        font-size: 38px;
    }
    .offer-img-placeholder {
        width: 200px;
        height: 200px;
    }
    .offer-btn {
        max-width: 100%;
    }
}
@media (max-width: 991px) {
    .gallery-slick-block {
        columns: 2 240px;
        column-gap: 16px;
    }

    .gallery-slick-block .gallery-slick {
        margin-bottom: 16px;
    }
}

@media (max-width: 575px) {
    .gallery-slick-block {
        columns: 1;
    }

    .gallery-slick-block .gallery-slick,
    .gallery-slick-block .gallery-slick:nth-child(n) {
        min-height: 360px;
    }
}

@media (max-width: 1199px) {
    .footer-logo {
        flex-basis: 160px;
    }
    .footer-map {
        min-height: 460px;
    }
}

@media (max-width: 991px) {
    .container-xxl {
        padding-left: 20px;
        padding-right: 20px;
        width: 100%;
    }
    .py-5 {
        padding-top: 42px !important;
        padding-bottom: 42px !important;
    }
    body.is-header-fixed header.elem {
        padding: 10px 0;
    }
    .burger-menu {
        max-height: 100dvh;
        overflow-x: hidden;
        overflow-y: auto;
        -webkit-overflow-scrolling: touch;
        overscroll-behavior: contain;
    }
    .burger-menu__body {
        flex: 0 0 auto;
        min-height: auto;
        overflow: visible;
        padding: 34px 0;
    }
    .burger-menu__body .h-100,
    .burger-menu__content {
        height: auto !important;
    }
    .burger-menu__content {
        min-height: 0;
    }
    .burger-menu__top-inner {
        gap: 20px;
    }
    .burger-menu__brand {
        gap: 18px;
    }
    .burger-menu__logo {
        width: 82px;
    }
    .burger-menu__phones a {
        font-size: 18px;
    }
    .burger-menu__controls {
        gap: 14px;
    }
    .burger-menu__reserve {
        min-height: 46px;
        padding: 10px 18px;
        font-size: 0;
    }
    .burger-menu__reserve .bi {
        font-size: 22px;
    }
    .burger-menu__close {
        min-width: 86px;
        min-height: 70px;
        gap: 10px;
        font-size: 18px;
    }
    .burger-menu__actions {
        padding-top: 20px;
        gap: 15px;
    }
    header .menu,
    header .address,
    header .contact-tel .btn-link {
        display: none !important;
    }
    header img.logo {
        max-width: 48px;
    }
    header .right {
        gap: 14px !important;
    }
    header .right .contact-tel {
        display: flex !important;
    }
    header .right .title-teg {
        font-size: 18px;
        white-space: nowrap;
    }
    header .right .bi.bi-telephone {
        font-size: 18px;
    }
    header .bar {
        align-items: center;
        display: inline-flex;
        font-size: 28px;
        height: 48px;
        justify-content: center;
        padding: 0;
        width: 48px;
    }
    .scroll-top {
        bottom: 18px;
        height: 48px;
        right: 18px;
        width: 48px;
    }
    .footer-brand {
        align-items: flex-start !important;
        flex-direction: column;
    }
    .footer-map {
        min-height: 420px;
    }
    .site-footer > .row {
        display: flex;
        flex-direction: column;
    }
    .site-footer > .row > .col-lg-5 {
        order: 2;
    }
    .site-footer > .row > .col-lg-7 {
        order: 1;
    }
}

@media (max-width: 575px) {
    .container-xxl {
        padding-left: 12px;
        padding-right: 12px;
    }
    .py-5 {
        padding-top: 34px !important;
        padding-bottom: 34px !important;
    }
    .reserve-modal h2 {
        font-size: 36px;
    }
    header img.logo {
        max-width: 36px;
    }
    body.is-header-fixed header.elem img.logo {
        max-width: 34px;
    }
    header .right {
        gap: 10px !important;
    }
    header .right .title-teg {
        font-size: 14px;
    }
    header .right .bi.bi-telephone {
        font-size: 15px;
    }
    header .bar {
        border-radius: 4px;
        font-size: 25px;
        height: 42px;
        width: 42px;
    }
    .scroll-top {
        bottom: 14px;
        font-size: 24px;
        height: 42px;
        right: 14px;
        width: 42px;
    }
    .burger-menu__top {
        padding: 12px 0;
    }
    .burger-menu__top-inner {
        align-items: center !important;
    }
    .burger-menu__brand {
        flex-direction: row;
        gap: 14px;
    }
    .burger-menu__logo {
        width: 54px;
    }
    .burger-menu__phones {
        display: none !important;
    }
    .burger-menu__reserve {
        min-height: 40px;
        padding: 8px 14px;
    }
    .burger-menu__close {
        min-height: 52px;
        min-width: 56px;
    }
    .burger-menu__body {
        padding: 28px 0;
    }
    .burger-menu__phones a,
    .burger-menu__nav a,
    .burger-menu__action,
    .burger-menu__prepay {
        font-size: 18px;
    }
    .burger-menu__close span {
        display: none;
    }
    .burger-menu__promo {
        gap: 18px;
    }
    .burger-menu__promo img {
        width: 84px;
    }
    .burger-menu__promo strong,
    .burger-menu__promo small {
        font-size: 16px;
    }
    .footer-map {
        min-height: 270px;
    }
    .site-footer .row.g-4 {
        row-gap: 22px;
    }
    .footer-links {
        gap: 12px;
    }
    .footer-links--grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .footer-links a,
    .footer-links span,
    .footer-brand p {
        font-size: 16px;
    }
    .footer-logo {
        flex-basis: auto;
        max-width: 110px;
    }
    .footer-brand {
        gap: 18px !important;
    }
    .footer-bottom {
        font-size: 12px;
    }
}

/* ============================== */
/* Shop app additions */
/* ============================== */

/* Shop app styles: common base is loaded from site/themes/default/css/default.css */

.category-hero{
    align-items: center;
    background-color: var(--color-page);
    display: flex;
    min-height: 500px;
    overflow: hidden;
    position: relative;
}
.category-hero__video{
    height: 100%;
    inset: 0;
    object-fit: cover;
    position: absolute;
    width: 100%;
    z-index: 0;
}
.category-hero__overlay{
    background: rgba(0, 0, 0, .5);
    inset: 0;
    position: absolute;
    z-index: 1;
}
.category-hero__content{
    position: relative;
    text-align: center;
    z-index: 2;
}
.category-hero__title{
    color: var(--color-text);
    font-family: "Forum", sans-serif;
    font-size: clamp(54px, 7vw, 96px);
    line-height: .9;
    margin: 0;
}

/* Shop menu category section */
.menu-category-sections{
    display: flex;
    flex-direction: column;
    gap: 56px;
}

.menu-category-section__head{
    border-bottom: 1px solid rgba(251, 245, 233, .22);
    padding-bottom: 16px;
}

.menu-category-section__title{
    color: var(--color-text);
    font-family: "Inter Medium", sans-serif;
    font-size: 23px;
    line-height: 1.1;
    margin: 0;
    text-transform: uppercase;
}

.menu-category-section__all{
    color: rgba(251, 245, 233, .72);
    font-family: "Inter ExtraLight", sans-serif;
    font-size: 18px;
}

.menu-category-section__all:hover{
    color: var(--color-accent);
}

.menu-category-filters{
    margin-bottom: 30px;
}

.menu-category-filter{
    border: 1px solid rgba(251, 245, 233, .24);
    border-radius: 999px;
    color: var(--color-text);
    font-family: "Inter ExtraLight", sans-serif;
    font-size: 18px;
    line-height: 1;
    padding: 12px 18px;
}

.menu-category-filter:hover{
    border-color: var(--color-accent);
    color: var(--color-accent);
}

/* Shop menu filters section */
.menu-products-layout{
    position: relative;
}

.menu-products-toolbar{
    align-items: flex-start;
    display: flex;
    gap: 18px;
    justify-content: space-between;
    margin-bottom: 34px;
    position: relative;
    z-index: 5;
}

.menu-products-filter-dropdown{
    max-width: min(720px, 100%);
    position: relative;
    width: 100%;
}

.menu-products-filter-toggle{
    align-items: center;
    background: rgba(251, 245, 233, .06);
    border: 1px solid rgba(251, 245, 233, .22);
    border-radius: 999px;
    color: var(--color-text);
    display: inline-flex;
    font-family: "Inter ExtraLight", sans-serif;
    font-size: 18px;
    gap: 12px;
    min-height: 52px;
    padding: 0 22px;
    transition: background-color var(--transition-base), border-color var(--transition-base), color var(--transition-base);
}

.menu-products-filter-toggle:hover,
.menu-products-filter-dropdown.is-open .menu-products-filter-toggle{
    background: rgba(255, 128, 24, .13);
    border-color: var(--color-accent);
    color: var(--color-text);
}

.menu-products-filter-toggle .bi-chevron-down{
    color: var(--color-accent);
    font-size: 14px;
    transition: transform var(--transition-base);
}

.menu-products-filter-dropdown.is-open .bi-chevron-down{
    transform: rotate(180deg);
}

.menu-products-filter-panel{
    background: #1b1b1b;
    border: 1px solid rgba(251, 245, 233, .16);
    border-radius: 8px;
    box-shadow: 0 18px 50px rgba(0, 0, 0, .28);
    left: 0;
    min-width: min(720px, calc(100vw - 32px));
    opacity: 0;
    padding: 24px;
    pointer-events: none;
    position: absolute;
    top: calc(100% + 12px);
    transform: translateY(-6px);
    transition: opacity var(--transition-base), transform var(--transition-base);
}

.menu-products-filter-dropdown.is-open .menu-products-filter-panel{
    opacity: 1;
    pointer-events: auto;
    transform: translateY(0);
}

.menu-products-view-toggle{
    align-items: center;
    background: rgba(251, 245, 233, .06);
    border: 1px solid rgba(251, 245, 233, .18);
    border-radius: 999px;
    display: inline-flex;
    flex: 0 0 auto;
    gap: 4px;
    padding: 5px;
}

.menu-products-view-toggle__btn{
    align-items: center;
    background: transparent;
    border: 0;
    border-radius: 999px;
    color: rgba(251, 245, 233, .68);
    display: inline-flex;
    font-size: 20px;
    height: 42px;
    justify-content: center;
    transition: background-color var(--transition-base), color var(--transition-base);
    width: 42px;
}

.menu-products-view-toggle__btn:hover,
.menu-products-view-toggle__btn.is-active{
    background: var(--color-accent);
    color: var(--color-text);
}
.menu-products-search{
    flex: 0 1 320px;
    margin-left: auto;
    max-width: min(320px, 100%);
    position: relative;
}

.menu-products-search__input{
    background: rgba(251, 245, 233, .06);
    border: 1px solid rgba(251, 245, 233, .18);
    border-radius: 999px;
    color: var(--color-text);
    display: block;
    font-family: "Inter ExtraLight", sans-serif;
    font-size: 17px;
    height: 54px;
    outline: 0;
    padding: 0 54px 0 22px;
    transition: background-color var(--transition-base), border-color var(--transition-base), color var(--transition-base);
    width: 100%;
}

.menu-products-search__input::placeholder{
    color: rgba(251, 245, 233, .62);
}

.menu-products-search__input:focus{
    background: rgba(255, 128, 24, .08);
    border-color: var(--color-accent);
}

.menu-products-search__submit{
    align-items: center;
    background: transparent;
    border: 0;
    border-radius: 50%;
    color: var(--color-accent);
    display: inline-flex;
    font-size: 18px;
    height: 42px;
    justify-content: center;
    padding: 0;
    position: absolute;
    right: 6px;
    top: 6px;
    transition: background-color var(--transition-base), color var(--transition-base);
    width: 42px;
}

.menu-products-search__submit:hover{
    background: var(--color-accent);
    color: var(--color-text);
}
.paging-nav{
    margin-top: 40px;
}

.paging-nav .menu-h{
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    justify-content: center;
    list-style: none;
    margin: 0;
    padding: 0;
}

.paging-nav .menu-h li{
    margin: 0;
    padding: 0;
}

.paging-nav .menu-h a,
.paging-nav .menu-h span{
    align-items: center;
    background: rgba(251, 245, 233, .06);
    border: 1px solid rgba(251, 245, 233, .18);
    border-radius: 999px;
    color: var(--color-text);
    display: inline-flex;
    font-family: "Inter ExtraLight", sans-serif;
    font-size: 18px;
    height: 44px;
    justify-content: center;
    min-width: 44px;
    padding: 0 16px;
    text-decoration: none;
    transition: background-color var(--transition-base), border-color var(--transition-base), color var(--transition-base);
}

.paging-nav .menu-h a:hover,
.paging-nav .menu-h li.selected a,
.paging-nav .menu-h li.selected span{
    background: var(--color-accent);
    border-color: var(--color-accent);
    color: var(--color-text);
}
.filters.leadbox{
    border-radius: 8px;
}

.filters-form-wrapper{
    display: grid;
    gap: 24px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.filter-param{
    border-bottom: 1px solid rgba(251, 245, 233, .12);
    padding-bottom: 22px;
}

.filter-param:last-of-type{
    border-bottom: 0;
    padding-bottom: 0;
}

.filter-param h5{
    color: var(--color-text);
    font-family: "Inter Medium", sans-serif;
    font-size: 16px;
    line-height: 1.2;
    margin: 0 0 14px;
    text-transform: uppercase;
}

.filter-param .form-check{
    align-items: center;
    display: flex;
    gap: 12px;
    margin: 0 0 12px;
    min-height: 0;
    padding-left: 0;
}

.filter-param .form-check:last-child{
    margin-bottom: 0;
}

.filter-param .form-check-input{
    background-color: rgba(251, 245, 233, .18);
    border-color: rgba(251, 245, 233, .32);
    box-shadow: none;
    cursor: pointer;
    flex: 0 0 auto;
    height: 22px;
    margin: 0;
    width: 42px;
}

.filter-param .form-check-input:checked{
    background-color: var(--color-accent);
    border-color: var(--color-accent);
}

.filter-param .form-check-input:focus{
    border-color: var(--color-accent);
    box-shadow: 0 0 0 .2rem rgba(255, 128, 24, .18);
}

.filter-param .form-check-label{
    color: rgba(251, 245, 233, .78);
    cursor: pointer;
    font-family: "Inter ExtraLight", sans-serif;
    font-size: 17px;
    line-height: 1.25;
}

.filter-param .form-check-input:checked + .form-check-label{
    color: var(--color-text);
}

.filter-param .slider{
    color: rgba(251, 245, 233, .78);
    font-family: "Inter ExtraLight", sans-serif;
    font-size: 16px;
}

.filter-param .slider input{
    background: rgba(251, 245, 233, .08);
    border: 1px solid rgba(251, 245, 233, .18);
    border-radius: 8px;
    color: var(--color-text);
    height: 42px;
    margin: 8px 8px 14px;
    padding: 0 12px;
    width: 92px;
}

.filter-param .ui-slider{
    background: rgba(251, 245, 233, .18);
    border: 0;
    height: 4px;
}

.filter-param .ui-slider-range{
    background: var(--color-accent);
}

.filter-param .ui-slider-handle{
    background: var(--color-accent);
    border: 2px solid var(--color-text);
    border-radius: 50%;
    cursor: pointer;
    height: 18px;
    top: -7px;
    width: 18px;
}

.menu-filter-submit{
    display: none;
}

.menu-product-card__list-view{
    display: none;
}

.menu-products-layout.is-list .menu-product-list__item{
    width: 100%;
}

.menu-products-layout.is-list .menu-product-card{
    background: transparent;
    border-radius: 0;
    color: var(--color-text);
    overflow: visible;
}

.menu-products-layout.is-list .menu-product-card__image{
    display: none;
}

.menu-products-layout.is-list .menu-product-card__body{
    display: block;
    min-height: 0;
    padding: 0;
}

.menu-products-layout.is-list .menu-product-card__title,
.menu-products-layout.is-list .product-skus-list,
.menu-products-layout.is-list .menu-product-card__summary{
    display: none;
}

.menu-products-layout.is-list .menu-product-card__list-view{
    display: block;
}

.menu-product-list-row{
    align-items: end;
    display: grid;
    gap: 5px;
    grid-template-columns: auto auto minmax(80px, 1fr) auto;
}

.menu-product-list-row__image{
    align-items: center;
    border: 1px solid rgba(251, 245, 233, .28);
    border-radius: 50%;
    color: rgba(251, 245, 233, .72);
    display: inline-flex;
    font-size: 16px;
    height: 34px;
    justify-content: center;
    transform: translateY(3px);
    transition: border-color var(--transition-base), color var(--transition-base), background-color var(--transition-base);
    width: 34px;
}

.menu-product-list-row__image:hover{
    background: rgba(255, 128, 24, .12);
    border-color: var(--color-accent);
    color: var(--color-accent);
}

.menu-product-list-row.has-image-spacer{
    grid-template-columns: auto minmax(80px, 1fr) auto;
}

.menu-product-list-row__title{
    color: var(--color-text);
    font-family: "Inter Medium", sans-serif;
    font-size: 24px;
    line-height: 1.18;
}

.menu-product-list-row__title:hover{
    color: var(--color-accent);
}

.menu-product-list-row__line{
    border-bottom: 3px dotted rgba(251, 245, 233, .74);
    transform: translateY(-4px);
}

.menu-product-list-row__price{
    color: var(--color-accent);
    font-family: "Inter ExtraLight", sans-serif;
    font-size: 24px;
    line-height: 1.1;
    white-space: nowrap;
}

.menu-product-list-row__summary{
    color: rgba(251, 245, 233, .86);
    font-family: "Inter ExtraLight", sans-serif;
    font-size: 20px;
    line-height: 1.35;
    margin-top: 10px;
    max-width: 1180px;
}

.menu-products-layout.is-list .menu-product-card + .menu-product-card,
.menu-products-layout.is-list .menu-product-list__item + .menu-product-list__item{
    margin-top: 38px;
}

.menu-product-card--loading{
    pointer-events: none;
}

.menu-product-card--loading .skeleton-line{
    background: linear-gradient(90deg, rgba(62, 82, 73, .08), rgba(62, 82, 73, .16), rgba(62, 82, 73, .08));
    background-size: 220% 100%;
    border-radius: 8px;
    display: block;
    min-height: 18px;
}

.menu-product-card__loading-title{
    height: 30px;
    width: 78%;
}

.menu-product-card__loading-price{
    height: 24px;
    margin-top: 20px;
    width: 44%;
}

.menu-product-card__loading-line{
    height: 16px;
    margin-top: 18px;
    width: 100%;
}

.menu-product-card__loading-line.is-short{
    margin-top: 10px;
    width: 64%;
}

.menu-product-card{
    background: var(--color-text);
    border-radius: 8px;
    color: var(--color-page);
    display: flex;
    flex-direction: column;
    height: 100%;
    overflow: hidden;
    position: relative;
}

.menu-product-card__image{
    display: block;
    height: 350px;
    overflow: hidden;
    position: relative;
}

.menu-product-card__image img{
    height: 100%;
    object-fit: cover;
    transition: transform 320ms ease;
    width: 100%;
}

.menu-product-card:hover .menu-product-card__image img{
    transform: scale(1.04);
}

.menu-product-card__video{
    align-items: center;
    background: var(--color-accent);
    border-radius: 50%;
    color: var(--color-text);
    display: inline-flex;
    font-size: 22px;
    height: 42px;
    justify-content: center;
    position: absolute;
    right: 14px;
    top: 14px;
    width: 42px;
}

.menu-product-card__body{
    display: flex;
    flex: 1;
    flex-direction: column;
    padding: 20px;
    position: relative;
}

.menu-product-card__title{
    color: var(--color-accent);
    font-family: "Forum", sans-serif;
    font-size: 25px;
    line-height: .95;
}

.menu-product-card__price{
    color: var(--color-page);
    font-family: "Inter Medium", sans-serif;
    font-size: 22px;
    margin-top: 18px;
}

.menu-product-card__summary{
    background: linear-gradient(rgba(251, 245, 233, .96), rgba(251, 245, 233, .98));
    color: var(--color-panel);
    font-family: "Inter ExtraLight", sans-serif;
    font-size: 18px;
    inset: auto 0 0;
    line-height: 1.2;
    opacity: 0;
    padding: 20px;
    position: absolute;
    transform: translateY(12px);
    transition: opacity var(--transition-base), transform var(--transition-base);
}

.menu-product-card:hover .menu-product-card__summary,
.menu-product-card:focus-within .menu-product-card__summary{
    opacity: 1;
    transform: translateY(0);
}
/* Product SKU prices */
.product-skus-list{
    display: flex;
    flex-direction: column;
    gap: 8px;
    margin-top: 18px;
}

.sku-item{
    display: grid;
    grid-template-columns: auto 1fr auto;
    align-items: baseline;
    gap: 10px;
    color: var(--color-panel);
    font-family: "Inter ExtraLight", sans-serif;
    font-size: 18px;
    line-height: 1.15;
}

.sku-name{
    min-width: 0;
}

.sku-name strong{
    font-family: "Inter Medium", sans-serif;
    font-weight: 500;
}

.sku-line{
    border-bottom: 1px dashed rgba(62, 82, 73, .45);
    transform: translateY(-4px);
}

.sku-price{
    color: var(--color-accent) !important;
    font-family: "Inter Medium", sans-serif;
    font-size: 18px;
    white-space: nowrap;
}

.sku-item.not-available{
    opacity: .55;
}

/* Product page section */
.product-page{
    color: var(--color-text);
}

.product-page__title{
    color: var(--color-text);
    font-family: "Forum", sans-serif;
    font-size: clamp(48px, 6vw, 92px);
    line-height: .92;
    margin-bottom: 28px !important;
    max-width: 1040px;
}

.product-page__nav{
    display: none;
    margin-bottom: 32px;
}

.product-topbar{
    align-items: center;
    border-bottom: 1px solid rgba(251, 245, 233, .16);
    display: flex;
    flex-wrap: wrap;
    gap: 10px 26px;
    list-style: none;
    margin: 0;
    padding: 0 0 18px;
    width: 100%;
}

.product-topbar li{
    color: rgba(251, 245, 233, .68);
    font-family: "Inter ExtraLight", sans-serif;
    font-size: 17px;
    line-height: 1.2;
}

.product-topbar li.selected,
.product-topbar a:hover{
    color: var(--color-accent);
}

.product-media-purchase{
    display: grid;
    gap: clamp(28px, 4vw, 64px);
    grid-template-columns: minmax(520px, 1fr) minmax(420px, .72fr);
    margin-bottom: 72px;
}

.product-media{
    display: grid;
    gap: 18px;
    grid-template-columns: 86px minmax(0, 1fr);
}

.product-media--single{
    grid-template-columns: minmax(0, 1fr);
}

.product-media .img-thumbs{
    min-width: 0;
}

.product-media .more-images,
.product-media .bx-wrapper{
    max-width: 86px !important;
}

.product-media .more-images .image{
    background: rgba(251, 245, 233, .08);
    border: 1px solid rgba(251, 245, 233, .16);
    border-radius: 8px;
    height: 86px;
    margin-bottom: 12px;
    overflow: hidden;
}

.product-media .more-images .image.selected{
    border-color: var(--color-accent);
}

.product-media .more-images img{
    height: 100%;
    object-fit: cover;
    width: 100%;
}

.product-media .img-main,
.product-gallery,
#product-core-image,
#product-core-image > a{
    min-height: 100%;
}

.product-gallery{
    background: rgba(251, 245, 233, .06);
    border: 1px solid rgba(251, 245, 233, .14);
    border-radius: 8px;
    margin: 0;
    overflow: hidden;
    width: 100%;
}

#product-core-image{
    position: relative;
    width: 100%;
}

#product-core-image > a{
    align-items: center;
    display: flex;
    justify-content: center;
}

#product-image{
    height: 100%;
    object-fit: cover;
    transition: filter var(--transition-base), opacity var(--transition-base);
    width: 100%;
}

#product-image.blurred{
    filter: blur(4px);
    opacity: .65;
}

#switching-image{
    align-items: center;
    background: rgba(30, 30, 30, .28);
    display: none;
    inset: 0;
    justify-content: center;
    position: absolute;
}

.product-purchase .cart{
    background: var(--color-text);
    border-radius: 8px;
    color: var(--color-page);
    padding: clamp(24px, 3vw, 42px);
    position: sticky;
    top: 118px;
}

.product-catalog-card{
    display: flex;
    flex-direction: column;
    gap: 28px;
}

.product-catalog-card__title{
    color: var(--color-accent);
    font-family: "Forum", sans-serif;
    font-size: clamp(42px, 4vw, 23px);
    line-height: .95;
    margin: 0;
}

.product-catalog-card__summary{
    color: var(--color-panel);
    font-family: "Inter ExtraLight", sans-serif;
    font-size: clamp(22px, 2vw, 18px);
    line-height: 1.18;
    margin: 0;
}

.product-catalog-skus{
    display: flex;
    flex-direction: column;
    gap: 14px;
    padding-top: 10px;
}

.product-catalog-sku{
    align-items: baseline;
    border: 1px solid rgba(62, 82, 73, .14);
    border-radius: 8px;
    display: grid;
    gap: 12px;
    grid-template-columns: auto 1fr auto;
    padding: 18px 20px;
}

.product-catalog-sku__name{
    color: var(--color-panel);
    font-family: "Inter Medium", sans-serif;
    font-size: clamp(20px, 1.6vw, 18px);
    line-height: 1.15;
}

.product-catalog-sku__line{
    border-bottom: 1px dashed rgba(62, 82, 73, .36);
    transform: translateY(-6px);
}

.product-catalog-sku__price{
    color: var(--color-accent);
    font-family: "Inter Medium", sans-serif;
    font-size: clamp(20px, 1.8vw, 16px);
    line-height: 1;
    white-space: nowrap;
}

.product-catalog-sku.not-available{
    opacity: .48;
}

.product-catalog-card__note{
    border-top: 1px solid rgba(62, 82, 73, .14);
    color: rgba(62, 82, 73, .68);
    font-family: "Inter ExtraLight", sans-serif;
    font-size: 16px;
    line-height: 1.3;
    padding-top: 22px;
}

.product-service-meta,
#product-tags,
.s-features-section,
.product-info .reviews,
.related{
    display: none;
}

.product-cart-form{
    display: flex;
    flex-direction: column;
    gap: 22px;
}

.product-cart-form .add2cart.js-top{
    align-items: baseline !important;
    flex-wrap: wrap;
    gap: 14px;
}

.product-cart-form .s-price,
.product-cart-form .s-price .price,
.product-cart-form .s-price .price-wrapper{
    color: var(--color-accent);
    font-family: "Forum", sans-serif;
    font-size: clamp(40px, 4vw, 62px);
    line-height: .95;
}

.product-cart-form .s-compare-price{
    color: rgba(30, 30, 30, .45);
    font-family: "Inter ExtraLight", sans-serif;
    font-size: 20px;
    text-decoration: line-through;
}

.s-product-desc{
    color: var(--color-panel);
    font-family: "Inter ExtraLight", sans-serif;
    font-size: 20px;
    line-height: 1.25;
    margin: 0;
}

.product-cart-form .skus{
    display: flex;
    flex-direction: column;
    gap: 10px;
    list-style: none;
    margin: 0;
    padding: 0;
}

.product-cart-form .skus label{
    align-items: center;
    border: 1px solid rgba(62, 82, 73, .18);
    border-radius: 8px;
    cursor: pointer;
    display: grid;
    gap: 10px;
    grid-template-columns: auto 1fr auto;
    padding: 14px 16px;
}

.product-cart-form .skus label:hover,
.product-cart-form .skus input:checked + span{
    color: var(--color-accent);
}

.product-cart-form .skus input{
    accent-color: var(--color-accent);
}

.product-cart-form .skus .price{
    color: var(--color-accent);
    font-family: "Inter Medium", sans-serif;
    font-size: 18px;
}

.product-cart-form .purchase .add2cart{
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 18px;
}

.product-cart-form .quantity-wrapper{
    display: block !important;
    margin: 0 !important;
    width: auto;
}

.product-quantity-control{
    align-items: center;
    border: 1px solid rgba(62, 82, 73, .18);
    border-radius: 8px;
    display: grid;
    grid-template-columns: 52px 70px 52px;
    overflow: hidden;
    width: 174px;
}

.product-cart-form .volume-buttons{
    display: block !important;
    min-width: 0;
}

.product-cart-form .volume-buttons button{
    align-items: center;
    background: rgba(62, 82, 73, .08);
    border: 0;
    color: var(--color-panel);
    display: inline-flex;
    height: 52px;
    justify-content: center;
    width: 48px;
}

.product-cart-form .volume-buttons button:hover{
    background: var(--color-accent);
    color: var(--color-text);
}

.product-cart-form .s-field-wrapper{
    margin: 0 !important;
}

.product-cart-form .js-quantity-field{
    background: transparent;
    border: 0;
    color: var(--color-page);
    height: 52px;
    text-align: center;
    width: 70px;
}

.product-buy-btn{
    align-items: center;
    background: var(--color-accent);
    border: 1px solid var(--color-accent);
    border-radius: 8px;
    color: var(--color-text);
    display: inline-flex;
    font-family: "Inter Medium", sans-serif;
    font-size: 18px;
    justify-content: center;
    line-height: 1;
    min-height: 54px;
    padding: 0 34px;
    min-width: 250px;
}

.product-buy-btn:hover{
    background: var(--color-accent-hover);
    border-color: var(--color-accent-hover);
    color: var(--color-text);
}

.product-buy-btn:disabled{
    cursor: not-allowed;
    opacity: .5;
}

.added2cart{
    color: var(--color-panel);
    font-family: "Inter ExtraLight", sans-serif;
    width: 100%;
}

.added2cart a{
    color: var(--color-accent);
}

.product-cart-form .services,
.product-cart-form .stocks{
    border-top: 1px solid rgba(62, 82, 73, .14);
    color: var(--color-panel);
    font-family: "Inter ExtraLight", sans-serif;
    padding-top: 18px;
}

.product-info{
    border-top: 1px solid rgba(251, 245, 233, .16);
    padding-top: 48px;
}

.product-info h3{
    color: var(--color-text);
    font-size: clamp(34px, 4vw, 58px);
    line-height: 1;
    margin-bottom: 22px;
}

.product-info--wrapper,
.product-info p{
    color: rgba(251, 245, 233, .78);
    font-family: "Inter ExtraLight", sans-serif;
    font-size: 19px;
    line-height: 1.45;
}

.features{
    list-style: none;
    margin: 0;
    padding: 0;
}

.features li{
    color: rgba(251, 245, 233, .78);
    font-family: "Inter ExtraLight", sans-serif;
}

.feature-dot-divider{
    border-bottom: 1px dashed rgba(251, 245, 233, .25);
    margin: 0 10px;
    transform: translateY(-5px);
}

.thank-you-card {
    background-color: rgba(255, 255, 255, 0.03);
    border: 1px solid rgba(255, 255, 255, 0.08);
}


.thank-you-icon-wrapper {
    width: 80px;
    height: 80px;
    background-color: rgba(245, 130, 32, 0.15);
    border: 2px solid var(--color-accent, #F58220);
    color: var(--color-accent, #F58220);
    font-size: 42px;
}

.thank-you-tag {
    font-size: 14px;
    color: #a0a0a0;
    font-family: "Inter ExtraLight", sans-serif;
}

.thank-you-title {
    font-size: 42px;
    font-family: "Forum", sans-serif;
    font-weight: 400;
    line-height: 110%;
}

.thank-you-desc {
    font-family: "Inter ExtraLight", sans-serif;
    font-size: 18px;
    letter-spacing: -0.03em;
    line-height: 130%;
    color: #ccc;
    max-width: 580px;
}


.thank-you-info {
    background-color: rgba(255, 255, 255, 0.02);
    border: 1px dashed rgba(255, 255, 255, 0.15);
    max-width: 500px;
}

.text-muted-custom {
    font-family: "Inter ExtraLight", sans-serif;
    font-size: 15px;
    color: #999;
}

.thank-you-phone {
    font-family: "Forum", sans-serif;
    font-size: 22px;
    color: var(--color-accent, #F58220);
    transition: opacity 0.3s ease;
}

.thank-you-phone:hover {
    opacity: 0.8;
}


@media (max-width: 767.98px) {
    .thank-you-title {
        font-size: 30px;
    }
    .thank-you-desc {
        font-size: 16px;
    }
}

@media (max-width: 991px){
    .product-media-purchase{
        grid-template-columns: 1fr;
    }

    .product-purchase .cart{
        position: static;
    }
}

@media (max-width: 575px){
    .product-page__title{
        font-size: 44px;
    }

    .product-media{
        grid-template-columns: 1fr;
    }

    .product-media .img-thumbs{
        order: 2;
    }

    .product-media .more-images,
    .product-media .bx-wrapper{
        max-width: 100% !important;
    }

    .product-media .more-images .image{
        display: inline-block;
        height: 72px;
        margin-bottom: 0;
        margin-right: 10px;
        width: 72px;
    }

    .product-cart-form .purchase .add2cart{
        align-items: stretch;
        flex-direction: column;
    }

    .product-buy-btn{
        width: 100%;
    }
}
/* Spaces pin v2 section */

/* Breadcrumbs section */
.breadcrumbs{
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
    color: rgba(251, 245, 233, .7);
    font-family: "Inter ExtraLight", sans-serif;
    font-size: 15px;
    line-height: 1.3;
    margin-bottom: 24px;
    border-bottom: 1px solid rgba(251, 245, 233, .1);
}

.breadcrumbs a{
    color: rgba(251, 245, 233, .7);
}

.breadcrumbs a:hover{
    color: var(--color-accent);
}

.breadcrumbs__separator{
    color: rgba(251, 245, 233, .38);
}

.breadcrumbs [itemprop="name"]:not(a [itemprop="name"]){
    color: var(--color-text);
}

@media (max-width: 575px){
    .breadcrumbs{
        gap: 6px;
        font-size: 13px;
        margin-bottom: 18px;
    }
}
@media (max-width: 991px){
    .menu-products-toolbar{
        align-items: stretch;
        flex-wrap: wrap;
        gap: 14px;
    }

    .menu-products-filter-dropdown{
        flex: 1 1 100%;
        max-width: none;
        width: 100%;
    }

    .menu-products-filter-toggle{
        justify-content: center;
        width: 100%;
    }

    .menu-products-filter-panel{
        min-width: 100%;
        position: static;
        display: none;
        margin-top: 12px;
        transform: none;
    }

    .menu-products-filter-dropdown.is-open .menu-products-filter-panel{
        display: block;
        transform: none;
    }

    .filters-form-wrapper{
        grid-template-columns: 1fr;
    }

    .menu-products-search{
        flex: 1 1 0;
        margin-left: 0;
        max-width: none;
        min-width: 0;
    }

    .menu-products-view-toggle{
        align-self: stretch;
    }

    .menu-category-section__all,
    .menu-category-section__title{
        font-size: 13px;
    }
    .category-hero{
        min-height: 420px;
    }
    .category-hero__title{
        font-size: 58px;
    }
}

@media (max-width: 575px){
    .menu-products-toolbar{
        gap: 12px;
    }

    .menu-products-filter-toggle,
    .menu-products-search__input{
        font-size: 16px;
        height: 48px;
        min-height: 48px;
    }

    .menu-products-filter-toggle{
        padding: 0 18px;
    }

    .menu-products-search__input{
        padding-left: 18px;
        padding-right: 48px;
    }

    .menu-products-search__submit{
        height: 38px;
        right: 5px;
        top: 5px;
        width: 38px;
    }

    .menu-products-view-toggle{
        padding: 3px;
    }

    .menu-products-view-toggle__btn{
        height: 42px;
        width: 42px;
    }

    .menu-product-list-row{
        display: flex;
        flex-wrap: wrap;
        gap: 8px 14px;
    }

    .menu-product-list-row__image{
        height: 30px;
        width: 30px;
    }

    .menu-product-list-row__title{
        flex: 1 1 calc(100% - 44px);
        font-size: 20px;
    }

    .menu-product-list-row__line{
        display: none;
    }

    .menu-product-list-row__price{
        font-size: 21px;
    }

    .menu-product-list-row__summary{
        font-size: 17px;
    }

    .category-hero{
        min-height: 330px;
    }
    .category-hero__title{
        font-size: 44px;
    }
}
