/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme-child/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 2.0.0
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/* Add your custom styles here */

/* Global Colours Reference:

Primary:		--e-global-color-primary: #445EE9;
Secondary:		--e-global-color-secondary: #5CE1E6;
Text:			--e-global-color-text: #46474A;
Accent:			--e-global-color-accent: #F4F9FF;
Primary-900:	--e-global-color-13dd0ce: #0F1E6E;
Primary-800:	--e-global-color-abb6964: #132894;
Primary-700:	--e-global-color-78a9209: #2039C3;
Primary-600:	--e-global-color-bc3b9ad: #2A46DC;
Primary-400:	--e-global-color-bc42e68: #6F82E8;
Primary-300:	--e-global-color-0b113d2: #8D9EF9;
Primary-80:		--e-global-color-2b156f1: #E5E9FF;
Primary-50:		--e-global-color-f6ba3b8: #F3F5FF;
Neutral-50:		--e-global-color-165dbfc: #FCFCFC;
White:			--e-global-color-e2435a9: #FFFFFF;
Transparent:	--e-global-color-c636802: #FFFFFF00;
Secondary-700:	--e-global-color-c6a66ef: #00BBC2;
Secondary-400:	--e-global-color-f2e3c67: #91E8EB;
Secondary-200:	--e-global-color-22ef698: #C6F4F6;
Secondary-50:	--e-global-color-68ad588: #EBFEFF;
*/

/*** BOILERPLATE ***/

body {
    overflow-x: hidden !important;
}

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

/* Remove space after last P tag */
.elementor-widget-text-editor p:last-child,
.elementor-widget-heading p:last-child,
.premium-header-block p:last-child,
.elementor-widget-theme-post-excerpt p:last-child,
.elementor-widget-theme-post-content p:last-child {
    margin-bottom: 0 !important;
}

/* Link transitions */
p>a,
li>a,
.elementor-widget-text-editor a,
.elementor-heading-title a {
    transition: 300ms;
}

.oo-faq-accordion .jet-toggle__content a {
    height: 0;
    overflow: hidden;
    -webkit-transition: height 0.5s ease;
    -o-transition: height 0.5s ease;
    transition: height 0.5s ease, color 300ms;
    visibility: hidden;
}

.oo-faq-accordion .jet-toggle.active-toggle>.jet-toggle__content a {
    height: auto;
    visibility: visible;
}

/* Link colours */
.elementor-widget-text-editor a {
    color: var(--e-global-color-secondary);
    font-weight: 700;
}

.elementor-widget-text-editor a:hover {
    color: var(--e-global-color-f6ba3b8);
}

.oo-faq-accordion p a {
    color: var(--e-global-color-primary);
    font-weight: 700;
}

.oo-faq-accordion p a:hover {
    color: var(--e-global-color-text);
}

.oo-help-now-link:hover {
    color: var(--e-global-color-secondary);
    cursor: pointer;
}

/* Remove space from the bottom of icons */
.elementor-icon-wrapper,
.elementor-button-icon {
    display: flex !important;
}

/* Buttons active state */
.elementor-widget-button:not(.oo-tab-btn, .oo-mobile-menu-btn, .oo-secondary-btn, .oo-blog-card-readmore) a:active,
.oo-menu-button a:active {
    background: var(--e-global-color-f6ba3b8) !important;
    color: var(--e-global-color-primary) !important;
}

.oo-secondary-btn a:active {
    background: var(--e-global-color-22ef698) !important;
    color: var(--e-global-color-primary) !important;
    border: 1px solid var(--e-global-color-68ad588) !important;
}

/* Buttons arrow hover style */
.elementor-button-icon svg {
    transition: 300ms;
}

.elementor-widget-button:hover .elementor-button-icon svg:has(path#expand_circle_right) {
    transform: translateX(4px);
}

.oo-button-download svg path {
    transition: all 200ms linear;
}

.oo-button-download:hover .oo-download-arrow {
    transform: translateY(2px);
}

.oo-button-download:hover .oo-download-arrow,
.oo-button-download:hover .oo-download-line {
    fill: var(--e-global-color-bc42e68);
}

/* Hero button text max-width small mobile */
@media (max-width: 361px) {
    .elementor-widget-button:not(.oo-tab-btn, .oo-mobile-menu-btn) .elementor-button-text {
        max-width: 165px;
    }
}

/*** UTILITY CLASSES ***/

/* Wave gradient backgrounds */
.oo-wave-filled {
    background: var(--e-global-color-accent);
}

.oo-wave-gradient {
    width: 100%;
    background: linear-gradient(84deg,
            #445ee9,
            #5ce1e6,
            #445ee9,
            #5ce1e6,
            #445ee9,
            #5ce1e6);
    background-size: 400% 100%;
    animation: oo-wave-gradient 18s linear infinite;
    animation-direction: alternate;
}

@keyframes oo-wave-gradient {
    0% {
        background-position: 0%;
    }

    100% {
        background-position: 100%;
    }
}

@media (max-width: 1024px) {

    .oo-home-hero-wave-filled,
    .oo-home-hero-wave-gradient,
    .oo-cta-wave-filled,
    .oo-cta-wave-gradient1,
    .oo-cta-wave-gradient2,
    .oo-footer-wave-filled,
    .oo-footer-wave-gradient {
        max-width: unset !important;
    }
}

/* Heading spans with primary colour */
.oo-span-primary span {
    color: var(--e-global-color-primary);
}

/* Heading spans with secondary colour */
.oo-span-secondary span {
    color: var(--e-global-color-secondary);
}

/* Pill shaped headings */
.oo-pill-heading {
    padding: 8px 16px;
    border-radius: 20px;
    border: 1px solid var(--e-global-color-primary);
}

/* Lists in text editor widgets */
.elementor-widget-text-editor ul {
    padding: 0 0 0 25px;
}

.elementor-widget-text-editor li {
    padding: 5px 0 0 0;
}

/* Blob images */
.oo-blob-image img {
    border-radius: 50% 40% 50% 50% / 45% 40% 50% 50%;
    -webkit-animation: oo-liquid 16s ease-in-out infinite;
    animation: oo-liquid 16s ease-in-out infinite;
}

@keyframes oo-liquid {
    25% {
        border-radius: 55% 55% 55% 60% / 50% 65% 45% 65%;
    }

    50% {
        border-radius: 50% 40% 45% 70% / 55% 60% 45% 55%;
    }

    75% {
        border-radius: 65% 35% 60% 45% / 50% 45% 60% 55%;
    }
}

/*** MAIN STYLES ***/

/* Header menu */
.oo-header-menu .premium-nav-menu {
    column-gap: 12px !important;
}

@media (min-width: 1367px) {
    .oo-header-menu .premium-nav-menu {
        column-gap: 40px !important;
    }
}

.oo-header-menu .premium-mega-nav-item:not(.premium-item-hovered) {
    overflow: hidden !important;
}

/* Mega menus */
.oo-about-menu .elementor-nav-menu {
    width: 100%;
    justify-content: space-between !important;
}

.oo-about-menu .elementor-nav-menu:after {
    display: none !important;
}

.oo-workshops-menu {
    max-width: fit-content !important;
}


/* Menu button */
@media (min-width: 1201px) {
    .oo-menu-button a {
        color: var(--e-global-color-e2435a9) !important;
        background: var(--e-global-color-primary);
        border-radius: 40px;
        padding: 16px 36px !important;
        font-size: 20px !important;
        line-height: 24px !important;
        font-weight: 500 !important;
    }

    .oo-menu-button a:hover {
        background: var(--e-global-color-bc42e68);
    }
}

/* Sticky Header */
.elementor-sticky,
.elementor-sticky>div {
    transition: 300ms;
}

.elementor-sticky {
    width: 100% !important;
}

.elementor-sticky--effects {
    background: var(--e-global-color-e2435a9) !important;
    padding-top: 0 !important;
    box-shadow: 0 0 8px 1px rgba(0, 0, 0, 0.15);
}

.elementor-sticky:not(.elementor-sticky--effects)>div {
    box-shadow: 0 2px 8px 0 rgba(0, 0, 0, 0.1);
}

.elementor-sticky--effects>div {
    padding-top: 8px !important;
    padding-bottom: 8px !important;
}

@media (min-width: 1025px) {
    .elementor-sticky--effects .oo-menu-dropdown {
        padding: 17px 0 0 0 !important;
    }
}

/* Mobile menu popup buttons */
.oo-mobile-menu-btn a:active {
    background: var(--e-global-color-68ad588) !important;
    color: var(--e-global-color-secondary) !important;
    border-color: var(--e-global-color-68ad588) !important;
}

/* Home page hero section display text */
.oo-home-hero-headline {
    max-width: fit-content !important;
}

.oo-home-hero-headline span {
    font-weight: 800;
}

/* Home page hero section background */
@media (max-width: 1024px) {
    .oo-home-hero::before {
        background-image: linear-gradient(-15deg, var(--e-global-color-secondary) 0%, var(--e-global-color-c636802) 70%) !important;
    }
}

@media (min-width: 1025px) {
    .oo-home-hero::before {
        height: 200%;
        width: 65%;
        left: unset !important;
        top: -20% !important;
        right: 0;
    }
}

/* Home page hero section wave */
.oo-home-hero-wave-filled {
    height: calc(100% + 200px);
    clip-path: url(#home-hero-wave-filled);
}

.oo-home-hero-wave-gradient {
    height: calc(100% + 500px);
    clip-path: url(#home-hero-wave-gradient);
}

@media (min-width: 768px) {
    .oo-home-hero-wave-filled {
        height: 100%;
    }

    .oo-home-hero-wave-gradient {
        height: calc(100% + 300px);
    }
}

@media (min-width: 1025px) {
    .oo-home-hero-wave-filled {
        height: calc(100% - 419px);
    }

    .oo-home-hero-wave-gradient {
        height: calc(100% - 110px);
    }
}

/* Home page hero blob image */
.oo-home-hero-blob img {
    border-radius: 60% 40% 55% 45% / 55% 40% 60% 50%;
    -webkit-animation: oo-home-hero-blob 16s ease-in-out infinite;
    animation: oo-home-hero-blob 16s ease-in-out infinite;
}

@keyframes oo-home-hero-blob {
    25% {
        border-radius: 50% 60% 50% 55% / 50% 60% 50% 65%;
    }

    50% {
        border-radius: 60% 45% 45% 55% / 50% 60% 40% 50%;
    }

    75% {
        border-radius: 60% 60% 45% 65% / 75% 70% 50% 50%;
    }
}

/* Home page hero small blobs */
.oo-home-hero-small-blob img {
    border-radius: 60% 45% 45% 55% / 50% 60% 40% 50%;
    -webkit-animation: oo-home-hero-small-blob 12s ease-in-out infinite;
    animation: oo-home-hero-small-blob 12s ease-in-out infinite;
}

@keyframes oo-home-hero-small-blob {
    25% {
        border-radius: 60% 60% 45% 65% / 75% 70% 50% 50%;
    }

    50% {
        border-radius: 60% 40% 55% 45% / 55% 40% 60% 50%;
    }

    75% {
        border-radius: 50% 60% 50% 55% / 50% 60% 50% 65%;
    }
}

/* Carousel pagination */
.oo-pagination .swiper-pagination-bullet {
    width: 32px !important;
    height: 2px !important;
    transition: 300ms;
    opacity: 1 !important;
    margin: 0 4px !important;
    border-radius: 2px !important;
}

.oo-pagination .swiper-pagination-bullet:not(.swiper-pagination-bullet-active) {
    background: var(--e-global-color-bc3b9ad) !important;
}

.oo-pagination .swiper-pagination-bullet-active {
    background: var(--e-global-color-secondary) !important;
}

.oo-pagination .swiper-pagination-bullet:not(:has(+ .swiper-pagination-bullet.swiper-pagination-bullet-active), .swiper-pagination-bullet-active, .swiper-pagination-bullet-active + .swiper-pagination-bullet) {
    visibility: hidden;
    width: 0 !important;
    height: 0 !important;
    margin: 0 !important;
}

/* Home page service cards carousel */
.oo-service-card-carousel .elementor-swiper-button-prev {
    left: unset !important;
    right: calc(50% + 65px) !important;
}

.oo-service-card-carousel .elementor-swiper-button-next {
    left: calc(50% + 65px) !important;
    max-width: fit-content;
}

.oo-service-card-carousel .swiper-button-lock {
    display: none !important;
}

/* Home page service cards */
.oo-home-service-card {
    max-width: 344px !important;
}

.oo-service-card-title .elementor-widget-container {
    padding-right: 20px;
}

.oo-service-card-title h4 {
    color: var(--e-global-color-accent);
    position: relative;
    display: inline;
}

.oo-service-card-title h4:hover {
    color: var(--e-global-color-secondary);
}

.oo-service-card-title h4:after {
    content: url("data:image/svg+xml,%3Csvg width='16' height='16' viewBox='0 0 16 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M12.175 9.00646H1C0.716667 9.00646 0.479167 8.91062 0.2875 8.71896C0.0958333 8.52729 0 8.28979 0 8.00646C0 7.72312 0.0958333 7.48562 0.2875 7.29396C0.479167 7.10229 0.716667 7.00646 1 7.00646H12.175L7.275 2.10646C7.075 1.90646 6.97917 1.67312 6.9875 1.40646C6.99583 1.13979 7.1 0.906457 7.3 0.706457C7.5 0.523124 7.73333 0.42729 8 0.418957C8.26667 0.410624 8.5 0.506457 8.7 0.706457L15.3 7.30646C15.4 7.40646 15.4708 7.51479 15.5125 7.63146C15.5542 7.74812 15.575 7.87312 15.575 8.00646C15.575 8.13979 15.5542 8.26479 15.5125 8.38146C15.4708 8.49812 15.4 8.60646 15.3 8.70646L8.7 15.3065C8.51667 15.4898 8.2875 15.5815 8.0125 15.5815C7.7375 15.5815 7.5 15.4898 7.3 15.3065C7.1 15.1065 7 14.869 7 14.594C7 14.319 7.1 14.0815 7.3 13.8815L12.175 9.00646Z' fill='%235CE1E6'/%3E%3C/svg%3E%0A");
    position: absolute;
    right: -24px;
    bottom: 2px;
    transition: 300ms;
}

.oo-service-card-title h4:hover:after {
    transform: translateX(4px);
}

/* Home page event cards */
@media (max-width: 1200px) {
    .oo-event-card::before {
        background-image: linear-gradient(180deg, #FFFFFF00 0%, var(--e-global-color-13dd0ce) 100%) !important;
    }
}

@media (min-width: 1201px) {
    .oo-event-card>.elementor-element {
        opacity: 0;
        transform: translateY(16px);
        transition: 350ms;
    }

    .oo-event-card:hover>.elementor-element {
        opacity: 1;
        transform: translateY(0);
    }

    .oo-home-event-carousel .swiper-slide {
        overflow: hidden;
    }

    .oo-home-event-carousel .swiper-slide:hover .oo-event-card {
        transform: scale(1.02);
    }
}

.oo-home-event-carousel .elementor-swiper-button-prev {
    left: unset !important;
    right: calc(50% + 65px) !important;
}

.oo-home-event-carousel .elementor-swiper-button-next {
    left: calc(50% + 65px) !important;
    max-width: fit-content;
}

@media (min-width: 1367px) {
    .oo-home-event-carousel .elementor-swiper-button {
        display: none !important;
    }
}

/* Internal page hero */
.oo-internal-hero-container,
.oo-internal-hero-small {
    overflow-x: hidden;
}

@media (min-width: 490px) and (max-width: 767px) {
    .oo-internal-hero-container {
        min-height: 850px !important;
    }

    .oo-internal-page-headline br {
        display: none;
    }
}

.oo-internal-page-headline span {
    -webkit-text-stroke: 1px var(--e-global-color-accent);
    paint-order: stroke fill;
}



/* NEW HERO SECTION CODE */


.oo-internal-hero .elementor-widget-template,
.oo-internal-hero-gradient1,
.oo-internal-hero-filled,
.oo-internal-hero-gradient2,
.oo-internal-hero-image {
    height: 100%;
}

.oo-internal-hero-gradient1 {
    clip-path: url(#internal-hero-gradient1);
}

.oo-internal-hero-filled {
    clip-path: url(#internal-hero-filled);
}

.oo-internal-hero-gradient2 {
    clip-path: url(#internal-hero-gradient2);
}

.oo-internal-hero-image {
    height: 81%;
    width: 59%;
    clip-path: url(#internal-hero-image);
}

@media (max-width: 1366px) {
    .oo-internal-hero-gradient1 {
        clip-path: url(#internal-hero-gradient1-lt);
    }

    .oo-internal-hero-filled {
        clip-path: url(#internal-hero-filled-lt);
    }

    .oo-internal-hero-gradient2 {
        clip-path: url(#internal-hero-gradient2-lt);
    }

    .oo-internal-hero-image {
        width: 50%;
        clip-path: url(#internal-hero-image-lt);
    }
}

@media (max-width: 1024px) {
    .oo-internal-hero-gradient1 {
        clip-path: url(#internal-hero-gradient1-tb);
    }

    .oo-internal-hero-filled {
        clip-path: url(#internal-hero-filled-tb);
    }

    .oo-internal-hero-gradient2 {
        clip-path: url(#internal-hero-gradient2-tb);
    }

    .oo-internal-hero-image {
        width: 85%;
        height: 41%;
        clip-path: url(#internal-hero-image-tb);
    }

    /* Extended hero sections	 */
    .oo-hero-section-extended .oo-internal-hero-gradient2 {
        height: 115%;
    }

    .oo-hero-section-extended .oo-internal-hero-image {
        height: 47%;
    }
}

@media (max-width: 767px) {
    .oo-internal-hero-gradient1 {
        clip-path: url(#internal-hero-gradient1-mb);
    }

    .oo-internal-hero-filled {
        clip-path: url(#internal-hero-filled-mb);
    }

    .oo-internal-hero-gradient2 {
        clip-path: url(#internal-hero-gradient2-mb);
    }

    .oo-internal-hero-image {
        height: 32%;
        clip-path: url(#internal-hero-image-mb);
    }

    /* Smaller hero sections	 */
    .oo-hero-section-small .oo-internal-hero-gradient2 {
        height: 115%;
    }

    .oo-hero-section-small .oo-internal-hero-image {
        height: 37%;
    }

    /* Extended hero sections	 */
    .oo-hero-section-extended .oo-internal-hero-gradient2 {
        height: 142%;
    }

    .oo-hero-section-extended .oo-internal-hero-image {
        height: 46%;
    }
}

/* Internal page section base gradients */
.oo-internal-base-gradient {
    clip-path: url(#internal-base-gradient);
    height: 100%;
}

.oo-internal-base-filled {
    clip-path: url(#internal-base-filled);
    height: 100%;
}

@media (max-width: 767px) {
    .oo-internal-base-gradient {
        clip-path: url(#internal-base-gradient-mb);
    }

    .oo-internal-base-filled {
        clip-path: url(#internal-base-filled-mb);
    }
}




/* OLD CODE */


/* Internal page hero section wave */
.oo-internal-hero-wave-filled {
    height: calc(100% - 20px);
    clip-path: url(#internal-hero-wave-filled);
}

.oo-internal-hero-wave-gradient1 {
    height: 100%;
    clip-path: url(#internal-hero-wave-gradient1);
}

.oo-internal-hero-wave-gradient2 {
    height: 100%;
    clip-path: url(#internal-hero-wave-gradient2);
}

.oo-internal-hero-wave-image {
    height: 100%;
    width: 59% !important;
    clip-path: url(#internal-hero-wave-image);
}

@media (min-width: 1025px) and (max-width: 1300px) {

    .oo-internal-hero-wave-filled,
    .oo-internal-hero-wave-gradient1,
    .oo-internal-hero-wave-gradient2,
    .oo-internal-hero-wave-image {
        max-width: unset !important;
        width: 125% !important;
    }

    .oo-internal-hero-wave-image {
        width: 73% !important;
        right: -25% !important;
    }
}

/* Mobile clip-paths */
@media (max-width: 1024px) {
    .oo-internal-hero-wave-gradient1 {
        clip-path: url(#internal-hero-wave-gradient1-m);
    }

    .oo-internal-hero-wave-filled {
        clip-path: url(#internal-hero-wave-filled-m);
    }

    .oo-internal-hero-wave-gradient2 {
        clip-path: url(#internal-hero-wave-gradient2-m);
    }

    .oo-internal-hero-wave-image {
        clip-path: url(#internal-hero-wave-image-m);
        width: 82% !important;
    }
}

@media (max-width: 767px) {

    .oo-internal-hero-wave-filled,
    .oo-internal-hero-wave-gradient1,
    .oo-internal-hero-wave-gradient2,
    .oo-internal-hero-wave-image {
        top: -12% !important;
    }
}


/* OLD CODE ^^^^^^^^^^ */




/* Internal page text blob */
.oo-text-blob {
    background: var(--e-global-color-accent);
    border-radius: 50% 40% 50% 50% / 45% 40% 50% 50%;
    -webkit-animation: oo-liquid 12s ease-in-out infinite;
    animation: oo-liquid 12s ease-in-out infinite;
    z-index: 5;
}

.oo-text-blob-border {
    border-radius: 50% 40% 50% 50% / 45% 40% 50% 50%;
    -webkit-animation: oo-liquid 16s ease-in-out infinite;
    animation: oo-liquid 12s ease-in-out infinite;
}

/* Ripple Effect background */
.oo-ripple-effect {
    height: 100%;
    overflow: hidden;
}

.oo-ripple {
    left: calc(50% - 200px);
    top: 32%;
    border-radius: 40% 60% 70% 30% / 40% 50% 60% 50%;
    overflow: hidden;
    position: absolute;
}

@media (max-width: 1200px) {
    .oo-ripple {
        display: none;
    }
}

@media (min-width: 1201px) {
    .oo-ripple {
        border: 1px solid;
        width: 400px;
        height: 400px;
        animation: oo-morph 9s linear infinite, oo-scaleIn 18s infinite cubic-bezier(0.36, 0.11, 0.89, 0.32);
    }
}

.oo-ripple.c1 {
    border-color: var(--e-global-color-primary);
}

.oo-ripple.c2 {
    border-color: var(--e-global-color-bc3b9ad);
}

.oo-ripple.c3 {
    border-color: var(--e-global-color-78a9209);
}

@keyframes oo-morph {

    0%,
    100% {
        border-radius: 40% 70% 80% 30% / 40% 40% 60% 50%;
    }

    34% {
        border-radius: 60% 85% 75% 80% / 85% 70% 80% 80%;
    }

    67% {
        border-radius: 100% 70% 50% 100% / 100% 100% 60% 60%;
    }
}

@keyframes oo-scaleIn {
    0% {
        transform: scale(0.35, 0.35);
        opacity: 0;
    }

    50% {
        opacity: 0.9;
    }

    100% {
        transform: scale(4, 2.75);
        opacity: 0;
    }
}

/* Ripple Effect display text */
@media (min-width: 1201px) and (max-width: 1366px) {
    .oo-ripple-effect-text {
        max-width: 1200px !important;
    }
}

@media (min-width: 1367px) and (max-width: 1550px) {
    .oo-ripple-effect-text {
        max-width: 1300px !important;
    }
}

/* Forms */
.oo-form ::marker {
    color: transparent;
}

.oo-form .wpforms-field-label {
    color: var(--e-global-color-e2435a9) !important;
    margin-bottom: 5px;
    font-weight: 500 !important;
    line-height: 19px;
}

.oo-form-contact .wpforms-field-label {
    color: var(--e-global-color-abb6964) !important;
    margin-bottom: 5px;
    font-weight: 500 !important;
    line-height: 19px;
}

.oo-form .wpforms-field {
    padding: 10px 0 !important;
}

.oo-form input,
.oo-form textarea,
.oo-form select {
    background: var(--e-global-color-2b156f1) !important;
    padding: 14px !important;
    font-size: 16px !important;
    line-height: 19px !important;
    color: var(--e-global-color-abb6964) !important;
    border-radius: 4px !important;
    border: 2px solid var(--e-global-color-f6ba3b8) !important;
}

.oo-form option {
    color: var(--e-global-color-bc42e68) !important;
    font-size: 16px !important;
}

.oo-form input.wpforms-error {
    border-width: 2px !important;
}

.oo-form input::placeholder,
.oo-form textarea::placeholder,
select#wpforms-4300-field_16,
select#wpforms-4300-field_19,
.oo-form-contact li label {
    color: var(--e-global-color-bc42e68) !important;
    opacity: 1 !important;
    font-size: 16px !important;
    line-height: 19px !important;
}

.oo-form-contact .oo-checkbox li {
    position: relative;
    cursor: pointer;
    /* Ensure it looks clickable */
    outline: none;
    /* Remove default focus outline */
}

.oo-form-contact .oo-checkbox li:focus {
    outline: 2px solid var(--e-global-color-primary);
    /* Add focus outline for accessibility */
}

.oo-form-contact .oo-checkbox li>input {
    position: absolute;
    left: 0;
    top: 5px;
    opacity: 0;
    /* Keep the actual checkbox hidden */
    margin: 4px 1px;
}

.oo-form-contact .oo-checkbox li>label {
    vertical-align: middle;
}

.oo-form-contact .oo-checkbox li::before {
    content: '';
    border: 2px solid var(--e-global-color-primary);
    border-radius: 3px;
    width: 18px;
    height: 18px;
    margin-right: 10px;
    display: inline-block;
    vertical-align: middle;
}

/* Apply checkmark SVG when checkbox is checked */
.oo-form-contact .oo-checkbox li.wpforms-selected::after {
    content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 18 18' fill='none'%3E%3Cpath d='M7.6 13.2L14.65 6.15L13.25 4.75L7.6 10.4L4.75 7.55L3.35 8.95L7.6 13.2ZM2 18C1.45 18 0.979167 17.8042 0.5875 17.4125C0.195833 17.0208 0 16.55 0 16V2C0 1.45 0.195833 0.979167 0.5875 0.5875C0.979167 0.195833 1.45 0 2 0H16C16.55 0 17.0208 0.195833 17.4125 0.5875C17.8042 0.979167 18 1.45 18 2V16C18 16.55 17.8042 17.0208 17.4125 17.4125C17.0208 17.8042 16.55 18 16 18H2Z' fill='%23445EE9'/%3E%3C/svg%3E");
    width: 20px;
    height: 20px;
    position: absolute;
    left: 0;
    top: 5px;
}

/* Hide the default checkbox but keep it functional */
.oo-form-contact .oo-checkbox li>input[type="checkbox"] {
    display: none;
}

.oo-checkbox .wpforms-field-label {
    margin-bottom: 10px;
}

.oo-checkbox ul {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    padding: 0;
}

@media (max-width: 1024px) {
    .oo-checkbox ul {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 767px) {
    .oo-checkbox ul {
        grid-template-columns: repeat(1, 1fr);
    }
}

.oo-checkbox li {
    line-height: 1.5 !important;
    margin: 5px 0 !important;
}

/* ========== OO SELECT (matches checkbox styling) ========== */

/* Field label spacing like your checkbox label */
.oo-select .wpforms-field-label {
    margin-bottom: 10px;
}

/* Wrapper (optional but recommended) */
.oo-form-contact .oo-select {
    position: relative;
}

/* The select itself */
.oo-form-contact .oo-select select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;

    width: 100%;
    line-height: 1.5;
    padding: 12px 44px 12px 14px;
    /* right padding makes room for arrow */
    border: 2px solid var(--e-global-color-primary);
    border-radius: 3px;
    background-color: transparent;

    cursor: pointer;
    outline: none;
    /* we'll provide a custom focus ring */
}

/* Focus ring for accessibility (mirrors your li:focus approach) */
.oo-form-contact .oo-select select:focus {
    outline: 2px solid var(--e-global-color-primary);
    outline-offset: 2px;
}

/* Hover state (subtle, consistent) */
.oo-form-contact .oo-select select:hover {
    filter: brightness(0.98);
}

/* Disabled state */
.oo-form-contact .oo-select select:disabled {
    opacity: 0.6;
    cursor: not-allowed;
}

/* Custom arrow */
.oo-form-contact .oo-select::after {
    content: "";
    position: absolute;
    right: 14px;
    top: 50%;
    transform: translateY(-50%);
    width: 18px;
    height: 18px;
    pointer-events: none;
    /* keep clicks on the select */

    /* Down chevron SVG */
    background-repeat: no-repeat;
    background-position: center;
    background-size: 18px 18px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 18 18' fill='none'%3E%3Cpath d='M5.3 6.8L9 10.5L12.7 6.8L14 8.1L9 13.1L4 8.1L5.3 6.8Z' fill='%23445EE9'/%3E%3C/svg%3E");
}

/* Option text (browser support varies; safe defaults) */
.oo-form-contact .oo-select select option {
    color: inherit;
}

/* If you want consistent vertical spacing with other fields */
.oo-form-contact .oo-select {
    margin-bottom: 10px;
}


.oo-form select {
    height: 50px;
}

.oo-form .wpforms-submit-container {
    justify-content: center;
    display: flex;
}

.oo-form .wpforms-submit {
    border: unset !important;
    padding: 12px 36px;
}

.oo-form .wpforms-required-label,
.oo-form:not(.oo-form-contact) em.wpforms-error {
    color: var(--e-global-color-e2435a9) !important;
}

.oo-form-contact .wpforms-form .wpforms-field input.wpforms-error,
.wpforms-form .wpforms-field textarea.wpforms-error,
.wpforms-form .wpforms-field select.wpforms-error,
.wpforms-has-error .choices.wpforms-field-row.wpforms-field-medium {
    /* Form error styling */
    border: 2px solid #cc0000 !important;
    border-radius: 4px !important;
}

.oo-form-contact .wpforms-required-label,
.oo-form-contact em.wpforms-error {
    color: #cc0000 !important;
}

.oo-form-contact .wpforms-submit {
    font-size: 16px;
    padding: 10px 24px;
}

.oo-form-contact .wpforms-submit-container {
    justify-content: flex-start;
    display: flex;
}

.oo-form-contact .wpforms-submit:after {
    content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='17' viewBox='0 0 16 17' fill='none'%3E%3Cpath id='expand_circle_right' d='M8.54 8.5L6.64 10.4C6.49333 10.5467 6.42 10.73 6.42 10.95C6.42 11.17 6.49333 11.36 6.64 11.52C6.8 11.68 6.99 11.76 7.21 11.76C7.43 11.76 7.62 11.68 7.78 11.52L10.24 9.06C10.4 8.9 10.48 8.71333 10.48 8.5C10.48 8.28667 10.4 8.1 10.24 7.94L7.76 5.46C7.6 5.3 7.41333 5.22333 7.2 5.23C6.98667 5.23667 6.8 5.32 6.64 5.48C6.49333 5.64 6.41667 5.82667 6.41 6.04C6.40333 6.25333 6.48 6.44 6.64 6.6L8.54 8.5ZM8 16.5C6.89333 16.5 5.85333 16.29 4.88 15.87C3.90667 15.45 3.06 14.88 2.34 14.16C1.62 13.44 1.05 12.5933 0.63 11.62C0.21 10.6467 0 9.60667 0 8.5C0 7.39333 0.21 6.35333 0.63 5.38C1.05 4.40667 1.62 3.56 2.34 2.84C3.06 2.12 3.90667 1.55 4.88 1.13C5.85333 0.71 6.89333 0.5 8 0.5C9.10667 0.5 10.1467 0.71 11.12 1.13C12.0933 1.55 12.94 2.12 13.66 2.84C14.38 3.56 14.95 4.40667 15.37 5.38C15.79 6.35333 16 7.39333 16 8.5C16 9.60667 15.79 10.6467 15.37 11.62C14.95 12.5933 14.38 13.44 13.66 14.16C12.94 14.88 12.0933 15.45 11.12 15.87C10.1467 16.29 9.10667 16.5 8 16.5Z' fill='%23FFFFFF'%3E%3C/path%3E%3C/svg%3E");
    position: relative;
    right: -8px;
    top: 2px;
    transition: all 300ms;
}

.oo-form-contact .wpforms-submit:hover:after {
    right: -11px;
}

.oo-form-contact .wpforms-field.wpforms-field-layout {
    padding: 0 !important;
}

.oo-form div.wpforms-container .wpforms-form .choices[data-type*="select-one"]:after {
    /* change dropdown arrow */
    border-color: var(--e-global-color-bc42e68) transparent transparent transparent !important;
}

div.wpforms-container .wpforms-form .choices[data-type*="select-one"].is-open:after {
    border-color: transparent transparent var(--e-global-color-bc42e68) transparent !important;
}

/* Team Building page outcomes accordion */
#oo-outcomes-1 {
    background: var(--e-global-color-abb6964);
}

#oo-outcomes-2 {
    background: var(--e-global-color-78a9209);
}

#oo-outcomes-3 {
    background: var(--e-global-color-bc3b9ad);
}

#oo-outcomes-4 {
    background: var(--e-global-color-primary);
}

#oo-outcomes-1,
#oo-outcomes-2,
#oo-outcomes-3,
#oo-outcomes-4 {
    border-radius: 8px !important;
    box-shadow: 0px 0px 12px 0px rgba(0, 0, 0, 0.1);
}

#oo-outcomes-1,
#oo-outcomes-2,
#oo-outcomes-3 {
    margin-bottom: -10px;
}

#oo-outcomes-1>summary,
#oo-outcomes-2>summary,
#oo-outcomes-3>summary {
    padding-bottom: 38px;
}

.oo-outcomes-accordion h3 {
    text-align: center;
}

/* Event Accordion styles */
.oo-event-accordion .jet-toggle__content-inner {
    text-align: center;
}


/* CTA section wave */
.oo-cta-wave-filled {
    height: 100%;
    clip-path: url(#cta-wave-filled);
}

.oo-cta-wave-gradient1 {
    height: 100%;
    clip-path: url(#cta-wave-gradient1);
}

.oo-cta-wave-gradient2 {
    height: 100%;
    clip-path: url(#cta-wave-gradient2);
}

/* Testimonials slider */
.oo-testimonial-video img {
    border-radius: 8px;
}

/* Our Community page outline blobs */
.oo-outline-blob-1 {
    width: 100%;
    height: 120%;
    border: 1px solid var(--e-global-color-bc3b9ad);
    border-radius: 85% 83% 75% 75% / 78% 95% 75% 95%;
    -webkit-animation: oo-outline-liquid 12s ease-in-out infinite;
    animation: oo-outline-liquid 12s ease-in-out infinite;
}

.oo-outline-blob-2 {
    width: 95%;
    height: 100%;
    border: 1px solid var(--e-global-color-78a9209);
    border-radius: 85% 83% 75% 75% / 78% 95% 75% 95%;
    -webkit-animation: oo-outline-liquid 10s ease-in-out infinite reverse;
    animation: oo-outline-liquid 10s ease-in-out infinite reverse;
}

.oo-outline-blob-3 {
    width: 85%;
    height: 115%;
    border: 1px solid var(--e-global-color-primary);
    border-radius: 85% 83% 75% 75% / 78% 95% 75% 95%;
    -webkit-animation: oo-outline-liquid 8s ease-in-out infinite alternate-reverse;
    animation: oo-outline-liquid 8s ease-in-out infinite alternate-reverse;
}

@keyframes oo-outline-liquid {
    25% {
        border-radius: 55% 55% 55% 60% / 50% 65% 45% 65%;
    }

    50% {
        border-radius: 50% 40% 45% 70% / 55% 60% 45% 55%;
    }

    75% {
        border-radius: 65% 35% 60% 45% / 50% 45% 60% 55%;
    }
}

/* Counters */
.oo-counter .elementor-counter-number-wrapper {
    background-color: var(--e-global-color-78a9209);
    padding: 32px;
    border-radius: 8px;
}

.oo-counter .elementor-counter-title {
    text-align: center;
}

@media (max-width: 1024px) {
    .oo-counter .elementor-counter-number-wrapper {
        padding: 24px;
    }
}

/* Counter with titles within box */
.oo-counter-subtitle .elementor-counter-number-wrapper {
    padding-bottom: 50px !important;
}

.oo-counter-subtitle .elementor-counter-title {
    margin-top: -54px !important;
}

@media (min-width: 1367px) {
    .oo-counter-subtitle .elementor-counter-title {
        margin-top: -47px !important;
    }
}

/* Workshop accordions */
.oo-workshop-accordion [aria-expanded="true"] svg {
    transform: rotate(-180deg);
}

.oo-workshop-accordion svg {
    transition: all 300ms linear;
}

.oo-workshop-accordion details {
    border: 1px solid var(--e-global-color-secondary);
    border-radius: 8px;
}

.oo-workshop-accordion .e-n-accordion-item-title-icon {
    align-self: start;
}

/* Internal page content wave */
.oo-internal-content-wave-gradient {
    clip-path: url(#internal-content-wave-gradient);
}

.oo-internal-content-wave-image {
    clip-path: url(#internal-content-wave-image);
}

.oo-internal-content-wave-gradient-2 {
    clip-path: url(#internal-content-wave-gradient-2);
}

.oo-internal-content-wave-image-2 {
    clip-path: url(#internal-content-wave-image-2);
}

.oo-internal-content-wave-gradient,
.oo-internal-content-wave-gradient-2 {
    height: 100%;
    width: 54% !important;
}

.oo-internal-content-wave-image,
.oo-internal-content-wave-image-2 {
    height: 100%;
    width: 54% !important;
}

/* Smaller internal page content wave */
.oo-internal-wave-small .oo-internal-content-wave-gradient,
.oo-internal-wave-small .oo-internal-content-wave-image {
    width: 48% !important;
}

/* Our People page team member grids */
.oo-team-member-grid .elementor-grid {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
}

/* Our People page team member cards */
.oo-team-member>.elementor-element {
    transition: 450ms;
}

.oo-team-member.bio-visible>.elementor-element {
    flex: 1;
}

.oo-bio-content {
    margin: auto 0;
}

.oo-bio-content,
.oo-team-links {
    max-height: 0;
    opacity: 0;
    transition: 450ms;
}

.oo-team-member.bio-visible .oo-bio-content,
.oo-team-member.bio-visible .oo-team-links {
    max-height: 1000px;
    opacity: 1;
}

.oo-bio-toggle {
    cursor: pointer;
}

.oo-bio-toggle .minus-icon {
    display: none;
}

.oo-team-member.bio-visible .plus-icon {
    display: none;
}

.oo-team-member.bio-visible .minus-icon {
    display: block;
}

/* .oo-team-links a {
	background: var(--e-global-color-secondary) !important;
	padding: 4px 12px;
	border-radius: 25px;
	transition: 450ms;
}
.oo-team-links a:hover {
	background: var(--e-global-color-c6a66ef) !important;
} */
.oo-team-links a>.elementor-icon-list-icon {
    color: var(--e-global-color-secondary) !important;
}

.oo-team-links a>.elementor-icon-list-icon:hover {
    color: var(--e-global-color-c6a66ef) !important;
}

.oo-team-links:not(:has(li > a)) {
    display: none !important;
}

.oo-team-links li:not(:has(> a)) {
    display: none !important;
}

/* Our Impact page partner flip cards */
.oo-partner-flipcard .elementor-flip-box__front:after {
    content: url("data:image/svg+xml,%3Csvg width='38' height='38' viewBox='0 0 38 38' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M11.177 24.5305H19.8655C20.1955 24.5305 20.4672 24.424 20.6805 24.211C20.8935 23.9977 21 23.7258 21 23.3955C21 23.0652 20.8935 22.7937 20.6805 22.581C20.4672 22.368 20.1955 22.2615 19.8655 22.2615H11.177L14.8075 18.6305C15.0308 18.4075 15.1457 18.139 15.152 17.825C15.1583 17.511 15.0487 17.2347 14.823 16.996C14.5897 16.7627 14.316 16.646 14.002 16.646C13.688 16.646 13.4193 16.764 13.196 17L7.7925 22.3845C7.50517 22.6845 7.3615 23.025 7.3615 23.406C7.3615 23.7867 7.50517 24.1205 7.7925 24.4075L13.196 29.7925C13.4193 30.0282 13.688 30.1408 14.002 30.1305C14.316 30.1205 14.5923 29.9962 14.831 29.7575C15.0513 29.5242 15.1615 29.2537 15.1615 28.946C15.1615 28.6383 15.0435 28.3667 14.8075 28.131L11.177 24.5305ZM26.823 16.023L23.1925 19.654C22.9692 19.877 22.8543 20.1487 22.848 20.469C22.8417 20.7897 22.9513 21.063 23.177 21.289C23.4103 21.522 23.684 21.6385 23.998 21.6385C24.312 21.6385 24.587 21.5205 24.823 21.2845L30.2075 15.9C30.4948 15.6127 30.6385 15.2755 30.6385 14.8885C30.6385 14.5012 30.4948 14.164 30.2075 13.877L24.854 8.523C24.6307 8.3 24.3588 8.18017 24.0385 8.1635C23.7178 8.14683 23.4447 8.25783 23.219 8.4965C22.9857 8.7295 22.869 9.00817 22.869 9.3325C22.869 9.65683 22.987 9.93067 23.223 10.154L26.823 13.754H18.1345C17.8045 13.754 17.5328 13.8607 17.3195 14.074C17.1065 14.287 17 14.5587 17 14.889C17 15.2193 17.1065 15.491 17.3195 15.704C17.5328 15.9167 17.8045 16.023 18.1345 16.023H26.823ZM19.0035 38C16.3962 38 13.9395 37.5013 11.6335 36.504C9.3275 35.5067 7.311 34.1448 5.584 32.4185C3.857 30.6922 2.4945 28.6765 1.4965 26.3715C0.498833 24.0668 0 21.6108 0 19.0035C0 16.3755 0.498667 13.9053 1.496 11.593C2.49333 9.28067 3.85517 7.26933 5.5815 5.559C7.30783 3.84867 9.3235 2.4945 11.6285 1.4965C13.9332 0.498833 16.3892 0 18.9965 0C21.6245 0 24.0947 0.498666 26.407 1.496C28.7193 2.49333 30.7307 3.84683 32.441 5.5565C34.1513 7.26617 35.5055 9.27667 36.5035 11.588C37.5012 13.8993 38 16.3688 38 18.9965C38 21.6038 37.5013 24.0605 36.504 26.3665C35.5067 28.6725 34.1532 30.689 32.4435 32.416C30.7338 34.143 28.7233 35.5055 26.412 36.5035C24.1007 37.5012 21.6312 38 19.0035 38ZM19 35.7305C23.6563 35.7305 27.6088 34.1012 30.8575 30.8425C34.1062 27.5835 35.7305 23.636 35.7305 19C35.7305 14.3437 34.1062 10.3912 30.8575 7.1425C27.6088 3.89383 23.6563 2.2695 19 2.2695C14.364 2.2695 10.4165 3.89383 7.1575 7.1425C3.89883 10.3912 2.2695 14.3437 2.2695 19C2.2695 23.636 3.89883 27.5835 7.1575 30.8425C10.4165 34.1012 14.364 35.7305 19 35.7305Z' fill='%23B1BDFF'/%3E%3C/svg%3E%0A");
    position: absolute;
    right: 10px;
    top: 10px;
}

.oo-partner-flipcard .elementor-button {
    padding: 9px 24px !important;
}

.oo-partner-flipcard {
    min-height: 400px;
}

@media (max-width: 1366px) {
    .oo-partner-flipcard {
        min-height: 500px;
    }
}

@media (max-width: 1200px) {
    .oo-partner-flipcard {
        min-height: 450px;
    }
}

@media (max-width: 880px) {
    .oo-partner-flipcard {
        min-height: 550px;
    }
}

@media (max-width: 767px) {
    .oo-partner-flipcard {
        min-height: 300px;
    }

    .elementor-flip-box__back .elementor-flip-box__layer__inner {
        height: 300px;
        overflow-y: scroll;
    }

    .elementor-flip-box__back .elementor-flip-box__layer__overlay {
        padding: 20px 10px !important;
    }
}

/* Student workshop page read more sections */
.oo-readmore-toggle .jet-accordion__item {
    flex-direction: column-reverse !important;
}

.oo-readmore-toggle .jet-toggle__label-text {
    font-size-adjust: 0.53;
}

.oo-readmore-toggle .active-toggle .jet-toggle__label-text {
    display: none;
}

.oo-readmore-toggle .active-toggle .jet-toggle__control::before {
    content: "Read Less";
    font-size: var(--e-global-typography-ca396ae-font-size);
    line-height: var(--e-global-typography-ca396ae-line-height);
    font-weight: 500;
    color: var(--e-global-color-secondary);
    font-size-adjust: 0.53;
}

/* Blog page cards */
.oo-blog-post-card {
    height: 100% !important;
}

.oo-blog-post-card .elementor-widget-image a {
    display: block;
}

.oo-blog-card-meta .elementor-post-info {
    justify-content: space-between;
}

.oo-blog-card-title h3:hover {
    color: var(--e-global-color-secondary);
}

.oo-blog-card-categories {
    margin-top: auto;
}

.oo-blog-card-categories .elementor-post-info__terms-list-item {
    padding: 4px 12px;
    background: var(--e-global-color-secondary);
    border-radius: 25px;
    -webkit-box-decoration-break: clone;
    transition: 300ms;
    line-height: 30px;
}

.oo-blog-card-categories .elementor-post-info__terms-list-item:hover {
    background: var(--e-global-color-c6a66ef);
}

.oo-blog-card-categories .elementor-post-info__terms-list-item:active {
    background-color: var(--e-global-color-f2e3c67);
}

.oo-blog-card-readmore .elementor-button-icon {
    align-items: center;
}

.oo-blog-card-readmore svg {
    height: 12px;
}

.oo-blog-card-readmore:hover svg {
    transform: translateX(3px);
}

/* Blog page filter */
@media (max-width: 767px) {
    .oo-sorting-filter .jet-sorting-label {
        margin-bottom: 5px !important;
    }
}

@media (min-width: 768px) {
    .oo-sorting-filter .jet-sorting--flex-column {
        flex-direction: row;
    }

    .oo-sorting-filter .jet-sorting-label {
        align-self: center !important;
    }
}

.oo-sorting-filter .jet-sorting-label {
    min-width: fit-content !important;
}

.oo-sorting-filter .jet-sorting-select {
    max-width: 165px;
}

.oo-sorting-filter option {
    color: var(--e-global-color-13dd0ce);
}

/* Blog page pagination */
.oo-blog-pagination .jet-filters-pagination__link {
    transition: 300ms;
}

.oo-blog-pagination .prev-next .jet-filters-pagination__link {
    display: flex;
    padding: 10px 5px !important;
}

.oo-blog-pagination .prev-next .jet-filters-pagination__link::before {
    display: inline-block;
    width: 20px;
    height: 20px;
    transition: 300ms;
}

.oo-blog-pagination .next .jet-filters-pagination__link::before {
    content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='21' height='20' viewBox='0 0 21 20' fill='none'%3E%3Cmask id='mask0_429_6712' style='mask-type:alpha' maskUnits='userSpaceOnUse' x='0' y='0' width='21' height='20'%3E%3Crect x='0.5' width='20' height='20' fill='%23D9D9D9'/%3E%3C/mask%3E%3Cg mask='url(%23mask0_429_6712)'%3E%3Cpath d='M11.664 9.99993L8.10295 6.4391C7.98767 6.32368 7.92864 6.19597 7.92587 6.05597C7.92323 5.91611 7.98225 5.78576 8.10295 5.66493C8.22378 5.54423 8.35281 5.48389 8.49003 5.48389C8.62725 5.48389 8.75857 5.5466 8.88399 5.67201L12.7473 9.53514C12.8114 9.60486 12.8594 9.67812 12.8915 9.75493C12.9236 9.83173 12.9396 9.91479 12.9396 10.0041C12.9396 10.0934 12.9236 10.1765 12.8915 10.2533C12.8594 10.3301 12.8114 10.4006 12.7473 10.4647L8.88399 14.3278C8.76399 14.4478 8.63746 14.5058 8.50441 14.5016C8.37149 14.4973 8.24462 14.4348 8.12378 14.3141C8.00309 14.1933 7.94274 14.0642 7.94274 13.927C7.94274 13.7898 8.00309 13.6608 8.12378 13.5399L11.664 9.99993Z' fill='white'/%3E%3C/g%3E%3C/svg%3E");
}

.oo-blog-pagination .next:hover .jet-filters-pagination__link::before {
    transform: translatex(4px);
}

.oo-blog-pagination .prev .jet-filters-pagination__link::before {
    content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='21' height='20' viewBox='0 0 21 20' fill='none'%3E%3Cmask id='mask0_429_6703' style='mask-type:alpha' maskUnits='userSpaceOnUse' x='0' y='0' width='21' height='20'%3E%3Crect x='0.5' width='20' height='20' fill='%23D9D9D9'/%3E%3C/mask%3E%3Cg mask='url(%23mask0_429_6703)'%3E%3Cpath d='M9.33812 9.99996L12.8992 13.5608C13.0144 13.6762 13.0735 13.8039 13.0763 13.9439C13.0789 14.0838 13.0199 14.2141 12.8992 14.335C12.7783 14.4557 12.6493 14.516 12.5121 14.516C12.3749 14.516 12.2435 14.4533 12.1181 14.3279L8.25479 10.4648C8.19076 10.395 8.14271 10.3218 8.11062 10.245C8.07854 10.1682 8.0625 10.0851 8.0625 9.99579C8.0625 9.90649 8.07854 9.82343 8.11062 9.74663C8.14271 9.66982 8.19076 9.59934 8.25479 9.53517L12.1181 5.67204C12.2381 5.55204 12.3681 5.49066 12.5081 5.48788C12.648 5.48524 12.7783 5.54427 12.8992 5.66496C13.0199 5.78579 13.0802 5.91482 13.0802 6.05204C13.0802 6.18927 13.0199 6.3183 12.8992 6.43913L9.33812 9.99996Z' fill='white'/%3E%3C/g%3E%3C/svg%3E");
}

.oo-blog-pagination .prev:hover .jet-filters-pagination__link::before {
    transform: translatex(-4px);
}

/* Blog post template */
.oo-blog-template-info .elementor-post-info__item--type-date {
    color: var(--e-global-color-bc42e68) !important;
}

.oo-blog-template-content h2 {
    font-weight: 600;
    font-size: var(--e-global-typography-b360f3c-font-size);
    line-height: var(--e-global-typography-b360f3c-line-height);
    letter-spacing: var(--e-global-typography-b360f3c-letter-spacing);
}

.oo-blog-template-content h3 {
    font-weight: 600;
    font-size: var(--e-global-typography-f8a990d-font-size);
    line-height: var(--e-global-typography-f8a990d-line-height);
    letter-spacing: var(--e-global-typography-f8a990d-letter-spacing);
}

.oo-blog-template-content h4 {
    font-weight: 600;
    font-size: var(--e-global-typography-f248c90-font-size);
    line-height: var(--e-global-typography-f248c90-line-height);
    letter-spacing: var(--e-global-typography-f248c90-letter-spacing);
}

.oo-blog-template-content a {
    color: var(--e-global-color-primary) !important;
    font-weight: 700;
}

.oo-blog-template-content a:hover {
    color: var(--e-global-color-13dd0ce) !important;
}

.oo-blog-template-content ul,
.oo-blog-template-content ol {
    padding-left: 20px !important;
    margin: 20px 0 !important;
}

.oo-blog-template-content hr {
    margin: 32px 0 !important;
    border-top: 1px solid var(--e-global-color-0b113d2);
}

.oo-blog-template-content figure {
    margin-top: 48px;
    width: unset !important;
}

.oo-blog-template-content img {
    width: 100%;
    height: 450px;
    object-fit: cover;
    border-radius: 6px;
}

.oo-blog-template-content figcaption {
    margin-top: 6px;
    color: var(--e-global-color-bc42e68);
    font-size: var(--e-global-typography-f3f0866-font-size);
    line-height: var(--e-global-typography-f3f0866-line-height);
    font-style: normal;
}

.oo-blog-template-content blockquote {
    border-left: 4px solid var(--e-global-color-primary);
    padding-left: 16px;
    margin: 20px 0 !important;
}

.oo-blog-template-categories .elementor-post-info__item-prefix {
    color: var(--e-global-color-abb6964);
    margin-right: 6px;
}

.oo-blog-template-categories .elementor-post-info__terms-list-item {
    display: inline-block !important;
    background: var(--e-global-color-primary);
    margin: 2px 0;
    padding: 4px 12px;
    border-radius: 25px;
    transition: 300ms;
    -webkit-box-decoration-break: clone;
}

.oo-blog-template-categories .elementor-post-info__terms-list-item:hover {
    background: var(--e-global-color-78a9209);
}

.oo-blog-template-categories .elementor-post-info__terms-list-item:active {
    background-color: var(--e-global-color-bc42e68);
}

/* Events page filters */
.oo-events-page-filters .jet-filter-label {
    font-size-adjust: 0.55;
}

/* Events page date filter */
.oo-events-page-date .jet-date-period__datepicker {
    min-width: 222px;
}

.oo-events-page-date .jet-date-period__datepicker-button svg {
    display: none;
}

.oo-events-page-date .jet-date-period__datepicker-button:after {
    content: "";
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    right: 5px;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 5px 5px 0 5px;
    border-color: currentColor transparent transparent transparent;
}

.oo-events-page-date .jet-date-period-datepicker-opened .jet-date-period__datepicker-button:after {
    border-width: 0 5px 5px 5px;
    border-color: transparent transparent currentColor transparent;
}

/* Events page search box */
.oo-events-page-search input:focus-visible {
    outline: 1px solid var(--e-global-color-e2435a9);
}

/* Events page grid pagination */
.oo-events-page-pagination .prev-next .jet-filters-pagination__link {
    display: flex;
}

.oo-events-page-pagination .jet-filters-pagination__link,
.oo-events-page-pagination svg {
    transition: 300ms;
}

.oo-events-page-pagination .prev:hover svg {
    transform: translatex(-3px);
}

.oo-events-page-pagination .next:hover svg {
    transform: translatex(3px);
}

/* Events page featured carousel */
.oo-event-page-featured {
    background: var(--e-global-color-abb6964);
    padding: 28px 28px 0 28px;
    border-radius: 8px;
}

@media (max-width: 767px) {
    .oo-event-page-featured {
        padding: 28px 20px 0 20px;
    }
}

/* Events page navigation arrows */
.oo-event-page-featured .elementor-swiper-button svg {
    transition: 300ms;
}

.oo-event-page-featured .elementor-swiper-button-prev {
    left: calc(50% - 80px) !important;
}

.oo-event-page-featured .elementor-swiper-button-prev:hover svg {
    transform: translatex(-2px);
}

.oo-event-page-featured .elementor-swiper-button-next {
    right: calc(50% - 80px) !important;
}

.oo-event-page-featured .elementor-swiper-button-next:hover svg {
    transform: translatex(2px);
}

/* Events page featured pagination */
.oo-event-page-featured .swiper-pagination {
    top: unset !important;
    bottom: -40px !important;
    left: 50% !important;
    z-index: 0;
}

/* Event template What's Covered list icons */
.oo-event-covered-repeater .jet-listing-dynamic-repeater__items {
    background: var(--e-global-color-abb6964);
    padding: 28px;
    border-radius: 8px;
    gap: 28px;
}

.oo-event-covered-repeater .jet-listing-dynamic-repeater__item {
    display: flex;
    justify-content: center;
    gap: 28px;
}

@media (max-width: 767px) {
    .oo-event-covered-repeater .jet-listing-dynamic-repeater__items {
        padding: 20px;
        gap: 20px;
    }

    .oo-event-covered-repeater .jet-listing-dynamic-repeater__item {
        gap: 20px;
    }
}

.oo-event-check-icon::before {
    content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='40' viewBox='0 0 40 40' fill='none'%3E%3Cmask id='mask0_854_3245' style='mask-type:alpha' maskUnits='userSpaceOnUse' x='0' y='0' width='40' height='40'%3E%3Crect width='40' height='40' fill='%23D9D9D9'/%3E%3C/mask%3E%3Cg mask='url(%23mask0_854_3245)'%3E%3Cpath d='M17.582 23.5278L13.6654 19.6112C13.3968 19.3426 13.0634 19.2083 12.6654 19.2083C12.2673 19.2083 11.9247 19.3517 11.6374 19.6387C11.3691 19.9073 11.2349 20.2406 11.2349 20.6387C11.2349 21.037 11.3691 21.3703 11.6374 21.6387L16.61 26.6387C16.8877 26.9164 17.2118 27.0553 17.582 27.0553C17.9523 27.0553 18.2763 26.9164 18.5541 26.6387L28.332 16.8612C28.619 16.5739 28.7625 16.2313 28.7625 15.8333C28.7625 15.4352 28.619 15.0926 28.332 14.8053C28.0451 14.537 27.6979 14.4074 27.2904 14.4166C26.8829 14.4258 26.545 14.5646 26.2766 14.8333L17.582 23.5278ZM19.9987 36.6666C17.7118 36.6666 15.5544 36.2291 13.5266 35.3541C11.4988 34.4791 9.73023 33.287 8.22078 31.7778C6.71161 30.2684 5.51953 28.4998 4.64453 26.472C3.76953 24.4442 3.33203 22.2869 3.33203 19.9999C3.33203 17.6944 3.76953 15.5277 4.64453 13.4999C5.51953 11.4721 6.71161 9.70825 8.22078 8.20825C9.73023 6.70825 11.4988 5.52075 13.5266 4.64575C15.5544 3.77075 17.7118 3.33325 19.9987 3.33325C22.3043 3.33325 24.4709 3.77075 26.4987 4.64575C28.5265 5.52075 30.2904 6.70825 31.7904 8.20825C33.2904 9.70825 34.4779 11.4721 35.3529 13.4999C36.2279 15.5277 36.6654 17.6944 36.6654 19.9999C36.6654 22.2869 36.2279 24.4442 35.3529 26.472C34.4779 28.4998 33.2904 30.2684 31.7904 31.7778C30.2904 33.287 28.5265 34.4791 26.4987 35.3541C24.4709 36.2291 22.3043 36.6666 19.9987 36.6666Z' fill='%235CE1E6'/%3E%3C/g%3E%3C/svg%3E");
    width: 40px;
    height: 40px;
}

.oo-event-repeater-divider {
    height: 1px;
    width: 100%;
    background: var(--e-global-color-bc3b9ad);
}

/* Event template Benefits of Attending list */
.oo-event-benefit .jet-listing-dynamic-repeater__items {
    display: grid;
    gap: 20px;
}

@media (min-width: 768px) {
    .oo-event-benefit .jet-listing-dynamic-repeater__items {
        grid-template-columns: 1fr 1fr;
        gap: 28px;
    }
}

@media (min-width: 1025px) {
    .oo-event-benefit .jet-listing-dynamic-repeater__items {
        grid-template-columns: 1fr 1fr 1fr;
    }
}

.oo-event-benefit .jet-listing-dynamic-repeater__item {
    background: var(--e-global-color-abb6964);
    display: flex;
    gap: 28px;
    padding: 28px;
    border-radius: 8px;
}

.oo-event-benefit-icon::before {
    content: url("data:image/svg+xml,%3Csvg aria-hidden='true' class='e-font-icon-svg e-fas-check' viewBox='0 0 512 512' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M173.898 439.404l-166.4-166.4c-9.997-9.997-9.997-26.206 0-36.204l36.203-36.204c9.997-9.998 26.207-9.998 36.204 0L192 312.69 432.095 72.596c9.997-9.997 26.207-9.997 36.204 0l36.203 36.204c9.997 9.997 9.997 26.206 0 36.204l-294.4 294.401c-9.998 9.997-26.207 9.997-36.204-.001z' fill='%235ce1e6'%3E%3C/path%3E%3C/svg%3E");
    color: var(--e-global-color-secondary);
    width: 50px;
}

@media (max-width: 767px) {
    .oo-event-benefit .jet-listing-dynamic-repeater__item {
        padding: 20px;
        gap: 20px;
    }

    .oo-event-benefit-icon::before {
        width: 32px;
    }
}

/* Event template schedule table */
.oo-schedule-table .jet-listing-dynamic-repeater__items {
    border: 1px solid var(--e-global-color-bc3b9ad);
}

.oo-schedule-table .jet-listing-dynamic-repeater__item:not(:last-child) {
    border-bottom: 1px solid var(--e-global-color-bc3b9ad);
}

.oo-schedule-table .jet-listing-dynamic-repeater__item span {
    padding: 16px 20px;
}

.oo-schedule-table .jet-listing-dynamic-repeater__item span:last-child {
    border-left: 1px solid var(--e-global-color-bc3b9ad);
}

.oo-schedule-table .oo-schedule-time {
    width: 170px;
    font-size: 18px;
    font-weight: 500;
    color: var(--e-global-color-secondary);
    text-align: center;
}

/* Event template What to Expect */
.oo-event-expect-bullets .jet-listing-dynamic-repeater__item:not(:last-child) {
    border-bottom: 1px solid var(--e-global-color-bc3b9ad);
}

.oo-event-expect-bullets .jet-listing-dynamic-repeater__item {
    padding: 20px 10px;
}

.oo-event-expect-bullets .jet-listing-dynamic-repeater__item li::before {
    content: "•";
    display: flex;
    align-self: start;
    height: 19px;
    margin-right: 10px;
}

/* Footer */
.oo-footer .elementor-widget-text-editor a {
    font-weight: 500;
    color: var(--e-global-color-primary) !important;
}

.oo-footer .elementor-widget-text-editor a:hover {
    color: var(--e-global-color-text) !important;
}

.oo-footer-author svg {
    vertical-align: middle;
}

/* Footer wave */
.oo-footer-wave-filled {
    height: calc(100% - 75px);
    clip-path: url(#footer-wave-filled);
}

.oo-footer-wave-gradient {
    height: 100%;
    clip-path: url(#footer-wave-gradient);
}

@media (min-width: 768px) {
    .oo-footer-wave-filled {
        height: calc(100% - 100px);
    }
}

@media (min-width: 1025px) {
    .oo-footer-wave-filled {
        height: calc(100% - 81px);
    }

    .oo-footer-wave-gradient {
        height: calc(100% - 87px);
    }
}

/* Road To Happiness Styling  */


/* Navigation */
#r2h_nav .elementor-widget-nav-menu .elementor-widget-container .elementor-nav-menu--main ul {
    gap: 64px;
}

#r2h_nav .elementor-widget-nav-menu .elementor-widget-container .elementor-nav-menu--main ul li a {
    padding: 0;
    margin: 0;
}

#r2h_nav .elementor-widget-nav-menu .elementor-widget-container .elementor-nav-menu--main ul li:last-of-type {
    padding: 8px 16px;
    background: #FFFFFF;
    border: 2px solid #5FD0DF;
    border-radius: 40px;
}

#r2h_nav .elementor-widget-nav-menu .elementor-widget-container .elementor-nav-menu--dropdown {
    background: transparent;
}

#r2h_nav .elementor-widget-nav-menu .elementor-widget-container .elementor-nav-menu--dropdown ul {
    margin: 0 8px;
    background: #FFFFFF;
    border-radius: 0 0 40px 40px;
}

#r2h_nav .elementor-widget-nav-menu .elementor-widget-container .elementor-nav-menu--dropdown ul li:last-of-type {
    padding: 6px 12px;
    background: #FFFFFF;
    border: 2px solid #5FD0DF;
    border-radius: 40px;
    margin: 0 16px 16px 16px;
}

#r2h_nav .elementor-widget-nav-menu .elementor-widget-container .elementor-nav-menu--dropdown ul li:last-of-type:active {
    background: #5FD0DF;
}

#r2h_nav .elementor-widget-nav-menu .elementor-widget-container .elementor-nav-menu--main ul li:last-of-type:hover {
    background: #5FD0DF;
}

#r2h_nav .elementor-widget-nav-menu .elementor-widget-container .elementor-nav-menu--main ul li:last-of-type:hover a {
    color: #FFFFFF;
}

/* Image Gallery Carousel */
.image-gallery-carousel .swiper-pagination-bullet {
    width: 100px !important;
    border-radius: 0;
    margin: 0 !important;
    background: #5FD0DF !important;
    opacity: 1;
}

.image-gallery-carousel .swiper-pagination-bullet-active {
    background: #008697 !important;
}

@media (max-width: 1024px) {

    .image-gallery-carousel .swiper-pagination-bullets {
        width: 100%;
    }
}

@media (max-width: 767px) {
    .image-gallery-carousel .swiper-pagination-bullet {
        width: 5vw !important;
    }

    .image-gallery-carousel .swiper-pagination-bullets,
    .image-gallery-carousel .elementor-swiper-button {
        z-index: 0 !important;
    }
}

/* R2H Register Your Interest Form */
#wpforms-10814 {
    margin-bottom: 0 !important;
}

#wpforms-form-10814 .wpforms-field-label {
    color: #374151;
    font-family: "Be Vietnam Pro";
    font-size: 14px;
    font-style: normal;
    font-weight: 600;
    line-height: 20px letter-spacing: 0;
    padding-bottom: 12px;
}

#wpforms-form-10814 :is(input[type=date],
    input[type=email],
    input[type=number],
    input[type=password],
    input[type=search],
    input[type=tel],
    input[type=text],
    input[type=url],
    select,
    textarea) {
    border-radius: 2px;
    border: 1px solid #E5E7EB;
    background: #FFFFFF;
    padding: 8px 12px;
}

#wpforms-form-10814 input::placeholder,
#wpforms-form-10814 textarea::placeholder {
    color: #9CA3AF;
    font-family: "Be Vietnam Pro";
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 24px;
    letter-spacing: 0;
}

#wpforms-form-10814 button.wpforms-submit {
    display: flex;
    width: 100%;
    padding: 8px 12px;
    justify-content: center;
    align-items: center;
    align-self: stretch;
    border-radius: 2px;
    border: 2px solid #5FD0DF;
    background: #FFFFFF;
    color: #111827;
    text-align: center;
    font-family: "Be Vietnam Pro";
    font-size: 16px;
    font-style: normal;
    font-weight: 600;
    line-height: 24px;
    letter-spacing: 0;
}

#wpforms-form-10814 .wpforms-submit-container {
    margin-top: 27px;
}

#wpforms-10814-field_6-container,
#wpforms-10814-field_5-container,
#wpforms-10814-field_1-container {
    padding: 14px 0;
}

#wpforms-10814 .wpforms-confirmation-container p strong:first-of-type {
    color: #111827;
    text-align: center;
    font-family: Ruskaf Regular;
    font-size: 32px;
    font-style: normal;
    font-weight: 400;
    line-height: 40px;
    letter-spacing: 0;
}

#wpforms-10814 .wpforms-confirmation-container p strong span {
    color: #008697;
}

#wpforms-10814 .wpforms-confirmation-container p:nth-of-type(2) {
    color: #374151;
    text-align: center;
    font-family: "Be Vietnam Pro";
    font-size: 18px;
    font-style: normal;
    font-weight: 400;
    line-height: 28px;
    letter-spacing: 0;
}

/* Footer */
#r2h-footer .elementor-widget-text-editor a {
    font-weight: 400;
}

/* R2H page team member cards */

.oo-team-member-grid-r2h .oo-team-member .team-card-background {
    background-color: #008697 !important;
}

.oo-team-member-grid-r2h .oo-team-member .team-card-background .team-card-heading .elementor-icon svg path {
    fill: #111827 !important;
}

.oo-team-member-grid-r2h .oo-team-member .team-card-background {
    z-index: 0;
}

/* ===== Dropdown select (field 16) ===== */
#wpforms-4300-field_16-container {
    position: relative;
}

#wpforms-4300-field_16-container select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;

    width: 100%;
    line-height: 1.5;
    padding: 12px 44px 12px 14px;
    border: 2px solid var(--e-global-color-primary);
    border-radius: 3px;
    background-color: transparent;

    cursor: pointer;
    outline: none;
}

#wpforms-4300-field_16-container select:focus {
    outline: 2px solid var(--e-global-color-primary);
    outline-offset: 2px;
}

/* Arrow */
#wpforms-4300-field_16-container::after {
    content: "";
    position: absolute;
    right: 14px;
    top: 50%;
    transform: translateY(-50%);
    width: 18px;
    height: 18px;
    pointer-events: none;

    background-repeat: no-repeat;
    background-position: center;
    background-size: 18px 18px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 18 18' fill='none'%3E%3Cpath d='M5.3 6.8L9 10.5L12.7 6.8L14 8.1L9 13.1L4 8.1L5.3 6.8Z' fill='%23445EE9'/%3E%3C/svg%3E");
}

/* ===== Radio groups with class oo-select ===== */
.wpforms-field.oo-select .wpforms-field-label {
    margin-bottom: 10px;
}

/* 3-column layout (like your checkbox grid) */
.wpforms-field.oo-select ul {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    padding: 0 !important;
    margin: 0 !important;
}

@media (max-width: 1024px) {
    .wpforms-field.oo-select ul {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 767px) {
    .wpforms-field.oo-select ul {
        grid-template-columns: repeat(1, minmax(0, 1fr));
    }
}

.wpforms-field.oo-select li {
    position: relative;
    cursor: pointer;
    outline: none;
    line-height: 1.5 !important;
    margin: 5px 0 !important;
    list-style: none;
    width: auto !important;
    /* add left padding to make room for the circle */
    padding-left: 28px;
}

.wpforms-field.oo-select li:focus {
    outline: 2px solid var(--e-global-color-primary);
    outline-offset: 2px;
}

/* Keep native radio accessible but visually hidden — display:none kills click area */
.wpforms-field.oo-select li > input[type="radio"] {
    position: absolute;
    left: 0;
    top: 0;
    width: 18px;
    height: 100%;   /* covers the full li height so the circle area is clickable */
    opacity: 0;
    margin: 0;
    cursor: pointer;
    z-index: 1;
}

.wpforms-field.oo-select li > label {
    vertical-align: middle;
    cursor: pointer;
}

/* Custom "radio" circle — absolutely positioned so it never shifts */
.wpforms-field.oo-select li::before {
    content: '';
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    border: 2px solid var(--e-global-color-primary);
    border-radius: 999px;
    width: 18px;
    height: 18px;
    box-sizing: border-box;
    pointer-events: none;  /* let clicks pass through to the input underneath */
}

/* Filled dot — centred inside the circle using the same anchor */
.wpforms-field.oo-select li.wpforms-selected::after {
    content: '';
    position: absolute;
    left: 4px;           /* (18px - 10px) / 2 = 4px offset from li left edge */
    top: 50%;
    transform: translateY(-50%);
    width: 10px;
    height: 10px;
    border-radius: 999px;
    background: var(--e-global-color-primary);
    pointer-events: none;
}