/* Useful stuff that applies generally */

li {
    text-align: left;
}

.clearfix::after {
    content: "";
    clear: both;
    display: table;
}

* {
    box-sizing: border-box;
}

body {
    font-family: sans-serif;
}

a {
    text-decoration: none;
    color: inherit;
}

p {
    font-size: larger;
}

.activeTop {
    background-color: aliceblue;
    color: black;
}

button {
    background: none;
    border: none;
    cursor: pointer;
    color: black;
    font: 700 1.2rem sans-serif;
    padding: 1em 2em;
    outline: 2px solid black;
}

button:hover {
    background: rgba(0, 0, 0, 0.1);
}

#top {
    padding-top: 2em;
    background: url("tempBackground.JPG") no-repeat center;
    background-size: cover;
    min-height: 500px;
    display: -ms-flexbox;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    /* use box shadow on inside to add opacity */
    box-shadow: inset 0 0 0 100vmax rgba(0, 0, 0, .3);
}

.active {
    background-color: black;
}

/* nav */

#fixNav {
    margin: auto;
    width: 100%;
    background-color: black;
    position: sticky;
    position: -webkit-sticky;
    top: 0;
}

nav {
    margin-left: 3.5em;
    margin-right: auto;
}

nav a {
    font-size: larger;
    color: white;
    padding: 1em;
    font-family: sans-serif;
    text-transform: uppercase;
    font-weight: bold;
    display: inline-block;
}

nav a:hover {
    background-color: white;
    color: black;
}

.right {
    float: right;
    margin-right: 3.5em;
}

/* header */

header {}

header h1 {
    color: white;
    margin: 0 0 0 1.45em;
    font-size: 45px;
}

/* header mission */

#mission {
    margin: 1em 0 1em 4.25em;
    color: white;
    width: 30%;
}

#mission h1 {
    margin-bottom: 1em;
}

#mission p {
    font-family: sans-serif;
    margin-bottom: 1.5em;
}

#mission button {
    color: white;
    outline: 2px solid white;
}

#mission button:hover {
    background: rgba(255, 255, 255, 0.5);
}

/* content */

/* mobile nav */

#mobileButton {
    font-weight: bold;
    display: none;
    background-color: none;
    color: white;
    border: 2px solid white;
    cursor: pointer;
    padding: 1.25em;
}

#mobileDrop {
    position: relative;
    display: inline-block;
    float: right;
    margin: 1em;
}

#mobileDrop:hover {
    background: rgba(255, 255, 255, 0.5);
}

.dropdown-content {
    display: none;
    position: absolute;
    background: rgba(255, 255, 255, 0.95);
    min-width: 10em;
    box-shadow: 0px 8px 16px 0px rgba(0, 0, 0, 0.2);
    z-index: 1;
    right: 0;
}

.dropdown-content a {
    font-family: sans-serif;
    color: black;
    font-weight: bold;
    padding: 1em 1.25em;
    text-transform: uppercase;
    font-weight: bold;
    display: block;
}

.dropdown-content a:visited {
    color: black;
}

.dropdown-content a:hover {
    background-color: black;
    color: white
}

.show {
    display: block;
}


/* internal nav */

#internalNav {
    display: -ms-flexbox;
    /* IE10 */
    display: flex;
    -ms-flex-wrap: wrap;
    /* IE10 */
    flex-wrap: wrap;
}

.internalNavCol {
    -ms-flex: 20%;
    flex: 20%;
}

.internalNavCol:hover {
    opacity: 0.5;
}

#navAbout {
    background: url("waterFaucet.JPG") no-repeat center;
    background-size: cover;
    height: 400px;
}

#navCustomer {
    background: url("brokenPipe.JPG") no-repeat center;
    background-size: cover;
    height: 400px;
}

#navWater {
    background: url("magnet.JPG") no-repeat center;
    background-size: cover;
    height: 400px;
}

#navFaq {
    background: url("rangeleySnow.JPG") no-repeat center;
    background-size: cover;
    height: 400px;
}

#navContact {
    background: url("contactUs.JPG") no-repeat center;
    background-size: cover;
    height: 400px;
}

.sectionNav h3 {
    color: white;
    text-align: center;
    background: rgba(0, 0, 0, 0.5);
    padding: 0.75em;
}

/* home structure */

section {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.internalCol {
    -ms-flex: 50%;
    /* IE10 */
    flex: 50%;
}

/* about */

#about {
    background-color: white;
    background-image: -webkit-linear-gradient(70deg, white 50%, whitesmoke 50%);
    min-height: 600px;
    padding: 5em;
}

#aboutText {
    width: 75%;
}

#aboutText h1 {
    margin-bottom: 1em;
}

#aboutText p {
    margin-bottom: 1.5em;
}

#aboutImg {
    background: url("temp1.JPG") no-repeat center;
    background-size: cover;
    border-radius: 5px;
    width: 50%;
    min-height: 200px;
    margin-top: 1em;
}

/* covid */

#covid {
    background: url("rangeleyFall.JPG") no-repeat center;
    background-size: cover;
    height: 400px;
    box-shadow: inset 0 0 0 100vmax rgba(0, 0, 0, .3);
    padding: 5em;
    color: white;
}

#covidText {
    text-align: center;
}

#covid h1 {
    margin-bottom: 1em;
}

#covid p {
    color: white;
    margin-bottom: 1.5em;
}

#covid button {
    color: white;
    outline: 2px solid white;
}

#covid button:hover {
    background: rgba(255, 255, 255, 0.5);
}

/* customer service */

#customerService {
    background-color: white;
    background-image: -webkit-linear-gradient(-90deg, lightgrey 30%, white 70%);
    min-height: 600px;
    display: -ms-flexbox;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    padding: 5em;
}

#customerText {
    text-align: center;
    width: 100%;
}

#customerText h1 {
    margin-bottom: 1em;
}

#customerText p {
    margin-bottom: 1.5em;
}

#customerService .internalCol {
    -ms-flex: 40%;
    flex: 40%;
}

#customerService .internalCol p {
    text-align: center;
}

#customerService button {
    margin: auto;
}

/* documents */

#customerService .internalCol {
    box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
    display: inline-block;
    border: solid 1px #333;
    margin: 2em auto;
    max-width: 225px;
}

#customerService .internalCol:hover {
    opacity: 0.5;
}

#customerService .internalCol h4 {
    text-align: center;
    color: #333;
    background-color: aliceblue;
    margin: 0;
    padding: 1em;
    font-family: sans-serif;
    border-top: dashed 1px #333;
}

#doc1,
#doc2,
#doc3,
#doc4,
#doc5,
#doc6,
#doc7,
#doc8 {
    height: 250px;
}

#doc1 {
    background: url("termsImg.JPG") no-repeat center;
    background-size: cover;
}

#doc2 {
    background: url("appImg.JPG") no-repeat center;
    background-size: cover;
}

#doc3 {
    background: url("xconnImg.JPG") no-repeat center;
    background-size: cover;
}

#doc4 {
    background: url("workImg.JPG") no-repeat center;
    background-size: cover;
}

#doc5 {
    background: url("seasonalImg.JPG") no-repeat center;
    background-size: cover;
}

#doc6 {
    background: url("sanitaryImg.JPG") no-repeat center;
    background-size: cover;
}

#doc7 {
    background: url("lsliImg.JPG") no-repeat center;
    background-size: cover;
}

#doc8 {
    background: url("rates.jpg") no-repeat center;
    background-size: cover;
}

.emergency-banner {
    background-color: #f44336; /* Red background for urgency */
    color: white;
    padding: 15px 20px;
    text-align: center;
    font-size: 1rem;
    line-height: 1.4;
    position: fixed; /* Fixes the banner to the top of the viewport */
    top: 0;
    left: 0;
    width: 100%;
    z-index: 1000; /* Ensures the banner is above other content */
    display: flex;
    justify-content: space-between;
    align-items: center;
    box-sizing: border-box;
}

.banner-content {
    flex-grow: 1;
}

.banner-link {
    color: white;
    text-decoration: underline;
    margin-left: 10px;
    font-weight: bold;
}

.close-btn {
    background: none;
    border: none;
    color: white;
    font-size: 22px;
    cursor: pointer;
    margin-left: 15px;
    line-height: 1;
}

.close-btn:hover {
    color: #ddd;
}

.buttonCol {
    margin-top: 1em;
    width: 100%;
    text-align: center;
}


/* water quality */

#waterQuality {
    background: url("rangeleyLakes.JPG") no-repeat center;
    background-size: cover;
    height: 400px;
    padding: 5em;
    box-shadow: inset 0 0 0 100vmax rgba(0, 0, 0, .3);
}

#waterText {
    text-align: center;
}

#waterText h1 {
    color: white;
    margin-bottom: 1em;
}

#waterText p {
    color: white;
    margin-bottom: 1.5em;
}

#waterText button {
    color: white;
    outline: 2px solid white;
}

#waterText button:hover {
    background: rgba(255, 255, 255, 0.5);
}

/* faq */

#faq {
    background-color: white;
    background-image: -webkit-linear-gradient(75deg, whitesmoke 50%, white 50%);
    min-height: 600px;
    padding: 5em;
}

#faqSection {
    width: 65%;
    margin: auto;
    text-align: center;
}

#faq h1 {
    text-align: center;
    margin-bottom: 1em;
}

#faqDescription {
    margin-bottom: 1.5em;
}

.frequent {
    background-color: darkgrey;
    color: black;
    cursor: pointer;
    padding: 1.25em;
    width: 100%;
    text-align: left;
    border: none;
    margin-bottom: 0.5em;
    outline: none;
    transition: 0.4s;
}

.active,
.frequent:hover {
    background-color: dimgrey;
}

.frequent:after {
    content: '\02795';
    color: black;
    float: right;
}

.active:after {
    content: "\2796";
}

.answer {
    padding: 0 2em;
    line-height: 2;
    max-height: 0;
    background-color: white;
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.2s ease-out;
    margin-bottom: 0.5em;
}

.answer p {
    padding: 1em 0;
    text-align: left;
}

.answer a {
    color: steelblue;
}

.answer a:visited {
    color: steelblue;
}

.answer a:hover {
    text-decoration: underline;
}

#faqMoreButton {
    margin-top: 1em;
}

/* news */

#board {
    background: url("rangeleyLakesWide.JPG") no-repeat center;
    background-size: cover;
    height: 400px;
    padding: 5em;
    box-shadow: inset 0 0 0 100vmax rgba(0, 0, 0, .3);
}

/* contact */

/* footer */

footer {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    color: white;
    background-color: black;
    height: 350px;
    line-height: 1.5;
    padding: 3em 2em 0 2em;
}

.footerCol {
    -ms-flex: 30%;
    flex: 30%;
    margin: 0.5em;
    padding-left: 1em;
    border-left: solid 2px white;
    max-height: 12em;
}

#footerLinks a {
    display: block;
}

footer a:hover {
    color: steelblue;
}

#copy {
    background-color: lightgrey;
    text-align: center;
    padding: 0.25em;
    line-height: 1.5;
}

#copy a {
    color: darkslategrey;
}

#copy a:hover {
    color: steelblue;
}

/* media queries */
@media screen and (max-width: 1400px) {}

@media screen and (max-width: 1250px) {}

@media screen and (max-width: 1000px) {
    nav {
        display: none;
    }

    #internalNav {
        display: none;
    }

    #mobileButton {
        display: block;
    }

    #mission {
        width: 75%;
    }

    footer {
        height: 500px;
    }

    .footerCol {
        border-left: none;
        border-bottom: solid 2px white;
    }

    #footerLinks {
        text-align: center;
    }
}

@media screen and (max-width: 900px) {

    #about,
    #covid,
    #customerService,
    #waterQuality,
    #faq,
    #board {
        padding: 2em 1em;
    }

    #aboutText {
        width: 100%;
        text-align: center;
    }

    .internalCol {
        -ms-flex: 100%;
        flex: 100%;
    }
}

@media screen and (max-width: 700px) {

    .footerCol {
        -ms-flex: 100%;
        flex: 100%;
        text-align: center;
    }

    footer {
        height: 675px;
    }
}

@media screen and (max-width: 500px) {}
