html {
    height: 100%
}

a,
a:visited {
    color: #1b8700;
    text-decoration: none;
}

a:hover,
a:active,
a:focus {
    cursor: pointer;
    color: #1b5522;
}

body {
    height: 100%;
    margin: 0;
    padding: 0;
    background: #006600;
    font-family: Arial, Helvetica, sans-serif;
    font-size: 12pt;
}

body p {
    padding-top: 0px;
    padding-bottom: 0px;
    margin-top: 0px;
    margin-bottom: 15px;
}

body h1 {
    font-family: "Arial Black", Gadget, sans-serif;
    color: #1b5522;
    font-size: 24pt;
    padding: 0px;
    margin-top: 10px;
    margin-bottom: 5px;
    text-align: center;
}

div.ccv {
    font-family: Verdana;
    font-size: 13px;
    line-height: 15px;
    color: #000000;
    width:100%;
}

#ccvanchor {
    /* vertical-align: super; */
    font-size: 10pt;
    margin-left: 5px;
    
    color: #0026EE;
    
}

#ccvanchor:hover {
    cursor: pointer;
    color: #1b5522;
}

#ccvcontent {
    font-family: Verdana;
    font-size: 13px;
    line-height: 15px;
    color: #000000;
    
    display: none;
    position: absolute;
    bottom: calc(100% + 2px);
    left: 0;
    border: 1px solid #000;
    z-index: 100;
    width: 100%;
    max-width: 500px;
    height: auto;
    padding: 10px;
    background-color: white;
}

#ccvcontent:hover {
    cursor: pointer;
}

body h2 {
    font-family: "Arial Black", Gadget, sans-serif;
    color: #1b5522;
    font-size: 18pt;
    padding: 0px;
    margin-top: 10px;
    margin-bottom: 5px;
}

body h3 {
    font-family: "Arial Black", Gadget, sans-serif;
    color: #1b5522;
    font-size: 14pt;
    padding: 0px;
    margin-top: 10px;
    margin-bottom: 5px;
}

body h4 {
    font-family: "Arial Black", Gadget, sans-serif;
    color: #000;
    font-weight: bold;
    font-size: 12pt;
    padding: 0px;
    margin-top: 10px;
    margin-bottom: 5px;
}

body h5 {
    font-family: "Arial Black", Gadget, sans-serif;
    color: #1b5522;
    font-weight: bold;
    font-size: 12pt;
    padding: 0px;
    margin-top: 10px;
}

.exc1 {
    color: #cc0033;
}

.exc2 {
    color: #ffff00;
}

#centerer {
    width: 1000px;
    margin: 0 auto;
    padding-left: 20px;
    padding-right: 20px;
    background-repeat: repeat-y;
}

#header {
    width: 1000px;
    height: 253px;
}

#topmenu {
    font-family: "Arial Black", Gadget, sans-serif;
    color: black;
    font-size: 12pt;

    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
            align-items: center;
    -webkit-justify-content: space-around;
            justify-content: space-around;
    padding: 0 3px 4px 3px;
    background: #1a3614;
}

.navitem {
    flex: 1;
    text-align: center;
    padding-left: 3px;
    padding-top: 4px;
}

.navitem:first-child {
    padding-left: 0px;
}

.navitem > a {
    background: #7ACF39;
    background-image: linear-gradient(transparent, rgba(0,0,0,0) 35%, rgba(0, 0, 0, 0.25));
    border: solid #548221 1px;
    border-radius: 5px;
    box-sizing: border-box;
    display: inline-block;
    font-size: 14.5px;
    /* font-weight: bold; */
    letter-spacing: 0.25px;
    padding: 3px 0;
    text-decoration: none;
    white-space: nowrap;
    width: 100%;
}

.navitem > a:visited,
.navitem > a:hover,
.navitem > a:link,
.navitem > a:active {
    color: black;
    text-decoration: none;
}

.navitem > a:hover {
    background-image: linear-gradient(transparent, rgba(0, 0, 0, 0.05) 40%, rgba(0, 0, 0, 0.3));
    background-color: #A8CF39;
}

.navitem.navselected > a {
    background-color: #35c038;
    background-image: linear-gradient(transparent, rgba(0, 0, 0, 0.05) 40%, rgba(0, 0, 0, 0.3));
}

.navbuttonend {
    background-image: url(../images/buttonbarendspacers.jpg);
    background-repeat: no-repeat;
    height: 36px;
    width: 4px;
    padding: 0px 0px 0px 0px;
}

.navbutton:hover {
    background-image: url(../images/button-ROLLOVER.jpg);
}

.navbutton {
    background-image: url(../images/button-NORMAL.jpg);
    background-repeat: no-repeat;
    height: 36px;
    width: 132px;
    padding: 0px 0px 0px 0px;
}

.navbuttonselect {
    background-image: url(../images/button-ON.jpg);
    background-repeat: no-repeat;
    height: 36px;
    width: 132px;
    padding: 0px 0px 0px 0px;
}

.navlink {
    height: 36px;
    width: 132px;
    display: block;
    padding: 0px 0px 0px 0px;
}

.navlink:link {
    color: black;
    text-decoration: none;
}

.navlink:visited {
    color: black;
    text-decoration: none;
}

.navlink:hover {
    color: black;
    text-decoration: none;
}

.navlink:active {
    color: black;
    text-decoration: none;
}

.serviceBoxContainer {
    width: 400px;
}

.servicebox {
    background-color: #006600;
    height: 70px;
    min-width: 220px;
    width: 100%;
    max-width: 360px;
    float: left;
    margin: 10px;
    position: relative;
}

.serviceboxtext {
    height: 70px;
    width: 360px;
    margin: 10px;
}

.servicebox1line {
    left: 120px;
    position: absolute;
    top: 23px;
    font-size: 16pt;
}

.servicebox2line {
    left: 120px;
    position: absolute;
    top: 9px;
    font-size: 16pt;
}

.servicebox-lawncare {
    left: 120px;
    position: absolute;
    font-size: 18px;
    top: 23px;
    line-height: 18px;
}

.servicebox:hover .servicebox1line,
.servicebox:hover .servicebox2line,
.servicebox:hover .servicebox-lawncare {
    color: #E8E8E8;
}

.servicebox img {
    float: left;
}

.sidemenu {
    list-style: none;
    list-style-position: inside;
    text-indent: -10px;
}

.sidemenu ul {
    list-style-position: inside;
    text-indent: -30px;
}

.sidemenu a:link,
.sidemenu a:visited,
.sidemenu a:active,
.sidemenu a:hover {
    color: green;
    text-decoration: none;
}

.nolink:link,
.nolink:visited,
.nolink:active,
.nolink:hover {
    color: black;
    text-decoration: none;
}

.button-link {
    background: #7ACF39;
    background-image: linear-gradient(transparent, rgba(0,0,0,0) 35%, rgba(0, 0, 0, 0.25));
    border: solid #548221 1px;
    border-radius: 5px;
    display: inline-block;
    font-size: 14px;
    font-weight: bold;
    letter-spacing: 0.25px;
    margin-top: 10px;
    padding: 5px 12px;
    text-decoration: none;
    white-space: nowrap;
    width: max-content;
    color: black;
}
a.button-link {
    color: black;
}

.button-link:hover:enabled {
    cursor: pointer;
    background-image: linear-gradient(transparent, rgba(0, 0, 0, 0.05) 40%, rgba(0, 0, 0, 0.3));
}

.fb-wrapper {
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
    align-items: center;
}

.bbb-wrapper {
    text-align: center;
}

.card {
    border: 1px solid #548221;
    background-color: #B7D88C;
    border-radius: 10px;
    padding: 10px;
}

#content {
    width: 1040px;
    background-repeat: repeat-y;
    float: left;
    margin-left: -20px;
}

#content-wrapper {
    width: 1000px;
    float: left;
    margin-left: 20px;
}

/* sidebar */
#container2 { 
    float: left;
    width: 100%;
    background: #B7D88C;
    overflow: hidden;
    position: relative;
}

#container1 {
    float: left;
    width: 100%;
    background: #D1EAB0;
    position: relative;
    right: 266px;
    /* adds to the right edge (moves left) */
}

#col1 {
    float: left;
    width: 694px;
    position: relative;
    left: 266px;
    padding-left: 20px;
    padding-right: 20px;
    padding-top: 10px;
    padding-bottom: 87px;
    min-height: 400px;
}

#col2 {
    float: left;
    width: 234px;
    position: relative;
    left: 266px;
    padding-left: 16px;
    padding-right: 16px;
    padding-top: 10px;
    padding-bottom: 87px;
    color: #000000;
    margin-bottom: 20px;
}

#single-col {
    float: left;
    width: 960px;
    background: #D1EAB0;
    position: relative;
    padding: 10px 20px 87px 20px;
    min-height: 400px;
}

/*column design comes from http://matthewjamestaylor.com/blog/equal-height-columns-cross-browser-css-no-hacks */
#footer {
    background-image: url('/images/bottomswoop.png?v=2');
    background-color: transparent;
    width: 1000px;
    height: 87px;
    float: left;
    position: relative;
    margin-top: -87px;
    color: white;
    font-size: 12.5px;
}

#footer-content {
    margin-top: 50px;
    padding: 0 10px;
    width: 100%;

    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
            justify-content: space-between;
    -webkit-box-align: end;
    -webkit-align-items: flex-end;
            align-items: flex-end;
    box-sizing: border-box;
}

#footer-content > div {
    padding-bottom: 5px;
}

#footer-content > div > span {
    display: block;
}

#footer a {
    color: white!important;
}

#footer a:hover {
    cursor: pointer;
    color: #1b5522!important;
}

sup {
    vertical-align: 0;
    position: relative;
    bottom: 0.5ex;
    left: 0.2ex;
    margin-right: 0.2ex;
}

.oval-wrapper {
    width: 100%;
    max-width: 600px;
    margin: 0 auto;
    box-sizing: border-box;
}
.oval {
    width: 100%;
    max-width: 350px;
    background: white;
    text-align: center;
    font-size: 10pt;
    display: block;
    padding: 35px;
    border-color: green;
    border-style: solid;
    border-width: 2px;
    -moz-border-radius: 50%;
    -webkit-border-radius: 50%;
    border-radius: 50%;
    -moz-box-shadow: 5px 5px 10px;
    -webkit-box-shadow: 5px 5px 10px;
    box-shadow: 5px 5px 10px rgba(0,0,0,.5);
    clear: both;
    box-sizing: border-box;
}

.oval-left {
    float: left;
}

.oval-right {
    float: right;
}

.oval-text {
    display: inline-block;
    vertical-align: middle;
    line-height: normal;
    max-width: 275px;
}

.oval h5 {
    margin-top: -10px;
}

.hidden {
    display: none;
}

.branchlist {
    column-count: 4;
    padding-bottom: 75px;
}

.branchlist-item {
    font-size: smaller;
    page-break-inside: avoid;
    margin-bottom: 10px;
}

.branchlist-item h5 {
    margin: 0;
}

.branchlist > #startWI {
    break-before: column;
}

.account-buttons > input[type="button"] {
    width: 100%;
    max-width: max-content;
    margin-top: 20px;
    white-space: normal;
}

.top-choice-awards {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    gap: 15px;
}

.top-choice-awards > a {
    text-align: right;
}

.top-choice-awards > a:nth-child(2) {
    text-align: left;
}

.fallCleanupTable, .fallCleanupTable th, .fallCleanupTable td {
    border: 1px solid #B7D88C;
    border-collapse: collapse;
}
.fallCleanupTable th {
    background-color: #B7D88C;
}

.fallCleanupTable th, .fallCleanupTable td {
    padding: 4px;
}

.centeringFlex {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}

.centerText {
    text-align: center;
}
.minHeight3 {
    min-height: 3em;
}

.tooltip {
    position: relative;
    display: inline-block;
    border-bottom: 1px dotted black;
}

.tooltip .tooltiptext {
    visibility: hidden;
    width: 300px;
    background-color: white;
    border: 1px solid #1b5522;
    color: #000;
    text-align: center;
    padding: 5px 0;
    white-space: pre-line;
    border-radius: 6px;
    position: absolute;
    z-index: 1;
    bottom: calc(100% + 3px);
    left: 50%;
    margin-left: -100px;
    padding-right: 10px;
    padding-left: 10px;
    height: min-content;
}

.tooltip:hover .tooltiptext {
    visibility: visible;
}

/* ////////// Finix formatting ////////// */
div#finix-form {
    max-width: 400px;
    margin-top: -3px;
}

div#finix-form .finix-form-container .field {
    margin-top: 2px;
}

div#finix-form .finix-form-container .field-holder {
    margin-top: 5px;
}

div#finix-form .finix-form-container .field-array {
    margin-top: 5px;
    margin-bottom: -4px;
    gap: 5px;
}

div#finix-form .finix-form-container .validation {
    font-size: 0.83em;
    padding-left: 2px;
}

div#finix-form .finix-form-container .field-holder label {
    padding-left: 2px;
}

@media only screen and (max-width: 1060px) {
    #centerer {
        width: 100%;
        background-image: none;
        padding: 0;
        box-sizing: border-box;
    }

    #header {
        width: 100%;
        height: 0;
        padding-top: 25.32%;
        background-size: contain;
        background-repeat: no-repeat;
    }

    #topmenu {
        flex-wrap: wrap;
    }

    .navitem {
        min-width: 30%;
    }

    .navitem:nth-child(4) {
        padding-left: 0;
    }

    #content {
        width: 100%;
        margin-left: 0;
        float: none;
        background-image: none;
        background-repeat: no-repeat;

    }
    #content-wrapper {
        width: 100%;
        margin-left: 0;
        float: none;
    }

    #container1, #container2 {
        width: 100%;
        float: none;
        right: auto;
    }

    #col1, #col2, #single-col {
        clear: both;
        float: none;
        width: 100%;
        left: auto;
        box-sizing: border-box;
    }

    #col1 {
        padding: 10px 20px 10px 20px;
    }

    #col2 {
        padding: 10px 20px 97px 20px;
        background: #B7D88C;
    }
    
    #single-col {
        min-height: 68vh;
        /* padding-bottom: 100px; */
    }

    #footer {
        width: 100%;
        max-width: 100%;
        height: 115px;
        background-size: cover;
        /* margin-top: 25px; */
    }

    #footer-content {
        display: block;
        vertical-align: bottom;
        text-align: center;
        margin-top: 50px;
    }

    #footer-content > div > span {
        display: inline;
    }

    #single-col > .nolink {
        display: block;
        width: 100%;
        max-width: 360px;
        margin: 0 auto;
    }

    .servicebox,
    .serviceboxtext {
        max-width: 360px;
    }

    .serviceboxtext {
        margin: 0 auto;
        text-align: center;
    }
    
    .branchlist {
        column-count: 3;
    }
    
    .branchlist > #startWI {
        break-before: auto;
    }

}

@media only screen and (max-width: 600px) {
    .oval {
        float: none!important;
        margin-left: auto;
        margin-right: auto;
    }
    
        
    .branchlist {
        column-count: 2;
    }
}

@media only screen and (max-width: 480px) {
    .navitem {
        min-width: 49%;
    }

    .navitem:nth-child(4) {
        padding-left: 3px;
    }

    .navitem:nth-child(3),
    .navitem:nth-child(5) {
        padding-left: 0;
    }

    .serviceBoxContainer {
        width: 100%
    }
    
    .servicebox-lawncare {
        font-size: 16px;
        line-height:16px;
    }

    #footer-content {
        margin-top: 35px;
    }
}

/*//////////  Address Inputs //////////*/
.addressForm {
    display: grid;
    width: 325px;
    grid-template-columns: 90px 1fr;
    gap: 5px;
}

.addressForm > label, .addressForm > .addressFormLabel {
    text-align: right;
}

.addressFormZipLine {
    display: grid;
    grid-template-columns: minmax(0, 3fr) minmax(0, 1fr) minmax(0, 2fr);
    grid-template-rows: min-content;
    gap: 5px;
}

@media only screen and (max-width: 390px) {
    .addressForm label {
        display: block;
        text-align: left;
    }
    .addressForm, .addressForm > label, .addressForm > input {
        display: block;
        text-align: left;
    }
    .addressForm input[type="text"] {
        width: 75vw;
    }
    .addressFormZipLine {
        display: flex;
        flex-direction: column;
    }
    .addressFormZipLine > input, .addressFormZipLine > select, #property_zip {
        width: 150px;
    }
}
