/* ARTWORK NOTES
--------------------------------------------

--------------------------------------------
*/
html body.site-home {
    --section-above-bg: var(--secondary-color);
}

html body {
    --side-menu-bg: var(--primary-color);
    --side-menu-bg-hover: var(--secondary-color);
    --side-menu-font-size-desktop: min(1.25vw, 1.25rem);
    --side-menu-font-family: var(--body-font-family);
    --side-menu-font-weight: 400;

    --section-container-top-bg: transparent;
    --section-slideshow-bg: transparent;
    --section-container-main-bg: transparent;
}

html body #g-navigation {
    --main-menu-text-color: var(--primary-color);
    --main-menu-text-color-hover: var(--primary-color);
	--main-menu-bg: var(--default-white);
    --main-menu-bg-color: var(--default-white);

    --navigation-floating-social-padding: min(1vw, 1rem);

    --navigation-floating-social-bg: transparent;
}

.g-array-item-text {
    margin: 0!important;
    padding: 0!important;
}

@media only screen and (min-width: 50.99rem) {
    .site-home #g-page-surround {
        background: url('/images/template/background.jpg') 50% 50% no-repeat;
        background-size: cover;
    }
    .site-home #g-page-surround:before {
        content: '';
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        background: rgba(var(--default-white-rgb),.45);
        /*z-index: 0;*/
    }
    /*#g-page-surround > section {
        position: relative;
        z-index: 1;
    }

    #g-container-top {
        z-index: 2000;
    }*/
}

/* NAVIGATION */
@media only screen and (min-width: 50.99rem) {
    #g-navigation {
        box-shadow: var(--default-box-shadow);
        position: relative;
        z-index: 1000;
    }

    #g-navigation > .g-container > .g-grid:has(.g-main-nav) {
        position: relative;
    }
    #g-navigation > .g-container > .g-grid:has(.g-main-nav):before {
        content: '';
        background: var(--default-white);
        height: 100%;
        width: 3000%;
        margin-left: -500%;
        margin-right: -500%;
        position: absolute;
    }

    #g-navigation > .g-container > .g-grid:nth-child(3) {
        padding: min(2vw, 2rem) 0;
    }

    .rooftop-bar .g-main-nav .g-toplevel>li:not(.g-toplevel>li:has(.g-social-items))>.g-menu-item-container {
        --navigation-menu-item-padding: min(1.2vw, 1.2rem) min(1vw, 14.4px);
    }

    .rooftop-bar > .g-container > .g-grid:has(.nav-social-icons) {
        position: absolute;
        top: 0;
        right: 0;
        z-index: 30;
    }

    .rooftop-bar .search-box form {
        width: min(17vw, 250px);
    }
    .rooftop-bar .search-box form > input {
        border: 2px solid var(--primary-color);
        color: var(--primary-color);
        max-width: 250px;
        font-size: min(1.25vw, 1.25rem);
    }
    .rooftop-bar .search-box form > input::placeholder {
        color: var(--primary-color);
        font-size: min(1.25vw, 1.25rem);
    }

    .rooftop-bar > .g-container > .g-grid:has(.nav-social-icons) .g-social-items a {
        --navigation-floating-social-items-color: var(--primary-color);
    }
    .rooftop-bar > .g-container > .g-grid:has(.nav-social-icons) .g-social-items a:hover {
        --navigation-floating-social-items-color-hover: var(--secondary-color);
    }

    .rooftop-bar .g-main-nav > .g-toplevel > li:has(.g-social-items) {
        display: none!important;
    }
}

@media only screen and (max-width: 50.99rem) {
    #g-navigation > .g-container {
        padding: 1.5rem 0!important;
    }

    #g-navigation .nav-social-icons {
        display: none!important;
    }

    :is(.rooftop-bar, .crawl-space) .search-box form > input[type="text"] {
        border: 2px solid var(--primary-color)!important;
        color: var(--primary-color);
    }
    :is(.rooftop-bar, .crawl-space) .search-box form > input[type="text"]::placeholder {
        color: var(--primary-color);
    }
}

@media only screen and (min-width: 50.99rem) {
    #g-navigation .g-main-nav .g-sublevel>li>.g-menu-item-container {
        color: var(--default-white);
    }
    #g-navigation .g-main-nav .g-sublevel>li>.g-menu-item-container:hover {
        background: var(--secondary-color);
        color: var(--default-white)!important;
    }
}

/*SLIDESHOW*/
@media only screen and (min-width: 50.99rem) {
    .site-home #g-slideshow > .g-container {
        padding: min(2vw, 2rem) min(2vw, 2rem) min(1vw, 1rem) min(2vw, 2rem)!important;
    }
}

@media only screen and (max-width: 50.99rem) {
    .ql-swiper-sidelinks {
        order: 2;
    }
}

/*MAIN*/
@media only screen and (min-width: 50.99rem) {
    .site-home #g-container-main > .g-container {
        padding: min(2vw, 2rem)!important;
    }
    .site-home #g-container-main > .g-container > .g-grid {
        padding: min(1.5vw, 1.5rem);
        display: flex;
        flex-direction: row;
        gap: min(5vw, 5rem);
        background: rgba(154, 154, 154, .75);
        border-radius: 1rem;
        overflow: hidden;
    }
    .site-home #g-container-main > .g-container > .g-grid > .g-block {
        flex: 1;
        width: unset;
        max-width: unset;
    }

    .site-home #g-container-main .widget-container .widget-wrapper .widget-feed {
        overflow: visible!important;
        margin: 0;
        padding: 0;
    }
    .site-home #g-container-main .widget-container .widget-wrapper .widget-feed .widget-feed-inner-box {
        overflow: visible!important;
    }

    .site-home #g-sidebar {
        display: flex;
        flex-direction: column;
        gap: min(2vw, 2rem);
    }

    .site-home #g-sidebar .ph-sidenews .g-content-array {
        border-top: 2px solid var(--secondary-color);
    }

    .site-home #g-container-main .widget-container .widget-wrapper {
        --widget-wrapper-item-gap: min(2vw, 2rem);
    }

    .site-home #g-container-main .g-title {
        margin: 0;
        padding: 0;
        line-height: 1;
        color: var(--primary-color);
        font-weight: 700;
        font-family: var(--title-font-family);
        text-align: center;
        text-transform: none;
        font-variant-caps: normal;
        font-size: min(2.25vw, 2.25rem);
        border: none;
    }

    .site-home .news-button > .g-content {
        display: flex;
        justify-content: center;
        align-items: center;
    }
    .site-home .news-button .button {
        margin: var(--headlines-buttons-margin);
        padding: var(--headlines-buttons-padding);
        font-family: var(--headlines-buttons-font-family);
        font-weight: var(--headlines-buttons-font-weight);
        color: var(--headlines-buttons-color);
        text-shadow: var(--headlines-buttons-text-shadow);
        text-align: var(--headlines-buttons-text-align);
        line-height: var(--headlines-buttons-line-height);
        text-transform: var(--headlines-buttons-text-transform);
        font-variant-caps: var(--headlines-buttons-fvc);
        font-size: var(--headlines-buttons-font-size);
        text-decoration: var(--headlines-buttons-text-decoration);
        border: var(--headlines-buttons-border);
        background: var(--headlines-buttons-bg);
        border-radius: var(--headlines-buttons-border-radius);
        min-width: var(--headlines-button-min-width);
    }
}

@media only screen and (max-width: 50.99rem) {
    .site-home.withmaxwidth #g-container-main > .g-container {
        padding: 2rem 0!important;
    }
    .site-home.withmaxwidth #g-container-main > .g-container > .g-grid {
        display: flex;
        flex-direction: column;
        gap: 2rem;
    }
    .site-home.withmaxwidth #g-container-main > .g-container > .g-grid > .g-block {
        flex: 1;
        max-width: 100%;
        width: 100%;
    }

    .site-home #g-container-main .widget-container .widget-wrapper .widget-feed {
        overflow: visible!important;
    }
    .site-home #g-container-main .widget-container .widget-wrapper .widget-feed .widget-feed-inner-box {
        overflow: visible!important;
    }

    .site-home #g-container-main .g-title {
        margin: 0;
        padding: 0;
        line-height: 1;
        color: var(--primary-color);
        font-weight: 700;
        font-family: var(--title-font-family);
        text-align: center;
        text-transform: none;
        font-variant-caps: normal;
        font-size: 6vw;
        border: none;
    }

    .site-home .news-button > .g-content {
        display: flex; 
        justify-content: center;
        align-items: center;
    }
    .site-home .news-button .button {
        margin: var(--headlines-buttons-margin-mobile);
        padding: var(--headlines-buttons-padding-mobile);
        font-family: var(--headlines-buttons-font-family);
        font-weight: var(--headlines-buttons-font-weight-mobile);
        color: var(--headlines-buttons-color);
        text-shadow: var(--headlines-buttons-text-shadow);
        text-align: var(--headlines-buttons-text-align-mobile);
        line-height: var(--headlines-buttons-line-height);
        text-transform: var(--headlines-buttons-text-transform);
        font-variant-caps: var(--headlines-buttons-fvc);
        font-size: var(--headlines-buttons-font-size-mobile);
        text-decoration: var(--headlines-buttons-text-decoration);
        border: var(--headlines-buttons-border);
        background: var(--headlines-buttons-bg);
        border-radius: var(--headlines-buttons-border-radius);
        min-width: var(--headlines-button-min-width-mobile);
    }

    .widget-container .widget-wrapper .widget-feed iframe {
        height: 120vw;
        border-radius: 1rem;
        overflow: hidden;
        box-shadow: var(--default-box-shadow);
    }

    .site-home .news-button {
        padding: 0 1rem;
    }

    .widget-container .widget-wrapper .widget-button {
        padding: 0 1rem!important;
    }
}

@media only screen and (min-width: 50.99rem) {
    .ph-sidenews {
        margin: 0;
        padding: 0;
    }
    .ph-sidenews > .g-content {
        margin: 0;
        padding: 0;
        display: flex;
        flex-direction: column;
        gap: min(2vw, 2rem);
    }
    .ph-sidenews .g-content-array {
        margin: 0;
        padding: 0;
        display: flex;
        flex-direction: column;
        gap: 0;
    }
    .ph-sidenews .g-content-array > .g-grid {
        margin: 0;
        padding: min(1vw, 1rem) 0;
        position: relative;
        transition: .3s all ease-in-out;
        border-bottom: 2px solid var(--secondary-color);
    }
    .ph-sidenews .g-content-array > .g-grid:hover > .g-block {
        background: rgba(var(--secondary-color-rgb),.4);
    }
    .ph-sidenews .g-content-array > .g-grid > .g-block:after {
        content: '\f138';
        font-family: 'Font Awesome 6 Free';
        font-weight: 900;
        color: var(--primary-color);
        line-height: 1.25;
        font-size: min(2vw, 2rem);
        position: absolute;
        top: 0;
        right: min(1vw, 1rem);
        bottom: 0;
        display: flex;
        justify-content: center;
        align-items: center;
        pointer-events: none!important;
    }
    .ph-sidenews .g-content-array > .g-grid > .g-block {
        margin: 0;
        padding: 0;
        transition: .3s all ease-in-out;
        border-radius: 1rem;
    }
    .ph-sidenews .g-content-array > .g-grid > .g-block > .g-content {
        margin: 0;
        padding: 0;
        transition: .3s all ease-in-out;
    }
    .ph-sidenews .g-array-item {
        margin: 0;
        padding: 0;
        transition: .3s all ease-in-out;
    }
    .ph-sidenews .g-array-item-image {
        margin: 0;
        padding: min(1.5vw, 1.5rem) min(1.5vw, 1.5rem) min(1.5vw, 1.5rem) min(1.5vw, 1.5rem);
        float: left;
        transition: .3s all ease-in-out;
    }
    .ph-sidenews .g-array-item-image a {
        margin: 0;
        padding: 0;
        transition: .3s all ease-in-out;
    }
    .ph-sidenews .g-array-item-image img {
        margin: 0;
        padding: 0;
        width: 100%;
        max-width: min(10vw, 10rem);
        height: auto;
        aspect-ratio: 1/1;
        object-position: center;
        object-fit: cover;
        border-radius: .5rem;
        overflow: hidden;
        border-radius: 50%;
        box-shadow: var(--default-box-shadow);
        transition: .3s all ease-in-out;
    }
    .ph-sidenews .g-array-item-title {
        margin: 0;
        padding: min(1.5vw, 1.5rem) min(4vw, 4rem) min(.75vw, .75rem) min(1.5vw, 1.5rem);
        transition: .3s all ease-in-out;
    }
    .ph-sidenews .g-item-title {
        margin: 0;
        padding: 0;
        font-size: min(1.5vw, 1.5rem);
        font-family: var(--title-font-family);
        line-height: 1.2;
        font-weight: 700;
        border: none;
        text-transform: none;
        font-variant-caps: normal;
        color: var(--primary-color);
        transition: .3s all ease-in-out;
    }
    .ph-sidenews .g-item-title a {
        margin: 0;
        padding: 0;
        font-size: min(1.5vw, 1.5rem);
        font-family: var(--title-font-family);
        line-height: 1.2;
        font-weight: 700;
        border: none;
        text-transform: none;
        font-variant-caps: normal;
        color: var(--primary-color);
        transition: .3s all ease-in-out;
    }
    .ph-sidenews .g-array-item-text {
        margin: 0;
        padding: 0 min(4vw, 4rem) min(1.5vw, 1.5rem) min(1.5vw, 1.5rem)!important;
        font-size: min(1.25vw, 1.25rem)!important;
        font-family: var(--body-font-family);
        line-height: 1.4;
        font-weight: 400;
        color: var(--default-black);
        opacity: .7;
        transition: .3s all ease-in-out;
    }
    .ph-sidenews .g-array-item-read-more {
        margin: 0;
        padding: 0;
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        height: 100%;
        width: 100%;
        opacity: 0;
    }
    .ph-sidenews .g-array-item-read-more a {
        margin: 0;
        padding: 0;
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        height: 100%;
        width: 100%;
        opacity: 0;
    }
}

@media only screen and (max-width: 50.99rem) {
    .ph-sidenews {
        margin: 0;
        padding: 0;
    }
    .ph-sidenews > .g-content {
        margin: 0;
        padding: 0;
    }
    .ph-sidenews .g-content-array {
        margin: 0;
        padding: 1rem 12.5vw;
        display: flex;
        flex-direction: row;
        gap: 1rem;
        overflow-x: auto;
        overflow-y: hidden;
        scroll-snap-type: x mandatory;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: none;
    }
    .ph-sidenews .g-content-array::-webkit-scrollbar {
        display: none;
    }
    .ph-sidenews .g-content-array > .g-grid {
        margin: 0;
        padding: 0;
        position: relative;
        background: var(--default-white);
        border-radius: .75rem;
        overflow: hidden;
        box-shadow: var(--default-box-shadow);
        transition: .3s all ease-in-out;
        flex: 0 0 75vw;
        width: 75vw;
        max-width: 75vw;
        scroll-snap-align: center;
        scroll-snap-stop: always;
        padding: 1rem;
    }
    .ph-sidenews .g-content-array > .g-grid:hover {
        transform: scale(1.05);
    }
    .ph-sidenews .g-content-array > .g-grid > .g-block {
        margin: 0;
        padding: 0;
        transition: .3s all ease-in-out;
    }
    .ph-sidenews .g-content-array > .g-grid > .g-block > .g-content {
        margin: 0;
        padding: 0;
        transition: .3s all ease-in-out;
    }
    .ph-sidenews .g-array-item {
        margin: 0;
        padding: 0;
        transition: .3s all ease-in-out;
        display: flex;
        flex-direction: column;
        gap: .75rem;
    }
    .ph-sidenews .g-array-item-image {
        margin: 0;
        padding: 0;
        transition: .3s all ease-in-out;
    }
    .ph-sidenews .g-array-item-image a {
        margin: 0;
        padding: 0;
        transition: .3s all ease-in-out;
    }
    .ph-sidenews .g-array-item-image img {
        margin: 0;
        padding: 0;
        width: 100%;
        max-width: 100%;
        height: auto;
        aspect-ratio: 1/1;
        object-position: center;
        object-fit: cover;
        border-radius: 50%;
        overflow: hidden;
        box-shadow: var(--default-box-shadow);
        border: 2px solid var(--default-white);
        transition: .3s all ease-in-out;
    }
    .ph-sidenews .g-array-item-title {
        margin: 0;
        padding: 0;
        transition: .3s all ease-in-out;
    }
    .ph-sidenews .g-item-title {
        margin: 0;
        padding: 0;
        font-size: 5vw;
        font-family: var(--title-font-family);
        line-height: 1.2;
        font-weight: 600;
        border: none;
        text-transform: uppercase;
        font-variant-caps: normal;
        color: var(--primary-color);
        transition: .3s all ease-in-out;
    }
    .ph-sidenews .g-item-title a {
        margin: 0;
        padding: 0;
        font-size: 5vw;
        font-family: var(--title-font-family);
        line-height: 1.2;
        font-weight: 600;
        border: none;
        text-transform: uppercase;
        font-variant-caps: normal;
        color: var(--primary-color);
        transition: .3s all ease-in-out;
    }
    .ph-sidenews .g-array-item-text {
        margin: 0;
        padding: 0!important;
        font-size: 3.5vw!important;
        font-family: var(--body-font-family);
        line-height: 1.4;
        font-weight: 400;
        color: var(--default-black);
        opacity: .7;
        transition: .3s all ease-in-out;
    }
    .ph-sidenews .g-array-item-read-more {
        margin: 0;
        padding: 0;
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        height: 100%;
        width: 100%;
        opacity: 0;
    }
    .ph-sidenews .g-array-item-read-more a {
        margin: 0;
        padding: 0;
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        height: 100%;
        width: 100%;
        opacity: 0;
    }
}

@media only screen and (min-width: 50.99rem) {
    .match-height {
        height: 100%;
    }
    .match-height > .g-grid {
        height: 100%;
    }
    .match-height > .g-grid > .g-block {
        height: 100%;
    }
    .match-height > .g-grid > .g-block > .g-content {
        height: 100%;
    }
    .match-height .g-content-array {
        height: 100%;
    }
    .match-height .g-content-array > .g-grid {
        height: 100%;
    }
    .match-height .g-content-array > .g-grid > .g-block {
        height: 100%;
    }
    .match-height .g-content-array > .g-grid > .g-block > .g-content {
        height: 100%;
    }
    .match-height .g-array-item {
        height: 100%;
    }
    .match-height .g-array-item-text {
        height: 100%;
    }
}

/* City Council Minutes modern button list */
.ccm-widget-wrapper {
    --ccm-btn-bg: var(--default-white, #fff);
    --ccm-btn-text: var(--primary-color, #1f2937);
    --ccm-btn-accent: var(--primary-color, #2563eb);
    --ccm-btn-border: rgba(0, 0, 0, 0.08);
    --ccm-btn-shadow: 0 0.65rem 1.5rem rgba(0, 0, 0, 0.08);
    --ccm-btn-shadow-hover: 0 1rem 2rem rgba(0, 0, 0, 0.13);

    container-type: inline-size;
}

.ccm-widget-wrapper .k-ui-namespace {
    height: 100%;
}
.ccm-widget-wrapper .k-ui-namespace > .mod_docman--documents {
    height: 100%;
}

.ccm-widget-wrapper .mod_docman_icons {
    display: grid!important;
    grid-template-columns: repeat(1, minmax(0, 1fr));
    gap: 0.85rem;
    padding: 0;
    margin: 0;
    list-style: none;
    width: 100%!important;
    height: 100%;
}

.ccm-widget-wrapper .module_document {
    list-style: none;
    margin: 0!important;
    padding: 0!important;
}

.ccm-widget-wrapper .koowa_header {
    position: relative;
    display: flex;
    align-items: center;
    gap: 0.85rem;
    min-height: 4.35rem;
    padding: min(1vw, 1rem) min(1.15vw, 1.15rem)!important;
    background: linear-gradient(135deg, var(--ccm-btn-bg), rgba(255,255,255,0.88));
    border: 1px solid var(--ccm-btn-border);
    border-radius: 0.9rem;
    box-shadow: var(--ccm-btn-shadow);
    overflow: hidden;
    transition:
        transform 0.25s ease,
        box-shadow 0.25s ease,
        border-color 0.25s ease,
        background 0.25s ease;
}

/* City Council Minutes modern button list */
.ccm-widget-wrapper {
    --ccm-btn-bg: var(--default-white, #fff);
    --ccm-btn-text: var(--primary-color, #1f2937);
    --ccm-btn-accent: var(--primary-color, #2563eb);
    --ccm-btn-border: rgba(0, 0, 0, 0.08);
    --ccm-btn-shadow: 0 min(0.65vw, 0.65rem) min(1.5vw, 1.5rem) rgba(0, 0, 0, 0.08);
    --ccm-btn-shadow-hover: 0 min(1vw, 1rem) min(2vw, 2rem) rgba(0, 0, 0, 0.13);

    container-type: inline-size;
}

.widget-wrapper {
    --ccm-btn-bg: var(--default-white, #fff);
    --ccm-btn-text: var(--primary-color, #1f2937);
    --ccm-btn-accent: var(--primary-color, #2563eb);
    --ccm-btn-border: rgba(0, 0, 0, 0.08);
    --ccm-btn-shadow: 0 min(0.65vw, 0.65rem) min(1.5vw, 1.5rem) rgba(0, 0, 0, 0.08);
    --ccm-btn-shadow-hover: 0 min(1vw, 1rem) min(2vw, 2rem) rgba(0, 0, 0, 0.13);
}

.news-button {
    --ccm-btn-bg: var(--default-white, #fff);
    --ccm-btn-text: var(--primary-color, #1f2937);
    --ccm-btn-accent: var(--primary-color, #2563eb);
    --ccm-btn-border: rgba(0, 0, 0, 0.08);
    --ccm-btn-shadow: 0 min(0.65vw, 0.65rem) min(1.5vw, 1.5rem) rgba(0, 0, 0, 0.08);
    --ccm-btn-shadow-hover: 0 min(1vw, 1rem) min(2vw, 2rem) rgba(0, 0, 0, 0.13);
}

.ccm-widget-wrapper .mod_docman_icons {
    display: grid!important;
    grid-template-columns: repeat(1, minmax(0, 1fr));
    gap: min(0.85vw, 0.85rem);
    padding: 0;
    margin: 0;
    list-style: none;
    width: 100%!important;
}

.ccm-widget-wrapper .module_document {
    list-style: none;
    margin: 0!important;
    padding: 0!important;
}

.ccm-widget-wrapper .koowa_header {
    position: relative;
    display: flex;
    align-items: center;
    gap: min(0.85vw, 0.85rem);
    min-height: min(4.35vw, 4.35rem);
    padding: min(1.5vw, 1.5rem) min(1.15vw, 1.15rem)!important;
    background: linear-gradient(135deg, var(--ccm-btn-bg), rgba(255,255,255,0.88));
    border: min(0.1vw, 1px) solid var(--ccm-btn-border);
    border-radius: min(0.9vw, 0.9rem);
    box-shadow: var(--ccm-btn-shadow);
    overflow: hidden;
    transition:
        transform 0.25s ease,
        box-shadow 0.25s ease,
        border-color 0.25s ease,
        background 0.25s ease;
}

/* Makes the title link cover the whole button */
.ccm-widget-wrapper .koowa_header__title_link {
    position: static;
    display: inline-flex;
    align-items: center;
    width: 100%;
    color: var(--ccm-btn-text);
    font-size: min(1vw, 1rem);
    font-weight: 700;
    line-height: 1.25;
    text-decoration: none;
    letter-spacing: min(0.02vw, 0.02em);
}

.ccm-widget-wrapper .koowa_header__title_link::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 5;
}

/* Icon area */
.ccm-widget-wrapper .koowa_header__item--image_container {
    flex: 0 0 auto;
    display: inline-flex;
}

.ccm-widget-wrapper .koowa_header__image_link {
    position: relative;
    z-index: 2;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: min(2.45vw, 2.45rem);
    height: min(2.45vw, 2.45rem);
    border-radius: min(999vw, 999rem);
    background: color-mix(in srgb, var(--ccm-btn-accent) 12%, white);
    color: var(--ccm-btn-accent);
    text-decoration: none;
    pointer-events: none;
}

/* DOCman icon cleanup */
.ccm-widget-wrapper .k-icon-document-document {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: min(1.15vw, 1.15rem);
}

/* Optional Font Awesome-style icon if the DOCman icon is weak */
.ccm-widget-wrapper .k-icon-document-document::before {
    content: "\f1c1";
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
}

/* Text wrapper cleanup */
.ccm-widget-wrapper .koowa_header__item:not(.koowa_header__item--image_container) {
    min-width: 0;
    flex: 1;
}

.ccm-widget-wrapper .koowa_wrapped_content,
.ccm-widget-wrapper .whitespace_preserver {
    display: block;
    min-width: 0;
}

/* Hover/focus */
.ccm-widget-wrapper .koowa_header:hover,
.ccm-widget-wrapper .koowa_header:focus-within {
    transform: translateY(min(-0.2vw, -0.2rem));
    box-shadow: var(--ccm-btn-shadow-hover);
    border-color: color-mix(in srgb, var(--ccm-btn-accent) 35%, transparent);
}

.ccm-widget-wrapper .koowa_header:hover .koowa_header__title_link,
.ccm-widget-wrapper .koowa_header:focus-within .koowa_header__title_link {
    color: var(--ccm-btn-accent);
}

.ccm-widget-wrapper .koowa_header__title_link:focus-visible {
    outline: min(0.3vw, 3px) solid color-mix(in srgb, var(--ccm-btn-accent) 35%, transparent);
    outline-offset: min(0.35vw, 0.35rem);
    border-radius: min(0.4vw, 0.4rem);
}

/* Archive button */
/*.ccm-widget-wrapper .widget-button {
    margin-top: min(1.25vw, 1.25rem);
}*/

.widget-wrapper .widget-button .button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: min(0.55vw, 0.55rem);
    min-height: min(3vw, 3rem);
    padding: min(0.8vw, 0.8rem) min(1.35vw, 1.35rem);
    border-radius: min(999vw, 999rem);
    background: var(--ccm-btn-accent);
    color: #fff;
    font-size: min(1vw, 1rem);
    font-weight: 800;
    text-decoration: none;
    box-shadow: 0 min(0.65vw, 0.65rem) min(1.25vw, 1.25rem) color-mix(in srgb, var(--ccm-btn-accent) 25%, transparent);
    transition:
        transform 0.25s ease,
        box-shadow 0.25s ease,
        filter 0.25s ease;
}

.widget-wrapper .widget-button .button::after {
    content: "\f061";
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    font-size: min(0.85vw, 0.85rem);
}

.widget-wrapper .widget-button .button:hover,
.widget-wrapper .widget-button .button:focus-visible {
    transform: translateY(min(-0.15vw, -0.15rem));
    filter: brightness(1.05);
    box-shadow: 0 min(0.9vw, 0.9rem) min(1.5vw, 1.5rem) color-mix(in srgb, var(--ccm-btn-accent) 32%, transparent);
}

.news-button .button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: min(0.55vw, 0.55rem);
    min-height: min(3vw, 3rem);
    padding: min(0.8vw, 0.8rem) min(1.35vw, 1.35rem);
    border-radius: min(999vw, 999rem);
    background: var(--ccm-btn-accent);
    color: #fff;
    font-size: min(1vw, 1rem);
    font-weight: 800;
    text-decoration: none;
    box-shadow: 0 min(0.65vw, 0.65rem) min(1.25vw, 1.25rem) color-mix(in srgb, var(--ccm-btn-accent) 25%, transparent);
    transition:
        transform 0.25s ease,
        box-shadow 0.25s ease,
        filter 0.25s ease;
}

.news-button .button::after {
    content: "\f061";
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    font-size: min(0.85vw, 0.85rem);
}

.news-button .button:hover,
.news-button .button:focus-visible {
    transform: translateY(min(-0.15vw, -0.15rem));
    filter: brightness(1.05);
    box-shadow: 0 min(0.9vw, 0.9rem) min(1.5vw, 1.5rem) color-mix(in srgb, var(--ccm-btn-accent) 32%, transparent);
}

/* Mobile */
@media only screen and (max-width: 50.99rem) {
    .ccm-widget-wrapper .mod_docman_icons {
        grid-template-columns: 1fr;
    }

    .ccm-widget-wrapper .koowa_header {
        min-height: min(4vw, 4rem);
        padding: min(0.95vw, 0.95rem) min(1vw, 1rem)!important;
    }

    .ccm-widget-wrapper .widget-button .button {
        width: 100%;
    }

    .ccm-widget-wrapper .koowa_header__title_link {
        font-size: 5vw;
    }
    .ccm-widget-wrapper .koowa_header__image_link {
        height: 6vw;
        width: 6vw;
    }
    .ccm-widget-wrapper .k-icon-document-document {
        font-size: 4vw;
    }
    .ccm-widget-wrapper .koowa_header {
        padding: 1rem!important;
    }
}

/*FOOTER*/
@media only screen and (min-width: 50.99rem) {
    #g-footer > .g-container {
        padding: min(4vw, 4rem) min(2vw, 2rem) min(6vw, 6rem) min(2vw, 2rem)!important;
    }

    .footer-wrapper :is(h1,h2,h3,h4,h5,h6) {
        margin: 0;
        padding: 0;
        color: var(--default-white);
        text-align: center;
        font-family: var(--title-font-family);
        line-height: 1;
        font-weight: 700;
        font-size: min(2.5vw, 2.5rem);
        text-transform: none;
        font-variant-caps: normal;
        border: none;
        background: none;
        margin-bottom: min(1vw, 1rem);
    }

    .footer-wrapper p {
        margin: 0;
        padding: 0;
        color: var(--default-white);
        font-family: var(--body-font-family);
        text-align: center;
        font-size: min(1.5vw, 1.5rem);
    }
}

@media only screen and (max-width: 50.99rem) {
    .site.withmaxwidth #g-footer > .g-container {
        padding: 2rem 1rem 5rem 1rem!important;
    }

    .footer-wrapper :is(h1,h2,h3,h4,h5,h6) {
        margin: 0;
        padding: 0;
        color: var(--default-white);
        text-align: center;
        font-family: var(--title-font-family);
        line-height: 1;
        font-weight: 700;
        font-size: 6vw;
        text-transform: none;
        font-variant-caps: normal;
        border: none;
        background: none;
        margin-bottom: 1rem;
    }

    .footer-wrapper p {
        margin: 0;
        padding: 0;
        color: var(--default-white);
        font-family: var(--body-font-family);
        text-align: center;
        font-size: 4vw;
    }
}

/*BOTTOM*/
@media only screen and (min-width: 50.99rem) {
    #g-bottom {
        position: relative;
        z-index: 10;
    }
    #g-bottom > .g-container {
        padding: 2rem 0!important;
    }
    #g-bottom .admod td {
        padding-top: 0!important;
    }
}

@media only screen and (max-width: 50.99rem) {
    #g-bottom {
        position: relative;
        z-index: 10;
    }
    #g-bottom > .g-container {
        padding: 2rem 0!important;
    }
    #g-bottom .admod td {
        padding-top: 0!important;
    }
}

.search-page #searchForm .btn {
    background: var(--primary-color);
}

.grid-articles .g-array-item-text a:not(a.button) {
    color: var(--primary-color);
}
.grid-articles .g-array-item-text a {
    color: var(--primary-color);
}

@media only screen and (max-width: 50.99rem) {
    .admod.adside tbody {
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;
        justify-content: center;
        align-items: center;
        gap: .5rem .5rem;
    }
}

@media only screen and (max-width: 50.99rem) {
    body#site-grid.newslayout #g-container-main > .g-container {
        padding: 2rem 1rem!important;
    }
    body#site-grid.newslayout #g-container-main #g-mainbar {
        margin: 0!important;
        padding: 0!important;
    }

    #site-grid.newslayout .grid-mobile-stacked .g-item-title {
        --grid-title-font-size: 3vw;
    }
}

@media only screen and (max-width: 50.99rem) {
    body .side-menu-particle .g-blockcontent-subcontent-title-text {
        --side-menu-font-size-desktop: 4vw;
    }
}

@media only screen and (max-width: 50.99rem) {
    .grid-img-box-shadow-50 .g-array-item-image {
        box-shadow: none!important;
    }
    .grid-mobile-stacked .g-array-item-image img {
        box-shadow: none!important;
    }
}

@media only screen and (max-width: 50.99rem) {
    .bulletin-page .koowa_media {
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;
        gap: 1rem;
    }
    .bulletin-page .koowa_media__item {
        flex: 1;
        min-width: calc(50% - .5rem);
        max-width: calc(50% - .5rem);
    }
}