/* ══════════════════════════════════════
   ASTRA + ELEMENTOR COLOR OVERRIDE v3
   Fixes green, preserves button text visibility
══════════════════════════════════════ */

/* Astra global colors */
html body :root {
  --ast-global-color-0: #E85D4C !important;
  --ast-global-color-1: #C2413C !important;
  --ast-global-color-2: #1E293B !important;
  --ast-global-color-3: #475569 !important;
}

/* Links — EXCLUDE buttons and nav CTA so text stays visible */
html body a:not(.tb-btn):not(.ast-button):not(.button):not(.elementor-button) {
  color: #E85D4C !important;
}
html body a:not(.tb-btn):not(.ast-button):not(.button):not(.elementor-button):hover,
html body a:not(.tb-btn):not(.ast-button):not(.button):not(.elementor-button):focus {
  color: #C2413C !important;
}

/* Buttons: coral bg, WHITE text */
html body .ast-button,
html body .button,
html body button,
html body input[type="button"],
html body input[type="submit"],
html body .elementor-button,
html body .tb-btn--primary,
html body .tb-btn--secondary,
html body .tb-btn--outline,
html body .tb-btn--ghost {
  background-color: #E85D4C !important;
  border-color: #E85D4C !important;
  color: #ffffff !important;
}
html body .ast-button:hover,
html body .button:hover,
html body button:hover,
html body input[type="button"]:hover,
html body input[type="submit"]:hover,
html body .elementor-button:hover,
html body .tb-btn--primary:hover,
html body .tb-btn--secondary:hover {
  background-color: #C2413C !important;
  border-color: #C2413C !important;
  color: #ffffff !important;
}

/* Outline buttons: coral border, coral text on white */
html body .tb-btn--outline,
html body .elementor-button.elementor-button-outline {
  background: transparent !important;
  background-color: transparent !important;
  border-color: #E85D4C !important;
  color: #E85D4C !important;
}
html body .tb-btn--outline:hover {
  background: #E85D4C !important;
  background-color: #E85D4C !important;
  color: #ffffff !important;
}

/* Scroll to top */
html body #ast-scroll-top {
  background-color: #E85D4C !important;
}

/* Focus states */
html body input:focus,
html body textarea:focus,
html body select:focus {
  border-color: #E85D4C !important;
  box-shadow: 0 0 0 1px #E85D4C !important;
}

/* Blockquote */
html body blockquote {
  border-left-color: #E85D4C !important;
}

/* Footer links */
html body .site-footer a {
  color: #E85D4C !important;
}
html body .site-footer a:hover {
  color: #C2413C !important;
}

/* Entry title links */
html body .entry-title a {
  color: #1E293B !important;
}
html body .entry-title a:hover {
  color: #E85D4C !important;
}

/* ══════════════════════════════════════
   HIDE ASTRA HEADER/FOOTER ON CUSTOM PAGES
══════════════════════════════════════ */
.tb-homepage .ast-hfb-header,
.tb-homepage #ast-fixed-header,
.tb-homepage .ast-below-header-bar,
.tb-homepage .ast-above-header-bar,
.tb-homepage .ast-mobile-header-wrap,
.tb-homepage .site-footer,

.tb-blog-page .ast-hfb-header,
.tb-blog-page #ast-fixed-header,
.tb-blog-page .ast-below-header-bar,
.tb-blog-page .ast-above-header-bar,
.tb-blog-page .ast-mobile-header-wrap,
.tb-blog-page .site-footer,

.tb-archive-page .ast-hfb-header,
.tb-archive-page #ast-fixed-header,
.tb-archive-page .ast-below-header-bar,
.tb-archive-page .ast-above-header-bar,
.tb-archive-page .ast-mobile-header-wrap,
.tb-archive-page .site-footer,

.tb-single-page .ast-hfb-header,
.tb-single-page #ast-fixed-header,
.tb-single-page .ast-below-header-bar,
.tb-single-page .ast-above-header-bar,
.tb-single-page .ast-mobile-header-wrap,
.tb-single-page .site-footer,

.tb-tools-page .ast-hfb-header,
.tb-tools-page #ast-fixed-header,
.tb-tools-page .ast-below-header-bar,
.tb-tools-page .ast-above-header-bar,
.tb-tools-page .ast-mobile-header-wrap,
.tb-tools-page .site-footer,

.tb-about-page .ast-hfb-header,
.tb-about-page #ast-fixed-header,
.tb-about-page .ast-below-header-bar,
.tb-about-page .ast-above-header-bar,
.tb-about-page .ast-mobile-header-wrap,
.tb-about-page .site-footer,

.tb-contact-page .ast-hfb-header,
.tb-contact-page #ast-fixed-header,
.tb-contact-page .ast-below-header-bar,
.tb-contact-page .ast-above-header-bar,
.tb-contact-page .ast-mobile-header-wrap,
.tb-contact-page .site-footer {
  display: none !important;
}

/* ══════════════════════════════════════
   ELEMENTOR-SPECIFIC OVERRIDES
══════════════════════════════════════ */

/* Hero heading accent */
html body .ct-hero h1 span,
html body .ct-hero h2 span,
html body .ct-hero h3 span {
  color: #E85D4C !important;
}

/* Success message box */
html body .ct-success {
  background: #FEF2F0 !important;
  background-color: #FEF2F0 !important;
  border-color: #E85D4C !important;
}
html body .ct-success a {
  color: #E85D4C !important;
}

/* Any element still using the old green hex */
html body [style*="#12C96E"],
html body [style*="12C96E"] {
  color: #E85D4C !important;
}
html body [style*="background: #12C96E"],
html body [style*="background-color: #12C96E"] {
  background: #E85D4C !important;
  background-color: #E85D4C !important;
}
html body [style*="border-color: #12C96E"] {
  border-color: #E85D4C !important;
}

/* Catch-all for common Elementor green classes */
html body .elementor-widget-text-editor a,
html body .elementor-tab-title.elementor-active,
html body .elementor-accordion .elementor-tab-title.elementor-active,
html body .elementor-toggle .elementor-tab-title.elementor-active {
  color: #E85D4C !important;
}

/* Form focus states */
html body .wpcf7-form input:focus,
html body .wpcf7-form textarea:focus,
html body .wpcf7-form select:focus,
html body .elementor-form input:focus,
html body .elementor-form textarea:focus,
html body .elementor-form select:focus {
  border-color: #E85D4C !important;
  box-shadow: 0 0 0 1px #E85D4C !important;
}
