/*@font-face {*/
/*	font-family: 'Inter';*/
/*	font-style: normal;*/
/*	font-weight: 300;*/
/*	src: local('Inter Light'), local('Inter-Light'),*/
/*	url('/catalog/view/theme/dmp/fonts/Inter-Thin.woff2') format('woff2');*/
/*	font-display: swap;*/
/*}*/

/*@font-face {*/
/*	font-family: 'Inter';*/
/*	font-style: normal;*/
/*	font-weight: 400;*/
/*	src: local('Inter Regular'), local('Inter-Regular'),*/
/*	url('/catalog/view/theme/dmp/fonts/Inter-Regular.woff2') format('woff2');*/
/*	font-display: swap;*/
/*}*/

/*@font-face {*/
/*	font-family: 'Inter';*/
/*	font-style: normal;*/
/*	font-weight: 500;*/
/*	src: local('Inter Medium'), local('Inter-Medium'),*/
/*	url('/catalog/view/theme/dmp/fonts/Inter-Medium.woff2') format('woff2');*/
/*	font-display: swap;*/
/*}*/

/*@font-face {*/
/*	font-family: 'Inter';*/
/*	font-style: normal;*/
/*	font-weight: 700;*/
/*	src: local('Inter Bold'), local('Inter-Bold'),*/
/*	url('/catalog/view/theme/dmp/fonts/Inter-Bold.woff2') format('woff2');*/
/*	font-display: swap;*/
/*}*/

@font-face {
	font-family: 'Roboto Condensed';
	font-style: normal;
	font-weight: 700;
	src: local('Roboto Condensed Bold'), local('Roboto-Condensed-Bold'),
	url('/catalog/view/theme/dmp/fonts/Roboto-Condensed-Bold.woff2') format('woff2');
	font-display: swap;
}

@font-face {
	font-family: 'Roboto Light';
	font-style: normal;
	font-weight: 300;
	src: local('Roboto Light'), local('Roboto-Light'),
	url('/catalog/view/theme/dmp/fonts/Roboto-Light.woff2') format('woff2');
	font-display: swap;
}

:root {
	--bg-color-primary: #ecedf3;
	--bg-color-secondary: #f4f5fa;
	--bg-color-white:#f9fafc;
	--bg-color-white-natural:#ffffff;
	--bg-color-gray:#f3f5f7;
	--bg-color-gray-dark:#d5d5d5;
	--bg-color-dark:#313131;
	--bg-color-dark-3k:#262626;
	--bg-color-gray-dance-front:#dedede;
	--bg-color-danger-light:#fff2f3;
	--bg-color-green:rgb(54 117 0);
	--bg-color-purple:rgb(163 0 161);
	--bg-color-red:rgb(215 15 54);
	--font-color-primary: #3a3541de;
	--font-color-gray: rgba(58, 53, 65, 0.6);
	--font-color-gray-dark:rgba(58, 53, 65, 0.87);
	--font-color-white:#f9fafc;
	--font-color-white-light:#c5c5c5;
	--color-gray: #73707a;
	--color-gray-light: #e9e9e9;
	--border-color-gray: rgba(58, 53, 65, 0.22);
	--color-main-violet: rgb(55 14 97);

	/* FlyMark colors*/
	--color-main: rgb(68 172 206);
	--color-main-dark: rgb(43 149 183);
	--color-main-light: rgb(164 219 237);
	--color-main-darkest: rgb(33 119 146);
	--bg-color-light:rgba(68, 172, 206, 0.08);
	--bg-color-gradient: linear-gradient(98deg, rgb(43 149 183), rgb(68 172 206) 94%);
	--bg-color-gradient-2: radial-gradient(circle,rgb(15 72 90) 0%, rgb(68 172 206) 0%, rgb(15 72 90) 100%);
	--bg-color-gradient-3: linear-gradient(90deg,rgb(15 72 90) -30%, rgb(68 172 206) 140%);
}

body {
	display: flex;
	flex-direction: column;
	min-height: 100vh;
	font-family: 'Inter', sans-serif;
	font-weight: 400;
	font-size: 1rem;
	color: var(--font-color-primary);
	width: 100%;
	background-color: var(--bg-color-secondary);
}

a {
	color: var(--color-main);
	text-decoration: none;
}
hr {
	border-color: rgba(58, 53, 65, 0.12);
	opacity: 1;
	margin: .25rem 0;
}
h1 {
	font-size: 1.3em;
}
@media (min-width:768px) {
	h1 {
		font-size: 1.5em;
	}
}

.w-5 {
	width: 5% !important
}

.w-10 {
	width: 10% !important
}

.w-20 {
	width: 20% !important
}




/*------- Maintenance -------*/
#common-maintenance {
	z-index: 10001;
	height: 100vh;
	background: var(--bg-color-white);
}

.maintenance-logo {
	display: block;
	margin: .25rem auto;
	height: 3.4rem;
	width: 10rem;
	padding: .6rem 0;
}
.maintenance-box {
	position: fixed;
	left: 0;
	right: 0;
	top: 40%;
	transform: translateY(-40%);
}

.maintenance-icon {
	display: block;
	max-width: 20rem;
	margin: auto;
}

.maintenance-text {
	padding: 1rem;
	text-align: center;
}
.maintenance-text h1 {
	font-weight: 700;
}
@media (min-width:768px) {
	.maintenance-icon {
		max-width: 25rem;
	}
}




/*------- Popup-language -------*/
.wl-popup-language-overlay {
	position: fixed;
	top: 0;
	right: 0;
	z-index: 9999;
	width: 100%;
	height: 100%;
	backdrop-filter: blur(8px);
	background-color: rgba(68, 172, 206, 0.65);
}

.wl-popup-language {
	margin: 0 1rem;
	padding: 2rem;
	max-width: 31rem;
	box-sizing: border-box;
	border-radius: .5rem;
	background: var(--bg-color-white);
	box-shadow: rgba(110, 115, 166, 0.08) 0px 2px 4px 0px, rgba(110, 115, 166, 0.08) 0px 2px 8px 0px;
	z-index: 10000;
	position: fixed;
	left: 0;
	right: 0;
	top: 40%;
	transform: translateY(-40%);
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
}


.wl-popup-language-img {
	width: 10rem;
}

.wl-popup-language p {
	margin-top: 1.5rem;
	margin-bottom: 1.5rem;
	font-size: 1.1em;
}

.wl-popup-language #form-language {
	margin: 6px 0 0;
}

.wl-popup-language .menu-container__navbar-item{
	text-align: center;
	padding: 0;
	list-style: none;
}

.wl-popup-language .language-select {
	width: 9rem;
	box-shadow: rgba(58, 53, 65, 0.42) 0 .25rem .5rem -.25rem;
	background-color: var(--color-main);
	color: var(--font-color-white);
	border-radius: .375rem;
	margin-bottom: 1rem;
	background-position: center !important;
	transition: background 0.3s !important;
}
.wl-popup-language .language-select:hover {
	box-shadow: rgba(58, 53, 65, 0.56) 0px 6px 18px -8px;
	background: var(--color-main-dark) radial-gradient(circle, transparent 1%, var(--color-main-dark) 1%) center/15000% !important;

}
.wl-popup-language .language-select:active {
	background-color: var(--color-main-light)!important ;
	background-size: 100% !important;
	transition: background 0s !important;
}

@media (min-width:540px) {
	.wl-popup-language {
		margin: auto;
	}
}




/*-------Buttons-------*/
.btn {
	position: relative;
	width: 100%;
	overflow: hidden;
	transition: background 400ms;
	padding: .75rem;
	font-size: 0.9375rem;
	line-height: 1.71;
	border: 0;
	box-shadow: rgba(58, 53, 65, 0.42) 0 .25rem .5rem -.25rem;
	font-weight: 500;
	letter-spacing: 0.3px;
	transition: background-color 250ms cubic-bezier(0.4, 0, 0.2, 1) 0ms, box-shadow 250ms cubic-bezier(0.4, 0, 0.2, 1) 0ms, border-color 250ms cubic-bezier(0.4, 0, 0.2, 1) 0ms, color 250ms cubic-bezier(0.4, 0, 0.2, 1) 0ms;

}

.btn:hover {
	box-shadow: rgba(58, 53, 65, 0.56) 0px 6px 18px -8px;
	transition: box-shadow 0.3s !important;
}

.btn:active {
	border-color: inherit !important;
}

.btn:disabled {
	background-color: var(--color-gray);
	opacity: .4;
}

@media (min-width:768px) {
	.btn-large {
		max-width: 18.5rem;
	}
}

.btn-icon {
	display: flex;
	align-items: center;
	justify-content: center;
}
.btn-icon svg {
	margin-right: .4rem;
	fill: var(--bg-color-white);
	stroke: var(--bg-color-white);
}

.btn-small {
	line-height: normal;
	width: fit-content;
	height: fit-content;
	padding: .6rem;
}

.btn-fit {
	width: fit-content;
}

@media (min-width:768px) {
	.btn-fit-md {
		width: fit-content;
	}
}

.btn-primary {
	background-color: var(--color-main);
}

.btn-primary:hover {
	background-color: var(--color-main-dark);
}

.btn-secondary {
	background-color: var(--color-main-light);

}

.btn-light {
	background-color: var(--bg-color-primary);
	box-shadow: rgba(58, 53, 65, 0.1) 0 .25rem .5rem -.25rem;
	color: var(--font-color-gray);
}

.btn-transparent {
	background-color: transparent;
	border: 1px solid var(--color-main);
	color: var(--color-main);
}

.btn-transparent svg {
	fill: var(--color-main);
	stroke: var(--color-main);
	flex-shrink: 0;
}

.btn-transparent:hover {
	color: var(--font-color-white);
}

.btn-transparent:hover svg{
	fill: var(--font-color-white);
	stroke: var(--font-color-white);
}

.btn-transparent:active {
	color: var(--font-color-white) !important;
	border-color: var(--color-main) !important;
}

.btn-transparent:disabled {
	border-color: var(--color-gray);
	background-color: transparent;
}
.btn-transparent:disabled svg {
	fill: var(--color-gray);
}

.btn-transparent-white {
	background-color: transparent;
	border: 1px solid var(--bg-color-white-natural);
	color: var(--font-color-white);
}
.btn-transparent-white svg {
	fill: var(--bg-color-white-natural);
	stroke: var(--bg-color-white-natural);
}
.btn-transparent-white:active {
	color: var(--font-color-white) !important;
	border-color: var(--bg-color-white-natural) !important;
}

.btn-transparent-white:hover {
	border-color: var(--bg-color-white-natural) !important;
}

.btn-transparent-gray {
	background-color: transparent;
	border: 1px solid var(--bg-color-gray-dark);
	color: var(--font-color-gray-dark);
}
.btn-transparent-gray svg {
	fill: var(--font-color-gray);
	stroke: var(--font-color-gray);
}

.btn-transparent-gray:active {
	color: var(--font-color-white) !important;
	border-color: var(--bg-color-white-natural) !important;
}

.btn-transparent-gray:hover {
	border-color: var(--bg-color-white-natural) !important;
}

.btn-google {
	box-shadow: rgba(58, 53, 65, 0.1) 0 .25rem .5rem -.25rem;
}



.btn-google svg {
	margin-right: .5rem;
	margin-top: -.125rem;
	fill: none;
	stroke: none;
}

.btn-google:hover svg {
	stroke-width: .4;
}

.buttons-wrapper {
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.buttons-wrapper button, .buttons-wrapper a {
	max-width: fit-content;
}


@media (max-width:768px) {
	.button-wrapper-center-sm {
		display: flex;
		justify-content: center;
		margin: 0 auto;
	}
}




/*-------Form/Inputs--------*/
input[type=radio] {
	width: 1.35rem;
	height: 1.35rem;
	-webkit-appearance: none;
	outline: 0;
	border-radius: 50%;
	border: .125rem solid;
	border-color: var(--color-gray);
	cursor: pointer;
	background-position: center;
	background-size: 0;
	transition: background 0.2s ease-in-out;
}

input[type=checkbox] {
	width: 1.3rem;
	height: 1.3rem;
	-webkit-appearance: none;
	outline: 0;
	border-radius: .32rem;
	border: .125rem solid;
	border-color: var(--color-gray);
	cursor: pointer;
	background-position: center;
	background-size: 0;
	transition: background 0.2s ease-in-out;
}


input[type=checkbox]:checked {
	background: url(/image/catalog/icon/check.svg) transparent no-repeat;
	background-size: cover;
	background-size: 102%;
	border-color: var(--color-main);
	background-position: center;
}

input[type=radio]:checked {
	background: url(/image/catalog/icon/round.svg) transparent no-repeat;
	background-size: 60%;
	border-color: var(--color-main);
	background-position: center;
}

.form__radio-wrapper {
	display: flex;
	align-items: center;
	margin-left: -.6rem;
}

.form__radio-wrapper-radio {
	display: inline-flex;
	padding: .6rem;
	border-radius: 50%;
}

.form__radio-wrapper input {
	background-size: 0;
	transition: background 0.2s ease-in-out;
}

.form__radio-wrapper label {
	margin-right: 1.5rem;
}

.ripple-input {
	display: inline-block;
	border-radius: 50%;
	overflow: hidden;
	margin-left: -.6rem;
	min-width: 2.9rem;
}
.ripple-input .ripple-light {
	padding: .8rem;
}

.form {
	display: flex;
	flex-flow: row wrap;
	margin: 0;
}

.form__input-wrapper {
	position: relative;
	flex-basis: 100%;
	margin-bottom: 1.3rem;
}

.form__input-wrapper--select {
	display: flex;
}
.form__input-wrapper:has(.floating) .form__input {
	border-color: transparent;
	box-shadow: 0 0 0 2px var(--color-main);
}

.form__input-label {
	position: absolute;
	pointer-events: none;
	transition: color 200ms cubic-bezier(0, 0, 0.2, 1) 0ms, transform 200ms cubic-bezier(0, 0, 0.2, 1) 0ms;
	top: 1rem;
	left: 0.9rem;
	line-height: 1.4375em;
	letter-spacing: 0.15px;;
	margin-bottom: 0;
	color: var(--font-color-gray-dark);
	z-index: 1;

}

.form__input-label.floating  {
	transform: translate(-0.4rem, -1.7rem);
	z-index: 1;
	font-size: .8rem;
	color: var(--color-main);
	background-color: var(--bg-color-white);
	padding: 0 0.3rem;
}

.form__input {
	display: block;
	width: 100%;
	min-height: 3.5rem;
	padding: .9rem;
	border-width: 1px;
	border-style: solid;
	border-color: var(--border-color-gray);
	border-radius: 0.37rem;
	-webkit-appearance: none;
	background:none;
	font-size: 1rem;
	appearance: none;
	outline: none;
	color: var(--font-color-gray-dark)!important;
}

.form__select {
	font-family: inherit;
	font-size: inherit;
	padding-right: 2rem;
	cursor: pointer;
}

.select {
	position: relative;
}
.select::after {
	position: absolute;
	top: 50%;
	right: .7rem;
	transform: translate(-50%, -50%);
	content: "";
	width: 0.8em;
	height: 0.5em;
	background-color: var(--font-color-gray);
	clip-path: polygon(100% 0%, 0 0%, 50% 100%);
}

.box__input-wrapper:has(.floating) .form__input {
	box-shadow: rgba(110, 115, 166, 0.08) 0px 2px 4px 0px, rgba(110, 115, 166, 0.08) 0px 2px 8px 0px;
}

.box__input-wrapper .form__input {
	min-height: auto;
	padding: 1.2rem 1.3rem .2rem .6rem;
	background-color: var(--bg-color-white-natural);
	border: none;
	box-shadow: rgba(110, 115, 166, 0.08) 0px 2px 4px 0px, rgba(110, 115, 166, 0.08) 0px 2px 8px 0px;
	font-size: .87rem;
}

.box__input-wrapper .form__input option {
	font-size: 1rem;
}

.box__input-wrapper .form__input-label {
	padding: 0;
	top: .63rem;
	left: .6rem;

}

.box__input-wrapper .form__input-label.floating {
	background-color: transparent;
	transform: translate(0, -.5rem);
}

.box__input-wrapper .select::after {
	width: auto;
	height: auto;
	background-color: transparent;
	clip-path: none;
	border: solid var(--font-color-gray);
	border-width: 0 .09rem .09rem 0;
	display: inline-block;
	padding: .18rem;
	transform: rotate(45deg) translate(-50%, -50%);
	-webkit-transform: rotate(45deg) translate(-50%, -50%);;
}




/*------- Switcher -------*/
.btn-mode-switch{
	display: inline-block;
}

.btn-mode-switch-inner{
	margin: 0;
	width: 10.5rem;
	height: 2.2rem;
	background-color: var(--bg-color-light);
	border-radius: 1.5rem;
	overflow: hidden;
	position: relative;
	transition: all 0.3s ease;
	display: block;
	font-size: .9em;
	line-height: normal;
}

.btn-mode-switch-inner:before{
	content: attr(data-on);
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	right: 0;
	padding: .6rem 1rem;
	font-weight: normal;
	line-height: normal;
	cursor: pointer;
}

.btn-mode-switch-inner:after{
	content: attr(data-off);
	width: 5.4rem;
	background: #fff;
	border-radius: 1.5rem;
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	text-align: center;
	transition: all 0.2s ease;
	box-shadow: 4px 0px 6px 0 rgba(0, 0, 0, 0.1);
	padding: .6rem 1rem;
	font-weight: normal;
	line-height: normal;
	cursor: pointer;
	color: var(--color-main);
}

.btn-mode-switch input[type="checkbox"]{
	display: none;
}

.btn-mode-switch input[type="checkbox"]:checked + .btn-mode-switch-inner{

}

.btn-mode-switch input[type="checkbox"]:checked + .btn-mode-switch-inner:after{
	content: attr(data-on);
	left: 5.3rem;
	box-shadow: -4px 0px 6px 0 rgba(0, 0, 0, 0.1);
	color: var(--color-main);
}

.btn-mode-switch input[type="checkbox"]:checked + .btn-mode-switch-inner:before{
	content: attr(data-off);
	right: auto;
	left: 0;
}

.active-archive__list-item.archive {
	display: none;
}

.active-archive__list.archive-preview .active-archive__list-item {
	display: none;
}

.active-archive__list.archive-preview .active-archive__list-item.archive {
	display: flex;
}

@media (min-width:768px) {
	.active-archive__list.archive-preview .active-archive__list-item.archive {
		display: flex;
	}
}




/*------ Ripple effect-----*/
.ripple {
	background-position: center !important;
	transition: background 0.3s !important;
}
.ripple:hover {
	background: var(--color-main-dark) radial-gradient(circle, transparent 1%, var(--color-main-dark) 1%) center/15000% !important;
}
.ripple:active {
	background-color: var(--color-main-light)!important ;
	background-size: 100% !important;
	transition: background 0s !important;
}
.ripple-light {
	background-position: center !important;
	transition: background 0.3s !important;
}
.ripple-light:hover {
	background: rgba(68, 172, 206, 0.04) radial-gradient(circle, transparent 1%, rgba(68, 172, 206, 0.04) 1%) center/15000% !important;
}
.ripple-light:active {
	background-color: rgba(68, 172, 206, 0.3) !important;
	background-size: 100% !important;
	transition: background 0s !important;
}

.ripple-gray {
	background-position: center !important;
	transition: background 0.3s !important;
}
.ripple-gray:hover {
	background: var(--bg-color-gray) radial-gradient(circle, transparent 1%, var(--bg-color-gray) 1%) center/15000% !important;
}
.ripple-gray:active {
	background-color: var(--bg-color-gray-dark) !important;
	background-size: 100% !important;
	transition: background 0s !important;
}




/* -------Them --------*/
.theme-icon {
	fill: var(--color-gray)!important;
}
.theme-icon-stroke{
	stroke: var(--color-gray);
}
.overflow-hidden-sm {
	overflow: hidden;
}

.theme-white-icon {
	fill: var(--font-color-white);
}
.theme-white-icon-stroke{
	stroke: var(--font-color-white);
}
.theme-main-icon {
	fill: var(--color-main)!important;
}
.theme-main-icon-stroke{
	stroke: var(--color-main);
}


.btn-close:focus {
	box-shadow: none !important;
}

@media (min-width:768px) {
	.overflow-hidden-sm {
		overflow: auto;
	}
}





/*-------Page elements-------*/
.page-title {
	font-size: 1.3em;
}

.text-danger {
	float: left;
	font-size: .8em;
}
.disabled {
	background-color: var(--color-gray) !important;
	fill: var(--color-gray)!important;
	opacity: .4!important;
}
svg.disabled {
	background-color: inherit !important;
}

form .text-danger {
	margin-top: -0.6rem;
	margin-left: 0.5rem;
	background-color: #f4f5fa;
	line-height: normal;
	padding: 0 0.3rem;
}

.modal-header {
	border-bottom: 0;
}

.alert {
	padding: 0.5rem;
	font-size: .8em;
	border: none;
	display: flex;
	width: 100%;
	justify-content: center;
	line-height: normal;
}

.currency {
	font-size: .8em !important;
}



/* ------ Content -------*/
.content-desktop {
	display: none;
}

@media (min-width:1200px) {
	.content-mobile {
		display: none;
	}
	.content-desktop {
		display: block;
	}
}

.container-top-padding {
	padding-top: 3.9rem;
}

.container {
	overflow-x: hidden;
	padding-top: 3.9rem;
}



.content-box {
	background: var(--bg-color-white);
	padding: 1.8rem;
}
@media (min-width:768px) {
	.content-box {
		margin: auto;
		max-width: 40rem;
		border-radius: 1rem;
		box-shadow: rgba(58, 53, 65, 0.30) 0px 2px 10px
	}
}

.content {
	padding: 1.5rem;
	width: 100%;
	min-height: calc(100vh - 3.9rem);
	background-color: var(--bg-color-white);
}

@media (min-width:768px) {
	.content {
		background-color: inherit;
	}
	.content__container {
		padding: 1.5rem;
		background-color: var(--bg-color-white);
		box-shadow: rgba(58, 53, 65, 0.1) 0px 2px 10px;
		border-radius: .5rem;
	}
}




/*-------Header-------*/
header {
	backdrop-filter: saturate(120%) blur(8px);
}

.header-container {
	display: flex;
	padding: .25rem .8rem;
	align-items: center;
	justify-content: space-between;
	background: color-mix(in srgb, var(--bg-color-white) 90%, transparent);
	box-shadow: 0 10px 12px -12px rgba(0, 0, 0, .15);
}




/*------Logo------*/
#logo {
	max-width: 10rem;

	display: flex;
	align-items: center;
}
#logo img {
	height: 3.4rem;
	padding: .6rem 0;
}




/* ----------Menu----------*/
#menu {
	width: 3.15rem;
}

#menu .menu-button {
	width: 40px;
	height: 40px;
	padding: 10px;
	top: 12px;
	transition: all 2.5s;
	padding-top: .8rem;
	border-radius: .75rem;
	background: var(--bg-color-white-natural);
	box-shadow: 0 8px 24px rgba(0, 0, 0, .06);

}
#menu.collapsed .menu-button {
	transition: all 0.2s;
}

.menu-button {
	position: absolute;
	top: 10px;
	width: 50px;
	height: 40px;
	padding: 10px;
	z-index: 1000;
	cursor:pointer;
}

.menu-button .icon-bar {
	display: block;
	width: 20px;
	height: .14rem;
	-webkit-transition: all 0.2s;
	transition: all 0.2s;
	border-radius: 3px;
	background-color: var(--color-gray);
}

.menu-button .icon-bar+.icon-bar {
	margin-top: 4px;
}

#menu.x .menu-button .icon-bar:nth-of-type(1) {
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
	-webkit-transform-origin: 10% 200%;
	-ms-transform-origin: 10% 200%;
	transform-origin: 10% 200%;
}

#menu.x .menu-button .icon-bar:nth-of-type(2) {
	opacity: 0;
	filter: alpha(opacity=0);
}

#menu.x .menu-button .icon-bar:nth-of-type(3) {
	-webkit-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	transform: rotate(-45deg);
	-webkit-transform-origin: 15% -80%;
	-ms-transform-origin: 15% -80%;
	transform-origin: 15% -80%;
}

#menu.x.collapsed .menu-button .icon-bar:nth-of-type(1) {
	-webkit-transform: rotate(0);
	-ms-transform: rotate(0);
	transform: rotate(0);
}

#menu.x.collapsed .menu-button .icon-bar:nth-of-type(2) {
	opacity: 1;
	filter: alpha(opacity=100);
}

#menu.x.collapsed .menu-button .icon-bar:nth-of-type(3) {
	-webkit-transform: rotate(0);
	-ms-transform: rotate(0);
	transform: rotate(0);
}

.menu-container {
	display: flex;
	flex-direction: column;
	position: absolute;
	left: -105vw;
	top: 0;
	height: 100dvh;
	width: 80vw;
	padding: 5rem .5rem 0;
	transition: left .4s ease;
	overflow-x: hidden;
	overflow-y: auto;
	z-index: 999;
	background-color: var(--bg-color-white);
	box-shadow: rgba(58, 53, 65, 0.1) 0px .12rem .62rem;
}

.menu-container.show {
	left: 0;
}

.menu-container__title {
	display: flex;
	align-items: center;
	margin-bottom: .3rem;
	margin-right: 1rem;
	padding: .5rem .7rem;
	border-radius: .62rem;
}

.menu-container__title-container {
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: 100%;
	flex-shrink: 10;
	color: inherit;
}
.menu-container__title-container svg {
	width: .9rem;
	height: .9rem;
	padding: .1rem;
	transition: transform 0.25s ease-in-out 0s;

}

.menu-container__title-container svg.rotated {
	transform: rotate(90deg);
}

.menu-container__events,
.menu-container__contacts,
.menu-container__info {
	margin-bottom: .6rem;
}


.menu-container__footer {
	margin-top: auto;
}



.menu-container__navbar {
	display: block;

	overflow: hidden;;
	margin-bottom: 2rem;
	transition: all 0.25s ease-in-out 0s;
	transition-duration: 300ms;
}
.menu-container__navbar.open {
	height: auto;
	min-height: 0;


}


.menu-container__navbar-item {
	padding: 0 0 0 2.5rem;
}


.menu-container__navbar-item a {
	display: inline-block;
	padding: .5rem .75rem;
	border-radius: .6rem;
	line-height: normal;
}
.menu-container__navbar-item a:hover {
	background-color: var(--bg-color-gray);
}


.menu-container__icon {
	margin-right: .7rem;
}

.menu-container__img-category {
	max-width: 3rem;
	padding-right: .8rem;
}


.menu-container__events .menu-container__navbar-item:last-child a{
	background-color: var(--bg-color-gray);
	color: inherit;
	margin-top: 0.5rem;
	display: flex;
	align-items: center;
	width: fit-content;
}

.menu-container__events .menu-container__navbar-item:last-child a::after {
	content: '';
	width: 0.8rem;
	height: 0.8rem;
	background-image: url(/image/catalog/icon/view-more.svg);
	background-size: cover;
	display: block;
	margin-left: 0.5rem;

}


/*------- Home -------*/
#common-home {
	padding-top: 3.9rem;
}

.content-mobile,
.content-desktop {
	width: 100%;
	overflow: hidden;
}

#common-home .slideshow {
	position: relative;
}

#common-home .swiper-wrapper {
	position: inherit !important;
}


/*------- Event calendar -------*/

/*#event__calendar-section {*/
/*	padding-top: 3.9rem;*/
/*}*/

#event__calendar-section #product-list {
	min-height: 20rem;
}

.event__calendar-container {
	padding-top: 2.5rem;
	padding-bottom: 2.5rem;
}

.event__calendar-title {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: .5rem;
	margin-bottom: 1.5rem;

}

.event__calendar-title h2 {
	margin-bottom: 0;
	font-size: 1.3rem;
	text-align: center;
	color: var(--color-gray);
}

.calendar__event-thumb {
	display: block;
	position: relative;
	box-shadow: rgba(58, 53, 65, 0.1) 0px 2px 10px;
	border-radius: 0.5rem;
	overflow: hidden;
	margin-bottom: 1rem;
	background-color: black;
}

.calendar__event-bg {
	position: absolute;
	top: -5.3rem;
	right: -5.3rem;
	height: 8rem;
	width: 8rem;
	background-color: var(--color-main);
	border-radius: 50%;
	-webkit-transition: all .5s ease;
	-o-transition: all .5s ease;
	transition: all .5s ease;
}

.calendar__event-thumb-planned .calendar__event-bg {
	background-color: var(--bg-color-red);
}

.calendar__event-thumb-view-only .calendar__event-bg {
	background-color: var(--bg-color-purple);
}

.calendar__event-thumb-closed .calendar__event-bg {
	background-color: var(--color-gray);
}

.calendar__event-thumb:hover .calendar__event-bg {
	-webkit-transform: scale(20);
	-ms-transform: scale(20);
	transform: scale(20);
}

.calendar__event-thumb:hover .calendar__event-caption-row svg{
	stroke: var(--font-color-white-light);
}

.calendar__event-img {
	position: absolute;
	padding: 0;
	object-fit: cover;
	object-position: center;
	overflow: hidden;
	height: 10rem;
	height: -webkit-fill-available;
	height: -moz-available;
	max-height: 10rem;
	width: 100%;
	opacity: .4;
	filter: blur(5px);
}

.calendar__event-caption {
	position: relative;
	padding: .8rem .5rem;
	line-height: normal;
	color: var(--font-color-white);
}

.calendar__event-caption-top {
	margin-bottom: 1rem;
}
.calendar__event-caption-middle {
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
	gap: 1rem;
}
.caption-middle__box {
	max-width: 55%;
}

.calendar__event-caption-row {
	display: flex;
	align-items: center;
}

.calendar__event-title {
	padding-left: 1.25rem;
	padding-right: 1.5rem;
	font-size: 1.3em;
	font-weight: 700;
}
.calendar__event-organization {
	font-size: .8em;
	color: var(--font-color-white-light);
}


.calendar__event-caption-row svg {
	margin-right: .3rem;
	stroke: var(--color-main);
	flex-shrink: 0;
	-webkit-transition: all .5s ease;
	-o-transition: all .5s ease;
	transition: all .5s ease;
}

.calendar__event-date,
.calendar__event-city {
	font-size: 1.1em;
	font-weight: 700;
}

.calendar__event-city svg {
	margin-left: -.1rem;
}

.calendar__event-status {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	font-size: .8rem;
	color: var(--font-color-white-light);
}

.calendar__event-status-md {
	display: none;
}

.calendar__event-status svg {
	position: absolute;
	top: .3rem;
	right: .3rem;
	stroke: var(--bg-color-white-natural);
	flex-shrink: 0;
}

.calendar__event-thumb-planned .calendar__event-status svg {
	top: .5rem;
	right: .35rem;
	fill: var(--bg-color-white-natural);
}

@media (min-width: 1024px) {
	.calendar__event-caption {
		display: flex;
		flex-direction: row-reverse;
		justify-content: flex-end;
		align-items: center;
		gap: 1rem;
	}

	.caption-middle__box {
		max-width: 100%;
	}

	.calendar__event-status-md {
		display: flex;
		position: initial;
	}

	.calendar__event-status-sm {
		display: none;
	}

	.calendar__event-status-open,
	.calendar__event-status-close {
		position: absolute;
		right: .5rem;
		bottom: .5rem;
	}

	.calendar__event-caption-top {
		margin-bottom: 0;
	}

	.calendar__event-title {
		padding-left: 0;
	}

	.calendar__event-organization svg {
		display: none;
	}

	.calendar__event-caption-middle {
		width: 12rem;
	}
	.calendar__event-date {
		margin-bottom: .3rem;
	}
	.calendar__event-date,
	.calendar__event-city {
		width: auto;
	}

}

@media (min-width: 1200px) {
	.event__calendar-container {
		max-width: 960px;
	}
}




/*--------Account--------*/
.account__container {

}

.account__container-icon {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	height: 2.5rem;
	width: 2.5rem;
	/*border-radius: 50%;*/
	/*background-color: rgb(235, 235, 235);*/
	cursor: pointer;
	border-radius: .75rem;
	background: var(--bg-color-white-natural);
	box-shadow: 0 8px 24px rgba(0,0,0,.06);
}

.account__container-icon:hover {
	background-color: rgb(235, 235, 235);
}

.account__container-icon svg {
	width: 1.6rem;
	height: 1.6rem;
	margin-left: .1rem;
}

.account__icon-dot {
	display: flex;
	flex-flow: row wrap;
	place-content: center;
	align-items: center;
	position: absolute;
	min-width: 1.25rem;
	line-height: 1;
	padding: 0 .37rem;
	height: 1.25rem;
	border-radius: 50%;
	transition: transform 225ms cubic-bezier(0.4, 0, 0.2, 1) 0ms;
	bottom: 21%;
	right: 21%;
	transform: scale(1) translate(50%, 50%);
	transform-origin: 100% 100%;
}

.account__icon-dot span {
	width: .5rem;
	height: .5rem;
	border-radius: 50%;
	background-color: rgb(86, 202, 0);
	box-shadow: rgb(255, 255, 255) 0px 0px 0px 2px;
}

.account__container-login {
	position: absolute;
	top: 3.9rem;
	right: 0;
	bottom: 0;
	height: 100vh;
	width: 100%;
	padding: 3rem 2.5rem;
	-ms-transform: translateY(100%);
	-webkit-transform: translateY(100%);
	transform: translateY(100%);
	transition: -ms-transform .3s ease;
	transition: -webkit-transform .3s ease;
	transition: transform .3s ease;
	-webkit-transition: -webkit-transform .3s ease;
	background-color: var(--bg-color-white);
}



@media (min-width:768px) {
	.menu-container,
	.account__container-login {
		max-width: 21rem;
		overflow-y: auto;
	}
	.account__container-login {
		max-width: 21rem;
		height: calc(100vh - 3.9rem);
	}
	#menu .menu-button {
		max-width: 20rem;
	}
}

@media (min-width:1600px) {
	.menu-container,
	.account__container-login {
		max-width: 23rem;
	}

	#menu .menu-button {
		max-width: 22rem;
	}
}




.account__container-login.show {
	transform: translateY(0px);
	z-index: 999;
}

.account__container-login-title {
	text-align: center;
	letter-spacing: 0.15px;
	color: rgba(58, 53, 65, 0.87);
	font-weight: 500;
	font-size: 1.3em;
	margin-bottom: 1.5rem;
}

.account__container-login-text {
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: 100%;
	margin-bottom: 1.5rem;
	font-size: 0.8em;
	color: var(--font-color-gray);
}

.account__container-login-border {
	width: 40%;
	border-top: 1px solid var(--border-color-gray);

}

.show_hide_password {
	position: absolute;
	top: 50%;
	right: 0;
	transform: translate(-5%, -50%);
	padding: 0.8rem;
	border-radius: 50%;
	background-color: transparent;
	cursor: pointer;
}

.show_hide_password:hover svg{
	fill: var(--bg-color-white);
}
.show_hide_password svg {
	width: 1.5rem;
	height: 1.5rem;
	fill: var(--font-color-gray);
	flex-shrink: 0;
	transition: fill 200ms cubic-bezier(0.4, 0, 0.2, 1) 0ms;
}

#input-password {
	padding-right: 3.5rem;
}


.account__container-login .btn,
#account-login .btn{
	margin-bottom: 1rem;
}

.account__container-forgotten {
	font-size: 0.875rem;
	margin-bottom: 0.925rem;
	float: right;
}

.account__container-login-register {
	text-align: center;
}
.account__container-login-register p {
	margin-bottom: 0;
}

.account__container-login-old {
	margin-top: 3rem;
	text-align: center;
	font-size: .8em;
	padding: .5rem;
	background-color: #ff707d1f;
	bottom: 0;
	border-radius: .5rem;
}

.account__container-logged {
	height: max-content;
	-ms-transform: translateY(-130%);
	-webkit-transform: translateY(-130%);
	transform: translateY(-130%);
	min-width: 15rem;
	padding: .5rem 0;
	z-index: -100;
	box-shadow: rgba(58, 53, 65, 0.1) 0px 0.12rem 0.62rem;
	border-bottom-right-radius: .4rem;
	border-bottom-left-radius: .4rem;
}

@media (max-width:767px) {
	.account__container-logged {
		width: 15rem;
	}
}

.account__container-logged.show {
	z-index: -100;
}


.account__container-logged-header {
	display: flex;
	align-items: center;
	padding: .5rem 1rem .7rem;
}
.account__container-logged-header .account__container-icon {
	margin-right: 1rem;
}

.account__container-logged-user {
	font-weight: 700;
	line-height: normal;
}

.account__container-logged-user-id {
	line-height: normal;
	font-weight: 400;
	font-size: .7em;
}

.account__container-logged-item {
	display: flex;
	align-items: center;
	padding: 0.5rem 1rem;
	color: inherit;
}

.account__container-logged-item:hover {
	background-color: var(--bg-color-gray);
}

.account__container-logged-icon {
	margin-right: .4rem;
}




/*------- Account Content -------*/
#account-member-add .alert {
	margin-top: .3rem;
}

#account-edit form .text-danger {
	background-color: var(--bg-color-white);
}
.account__content {
	position: relative;
	display: flex;
	max-width: 100%;
	padding-left: 0;
	padding-right: 0;
}
.container__column-left {
	position: fixed;
	height: 100%;
	background-color: var(--bg-color-white);
	box-shadow: rgba(58, 53, 65, 0.1) 0px 0.12rem 0.62rem;
	transition: min-width 0.15s ease-out;
	min-width: 4.2rem;
	z-index: 10;
}
.container__column-left.show {
	min-width: 14rem;
}

.account__container-list {
	list-style: none;
	padding: 1rem .5rem;
}

.account__container-list-item {
	display: flex;
	align-items: center;
	padding: 0.5rem .7rem;
	margin-bottom: .3rem;
	border-radius: .6rem;
}

.account__container-list-item.active {
	background: var(--bg-color-gradient);
	color: var(--bg-color-white);
}

.account__container-list-item.active svg{
	fill: var(--bg-color-white);
}

.account__container-list-text {
	display: none;
	overflow: hidden;
	margin-left: .4rem;
	line-height: normal;
	transition: width 0.45s ease-in-out;
}

.container__column-left.show .account__container-list-text {
	display: inherit;
}

.account__container-list-item:hover {
	background-color: var(--bg-color-gray);
}

.account__container-list-item svg {
	width: 1.7rem;
	height: 1.7rem;
	min-width: 1.7rem;
	fill: var(--color-gray);
}
.account__content-content.minus-margin {
	margin-right: -9.8rem;
}

.container__column-left-open {
	position: absolute;
	bottom: 4rem;
	padding: 0.5rem;
}
.container__column-left-open-icon {
	display: inline-block;
	padding: 0.5rem 0.7rem;
	border-radius: 0.6rem;
	min-width: 1.7rem;
}

.container__column-left-open-icon:hover {
	background-color: var(--bg-color-gray);
	cursor: pointer;
}
.container__column-left-open-icon svg {
	transition: all .3s ease;
	transform: scaleX(1);
}

.container__column-left.show .container__column-left-open-icon svg{
	transition: all .3s ease;
	transform: scaleX(-1);
}

.account__container-content {
	padding-left: calc(1.5rem + 4.2rem);
	transition: all 0.15s ease-out;
}

span.customer_id {
	font-size: 1.2rem;
	flex-shrink: 0;
}

#account-member-add #telephone {
	width: 100%;
}

@media (min-width:1024px) {
	.container__column-left {
		min-width: 15rem;
	}

	.account__container-list-text {
		display: inherit;
	}

	.account__container-list {
		padding: 1rem 1.5rem .5rem .5rem;
	}
	.container__column-left.show {
		min-width: 4.2rem;
	}
	.container__column-left.show .account__container-list {
		padding-right: .5rem;
	}

	.container__column-left.show .account__container-list-text {
		display: none;
	}
	.container__column-left-open-icon svg {
		transform: scaleX(-1);
	}

	.container__column-left.show .container__column-left-open-icon svg{
		transform: scaleX(1);
	}

	.account__container-content.min {
		padding-left: 16.5rem;
	}
}





/* -------- Slider -------- */
.swiper-slide img {
	width: 100%;
	height: calc(100dvh - 3.9rem);
	object-fit: cover;
	object-position: top;
}

.slideshow__container{
	position: absolute;
	display: flex;
	/*top:83%;*/
	bottom: 2rem;
	max-width: 300px;
	left: 50%;
	transform: translate(-50%, 0);

}
.slideshow__button {
	width: 13rem;
}
.slideshow__button-container {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: 100%;
	padding: 0.75rem;
	overflow: hidden;
}

.slideshow__button-arrow {
	position: absolute;
	right: 1rem;
	top: 50%;
	transform: translateY(-50%) matrix(-1, 0, 0, 1, 0, 0);
	fill: var(--font-color-white);
	transition: all .3s;

}

.slideshow__button-arrow.hide {
	right: -100%;

}

.swiper-scrollbar {
	background: var(--color-main-light)!important;
	left: 0 !important;
	bottom: 0!important;
	width: 100% !important;
	border-radius: 0!important;
}

.swiper-scrollbar-drag {
	background: var(--color-main)!important;
	border-radius: 0!important;

}

@media (min-width:1200px) {
	.slideshow__container{
		bottom: 2rem;
	}

	.swiper-slide img {
		height: calc(100vh - 3.9rem);
	}
}


/*------- Category -------*/
#category .btn-mode-switch-inner {
	width: 11.5rem;
}
#category .btn-mode-switch-inner:before {
	right: 0.4rem;
}

#category .btn-mode-switch input[type="checkbox"]:checked + .btn-mode-switch-inner:before {
	content: attr(data-off);
	right: 0.3rem;
	left: 0;
}

#category .btn-mode-switch-inner:after {
	width: 5.9rem;
}
#category .btn-mode-switch input[type="checkbox"]:checked + .btn-mode-switch-inner:after {
	content: attr(data-on);
	left: 5.6rem;
	box-shadow: -4px 0px 6px 0 rgba(0, 0, 0, 0.1);
	color: var(--color-main);
}


.category-container {
	padding: 1.5rem 1rem;
}

.category__header {
	position: relative;
	height: 5rem;
	margin-top: 3.9rem;
	background-color: var(--color-main-darkest);
	overflow: hidden;
}

.category__header-img {
	padding: 0;
	object-fit: cover;
	object-position: center;
	overflow: hidden;
	max-height: 5rem;
	width: 100%;
	opacity: .4;
	filter: blur(10px) saturate(3);
}

.category__title {
	position: absolute;
	width: 100%;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	margin-bottom: 0;
	text-align: center;
	line-height: normal;
	font-weight: 700;
	color: var(--bg-color-white-natural);
	font-size: 1.6em;
}

.category__title span {
	display: block;
	text-align: center;
	font-size: .5em;
	font-weight: 400;
}

.product__category-switch {
	margin: 1rem 0 0 -0.3rem;
}

.category__product {
	margin-bottom: 3rem;
	color: black;
}

.category__product-thumb {
	position: relative;
	width: 100%;
	background-color: var(--bg-color-white);
	box-shadow: rgba(58, 53, 65, 0.1) 0px 2px 10px;
	border-radius: 0.5rem;
	overflow: hidden;
}

.category__product-caption {
	display: flex;
	flex-direction: column;
	padding: .5rem 1rem 1rem;
	background: var(--bg-color-white-natural);
}

.category__product-title {
	display: block;
	margin-bottom: .5rem;
	font-weight: 700;
	font-size: 1.1em;
}

.category__product-caption-row {
	display: flex;
	align-items: start;
	margin-bottom: .5rem;
}
.category__product-caption-row svg {
	margin-right: .3rem;
	stroke: var(--font-color-gray);
}

.category__product-organization {
	position: absolute;
	top: 0.5em;
	padding: 0 0.3rem;
	align-items: center;
	left: 0.4rem;
	border-radius: 0.3rem;
	font-size: .8em;
	background: rgba(255, 255, 255, 0.8);
}

.category__product-organization svg {
	margin-right: .2rem;
	stroke: var(--color-main);
}

.category__product-date {
	font-weight: 700;
}

.category__product-city {
	font-weight: 700;
}
.category__product-city svg {
	margin-left: -.1rem;
}

.category__product-place {
	font-weight: normal;
	line-height: normal;
	font-size: .9em;
	color: var(--font-color-gray);
}

.category__product-description {
	line-height: normal;
	font-size: .8em;
	margin-top: -.5rem;
	margin-bottom: .8rem;
}

.category__product-bottom {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	margin-top: 1rem;
}

.category__product-status {
	width: auto;
	margin-bottom: 0;
	padding: 0.67rem;
}

.category__product-button svg {
	margin-right: 0;
	margin-left: .4rem;
}

@media (min-width:768px) {
	.category__product-thumb {
		display: flex;
		max-height: 14.5rem;
	}
	.category__product-image {
		width: 50%;
	}

	.category__product-caption {
		width: 50%;
		flex-grow: 1;
	}
	.category__product-image img {
		height: 100%;
		width: 30rem;
		object-fit: cover;
	}
}


@media (min-width:1024px) {

	.category__header {
		height: 7rem;
	}

	.category__header-img {
		max-height: 7rem;
	}
	.category__title {
		font-size: 2.5em;
	}


	.category__product-caption {
		padding: 1.5rem;
	}

	.category__product-bottom {
		margin-top: auto;
	}

}

@media (min-width:1200px) {
	.category-container {
		max-width: 960px;
	}
	.category__product-image {
		width: 45%;
	}

}




/*------- Filter -------*/
.filter-container {
	padding: 1rem 0 2.5rem;
}

.filter__box-bottom {
	display: flex;
	gap: .5rem;
}

#reset-filter {
	width: auto;
	margin-bottom: 1.3rem;
	padding: .5rem .74rem;
	flex-shrink: 0;
}

#reset-filter svg {
	fill: none;
	margin: 0;
	stroke: var(--color-gray);
}

.filter-container .btn-mode-switch-inner {
	width: 11.5rem;
}

.filter-container .btn-mode-switch-inner:before {
	right: 0.4rem;

}

.filter-container .btn-mode-switch input[type="checkbox"]:checked + .btn-mode-switch-inner:before {
	content: attr(data-off);
	right: 0.3rem;
	left: 0;
}

.filter-container .btn-mode-switch-inner:after {
	width: 6.3rem;
}
.filter-container .btn-mode-switch input[type="checkbox"]:checked + .btn-mode-switch-inner:after {
	content: attr(data-on);
	left: 5.6rem;
	box-shadow: -4px 0px 6px 0 rgba(0, 0, 0, 0.1);
	color: var(--color-main);
	width: 5.9rem;
}

@media (min-width:768px) {
	.filter__box {
		display: flex;
		gap: .5rem;
	}

	.filter__box-top {
		display: flex;
		width: 50%;
		gap: .5rem;
	}
	.filter__box-top .filter-group {
		width: 50%;

	}
	.filter__box-bottom {
		width: 50%;
	}
}



/*------- Product Page -------*/
#product {
	position: relative;
	margin-top: 3.9rem;

	background-color: var(--color-main-darkest);
}

.bg-overlay {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center;
	opacity: .3;
	filter: blur(10px) saturate(3);
}

.product-container {
	position: relative;
	min-height: 100vh;
	padding-top: 1rem;
	padding-bottom: 1rem;
	overflow: inherit;
}

.product-box {
	padding: 1rem;
	border-radius: 1rem;
	box-shadow: rgba(58, 53, 65, 0.30) 0px 2px 10px;
	background-color: var(--bg-color-white);
	transition: all .3s ease;
	width: 100%;
}

.product__box-container-top {
	position: relative;
	margin: -1rem -1rem 0 -1rem;
}

.product__box-container-top-item {
	padding: 1rem;
}

.product__logo {
}

.product__logo img {
	margin-top: -.1rem;
	border-top-left-radius: 1rem;
	border-top-right-radius: 1rem;
	overflow: hidden;
}

.product__title {
	margin-bottom: 1rem;
	font-weight: 700;
	font-size: 1.4em;
	text-transform: uppercase;
	line-height: normal;
}

.product__meta {
	line-height: normal;
	font-size: .8em;
	margin-top: -1rem;
	margin-bottom: 1rem;
}

.product__organization {
	display: flex;
	align-items: center;
	margin-bottom: 1rem;
}
.product__organization svg {
	width: 1.3rem;
	height: 1.3rem;
	margin-right: 0.3rem;
	stroke: var(--font-color-gray);
	flex-shrink: 0;
}

.product__organization a{
	line-height: normal;
}

.product__date {
	display: flex;
	align-items: center;
	margin-bottom: 1rem;
	font-size: 1.1em;
	font-weight: 700;
	line-height: normal;
	text-transform: uppercase;
}
.product__date svg {
	width: 1.3rem;
	height: 1.3rem;
	margin-right: 0.3rem;
	stroke: var(--font-color-gray);
	flex-shrink: 0;
}
.product__city {
	display: flex;
	align-items: start;
	margin-bottom: 1rem;
	font-size: 1.1em;
	font-weight: 700;
	line-height: normal;
	text-transform: uppercase;
}

.product__city svg {
	width: 1.5rem;
	height: 1.5rem;
	margin-top: -.1rem;
	margin-left: -.1rem;
	margin-right: 0.3rem;
	stroke: var(--font-color-gray);
	flex-shrink: 0;
}

.product__address {
	text-transform: none;
	font-weight: normal;
	font-size: .8em;
	color: var(--font-color-gray);;
}

.product__price {
	display: flex;
	align-items: center;
	margin-bottom: 1rem;
	font-size: 1.1em;
	font-weight: 700;
	line-height: normal;
	text-transform: uppercase;
}
.product__price svg {
	width: 1.3rem;
	height: 1.3rem;
	margin-right: 0.5rem;
	stroke: var(--font-color-gray);
	fill: var(--font-color-gray);
	flex-shrink: 0;
}
.product__price .currency {
	font-weight: normal;
	text-transform: none;
	font-size: .7em !important;
}

.product__scroll {
	display: flex;
	position: sticky;
	top: 3.8rem;
	flex-wrap: wrap;
	gap: .4rem;
	margin-left: -1rem;
	margin-right: -1rem;
	padding: .8rem;
	background-color: var(--bg-color-white);
	z-index: 100;
}

.product__tabs-item {
	font-size: .85em;
	padding: 0.1rem 0.3rem;
	border: 1px solid var(--color-main);
	border-radius: 0.3rem;
}

.product__tabs-item-ticket {
	color: var(--font-color-white);
}

.product__block {
	margin: 0 0 5rem;
	padding-top: 4rem;
}

.product__block-title {
	width: fit-content;
	margin-left: -1rem;
	margin-bottom: 2rem;
}

.product__block-title-event {
	font-family: "Roboto Condensed";
	font-size: .8em;
	text-transform: uppercase;
	font-weight: 700;
	padding-left: .5rem;
	max-width: 7rem;
	line-height: normal;
}
.product__block-title-name {
	width: fit-content;
	padding: .3rem .5rem;
	background-color: var(--color-main);
	border-top-right-radius: .3rem;
	border-bottom-right-radius: .3rem;
	color: var(--font-color-white);
	line-height: normal;
}

.product__description {
	word-break: break-word;
}

.product__description img {
	max-width: 100% !important;
}

.product__description p,
.product__description span {
	line-height: 1.5em;
}

.product__description ul {
	padding-left: 1rem;
}

.product__description li {
	margin-bottom: .3rem;
}

.product__description li::marker {
	color: var(--color-main);
}

.product__registrations-count {
	display: flex;
	font-size: .9em;
	margin-bottom: 1.5rem;
	justify-content: space-between;
	border-bottom: 1px solid var(--color-main);
	padding-bottom: .5rem;
}



.product__registrations-count-number {
	background-color: var(--color-gray-light);
	line-height: normal;
	padding: .1rem .3rem;
	border-radius: .3rem;
}

.product__registrations-type {
	margin-bottom: 2rem;
}

.product__registrations-category {
	display: flex;
	justify-content: space-between;
	align-items: center;
	line-height: normal;
	font-size: .8em;
	padding: .6rem .0rem;
	border-bottom: .1px solid var(--bg-color-gray-dark);
	gap: .5rem;
}
.product__registrations-category:last-child {
	border-bottom: none;
}

.product__registrations-category-count {
	flex-shrink: 0;
	width: 1.2rem;
	height: 1.2rem;
	text-align: center;
	background-color: var(--color-gray-light);
	border-radius: 50%;
	font-size: .85em;
	display: flex;
	align-items: center;
	justify-content: center;
}

.product__type-item {
	margin-bottom: 2rem;
}

.product__type {
	margin-bottom: .5rem;
	font-weight: 700;
}


@media (min-width:1024px) {
	.product__registrations-category {
		font-size: 1em;
	}

	.product__registrations-count {
		font-size: 1em;
	}
}

.product__styles {
	display: flex;
	flex-wrap: wrap;
	gap: .8rem;
}

.product__styles-item {
	width: fit-content;
	padding: .1rem .4rem;
	border: .1px solid var(--color-gray);
	border-radius: .3rem;
}

.product__judge {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	margin-bottom: 8rem;
}

.product__judge-item {
	position: relative;
	text-align: center;
	margin-bottom: 2rem;
}

.product__judge-item:nth-child(even) {
	top: 6rem;
}

.product__judge-item:has(.product__judge-description):nth-child(even) {
	top: 7rem;
}

.product__judge-image {
	position: relative;
}

.product__judge-image img {
	max-width: 100%;
	border-radius: 50%;
}

.product__judge-link {
	position: absolute;
	top: .8rem;
	left: 0.5rem;
	display: flex;
	width: fit-content;
	border-radius: 50%;
	padding: .3rem;
	background-color: var(--color-main);
}

.product__judge-item:nth-child(even) .product__judge-link{
	right: .5rem;
	left: inherit;
}

.product__judge-link svg {
	width: 1.2rem;
	height: 1.2rem;
	fill: var(--font-color-white);
}

.product__judge-name {
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
	bottom: 0.7rem;
	width: max-content;
	margin: 0 auto;
	font-size: .9em;
	padding: 0.2rem 0.5rem;
	border-radius: 0.3rem;
	background-color: var(--color-main);
	color: var(--font-color-white);
	line-height: normal;
}

.product__judge-description {
	padding: 0 .5rem;
	line-height: normal;
	margin-top: .3rem;
	font-size: .9em;
	color: var(--font-color-gray);
}

.product__program-text {
	line-height: normal;
}

.product__program-item {
	font-size: .9em;
}

.product__program-item svg {
	flex-shrink: 0;
}

.product__registration {
	display: flex;
	align-items: start;
	margin-bottom: 2rem;
}

.product__registration svg{
	width: 1.5rem;
	height: 1.5rem;
	margin-right: 0.4rem;
	stroke: var(--font-color-gray);
	margin-top: 0.2rem;
}

.product__registration .product__block-registration-planned {
	width: 1.2rem;
	height: 1.4rem;
	stroke: none;
	fill: var(--font-color-gray);
}

.product__status-container {
	display: flex;
	align-items: center;
}

.product__status {
	width: fit-content;
	margin-bottom: 0;
	margin-right: .5rem;
}

.product__status-date {
	line-height: normal;
	font-size: .94em;
	flex-shrink: 0;
}

.product__status-date span {
	font-size: .8em;
}

.product__status-time {
	display: inline-block;
	font-size: .9em;
	color: var(--color-gray);
}

.product__ticket-price b {
	font-size: 1.2em;
}

.product__discount {
	margin: .5rem 0;
	font-size: .9em;
	color: var(--font-color-gray);
}

#button-ticket, .button-ticket {
	margin-top: 2rem;
}

#button-register {
	margin-bottom: 2rem;
}

#button-register:disabled,
#button-register-bottom:disabled {
	display: none;
}

#button-register svg{
	stroke: none;
}

#button-register-bottom {
	margin-bottom: 2rem;
}

#button-register-bottom svg{
	stroke: none;
}

.buttons-results-box {
    display: flex;
    gap: .5rem;
    margin-top: 1.5rem;
    margin-bottom: 1.5rem;
}

.buttons-program-box {
	margin-top: 2rem;
}

.button-program {
	margin-bottom: 1rem;
	justify-content: flex-start;
}

.button-program__name {
	margin-left: .4rem;
	line-height: normal;
	text-align: left;
}

.product__contacts {
	display: flex;
	flex-wrap: wrap;
	gap: 1rem;
}

.product__contacts-item svg {
	width: 1.3rem;
	height: 1.3rem;
}

.btn-telegram svg{
	fill: none;
}

.btn-organizator svg {
	fill: none;
}

.product__images {
	padding-bottom: 3rem !important;
}

.product__images-container {
	position: relative;
}

.product__images .swiper-slide img{
	object-fit: cover;
	height: 19rem;
	transition: height .2s;
	border-radius: 1rem;
}

.mfp-content figure {
	margin: 0;
	background-color: transparent;
	border-radius: 1rem;
	overflow: hidden;
}

img.mfp-img {
	border-radius: 1rem;
	padding: 0 !important;
	margin: 0 !important;
}

button.mfp-close {
	right: .3rem !important;
	top: .3rem !important;
	background-color: var(--color-main) !important;
	width: 2rem !important;
	height: 2rem !important;
	border-radius: 50%;
	line-height: normal!important;
	opacity: 1 !important;
	padding: 0 !important;
	text-align: center !important;
}

.mfp-counter {
	display: none;
}

.mfp-arrow-right:before, .mfp-arrow-right .mfp-b {
	border: none!important;
}

.mfp-arrow-left:before, .mfp-arrow-left .mfp-b {
	border: none !important;
}

.product__images-container .swiper-button-next,
.product__images-container .swiper-button-prev {
	bottom: -0rem;
	top: inherit;
}

.product__images-container .swiper-button-next:after,
.product__images-container .swiper-button-prev:after {
	color: #44abce;
	font-size: 1.4em;
	font-weight: 700;
}

.product__images-container .swiper-button-next {
	right: 0;
}

.product__images-container .swiper-button-prev {
	left: 0;
}

.product__ticket {
    margin-bottom: 6rem;
}

#ticketModal .modal-dialog {
	max-width: 300px;
	margin: auto;
}

#ticketModal .modal-content {
	margin-top: -20%;
}

#ticketModal .modal-header {
	justify-content: flex-start;
}

#ticketModal .modal-body {
	padding: 1rem 2rem 2rem 2rem;
}

.ticket_modal-title {
	margin-bottom: 0;
	font-size: .9em;
}

.ticket_modal-icon {
	width: 1.5rem;
	margin-right: .3rem;
	cursor: pointer;
	outline: none!important;
}


@media (min-width:768px) {
	.product__scroll {
		display: flex;
	}
}


@media (min-width:1024px) {
	.product-container {
		padding-top: 3.9rem;
		padding-bottom: 3.9rem;
	}
	.product-box {
	}

	.product__box-container-top {
		display: flex;
		margin-top: 1rem;
	}

	.product__logo img {
		border-radius: 0;
		border-top-right-radius: 1rem;
		border-bottom-right-radius: 1rem;
	}

	.product__box-container-top-item {
		width: 50%;
		padding-top: 0;
		padding-left: 3rem;
	}

	#button-register,
	#button-program,
	.button-program,
    .button-results {
		width: fit-content;
		padding-left: 1.5rem;
		padding-right: 1.5rem;
		margin-left: 1.8rem;
		margin-bottom: 0;
	}

	#button-register-bottom {
		margin-top: 3rem;
		width: fit-content;
		padding-left: 1.5rem;
		padding-right: 1.5rem;
	}

	.buttons-program-box {
		display: flex;
		align-items: center;
		flex-wrap: wrap;
		gap: 1rem;
	}

	.product__logo {
		width: 50%;
	}

	.product__scroll {
		padding: 1rem 2rem;
		gap: 1rem;
		margin-top: 1rem;
	}

	.product__block {
		padding-top: 2rem;
		margin-bottom: 2rem;
	}

	.product__block-title {
		padding-top: 3rem;
	}

	.product__tabs-item {
		padding: 0.3rem 0.8rem;
		margin-bottom: 0;
	}
	.product__description {
		padding: 2rem;
	}

	.product__category-container {
		padding: 2rem;
	}

	.product__type {
		margin-bottom: 1rem;
	}

	.product__judge {
		grid-template-columns: repeat(4, 1fr);
		gap: 1rem;
		padding: 2rem 3rem;
	}

	.product__judge-item {
		margin-bottom: 1rem;
	}

	.product__program {
		padding: 2rem;
	}

	.product__program-item {
		width: fit-content;
	}

	.product__ticket {
        padding: 2rem 2rem 0 2rem;
	}

	#button-ticket, .button-ticket,
	.button-only-ticket {
		width: fit-content;
		padding-left: 2rem;
		padding-right: 2rem;
	}

	.product__contacts {
		padding: 2rem;
	}

	.btn-telegram:hover svg,
	.btn-organizator:hover svg {
		fill: none;
	}

	.product__images {
		padding: 2rem 0 !important;
		margin-left: 2rem !important;
		margin-right: 2rem !important;
	}

	.product__images-container .swiper-button-next,
	.product__images-container .swiper-button-prev {
		bottom: inherit;
		top: 50%;
	}
}

@media (min-width:1400px) {

	.product__box-container-top-item {
		padding: 1.2rem 2rem;
	}
}




/*------- 3K Template -------*/
.kkk-template .product-box {
	background-color: var(--bg-color-dark-3k);
	color: var(--bg-color-white);
}

.kkk-template .product__address {
	color: var(--color-gray);
}

.kkk-template .product__organization svg,
.kkk-template .product__date svg,
.kkk-template .product__city svg,
.kkk-template .product__registration svg{
	stroke: var(--color-gray);
}
.kkk-template .product__block-registration-planned {
	stroke: none;
	fill: var(--color-gray);
}

.kkk-template .product__scroll {
	background-color: var(--bg-color-dark-3k);
}

.kkk-template .product__block-title-name {
	background-color: #e0b752;
	color: #000000;
	font-family: "Roboto Condensed";
	width: auto;
}

.kkk-template  .product__discount {
	color: var(--color-gray);
}

.kkk-template .product__block-title-event {
	margin-left: .7rem;
	height: 2.5rem;
	width: 3rem;
	background-image: url(/image/catalog/other/3k-logo.svg);
	background-repeat: no-repeat;
	margin-bottom: -.3rem;
}

.kkk-template .product__title img {
	width: 2.4rem;
}

.kkk-template .prize-container {
	width: fit-content;
	margin: 2rem 0;
	padding: .5rem 1rem;
	background-color: #e0b752;
	color: #000;
	font-weight: 700;
	border-radius: .37rem;
	font-family: "Roboto Condensed";
}

.kkk-template .prize-title {
	text-transform: uppercase;
}

.kkk-template .prize-sum {
	font-size: 3em;
	line-height:3rem;
}

.kkk-template .product__meta {
	color: var(--color-gray);
}

@media (min-width: 1024px) {
	.kkk-template .product__judge {
		grid-template-columns: repeat(5, 1fr);
		gap: 1rem;
		padding: 2rem 3rem;
	}
}




/*------- Dance Front Template -------*/
.dance-front-template .product-box {
	background-color: var(--bg-color-gray-dance-front);
}

.dance-front-template .product__scroll {
	background-color: var(--bg-color-gray-dance-front);
}

.dance-front-template .btn-transparent {
	color: var(--font-color-gray-dark);
	border-color: var(--font-color-gray-dark);

}

.dance-front-template .btn-transparent:hover {
	border-color: var(--color-main);
	color: var(--font-color-white);
}

.dance-front-template .btn-transparent svg {
	fill: var(--font-color-gray-dark);
	stroke: var(--font-color-gray-dark);
}

.dance-front-template .btn-transparent:hover svg {
	fill: var(--bg-color-white);
	stroke: var(--bg-color-white);
}

.dance-front-template .btn-transparent.btn-organizator svg,
.dance-front-template .btn-transparent.btn-telegram svg {
	fill: none;
}

.dance-front-template .product__block-title-name {
	background-color: #e91307;
	width: auto;
}

.dance-front-template .product__block-title-event {
	margin-left: .7rem;
	height: 3rem;
	width: 4rem;
	background-image: url(/image/catalog/other/dance-front-black.svg);
	background-repeat: no-repeat;
	margin-bottom: -.3rem;
}

@media (min-width: 1024px) {
	.dance-front-template .product__block-title-event {
		height: 3.5rem;
		width: 5rem;
	}
}

/*------- UDF Grand Final Template -------*/
.udf-grand-final-template .product-box {
	background-color: #304766;
	color: var(--font-color-white);
}

.udf-grand-final-template .product__scroll {
	background-color: #304766;
}

.udf-grand-final-template .product__title {
	/*color: transparent;*/
	/*background-image: linear-gradient(to right, #462523 0%, #cb9b51 22%, #f6e27a 45%, #f6f2c0 50%, #f6e27a 55%, #cb9b51 78%, #462523 100%);*/
	/*-webkit-background-clip: text;*/
	/*background-clip: text;*/


	/*color: #462523;*/
	/*background-image: linear-gradient(45deg, #462523 0% , #CB9B51 15%, #F6E27A 40%, #F6F2C0 50%, #F6E27A 60%, #CB9B51 85%, #462523 100%);*/
	/*background-clip: text;*/
	/*-webkit-background-clip: text;*/
	/*-webkit-text-fill-color: transparent;*/
	/*display: inline-block;*/


	/*color: #F6F2C0;*/
	/*background-image: linear-gradient(to right, #F6F2C0 10%, #F6E27A 30%, #CB9B51 80%, #462523 105%);*/
	/*background-clip: text;*/
	/*-webkit-background-clip: text;*/
	/*-webkit-text-fill-color: transparent;*/
	/*display: inline-block;*/


}

.udf-grand-final-template .product__organization a {
	color: var(--font-color-white);
}

.udf-grand-final-template .product__organization svg,
.udf-grand-final-template .product__date svg,
.udf-grand-final-template .product__city svg,
.udf-grand-final-template .product__registration svg{
	stroke: #c4944e;
}
.udf-grand-final-template .product__registration .product__block-registration-planned {
	stroke: none;
	fill: #c4944e;
}


.udf-grand-final-template .product__address,
.udf-grand-final-template .product__status-time {
	color: #7c7c7c;
}

.udf-grand-final-template .product__status.alert-success {
	background-color: #44acce;
}

.udf-grand-final-template .btn-primary {
	background-color: #daa520;
	color: #543c00;
}

.udf-grand-final-template .btn-primary svg {
	fill: #543c00;
    stroke: #543c00;
}

.udf-grand-final-template .btn-transparent {
	border: 1px solid #daa520;
	color: #daa520;
}

.udf-grand-final-template .btn-transparent svg {
	fill: #daa520;
}

.udf-grand-final-template .product__tabs-item {
	border-color: #daa520;
	color: #daa520;
}
.udf-grand-final-template .product__tabs-item-ticket {
	color: #543c00;
}
.udf-grand-final-template .product__block-title-name {
	background-color: #daa520;
	color: #304766;
}

.udf-grand-final-template .product__styles-item {
	border-color: var(--font-color-white);
}

.udf-grand-final-template .udf__description-item {
	display: flex;
	align-items: center;
	margin-bottom: 1.5rem;
	line-height: normal;
}

.udf-grand-final-template .udf__description-item img {
	width: 40px;
	height: 40px;
	margin-right: 1rem;
	flex-shrink: 0;
}

.udf-grand-final-template .udf__description-item span {
	color: #d9bc75;
	line-height: normal;
}

.udf-grand-final-template .product__discount{
	color: var(--font-color-white-light);
}




	/*------- Dance Boom Template -------*/
.dance-boom-template .product-box {
	background-color: #262626;
	color: #ffffff;
}

.dance-boom-template .product__scroll {
	background-color: #262626;
}

.dance-boom-template .product__address {
	color: var(--color-gray);
}

.dance-boom-template .product__organization svg,
.dance-boom-template .product__date svg,
.dance-boom-template .product__city svg,
.dance-boom-template .product__registration svg {
	stroke: var(--color-gray);
}

.dance-boom-template .product__block-registration-planned {
	stroke: none;
	fill: var(--color-gray);
}

.dance-boom-template .product__discount {
	color: var(--color-gray);
}

.dance-boom-template .product__block-title-name {
	background-color: #ff5d2c;
	width: auto;
}

.dance-boom-template .product__type {
	color: var(--color-gray);
}

.dance-boom-template .product__block-title-event {
	margin-left: .7rem;
	height: 3rem;
	width: 5rem;
	background-image: url(/image/catalog/dance_boom/dance_boom.svg);
	background-repeat: no-repeat;
	margin-bottom: 0;
}




/*------- Dance Storm Template -------*/
.dance-storm-template .product-box {
	background-color: #010101;
	color: #ffffff;
}

.dance-storm-template .product__address {
	color: var(--color-gray);
}

.dance-storm-template .product__organization svg,
.dance-storm-template .product__date svg,
.dance-storm-template .product__city svg,
.dance-storm-template .product__registration svg {
	stroke: var(--color-gray);
}

.dance-storm-template .product__block-registration-planned {
	stroke: none;
	fill: var(--color-gray);
}

.dance-storm-template .product__discount {
	color: var(--color-gray);
}

.dance-storm-template .product__scroll {
	background-color: #010101;
}

.dance-storm-template .product__description li::marker {
	color: #fcd300;
}

.dance-storm-template .product__type {
	color: var(--color-gray);
}


.dance-storm-template .product__block-title-event {
	margin-left: .7rem;
	width: 4.5rem;
	height: 4.5rem;
	background-image: url(/image/catalog/dance_storm/dance-storm.svg);
	background-repeat: no-repeat;
	margin-bottom: 0;
}

.dance-storm-template .product__block-title-name {
	background-color: #fcd300;
	color: black;
	width: auto;
}




/*------- Stepup Template -------*/
.stepup-template .product-box {
	background-color: #13052e;
	color: #fff;
}

.stepup-template .product__address {
	color: rgb(108 108 108);
}

.stepup-template .product__organization svg,
.stepup-template .product__date svg,
.stepup-template .product__city svg,
.stepup-template .product__registration svg {
	stroke: var(--color-gray);
}

.stepup-template .product__block-registration-planned {
	stroke: none;
	fill: var(--color-gray);
}

.stepup-template .product__scroll {
	background-color: #13052e;
}

.stepup-template .product__tabs-item {
	color: #fff;
}

@media (min-width: 1024px) {
	.stepup-template .product__tabs-item {
		box-shadow:
				0 0 .1rem #fff,
				0 0 .05rem #fff,
				0 0 .1rem #44abce,
				0 0 .2rem #44abce,
				0 0 .3rem #44abce,
				inset 0 0 .4rem #44abce;
	}
}

.stepup-template .product__block-title-name {
	border-radius: .3rem;
}

.stepup-template .product__block-title-name {
	background-color: transparent;
	box-shadow: 0 0 .2rem #fff,
	0 0 .2rem #fff,
	0 0 1rem #5271ff,
	0 0 0.8rem #5271ff,
	0 0 1rem #5271ff,
	inset 0 0 1.5rem #5271ff;
}

.stepup-template .product__block-title-event {
	color: #ca0b23;
	text-shadow:
			0 0 .1rem #fff,
			0 0 .15rem #fff,
			0 0 .2rem #fff,
			0 0 .31rem #ca0b23,
			0 0 .43rem #ca0b23,
			0 0 .56rem #ca0b23,
			0 0 .67rem #ca0b23,
			0 0 .5rem #ca0b23;
	margin-bottom: -.3rem;
	font-size: 1em;
	line-height: 1.2rem;
}


.stepup-template  .product__styles-item {
	box-shadow: 0 0 .1rem #fff,
	0 0 .05rem #fff,
	0 0 .1rem #44abce,
	0 0 .2rem #44abce,
	0 0 .3rem #44abce,
	inset 0 0 .4rem #44abce;
}

.stepup-template  .product__discount {
	color: var(--font-color-white);
}

.stepup-template #button-ticket, .stepup-template .button-ticket {
	font-weight: 400;
	box-shadow: 0 0 .1rem #fff,
	0 0 .05rem #fff,
	0 0 .1rem #44abce,
	0 0 .2rem #44abce,
	0 0 .3rem #44abce,
	inset 0 0 .4rem #44abce;
	color: #fff;
}


.stepup-template .product__program-item {
	font-weight: 400;
	box-shadow:
			0 0 .1rem #fff,
			0 0 .05rem #fff,
			0 0 .1rem #44abce,
			0 0 .2rem #44abce,
			0 0 .3rem #44abce,
			inset 0 0 .4rem #44abce;
	color: #fff;
}

.stepup-template .product__contacts .btn-transparent {
	font-weight: 400;
	box-shadow: 0 0 .1rem #fff,
	0 0 .05rem #fff,
	0 0 .1rem #44abce,
	0 0 .2rem #44abce,
	0 0 .3rem #44abce,
	inset 0 0 .4rem #44abce;
	color: #fff;
}





/*------- Master Class Template -------*/



.master-class-template .product__block {
	margin-bottom: 0;
}

.master-class-template .product__judge {
	margin-bottom: 0;
}

.master-class-template #product__block-contacts {
	margin-bottom: 2rem;
}


/*------- Tickets-only -------*/
.only-ticket__buttons button {
    margin-bottom: 1rem;
}

/*------- Program -------*/
#program {
	min-height: 100vh;
	background: var(--bg-color-white-natural);
	font-size: .9em;
}

#program .container {
	padding-bottom: 35rem;
}

.program-product__title-container {
	margin-bottom:  .5rem;
	margin-left: -1rem;
	margin-right: -2rem;
	padding: .5rem 1.3rem;
}

#error-not-found.program .program-product__title-container {
	margin: 0;
}

.program .content-box {
	margin-left: 1rem;
	margin-right: 1rem;
}

@media (min-width:768px) {
	.program .content-box {
		margin: auto;
	}
}


@media (min-width:1200px) {
	.program-product__title-container {
		margin-top: .5rem;
		margin-left: 0;
		margin-right: 0;
		padding: .5rem 1.3rem;
		border-radius: .3rem;
	}
}

.program-product__tabs {
	display: flex;
	width: 100%;
	overflow: auto;
	margin-right: -1.75rem;
	margin-bottom: 1rem;
	padding-bottom: .5rem;
}

.program-name {
	width: auto;
	box-shadow: none;
	margin-left: .3rem;
	flex-shrink: 0;
	padding: .4rem .5rem .3rem .5rem;
	font-size: .9em;
	color: var(--color-main);
	border-radius: .3rem;
	border: .1rem solid var(--color-main);
}

.program-name__active {
	margin-left: 0;
	color: var(--font-color-white);
	background: var(--color-main);
	line-height: 1.71;
}

.program-name-button:hover {
	box-shadow: none;
}

.program-search {
	left: 0;
	margin-bottom: 2rem;
}

.program-search.stick {
	position: fixed;
	top: 3.9rem;
	width: 100%;
	z-index: 1000;
	background-color: var(--color-main);
}

.program-search.stick #collapse_all svg {
	fill: var(--font-color-white);
}
.program-search.stick #collapse_all {
	border-color: var(--bg-color-white);
}

.program-search-container {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: .5rem 0 !important;
	overflow: visible;
	margin-bottom: 0;
	gap: 3rem;
}

.program-search.stick .program-search-container {
	padding-left: calc(1.5rem * .5) !important;
	padding-right: calc(1.5rem * .5) !important;
}

#input-register-id {
	width: auto;
	padding: .4rem .5rem;
	border-radius: .3rem;
	border: none;
	outline: none !important;
	border: 2px solid var(--color-main) ;

}

#input-register-id::placeholder {
	font-size: .9em;
}

.program-search-ul {
	font-size: 1em !important;
	border: 2px solid var(--color-main) !important;
	z-index: 1001 !important;
	border-radius: .3rem;
	border-top: none !important;
}

.program-search-ul .ui-state-active {
	margin: 0 !important;
	border: none !important;
	background: none !important;
	background-color: var(--color-main)!important;
	color: var(--font-color-white) !important;
}

.program-container.hide {
	transform: translateX(-230%);
	transition: all .3s ease;
}

#collapse_all {
	padding: .4rem;
}

#collapse_all svg {
	width: 1.5rem;
	height: 1.5rem;
	stroke: none;
	flex-shrink: 0;
	transition: fill 200ms cubic-bezier(0.4, 0, 0.2, 1) 0ms;
}

.program-product__title {
	font-weight: 700;
}

.program-product__date {
	color: var(--font-color-gray);
}

.program__row {
	margin-bottom: .5rem;
}

.program__row.ended {
	opacity: .2;
}

.program__row-button.collapsed + .program__row-info {
	display: none;
}

.program__row-button {
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: 100%;
	padding: .8rem .3rem .8rem .8rem;
	background-color: var(--bg-color-primary);
	border-radius: .3rem;
	border: none;
	font-size: .9em;
	text-align: left;
	transition: border-radius .2s ease-in-out;
}

.program__row:not(:has(.program_category)) .program__row-button {
	background-color: rgb(43 149 183 / 16%);
}


.program__row-button-container {
	display: flex;
	gap: .5rem;
}

.program__row-button-container-box {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	flex-shrink: 0;
	background-color: var(--bg-color-white-natural);
	border-radius: .2rem;
	overflow: hidden;
}

.program__element-container {
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.program__row-button-arrow {
	margin-left: .5rem;
	display: none;
	transition: transform .2s ease-in-out;
	flex-shrink: 0;
}

.program__row-button.collapsed .program__row-button-arrow {
	transform: rotate(-90deg);
}

.program__row:has(.program__info-container) .program__row-button-arrow {
	display: block;
}

.program__row-button.collapsed {
	border-bottom-right-radius: .3rem !important;
	border-bottom-left-radius: .3rem !important;
}

.program__element-number {
	flex-shrink: 0;
	text-align: center;
	font-size: .9em;
	padding-top: .2rem;
	color: #000 !important;
}

.program__element-name {
	font-weight: 700;
	line-height: normal;
	padding-top: .2rem;
	margin-bottom: .3rem;
	white-space: pre-wrap;
	color: black !important;
}

.program__element-name-round {
	color: var(--color-main);
}

.program__element-time {
	width: fit-content;
	line-height: normal;
	background-color: var(--color-main-dark);
	padding: .2rem .3rem;
	color: var(--font-color-white);
	font-size: .95em;
}

.program__element-duration {
	font-size: .8em;
	color: var(--font-color-gray);
}

.program__register-count {
	font-size: .8em;
	width: fit-content;
	background-color: var(--bg-color-light);
	padding: .1rem .3rem;
	margin-left: -1rem;
	border-bottom-right-radius: .2rem;
	margin-bottom: .5rem;
}

.program__row:has(.program__info-container) .program__row-button {
	border-bottom-right-radius: 0;
	border-bottom-left-radius: 0;
}

.program__info-container {
	background-color: var(--bg-color-white);
	padding: 0 1rem 1rem;
	font-size: .9em;
	border-bottom-left-radius: .3rem;
	border-bottom-right-radius: .3rem;
}

.program__registration {
	padding-top: 1rem;
	margin-bottom: 1rem;
}

.program__registration:last-child {
	margin-bottom: 0
}

.program__registration-container-top {
	display: flex;
	margin-bottom: .5rem;
}

.program__registration-number {
	width: fit-content;
	height: fit-content;
	background-color: var(--color-main);
	color: var(--font-color-white);
	border-radius: .3rem;
	padding: .1rem .3rem;
	line-height: normal;
	flex-shrink: 0;
}

.program__registration-performance  {
	margin-left: .5rem;
}

.program__registration-performance span:first-child {
	font-weight: 700;
}

.program__registration-team i {
	display: none;
}

.program__registration-performance:has(.program__registration-performance-name) .program__registration-team i {
	display: inline-block;
}

.program__registration-coach {
	font-size: .9em;
	margin-bottom: .5rem;
}

.program__registration-coach span {
	font-size: .9em;
	background-color: var(--bg-color-light);
	padding: .2rem .3rem;
	border-radius: .3rem;
}

.program__registration-members {
	display: flex;
	flex-wrap: wrap;
	margin-bottom: .5rem;
	align-items: center;
	font-size: .9em;
}

.program__registration-member-item {
	flex-shrink: 0;
	margin-right: .5rem;
}

.program__registration-member-item:last-child span {
	display: none;
}

.program__registration-coach-item {
	flex-shrink: 0;
	margin-right: .5rem;
}

.program__registration-coach-item:last-child span {
	display: none;
}

.program__registration-members .program__registration-members-text {
	font-size: .9em;
	background-color: var(--bg-color-light);
	padding: .2rem .3rem;
	border-radius: .3rem;
	margin-right: .3rem;
	height: max-content;
	line-height: normal;
}

.program__registration-members-print {
	display: none;
	margin-left: .5rem;
	align-items: center;
}

.program__registration-members-print .program__registration-members-text {
	font-size: .9em;
	background-color: var(--bg-color-light);
	padding: .2rem .3rem;
	border-radius: .3rem;
	margin-right: .3rem;
}

.program__registration-school {
	display: inline-block;
	font-size: .9em;
	background-color: var(--bg-color-light);
	padding: .2rem .3rem;
	border-radius: .3rem;
	line-height: normal;
	font-weight: 700;
}

.program__registration-school-city {
	font-weight: normal;
}

.program__registration-duration-container {
	display: flex;align-items: center;
}

.program__registration-duration {
	width: max-content;
	font-size: .9em;
	background-color: var(--bg-color-light);
	padding: .2rem .3rem;
	border-radius: .3rem;
	line-height: normal;
	margin-right: .3rem;
}

.program__registration-school-print {
	display: none;
}

.heat-separator {
	margin-top: 2rem;
	margin-bottom: 1rem;
	margin-left: -1rem;
	margin-right: -1rem;
	font-size: .8em;
	padding-left: .3rem;
	background-color: var(--bg-color-primary);
}

@media (min-width:768px) {
	.program__info-container {
		padding: 0rem 3.5rem 2.5rem;
	}

	.program__register-count {
		border-bottom-left-radius: .3rem;
		margin-left: 0;
	}
	.program__row-button-arrow {
		margin-right: .5rem;
	}

	.heat-separator {
		margin-left: -3.5rem;
		margin-right: -3.5rem;
	}
}

[v-cloak] {
	display: none;
}