/* Reset */
*,
*::before,
*::after {
	margin: 0;
	padding: 0;
	box-sizing: border-box;
	overflow-x: hidden;
}

/******************************************** Utility Components ***************************************/
:root {
	font-size: 62.5%;

	/************ Custom Properties ***********/

	/* Main Color */
	--primary-color: #014d4e;

	/* Secondary Color */
	--secondary-color: #5F7ECF;
	--secondary-color: #9C9CBF;

	/* Header Text Color */
	--main-text-color: black;
	--main-used-color: #9C9CBF;
}

html {
	scroll-behavior: smooth;
}

body {
	font-family: "Poppins", sans-serif;
	color: var(--main-text-color);
	line-height: 1.8;

	display: flex;
	flex-direction: column;
}

button {
	font-family: "Poppins", sans-serif;
	color: var(--main-text-color);
	line-height: 1.8;
}

body * {
	overflow: hidden;
}

/* List Items */
li {
	list-style: none;
}

/* Abchor Tags */
a:link,
a:visited {
	text-decoration: none;
	color: inherit;
	font-size: 1.5rem;
}
/******************************************** -Utility Components- ***************************************/







/******************************************** Navbar ********************************************/
main-container {
	width: 1320px;
	margin: 0 auto;
	padding: 0;

	display: flex;
	flex-direction: row;
}

navbar {
	background-color: white;
	font-size: 1.8rem;

	padding: 1rem 0;
	display: flex;
	flex-direction: row;
}
navbar div#nav-logo {
	display: flex;
	align-items: center;
}
navbar div#nav-logo a {
	font-weight: 700;
	color: transparent;
	background-image: linear-gradient(to top, #FFCA00, #FF5A00);
	background-clip: text;
	display: inline-block;
}
navbar div#nav-items {
	padding: 0 6rem;
	display: flex;
	align-items: center;
	flex-grow: 1;
}

navbar div#nav-items a {
	padding: 0 1rem;
	transition: color 500ms ease-in-out;
}
navbar div#nav-items a.highlighted {
	color: #FFCA00;
}
navbar div#nav-items a:hover,
navbar div#nav-items a.highlighted:hover {
	color: #FF5A00;
}

navbar div#nav-items a:last-child {
	font-weight: 700;
}
navbar div#nav-buttons form {
	margin: 0;
	padding: 0;
	width: auto;
	display: flex;
	align-items: center;
	justify-content: flex-end;
}
navbar div#nav-buttons form button {
	margin-right: 1rem;
	background-color: transparent;
	border: none;
	cursor: pointer;
}
navbar div#nav-buttons a:first-child {
	margin-right: 1rem;
}

navbar div#nav-buttons a:last-child {
	position: relative;
}
navbar div#nav-buttons a:last-child::after {
	content: var(--cart-count);
	position: absolute;
	top: -.8rem;
	right: 0;
	background-color: #FFCA00;
	border-radius: 50%;
	border: none;
	width: 1.1rem;
	height: 1.1rem;
	box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2);
	font-size: .6rem;
	font-weight: bold;
	z-index: 999;

	display: flex;
	align-items: center;
	justify-content: center;
}
/******************************************** -Navbar- ********************************************/








/******************************************** Main Section ********************************************/
div#main-section {
	background-color: #F3F3F3;
	display: flex;
	flex-direction: column;
	justify-content: center;
}
div#main-section div#main-block {
	background: #ECECEC;
	background: linear-gradient(130deg, rgba(242,209,76,0.2) 3%, rgba(240,241,246,0.2) 69%, rgba(0,0,0,0.02) 100%);
	border-radius: 30px;
	width: 1320px;
	margin: 0 auto;
	min-height: 56rem;
	position: relative;

	padding: 5rem;

	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: flex-start;
}
div#main-section div#main-block h2 {
	max-width: 55%;
	font-size: 5.5rem;
	line-height: 6.5rem;
	z-index: 2;
}
div#main-section div#main-block p {
	max-width: 55%;
	font-size: 3rem;
	line-height: 4rem;
	z-index: 2;
}
div#main-section div#main-block div#main-btns {
	margin-top: 2rem;
	
	display: flex;
	flex-direction: row;
}
div#main-section div#main-block div#main-btns button.main-block__btn:first-child {
	margin-right: 1rem;
}
div#main-section button.main-block__btn {
	background-color: black;
	color: white;
	padding: .5rem 1rem;
	border-radius: 15px;
	border: none;
	cursor: pointer;

	transition: all 500ms;
}
div#main-section button.main-block__btn:hover {
	background-color: #FFCA00;
	color: black;
}
div#main-section div#main-block div#main-btns button.main-block__btn:last-child {
	background-color: #FFCA00;
	color: black;
}
div#main-section div#main-block div#main-btns button.main-block__btn:last-child:hover {
	background-color: black;
	color: white;
}

div#main-section div#main-block img {
	width: 55%;
	position: absolute;
	right: 3rem;
	bottom: 3rem;
	z-index: 1;
}
/******************************************** Main Cards ********************************************/
div#main-section div#main-cards {
	width: 1320px;
	margin: 3rem auto;

	display: flex;
	flex-direction: row;
}
div#main-section div#main-cards div.card {
	width: calc(1320px / 4);
	height: 27.8rem;
	margin-right: 1rem;
	background-color: white;
	border-radius: 30px;
	border: none;

	display: flex;
	justify-content: center;
	align-items: center;

	transition: all 500ms;
}
div#main-section div#main-cards div.card:hover {
	border: 8px solid #FFCA00;
}
div#main-section div#main-cards div.card img {
	width: 40%;
}
div#main-section div#main-cards div.card:nth-child(3) img {
	width: 60%;
}
div#main-section div#main-cards div.card:last-child {
	margin-right: 0;
}
/******************************************** -Main Cards- ********************************************/
/******************************************** Main Computers ********************************************/


div#main-section div#main-computers {
	width: 1320px;
	margin: 3rem auto;

	display: flex;
	flex-direction: column;
	align-items: center;
}
div#main-section div#main-computers h2 {
	font-weight: 500;
	font-size: 5.5rem;
	line-height: 6.8rem;
}
div#main-section div#main-computers p {
	font-size: 3rem;
	line-height: 4.3rem;
}
div#main-section div#main-computers button {
	margin: 1rem 0 3rem;
	font-size: 1.4rem;
	line-height: 1.7rem;
}

div#main-section div#main-computers div#main-computers_cards {
	width: 100%;

	display: flex;
	flex-direction: row;
}
div#main-section div#main-computers div#main-computers_cards div.main-computers_card {
	width: 25%;
	margin-right: 2rem;
	background-color: white;
	border-radius: 30px;

	display: flex;
	flex-direction: column;
	align-items: center;
}
div#main-section div#main-computers div#main-computers_cards div.main-computers_card:first-child {
	width: 50%;
	background-image: url('./../images/dators-1.jpg');
	background-size: cover;
  background-position: center;
  border-radius: 30px;
}
div#main-section div#main-computers div#main-computers_cards div.main-computers_card:last-child {
	margin-right: 0;
}
div#main-section div#main-computers div#main-computers_cards div.main-computers_card h2 {
	text-align: center;
	font-size: 2.5rem;
	line-height: 3.1rem;;
}
div#main-section div#main-computers div#main-computers_cards div.main-computers_card p,
div#main-section div#main-computers div#main-computers_cards div.main-computers_card b {
	font-size: 1.6rem;
	line-height: 2.5rem;
}
div#main-section div#main-computers div#main-computers_cards div.main-computers_card:first-child {
	width: 50%;
}
div#main-section div#main-computers div#main-computers_cards div.main-computers_card button {
	background-color: #FFCA00;
	color: black;

	transition: all 500ms;
}
div#main-section div#main-computers div#main-computers_cards div.main-computers_card button:hover {
	background-color: black;
	color: white;
}
div#main-section div#main-computers div#main-computers_cards div.main-computers_card img {
	padding: 2rem;
	width: 22rem;
	height: 17rem;
}
/******************************************** -Main Computers- ********************************************/
/******************************************** -Main Section- ********************************************/








/******************************************** About Section ********************************************/

div.container {
	width: 1320px;
	margin: 0 auto;
	padding: 0;
}

div#about-section {
	width: 100%;
	height: auto;
	padding: 6rem 0;
	background-color: white;
}

div#about-section div.container {
	display: flex;
	flex-direction: column;
}

div#about-section div.container h2 {
	font-size: 5.5rem;
	line-height: 9.8rem;
	font-weight: 600;
	margin-bottom: 2rem;
	position: relative;
}

div#about-section div.container h2::after {
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	width: 28.7rem;
	height: .1rem;
	background-color: #5ED9D9;
	z-index: 100;
}

div#about-section div.container div#about-block {
	display: flex;
	flex-direction: row;
}

div#about-section div.container div#about-block div#about-block__text {
	width: 55%;
	margin-right: 3rem;

	display: flex;
	flex-direction: column;
	align-items: flex-start;
}

div#about-section div.container div#about-block div#about-block__text p {
	font-size: 1.7rem;
	line-height: 2.5rem;
	font-weight: 200;
	text-align: justify;
	margin-bottom: 2rem;
}

div#about-section div.container div#about-block div#about-block__text button {
	background-color: #64BFBF;
	color: white;

	margin: 1rem 0 3rem;
	padding: 1.3rem 1rem;
	border-radius: 15px;
	border: none;

	font-size: 1.4rem;
	line-height: 1.7rem;
	text-transform: uppercase;
	cursor: pointer;

	transition: all 500ms;
}

div#about-section div.container div#about-block div#about-block__text button:hover {
	background-color: #FFCA00;
	color: black;
}

div#about-section div.container div#about-block div#about-block__img {
	width: 45%;
	margin-left: 3rem;
}

div#about-section div.container div#about-block div#about-block__img img {
	width: 100%;
	height: auto;
	border-radius: 20px;
	box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
}
/******************************************** -About Section- ********************************************/








/******************************************** Advantages Section ********************************************/
div#advantages-section {
	width: 100%;
	height: auto;
	padding: 6rem 0;
	background-color: #F3F3F3;
}

div#advantages-section div.container {
	display: flex;
	flex-direction: column;
}

div#advantages-section div.container h2,
div#advantages-section div.container h2 b {
	color: black;
	font-size: 5.5rem;
	line-height: 9.8rem;
	font-weight: 600;
	margin-bottom: 8rem;
	position: relative;
}

div#advantages-section div.container h2 b {
	color: #64BFBF;
}

div#advantages-section div.container h2::after {
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	width: 28.7rem;
	height: .1rem;
	background-color: #5ED9D9;
	z-index: 100;
}

div#advantages-section div.container div#advantages-section__cards {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
}

div#advantages-section div.container div#advantages-section__cards div.advantage-card {
	flex: 1 1 calc(33.333% - 8rem); /* Три карточки в ряд, учитывая отступы */
	box-sizing: border-box; /* Включает отступы в расчет ширины */
	padding-right: 4rem;
	display: flex;
	flex-direction: column;
}
div#advantages-section div.container div#advantages-section__cards div.advantage-card:nth-child(3n) {
	margin-bottom: 8rem;
}
div#advantages-section div.container div#advantages-section__cards div.advantage-card:nth-child(3n):last-child {
	margin-bottom: 0;
}

div#advantages-section div.container div#advantages-section__cards div.advantage-card h1 {
	font-size: 8rem;
	line-height: 9rem;
	font-weight: 800;
	color: #64BFBF;
}

div#advantages-section div.container div#advantages-section__cards div.advantage-card h4 {
	font-size: 3rem;
	line-height: 4rem;
	font-weight: 600;
	margin-bottom: 1.5rem;
}

div#advantages-section div.container div#advantages-section__cards div.advantage-card p {
	font-size: 1.7rem;
	line-height: 2.3rem;
	font-weight: 200;
	text-align: justify;
}
/******************************************** -Advantages Section- ********************************************/








/******************************************** Contact Section ********************************************/
div#contact-section {
	width: 100%;
	height: auto;
	padding: 6rem 0 18rem;
	background-color: white;
}

div#contact-section div.container {
	display: flex;
	flex-direction: column;
}

div#contact-section div.container h2 {
	color: black;
	font-size: 5.5rem;
	line-height: 5rem;
	font-weight: 600;
	text-align: center;
}
div#contact-section div.container p {
	font-size: 1.7rem;
	color: rgba(57,62,70,0.45);
	line-height: 2.3rem;
	padding: 1rem 0 2rem;
	font-weight: 400;
	text-align: center;
	margin-bottom: 10rem;
	position: relative;
}

div#contact-section div.container p::after {
	content: "";
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
	bottom: 0;
	width: 28.7rem;
	height: .1rem;
	background-color: #5ED9D9;
	z-index: 100;
}

div#contact-section div.container div#contact-block {
	display: flex;
	flex-direction: row;
}

div#contact-section div.container div#contact-block div#contact-block__img,
div#contact-section div.container div#contact-block div#contact-block__form {
	flex: 1 1 40%;
	box-sizing: border-box;
}
div#contact-section div.container div#contact-block div#contact-block__form {
	margin-left: 15rem;
	flex: 1 1 60%
}
div#contact-section div.container div#contact-block div#contact-block__form form {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: space-between;
}
div#contact-section div.container div#contact-block div#contact-block__form button {
	background-color: #64BFBF;
	color: white;
	/* width: 20%; */

	margin: 1rem 0 3rem;
	padding: 1.3rem 1rem;
	border-radius: 15px;
	border: none;

	font-size: 1.4rem;
	line-height: 1.7rem;
	text-transform: uppercase;
	cursor: pointer;

	transition: all 500ms;
}
div#contact-section div.container div#contact-block div#contact-block__form button:hover {
	background-color: #FFCA00;
	color: black;
}
div#contact-section div.container div#contact-block div#contact-block__form form div.form-group {
	width: 48%;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
}
div#contact-section div.container div#contact-block div#contact-block__form form div.form-group label {
	font-size: 1.7rem;
	line-height: 2.3rem;
	color: #088989;
	margin-bottom: 1rem;
}
div#contact-section div.container div#contact-block div#contact-block__form form div.form-group input {
	width: 100%;
	margin-bottom: 3rem;
	padding: 1rem;

	font-size: 1.7rem;
	line-height: 2.3rem;
}
div#contact-section div.container div#contact-block div#contact-block__form form div.full-width,
div#contact-section div.container div#contact-block div#contact-block__form form div.full-width textarea {
	width: 100%;
}
div#contact-section div.container div#contact-block div#contact-block__form form div.full-width textarea {
	min-height: 20rem;
}
div#contact-section div.container div#contact-block div#contact-block__img img {
	width: 100%;
	height: auto;
	border-radius: 20px;
	box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
	object-fit: cover;
}
/******************************************** -Contact Section- ********************************************/








/******************************************** Footer ********************************************/
footer {
	position: relative;
	width: 100%;
	height: auto;
	padding: 6rem 0 2rem;
	background-color: #FFCA00;
	overflow: visible;
}

footer div.container {
	position: relative;
	overflow: visible;

	display: flex;
	flex-direction: column;
}

footer div.container p {
	font-size: 1.7rem;
	font-weight: 300;
	line-height: 2.2rem;
	text-align: center;
}

footer div.container div#footer-cards {
	/* position: absolute; */
	width: 100%;
	overflow: visible;
	position: absolute;
	left:0;
	top: -10rem;

	display: flex;
	flex-direction: row;
	transform: translateY(-4rem);
}

footer div.container div#footer-cards div.footer-cards__card {
	margin-right: 2%;
	padding: 2rem;
	border-radius: 30px;
	background-color: #F3F3F3;
	box-shadow: 0 6px 12px rgba(0, 0, 0, 0.3);
	position: relative;
	

	display: flex;
	align-items: center;
	flex-direction: column;
	flex: 1 1 25%;
	
	z-index: 999;
}
footer div.container div#footer-cards div.footer-cards__card:last-child {
	margin-right: 0;
}
footer div.container div#footer-cards div.footer-cards__card img {
	width: 4rem;
	height: 4rem;
}
footer div.container div#footer-cards div.footer-cards__card h4 {
	font-size: 2.1rem;
	line-height: 2.7rem;
	font-weight: 500;
}
footer div.container div#footer-cards div.footer-cards__card p {
	font-size: 1.6rem;
	line-height: 2.2rem;
	font-weight: 300;
}
















.run-animation-ot {
	animation: fadeInOt 1s both;
}
@keyframes fadeInOt {
	0% { opacity:0;
	display:none; }
	100% { opacity:1;
	display:block; }
}