/* Relationship Healer brand layer.
 * Main brand accents: dark pink + dark green.
 * Body copy stays neutral black/charcoal on light backgrounds and white on dark backgrounds.
 */
:root {
  --rh-primary: #E91E63;
  --rh-soft-pink: #F78FB3;
  --rh-mint: #A8D5BA;
  --rh-sage: #6AA68C;
  --rh-pale-pink: #FDE8EF;
  --rh-green: #4CAF50;
  --rh-dark-green: #33691E;
  --rh-text: #262626;
  --rh-white: #FFFFFF;
  --theme-color: var(--rh-primary);
}

html, body { background:#fff; color:var(--rh-text); }
body, body p, body li, body td, body th, body label, body input, body textarea, body select { color:var(--rh-text); }
h1, h2, h3, h4, h5, h6 { color:var(--rh-dark-green); }
a { color:var(--rh-dark-green); }
a:hover, a:focus { color:var(--rh-primary); }
::selection { background:var(--rh-primary); color:#fff; }

/* Buttons: dark pink with white type, dark green on hover. */
.theme-btn,
.btn-style-one,
.elementor-button,
button[type="submit"],
input[type="submit"] {
  background-color:var(--rh-primary);
  border-color:var(--rh-primary);
  color:#fff;
}
.theme-btn:hover,
.btn-style-one:hover,
.elementor-button:hover,
button[type="submit"]:hover,
input[type="submit"]:hover {
  background-color:var(--rh-dark-green);
  border-color:var(--rh-dark-green);
  color:#fff;
}
.btn-style-one:before { background-color:var(--rh-dark-green); }

/* Header */
.main-header .header-top,
.main-header .header-top:before,
.header-style-two .header-lower { background:var(--rh-dark-green) !important; }
.main-header .header-top .top-left .links li a { color:#fff; }
.main-header .header-top .top-left .links li .icon,
.main-header .search-box .form-group button { color:var(--rh-primary); }
.main-header .header-top .top-left .links li a:hover { color:var(--rh-soft-pink); }
.main-header .main-box .outer-bg,
.main-header .main-box .outer-container,
.main-header .header-upper,
.sticky-header { background-color:#fff; }
.main-menu .navigation > li > a,
.main-header .sticky-header .main-menu .navigation > li > a,
.main-header .info-box li,
.main-header .info-box strong,
.main-header .info-box .icon-box { color:var(--rh-dark-green); }
.header-style-two .main-menu .navigation > li > a { color:#fff; }
.main-menu .navigation > li:hover > a,
.main-menu .navigation > li.current > a,
.main-menu .navigation > li.current-menu-item > a,
.main-menu .navigation > li > ul > li:hover > a,
.main-menu .navigation > li > ul > li > ul > li > a:hover,
.main-header .sticky-header .main-menu .navigation > li:hover > a,
.main-header .sticky-header .main-menu .navigation > li.current > a,
.main-header .sticky-header .main-menu .navigation > li.current-menu-item > a { color:var(--rh-primary); }
.main-menu .navigation > li > ul,
.main-menu .navigation > li > ul > li > ul { background:#fff; }
.main-header .info-box .theme-btn,
.main-header .btn-outer .theme-btn,
.main-header .header-upper .btn-style-one,
.main-header .sticky-header .btn-style-one,
.main-header .info-box .theme-btn:visited,
.main-header .btn-outer .theme-btn:visited {
  color:#fff !important;
  background:var(--rh-primary) !important;
  border-color:var(--rh-primary) !important;
}
.main-header .info-box .theme-btn:hover,
.main-header .btn-outer .theme-btn:hover {
  color:#fff !important;
  background:var(--rh-dark-green) !important;
  border-color:var(--rh-dark-green) !important;
}

/* Home hero slider: preserve the imagery but darken the text side for reliable contrast. */
.main-slider.rh-home-hero { margin-top:-47px; }
.main-slider.rh-home-hero .slider-wrapper { position:relative; overflow:hidden; }
.main-slider.rh-home-hero .slider-wrapper .image { height:837px; position:relative; }
.main-slider.rh-home-hero .slider-wrapper .image img {
  width:100%;
  height:837px;
  min-height:837px !important;
  object-fit:cover;
  object-position:center center;
}
.main-slider.rh-home-hero .slider-wrapper:after {
  content:"";
  position:absolute;
  inset:0;
  z-index:2;
  pointer-events:none;
  background:linear-gradient(90deg, rgba(20,28,18,.86) 0%, rgba(33,51,27,.72) 31%, rgba(51,105,30,.42) 52%, rgba(0,0,0,.12) 72%, rgba(0,0,0,.03) 100%);
}
.main-slider.rh-home-hero .slider-caption { z-index:5; }
.main-slider.rh-home-hero .slider-caption .container { position:relative; z-index:6; }
.main-slider.rh-home-hero .title,
.main-slider.rh-home-hero h2,
.main-slider.rh-home-hero .description {
  color:#fff !important;
  text-shadow:0 2px 14px rgba(0,0,0,.6);
}
.main-slider.rh-home-hero h2 { max-width:700px; font-weight:700; }
.main-slider.rh-home-hero h2 .theme_color { color:var(--rh-primary) !important; text-shadow:0 2px 12px rgba(0,0,0,.72); }
.main-slider.rh-home-hero .description { max-width:650px; font-weight:500; }
.main-slider.rh-home-hero .title:before { background-color:var(--rh-primary); }
.main-slider.rh-home-hero .link-btn .theme-btn-one {
  background:var(--rh-primary);
  border-color:var(--rh-primary);
  color:#fff;
  box-shadow:0 6px 20px rgba(0,0,0,.2);
}
.main-slider.rh-home-hero .link-btn .theme-btn-one:hover {
  background:var(--rh-dark-green);
  border-color:#fff;
  color:#fff;
}

/* Light sections use neutral readable copy; palette is reserved for accents/backgrounds. */
.gray-bg { background-color:var(--rh-pale-pink) !important; }
.theme-color, .theme_color { color:var(--rh-primary) !important; }
.elementor-widget-text-editor { color:var(--rh-text); }
.elementor-widget-text-editor p { color:inherit; }
.elementor-widget-icon-list .elementor-icon-list-text { color:var(--rh-text); }

/* Dark sections keep white copy. */
.elementor-element[style*="background-color: #33691E"],
.elementor-element[style*="background-color:#33691E"] { color:#fff; }

/* Elementor Relationship Healer footer */
.rh-footer,
.rh-footer > .elementor-container,
.rh-footer-bottom,
.rh-fallback-footer { background:var(--rh-dark-green) !important; }
.rh-footer { border-top:4px solid var(--rh-primary); }
.rh-footer h1, .rh-footer h2, .rh-footer h3, .rh-footer h4, .rh-footer h5, .rh-footer h6,
.rh-footer .elementor-heading-title,
.rh-footer p,
.rh-footer li,
.rh-footer a,
.rh-footer .elementor-widget-text-editor,
.rh-footer-bottom .elementor-heading-title,
.rh-fallback-footer,
.rh-fallback-footer h1, .rh-fallback-footer h2, .rh-fallback-footer h3,
.rh-fallback-footer p, .rh-fallback-footer li, .rh-fallback-footer a {
  color:#fff !important;
}
.rh-footer a:hover,
.rh-footer .footer_quick_links a:hover,
.rh-fallback-footer a:hover { color:var(--rh-soft-pink) !important; }
.rh-footer .elementor-divider-separator { border-color:var(--rh-primary) !important; }
.rh-footer-bottom { border-top:1px solid rgba(233,30,99,.55) !important; }

/* Legacy footer fallback: no Archives/Categories widgets. */
.rh-fallback-footer { padding:70px 0 0; border-top:4px solid var(--rh-primary); }
.rh-fallback-footer-grid { padding-bottom:48px; }
.rh-fallback-footer-col { margin-bottom:24px; }
.rh-fallback-footer h3 { margin-bottom:18px; }
.rh-footer-logo img { max-width:210px; height:auto; margin-bottom:18px; }
.rh-footer-menu { list-style:none; margin:0; padding:0; }
.rh-footer-menu li { margin:0 0 9px; }
.rh-fallback-footer-bottom {
  display:flex;
  justify-content:space-between;
  gap:20px;
  flex-wrap:wrap;
  padding:22px 0;
  border-top:1px solid rgba(233,30,99,.55);
  color:#fff;
}

/* Forms and commerce */
input:focus, textarea:focus, select:focus { border-color:var(--rh-primary) !important; }
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit { background-color:var(--rh-primary); color:#fff; }
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce #respond input#submit:hover { background-color:var(--rh-dark-green); color:#fff; }

/* Relationship Healer content refinements */
.rh-healing-article blockquote {
  margin:12px 0 24px;
  padding:22px 26px;
  border-left:4px solid var(--rh-primary);
  background:var(--rh-pale-pink);
  color:var(--rh-text);
  font-size:1.08em;
  line-height:1.8;
}
.rh-healing-article blockquote strong { color:var(--rh-primary); }
.rh-healing-article small { color:var(--rh-text); }
.rh-contact-callout { text-align:center; }
.main-header .btn-outer .theme-btn { white-space:nowrap; }

@media (max-width:1199px) {
  .main-slider.rh-home-hero .slider-wrapper .image,
  .main-slider.rh-home-hero .slider-wrapper .image img { height:720px; min-height:720px !important; }
}
@media (max-width:767px) {
  .main-slider.rh-home-hero { min-height:620px; margin-top:0; }
  .main-slider.rh-home-hero .slider-wrapper .image,
  .main-slider.rh-home-hero .slider-wrapper .image img { height:620px; min-height:620px !important; }
  .main-slider.rh-home-hero .slider-wrapper .image img { object-position:60% center; }
  .main-slider.rh-home-hero .slider-wrapper:after {
    background:linear-gradient(90deg, rgba(18,26,16,.9) 0%, rgba(33,51,27,.78) 65%, rgba(0,0,0,.32) 100%);
  }
  .main-slider.rh-home-hero h2 { font-size:36px; }
  .main-slider.rh-home-hero .description { font-size:17px; }
  .rh-fallback-footer-bottom { flex-direction:column; }
}
