:root {
	--color-accent: #C59764;
	--color-dark: #09080E
}

* {
	padding: 0;
	margin: 0;
	border: 0
}

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

*::after,
*::before {
	display: inline-block
}

:active,
:focus {
	outline: 0
}

a:active,
a:focus {
	outline: 0
}

body,
html {
	height: 100%;
	scroll-behavior: smooth;
	min-width: 320px
}

body {
	color: #000;
	line-height: 1;
	font-family: "Cormorant Garamond", serif;
	font-size: 16px;
	-ms-text-size-adjust: 100%;
	-moz-text-size-adjust: 100%;
	-webkit-text-size-adjust: 100%;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale
}

button,
input,
textarea {
	font-family: "Cormorant Garamond", serif;
	font-size: inherit;
	line-height: inherit;
	color: inherit;
	background-color: rgba(0, 0, 0, 0)
}

input,
textarea {
	width: 100%
}

label {
	display: inline-block
}

button,
option,
select {
	cursor: pointer
}

a {
	display: inline-block;
	color: inherit;
	text-decoration: none
}

ul li {
	list-style: none
}

img,
svg {
	max-width: 100%;
	height: auto
}

img {
	vertical-align: top
}

h1,
h2,
h3,
h4,
h5,
h6 {
	font-weight: inherit;
	font-size: inherit
}

@media(max-width:toEm(767.98)) {
	.menu__body {
		position: fixed;
		width: 100%;
		height: 100%;
		left: -100%;
		top: 0;
		overflow: auto;
		padding: toRem(50) toRem(15) toRem(15) toRem(30);
		transition: left .3s
	}

	.menu__body::before {
		content: "";
		position: fixed;
		width: 100%;
		height: toRem(70);
		left: -100%;
		top: 0;
		transition: left .3s;
		z-index: 2
	}

	.menu-open .menu__body {
		left: 0
	}

	.menu-open .menu__body::before {
		left: 0
	}
}

.icon-menu {
	display: none
}

@media(max-width:toEm(767.98)) {
	.icon-menu {
		display: block;
		position: relative;
		width: toRem(30);
		height: toRem(18);
		z-index: 5
	}
}

@media(max-width:toEm(767.98))and (any-hover:none) {
	.icon-menu {
		cursor: default
	}
}

@media(max-width:toEm(767.98)) {

	.icon-menu span,
	.icon-menu::after,
	.icon-menu::before {
		content: "";
		transition: all .3s ease 0s;
		right: 0;
		position: absolute;
		width: 100%;
		height: toRem(2);
		background-color: #000
	}

	.icon-menu::before {
		top: 0
	}

	.icon-menu::after {
		bottom: 0
	}

	.icon-menu span {
		top: calc(50% - toRem(1))
	}

	.menu-open .icon-menu span {
		width: 0
	}

	.menu-open .icon-menu::before {
		top: calc(50% - toRem(1));
		-webkit-transform: rotate(-45deg);
		transform: rotate(-45deg)
	}

	.menu-open .icon-menu::after {
		bottom: calc(50% - toRem(1));
		-webkit-transform: rotate(45deg);
		transform: rotate(45deg)
	}
}

.ibg {
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover
}

.ibg--top {
	-o-object-position: top;
	object-position: top
}

.ibg--bottom {
	-o-object-position: bottom;
	object-position: bottom
}

.ibg--left {
	-o-object-position: left;
	object-position: left
}

.ibg--right {
	-o-object-position: right;
	object-position: right
}

.ibg--contain {
	-o-object-fit: contain;
	object-fit: contain
}

.lock body {
	overflow: hidden;
	touch-action: none;
	-ms-scroll-chaining: none;
	overscroll-behavior: none
}

.wrapper {
	min-height: 100%;
	display: flex;
	flex-direction: column;
	overflow: hidden
}

@supports(overflow:clip) {
	.wrapper {
		overflow: clip
	}
}

.wrapper>main {
	flex: 1 1 auto
}

.wrapper>* {
	min-width: 0
}

.container {
	max-width: 77.625rem;
	margin: 0 auto;
	padding: 0 .9375rem
}

[class*="--gc"] {
	display: grid;
	min-width: 0;
	grid-template-columns: .9375rem 1fr minmax(auto, 75.75rem) 1fr .9375rem
}

[class*="--gc"]>* {
	min-width: 0;
	grid-column: 3/4
}

.header {
	background-color: #09080e;
	top: 0;
	position: absolute;
	z-index: 1;
	left: 0;
	width: 100%
}

.header__inner {
	height: 43px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	font-family: Jost;
	font-size: 14px;
	line-height: 1.5;
	color: #fff
}

.header__location {
	display: flex;
	align-items: center;
	gap: 11px
}

.header__location::before {
	display: block;
	width: 12px;
	aspect-ratio: 12/15;
	flex-shrink: 0;
	content: "";
	-webkit-mask: url(../img/icons/pin.svg) center/contain no-repeat;
	mask: url(../img/icons/pin.svg) center/contain no-repeat;
	background-color: currentColor
}

.header__contacts {
	display: flex;
	align-items: center;
	gap: 12px
}

.header__tel {
	display: flex;
	align-items: center;
	gap: 14px;
	color: #fff;
	transition: .2s ease
}

@media(any-hover:hover) {
	.header__tel:hover {
		color: var(--color-accent)
	}
}

@media(max-width:767.98px) {
	.header__tel {
		font-size: 0;
		display: block
	}
}

.header__tel::before {
	display: block;
	width: 15px;
	flex-shrink: 0;
	aspect-ratio: 1;
	content: "";
	-webkit-mask: url(../img/icons/phone.svg) center/contain no-repeat;
	mask: url(../img/icons/phone.svg) center/contain no-repeat;
	background-color: currentColor
}

.header__social {
	display: flex;
	align-items: center;
	gap: 16px
}

.header__social a {
	display: flex;
	align-items: center;
	justify-content: center;
	transition: .2s ease
}

@media(any-hover:hover) {
	.header__social a:hover {
		color: var(--color-accent)
	}
}

.footer {
	background: -webkit-image-set(url("../img/footer.webp") 1x, url("../img/footer@2x.webp") 2x) center/cover no-repeat, var(--color-dark);
	background: image-set(url("../img/footer.webp") 1x, url("../img/footer@2x.webp") 2x) center/cover no-repeat, var(--color-dark);
	position: relative
}

.footer::before {
	content: "";
	height: 30px;
	position: absolute;
	top: -6px;
	left: 0;
	width: 100%;
	-webkit-mask: url(../img/decor.svg) bottom/100% 100% no-repeat;
	mask: url(../img/decor.svg) bottom/100% 100% no-repeat;
	background-color: #fff;
	z-index: 1;
	scale: 1 -1
}

@media(max-width:1023.98px) {
	.footer::before {
		top: -8px
	}
}

@media(max-width:767.98px) {
	.footer::before {
		display: none
	}
}

.footer::after {
	position: absolute;
	inset: 0;
	content: "";
	background: rgba(9, 8, 14, .7);
	background-blend-mode: multiply
}

.footer__top {
	padding-block: 121px 92px;
	max-width: 805px;
	margin-inline: auto;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 15px;
	position: relative;
	z-index: 1
}

@media(max-width:767.98px) {
	.footer__top {
		padding: 40px 0
	}
}

.footer__label {
	display: flex;
	align-items: center;
	gap: 21px;
	font-family: Jost;
	font-weight: 700;
	font-size: 28px;
	line-height: 1.42;
	text-transform: uppercase;
	color: #fff;
	text-align: center
}

@media(max-width:1023.98px) {
	.footer__label {
		font-size: 20px
	}
}

@media(max-width:767.98px) {
	.footer__label {
		font-size: 16px
	}
}

.footer__label::after,
.footer__label::before {
	content: "";
	width: 70px;
	height: 2px;
	background-color: #fff;
	display: inline-block;
	flex-shrink: 0
}

@media(max-width:767.98px) {

	.footer__label::after,
	.footer__label::before {
		width: 40px
	}
}

.footer__title {
	margin-inline: auto;
	max-width: 689px;
	font-weight: 700;
	font-size: 96px;
	line-height: 1.2;
	text-align: center;
	color: #fff
}

@media(max-width:1199.98px) {
	.footer__title {
		font-size: 68px
	}
}

@media(max-width:767.98px) {
	.footer__title {
		font-size: 32px
	}
}

.footer__bottom {
	padding-block: 82px;
	display: flex;
	flex-direction: column;
	gap: 41px;
	align-items: center;
	position: relative;
	z-index: 1;
	background-color: var(--color-dark)
}

@media(max-width:1023.98px) {
	.footer__bottom {
		padding-block: 40px
	}
}

@media(max-width:767.98px) {
	.footer__bottom {
		padding: 30px 0;
		gap: 20px;
		text-align: center
	}
}

.footer__bottom::after {
	position: absolute;
	top: 0;
	height: 100%;
	left: 50%;
	width: 100vw;
	translate: -50% 0;
	content: "";
	z-index: -1;
	background-color: inherit
}

.footer__social {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 16px
}

.footer__social a {
	color: #fff;
	transition: .2s ease
}

@media(any-hover:hover) {
	.footer__social a:hover {
		color: var(--color-accent)
	}
}

.footer__location {
	font-family: Jost;
	font-weight: 600;
	font-size: 16px;
	line-height: 1.2;
	color: #fff;
	transition: 0.2s ease;

	a {
		transition: 0.2s ease;

		&:hover {

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

@media(max-width:767.98px) {
	.footer__location {
		font-size: 14px
	}
}

.hero {
	background-color: #09080e;
	height: 100vh;
	position: relative;
	padding-top: 43px;
	background: -webkit-image-set();

}

.hero::before {
	content: "";
	height: 30px;
	position: absolute;
	bottom: 0;
	left: 50%;
	width: 100%;
	translate: -50% 0;
	min-width: 1920px;
	-webkit-mask: url(../img/decor.svg) bottom/100% 100% no-repeat;
	mask: url(../img/decor.svg) bottom/100% 100% no-repeat;
	background-color: #fff;
	z-index: 1
}

@media(max-width:1023.98px) {
	.hero::before {
		bottom: -3px
	}
}

.hero::after {
	height: 5px;
	position: absolute;
	content: "";
	position: absolute;
	background-color: #fff;
	left: 0;
	width: 100%;
	bottom: 0;
	z-index: 1
}

.hero__img {
	position: absolute;
	inset: 0;
}

.hero__img img {
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover
}

.hero__inner {
	position: relative;
	z-index: 1;
	height: 100vh;
	display: flex;
	flex-direction: column
}

.hero__header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	position: absolute;
	left: 0;
	width: 100%
}

.hero__logo {
	aspect-ratio: 1;
	width: 120px;
	flex-shrink: 0
}

@media(max-width:767.98px) {
	.hero__logo {
		width: 80px;
		backdrop-filter: blur(5px);
		border-radius: 50%
	}
}

.hero__content {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 20px;
	max-width: 902px;
	margin-inline: auto;
	flex: 1;
	padding-block: 120px
}

.hero__label {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 21px;
	font-family: Jost;
	font-weight: 700;
	font-size: 21px;
	line-height: 1.5;
	text-transform: uppercase;
	color: #fff
}

.hero__label::after,
.hero__label::before {
	display: inline-block;
	content: "";
	width: 70px;
	height: 2px;
	background-color: currentColor
}

.hero__title {
	font-weight: 700;
	font-size: 64px;
	line-height: 1.2;
	display: flex;
	align-items: center;
	text-align: center;
	text-transform: uppercase;
	color: #fff
}

@media(max-width:1023.98px) {
	.hero__title {
		font-size: 52px
	}
}

@media(max-width:767.98px) {
	.hero__title {
		font-size: 38px
	}
}

.btn {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 42px;
	border: 2px solid #fff;
	transition: .2s ease;
	padding: 14px 30px;
	font-family: Jost;
	font-weight: 500;
	font-size: 13px;
	text-transform: uppercase;
	color: #fff
}

@media(any-hover:hover) {
	.btn:hover {
		background-color: var(--color-accent);
		border-color: var(--color-accent)
	}
}

.button {
	height: 45px;
	padding: 15px;
	display: flex;
	align-items: center;
	justify-content: center;
	background: #c59764;
	font-family: Jost;
	font-weight: 500;
	font-size: 13px;
	text-transform: uppercase;
	color: #fff;
	transition: 0.2s ease;

	&:hover {
		color: #fff;
		background-color: #000;
	}
}

.about {
	margin-block: 100px
}

@media(max-width:1023.98px) {
	.about {
		margin-block: 80px
	}
}

@media(max-width:767.98px) {
	.about {
		margin-block: 60px
	}
}

.about__inner {
	display: flex;
	align-items: center;
	gap: 66px
}

@media(max-width:1199.98px) {
	.about__inner {
		gap: 40px
	}
}

@media(max-width:1023.98px) {
	.about__inner {
		gap: 12px
	}
}

@media(max-width:767.98px) {
	.about__inner {
		flex-direction: column
	}
}

.about__img {
	flex-shrink: 0;
	width: 44%;
	border-radius: 350px 350px 0 0;
	overflow: hidden
}

.about__img img {
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover
}

.about__divider {
	width: 2px;
	background-color: #dfdbdc;
	margin: 20px 16px;
	flex-shrink: 0;
	position: relative;
	height: 640px
}

@media(max-width:767.98px) {
	.about__divider {
		display: none
	}
}

.about__divider::after,
.about__divider::before {
	position: absolute;
	content: "";
	left: 50%;
	translate: -50% 0;
	aspect-ratio: 34/32;
	width: 34px;
	-webkit-mask: url(../img/about-decor.svg) center/contain no-repeat;
	mask: url(../img/about-decor.svg) center/contain no-repeat;
	background-color: #c8c4c5
}

.about__divider::before {
	top: -20px;
	scale: 1 -1
}

.about__divider::after {
	bottom: -20px
}

.about__divider span {
	position: absolute;
	top: 50%;
	left: 50%;
	translate: -50% -50%;
	border-radius: 50%;
	aspect-ratio: 1;
	width: 6px;
	background-color: #d9d9d9
}

.about__content {
	display: flex;
	flex-direction: column;
	gap: 30px
}

@media(max-width:767.98px) {
	.about__content {
		text-align: center;
		gap: 16px
	}
}

.about .container {
	max-width: 1214px
}

.title {
	font-weight: 600;
	font-size: 66px;
	line-height: 1.21;
	text-transform: uppercase;
	color: #000
}

@media(max-width:1199.98px) {
	.title {
		font-size: 48px
	}
}

.description {
	font-family: Jost;
	font-weight: 500;
	font-size: 18px;
	line-height: 1.44;
	color: #363636
}

@media(max-width:767.98px) {
	.description {
		font-size: 16px
	}
}

.description p+p {
	padding-top: 1em
}

.gallery {
	position: relative
}

.gallery__grid {
	display: grid;
	grid-template-columns: repeat(6, 1fr);
	grid-template-rows: repeat(4, 1fr);
	gap: 8px;
	width: 100%;
	max-width: 1920px;
	aspect-ratio: 1920/1210
}

@media(max-width:767.98px) {
	.gallery__grid {
		grid-template-columns: repeat(3, 1fr);
		aspect-ratio: auto;
		gap: 4px
	}
}

.gallery__img:nth-child(1) {
	grid-area: 1/1/3/3
}

.gallery__img:nth-child(2) {
	grid-area: 1/3/2/4
}

.gallery__img:nth-child(3) {
	grid-area: 1/4/2/5
}

.gallery__img:nth-child(4) {
	grid-area: 1/5/3/7
}

.gallery__img:nth-child(5) {
	grid-area: 2/3/3/4
}

.gallery__img:nth-child(6) {
	grid-area: 2/4/3/5
}

.gallery__img:nth-child(7) {
	grid-area: 3/1/4/2
}

.gallery__img:nth-child(8) {
	grid-area: 3/2/4/3
}

.gallery__img:nth-child(9) {
	grid-area: 3/3/5/5
}

.gallery__img:nth-child(10) {
	grid-area: 3/5/4/6
}

.gallery__img:nth-child(11) {
	grid-area: 3/6/4/7
}

.gallery__img:nth-child(12) {
	grid-area: 4/1/5/2
}

.gallery__img:nth-child(13) {
	grid-area: 4/2/5/3
}

.gallery__img:nth-child(14) {
	grid-area: 4/5/5/6
}

.gallery__img:nth-child(15) {
	grid-area: 4/6/5/7
}

@media(max-width:767.98px) {
	.gallery__img {
		grid-area: auto !important;
		aspect-ratio: 1
	}
}

.gallery__img img {
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover
}

.gallery__label {
	position: absolute;
	top: 50%;
	translate: -50% -50%;
	left: 50%;
	z-index: 1;
	font-family: Jost;
	text-align: center;
	transition: .2s ease;
	background: #fff;
	font-weight: 600;
	font-size: 26px;
	line-height: 1.46;
	color: var(--color-accent);
	aspect-ratio: 1;
	width: 268px;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center
}

@media(any-hover:hover) {
	.gallery__label:hover {
		color: #fff;
		background: var(--color-accent)
	}
}

@media(max-width:767.98px) {
	.gallery__label {
		font-size: 20px;
		width: 150px
	}
}

.menu {
	margin-block: 100px
}

@media(max-width:1023.98px) {
	.menu {
		margin-block: 80px
	}
}

@media(max-width:767.98px) {
	.menu {
		margin-block: 60px
	}
}

.menu__head {
	margin-bottom: 32px;
	text-align: center
}

.menu__title {
	font-weight: 700;
	font-size: 98px;
	line-height: 1.2;
	color: var(--color-accent)
}

@media(max-width:1199.98px) {
	.menu__title {
		font-size: 68px
	}
}

.menu__list {
	padding-top: 61px;
	display: grid;
	gap: 40px 150px;
	grid-template-columns: repeat(2, 1fr);
	position: relative
}

@media(max-width:1199.98px) {
	.menu__list {
		gap: 40px 60px
	}
}

@media(max-width:767.98px) {
	.menu__list {
		grid-template-columns: auto;
		padding: 0
	}
}

.menu__divider {
	position: absolute;
	left: 50%;
	top: 20px;
	bottom: 0;
	translate: -50% 0;
	width: 2px;
	background-color: #dfdbdc;
	bottom: -20px
}

.menu__divider::after,
.menu__divider::before {
	position: absolute;
	content: "";
	left: 50%;
	translate: -50% 0;
	aspect-ratio: 34/32;
	width: 34px;
	-webkit-mask: url(../img/about-decor.svg) center/contain no-repeat;
	mask: url(../img/about-decor.svg) center/contain no-repeat;
	background-color: #c8c4c5
}

.menu__divider::before {
	top: -20px;
	scale: 1 -1
}

.menu__divider::after {
	bottom: -20px
}

.menu__divider span {
	position: absolute;
	top: 50%;
	left: 50%;
	translate: -50% -50%;
	border-radius: 50%;
	aspect-ratio: 1;
	width: 6px;
	background-color: #d9d9d9
}

@media(max-width:767.98px) {
	.menu__divider {
		display: none
	}
}

.menu-block__title {
	font-weight: 600;
	font-size: 40px;
	line-height: 1.2;
	text-align: center;
	text-transform: uppercase;
	color: #000;
	margin-bottom: 44px
}

@media(max-width:1199.98px) {
	.menu-block__title {
		font-size: 32px;
		margin-bottom: 1em
	}
}

@media(max-width:1023.98px) {
	.menu-block__title {
		font-size: 24px
	}
}

.menu-block__list {
	display: grid;
	gap: 30px
}

.menu-block__item {
	display: flex;
	align-items: flex-start;
	gap: 12px
}

.menu-block__item-img {
	aspect-ratio: 1;
	flex-shrink: 0;
	width: 75px
}

@media(max-width:1023.98px) {
	.menu-block__item-img {
		width: 60px
	}
}

.menu-block__item-img img {
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover
}

.menu-block__item-content {
	display: flex;
	align-items: center;
	padding-top: 6px;
	flex: 1;
	gap: 15px
}

.menu-block__item-title {
	font-weight: 600;
	font-size: 24px;
	line-height: 1.2;
	color: #000
}

@media(max-width:1023.98px) {
	.menu-block__item-title {
		font-size: 20px
	}
}

.menu-block__item-decor {
	flex: 1;
	position: relative;
	height: 5px
}

.menu-block__item-decor::after,
.menu-block__item-decor::before {
	position: absolute;
	height: 1px;
	width: 100%;
	content: "";
	background-color: #e5e5e5
}

.menu-block__item-decor::before {
	top: 0
}

.menu-block__item-decor::after {
	bottom: 0
}

.menu-block__item-price {
	font-family: Jost;
	font-size: 20px;
	line-height: 1.2;
	text-align: right;
	color: #363636;
	white-space: nowrap
}

@media(max-width:1023.98px) {
	.menu-block__item-price {
		font-size: 18px
	}
}

.modal-form {
	max-width: 420px;
	padding: 50px 45px;
	background: #f7f3ef;
	border-radius: 12px;
	text-align: center;
	font-family: "Playfair Display", serif
}

.modal-title {
	font-size: 28px;
	color: #2c2c2c;
	margin-bottom: 10px
}

.modal-subtitle {
	font-size: 15px;
	color: #7a746d;
	margin-bottom: 35px;
	font-family: Montserrat, sans-serif
}

.form-group {
	margin-bottom: 20px
}

.form-group input {
	width: 100%;
	padding: 14px 16px;
	font-size: 15px;
	border: 1px solid #d6cfc7;
	border-radius: 6px;
	background: rgba(0, 0, 0, 0);
	outline: 0;
	font-family: Montserrat, sans-serif;
	transition: all .3s ease
}

.form-group input::-webkit-input-placeholder {
	color: #9c948c
}

.form-group input:-ms-input-placeholder {
	color: #9c948c
}

.form-group input::-ms-input-placeholder {
	color: #9c948c
}

.form-group input::placeholder {
	color: #9c948c
}

.form-group input:focus {
	border-color: #b89b7a;
	background: #fff
}

.modal-btn {
	width: 100%;
	padding: 14px;
	background: #b89b7a;
	color: #fff;
	border: none;
	border-radius: 30px;
	font-size: 15px;
	cursor: pointer;
	font-family: Montserrat, sans-serif;
	letter-spacing: .05em;
	transition: background .3s ease
}

.modal-btn:hover {
	background: #a68765
}

.open-modal {
	display: inline-block;
	padding: 12px 28px;
	border: 1px solid #b89b7a;
	color: #b89b7a;
	text-decoration: none;
	border-radius: 30px;
	font-family: Montserrat, sans-serif;
	transition: all .3s ease
}

.open-modal:hover {
	background: #b89b7a;
	color: #fff
}

#contact-modal {
	padding: 0
}

:root {
	--f-button-width: 40px;
	--f-button-height: 40px;
	--f-button-border: 0;
	--f-button-border-radius: 0;
	--f-button-color: #374151;
	--f-button-bg: #f8f8f8;
	--f-button-shadow: none;
	--f-button-transition: all .15s ease;
	--f-button-transform: none;
	--f-button-outline-width: 1px;
	--f-button-outline-color: rgba(0, 0, 0, .7);
	--f-button-svg-width: 20px;
	--f-button-svg-height: 20px;
	--f-button-svg-stroke-width: 1.5;
	--f-button-svg-fill: none;
	--f-button-svg-filter: none;
	--f-button-svg-opacity: 1;
	--f-button-svg-disabled-opacity: .5;
	--f-button-svg-transition: opacity .15s ease;
	--f-button-svg-transform: none
}

.f-button {
	width: var(--f-button-width);
	height: var(--f-button-height);
	border: var(--f-button-border);
	border-radius: var(--f-button-border-radius);
	color: var(--f-button-color);
	background: var(--f-button-bg);
	box-shadow: var(--f-button-shadow);
	-webkit-transform: var(--f-button-transform);
	transform: var(--f-button-transform);
	transition: var(--f-button-transition);
	backdrop-filter: var(--f-button-backdrop-filter);
	display: flex;
	justify-content: center;
	align-items: center;
	box-sizing: content-box;
	position: relative;
	margin: 0;
	padding: 0;
	pointer-events: all;
	cursor: pointer;
	overflow: hidden
}

@media(hover:hover) {
	.f-button:hover:not([aria-disabled]) {
		color: var(--f-button-hover-color, var(--f-button-color));
		background-color: var(--f-button-hover-bg, var(--f-button-bg))
	}
}

.f-button:active:not([aria-disabled]) {
	color: var(--f-button-active-color, var(--f-button-hover-color, var(--f-button-color)));
	background-color: var(--f-button-active-bg, var(--f-button-hover-bg, var(--f-button-bg)))
}

.f-button:focus {
	outline: 0
}

.f-button:focus-visible {
	outline: var(--f-button-outline-width) solid var(--f-button-outline-color);
	outline-offset: var(--f-button-outline-offset)
}

.f-button svg {
	width: var(--f-button-svg-width);
	height: var(--f-button-svg-height);
	-webkit-transform: var(--f-button-svg-transform);
	transform: var(--f-button-svg-transform);
	fill: var(--f-button-svg-fill);
	-webkit-filter: var(--f-button-svg-filter);
	filter: var(--f-button-svg-filter);
	opacity: var(--f-button-svg-opacity, 1);
	transition: var(--f-button-svg-transition);
	stroke: currentColor;
	stroke-width: var(--f-button-svg-stroke-width);
	stroke-linecap: round;
	stroke-linejoin: round;
	pointer-events: none
}

.f-button[aria-disabled] {
	cursor: default
}

.f-button[aria-disabled] svg {
	opacity: var(--f-button-svg-disabled-opacity)
}

[data-panzoom-action=toggleFS] g:first-child {
	display: flex
}

[data-panzoom-action=toggleFS] g:last-child {
	display: none
}

.in-fullscreen [data-panzoom-action=toggleFS] g:first-child {
	display: none
}

.in-fullscreen [data-panzoom-action=toggleFS] g:last-child {
	display: flex
}

[data-autoplay-action=toggle] svg g:first-child {
	display: flex
}

[data-autoplay-action=toggle] svg g:last-child {
	display: none
}

.has-autoplay [data-autoplay-action=toggle] svg g:first-child {
	display: none
}

.has-autoplay [data-autoplay-action=toggle] svg g:last-child {
	display: flex
}

:-webkit-full-screen [data-fullscreen-action=toggle] svg [data-fullscreen-action=toggle] svg g:first-child {
	display: none
}

:-ms-fullscreen [data-fullscreen-action=toggle] svg [data-fullscreen-action=toggle] svg g:first-child {
	display: none
}

:fullscreen [data-fullscreen-action=toggle] svg [data-fullscreen-action=toggle] svg g:first-child {
	display: none
}

:-webkit-full-screen [data-fullscreen-action=toggle] svg [data-fullscreen-action=toggle] svg g:last-child {
	display: flex
}

:-ms-fullscreen [data-fullscreen-action=toggle] svg [data-fullscreen-action=toggle] svg g:last-child {
	display: flex
}

:fullscreen [data-fullscreen-action=toggle] svg [data-fullscreen-action=toggle] svg g:last-child {
	display: flex
}

:root {
	--f-spinner-color-1: rgba(0, 0, 0, .1);
	--f-spinner-color-2: rgba(17, 24, 28, .8);
	--f-spinner-width: 50px;
	--f-spinner-height: 50px;
	--f-spinner-border-radius: 50%;
	--f-spinner-border-width: 4px
}

.f-spinner {
	position: absolute;
	top: 50%;
	left: 50%;
	margin: 0;
	padding: 0;
	width: var(--f-spinner-width);
	height: var(--f-spinner-height);
	translate: -50% -50%;
	border: var(--f-spinner-border-width) solid var(--f-spinner-color-1);
	border-top-color: var(--f-spinner-color-2);
	border-radius: var(--f-spinner-border-radius);
	-webkit-animation: f-spinner .75s linear infinite, f-fadeIn .2s ease .2s both;
	animation: f-spinner .75s linear infinite, f-fadeIn .2s ease .2s both
}

@-webkit-keyframes f-spinner {
	to {
		rotate: 360deg
	}
}

@keyframes f-spinner {
	to {
		rotate: 360deg
	}
}

.f-panzoom,
.f-zoomable {
	position: relative;
	overflow: hidden;
	display: flex;
	align-items: center;
	flex-direction: column
}

.f-panzoom:after,
.f-panzoom:before,
.f-zoomable:after,
.f-zoomable:before {
	display: block;
	content: ""
}

.f-panzoom:not(.has-controls):before,
.f-zoomable:not(.has-controls):before {
	margin-bottom: auto
}

.f-panzoom:after,
.f-zoomable:after {
	margin-top: auto
}

.f-panzoom.in-fullscreen,
.f-zoomable.in-fullscreen {
	position: fixed;
	top: 0;
	left: 0;
	margin: 0 !important;
	width: 100% !important;
	height: 100% !important;
	max-width: none !important;
	max-height: none !important;
	aspect-ratio: unset !important;
	z-index: 9999
}

.f-panzoom__wrapper {
	position: relative;
	min-width: 0;
	min-height: 0;
	max-width: 100%;
	max-height: 100%
}

.f-panzoom__wrapper.will-zoom-out {
	cursor: -webkit-zoom-out;
	cursor: zoom-out
}

.f-panzoom__wrapper.can-drag {
	cursor: move;
	cursor: -webkit-grab;
	cursor: grab
}

.f-panzoom__wrapper.will-zoom-in {
	cursor: -webkit-zoom-in;
	cursor: zoom-in
}

.f-panzoom__wrapper.is-dragging {
	cursor: move;
	cursor: -webkit-grabbing;
	cursor: grabbing
}

.f-panzoom__wrapper.has-error {
	display: none
}

.f-panzoom__content {
	display: block;
	min-width: 0;
	min-height: 0;
	max-width: 100%;
	max-height: 100%
}

.f-panzoom__content.has-lazyerror,
.f-panzoom__content.is-lazyloading {
	visibility: hidden
}

img.f-panzoom__content {
	width: auto;
	height: auto;
	vertical-align: top;
	-o-object-fit: contain;
	object-fit: contain;
	transition: none;
	-webkit-user-select: none;
	-ms-user-select: none;
	user-select: none
}

.f-panzoom__wrapper>.f-panzoom__content {
	visibility: hidden
}

.f-panzoom__viewport {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 10
}

.f-panzoom__viewport>.f-panzoom__content {
	width: 100%;
	height: 100%;
	-o-object-fit: fill;
	object-fit: fill
}

picture.f-panzoom__content img {
	vertical-align: top;
	width: 100%;
	height: auto;
	max-height: 100%;
	-o-object-fit: contain;
	object-fit: contain;
	transition: none;
	-webkit-user-select: none;
	-ms-user-select: none;
	user-select: none
}

.f-panzoom__protected {
	position: absolute;
	inset: 0;
	z-index: 1;
	-webkit-user-select: none;
	-ms-user-select: none;
	user-select: none
}

html.with-panzoom-in-fullscreen {
	overflow: hidden
}

.f-fadeIn {
	-webkit-animation: var(--f-transition-duration, .2s) var(--f-transition-easing, ease) var(--f-transition-delay, 0s) both f-fadeIn;
	animation: var(--f-transition-duration, .2s) var(--f-transition-easing, ease) var(--f-transition-delay, 0s) both f-fadeIn;
	z-index: 2
}

.f-fadeOut {
	-webkit-animation: var(--f-transition-duration, .2s) var(--f-transition-easing, ease) var(--f-transition-delay, 0s) both f-fadeOut;
	animation: var(--f-transition-duration, .2s) var(--f-transition-easing, ease) var(--f-transition-delay, 0s) both f-fadeOut;
	z-index: 1
}

@-webkit-keyframes f-fadeIn {
	0% {
		opacity: 0
	}

	to {
		opacity: 1
	}
}

@keyframes f-fadeIn {
	0% {
		opacity: 0
	}

	to {
		opacity: 1
	}
}

@-webkit-keyframes f-fadeOut {
	to {
		opacity: 0
	}
}

@keyframes f-fadeOut {
	to {
		opacity: 0
	}
}

.f-crossfadeIn {
	-webkit-animation: var(--f-transition-duration, .2s) ease both f-crossfadeIn;
	animation: var(--f-transition-duration, .2s) ease both f-crossfadeIn;
	z-index: 2
}

.f-crossfadeOut {
	-webkit-animation: calc(var(--f-transition-duration, .2s)*.2) ease calc(var(--f-transition-duration, .2s)*.8) both f-crossfadeOut;
	animation: calc(var(--f-transition-duration, .2s)*.2) ease calc(var(--f-transition-duration, .2s)*.8) both f-crossfadeOut;
	z-index: 1
}

@-webkit-keyframes f-crossfadeIn {
	0% {
		opacity: 0
	}

	to {
		opacity: 1
	}
}

@keyframes f-crossfadeIn {
	0% {
		opacity: 0
	}

	to {
		opacity: 1
	}
}

@-webkit-keyframes f-crossfadeOut {
	to {
		opacity: 0
	}
}

@keyframes f-crossfadeOut {
	to {
		opacity: 0
	}
}

.is-horizontal .f-slideIn.from-next {
	-webkit-animation: var(--f-transition-duration, .85s) cubic-bezier(.16, 1, .3, 1) f-slideInNextX;
	animation: var(--f-transition-duration, .85s) cubic-bezier(.16, 1, .3, 1) f-slideInNextX
}

.is-horizontal .f-slideIn.from-prev {
	-webkit-animation: var(--f-transition-duration, .85s) cubic-bezier(.16, 1, .3, 1) f-slideInPrevX;
	animation: var(--f-transition-duration, .85s) cubic-bezier(.16, 1, .3, 1) f-slideInPrevX
}

.is-horizontal .f-slideOut.to-next {
	-webkit-animation: var(--f-transition-duration, .85s) cubic-bezier(.16, 1, .3, 1) f-slideOutNextX;
	animation: var(--f-transition-duration, .85s) cubic-bezier(.16, 1, .3, 1) f-slideOutNextX
}

.is-horizontal .f-slideOut.to-prev {
	-webkit-animation: var(--f-transition-duration, .85s) cubic-bezier(.16, 1, .3, 1) f-slideOutPrevX;
	animation: var(--f-transition-duration, .85s) cubic-bezier(.16, 1, .3, 1) f-slideOutPrevX
}

@-webkit-keyframes f-slideInPrevX {
	0% {
		-webkit-transform: translate(calc(100% + var(--f-carousel-gap, 0)));
		transform: translate(calc(100% + var(--f-carousel-gap, 0)))
	}

	to {
		-webkit-transform: translateZ(0);
		transform: translateZ(0)
	}
}

@keyframes f-slideInPrevX {
	0% {
		-webkit-transform: translate(calc(100% + var(--f-carousel-gap, 0)));
		transform: translate(calc(100% + var(--f-carousel-gap, 0)))
	}

	to {
		-webkit-transform: translateZ(0);
		transform: translateZ(0)
	}
}

@-webkit-keyframes f-slideInNextX {
	0% {
		-webkit-transform: translate(calc(-100% - var(--f-carousel-gap, 0)));
		transform: translate(calc(-100% - var(--f-carousel-gap, 0)))
	}

	to {
		-webkit-transform: translateZ(0);
		transform: translateZ(0)
	}
}

@keyframes f-slideInNextX {
	0% {
		-webkit-transform: translate(calc(-100% - var(--f-carousel-gap, 0)));
		transform: translate(calc(-100% - var(--f-carousel-gap, 0)))
	}

	to {
		-webkit-transform: translateZ(0);
		transform: translateZ(0)
	}
}

@-webkit-keyframes f-slideOutNextX {
	to {
		-webkit-transform: translate(calc(-100% - var(--f-carousel-gap, 0)));
		transform: translate(calc(-100% - var(--f-carousel-gap, 0)))
	}
}

@keyframes f-slideOutNextX {
	to {
		-webkit-transform: translate(calc(-100% - var(--f-carousel-gap, 0)));
		transform: translate(calc(-100% - var(--f-carousel-gap, 0)))
	}
}

@-webkit-keyframes f-slideOutPrevX {
	to {
		-webkit-transform: translate(calc(100% + var(--f-carousel-gap, 0)));
		transform: translate(calc(100% + var(--f-carousel-gap, 0)))
	}
}

@keyframes f-slideOutPrevX {
	to {
		-webkit-transform: translate(calc(100% + var(--f-carousel-gap, 0)));
		transform: translate(calc(100% + var(--f-carousel-gap, 0)))
	}
}

.is-vertical .f-slideIn.from-next {
	-webkit-animation: var(--f-transition-duration, .85s) cubic-bezier(.16, 1, .3, 1) f-slideInNextY;
	animation: var(--f-transition-duration, .85s) cubic-bezier(.16, 1, .3, 1) f-slideInNextY
}

.is-vertical .f-slideIn.from-prev {
	-webkit-animation: var(--f-transition-duration, .85s) cubic-bezier(.16, 1, .3, 1) f-slideInPrevY;
	animation: var(--f-transition-duration, .85s) cubic-bezier(.16, 1, .3, 1) f-slideInPrevY
}

.is-vertical .f-slideOut.to-next {
	-webkit-animation: var(--f-transition-duration, .85s) cubic-bezier(.16, 1, .3, 1) f-slideOutNextY;
	animation: var(--f-transition-duration, .85s) cubic-bezier(.16, 1, .3, 1) f-slideOutNextY
}

.is-vertical .f-slideOut.to-prev {
	-webkit-animation: var(--f-transition-duration, .85s) cubic-bezier(.16, 1, .3, 1) f-slideOutPrevY;
	animation: var(--f-transition-duration, .85s) cubic-bezier(.16, 1, .3, 1) f-slideOutPrevY
}

@-webkit-keyframes f-slideInPrevY {
	0% {
		-webkit-transform: translateY(calc(100% + var(--f-carousel-gap, 0)));
		transform: translateY(calc(100% + var(--f-carousel-gap, 0)))
	}

	to {
		-webkit-transform: translateZ(0);
		transform: translateZ(0)
	}
}

@keyframes f-slideInPrevY {
	0% {
		-webkit-transform: translateY(calc(100% + var(--f-carousel-gap, 0)));
		transform: translateY(calc(100% + var(--f-carousel-gap, 0)))
	}

	to {
		-webkit-transform: translateZ(0);
		transform: translateZ(0)
	}
}

@-webkit-keyframes f-slideInNextY {
	0% {
		-webkit-transform: translateY(calc(-100% - var(--f-carousel-gap, 0)));
		transform: translateY(calc(-100% - var(--f-carousel-gap, 0)))
	}

	to {
		-webkit-transform: translateZ(0);
		transform: translateZ(0)
	}
}

@keyframes f-slideInNextY {
	0% {
		-webkit-transform: translateY(calc(-100% - var(--f-carousel-gap, 0)));
		transform: translateY(calc(-100% - var(--f-carousel-gap, 0)))
	}

	to {
		-webkit-transform: translateZ(0);
		transform: translateZ(0)
	}
}

@-webkit-keyframes f-slideOutNextY {
	to {
		-webkit-transform: translateY(calc(-100% - var(--f-carousel-gap, 0)));
		transform: translateY(calc(-100% - var(--f-carousel-gap, 0)))
	}
}

@keyframes f-slideOutNextY {
	to {
		-webkit-transform: translateY(calc(-100% - var(--f-carousel-gap, 0)));
		transform: translateY(calc(-100% - var(--f-carousel-gap, 0)))
	}
}

@-webkit-keyframes f-slideOutPrevY {
	to {
		-webkit-transform: translateY(calc(100% + var(--f-carousel-gap, 0)));
		transform: translateY(calc(100% + var(--f-carousel-gap, 0)))
	}
}

@keyframes f-slideOutPrevY {
	to {
		-webkit-transform: translateY(calc(100% + var(--f-carousel-gap, 0)));
		transform: translateY(calc(100% + var(--f-carousel-gap, 0)))
	}
}

.f-zoomInUp {
	-webkit-animation: var(--f-transition-duration, .3s) ease both f-zoomInUp;
	animation: var(--f-transition-duration, .3s) ease both f-zoomInUp
}

.f-zoomOutDown {
	-webkit-animation: var(--f-transition-duration, .3s) ease both f-zoomOutDown;
	animation: var(--f-transition-duration, .3s) ease both f-zoomOutDown
}

@-webkit-keyframes f-zoomInUp {
	0% {
		-webkit-transform: scale(var(--f-zoomInUp-scale, .975)) translate3d(var(--f-zoomInUp-x, 0), var(--f-zoomInUp-y, 16px), 0);
		transform: scale(var(--f-zoomInUp-scale, .975)) translate3d(var(--f-zoomInUp-x, 0), var(--f-zoomInUp-y, 16px), 0);
		opacity: var(--f-zoomInUp-opacity, 0)
	}

	to {
		-webkit-transform: scale(1) translateZ(0);
		transform: scale(1) translateZ(0);
		opacity: 1
	}
}

@keyframes f-zoomInUp {
	0% {
		-webkit-transform: scale(var(--f-zoomInUp-scale, .975)) translate3d(var(--f-zoomInUp-x, 0), var(--f-zoomInUp-y, 16px), 0);
		transform: scale(var(--f-zoomInUp-scale, .975)) translate3d(var(--f-zoomInUp-x, 0), var(--f-zoomInUp-y, 16px), 0);
		opacity: var(--f-zoomInUp-opacity, 0)
	}

	to {
		-webkit-transform: scale(1) translateZ(0);
		transform: scale(1) translateZ(0);
		opacity: 1
	}
}

@-webkit-keyframes f-zoomOutDown {
	to {
		-webkit-transform: scale(var(--f-zoomOutDown-scale, .975)) translate3d(var(--f-zoomOutDown-x, 0), var(--f-zoomOutDown-y, 16px), 0);
		transform: scale(var(--f-zoomOutDown-scale, .975)) translate3d(var(--f-zoomOutDown-x, 0), var(--f-zoomOutDown-y, 16px), 0);
		opacity: 0
	}
}

@keyframes f-zoomOutDown {
	to {
		-webkit-transform: scale(var(--f-zoomOutDown-scale, .975)) translate3d(var(--f-zoomOutDown-x, 0), var(--f-zoomOutDown-y, 16px), 0);
		transform: scale(var(--f-zoomOutDown-scale, .975)) translate3d(var(--f-zoomOutDown-x, 0), var(--f-zoomOutDown-y, 16px), 0);
		opacity: 0
	}
}

.f-throwOutUp {
	-webkit-animation: var(--f-throwOutUp-duration, .2s) ease-out both f-throwOutUp;
	animation: var(--f-throwOutUp-duration, .2s) ease-out both f-throwOutUp
}

.f-throwOutDown {
	-webkit-animation: var(--f-throwOutDown-duration, .2s) ease-out both f-throwOutDown;
	animation: var(--f-throwOutDown-duration, .2s) ease-out both f-throwOutDown
}

@-webkit-keyframes f-throwOutUp {
	to {
		-webkit-transform: translate3d(0, calc(var(--f-throwOutUp-y, 150px) * -1), 0);
		transform: translate3d(0, calc(var(--f-throwOutUp-y, 150px) * -1), 0);
		opacity: 0
	}
}

@keyframes f-throwOutUp {
	to {
		-webkit-transform: translate3d(0, calc(var(--f-throwOutUp-y, 150px) * -1), 0);
		transform: translate3d(0, calc(var(--f-throwOutUp-y, 150px) * -1), 0);
		opacity: 0
	}
}

@-webkit-keyframes f-throwOutDown {
	to {
		-webkit-transform: translate3d(0, var(--f-throwOutDown-y, 150px), 0);
		transform: translate3d(0, var(--f-throwOutDown-y, 150px), 0);
		opacity: 0
	}
}

@keyframes f-throwOutDown {
	to {
		-webkit-transform: translate3d(0, var(--f-throwOutDown-y, 150px), 0);
		transform: translate3d(0, var(--f-throwOutDown-y, 150px), 0);
		opacity: 0
	}
}

.has-gmap .f-html,
.has-iframe .f-html,
.has-pdf .f-html {
	width: 100%;
	height: 100%;
	min-height: 1px;
	overflow: visible
}

.has-gmap .f-html,
.has-pdf .f-html {
	padding: 0
}

.f-html {
	position: relative;
	box-sizing: border-box;
	margin: var(--f-html-margin, 0);
	padding: var(--f-html-padding, 2rem);
	color: var(--f-html-color, currentColor);
	background: var(--f-html-bg)
}

.is-loading>.f-html {
	opacity: 0
}

.f-html.is-error {
	text-align: center
}

.f-iframe {
	display: block;
	margin: 0;
	border: 0;
	height: 100%;
	width: 100%
}

.f-caption {
	align-self: center;
	flex-shrink: 0;
	margin: var(--f-caption-margin);
	padding: var(--f-caption-padding, 16px 8px);
	max-width: 100%;
	max-height: calc(80vh - 100px);
	overflow: auto;
	overflow-wrap: anywhere;
	line-height: var(--f-caption-line-height);
	color: var(--f-caption-color);
	background: var(--f-caption-bg);
	font: var(--f-caption-font)
}

.has-html5video .f-html,
.has-vimeo .f-html,
.has-youtube .f-html {
	padding: 0;
	width: 100%;
	height: 100%;
	min-height: 1px;
	overflow: visible;
	max-width: var(--f-video-width, 960px);
	max-height: var(--f-video-height, 540px);
	aspect-ratio: var(--f-video-aspect-ratio);
	background: var(--f-video-bg, rgba(0, 0, 0, .9))
}

.f-html5video {
	border: 0;
	display: block;
	height: 100%;
	width: 100%;
	background: 0 0
}

.f-button.is-arrow {
	--f-button-width: var(--f-arrow-width, 46px);
	--f-button-height: var(--f-arrow-height, 46px);
	--f-button-svg-width: var(--f-arrow-svg-width, 24px);
	--f-button-svg-height: var(--f-arrow-svg-height, 24px);
	--f-button-svg-stroke-width: var(--f-arrow-svg-stroke-width, 1.75);
	--f-button-border-radius: var(--f-arrow-border-radius, unset);
	--f-button-bg: var(--f-arrow-bg, transparent);
	--f-button-hover-bg: var(--f-arrow-hover-bg, var(--f-arrow-bg));
	--f-button-active-bg: var(--f-arrow-active-bg, var(--f-arrow-hover-bg));
	--f-button-shadow: var(--f-arrow-shadow);
	--f-button-color: var(--f-arrow-color);
	--f-button-hover-color: var(--f-arrow-hover-color, var(--f-arrow-color));
	--f-button-active-color: var(--f-arrow-active-color, var(--f-arrow-hover-color));
	overflow: visible
}

.f-button.is-arrow.is-next,
.f-button.is-arrow.is-prev {
	position: absolute;
	-webkit-transform: translate(0);
	transform: translate(0);
	z-index: 20
}

.is-horizontal .f-button.is-arrow.is-next,
.is-horizontal .f-button.is-arrow.is-prev {
	inset: 50% auto auto;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%)
}

.is-horizontal.is-ltr .f-button.is-arrow.is-prev {
	left: var(--f-arrow-pos, 0)
}

.is-horizontal.is-ltr .f-button.is-arrow.is-next {
	right: var(--f-arrow-pos, 0)
}

.is-horizontal.is-rtl .f-button.is-arrow.is-prev {
	right: var(--f-arrow-pos, 0);
	-webkit-transform: translateY(-50%) rotateY(180deg);
	transform: translateY(-50%) rotateY(180deg)
}

.is-horizontal.is-rtl .f-button.is-arrow.is-next {
	left: var(--f-arrow-pos, 0);
	-webkit-transform: translateY(-50%) rotateY(180deg);
	transform: translateY(-50%) rotateY(180deg)
}

.is-vertical.is-ltr .f-button.is-arrow.is-prev,
.is-vertical.is-rtl .f-button.is-arrow.is-prev {
	top: var(--f-arrow-pos, 0);
	right: auto;
	bottom: auto;
	left: 50%;
	-webkit-transform: translate(-50%);
	transform: translate(-50%)
}

.is-vertical.is-ltr .f-button.is-arrow.is-next,
.is-vertical.is-rtl .f-button.is-arrow.is-next {
	top: auto;
	right: auto;
	bottom: var(--f-arrow-pos, 0);
	left: 50%;
	-webkit-transform: translate(-50%);
	transform: translate(-50%)
}

.is-vertical .f-button.is-arrow.is-next svg,
.is-vertical .f-button.is-arrow.is-prev svg {
	-webkit-transform: rotate(90deg);
	transform: rotate(90deg)
}

.f-carousel__toolbar {
	display: grid;
	grid-template-columns: 1fr auto 1fr;
	margin: var(--f-toolbar-margin, 0);
	padding: var(--f-toolbar-padding, 8px);
	line-height: var(--f-toolbar-line-height);
	background: var(--f-toolbar-bg, none);
	box-shadow: var(--f-toolbar-shadow, none);
	backdrop-filter: var(--f-toolbar-backdrop-filter);
	position: relative;
	z-index: 20;
	color: var(--f-toolbar-color, currentColor);
	font-size: var(--f-toolbar-font-size, 17px);
	font-weight: var(--f-toolbar-font-weight, inherit);
	font-family: var(--f-toolbar-font, -apple-system, BlinkMacSystemFont, "Segoe UI Adjusted", "Segoe UI", "Liberation Sans", sans-serif);
	text-shadow: var(--f-toolbar-text-shadow);
	text-align: center;
	font-variant-numeric: tabular-nums;
	-webkit-font-smoothing: subpixel-antialiased;
	white-space: nowrap;
	pointer-events: none
}

.f-carousel__toolbar.is-absolute {
	position: absolute;
	top: 0;
	left: 0;
	right: 0
}

.f-carousel__toolbar .f-button:focus-visible {
	position: relative;
	z-index: 1
}

.f-carousel__toolbar__column {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	align-content: flex-start;
	gap: var(--f-toolbar-gap, 0)
}

.f-carousel__toolbar__column.is-left {
	display: flex;
	justify-self: flex-start;
	justify-content: flex-start
}

.f-carousel__toolbar__column.is-middle {
	display: flex;
	justify-content: center
}

.f-carousel__toolbar__column.is-right {
	display: flex;
	justify-self: flex-end;
	justify-content: flex-end;
	flex-flow: nowrap
}

.f-carousel__toolbar__column {
	pointer-events: none
}

.f-carousel__toolbar__column>* {
	pointer-events: all
}

.f-counter {
	position: relative;
	display: flex;
	flex-direction: row;
	cursor: default;
	-webkit-user-select: none;
	-ms-user-select: none;
	user-select: none;
	margin: var(--f-counter-margin, 0);
	padding: var(--f-counter-padding, 4px);
	line-height: var(--f-counter-line-height);
	background: var(--f-counter-bg);
	border-radius: var(--f-counter-border-radius)
}

.f-counter span {
	padding: 0 var(--f-counter-gap, 4px)
}

:root {
	--f-thumbs-gap: 8px;
	--f-thumbs-margin: 0;
	--f-thumbs-padding-x: 8px;
	--f-thumbs-padding-y: 8px;
	--f-thumbs-bg: transparent;
	--f-thumbs-transition: max-height .3s ease, max-width .3s ease, padding .3s ease;
	--f-thumbs-z-index: 1;
	--f-thumbs-viewport-padding-x: 0px;
	--f-thumbs-viewport-padding-y: 0px;
	--f-thumb-width: 94px;
	--f-thumb-height: 76px;
	--f-thumb-clip-width: 46px;
	--f-thumb-extra-gap: 16px;
	--f-thumb-opacity: 1;
	--f-thumb-transition: opacity .3s ease, transform .15s ease;
	--f-thumb-border: none;
	--f-thumb-border-radius: 4px;
	--f-thumb-shadow: none;
	--f-thumb-bg: linear-gradient(rgba(0, 0, 0, .1), rgba(0, 0, 0, .05));
	--f-thumb-focus-shadow: inset 0 0 0 .8px #222, inset 0 0 0 2.25px #fff;
	--f-thumb-selected-shadow: inset 0 0 0 .8px #222, inset 0 0 0 2.25px #fff;
	--f-thumb-border-transition: all .1s ease;
	--f-thumb-img-width: 100%;
	--f-thumb-img-height: 100%;
	--f-thumb-img-fit: cover;
	--f-thumb-img-position: 50% 20%
}

.f-thumbs {
	--f-carousel-slide-width: var(--f-thumb-width);
	--f-carousel-slide-height: var(--f-thumb-height);
	--f-carousel-gap: var(--f-thumbs-gap);
	position: relative;
	box-sizing: border-box;
	flex-shrink: 0;
	margin: var(--f-thumbs-margin);
	padding: var(--f-thumbs-padding-y) var(--f-thumbs-padding-x);
	overflow: hidden;
	background: var(--f-thumbs-bg);
	-webkit-tap-highlight-color: transparent;
	-webkit-user-select: none;
	-ms-user-select: none;
	user-select: none;
	transition: var(--f-thumbs-transition);
	z-index: var(--f-thumbs-z-index)
}

.f-thumbs.is-horizontal {
	max-height: calc(var(--f-carousel-slide-height) + var(--f-thumbs-padding-y)*2)
}

.f-thumbs.is-horizontal.is-hidden {
	max-height: 0;
	--f-thumbs-padding-y: 0
}

.f-thumbs.is-vertical {
	max-width: calc(var(--f-carousel-slide-width) + var(--f-thumbs-padding-x)*2)
}

.f-thumbs.is-vertical.is-hidden {
	max-width: 0;
	--f-thumbs-padding-x: 0
}

.f-thumbs.is-scrollable.is-hidden {
	max-height: 0;
	--f-thumbs-padding-y: 0
}

.f-thumbs.is-ltr {
	direction: ltr
}

.f-thumbs.is-rtl {
	direction: rtl
}

.f-thumbs img {
	display: block;
	width: var(--f-thumb-img-width);
	height: var(--f-thumb-img-height);
	-o-object-fit: var(--f-thumb-img-fit);
	object-fit: var(--f-thumb-img-fit);
	-o-object-position: var(--f-thumb-img-position);
	object-position: var(--f-thumb-img-position);
	pointer-events: none;
	border-radius: inherit;
	color: transparent
}

.f-thumbs img[data-lazy-src] {
	visibility: hidden
}

.f-thumbs img.has-lazyerror {
	display: none
}

.f-thumbs__viewport {
	box-sizing: border-box;
	height: 100%;
	padding: var(--f-thumbs-viewport-padding-y) var(--f-thumbs-viewport-padding-x);
	overflow: visible;
	display: grid
}

.f-thumbs__slide {
	position: relative;
	box-sizing: border-box;
	grid-area: 1/1;
	width: var(--f-carousel-slide-width);
	height: var(--f-carousel-slide-height);
	margin: 0;
	padding: 0;
	display: flex;
	align-items: center;
	flex-direction: column;
	cursor: pointer;
	overflow: visible
}

.f-thumbs__slide:hover button {
	opacity: var(--f-thumb-hover-opacity, 1);
	-webkit-transform: var(--f-thumb-hover-transform, none);
	transform: var(--f-thumb-hover-transform, none)
}

.f-thumbs__slide:hover button:after {
	border: var(--f-thumb-hover-border, none);
	box-shadow: var(--f-thumb-hover-shadow, var(--f-thumb-shadow))
}

.f-thumbs__slide button {
	all: unset;
	display: block;
	margin: auto;
	padding: 0;
	position: relative;
	overflow: visible;
	width: 100%;
	height: 100%;
	outline: 0;
	transition: var(--f-thumb-transition);
	border-radius: var(--f-thumb-border-radius);
	opacity: var(--f-thumb-opacity);
	-webkit-transform: var(--f-thumb-transform);
	transform: var(--f-thumb-transform);
	background: var(--f-thumb-bg)
}

.f-thumbs__slide button:after {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 1;
	transition: var(--f-thumb-border-transition);
	border-radius: inherit;
	border: var(--f-thumb-border);
	box-shadow: var(--f-thumb-shadow)
}

.f-thumbs__slide button:focus-within {
	opacity: var(--f-thumb-focus-opacity, 1);
	-webkit-transform: var(--f-thumb-focus-transform, none);
	transform: var(--f-thumb-focus-transform, none)
}

.f-thumbs__slide button:focus-within:after {
	border: var(--f-thumb-focus-border, none);
	box-shadow: var(--f-thumb-focus-shadow, var(--f-thumb-shadow))
}

.f-thumbs__slide:active {
	opacity: var(--f-thumb-active-opacity, 1);
	-webkit-transform: var(--f-thumb-active-transform, none);
	transform: var(--f-thumb-active-transform, none)
}

.f-thumbs__slide:active:after {
	border: var(--f-thumb-active-border, none);
	box-shadow: var(--f-thumb-active-shadow, var(--f-thumb-shadow))
}

.f-thumbs__slide.is-selected {
	z-index: 2
}

.f-thumbs__slide.is-selected button {
	opacity: var(--f-thumb-selected-opacity, 1);
	-webkit-transform: var(--f-thumb-selected-transform, none);
	transform: var(--f-thumb-selected-transform, none)
}

.f-thumbs__slide.is-selected button:after {
	border: var(--f-thumb-selected-border, none);
	box-shadow: var(--f-thumb-selected-shadow, var(--f-thumb-shadow))
}

.f-thumbs.is-modern {
	--f-carousel-slide-width: calc(var(--f-thumb-clip-width) + var(--f-thumbs-gap));
	--f-carousel-slide-height: var(--f-thumb-height);
	--f-carousel-gap: 0;
	--width-diff: calc((var(--f-thumb-width) - var(--f-thumb-clip-width)))
}

.f-thumbs.is-modern .f-thumbs__viewport {
	width: calc(100% + var(--f-carousel-slide-width)*2 + var(--f-thumbs-padding-x));
	margin-inline: calc((var(--f-carousel-slide-width) + var(--f-thumbs-padding-x))*-1)
}

.f-thumbs.is-modern .f-thumbs__slide {
	--clip-shift: calc((var(--width-diff) * .5) * var(--progress));
	--clip-path: inset(0 var(--clip-shift) round var(--f-thumb-border-radius, 0));
	padding: 0;
	overflow: visible;
	left: var(--shift, 0);
	will-change: left;
	transition: left var(--f-transition-duration) var(--f-transition-easing)
}

.f-thumbs.is-modern .f-thumbs__slide button {
	display: block;
	margin-inline: 50%;
	width: var(--f-thumb-width);
	clip-path: var(--clip-path);
	border: none;
	box-shadow: none;
	transition: clip-path var(--f-transition-duration) var(--f-transition-easing), opacity var(--f-thumb-transition-duration, .2s) var(--f-thumb-transition-easing, ease)
}

.f-thumbs.is-modern .f-thumbs__slide button:after {
	display: none
}

.f-thumbs.is-modern .f-thumbs__slide:focus:not(:focus-visible) {
	outline: 0
}

.f-thumbs.is-modern .f-thumbs__slide:focus-within:not(.is-selected) button:before {
	content: "";
	position: absolute;
	z-index: 1;
	top: 0;
	left: var(--clip-shift);
	bottom: 0;
	right: var(--clip-shift);
	transition: border var(--f-transition-duration) var(--f-transition-easing), box-shadow var(--f-transition-duration) var(--f-transition-easing);
	border-radius: inherit;
	border: var(--f-thumb-focus-border, none);
	box-shadow: var(--f-thumb-focus-shadow, none)
}

.f-thumbs.is-modern {
	--f-transition-duration: .25s;
	--f-transition-easing: ease-out
}

.f-thumbs.is-modern.is-syncing {
	--f-transition-duration: 0s
}

.f-thumbs.is-scrollable .f-thumbs__viewport {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(var(--f-thumb-width), 1fr));
	grid-auto-rows: var(--f-thumb-height);
	gap: var(--f-thumbs-gap);
	overflow: auto;
	-ms-scroll-chaining: none;
	overscroll-behavior: contain;
	-webkit-user-select: none;
	-ms-user-select: none;
	user-select: none
}

.f-thumbs.is-scrollable .f-thumbs__viewport .f-thumbs__slide {
	grid-area: auto;
	display: block;
	position: relative;
	max-width: 100%;
	width: var(--f-thumb-width);
	height: var(--f-thumb-height);
	cursor: pointer;
	outline: 0
}

:root {
	--f-progressbar-height: 3px;
	--f-progressbar-color: var(--f-carousel-theme-color, #575ad6);
	--f-progressbar-opacity: 1;
	--f-progressbar-z-index: 30
}

.f-progressbar {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	z-index: var(--f-progressbar-z-index);
	height: var(--f-progressbar-height);
	-webkit-transform: scaleX(0);
	transform: scaleX(0);
	-webkit-transform-origin: 0;
	transform-origin: 0;
	opacity: var(--f-progressbar-opacity);
	background: var(--f-progressbar-color);
	-webkit-user-select: none;
	-ms-user-select: none;
	user-select: none;
	pointer-events: none;
	-webkit-animation-name: f-progressbar;
	animation-name: f-progressbar;
	-webkit-animation-play-state: running;
	animation-play-state: running;
	-webkit-animation-timing-function: linear;
	animation-timing-function: linear
}

.f-progressbar:empty {
	display: block
}

button>.f-progressbar {
	--f-progressbar-height: 100%;
	--f-progressbar-opacity: .2
}

@-webkit-keyframes f-progressbar {
	0% {
		-webkit-transform: scaleX(0);
		transform: scaleX(0)
	}

	to {
		-webkit-transform: scaleX(1);
		transform: scaleX(1)
	}
}

@keyframes f-progressbar {
	0% {
		-webkit-transform: scaleX(0);
		transform: scaleX(0)
	}

	to {
		-webkit-transform: scaleX(1);
		transform: scaleX(1)
	}
}

[data-fullscreen-action=toggle] svg g:first-child {
	display: flex
}

[data-fullscreen-action=toggle] svg g:last-child {
	display: none
}

:-webkit-full-screen [data-fullscreen-action=toggle] svg g:first-child {
	display: none
}

:-ms-fullscreen [data-fullscreen-action=toggle] svg g:first-child {
	display: none
}

:fullscreen [data-fullscreen-action=toggle] svg g:first-child {
	display: none
}

:-webkit-full-screen [data-fullscreen-action=toggle] svg g:last-child {
	display: flex
}

:-ms-fullscreen [data-fullscreen-action=toggle] svg g:last-child {
	display: flex
}

:fullscreen [data-fullscreen-action=toggle] svg g:last-child {
	display: flex
}

.in-fullscreen-mode>.f-carousel {
	flex: 1;
	min-width: 0 !important;
	min-height: 0 !important
}

html.with-fancybox {
	width: auto;
	overflow: visible;
	scroll-behavior: auto
}

html.with-fancybox body.hide-scrollbar {
	width: auto;
	margin-right: calc(var(--f-body-margin, 0px) + var(--f-scrollbar-compensate, 0px));
	overflow: hidden !important;
	overscroll-behavior-y: none
}

.fancybox__dialog {
	position: fixed;
	inset: 0;
	z-index: 1050;
	width: 100%;
	height: 100vh;
	max-height: unset;
	max-width: unset;
	padding: 0;
	margin: 0;
	border: 0;
	overflow: hidden;
	background: 0 0;
	touch-action: none;
	-ms-scroll-chaining: none;
	overscroll-behavior: contain
}

.fancybox__dialog:focus {
	outline: 0
}

.fancybox__dialog::-ms-backdrop {
	opacity: 0
}

.fancybox__dialog::backdrop {
	opacity: 0
}

@supports(height:100dvh) {
	.fancybox__dialog {
		height: 100dvh
	}
}

.fancybox__dialog *:empty {
	display: block
}

.fancybox__container {
	--fancybox-color: #dbdbdb;
	--fancybox-backdrop-bg: rgba(24, 24, 27, .95);
	--f-toolbar-margin: 0;
	--f-toolbar-padding: 8px;
	--f-toolbar-gap: 0;
	--f-toolbar-color: #ddd;
	--f-toolbar-font-size: 16px;
	--f-toolbar-font-weight: 500;
	--f-toolbar-font: -apple-system, BlinkMacSystemFont, "Segoe UI Adjusted", "Segoe UI", "Liberation Sans", sans-serif;
	--f-toolbar-line-height: var(--f-button-height);
	--f-toolbar-text-shadow: 1px 1px 1px rgba(0, 0, 0, .75);
	--f-toolbar-shadow: none;
	--f-toolbar-bg: none;
	--f-counter-margin: 0;
	--f-counter-padding: 0px 10px;
	--f-counter-gap: 4px;
	--f-counter-line-height: var(--f-button-height);
	--f-carousel-gap: 17px;
	--f-carousel-slide-width: 100%;
	--f-carousel-slide-height: 100%;
	--f-carousel-slide-padding: 0;
	--f-carousel-slide-bg: unset;
	--f-html-color: #222;
	--f-html-bg: #fff;
	--f-error-color: #fff;
	--f-error-bg: #333;
	--f-caption-margin: 0;
	--f-caption-padding: 16px 8px;
	--f-caption-color: var(--fancybox-color, #dbdbdb);
	--f-caption-bg: transparent;
	--f-caption-font: inherit;
	--f-caption-line-height: 1.375;
	--f-spinner-color-1: rgba(255, 255, 255, .2);
	--f-spinner-color-2: rgba(255, 255, 255, .8);
	--f-spinner-width: 50px;
	--f-spinner-height: 50px;
	--f-spinner-border-radius: 50%;
	--f-spinner-border-width: 4px;
	--f-progressbar-color: rgba(255, 255, 255);
	--f-button-width: 46px;
	--f-button-height: 46px;
	--f-button-color: #ddd;
	--f-button-hover-color: #fff;
	--f-button-outline-width: 1px;
	--f-button-outline-color: rgba(255, 255, 255, .75);
	--f-button-outline-offset: 0px;
	--f-button-bg: rgba(54, 54, 54, .75);
	--f-button-border: 0;
	--f-button-border-radius: 0;
	--f-button-shadow: none;
	--f-button-transition: all .2s ease;
	--f-button-transform: none;
	--f-button-svg-width: 24px;
	--f-button-svg-height: 24px;
	--f-button-svg-stroke-width: 1.75;
	--f-button-svg-filter: drop-shadow(1px 1px 1px rgba(24, 24, 27, .01)), drop-shadow(1px 2px 1px rgba(24, 24, 27, .05));
	--f-button-svg-fill: none;
	--f-button-svg-disabled-opacity: .5;
	--f-arrow-pos: 32px;
	--f-arrow-width: 50px;
	--f-arrow-height: 50px;
	--f-arrow-svg-width: 24px;
	--f-arrow-svg-height: 24px;
	--f-arrow-svg-stroke-width: 2.5;
	--f-arrow-border-radius: 50%;
	--f-arrow-bg: rgba(54, 54, 54, .65);
	--f-arrow-color: #ddd;
	--f-arrow-hover-color: #fff;
	--f-close-button-width: 30px;
	--f-close-button-height: 30px;
	--f-close-button-svg-width: 24px;
	--f-close-button-svg-height: 24px;
	--f-close-button-svg-stroke-width: 1.75;
	--f-close-border-radius: 4px;
	--f-close-button-color: #fff;
	--f-close-button-hover-color: #fff;
	--f-close-button-bg: transparent;
	--f-close-button-hover-bg: transparent;
	--f-close-button-active-bg: transparent;
	--f-thumbs-margin: 0px;
	--f-thumbs-padding-x: 8px;
	--f-thumbs-padding-y: 8px;
	--f-thumbs-bg: none;
	--f-thumb-transition: all .2s ease;
	--f-thumb-width: 94px;
	--f-thumb-height: 76px;
	--f-thumb-opacity: 1;
	--f-thumb-border: none;
	--f-thumb-shadow: none;
	--f-thumb-transform: none;
	--f-thumb-focus-opacity: 1;
	--f-thumb-focus-border: none;
	--f-thumb-focus-shadow: inset 0 0 0 2px rgba(255, 255, 255, .65);
	--f-thumb-focus-transform: none;
	--f-thumb-hover-opacity: 1;
	--f-thumb-hover-border: none;
	--f-thumb-hover-transform: none;
	--f-thumb-active-opacity: var(--f-thumb-hover-opacity);
	--f-thumb-active-border: var(--f-thumb-hover-border);
	--f-thumb-active-transform: var(--f-thumb-hover-transform);
	--f-thumb-selected-opacity: 1;
	--f-thumb-selected-border: none;
	--f-thumb-selected-shadow: inset 0 0 0 2px #fff;
	--f-thumb-selected-transform: none;
	--f-scrollbar-width: 7px;
	--f-scrollbar-track-bg: #444;
	--f-scrollbar-track-border-radius: 10px;
	--f-scrollbar-track-shadow: inset 0 0 6px rgba(0, 0, 0, .2);
	--f-scrollbar-thumb-bg: #ddd;
	--f-scrollbar-thumb-border-radius: 10px
}

.fancybox__container[theme=light] {
	--fancybox-color: #222;
	--fancybox-backdrop-bg: rgba(255, 255, 255, .97);
	--f-toolbar-color: var(--fancybox-color, #222);
	--f-toolbar-text-shadow: none;
	--f-toolbar-font-weight: 400;
	--f-html-color: var(--fancybox-color, #222);
	--f-html-bg: #fff;
	--f-error-color: #555;
	--f-error-bg: #fff;
	--f-video-bg: #fff;
	--f-caption-color: #333;
	--f-spinner-color-1: rgba(0, 0, 0, .2);
	--f-spinner-color-2: rgba(0, 0, 0, .8);
	--f-spinner-border-width: 3.5px;
	--f-progressbar-color: rgba(111, 111, 116);
	--f-button-color: #333;
	--f-button-hover-color: #000;
	--f-button-outline-color: rgba(0, 0, 0, .85);
	--f-button-bg: rgba(255, 255, 255, .85);
	--f-button-svg-stroke-width: 1.3;
	--f-button-svg-filter: none;
	--f-arrow-bg: rgba(255, 255, 255, .85);
	--f-arrow-color: #333;
	--f-arrow-hover-color: #000;
	--f-arrow-svg-stroke-width: 1.3;
	--f-close-button-color: #555;
	--f-close-button-hover-color: #000;
	--f-thumb-bg: linear-gradient(#ebeff2, #e2e8f0);
	--f-thumb-focus-shadow: 0 0 0 1.8px #fff, 0px 0px 0px 2.25px #888;
	--f-thumb-selected-shadow: 0 0 0 1.8px #fff, 0px 0px 0px 2.25px #000;
	--f-scrollbar-track-bg: #ddd;
	--f-scrollbar-thumb-bg: #444
}

.fancybox__container {
	position: absolute;
	inset: 0;
	overflow: hidden;
	display: flex;
	flex-direction: column
}

.fancybox__container:focus {
	outline: 0
}

.fancybox__container.has-vertical-thumbs {
	flex-direction: row-reverse
}

.fancybox__container.has-vertical-thumbs:not(.is-closing) .fancybox__viewport {
	overflow-x: clip;
	overflow-y: visible
}

.fancybox__container .fancybox__carousel>*:not(.fancybox__viewport),
.fancybox__container .fancybox__carousel>.fancybox__viewport>.fancybox__slide.is-selected>*:not(.f-html, .f-panzoom__wrapper, .f-spinner),
.fancybox__container .fancybox__carousel>.fancybox__viewport>.fancybox__slide:not(.is-selected),
.fancybox__container>*:not(.fancybox__carousel) {
	opacity: var(--f-drag-opacity, 1)
}

.fancybox__container:not(.is-ready, .is-hiding) {
	visibility: hidden
}

.fancybox__container.is-revealing .fancybox__carousel>*:not(.fancybox__viewport),
.fancybox__container.is-revealing .fancybox__carousel>.fancybox__viewport>.fancybox__slide.is-selected>*:not(.f-html, .f-panzoom__wrapper, .f-spinner),
.fancybox__container.is-revealing .fancybox__carousel>.fancybox__viewport>.fancybox__slide:not(.is-selected),
.fancybox__container.is-revealing>*:not(.fancybox__carousel) {
	-webkit-animation: var(--f-interface-enter-duration, .35s) ease none f-fadeIn;
	animation: var(--f-interface-enter-duration, .35s) ease none f-fadeIn
}

.fancybox__container.is-hiding .fancybox__carousel>*:not(.fancybox__viewport),
.fancybox__container.is-hiding .fancybox__carousel>.fancybox__viewport>.fancybox__slide.is-selected>*:not(.f-html, .f-panzoom__wrapper),
.fancybox__container.is-hiding>*:not(.fancybox__carousel) {
	-webkit-animation: var(--f-interface-exit-duration, .35s) ease forwards f-fadeOut;
	animation: var(--f-interface-exit-duration, .35s) ease forwards f-fadeOut
}

.fancybox__container.is-hiding .fancybox__carousel .fancybox__slide:not(.is-selected) {
	opacity: 0
}

.fancybox__container.is-hiding {
	pointer-events: none
}

.fancybox__container.is-idle .f-carousel__toolbar {
	pointer-events: none;
	opacity: 0
}

.fancybox__container.is-idle .f-button.is-arrow {
	opacity: 0
}

.fancybox__container.is-idle.is-ready .f-carousel__toolbar {
	pointer-events: none;
	-webkit-animation: .15s ease-out both f-fadeOut;
	animation: .15s ease-out both f-fadeOut
}

.fancybox__container.is-idle.is-ready .f-button.is-arrow {
	-webkit-animation: .15s ease-out both f-fadeOut;
	animation: .15s ease-out both f-fadeOut
}

.fancybox__backdrop {
	position: fixed;
	inset: 0;
	z-index: -1;
	background: var(--fancybox-backdrop-bg)
}

.fancybox__carousel {
	flex: 1;
	display: flex;
	flex-direction: column;
	min-height: 0;
	min-width: 0;
	position: relative;
	z-index: 10;
	overflow-y: visible;
	overflow-x: clip
}

.fancybox__carousel.is-vertical {
	--f-carousel-slide-height: 100%
}

.fancybox__carousel.is-ltr {
	direction: ltr
}

.fancybox__carousel.is-rtl {
	direction: rtl
}

.fancybox__carousel>.f-button.is-arrow:before {
	position: absolute;
	content: "";
	inset: -30px;
	z-index: 1
}

.fancybox__viewport {
	display: grid;
	flex: 1;
	min-height: 0;
	min-width: 0;
	position: relative;
	overflow: visible;
	-webkit-transform: translate3d(0, var(--f-drag-offset, 0), 0);
	transform: translate3d(0, var(--f-drag-offset, 0), 0)
}

.fancybox__viewport.is-draggable {
	cursor: move;
	cursor: -webkit-grab;
	cursor: grab
}

.fancybox__viewport.is-dragging {
	cursor: move;
	cursor: -webkit-grabbing;
	cursor: grabbing
}

.fancybox__viewport [contenteditable],
.fancybox__viewport [data-selectable] {
	cursor: auto
}

.fancybox__slide {
	box-sizing: border-box;
	position: relative;
	grid-area: 1/1;
	display: flex;
	align-items: center;
	flex-direction: column;
	width: var(--f-carousel-slide-width);
	height: var(--f-carousel-slide-height);
	min-width: 0;
	min-height: 0;
	max-width: 100%;
	margin: 0;
	padding: var(--f-carousel-slide-padding);
	background: var(--f-carousel-slide-bg);
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	-webkit-transform: translateZ(0);
	transform: translateZ(0);
	will-change: transform
}

.fancybox__slide:after,
.fancybox__slide:before {
	display: block;
	content: ""
}

.fancybox__slide:before {
	margin-bottom: auto
}

.fancybox__slide:after {
	margin-top: auto
}

.fancybox__slide.is-selected {
	z-index: 1
}

.fancybox__slide.f-zoomable {
	overflow: visible
}

.fancybox__slide.has-error {
	--f-html-color: var(--f-error-color, --f-html-color);
	--f-html-bg: var(--f-error-bg, --f-html-bg)
}

.fancybox__slide.has-html {
	overflow: auto;
	padding: 8px
}

.fancybox__slide.has-iframe {
	overflow: hidden;
	padding: 8px 0
}

.fancybox__slide.has-close-btn {
	padding-top: 34px
}

.fancybox__slide.has-controls:before {
	margin: 0
}

.fancybox__slide .f-spinner {
	cursor: pointer
}

.fancybox__container.is-closing .f-caption,
.fancybox__slide.is-loading .f-caption {
	visibility: hidden
}

.fancybox__container.is-closing .fancybox__carousel {
	overflow: visible
}

.f-button.is-close-button {
	--f-button-width: var(--f-close-button-width);
	--f-button-height: var(--f-close-button-height);
	--f-button-border-radius: var(--f-close-border-radius);
	--f-button-color: var(--f-close-button-color);
	--f-button-hover-color: var(--f-close-button-hover-color);
	--f-button-bg: var(--f-close-button-bg);
	--f-button-hover-bg: var(--f-close-button-hover-bg);
	--f-button-active-bg: var(--f-close-button-active-bg);
	--f-button-svg-width: var(--f-close-button-svg-width);
	--f-button-svg-height: var(--f-close-button-svg-height);
	--f-button-svg-stroke-width: var(--f-close-button-svg-stroke-width);
	position: absolute;
	top: calc((var(--f-button-height) + 2px)*-1);
	right: 0;
	z-index: 10
}

.is-loading .f-button.is-close-button {
	visibility: hidden
}

.fancybox__thumbs {
	flex: 0 1 100%
}

.fancybox__thumbs.is-scrollable {
	--f-thumbs-cols: 1;
	--f-thumbs-gap: 8px;
	--f-thumbs-transition: none;
	--f-thumbs-padding-x: 4px;
	--f-thumbs-padding-y: 8px;
	--f-thumbs-viewport-padding-x: 4px;
	--f-thumbs-viewport-padding-y: 0px;
	max-width: calc(var(--f-thumb-width)*var(--f-thumbs-cols) + var(--f-thumbs-gap)*(var(--f-thumbs-cols) - 1) + var(--f-thumbs-padding-x)*2 + var(--f-thumbs-viewport-padding-x)*2)
}

.fancybox__thumbs.is-scrollable ::-webkit-scrollbar {
	width: var(--f-scrollbar-width)
}

.fancybox__thumbs.is-scrollable ::-webkit-scrollbar-track {
	background: var(--f-scrollbar-track-bg);
	border-radius: var(--f-scrollbar-track-border-radius);
	box-shadow: var(--f-scrollbar-track-shadow)
}

.fancybox__thumbs.is-scrollable ::-webkit-scrollbar-thumb {
	background: var(--f-scrollbar-thumb-bg);
	border-radius: var(--f-scrollbar-thumb-border-radius)
}

.fancybox__thumbs.is-scrollable.is-hidden {
	max-width: 0;
	--f-thumbs-padding-x: 0;
	max-height: unset;
	--f-thumbs-padding-y: unset
}

.fancybox__thumbs.is-scrollable .f-thumbs__viewport {
	overflow-x: hidden !important;
	grid-template-columns: repeat(auto-fill, calc((100% - var(--f-thumbs-gap) * (var(--f-thumbs-cols) - 1))/ var(--f-thumbs-cols))) !important
}