/* Visually hide the skip link by default */
.visually-hidden-focusable:not(:focus):not(:focus-within) {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

.skip-link {
    color: #FFFFFF;
}

.sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    border: 0;
}

.sticky-element { 
    position: sticky; 
    top: 0; 
    z-index: 999; 
    padding-top: 3.125rem; 
    margin-top: -3.125rem; 
}

/* general styles start */
html {
    overflow-y: scroll;
}

body {
    margin: 0;
    font-family: Verdana, sans-serif;
    font-size: 1rem;
    font-weight: 400;
    color: #444444;
    background-color: #F0F0F0;
}

main {
    padding: 1.75rem 0;
}

section {
    margin-bottom: 1.25rem;
}


p {
    line-height: 1.65;
    margin: 0;
    margin-bottom: 1rem;
}

h1, h2, h3, h4, h5, h6 {
    font-weight: 400;
    line-height: 1.3;
    margin: 0;
    margin-bottom: .75rem;
}

h1 {
    font-size: 1.5rem;
}

h2 {
    font-size: 1.4rem;
}

h3 {
    font-size: 1.3rem;
}

h4 {
    font-size: 1.2rem;
}

h5 {
    font-size: 1.1rem;
}

h6 {
    font-size: 1rem;
}

a {
    line-height: 1.75;
    color: #7bc144;
}

.container {
    max-width: 100%;
    padding: 0 1.5rem;
    margin: 0 auto;
}

.row {
    display: flex;
    flex-direction: column;
}

.col-main,
.col-sidebar,
.col {
    flex-basis: 100%;
}

.img-fluid {
    max-width: 100%;
    height: auto;
}

table {
    display: table;
    width: 100% !important;
    border-collapse: collapse;
}

table tbody {
    display: table-row-group;
}

table thead {
    display: table-header-group;
}

table tr {
    display: table-row;
    border: 1px solid #000000;
}

table td {
    display: table-cell;
    border: 1px solid #000000;
    padding: .313rem;
}

/* general styles end */

/* header */
/* header top start */
.header-top {
    position: relative;
    background-color: #562e91;
    padding: .5rem 0 1rem;
}

.header-top nav {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: space-between;
}

.header-top nav ul {
    list-style: none;
    padding: 0;
    margin: 0;
    margin-bottom: .625rem;

    display: flex;
    align-items: flex-start;
    column-gap: 25px;
}

.header-top nav ul li {
    position: relative;
}

.header-top nav ul li:not(:last-child)::after {
    content: '';
    position: absolute;
    right: -13px;
    top: 50%;
    transform: translateY(-50%);
    width: 1px;
    height: 12px;
    background-color: #000000;
}

.header-top nav ul li a {
    display: block;
    text-decoration: none;
    font-size: 1rem;
    color: #fbfffc;
    transition: color 0.3s ease;
}

.header-top nav ul li a:hover {
    color: #7bc144;
}

.header-top .social-icons {
    display: flex;
    column-gap: 25px;
}

.header-top .social-icons a {
    position: relative;
    font-size: 0;
    line-height: 1;
    background-color: #FFFFFF;
    border-radius: 50px;
    padding: .25rem;
    transition: background-color 0.3s ease;
}

.header-top .social-icons a:hover {
    background-color: #7bc144;
}

.header-top .social-icons a:hover svg path{
    fill: #FFFFFF;
}

.header-top .social-icons a svg {
    width: 14px;
    height: 14px;
}

.header-top .social-icons a svg path {
    fill: #562e91;
    transition: fill 0.3s ease;
}

.header-top .social-icons a:not(:last-child)::after {
    content: '';
    position: absolute;
    right: -13px;
    top: 50%;
    transform: translateY(-50%);
    width: 1px;
    height: 12px;
    background-color: #000000;
}
/* header top end */

/* logo start */
.site-logo {
    display: block;
    margin-bottom: 1rem;
}

.site-logo img {
    display: block;
    margin: 0 auto;
    max-width: 100%;
    height: auto;
}
/* logo end */

/* header main start */
.header-main ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

.header-main a {
    text-decoration: none;
    color: #434343;
}

.header-main a.nav-btn {
    display: block;
    background-color: #7bc144;
    font-size: 1rem;
    color: #FFFFFF;
    padding: .688rem 2rem;
    width: fit-content;
    transition: background-color 0.3s ease;
}

.header-main a.nav-btn:hover {
    background-color: #56872e;
}

/* desktop */
.header-main .nav-desktop {
    display: none;
}

.header-main .nav-desktop ul {
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: space-between;
    padding-right: 1.75rem;
    border-bottom: 1px solid #dddddd;
}

.header-main .nav-desktop ul li a.nav-link {
    position: relative;
    display: block;
}

.header-main .nav-desktop ul li a.nav-link::after {
    content: '';
    position: absolute;
    height: 5px;
    width: 100%;
    background-color: #7bc144;
    bottom: 0;
    left: 0;
    transform: scaleX(0);
    transform-origin: center;
    transition: transform 0.3s ease;
}

.header-main .nav-desktop ul li a.nav-link:hover::after,
.header-main .nav-desktop ul li a.nav-link.active::after {
    transform: scaleX(1);
}

.header-main .nav-desktop ul li:first-child a.nav-link {
    padding: .625rem .438rem .625rem 0;
}

/* mobile */
#hamburger {
    display: block;
    position: relative;
    width: 100%;
    height: 30px;
}

#hamburger .mobile-button__bar {
    position: absolute;
    left: 0;
    height: 2px;
    width: 30px;
    background: #434343;
    border-radius: 2px;
    transition: 125ms ease all;
}

#hamburger .mobile-button__bar:nth-child(1) {
    top: 0;
}

#hamburger .mobile-button__bar:nth-child(2) {
    top: 50%;
    transform: translateY(-50%);
}

#hamburger .mobile-button__bar:nth-child(3) {
    top: 100%;
    transform: translateY(-100%);
}

.nav-mobile {
    border-bottom: 1px solid #dddddd;
}

.nav-mobile > div {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.nav-mobile-menu {
    display: none;
}

.nav-mobile-menu ul li a {
    display: block;
    padding: .5rem 0;
}

.nav-mobile-menu ul li a.active {
    width: fit-content;
    margin-bottom: .625rem;
    border-bottom: 5px solid #7bc144;
}

/* open */
.nav-mobile.open #hamburger .mobile-button__bar:nth-child(1) {
    width: 30px;
    left: 0;
    top: 50%;
    transform: translateY(-50%) rotate(45deg);
    height: 2px;
}

.nav-mobile.open #hamburger .mobile-button__bar:nth-child(2) {
    transform: translateY(-50%) rotate(135deg);
    height: 2px;
}

.nav-mobile.open #hamburger .mobile-button__bar:nth-child(3) {
    transform: translateY(-100%) translateX(-100%);
    opacity: 0;
}

.nav-mobile.open .nav-mobile-menu{
    display: block;
}
/* header main end */

/* sidebar nav start */
.sidebar-nav-item:not(:last-child) {
    margin-bottom: .625rem;
}

.sidebar-nav-item a {
    display: flex;
    align-items: center;
    gap: 10px;
    color: #533090;
    text-align: left;
    text-decoration: none;
    line-height: 1.2;
    transition: color 0.3s ease;
}

.sidebar-nav-item.current a,
.sidebar-nav-item a:hover {
    color: #56872f;
}

.sidebar-nav-item.current a .icon-plus::before {
    transform: rotate(0deg);
}

.sidebar-nav-item-sub {
    text-indent: -14px;
    padding-left: 1.25rem;
    margin-bottom: 0 !important;
}

.sidebar-nav-item-sub.item-sub-last {
    margin-bottom: .75rem !important;
}

.sidebar-nav-item-sub.item-sub-last:last-child {
    margin-bottom: 0 !important;
}

.sidebar-nav-item-sub a {
    display: block;
    color: #56872f;
    text-align: left;
    text-decoration: none;
    line-height: 1.5;
    padding: .25rem 0 .16rem 1rem;
}

.sidebar-nav-item-sub a:hover {
    background-color: #F4F4F4;
}

.sidebar-nav-item-sub a::before {
    content: '\00BB';
    color: #533090;
    margin-right: .125rem;
    opacity: 0;
}

.sidebar-nav-item-sub a:hover::before {
    content: '\00BB';
    opacity: 1;
}
/* sidebar nav end */

/* footer green nav start */
#footerGreenNav {
    background-color: #3d6020;
    padding: 1.5rem 0 2.5rem;
}

#footerGreenNav small {
    display: block;
    text-align: center;
    color: #7cc044;
}

#footerGreenNav .footer-links ul {
    list-style: none;
    padding: 0;
    margin: 0;
    margin-bottom: .625rem;

    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: center;
    column-gap: 30px;
}

#footerGreenNav .footer-links ul li {
    position: relative;
}

#footerGreenNav .footer-links ul li:not(:last-child)::after {
    content: '';
    position: absolute;
    right: -16px;
    top: 50%;
    transform: translateY(-50%);
    width: 1px;
    height: 18px;
    background-color: #7cc044;
}

#footerGreenNav .footer-links ul li a {
    text-decoration: none;
    color: #7cc044;
    transition: color 0.3s ease;
}

#footerGreenNav .footer-links ul li a:hover {
    color: #FFFFFF;
}
/* footer end */

/* global start */
.wrapper { 
    padding: 1.5rem 1.75rem;
}

/* headings */
.page-heading {
    max-width: 100%;
    background-color: #aa96c7;
    font-size: 1.4rem;
    color: #533090;
    text-align: center;
    padding: .625rem 1.25rem .75rem;
    margin-bottom: 1.5rem;
}

.heading-block {
    background-color: #aa96c7;
    color: #533090;
    padding: .625rem 1.25rem;
    margin-bottom: 0;
}

.heading-content {
    color: #7bc144;
}

.heading-dotted {
    color: #542d91;
    border-bottom: 1px dotted #aa99c4;
    padding-bottom: .75rem;
}

.heading-icon {
    display: flex;
    align-items: center;
    column-gap: 12px;
    margin-bottom: 1rem;
}

.heading-icon .icon {
    background-color: #7bc144;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: .5rem;
    height: 100%;
    border-radius: 50px;
}

.heading-icon h2 {
    color: #56872f;
    margin-bottom: 0;
}

/* icon plus */
.icon-plus {
    position: relative;
    background-color: #56872f;
    display: flex;
    justify-content: center;
    align-items: center;
    min-width: 12px;
    height: 12px;
    border-radius: 50px;
    transition: background-color 0.3s ease;
}

.icon-plus::before {
    content: '';
    width: 7px;
    height: 2px;
    border-radius: 2px;
    background-color: #FFFFFF;
    position: absolute;
    top: 5px;
    transform: rotate(90deg);
    transition: all 0.3s ease-in-out;
}

.icon-plus::after {
    content: '';
    width: 7px;
    height: 2px;
    border-radius: 2px;
    background-color: #FFFFFF;
    position: absolute;
    top: 5px;
}

/* link block wide */
.link-block-wide {
    display: block;
    background-color: #562e91;
    color: #FFFFFF;
    line-height: 1.5;
    text-align: center;
    text-decoration: none;
    padding: .625rem .75rem;
    transition: all 0.3s ease;
}

.link-block-wide:hover {
    background-color: #8849e7;
    color: #FFFFFF;
}

/* link block right */
.link-block-right {
    display: flex;
    justify-content: flex-end;
    background-color: #e0e0e0;
}

.link-block-right a {
    background-color: #444444;
    color: #7ac143;
    padding: .313rem 1.25rem;
    text-decoration: none;
    transition: all 0.3s ease;
}

.link-block-right a:hover {
    background-color: #7ac143;
    color: #ffffff;
}

/* link text */
.link-text {
    position: relative;
    display: block;
    width: fit-content;
    color: #562e91;
    text-decoration: none;
    margin-bottom: 1.25rem;
}

.link-text::after {
    content: '';
    position: absolute;
    height: 1px;
    width: 100%;
    background-color: #562e91;
    bottom: 0;
    left: 0;
    transform: scaleX(0);
    transform-origin: center;
    transition: transform 0.3s ease;
}

.link-text:hover::after {
    transform: scaleX(1);
}

/* slider */
.slider {
    position: relative;
    height: 100%;
}

.slider .slider-indicators {
    position: absolute;
    top: 20px;
    right: 20px;
    z-index: 3;

    display: flex;
    gap: 5px;
}

.slider .slider-indicators .dots {
    background: none;
    background-color: #FFFFFF;
    width: 8px;
    height: 8px;
    padding: .25rem;
    margin: 0;
    border: none;
    border-radius: 50px;
    opacity: .3;
    cursor: pointer;
    transition: opacity 0.3s ease;
}

.slider .slider-indicators .dots:hover,
.slider .slider-indicators .dots.active {
    opacity: 1;
}

.slider .slider-item {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    min-height: 480px;
    background-size: cover !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    
    opacity: 0;
    transition: opacity 1s ease-in-out;
    z-index: 0;
    pointer-events: none;
}

.slider .slider-item.active {
    position: relative;
    opacity: 1;
    z-index: 1;
    pointer-events: auto;
}

.slider .slider-item .caption {
    background-color: rgba(0, 0, 0, .7);
    position: absolute;
    bottom: 0;
    width: 100%;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    column-gap: 20px;
    padding: 1.25rem;
    color: #FFFFFF;
}

.slider .slider-item .caption .caption-title {
    margin-bottom: .25rem;
}

.slider .slider-item .caption .caption-description {
    margin-bottom: 1rem;
    line-height: 1.3;
}

.slider .slider-item .caption .caption-btn {
    background-color: #7bc144;
    color: #FFFFFF;
    text-align: center;
    line-height: 1.3;
    text-decoration: none;
    padding: .875rem 1.75rem;
    transition: background-color 0.3s ease;
}

.slider .slider-item .caption .caption-btn:hover {
    background-color: #56872e;
}

/* forms */
.form-label {
    display: block;
    margin-bottom: .625rem;
}

.form-control {
    display: block;
    width: 100%;
    padding: .375rem .75rem;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.5;
    color: #000000;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background-color: #FFFFFF;
    background-clip: padding-box;
    border: 1px solid #495057;
    border-radius: 0;
    transition: border-color .15s ease-in-out, box-shadow .15s ease-in-out;

    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

.form-control:focus {
    color: #000000;
    background-color: #FFFFFF;
    border-color: #86B7FE;
    outline: 0;
    box-shadow: 0 0 0 .25rem rgba(13, 110, 253, .25);
}

.form-select:disabled {
    background-color: #e9ecef;
    border-color: #ced4da;
    opacity: 1;
}

.form-select {
    display: block;
    width: 100%;
    padding: .375rem 2.25rem .375rem .75rem;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.5;
    color: #000000;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background-color: #FFFFFF;
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e");
    background-repeat: no-repeat;
    background-position: right .75rem center;
    background-size: 16px 12px;
    border: 1px solid #495057;
    border-radius: 0;
    transition: border-color .15s ease-in-out, box-shadow .15s ease-in-out;
}

.form-select:focus {
    border-color: #86b7fe;
    outline: 0;
    box-shadow: 0 0 0 .25rem rgba(13, 110, 253, .25);
}

/* min-height */
#subpageSectionContent,
#subpageGenericContent,
#newsArticle,
#newsPageContent,
#eventWrapper,
#eventsPageContent {
    min-height: 480px;
}

/* page content */
.page-content {
    background-color: #FFFFFF;
    margin-bottom: 0;
}

.page-content .featured-image {
    margin-bottom: 1rem;
}

/* subpage content */
#subpageContent h1,
#subpageContent h2,
#subpageContent h3,
#subpageContent h4,
#subpageContent h5,
#subpageContent h6 {
    color: #57892d;
    font-weight: 400;
    line-height: 1.3;
    margin: 0;
    margin-bottom: .75rem;
}

#subpageContent h1 {
    font-size: 1.5rem;
}

#subpageContent h2 {
    font-size: 1.4rem;
}

#subpageContent h3 {
    font-size: 1.3rem;
}

#subpageContent h4 {
    font-size: 1.2rem;
}

#subpageContent h5 {
    font-size: 1.1rem;
}

#subpageContent h6 {
    font-size: 1rem;
}

#subpageContent p {
    font-size: 1rem;
    font-weight: 400;
    color: #444444;
}

#subpageContent p:last-child {
    margin-bottom: 0;
}

#subpageContent a {
    display: inline-block;
    position: relative;
    text-decoration: none;
}

#subpageContent a::after {
    content: '';
    position: absolute;
    height: 1px;
    width: 100%;
    background-color: #7bc144;
    bottom: 0;
    left: 0;
    transform: scaleX(0);
    transform-origin: center;
    transition: transform 0.3s ease;
}

#subpageContent a:hover::after {
    transform: scaleX(1);
}

#subpageContent ul {
    list-style-type: square;
    padding-left: 2rem;
    margin: 1.875rem 0;
    color: #444444;
}

#subpageContent ul li {
    padding-left: .5rem;
    margin-bottom: .5rem;
}

#subpageContent ul li::marker {
    color: #56872f;
}

#subpageContent ol {
    list-style-type: decimal;
    padding-left: 2.3rem;
    margin: 1.875rem 0;
    color: #444444;
}

#subpageContent ol li {
    padding-left: .25rem;
    margin-bottom: .5rem;
}

#subpageContent ol li::marker {
    color: #56872f;
}

#subpageContent img {
    max-width: 100%;
    height: auto;
    margin-bottom: 1rem;
}

#subpageContent div:last-child img:last-child {
    margin-bottom: 0;
}

/* subpage generic content */
#subpageGenericContent h1,
#subpageGenericContent h2,
#subpageGenericContent h3,
#subpageGenericContent h4,
#subpageGenericContent h5,
#subpageGenericContent h6 {
    color: #57892d;
    font-weight: 400;
    line-height: 1.3;
    margin: 0;
    margin-bottom: .75rem;
}

#subpageGenericContent h1 {
    font-size: 1.5rem;
}

#subpageGenericContent h2 {
    font-size: 1.4rem;
}

#subpageGenericContent h3 {
    font-size: 1.3rem;
}

#subpageGenericContent h4 {
    font-size: 1.2rem;
}

#subpageGenericContent h5 {
    font-size: 1.1rem;
}

#subpageGenericContent h6 {
    font-size: 1rem;
}

#subpageGenericContent p {
    font-size: 1rem;
    font-weight: 400;
    color: #444444;
}

#subpageGenericContent p:last-child {
    margin-bottom: 0;
}

#subpageGenericContent a {
    display: inline-block;
    position: relative;
    text-decoration: none;
}

#subpageGenericContent a::after {
    content: '';
    position: absolute;
    height: 1px;
    width: 100%;
    background-color: #7bc144;
    bottom: 0;
    left: 0;
    transform: scaleX(0);
    transform-origin: center;
    transition: transform 0.3s ease;
}

#subpageGenericContent a:hover::after {
    transform: scaleX(1);
}

#subpageGenericContent ul {
    list-style-type: square;
    padding-left: 2rem;
    margin: 1.875rem 0;
    color: #444444;
}

#subpageGenericContent ul li {
    padding-left: .5rem;
    margin-bottom: .5rem;
}

#subpageGenericContent ul li::marker {
    color: #56872f;
}

#subpageGenericContent ol {
    list-style-type: decimal;
    padding-left: 2.3rem;
    margin: 1.875rem 0;
    color: #444444;
}

#subpageGenericContent ol li {
    padding-left: .25rem;
    margin-bottom: .5rem;
}

#subpageGenericContent ol li::marker {
    color: #56872f;
}

#subpageGenericContent img {
    max-width: 100%;
    height: auto;
    margin-bottom: 1rem;
}

#subpageGenericContent div:last-child img:last-child {
    margin-bottom: 0;
}

/* paper effect */
.paper {
    position: relative;
    background-color: #FFFFFF;
}

.paper::before,
.paper::after {
    content: '';
    position: absolute;
    display: block;
}

.paper::before {
    top: -39px;
    border: 20px #FFFFFF solid;
    border-top-color: transparent;
    border-left-color: transparent;
    right: 0;
    box-shadow: 3px 3px 4px rgba(0, 0, 0, 0.1);
    transform: rotate(88deg);
    z-index: 2;
}

.paper::after {
    background: #FFFFFF;
    position: absolute;
    height: 45px;
    width: calc(100% - 2.5rem);
    top: -38px;
}

.paper .wrapper {
    position: relative;
    padding: 0 1.75rem;
    top: -1em;
    z-index: 1;
    margin-top: 3.625rem;
}

/* posts */
.posts-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.posts .wrapper {
    background-color: #FFFFFF;
    padding: 1.2rem;
}

.posts-list li .post {
    margin-bottom: 1rem;
    padding-bottom: .75rem;
    border-bottom: 1px dotted #aa99c4;
}

.post .post-title {
    color: #57892d;
}

.post .post-meta {
    display: flex;
    align-items: center;
    margin-bottom: .313rem;
}

.post .post-meta p {
    margin-bottom: 0;
}

.post .post-content small {
    display: block;
    margin: .5rem 0;
    color: #595959;
}

.post .post-content p {
    display: block;
    color: #444444;
    line-height: 1.5;
    margin-bottom: .25rem;
}

.post .link-text {
    margin-bottom: 0;
}

.post .post-meta {
    column-gap: 5px;
    font-size: .75rem;
    color: #595959;
}

/* news homepage */
#newsHomepage .posts-list li:last-child .post {
    border-bottom: none;
}

#newsHomepage .posts-list li:last-child .post {
    padding-bottom: 0;
    margin-bottom: 0;
}

#newsHomepage .post .post-meta {
    column-gap: 12px;
}

#newsHomepage  .post .post-meta .date {
    color: #57892d;
    text-transform: uppercase;
    font-size: .875rem;
    font-weight: 600;
    transition: color 0.3s ease;
}

#newsHomepage .post .post-content {
    margin-left: 1.563rem;
}

/* news page */
#newsPageContent {
    margin-bottom: 1rem;
}

#newsPageContent .posts-list {
    width: 100%;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    column-gap: 1.25rem;
    row-gap: 2rem;
}

#newsPageContent .posts-list li {
    flex-basis: 100%;
}

#newsPageContent .posts-list li .post {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    height: 100%;
    margin-bottom: 0
}

#shareListSidebar {
    margin-bottom: 1rem;
}

.share-section {
    margin-bottom: 0;
}

.share-list-social {
    list-style: none;
    display: flex;
    align-items: center;
    column-gap: .5rem;
    padding-left: 0;
    margin: 0;
}

.share-list-social .social-link {
    display: block;
    line-height: 1;
}

.share-list-social .social-link .icon {
    background: #562e91;
    fill: #FFFFFF;
    padding: 5px;
    border-radius: 50px;
}

.share-list-social button {
    display: flex;
    background: #562e91;
    padding: 5px;
    border-radius: 50px;
    border: none;
    cursor: pointer;
}

.share-list-social button .icon {
    fill: #FFFFFF;
}

/* news related */
#newsRelatedSidebar .posts-list li:last-child .post {
    margin-bottom: 0;
    padding-bottom: 0;
    border-bottom: none;
}

/* filter */
#newsPageContent .posts-list li.hidden {
    display: none;
}

.news-filter {
    margin: 1.5rem 0;
}

.news-filter .row {
    gap: 16px;
}

#eventsPageContent .events-list li.hidden {
    display: none;
}

.events-filter {
    margin: 1.5rem 0;
}

.events-filter .row {
    gap: 16px;
}

.message h2 {
    text-align: center;
    margin: 2rem 0;
}

/* news featured */
#newsFeatured {
    margin: 2rem 0;
}

.featured-news-item .news-grid {
    display: flex;
    align-items: flex-start;
    flex-direction: column;
    gap: 1rem;
}

.featured-news-item .news-image {
    margin: 0;
}

.featured-news-item .news-image,
.featured-news-item .news-content {
    flex-basis: 100%;
}

.featured-news-item .news-meta {
    display: flex;
    align-items: center;
    margin-bottom: .313rem;
    font-size: .75rem;
    color: #595959;
}

.featured-news-item .news-meta .separator {
    margin-left: 8px;
}

.featured-news-item .news-title {
    color: #57892d;
}

.featured-news-item .news-meta p {
    margin-bottom: 0;
}

/* news article */
#newsArticle figure {
    margin: 1rem 0;
}

#newsArticle figure figcaption {
    font-size: .75rem;
    font-style: italic;
}

/* news article content */
#newsArticleContent {
    margin-bottom: 0;
}

#newsArticleContent h1,
#newsArticleContent h2,
#newsArticleContent h3,
#newsArticleContent h4,
#newsArticleContent h5,
#newsArticleContent h6 {
    color: #57892d;
    font-weight: 400;
    line-height: 1.3;
    margin: 0;
    margin-bottom: .75rem;
}

#newsArticleContent h1 {
    font-size: 1.5rem;
}

#newsArticleContent h2 {
    font-size: 1.4rem;
}

#newsArticleContent h3 {
    font-size: 1.3rem;
}

#newsArticleContent h4 {
    font-size: 1.2rem;
}

#newsArticleContent h5 {
    font-size: 1.1rem;
}

#newsArticleContent h6 {
    font-size: 1rem;
}

#newsArticleContent p {
    font-size: 1rem;
    font-weight: 400;
    color: #444444;
}

#newsArticleContent p:last-child {
    margin-bottom: 0;
}

#newsArticleContent a {
    display: inline-block;
    position: relative;
    text-decoration: none;
}

#newsArticleContent a::after {
    content: '';
    position: absolute;
    height: 1px;
    width: 100%;
    background-color: #7bc144;
    bottom: 0;
    left: 0;
    transform: scaleX(0);
    transform-origin: center;
    transition: transform 0.3s ease;
}

#newsArticleContent a:hover::after {
    transform: scaleX(1);
}

#newsArticleContent ul {
    list-style-type: square;
    padding-left: 2rem;
    margin: 1.875rem 0;
    color: #444444;
}

#newsArticleContent ul li {
    padding-left: .5rem;
    margin-bottom: .5rem;
}

#newsArticleContent ul li::marker {
    color: #56872f;
}

#newsArticleContent ol {
    list-style-type: decimal;
    padding-left: 2.3rem;
    margin: 1.875rem 0;
    color: #444444;
}

#newsArticleContent ol li {
    padding-left: .25rem;
    margin-bottom: .5rem;
}

#newsArticleContent ol li::marker {
    color: #56872f;
}

#newsArticleContent img {
    max-width: 100%;
    height: auto;
    margin-bottom: 1rem;
}

#newsArticleContent div:last-child img:last-child {
    margin-bottom: 0;
}

/* events */
.events-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.events-list .event-details .event-detail:not(:last-child) {
    margin-bottom: .75rem;
}

#eventsHomepage .wrapper {
    background-color: #FFFFFF;
    padding: 1.2rem;
}

#eventsHomepage .events-list li:not(:last-child) .event {
    margin-bottom: 1rem;
    padding-bottom: 1rem;
    border-bottom: 1px dotted #aa99c4;
}

#eventsHomepage .event {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    text-decoration: none;
    column-gap: 20px;
}

#eventsHomepage .event .event-icon {
    background-color: #e0e0e0;
    border-radius: 50px;
    padding: .75rem;
    transition: background-color 0.3s ease;
}

#eventsHomepage .event .event-icon svg {
    display: block;
}

#eventsHomepage .event .event-details .date {
    display: block;
    margin-bottom: .25rem;
    color: #57892d;
    text-transform: uppercase;
    font-size: .875rem;
    font-weight: 600;
    transition: color 0.3s ease;
}

#eventsHomepage .event .event-details .event-content {
    display: block;
    color: #444444;
    line-height: 1.5;
    margin-bottom: .25rem;
    transition: color 0.3s ease;
}

#eventsHomepage .event .link-text {
    margin-bottom: 0;
}

#eventsHomepage .event .event-content p {
    line-height: 1.5;
    margin-bottom: .25rem;
}

/* events page */
#eventsPageContent .events-list {
    width: 100%;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    column-gap: 1.25rem;
    row-gap: .5rem;
}

#eventsPageContent .events-list .event-details .event-detail {
    display: flex;
    column-gap: .4rem;
}

#eventsPageContent .events-list .event-details .event-detail .icon {
    min-width: 20px;
}

#eventWrapper {
    margin-bottom: 1rem;
}

#allEventsContent {
    margin: 2rem 0 0;
}

#allEventsContent .events-list img,
#allEventsContent .events-list .event-details {
     margin-bottom: 1rem;
}

.event-title {
    color: #57892d;
}

.event-host {
    margin-bottom: 0;
}

/* event single */
.event-single figure {
    margin: 0 0 1rem 0;
}

.event-single figure figcaption {
    font-size: .75rem;
    font-style: italic;
}

.event-single .event-details {
    margin-bottom: 1rem;
}

.event-single .event-details .event-detail {
    display: flex;
    align-items: center;
    column-gap: .5rem;
    margin-bottom: .2rem;
}

.event-single .event-details .event-detail .icon {
    min-width: 20px;
}

.event-single .event-details .event-detail p {
    margin-bottom: 0;
}

.event-address span {
    display: block;
}

/* event content */
#eventContent {
    margin-bottom: 0;
}

#eventContent h1,
#eventContent h2,
#eventContent h3,
#eventContent h4,
#eventContent h5,
#eventContent h6 {
    color: #57892d;
    font-weight: 400;
    line-height: 1.3;
    margin: 0;
    margin-bottom: .75rem;
}

#eventContent h1 {
    font-size: 1.5rem;
}

#eventContent h2 {
    font-size: 1.4rem;
}

#eventContent h3 {
    font-size: 1.3rem;
}

#eventContent h4 {
    font-size: 1.2rem;
}

#eventContent h5 {
    font-size: 1.1rem;
}

#eventContent h6 {
    font-size: 1rem;
}

#eventContent p {
    font-size: 1rem;
    font-weight: 400;
    color: #444444;
}

#eventContent p:last-child {
    margin-bottom: 0;
}

#eventContent a {
    display: inline-block;
    position: relative;
    text-decoration: none;
}

#eventContent a::after {
    content: '';
    position: absolute;
    height: 1px;
    width: 100%;
    background-color: #7bc144;
    bottom: 0;
    left: 0;
    transform: scaleX(0);
    transform-origin: center;
    transition: transform 0.3s ease;
}

#eventContent a:hover::after {
    transform: scaleX(1);
}

#eventContent ul {
    list-style-type: square;
    padding-left: 2rem;
    margin: 1.875rem 0;
    color: #444444;
}

#eventContent ul li {
    padding-left: .5rem;
    margin-bottom: .5rem;
}

#eventContent ul li::marker {
    color: #56872f;
}

#eventContent ol {
    list-style-type: decimal;
    padding-left: 2.3rem;
    margin: 1.875rem 0;
    color: #444444;
}

#eventContent ol li {
    padding-left: .25rem;
    margin-bottom: .5rem;
}

#eventContent ol li::marker {
    color: #56872f;
}

#eventContent img {
    max-width: 100%;
    height: auto;
    margin-bottom: 1rem;
}

#eventContent div:last-child img:last-child {
    margin-bottom: 0;
}

#eventLocationSidebar {
    margin-bottom: 1rem;
}

#eventLocationSidebar .event-address {
    display: flex;
    column-gap: .3rem;
}

#eventLocationSidebar .event-address-icon .icon {
    min-width: 23px;
}

#eventLocationSidebar .link-text {
    margin-bottom: 0;
}

/* free content - did you know */
#freeContent1 {
    padding: 1.25rem .5rem;
    margin-bottom: 0;
    border-top: 1px solid #dddddd;
    border-bottom: 1px solid #dddddd;
}

#freeContent1 p:last-child {
    margin-bottom: 0;
}

/* free content - who we are */
#freeContent2 {
    background-color: #e0e0e0;
}

#freeContent2 p {
    font-size: 1rem;
    margin-bottom: 1.438rem;
}

/* free content 3 - newsletter */
#freeContent3 {
    padding: 1.25rem .5rem;
}

/* free content 4 - newsletter */
#freeContent4 {
    padding: 1.875rem 1.875rem 0;
}

/* content area - alt */
.content-area {
    padding: 1.25rem 0;
    border-top: 1px solid #dddddd;
}

.content-area h3 {
    margin-bottom: .5rem;
}

.content-area p {
    margin-bottom: 2rem;
}
/* global end */

/* partnership start */
#partnership {
    position: relative;
}

#partnership .wrapper {
    position: relative;
    padding-bottom: .75rem;
}

#partnership h2 {
    margin-bottom: 1rem;
}

#partnership img {
    display: block;
    width: auto;
    margin: 0 auto;
    margin-bottom: .625rem;
}

#partnership p {
    margin-bottom: 0;
}
/* partnership end */

/* browse tile start */
.browse-tile {
    position: relative;
    display: flex;
    align-items: center;
    background-size: cover !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
}

.browse-tile::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
    background: linear-gradient(0deg, rgba(84, 46, 145, 1), rgba(84, 46, 145, 1));
    
    opacity: .9; 
    transition: opacity 0.3s ease; 
}

.browse-tile a {
    position: relative;
    z-index: 2;
    
    display: flex;
    align-items: flex-start;
    column-gap: 28px;
    text-decoration: none;
}

.browse-tile:has(a:hover)::before {
    opacity: 0.6;
}

.browse-tile a .icon {
    background-color: #FFFFFF;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: .625rem;
    height: 100%;
    border-radius: 50px;
    transition: box-shadow 0.3s ease;
}

.browse-tile a .icon svg {
    width: 24px;
    height: 24px;
}

.browse-tile a span {
    color: #FFFFFF;
    font-size: 1.25rem;
    line-height: 1.3;
}
/* browse tile end */

/* newsletter start */
.newsletter .newsletter-content {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    gap: 1rem;
}

.newsletter .newsletter-content p {
    flex: 1 1 300px;
    margin: 0;
}

.newsletter .newsletter-content .newsletter-form {
    display: flex;
    flex: 1 1 300px;
    width: 100%;
    column-gap: 10px;
    margin-bottom: 1.25rem;
}

.newsletter .newsletter-content .newsletter-form input[type='email'] {
    padding: .625rem .75rem;
    border: none;
    width: 100%;
    max-width: 550px;
    background-color: transparent;
    outline: none;
    color: #56872e;
    font-size: 1rem;
    border: 1px solid #FFFFFF;
    box-shadow: inset 0 0 10px rgba(0, 0, 0, .1);
    transition: border-color 0.3s ease;
}

.newsletter .newsletter-content .newsletter-form input[type='email']:focus {
    border-color: #7bc144;
}

.newsletter .newsletter-content .newsletter-form input[type='email']::placeholder {
  color: #56872e;
  font-style: italic;
}

.newsletter .newsletter-content .newsletter-form button {
    background-color: #56872e;
    color: #FFFFFF;
    border: none;
    padding: .625rem .938rem;
    font-size: 1rem;
    transition: background-color 0.3s ease;
    width: 100%;
    max-width: 95px;
    cursor: pointer;
}

.newsletter .newsletter-content .newsletter-form button:hover {
    background-color: #7ac143;
}
/* newsletter end */

/* quick links */
.quick-links .wrapper {
    background-color: #FFFFFF;
    margin-bottom: 1.25rem;
}

/* include - host */
.host-profile {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 1rem;
}

.host-profile .host-image,
.host-profile .host-details {
    flex-basis: 100%;
}

.host-name {
    margin-bottom: .25rem;
    color: #56872f;
}

.host-position {
    font-size: .75rem;
}

.host-bio {
    font-size: .875rem;
}

.host-social {
    display: flex;
    align-items: center;
    column-gap: 5px;
    font-size: .75rem;
}

/* media queries */
/* mobile devices */
@media (min-width: 480px) {
    /* browse tile */
    .browse-tile a span {
        font-size: 1.75rem;
    }
}

/* Small devices */
@media (min-width: 576px) {
    /* general styles */
    .container {
        max-width: 540px;
    }

    .page-heading {
        font-size: 1.5rem;
    }

    /* news page content */
    #newsPageContent .posts-list li {
        flex: 0 0 calc(50.61% - .835rem);
    }

    /* news featured */
    .featured-news-item .news-image,
    .featured-news-item .news-content {
        flex: 1 1 50%;
    }

    .featured-news-item .news-grid {
        flex-direction: row;
    }

    /* events page content */
    #eventsPageContent .events-list li {
        flex: 0 0 calc(50.61% - .835rem);
    }

    /* include - host */
    .host-profile .host-image,
    .host-profile .host-details {
        flex: 1 1 50%;
    }

    .host-profile {
        flex-direction: row;
    }
}

/* Medium devices */
@media (min-width: 768px) {
    /* general styles */
    .container {
        max-width: 720px;
    }

    p {
        line-height: 1.5;
    }

    /* global */
    /* wrapper */
    .wrapper {
        padding: 1.2rem;
    }

    /* headings */
    .heading-icon {
        column-gap: 8px;
    }

    .heading-block {
        padding: .625rem 1.15rem;
    }

    .paper .wrapper {
        padding: 0 1.2rem;
    }

    /* page content */
    .page-content .featured-image {
        float: right;
        max-width: 50%;
        margin-left: 1rem;
    }

    /* slider */
    .slider .slider-item {
        min-height: 330px;
    }

    .slider .slider-item .caption {
        flex-direction: row;
        padding: 1.15rem;
    }

    .slider .slider-item .caption .caption-description {
        margin-bottom: 0;
    }

    /* free content - who we are */
    #freeContent1 p {
        font-size: .938rem;
    }

    /* news page content */
    #newsPageContent .posts-list li {
        flex: 0 0 calc(33.333% - .835rem);
    }

    .news-filter .row {
        flex-direction: row;
    }

    /* events page content */
    #eventsPageContent .events-list li {
        flex: 0 0 calc(33.333% - .835rem);
    }

    .events-filter .row {
        flex-direction: row;
    }
}

/* Large devices */
@media (min-width: 992px) {
    /* general styles */
    .container {
        max-width: 960px;
    }

    .row {
        flex-direction: row;
        gap: 20px;
    }

    .row-gap-xs {
        gap: 7px;
    }
    
    .col-main {
        flex: 6 1 0;
    }

    .col-sidebar {
        flex: 3 1 0;
    }

    .col {
        flex: 1 1 0;
    }

    p {
        line-height: 1.65;
    }

    /* header top */
    .header-top {
        padding: .5rem 0;
        margin-bottom: 6.625rem;
    }

    .header-top nav {
        flex-direction: row;
    }

    .header-top nav ul {
        margin-bottom: 0;
        column-gap: 20px;
    }

    .header-top nav ul li:not(:last-child)::after {
        right: -10px;
    }

    .header-top nav ul li a {
        font-size: .813rem;
    }

    .header-top .social-icons {
        column-gap: 40px;
    }

    .header-top .social-icons a:not(:last-child)::after {
        right: -20px;
    }

    /* logo */
    .site-logo {
        position: absolute;
        top: 0%;
        left: 0;
        right: 0;
        margin: auto;
        max-width: 460px;
    }

    /* header main */
    /* desktop */
    .header-main .nav-desktop {
        display: flex;
        align-items: center;
        justify-content: space-between;
        flex-direction: row;
    }

    .header-main .nav-desktop ul {
        flex-direction: row;
    }

    .header-main .nav-desktop ul li a.nav-link {
        padding: .655rem 0;
    }

    .header-main .nav-desktop a.nav-btn {
        width: auto;
    }

    /* mobile */
    .header-main .nav-mobile {
        display: none;
    }

    /* global */
    /* wrapper */
    .wrapper {
        padding: 1.5rem 1.25rem;
    }

    /* headings */
    .heading-icon {
        column-gap: 12px;
    }

    .heading-block {
        padding: .625rem 1.25rem;
    }

    /* link block wide */
    .link-block-wide {
        font-size: .938rem;
    }

    .paper .wrapper {
        padding: 0 1.25rem;
    }

    /* slider */
    .slider .slider-item .caption {
        padding: 1.25rem;
    }

    /* free content - who we are */
    #freeContent1 p {
        font-size: 1rem;
    }
    
    /* event */
    .event {
        flex-direction: row;
    }

    .event .event-icon {
        margin-bottom: 0;
    }

    /* news & press releases */
    .posts .wrapper {
        padding: 1.5rem 1.25rem;
    }

    /* browse tile */
    .browse-tile a span {
        font-size: 1.75rem;
    }

    /* content area */
    .content-area {
        padding: 1.25rem 2.5rem 1.25rem .5rem;
    }

    /* subpage */
    .subpage .row {
        flex-direction: row-reverse;
    }
}

/* Extra large devices */
@media (min-width: 1200px) {
    .container {
        max-width: 1140px;
    }

    /* header top */
    .header-top nav ul {
        column-gap: 30px;
    }

    .header-top nav ul li a {
        font-size: 1rem;
    }

    .header-top nav ul li:not(:last-child)::after {
        right: -16px;
    }

    .header-top .social-icons {
        column-gap: 30px;
    }

    .header-top .social-icons a:not(:last-child)::after {
        right: -16px;
    }

    /* header main */
    .header-main .nav-desktop ul {
        padding-right: 2rem;
    }

    .header-main .nav-desktop ul li a.nav-link {
        font-size: 1.125rem;
    }

    .header-main .nav-desktop a.nav-btn {
        font-size: 1.125rem;
    }
}