.elementor-kit-6{--e-global-color-primary:#F3DFB9;--e-global-color-secondary:#5B552B;--e-global-color-text:#FFFFFF;--e-global-color-accent:#E8802D;--e-global-color-e7c1b9a:#F5BF67;--e-global-color-9d27e31:#847649;--e-global-color-b334419:#31472A;--e-global-color-6ad9d48:#FDCA5D;--e-global-color-0d2379a:#DA6E0A;--e-global-color-e986e71:#5F5423;--e-global-color-8b5f3ed:#123121;--e-global-color-d27b918:#020101;--e-global-typography-primary-font-family:"Playfair";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Fraunces";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Fraunces";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Cinzel";--e-global-typography-accent-font-weight:500;background-color:#FFF9EF;font-family:"Lora", Sans-serif;}.elementor-kit-6 button,.elementor-kit-6 input[type="button"],.elementor-kit-6 input[type="submit"],.elementor-kit-6 .elementor-button{background-color:var( --e-global-color-b334419 );font-family:"Playfair", Sans-serif;font-size:20px;color:var( --e-global-color-text );border-style:none;border-radius:15px 15px 15px 15px;}.elementor-kit-6 button:hover,.elementor-kit-6 button:focus,.elementor-kit-6 input[type="button"]:hover,.elementor-kit-6 input[type="button"]:focus,.elementor-kit-6 input[type="submit"]:hover,.elementor-kit-6 input[type="submit"]:focus,.elementor-kit-6 .elementor-button:hover,.elementor-kit-6 .elementor-button:focus{background-color:var( --e-global-color-6ad9d48 );color:var( --e-global-color-text );border-style:none;border-radius:15px 15px 15px 15px;}.elementor-kit-6 e-page-transition{background-color:#FFF4E9;}.elementor-kit-6 h1{font-family:"Playfair", Sans-serif;}.elementor-kit-6 h2{font-family:"Playfair", Sans-serif;}.elementor-kit-6 h3{font-family:"Playfair", Sans-serif;}.elementor-kit-6 h4{font-family:"Lora", Sans-serif;}.elementor-kit-6 h5{font-family:"Lora", Sans-serif;}.elementor-kit-6 h6{font-family:"Lora", Sans-serif;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-header .site-branding .site-logo img{width:0px;max-width:0px;}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS *//* ================================
   Living Human — Month Map Buttons
   Base button styling
================================ */
.lh-month-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding: 12px 34px;
  border-radius: 999px;
  background:#2f4b2f;
  color:#fff;
  text-decoration:none;
  font-family: "Playfair Display", serif;
  font-size: 18px;
  line-height: 1;
  transition: background-color .2s ease, color .2s ease, opacity .2s ease;
}

/* ================================
   Unlocked state (clickable)
================================ */
.lh-month-btn.lh-unlocked{
  cursor:pointer;
  opacity:1;
}

/* ================================
   Hover state (unlocked only)
================================ */
.lh-month-btn.lh-unlocked:hover{
  background:#E8802D; /* Living Human orange */
  color:#fff;
}

/* ================================
   Locked state (not clickable)
================================ */
.lh-month-btn.lh-locked{
  cursor:not-allowed;
  opacity:.9;
  pointer-events:none;
}



/* =====BEGIN LODGE HOME PAGE TRAINING PATH PREVIEW— RCP Drip Member Content ===== */
.lh-drip{
  --lh-orange:#E8802D;
  --lh-green:#2f4b2f;
  --lh-ink: rgba(15, 20, 15, .92);
  --lh-card: rgba(255,255,255,.55);
  --lh-border: rgba(47,75,47,.18);
}

/* Make the whole shortcode output feel like a soft card */
.lh-drip :where(.rcp-drip-member-content, .rcp_drip_member_content, .rcp-drip-member, .rcp_drip_member){
  background: var(--lh-card);
  border: 1px solid var(--lh-border);
  border-radius: 22px;
  padding: 18px 18px;
  backdrop-filter: blur(4px);
}

/* Headings / membership label (Bi-Yearly, Monthly, etc.) */
.lh-drip :where(h2,h3,h4,strong){
  font-family: "Playfair Display", serif;
  color: var(--lh-ink);
}
.lh-drip :where(h2,h3,h4){
  margin: 0 0 12px;
  font-size: 18px;
  letter-spacing: .2px;
}

/* Lists -> modern “pill rows” */
.lh-drip :where(ul){
  list-style: none;
  padding: 0;
  margin: 0;
  display: grid;
  gap: 10px;
}

.lh-drip :where(li){
  position: relative;
  padding: 12px 14px 12px 44px;
  border-radius: 18px;
  background: rgba(255,255,255,.70);
  border: 1px solid rgba(0,0,0,.07);
  color: var(--lh-ink);
  line-height: 1.35;
}

/* Orange “marker” dot */
.lh-drip :where(li)::before{
  content: "";
  position: absolute;
  left: 16px;
  top: 50%;
  transform: translateY(-50%);
  width: 10px;
  height: 10px;
  border-radius: 999px;
  background: var(--lh-orange);
  box-shadow: 0 0 0 4px rgba(232,128,45,.16);
}

/* Links (unlocked items) */
.lh-drip :where(a){
  color: var(--lh-green);
  text-decoration: none;
  font-weight: 600;
}
.lh-drip :where(a:hover){
  color: var(--lh-orange);
  text-decoration: underline;
  text-underline-offset: 3px;
}

/* “Available on …” / helper text (usually in parentheses) */
.lh-drip :where(li) :where(em,i,small,span){
  opacity: .78;
  font-size: 0.95em;
}

/* Mobile breathing room */
@media (max-width: 767px){
  .lh-drip :where(.rcp-drip-member-content, .rcp_drip_member_content, .rcp-drip-member, .rcp_drip_member){
    padding: 14px;
    border-radius: 18px;
  }
  .lh-drip :where(li){
    padding-left: 40px;
  }
}

/* =====END LODGE HOME PAGE TRAINING PATH PREVIEW— RCP Drip Member Content ===== */




/* ===== START PUBLIC HEADER DROPDOWN NOT FULL WIDTH ===== */
@media (max-width: 1024px){
  .elementor-location-header .lh-header-nav{
    position: relative; /* anchor dropdown to this container */
  }

  .elementor-location-header .lh-header-nav .elementor-nav-menu--dropdown{
    position: absolute !important;
    top: calc(100% + 8px) !important;
    right: 0 !important;
    left: auto !important;

    width: auto !important;
    min-width: 240px;
    max-width: calc(100vw - 24px);

    z-index: 9999;
  }

  /* Ensure the inner UL fills the panel nicely */
  .elementor-location-header .lh-header-nav .elementor-nav-menu--dropdown .elementor-nav-menu{
    width: 100% !important;
    border-radius: 14px;
    overflow: hidden;
  }

  /* Better spacing + wrapping */
  .elementor-location-header .lh-header-nav .elementor-nav-menu--dropdown a{
    padding: 12px 16px !important;
    white-space: normal; /* change to nowrap if you prefer single-line */
    line-height: 1.2;
  }
}

/* ===== END PUBLIC HEADER DROPDOWN NOT FULL WIDTH ===== */


/* START Fix Elementor hamburger dropdown showing only 1 item (forces vertical stack) */
@media (max-width: 1024px){

  /* Make sure nothing is clipping the dropdown */
  .elementor-location-header,
  .elementor-location-header .e-con,
  .elementor-location-header .elementor-container,
  .elementor-location-header .elementor-section {
    overflow: visible !important;
  }

  /* Dropdown container sizing */
  .elementor-location-header .elementor-nav-menu__container.elementor-nav-menu--dropdown{
    width: auto !important;
    min-width: 240px;
    max-width: calc(100vw - 24px);
    max-height: calc(100vh - 140px);
    overflow-y: auto !important;
  }

  /* Force the UL to stack items vertically */
  .elementor-location-header .elementor-nav-menu__container.elementor-nav-menu--dropdown > ul.elementor-nav-menu{
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    width: 100% !important;
  }

  .elementor-location-header .elementor-nav-menu__container.elementor-nav-menu--dropdown > ul.elementor-nav-menu > li{
    width: 100% !important;
    display: block !important;
  }

  .elementor-location-header .elementor-nav-menu__container.elementor-nav-menu--dropdown a.elementor-item{
    display: block !important;
    width: 100% !important;
    white-space: normal; /* use nowrap if you prefer one-line only */
  }
}
/* END Fix Elementor hamburger dropdown showing only 1 item (forces vertical stack) */

/* START Mobile/Tablet: make submenu expand UNDER the parent (no flyout overlap) */
@media (max-width: 1024px){

  /* Target dropdown mode only */
  .elementor-location-header
  .elementor-nav-menu__container.elementor-nav-menu--dropdown
  li.menu-item-has-children{
    position: relative !important;
  }

  .elementor-location-header
  .elementor-nav-menu__container.elementor-nav-menu--dropdown
  ul.sub-menu{
    position: static !important;      /* key: removes flyout positioning */
    left: auto !important;
    top: auto !important;
    right: auto !important;
    transform: none !important;
    width: 100% !important;
    float: none !important;
    margin: 0 !important;
    padding: 6px 0 6px 14px !important; /* slight indent */
    box-shadow: none !important;
  }

  /* Make submenu links behave like full-width list items */
  .elementor-location-header
  .elementor-nav-menu__container.elementor-nav-menu--dropdown
  ul.sub-menu a{
    display: block !important;
    width: 100% !important;
    padding: 10px 16px !important;
    white-space: normal;
  }
}

/* END Mobile/Tablet: make submenu expand UNDER the parent (no flyout overlap) */


/* =========================================================
   ===== BEGIN: LH MOBILE FIXES — RCP JOIN / REGISTER FORMS =====
   Fixes overflow on mobile (Membership Details table/fields)
   ========================================================= */

#rcp_registration_form,
#rcp_login_form,
.rcp_form{
  max-width: 100%;
}

#rcp_registration_form *,
#rcp_login_form *,
.rcp_form *{
  box-sizing: border-box;
}

@media (max-width: 767px){

  /* Make any RCP tables behave on small screens */
  #rcp_registration_form table,
  #rcp_login_form table,
  .rcp_form table,
  #rcp_registration_form .rcp_table,
  #rcp_registration_form .rcp-table,
  .rcp_form .rcp_table,
  .rcp_form .rcp-table{
    width: 100% !important;
    max-width: 100% !important;
    table-layout: fixed !important;
  }

  #rcp_registration_form th,
  #rcp_registration_form td,
  #rcp_login_form th,
  #rcp_login_form td,
  .rcp_form th,
  .rcp_form td{
    padding: 10px 12px !important;
    overflow-wrap: anywhere;
    word-break: break-word;
  }

  /* Ensure inputs/fields never force horizontal scrolling */
  #rcp_registration_form input,
  #rcp_registration_form select,
  #rcp_registration_form textarea,
  #rcp_login_form input,
  #rcp_login_form select,
  #rcp_login_form textarea,
  .rcp_form input,
  .rcp_form select,
  .rcp_form textarea{
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
  }

  /* Prevent table cells from forcing wide content */
  #rcp_registration_form td,
  #rcp_login_form td,
  .rcp_form td{
    min-width: 0 !important;
  }
}

/* ===== END: LH MOBILE FIXES — RCP JOIN / REGISTER FORMS ===== */


/* start Hide 2nd filter until a Pillar is selected */
.lh-filter-type { display: none; }
.lh-filter-type.is-visible { display: block; }

.lh-filter-type { 
  display: block;
  max-height: 0;
  opacity: 0;
  overflow: hidden;
  transition: max-height .25s ease, opacity .25s ease;
}
.lh-filter-type.is-visible{
  max-height: 200px;
  opacity: 1;
}

/* end 2nd filter until a Pillar is selected */

/* ===== START HEADER DISPLAY LOGIC ===== */
body.logged-in .lh-header-public { display: none !important; }
body:not(.logged-in) .lh-header-account { display: none !important; }
/* ===== END HEADER DISPLAY LOGIC ===== *//* End custom CSS */