/* True header / nav — Uncode native pills; leftover .gm-* rules stay until Groovy is gone. */

/* Nav */
@media only screen and (min-width:1205px) {
.gm-main-menu-wrapper li.btn-phone.menu-item {
	margin-left: 32px;
}
.gm-main-menu-wrapper .gm-navbar-nav > .gm-menu-item.btn-phone > .gm-anchor {
    margin-right: 16px;
}	
.gm-main-menu-wrapper .gm-navbar-nav > .gm-menu-item.btn-appt > .gm-anchor {
    margin-left: 0px;
}	
}

.logo-container.col-lg-0 {
    padding: 27px 24px 27px 36px;
}
@media (min-width: 960px) {
.menu-smart > li > a {
    padding: 0px 8px 0px 8px;
}
}

.gm-main-menu-wrapper .gm-navbar-nav > .gm-menu-item > .gm-anchor {
	font-family: 'Satoshi', sans-serif;
	font-style: normal;
	font-weight: 500;
	font-size: 16px;
	line-height: 25px;
	leading-trim: both;
	text-edge: cap;
	/* Basic/Slate */
	color: #323130;
}

/* Uncode native header — top-level nav type (Groovy Customizer values) */
#masthead .menu-primary-inner > li:not(.btn-phone):not(.btn-appt) > a {
	font-family: 'Satoshi', sans-serif;
	font-style: normal;
	font-weight: 500;
	font-size: 16px !important;
	line-height: 25px !important;
	letter-spacing: 0 !important;
	color: #323130 !important;
	text-transform: none;
}

@media (min-width: 960px) {
	#masthead .menu-primary-inner > li:not(.btn-phone):not(.btn-appt) > a {
		padding: 0 12px !important;
	}
}

/* Uncode dropdown submenu type — match top-level 16px (Marty r9). Does not target .btn-appt. */
#masthead .menu-smart .drop-menu a {
	font-family: 'Satoshi', sans-serif;
	font-style: normal;
	font-weight: 500;
	font-size: 16px !important;
	line-height: 25px !important;
	letter-spacing: 0 !important;
	color: #323130 !important;
	text-transform: none;
}

@media (max-width: 959px) {
	#masthead .menu-primary-inner > li:not(.btn-phone):not(.btn-appt) > a {
		font-size: 18px !important;
		line-height: 21px !important;
	}
}

@media (max-width: 1023px) {
.gm-navigation-drawer--mobile .gm-navbar-nav > .gm-menu-item > .gm-anchor {
	font-family: 'Satoshi', sans-serif;
	font-style: normal;
	font-weight: 500;
	font-size: 18px;
	line-height: 21px;
	leading-trim: both;
	text-edge: cap;
	/* Basic/Slate */
	color: #323130;
}
}

.gm-main-menu-wrapper .uncode-list a {
	font-family: 'Satoshi', sans-serif !imporant;
	font-style: normal;
	font-weight: 400;
	font-size: 17px;
	line-height: 21px;
	leading-trim: both;
	text-edge: cap;
	/* Basic/Alabaster */
	color: #FFFCF7;
}

.gm-mega-menu-wrapper {
	padding-top: 12px;
}

.gm-mega-menu__item a:hover {
	color: #FFFCF7 !important;
}
.gm-main-menu-wrapper h4 {
	margin-top: 16px !important;
	font-family: 'Larken';
	font-style: normal;
	font-weight: 300;
	font-size: 28px;
	line-height: 36px;
}
.gm-main-menu-wrapper .uncode-list p {
	margin-top: 10px;
	line-height: 1.5;
}
.gm-navbar .gm-navbar-nav > .gm-menu-item > .gm-anchor > .gm-caret i {
    margin-right: 4px;
}
/* Phone Number */
.gm-main-menu-wrapper .btn-phone a {
	border: 1px solid #323130;
	border-radius: 24px;
	font-family: 'Satoshi', sans-serif;
	font-style: normal;
	font-weight: 400;
	font-size: 16px !important;
	line-height: 21px;
	text-transform: capitalize;
	padding: 10px 22px !important;
	display: inline !important;
	text-align: center;	
	letter-spacing: -0px;	
}
.gm-navbar:not(.gm-navbar-sticky-toggle) .gm-navbar-nav > .btn-phone > .gm-anchor:hover {
	color: #323130 !important;	
}
.btn-phone > .gm-anchor > .gm-menu-item__txt-wrapper {
    display: inline;
}
.btn-phone:hover {
	opacity: 1;
}

@media (max-width: 1023px) {
.gm-navigation-drawer--mobile.gm-navigation-drawer--right {
    margin-top: 70px;
}
.gm-drawer--open .gm-logo, .gm-drawer--open .gm-menu-actions-wrapper {
    opacity: 1;
}
	.gm-navigation-drawer--mobile .gm-menu-btn-close-mobile-drawer {
		display: none;
	}	
.gm-navigation-drawer--mobile .gm-navbar-nav > .gm-menu-item.btn-phone > .gm-anchor {
	border: 1px solid #FFFCF7;
	border-radius: 24px;
	font-family: 'Satoshi', sans-serif;
	font-style: normal;
	font-weight: 400;
	font-size: 18px !important;
	line-height: 21px;
	text-transform: capitalize;
	padding: 10px 22px !important;
	text-align: center;	
	width: 200px;
	display: block;
	margin: 24px auto;	
}
.gm-navigation-drawer--mobile .gm-navbar-nav > .gm-menu-item.btn-appt > .gm-anchor {
	box-sizing: border-box;
	border: 1px solid #2A5962;
	color: #323130 !important;
	background: #D2E88B;
	border-radius: 24px;
	font-family: 'Satoshi', sans-serif;
	font-style: normal;
	font-weight: 400;
	font-size: 18px !important;
	line-height: 21px;
	text-transform: capitalize;
	padding: 10px 22px !important;
	text-align: center;	
	width: 250px;
	display: block;
	margin: 24px auto;	
}

.gm-navigation-drawer--mobile .gm-navbar-nav > .gm-menu-item.btn-appt > .gm-anchor > .gm-menu-item__txt-wrapper {
    display: block;
}
.gm-navigation-drawer .gm-anchor, .gm-navigation-drawer .gm-mega-menu__item__title {
    font-weight: 400;
}	
}
.gm-navbar:not(.gm-navbar-sticky-toggle) .gm-navbar-nav > li.current-menu-item.btn-appt > .gm-anchor {
	color: rgba(50, 49, 48, 1) !important;
}

/* Appointment Icon */
@media only screen and (min-width:1023px) {
	.gm-actions {
		display:none !important;
	}
}

/* Appointment Button */
.gm-main-menu-wrapper .btn-appt a {
	background: #D2E88B;
	border-radius: 24px;
	padding: 0px;
	font-family: 'Satoshi', sans-serif;
	font-style: normal;
	font-weight: 500 !important;
	font-size: 16px !important;
	line-height: 21px;
	text-transform: capitalize !important;
	/* Primary/Shell White */
	color: #152229 !important;
	padding: 10px 22px !important;
	letter-spacing: -0px;	
}
.gm-main-menu-wrapper .btn-appt a:hover {
	background: #D2E88B;
	opacity: 1;
}
.gm-navbar:not(.gm-navbar-sticky-toggle) .gm-navbar-nav > .btn-appt > .gm-anchor:hover {
	color: #152229 !important;
	
}

/* Appointment Icon Mobile */
.groovy-1710881019-sdg-appointment:before {
    font-size: 1.8em;
}

/* Locations Mega Menu */
.gm-main-menu-wrapper .sdg-locations-list.col-lg-4 {
	padding: 0px 0px 36px 0px;
}
.gm-main-menu-wrapper .sdg-locations-list.col-lg-4 {
	padding: 0px 0px 36px 0px;
}
.gm-main-menu-wrapper .sdg-locations-list.col-lg-4 .column_child.col-lg-6 {
	padding: 0px 18px 36px 18px;
}


.style-light {
	color: #323130;
}
.style-dark {
	color: #FFFCF7;
}

.style-light .headings-color, .style-dark .style-light .headings-color, .style-light .detail-container .detail-label, .style-dark .style-light .detail-container .detail-label, .style-light .uncode-star-rating, .style-dark .style-light .uncode-star-rating, .style-light h1, .style-dark .style-light h1, .style-light h2, .style-dark .style-light h2, .style-light h3, .style-dark .style-light h3, .style-light h4, .style-dark .style-light h4, .style-light h5, .style-dark .style-light h5, .style-light h6, .style-dark .style-light h6, .style-light .heading-text > p, .style-dark .style-light .heading-text > p, .style-light p b, .style-dark .style-light p b, .style-light p strong, .style-dark .style-light p strong, .style-light dl dt, .style-dark .style-light dl dt, .style-light dl.variation dt, .style-dark .style-light dl.variation dt, .style-light dl.variation dd, .style-dark .style-light dl.variation dd, .style-light blockquote p, .style-dark .style-light blockquote p, .style-light table thead, .style-dark .style-light table thead, .style-light form p, .style-dark .style-light form p, .style-light .panel-title > a > span:after, .style-dark .style-light .panel-title > a > span:after, .style-light .plan .plan-price .price, .style-dark .style-light .plan .plan-price .price, .style-light .detail-label, .style-dark .style-light .detail-label, .style-light .uncode-owl-nav .uncode-owl-nav-in, .style-dark .style-light .uncode-owl-nav .uncode-owl-nav-in, .style-light .header-wrapper .header-scrolldown i, .style-dark .style-light .header-wrapper .header-scrolldown i, .style-light .header-wrapper .header-content-inner blockquote.pullquote p:first-child, .style-dark .style-light .header-wrapper .header-content-inner blockquote.pullquote p:first-child, .style-light .header-main-container .post-info, .style-dark .style-light .header-main-container .post-info, .style-light .header-main-container .post-info a, .style-dark .style-light .header-main-container .post-info a, .style-light .widget-container.widget_top_rated_products li:before, .style-dark .style-light .widget-container.widget_top_rated_products li:before, .style-light .widget-container.widget_recent_reviews li:before, .style-dark .style-light .widget-container.widget_recent_reviews li:before, .style-light .widget-container.widget_latest_tweets_widget .tweet-text:before, .style-dark .style-light .widget-container.widget_latest_tweets_widget .tweet-text:before, .style-light .widget-container.widget_latest_tweets .tweet-text:before, .style-dark .style-light .widget-container.widget_latest_tweets .tweet-text:before, .style-light .comment-content .comment-author a, .style-dark .style-light .comment-content .comment-author a, .style-light .comment-content .comment-author span, .style-dark .style-light .comment-content .comment-author span, .style-light div[class*=sharer-].share-button label, .style-dark .style-light div[class*=sharer-].share-button label, .style-light .share-button.share-inline .social.top li, .style-dark .style-light .share-button.share-inline .social.top li, .style-light .vc_progress_bar .vc_progress_label, .style-dark .style-light .vc_progress_bar .vc_progress_label, .style-light .vc_pie_chart .vc_pie_chart_value, .style-dark .style-light .vc_pie_chart .vc_pie_chart_value, .style-light .counter, .style-dark .style-light .counter, .style-light .counter-suffix, .style-dark .style-light .counter-suffix, .style-light .counter-prefix, .style-dark .style-light .counter-prefix, .style-light .countdown, .style-dark .style-light .countdown, .style-light ul.dwls_search_results .daves-wordpress-live-search_title .search-title, .style-dark .style-light ul.dwls_search_results .daves-wordpress-live-search_title .search-title, .style-light ul.dwls_search_results .daves-wordpress-live-search_author, .style-dark .style-light ul.dwls_search_results .daves-wordpress-live-search_author, .style-light .uncode-star-rating, .style-dark .style-light .uncode-star-rating {
    color: #152229;
}

/* Uncode native header — phone / Book pills */
#masthead .menu-primary-inner > li.btn-phone,
#masthead .menu-primary-inner > li.btn-appt {
	align-items: center;
	vertical-align: middle;
}

#masthead .menu-primary-inner > li.btn-phone > a,
#masthead .menu-primary-inner > li.btn-appt > a {
	box-sizing: border-box;
	border-radius: 24px;
	font-family: 'Satoshi', sans-serif;
	font-style: normal;
	font-size: 16px !important;
	line-height: 21px !important;
	letter-spacing: 0;
	text-align: center;
	text-decoration: none !important;
	padding: 10px 22px !important;
	height: auto !important;
	min-height: 0 !important;
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	align-self: center;
	white-space: nowrap;
}

#masthead .menu-primary-inner > li.btn-phone > a > i.fa-dropdown,
#masthead .menu-primary-inner > li.btn-appt > a > i.fa-dropdown {
	display: none !important;
}

#masthead .menu-primary-inner > li.btn-phone > a {
	background: transparent !important;
	border: 1px solid #323130;
	color: #323130 !important;
	font-weight: 400;
	text-transform: capitalize;
}

#masthead .menu-primary-inner > li.btn-phone > a:hover,
#masthead .menu-primary-inner > li.btn-phone > a:focus {
	background: transparent !important;
	color: #323130 !important;
	opacity: 1;
}

#masthead .menu-primary-inner > li.btn-appt > a,
#masthead .menu-primary-inner > li.current-menu-item.btn-appt > a {
	background: #D2E88B !important;
	border: 1px solid #D2E88B;
	color: #152229 !important;
	font-weight: 500 !important;
	text-transform: capitalize !important;
}

#masthead .menu-primary-inner > li.btn-appt > a:hover,
#masthead .menu-primary-inner > li.btn-appt > a:focus {
	background: #D2E88B !important;
	color: #152229 !important;
	opacity: 1;
}

@media (min-width: 960px) {
	#masthead .menu-primary-inner > li.btn-phone {
		margin-left: 16px;
	}
	#masthead .menu-primary-inner > li.btn-phone > a {
		margin-right: 8px;
	}
	#masthead .menu-primary-inner > li.btn-appt > a {
		margin-left: 0;
	}
	body[class*="hmenu-"]:not(.hormenu-position-right) .navbar-nav-last > ul.menu-primary-inner > li.btn-phone > a,
	body[class*="hmenu-"]:not(.hormenu-position-right) .navbar-nav-last > ul.menu-primary-inner > li.btn-appt > a {
		padding-right: 20px !important;
		padding-left: 20px !important;
	}
}

@media (max-width: 959px) {
	#masthead .menu-primary-inner > li.btn-phone {
		display: none !important;
	}
	#masthead .menu-primary-inner > li.btn-appt {
		display: block;
		width: 100%;
		box-sizing: border-box;
		margin: 8px 0 0 !important;
		padding: 16px 36px 36px !important;
		border-bottom: none !important;
		text-align: center;
	}
	#masthead .menu-primary-inner > li.btn-appt > a {
		display: flex !important;
		align-items: center;
		justify-content: center;
		width: 100%;
		min-height: 48px;
		font-size: 18px !important;
		padding: 12px 22px !important;
		margin: 0 !important;
		box-sizing: border-box;
		background: #D2E88B !important;
		border: 1px solid #D2E88B;
		color: #152229 !important;
		font-weight: 500 !important;
		border-radius: 42px;
	}
	#masthead .menu-primary-inner > li.btn-appt > a i.fa-dropdown {
		display: none !important;
	}
}

/* Mobile drawer rows. Same layout as Goodman: label at the left, caret at
   the right edge, hairline between rows. Fonts and the book button stay. */
@media (max-width: 959px) {
	#masthead .menu-primary-inner > li:not(.btn-phone):not(.btn-appt) {
		margin: 0 !important;
		border-bottom: 1px solid rgba(21, 34, 41, 0.12);
	}

	#masthead .menu-primary-inner > li:not(.btn-phone):not(.btn-appt) > a {
		display: flex !important;
		align-items: center !important;
		justify-content: flex-start !important;
		width: 100% !important;
		box-sizing: border-box;
		padding: 14px 24px !important;
	}

	#masthead .menu-primary-inner > li:not(.btn-phone):not(.btn-appt) > a i.fa-dropdown {
		display: block !important;
		margin-left: auto !important;
		margin-right: 0 !important;
	}

	#masthead .menu-primary-inner > li > ul > li {
		margin: 0 !important;
		border-bottom: 1px solid rgba(21, 34, 41, 0.12);
	}

	#masthead .menu-primary-inner > li > ul > li > a {
		display: flex !important;
		align-items: center !important;
		width: 100% !important;
		box-sizing: border-box;
		padding: 12px 24px 12px 40px !important;
	}

	#masthead .menu-primary-inner > li > ul li a i.fa-dropdown {
		display: none !important;
	}
}

/* Mobile header icons — book, chat, phone (Goodman / Sunrise Uncode pattern) */
.mobile-header-icon {
	display: none;
}

@media (max-width: 1119px) {
	#masthead .mmb-container {
		display: flex;
		align-items: center;
	}

	#masthead .mobile-header-icon {
		display: inline-flex !important;
		align-items: center;
		justify-content: center;
		width: 32px;
		height: 32px;
		padding: 0 !important;
		margin: 0 4px;
		background: transparent !important;
		border: none !important;
		box-shadow: none !important;
		text-decoration: none;
	}

	#masthead .mobile-header-icon img {
		width: 32px !important;
		height: 32px !important;
		max-width: 32px !important;
		max-height: 32px !important;
		display: block;
	}

	#masthead .mobile-book-btn,
	#masthead .mobile-chat-btn,
	#masthead .mobile-phone-btn {
		background: transparent !important;
		border: none !important;
		box-shadow: none !important;
	}
}

/* Phone: Uncode's 36px hamburger padding plus the book and phone icons
   is wider than the row, so the calendar sits on the wordmark. */
@media (max-width: 959px) {
	#masthead .mmb-container .mobile-menu-button,
	#masthead .mmb-container .lines-button {
		padding: 0 10px !important;
	}

	#masthead .mobile-header-icon {
		margin: 0 2px;
	}

	#masthead .logo-container,
	.logo-container.col-lg-0 {
		padding: 16px 12px 16px 16px !important;
	}
}

@media (max-width: 420px) {
	#masthead #main-logo img {
		max-width: calc(100vw - 168px) !important;
		width: auto !important;
		height: auto !important;
		max-height: 40px !important;
	}
}

/* ==========================================================================
   Desktop nav dropdown: widen the panel (r12).
   A negative margin-top pulled the panel above the .box-wrapper that wraps
   the header. That wrapper is overflow:hidden, so the top of the menu was
   clipped. Keep the top flush with the anchor. SmartMenus writes margin-top
   inline, hence the !important.

   The panel is opaque but painted the same colour as the page, so it read as
   loose floating links with no box at all. RCD gets its definition from
   Uncode's menu-dd-shadow-std, which this header does not carry — borrow the
   shadow so the box shows.
   ========================================================================== */

@media (min-width: 960px) {
	.menu-horizontal .menu-smart > li > ul.drop-menu {
		margin-top: 0 !important;
		padding-top: 0 !important;
		min-width: 280px;
		z-index: 30;
		box-shadow: 0 30px 60px -30px rgba(0, 0, 0, 0.45);
	}

	.menu-horizontal .menu-smart > li > ul.drop-menu > li:first-child > a {
		position: relative;
		z-index: 2;
	}
}

/* ==========================================================================
   RCD density + 1280 navbar. Shop stays top-level on SDG.
   Icon pills only in 960–1099; hamburger icons stay at 959.
   ========================================================================== */

@media (min-width: 960px) {
	.navbar .limit-width {
		max-width: 1280px;
	}

	#masthead .logo-image.main-logo,
	#masthead #main-logo a > *,
	#logo img,
	.logo-container img,
	#masthead #main-logo img {
		height: 46px !important;
		max-height: 46px !important;
		width: auto !important;
	}
}

@media (min-width: 1360px) {
	#masthead .menu-primary-inner > li:not(.btn-phone):not(.btn-appt) > a {
		font-size: 16px !important;
		padding: 0 12px !important;
	}

	#masthead .menu-primary-inner > li.btn-phone {
		margin-left: 16px;
	}

	#masthead .menu-primary-inner > li.btn-phone > a,
	#masthead .menu-primary-inner > li.btn-appt > a,
	body[class*="hmenu-"]:not(.hormenu-position-right) .navbar-nav-last > ul.menu-primary-inner > li.btn-phone > a,
	body[class*="hmenu-"]:not(.hormenu-position-right) .navbar-nav-last > ul.menu-primary-inner > li.btn-appt > a {
		padding: 10px 20px !important;
	}

	#masthead .menu-primary-inner > li.btn-phone > a {
		margin-right: 8px;
	}
}

@media (min-width: 1200px) and (max-width: 1359px) {
	#masthead .menu-primary-inner > li:not(.btn-phone):not(.btn-appt) > a {
		font-size: 15px !important;
		padding: 0 8px !important;
	}

	#masthead .menu-primary-inner > li.btn-phone {
		margin-left: 16px;
	}

	#masthead .menu-primary-inner > li.btn-phone > a,
	#masthead .menu-primary-inner > li.btn-appt > a,
	body[class*="hmenu-"]:not(.hormenu-position-right) .navbar-nav-last > ul.menu-primary-inner > li.btn-phone > a,
	body[class*="hmenu-"]:not(.hormenu-position-right) .navbar-nav-last > ul.menu-primary-inner > li.btn-appt > a {
		padding: 10px 16px !important;
	}

	#masthead .menu-primary-inner > li.btn-phone > a {
		margin-right: 8px;
	}
}

@media (min-width: 960px) and (max-width: 1199px) {
	#masthead .menu-primary-inner > li:not(.btn-phone):not(.btn-appt) > a {
		font-size: 14px !important;
		padding: 0 5px !important;
	}

	#masthead .menu-primary-inner > li.btn-phone {
		margin-left: 12px;
	}

	#masthead .menu-primary-inner > li.btn-phone > a,
	#masthead .menu-primary-inner > li.btn-appt > a,
	body[class*="hmenu-"]:not(.hormenu-position-right) .navbar-nav-last > ul.menu-primary-inner > li.btn-phone > a,
	body[class*="hmenu-"]:not(.hormenu-position-right) .navbar-nav-last > ul.menu-primary-inner > li.btn-appt > a {
		padding: 10px 12px !important;
	}

	#masthead .menu-primary-inner > li.btn-phone > a {
		margin-right: 8px;
	}
}

@media (min-width: 960px) and (max-width: 1119px) {
	#masthead .menu-primary-inner > li.btn-phone,
	#masthead .menu-primary-inner > li.btn-appt {
		display: none !important;
	}

	#masthead .mobile-menu-button,
	#masthead .lines-button {
		display: none !important;
	}

	#masthead .row-menu {
		position: relative;
	}

	#masthead .mmb-container {
		position: absolute;
		right: 36px;
		top: 0;
		height: 100%;
		width: auto;
		display: flex;
		align-items: center;
	}

	#masthead .main-menu-container {
		padding-right: 96px;
	}
}
