.elementor-kit-2884{--e-global-color-primary:#008E72;--e-global-color-secondary:#E72047;--e-global-color-text:#000000;--e-global-color-accent:#FFFFFF;--e-global-color-f80ecae:#2D2D2D;--e-global-color-eeaf1ee:#FFC645;--e-global-typography-primary-font-family:"Poppins";--e-global-typography-primary-font-size:19px;--e-global-typography-primary-font-weight:normal;--e-global-typography-secondary-font-family:"Poppins";--e-global-typography-secondary-font-size:16px;--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Poppins";--e-global-typography-text-font-size:18px;--e-global-typography-text-font-weight:700;--e-global-typography-text-text-transform:uppercase;--e-global-typography-text-line-height:22px;--e-global-typography-accent-font-family:"Roboto";--e-global-typography-accent-font-weight:500;--e-global-typography-ff396cd-font-family:"League Gothic";--e-global-typography-ff396cd-font-size:72px;--e-global-typography-ff396cd-text-transform:uppercase;--e-global-typography-6799941-font-family:"Poppins";--e-global-typography-6799941-font-size:19px;--e-global-typography-6799941-font-weight:500;--e-global-typography-7f0a927-font-family:"League Gothic";--e-global-typography-7f0a927-font-size:72px;--e-global-typography-7f0a927-font-weight:400;--e-global-typography-7f0a927-text-transform:uppercase;--e-global-typography-7ef83b5-font-family:"Poppins";--e-global-typography-7ef83b5-font-size:25px;--e-global-typography-7ef83b5-font-weight:700;--e-global-typography-7ef83b5-line-height:30px;--e-global-typography-ba2a28e-font-family:"Poppins";--e-global-typography-ba2a28e-font-size:24px;--e-global-typography-ba2a28e-font-weight:700;--e-global-typography-ba2a28e-text-transform:uppercase;--e-global-typography-c77556d-font-family:"Poppins";--e-global-typography-c77556d-font-size:19px;--e-global-typography-c77556d-font-weight:400;--e-global-typography-aa43252-font-family:"League Gothic";--e-global-typography-aa43252-font-size:72px;--e-global-typography-aa43252-font-weight:400;--e-global-typography-aa43252-text-transform:uppercase;--e-global-typography-8d1d4ef-font-family:"Poppins";--e-global-typography-8d1d4ef-font-size:25px;--e-global-typography-8d1d4ef-font-weight:700;--e-global-typography-8d1d4ef-line-height:30px;color:var( --e-global-color-text );font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );}.elementor-kit-2884 button,.elementor-kit-2884 input[type="button"],.elementor-kit-2884 input[type="submit"],.elementor-kit-2884 .elementor-button{background-color:var( --e-global-color-secondary );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );text-transform:var( --e-global-typography-text-text-transform );line-height:var( --e-global-typography-text-line-height );color:var( --e-global-color-accent );border-style:solid;border-width:0px 0px 0px 0px;border-color:var( --e-global-color-secondary );border-radius:56px 56px 56px 56px;}.elementor-kit-2884 button:hover,.elementor-kit-2884 button:focus,.elementor-kit-2884 input[type="button"]:hover,.elementor-kit-2884 input[type="button"]:focus,.elementor-kit-2884 input[type="submit"]:hover,.elementor-kit-2884 input[type="submit"]:focus,.elementor-kit-2884 .elementor-button:hover,.elementor-kit-2884 .elementor-button:focus{background-color:#00000000;color:var( --e-global-color-accent );border-style:solid;border-width:0px 0px 0px 0px;border-color:var( --e-global-color-primary );}.elementor-kit-2884 e-page-transition{background-color:#FFBC7D;}.elementor-kit-2884 p{margin-block-end:0px;}.elementor-kit-2884 a{color:var( --e-global-color-primary );}.elementor-kit-2884 a:hover{color:var( --e-global-color-text );}.elementor-kit-2884 h1{color:var( --e-global-color-accent );font-family:"League Gothic", Sans-serif;font-size:72px;}.elementor-kit-2884 h2{color:var( --e-global-color-text );font-family:"League Gothic", Sans-serif;font-size:56px;font-weight:400;text-transform:uppercase;}.elementor-kit-2884 h3{color:var( --e-global-color-text );font-family:"League Gothic", Sans-serif;font-size:39px;font-weight:normal;text-transform:uppercase;}.elementor-kit-2884 h4{color:var( --e-global-color-text );font-family:"League Gothic", Sans-serif;font-size:31px;font-weight:700;}.elementor-kit-2884 h5{color:var( --e-global-color-text );font-family:"Poppins", Sans-serif;font-size:25px;font-weight:700;line-height:30px;}.elementor-kit-2884 h6{color:var( --e-global-color-text );font-family:"Poppins", Sans-serif;font-size:20px;font-weight:700;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1600px;}.e-con{--container-max-width:1600px;--container-default-padding-top:0px;--container-default-padding-right:0px;--container-default-padding-bottom:0px;--container-default-padding-left:0px;}.elementor-widget:not(:last-child){margin-block-end:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header{padding-inline-end:0px;padding-inline-start:0px;}@media(max-width:1440px){.elementor-kit-2884{font-size:var( --e-global-typography-primary-font-size );}.elementor-kit-2884 button,.elementor-kit-2884 input[type="button"],.elementor-kit-2884 input[type="submit"],.elementor-kit-2884 .elementor-button{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1200px;}.e-con{--container-max-width:1200px;}}@media(max-width:1200px){.elementor-kit-2884{--e-global-typography-7f0a927-font-size:60px;--e-global-typography-7f0a927-line-height:70px;--e-global-typography-ba2a28e-font-size:60px;--e-global-typography-ba2a28e-line-height:70px;--e-global-typography-aa43252-font-size:60px;--e-global-typography-aa43252-line-height:70px;}}@media(max-width:1024px){.elementor-kit-2884{--e-global-typography-7f0a927-font-size:50px;--e-global-typography-7f0a927-line-height:60px;--e-global-typography-7ef83b5-font-size:20px;--e-global-typography-ba2a28e-font-size:50px;--e-global-typography-ba2a28e-line-height:60px;--e-global-typography-aa43252-font-size:50px;--e-global-typography-aa43252-line-height:60px;--e-global-typography-8d1d4ef-font-size:20px;font-size:var( --e-global-typography-primary-font-size );}.elementor-kit-2884 button,.elementor-kit-2884 input[type="button"],.elementor-kit-2884 input[type="submit"],.elementor-kit-2884 .elementor-button{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-2884{--e-global-typography-ff396cd-font-size:45px;--e-global-typography-7f0a927-font-size:36px;--e-global-typography-7f0a927-line-height:42px;--e-global-typography-7ef83b5-font-size:20px;--e-global-typography-7ef83b5-line-height:24px;--e-global-typography-ba2a28e-font-size:36px;--e-global-typography-ba2a28e-line-height:42px;--e-global-typography-c77556d-font-size:15px;--e-global-typography-aa43252-font-size:45px;--e-global-typography-8d1d4ef-font-size:22px;font-size:var( --e-global-typography-primary-font-size );}.elementor-kit-2884 button,.elementor-kit-2884 input[type="button"],.elementor-kit-2884 input[type="submit"],.elementor-kit-2884 .elementor-button{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS *//* Visibility and link utilities ------------------------- */
.hidden-item { display: none !important; }
.link-bold a { font-weight: 600; }
.link-white a { color: #fff; transition: color .2s ease; }
.link-hover-black a:hover { color: #000; text-decoration: underline; }

/* Button animation ------------------------------------- */
.btn-main .elementor-button {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    border-radius: 50px;
    background-color: var(--btn-bg);
    color: var(--btn-text);
    transition: color .3s ease;
}
.btn-main .elementor-button::before {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: inherit;
    background-color: var(--btn-hover-bg);
    transform: translateX(-102%);
    transition: transform .55s cubic-bezier(.22, 1, .36, 1);
    z-index: -1;
}
.btn-main .elementor-button:hover::before,
.btn-main .elementor-button:focus-visible::before {
    transform: translateX(0);
}
.btn-main .elementor-button:hover,
.btn-main .elementor-button:focus-visible {
    color: var(--btn-hover-text);
}
/* Colour variables are defined in WordPress Additional CSS. */

/* Link underline animation ----------------------------- */
a.link-main,
.link-main a {
    position: relative;
    display: inline-block;
    width: fit-content;
    text-decoration: none;
    padding-bottom: 6px;
}
a.link-main::after,
.link-main a::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 6px;
    width: 0;
    height: 3px;
    background-color: var(--link-underline, #009B78);
    pointer-events: none;
}
a.link-main:hover::after,
a.link-main:focus-visible::after,
.link-main a:hover::after,
.link-main a:focus-visible::after {
    animation: rvda-link-underline-bounce .65s ease-out both;
}
@keyframes rvda-link-underline-bounce {
    0% { width: 0; }
    75% { width: 101%; }
    95% { width: 99%; }
    100% { width: 100%; }
}
.link-primary { --link-underline: #009B78; }
.link-secondary { --link-underline: #008e72; }

/* Partner logos and icons ------------------------------ */
.partners-logos img {
    max-height: 95px !important;
    width: 100%;
    object-fit: contain;
}
.button-icon svg { width: 12px; height: 12px; }
.button-icon-green svg path { fill: var(--e-global-color-primary); }

/* Card styles ------------------------------------------ */
.event-card .img-hover-scale { transition: transform .4s; }
.event-card .event-title * { transition: color .2s; }
.event-card:hover .img-hover-scale { transform: scale(1.05); }
.event-card:hover .event-title * {
    color: var(--e-global-color-primary) !important;
}
.show-card { max-width: 506px; }

.card-gradient {
    position: relative;
    background:
        linear-gradient(#fff, #fff) padding-box,
        linear-gradient(180deg,
            #009B78 0%,
            rgba(0,155,120,.55) 15%,
            rgba(0,155,120,.18) 20%,
            rgba(0,155,120,0) 35%) border-box;
    border: 2px solid transparent;
    box-shadow: 0 10px 30px rgba(0,0,0,.08);
    /*height: 100%;*/
    box-sizing: border-box;
}
.card-gradient-bottom {
    border: 2px solid transparent;
    border-image-source: linear-gradient(0deg,
        #009B78 0%,
        rgba(0,155,120,.55) 15%,
        rgba(0,155,120,.15) 20%,
        rgba(0,155,120,0) 35%);
    border-image-slice: 1;
}
.card-gradient .elementor-widget-image { margin-bottom: 24px; }
.card-gradient .elementor-widget-image img {
    display: block;
    width: 100%;
    height: auto;
}
.card-gradient .elementor-heading-title { margin-bottom: 18px; }
.card-gradient .elementor-widget-text-editor,
.card-gradient .elementor-widget-theme-post-excerpt,
.card-gradient p { margin-bottom: 0; }
.card-gradient > .e-con-inner,
.card-gradient .elementor-widget-wrap { gap: 0; }


/* Staff Card - Hover Effects ---------------------- */

/* Main card */
.staff-card {
    border: 1px solid #ebebeb;
    transition:
        box-shadow 0.4s cubic-bezier(.22, 1, .36, 1);
}

/* Figma's five layered shadows */
.staff-card:hover {
    box-shadow:
        0 393px 110px 0 rgba(0, 0, 0, 0),
        0 252px 101px 0 rgba(0, 0, 0, 0.01),
        0 142px 85px 0 rgba(0, 0, 0, 0.02),
        0 63px 63px 0 rgba(0, 0, 0, 0.04),
        0 16px 35px 0 rgba(0, 0, 0, 0.04);
}

/* Image container - clips the zoom */
.staff-card .staff-img {
    overflow: hidden;
}

/* Image zoom */
.staff-card .staff-img img {
    display: block;
    width: 100%;
    transition:
        transform 0.55s cubic-bezier(.22, 1, .36, 1);
    transform: scale(1);
}

.staff-card:hover .staff-img img {
    transform: scale(1.08);
}

/* Staff name */
.staff-card .staff-name,
.staff-card .staff-name .elementor-heading-title,
.staff-card .staff-name a {
    transition: color 0.3s ease;
}

.staff-card:hover .staff-name,
.staff-card:hover .staff-name .elementor-heading-title,
.staff-card:hover .staff-name a {
    color: #E72047;
}

/* Keyboard accessibility */
.staff-card:focus-within {
    box-shadow:
        0 252px 101px 0 rgba(0, 0, 0, 0.01),
        0 142px 85px 0 rgba(0, 0, 0, 0.02),
        0 63px 63px 0 rgba(0, 0, 0, 0.04),
        0 16px 35px 0 rgba(0, 0, 0, 0.04);
}

.staff-card:focus-within .staff-img img {
    transform: scale(1.08);
}

.staff-card:focus-within .staff-name .elementor-heading-title,
.staff-card:focus-within .staff-name a {
    color: #E72047;
}

/* Reduced motion */
@media (prefers-reduced-motion: reduce) {
    .staff-card,
    .staff-card .staff-img img,
    .staff-card .staff-name,
    .staff-card .staff-name .elementor-heading-title,
    .staff-card .staff-name a {
        transition: none;
    }
}


/* FAQ accordion ---------------------------------------- */
.faq-accordion .e-n-accordion-item-title[aria-expanded="true"] {
    border-bottom: none !important;
}



/* Contact Icon Boxes ---------------------------------- */

.contact-icons .elementor-icon-box-wrapper {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 20px;
    text-align: left;
}

/* Icon container */
.contact-icons .elementor-icon-box-icon {
    flex: 0 0 72px;
    width: 72px;
    height: 56px;
    margin: 0 !important;
}

/* Red pill - Figma dimensions */
.contact-icons .elementor-icon {
    display: flex;
    align-items: center;
    justify-content: center;

    width: 72px;
    height: 56px;

    padding: 0;
    border-radius: 5000px;
    background-color: #E72047;
    box-sizing: border-box;
}

/* White icon - 24 x 24 */
.contact-icons .elementor-icon svg {
    display: block;
    width: 24px;
    height: 24px;
    fill: #FFFFFF;
    color: #FFFFFF;
}

.contact-icons .elementor-icon i {
    font-size: 24px;
    color: #FFFFFF;
}

/* Text container */
.contact-icons .elementor-icon-box-content {
    flex: 1 1 auto;
    min-width: 0;
    max-width: none;
}

/* Contact text */
.contact-icons .elementor-icon-box-title,
.contact-icons .elementor-icon-box-title a {
    margin: 0;
    color: #FFFFFF;

    font-family: "Poppins", sans-serif;
    font-size: 16px;
    font-weight: 600;
    line-height: 1.5;

    text-transform: uppercase;
    text-decoration: none;
}

/* Link interaction */
.contact-icons .elementor-icon-box-title a:hover {
    color: #FFFFFF;
    text-decoration: underline;
}

.contact-icons .elementor-icon-box-description {
    margin: 0;
}

/* Mobile ---------------------------------------------- */

@media (max-width: 767px) {
    .contact-icons .elementor-icon-box-wrapper {
        flex-direction: row;
        align-items: center;
        gap: 14px;
        text-align: left;
    }

    /* Maintain Figma pill dimensions */
    .contact-icons .elementor-icon-box-icon {
        flex: 0 0 72px;
        width: 72px;
        height: 56px;
        margin: 0 !important;
    }

    .contact-icons .elementor-icon {
        width: 72px;
        height: 56px;
    }

    .contact-icons .elementor-icon svg {
        width: 24px;
        height: 24px;
    }

    .contact-icons .elementor-icon i {
        font-size: 24px;
    }

    .contact-icons .elementor-icon-box-content {
        max-width: none;
    }

    .contact-icons .elementor-icon-box-title,
    .contact-icons .elementor-icon-box-title a {
        font-size: 13px;
        line-height: 1.5;
    }
}


/* Layout utilities ------------------------------------- */
.expand-above { margin-top: auto; }

/* Text truncation -------------------------------------- */
.truncate-3 p,
.truncate-3 .elementor-heading-title,
.truncate-2 p,
.truncate-2 .elementor-heading-title,
.truncate-responsive p,
.truncate-responsive .elementor-heading-title {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    overflow: hidden;
    margin-bottom: 0;
}
.truncate-3 p,
.truncate-3 .elementor-heading-title { -webkit-line-clamp: 3; line-clamp: 3; }
.truncate-2 p,
.truncate-2 .elementor-heading-title { -webkit-line-clamp: 2; line-clamp: 2; }
.truncate-responsive p,
.truncate-responsive .elementor-heading-title {
    -webkit-line-clamp: 3;
    line-clamp: 3;
}

/* 2 lines at Laptop and smaller. */
@media (max-width: 1440px) {
    .truncate-responsive p,
    .truncate-responsive .elementor-heading-title {
        -webkit-line-clamp: 2;
        line-clamp: 2;
    }
}
@media (max-width: 767px) {
    .event-card { min-width: 100%; }
    .contact-icons .elementor-icon-box-wrapper {
        flex-direction: row;
        align-items: center;
        text-align: left;
    }
    .contact-icons .elementor-icon-box-icon { margin: 0 !important; }
}

/* Reduced motion --------------------------------------- */
@media (prefers-reduced-motion: reduce) {
    .btn-main .elementor-button::before,
    .event-card .img-hover-scale,
    .event-card .event-title * { transition: none; }
    a.link-main:hover::after,
    a.link-main:focus-visible::after,
    .link-main a:hover::after,
    .link-main a:focus-visible::after {
        animation: none;
        width: 100%;
    }
}


/* List Utilities -------------------------------------- */

.bullet-small-indent ul,
ul.bullet-no-indent {
    margin-left: 0;
    padding-left: 20px;
}

.icon-hover {
  display: inline-block;
  animation: iconHover 1.5s ease-in-out infinite;
}

@keyframes iconHover {
  0% {
    transform: translateY(0) scale(0.8);
  }

  50% {
    transform: translateY(-8px) scale(1);
  }

  100% {
    transform: translateY(0) scale(0.8);
  }
}/* End custom CSS */