/* My Dental: warm gold, ivory and espresso. Shared by public and admin pages. */
:root {
  --brand-gold: #C5A059;
  --brand-white: #FFFFFF;
  --brand-cream: #FFEFD7;
  --brand-sand: #FFDEA5;
  --brand-champagne: #E9C176;
  --brand-soft-gold: #CBA65E;
  --brand-bronze: #AF8B47;
  --brand-deep-bronze: #937230;
  --brand-brown: #775A19;
  --brand-deep-brown: #5D4201;
  --brand-cocoa: #412D00;
  --brand-espresso: #261900;
  --brand-black: #000000;
  --gold-bright: var(--brand-champagne);
  --gold-rich: var(--brand-gold);
  --gold-deep: var(--brand-deep-bronze);
  --gold-gradient: var(--brand-gold);
  --gold-gradient-hover: var(--brand-champagne);
  --gold-border-gradient: linear-gradient(135deg, var(--brand-sand), var(--brand-soft-gold), var(--brand-bronze));
  --brand-shadow: 0 14px 36px rgba(38, 25, 0, 0.08);
  --swiper-theme-color: var(--brand-gold);
  --swiper-navigation-color: var(--brand-brown);
  --swiper-pagination-color: var(--brand-gold);
  accent-color: var(--brand-gold);
  scrollbar-color: var(--brand-soft-gold) var(--brand-cream);
}

body {
  background: var(--brand-white) !important;
  color: var(--brand-cocoa);
}

::selection {
  background: var(--brand-sand);
  color: var(--brand-espresso);
}

a { color: var(--brand-brown) !important; }
a:hover, a:focus { color: var(--brand-deep-brown) !important; }

h1, h2, h3, h4, h5, h6,
.section-head h2, .section-head h3, .section-title,
.article-prose h2, .article-prose h3, .article-prose h4,
.service-intro-title, .doctor-body h4, .doctor-name,
.dashboard-section-title, .dashboard-shortcut-card h4 {
  color: var(--brand-espresso);
}

.header, .header-nav-row, .header-nav-row.is-fixed {
  background: var(--brand-white);
}
.header-bar {
  background: var(--brand-cream);
  border-color: var(--brand-sand);
}
.header .nav a, .header .phone a { color: var(--brand-cocoa) !important; }
.header .nav .current > a, .header .nav a:hover,
.header .nav a:focus, .header .phone .fa { color: var(--brand-brown) !important; }
.header .nav .current > a { box-shadow: inset 0 -2px 0 var(--brand-gold); }
.header-nav-row.is-fixed { box-shadow: 0 8px 28px rgba(38, 25, 0, 0.1); }
.btn-menu span, .btn-menu span::before, .btn-menu span::after {
  background-color: var(--brand-cocoa);
}

/* Solid gold actions keep dark labels readable at every size. */
.btn, .btn-primary, .btn-info, .btn-success, .btn-danger,
.btn-warning, .btn-default, .btn-dark, .button, .awe-btn,
.btn-right-top, .back-top, input[type="submit"],
.modern-hero .hero-actions .button,
.landing-service-arrow, .facility-modern-arrow,
.contact-map-button, .contact-selected-action, .mdc-contact-action,
.article-appointment-card .button, .news-modern-section .news-badge {
  background: var(--brand-gold) !important;
  background-color: var(--brand-gold) !important;
  background-image: none !important;
  border-color: var(--brand-gold) !important;
  color: var(--brand-espresso) !important;
}
.doctor-name, .doctor-program, .event-date, .event-date-doctor,
.article-kicker, .ad .ad-contacts {
  background: var(--brand-gold) !important;
  color: var(--brand-espresso) !important;
}
.btn:hover, .btn:focus, .button:hover, .button:focus,
.awe-btn:hover, .awe-btn:focus, .btn-right-top:hover,
.btn-right-top:focus, .back-top:hover, input[type="submit"]:hover,
input[type="submit"]:focus, .modern-hero .hero-actions .button:hover,
.modern-hero .hero-actions .button:focus,
.landing-service-arrow:hover, .facility-modern-arrow:hover,
.contact-map-button:hover, .contact-selected-action:hover,
.contact-selected-action:focus, .mdc-contact-action:hover,
.mdc-contact-action:focus {
  background: var(--brand-champagne) !important;
  background-color: var(--brand-champagne) !important;
  background-image: none !important;
  border-color: var(--brand-bronze) !important;
  color: var(--brand-espresso) !important;
}
.btn:active, .button:active, .mdc-contact-action:active {
  background: var(--brand-bronze) !important;
  color: var(--brand-espresso) !important;
}
a:focus-visible, button:focus-visible, .btn:focus-visible,
.button:focus-visible, input:focus-visible, select:focus-visible,
textarea:focus-visible {
  outline: 2px solid var(--brand-deep-brown);
  outline-offset: 3px;
}

.section-doctors, .section-doctors-alt, .section-partners,
.section-testimonials { background-color: var(--brand-white); }
.section.facility-modern-section,
.main.service-page-main,
.service-page-main > .section-services,
.main.contact-page-main {
  background: none !important;
}
.section-head p, .section-head h6, .section-head h5,
.service-card-body p, .landing-service-body p,
.service-intro-text, .service-detail-body p, .service-detail-body ul,
.mdc-contact-note, .contact-bar-note, .article-prose,
.article-recent-meta, .dashboard-hero p, .dashboard-shortcut-card p {
  color: var(--brand-brown);
}
.section-ribbon {
  background: var(--brand-white) !important;
  border: 0 !important;
  border-image: none !important;
}
.section-ribbon::before {
  border-color: transparent transparent var(--brand-white) transparent !important;
}

/* Warm photo overlays preserve the white hero titles. */
.modern-hero .slide::before {
  background: linear-gradient(90deg, rgba(38, 25, 0, 0.78), rgba(65, 45, 0, 0.42) 52%, rgba(38, 25, 0, 0.18));
}
.modern-hero .slide-caption-inner h1,
.modern-hero .slide-caption-inner h2,
.modern-hero .slide-caption-inner p, .article-hero h1 {
  color: var(--brand-white);
}
.modern-hero .slide-caption-inner h1,
.modern-hero .slide-caption-inner h2 {
  font-weight: 700;
  text-shadow: 0 2px 22px var(--brand-black);
}
.modern-hero .slide-caption > h5 {
  background: rgba(38, 25, 0, 0.48) !important;
  border: 1px solid var(--brand-soft-gold) !important;
  border-image: none !important;
  color: var(--brand-cream);
}
.hero-rating-panel {
  background: var(--brand-cream);
  border: 1px solid var(--brand-champagne) !important;
  border-image: none !important;
  box-shadow: var(--brand-shadow);
}
.hero-rating-panel::before {
  background: var(--brand-gold) !important;
}
.hero-rating-panel::after {
  background: radial-gradient(circle, rgba(233, 193, 118, 0.35), rgba(233, 193, 118, 0) 70%);
}
.hero-rating-panel h3 { color: var(--brand-espresso); }
.hero-rating-panel > p, .hero-rating-label { color: var(--brand-brown); }
.hero-rating-row + .hero-rating-row { border-color: var(--brand-sand); }
.hero-rating-stars { color: var(--brand-deep-bronze); }
.section-ribbon img, .facility-modern-tab img, .hero-rating-icon img,
.hero-rating-stars img[src*="Assets-06"], .rating img[src*="Assets-06"],
.news-modern-section .section-head img {
  filter: brightness(0) saturate(100%) invert(68%) sepia(26%) saturate(735%) hue-rotate(359deg) brightness(92%) contrast(89%);
}

.landing-service-card, .service-card, .doctor-box,
.section-doctors-alt .doctor-box,
.news-modern-section .news-featured-card, .news-modern-section .news-card {
  background: var(--brand-white) !important;
  border: 1px solid var(--brand-sand) !important;
  border-image: none !important;
  box-shadow: var(--brand-shadow);
}
.landing-service-card:hover, .service-card:hover, .doctor-box:hover,
.news-modern-section .news-featured-card:hover, .news-modern-section .news-card:hover {
  border-color: var(--brand-bronze) !important;
  border-image: none !important;
  box-shadow: 0 18px 40px rgba(65, 45, 0, 0.14);
}
.landing-service-body, .service-card-body, .doctor-body,
.news-modern-section .news-content, .news-modern-section .news-card .news-content {
  background: var(--brand-white) !important;
  background-image: none !important;
  border-color: var(--brand-sand) !important;
}
.landing-doctor-practice, .landing-service-body .link-more,
.text-primary, .service-card-body h3,
.news-modern-section .news-meta, .news-modern-section .news-meta .fa,
.news-modern-section .news-content h3 a:hover,
.news-modern-section .news-content h4 a:hover {
  color: var(--brand-brown) !important;
}
.landing-service-body h3, .news-modern-section h3 a,
.news-modern-section h4 a, .doctor-body h3 a,
.event-body h3 a { color: var(--brand-espresso) !important; }

.doctor-practice-filter, .service-filter-link, .service-filter-btn,
.facility-modern-tab, .partner-filters li {
  background: var(--brand-white) !important;
  background-image: none !important;
  border: 1px solid var(--brand-soft-gold) !important;
  border-image: none !important;
  color: var(--brand-brown) !important;
}
.doctor-practice-filter.active, .service-filter-link.active,
.service-filter-btn.active, .facility-modern-tab.active,
.partner-filters li.filter-active {
  background: var(--brand-gold) !important;
  border-color: var(--brand-gold) !important;
  color: var(--brand-espresso) !important;
}
.doctor-practice-filter:hover, .doctor-practice-filter:focus,
.service-filter-link:hover, .service-filter-link:focus,
.service-filter-btn:hover, .service-filter-btn:focus,
.facility-modern-tab:hover, .facility-modern-tab:focus,
.partner-filters li:hover {
  background: var(--brand-champagne) !important;
  border-color: var(--brand-bronze) !important;
  color: var(--brand-espresso) !important;
}
.facility-modern-viewer, .facility-modern-thumb, .client-logo,
.service-intro, .article-content-card, .article-sidebar-card,
.article-appointment-card, .latest-service {
  border-color: var(--brand-sand) !important;
  border-image: none !important;
}
.facility-modern-thumb.active, .facility-modern-thumb:hover {
  border-color: var(--brand-gold) !important;
}
.service-detail-contact, .latest-service .latest-service-link,
.article-prose blockquote { background: var(--brand-cream); border-color: var(--brand-gold); }
.latest-service .latest-service-link:hover,
.latest-service .latest-service-link:hover:focus {
  background: var(--brand-gold);
  color: var(--brand-espresso) !important;
}
.latest-service .latest-service-link:hover .fa,
.latest-service .latest-service-link:hover:focus .fa {
  color: var(--brand-espresso) !important;
}
.article-hero { background: var(--brand-espresso); }
.article-hero-media::after {
  background: linear-gradient(90deg, rgba(38, 25, 0, 0.92), rgba(65, 45, 0, 0.58) 48%, rgba(38, 25, 0, 0.18));
}
.article-kicker { background: var(--brand-champagne); color: var(--brand-espresso); }
.article-meta-line { color: var(--brand-cream); }

.contact-redesign-shell { border-color: var(--brand-sand); box-shadow: var(--brand-shadow); }
.contact-clinic-button { color: var(--brand-cocoa) !important; }
.contact-clinic-button small { color: var(--brand-brown); }
.contact-clinic-button .fa { color: var(--brand-deep-bronze); }
.contact-clinic-button:hover, .contact-clinic-button:focus,
.contact-clinic-button.is-active {
  background: var(--brand-sand) !important;
  border-color: var(--brand-gold) !important;
}
.contact-selected-card { background: var(--brand-cocoa); color: var(--brand-cream); }
.contact-selected-card h2 { color: var(--brand-white); }
.contact-selected-line { color: var(--brand-cream); }
.contact-selected-label, .contact-selected-line a, .contact-selected-line .fa {
  color: var(--brand-champagne) !important;
}

/* The deep footer anchors the light cream sections above it. */
.footer.contact-modern-section, .contact-modern-section {
  background: var(--brand-espresso) !important;
  color: var(--brand-cream);
}
.contact-footer-brand h3, .contact-footer-locations h3,
.contact-footer-map h3, .contact-location-card h4 {
  color: var(--brand-champagne) !important;
}
.contact-footer-brand p, .contact-modern-section .contact-line,
.contact-modern-section .contact-line span { color: var(--brand-cream); }
.contact-location-card {
  background: var(--brand-cocoa);
  border-left: 3px solid var(--brand-deep-bronze);
  border-image: none !important;
}
.contact-location-card a, .contact-line .fa {
  color: var(--brand-sand) !important;
}
.contact-footer-social a, .contact-footer-social a:hover {
  background: transparent !important;
  border-color: var(--brand-bronze);
  color: var(--brand-champagne) !important;
}
.contact-footer-social a:hover { background: var(--brand-cocoa) !important; }
.contact-map-card { border-color: var(--brand-bronze); border-image: none !important; }
.contact-map-empty { background: var(--brand-cocoa); }

.paging a, .pagination > li > a, .pagination > li > span {
  border-color: var(--brand-sand) !important;
  color: var(--brand-brown) !important;
}
.paging .current a, .paging li:hover a, .paging a:focus,
.pagination > .active > a, .pagination > .active > span,
.pagination > li > a:hover {
  background: var(--brand-gold) !important;
  border-color: var(--brand-gold) !important;
  color: var(--brand-espresso) !important;
}
.paging li.next a, .paging li.prev a { color: var(--brand-cocoa) !important; }

input[type="text"], input[type="email"], input[type="password"],
input[type="tel"], input[type="number"], input[type="search"],
input[type="date"], textarea, select, .form-control {
  background-color: var(--brand-white);
  border-color: var(--brand-soft-gold);
  color: var(--brand-cocoa);
}
input::placeholder, textarea::placeholder { color: var(--brand-brown); opacity: 0.85; }
.form-control:focus, input:focus, select:focus, textarea:focus {
  border-color: var(--brand-deep-bronze);
  box-shadow: 0 0 0 3px rgba(197, 160, 89, 0.18);
}
.input-group-addon { background: var(--brand-cream); border-color: var(--brand-soft-gold); color: var(--brand-brown); }

/* Login and management pages use the same brand without changing their layout. */
.cls-container #bg-overlay {
  background: radial-gradient(ellipse at 18% 15%, var(--brand-brown), transparent 60%), var(--brand-espresso) !important;
}
.cls-brand .brand-title { color: var(--brand-cream); }
.cls-container .panel, .panel {
  background-color: var(--brand-white);
  border-color: var(--brand-sand);
}
.cls-container .panel { box-shadow: var(--brand-shadow); }
.cls-container .panel-body, .cls-container .panel-body p { color: var(--brand-espresso); }
#container:not(.cls-container), #content-container, #page-content {
  background-color: var(--brand-cream);
  color: var(--brand-cocoa);
}
#navbar, #navbar-container, #navbar .navbar-header,
#navbar .navbar-content { background-color: var(--brand-white); }
#navbar .navbar-top-links > li > a { color: var(--brand-brown); }
#navbar .navbar-top-links > li > a:hover { background-color: var(--brand-cream); }
#navbar .navbar-content { box-shadow: inset -4px 0 0 var(--brand-gold); }
#mainnav, #mainnav-container, #mainnav-menu-wrap { background-color: var(--brand-espresso); }
#mainnav-menu a, #mainnav-menu .list-header { color: var(--brand-cream); }
#mainnav-menu a:hover, #mainnav-menu .active-link > a,
#mainnav-menu .active-sub > a {
  background-color: var(--brand-cocoa);
  color: var(--brand-champagne);
  box-shadow: inset 3px 0 0 var(--brand-gold);
}
#mainnav-menu .list-divider { border-color: var(--brand-brown); }
.panel-heading, .panel-footer, .table > thead > tr > th {
  background-color: var(--brand-cream);
  border-color: var(--brand-sand);
  color: var(--brand-cocoa);
}
.table-striped > tbody > tr:nth-of-type(odd) { background-color: var(--brand-cream); }
.table > tbody > tr > td { border-color: var(--brand-sand); }
.dashboard-hero {
  background: linear-gradient(135deg, var(--brand-white), var(--brand-cream));
  border-color: var(--brand-sand);
  border-left-color: var(--brand-gold);
}
.dashboard-shortcut-card { background: var(--brand-white); border-color: var(--brand-sand); }
.dashboard-shortcut-icon { background: var(--brand-cream); color: var(--brand-deep-bronze); }
.dashboard-shortcut-card:hover { border-color: var(--brand-bronze); }
.bg-primary, .bg-info, .bg-success, .bg-warning, .bg-danger,
.label-primary, .label-info, .label-success, .label-warning, .label-danger,
.badge-primary, .badge-info, .badge-success, .badge-warning, .badge-danger {
  background-color: var(--brand-gold);
  color: var(--brand-espresso);
}
.text-info, .text-success, .text-warning, .text-danger { color: var(--brand-brown); }
.pace .pace-progress { background: var(--brand-gold); }
.pace .pace-progress-inner { box-shadow: 0 0 10px var(--brand-gold), 0 0 5px var(--brand-gold); }
.pace .pace-activity { border-top-color: var(--brand-gold); border-left-color: var(--brand-gold); }

@media (max-width: 767px) {
  .header .nav { background: var(--brand-white); }
  .header .nav a { border-color: var(--brand-sand); }
  .modern-hero .slide::before {
    background: linear-gradient(90deg, rgba(38, 25, 0, 0.82), rgba(65, 45, 0, 0.58) 48%, rgba(38, 25, 0, 0.22));
  }
}
