/*********************************
Responsive (ClinMedica)
Breakpoints: 1199 / 991 / 767 / 575
*********************************/

/* =====<= 1199px (Laptop/Small Desktop)===== */
@media only screen and (max-width: 1199px)
{
	/* Header spacing */
	.header_content{
		padding-left: 40px;
		padding-right: 40px;
	}

	.main_nav{
		margin-left: 90px;
	}

	.main_nav ul li:not(:last-child){
		margin-right: 22px;
	}

	/* Home dots alignment (avoid calc issues) */
	.home_slider_dots{
		left: 40px;
	}

	/* CTA */
	.cta_phone{
		font-size: 24px;
	}
}

/* =====<= 991px (Tablet)===== */
@media only screen and (max-width: 991px)
{
	/* Header height smaller */
	.header_content{
		height: 90px;
		padding-left: 22px;
		padding-right: 22px;
	}

	.header.scrolled .header_content{
		height: 70px;
	}

	/* Hide desktop nav + show hamburger */
	.main_nav{
		display: none;
	}
	.hamburger{
		display: block;
	}

	/* Header CTA button */
	.header_button{
		margin-right: 10px;
	}
	.header_extra{
		gap: 10px;
	}

	/* Home height */
	.home{
		height: 640px;
		margin-top: 90px;
	}

	/* Home content */
	.home_content{
		max-width: 100%;
		padding-right: 10px;
	}

	.home_subtitle{
		font-size: 22px;
	}

	.home_title{
		font-size: 44px;
		line-height: 1.18;
	}

	.home_text p{
		font-size: 14px;
		line-height: 2;
	}

	/* Buttons stack nicely */
	.home_buttons{
		flex-wrap: wrap;
	}
	.home_buttons > div{
		margin-bottom: 10px;
	}

	/* Dots */
	.home_slider_dots{
		left: 22px;
		bottom: 35px;
	}

	/* Intro */
	.intro{
		padding-top: 70px;
		padding-bottom: 70px;
	}

	.milestones{
		margin-top: 50px;
	}

	/* Form: remove huge top padding (it is too tall on tablet) */
	.intro_form_container{
		margin-top: 35px;
		padding-top: 90px;
		padding-left: 22px;
		padding-right: 22px;
	}

	.intro_form_title{
		width: 100%;
	}

	/* Why section spacing */
	.why_content{
		padding-top: 70px;
		padding-bottom: 70px;
	}

	/* Why image: stop absolute positioning issues */
	.why_image{
		position: relative;
		right: auto;
		bottom: auto;
	}

	/* CTA */
	.cta{
		padding-top: 45px;
		padding-bottom: 45px;
	}
	.cta_title{
		font-size: 28px;
	}
	.cta_phone{
		margin-top: 18px;
		width: 100%;
		font-size: 20px;
		height: auto;
		line-height: 1.6;
		padding-top: 14px;
		padding-bottom: 14px;
		white-space: normal;
	}

	/* Services */
	.services{
		padding-top: 70px;
		padding-bottom: 45px;
	}
	.services_row{
		margin-top: 45px;
	}

	/* Team */
	.team{
		padding-top: 70px;
		padding-bottom: 70px;
	}
	.team_row{
		margin-top: 45px;
	}
	.team_image{
		height: 280px;
	}

	/* Before After */
	.before_after{
		padding-top: 70px;
		padding-bottom: 70px;
	}

	/* Footer */
	.footer_content{
		padding-top: 70px;
		padding-bottom: 40px;
	}
	.footer_about_text{
		margin-top: 25px;
	}
	.footer_bar_content{
		height: auto;
		padding-top: 14px;
		padding-bottom: 14px;
	}
}

/* =====<= 767px (Large Mobile)===== */
@media only screen and (max-width: 767px)
{
	/* Global headings */
	h1{font-size: 42px;}
	h2{font-size: 30px;}
	h3{font-size: 26px;}

	/* Header */
	.header_content{
		height: 82px;
		padding-left: 16px;
		padding-right: 16px;
	}
	.logo a > div:first-child{
		font-size: 24px;
	}
	.logo a > div:last-child{
		font-size: 11px;
	}

	/* Header button smaller */
	.button{
		height: 42px;
		border-radius: 18px;
	}
	.button a{
		padding-left: 10px;
		padding-right: 10px;
		line-height: 38px;
		font-size: 12px;
	}

	/* Home */
	.home{
		height: 580px;
		margin-top: 82px;
	}
	.home_container{
		top: 50%;
		transform: translateY(-50%);
	}
	.home_subtitle{
		font-size: 18px;
	}
	.home_title{
		font-size: 34px;
	}
	.home_text{
		margin-top: 10px;
	}
	.home_text p{
		font-size: 13px;
		line-height: 1.95;
	}

	.home_buttons{
		margin-top: 22px;
	}

	/* Intro form inputs full width */
	.intro_input{
		width: 100%;
	}

	/* Section subtitle */
	.section_subtitle{
		font-size: 16px;
	}

	/* Why list spacing */
	.why_list_content{
		padding-left: 18px;
	}

	/* Team image smaller */
	.team_image{
		height: 260px;
	}

	/* Before After */
	.ba_img{
		height: 210px;
	}

	/* Footer social icons slightly smaller */
	.footer_social a{
		width: 40px;
		height: 40px;
		font-size: 16px;
	}
}

/* =====<= 575px (Small Mobile)===== */
@media only screen and (max-width: 575px)
{
	/* Containers */
	.header_content{
		padding-left: 12px;
		padding-right: 12px;
	}

	/* Home */
	.home{
		height: 540px;
	}
	.home_title{
		font-size: 30px;
		line-height: 1.15;
	}
	.home_subtitle{
		font-size: 16px;
	}
	.home_text p{
		font-size: 13px;
	}

	/* Dots */
	.home_slider_dots{
		left: 12px;
		bottom: 28px;
	}

	/* Menu panel width */
	.menu{
		width: 300px;
		right: -300px;
		padding-left: 22px;
		padding-right: 22px;
	}
	.menu_nav ul li a{
		font-size: 20px;
	}

	/* Intro form */
	.intro_form_container{
		padding-left: 16px;
		padding-right: 16px;
		padding-bottom: 45px;
	}
	.intro_form_title{
		font-size: 20px;
	}

	/* CTA */
	.cta_title{
		font-size: 24px;
	}
	.cta_text{
		line-height: 1.8;
	}

	/* Service cards padding smaller */
	.service{
		padding: 24px 18px 22px;
	}

	/* Footer */
	.footer_logo a > div:first-child{
		font-size: 24px;
	}
	.footer_about_text p{
		font-size: 13px;
		line-height: 2;
	}
	.footer_social{
		gap: 14px;
	}
	.footer_social a{
		width: 38px;
		height: 38px;
		font-size: 15px;
	}
}
