/* ==== ==== ==== Google Fonts ==== ==== ==== */

@import url('https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&family=Knewave&family=Sigmar+One&display=swap');


* {
	margin: 0;
	padding: 0;
	box-sizing: border-box;
	font-family: var(--body-font-family);
}
:root {
	--index: calc(1vw + 1vh);
	--gutter: 30px;
	--side-small: 26;
	--side-big: 36;
	--depth: 4000px;
	--transition: .75s cubic-bezier(.075, .5, 0, 1);


	--hue: 192; /* Blue */
	--sat: 78%; /* Full saturation */
	--light: 47%; /* Medium lightness */

	--primary-color: hsl(var(--hue), var(--sat), var(--light));
	--white-color: hsl(var(--hue) 45% 98%);  /* white */
	--dark-color: hsl(var(--hue) 26% 12%);  /* dark */

	/* --body-color: hsl(240, 90%, 3%); */
	--body-color: hsl(240, 26%, 12%);
	/* Dark to white */
	--hover-color: hsl(var(--hue) var(--sat) var(--light) - 7%); /* Accent color for hover */

	/* ======= Background colors ======= */
	--bottom-nav-bg: hsl(var(--hue) 32% 25% / .65);
	--header-glassy: hsl(var(--white-color) 32% 25% / .65);
	--card-bg: linear-gradient(120deg, hsl(var(--hue) 54% 74% / .15), hsl(var(--hue) 54% 74% / .05));
	--modal-backdrop-bg: hsl(var(--hue) 54% 74% / .1);
	--footer-bg: linear-gradient(360deg, hsl(var(--hue) 54% 74% / .15), hsl(var(--hue) 54% 74% / .1));

	/* ==== ==== ==== Font and typography ==== ==== ==== */
	--body-font-family:"Inter", sans-serif;

	/* ==== ==== ==== Font sizes ==== ==== ==== */
	--h1-font-size: 2.85rem;
	--h2-font-size: 2.25rem;
	--h3-font-size: 1.97rem;
	--h4-font-size: 1.43rem;
	--h5-font-size: 1.13rem;

	--xlarge-font-size: 1.48rem;
	--large-font-size: 1.23rem;
	--medium-font-size: 1.18rem;
	--base-font-size: 1.1rem;
	--small-font-size: 1.07rem;
	--tiny-font-size: .98rem ;

	/* ==== ==== ==== Font weights ==== ==== ==== */
	--font-light: 300;
	--font-regular: 400;
	--font-medium: 500;
	--font-semi-bold: 600;
	--font-bold: 700;

	/* ==== ==== ==== Layering order(z-index) ==== ==== ==== */
	--z-minus: -1;
	--z-base: 0;
	--z-low: 1;
	--z-high: 10;
	--z-content: 100;
	--z-tooltip: 1000;
	--z-fixed: 1100;
	--z-overlay: 1110;
	--z-modal: 1990;
	--z-max: 9999;


}

/* Скрываем Scrollbar */
body {
	scrollbar-width: none; /* Firefox */
}
body::-webkit-scrollbar {
	display: none; /* Safari and Chrome */
}

/* @font-face {
	font-family: raleway_c;
	src: url(../fonts/raleway-v22-cyrillic-300.woff2);
	font-weight: 300;
}
@font-face {
	font-family: raleway_c;
	src: url(../fonts/raleway-v22-cyrillic-100.woff2);
	font-weight: 100;
} */



html{
   scroll-behavior: smooth;
}

body {

	height: var(--depth);

}

.gallery-container {
	width: 100%;
	height: 100%;
	position: fixed;
	perspective: 1500px;

}
.gallery {
	transform-style: preserve-3d;
	height: 100%;
}
.frame {
	width: 100%;
	height: 100%;
	position: absolute;
	display: flex;
	align-items: center;
	border-radius: 8px;
	justify-content: center;
	transition: var(--transition), opacity .75s ease;
	will-change: transform;
	transform-style: preserve-3d;
}
/* h1, h2, h3, h4 {
	font-weight: 100;
	text-transform: uppercase;
	width: min-content;
	line-height: 1;
} */
.frame h2 {
	text-align: center;
	font-size: calc(var(--index) * 3.3);
}

.frame_title{
	position: absolute;
	color: var(--white-color);
	background: var(--bottom-nav-bg);
	backdrop-filter: blur(10px);

	font-size: var(--h3-font-size);
   font-weight: var(--font-bold);
	border-radius: 8px;
	padding: 10px;
    padding-bottom: 0px;
	border-bottom: 3px solid var(--primary-color);
	/* border-left: 3px solid var(--primary-color); */
}

/* .frame_title h2{
    text-align: center;

} */

.frame-media {
	position: relative;
	width: calc(var(--index) * var(--side-big));
	height: calc(var(--index) * var(--side-big));
	background-position: center;
	border-radius: 15px;
	background-size: cover;
    border-bottom: 3px solid var(--primary-color);
}

.frame-media_left {
	right: calc(var(--side-small) / 2 * var(--index) + var(--gutter));
}
.frame-media_right {
	left: calc(var(--side-small) / 2 * var(--index) + var(--gutter));

}
.frame_bg {
	background: var(--card-bg);
    /* left: -140px; */
	backdrop-filter: blur(50px);
	border-radius: 15px;
    border-bottom: 3px solid var(--primary-color);
    width: calc(var(--index) * 80);
}
video.frame-media {

	width: calc(var(--index) * var(--side-big));
	height: calc(var(--index) * var(--side-small));

}
video.frame-media_right {

	left: calc(var(--side-big) / 2 * var(--index) + var(--gutter));

}
video.frame-media_left {

	right: calc(var(--side-big) / 2 * var(--index) + var(--gutter));
}
.text-right > * {
	position: relative;
    top: -7vw;
	left: 18vw;
}
.text-left > * {
	position: relative;
    top: -7vw;
	right: 25vw;
}
.frame h3 {
	font-size: calc(var(--index) * 3);
}
.frame p {
    font-size: var(--font-medium) ;
	max-width: 30vw;
	margin-top: 3vh;
}
.soundbutton {
	position: fixed;
	bottom: 5vh;
	right: 5vw;
	cursor: pointer;
	width: 24px;
	transition: .25s ease;
}
.soundbutton.paused {
	opacity: .25;
}


.down-scroll-btn{
	position: absolute;
    top: 100px;
	left:55px;
	color:var(--white-color);
	display: grid;
	justify-items: center;
	row-gap: 3px;
	animation: up-down 1.5s linear infinite;
	animation-delay: 1.85s;
 }

 @keyframes up-down{
	0%{
	   transform: translateY(8px);
	}
	50%{
	   transform: translateY(-8px);
	}
	100%{
	   transform: translateY(8px);
	}
 }

 .down-scroll-btn:hover{

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

 .down-scroll-btn div{
	font-size: var(--tiny-font-size);
	font-weight: var(--font-regular);
	  writing-mode: vertical-lr;
	text-orientation: mixed;
	white-space: nowrap;
	transform: rotate(180deg);
	/* margin-top:20px; */
 }
 .down-scroll-btn i{
	font-size: 1rem;
 }


 .copy-right-m{
    text-align: center;
    color: var(--white-color);
    font-size:var(--small-font-size);
    margin-top: 10px;
 }


 .mm-footer .copy-right a:hover{
    color: var(--primary-color);
    transition: .3s;
 }




/* ==== ==== ====  Media Queries (max-width: 1600px) ==== ==== ==== */

@media screen and (max-width:1600px) {

    .frame_bg {
        left: -130px;
    }

    .text-right > * {
        left: 20vw;
    }
 }

 /* =========================================
    Media Queries (max-width: 1200px)
 ========================================= */
 @media screen and (max-width: 1200px) {

    .frame-media {

        width: calc(var(--index)* var(--side-big)* 1.1);
        height: calc(var(--index)* var(--side-big)* 1.1);
    }

    .frame_bg {
        /* left: -135px; */
        /* width: calc(var(--index) * 80); */
        height: calc(var(--index) * 35);
    }

    .text-right > * {
        left: 22vw;
        word-wrap: break-word;
    }

    .text-left > * {

        word-wrap: break-word;
        /* right: 25vw; */
    }



  }

 /* =========================================
    Media Queries (max-width: 992px)
 ========================================= */
 @media screen and (max-width: 992px) {



    .frame_bg {
        left: -155px;
        width: calc(var(--index) * 80);
    }


    .text-right > * {

        left: 26vw;
    }
    .text-left > * {

        right: 28vw;
    }



 }
 /* =========================================
    Media Queries (max-width: 768px)
 ========================================= */
 @media screen and (max-width: 768px) {

    :root{
    /* ======= Font sizes ====== */
    --h1-font-size: 2.3rem;
    --h2-font-size: 1.97rem;
    --h3-font-size: 1.75rem;
    --h4-font-size: 1.3rem;
    --h5-font-size: 1.05rem;
    --xlarge-font-size: 1.28rem;
    --large-font-size: 1.13rem;
    --medium-font-size: 1.06rem;
    --base-font-size: 1rem;
    --small-font-size: .93rem;
    --tiny-font-size: .88rem;
 }

 .frame_bg {
    left: -250px;
    width: calc(var(--index) * 90);
    height: calc(var(--index) * 40);
}

.frame-media {

    width: calc(var(--index)* var(--side-big)* 1.25);

    height: calc(var(--index)* var(--side-big)* 1.25);
}


 .text-right > * {

    left: 34vw;
}

.text-left > * {

    right: 34vw;
}

.down-scroll-btn{

	left:30px;
}

 }
 /* =========================================
    Media Queries (max-width: 480px)
 ========================================= */
 @media screen and (max-width:  480px) {

    :root{
    /*========== Font sizes ===== */
    --h1-font-size: 2.25rem;
    --h2-font-size: 1.9rem;
    --h3-font-size: 1.65rem;
    --h4-font-size: 1.25rem;
    --h5-font-size: 1.02rem;

    --xlarge-font-size: 1.25rem;
    --large-font-size: 1.1rem;
    --medium-font-size: 1.03rem;
    --base-font-size: 1rem;
    --small-font-size: .9rem;
    --tiny-font-size: .85rem;
    }


    .frame_bg {
        left: -123px;
        width: calc(var(--index)* 60);
        height: calc(var(--index)* 70);
    }

    .frame-media_left {
        top: calc(var(--side-small) / 1.7 * var(--index) + var(--gutter));
        right: calc(var(--side-small) /  var(--index) + var(--gutter));
    }

    .frame-media_right {
        top: calc(var(--side-small) / -1.3* var(--index) + var(--gutter));
        left: calc(var(--side-small) / var(--index) + var(--gutter));
    }
    .text-left > * {

        top: 50vw;
        right: 30vw;
        word-wrap: normal;
    }

    .text-right > * {

        top: -25vw;
        left: -25vw;
        word-wrap: normal;
    }

    .copy-right-m{
    font-size: var(--small-font-size);
     }
}


 @media screen and (max-width:  380px) {

    .frame_bg {
        left: -143px;

    }

    .text-left > * {
        top: 40vw;
        right: 40vw;
    }

    .text-right > * {

        top: -35vw;
        left: -30vw;
        word-wrap: normal;
    }


 }
