@font-face {
    font-family: SourceSansPro;
    src: url("/fonts/SourceSansPro-Light.WOFF");
    font-weight: 300;
    font-style: normal;
}

@font-face {
    font-family: SourceSansPro;
    src: url("/fonts/SourceSansPro-Regular.WOFF");
    font-weight: 400;
    font-style: normal;
}

@font-face {
    font-family: SourceSansPro;
    src: url("/fonts/SourceSansPro-SemiBold.WOFF");
    font-weight: 600;
    font-style: normal;
}

@font-face {
    font-family: Alegreya;
    src: url("/fonts/Alegreya-Regular.WOFF");
    font-weight: 400;
    font-style: normal;
}

@font-face {
    font-family: Alegreya-it;
    src: url("/fonts/Alegreya-Italic.woff");
    font-weight: 400;
    font-style: italic;
}

@font-face {
    font-family: AlegreyaSC;
    src: url("/fonts/AlegreyaSC-Regular.WOFF");
    font-weight: 400;
    font-style: normal;
}

[class^="tra-"],
[class*=" tra-"] {
    font-family: 'tra-icomoon';
    speak: none;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    /* Better Font Rendering =========== */
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}


/* General Styles */

html,
body {
    margin: 0;
    padding: 0;
}

body {
    background: #fff;
    font-family: SourceSansPro, sans-serif;
}

.container {
    width: 970px;
    margin: auto;
}


/* Accessiblity Needs */

a.logo:focus,
a.tel:focus {
    outline: -webkit-focus-ring-color auto 5px;
}

#content a:focus,
#sidebar a:focus {
    text-decoration: underline;
    outline: -webkit-focus-ring-color auto 5px;
}


/* Header Area */

#greenbar {
    background-image: linear-gradient(90deg, #339933 0%, #5EC433 49%, #339933 100%);
    width: 100%;
    height: 5px;
    display: block;
}

.topbarcontainer {
    width: 100%;
    height: 72px;
    position: relative;
    background-color: #565656;
}

ul {
    padding: 0;
    margin: 0;
}

.topbarcontainer ul li {
    list-style-type: none;
    display: inline-block;
}

.houseicon {
    background-image: url(/images/icons/iconhouse.png);
    display: block;
    height: 16px;
    width: 17px;
    background-size: cover;
    transition: all 0.5s;
}

.houseicon:hover {
    background-image: url(/images/icons/iconhousegreen.png);
}

.nav-bar {
    float: right;
    margin-top: 15px;
    margin-right: 70px;
    position: relative;
    z-index: 40;
}

.nav-bar ul li {
    text-transform: uppercase;
    margin-left: 15px;
    margin-right: 15px;
    margin-top: 10px;
}

.nav-bar ul li.request-quote {
    background: #7cb342;
    padding: 8px;
    margin-top: 0px;
    text-decoration: none !important;
    transition: all ease 0.3s;
}

.nav-bar ul li a {
    color: #fff;
    text-decoration: none;
    font-size: 15px;
    font-weight: 300;
    transition: all 0.5s;
}

.nav-bar ul li a:hover {
    color: #58B737;
}

.nav-bar ul li.request-quote a:hover {
    color: #ffffff !important;
    text-decoration: none !important;
}
.nav-bar ul li.request-quote:hover {
    background-color: #DE8230;
}
.logo {
    padding-top: 20px;
    position: relative;
    z-index: 10;
    width: 150px;
}

.logo img {
    height: 168px;
    width: auto;
}

#socialtop {
    float: right;
    margin-top: 25px;
    position: relative;
    z-index: 40;
}

#socialtop ul li {
    margin-left: 10px;
    margin-right: 10px;
}

#twitter {
    background-image: url(/images/icons/icontwitter.png);
    display: block;
    height: 14px;
    width: 18px;
    background-size: cover;
    transition: all 0.5s;
}

#twitter:hover {
    background-image: url(/images/icons/icontwitterorange.png);
}

#facebook {
    background-image: url(/images/icons/iconfacebook.png);
    display: block;
    height: 17px;
    width: 9px;
    background-size: cover;
    transition: all 0.5s;
}

#facebook:hover {
    background-image: url(/images/icons/iconfacebookorange.png);
}

#googleplus {
    background-image: url(/images/icons/icongoogleplus.png);
    display: block;
    height: 17px;
    width: 17px;
    background-size: cover;
    transition: all 0.5s;
}

#googleplus:hover {
    background-image: url(/images/icons/icongoogleplusorange.png);
}

#linkedin {
    background-image: url(/images/icons/linkedinicon.png);
    display: block;
    height: 19px;
    width: 19px;
    background-size: cover;
    transition: all 0.5s;
}

#linkedin:hover {
    background-image: url(/images/icons/linkediniconorange.png);
}

#switchoff {
    position: absolute;
    right: 90px;
    top: 20px;
    background-image: url(/images/icons/greenhamburger.png);
    height: 25px;
    width: 30px;
    background-size: 100% 100%;
    background-repeat: no-repeat;
    display: none;
}


/* banner and main area */

h1 {
    font-family: AlegreyaSC;
    font-size: 2.500rem;
    color: #58B737;
    letter-spacing: 0;
    line-height: 47px;
    font-weight: 400;
    margin-top: 35px;
    margin-bottom: 10px;
}

h2 {
    font-family: Alegreya-it;
    font-style: italic;
    font-size: 2.250rem;
    color: #6D6E71;
    letter-spacing: 0;
    font-weight: 400;
    margin-top: 20px;
    margin-bottom: 15px;
}

h3 {
    font-family: SourceSansPro;
    font-weight: 600;
    font-size: 1.375rem;
    color: #424242;
    letter-spacing: 0;
    text-transform: uppercase;
    margin-top: 25px;
    margin-bottom: 5px;
}

p {
    font-family: SourceSansPro;
    font-size: 1.063rem;
    font-weight: 400;
    color: #565656;
    letter-spacing: 0;
    line-height: 25px;
    margin-top: 10px;
    margin-bottom: 15px;
}

#maincont p a,
#maincont ul li a {
    color: #DE8230;
    text-decoration: none;
    transition: all 0.5s;
}

ul li a:hover,
p a:hover {
    color: #58B737 !important;
}

#maincont img {
    margin-top: 20px;
    margin-bottom: 20px;
}

.frontpagebanner {
    display: block;
    width: 100%;
    min-height: 620px;
    background-image: url(/images/homepagebanner.jpg);
    background-size: cover;
    background-repeat: no-repeat;
    margin-bottom: 70px;
}

.innerpagebanner {
    display: block;
    width: 100%;
    min-height: 237px;
    background-image: url(/images/insuranceservicesbanner.jpg);
    background-size: cover;
    background-repeat: no-repeat;
    margin-bottom: 70px;
    background-position: center;
}

#tagline {
    display: block;
    height: 130px;
    width: auto;
    margin-left: auto;
    margin-right: auto;
    padding-top: 180px;
}

p a.blkbtn {
    margin-top: 15px;
    margin-bottom: 30px;
    display: inline-block;
}

.blkbtn {
    background-color: #565656;
    transition: all 0.5s;
    color: #fff !important;
    text-decoration: none;
    padding: 13px 42px 13px 42px;
    position: relative;
}

.blkbtn:hover {
    background-color: #58B737;
    color: #fff !important;
}

iframe {
    width: 695px;
    height: 395px;
    margin: auto;
    display: block;
    margin-top: 60px;
    margin-bottom: 80px;
}

#maincont ul {
    margin-left: 50px;
    color: #565656;
    margin-top: 20px;
    margin-bottom: 40px;
}

#maincont ul li {
    font-size: 1.063rem;
    line-height: 25px;
    margin-bottom: 4px;
}


/* insurance services page */

#insurancecontent {
    float: right;
    margin-left: 50px;
}


/* contact us page styling */

#address p {
    margin-top: 0;
    margin-bottom: 0;
}

#address {
    margin-top: 35px;
    margin-bottom: 35px;
}

#contactinfo p {
    margin-top: 0;
    margin-bottom: 0;
}

#contactinfo span {
    font-weight: 600;
}

#contactinfo {
    margin-bottom: 50px;
}


/* footer styling */

.footerconstrain {
    width: 1060px;
    margin: auto;
    font-size: 14px;
    margin-top: 70px;
}

.footercontain {
    background-image: url(/images/footertexture.jpg);
    height: 109px;
    width: 100%;
    background-size: 100% 100%;
    background-repeat: repeat-x;
    color: #B7B7B7;
}

.footercontain p {
    color: #B7B7B7;
}

.footercontain a {
    color: #B7B7B7;
    transition: all 0.5s;
}

.footercontain a:hover {
    color: #58B737;
}

.footercontain .footerconstrain ul {
    list-style-type: none;
    padding-top: 31px;
    float: left;
}

.footercontain .footerconstrain ul li {
    margin-bottom: 5px;
}

.footerright {
    float: right;
    padding-top: 20px;
    font-size: 16px;
}

#footerone {
    margin-right: 10px;
}

#footertwo {
    margin-left: 10px;
}


/* Request a Quote */

.g-recaptcha,
.g-recaptcha iframe {
    width: 304px;
    height: 78px;
    margin-top: 0px;
}

#response {
    display: none;
    color: #ffffff;
    padding: 10px;
}

#response.error {
    background: #d25050;
}

#response.success {
    background: #7cb342;
}

.form-group {
    margin: 3px 0px 5px;
}

.form-title {
    display: block;
    margin: 15px 0px 7px;
    font-weight: bold;
    color: #767373;
}

input[type="text"] {
    width: 350px;
    font-size: 15px;
    padding: 5px;
    border: 1px solid #9c9c9c;
    color: #767373;
}

.required-fields {
    float: right;
    margin-top: -40px;
    color: #989898;
}

hr {
    background: #aeaeae;
    border: 0px;
    height: 1px;
    margin: -10px 0px 0px;
    padding: 0px;
}

.form-submit {
    width: 170px;
    background: #7cb342;
    font-size: 15px;
    color: #ffffff;
    border: 0px;
    padding: 12px;
    transition: all ease 0.3s;
}

.form-submit:hover {
    cursor: pointer;
    background-color: #565656;
}

div.select_label {
    width: 200px;
    background: #ffffff;
    border: 1px solid #9c9c9c;
    padding: 0px;
    margin: 0px;
}

select {
    width: 200px;
    height: 30px;
    border: none;
    background: transparent;
    font-size: 15px;
}

div.select_label.select_date {
    width: 115px;
    display: inline-block;
    margin-right: 3px;
}

div.select_label.select_date select {
    width: 115px;
}

input[type="radio"] {
    border: 0px;
    border-radius: 0px;
    display: none;
}

span.radio_label {
    width: 14px;
    height: 14px;
    display: inline-block;
    background: #ffffff;
    border: 1px solid #9c9c9c;
    vertical-align: middle;
    margin-top: -5px;
}

input[type="radio"]:checked~span.radio_label {
    background: #7cb342;
}

input[type="radio"]:checked~span.radio_label:before {
    content: "";
    position: absolute;
    width: 10px;
    height: 10px;
    border: 2px solid #ffffff;
}

@media only screen and (max-width: 1200px) {
    .footerconstrain {
        width: 90%;
    }
    .container {
        width: 90%;
    }
    #maincont img {
        max-width: 85%;
    }
}
@media only screen and (max-width: 850px) {
    #tagline {
        height: 95px;
    }
    .frontpagebanner {
        min-height: 450px;
    }
    iframe {
        width: 90%;
        height: 340px;
        margin: auto;
        display: block;
        margin-top: 30px;
        margin-bottom: 40px;
    }
    #insurancecontent {
        float: none;
        margin-left: 0;
    }
      /* Styling MMENU stuff*/
    #topmenu {
        display: none !important;
    }
    #mmenu ul li a {
        color: #565656;
        font-family: SourceSansPro;
        text-decoration: none;
        font-size: 15px;
        font-weight: 300;
        transition: all 0.5s;
        text-transform: uppercase;
    }
    .houseicon {
        background-image: url(/images/icons/greyiconhouse.png);
        height: 20px;
        width: 20px;
        background-size: 100% 100%;
        display: block;
        padding: 0 !important;
        margin: 16px 30px 0px 30px !important;
    }
    #phonewrapper {
        margin-top: 64px;
    }
    .oneColFixCtrHdr #header {
        margin-bottom: 1rem;
    }
    .mainmenu li a:hover,
    .mainmenu li:hover {
        color: #00ad68 !important;
    }
    /* Styling MMENU stuff*/
    ul.MenuBarHorizontal li,
    #mmenu-main {
        width: 100%;
        border: none;
    }
    #logomobile {
        display: block;
        margin-left: auto;
        margin-right: auto;
        width: 115px;
        margin-top: 5px;
    }
    /* Added switchoff here and hid full sized menu */
    #switchoff {
        display: block;
    }

}

@media only screen and (max-width: 700px) {
    p a.blkbtn {
        margin-top: 5px;
        margin-bottom: 10px;
        display: inline-block;
    }
}

@media only screen and (max-width: 600px) {
    #tagline {
        height: 76px;
        padding-top: 100px;
    }
    .logo img {
        height: 130px;
        width: auto;
    }
}

@media only screen and (max-width: 550px) {
    /*  #mmenu{
    position: absolute;
    left:-345px;
  }*/
}

@media only screen and (max-width: 500px) {
    #tagline {
        height: 55px;
    }
    .frontpagebanner {
        min-height: 380px;
    }
    /*  #mmenu {
  position: absolute;
  left: -66%;
  }*/
}

@media only screen and (max-width: 450px) {
    #socialtop {
        margin-top: 25px;
        position: absolute;
        z-index: 40;
        right: 10px;
    }
    #switchoff {
        position: absolute;
        right: 60px;
    }
    .logo img {
        height: 85px;
        margin-top: 18px;
    }
    .footercontain .footerconstrain ul {
        list-style-type: none;
        padding-top: 31px;
        float: none;
        display: block;
        width: 200px;
        margin-left: auto;
        margin-right: auto;
        position: relative;
    }
    .footerright {
        float: none;
        position: relative;
        padding-top: 0;
        font-size: 16px;
        display: block;
        width: 200px;
        margin-left: auto;
        margin-right: auto;
    }
    .footercontain {
        height: 100%;
    }
    h1 {
        font-size: 2rem;
        line-height: 30px;
        margin-top: 10px;
    }
    h2 {
        font-size: 1.8rem;
    }
    h3 {
        font-size: 1.2rem;
        margin-top: 10px;
    }
    .nav-bar ul li a {
        font-size: 12px;
    }
    .mm-panels>.mm-panel {
        padding: 0 !important;
        width: 100%;
    }
}

@media only screen and (max-width: 400px) {
    .frontpagebanner {
        min-height: 280px;
    }
    #tagline {
        display: none;
    }
    .innerpagebanner {
        min-height:180px;
    }
}