/**
 * Template A — CMS palette bridge
 * Panel :root sets --primary, --secondary, --dark (heading), --light (background), --text
 */

/* ── Bootstrap utility alignment ── */
body.cms-active-template-templateA .text-primary { color: var(--primary) !important; }
body.cms-active-template-templateA .text-secondary { color: var(--secondary) !important; }
body.cms-active-template-templateA .text-dark { color: var(--dark) !important; }
body.cms-active-template-templateA .text-body { color: var(--text) !important; }
body.cms-active-template-templateA .text-muted {
  color: color-mix(in srgb, var(--text) 65%, transparent) !important;
}
body.cms-active-template-templateA .bg-primary { background-color: var(--primary) !important; }
body.cms-active-template-templateA .bg-secondary { background-color: var(--secondary) !important; }
body.cms-active-template-templateA .bg-dark { background-color: var(--dark) !important; }
body.cms-active-template-templateA .bg-light { background-color: var(--light) !important; }
body.cms-active-template-templateA .border-primary { border-color: var(--primary) !important; }

/* ── Page shell ── */
body.cms-active-template-templateA .ta-template-a-page {
  color: var(--text);
  background-color: var(--light);
}

/* Headings & display titles (light sections) */
body.cms-active-template-templateA .ta-template-a-page h1,
body.cms-active-template-templateA .ta-template-a-page h2,
body.cms-active-template-templateA .ta-template-a-page h3,
body.cms-active-template-templateA .ta-template-a-page h4,
body.cms-active-template-templateA .ta-template-a-page h5,
body.cms-active-template-templateA .ta-template-a-page h6,
body.cms-active-template-templateA .ta-template-a-page .display-1,
body.cms-active-template-templateA .ta-template-a-page .display-2,
body.cms-active-template-templateA .ta-template-a-page .display-3,
body.cms-active-template-templateA .ta-template-a-page .display-4,
body.cms-active-template-templateA .ta-template-a-page .display-5,
body.cms-active-template-templateA .ta-template-a-page .display-6 {
  color: var(--dark);
}

body.cms-active-template-templateA .ta-template-a-page p,
body.cms-active-template-templateA .ta-template-a-page li,
body.cms-active-template-templateA .ta-template-a-page .service-text p,
body.cms-active-template-templateA .ta-template-a-page .testimonial-item p {
  color: var(--text);
}

body.cms-active-template-templateA .ta-section-kicker {
  color: var(--text) !important;
}

/* ── Inner page header (dark band) ── */
body.cms-active-template-templateA .ta-page-header {
  background-color: var(--dark) !important;
}

body.cms-active-template-templateA .ta-page-header .ta-page-header-title,
body.cms-active-template-templateA .ta-page-header .breadcrumb-item a {
  color: var(--secondary) !important;
}

body.cms-active-template-templateA .ta-page-header .breadcrumb-item.active {
  color: var(--primary) !important;
}

/* ── Hero & offer (dark scrim) ── */
body.cms-active-template-templateA .ta-on-dark {
  color: var(--secondary);
}

body.cms-active-template-templateA .ta-on-dark .ta-hero-scrim {
  background: color-mix(in srgb, var(--dark) 55%, transparent) !important;
}

body.cms-active-template-templateA .ta-on-dark .ta-section-kicker,
body.cms-active-template-templateA .ta-on-dark .text-light {
  color: color-mix(in srgb, var(--secondary) 85%, transparent) !important;
}

body.cms-active-template-templateA .ta-on-dark h1,
body.cms-active-template-templateA .ta-on-dark h2,
body.cms-active-template-templateA .ta-on-dark h3,
body.cms-active-template-templateA .ta-on-dark h4,
body.cms-active-template-templateA .ta-on-dark h5,
body.cms-active-template-templateA .ta-on-dark h6,
body.cms-active-template-templateA .ta-on-dark .display-1,
body.cms-active-template-templateA .ta-on-dark .display-2,
body.cms-active-template-templateA .ta-on-dark .display-3,
body.cms-active-template-templateA .ta-on-dark .display-4,
body.cms-active-template-templateA .ta-on-dark .display-5,
body.cms-active-template-templateA .ta-on-dark .display-6 {
  color: var(--secondary) !important;
}

body.cms-active-template-templateA .ta-on-dark p {
  color: color-mix(in srgb, var(--secondary) 90%, transparent) !important;
}

body.cms-active-template-templateA .ta-offer-section .ta-offer-scrim {
  background: color-mix(in srgb, var(--dark) 65%, transparent) !important;
}

/* ── Contact (light section) ── */
body.cms-active-template-templateA .ta-contact-section {
  background-color: var(--light) !important;
}

body.cms-active-template-templateA .ta-contact-section .ta-section-kicker,
body.cms-active-template-templateA .ta-contact-section .ta-contact-info-text {
  color: var(--text) !important;
}

body.cms-active-template-templateA .ta-contact-section h1,
body.cms-active-template-templateA .ta-contact-section .display-6 {
  color: var(--dark) !important;
}

/* ── Facts cards ── */
body.cms-active-template-templateA .ta-template-a-page .ta-fact-card-bg.bg-secondary {
  background-color: var(--primary) !important;
}

body.cms-active-template-templateA .ta-template-a-page .facts-overlay,
body.cms-active-template-templateA .ta-template-a-page .ta-fact-overlay {
  background: var(--light) !important;
}

body.cms-active-template-templateA .ta-template-a-page .ta-fact-label {
  color: var(--dark) !important;
}

body.cms-active-template-templateA .ta-template-a-page .ta-fact-desc,
body.cms-active-template-templateA .ta-template-a-page .ta-fact-count,
body.cms-active-template-templateA .ta-template-a-page .ta-fact-suffix {
  color: var(--text) !important;
}

body.cms-active-template-templateA .ta-template-a-page .ta-fact-index {
  -webkit-text-stroke-color: var(--primary);
}

/* ── Service / menu / blog cards ── */
body.cms-active-template-templateA .ta-template-a-page .service-item.bg-light {
  background-color: var(--light) !important;
}

body.cms-active-template-templateA .ta-template-a-page .service-item .service-text h5 {
  color: var(--dark);
}

body.cms-active-template-templateA .ta-template-a-page .team-item .team-text.bg-white {
  background-color: var(--secondary) !important;
}

body.cms-active-template-templateA .ta-template-a-page .team-item .team-text h5 {
  color: var(--dark);
}

body.cms-active-template-templateA .ta-template-a-page .team-item .team-text span {
  color: var(--primary) !important;
}

body.cms-active-template-templateA .ta-template-a-page .testimonial-item h5 {
  color: var(--dark);
}

body.cms-active-template-templateA .ta-template-a-page .testimonial-item span {
  color: var(--text);
}

/* ── Video play icon on primary circle ── */
body.cms-active-template-templateA .ta-template-a-page .bg-primary .text-white,
body.cms-active-template-templateA .ta-template-a-page .bg-primary .fa-play {
  color: var(--secondary) !important;
}

/* ── Topbar & navbar ── */
body.cms-active-template-templateA .container-fluid.bg-light.p-0 {
  background-color: var(--light) !important;
  color: var(--text);
}

body.cms-active-template-templateA .container-fluid.bg-light.p-0 small {
  color: var(--text);
}

body.cms-active-template-templateA .navbar.bg-white {
  background-color: var(--secondary) !important;
}

body.cms-active-template-templateA .navbar .navbar-brand h1 {
  color: var(--dark);
}

body.cms-active-template-templateA .navbar.navbar-light .navbar-nav .nav-link,
body.cms-active-template-templateA .navbar .navbar-nav .nav-link,
body.cms-active-template-templateA .navbar .navbar-nav .dropdown-toggle {
  color: var(--dark) !important;
}

body.cms-active-template-templateA .navbar.navbar-light .navbar-nav .nav-link:hover,
body.cms-active-template-templateA .navbar.navbar-light .navbar-nav .nav-link:focus,
body.cms-active-template-templateA .navbar .navbar-nav .nav-link:hover,
body.cms-active-template-templateA .navbar .navbar-nav .nav-link:focus,
body.cms-active-template-templateA .navbar .navbar-nav .nav-link.active,
body.cms-active-template-templateA .navbar .navbar-nav .show > .nav-link,
body.cms-active-template-templateA .navbar .navbar-nav .dropdown-toggle:hover,
body.cms-active-template-templateA .navbar .navbar-nav .dropdown-toggle:focus {
  color: var(--primary) !important;
}

/* ── Footer (dark band) ── */
body.cms-active-template-templateA .footer.bg-dark {
  background-color: var(--dark) !important;
  color: var(--text) !important;
}

body.cms-active-template-templateA .footer h1,
body.cms-active-template-templateA .footer h4,
body.cms-active-template-templateA .footer .text-light {
  color: var(--secondary) !important;
}

body.cms-active-template-templateA .footer p {
  color: var(--text) !important;
}

body.cms-active-template-templateA .footer p.ta-footer-hours,
body.cms-active-template-templateA .footer p.ta-footer-hours strong,
body.cms-active-template-templateA .footer p.ta-footer-hours span,
body.cms-active-template-templateA .footer p.ta-footer-hours .fa-clock {
  color: var(--dark) !important;
}

body.cms-active-template-templateA .footer .btn-link,
body.cms-active-template-templateA .footer .btn.btn-link::before {
  color: var(--text) !important;
}

body.cms-active-template-templateA .footer .btn-link:hover {
  color: var(--primary) !important;
}

body.cms-active-template-templateA .footer .copyright a {
  color: var(--secondary) !important;
}

body.cms-active-template-templateA .footer .copyright a:hover {
  color: var(--primary) !important;
}

/* ── Menu nav pills (inactive on light sections) ── */
body.cms-active-template-templateA .menu-tabs .menu.nav-link:not(.active) {
  color: var(--text) !important;
  background: transparent !important;
}

body.cms-active-template-templateA .menu-tabs .menu.nav-link.active {
  background-color: var(--primary) !important;
  color: var(--text) !important;
}

/* ── Contact form fields (readable on light section) ── */
body.cms-active-template-templateA .ta-contact-form .form-control.ta-contact-field {
  background-color: var(--secondary) !important;
  color: var(--dark) !important;
  border: 1px solid var(--dark) !important;
}

body.cms-active-template-templateA .ta-contact-form .form-control.ta-contact-field:focus {
  border-color: var(--dark) !important;
}

body.cms-active-template-templateA .ta-contact-form .form-floating > label {
  color: color-mix(in srgb, var(--text) 75%, var(--dark)) !important;
}
