@import url('https://fonts.googleapis.com/css2?family=DM+Serif+Display:ital@0;1&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Adamina&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Lato:ital,wght@0,100;0,300;0,400;0,700;0,900;1,100;1,300;1,400;1,700;1,900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Yeseva+One&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Allura&display=swap');

:root {
    --medium-turquoise: #31c0c7;
    --yellow-orange: #fcb040;
    --spray: #76ceda;
    --blue-lagoon: #0a5864;
    --conifer: #aed24a;
    --turtle-green: #2f5609;
    --summer-sky: #38add4;
    --rich-blue: #5955a9;
    --curious-blue: #3f83be;
    --blue-chill: #368d95;
    --highland: #7c935e;
    --elf-green: #298d75;
    --pale-turquoise: #BDECEA;
    --spring-sun: #ECEABD;
    --selago: #F7E4F6;
    --bridal-heath: #F5EADD;
    --aubergine: #261b1f;
    --fern-green: #528a3b;
    --jelly-bean: #3f7d95;
    --mango-tango: #F16F08;
    --romance: #F4EFE6;
}

@font-face {
    font-family: "Futura";
    src: url(/assets/fonts/futura.otf);
}

@font-face {
    font-family: "Futura Bold";
    src: url(/assets/fonts/futura-bold.otf);
}

@font-face {
    font-family: "Optima Demi Bold";
    src: url(/assets/fonts/optima-demi-bold.ttf);
}

@font-face {
    font-family: "Optima Regular";
    src: url(/assets/fonts/optima-regular.ttf);
}

.lato-regular { font-family: "Lato", sans-serif !important; font-weight: 400; letter-spacing: normal !important; }
.yeseva-one-regular {
    font-family: "Yeseva One", serif !important;
    font-weight: 400;
    font-style: normal;
}
.allura-regular {
  font-family: "Allura", cursive;
  font-weight: 400;
  font-style: normal;
}

.futura {
  font-family: "Futura", serif !important;
  font-weight: 400;
  font-style: normal;
}

.futura-heavy {
  font-family: "Futura Bold", serif !important;
  /*font-weight: 400;*/
  font-style: normal;
}

.text-medium-turquoise { color: var(--medium-turquoise); }
.text-yellow-orange { color: var(--yellow-orange); }
.text-spray { color: var(--spray); }
.text-blue-lagoon { color: var(--blue-lagoon); }
.text-conifer { color: var(--conifer); }
.text-turtle-green { color: var(--turtle-green); }
.text-summer-sky { color: var(--summer-sky); }
.text-rich-blue { color: var(--rich-blue); }
.text-curious-blue { color: var(--curious-blue); }
.text-blue-chill { color: var(--blue-chill); }
.text-highland { color: var(--highland); }
.text-elf-green { color: var(--elf-green); }
.text-pale-turquoise { color: var(--pale-turquoise); }
.text-spring-sun { color: var(--spring-sun); }
.text-selago { color: var(--selago); }
.text-bridal-heath { color: var(--bridal-heath); }
.text-aubergine { color: var(--aubergine); }
.text-fern-green { color: var(--fern-green); }
.text-jelly-bean { color: var(--jelly-bean); }
.text-mango-tango { color: var(--mango-tango); }

.link {
    color: #000;
    font-weight: 600;
}
.link:hover {
    color: var(--medium-turquoise);
}

.link-story {
    color: #000;
    font-weight: 600;
}

.link-story:hover {
    color: #000;
}

.link-medium-turquoise { color: var(--medium-turquoise) !important; font-weight: 600; }
.link-medium-turquoise:hover { color: var(--medium-turquoise) !important; }

.link-bridal-heath { color: var(--bridal-heath) !important; font-weight: 600; }
.link-bridal-heath:hover { color: var(--bridal-heath) !important; }

.border-color-medium-turquoise {
    border-bottom: 2px solid var(--medium-turquoise) !important;
}

.bg-medium-turquoise { background-color: var(--medium-turquoise); }
.bg-summer-sky { background-color: var(--summer-sky); }
.bg-rich-blue { background-color: var(--rich-blue); }
.bg-curious-blue { background-color: var(--curious-blue); }
.bg-blue-chill { background-color: var(--blue-chill); }
.bg-highland { background-color: var(--highland); }
.bg-yellow-orange { background-color: var(--yellow-orange); }
.bg-spray { background-color: var(--spray); }
.bg-blue-lagoon { background-color: var(--blue-lagoon); }
.bg-conifer { background-color: var(--conifer); }
.bg-turtle-green { background-color: var(--turtle-green); }
.bg-pale-turquoise { background-color: var(--pale-turquoise); }
.bg-spring-sun { background-color: var(--spring-sun); }
.bg-selago { background-color: var(--selago); }
.bg-bridal-heath { background-color: var(--bridal-heath); }
.bg-romance { background-color: var(--romance); }

.bg-mustard-gradient {
    background: rgb(250,157,62);
    background: linear-gradient(0deg, rgba(250,157,62,1) 0% , rgba(254,224,86,1) 100%);
}

.bg-turquoise-blue-gradient {
    background: rgb(101,217,244);
    background: linear-gradient(90deg, rgba(101,217,244,1) 0%, rgba(102,196,242,1) 50%, rgba(104,175,241,1) 100%);
}

.bg-sulu-gradient {
    background: rgb(205,244,123);
    background: linear-gradient(90deg, rgba(205,244,123,1) 0%, rgba(177,230,132,1) 50%, rgba(145,215,143,1) 100%);
}

.bg-news {
    background-color: var(--medium-turquoise);
    /*border: 2px solid #000000;*/
}
.bg-news:hover {
    background-color: #FFFFFF;
    /*border: 2px solid var(--medium-turquoise);*/
}

.btn-medium-turquoise {
    background-color: var(--medium-turquoise);
    color: #FFFFFF;
    border: 2px solid var(--medium-turquoise);
}

.btn-see-more-services, .btn-see-more-services:hover { color: var(--aubergine) !important; }

.btn-summer-sky { background-color: var(--summer-sky); color: #FFFFFF; }
.btn-rich-blue { background-color: var(--rich-blue); color: #FFFFFF; }
.btn-curious-blue { background-color: var(--curious-blue); color: #FFFFFF; }
.btn-blue-chill { background-color: var(--blue-chill); color: #FFFFFF; }
.btn-highland { background-color: var(--highland); color: #FFFFFF; }
.btn-elf-green { background-color: var(--elf-green); color: #FFFFFF; }
.btn-summer-sky:hover { border: 2px solid var(--summer-sky); background-color: transparent; color: var(--summer-sky); font-weight: 800; }
.btn-rich-blue:hover { border: 2px solid var(--rich-blue); background-color: transparent; color: var(--rich-blue); font-weight: 800; }
.btn-curious-blue:hover { border: 2px solid var(--curious-blue); background-color: transparent; color: var(--curious-blue); font-weight: 800; }
.btn-blue-chill:hover { border: 2px solid var(--blue-chill); background-color: transparent; color: var(--blue-chill); font-weight: 800; }
.btn-highland:hover { border: 2px solid var(--highland); background-color: transparent; color: var(--highland); font-weight: 800; }
.btn-elf-green:hover { border: 2px solid var(--elf-green); background-color: transparent; color: var(--elf-green); font-weight: 800; }

p { font-size: 20px; }

/*header a.logo img { max-height: 70px; }*/

/*header nav .navbar-nav.text-normal > li > a {
    font-weight: 500;
    font-size: 14px;
}*/

.menu-icon {
    display: initial !important;
    color: #000 !important;
    margin-left: 15px !important;
}

nav.navbar.bootsnav .simple-dropdown .dropdown-menu > li {
    padding: 12px 20px;
}
.simple-dropdown .dropdown-menu > li a {
    font-weight: 600;
}
.simple-dropdown .dropdown-menu {
    min-width: 350px;
    padding: 0;
}
nav.navbar.bootsnav ul.nav > li > a.menu-focus:hover {
    border-bottom: 2px solid var(--medium-turquoise);
}

.border-menu .menu-focus::after {
    content: "\f107";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    margin-left: 5px;
}
.dropdown.simple-dropdown:hover a .menu-icon {
    display: none;
}
.border-menu:hover .menu-focus::after {
    content: "\f106";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    margin-left: 5px;
}

.simple-dropdown .dropdown-menu {
    background-color: #FFFFFF;
}

nav.navbar.navbar-default ul.nav > li > a {
    padding: 5px 0;
}
nav.navbar.navbar-default ul li.dropdown .dropdown-menu li > a {
    color: #000000 !important;
    font-size: 15px;
}
nav.navbar.navbar-default ul li.dropdown .dropdown-menu li > a:hover {
    color: #333333 !important;
}

/*header nav .navbar-nav > li > a { margin: 0 10px; }*/

/* start Menu Level */

.menu-level-1-tooltip, .menu-level-1-arrow,
.menu-level-2-toolti, .menu-level-2-arrow {
    display: none;
    padding-left: 5px;
}

.menu-level-1:hover + .menu-level-1-tooltip {
    display: block;
}

.menu-level-1:hover .menu-level-1-arrow {
    display: inline;
}

.menu-level-2:hover + .menu-level-2-tooltip {
    /*display: block;*/
}

.menu-level-2:hover .menu-level-2-arrow {
    display: inline;
}

.menu-level-2 {
    list-style: none;
    padding: 0;
    margin: 10px 0 0 0;
}
.menu-level-2 li {
    margin: 5px 0;
}
.menu-level-2 li a {
    text-decoration: none;
    color: #000;
}
.menu-level-2 li a:hover {
    text-decoration: none;
}

.menu-level-2 li a:hover + .menu-level-1-arrow {
    /*display: none;*/
}
/* end Menu Level */

.fa-brands:hover, .text-footer:hover {
    color: var(--medium-turquoise);
}

.margin-2px-top { margin-top: 2px; }
.margin-2px-bottom { margin-bottom: 2px; }
.margin-2px-tb { margin: 2px 0; }
.margin-4px-bottom { margin-bottom: 4px; }

.padding-17px-tb {
    padding-top: 17px;
    padding-bottom: 17px;
}
.padding-27px-tb {
    padding-top: 27px;
    padding-bottom: 27px;
}

.fixed-height {
    height: 17%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.swiper-button-next, .swiper-button-prev {
    position: absolute;
    top: 97.5%;
}
.swiper-button-prev { left: 33rem; }
.swiper-button-next { right: 33rem; }

.swiper-horizontal>.swiper-pagination-bullets, .swiper-pagination-bullets.swiper-pagination-horizontal {
    left: 0;
    text-align: center;
    position: relative;
}

.tab-style5 .nav-tabs li { width: 50%; }

.bg-insights {
    height: 600px;
    overflow: auto;
}

.cursor-pointer {
    cursor: pointer;
}

.center-icon-text {
    display: flex;
    align-items: center;
    justify-content: center;
}

.team-style-1 figure:hover .overlay-content {
    top: 45%;
}

.responsive-iframe {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    width: 100%;
    height: 100%;
    border: none;
}

.big-input, .big-textarea, .big-select select {
    padding: 10.5px 25px;
}

#successDiv, #errorDiv, #volunteerList {
    display: none;
}

.check-input {
    margin: 0.25em 0 0 0;
    padding: 8px 8px;
}

.form-check-input:checked {
    background-color: var(--medium-turquoise);
    border-color: var(--medium-turquoise);
}

.h-section { padding: 70px 0; }

.bg-give {
    background-image: url(../images/give-donate-v1.jpg);
    background-size: cover;
    background-position: center;
}

.bg-our-history {
    background-image: url(../images/our-history.jpg);
    background-size: cover;
    background-position: center;
}

.bg-volunteer {
    background-image: url(../images/volunteer.jpg);
    background-size: cover;
    background-position: center;
}

.bg-give-page {
    background-image: url(../images/give-banner.jpg);
    background-size: cover;
    background-position: center;
}

.bg-care-center-champion {
    background-image: url(../images/carecenter-champion-banner.jpg);
    background-size: cover;
    background-position: center;
}

.bg-giving-tuesday {
    background-image: url(../images/giving-tuesday-bg.jpg);
    background-size: cover;
    background-position: center;
}

.bg-care-gallery {
    background-image: url(../images/caregallery/banner-gift-of-grace.jpg);
    background-size: cover;
    background-position: bottom !important;
}

.banner-thanksgiving {
    background-image: url(/assets/images/banner-thanksgiving-v2.jpg);
    background-size: cover;
    background-position: center;
}

.banner-give {
    background-image: url(../images/banner-give-v5.jpg);
    background-size: cover;
    background-position: center;
}

.banner-about {
    background-image: url(../images/banner-about.jpg);
    background-size: cover;
    background-position: center;
}

.banner-services {
    background-image: url(../images/services.jpg);
    background-size: cover;
    background-position: center;
}

.banner-faqs {
    background-image: url(../images/banner-faqs.jpg);
    background-size: cover;
    background-position: center;
}

.banner-volunteer {
    background-image: url(../images/banner-volunteers.jpg);
    background-size: cover;
    background-position: center;
}

.banner-request-services {
    background-image: url(../images/banner-request-services.jpg);
    background-size: cover;
    background-position: center;
}

.banner-counseling-center {
    background-image: url(../images/banner-counseling-center.jpg);
    background-size: cover;
    background-position: center;
}

.banner-partner {
    background-image: url(../images/banner-partner-with-us.jpg);
    background-size: cover;
    background-position: center;
}

.banner-legal-clinic {
    background-image: url(../images/banner-legal-clinic.jpg);
    background-size: cover;
    background-position: center;
}

.banner-financial-empowerment {
    background-image: url(../images/banner-financial-empowerment.jpg);
    background-size: cover;
    background-position: center;
}

.banner-ffh {
    background-image: url(../images/banner-ffh.jpg);
    background-size: cover;
    background-position: center;
}

.banner-capacity-builders {
    background-image: url(../images/banner-capacity-builders.jpg);
    background-size: cover;
    background-position: center;
}

.banner-care-4-kids {
    background-image: url(../images/banner-care-4-kids.jpg);
    background-size: cover;
    background-position: center;
}

.banner-events {
    background-image: url(../images/events.jpg);
    background-size: cover;
    background-position: center;
}

.banner-impact {
    background-image: url(../images/banner-impact.jpg);
    background-size: cover;
    background-position: center;
}

.banner-requesting-agency {
    background-image: url(../images/banner-requesting-agency.jpg);
    background-size: cover;
    background-position: center;
}

.banner-community-sponsors {
    background-image: url(../images/banner-community-sponsors.jpg);
    background-size: cover;
    background-position: center;
}

.banner-agency-partner {
    background-image: url(../images/banner-agency-partner-v1.jpg);
    background-size: cover;
    background-position: center;
}

.banner-church-partner {
    background-image: url(../images/banner-church-partner.jpg);
    background-size: cover;
    background-position: top;
}

.banner-newsletter {
    background-image: url(../images/banner-newsletter.jpeg);
    background-size: cover;
    background-position: top;
}

.program-care-4-kids {
    background-image: url(../images/program-care-4-kids.jpg);
}

.program-legal-clinic {
    background-image: url(../images/program-legal-clinic.jpg);
}

.program-counseling-center {
    background-image: url(../images/program-counseling-center.jpg);
}

.program-financial-empowerment {
    background-image: url(../images/program-financial.jpg);
}

.program-capacity-builders {
    background-image: url(../images/program-capacity-builders.jpg);
    background-position: left !important;
}


#njMap-license-text {
    display: none !important;
}

#c4kMap {
    width: 100%;
    height: 600px;
}

#ffhMap {
    width: 100%;
    height: 500px;
}

.list-style-3 li:before {
    height: 2px;
    background-color: #00b4b1 !important;
}

/* Blockquote main style */
.stories-quote {
    position: relative;
    font-family: "DM Serif Display", serif;
    padding: 2px;
    width: 100%;
    max-width: 600px;
    z-index: 1;
    margin: auto;
}

/* Blockquote right double quotes */
.stories-quote:after {
    position: absolute;
    content: "”";
    color: #000000;
    font-size: 20em;
    line-height: 1;
    left: calc(50% - 4rem);
    bottom: -0.8em;
    z-index: 1;
}

/* Blockquote background */
.stories-quote::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
    background-color: #76ceda;
    background-image: linear-gradient(45deg, #000000 0%, #76ceda 24%, #6284FF 49%, #595656 75%, #ffffff 100%);

    background-size: 400% 400%;
    animation: gradientborders 8s ease infinite;
}

.swiper-button-prev, .swiper-button-next {
    position: absolute;
    top: 50%;
    z-index: 1;
    background: #fff;
    color: #000 !important;
    padding: 9px;
    font-size: 18px;
    cursor: pointer;
}

.toggle-icon {
    cursor: pointer;
    transition: transform 0.25s ease;
}

.extra-content {
    max-height: 0;
    overflow: hidden;
    opacity: 0;
    margin-top: 0;
    transition: max-height 0.35s ease, opacity 0.25s ease, margin-top 0.25s ease;
}

.extra-content.open {
    max-height: 400px;
    opacity: 1;
    margin-top: 15px;
}

/* ********** Start Gallery Calendar ********** */

.caregallery-calendar-section {
    padding: 90px 0;
    /*background: #f8f5ef;*/
    font-family: 'Futura', sans-serif;
    font-weight: 500;
}

select { margin: 0 0 10px 0; }

.calendar-filters {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    width: 100%;
}

.calendar-filter-wrap {
    position: relative;
    width: 50%;
    flex: 0 0 calc(50% - 10px);
}

.calendar-filter-select {
    width: 100%;
    padding: 10px 55px 10px 18px;
    border: 1px solid #d7d7d7;
    border-radius: 50px;
    background: #fff;
    color: #5f5a54;
    font-size: 16px;
    outline: none;
    transition: all 0.25s ease;
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
}

.calendar-filter-wrap::after {
    content: "\f107";
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    position: absolute;
    right: 22px;
    top: 40%;
    transform: translateY(-50%);
    color: #7b746d;
    pointer-events: none;
    font-size: 16px;
}

.calendar-filter-select:focus {
    border-color: #d7d7d7;
    box-shadow: 0 0 0 3px rgba(198, 167, 115, 0.12);
}

@media (max-width: 767px) {
    .calendar-filters {
        flex-direction: column !important;
        flex-wrap: wrap !important;
    }

    .calendar-filter-wrap {
        width: 100%;
        flex: 0 0 100%;
    }
}

.caregallery-timeline {
    display: grid;
    gap: 30px;
}

.calendar-card {
    background: #fff;
    border: 1px solid #ebe3d8;
    border-radius: 18px;
    overflow: hidden;
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.1);
    transition: all 0.3s ease;
}

.calendar-card:hover {
    transform: translateY(-2px);
    box-shadow: 0 14px 34px rgba(0, 0, 0, 0.06);
}

.calendar-card-main {
    display: grid;
    grid-template-columns: 320px 1fr;
    align-items: stretch;
    box-shadow: 0 .5rem 1rem rgba(0, 0, 0, .15) !important;
}

.calendar-card-image {
    position: relative;
    background: #BDECEA;
}

.calendar-card-image img {
    width: 100%;
    height: 100%;
    min-height: 260px;
    object-fit: cover;
    display: block;
}

.artist-gallery-toggle {
    position: absolute;
    right: 14px;
    bottom: 14px;
    width: 44px;
    height: 44px;
    border: 1px solid #d7d7d7;
    border-radius: 50%;
    background: #ffffff;
    color: #212121;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    z-index: 3;
    box-shadow: 0 .5rem 1rem rgba(0, 0, 0, .15);
    transition: all 0.25s ease;
}

.artist-gallery-toggle:hover {
    background: #BDECEA;
}

.artist-gallery {
    position: absolute;
    inset: 0;
    background: rgba(255, 255, 255, 0.97);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: all 0.25s ease;
    z-index: 4;
    padding: 7px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.calendar-card-image.gallery-open .artist-gallery {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
}

.artist-gallery-close {
    position: absolute;
    top: 12px;
    right: 12px;
    width: 38px;
    height: 38px;
    border: 1px solid #d7d7d7;
    border-radius: 50%;
    background: #fff;
    color: #212121;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
}

.artist-slider {
    width: 100%;
    display: flex;
    align-items: center;
    gap: 5px;
}

.artist-slider-track {
    flex: 1;
    position: relative;
    height: 260px;
    overflow: hidden;
    border-radius: 12px;
    background: #f5f5f5;
}

.artist-slide {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 12px;
    opacity: 0;
    transition: opacity 0.25s ease;
    pointer-events: none;
}

.artist-slide.active {
    opacity: 1;
    pointer-events: auto;
}

.artist-slider-arrow {
    width: 40px;
    height: 40px;
    border: 1px solid #d7d7d7;
    border-radius: 50%;
    background: #fff;
    color: #212121;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    flex-shrink: 0;
}

.artist-slider-counter {
    margin-top: 12px;
    font-size: 13px;
    color: #6d655e;
    font-weight: 600;
}

@media (max-width: 575px) {
    .artist-slider-track {
        height: 200px;
    }

    .artist-slider-arrow {
        width: 34px;
        height: 34px;
    }
}

.calendar-exhibit-badge {
    position: absolute;
    top: 14px;
    left: 14px;
    display: inline-block;
    padding: 8px 14px;
    border-radius: 30px;
    background: rgba(255,255,255,0.95);
    color: #212121;
    border: 1px solid #d7d7d7;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 1px;
    text-transform: uppercase;
}

.calendar-card-content {
    padding: 32px;
}

.calendar-date-row {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-bottom: 16px;
}

.calendar-date-pill {
    display: inline-flex;
    align-items: center;
    padding: 8px 12px;
    border-radius: 30px;
    background: #e5f2f1;
    border: 1px solid #d7d7d7;
    color: #5E5A57;
    font-size: 15px;
    line-height: 1;
}

.calendar-card-title {
    margin: 0 0 10px;
    font-size: 34px;
    line-height: 1.12;
    color: #232323;
    font-weight: 700;
}

.calendar-card-subtitle {
    margin: 0 0 10px;
    font-size: 25px;
    line-height: 1.12;
    color: #232323;
    font-weight: 700;
}

.calendar-card-artist {
    margin: 0;
    color: #2F5D62;
    font-size: 20px;
    line-height: 1.6;
    font-weight: 600;
}

.calendar-card-artist span {
    color: #8a837b;
    font-weight: 400;
}

.calendar-detail-grid {
    display: grid;
    grid-template-columns: repeat(1, minmax(0, 1fr));
    gap: 14px;
}

.calendar-detail-box {
    background: #e5f2f1;
    border: 1px solid #d7d7d7;
    border-radius: 14px;
    padding: 16px;
    margin-top: 22px;
    box-shadow: 0 .5rem 1rem rgba(0, 0, 0, .15) !important;
}

.calendar-detail-label {
    display: block;
    margin-bottom: 6px;
    color: #212121;
    font-size: 16px;
    font-weight: 700;
    letter-spacing: 1px;
    text-transform: uppercase;
}

.calendar-detail-value, .calendar-detail-value p {
    color: #212121;
    font-size: 17px;
    line-height: 1.6;
}

.calendar-toggle-btn {
    margin-top: 24px;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 12px 20px;
    border: 1px solid #d7d7d7;
    border-radius: 40px;
    background: #e5f2f1;
    color: #212121;
    font-size: 16px;
    font-weight: 600;
    letter-spacing: 1px;
    cursor: pointer;
    transition: all 0.25s ease;
}

.calendar-toggle-btn:hover {
    background: #BDECEA;
    border-color: #d7d7d7;
}

.calendar-toggle-btn i {
    transition: transform 0.25s ease;
}

.calendar-card.open .calendar-toggle-btn i {
    transform: rotate(180deg);
}

.calendar-related-events {
    max-height: 0;
    overflow: hidden;
    opacity: 0;
    transition: max-height 0.4s ease, opacity 0.25s ease;
    background: #fffdf9;
    border-top: 1px solid transparent;
}

.calendar-card.open .calendar-related-events {
    max-height: 1500px;
    opacity: 1;
    border-top: 1px solid #d7d7d7;
}

.calendar-related-inner {
    padding: 28px 32px 32px;
}

.calendar-related-title {
    margin: 0 0 18px;
    font-size: 20px;
    color: #212121;
    font-weight: 700;
}

.calendar-event-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
}

.calendar-event-card {
    background: #fff;
    border: 1px solid #d7d7d7;
    border-radius: 14px;
    padding: 18px;
    box-shadow: 0 .5rem 1rem rgba(0, 0, 0, .15) !important;
}

.calendar-event-type {
    margin-bottom: 10px;
    color: #5E5A57;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 1px;
    text-transform: uppercase;
}

.calendar-event-title {
    margin: 15px 0;
    font-size: 21px;
    line-height: 1.3;
    color: #212121;
    font-weight: 800;
}

.calendar-event-meta {
    margin: 4px 0;
    color: #212121;
    font-size: 17px;
    line-height: 1.65;
}

.calendar-empty {
    padding: 35px 20px;
    border-radius: 18px;
    background: #fff;
    border: 1px solid #d7d7d7;
    text-align: center;
    color: #212121;
}

.calendar-action-row {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 24px;
    align-items: center;
}

.calendar-action-row .calendar-toggle-btn {
    margin-top: 0;
}

.calendar-inquiry-btn {
    text-decoration: none;
}

@media (max-width: 767px) {
    .calendar-action-row {
        flex-direction: column;
        align-items: stretch;
    }

    .calendar-action-row .calendar-toggle-btn,
    .calendar-action-row .calendar-inquiry-btn {
        width: 100%;
        justify-content: center;
    }
}

.art-collecting-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 24px;
}

.art-event-card {
    background: #fff;
    border: 1px solid #ebe3d8;
    border-radius: 18px;
    overflow: hidden;
    box-shadow: 0 8px 25px rgba(0,0,0,0.04);
    height: 100%;
}

.art-event-image img {
    width: 100%;
    height: 240px;
    object-fit: cover;
    display: block;
}

.art-event-content {
    padding: 22px;
}

.art-event-date {
    display: inline-block;
    margin-bottom: 12px;
    padding: 7px 12px;
    border-radius: 30px;
    background: #e5f2f1;
    border: 1px solid #d7d7d7;
    color: #5E5A57;
    font-size: 15px;
    line-height: 1;
    font-family: 'Futura', sans-serif;
}

.art-event-title {
    margin: 0 0 10px;
    font-size: 24px;
    line-height: 1.2;
    color: #232323;
    font-weight: 700;
}

.art-event-meta {
    margin: 4px 0;
    color: #212121;
    font-size: 20px;
    line-height: 1.65;
    font-family: 'Futura', sans-serif;
}

.art-event-description {
    margin-top: 12px;
    color: #212121;
    font-size: 15px;
    line-height: 1.7;
    font-family: 'Futura', sans-serif;
}

.art-event-link {
    display: inline-block;
    margin-top: 16px;
    padding: 10px 18px;
    border: 1px solid #d7d7d7;
    border-radius: 40px;
    background: #e5f2f1;
    color: #212121;
    font-size: 16px;
    font-weight: 600;
    text-decoration: none;
    transition: all 0.25s ease;
    letter-spacing: 1px;
}

.art-event-link:hover {
    background: #BDECEA;
    border-color: #d7d7d7;
    color: #212121;
}

.artist-cv-link {
    color: inherit;
    text-decoration: underline;
    text-underline-offset: 3px;
}

.artist-cv-link:hover {
    opacity: 0.8;
    color: #212121;
}

.no-price .purchase-btn {
  display: none !important;
}

@media (max-width: 991px) {
    .art-collecting-grid {
        grid-template-columns: 1fr;
    }

    .art-event-image img {
        height: 200px;
    }
}

@media (max-width: 991px) {
    .calendar-filters {
        flex-direction: column;
        gap: 15px;
    }

    .calendar-filter-select {
        width: 100%;
    }
    
    .calendar-card-main {
        grid-template-columns: 1fr;
    }

    .calendar-card-image img {
        min-height: 400px;
    }

    .calendar-card-content,
    .calendar-related-inner {
        padding: 24px;
    }

    .calendar-card-title {
        font-size: 28px;
    }
    
    .calendar-card-subtitle {
        font-size: 22px;
    }

    .calendar-detail-grid,
    .calendar-event-grid {
        grid-template-columns: 1fr;
    }
    
    .calendar-event-meta { font-size: 16px !important; }
    
    .calendar-card-main {
        grid-template-columns: 1fr;
    }

    .calendar-card-image {
        max-height: 600px;
        overflow: hidden;
    }

    .calendar-card-image img {
        width: 100%;
        height: 800px;
        min-height: unset;
        object-fit: cover;
    }
}

@media (max-width: 575px) {
    .calendar-card-image {
        max-height: 260px;
    }

    .calendar-card-image img {
        height: 250px;
    }
}

.past-exhibit-gallery-toggle {
    width: auto !important;
    min-width: 150px !important;
    height: 46px !important;
    padding: 0 18px !important;
    border-radius: 999px !important;

    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-direction: row !important;
    gap: 10px !important;

    right: 22px !important;
    bottom: 22px !important;

    white-space: nowrap !important;
    line-height: 1 !important;
}

.past-exhibit-gallery-toggle .artist-gallery-toggle-text {
    display: inline-block !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    letter-spacing: 0.04em !important;
    text-transform: uppercase !important;
    white-space: nowrap !important;
    line-height: 1 !important;
}

.past-exhibit-gallery-toggle i {
    font-size: 14px !important;
    line-height: 1 !important;
}

/* ********** End Gallery Calendar ********** */

/* Blockquote background animation */
@keyframes gradientborders {
    0%{background-position:0% 25%}
    50%{background-position:100% 76%}
    100%{background-position:0% 25%}
}

/* Blockquote header */
.stories-quote h1 {
    position: relative;
    background-color: #ffffff;
    color: #000000;
    font-size: 40px;
    text-align: center;
    font-weight: normal;
    line-height: 1;
    margin: 0;
    padding: 30px 30px 5px 30px;
}

/* Blockquote subheader */
.stories-quote h4 {
    position: relative;
    color: #3f83be;
    background-color: #ffffff;
    text-transform: uppercase;
    font-size: 1.4rem;
    text-align: center;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 1px;
    margin: 0;
    padding: 20px 20px 3em 20px;
}

.title-shadow { text-shadow: 2px 2px #000 !important; }

.h-245px { height: 245px; }
.h-250px { height: 250px; }
.h-290px { height: 290px; }
.h-285px { height: 285px; }
.h-315px { height: 315px; }

.h-170px { height: 170px; }
.h-210px { height: 210px; }
.h-240px { height: 240px; }
.h-260px { height: 260px; }

.font-weight-600 { font-weight: 600 !important; }

.text-extra-large {
    font-size: 25px;
    line-height: 26px;
}

.text-xxl {
    font-size: 60px;
    line-height: 70px;
}

.link-iris-blue, .link-iris-blue:hover {
    color: #00b4b1 !important;
}

.btn.btn-banner {
    font-size: 22px;
    padding: 0.6rem 1rem !important;
}

.list-style-3 li {
  position: relative;
  padding: 0 0 0 22px;
  margin: 0 0 11px 0;
  font-size: 21px;
  color: #232323;
  letter-spacing: 0.8px !important;
  font-family: "Montserrat", sans-serif !important;
}
.list-style-3 li:before {
  height: 2px;
  background-color: #00b4b1 !important;
}

.list-style-custom li {
  position: relative;
  padding: 0 0 0 15px;
  margin: 0 0 5px 0;
  font-size: 21px;
  color: #232323;
  letter-spacing: 0.8px !important;
  font-family: "Lato", sans-serif !important;
}

.list-style-custom li:before {
    content: "";
    width: 10px;
    height: 2px;
    background-color: #00b4b1 !important;
    position: absolute;
    top: 11px;
    left: 0;
}

.list-style-custom li { list-style-type: none; }

.list-style-custom-2 li::marker { color: transparent; display: none !important; }

.list-style-custom-2 li {
  position: relative;
  padding: 0 0 0 15px;
  /*margin: 0 0 5px 0;*/
  font-size: 21px;
  color: #232323;
  letter-spacing: 0.8px !important;
  font-family: "Lato", sans-serif !important;
}

.list-style-custom-2 li:before {
    content: "";
    width: 10px;
    height: 2px;
    background-color: #00b4b1 !important;
    position: absolute;
    top: 11px;
    left: 0;
}

.list-style-custom-2 li::marker { color: transparent; display: none !important; }

.list-style-custom-futura li::marker,
.list-style-custom-futura-inner li::marker
{ color: transparent; display: none !important; }

.list-style-custom-futura li,
.list-style-custom-futura-inner li {
  position: relative;
  padding: 3px 0 0 15px;
  /*margin: 0 0 5px 0;*/
  font-size: 20px;
  color: #232323;
  /*letter-spacing: 0.8px !important;*/
  font-family: "Futura", sans-serif !important;
}

.list-style-custom-futura li:before {
    content: "";
    width: 10px;
    height: 2px;
    background-color: #00b4b1 !important;
    position: absolute;
    top: 11px;
    left: 0;
}

.list-style-custom-futura-inner li:before {
    content: "";
    width: 10px;
    height: 2px;
    background-color: #000 !important;
    position: absolute;
    top: 11px;
    left: 0;
}

.list-style-custom-futura li::marker,
.list-style-custom-futura-inner li::marker { color: transparent; display: none !important; }

.border-color-iris-blue { border-color:#00b4b1 !important; }

.custom-icon { color: #232323; }
.custom-icon:hover { color: #fff; }

.custom-bg { background-color: #fff; }
.custom-bg:hover { background-color: #00b4b1; }

.text-iris-blue {
    color: #00b4b1;
}

.table td, .table th {
    font-size: 21px;
    font-family: "Lato", sans-serif !important;
}

.bg-iris-blue {
    background-color: #00b4b1;
}

.letter-spacing-futura { letter-spacing: 1px !important; }

.gallery{
	width: 100%;
	overflow: hidden;
		}

.list-img {
	display: flex;
	overflow: hidden;
	width: 100%;
	padding-top: 20px;
}

.list-img img {
    width: 200px;
    height: 100px;
    padding-right: 20px;
    cursor: pointer;
}
.main-img {
	display: flex;
    position: relative;
    width: 100%;

}

.col-main{
		position: relative;
		width: 100%;
	}
	.main-img .item-img{
		    min-width: 100%;
	}


	img.item-list{
		opacity: 0.3;
	}
.item-list.active{
opacity: 1;
}
.nutslide{
	position: absolute;
    top: 38%;
    transform: translateY(-50%);
    width: 100%;
}


span.next{
	right: 15px;
    position: absolute;
    font-size: 28px;
    color: #fff;
    width: 35px;
    height: 36px;
    background: #373737;
    padding-left: 8px;
    padding-right: 10px;
    border-radius: 4px;
    padding-top: 4px;
    cursor: pointer;
}

span.prev {
    left: 15px;
    position: absolute;
    font-size: 28px;
    color: #fff;
    width: 35px;
    height: 36px;
    background: #373737;
    padding-left: 8px;
    padding-right: 10px;
    border-radius: 4px;
    padding-top: 4px;
    cursor: pointer;
}

.main {
	position: relative;
	width: 100%;
}

.img-thumbnail {
	display: flex;
    position: relative;
	width: 100%;
}

.text-small {
    font-size: 14px;
    line-height: 20px;
}

.icon-list {
    list-style: none;
    margin: 0; 
    padding: 0;
    font-size: 20px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    color: #232323;
}

.icon-list li {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 0 10px 0 15px; 
    margin: 0 0 15px 0;
}

.icon-list img {
    width: 30px;
    height: 30px;
}
    
.icon-list .carehope {
    width: 40px;
    height: 40px;
}

.column {
  border: 2px solid transparent;
  transition: border 0.3s ease;
}

.column.spotlight {
  border-color: yellow;
}

.pointer {
    cursor: pointer;
}

.info-card {
    border: 2px solid #d4e7d4;
    border-radius: 10px;
    padding: 20px;
}

.info-row {
  display: flex;
  align-items: center;
  padding: 10px 0;
  border-bottom: 1px solid #d4e7d4;
}
.info-row:last-child {
  border-bottom: none;
}
.info-icon {
  font-size: 24px;
  color: #6ba96b;
  margin-right: 15px;
}
.info-text {
  font-size: 16px;
}
.info-text span {
  font-weight: bold;
}

/* ********** Start CARE Gallery Digital Guide ********** */

.collector-flipbook-section {
    width: 100%;
    padding: 40px 0;
    background: #f7f6f3;
    overflow-x: hidden;
}

.book-wrap {
    width: 100%;
    max-width: 1500px;
    margin: 0 auto;
    display: flex;
    justify-content: center;
    overflow: hidden;
}

#flipbook {
    width: 1400px;
    height: 800px;
}

.page {
     width: 1400px;
    height: 800px;
    background: #fff;
    overflow: hidden;
}

.artwork-spread {
    width: 100%;
    height: 100%;
    display: grid;
    grid-template-columns: 50% 50%;
}

/* LEFT PAGE */
.art-left-page {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 44px 34px;
    box-sizing: border-box;
    background: #fff;
}

.art-left-page img {
    width: 100%;
    height: 710px;
    object-fit: cover;
    object-position: center;
    box-shadow: 0 14px 30px rgba(0,0,0,0.22);
}

/* RIGHT PAGE */
.art-right-page {
    background: #fff;
    padding: 46px 54px 34px;
    box-sizing: border-box;
}

.art-info {
    height: 100%;
    display: flex;
    flex-direction: column;
}

.art-kicker {
    text-align: center;
    color: #a77a21;
    font-family: "Futura", sans-serif !important;
    text-transform: uppercase;
    letter-spacing: 0.34em;
    font-size: 16px;
    margin-bottom: 8px;
    position: relative;
}

.art-kicker::before,
.art-kicker::after {
    content: "";
    display: inline-block;
    width: 48px;
    height: 1px;
    background: #c9aa68;
    vertical-align: middle;
    margin: 0 14px;
}

.art-subtitle {
    text-align: center;
    text-transform: uppercase;
    font-family: "Futura", sans-serif !important;
    letter-spacing: 0.22em;
    color: #333;
    font-size: 13px;
    margin-bottom: 42px;
}

.art-title {
    font-family: "Optima Demi Bold", serif;
    font-size: 40px;
    line-height: 1.02;
    text-transform: uppercase;
    text-align: center;
    color: #000;
    margin: 0 0 28px;
}

.gold-divider {
    position: relative;
    height: 1px;
    background: #c9aa68;
    margin-bottom: 30px;
}

.gold-divider::after {
    content: "";
    width: 9px;
    height: 9px;
    background: #a77a21;
    position: absolute;
    left: 50%;
    top: -4px;
    transform: translateX(-50%) rotate(45deg);
}

.meta-list {
    font-family: "Futura", sans-serif !important;
    /*border-top: 1px solid #ddd;*/
}

.meta-row {
    display: grid;
    grid-template-columns: 70px 1fr;
    gap: 0px;
    align-items: center;
    padding: 14px 0;
    border-bottom: 1px solid #ddd;
}

.meta-icon {
    width: 46px;
    height: 46px;
    border: 1px solid #b8913a;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #a77a21;
    font-size: 20px;
}

.meta-label {
    font-size: 15px;
    font-weight: 700;
    text-transform: uppercase;
    color: #111;
}

.meta-value {
    font-size: 18px;
    color: #333;
    margin-top: 3px;
}

.art-price {
    font-family: "Optima Demi Bold", serif;
    font-size: 30px;
    font-weight: 600;
    color: #000;
    margin: 18px 0 35px;
}

.purchase-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 18px;
    width: 100%;
    background: linear-gradient(135deg, #a77a21, #bd8e2b);
    color: #fff;
    text-decoration: none;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    font-weight: 700;
    font-size: 17px;
    padding: 12px 24px;
    border-radius: 6px;
    box-shadow: 0 8px 18px rgba(0,0,0,0.2);
}

.purchase-btn i {
    font-size: 24px;
}

.purchase-btn:hover {
    background: #000;
    color: #fff;
    text-decoration: none;
}

.support-note {
    margin-top: 24px;
    background: #f5efe4;
    padding: 16px 22px;
    display: grid;
    grid-template-columns: 44px 1fr;
    gap: 16px;
    align-items: center;
    color: #444;
    font-size: 15px;
    line-height: 1.35;
    font-family: "Futura", sans-serif !important;
}

.support-note i {
    font-size: 30px;
    color: #a77a21;
}

.book-footer {
    margin-top: auto;
    display: flex;
    justify-content: space-between;
    gap: 18px;
    font-size: 12px;
    color: #444;
    padding-top: 22px;
}

.book-footer span {
    display: flex;
    align-items: center;
    gap: 8px;
}

.book-footer i {
    font-size: 17px;
}

/* CONTROLS */
.book-controls {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 14px;
    margin-top: 24px;
}

.book-controls button {
    background: #000;
    color: #fff;
    border: 0;
    padding: 11px 20px;
    font-weight: 700;
    text-transform: uppercase;
    cursor: pointer;
}

#pageCounter {
    font-weight: 700;
}

/* MOBILE */
@media (max-width: 768px) {
    #flipbook {
        width: 360px;
        height: 520px;
    }

    .page {
        width: 360px;
        height: 520px;
    }
    
    .catalog-logo img {
        width: 55% !important;
    }
    
    .catalog-cover-box {
        padding: 40px 20px !important;
    }

    .art-left-page {
        padding: 22px;
    }

    .art-left-page img {
        height: 460px;
    }

    .art-right-page {
        padding: 28px 26px;
    }

    .art-title {
        font-size: 34px;
    }

    .art-kicker {
        font-size: 12px;
        letter-spacing: 0.24em;
    }

    .art-subtitle {
        font-size: 10px;
        letter-spacing: 0.16em;
        margin-bottom: 24px;
    }

    .art-price {
        font-size: 38px;
    }

    .purchase-btn {
        font-size: 12px;
        padding: 14px;
    }

    .support-note,
    .book-footer {
        display: none;
    }
    
    .statement-slide .statement-top p,
    .statement-slide blockquote,
    .editorial-slide p {
        font-size: 17px !important;
    }
    
    .statement-slide .scripture-reference,
    .editorial-signature {
        font-size: 16px !important;
    }
    
    .editorial-slide h3 {
        font-size: 24px !important;
    }
    
    .visual-art-intro h2 {
        font-size: 25px !important;
    }
    
    .statement-slide h2 {
        font-size: 25px !important;
    }
    
    .statement-slide h3 {
        font-size: 21px !important;
    }
    
    .artist-bio-image {
        max-width: 220px !important;
    }
    
    .visual-art-top {
        gap: 0px !important;
    }

}

/* Slide version */
.artSwiper {
    width: 100%;
    max-width: 1400px;
    height: 800px;
    margin: 0 auto;
    background: #fff;
    box-shadow: 0 18px 45px rgba(0,0,0,0.12);
}

.swiper-slide {
    background: #fff;
}

.artwork-spread {
    width: 100%;
    height: 100%;
    display: grid;
    grid-template-columns: 50% 50%;
}

.art-left-page,
.art-right-page {
    height: 100%;
}

.art-slider-controls {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 18px;
  margin-top: 26px;
}

.art-slider-controls button {
  background: #000;
  color: #fff;
  border: 0;
  padding: 8px 35px;
  font-size: 15px;
  border-radius: 6px;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  cursor: pointer;
  transition: all 0.25s ease;
}

.art-slider-controls button:hover {
  background: #a77a21;
}

.art-page-counter {
  font-weight: 700;
  font-size: 17px;
}

/* for intro and final slides */
.catalog-cover-slide,
.catalog-closing-slide,
.editorial-slide {
  width: 100%;
  height: 100%;
  background: #eef3f1;
  box-sizing: border-box;
  padding: 70px 90px;
  font-family: "Optima Demi Bold", serif;
  color: #111;
}

.catalog-cover-slide,
.catalog-closing-slide {
  background-image: linear-gradient(rgba(238,243,241,0.78), rgba(238,243,241,0.78)),
    url("/assets/images/caregallery/gift-of-grace/catalog-bg.jpg");
  background-size: cover;
  background-position: center;
  text-align: center;
}

.catalog-logo img {
  max-width: 360px;
  width: 45%;
  height: auto;
  margin-bottom: 35px;
}

.catalog-cover-box {
  background: #f3eadc;
  padding: 48px 60px;
  max-width: 980px;
  margin: 0 auto 28px;
}

.catalog-cover-box h1 {
  font-size: 68px;
  line-height: 1;
  margin: 0 0 30px;
}

.catalog-cover-box h2 {
  font-size: 42px;
  line-height: 1.15;
  margin: 0 0 34px;
}

.catalog-cover-box h3 {
  font-size: 42px;
  line-height: 1.15;
  margin: 0;
}

.catalog-support-line {
  font-family: "Futura", sans-serif !important;
  font-size: 16px;
  font-style: italic;
}

.editorial-slide {
  font-family: "Optima Demi Bold", serif;
  font-size: 26px;
  line-height: 1.35;
  text-align: left;
}

.editorial-slide h2 {
  font-size: 46px;
  margin: 0 0 15px;
}

.editorial-slide h3 {
  font-size: 28px;
  margin: 0 0 22px;
  font-style: italic;
}

.editorial-slide p {
  margin: 0 0 22px;
}

.statement-top,
.editorial-heading-row {
  display: grid;
  grid-template-columns: 360px 1fr;
  gap: 42px;
  align-items: center;
  margin-bottom: 35px;
}

.statement-top img,
.editorial-heading-row img {
  width: 100%;
  max-height: 340px;
  object-fit: cover;
}

.statement-slide blockquote {
  font-size: 20px;
  line-height: 1.35;
  margin: 28px 0;
}

.scripture-reference {
  text-align: right;
}

.artist-bio-image {
  float: right;
  width: 380px;
  margin: 0 0 24px 38px;
  text-align: center;
  background: #f8f8f8;
  padding: 12px;
}

.artist-bio-image img {
  width: 100%;
  height: auto;
  display: block;
}

.artist-bio-image strong {
  display: block;
  margin-top: 10px;
  font-size: 28px;
}

.editorial-signature {
  margin-top: 40px;
  font-weight: 700;
}

.catalog-contact {
  font-family: "Futura", sans-serif !important;
  font-size: 22px;
  font-weight: 700;
}

.catalog-contact p {
  margin: 4px 0;
}

.visual-art-top {
  display: grid;
  grid-template-columns: 360px 1fr;
  gap: 40px;
  align-items: start;
  margin-bottom: 26px;
}

.visual-art-photo img {
  width: 100%;
  max-height: 360px;
  object-fit: cover;
  display: block;
}

.visual-art-intro h2 {
  margin: 0 0 20px;
  font-size: 46px;
  line-height: 1.05;
}

.visual-art-intro p {
  margin: 0;
}

.visual-art-body p {
  margin: 0 0 20px;
}
/* end for intro/final slides */

/* Start same fixed frame for intro, artwork, and final slides */
.artSwiper {
  max-width: 1400px;
  height: 800px;
}

.swiper-slide {
  width: 100%;
  height: 800px;
  background: #fff;
  overflow: hidden;
}

.catalog-cover-slide,
.catalog-closing-slide,
.editorial-slide {
  width: 100%;
  height: 800px;
  box-sizing: border-box;
  overflow: hidden;
}

.artist-bio-slide {
  /*display: flex;*/
  flex-direction: column;
  justify-content: space-between;
}

.artist-bio-top {
  display: grid;
  grid-template-columns: 1.1fr 0.9fr;
  gap: 42px;
  align-items: start;
  margin-bottom: 28px;
}

.artist-bio-copy h2 {
  font-size: 46px;
  margin: 0 0 22px;
}

.artist-bio-copy p {
  margin: 0 0 18px;
}

.artist-bio-card {
  background: #f7f7f7;
  padding: 16px;
  text-align: center;
}

.artist-bio-card img {
  width: 100%;
  height: auto;
  display: block;
}

.artist-bio-caption {
  margin-top: 14px;
  font-size: 26px;
  font-weight: 700;
}

.artist-bio-body p {
  margin: 0 0 18px;
}

.artist-statement-slide h2 {
  font-size: 46px;
  margin: 0 0 26px;
}

.artist-statement-slide p {
  margin: 0 0 22px;
}

/* End same fixed frame for intro, artwork, and final slides */

@media (max-width: 767px) {
  .art-kicker {
    font-size: 12px !important;
  }

  .art-subtitle {
    font-size: 11px !important;
  }

  .art-title {
    font-size: 28px !important;
  }

  .meta-icon {
    font-size: 18px !important;
  }

  .meta-label {
    font-size: 17px !important;
  }

  .meta-value {
    font-size: 17px !important;
  }

  .art-price {
    font-size: 26px !important;
  }

  .purchase-btn {
    font-size: 15px !important;
  }

  .support-note {
    font-size: 15px !important;
  }

  .support-note i {
    font-size: 24px !important;
  }

  .art-slider-controls button {
    font-size: 13px !important;
  }

  .art-page-counter {
    font-size: 17px !important;
  }
  
  .artwork-spread {
    padding: 12px 10px !important;
  }

  .art-left-page {
    margin-bottom: 22px !important;
  }

  .art-left-page img {
    width: 100% !important;
    max-width: 100% !important;
    max-height: 520px !important;
    object-fit: contain !important;
    box-shadow: 0 10px 24px rgba(0,0,0,0.14);
  }

  .artSwiper,
  .swiper-slide {
    background: #fff !important;
  }
  
  .statement-slide {
    padding: 24px 18px !important;
  }

  .statement-slide .statement-top img {
    max-width: 200px !important;
    margin-bottom: 20px !important;
  }
  
  .visual-art-photo img {
      max-width: 200px !important;
      margin-bottom: 20px !important;
  }

  .statement-slide h2 {
    font-size: 30px !important;
    line-height: 1.08 !important;
    margin-bottom: 12px !important;
  }

  .statement-slide h3 {
    font-size: 20px !important;
    line-height: 1.35 !important;
    margin-bottom: 18px !important;
  }

  .statement-slide .statement-top p {
    font-size: 17px !important;
    line-height: 1.5 !important;
  }

  .statement-slide blockquote {
    font-size: 18px !important;
    line-height: 1.5 !important;
    padding-left: 16px !important;
    margin: 24px 0 16px !important;
  }

  .statement-slide .scripture-reference {
    font-size: 16px !important;
    text-align: left !important;
  }
  
  .artist-bio-image, .visual-art-photo img,  {
      max-width: 200px !important;
      margin: 0 auto 20px !important;
  }
}

@media (max-width: 1180px) {
  .artSwiper {
    width: 100%;
    height: auto !important;
    max-width: 100%;
    overflow: hidden;
  }

  .swiper-slide {
    height: auto !important;
  }

  .artwork-spread {
    display: block !important;
    width: 100%;
    height: auto !important;
    padding: 24px 18px;
    box-sizing: border-box;
  }

  .art-left-page,
  .art-right-page {
    width: 100% !important;
    height: auto !important;
    padding: 0 !important;
  }

  .art-left-page {
    margin-bottom: 28px;
  }

  .art-left-page img {
    width: 100%;
    height: auto !important;
    max-height: 430px;
    object-fit: contain !important;
    object-position: center;
    display: block;
    margin: 0 auto;
  }

  .art-right-page {
    text-align: center;
  }

  .art-info {
    height: auto !important;
    display: block !important;
  }

  .art-kicker {
    font-size: 15px;
    letter-spacing: 0.22em;
    margin-bottom: 0px;
  }

  .art-kicker::before,
  .art-kicker::after {
    width: 32px;
    margin: 0 8px;
  }

  .art-subtitle {
    font-size: 15px;
    letter-spacing: 0.14em;
    margin-bottom: 24px;
  }

  .art-title {
    font-size: 32px !important;
    line-height: 1.05;
    margin-bottom: 22px;
  }

  .gold-divider {
    margin-bottom: 22px;
  }

  .meta-row {
    grid-template-columns: 54px 1fr;
    gap: 16px;
    text-align: left;
    padding: 14px 0;
  }

  .meta-icon {
    width: 44px;
    height: 44px;
    font-size: 18px;
  }

  .meta-label {
    font-size: 22px;
  }

  .meta-value {
    font-size: 22px;
    line-height: 1.25;
  }

  .art-price {
    font-size: 30px;
    line-height: 1.1;
    margin: 22px 0 30px 0;
    text-align: center;
  }

  .purchase-btn {
    width: 100%;
    padding: 15px 18px;
    font-size: 18px;
    gap: 10px;
    box-sizing: border-box;
  }

  .support-note {
    display: grid;
    grid-template-columns: 34px 1fr;
    text-align: left;
    font-size: 19px;
    padding: 14px;
    margin-top: 18px;
  }

  .support-note i {
    font-size: 24px;
  }

  .book-footer {
    display: none;
  }

  .art-slider-controls {
    margin-top: 18px;
    gap: 12px;
    padding: 0 12px 24px;
  }

  .art-slider-controls button {
    padding: 8px 35px;
    font-size: 15px;
    border-radius: 6px;
  }

  .art-page-counter {
    font-size: 17px;
  }
  
  .visual-art-top {
    grid-template-columns: 1fr;
    gap: 24px;
  }

  .visual-art-photo {
    text-align: center;
  }

  .visual-art-photo img {
    max-width: 280px;
    width: 100%;
    margin: 0 auto;
  }

  .visual-art-intro h2 {
    text-align: center;
  }
  
  .catalog-cover-slide,
  .catalog-closing-slide,
  .editorial-slide {
      min-height: 800px;
      height: auto;
      padding: 34px 24px;
    }
    
    .visual-art-intro h2 {
        font-size: 30px !important;
    }
    
    .statement-slide {
    padding: 34px 26px !important;
    height: auto !important;
  }

  .statement-slide .statement-top {
    display: block !important;
    margin-bottom: 28px !important;
  }

  .statement-slide .statement-top img {
    width: 100% !important;
    max-width: 280px;
    height: auto !important;
    display: block;
    margin: 0 auto 24px !important;
  }

  .statement-slide h2 {
    font-size: 30px;
    line-height: 1.05 !important;
    text-align: center !important;
    margin: 0 0 14px !important;
  }

  .statement-slide h3 {
    font-size: 25px;
    line-height: 1.3 !important;
    text-align: center !important;
    margin: 0 0 22px !important;
  }

  .statement-slide .statement-top p {
    font-size: 19px;
    line-height: 1.45 !important;
    text-align: left !important;
    margin: 0 !important;
  }

  .statement-slide blockquote {
    font-size: 19px;
    line-height: 1.45 !important;
    margin: 28px 0 18px !important;
    padding-left: 22px !important;
  }

  .statement-slide .scripture-reference {
    font-size: 18px;
    line-height: 1.35 !important;
    text-align: right !important;
  }
  
  .artist-bio-copy h2,
  .artist-statement-slide h2 {
    font-size: 28px;
  }

  .artist-bio-caption {
    font-size: 20px !important;
  }

  .artist-bio-copy p,
  .artist-bio-body p,
  .artist-statement-slide p {
    font-size: 17px !important;
    line-height: 1.5 !important;
  }
  
   .artist-bio-image {
    float: none !important;
    width: 100%;
    max-width: 280px;
    margin: 0 auto 28px !important;
    text-align: center;
  }

  .artist-bio-image img {
    display: block;
    margin: 0 auto;
  }
    
    .editorial-slide p {
        font-size: 19px;
    }
    
    .artist-bio-image strong {
      display: block;
      margin-top: 10px;
      font-size: 20px;
    }
    
    .catalog-cover-box h3 {
        font-size: 30px !important;
    }
    
    .catalog-cover-box h2 {
        font-size: 38px !important;
    }
    
    .catalog-cover-box h1 {
        font-size: 45px !important;
    }
}

@media (min-width: 768px) and (max-width: 1180px) {
  .artwork-spread {
    padding: 28px 40px;
  }

  .art-left-page {
    margin-bottom: 34px;
  }

  .art-left-page img {
    width: auto;
    max-width: 100%;
    max-height: 420px;
    object-fit: contain !important;
  }

  .art-right-page {
    max-width: 720px;
    margin: 0 auto;
  }
  
  .artist-slider-track {
    height: 500px;
  }
}

/* Artwork slides keep the premium fixed frame */
.artwork-swiper-slide {
  height: 800px !important;
}

.artwork-swiper-slide .artwork-spread {
  height: 800px !important;
}

/* Intro and final slides follow their content height */
.custom-swiper-slide {
  height: auto !important;
}

.custom-swiper-slide .editorial-slide,
.custom-swiper-slide .catalog-cover-slide,
.custom-swiper-slide .catalog-closing-slide {
  height: auto !important;
  min-height: unset !important;
  overflow: visible !important;
}

/* Let Swiper wrapper adapt */
.artSwiper,
.swiper-wrapper {
  /*height: auto !important;*/
}

@media (min-width: 1181px) {
  .custom-swiper-slide .editorial-slide,
  .custom-swiper-slide .catalog-cover-slide,
  .custom-swiper-slide .catalog-closing-slide {
    min-height: 800px;
  }
}


.art-slider-controls-top {
  display: none;
}

@media (max-width: 767px) {
  .art-slider-controls-top {
    display: flex !important;
    margin: 0 auto 18px;
    padding: 0 12px;
  }

  .art-slider-controls:not(.art-slider-controls-top) {
    margin-top: 18px;
  }
}

/* ********** End CARE Gallery Digital Guide ********** */

/*.list-style-3 li:before {content: ""; width: 10px; height: 1px; background-color: var(--base-color); position: absolute; top: 11px; left: 0;}*/

@media (max-width: 767px) {
    .mobile-height .full-screen, .swiper-full-screen .full-screen {
        height: 550px !important;
        min-height: 480px !important;
    }
}

/* Extra small devices (phones, less than 576px) */
@media (max-width: 575.98px) {
    .navbar>.container-fluid { display: contents; }
    header nav .navbar-nav.text-normal > li > a {
        font-weight: 500;
        font-size: 13px;
    }
    header a.logo img { max-height: 55px !important; }
    .h-section { padding: 35px 0 !important; }
    .same-height { height: auto !important; }
    .swiper-button-prev { left: 5rem; }
    .swiper-button-next { right: 5rem; }
    .bg-insights { height: auto !important; }
    nav.navbar.bootsnav .navbar-nav { padding: 20px !important; }
    nav.navbar.bootsnav .navbar-nav li { padding: 10px 0 !important; }
    .services-title { font-size: 22px !important; }
    #c4kMap, #ffhMap { height: 300px; }
    /*.cover-background { background-position: top !important; }*/
    .cover-bg-left { background-position: 15% !important; }
    p, .icon-list { font-size: 18px !important; }
    h5 { font-size: 25px !important; }
    .rounded-pill { border-radius: .25rem !important; }
    .program-care-4-kids { background-image: url(../images/program-care-4-kids-medium.jpg); background-position: top !important; }
    .program-legal-clinic { background-image: url(../images/program-legal-clinic-medium.jpg); background-position: top !important; }
    .program-counseling-center { background-image: url(../images/program-counseling-center-medium.jpg); background-position: top !important; }
    .program-financial-empowerment { background-image: url(../images/program-financial-empowerment-medium.jpg); background-position: top !important; }
    .program-capacity-builders { background-image: url(../images/program-capacity-builders-medium.jpg); background-position: top !important; }
    .location-font { font-size: 21px !important; line-height: 1.1em; }
    .stories-quote h1 { font-size: 25px; line-height: 1.8rem; }
    .sm-h-265px { height: 265px !important; }
    .sm-h-160px { height: 160px !important; }
    .sm-h-130px { height: 130px !important; }
    .sm-h-125px { height: 125px !important; }
    .menu-level-1-tooltip, .menu-level-1-arrow, .menu-level-2-tooltip, .menu-level-2-arrow { display: none !important; }
    nav.navbar.bootsnav ul.nav li.dropdown.simple-dropdown > .dropdown-menu {
        background-color: transparent !important;
    }
    nav.navbar.navbar-default ul li.dropdown .dropdown-menu li > a {
        color: #FFFFFF !important;
    }
    nav.navbar.bootsnav ul.nav li.dropdown.simple-dropdown.open ul.dropdown-menu li > a.dropdown-toggle {
        border-bottom: 0px solid rgba(255, 255, 255, 0.06);
    }
    nav.navbar.bootsnav .navbar-nav { background-color: rgba(23, 23, 23) !important; }
    
    .on-mobiles {
        background-color: rgba(23, 23, 23) !important;
        border: rgba(23, 23, 23) !important;
    }

    .on-mobiles a { left: 15px !important; }

    .on-mobiles a i { display: none !important; }

    nav.navbar.bootsnav ul.nav li.dropdown.simple-dropdown > .dropdown-menu {
        background-color: rgba(23, 23, 23) !important;
    }

    nav.navbar.bootsnav ul.nav li.dropdown.simple-dropdown.open ul.dropdown-menu li > a.dropdown-toggle,
    nav.navbar.navbar-default ul li.dropdown .dropdown-menu li > a { color: #FFF !important; }

    .no-border-mobiles { border: none !important; }
    
    .text-xxl { font-size: 50px !important; line-height: 60px !important; }
    
    .icon-list img {
        width: 40px;
        height: 40px;
    }
    
    .icon-list .carehope {
        width: 60px;
        height: 60px;
    }
    
}

/* Small devices (phones, 576px and up) */
@media (min-width: 576px) and (max-width: 767.98px) {
    header nav .navbar-nav.text-normal > li > a {
        font-weight: 500;
        font-size: 13px;
    }
    header a.logo img { max-height: 60px !important; }
    .h-section { padding: 35px 0 !important; }
    nav.navbar.bootsnav .navbar-nav { padding: 20px !important; }
    nav.navbar.bootsnav .navbar-nav li { padding: 10px 0 !important; }
    .services-title { font-size: 22px !important; }
    #c4kMap, #ffhMap { height: 300px; }
    .cover-bg-left { background-position: 15% !important; }
    p, .icon-list { font-size: 18px !important; }
    h5 { font-size: 25px !important; }
    .rounded-pill { border-radius: .25rem !important; }
    .program-care-4-kids { background-image: url(../images/program-care-4-kids-medium.jpg); background-position: top !important; }
    .program-legal-clinic { background-image: url(../images/program-legal-clinic-medium.jpg); background-position: top !important; }
    .program-counseling-center { background-image: url(../images/program-counseling-center-medium.jpg); background-position: top !important; }
    .program-financial-empowerment { background-image: url(../images/program-financial-empowerment-medium.jpg); background-position: top !important; }
    .program-capacity-builders { background-image: url(../images/program-capacity-builders-medium.jpg); background-position: top !important; }
    .location-font { font-size: 21px !important; line-height: 1.1em; }
    .stories-quote h1 { font-size: 35px; line-height: 2.5rem; }
    .sm-h-265px { height: 265px !important; }
    .sm-h-160px { height: 160px !important; }
    .sm-h-130px { height: 130px !important; }
    .sm-h-125px { height: 125px !important; }
    .menu-level-1-tooltip, .menu-level-1-arrow, .menu-level-2-tooltip, .menu-level-2-arrow { display: none !important; }
    nav.navbar.bootsnav ul.nav li.dropdown.simple-dropdown > .dropdown-menu {
        background-color: transparent !important;
    }
    nav.navbar.navbar-default ul li.dropdown .dropdown-menu li > a {
        color: #FFFFFF !important;
    }
    nav.navbar.bootsnav ul.nav li.dropdown.simple-dropdown.open ul.dropdown-menu li > a.dropdown-toggle {
        border-bottom: 0px solid rgba(255, 255, 255, 0.06);
    }
    nav.navbar.bootsnav .navbar-nav { background-color: rgba(23, 23, 23) !important; }
    
    .on-mobiles {
        background-color: rgba(23, 23, 23) !important;
        border: rgba(23, 23, 23) !important;
    }

    .on-mobiles a { left: 15px !important; }

    .on-mobiles a i { display: none !important; }

    nav.navbar.bootsnav ul.nav li.dropdown.simple-dropdown > .dropdown-menu {
        background-color: rgba(23, 23, 23) !important;
    }

    nav.navbar.bootsnav ul.nav li.dropdown.simple-dropdown.open ul.dropdown-menu li > a.dropdown-toggle,
    nav.navbar.navbar-default ul li.dropdown .dropdown-menu li > a { color: #FFF !important; }

    .no-border-mobiles { border: none !important; }
    
    .icon-list img {
        width: 40px;
        height: 40px;
    }
    
    .icon-list .carehope {
        width: 60px;
        height: 60px;
    }
}

/* Medium devices (tablets, 768px and up) */
@media (min-width: 768px) and (max-width: 991.98px) {
    header nav .navbar-nav.text-normal > li > a {
        font-weight: 500;
        font-size: 13px;
    }
    header a.logo img { max-height: 60px !important; }
    .swiper-button-next, .swiper-button-prev { top: 97%; }
    .swiper-button-prev { left: 14rem; }
    .swiper-button-next { right: 14rem; }
    nav.navbar.bootsnav .navbar-nav { padding: 20px !important; }
    nav.navbar.bootsnav .navbar-nav li { padding: 10px 0 !important; }
    .text-md { font-size: 14px !important; }
    #c4kMap, #ffhMap { height: 400px; }
    h5 { font-size: 26px !important; }
    .mission-sign { font-size: 24px !important; }
    .rounded-pill { border-radius: .25rem !important; }
    .program-care-4-kids { background-image: url(../images/program-care-4-kids-medium.jpg); background-position: top !important; }
    .program-legal-clinic { background-image: url(../images/program-legal-clinic-medium.jpg); background-position: top !important; }
    .program-counseling-center { background-image: url(../images/program-counseling-center-medium.jpg); background-position: top !important; }
    .program-financial-empowerment { background-image: url(../images/program-financial-empowerment-medium.jpg); background-position: top !important; }
    .program-capacity-builders { background-image: url(../images/program-capacity-builders-medium.jpg); background-position: top !important; }
    .location-font { font-size: 21px !important; line-height: 1.1em; }
    .stories-quote h1 { font-size: 24px; line-height: 1.8rem; }
    .stories-quote:after { font-size: 16em; left: calc(50% - 3rem); }
    .h-315px { height: 420px; }
    .h-285px { height: 370px; }
    .h-245px { height: 310px; }
    .h-290px { height: 355px; }
    .h-250px { height: 320px; }
    
    .on-mobiles {
        background-color: rgba(23, 23, 23) !important;
        border: rgba(23, 23, 23) !important;
    }

    .on-mobiles a { left: 15px !important; }

    .on-mobiles a i { display: none !important; }

    nav.navbar.bootsnav ul.nav li.dropdown.simple-dropdown > .dropdown-menu {
        background-color: rgba(23, 23, 23) !important;
    }

    nav.navbar.bootsnav ul.nav li.dropdown.simple-dropdown.open ul.dropdown-menu li > a.dropdown-toggle,
    nav.navbar.navbar-default ul li.dropdown .dropdown-menu li > a { color: #FFF !important; }

    .no-border-mobiles { border: none !important; }
    
    .icon-list img {
        width: 40px;
        height: 40px;
    }
    
    .icon-list .carehope {
        width: 50px;
        height: 50px;
    }
}

/* Large devices (desktops, 992px and up) */
@media (min-width: 992px) and (max-width: 1199.98px) {
    header nav .navbar-nav.text-normal > li > a {
        font-weight: 500;
        font-size: 13px;
        margin: 0 10px;
    }
    header a.logo img { max-height: 70px; }
    .swiper-button-prev { left: 24rem; }
    .swiper-button-next { right: 24rem; }
    #c4kMap, #ffhMap { height: 500px; }
    h5 { font-size: 30px !important; }
    .mission-sign { font-size: 33px !important; }
    .location-font { font-size: 21px !important; line-height: 1.1em; }
    .stories-quote h1 { font-size: 35px; line-height: 2.5rem; }
    .h-315px { height: 420px; }
    .h-285px { height: 370px; }
    .h-245px { height: 310px; }
    .h-290px { height: 355px; }
    .h-250px { height: 320px; }
    .lg-h-320px { height: 320px !important; }
    .lg-h-295px { height: 295px !important; }
    .lg-h-230px { height: 230px !important; }
    .lg-h-180px { height: 180px !important; }
    .icon-list img {
        width: 40px;
        height: 40px;
    }
}

/* Extra large devices (large desktops, 1200px and up) */
@media (min-width: 1200px) {
    header nav .navbar-nav.text-normal > li > a {
        font-weight: 500;
        font-size: 14px;
    }
    header a.logo img { max-height: 65px; }
    .swiper-button-prev { left: 27rem; }
    .swiper-button-next { right: 27rem; }
    .container, .container-lg, .container-md, .container-sm, .container-xl {
        max-width: 1400px;
    }
    .navbar>.container-lg { max-width: 1600px; }
    .location-font { font-size: 21px !important; }
    .xl-h-280px { height: 280px !important; }
    .xl-h-260px { height: 260px !important; }
    .xl-h-225px { height: 225px !important; }
    .xl-h-220px { height: 220px !important; }
    .xl-h-205px { height: 205px !important; }
    .icon-list img {
        width: 40px;
        height: 40px;
    }

}
