@media (max-width: 1850px) {
	.dr .container::after{ width: 60px; right: -60px; }
	.dr .container::before{ width: 60px; left: -60px; }
	
	#mainNav .container, #header .container{ max-width: 100%; }
}
@media (max-width: 1600px) {
	#mainNav .navbar-brand img{ width: 200px  }
	.navbar-expand-md .navbar-nav .nav-link, .nav-link{ font-size: 16px; padding-left: 10px; padding-right: 10px; }
	#mainNav .button{ font-size: 16px;  padding: 10px 20px; }
	.dropdown-item{ font-size: 15px; line-height: 1.33; }
	
	.contact .container::before, .contact .container::after{ display: none; }
	.contact .container{ padding: 60px 50px 50px;  }
}
@media (max-width: 1500px) {
	.dr .container::after, .dr .container::before{ display: none; }
	.dr .container{ padding-left: 60px; padding-right: 60px; }
	
	.photo-scroll{ height: 420px; }
	
	.sub-hero{ height: 500px; }
	.page-template-contact-pages .sub-hero, .page-template-contact .sub-hero{ height: 560px; }
	.sub-hero h1{ font-size: 50px; }
	.sub-hero h3{ font-size: 20px; }
	
	.page-template-contact-pages .contact .container, 
	.page-template-contact .contact .container,
	.contact .container{ padding: 30px 50px 20px; }
	
	.contact .col-4 h3{ font-size: 21px; }
	.contact .col-4 .call{ font-size: 26px; }
	
	
}	
@media (max-width: 1430px) {
	#sidebar-area .banner-contact{ width: calc( 100% + 50px );  }
}

@media (max-width: 1360px) {
	#header .navbar-brand img{ width: 220px;  }
	#header .button{ font-size: 15px; }
	.icon-menu{ height: 50px; }
	
	
	#hamburgerMenu #main-menu > li a{ font-size: 22px; line-height: 1.35; }
	#hamburgerMenu #main-menu .dropdown-menu a{ font-size: 14.5px; }
	
	#mainNav  .navbar-brand img{ width: 180px;  }
	.navbar-expand-md .navbar-nav .nav-link, .nav-link{ font-size: 15px; padding-left: 8px; padding-right: 8px; }
	#mainNav .button{ font-size: 14.2px;  padding: 10px 10px; }
	.dropdown-item{ font-size: 14px; line-height: 1.33; }
	
	.container{ width: 92%; }
	
	body{ font-size: 16px; }
	
	.home .entry-content h2{ font-size: 45px; }
	.entry-content h3{ font-size: 25px; }
	
	
	.icons p,
	p, ul li, ol li{ font-size: 16px; }
	
	.photo-scroll .entry-content h3{ font-size: 20px; }
	
	#footer .links li a{ font-size: 15px; }
	
	.entry-content h1, .entry-content h2{ font-size: 45px; }
	.single .entry-content h2{ font-size: 35px; }
	.entry-content .content p:first-child, article .entry-content p:first-child{ font-size: 20px; }
	.entry-content h1, .entry-content h2{ font-size: 40px; }
	
	.entry-content main p{ font-size: 17px; }
	
	.sub-menuBox{ margin-top: -40px; }
	.submenu li.current-page-parent span a, .submenu li.current_page_item span a{ font-size: 24px; }
	.submenu2 ul li.current_page_ancestor a, .submenu2 ul li.current_page_item li a, .submenu2 ul li.current-page-ancestor li a{ font-size: 17px; }
	
	.office-hours{ padding-left: 40px; }
	.office-hours .row{ font-size: 15px; }
	

	
}

@media (max-width: 1250px) {
	
	#mainNav h1{ position: absolute; top: 8px;  }
	#mainNav .buttons{ position: absolute; top:8px; right: 15px; }
	#navbarNavDropdown{ margin-top: 50px; }
	
	#footer #navbarNavDropdown{ margin-top: 0; }
	
	.modal-dialog{ margin-top: 0 !important; }
}
	
@media (max-width: 1199px) {
	.home .dr.entry-content h2{ font-size: 37px; }
	.dr.entry-content h3{ font-size: 20px; }
	.dr p{ padding-top: 0; }
	.invis p br{ display: none !important; }
	
	.contact .col-4.i1{ background-position: 0px 8px; }
	.contact .col-4{ background-position: 15px 8px; background-size: 50px auto; }
	.contact .col-4.i1{ padding-left: 50px; }
	.contact .col-4{ padding-left: 70px; padding-right: 0; }
	
	.contact .col-4 p{ font-size: 15px; }
	
	.photo-scroll{ height: 300px; }
	
	.home .contact{ padding: 40px 0; }
	
	.home .entry-content h2{ font-size: 38px; }
	
	.wrapper{ padding: 25px 0; }
	
	.pt-5{ padding-top: 25px !important; }
	.pt-4{ padding-top: 20px !important; }
	.pt-3{ padding-top: 25px !important; }
	.pt-2{ padding-top: 10px !important; }
	.pt-1{ padding-top: 5px  !important; }
	
	.pb-5{ padding-bottom: 25px !important; }
	.pb-4{ padding-bottom: 20px !important; }
	.pb-3{ padding-bottom: 25px !important; }
	.pb-2{ padding-bottom: 10px !important; }
	.pb-1{ padding-bottom: 5px  !important; }
	
	.sub-menuBox{ margin-top: 0; }
	
	#sidebar-area{ padding-right: 0; }
	.submenu > ul{ padding-left: 0; }
	
	.banner-contact{ width: calc( 100% + 50px ); }
	
	main#main{ padding-right: 60px; }
	
	.page-template-contact-pages .sub-hero, .page-template-contact .sub-hero{  padding-bottom: 80px;  }
	.page-template-contact .sub-hero .social-media{ bottom: 100px; }
	
	.sub-hero h1{ font-size: 40px; }
	
	.office-hours{ font-size: 15px; padding-left: 30px; }
	.office-hours .col-6{ max-width: 70%; flex: 0 0 60%; }
	.office-hours .col-5{ max-width: 70%; flex: 0 0 40%; }
	
	.entry-content h3{ font-size: 22px; }
	
	
	form .form-group label{ font-size: 11px; }
	
	form .form-group-check label{ width: 100%; margin-top: 35px; }
	form .form-group-check span label{ margin-top: 10px; }
	form .form-group-check{ margin-bottom: -20px; }
	
}
@media (max-width: 1070px) {
	
	.home .iconScroll{ display: none; }
	
	.navbar .container{ padding-left: 0; padding-right: 0; }
	.navbar-expand-md .navbar-nav .nav-link, .nav-link{ padding-left: 7px; padding-right: 7px;  font-size: 14px; }
	.dropdown-toggle::after{ font-size: 10px; margin-left: 2px; }
	.dropdown-item{ font-size: 13.5px; }
	.video::after{ background-size: 70% auto; }
	.video:hover::after{ background-size: 65% auto; }
	
	.entry-content.txt-section h3 br{ display: none; }
	
	.photo-scroll{ background-attachment: scroll; }
	
	.team .person:hover .apla .col-12{ font-size: 18px; }

}

@media (max-width: 991px) {
	
	.icons .col-center{ border:none; border-bottom: 1px solid #eee; border-top: 1px solid #eee; padding: 30px 0 !important; text-align: center;  }
	.icons .col-lg-4 { padding: 30px 0 !important; text-align: center; }
	
	#hamburgerMenu #main-menu{ display: grid; grid-template-columns: 1fr 1fr 1fr; }
	#hamburgerMenu .menu-item{ border: none; width: 100%; }
	
	.dr .container .row .col-6{ flex: 0 0 100%; max-width: 100%; }
	.dr-photo{ margin-top: -70px; }
	
	.contact .col-4.i1,
	.contact .col-4{ padding-left: 0; padding-top: 70px; background-position: center top; text-align: center;  }
	.contact .col-4 p{ font-size: 14px; }
	
	.page-template-contact-pages .contact .container, .page-template-contact .contact .container, .contact .container{ padding: 20px 15px 10px;  }
	
	.single .sub-hero, .blog .sub-hero{ height: 450px; }
	 
	 #hero-sub .container{ margin-bottom: 80px; }
	 .archive .sub-hero h1, .search .sub-hero h1, .single .sub-hero h1, .blog .sub-hero h1{ font-size: 45px; }
	 
	 .entry-content main p{ text-align: left; }
	 .blog #main{ padding-top: 50px; }
	 .blog .pb-3{ padding-bottom: 10px !important; }
	 
	 .entry-content h1{ padding-bottom: 15px; margin-bottom: 15px; }
	 .archive .entry-content h2, .blog .entry-content h2{ font-size: 30px; }
	 .entry-content h2{ font-size: 26px; }
	 
	 .entry-content .content p:first-child, article .entry-content p:first-child{ font-size: 17px; }
	 .review em{ font-size: 15px; }
	 
	 .cta-bottom.pt-5{ padding-top: 0 !important; }
	 
	 .col-b-100{ flex: 0 0 100%; max-width: 100%; }
	 
	 .page-template-contact .form,
	 .page-template-contact-pages .form{ padding-left: 0; padding-right: 0; }
	
}

@media (max-width: 767px) {
    .navbar-collapse #main-menu {
        position: fixed;
        width: 100%;
        top: 100px;
        left: 0;
        padding: 25px 25px 25px;
        background-color: #FFF;
        box-shadow: 0 8px 15px rgba(0, 0, 0, .15);
        transform-origin: 50% 0;
        transform: scaleY(0);
        transition-duration: 250ms;
        
        overflow-y: scroll;
        max-height: calc( 100vh - 175px );
    }

    .navbar-collapse.show #main-menu {
        transform: scaleY(1);
    }    

    .navbar-collapse #main-menu > li {
        width: 100%;     
    }
    .navbar-collapse #main-menu > li > a {
        color: #000;
        margin: 0 9px;
        border-bottom: 0;
    }
    
    
    .navbar-collapse #main-menu > li.current-menu-parent > a{
	   color: #20b4ab !important;
    }
    .navbar-collapse #main-menu > li.current-menu-item > a,
    .navbar-collapse #main-menu > li:hover > a {
        color: #343a40;
        border: 0;
    } 
    .navbar-collapse #main-menu > li.menu-item-has-children > a::after {
        display: none;
    }
    .navbar-collapse #main-menu > li.menu-item-has-children > span.mobile-dropdown {
        width: 44px;
        height: 44px;
        text-align: center;
        cursor: grab;
        position: absolute;
        right: 0;
        top: 0;
    }
    .navbar-collapse #main-menu > li.menu-item-has-children > span.mobile-dropdown.active-child {
        background-color: rgba(194, 224, 227, 0.3);
		border-radius: 100px;
    }
    .navbar-collapse #main-menu > li.menu-item-has-children > span.mobile-dropdown::after {
        content: "\f107";
        color: #343a40;
        font-family: "Font Awesome 5 Free";
        font-size: 13px;
        font-weight: 600;
        line-height: 44px;
        border: 0;
        padding: 0;
    }
    .navbar-collapse #main-menu > li:hover > a::before, 
    .navbar-collapse #main-menu > li.current-menu-item > a::before {
        display: none !important;
    }
    .navbar-collapse #main-menu > li ul.dropdown-menu {
        position: relative;
        width: 100%;
        padding: 0 0 10px 45px;
        border: 0 !important;
        box-shadow: 0 0 0;
    }
    .navbar-collapse #main-menu > li > ul.dropdown-menu > li > a {
        font-size: 14px;
        padding: 6px 5px;
        outline: none;
    }
    .navbar-collapse #main-menu > li > ul.dropdown-menu > li > a:hover,
    .navbar-collapse #main-menu > li > ul.dropdown-menu > li > a:focus,
    .navbar-collapse #main-menu > li > ul.dropdown-menu > li > a:active {
        color: initial;
        background-color: transparent;
    }
    
    
    #header{ padding-top: 20px; z-index: 10000000; position: fixed; }
    #header .buttons{ display: none; }
    #hamburgerMenu #main-menu{ display: none;  }
    
    #header.sticky .navbar-dark .navbar-toggler .icon-bar{  background-color: #000;  }
    .navbar-dark .navbar-toggler.collapsed .icon-bar{  background-color: #fff;  }
    
    .col-100{ flex:0 0 100%; max-width: 100%; }
    .modal .photo-bg{ display: none; }
    
    #header.sticky .desktop{ display: none; }
    #header.sticky .mobile{ display: block; }
    #header.sticky{ background-color: #fff;}
    
    #mainNav{ padding: 0; }
    #mainNav .navbar-brand,
    #mainNav .buttons{ display: none; }
    #mainNav button{ display: none; }
    
    #navbarNavDropdown{ margin-top: 0 !important; }
    
    .col-left-home{ padding: 0; padding-top: 30px; }
    .col-right-home{ padding: 0; padding-bottom: 10px; }
    
    .entry-content h3 br{ display: none; }
    
    .dr .container{ width: 100%; }
    
    .invis,
    .lightforce{ text-align: center; }
    
    .lightforce .photo{ margin-left: auto; }
    .invis .photo{ margin-right: auto; }
    
    .mm-1{ order: 1; }
    .mm-2{ order: 2; }
    
    .contact .col-4.i1, .contact .col-4{ padding-top: 70px; background-position: center 20px; }
    .contact .col-4{ border-top: 1px solid #eee; }
    .contact .col-4.i1{  border-top: none; }
    
    .cta-bottom.pt-5{ padding-top: 30px !important; }
    
    #footer{ padding-top: 40px; }
    #footer .links{ margin-bottom: 10px; border-bottom: 1px solid rgba(255,255,255,0.2); padding-bottom: 40px; }
    #footer .contact-info{ text-align: center; padding-top: 20px; }
    
    #footer .copy{ text-align: center; }
    #footer .menu-social-media-container{ margin-left: auto; margin-right: auto; }
    
    #footer .row-border{ margin-top: 30px; }
    #footer ul li{ float: none; display: inline-block; }
    
    
    
    #hero-sub .social-media{ display: none; }
    #hero-sub{ height: 280px; }
    .page-template-contact-pages .sub-hero, .page-template-contact .sub-hero{ height: 360px !important; }
    .sub-hero h3{ font-size: 18px; }
    .sub-hero h1{ font-size: 30px; line-height: 1.2;}
    
    #hero-sub .container{ margin-bottom: -20px; }
    .archive .sub-hero h1, .search .sub-hero h1, .single .sub-hero h1, .blog .sub-hero h1{ font-size: 34px; letter-spacing: 0; }
    
    main#main{ margin-top: -30px;  padding-right: 30px; padding-left: 30px; }
    
    #single-wrapper .container,
    #archive-wrapper .container,
    #index-wrapper .container,
    #page-wrapper .container{ width: 100%; }
    
    .banner-contact{ display: none !important; } 
    
    .photo-scroll{ background-attachment: scroll; }
    
    .entry-content iframe{ height: 290px; }
    
    .submenu > ul{ padding-left: 20px; } 
    
    .contact{ padding-bottom: 0; }
    
    .entry-content h1, .entry-content h2{ font-size: 30px; }
    
    .archive #sidebar-area, .single #sidebar-area, .blog #sidebar-area{ flex: 0 0 100%; max-width: 100%; }
    
    .blog article.post{ margin-bottom: 20px !important; }
    
    .col-7,
    .before-after-box{ flex: 0 0 100%; max-width: 100%; padding-bottom: 15px; }
    article .entry-content .row-service p:first-child{ font-size: 16px; }
    
    .bottomMobile{ display: block; box-shadow: 0 0 30px rgba(0,0,0,0.05); }
    
    #footer{ padding-bottom: 100px; }
    
    #PureChatWidget.purechat.pci{ z-index: 1000001 !important;  }
    
    .mobile-menu{	display: block !important; }
    #mainNav .mobile-menu.button{ padding: 0px !important; }
    #mainNav .mobile-menu.button a{ color: #fff !important; }
    
    .home .iconScroll-mobile{ display: block;}
    
    .grecaptcha-badge{ bottom: 78px !important; }
    
    #video::before{ height: 100px; }
}

@media (max-width: 575px) {
	#footer .links{ display: none; }
	
	.video::after {  background-size: 50% auto; }
	
	.hero .social-media{ bottom: 30px; }
	
	#footer p.copy{ font-size: 11px; }
	
	article .alignright,
	#post-1071 img{ max-width: 50%; height: auto; }
	
	.home .hero{ background-position: 59% center; }
	.home .hero{ min-height: 300px; max-height: calc( 100vh - 140px ); }
	
	#footer{ z-index: 1001; }
	
	.dr .container{ padding-left: 20px; padding-right: 20px; }
	
	
	.team .person { flex:0 0 100%; max-width: 100%;  }
	.team .person .photo{ height: 250px; }
	.hero iframe{
		    top: 45% !important;
    left: 51% !important;
    transform: translateX(-50%) translateY(-45%) !important;
    position: absolute !important;
    opacity: 1 !important;
    width: 850px !important;
    height: 1050px !important;
	}
	div#smilesnap-wide-button, div#smilesnap-floating-button {
    left: unset !important;
    right: unset !important;
    left: 10px !important;
    right: 10px !important;
    margin: 0 auto;
    bottom: 50px !important;
}
}
@media (max-width: 400px) {
	.bottomMobile a{ font-size: 13.5px; } 
	
}