/*!
Theme Name: Medidove Child
Description: Medidove | Health and Medical WordPress Theme
Theme URI: https://bdevs.net/wp/medidove/
Author: Basictheme
Author URI: https://themeforest.net/user/basictheme
Template: medidove
Version: 2.0.4
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: medidove-child
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready

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.
*/
/* =Theme customization starts here
-------------------------------------------------------------- */

.single-slider,
.breadcrumb-area {
	position: relative;
	overflow: hidden;
}
.single-slider::before,
.breadcrumb-area::before {
	content: "";
	position: absolute;
	top: 0; left: 0;
	width: 100%; height: 100%;
	background-color: rgba(0, 0, 0, 0.3);
	z-index: 1;
}
.single-slider .container,
.single-slider .hero-text,
.breadcrumb-area .container {
	position: relative;
	z-index: 2;
}
.about-home .row.no-gutters.hire-bg,
.footer-logo.dark-logo.mb-35,
.breadcrumb-menu,
.gallery-item-content.bdevs-el-content {
	display:none;
}
.footer-top h6 {
	padding-bottom: 10px;
}
.footer-top .fa-phone:before {
    vertical-align: middle;
}
.footer-top .emmergency-call-icon i {
    margin-right: 20px;
	font-size: 48px;
}
.footer-top {
	padding-bottom:10px;
}
.home-appointment .h4appoinment-thumb {
	background-size: contain;
    background-repeat: no-repeat;
}
.home-appointment .h4appoinment-wrapper {
	padding: 127px 100px 80px 69px;
}
.service-content .bdevs-el-title {
	min-height:70px;
}
.breadcrumb-area {
	background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
}
.breadcrumb__title {
	color:#ffffff;
}
.service-content { 
	padding-top: 0px;
	padding-bottom:80px;	
}
.service-content h2 {
	text-align: center;
	font-size: 2.5rem;
	margin-bottom: 1em;
	color: #2c3e50;
}
.cards-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(220px,1fr));
	gap: 24px;
}
.card {
	background: #fff;
	border-radius: 10px;
	padding: 20px;
	box-shadow: 0 4px 12px rgba(0,0,0,0.1);
	transition: transform .2s;
}
.card:hover {
	transform: translateY(-5px);
}
.card h3 {
	font-size: 1.25rem;
	margin-bottom: .5em;
	color: #1a242f;
}
.card p {
	font-size: .95rem;
	line-height: 1.4;
	color: #555;
}
.service-methods { 
	background: #f9f9f9; 
	padding: 80px 0; 
}
.service-methods h2 {
	text-align: center;
	font-size: 2rem;
	margin-bottom: 1em;
}
.methods-list {
	list-style: none;
	max-width: 600px;
	margin: 0 auto 2em;
	padding: 0;
}
.methods-list li {
	position: relative;
	padding: 1em 1em 1em 3em; /* room for the circle icon */
	background: #fff;
	border-radius: 8px;
	transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.methods-list li::before {
	content: "✔︎";
    position: absolute;
    left: 0.3em;
    top: 18%;
    transform: translateY(-50%);
    width: 1.9em;
    height: 1.9em;
    line-height: 1.6em;
    font-size: 0.9em;
    text-align: center;
    border: 2px solid #27ae60;
    border-radius: 50%;
    color: #27ae60;
    background: #fff;
    transition: background 0.3s ease, color 0.3s ease, border-color 0.3s ease;
}
.methods-list li:hover {
	transform: translateY(-5px);
	box-shadow: 0 8px 20px rgba(0, 0, 0, 0.1);
}
.methods-list li:hover::before {
	background: #27ae60;
	color: #fff;
	border-color: #27ae60;
}
.cta { 
	text-align: center; 
}
.cta .btn {
	background: #439DAA;
	color: #fff;
	padding: .75em 2em;
	border-radius: 50px;
	text-decoration: none;
	font-size: 1rem;
	border-radius: 5px;
}
.cta .btn:hover { opacity: .9; }
.cards-grid {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 24px;
}
.cards-grid .card {
	flex: 0 1 calc(33.333% - 16px);
}
.service-details-box {
	position: relative;
	text-align: center;
}
.section-title {
	top: -130px;
    position: relative;
    z-index: 2;
    display: inline-block;
    background: rgb(255 255 255);
    padding: 12px 24px;
    border-radius: 6px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
    margin-bottom: 0px;
}
.section-title h1 {
	font-size: 38px;
    line-height: 48px;
}
.methods-list {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 1.5em;
	list-style: none;
	padding: 0;
	margin: 2em auto;
	max-width: 800px;
}
.methods-list li {
	position: relative;
	padding-left: 1.5em;  /* room for your checkmark */
}
.service-small-content p {
	text-align: center;
    font-size: 20px;
    line-height: 30px;
    margin-bottom: 100px;
}
.h4appoinment-input input {
    font-size: 15px;
	color: #5d5d5d;
}
.wpcf7-form-control.wpcf7-submit.btn.btn-icon {
    padding: 24px 40px;
    height: 60px;
    border-radius: 5px;
    margin-left: 15px !important;
}
.social-icons-top-header {
	display:inline-block;
}
.social-icons-top-header ul {
	list-style: none;
	padding: 0;
	margin: 0;
}
.social-icons-top-header ul li {
	display: inline-block; 
	margin-right: 10px; /* spacing between icons */
}
.contact-title-box {
	margin-bottom: 0px;
    padding-bottom: 0px;
    height: 70px;
}
.gallery-home .slick-prev.slick-arrow {
	left:0px!important;
}
.gallery-home .slick-next.slick-arrow {
	right: 0px!important;
}
.footer-contact-info {
    margin-top: -150px;
}
.elementor-slideshow__footer {
	display:none;
}
.elementor-image-carousel-wrapper .elementor-swiper-button {
	background: #449cac;
    font-size: 18px!important;
    color: rgb(255, 255, 255)!important;
    height: 50px;
    width: 50px;
    border-radius: 5px;
    text-align: center;
	display: block!important;
}
.elementor-image-carousel-wrapper .elementor-swiper-button i {
	vertical-align: sub!important;
	line-height: 50px;
}
.service-details-box .section-title .section-text .green-color.text-up-case {
	display:none;
}
.service-details-box .section-title .section-text h1 {
	margin-bottom: 0px;
}
#header-sticky {
	background:#FFFEF8;
}
.logo-circle::before {
    border: 47px solid #FFFEF8;
}
.header__menu ul li:hover > a {
    color: #3FA0A9;
}
li.current-menu-item a {
	color: #3FA0A9!important;
}
.h4appoinment-wrapper.tp-el-content {
	padding: 127px 100px 50px 69px;
    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
	background:#fbf9f3;
}
.our-team-section > .elementor-container {
	background-color: #449CAC;
	border-radius: 60px;
    padding: 60px;
}
.teamTable {
	width:100%;
}
.teamTable tr {
	text-align: center;
    border-bottom: 1px solid #505050;
}
.teamTable td {
	padding-bottom: 20px;
}
.teamTable tr:not(:first-child) td {
	padding-top: 20px;
}
.team-title h2,
.team-title p {
	color:#fff;
}
.team-title h2{
	padding-bottom:15px;
}
.open-mobile-menu > a,
.open-mobile-menu > a:hover {
	background: #E986BD!important;
}
.side-info.info-open {
	background: #449CAC;
    padding: 15px 0px;
}
.side-info.info-open .mean-nav ul li a:hover {
	background: unset;
}
.side-info.info-open .mean-nav ul li a {
	padding: 10px 15px;
    color: #fff !important;
}
.side-info.info-open .side-info-close {
	padding: 5px 15px;
    color: #ffffff;
    margin: 10px 12px;
    background: #E986BD;
}
.mobile-menu .menu-item-has-children .mean-expand {
	background:unset!important;
	border:0px!important;
}
.side-info.info-open .mobile-menu.mean-container {
	margin-top: 30px;
}
.mobile-menu .mean-nav #menu-main-menu .current-menu-item,
.mobile-menu .mean-nav #menu-main-menu > li:hover {
	background: #E986BD;
}
.side-info.info-open .contact-infos {
	padding: 0px 15px;
}
.side-info.info-open .contact-infos h4 {
	font-size: 18px;
}
.side-info.info-open .contact-infos ul li a {
	font-size:14px;
}
div.sidebar__menu--social a {
	background: #E986BD;
}
div.sidebar__menu--social a:hover {
	background: #333;
}
div.sidebar__menu--social a:hover:before {
	content:unset;
}
.logo-circle::before {
    left: -23px;
    top: -26px;
}
.home-appointment .h4appoinment-thumb {
	background-size: cover;
    background-repeat: no-repeat;
}
textarea {
	width: 100%;
    border: 0;
    border-bottom: 2px solid #cad2d7;
    padding: 15px 45px;
    font-size: 18px;
    font-family: "Rubik", sans-serif;
    color: #647589;
}
@media (max-width: 767px) {
	.cards-grid .card {
		flex: 0 1 100%;
	}
	.section-title {
		margin-top: -40px;
		padding: 8px 16px;
	}
	.methods-list {
		grid-template-columns: 1fr;
		gap: 1em;
	}
	.service-details-box .section-title .section-text h1 {
		font-size: 22px;
        line-height: 32px;
	}
	.service-details-box .section-title {
    	top: -80px;
	}
	.h4appoinment-thumb {
        min-height: 350px!important;
	}
	.our-team-section > .elementor-container {
    	padding: 30px;
	}
	.teamTable td {
		display: block;
		width: 100%;
		padding-top: 10px;
	}
	.teamTable tr {
		display: block;
		text-align: left;
		margin-bottom: 20px;
	}
	.logo img {
        width: 210px!important;
    }
}