/**
 * Theme Name:     Hello Elementor Child
 * Author:         Utkarsh
 * Template:       hello-elementor
 * Text Domain:	   hello-elementor-child
 * Description:    Hello Elementor is a lightweight and minimalist WordPress theme that was built specifically to work seamlessly with the Elementor page builder plugin. The theme is free, open-source, and designed for users who want a flexible, easy-to-use, and customizable website. The theme, which is optimized for performance, provides a solid foundation for users to build their own unique designs using the Elementor drag-and-drop site builder. Its simplicity and flexibility make it a great choice for both beginners and experienced Web Creators.
 */

html,body {overflow-x:hidden;}
iframe[data-map-src] {
    display: block;
    max-height: 50vh;
    background-color: #f6f6f6;
}
header .elementor-nav-menu .sub-arrow:not(.sub-menu .sub-arrow) {
    padding: 8px 0 0px 4px;
}
.rmp-topmenu-active ul ul {
    padding-left: 15px !important;
}
#rmp-container-3618 {z-index:9 !important}
#rmp_menu_trigger-3618, #rmp_menu_trigger-3618:focus  {
    width: 45px;
    height: 45px;
    position: absolute;
    border-radius: 0;
    border: none!important;
}
#rmp_menu_trigger-3618.is-active {
	position: fixed;
}
#rmp_menu_trigger-3618 .responsive-menu-pro-inner, #rmp_menu_trigger-3618 .responsive-menu-pro-inner::before, #rmp_menu_trigger-3618 .responsive-menu-pro-inner::after {
    background-color: #C2950D !important;
}
.bottom-button-container {
    border-top: 1px solid #CED3DB;
    padding-top: 30px;
}
.resp-list-icon {
    display: flex;
    justify-content: space-evenly;
}
.resp-list-icon p {
    font-weight: 600;
    font-size: 12px;
    text-transform: uppercase;
    font-family: 'Lora', sans-serif;
}
.bottom-button-container .elementor-button {
		font-size: 12px !important;
}	
.e-rating-wrapper .e-icon:last-child .e-icon-marked {
    -webkit-animation: slideUp 1s ease-in-out;
    animation: slideUp 1s ease-in-out infinite;
}
@keyframes slideUp { 
0% {
 transform: scale(1); 
} 
100% { 
transform: scale(1.2); 
}
}

body::-webkit-scrollbar { width: 10px;}
body::-webkit-scrollbar-track { background-color: #E3E5E8;}
body::-webkit-scrollbar-thumb { background-color: #A3A8B5; border-radius: 5px;}
.map_bg {
    height: 100%;
    width: 100%;
    position: absolute;
    z-index: 2;
    cursor: pointer;
    background: url(https://new.yourportaldesign.com/ypdev2/grottoesfamilydentistry/wp-content/uploads/2024/02/map-overlay.webp);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center top;
}
ul.elementor-nav-menu--dropdown a, ul.elementor-nav-menu--dropdown a:focus, ul.elementor-nav-menu--dropdown a:hover {
    text-shadow: none;
    border-left:none !important;
}
.swiper-pagination-bullet {
    border: 2px solid #fff;
}
.decoration-none a:hover {
    text-decoration: none !important;
}
.elementor-12 .elementor-element.elementor-element-07f220d .swiper-pagination-bullet:not(.swiper-pagination-bullet-active) {
	background:transparent !important;
}
.sidebar-slider .swiper-slide-contents {
    display: flex;
    flex-direction: column-reverse;
}
.sidebar-slider .elementor-slide-heading {margin-top:15px;}
@media (min-width:1250px){
.elementor-element .swiper .elementor-swiper-button-prev {
	left:-40px !important;
}
.elementor-element .swiper .elementor-swiper-button-next {
	right:-40px !important;
}
}
@media (max-width:1249px){
.elementor-element .swiper .elementor-swiper-button-prev {
	left:0px !important;
}
.elementor-element .swiper .elementor-swiper-button-next {
	right:0px !important;
}
}
@media (max-width:1024px){
.elementor-element .swiper .elementor-swiper-button-prev {
	left:-50px !important;
}
.elementor-element .swiper .elementor-swiper-button-next {
	right:-50px !important;
}	
}
.elementor-button-icon svg {
    fill: #292C2A;
}
footer table.formatted-hours tr, footer table.formatted-hours td, footer table.formatted-hours th {
    border: none !important;
    background: none !important;
    color: #fff;
	text-align:right;
	line-height:1px;
	font-size:12px;
}

footer tr th:first-child, footer tr td:first-child {
	text-align:left;
}
footer table tbody tr:hover>td, footer table tbody tr:hover>th {
    background-color: transparent !important;
}
.footer-details li.elementor-icon-list-item:first-child:before, .top-bar li.elementor-icon-list-item:last-child:before {
    content: "";
    position: absolute;
    left: 0;
    right: 100%;
    bottom: 0;
    background: #fff;
    height: 2px;
    -webkit-transition-property: right;
    transition-property: all;
    -webkit-transition-duration: 0.3s;
    transition-duration: 0.3s;
    -webkit-transition-timing-function: ease-out;
    transition-timing-function: ease-out;
	width:0%;
}
.footer-details li.elementor-icon-list-item:hover:before, .top-bar li.elementor-icon-list-item:hover:before {
	right:0;
	width:60%;
}
.top-bar li.elementor-icon-list-item:hover:before {
	width:100%;
}

.mapsection {
    height: 359px;
    position: relative;
    overflow: hidden;
}
footer .mapapa {
    max-width: 1200px;
    margin: 0 auto;
    position: relative;
    margin-top: -197px;
    z-index: 6;
}


.blog-search form label, .blog-search input{
	width: 100%;
}
body .blog-search input.search-field{
	text-align: center;
	border-radius:0px;
}
body .blog-search input.search-field:focus-visible{
	outline: unset;
	outline-offset: unset;
}
body .blog-search input.search-submit{
	padding: 0px 0px;
    line-height: 40px;
	margin-top: 15px;
}
body .blog-search input.search-submit:hover{
	background-color: #C2950D;
}
.sidebar h5{
	color: #000;
	margin-bottom: 8px;
}
.sidebar .elementor-widget-container ul li a{
	font-size: 16px;
}

.common-page .ritter-blog .elementor-post__card h4{
	margin-bottom:16px !important;
}
.common-page .ritter-blog .elementor-post__card p{
	margin-bottom:14px !important;
}
.common-page .ritter-blog .elementor-post__card .elementor-post__excerpt{
	margin-bottom:0px;
}
body .blog-search input.search-submit:focus {
    outline: unset;
}





.footer-details li.elementor-icon-list-item a:hover, .top-bar li.elementor-icon-list-item a:hover{text-decoration:none;opacity:.8;}
@media (max-width:767px){
.home .elementor-swiper-button {
    display: none !important;
}

}
@media (max-width:575px){
.home p, .home .elementor-widget-container {
    font-size: 16px;
	line-height:1.5;
}	
}
@media (min-width: 1025px) and (max-width: 1215px) {
.our-mission .our-mission-left {
    padding: 50px 10px 50px 15px;
    min-height: auto;
}
}