/* Fonts */

@font-face {
	font-family: 'Angst'; 
	src: url('../fonts/Angst-Normal.woff2') format('woff2'); 
	font-weight: 400; 
	font-style: normal;
	font-display: swap;
}
@font-face {
	font-family: 'Angst'; 
	src: url('../fonts/Angst-Bold.woff2') format('woff2'); 
	font-weight: 700; 
	font-style: normal;
	font-display: swap;
} 
@font-face {
	font-family: 'Gilroy'; 
	src: url('../fonts/Gilroy-Semibold.woff2') format('woff2'); 
	font-weight: 600; 
	font-style: normal;
	font-display: swap;
} 
@font-face {
	font-family: 'Gilroy'; 
	src: url('../fonts/Gilroy-Medium.woff2') format('woff2'); 
	font-weight: 500; 
	font-style: normal;
	font-display: swap;
} 
@font-face {
	font-family: 'Allegretto Script One'; 
	src: url('../fonts/allegrettoscriptone.woff2') format('woff2'); 
	font-weight: 400; 
	font-style: normal;
	font-display: swap;
} 
@font-face {
	font-family: 'Sweet Mavka Script'; 
	src: url('../fonts/SweetMavkaScript_500.woff2') format('woff2'); 
	font-weight: 500; 
	font-style: normal;
	font-display: swap;
} 




/* Reset */

* {padding: 0;	margin: 0; -webkit-tap-highlight-color: transparent;}
*, *:before, *:after {
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
}
:focus, :active, a:focus, a:active {outline: none;}

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block;
}
html, body {
	width: 100%;
	min-height: 100%;
	font-size: 100%;
	line-height: normal;
	text-size-adjust: none;
	-webkit-text-size-adjust: none;
	-moz-text-size-adjust: none;
}

input, button, textarea, select {
	font-family: inherit;
	background: none;
	border-radius: 0;
	appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none;
}
input::placeholder, textarea::placeholder {opacity: 1;}
input::-ms-clear {display: none;}
button::-moz-focus-inner {padding: 0; border: 0;}
button, .button, input[type="button"], input[type=submit] {cursor: pointer;}
button[disabled], input[disabled] {cursor: default;}
input[type="search"]::-webkit-search-decoration,
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-results-button,
input[type="search"]::-webkit-search-results-decoration {display: none;}
input[type="number"]::-webkit-outer-spin-button,
input[type="number"]::-webkit-inner-spin-button {-webkit-appearance: none;}
input[type="number"] {-moz-appearance: textfield;}

a, a:hover, a:visited {text-decoration: none;}
img {vertical-align: top; max-width: 100%;}

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

ol, ul {list-style: none;}

table {border-collapse: collapse; border-spacing: 0;}
th {font-weight: inherit;}

.scroll-disable {overflow: hidden; touch-action: none;}
.scroll-disable body, .scroll-disable .header {padding-right: var(--scrollbar-width);}





/* Global */	

:root {
	--main-family: "Angst", sans-serif;
	--second-family: "Gilroy", sans-serif;
	--third-family: "Sweet Mavka Script", sans-serif;
	--other-family: "Allegretto Script One", sans-serif;

	--white: #FFFFFF;
	--black: #000000;
	--lightblack: #313539;
	--darkgray: #6a6a6a;
	--gray: #828385;
	--lightgray: #aaaaaa;
	--brown: #a2835d;
	--lightbrown: #c0a17b;
	--darkbrown: #84653f;
	--cream: #faf8f5;
	--beige: #efece8;

	--max-width: 1500px;
	--min-width: 360px;
	--adaptive: ((100vw - 360px) / (1500 - 360));

	--section-padding: clamp(16px, 16px + (60 - 16) * var(--adaptive), 60px);
	--section-margin: clamp(60px, 60px + (160 - 60) * var(--adaptive), 160px);

	--header-height: clamp(92px, 92px + (122 - 92) * var(--adaptive), 122px);
	--logo-size: clamp(156px, 156px + (222 - 156) * var(--adaptive), 222px);

	--title-size: clamp(24px, 24px + (80 - 24) * var(--adaptive), 80px);
	--subtitle-size: clamp(15px, 15px + (30 - 15) * var(--adaptive), 30px);
	--text-size: clamp(16px, 16px + (18 - 16) * var(--adaptive), 18px);

	--photoslides-height: clamp(100px, 100px + (300 - 100) * var(--adaptive), 300px);

	--transition: 0.3s;
}

html, body {
	min-width: var(--min-width);
}

body {
	font-family: var(--main-family);
	font-weight: 400;
	font-size: var(--text-size);
	line-height: 1.1;
	color: var(--lightblack);
	background: var(--cream); 
	position: relative;
}

body > section {
	margin-bottom: var(--section-margin);
	position: relative;
}
header + section {
	padding-top: calc(var(--header-height) + 30px);
}

.frame {
	--frame-padding: clamp(34px, 34px + (100 - 34) * var(--adaptive), 100px);

	padding-top: var(--frame-padding);
	padding-bottom: var(--frame-padding);
}
.frame::before,
.frame::after {
	content:'';
	display: block;
	position: absolute;
	left: 0;
	right: 0;
	height: 108px;
	z-index: 10;
}
.frame::before {
	top: 0;
	transform: translateY(-50%);
	background: url(/images//section-frame.svg) center / contain repeat-x,
	linear-gradient(0deg, transparent 0%, transparent 50%, var(--cream) 50%, var(--cream) 100%);
}
.frame::after {
	bottom: 0;
	transform: translateY(50%);
	background: url(/images//section-frame.svg) center / contain repeat-x,
	linear-gradient(180deg, transparent 0%, transparent 46%, var(--cream) 46%, var(--cream) 100%);
}

.container, [class$="container"] {
	max-width: var(--max-width);
	padding: 0 var(--section-padding);
	margin: 0 auto;
	position: relative;
}

.title {
	font-size: var(--title-size);
	line-height: 1;
	display: block;
	text-transform: uppercase;
	margin-bottom: 0.4em;
}
h1.title {
	max-width: 13.5em;
}
h2.title span {
	color: var(--lightblack);
}
h2.title,
h1.title span {
	color: var(--brown);
}

a, a:before, button {
	transition: var(--transition);
}

.cover {
	object-fit: cover;
	object-position: center;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
.contain {
	object-fit: contain;
	object-position: center;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.button {
	--button-font-size: clamp(18px, 18px + (24 - 18) * var(--adaptive), 24px);
           
	display: flex;
	align-items: center;
	justify-content: center;
	width: fit-content;
	padding: 0.833em 1.333em;
	border: none;
	background: var(--brown);
	color: var(--white);
	font-weight: 700;
	font-size: var(--button-font-size);
	text-transform: uppercase;
}
@media (hover: hover) {
	.button:hover {
		background: var(--lightbrown);
	}
}
.button:active {
	transform: scale(0.95);
	background: var(--darkbrown);
}

@media (max-width: 400px) {
	.button {
		width: 100%;
	}
}





/* Preloader */

.preloader {
	position: fixed;
	inset: 0;
	z-index: 10000;
	background: var(--cream);
	opacity: 0;
	visibility: hidden;
	transition: opacity 1s ease 0.5s, visibility 1s ease 0.5s;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	will-change: opacity, visibility;
}
.preloader_active {
	opacity: 1;
	visibility: visible;
}
.preloader__logo {
	display: block;
	background: url(/images//logo.svg) center / contain no-repeat;
	width: 223px;
	height: 74px;
	margin: 0 0 42px;
	will-change: transform, opacity;
	opacity: 0;
	transform: translate3d(0, -6px, 0);
	transition: 1.5s ease 0.5s;
}
.preloader_active .preloader__logo {
	opacity: 1;
	transform: translate3d(0, 0, 0);
}

.preloader__logo_en {
	display: block;
	background: url(/images//logo-en.svg) center / contain no-repeat;
	width: 223px;
	height: 74px;
	margin: 0 0 42px;
	will-change: transform, opacity;
	opacity: 0;
	transform: translate3d(0, -6px, 0);
	transition: 1.5s ease 0.5s;
}
.preloader_active .preloader__logo_en {
	opacity: 1;
	transform: translate3d(0, 0, 0);
}



.preloader__progressbar {
	width: 0;
	height: 1px;
	background-color: #6a6a6a;
	animation: line-animation 2.5s infinite;
	will-change: transform, opacity;
	transition: 1s ease 0.3s;
}
.preloader_active .preloader__progressbar {
	opacity: 1;
}
@keyframes line-animation {
	0% {width: 0;}
	100% {width: 400px; opacity: 0;}
}

.preloader__text {
	font-family: Arial, Helvetica, sans-serif;
	color: var(--lightblack);
	letter-spacing: 0.02em;
	text-transform: uppercase;
	text-align: center;
	opacity: 0.7;
	margin: 36px 0 0 0;
	animation: pulse 1s infinite;
}
@keyframes pulse {
	0% {transform: scale(1);}
	50% {transform: scale(1.03);}
	100% {transform: scale(1);}
}





/* Header */

.header {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	z-index: 100;
	transition: transform 0.5s, background-color 0.5s, box-shadow 0.5s;
}
.header_fixed {
	position: fixed;
	background-color: var(--cream);
	box-shadow: 0 0 10px rgba(0,0,0,0.2);
}
.header_hide {
	transform: translateY(-110%);
}
.header__container {
	height: var(--header-height);
	display: flex;
	justify-content: space-between;
	align-items: center;
	position: relative;
}
.header__logo {
	width: var(--logo-size);
	flex-shrink: 0;
}
.nav {
	display: flex;
	flex-wrap: wrap;
	gap: 8px 24px;
}
.nav__link {
	color: var(--lightblack);
	text-transform: uppercase;
	position: relative;
	padding: 4px 0;
}
.nav__link::before {
	content:'';
	display: block;
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	height: 1px;
	background: var(--brown);
	transform: scale(0);
	transition: var(--transition);
}
@media (hover: hover) {
	.nav__link:hover {
		color: var(--brown);
	}
	.nav__link:hover:before {
		transform: scale(1);
	}
}

@media (max-width: 1200px) {
	.header__nav {
		display: none;
	}
}
@media (max-width: 500px) {
	.header__container::before {
		content:'';
		display: block;
		position: absolute;
		bottom: 0;
		left: var(--section-padding);
		right: var(--section-padding);
		height: 1px;
		background: var(--lightblack);
		opacity: 0.2;
	}
	.header_fixed .header__container::before {
		display: none;
	}
}





/* Burger */

.burger {
	--burger-padding: 7px;
	--burger-width: 34px;
	--burger-height: 24px;
	--burger-bg: none;
	--burger-color: var(--lightblack);
	--burger-line-width: 2px;
	--burger-line-radius: 0px;

	padding: var(--burger-padding);
	margin: calc(var(--burger-padding) * -1);
	background: var(--burger-bg);
	border: none;
	transition: var(--transition);
	position: relative;
	z-index: 2;
}
.burger__icon {
	display: block;
	width: var(--burger-width);
	height: var(--burger-height);
	position: relative;
}
.burger__line {
	display: block;
	background: var(--burger-color);
	height: var(--burger-line-width);
	border-radius: var(--burger-line-radius);
	position: absolute;
	width: 100%;
}
.burger__line_1 {top: 0;}
.burger__line_2 {top: 50%; transform: translateY(-50%);}
.burger__line_3 {bottom: 0;}

.burger__line {
	transition-duration: 0.2s;
	transition-property: transform, top, bottom, opacity;
	transition-delay: 0s, 0.1s, 0.1s, 0s;
}
.burger__icon_close .burger__line {
	transition-duration: 0.2s;
	transition-property: transform, top, bottom, opacity, width, margin;
	transition-delay: 0.1s, 0s, 0s, 0s, 0.1s, 0.1s;
}
.burger__icon_close .burger__line_1 {
	top: 50%;
	transform: translateY(-50%) rotate(45deg);
	width: 120%;
	margin: 0 -10%;
}
.burger__icon_close .burger__line_2 {
	opacity: 0;
}
.burger__icon_close .burger__line_3 {
	bottom: 50%;
	transform: translateY(50%) rotate(-45deg);
	width: 120%;
	margin: 0 -10%;
}

@media (hover: hover) {
	.burger:hover {
		opacity: 0.65;
	}
}




/* Menu */

.menu {
	--menu-padding: 40px;
	--menu-font-size: clamp(26px, 26px + (40 - 26) * var(--adaptive), 40px);

	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100vh;
	padding-top: var(--menu-padding);
	padding-bottom: calc(100vh - 100svh + var(--menu-padding));
	padding-left: var(--section-padding);
	padding-right: var(--section-padding);
	background: rgba(255, 247, 235, 0.6);
	backdrop-filter: blur(30px);
	overflow: auto;
	display: flex;
	opacity: 0;
	pointer-events: none;
	transition: opacity 0.3s;
	z-index: 1;
}
.menu__body {
	width: 100%;
	display: grid;
	justify-items: center;
	margin: auto;
	font-size: var(--menu-font-size);
	grid-gap: 0.4em;
}
.menu__link {
	color: var(--lightblack);
	display: block;
	text-align: center;
	position: relative;
	padding: 0.1em 0;
}
.menu__link::before {
	content:'';
	display: block;
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	height: 1px;
	background: var(--brown);
	transform: scale(0);
	transition: var(--transition);
}
@media (hover: hover) {
	.menu__link:hover {
		color: var(--brown);
		transition-delay: 0s!important;
	}
	.menu__link:hover:before {
		transform: scale(1);
	}
}
.menu_open {
	opacity: 1;
	pointer-events: all;
	transition: opacity 0.5s;
}
.menu .menu__link {
	transition: 0.2s 0s; 
	transform: translateX(-150px); 
	opacity: 0;
}
.menu_open .menu__link {
	transition: 0.4s 0.2s; 
	transform: translateX(0); 
	opacity: 1;
}
.menu_open .menu__link:nth-child(1) {
	transition-delay: 0.2s;
}
.menu_open .menu__link:nth-child(2) {
	transition-delay: 0.3s;
}
.menu_open .menu__link:nth-child(3) {
	transition-delay: 0.4s;
}
.menu_open .menu__link:nth-child(4) {
	transition-delay: 0.5s;
}
.menu_open .menu__link:nth-child(5) {
	transition-delay: 0.6s;
}
.menu_open .menu__link:nth-child(6) {
	transition-delay: 0.7s;
}




/* Main */

.main {
	--title-size: clamp(28px, 28px + (90 - 28) * var(--adaptive), 90px);
	--list-font-size: clamp(24px, 24px + (48 - 24) * var(--adaptive), 48px);

	background: url(/images//main-bg.jpg) top center / cover no-repeat;
	margin-bottom: 0;
}
.main__content {
	display: grid;
	grid-template-columns: 1fr auto;
	gap: calc(var(--title-size) / 1.125) 0;
	margin-bottom: 60px;
}
.main__title {
	font-size: var(--title-size);
	margin-bottom: 0;
	margin-right: -150px;
	max-width: 11.711em;
}
.main__button {
	align-self: end;
	white-space: nowrap;
	margin-bottom: calc(var(--title-size) / 6);
}
.main__list {
	grid-column: 1/-1;
	font-weight: 700;
	font-size: var(--list-font-size);
	line-height: 1.1;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
}
.main__list::before,
.main__list::after {
	content:'';
	display: block;
	width: 0.333em;
	height: 0.333em;
	border-radius: 100%;
	background: var(--lightblack);
	flex-shrink: 0;
}
.main__list li {
	white-space: nowrap;
}
.main__list li:first-child {
	order: -1;
}
.main__list li:last-child {
	order: 3;
}

.main__photoslides {
	height: var(--photoslides-height);
	opacity: 0.65;
	overflow: hidden;
}
.main__photoslides-image {
	height: 100%;
	width: auto;
	max-width: unset;
	margin-left: -1800px;
	transition: 0.1s;
}

@media (max-width: 1000px) {
	.main {
		--list-font-size: clamp(24px, 24px + (38 - 24) * var(--adaptive), 38px);
	}
	.main__content {
		grid-template-columns: 1fr;
		justify-items: center;
	}
	.main__title {
		margin: 0;
		text-align: center;
	}
	.main__button {
		order: 3;
	}
}
@media (max-width: 767px) {
	.main__list {
		flex-direction: column;
	}
	.main__photoslides-image {
		margin-left: -500px;
	}
}




/* Author */

.author {
	--section-margin-top: clamp(30px, 30px + (70 - 30) * var(--adaptive), 70px);
	--note-font-size: clamp(8px, 8px + (14 - 8) * var(--adaptive), 14px);
	--text-font-size: clamp(28px, 28px + (78 - 28) * var(--adaptive), 78px);
	--caption-font-size: clamp(16px, 16px + (44 - 16) * var(--adaptive), 44px);

	background: url(/images//author-bg.png) center / auto 100% repeat-x;
	position: relative;
	margin-top: calc(var(--section-margin-top) * -1);
	padding-bottom: calc(var(--section-margin-top) * 1.45);
	overflow: hidden;
}
.author::before,
.author::after {
	content:'';
	display: block;
	position: absolute;
	top: 0;
	height: 100%;
	aspect-ratio: 500 / 770;
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	mix-blend-mode: darken;
}
.author::before {
	left: 0;
	background-image: url(/images//author-bg-left_2x.png);
	background-image: image-set(url(/images//author-bg-left.png) 1x, url(/images//author-bg-left_2x.png) 2x);
}
.author::after {
	right: 0;
	background-image: url(/images//author-bg-right_2x.png);
	background-image: image-set(url(/images//author-bg-right.png) 1x, url(/images//author-bg-right_2x.png) 2x);
}

.author__note {
	font-size: var(--note-font-size);
	text-transform: uppercase;
	max-width: 28.5em;
	padding-top: var(--section-margin-top);
	margin-left: auto;
}

.author__container {
	display: grid;
	grid-template-columns: 1fr 2.3fr;
	align-items: center;
	grid-gap: 10px 5%;
}
.author__photo {
	position: relative;
	aspect-ratio: 396 / 567;
	filter: drop-shadow(-18px 17px 40px rgba(0, 0, 0, 0.25));
}
.author__text {
	font-family: var(--other-family);
	font-size: var(--text-font-size);
	line-height: 0.9;
	margin-bottom: 0.6em;
}
.author__name {
	font-size: var(--caption-font-size);
	text-transform: uppercase;
	text-align: right;
	color: var(--brown);
	padding-right: 15%;
}

@media (max-width: 500px) {
	.author::before {
		left: auto;
		right: 60%;
	}
	.author::after {
		right: auto;
		left: 60%;
	}
	.author__note {
		text-align: center;
		margin-right: auto;
		margin-bottom: 15px;
	}
	.author__container {
		grid-template-columns: 1fr;
		justify-items: center;
	}
	.author__photo {
		width: 50%;
		transform: none!important;
	}
	.author__text {
		text-align: center;
	}
	.author__name {
		text-align: center;
		padding: 0;
	}
}




/* Video */

.video {
	overflow: hidden;
	padding-bottom: min(5vw, 70px);
}
.video__title {
	margin-bottom: 0.375em;
}
.video__wrapper {
	padding: 70px;
	margin: -70px;
}
.video__body {
	width: 100%;
	aspect-ratio: 1360 / 726;
	position: relative;
	border-radius: var(--border-radius);
}
.video__body::before {
	content:'';
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-49.5%,-49%);
	width: 108.5%;
	height: 120%;
	background: url(/images//video-frame.svg) center / contain no-repeat;
	z-index: 2;
	pointer-events: none;
}
.video__pause {
	position: absolute;
	inset: 0;
	cursor: default;
	display: none;
}
.video__play {
	width: 7%;
	min-width: 55px;
	aspect-ratio: 1;
	background: url(/images//video-play.svg) center / contain no-repeat;
	border: none;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	transition: 0.5s;
	opacity: 0.6;
}
@media (hover: hover) {
	.video__play:hover {
		transform: translate(-50%,-50%) scale(1.1);
		opacity: 1;
	}
}





/* Support */

.support {
	--text-font-size: clamp(16px, 16px + (20 - 16) * var(--adaptive), 20px);
}
.support::before {
	content: '';
	display: block;
	width: clamp(200px, 40vw, 785px);
	aspect-ratio: 785 / 1090;
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	background-image: url(/images//suppot-bg_2x.jpg);
	background-image: image-set(url(/images//suppot-bg.jpg) 1x, url(/images//suppot-bg_2x.jpg) 2x);
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	mix-blend-mode: darken;
}
.support__list {
	display: grid;
	grid-template-columns: repeat(2, 1fr) 0.5fr;
	grid-gap: 20px 4.35%;
}
.support__item {
	max-width: 467px;
	text-align: center;
}
.support__text {
	font-size: var(--text-font-size);
	line-height: 1.5;
	text-transform: uppercase;
	max-width: 23.35em;
	margin: 0 auto;
	margin-top: 1.6em;
}

@media (max-width: 700px) {
	.support::before {
		display: none;
	}
	.support__list {
		grid-template-columns: repeat(2, 1fr);
	}
}
@media (max-width: 500px) {
	.support__list {
		grid-template-columns: 1fr;
	}
	.support__image {
		width: 60%;
	}
	.support__text {
		margin-top: 1em;
	}
}




/* About */

.about {
	--text-font-size: clamp(16px, 16px + (36 - 16) * var(--adaptive), 36px);

	overflow: hidden;
}
.about::before,
.about::after {
	content:'';
	display: block;
	position: absolute;
}
.about::before {
	width: min(2.8vw, 42px);
	aspect-ratio: 45 / 66;
	background: url(/images//about-decor.svg) center / contain no-repeat;
	top: calc(var(--title-size) * 2);
	left: max(1px, calc((100vw - 1380px) / 7));
	transform: translateY(var(--about-offset-up, 0px)) rotate(var(--about-rotate-left, 0deg));
}
.about::after {
	width: min(6.933vw, 104px);
	aspect-ratio: 104 / 176;
	background: url(/images//stylus.svg) center / contain no-repeat;
	bottom: 0;
	right: max(1px, calc((100vw - 1380px) / 7));
	transform: translateY(var(--about-offset-down, 0px)) rotate(var(--about-rotate-right, 0deg));
}
.about__text {
	font-size: var(--text-font-size);
	text-transform: uppercase;
	margin-bottom: 1em;
	max-width: 33em;
}
.about__text span {
	color: var(--brown);
}
.about__image {
	mix-blend-mode: darken;
}

@media (max-width: 1500px) {
	.about::after {
		right: -2%;
	}
}




/* Faresat */

.fareast {
	background-image: url(/images//fareast-bg_2x.jpg);
	background-image: image-set(url(/images//fareast-bg.jpg) 1x, url(/images//fareast-bg_2x.jpg) 2x);
	background-position: top center;
	background-repeat: no-repeat;
	background-size: cover;
	overflow: hidden;
	padding-top: 0;
	padding-bottom: min(37vw, 710px);
}
.fareast__container {
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	position: relative;
	width: fit-content;
}
.fareast__title {
	margin-top: 1.3em;
}
.fareast__text {
	font-size: var(--subtitle-size);
	line-height: 1.34;
	max-width: 30.667em;
}
.fareast__text b {
	font-weight: 700;
}

.fareast__image {
	position: absolute;
}
.fareast__image img {
	width: 100%;
}
.fareast__image_letter {
	width: min(20.156vw, 387px);
	aspect-ratio: 387 / 553;
	top: 10%;
	left: 98%;
	z-index: 1;
}
.fareast__image_letter img {
	box-shadow: 7px 9px 40px 0 rgba(0, 0, 0, 0.25);
	transform: rotate(4deg);
}
.fareast__image_animals {
	width: min(23.854vw, 458px);
	aspect-ratio: 458 / 419;
	top: 95%;
	right: 95%;
	z-index: 1;
}
.fareast__image_animals img {
	box-shadow: -10px 11px 40px 0 rgba(0, 0, 0, 0.25);
	transform: rotate(6deg);
}
.fareast__image_photo {
	width: min(28.906vw, 555px);
	aspect-ratio: 555 / 380;
	bottom: 0;
	right: 52%;
	z-index: 2;
}
.fareast__image_photo img {
	transform: rotate(8deg);
}
.fareast__image_pic1 {
	width: min(30.156vw, 579px);
	aspect-ratio: 579 / 368;
	top: 115%;
	left: 37%;
	z-index: 3;
}
.fareast__image_pic1 img {
	box-shadow: 7px 8px 40px 0 rgba(0, 0, 0, 0.25);
	transform: rotate(-2deg);
}
.fareast__image_pic2 {
	width: min(28.698vw, 551px);
	aspect-ratio: 551 / 350;
	bottom: 0;
	left: 66%;
	z-index: 2;
}
.fareast__image_pic2 img {
	box-shadow: 7px 9px 40px 0 rgba(0, 0, 0, 0.25);
	transform: rotate(-5deg);
}

@media (max-width: 1000px) {
	.fareast__image_animals {
		top: 100%;
		right: 80%;
	}
	.fareast__image_letter {
		top: 70%;
		left: 95%;
	}
}
@media (max-width: 500px) {
	.fareast {
		padding-bottom: min(50vw, 710px);
	}
	.fareast__image {
		zoom: 1.1;
	}
	.fareast__image_letter {
		top: 105%;
		left: 80%;
	}
	.fareast__image_animals {
		top: 105%;
		right: 75%;
	}
	.fareast__image_photo {
		bottom: 2%;
	}
	.fareast__image_pic2 {
		left: 60%;
	}
}




/* Books */

.books {
	--booktitle-font-size: clamp(16px, 16px + (24 - 16) * var(--adaptive), 24px);
	--author-font-size: clamp(14px, 14px + (20 - 14) * var(--adaptive), 20px);
}
.books__decor {
	position: absolute;
	inset: 0;
	overflow: hidden;
	pointer-events: none;
}
.books__decor::before,
.books__decor::after {
	content:'';
	display: block;
	position: absolute;
}
.books__decor::before {
	width: min(4.167vw, 80px);
	aspect-ratio: 80 / 92;
	background: url(/images//books-decor1.svg) center / contain no-repeat;
	top: calc(var(--title-size) * 2);
	left: max(1px, calc((100vw - 1380px) / 7));
	transform: translateY(var(--books-offset-up, 0px)) rotate(var(--books-rotate-left, 0deg));
}
.books__decor::after {
	width: min(5.365vw, 103px);
	aspect-ratio: 103 / 64;
	background: url(/images//books-decor2.svg) center / contain no-repeat;
	bottom: 0%;
	right: calc((100vw - 1380px) / 7);
	right: max(1px, calc((100vw - 1380px) / 7));
	transform: translateY(var(--books-offset-down, 0px)) rotate(var(--books-rotate-right, 0deg));
}
.books__text {
	font-size: var(--subtitle-size);
	line-height: 1.1;
	margin-bottom: 1.6em;
	max-width: 36.867em;
}
.books__list {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	grid-gap: 20px;
}
.books__image {
	margin-bottom: 16px;
}
.books__caption {
	font-size: var(--author-font-size);
}
.books__caption b {
	display: block;
	font-weight: 400;
	font-size: var(--booktitle-font-size);
	color: var(--brown);
	margin-bottom: 0.3em;
}

@media (max-width: 500px) {
	.books__list {
		grid-template-columns: repeat(2, 1fr);
	}
}




/* Nominations */

.nominations {
	--caption-font-size: clamp(18px, 18px + (27 - 18) * var(--adaptive), 27px);
	--desc-font-size: clamp(14px, 14px + (20 - 14) * var(--adaptive), 20px);

	background-image: url(/images//nominations-bg_2x.jpg);
	background-image: image-set(url(/images//nominations-bg.jpg) 1x, url(/images//nominations-bg_2x.jpg) 2x);
	background-position: top center;
	background-repeat: no-repeat;
	background-size: cover;
	padding-bottom: calc(var(--frame-padding) * 1.5);
	overflow: hidden;
}
.nominations_extended {
	background-image: url(/images//nominations-bg2_2x.jpg);
	background-image: image-set(url(/images//nominations-bg2.jpg) 1x, url(/images//nominations-bg2_2x.jpg) 2x);
}
.nominations__title {
	text-align: center;
}
.nominations__text {
	text-align: center;
	font-size: var(--subtitle-size);
	max-width: 27.333em;
	margin: 0 auto 2.133em;
}
.nominations__list {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	grid-gap: 8%;
}
.nominations__item {
	position: relative;
}
.nominations__item:nth-child(2) {
	z-index: 2;
}
.nominations__image {
	width: 100%;
	aspect-ratio: 390 / 560;
	position: relative;
	perspective: 1000px;
}
.nominations__award {
	position: absolute;
	inset: 0;
	transition: 1s;
	backface-visibility: hidden;
	pointer-events: none;
}
.nominations__award_back {
  transform: rotateY(180deg);
}
.nominations__image:hover .nominations__award_front {
	transform: rotateY(180deg);
}
.nominations__image:hover .nominations__award_back {
	transform: rotateY(360deg);
}

.nominations__names {
	font-weight: 700;
	font-size: calc(var(--text-size) * 1.3);
	text-align: center;
	margin-top: 0.75em;
	display: grid;
	grid-gap: 0.2em;
}
.nominations__names span {
	font-size: 0.833em;
	color: var(--gray);
	text-align: center;
	display: block;
}

.nominations__caption {
	font-weight: 700;
	font-size: var(--caption-font-size);
	line-height: 1.4;
	color: var(--brown);
	text-align: center;
	margin-top: 1em;
	margin-bottom: 0.4em;
}
.nominations__desc {
	font-weight: 700;
	font-size: var(--desc-font-size);
	line-height: 1.4;
	text-align: center;
}

@media (max-width: 500px) {
	.nominations__list {
		display: block;
	}
	.nominations__item {
		width: 55%;
	}
	.nominations__item:nth-child(2) {
		margin-left: auto;
		margin-top: -25%;
		margin-bottom: -25%;
		z-index: unset;
	}
	.nominations_extended .nominations__item {
		width: 100%;
		margin: 0 auto;
		position: static;
		transform: none!important;
	}
	.nominations_extended .nominations__item:nth-child(2) {
		margin: 24px auto;
	}
	.nominations_extended .nominations__image {
		width: 55%;
		margin: 0 auto;
	}
	.nominations__names {
		font-size: calc(var(--text-size) * 1.2);
	}
}



/* Calendar */

.calendar {
	--item-padding: clamp(16px, 16px + (24 - 16) * var(--adaptive), 24px);
	--date-font-size: clamp(15px, 15px + (20 - 15) * var(--adaptive), 20px);
	--day-font-size: clamp(42px, 42px + (72 - 42) * var(--adaptive), 72px);
	--text-font-size: clamp(16px, 16px + (26 - 16) * var(--adaptive), 26px);

}
.calendar__item {
	padding: var(--item-padding);
	background: var(--beige);
	display: grid;
	grid-template-columns: auto 1fr;
	align-items: center;
	grid-gap: var(--item-padding);
	margin-bottom: var(--item-padding);
	transition: var(--transition);
}
.calendar__date {
	font-size: var(--date-font-size);
}
.calendar__date span {
	font-weight: 700;
	font-size: var(--day-font-size);
	color: var(--brown);
	display: block;
	transition: var(--transition);
}
.calendar__text {
	justify-self: center;
	font-weight: 700;
	font-size: var(--text-font-size);
}
@media (hover: hover) {
	.calendar__item:hover {
		background: var(--brown);
		color: var(--white);
	}
	.calendar__item:hover span {
		color: var(--white);
	}
}

.calendar__bg {
	position: absolute;
	left: 0;
	right: 0;
	top: calc(var(--photoslides-height) * -0.15);
	height: calc(var(--photoslides-height) * 2.4);
	display: flex;
	align-items: flex-end;
	overflow: hidden;
	z-index: -1;
}
.calendar__bg::before {
	content: '';
	position: absolute;
	inset: 0;
	background: linear-gradient(90deg, var(--cream) 0%, transparent 100%);
	z-index: 2;
}
.calendar__photoslides {
	height: var(--photoslides-height);
	opacity: 0.65;
	transform: rotate(-12deg);
	transform-origin: bottom left;
}
.calendar__photoslides-image {
	height: 100%;
	width: auto;
	max-width: unset;
	margin-left: -1800px;
	transition: 0.1s;
}

@media (max-width: 767px) {
	.calendar__photoslides-image {
		margin-left: -500px;
	}
}
@media (max-width: 500px) {
	.calendar__item {
		display: block;
	}
	.calendar__date {
		display: flex;
		align-items: center;
		gap: 0.7em;
		margin-bottom: 0.5em;
	}
}




/* Tabs */

.tabs {
	--link-font-size: clamp(14px, 14px + (24 - 14) * var(--adaptive), 24px);
	--link-gap: clamp(1px, 1px + (20 - 1) * var(--adaptive), 20px);
	--subtabs-margin: clamp(10px, 10px + (24 - 10) * var(--adaptive), 24px);
}
.tabs__nav {
	display: flex;
	gap: var(--link-gap);
	overflow-x: auto;
	scrollbar-width: none;
}
.tabs__nav::-webkit-scrollbar {
	appearance: none;
	-webkit-appearance: none;
	width: 0;
	height: 0;
}
.tabs__link {
	font-size: var(--link-font-size);
	color: var(--lightblack);
	padding: 0.833em 1.333em;
	text-align: center;
	display: flex;
	align-items: center;
}
.tabs__link_active {
	font-weight: 700;
	background: var(--brown);
	color: var(--white);
}
.tabs__link_dark.tabs__link_active {
	background: var(--lightblack);
}
@media (hover: hover) {
	.tabs__link:hover {
		background: var(--brown);
		color: var(--white);
	}
	.tabs__link_dark:hover {
		background: var(--lightblack);
	}
}
.tabs__body {
	margin-top: 24px;
}
.tabs__body_subtabs {
	margin-top: var(--subtabs-margin);
}
.tabs__content:not(.tabs__content_active) {
	display: none;
}




/* Slider */

.slider-arrows {
	--arrow-size: clamp(40px, 40px + (60 - 40) * var(--adaptive), 60px);

	display: flex;
	align-items: center;
	gap: 26px;
}
.slider-arrow {
	width: var(--arrow-size);
	aspect-ratio: 60 / 30;
	background: url(/images//slider-arrow.svg) center / contain no-repeat;
	border: none;
}
.slider-arrow_prev {
	transform: scaleX(-1);
}
@media (hover: hover) {
	.slider-arrow_next:hover {
		transform: translateX(2px);
	}
	.slider-arrow_prev:hover {
		transform: translateX(-2px) scaleX(-1);
	}
}





/* Opinions */

.opinions {
	--head-margin: clamp(1px, 1px + (48 - 1) * var(--adaptive), 48px);
	--slide-width: clamp(328px, 328px + (832 - 328) * var(--adaptive), 832px);
	--name-font-size: clamp(24px, 24px + (32 - 24) * var(--adaptive), 32px);
	--post-font-size: clamp(12px, 12px + (14 - 12) * var(--adaptive), 14px);

	overflow: hidden;
}
.opinions__head {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 16px 24px;
	margin-bottom: var(--head-margin);
}
.opinions__slider {
	width: calc(100% + ((100vw - 100%) / 2));
}
.opinions__slide {
	width: var(--slide-width);
	display: grid;
	grid-template-columns: 1fr 1.35fr;
	grid-gap: 20px;
	align-items: start;
}
.opinions__photo {
	aspect-ratio: 1;
	position: relative;
}
.opinions__content {
	align-self: stretch;
	display: flex;
	flex-direction: column;
}
.opinions__name {
	font-size: var(--name-font-size);
	text-transform: uppercase;
	width: min-content;
	margin-bottom: 0.25em;
}
.opinions__post {
	font-size: var(--post-font-size);
	line-height: 1.3;
	text-transform: uppercase;
	color: var(--gray);
	margin-bottom: 0.6em;
}
.opinions__text {
	color: var(--gray);
	position: relative;
	padding-top: 1em;
	overflow: hidden;
	display: -webkit-box;
	-webkit-line-clamp: 6;
	-webkit-box-orient: vertical;
	margin-top: 0.6em;
	margin-bottom: 1em;
	max-width: 23.722em;
}
.opinions__text::before {
	content:'';
	display: inline-block;
	width: 1em;
}
.opinions__text::after {
	content: "″";
	font-size: 2.778em;
	color: var(--brown);
	position: absolute;
	left: -0.05em;
	top: -0.1em;
}
.opinions__text_show {
	display: block;
}
.opinions__post + .opinions__text {
	-webkit-line-clamp: 5;
}
.opinions__post_big + .opinions__text {
	-webkit-line-clamp: 3;
}
.opinions__button {
	font-size: var(--text-size);
	padding: 0.66em 2.222em;
	font-weight: 400;
	margin-top: auto;
	margin-bottom: 0.45em;
}

@media (max-width: 899px) {
	.opinions__slider {
		width: 100%;
	}
}
@media (max-width: 500px) {
	.opinions__slide {
		grid-template-columns: 1fr;
	}
	.opinions__name {
		width: auto;
	}
}




/* News */

.news {
	--head-margin: clamp(14px, 14px + (32 - 14) * var(--adaptive), 32px);
	--slide-width: clamp(300px, 300px + (470 - 300) * var(--adaptive), 470px);
	--counter-font-size: clamp(16px, 16px + (26 - 16) * var(--adaptive), 26px);
	--control-gap: clamp(28px, 28px + (58 - 28) * var(--adaptive), 58px);
	--date-font-size: clamp(14px, 14px + (16 - 14) * var(--adaptive), 16px);

	overflow: hidden;
}
.news__head {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 10px 34px;
	margin-bottom: var(--head-margin);
}
.news__title {
	margin-bottom: 0;
}
.news__control {
	display: flex;
	align-items: center;
	gap: var(--control-gap);
}
.news__counter {
	font-size: var(--counter-font-size);
	color: var(--white);
	background: var(--brown);
	padding: 0.26em 0.462em;
}
.news__counter span {
	display: inline-block;
	min-width: 0.625em;
	text-align: center;
}
.news__slider {
	width: calc(100% + ((100vw - 100%) / 2));
}
.news__item {
	width: var(--slide-width);
	display: grid;
	grid-template-columns: 1fr auto;
	grid-gap: 16px;
}
.news__image {
	grid-column: 1 / -1;
	position: relative;
	aspect-ratio: 470 / 300;
	overflow: hidden;
}
.news__image img {
	transition: 0.5s;
}
.news__caption {
	color: var(--lightblack);
	transition: var(--transition);
}
.news__date {
	font-size: var(--date-font-size);
	color: var(--lightgray);
}
@media (hover: hover) {
	.news__item:hover img {
		transform: scale(1.1);
	}
	.news__item:hover .news__caption {
		color: var(--brown);
	}
}

@media (max-width: 500px) {
	.news__item {
		grid-template-columns: 1fr;
	}
	.news__date {
		margin-top: -0.5em;
	}
}




/* Jury */

.jury {
	--name-font-size: clamp(20px, 20px + (64 - 20) * var(--adaptive), 64px);
	--post-font-size: clamp(16px, 16px + (24 - 16) * var(--adaptive), 24px);

	overflow: hidden;
}
.jury::after {
	content:'';
	display: block;
	position: absolute;
}
.jury::after {
	width: min(6.933vw, 104px);
	aspect-ratio: 104 / 176;
	background: url(/images//stylus.svg) center / contain no-repeat;
	filter: grayscale(100%) brightness(50%);
	top: 0;
	right: max(1px, calc((100vw - 1380px) / 7));
	transform: scaleX(-1) translateY(var(--jury-offset-down, 0px)) rotate(var(--jury-rotate-right, 0deg));
}
.jury__content {
	display: grid;
	grid-template-columns: 1fr 1.43fr;
	grid-gap: 20px 3.5%;
	align-items: center;
}
.jury__photo {
	aspect-ratio: 1;
	position: relative;
}
.jury__name {
	font-weight: 700;
	font-size: var(--name-font-size);
	margin-bottom: 0.22em;
}
.jury__post {
	font-size: var(--post-font-size);
	color: var(--gray);
}

@media (max-width: 500px) {
	.jury::after {
		right: -2%;
	}
	.jury__content {
		grid-template-columns: 1fr;
	}
}




/* Experts */

.experts {
	--subtitle-font-size: clamp(16px, 16px + (36 - 16) * var(--adaptive), 36px);
	--name-font-size: clamp(14px, 14px + (36 - 14) * var(--adaptive), 36px);
	--row-gap: clamp(16px, 16px + (64 - 16) * var(--adaptive), 64px);
	--column-gap: clamp(14px, 14px + (20 - 14) * var(--adaptive), 20px);
	--layout-3-columns: calc((100% - var(--column-gap) * 2) / 3);
	--layout-2-columns: calc((100% - var(--column-gap)) / 2);

	overflow: hidden;
}
.experts__subtitle {
	font-size: var(--subtitle-font-size);
	margin-bottom: 1.333em;
	max-width: 27.5em;
}
.experts__subtitle span {
	color: var(--brown);
}
.experts__list {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: var(--row-gap) var(--column-gap);
}
.experts__item {
	width: var(--layout-3-columns);
}
.experts__photo {
	aspect-ratio: 440 / 345;
	position: relative;
}
.experts__name {
	font-size: var(--name-font-size);
	margin-top: 0.667em;
	text-align: center;
}

.experts::before,
.experts::after {
	content:'';
	display: block;
	position: absolute;
}
.experts_advice::before {
	width: min(5.3vw, 80px);
	aspect-ratio: 86 / 80;
	background: url(/images//experts-decor1.svg) center / contain no-repeat;
	top: var(--title-size);
	left: max(1px, calc((100vw - 1380px) / 7));
	transform: translateY(var(--experts-1-offset-up, 0px)) rotate(var(--experts-rotate-left, 0deg));
}
.experts_advice::after {
	width: min(4.2vw, 64px);
	aspect-ratio: 64 / 60;
	background: url(/images//experts-decor2.svg) center / contain no-repeat;
	bottom: 0;
	right: max(1px, calc((100vw - 1380px) / 7));
	transform: translateY(var(--experts-1-offset-down, 0px)) rotate(var(--experts-rotate-right, 0deg));
}
.experts_bigjury::before {
	width: min(5.7vw, 86px);
	aspect-ratio: 104 / 176;
	background: url(/images//stylus.svg) center / contain no-repeat;
	top: var(--title-size);
	left: max(1px, calc((100vw - 1380px) / 7));
	transform: translateY(var(--experts-3-offset-up, 0px)) rotate(var(--experts-rotate-stylus, 0deg));
}
.experts_bigjury::after {
	width: min(2.8vw, 42px);
	aspect-ratio: 42 / 47;
	background: url(/images//experts-decor3.svg) center / contain no-repeat;
	bottom: 0;
	right: max(1px, calc((100vw - 1380px) / 7));
	transform: translateY(var(--experts-3-offset-down, 0px)) rotate(var(--experts-rotate-left, 0deg));
}

@media (max-width: 500px) {
	.experts__item {
		width: var(--layout-2-columns);
	}
}




/* Gallery */

.gallery {
	--gap: clamp(14px, 14px + (20 - 14) * var(--adaptive), 20px);
	--button-margin: clamp(14px, 14px + (42 - 14) * var(--adaptive), 42px);

	background-image: url(/images//gallery-bg_2x.jpg);
	background-image: image-set(url(/images//gallery-bg.jpg) 1x, url(/images//gallery-bg_2x.jpg) 2x);
	background-position: top center;
	background-repeat: no-repeat;
	background-size: cover;
	overflow: hidden;
}
.gallery__list {
	display: grid;
	grid-template-columns: repeat(2, 1fr) repeat(2, 1.2fr);
	grid-auto-rows: min(25.5vw, 383px);
	grid-gap: var(--gap);

	height: min(53vw, 786px);
	transition: height 0.8s ease;
	will-change: height;
}
.gallery__photo {
	display: block;
	position: relative;
	overflow: hidden;
	cursor: pointer;
}
.gallery__photo:nth-child(6n + 1),
.gallery__photo:nth-child(6n + 6),
.gallery__photo:last-child {
	grid-column: span 2;
}
.gallery__list:not(.gallery__list_all) .gallery__photo:nth-child(n + 7) {
	display: none;
}
.gallery__list_all .gallery__photo:nth-child(-n + 6) {
	transform: none!important;
	opacity: 1!important;
}
.gallery__photo::before,
.gallery__photo::after {
	content: '';
	display: block;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	transition: 0.3s;
}
.gallery__photo::after {
	background-color: rgba(0, 0, 0, 0.4);
	opacity: 0;
}
.gallery__photo::before {
	background: url(/images//zoom.svg) center no-repeat;
	transform: scale(0);
	z-index: 2;
}
.gallery__photo img {
	transition: 0.7s;
}
@media (hover: hover) {
	.gallery__photo:hover img {
		transform: scale(1.1);
	}
	.gallery__photo:hover:after {
		opacity: 1;
	}
	.gallery__photo:hover:before {
		transform: scale(1);
	}
}
.gallery__button {
	margin: 0 auto;
	margin-top: var(--button-margin);
}

.fancybox__button--thumbs,
.fancybox__button--fullscreen,
.fancybox__button--slideshow,
.fancybox__button--zoom {
	display: none!important;
}
.fancybox__carousel .fancybox__slide.can-zoom_in .fancybox__content {
	cursor: grab!important;
}

@media (max-width: 767px) {
	.gallery__list {
		grid-template-columns: repeat(2, 1fr) 1.2fr;
		height: 82vw;
	}
	.gallery__photo:nth-child(6n + 5) {
		grid-row: span 2;
	}
	.gallery__photo:nth-last-child(2) {
		grid-column: auto;
	}
}
@media (max-width: 500px) {
	.gallery__list {
		grid-template-columns: repeat(2, 1fr);
		grid-auto-rows: 40vw;
		height: 170vw;
	}
	.gallery__photo:nth-child(6n + 5) {
		grid-row: auto;
	}
	.gallery__photo:last-child,
	.gallery__photo:nth-last-child(2) {
		grid-column: auto;
	}
}





/* Partners */

.partners {
	--row-gap: clamp(12px, 12px + (48 - 12) * var(--adaptive), 48px);
	--column-gap: clamp(10px, 10px + (20 - 10) * var(--adaptive), 20px);
	--layout-4-columns: calc((100% - var(--column-gap) * 3) / 4);
	--layout-3-columns: calc((100% - var(--column-gap) * 2) / 3);
	--layout-2-columns: calc((100% - var(--column-gap)) / 2);
}
.partners__title {
	max-width: 12.5em;
}
.partners__list {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: left;
	gap: var(--row-gap) var(--column-gap);
}
.partners__logo {
	width: var(--layout-4-columns);
	aspect-ratio: 345 / 190;
	display: flex;
	align-items: center;
	justify-content: center;
	background: var(--white);
	box-shadow: 0 0 20px 5px rgba(0, 0, 0, 0.04);
	padding: 1% 4%;
	perspective: 1000px;
}
.partners__logo_big {
	width: var(--layout-3-columns);
}
.partners__logo img {
	max-height: 100%;
	transition: 0.4s;
}
/* safari fix - не понимает aspect-ratio + img max-height, нужно указывать height вместо aspect-ratio */
.safari .partners__logo {
	height: min(12vw, 182px);
}
.safari .partners__logo_big {
	height: min(16.4vw, 246px);
}

@media (hover: hover) {
	.partners__logo:hover {
		transform: translateY(-4px);
		box-shadow: 0 8px 20px 5px rgba(0, 0, 0, 0.04);
	}
	.partners__logo:hover img {
		transform: scale(1.05);
	}
}

@media (max-width: 500px) {
	.partners__logo {
		width: var(--layout-3-columns);
	}
	.partners__logo_big {
		width: var(--layout-2-columns);
	}
	/* safari fix */
	.safari .partners__logo {
		height: min(16vw, 80px);
	}
	.safari .partners__logo_big {
		height: min(24.4vw, 122px);
	}
}





/* Footer */

.footer {
	--subtitle-font-size: clamp(22px, 22px + (32 - 22) * var(--adaptive), 32px);
	--contacts-font-size: clamp(16px, 16px + (24 - 16) * var(--adaptive), 24px);
	--contacts-row-gap: clamp(38px, 38px + (48 - 38) * var(--adaptive), 48px);
	--footer-margin: 30px;

	background: url(/images//footer-bg.jpg) bottom center / cover no-repeat;
	position: relative;
	overflow: hidden;
}
.footer::after {
	display: none;
}

.footer__main {
	display: grid;
	grid-template-columns: 1fr 1.2fr;
	grid-gap: 4%;
	margin-bottom: calc(var(--contacts-row-gap) * 1.33);
}
.footer__logo {
	max-width: 500px;
}
.footer__logo img {
	width: 100%;
}
.footer__map {
	width: 100%;
	aspect-ratio: 720 / 502;
	position: relative;
}
.footer__map::before {
	content:'';
	display: block;
	position: absolute;
	inset: 0;
	background: url(/images//footer-map-mask.png) center / contain no-repeat;
	filter: blur(15px);
	transform: scale(1.12);
	opacity: 0.3;
	z-index: 1;
}
.footer__map-body {
	background: var(--brown);
	position: absolute;
	inset: 0;
	mask-image: url(/images//footer-map-mask.png);
	mask-position: center;
	mask-repeat: no-repeat;
	mask-size: 110%;
	z-index: 2;
}
.footer__map-yandex {
	position: absolute;
	left: 0;
	width: 100%;
	top: -10%;
	height: 120%;
	border: none;
	filter: grayscale(90%);
	transition: filter 0.4s;
}
@media (hover: hover) {
	.footer__map-yandex:hover {
		filter: grayscale(60%);
	}
}

.footer__contacts {
	display: grid;
	grid-template-columns: 1.3fr 1.2fr 1.04fr;
	justify-content: space-between;
	grid-gap: var(--contacts-row-gap) 4%;
	margin-bottom: var(--footer-margin);
}
.footer__subtitle {
	font-weight: 700;
	font-size: var(--subtitle-font-size);
	color: var(--brown);
	margin-bottom: 0.941em;
}
.footer__contacts p {
	font-size: var(--contacts-font-size);
	margin-bottom: 0.667em;
}
.footer__contacts p:last-child {
	margin-bottom: 0;
}
.footer__contacts a {
	color: var(--lightblack);
	white-space: nowrap;
	position: relative;
}
.footer__contacts a::before {
	content:'';
	display: block;
	position: absolute;
	bottom: -0.1em;
	left: 0;
	width: 100%;
	height: 1px;
	background: var(--brown);
	transform: scaleX(0);
	transform-origin: right;
	transition: transform 0.5s, transform-origin 0s;
}
@media (hover: hover) {
	.footer__contacts a:hover {
		color: var(--brown);
	}
	.footer__contacts a:hover:before {
		transform: scaleX(1);
		transform-origin: left;
	}
}

.footer__bottom {
	padding-top: var(--footer-margin);
	border-top: 1px solid var(--brown);
	display: grid;
	grid-template-columns: 1fr auto;
	grid-auto-flow: dense;
	grid-gap: 24px;
}
.footer__copyright {
	grid-row: span 2;
	font-family: var(--second-family);
	font-weight: 500;
	font-size: calc(var(--text-size) * 0.89);
	line-height: 1.5;
	color: var(--darkgray);
	text-align: right;
}
.footer__copyright a {
	color: var(--darkgray);
}
.footer__copyright a:hover {
	color: var(--brown);
	text-decoration: underline;
}
.footer__social {
	display: flex;
	gap: 24px;
}
@media (hover: hover) {
	.footer__social-link:hover {
		transform: scale(1.05);
		filter: brightness(115%);
	}
}
.footer__archive {
	grid-column: 1 / -1;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 16px;
}
.footer__archive-link {
	font-size: calc(var(--text-size) * 0.89);
	color: var(--lightblack);
	text-decoration: underline;
	text-decoration-skip-ink: none;
	text-underline-offset: 2px;
	text-decoration-thickness: 1px;
}
.footer__archive-link:hover {
	color: var(--brown);
	text-decoration: underline;
}

@media (max-width: 1235px) {
	.footer__contacts {
		grid-template-columns: repeat(2, 1fr);
	}
}
@media (max-width: 1023px) {
	.footer__bottom {
		grid-template-columns: 1fr;
		justify-items: center;
	}
	.footer__nav {
		justify-content: center;
	}
	.footer__copyright {
		order: 5;
		text-align: center;
	}
}
@media (max-width: 767px) {
	.footer__logo {
		width: 90%;
		margin-bottom: 10px;
	}
	.footer__contacts a {
		white-space: normal;
	}
	.footer__main {
		grid-template-columns: 1fr;
	}
}
@media (max-width: 500px) {
	.footer {
		padding-top: calc(var(--frame-padding) * 1.6);
	}
	.footer__contacts {
		grid-template-columns: 1fr;
	}
}





/* Regulation */

.regulation {
	--subtitle-size: clamp(22px, 22px + (36 - 22) * var(--adaptive), 36px);
	--text-size: clamp(16px, 16px + (20 - 16) * var(--adaptive), 20px);
}
.regulation__title {
	margin-bottom: 0.75em;
}
.regulation__content {
	max-width: 1075px;
	font-size: var(--text-size);
	line-height: 1.5;
}
.regulation__content-section {
	margin-bottom: calc(var(--section-margin) * 0.625);
}
.regulation__content-section h2 {
	font-weight: 700;
	font-size: var(--subtitle-size);
	line-height: 1.1;
	margin-bottom: 1.389em;
}
.regulation__content-section p {
	display: flex;
	margin-bottom: 1em;
}
.regulation__content-section p span {
	color: var(--brown);
	font-weight: 700;
	font-size: var(--subtitle-size);
	margin-top: -0.2em;
	margin-right: 0.7em;
}
.regulation__content-section_withoutnumbers p {
	display: block;
}
.regulation__content-section_withoutnumbers p span {
	font-weight: 400;
	font-size: var(--text-size);
	margin: 0;
}




/* Collection */

.collection {
	--text-font-size: clamp(16px, 16px + (24 - 16) * var(--adaptive), 24px);

	background-image: url(/images//collection-bg_2x.jpg);
	background-image: image-set(url(/images//collection-bg.jpg) 1x, url(/images//collection-bg_2x.jpg) 2x);
	background-position: top right;
	background-repeat: no-repeat;
	background-size: contain;
}
.collection__container {
	position: static;
}
.collection__book {
	position: absolute;
	inset: 0 0 -5% 0;
	overflow: hidden;
	pointer-events: none;
}
.collection__book-image {
	width: min(60vw, 835px);
	/*aspect-ratio: 835 / 653; */
	position: absolute;
	left: 57%;
	bottom: 0;
}
.collection__text {
	font-size: var(--text-font-size);
	line-height: 1.5;
	margin-bottom: 1.25em;
	width: 70%;
	max-width: 32.7em;
}
.collection__download {
	display: flex;
	align-items: stretch;
	gap: 6px;
	position: relative;
	z-index: 2;
}
.collection__filesize {
	font-weight: 700;
	color: var(--white);
	white-space: nowrap;
	background: var(--lightblack);
	padding: 0.89em;
	display: flex;
	align-items: center;
	justify-content: center;
}

@media (max-width: 650px) {
	.collection {
		background-size: min(65%, 405px) auto;
	}
}
@media (max-width: 500px) {
	.collection__book {
		position: static;
		width: calc(100% + var(--section-padding));
		margin-top: -35px;
	}
	.collection__book-image {
		position: static;
		width: 100%;
	}
	.collection__text {
		width: 100%;
	}
}





/* Slides */

.slides {
	padding-top: calc(var(--photoslides-height) * 0.1);
	overflow: hidden;
	position: relative;
	z-index: 20;
	margin-top: calc(var(--section-margin) * -1 - var(--photoslides-height) * 0.2);
	margin-bottom: calc(var(--photoslides-height) * -0.2);
}
.slides__photoslides {
	height: var(--photoslides-height);
	opacity: 0.65;
	transform: rotate(-1deg);
	transform-origin: bottom left;
}
.slides__photoslides-image {
	height: 100%;
	width: auto;
	max-width: unset;
	margin-left: -1800px;
	transition: 0.1s;
}

@media (max-width: 767px) {
	.slides__photoslides-image {
		margin-left: -500px;
	}
}




/* Spoiler */

.spoiler {
	--title-font-size: clamp(16px, 16px + (36 - 16) * var(--adaptive), 36px);
	--title-gap: clamp(16px, 16px + (72 - 16) * var(--adaptive), 72px);
	--spoiler-margin: clamp(14px, 14px + (24 - 14) * var(--adaptive), 24px);
}
.spoiler__content {
	display: grid;
	grid-template-rows: 0fr;
	transition-duration: 0.5s;
}
.spoiler__body {
	overflow: hidden;
}
.spoiler__content_open {
	grid-template-rows: 1fr;
}

.spoiler__title {
	font-weight: 700;
	font-size: var(--title-font-size);
	padding: 1.05em 1.2em;
	background: var(--beige);
	display: grid;
	grid-template-columns: 2.5em 1fr auto;
	grid-gap: var(--title-gap);
	align-items: center;
	margin-bottom: var(--spoiler-margin);
	transition: var(--transition);
	cursor: pointer;
	counter-increment: spoiler-counter;
}
.spoiler__title::before {
	content: counter(spoiler-counter, decimal-leading-zero);
	font-size: 2em;
	line-height: 0.7;
	color: var(--brown);
	transition: var(--transition);
}
.spoiler__icon {
	display: block;
	width: 1.556em;
	height: 1.556em;
	position: relative;
}
.spoiler__icon::before,
.spoiler__icon::after {
	content:'';
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 100%;
	height: 0.111em;
	background: var(--lightblack);
	transition: 0.3s;
}
.spoiler__icon::after {
	transform: translate(-50%, -50%) rotate(90deg);
}
.spoiler__title_active .spoiler__icon::after {
	transform: translate(-50%, -50%) rotate(180deg);
}
.spoiler__title_active .spoiler__icon::before {
	opacity: 0;
	transform: translate(-50%, -50%) rotate(90deg);
}
@media (hover: hover) {
	.spoiler__title:hover {
		background: var(--brown);
		color: var(--white);
	}
	.spoiler__title:hover::before {
		color: var(--white);
	}
	.spoiler__title:hover .spoiler__icon::before,
	.spoiler__title:hover .spoiler__icon::after {
		background: var(--white);
	}
}

.spoiler .books__list {
	margin-bottom: calc(var(--spoiler-margin) * 2);
}
.spoiler .books__item {
	transform: none!important;
	opacity: 1!important;
	text-align: center;
}
.spoiler .books__caption b {
	font-weight: 700;
}




/* Special */

.special__container {
	--text-font-size: clamp(15px, 15px + (24 - 15) * var(--adaptive), 24px);
}
.special__content {
	display: grid;
	grid-template-columns: 0.5fr 1.1fr;
	grid-gap: 3%;
}
.special__image img {
	max-width: unset;
	width: 145%;
	margin-left: -45%;
	margin-top: -5%;
	margin-bottom: -5%;
}
.special__text {
	font-size: var(--text-font-size);
	line-height: 1.4;
	color: var(--darkgray);
	margin-top: calc(var(--title-size) * -1);
}
.special__text p {
	margin-bottom: 1em;
}

@media (max-width: 500px) {
	.special__content {
		grid-template-columns: 1fr;
	}
	.special__image {
		text-align: center;
	}
	.special__image img {
		width: 90%;
		margin: 0;
	}
}





/* Winners */

.winners {
	--row-gap: clamp(20px, 20px + (48 - 20) * var(--adaptive), 48px);
	--column-gap: clamp(10px, 10px + (20 - 10) * var(--adaptive), 20px);
	--caption-font-size: clamp(17px, 17px + (27 - 17) * var(--adaptive), 27px);
	--desc-font-size: clamp(14px, 14px + (23 - 14) * var(--adaptive), 23px);
}
.winners_bg {
	background-image: url(/images//winners-bg_2x.jpg);
	background-image: image-set(url(/images//winners-bg.jpg) 1x, url(/images//winners-bg_2x.jpg) 2x);
	background-position: top center;
	background-repeat: no-repeat;
	background-size: cover;
	overflow: hidden;
}
.winners__list {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	grid-gap: var(--row-gap) var(--column-gap);
}
.winners__item {
	min-width: 0;
}
.winners__award {
	position: relative;
	aspect-ratio: 411 / 578;
	margin: 0 3%;
	display: flex;
	align-items: flex-end;
	justify-content: center;
	container-type: inline-size;
}
.winners__award-text {
	position: relative;
	z-index: 2;
	color: var(--white);
	text-align: center;
	text-transform: uppercase;
	display: flex;
	flex-direction: column;
	justify-content: center;
	width: 55%;
	height: 25%;
	margin-bottom: 5%;
}
.winners__award-name {
	font-family: var(--third-family);
	font-weight: 500;
	font-size: 7.62cqw;
	line-height: 1.2;
	margin-bottom: 0.4em;
}
.winners__award-post {
	font-family: var(--second-family);
	font-weight: 600;
	font-size: 4.76cqw;
	line-height: 1.2;
}
.winners__caption {
	font-weight: 700;
	font-size: var(--caption-font-size);
	color: var(--brown);
	text-align: center;
	margin-top: 1em;
	margin-bottom: 0.4em;
}
.winners__desc {
	font-size: var(--desc-font-size);
	text-align: center;
	overflow-wrap: break-word;
}

@media (max-width: 500px) {
	.winners__list {
		grid-template-columns: repeat(2, 1fr);
	}
}

.litres {
	position: fixed;
	top: 122px;
	left: 0;
	width: 233px;
	height: 93px;
	z-index: 99;
}

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

@media (max-width: 991px) {
	.litres {
		width: 150px;
		height: 60px;
	}
}

@media (max-width: 480px) {
	.litres {
		top: 100px;
		width: 120px;
		height: 48px;
	}
}