@font-face {
	font-family: 'Inter';
	src: url('fonts/Inter-Regular.woff') format('woff');
}

@font-face {
	font-family: 'Inter-Light';
	src: url('fonts/Inter-Light.woff') format('woff');
}

@font-face {
	font-family: 'Inter-ExtraLight';
	src: url('fonts/Inter-ExtraLight.woff') format('woff');
}

@font-face {
	font-family: 'Inter-Thin';
	src: url('fonts/Inter-Thin.woff') format('woff');
}

@font-face {
	font-family: 'Inter-Medium';
	src: url('fonts/Inter-Medium.woff') format('woff');
}

@font-face {
	font-family: 'Inter-Bold';
	src: url('fonts/Inter-Bold.woff') format('woff');
}



:root {
	--black: #000;
	--white: #FFF;
	/*	--bg-container: #F5F7FA;*/
	--bg-container: #FCFDFE;
	--bg-main-header: #FFF;
	--main-btn-bgcolor: #3372d8;
	--main-btn-bgcolor-hover: #23579E;
	--link-menu: #3474CB;
	--header-start: #d3e5ff;


	--input-border: #D5D8D9;
	--input-focus: #5F9AD6;
	--border-color-input-focus: #5F9AD6;
	--label-name-color: #A2A9AD;
	--label-name-color-light: #C2C5C8;
	--label-color-input: #9DA5AB;

	--bg-footer: #3372d8;

	--title-footer: #0B275C;
}




body {
	margin: 0px;
	padding: 0px;

	overflow: auto;
	overflow-x: hidden;
	overflow-y: scroll;
}

.clear {
	display: block;
	width: 100%;
	height: 0px;
	clear: both;
	float: none;
}

._1 {
	height: 1px;
}

._5 {
	height: 5px;
}

._10 {
	height: 10px;
}

._20 {
	height: 20px;
}

._30 {
	height: 30px;
}

._50 {
	height: 50px;
}

._100 {
	height: 100px;
}







/**
 *
 * HEADER STYLES
 */

.__header_container {
	display: block;
	width: 100%;
	height: auto;
	min-height: 600px;
	padding: 0px 20px;
	padding-bottom: 30px;
	background: linear-gradient(var(--header-start) 0%, rgba(228, 237, 251, 0.18) 100%);

	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

.__top_header {
	display: flex;
	width: 100%;
	max-width: 1260px;
	height: auto;
	margin: auto;
	padding-top: 20px;
	/*	background-color: #07C06B;*/
}

.__header_logo {
	display: block;
}

.__header_logo img {
	height: auto;
	max-height: 40px;
}

.__header_menu {
	flex: 1 1 auto;
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: flex-end;
	width: auto;
}

.__link_menu {
	font-family: 'Inter-Medium', sans-serif;
	font-size: 1rem;
	text-decoration: none;
	color: var(--link-menu);
}

.__link_menu.m-right {
	margin-right: 30px;
}

.__link_menu:hover {
	text-decoration: underline;
}

.__main_btn {
	width: auto;
	min-width: 160px;
	height: 40px;
	border: none;
	border-radius: 4px;
	color: var(--white);
	background-color: var(--main-btn-bgcolor);

	cursor: pointer;
}

.__main_btn.home-signup {
	width: auto;
	font-family: 'Inter-Medium', sans-serif;
	font-size: 1rem;
	color: var(--white);
}

.__main_btn.home-signup:hover {
	background-color: var(--main-btn-bgcolor-hover);
}

.__icon_menu_hamburguer {
	display: none;
}




.__header_content {
	display: flex;
	flex-direction: row;
	width: 100%;
	max-width: 1260px;
	height: auto;
	min-height: 300px;
	margin: auto;
}

.__content_highlight {
	flex: 1 1 auto;
	width: 100%;
	max-width: 550px;
	height: auto;
	min-height: 300px;
	padding-top: 130px;
}

.__content_description {
	display: block;
}

.__content_description.bigger {
	font-family: 'Inter-Bold', sans-serif;
	font-size: 48px;
	line-height: 52px;
}

.__content_description.small {
	font-family: 'Inter', sans-serif;
	font-size: 16px;
	margin: 30px 0px;
}

.__main_btn.book-now {
	width: auto;
	min-width: 180px;
	font-family: 'Inter-Medium', sans-serif;
	font-size: 1rem;
	color: var(--white);
}

.__main_btn.book-now:hover {
	background-color: var(--main-btn-bgcolor-hover);
}

.__content_image_highlight {
	flex: 1;
	display: flex;
	justify-content: flex-end;
	width: 100%;
	height: auto;
	max-height: 600px;
}

.__content_image_highlight img {
	width: auto;
	height: auto;
	max-height: 450px;
	border: none;
	outline-style: none;
	padding-top: 100px;
}



.__main_container {
	display: block;
	width: 100%;
	height: auto;
	padding: 0px 20px;
	padding-top: 20px;

	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

.__main_center_container {
	display: block;
	width: 100%;
	max-width: 1260px;
	height: auto;
	min-height: 550px;
	margin: auto;
}

.__home_content_title {
	font-family: 'Inter-Bold', sans-serif;
	font-size: 32px;
}

.__home_content_subtitle {
	font-family: 'Inter', sans-serif;
	font-size: 16px;
}

.__home_content {
	display: flex;
}

.__home_content._flex_disposable {
	flex-flow: row;
	gap: 30px;
}

.__item_flex {
	display: block;
	flex: 1 1 auto;
	width: 100%;
	min-width: 200px;
	height: auto;
	min-height: 260px;
	border-radius: 6px;
	padding: 20px;
	background: var(--white);
	border: 1px solid #EFF1F6;
	box-shadow: 7px 11px 17px rgba(160, 171, 190, 0.37);


	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

.__icon_item_flex {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 90px;
	height: 90px;
	margin-bottom: 20px;
	border-radius: 50px;
}

.__icon_item_flex.exams {
	border: 1px solid #FDDED3;
	background-color: #FEEBE4;
}

.__icon_item_flex .__svg_icon {
	height: auto;
	max-height: 36px;
}

.__icon_item_flex.exams .__svg_icon {
	filter: invert(64%) sepia(65%) saturate(474%) hue-rotate(329deg) brightness(106%) contrast(95%);
}

.__icon_item_flex.appointments {
	border: 1px solid #B9F8E3;
	background-color: #D7F2E9;
}

.__icon_item_flex.appointments .__svg_icon {
	filter: invert(72%) sepia(13%) saturate(1619%) hue-rotate(106deg) brightness(87%) contrast(88%);
}

.__icon_item_flex.records {
	border: 1px solid #CCE3FA;
	background-color: #E4F0FC;
}

.__icon_item_flex.records .__svg_icon {
	filter: invert(59%) sepia(14%) saturate(2013%) hue-rotate(177deg) brightness(94%) contrast(99%);
}

.__title_item_flex {
	display: block;
	font-family: 'Inter-Medium', sans-serif;
}

.__description_item_flex {
	display: block;
	font-family: 'Inter-Light', sans-serif;
	padding: 20px 0px;
}



.__footer_container {
	display: block;
	width: 100%;
	height: auto;
	padding: 40px 20px 30px 20px;
	background-color: var(--bg-footer);

	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

.__footer_content {
	display: grid;
	gap: 1.5rem;
	grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
	grid-template-rows: auto;
	max-width: 1240px;
	margin: auto;
}

.__item_footer {
	display: block;
	min-height: 100px;
	background-color: #c1c10005;
}

.__item_footer ul {
	list-style: none;
	margin: 0;
	padding: 15px 0px;
}

.__item_footer li {
	display: block;
	padding: 3px 1px;
}

.__item_footer li a {
	font-family: 'Inter', sans-serif;
	font-size: 13px;
	color: var(--white);
	text-decoration: none;
}

.__item_footer li a:hover {
	color: var(--white);
	text-decoration: underline;
}

.__item_footer.__contact {
	display: flex;
	flex-direction: column;
	min-width: 200px;
}

.__title_footer {
	display: block;
	font-family: 'Inter-Bold', sans-serif;
	font-size: 13px;
	color: var(--title-footer);
	text-transform: uppercase;
}

.__menu_footer_contact {
	display: block;
	padding: 15px 0px;
}

.__phone,
.__email {
	display: block;
	font-family: 'Inter-ExtraLight', sans-serif;
	font-size: 18px;
	color: var(--white);
}

.__phone a {
	font-weight: bold;
	color: var(--white);
	text-decoration: underline;
}

.__email {
	padding-top: 10px;
	font-size: 13px;
}

.__email a {
	color: var(--white);
	text-decoration: none;
}

.__email a:hover {
	text-decoration: underline;
}

.__copyright {
	display: flex;
	align-items: flex-end;
	flex-flow: row wrap;
	width: 100%;
	max-width: 1240px;
	margin: auto;
	margin-top: 30px;
	padding: 10px;
	border-radius: 6px;

	font-family: 'Inter-Light', sans-serif;
	font-size: 12px;
	font-style: italic;

	color: var(--white);
	background-color: #0b275c00;

	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

.__logo_footer {
	display: block;
	margin-right: 30px;
}

.__logo_footer img {
	height: auto;
	max-height: 36px;
}

.__text_copyright {
	display: block;
	padding-bottom: 5px;
}










/**
 *
 * FORM STYLES
 */



.form {
	width: 100%;
}

/*
.form-front {
	width: 100%;
	height: auto;
	margin-bottom: 6px;
	outline: none;
	position: relative;
}

.form-front input[type="text"],
.form-front input[type="password"] {
	width: 100%;
	height: 38px;
	margin-bottom: 10px;
	padding-left: 10px;
	padding-right: 10px;
	border: 1px solid var(--input-border);
	border-radius: 0.4rem;
	outline: none;
	font-size: 14px;

	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

.form-front input[type="date"] {
	width: 100%;
	height: 38px;
	margin-bottom: 10px;
	padding-left: 10px;
	padding-right: 10px;
	border: 1px solid var(--input-border);
	border-radius: 0.4rem;
	outline: none;

	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

.form-front input:focus {
	border: 1px solid var(--input-focus);
}

.form-front input::placeholder {
	font-family: 'Inter-Medium', sans-serif;
	font-size: 13px;
	color: transparent;
}

.form-front input {
	filter: none;
}

.form-front label {
	display: block;
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0px;
	bottom: 0px;
	pointer-events: none;
	-webkit-transition: transform 0.5s ease;
	transition: transform 0.5s ease;
}

.label-name {
	position: absolute;
	left: 11px;
	top: 10px;

	font-family: 'Inter', sans-serif;
	font-size: 12px;
	color: var(--label-name-color);

	-webkit-transition: transform 0.5s ease;
	transition: transform 0.5s ease;
}

.form-front input:valid+label>.label-name,
.form-front input:focus+label>.label-name {
	transform: translateY(-90%);
	font-family: 'Inter-Light', sans-serif;
	top: 0px;
	left: 5px;
}

.form-front.birthdate {
	margin-top: 8px;
}

.form-front input.birthdate {
	width: 100%;
	max-width: 360px;
	height: 38px;
	padding: 0px 15px;
	font-family: 'Inter-Regular', sans-serif;
	font-size: 14px;

	box-sizing: border-box;
}

.form-front input.birthdate+label>.label-name {
	transform: translateY(-90%);

	top: 0px;
	left: 5px;
}

input.birthdate:invalid {
	-webkit-text-fill-color: #CFD5DA;
}

input.birthdate::-webkit-datetime-edit-text {
	color: #212327;
	padding: 0 0.2em;
}

input.birthdate::-webkit-datetime-edit-day-field {
	color: #212327;
}

input.birthdate::-webkit-datetime-edit-month-field {
	color: #212327;
}

input.birthdate::-webkit-datetime-edit-year-field {
	color: #212327;
}

input.birthdate::-webkit-calendar-picker-indicator,
input.birthdate::-webkit-calendar-picker-indicator {
	filter: invert(81%)
}

.form-front input.birthdate:focus::placeholder {
	color: #CFD5DA;
}





.form-front select,
.form-front select option {
	width: 100%;
	height: 38px;
	margin-bottom: 10px;
	padding: 0px 11px;
	border: 1px solid var(--input-border);
	border-radius: 0.4rem;
	outline: none;
	box-shadow: 0 2px 3px rgba(0, 0, 0, 0.03);
	font-size: 14px;
	color: #000;

	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;

	background: transparent;
	background-image: url("data:image/svg+xml;utf8,<svg fill='grey' height='24' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'><path d='M7 10l5 5 5-5z'/><path d='M0 0h24v24H0z' fill='none'/></svg>");
	background-repeat: no-repeat;
	background-position-x: 96%;
	background-position-y: 6px;

	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}

.form-front select option {
	font-size: 14px;
	color: #000000;
}

.form-front select:invalid,
.form-front select option[value=""] {
	color: var(--label-name-color);
}

.form-front.gender {
	margin-top: 8px;
}

.form-front select#gender+label>.label-name {
	transform: translateY(-90%);

	top: 0px;
	left: 5px;
}

.form-front select:focus {
	border: 1px solid var(--border-color-input-focus);
}

.form-front select::placeholder {
	font-family: 'Inter-Medium', sans-serif;
	font-size: 13px;
	color: #A2A9AD;
}
*/






.btn-main-login,
.btn-main-signup {
	width: 100%;
	height: 38px;
	border: none;
	border-radius: 4px;
	outline: none;
	color: #FFF;
	font-size: 16px;
	cursor: pointer;
}

.btn-main-login.btn-lg,
.btn-main-signup.btn-lg {
	background-color: #3372d8;
}

.btn-main-login:hover.btn-lg,
.btn-main-signup:hover.btn-lg {
	background-color: #3565b5;
}

.form-link {
	padding: 10px;
	font-family: 'Inter', sans-serif;
	font-size: 14px;
}

.__link {
	font-family: 'Inter', sans-serif;
	font-size: 14px;
}

.form-link a,
.__link {
	color: #0D6CC4;
	text-decoration: none;
}

.form-link a:hover,
.__link:hover {
	text-decoration: underline;
}

.container-highlight {
	flex: 1;
	background-color: #0f5eb8;
}

.container-highlight .highlight-img {
	width: 100%;
	height: auto;
	min-height: 100vh;
	background-position: center;
	background-repeat: no-repeat;
	background-size: 50%;
	opacity: 0.9;
}





.load {
	fill: transparent;
	height: 20px;
}

.load circle:nth-child(1) {
	animation: color 1s ease-out infinite .2s;
}

.load circle:nth-child(2) {
	animation: color 1s ease infinite .4s;
}

.load circle:nth-child(3) {
	animation: color 1s ease-in infinite .6s;
}

@keyframes color {
	from {
		fill: #CDCDCD;
	}

	to {
		fill: #3B3B3B;
		stroke-dasharray: 0;
		stroke-dashoffset: 0;
	}
}

.load_white {
	fill: transparent;
	height: 20px;
}

.load_white circle:nth-child(1) {
	animation: color_white 1s ease-out infinite .2s;
}

.load_white circle:nth-child(2) {
	animation: color_white 1s ease infinite .4s;
}

.load_white circle:nth-child(3) {
	animation: color_white 1s ease-in infinite .6s;
}

@keyframes color_white {
	from {
		fill: #CDCDCD90;
	}

	to {
		fill: #FFFFFF;
		stroke-dasharray: 0;
		stroke-dashoffset: 0;
	}
}

#alert-message {
	display: none;
	margin-bottom: 10px;
}

#alert-message span {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: auto;
	min-height: 25px;
	padding: 5px 10px;
	border-radius: 3px;

	font-family: 'Inter', sans-serif;
	font-size: 13px;
}

.alert {
	color: #6A756F;
	background-color: #DBEFE4;
}

.alert-success {
	color: #4B6355;
	/*	color: #46BB77;*/
	background-color: #C7EBD7;
}

.error {
	color: #9E5D5D;
	background-color: #F0D3D3;
}
