/*----------------------------------------*/
/* C O L O R S   */
/*----------------------------------------*/

/* LIGHT GREEN #78bf4d */
/* DARK GREEN #2b501b */



/*-------------------------------------------------------------------------*/
/* BASIC STYLE  */
/*-------------------------------------------------------------------------*/
* {
    margin: 0;
    padding: 0;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

html,
body {
    background-color: #fff;
    color: #626262;
    font-family: 'Lato', sans-serif;
    font-size: 20px;
    font-weight: 300;
    text-rendering: optimizeLegibility;
    /* This will make fonts rendering perfect */
    overflow-x: hidden;
    scroll-behavior: smooth;
    /* Creates smooth Scroll effect for inline scrolling*/
}

a img {
    border: none;
}



a:link,
a:visited {
    color: #78bf4d;
    text-decoration: none;
    border-bottom: 1px solid #78bf4d;
    /* A lot cleaner looking for underline and you can add padding-bottom to position it where you like - pretty nice!  */
    padding-bottom: 1px;
    transition: border-bottom 0.2s, color 0.2s;
    /* Gradually fades the hover color  */
    -webkit-transition: border-bottom 0.2s, color 0.2s;
}

a:hover,
a:active {
    color: #555;
    /* Changes the color of the links to gray when hovered over*/
    border-bottom: 1px solid transparent;
    /* removes the underline on hovered over*/
}

/* CLEARFIX Automatically  clears floats */
.clearfix {
    zoom: 1;
}

.clearfix:after {
    content: '.';
    clear: both;
    display: block;
    height: 0;
    visibility: hidden;
}

/*-------------------------------------------------------------------------*/
/* REUSABLE STYLES */
/*-------------------------------------------------------------------------*/

/* Content will be in rows for Responsive */
.row {
    max-width: 1140px;
    /* Only absolute value the rest will be % */
    margin: 0 auto;
    /*centers*/
}

section {
    padding: 80px 0;
    /*80 top and bottom 0 left and right*/
}


h1,
h2,
h3 {
    font-weight: 300;
    text-transform: uppercase;
}


h1 {
    margin-top: 0;
    margin-bottom: 20px;
    /* to give some space underneath it */
    font-size: 240%;
    /*240% of base size 20px found in HTML */
    color: #fff;
    word-spacing: 3px;
    letter-spacing: 1px;


}

h2 {

    margin-bottom: 30px;
    /* to give some space underneath it */
    font-size: 180%;
    word-spacing: 2px;
    text-align: center;
    letter-spacing: 1px;
}

h2:after {
    display: block;
    height: 2px;
    background-color: #78bf4d;
    content: " ";
    /*On an AFTER you need to have some sort of content so we add content by giving it a SPACE between "" */
    width: 100px;
    margin: 0 auto;
    /* CENTERS */
    margin-top: 30px;
}

h3 {

    margin-bottom: 15px;
    /* to give some space underneath it */
    font-size: 110%;
    text-align: center;
}

.box {
    padding: 1%;

}

/*----------------------------------------*/
/* P A R A G R A P H S    */
/*----------------------------------------*/

.long-copy {
    line-height: 140%;
    /* Line height should always be between 120% to 145% */
    width: 70%;
    /* Once you make it 70% it will no longer be centered so you have to margin-left */
    margin-left: 15%;
    /* 70% of 100% equals 30 so you want 15% because 15+15=30 */

}

.box p {
    line-height: 140%;
    /* Line height should always be between 120% to 145% */
    font-size: 90%;
}

/* F E A T U R E S  */

.section-features .long-copy {

    margin-bottom: 30px;


}

/*----------------------------------------*/
/* I C O N S     */
/*----------------------------------------*/

.icon-big {
    font-size: 300%;
    /* The icons are actually font icons so you treat is as a Font and can style them that way */
    display: block;
    color: #2b501b;
    margin-bottom: 10px;
    /* gives space between the icons and the titles */
    text-align: center;


}


.icon-big:hover,
.icon-big:active {
    color: #78bf4d;



}





.icon-med {
    font-size: 210%;
    /* The icons are actually font icons so you treat is as a Font and can style them that way */
    display: block;
    color: #fff;
    margin-bottom: 10px;
    /* gives space between the icons and the titles */

}


.icon-small {
    font-size: 120%;
    display: inline-block;
    /* You set the inline-block so you can assign width  */
    width: 30px;
    text-align: center;
    /* and now you can center it inside the inline-block */
    color: #78bf4d;
    margin-right: 15px;

    /* Below Helps align Text and Icons */
    line-height: 120%;
    vertical-align: middle;
    margin-top: -4px;


}








/*-------------------------------------------------------------------------*/
/* H E A D E R */
/*-------------------------------------------------------------------------*/


.header_wrapper {
    width: 100%;

}



header {



   height: calc(var(--vh, 1vh) * 85);
    /*fills viewport with image VH means 85% of Viewport */
    background-size: cover;
    /*Tells browser we want to see the whole image*/
    background-position: center;
    
    /*Keeps the background image in place when scrolling down the page, cool effect.*/
    background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0.5))), url(img/springfield_park.jpg);
    /*Linear-Gradient adds a gradient over the background image */
    background-image: linear-gradient(rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.5)), url(img/springfield_park.jpg);

}

.hero-text-box {
    position: absolute;
    /*needs to be absolute to ensure vertical and horizontal positioning */
    width: 1140px;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);

}



/*----------------------------------------*/
/* L O G O  */
/*----------------------------------------*/

.logo {
    height: 160px;
    width: auto;
    float: left;

}

.logo-black {
    display: none;
    height: 50px;
    /* Will changes the size of the logo in the sticky menu area*/
    width: auto;
    float: left;
    margin: 5px 0;
}

/*----------------------------------------*/
/* T O P   M E N U  */
/*----------------------------------------*/

nav {
    position: fixed;
    /* Stays in the spot respective of scrolling */
    top: 0;
    left: 0;
    width: 100%;
    background-color: #191919;
    z-index: 9;
    box-shadow: 0 2px 2px #2b501b;


}


.nav-icon {
    font-size: 140%;
    display: inline-block;
    /* You set the inline-block so you can assign width  */
    width: 20px;
    text-align: center;
    /* and now you can center it inside the inline-block */
    color: #78bf4d;
    vertical-align: middle;
    margin-top: -10px;


}



.main-nav {
    float: right;
    list-style: none;
    /* removes list bullet points */
    margin-top: 75px;
    color: #fff;

}

.main-nav li {
    display: inline-block;
    /*makes menu links side by side */
    margin-left: 25px;

}

.main-nav li a:link,
main-nav li a:visited {
    padding: 8px 0px;
    /*  padding for the underline hover */
    color: #fff;
    text-decoration: none;
    text-transform: uppercase;
    font-size: 90%;
    border-bottom: 2px solid transparent;
    -webkit-transition: border-bottom 0.2s;
    transition: border-bottom 0.2s;
    -webkit-transition: border-bottom 0.2s, color 0.2s;
}

.main-nav li a:hover,
main-nav li a:active {

    border-bottom: 2px solid #78bf4d;


}

/* M O B I L E   M E N U   */

.mobile-nav-icon {
    float: right;
    margin-top: 30px;
    cursor: pointer;
    /* Make this a pointer because we didn't set an A href rather an A class*/
    display: none;

}



.mobile-nav-icon i {
    font-size: 200%;
    color: #fff;
}

/* S T I C K Y    N A V I G A T I O N */

.sticky {
    position: fixed;
    /* Stays in the spot respective of scrolling */
    top: 0;
    left: 0;
    width: 100%;
    background-color: rgba(255, 255, 255, 0.98);
    box-shadow: 0 2px 2px #efefef;
    z-index: 9999;

}

.sticky .main-nav {
    margin-top: 18px;
}

/* Will pad the menu links to where you want it to be */

.sticky .main-nav li a:link,
.sticky .main-nav li a:visited {
    padding: 16px 0;
    color: #555;
}

.sticky .logo {
    display: none;
}

.sticky .logo-black {
    display: block;
}






/*----------------------------------------*/
/* A C T I O N  -  B U T T O N S */
/*----------------------------------------*/

/* button design */
.btn:link,
.btn:visited,
input[type=submit] {
    display: inline-block;
    padding: 10px 30px;
    font-weight: 300;
    text-decoration: none;
    border-radius: 200px;
    /*rounds the button*/
    -webkit-transition: background-color 0.2s, border 0.2s, color 0.2s;
    transition: background-color 0.2s, border 0.2s, color 0.2s;
    /*CSS3 - Transtions color on hover over on btn */

}

/*Yellow Button */
.btn-full:link,
.btn-full:visited,
input[type=submit] {
    background-color: #2b501b;
    border: 2px solid #78bf4d;
    color: #fff;
    margin-right: 20px;
    font-weight: 400;
}

/*blank Button */
.btn-ghost:link,
.btn-ghost:visited {
    border: 2px solid #78bf4d;
    color: #78bf4d;
    font-weight: 400;

}

.btn-full:hover,
.btn-full:active {
    background-color: #78bf4d;
    border: 2px solid #78bf4d;
    color: #fff;

}

.btn-ghost:hover,
.btn-ghost:active {
    border: 2px solid #78bf4d;
    color: #fff;

}

.btn:hover,
.btn:active,
input[type=submit]:hover,
input[type=submit]:active {
    background-color: #78bf4d;

}

/*-------------------------------------------------------------------------*/
/* G A L L E R Y    S H O W C A S E */
/*-------------------------------------------------------------------------*/

.section-gallery {
    padding: 0;
    /* eleminates the 80px padding established in the overall Section to bring the showcase photos up closer to the white space content.*/

}

.gallery-showcase {
    list-style: none;
    width: 100%;

}

.gallery-showcase li {
    display: block;
    float: left;
    width: 25%;
    /* the over width of the Showcase is 100% and we want 4 images per so it makes this width 25%*/
}

.showcase-photo {
    width: 100%;
    /* has the exact width as it's parent which is the LI  */
    margin: 0;
    overflow: hidden;
    /* Set to hidden so that when you transform Scale below, the images don't go outside of the browser/window  */
    background-color: #000;
}

.showcase-photo img {
    opacity: 0.7;
    /* 70% opacity */
    width: 100%;
    /* makes the photo 100% exactly the way it is suppose to be.   */
    margin: 0;
    height: auto;
    -webkit-transform: scale(1.15);
    transform: scale(1.15);
    -webkit-transition: opacity 0.5s, -webkit-transform 0.5s;
    transition: opacity 0.5s, -webkit-transform 0.5s;
    transition: transform 0.5s, opacity 0.5s;
    transition: transform 0.5s, opacity 0.5s, -webkit-transform 0.5s;
    /* transitions the image slowly   */
}


.showcase-photo img:hover {
    -webkit-transform: scale(1.03);
    transform: scale(1.03);
    opacity: 1;
    /* BACK to 100% opacity on HOVER */
}








/*-------------------------------------------------------------------------*/
/* B O A R D   M E M B E R S   */
/*-------------------------------------------------------------------------*/


.board {

    background-color: #e3e3e3;
    /* Subtle color change for the section */
    text-align: center;

}




.board img {

    width: 65%;
    height: auto;
    border-radius: 50%;
    border: 4px solid #2b501b;
    margin: 0 auto;

}



.show {

    padding-top: 5px;
    text-align: left;
}

.bio {
    cursor: pointer;
}


/*-------------------------------------------------------------------------*/
/* R E P O R T S    */
/*-------------------------------------------------------------------------*/



.reports {

    background-color: #e3e3e3;
    /* Subtle color change for the section */

}





.calendar {

    background-color: #272727;
    /* Subtle color change for the section */

}




/*-------------------------------------------------------------------------*/
/* C O N T A C T   P A G E    */
/*-------------------------------------------------------------------------*/



.contact {

    background-color: #e2e2e2;
    /* Subtle color change for the section */
}



/*-------------------------------------------------------------------------*/
/* D O C S    P A G E    */
/*-------------------------------------------------------------------------*/



.docs {

    background-color: #e2e2e2;
    text-align: center;
    line-height: 40px;

}

.docs a {
    font-weight: 600;


}



.more_docs {

    background-color: #fff;
    text-align: center;
    line-height: 40px;

}

.more_docs a {
    font-weight: 600;


}

.responsive {

    width: 80%;
    height: auto;
    
}


/*-------------------------------------------------------------------------*/
/* D U E S    P A G E    */
/*-------------------------------------------------------------------------*/

.dues {

    background-color: #121212;

}



/*-------------------------------------------------------------------------*/
/* S E C T I O N  4 */
/*-------------------------------------------------------------------------*/

.box img {
    /* Makes the Images fit properly inside the box element  */
    width: 100%;
    height: auto;
    margin-bottom: 15px;
}

.section4-feature {
    margin-bottom: 5px;
}

/*-------------------------------------------------------------------------*/
/* L A R G E   I M A G E    B R E A K */
/*-------------------------------------------------------------------------*/

.aerial {
    background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0.3)), to(rgba(0, 0, 0, 0.3))), url(img/loop.jpg);
    background-image: linear-gradient(rgba(0, 0, 0, 0.3), rgba(0, 0, 0, 0.3)), url(img/loop.jpg);
    /*Linear-Gradient adds a gradient over the background image */
    background-size: cover;
    /*Tells browser we want to see the whole image, fills the whole width*/
    background-position: center;
    background-attachment: scroll;
    color: #fff;
    height: 40vh;



}

blockquote {
    padding: 2%;
    line-height: 145%;
    font-style: italic;
    position: relative;
    margin-top: 40px;
}

blockquote:before {
    content: "\201C";
    /*!!!! When adding BEFORE or AFTER you need to have CONTENT in this case it is the code for quotation mark*/
    font-size: 500%;
    display: block;
    position: absolute;
    /*!!!! Important: if you make an element ABSOLUTE position the Parent above has to be RELATIVE*/
    top: 0px;
    left: -3px;
}

cite {
    font-size: 90%;
    margin-top: 25px;
    display: block;
}

cite img {
    height: 45px;
    border-radius: 50%;
    /*Makes the image round*/
    margin-right: 10px;
    vertical-align: middle;
}


/*-------------------------------------------------------------------------*/
/* F O R M   S U B M I S S I O N   A R E A  */
/*-------------------------------------------------------------------------*/

.contact-form {
    width: 60%;
    margin: 0 auto;


}

input[type=text],
input[type=email],
select,
textarea {
    width: 100%;
    padding: 7px;
    border-radius: 3px;
    border: 1px solid #ccc;
}

input[type=checkbox] {
    margin: 10px 5px 10px 0;
}

*:focus {
    outline: none;
}

/* Removes borders when clicking on each element text area */

.form-messages {
    width: 70%;
    margin: 0 auto;
    padding: 10px;
    border-radius: 3px;
    margin-bottom: 20px;
}

.success {
    background-color: rgba(38, 191, 68, 0.40);
    color: #333;
}

.error {
    background-color: rgba(248, 12, 12, 0.4);
    color: #333;

}

/*-------------------------------------------------------------------------*/
/* F O O T E R  */
/*-------------------------------------------------------------------------*/


footer {
    background-color: #0a0d09;
    padding: 50px;
    font-size: 80%;
}

.footer-nav {
    list-style: none;
    float: left;
}

.social-links {
    list-style: none;
    float: right;
}

.footer-nav li,
.social-links li {
    display: inline-block;
    margin-right: 20px;
}

.footer-nav li:last-child,
.social-links li:last-child {
    margin-right: 0;
}

.footer-nav li a:link,
.footer-nav li a:visited,
.social-links li a:link,
.social-links li a:visited {
    text-decoration: none;
    border: 0;
    color: #888;
    -webkit-transition: color 0.2s;
    transition: color 0.2s;
}

.footer-nav li a:hover,
.footer-nav li a:active {
    color: #ddd;
}

.social-links li a:link,
.social-links li a:visited {
    font-size: 160%;
}

.ion-social-facebook,
.ion-social-twitter,
.ion-social-googleplus,
.ion-social-instagram {
    -webkit-transition: color 0.2s;
    transition: color 0.2s;
}

.ion-logo-facebook:hover {
    color: #1b59dd;
}

.ion-logo-twitter:hover {
    color: #00aced;
}

.ion-logo-pinterest:hover {
    color: #d82812;
}

.ion-logo-xbox:hover {
    color: #3ec138;
}


footer p {
    color: #888;
    text-align: center;
    margin-top: 20px;
}
