:root {
  /* --color-theme-dark-primary: #747B2D; */
  --color-theme-dark-primary: #3c410c;
  --color-theme-dark-secondary: #505624;
  --color-theme-dark-tertiary: #3c410c;
  --color-theme-dark-quaternary: #2f340a;
  --color-theme-white: #FFFFFF;
  --color-theme-black: #000000;
  --color-theme-gray-label: #595959;
  --color-theme-accent: #b6bf50;
  --color-theme-dark-quinary: #54494d;
}

/* Version: 2.4.3 */
/* ---------------------------------------- Setup 'DarkMagenta-LightMagenta-FloralRed' ------------------------------------------- */
/* Additional CSS -- */
figure.effect-sadie h2,
figure.effect-sadie p {
  color: var(--color-theme-white);
}

.profile-wrap {
  border-right: 1px dotted #eaeaea;
}

.border-left {
  border-left: 1px dotted #eaeaea;
}

/* ---------------- Fallbacks (Honor Deprecated Color Setup Inputs & Substitute Defaults)------------------------ */
/* ----------------------------------- Implementation ------------------------------------------------------------ */
.bg-body,
.bg-white {
  background: var(--color-theme-white);
  color: var(--color-theme-black);
}

.bg-body-complement,
.bg-mute {
  background: #f7f7f7;
  color: var(--color-theme-black);
}

/* complement has a slightly different shade */
.bg-body .text-contrast,
.bg-body-complement .text-contrast,
.bg-body .divider-dotted,
.bg-white .text-contrast,
.bg-mute .text-contrast,
.bg-white .divider-dotted {
  color: var(--color-theme-black);
}

/* Headings aand .text-contrast are defined in relation to a background */
.bg-body a.TLBC,
.bg-white a.TLBC,
.bg-body-complement a.TLBC,
.bg-mute a.TLBC {
  background-image: linear-gradient(to right, var(--color-theme-black) 100%, transparent 100%);
  color: inherit;
}

.bg-body .text-contrast a.TLBC,
.bg-white .text-contrast a.TLBC,
.bg-body-complement .text-contrast a.TLBC,
.bg-mute .text-contrast a.TLBC {
  background-image: linear-gradient(to right, var(--color-theme-black) 100%, transparent 100%);
  color: inherit;
}

.bg-nav {
  background: var(--color-theme-white);
  color: var(--color-theme-black);
}

.bg-nav-complement {
  background: #f7f7f7;
  color: var(--color-theme-black);
}

/* complement has a slightly different shade */
.bg-nav .text-contrast,
.bg-nav .divider-dotted {
  color: var(--color-theme-white);
}

/* Headings aand .text-contrast are defined in relation to a background */
.bg-primary,
.bg-primary .text-default {
  background: var(--color-theme-white);
  color: var(--color-theme-black);
}

.bg-primary-complement,
.bg-primary-complement .text-default {
  background: #e6e6e6;
  color: var(--color-theme-black);
}

/* complement has a slightly different shade */
.btn-primary,
.btn-primary>a,
.btn-primary>span>a {
  background: var(--color-theme-white);
  color: var(--color-theme-black);
}

.bg-primary .text-contrast,
.bg-primary .divider-dotted {
  color: var(--color-theme-white);
}

/* Headings aand .text-contrast are defined in relation to a background */
.bg-primary a.TLBC,
.bg-primary-complement a.TLBC {
  background-image: linear-gradient(to right, var(--color-theme-black) 100%, transparent 100%);
  color: inherit;
}

.bg-primary .text-contrast a.TLBC,
.bg-primary-complement .text-contrast a.TLBC {
  background-image: linear-gradient(to right, var(--color-theme-white) 100%, transparent 100%);
  color: inherit;
}

.bg-secondary {
  background: #c3c4c9;
  color: var(--color-theme-black);
  border-color: #c3c4c9;
}

/* Also .call-out */
.bg-secondary-complement {
  background: #dedee1;
  color: var(--color-theme-black);
}

.btn-secondary,
.btn-secondary>a,
.btn-secondary>span>a {
  background: #c3c4c9;
  color: var(--color-theme-black);
}

.bg-secondary .text-contrast,
.bg-secondary .divider-dotted {
  color: var(--color-theme-black);
}

/* Headings aand .text-contrast are defined in relation to a background */
.bg-secondary a.TLBC,
.bg-secondary-complement a.TLBC {
  background-image: linear-gradient(to right, var(--color-theme-black) 100%, transparent 100%);
  color: inherit;
}

.bg-secondary .text-contrast a.TLBC,
.bg-secondary-complement .text-contrast a.TLBC {
  background-image: linear-gradient(to right, var(--color-theme-black) 100%, transparent 100%);
  color: inherit;
}

.bg-tertiary {
  background: var(--color-theme-accent);
  color: var(--color-theme-white);
}

.bg-tertiary-complement {
  background: #908a8c;
  color: var(--color-theme-white);
}

.btn-tertiary,
.btn-tertiary>a,
.btn-tertiary>span>a {
  background: var(--color-theme-accent);
  color: var(--color-theme-black);
}

.btn-tertiary:hover,
.btn-tertiary:focus,
.btn-tertiary:hover>a {
  background: var(--color-theme-dark-quinary);
  color: var(--color-theme-white);
}

.bg-tertiary .text-contrast,
.bg-tertiary .divider-dotted {
  color: #422522;
}

/* Headings aand .text-contrast are defined in relation to a background */
.bg-tertiary a.TLBC,
.bg-tertiary-complement a.TLBC {
  background-image: linear-gradient(to right, var(--color-theme-white) 100%, transparent 100%);
  color: inherit;
}

.bg-tertiary .text-contrast a.TLBC,
.bg-tertiary-complement .text-contrast a.TLBC {
  background-image: linear-gradient(to right, #422522 100%, transparent 100%);
  color: inherit;
}

.btn-transparent {
  background: transparent;
  color: var(--color-theme-dark-primary);
}

.btn-transparent.active,
.btn-transparent.active:hover {
  background: var(--color-theme-dark-primary);
  color: var(--color-theme-white);
}

.bg-form .text-default {
  color: var(--color-theme-black);
}

/* -------------------------------------------------- Site Structure ------------------------------------------------ */
/* ------------- Backgrounds -------------*/
.bg-nav {
  background-image: none;
  background-clip: initial;
  background-color: var(--color-theme-white);
  background-origin: initial;
  background-position: center center;
  background-repeat: repeat;
  -webkit-background-size: cover;
  background-size: initial;
  background-attachment: initial;
}

.wp-pg-tmplt-home .main-section,
.page-template-page-home-php .main-section,
.wp-pg-tmplt-about section.horizontal-format+section.inner-block,
.page-template-page-about-php section.horizontal-format+section.inner-block,
.wp-pg-tmplt-archive-post .inner-block,
.page-template-archive-post-php .inner-block,
.wp-pg-tmplt-contact section.bg-body,
.page-template-page-contact-php section.bg-body,
.wp-pg-tmplt-patient-info .inner-block-services.bg-body,
.page-template-page-patientinfo-php .inner-block-services.bg-body,
.wp-pg-tmplt-empty .services-page .main-service-content.bg-mute,
.wp-pg-tmplt-empty .services-page .service-body,
.page-template-page-empty-php .services-page .service-body,
.wp-pst-single section.blog-post,
.single-post section.blog-post,
.wp-pst-template-archive-locations .inner-block,
.post-type-archive-locations .inner-block,
.wp-pg-single-locations .single-location-wrapper,
.single-locations .single-location-wrapper,
.wp-pg-tmplt-404 .inner-block,
.error404 .inner-block,
.wp-pg-tmplt-smile-gallery section.inner-block,
.page-template-page-smilegallery section.inner-block,
.wp-pg-tmplt-special-offers section.inner-block,
.page-template-page-offers-php section.inner-block,
.wp-pg-tmplt-testimonials section.inner-block,
.page-template-page-testimonials-php section.inner-block {
  background-image: none;
  background-clip: initial;
  background-color: var(--color-theme-white);
  background-origin: initial;
  background-position: center center;
  background-repeat: repeat;
  -webkit-background-size: cover;
  background-size: initial;
  background-attachment: initial;
}

footer .bg-body {
  background-image: none;
  background-clip: initial;
  background-color: var(--color-theme-white);
  background-origin: initial;
  background-position: center center;
  background-repeat: repeat;
  -webkit-background-size: cover;
  background-size: initial;
  background-attachment: initial;
}

.wp-pg-tmplt-patient-info .inner-block-services.bg-body .intro-col.bg-body,
.page-template-page-patientinfo-php .inner-block-services.bg-body .intro-col.bg-body,
.wp-pg-tmplt-empty .services-page .breadcrumbs,
.page-template-page-empty-php .services-page .breadcrumbs,
.wp-pg-tmplt-404 .inner-block .row.bg-body,
.error404 .inner-block .row.bg-body,
.wp-pg-tmplt-404 [class*=-main-area],
.error404 [class*=-main-area],
.wp-pst-single .main-content-area,
.single-post .main-content-area {
  background: transparent;
}

/* ------------- General -------------*/
/* All links inherit from their parent - adding btn-tertiary is a hack here to avoid making nav buttons .btn class */
a:not(.text-contrast):not(.btn):not(.btn-tertiary):not(.btn-transparent):not(.btn-floating):not(.breadcrumb):not(.edit-link):not(.TLBC),
input[type=submit].waves-button-input {
  background: transparent;
}

.btn-floating,
.btn-floating i {
  color: var(--color-theme-white);
}

/* ------------- Hovers -------------*/
/* Button Hovers - the complementary base color; text color is inherited from the .{base-color}-btn class */
.btn-primary:hover {
  background: #e6e6e6;
}

.btn-secondary:hover {
  background: #dedee1;
}

.btn-tertiary:hover {
  background: var(--color-theme-dark-quinary);
}

.btn-transparent:hover {
  background: #f7f7f7;
}

/* Dropdown Hover States */
.dropdown-content:not(.dropdown-main-nav) li:hover,
.dropdown-content:not(.dropdown-main-nav) ul.active li,
.dropdown-content:not(.dropdown-main-nav) li.selected,
.dropdown-content:not(.dropdown-main-nav) li:hover a {
  background-color: #690a04;
}

/* Hover state on home page services grid */
figure.effect-sadie figcaption:before {
  background: -webkit-linear-gradient(top, rgba(80, 8, 3, 0) 0%, rgba(80, 8, 3, 0.8) 75%);
  background: linear-gradient(to bottom, rgba(80, 8, 3, 0) 0%, rgba(80, 8, 3, 0.8) 75%);
}

/* FA / Icons hover states */
#SubFooter .fa:hover {
  color: #b6bf50;
}

/* ------------- Navigation -------------*/
.bg-nav {
  background-color: var(--color-theme-white);
}

/* Main nav, top level links, slight background on hover */
nav .main-nav .main-menu-item:hover,
nav .multi-location-nav:hover:not(.active) {
  background: #f7f7f7;
}

/* Main navbar, dropdown, background and text */
nav ul.main-nav .dropdown-main-nav,
nav ul.main-nav .dropdown-main-nav .sub-menu-item {
  background: var(--color-theme-accent);
  /* background: #b6bf50; */
  color: var(--color-theme-black);
}

/* Nav underlines on hover */
nav ul.main-nav>li>a:before,
nav .dropdown-main-nav li a:before,
nav ul.side-nav li>a:before {
  /* Main nav, toplevel (always visible) */
  /* Main nav dropdown, inner (visible on hover) */
  /* Side nav */
  background-color: #690a04;
}

/* Main navbar, small size (on page scroll) */
nav.small .top-nav-wrapper {
  background: #f7f7f7;
}

/* Background of small navbar */
/* Main navbar overflow scrollbar */
#menu-primary-navigation::-webkit-scrollbar-thumb {
  background: #f7f7f7;
}

#menu-primary-navigation::-webkit-scrollbar-thumb:hover {
  background: #eaeaea;
}

/* Side Nav */
nav .button-collapse {
  color: var(--color-theme-white);
}

nav .button-collapse:hover {
  color: #c3c4c9;
}

nav .side-nav li {
  border-color: #f7f7f7;
}

/* --------------- Forms ---------------*/
.bg-form {
  background-color: var(--color-theme-white);
}

/* Form Labels (Screen reader only) */
.input-field label {
  color: var(--color-theme-gray-label) !important;
}

/* I believe this can be removed */
input.active label {
  color: var(--color-theme-white);
}

/* When real text is typed, fade out the label into the white background */
/* Forms Inputs (are hard white/ hard black text) */
input:not([type]),
input[type=text],
input[type=password],
input[type=email],
input[type=url],
input[type=time],
input[type=date],
input[type=datetime],
input[type=datetime-local],
input[type=tel],
input[type=number],
input[type=search],
textarea.materialize-textarea {
  background-color: var(--color-theme-white);
}

.input-field input {
  color: var(--color-theme-black);
}
.input-field input[type="submit"]:hover {
  color: var(--color-theme-white);
}
.contact-form .input-field input[type="submit"] {
  max-width: 100%;
}
.input-field .form-btn {
  color: var(--color-theme-black);
}
.input-field .form-btn input {
  color: var(--color-theme-black);
  background: var(--color-theme-accent);
  width: 100%;
  line-height: 36px;
}
.input-field .form-btn input:hover {
  color: var(--color-theme-white);
}

/* Form Placeholders (are hard light grey on white bg) */
.input-field input::-webkit-input-placeholder,
.input-field input:-moz-placeholder,
.input-field input::-moz-placeholder,
.input-field input:-ms-input-placeholder {
  color: rgba(125, 125, 125, 0.55) !important;
  opacity: 1;
}

.input-field select,
.location-selector select {
  color: var(--color-theme-black);
}

/* Note that color:black is applied to the select text once the change() event fires */
/* Text color for read-only inputs, indicating disabled use */
input:not([type]):focus:not([readonly])+label,
input[type=text]:focus:not([readonly])+label,
input[type=password]:focus:not([readonly])+label,
input[type=email]:focus:not([readonly])+label,
input[type=url]:focus:not([readonly])+label,
input[type=time]:focus:not([readonly])+label,
input[type=date]:focus:not([readonly])+label,
input[type=datetime]:focus:not([readonly])+label,
input[type=datetime-local]:focus:not([readonly])+label,
input[type=tel]:focus:not([readonly])+label,
input[type=number]:focus:not([readonly])+label,
input[type=search]:focus:not([readonly])+label,
textarea.materialize-textarea:focus:not([readonly])+label {
  color: #f7f7f7;
}

/* Form accent border, shows on in-use input */
input:not([type]):focus:not([readonly]),
input[type=text]:focus:not([readonly]),
input[type=password]:focus:not([readonly]),
input[type=email]:focus:not([readonly]),
input[type=url]:focus:not([readonly]),
input[type=time]:focus:not([readonly]),
input[type=date]:focus:not([readonly]),
input[type=datetime]:focus:not([readonly]),
input[type=datetime-local]:focus:not([readonly]),
input[type=tel]:focus:not([readonly]),
input[type=number]:focus:not([readonly]),
input[type=search]:focus:not([readonly]),
textarea.materialize-textarea:focus:not([readonly]),
select:focus:not([readonly]) {
  border-bottom: 1px solid #b6bf50;
  box-shadow: 0 1px 0 0 #b6bf50;
}

/* --------------- Footer ---------------*/
/* Sticky Footer */
.sticky-footer {
  -webkit-box-shadow: 0 -2px 18px -4px rgba(76, 76, 76, 0.37);
  -moz-box-shadow: 0 -2px 18px -4px rgba(76, 76, 76, 0.37);
  /* border - hard grey shadow */
  box-shadow: 0 -2px 18px -4px rgba(76, 76, 76, 0.37);
}

/* Footer Contact bar */
.contact .box-wrap-first,
.contact .box-wrap,
.contact .box-wrap-last,
.contact {
  border-color: #e6e6e6;
}

/* Contact bar thin vertical dividers */
/* --------------- Misc ---------------*/
/* Dividers */
.divider {
  background: transparent;
}

.divider-solid {
  color: inherit;
}

/* -------------------------------------------------- Individual Pages ------------------------------------------------ */
/* Home */
.reviews-callout .speech-bubble:after {
  border-top-color: #e6e6e6;
}

.index-testimonial .speech-bubble:after {
  border-top-color: #c3c4c9;
}

#home-slider.slider .indicator-item {
  background: var(--color-theme-white);
}

#home-slider.slider .indicator-item.active {
  /* background: #b6bf50; */
  background: var(--color-theme-dark-primary);
}

/* button color */
body.variation-two nav.large .nav-wrapper li.phone,
nav.large .multilocation-phones-dropdown {
  border: 2px solid var(--color-theme-white);
}

/* About */
.profile-wrap,
.border-left {
  border-color: #f7f7f7 !important;
}

.profile-container .image-wrapper.border-thin-primary .image-border {
  border: 3px solid var(--color-theme-white);
}

.profile-container .image-wrapper.border-thin-secondary .image-border {
  border: 3px solid #c3c4c9;
}

.profile-container .image-wrapper.border-thin-tertiary .image-border {
  border: 3px solid #b6bf50;
}

.profile-container .image-wrapper.border-box-shadow-primary .image-border {
  box-shadow: 5px 5px 5px rgba(255, 255, 255, 0.75);
}

/* Contact */
.location-info-panel a.btn-location {
  border-color: inherit;
  color: inherit;
}

.location-info-panel a.btn-location:hover {
  background-color: #dedee1;
  box-shadow: none;
}

/* Testimonials */
.testimonials-wrap:before {
  border-color: #f7f7f7 transparent;
}

/* Hard White */
#testimonials-page-slider.slick-slider li.slick-active button:before {
  color: #b6bf50;
}

/* Multilocation Archive (All Locations) */
.multi-category .location-image {
  background: #f7f7f7;
}

/* Fills in on a too-small image */
/* All Services */
.inner-block-services .service-wrapper img {
  border-color: #b6bf50;
}

/* border around the service icons */
/* Service Pages */
.wp-pg-tmplt-page .inner-intro.bg-white h1 span,
.wp-pg-tmplt-page .inner-intro.bg-white h1 a span,
.wp-pg-tmplt-empty .inner-intro.bg-white h1 span,
.wp-pg-tmplt-empty .inner-intro.bg-white h1 a span,
.page-template-page .inner-intro.bg-white h1 span,
.page-template-page .inner-intro.bg-white h1 a span,
.page-template-empty .inner-intro.bg-white h1 span,
.page-template-empty .inner-intro.bg-white h1 a span {
  color: #b6bf50;
}

.wp-pg-tmplt-page .inner-intro.bg-mute h1 span,
.wp-pg-tmplt-empty .inner-intro.bg-mute h1 span,
.page-template-page .inner-intro.bg-mute h1 span,
.page-template-empty .inner-intro.bg-mute h1 span {
  color: #b6bf50;
}

.wp-pg-tmplt-page .inner-intro.bg-tertiary h1 span,
.wp-pg-tmplt-empty .inner-intro.bg-tertiary h1 span,
.page-template-page .inner-intro.bg-tertiary h1 span,
.page-template-empty .inner-intro.bg-tertiary h1 span {
  color: #422522;
}

.wp-pg-tmplt-page .inner-intro.bg-secondary h1 span,
.wp-pg-tmplt-empty .inner-intro.bg-secondary h1 span,
.page-template-page .inner-intro.bg-secondary h1 span,
.page-template-empty .inner-intro.bg-secondary h1 span {
  color: #000;
}

.wp-pg-tmplt-page .inner-intro.bg-primary h1 span,
.wp-pg-tmplt-empty .inner-intro.bg-primary h1 span,
.page-template-page .inner-intro.bg-primary h1 span,
.page-template-empty .inner-intro.bg-primary h1 span {
  color: var(--color-theme-white);
}

.wp-pg-tmplt-page .inner-intro.bg-body h1 span,
.wp-pg-tmplt-empty .inner-intro.bg-body h1 span,
.page-template-page .inner-intro.bg-body h1 span,
.page-template-empty .inner-intro.bg-body h1 span {
  color: #000;
}

.breadcrumb {
  color: inherit;
  opacity: 0.65;
}

.breadcrumb:last-child {
  color: #b6bf50;
}

.breadcrumb:hover {
  color: #b6bf50;
}

.breadcrumb:hover:before,
.breadcrumb:before {
  color: black;
}

/* 2) Also enforce hover/focus states so scanner sees accessible colors - 09-12-2025 */
.button-wrap .call:focus,
.button-wrap .call:hover,
.button-wrap .schedule:focus,
.button-wrap .schedule:hover,
.button-wrap .call:focus span,
.button-wrap .call:hover span {
  background-color: #2f340a !important; /* darker fallback for states */
  color: #ffffff !important;
}

/* -------------------------------------------------- Media Queries ------------------------------------------------ */
@media only screen and (max-width: 1023px) {
  .bg-tertiary-complement {
    background: var(--color-theme-dark-tertiary);
  }
  nav.large li.address a i {
    color: var(--color-theme-black);
  }
}
@media only screen and (max-width: 992px) {
  /* nav.large .nav-wrapper .top-nav-wrapper {
    background: #f7f7f7;
  } */
  nav.large .nav-wrapper .top-nav-wrapper {
    background: var(--color-theme-white);
  }

  nav.large .nav-wrapper li.phone {
    color: var(--color-theme-white);
  }

  nav.large a.multi-phone i {
    border-right-color: var(--color-theme-white);
  }
}

@media only screen and (min-width: 769px) and (max-width: 992px) {
  .border-left {
    border-left-color: #f7f7f7;
  }

  .profile-wrap {
    border-right-color: #f7f7f7;
  }
}

@media only screen and (max-width: 768px) {
  .team .profile-image img {
    border-color: #f7f7f7;
  }
}

@media only screen and (max-width: 601px) {
  .profile-wrap {
    border-top-color: #f7f7f7;
  }
}

/* -------------------------------------------------- Color Overrides ------------------------------------------------ */
/* These are helper classes which should only be used to override color scheme default relationships */
/* The default text colors, one for each type of background. */
.bg-primary-body-text {
  color: var(--color-theme-black) !important;
}

.bg-secondary-body-text {
  color: var(--color-theme-black) !important;
}

.bg-tertiary-body-text {
  color: var(--color-theme-white) !important;
}

.bg-white-body-text {
  color: var(--color-theme-black) !important;
}

.bg-mute-body-text {
  color: var(--color-theme-black) !important;
}

/* A color of text corresponding to one of the base colors - This should only be used for headings, callouts, special links */
.text-default {
  color: inherit;
}

/* This will inherit the element's default color, useful for headings ie, recent blogs */
.text-primary {
  color: var(--color-theme-white) !important;
}

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

.text-tertiary {
  color: #b6bf50 !important;
}

.text-white {
  color: var(--color-theme-white) !important;
}

.text-black {
  color: var(--color-theme-black) !important;
}

.text-mute {
  color: #f7f7f7 !important;
}

/* Wordpress considerations */
.edit-link {
  background: transparent;
  color: inherit;
}

.edit-link a {
  color: inherit;
}