/* ---------- Footer housekeeping ---------- */
.site-info a[href*="generatepress.com"]{display:none !important;}
.site-info{display:block;text-align:center;width:100%;}
.footer-bar{display:flex;justify-content:center !important;text-align:center;}

/* ---------- Page / hero tweaks ---------- */
.entry-title{display:none !important;}

.full-bleed-hero{
  position:relative;width:100vw !important;left:50% !important;margin-left:-50vw !important;
  max-width:100vw !important;padding:4rem 1rem !important;box-sizing:border-box !important;
  background:#F7F6F3;color:#2F3B35;
}
.full-bleed-hero .mortii-reg-container{
  width:90vw !important;max-width:none !important;margin:0 auto !important;
  padding:2rem !important;box-sizing:border-box !important;
}

/* ---------- Registration (global mobile tweaks) ---------- */
@media (max-width:768px){
  .mortii-reg-container{
    width:100% !important;max-width:none !important;margin:1rem 0 !important;
    padding:1rem !important;border-radius:8px !important;background:#FFFFFF;
    box-shadow:0 4px 14px rgba(0,0,0,.06);
  }
  .mortii-toggle{flex-direction:column !important;}
  .mortii-toggle label{width:100% !important;margin-bottom:.5rem !important;font-size:1rem !important;padding:.75rem !important;}
  .mortii-toggle label:last-child{margin-bottom:1rem !important;}
  .mortii-reg-field input,.mortii-submit{font-size:1rem !important;padding:.75rem !important;}
  .mortii-signin{margin-bottom:1rem !important;font-size:.9rem !important;color:#7D8672;}
  .mortii-reg-container h2{margin-bottom:1rem !important;font-size:1.25rem !important;color:#2F3B35;}
  .mortii-reg-field label{font-size:.95rem !important;color:#2F3B35;}
}

/* Registration focus — align with branding */
.mortii-reg-field input:focus{
  background:#FFFFFF !important;
  border-color:#007A5E !important;
  outline:none !important;
  box-shadow:0 0 0 3px rgba(0,122,94,.15) !important;
}

/* Realtor view background (matches login modal) */
.mortii-reg-container.realtor{ background:#EEF3F0; }

/* Show/Hide password control (works with injected JS button) */
.mortii-password-wrapper{ position:relative; }
.mortii-password-toggle{
  position:absolute; right:.6rem; top:50%; transform:translateY(-50%);
  background:none; border:0; padding:.25rem .35rem; cursor:pointer;
  color:#007A5E; font-weight:700; font-family:'Poppins',sans-serif;
}
.mortii-password-toggle:focus-visible{ outline:2px solid rgba(0,122,94,.35); border-radius:6px; }

/* Inline error text + invalid state (used by JS) */
.mortii-field-error{ color:#C0392B; font-size:.85rem; margin:.35rem 0 0; }
.mortii-reg-field input.is-invalid{
  border-color:#C0392B !important;
  box-shadow:0 0 0 3px rgba(192,57,43,.10) !important;
}

/* ---------- WordPress login page ---------- */
body.login{background:#F7F6F3 url('/wp-content/uploads/linen.png') repeat;}
body.login #login{
  padding:2rem;background:#FFFFFF;border:1px solid #BFC9C2;border-radius:12px;
  box-shadow:0 4px 14px rgba(0,0,0,.06);
}
body.login #login h1 a{background-image:url('/wp-content/uploads/logo.svg');}

/* ---------- Broker / Realtor login cards (frontend) ---------- */
.mortii-broker-login-form,
.mortii-realtor-login-form,
form.mortii-broker-login-form{
  max-width:380px;width:100%;margin:2rem auto;padding:2.5rem;background:#FFFFFF;
  border:1px solid #BFC9C2;border-radius:12px;box-shadow:0 4px 14px rgba(0,0,0,.06);
  font-family:'Lato',sans-serif;box-sizing:border-box;position:relative;
  transition:transform .2s ease, box-shadow .2s ease;
}
@media (min-width:769px){
  .mortii-broker-login-form,.mortii-realtor-login-form,form.mortii-broker-login-form{max-width:440px !important;}
}
.mortii-broker-login-form:hover,.mortii-realtor-login-form:hover{transform:translateY(-4px);box-shadow:0 8px 24px rgba(0,0,0,.15);}

.mortii-login-header{
  font-family:'Poppins',sans-serif !important;color:#2F3B35 !important;
  font-size:1.75rem !important;font-weight:700 !important;text-align:left !important;margin-bottom:1rem !important;
}
.mortii-broker-login-form p,.mortii-realtor-login-form p,
.mortii-broker-login-form label,.mortii-realtor-login-form label{
  color:#2F3B35 !important;font-size:1.05rem !important;margin-bottom:.75rem !important;
}
.mortii-broker-login-form p,.mortii-realtor-login-form p{font-weight:400 !important;}

.mortii-broker-login-form input[type=text],
.mortii-realtor-login-form input[type=text],
.mortii-broker-login-form input[type=password],
.mortii-realtor-login-form input[type=password]{
  width:100% !important;padding:.55rem .75rem !important;border:1px solid #7D8672 !important;
  background:#F7F6F3 !important;color:#2F3B35 !important;border-radius:4px !important;
}
.mortii-broker-login-form input:focus,.mortii-realtor-login-form input:focus{
  background:#FFFFFF !important;border-color:#007A5E !important;outline:none !important;
}

/* Checkbox accent */
.mortii-broker-login-form input[type=checkbox],
.mortii-realtor-login-form input[type=checkbox]{accent-color:#C6A15B;width:1.1rem;height:1.1rem;cursor:pointer;margin-right:.5rem;vertical-align:middle;}

/* Submit buttons */
.mortii-broker-login-form input[type=submit],
.mortii-realtor-login-form input[type=submit]{
  width:100% !important;padding:.75rem !important;background:#007A5E !important;color:#FFFFFF !important;
  border:none !important;border-radius:8px !important;font-family:'Poppins',sans-serif !important;font-size:1rem !important;cursor:pointer !important;
  transition:background .18s ease, transform .18s ease, box-shadow .18s ease;
}
.mortii-broker-login-form input[type=submit]:hover,
.mortii-realtor-login-form input[type=submit]:hover{
  background:#C6A15B !important;color:#FFFFFF !important;transform:translateY(-6px) scale(1.04);box-shadow:0 6px 16px rgba(0,0,0,.12) !important;
}

.mortii-ssl{display:block !important;text-align:center !important;font-size:.75rem !important;color:#7D8672 !important;margin-top:1rem !important;}
.mortii-login-error{color:#C0392B !important;text-align:left !important;margin-bottom:1rem !important;}
.mortii-login-wrapper{min-height:calc(100vh - 240px) !important;padding:0 !important;display:flex !important;align-items:center !important;justify-content:center !important;}

/* ---------- Testimonials simple reveal ---------- */
.reveal-testimonial{opacity:0;transition:opacity .2s ease-in;}
.reveal-testimonial.visible{opacity:1;}

/* ---------- Pricing cards ---------- */
.pricing-card{display:flex !important;}
.elementor-column.pricing-card{display:flex !important;}

.pricing-card .hfe-infocard{
  display:flex !important;flex-direction:column;background:#FFFFFF;border:1px solid #BFC9C2 !important;
  padding:2rem;border-radius:8px;transition:transform .2s ease, box-shadow .2s ease;min-height:40rem !important;
  position:relative;overflow:hidden;color:#2F3B35;
}
.pricing-card .hfe-infocard:hover{transform:translateY(-4px);box-shadow:0 6px 12px rgba(0,0,0,.08);}
.pricing-card.featured-card .hfe-infocard{background:#8DAA91 !important;color:#2F3B35 !important;border:none !important;box-shadow:0 8px 16px rgba(0,0,0,.10) !important;}
.pricing-card.featured-card .hfe-infocard:hover{transform:translateY(-6px) !important;box-shadow:0 12px 24px rgba(0,0,0,0.12) !important;}

.pricing-card .hfe-infocard .hfe-icon-wrap{margin-bottom:1.25rem !important;transition:transform .2s ease-in-out;}
.pricing-card .hfe-infocard:hover .hfe-icon-wrap{transform:scale(1.1);}
.pricing-card .hfe-infocard-title-wrap{color:#007A5E;font-size:1.5rem;margin-bottom:.5rem;}
.pricing-card .hfe-infocard-text-wrap{flex:1 1 auto !important;}
.pricing-card .hfe-infocard-text-wrap p:first-of-type{margin-bottom:1.5rem;color:#7D8672;}
.pricing-card .hfe-infocard-text-wrap p:not(:first-of-type){
  position:relative;padding-left:1.5em;margin-bottom:.75em;color:#2F3B35;text-align:left !important;
}
.pricing-card .hfe-infocard-text-wrap p:not(:first-of-type)::before{content:"✔";position:absolute;left:0;top:0;color:#C6A15B;font-size:1em;line-height:1;}
.pricing-card .hfe-button-wrapper{margin-top:3rem !important;}
.pricing-card .hfe-button-wrapper .elementor-button-link{
  background:#007A5E !important;color:#F7F6F3 !important;padding:.75rem 1.5rem !important;font-size:1.1rem !important;border-radius:8px !important;
  transition:background .2s ease, transform .2s ease;
}
.pricing-card .hfe-button-wrapper .elementor-button-link:hover{background:#C6A15B !important;color:#FFFFFF !important;transform:translateY(-2px) !important;}

/* One-time shimmer */
@keyframes mortii-shimmer{from{transform:translateX(-100%) translateY(-100%) rotate(25deg);}to{transform:translateX(100%) translateY(100%) rotate(25deg);}}
.pricing-card .hfe-infocard::before{
  content:"";position:absolute;top:-50%;left:-75%;width:200%;height:200%;
  background:linear-gradient(60deg, rgba(255,255,255,0) 0%, rgba(255,255,255,.25) 50%, rgba(255,255,255,0) 100%);
  transform:translateX(-100%) translateY(-100%) rotate(25deg);pointer-events:none;
}

/* ==== Brand tokens (optional but handy) ==== */
:root{
  --brand-primary:   #007A5E;
  --brand-secondary: #8DAA91;
  --brand-accent:    #C6A15B;
  --brand-support:   #BFC9C2;
  --brand-bg:        #F7F6F3;
  --text-primary:    #2F3B35;
  --text-secondary:  #7D8672;
}

/* ==== Section heading / intro text on pricing pages ==== */
.pricing-card .hfe-infocard-title-wrap,
.pricing-card .hfe-infocard .hfe-heading,
.pricing-card .hfe-infocard h3,
.pricing-card .hfe-infocard h4{ color: var(--text-primary) !important; }
.pricing-card .hfe-infocard p{ color: var(--text-secondary); }

/* ==== Base card (white) ==== */
.pricing-card .hfe-infocard{
  background:#FFFFFF;
  border:1px solid var(--brand-support) !important;
  color: var(--text-primary);
  box-shadow:0 4px 12px rgba(0,0,0,.05);
}
.pricing-card .hfe-infocard:hover{ box-shadow:0 10px 24px rgba(0,0,0,.10); }

/* Optional: thin brand bar at top */
.pricing-card .hfe-infocard::after{
  content:""; position:absolute; left:0; top:0; right:0; height:4px;
  background: var(--brand-primary); opacity:.85;
}
.pricing-card.featured-card .hfe-infocard::after{ background: var(--brand-accent); }

/* ==== Featured card (sage) ==== */
.pricing-card.featured-card .hfe-infocard{
  background: var(--brand-secondary) !important;
  color: var(--text-primary) !important;
  border: none !important;
  box-shadow: 0 12px 28px rgba(0,0,0,.14);
}
.pricing-card.featured-card .hfe-infocard .hfe-infocard-title-wrap,
.pricing-card.featured-card .hfe-infocard p{ color: var(--text-primary) !important; }

/* ==== Checkmarks ==== */
.pricing-card .hfe-infocard-text-wrap p:not(:first-of-type){ color: var(--text-primary); }
.pricing-card .hfe-infocard-text-wrap p:not(:first-of-type)::before{
  content:"✔"; position:absolute; left:0; top:0; color: var(--brand-accent);
}

/* ==== Buttons ==== */
.pricing-card .hfe-button-wrapper .elementor-button-link{
  background: var(--brand-primary) !important; color:#FFFFFF !important;
  border-radius:8px !important; padding:.75rem 1.25rem !important;
  transition: background .2s ease, transform .2s ease, box-shadow .2s ease;
}
.pricing-card .hfe-button-wrapper .elementor-button-link:hover{
  background: var(--brand-accent) !important; color:#FFFFFF !important;
  transform: translateY(-2px) !important; box-shadow:0 8px 18px rgba(0,0,0,.12);
}

/* Keep icon wrappers transparent on hover/focus */
.pricing-card .hfe-infocard .hfe-icon-wrap,
.pricing-card .hfe-infocard:hover .hfe-icon-wrap,
.pricing-card .hfe-infocard:focus-within .hfe-icon-wrap,
.pricing-card .hfe-infocard:active .hfe-icon-wrap{
  background: transparent !important;
  box-shadow: none !important;
  border-color: transparent !important;
}
.pricing-card .hfe-infocard .hfe-icon-wrap i,
.pricing-card .hfe-infocard .hfe-icon-wrap svg{ color:#007A5E !important; }
.pricing-card .hfe-infocard:hover .hfe-icon-wrap i,
.pricing-card .hfe-infocard:hover .hfe-icon-wrap svg{ color:#007A5E !important; }
.pricing-card.featured-card .hfe-infocard .hfe-icon-wrap i,
.pricing-card.featured-card .hfe-infocard .hfe-icon-wrap svg,
.pricing-card.featured-card .hfe-infocard:hover .hfe-icon-wrap i,
.pricing-card.featured-card .hfe-infocard:hover .hfe-icon-wrap svg{ color:#FFFFFF !important; }

/* Force the middle/featured top rail to Primary */
.pricing-card.featured-card .hfe-infocard::after{ background:#007A5E !important; }

/* ---------- Login modal ---------- */
.mortii-close{
  position:absolute;top:10px;right:12px;width:36px;height:36px;border:none !important;background:transparent !important;
  color:#2F3B35 !important;font-size:26px;line-height:1;cursor:pointer;border-radius:8px;box-shadow:none !important;
  transition:transform .25s cubic-bezier(.34,1.56,.64,1);
}
.mortii-close:hover,.mortii-close:focus-visible{transform:scale(1.1);background:transparent !important;color:#2F3B35 !important;outline:none;}
.mortii-close:active{transform:scale(.95);transition:transform .2s cubic-bezier(.34,1.56,.64,1);}
@media (prefers-reduced-motion:reduce){.mortii-close,.mortii-close:hover,.mortii-close:focus-visible,.mortii-close:active{transition:none;transform:none;}}

#mortii-login-overlay .mortii-modal{max-width:460px !important;background:#FFFFFF;border:1px solid #BFC9C2;}
#mortii-login-overlay .mortii-btn{
  width:100%;background:#007A5E !important;color:#FFFFFF !important;border:none;padding:.75rem 1rem;border-radius:.5rem;
  font-weight:600;cursor:pointer;transition:background .18s ease, transform .18s ease, box-shadow .18s ease;
}
#mortii-login-overlay .mortii-btn:hover,
#mortii-login-overlay .mortii-btn:focus-visible{background:#C6A15B !important;color:#FFFFFF !important;box-shadow:0 4px 12px rgba(0,0,0,.12) !important;transform:translateY(-2px);}
#mortii-login-overlay .mortii-remember{display:flex;align-items:center;gap:.5rem;font-size:.9rem;color:#2F3B35;margin:.75rem 0 1rem;}
#mortii-login-overlay .mortii-remember input{width:1.1rem;height:1.1rem;accent-color:#C6A15B;}
#mortii-login-overlay .mortii-ssl-note{text-align:center;font-size:.85rem;color:#7D8672;margin-top:.75rem;}
#mortii-login-overlay .mortii-toggle .mortii-tab{
  background:#EEF3F0 !important;color:#2F3B35 !important;border:1px solid #BFC9C2 !important;
  padding:.75rem 1.25rem !important;border-radius:10px !important;font-weight:700 !important;
  transition:background .2s ease, color .2s ease, border-color .2s ease, transform .15s ease !important;
}
#mortii-login-overlay .mortii-toggle .mortii-tab.active{ background:#007A5E !important;color:#FFFFFF !important;border-color:#007A5E !important; }
#mortii-login-overlay .mortii-toggle .mortii-tab:not(.active):hover{ background:#8DAA91 !important;color:#FFFFFF !important;border-color:#8DAA91 !important; }
#mortii-login-overlay .mortii-toggle{gap:.5rem;}

/* ---------- Sitewide buttons / CTAs ---------- */
#header-login-btn a{
  background:#C6A15B !important;color:#FFFFFF !important;
  border:2px solid #C6A15B !important;border-radius:8px;transition:all .2s ease;
  padding:.55rem .95rem;min-height:44px;
}
#header-login-btn a:hover,#header-login-btn a:focus-visible{
  background:#FFFFFF !important;color:#007A5E !important;border-color:#007A5E !important;
  box-shadow:0 4px 8px rgba(0,0,0,.12);transform:translateY(-2px);
}

.hero-section .elementor-button,
.hero-section .elementor-button.elementor-button-link{
  background:#007A5E !important;color:#FFFFFF !important;border:2px solid #007A5E !important;border-radius:8px;transition:all .2s ease;
}
.hero-section .elementor-button:hover,
.hero-section .elementor-button:focus-visible,
.hero-section .elementor-button.elementor-button-link:hover,
.hero-section .elementor-button.elementor-button-link:focus-visible{
  background:#C6A15B !important;color:#FFFFFF !important;border-color:#C6A15B !important;
  box-shadow:0 4px 8px rgba(0,0,0,.12) !important;transform:translateY(-2px);
}

#secondary-cta-btn a{
  background:#FFFFFF !important;color:#007A5E !important;border:2px solid #FFFFFF !important;border-radius:8px;
  padding:.75rem 1.5rem;font-weight:600;transition:all .2s ease;
}
#secondary-cta-btn a:hover,#secondary-cta-btn a:focus-visible{
  background:#007A5E !important;color:#FFFFFF !important;border:2px solid #FFFFFF !important;
  transform:translateY(-2px);box-shadow:0 4px 10px rgba(0,0,0,.1);
}

/* ---------- Testimonials area ---------- */
.testimonials-section,
.testimonials-section.elementor-section,
.testimonials-section.e-con,
.testimonials-section > .elementor-container,
.testimonials-section > .elementor-container > .elementor-column > .elementor-widget-wrap,
.testimonials-section > .e-con-inner,
.testimonials-section .e-con-inner{background-color:#EEF3F0 !important;}
.testimonials-section > .elementor-background-overlay{background:transparent !important;}
.testimonials-section{padding:4rem 2rem !important;border-top:1px solid #BFC9C2;border-bottom:1px solid #BFC9C2;}
.testimonials-section,
.testimonials-section p,
.testimonials-section h2,
.testimonials-section .elementor-heading-title,
.testimonials-section blockquote,
.testimonials-section cite{color:#2F3B35 !important;}

/* ---------- Homepage header alignment (UAEL) ---------- */
@media (max-width: 767px){
  .home-headerbar{
    display:flex !important;align-items:center;justify-content:space-between;
    gap:12px;width:100%;
  }
  .home-headerbar > .elementor-column,
  .home-headerbar > .e-con{flex:0 0 auto !important;width:auto !important;}
  .home-headerbar .home-nav{margin-left:auto !important;}
  .home-headerbar .uael-nav-menu .uael-menu-toggle__line,
  .home-headerbar .uael-hamburger-menu span,
  .home-headerbar .menu-toggle .uael-hamburger span{background:#FFFFFF !important;}
  .home-headerbar{
    flex-wrap:nowrap !important; align-items:center !important; justify-content:space-between !important;
    min-height:56px;
  }
  .home-headerbar > .elementor-column,
  .home-headerbar > .e-con,
  .home-headerbar > .elementor-widget{
    --container-widget-width:auto; --container-widget-flex-grow:0;
    flex:0 0 auto !important; width:auto !important; max-width:none !important; margin:0 !important;
  }
  .home-headerbar img{ height:36px; width:auto; }
  .home-headerbar .elementor-widget-uael-nav-menu{ margin-left:auto !important; }
  .home-headerbar .uael-menu-toggle,
  .home-headerbar .uael-hamburger-menu,
  .home-headerbar .menu-toggle{
    display:flex !important; align-items:center; justify-content:center;
    width:44px; height:44px; color:#fff; cursor:pointer;
  }
}
#header-login-btn a {
  display:flex;
  align-items:center;
  justify-content:center;
  padding:0 1.25rem; /* horizontal only */
  height:44px;
	width:120px;   
}
/* === Mortii registration overrides (keep at the end) === */

/* Ensure Realtor background always wins */
.mortii-reg-container.realtor{
  background:#EEF3F0 !important;
}

/* Show/Hide password control */
.mortii-password-wrapper{ position:relative; }
.mortii-password-toggle{
  position:absolute; right:.6rem; top:50%; transform:translateY(-50%);
  background:none; border:0; padding:.25rem .35rem; cursor:pointer;
  color:#007A5E; font-weight:700; font-family:'Poppins',sans-serif;
}
.mortii-password-toggle:focus-visible{
  outline:2px solid rgba(0,122,94,.35); border-radius:6px;
}

/* Inline error state used by the JS */
.mortii-field-error{ color:#C0392B; font-size:.85rem; margin:.35rem 0 0; }
.mortii-reg-field input.is-invalid{
  border-color:#C0392B !important;
  box-shadow:0 0 0 3px rgba(192,57,43,.10) !important;
}
/* Shimmer: run once on hover/focus */
.pricing-card .hfe-infocard:hover::before,
.pricing-card .hfe-infocard:focus-within::before{
  animation: mortii-shimmer 1100ms linear 1;
  z-index: 2;                /* ensure it's above card content */
  opacity: .9;               /* visible but not blinding */
}

/* If you want a subtle idle shimmer on the featured card too */
.pricing-card.featured-card .hfe-infocard::before{
  z-index: 2;
}

/* Respect reduced motion */
@media (prefers-reduced-motion: reduce){
  .pricing-card .hfe-infocard:hover::before,
  .pricing-card .hfe-infocard:focus-within::before{
    animation: none;
  }
}
/* Slightly stronger highlight for colored backgrounds */
.pricing-card.featured-card .hfe-infocard::before{
  background: linear-gradient(60deg,
    rgba(255,255,255,0) 0%,
    rgba(255,255,255,.35) 50%,
    rgba(255,255,255,0) 100%);
}
/* Gold shimmer on white pricing cards */
.pricing-card:not(.featured-card) .hfe-infocard::before {
  background: linear-gradient(
    60deg,
    rgba(198,161,91,0) 0%,
    rgba(198,161,91,0.4) 50%,
    rgba(198,161,91,0) 100%
  );
}
/* Faster, crisper shimmer: X-only path, GPU hint */
@keyframes mortii-shimmer {
  from { transform: translateX(-120%) rotate(25deg); }
  to   { transform: translateX(120%)  rotate(25deg); }
}

/* Base stripe sizing/position (smaller target to reduce travel distance) */
.pricing-card .hfe-infocard::before{
  top:-60%; left:-60%; width:180%; height:220%;
  backface-visibility: hidden;
  will-change: transform;           /* performance hint */
}

/* Run once on hover/focus, quicker timing */
.pricing-card .hfe-infocard:hover::before,
.pricing-card .hfe-infocard:focus-within::before{
  animation: mortii-shimmer 650ms cubic-bezier(.2,.7,.2,1) 1;
  z-index: 2;
  opacity: .95;
}

/* Keep featured card shimmer white (no color change) */
.pricing-card.featured-card .hfe-infocard::before{
  background: linear-gradient(
    60deg,
    rgba(255,255,255,0) 0%,
    rgba(255,255,255,.45) 50%,
    rgba(255,255,255,0) 100%
  );
}

/* Softer gold shimmer on white cards */
.pricing-card:not(.featured-card) .hfe-infocard::before {
  background: linear-gradient(
    60deg,
    rgba(198,161,91,0) 0%,
    rgba(198,161,91,0.25) 50%,
    rgba(198,161,91,0) 100%
  );
}


/* Respect reduced motion */
@media (prefers-reduced-motion: reduce){
  .pricing-card .hfe-infocard:hover::before,
  .pricing-card .hfe-infocard:focus-within::before{ animation: none; }/* Additional CSS */
.hash-arrival .animated {
  animation: none !important;
  transition: none !important;
  opacity: 1 !important;
  transform: none !important;
}
[id]{ scroll-margin-top:96px; }  /* match HEADER_OFFSET */
html{ scroll-behavior:smooth; }
/* ==== Global: tighten space under UAE/Elementor header ==== */
/* Tweak this one number to taste */
:root { --uae-header-gap: 10px; }  /* try 6–16px */

/* Remove extra bottom margin on common header wrappers */
:where(.elementor-location-header, .uael-header, .site-header){
  margin-bottom: var(--uae-header-gap) !important;
}

/* Trim top padding/margin on the first content container after the header */
:where(.elementor-location-header, .uael-header, .site-header)
  + :where(.site-content, main, #content, .content-area, .elementor){
  padding-top: var(--uae-header-gap) !important;
  margin-top: 0 !important;
}

/* Elementor page: first section after the header */
.elementor-location-header + .elementor > .elementor-section:first-of-type,
.elementor-location-header + .elementor > .elementor-section-wrap > .elementor-section:first-of-type{
  margin-top: 0 !important;
  padding-top: var(--uae-header-gap) !important;
}

/* Astra (very common with UAEL): reduce top padding */
.ast-page-builder-template .site-content,
.ast-separate-container .site-content{
  padding-top: var(--uae-header-gap) !important;
}

/* Safety: don’t crush spacing on admin bar pages */
body.admin-bar :where(.elementor-location-header, .uael-header, .site-header){
  margin-bottom: max(var(--uae-header-gap), 6px) !important;
}
/* Global form control look & feel (site-wide) */
:root{
  --m-green: #007A5E;
  --m-green-ring: rgba(0,122,94,.16);
  --m-border: #cbbfb2;
  --m-radius: 10px;
  --m-text: #2F3B35;
  --m-placeholder: #8C9488;
}

/* Inputs, textareas, selects */
input[type="text"],
input[type="email"],
input[type="tel"],
input[type="url"],
input[type="search"],
input[type="number"],
input[type="password"],
textarea,
select{
  width:100%;
  padding:.65rem .75rem;
  border:1px solid var(--m-border);
  border-radius: var(--m-radius);
  background:#fff;
  color:var(--m-text);
  transition:border-color .15s ease, box-shadow .15s ease;
  outline: none;
  box-shadow: none;
}

/* Green focus outline like your modal */
input:focus,
textarea:focus,
select:focus{
  border-color: var(--m-green); !important;
  box-shadow: 0 0 0 3px var(--m-green-ring); !important;
}

/* Labels match modal typography */
label{
  font-family:"Poppins", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
  font-weight:600;
  color:var(--m-text);
  margin-bottom:.28rem;
  display:block;
}

/* Smaller, softer placeholder */
::placeholder{
  color:var(--m-placeholder);
  font-size:.95rem;
  opacity:1;
}

/* (Optional) remove native focus outline on buttons/links if your theme double-styles it */
button:focus,
a.button:focus{
  outline: none;
  box-shadow: none;
}

/* Keep selects tidy without the SVG arrow */
select{
  -webkit-appearance:none;
  -moz-appearance:none;
  appearance:none;
  padding-right:2rem; /* space for native arrow */
}
/* === Mortii Standardized Page Titles === */
.mortii-page-title {
  font-family: 'Poppins', sans-serif;
  font-size: 2rem;          /* consistent size */
  font-weight: 700;         /* bold */
  color: #2F3B35;           /* Mortii deep grey */
  
  margin: 0 0 20px;         /* space below */
  padding-bottom: 12px;     /* breathing room above divider */
  border-bottom: 1px solid #E6E4DE; /* subtle full-width divider */
  
  line-height: 1.3;
}
/* Keep the first header, hide any immediate duplicate right after it */
:where(.elementor-location-header, .site-header) + .elementor-location-header {
  display: none !important;
}
/* ===== Join Mortii header — mobile tidy ===== */
/* Scope first to an optional class you add on the header section */
@media (max-width: 767px){
  .join-headerbar,
  .elementor-location-header { /* fallback scope if class not added */
    /* keep everything in one line */
  }

  /* 1) Make the header a single, tight row */
  .join-headerbar,
  .elementor-location-header .elementor-section:first-of-type,
  .elementor-location-header .e-con:first-of-type,
  .elementor-location-header .elementor-container:first-of-type{
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    gap:12px !important;
    min-height:56px; /* comfy tap area */
  }

  /* 2) Logo sizing */
  .join-headerbar img,
  .elementor-location-header .elementor-widget-image img{
    height:36px !important;
    width:auto !important;
    max-width:unset !important; /* avoid squish */
  }

  /* 3) Push the menu toggle to the right */
  .join-headerbar .elementor-widget-uael-nav-menu,
  .elementor-location-header .elementor-widget-uael-nav-menu{
    margin-left:auto !important;
  }

  /* 4) Hamburger button: size & visibility */
  .join-headerbar .uael-menu-toggle,
  .join-headerbar .uael-hamburger-menu,
  .join-headerbar .menu-toggle,
  .elementor-location-header .uael-menu-toggle,
  .elementor-location-header .uael-hamburger-menu,
  .elementor-location-header .menu-toggle{
    display:flex !important;
    align-items:center; justify-content:center;
    width:44px; height:44px; /* thumb-friendly */
    cursor:pointer;
  }
  /* Make the hamburger lines white (your brand header is green) */
  .join-headerbar .uael-menu-toggle__line,
  .join-headerbar .uael-hamburger-menu span,
  .elementor-location-header .uael-menu-toggle__line,
  .elementor-location-header .uael-hamburger-menu span{
    background:#FFFFFF !important;
  }

  /* 5) Hide horizontal links on mobile (use off-canvas) */
  .join-headerbar .uael-nav-menu__layout-horizontal,
  .elementor-location-header .uael-nav-menu__layout-horizontal{
    display:none !important;
  }

  /* 6) Off-canvas panel: scrollable & full-height feel */
  .join-headerbar .uael-nav-menu__container,
  .elementor-location-header .uael-nav-menu__container{
    max-height:calc(100vh - 64px);
    overflow:auto;
    -webkit-overflow-scrolling:touch;
  }
}

/* If your header is sticky, keep it below the WP admin bar on phones */
@media (max-width: 782px){
  body.admin-bar .elementor-location-header{
    top:46px !important;
  }
}
/* === Mobile: put UAEL hamburger at TOP-LEFT === */
@media (max-width: 767px){

  /* Make header a positioned container to anchor the toggle */
  .join-headerbar,
  .elementor-location-header{ position: relative !important; min-height:56px; }

  /* Move the UAEL nav widget to the front of the flow (just in case) */
  .join-headerbar .elementor-widget-uael-nav-menu,
  .elementor-location-header .elementor-widget-uael-nav-menu{
    order:-1 !important;
    margin:0 !important;
  }

  /* Absolutely position the hamburger in the top-left */
  .join-headerbar .uael-menu-toggle,
  .join-headerbar .uael-hamburger-menu,
  .elementor-location-header .uael-menu-toggle,
  .elementor-location-header .uael-hamburger-menu{
    position:absolute !important;
    top:8px !important;
    left:8px !important;
    width:44px !important;
    height:44px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    z-index:5 !important; /* above logo */
  }

  /* Make sure the lines are visible on your green header */
  .join-headerbar .uael-menu-toggle__line,
  .join-headerbar .uael-hamburger-menu span,
  .elementor-location-header .uael-menu-toggle__line,
  .elementor-location-header .uael-hamburger-menu span{
    background:#FFFFFF !important;
  }

  /* Add left padding so content (logo/title) doesn’t sit under the toggle */
  .join-headerbar .elementor-container,
  .join-headerbar .e-con-inner,
  .elementor-location-header .elementor-container,
  .elementor-location-header .e-con-inner{
    padding-left:56px !important; /* 44px button + 12px gap */
  }

  /* Prevent any theme styles that were pushing it to the bottom */
  .join-headerbar .uael-menu-toggle,
  .elementor-location-header .uael-menu-toggle{
    align-self:auto !important; /* cancel bottom/center aligns */
    bottom:auto !important;
    transform:none !important;
  }
}
	/* === Mortii: force UAEL hamburger TOP-LEFT in the #home-header === */
@media (max-width: 767px){
  /* Anchor for absolute positioning */
  #home-header{ position:relative !important; min-height:56px; }

  /* Override UAEL's floating/bottom styles */
  #home-header .uael-nav-menu .uael-hamburger-menu-wrap,
  #home-header .uael-nav-menu .uael-flyout-menu-btn,
  #home-header .uael-nav-menu .uael-menu-toggle,
  #home-header .uael-nav-menu .uael-hamburger-menu,
  #home-header .uael-nav-menu .uael-nav-menu__toggle{
    position:absolute !important;
    top:8px !important;
    left:8px !important;
    right:auto !important;
    bottom:auto !important;
    transform:none !important;
    margin:0 !important;
    width:44px !important;
    height:44px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    z-index:10 !important; /* above logo */
  }

  /* Make the lines visible on green header */
  #home-header .uael-menu-toggle__line,
  #home-header .uael-hamburger-menu span{ background:#FFFFFF !important; }

  /* Keep header content from sitting under the button */
  #home-header .elementor-container,
  #home-header .e-con-inner{ padding-left:56px !important; }

  /* If UAEL adds its “floating” helper class, neutralize it */
  #home-header .uael-nav-menu .uael-flyout-menu-btn,
  #home-header .uael-nav-menu .uael-hamburger-menu-wrap{ bottom:auto !important; }
}
/* === UAEL hamburger: FORCE TOP-LEFT on mobile, override floating === */
@media (max-width: 767px){
  /* Place the toggle itself */
  .uael-nav-menu__toggle--floating,
  .uael-nav-menu .uael-flyout-menu-btn,
  .uael-nav-menu .uael-hamburger-menu-wrap,
  .uael-nav-menu .uael-menu-toggle,
  .uael-nav-menu .uael-hamburger-menu{
    position: fixed !important;
    top: 8px !important;
    left: 8px !important;
    right: auto !important;
    bottom: auto !important;
    transform: none !important;
    margin: 0 !important;
    width: 44px !important;
    height: 44px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    z-index: 9999 !important;
  }

  /* Make the three lines visible on your green header */
  .uael-menu-toggle__line,
  .uael-hamburger-menu span{ background:#FFFFFF !important; }

  /* Give the page a little top padding so content doesn’t hide under the fixed toggle */
  body{ padding-top: 56px; }
}

/* If the WP admin bar is showing on phones, drop it a bit lower */
@media (max-width: 782px){
  body.admin-bar .uael-nav-menu__toggle--floating,
  body.admin-bar .uael-nav-menu .uael-flyout-menu-btn,
  body.admin-bar .uael-nav-menu .uael-hamburger-menu-wrap,
  body.admin-bar .uael-nav-menu .uael-menu-toggle,
  body.admin-bar .uael-nav-menu .uael-hamburger-menu{
    top: 54px !important;
  }
}
/* Mortii — Key Contacts mobile layout */
@media (max-width: 640px){

  /* 1) Title on one line, star beside it */
  .mortii-section--contacts .inline-label{
    display:inline-flex !important;
    align-items:center !important;
    gap:4px !important;
    white-space:nowrap !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
  }
  /* keep any star tight to the label text */
  .mortii-section--contacts .inline-label .asterisk,
  .mortii-section--contacts .inline-label .required,
  .mortii-section--contacts .inline-label abbr.required{
    position:static !important;
    display:inline !important;
    margin-left:3px !important;
  }
  /* hide stray stars that render in the value/actions area */
  .mortii-section--contacts .inline-value .asterisk,
  .mortii-section--contacts .inline-value .required,
  .mortii-section--contacts .inline-value abbr.required{
    display:none !important;
  }

  /* 2) Value container becomes a vertical stack: actions above value */
  .mortii-section--contacts .inline-value{
    display:flex !important;
    flex-direction:column !important;
    gap:8px !important;
  }

  /* 3) Actions go on their own row, right-aligned (covers common classes) */
  .mortii-section--contacts .inline-value .inline-actions,
  .mortii-section--contacts .inline-value .contact-actions,
  .mortii-section--contacts .inline-value .quick-links,
  .mortii-section--contacts .inline-value .view-profile,
  .mortii-section--contacts .inline-value a.view-profile,
  .mortii-section--contacts .inline-value a[href^="mailto:"],
  .mortii-section--contacts .inline-value a[href^="tel:"],
  .mortii-section--contacts .inline-value i[class*="mail"],
  .mortii-section--contacts .inline-value i[class*="phone"]{
    order:-1 !important;            /* appear right under the title */
    align-self:flex-end !important; /* right aligned */
    display:flex !important;
    gap:12px !important;
    flex-wrap:wrap;
    text-align:right !important;
  }
}

