/* =================================================================== 

 * ------------------------------------------------------------------- */

@font-face {
    font-family: 'Bicubic';
    src: url('./Bicubik-71qR.otf') format('opentype');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}


/* ===================================================================
 * 02. base style overrides - (_document-setup.scss)
 *
 * ------------------------------------------------------------------- */
html {
	font-size: 10px;
}

@media only screen and (max-width:1024px) {
	html {
		font-size: 9.375px;
	}

}

@media only screen and (max-width:768px) {
	html {
		font-size: 10px;
	}

}

@media only screen and (max-width:400px) {
	html {
		font-size: 9.375px;
	}

}

html,
body {
	height: 100%;
}

body {
	letter-spacing: 1.6px;
	background: #0e0e0e;
	color: #fff;
	font-family: "Bicubic", sans-serif;
	font-size: 1.6rem;
	line-height: 3rem;
	background: -webkit-linear-gradient(315deg, #FF0707, rgb(8, 18, 19), #FF0707);
	background: -moz-linear-gradient(315deg, #FF0707, rgb(8, 18, 19), #FF0707);
	background: linear-gradient(315deg, #FF0707, rgb(8, 18, 19), #FF0707);
	background: url('../images/red_back.jpg');
	background-attachment: fixed;
	background-repeat: no-repeat;
	background-position: center top;
	-webkit-background-size: cover;
	-moz-background-size: cover;
	background-size: cover;
}

@media only screen and (max-width:600px) {
	
		.bg {
			position: fixed;
			top: 0;
			bottom: 0;
			left: 0;
			right: 0;
			background: url('../images/red_back_mobi.jpg');
			background-attachment: scroll;
			background-repeat: no-repeat;
			background-position: top center;
			background-size: cover;
		}

}

/* ------------------------------------------------------------------- 
 * links - (_document-setup) 
 * ------------------------------------------------------------------- */
a,
a:visited {
	color: #fff;
	-moz-transition: all 0.3s ease-in-out;
	-o-transition: all 0.3s ease-in-out;
	-webkit-transition: all 0.3s ease-in-out;
	-ms-transition: all 0.3s ease-in-out;
	transition: all 0.3s ease-in-out;
}

a:hover,
a:focus,
a:active {
	color: #fff;
	outline: 0;
}

/* ===================================================================
 * 03. typography & general theme styles - (_document-setup.scss) 
 *
 * ------------------------------------------------------------------- */
h1,
h2,
h3,
h4,
h5,
h6,
.h01,
.h02,
.h03,
.h04,
.h05,
.h06 {
	font-style: normal;
	text-rendering: optimizeLegibility;
	margin-bottom: 2.1rem;
}

h3,
.h03,
h4,
.h04 {
	margin-bottom: 1.8rem;
}

h5,
.h05,
h6,
.h06 {
	margin-bottom: 1.2rem;
}

h1,
.h01 {
	font-size: 3.1rem;
	line-height: 1.355;
	letter-spacing: -.1rem;
}

@media only screen and (max-width:600px) {

	h1,
	.h01 {
		font-size: 2.6rem;
		letter-spacing: -.07rem;
	}

}

h2,
.h02 {
	font-size: 2.4rem;
	line-height: 1.25;
}

h3,
.h03 {
	font-size: 2rem;
	line-height: 1.5;
}

h4,
.h04 {
	font-size: 1.8rem;
	line-height: 1.667;
}

h5,
.h05 {
	font-size: 1.4rem;
	line-height: 1.714;
	text-transform: uppercase;
	letter-spacing: .15rem;
}

h6,
.h06 {
	font-size: 1.3rem;
	line-height: 1.846;
	text-transform: uppercase;
	letter-spacing: .15rem;
}

p img {
	margin: 0;
}

p.lead {
	font-size: 2.1rem;
	line-height: 1.714;
	color: #4a5060;
}

@media only screen and (max-width:768px) {
	p.lead {
		font-size: 1.9rem;
	}

}

em,
i,
strong,
b {
	font-size: 1.6rem;
	line-height: 3rem;
	font-style: normal;
	font-weight: normal;
}

small {
	font-size: 1.2rem;
	line-height: inherit;
}

blockquote {
	margin: 3rem 0;
	padding-left: 4rem;
	position: relative;
}

blockquote:before {
	content: "\201C";
	font-size: 8rem;
	line-height: 0px;
	margin: 0;
	color: rgba(17, 17, 17, 0.5);
	font-family: arial, sans-serif;
	position: absolute;
	top: 3rem;
	left: 0;
}

blockquote p {
	font-family: georgia, serif;
	font-style: italic;
	padding: 0;
	font-size: 2rem;
	line-height: 1.8;
}

blockquote cite {
	display: block;
	font-size: 1.3rem;
	font-style: normal;
	line-height: 1.616;
}

blockquote cite:before {
	content: "\2014 \0020";
}

blockquote cite a,
blockquote cite a:visited {
	color: #3f4452;
	border: none;
}

abbr {
	font-family: "roboto-bold", serif;
	font-variant: small-caps;
	text-transform: lowercase;
	letter-spacing: .05rem;
	color: #3f4452;
}

var,
kbd,
samp,
code,
pre {
	font-family: Consolas, "Andale Mono", Courier, "Courier New", monospace;
}

pre {
	padding: 2.4rem 3rem 3rem;
	background: #F1F1F1;
}

code {
	font-size: 1.4rem;
	margin: 0 .2rem;
	padding: .3rem .6rem;
	white-space: nowrap;
	background: #F1F1F1;
	border: 1px solid #E1E1E1;
	border-radius: 3px;
}

pre>code {
	display: block;
	white-space: pre;
	line-height: 2;
	padding: 0;
	margin: 0;
}

pre.prettyprint>code {
	border: none;
}

del {
	text-decoration: line-through;
}

abbr[title],
dfn[title] {
	border-bottom: 1px dotted;
	cursor: help;
}

mark {
	background: #FFF49B;
	color: #000;
}

hr {
	border: solid #2b3641;
	border-width: 1px 0 0;
	clear: both;
	margin: 2.4rem 0 1.5rem;
	height: 0;
}

/* ------------------------------------------------------------------- 
 * Lists - (_document-setup.scss)  
 * ------------------------------------------------------------------- */
ol {
	list-style: decimal;
}

ul {
	list-style: disc;
}

li {
	display: list-item;
}

ol,
ul {
	margin-left: 1.7rem;
}

ul li {
	padding-left: .4rem;
}

ul ul,
ul ol,
ol ol,
ol ul {
	margin: .6rem 0 .6rem 1.7rem;
}

ul.disc li {
	display: list-item;
	list-style: none;
	padding: 0 0 0 .8rem;
	position: relative;
}

ul.disc li::before {
	content: "";
	display: inline-block;
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: #ed254d;
	position: absolute;
	left: -17px;
	top: 11px;
	vertical-align: middle;
}

dt {
	margin: 0;
	color: #ed254d;
}

dd {
	margin: 0 0 0 2rem;
}


/* ------------------------------------------------------------------- 
 * Spacing - (_document-setup)  
 * ------------------------------------------------------------------- */
button,
.button {
	margin-bottom: 1.2;
}

fieldset {
	margin-bottom: 1.5rem;
}

input,
textarea,
select,
pre,
blockquote,
figure,
table,
p,
ul,
ol,
dl,
form,
.fluid-video-wrapper,
.ss-custom-select {
	margin-bottom: 3rem;
}

/* ------------------------------------------------------------------- 
 * floated image - (_document-setup)  
 * ------------------------------------------------------------------- */
img.pull-right {
	margin: .9rem 0 0 2.4rem;
}

img.pull-left {
	margin: .9rem 2.4rem 0 0;
}

/* ------------------------------------------------------------------- 
 * block grids paddings
 * ------------------------------------------------------------------- */
.bgrid {
	padding: 0 20px;
}

@media only screen and (max-width:1024px) {
	.bgrid {
		padding: 0 18px;
	}
}

@media only screen and (max-width:768px) {
	.bgrid {
		padding: 0 15px;
	}
}

@media only screen and (max-width:600px) {
	.bgrid {
		padding: 0 10px;
	}
}

@media only screen and (max-width:400px) {
	.bgrid {
		padding: 0;
	}
}

/* ------------------------------------------------------------------- 
 * pace.js styles - minimal  - (_document-setup.scss)
 * ------------------------------------------------------------------- */
.pace {
	-webkit-pointer-events: none;
	pointer-events: none;
	-webkit-user-select: none;
	-moz-user-select: none;
	user-select: none;
}

.pace-inactive {
	display: none;
}

.pace .pace-progress {
	background: #FFFFFF;
	position: fixed;
	z-index: 901;
	top: 0;
	right: 100%;
	width: 100%;
	height: 6px;
}



/* ===================================================================
 * 04. preloader - (_preloader-1.scss)
 *
 * ------------------------------------------------------------------- */
#preloader {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: #151515;
	z-index: 900;
	height: 100%;
	width: 100%;
}

.no-js #preloader,
.oldie #preloader {
	display: none;
}

#loader {
	position: absolute;
	left: 50%;
	top: 50%;
	width: 60px;
	height: 60px;
	margin: -30px 0 0 -30px;
	padding: 0;
}

#loader:before {
	content: "";
	display: block;
	height: 60px;
	width: 60px;
	-webkit-animation: rotate .9s infinite linear;
	animation: rotate .9s infinite linear;
	border: 10px solid #FFFFFF;
	border-right-color: transparent;
	border-radius: 50%;
}

@-webkit-keyframes rotate {
	0% {
		-webkit-transform: rotate(0deg);
		transform: rotate(0deg);
	}

	100% {
		-webkit-transform: rotate(360deg);
		transform: rotate(360deg);
	}

}

@keyframes rotate {
	0% {
		-webkit-transform: rotate(0deg);
		transform: rotate(0deg);
	}

	100% {
		-webkit-transform: rotate(360deg);
		transform: rotate(360deg);
	}

}

/* ===================================================================
 * 08. common and reusable styles (_layout.scss)
 *
 * ------------------------------------------------------------------- */
.section-intro {
	margin-left: auto;
	margin-right: auto;
	text-align: center;
	display: flex;
	flex-direction: column;
}

.section-intro h2 {
	font-size: 4rem;
	line-height: 1.25;
	margin-bottom: 1.2rem;
	margin-top: 1.2rem;
	letter-spacing: 2px;
	
}

.section-intro h5 {
	color: #ed254d;
	font-size: 1.6rem;
	line-height: 1.875;
	margin-bottom: 0.3rem;
	letter-spacing: .4rem;
}

.section-intro .with-bottom-line {
	position: relative;
	margin-bottom: 4.2rem;
	background: rgba(167, 36, 36, 0.8);
	opacity: 90%;
	border-radius: 9px;
}

.js .animate-this,
.js .animate-intro {
	opacity: 0;
}

.oldie .animate-this,
.oldie .animate-intro .no-cssanimations .animate-this,
.no-cssanimations .animate-intro {
	opacity: 1;
}

/* ------------------------------------------------------------------- 
 * responsive:
 * common styles
 * ------------------------------------------------------------------- */
@media only screen and (max-width:768px) {
	.section-intro {
		max-width: 650px;
	}

	.section-intro h2 {
		font-size: 4rem;
	}
}

@media only screen and (max-width:600px) {
	.section-intro h2 {
		font-size: 3.3rem;
	}
}

@media only screen and (max-width:400px) {
	.section-intro h2 {
		font-size: 2.2rem;
	}
}

/* ===================================================================
 * 09. header styles - (_layout.scss)
 *
 * ------------------------------------------------------------------- */
header {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 80px;
	position: fixed;
	left: 0;
	top: 0;
	z-index: 700;
	background: black;
	opacity: 90%;
}

/* ------------------------------------------------------------------- 
 * header logo - (_layout.css) 
 * ------------------------------------------------------------------- */
header .logo {
	position: absolute;
	left: 8px;
}

header .logo a {
	display: block;
	margin: 0;
	padding: 0;
	outline: 0;
	border: none;
	width: 80px;
	height: 80px;
	background: url("/images/logo.png") no-repeat center;
	background-size: 80px 80px;
	font-size: large;
	font-weight: 900;
	text-transform: uppercase;
	font: 0/0 a;
	text-shadow: none;
	color: transparent;
	-moz-transition: all 0.5s ease-in-out;
	-o-transition: all 0.5s ease-in-out;
	-webkit-transition: all 0.5s ease-in-out;
	-ms-transition: all 0.5s ease-in-out;
	transition: all 0.5s ease-in-out;
}

/* ------------------------------------------------------------------- 
 * menu toggle - (_layout.css) 
 * ------------------------------------------------------------------- */
.menu-toggle {
	width: 40px;
	height: 40px;
	display: block;
	outline: 0;
	position: absolute;
	right: 10px;
	background: black;
    opacity: 0.9;
	-moz-transition: transform 0.4s ease-in-out;
	-o-transition: transform 0.4s ease-in-out;
	-webkit-transition: transform 0.4s ease-in-out;
	-ms-transition: transform 0.4s ease-in-out;
	transition: transform 0.4s ease-in-out;
	-webkit-transform: translateZ(0);
	-webkit-backface-visibility: hidden;
}

.menu-toggle span {
	display: block;
	background-color: #FFFFFF;
	width: 30px;
	height: 3px;
	margin-top: -1.5px;
	position: absolute;
	right: 5px;
	top: 50%;
	bottom: auto;
	left: auto;
	font: 0/0 a;
	text-shadow: none;
	color: transparent;
	-moz-transition: background 0.2s ease-in-out;
	-o-transition: background 0.2s ease-in-out;
	-webkit-transition: background 0.2s ease-in-out;
	-ms-transition: background 0.2s ease-in-out;
	transition: background 0.2s ease-in-out;
}

.menu-toggle span::before,
.menu-toggle span::after {
	content: '';
	width: 100%;
	height: 100%;
	background-color: inherit;
	position: absolute;
	left: 0;
	-moz-transition: all 0.2s ease-in-out;
	-o-transition: all 0.2s ease-in-out;
	-webkit-transition: all 0.2s ease-in-out;
	-ms-transition: all 0.2s ease-in-out;
	transition: all 0.2s ease-in-out;
}

.menu-toggle span::before {
	top: -10px;
}

.menu-toggle span::after {
	bottom: -10px;
}

/* menu is open */
.menu-is-open .menu-toggle {
	-webkit-transform: translateX(-290px);
	-ms-transform: translateX(-290px);
	transform: translateX(-290px);
}

/* is clicked */
.menu-toggle.is-clicked span {
	background-color: rgba(255, 255, 255, 0);
}

.menu-toggle.is-clicked span::before,
.menu-toggle.is-clicked span::after {
	background-color: white;
}

.menu-toggle.is-clicked span::before {
	top: 0;
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
}

.menu-toggle.is-clicked span::after {
	bottom: 0;
	-webkit-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	transform: rotate(-45deg);
}

/* ------------------------------------------------------------------- 
 * responsive:
 * header section 
 * ------------------------------------------------------------------- */
@media only screen and (max-width:768px) {
	.button__group {
		gap: 2px;
		justify-content: center;
	}
}

@media only screen and (max-width: 500px) {
	header {
		height: 60px;
	}

	header .logo {
		left: 0;
		top: 0;
	}

	header .logo a {
		width: 50px;
		height: 50px;
		background-size: 50px 50px;
	}

	.menu-toggle {
		right: 5px;
		top: 10px;
		width: 36px;
		height: 36px;
	}

	.menu-toggle span {
		width: 25px;
	}

	.menu-toggle span::before,
	.menu-toggle span::after {
		width: 100%;
	}

	.menu-toggle span::before {
		top: -8px;
	}

	.menu-toggle span::after {
		bottom: -8px;
	}
}

/* ------------------------------------------------------------------- 
 * off-canvas menu - (_layout.scss) 
 * ------------------------------------------------------------------- */
#menu-nav-wrap {
	background: #111111;
	color: rgba(255, 255, 255, 0.25);
	font-size: 1.2rem;
	line-height: 1.6;
	padding: 3.6rem 3rem;
	height: 100%;
	width: 300px;
	position: fixed;
	right: 0;
	top: 0;
	visibility: hidden;
	z-index: 800;
	overflow-y: auto;
	-webkit-transform: translateZ(0);
	-webkit-backface-visibility: hidden;
	-webkit-transform: translateX(100%);
	-ms-transform: translateX(100%);
	transform: translateX(100%);
	-moz-transition: all 0.4s ease-in-out;
	-o-transition: all 0.4s ease-in-out;
	-webkit-transition: all 0.4s ease-in-out;
	-ms-transition: all 0.4s ease-in-out;
	transition: all 0.4s ease-in-out;
}

#menu-nav-wrap a,
#menu-nav-wrap a:visited {
	color: rgba(255, 255, 255, 0.5);
}

#menu-nav-wrap a:hover,
#menu-nav-wrap a:focus,
#menu-nav-wrap a:active {
	color: white;
}

#menu-nav-wrap h3 {
	color: white;
	font-family: "roboto-bold", sans-serif;
	font-size: 1.6rem;
	line-height: 1.5;
	margin-bottom: 1.5rem;
}

#menu-nav-wrap .nav-list {
	margin: 1.8rem 0 1.5rem 0;
	padding: 0 0 1.5rem 0;
	list-style: none;
	line-height: 3.6rem;
}

#menu-nav-wrap .nav-list li {
	padding-left: 0;
}

#menu-nav-wrap .nav-list li a {
	color: rgba(255, 255, 255, 0.25);
}

#menu-nav-wrap .nav-list li a:hover,
#menu-nav-wrap .nav-list li a:focus {
	color: white;
}

#menu-nav-wrap .sponsor-text span {
	color: rgba(255, 255, 255, 0.5);
}

#menu-nav-wrap .button {
	margin: 0 0 1.2rem 0;
	width: 100%;
	display: block;
	color: rgba(255, 255, 255, 0.5) !important;
	background: rgba(255, 255, 255, 0.1);
}

#menu-nav-wrap .button:hover,
#menu-nav-wrap .button:focus {
	color: white !important;
}

/* menu is open */
.menu-is-open #menu-nav-wrap {
	-webkit-transform: translateX(0);
	-ms-transform: translateX(0);
	transform: translateX(0);
	visibility: visible;
	-webkit-overflow-scrolling: touch;
}



/* ===================================================================
 * 10. main content wrap - (_layout.scss)
 *
 * ------------------------------------------------------------------- */
#main-content-wrap {
	z-index: 600;
	position: relative;
}


/* ===================================================================
 * 11. intro - (_layout.scss)
 *
 * ------------------------------------------------------------------- */
#intro {
	position: relative;
	text-align: center;
	padding: 8rem 0 0;
	height: calc(100vh);
	overflow: hidden;
}

.col-twelve {
	position: relative;
	height: 100%;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: end;
}

#intro .intro-content {
	position: relative;
	z-index: 600;
	height: 100%;
}

.hero-center {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 6px;
	width: min(820px, 96vw);
	z-index: 650;
	margin-bottom: 50px;
}

#intro h3 {
	font-size: 16px;
	line-height: 3rem;
	background: rgba(0, 0, 0, 0.62);
	margin: 40px 0;
	letter-spacing: .3rem;
	max-width: 900px;
	color: rgba(255, 255, 255, 0.92);
	text-shadow: 0 1px 2px rgba(0, 0, 0, 0.15);
	border-radius: 9px;
	border: 1px solid rgba(255, 255, 255, 0.12);
}

@supports ((-webkit-backdrop-filter: blur(8px)) or (backdrop-filter: blur(8px))) {
	#intro h3 {
		background: rgba(0, 0, 0, 0.48);
		-webkit-backdrop-filter: blur(8px);
		backdrop-filter: blur(8px);
	}
}

#intro h1 {
	margin: 0;
	font-size: 7rem;
	line-height: 1.267;
	letter-spacing: 3px;
	padding: 0 12%;
	color: #fff;
}

#intro .buttons {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	max-width: 900px;
	width: 100%;
}

#intro .buttons .button {
	font-weight: 700;
	border-radius: 12px;
	color: white;
	flex: 1;
	margin: 0;
	padding-top: 0.3rem;
	padding-bottom: 0.3rem;
}

.button__group {
	display: flex;
	align-items: center;
	gap: 24px;
	height: 100%;
}

.button1,
.button2 {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 100%;
	color: #FFFFFF;
	font-size: 18px;
	padding: 0 12px;
	background-color: #a72424;
}

.button1:hover {
	
	opacity: 80%;
}

.button2 {
	background-color: black;
}

.button2:hover {
	background-color: #5E17EB;
	opacity: 80%;
}

@media only screen and (max-width:768px) {
	.button__group {
		gap: 2px;
	}
	.button1, .button2 {
		font-size: 14px;
		padding: 0 2px;
	}
}

@media only screen and (max-width:768px){
	.button__group {
		height: 50px;
		width: 100%;
		/* margin-top: auto; */
	}
	.button1, .button2 {
		width: 50%;
		font-size: 10px;
		letter-spacing: 1px;
	}
}

.arc-heading{
	width: 200px;
}

.main-svg {
	background-color: rgba(0, 0, 0, 0.8);
	border-radius: 100%;
	padding: 10px;
	box-shadow: 0px 0px 20px red;
}

.main-svg text{
	font-size: 24px;
	letter-spacing: 2.4px;
}
.arc-heading__heading{
	transform: translateY(-5px);
}
.arc-heading__subheading{
	transform: translateY(5px);
}

.main-svg svg{
	filter: drop-shadow(0px 0px 7px red);
}

/* hero neon wordmark */
.hero-wordmark {
	width: min(620px, 92vw);
	margin: -10px auto 0;
	display: block;
	transform: translateY(-6px);
}

.hero-wordmark text {
	font-family: "Bicubic", sans-serif;
	font-size: 84px;
	letter-spacing: 5px;
	text-transform: uppercase;
	dominant-baseline: middle;
}

.hero-wordmark__glow {
	fill: rgba(255, 50, 50, 0.10);
	stroke: rgba(255, 30, 30, 0.65);
	stroke-width: 10px;
	paint-order: stroke fill;
	animation: neonFlicker 6.5s infinite;
}

.hero-wordmark__stroke {
	filter: drop-shadow(0 0 8px rgba(255, 30, 30, 0.65))
		drop-shadow(0 0 18px rgba(255, 30, 30, 0.35));
	animation: neonBreathe 3.8s ease-in-out infinite;
}

@keyframes neonBreathe {
	0%, 100% { opacity: 0.92; }
	50% { opacity: 1; }
}

@keyframes neonFlicker {
	0%, 92%, 100% { opacity: 0.85; }
	93% { opacity: 0.35; }
	94% { opacity: 0.95; }
	96% { opacity: 0.55; }
	97% { opacity: 0.9; }
}

@media (prefers-reduced-motion: reduce) {
	.hero-wordmark__glow,
	.hero-wordmark__stroke {
		animation: none !important;
	}
}

@keyframes infinite-rotate{
	from {
	transform: rotate(0deg);
	}
	to {
	transform: rotate(360deg);
	}
}

#intro .buttons .button:hover,
#intro .buttons .button:focus {
	color: white;
}

#intro img {
	position: absolute;
	vertical-align: bottom;
	width: 100%;
}

.shadow-overlay {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	opacity: .5;
	background: -moz-linear-gradient(top, transparent 0%, rgba(0, 0, 0, 0.8) 100%);
	background: -webkit-linear-gradient(top, transparent 0%, rgba(0, 0, 0, 0.8) 100%);
	background: linear-gradient(to bottom, transparent 0%, rgba(0, 0, 0, 0.8) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#cc000000', GradientType=0);
}

/* modal */
.modal {
	display: none;
	position: relative;
	z-index: 1000;
}

.modal .overlay {
	z-index: 100;
	position: fixed;
	display: flex;
	align-items: center;
	justify-content: center;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, 0.7);
}

.modal .content {
	width: calc(100vw - 20%);
	height: calc(100vh - 10%);
	display: block;
	background-color: #fefefe;
	padding: 20px;
	color: #333333;
	position: relative;
	overflow-y: auto;
	overscroll-behavior: none;
}

.modal .close {
	position: absolute;
	right: 20px;
	top: 20px;
	transition: .5s;
	cursor: pointer;
}

.modal .close:hover {
	transform: rotate(180deg);
}

h3 {
	margin-top: 0;
}

@media(max-width:550px) {
	.modal .content {
		width: 90%;
		margin-top: 5px;
		height: 90%;
	}
}

/* ------------------------------------------------------------------- 
 * responsive:
 * intro
 * ------------------------------------------------------------------- */
@media only screen and (max-width:1024px) {
	#intro {
		padding-top: 15rem;
	}

	#intro h1 {
		font-size: 5rem;
		padding: 0 6%;
	}
}

@media only screen and (max-width:768px) {
	#intro {
		padding-top: 13.8rem;
	}

	#intro h3 {
		font-size: 1.8rem;
		letter-spacing: .4rem;
	}

	#intro h1 {
		font-size: 4.5rem;
		padding: 0;
	}
}

@media only screen and (max-width:600px) {
	#intro {
		padding-top: 13.2rem;
	}

	#intro h3 {
		font-size: 1.7rem;
		letter-spacing: .35rem;
	}

	#intro h1 {
		font-size: 4rem;
		padding: 0;
	}
}

@media only screen and (max-width:500px) {
	#intro {
		padding-top: 12rem;
	}

	#intro h3 {
		font-size: 1.6rem;
		letter-spacing: .3rem;
	}

	#intro h1 {
		font-size: 3.8rem;
		padding: 0;
	}

	#intro .buttons .button {
		display: block;
		text-transform: none;
		letter-spacing: normal;
		padding: 0 2px;
		font-size: 1.2rem;
	}
}

@media only screen and (max-width:400px) {
	#intro h3 {
		font-size: 1rem;
        line-height: 18px;
		letter-spacing: .3rem;
	}

	#intro h1 {
		font-size: 3.5rem;
		padding: 0;
	}

	#intro .buttons {
		width: 100%;
	}
}


 /* guns */
 #guns {
	padding-top: 6rem;
    padding-bottom: 6rem;
	background: url('../images/slider/komunist/gun.jpeg');
	background-size: cover;
 }

.title_guns {
	font-size: 4.8rem;
    line-height: 1.25;
	margin-bottom: 4.2rem;
    letter-spacing: 4px;
	text-align: center;

}

.guns_list {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
    gap: 1rem;
    padding: 0 1rem;
}

.guns-filters {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	justify-content: center;
	margin: 18px 0 18px;
	padding: 0 1rem;
}

.guns-chip {
	border: 1px solid rgba(255, 255, 255, 0.14);
	background: rgba(0, 0, 0, 0.40);
	color: rgba(255, 255, 255, 0.92);
	border-radius: 999px;
	padding: 10px 14px;
	font-size: 12px;
	letter-spacing: .12rem;
	text-transform: uppercase;
	cursor: pointer;
	transition: transform .15s ease, background .15s ease, border-color .15s ease;
}

.guns-chip {
	/* fallback: keep readable without blur */
	background: rgba(0, 0, 0, 0.58);
}

@supports ((-webkit-backdrop-filter: blur(10px)) or (backdrop-filter: blur(10px))) {
	.guns-chip {
		background: rgba(0, 0, 0, 0.40);
		-webkit-backdrop-filter: blur(10px);
		backdrop-filter: blur(10px);
	}
}

.guns-chip:hover {
	transform: translateY(-1px);
	border-color: rgba(255, 255, 255, 0.22);
}

.guns-chip.is-active {
	background: rgba(167, 36, 36, 0.45);
	border-color: rgba(255, 255, 255, 0.24);
}

.guns-card--hidden {
	display: none !important;
}

.card {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	min-height: 240px;
    background: rgba(0, 0, 0, 0.42);
	border: 1px solid rgba(255, 255, 255, 0.10);
    border-radius: 16px;
    box-shadow: 0 16px 40px rgba(0, 0, 0, 0.35);
    overflow: hidden;
    transition: transform 0.18s ease, box-shadow 0.18s ease, border-color 0.18s ease;
}

.card {
	/* fallback: keep readable without blur */
	background: rgba(0, 0, 0, 0.62);
}

@supports ((-webkit-backdrop-filter: blur(10px)) or (backdrop-filter: blur(10px))) {
	.card {
		background: rgba(0, 0, 0, 0.42);
		-webkit-backdrop-filter: blur(10px);
		backdrop-filter: blur(10px);
	}
}

.card div {
	flex: 1;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 14px 14px 6px;
}

.card:hover {
    transform: translateY(-2px);
	border-color: rgba(255, 255, 255, 0.18);
	box-shadow: 0 22px 60px rgba(0, 0, 0, 0.45);

}

.card img {
    width: 100%;
    height: auto;
    display: block;
	max-height: 170px;
	object-fit: contain;
}

.card h5 {
    font-size: 1.1rem;
    padding: 12px 10px 14px;
    color: #eee;
    text-align: center;
    border-top: 1px solid rgba(255, 255, 255, 0.10);
	letter-spacing: .12rem;

}

.font-8 {
	font-size: 8px!important;
}

/* Адаптивность для мобильных устройств */
@media (max-width: 768px) {
    .guns_list {
        grid-template-columns: repeat(auto-fit, minmax(100px, 1fr));
        gap: 1rem;
		padding: 0;
    }

    .card h5 {
        font-size: 0.8rem;
    }
}

/* ===================================================================
 * 13. infos - (_layout.scss)
 *
 * ------------------------------------------------------------------- */

#infos {
	background: rgba(0, 0, 0, 0.8);
	padding: 54px 0 28px 0;
}

.info-entry {
	position: relative;
	transition: all 0.3s linear;
}

.info-entry:hover .media-wrap img {
	scale: 1.1;
}

.text-part {
	background: rgba(63, 80, 96, 0.15);
	padding: 0;
	width: 50%;
	display: flex;
	flex-direction: column;
	justify-content: center;
	padding: 1.5rem;
}

.text-part h2 {
	font-size: 16px;
	letter-spacing: 2px;
}

.text-part p {
	font-size: 12px;
	letter-spacing: 1.4px;
}

.end {
	text-align: end;
}

.info-entry-content {
	display: flex;
}

.media-wrap {
	width: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
}

.media-wrap img {
	width: 50%;
	translate: 0 16px;
}


/* ------------------------------------------------------------------- 
 * responsive:
 * infos 
 * ------------------------------------------------------------------- */
@media only screen and (max-width:1024px) {}

@media only screen and (max-width:900px) {
	#infos {
		padding-top: 4.2rem;
		padding-bottom: 3rem;
	}

	.info-entry .half-grey {
		display: none;
	}

	.info-entry .info-entry-content {
		max-width: 600px;
		padding-top: 9rem;
		padding-bottom: 7.8rem;
		border-bottom: 1px solid rgba(0, 24, 53, 0.1);
	}

	.info-entry .info-entry-content .media-wrap,
	.info-entry .info-entry-content .text-part {
		padding: 0 15px;
	}

	.info-entry .info-entry-content .media-wrap {
		position: static;
		/* width: 100%; */
		-webkit-transform: translateY(0);
		-ms-transform: translateY(0);
		transform: translateY(0);
		margin-bottom: 4.2rem;
	}

	.info-entry .info-entry-content .button {
		margin: 0 0 1.5rem 0;
	}

	.info-entry .info-entry-content h2::after {
		left: 50%;
		margin-left: -25px;
	}

	.info-entry:last-child .info-entry-content {
		border: none;
	}

}

@media only screen and (max-width:600px) {

	.info-entry .info-entry-content{
		padding: 1rem 8px;
	}

	.info-entry .info-entry-content .media-wrap,
	.info-entry .info-entry-content .text-part {
		padding: 0 10px;
	}

	.info-entry .info-entry-content .text-part {
		width: 80%;
	}

	.info-entry .info-entry-content h2 {
		font-size: 3rem;
		line-height: 1.3;
	}
	.info-entry .info-entry-content h2 {
		font-size: 12px;
		line-height: 2;
	}
	.text-part p{
		font-size: 10px;
		line-height: 1.8;
	}
	.media-wrap img {
		width: 90%;
		translate: 0 16px;
	}

}

@media only screen and (max-width:400px) {
	.info-entry .info-entry-content {
		padding: 0 8px;
	}

	.info-entry .info-entry-content .media-wrap,
	.info-entry .info-entry-content .text-part {
		padding: 0;
	}

	.info-entry .info-entry-content h2 {
		font-size: 12px;
		line-height: 2;
	}
	.text-part p{
		font-size: 10px;
		line-height: 1.8;
	}

}


/* ------------------------------------------------------------------- 
 * responsive:
 * stats 
 * ------------------------------------------------------------------- */
@media only screen and (max-width:1024px) {
	#stats .stat:nth-child(n) {
		border-left: 1px solid rgba(255, 255, 255, 0.05);
		padding-bottom: 1.5rem;
	}

	#stats .stat:nth-child(3n+1) {
		border: none;
	}

}

@media only screen and (max-width:768px) {
	#stats .stat:nth-child(n) {
		border-left: 1px solid rgba(255, 255, 255, 0.05);
	}

	#stats .stat:nth-child(2n+1) {
		border: none;
	}

}

@media only screen and (max-width:600px) {
	#stats .stat:nth-child(n) {
		border: none;
	}

}


/* ===================================================================
 * 15. pricing - (_layout.scss)
 *
 * ------------------------------------------------------------------- */
#pricing {
	padding-top: 6rem;
	padding-bottom: 6rem;
	background-color: rgba(0, 0, 0, 0.5);
}

.pricing-content {
	margin-top: 2.6rem;
	max-width: 1080px;
	margin-left: auto;
	margin-right: auto;
}

.pricing-content .bgrid {
	width: 32%;
	margin-bottom: 3.9rem;
	padding: 0;
}

.big {
	padding-left: 2%!important;
	flex: 1;
}

.bg-b{
	background-color: rgba(0, 0, 0, 0.5);
	padding-top: 1rem;
}

.bg-red {
	background: #a72424;
	opacity: 80%;
    width: 100%;
    padding: 20px;
    text-align: center;
    font-weight: bolder;
	margin: 0;
}

.p-black{
	padding: 10px;
	font-size: 12px;
    text-align: center;
    background: rgba(0, 0, 0, 0.5);
	box-shadow: 0 4px 8px rgba(167, 36, 36, 0.8);
	line-height: 1.8;
}
.p-bottom{
	margin-top: 1rem;
}
.m-bottom{
	margin-bottom: 2rem;
}
.m-top{
	margin-top: 4rem;
}
.p-bottom span{
	font-size: 14px;
	font-weight: bolder;
	color: red;
}

.pricing-content .group {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-around;
}

.pricing-content .group-price{
	display: grid;
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
    gap: 1rem;
	padding-bottom: 2rem;
}

.group-price .bgrid {
	width: 100%;
	margin-bottom: 3.9rem;
	padding: 0;
	margin: 0;
}

.pricing-content .price-block {
	border-radius: 9px;
	background: rgba(0, 0, 0, 0.8);
	text-align: center;
	padding: 6rem 0 2rem;
	box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);
	position: relative;
	height: 100%;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: space-between;
	overflow: hidden;
	box-shadow: 0 4px 8px rgba(167, 36, 36, 0.8);
}

.group-price .price-block{
	padding: 2rem 0;
}

.group-price .plan-price{
	margin-top: 2rem!important;
}

.shevron {
	width: 40px;
	rotate: 90deg;
}
.no{
	rotate: 0deg;
}

.no-marg{
	margin: 0!important;
}

.pricing-content .price-block:hover{
	scale: 1.01
}

.pricing-content .price-block .bottom-part {
	padding: 0 2rem;
	width: 100%;
}

.pricing-content .price-block .plan-title {
	padding-bottom: 16px;
	font-size: 16px;
	letter-spacing: 1.8px;
	position: relative;
}

.pricing-content .price-block .plan-title::after {
	display: block;
	background-color: white;
	width: 80px;
	height: 3px;
	content: '\0020';
	position: absolute;
	left: 50%;
	bottom: 0;
	margin-left: -40px;
}

.pricing-content .price-block .plan-price {
	font-size: 6.5rem;
	line-height: 1;
	margin-top: 4.2rem;
	margin-bottom: 0;
}

.pricing-content .price-block .plan-price sup {
	font-size: 2.4rem;
	top: -3rem;
	margin-right: 3px;
}

.plan-price s, .pricing-content .price-block .plan-price s sup{
	color: red;
	font-size: 20px;
}
.pricing-content .price-block .plan-price s sup{
	top: -1rem;
}
.pricing-content .price-block .price-month {
	margin-bottom: 1.2rem;
	font-size: 16px;
	letter-spacing: 1.6px;
}

.pricing-content .price-block .features {
	list-style: none;
	font-size: 1.6rem;
	margin: 0;
}

.pricing-content .price-block .features li {
	padding: .6rem 0;
	border-bottom: 1px solid white;
	display: flex;
	justify-content: center;
}

.features li p, .text-small {
	padding: 0;
	margin: 0;
	font-size: 12px;
	text-align: left;
}

.pricing-content .price-block .features li strong {
	margin-right: 10px;
}

.pricing-content .price-block .features li:last-child {
	border: none;
}

.pricing-content .primary {
	background: rgba(167, 36, 36, 0.8);
	color: #FFFFFF;
}

.pricing-content .primary::before {
	content: attr(data-info);
	display: block;
	min-height: 48px;
	line-height: 48px;
	width: 100%;
	text-align: center;
	color: #FFFFFF;
	background: rgba(167, 36, 36, 1);
	font-size: 1.2rem;
	text-transform: uppercase;
	letter-spacing: .3rem;
	position: absolute;
	top: 0px;
	left: 50%;
	-webkit-transform: translate(-50%);
	-ms-transform: translate(-50%);
	transform: translate(-50%);
}

.pricing-content .primary .plan-title {
	color: #FFFFFF;
}

.pricing-content .primary .plan-price {
	color: #FFFFFF;
}


.pricing-content .primary .button {
	background: #FFFFFF;
	color: #001835;
}

.pricing-content .primary .button:hover,
.pricing-content .primary .button:focus {
	background: #002149;
}



.pricing-content .primary .features li {
	border-bottom: 1px solid white;
}

.pricing-content .primary .features li strong {
	color: #FFFFFF;
}

.p-desc{
	font-size: 8px;
	margin: 0;
}
.sponsor-text {
	line-height: 2;
}

.w-6 {
	width: 60%!important;
}
/* ------------------------------------------------------------------- 
 * responsive:
 * pricing 
 * ------------------------------------------------------------------- */
@media only screen and (max-width:1024px) {
	.pricing-content {
		max-width: 650px;
	}

	.pricing-content .bgrid {
		padding: 0;
		/* width: 49%; */
		clear: none;
	}

	.pricing-content .bgrid:nth-child(2n+1) {
		clear: both;
	}

	.big {
		padding-left: 0!important;
	}

}

@media only screen and (max-width:600px) {
	.pricing-content {
		margin: 0;
	}

	.pricing-content .group-price {
		grid-template-columns: repeat(auto-fit, minmax(140px, 1fr))
	}

	.pricing-content .group {
		padding: 1.5rem 10px;
		gap: 4px;
	}

	.pricing-content .bgrid {
		width: 100% !important;
		margin-left: 0;
		margin-right: 0;
	}

	.pricing-content .price-block .plan-title{
		font-size: 14px;
	}

	.pricing-content .group h3 {
		font-size: 1.8rem;
		text-align: center;
	}
	.no-marg {
		font-size: 16px;
	}

	.pricing-content .price-block {
		padding: 2rem 0;
	}
	.pricing-content .price-block.primary{
		padding-top: 6rem;
	}

}


/* ===================================================================
 * 19. footer - (_layout.scss)
 *
 * ------------------------------------------------------------------- */
footer {
	background: black;
	opacity: 80%;
	text-align: center;
	padding-bottom: 4rem;
	position: relative;
}

footer a,
footer a:visited {
	color: #FFFFFF;
	-moz-transition: all 0.3s ease-in-out;
	-o-transition: all 0.3s ease-in-out;
	-webkit-transition: all 0.3s ease-in-out;
	-ms-transition: all 0.3s ease-in-out;
	transition: all 0.3s ease-in-out;
}

.col {
	color: #FFFFFF;
	font-size: 14px;
	letter-spacing: 1.4px;
	text-align: left;
	cursor: pointer;
}

footer a:hover,
footer a:focus,
footer a:active {
	color: #ed254d;
	outline: 0;
}

.fa-i {
	font-size: 4.2rem;
	line-height: 4.2rem;
	color: #FFFFFF;
	display: block;
	border-right: 1px solid rgba(255, 255, 255, 0.02);
}

.fa5 {
	font-size: 30px;
	transition: all 0.1s linear;
}

.a-footer{
	display: flex;
	gap: 10px;
}
.a-footer:hover {
	color: #ed254d;
	scale: 1.05;
}

.footer-social-list li a:hover,
.footer-social-list li a:focus,
.footer-social-list li a:active {
	color: #ed254d;
}

.footer-social-list li:first-child a {
	border-left: 1px solid rgba(255, 255, 255, 0.02);
}

.footer-info {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	justify-content: space-around;
	padding-top: 6rem;
}

.footer-bottom {
	font-size: 10px;
}

.footer-info h4 {
	font-size: 16px;
	letter-spacing: 1.8px;
	color: #FFFFFF;
	text-align: left;
	cursor: pointer;
}

.footer-info h4 i {
	margin-right: 10px;
	font-size: 1.2em;
	position: relative;
	top: 3px;
}

.footer-info .footer-link-list {
	margin: 0 0 3rem 0;
	padding: 0;
	list-style: none;
}

.footer-info .footer-link-list li {
	padding: 0;
}

@media only screen and (max-width: 500px){
	.footer-info{
		padding: 2rem 6px 0;;
		align-items: flex-start;
	}
	.footer-info h4 {
		font-size: 14px;
	}
	.col{
		font-size: 10px;
		line-height: 22px;
	}
	.fa5 {
		font-size: 30px;
	}
}

/* ------------------------------------------------------------------- 
 * go to top - (_layout.scss)
 * ------------------------------------------------------------------- */
#go-top {
	position: fixed;
	bottom: 0;
	right: 0;
	z-index: 800;
	display: none;
}

#go-top a {
	text-decoration: none;
	border: none;
	display: block;
	width: 42px;
	height: 42px;
	line-height: 3.8rem;
	text-align: center;
	background: #000000;
	color: #FFFFFF;
}

#go-top a i {
	font-size: 1.6rem;
	line-height: inherit;
}

#go-top a:hover,
#go-top a:focus {
	background: #ce1137;
}

/* ------------------------------------------------------------------- 
 * responsive:
 * footer
 * ------------------------------------------------------------------- */
@media only screen and (max-width:1024px) {
	.footer-social-list li a {
		font-size: 3.6rem;
		line-height: 3.6rem;
		padding: 3.9rem 3rem 4.2rem;
	}

}

@media only screen and (max-width:768px) {
	.footer-social-list li a {
		font-size: 3.3rem;
		line-height: 3.3rem;
		padding: 3.6rem 2rem 3.9rem;
		border: none !important;
	}

}

@media only screen and (max-width:600px) {
	.footer-social-list li a {
		font-size: 3rem;
		line-height: 3rem;
		padding: 3.3rem 1.5rem 3.6rem;
		border: none;
	}

	.copyright span {
		display: block;
	}

	.copyright span::after {
		display: none;
	}

}

@media only screen and (max-width:500px) {
	.footer-social-list li a {
		font-size: 2.8rem;
		line-height: 2.8rem;
		padding: 3rem 1rem 3.3rem;
		border: none;
	}

}

@media only screen and (max-width:400px) {
	.footer-social-list li a {
		font-size: 2.5rem;
		line-height: 2.5rem;
		padding: 2.7rem .8rem 3rem;
		border: none;
	}

}

/* Стили для слайдера */
#swiper {
	margin-left: auto;
	margin-right: auto;
	padding-top: 9rem;
	overflow: hidden;
	max-width: 1200px;
}

.swiper-container {
    width: 100%;
	max-width: 1600px;
	position: relative;
	margin-bottom: 9rem;
}

.swiper-slide {
	height: 340px!important;
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: #fff;
    box-shadow: 0px 0px 20px red;
    overflow: hidden;
    transition: box-shadow 0.3s ease;
	background-color: inherit;
	cursor: pointer;
}

.swiper-slide img{
	object-fit: cover;
	width: 100%;
	height: 100%;
}

.swiper-slide:hover {
    box-shadow: 0px 0px 30px red;
}

.swiper-button-next,
.swiper-button-prev {
    color: #a72424;
    padding: 20px;
    border-radius: 50%;
}

.swiper-button-next::after,
.swiper-button-prev::after {
    font-size: 1.5rem;
	color: #a72424;
}

.swiper-pagination {
	bottom: -30px!important;
}

.swiper-pagination-bullet {
    background-color: #a72424!important;
    /* opacity: 0.5; */
}

.swiper-pagination-bullet-active {
    background-color: #ff0000!important;
    opacity: 1;
}

#swiper .a-slider{
	font-size: 15px;
    color: red;
    font-weight: bold;
}


/* Стили для бегущей строки */
.marquee {
	z-index: 999999;
	position: fixed;
	bottom: 0;
	left: 0;
    width: 100%;
    overflow: hidden;
    white-space: nowrap;
    background-color: #ffcc00; /* Желтый фон для привлечения внимания */
    color: #333; /* Цвет текста */
    padding: 6px 0;
    font-size: 1.2rem;
    font-weight: bold;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
}

.marquee-content {
    display: inline-block;
    padding-left: 100%; /* Начальное смещение текста за пределы экрана */
    animation: marquee 60s linear infinite; /* Анимация бегущей строки */
}

.marquee-content span {
    display: inline-block;
    padding-right: 50px; /* Расстояние между повторениями текста */
}

/* Анимация бегущей строки */
@keyframes marquee {
    0% {
        transform: translateX(0); /* Начальная позиция */
    }
    100% {
        transform: translateX(-100%); /* Конечная позиция */
    }
}
@media only screen and (max-width: 500px){
	.marquee {
		font-size: 1rem;
		padding: 0;
	}

	#go-top a{
		width: 29px;
		height: 28.5px;
		line-height: 36px;
	}
}

.accordion {
	background-color: rgba(0,0,0,0.8);
	width: 100%;
}

.accordion-item {
	margin-bottom: 10px;
	overflow: hidden;
}

.accordion-header {
	position: relative;
	padding: 8px;
	opacity: 0.8;
	font-size: 16px;
	font-weight: bold;
	cursor: pointer;
	background-color: #a72424;
	color: #fff;
	transition: background-color 0.3s ease;
}

.accordion-content {
	font-size: 11px;
	line-height: 1.9;
	padding: 15px;
	display: none;
}

.accordion-item.active .accordion-content {
	display: block;
}

/* Стрелочка */
.accordion-header::after {
	content: '▼';
	font-size: 14px;
	position: absolute;
	right: 15px;
	top: 50%;
	transform: translateY(-50%);
	transition: transform 0.4s ease;
}

/* Стрелочка при открытом аккордеоне */
.accordion-item.active .accordion-header::after {
	transform: translateY(-50%) rotate(180deg);
}

/* Стили для модального окна */
.modal {
    display: none; /* Скрыто по умолчанию */
    position: fixed;
    z-index: 1000;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    overflow: auto;
    background-color: rgba(0, 0, 0, 0.8); /* Полупрозрачный черный фон */
}

.modal-content {
    background-color: rgb(213 91 91 / 80%);
    margin: 10% auto;
    padding: 20px;
    border-radius: 10px;
    width: 80%;
    max-width: 600px;
    text-align: center;
    position: relative;
	box-shadow: 0px 0px 20px red;
}

.close-modal {
    position: absolute;
    right: 10px;
    top: 10px;
    font-size: 32px;
    font-weight: bold;
    cursor: pointer;
}

#modal-title {
	font-size: 24px;
	letter-spacing: 3px;
}

#modal-description {
	color: #fff;
	border-top: 1px solid;
	padding-top: 1rem;
}

/* Класс для отключения скролла */
.no-scroll {
    overflow: hidden;
}

.map {
	position: relative;
	padding-bottom: 36.25%;
	height: 0;
	margin-left: auto;
	margin-right: auto;
	overflow: hidden;
  }
  
  .map iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100% !important;
	height: 100% !important;
  }

  @media (max-width: 600px) {
	#map_block {
	  display: block !important;
	  height: 400px !important;
	}
  }

  .dogovor {
	display: flex;
	cursor: pointer;
	justify-content: center;
	align-items: center;
  }

.mar {
	padding-top: 45px;
}

/* Неоновый декор первого экрана (SVG вставляет main.js) */
#pushka-index-neon {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	height: min(52vh, 420px);
	pointer-events: none;
	z-index: 2;
	overflow: hidden;
	opacity: 0.72;
}

#pushka-index-neon svg {
	display: block;
	width: 100%;
	height: 100%;
}

@media (prefers-reduced-motion: no-preference) {
	#pushka-index-neon {
		animation: pushkaIndexNeonBreath 5.5s ease-in-out infinite;
	}
}

@keyframes pushkaIndexNeonBreath {

	0%,
	100% {
		opacity: 0.5;
		filter: saturate(1) hue-rotate(0deg);
	}

	50% {
		opacity: 0.88;
		filter: saturate(1.25) hue-rotate(-6deg);
	}
}

@media only screen and (max-width: 600px) {
	#pushka-index-neon {
		height: min(38vh, 260px);
		opacity: 0.5;
	}
}

