/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme-child/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 2.0.0
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/* Add your custom styles here */


.iw-half-right { max-width: 600px; width: 100%; margin-right: auto; } /* hugs rail centre, extends right to rail edge */
.iw-half-left  { max-width: 600px; width: 100%; margin-left: auto; }  /* hugs rail centre, extends left to rail edge  */

/* Below the rail width keep content off the screen edge; collapse the
   half-rails to full width once the split sections stack. */
@media (max-width: 1179px) {
  .iw-rail { padding-left: 24px; padding-right: 24px; }
}
@media (max-width: 1024px) {
  .iw-half-left, .iw-half-right { max-width: none; margin: 0; }
}

/* === EPP Mega Menu — brand styling (scoped) === */
.iw-megamenu .bdt-navbar-nav > li > a {
  font-family: "Cabin", sans-serif; font-weight: 500; font-size: 15px;
  color: #124146; text-transform: none; letter-spacing: 0;
  padding: 8px 14px; min-height: 0;
}
.iw-megamenu .bdt-navbar-nav > li > a:hover,
.iw-megamenu .bdt-navbar-nav > li.bdt-active > a { color: #658385; }
/* hamburger toggle */
.iw-megamenu .bdt-navbar-toggle,
.iw-megamenu .bdt-navbar-toggle svg { color: #124146; fill: #124146; }
/* mobile dropdown panel (appended near the toggle) */
.iw-megamenu .bdt-nav-mobile,
.bdt-offcanvas-bar .bdt-nav { background: #124146; }
.bdt-offcanvas-bar .bdt-nav > li > a { color: #F7F3E9; font-family: "Cabin", sans-serif; }

/* ============================================================
   Ninja Forms - Integrated Wellbeing brand styling
   Scope: all Ninja Forms site-wide (.nf-form-cont)
   ============================================================ */

/* base */
.nf-form-cont { font-family: "Cabin", sans-serif; color: #2F2D2C; }

/* hide the form's internal "Contact Me" title (the page provides its own
   heading) and soften the required-fields note */
.nf-form-cont .nf-form-title { display: none; }
.nf-form-cont .nf-form-fields-required {
  font-size: 13px; color: #658385; margin: 0 0 18px;
}
.nf-form-cont .ninja-forms-req-symbol { color: #658385; }

/* labels */
.nf-form-cont .nf-field-label label {
  font-family: "Cabin", sans-serif; font-weight: 600; font-size: 14px;
  letter-spacing: .4px; color: #124146; margin-bottom: 6px;
}

/* field spacing */
.nf-form-cont .nf-field-container { margin-bottom: 22px; }

/* text inputs, email, phone, textarea, select */
.nf-form-cont .ninja-forms-field:not([type="button"]):not([type="submit"]) {
  background: #FDFCF9;
  border: 1px solid #B1C4C4;
  border-radius: 6px;
  padding: 12px 14px;
  font-family: "Cabin", sans-serif;
  font-size: 15px;
  color: #2F2D2C;
  width: 100%;
  box-sizing: border-box;
  transition: border-color .2s ease, box-shadow .2s ease;
}
.nf-form-cont textarea.ninja-forms-field { min-height: 150px; resize: vertical; }
.nf-form-cont .ninja-forms-field:not([type="button"]):not([type="submit"]):focus {
  border-color: #658385;
  box-shadow: 0 0 0 3px rgba(101, 131, 133, .18);
  outline: none;
}
.nf-form-cont ::placeholder { color: #9AA5A3; opacity: 1; }

/* submit button - matches the site's Elementor buttons */
.nf-form-cont input[type="submit"].ninja-forms-field,
.nf-form-cont input[type="button"].ninja-forms-field {
  background: #124146;
  color: #F7F3E9;
  font-family: "Cabin", sans-serif;
  font-weight: 600;
  font-size: 13px;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  border: 0;
  border-radius: 0;
  padding: 15px 32px;
  width: auto;
  cursor: pointer;
  transition: background-color .2s ease;
}
.nf-form-cont input[type="submit"].ninja-forms-field:hover,
.nf-form-cont input[type="button"].ninja-forms-field:hover {
  background: #658385;
}

/* validation errors - muted terracotta so it stays calm on-brand */
.nf-form-cont .nf-error .ninja-forms-field { border-color: #A54A44; }
.nf-form-cont .nf-error-msg,
.nf-form-cont .nf-error-required-error {
  color: #A54A44; font-size: 13px; margin-top: 4px;
}

/* success / response message */
.nf-form-cont .nf-response-msg {
  font-family: "Cabin", sans-serif;
  color: #124146;
  background: #F7F3E9;
  border-left: 3px solid #B1B79B;
  padding: 16px 20px;
  border-radius: 6px;
}
.nf-form-cont .nf-response-msg p { margin: 0; }

/* Mega menu: hide desktop nav on mobile / hide hamburger on desktop */
@media (min-width:1025px){
  .bdt-mega-menu-hamburger-tablet .megamenu-header-default,
  .bdt-mega-menu-hamburger-m .megamenu-header-default{ display:flex !important; }
  .bdt-mega-menu-hamburger-tablet .megamenu-header-mobile,
  .bdt-mega-menu-hamburger-m .megamenu-header-mobile{ display:none !important; }
}
@media (max-width:1024px){
  .bdt-mega-menu-hamburger-tablet .megamenu-header-default,
  .bdt-mega-menu-hamburger-m .megamenu-header-default{ display:none !important; }
  .bdt-mega-menu-hamburger-tablet .megamenu-header-mobile,
  .bdt-mega-menu-hamburger-m .megamenu-header-mobile{ display:flex !important; justify-content:flex-end; }
}
