@media (max-width: 1600px) {
    .split-section .elementor-element.split-section-content {
        width: 50% !important;
    }
}

@media (max-width: 1367px) {
    :root {
        --spacing: 90px;
        --font-size: 18px;
        --font-size--extra-small: 13px;
        --font-size--nav: 14px;
        --font-size--small: 17px;
        --font-size--medium: 20px;
        --font-size--large: 23px;
        --font-size--h1: 54px;
        --font-size--h1-lg: 66px;
        --font-size--h2-lg: 48px;
        --font-size--h2: 41px;
        --font-size--h2-md: 37px;
        --font-size--h2-sm: 35px;
        --font-size--h3-xlg: 32px;
        --font-size--h3-lg: 27px;
        --font-size--h3: 22px;
        --button-padding--top: 18px;
        --button-padding--bottom: 19px;
        --button-padding--left: 43px;
        --form-field--padding-top: 15px;
        --form-field--padding-left: 23px;
        --faq-spacing: 27px;
    }
    .pg-section.inline-banner {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }
    html .pg-section#banner, html .pg-section.mobile-fw-img {
        padding-right: 0 !important;
        padding-left: 0 !important;
    }
    .pg-section .pg-section.bg-lightblue {
        margin: 0 -30px !important;
        width: calc(100% + 60px) !important;
        max-width: calc(100% + 60px) !important;
    }
    .minutes.archive {
        flex: 0 0 18% !important;
        max-width: 18% !important;
    }
    .loop:after {
        left: -35px !important;
        right: -35px !important;
        width: calc(100% + 70px) !important;
        height: 457px !important;
        background-position: center bottom !important;
    }
    .loop.loop-dark:after {
        width: calc(100% + 70px) !important;
        height: clamp(282.6666666666667px, 22.083333333333332vw, 424px) !important;
    }
    .loop.loop-navy:after {
        width: calc(100% + 70px) !important;
        height: 457px !important;
    }
    .loop.loop-grey:after {
        width: calc(100% + 70px) !important;
        height: 603px !important;
    }
    .container, .elementor-container, .e-con > .e-con-inner {
        margin: 0 auto;
        max-width: 100% !important;
    }
    #hero {
        margin-top: clamp(116px, 8.177083333333334vw, 157px);
    }
    #header {
        padding: clamp(28.666666666666668px, 2.2395833333333335vw, 43px) 0 30px;
    }
    #upcomingEvents .event-card .event-card__content .event-date {
        width: clamp(60px, 4.270833333333333vw, 82px);
        height: clamp(60px, 4.270833333333333vw, 82px);
    }
    #upcomingEvents .event-card .event-card__content {
        padding-left: clamp(76px, 5.416666666666667vw, 104px);
        min-height: clamp(58px, 4.270833333333333vw, 82px);
    }
}

@media (max-width: 1199px) {
    :root {
        --spacing: 70px;
        --font-size: 17px;
        --font-size--small: 16px;
        --font-size--medium: 18px;
        --font-size--large: 21px;
        --font-size--h1: 45px;
        --font-size--h1-lg: 55px;
        --font-size--h2: 35px;
        --font-size--h2-lg: var(--font-size--h2);
        --font-size--h2-md: var(--font-size--h2);
        --font-size--h2-sm: var(--font-size--h2);
        --font-size--h3: 20px;
        --font-size--h3-xlg: 29px;
        --font-size--h3-lg: 25px;
        --button-padding--top: 17px;
        --button-padding--bottom: 18px;
        --button-padding--left: 39px;
        --form-field--padding-top: 14px;
        --form-field--padding-left: 21px;
        --faq-spacing: 25px;
        --font-size--nav: 13px;
    }
    .minutes.archive {
        flex: 0 0 23% !important;
        max-width: 23% !important;
    }
    #businesses.business-slider.swiper {
         margin: 0;
    }
}

@media (max-width: 1024px) {
    #businesses:not(.directory-grid) .business-card h3, #businesses:not(.directory-grid) .business-card p {
        text-align: center;
    }
    #businesses:not(.directory-grid) .business-card .category {
        margin: 0 auto;
        display: flex;
        justify-content: center;
    }
    #businesses.business-slider.swiper {
        margin: 0;
    }
    .pt-sm { padding-top: calc( var(--spacing) ) !important; }
    .pb-sm { padding-bottom: calc( var(--spacing) ) !important; }
    .pt-md { padding-top: calc( var(--spacing) ) !important; }
    .pb-md { padding-bottom: calc( var(--spacing) ) !important; }
}

@media (max-width: 991px) {
    :root {
        --spacing: 60px;
        --font-size: 16px;
        --font-size--medium: 18px;
        --font-size--large: 18px;
        --font-size--h1: 40px;
        --font-size--h1-lg: var(--font-size--h1);
        --font-size--h2: 30px;
        --font-size--h3-xlg: 25px;
        --font-size--h3-lg: 23px;
        --font-size--h3: 20px;
        --button-padding--top: 17px;
        --button-padding--bottom: 18px;
        --button-padding--left: 39px;
        --faq-spacing: 25px;
        --font-size--nav: 12px;
    }
    .container-sm.indent,
    .container-sm.indent-text .elementor-widget-text-editor {
        padding-left: 0;
        padding-right: 0;
    }
    #businesses.directory-grid .business-card {
        width: calc(33% - 9px);
    }
    #blog .video,
    #blog .video-featured {
        width: 100%;
    }
    #blog .video-featured {
        margin-bottom: 40px;
    }
    .pg-content.collapse-991 .content-left, .pg-content.collapse-991 .content-right {
        padding: 20px 0 0 !important;
    }
    .minutes {
        flex: 0 0 48% !important;
        max-width: 48% !important;
    }
    .minutes.archive {
        flex: 0 0 31% !important;
        max-width: 31% !important;
    }
    #four-columns {
        display: flex;
        flex-wrap: wrap;
        grid-gap: 30px 10px !important;
    }
    #four-columns .fc-col {
        width: calc(50% - 5px);
    }
    .report-box a.block-link {
        display: flex;
        flex-direction: column;
        width: 100%;
        height: 300px;
        margin: 0 0 10px;
    }
    .report-box a.block-link img {
        display: block;
        width: 100%;
        height: 100%;
        object-fit: cover;
    }
}

@media (max-width: 781px) {
    :root {
        --header-adjustment: 46px;
    }
}

@media (min-width: 768px) {
    .content-right { padding-left: clamp(30px, 3.6458333333333335vw, 50px) !important; }
    .content-left { padding-right: clamp(30px, 3.6458333333333335vw, 50px) !important; }
    .gap-sm .content-right { padding-left: clamp(13.333333333333334px, 1.0416666666666667vw, 20px) !important; }
    .gap-sm { padding-right: clamp(13.333333333333334px, 1.0416666666666667vw, 20px) !important; }
}

@media (max-width: 767px) {
    :root {
        --spacing: 50px;
        --font-size--medium: 17px;
        --font-size--large: 17px;
        --font-size--h1: 30px;
        --font-size--h2: 25px;
        --font-size--h3: 20px;
        --font-size--h3-xlg: var(--font-size--h3);
        --font-size--h3-lg: var(--font-size--h3);
        --button-padding--top: 16px;
        --button-padding--bottom: 17px;
        --button-padding--left: 36px;
        --faq-spacing: 23px;
    }
    #preheader {
        display: none !important;
    }
    #header, .admin-bar #header {
        position: fixed;
        top: 0 !important;
        left: 0;
        right: 0;
        width: 100%;
        background-color: #fffbef;
        box-shadow: 0 0 15px rgba(0,0,0,0.15);
        z-index: 999999 !important;
        padding: 10px 15px !important;
    }
    #header .mobile-logo a {
        display: flex;
        width: clamp(58px, 4.53125vw, 87px);
        height: clamp(64.66666666666667px, 5.052083333333333vw, 97px);
    }
    #header .mobile-logo a img {
        display: block;
        width: 100%;
        height: 100%;
        object-fit: contain;
    }
    #header .navigation {
        position: fixed;
        top: 84px;
        left: 0;
        right: 0;
        z-index: 999999 !important;
    }
    #header .navigation li.brand {
        display: none;
    }
    #header .navigation li {
        margin: 0 !important;
    }
    #header .navigation li a {
        font-size: 15px !important;
        background-color: var(--blue) !important;
        color: var(--dark) !important;
        font-weight: 500 !important;
        line-height: 1.3 !important;
        border-bottom: 1px solid rgba(255,255,255,0.2) !important;
        padding: 15px !important;
    }
    #header .navigation li a:hover,
    #header .navigation li a:focus,
    #header .navigation li.current-menu-item > a {
        background-color: var(--yellow) !important;
        color: var(--dark) !important;
    }
    #header .mobile-navigation li.mobile-button {
        display: flex;
    }
    #header .mobile-navigation li.mobile-button strong {
        background-color: var(--dark);
    }
    #hero, .no-hero {
        margin-top: calc(84px + 30px) !important;
    }
    .admin-bar #hero, .admin-bar .no-hero {
        margin-top: calc( (84px + 30px) - var(--header-adjustment)) !important;
    }
    #upcomingEvents .event-card, #custom-evt-grid .event-card.all-events,
    #blog .featured, #blog .blog-list,
    .sec-event-details-inner .sec-event-item, #four-columns .fc-col {
        width: 100%;
    }
    #blog .blog-container,
    #upcomingEvents {
        margin: 25px 0 50px;
    }
    #upcomingEvents .event-card .event-card__content {
        display: flex;
        justify-content: center;
        flex-direction: column;
    }
    #upcomingEvents .event-card .event-card__image, #custom-evt-grid .event-card.all-events .event-card__image {
        height: 200px;
    }
    #upcomingEvents {
        grid-gap: 40px;
    }
    #giftCard * {
        text-align: center;
    }
    #footer .footer-menu ul {
        column-count: 2;
    }
    #footer .footer-socials {
        width: max-content;
        margin: 50px 0 30px;
    }
    #copyright p {
        text-align: center;
    }
    .nav-container {
        flex-direction: column !important;
        justify-content: center !important;
        grid-gap: 20px !important;
    }
    .nav-container h2 {
        text-align: center !important;
    }
    .pg-content.collapse-767 .content-left, .pg-content.collapse-767 .content-right {
        padding: 20px 0 0 !important;
    }
    #dobiaStaff {
        justify-content: flex-start;
        margin: 0 0 50px;
    }
    #dobiaStaff .dobia-staff-card,
    #bodContainer .bod-card {
        width: calc(50% - calc(var(--spacing) * 0.40));
    }
    #dobiaStaff .dobia-staff-card img,
    #bodContainer .bod-card .elementor-widget-image,
    #businesses.directory-grid .business-card a {
        height: 300px;
    }
    #businesses.directory-grid .business-card {
        width: calc(50% - 9px);
    }
    #directory-filter-container .directory-filters li,
    #custom-evt-filter-container ul li {
        margin: 0;
        width: 100%;
    }
    #directory-filter-container .directory-filters .filter-btn,
    #custom-evt-filter-container .custom-evt-btn {
        text-align: center;
        justify-content: center;
    }
    #credsContainer .cred-card {
        width: calc(50% - calc(var(--spacing) * 1.50));
    }
    #custom-evt-grid {
        margin: 50px 0 0;
    }
    .contact-form.cf-blue.ml-sm {
        padding: calc(var(--spacing) * 0.55) 0 0;
    }
    .sec-no-events-mobile {
        display: none;
    }
    #sec-calendar-grid {
        display: flex !important;
        flex-direction: column;
        gap: 10px;
    }
    .sec-day-name,
    .sec-day.empty,
    .sec-day:not(.has-event) {
        display: none !important;
    }
    .sec-day.has-event {
        display: flex;
        justify-content: space-between;
        align-items: center;
        width: 100%;
        padding: 18px 20px;
        background-color: #f8f9fa;
        border: 1px solid #e0e0e0;
        border-radius: 8px;
        box-sizing: border-box;
        cursor: pointer;
        transition: background-color 0.2s ease;
    }
    .sec-day.has-event.selected-day {
        background-color: #e68b22;
        color: #fff;
        border-color: #e68b22;
    }
    .sec-no-events-mobile {
        display: block;
        text-align: center;
        padding: 30px 20px;
        color: #666;
        font-style: italic;
        background: #f8f9fa;
        border-radius: 8px;
        border: 1px dashed #ccc;
    }
    .sec-event-dots {
        display: flex;
        gap: 6px;
    }
    .sec-event-dot {
        width: 10px;
        height: 10px;
        border-radius: 50%;
        display: inline-block;
    }
    .sec-event-dots {
        position: absolute;
        bottom: 0;
        top: 0;
        left: 0;
        right: 16px;
        display: flex;
        justify-content: flex-end;
        gap: 8px;
        margin: auto 0;
        height: max-content;
    }
    .contact-form .captcha-note {
        margin: 0 0 30px;
        text-align: center;
        width: 100%;
        display: flex;
        justify-content: center;
    }
    #blog .video-featured {
        margin-bottom: 0;
    }
    .section-heading.mb-sm h2 {
        margin-bottom: calc(var(--spacing) * 0.5) !important;
    }
    #blog .standard {
        width: 100% !important;
    }
    #blog .featured .elementor-post__thumbnail__link,
    #blog .video .elementor-post__thumbnail__link,
    #blog .standard .elementor-post__thumbnail__link {
        height: 300px !important;
    }
    #hero.gift-card-hero .hero-container {
        padding: 50px 30px !important;
        height: auto !important;
    }
    #hero.gift-card-hero .elementor-element:has(img) {
        order: -1 !important;
        margin: 0 0 20px !important;
    }
    #hero.gift-card-hero h1 {
        text-align: center;
    }
    #hero.gift-card-hero .elementor-widget-button {
        display: flex;
        justify-content: center;
    }
    .contact-form .e-form__buttons {
        display: flex !important;
        justify-content: center !important;
    }
    .elementor-element:has(.elementor-widget-google_maps) {
        order: -1;
        margin: 0 0 40px;
    }
    .minutes {
        flex: 0 0 100% !important;
        max-width: 100% !important;
    }
    .minutes a.pdf-link {
        margin: 0;
        height: max-content;
    }
    .minutes.archive {
        flex: 0 0 48% !important;
        max-width: 48% !important;
    }
    .bg-lightblue #blog .standard .elementor-post__thumbnail__link {
        height: 300px !important;
    }
    .contact-form.cf-blue .e-form__buttons {
        justify-content: center !important;
    }
    #custom-evt-grid .event-card__content * {
        text-align: center;
    }
    #custom-evt-grid .event-card__content,
    #hero .elementor-widget-button {
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
    }
    .mobile-center-text *,
    #hero h1 {
        text-align: center !important;
    }
    .section-heading {
        margin: 0 0 10px !important;
    }
    #singlePost .sp-content {
        padding-right: 0 !important;
    }
    .report-box a.block-link .block-link-heading {
        text-align: center;
    }
    html .narrow .elementor-button {
        text-align: left !important;
        padding: 10px 16px;
    }
    .elementor-widget-button {
        display: flex !important;
        justify-content: center !important;
    }
    .hide-image-mobile .pg-content-image {
        display: none !important;
    }
    .pg-content .pg-content-text .pg-content-button-group a {
        text-align: center;
        display: block;
        width: max-content;
        margin: auto;
    }
    #header .mobile-navigation li.mobile-button strong {
        background-color: transparent;
    }
    #header .mobile-navigation li.mobile-button strong svg * {
        fill: var(--dark);
    }
    .pg-section.split-section.bg-blue {
        background-image: unset !important;
    }
    .split-section .elementor-element.split-section-content {
        width: 100% !important;
    }
}

@media (max-width: 500px) {
    #dobiaStaff .dobia-staff-card,
    #bodContainer .bod-card,
    #businesses.directory-grid .business-card,
    #credsContainer .cred-card {
        width: 100%;
    }
    .btn-group {
        flex-direction: column !important;
        grid-gap: 10px !important;
    }
    .btn-group a {
        display: block !important;
    }
    #dobiaStaff .dobia-staff-card h3,
    #dobiaStaff .dobia-staff-card h3 + p,
    #dobiaStaff .dobia-staff-card ul li,
    #dobiaStaff .dobia-staff-card ul li a,
    #bodContainer .bod-card h3,
    #bodContainer .bod-card ul li,
    #businesses.directory-grid .business-card * {
        text-align: center;
    }
}