/* Brand Color Guidelines - Dr. Bill Shaw logo palette: Green #00884B, Red #C41E3A, Black #1a1a1a */
h1, h2, h3, h4, h5, h6 {
	color: #1a1a1a;
}

.text-secondary {
	color: #5a5a5a !important;
}

.bg-light, .bg-secondary {
	background-color: #F8FAF9 !important;
}

.nav-background-color {
	background: #00884B;
	/* background: url(../images/head-bg.jpg) center;
	background-size: cover;
	background-repeat: no-repeat; */
}
#header-navbar li .sep {
	background: #ffffff;
	width: 1px;
	display: block;
	height: 15px;
	margin: 13px 15px;
}
.navbar-toggler:not(:disabled):not(.disabled) {
    cursor: pointer;
    margin-left: auto;
}

#primary-nav .navbar-brand-color {
	color: #4f4f4f;
}

#primary-nav .navbar-brand {
    color: #00884B;
    z-index: 9;
}

a {
	color: #00884B !important;
	text-decoration: none;
}

a:hover,
a:visited {
	color: #000;
}

a.link-underline {
	text-decoration: underline;
}

a.link-underline:hover,
a.link-underline:visited {
	text-decoration: none;
}


.material-icons.custom-material-style {
	font-size: 22px;
	color: #00884B;
}

#imp-notice .material-icons {
	font-size: 22px;
	color: #C41E3A;
}

ion-icon {
	font-size: 44px;
	color: #c4c4c4;

}

/** style for quick action button on top bar**/
#quick-action .btn {
	border: 1px solid #fff;
	background: #006B38;

}

#quick-action .btn:hover,
#quick-action .btn:focus,
#quick-action .btn:active {
	background-color: #C41E3A;
	border-color: #ffffff;
	color: #fffcfc !important;
}
#quick-action .btn:active i{color: #000 !important;}

/** style for hero background**/
#hero-section,
#hero-section .d-flex {
	/* background: #7698ba; */
	/* background: url(../images/hero-bg.webp) center; */
	background: linear-gradient(45deg, rgb(205 229 249 / 0%), rgb(21 39 60 / 95%)), url(../images/hero-bg.webp) center;
    background-size: cover;
    color: #000;

}

#imp-notice {
	background: #F8FAF9;
	/* color: #ffffff; */
}

div#imp-notice small {
	font-weight: 500;
}

.local-panel {
	border-radius: 5px;
    border: 1px solid #dadada;
    background: #191B22;
    position: relative;
    box-shadow: 0px 0px 10px #bdbdbd;
}
#local-meet-doctors .material-icons {
	font-size: 22px;
	color: #191B22;
}

#cta-call-email small {
	font-size: 100% !important;
}

#cta-call-email .cta-material-icons {
	font-size: 22px;
	color: #999 !important;
	border: 1px solid red;
}

#local-socials a ion-icon {
	color: #ffffff;
}

#local-socials a:hover ion-icon {
	color: #00884B;
}

/* #insurance-nearby-location .insurance-border {
	border-right: 1px solid #c4c4c4;
} */

#insurance-nearby-location {
	background: #191B22;
}


#video-slider {
	background: #f0f9f4;
}

#video-slider .carousel-indicators .active,
#testimonials .carousel-indicators .active {
	background-color: #191B22;
}

#video-slider .carousel-indicators li,
#testimonials .carousel-indicators li {
	background-color: #666;
}


#gallery-slider .carousel-indicators .active {
	background-color: #191B22;
}

#gallery-slider .carousel-indicators li {
	background-color: #666;
}

#testimonials {
	background: #F8FAF9;
}

#testimonials .testimonial-name {
	color: #000;
}

#testimonials .testimonial-designation {
	color: #666;
}

.star {
	color: #ff0000;
}

.star-grey {
	color: #666;
}


.card.stores-cta .card-body {
	background: #00884B;
}

.services-tabs a.nav-link {
	color: #000;
	border: 1px solid #191B22;
}
.nav-tabs .nav-link:hover, .nav-tabs .nav-link:focus{
	border-color: #00884B;
}

#patient-tools .patient-tools-tab #p-tools-Content {
	background: #F8FAF9;
}

#patient-tools .nav-tabs .nav-link .active,
#patient-tools .nav-tabs .nav-tabs .nav-link.active {
	color: #495057;
	background-color: #ececec;
	border-color: none !important;
}

.material-icons.star {
	color: #191B22;
}

.material-icons.star-grey {
	color: #191B227d !important;
}

#faqs a.faq-link {
	color: #007bff;
	text-decoration: none !important;
}

#faqs a.faq-link:hover {
	color: #000;
	text-decoration: none !important;
}

#footer .list-group-item {
	background-color: rgba(0, 0, 0, 0);
}

#footer {
	background: #191B22;
	color: #fff;
}

.footer-link li a,
.footer-link li a:visited {
	color: #fff !important;
}

.footer-link li a:hover {
	color: #ccc !important;
	text-decoration: none !important;
}

.custom-link-light,
.custom-link-light:active {
	color: #b8e0c8 !important;
}

.custom-link-light:hover {
	color: #fff !important;
	text-decoration: none !important;
}

.btn-modal-custom {
	color: #fff;
	background-color: #4ec3e0;
	border-color: #4ec3e0;
}

.lead {
	font-weight: 400;
}
.healow-sidebar-ul li {
    background: unset;
    color: white;
    padding: 5px 0px;
}

.specialities-bx {
    padding: 7px 15px;
    border-radius: 5px;
    background: #f0f9f4;
    box-shadow: 0px 0px 3px #d0e8d8;
}
.specialities-bx .list-group-item{background: unset;}
/* .specialities-bx i {
    color: white !important;
} */
/*********************
	  Header CSS
*********************/
#quick-action .btn:hover,
#quick-action .btn:hover i {
	color: #ffffff !important;
}
.main-logo {
	max-width: 180px;
    position: absolute;
    padding: 5px;
    top: 5px;
	left: 0;
    background: #00884B;
    border-radius: 10px;
    z-index: 10;
}

/* Prevent logo from overlapping on tablets */
@media (min-width: 768px) and (max-width: 1024px) {
	.main-logo {
		max-width: 140px;
		position: relative;
		top: 0;
		left: 0;
		margin-right: 15px;
	}
	
	.navbar-brand {
		display: flex;
		align-items: center;
		margin-right: 10px;
		flex-shrink: 0;
	}
	
	#primary-nav .navbar {
		flex-wrap: wrap;
		padding: 10px 15px;
		align-items: anchor-center;
	}
	
	.navbar-toggler {
		order: 2;
		margin-left: auto;
		display: block !important; /* Ensure toggler is visible */
	}
	
	/* CRITICAL: Ensure navbar-collapse is hidden by default on tablets */
	.navbar-collapse {
		order: 3;
		width: 100%;
		margin-top: 0;
		flex-basis: 100%;
		/* Don't force display - let Bootstrap handle collapse */
		display: none !important; /* Force hidden by default */
	}
	
	/* Show menu only when it has the 'show' class (when toggled) */
	.navbar-collapse.show {
		display: flex !important;
		flex-direction: column;
	}
	
	/* Ensure proper spacing and remove left margin when menu is open */
	.navbar-collapse.show #header-navbar {
		margin-bottom: 8px;
		margin-left: 0;
		padding-left: 0;
	}
	
	.navbar-collapse.show #quick-action {
		margin-top: 0;
		margin-left: 0;
		padding-left: 0;
	}
	
	.navbar-collapse.show {
		padding-left: 0;
		padding-right: 0;
	}
	
	/* Prevent text overflow */
	#header-navbar .nav-link.call-us-btn span {
		display: inline-block;
	}
}
.zoodoc-book {
    position: fixed;
    bottom: 15px;
    left: 10px;
    z-index: 99999;
}
a.nav-link.call-us-btn{
	font-size: 26px;
}
.navbar-collapse a,
.navbar-collapse a i {
	color: #ffffff !important;
}
#quick-action .btn,
#quick-action .btn i {
	color: #fff !important;
}
.practice-name{
	font-size: 52px;
	color: #00884B;
}
/* .service-bx {
    padding: 15px;
    text-align: center;
	min-height: 131px;
    background: linear-gradient(0deg, #f2fcff, transparent);
    border-radius: 5px;
    box-shadow: 0px 0px 1px black;
    margin-bottom: 10px;
    margin-top: 10px;
} */
.service-bx {
    padding: 15px;
    text-align: center;
    min-height: 131px;
    background: linear-gradient(0deg, #f0f9f4, transparent);
    border-radius: 5px;
    box-shadow: 0px 0px 5px #d0e8d8;
    margin-bottom: 10px;
    margin-top: 10px;
}

.service-bx p{margin-bottom: 0px;}
@keyframes smoothScroll {
	0% {
		transform: translateY(-40px);
	}

	100% {
		transform: translateY(0px);
	}
}

div#primary-nav {
	-webkit-transition: all 0.5s ease;
	-moz-transition: position 10s;
	-ms-transition: position 10s;
	-o-transition: position 10s;
	transition: all 0.5s ease;
}

div#primary-nav.sticky {
	z-index: 1030;
	position: fixed;
	top: 0;
	left: 0;
	animation: smoothScroll 1s forwards;
}

/* .navbar-light .navbar-toggler-icon {
	filter: brightness(1) invert(1);
} */

.navbar-light .navbar-toggler {
	color: rgb(255 255 255 / 50%);
	border-color: white;
}
ul.list-group.list-group-flush li {
    padding: .5rem .5rem 0.1rem 2rem;
	background: unset;
}
ul .material-icons.custom-material-style {
    position: absolute;
    left: 0;
    line-height: 1.2;
}
.mission-vision {
    border: 1px solid #e8f0eb;
    padding: 10px;
	background: #f0f9f4;
    margin-bottom: 15px;
    min-height: 170px;
    box-shadow: 0px 0px 5px #c1c1c1;
}
.provider-education {
    min-height: 248px;
}
.card-header {
    padding: 0.75rem 1.25rem;
}
/* .card-header {
    padding: 0.3rem 0.6rem;
} */
#Q-and-A .btn-link{white-space: inherit;}
div#Q-and-A .nav-tabs .nav-link.active {
    background-color: #00884B;
    color: white !important;
}
div#service-tools-content {
    background: #e0f3e8;
    border: 1px solid #dee2e6;
    border-top: 0;
}
.navbar{
	padding: 0.5rem 0rem;
}
/* Owl Carousel Navigation CSS */
.owl-theme .owl-nav {
    margin-top: 10px;
    position: initial;
    align-content: space-around;
    height: 100%;
    top: 0;
}
button.owl-prev {
    font-size: 62px !important;
    height: 95%;
    position: absolute;
    top: 0;
    left: 5px;
}
.owl-theme .owl-nav {
    margin-top: -10px !important;
}
button.owl-next {
    font-size: 62px !important;
    height: 100%;
    position: absolute;
    top: 0;
    right: 5px;
}
.owl-dots{display: none;}
#owl-box1 .owl-nav button.owl-next, #owl-box1 .owl-nav button.owl-prev, #owl-box1 button.owl-dot{
	background: 0 0;
    color: #eaf4ff !important;
    border: none;
    padding: 0 !important;
    font: inherit;
}
#owl-box2 .owl-nav button.owl-next, #owl-box2 .owl-nav button.owl-prev, #owl-box2 button.owl-dot{
	background: 0 0;
    color: #000000 !important;
    border: none;
    padding: 0 !important;
    font: inherit;
}
.owl-nav button:focus, .owl-nav button:hover {
    outline: 0px !important;
	background: transparent !important;
}
/* Owl Carousel Navigation CSS End*/
.hero-section .owl-carousel h1{
	font-size: 3.5rem;
	letter-spacing: 1px;
	/* text-shadow: 0px 1px 3px #262626; */
}
.hero-bg-height{
	height: 80vh; 
}
.hero-section .owl-carousel h2, .hero-section .owl-carousel h3{
	text-shadow: 0.51px 0.51px #fffbf3 !important;
}
div#owl-box3 .owl-item{
	padding: 5px;
}
.desktop-hero{display: block;}
.mobile-hero{display: none;}
/* Tablet-specific responsive fixes */
@media (min-width: 768px) and (max-width: 1024px) {
	/* Fix header navigation overlapping on tablets */
	#header-navbar {
		flex-wrap: wrap;
		margin-left: 0;
		margin-right: 0;
		padding-left: 0;
	}
	
	#header-navbar .nav-item {
		margin: 2px 0;
		padding-left: 0;
	}
	
	#header-navbar .nav-link {
		padding-left: 0;
		margin-left: 0;
	}
	
	.navbar-collapse {
		padding-left: 0;
		padding-right: 0;
	}
	
	#quick-action {
		margin-left: 0;
		padding-left: 0;
	}
	
	#header-navbar .nav-link.call-us-btn {
		font-size: 18px;
		white-space: nowrap;
	}
	
	#quick-action {
		margin-top: 10px;
		flex-wrap: wrap;
		justify-content: flex-start;
	}
	
	#quick-action .btn {
		font-size: 14px;
		padding: 6px 12px;
		margin: 2px;
	}
	
	#quick-action .btn i {
		font-size: 18px;
	}
	
	/* Ensure navbar collapse doesn't overlap */
	.navbar-collapse {
		flex-direction: column;
		align-items: flex-start;
	}
	
	/* Fix hero section for tablets - stack vertically for better layout */
	.mobile-hero .hero-section {
		display: flex;
		flex-direction: column;
	}
	
	.mobile-hero .col-md-6 {
		flex: 0 0 100%;
		max-width: 100%;
		width: 100%;
	}
	
	.mobile-hero .col-md-6:first-child {
		margin-bottom: 0;
	}
	
	.mobile-hero .col-md-6 img {
		width: 100%;
		height: auto;
		object-fit: cover;
		max-height: 400px;
	}
	
	.mobile-hero .bg-theme2 {
		padding: 40px 30px !important;
		min-height: auto;
		display: flex;
		flex-direction: column;
		justify-content: center;
	}
	
	.mobile-hero h1 {
		font-size: 32px !important;
		line-height: 1.4 !important;
		margin-bottom: 20px !important;
	}
	
	.mobile-hero h1 span {
		font-size: 28px !important;
	}
	
	.mobile-hero p {
		font-size: 18px !important;
		margin-bottom: 20px;
		line-height: 1.6;
	}
	
	.mobile-hero h3 {
		font-size: 20px !important;
		margin-bottom: 20px !important;
	}
	
	.mobile-hero .hero-btns {
		display: flex;
		flex-direction: row;
		gap: 15px;
		justify-content: center;
		flex-wrap: wrap;
		margin-top: 20px !important;
	}
	
	.mobile-hero .hero-btns .btn {
		flex: 0 0 auto;
		min-width: 220px;
		max-width: 280px;
		margin: 0 !important;
		padding: 12px 20px;
		font-size: 16px;
	}
}

@media (max-width:991px) {
	.desktop-hero{display: none;}
.mobile-hero{display: block;}
	.navbar-light .navbar-toggler-icon {
		filter: brightness(1) invert(1);
	}
	.main-logo {
		max-width: 120px;
	}
	
	/* CRITICAL: Ensure navbar menu is collapsed by default on mobile/tablet */
	.navbar-expand-lg .navbar-collapse {
		display: none !important;
	}
	
	/* Show menu only when it has the 'show' class (toggled open) */
	.navbar-expand-lg .navbar-collapse.show {
		display: flex !important;
		flex-direction: column;
	}
	
	/* Ensure toggle button is visible */
	.navbar-toggler {
		display: block !important;
	}
	/* ul#header-navbar {
        margin-top: 60px;
    } */
	.practice-name{
		font-size: 22px;
		color: #00884B;
	}
	.hero-section .owl-carousel h1{
		font-size: 1.5rem;
		text-shadow: 0.5px 0.5px #fffbf3;
	}
	.hero-section .owl-carousel h2, .hero-section .owl-carousel h3{
		font-size: 1.3rem;
		text-shadow: 0.51px 0.51px #fffbf3 !important;
	}
	.hero-bg-height{
		height: 80vh; 
	}
	
	/* Additional fixes for mobile hero on smaller tablets and mobile */
	.mobile-hero .hero-section {
		display: flex;
		flex-direction: column;
	}
	
	.mobile-hero .col-md-6 {
		flex: 0 0 100%;
		max-width: 100%;
		width: 100%;
	}
	
	.mobile-hero .col-md-6 img {
		width: 100%;
		height: auto;
		object-fit: cover;
	}
	
	.mobile-hero .bg-theme2 {
		padding: 30px 20px !important;
		min-height: auto;
	}
	
	.mobile-hero h1 {
		font-size: 26px !important;
		line-height: 1.3 !important;
		margin-bottom: 15px !important;
	}
	
	.mobile-hero h1 span {
		font-size: 24px !important;
	}
	
	.mobile-hero p {
		font-size: 16px !important;
		margin-bottom: 15px;
		line-height: 1.5;
	}
	
	.mobile-hero h3 {
		font-size: 18px !important;
		margin-bottom: 15px !important;
	}
	
	.mobile-hero .hero-btns {
		flex-direction: column;
		gap: 12px;
		align-items: center;
		margin-top: 15px !important;
	}
	
	.mobile-hero .hero-btns .btn {
		width: 100%;
		max-width: 100%;
		margin: 0 !important;
		padding: 12px 20px;
		font-size: 15px;
	}
}

/*********************
	Header CSS End
*********************/

/*********************
	Back To Top CSS
*********************/
#back-to-top {
	display: inline-block;
	background-color: #191B22;
	width: 40px;
	height: 40px;
	text-align: center;
	border-radius: 4px;
	position: fixed;
	bottom: 25px;
	right: 25px;
	transition: background-color .3s,
		opacity .5s, visibility .5s;
	opacity: 0;
	visibility: hidden;
	z-index: 1000;
}

#back-to-top::after {
	content: "\e5d8";
	font-family: 'Material Icons';
	font-weight: normal;
	font-style: normal;
	font-size: 1.5em;
	line-height: 40px;
	color: #fff;
}
#back-to-top:hover::after {
    filter: brightness(1);
}

#back-to-top:hover {
	cursor: pointer;
	background-color: #00884B;
}

#back-to-top:active {
	background-color: #191B22;
}

#back-to-top.show {
	opacity: 1;
	visibility: visible;
	cursor: pointer !important;
}

/*********************
	Back To Top CSS End
*********************/

div#insurance-nearby-location li,
div#insurance-nearby-location th,
div#insurance-nearby-location td {
	color: white !important;
}

div#insurance-nearby-location a,
div#insurance-nearby-location i {
	color: #ffffff !important;
}

.nav-tabs .nav-link.active,
.nav-tabs .nav-item.show .nav-link {
	background-color: #00884B;
	border-color: #dee2e6 #dee2e6 #00884B;
	color: white !important;
}
.faq-tabs .card {
    margin-bottom: 5px;
}
#faqs .nav-tabs .nav-link {
    border: 1px solid #d9ecf7;
}
#faqs .nav-tabs .nav-link.active {
    background-color: #00884B;
    color: #fff !important;
    border-color: #00884B #00884B #00884B;
}
#faqs .tab-content {
    background: #f0f9f4;
    border: 1px solid #d9ecf7;
    border-top: 0;
    border-radius: 0 0 6px 6px;
}
/* Enhanced accordion styles */
#faqs #accordion .card {
    border: 1px solid #e6f3fb;
    border-radius: 8px;
    box-shadow: 0 2px 8px rgba(0,0,0,0.04);
}
#faqs #accordion .card + .card {
    margin-top: 10px;
}
#faqs #accordion .card-header {
    background: #ffffff;
    border-bottom: 1px solid #eef6fc;
    cursor: pointer;
}
#faqs #accordion .card-header h5 {
    display: flex;
    justify-content: space-between;
    align-items: center;
}
#faqs #accordion .card-header h5::after {
    content: "expand_more";
    font-family: 'Material Icons';
    font-size: 22px;
    color: #00884B;
}
#faqs #accordion .collapse.show + .card-body,
#faqs #accordion .card-body {
    background: #ffffff;
}
#faqs #accordion .card:hover {
    box-shadow: 0 4px 14px rgba(0,0,0,0.06);
}
#services-tools {
    background: #e8f5ec;
    padding: 15px 10px;
    border: 1px solid #dee2e6;
    margin-bottom: 20px;
}
#services-tools li {
    border: 1px solid #d3d3d3;
    margin: 5px 2px;
}
.carousel-control-prev, .carousel-control-next{filter: brightness(5) invert(1);}

.highlight-bx {
    background: #00884B;
    padding: 15px;
    border-left: 3px solid #C41E3A;
    border-radius: 5px 15px 15px 5px;
}
div#hero-cta h1 {
	font-size: 2.1rem;
}
.fs-22 {
    font-size: 22px;
    font-weight: 600;
}
.fs-20 {
    font-size: 20px;
    font-weight: 600;
}
.fs-18 {
    font-size: 18px;
    font-weight: 600;
}
.local-panel h4, .local-panel h3, .local-panel h2, .local-panel h1, .local-panel p, .local-panel td, .local-panel th, .local-panel a, .local-panel i {
    color: white !IMPORTANT;
}
.doc-img-caption {
    background: white;
    padding: 10px;
}

/* Provider bio layout - text wraps around image */
.provider-bio-layout {
    overflow: auto;
}
.provider-bio-layout .provider-image-block {
    float: left;
    max-width: 280px;
    margin-right: 24px;
    margin-bottom: 16px;
}
.provider-bio-layout .provider-image-block img {
    display: block;
    width: 100%;
    height: auto;
}
@media (max-width: 575px) {
    .provider-bio-layout .provider-image-block {
        float: none;
        max-width: 100%;
        margin-right: 0;
        margin-bottom: 20px;
    }
    .provider-bio-layout .provider-image-block img {
        max-width: 280px;
        margin: 0 auto;
        display: block;
    }
}
div#insurance-providers h5{color: #d0e8d8;}
.medicbuilding {
    background: #191B22;
}
.medicbuilding img {
    padding: 2px;
    background: #191B22;
    border-radius: 0px;
}
.bx-highlight {
    border-radius: 5px;
    width: max-content;
    padding: 20px;
    background: #f2f8ff;
    box-shadow: 0 0 2px #c1c1c1;
}
/* Areas We Serve section */
#areas-we-serve.areas-serve-section {
    background: linear-gradient(180deg, #F8FAF9, #e8f5ec);
}
.serve-card {
    background: #ffffff;
    border: 1px solid #dee2e6;
    box-shadow: 0 6px 18px rgba(0,0,0,0.06);
    border-radius: 10px;
    padding: 20px 24px;
    max-width: 980px;
}
.serve-chips {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    justify-content: center;
}
.serve-chip {
    background: #f0f9f4;
    border: 1px solid #b8e0c8;
    color: #006B38;
    padding: 8px 12px;
    border-radius: 999px;
    font-size: 14px;
    line-height: 1;
    box-shadow: 0 1px 2px rgba(0,0,0,0.04);
}
.serve-chip:hover {
    background: #e0f3e8;
    border-color: #00884B;
}
@media (max-width: 575px) {
    .serve-card { padding: 16px; }
    .serve-chip { font-size: 13px; padding: 7px 10px; }
}
@media (min-width:768px) and (max-width:991px) {
	div#hero-cta h1 {
		font-size: 1.7rem;
	}
	div#hero-cta h3 {
		font-size: 1.5rem;
	}
}
@media (max-width: 767px) {
	div#hero-cta {
		position: absolute;
		text-align: right;
		max-width: 97%;
	}
	.provider-education {
		min-height: auto;
	}
	/* div#hero-cta h1 {
		display: inline-flex;
		max-width: 70%;
		padding-left: 35px;
		font-size: 1.3rem;
	} */
	div#hero-cta h1 {
        /* display: inline-flex; */
        max-width: 100%;
        padding-left: 35px;
        font-size: 1.3rem;
    }
	div#hero-cta h3 {
		font-size: 1.22rem;
	}

	#hero-cta .btn {
		width: 55%;
	}

	.hero-btns {
		text-align: -webkit-left;
	}

	#practice-description,
	#patient-portal,
	#patient-tools,
	#faqs {
		padding-top: 50px !important;
	}
	div#important-notice .list-group-item {
		padding: 0.75rem 0.22rem !important;
	}
}
@media (max-width: 380px){
	.main-logo {
        max-width: 120px;
    }
	div#hero-cta h1 {
		display: inline-flex;
		max-width: 100%;
		padding-left: 35px;
		font-size: 1.3rem;
	}
	#hero-section {
        padding: 70px 14px;
    }
}
@media (max-width: 325px){
	#hero-cta .btn {
		width: 65%;
	}
}

