.h1,
.h2,
.h3,
.h4,
.h5,
.h6,
.h7,
h1,
h2,
h3,
h4,
h5,
h6 {
    font-variant: small-caps;
    font-size-adjust: .45;
    line-height: 1.4;
    letter-spacing: 1.5px;

}

.js-header-fix-moment a.landing-block-node-menu-list-item-link {
    font-weight: 400 !important;
}

body {
    min-width: 100vw;
}

button:focus {
    outline: 1px dotted;
    outline: none;
}

/* Desktop and mobile viewport widths */


/* =========================================================================
   MOBILE STYLES < 576px
   ========================================================================= */
@media (max-width: 576px) {}




/* =========================================================================
   PORTRAIT TABLET STYLES < 768px
   ========================================================================= */
@media (max-width: 900px) {

    #menu {
        .navbar-nav .nav-item {
            max-width: 100%;
            text-align: right !important;
        }

        a.landing-block-node-menu-list-item-link.nav-link {
            font-size: 30px !important;
            padding-bottom: 20px !important;
        }

        .g-bg-black-opacity-0_4,
        .g-bg-black-opacity-0_4--after:after,
        .g-bg-black-opacity-0_4--before:before,
        .g-bg-black-opacity-0_4--hover:hover {
            background-color: #071335db !important;
            backdrop-filter: blur(20px);
            box-shadow: 1px -5px 9px 10px #000000bd;
            border-bottom: 15px solid #091437;
        }

        .hamburger:hover {
            opacity: 1 !important;
        }

        .hamburger.hamburger--md .hamburger-box {
            height: 65px !important;
        }

        .hamburger.hamburger--md .hamburger-box,
        .hamburger.hamburger--md .hamburger-inner,
        .hamburger.hamburger--md .hamburger-inner::after,
        .hamburger.hamburger--md .hamburger-inner::before {

            width: 65px !important;
        }

        .hamburger.hamburger--md .hamburger-box,
        .hamburger.hamburger--md .hamburger-inner,
        .hamburger.hamburger--md .hamburger-inner::after,
        .hamburger.hamburger--md .hamburger-inner::before {
            height: 5px;
            border-radius: 0;
            width: 65px;
        }

        .hamburger.hamburger--md .hamburger-inner:before {
            top: 22px;
        }

        .hamburger.hamburger--md .hamburger-inner:after {
            top: 44px;
        }
    }

    .hamburger--md.is-active .hamburger.hamburger--md .hamburger-inner:after {
        top: 19px;
    }
}




/* =========================================================================
   LANDSCAPE TABLET STYLES < 1024px
   ========================================================================= */
@media (max-width: 1100px) {
    #menu {
        .navbar-nav .nav-item {
            max-width: 100%;
        }

        .g-mx-30--lg {
            margin-left: 0rem !important;
            margin-right: 0rem !important;
        }
    }


}
#Footer{
.col-lg-6 {
	-webkit-box-flex: 0;
	-ms-flex: 0 0 40%;
	flex: 0 0 40%;
	max-width: 40%;
}
	.col-lg-2 {
		-webkit-box-flex: 0;
		-ms-flex: 0 0 20%;
		flex: 0 0 20%;
		max-width: 20%;
	}
    .container {
	max-width: 90vw;
}

}
#copyright{
    .container {
	max-width: 90vw;
}
}
/* ── MINIMAL SCROLLBAR SITEWIDE ──────────────────────────── */

::-webkit-scrollbar {
    width: 8px;
    height: 8px;
}

::-webkit-scrollbar-track {
    background: #060e25;
}

::-webkit-scrollbar-thumb {
    background: #9eb277;
    border-radius: 4px;

    &:hover {
        background: #9eb277;
    }
}


@keyframes heroBgZoomPan {
    0% {
        transform: scale(1) translate(0, 0);
    }

    100% {
        transform: scale(1.5) translate(7%, 15%);
    }
}

span.g-menu-sublevel-toggler {
    display: none;
}

#code-blue-projects-docs {
    .u-shadow-custom-v3 {
        box-shadow: -2px 1px 9px -3px rgb(0 0 0 / 24%);
        margin: 0px 0px 15px -10px !important;
        border-radius: 5px 0px 0px 5px !important;
        overflow: hidden;
    }

    .slick-track {
        left: .71429rem !important;

    }

    .g-mb-30 {
        margin-bottom: 1.5rem !important;
    }
}

/*---------- BEGIN DESKTOP--------------- */



@media (min-width: 1000px) {

    #news-article-banner {

        box-shadow: 2px 1px 0px #01040eba;
        z-index: 99;


        section.landing-block.landing-block-img.u-bg-overlay {
            background-attachment: fixed !important;
            background-position: 0px 200% !important;
        }

        .u-bg-overlay:after,
        .u-bg-overlay:before {
            content: "";
            position: absolute;
            top: 0;
            right: 0;
            bottom: 0;
            left: 0;
            background: #05102ca3;
            backdrop-filter: blur(.5px);
            border-bottom: 9px solid #182b60;

        }



    }



    #news-articles {


        h3.g-color {
            color: #2d4589 !important;
        }

        article.landing-block-card.row {
            background: #fffffff2;
            border-radius: 5px;
            justify-content: space-between;
            box-shadow: -1px 1px 8px -7px #000000;
            overflow: hidden !important;
        }

        .col-lg-3.col-md-3.col-6.g-min-width-150.g-mb-10.g-mb-0--md {
            padding: 0px !important;
            align-self: stretch;
        }

        .col-lg-6 {
            -webkit-box-flex: 0;
            -ms-flex: 0 0 55%;
            flex: 0 0 55%;
            max-width: 55%;
            padding-top: 30px;
            padding-bottom: 30px;
        }

        .img-fluid {
            min-height: 100%;
            object-fit: cover;
        }
    }


    #our-mission {
        .container {
            max-width: 100% !important;
        }





    }

    .landing-layout-flex .landing-main {
        /* padding-left: 70px; */
        /* padding-right: 70px; */
        max-width: calc(75% - 100px);
        margin: auto;
    }

    #sidebar-menu {
        position: sticky;
        top: 50px;
        --navbar-color: #ffffff;
        --navbar-bg-color: hsl(0deg 0% 100% / 0%);
        --navbar-color--hover: #ffffff;
        --navbar-bg-color--hover: #f7ffe642;
        --border-color: #f2f2f200;
        --border-color--hover: ;

        a.landing-block-node-menu-link {
            border-bottom: 2px solid #ffffff29 !important;
            border-top: none !important;
            border-left: none !important;
            border-right: none !important;
        }

        .u-navbar-color,
        .u-navbar-color a {
            color: #ffffff !important;
        }

        li.landing-block-node-menu-item.nav-item.list-group-item.g-pa-0.g-brd-color-inherit {
            font-size: 14px !important;
            font-weight: 600;
        }

        a.landing-block-node-menu-link.nav-link.g-px-20.g-py-10.u-link-v5 {
            letter-spacing: 1px !important;
        }

        li.landing-block-node-menu-item.nav-item.list-group-item.g-pa-0.g-brd-color-inherit {
            border: #ffffff00;
        }

        .u-navbar-bg .navbar-nav .nav-item>a {
            background-color: hsl(0deg 7.66% 24.72% / 0%) !important;
        }

        nav.landing-block-node-navbar {
            padding-right: 15px !important;
        }

        .g-menu-multilevel .g-menu-sublevel {
            overflow: hidden;
            transition: all .2s;
            height: auto;
            opacity: .8;
            font-size: .9em;
            font-size: 12px;
            letter-spacing: 1px;

            a.landing-block-node-menu-link.nav-link.g-px-20.g-py-10.u-link-v5 {
                letter-spacing: 1px !important;
                padding-left: 15px !important;
                font-weight: 400 !important;
                border-left: solid #869a5f 4px !important;
                margin-left: 10px;
                border-bottom: none !important;
            }
        }

        .u-navbar-bg--hover .navbar-nav .nav-item.active>a,
        .u-navbar-bg--hover .navbar-nav .nav-item>a:hover {
            background-color: #edffc633 !important;
            border-radius: 5px;
        }





    }

    .landing-layout-flex .landing-sidebar {
        width: 300px;
        min-width: 300px;
        background: #90a26e;
        box-shadow: 0px -1px 3px #2a2d3482;
    }

    [id^="section-title"],
    #IREMSC-resources,
    #state-office-of-emergency-medical-services {
        box-shadow: 0px 1px 8px -3px #00000096;
        overflow: visible;
        z-index: 99;


        .landing-block {
            border: none !important;
            border-radius: 5px;
            min-width: calc(100% + 14px);
            margin-left: -7px !important;
            position: sticky;
            top: 65px;
            outline: solid 1px #9db276;
        }
    }

    #about-us {
        .row {
            flex-direction: row-reverse !important;
        }

        i.landing-block-node-icon-7509.fas.fa-mountains {
            font-size: 35px !important;
        }

        i.landing-block-node-icon-7509.fas.fa-helicopter {
            font-size: 36px !important;
        }
    }

    #home-about,
    #our-goals,
    #about-us,
    #b722 {

        .container {
            max-width: 85vw;
        }

        .col-lg-7 {
            -webkit-box-flex: 0;
            -ms-flex: 0 0 50%;
            flex: 0 0 50%;
            max-width: 50%;
        }

        .col-lg-5 {
            -ms-flex: 0 0 46%;
            flex: 0 0 46%;
            max-width: 46%;
        }

        .g-pb-70 {
            padding-bottom: 0rem !important;
        }

        .g-pt-90 {
            padding-top: 0rem !important;



        }

        [class^="landing-block-node-icon"] {
            color: #f3ffdd !important;
            font-size: 40px;
            align-self: center;
        }

        .d-md-flex.align-self-center.g-mb-30.g-mb-0--md.g-mr-30--md {
            width: 85px !important;
            height: 85px;
            background: linear-gradient(136deg, #99b366 50%, #91a766 50%) !important;
            border-radius: 50%;
            padding: 5px 5px 5px 7px;
            box-shadow: inset -12px -8px 20px -5px #48581554;
            border: 2.5px #75933a00 solid;
            margin-top: -5px;
        }



        .landing-block-node-text-container {
            background-color: #f9f8f3e8;
            background-image: url('https://cdn.bitrix24.com/b38303863/landing/63a/63a8a6371992a0c11885c7755851454b/iremsc_background_1x.jpg');
            background-position: -35% 40%;
            background-attachment: fixed;
            background-size: 120% auto;
            padding-top: 60px;
            padding-bottom: 40px;
            padding-left: 50px;
            padding-right: 50px;
            box-shadow: 1px 3px 7px -3px #00000099;
            max-width: 54% !important;
            flex: 0 0 54% !important;
        }

    }

    #team {

        .g-bg-primary-opacity-0_8 {
            background-color: rgb(3 23 62 / 0%) !important;
        }

        .row.landing-block-inner.justify-content-center {
            gap: 20px;
        }


        .col-lg-2 {
            -webkit-box-flex: 0;
            -ms-flex: 0 0 20%;
            flex: 0 0 20%;
            max-width: 20%;
        }

        .g-pb-250 {
            padding-bottom: 15rem !important;
            padding-top: 4rem !important;
        }

        .container.g-mt-minus-200 {
            padding-left: 40px;
            padding-right: 40px;
            background-color: #f9f8f3e8;
            background-image: url('https://cdn.bitrix24.com/b38303863/landing/63a/63a8a6371992a0c11885c7755851454b/iremsc_background_1x.jpg');
            background-position: -35% 40%;
            background-attachment: fixed;
            background-size: 120% auto;
            box-shadow: 1px 3px 7px -3px #00000099;
            padding-bottom: 60px !important;
            min-width: 100%;
        }

        .landing-block-card-employee {
            background: white;
            margin-top: 40px;
            padding: 0px 0px 20px 0px;
            border-radius: 10px;
            overflow: hidden;
            box-shadow: 1px 2px 6px -3px #41414157;
            flex: calc(20% - 20px);
            max-width: calc(20% - 20px);
        }

        .landing-block-node-employee-subtitle.mb-0.g-font-size-14 {
            background: #ecf1e1;
            color: #5c5c5c;
            padding-top: 5px;
            padding-bottom: 5px;
            font-size: 12px !important;
            margin-top: 12px;
            font-weight: 500;
            margin-bottom: -5px !important;
        }

        .landing-block-node-employee-post {
            line-height: 1.2;
            font-size: 11px !important;
            letter-spacing: .5px;
        }

        .g-mb-30 {
            margin-bottom: 1rem !important;
        }

        .landing-block-node-text {
            margin-bottom: -50px !important;
        }



    }

    #code-blue-projects-docs {
        .landing-block-node-card-box.g-pl-30.g-pr-30.g-pt-30.g-pb-10.g-bg.g-rounded-10 {
            padding: 0rem !important;
            visibility: visible;
        }



        .col-xl,
        .col-xl-auto,
        .col-xl-12,
        .col-xl-11,
        .col-xl-10,
        .col-xl-9,
        .col-xl-8,
        .col-xl-7,
        .col-xl-6,
        .col-xl-5,
        .col-xl-4,
        .col-xl-3,
        .col-xl-2,
        .col-xl-1,
        .col-lg,
        .col-lg-auto,
        .col-lg-12,
        .col-lg-11,
        .col-lg-10,
        .col-lg-9,
        .col-lg-8,
        .col-lg-7,
        .col-lg-6,
        .col-lg-5,
        .col-lg-4,
        .col-lg-3,
        .col-lg-2,
        .col-lg-1,
        .col-md,
        .col-md-auto,
        .col-md-12,
        .col-md-11,
        .col-md-10,
        .col-md-9,
        .col-md-8,
        .col-md-7,
        .col-md-6,
        .col-md-5,
        .col-md-4,
        .col-md-3,
        .col-md-2,
        .col-md-1,
        .col-sm,
        .col-sm-auto,
        .col-sm-12,
        .col-sm-11,
        .col-sm-10,
        .col-sm-9,
        .col-sm-8,
        .col-sm-7,
        .col-sm-6,
        .col-sm-5,
        .col-sm-4,
        .col-sm-3,
        .col-sm-2,
        .col-sm-1,
        .col,
        .col-auto,
        .col-12,
        .col-11,
        .col-10,
        .col-9,
        .col-8,
        .col-7,
        .col-6,
        .col-5,
        .col-4,
        .col-3,
        .col-2,
        .col-1 {
            position: relative;
            width: 100%;
            padding-right: 0px;
            padding-left: 0px;
        }
    }
#regional-offices{
.g-mt-minus-20 {
	margin-top: 0rem;
}
.g-brd-gray-light-v5, .g-brd-gray-light-v5--hover:hover {
	border-color: transparent !important;
}
}
    #copyright {
        img.landing-block-node-img-7951.img-fluid.d-inline {
            max-width: 150px !important;
        }

        .u-icon-v2 {
            border-width: 0px !important;
        }

        .g-py-100 {
            padding-top: 1rem !important;
            padding-bottom: 0rem !important;
        }

    }

    #homepage-banner {
        .img-fluid {
            max-width: 100%;
            width: 300px !important;
            height: auto;
        }

        .bg-video__inner {
            height: 310%;
            top: -110%;
        }

    }

    .landing-block-node-card.landing-block-node-card-bgimg.js-slide.d-flex.align-items-center.u-bg-overlay.g-bg-img-hero.g-min-height-75vh.g-bg--after.slick-slide.slick-current.slick-active {
        animation: heroBgZoomPan 50s infinite;

    }


    #symposium-banner {
        section.landing-block.landing-block-node-img.u-bg-overlay.g-flex-centered {
            height: 95vh !important;
            max-height: 85vh !important;
            min-height: 85vh !important;
            padding-top: 165px !important;
        }

    }

    img.landing-block-node-card-img.w-100.mt-auto {
        margin-top: -20px !important;
        margin-bottom: -0px;
    }

    footer.d-flex.w-100 {
        display: none !important;
    }

    .g-max-width-800.container.text-center.g-pos-rel.g-z-index-1.mx-auto.g-px-30 {
        padding-top: 30px;
    }

    .g-brd-gray-light-v3,
    .g-brd-gray-light-v3--hover:hover {
        border-color: #dddddd00 !important;
    }

    #homepage-menu {
        .js-header-in-flow .g-max-width-180 {
            max-width: 170px !important;
            display: none !important;
        }

        .g-mx-15--lg {
            margin-left: -35px !important;
            margin-right: -35px !important;
        }

        .u-navbar-align-around .navbar-nav {
            justify-content: space-evenly;
        }

        .container {
            max-width: 95vw !important;
        }

        .js-header-fix-moment .g-max-width-180 {
            max-width: 170px !important;
            margin-bottom: 0px;
        }

        .g-py-17--md {
            padding-top: 2rem !important;
            padding-bottom: .5rem !important;
        }

        .js-header-fix-moment .g-py-17--md {
            padding-top: .5rem !important;
            padding-bottom: .5rem !important;
        }

        .g-bg-black-opacity-0_4,
        .g-bg-black-opacity-0_4--after:after,
        .g-bg-black-opacity-0_4--before:before,
        .g-bg-black-opacity-0_4--hover:hover {
            background-color: #262e4300 !important;

        }

        .g-py-10--md {
            padding-top: 0rem !important;
            padding-bottom: 0rem !important;
        }

        .g-bg-white,
        .g-bg-white--after:after,
        .g-bg-white--before:before,
        .g-bg-white--hover:hover,
        .g-parent:hover .g-bg-white--parent-hover {
            background-color: #ffffff !important;
            backdrop-filter: blur(3px);
        }
    }

    #board-members-01 {

        .g-pa-0-35-35--sm {
            padding: 1rem !important;
            border-radius: 7px;
        }

        .u-shadow-v10 {
            box-shadow: 1px 3px 5px -3px #586046;
        }

        .g-absolute-centered--y {
            position: absolute !important;
            top: 0% !important;
            -webkit-transform: translateY(0%);
            transform: translateY(0%) !important;
        }

        .u-arrow-v1:before {
            display: inline-block;
            position: relative;
            top: 20%;
            vertical-align: top;

        }

        .js-prev {
            right: 0% !important;
            left: 90% !important;
        }

        .g-brd-gray-light-v5,
        .g-brd-gray-light-v5--hover:hover {
            border-color: #eef2e1 !important;
            box-shadow: 0px 3px 3px -2px #8080806b;
        }

        .g-brd-10 {
            border-width: 7px !important;
        }

        .far,
        .fa {

            font-size: 20px !important;
            color: #9eb277 !important;
        }

        img.landing-block-node-img.rounded-circle.mx-auto {
            margin-bottom: -40px;
            object-fit: cover;
        }

        h2.landing-block-node-title-1136-9571 {
            font-variant: none !important;
            font-family: 'Assistant' !important;
            letter-spacing: 0px !important;
            font-size-adjust: none !important;
        }

        .u-heading-v2-3--bottom:after,
        .u-heading-v2-3--top:before {
            width: calc(100% - 15px) !important;
            border-top-width: 3px;
            border-color: #eaeedd7a;
            border-radius: 3px;
            box-shadow: 0px -1px 0.5px -0.5px #d7e4be;
        }


        .landing-block-node-subtitle.text-uppercase {
            padding-bottom: 10px;
        }


    }

    #section-title-interior-region-area {
        margin-bottom: -65px !important;
        z-index: 99 !important;
    }

    #contact-bar {
        a.landing-block-node-button-6008.btn.text-uppercase {
            /* font-family: 'Faculty Glyphic'; */
            font-size: 16px;
            letter-spacing: 1px;
            font-weight: 700 !important;
        }

        .col-md-3 {
            -webkit-box-flex: 0;
            -ms-flex: 0 0 18%;
            flex: 0 0 18%;
            max-width: 18%;
            display: flex;
            flex-direction: row;
            align-content: flex-end;
            justify-content: flex-end;
        }

        .col-md-9 {
            -webkit-box-flex: 0;
            -ms-flex: 0 0 75%;
            flex: 0 0 75%;
            max-width: 75%;
        }

        .landing-block-card-menu-contact-container-inner.row {
            flex-wrap: nowrap;
            justify-content: center;
            gap: 5rem;
        }

        .g-mx-3 {
            margin-left: 0rem !important;
            margin-right: 1.5rem !important;
        }

        .u-icon-v2.u-icon-size--sm,
        .u-icon-v2.u-icon-size--sm .u-icon__elem-hover,
        .u-icon-v2.u-icon-size--sm .u-icon__elem-regular,
        .u-icon-v3.u-icon-size--sm,
        .u-icon-v3.u-icon-size--sm .u-icon__elem-hover,
        .u-icon-v3.u-icon-size--sm .u-icon__elem-regular {
            width: 3rem;
            height: 3rem;
            font-size: 1.5rem !important;
            background: #0a1c45;
        }

        .g-border-color {
            border-color: hsl(80deg 28% 58% / 0%) !important;
        }

        .landing-block-card-menu-contact-container-inner>.landing-block-node-card.col-md {
            flex: 0 0 auto;
            width: auto;
            max-width: none;
            position: relative;
        }

        .landing-block-card-menu-contact-container-inner>.landing-block-node-card.col-md:not(:last-child)::after {
            content: '';
            position: absolute;
            top: 10%;
            bottom: 10%;
            right: -2.5rem;
            width: 2px !important;
            background: rgb(23 39 83 / 39%);
        }

        .landing-block-card-menu-contact-container {
            position: relative;
        }

        .landing-block-card-menu-contact-container::after {
            content: '';
            position: absolute;
            top: 10%;
            bottom: 10%;
            right: -3rem;
            width: 2px !important;
            background: rgb(23 39 83 / 39%);
        }

        box-shadow: 0px 2px 7px 2px #090a0f85;
        z-index: 99;
        border: none !important;
        outline: none !important;


        .col-lg-10 {
            -webkit-box-flex: 0;
            -ms-flex: 0 0 87%;
            flex: 0 0 85%;
            max-width: 85%;
        }

        .col-lg-2 {
            -webkit-box-flex: 0;
            -ms-flex: 0 0 15%;
            flex: 0 0 15%;
            max-width: 15%;
        }

        .container {
            max-width: 95vw !important;
        }

        .g-brd-gray-light-v4,
        .g-brd-gray-light-v4--hover:hover {
            border-color: #eeeeee00 !important;
        }

        .col-sm-3,
        .col-lg-2,
        .col-sm-4,
        .col-sm-4 {
            padding-right: 0px;
            padding-left: 0px;
        }

        .row.g-ml-20--sm {
            justify-content: space-around !important;
            align-items: center !important;
        }

        .row.g-ml-20--sm {
            justify-content: space-between;
            align-items: center !important;
        }

        section.landing-block {
            box-shadow: 0px 4px 4px #808080b5;
        }
    }

    #menu {
        .js-header-in-flow .g-max-width-180 {
            max-width: 170px !important;
            margin-bottom: -70px;
        }



        .js-header-fix-moment .g-max-width-180 {
            max-width: 170px !important;
            margin-bottom: 0px;
        }

        .g-py-17--md {
            padding-top: .5rem !important;
            padding-bottom: .5rem !important;
        }

        .g-bg-black-opacity-0_4,
        .g-bg-black-opacity-0_4--after:after,
        .g-bg-black-opacity-0_4--before:before,
        .g-bg-black-opacity-0_4--hover:hover {
            background-color: #262e4300 !important;
            backdrop-filter: blur(2.5px) brightness(.8) contrast(1.1) saturate(0.8);
            box-shadow: 1px 2px 6px #000000d1;
        }

        .g-py-10--md {
            padding-top: 0rem !important;
            padding-bottom: 0rem !important;
        }

        .g-bg-white,
        .g-bg-white--after:after,
        .g-bg-white--before:before,
        .g-bg-white--hover:hover,
        .g-parent:hover .g-bg-white--parent-hover {
            background-color: #132240 !important;
            backdrop-filter: blur(3px);
            box-shadow: 0px 3px 3px #000000 !important;
            border-bottom: 4px solid #18295a;
            border-top: 4px solid #18295a;
            z-index: 999999;
        }
    }

    #code-blue-projects-faq {

        .container {
            max-width: 100% ! important;
        }

        main:not(.landing-edit-mode) .landing-block-faq-4 .landing-block-faq-hidden {
            border-top: 4px solid #a2b48021 !important;
        }

        .g-py-15 {
            padding-top: 1rem !important;
            padding-bottom: .5rem !important;
            padding-right: 0px !important;
        }

        .g-pa-30 {
            padding-top: 1rem !important;
            padding-bottom: 1rem !important;
            padding-left: 0rem !important;
            padding-right: 0rem !important;
        }

        .landing-block-faq-hidden.g-pa-15.g-border-color {
            border-left: none !important;
        }

        /* Container becomes the grid */
        .landing-block-faq-4 .g-pos-rel {
            display: grid;
            grid-template-columns: repeat(5, 1fr);
            align-items: stretch;
            gap: 15px;
        }

        /* Let card children join the grid directly */
        .landing-block-faq-4 .landing-block-card {
            display: contents;
        }

        /* Tab styling */
        .landing-block-faq-4 .landing-block-faq-visible {
            cursor: pointer;
            text-align: center;
            margin: 0;
            border-bottom: 5px solid transparent;
            transition: border-color .2s ease, color .2s ease;
            min-width: 100%;
            font-size: 14px;
            grid-row: 1;
            box-shadow: -1px 0px 5px -3px #90a26e;
            border-radius: 5px;
            vertical-align: middle;
            /* margin: 5px; */
            background: white;
            margin-bottom: 15px;
            color: #819162 ! important;
            letter-spacing: 1.3px !important;
        }

        .landing-block-faq-4 .landing-block-card.active .landing-block-faq-visible {
            border-bottom-color: var(--color-hover);
            background: #ffffff;
            border-radius: 5px 5px 0px 0px;
            box-shadow: 0px 0px 7px -4px #00000085;
            color: var(--color-hover);
        }


        /* Content panel: hidden unless active, full width when shown */
        .landing-block-faq-4 .landing-block-faq-hidden {
            display: none;
            grid-row: 2;
            grid-column: 1 / -1;
            width: 100%;
            top: 100%;
            left: 0;
            opacity: 1;
        }

        .landing-block-faq-4 .landing-block-card.active .landing-block-faq-hidden {
            display: block;
            margin-top: -4px;
            padding: 25px !important;
            position: static;
            background: #ffffff;
            box-shadow: -1px 2px 7px -5px #000000ab;
        }



        .landing-block-card.active .landing-block-faq-hidden {
            display: block;
        }

        .landing-block-faq-hidden {
            display: none;
        }



    }

    [class^="group-"] {
        background-color: #f9faf4;
        margin-top: 50px;
        margin-bottom: 40px;
        box-shadow: 0px 1px 8px -4px #0000004f;
        border-radius: 15px;
        padding: 35px;

        .u-shadow-custom-v3 {
            box-shadow: 1px 3px 7px -5px rgb(0 0 0 / 45%);
        }

        [id$="slider"] {
            border-radius: 0px 0px 12px 12px;
            overflow: hidden;

            margin-top: 25px;

            .landing-block-node-card-text {
                font-size: 13px !important;
                line-height: 1.4 !important;
                margin-top: 10px;
            }

            .landing-block-node-card-title.g-color {
                font-weight: 700 !important;
                font-size: 15px !important;
            }
        }


        h2.landing-block-node-title {
            font-weight: 900 !important;
            -webkit-text-stroke-width: .5px;
            -webkit-text-stroke-color: #2d4589;
        }
    }

}

/* ------------BEGIN MOBILE------------ */
@media (max-width: 999px) {


    #code-blue-projects-faq {

        /* stack back into an accordion on small screens */
        .landing-block-faq-4 .g-pos-rel {
            grid-template-columns: 1fr;
        }
    }




}

/* CLASS CALENDAR-------------------------*/

.fc-daygrid-dot-event.fc-event-mirror,
.fc-event:hover,
.fc-daygrid-dot-event:hover {
    background: rgb(193 209 161);
    overflow: visible;
    min-width: min-content;
    padding-right: 10px !important;
    z-index: 999;
}

.fc-event-main-frame,
.fc-event-time,
.fc-event-title,
.fc-event-title.fc-sticky,
a.fc-event.fc-event-start.fc-event-end.fc-event-past.fc-daygrid-event.fc-daygrid-dot-event,
a.fc-event.fc-event-start.fc-event-end.fc-event-future.fc-daygrid-event.fc-daygrid-dot-event {
    color: #3959b1;
    font-family: inherit;
    font-weight: 600 !important;
    font-size: 10px !important;
    padding-left: 3px;
}

.fc-event {
    background-color: #dfe4cc;
    border: 2px solid #f8fbf2;
    cursor: pointer;
}

.fc-button-primary {
    background-color: #3959b1 !important;
    border-color: #3959b1 !important;
}

div#iremsc-calendar {
    max-width: 100% !important;
}

a.fc-col-header-cell-cushion {
    color: #eff4dd !important;
    text-transform: uppercase;
}

.fc-daygrid-event-dot {
    display: none !important;
}

.fc .fc-button-primary:hover {
    background-color: #3755a7;
    border-color: #345ab8;
}

.fc .fc-button-primary:disabled {

    visibility: hidden;
}

h2#fc-dom-1 {
    color: #3959b1;
}

section.landing-block.g-bg.g-pt-auto.g-pb-10.g-pl-0.g-pr-0 p {
    padding-left: 30px !important;

}

.cme-table tbody tr.subrow td {
    font-weight: 400;
    font-style: italic;
    color: #8c986c;
}

.cme-table tbody tr:nth-child(even) {
    background-color: #f2f5e7 !important;
}

.landing-block-node-card-badge {
    border-radius: 10px 0 22px 0 !important;
    top: -.5px !important;
    left: -.5px !important;
    padding: 0px 10px;
}

.cme-table tbody td:first-child {
    text-align: left;
    font-weight: 600;
    color: #3959b1;
    font-family: 'Faculty Glyphic';
    font-size: 13px !important;
    letter-spacing: 1px;
}

.fc .fc-button {

    padding: 2px 5px;

}

.fc-daygrid-dot-event .fc-event-title {
    overflow: hidden;
    transition: all ease .3s;
}

.fc-daygrid-dot-event .fc-event-title:hover {
    overflow: visible;

}

th.fc-col-header-cell.fc-day .fc-scrollgrid-sync-inner {
    background: #9eb277;
}

th.fc-col-header-cell.fc-day .fc-scrollgrid-sync-inner {
    border: none !important;
}

.fc-theme-standard td,
.fc-theme-standard th {
    border: 2px solid #46552912;
    background: #ffffffa1;
}

section.landing-block.g-pb-0.g-bg.g-pr-20.g-pl-20.g-pt-25 {
    padding-bottom: 30px !important;
}

/*---------END Calendar---------*/
#ems-core-course-descriptions {
    .landing-block-node-card-icon-container {
        width: 65px !important;
        height: 65px;
        background: linear-gradient(136deg, #99b366 50%, #91a766 50%) !important;
        border-radius: 50%;
        padding: 5px 5px 5px 7px;
        box-shadow: inset -12px -8px 20px -5px #48581554;
        border: 2.5px #75933a00 solid;
        margin-bottom: 5px !important;
    }

    i.landing-block-node-card-icon {
        font-size: 32px !important;
        color: #f3ffdd;
    }


}

div[id$="course-descriptions"] {
    article.landing-block-node-card-container {
        border-radius: 7px;
        overflow: hidden;
    }

    .g-mb-70 {
        margin-bottom: 0rem !important;
    }

    .u-shadow-v1-3 {
        box-shadow: 1px 2px 6px -3px #41414157;
    }

    .g-pa-40 {
        padding: 1.5rem !important;
    }

    .col-lg-6 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 43%;
        flex: 0 0 43%;
        max-width: 43%;

    }

    .row.landing-block-inner {
        justify-content: center;
    }

    .g-px-40 {
        padding-left: 1rem !important;
        padding-right: 1rem !important;
    }

    i.landing-block-node-card-icon {
        font-size: 38px !important;
        color: #f3ffdd;
    }

    .landing-block-node-card-icon-container {
        width: 80px !important;
        height: 80px;
        background: linear-gradient(136deg, #99b366 50%, #91a766 50%) !important;
        border-radius: 50%;
        padding: 5px 5px 5px 7px;
        box-shadow: inset -12px -8px 20px -5px #48581554;
        border: 2.5px #75933a00 solid;
        margin-top: -5px;
    }

    .g-mb-30 {
        margin-bottom: -10px !important;
    }

    .g-pb-30 {
        padding-bottom: 0px !important;
        margin-bottom: -10px !important;
    }

    .g-mb-40 {
        margin-bottom: 1.5rem !important;
    }

    ul.landing-block-node-card-price-list.list-unstyled.g-letter-spacing-0_5.g-font-size-12.mb-0.g-pt-20.text-uppercase.g-color {
        padding-left: 0px !important;
    }

    li.g-py-10.g-px-30.g-bg:nth-child(even) {
        opacity: .9 !important;
    }
}

div[id$="course-types"] {
    .landing-block-faq-visible.g-pa-30 {
        padding: 1.2rem 2.5rem !important;
    }

    .landing-block-faq-hidden:after {
        content: "";
        background-color: #e1e3db54;
        height: .51px;
        padding: 1.5px;
        margin-bottom: 20px !important;
        margin-left: 5%;
        margin-right: 5%;
        margin-top: 35px !important;
        border-radius: 5px;
        border-bottom: #ecffc617 solid 2px;
        box-shadow: inset 0px 1px 2px -1px #6b7c4859;
        display: block;
        position: absolute;
        left: 5px;
        top: 45px;
        width: 85%;
    }

    .g-mr-40 {
        margin-right: .5rem !important;
    }

    ul {
        padding-inline-start: 20px;
    }

    .landing-block-faq-5 .landing-block-faq-icons {
        background-color: #e2e8d500 !important;
        border: none;
        border-radius: 50%;
        color: #e1e6d2 !important;
        cursor: pointer;
        display: flex;
        align-items: center;
        justify-content: center;
        font-size: 16px;
        padding: 0;
        position: absolute;
        top: 20px;
        right: 15px;
        height: 30px;
        width: 30px;
        transition: background-color .5s ease;
    }

    .g-color-white {
        color: #c5cbb4 !important;
    }

    .landing-block-faq-5 .landing-block-faq-icons .fa-chevron-down {
        color: #d6dcc5;
    }

    .landing-block-faq-hidden ul li {
        margin-bottom: 10px;

    }

    .row {
        margin-top: 0px;
        margin-right: 0px !important;
        margin-left: 0px !important;
        padding: 40px 50px !important;
        background: #d2dbbea1 !important;
    }

    .g-mt-35 {
        margin-top: 3.5rem !important;
    }

    .row {
        margin-top: 0px;
        margin-right: 0px !important;
        margin-left: 0px !important;
        padding: 25px 50px !important;
        background: #d2dbbea1 !important;
    }

    h2.landing-block-title {
        margin-bottom: 0px !important;
    }



    .g-mr-40 {
        margin-right: 1.7rem !important;
    }

    .landing-block-faq-5 .landing-block-faq-visible {
        border-radius: 5px;
        box-shadow: 0px 1px 6px -3px gray;
    }

    .g-pl-35 {
        min-width: 100%;
        padding-left: 2.5rem !important;
    }

    .g-pr-35 {
        padding-right: 3rem !important;
    }

    .g-pr-35 {
        padding-right: 3rem !important;
    }

    .g-pl-35 {
        padding-left: 2.5rem !important;
    }

    .g-px-30 {
        padding-left: 1rem !important;
        padding-right: 1rem !important;
    }

}


div[id$="course-description"] {

    /* Card container */
    .landing-block-node-container {
        background: white;
    }

    .u-shadow-v1-3 {
        box-shadow: 0px 3px 6px -3px #1c221966;
        border-radius: 4px;
        overflow: hidden;
        /* border: 1.5px solid #b4c39417; */
    }

    .landing-block-node-container.container.g-max-width-container.g-pl-0.g-pr-0 {
        max-width: 80%;
        border-radius: 5px;
        box-shadow: 0px 1px 6px -3px gray;
    }

    .g-pa-40-30-30 {
        padding: 0rem !important;
        min-width: 60%;
    }

    .text-center {
        padding: 60px 30px 0px 30px;
    }

    article.u-block-hover {
        display: flex;
    }

    /* Icon badge */
    .landing-block-node-containericon-4744 {
        width: 80px;
        height: 80px;
        background: linear-gradient(144deg, #98b265 50%, #91a766 50%) !important;
        border-radius: 50%;
        padding: 20px 16px;
        margin-right: auto;
        position: absolute;
        top: calc(0% + 20px);
        left: calc(50% - 40px);
        box-shadow: inset -12px -8px 20px -5px #48581554;
        border: 2.5px #75933a00 solid;
    }

    .landing-block-node-icon-6931 {
        font-size: 38px;
        color: #f3ffdd;
    }

    /* Horizontal card layout */
    .landing-block-node-card-container {
        display: flex;
        flex-direction: row;
        align-items: stretch;
        height: auto;
    }

    .landing-block-node-card-img-col {
        flex: 0 0 40%;
        max-width: 40%;
    }

    .landing-block-node-card-img {
        height: 100%;
        width: 100%;
        object-fit: cover;
        display: block;
    }

    .landing-block-node-card-content-col {
        flex: 1 1 60%;
        display: flex;
        flex-direction: column;
    }

    /* Price/feature list */
    .landing-block-node-card-price-list {
        margin: 0;
        padding: 0;
        list-style: none;
    }

    .landing-block-node-card-price-list li {
        padding: 10px 30px;
    }

    figure {
        margin: -10px !important;
    }

    .g-font-size-14 {
        font-size: 12px !important;
    }

    li {
        padding: 12px 12px 12px 25px;
        background: #acbd89 !important;
    }

    ul {
        padding-inline-start: 0px !important;
        margin-bottom: 0px !important;
    }

    ::marker {
        display: none !important;
    }

    li:nth-child(even) {
        background: #b4c395 !important;
    }


    figure.g-overflow-hidden {
        max-width: 45%;

    }

    p {
        margin-top: 0 !important;
        margin-bottom: 0rem !important;
    }
}

#cme-options-links {

    .landing-block-node-card.js-slide.slick-slide {
        border-radius: 7px !important;
        overflow: hidden !important;
        box-shadow: 1px 2px 6px -3px #41414157 !important;
        margin: 10px !important;
    }
}


div#ems-communities {
    box-shadow: 1px 2px 10px 2px #00020670;
    z-index: 9;

    .u-carousel-indicators-v1 span,
    .u-carousel-indicators-v1--white-inverse span,
    .u-carousel-indicators-v1--white span {
        width: 10px;
        height: 10px;
        border-radius: 50%;
        background-color: #0a1c45;
        opacity: .7;
    }

    .u-carousel-indicators-v1 li.slick-active span {
        background-color: var(--primary);
        opacity: 1;
        border: 2px solid rgb(127 146 71);
    }

    .g-color-gray-light-v1,
    .g-color-gray-light-v1--hover.active,
    .g-color-gray-light-v1--hover:active,
    .g-color-gray-light-v1--hover:focus,
    .g-color-gray-light-v1--hover:hover,
    .g-color-gray-light-v1--hover:hover :not(font):not(a) {
        color: #6d8341 !important;
    }

    .container {
        max-width: 85vw !important;
    }

    .g-overflow-hidden {
        overflow: hidden;
        object-fit: cover;
        height: 210px;
        box-shadow: 0px 4px 4px -2px #00000057;
        border-radius: 2px;
        margin: 3px;
    }

    .landing-block-card-carousel-element.js-slide {
        padding: .6rem !important;
    }

    .slick-slide img {
        display: block;
        object-fit: cover;
        min-height: 100% !important;
        max-height: 105% !important;
        width: auto !important;
        border-radius: 2px !important;
    }
}

/* =========================================================================
   IREMSC — Certified Partner Network Carousel
   Fonts: Open Sans (body) / Faculty Glyphic (headers, small-caps)

   HOW THIS FILE IS ORGANIZED:
   Every section below is self-contained. Colors are written directly
   as hex values inside each section — nothing references a shared
   variable defined somewhere else. To change a color, find the section
   below and edit the hex value right there. Changing one section's
   colors will NEVER affect another section, even if they currently
   look the same (e.g. Lane 1 and Lane 3 are both navy today, but are
   two completely separate blocks you can recolor independently).

   All backgrounds use !important — this is intentional. If the site
   builder's own "background color" tool gets applied to this block's
   outer wrapper, it can otherwise override these and flatten every
   section to one flat color. The !important guarantees each section
   keeps its own color no matter what the builder sets at the block level.

   NOTE ON @keyframes: these MUST live at the top level of the file —
   they can't be nested inside .lanes-wrapper (or any other selector).
   That's why the 3 animation keyframe blocks are pulled out below,
   separate from the nested .lanes-wrapper block that holds everything
   else. If a future edit moves them back inside .lanes-wrapper, the
   browser will silently drop them and every lane will stop scrolling.

   NOTE ON SPEED (added with the prev/next arrows): the "animation:
   ...220s..." lines below are still here and unedited, but they're now
   INERT. Once manual arrows were added, the track's motion had to move
   from pure CSS to JavaScript (so a click has something to grab onto),
   so actual scroll speed now lives as 3 numbers in the <script> section
   of partners-carousel.html — search that file for "220" to find them.

   REMINDER: every rule in this file is nested inside .lanes-wrapper,
   so it only ever applies to elements INSIDE a real element with
   class="lanes-wrapper" in the HTML. If that wrapper div is ever
   missing from the page, every single rule below silently matches
   nothing — no errors, just total silence. (We've hit this one before.)

   SECTIONS IN THIS FILE:
     0. Keyframes (top-level, required — see note above)
     1. Title Band        (green bar, big title)
     2. Intro Band         (navy, small heading + paragraph)
     3. Lane 1 — Fire & EMS Departments        (navy)
     4. Lane 2 — Boroughs & Municipalities      (green)
     5. Lane 3 — Military & Native Health       (navy)
     6. Shared layout/motion (not color-related, safe to ignore unless
        you want to change speed or motion behavior)
     7. Lane Arrows (tall, borderless, fade-in-on-row-hover, sitting
        just outside the card row in the gutter)
   ========================================================================= */


/* =========================================================================
   0. KEYFRAMES — must stay at the top level, never nested
   ========================================================================= */
@keyframes lane-fire-scroll {
    from {
        transform: translateX(0);
    }

    to {
        transform: translateX(-50%);
    }
}

@keyframes lane-gov-scroll {
    from {
        transform: translateX(-50%);
    }

    to {
        transform: translateX(0);
    }
}

@keyframes lane-military-scroll {
    from {
        transform: translateX(0);
    }

    to {
        transform: translateX(-50%);
    }
}

#alaska-ems-network {
    overflow: hidden !important;
}

.lanes-wrapper {
    max-width: 85vw;
    margin: auto;
    overflow: hidden;
    border-right: 8px solid #071534;
    border-left: 8px solid #061332;
    box-shadow: 0px 1px 12px 5px #00000069;




    /* =========================================================================
   1. TITLE BAND — the big green bar with "Certified Partner Network"
   ========================================================================= */
    .title-band {
        background: #9eb277 !important;
        /* <- band color */
        padding: 40px 24px;
        text-align: center;
    }

    .title-band-text {
        font-family: 'Faculty Glyphic', serif;
        font-variant: small-caps;
        letter-spacing: 2.5px;
        font-size: clamp(26px, 4vw, 40px);
        margin: 0;
        color: #ffffff;
        /* <- title text color */
    }


    /* =========================================================================
   2. INTRO BAND — navy section with small heading + paragraph
   ========================================================================= */
    .intro-band {
        background: #03173e00 !important;
        text-align: center;
        padding: 40px 24px 34px;
    }

    .intro-eyebrow {
        font-family: 'faculty glyphic';
        font-weight: 700;
        font-size: 14px;
        letter-spacing: 0.14em;
        text-transform: uppercase;
        color: #9eb277;
        margin: 0 0 14px;
    }

    .intro-copy {
        font-family: 'Assistant', sans-serif;
        color: #dbdbdb;
        /* <- paragraph text color */
        font-size: 15px;
        line-height: 1.7;
        max-width: 680px;
        margin: 0 auto;
    }


    /* =========================================================================
   3. LANE 1 — FIRE & EMS DEPARTMENTS  (navy band)
   ========================================================================= */
    .lane-fire {
        background: #081a40e8 !important;
        backdrop-filter: blur(4px);
        overflow: hidden;
        padding: 40px 40px 70px 40px;
    }

    .lane-fire-label {
        font-family: 'Assistant', sans-serif;
        font-size: 11px;
        letter-spacing: 0.22em;
        text-transform: uppercase;
        margin: 0 0 30px 4px;
        display: flex;
        align-items: center;
        gap: 10px;
        color: #dbdbdb;
        /* <- label text color */
    }

    .lane-fire-label::before {
        content: "";
        width: 6px;
        height: 6px;
        border-radius: 1px;
        display: inline-block;
        transform: rotate(45deg);
        background: #9eb277;
        /* <- label bullet color */
    }

    .lane-fire-mask {
        -webkit-mask-image: linear-gradient(90deg, transparent 0, #000 56px, #000 calc(100% - 56px), transparent 100%);
        mask-image: linear-gradient(90deg, transparent 0, #000 56px, #000 calc(100% - 56px), transparent 100%);
    }

    .lane-fire-track {
        display: flex;
        width: max-content;
        gap: 25px;
        animation: lane-fire-scroll 220s linear infinite;
    }

    .lane-fire-mask:hover .lane-fire-track {
        animation-play-state: paused;
    }

    .lane-fire-card {
        flex: 0 0 auto;
        border-radius: 2px;
        padding: 20px 25px;
        min-width: 190px;
        display: flex;
        flex-direction: column;
        gap: 4px;
        position: relative;
        border-radius: 5px;
        box-shadow: 2px 1px 5px -2px #00000073;
        text-decoration: none;
        cursor: pointer;
        transition: transform 0.15s ease, border-color 0.15s ease;
        background: #071335;
        margin: 5px;
    }

    .lane-fire-card:hover {
        transform: translateY(-2px);
        border-color: #9eb277;
    }

    /* <- hover border color */
    .lane-fire-card::before {
        content: "";
        position: absolute;
        left: 0;
        top: 0;
        bottom: 0;
        width: 5px;
        background: #0a1c45;
    }


    /* <- category tag color */
    .lane-fire-card .partner-tag {
        color: #445b9e;
        font-weight: 500;
    }

    /* <- org name color */
    .lane-fire-card .partner-loc {
        color: #436dcc;
    }

    /* <- location text color */


    /* =========================================================================
   4. LANE 2 — BOROUGHS & MUNICIPALITIES  (green band)
   ========================================================================= */
    .lane-gov {
        background: #041536 !important;
        padding: 35px 40px 70px 40px;
        overflow: hidden;
        backdrop-filter: blur(3px);
        margin-top: -1px;
        border-top: 7px solid #081940;
        border-bottom: 7px solid #081940;
    }

    .lane-gov-label {
        font-family: 'Assistant', sans-serif;
        font-size: 11px;
        letter-spacing: 0.22em;
        text-transform: uppercase;
        margin: 0 0 30px 4px;
        display: flex;
        align-items: center;
        gap: 10px;
        color: rgba(255, 255, 255, 0.75);
    }

    .lane-gov-label::before {
        content: "";
        width: 6px;
        height: 6px;
        border-radius: 1px;
        display: inline-block;
        transform: rotate(45deg);
        background: #96aa75;
    }

    .lane-gov-mask {
        -webkit-mask-image: linear-gradient(90deg, transparent 0, #000 56px, #000 calc(100% - 56px), transparent 100%);
        mask-image: linear-gradient(90deg, transparent 0, #000 56px, #000 calc(100% - 56px), transparent 100%);
    }

    .lane-gov-track {
        display: flex;
        width: max-content;
        gap: 38px;
        animation: lane-fire-scroll 220s linear infinite;
    }

    .lane-gov-mask:hover .lane-gov-track {
        animation-play-state: paused;
    }

    .lane-gov-card {
        flex: 0 0 auto;
        border-radius: 5px;
        padding: 14px 25px;
        min-width: 210px;
        display: flex;
        flex-direction: column;
        gap: 4px;
        position: relative;
        text-decoration: none;
        cursor: pointer;
        transition: transform 0.25s ease-in-out, border-color 0.25s ease;
        background: rgb(8 25 64);
        box-shadow: 1px 0px 8px -5px #000000e3;
        margin-bottom: 5px;
    }

    .lane-gov-card:hover {
        transform: translateY(-2px);
        border-color: #ffffff;
    }

    /* <- hover border color */
    .lane-gov-card::before {
        content: "";
        position: absolute;
        left: 0;
        top: 0;
        bottom: 0;
        width: 5px;
        background: #071535;
    }

    .lane-gov-card .partner-tag {
        color: #ffffff;
    }

    /* <- category tag color */
    .lane-gov-card .partner-tag {
        color: #2c4683;
        font-weight: 500;
    }

    /* <- org name color */
    .lane-gov-card .partner-name {
        color: #97ab75;
    }

    /* <- location text color */


    /* =========================================================================
   5. LANE 3 — MILITARY INSTALLATIONS & NATIVE HEALTH  (navy band)
   ========================================================================= */
    .lane-military {
        background: #081a40e8 !important;
        backdrop-filter: blur(4px);
        overflow: hidden;
        padding: 40px 40px 70px 40px;
        margin-top: -1px;
    }

    .lane-military-label {
        font-family: 'Assistant', sans-serif;
        font-size: 11px;
        letter-spacing: 0.22em;
        text-transform: uppercase;
        margin: 0 0 30px 4px;
        display: flex;
        align-items: center;
        gap: 10px;
        color: #dbdbdb;
        /* <- label text color */
    }

    .lane-military-label::before {
        content: "";
        width: 6px;
        height: 6px;
        border-radius: 1px;
        display: inline-block;
        transform: rotate(45deg);
        background: #9eb277;
        /* <- label bullet color */
    }

    .lane-military-mask {
        -webkit-mask-image: linear-gradient(90deg, transparent 0, #000 56px, #000 calc(100% - 56px), transparent 100%);
        mask-image: linear-gradient(90deg, transparent 0, #000 56px, #000 calc(100% - 56px), transparent 100%);
    }

    .lane-military-track {
        display: flex;
        width: max-content;
        gap: 25px;
        animation: lane-fire-scroll 220s linear infinite;
    }

    .lane-military-mask:hover .lane-military-track {
        animation-play-state: paused;
    }

    .lane-military-card {
        flex: 0 0 auto;
        border-radius: 2px;
        padding: 20px 25px;
        min-width: 190px;
        display: flex;
        flex-direction: column;
        gap: 4px;
        position: relative;
        border-radius: 5px;
        box-shadow: 2px 1px 5px -2px #00000073;
        text-decoration: none;
        cursor: pointer;
        transition: transform 0.15s ease, border-color 0.15s ease;
        background: #071335;
        margin: 5px;
    }

    .lane-military-card:hover {
        transform: translateY(-2px);
        border-color: #9eb277;
    }

    /* <- hover border color */
    .lane-military-card::before {
        content: "";
        position: absolute;
        left: 0;
        top: 0;
        bottom: 0;
        width: 5px;
        background: #0a1c45;
    }

    .lane-military-card .partner-tag {
        color: #9eb277;
    }

    /* <- category tag color */
    .lane-military-card .partner-name {
        color: #97ab75;
    }

    /* <- org name color */
    .lane-military-card .partner-loc {
        color: #dbdbdb;
    }

    /* <- location text color */



    /* =========================================================================
   6. SHARED LAYOUT / MOTION — not color-related, safe to ignore unless
      you want to change spacing, card sizing, or the "no link yet" state
   ========================================================================= */
    .lane-inner {
        max-width: calc(100vw - 200px);
        margin: 0 auto;
        padding: 0 24px;
    }

    .partner-tag {
        font-family: 'Assistant', sans-serif;
        font-size: 10px;
        letter-spacing: 2px;
        text-transform: uppercase;
        color: #436dcc !important;
    }

    .partner-name {
        font-family: 'Faculty Glyphic', serif;
        font-variant: small-caps;
        letter-spacing: 1.5px;
        font-size: 17px;
        line-height: 1.25;
        color: #879f5e !important;
        font-size-adjust: .45;
        font-weight: 900 !important;
    }

    .partner-loc {
        font-family: 'Assistant', sans-serif;
        font-size: 11px;
        letter-spacing: 1px;
        color: #436dcc !important;
    }

    /* Placeholder cards with no URL yet — dimmed + no hover lift, so it's
   obvious at a glance which ones still need a link filled in. */
    .no-link {
        cursor: default;
    }

    .no-link:hover {
        transform: none !important;
        visibility: visible;
    }

    @media (prefers-reduced-motion: reduce) {

        .lane-fire-track,
        .lane-gov-track,
        .lane-military-track {
            animation: none;
        }
    }

    a:focus,
    a:hover {
        text-decoration: none !important;
    }


    /* =========================================================================
   7. LANE ARROWS — tall, borderless, invisible-until-hover strips
      sitting just outside the card row (in the gutter between
      .lane-inner's edge and the colored lane background), not
      overlapping the cards themselves.
   ========================================================================= */
    .lane-row {
        position: relative;
    }

    .lane-arrow {
        position: absolute;
        top: 0;
        bottom: 0;
        width: 44px;
        display: flex;
        align-items: center;
        justify-content: center;
        background: none;
        border: none;
        padding: 0;
        color: rgba(255, 255, 255, 0.85);
        cursor: pointer;
        opacity: 0;
        transition: opacity 0.25s ease, color 0.2s ease;
        z-index: 3;
    }

    .lane-row:hover .lane-arrow {
        opacity: 1;
    }

    .lane-arrow:hover {
        color: #ffffffc1;
    }

    .lane-arrow.prev {
        left: -75px;
        /* sits in the gutter, outside .lane-inner's content column */
    }

    .lane-arrow.next {
        right: -75px;
    }

    .lane-arrow svg {
        width: 20px;
        height: 100%;
        /* preserveAspectRatio="none" on the <svg> tag stretches the
           chevron the full height of the row for the tall look */
    }

}

#alaska-ems-news {
    .landing-block-node-card.js-slide {
        box-shadow: 0px 3px 5px -3px #2f2f2fcc;
        margin-bottom: 20px;
        border-radius: 5px;
        overflow: hidden;
        margin-right: 12px !important;
        margin-left: 12px !important;
        outline: 1px solid #f1f5e6;
    }

    img.landing-block-node-card-img.img-fluid.w-100 {
        height: 40%;
        overflow: hidden;
        object-fit: cover;
        object-position: top;
    }

    .landing-block-node-card-container {
        display: flex !important;
        flex-direction: column !important;
        height: 370px !important;
    }

    h3.landing-block-node-card-title {
        display: -webkit-box;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 3;
        line-clamp: 3;
        overflow: hidden;
    }

    .g-pa-20 {
        height: 60%;
        display: flex;
        flex-direction: column;
        justify-content: space-between;
    }

    .landing-block-node-card-text {
        display: -webkit-box;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 4;
        line-clamp: 4;
        overflow: hidden;
    }
}

#articles-sidebar {

    article.landing-block-card:after {
        content: "";
        background-color: #e9ffbd00;
        height: 2px;
        padding: 1.5px;
        margin-bottom: 20px !important;
        margin-top: 30px !important;
        border-radius: 5px;
        border-bottom: #ecffc617 solid 2px;
        box-shadow: inset 0px 1px 1.5px -1px #6b7c48;
        display: block;
        position: absolute;
        left: 0;
        top: 82%;
        width: 100%;
    }

    article.landing-block-card {
        position: relative;
        margin-bottom: 35px !important;
        padding-top: 5px;
        padding-bottom: 5px;
        pointer-events: all;
        align-items: center !important;
    }

    img.landing-block-node-img {
        height: 70px !important;
        width: 70px !important;
        object-fit: cover;
    }

    h6.landing-block-node-title {
        font-family: 'Assistant';
        font-variant: none !important;
        font-weight: 500 !important;
        /* text-transform: uppercase; */
        letter-spacing: .7px !important;
        font-size: 13px !important;
    }


}

#resources-links {

    .landing-block-node-card-box {
        padding-top: 35px !important;
        padding-bottom: 20px !important;
    }

}

/* ============================================================
   ARTICLE DETAIL PAGE STYLES
   Covers: body image alignment, gallery slider, image modal
   ============================================================ */

#article-body {
    box-shadow: 0px 2px 5px #76845d96;
    background: #ffffff !important;

    section.landing-block {
        padding-left: 30px !important;
        padding-right: 30px !important;
    }
}

/* ------------------------------------------------------------
   1. BODY IMAGES ([1L] [2R] [3F] markers)
   ------------------------------------------------------------ */

#detail-body .landing-block-node-text p,
.landing-block-node-text#detail-body p,
#detail-body p {
    overflow: auto !important;
    color: #434343 !important;
}

.article-source {
    min-width: calc(100% + 4rem) !important;
    margin-left: -2rem;
    background: #f5f6f1;
    padding: 25px 20px 10px 25px;
    border-radius: 5px;
    font-size: 14px;
    text-transform: capitalize;
    font-style: italic;
}

.article-source a {
    font-weight: bold;
    color: #223672;
}

.article-source a:hover,
.article-source a:focus {
    text-decoration: none !important;
}

.article-img-wrap {
    display: block !important;
    overflow: hidden !important;
    /* forces this box to size around BOTH the image and caption together */
    margin-bottom: 1.2em !important;
}

.article-img-left {
    float: left !important;
    width: 25% !important;
    margin: .5em 1.2em 1.2em 0 !important;
}

.article-img-right {
    float: right !important;
    width: 25% !important;
    margin: .5em 0 1.2em 1.2em !important;
}

.article-img-full {
    width: 100% !important;
    clear: both !important;
    margin: 1.5em 0 !important;
}

.article-img-wrap img {
    width: 100% !important;

    object-fit: cover !important;
    display: block !important;
    border-radius: 6px !important;
}

.article-img-caption {
    position: static !important;
    display: block !important;
    font-size: 0.75em !important;
    color: #888 !important;
    font-style: italic !important;
    margin: 0 !important;
    padding-top: 8px !important;
    line-height: 1.3 !important;
}

/* ------------------------------------------------------------
   2. INLINE BANNER ([banner] marker)
   ------------------------------------------------------------ */

.article-inline-banner {
    width: 100%;
    height: 400px;
    max-height: 400px;
    display: block;
    margin: 0em 0px -3px 0px;
    border-radius: 6px;
    object-fit: cover;
    overflow: hidden;
}

.article-inline-banner-wrap {
    margin: 0px 0px 20px 0px;
}

.g-mb-20 {
    margin-bottom: .5rem !important;
}

/* ------------------------------------------------------------
   GALLERY & MODAL: REQUIRED FUNCTIONAL RULES
   (not just visual polish, the slider/modal won't work without these)
   ------------------------------------------------------------ */

.article-gallery-slide {
    display: none;
}

.article-gallery-slide.active {
    display: block;
}

.img-modal-overlay {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgb(10 15 30 / 88%);
    z-index: 9999;
    align-items: center;
    justify-content: center;
    backdrop-filter: blur(3px);
}

.img-modal-overlay.open {
    display: flex;
}

.img-modal-content {
    max-width: 90vw;
    max-height: 80vh;
    text-align: center;
}

.img-modal-content img {
    max-width: 100%;
    max-height: 80vh;
}

h6#detail-date {

    font-weight: 500 !important;
    color: #808080 !important;
    font-family: 'Assistant';
    font-size: 16px !important;
}

/* ------------------------------------------------------------
   3. GALLERY SLIDER ([gallery] marker)
   ------------------------------------------------------------ */

.article-gallery {
    position: relative;
    margin: 1.5em 0;
    clear: both;
}

.article-gallery-track {
    overflow: hidden;
    border-radius: 8px;
    height: 100%;
    background: #dbe2ce;
    padding: 20px;
}

.article-gallery-slide img {
    width: 100%;
    max-width: 100%;
    border-radius: 8px;
    cursor: zoom-in;
    display: block;
    height: 650px !important;
    object-fit: cover;
}

.article-gallery-caption {
    font-size: 0.85em;
    color: #666;
    text-align: center;
    margin-top: 0.5em;
    font-style: italic;
}

.article-gallery-arrow {
    position: absolute;
    top: 20px;
    background: rgb(219 226 206);
    color: #2e426a;
    border: none;
    width: 20px;
    height: 650px;
    border-radius: 0px;
    cursor: pointer;
    font-size: 50px;
    z-index: 2;
}

.article-gallery-arrow.prev {
    left: 5px;
}

.article-gallery-arrow.next {
    right: 5px;
}

.article-gallery-dots {
    text-align: center;
    margin-top: 0.5em;
}

.article-gallery-dot {
    display: inline-block;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #ccc;
    margin: 0 4px;
    cursor: pointer;
}

.article-gallery-dot.active {
    background: #2d4589;
}


/* ------------------------------------------------------------
   4. FULLSCREEN IMAGE MODAL (click-to-enlarge, gallery + body images)
   ------------------------------------------------------------ */

.img-modal-caption {
    color: #fff;
    margin-top: 1em;
    font-size: 0.95em;
}

.img-modal-close {
    position: absolute;
    top: 20px;
    right: 30px;
    color: #fff;
    font-size: 32px;
    cursor: pointer;
    background: none;
    border: none;
}

.img-modal-arrow {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background: rgba(255, 255, 255, 0.15);
    color: #fff;
    border: none;
    width: 48px;
    height: 48px;
    border-radius: 50%;
    cursor: pointer;
    font-size: 22px;
}

.img-modal-arrow.prev {
    left: 30px;
}

.img-modal-arrow.next {
    right: 30px;
}

/* ------------------------------------------------------------
   HOMEPAGE SLIDER: simple blue arrows above the carousel
   ------------------------------------------------------------ */

#alaska-ems-news .slick-arrow {
    position: static !important;
    background: none !important;
    border: none !important;
    color: #2d4589 !important;
    font-size: 32px !important;
    width: auto !important;
    height: auto !important;
    opacity: 1 !important;
    box-shadow: none !important;
    padding: 0 !important;
    font-size: 0 !important;
    /* hides the default "Previous"/"Next" text */
    line-height: 0 !important;
}

#alaska-ems-news .slick-arrow::before {
    font-family: inherit !important;
    font-size: 32px !important;
    color: #2d4589 !important;
    opacity: 1 !important;
}

#alaska-ems-news .slick-prev::before {
    content: "\2039" !important;
    /* ‹ */
}

#alaska-ems-news .slick-next::before {
    content: "\203A" !important;
    /* › */
}

#alaska-ems-news {
    display: flex;
    flex-direction: column;
}

#alaska-ems-news .js-carousel {
    order: 2;
}

#alaska-ems-news .slick-arrow-bar {
    order: 1;
    display: flex;
    justify-content: flex-end;
    align-items: center;
    gap: 40px;
    background: #0a1a3d00;
    padding-top: 0px;
    padding-bottom: 20px;
    margin-right: 110px;
}

/* ============================================================
   Grants & Resources -- horizontal slider styles
   Extracted from the dynamic block renderer / slider templates.
   Add this to your site's stylesheet, then the templates can
   reference these classes instead of inline styles.
   ============================================================ */

.resource-slider-wrapper {
    position: relative;
    padding: 0 20px;
}

.resource-slider-arrow {
    position: absolute;
    top: -12px;
    transform: translateY(-50%);
    z-index: 2;
    width: 30px;
    height: 50px;
    border-radius: 5px;
    border: none;
    background: #ffffff00;
    color: #bcc4a4;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0);
    cursor: pointer;
    font-size: 40px;
    line-height: 0px;
    padding-bottom: 10px;
}

.resource-slider-arrow--prev {
    right: 65px;
}

.resource-slider-arrow--next {
    right: 35px;
}

.resource-grid {
    display: flex;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
    gap: 16px;
    padding: 8px 4px;
    scrollbar-width: none;
    /* Firefox */
}

.resource-grid::-webkit-scrollbar {
    display: none;
    /* Chrome, Safari, Edge */
}

/* Card sizing shared by both templates: ~4 across on wide screens,
   never narrower than 220px so text stays legible on smaller viewports. */
.resource-card {
    flex: 0 0 calc(25% - 12px);
    min-width: 220px;
    scroll-snap-align: start;
}

/* "links" template card (image + click-through, dark background) */
.resource-card--links {
    background: #132240;
}

.resource-card--links:hover {
    background: #2d4589;
}

/* "files" template card (white background, badge + title + description) */
.resource-card--files {
    background: #ffffff;
    min-height: 205px;
    border: 1px solid transparent;
    transition: 0.3s;
}