/*
Theme Name: AIM
Text Domain: twentysixteen

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned with others.
*/

:root{
	--fnt-size: 15px;
	--clr-pri: #54b0e8;
	--clr-sec: #0387c7;
	--clr-hover: #0387c7;
	--clr-txt: #2d2d2d;
	--site-width: 1140px;
}

body{
	font-size: var(--fnt-size);
	font-family: montserrat, sans-serif;
	font-weight: 400;
	color: var(--clr-txt);
}
.wrap{
	width: 100%;
	max-width: var(--site-width);
	margin: 0 auto;
	padding: 0 20px;
	position: relative;
}

#content{
	padding: 50px 0;
}
#content .content-area{
	max-width: 700px;
}

header main{
	align-items: center;
}
header .mobile-container{
	align-items: center;
}

header img, footer img{
	display: block;
	margin: 0 auto;
	width: 100%;
}

h2{
	font-weight: bold;
	font-size: 20px;
	margin-bottom: 15px;
	color: var(--clr-pri);
}
h3{
	font-weight: bold;
	font-size: 16px;
}
a{
	color: var(--clr-pri);
}
a:hover{
	text-decoration: underline;
}

.map-container{
	position: relative;
}
dl{
	position: absolute;
	top: 10px;
	right: 10px;
	background: #fff;
	padding: 10px;
	z-index: 9;
}
dl dt{
	display: flex;
	align-items: center;
	gap: 5px;
}
dl dt::before{
	content: '';
	width: 15px;
	aspect-ratio: 1 / 1;
}
dl dt::before{ background: var(--color); border: 1px solid var(--color); }

.modal{
	display: none;
	inset: 0;
	z-index: 99;
	justify-content: center;
	align-items: center;
	background: rgb(0 0 0 / 45%);
	backdrop-filter: blur(1px);
	padding: 20px;
}
.modal.open{
	display: flex;
	position: fixed;
	flex-direction: column;
}
.modal .modal-container{
	background: #fff;
	z-index: 9;
	padding: 10px;
	width: 100%;
	max-width: 800px;
	max-height: 95vh;
	border-radius: 8px;
	box-shadow: 3px 3px 10px rgb(0 0 0 / 20%);
	position: relative;
	overflow-y: scroll;
}
.modal .modal-close{
	font-size: 26px;
	position: absolute;
	top: 40px;
	right: 20px;
	color: #fff;
	cursor: pointer;
}
.modal-content{
	padding: 5px 30px;
}
.modal-form{
	padding: 30px 30px 15px;
	text-align: center;
	border-top: 1px solid #efefef;
}
.modal-content .upload{
	border-top: 1px solid #efefef;
	padding: 20px 0 0;
	text-align: right;
	font-size: 16px;
}
.modal-content h2{
	text-align: center;
	font-size: 30px;
}
.modal-content .upload svg{
	margin-right: 5px;
}
.modal-content .date-align{
	display: flex;
	justify-content: space-between;
	padding: 10px 0;
}
.modal-form .practices{
	display: flex;
	gap: 20px;
}

/*FORMS & FIELDS*/
.modal-form form{
	display: flex;
	flex-direction: column;
	gap: 15px;
	align-items: center;
	justify-content: center;
	margin-bottom: 15px;
	max-width: 500px;
	margin: 0 auto;
}
.modal-form :is(select, textarea, input[type="file"]){
	width: 100%;
}
.modal-form select{
	height: 40px;
	border: 1px solid #c1c1c1;
	border-radius: 5px;
}
.modal-form textarea{
	height: 90px;
	border-color: #c1c1c1;
	border-radius: 5px;
	padding: 5px;
}
.modal-form select:focus-visible,
.modal-form textarea:focus-visible{
	outline: none;
	border-color: gray;
}
.modal-form input[type=file]::file-selector-button {
	height: 35px;
	background: var(--clr-pri);
	padding: 0 20px;
	cursor: pointer;
	border-radius: 4px;
	border: 0;
	line-height: 1;
}

.modal-form input[type=file]::file-selector-button:hover {
	background: var(--clr-hover);
}
.modal-form input[type="submit"]{
	color: #fff;
	height: 40px;
	background: var(--clr-pri);
	padding: 10px 20px;
	cursor: pointer;
	border-radius: 4px;
	margin-left: auto;
	line-height: 1;
}
.modal-form input[type="submit"]:hover{
	color: #fff;
	background: var(--clr-hover);
}

p.status{
	display: flex;
	align-items: center;
	gap: 5px;
	justify-content: center;
	max-width: fit-content;
	padding: 15px 40px;
	border: 1px solid currentColor;
	border-radius: 5px;
	margin: 0 auto;
}
p.status.success{
	background: #f3fff2;
	color: #56c163;
}
p.status.error{
	background: #ffeaea;
	color: #db5454;	
}
div.contact{
	margin-bottom: 15px;
}
div.contact p{
	margin-bottom: 0;
}

@media( max-width: 768px){
	.modal .modal-close{
		top: 30px;
		right: 40px;
		color: #000;
		z-index: 9;
	}
	.modal-content .date-align,
	.modal-form .practices{
		flex-direction: column;
		padding: 0;
	}
}