@charset "utf-8";
/* CSS Document */

html {
  scroll-behavior: smooth;
}

body {
	margin: 0;
	overflow-x: 0;
	color: #000;
	font-family: Arial, Helvetica, sans-serif !important;
}

*,
*:before,
*:after {
  box-sizing: border-box;
}

/********************
Header
********************/

.nav-list li:nth-of-type(5) a {
	text-decoration: underline;
    text-underline-offset: 5px;
    text-decoration-color: #EE0000;
    text-decoration-thickness: 4px;
}

/*******************
Banner
*******************/

.head-banner {
	position: relative;
}

.head-banner > img {
	width: 100%;
	height: 1150px;
}

.title-head {
	position: absolute;
	bottom: 20%;
	left: 15%;
}

.title-head h1 {
	color: #fff;
	font-weight: 600;
	font-size: 45px;
}

.title-head img {
	margin: 1em 0;
	max-height: 60px;
}

.form-wrapper {
	position: absolute;
	top: 5%;
	right: 10%;
}

/*******************
Form
*******************/

.form-field {
	display: flex;
    flex-direction: column;
	width: 400px;
}

.form-field input {
	margin-bottom: 10px;
    border: none;
    padding: 8px;
}

.form-field input:nth-of-type(4) {
	margin-bottom: 2em;
}

.form-field textarea {
	height: 250px;
	resize: none;
	border: none;
	margin-bottom: 3em;
	padding: 8px;
}

.form-field-btn input {
	width: 100%;
    color: #fff;
    font-size: 20px;
    background: #0070C0;
    border: none;
    padding: 8px;
}

.form-field input::placeholder,
.form-field textarea::placeholder {
	color: #000;
	font-size: 15px;
}

.form-figcaption {
	font-size: 14px;
    text-align: center;
    color: #fff;
	padding: 5px;
}

.alert-error {
	border: 1px solid #4af196;
    background: #c3e5d3;
    border-radius: 5px;
    padding: 5px 10px;
    margin-bottom: 1em;
	text-align: center;
}

/*******************
Main
*******************/

.main-area {
	background-image: url(main-area-contact.png);
	background-repeat: no-repeat;
	background-position: 60% 40%;
}

.top-section {
	margin-top: 2em;
}

.top-section h1 {
	text-align: center;
    font-size: 36px;
	margin-bottom: 0.5em;
}

.top-section h2 {
	font-size: 22px;
    text-align: center;
}

.alert-success {
	padding: 8px;
    border-radius: 10px;
    text-align: center;
    margin-bottom: 1em;
}

/*******************
Top section
*******************/

.top-slot-promo {
	margin: 8em 0;
}

.promo-box img {
	width: 220px;
	height: 158px;
}

.promo-box p {
	color: #7F7F7F;
	font-weight: 600;
	font-size: 20px;
	margin-bottom: 2em;
}

/*******************
Mid/bottom section
*******************/

.mid-section {
	margin: 15em 0 25em;
}

.mid-section-content {
	margin-top: 2em;
}

.mid-slot-promo div:first-of-type > img {
	box-shadow: 4px 8px 10px -2px grey;
}

.bottom-slot-promo div:last-of-type {
	text-align: end;
}

.bottom-slot-promo div:last-of-type > img {
	box-shadow: 4px 8px 10px -2px grey;
}

.mid-section-content h3,
.bottom-section-content h3 {
	font-size: 34px;
    margin-bottom: 1em;
}

.mid-section-content p,
.bottom-section-content p {
	font-size: 20px;
}

/*******************
Jump link
*******************/

.jump-link {
	display: flex;
	justify-content: space-evenly;
	background: #00B050;
	padding: 1em;
	margin: 8em 0;
}

.jump-link p {
	color: #fff;
	margin: 0;
	font-size: 25px;
	align-self: center;
}

.jump-link a {
	border: none;
	background: #0958B7;
	display: block;
	color: #fff;
	align-self: center;
	font-size: 17px;
	border-radius: 8px;
	padding: 10px;
	box-shadow: 4px 8px 10px -2px #2c404c;
}

.jump-link a:hover {
	text-decoration: none;
	background: #0d50a1;
}

/*******************
Main
*******************/

.promo-section h1 {
	text-align: center;
    font-size: 30px;
    margin-bottom: 0.5em;
    margin-top: 2em;
}

.promo-top {
	margin: 4em 0;
}

.promo-card {
	text-align: center;
}

.promo-card img {
	box-shadow: 1px 1px 5px 2px rgba(0,0,0,.4);
	height: 200px;
	border-radius: 10px;
	width: 280px;
}

.promo-card p {
	font-weight: 700;
    font-size: 20px;
    margin-bottom: 2em;
}

/*********************
Topics
*********************/

.topics-section h2 {
	margin: 6em 0 3em;
    text-align: center;
    font-size: 26px;
    font-weight: 400;
}

.topics-container {
	border: 1px solid #D9D9D9;
	margin-bottom: 4em;
}

.topics {
	padding: 3em 4em;
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
	grid-row-gap: 2em;
	grid-column-gap: 2em;
}

.topics div {
	display: flex;
    align-items: center;
}

.topics div img {
	height: 110px;
    min-width: 140px;
	max-width: 140px;
	box-shadow: 1px 1px 5px 2px rgba(0,0,0,0.4);
}

.topics div a {
	color: #0070C0;
    text-decoration: underline;
    padding: 0 20px;
}

/*******************
Media
*******************/

@media only screen and (max-width: 1400px) {
	.title-head {
		left: 10%;
	}
}

@media only screen and (max-width: 1300px) {
	.head-banner > img {
		height: 900px;
	}
	.title-head {
		left: 5%;
	}
	.title-head h1 {
		font-size: 42px;
	}
	.form-wrapper{
		right: 5%;
	}
}

@media only screen and (max-width: 1200px) {
	.head-banner > img {
		height: 800px;
	}
}

@media only screen and (max-width: 1100px) {
	.title-head h1 {
		font-size: 38px;
	}
	.form-field {
		width: 320px
	}
	.promo-box p {
		font-size: 18px;
		margin-bottom: 1.5em;
	}
	.top-slot-promo {
		margin: 6em 0;
	}
	.top-section h2 {
		font-size: 18px;
	}
}

@media only screen and (max-width: 1000px) {
	.head-banner > img {
		height: 700px;
		object-fit: cover;
	}
	.form-wrapper{
		right: 3%;
	}
	.title-head {
		left: 3%;
	}
	.top-section h1 {
		font-size: 30px;
	}
	.top-section h2 {
		font-size: 18px;
	}
	.top-slot-promo {
		margin: 6em 0;
	}
	.promo-box p {
		font-size: 15px;
	}
	.mid-section-content h3, 
	.bottom-section-content h3 {
		font-size: 30px;
	}
}

@media only screen and (max-width: 900px) {
	.title-head h1 {
		font-size: 33px;
	}
	.form-field {
		width: 300px
	}
	.form-field-btn input {
		font-size: 17px;
	}
	.top-section h2 {
		font-size: 16px;
	}
	.promo-box p {
		min-height: 65px;
	}
	.mid-section-content h3, 
	.bottom-section-content h3 {
		font-size: 24px;
	}
	.mid-section-content p, 
	.bottom-section-content p {
		font-size: 18px;
	}
}

@media only screen and (max-width: 809px) {
	.promo-box p {
		min-height: 0;
	}
}

@media only screen and (max-width: 800px) {
	.form-field input {
		padding: 5px;
	}
	.title-head h1 {
		font-size: 28px;
	}
	.title-head img {
		width: 200px;
	}
	.form-field {
		width: 270px;
	}
	.form-field-btn input {
		padding: 5px;
	}
	.jump-link p {
		font-size: 20px;
	}
	.bottom-slot-promo div:last-of-type > img {
		width: 350px;
	}
	.top-slot-promo {
		margin: 6em 2.5em;
	}
	.promo-box img {
		width: 250px;
		height: 180px;
	}
	.top-slot-promo div:last-of-type > p {
		width: 40%;
    	margin-top: 1.5em;
	}
	.form-field textarea {
		padding: 5px;
	}
}

@media only screen and (max-width: 767px) {
	.mid-section-content {
		margin-bottom: 2em;
	}
	.bottom-slot-promo div:last-of-type {
		text-align: left;
	}
	.bottom-slot-promo div:last-of-type > img {
		width: 450px;
	}
}

@media only screen and (max-width: 700px) {
	.title-head h1 {
		font-size: 25px;
	}
	.jump-link a {
		font-size: 15px;
	}
	.top-section h1 {
		font-size: 26px;
	}
	.main-area {
		background-position: 55% 45%;
	}
	.top-slot-promo {
		margin: 6em 0;
	}
}

@media only screen and (max-width: 650px) {
	.title-head {
		top: 5%;
		left: 10%;
	}
	.form-wrapper {
		top: 33%;
		left: 10%;
	}
	.form-field {
		width: 300px;
	}
	.head-banner > img {
		height: 850px;
	}
	.form-field-btn {
		width: 300px;
	}
	.form-figcaption {
		width: 300px;
	}
	.jump-link {
		justify-content: space-between;
	}
	.top-slot-promo {
		margin: 3em 0;
	}
	.promo-box img {
		width: 220px;
		height: 160px;
	}
}

@media only screen and (max-width: 600px) {
	.jump-link {
		flex-direction: column;
	}
	.jump-link p {
		margin-bottom: .5em;
	}
	.bottom-slot-promo div:last-of-type > img {
		display: flex;
    	width: 100%;
	}
	.top-section h1 {
		font-size: 23px;
	}
	.main-area {
		background-position: 35% 35%;
	}
}

@media only screen and (max-width: 560px) {
	.main-area {
		background-position: 40% 50%;
	}
	.promo-box img {
		width: 190px;
		height: 140px;
	}
}

@media only screen and (max-width: 500px) {
	.title-head {
		top: 3%;
	}
	.form-wrapper {
		top: 30%;
	}
	.head-banner > img {
		height: 800px;
	}
	.mid-slot-promo div:first-of-type > img {
		display: flex;
    	width: 100%;
	}
	.jump-link p {
		font-size: 18px;
	}
	.top-section h1 {
		font-size: 19px;
	}
	.top-section h2 {
		font-size: 14px;
	}
	.bottom-slot-promo div:last-of-type > img {
		display: flex;
    	width: 100%;
	}
	.promo-box img {
		min-width: 100%;
		height: 200px;
	}
	.top-slot-promo div:last-of-type > p {
		width: 100%;
	}
	.promo-box p {
		margin-top: 1.5em;
	}
}

@media only screen and (max-width: 450px) {
	.jump-link p {
		font-size: 16px;
	}
	.jump-link a {
		font-size: 14px;
	}
	.promo-box img {
		height: 180px;
	}
}

@media only screen and (max-width: 400px) {
	.jump-link p {
		font-size: 15px;
	}
	.jump-link {
		padding: 1em .5em;
	}
	.promo-box img {
		height: 170px;
	}
}

/*********************
Media
*********************/

@media only screen and (max-width: 1200px) {
	.topics {
		padding: 1em;
	}
}

@media only screen and (max-width: 1100px) {
	.topics {
		grid-column-gap: 1em;
	}
	.topics div img {
		height: 95px;
		min-width: 130px;
		max-width: 130px;
	}
}

@media only screen and (max-width: 1000px) {
	.topics {
		grid-template-columns: 1fr 1fr;
	}
}

@media only screen and (max-width: 900px) {
	.promo-top .promo-card:not(:last-of-type) {
		margin-bottom: 3em;
	}
	.topics-section h2 {
		margin: 4em 0 3em;
	}
}

@media only screen and (max-width: 700px) {
	.topics {
		grid-template-columns: 1fr;
	}
	.form-field textarea {
		margin-bottom: 10px;
	}
	.form-field input:nth-of-type(4) {
		margin-bottom: 10px;
	}
	.form-wrapper {
		top: 38%;
	}
	.head-banner > img {
		height: 1000px;
	}
}

@media only screen and (max-width: 400px) {
	.topics div img {
		height: 80px;
		min-width: 110px;
		max-width: 110px;
	}
	.topics div a {
		font-size: 15px;
	}
}





















