@import url('../../../styles/core/reset.css');
@import url('../../../styles/core/fonts.css');
@import url('../../../styles/plugins/aos.css');
@import url('../../../styles/plugins/remixicon.css');

/*//////////////////////////////////////////*/
/* Variables */
/*//////////////////////////////////////////*/

:root {
	--color-txt: #121b24;
	--color-bg: #f2f3f4;
	--color-gray: #cbc8ce;
	--color-acc: #80529f;
	--radius: 15px;
	--shadow: 0 10px 15px 0 color-mix(in srgb, var(--color-txt) 4%, transparent);
}

/*//////////////////////////////////////////*/
/* Core */
/*//////////////////////////////////////////*/

*{
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
html{
	background: var(--color-bg);
	min-width:360px;
}
body{
	color: var(--color-txt);
	background: var(--color-bg);
	font-family: "Google Sans", sans-serif;
	font-optical-sizing: auto;
	font-weight: 400;
	font-style: normal;
	font-variation-settings:
		"slnt" 0,
		"CRSV" 0,
		"SHRP" 0;
	overflow-x: hidden;
}

/*//////////////////////////////////////////*/
/* Common */
/*//////////////////////////////////////////*/

/* Links */

a{
	color:inherit;
	text-decoration:none;
	transition:all 200ms linear;
}
a:hover{
	color:inherit;
	text-decoration:none;
}

/* Texts */

.txt_14_18{
	font-size: 14px;
	line-height: 18px;
}
.txt_16_22{
	font-size: 16px;
	line-height: 22px;
}
.txt_18_22{
	font-size: 18px;
	line-height: 22px;
}
.txt_34_38{
	font-size: 34px;
	line-height: 38px;
}
@media (max-width:600px) {
	.txt_34_38{
		font-size: 30px;
		line-height: 34px;
	}
}
.txt_500{
	font-weight: 500;
}
.txt_700{
	font-weight: 700;
}

/* Containers */

.wrapper{
	width: 1400px;
	max-width: calc(100% - 30px);
	margin: 0 auto;
}

/* Images */

.img_cover{
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
}
.img_contain{
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}

/*//////////////////////////////////////////*/
/* PDF */
/*//////////////////////////////////////////*/

body.pdf{
	font-family: "DejaVu Sans", sans-serif !important;
	background-color: #ffffff;
	/* background-color: #000000; */
	color: #000000;
}
#pdf {
	width: 210mm;
	background-color: #ffffff;
}
#pdf img.full{
	display: block;
	width: 210mm;
	height: 297mm;
}
#pdf table.table{
	width: 100%;
	border-collapse: collapse;
}
#pdf table.table tr{
	padding: 0;
    vertical-align: top;
}
#pdf .page_single{
	display: block;
	width: 210mm;
	height: 297mm;
	background-color: #ffffff;
	position: relative;
	overflow: hidden;
}

/* Intro */

#pdf .page_intro{
	background-image: url('https://rvland.ru/static/specials/camperexpo/images/pdf-intro.jpg');
	background-position: left bottom;
	background-repeat: no-repeat;
	background-size: contain;
}
#pdf .page_intro .row_1{
	height: 197mm;
}
#pdf .page_intro .photo{
	width: 40%;
	padding: 15mm 15mm 0 15mm;
}
#pdf .page_intro .photo img{
	display: block;
	width: 100%;
	height: auto;
}
#pdf .page_intro .text{
	width: 60%;
	padding: 15mm 15mm 15mm 0;
	font-size: 12px;
	line-height: 16px;
}
#pdf .page_intro .row_2{
	height: 100mm;
    vertical-align: bottom;
}
#pdf .page_intro .meta{
	padding: 0 15mm 15mm;
	height: 100mm;
	text-align: center;
	font-size: 11px;
	line-height: 14px;
}
#pdf .page_intro .meta a{
	text-decoration: underline;
    color: #a7a7a7;
}

/* Cards */

#pdf .page_cards{
	display: block;
	background-color: #ffffff;
	position: relative;
	overflow-x: hidden;
}
#pdf .page_cards .grid{
	width: 190mm;
	margin: 0 auto;
	border-collapse: separate;
	border-spacing: 5mm;
}
#pdf .page_cards .grid tr {
    page-break-inside: avoid;
}
#pdf .page_cards .grid thead {
    display: table-header-group;
}
#pdf .page_cards .grid thead th{
    text-align: left;
    position: relative;
    vertical-align: middle;
    padding: 10mm 0;
}
#pdf .page_cards .grid thead strong{
	display: block;
    font-size: 18px;
    font-weight: 700;
}
#pdf .page_cards .grid thead span{
	display: block;
    font-size: 11px;
    line-height: 13px;
    padding-top: 5px;
    color: #404040;
    font-weight: 400;
}
#pdf .page_cards .grid thead .pattern{
	display: block;
	position: relative;
	margin-right: -200px;
}
#pdf .page_cards .card{
	width: 50%;
	vertical-align: top;
	border: 1px solid #e5e5e5;
}
#pdf .page_cards .card .logo{
	width: 190px;
	margin: 0 auto;
}
#pdf .page_cards .card .logo td{
	height: 100px;
    vertical-align: middle;
	text-align: center;
}
#pdf .page_cards .card .logo img{
	display: inline;
	max-width: 160px;
	max-height: 70px;
	border-radius: 5px;
}
#pdf .page_cards .card .info{
	padding: 15px;
	border-top: 1px dashed #e5e5e5;
	text-align: center;
}
#pdf .page_cards .card .info .title{
	font-size: 12px;
	line-height: 16px;
	font-weight: 600;
}
#pdf .page_cards .card .info .tagline{
	max-width: 240px;
	margin: 0 auto;
	font-size: 11px;
	line-height: 13px;
	padding-top: 5px;
	color: #404040;
}
#pdf .page_cards .card .info .contacts{
	font-size: 12px;
	line-height: 16px;
	padding-top: 5px;
}
#pdf .page_cards .card .info .contacts div{
	margin-top: 5px;
}
#pdf .page_cards .card .info .contacts div .rvland{
	display: inline-block;
	text-transform: uppercase;
	font-size: 11px;
	line-height: 11px;
	color: #404040;
	border: 1px solid #cbcbcb;
	padding: 5px 10px;
	border-radius: 15px;
	margin-top: 7px;
}
#pdf .page_cards .card .info .contacts div .link{
	text-decoration: underline;
}
#pdf .page_cards .card .info .contacts div .link:hover{
	text-decoration: none;
}

/* Partners */

#pdf .page_partners{
	background-image: url('https://rvland.ru/static/specials/camperexpo/images/pdf-partners.jpg');
	background-position: top center;
	background-repeat: no-repeat;
	background-size: contain;
	padding-top: 60mm;
}
#pdf .page_partners .grid{
	width: 190mm;
	margin: 0 auto;
	border-collapse: separate;
	border-spacing: 5mm;
}
#pdf .page_partners .grid .item{
	text-align: center;
	border: 1px solid #e5e5e5;
}
#pdf .page_partners .grid .item a{
	display: block;
}
#pdf .page_partners .grid .item a img{
	max-width: 160px;
	max-height: 70px;
}

/*//////////////////////////////////////////*/
/* Preloader */
/*//////////////////////////////////////////*/

#preloader{
	display: none;
}
#preloader.show{
	display: flex;
	flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: color-mix(in srgb, var(--color-txt) 85%, transparent);
	z-index: 1000;
}
#preloader .book {
	--color: #fff;
	--duration: 6.8s;
	width: 32px;
	height: 12px;
	position: fixed;
	margin: 32px 0 0 0;
	zoom: 1.5;
}
#preloader .book .inner {
	width: 32px;
	height: 12px;
	position: relative;
	transform-origin: 2px 2px;
	transform: rotateZ(-90deg);
	-webkit-animation: book var(--duration) ease infinite;
	      animation: book var(--duration) ease infinite;
}
#preloader .book .inner .left,
#preloader .book .inner .right {
	width: 60px;
	height: 4px;
	top: 0;
	border-radius: 2px;
	background: var(--color);
	position: absolute;
}
#preloader .book .inner .left:before,
#preloader .book .inner .right:before {
	content: "";
	width: 48px;
	height: 4px;
	border-radius: 2px;
	background: inherit;
	position: absolute;
	top: -10px;
	left: 6px;
}
#preloader .book .inner .left {
	right: 28px;
	transform-origin: 58px 2px;
	transform: rotateZ(90deg);
	animation: left var(--duration) ease infinite;
}
#preloader .book .inner .right {
	left: 28px;
	transform-origin: 2px 2px;
	transform: rotateZ(-90deg);
	animation: right var(--duration) ease infinite;
}
#preloader .book .inner .middle {
	width: 32px;
	height: 12px;
	border: 4px solid var(--color);
	border-top: 0;
	border-radius: 0 0 9px 9px;
	transform: translateY(2px);
}
#preloader .book ul {
	margin: 0;
	padding: 0;
	list-style: none;
	position: absolute;
	left: 50%;
	top: 0;
}
#preloader .book ul li {
	height: 4px;
	border-radius: 2px;
	transform-origin: 100% 2px;
	width: 48px;
	right: 0;
	top: -10px;
	position: absolute;
	background: var(--color);
	transform: rotateZ(0deg) translateX(-18px);
	animation-duration: var(--duration);
	animation-timing-function: ease;
	animation-iteration-count: infinite;
}
#preloader .book ul li:nth-child(0) {
	animation-name: page-0;
}
#preloader .book ul li:nth-child(1) {
	animation-name: page-1;
}
#preloader .book ul li:nth-child(2) {
	animation-name: page-2;
}
.book ul li:nth-child(3) {
	animation-name: page-3;
}
#preloader .book ul li:nth-child(4) {
	animation-name: page-4;
}
#preloader .book ul li:nth-child(5) {
	animation-name: page-5;
}
#preloader .book ul li:nth-child(6) {
	animation-name: page-6;
}
#preloader .book ul li:nth-child(7) {
	animation-name: page-7;
}
#preloader .book ul li:nth-child(8) {
	animation-name: page-8;
}
#preloader .book ul li:nth-child(9) {
	animation-name: page-9;
}
#preloader .book ul li:nth-child(10) {
	animation-name: page-10;
}
#preloader .book ul li:nth-child(11) {
	animation-name: page-11;
}
#preloader .book ul li:nth-child(12) {
	animation-name: page-12;
}
#preloader .book ul li:nth-child(13) {
	animation-name: page-13;
}
#preloader .book ul li:nth-child(14) {
	animation-name: page-14;
}
#preloader .book ul li:nth-child(15) {
	animation-name: page-15;
}
#preloader .book ul li:nth-child(16) {
	animation-name: page-16;
}
#preloader .book ul li:nth-child(17) {
	animation-name: page-17;
}
#preloader .book ul li:nth-child(18) {
	animation-name: page-18;
}
@keyframes page-0 {
	4% { transform: rotateZ(0deg) translateX(-18px); }
	13%, 54% { transform: rotateZ(180deg) translateX(-18px); }
	63% { transform: rotateZ(0deg) translateX(-18px); }
}
@keyframes page-1 {
	5.86% { transform: rotateZ(0deg) translateX(-18px); }
	14.74%, 55.86% { transform: rotateZ(180deg) translateX(-18px); }
	64.74% { transform: rotateZ(0deg) translateX(-18px); }
}
@keyframes page-2 {
	7.72% { transform: rotateZ(0deg) translateX(-18px); }
	16.48%, 57.72% { transform: rotateZ(180deg) translateX(-18px); }
	66.48% { transform: rotateZ(0deg) translateX(-18px); }
}
@keyframes page-3 {
	9.58% { transform: rotateZ(0deg) translateX(-18px); }
	18.22%, 59.58% { transform: rotateZ(180deg) translateX(-18px); }
	68.22% { transform: rotateZ(0deg) translateX(-18px); }
}
@keyframes page-4 {
	11.44% { transform: rotateZ(0deg) translateX(-18px); }
	19.96%, 61.44% { transform: rotateZ(180deg) translateX(-18px); }
	69.96% { transform: rotateZ(0deg) translateX(-18px); }
}
@keyframes page-5 {
	13.3% { transform: rotateZ(0deg) translateX(-18px); }
	21.7%, 63.3% { transform: rotateZ(180deg) translateX(-18px); }
	71.7% { transform: rotateZ(0deg) translateX(-18px); }
}
@keyframes page-6 {
	15.16% { transform: rotateZ(0deg) translateX(-18px); }
	23.44%, 65.16% { transform: rotateZ(180deg) translateX(-18px); }
	73.44% { transform: rotateZ(0deg) translateX(-18px); }
}
@keyframes page-7 {
	17.02% { transform: rotateZ(0deg) translateX(-18px); }
	25.18%, 67.02% { transform: rotateZ(180deg) translateX(-18px); }
	75.18% { transform: rotateZ(0deg) translateX(-18px); }
}
@keyframes page-8 {
	18.88% { transform: rotateZ(0deg) translateX(-18px); }
	26.92%, 68.88% { transform: rotateZ(180deg) translateX(-18px); }
	76.92% { transform: rotateZ(0deg) translateX(-18px); }
}
@keyframes page-9 {
	20.74% { transform: rotateZ(0deg) translateX(-18px); }
	28.66%, 70.74% { transform: rotateZ(180deg) translateX(-18px); }
	78.66% { transform: rotateZ(0deg) translateX(-18px); }
}
@keyframes page-10 {
	22.6% { transform: rotateZ(0deg) translateX(-18px); }
	30.4%, 72.6% { transform: rotateZ(180deg) translateX(-18px); }
	80.4% { transform: rotateZ(0deg) translateX(-18px); }
}
@keyframes page-11 {
	24.46% { transform: rotateZ(0deg) translateX(-18px); }
	32.14%, 74.46% { transform: rotateZ(180deg) translateX(-18px); }
	82.14% { transform: rotateZ(0deg) translateX(-18px); }
}
@keyframes page-12 {
	26.32% { transform: rotateZ(0deg) translateX(-18px); }
	33.88%, 76.32% { transform: rotateZ(180deg) translateX(-18px); }
	83.88% { transform: rotateZ(0deg) translateX(-18px); }
}
@keyframes page-13 {
	28.18% { transform: rotateZ(0deg) translateX(-18px); }
	35.62%, 78.18% { transform: rotateZ(180deg) translateX(-18px); }
	85.62% { transform: rotateZ(0deg) translateX(-18px); }
}
@keyframes page-14 {
	30.04% { transform: rotateZ(0deg) translateX(-18px); }
	37.36%, 80.04% { transform: rotateZ(180deg) translateX(-18px); }
	87.36% { transform: rotateZ(0deg) translateX(-18px); }
}
@keyframes page-15 {
	31.9% { transform: rotateZ(0deg) translateX(-18px); }
	39.1%, 81.9% { transform: rotateZ(180deg) translateX(-18px); }
	89.1% { transform: rotateZ(0deg) translateX(-18px); }
}
@keyframes page-16 {
	33.76% { transform: rotateZ(0deg) translateX(-18px); }
	40.84%, 83.76% { transform: rotateZ(180deg) translateX(-18px); }
	90.84% { transform: rotateZ(0deg) translateX(-18px); }
}
@keyframes page-17 {
	35.62% { transform: rotateZ(0deg) translateX(-18px); }
	42.58%, 85.62% { transform: rotateZ(180deg) translateX(-18px); }
	92.58% { transform: rotateZ(0deg) translateX(-18px); }
}
@keyframes page-18 {
	37.48% { transform: rotateZ(0deg) translateX(-18px); }
	44.32%, 87.48% { transform: rotateZ(180deg) translateX(-18px); }
	94.32% { transform: rotateZ(0deg) translateX(-18px); }
}
@keyframes left {
	4% { transform: rotateZ(90deg); }
	10%, 40% { transform: rotateZ(0deg); }
	46%, 54% { transform: rotateZ(90deg); }
	60%, 90% { transform: rotateZ(0deg); }
	96% { transform: rotateZ(90deg); }
}
@keyframes right {
	4% { transform: rotateZ(-90deg); }
	10%, 40% { transform: rotateZ(0deg); }
	46%, 54% { transform: rotateZ(-90deg); }
	60%, 90% { transform: rotateZ(0deg); }
	96% { transform: rotateZ(-90deg); }
}
@keyframes book {
	4% { transform: rotateZ(-90deg); }
	10%, 40% { transform: rotateZ(0deg); transform-origin: 2px 2px; }
	40.01%, 59.99% { transform-origin: 30px 2px; }
	46%, 54% { transform: rotateZ(90deg); }
	60%, 90% { transform: rotateZ(0deg); transform-origin: 2px 2px; }
	96% { transform: rotateZ(-90deg); }
}
#preloader .text {
	padding-top: 120px;
	color: #ffffff;
}

/*//////////////////////////////////////////*/
/* Bar */
/*//////////////////////////////////////////*/

#bar{
	display: flex;
    align-items: center;
	height: 60px;
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	background: #ffffff;
	z-index: 100;
	transform: translateY(-70px);
	opacity: 0;
	transition: transform 300ms linear;
	box-shadow: 0 10px 25px 0 color-mix(in srgb, var(--color-txt) 10%, transparent);
}
#bar.sticky{
	transform: translateY(0);
	opacity: 1;
}
#bar .wrapper{
	display: flex;
    align-items: center;
    gap: 15px;
}
#bar .logos{
	display: flex;
    align-items: center;
	gap: 10px;
}
#bar .logos a{
	display: block;
}
#bar .logos a img{
	display: block;
	width: auto;
	height: 30px;
}
#bar .logos span{
	font-size: 24px;
	opacity: 0.4;
}
#bar .tagline{
	font-size: 11px;
	line-height: 13px;
	text-transform: uppercase;
}
#bar .download{
	display: block;
	line-height: 40px;
	font-size: 13px;
	padding: 0 20px;
	border-radius: 20px;
	background: var(--color-acc);
	color: #ffffff;
	margin-left: auto;
	opacity: 0;
	text-transform: uppercase;
}
#bar .download.visible{
	opacity: 1;
}
@media (max-width:600px) {
	#bar .logos a img{
		height: 26px;
	}
	#bar .tagline{
		display: none;
	}
	#bar .download span{
		display: none;
	}
}

/*//////////////////////////////////////////*/
/* Intro */
/*//////////////////////////////////////////*/

#intro{
	padding: 15px;
}
#intro .inner{
	border-radius: var(--radius);
	background-color: var(--color-gray);
}
#intro .inner .wrapper{
	display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
	position: relative;
	overflow: hidden;
}
#intro .inner .wrapper .text{
	max-width: 600px;
	padding: 15px;
}
#intro .inner .wrapper .text .logos{
	display: flex;
    align-items: center;
	gap: 10px;
}
#intro .inner .wrapper .text .logos a{
	display: block;
}
#intro .inner .wrapper .text .logos a img{
	display: block;
	width: auto;
	height: 30px;
}
#intro .inner .wrapper .text .logos span{
	font-size: 24px;
	opacity: 0.4;
}
#intro .inner .wrapper .text h1{
	display: block;
	font-size: 44px;
	line-height: 48px;
	padding: 15px 0;
}
#intro .inner .wrapper .text p{
	max-width: 400px;
}
#intro .inner .wrapper .image{
	width: calc(100% - 600px);
	height: 600px;
	background-image: url('../images/bg-intro.jpg');
	background-position-x: right;
}
#intro .inner .wrapper .download{
	display: flex;
    align-items: center;
	gap: 5px;
	position: absolute;
	bottom: 0;
	right: 20px;
	white-space: nowrap;
	height: 60px;
	padding: 0 30px;
	background: var(--color-bg);
	border-radius: var(--radius) var(--radius) 0 0;
	z-index: 10;
}
#intro .inner .wrapper .download:before,
#intro .inner .wrapper .download:after{
    content: '';
    position: absolute;
    bottom: 0;
    background: transparent;
    height: 40px;
    width: 20px;
    box-shadow: 0 -20px 0 0 var(--color-bg);
    z-index: 1;
}
#intro .inner .wrapper .download:before{
	right: 100%;
    border-top-right-radius: var(--radius);
    transform: scaleY(-1);
}
#intro .inner .wrapper .download:after{
    left: 100%;
    border-top-left-radius: var(--radius);
    transform: scaleY(-1);
}
#intro .inner .wrapper .download:hover{
	color: var(--color-acc);
}
#intro .inner .wrapper .download i{
	font-size: 18px;
}
#intro .inner .wrapper .total{
	display: flex;
	flex-direction: column;
    align-items: center;
    justify-content: center;
	width: 100px;
	height: 100px;
	position: absolute;
	top: -20px;
	left: 0;
}
#intro .inner .wrapper .total strong{
	color: var(--color-acc);
	font-size: 32px;
	position: relative;
	z-index: 10;
}
#intro .inner .wrapper .total div{
	border-radius: 50%;
	width: 100px;
	height: 100px;
	position: absolute;
	top: 0;
	left: 0;
	background-image: url('../images/total.svg');
	animation: spin 20000ms infinite linear;
}
@keyframes spin {
	0% { transform: rotate(0deg); }
	100% { transform: rotate(360deg); }
}
@media (max-width:1200px) {
	#intro .inner .wrapper{
		flex-direction: column;
		text-align: center;
	}
	#intro .inner .wrapper .text{
		padding: 120px 0 0;
	}
	#intro .inner .wrapper .text p{
		margin: 0 auto;
	}
	#intro .inner .wrapper .text .logos{
		justify-content: center;
	}
	#intro .inner .wrapper .image{
		width: 100%;
		background-position: top;
		margin-bottom: -200px;
	}
}
@media (max-width:600px) {
	#intro .inner .wrapper .text h1{
		font-size: 34px;
		line-height: 38px;
	}
	#intro .inner .wrapper .image{
		margin-top: 30px;
	}
}

/*//////////////////////////////////////////*/
/* Directory */
/*//////////////////////////////////////////*/

#directory .overview{
	margin: 15px 0 30px;
}
#directory .cards{
	display: flex;
	flex-wrap: wrap;
	gap: 15px;
	margin-bottom: 90px;
}
#directory .cards .card{
	display: flex;
	gap: 15px;
    align-items: flex-start;
	border-radius: var(--radius);
	background: #ffffff;
	position: relative;
	box-shadow: var(--shadow);
	width: calc(33.333333% - 10px);
	padding: 15px;
}
#directory .cards .card .logo{
	display: flex;
	flex-direction: column;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    width: 160px;
    height: 100px;
    border-radius: 10px;
    padding: 10px;
    border: 1px solid color-mix(in srgb, var(--color-txt) 8%, transparent);
}
#directory .cards .card .logo img{
	display: block;
	object-fit: contain;
    max-width: 100%;
    max-height: 100%;
    border-radius: 5px;
}
#directory .cards .card .info{
    display: flex;
    flex-direction: column;
}
#directory .cards .card .info strong{
    display: block;
}
#directory .cards .card .info p{
    display: block;
    padding-top: 5px;
    color: color-mix(in srgb, var(--color-txt) 70%, transparent);
}
#directory .cards .card .info ul{
    display: flex;
    flex-direction: column;
    gap: 5px;
    padding-top: 15px;
}
#directory .cards .card .info ul li{
    text-transform: uppercase;
    font-size: 12px;
    line-height: 16px;
}
#directory .cards .card .info ul li a:hover{
	color: var(--color-acc);
    border-bottom: 1px solid color-mix(in srgb, var(--color-acc) 50%, transparent);
}
@media (max-width:1200px) {
	#directory .cards .card{
		flex-direction: column;
	    align-items: center;
	    text-align: center;
	}
}
@media (max-width:800px) {
	#directory .cards .card{
		width: calc(50% - 7.5px);
	}
}
@media (max-width:450px) {
	#directory .cards .card{
		width: 100%;
	}
	#directory .cards .card .info p{
		max-width: 280px;
	}
}

/*//////////////////////////////////////////*/
/* Partners */
/*//////////////////////////////////////////*/

#partners{
	margin-bottom: 90px;
}
#partners h2{
	display: block;
	margin-bottom: 30px;
}
#partners .list{
	display: flex;
	flex-wrap: wrap;
	gap: 15px;
}
#partners .list a{
	display: flex;
	flex-direction: column;
    justify-content: center;
    align-items: center;
	width: calc(16.666667% - 12.5px);
	padding: 15px;
	aspect-ratio: 16 / 10;
	border-radius: var(--radius);
	background: #ffffff;
	position: relative;
	box-shadow: var(--shadow);
}
#partners .list a img{
	max-width: 100%;
	max-height: 100%;
	position: relative;
	z-index: 5;
}
#partners .list a div{
	display: flex;
	flex-direction: column;
    justify-content: center;
    align-items: center;
	border-radius: var(--radius);
	background: #ffffff;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	position: absolute;
	z-index: 10;
	opacity: 0;
	transition: all 300ms linear;
}
#partners .list a:hover div{
	opacity: 1;
}
#partners .list a:hover span{
	max-width: 200px;
	font-size: 11px;
	line-height: 13px;
	text-transform: uppercase;
	padding: 10px;
	text-align: center;
    color: color-mix(in srgb, var(--color-txt) 60%, transparent);
}
@media (max-width:1100px) {
	#partners .list a{
		width: calc(20% - 12px);
	}
}
@media (max-width:900px) {
	#partners .list a{
		width: calc(25% - 11.25px);
	}
}
@media (max-width:700px) {
	#partners .list a{
		width: calc(33.333333% - 10px);
	}
}
@media (max-width:500px) {
	#partners .list{
		gap: 10px;
	}
	#partners .list a{
		width: calc(50% - 5px);
	}
}

/*//////////////////////////////////////////*/
/* News */
/*//////////////////////////////////////////*/

#news{
	margin-bottom: 90px;
}
#news h2{
	display: block;
	text-align: center;
	margin-bottom: 30px;
}
#news .grid{
	display: grid; 
	grid-template-columns: 1fr 1fr 1fr; 
	grid-template-rows: 1fr 1fr; 
	gap: 10px; 
	grid-template-areas: 
		"item1 item1 item2"
		"item3 item4 item5"; 
}
#news .grid .item1 { grid-area: item1; }
#news .grid .item2 { grid-area: item2; }
#news .grid .item3 { grid-area: item3; }
#news .grid .item4 { grid-area: item4; }
#news .grid .item5 { grid-area: item5; }
#news .grid .item{
	display: flex;
	flex-direction: column;
    justify-content: flex-end;
	height: 300px;
	border-radius: var(--radius);
	position: relative;
}
#news .grid .item:before{
	content: '';
	background: color-mix(in srgb, var(--color-txt) 60%, transparent);
	border-radius: var(--radius);
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 5;
	transition:all 200ms linear;
}
#news .grid .item:hover:before{
	background: color-mix(in srgb, var(--color-txt) 70%, transparent);
}
#news .grid .item div{
	display: block;
	width: 100%;
	position: relative;
	z-index: 10;
	border-radius: 0 0 var(--radius) var(--radius);
	background: linear-gradient(0deg, color-mix(in srgb, var(--color-txt) 90%, transparent) 0%, color-mix(in srgb, var(--color-txt) 0%, transparent) 100%);
}
#news .grid .item div h3{
	font-size: 20px;
	line-height: 26px;
	max-width: 400px;
	padding: 60px 30px 30px;
	color: #ffffff;
	transition:all 200ms linear;
}
#news .grid .item:hover div h3{
	padding: 60px 30px 40px;
}
@media (max-width:1100px) {
	#news .grid{
		grid-template-columns: 1fr 1fr; 
		grid-template-rows: 1fr 1fr; 
		grid-template-areas: 
			"item1 item1"
			"item2 item3" 
			"item4 item5"; 
	}
}
@media (max-width:700px) {
	#news .grid{
		display: flex;
		flex-direction: column;
	}
	#news .grid .item{
		height: unset;
		min-height: 300px;
	}
}

/*//////////////////////////////////////////*/
/* Info */
/*//////////////////////////////////////////*/

#info{
	text-align: center;
	margin-bottom: 90px;
}
#info p{
	display: inline-block;
	max-width: 900px;
	color: var(--color-gray);
}

/*//////////////////////////////////////////*/
/* Footer */
/*//////////////////////////////////////////*/

#footer{
	max-width: calc(100% - 30px);
	margin: 0 auto 15px;
	display: flex;
	flex-direction: column;
    align-items: center;
	gap: 30px;
	text-align: center;
	border-radius: var(--radius);
	padding: 90px 30px 30px;
	color: #ffffff;
	background-image: url('../images/bg-footer.jpg');
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center;
    position: relative;
    overflow: hidden;
}
#footer:before{
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: color-mix(in srgb, var(--color-txt) 60%, transparent);
	border-radius: var(--radius);
    z-index: 1;
    backdrop-filter: blur(3px);
}
#footer .rvland{
	display: block;
	width: 80px;
	position: relative;
	z-index: 10;
}
#footer .rvland img{
	display: block;
	width: 100%;
}
#footer ul{
	display: flex;
	gap: 10px;
	flex-wrap: wrap;
    justify-content: center;
	font-weight: 500;
	position: relative;
	z-index: 10;
}
#footer ul li a{
	border-bottom: 1px solid color-mix(in srgb, currentcolor 30%, transparent);
}
#footer ul li a:hover{
	border-bottom: 1px solid currentcolor;
}
#footer p{
	font-size: 12px;
	line-height: 16px;
	opacity: 0.6;
	position: relative;
	z-index: 10;
	max-width: 600px;
} 
#footer ul{
	display: flex;
	gap: 10px;
	flex-wrap: wrap;
	font-weight: 500;
	position: relative;
	z-index: 10;
}
#footer .footer_submenu{
	display: flex;
	flex-wrap: wrap;
    justify-content: center;
	gap: 5px 10px;
	max-width: 600px;
	font-size: 12px;
	line-height: 16px;
	position: relative;
	z-index: 10;
}
#footer .footer_submenu a{
	display: block;
	opacity: 0.6;
	border-bottom: 1px solid color-mix(in srgb, currentcolor 30%, transparent);
}
#footer .footer_submenu a:hover{
	opacity: 1;
	border-bottom: 1px solid currentcolor;
}