.elementor-24441 .elementor-element.elementor-element-831b19a{--display:flex;--min-height:70vh;--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:40px 40px 40px 40px;--margin-top:20px;--margin-bottom:0px;--margin-left:0px;--margin-right:20px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-24441 .elementor-element.elementor-element-831b19a:not(.elementor-motion-effects-element-type-background), .elementor-24441 .elementor-element.elementor-element-831b19a > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#7A7A7A38;}.elementor-24441 .elementor-element.elementor-element-ae69bb0{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-24441 .elementor-element.elementor-element-b1671cb{width:var( --container-widget-width, 100% );max-width:100%;margin:20px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 30px;--container-widget-width:100%;--container-widget-flex-grow:0;text-align:start;}.elementor-24441 .elementor-element.elementor-element-b1671cb.elementor-element{--align-self:flex-end;}.elementor-24441 .elementor-element.elementor-element-b1671cb .elementor-heading-title{font-family:"Inter", Sans-serif;font-size:28px;font-weight:300;text-transform:none;font-style:normal;text-decoration:none;line-height:1.1em;letter-spacing:0px;color:var( --e-global-color-primary );}.elementor-24441 .elementor-element.elementor-element-9a69ecf{padding:30px 30px 30px 30px;}.elementor-24441 .elementor-element.elementor-element-9a69ecf img{width:95%;}.elementor-24441 .elementor-element.elementor-element-49b84c3{--display:flex;--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;--padding-top:40px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-24441 .elementor-element.elementor-element-49b84c3.e-con{--align-self:center;}.elementor-24441 .elementor-element.elementor-element-5066d9d4{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;font-family:"Helvetica", Sans-serif;font-size:25px;font-weight:300;color:var( --e-global-color-secondary );}.elementor-24441 .elementor-element.elementor-element-5066d9d4 a{color:var( --e-global-color-primary );}@media(max-width:1024px){.elementor-24441 .elementor-element.elementor-element-b1671cb .elementor-heading-title{font-size:65px;}}@media(min-width:768px){.elementor-24441 .elementor-element.elementor-element-831b19a{--width:100%;}.elementor-24441 .elementor-element.elementor-element-49b84c3{--width:95%;}}@media(max-width:767px){.elementor-24441 .elementor-element.elementor-element-b1671cb{text-align:center;}.elementor-24441 .elementor-element.elementor-element-b1671cb .elementor-heading-title{font-size:45px;}}/* 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 */