body {
    font-family: 'Bebas Neue', cursive;
    font-size: 12px;
    color: #444444;
}

#wrapall {
    overflow: hidden;
}

html {
    overflow-x: hidden;
}

p,
ol,
ul,
li {
    font-size: 1.15em;
    font-family: 'Mulish', sans-serif;
    line-height: 1.15;
}

a,
a:link,
a:visited,
a:active {
    color: #0067c1;
}

a:hover {
    color: #9A0F14;
}

a:focus-visible {
    outline: 2px solid black;
}


/* Gets rid of persona bar for dev purposes */


/* body {
    margin-left: 0px !important;
    overflow-x: hidden;
}

iframe#personaBar-iframe,
.personalBarContainer.evoq .personabar-placeholder {
    display: none;
} */


/* Overriding Row class to remove right gutter */

.row-pad {
    /* Removes Gutter on right */
    --bs-gutter-x: 0px !important;
}

.no-pad {
    padding: 0px !important;
}

#dnn_contentpane p,
#dnn_contentpane ul,
#dnn_contentpane ol {
    color: #000000;
}

#dnn_contentpane a {
    /* color: #000000; */
    font-weight: bold;
    text-decoration: underline;
}

.homepage h1 {
    text-align: center;
}

h1 {
    color: #456592;
    font-size: 2em !important;
    font-family: 'Mulish', sans-serif;
    font-weight: bold;
}

.homepage h2 {
    color: #557eb8;
    font-size: 1.6em !important;
    font-family: 'Mulish', sans-serif;
}

h2 {
    color: #456592;
    font-size: 1.6em;
    font-family: 'Mulish', sans-serif;
    font-weight: bold;
}

h3 {
    font-size: 1.4em;
    color: #be1e2d;
    font-family: 'Mulish', sans-serif;
    font-weight: bold;
}

h4 {
    font-size: 1.25em;
    color: #be1e2d;
    font-family: 'Mulish', sans-serif;
    font-weight: bold;
}

h5 {
    font-size: 1.1em;
    color: #000000;
    font-family: 'Mulish', sans-serif;
    font-weight: bold;
}


/* Skiplink Code */

#skiplink a {
    font-family: Calibri, Arial;
    font-weight: bold;
    position: absolute;
    left: -10000px;
    top: auto;
    width: 1px;
    height: 1px;
    overflow: hidden;
}

#skiplink a:focus {
    position: static;
    width: auto;
    height: auto;
}


/* Pop Up Area */

#dnn_popup {
    background-color: #ffffff;
    color: #be1e2d;
    font-family: 'Mulish', sans-serif;
    padding: 0.5em 2.5em 0.5em 1.5em;
    text-align: center;
}

.btn-close:focus {
    box-shadow: 0 0 0 0.1rem #212529 !important;
}

.alert-dismissible .btn-close {
    padding: 0.75rem 0.5rem !important;
}

.alert {
    margin: 0px !important;
}

.removeItem {
    display: none;
}


/* Header Area*/

#bothMenuContainer {
    background-color: #456592;
    padding: 1em 0em;
}

#menuContainer {
    padding: 0.5em 0em;
}

#bannerContainer a:focus,
#bannerImage:focus,
#bannerImageMobile:focus {
    border: 2px solid black;
}


/* Quicklinks */

#quicklinksContainer {
    text-align: center;
    font-family: 'Mulish', sans-serif;
}

.qlSize {
    background-color: #be1e2d;
    padding: 0.5em 0em;
    text-decoration: none;
}

.qlsize:focus,
.qlSize:hover {
    background-color: #214576;
}

.qlImage img {
    width: 30%;
}

.qlText {
    color: white;
    text-decoration: none;
}


/* Search Box & Translate Dropdown Spacing in PaneDrop */

#dnn_mobileMenu {
    position: absolute;
    left: 350%;
    z-index: 9999;
    box-shadow: 0px 1px 11px -3px black;
    background: #162d61;
    padding-top: 5px;
    padding-bottom: 20px;
    width: 175%;
    z-index: 6;
}

#dnn_siteMenuMobile {
    left: -300%;
    width: 100%;
    text-align: center;
}

#forDesktop {
    padding: 0.5em;
}

#mobileTranslateButton,
#translateButton {
    justify-content: center;
    align-items: center;
    width: 15%;
    margin: 1em 0em;
    padding-left: 2em;
    border: none;
    border-left: 1px solid white;
    color: white;
}

#mobileTranslateButton svg,
#translateButton svg {
    width: 41%;
    max-width: 55px;
}

#mobileTranslateButton img {
    width: 20%;
}

#translateButton img {
    width: 20%;
}

#translate {
    padding-top: 9px;
    margin-bottom: 6px;
    left: 1000%;
    position: absolute;
}

.bcs-container-searchbox {
    width: 90% !important;
}


/* Registration Totals */

#registeredTotalsArea {
    padding-top: 0.5em;
    padding-bottom: 1em;
    justify-content: center;
}

#registrationTotals {
    padding: 10px 25px;
}

#registrationTotals {
    color: black;
    font-family: 'Bebas Neue', cursive;
    font-size: 13px;
    margin: 0px;
    border-radius: 8px;
}

.registrationTotalsList {
    margin: 0px;
    padding: 0px;
    list-style-type: none;
    line-height: 150%;
}

.registrationTotalsList li:first-child {
    display: none;
}

.registrationTotalsList li {
    font-family: 'Bebas Neue', cursive;
    font-size: 12px;
    display: inline-block;
    text-align: center;
    width: 50%;
    padding-bottom: 1.2em;
}

.registrationTotalsList li:first-child {
    width: 100%;
}

.registrationTotalsList li .totalsField {
    display: inline-block;
    width: 100%;
}

.registrationTotalsList li .totalsValue {
    display: inline-block;
    width: 100%;
}

.totalsField {
    text-align: center;
    font-size: 1.5em;
    color: #757575;
    font-family: 'Mulish', sans-serif;
}

.totalsValue {
    text-align: center;
    font-size: 2.75em;
    color: #557eb8;
    padding-top: 0.35em;
}

.demField,
.repField,
.othField,
.npaField,
.totField {
    font-weight: bold;
    font-size: 1.2em;
}

.demValue {}

.repValue {}

.othValue {}

.totValue {}

.datePrelude {
    font-weight: bold;
    font-size: 1.45em;
    padding: 0px;
    font-family: 'Mulish', sans-serif;
}

.dateValue {
    padding-left: 35px;
}

.datePrelude,
.dateValue {
    display: inline-block;
    width: 100% !important;
    text-align: center;
    padding-left: 0px !important;
    padding-right: 0px !important;
}


/* End Registered Totals */


/* Main Area */

#mainArea,
#mainAreaBack {
    padding-bottom: 2em !important;
    padding-top: 2em;
}

#welcomeTitleContainer {
    align-items: center;
    background: white;
    justify-content: center;
    position: absolute;
    transform: translate(33%, -50%);
}

#electionDatesTitleContainer {
    align-items: center;
    background: white;
    justify-content: center;
    position: absolute;
    transform: translate(24%, -50%);
}

.mainTitle {
    display: inline-flex;
    background: white;
}

.titleImageContainer {
    justify-content: right;
    padding-right: 0.25em;
}

.titleImageContainer img {
    max-width: 35px;
    max-height: 35px;
}

.titleText {
    font-family: 'Bebas Neue', cursive;
    color: #757575;
    font-size: 2em;
    padding-left: 0.5em !important;
}

#electionDatesContainer,
#welcomeContainer {
    border-top: 9px solid #e6e7e8;
    padding-bottom: 3em;
}

#electionDatesContentContainer,
#welcomeContentContainer {
    padding-top: 2.5em;
}

#dnn_contentpaneMiddle,
#dnn_contentpane,
#dnn_contentpaneRight {
    padding: 0px 1.25em;
}

#electionDatesContainer {
    padding-bottom: 0px;
}


/***************** Election Dates ***********************/


/* Calendar Icon Removal */

.eds_news_Ozone.eds_subCollection_calendar .archive_list.events ul li:before {
    display: none !important;
}


/* Making the items be on one line each */

.eds_news_Ozone.eds_subCollection_calendar .archive_list.events ul li>a,
.eds_news_Ozone.eds_subCollection_calendar .archive_list.events ul li>a>span {
    display: block;
    width: 100%;
    font-family: 'Mulish', sans-serif !important;
}


/* Changing Font Stylings for Event */

.eds_news_Ozone.eds_subCollection_calendar .archive_list.events ul li>a {
    color: #557eb8 !important;
    font-size: 1.3em !important;
    padding-top: 10px;
    font-weight: bold;
}

.eds_news_Ozone.eds_subCollection_calendar .archive_list.events ul li>a>span {
    color: #be1e2d !important;
    font-size: 0.85em !important;
    font-weight: normal;
    padding-top: 4px;
}


/* Centering Text */

.eds_news_Ozone.eds_subCollection_calendar .archive_list ul {
    text-align: center;
}


/* Keep the title centered with equal space on both sides */

#electionDatesImageContainer {
    width: 22%;
}

#electionDatesText {
    width: 78%;
}


/* Shortens width and adds margin to keep centered */

.eds_news_Ozone.eds_subCollection_calendar .archive_list.events ul li {
    width: 75%;
    margin-left: 12.5% !important;
}


/* Getting rid of extra space and headers and padding */

.DnnModule-EasyDNNnewsCalendar h1,
.dnnModuleManager:before {
    display: none;
}

.eds_news_Ozone.eds_subCollection_calendar .archive_list {
    border: none !important;
    padding: 0px !important;
}


/*------------------------------------ End Events -----------------------------------------*/


/* PaneDrop and Mobile Buttons */

#mobileButtons {
    padding: 6px 0px;
    text-align: center;
    color: white;
    display: flex;
    justify-content: center;
    z-index: 6;
}

.mobilebuttons {
    color: white;
    font-size: 0.95em;
    font-weight: bold;
    text-align: center;
}

.mobilebuttons .glyphicon {
    display: block;
    padding-bottom: 5px;
    font-size: 1.3em;
}

.forMobile {
    display: flex;
    align-items: center;
}

.paneDrop {
    display: block;
    background: white;
    z-index: 99;
    left: 12.5% !important;
    height: 70px !important;
    width: 75% !important;
    margin-left: 0px;
    border-bottom-right-radius: 5px;
    text-align: center;
    line-height: 22px;
    color: #003366 !important;
    transition: height .4s;
    animation-direction: reverse;
    border-bottom-left-radius: 5px;
    border: 2px solid #173b75
}


/* Mobile Menu */

#mobileMenu {
    background-color: #0c4164;
    display: flex;
    align-items: center;
    justify-content: center;
}

.c-hamburger {
    display: block;
    position: relative;
    overflow: hidden;
    margin: 0;
    padding: 0;
    width: 50% !important;
    font-size: 1em;
    color: white;
    transition: background 0.3s;
    left: 0%;
    z-index: 9;
    top: 13px;
}

.c-hamburger:focus {
    outline: none;
}

.c-hamburger span {
    display: block;
    position: absolute;
    top: 21px;
    left: 72%;
    right: 18px;
    height: 3px;
    width: 14%;
    background: white;
}

.c-hamburger span::after,
.c-hamburger span::before {
    position: absolute;
    display: block;
    left: 0;
    width: 100%;
    height: 3px;
    background-color: white;
    content: "";
}

.c-hamburger span::before {
    top: -10px;
}

.c-hamburger span::after {
    bottom: -10px;
}

.c-hamburger--htx {
    background-color: transparent;
}

.c-hamburger--htx span {
    transition: background 0s 0.3s;
}

.c-hamburger--htx span::before,
.c-hamburger--htx span::after {
    transition-duration: 0.3s, 0.3s;
    transition-delay: 0.3s, 0s;
}

.c-hamburger--htx span::before {
    transition-property: top, transform;
}

.c-hamburger--htx span::after {
    transition-property: bottom, transform;
}

.c-hamburger--htx.is-active span {
    background: none;
    width: 14%;
}

.c-hamburger--htx.is-active span::before {
    top: 0;
    transform: rotate(45deg);
}

.c-hamburger--htx.is-active span::after {
    bottom: 0;
    transform: rotate(-45deg);
}

.c-hamburger--htx.is-active span::before,
.c-hamburger--htx.is-active span::after {
    transition-delay: 0s, 0.3s;
}


/* Footer */

#footerContainer {
    text-align: center;
    font-family: 'Mulish', sans-serif;
    padding-bottom: 20px;
}

#footerContainer p,
#footerContainer a,
#footerContainer ol,
#footerContainer ul,
#footerContainer li {
    font-family: 'Mulish', sans-serif !important;
    font-weight: bold;
}

#footerImage {
    left: 30%;
    width: 40%;
}

#officeInfo {
    border-top: 9px solid #e6e7e8;
    padding-top: 2em;
}

#officeInfo p {
    line-height: 1.5;
}

#officeInfo a,
#officeInfo p,
#officeInfo {
    text-decoration: none;
    color: #515151;
}

#officeInfo img {
    width: 6%;
    min-width: 30px;
}

#footerImageBottom {
    background-image: url(//vrcdn.electionsfl.org/portals/suwannee/images2022/wf_footer_xxl.jpg);
    min-height: 50px;
    max-height: 60px;
}


/* Main and Footer Padding */

#mainArea,
footer {
    padding: 0px 2em;
}


/* Backpage */

.backpageMain {
    padding: 0.5px 3em;
}

.backpage h1 {
    text-align: center;
    padding-bottom: 20px;
}

.backpage h2 {
    color: #be1e2d;
    font-size: 1.5em;
    font-family: 'Mulish', sans-serif;
    font-weight: bold;
    padding-top: 10px;
}


/* Breakpoints */


/*------------------------------ MIN WIDTH -----------------------------------*/

@media (min-width: 768px) {
    /* Menu Area */
    #translateButton {
        border: none;
        width: 10%;
    }
    .buttonText {
        font-size: 0.85em;
    }
    #bothMenuContainer {
        padding: 0em;
    }
    #menuContainer {
        padding: 0em;
    }
    #translateButton {
        padding: 0.65em 0.5em 0.5em 0.5em;
    }
    #translateButton img {
        max-width: 20px;
    }
    /* Quicklinks */
    .qlSize {
        width: 12.5% !important
    }
    .qlImage img {
        width: 35%;
    }
    .qlText {
        font-size: 0.9em;
        padding: 0px 0.8em;
    }
    /* Registration Totals */
    .registrationTotalsList li {
        width: 25%;
    }
    #registrationTotals {
        padding: 15px 25px 25px;
    }
    /* Main Area Titles */
    #welcomeTitleContainer {
        transform: translate(87%, -50%);
    }
    #electionDatesTitleContainer {
        transform: translate(60%, -50%);
    }
    #electionDatesText {
        width: 68%;
    }
    /* Footer */
    #officeInfo {
        padding-top: 3.5em;
    }
    #officeInfo img {
        width: 4%;
    }
}

@media (min-width: 992px) {
    /* Menu Area */
    #mobileTranslateButton img {
        width: 10%;
    }
    #translateButton img {
        max-width: 30px;
    }
    #translateButton img {
        width: 15%;
    }
    /* Mobile Menu */
    #dnn_siteMenuMobile {
        display: none;
    }
    /* Main Area */
    #welcomeText {
        width: 50%;
    }
    #welcomeTitleContainer {
        transform: translate(131%, -50%);
        width: 25%;
    }
    #welcomeImageContainer {
        width: 15%;
    }
    /* Election Dates*/
    #electionDatesTitleContainer {
        transform: translate(110%, -50%);
        width: 29%;
    }
    #electionDatesImageContainer {
        width: 22%;
    }
    #electionDatesText {
        width: 70%;
    }
    .eds_news_Ozone.eds_subCollection_calendar .archive_list.events ul li {
        width: 33%;
        display: inline-flex;
        text-align: center;
        margin-left: 0% !important;
    }
    .eds_news_Ozone.eds_subCollection_calendar .archive_list ul {
        text-align: left;
    }
    /* Backpage */
    .backpageMain {
        padding: 0.5em 4em;
    }
    /* Footer */
    #officeInfo {
        padding-top: 4em;
    }
    #officeInfo img {
        width: 4%;
        min-width: 40px;
        max-width: 45px;
    }
    #footerImage {
        transform: translate(-35px, -15%);
        max-height: 80px;
        max-width: 466px;
        left: 34.5%;
    }
}

@media (min-width: 1200px) {
    #mainArea,
    footer {
        padding: 0px 3.5em;
    }
    #welcomeTitleContainer {
        transform: translate(128%, -50%);
    }
    #electionDatesTitleContainer {
        transform: translate(102%, -50%);
    }
    #electionDatesText {
        width: 62%;
    }
    #footerImage {
        left: 33%;
    }
    /* Backpage */
    .backpageMain {
        padding: 0.5em 5em;
    }
}

@media (min-width: 1500px) {
    .buttonText {
        font-size: 1em;
    }
}

@media (min-width: 1700px) {
    #welcomeTitleContainer {
        transform: translate(139%, -50%);
    }
    #electionDatesTitleContainer {
        transform: translate(111%, -50%);
    }
    #footerImage {
        left: 38%;
    }
}

@media (min-width: 1800px) {
    #footerImage {
        left: 39%;
    }
}

@media (min-width: 2000px) {
    #footerImage {
        left: 40%;
    }
}


/*------------------------------ MAX WIDTH -----------------------------------*/

@media (max-width:991px) {
    /* Menu Area */
    #mobileTranslateButton img {
        width: 10%;
    }
}

@media (max-width:767px) {
    /* Mobile Menu */
    #bothMenuContainer {
        padding: 0em;
    }
    .c-hamburger span {
        top: 28px;
    }
    /* Main Area Titles */
    .titleText {
        font-size: 1.7em;
    }
    .titleImageContainer img {
        max-width: 30px;
        max-height: 30px;
    }
    #electionDatesText {
        width: 54%;
    }
    #electionDatesTitleContainer {
        transform: translate(58%, -50%);
    }
    #electionDatesImageContainer {
        width: 15%;
    }
    #welcomeTitleContainer {
        transform: translate(86%, -50%);
    }
    /* Quicklinks */
    .qlImage img {
        width: 15%;
    }
}

@media (max-width:650px) {
    #electionDatesText {
        width: 67%;
    }
    #mobileTranslateButton,
    #translateButton {
        width: 18%;
    }
}

@media (max-width:585px) {
    #mobileTranslateButton,
    #translateButton {
        width: 20%;
    }
}

@media (max-width:500px) {
    #mobileTranslateButton,
    #translateButton {
        width: 25%;
    }
    .c-hamburger,
    .c-hamburger span {
        top: 21px;
    }
    /* Quicklinks */
    .qlImage img {
        width: 30%;
    }
    #quicklinksContainer {
        text-align: center;
        font-family: 'Mulish', sans-serif;
        padding: 20px 0px;
        background-color: #be1e2d;
    }
}

@media (max-width:450px) {
    /* Main Area */
    /* Keep the title centered with equal space on both sides */
    #electionDatesImageContainer {
        width: 23%;
    }
    #electionDatesText {
        width: 74%;
    }
    #welcomeTitleContainer {
        align-items: center;
        background: white;
        justify-content: center;
        position: absolute;
        transform: translate(31%, -50%);
    }
    #electionDatesTitleContainer {
        align-items: center;
        background: white;
        justify-content: center;
        position: absolute;
        transform: translate(22%, -50%);
    }
    .titleText {
        font-size: 1.7em;
    }
    /* Footer */
    #footerImage {
        left: 19%;
        width: 62%;
    }
    #officeInfo img {
        width: 10%;
    }
}

@media (max-width:414px) {
    /* Main Page Titles */
    #electionDatesImageContainer {
        width: 17%;
    }
    #electionDatesText {
        width: 79%;
    }
    #officeInfo {
        font-size: 0.8em;
    }
}

@media (max-width:375px) {
    #mobileTranslateButton,
    #translateButton {
        width: 30%;
    }
}