.elementor-6861 .elementor-element.elementor-element-fb7e2c2{--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:center;--padding-top:15px;--padding-bottom:15px;--padding-left:15px;--padding-right:15px;}.elementor-6861 .elementor-element.elementor-element-775399a{--display:flex;--min-height:371px;--justify-content:center;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--overlay-opacity:0.8;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-6861 .elementor-element.elementor-element-775399a:not(.elementor-motion-effects-element-type-background), .elementor-6861 .elementor-element.elementor-element-775399a > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://cgia.ca/wp-content/uploads/2025/05/iStock-1812402669-scaled.jpg");background-position:center center;background-size:cover;}.elementor-6861 .elementor-element.elementor-element-775399a::before, .elementor-6861 .elementor-element.elementor-element-775399a > .elementor-background-video-container::before, .elementor-6861 .elementor-element.elementor-element-775399a > .e-con-inner > .elementor-background-video-container::before, .elementor-6861 .elementor-element.elementor-element-775399a > .elementor-background-slideshow::before, .elementor-6861 .elementor-element.elementor-element-775399a > .e-con-inner > .elementor-background-slideshow::before, .elementor-6861 .elementor-element.elementor-element-775399a > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-color:transparent;--background-overlay:'';background-image:linear-gradient(90deg, #8292A291 0%, #DBE1E985 100%);}.elementor-6861 .elementor-element.elementor-element-775399a.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-6861 .elementor-element.elementor-element-e747d96{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--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-6861 .elementor-element.elementor-element-a7b3aca > .elementor-widget-container{margin:-50px -50px -50px -50px;padding:0px 0px 0px 0px;}.elementor-6861 .elementor-element.elementor-element-a7b3aca{text-align:center;}.elementor-6861 .elementor-element.elementor-element-a7b3aca img{width:35%;opacity:1;filter:brightness( 100% ) contrast( 100% ) saturate( 100% ) blur( 0px ) hue-rotate( 0deg );}.elementor-6861 .elementor-element.elementor-element-0e4285e{width:var( --container-widget-width, 102.804% );max-width:102.804%;--container-widget-width:102.804%;--container-widget-flex-grow:0;text-align:center;}.elementor-6861 .elementor-element.elementor-element-0e4285e.elementor-element{--flex-grow:0;--flex-shrink:0;}.elementor-6861 .elementor-element.elementor-element-0e4285e .elementor-heading-title{color:#FFFFFF;}.elementor-6861 .elementor-element.elementor-element-0a2b8d7{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-6861 .elementor-element.elementor-element-16bcb45{--divider-border-style:solid;--divider-color:#3F88C500;--divider-border-width:1px;}.elementor-6861 .elementor-element.elementor-element-16bcb45 .elementor-divider-separator{width:45%;margin:0 auto;margin-center:0;}.elementor-6861 .elementor-element.elementor-element-16bcb45 .elementor-divider{text-align:center;padding-block-start:25px;padding-block-end:25px;}.elementor-6861 .elementor-element.elementor-element-46c4cc1{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-6861 .elementor-element.elementor-element-2b3483e{--divider-border-style:solid;--divider-color:#3F88C596;--divider-border-width:1px;}.elementor-6861 .elementor-element.elementor-element-2b3483e .elementor-divider-separator{width:45%;margin:0 auto;margin-center:0;}.elementor-6861 .elementor-element.elementor-element-2b3483e .elementor-divider{text-align:center;padding-block-start:25px;padding-block-end:25px;}.elementor-6861 .elementor-element.elementor-element-10117e2{--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;}.elementor-6861 .elementor-element.elementor-element-2c20d39{--display:flex;--min-height:0px;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:space-around;--gap:20px 20px;--row-gap:20px;--column-gap:20px;--flex-wrap:wrap;--align-content:space-evenly;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:50px;--padding-bottom:50px;--padding-left:50px;--padding-right:50px;}.elementor-6861 .elementor-element.elementor-element-2c20d39.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-6861 .elementor-element.elementor-element-e387d33{--display:flex;}.elementor-6861 .elementor-element.elementor-element-a2e5736{--display:flex;}.elementor-6861 .elementor-element.elementor-element-bbaf01d{--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;}@media(max-width:767px){.elementor-6861 .elementor-element.elementor-element-a7b3aca > .elementor-widget-container{padding:22px 22px 22px 22px;}.elementor-6861 .elementor-element.elementor-element-a7b3aca.elementor-element{--order:99999 /* order end hack */;}.elementor-6861 .elementor-element.elementor-element-a7b3aca{text-align:center;}.elementor-6861 .elementor-element.elementor-element-91679e6{font-size:13px;}}@media(min-width:768px){.elementor-6861 .elementor-element.elementor-element-775399a{--width:55.284%;}.elementor-6861 .elementor-element.elementor-element-e747d96{--width:100%;}.elementor-6861 .elementor-element.elementor-element-2c20d39{--width:100%;}}/* Start custom CSS for container, class: .elementor-element-2c20d39 *//* ================================
   BOARD OF DIRECTORS GRID LAYOUT
================================ */

.bod-grid {
    display: flex;
    flex-wrap: wrap;
    gap: 15px;
    justify-content: center;
}

.bod-grid .member-profile {
    flex: 1 1 calc(33.333% - 20px);
    max-width: calc(33.333% - 20px);
    box-sizing: border-box;
}

@media (max-width: 1024px) {
    .bod-grid .member-profile {
        flex: 1 1 calc(50% - 24px);
        max-width: calc(50% - 24px);
    }
}

@media (max-width: 767px) {
    .bod-grid .member-profile {
        flex: 1 1 100%;
        max-width: 100%;
    }
}


/* ================================
   CARD BASE STYLE
================================ */

.member-profile {
    background: #ffffff;
    border-radius: 12px;
    padding: 16px;
    overflow: hidden;
    position: relative;
    transition: box-shadow 0.25s ease, transform 0.25s ease;
}

.member-profile:hover {
    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.12);
    transform: translateY(-4px);
}


/* ================================
   IMAGE EFFECTS
================================ */

.member-profile .member-photo img {
    display: block;
    width: auto;
    height: auto;
    border-radius: 10px;
    filter: grayscale(100%);
    transform: scale(1);
    transition: filter 0.3s ease, transform 0.3s ease;
}

.member-profile:hover .member-photo img {
    filter: grayscale(0%);
    transform: scale(1.05);
}


/* ================================
   TEXT SPACING
================================ */

.member-profile .elementor-heading-title {
    margin-top: 2px;
    margin-bottom: 1px;
    line-height: 1.2;
}

.member-profile .elementor-text-editor {
    margin-bottom: 0;
}

.member-profile .elementor-widget:not(:last-child) {
    margin-bottom: 6px;
}


/* ================================
   EXTRA CONTENT (HIDDEN AREA)
================================ */

.member-profile .member-extra {
    display: block !important;      /* CRITICAL FIX */
    overflow: hidden !important;    /* CRITICAL FIX */
    max-height: 0;
    opacity: 0;
    transform: translateY(8px);
    transition: opacity 0.25s ease, max-height 0.25s ease, transform 0.25s ease, margin-top 0.25s ease;
}

.member-profile:hover .member-extra {
    max-height: 1000px;
    opacity: 1;
    transform: translateY(0);
    margin-top: 10px;
}

.member-profile .member-extra .elementor-text-editor {
    margin-bottom: 10px;
    font-size: 0.95em;
    line-height: 1.5;
}

.member-profile .member-extra .elementor-social-icons-wrapper {
    justify-content: flex-start;
}


/* ================================
   TEXT CLAMP + FADE
================================ */

/* Text clamp and fade ONLY on the paragraph container */
.member-profile .member-extra .text-clamp,
.member-profile .member-extra .text-clamp p {
    display: -webkit-box;
    -webkit-line-clamp: 4;  /* max visible lines */
    -webkit-box-orient: vertical;
    overflow: hidden;
    position: relative;
}

.member-profile .member-extra .text-clamp::after,
.member-profile .member-extra .text-clamp p::after {
    content: "";
    position: absolute;
    bottom: 0;
    right: 0;
    width: 100%;
    height: 30px; /* height of fade overlay */
    background: linear-gradient(to bottom, transparent, white);
    pointer-events: none;
}


/* ================================
   SHOW MORE LINK
================================ */

.member-profile .show-more {
    color: #007acc;
    font-weight: 500;
    cursor: pointer;
    display: inline-block;
    margin-top: 5px;
}


/* ================================
   MODAL
================================ */

#member-modal {
    display: none;
    position: fixed;
    inset: 0; /* top/right/bottom/left = 0 */
    z-index: 9999;
}

.modal-overlay {
    position: absolute;
    inset: 0;
    background: rgba(0,0,0,0.6);
    z-index: 9998;
    pointer-events: auto;
}

.modal-content {
    position: relative;
    width: 80%;
    max-width: 900px;
    margin: 5% auto;
    background: #fff;
    border-radius: 16px;
    padding: 20px;
    z-index: 9999;
    pointer-events: auto;
}

.modal-inner {
    display: flex;
    gap: 20px;
    align-items: center;  
    flex-wrap: wrap; /* for mobile */
}

.modal-left {
    flex: 0 0 300px; /* fixed width for image */
}

.modal-left img {
    width: 100%;
    height: auto;
    border-radius: 12px;
    display: block;
    object-fit: cover;
}

.modal-right {
    flex: 1; /* take remaining space */
}

.modal-right h2 {
    margin-top: 0;
    margin-bottom: 4px;
}

.modal-right h4 {
    margin-top: 0;
    margin-bottom: 12px;
    font-weight: normal;
    color: #555;
}

.modal-right #modal-desc {
    margin-bottom: 12px;
    line-height: 1.5;
}

.modal-close {
    position: absolute;
    top: 10px;
    right: 15px;
    font-size: 24px;
    cursor: pointer;
}

/* Responsive for small screens */
@media (max-width: 768px) {
    .modal-inner {
        flex-direction: column;
        gap: 15px;
    }

    .modal-left {
        flex: 1 1 100%;
    }
}/* End custom CSS */
/* Start custom CSS *//* ================================
   BOD CARD TWEAKS
================================ */

/* Keep the card contents in a clean vertical order */
.bod-grid .member-profile {
    display: flex;
    flex-direction: column;
}

/* 1) Put name + title above image */
.bod-grid .member-profile .elementor-heading-title {
    order: 1;
}

.bod-grid .member-profile .member-title {
    order: 2;
}

.bod-grid .member-profile .member-photo {
    order: 3;
}

.bod-grid .member-profile .member-extra {
    order: 4;
}

/* 2) Make image a bit smaller + prevent text overlap */
.bod-grid .member-profile .member-photo {
    margin-top: 8px;
    overflow: hidden;          /* clips zoom so it never covers text */
    border-radius: 10px;
}

.bod-grid .member-profile .member-photo img {
    width: 100%;
    max-width: 300px;          /* reduce visual size */
    margin: 0 auto;
    display: block;
    height: auto;
    transform-origin: center center;
}

/* 3) Keep hover effect but make it gentler */
.bod-grid .member-profile:hover .member-photo img {
    transform: scale(1.03);    /* was 1.05, now less aggressive */
}

/* Optional: tighten title spacing above image */
.bod-grid .member-profile .elementor-heading-title {
    margin-bottom: 4px;
}

.bod-grid .member-profile .member-title {
    margin-bottom: 6px;
}

/* Center name + title */
.bod-grid .member-profile .elementor-heading-title,
.bod-grid .member-profile .member-title {
    text-align: center;
}

/* Keep image centered cleanly */
.bod-grid .member-profile .member-photo {
    display: flex;
    justify-content: center;
}

/*Country Tags*/
.modal-countries-wrap {
    margin-top: 10px;
}

.modal-countries-wrap h4 {
    margin-bottom: 8px;
    font-size: 16px;
    font-weight: 700;
}

.modal-countries {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.country-tag {
    display: inline-block;
    padding: 5px 10px;
    border-radius: 999px;
    background: #f1f1f1;
    color: #333;
    font-size: 13px;
    line-height: 1.2;
}/* End custom CSS */