/* === base === */
*{box-sizing:border-box;line-height:1.2}
@font-face{
  font-family:"Inter Bold";
  src:url("../fonts/6808f299811c1703a1cacc77ced26c5d.eot");
  src:url("../fonts/6808f299811c1703a1cacc77ced26c5d.eot?#iefix") format("embedded-opentype"),
      url("../fonts/6808f299811c1703a1cacc77ced26c5d.woff2") format("woff2"),
      url("../fonts/6808f299811c1703a1cacc77ced26c5d.woff") format("woff"),
      url("../fonts/6808f299811c1703a1cacc77ced26c5d.ttf") format("truetype"),
      url("../fonts/6808f299811c1703a1cacc77ced26c5d.svg#Inter Bold") format("svg");
}

@font-face {
    font-family: 'Inter';
    src: local('Inter Medium'), local('Inter-Medium'),
        url('../fonts/Inter-Medium.woff2') format('woff2'),
        url('../fonts/Inter-Medium.woff') format('woff'),
        url('../fonts/Inter-Medium.ttf') format('truetype');
    font-weight: 500;
    font-style: normal;
  }

html,body{width:100vw;height: 100%; margin: 0; overflow: hidden;font-family:"Inter Bold",Arial}
body {background:url("../img/bg.jpg") center / cover no-repeat;position: relative;}

.buttonBack {
	padding: 26px;
	background: #310000;
	position: fixed;
	text-decoration: none;
	height: 72px;
	top: 54px;
	left: 51px;
}

.buttonBack span {
	color: #FFF;
	font-size: 32px;
	font-style: normal;
	font-weight: 700;
	line-height: 83.33%;
	letter-spacing: -0.72px;
	background: url("data:image/svg+xml,%0A%3Csvg width='54' height='54' viewBox='0 0 54 54' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cmask id='mask0_150_1346' style='mask-type:alpha' maskUnits='userSpaceOnUse' x='0' y='0' width='54' height='54'%3E%3Crect x='0.666992' y='0.666687' width='53' height='53' fill='%23D9D9D9'/%3E%3C/mask%3E%3Cg mask='url(%23mask0_150_1346)'%3E%3Cpath d='M22.4448 41.3334L9.3335 27.8522L22.4814 14.3334L25.067 16.9925L16.3262 25.98H44.3335V29.7244H16.3262L25.0304 38.6748L22.4448 41.3334Z' fill='white'/%3E%3C/g%3E%3C/svg%3E%0A") left center no-repeat;
	padding-left: 76px;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-direction: column;
	-moz-flex-direction: column;
	-ms-flex-direction: column;
	-o-flex-direction: column;
	flex-direction: column;
	-ms-align-items: center;
	align-items: center;
	justify-content: center;
	height: 100%;
}

.interactive__title {
	color: #310000;
	font-size: 32px;
	font-style: normal;
	font-weight: 700;
	line-height: normal;
	letter-spacing: -0.72px;
	max-width: 420px;
	top: 211px;
	left: 51px;
	position: fixed;
}

.interactive__puzzle-game__init {
	max-width: calc(100vw - 575px);
	margin-left: 502px;
	padding: 53px 0;
	top: 53px;
	position: relative;
	height: calc(100vh - 106px);
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-direction: column;
	-moz-flex-direction: column;
	-ms-flex-direction: column;
	-o-flex-direction: column;
	flex-direction: column;
	-ms-align-items: center;
	align-items: center;
	justify-content: center;
}

.interactive__puzzle-intro {
	grid-template-columns: repeat(5, 1fr);
	gap: 39px;
	width: calc(100vw - 113px);
	left: 53px;
	top: 50%;
	transform: translateY(-50%);
	position: fixed;
	display: none;
}

.interactive__puzzle-intro.showed {
	display: grid;
}

.interactive__puzzle-intro__item {
	cursor: pointer;
	text-decoration: none;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-direction: column;
	-moz-flex-direction: column;
	-ms-flex-direction: column;
	-o-flex-direction: column;
	flex-direction: column;
	gap: 32px;
}

.interactive__puzzle-intro__item-image {
	height: 533px;
}

.interactive__puzzle-intro__item-image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.interactive__puzzle-intro__item-title {
	color: #310000;
	text-align: center;
	font-size: 40px;
	font-style: normal;
	font-weight: 700;
	line-height: 1.2;
	letter-spacing: -0.64px;
}

.hidden{display:none !important}
  .interactive__puzzle-game{display:none;} /* стартуем с экрана выбора */
  .puzzle-modal{
    position:fixed; inset:0; display:flex; align-items:center; justify-content:center;
    background:rgba(0,0,0,.5); z-index:9999;
  }
  .puzzle-modal__card{
    max-width:872px; width:90%; background:#fff; overflow:hidden; padding:32px;
  }
  .puzzle-modal__title{font-size:32px; margin:0 0 8px;}
  .puzzle-modal__time{font-size:64px; font-weight:700; margin:0 0 40px; color:#b9a996}
	#puzzleWinText {
		color: #310000;
		font-size: 24px;
		font-style: normal;
		font-weight: 400;
		line-height: normal;
		letter-spacing: -0.48px;
		margin-bottom: 43px;
		display: -webkit-flex;
		display: -moz-flex;
		display: -ms-flex;
		display: -o-flex;
		display: flex;
		-webkit-flex-direction: column;
		-moz-flex-direction: column;
		-ms-flex-direction: column;
		-o-flex-direction: column;
		flex-direction: column;
		gap: 20px;
	}
  .puzzle-modal__actions{display:grid;grid-template-columns: repeat(2, 1fr); gap:16px; justify-content:center}
  .puzzle-modal__btn{
    padding:35px 0;border:0; cursor:pointer; font-size:32px;
  }
  .puzzle-modal__btn--again{background:#bfb4a6; color:#fff;}
  .puzzle-modal__btn--exit{background:#3a0707; color:#fff;}

.interactive__puzzle-game__result {
	position: fixed;
	top: 210px;
	left: 56px;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-direction: column;
	-moz-flex-direction: column;
	-ms-flex-direction: column;
	-o-flex-direction: column;
	flex-direction: column;
	gap: 20px;
	width: 396px;
}

.interactive__puzzle-game__result-item {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-direction: row;
	-moz-flex-direction: row;
	-ms-flex-direction: row;
	-o-flex-direction: row;
	flex-direction: row;
	justify-content: space-between;
}

.interactive__puzzle-game__result-title {
	color: #310000;
	font-size: 28px;
	font-style: normal;
	font-weight: 500;
	line-height: normal;
	letter-spacing: -0.84px;
}

.interactive__puzzle-game__result-value {
	color: #310000;
	font-size: 28px;
	font-style: normal;
	font-weight: 700;
	line-height: normal;
	letter-spacing: -0.84px;
}

.interactive__puzzle-game__init { position: relative; }
#canvas{ width:100%; height:100%; display:block; }

.interactive__otnosa-logo {
	position: fixed;
	left: 50px;
	bottom: 53px;
	width: 100px;
}

.interactive__otnosa-logo img {
	max-width: 100%;
}

.interactive__puzzle-game__example {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-direction: column;
	-moz-flex-direction: column;
	-ms-flex-direction: column;
	-o-flex-direction: column;
	flex-direction: column;
	gap: 32px;
	position: fixed;
	left: 53px;
	top: 355px;
	max-width: 398px;
}

.interactive__puzzle-game__example-image {
	max-width: 100%;
}

.interactive__puzzle-game__example-image img {
	max-width: 100%;
	height: auto;
}

.interactive__puzzle-game__example-title {
	color: #310000;
	font-size: 40px;
	font-style: normal;
	font-weight: 700;
	line-height: 1.2;
	letter-spacing: -0.8px;
}