
.subNav {
    display: none;
}
.breadcrumbs {
    display: none;
}

body {
    --media-before-content: 475px;
    /* calc(330px + 3em); */
    --page-max-width: 1600px;
    --media-height: min(56.25vw, 1600px);

    --media-after-content: calc(var(--media-height) - var(--media-before-content) - var(--header-total-height));

    grid:
        [img-start] "header" var(--header-total-height)
        "media-spacing" var(--media-before-content) [content-start]
        "content" minmax(var(--media-after-content), 1fr)
        "footer" min-content / 1fr;
}

@media screen and (max-width: 1280px) {
    body {
        --media-before-content: 37.1vw;
        --media-height: 720px;
    }
}
@media screen and (max-width: 825px) {
    body {
        --media-before-content: 300px;
    }
}

.c-main-header {
    background: none;
}

.page__top-media {
    max-height: 1600px;
}

.page {
    box-shadow: none;
    background: none;
    grid:
        "content" 1fr / [c1] 1fr;
    max-width: unset;
}

.page__content-wrapper {
    padding: 0;

    margin-left: 15px;
    margin-right: 15px;
}

.bg-vid__button {
    top: var(--header-total-height);
    z-index: 1;
}

:is(.content-section-one, .content-section-two) > section {
    max-width: var(--page-max-width);
    margin-left: auto;
    margin-right: auto;
}

.welcome-box {
    border: 1px solid white;
    /* box-shadow: 0 10px 10px rgba(0, 0, 0, 0.3); */
    --welcome-box-padding: 30px;

    border-radius: 10px;
    margin-bottom: 35px;
    overflow: hidden;
}

.welcome-box__title {
    margin: 0;

    padding: var(--welcome-box-padding);
    padding-top: calc(var(--welcome-box-padding) / 2);
    padding-bottom: calc(var(--welcome-box-padding)/2 - 1px);

    background: linear-gradient( 90deg, rgba(17,52,91,0.9) 0%, rgba(30, 70, 117, 0.6) 100%);
    color: white;

    position: relative;
}

.welcome-box__title a {
    color: white;
    text-decoration: none;
}

/* .welcome-box__title:after {
    content: '';
    z-index: 1;
    height: 4px;
    width: 100%;
    position: absolute;
    bottom: -4px;
    left: 0;
    margin-top: 0;
    background: rgb(213, 162, 74);
} */

.welcome-box__content {
    background-color: rgba(255, 255, 255, 0.9);
    padding: var(--welcome-box-padding);
}
.welcome-box__title + .welcome-box__content {
    padding-top: calc(var(--welcome-box-padding) * 21 / 30);
    padding-bottom: calc(var(--welcome-box-padding) * 5 / 6);
}

.welcome-box__img {
    float: right;
    max-width: 300px;
    border-radius: 15px;
    margin-left: 15px;
    margin-bottom: 15px;
    width: 100%;
}

@media screen and (max-width: 800px) {
    .welcome-box {
        margin-bottom: 20px;
    }
}

@media screen and (max-width: 600px) {
    .welcome-box__content {
        display: flex;
        flex-direction: column;
    }
    .welcome-box__img {
        align-self: center;
        order: 2;
        margin: 0;
    }
    .welcome-box__content {
        padding-left: 15px;
        padding-right: 15px;
    }
}

.welcome-section {
    margin: 30px 0;
}

.welcome-section h2 {
    color: #30567d;
    padding-bottom: 5px;
    border-bottom: #30567d solid 3px;
}

@media screen and (max-width: 600px) {
    .welcome-section {
        /* margin: 15px; */
    }
}

.page-titles {
    display: none;
}

.welcome-search-wrapper {
    grid-area: media-spacing;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 0;
    padding: 0 15px;
    color: white;
    margin: 3em 0;
}

#welcome-search {
    background-color: rgba(25, 64, 106, .9);
    color: white;
    padding: 15px 55px 15px 20px;
    font-size: 22px;
    border: 1px solid white;
    border-radius: 10px;
    width: calc(100%);
    font-weight: bold;
    max-width: 680px;
    display: inline-block;
    outline: 0px;
    vertical-align: top;

    box-sizing: content-box;
}

#welcome-search::placeholder {
  color: white;
  opacity: 1; /* Firefox */
}

#welcome-search::-ms-input-placeholder { /* Edge 12 -18 */
  color: white;
}

.welcome-search__btn {
    cursor: pointer;
    display: inline-block;
    width: 45px;
    height: 50px;
    vertical-align: top;
    margin-top: 4px;
    margin-left: -45px;

    color: white;
    background: none;
    outline: none;
    border: none;
}

@media screen and (max-width: 830px) {
    #welcome-search {
        box-sizing: border-box;
    }
}

.top-box {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px 15px;
}
@media screen and (max-width: 1280px) {
    .welcome-box {
        --welcome-box-padding: 15px;
    }
}
@media screen and (max-width: 1050px) {
    .top-box {
        grid-template-columns: 1fr;
    }
}


.important-links {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 15px;
    height: min-content;
}
/* background-color: rgba(255, 255, 255, 0.9); */
/* background-color: rgba(230, 230, 230, 1); */
.important-link {
    display: grid;
    grid-template: "img title" auto 
                   "img content" auto 
                   / min-content 1fr;
    
    padding: 15px;
    padding-top: 0px;
    padding-bottom: 0px;
    border-radius: 10px;
    background-color: rgba(255, 255, 255, 0.6);
    box-shadow: -1px 1px 0px 0px rgba(0, 0, 0, 0.2), 0px 0px 15px 0px rgba(0, 0, 0, 0.2);
    text-decoration: none !important;

    align-content: center;
    align-items: center;

    min-height: 83px;
}
.important-link__img {
    grid-area: img;

    width: 52px;
    height: 52px;
    display: inline-block;
    vertical-align: middle;
    border-radius: 5px;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;

    margin-right: 10px;
}
.important-link__title {
    grid-area: title;

    overflow: hidden;
    max-height: 35px;

    font-weight: bold;
    font-size: 15px;
    color: #245059;
    line-height: 1.2em;
    align-self: end;
    margin-bottom: 3px;
}
.important-link__content {
    grid-area: content;

    font-weight: 200;
    font-size: 12px;
    line-height: 1.4em;
    color: #4d4d4d;
    font-style: italic;
    align-self: flex-start;
}
.important-link__content p {
    margin: 0;
}

@media screen and (max-width: 550px) {
    .important-links {
        grid-template-columns: 1fr;
    }
}
@media screen and (max-width: 250px) {
    .important-link {
        grid-template: "title" auto 
                   "content" auto 
                   / 1fr;
    }
    .important-link__img {
        display: none;
    }
}

.top-carousel {
    display: grid;
    grid-template-columns: minmax(350px, 1fr) 1fr;
    /* margin-top: 15px; */
    gap: 12px;
}
.top-carousel__images {
    width: 350px;
    aspect-ratio: 1/1;
    margin-left: auto;
    margin-right: auto;

    overflow: visible;

    grid:
        "prev-btn prev-btn photo next-btn next-btn" 1fr 
        "btns btns btns btns btns" 1fr
        / 15px [start] 70px 1fr 70px [end] 15px;
    align-items: center;

    margin-bottom: 0;
}
.top-carousel__images :is(.c-gallery__next-btn, .c-gallery__prev-btn) {
    opacity: 1;
}
.top-carousel__images :is(.c-gallery__next-btn, .c-gallery__prev-btn) div {
    background-repeat: no-repeat;
    background-position: center;
    background-color: #43c0cf;
    color: black !important;
    width: 50px;
    height: 50px;
    border-radius: 25px;
    box-shadow: 0px 0px 0px 2px white, 0px 0px 10px 0px rgba(0, 0, 0, 0.8);
}
.top-carousel__images .c-gallery__next-btn {
    justify-self: end;
}
.top-carousel__images .c-gallery__prev-btn {
    justify-self: start;
}
.top-carousel__images .c-gallery__next-btn div {
    background-image: url(/Content/Images/arrowRight.png);
}
.top-carousel__images .c-gallery__prev-btn div {
    background-image: url(/Content/Images/arrowLeft.png);
}
.top-carousel__images :is(.c-gallery__prev-btn, .c-gallery__next-btn) {
    width: unset;
}

.top-carousel-item__img {
    background-position: center;
    background-repeat: no-repeat;
    transition: opacity 0.8s;

    position: relative;
    /* z-index: 0; */
    border-radius: 180px;
    height: 320px;

    padding: 0;
    margin: 20px 0;

    --anim-distance: 35px;
    --from-opacity: 0;
    --move-out-right-anim: welcomeTopMoveOut;
    --move-out-left-anim: welcomeTopMoveOut;
}
.top-carousel__descs {
    --anim-distance: 15px;
    --from-opacity: 0;
    --move-out-right-anim: welcomeTopMoveOut;
    --move-out-left-anim: welcomeTopMoveOut;

    grid: "content" 1fr / 1fr;
    margin-top: 20px;
}
.top-carousel-item__desc {
    grid-area: content;
    padding: 0;
    display: inline-block;
}
.top-carousel-item__desc p:has(img) {
    margin: 0;
}
.top-carousel-item__desc img {
    height: 90px;
}
.top-carousel-item__desc .webkitBox {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 11;
    line-clamp: 11;
    overflow: hidden;
    font-size: 15px;
}
@media screen and (max-width: 1050px) {
    .top-carousel-item__desc .webkitBox {
        -webkit-line-clamp: 8;
        line-clamp: 8;
    }
}
.top-carousel-item__img::before, .top-carousel-item__img::after {
    content: '';
    left: 0;
    top: 0;
    position: absolute;
    height: 100%;
    width: 100%;
    background-position: center;
    background-repeat: no-repeat;
}
.top-carousel-item__img::before {
    background: var(--bg-img);
    z-index: -1;
    border-radius: 180px;
}
.top-carousel-item__img::after {
    /* image-rendering: pixelated; */
    background-image: var(--app-img);
    z-index: 0;
    background-size: 104%;
    background-position: 50% 44%;
}
@keyframes welcomeTopMoveOut {
    from {
        translate: 0;
        opacity: var(--to-opacity, 1);
    }
    to {
        translate: 0;
        opacity: var(--from-opacity, 1);
    }
}

.top-carousel__circle-btns {
    display: flex;
    grid-area: btns;
    justify-content: center;
}
.top-carousel__circle-btns button {
    display: inline-block;
    vertical-align: top;
    width: 20px;
    height: 20px;
    border-radius: 20px;
    margin-left: 5px;
    margin-right: 5px;
    background-color: #bcddf2;
    transition: background-color 0.8s;
    border: none;
    cursor: pointer;
}
.top-carousel__circle-btns .gallery__loc-btn--active {
    background-color: #37a4e4;
    color: black !important;
}

@media screen and (max-width: 640px) {
    .top-carousel {
        grid-template-columns: 1fr;
        gap: 10px;
    }
    .top-carousel__descs {
        margin-top: 0;
        margin-bottom: 0;
    }
    .top-carousel__images {
        width: 100%;
        max-width: 350px;
    }
}
@media screen and (max-width: 440px) {
    .top-carousel__images {
        /* height: 100%; */
        min-width: 100%;
    }
    .top-carousel-item__img {
        width: 100%;
        aspect-ratio: 1/1;
        height: unset;
    }
}
@media screen and (max-width: 340px) {
    .top-carousel__images :is(.c-gallery__next-btn, .c-gallery__prev-btn) div {
        width: 40px;
        height: 40px;
    }
}

@media screen and (min-width: 1600px) {
    .welcomeAnglesContainer1 {
        display: none;
    }
}

.welcomeAnglesContainer1 {
    position: absolute;
    width: 100%;
    height: 100%;
    overflow: hidden;
    top: 0px;
    left: 0px;

    z-index: -1;
}
.welcomeAngle1 {
    top: calc(893px - var(--media-before-content) - var(--header-total-height));
    width: calc(100% + 200px);
    margin-left: -100px;
    height: 450px;
    background: linear-gradient( 310deg, rgba(23,115,210,0.5) 0%, rgba(23,115,210,0) 100%);
    position: absolute;
    transform: rotate( -6deg );
}
.welcomeAngle2 {
    top: calc(800px - var(--media-before-content) - var(--header-total-height));
    width: calc(100% + 200px);
    margin-left: -100px;
    height: 300px;
    background: linear-gradient( 184deg, rgba(255,255,255,0) 0%, rgba(255,255,255,0.5) 100%);
    position: absolute;
    transform: rotate( -17deg );
}
.welcomeAngle3 {
    top: calc(1200px - var(--media-before-content) - var(--header-total-height));
    width: calc(100% + 200px);
    margin-left: -100px;
    height: 500px;
    background: linear-gradient( 180deg, rgba(135,171,192,0) 0%, rgba(135,171,192,0.4) 100%);
    position: absolute;
    transform: rotate( 11deg );
}
.welcomeAngle4 {
    top: calc(1100px - var(--media-before-content) - var(--header-total-height));
    width: calc(100% + 200px);
    margin-left: -100px;
    height: 300px;
    background: linear-gradient( 180deg, rgba(135,171,192,0) 0%, rgba(135,171,192,0.4) 100%);
    position: absolute;
    transform: rotate( 11deg );
}


.mayor-priorities {
    display: grid;
    grid-template-columns: repeat(8, 1fr);
    gap: 15px;
}
.mayor-priorities__title {
    font-weight: 400;
    font-size: 20px;
    padding: 15px;

    padding-left: var(--welcome-box-padding);
}

.welcome-box__content:has(.mayor-priorities) {
    padding-top: var(--welcome-box-padding);
}

.mayor-priority {
    border-radius: 10px;
    background-color: rgba(255, 255, 255, 0.6);
    box-shadow: -1px 1px 0px 0px rgba(0, 0, 0, 0.2), 0px 0px 15px 0px rgba(0, 0, 0, 0.2);
    display: inline-block;
    background-size: cover;
    position: relative;
    overflow: hidden;
    text-decoration: none;
    color: rgba(0, 0, 0, 0);
    background-position: top center;
    /* padding-top: 12%; */

    aspect-ratio: 6 / 5;

    display: flex;
    flex-direction: column-reverse;
}

.mayor-priority__title {
    min-height: 66px;
    transition: min-height 0.4s, background-color 0.4s;
    background-color: rgba(27, 70, 115, 0.80);
    color: white;
    text-align: center;
    font-size: 16px;
    line-height: 1.1em;
    
    padding-top: 5px;
    padding-bottom: 5px;
    padding-left: 10px;
    padding-right: 10px;

    display: flex;
    align-items: center;
    justify-content: center;
}
@media screen and (max-width: 1280px) {
    .mayor-priorities {
        grid-template-columns: repeat(4, 1fr);
    }
    .mayor-priority__title {
        font-size: 16px;
        min-height: 50px;
    }
}
@media screen and (max-width: 810px) {
    .mayor-priorities {
        grid-template-columns: repeat(2, 1fr);
    }
    .mayor-priority {
        aspect-ratio: 10 / 7;
    }
}
@media screen and (max-width: 440px) {
    .mayor-priorities {
        grid-template-columns: 1fr;
    }
}

.mayor-priority:hover .mayor-priority__title {
    min-height:86px;
    background-color: rgba(27, 70, 115, 0.95);
}


.second-carousel {
    display: grid;
    grid: [top-row] "content imgs imgs imgs imgs" 1fr 
                    "locs    imgs imgs imgs imgs" min-content [bottom-row]
          / 1fr 30px 1fr 30px 1fr ;
    height: 330px;

    background: #153a62;
}

.second-carousel__left-bg {
    grid-row-start: top-row;
    grid-row-end: bottom-row;
    grid-column-start: 1;
    position: relative;
    z-index: 1;

    background: #153a62;
}
.second-carousel__left-bg::before {
    content: '';
    background: #1b4673;
    width: 107%;
    height: 42%;
    top: -12%;
    left: -1%;
    position: absolute;
    transform: rotate(10deg);
    z-index: 1;
}
.second-carousel__left-bg::after {
    content: '';
    background: rgba(18, 49, 82, .3);
    width: 138%;
    height: 96%;
    bottom: -27%;
    left: -3%;
    position: absolute;
    transform: rotate(-27deg);
    z-index: 1;
}

.second-carousel__contents {
    grid-area: content;
    grid: "content" 1fr / 1fr;
    padding-top: 30px;
    padding-left: 30px;
    padding-right: 30px;
    margin-bottom: 0;
}

.second-carousel__content {
    grid-area: content;
    padding: 0;
    display: inline-block;
    color: white;
    --link-color: white;

    --move-out-right-anim: welcomeSecondContentFadeOut;
    --move-out-left-anim: welcomeSecondContentFadeOut;
    --move-in-right-anim: welcomeSecondContentFadeIn;
    --move-in-left-anim: welcomeSecondContentFadeIn;
    --from-opacity: 0;
}
.second-carousel__content h2 {
    font-size: 20px;
    line-height: 1.1em;
    margin-top: 0;
    margin-bottom: 10px;
    /* position: relative; */
    font-weight: bold;
}
.second-carousel__content h2 a:not(:hover) {
    text-decoration: none;
    color: white;
}
/* .CarouselTextWebkitBox {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 9;
    overflow: hidden;
} */
.second-carousel__content > div {
    line-height: 1.4em;
    font-size: 15px;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 9;
    overflow: hidden;
}
.second-carousel__images {
    grid-area: imgs;
    margin-bottom: 0;
}
.second-carousel-item__img {
    width: 100%;
    height: 100%;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    font-size: 0px;
    line-height: 0px;
}

.second-carousel__sq-btns {
    grid-area: locs;
    padding-left: 30px;
    padding-bottom: 30px;
    display: flex;
    z-index: 1;
}
.second-carousel__sq-btn {
    border: none;
    height: 15px;
    width: 15px;
    border-radius: 4px;
    overflow: hidden;
    display: inline-block;
    margin-right: 5.5px;
    margin-bottom: 5.5px;
    background: #ccedff;
    color: black !important;
    line-height: 2em;
    transition: background 0.5s;
    outline: 0px;
    cursor: pointer;
}
.second-carousel__sq-btn.gallery__loc-btn--active {
    background: #ffb738;
}

.c-sec-gal__btn-circle {
    width: 40px;
    height: 40px;
    border-radius: 80px;
    background-color: rgba(0, 0, 0, .6);
    position: relative;
    /* margin-left: auto;
    margin-right: auto;
    margin-top: 20px; */
    transition: width 0.2s, height 0.2s, background-color 0.2s, margin-top 0.2s;
}
:is(.c-gallery__prev-btn, .c-gallery__next-btn):hover .c-sec-gal__btn-circle {
    width: 65px;
    height: 65px;
    /* margin-top: 8px; */
    background-color: rgba(0, 0, 0, .8);
}
.c-sec-gal__prev-btn-arrow, .c-sec-gal__next-btn-arrow {
    width: 16px;
    height: 16px;
    position: absolute;
    top: calc(50% - 8px);
    transform: rotate(45deg);
    overflow: hidden;
    line-height: 4em;
}
.c-sec-gal__prev-btn-arrow {
    left: calc(50% - 7px);
    border-bottom: 2px solid white;
    border-left: 2px solid white;
}
.c-sec-gal__next-btn-arrow {
    left: calc(50% - 13px);
    border-top: 2px solid white;
    border-right: 2px solid white;
}

@media screen and (max-width: 1050px) {
    .second-carousel {
        grid: [top-row] "content imgs" 1fr 
                        "locs    imgs" min-content [bottom-row]
            / 320px 1fr ;
    }
}
@media screen and (max-width: 800px) {
    .second-carousel {
        grid:         "imgs" auto
            [top-row] "content" 210px
                      "locs" min-content [bottom-row]
            / 1fr ;
        height: unset;
    }
    .second-carousel__content > div {
        -webkit-line-clamp: 5;
    }
    .second-carousel__images {
        aspect-ratio: 5 / 2;
    }
    .second-carousel__contents {
        padding: 15px 15px 5px 15px;
    }
    .second-carousel__content p:first-child {
        margin-top: 0;
    }
    .second-carousel__content p:last-child {
        margin-bottom: 0;
    }
    .second-carousel__sq-btns {
        padding-left: 15px;
        padding-bottom: 15px;
    }
}
@media screen and (max-width: 540px) {
    .second-carousel__images {
        aspect-ratio: unset;
        height: 200px;
    }
}

@keyframes welcomeSecondContentFadeOut {
    from {
        translate: 0;
        opacity: var(--to-opacity, 1);
    }
    25% {
        opacity: var(--to-opacity, 1);;
    }
    to {
        translate: 0;
        opacity: var(--from-opacity, 1);
    }
}
@keyframes welcomeSecondContentFadeIn {
    from {
        translate: 0;
        opacity: var(--from-opacity, 1);
    }
    25% {
        opacity: var(--from-opacity, 1);;
    }
    to {
        translate: 0;
        opacity: var(--to-opacity, 1);
    }
}




.flipBoxes {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 30px;
    margin: 30px 0 5px 0;
    min-height: 372px;

}
@media screen and (max-width: 800px) {
    .flipBoxes {
        grid-template-columns: 1fr;
    }
}

.c-flipBox {
    overflow: hidden;
    border-radius: 10px;
    box-shadow: 0px 0px 0px 1px white, 0px 0px 15px rgba(0, 0, 0, 0.2);

    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
}

.c-flipBox__front {
    height: 100%;
    width: 100%;
    top: 0px;
    opacity: 1;
    position: relative;
    transition: top 0.5s;
}
.c-flipBox:hover :is(.c-flipBox__front, .c-flipBox__back) {
    top: -100%;
}

.c-flipBox__front-title {
    background: linear-gradient(37deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 35px, rgba(0, 0, 0, 0.15) 35px, rgba(0, 0, 0, 0.15) 65px, rgba(0, 0, 0, 0) 65px, rgba(255, 255, 225, 0.15) 50%, rgba(255, 255, 225, 0.25) 100%),
                var(--flip-box-bg, #FFF);
    color: white;
    padding: 10px 30px;
    margin: 0;

    font-size: 24px;
    /* line-height: 1.2em; */
    text-transform: uppercase;
    font-weight: 400;

    position: absolute;
    top: 0;
    width: 100%;
}

.c-flipBox__back {
    position: relative;
    overflow: hidden;
    opacity: 0;
    top: 0;
    transition: opacity 0.5s, top 0.5s;
    height: 100%;

    color: white;

    background-color: rgba(1, 58, 98, 0.85);
}
.c-flipBox:hover .c-flipBox__back {
    opacity: 1;
}
.c-flipBox__back::before {
    content: '';
    display: block;
    height: 44px;
    width: 100%;
    background: linear-gradient( 90deg, rgba(0,0,0,0.25) 0%, rgba(128,128,128,0) 25%, rgba(218,218,218,0) 50%, rgba(255,255,255,0.25) 100%), var(--flip-box-bg);
}
.c-flipBox__back-title {
    font-size: 22px;
    margin: 30px;
    margin-top: 21px; /* 65px - 44px */
    padding-bottom: 15px;
    margin-bottom: 15px;
    border-bottom: 1px solid white;
    font-weight: 400;
}
.c-flipBox__back-contents {
    padding: 30px;
    padding-top: 0;
    --link-color: white;
}
.c-flipBox__back-contents p {
    margin: 5px 0;
}
.c-flipBox__back-contents a:not(:hover) {
    text-decoration: none;
}
.c-flipBox__back-contents a:hover {
    color: #ffb738;
    text-decoration: underline;
}

.c-flipBox:nth-child(1) {
    --flip-box-bg: #0496a6;
}
.c-flipBox:nth-child(2) {
    --flip-box-bg: #1a7bb2;
}
.c-flipBox:nth-child(3) {
    --flip-box-bg: #faad38;
}

@media screen and (max-width: 1050px) {
    .c-flipBox__front-title {
        padding-left: 15px;
        padding-right: 15px;
    }
    .flipBoxes {
        gap: 15px;
    }
    .c-flipBox__back-title {
        margin-left: 15px;
        margin-right: 15px;
    }
    .c-flipBox__back-contents {
        padding: 15px;
        padding-top: 0;
    }
}

.c-flipBox {
    min-height: 280px;
}


.events-list-title.events-list-title {
    font-size: 25px;
    font-family: serif;
    color: #25578c;
    font-weight: bold;
    line-height: 1.2em;
    margin-bottom: 15px;
    margin-top: 0;
    padding-right: 215px;
    padding-bottom: 7px;
    padding-top: 15px;
    border-bottom: 1px solid #25578c;
    background-image: url(/Content/images/skyline.png);
    background-repeat: no-repeat;
    background-position: bottom right;
    background-size: 200px;
}



.list-box-section {
    display: grid;
    grid-template-columns: 2fr 1fr;

    gap: 20px 10px;
    justify-items: stretch;

    margin-top: 5px;
    margin-bottom: 20px;
}
.list-box-section__box {
    border-radius: 12px;
    box-shadow: 0px 0px 0px 1px white, 0px 0px 15px rgba(0, 0, 0, 0.2);

    color: white;
    position: relative;
    overflow: hidden;
    z-index: 0;
    height: min-content;
}
.list-box-section__box::before {
    content: '';
    position: absolute;
    top: 0px;
    left: 0px;
    width: 100%;
    aspect-ratio: 100 / 56;
    z-index: -1;
    background: linear-gradient(180deg, rgba(40, 85, 134, 0) 0%, rgba(40, 85, 134, 0) 50%, rgba(40, 85, 134, 1) 100%), var(--box-bg-img);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: top right;
}

.list-box-section:has(.box--mayor) {
    margin-top: 30px;
}

.box--mayor.list-box-section__box::before {
    aspect-ratio: unset;
    height: 300px;
}
.box--mayor {
    margin-top: 1rem;
    margin-bottom: 1rem;
    align-self: start;
}

.list-box-section__box::after {
    content: '';
    position: absolute;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
    background: #285586;
    z-index: -2;
}
.list-box-section__box-content {
    display: -webkit-box;
    width: 100%;
    line-height: 1.4em;
    font-size: 15px;
    color: white;
    min-height: 110px;

    -webkit-line-clamp: 7;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
.list-box-section__box-title.list-box-section__box-title {
    display: inline-block;
    font-size: 40px;
    font-family: serif;
    line-height: 1em;
    position: relative;
    width: 100%;
    padding-bottom: 8px;
    border-bottom: 1px solid white;
    margin-bottom: 8px;
    color: white;
    margin-top: 196px;
    font-weight: 400;
}
.list-box-section__box-content p {
    margin: 1px 0;
}
.list-box-section__box-tc {
    padding: 0 30px;
    padding-bottom: 30px;
    height: 100%;
}
@media screen and (max-width: 1480px) {
    .list-box-section__box-content {
        max-height: 146px;
    }
}
@media screen and (max-width: 1280px) {
    .list-box-section__box-title.list-box-section__box-title {
        font-size: 25px;
    }
}
@media screen and (max-width: 1080px) {
    .list-box-section__box-tc {
        padding: 0 15px;
        padding-bottom: 15px;
    }
    .box--city-council .list-box-section__box-content {
        max-height: 270px;
        -webkit-line-clamp: 12;
    }
    .box--city-council .list-box-section__box-title {
        margin-top: 90px;
    }
    .box--mayor .list-box-section__box-content {
        max-height: 168px;
        -webkit-line-clamp: 8;
    }
}
@media screen and (max-width: 950px) {
    .box--city-council .list-box-section__box-content {
        max-height: 290px;
        -webkit-line-clamp: 13;
    }
}
@media screen and (max-width: 800px) {
    .list-box-section {
        grid-template-columns: 1fr;
    }
    .list-box-section__box {
        max-width: 500px;
        justify-self: center;
    }
    .list-box-section__box-title.list-box-section__box-title {
        font-size: 40px;
    }
    .box--city-council .list-box-section__box-title {
        margin-top: calc(56.25% - 20px);
    }
    .list-box-section__box-content.list-box-section__box-content {
        max-height: none;
        overflow: visible;
        -webkit-line-clamp: unset;
    }
    .box--mayor .list-box-section__box-title {
        margin-top: 260px;
    }
}
.list-box-section__box-link {
    position: absolute;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
    color: white;
    font-size: 0px;

    color: rgba(0, 0, 0, 0);
    text-decoration: none;
    text-shadow: 0px 0px white;
    
}

.news-list-item__summary {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 4;
    
    overflow: hidden;
    max-height: 75px;
}

.event-date-list-item {
    margin: 0;
    border-bottom: 1px solid #dfe0e1;
    margin-bottom: 0px;
    min-height: 85px;
    /* padding-bottom: 20px; */
}
.event-date-list__date {
    /* width: 75px; */
    padding: 0;
    border-radius: 0;
    /* position: absolute; */
    border-style: inset;
    border: 1px solid #dfe0e1;
    border-top: 0px;
    border-bottom: 0px;
    /* height: 100%; */
    border-bottom: 0px;
    font-size: 22px;
    font-weight: bold;
    text-align: center;
    line-height: 1em;
    background: rgba(255, 255, 255, 0.55);
    color: black;
    min-height: 85px;
    width: 75px;
}
@media screen and (max-width: 420px) {
    .event-date-list__date {
        width: 60px;
    }
}
.event-date-list-item:first-of-type .event-date-list__date {
    border-top: 1px solid #dfe0e1;
}
.event-date-list__date-day {

}
.event-date-list__date-month {
    font-size: 15px;
    text-transform: uppercase;
    color: #696969;
    margin-top: 4px;
    word-break: break-all;
}
.event-date-list__title {

}

.event-date-list__datetext time:first-child {
    display: none;
}

.events-list__bottom-links {
    margin-left: calc(75px + 20px + 10px);
}
.news-list__bottom-links {
    margin-left: calc(260px + 20px);
}
:is(.events-list__bottom-links, .news-list__bottom-links) a:not(:hover) {
    text-decoration: none;
}

@media screen and (max-width: 600px) {
    .news-list__bottom-links {
        margin-left: 0;
    }
}
@media screen and (max-width: 420px) {
    .events-list__bottom-links {
        margin-left: calc(60px + 5px + 10px)
    }
}
@media screen and (max-width: 380px) {
    .events-list-title.events-list-title {
        padding-top: 0px;
        padding-right: 140px;
        background-size: 155px;
    }
}
@media screen and (max-width: 285px) {
    .events-list-title.events-list-title {
        padding-top: 0px;
        padding-right: 0px;
        padding-bottom: 1.5em;
        background-size: 155px;
    }
}

.welcomeSMLinks {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    justify-content: center;
    align-items: center;
    min-height: 330px;
}
.welcome-sm h2 {
    font-size: 22px;
    text-transform: uppercase;
    color: #e13a06;
    margin: 0.5em 0;
    line-height: 1em;
    display: flex;
    justify-content: space-between;
    align-items: center;
    text-align: center;
}
.welcome-sm h2::before, .welcome-sm h2::after {
    content: '';
    width: calc(50% - 150px);
    height: 1px;
    background-color: #e13a06;
}
.welcomeSMLinks .iconLinkList__item {
    width: 80px;
    height: 80px;
    display: inline-block;
    background-size: contain;
    font-size: 0;
}

@media screen and (max-width: 800px) {
    .welcomeSMLinks {
        min-height: 120px;
        padding-top: 15px;
        padding-bottom: 30px;
    }
}
@media screen and (max-width: 680px) {
    .welcome-sm h2::before, .welcome-sm h2::after {
        width: calc(50% - 110px);
    }
}
@media screen and (max-width: 380px) {
    .welcome-sm h2::before, .welcome-sm h2::after {
        width: 0;
    }
    .welcome-sm h2 {
        padding-bottom: 10px;
        border-bottom: 1px solid #e13a06;
    }
}


.page__top-media { 
    z-index: 0;
}
.page__top-media::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    max-height: 1600px;
    /* z-index: -2; */
    background: linear-gradient(0deg, rgba(230, 230, 230, 1) 0%, rgba(230, 230, 230, 0) 250px, rgba(230, 230, 230, 0) 100%);
    /* linear-gradient(180deg, rgba(230, 230, 230, 1) 0%, rgba(230, 230, 230, 1) 900px, rgba(230, 230, 230, 1) 100%); */
}
.bg-vid__button--second {
    top: 0;
    background-color: rgba(230, 230, 230, 1);
    color: black;
}
.bg-vid__button--second .bg-vid__button-icon.bg-vid--paused {
    border-left: 1em solid black;
}

.content-section-one, .content-section-two {
    padding: 15px;
}
.content-section-one {
    position: relative;
    padding-top: 0;
}
.content-section-one::after {
    content: '';
    position: absolute;
    width: 100%;
    height: calc(100% - var(--media-after-content));
    bottom: 0;
    left: 0;
    background-color: rgba(230, 230, 230, 1);

    z-index: -2;
}


.content-section-two {
    background-color: rgba(255, 255, 255, 0.9);
    padding-top: 50px;
}


.second-video {
    z-index: -2;
    position: fixed;
    top: 0;
    /* var(--header-total-height); */
    left: 0;
    width: 100%;
    height: 100vh;
}
.second-video video {
    position: absolute;
    object-fit: cover;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
}


body .pageBleed {
    background: none;
}

.page__content-wrapper {
    margin: 0;
}
