/* ==========================================================
   WIM CSS — v13 SAFE ORGANIZED BASELINE
   ==========================================================

   IMPORTANT:
   - This file preserves the existing CSS order.
   - No selectors or declarations were intentionally changed.
   - This is a maintenance baseline for editing in VS Code.
   - Because CSS order matters, do not move large blocks yet.
   - Future cleanup should happen one subsystem at a time.

   Working sections currently present in this file:

   01. WIM UI / Cards / Member table / Dashboard basics
   02. Formidable Form 2 registration and member form styling
   03. Forgot password / login-related pages
   04. Events Calendar and Form 23 event planner
   05. Mobile layout safety nets and public navigation
   06. Page-specific fixes
   07. Financial upload and admin utility pages
   08. Header / logo / responsive navigation
   09. Member Info page cards and mobile cleanup
   10. Footer
   11. Admin/member table readability fixes
   12. Mobile admin dashboard hamburger/menu
   13. Final mobile modules and page-specific mobile fixes

   Next recommended work:
   - Keep this file as the master copy.
   - Copy/paste from this file into WordPress Additional CSS.
   - Continue adding documented module headers as we touch each area.
   ========================================================== */

/* =========================
   WIM UI — Cleaned Styles
   ========================= */

/* ===== Page / Card ===== */
.wim-card {
  background: #fff;
  border: 1px solid #e9eef4;
  border-radius: 14px;
  padding: 16px 16px 0;
  margin: 0 0 14px;
}

.wim-card__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 12px;
}

.wim-card__title {
  font-weight: 700;
  color: #0f172a;
  font-size: 16px;
}

.wim-count {
  color: #64748b;
  margin-left: 6px;
}

/* ===== Toolbar ===== */
.wim-toolbar {
  display: flex;
  align-items: center;
  gap: 12px;
  flex-wrap: nowrap;
  margin-bottom: 8px;
}

.wim-select,
.wim-input {
  height: 36px;
  padding: 0 12px;
  border: 1px solid #e6eaf1;
  border-radius: 8px;
  background: #fff;
  font-size: 14px;
  color: #1e293b;
}

.wim-input::placeholder {
  color: #a0a8b5;
}

.wim-input--name {
  width: 260px;
}

/* ===== Buttons ===== */
.wim-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 36px;
  padding: 0 14px;
  border-radius: 8px;
  font-weight: 700;
  text-decoration: none;
  border: 0;
  cursor: pointer;
}

.wim-btn--primary {
  background: rgb(99, 102, 241);
  color: #fff;
}

.wim-btn--primary:hover {
  filter: brightness(.95);
}

.wim-btn--success {
  background: #22c55e;
  color: #fff;
}

.wim-card__header-actions {
  display: flex;
  gap: 14px;
}

/* ===== View 640 — Table look ===== */
.frm_view_640 table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  margin-top: 10px;
  font-family: "Segoe UI", Tahoma, sans-serif;
  font-size: 14px;
  color: #1e293b;
}

.frm_view_640 thead th {
  text-transform: uppercase;
  letter-spacing: .02em;
  font-size: 12px;
  font-weight: 700;
  color: #7c8594;
  background: transparent;
  padding: 12px 10px;
  text-align: left;
  border-bottom: 1px solid #e6eaf1;
}

.frm_view_640 tbody td {
  padding: 14px 10px;
  border-bottom: 1px solid #e6eaf1;
  vertical-align: middle;
}

.frm_view_640 tbody tr:hover {
  background: #eef6ff;
}

/* Optional column widths (tweak to your order) */
.frm_view_640 thead th:nth-child(1),
.frm_view_640 tbody td:nth-child(1) {
  width: 26%;
}

/* Name */
.frm_view_640 thead th:nth-child(2),
.frm_view_640 tbody td:nth-child(2) {
  width: 28%;
}

/* Email */
.frm_view_640 thead th:nth-child(3),
.frm_view_640 tbody td:nth-child(3) {
  width: 12%;
}

/* Status */
.frm_view_640 thead th:nth-child(4),
.frm_view_640 tbody td:nth-child(4) {
  width: 16%;
}

/* Date Joined */
.frm_view_640 thead th:nth-child(5),
.frm_view_640 tbody td:nth-child(5) {
  width: 10%;
}

/* Role */

/* Apply table styles when the table sits inside a card */
.wim-card table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  margin-top: 10px;
  font-family: "Segoe UI", Tahoma, sans-serif;
  font-size: 14px;
  color: #1e293b;
}

.wim-card thead th {
  text-transform: uppercase;
  letter-spacing: .02em;
  font-size: 12px;
  font-weight: 700;
  color: #7c8594;
  background: transparent;
  padding: 12px 10px;
  text-align: left;
  border-bottom: 1px solid #e6eaf1;
}

.wim-card tbody td {
  padding: 14px 10px;
  border-bottom: 1px solid #e6eaf1;
  vertical-align: middle;
}

.wim-card tbody tr:hover {
  background: #eef6ff;
}

/* ===== Actions column (View 640) ===== */

/* Keep Actions column narrow and right-aligned */
.frm_view_640 thead th:last-child,
.frm_view_640 tbody td:last-child {
  width: 110px;
  text-align: right;
  white-space: nowrap;
}

/* Icon container */
.frm_view_640 .wim-actions {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: 12px;
}

/* Icon buttons */
.frm_view_640 .wim-action {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 22px;
  height: 22px;
  padding: 0 !important;
  margin: 0 !important;
  border: 0;
  background: transparent;
  text-decoration: none;
  cursor: pointer;
  color: #0f172a;
  opacity: .95;
  transition: transform .12s ease, opacity .12s ease;
}

.frm_view_640 .wim-action svg {
  width: 18px !important;
  height: 18px !important;
  flex: 0 0 18px;
  display: block;
}

.frm_view_640 .wim-action:hover {
  transform: translateY(-1px);
  opacity: 1;
}

.frm_view_640 .wim-action:focus {
  outline: 2px solid #6366f1;
  outline-offset: 2px;
  border-radius: 6px;
}

/* Explicit icon colors (override theme link color) */
.frm_view_640 .wim-action--approve {
  color: #10b981 !important;
}

/* green */
.frm_view_640 .wim-action--reject {
  color: #ef4444 !important;
}

/* red */
.frm_view_640 .wim-action--edit {
  color: #64748b !important;
}

/* slate */
.frm_view_640 .wim-action--delete {
  color: #ef4444 !important;
}

/* red */

/* Safety: ensure Approve icon is never hidden */
.frm_view_640 .wim-action--approve {
  display: inline-flex !important;
  visibility: visible !important;
  opacity: 1 !important;
}

/* ===== Admin dashboard (vertical, dark) ===== */
.wim-admin-shell {
  display: grid;
  grid-template-columns: 260px 1fr;
  gap: 16px;
  min-height: 72vh;
  margin: 8px 0 24px;
}

.wim-aside {
  background: #1f2a37;
  color: #e5e7eb;
  border-radius: 14px;
  padding: 16px 12px;
  border: 1px solid #263445;
  position: sticky;
  top: 16px;
  height: fit-content;
  display: flex;
  flex-direction: column;
  min-height: 60vh;
}

.wim-brand {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 6px 8px 10px;
}

.wim-brand__icon {
  color: #6366f1;
  display: inline-flex;
}

.wim-brand__title {
  font-weight: 800;
  font-size: 16px;
  color: #e8eaff;
  letter-spacing: .2px;
}

.wim-nav {
  margin-top: 6px;
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.wim-nav__link {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 10px 12px;
  border-radius: 10px;
  color: #cbd5e1;
  text-decoration: none;
  border: 1px solid transparent;
}

.wim-nav__link:hover {
  background: #223042;
  border-color: #2a3b50;
}

.wim-nav__link.is-active {
  background: #263445;
  border-color: #334155;
  color: #fff;
}

.wim-nav__icon {
  width: 20px;
  height: 20px;
  color: #94a3b8;
}

.wim-nav__link.is-active .wim-nav__icon {
  color: #6366f1;
}

.wim-nav__text {
  font-weight: 600;
}

.wim-aside__spacer {
  flex: 1 1 auto;
}

.wim-aside__footer {
  display: flex;
  flex-direction: column;
  gap: 6px;
  margin-top: 12px;
}

.wim-aside__footer .wim-nav__link {
  color: #cbd5e1;
}

.wim-main {
  background: #ffffff;
  border: 1px solid #e9eef4;
  border-radius: 14px;
  padding: 18px;
  min-height: 60vh;
}

.wim-h1 {
  margin: 2px 0 10px;
  font-size: 22px;
  color: #0f172a;
}

.wim-quick {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
  gap: 12px;
  margin-top: 10px;
}

.wim-quick .tile {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 84px;
  background: #f8fafc;
  border: 1px solid #e5e7eb;
  border-radius: 14px;
  font-weight: 700;
  color: #0f172a;
  text-decoration: none;
}

.wim-quick .tile:hover {
  filter: brightness(1.03);
}

/* Responsive: sidebar stacks on top */
@media (max-width:980px) {
  .wim-admin-shell {
    grid-template-columns: 1fr;
  }

  .wim-aside {
    position: static;
  }
}

/* Hide the theme's page title only on the Users page (adjust ID if needed) */
.page-id-664 .entry-title,
.page-id-664 .wp-block-post-title {
  display: none !important;
}

/* ===== Front-end login page styling ===== */
.wim-login-card {
  max-width: 640px;
  margin: 18px auto;
  padding: 24px 24px 20px;
  background: #fff;
  border-radius: 14px;
  box-shadow: 0 10px 24px rgba(0, 0, 0, .06);
  border: 1px solid #eef1f5;
}

.wim-login-card .wim-error {
  background: #fee2e2;
  color: #b91c1c;
  border: 1px solid #fecaca;
  padding: 10px 12px;
  border-radius: 10px;
  margin: 0 0 14px;
  font-weight: 600;
}

.wim-login-card .wim-note {
  background: #ecfeff;
  color: #155e75;
  border: 1px solid #cffafe;
  padding: 10px 12px;
  border-radius: 10px;
  margin: 0 0 14px;
  font-weight: 600;
}

.wim-login-card form[name="loginform"] p {
  margin: 0 0 14px;
}

.wim-login-card form[name="loginform"] label {
  display: block;
  font-weight: 600;
  color: #334155;
  margin: 0 0 6px;
}

.wim-login-card form[name="loginform"] .input {
  width: 100%;
  height: 44px;
  border: 1px solid #e5e7eb;
  border-radius: 10px;
  padding: 0 12px;
  font-size: 16px;
  color: #0f172a;
  background: #fff;
}

.wim-login-card form[name="loginform"] .input:focus {
  outline: none;
  border-color: #c7d2fe;
  box-shadow: 0 0 0 3px rgba(99, 102, 241, .25);
}

.wim-login-card .login-remember label {
  display: flex;
  align-items: center;
  gap: 8px;
  color: #475569;
  font-weight: 500;
}

.wim-login-card .login-submit {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 12px;
}

.wim-login-card .login-submit .button {
  height: 40px;
  padding: 0 16px;
  border-radius: 10px;
  border: 0;
  background: #111827;
  color: #fff;
  font-weight: 700;
  cursor: pointer;
}

.wim-login-card .login-submit .button:hover {
  filter: brightness(1.08);
}

.wim-login-card a {
  color: #334155;
  text-decoration: none;
}

.wim-login-card a:hover {
  text-decoration: underline;
}

/* Optional soft page background (commented)
body.page .site-main .entry-content { background:#f6f7fb; padding:8px 0; }
*/

/* Kill underlines/ghost lines under action icons */
.frm_view_640 .wim-actions a,
.frm_view_640 .wim-actions a:link,
.frm_view_640 .wim-actions a:visited,
.frm_view_640 .wim-actions a:hover,
.frm_view_640 .wim-actions a:focus,
.frm_view_640 .wim-actions a:active {
  text-decoration: none !important;
  border: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
}

/* Keep icons tight and centered */
.frm_view_640 .wim-action {
  line-height: 1 !important;
}

.frm_view_640 .wim-action svg {
  display: block;
}


/* Kill underlines/ghost lines under action icons */
.frm_view_640 .wim-actions a,
.frm_view_640 .wim-actions a:link,
.frm_view_640 .wim-actions a:visited,
.frm_view_640 .wim-actions a:hover,
.frm_view_640 .wim-actions a:focus,
.frm_view_640 .wim-actions a:active {
  text-decoration: none !important;
  border: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
}

/* Keep icons tight and centered */
.frm_view_640 .wim-action {
  line-height: 1 !important;
}

.frm_view_640 .wim-action svg {
  display: block;
}


/* --- Nuke any underline/pseudo under action icons (View 640) --- */

/* Member profile layout */
.wim-profile {
  max-width: 900px;
  margin: 0 auto;
  padding: 6px 0 24px;
}

.wim-profile__name {
  margin: 0 0 16px;
  font-size: 34px;
  line-height: 1.15;
  color: #0f172a;
}

.wim-profile__grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 26px;
}

.wim-field {
  margin: 0 0 14px;
}

.wim-label {
  font-weight: 800;
  color: #0f172a;
  margin-bottom: 2px;
}

.wim-value {
  color: #111827;
}

@media (max-width:900px) {
  .wim-profile__grid {
    grid-template-columns: 1fr;
  }
}

.frm_view_640 .wim-actions a {
  /* kill all typical underline tricks */
  text-decoration: none !important;
  border: 0 !important;
  box-shadow: none !important;
  background: transparent !important;

  /* stop text-based decorations from rendering */
  font-size: 0 !important;
  line-height: 0 !important;

  /* keep sizing/align intact for the SVG */
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
}

/* some themes draw custom underlines via ::before/::after */
.frm_view_640 .wim-actions a::before,
.frm_view_640 .wim-actions a::after {
  content: none !important;
  display: none !important;
}

/* make sure the SVG shows at the intended size */
.frm_view_640 .wim-actions a svg {
  width: 18px !important;
  height: 18px !important;
  display: block !important;
}


/* Member profile layout (View page) */
.wim-member {
  max-width: 900px;
}

.wim-member .wim-h1 {
  font-size: 28px;
  margin: 0 0 18px;
  color: #0f172a;
}

.wim-dl {
  display: grid;
  grid-template-columns: 220px 1fr;
  gap: 12px 20px;
}

.wim-dl__row dt {
  font-weight: 700;
  color: #0f172a;
}

.wim-dl__row dd {
  margin: 0;
  color: #111827;
}

@media (max-width: 720px) {
  .wim-dl {
    grid-template-columns: 1fr;
  }
}


.wim-member-detail {
  max-width: 980px;
  margin: 0 auto;
}

.wim-member-detail h1 {
  margin: 0 0 18px;
  font-size: 34px;
}

.wim-detail-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 18px 48px;
}

.wim-label {
  font-weight: 700;
  color: #1e293b;
  margin-bottom: 4px;
}

.wim-value {
  color: #0f172a;
}

@media (max-width:820px) {
  .wim-detail-grid {
    grid-template-columns: 1fr;
  }
}



/* 1) Kill the line under the left Section heading */
.frm_section_heading {
  border: none !important;
  box-shadow: none !important;
}

.frm_section_heading:after,
.frm_section_heading:before {
  display: none !important;
}

/* 2) Column widths: make left wider, right a bit narrower */
.frm_first_half {
  display: inline-block;
  width: 58%;
  vertical-align: top;
}

.frm_last_half {
  display: inline-block;
  width: 40%;
  vertical-align: top;
}

/* 3) Inputs on the left: full width and left-aligned */
.frm_first_half .frm_form_field,
.frm_first_half .frm_form_field .frm_input,
.frm_first_half .frm_form_field input[type="text"],
.frm_first_half .frm_form_field input[type="email"],
.frm_first_half .frm_form_field input[type="tel"],
.frm_first_half .frm_form_field textarea {
  width: 100%;
  max-width: 100%;
}

/* 4) Right column text: align left and reduce the gap a touch */
.frm_last_half {
  text-align: left;
  padding-left: 20px;
  /* adjust to taste */
}

/* Mobile: stack columns full width */
@media (max-width: 768px) {

  .frm_first_half,
  .frm_last_half {
    display: block;
    width: 100%;
    padding-left: 0;
  }
}


/* --- WIM toast --- */
.wim-toast {
  position: fixed;
  left: 50%;
  bottom: 18px;
  /* bottom placement */
  transform: translateX(-50%) translateY(10px);
  z-index: 999999;
  /* above everything */
  max-width: 96vw;
  background: #111827;
  /* default */
  color: #fff;
  padding: 12px 16px;
  border-radius: 10px;
  box-shadow: 0 8px 22px rgba(0, 0, 0, .25);
  font-weight: 700;
  opacity: 0;
  /* for animation */
  transition: opacity .2s ease, transform .2s ease;
}

.wim-toast.is-show {
  opacity: 1;
  transform: translateX(-50%) translateY(0);
}

.wim-toast--success {
  background: #16a34a;
}

.wim-toast--info {
  background: #0ea5e9;
}

.wim-toast--warn {
  background: #f59e0b;
}

.wim-toast--error {
  background: #ef4444;
}


/* Users header layout */
.wim-users-head {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
  margin: 10px 0 20px 0
}

.wim-users-title {
  display: flex;
  align-items: center;
  gap: 10px
}

.wim-users-title h1 {
  margin: 0;
  font-size: 42px;
  line-height: 1.1
}

.wim-count {
  font-size: 20px;
  font-weight: 600;
  color: #718096;
  /* subtle gray like the prototype */
}

.wim-users-actions {
  display: flex;
  gap: 12px;
  align-items: center
}

/* Button polish (works with your current .wim-btn styles) */
.wim-btn {
  display: inline-flex;
  align-items: center;
  gap: 8px
}

/* Remove any leftover export notice area if it ever appears */
#wim-export-notice {
  display: none
}


/* Two-column row: left = Section (stacked fields), right = HTML blurb */
.frm_first_half,
.frm_last_half {
  display: inline-block;
  width: 48%;
  vertical-align: top;
  /* stops left column from matching right column height */
}

/* Tighten spacing under a Section heading if you keep it visible */
.frm_section_heading {
  margin-bottom: .5rem;
}

/* Inputs/textarea keep natural height */
.frm_fields_container input[type="text"],
.frm_fields_container textarea {
  height: auto;
}

/* Mobile: stack full width */
@media (max-width: 768px) {

  .frm_first_half,
  .frm_last_half {
    display: block;
    width: 100%;
  }
}

/* Two columns: left (Section) + right (HTML) */
.frm_first_half,
.frm_last_half {
  display: inline-block !important;
  vertical-align: top !important;
}

.frm_first_half {
  width: 58% !important;
}

.frm_last_half {
  width: 40% !important;
  margin-left: 2% !important;
  text-align: left;
}

/* Remove the UNDERLINE that Formidable adds only to the Section heading */
.frm_section .frm_section_heading,
.frm_section .frm_section_heading .frm_section_title,
.frm_section .frm_section_heading .frm_section_title:after {
  border: 0 !important;
  box-shadow: none !important;
  background: none !important;
}

/* (Safety) restore normal input styling if anything was overridden */
.frm_form_field input[type="text"],
.frm_form_field input[type="email"],
.frm_form_field input[type="tel"],
.frm_form_field textarea {
  background: #fff;
  border: 1px solid #ccc;
  border-radius: 10px;
}


/* ---- Two-column widths you can tune ---- */
:root {
  --wim-left: 36%;
  /* left column width (Section) */
  --wim-gap: -45.0%;
  /* space between columns */
}

.frm_first_half,
.frm_last_half {
  display: inline-block !important;
  vertical-align: top !important;
}

.frm_first_half {
  width: var(--wim-left) !important;
}

.frm_last_half {

  /* Two headings aligned to the two text columns */
  .wim-dual-headings {
    /* tweakables (you can override in the inline style too) */
    --col-gap: 40px;
    --h-size: 44px;

    display: grid;
    grid-template-columns: 1fr 1fr;
    /* matches a 2-column layout */
    column-gap: var(--col-gap);
    align-items: end;
    margin: 0 0 8px;
  }

  .wim-dual-headings h2 {
    color: #F4826F;
    font-size: var(--h-size);
    line-height: 1.1;
    margin: 0;
    font-weight: 700;
    /* H2-like weight */
  }

  /* Optional: stack on small screens */
  @media (max-width: 700px) {
    .wim-dual-headings {
      grid-template-columns: 1fr;
      row-gap: 8px;
    }
  }

  width: calc(100% - var(--wim-left) - var(--wim-gap)) !important;
  margin-left: var(--wim-gap) !important;
  text-align:left;
}

/* make inputs fill the left column nicely */
.frm_first_half .frm_form_field,
.frm_first_half .frm_form_field .frm_input,
.frm_first_half .frm_form_field input,
.frm_first_half .frm_form_field textarea {
  width: 100%;



  /* This is CSS for the NEW Login page*/

  /* ==== Layout wrapper (sits on top of your normal header/bg/footer) ==== */
  .wim-auth-hero {
    padding: 24px 16px 40px;
  }

  /* Two-card grid: left login, right CTA */
  .wim-auth-grid {
    max-width: 1150px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 28px;
  }

  /* Headings (white, uppercase, bold, like comp) */
  .wim-hero-title {
    color: #FFFFFF;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.03em;
    font-size: clamp(26px, 3.2vw, 44px);
    margin: 0 0 12px;
  }

  /* Cards */
  .wim-card {
    position: relative;
  }

  /* Left: Login card */
  .wim-card--login {
    background: linear-gradient(180deg, #F4862F 0%, #EE973E 100%);
    border-radius: 12px;
    box-shadow: 0 8px 18px rgba(0, 0, 0, .25);
    padding: 16px 16px 18px;
  }

  /* Style the built-in WP login form inside our card */
  .wim-card--login #loginform {
    margin: 8px 0 0;
  }

  .wim-card--login #loginform label {
    color: #2B3189;
    font-weight: 700;
    margin-bottom: 6px;
    display: inline-block;
  }

  .wim-card--login #loginform input[type="text"],
  .wim-card--login #loginform input[type="password"] {
    width: 100%;
    border-radius: 8px;
    border: 0;
    padding: 12px 14px;
    background: #FFFFFF;
    box-shadow: inset 0 1px 0 rgba(0, 0, 0, .05);
  }

  /* Remember + lost password row */
  .wim-card--login #loginform p.forgetmenot {
    display: flex;
    align-items: center;
    gap: 8px;
    margin: 10px 0 6px;
    color: #2B3189;
    font-weight: 600;
  }

  .wim-card--login #loginform p.forgetmenot input[type="checkbox"] {
    width: 20px;
    height: 20px;
    accent-color: #2B3189;
  }

  .wim-card--login #loginform p.forgetmenot label {
    margin: 0;
  }

  .wim-card--login #loginform p.forgetmenot+p {
    /* the paragraph that contains the lost password link */
    margin: -28px 0 0;
    /* pull up to align right side like comp */
    text-align: right;
  }

  .wim-card--login #loginform p.forgetmenot+p a {
    color: #2B3189;
    text-decoration: underline;
    font-weight: 600;
  }

  /* Submit row: left-aligned button with room */
  .wim-card--login #loginform p.submit {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    justify-content: flex-start !important;
    margin: 12px 0 0 !important;
  }

  .wim-card--login #loginform p.submit input[type="submit"] {
    background: #2B3189;
    color: #FFFFFF;
    border: 0;
    border-radius: 12px;
    padding: 12px 32px;
    font-weight: 800;
    cursor: pointer;
    box-shadow: 0 4px 10px rgba(0, 0, 0, .25);
  }

  .wim-card--login #loginform p.submit input[type="submit"]:hover {
    transform: translateY(-1px);
  }

  /* Right: CTA card outer shape (transparent like comp; just holds the panel) */
  .wim-card--cta {
    padding-top: 0;
  }

  /* Orange CTA panel */
  .wim-cta-panel {
    background: linear-gradient(180deg, #F4862F 0%, #EE973E 100%);
    border-radius: 12px;
    box-shadow: 0 8px 18px rgba(0, 0, 0, .25);
    padding: 26px 20px;
    display: grid;
    align-content: start;
    gap: 22px;
  }

  .wim-cta-sub {
    color: #FFFFFF;
    font-weight: 800;
    text-align: center;
  }

  /* Primary button */
  .wim-btn {
    display: inline-block;
    text-align: center;
    text-decoration: none;
    border-radius: 12px;
    padding: 14px 28px;
    font-weight: 800;
    box-shadow: 0 4px 10px rgba(0, 0, 0, .25);
  }

  .wim-btn--primary {
    background: #2B3189;
    color: #FFFFFF;
  }

  .wim-btn--primary:hover {
    transform: translateY(-1px);
  }

  /* Responsiveness */
  @media (max-width: 980px) {
    .wim-auth-grid {
      grid-template-columns: 1fr;
    }
  }

  max-width:100%;
}

/* optional: remove extra top margin on the right block if any */
.frm_last_half .frm_form_field {
  margin-top: 0;
}

/* mobile: stack */
@media (max-width: 768px) {

  .frm_first_half,
  .frm_last_half {
    display: block !important;
    width: 100% !important;
    margin-left: 0 !important;
  }
}


/* CSS for Our Mission page */

/* Two headings aligned to the two text columns */
.wim-dual-headings {
  /* tweakables (you can override in the inline style too) */
  --col-gap: 40px;
  --h-size: 44px;

  display: grid;
  grid-template-columns: 1fr 1fr;
  /* matches a 2-column layout */
  column-gap: var(--col-gap);
  align-items: end;
  margin: 0 0 8px;
}

.wim-dual-headings h2 {
  color: #F4826F;
  font-size: var(--h-size);
  line-height: 1.1;
  margin: 0;
  font-weight: 700;
  /* H2-like weight */
}

/* Optional: stack on small screens */
@media (max-width: 700px) {
  .wim-dual-headings {
    grid-template-columns: 1fr;
    row-gap: 8px;
  }
}

/* Nudge the whole row left/right */
.wim-dual-headings {
  transform: translateX(var(--offset-x, 0));
  margin-bottom: 8px;
  /* space above the paragraphs */
}

/* Center each heading within its half (optional; comment out if you prefer left) */
.wim-dual-headings h2 {
  justify-self: center;
  text-align: center;
}

/* Match your column split if they're not exactly 50/50 */
/* Start with this and tweak the percentages until the titles sit over the text blocks */
.wim-dual-headings {
  grid-template-columns: 52% 48%;
  /* try 52/48, 55/45, etc. */
}

/* Micro-nudges per side if one title needs a little shove */
.wim-dual-headings .wim-left {
  margin-left: 0;
}

/* e.g., -6px or +6px */
.wim-dual-headings .wim-right {
  margin-left: 8px;
}

/* adjust as needed */

.wim-dual-headings .wim-left {
  margin-left: var(--left-nudge, -50);
}

.wim-dual-headings .wim-right {
  margin-left: var(--right-nudge, 0);
}


/* Column layout (keep what you had) */
.wim-dual-headings {
  display: grid;
  grid-template-columns: 52% 48%;
  /* adjust split as needed */
  column-gap: var(--col-gap, 48px);
  transform: translateX(var(--offset-x, 0));
}

/* Center in each column, then shove with translateX */
.frm_forms .wim-dual-headings .wim-left {
  justify-self: center;
  text-align: center;
  transform: translateX(var(--left-shift, 0));
}

.frm_forms .wim-dual-headings .wim-right {
  justify-self: center;
  text-align: center;
  transform: translateX(var(--right-shift, 0));
}


/* CSS for custom login page*/

/* === AUTH PAGE LAYOUT === */
.wim-auth-hero {
  padding: 24px 16px 40px;
}

.wim-auth-grid {
  max-width: 1150px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr 1fr;
  /* two equal columns */
  gap: 28px;
}

/* Headings (white, uppercase, bold) */
.wim-hero-title {
  color: #fff;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.03em;
  font-size: clamp(26px, 3.2vw, 44px);
  margin: 0 0 12px;
}

/* Cards */
.wim-card {
  position: relative;
}

/* LEFT: LOGIN CARD */
.wim-card--login {
  background: linear-gradient(180deg, #F4862F 0%, #EE973E 100%);
  border-radius: 12px;
  box-shadow: 0 8px 18px rgba(0, 0, 0, .25);
  padding: 16px 16px 18px;
}

/* Style the WP login form inside */
.wim-card--login #loginform {
  margin: 8px 0 0;
}

.wim-card--login #loginform label {
  color: #2B3189;
  font-weight: 700;
  margin-bottom: 6px;
  display: inline-block;
}

.wim-card--login #loginform input[type="text"],
.wim-card--login #loginform input[type="password"] {
  width: 100%;
  border-radius: 8px;
  border: 0;
  padding: 12px 14px;
  background: #fff;
  box-shadow: inset 0 1px 0 rgba(0, 0, 0, .05);
}

/* remember + lost password */
.wim-card--login #loginform p.forgetmenot {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 10px 0 6px;
  color: #2B3189;
  font-weight: 600;
}

.wim-card--login #login
/* --- POLISH PACK --- */

/* 1) Constrain card widths + spacing */
.wim-auth-grid {
  max-width: 1150px;
  gap: 36px;
  /* spacing between columns */
}

.wim-card--login,
.wim-card--cta {
  max-width: 640px;
}

/* feel free to tweak 560–680px */

/* 2) Headings: size, line-height, tight margins */
.wim-hero-title {
  font-size: clamp(32px, 3.6vw, 56px);
  line-height: 1.05;
  margin: 0 0 14px;
}

/* 3) Login card internals */
.wim-card--login #loginform input[type="text"],
.wim-card--login #loginform input[type="password"] {
  height: 54px;
  border-radius: 14px;
  font-size: 18px;
}

.wim-card--login #loginform label {
  font-size: 18px;
}

/* Remember + lost password alignment */
.wim-card--login #loginform p.forgetmenot {
  margin: 14px 0 0;
}

.wim-card--login #loginform p.forgetmenot+p {
  margin: -28px 0 0;
  text-align: right;
}

/* Primary login button */
.wim-card--login #loginform p.submit input[type="submit"] {
  padding: 14px 36px;
  border-radius: 14px;
  font-size: 18px;
}

/* 4) Hide the extra "Become a Member" inside the LEFT card (since we have the big CTA on the right) */
.wim-card--login a[href*="user-registration"] {
  display: none !important;
}

/* 5) Right CTA button (ensure it styles Gutenberg Buttons) */
.wim-cta-panel .wp-block-button__link {
  background: #2B3189;
  color: #fff;
  border-radius: 12px;
  padding: 14px 28px;
  font-weight: 800;
  box-shadow: 0 4px 10px rgba(0, 0, 0, .25);
}

.wim-cta-panel .wp-block-button__link:hover {
  transform: translateY(-1px);
}

/* 6) Optional: add the white rounded separator under the right heading
   (Insert a Gutenberg "Separator" block under the BECOME A MEMBER heading and
   give it the Additional CSS class: wim-sep) */
.wim-cta-panel,
.wim-card--cta {
  position: relative;
}

.wim-auth-grid .wim-sep {
  width: 60%;
  height: 16px;
  border: 0;
  border-radius: 999px;
  background: #fff;
  margin: 8px 0 18px;
}


/* === 0) Hide accidental white pill at top of LEFT card (separator) === */
.wim-card--login .wp-block-separator {
  display: none !important;
}

/* === 1) Constrain layout & spacing === */
.wim-auth-grid {
  max-width: 1200px;
  gap: 28px;
}

.wim-card--login,
.wim-card--cta {
  max-width: 680px;
}

/* Headings (match comp) */
.wim-hero-title {
  color: #fff;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .02em;
  line-height: 1.05;
  font-size: clamp(34px, 3.6vw, 48px);
  margin: 0 0 16px;
}


/* Make the right-side separator a fat rounded "pill" */
.wp-block-separator.wim-sep,
hr.wim-sep {
  height: 16px;
  /* pill thickness */
  border: 0;
  /* remove default line */
  border-radius: 999px;
  /* full round ends */
  background: #ffffff;
  /* white bar */
  width: 68%;
  /* pill length (knob) */
  margin: 8px 0 20px;
  /* space above/below (knob) */
}

/* Kill theme styles that add lines/pseudo content */
.wim-sep::before,
.wim-sep::after {
  content: none !important;
}

.wim-sep.is-style-wide,
.wim-sep.is-style-default {
  border: 0 !important;
}

/* === 2) LEFT: Login card cleanup === */
.wim-card--login {
  background: linear-gradient(180deg, #F4862F 0%, #EE973E 100%);
  border-radius: 14px;
  box-shadow: 0 10px 22px rgba(0, 0, 0, .28);
  padding: 18px 18px 20px;
}

/* Kill theme “inner box” wrappers */
.wim-card--login #loginform,
.wim-card--login #loginform p {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  margin-top: 0;
  padding: 0;
}

/* Labels & fields */
.wim-card--login #loginform label {
  color: #2B3189;
  font-weight: 800;
  margin: 6px 0 6px;
  display: inline-block;
}

.wim-card--login #loginform input[type="text"],
.wim-card--login #loginform input[type="password"] {
  width: 100%;
  height: 52px;
  border: 0;
  border-radius: 12px;
  padding: 12px 14px;
  background: #fff;
  box-shadow: inset 0 1px 0 rgba(0, 0, 0, .06);
  font-size: 18px;
}

/* Remember + Forgot row (left/right like comp) */
.wim-card--login #loginform .forgetmenot {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 14px 0 0;
}


/* Left column orange */

/* Make the ENTIRE left column an orange card; only inputs are white */

/* 1) Orange card fills the left column */
.wim-card--login {
  display: block;
  background: linear-gradient(180deg, #F4862F 0%, #EE973E 100%);
  border-radius: 14px;
  box-shadow: 0 10px 22px rgba(0, 0, 0, .28);
  padding: 22px 22px 24px;
  /* outer orange padding */
}

/* 2) Nuke ANY inner white panels/wrappers inside the card */
.wim-card--login .wp-block-group,
.wim-card--login #loginform,
.wim-card--login #loginform>p,
.wim-card--login #loginform>div {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
  margin: 0 0 14px !important;
  /* orange gaps between rows */
}

/* If a separator/spacer sneaked in the left card, hide it */
.wim-card--login .wp-block-separator,
.wim-card--login .wp-block-spacer {
  display: none !important;
}

/* 3) Heading in the card */
.wim-card--login .wim-hero-title {
  color: #fff;
  margin: 0 0 16px;
  line-height: 1.05;
}

/* 4) Inputs: the only white elements */
.wim-card--login #loginform input[type="text"],
.wim-card--login #loginform input[type="password"] {
  width: 100%;
  height: 52px;
  background: #fff !important;
  border: 0;
  border-radius: 12px;
  padding: 12px 14px;
  font-size: 18px;
  box-shadow: inset 0 1px 0 rgba(0, 0, 0, .06);
  margin: 0 0 10px !important;
  /* tiny gap under each input */
}

/* 5) Labels + remember/forgot row (inline like comp) */
.wim-card--login #loginform label {
  color: #2B3189;
  font-weight: 800;
  margin: 6px 0 6px;
  display: inline-block;
}

.wim-card--login #loginform .forgetmenot {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 6px 0 0 !important;
}

.wim-card--login #loginform .forgetmenot+p {
  margin: -26px 0 0 !important;
  text-align: right;
}

.wim-card--login #loginform .forgetmenot input[type="checkbox"] {
  width: 20px;
  height: 20px;
  accent-color: #2B3189;
}

/* 6) Primary login button centered */
.wim-card--login #loginform p.submit {
  text-align: center !important;
  margin: 16px 0 0 !important;
}

.wim-card--login #loginform p.submit input[type="submit"] {
  background: #2B3189;
  color: #fff;
  border: 0;
  border-radius: 12px;
  padding: 14px 42px;
  font-weight: 800;
  box-shadow: 0 6px 14px rgba(0, 0, 0, .25);
}

/* Hide the extra “Become a Member” link inside the left card */
.wim-card--login a[href*="user-registration"] {
  display: none !important;
}

.wim-card--login #loginform .forgetmenot+p {
  margin: -28px 0 0;
  text-align: right;
}

.wim-card--login #loginform .forgetmenot label {
  margin: 0;
}

.wim-card--login #loginform .forgetmenot input[type="checkbox"] {
  width: 20px;
  height: 20px;
  accent-color: #2B3189;
}

/* Primary login button – centered */
.wim-card--login #loginform p.submit {
  display: block !important;
  text-align: center !important;
  margin: 18px 0 0 !important;
}

.wim-card--login #loginform p.submit input[type="submit"] {
  background: #2B3189;
  color: #fff;
  border: 0;
  border-radius: 12px;
  padding: 14px 42px;
  font-weight: 800;
  box-shadow: 0 6px 14px rgba(0, 0, 0, .25);
}

/* Hide the extra “Become a Member” link inside the left card */
.wim-card--login a[href*="user-registration"] {
  display: none !important;
}

/* === 3) RIGHT: CTA card === */
.wim-card--cta {
  padding-top: 0;
}

.wim-cta-panel {
  background: linear-gradient(180deg, #F4862F 0%, #EE973E 100%);
  border-radius: 14px;
  box-shadow: 0 10px 22px rgba(0, 0, 0, .28);
  padding: 24px 20px;
  display: grid;
  gap: 22px;
  align-content: start;
}

.wim-cta-sub {
  color: #fff;
  font-weight: 800;
  text-align: center;
}

/* Gutenberg button inside the CTA panel */
.wim-cta-panel .wp-block-button__link {
  background: #2B3189;
  color: #fff;
  border-radius: 12px;
  padding: 14px 28px;
  font-weight: 800;
  box-shadow: 0 6px 14px rgba(0, 0, 0, .25);
}

/* ORANGE-GUTTER VERSION (no big white inner box) */

/* Left card look */
.wim-card--login {
  background: linear-gradient(180deg, #F4862F 0%, #EE973E 100%);
  border-radius: 14px;
  box-shadow: 0 10px 22px rgba(0, 0, 0, .28);
  padding: 18px 18px 20px;
}

/* 1) Kill any white backgrounds/panels around fields */
.wim-card--login #loginform {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
}

/* make every wrapper transparent (keep inputs & labels intact) */
.wim-card--login #loginform p,
.wim-card--login #loginform div:not(.submit):not(.forgetmenot) {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
  margin: 0 0 14px !important;
  /* this creates the orange gap */
}

/* 2) Labels */
.wim-card--login #loginform label {
  color: #2B3189;
  font-weight: 800;
  display: inline-block;
  margin: 6px 0 6px;
}

/* 3) Inputs: the only white things */
.wim-card--login #loginform input[type="text"],
.wim-card--login #loginform input[type="password"] {
  width: 100%;
  height: 52px;
  border: 0;
  border-radius: 12px;
  padding: 12px 14px;
  background: #fff !important;
  box-shadow: inset 0 1px 0 rgba(0, 0, 0, .06);
  font-size: 18px;
  margin: 0 0 10px;
  /* small gap under each input */
}

/* 4) Remember + Forgot row (left/right like comp) */
.wim-card--login #loginform .forgetmenot {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 6px 0 0 !important;
}

.wim-card--login #loginform .forgetmenot+p {
  margin: -26px 0 0 !important;
  /* pulls “Forgot” up to same row */
  text-align: right;
}

.wim-card--login #loginform .forgetmenot input[type="checkbox"] {
  width: 20px;
  height: 20px;
  accent-color: #2B3189;
}

/* 5) Primary button centered */
.wim-card--login #loginform p.submit {
  text-align: center !important;
  margin: 16px 0 0 !important;
}

.wim-card--login #loginform p.submit input[type="submit"] {
  background: #2B3189;
  color: #fff;
  border: 0;
  border-radius: 12px;
  padding: 14px 42px;
  font-weight: 800;
  box-shadow: 0 6px 14px rgba(0, 0, 0, .25);
}

/* 6) Hide the extra “Become a Member” link inside the left card */
.wim-card--login a[href*="user-registration"] {
  display: none !important;
}



/* --- HARD RESET INSIDE LEFT ORANGE CARD --- */

/* 0) Ensure the entire left column is the orange card */
.wim-card--login {
  background: linear-gradient(180deg, #F4862F 0%, #EE973E 100%);
  border-radius: 14px;
  box-shadow: 0 10px 22px rgba(0, 0, 0, .28);
  padding: 22px;
  position: relative;
}

/* 1) Inside the left card, make EVERY wrapper transparent */
.wim-card--login :where(form, div, p, section, article, header, footer) {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  outline: 0 !important;
}

/* Some themes put bg on .wp-block-group or .login-wrap */
.wim-card--login :is(.wp-block-group, .login, .login-wrap, .card, .panel) {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

/* 2) Keep labels styled */
.wim-card--login label {
  color: #2B3189 !important;
  font-weight: 800;
  display: inline-block;
  margin: 6px 0 6px;
}

/* 3) Inputs are the ONLY white elements */
.wim-card--login input[type="text"],
.wim-card--login input[type="password"],
.wim-card--login input[type="email"] {
  background: #fff !important;
  color: #000;
  width: 100%;
  height: 52px;
  border: 0;
  border-radius: 12px;
  padding: 12px 14px;
  font-size: 18px;
  box-shadow: inset 0 1px 0 rgba(0, 0, 0, .06);
  margin: 0 0 12px !important;
  /* orange gap between fields */
}

/* 4) “Remember me” + “Forgot” on one line */
.wim-card--login .forgetmenot {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 6px 0 0 !important;
}

.wim-card--login .forgetmenot+p {
  margin: -26px 0 0 !important;
  text-align: right;
}

.wim-card--login .forgetmenot input[type="checkbox"] {
  width: 20px;
  height: 20px;
  accent-color: #2B3189;
}

/* 5) Submit button centered and styled */
.wim-card--login p.submit {
  text-align: center !important;
  margin: 16px 0 0 !important;
}

.wim-card--login p.submit input[type="submit"] {
  background: #2B3189;
  color: #fff;
  border: 0;
  border-radius: 12px;
  padding: 14px 42px;
  font-weight: 800;
  box-shadow: 0 6px 14px rgba(0, 0, 0, .25);
}

/* 6) Hide the extra “Become a Member” link inside the left card (we have the right CTA) */
.wim-card--login a[href*="user-registration"] {
  display: none !important;
}

/* Field sizes, login fields */

/* Slimmer login inputs */
.wim-card--login #loginform input[type="text"],
.wim-card--login #loginform input[type="password"],
.wim-card--login #loginform input[type="email"] {
  height: 14px;
  /* was ~52px */
  padding: 10px 12px;
  /* tighten inner padding */
  font-size: 16px;
  /* was 18px */
  border-radius: 10px;
  /* optional: slightly less pill-y */
}


/* Columns in form 2 */
/* Put the 3 Section fields side-by-side on desktop (Form ID 2) */
.frm_form_2 .wim-col-left,
.frm_form_2 .wim-col-mid,
.frm_form_2 .wim-col-right {
  display: block;
  width: 100%;
  box-sizing: border-box;
  vertical-align: top;
}

@media (min-width: 980px) {

  /* remove inline-block gaps for this form only */
  .frm_form_2 .frm_fields {
    font-size: 0;
  }

  .frm_form_2 .wim-col-left,
  .frm_form_2 .wim-col-mid,
  .frm_form_2 .wim-col-right {
    display: inline-block;
    width: 33.3333%;
    font-size: 16px;
    /* restore normal text size for children */
    vertical-align: top;
  }

  /* optional inner spacing between columns */
  .frm_form_2 .wim-col-left {
    padding-right: 12px;
  }

  .frm_form_2 .wim-col-mid {
    padding: 0 6px;
  }

  .frm_form_2 .wim-col-right {
    padding-left: 12px;
  }
}

/* Keep gaps tidy under each input (optional) */
.wim-card--login #loginform input[type="text"],
.wim-card--login #loginform input[type="password"] {
  margin-bottom: 8px;
  /* was 10–12px */
}


/* align forgpt password on login page */

/* Put "Remember me" (left) and "Forgot your password?" (right) on one row */
.wim-card--login #loginform .forgetmenot {
  float: left;
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 8px 0 0 !important;
}

.wim-card--login #loginform .forgetmenot+p {
  float: right;
  margin: 8px 0 0 !important;
  text-align: right;
}

.wim-card--login #loginform .forgetmenot+p a {
  color: #2B3189;
  text-decoration: underline;
  font-weight: 700;
}

/* Make sure the Login button starts on a new line below them */
.wim-card--login #loginform p.submit {
  clear: both;
  margin-top: 16px !important;
}

/* Mobile: stack neatly */
@media (max-width: 600px) {

  .wim-card--login #loginform .forgetmenot,
  .wim-card--login #loginform .forgetmenot+p {
    float: none;
    display: block;
    text-align: left;
    margin: 6px 0 !important;
  }

  .wim-card--login #loginform p.submit {
    margin-top: 10px !important;
  }
}

/* One-row layout: "Remember me" (left) + "Forgot your password?" (right) */
.wim-card--login #loginform .forgetmenot {
  display: inline-flex !important;
  /* checkbox + label */
  align-items: center;
  gap: 8px;
  width: 50%;
  margin: 8px 0 0 !important;
  vertical-align: middle;
}

.wim-card--login #loginform .forgetmenot+p {
  display: inline-block !important;
  /* the paragraph that holds the link */
  width: 50%;
  margin: 8px 0 0 !important;
  text-align: right;
  vertical-align: middle;
}

.wim-card--login #loginform .forgetmenot+p a {
  color: #2B3189;
  text-decoration: underline;
  font-weight: 700;
}

/* Ensure the Login button sits on the next line */
.wim-card--login #loginform p.submit {
  display: block !important;
  clear: both;
  /* harmless if no floats, ensures new line */
  margin-top: 16px !important;
}

/* Mobile: stack neatly */
@media (max-width: 600px) {

  .wim-card--login #loginform .forgetmenot,
  .wim-card--login #loginform .forgetmenot+p {
    display: block !important;
    width: 100%;
    text-align: left;
    margin: 6px 0 !important;
  }

  .wim-card--login #loginform p.submit {
    margin-top: 10px !important;
  }
}


/* Join and register button spacer */

/* Tighten space between "Want to join WIM?" and the Register button */
.wim-cta-panel {
  gap: 1px;
  /* overall spacing inside the orange panel */
}

.wim-cta-panel .wim-cta-sub {
  margin: 0 0 6px !important;
  /* reduce paragraph bottom margin */
}

.wim-cta-panel .wp-block-button {
  margin: 0 !important;
  /* remove Gutenberg’s default block gap */
}



.wim-cta-panel {
  justify-items: center;
}

.wim-cta-panel .wim-cta-sub {
  --cta-nudge-x: 4px;
  /* change this number to taste */
  transform: translateX(var(--cta-nudge-x));
}


/* Make login button blue */
/* Style the Log In button on your custom login card */
#loginform #wp-submit {
  background: #2B3189 !important;
  /* WIM blue */
  color: #fff !important;
  border: 0 !important;
  border-radius: 12px !important;
  padding: 12px 36px !important;
  font-weight: 800 !important;
  box-shadow: 0 6px 14px rgba(0, 0, 0, .25) !important;
  cursor: pointer !important;
}

#loginform #wp-submit:hover {
  transform: translateY(-1px);
}

/* Sign up text box */
.frm_form_2 .wim-col-right .wim-subhead+.frm_form_field {
  background: rgba(255, 255, 255, 0.08);
  border: 1px solid rgba(255, 255, 255, 0.18);
  border-radius: 12px;
  padding: 12px;
  margin-top: 6px;
}

.frm_form_2 .wim-col-right .wim-subhead+.frm_form_field textarea {
  min-height: 140px;
  resize: vertical;
  background: #fff;
  color: #111;
  border: 1px solid rgba(0, 0, 0, .15);
  border-radius: 8px;
  padding: 10px 12px;
}


/* City state on form 2 */
/* enforce half/half for City + State in the left column (Form ID 2) */
.frm_form_2 .wim-col-left .frm_first_half,
.frm_form_2 .wim-col-left .frm_last_half {
  display: inline-block;
  width: 50%;
  vertical-align: top;
}

.frm_form_2 .wim-col-left .frm_first_half {
  padding-right: 10px;
}

@media (max-width:900px) {

  .frm_form_2 .wim-col-left .frm_first_half,
  .frm_form_2 .wim-col-left .frm_last_half {
    width: 100%;
    padding-right: 0;
  }
}

/* more column stuff */
/* === 3 columns for Form 2 === */
@media (min-width: 980px) {

  /* Turn the form's direct children into a flex row */
  .frm_form_2 .frm_fields {
    display: flex;
    flex-wrap: nowrap;
    gap: 12px;
  }

  /* Only the three Section fields become columns */
  .frm_form_2 .frm_fields>.frm_form_field.frm_section_heading.wim-col-left,
  .frm_form_2 .frm_fields>.frm_form_field.frm_section_heading.wim-col-mid,
  .frm_form_2 .frm_fields>.frm_form_field.frm_section_heading.wim-col-right {
    flex: 1 1 0;
    /* equal widths */
    min-width: 0;
    /* prevent overflow */
  }
}

/* Mobile/tablet: stack naturally */
@media (max-width: 979px) {
  .frm_form_2 .frm_fields {
    display: block;
  }
}


/* Form 2: lock Name/Email 50/50 and make inputs fill their halves */
.frm_form_2 .wim-col-left .frm_first_half,
.frm_form_2 .wim-col-left .frm_last_half {
  display: inline-block;
  width: 50%;
  vertical-align: top;
}

.frm_form_2 .wim-col-left .frm_first_half {
  padding-right: 10px;
}

/* Start a new row when a field has frm_clear (e.g., Phone, City when needed) */
.frm_form_2 .wim-col-left .frm_clear {
  display: block;
  width: 100%;
  clear: both;
}

/* Ensure inputs actually span their containers (defeats theme max-widths) */


/* ===== Form 2: Partner Information section (Section field ID 185) ===== */
.frm_form_2 #frm_field_185_container {
  background: rgba(0, 0, 0, .18) !important;
  border: 1px solid rgba(255, 255, 255, .18) !important;
  border-radius: 12px !important;
  padding: 16px 18px 18px !important;
  box-sizing: border-box;
}

/* Section heading like the mock (orange, uppercase) */
.frm_form_2 #frm_field_185_container>.frm_section_title {
  font-size: 34px !important;
  line-height: 1.05 !important;
  font-weight: 800 !important;
  color: #ff8b32 !important;
  letter-spacing: 1px !important;
  text-transform: uppercase !important;
  margin: 2px 0 8px !important;
}

/* The explanatory paragraph box */
.frm_form_2 #frm_field_185_container .partner-note {
  font-size: 15px !important;
  line-height: 1.35 !important;
  color: #f6f6f6 !important;
  background: rgba(0, 0, 0, .28) !important;
  border: 1px solid rgba(255, 255, 255, .2) !important;
  border-radius: 10px !important;
  padding: 10px 12px !important;
  margin: 8px 0 14px !important;
}

/* Labels and inputs inside the Partner section */
.frm_form_2 #frm_field_185_container .frm_primary_label {
  color: #fff !important;
  margin-bottom: 4px !important;
}

.frm_form_2 #frm_field_185_container input[type="text"],
.frm_form_2 #frm_field_185_container input[type="url"],
.frm_form_2 #frm_field_185_container input[type="date"],
.frm_form_2 #frm_field_185_container textarea,
.frm_form_2 #frm_field_185_container select {
  background: #fff !important;
  color: #111 !important;
  border: 1px solid rgba(0, 0, 0, .15) !important;
  border-radius: 8px !important;
  padding: 8px 10px !important;
  min-height: 36px !important;
  width: 100% !important;
}

/* Tighter vertical rhythm */
.frm_form_2 #frm_field_185_container .frm_form_field {
  margin-bottom: 12px !important;
}

/* Optional: make Spouse/Partner Name + Date 50/50 on one row */
@media (min-width:900px) {

  .frm_form_2 #frm_field_185_container .wim-half-left,
  .frm_form_2 #frm_field_185_container .wim-half-right {
    display: inline-block !important;
    width: 50% !important;
    vertical-align: top !important;
    box-sizing: border-box !important;
  }

  .frm_form_2 #frm_field_185_container .wim-half-left {
    padding-right: 10px !important;
  }
}

.frm_form_2 .wim-col-left .frm_form_field input,
.frm_form_2 .wim-col-left .frm_form_field select,
.frm_form_2 .wim-col-left .frm_form_field textarea {
  width: 100% !important;
  max-width: 100% !important;
}


/* ==== Form 2: Personal Information exact layout ==== */
/* Name (182) + Email (189) side-by-side */
.frm_form_2 #frm_field_182_container,
.frm_form_2 #frm_field_189_container {
  display: inline-block;
  width: 50%;
  vertical-align: top;
  box-sizing: border-box;
}

.frm_form_2 #frm_field_182_container {
  padding-right: 10px;
}

/* Name */

/* Make the inputs span their containers */
.frm_form_2 #frm_field_182_container input,
.frm_form_2 #frm_field_189_container input,
.frm_form_2 #frm_field_10_container input,
.frm_form_2 #frm_field_11_container input,
.frm_form_2 #frm_field_11_container textarea,
.frm_form_2 #frm_field_10_container textarea {
  width: 100% !important;
  max-width: 100% !important;
}

/* Phone (10) full width on its own row */
.frm_form_2 #frm_field_10_container {
  display: block;
  width: 100%;
  clear: both;
  /* force new row after Name/Email */
}

/* City (11) full width under Phone */
.frm_form_2 #frm_field_11_container {
  display: block;
  width: 100%;


  /* Form 2 — make the Partner note text white (and any children) */
  .frm_form_2 .partner-note,
  .frm_form_2 .partner-note p,
  .frm_form_2 .partner-note a,
  .frm_form_2 .partner-note li {
    color: #fff !important;
  }

  .frm_form_2 #frm_field_185_container .partner-note,
  .frm_form_2 #frm_field_185_container .partner-note * {
    color: #fff !important;
  }

  .frm_form_2 #frm_field_185_container .partner-note,
  .frm_form_2 #frm_field_185_container .partner-note * {
    color: #fff !important;
  }

  .frm_form_2 #frm_field_185_container .partner-note,
  .frm_form_2 #frm_field_185_container .partner-note * {
    color: #fff !important;
  }

}

/* Stack nicely on mobile */
@media (max-width:900px) {

  .frm_form_2 #frm_field_182_container,
  .frm_form_2 #frm_field_189_container {
    width: 100%;
    padding-right: 0;
  }
}

/* ---- Form 2: Name wider than Email ---- */
/* row: Name (182) + Email (189) */
.frm_form_2 #frm_field_182_container,
.frm_form_2 #frm_field_189_container {
  display: inline-block;
  vertical-align: top;
  box-sizing: border-box;
}

/* Make Name ~40% and Email ~60% with a small gutter */
.frm_form_2 #frm_field_182_container {
  width: 40%;
  padding-right: 10px;
}

.frm_form_2 #frm_field_189_container {
  width: 60%;
}

/* Ensure inputs fill their containers even if field size was "Small" */
.frm_form_2 #frm_field_182_container input,
.frm_form_2 #frm_field_189_container input {
  width: 100% !important;
  max-width: 100% !important;
}

/* Next rows full width */
.frm_form_2 #frm_field_10_container,
/* Phone */
.frm_form_2 #frm_field_11_container {
  /* City  */
  display: block;
  width: 100%;
  clear: both;
}

/* Stack on mobile */
@media (max-width:900px) {

  .frm_form_2 #frm_field_182_container,
  .frm_form_2 #frm_field_189_container {
    width: 100%;
    padding-right: 0;
  }
}

/* ---- Form 2: Name wider than Email ---- */
/* row: Name (182) + Email (189) */
.frm_form_2 #frm_field_182_container,
.frm_form_2 #frm_field_189_container {
  display: inline-block;
  vertical-align: top;
  box-sizing: border-box;
}

/* Make Name ~40% and Email ~60% with a small gutter */
.frm_form_2 #frm_field_182_container {
  width: 40%;
  padding-right: 10px;
}

.frm_form_2 #frm_field_189_container {
  width: 60%;
}

/* Ensure inputs fill their containers even if field size was "Small" */
.frm_form_2 #frm_field_182_container input,
.frm_form_2 #frm_field_189_container input {
  width: 100% !important;
  max-width: 100% !important;
}

/* Next rows full width */
.frm_form_2 #frm_field_10_container,
/* Phone */
.frm_form_2 #frm_field_11_container {
  /* City  */
  display: block;
  width: 100%;
  clear: both;
}

/* Stack on mobile */
@media (max-width:900px) {

  .frm_form_2 #frm_field_182_container,
  .frm_form_2 #frm_field_189_container {
    width: 100%;
    padding-right: 0;
  }
}


/* middle column form 2 */

/* === Partner column (middle) === */
.frm_form_2 .wim-col-mid {
  background: rgba(0, 0, 0, .18);
  border: 1px solid rgba(255, 255, 255, .18);
  border-radius: 12px;
  padding: 16px 18px 18px;
}

/* Heading + paragraph */
.frm_form_2 .wim-col-mid>.frm_section_title {
  font-size: 34px;
  font-weight: 800;
  color: #ff8b32;
  letter-spacing: 1px;
  text-transform: uppercase;
  margin: 2px 0 8px;
}

.frm_form_2 .wim-col-mid .partner-note {
  font-size: 15px;
  line-height: 1.35;
  color: #f6f6f6;
  background: rgba(0, 0, 0, .28);
  border: 1px solid rgba(255, 255, 255, .2);
  border-radius: 10px;
  padding: 10px 12px;
  margin: 8px 0 14px;
}

/* Labels + inputs */
.frm_form_2 .wim-col-mid .frm_primary_label {
  color: #fff;
  margin-bottom: 4px;
}

.frm_form_2 .wim-col-mid input[type="text"],
.frm_form_2 .wim-col-mid input[type="url"],
.frm_form_2 .wim-col-mid input[type="date"],
.frm_form_2 .wim-col-mid textarea,
.frm_form_2 .wim-col-mid select {
  background: #fff;
  color: #111;
  border: 1px solid rgba(0, 0, 0, .15);
  border-radius: 8px;
  padding: 8px 10px;
  min-height: 36px;
  width: 100%;
}

/* File upload area */
.frm_form_2 .wim-col-mid input[type="file"] {
  background: transparent;
  padding: 6px 0;
}

/* reduce vertical gaps between fields */
.frm_form_2 .wim-col-mid .frm_form_field {
  margin-bottom: 12px;
}


/* Partner section: make the explanatory HTML note align and span full width */
.frm_form_2 #frm_field_185_container .frm_form_field.frm_html {
  margin: 0 0 14px 0 !important;
  /* tidy gap below the note */
}

.frm_form_2 #frm_field_185_container .partner-note {
  display: block !important;
  width: 100% !important;
  /* same width as inputs */
  max-width: 100% !important;
  margin: 0 0 12px 0 !important;
  /* no indent; lines up with inputs */
  color: #fff !important;
  /* white text */
  background: transparent !important;
  /* remove any background tint */
  padding: 0 !important;
  /* no extra inset */
  line-height: 1.35 !important;
  font-size: 15px !important;
}

/* Ensure the inputs in this section keep full width too (belt & suspenders) */
.frm_form_2 #frm_field_185_container input,
.frm_form_2 #frm_field_185_container select,
.frm_form_2 #frm_field_185_container textarea {
  width: 100% !important;
  max-width: 100% !important;
}


/* Make the partner note white inside the Partner section (ID 185) */
.frm_form_2 #frm_field_185_container .partner-note {
  color: #fff !important;
}


/* Form 2: make all Section headings orange */
.frm_form_2 .frm_section_heading>.frm_section_title {
  color: #ff8b32;
  /* WIM orange */
  font-weight: 800;

  /* Form 2 — make all Section titles orange (robust) */
  .frm_form_2 .frm_form_field.frm_section_heading>.frm_section_title,
  .frm_form_2 .wim-col-left>.frm_section_title,
  .frm_form_2 .wim-col-mid>.frm_section_title,
  .frm_form_2 .wim-col-right>.frm_section_title {
    color: #ff8b32 !important;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 1px;
    margin: 2px 0 10px;
  }

  text-transform:uppercase;
  letter-spacing:1px;
  margin:2px 0 10px;
}

/* Form 2 — make all Section titles orange (robust) */
.frm_form_2 .frm_form_field.frm_section_heading>.frm_section_title,
.frm_form_2 .wim-col-left>.frm_section_title,
.frm_form_2 .wim-col-mid>.frm_section_title,
.frm_form_2 .wim-col-right>.frm_section_title {
  color: #ff8b32 !important;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 1px;
  margin: 2px 0 10px;
}

/* Per-section fallback */
.frm_form_2 #frm_field_XXX_container>.frm_section_title,
.frm_form_2 #frm_field_185_container>.frm_section_title,
.frm_form_2 #frm_field_YYY_container>.frm_section_title {
  color: #ff8b32 !important;
}


/* Form 2 — force orange section titles by exact Section IDs */
.frm_form_2 #frm_field_183_container>.frm_section_title,
.frm_form_2 #frm_field_185_container>.frm_section_title,
.frm_form_2 #frm_field_187_container>.frm_section_title,
.frm_form_2 #frm_field_183_container .frm_section_heading>.frm_section_title,
.frm_form_2 #frm_field_185_container .frm_section_heading>.frm_section_title,
.frm_form_2 #frm_field_187_container .frm_section_heading>.frm_section_title {
  color: #ff8b32 !important;
  font-weight: 800 !important;
  text-transform: uppercase !important;
  letter-spacing: 1px !important;
  margin: 2px 0 10px !important;
}


/* WIM orange section headings (IDs 244, 185, 187) */
body .frm_forms .frm_form_fields #frm_field_244_container :is(h2, h3, legend),
body .frm_forms .frm_form_fields #frm_field_185_container :is(h2, h3, legend),
body .frm_forms .frm_form_fields #frm_field_187_container :is(h2, h3, legend) {
  color: #F4862F !important;
  /* WIM orange */
  font-size: 1.5rem !important;
  /* ≈24px; bump up/down as you like */
  line-height: 1.2 !important;
  /* keeps it tight */
  font-weight: 700;
  /* optional: make it bold */
}

/* Comment window */
/* shrink the gap under the comments field */
.wim-window {
  margin-bottom: 6px !important;
  /* try 0–12px */
}



/* ALIGN RIGHT: works if class is on the row OR a parent */
.wim-submit-right.frm_submit,
.wim-submit-right .frm_submit {
  display: flex !important;
  justify-content: flex-end !important;
  text-align: right !important;
}

/* MOVE UP: works either way */
.wim-register-btn.frm_submit,
.wim-register-btn .frm_submit {
  margin-top: -14px !important;
  /* tweak -6 to -20 */
  margin-bottom: 0 !important;
}

/* ORANGE BUTTON: cover both input and button elements, any nesting */
.wim-register-btn.frm_submit input[type="submit"],
.wim-register-btn .frm_submit input[type="submit"],
.wim-register-btn input[type="submit"],
.wim-register-btn.frm_submit button,
.wim-register-btn .frm_submit button,
.wim-register-btn button,
.wim-register-btn.frm_submit .frm_button_submit,
.wim-register-btn .frm_button_submit {
  background: #F4862F !important;
  /* WIM orange */
  color: #fff !important;
  border: none !important;
  border-radius: 14px !important;
  padding: 12px 28px !important;
  font-weight: 700 !important;
  letter-spacing: .04em !important;
  box-shadow: 0 6px 14px rgba(0, 0, 0, .15) !important;
  transition: transform .06s ease, box-shadow .12s ease, background .12s ease;
}


/* Register Button sigh up form */

/* keep it right-aligned */
.wim-submit-right.frm_submit {
  display: flex !important;
  justify-content: flex-end !important;
}

/* move the submit row upward */
.wim-register-btn.frm_submit {
  margin-top: -22px !important;
  /* tweak: -16 to -30 as needed */
  margin-bottom: 0 !important;
}

/* make the button larger */
.wim-register-btn.frm_submit input[type="submit"],
.wim-register-btn.frm_submit button,
.wim-register-btn.frm_submit .frm_button_submit {
  background: #F4862F !important;
  color: #fff !important;
  border: none !important;
  border-radius: 16px !important;
  padding: 36px 56px !important;
  /* bigger */
  font-size: clamp(1rem, 0.9rem + 0.4vw, 1.25rem) !important;
  /* scales up a touch */
  font-weight: 700 !important;
  letter-spacing: .04em !important;
  box-shadow: 0 8px 18px rgba(0, 0, 0, .18) !important;
  transition: transform .06s ease, box-shadow .12s ease, background .12s ease;
}

/* hover/focus – keep it punchy */
.wim-register-btn.frm_submit input[type="submit"]:hover,
.wim-register-btn.frm_submit button:hover {
  background: #e67923 !important;
  transform: translateY(-1px);
  box-shadow: 0 10px 22px rgba(0, 0, 0, .20) !important;
}

.wim-register-btn.frm_submit input[type="submit"]:focus,
.wim-register-btn.frm_submit button:focus {
  outline: 2px solid #F4862F;
  outline-offset: 2px;
}

/* HOVER/FOCUS */
.wim-register-btn input[type="submit"]:hover,
.wim-register-btn button:hover,
.wim-register-btn .frm_button_submit:hover {
  background: #e67923 !important;
  transform: translateY(-1px);
  box-shadow: 0 8px 18px rgba(0, 0, 0, .18) !important;
}

.wim-register-btn input[type="submit"]:focus,
.wim-register-btn button:focus,
.wim-register-btn .frm_button_submit:focus {
  outline: 2px solid #F4862F !important;
  outline-offset: 2px;
}


/* upload button stuff */

/* 1) Visually hide the real input but keep it accessible/clickable via JS */
#wim-form-wrapper #field_212 {
  position: absolute !important;
  left: -9999px !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
  clip: rect(1px, 1px, 1px, 1px) !important;
  white-space: nowrap !important;
}

/* Optional: a wrapper on your form to scope styles (add id="wim-form-wrapper" to the page container if you like) */
.wim-upload-ui {
  margin: 4px 0 8px;
}

.wim-upload-label {
  display: block;
  color: #fff;
  font-weight: 700;
  margin: 0 0 6px;
}

.wim-upload-row {
  display: flex;
  align-items: center;
  gap: 10px;
}

/* Your orange button */
.wim-file-btn {
  background: #F4862F;
  color: #fff;
  border: none;
  border-radius: 12px;
  padding: 8px 16px;
  font-weight: 700;
  letter-spacing: .02em;
  cursor: pointer;
  box-shadow: 0 4px 10px rgba(0, 0, 0, .12);
  transition: transform .06s ease, box-shadow .12s ease, background .12s ease;
}

.wim-file-btn:hover {
  background: #e67923;
  transform: translateY(-1px);
  box-shadow: 0 6px 14px rgba(0, 0, 0, .16);
}

/* Filename text */
.wim-file-name {
  color: #2B3189;
  font-weight: 600;
}


/* Visually hide native file input but keep it on the page */
.wim-upload input[type="file"] {
  position: absolute !important;
  left: -9999px !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
  clip: rect(1px, 1px, 1px, 1px) !important;
  white-space: nowrap !important;
}

/* Upload UI layout */
.wim-upload .wim-upload-ui {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 4px 0 8px;
}

/* Orange button */
.wim-upload .wim-file-btn {
  background: #F4862F;
  color: #fff;
  border: none;
  border-radius: 12px;
  padding: 8px 16px;
  font-weight: 700;
  letter-spacing: .02em;
  cursor: pointer;
  box-shadow: 0 4px 10px rgba(0, 0, 0, .12);
  transition: transform .06s ease, box-shadow .12s ease, background .12s ease;
}

.wim-upload .wim-file-btn:hover {
  background: #e67923;
  transform: translateY(-1px);
  box-shadow: 0 6px 14px rgba(0, 0, 0, .16);
}

/* Filename text */
.wim-upload .wim-file-name {
  color: #2B3189;
  /* brand navy */
  font-weight: 600;
}


/* Hide the native input but keep it accessible */
.wim-upload input[type="file"] {
  position: absolute !important;
  left: -9999px !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
  clip: rect(1px, 1px, 1px, 1px) !important;
  white-space: nowrap !important;
}

/* The “window” shell */
.wim-upload .wim-upload-window {
  border: 2px dashed rgba(255, 255, 255, .75);
  background: rgba(255, 255, 255, .12);
  border-radius: 12px;
  padding: 12px;
  cursor: pointer;
  margin: 6px 0 10px;
}

.wim-upload .wim-upload-window:focus {
  outline: 2px solid #F4862F;
  outline-offset: 2px;
}

/* Contents */
.wim-upload .wim-upload-window-inner {
  display: flex;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
}

.wim-upload .wim-file-btn {
  background: #F4862F;
  color: #fff;
  border: none;
  border-radius: 12px;
  padding: 8px 16px;
  font-weight: 700;
  letter-spacing: .02em;
  cursor: pointer;
  box-shadow: 0 4px 10px rgba(0, 0, 0, .12);
  transition: transform .06s, box-shadow .12s, background .12s;
}

.wim-upload .wim-file-btn:hover {
  background: #e67923;
  transform: translateY(-1px);
  box-shadow: 0 6px 14px rgba(0, 0, 0, .16);
}

.wim-upload .wim-file-help {
  color: #fff;
  opacity: .9;
  font-weight: 600;
}

.wim-upload .wim-file-name {
  color: #2B3189;
  font-weight: 700;
  background: #fff;
  padding: 4px 8px;
  border-radius: 8px;
}


/* Hide Formidable's built-in dropzone + helper text inside this field */
.wim-upload .frm_dropzone,
.wim-upload .dz-default.dz-message,
.wim-upload .frm_upload_text,
/* the “Maximum file size: …” line */
.wim-upload .frm_upload_icon {
  display: none !important;
}

/* Remove any leftover box styling Formidable adds */
.wim-upload .frm_upload_container {
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  padding: 0 !important;
  margin: 0 !important;
}



/* Make all form input text visible (brand navy on white) */
.frm_forms input[type="text"],
.frm_forms input[type="email"],
.frm_forms input[type="url"],
.frm_forms input[type="password"],
.frm_forms input[type="tel"],
.frm_forms select,
.frm_forms textarea {
  color: #2B3189 !important;
  /* WIM navy */
  -webkit-text-fill-color: #2B3189 !important;
  /* Safari/autofill */
  background: #fff !important;
  mix-blend-mode: normal !important;
}

/* Placeholder color (subtle) */
.frm_forms input::placeholder,
.frm_forms textarea::placeholder {
  color: #8b91a5 !important;
}

/* Keep autofill readable on Safari/Chrome */
.frm_forms input:-webkit-autofill {
  -webkit-box-shadow: 0 0 0 1000px #fff inset !important;
  -webkit-text-fill-color: #2B3189 !important;
}


/* Remove any separator/line above Section headings in Formidable */
.frm_forms fieldset {
  border: 0 !important;
}

/* fieldset frame */
.frm_forms .frm_section_heading::before,
.frm_forms .frm_section_heading::after {
  content: none !important;
}

/* pseudo-line styles */
.frm_forms .frm_form_field.frm_section,
.frm_forms .frm_section_spacing {
  border-top: 0 !important;
}

/* theme/style borders */

/* Also hide any hr / WP separators that might be inside the form */
.frm_forms hr,
.frm_forms .wp-block-separator {
  display: none !important;
}



/* keep it right-aligned */
.wim-submit-right.frm_submit {
  display: flex !important;
  justify-content: flex-end !important;
}

/* move the submit row upward */
.wim-register-btn.frm_submit {
  margin-top: -30px !important;
  /* tweak: -16 to -30 as needed */
  margin-bottom: 0 !important;
}

/* make the button larger */
.wim-register-btn.frm_submit input[type="submit"],
.wim-register-btn.frm_submit button,
.wim-register-btn.frm_submit .frm_button_submit {
  background: #F4862F !important;
  color: #fff !important;
  border: none !important;
  border-radius: 16px !important;
  padding: 16px 36px !important;
  /* bigger */
  font-size: clamp(1rem, 0.9rem + 0.4vw, 1.25rem) !important;
  /* scales up a touch */
  font-weight: 700 !important;
  letter-spacing: .04em !important;
  box-shadow: 0 8px 18px rgba(0, 0, 0, .18) !important;
  transition: transform .06s ease, box-shadow .12s ease, background .12s ease;
}

/* hover/focus – keep it punchy */
.wim-register-btn.frm_submit input[type="submit"]:hover,
.wim-register-btn.frm_submit button:hover {
  background: #e67923 !important;
  transform: translateY(-1px);
  box-shadow: 0 10px 22px rgba(0, 0, 0, .20) !important;
}

.wim-register-btn.frm_submit input[type="submit"]:focus,
.wim-register-btn.frm_submit button:focus {
  outline: 2px solid #F4862F;
  outline-offset: 2px;
}


/* === Move REGISTER up + make it bigger (Form ID 2) === */
#frm_form_2_container .frm_submit {
  display: flex !important;
  justify-content: flex-end !important;
  /* keep right */
  margin-top: -70px !important;
  /* move up; tweak -16 to -36 */
  margin-bottom: 0 !important;
  padding-top: 0 !important;
}

/* Enlarge the button */
#frm_form_2_container .frm_submit input[type="submit"],
#frm_form_2_container .frm_submit button {
  background: #F4862F !important;
  color: #fff !important;
  border: none !important;
  border-radius: 16px !important;
  padding: 16px 36px !important;
  /* bigger */
  font-size: clamp(1rem, 0.9rem + 0.4vw, 1.25rem) !important;
  font-weight: 700 !important;
  letter-spacing: .04em !important;
  box-shadow: 0 8px 18px rgba(0, 0, 0, .18) !important;
  transform: translateY(-2px);
  /* tiny lift */
}

/* Hover/focus */
#frm_form_2_container .frm_submit input[type="submit"]:hover,
#frm_form_2_container .frm_submit button:hover {
  background: #e67923 !important;
  transform: translateY(-3px);
  box-shadow: 0 10px 22px rgba(0, 0, 0, .20) !important;
}

#frm_form_2_container .frm_submit input[type="submit"]:focus,
#frm_form_2_container .frm_submit button:focus {
  outline: 2px solid #F4862F;
  outline-offset: 2px;
}


/* Temp home page fix */
/* shrink header height + remove stray spacing */
header.wp-block-template-part .wp-block-group {
  padding-top: 10px !important;
  padding-bottom: 10px !important;
  margin: 0 !important;
}

/* let the main area span full width instead of a narrow column */
.wp-site-blocks>main,
.wp-block-post-content {
  max-width: none !important;
}

/* if a parent Group is forcing "constrained" width, unlock it */
main .wp-block-group.is-layout-constrained {
  max-width: none !important;
  width: 100% !important;
}

/* optional: ensure inner blocks aren’t being clamped */
main .wp-block-group {
  box-sizing: border-box;
}


/* CSS for forgot password */
/* Centered auth card */
.wim-auth-card {
  max-width: 560px;
  margin: 64px auto;
  padding: 24px 24px 28px;
  background: rgba(255, 255, 255, .96);
  border-radius: 16px;
  box-shadow: 0 16px 40px rgba(0, 0, 0, .24);
}

/* Trim inner gaps */
.wim-auth-card>*:first-child {
  margin-top: 0 !important;
}

.wim-auth-card>*:last-child {
  margin-bottom: 0 !important;
}

/* Inputs */
.wim-auth-card input[type="email"],
.wim-auth-card input[type="text"],
.wim-auth-card input[type="password"] {
  width: 100%;
  height: 48px;
  padding: 10px 14px;
  border-radius: 12px;
  border: 1px solid #d9dce6;
  background: #fff;
  color: #2B3189;
  -webkit-text-fill-color: #2B3189;
  box-shadow: inset 0 1px 2px rgba(0, 0, 0, .04);
}

/* Labels/help text */
.wim-auth-card label {
  color: #2B3189;
  font-weight: 700;
}

.wim-auth-card .description,
.wim-auth-card .hint,
.wim-auth-card .help-text {
  color: #5e6580;
}

/* Button (WIM orange) */
.wim-auth-card .button,
.wim-auth-card button,
.wim-auth-card input[type="submit"] {
  background: #F4862F !important;
  color: #fff !important;
  border: none !important;
  border-radius: 14px !important;
  padding: 12px 22px !important;
  font-weight: 800 !important;
  box-shadow: 0 8px 18px rgba(0, 0, 0, .18) !important;
  cursor: pointer;
}

.wim-auth-card .button:hover,
.wim-auth-card button:hover,
.wim-auth-card input[type="submit"]:hover {
  background: #e67923 !important;
  transform: translateY(-1px);
}

/* Notices (better contrast than pale pink) */
.wim-auth-card .notice,
.wim-auth-card .error,
.wim-auth-card .message {
  background: rgba(244, 134, 47, .10) !important;
  border: 1px solid #F4862F !important;
  color: #2B3189 !important;
  padding: 10px 14px !important;
  border-radius: 10px !important;
  margin-bottom: 14px !important;
}


/* Simple, clean password-help layout */
.wim-auth-simple {
  max-width: 700px;
  margin: 32px auto 64px;
  padding: 0;
  /* no card background */
}

/* Heading style (feel free to tweak) */
.wim-auth-simple h1,
.wim-auth-simple h2,
.wim-auth-simple h3 {
  margin: 0 0 12px;
  font-weight: 800;
  color: #2B3189;
  /* WIM navy */
}

/* Put label and email field on one line */
.wim-auth-simple .frm_primary_label {
  display: inline-block;
  margin: 0 12px 8px 0;
  font-weight: 700;
  color: #2B3189;
  vertical-align: middle;
}

/* Email input: tidy size, inline with label */
.wim-auth-simple input[type="email"] {
  display: inline-block;
  width: 360px;
  /* bump to 420px if you like */
  max-width: 100%;
  height: 40px;
  padding: 8px 12px;
  border-radius: 8px;
  border: 1px solid #d9dce6;
  background: #fff;
  color: #2B3189;
  -webkit-text-fill-color: #2B3189;
  vertical-align: middle;
}

/* Help text under the field */
.wim-auth-simple .frm_description,
.wim-auth-simple .frm_error_style {
  margin-top: 6px;
  color: #5e6580;
}

/* Button: compact and brandy */
.wim-auth-simple .frm_submit input[type="submit"],
.wim-auth-simple .frm_submit button {
  background: #F4862F !important;
  color: #fff !important;
  border: none !important;
  border-radius: 10px !important;
  padding: 10px 18px !important;
  font-weight: 800 !important;
  margin-top: 10px;
}

.wim-auth-simple .frm_submit input[type="submit"]:hover,
.wim-auth-simple .frm_submit button:hover {
  background: #e67923 !important;
}

/* Notices: subtle, readable */
.wim-auth-simple .frm_message,
.wim-auth-simple .frm_error_style,
.wim-auth-simple .message {
  background: transparent !important;
  border: none !important;
  padding-left: 0 !important;
}


/* Make pages using the Auth Minimal template plain white */
body.wp-template-auth-minimal,
body.template-auth-minimal,
body.wp-template-auth-minimal .wp-site-blocks {
  background: #fff !important;
  background-image: none !important;
}

/* If any Cover blocks slip into the content, hide their backgrounds on this template */
body.wp-template-auth-minimal .wp-block-cover,
body.wp-template-auth-minimal .wp-block-cover__image-background,
body.wp-template-auth-minimal .wp-block-cover__gradient-background,
body.wp-template-auth-minimal .wp-block-cover::before {
  display: none !important;
}

/* Some themes paint decorative backgrounds with ::before/::after */
body.wp-template-auth-minimal .wp-site-blocks::before,
body.wp-template-auth-minimal .wp-site-blocks::after {
  content: none !important;
}


body.page-id-1420,
body.page-id-1420.wp-site-blocks {
  background: #fff !important;
  background-image: none !important;
}

body.page-id-1420 .wp-block-cover,
body.page-id-1420 .wp-block-cover__image-background,
body.page-id-1420 .wp-block-cover__gradient-background,
body.page-id-1420 .wp-block-cover::before {
  display: none !important;
}


/* Base pill styles */
.wim-loginbtn {
  display: inline-block;
  padding: 10px 18px;
  border-radius: 14px;
  font-weight: 800;
  letter-spacing: .02em;
  text-decoration: none !important;
  line-height: 1;
}

/* White pill variant for header */
.wim-loginbtn--white {
  background: #fff;
  color: #F4862F !important;
  /* WIM orange text */
  border: 2px solid #F4862F;
  box-shadow: 0 6px 14px rgba(0, 0, 0, .15);
}

.wim-loginbtn--white:hover {
  background: #fff;
  filter: brightness(0.98);
  transform: translateY(-1px);
}

.wim-loginbtn--white:focus {
  outline: 2px solid #F4862F;
  outline-offset: 2px;
}



a.wp-block-loginout__link {
  display: inline-flex !important;
  align-items: center !important;
  padding: 16px 24px !important;
  border-radius: 16px !important;
  line-height: 1 !important
}



/* Page backgrounds */
/* Page 1420: make the whole page grey and remove white wrappers */
body.page-id-1420 {
  background: #abb8c3 !important;
}

body.page-id-1420 .wp-site-blocks,
body.page-id-1420 .site,
body.page-id-1420 .site-content,
body.page-id-1420 .content-area {
  background: transparent !important;
  min-height: 100vh;
  /* ensure it spans the viewport */
}


/* Kill stray gaps around header/footer */
body {
  margin: 0;
}

/* Remove outer margin/padding on header & footer wrappers */
.site-header,
header,
.site-footer,
footer,
header.wp-block-template-part,
footer.wp-block-template-part {
  margin: 0 !important;
  padding: 0 !important;
  border: 0;
}

/* Prevent first/last child margins from creating white strips */
.site-header>*:first-child,
header>*:first-child,
.site-footer>*:first-child,
footer>*:first-child {
  margin-top: 0 !important;
}

.site-header>*:last-child,
header>*:last-child,
.site-footer>*:last-child,
footer>*:last-child {
  margin-bottom: 0 !important;
}



/* === WIM Forgot Password — enforced layout === */

/* Orange card */
.wim-reset-card.wim-forgot-wrap {
  width: 75%;
  max-width: 900px;
  min-width: 320px;
  margin: 28px auto;
  padding: 24px 28px;
  background: #F4862F;
  /* WIM orange */
  border: 0;
  border-radius: 18px;
  box-shadow: 0 4px 14px rgba(0, 0, 0, .10);
  color: #fff;
}

/* Center and constrain inner form */
.wim-reset-card.wim-forgot-wrap .wim-forgot-form {
  max-width: 560px;
  margin: 0 auto;
}

/* Labels readable on orange */
.wim-reset-card.wim-forgot-wrap label {
  color: #fff;
}

/* Email input: white, rounded, thicker */
.wim-reset-card.wim-forgot-wrap #wim_login {
  width: 100%;
  height: 48px;
  line-height: 48px;
  font-size: 16px;
  padding: 0 14px;
  background: #fff;
  color: #111;
  border: 2px solid rgba(255, 255, 255, .35);
  border-radius: 12px;
  box-sizing: border-box;
}

.wim-reset-card.wim-forgot-wrap #wim_login:focus {
  outline: none;
  border-color: #fff;
  box-shadow: 0 0 0 3px rgba(255, 255, 255, .25);
}

/* Submit button: force solid WIM blue, no borders */
.wim-reset-card.wim-forgot-wrap .wim-forgot-form .button.button-primary,
.wim-reset-card.wim-forgot-wrap .wim-forgot-form input[type="submit"],
.wim-reset-card.wim-forgot-wrap .wim-forgot-form button[type="submit"] {
  display: block;
  width: 100%;
  height: 48px;
  line-height: 48px;
  font-weight: 700;
  font-size: 16px;
  background: #2B3189;
  /* WIM blue */
  color: #fff;
  border: 0;
  border-radius: 12px;
  margin-top: 14px;
  text-shadow: none;
  box-shadow: none;
  appearance: none;
}

.wim-reset-card.wim-forgot-wrap .wim-forgot-form .button.button-primary:hover,
.wim-reset-card.wim-forgot-wrap .wim-forgot-form input[type="submit"]:hover {
  filter: brightness(1.06);
}

/* Back link inside card */
.wim-reset-card.wim-forgot-wrap a {
  color: #fff;
  text-decoration: underline;
  display: inline-block;
  margin-top: 10px;
}

/* Tighten spacing */
.wim-reset-card.wim-forgot-wrap .wim-forgot-form p {
  margin: 0 0 14px;
}

/* Extra code for reset card */
/* Fill the card edge-to-edge more */
.wim-reset-card.wim-forgot-wrap {
  padding: 18px 16px;
  /* top/bottom 18px, left/right 16px */
}

/* Remove inner max-width so fields reach the sides */
.wim-reset-card.wim-forgot-wrap .wim-forgot-form {
  max-width: none;
  width: 100%;
  margin: 0;
  /* no extra side gaps */
}

/* Keep inputs/buttons truly full-width */
.wim-reset-card.wim-forgot-wrap #wim_login,
.wim-reset-card.wim-forgot-wrap .wim-forgot-form .button.button-primary {
  width: 100%;
}

/* Optional: on big screens keep a hair more breathing room */
@media (min-width: 1100px) {
  .wim-reset-card.wim-forgot-wrap {
    padding: 22px 20px;
  }
}

/* ===== Compact forgot card overrides ===== */
.wim-reset-card.wim-forgot-wrap {

  /* CHANGE WIDTH EMIL PASSWORD LINK HERE */
  width: min(50%, 600px);
  /* a touch narrower */
  padding: 12px 14px;
  /* tighter padding */
  border-radius: 14px;
  box-shadow: 0 3px 10px rgba(0, 0, 0, .08);
}

/* tighten text sizes & spacing */
.wim-reset-card.wim-forgot-wrap label {
  font-size: 14px;
}

.wim-reset-card.wim-forgot-wrap .wim-forgot-form p {
  margin: 0 0 8px;
}

/* smaller inputs & button */
.wim-reset-card.wim-forgot-wrap #wim_login {
  height: 42px;
  line-height: 42px;
  font-size: 15px;
  border-radius: 10px;
}

.wim-reset-card.wim-forgot-wrap .wim-forgot-form .button.button-primary {
  height: 42px;
  line-height: 42px;
  font-size: 15px;
  border-radius: 10px;
  margin-top: 10px;
}

/* smaller “Back to login” */
.wim-reset-card.wim-forgot-wrap a {
  font-size: 14px;
}

/* (optional) nudge the logo closer to the card */
.wim-forgot-wrap {
  scroll-margin-top: 16px;
}

/* harmless; in case of in-page links */


/* =========================
   1) Phoenix background for Events pages

/* =========================
   1) Phoenix background for Events pages
   ========================= */

/* show phoenix only when TEC markup is on the page */
body:has(.tribe-events),
body:has(.tribe-events-view),
body:has(.tribe-events-single),
body:has(.tribe-common--theme.tribe-events) {}

/* fixed, full-viewport phoenix underlay */
body:has(.tribe-events)::before,
body:has(.tribe-events-view)::before,
body:has(.tribe-events-single)::before,
body:has(.tribe-common--theme.tribe-events)::before {
  content: "";
  position: fixed;
  inset: 0;
  background:
    linear-gradient(to top,
      rgba(255, 255, 255, 1) 0%,
      rgba(255, 255, 255, 0.5) 40%,
      rgba(255, 255, 255, 0) 80%),
    url('/wp-content/uploads/2025/10/Phoenix.png') no-repeat center bottom fixed;
  background-size: 60%;
  background-color: #fff;
  z-index: 0;
  pointer-events: none;
}

/* keep site content above the phoenix */
body:has(.tribe-events) .wp-site-blocks,
body:has(.tribe-events) #page,
body:has(.tribe-events) .site,
body:has(.tribe-events) .site-content,
body:has(.tribe-events) main {
  position: relative;
  z-index: 1;
}


/* =========================
   2) Members-only behavior (NO BLUR)
   ========================= */

/* 2A) logged-out users: hide tooltips / popovers */
body:not(.logged-in) .tribe-events-tooltip,
body:not(.logged-in) .tribe-events-calendar-month__calendar-event-tooltip,
body:not(.logged-in) .tribe-events-c-tooltip {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
}

/* 2B) logged-out users: make event links LOOK normal, but DO NOT let them click */
body:not(.logged-in) a.tribe-events-calendar-month__calendar-event-title-link,
body:not(.logged-in) a.tribe-events-calendar-month__calendar-event-link,
body:not(.logged-in) .tribe-events .tribe-events-calendar-month__day-cell a.tribe-common-anchor-thin.tribe-events-calendar-month__calendar-event-tooltip-trigger {
  pointer-events: none !important;
  cursor: not-allowed !important;
  text-decoration: none !important;
}

/* 2C) but keep calendar controls working (arrows, month switch, view switch) */
.tribe-events .tribe-events-c-nav,
.tribe-events .tribe-events-c-nav *,
.tribe-events .tribe-events-c-top-bar,
.tribe-events .tribe-events-c-top-bar *,
.tribe-events .tribe-events-c-view-selector,
.tribe-events .tribe-events-c-view-selector * {
  pointer-events: auto !important;
  cursor: pointer !important;
  z-index: 50;
}

/* 2D) logged-out: hide LIST view entirely */
body:not(.logged-in) .tribe-events-c-view-selector__list,
body:not(.logged-in) .tribe-events-c-view-selector__button--list,
body:not(.logged-in) [data-view="list"] {
  display: none !important;
}

/* 2E) login prompt */
body:not(.logged-in) .tribe-events::after {
  content: "Log in to view event details";
  position: fixed;
  top: 12px;
  right: 12px;
  padding: 8px 12px;
  background: rgba(0, 0, 0, 0.6);
  color: #fff;
  font-size: 13px;
  border-radius: 999px;
  z-index: 9999;
  pointer-events: none;
}


/* =========================
   3) WIM calendar header style
   ========================= */

/* 3A) full-width blue bar */
.tribe-events .tribe-events-c-top-bar,
.tribe-common--theme .tribe-events .tribe-events-c-top-bar,
.tribe-events-view--month .tribe-events-c-top-bar {
  background: #2B3189 !important;
  /* WIM blue */
  border-radius: 6px !important;
  padding: .75rem 1rem !important;
  margin-bottom: 1rem !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  box-shadow: 0 2px 8px rgba(0, 0, 0, .06) !important;
  position: relative;
  z-index: 40;
}

/* 3B) month button → make it look like the title */
.tribe-events .tribe-events-c-top-bar__datepicker-button {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  color: #fff !important;
  font-weight: 800 !important;
  font-size: 1.25rem !important;
  text-transform: uppercase !important;
  padding: 0 !important;
  margin: 0 !important;
  cursor: default !important;
}

/* 3C) make all datepicker text white too */
.tribe-events .tribe-events-c-top-bar__datepicker-desktop,
.tribe-events .tribe-events-c-top-bar__datepicker-mobile,
.tribe-events .tribe-events-c-top-bar__datepicker-time {
  color: #fff !important;
}

/* 3D) caret icon */
.tribe-events .tribe-events-c-top-bar__datepicker-button-icon-svg path {
  fill: #fff !important;
}

/* 3E) nav arrows */
.tribe-events .tribe-events-c-nav__prev,
.tribe-events .tribe-events-c-nav__next {
  color: #fff !important;
}

.tribe-events .tribe-events-c-nav__prev:hover,
.tribe-events .tribe-events-c-nav__next:hover {
  color: #F4862F !important;
  /* WIM orange */
}



/* WIM — show labels on Event Planner (Formidable form 23) */
#frm_form_23 .frm_primary_label,
#frm_form_23 label {
  display: block !important;
  visibility: visible !important;
  color: #2B3189;
  /* WIM blue */
  font-weight: 600;
  margin-bottom: 4px;
  line-height: 1.2;
}

/* make the small labels on date/time fields line up */
#frm_form_23 .frm_form_field {
  margin-bottom: 1rem;
}

/* checkbox row (Repeat Event) — line it up nicer */
#frm_form_23 .frm_checkbox label {
  display: inline-flex !important;
  align-items: center;
  gap: .4rem;
  margin-bottom: 0;
}


/* WIM reusable dashboard */

/* ===== WIM DASHBOARD ===== */
:root {
  --dash-width: 165px;
  --dash-height: 95vh;
  --bottom-space: 3.2rem;
}

.wim-dashboard {
  position: fixed;
  top: 0;
  left: 0;
  width: var(--dash-width);
  height: var(--dash-height);
  background: #000;
  color: #fff;
  z-index: 999;
  padding: 1rem .6rem .6rem;
  display: flex;
  flex-direction: column;
  gap: .6rem;
  overflow: hidden;
}

.wim-dashboard__title {
  font-size: 0;
  line-height: 1;
}

.wim-dashboard__title::before {
  content: "WIM Dashboard";
  font-size: .95rem;
  font-weight: 700;
  color: #fff;
}

.wim-dashboard__nav {
  flex: 1 1 auto;
  overflow-y: auto;
  display: flex;
  flex-direction: column;
  gap: .3rem;
  padding-top: .4rem;
  padding-bottom: var(--bottom-space);
}

.wim-dashboard__link {
  display: block;
  padding: .3rem .4rem;
  border-radius: 7px;
  color: #fff;
  text-decoration: none;
  font-size: .78rem;
  font-weight: 500;
  line-height: 1.2;
  transition: background .15s ease;
}

.wim-dashboard__link:hover {
  background: rgba(244, 134, 47, 0.2);
}

.wim-dashboard__bottom {
  position: absolute;
  left: .6rem;
  right: .6rem;
  bottom: .6rem;
  border-top: 1px solid rgba(255, 255, 255, 0.08);
  padding-top: .45rem;
}

.wim-dashboard__link--home {
  font-weight: 600;
}

body {
  margin-left: calc(var(--dash-width) + 20px);
  margin-right: 20px;
}


/* ===== WIM SKIN FOR MEMBER TABLE (needs wrapper) ===== */
.wim-member-table table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  background: #fff;
  border: 1px solid rgba(0, 0, 0, 0.03);
  border-radius: 16px;
  overflow: hidden;
  box-shadow: 0 14px 35px rgba(15, 23, 42, 0.04);
}

/* header */
.wim-member-table thead th {
  background: #f8f9ff;
  color: #6b7280;
  text-transform: uppercase;
  font-size: .7rem;
  letter-spacing: .04em;
  padding: .75rem 1rem;
  border-bottom: 1px solid rgba(0, 0, 0, 0.04);
  text-align: left;
  white-space: nowrap;
  cursor: pointer;
}

.wim-member-table thead th a {
  color: inherit;
  text-decoration: none;
}

/* rows */
.wim-member-table tbody tr:nth-child(even) {
  background: #fbfbff;
}

.wim-member-table tbody td {
  padding: .7rem 1rem;
  border-bottom: 1px solid rgba(0, 0, 0, 0.03);
  vertical-align: middle;
  font-size: .85rem;
}

.wim-member-table tbody tr:last-child td {
  border-bottom: none;
}

/* actions column */
.wim-member-table td .wim-actions a,
.wim-member-table td a[title="Edit"],
.wim-member-table td a[title="Delete"] {
  margin-right: .35rem;
}

/* mobile */


/* center the whole member list block under the heading */
.wim-member-table {
  max-width: 1080px;
  /* adjust to taste: 1000–1200 works well */
  margin: 0 auto;
  /* ← this centers it */
}


/* DELETED FROM HERE */


/* =========================================================
   WIM — The Events Calendar (cleaned + consolidated)
   Phoenix background + gentle card styling
   ========================================================= */

:root {
  --wim-blue: #2B3189;
  --wim-orange: #F4862F;
}

/* --- 0) Clear any theme backdrop that could fight us --- */
body.tribe-events-page-template {
  background: transparent;
}

/* --- 1) Phoenix underlay on ALL TEC pages (archive, view, single) --- */
body.post-type-archive-tribe_events::before,
body.tribe-events-view--month::before,
body.tribe-events-view--list::before,
body.single-tribe_events::before,
body.tax-tribe_events_cat::before {
  content: "";
  position: fixed;
  inset: 0;
  background:
    linear-gradient(to top,
      rgba(255, 255, 255, 1) 0%,
      rgba(255, 255, 255, .65) 40%,
      rgba(255, 255, 255, 0) 80%),
    url('/wp-content/uploads/2025/10/Phoenix.png') no-repeat center bottom;
  background-size: 62%;
  z-index: -1;
  /* stay behind content */
  pointer-events: none;
  /* never block clicks */
}

/* keep site content above the phoenix layer */
body.post-type-archive-tribe_events .wp-site-blocks,
body.tribe-events-view--month .wp-site-blocks,
body.tribe-events-view--list .wp-site-blocks,
body.single-tribe_events .wp-site-blocks {
  position: relative;
  z-index: 1;
}

/* --- 2) Optional wrapper (if your template outputs .wim-events-shell) --- */
.wim-events-shell {
  min-height: 100vh;
  padding: 3rem 2.5rem 4rem;
}

/* top heading (if you’re using it in your template) */
.wim-events-hero {
  text-align: center;
  margin-bottom: 1.75rem;
}

.wim-events-title {
  font-size: 2.8rem;
  font-weight: 700;
  letter-spacing: .04em;
  color: var(--wim-blue);
  margin: 0 0 .4rem;
}

.wim-events-subtitle {
  margin: 0;
  color: #4b5563;
}

/* --- 3) Make the TEC block sit on a subtle white card --- */
.tribe-common--theme .tribe-events,
.tribe-events {
  /* cover both old/new containers */
  background: rgba(255, 255, 255, .92);
  border-radius: 14px;
  padding: 1.25rem;
  box-shadow: 0 10px 28px rgba(15, 23, 42, .03);
}

/* --- 4) (Optional) Month header strip in WIM blue ---
   uncomment if/when you want the bold blue month bar
   This targets the v2 top bar safely.
*/
/*
.tribe-events .tribe-events-c-top-bar{
  background: var(--wim-blue) !important;
  border-radius: 8px !important;
  padding: .75rem 1rem !important;
  margin-bottom: 1rem !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  box-shadow: 0 2px 8px rgba(0,0,0,.06) !important;
}
.tribe-events .tribe-events-c-top-bar__datepicker-button,
.tribe-events .tribe-events-c-top-bar__datepicker-desktop,
.tribe-events .tribe-events-c-top-bar__datepicker-mobile,
.tribe-events .tribe-events-c-top-bar__datepicker-time {
  color: #fff !important;
  font-weight: 800 !important;
  text-transform: uppercase !important;
}
.tribe-events .tribe-events-c-top-bar__datepicker-button-icon-svg path {
  fill: #fff !important;
}
*/

/* --- 5) Responsive touches --- */
@media (max-width: 980px) {
  .wim-events-shell {
    padding: 2rem 1.25rem 3rem;
  }

  body.post-type-archive-tribe_events::before,
  body.tribe-events-view--month::before,
  body.tribe-events-view--list::before,
  body.single-tribe_events::before {
    background-size: 90%;
  }
}

/* Pull the calendar closer to the header/footer */
body.tribe-events-page-template .wim-events-shell {
  padding: 1.25rem 1.25rem 1.75rem;
  /* was ~3rem top/btm */
}

body.tribe-events-page-template .wim-events-hero {
  margin-bottom: .75rem;
  /* was ~1.75rem */
}


/* Remove extra top gap under the header part on events pages */
body.tribe-events-page-template .wp-site-blocks>.wp-block-template-part:first-child {
  margin-bottom: .5rem !important;
}

/* Remove extra bottom gap above the footer part */
body.tribe-events-page-template .wp-site-blocks>.wp-block-template-part:last-child {
  margin-top: .75rem !important;
}


/* Ensure the TEC container itself isn’t adding top/btm margins */
body.tribe-events-page-template .tribe-events,
body.tribe-events-page-template .tribe-common--theme .tribe-events {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}


/* Scope to Events archive so we don't touch other pages */
.post-type-archive-tribe_events header.wp-block-template-part.wim-header {
  padding-block: 12px;
  /* a little slimmer header */
}

/* Put logo + nav on one row and push nav to the right */
.post-type-archive-tribe_events header.wp-block-template-part.wim-header .wp-block-group {
  display: flex;
  align-items: center;
  gap: 24px;
}

/* Nav goes to the right */
.post-type-archive-tribe_events header.wp-block-template-part.wim-header .wp-block-navigation {
  margin-left: auto;
}

/* Make the logout link match the header (remove the white box look) */
.post-type-archive-tribe_events header.wp-block-template-part.wim-header a.wp-block-button__link,
.post-type-archive-tribe_events header.wp-block-template-part.wim-header .wp-block-button__link {
  background: transparent;
  border: 1px solid rgba(255, 255, 255, 0.28);
  color: #fff;
  padding: 6px 12px;
  border-radius: 6px;
  text-decoration: none;
}

.post-type-archive-tribe_events header.wp-block-template-part.wim-header .wp-block-button__link:hover {
  border-color: rgba(255, 255, 255, 0.5);
}

/* Tighten the space between header and the calendar/search */
.post-type-archive-tribe_events .wp-site-blocks>header {
  margin-bottom: 10px;
}

/* If you're using the phoenix wrapper, reduce its top padding on Events */
.post-type-archive-tribe_events .wim-events-shell {
  padding-top: 1rem;
  /* was larger */
}

/* Keep the calendar card snug at the top */
.tribe-common--theme .tribe-events {
  margin-top: 0;
}


/* ===========================
   WIM Events: remove top gap
   =========================== */

/* 0) helper: one place to tweak if you ever want a tiny gap again */
:root {
  --wim-events-gap: 0px;
}

/* 1) kill header’s bottom margin on TEC pages */
.post-type-archive-tribe_events header.wp-block-template-part,
.single-tribe_events header.wp-block-template-part,
.tax-tribe_events_cat header.wp-block-template-part {
  margin-bottom: var(--wim-events-gap) !important;
}

/* 2) make your phoenix wrapper + inner container start at the very top */
.post-type-archive-tribe_events .wim-events-shell,
.single-tribe_events .wim-events-shell,
.tax-tribe_events_cat .wim-events-shell {
  padding-top: var(--wim-events-gap) !important;
}

.post-type-archive-tribe_events .wim-events-main,
.single-tribe_events .wim-events-main,
.tax-tribe_events_cat .wim-events-main {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

/* 3) remove any default TEC top margins/padding */
.post-type-archive-tribe_events .tribe-events,
.single-tribe_events .tribe-events,
.tax-tribe_events_cat .tribe-events {
  margin-top: 0 !important;
}

.post-type-archive-tribe_events .tribe-events-header,
.single-tribe_events .tribe-events-header,
.tax-tribe_events_cat .tribe-events-header {
  margin-top: 0 !important;
}

.post-type-archive-tribe_events .tribe-common-l-container,
.single-tribe_events .tribe-common-l-container,
.tax-tribe_events_cat .tribe-common-l-container {
  padding-top: 0 !important;
}

/* 4) belt-and-suspenders: ensure the first block after the header
      doesn’t reintroduce a block-gap on TEC pages */
.post-type-archive-tribe_events .wp-site-blocks>*:first-child,
.single-tribe_events .wp-site-blocks>*:first-child,
.tax-tribe_events_cat .wp-site-blocks>*:first-child {
  margin-block-start: 0 !important;
}

/* --- EVENTS ARCHIVE ONLY (TEC month/list etc.) --- */
.post-type-archive-tribe_events .wim-events-shell {
  /* tighten the custom wrapper itself */
  padding-top: .35rem !important;
  /* try .25rem or even 0 if you want no air */
  padding-bottom: 1rem !important;
}

/* Block themes add space between blocks via this variable.
   Zero (or reduce) it on the archive page to remove the gap under the header. */
.post-type-archive-tribe_events .wp-site-blocks {
  --wp--style--block-gap: .25rem !important;
  /* try 0 to remove all block gap */
}

/* First content block (calendar container) should not add its own top gap */
.post-type-archive-tribe_events .wp-block-post-content {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

/* If your header is a template-part block immediately before content,
   this ensures the next block doesn't add a margin on top */
.post-type-archive-tribe_events .wp-block-template-part+.wp-block-post-content {
  margin-top: 0 !important;
}

/* TEC outer containers sometimes add top spacing via their layout container */
.post-type-archive-tribe_events .tribe-events,
.post-type-archive-tribe_events .tribe-common-l-container {
  margin-top: 0 !important;
  padding-top: .25rem !important;
}


/* === TEC archive page only (month/list views) === */

/* 1) Trim your wrapper even more */
.post-type-archive-tribe_events .wim-events-shell {
  padding-top: .15rem !important;
  /* ⬅︎ try .15rem → 0 */
  padding-bottom: 1rem !important;
}

/* 2) Kill the block theme's “gap” left between header and content */
.post-type-archive-tribe_events .wp-site-blocks {
  --wp--style--block-gap: 0 !important;
  /* ⬅︎ 0 = no gap at all */
}

/* 3) Remove any margin/padding the first content block is adding */
.post-type-archive-tribe_events .wp-block-template-part+.wp-block-post-content,
.post-type-archive-tribe_events .wp-block-post-content {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

/* 4) Some themes add padding on groups with “global padding” */
.post-type-archive-tribe_events .wp-block-group.has-global-padding {
  padding-top: 0 !important;
  margin-top: 0 !important;
}

/* 5) Ensure the header template-part itself doesn't add bottom space */
.post-type-archive-tribe_events header.wp-block-template-part {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}

/* 6) Nudge TEC’s container up if it still sits low */
.post-type-archive-tribe_events .tribe-common-l-container,
.post-type-archive-tribe_events .tribe-events {
  padding-top: .14rem !important;
  /* ⬅︎ try .15rem → 0 */
  margin-top: 0 !important;
}

/* 7) LAST-RESORT micro nudge: pull the whole calendar up a few px */
.post-type-archive-tribe_events .tribe-events {
  transform: translateY(-28px);
  /* ⬅︎ tweak: -2px to -8px */
}



/* === Pull the footer closer on Events pages (archive + single) === */

/* 0) Target both TEC archive (month/list) and single event screens */
.post-type-archive-tribe_events,
.single-tribe_events {
  /* nothing here—just grouping the selectors used below */
}

/* 1) Trim space at the bottom of your wrapper */
.post-type-archive-tribe_events .wim-events-shell,
.single-tribe_events .wim-events-shell {
  padding-bottom: 0rem !important;
  /* ⬅︎ try .75rem → .5rem → 0 */
  margin-bottom: 0 !important;
}

/* 2) Reduce any bottom padding that TEC adds to its container */
.post-type-archive-tribe_events .tribe-common-l-container,
.post-type-archive-tribe_events .tribe-events,
.single-tribe_events .tribe-common-l-container,
.single-tribe_events .tribe-events {
  padding-bottom: 0.2rem !important;
  /* ⬅︎ tune here */
  margin-bottom: 0 !important;
}

/* 3) Nuke theme/FSE spacing above the footer template-part */
.post-type-archive-tribe_events .wp-site-blocks,
.single-tribe_events .wp-site-blocks {
  padding-bottom: 0 !important;
  /* block themes love to add this */
}

/* 4) Make sure the footer part itself doesn’t add a top buffer */
.post-type-archive-tribe_events footer.wp-block-template-part,
.single-tribe_events footer.wp-block-template-part {
  margin-top: 0 !important;
  padding-top: 0.25rem !important;
  /* ⬅︎ subtle breathing room; set 0 if you want it flush */
}

/* 5) If a stray gap remains, micro-nudge the footer upward */
.post-type-archive-tribe_events footer.wp-block-template-part,
.single-tribe_events footer.wp-block-template-part {
  transform: translateY(-2px);
  /* ⬅︎ try -2px → -4px; delete if not needed */
}



/* ===== Form 23 layout fixes (scoped) ===== */
#frm_form_23_container .frm_primary_label {
  display: block !important;
  float: none !important;
  width: auto !important;
  margin-bottom: 6px;
}

/* two-column layout for the date/time fields */
#frm_form_23_container .frm_first {
  clear: both !important;
}

#frm_form_23_container .frm_half {
  width: 48% !important;
  float: left !important;
  margin-right: 4% !important;
}

#frm_form_23_container .frm_half.frm_last {
  margin-right: 0 !important;
}

/* reset any generic flex that was breaking labels & radios */
#frm_form_23_container .frm_form_field .frm_fields_container {
  display: block !important;
}

/* align the three time dropdowns nicely */
#frm_form_23_container .frm_time_select {
  display: inline-block;
  vertical-align: middle;
}

#frm_form_23_container .frm_time_select select,
#frm_form_23_container .frm_time_select input {
  min-width: 60px;
}

/* radios: restore normal layout */
#frm_form_23_container .frm_radio {
  display: block;
}

#frm_form_23_container .frm_radio label {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

/* Form 23 — tighten date/time rows */
#frm_form_23_container .frm_first.frm_half {
  /* left column (dates) */
  width: 58% !important;
  margin-right: 2% !important;
}

#frm_form_23_container .frm_last.frm_half {
  /* right column (times) */
  width: 40% !important;
  margin-right: 0 !important;
}

/* compact spacing inside the time group */
#frm_form_23_container .frm_time_select {
  display: inline-block;
  vertical-align: middle;
  margin-right: 1px;
  /* space between hour : minute : am/pm */
}

#frm_form_23_container .frm_time_select:last-child {
  margin-right: 0;
}

/* ensure all time pieces are visible and usable */
#frm_form_23_container .frm_time_select select,
#frm_form_23_container .frm_time_select input {
  min-width: 68px;
  /* shows options fully */
  padding-right: 22px;
  /* room for native arrow */
}

#frm_form_23_container .frm_form_field,
#frm_form_23_container .frm_fields_container {
  overflow: visible !important;
  /* prevent dropdowns from being clipped */
}

/* ===== Fix Form 23 time selects (AM/PM + minutes) ===== */
#frm_form_23_container .frm_time_select select {
  /* reset odd theme styles */
  appearance: auto !important;
  -webkit-appearance: menulist !important;
  -moz-appearance: menulist !important;

  opacity: 1 !important;
  background: #fff !important;
  color: #111 !important;
  border: 1px solid rgba(0, 0, 0, .15) !important;
  line-height: 1.2 !important;

  /* make sure labels are readable and list isn't clipped */
  min-width: 72px !important;
  /* bump if AM/PM text truncates */
  padding-right: 22px !important;
  overflow: visible !important;
}

/* ensure the dropdown menu text is visible (some themes set transparent) */
#frm_form_23_container .frm_time_select select option {
  color: #111 !important;
  background: #fff !important;
}

/* keep the dropdown from being hidden under neighbors */
#frm_form_23_container .frm_time_select {
  position: relative;
  z-index: 2;
}



/* 1) Full-width outer wrapper but with a controlled content width */




/* 3) Desktop layout: widen left column vs right column */
@media (min-width: 960px) {
  .wim-wrap>.wp-block-columns {
    grid-template-columns: 2.4fr 1fr;
    /* try 2.6fr 1fr for more left room */
    align-items: start;
  }
}

/* Optional: cap the right column so it never grows too wide */
@media (min-width: 960px) {}

/* ===== WIM notice banner ===== */
.wim-banner {
  background: #2B3189;
  /* WIM blue */
  color: #fff;
  border-radius: 14px;
  padding: 16px 22px;
  text-align: center;
  box-shadow: 0 12px 28px rgba(0, 0, 0, .18);
  max-width: 1080px;
  /* centered width; change if you want wider */
  margin: 18px auto 30px;
  /* space above/below */
  line-height: 1.35;
  font-weight: 700;
}

/* remove default paragraph margins and size the text responsively */
.wim-banner p {
  margin: 0;
  font-size: clamp(16px, 1.1vw + 12px, 22px);
}

/* link styling (email) */
.wim-banner a {
  color: #fff;
  text-decoration: underline;
  text-underline-offset: 3px;
}

.wim-banner a:hover {
  color: #FFD6A8;
}

/* soft highlight on hover */

/* If you want this bar to span your content width like the cards */
.wim-banner.alignfull {
  max-width: 1280px;
}



/* Force Formidable datepicker month + year text to display */
.ui-datepicker-title {
  display: flex !important;
  gap: 6px;
  align-items: center;
}

.ui-datepicker-title select,
.ui-datepicker-title span {
  color: #000 !important;
  font-size: 14px;
  font-weight: 600;
}


/* --- Formidable / Flatpickr datepicker fixes --- */

/* 1) Prevent the calendar from clipping the month dropdown */
.flatpickr-calendar,
.flatpickr-calendar .flatpickr-months {
  overflow: visible !important;
  z-index: 999999;
  /* make sure it sits above other UI */
}

/* 2) Give the month select some breathing room */
.flatpickr-calendar select.flatpickr-monthDropdown-months {
  min-width: 10.5rem;
  /* widen the month selector */
  padding: 0 .9rem;
  height: 32px;
  line-height: 32px;
  appearance: menulist;
  /* undo theme styling */
  -webkit-appearance: menulist;
}

/* 3) Make the year input a sensible width */
.flatpickr-calendar .numInputWrapper input {
  width: 5.5rem;
  /* 4–5rem works well */
  height: 32px;
  line-height: 32px;
}

/* 4) Keep the whole widget above modals/headers */
.frm_forms .flatpickr-calendar {
  z-index: 100001;
}



/* Fix phone layout for the WIM hero Media & Text block */
@media (max-width: 768px) {

  /* make the hero full-width on phones */
  .wp-block-media-text.wim-hero-media {
    display: block !important;
    width: 100vw !important;
    max-width: 100vw !important;
    margin: 0 !important;
    overflow: hidden;
  }
}



/* Donate page – make the last column (PAY FOR AN EVENT) a bit skinnier */
.page-id-3948 .donate-col-pay {
  max-width: 210px;
}

.page-id-3948 .donate-col-pay .card.large.pay-event-card {
  width: 100%;
}



/* Tighten vertical spacing on PAY FOR AN EVENT card */
.pay-event-card {
  padding-top: 0.8rem;
  /* less top padding = text starts higher */
  padding-bottom: 0.8rem;
  /* optional: keeps it from feeling too tall */
}

.pay-event-card h3 {
  margin-bottom: 0.2rem;
  /* reduce space between title and text */
}

.pay-event-card p {
  margin-top: 0;
  /* kill extra top margin on the paragraph */
  line-height: 1.2;
  /* a bit tighter text */
}




/* Fix phone layout for the WIM hero Media & Text block - media/content stack */
@media (max-width: 768px) {

  /* make media and content both full-width, stacked */
  .wp-block-media-text.wim-hero-media .wp-block-media-text__media,
  .wp-block-media-text.wim-hero-media .wp-block-media-text__content {
    width: 100% !important;
    margin: 0 auto;
  }

  /* ensure the photo fills the width nicely */
  .wp-block-media-text.wim-hero-media .wp-block-media-text__media img {
    display: block;
    width: 100% !important;
    height: auto !important;
  }
}

/* ---- Mobile layout safety net ---- */
@media (max-width: 768px) {

  /* Make sure the overall page doesn't get shoved to one side */
  html,
  body {
    margin: 0;
    padding: 0;
    max-width: 100%;
    overflow-x: hidden;
    /* stop sideways sliding */
  }

  /* Force full-width for full-width blocks on phones */
  .wp-block-group.alignfull,
  .wp-block-cover.alignfull,
  .wp-block-media-text.alignfull,
  .wp-block-group.has-global-padding,
  .wp-site-blocks {
    box-sizing: border-box;
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
}


/* Removed duplicate placeholder hero-media block from old CSS. */


/* ---- Mobile layout safety net ---- */
@media (max-width: 768px) {

  html,
  body {
    margin: 0;
    padding: 0;
    max-width: 100%;
    overflow-x: hidden;
  }

  .wp-block-group.alignfull,
  .wp-block-cover.alignfull,
  .wp-block-media-text.alignfull,
  .wp-block-group.has-global-padding,
  .wp-site-blocks {
    box-sizing: border-box;
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
}



/* Mobile nav: white drawer, black text, left aligned */
@media (max-width: 782px) {

  /* The opened mobile menu drawer */
  .wp-block-navigation__responsive-container.is-menu-open {
    background: #ffffff;
  }

  /* The inner content of the drawer */
  .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content {
    align-items: flex-start;
    /* keep items aligned left */
    text-align: left;
    padding: 24px 24px 32px;
    /* nice padding around links */
  }

  /* Links inside the mobile menu */
  .wp-block-navigation__responsive-container.is-menu-open a {
    color: #000000;
  }
}



/* ===============================
   FIX BROKEN MOBILE NAVIGATION
   =============================== */

/* Ensure WP nav container becomes visible when open */
.wp-block-navigation__responsive-container.is-menu-open {
  display: flex !important;
  flex-direction: column;
  background: #ffffff !important;
  padding: 30px 24px;
  z-index: 99999 !important;
}



/* Ensure menu links display correctly */
.wp-block-navigation__responsive-container.is-menu-open a {
  display: block !important;
  color: #000000 !important;
  font-size: 22px !important;
  padding: 12px 0 !important;
  text-align: left !important;
}

/* Fix invisible submenu items */
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item {
  opacity: 1 !important;
  visibility: visible !important;
}

/* Fix the hamburger / close icon being misplaced */
.wp-block-navigation__responsive-container-open,
.wp-block-navigation__responsive-container-close {
  position: relative !important;
  z-index: 100000 !important;
}



/* Style the DAFwidget link inside the orange card like a button */
.card.small .daf-inner a {
  display: inline-block;
  margin-top: 10px;
  padding: 10px 20px;
  background: #ffffff;
  color: #000000;
  border-radius: 20px;
  font-weight: bold;
  text-decoration: none;
}

.card.small .daf-inner a:hover {
  opacity: 0.9;
}


/* Let the DAF popup escape the card instead of being clipped */
.daf-card {
  overflow: visible !important;
}


/* Full-screen dark overlay */
.daf-modal {
  position: fixed;
  inset: 0;
  /* top/right/bottom/left:0 */
  background: rgba(0, 0, 0, 0.45);
  display: none;
  /* JS switches to flex */
  align-items: center;
  justify-content: center;
  z-index: 9999;
}

/* White popup box */
.daf-modal-inner {
  background: #ffffff;
  border-radius: 6px;
  padding: 20px 24px;
  max-width: 420px;
  width: 90%;
  max-height: 80vh;
  overflow: auto;
  position: relative;
  box-shadow: 0 12px 30px rgba(0, 0, 0, 0.35);
}

/* Close button (X) in top-left/right as you like */
.daf-close {
  position: absolute;
  top: 8px;
  right: 10px;
  border: none;
  background: transparent;
  font-size: 22px;
  line-height: 1;
  cursor: pointer;
}

/* Make whatever DAFwidget renders fill the inner box nicely */
.daf-widget-shell>* {
  width: 100% !important;
}



/* forgot password wrapper */
.wim-forgot-wrapper {
  max-width: 400px;
  margin: 2rem auto;
}


/* Lost-password page styling – better contrast */
body.page-lostpassword .wim-forgot-wrapper,
body.page-lostpassword #login_error,
body.page-lostpassword .message {
  max-width: 480px;
  margin: 2rem auto;
  padding: 1.5rem 1.75rem;
  background: rgba(0, 0, 0, 0.7) !important;
  color: #fff !important;
  border-radius: 12px;
}

/* Make the "Error:" text and links readable */
body.page-lostpassword #login_error strong,
body.page-lostpassword #login_error a,
body.page-lostpassword .message a {
  color: #fff !important;
}

body.page-lostpassword #lostpasswordform .input {
  width: 100%;
  max-width: 100%;
}

F

/* Make lost-password / login error + notice blocks readable everywhere */
#login_error,
.message {
  max-width: 480px;
  margin: 1.5rem auto !important;
  padding: 1rem 1.25rem !important;
  background: rgba(0, 0, 0, 0.7) !important;
  color: #fff !important;
  border-radius: 12px !important;
}

/* Ensure "Error:" and any links inside are white */
#login_error strong,
#login_error a,
.message a {
  color: #fff !important;
}

/* Keep the forgot-password form itself nicely sized */
.wim-forgot-wrapper,
#lostpasswordform {
  max-width: 480px;
  margin: 2rem auto !important;
}

#lostpasswordform .input {
  width: 100% !important;
  max-width: 100% !important;
}

/* Hide the default WP blue info line on the Lost Password page */
body.page-lostpassword .message {
  display: none !important;
}


/* WIM – fix Formidable datepicker month/year dropdown colors for the calendar*/

.flatpickr-calendar select.flatpickr-monthDropdown-months,
.flatpickr-calendar select.flatpickr-monthDropdown-months option,
.flatpickr-calendar .flatpickr-current-month .numInputWrapper input {
  color: #000 !important;
  /* dark text so months are visible */
  background-color: #fff !important;
  /* white background for dropdown */
}

/* optional: make the dropdown a bit more readable */
.flatpickr-calendar select.flatpickr-monthDropdown-months {
  padding: 2px 4px;
}



/* WIM – force site to use full width on mobile */
@media (max-width: 800px) {

  html,
  body {
    margin: 0 !important;
    padding: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: hidden !important;
  }

  /* Main site wrapper(s) – common for block themes / WP.com */
  .wp-site-blocks,
  #page,
  .site,
  .site-content,
  main {
    position: static !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    transform: none !important;
    left: 0 !important;
    right: 0 !important;
  }
}


@media (max-width: 800px) {

  .wp-site-blocks,
  #page,
  .site {}
}




/* WIM – force full-width layout on small screens */
@media (max-width: 800px) {

  html,
  body {
    margin: 0 !important;
    padding: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: hidden !important;
  }

  /* Any direct child of body (root wrappers, block themes, etc.) */
  body>* {
    position: static !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    transform: none !important;
    left: 0 !important;
    right: 0 !important;
  }
}

@media (max-width: 800px) {
  body>* {}
}




/* WIM – make HOME hero truly full width on phones */
@media (max-width: 768px) {
  .wp-block-media-text.wim-hero-media {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    overflow: hidden;
    /* keep the old safety bit */
  }

  .wp-block-media-text.wim-hero-media .wp-block-media-text__media,
  .wp-block-media-text.wim-hero-media .wp-block-media-text__content {
    width: 100% !important;
    max-width: 100% !important;
  }

  .wp-block-media-text.wim-hero-media .wp-block-media-text__media img {
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    display: block !important;
  }
}



/* Move the Facebook card heading up slightly */
.card-facebook h3 {
  margin-top: -14px !important;
  /* try 0, or even -2px/-4px if you need more lift */
}

/* Let the long URL wrap inside the card */
.card-facebook .facebook-url {
  white-space: normal;
  /* override any nowrap on links */
  overflow-wrap: anywhere;
  word-break: break-word;
  /* helps long URLs break nicely */
}

/* Normal border on PAY FOR AN EVENT card – same thickness, not red */
.card.large.pay-card {
  border-width: 3px;
  /* or whatever your other cards use */
  border-style: solid;
  border-color: #f7941d;
  /* your orange, or #fff, etc. */
  outline: none !important;
  /* kill any debug outline without affecting size */
  box-shadow: none !important;
  /* just in case red was a shadow */
}




.wim-profile-readonly input,
.wim-profile-readonly select,
.wim-profile-readonly textarea {
  background: #f5f5f5;
  cursor: not-allowed;
}



/* Hide the stray DAF text link under the footer on the Donate page */
.page-id-3948 #daf_link {
  display: none !important;
}

/* WIM – Fix invisible options in Form 2 state dropdown */
#frm_form_2_container select,
#frm_form_2_container select option {
  color: #000 !important;
  /* make the option text visible */
  background-color: #fff !important;
}

/* If the dropdown itself has white text from the theme */
#frm_form_2_container select {
  color: #000 !important;
}


/* Page 972 only — domain-independent path */
body.page-id-972 {
  background-image: url('/wp-content/uploads/2025/10/Phoenix.png') !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
  background-size: cover !important;
  background-attachment: fixed !important;
}

/* If your theme paints a white canvas on top, force common wrappers transparent */
body.page-id-972 #page,
body.page-id-972 .site,
body.page-id-972 #content,
body.page-id-972 .site-content,
body.page-id-972 main,
body.page-id-972 .content-area,
body.page-id-972 .entry-content,
body.page-id-972 .wp-site-blocks {
  background: transparent !important;
}




/* Only on this one page */
.page-id-972 .frm_forms form {
  position: relative;
  /* gives us an anchor point */
}

/* EDIT USER page: Cancel button pinned to a single viewport coordinate (cross-browser stable) */
.page-id-972 .wim-cancel-overlay {
  position: fixed;
  /* ✅ stable across browsers */
  left: 600px;
  /* <-- tweak to align with the field above */
  top: 268px;
  /* <-- tweak to align vertically with Submit */
  z-index: 9999;

  display: inline-flex;
  align-items: center;
  justify-content: center;

  padding: 6px 14px;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.4;
  border-radius: 4px;
  text-decoration: none;

  background: #1e90ff;
  border: 1px solid #2271b1;
  color: #fff;
}

/* Optional: if WP admin bar is present and shifts things, this prevents overlap */
@media screen and (min-width: 783px) {
  body.admin-bar.page-id-972 .wim-cancel-overlay {
    top: calc(345px + 32px);
    /* <-- if it overlaps admin bar, adjust/tweak */
  }
}


/* Put Cancel next to Next/Submit in Formidable multi-page forms */
.frm_button_submit,
.frm_button_submit+.wim-cancel-link,
.frm_submit button,
.frm_submit .wim-cancel-link {
  vertical-align: middle;
}

/* If your Cancel is inside the submit row, float it next to the button */
.frm_submit .wim-cancel-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-left: 12px;
  /* space to the right of Next */
  margin-top: 0;
}

/* If Formidable wraps buttons, this helps keep them on one line */
.frm_submit {
  display: flex;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
}


/* Create Gallery page: keep Next + Cancel on one line */
.page-id-1241 .frm_submit {
  display: flex;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
}

/* Put Formidable buttons + our cancel on the same row */
.frm_submit {
  display: flex;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
}

/* Make Cancel match button height and look secondary */
.frm_submit .wim-cancel-link {
  height: 36px;
  padding: 0 14px;
  border-radius: 8px;
  font-weight: 700;
  text-decoration: none;

  display: inline-flex;
  align-items: center;
  justify-content: center;

  background: #e5e7eb;
  /* light gray */
  border: 1px solid #cbd5e1;
  color: #111827;
}

.frm_submit .wim-cancel-link:hover {
  filter: brightness(.97);
}

/* Force Cancel to match the blue Next button */
.frm_submit .wim-cancel-link {
  background: #4199fd !important;
  border: 1px solid #2271b1 !important;
  color: #fff !important;
}

.frm_submit .wim-cancel-link:hover {
  filter: brightness(.95);
}


/* Formidable datepicker fixes – Create Gallery page (ID 1241) */
.page-id-1241 .ui-datepicker {
  z-index: 999999 !important;
  /* stay above footer/overlays */
}

/* make month/year sit nicely */
.page-id-1241 .ui-datepicker .ui-datepicker-title {
  display: flex !important;
  justify-content: center !important;
  gap: 10px !important;
  align-items: center !important;
}

/* widen the dropdowns so "2025" doesn't get clipped */
.page-id-1241 .ui-datepicker select.ui-datepicker-month {
  min-width: 6.5em !important;
  width: auto !important;
  padding-right: 1.6em !important;
}

.page-id-1241 .ui-datepicker select.ui-datepicker-year {
  min-width: 5.5em !important;
  width: auto !important;
  padding-right: 1.6em !important;
}


/* Create Gallery Admin (page 1241) — make month/year option text visible */
.page-id-1241 select option {
  color: #111827 !important;
  /* dark text */
  background: #ffffff !important;
  /* white background */
}

/* Also ensure the select itself is readable */
.page-id-1241 select {
  color: #111827 !important;
  background: #ffffff !important;
}

/* WIM financial upload notices (clean + compact) */
.wim-notice {
  display: block;
  /* message stays on its own line */
  margin: 0;
  padding: 0;
  border-radius: 0;
  font-size: 16px;
  line-height: 1.35;
  font-weight: 600;
}

/* The ONE wrapper card (sizes to content width, not full page) */
.wim-financial-cardwrap {
  display: inline-block;
  /* ✅ box width wraps to content */
  max-width: 100%;
  background: #ffffff;
  border: 1px solid #34d399;
  border-radius: 10px;
  padding: 14px 18px;
  margin: 16px 0;
}

/* Success message styling when inside wrapper */
.wim-financial-cardwrap .wim-success {
  color: #065f46;
}

/* Link on next line */
.wim-financial-current-link {
  margin: 10px 0 0 0;
  /* space below success text */
}

/* Make the link readable (button-ish) */
.wim-financial-current-link a {
  display: inline-block;
  background: #e5e7eb;
  color: #1d4ed8;
  padding: 6px 10px;
  border-radius: 6px;
  font-weight: 600;
  text-decoration: underline;
}



/* Form 2 (new_member, page-id-167) — fix jQuery UI datepicker month/year dropdown readability */
.page-id-167 .ui-datepicker select.ui-datepicker-month,
.page-id-167 .ui-datepicker select.ui-datepicker-year {
  color: #111 !important;
  background: #fff !important;
  border: 1px solid #cbd5e1 !important;
}

/* The options inside those dropdowns */
.page-id-167 .ui-datepicker select.ui-datepicker-month option,
.page-id-167 .ui-datepicker select.ui-datepicker-year option {
  color: #111 !important;
  background: #fff !important;
}

/* In case your theme forces selects to be transparent/unstyled */
.page-id-167 .ui-datepicker select {
  -webkit-appearance: menulist !important;
  appearance: menulist !important;
}


/* Form 2: make validation errors readable */
.frm_form_formidable-id-2 .frm_error,
.frm_form_formidable-id-2 .frm_error_style,
.frm_form_formidable-id-2 .frm_error p,
.frm_form_formidable-id-2 .frm_form_field .frm_error {
  font-size: 16px !important;
  font-weight: 600 !important;
  line-height: 1.35 !important;
  padding: 10px 12px !important;
  margin-top: 8px !important;
  border-radius: 10px !important;
  background: #fff1f2 !important;
  border: 1px solid #fca5a5 !important;
  color: #7f1d1d !important;
}

/* If the error is inline under the field, give it some spacing */
.frm_form_formidable-id-2 .frm_form_field {
  margin-bottom: 18px;
}



/* Formidable: field-level error message (the small red text under a field) */
.frm_error,
.frm_error_style,
.frm_form_field .frm_error,
.frm_form_field .frm_error_style,
.frm_form_field .frm_error p,
.frm_form_field .frm_error_style p,
.frm_form_field .frm_error .frm_error_text,
.frm_form_field .frm_error_style .frm_error_text {
  font-size: 16px !important;
  line-height: 1.35 !important;
  font-weight: 700 !important;
  color: #b91c1c !important;
  margin-top: 8px !important;
}

/* Give it a readable "pill" behind the text so it pops on dark backgrounds */
.frm_form_field .frm_error,
.frm_form_field .frm_error_style {
  display: inline-block !important;
  background: #fff1f2 !important;
  border: 1px solid #fecaca !important;
  padding: 6px 10px !important;
  border-radius: 8px !important;
}

/* Optional: add a clear red outline on the field itself */
.frm_form_field.frm_blank_field input,
.frm_form_field.frm_blank_field select,
.frm_form_field.frm_blank_field textarea {
  border-color: #b91c1c !important;
  box-shadow: 0 0 0 2px rgba(185, 28, 28, 0.18) !important;
}



/* Review Member page: add left padding + spacing */
.page-slug-review-member .wim-review-wrap {
  padding-left: 22px;
  padding-right: 18px;
}

/* Give the grid vertical breathing room */
.page-slug-review-member .wim-review-grid {
  row-gap: 10px;
  /* grid spacing (Formidable uses CSS grid here) */
  margin-top: 12px;
}

/* Ensure text blocks aren't glued together */
.page-slug-review-member .wim-review-grid .frm12 {
  line-height: 1.35;
}

/* Tame the big name header */
.page-slug-review-member .wim-review-name {
  margin: 0 0 8px 0;
}




/* Review Member page (page-id-4947): add readable margins + spacing */
.page-id-4947 .frm_grid_container {
  max-width: 900px;
  /* keeps it from stretching too wide */
  margin: 20px auto;
  /* centers the block */
  padding: 18px 24px;
  /* left/right margin feel */
  row-gap: 10px;
  /* space between grid rows */
  column-gap: 14px;
  /* space between columns (if any) */
}

/* give each cell a little breathing room */
.page-id-4947 .frm_grid_container .frm12 {
  padding: 4px 0;
}




/* Review Member page: keep View content left-aligned (not centered) */
.page-id-4947 .entry-content,
.page-id-4947 .entry-content>*,
.page-id-4947 .frm-show-form,
.page-id-4947 .frm_forms,
.page-id-4947 .frm_grid_container {
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

/* Add a comfortable left margin + keep it from stretching too wide */
.page-id-4947 .frm_grid_container {
  padding-left: 24px;
  padding-right: 12px;
  max-width: 900px;
  /* adjust if you want wider */
}


/* REVIEW MEMBER page: tighten spacing between View and Approve/Reject */
.page-id-4947 .frm-show-form,
.page-id-4947 .frm_form_fields,
.page-id-4947 .frm_grid_container {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}

/* If the last field still adds extra spacing, reduce it */
.page-id-4947 .frm_grid_container>.frm12:last-child {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}

/* Move the buttons up (north) */
.page-id-4947 .wim-review-actions {
  margin-top: 8px !important;
  /* try 0px, 6px, 10px */
}

/* Optional: if you want a little breathing room under the buttons */
.page-id-4947 .wim-review-actions {
  margin-bottom: 6px !important;
}



/* Create User (Form 10) only: force wider inputs */
body.page-id-972 #frm_form_10_container input[type="text"],
body.page-id-972 #frm_form_10_container input[type="email"],
body.page-id-972 #frm_form_10_container input[type="tel"],
body.page-id-972 #frm_form_10_container select,
body.page-id-972 #frm_form_10_container textarea {
  width: 560px !important;
  /* <-- set your explicit width */
  max-width: 100% !important;
  /* still responsive */
  box-sizing: border-box;
  display: block;
}



/* Overall header bar */
header.wp-block-template-part,
.wp-block-template-part .wp-block-group,
.wp-block-template-part .wp-block-row {
  overflow: visible;
}

/* Main orange header row */
header .wp-block-row,
.wp-block-template-part .wp-block-row {
  align-items: center;
}

/* Logo block */
.wp-block-site-logo {
  position: relative;
  margin-right: 2rem;
  margin-left: -2.5rem;
  z-index: 20;
}

.wp-block-site-logo img {
  max-height: 140px;
  width: auto;
  display: block;
}

/* Navigation spacing */
.wp-block-navigation {
  flex-grow: 1;
}

.wp-block-navigation .wp-block-navigation-item {
  margin: 0 0.6rem;
}

/* Menu link look */
.wp-block-navigation .wp-block-navigation-item__content {
  color: #fff;
  font-weight: 600;
  text-decoration: none;
}

/* Right-side login/join button */
.wp-block-buttons,
.wp-block-button {
  margin-left: 1.25rem;
}

.wp-block-button__link {
  background: #fff;
  color: #1f2a78;
  border-radius: 10px;
  padding: 0.5rem 1.1rem;
  font-weight: 700;
  line-height: 1.1;
  text-align: center;
  box-shadow: none;
}



.wp-block-site-logo img {
  max-height: 80px !important;
  height: auto !important;
  width: auto !important;
}

.wp-block-site-logo {
  line-height: 0;
}


/* Header sizing*/
header {
  min-height: unset !important;
}

header .wp-block-group {
  min-height: 0 !important;
  padding-top: 8px !important;
  padding-bottom: 8px !important;
}



/* Submenu background */
.wp-block-navigation .wp-block-navigation__submenu-container {
  background-color: #e97810 !important;
  /* your orange */
}

/* Submenu text */
.wp-block-navigation .wp-block-navigation__submenu-container a {
  color: #ffffff !important;
}

/* Hover state */
.wp-block-navigation .wp-block-navigation__submenu-container a:hover,
.wp-block-navigation .wp-block-navigation__submenu-container a:focus {
  background-color: #cf650d !important;
  /* slightly darker orange */
  color: #ffffff !important;
}


/* White Space above header */
header.wp-block-template-part {
  position: absolute;
  top: 19px;
  left: 0;
  width: 100%;
  z-index: 100;
}

/* Floating header */
header.wp-block-template-part {
  position: absolute;
  top: 19px;
  left: 0;
  width: 100%;
  z-index: 100;
}

/* Remove extra spacing above main content */
.wp-site-blocks,
.wp-site-blocks>*:first-child {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

/* Let the first main content block sit behind the header */
main,
.wp-site-blocks {
  position: relative;
  z-index: 1;
}

/* Header Height*/
/* Make the actual orange header band thinner */
header.wp-block-template-part .wp-block-group__content {
  min-height: 0 !important;
  padding-top: 4px !important;
  padding-bottom: 4px !important;
  align-items: center !important;
}

/* Also neutralize extra height from inner group wrappers */
header.wp-block-template-part .wp-block-group {
  min-height: 0 !important;
}

/* Tighten navigation vertical footprint a bit */
header.wp-block-template-part .wp-block-navigation {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}



.wim-header-band {
  min-height: 40px !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  padding-left: 20px !important;
  padding-right: 20px !important;
  display: flex !important;
  align-items: center !important;
  overflow: visible !important;
}

.wim-header-logo {
  position: relative !important;
  top: -15x !important;
  margin-bottom: -23px !important;
  z-index: 20 !important;
}

.wim-header-logo img {
  height: 91px !important;
  width: auto !important;
  display: block !important;
}
/* Logo Header */
.wim-header-band {
  min-height: 42px !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  padding-left: 20px !important;
  padding-right: 20px !important;
  display: flex !important;
  align-items: center !important;
  overflow: visible !important;
}

/*  Wim logo and header */
.wim-header-band {
  height: 42px !important;
  min-height: 42px !important;
  max-height: 42px !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  padding-left: 20px !important;
  padding-right: 20px !important;
  display: flex !important;
  align-items: center !important;
  overflow: visible !important;
}

.wim-header-band .wp-block-navigation,
.wim-header-band nav {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  line-height: 1 !important;
}

.wim-header-band .wp-block-navigation-item,
.wim-header-band .wp-block-navigation-item__content {
  line-height: 1 !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

.wim-header-logo {
  line-height: 0 !important;
}

.wim-header-logo img,
.wim-header-logo .custom-logo {
  height: 60px !important;
  width: auto !important;
  display: block !important;
}

/* Logo positioning only */
.wim-header-logo {
  position: relative !important;
  top: -3px !important;
  /* was -34px → push up slightly more */
  margin-left: 10px !important;
  margin-bottom: -24px !important;
  line-height: 0 !important;
  z-index: 20 !important;
}

.wim-header-logo img,
.wim-header-logo .custom-logo {
  height: 134px !important;
  max-height: none !important;
  width: auto !important;
  display: block !important;
}


/* Push all page content down below the floating header */
header.wp-block-template-part+.wp-site-blocks {
  position: relative !important;
  top: 100px !important;
}









/* Temporary diagnostic fix for button text */
.wp-block-button__link,
.wp-element-button,
button,
input[type="button"],
input[type="submit"],
input[type="reset"],
.btn,
a.btn {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  opacity: 1 !important;
}

/* If you have white buttons that need dark text */
.has-white-background-color,
.is-style-outline .wp-block-button__link,
.white-button,
.header-login-button a {
  color: #1f2937 !important;
  -webkit-text-fill-color: #1f2937 !important;
}






/* Dark/blue buttons: keep white text */
.wp-block-button__link,
.wp-element-button,
button,
input[type="button"],
input[type="submit"],
input[type="reset"],
.btn,
a.btn {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  opacity: 1 !important;
}

/* White buttons: force dark text */
.wp-block-button__link.has-white-background-color,
.wp-element-button.has-white-background-color,
.has-white-background-color.wp-block-button__link,
.has-white-background-color.wp-element-button,
.is-style-outline .wp-block-button__link,
.is-style-outline .wp-element-button,
.white-button,
.white-button a,
.header-login-button a,
.header-login-button .wp-block-button__link {
  color: #1f2937 !important;
  -webkit-text-fill-color: #1f2937 !important;
  opacity: 1 !important;
}

/* Catch text nested inside white buttons */
.has-white-background-color,
.has-white-background-color a,
.has-white-background-color span,
.is-style-outline .wp-block-button__link,
.is-style-outline .wp-block-button__link span {
  color: #1f2937 !important;
  -webkit-text-fill-color: #1f2937 !important;
}

/* Nuclear diagnostic for white buttons */
.wp-block-button,
.wp-block-buttons .wp-block-button,
.wp-block-button__link,
.wp-element-button,
a.wp-block-button__link,
a.wp-element-button,
button,
.btn,
a.btn {
  text-indent: 0 !important;
  font-size: 20px !important;
  line-height: 1.2 !important;
  letter-spacing: normal !important;
  opacity: 1 !important;
  visibility: visible !important;
  overflow: visible !important;
  white-space: nowrap !important;
}

/* Force text inside white/light buttons to be visible */
.wp-block-button__link.has-white-background-color,
.wp-element-button.has-white-background-color,
.has-white-background-color,
.has-white-background-color a,
.has-white-background-color span,
.has-white-background-color strong,
.has-white-background-color em,
.is-style-outline .wp-block-button__link,
.is-style-outline .wp-block-button__link *,
.is-style-outline .wp-element-button,
.is-style-outline .wp-element-button *,
.header-login-button,
.header-login-button a,
.header-login-button span {
  color: #111111 !important;
  -webkit-text-fill-color: #111111 !important;
  text-fill-color: #111111 !important;
  text-indent: 0 !important;
  font-size: 20px !important;
  line-height: 1.2 !important;
  opacity: 1 !important;
  visibility: visible !important;
}


/* Fix text inside custom .btn links */
a.btn,
.btn,
.btn:link,
.btn:visited,
.btn:hover,
.btn:active {
  color: #1f2937 !important;
  -webkit-text-fill-color: #1f2937 !important;
  font-size: 16px !important;
  line-height: 1.2 !important;
  text-indent: 0 !important;
  text-decoration: none !important;
  white-space: normal !important;
  overflow: visible !important;
  opacity: 1 !important;
  visibility: visible !important;
}

/* Show only when LOGGED IN */
body:not(.logged-in) .menu-member-only {
  display: none;
}

/* Show only when LOGGED OUT */
body.logged-in .menu-logged-out-only {
  display: none;
}


/*Move content down from header*/

body .entry-content {
  padding-top: 96px !important;
}

/* Login/logout box*/
/* White login/logout box in header */
.menu-login-box {
  background: #ffffff !important;
  color: #1f2a7a !important;
  padding: 10px 18px !important;
  display: inline-block !important;
}

/* Make sure the actual link text inside is visible */
.menu-login-box a {
  color: #1f2a7a !important;
  text-decoration: none !important;
}

/* Optional: keep visited/hover from turning white */
.menu-login-box a:visited,
.menu-login-box a:hover,
.menu-login-box a:focus {
  color: #1f2a7a !important;
}


@media (max-width: 1024px) {

  /* Full mobile menu panel */
  .wp-block-navigation__responsive-container,
  .wp-block-navigation__responsive-dialog,
  .wp-block-navigation__responsive-container-content {
    background: #d97a1e !important;
    color: #ffffff !important;
  }

  /* Layout cleanup */
  .wp-block-navigation__responsive-container-content {
    display: block !important;
    justify-content: flex-start !important;
    align-items: flex-start !important;
    min-height: auto !important;
    padding: 28px 24px !important;
  }

  .wp-block-navigation__responsive-container-content .wp-block-navigation__container,
  .wp-block-navigation__responsive-container-content ul {
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
    gap: 0 !important;
  }

  .wp-block-navigation__responsive-container-content li,
  .wp-block-navigation__responsive-container-content .wp-block-navigation-item {
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  /* ALL links */
  .wp-block-navigation__responsive-container-content a,
  .wp-block-navigation__responsive-container-content .wp-block-navigation-item__content {
    color: #ffffff !important;
  }

  /* 🔵 TOP-LEVEL ITEMS (bigger + bold) */
  .wp-block-navigation__responsive-container-content .wp-block-navigation__container>.wp-block-navigation-item>.wp-block-navigation-item__content {
    display: block !important;
    font-size: 22px !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;
    padding: 14px 0 !important;
  }

  /* 🔵 SUBMENU WRAPPER (indent) */
  .wp-block-navigation__responsive-container-content .wp-block-navigation__submenu-container {
    background: transparent !important;
    border: 0 !important;
    margin: 0 0 10px 0 !important;
    padding-left: 30px !important;
  }

  /* 🔵 SUBMENU ITEMS (smaller) */
  .wp-block-navigation__responsive-container-content .wp-block-navigation__submenu-container .wp-block-navigation-item__content,
  .wp-block-navigation__responsive-container-content .wp-block-navigation__submenu-container a {
    display: block !important;
    font-size: 16px !important;
    font-weight: 500 !important;
    line-height: 1.35 !important;
    padding: 8px 0 !important;
  }

  /* Hover/focus */
  .wp-block-navigation__responsive-container-content a:hover,
  .wp-block-navigation__responsive-container-content a:focus {
    opacity: 0.9;
  }

  /* Close icon */
  .wp-block-navigation__responsive-container-close svg {
    fill: #ffffff !important;
    color: #ffffff !important;
    stroke: #ffffff !important;
  }

  /* Remove submenu toggle icons */
  .wp-block-navigation__responsive-container-content .wp-block-navigation__submenu-icon,
  .wp-block-navigation__responsive-container-content button.wp-block-navigation-submenu__toggle {
    display: none !important;
  }
}

@media (max-width: 1024px) {
  .wp-block-navigation__responsive-container-content .wp-block-navigation__container>.wp-block-navigation-item>.wp-block-navigation-item__content {
    color: #ffffff !important;
  }
}




/* Hide Join Us when logged in */
body.logged-in .hide-when-logged-in {
  display: none !important;
}

/* Hide Member Info when logged out */
body:not(.logged-in) .show-when-logged-in {
  display: none !important;
}

/* Extra coverage for block navigation links/items */
body.logged-in .hide-when-logged-in.wp-block-navigation-item,
body.logged-in .hide-when-logged-in .wp-block-navigation-item__content,
body:not(.logged-in) .show-when-logged-in.wp-block-navigation-item,
body:not(.logged-in) .show-when-logged-in .wp-block-navigation-item__content {
  display: none !important;
}

/* ==============================
   MEMBER INFO PAGE — page 1271
   clean layout
   ============================== */

.page-id-1271 .wim-wrap {
  max-width: 1360px !important;
  margin: 0 auto !important;
  padding: 0 24px !important;
  box-sizing: border-box !important;
}

/* two-column layout */
@media (min-width: 960px) {
  .page-id-1271 .wim-row-zoom {
    display: grid !important;
    grid-template-columns: minmax(620px, 1fr) 430px !important;
    gap: 24px !important;
    align-items: start !important;
  }

  .page-id-1271 .wim-row-zoom>.wp-block-column {
    min-width: 0 !important;
    flex: none !important;
  }
}

/* all cards */
.page-id-1271 .wim-card {
  background: #ffffff !important;
  border-radius: 16px !important;
  padding: 22px 28px !important;
  box-shadow: 0 6px 18px rgba(0, 0, 0, .14) !important;
  border: 0 !important;
}

/* left card */
.page-id-1271 .wim-card--orange {
  background: #ffffff !important;
  color: #111111 !important;
  min-height: 260px !important;
}

/* right column cards */
.page-id-1271 .wim-right .wim-card {
  margin: 0 0 12px 0 !important;
  min-height: 104px !important;
}

/* zoom card taller */
.page-id-1271 .wim-right .wim-zoom {
  min-height: 145px !important;
}

/* card text */
.page-id-1271 .wim-right .wim-card h4,
.page-id-1271 .wim-right .wim-card p {
  margin-top: 0 !important;
}

.page-id-1271 .wim-right .wim-card h4 {
  font-size: 22px !important;
  line-height: 1.2 !important;
  margin-bottom: 12px !important;
}

.page-id-1271 .wim-right .wim-card p {
  font-size: 16px !important;
}

/* place buttons on right side of cards */
.page-id-1271 .wim-right .wim-card {
  position: relative !important;
  padding-right: 170px !important;


  /* ===== Member Info right-side action cards ===== */

  .wim-zoom-btn,
  .wim-zoom-btn .wp-block-button__link,
  .wim-zoom-btn .wp-element-button,
  .wp-block-button.wim-zoom-btn .wp-block-button__link {
    background: #f47b20 !important;
    color: #ffffff !important;
    border-radius: 7px !important;
    padding: 8px 18px !important;
    min-width: 96px !important;
    height: 32px !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    text-decoration: none !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-shadow: 0 3px 6px rgba(0, 0, 0, .22) !important;
  }

  /* profile button, since it currently has no custom class */
  .wp-block-buttons .wp-block-button__link,
  .wp-block-buttons .wp-element-button {
    background: #f47b20 !important;
    color: #ffffff !important;
    border-radius: 7px !important;
    padding: 8px 18px !important;
    min-width: 96px !important;
    height: 32px !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    text-decoration: none !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-shadow: 0 3px 6px rgba(0, 0, 0, .22) !important;
  }

  /* card rows */
  .wp-block-buttons {
    margin-left: auto !important;
    justify-content: flex-end !important;
  }

  /* mobile card cleanup */
  @media (max-width: 959px) {
    .wp-block-column {
      box-sizing: border-box !important;
    }

    .wp-block-column>.wp-block-group,
    .wp-block-column>.wp-block-buttons {
      max-width: 100% !important;
    }
  }


}

.page-id-1271 .wim-right .wp-block-buttons {
  position: absolute !important;
  right: 24px !important;
  bottom: 22px !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* orange buttons */
.page-id-1271 .wim-right .wp-block-button__link {
  background: #f07814 !important;
  color: #ffffff !important;
  border-radius: 10px !important;
  padding: 12px 22px !important;
  font-size: 16px !important;
  font-weight: 800 !important;
  white-space: nowrap !important;
  box-shadow: 0 4px 12px rgba(0, 0, 0, .18) !important;
}

/* Facebook / Meetup buttons in left card */
.page-id-1271 .wim-card--orange .wp-block-button__link {
  background: #29226f !important;
  color: #ffffff !important;
  border-radius: 10px !important;
  padding: 10px 26px !important;
  font-weight: 800 !important;
}

/* mobile */
@media (max-width: 959px) {
  .page-id-1271 .wim-row-zoom {
    display: block !important;
  }

  .page-id-1271 .wim-right .wim-card {
    padding: 18px 20px !important;
  }

  .page-id-1271 .wim-right .wp-block-buttons {
    position: static !important;
    margin-top: 12px !important;
  }
}

/* Member Info right-side cards: compact row layout */
@media (min-width: 1025px) {
  .page-id-1271 .wim-right .wim-card {
    position: relative !important;
    padding: 18px 170px 18px 28px !important;
    min-height: 84px !important;
  }

  .page-id-1271 .wim-right .wim-card .wp-block-buttons {
    position: absolute !important;
    right: 28px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    margin: 0 !important;
  }

  .page-id-1271 .wim-right .wim-card .wp-block-button {
    margin: 0 !important;
  }

  .page-id-1271 .wim-right .wim-card .wp-block-button__link {
    white-space: nowrap !important;
  }

  .page-id-1271 .wim-right .wim-zoom {
    min-height: 150px !important;
  }
}

/* ===== Member Info right column card sizing ===== */

@media (min-width: 960px) {

  /* right column */
  .wp-block-columns>.wp-block-column:last-child {
    max-width: 430px !important;
    flex-basis: 430px !important;
  }

  /* all three right-side cards */
  .wp-block-columns>.wp-block-column:last-child>.wp-block-group {
    width: 100% !important;
    max-width: 430px !important;
    box-sizing: border-box !important;
    border-radius: 14px !important;
    padding: 22px 28px !important;
    margin-bottom: 14px !important;
  }

  /* first Zoom card taller */
  .wp-block-columns>.wp-block-column:last-child>.wp-block-group:first-child {
    min-height: 207px !important;
  }

  /* PDF and Profile cards */
  .wp-block-columns>.wp-block-column:last-child>.wp-block-group:nth-child(2),
  .wp-block-columns>.wp-block-column:last-child>.wp-block-group:nth-child(3) {
    min-height: 120px !important;
  }
}


/* ===== Member Info PDF/Profile button placement ===== */

@media (min-width: 960px) {

  /* PDF and Profile cards become two-column rows */
  .wp-block-columns>.wp-block-column:last-child>.wp-block-group:nth-child(2),
  .wp-block-columns>.wp-block-column:last-child>.wp-block-group:nth-child(3) {
    display: grid !important;
    grid-template-columns: 1fr auto !important;
    align-items: center !important;
    column-gap: 20px !important;
  }

  /* remove extra paragraph/button margins inside those cards */
  .wp-block-columns>.wp-block-column:last-child>.wp-block-group:nth-child(2) p,
  .wp-block-columns>.wp-block-column:last-child>.wp-block-group:nth-child(3) p,
  .wp-block-columns>.wp-block-column:last-child>.wp-block-group:nth-child(2) .wp-block-buttons,
  .wp-block-columns>.wp-block-column:last-child>.wp-block-group:nth-child(3) .wp-block-buttons {
    margin: 0 !important;
  }

  /* push buttons to the far right */
  .wp-block-columns>.wp-block-column:last-child>.wp-block-group:nth-child(2) .wp-block-buttons,
  .wp-block-columns>.wp-block-column:last-child>.wp-block-group:nth-child(3) .wp-block-buttons {
    justify-self: end !important;
  }
}


/* ===== Member Info left card sizing ===== */

@media (min-width: 960px) {

  /* left column main card */
  .wp-block-columns>.wp-block-column:first-child>.wp-block-group:first-child {
    min-height: 245px !important;
    padding: 24px 30px !important;
    box-sizing: border-box !important;
  }

  /* tighten text spacing inside left card */
  .wp-block-columns>.wp-block-column:first-child>.wp-block-group:first-child p {
    margin-top: 0 !important;
    margin-bottom: 10px !important;
    line-height: 1.2 !important;
  }

  /* tighten Facebook / Meetup button spacing */
  .wp-block-columns>.wp-block-column:first-child .wp-block-buttons {
    margin-top: 4px !important;
    margin-bottom: 12px !important;
  }
}

/* ===== Tighten vertical spacing in right column ===== */

@media (min-width: 960px) {

  /* reduce space between cards */
  .wp-block-columns>.wp-block-column:last-child>.wp-block-group {
    margin-bottom: 10px !important;
  }

  /* remove extra bottom gap on last card */
  .wp-block-columns>.wp-block-column:last-child>.wp-block-group:last-child {
    margin-bottom: 0 !important;
  }
}


/* ===== Compress right-side cards vertically ===== */

@media (min-width: 960px) {

  /* all right-side cards */
  .wp-block-columns>.wp-block-column:last-child>.wp-block-group {
    padding: 16px 22px !important;
  }

  /* Zoom card */
  .wp-block-columns>.wp-block-column:last-child>.wp-block-group:first-child {
    min-height: 170px !important;
  }

  /* PDF + Profile cards */
  .wp-block-columns>.wp-block-column:last-child>.wp-block-group:nth-child(2),
  .wp-block-columns>.wp-block-column:last-child>.wp-block-group:nth-child(3) {
    min-height: 90px !important;
  }

  /* tighten text spacing inside right cards */
  .wp-block-columns>.wp-block-column:last-child p {
    margin-bottom: 4px !important;
  }
}


/* ===== Member Info left card font consistency ===== */

@media (min-width: 960px) {

  .wp-block-columns>.wp-block-column:first-child>.wp-block-group:first-child {
    font-family: inherit !important;
    font-size: 16px !important;
    font-weight: 500 !important;
    line-height: 1.25 !important;
  }

  .wp-block-columns>.wp-block-column:first-child>.wp-block-group:first-child p {
    font-size: 16px !important;
    font-weight: 500 !important;
    line-height: 1.25 !important;
  }
}


/* ===== Member Info final card positioning/colors ===== */

@media (min-width: 960px) {

  /* move both columns down from header */
  .wp-block-columns {
    margin-top: 44px !important;
  }

  /* left card orange + white text */
  .wp-block-columns>.wp-block-column:first-child>.wp-block-group:first-child {
    background: #f47b20 !important;
    color: #ffffff !important;
    min-height: 378px !important;
  }

  .wp-block-columns>.wp-block-column:first-child>.wp-block-group:first-child p,
  .wp-block-columns>.wp-block-column:first-child>.wp-block-group:first-child a {
    color: #ffffff !important;
  }

  /* stretch right stack to roughly match left card bottom */
  .wp-block-columns>.wp-block-column:last-child>.wp-block-group:first-child {
    min-height: 182px !important;
  }

  .wp-block-columns>.wp-block-column:last-child>.wp-block-group:nth-child(2),
  .wp-block-columns>.wp-block-column:last-child>.wp-block-group:nth-child(3) {
    min-height: 96px !important;
  }
}


/* ===== Member Info final proportional tweaks ===== */

@media (min-width: 960px) {

  /* left orange card slightly shorter */
  .wp-block-columns>.wp-block-column:first-child>.wp-block-group:first-child {
    min-height: 350px !important;
  }

  /* right cards closer to sample height */
  .wp-block-columns>.wp-block-column:last-child>.wp-block-group:first-child {
    min-height: 150px !important;
  }

  .wp-block-columns>.wp-block-column:last-child>.wp-block-group:nth-child(2),
  .wp-block-columns>.wp-block-column:last-child>.wp-block-group:nth-child(3) {
    min-height: 82px !important;
  }

  /* slightly tighter vertical gap between right cards */
  .wp-block-columns>.wp-block-column:last-child>.wp-block-group {
    margin-bottom: 8px !important;
  }
}

/* ===== Final alignment polish ===== */

@media (min-width: 960px) {

  /* bring columns slightly closer together (visual balance) */
  .wp-block-columns {
    gap: 26px !important;
  }


  /* tiny trim on left card height */
  .wp-block-columns>.wp-block-column:first-child>.wp-block-group:first-child {
    min-height: 340px !important;
  }

  /* tighten button vertical alignment inside left card */
  .wp-block-columns>.wp-block-column:first-child .wp-block-buttons {
    margin-top: 2px !important;
  }
}


/* ===== Slightly slimmer PDF/Profile cards ===== */

@media (min-width: 960px) {

  .wp-block-columns>.wp-block-column:last-child>.wp-block-group:nth-child(2),
  .wp-block-columns>.wp-block-column:last-child>.wp-block-group:nth-child(3) {
    min-height: 68px !important;
    padding-top: 12px !important;
    padding-bottom: 12px !important;
  }
}

/* ===== Perfect vertical centering for small cards ===== */

@media (min-width: 960px) {

  .wp-block-columns>.wp-block-column:last-child>.wp-block-group:nth-child(2),
  .wp-block-columns>.wp-block-column:last-child>.wp-block-group:nth-child(3) {
    display: grid !important;
    grid-template-columns: 1fr auto !important;
    align-items: center !important;
  }

  /* ensure text + button align perfectly center */
  .wp-block-columns>.wp-block-column:last-child>.wp-block-group:nth-child(2) p,
  .wp-block-columns>.wp-block-column:last-child>.wp-block-group:nth-child(3) p,
  .wp-block-columns>.wp-block-column:last-child>.wp-block-group:nth-child(2) .wp-block-buttons,
  .wp-block-columns>.wp-block-column:last-child>.wp-block-group:nth-child(3) .wp-block-buttons {
    margin: 0 !important;
    align-self: center !important;
  }
}

/* ===== Final right-card spacing trim ===== */

@media (min-width: 960px) {

  .wp-block-columns>.wp-block-column:last-child>.wp-block-group {
    margin-bottom: 6px !important;
  }

  .wp-block-columns>.wp-block-column:last-child>.wp-block-group:last-child {
    margin-bottom: 0 !important;
  }
}


/* ===== MOBILE RESET for Member Info content only ===== */

@media (max-width: 959px) {

  /* only the Member Info page content columns, not header */
  .entry-content>.wp-block-columns {
    margin-top: 20px !important;
    gap: 18px !important;
  }

  .entry-content>.wp-block-columns>.wp-block-column>.wp-block-group {
    display: block !important;
    min-height: auto !important;
    padding: 18px 20px !important;
  }

  .entry-content>.wp-block-columns>.wp-block-column>.wp-block-group .wp-block-buttons {
    justify-content: flex-start !important;
    margin-top: 10px !important;
  }




  .entry-content>.wp-block-columns>.wp-block-column>.wp-block-group .wp-block-button__link,
  .entry-content>.wp-block-columns>.wp-block-column>.wp-block-group .wp-element-button {
    width: auto !important;
    min-width: 120px !important;
  }

  .entry-content>.wp-block-columns>.wp-block-column>.wp-block-group p {
    margin-bottom: 10px !important;
  }
}

/* ===== Mobile button alignment fix ===== */

@media (max-width: 959px) {

  .entry-content .wp-block-buttons {
    justify-content: flex-start !important;
  }

  .entry-content .wp-block-button {
    width: 100% !important;
  }

  .entry-content .wp-block-button__link,
  .entry-content .wp-element-button {
    display: inline-block !important;
    min-width: 140px !important;
  }
}



/* WIM footer: desktop/tablet layout */
footer .wp-block-columns {
  display: flex !important;
  flex-wrap: nowrap !important;
  align-items: flex-start !important;
  justify-content: flex-start !important;
  gap: 70px !important;
}

footer .wp-block-column {
  flex: 0 0 auto !important;
  width: auto !important;
  min-width: 140px !important;
  max-width: none !important;
}

footer .wp-block-column:nth-child(3) {
  min-width: 330px !important;
}

/* Tighten footer text to match mockup */
footer h2,
footer h3,
footer p {
  margin-top: 0 !important;
}

footer a,
footer p {
  font-size: 12px !important;
  line-height: 1.25 !important;
}


/* WIM admin/member tables: restore readable text */
.wim-admin,
.wim-admin *,
.wim-dashboard,
.wim-dashboard *,
.wim-members-admin,
.wim-members-admin * {
  color: #26324a !important;
}

/* Keep action icons in their intended colors */
.wim-admin .actions *,
.wim-dashboard .actions *,
.wim-members-admin .actions * {
  color: inherit !important;
}

/* Table headers */
.wim-admin table th,
.wim-dashboard table th,
.wim-members-admin table th {
  color: #5b6478 !important;
}

/* Table body */
.wim-admin table td,
.wim-dashboard table td,
.wim-members-admin table td {
  color: #26324a !important;
}

/* Links inside admin tables */
.wim-admin table td a,
.wim-dashboard table td a,
.wim-members-admin table td a {
  color: #2563eb !important;
}

@media (max-width: 768px) {

  nav.wim-dashboard .wim-dashboard__bottom {
    position: static !important;
    inset: auto !important;
    margin: 0 0 12px 0 !important;
    padding: 0 !important;
  }

  nav.wim-dashboard .wim-dashboard__bottom .wim-dashboard__link {
    position: static !important;
    display: block !important;
    margin: 0 !important;
  }

  nav.wim-dashboard .wim-dashboard__nav {
    margin-top: 12px !important;
  }

  nav.wim-dashboard .wim-dashboard__title {
    color: #ffffff !important;
    opacity: 1 !important;
  }

  nav.wim-dashboard .wim-dashboard__title::before,
  nav.wim-dashboard .wim-dashboard__title::after {
    display: none !important;
    content: none !important;
  }
}

/* WIM Galleries admin page title fix */
body.page-id-1307 h1,
body.page-id-1307 .entry-title,
body.page-id-1307 .wp-block-post-title {
  color: #26324a !important;
}

/* WIM Galleries admin table text fix */
body.page-id-1307 table,
body.page-id-1307 table th,
body.page-id-1307 table td {
  color: #26324a !important;
}

body.page-id-1307 table a {
  color: #2563eb !important;
}


/* WIM Users list page (Member List) text fix */
body.page-id-664 h1,
body.page-id-664 .entry-title,
body.page-id-664 .wp-block-post-title {
  color: #26324a !important;
}

body.page-id-664 table,
body.page-id-664 table th,
body.page-id-664 table td {
  color: #26324a !important;
}

body.page-id-664 table a {
  color: #2563eb !important;
}

/* WIM Calendar page text fix */
body.page-id-2020 h1,
body.page-id-2020 .entry-title,
body.page-id-2020 .wp-block-post-title {
  color: #26324a !important;
}

/* Calendar tables / lists (if any) */
body.page-id-2020 table,
body.page-id-2020 table th,
body.page-id-2020 table td {
  color: #26324a !important;
}

/* Links */
body.page-id-2020 a {
  color: #2563eb !important;
}


/* WIM Financial page text fix */
body.page-id-4538,
body.page-id-4538 p,
body.page-id-4538 label,
body.page-id-4538 span,
body.page-id-4538 div {
  color: #26324a !important;
  opacity: 1 !important;
}

/* Headings */
body.page-id-4538 h1,
body.page-id-4538 h2,
body.page-id-4538 h3 {
  color: #26324a !important;
}

/* Buttons */
body.page-id-4538 button,
body.page-id-4538 input[type="submit"] {
  color: #ffffff !important;
}

/* Links */
body.page-id-4538 a {
  color: #2563eb !important;
}

/* WIM Financial page submit button */
body.page-id-4538 input[type="submit"],
body.page-id-4538 button[type="submit"] {
  background: #6366f1 !important;
  color: #ffffff !important;
  border: none !important;
  border-radius: 6px !important;
  padding: 8px 14px !important;
  font-weight: 700 !important;
  cursor: pointer !important;
  opacity: 1 !important;
}

body.page-id-4538 input[type="submit"]:hover,
body.page-id-4538 button[type="submit"]:hover {
  background: #4f46e5 !important;
}

/* WIM Email Builder page text fix */
body.page-id-4545,
body.page-id-4545 p,
body.page-id-4545 label,
body.page-id-4545 span,
body.page-id-4545 div {
  color: #26324a !important;
  opacity: 1 !important;
}

/* Headings */
body.page-id-4545 h1,
body.page-id-4545 h2,
body.page-id-4545 h3 {
  color: #26324a !important;
}

/* Inputs and form text */
body.page-id-4545 input,
body.page-id-4545 textarea,
body.page-id-4545 select {
  color: #26324a !important;
}

/* Tabs (President’s Newsletter / etc.) */
body.page-id-4545 .frm_tab a,
body.page-id-4545 .frm_tabs a {
  color: #2563eb !important;
}

/* Links */
body.page-id-4545 a {
  color: #2563eb !important;
}





/* WIM Email page – Send TEST button */
body.page-id-4545 button,
body.page-id-4545 input[type="button"] {
  background: #6b7280 !important;
  /* nice gray */
  color: #ffffff !important;
  opacity: 1 !important;
  border: none !important;
  border-radius: 6px !important;
  padding: 10px 16px !important;
  font-weight: 600 !important;
  cursor: pointer !important;
}

/* Keep the red button red */
body.page-id-4545 button[style*="background"],
body.page-id-4545 .wim-send-all {
  background: #dc2626 !important;
  color: #ffffff !important;
}



/* WIM Email page – TinyMCE (mce) tooltip fix */
body.page-id-4545 .mce-tooltip,
body.page-id-4545 .mce-tooltip-inner {
  background: #374151 !important;
  color: #ffffff !important;
  font-size: 12px !important;
  border-radius: 4px !important;
  padding: 4px 8px !important;
}

/* Tooltip arrow */
body.page-id-4545 .mce-tooltip-arrow {
  border-top-color: #374151 !important;
}


/* WIM Email preview – purple branding lines */
body.page-id-4545 .frm_form_fields .frm_html_container strong,
body.page-id-4545 .frm_form_fields .frm_html_container p:first-child,
body.page-id-4545 .frm_form_fields .frm_html_container p:last-child {
  color: #3b2e7e !important;
  /* your WIM purple */
}



/* WIM Email preview styling */
body.page-id-4545 .wim-email-header,
body.page-id-4545 .wim-email-footer {
  color: #2F247a !important;
  /* WIM purple */
}

/* WIM Email preview – override inline color */
body.page-id-4545 p[style*="letter-spacing:0.22em"] {
  color: #3b439b !important;
}

/* WIM Email preview – bottom online/in-person line */
body.page-id-4545 p[style*="letter-spacing:0.12em"] {
  color: #3b439b !important;
}

/* removed stray closing brace from original CSS */


/* Homepage Media & Text block fix */
.wp-block-media-text {
  align-items: start !important;
}

.wp-block-media-text__content {
  padding-right: 40px !important;
  box-sizing: border-box !important;
  overflow-wrap: break-word;
}

.wp-block-media-text__content p {
  max-width: 100% !important;
}

/* Prevent text from flowing under image */
.wp-block-media-text.has-media-on-the-right {
  grid-template-columns: 50% 50% !important;
}


/* Events Calendar archive — push calendar below custom header */
body.post-type-archive-tribe_events .tec-block__archive-events,
body.post-type-archive-tribe_events .tribe-block.tec-block__archive-events {
  padding-top: 130px !important;
}


@media (max-width: 768px) {

  nav.wim-dashboard {
    position: static !important;
    width: auto !important;
    max-width: none !important;
    min-height: 0 !important;
    height: auto !important;
    margin: 16px !important;
    padding: 16px !important;
    background: #000 !important;
    border-radius: 12px !important;
  }

  .wim-dashboard__title {
    font-size: 20px !important;
    line-height: 1.2 !important;
    margin-bottom: 12px !important;
  }

  .wim-dashboard__nav,
  .wim-dashboard__bottom {
    display: grid !important;
    gap: 10px !important;
  }

  .wim-dashboard__link {
    display: block !important;
    font-size: 16px !important;
    line-height: 1.2 !important;
    padding: 10px 12px !important;
    border-radius: 8px !important;
    background: rgba(255, 255, 255, .12) !important;
  }

  .wim-dashboard__bottom {
    margin-top: 10px !important;
  }
}

@media (max-width: 768px) {

  /* Remove duplicate title */
  .wim-dashboard__title::after {
    display: none !important;
    content: none !important;
  }

  /* Compact dashboard block */
  nav.wim-dashboard {
    margin: 20px 16px 30px !important;
    padding: 14px !important;
  }

  /* Smaller title */
  .wim-dashboard__title {
    font-size: 18px !important;
    margin-bottom: 14px !important;
    text-align: center !important;
  }

  /* Prevent overlap */
  .wim-dashboard__nav,
  .wim-dashboard__bottom {
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;
  }

  /* Button cleanup */
  .wim-dashboard__link {
    font-size: 15px !important;
    padding: 12px 16px !important;
    min-height: auto !important;
    line-height: 1.2 !important;
  }

  /* Home button spacing fix */
  .wim-dashboard__bottom {
    margin-top: 14px !important;
  }
}



/* =========================================================
   800. MOBILE ADMIN DASHBOARD + MEMBER TABLES
   Rebuilt 2026-06-28 from the broken tail section of the old file.
   ========================================================= */

/* Hidden by default; displayed only in the mobile admin layout. */
.wim-admin-mobile-toggle {
  display: none;
}

/* Admin page portrait/mobile drawer.
   Page 975 = /admin/. Adjust if the page ID changes. */
@media (max-width: 768px) {

  /* Hide WordPress.com/WordPress admin chrome on the WIM admin page. */
  body.page-id-975 #wpadminbar,
  body.page-id-975 .wpcom-admin-bar,
  body.page-id-975 .masterbar {
    display: none !important;
  }

  body.page-id-975 html,
  body.page-id-975.admin-bar {
    margin-top: 0 !important;
  }

  /* Hide the public site hamburger/menu on the WIM admin page. */
  body.page-id-975 .wp-block-navigation__responsive-container-open,
  body.page-id-975 .wp-block-navigation__responsive-container,
  body.page-id-975 .wp-block-navigation__responsive-dialog,
  body.page-id-975 .wp-block-navigation__responsive-container-content {
    display: none !important;
    visibility: hidden !important;
  }

  /* Off-canvas WIM admin drawer. */
  body.page-id-975 nav.wim-dashboard,
  nav.wim-dashboard {
    position: fixed !important;
    top: 0 !important;
    left: -82vw !important;
    width: 78vw !important;
    height: 100vh !important;
    z-index: 99999 !important;
    margin: 0 !important;
    border-radius: 0 !important;
    transition: left .25s ease !important;
  }

  body.page-id-975.wim-admin-menu-open nav.wim-dashboard,
  body.wim-admin-menu-open nav.wim-dashboard {
    left: 0 !important;
  }

  /* WIM admin hamburger.
     Tweak top/left here only if the icon needs tiny alignment adjustment. */
  body.page-id-975 .wim-admin-mobile-toggle,
  .wim-admin-mobile-toggle {
    display: inline-flex !important;
    position: fixed !important;
    top: 42px !important;
    left: 320px !important;
    right: auto !important;
    z-index: 1000000 !important;
    background: transparent !important;
    color: #ffffff !important;
    border: 0 !important;
    border-radius: 0 !important;
    padding: 8px 10px !important;
    font-size: 38px !important;
    line-height: 1 !important;
    box-shadow: none !important;
  }

  /* Admin page footer stacks instead of running off-screen. */
  body.page-id-975 footer .wp-block-columns {
    display: block !important;
    gap: 0 !important;
  }

  body.page-id-975 footer .wp-block-column {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    margin-bottom: 18px !important;
    text-align: left !important;
  }

  body.page-id-975 footer {
    overflow-x: hidden !important;
  }
}

/* Admin page phone landscape: keep the black WIM dashboard, hide public orange menu. */
@media (orientation: landscape) and (max-width: 1180px),
(max-height: 600px) and (max-width: 1180px) {

  body.page-id-975 header.wp-block-template-part,
  body.page-id-975 .wim-header-band,
  body.page-id-975 .wp-block-navigation,
  body.page-id-975 .wp-block-navigation__responsive-container,
  body.page-id-975 .wp-block-navigation__responsive-dialog,
  body.page-id-975 .wp-block-navigation__responsive-container-content,
  body.page-id-975 .wp-block-navigation__responsive-container-open {
    display: none !important;
    visibility: hidden !important;
  }

  body.page-id-975 #wpadminbar,
  body.page-id-975 .wpcom-admin-bar,
  body.page-id-975 .masterbar {
    display: none !important;
  }

  body.page-id-975 .entry-content {
    padding-top: 0 !important;
  }
}

/* ==========================================================
   WIM MOBILE - PUBLIC LANDSCAPE MENU
   ========================================================== */

/* Hidden unless explicitly enabled below */
.wim-public-landscape-menu {
  display: none;
}

/* Test: expose the public menu on landscape phones */
@media (orientation: landscape) and (max-height: 700px) {

  body:not(.page-id-975) .wim-public-landscape-menu {
    display: block !important;
    position: fixed !important;
    top: 0;
    left: 0;
    width: 220px;
    padding: 20px;
    background: #f4862f;
    z-index: 100000;
  }
}

/* Hide the landscape-menu wrapper by default */
.wim-landscape-menu-slot {
  display: none !important;
}
/* =====================================================
   Landscape Phone Navigation
   Verified 2026-07-14
   - Hidden on desktop
   - Hidden on /admin
   - Orange left navigation
   - Width tuned for readability
   ===================================================== */

/* =====================================================
   Landscape Phone Navigation
   Verified 2026-07-14
   - Hidden on desktop
   - Hidden on /admin
   - Orange left navigation
   - Width tuned for readability
   ===================================================== */
@media (max-width: 959px) and (orientation: landscape) and (max-height: 700px) {

  body:not(.page-id-975) .wim-landscape-menu-slot {
    display: block !important;
  }
	
	body:not(.page-id-975) .wim-header-logo {
	
	/* first valuw horeizontal, second value verticle */
  transform: translate(-99px, -5px) !important;
}


  body:not(.page-id-975) .wim-public-landscape-menu {
    display: block !important;
    position: fixed !important;
    top: 0;
    left: 0;
    width: 155px;
    padding: 20px;
    background: #f4862f;
    z-index: 100000;
  }
}

/* Portrait — keep the public hamburger at the right edge */
@media (orientation: portrait) {

  body:not(.page-id-975) .wim-header-band .wp-block-navigation {
    margin-left: auto !important;
  }

  body:not(.page-id-975) .wp-block-navigation__responsive-container-open {
    margin-left: auto !important;
  }
}

/* Members page: keep View 640 as a horizontally scrollable table on mobile. */
@media (max-width: 900px) {

  body.page-id-664 .wim-member-table {
    display: block !important;
    width: 100vw !important;
    max-width: 100vw !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow-x: auto !important;
    overflow-y: visible !important;
    -webkit-overflow-scrolling: touch !important;
  }

  body.page-id-664 .wim-toolbar {
    display: flex !important;
    flex-wrap: nowrap !important;
    gap: 10px !important;
    width: 1050px !important;
    max-width: none !important;
    margin: 0 0 10px 0 !important;
  }

  body.page-id-664 .wim-toolbar .wim-select {
    width: 220px !important;
    flex: 0 0 220px !important;
  }

  body.page-id-664 .wim-toolbar .wim-input {
    width: 360px !important;
    flex: 0 0 360px !important;
  }

  body.page-id-664 .wim-toolbar .wim-btn {
    flex: 0 0 auto !important;
  }

  body.page-id-664 table.frm-responsive-table {
    display: table !important;
    width: 1250px !important;
    min-width: 1250px !important;
    max-width: none !important;
    table-layout: fixed !important;
    border-collapse: separate !important;
    border-spacing: 0 !important;
  }

  body.page-id-664 table.frm-responsive-table thead {
    display: table-header-group !important;
    visibility: visible !important;
    opacity: 1 !important;
  }

  body.page-id-664 table.frm-responsive-table tbody {
    display: table-row-group !important;
    visibility: visible !important;
  }

  body.page-id-664 table.frm-responsive-table tr,
  body.page-id-664 table.frm-responsive-table tr.tablesorter-headerRow {
    display: table-row !important;
    visibility: visible !important;
    opacity: 1 !important;
  }

  body.page-id-664 table.frm-responsive-table th,
  body.page-id-664 table.frm-responsive-table td {
    display: table-cell !important;
    position: static !important;
    float: none !important;
    clear: none !important;
    height: auto !important;
    padding: 14px 10px !important;
    white-space: nowrap !important;
    text-align: left !important;
    vertical-align: middle !important;
    color: #26324a !important;
    font-size: 14px !important;
    line-height: 1.4 !important;
    visibility: visible !important;
    opacity: 1 !important;
    text-indent: 0 !important;
    overflow: visible !important;
  }

  body.page-id-664 table.frm-responsive-table th {
    background: #f7f8fb !important;
    font-size: 12px !important;
    text-transform: uppercase !important;
    border-bottom: 1px solid #d9dee8 !important;
  }

  body.page-id-664 table.frm-responsive-table th:nth-child(1),
  body.page-id-664 table.frm-responsive-table td:nth-child(1) {
    width: 220px !important;
    min-width: 220px !important;
  }

  body.page-id-664 table.frm-responsive-table th:nth-child(2),
  body.page-id-664 table.frm-responsive-table td:nth-child(2) {
    width: 340px !important;
    min-width: 340px !important;
  }

  body.page-id-664 table.frm-responsive-table th:nth-child(3),
  body.page-id-664 table.frm-responsive-table td:nth-child(3) {
    width: 170px !important;
    min-width: 170px !important;
  }

  body.page-id-664 table.frm-responsive-table th:nth-child(4),
  body.page-id-664 table.frm-responsive-table td:nth-child(4) {
    width: 200px !important;
    min-width: 200px !important;
  }

  body.page-id-664 table.frm-responsive-table th:nth-child(5),
  body.page-id-664 table.frm-responsive-table td:nth-child(5) {
    width: 130px !important;
    min-width: 130px !important;
  }

  body.page-id-664 table.frm-responsive-table th:nth-child(6),
  body.page-id-664 table.frm-responsive-table td:nth-child(6) {
    width: 220px !important;
    min-width: 220px !important;
  }
	
	

  body.page-id-664 table.frm-responsive-table th:last-child,
  body.page-id-664 table.frm-responsive-table td:last-child {
    width: 170px !important;
    min-width: 170px !important;
  }

  body.page-id-664 table.frm-responsive-table td *,
  body.page-id-664 table.frm-responsive-table th * {
    visibility: visible !important;
    opacity: 1 !important;
    color: inherit !important;
  }

  body.page-id-664 table.frm-responsive-table td::before,
  body.page-id-664 table.frm-responsive-table td::after,
  body.page-id-664 table.frm-responsive-table th::before,
  body.page-id-664 table.frm-responsive-table th::after,
  body.page-id-664 table.frm-responsive-table .frm_mobile_label,
  body.page-id-664 table.frm-responsive-table .frm_data_label {
    display: none !important;
    content: none !important;
  }

  body.page-id-664 table.frm-responsive-table .wim-actions {
    display: flex !important;
    flex-wrap: nowrap !important;
    justify-content: flex-start !important;
    align-items: center !important;
    gap: 2px !important;
    min-width: 145px !important;
  }

  body.page-id-664 table.frm-responsive-table .wim-actions a,
  body.page-id-664 table.frm-responsive-table .wim-action {
    display: inline-flex !important;
    flex: 0 0 22px !important;
    width: 22px !important;
    min-width: 22px !important;
    max-width: 22px !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  body.page-id-664 table.frm-responsive-table .wim-actions svg {
    width: 18px !important;
    height: 18px !important;
  }

  body.page-id-664 table.frm-responsive-table .wim-action--approve,
  body.page-id-664 table.frm-responsive-table .wim-action--approve svg {
    color: #10b981 !important;
    stroke: #10b981 !important;
  }

  body.page-id-664 table.frm-responsive-table .wim-action--reject,
  body.page-id-664 table.frm-responsive-table .wim-action--reject svg {
    color: #f59e0b !important;
    stroke: #f59e0b !important;
  }

  body.page-id-664 table.frm-responsive-table .wim-action--view,
  body.page-id-664 table.frm-responsive-table .wim-action--view svg,
  body.page-id-664 table.frm-responsive-table .wim-action--edit,
  body.page-id-664 table.frm-responsive-table .wim-action--edit svg {
    color: #2563eb !important;
    stroke: #2563eb !important;
  }

  body.page-id-664 table.frm-responsive-table .wim-action--delete,
  body.page-id-664 table.frm-responsive-table .wim-action--delete svg {
    color: #ef4444 !important;
    stroke: #ef4444 !important;
  }
}

/* Financial upload page — mobile portrait left offset fix. */
@media (max-width: 600px) {

  body.page-id-4538 .entry-content,
  body.page-id-4538 .wp-block-post-content {
    padding-left: 42px !important;
    padding-right: 16px !important;
    box-sizing: border-box !important;
  }
}

/* Mass Email page — mobile containment and preview fixes. */
@media (max-width: 600px) {

  body.page-id-4545 {
    overflow-x: hidden !important;
  }

  body.page-id-4545 .wp-block-post-content,
  body.page-id-4545 .entry-content,
  body.page-id-4545 .wp-site-blocks,
  body.page-id-4545 main {
    margin-left: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    overflow-x: hidden !important;
    box-sizing: border-box !important;
  }

  body.page-id-4545 .entry-content *,
  body.page-id-4545 .wp-block-post-content * {
    box-sizing: border-box !important;
    max-width: 100% !important;
  }

  body.page-id-4545 #wim-email,
  body.page-id-4545 #wim-email form,
  body.page-id-4545 fieldset,
  body.page-id-4545 input[type="text"],
  body.page-id-4545 textarea,
  body.page-id-4545 select {
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: hidden !important;
  }

  body.page-id-4545 button {
    white-space: normal !important;
    max-width: 100% !important;
  }

  body.page-id-4545 #wim_newsletter_preview,
  body.page-id-4545 #wim_newsletter_preview>div {
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: hidden !important;
  }

  body.page-id-4545 #wim_newsletter_preview>div {
    padding: 0 10px !important;
    margin: 0 !important;
    box-sizing: border-box !important;
  }

  body.page-id-4545 #wim_newsletter_preview img {
    max-width: 100% !important;
    height: auto !important;
  }

  body.page-id-4545 #wim_newsletter_preview p {
    letter-spacing: normal !important;
    white-space: normal !important;
    overflow-wrap: break-word !important;
    word-break: break-word !important;
  }

  body.page-id-4545 .wim-preview-title {
    white-space: normal !important;
    overflow-wrap: break-word !important;
    font-size: 18px !important;
    line-height: 1.15 !important;
  }
}

/* Mass Email page — landscape mobile/tablet containment. */
@media (min-width: 601px) and (max-width: 1000px) {

  body.page-id-4545 .wp-block-post-content,
  body.page-id-4545 .entry-content {
    padding-left: 0 !important;
    padding-right: 0 !important;
    overflow-x: hidden !important;
  }

  body.page-id-4545 input[type="text"],
  body.page-id-4545 fieldset,
  body.page-id-4545 #wim_newsletter_preview,
  body.page-id-4545 #wim_newsletter_preview>div {
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: hidden !important;
  }
}

/* Admin page landscape: hide public WP navigation menu */
@media (orientation: landscape) and (max-width: 1180px) {

  .wp-block-navigation,
  .wp-block-navigation__container,
  .wp-block-navigation__submenu-container,
  .wp-block-navigation-item {
    display: none !important;
  }
}


/* Admin page landscape: keep footer inside the visible content area */
@media (orientation: landscape) and (max-width: 1180px) {
  footer .wp-block-columns {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 24px !important;
  }

  footer .wp-block-column {
    min-width: 0 !important;
    width: auto !important;
    max-width: 100% !important;
  }

  footer a,
  footer p {
    overflow-wrap: anywhere !important;
    word-break: break-word !important;
  }
}

/* ============================================================
   WIM MOBILE LAYOUT - PUBLIC PAGES
   ------------------------------------------------------------
   Purpose:
   1. Hide the WordPress.com/Admin toolbar on phones.
   2. Remove the extra icons at the top of the page.
   3. Stack the footer vertically for easier reading.
   4. Allow long email addresses to wrap cleanly.
   Applies to:
   - Home page
   - About
   - Calendar
   - Member Info
   - All public-facing pages
   ============================================================ */


/* Mobile: hide WordPress.com/admin bar clutter */
@media (max-width: 768px) {

  #wpadminbar,
  .wpcom-admin-bar,
  .masterbar {
    display: none !important;
  }

  html,
  body.admin-bar {
    margin-top: 0 !important;
  }
}

/* Mobile: stack footer columns */
@media (max-width: 768px) {
  footer .wp-block-columns {
    display: block !important;
    gap: 0 !important;
  }

  footer .wp-block-column {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    margin-bottom: 18px !important;
    text-align: left !important;
  }

  footer a,
  footer p {
    overflow-wrap: anywhere !important;
    word-break: break-word !important;
  }
}

/* Mobile landscape: stack homepage hero instead of squeezing two columns */
@media (orientation: landscape) and (max-width: 1180px) {
  body.home .wp-block-media-text.wim-hero-media {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  body.home .wp-block-media-text.wim-hero-media .wp-block-media-text__media,
  body.home .wp-block-media-text.wim-hero-media .wp-block-media-text__content {
    width: 100% !important;
    max-width: 100% !important;
  }
}

/* ============================================================
   WIM MOBILE - MEMBERSHIP FORM
   ------------------------------------------------------------
   Purpose:
   Adjust Formidable Form #2 layout for phones.
   - Portrait register button
   - Landscape upload/register spacing
   ============================================================ */
/* ============================================================
   WIM MOBILE - MEMBERSHIP FORM
   ------------------------------------------------------------
   Purpose:
   Adjust Formidable Form #2 layout for phones.
   - Portrait register button
   - Landscape upload/register spacing
   ============================================================ */
/* Portrait: center Register button under the text box */
@media (max-width: 768px) {
  #frm_form_2_container .frm_submit {
    display: flex !important;
    justify-content: center !important;
    margin-top: 16px !important;
  }

  #frm_form_2_container .frm_submit button,
  #frm_form_2_container .frm_submit input[type="submit"] {
    width: auto !important;
    min-width: 220px !important;
    max-width: 90% !important;
    margin: 0 auto !important;
  }
}

/* Landscape: tune upload/register placement */
@media (orientation: landscape) and (max-width: 1180px) {

  #frm_form_2_container {
    --wim-upload-nudge-x: 0px;
    --wim-upload-nudge-y: 0px;
    --wim-register-nudge-x: 34px;
    --wim-register-nudge-y: 0px;
  }

  #frm_form_2_container .wim-upload {
    transform: translate(var(--wim-upload-nudge-x),
        var(--wim-upload-nudge-y)) !important;
  }

  #frm_form_2_container .frm_submit {
    transform: translate(var(--wim-register-nudge-x),
        var(--wim-register-nudge-y)) !important;
  }
}

#frm_form_2_container .frm_submit {
  transform: translateX(24px) !important;
}

/* choose a file button*/

#frm_form_2_container input[type="file"]::file-selector-button {
  transform: translateX(-12px) !important;
}

/* -----------------------------------------------------------
   WIM MOBILE - Public pages landscape header spacing
   ----------------------------------------------------------- */

@media (orientation: landscape) and (max-width: 1180px) {

  body:not(.logged-in) .entry-content,
  body:not(.logged-in) main.wp-block-post-content {
    padding-top: 80px !important;
    /* tweak */
  }

}



/* -----------------------------------------------------------
   WIM MOBILE - Form 2 Upload Button
   ----------------------------------------------------------- */
@media (max-width:959px) and (orientation:landscape) {

  #frm_form_2_container .wim-file-btn {
    position: relative;
    left: 125px;
    /* tweak this */
  }

}


/* -----------------------------------------------------------
   WIM MOBILE - Hide WordPress Admin Bar
   ----------------------------------------------------------- */

@media (max-width:959px) {

  #wpadminbar {
    display: none !important;
  }

  html {
    margin-top: 0 !important;
  }

  body.admin-bar {
    margin-top: 0 !important;
    padding-top: 0 !important;
  }

}

@media (orientation: landscape) and (max-width: 1180px) {

  .wp-site-blocks {
    padding-top: 57px !important;
  }

}


/* Landscape phones: stack Form 2 fields like portrait */
@media (orientation: landscape) and (max-width: 1180px) {

  #frm_form_2_container .frm_fields,
  #frm_form_2_container .frm_fields_container {
    display: block !important;
  }

  #frm_form_2_container .frm_form_field,
  #frm_form_2_container .frm_first_half,
  #frm_form_2_container .frm_last_half,
  #frm_form_2_container .frm_half,
  #frm_form_2_container .wim-col-left,
  #frm_form_2_container .wim-col-mid,
  #frm_form_2_container .wim-col-right {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    float: none !important;
    clear: both !important;
    margin-left: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  #frm_form_2_container input,
  #frm_form_2_container textarea,
  #frm_form_2_container select {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
  }

  #frm_form_2_container .frm_primary_label {
    color: #ffffff !important;
  }
}

/* Register Buttom */
/* Fine-tune Register button position */
#frm_form_2_container .frm_submit button,
#frm_form_2_container .frm_button_submit {

  position: relative;
  left: -4px;
  /* <-- tweak this */
}

/* Portrait — do not allow the logo flex item to shrink */
@media (orientation: portrait) and (pointer: coarse) {
  .wim-header-band .wim-header-logo {
    flex: 0 0 auto !important;
    width: auto !important;
    min-width: max-content !important;
  }
}

/* Portrait phones – shift the hamburger toward the right.
   WordPress positions the collapsed menu too close to the logo,
   so we apply a visual horizontal offset only. */
@media (orientation: portrait) and (pointer: coarse) {
  body:not(.page-id-975) .wim-header-band .wp-block-navigation__responsive-container-open {
    transform: translateX(200px) !important;
  }
}


/* Hide Member Info unless PHP confirms access. */
.show-when-approved-member {
    display: none !important;
}

/* Show the complete navigation item without leaving a gap. */
body.wim-can-view-member-info .show-when-approved-member {
    display: flex !important;
}
	
	
	/* WIM member-list action icon colors on the live /members/ page */

body .wim-actions .wim-action--approve {
    color: #10b981 !important;
}

body .wim-actions .wim-action--remove,
body .wim-actions .wim-action--delete {
    color: #ef4444 !important;
}

body .wim-actions .wim-action--manager {
    color: #f59e0b !important;
}

body .wim-actions .wim-action--view {
    color: #0ea5e9 !important;
}

body .wim-actions .wim-action--edit {
    color: #64748b !important;
}

body .wim-actions .wim-action--protected {
    color: #94a3b8 !important;
}

/* Make every SVG line inherit its action’s assigned color. */
body .wim-actions .wim-action svg,
body .wim-actions .wim-action svg * {
    color: inherit !important;
    stroke: currentColor !important;
}
/*=========================================================END WIM CSS=========================================================*/
 