/* USER VARIABLES SECTION */

:root {
	--accent: #FFCE20;
	--text: #000;
	--link: #55A3EC;
	--regular-text: 16px;
	--lineheight: 1.65;
	--userfont: open-sans-st, sans-serif;
	--systemfont: -apple-system, BlinkMacSystemFont, Arial, sans-serif;

	/* Hover */
	--link-hover: #1e6db7;
	--accent-hover: #d5a90a;
}

/* BOOTSTRAP SETTINGS SECTION */

/* gutter 20px (10px + 10px). Comment this code for default gutter start at 1.5rem (24px) wide. */
.container, .container-fluid, .container-lg, .container-md, .container-sm, .container-xl, .container-xxl { --bs-gutter-x: .625rem; }
.row, .row > * { --bs-gutter-x: 1.25rem; }

/* FONTS LOAD SECTION */

@font-face { src: url("../fonts/OpenSans-Regular.woff2") format("woff2"); font-family: "open-sans-st"; font-weight: 400; font-style: normal; }
@font-face { src: url("../fonts/OpenSans-Bold.woff2") format("woff2"); font-family: "open-sans-st"; font-weight: 700; font-style: normal; }
@font-face { src: url("../fonts/Bitstream-Iowan-Old-Style-Bold.woff2") format("woff2"); font-family: "iowan-st"; font-weight: 700; font-style: normal; }


/*=============================================
=            General css settings            =
=============================================*/


::placeholder { color: #666; }
::selection { background-color: var(--accent); color: #fff; }
input, textarea { outline: none; }
input:focus:required:invalid, textarea:focus:required:invalid { border-color: red; }
input:required:valid, textarea:required:valid { border-color: green; }

body {
	font-family: var(--userfont);
	font-size: var(--regular-text);
	line-height: var(--lineheight);
	color: var(--text);
	min-width: 320px;
	position: relative;
	overflow-x: hidden;
}

.title {
	font-family: iowan-st;
	font-weight: 700;
}

.link	{
	color: var(--link);
	transition: color .3s ease-out;
	text-decoration: underline;
	cursor: pointer;
}

.link:hover {
	color: var(--link-hover);
}

.button {
	width: 270px;
	height: 60px;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 15px;
	border: none;
	transition: background-color .3s ease-out;
	background-color: var(--accent);
	cursor: pointer;
}

.button:hover {
	background-color: var(--accent-hover);
}

.button_bold {
	font-weight: 700;
	margin: 0 5px;
}

.section_mt90 {
	margin-top: 90px;
}

.section_mt80 {
	margin-top: 80px;
}

.section_mt70 {
	margin-top: 70px;
}

.section_mt60 {
	margin-top: 60px;
}

.section_relative {
	position: relative;
}

.section_top-lighter {
	position: relative;
}

.section_top-lighter::after {
	content: '';
	position: absolute;
	top: 0;
	width: 100%;
	height: 50%;
	left: 0;
	background: linear-gradient(180deg, #FFF 0%, rgba(255, 255, 255, 0.00) 100%);
}

.section_background-image {
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;
}

.section-title {
	font-size: 40px;
	margin-bottom: 40px;
	text-transform: uppercase;
}

.section-title_center {
	text-align: center;
}

.section-title--with-subtitle {
	margin-bottom: 0;
}

.section-subtitle {
	font-size: 18px;
	text-align: center;
	margin: auto;
	margin-bottom: 50px;
	max-width: 450px;
}

.img-responsive img {
	max-width: 100%;
	height: auto;
}

/*=====  End of General css settings  ======*/


/*=============================================
=            User styles            =
=============================================*/

.main-screen {
	position: relative;
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;
	padding: 40px;
	transition: all .3s ease-out;
	z-index: 10;
}

.main-screen::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 70%;
	height: 100%;
	background: linear-gradient(90deg, #000 0%, rgba(0, 0, 0, 0.00) 100%);
}

.main-screen::after {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, .6)
}

.main-screen__border {
	position: absolute;
	top: 40px;
	left: 40px;
	bottom: 40px;
	right: 40px;
	border: 1px solid var(--accent);
	z-index: 1;
}

.main-screen__content {
	z-index: 1;
	position: relative;
	padding: 30px;
}

.menu-btn {
	display: flex;
	align-items: center;
	color: var(--accent);
	cursor: pointer;
}

.menu-btn:hover .menu-btn__text {
	color: var(--accent-hover);
}

.menu-btn__icon {
	margin-right: 18px;
	transition: fill .3s ease-out;
}

.menu-btn__text {
	font-size: 15px;
	transition: color .3s ease-out;
}

.phone {
	background-color: #fff;
	height: 50px;
	border-radius: 5px;
	display: flex;
	align-items: center;
	width: 200px;
	text-decoration: none;
}

.phone__icon {
	width: 50px;
	height: 50px;
	background-color: #fff;
	border-radius: 50%;
	margin-left: -24px;
	margin-right: 15px;
}

.phone__content {
	padding: 10px 0;
	display: flex;
	flex-direction: column;
	align-items: center;
}

.phone__text {
	color: var(--text);
	line-height: 1.1;
}

.phone__popup-trigger {
	font-size: 10px;
}

.offer {
	margin: 50px 0 90px 0;
	text-align: center;
}

.offer__top {
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
	color: var(--accent);
}

.offer__top::after, .offer__top::before {
	position: absolute;
	content: '';
	width: 20%;
	height: 1px;
	background-color: var(--accent);
}

.offer__top::after {
	right: 0;
}

.offer__top::before {
	left: 0;
}

.offer__text {
	margin: 0 10px;
}

.offer__title {
	font-size: 70px;
	text-transform: uppercase;
}

.offer__subtitle {
	font-size: 25px;
}

.offer__title, .offer__subtitle {
	color: #fff;
}

.offer__subtitle_bold {
	font-weight: 700;
}

.dist-offer {
	text-align: center;
}

.dist-offer__subtitle {
	font-size: 13px;
	color: var(--accent);
}

.dist-offer__title {
	color: #fff;
	font-size: 22px;
	margin-bottom: 5px;
}

.dist-offer__text {
	color: #D2D2D2;
	font-size: 12px;
	margin: auto;
	margin-bottom: 30px;
	max-width: 320px;
}

.dist-offer__btn {
	margin: auto;
	margin-bottom: 8px;
}

.button__link {
	font-size: 13px;
}

.about-image {
	position: relative;
	width: 120%;
	margin-left: -20%;
	z-index: -1;
}

.about-image::after {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: linear-gradient(-90deg, rgba(255, 255, 255, 0.00) 43.23%, #FFF 100%);
}

.flex-grid-box {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}

.flex-grid-box__item {
	width: 33.3333%;
	height: 500px;
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
}

.flex-grid-box__item--is-image {
	position: relative;
}

.flex-grid-box__item--is-image::after {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
	background-color: rgba(255, 211, 54, .5);
}

.flex-grid-box__item--is-text {
	padding: 50px 60px;
	background-image: url('../images/grid/grid-pattern.jpg');
}

.flex-grid-box__title {
	font-size: 30px;
	margin-bottom: 10px;
	line-height: 1.4;
	text-transform: uppercase;
}

.product-card {
	padding: 20px;
	background: linear-gradient(180deg, #FFFAFA 0%, #F9F9F9 100%);
	display: flex;
	margin-bottom: var(--bs-gutter-x);
}

.product-image {
	margin-right: 25px;
}

.product-content {
	border-radius: 5px;
	padding: 20px 0;
}

.product-title {
	font-size: 20px;
	margin-bottom: 10px;
	text-transform: uppercase;
}

.card-box__item {
	padding: 20px;
	border-radius: 5px;
	background: linear-gradient(90deg, #F8F8F8 0%, rgba(248, 248, 248, 0.00) 100%);
	margin-bottom: 10px;
	display: flex;
	align-items: center;
}

.card-box__icon-wrapper {
	width: 60px;
	height: 60px;
	background-color: #fff;
	border-radius: 50%;
	margin-right: 24px;
	display: flex;
	align-items: center;
	justify-content: center;
}

.card-box__text {
	font-size: 20px;
}

.card-box__text_bold {
	font-weight: 700;
}

#contact {
	background: url('../images/map.png') no-repeat top / contain;
}

.contact-box {
	padding: 30px;
	background-color: #fff;
	border-radius: 5px;
}

.contact-box__title {
	font-size: 25px;
	margin-bottom: 25px;
	font-weight: 700;
}

.contact-box__item {
	padding-bottom: 20px;
	margin-bottom: 20px;
	border-bottom: 1px solid #E1E1E1;;
}


.contact-box__item:last-child {
	border-bottom: none;
}

.contact-box__link {
	display: flex;
	align-items: center;
	margin-bottom: 5px;
	text-decoration: none;
	color: #000;
}

.contact-box__icon {
	margin-right: 12px;
}

.contact-box__value {
	font-weight: 700;
}

.contact-box__description {
	font-size: 15px;
	color: #7E7E7E;
}

.catalog-background-image {
	position: absolute;
}

.catalog-background-image_right {
	right: 0;
	top: -20%;
	z-index: -1;
}

.catalog-background-image_left {
	left: 0;
	top: 20%;
	z-index: -1;
}

.form p {
	margin: 0;
	padding: 0;
}

.form-box {
	padding: 50px;
	border-radius: 5px;
	background: #FFF;
	box-shadow: 10px 15px 40px 10px rgba(0, 0, 0, 0.05);
	text-align: center;
}

.form-box__title {
	font-size: 30px;
	margin-bottom: 5px;
	text-transform: uppercase;
}

.form-box__subtitle {
	font-size: 18px;
	margin-bottom: 40px;
}

.form__checkbox-group {
	display: flex;	
	justify-content: center;
	margin-bottom: 20px;
}

.form__checkbox {
	margin: 0 30px;
	font-size: 18px;
}

.form__checkbox-group_column {
	flex-direction: column;
	align-items: flex-start;
}

.form__checkbox-group_column .form__checkbox {
	margin: 0;
	margin-bottom: 15px;
}

.form__input-group {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.form__input {
	height: 80px;
	padding-left: 20px;
	width: 32%;
	margin-bottom: 15px;
	background-color: #F8F8F8;
	border: none;
}

.form__input-group_column {
	flex-direction: column;
}

.form__input-group_column .form__input,
.form__input-group_column .form__button  {
	width: 100%;
}

.form__input::placeholder {
	color: #726D6D;
}

.form__input, .form__button  {
	width: 32%;
}

.form__button {
	height: 80px;
	margin: auto;
	font-size: 18px;
	font-weight: 700;
}

.notice {
	border-radius: 0px 0px 1500px 1500px;
	background: #FFF;
	text-align: center;
	z-index: 1;
	position: relative;
	padding-bottom: 40px;
}

.notice__title {
	font-size: 40px;
	font-weight: 700;
	text-transform: uppercase;
	margin-bottom: 10px;
}

.notice__subtitle {
	font-size: 20px;
}

.social-group {
	display: flex;
	justify-content: center;
	margin-top: 50px;
}

.social-group__item {
	width: 80px;
	height: 80px;
	margin: 0 20px;
	background-color: #fff;
	border-radius: 50%;
	display: flex;
	justify-content: center;
	align-items: center;
	transition: background-color .3s ease-out;
	cursor: pointer;
}

.social-group__item:hover {
	background-color: #e3e3e3;
	color: #000;
}

.phone-box {
	margin-top: 35px;
	text-align: center;
	padding-bottom: 230px;
}

.phone-box__title {
	font-size: 15px;
	color: #fff;
	margin-bottom: 10px;
}

.phone-box__phone {
	padding: 10px 50px;
	border-radius: 5px;
	background-color: #fff;
	color: #000;
	text-decoration: none;
	font-weight: 700;
	transition: background-color .3s ease-out;
}

.phone-box__phone:hover {
	background-color: #e3e3e3;
	color: #000;
}

.footer {
	padding: 50px 0;
	background-color: #000A23;
	text-align: center;
}

.footer__text {
	margin-bottom: 30px;
	color: #8B8B8B;
}
.footer__link-group {
	display: flex;
	align-items: center;
	justify-content: center;
}

.footer__link {
	color: #8B8B8B;
	transition: color .3s ease-out;
	display: block;
	margin: 0 15px;
}

.footer__link:hover {
	color: #fff;
}

.modal-body__title {
	font-size: 25px;
	text-transform: uppercase;
	font-weight: 700;
}

.modal-body__subtitle {
	margin-bottom: 40px;
}

.modal-close {
	width: 60px;
	height: 60px;
	position: absolute;
	display: flex;
	align-items: center;
	justify-content: center;
	top: 0;
	right: 0;
	z-index: 2;
	cursor: pointer;
	opacity: 0.3;
	transition: opacity .3s ease-out;
}

.modal-close:hover {
	opacity: 1;
}

.modal-menu {
	padding: 0;
	margin: 0;
	margin: 40px 0;
	list-style: none;
}

.modal-menu a {
	color: #000;
	text-decoration: none;
	display: block;
	margin-bottom: 10px;
	transition: color .3s ease-out;
}

.modal-menu a:hover {
	color: var(--accent);
}

.modal-phone {
	font-weight: 700;
	font-size: 18px;
	margin-bottom: 15px;
	color: #000;
	display: block;
	margin-bottom: 15px;
}

.info-message {
	color: #b7b7b7;
	font-size: 13px;
}

.fake-header {
	height: 50px;
}

.fixed-menu .fake-header  {
	display: block !important;
}

.fixed-menu .header {
	position: fixed;
	width: 100%;
	left: 0;
	top: -91px;
	z-index: 10;
	padding: 0 30px;
	background-color: #fff;
	animation-name: slideDown;
	animation-fill-mode: forwards;
	animation-duration: .3s;
	padding: 10px 0;
	z-index: 15;
}

@keyframes slideDown {
	0% {
		top: -91px;
	}
	100% {
		top: 0;
	}
}

.simple-page-wrapper {
  display: flex;
  flex-direction: column;
  min-height: 100vh;
}

.page-main {
  flex-grow: 1;
	padding-bottom: 60px;
}

.simple-page-title {
	margin-top: 20px;
	margin-bottom: 40px;
}

.modal {
	top: 5%;
}

#wpcf7-f30-o1 .form__input-group p {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
}

#wpcf7-f30-o1 .form__input {
	width: 100%;
}

#wpcf7-f30-o1 .wpcf7-form-control-wrap {
	width: 32%;
}

#wpcf7-f30-o1 .wpcf7-not-valid-tip {
	position: absolute;
	top: 0;
	left: 20px;
}

.form__input-group {
	position: relative;
}

#wpcf7-f30-o1 .wpcf7-spinner {
	position: absolute;
	bototm: 0;
}


/*=====  End of User styles  ======*/
