.elementor-24478 .elementor-element.elementor-element-3958b53e{--display:flex;--min-height:33vh;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--border-radius:30px 30px 30px 30px;--margin-top:10px;--margin-bottom:10px;--margin-left:10px;--margin-right:10px;}.elementor-24478 .elementor-element.elementor-element-3958b53e:not(.elementor-motion-effects-element-type-background), .elementor-24478 .elementor-element.elementor-element-3958b53e > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#7A7A7A00;}.elementor-24478 .elementor-element.elementor-element-3958b53e.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-24478 .elementor-element.elementor-element-33ec3f4e{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--align-items:stretch;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--margin-top:20px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:20px;--padding-right:20px;}.elementor-24478 .elementor-element.elementor-element-3214812d{--display:flex;}.elementor-24478 .elementor-element.elementor-element-4973a9d2{text-align:center;font-family:"Helvetica", Sans-serif;font-size:24px;font-weight:300;color:var( --e-global-color-secondary );}.elementor-24478 .elementor-element.elementor-element-695a67b3{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--align-items:stretch;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-24478 .elementor-element.elementor-element-647cb58e{--display:flex;}.elementor-24478 .elementor-element.elementor-element-54e5489e{--display:flex;}.elementor-24478 .elementor-element.elementor-element-4cb2e5ac img{width:30%;height:135px;object-fit:contain;object-position:center center;}.elementor-24478 .elementor-element.elementor-element-dbd408a{--display:flex;}.elementor-24478 .elementor-element.elementor-element-372058fb img{width:20%;height:135px;object-fit:contain;object-position:center center;}.elementor-24478 .elementor-element.elementor-element-339bbc8d{--display:flex;}.elementor-24478 .elementor-element.elementor-element-472b8096{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--align-items:stretch;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--margin-top:-30px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-24478 .elementor-element.elementor-element-1968ef5a{--display:flex;}.elementor-24478 .elementor-element.elementor-element-f5dff3f{--display:flex;}.elementor-24478 .elementor-element.elementor-element-7785206a{text-align:center;font-family:"Helvetica", Sans-serif;font-size:20px;font-weight:300;color:var( --e-global-color-secondary );}.elementor-24478 .elementor-element.elementor-element-7785206a a{color:var( --e-global-color-secondary );}.elementor-24478 .elementor-element.elementor-element-7785206a a:hover, .elementor-24478 .elementor-element.elementor-element-7785206a a:focus{color:var( --e-global-color-primary );}.elementor-24478 .elementor-element.elementor-element-11f8193{--display:flex;}.elementor-24478 .elementor-element.elementor-element-432f28e{text-align:center;font-family:"Helvetica", Sans-serif;font-size:20px;font-weight:300;color:var( --e-global-color-secondary );}.elementor-24478 .elementor-element.elementor-element-432f28e a{color:var( --e-global-color-secondary );}.elementor-24478 .elementor-element.elementor-element-432f28e a:hover, .elementor-24478 .elementor-element.elementor-element-432f28e a:focus{color:var( --e-global-color-primary );}.elementor-24478 .elementor-element.elementor-element-25dd270d{--display:flex;}@media(min-width:768px){.elementor-24478 .elementor-element.elementor-element-3958b53e{--width:94.837%;}.elementor-24478 .elementor-element.elementor-element-647cb58e{--width:15%;}.elementor-24478 .elementor-element.elementor-element-54e5489e{--width:35%;}.elementor-24478 .elementor-element.elementor-element-dbd408a{--width:35%;}.elementor-24478 .elementor-element.elementor-element-339bbc8d{--width:15%;}.elementor-24478 .elementor-element.elementor-element-1968ef5a{--width:15%;}.elementor-24478 .elementor-element.elementor-element-f5dff3f{--width:35%;}.elementor-24478 .elementor-element.elementor-element-11f8193{--width:35%;}.elementor-24478 .elementor-element.elementor-element-25dd270d{--width:15%;}}/* Start custom CSS *//*************************************************
  1) Sticky footer (Hello / Elementor templates)
**************************************************/
html, body { height: 100%; }
body {
  display: flex;
  flex-direction: column;
  min-height: 100vh;
}

/* Header and footer participate in the flex column */
.elementor-location-header { flex: 0 0 auto; }
.elementor-location-footer { flex: 0 0 auto; margin-top: auto; }

/* Make the Elementor content area fill the remaining space */
.elementor { flex: 1 0 auto; }

/* Safety: if your theme wraps content differently, these keep it stable */
#content, .site-main { flex: 1 0 auto; }

/*****************************************************************
  2) Leadership cards — wider on desktop (page ID 103 only)
     (Does NOT affect popup classes or click handlers)
******************************************************************/
.elementor-103 .e-con.e-parent {
  /* let the row wrap neatly and center the children */
  flex-wrap: wrap;
  justify-content: center;
  align-items: stretch;
  gap: clamp(16px, 2vw, 28px);
}

/* Make each card container wider on desktop, but still responsive */
.elementor-103 .e-con.e-parent > .e-con.e-child {
  /* grows nicely across the row, wraps when needed */
  flex: 1 1 clamp(340px, 32vw, 520px);
  max-width: 450px;
}

/* Ensure the card itself fills its container’s height cleanly */
.elementor-103 .wkit-profile-card-hover-effect { height: 100%; }
.elementor-103 .wkit-profile-card-inner {
  height: 100%;
  display: flex;
  flex-direction: column;
}
.elementor-103 .wkit-profile-card-image {
  /* make the image block behave nicely in tall/wide cards */
  background-size: cover;
  background-position: center;
  min-height: 360px; /* keeps the card looking substantial */
}
@media (min-width: 1280px) {
  .elementor-103 .wkit-profile-card-image {
    min-height: 300px; /* a bit larger on big screens */
  }
}

/* Tidy up spacing so there isn’t extra emptiness at the bottom */
.elementor-103 .wkit-profile-card-border {
  margin-top: auto;        /* pushes the text block down neatly */
  padding-bottom: 16px;    /* small breathing room */
}

/* Optional: modest title sizing balance on large screens */
@media (min-width: 1024px) {
  .elementor-103 .profile-card-heading        { font-size: clamp(22px, 1.6vw, 28px); }
  .elementor-103 .profile-card-heading-sub-title { font-size: clamp(14px, 1.1vw, 18px); }
}
/* --- Sticky footer for Hello / Elementor --- */
html, body { height: 100%; }                 /* allow 100% calculations */
body { min-height: 100dvh; }                  /* full viewport on modern browsers */

/* Hello theme outer wrappers become a flex column */
#page.site, .site {
  min-height: 100dvh;
  display: flex;
  flex-direction: column;
}

/* The content area expands to fill leftover space */
#content, .site-content, main,
.elementor-location-header ~ .elementor {     /* Elementor page canvas */
  flex: 1 0 auto;
}

/* Push the footer to the bottom when content is short */
.site-footer, .elementor-location-footer {
  margin-top: auto;
}

/* Optional: ensure no weird extra gaps on Elementor footers */
.elementor-location-footer { padding-bottom: 0; }

/* Optional safety: avoid accidental large top/bottom margins around the grid block */
.leadership-grid { margin-bottom: 24px; }/* End custom CSS */