/* =========================================================
   ATD CENTRAL IOWA - GLOBAL CSS
   CLEANED AND ORGANIZED
   ========================================================= */

/* =========================================
   WILD APRICOT SYSTEM FIXES
   LOGIN / AUTHORIZATION FORM
   ========================================= */

/* Hide Wild Apricot's empty password success message only when empty. */
.WaGadgetAuthorizationRequired #passwordSetSuccessMessage:empty {
    display: none !important;
}

/* Login form fields */
.WaGadgetAuthorizationRequired input[type="text"],
.WaGadgetAuthorizationRequired input[type="email"],
.WaGadgetAuthorizationRequired input[type="password"] {
    background-color: #ffffff !important;
    border: 1px solid #d6e2e8 !important;
    border-radius: 4px !important;
    color: #4a545f !important;
}

/* Active field */
.WaGadgetAuthorizationRequired input[type="text"]:focus,
.WaGadgetAuthorizationRequired input[type="email"]:focus,
.WaGadgetAuthorizationRequired input[type="password"]:focus {
    background-color: #ffffff !important;
    border-color: #005b8e !important;
    outline: none !important;
}

/* Chrome autofill: keep login fields white */
.WaGadgetAuthorizationRequired input:-webkit-autofill,
.WaGadgetAuthorizationRequired input:-webkit-autofill:hover,
.WaGadgetAuthorizationRequired input:-webkit-autofill:focus,
.WaGadgetAuthorizationRequired input:-webkit-autofill:active {
    -webkit-box-shadow: 0 0 0 1000px #ffffff inset !important;
    box-shadow: 0 0 0 1000px #ffffff inset !important;
    -webkit-text-fill-color: #4a545f !important;
}

/* =========================================
   WILD APRICOT SYSTEM BUTTONS
   ========================================= */

.navigationOuterContainer .navigationContainer input.nextButton,
.navigationOuterContainer .navigationContainer input.typeButton,
.navigationOuterContainer .navigationContainer input[type="submit"],
.loginButton,
.typeButton,
input[type="submit"] {
    background-color: #85bf42 !important;
    color: #ffffff !important;
    border-color: #85bf42 !important;
}


/* HOVER */

.navigationOuterContainer .navigationContainer input.nextButton:hover,
.navigationOuterContainer .navigationContainer input.typeButton:hover,
.navigationOuterContainer .navigationContainer input[type="submit"]:hover,
.loginButton:hover,
.typeButton:hover,
input[type="submit"]:hover {
    background-color: #6fa832 !important;
    color: #ffffff !important;
    border-color: #6fa832 !important;
}

/* =========================================================
   REUSABLE CONTENT COMPONENTS
   ========================================================= */
/* =========================================
   SECTION HEADING - STANDARD
   ========================================= */

.section-heading {
    padding: 0 !important;
    background: transparent !important;
}

.section-heading .gadgetStyleBody {
    display: block !important;
    margin: 0 !important;
    padding: 0 0 15px 0 !important;

    color: #005b8e !important;
    font-size: 30px !important;
    font-weight: 700 !important;
    line-height: 1.25 !important;

    background-image: linear-gradient(
        to right,
        #85bf42 0,
        #85bf42 70px,
        transparent 70px,
        transparent 100%
    ) !important;

    background-size: 100% 4px !important;
    background-position: left bottom !important;
    background-repeat: no-repeat !important;
}

/* Reset Wild Apricot headline paragraph spacing */
.section-heading .gadgetStyleBody > p {
    margin: 0 !important;
    padding: 0 !important;
    color: inherit !important;
    font-size: inherit !important;
    font-weight: inherit !important;
    line-height: inherit !important;
}

.section-heading .gadgetStyleBody font,
.section-heading .gadgetStyleBody strong,
.section-heading .gadgetStyleBody span {
    color: inherit !important;
    font-family: inherit !important;
    font-size: inherit !important;
    font-weight: inherit !important;
    line-height: inherit !important;
}

.section-heading .gadgetStyleBody br:last-child {
    display: none !important;
}


/* =========================================
   CONTENT - STANDARD
   ========================================= */

.content-standard {
    padding: 0 !important;

    background: rgba(0, 91, 142, 0.045) !important;
    border: 1px solid rgba(0, 91, 142, 0.13) !important;
    border-radius: 10px !important;
    box-sizing: border-box;
}

.content-standard .gadgetStyleBody {
    margin: 0 !important;
    padding: 28px 30px !important;
}

.content-standard p {
    margin: 0 0 16px 0 !important;
    color: #4a545f !important;
    font-size: 17px !important;
    line-height: 1.7 !important;
}

.content-standard p:last-child {
    margin-bottom: 0 !important;
}

.content-standard h2,
.content-standard h3,
.content-standard h4 {
    color: #005b8e !important;
    font-family: inherit !important;
    font-weight: 700 !important;
}

.content-standard h3 {
    margin: 24px 0 8px 0 !important;
    font-size: 21px !important;
    line-height: 1.35 !important;
}

.content-standard h3:first-child {
    margin-top: 0 !important;
}

.content-standard ul,
.content-standard ol {
    margin: 12px 0 16px 22px !important;
    padding-left: 16px !important;
}

.content-standard li {
    margin-bottom: 7px !important;
    color: #4a545f !important;
    font-size: 17px !important;
    line-height: 1.65 !important;
}

.content-standard a {
    color: #005b8e !important;
    font-weight: 600 !important;
}

.content-standard a:hover {
    color: #85bf42 !important;
}

.content-standard img {
    max-width: 100% !important;
    height: auto !important;
    border-radius: 9px !important;
}

.content-standard font,
.content-standard span,
.content-standard strong {
    font-family: inherit !important;
}


/* =========================================
   SECTION HEADING - ACCENT BAND
   ========================================= */

.section-heading-band {
    padding: 0 !important;

    background: #005b8e !important;
    border-radius: 10px 10px 0 0 !important;
    overflow: hidden;
}

.section-heading-band .gadgetStyleBody {
    display: block !important;
    margin: 0 !important;
    padding: 18px 26px !important;

    color: #ffffff !important;
    font-size: 27px !important;
    font-weight: 700 !important;
    line-height: 1.25 !important;

    border-left: 6px solid #85bf42 !important;
}

/* Reset Wild Apricot headline paragraph spacing */
.section-heading-band .gadgetStyleBody > p {
    margin: 0 !important;
    padding: 0 !important;
    color: inherit !important;
    font-size: inherit !important;
    font-weight: inherit !important;
    line-height: inherit !important;
}

.section-heading-band .gadgetStyleBody font,
.section-heading-band .gadgetStyleBody strong,
.section-heading-band .gadgetStyleBody span {
    color: inherit !important;
    font-family: inherit !important;
    font-size: inherit !important;
    font-weight: inherit !important;
    line-height: inherit !important;
}

.section-heading-band .gadgetStyleBody br:last-child {
    display: none !important;
}


/* =========================================
   CONTENT - ACCENT BAND
   ========================================= */

.content-band {
    padding: 0 !important;

    background: #ffffff !important;
    border: 1px solid rgba(0, 91, 142, 0.16) !important;
    border-top: none !important;
    border-radius: 0 0 10px 10px !important;
    box-sizing: border-box;
}

.content-band .gadgetStyleBody {
    margin: 0 !important;
    padding: 28px 30px !important;
}

.content-band p {
    margin: 0 0 16px 0 !important;
    color: #4a545f !important;
    font-size: 17px !important;
    line-height: 1.7 !important;
}

.content-band p:last-child {
    margin-bottom: 0 !important;
}

.content-band h2,
.content-band h3,
.content-band h4 {
    color: #005b8e !important;
    font-family: inherit !important;
    font-weight: 700 !important;
}

.content-band h3 {
    margin: 24px 0 8px 0 !important;
    font-size: 21px !important;
    line-height: 1.35 !important;
}

.content-band h3:first-child {
    margin-top: 0 !important;
}

.content-band ul,
.content-band ol {
    margin: 12px 0 16px 22px !important;
    padding-left: 16px !important;
}

.content-band li {
    margin-bottom: 7px !important;
    color: #4a545f !important;
    font-size: 17px !important;
    line-height: 1.65 !important;
}

.content-band a {
    color: #005b8e !important;
    font-weight: 600 !important;
}

.content-band a:hover {
    color: #85bf42 !important;
}

.content-band img {
    max-width: 100% !important;
    height: auto !important;
    border-radius: 9px !important;
}

.content-band font,
.content-band span,
.content-band strong {
    font-family: inherit !important;
}


/* =========================================
   SECTION HEADING - EDITORIAL
   ========================================= */

.section-heading-editorial {
    padding: 0 !important;
    background: transparent !important;
}

.section-heading-editorial .gadgetStyleBody {
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;

    color: #005b8e !important;
    font-size: 34px !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
}

/* Reset Wild Apricot headline paragraph spacing */
.section-heading-editorial .gadgetStyleBody > p {
    margin: 0 !important;
    padding: 0 !important;
    color: inherit !important;
    font-size: inherit !important;
    font-weight: inherit !important;
    line-height: inherit !important;
}

.section-heading-editorial .gadgetStyleBody font,
.section-heading-editorial .gadgetStyleBody strong,
.section-heading-editorial .gadgetStyleBody span {
    color: inherit !important;
    font-family: inherit !important;
    font-size: inherit !important;
    font-weight: inherit !important;
    line-height: inherit !important;
}

.section-heading-editorial .gadgetStyleBody br:last-child {
    display: none !important;
}


/* =========================================
   CONTENT - EDITORIAL
   ========================================= */

.content-editorial {
    padding: 0 !important;
    background: transparent !important;
}

.content-editorial .gadgetStyleBody {
    margin: 0 !important;
    padding: 0 28px 0 0 !important;
}

.content-editorial p {
    margin: 0 0 16px 0 !important;
    color: #4a545f !important;
    font-size: 17px !important;
    line-height: 1.7 !important;
}

.content-editorial p:last-child {
    margin-bottom: 0 !important;
}

.content-editorial h2,
.content-editorial h3,
.content-editorial h4 {
    color: #005b8e !important;
    font-family: inherit !important;
    font-weight: 700 !important;
}

.content-editorial h3 {
    margin: 24px 0 8px 0 !important;
    font-size: 21px !important;
    line-height: 1.35 !important;
}

.content-editorial h3:first-child {
    margin-top: 0 !important;
}

.content-editorial ul,
.content-editorial ol {
    margin: 14px 0 20px 22px !important;
    padding-left: 16px !important;
}

.content-editorial li {
    margin-bottom: 8px !important;
    color: #4a545f !important;
    font-size: 17px !important;
    line-height: 1.65 !important;
}

.content-editorial a {
    color: #005b8e !important;
    font-weight: 600 !important;
}

.content-editorial a:hover {
    color: #85bf42 !important;
}

.content-editorial font,
.content-editorial span,
.content-editorial strong {
    font-family: inherit !important;
}


/* =========================================
   CONTENT BAND - LAYOUT
   ========================================= */

.content-band-layout {
    border-radius: 0 0 10px 10px !important;
    overflow: hidden !important;
}

/* =========================================
   IMAGE - MODERN
   Rounded corners only
   ========================================= */

.image-modern img {
    display: block;
    max-width: 100%;
    height: auto;
    border-radius: 10px !important;
}


/* =========================================
   IMAGE - SHADOW
   Rounded corners + subtle shadow
   ========================================= */

.image-shadow img {
    display: block;
    max-width: 100%;
    height: auto;
    border-radius: 10px !important;
    box-shadow: 0 4px 14px rgba(0, 0, 0, 0.10) !important;
}


/* =========================================
   IMAGE - BORDER
   Rounded corners + subtle blue border
   ========================================= */

.image-border img {
    display: block;
    max-width: 100%;
    height: auto;
    border-radius: 10px !important;
    border: 1px solid rgba(0, 91, 142, 0.16) !important;
}


/* =========================================
   IMAGE - ACCENT
   Rounded corners + green offset accent
   ========================================= */

.image-accent img {
    display: block !important;
    max-width: calc(100% - 10px) !important;
    height: auto !important;
    border-radius: 12px !important;
    box-shadow: 10px 10px 0 0 rgba(133, 191, 66, 0.22) !important;
}

/* =========================================
   PAGE BANNERS
   ========================================= */

/* Standard page banner */
.page-banner {
    position: relative;
    overflow: hidden;
    background: linear-gradient(
        110deg,
        rgba(0, 91, 142, 0.10) 0%,
        rgba(0, 91, 142, 0.045) 65%,
        rgba(133, 191, 66, 0.05) 100%
    );
    border-radius: 10px;
    margin-bottom: 20px;
}

.page-banner .gadgetStyleBody {
    padding: 0 !important;
}

.page-banner-content {
    position: relative;
    z-index: 2;
    padding: 48px 50px;
}

.page-banner-content h1 {
    margin: 0 !important;
    color: #005b8e !important;
    font-size: 38px !important;
    font-weight: 700 !important;
    line-height: 1.15;
    letter-spacing: -0.02em;
}

.page-banner-accent {
    display: block;
    width: 58px;
    height: 4px;
    margin-top: 14px;
    background-color: #85bf42;
    border-radius: 10px;
}

/* Full-width page banner */
.page-banner-full {
    position: relative;
    overflow: hidden;
    background: linear-gradient(
        110deg,
        rgba(0, 91, 142, 0.12) 0%,
        rgba(0, 91, 142, 0.05) 60%,
        rgba(133, 191, 66, 0.07) 100%
    );
    margin: 0 0 40px 0 !important;
}

.page-banner-full .gadgetStyleBody {
    padding: 0 !important;
}

.page-banner-full .page-banner-content {
    position: relative;
    z-index: 2;
    max-width: 1170px;
    margin: 0 auto;
    padding: 55px 35px;
}

.page-banner-full .page-banner-content h1 {
    margin: 0 !important;
    color: #005b8e !important;
    font-size: 42px !important;
    font-weight: 700 !important;
    line-height: 1.15;
    letter-spacing: -0.02em;
}

.page-banner-full .page-banner-accent {
    display: block;
    width: 62px;
    height: 4px;
    margin-top: 15px;
    background-color: #85bf42;
    border-radius: 10px;
}

/* Decorative diagonal bands */
.page-banner-full::before,
.page-banner-full::after {
    content: "";
    position: absolute;
    pointer-events: none;
    transform: rotate(28deg);
    border-radius: 20px;
}

.page-banner-full::after {
    width: 320px;
    height: 500px;
    right: 6%;
    top: -180px;
    background: rgba(0, 91, 142, 0.045);
}

.page-banner-full::before {
    width: 90px;
    height: 360px;
    right: 18%;
    top: -100px;
    background: rgba(133, 191, 66, 0.07);
}

@media screen and (max-width: 700px) {
    .page-banner-full {
        margin-bottom: 28px !important;
    }

    .page-banner-full .page-banner-content {
        padding: 38px 24px;
    }

    .page-banner-full .page-banner-content h1 {
        font-size: 31px !important;
    }

    .page-banner-full .page-banner-accent {
        width: 48px;
        margin-top: 11px;
    }

    /* Preserve the current compact mobile band treatment. */
    .page-banner-full::after {
        width: 190px;
        height: 190px;
        right: -90px;
        top: -100px;
    }

    .page-banner-full::before {
        width: 100px;
        height: 100px;
        right: 15%;
        top: -100px;
    }
}

/* =========================================================
   GLOBAL HEADER
   ========================================================= */
/* =========================================
   HEADER SEARCH + LOGIN GREEN
   ========================================= */

/* Search gadget */
.WaGadgetSiteSearch .searchBoxFieldContainer {
    border-color: #85bf42 !important;
}

.WaGadgetSiteSearch .searchBoxButton {
    background-color: #85bf42 !important;
    border-color: #85bf42 !important;
}

/* Logged-out header login button */
.WaGadgetLoginForm.LoginFormStyle001 .loginLink {
    background: #85bf42 !important;
    background-color: #85bf42 !important;
    border-color: #85bf42 !important;
    color: #ffffff !important;
}

.WaGadgetLoginForm.LoginFormStyle001 .loginLink:hover,
.WaGadgetLoginForm.LoginFormStyle001 .loginLink.hover {
    background: #6fa832 !important;
    background-color: #6fa832 !important;
    border-color: #6fa832 !important;
    color: #ffffff !important;
}

/* =========================================================
   GLOBAL FOOTER
   ========================================================= */
/* =========================================
   ATD CENTRAL IOWA - SITE FOOTER
   ========================================= */

.atd-site-footer {
    width: 100%;
    background: #005b8e;
    color: #ffffff;
}


/* MAIN FOOTER CONTENT
   ========================================= */

.atd-site-footer-inner {
    max-width: 1180px;
    margin: 0 auto;
    padding: 48px 40px 44px;

    display: grid;
    grid-template-columns: 2fr 1fr 1fr;
    gap: 60px;

    box-sizing: border-box;
}


/* BRAND
   ========================================= */

.atd-site-footer-brand {
    max-width: 430px;
}

.atd-site-footer-logo {
    display: block;
    width: 220px;
    max-width: 100%;
    height: auto;
    margin: 0 0 22px 0;
}

.atd-site-footer-mission {
    margin: 0 !important;

    color: #ffffff !important;
    font-size: 17px !important;
    font-weight: 400 !important;
    line-height: 1.6 !important;
}


/* NAVIGATION COLUMNS
   ========================================= */

.atd-site-footer-nav h3 {
    position: relative;

    margin: 0 0 22px 0 !important;
    padding: 0 0 12px 0 !important;

    color: #ffffff !important;
    font-size: 18px !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;
}


/* Green accent under column headings */

.atd-site-footer-nav h3::after {
    content: "";

    position: absolute;
    left: 0;
    bottom: 0;

    width: 36px;
    height: 3px;

    background: #85bf42;
    border-radius: 2px;
}


/* Footer links */

.atd-site-footer-nav a {
    display: block;

    width: fit-content;
    margin: 0 0 12px 0;

    color: #ffffff !important;
    font-size: 16px !important;
    font-weight: 400 !important;
    line-height: 1.5 !important;

    text-decoration: none !important;

    transition: color 0.2s ease;
}

.atd-site-footer-nav a:hover,
.atd-site-footer-nav a:focus {
    color: #85bf42 !important;
    text-decoration: none !important;
}


/* =========================================
   HIDE WILD APRICOT BRANDING AREA
   ========================================= */

.zonePlace.zoneWAbranding,
.WABranding,
#idFooterPoweredByContainer {
    display: none !important;
    height: 0 !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* =========================================
   TABLET
   ========================================= */

@media screen and (max-width: 900px) {

    .atd-site-footer-inner {
        grid-template-columns: 1.5fr 1fr 1fr;
        gap: 36px;
        padding-left: 30px;
        padding-right: 30px;
    }

}


/* =========================================
   MOBILE
   ========================================= */

@media screen and (max-width: 700px) {

    .atd-site-footer-inner {
        grid-template-columns: 1fr;
        gap: 36px;

        padding: 42px 24px 36px;
    }

    .atd-site-footer-brand {
        max-width: none;
    }

    .atd-site-footer-logo {
        width: 200px;
    }

    .atd-site-footer-nav h3 {
        margin-bottom: 18px !important;
    }

}

/* =========================================================
   HOMEPAGE
   ========================================================= */
/* =========================================
   HOMEPAGE SLIDESHOW
   ========================================= */

/* Green navigation arrows */
.homepage-slideshow .camera_prev,
.homepage-slideshow .camera_next {
    background-color: #85bf42 !important;
}

/* Hide thumbnail strip */
.homepage-slideshow .camera_thumbs {
    display: none !important;
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Remove extra space below slideshow */
.homepage-slideshow {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}

.homepage-slideshow .gadgetStyleBody,
.homepage-slideshow .camera_target {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}

/* =========================================
   HOMEPAGE SLIDESHOW CAPTIONS
   ========================================= */

/* Caption container */
.homepage-slideshow .camera_caption {
    position: absolute !important;
    left: max(40px, calc((100% - 1180px) / 2 + 40px)) !important;
    right: auto !important;
    bottom: 40px !important;
    top: auto !important;

    width: 560px !important;
    max-width: calc(100% - 80px) !important;

    background: transparent !important;
    box-sizing: border-box !important;
}


/* Blue caption panel */
.homepage-slideshow .camera_caption > div {
    padding: 22px 30px !important;

    background: rgba(0, 91, 142, 0.92) !important;
    color: #ffffff !important;

    box-sizing: border-box !important;
}


/* Caption heading */
.homepage-slideshow .camera_caption h2 {
    display: block !important;

    margin: 0 0 10px 0 !important;
    padding: 0 !important;

    color: #ffffff !important;
    font-family: Lato, sans-serif !important;
    font-size: 32px !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
}


/* Caption description */
.homepage-slideshow .camera_caption p {
    display: block !important;

    margin: 0 0 18px 0 !important;
    padding: 0 !important;

    color: #ffffff !important;
    font-family: Lato, sans-serif !important;
    font-size: 17px !important;
    font-weight: 400 !important;
    line-height: 1.5 !important;
}


/* Caption button */
.homepage-slideshow .camera_caption .slideshow-button {
    display: inline-block !important;

    padding: 11px 20px !important;

    background: #85bf42 !important;
    color: #ffffff !important;
    border-radius: 4px !important;

    font-family: Lato, sans-serif !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;

    text-decoration: none !important;
}


/* Caption button hover */
.homepage-slideshow .camera_caption .slideshow-button:hover,
.homepage-slideshow .camera_caption .slideshow-button:focus {
    background: #6fa832 !important;
    color: #ffffff !important;
    text-decoration: none !important;
}


/* =========================================
   MEDIUM SCREENS
   ========================================= */

@media screen and (max-width: 1250px) {

    .homepage-slideshow .camera_caption {
        left: 40px !important;
    }

}


/* =========================================
   MOBILE
   ========================================= */

@media screen and (max-width: 700px) {

    .homepage-slideshow .camera_caption {
        left: 24px !important;
        right: 24px !important;
        bottom: 24px !important;
        top: auto !important;

        width: auto !important;
        max-width: none !important;
    }

    .homepage-slideshow .camera_caption > div {
        padding: 20px 22px !important;
    }

    .homepage-slideshow .camera_caption h2 {
        font-size: 26px !important;
    }

    .homepage-slideshow .camera_caption p {
        font-size: 16px !important;
        margin-bottom: 15px !important;
    }

    .homepage-slideshow .camera_caption .slideshow-button {
        padding: 10px 18px !important;
        font-size: 15px !important;
    }

}

/* =========================================
   UPCOMING EVENTS - SECTION TITLE
   ========================================= */

.upcoming-events.WaGadgetHeadline {
    margin-bottom: 22px !important;
}

.upcoming-events.WaGadgetHeadline .gadgetStyleBody {
    display: block !important;
    padding: 0 0 15px 0 !important;

    color: #005b8e !important;
    font-size: 30px !important;
    font-weight: 700 !important;
    line-height: 1.25 !important;

    /* Short green underline */
    background-image: linear-gradient(
        to right,
        #85bf42 0,
        #85bf42 70px,
        transparent 70px,
        transparent 100%
    ) !important;

    background-size: 100% 4px !important;
    background-position: left bottom !important;
    background-repeat: no-repeat !important;
}

.upcoming-events.WaGadgetHeadline .gadgetStyleBody font,
.upcoming-events.WaGadgetHeadline .gadgetStyleBody strong {
    color: inherit !important;
    font-size: inherit !important;
    font-weight: inherit !important;
}

/* =========================================
   MAIN EVENTS GADGET
   ========================================= */

.upcoming-events.WaGadgetUpcomingEvents {
    background: transparent !important;
}


/* Remove default list formatting */
.upcoming-events.WaGadgetUpcomingEvents ul {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
}


/* =========================================
   EVENT CARD
   ========================================= */

.upcoming-events.WaGadgetUpcomingEvents li {
    position: relative;

    display: grid !important;
    grid-template-columns: 82px 1fr;
    column-gap: 24px;

    margin: 0 0 14px 0 !important;
    padding: 24px !important;

    background: rgba(0, 91, 142, 0.045) !important;

    border: 1px solid rgba(0, 91, 142, 0.13) !important;
    border-radius: 9px !important;

    box-sizing: border-box;

    transition:
        background-color 0.2s ease,
        border-color 0.2s ease,
        transform 0.2s ease;
}


/* Hover */
.upcoming-events.WaGadgetUpcomingEvents li:hover {
    background: rgba(0, 91, 142, 0.075) !important;
    border-color: rgba(0, 91, 142, 0.22) !important;
    transform: translateY(-1px);
}


/* Remove bottom margin from final event */
.upcoming-events.WaGadgetUpcomingEvents li.last {
    margin-bottom: 0 !important;
}


/* =========================================
   DATE BADGE
   ========================================= */

.upcoming-events .event-date-badge {
    grid-column: 1;
    grid-row: 1 / span 5;

    align-self: stretch;

    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;

    min-height: 82px;

    padding-right: 20px;

    border-right: 3px solid #85bf42;
}


/* Month */
.upcoming-events .event-date-month {
    display: block;

    margin-bottom: 4px;

    color: #4a545f;

    font-size: 13px;
    font-weight: 700;
    line-height: 1;

    letter-spacing: 0.08em;
    text-transform: uppercase;
}


/* Day */
.upcoming-events .event-date-day {
    display: block;

    color: #85bf42;

    font-size: 29px;
    font-weight: 700;
    line-height: 1;
}


/* =========================================
   EVENT INFORMATION
   ========================================= */

.upcoming-events.WaGadgetUpcomingEvents .title,
.upcoming-events.WaGadgetUpcomingEvents .date,
.upcoming-events.WaGadgetUpcomingEvents .location,
.upcoming-events.WaGadgetUpcomingEvents .event-view-link {
    grid-column: 2;
}


/* Event title */
.upcoming-events.WaGadgetUpcomingEvents .title {
    margin: 0 0 7px 0 !important;
}

.upcoming-events.WaGadgetUpcomingEvents .title a {
    color: #005b8e !important;

    font-size: 20px !important;
    font-weight: 700 !important;
    line-height: 1.3;

    text-decoration: none !important;
}

.upcoming-events.WaGadgetUpcomingEvents .title a:hover {
    color: #85bf42 !important;
}


/* Date/time */
.upcoming-events.WaGadgetUpcomingEvents .date {
    margin: 0 0 5px 0 !important;

    color: #4a545f !important;

    font-size: 17px !important;
    font-weight: 500;
    line-height: 1.5;
}


/* Location */
.upcoming-events.WaGadgetUpcomingEvents .location {
    margin: 0 !important;

    color: #4a545f !important;

    font-size: 16px !important;
    line-height: 1.5;
}


/* Hide truly empty location */
.upcoming-events.WaGadgetUpcomingEvents .location:empty {
    display: none !important;
}


/* =========================================
   VIEW EVENT LINK
   ========================================= */

.upcoming-events .event-view-link {
    margin-top: 13px;
}

.upcoming-events .event-view-link a {
    color: #85bf42 !important;

    font-size: 14px;
    font-weight: 700;

    text-decoration: none !important;
}

.upcoming-events .event-view-link a:hover {
    color: #6fa832 !important;
    text-decoration: underline !important;
}


/* =========================================
   MOBILE
   ========================================= */

@media screen and (max-width: 600px) {

    /* Heading */
    .upcoming-events.WaGadgetHeadline {
        margin-bottom: 14px !important;
    }

    .upcoming-events.WaGadgetHeadline .gadgetStyleBody font {
        font-size: 26px !important;
    }


    /* Event card */
    .upcoming-events.WaGadgetUpcomingEvents li {
        grid-template-columns: 60px 1fr;
        column-gap: 16px;

        padding: 19px 17px !important;
        margin-bottom: 12px !important;
    }


    /* Date badge */
    .upcoming-events .event-date-badge {
        min-height: 65px;
        padding-right: 14px;
    }

    .upcoming-events .event-date-month {
        font-size: 11px;
    }

    .upcoming-events .event-date-day {
        font-size: 24px;
    }


    /* Event details */
    .upcoming-events.WaGadgetUpcomingEvents .title a {
        font-size: 18px !important;
    }

    .upcoming-events.WaGadgetUpcomingEvents .date {
        font-size: 14px !important;
    }

    .upcoming-events.WaGadgetUpcomingEvents .location {
        font-size: 13px !important;
    }

}

@media screen and (max-width: 700px) {
    .upcoming-events.WaGadgetUpcomingEvents .date {
        font-size: 16px !important;
    }

    .upcoming-events.WaGadgetUpcomingEvents .location {
        font-size: 15px !important;
    }
}

/* =========================================================
   GET INVOLVED
   ========================================================= */
/* =========================================
   ATD CENTRAL IOWA - GET INVOLVED ACCORDION
   ========================================= */

.atd-involvement {
    max-width: 1000px;
    margin: 0 auto;
}


/* Intro */
.atd-involvement-intro {
    text-align: center;
    margin-bottom: 35px;
}

.atd-involvement-intro h2 {
    color: #005b8e !important;
    font-size: 36px !important;
    margin: 0 0 12px 0 !important;
}

.atd-involvement-intro p {
    max-width: 750px;
    margin: 0 auto !important;
    font-size: 17px;
    line-height: 1.6;
}


/* =========================================
   MAIN ACCORDION
   ========================================= */

.atd-accordion {
    border: 1px solid #d9dde0;
    border-radius: 6px;
    margin-bottom: 12px;
    overflow: hidden;
    background: #ffffff;
}


/* Main accordion heading */
.atd-accordion-button {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;

    padding: 18px 22px;

    border: none;
    background: #ffffff;

    color: #005b8e !important;

    font-size: 19px;
    font-weight: bold;

    text-align: left;
    cursor: pointer;

    transition: background-color 0.2s ease;
}


/* Hover */
.atd-accordion-button:hover {
    background-color: #f3f6f7;
}


/* Open accordion */
.atd-accordion.open .atd-accordion-button {
    background-color: #005b8e;
    color: #ffffff !important;
}


/* Plus / minus */
.atd-accordion-icon {
    color: #85bf42;
    font-size: 26px;
    font-weight: normal;
    line-height: 1;
    margin-left: 20px;
}

.atd-accordion.open .atd-accordion-icon {
    color: #ffffff;
}


/* Hidden accordion content */
.atd-accordion-content {
    max-height: 0;
    overflow: hidden;

    padding: 0 30px;

    background: #ffffff;
    color: #4a545f;

    opacity: 0;

    transition:
        max-height 0.35s ease,
        opacity 0.25s ease,
        padding 0.35s ease;
}


/* Open accordion content */
.atd-accordion.open .atd-accordion-content {
    padding: 25px 30px 30px 30px;
    opacity: 1;
}


/* Paragraphs */
.atd-accordion-content p {
    line-height: 1.6;
    margin-top: 0;
    margin-bottom: 15px;
}


/* Lists */
.atd-accordion-content ul {
    margin: 10px 0 20px 20px;
    padding-left: 15px;
}

.atd-accordion-content li {
    margin-bottom: 10px;
    line-height: 1.5;
}


/* Links */
.atd-accordion-content a:not(.atd-action-button) {
    color: #005b8e !important;
    font-weight: 600;
}


/* Planning note */
.atd-note {
    margin-top: 20px;
    padding: 15px 18px;

    background: #f3f6f7;

    border-left: 4px solid #85bf42;

    line-height: 1.6;
}


/* Green CTA buttons */
.atd-action-button {
    display: inline-block;

    margin-top: 8px;
    padding: 11px 22px;

    background-color: #85bf42 !important;
    color: #ffffff !important;

    border-radius: 5px;

    text-decoration: none !important;
    font-weight: bold;

    transition: background-color 0.2s ease;
}

.atd-action-button:hover {
    background-color: #6fa832 !important;
    color: #ffffff !important;
}


/* =========================================
   JOIN A COMMITTEE
   ========================================= */

/* Extra spacing between intro button and benefit */
.committee-intro {
    margin-bottom: 40px;
}


/* Volunteer benefit callout */
.committee-benefit {
    margin: 25px 0 30px;
    padding: 18px 20px;

    background-color: #f3f6f7;

    border-left: 5px solid #85bf42;
    border-radius: 4px;

    color: #4a545f;
}

.committee-benefit > strong {
    display: block;

    color: #005b8e;

    font-size: 18px;

    margin-bottom: 6px;
}

.committee-benefit p {
    margin-bottom: 6px !important;
}

.committee-benefit-note {
    font-size: 14px;
}


/* Committee list */
.get-involved-accordion .committee-list {
    border-top: none !important;
}


/* Individual committee card */
.get-involved-accordion .committee-item {
    background-color: rgba(0, 91, 142, 0.06);

    border: 1px solid rgba(0, 91, 142, 0.15) !important;
    border-radius: 8px;

    margin-bottom: 12px;

    overflow: hidden;
}


/* Committee clickable heading */
.get-involved-accordion .committee-toggle {
    width: 100%;

    padding: 20px 24px !important;

    background-color: transparent !important;
    border: none !important;

    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;

    text-align: left;
    cursor: pointer;

    transition: background-color 0.2s ease;
}


/* Committee name */
.get-involved-accordion .committee-summary strong {
    display: block;

    color: #005b8e !important;

    font-size: 20px !important;
    line-height: 1.3;
    font-weight: 700;
}


/* Committee plus / minus */
.get-involved-accordion .committee-icon {
    flex-shrink: 0;

    color: #85bf42 !important;

    font-size: 28px !important;
    font-weight: 400;
    line-height: 1;
}


/* Committee hover */
.get-involved-accordion .committee-toggle:hover {
    background-color: rgba(0, 91, 142, 0.09) !important;
}


/* Open committee card */
.get-involved-accordion .committee-item.open {
    background-color: #ffffff;

    border-color: rgba(0, 91, 142, 0.25) !important;
}


/* Committee details - hidden by default */
.get-involved-accordion .committee-details {
    display: none !important;

    padding: 0 24px 24px 24px !important;
    margin: 0 !important;
}


/* Committee details - visible */
.get-involved-accordion .committee-item.open .committee-details {
    display: block !important;
}


/* Short description inside opened committee */
.get-involved-accordion .committee-tagline {
    color: #005b8e !important;

    font-size: 17px !important;
    font-weight: 600;
    line-height: 1.5;

    margin-bottom: 18px !important;
}


/* Great Fit callout */
.get-involved-accordion .committee-fit {
    padding: 12px 15px;

    background-color: #f3f6f7;

    border-radius: 4px;
}

.get-involved-accordion .committee-fit strong {
    color: #005b8e;
}
/* =========================================
   SOCIAL MEDIA BUTTONS
   ========================================= */

.atd-social-buttons {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 20px;
}

.atd-social-buttons .atd-action-button {
    margin-top: 0;
}

@media screen and (max-width: 500px) {

    .atd-social-buttons {
        flex-direction: column;
    }

    .atd-social-buttons .atd-action-button {
        text-align: center;
    }

}

/* =========================================
   MOBILE
   ========================================= */

@media screen and (max-width: 700px) {

    .atd-involvement {
        width: 100%;
    }

    .atd-involvement-intro {
        margin-bottom: 25px;
    }

    .atd-involvement-intro h2 {
        font-size: 30px !important;
    }

    .atd-involvement-intro p {
        font-size: 16px;
    }

    .atd-accordion-button {
        padding: 16px 18px;
        font-size: 17px;
    }
/* Closed mobile accordion */
    .atd-accordion-content {
        padding: 0 20px;
    }

    /* Open mobile accordion */
    .atd-accordion.open .atd-accordion-content {
        padding: 20px 20px 25px 20px;
    }

    .get-involved-accordion .committee-toggle {
        padding: 18px 18px !important;
        gap: 12px;
    }

    .get-involved-accordion .committee-summary strong {
        font-size: 18px !important;
    }

    .get-involved-accordion .committee-details {
        padding: 0 18px 20px 18px !important;
    }

    .committee-benefit {
        padding: 15px 16px;
    }

}

/* =========================================================
   BOARD OF DIRECTORS
   ========================================================= */
/* =========================================
   ATD CENTRAL IOWA - BOARD PROFILE CARD
   ========================================= */

/*
CONTENT GADGET STRUCTURE:

Photo       = Normal
Name        = Heading 3
Board Role  = Normal

GADGET CLASS:

person-profile
*/


/* =========================================
   CARD
   ========================================= */

.person-profile {
    height: 100%;
    margin: 0 !important;

    background: rgba(0, 91, 142, 0.035) !important;
    border: 1px solid rgba(0, 91, 142, 0.13) !important;
    border-radius: 10px !important;

    box-sizing: border-box;
    overflow: hidden;
}

.person-profile .gadgetStyleBody {
    height: 100%;
    padding: 30px 24px 28px !important;

    text-align: center;

    box-sizing: border-box;
}


/* =========================================
   PHOTO
   ========================================= */

.person-profile .gadgetStyleBody > p:first-child {
    margin: 0 0 20px 0 !important;
    padding: 0 !important;
}

.person-profile .gadgetStyleBody > p:first-child img {
    display: block !important;

    width: 140px !important;
    height: 140px !important;
    max-width: 140px !important;

    margin: 0 auto !important;

    object-fit: cover !important;
    object-position: center !important;

    border-radius: 50% !important;

    border: 4px solid #ffffff !important;
    outline: 2px solid rgba(133, 191, 66, 0.85) !important;

    box-sizing: border-box;
}


/* =========================================
   MEMBER NAME
   Heading 3
   ========================================= */

.person-profile .gadgetStyleBody > h3 {
    position: relative;

    margin: 0 0 13px 0 !important;
    padding: 0 0 13px 0 !important;

    color: #005b8e !important;

    font-size: 22px !important;
    font-weight: 700 !important;
    line-height: 1.25 !important;
}


/* Short green accent */

.person-profile .gadgetStyleBody > h3::after {
    content: "";

    position: absolute;
    left: 50%;
    bottom: 0;

    width: 40px;
    height: 3px;

    background: #85bf42;
    border-radius: 2px;

    transform: translateX(-50%);
}


/* =========================================
   BOARD ROLE
   Normal paragraph after name
   ========================================= */

.person-profile .gadgetStyleBody > p:not(:first-child) {
    margin: 0 !important;
    padding: 0 !important;

    color: #4a545f !important;

    font-size: 16px !important;
    font-weight: 600 !important;
    line-height: 1.45 !important;
}


/* Neutralize old Wild Apricot formatting */

.person-profile font,
.person-profile span,
.person-profile strong {
    color: inherit !important;
    font-family: inherit !important;
    font-size: inherit !important;
}


/* =========================================
   MOBILE
   ========================================= */

@media screen and (max-width: 700px) {

    .person-profile .gadgetStyleBody {
        padding: 26px 20px 24px !important;
    }

    .person-profile .gadgetStyleBody > p:first-child img {
        width: 125px !important;
        height: 125px !important;
    }

    .person-profile .gadgetStyleBody > h3 {
        font-size: 21px !important;
    }

}

/* =========================================================
   EVENTS
   ========================================================= */
/* =========================================
   ATD CENTRAL IOWA - EVENT CALENDAR
   Apply class "atd-calendar" to calendar gadget
   ========================================= */


/* =========================================
   MONTH HEADING
   Matches our standard section heading
   ========================================= */

.atd-calendar #idEventListCalendar .sectionTitle {
    display: block !important;
    margin: 0 0 18px 0 !important;
    padding: 0 0 15px 0 !important;

    color: #005b8e !important;
    font-family: Lato, sans-serif !important;
    font-size: 30px !important;
    font-weight: 700 !important;
    line-height: 1.25 !important;

    background-image: linear-gradient(
        to right,
        #85bf42 0,
        #85bf42 70px,
        transparent 70px,
        transparent 100%
    ) !important;

    background-size: 100% 4px !important;
    background-position: left bottom !important;
    background-repeat: no-repeat !important;
}


/* =========================================
   VIEW SWITCHER
   Week / Month / Year
   ========================================= */

.atd-calendar #idViewSwitchersTable {
    margin-bottom: 20px !important;
}

.atd-calendar #idViewSwitchersTable a,
.atd-calendar #idViewSwitchersTable span {
    font-family: Lato, sans-serif !important;
    font-size: 15px !important;
    font-weight: 600 !important;
}

/* Links */
.atd-calendar .weekButtonLink,
.atd-calendar .yearButtonLink,
.atd-calendar .DecDateButton,
.atd-calendar .todayButton a,
.atd-calendar .incDateButton {
    color: #005b8e !important;
    text-decoration: none !important;
}

.atd-calendar .weekButtonLink:hover,
.atd-calendar .yearButtonLink:hover,
.atd-calendar .DecDateButton:hover,
.atd-calendar .todayButton a:hover,
.atd-calendar .incDateButton:hover {
    color: #85bf42 !important;
    text-decoration: none !important;
}

/* Current view */
.atd-calendar .monthButtonLabel {
    color: #005b8e !important;
    font-weight: 700 !important;
}


/* =========================================
   SWITCH TO LIST VIEW
   ========================================= */

.atd-calendar .pageViewSwitcherContainer a {
    color: #005b8e !important;
    font-weight: 600 !important;
    text-decoration: none !important;
}

.atd-calendar .pageViewSwitcherContainer a:hover {
    color: #85bf42 !important;
}


/* =========================================
   CALENDAR OUTER TABLE
   ========================================= */

.atd-calendar .EventListCalendar {
    width: 100% !important;

    background: #ffffff !important;
    border: 1px solid #d6e2e8 !important;
    border-radius: 10px !important;

    overflow: hidden !important;
}


/* =========================================
   DAYS OF WEEK
   ========================================= */

.atd-calendar .EventListCalendarHeader {
    padding: 12px 8px !important;

    background: #005b8e !important;
    border-color: #005b8e !important;

    color: #ffffff !important;
    font-family: Lato, sans-serif !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    text-align: center !important;
}


/* =========================================
   CALENDAR CELLS
   ========================================= */

.atd-calendar .EventListCalendarItemDefault {
    background-color: #ffffff !important;
    border-color: #d6e2e8 !important;
}

.atd-calendar .EventListCalendarItemInactive {
    background-color: #f7f8f8 !important;
    border-color: #e5eaed !important;
}


/* =========================================
   DATE NUMBERS
   ========================================= */

.atd-calendar a.calendarDate {
    color: #4a545f !important;
    font-family: Lato, sans-serif !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    text-decoration: none !important;
}

.atd-calendar .EventListCalendarItemInactive a.calendarDate {
    color: #a1abb1 !important;
}


/* =========================================
   SELECTED / CURRENT DATE
   ========================================= */

.atd-calendar .EventListCalendarItemSelected {
    background-color: rgba(0, 91, 142, 0.08) !important;
    border-color: rgba(0, 91, 142, 0.22) !important;
}

.atd-calendar .EventListCalendarItemSelected a.calendarDate {
    color: #005b8e !important;
    font-weight: 700 !important;
}


/* =========================================
   EVENTS
   Faded ATD blue
   ========================================= */

.atd-calendar .eventDivItem {
    height: 78px !important;
    min-height: 0 !important;

    margin: 3px 4px !important;
    padding: 7px 8px !important;

    background: rgba(0, 91, 142, 0.10) !important;
    border-left: 4px solid #005b8e !important;
    border-radius: 4px !important;

    overflow: hidden !important;
    box-sizing: border-box !important;

    color: #005b8e !important;
    font-family: Lato, sans-serif !important;
    line-height: 1.35 !important;
}


/* Event time */
.atd-calendar .eventDivItem .eventTime {
    margin-bottom: 3px !important;

    color: #4a545f !important;
    font-size: 12px !important;
    font-weight: 600 !important;
}


/* Event title */
.atd-calendar .eventDivItem a {
    color: #005b8e !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    line-height: 1.35 !important;
    text-decoration: none !important;
}

.atd-calendar .eventDivItem a:hover {
    color: #85bf42 !important;
    text-decoration: none !important;
}

/* =========================================
   CALENDAR CONTROL SPACING
   ========================================= */

.atd-calendar .pageTitleOuterContainer {
    margin-bottom: 12px !important;
}

.atd-calendar #idViewSwitchersTable {
    margin-top: 0 !important;
    margin-bottom: 14px !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

.atd-calendar .switchersGroup1,
.atd-calendar .switchersGroup2 {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}
/* =========================================
   GREEN EVENT BACKGROUNDS
   Keep text white
   ========================================= */

/*
   This catches event elements where Wild Apricot
   or existing event styling supplies a green background.
*/

.atd-calendar .eventDivItem[style*="background"] a,
.atd-calendar .eventDivItem[style*="background"] .eventTime {
    color: inherit;
}


/* Utility class if we need to explicitly identify
   Wild Apricot's green event type after testing */

.atd-calendar .event-green,
.atd-calendar .event-green a,
.atd-calendar .event-green .eventTime {
    color: #ffffff !important;
}


/* =========================================
   MOBILE
   ========================================= */

@media screen and (max-width: 700px) {

    .atd-calendar #idEventListCalendar .sectionTitle {
        font-size: 26px !important;
    }

    .atd-calendar .EventListCalendarHeader {
        padding: 9px 3px !important;
        font-size: 12px !important;
    }

    .atd-calendar .eventDivItem {
        margin: 2px !important;
        padding: 5px !important;
    }

    .atd-calendar .eventDivItem a {
        font-size: 12px !important;
    }

}

/* =========================================
   ATD CENTRAL IOWA - EVENT DETAIL PAGE
   ========================================= */


/* =========================================
   PAGE TITLE + TOP CONTROLS
   ========================================= */

.WaGadgetEventsStateDetails .eventsTitleContainer .pageTitle {
    color: #005b8e !important;
    font-family: Lato, sans-serif !important;
    font-size: 38px !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
    margin: 0 0 28px 0 !important;
}

/* Back link */
.WaGadgetEventsStateDetails .eventBackLink {
    color: #005b8e !important;
    font-weight: 600 !important;
    text-decoration: none !important;
}

.WaGadgetEventsStateDetails .eventBackLink:hover {
    color: #85bf42 !important;
    text-decoration: none !important;
}

/* Add to calendar */
.WaGadgetEventsStateDetails .pageViewSwitcherContainer {
    color: #005b8e !important;
}

.WaGadgetEventsStateDetails .-wa-add-event-to-calendar-dropdown {
    color: #005b8e !important;
    font-family: Lato, sans-serif !important;
    font-weight: 600 !important;
}

.WaGadgetEventsStateDetails .-wa-add-event-to-calendar-dropdown:hover {
    color: #85bf42 !important;
}
/* Tighten spacing between event title and event content */
.WaGadgetEventsStateDetails #idEventsTitleMainContainer {
    margin-bottom: 18px !important;
    padding-bottom: 0 !important;
}

.WaGadgetEventsStateDetails .eventsTitleContainer .pageTitle {
    margin-bottom: 0 !important;
}

/* =========================================
   REMOVE OLD WILD APRICOT BOX STYLING
   ========================================= */

.WaGadgetEventsStateDetails .boxOuterContainer,
.WaGadgetEventsStateDetails .boxContainer,
.WaGadgetEventsStateDetails .boxBodyOuterContainer,
.WaGadgetEventsStateDetails .boxBodyContainer,
.WaGadgetEventsStateDetails .boxBodyInfoOuterContainer,
.WaGadgetEventsStateDetails .boxBodyInfoContainer,
.WaGadgetEventsStateDetails .boxBodyInfoContainer .d1,
.WaGadgetEventsStateDetails .boxBodyInfoContainer .d2,
.WaGadgetEventsStateDetails .boxBodyInfoContainer .d3,
.WaGadgetEventsStateDetails .boxBodyInfoContainer .d4,
.WaGadgetEventsStateDetails .boxBodyInfoContainer .d5,
.WaGadgetEventsStateDetails .boxBodyInfoContainer .d6,
.WaGadgetEventsStateDetails .boxBodyInfoContainer .d7,
.WaGadgetEventsStateDetails .boxBodyInfoContainer .d8,
.WaGadgetEventsStateDetails .boxBodyInfoContainer .d9,
.WaGadgetEventsStateDetails .boxBodyInfoContainer .inner {
    background: transparent !important;
    background-image: none !important;
}

/* Keep registration status visually connected to registration options */
.WaGadgetEventsStateDetails .boxActionContainer {
    margin: 18px 0 0 0 !important;
    padding: 0 !important;
}

.WaGadgetEventsStateDetails .boxActionContainer .inner {
    margin: 0 !important;
    padding: 0 !important;
}

.WaGadgetEventsStateDetails .infoRegistrationIsClosed {
    margin: 0 !important;
    padding: 0 !important;
    text-align: left !important;
}
/* =========================================
   EVENT INFO PANEL
   ========================================= */

.WaGadgetEventsStateDetails .boxInfoContainer {
    background: rgba(0, 91, 142, 0.06) !important;
    border: 1px solid rgba(0, 91, 142, 0.16) !important;
    border-left: 5px solid #85bf42 !important;
    border-radius: 10px !important;
    padding: 26px 28px !important;
    margin: 0 0 28px 0 !important;
    box-sizing: border-box !important;
}

.WaGadgetEventsStateDetails .boxInfo {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Each event information row */
.WaGadgetEventsStateDetails .boxInfo li {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* WHEN / LOCATION labels */
.WaGadgetEventsStateDetails .eventInfoBoxLabel {
    display: block !important;
    float: none !important;
    width: 100% !important;

    margin: 0 0 8px 0 !important;
    padding: 0 !important;

    color: #005b8e !important;
    font-family: Lato, sans-serif !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;

    text-align: left !important;
    text-transform: uppercase !important;
    letter-spacing: 0.05em !important;
}

/* Date / time / location values */
.WaGadgetEventsStateDetails .eventInfoBoxValue {
    display: block !important;
    float: none !important;
    width: 100% !important;

    margin: 0 !important;
    padding: 0 !important;

    color: #4a545f !important;
    font-family: Lato, sans-serif !important;
    font-size: 18px !important;
    font-weight: 500 !important;
    line-height: 1.55 !important;
    text-align: left !important;
}

/* Date */
.WaGadgetEventsStateDetails .eventInfoStartDate {
    margin-bottom: 2px !important;
}

/* Make the date itself bold */
.WaGadgetEventsStateDetails .eventInfoStartDate .eventInfoBoxValue,
.WaGadgetEventsStateDetails .eventInfoStartDate .eventInfoBoxValue strong {
    font-weight: 700 !important;
}

/* Time */
.WaGadgetEventsStateDetails .eventInfoStartTime {
    margin: 0 !important;
}

/* Wild Apricot inserts an empty label beside the time */
.WaGadgetEventsStateDetails
.eventInfoStartTime
.eventInfoBoxLabel {
    display: none !important;
}

/* Create clear separation between WHEN and LOCATION */
.WaGadgetEventsStateDetails
.eventInfoLocation
.eventInfoBoxLabel {
    margin-top: 24px !important;
    margin-bottom: 8px !important;
}
/* Make location value slightly stronger */
.WaGadgetEventsStateDetails
.eventInfoLocation
.eventInfoBoxValue {
    font-weight: 500 !important;
}
/* =========================================
   REGISTRATION SECTION
   ========================================= */

.WaGadgetEventsStateDetails .registrationInfoContainer {
    margin-top: 24px !important;
}

.WaGadgetEventsStateDetails
.registrationInfoContainer
.infoTitle {
    color: #005b8e !important;
    font-family: Lato, sans-serif !important;
    font-size: 20px !important;
    font-weight: 700 !important;
    line-height: 1.35 !important;
    margin: 0 0 14px 0 !important;
}

.WaGadgetEventsStateDetails .registrationInfo {
    margin-top: 0 !important;
    color: #4a545f !important;
    font-family: Lato, sans-serif !important;
    font-size: 16px !important;
    line-height: 1.5 !important;
}

.WaGadgetEventsStateDetails .registrationInfo li {
    color: #4a545f !important;
    font-family: Lato, sans-serif !important;
    font-size: 16px !important;
    line-height: 1.5 !important;
}

/* Registration option names */
.WaGadgetEventsStateDetails .regTypeLiLabel,
.WaGadgetEventsStateDetails .regTypeLiLabel strong {
    color: #4a545f !important;
    font-family: Lato, sans-serif !important;
}

/* Registration code required note */
.WaGadgetEventsStateDetails .regTypeLiLabelImg {
    color: #6f787d !important;
    font-size: 13px !important;
}


/* =========================================
   REGISTER BUTTON
   ========================================= */

.WaGadgetEventsStateDetails .registerButton {
    background: #85bf42 !important;
    color: #ffffff !important;

    border: 1px solid #85bf42 !important;
    border-radius: 5px !important;

    padding: 12px 24px !important;

    font-family: Lato, sans-serif !important;
    font-size: 16px !important;
    font-weight: 700 !important;

    cursor: pointer !important;
    transition: background-color 0.2s ease !important;
}

.WaGadgetEventsStateDetails .registerButton:hover,
.WaGadgetEventsStateDetails .registerButton:focus {
    background: #6fa832 !important;
    border-color: #6fa832 !important;
    color: #ffffff !important;
}


/* =========================================
   REGISTRATION STATUS
   ========================================= */

.WaGadgetEventsStateDetails .infoRegistrationIsClosed {
    color: #4a545f !important;
    font-family: Lato, sans-serif !important;
    font-size: 16px !important;
    font-weight: 600 !important;
}


/* =========================================
   DIVIDER BETWEEN REGISTRATION + CONTENT
   ========================================= */

.WaGadgetEventsStateDetails .regTypeHr hr {
    border: none !important;
    border-top: 1px solid rgba(0, 91, 142, 0.15) !important;
    margin: 28px 0 !important;
}


/* =========================================
   EVENT DESCRIPTION
   ========================================= */

.WaGadgetEventsStateDetails .gadgetEventEditableArea {
    color: #4a545f !important;
    font-family: Lato, sans-serif !important;
    font-size: 17px !important;
    line-height: 1.7 !important;
}

/* Neutralize old editor font tags */
.WaGadgetEventsStateDetails .gadgetEventEditableArea font {
    color: inherit !important;
    font-family: inherit !important;
    font-size: inherit !important;
}

/* Paragraphs */
.WaGadgetEventsStateDetails .gadgetEventEditableArea p {
    margin: 0 0 18px 0 !important;

    color: #4a545f !important;
    font-family: Lato, sans-serif !important;
    font-size: 17px !important;
    line-height: 1.7 !important;
}


/* =========================================
   EVENT DESCRIPTION HEADINGS
   ========================================= */

.WaGadgetEventsStateDetails .gadgetEventEditableArea h2 {
    color: #005b8e !important;
    font-family: Lato, sans-serif !important;
    font-size: 27px !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;
    margin: 34px 0 12px 0 !important;
}

.WaGadgetEventsStateDetails .gadgetEventEditableArea h3 {
    color: #005b8e !important;
    font-family: Lato, sans-serif !important;
    font-size: 21px !important;
    font-weight: 700 !important;
    line-height: 1.35 !important;
    margin: 28px 0 10px 0 !important;
}


/* =========================================
   EVENT DESCRIPTION LINKS
   ========================================= */

.WaGadgetEventsStateDetails .gadgetEventEditableArea a {
    color: #005b8e !important;
    font-weight: 600 !important;
    text-decoration: underline !important;
}

.WaGadgetEventsStateDetails .gadgetEventEditableArea a:hover {
    color: #85bf42 !important;
}


/* =========================================
   EVENT DESCRIPTION LISTS
   ========================================= */

.WaGadgetEventsStateDetails .gadgetEventEditableArea ul,
.WaGadgetEventsStateDetails .gadgetEventEditableArea ol {
    margin: 10px 0 22px 24px !important;
    padding-left: 18px !important;
}

.WaGadgetEventsStateDetails .gadgetEventEditableArea li {
    margin-bottom: 8px !important;

    color: #4a545f !important;
    font-family: Lato, sans-serif !important;
    font-size: 17px !important;
    line-height: 1.6 !important;
}


/* =========================================
   EVENT IMAGES
   ========================================= */

/*
   Keep images responsive without forcing small
   speaker headshots to stretch to full width.
*/

.WaGadgetEventsStateDetails .gadgetEventEditableArea img {
    display: block !important;
    max-width: 100% !important;
    height: auto !important;

    margin: 0 0 26px 0 !important;

    border-radius: 10px !important;
    box-shadow: 0 3px 10px rgba(0, 0, 0, 0.08) !important;
}


/* =========================================
   HORIZONTAL RULES IN EVENT DESCRIPTION
   ========================================= */

.WaGadgetEventsStateDetails .gadgetEventEditableArea hr {
    border: none !important;
    border-top: 1px solid rgba(0, 91, 142, 0.15) !important;
    margin: 30px 0 !important;
}


/* =========================================
   MOBILE
   ========================================= */

@media screen and (max-width: 700px) {

    .WaGadgetEventsStateDetails
    .eventsTitleContainer
    .pageTitle {
        font-size: 30px !important;
        margin-bottom: 22px !important;
    }

    .WaGadgetEventsStateDetails .boxInfoContainer {
        padding: 20px 20px !important;
        border-left-width: 4px !important;
    }

    .WaGadgetEventsStateDetails .eventInfoBoxValue {
        font-size: 16px !important;
    }

    .WaGadgetEventsStateDetails .gadgetEventEditableArea,
    .WaGadgetEventsStateDetails .gadgetEventEditableArea p,
    .WaGadgetEventsStateDetails .gadgetEventEditableArea li {
        font-size: 16px !important;
    }

    .WaGadgetEventsStateDetails .gadgetEventEditableArea h2 {
        font-size: 24px !important;
    }

    .WaGadgetEventsStateDetails .gadgetEventEditableArea h3 {
        font-size: 20px !important;
    }

    .WaGadgetEventsStateDetails .gadgetEventEditableArea img {
        margin-bottom: 22px !important;
        border-radius: 8px !important;
    }

    .WaGadgetEventsStateDetails .registerButton {
        width: 100% !important;
        padding: 12px 18px !important;
        box-sizing: border-box !important;
    }
}

/* =========================================
   EVENT REGISTRATION - EVENT INFO BOX
   ========================================= */

/* Remove Wild Apricot's built-in blue background */
#idInfoContainer,
#idInfoContainer .infoContainer,
#idInfoContainer .d1,
#idInfoContainer .d2,
#idInfoContainer .d3,
#idInfoContainer .d4,
#idInfoContainer .d5,
#idInfoContainer .d6,
#idInfoContainer .d7,
#idInfoContainer .d8,
#idInfoContainer .d9,
#idInfoContainer .inner,
#idInfoContainer .cornersContainer,
#idInfoContainer .topCorners,
#idInfoContainer .bottomCorners,
#idInfoContainer .topCorners div,
#idInfoContainer .bottomCorners div {
    background: none !important;
    background-color: transparent !important;
    background-image: none !important;
}

/* Rebuild the box in our site style */
#idInfoContainer .infoContainer {
    background: rgba(0, 91, 142, 0.06) !important;
    border: 1px solid rgba(0, 91, 142, 0.16) !important;
    border-left: 5px solid #85bf42 !important;
    border-radius: 10px !important;
    box-sizing: border-box !important;
}

/* Inner spacing */
#idInfoContainer .inner {
    padding: 24px 26px !important;
}

/* Event label */
#idInfoContainer .infoTitle {
    color: #005b8e !important;
    font-family: Lato, sans-serif !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;
    text-transform: uppercase !important;
    letter-spacing: .05em !important;
}

/* Event information */
#idInfoContainer .infoText {
    color: #4a545f !important;
    font-family: Lato, sans-serif !important;
    font-size: 17px !important;
    line-height: 1.55 !important;
}

/* =========================================================
   ATD CENTRAL IOWA
   EVENT CALENDAR - MODERN LIST VIEW
   Requires the ATD event-list JavaScript transformation
   ========================================================= */


/* =========================================================
   1. EVENT LIST
   ========================================================= */

.atd-calendar.WaGadgetEventsStateList .boxesList {
    margin: 26px 0 0 0 !important;
    padding: 0 !important;
}


/* =========================================================
   2. EVENT CARD SHELL
   ========================================================= */

.atd-calendar.WaGadgetEventsStateList
.boxesListItem.atd-event-card-ready {
    position: relative !important;

    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;

    margin: 0 0 18px 0 !important;
    padding: 0 !important;

    background: #ffffff !important;

    border: 1px solid rgba(0, 91, 142, 0.16) !important;
    border-radius: 10px !important;

    overflow: hidden !important;

    box-sizing: border-box !important;
}


/* =========================================================
   3. CARD LAYOUT
   ========================================================= */

.atd-event-card {
    display: grid !important;
    grid-template-columns: 270px minmax(0, 1fr) !important;
    width: 100% !important;
    min-height: 175px !important;
    margin: 0 !important;
    padding: 0 !important;
    background: #ffffff !important;
    box-sizing: border-box !important;
}


/* =========================================================
   4. EVENT IMAGE
   ========================================================= */

.atd-event-card-image {
    display: flex !important;

    align-items: center !important;
    justify-content: center !important;

    width: 270px !important;
    height: 175px !important;
    min-height: 175px !important;

    align-self: center !important;

    margin: 0 !important;
    padding: 12px !important;

    overflow: hidden !important;

    background: rgba(0, 91, 142, 0.035) !important;

    text-decoration: none !important;

    box-sizing: border-box !important;
}


.atd-event-card-image img {
    display: block !important;

    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;

    margin: 0 !important;
    padding: 0 !important;

    object-fit: contain !important;
    object-position: center !important;

    border: 0 !important;
    border-radius: 4px !important;
}


/* =========================================================
   5. NO-IMAGE PLACEHOLDER
   ========================================================= */

.atd-event-card-placeholder {
    display: flex !important;

    align-items: center !important;
    justify-content: center !important;

    padding: 0 !important;

    background:
        linear-gradient(
            135deg,
            rgba(0, 91, 142, 0.11) 0%,
            rgba(0, 91, 142, 0.055) 58%,
            rgba(133, 191, 66, 0.12) 100%
        ) !important;
}


.atd-event-card-placeholder span {
    display: block !important;

    max-width: 150px !important;

    color: #005b8e !important;

    font-family: Lato, sans-serif !important;
    font-size: 17px !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;

    text-align: center !important;
    text-decoration: none !important;
}


/* =========================================================
   6. CARD CONTENT
   ========================================================= */

.atd-event-card-content {
    display: flex !important;

    flex-direction: column !important;

    min-width: 0 !important;

    margin: 0 !important;
    padding: 20px 24px 18px 26px !important;

    background: #ffffff !important;

    box-sizing: border-box !important;
}


/* =========================================================
   7. EVENT TITLE
   ========================================================= */

.atd-event-card-title {
    display: block !important;

    margin: 0 0 6px 0 !important;
    padding: 0 !important;

    color: #005b8e !important;

    font-family: Lato, sans-serif !important;
    font-size: 21px !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;

    text-decoration: none !important;
}


.atd-event-card-title:hover,
.atd-event-card-title:focus {
    color: #85bf42 !important;

    text-decoration: none !important;
}


/* =========================================================
   8. EVENT METADATA
   ========================================================= */

.atd-event-card-meta {
    display: flex !important;

    flex-wrap: wrap !important;
    align-items: center !important;

    gap: 3px 0 !important;

    margin: 0 0 10px 0 !important;
    padding: 0 !important;

    color: #4a545f !important;

    font-family: Lato, sans-serif !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    line-height: 1.45 !important;
}


.atd-event-card-meta span {
    display: inline !important;

    margin: 0 !important;
    padding: 0 !important;

    color: inherit !important;

    font-family: inherit !important;
    font-size: inherit !important;
    font-weight: inherit !important;
    line-height: inherit !important;
}


/* Green metadata separators */

.atd-event-card-meta span:not(:last-child)::after {
    content: "•" !important;

    display: inline !important;

    margin: 0 9px !important;

    color: #85bf42 !important;

    font-weight: 700 !important;
}


/* =========================================================
   9. EVENT EXCERPT
   ========================================================= */

.atd-event-card-excerpt {
    display: -webkit-box !important;

    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 2 !important;

    overflow: hidden !important;

    max-width: 1050px !important;

    margin: 0 0 13px 0 !important;
    padding: 0 !important;

    color: #4a545f !important;

    font-family: Lato, sans-serif !important;
    font-size: 15px !important;
    font-weight: 400 !important;
    line-height: 1.55 !important;
}


/* =========================================================
   10. ACTION AREA
   ========================================================= */

.atd-event-card-actions {
    display: flex !important;

    align-items: center !important;
    flex-wrap: wrap !important;

    gap: 18px !important;

    margin-top: auto !important;
    padding: 0 !important;
}


/* =========================================================
   11. VIEW EVENT LINK
   ========================================================= */

.atd-event-card-view {
    display: inline-block !important;

    margin: 0 !important;
    padding: 0 !important;

    color: #005b8e !important;

    font-family: Lato, sans-serif !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    line-height: 1.4 !important;

    text-decoration: none !important;
}


.atd-event-card-view::after {
    content: " →" !important;
}


.atd-event-card-view:hover,
.atd-event-card-view:focus {
    color: #85bf42 !important;

    text-decoration: none !important;
}


/* =========================================================
   12. REGISTER BUTTON
   ========================================================= */

.atd-event-card-register {
    display: inline-block !important;

    width: auto !important;
    height: auto !important;

    margin: 0 !important;
    padding: 8px 16px !important;

    background: #85bf42 !important;

    border: 1px solid #85bf42 !important;
    border-radius: 5px !important;

    color: #ffffff !important;

    font-family: Lato, sans-serif !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;

    text-align: center !important;
    text-decoration: none !important;
    text-transform: none !important;

    cursor: pointer !important;

    box-shadow: none !important;
    text-shadow: none !important;
}


.atd-event-card-register:hover,
.atd-event-card-register:focus {
    background: #6fa832 !important;

    border-color: #6fa832 !important;

    color: #ffffff !important;

    text-decoration: none !important;

    box-shadow: none !important;
}


/* =========================================================
   13. TABLET
   ========================================================= */

@media (max-width: 900px) {

    .atd-event-card {
        grid-template-columns: 190px minmax(0, 1fr) !important;
        min-height: 175px !important;
    }


    .atd-event-card-image {
        width: 190px !important;
        min-height: 175px !important;
    }
.atd-event-card-content {
        padding: 18px 20px 17px 22px !important;
    }


    .atd-event-card-title {
        font-size: 20px !important;
    }

}


/* =========================================================
   14. MOBILE
   ========================================================= */

@media (max-width: 700px) {

    .atd-calendar.WaGadgetEventsStateList .boxesList {
        margin-top: 20px !important;
    }


    .atd-calendar.WaGadgetEventsStateList
    .boxesListItem.atd-event-card-ready {
        margin-bottom: 16px !important;
    }


    .atd-event-card {
        display: block !important;

        min-height: 0 !important;
    }


    /*
     * On mobile the image becomes a shallow banner.
     */

    .atd-event-card-image {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;

        width: 100% !important;
        height: 170px !important;
        min-height: 0 !important;
        padding: 12px !important;
    }


    .atd-event-card-image img {
        display: block !important;

        width: 100% !important;
        height: 100% !important;
        min-height: 0 !important;

        object-fit: contain !important;
        object-position: center !important;
    }


    .atd-event-card-placeholder {
        display: flex !important;
    }


    .atd-event-card-content {
        padding: 18px 20px 19px 20px !important;
    }


    .atd-event-card-title {
        margin-bottom: 7px !important;

        font-size: 20px !important;
        line-height: 1.3 !important;
    }


    /*
     * Stack metadata on mobile so long dates don't
     * produce awkward wrapping.
     */

    .atd-event-card-meta {
        display: block !important;

        margin-bottom: 10px !important;
    }


    .atd-event-card-meta span {
        display: block !important;

        margin: 0 0 2px 0 !important;
    }


    .atd-event-card-meta span::after {
        content: none !important;

        display: none !important;
    }


    .atd-event-card-excerpt {
        margin-bottom: 14px !important;

        -webkit-line-clamp: 3 !important;
    }


    .atd-event-card-actions {
        margin-top: 14px !important;

        gap: 16px !important;
    }

}

/* =========================================================
   TEMPORARY SITE FEATURES
   ========================================================= */
/* ========================================
   WEBSITE CONSTRUCTION NOTICE
   ======================================== */

.site-notice-overlay {
  position: fixed;
  inset: 0;
  background: rgba(0, 0, 0, 0.55);
  z-index: 99998;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 20px;
}

.site-notice-modal {
  position: relative;
  width: 100%;
  max-width: 540px;
  background: #ffffff;
  border-radius: 8px;
  box-shadow: 0 12px 40px rgba(0, 0, 0, 0.25);
  overflow: hidden;
  text-align: center;
}

.site-notice-accent {
  height: 7px;
  background: #85bf42;
}

.site-notice-content {
  padding: 42px 42px 38px;
}

.site-notice-modal h2 {
  margin: 0 0 16px;
  color: #005b8e;
  font-size: 30px;
  line-height: 1.2;
}

.site-notice-modal p {
  margin: 0 0 16px;
  color: #4a545f;
  font-size: 17px;
  line-height: 1.6;
}

.site-notice-modal p:last-of-type {
  margin-bottom: 26px;
}

.site-notice-button {
  display: inline-block;
  padding: 12px 26px;
  background: #005b8e;
  color: #ffffff !important;
  text-decoration: none !important;
  font-weight: 600;
  font-size: 16px;
  border-radius: 4px;
  transition: background 0.2s ease;
}

.site-notice-button:hover,
.site-notice-button:focus {
  background: #00466e;
  color: #ffffff !important;
}

.site-notice-close {
  position: absolute;
  top: 18px;
  right: 18px;
  width: 36px;
  height: 36px;
  padding: 0;
  border: 0;
  background: transparent;
  color: #4a545f;
  font-size: 28px;
  line-height: 36px;
  cursor: pointer;
}

.site-notice-close:hover,
.site-notice-close:focus {
  color: #005b8e;
}

@media (max-width: 600px) {
  .site-notice-content {
    padding: 38px 24px 30px;
  }

  .site-notice-modal h2 {
    font-size: 26px;
  }

  .site-notice-modal p {
    font-size: 16px;
  }
}
