/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme-child/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 2.0.0
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/* Add your custom styles here */

a{
	transition: all 0.5s linear !important;
}

.review-slider .swiper-pagination-bullet, .e-form__buttons .elementor-button, .read-more-toggle{
	transition: all 0.5s linear !important;
}

.review-slider .swiper-pagination-bullet.swiper-pagination-bullet-active{
    background-color: #20A0FF;
    width: 46px;
    border-radius: 9px;
}

.title-underline::after,
.banner-title span:after{
	content: "";
	background-image: url(/wp-content/uploads/2025/07/heading-underline.svg);
	width: 100px;
	display: inline-block;
	aspect-ratio: 100/11;
	background-size: contain;
	position: relative;
	top: -10px;
	background-repeat: no-repeat;
}

.white.title-underline::after{
	filter: brightness(10);
}

.banner-title span{
	position: relative;
}

.banner-title span:after{
	position: absolute;
	top: 95px;
	left: 55px;
	width: 238px;
}

.footer-menu-list ul li:is(.elementor-icon-list-item, .menu-item:not(:last-child)),
.footer-menu-list-div {
	border-bottom: 2px solid transparent;
	border-image: repeating-linear-gradient(to right, rgb(32 160 255 / 20%) 0, rgb(32 160 255 / 20%) 2px, transparent 2px, transparent 5px) 1 stretch;
	border-image-slice: 3;
	border-image-width: 0 0 2px 0;
	--itemSpace: 10px;
	padding-bottom: var(--itemSpace) !important;
	margin-bottom: var(--itemSpace) !important;
	margin-top: 0px !important;
}

.contact-border:after,
.contact-border:before{
	content: "";
	position: absolute;
	width: 2px;
	height: 100%;
	top: 50%;
	transform: translatey(-50%);
	background-image: linear-gradient(90deg, white 50%, rgb(32 160 255 / 20%) 50%)
}

.contact-border:before{
	left: 0;
}

.contact-border:after{
	right: 0;
}

.our-services-sec .e-con-inner > .elementor-element.e-con-full:hover .elementor-heading-title, 
.our-services-list:hover .elementor-heading-title  {
	color: #FFFFFF !important;
}

.our-services-sec .e-con-inner > .elementor-element.e-con-full .elementor-heading-title, 
.our-services-list .elementor-heading-title{
	display:  flex;
	justify-content: space-between;
	gap: 20px;
}

.our-services-sec .e-con-inner > .elementor-element.e-con-full .elementor-heading-title:after, 
.our-services-list .elementor-heading-title::after {
	content: "";
	--arrowSize: 35px;
	width: var(--arrowSize);
	height: var(--arrowSize);
	background-image: url(/wp-content/uploads/2025/07/service-arrow-blue.svg);
	background-size: cover;
	display: inline-block;
	flex-shrink: 0;
}

.our-services-sec .e-con-inner > .elementor-element.e-con-full:hover .elementor-heading-title:after, 
.our-services-list:hover .elementor-heading-title::after{
	filter: brightness(10) !important;
}

.dentist-card:hover .elementor-widget-heading *,
.dentist-card:hover .elementor-widget-button .elementor-button{
	color: #ffffff !important;
}

.dentist-card:hover .elementor-widget-button .elementor-button svg path{
	fill: #ffffff !important;
}

.dentist-card .elementor-widget-button {
	display: none;
}

.dentist-card:hover .elementor-widget-button{
	display: block;
}

.dentist-card .learn-more-btn .elementor-button-link{
	transition: all 0.5s linear;
}

.dentist-card .learn-more-btn .elementor-button-link:hover .elementor-button-text{
	color: #000000;
	transition: all 0.5s linear;
}

.dentist-card .learn-more-btn .elementor-button-link:hover svg path{
	fill: #000000 !important;
	transition: all 0.5s linear;
}

.image-compare-box.elementor-widget-twenty20_widget .twenty20 {
    margin-bottom: 0;
}

.image-compare-box .twentytwenty-after-label, .image-compare-box .twentytwenty-before-label{
	opacity: 1;
	background: transparent;
	bottom: unset !important;
	font-weight: 700;
	font-size: 0px;
	letter-spacing: -2px;
}

.image-compare-box .twentytwenty-before-label::after{
	content: 'Before';
	position: absolute;
	top: 0;
	left: 0;
	font-size: 42px;
	letter-spacing: -2px;
}

.image-compare-box .twentytwenty-after-label::after{
	content: 'After';
	position: absolute;
	top: 0;
	left: -90px;
	font-size: 42px;
	letter-spacing: -2px;
}

.image-compare-box .twentytwenty-before-label{
    top: 15px;
    left: 15px !important;
}

.image-compare-box .twentytwenty-after-label{
    top: 15px;
    right: 15px !important;
}

.footer-form .elementor-message-svg:before{
    filter: brightness(10);
}

.gallery-box .e-gallery-item {
    box-shadow: 0px 10px 30px 0px rgba(0, 0, 0, 0.05);
}

.gallery-box  .elementor-slideshow__title{
	display: none;
}

.image-compare-box .twentytwenty-container img{
	object-fit: cover;
}

.rotate-contact {
	animation: spin 7s linear infinite;
	display: inline-block;
	animation-play-state: running;
}

.rotate-contact:hover {
	animation-play-state: paused;
}

.contact-map.elementor-widget-google_maps, .contact-map .elementor-custom-embed{
	height: 100%;
}

.elementor-widget-form.contact-form input.elementor-field::placeholder, 
.elementor-widget-form input.elementor-field::placeholder,
.elementor-widget-form textarea.elementor-field::placeholder{
	color: #000000 !important;
	opacity: 1 !important; 
}

.elementor-widget-form input.elementor-field::-webkit-input-placeholder {
	color: #000000 !important;
	opacity: 1 !important; 
  }
  .elementor-widget-form.contact-form input.elementor-field:-ms-input-placeholder {
	color: #000000 !important;
	opacity: 1 !important; 
}
.elementor-widget-form.contact-form input.elementor-field::-ms-input-placeholder {
	color: #000000 !important;
	opacity: 1 !important; 
}

.elementor-widget-form.contact-form .elementor-field-group .elementor-field{
	border: 1px solid #106CAB33;
}

.gradient-border{
    border-left: 1px solid transparent;
    border-image: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, rgba(0, 0, 0, 0.1) 55.29%, rgba(255, 255, 255, 0) 100%);
    border-image-slice: 1;
}

@keyframes spin {
	0% {
		transform: rotate(0deg);
	}
	100% {
		transform: rotate(360deg);
	}
}

@media (min-width: 2450px) {
	.home-hero-banner{
		min-height: 1360px;
	}
}

@media (max-width: 1650px) and (min-width: 1366px) {
	.cta-teeth-icon.elementor-widget{
		right: 0 !important;
	}
}

@media(max-width: 1366px){
	.banner-title span:after {
		top: 90px;
		left: 60px;
		width: 220px;
	}
	.image-compare-box .twentytwenty-after-label::after, .image-compare-box .twentytwenty-before-label::after{
		font-size: 28px;
	}
	.image-compare-box .twentytwenty-after-label::after{
		left: -55px;
	}
}

@media(max-width: 1200px){
	.banner-title span:after {
		top: 75px;
		left: 50px;
		width: 200px;
	}
}

@media(max-width: 1024px){
	.contact-border:after,
	.contact-border:before{
		display: none;
	}

	.banner-title span:after {
		top: 65px;
		left: 50px;
		width: 170px;
	}

	.title-underline::after{
		top: -5px;
	}

    .dentist-card .elementor-widget-button{
        display: block;
    }

}

@media (min-width: 880px) {
    .image-compare-box, .image-compare-box .twenty20, .image-compare-box .twentytwenty-wrapper , .image-compare-box .twentytwenty-container, .image-compare-box .twentytwenty-container img{
        height: 100% !important;
    }

}

@media (max-width: 880px) {
	.rotate-contact {
		animation: none;
	}
	.image-compare-box{
		height: 500px;
	}
	.image-compare-box .twenty20, 
	.image-compare-box .twentytwenty-wrapper, 
	.image-compare-box .twentytwenty-container,
	.image-compare-box .twentytwenty-container img{
		height: 100%;
	}
}

@media(max-width: 767px){
	.banner-title span:after {
		top: 55px;
		left: 30px;
		width: 140px;
	}

	.title-underline::after{
		top: -0px;
	}

	.teeth-image-box{
		max-width: 500px;
		width: 100%;
	}
	.gallery-box .e-gallery-grid:not(.e-gallery--animated) , .gallery-box .e-gallery-grid{
		grid-template-columns: 1fr 1fr;
	}
}

@media (max-width: 679px){
	.elementor-location-footer .footer-logos{
		flex-direction: column;
	    align-items: flex-start;
	}
}

@media(max-width: 575px){
	.gallery-box .e-gallery-grid:not(.e-gallery--animated) , .gallery-box .e-gallery-grid{
		grid-template-columns: 1fr;
	}
}