body {
    font-family: "Public Sans", sans-serif;
    letter-spacing: 0.3px;
    font-size: 15px;
    line-height: 1.11;
}
body.body-bg-merino {
    background: #f6f0ea;
}
body.body-payment-page {
    padding-bottom: 100px;
    min-height: 100vh;
    position: relative;
}
.body-payment-confirmed {
    padding-bottom: 0 !important;
}
input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
input:-webkit-autofill:active {
    transition: background-color 5000000s ease-in-out 0s;
}
::-ms-reveal {
    display: none;
}
.container {
    width: 100%;
    max-width: 1328px;
    padding-left: 24px;
    padding-right: 24px;
}
.hidden-desktop {
    display: none !important;
}
.hidden-content {
    display: none !important;
}
a {
    color: #1f2933;
    text-decoration: none;
}
a.text-underline {
    text-decoration: underline;
    text-underline-position: under;
}
.hr-1 {
    color: #d6d5d3;
    opacity: 1;
}
.image-block img {
    display: block;
    max-width: 100%;
}
.pd-10 {
    padding: 10px;
}
.pd-12 {
    padding: 12px;
}
.pd-t-12 {
    padding-top: 12px !important;
}
.pd-b-12 {
    padding-bottom: 12px !important;
}

.margin-12 {
    margin: 12px;
}
.margin-t-12 {
    margin-top: 12px;
}
.margin-b-12 {
    margin-bottom: 12px !important;
}

.pd-r-12 {
    padding-right: 12px !important;
}
.pd-20 {
    padding: 20px;
}
.pd-b-20 {
    padding-bottom: 20px;
}
.pd-t-20 {
    padding-top: 20px;
}
.pd-t-24 {
    padding-top: 24px;
}
.pd-t-32 {
    padding-top: 32px;
}
.shop-header-banner {
    padding-bottom: 32px;
}
.pd-t-40 {
    padding-top: 40px;
}
.pd-b-40 {
    padding-bottom: 40px;
}
.pd-y-40 {
    padding-top: 40px;
    padding-bottom: 40px;
}
.margin-b-20 {
    margin-bottom: 20px;
}
.margin-t-20 {
    margin-top: 20px;
}
.margin-y-20 {
    margin-top: 20px;
    margin-bottom: 20px;
}
.margin-t-32 {
    margin-top: 32px;
}
.margin-b-32 {
    margin-bottom: 32px;
}
.radius-12 {
    border-radius: 12px;
}
.radius-8 {
    border-radius: 8px;
}
.radius-40 {
    border-radius: 40px;
}
.shadow-card {
    box-shadow: 0px 4px 2px 0px rgba(71, 58, 46, 0.12);
}
.shadow-card-2 {
    box-shadow: 0px 2px 4px 0px rgba(71, 58, 46, 0.12);
}
ul li,
ol li {
    list-style-type: none;
}
.text-m-grey-dark {
    color: #362717;
}
.text-m-grey-900 {
    color: #1d1f1f;
}
.text-m-grey-700 {
    /* color: #323434; */
    color: #343332;
}
.text-m-grey-600 {
    color: #1f2933;
}
.text-m-grey-500 {
    color: #464949;
}
.text-m-grey-400 {
    color: #5b5b5a;
}
.text-m-grey-300 {
    /* color: #838585; */
    color: #858483;
}
.text-green {
    /* color: #219653; */
    color: #439c60;
}
.text-red {
    color: #f84c4c;
}
.bg-monochrome-grey-25 {
    /* background: #f7f7f7; */
    background: #f7f6f5;
}
.bg-monochrome-grey-50 {
    background: #e8e7e6;
}
.material-symbols-outlined,
.material-icons-outlined {
    font-weight: 300;
}
.btn {
    font-size: 15px;
    transition: all 0.3s ease-in-out;
}
.btn-primary {
    background-color: #fff;
    color: #1f2933;
    font-weight: 400;
    border: 1px solid #1f2933;
}
.btn-primary:hover,
.btn-primary:focus,
.btn-primary:active {
    color: #1f2933 !important;
    border: 1px solid #1f2933 !important;
    background-color: #e8e7e6 !important;
}
.btn-secondary {
    background-color: #1f2933;
    color: #fff;
    font-weight: 400;
}
.btn-secondary:hover,
.btn-secondary:focus,
.btn-secondary:active {
    color: #fff !important;
    /* border: 1px solid #1f2933 !important; */
    background-color: #37485a !important;
}
.btn-secondary.loading-btn span:before {
    content: "";
    width: 30px;
    height: 30px;
    background: url(../images/loading-white-circle.svg) no-repeat;
    background-size: 30px;
    display: inline-block;
    animation: spin 2s linear infinite;
    position: relative;
    top: 9px;
    margin-right: 12px;
}
.btn-secondary.loading-btn span {
    opacity: 0.6;
}
.btn-default {
    background: none;
    color: #1f2933;
    font-weight: 400;
    border: 1px solid transparent;
}
.btn-default:hover,
.btn-default:focus,
.btn-default:active {
    color: #1f2933 !important;
    border: 1px solid #1f2933 !important;
    /* background-color: #37485a !important; */
}
.btn-full {
    width: 100%;
    border-radius: 40px;
}
.btn-lg {
    height: 58px;
    line-height: 58px;
    padding: 0 20px;
}
.btn-md {
    height: 48px;
    line-height: 48px;
    padding: 0 20px;
}
.btn:disabled {
    background-color: inherit;
    color: inherit;
    border-color: inherit;
}
.container-medium {
    max-width: 1160px;
    margin: 0 auto;
    padding: 0 24px;
}
.select-field {
    -webkit-appearance: none;
    -moz-appearance: none;
    text-indent: 1px;
    text-overflow: "";
}
.select-field::-ms-expand {
    display: none;
}

/*****************************/
/** Header
/*****************************/
.site-header header {
    padding-top: 40px;
    padding-bottom: 16px;
}
.header-bottom-banner {
    padding-top: 122px;
}
.shop-header-banner {
    padding-top: 120px;
}
.positioned-header {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 86px;
    z-index: 999;
}
.shop-header {
    height: 120px;
}
.header-logo .dark-logo {
    display: none;
}
.profile-dropdown {
    position: relative;
}
.profile-dropdown-menu {
    width: 256px;
    /* right: 0 !important; */
    left: 0 !important;
    box-shadow: 0px 4px 10px 0px rgba(0, 0, 0, 0.14);
    border-radius: 4px;
}
.profile-dropdown-menu ul {
    padding-left: 0;
    margin-bottom: 0;
}
.profile-dropdown-btn.dropdown-toggle::after {
    display: none;
}
.profile-dropdown-menu a {
    gap: 6px;
    width: 100%;
    padding: 6px 12px;
    font-size: 15px;
    color: #362717;
    display: block;
    font-size: 14px;
    font-weight: 600;
}
.profile-dropdown-logged-in.profile-dropdown-menu a {
    padding: 8px 12px 8px 16px;
    font-size: 15px;
    font-weight: 400;
}
.profile-dropdown-menu .dropdown-item-icon {
    font-size: 28px;
}
.profile-dropdown-info {
    padding: 12px 12px 12px 16px;
    border-bottom: 1px solid #e8e7e6;
}
.hamberger-btn {
    width: 44px;
    height: 44px;
    background: none;
    border: none;
    padding: 0;
}

.body-bg-merino .header-logo .light-logo {
    display: none;
}
.body-bg-merino .header-logo .dark-logo {
    display: block;
}
.body-bg-merino .light-content {
    display: none;
}
.dark-content {
    display: none;
}
.body-bg-merino .dark-content {
    display: block;
}
.footer-container {
    background: #f6f0ea;
    padding: 100px 0 40px 0;
}

.has-ribbon {
    position: relative;
}
body.body-payment-page .has-ribbon {
    position: static;
}
.has-ribbon .footer-container {
    padding-bottom: 70px;
}
.footer-ribbon {
    position: absolute;
    width: 100%;
    bottom: 0;
    left: 0;
    z-index: 99;
}
.site-footer {
    display: grid;
    grid-template-columns: 136px auto 80px;
    column-gap: 80px;
}
.footer-nav-col li {
    padding-bottom: 12px;
    text-decoration: underline;
}
.footer-site-info .footer-info {
    width: 60%;
}
.footer-site-info .footer-nav-col {
    width: 27%;
}
.footer-nav-col li a {
    font-size: 18px;
    line-height: 1.44;
    color: #343332;
    text-underline-position: under;
}
.footer-social {
    gap: 7px;
}
.footer-social a {
    width: 36px;
}
.footer-social a:last-child {
    margin-right: 0;
}

.lng-dropdown-list {
    display: none;
}
.lng-switcher .dropdown-toggle::after {
    display: none;
}
.lng-switcher button {
    width: 144px;
}
.lng-switcher button .icon-dropdown-arrow {
    margin-left: auto;
}
.lng-switcher .header-selected-lng {
    padding-left: 8px;
}
.lng-switcher .dropdown-menu li a {
    padding: 6px 20px;
    font-size: 14px;
    font-weight: 600;
    color: #362717;
}
.lng-switcher .dropdown-menu li.active-lng a {
    background: #f6f0ea;
}
.lng-switcher .lng-dropdown {
    background: #fff;
    right: 0 !important;
    left: unset !important;
}
.lng-switcher .lng-flag {
    margin-right: 15px;
}
.heading-2 {
    font-size: 35px;
    line-height: 1.14;
    font-weight: 800;
}
.heading-3 {
    font-size: 27px;
    line-height: 1.18;
    /* font-weight: 700; */
    font-weight: 800;
    color: #343332;
}
.heading-4 {
    font-size: 23px;
    line-height: 1.39;
    font-weight: 700;
}
h6.tagline {
    font-size: 14px;
    line-height: 16px;
    margin-bottom: 8px;
    font-weight: 700;
}
.page-link {
    font-weight: 600;
    font-size: 12px;
    line-height: 1.15;
    color: #1f2933;
    letter-spacing: 0.4px;
}
.text-11 {
    font-size: 11px !important;
}
.text-13 {
    font-size: 13px !important;
}
.text-16 {
    font-size: 16px !important;
}
.text-14 {
    font-size: 14px !important;
    line-height: 1.28;
}
.text-15 {
    font-size: 15px !important;
}
.text-17 {
    font-size: 17px !important;
}
.text-18 {
    font-size: 18px !important;
    line-height: 1.44;
}
.line-height-33 {
    line-height: 1.33;
}
.font-w-600 {
    font-weight: 600;
}
.font-w-500 {
    font-weight: 500;
}
.font-w-800 {
    font-weight: 800 !important;
}
.font-w-900 {
    font-weight: 900 !important;
}
.bg-merino {
    background: #f6f0ea;
}
.bg-dark-merino {
    background: #eaddd0;
}
.bg-ash-merino {
    /* background: rgba(54, 39, 23, 0.13); */
    background: rgba(54, 39, 23, 0.15);
}
.bg-dark-blue {
    background: #37485a;
    color: #fff;
}
.border-mg-1 {
    /* border: 1px solid #e8e8e8; */
    border: 1px solid #e8e7e6;
}
.flex-gap-8 {
    gap: 8px;
}
.flex-gap-12 {
    gap: 12px;
}
.flex-gap-20 {
    gap: 20px;
}
.flex-gap-32 {
    gap: 32px;
}
.text-decoration-underline {
    text-underline-position: under;
}

.sauna-form .form-group {
    padding: 10px 12px 9px 16px;
    border-radius: 4px;
    border: 1px solid #343332;
    margin-bottom: 32px;
    color: #5b5b5a;
    transition: all 0.3s ease-in-out;
}
.sauna-form .form-group.disabled-group {
    opacity: 0.6;
}
.sauna-form .form-group-col {
    margin-bottom: 32px;
}
.sauna-form .form-group-col .form-group {
    margin-bottom: 0;
}
.sauna-form .invalid .form-group {
    border: 1px solid #f26161;
}
.sauna-form .error-msg {
    font-size: 11px;
    line-height: 14px;
    color: #f26161;
    margin-bottom: 0;
    margin-top: 4px;
    padding-left: 16px;
}
.sauna-form .alert {
    background: none;
    border: none;
    padding: 0;
    font-size: 11px;
    line-height: 14px;
    margin-bottom: 0;
    margin-top: 4px;
    padding-left: 16px;
    display: flex;
    align-items: center;
}
.flash-msg-container .alert {
    --bs-alert-color: #343332;
    font-size: 15px;
    font-weight: 500;
    box-shadow: 0px 4px 5px 0px rgba(0, 0, 0, 0.14),
        0px 1px 10px 0px rgba(0, 0, 0, 0.12),
        0px 6px 12px 0px rgba(0, 0, 0, 0.2);
    border-radius: 8px;
    padding: 20px 24px;
    line-height: 1.33;
}
.flash-msg-container .alert-danger {
    --bs-alert-bg: #e8cbbe;
    --bs-alert-color: #343332;
}
.sauna-form .alert-danger {
    color: #f26161;
}
.sauna-form .form-group-col .alert-danger {
    display: none;
}
.sauna-form .form-group-col.invalid .alert-danger {
    display: flex;
}
.sauna-form .alert-danger:before {
    content: "\f22f";
    font-family: "Material Symbols Outlined";
    font-size: 16px;
    vertical-align: middle;
    color: #fff;
    background: #f26161;
    border-radius: 50%;
    margin-right: 4px;
    display: inline-block;
    line-height: 1;
}
.sauna-form .alert-danger .error-icon {
    font-size: 16px;
    vertical-align: middle;
    color: #fff;
    background: #f26161;
    border-radius: 50%;
    margin-right: 4px;
}
.sauna-form .error-msg .error-icon {
    font-size: 16px;
    vertical-align: middle;
    color: #fff;
    background: #f26161;
    border-radius: 50%;
    margin-right: 4px;
}
.sauna-form .has-adornment {
    position: relative;
}
.sauna-form .adornment-icon {
    position: absolute;
    right: 10px;
    top: calc(50% - 14px);
    cursor: pointer;
    color: #464949;
}
.sauna-form .form-group-standard {
    border: none;
    border-bottom: 1px solid #464949;
    border-radius: unset;
}
.sauna-form .form-label {
    font-size: 11px;
    line-height: 14px;
    margin-bottom: 0;
    padding-bottom: 7px;
    display: block;
}
.sauna-form .form-field {
    font-size: 15px;
    line-height: 14px;
    /* height: 14px; */
    padding: 0;
    color: #343332;
    /* padding-bottom: 10px; */
}
.sauna-form .form-field.phone-field {
    padding-bottom: 0;
}
.sauna-form textarea.form-field {
    background: none;
    border: none;
    width: 100%;
}
.disabled-field {
    pointer-events: none;
    opacity: 0.6;
}
.sauna-form textarea.form-field:focus,
.sauna-form textarea.form-field:focus-visible {
    border: none;
    outline: none;
}
.sauna-form .form-group-standard .form-field {
    padding-top: 10px;
    padding-bottom: 11px;
}
.sauna-form .form-check {
    padding-left: 0;
}
.sauna-form .form-check-input:checked {
    background-color: #1f2933;
    border-color: #1f2933;
}
.sauna-form .form-check-input {
    width: 20px;
    height: 20px;
    border: 1px solid #858483;
    border-radius: 2px;
    margin: 8px;
}
.sauna-form .form-check-input:focus {
    box-shadow: unset;
}
.sauna-form .form-check-input:checked[type="checkbox"] {
    --bs-form-check-bg-image: url(../images/check.svg);
    /* background: url(../images/check.svg); */
}
.sauna-form .form-check-label {
    font-size: 12px;
    font-weight: 500;
    cursor: pointer;
}
.sauna-form .form-check-label a {
    display: inline-block;
    color: inherit;
}
.sauna-form .form-text {
    font-size: 15px;
    line-height: 1.33;
    color: #343332;
}
.sauna-form-text {
    font-size: 15px;
    line-height: 1.33;
    color: #343332;
}
.sauna-form .password-field-group {
    position: relative;
    height: 60px;
}
.sauna-form .password-field-group input[type="password"] {
    font-size: 32px;
    height: 18px;
    line-height: 18px;
}
.sauna-form .password-field-group .eye-icon {
    position: absolute;
    right: 20px;
    top: calc(50% - 14px);
    cursor: pointer;
    color: #858483;
}
.sauna-form .select-group {
    position: relative;
    /* height: 60px; */
}
.sauna-form .select-group .es-list {
    position: absolute;
    top: 100% !important;
    left: 0 !important;
    width: 100% !important;
    padding: 10px 0;
}
.sauna-form .select-group .es-list li {
    font-size: 15px;
    line-height: 1.33;
    color: #343332;
    padding: 5px 10px;
    cursor: pointer;
}
.sauna-form input.es-input {
    background: unset;
}
.sauna-form .two-col-row > div {
    width: 50%;
}
.sauna-form .three-col-row > div {
    width: 33.33%;
}
.sauna-form .two-col-row .large-form-group {
    width: 70%;
}
.sauna-form .two-col-row .small-form-group {
    width: 30%;
}
.sauna-form .form-group.single-col-row {
    width: calc(50% - 16px);
}
.sauna-form .radio-group input {
    display: none;
}
.sauna-form .radio-group label {
    font-size: 14px;
    color: #343332;
    font-weight: 700;
    /* display: flex; */
    display: inline-flex;
    gap: 8px;
    align-items: center;
    cursor: pointer;
}
.sauna-form .radio-group .radio-icon {
    width: 19px;
    height: 19px;
    border-radius: 50%;
    transition: all 0.3s ease-in-out;
    position: relative;

    background: url(../images/radio-icon-normal.svg) no-repeat 0 0;
    background-size: 19px;
}
.sauna-form .radio-group input:checked + .radio-icon {
    background: url(../images/radio-icon-checked.svg) no-repeat 0 0;
    background-size: 19px;
}

.sauna-form .small-select-group {
    max-width: 240px;
}
.sauna-form .form-section-heading {
    font-size: 18px;
    line-height: 1.45;
    color: #343332;
    font-weight: 800;
    margin-bottom: 20px;
}
.sauna-form .term-agree-group > div {
    padding: 0 5px 7px 0;
}
.sauna-form .term-agree-group.invalid > div {
    border: 1px solid #f26161;
}

.login-container {
    background: url(../images/login-bg.png) no-repeat;
    background-size: cover;
    min-height: 100vh;
    padding-bottom: 20px;
}
.transparent-btn {
    color: #fff;
    border: 1px solid #fff;
    font-weight: 600;
    font-size: 14px;
    padding: 9px 9px;
    letter-spacing: 0.3px;
}
.transparent-btn.profile-dropdown-btn {
    min-width: 116px;
}
.transparent-btn.show,
.transparent-btn:active,
.transparent-btn:first-child:active,
.transparent-btn:hover {
    color: #f6f0ea;
    background-color: rgba(246, 240, 234, 0.15) !important;
    border-color: #f6f0ea !important;
}
.body-bg-merino .transparent-btn {
    border: 1px solid #362717;
    color: #362717;
}
.body-bg-merino .transparent-btn.show,
.body-bg-merino .transparent-btn:active,
.body-bg-merino .transparent-btn:first-child:active,
.body-bg-merino .transparent-btn:hover {
    color: #362717 !important;
    border-color: #362717 !important;
    background: rgba(54, 39, 23, 0.15) !important;
}
.icon-btn {
    gap: 8px;
}
.auth-container {
    max-width: 630px;
    margin: 0 auto;
    padding: 0 40px;
}
.auth-form-container {
    padding: 32px;
}
.auth-container .auth-form {
    padding-top: 24px;
}
.auth-container .btn-group {
    border-radius: 100px;
    overflow: hidden;
}
.auth-container .btn-group .btn {
    background: rgba(246, 240, 234, 0.12);
    backdrop-filter: blur(8px);
    color: #f6f0ea;
    font-size: 15px;
    line-height: 14px;
    padding: 15px 10px;
    border: none;
    font-weight: 400;
    letter-spacing: 0.3px;
    margin-left: unset !important;
}
.auth-container .btn-group .btn span {
    opacity: 0.6;
}
.auth-container .btn-group .btn.btn-active {
    background: #f6f0ea;
    color: #1f2933;
    font-weight: 700;
}
.auth-container .btn-group .btn.btn-active span {
    opacity: 1;
}

/**************************/
/** Sauna list
/**************************/
.sauna-list-banner {
    background: url(../images/sauna-list-bg.png) no-repeat;
    background-size: cover;
}
.sauna-details-banner {
    background: url(../images/sauna-details.png) no-repeat;
    background-size: cover;
}
.event-details-banner {
    background: url(../images/event-details-bg.png) no-repeat;
    background-size: cover;
}
.shop-banner-content {
    padding: 30px 0 40px 0;
    color: #fff;
    max-width: 826px;
    margin: 0 auto;
    position: relative;
}
.page-title {
    font-size: 56px;
    line-height: 1.28;
}
.sauna-btn-group {
    border-radius: 50px;
    overflow: hidden;
}
.shop-banner-content .sauna-btn-group {
    max-width: 440px;
    margin: 0 auto;
    margin-top: 45px;
}
.shop-banner-content-container .back-btn {
    position: absolute;
    left: 50px;
    bottom: 15px;
    z-index: 20;
    border: 2px solid #fff;
    border-radius: 50%;
    width: 45px;
    height: 45px;
    text-align: center;
    display: inline-block;
    background: rgba(54, 39, 23, 0.4);
    transition: all 0.3s ease-in-out;
}
.shop-banner-content-container .back-btn:hover {
    background: rgba(246, 240, 234, 0.15);
}
.shop-banner-content-container .back-btn .back-icon {
    font-size: 43px;
    color: #fff;
}
.shop-banner-content-container {
    position: relative;
}
.sauna-btn-group .btn {
    background: #ffffff;
    color: #1f2933;
    font-size: 15px;
    line-height: 14px;
    padding: 22px 10px;
    border: none !important;
    margin: 0 !important;
}
.sauna-btn-group .btn span {
    opacity: 0.6;
}
.sauna-btn-group .btn:active {
    background: #ffffff;
    color: #1f2933;
    border: none !important;
    opacity: 1;
}
.sauna-btn-group .btn-active span {
    opacity: 1;
}
.sauna-type-btn-group .btn {
    width: 224px;
}
/* .sauna-btn-group .btn:hover {
  background: rgba(246, 240, 234, 0.15);
  color: #f6f0ea;
  backdrop-filter: blur(8px);
}
.sauna-btn-group .btn:hover span {
  opacity: 0.6;
} */
/* .sauna-btn-group:hover .btn {
  background: rgba(246, 240, 234, 0.15);
  color: #f6f0ea;
} */
.booking-type-group .btn {
    width: 148px;
}
.sauna-btn-group .btn-active {
    background: #1f2933;
    color: #ffffff;
    font-weight: 700;
    opacity: 1;
    position: none;
}
.sauna-btn-group .btn-active:active {
    background: #1f2933;
    color: #ffffff;
    border: none;
}
/* .sauna-btn-group .btn-active:hover {
  background: #f6f0ea;
  color: #1f2933;
}
.sauna-btn-group .btn-active:hover span {
  opacity: 1;
} */
.sauna-btn-group .btn:hover,
.sauna-btn-group .btn:active {
    border: none;
    z-index: unset;
}
.sauna-form.sauna-filter-form .form-group {
    margin-bottom: 24px;
}
.sauna-filter-form .filter-col {
    width: 20%;
}
.sauna-filter-form .filter-col.filter-col-search {
    width: 30%;
}
.sauna-filter-form .filter-col.filter-col-location {
    /* width: 34%; */
}
.sauna-form .select-group {
    position: relative;
    height: 60px;
}
.sauna-form .select-group .select-field {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    padding: 20px 12px 11px 16px;
    line-height: 1;
}
.event-filter-group1 {
    width: 36%;
}
.event-filter-group2 {
    width: 55%;
}
.sauna-event-filter .category-filter-col {
    width: 40%;
}
.sauna-event-filter .location-filter-col {
    width: 60%;
}
.sauna-filter-form .form-group {
    height: 60px;
}
/******************************/
/**  Sauna list Content
/******************************/
.sauna-item .sauna-info {
    width: 54%;
}
.sauna-item .sauna-image {
    border-radius: 8px;
    overflow: hidden;
    width: 44%;
    display: flex;
    align-items: center;
}
.sauna-item .sauna-image img {
    max-width: 100%;
}
/* .sauna-feature-icon,
.sauna-feature-text {
  vertical-align: middle;
} */
.sauna-feature-list-item {
    padding: 6px 10px 6px 6px;
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 13px;
    color: #343332;
}
.sauna-feature-list-item .sauna-feature-icon {
    font-size: 24px;
}
.sauna-details-section .sauna-feature-list-item {
    font-size: 15px;
    /* font-size: 13px; */
}
.sauna-details-section .sauna-feature-list-item .sauna-feature-icon {
    font-size: 28px;
}
.sauna-event-details-section .sauna-feature-list-item {
    font-size: 13px;
}
.sauna-event-details-section .sauna-feature-list-item .sauna-feature-icon {
    font-size: 24px;
}
.sauna-item-slot-container {
    padding: 14px 12px;
}
.sauna-slot-list {
    gap: 6px;
    align-items: center;
}
.sauna-slot-list .sauna-slot-item {
    width: 105px;
    padding: 8px;
    border-radius: 4px;
    text-align: center;
    color: #343332;
    font-size: 12px;
    line-height: 1.166;
}
.view-btn {
    min-width: 180px;
}
.view-btn-lg {
    min-width: 220px;
}
.sauna-form .submit-btn {
    min-width: 240px;
}
.apply-btn {
    width: 132px;
}
.reset-btn {
    width: 140px;
}
.reset-btn .material-symbols-outlined {
    font-weight: 400;
}
.sauna-item-event-time .time-card {
    padding: 10px 10px 10px 6px;
    width: 216px;
    max-width: 100%;
    gap: 8px;
}
.booking-conf-sauna-details .sauna-item-event-time .time-card,
.sauna-list .sauna-item-event-time .time-card {
    width: 164px;
}
.sauna-details-section .sauna-item-event-time .time-card {
    width: 194px;
}
.sauna-item-event-time .mate-icon {
    font-size: 32px;
}
.sauna-item-event-time {
    color: #362717;
}
.sauna-contact-section {
    /* padding-left: 12px;
  padding-right: 12px; */
}
/*****************************/
/*** Sauna details
/****************************/
.sauna-details-container .container {
    max-width: 1248px;
}
.sauna-contact-section .sauna-contact-info {
    width: 32%;
}
.sauna-contact-section .sauna-contact-map {
    width: 68%;
}
.sauna-details-section {
    gap: 36px;
}
.sauna-details-section .sauna-details-gallery {
    width: 50%;
}
.sauna-details-section .sauna-details-info {
    width: 50%;
}
.carousel-indicators {
    position: static;
    margin-top: 0;
    margin-bottom: 0;
}
.carousel-indicators button {
    width: 21px !important;
    height: 21px !important;
    background-color: unset !important;
    opacity: 1 !important;
    background: url(../images/carousel-dot.svg) center no-repeat;
    border: none !important;
}
.carousel-indicators button.active {
    background: url(../images/carousel-dot-active.svg) center no-repeat;
}
.carousel-indicators button.active:after {
}
.carousel-control-prev,
.carousel-control-next {
    opacity: 1 !important;
    width: auto !important;
}
.carousel-control-prev {
    margin-left: 12px !important;
}
.carousel-control-next {
    margin-right: 12px !important;
}
.carousel-control-prev span,
.carousel-control-next span {
    background: rgba(54, 39, 23, 0.7);
    color: #fff;
    width: 40px;
    height: 40px;
    text-align: center;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
}
.event-reg-section .event-reg-form-section {
    width: 66%;
}
.event-reg-section .event-reg-img {
    width: 34%;
}
.related-sauna-banner {
    position: relative;
}
.related-sauna-banner img {
    display: block;
    width: 100%;
    height: auto;
    min-height: 300px;
    object-fit: cover;
}
.related-sauna-banner .banner-content {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
}
.radio-item .radio-field {
    display: none;
}
.week-select-btn {
    display: inline-block;
    padding: 6px 6px;
    border: 1px solid #343332;
    cursor: pointer;
    transition: all 0.3s ease-in-out;
}
.week-select-btn.disabled {
    opacity: 0.3;
    cursor: default;
    user-select: none;
    pointer-events: none;
}
#event-range-date-field #event-date {
    width: 0;
    padding: 0;
    border: none;
}
#event-range-date-field label {
    display: flex;
    align-items: center;
    background: #fff;
    border-radius: 4px;
    padding: 6px;
    width: 220px;
}
#event-range-date-field #event-date-range {
    font-size: 14px;
    color: #343332;
    font-weight: 600;
}
#event-range-date-field label .calendar-icon {
    margin-right: 8px;
    font-weight: 400;
}
.time-slot .radio-label-text {
    display: inline-block;
    width: 98px;
    height: 40px;
    line-height: 40px;
    font-size: 15px;
    border: 1px solid #343332;
    color: #343332;
    border-radius: 44px;
    text-align: center;
    transition: all 0.3s ease-in-out;
    cursor: pointer;
}
.time-slot input:checked + .radio-label-text {
    background: rgba(54, 39, 23, 0.15);
    border: 1px solid #1f2933;
    color: #1f2933;
}
.sauna-slot-date-item .slot-select-option {
    display: none;
}
.sauna-slot-date-item .slot-option-details {
    display: none;
}
.slot-select-option .slot-select-option-item {
    border-top: 1px solid #c6c7c7;
}
.slot-select-option .selected-slot-time-text {
    display: inline-block;
    width: 95px;
}
.sauna-slot-date-item:last-child {
    margin-bottom: 0 !important;
}
.upcoming-events-container .sauna-item .sauna-info {
    width: 60%;
}
.upcoming-events-container .sauna-item .sauna-image {
    width: 40%;
}
#vacancyBlockForm #participant-select-group {
    max-width: 376px;
    margin-top: 40px;
}

.profile-customer-details {
    width: 66%;
}
.profile-update-password {
    width: 34%;
}
.booking-info-box {
    height: 44px;
    line-height: 44px;
}
.booking-customer-details {
    width: 66%;
}
.booking-sauna-details {
    width: 34%;
}
.booking-conf-sauna-details {
    max-width: 800px;
}
.time-slot-btn {
    width: 128px;
    height: 40px;
    line-height: 40px;
}
.booking-details-card .details-card-thumb-col {
    width: 208px;
}
.booking-details-card .details-card-thumb-col img {
    display: block;
    width: 100%;
}
.booking-details-card .details-card-info-col {
    flex: 1;
}
.btn-with-icon {
    display: flex;
    align-items: center;
    gap: 6px;
}
.schedule-payable-row .event-schedule-col {
    width: 36%;
}
.schedule-payable-row .event-payment-col {
    width: 60%;
}
/*****************************/
/*** payment page
/****************************/
.payment-page-inner {
    margin: 0 auto;
}
.payment-varification-page .payment-page-inner {
    max-width: 504px;
}
.payment-booking-details-page .payment-page-inner {
    max-width: 936px;
}
.payment-form-page .payment-page-inner {
    max-width: 846px;
}
.payment-confirmed-page .payment-page-inner {
    max-width: 390px;
}
.payment-details-image {
    width: 41%;
}
.payment-details-details {
    width: 59%;
}
.payment-page-inner .sauna-item-event-time .time-card {
    padding: 10px 10px 10px 6px;
}
.payment-method-card {
    width: 55%;
}
.order-summery-card {
    width: 45%;
}
.sauna-card-header {
    color: #493b2c;
    font-weight: 600;
}
.sauna-card-body .pay-method-name {
    font-family: "Lato", sans-serif;
}
.radio-card-group .radio-field {
    display: none;
}
label.pay-method-item {
    transition: all 0.3s ease-in-out;
    border: 2px solid #c6c7c7;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 10px;
    height: 56px;
    border-radius: 4px;
    cursor: pointer;
}
input:checked + label.pay-method-item {
    border: 2px solid #1f2933;
    border-radius: 4px;
}
.status-icon .mate-icon {
    font-size: 64px;
    border-radius: 50%;
}
.status-icon .success-icon {
    color: #fff;
    background: #439c60;
    font-weight: 400;
}
.status-icon .failed-icon {
    background: #de1a1a;
    color: #fff;
    font-weight: 400;
}
#discount-applied-box {
    padding: 14px 10px 14px 8px;
}
#discount-applied-box .close-btn {
    padding: 0;
    border: none !important;
    outline: none !important;
    background: transparent !important;
}

/*****************************/
/*** table
/****************************/
.sauna-table td,
.sauna-table th {
    padding: 12px 8px 12px 16px;
    font-size: 14px;
    border-color: #f6f0ea;
    border-bottom-width: 4px;
    vertical-align: middle;
    color: #343332;
}
.sauna-table td.action-col {
    padding-top: 10px;
    padding-bottom: 10px;
}
.sauna-table thead th {
    padding: 12px 8px 12px 16px;
    color: #1f2933;
    box-shadow: 0px -1px 0px 0px #e9eaeb inset;
}
.booking-list-table .booking-row {
    cursor: pointer;
}
.booking-list-table td button {
    line-height: 1;
    padding: 0;
}
.sauna-table .event-delete-icon {
    background: rgba(31, 41, 51, 0.12);
    border: 1px solid transparent;
    color: #1f2933;
    border-radius: 4px;
    padding: 5px;
    font-size: 24px;
    transition: all 0.3s ease-in-out;
}
.sauna-table .event-delete-icon:hover {
    border: 1px solid #37485a;
}
table {
    /* --bs-table-hover-bg: rgba(54, 39, 23, 0.13) !important; */
    /* --bs-table-hover-bg: #eaddd0 !important; */
}
.status-btn {
    display: inline-block;
    font-size: 13px;
    min-width: 84px;
    padding: 4px 10px;
    line-height: 16px;
    border-radius: 4px;
    text-align: center;
    color: #343332;
}
.details-status-badge {
    background: #bee8cd;
}
.status-btn {
    background: #bee8cd;
}
.bg-paid {
    background: #bee8cd;
}
.bg-invoiced,
.bg-additional-payment-invoiced,
.bg-invoice {
    background: #bed1e8;
}
.bg-additional-payment {
    background: #ebd6fd;
}
.bg-unpaid {
    background: #e8e7e6;
}
.bg-cancelled {
    background: #ecb4b4;
}
.bg-booked {
    background: #e0ebb1;
}
.bg-reminder,
.bg-reminder-2,
.bg-reminder-3,
.bg-payment {
    background: #bee3e8;
}
.bg-purring,
.bg-inkasso {
    background: #e1e6ff;
}
.bg-reminder-sent,
.bg-inkasso {
    background: #e1e6ff;
}
.bg-penalty,
.bg-penalty-sent {
    background: #e8cbbe;
}
.bg-inactive {
    background: #e8e7e6;
}
.bg-active {
    background: #bee8cd;
}
.bg-partial_refunded,
.bg-refunded,
.bg-partial-refunded {
    background: #e8e7e6;
}
.bg-no-show {
    background: #f1e6be;
}
.bg-reklamasjon {
    background: #f7d7b4;
}

.flash-msg-container {
    position: fixed;
    right: 20px;
    bottom: 100px;
    z-index: 1056;
    max-width: 350px;
}
.flash-msg-container .alert {
    margin-bottom: 0;
    box-shadow: 0px 4px 2px 0px rgba(71, 58, 46, 0.12);
}
.sort-column {
    cursor: pointer;
}
.sort-column.reverse > svg {
    transform: rotate(180deg);
}

/*****************************/
/*** Select2 style
/*****************************/
.sauna-form .select2-container {
    position: absolute;
    width: 100% !important;
    left: 0;
    padding-left: 16px;
    padding-right: 12px;
}
.select2-selection--multiple {
    overflow-x: hidden;
}
.select2-selection--multiple .select2-selection__rendered {
    height: 18px;
    display: inline-flex !important;
    overflow: hidden;
    margin-bottom: 10px;
}
.select2-container--default .select2-selection--multiple {
    background-color: unset;
    border: none;
    padding: 0;
    min-height: unset !important;
}
.select2-container--default.select2-container--focus
    .select2-selection--multiple {
    border: none;
}
.select2-selection--multiple .select2-selection__choice {
    background-color: transparent !important;
    border: none !important;
    color: #343332;
    font-size: 15px;
    padding-left: 0 !important;
    margin: 0 !important;
    padding-right: 3px !important;
}
.select2-selection--multiple .select2-selection__choice:after {
    content: ",";
}
.select2-selection--multiple .select2-selection__choice:last-child:after {
    content: "";
}
.select2-container--default
    .select2-selection--multiple
    .select2-selection__choice__display {
    padding: 0;
    margin: 0;
}
.select2-selection--multiple .select2-selection__choice__remove {
    display: none;
}
.select2-selection--multiple .select2-search {
    display: none;
}
.select2-results__option--selectable {
    margin-bottom: 2px;
}
.select2-container--default .select2-results__option {
    padding-left: 30px;
    background: url(../images/check-icon-normal.svg) 5px center;
    background-repeat: no-repeat;
    font-size: 13px;
}
.select2-container--default .select2-results__option--selected {
    background: url(../images/check-icon-checked.svg) 5px center;
    background-repeat: no-repeat;
}
.select2-container--default
    .select2-results__option--highlighted.select2-results__option--selectable {
    background-color: inherit;
    color: inherit;
}
.select2-container--default .select2-results__option--selected,
.select2-container--default .select2-results__option--selectable:hover {
    background-color: #e8e7e6 !important;
}

/*****************************/
/*** Datepicker
/****************************/
.datepicker td,
.datepicker th {
    color: #343332;
    font-size: 13px;
    padding: 7px;
}
.datepicker table tr td.new,
.datepicker table tr td.old {
    color: #838585;
}
.datepicker table tr td.day.focused,
.datepicker table tr td.day:hover {
    background: #f6f0ea;
}
.datepicker table tr td.active.active,
.datepicker table tr td.active.disabled.active,
.datepicker table tr td.active.disabled:active,
.datepicker table tr td.active.disabled:hover.active,
.datepicker table tr td.active.disabled:hover:active,
.datepicker table tr td.active:active,
.datepicker table tr td.active:hover.active,
.datepicker table tr td.active:hover:active {
    background-color: #1f2933;
    background-image: none;
}
.cc-picker-code-list > li {
    margin-bottom: 5px;
}
/*****************************/
/*** modal
/****************************/
.btn-close {
    --bs-btn-close-opacity: 1;
}
.sauna-modal .modal-body {
    padding: 12px 24px 32px 24px;
}
/*****************************/
/*** Gift card page
/****************************/
.gift-card-section {
    max-width: 893px;
    padding: 20px 24px 40px 24px;
}
.gift-card-list .card-item {
    border-bottom: 1px solid #d6d5d3;
    margin-top: 20px;
}
#card-add-section {
    margin-bottom: 28px;
}
.btn#gift-add-btn {
    background: transparent;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    min-width: 164px;
    height: 44px;
    padding: 8px 8px 8px 12px;
}
.gift-card-list .remove-gift-card {
    display: none;
}
.gift-card-list .recipient-email-box {
    background-color: rgba(31, 41, 51, 0.12);
    padding: 28px;
}
.recipient-self .recipient-email-box {
    display: none;
}
.recipient-self-email-col {
    display: none;
}
.recipient-self .recipient-self-email-col {
    display: block;
}
.gift-card-list .recipient-email-box .form-group-col {
    width: calc(50% - 16px);
    margin-bottom: 0;
}
.gift-card-list .recipient-email-box .form-group {
    background: #f6f0ea;
}

/*****************************/
/*** Timepicker
/****************************/
.timepicker-popover {
    --bs-popover-max-width: 245px;
}
.timepicker-popover .popover-header,
.timepicker-popover .cancel-btn {
    display: none;
}
.timepicker-popover .invisible {
    display: none;
}
.timepicker-popover .submit-btn {
    width: 55px;
    height: 55px;
    background: url(../images/fa-check.svg) -20px -20px no-repeat;
    background-size: 150%;

    border: none;
    padding: 0;
    /* margin: 0 auto !important; */
    margin-left: 15px !important;
}
.timepicker-popover .keyboard-input + div {
    display: block !important;
}
.timepicker-popover .btn-primary:hover,
.timepicker-popover .btn-primary:focus,
.timepicker-popover .btn-primary:active {
    color: inherit !important;
    border: inherit !important;
    background-color: inherit !important;
}
.timepicker-popover .fa-chevron-up {
    display: inline-block;
    width: 30px;
    height: 30px;
    background: url(../images/keyboard_arrow_up.svg) 0 0 no-repeat;
    background-position: center;
}
.timepicker-popover .fa-chevron-down {
    display: inline-block;
    width: 30px;
    height: 30px;
    background: url(../images/keyboard_arrow_down.svg) 0 0 no-repeat;
    background-position: center;
}
.timepicker-popover .btn-link {
    padding-left: 0;
    padding-right: 0;
    display: inline-block;
    margin: 5px 0;
}
.timepicker-popover .btn-link:hover {
    background-color: #bed1e8;
}
.timepicker-popover tbody td {
    padding: 0 10px;
}
.timepicker-content .material-symbols-outlined {
    font-size: 28px;
}

/*****************************/
/*** country code picker
/****************************/
.cc-picker-flag {
    background: url(../images/flags.png);
}
.sauna-form .phone-field-group {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    column-gap: 4px;
    height: 60px;
}
.sauna-form .phone-field-group .form-label {
    width: 100%;
}
.sauna-form .phone-field-group .form-field {
    width: auto;
}
.cc-picker {
    margin-top: 3px;
}
.cc-picker-code {
    padding-left: 20px;
    font-size: 15px;
    color: #858483;
    width: auto;
}
.cc-picker-code-select-enabled::after {
    right: unset;
    left: 23px;
}
.cc-picker-code-select-enabled {
    padding-right: 0;
}
.cc-picker-code-filter {
    margin-top: 9px;
    width: 200px;
    font-size: 14px;
    padding: 5px;
    height: 30px;
    font-family: "Public Sans", sans-serif;
}
.cc-picker-code-filter:focus-visible {
    outline: none !important;
}
.cc-picker-code-list {
    margin-top: 13px;
    width: 200px;
}
.cc-picker-code-list .cc-picker-code {
    width: 45px;
    display: inline-block;
    padding-left: 0;
}
.cc-picker-code-list {
    font-size: 14px;
    font-family: "Public Sans", sans-serif;
}
input[class="cc-picker-code-filter"]::-webkit-input-placeholder,
input[class="cc-picker-code-filter"]:-moz-placeholder,
input[class="cc-picker-code-filter"]::-moz-placeholder,
input[class="cc-picker-code-filter"]:-ms-input-placeholder {
    font-style: normal !important;
}
/*****************************/
/*** country select
/****************************/
.country-select .flag-dropdown {
    top: 2px;
}
.country-select .selected-flag {
    padding-left: 0;
}
.country-select .selected-flag .flag {
    margin: 0;
}
.country-select .selected-flag .arrow {
    position: absolute;
    top: 5px;
    right: 4px;
    border-left: 5px solid transparent;
    border-right: 5px solid transparent;
    border-top: 5px solid #512b2b;
}
.country-select .country-list .country-name {
    font-size: 14px;
    font-family: "Public Sans", sans-serif;
}
.country-select .country-list .country {
    margin-bottom: 5px;
}
.country-select.inside .flag-dropdown:hover .selected-flag {
    background-color: rgba(0, 0, 0, 0.05);
}
#user-booking-table.loading-section {
    overflow: hidden;
}
.loading-section {
    position: relative;
    min-height: 200px;
}
.loading-section:before {
    content: "";
    position: absolute;
    top: 60px;
    left: 0;
    width: 100%;
    height: 60px;
    z-index: 999;
    background: url(../images/loading-circle.svg) no-repeat center 0;
    background-size: 60px;
    -webkit-animation: spin 2s linear infinite;
    animation: spin 2s linear infinite;
}
.loading-section:after {
    content: "Loading";
    position: absolute;
    left: 50%;
    top: 135px;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    font-size: 18px;
    font-weight: 500;
}
.no-content .loading-section:after {
    content: "Lasting";
}
.loading-paginate-data {
    margin-bottom: 100px;
}
.loading-paginate-data:before {
    top: unset !important;
    bottom: -75px;
}
.loading-paginate-data:after {
    top: unset !important;
    bottom: -105px;
}
select.select2-dropdown {
    visibility: hidden;
}
.toast {
    background: #f6f0ea;
    box-shadow: 0px 6px 24px 0px rgba(0, 0, 0, 0.2);
}
.discount-icon {
    color: #70a583;
    font-size: 32px;
}
#remove-discount .icon {
    font-weight: 400;
    cursor: pointer;
    font-size: 28px;
}
#apply-discount.loading-btn {
    position: relative;
    background: #f2f0f0;
}
#apply-discount.loading-btn:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 999;
    background: url(../images/loading-circle.svg) no-repeat center center;
    background-size: 25px;
    -webkit-animation: spin 2s linear infinite;
    animation: spin 2s linear infinite;
}
#apply-discount.loading-btn span {
    visibility: hidden;
}
.payment-page-section {
    padding-bottom: 40px;
}
#booking-address-modal .modal-dialog {
    width: 90%;
    max-width: 670px;
    margin: 0 auto;
}
#booking-address-modal .sauna-form .phone-field-group .phone-field {
    width: 105px;
}
.booking-rules-note a {
    text-decoration: underline;
}
.entry-content ul li,
.entry-content ol li {
    list-style-type: initial;
    padding-bottom: 12px;
}
.datepicker-dropdown {
    z-index: 100 !important;
}
.header-menu-desktop {
    padding-left: 0;
    margin-bottom: 0;
}
.header-menu-desktop a {
    color: #f6f0ea;
    font-size: 18px;
    line-height: 122%;
}
.event-info-section .event-time-info {
    width: 360px;
    margin-right: 30px;
}
.body-bg-merino .header-menu-desktop a {
    color: #362717;
}
.add-participant-btn,
.remove-participant-btn {
    padding: 2px;
    border-radius: 50%;
    border: 1px solid #362717;
    background: none;
}
.add-participant-btn:disabled,
.remove-participant-btn:disabled {
    opacity: 0.4;
}
.participant-count input {
    border: none;
    width: 30px;
    text-align: center;
    font-size: 18px;
    font-weight: 400;
    color: #343332;
    padding: 0;
}
.participant-item .participant-item-price {
    width: 45px;
    text-align: right;
}
.participant-error-msg {
    color: #f26161;
    font-size: 15px;
}

.pagination-info .small {
    font-size: 13px;
}
.pagination-info .fw-semibold {
    font-weight: 700 !important;
}
.pagination {
    --bs-pagination-bg: transparent;
    --bs-pagination-border-width: 1px;
    --bs-pagination-border-color: #1f2933;
    --bs-pagination-hover-bg: transparent;
}
.pagination .page-link {
    border: 1px solid transparent;
    color: #343332;
    border-radius: 4px;
}
.pagination .page-link:focus {
    background-color: transparent;
    box-shadow: none;
}
.pagination .active > .page-link {
    background-color: transparent;
    color: #1f2933;
    border-color: #1f2933;
}
.pagination .next-item,
.pagination .previous-item {
    position: relative;
    flex: 1 auto;
}
.pagination .next-item::after,
.pagination .previous-item::after {
    display: inline-block;
    font-family: "Material Symbols Outlined";
    content: "\e5e1";
    font-size: 13px;
}
.pagination .previous-item::after {
    content: "\e5e0";
}
.pagination .page-item.disabled .page-link,
.pagination .disabled .next-item::after,
.pagination .disabled .previous-item::after {
    color: rgba(54, 39, 23, 0.4);
}
.disabled > .page-link,
.page-link.disabled {
    background-color: transparent;
}
.iti--inline-dropdown {
    display: block !important;
    width: 100% !important;
}
.iti--inline-dropdown .intl-phone-field {
    width: 100%;
}
.pay-method-img {
    max-width: 80px;
}

.participant-list .participant-item {
    border-bottom: 1px solid rgba(54, 39, 23, 0.15);
    padding: 24px 0 20px 0;
}
.participant-list .participant-item .participant-item-col2 {
    width: 110px;
}
.participant-list .participant-item .participant-item-col3 {
    width: 80px;
    text-align: right;
}
.participant-count input {
    background: unset;
}

@-webkit-keyframes spin {
    0% {
        -webkit-transform: rotate(0deg);
    }
    100% {
        -webkit-transform: rotate(360deg);
    }
}

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

/*****************************/
/*** responsive
/****************************/
@media screen and (max-width: 1199px) {
    .sauna-form .phone-field-group .phone-field {
        width: 100px;
    }
}
@media screen and (max-width: 992px) {
    .footer-container {
        padding: 40px 0 40px 0;
    }
    #booking-details-page .booking-customer-details,
    #booking-details-page .booking-sauna-details {
        width: 100%;
    }
    #booking-verification-page .booking-customer-details,
    #booking-verification-page .booking-sauna-details {
        width: 50%;
    }
    .profile-customer-details,
    .profile-update-password {
        width: 100%;
    }
    .booking-confirm-section .booking-conf-sauna-details {
        width: 100%;
        max-width: unset;
    }
    .booking-confirm-section .booking-sauna-details {
        width: 100%;
    }
}
@media screen and (max-width: 768px) {
    .mobile-goto-admin-btn {
        padding: 11px 9px;
    }
    .hidden-mobile {
        display: none !important;
    }
    .hidden-desktop {
        display: block !important;
    }
    /****** Mobile menu **********/
    body.mobile-menu-active {
        position: relative;
        height: 100%;
        overflow: hidden;
    }
    body.mobile-menu-active:before {
        content: "";
        position: absolute;
        left: 0;
        right: 0;
        width: 100%;
        height: 100%;
        z-index: 99;
        background: rgba(0, 0, 0, 0.3);
    }
    .mobile-sidebar-menu {
        position: fixed;
        z-index: 999;
        width: 100%;
        height: 100%;
        background: #fff;
        right: 0;
        top: 0;
        padding: 10px 16px;
        max-width: 290px;
        -webkit-transform: translateX(290px);
        transform: translateX(290px);
        -webkit-transition: all 0.3s ease-in-out;
        transition: all 0.3s ease-in-out;
    }
    body.mobile-menu-active .mobile-sidebar-menu {
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }
    .mobile-menu-list li {
        padding: 14px 12px 14px 16px;
        line-height: 20px;
    }
    .mobile-menu-inner {
        position: relative;
        height: 100%;
    }
    .mobile-menu-bottom {
        position: absolute;
        bottom: 48px;
        left: 0;
        width: 100%;
    }
    .mobile-lng-list li a {
        display: inline-block;
        width: 44px;
        height: 42px;
        line-height: 42px;
        text-align: center;
        border-radius: 4px;
        border: 1px solid #362717;
        font-size: 14px;
        font-weight: 600;
        color: #362717;
    }
    .mobile-lng-list li.active-lng a {
        background: rgba(54, 39, 23, 0.15);
    }

    .site-header header {
        padding-top: 20px;
        padding-bottom: 20px;
    }
    .header-logo img {
        max-width: 65px;
    }
    .header-logo {
        max-width: 66px;
    }
    .sauna-list-banner {
        background: url(../images/sauna-list-bg-mobile.png) no-repeat;
        background-size: cover;
    }
    .page-title {
        font-size: 35px;
        font-weight: 700 !important;
    }
    .header-bottom-banner {
        padding-top: 100px;
    }
    .shop-banner-content {
        padding: 12px 0 35px 0;
    }
    .shop-banner-content-container .back-btn {
        width: 35px;
        height: 35px;
        left: 20px;
        bottom: 5px;
    }
    .shop-banner-content-container .back-btn .back-icon {
        font-size: 30px;
    }
    .sauna-list-banner {
        margin-bottom: 58px;
        position: relative;
        z-index: 20;
    }
    .sauna-filter {
        padding-bottom: 20px;
    }
    .sauna-filter #filter-group-2,
    .sauna-filter #btn-hide-filter {
        display: none;
    }
    #sauna-type-filter {
        max-width: unset;
        position: absolute;
        top: 100%;
        left: -20px;
        width: calc(100% + 40px);
        margin-top: 0;
        border-radius: unset !important;
    }
    #sauna-type-filter .btn {
        border-radius: unset !important;
    }

    .mob-text-15 {
        font-size: 15px !important;
    }
    .mob-flex-gap-12 {
        gap: 12px !important;
    }

    .sauna-filter-form .filter-col {
        width: 100% !important;
    }
    .sauna-form.sauna-filter-form .form-group {
        margin-bottom: 16px;
    }
    .loading-section:before {
        top: 40px;
        height: 40px;
        background-size: 40px;
    }
    .loading-section:after {
        top: 90px;
        font-size: 16px;
    }
    .loading-paginate-data:before {
        bottom: -60px;
    }
    .loading-paginate-data:after {
        bottom: -85px;
    }
    .sauna-item > div {
        flex-direction: column-reverse;
    }
    .sauna-item .sauna-image {
        width: 100%;
    }
    .sauna-item .sauna-info {
        width: 100%;
    }
    .sauna-slot-list .sauna-slot-item {
        width: 95px;
    }
    .mob-pd-b-0 {
        padding-bottom: 0;
    }
    .mob-pd-t-0 {
        padding-top: 0;
    }
    .mob-pd-t-8 {
        padding-top: 8px;
    }
    .mob-pd-16 {
        padding: 16px;
    }
    .mob-pd-t-20 {
        padding-top: 20px;
    }
    .site-footer {
        grid-template-columns: 100%;
    }
    .footer-logo {
        padding-bottom: 20px;
    }
    .mobile-full {
        width: 100%;
    }
    .has-ribbon .footer-container {
        padding-bottom: 60px;
    }
    .container {
        padding-left: 20px;
        padding-right: 20px;
    }
    .container-medium {
        padding-left: 20px;
        padding-right: 20px;
    }

    .sauna-details-banner {
        background: url(../images/sauna-details-mobile.png) no-repeat;
        background-size: cover;
    }
    .event-details-banner {
        background: url(../images/event-details--mobile-bg.png) no-repeat;
        background-size: cover;
    }
    .sauna-details-section {
        flex-direction: column;
    }
    .sauna-details-section .sauna-details-gallery,
    .sauna-details-section .sauna-details-info {
        width: 100%;
    }
    #sauna-gallery .carousel-control-prev,
    #sauna-gallery .carousel-control-next {
        display: none;
    }
    .sauna-details-section {
        gap: 20px;
    }
    .slot-option-details .slot-select-option-item {
        position: relative;
        padding: 20px !important;
    }
    .slot-option-details .slot-duration {
        position: absolute;
        right: 20px;
        top: 20px;
    }
    .sauna-contact-section .sauna-contact-info,
    .sauna-contact-section .sauna-contact-map {
        width: 100%;
    }
    .upcoming-events-container {
        padding-top: 8px;
    }
    .upcoming-events-container .sauna-image {
        display: none;
    }
    .upcoming-events-container .sauna-item .sauna-info {
        width: 100%;
    }
    .sauna-details-container {
        padding-bottom: 0;
    }

    /************** Form ***************/
    .sauna-form .two-col-row {
        flex-direction: column;
        gap: 0;
    }
    .sauna-form .two-col-row > div,
    .sauna-form .three-col-row > div,
    .sauna-form .two-col-row .large-form-group,
    .sauna-form .two-col-row .small-form-group,
    .sauna-form .form-group.single-col-row {
        width: 100%;
    }
    .sauna-form .small-select-group {
        max-width: unset;
    }
    #booking-verification-page .booking-customer-details {
        width: 100%;
        margin-top: 0;
    }
    #booking-verification-page .booking-sauna-details {
        display: none;
    }
    .booking-conf-sauna-details {
        width: 100%;
    }
    .booking-conf-sauna-details .sauna-item-event-time .time-card,
    .sauna-list .sauna-item-event-time .time-card {
        width: 153px;
    }
    .schedule-payable-row .event-schedule-col,
    .schedule-payable-row .event-payment-col {
        width: 100%;
    }
    .mobile-booking-table tbody th {
        font-weight: 600;
        font-size: 14px;
        padding-right: 10px;
        min-width: 144px;
    }
    .mobile-booking-table tbody td {
        font-size: 13px;
    }
    body.body-payment-page {
        padding-bottom: 80px;
    }
    .flash-msg-container {
        bottom: 30px;
        width: 100%;
        max-width: unset;
        padding: 0 20px;
        left: 0;
    }
    .gift-card-section {
        padding: 20px 0 20px 0;
    }
    #send-time-picker .three-col-row {
        flex-wrap: wrap;
    }
    #send-time-picker .three-col-row > div {
        width: calc(50% - 16px);
    }
    #send-time-picker .three-col-row .empty-cell {
        display: none;
    }
    .gift-card-list .recipient-email-box {
        padding: 28px 20px;
    }
    .gift-card-list .recipient-email-box .form-group-col {
        width: 100%;
    }
    .event-info-section .event-time-info {
        width: 100%;
        margin-right: 0;
    }
    .participant-list:not(.participant-list-view) .participant-item {
        flex-wrap: wrap;
    }
    .participant-list:not(.participant-list-view)
        .participant-item
        .participant-item-col1 {
        width: 100%;
    }
    .participant-list:not(.participant-list-view)
        .participant-item
        .participant-item-col2 {
        margin-left: unset !important;
        width: unset;
    }
}
@media screen and (max-width: 576px) {
    /* .site-footer {
        display: block;
    } */
    .auth-container {
        padding: 0;
    }
    .auth-form-container {
        margin-left: 12px;
        margin-right: 12px;
        margin-top: 12px;
        padding: 24px 20px 32px 20px;
    }
    .auth-container .btn-group {
        border-radius: unset;
    }
    .auth-container .btn-group .btn {
        border-radius: unset;
    }

    .date-range-select-col {
        width: 100%;
    }
    .date-range-select-col #event-range-date-field {
        flex: 1;
    }
    .date-range-select-col #event-range-date-field label {
        width: 100%;
    }
    .sauna-contact-map iframe {
        max-height: 477px;
    }
    .footer-site-info .footer-info {
        padding-bottom: 20px;
        width: 100%;
    }
    .footer-site-info .footer-nav-col {
        width: 100%;
    }
    .footer-nav-col ul {
        padding-left: 0;
        display: flex;
        column-gap: 60px;
        row-gap: 19px;
        flex-wrap: wrap;
    }
    .footer-nav-col li {
        padding-bottom: 0;
    }

    .sauna-form .small-select-group {
        max-width: unset;
    }

    .payment-details-image,
    .payment-details-details {
        width: 100%;
    }
    .booking-conf-sauna-details .sauna-item-event-time .time-card {
        width: 100%;
    }
}
@media screen and (max-width: 430px) {
    .mobile-booking-table .action-col {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }
}
@media screen and (max-width: 390px) {
    .sauna-slot-list .sauna-slot-item {
        width: calc(50% - 4px);
    }
    .mobile-booking-table tbody th {
        min-width: unset;
    }
    .slot-list .time-slot {
        width: calc(33.33% - 6px);
    }
    .slot-list .time-slot label,
    .slot-list .time-slot .radio-label-text {
        width: 100%;
    }
}
