.barrier-wrapper * {
    transition: all 0.3s ease-in-out;
}

.box > div > div {
    transition: opacity 0.3s ease-in-out, height 0.3s ease-in-out;
}







.barrier-wrapper {
    padding-left: 0.5rem;
    padding-right: 0.5rem;
}
@media (min-width: 576px) {

}
@media (min-width: 768px) {

}
@media (min-width: 992px) {
    .barrier-wrapper {
        padding-left: 3vw;
        padding-right: 3vw;
    }
}
@media (min-width: 1200px) {

}
@media (min-width: 1400px) {

}








.barrier {
    color: #000;
    text-align: center;
    min-height: 19.5vw;
    width: 100%;
    padding: 0 0.5rem;
    margin-bottom: 1rem;
    cursor: pointer;
    transform: scale(1.0001);
}

@media (min-width: 576px) {

}

@media (min-width: 768px) {

}

@media (min-width: 992px) {

}

@media (min-width: 1200px) {
    .barrier {
        width: 20%;
    }
}
@media (min-width: 1400px) {

}

.barrier:nth-of-type(1) .barrier-inner {
    background-color: #249679;
}
.barrier:nth-of-type(2) .barrier-inner {
    background-color: #25a889;
}
.barrier:nth-of-type(3) .barrier-inner {
    background-color: #27b99a;
}
.barrier:nth-of-type(4) .barrier-inner {
    background-color: #2bcdaa;
}
.barrier:nth-of-type(5) .barrier-inner {
    background-color: #2be2bc;
}






.barrier .barrier-inner .barrierIcon {
    margin: 1vw auto 0 auto;
}
.barrier:nth-of-type(1) .barrier-inner .barrierIcon {
    width: 35%;
}
.barrier:nth-of-type(2) .barrier-inner .barrierIcon {
    width: 34%;
}
.barrier:nth-of-type(3) .barrier-inner .barrierIcon {
    width: 34%;
}
.barrier:nth-of-type(4) .barrier-inner .barrierIcon {
    width: 25%;
}
.barrier:nth-of-type(5) .barrier-inner .barrierIcon {
    width: 34%;
}



.barrier.active .barrier-inner .barrierIcon {
    display: none;
}





.barrier:hover {
    transform: scale(1.01);
}
.barrier.active {
    width: 100%;
    min-height: 20vw;
}
@media (min-width: 576px) {
}
@media (min-width: 768px) {
}
@media (min-width: 992px) {
}
@media (min-width: 1200px) {
    .barrier.active {
        width: 60%;
    }
}
@media (min-width: 1400px) {
}
.barrier.active:hover {
    transform: scale(1.0001);
}



.barrier h2 {
    font-size: clamp(1.5rem, 1.75vw, 2rem);
}


.barrier.active h2 {
    color: #000;
}












.barrier .barrier-inner {
    height: 100%;
    background-color: #fff;
    border-radius: 1rem;
    padding: 2rem 0.5rem;
}
.barrier:hover .barrier-inner {
    box-shadow: rgba(0,0,0,0.5) 0px 0px 15px;
}
.barrier.active .barrier-inner {
    background-color: rgb(116, 220, 197);
    background-image: none;
}
.barrier.active:hover .barrier-inner {
    box-shadow: none;
}

.barrier-inner {
    /* background-image: url('AdobeStock_359945582.jpeg'); */
    background-position: center center;
    background-size: 235%;
}
.barrier:nth-child(1) .barrier-inner {
    background-position: 100% center;
}
.barrier:nth-child(2) .barrier-inner {
    background-position: 75% center;
}
.barrier:nth-child(3) .barrier-inner {
    background-position: 50% center;
}
.barrier:nth-child(4) .barrier-inner {
    background-position: 25% center;
}
.barrier:nth-child(5) .barrier-inner {
    background-position: 0% center;
}




.barrier:nth-child(1):hover .barrier-inner {
    background-position: 102% center;
    background-size: 222%;
}
.barrier:nth-child(2):hover .barrier-inner {
    background-position: 76% center;
    background-size: 222%;
}
.barrier:nth-child(3):hover .barrier-inner {
    background-position: 50% center;
    background-size: 222%;
}
.barrier:nth-child(4):hover .barrier-inner {
    background-position: 24% center;
    background-size: 222%;
}
.barrier:nth-child(5):hover .barrier-inner {
    background-position: -2% center;
    background-size: 222%;
}

.barrier h2,
.category-button {
    /* text-shadow: 0px 0px 10px #002200, 2px 2px 15px #002200; */
}
.barrier.active h2,
.barrier.active .category-button {
    text-shadow: none;
}


.barrier .barrier-inner .sub-category-wrapper {
    cursor: initial;
}





.barrier.small {
    padding: 0 0.25rem;
    width: 100%;
}

@media (min-width: 576px) {
}
@media (min-width: 768px) {
}
@media (min-width: 992px) {
}
@media (min-width: 1200px) {
    .barrier.small {
        width: 10%;
    }
}
@media (min-width: 1400px) {
}


.barrier.small .barrier-inner {
    background-image: none;
}

.barrier.small h2 {
    font-size: 1rem;
    overflow-wrap: break-word;
}





.barrier .sub-category-wrapper {
    display: flex;
    opacity: 0;
    height: 0px !important;
    overflow: initial;
}
@media (min-width: 576px) {
}
@media (min-width: 768px) {
    .barrier .sub-category-wrapper {
        display: flex;
        opacity: 0;
        height: 0px !important;
        overflow: hidden;
    }
}
@media (min-width: 992px) {
}
@media (min-width: 1200px) {
}
@media (min-width: 1400px) {
}







.barrier.active .sub-category-wrapper {
    display: flex;
    opacity: 1;
    height: 100% !important;
}

.barrier .category-button {
    display: inline-block;
    width: fit-content;
    padding-right: 3rem;
    margin: 2vw auto 0 auto;
    background-image: url('../png/right-black.png');
    background-position: right 5px;
    background-size: 26px;
    background-repeat: no-repeat;
    height: 2rem;
    color: #000;
    text-decoration: none;
    font-size: 1.25rem;
    line-height: 2rem;
}

.barrier:hover .category-button {
    padding-right: 4rem;
}
.barrier.active .category-button {
    display: none;
}
.barrier.small .category-button {

    line-height: 1rem;
    padding-right: 0rem;
}


.barrier.small .category-button {
    display: inline-block;
    width: fit-content;
    text-align: center;
    padding-bottom: 6rem;
    margin: 2vw auto 0 auto;
    background-image: url('../png/right-black.png');
    background-position: bottom center;
    background-size: 26px;
    background-repeat: no-repeat;
    height: 2rem;
    color: #000;
    text-decoration: none;
    font-size: 1.25rem;
    line-height: 2rem;
}















.barrier.active .sub-category {
    display: block;
    width: 100%;
    padding: 1rem 0.5rem;
    opacity: 1;
}
@media (min-width: 576px) {
}
@media (min-width: 768px) {
}
@media (min-width: 992px) {
}
@media (min-width: 1200px) {
    .barrier.active .sub-category {
        width: 33vw;
    }
    .barrier.active .sub-category.two-column {
        width: 55vw;
    }
}
@media (min-width: 1400px) {
}



.barrier.active .sub-category.small {
    width: 100%;
    padding-left: 0.25rem;
    padding-right: 0.25;
}
@media (min-width: 576px) {
}
@media (min-width: 768px) {
}
@media (min-width: 992px) {
}
@media (min-width: 1200px) {
    .barrier.active .sub-category.small {
        width: 15vw;
        aspect-ratio: initial;
    }
}
@media (min-width: 1400px) {
}


.barrier.active .sub-category.small h3 {
    font-size: 1.15rem;
}

.barrier.active .sub-category > div {
    background-color: #CCF1E9;
    color: #000;
    height: 100%;
    padding: 1rem 1rem;
    border-radius: 1rem;
}
.barrier .sub-category {
    display: none;
    width: 100vw;
    border-radius: 0;
    opacity: 0;
}
@media (min-width: 576px) {
}
@media (min-width: 768px) {
}
@media (min-width: 992px) {
}
@media (min-width: 1200px) {
    .barrier .sub-category {
        width: 33vw;
        padding-bottom: 2rem;
    }
}
@media (min-width: 1400px) {
}

.barrier .sub-category.active {
    display: block;
    width: 100%;
    text-align: left;
}
@media (min-width: 576px) {
}
@media (min-width: 768px) {
}
@media (min-width: 992px) {
}
@media (min-width: 1200px) {
    .barrier .sub-category.active {
        width: 80vw;
        aspect-ratio: initial;
    }
}
@media (min-width: 1400px) {
}




.barrier .sub-category .sub-category-inner h3::before {
    background-color: #000;
    color: #fff;
    border-radius: 9rem;
    display: block;
    height: 3.5rem;
    aspect-ratio: 1/1;
    margin: 0 auto 1.5rem auto;
    text-align: center;
    font-size: 1.5rem;
    font-weight: 400;
    line-height: 3.5rem;
    float: none;
}

.barrier .sub-category.active .sub-category-inner h3 {
    margin-top: 1rem;
}
.barrier .sub-category.active .sub-category-inner h3::before {
    margin: 0rem 1rem 0.75rem 1rem;
    float: left;
}

.barrier h3#a1::before,
.barrier h3#b1::before,
.barrier h3#c1::before,
.barrier h3#d1::before,
.barrier h3#e1::before {
    content: '1'
}
.barrier h3#a2::before,
.barrier h3#b2::before,
.barrier h3#c2::before,
.barrier h3#d2::before,
.barrier h3#e2::before {
    content: '2'
}
.barrier h3#a3::before,
.barrier h3#b3::before,
.barrier h3#c3::before,
.barrier h3#d3::before,
.barrier h3#e3::before {
    content: '3'
}

.barrier h3 {
    padding-top: 1rem;
    font-size: clamp(1.1rem, 1.25vw, 1.45rem);
}

.fullScreen .barrier h3 {
    padding-top: 1rem;
    font-size: clamp(1.25rem, 1.5vw, 1.75rem);
}








.barrier .sub-category.active > div {
    background-color: #fff;
}


.barrier.active .sub-category-button {
    width: fit-content;
    display: inline-block;
    padding-right: 3rem;
    margin: 1.5vw auto 0.5vw auto;
    background-image: url('../png/right-black.png');
    background-position: center right;
    background-size: contain;
    background-repeat: no-repeat;
    height: 2rem;
    transform: scale(1);
    color: #000;
    text-decoration: none;
    font-size: 1.25rem;
    line-height: 2rem;
    opacity: 1;
    cursor: pointer;
}
.barrier.active .sub-category-button:hover {
    padding-right: 4rem;
}
.barrier .sub-category-button {
    opacity: 0;
    transform: scale(0);
    margin-top: 0;
}














.barrier .sub-category .action-points-wrapper {
    height: 0;
    overflow: hidden;
    transform: scale(0);
}
.barrier .sub-category.active .action-points-wrapper {
    height: auto;
    overflow: visible;
    transition-delay: 0.1s;
    transform: scale(1);
}

.barrier .sub-category .action-point::before {
    content: '‣';
    margin-left: -1rem;
    font-size: 2rem;
    display: inline-block;
    position: relative;
    top: 3px;
}
.barrier .sub-category .action-point {
    display: block;
    opacity: 0;
    height: 0px !important;
    overflow: hidden;
    cursor: initial;
    font-size: 1.15rem;
    padding-left: 1rem;
    transform: scale(0);
}
.barrier .sub-category.active .action-point {
    display: block;
    opacity: 1;
    height: fit-content !important;    
    padding: 0.25rem 2rem;
    overflow: visible;
    transform: scale(1);
}
.barrier .sub-category.active .action-point:hover {
    background-color: #CCF1E9;
}


.box .hide {
    opacity: 0 !important;
    height: 0 !important;
    overflow: hidden;
}






.box .barrier-wrapper {
    padding: 0 !important;
    margin: 0 !important;
    height: 100%;
}

.box .barrier {
    width: 100%;
}
.box .barrier.active {
    margin-bottom: 0 !important;
    padding: 0 !important;
}
.box .barrier-inner {
    padding: 0;
}

.box .barrier-inner h2 {
    padding-left: 1rem;
    padding-top: 0.5rem;
}

.box .barrier .sub-category {
    aspect-ratio: initial;
}


.closeBtn {
    margin-top: 1rem;
    display: inline-block;
}
.closeBtn:hover {
    scale: 1.1;
}
.closeBtn::after {
    content: '';
    background-image: url('../png/btn-close.png');
    background-size: contain;
    background-repeat: no-repeat;
    width: 24px;
    height: 24px;
    margin-left: 0.5rem;
    display: inline-block;
    transform: translateY(7px);
}

















@media (min-width: 576px) {
}
@media (min-width: 768px) {
}
@media (min-width: 992px) {
}
@media (min-width: 1200px) {
}
@media (min-width: 1400px) {
}