/* ============================================================================ *
        Structural Styles
    ---------------------------------------------------------------------------
        These are the styles which build the main site layout
        (headers, footers, body, etc.).

        If you are attempting to add styling for any elements placed inside of a 
        Wordpress Editor, use 'editor-content.css' stylesheet.
*/

body {
    background: #fff;
    color: #000000;
    font-size: 24px;
    font-family: 'EB Garamond', serif;
    font-weight: 400;
}

a {
    color: #003f79;
}


/* ======================================== *
        Headers
 * ======================================== */
h1,
h1#page-title,
.editor-content h1 {
    color: #003f79;
    font-size: 32px;
    font-weight: 600;
    line-height: 1.1em;
    margin-bottom: 15px;
}

h2,
.tmf-post > h2,
.editor-content h2 {
    color: #003f79;
    font-size: 30px;
    font-weight: 600;
    line-height: 1.2em;
    margin-bottom: 15px;
}

h2 a,
.tmf-post > h2 a,
.editor-content h2 a {
    color: #003f79;
}

h3,
.tmf-post > h3, 
.editor-content h3 {
    color: #44739d;
    font-size: 28px;
    font-weight: 600;
    line-height: 1.1em;
    margin-bottom: 15px;
}

h3 a,
.tmf-post > h3 a, 
.editor-content h3 a {
    color: #44739d;
}

h4,
.tmf-post > h4, 
.editor-content h4 {
    color: #44739d;
    font-size: 28px;
    font-weight: 600;
    line-height: 1.2em;
}

h4 a,
.tmf-post > h4 a, 
.editor-content h4 a {
    color: #44739d;
    text-decoration: none;
}

h4 a:hover,
.tmf-post > h4 a:hover, 
.editor-content h4 a:hover {
    text-decoration: underline;
}


/* ======================================== *
        Header Section
 * ======================================== */
#header-wrapper {}

#header-container {
    max-width: 1250px;
}

#header{
    padding: 30px 0;
}

#header a {
    color: #000000;
    text-decoration: none;
}

#header a:hover {
    text-decoration: underline;
}

#header .logo {
    max-width: 538px;
    width: 100%;
}

#header-cell-1,
#header-cell-2 {
    vertical-align: middle;
}

#header-cell-2 {
    color: #000000;
    font-size: 34px;
    font-weight: 500;
    line-height: 40px;
    text-align: right;
}

#header-cell-2 .phone-1::before {
    background: rgba(0, 0, 0, 0) url(../images/icon_sprite_3x.png) repeat scroll 0px 0px;
    background-size: 518px;
    content: "";
    display: inline-block;
    height: 28px;
    vertical-align: middle;
    width: 22px;
}

#header-cell-2 .email::before {
    background: rgba(0, 0, 0, 0) url(../images/icon_sprite_3x.png) repeat scroll -24px 0px;
    background-size: 518px;
    content: "";
    display: inline-block;
    height: 17px;
    vertical-align: middle;
    width: 30px;
}

@media screen and (max-width: 950px) {
    #header-cell-2 {
        font-size: 28px;
        line-height: 34px;
    }
}

@media screen and (max-width: 850px) {
    #header-cell-1,
    #header-cell-2 {
        text-align: center;
    }

    #header-cell-2 {
        padding-top: 15px;
        font-size: 34px;
        line-height: 40px;
    }
}

@media screen and (max-width: 470px) {
    #header-cell-2 {
        font-size: 23px;
        line-height: 30px;
    }
}

/* ======================================== *
        Primary Navigation Section
 * ======================================== */
#primary-nav-wrapper {
    background-color: #44739d;
    background-image: url(../ie-gradient.php?from=44739d&to=365b7c);
    background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#44739d), to(#365b7c));
    background-image: -webkit-linear-gradient(#44739d, #365b7c);
    background-image: -moz-linear-gradient(#44739d, #365b7c);
    background-image: -ms-linear-gradient(#44739d, #365b7c);
    background-image: -o-linear-gradient(#44739d, #365b7c);
    background-image: linear-gradient(#44739d, #365b7c);
}

#primary-nav-container {}
#primary-nav {}

#primary-nav .menu {}
#primary-nav .menu > .menu-item {}
#primary-nav .menu > .menu-item.first {}
#primary-nav .menu > .menu-item.last {}
#primary-nav .menu > .menu-item > a {
    color: #ffffff;
    font-size: 21px;
    padding: 20px 10px;
    font-weight: 400;
    text-transform: uppercase;
}

#primary-nav .menu > .menu-item.current-menu-item,
#primary-nav .menu > .menu-item:hover {
    background-color: #003f79;
    background-image: url(../ie-gradient.php?from=003f79&to=00305d);
    background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#003f79), to(#00305d));
    background-image: -webkit-linear-gradient(#003f79, #00305d);
    background-image: -moz-linear-gradient(#003f79, #00305d);
    background-image: -ms-linear-gradient(#003f79, #00305d);
    background-image: -o-linear-gradient(#003f79, #00305d);
    background-image: linear-gradient(#003f79, #00305d);
}

#primary-nav .menu > .menu-item:hover > a {}

#primary-nav .menu .sub-menu {
    background-color: #00305d;
}

#primary-nav .menu .sub-menu .menu-item > a {
    color: #ffffff;
    font-size: 20px;
    font-weight: 400;
    padding: 10px 15px;
}

#primary-nav .menu .sub-menu .menu-item:hover > a {
    background-color: #003f79;
}

#primary-nav .menu-bar {}

/* White Icon */
#primary-nav .menu-bar:before {
    background-position: -558px 0;
}

html.mobile-nav #primary-nav .menu {}
html.mobile-nav #primary-nav .menu > .menu-item {}
html.mobile-nav #primary-nav .menu > .menu-item > a{}

@media screen and (max-width: 1060px) {
    #primary-nav .menu > .menu-item > a {
        font-size: 19px;
        padding: 20px 10px;
    }
}

@media screen and (max-width: 980px) {
    #primary-nav .menu > .menu-item > a {
        font-size: 17px;
        padding: 20px 10px;
    }
}

/* ======================================== *
    Mobile Menu
 * ======================================== */
#mobile-nav-wrapper {
    font-family: 'EB Garamond', serif;
}

.hamburger-container {
    max-width: none;
}

#mobile-nav a {
    color: #ffffff;
    font-size: 20px;
}

#mobile-nav .menu > .menu-item > a {
    color: #ffffff;
    font-size: 21px;
}

#mobile-nav .menu .menu-item.display > div > .sub-menu a {
    font-size: 20px;
}

#mobile-nav .menu .menu-item.display {
    background: #003f79;
}

#mobile-nav .top-part .mob-cancel-button {
    color: #ffffff;
}

#mobile-nav .menu .menu-item.display a, 
#mobile-nav .menu .menu-item.display > .mob-expand-submenu:before {
    color: #ffffff;
}

#mobile-nav .menu .sub-menu .menu-item {
    padding: 5px 30px;
}

#mobile-nav .menu > .current-menu-item,
#mobile-nav .menu > .menu-item:hover {
    background: #003f79;
}


/* ======================================== *
        Secondary Navigation Section
 * ======================================== */
#secondary-nav .inner {}
#secondary-nav .menu {}
#secondary-nav .menu > .menu-item {}
#secondary-nav .menu > .menu-item.first {}
#secondary-nav .menu > .menu-item.last {}
#secondary-nav .menu > .menu-item > a {}
#secondary-nav .menu > .menu-item.first a {}
#secondary-nav .menu > .menu-item:hover {}
#secondary-nav .menu > .menu-item:hover a {}
#secondary-nav .menu:hover > .menu-item.current-menu-item > a {}


/* ======================================== *
    Billboard Section
 * ======================================== */
.home-billboard-image {
    background: url('../images/home_billboard_1x.jpg') no-repeat center center / cover;
    width: 100%;
    padding-top: 45px;
}

#billboard-wrapper {}

#billboard-container {
    max-width: 1150px;
}

#billboard-cell-1,
#billboard-cell-2{
    vertical-align: middle;
}

#billboard-cell-1{
    width: 333px;
}

#billboard-cell-2{
    width: auto;
}

#billboard .tmf-button {
    display: inline-block;
    max-width: 320px;
    width: 100%;
    box-sizing: border-box;
    padding: 7px 15px;
    margin-top: 15px;
}

@media screen and (max-width: 1050px) {
    .home-billboard-image {
        background: url('../images/home_billboard_2x.jpg') no-repeat center center / cover;
    }
}

@media screen and (max-width: 850px) {
    .home-billboard-image {
        background: url('../images/home_billboard_3x.jpg') no-repeat center center / cover;
    }

    #billboard-cell-1,
    #billboard-cell-2{
        width: 100%;
    }
}

/* ======================================== *
        Home Practice Areas Section
 * ======================================== */
#home-practice-areas-wrapper{}

#home-practice-areas-container{
    max-width: 100%;
}

#home-practice-areas{
    text-align: center;
    padding: 70px 0 15px;
}

@media screen and (max-width: 850px) {
    #home-practice-areas{
        padding: 35px 0 15px;
    }
}

/* ======================================== *
        Body Section
 * ======================================== */
#body-wrapper {}

#body-container {
    max-width: 1250px;
}

#body {
    padding: 45px 0;
}

@media screen and (max-width: 850px) {
    #body {
        padding: 25px 0;
    }
}


/* ======================================== *
        Associations Section
 * ======================================== */
#associations-wrapper {
    text-align: center;
}

#associations {}

#associations img {
    vertical-align: middle;
    padding: 0 20px 40px;
}

@media screen and (max-width: 670px) {
    #associations img {
        padding: 0;
        display: block;
        margin-left: auto;
        margin-right: auto;
        margin-bottom: 40px;
    }
}


/* ======================================== *
        Home Blog Section
 * ======================================== */
.footer-blog-bg {
    background: url(../images/home_footer_bg_1x.jpg) no-repeat center center / cover;
    width: 100%;
}

#home-blog-wrapper{
    background: rgba(0,63,121,0.55);
    padding: 25px 0 40px;
}

#home-blog-container{
    max-width: 1250px;
}

#home-blog h3.tmf-module-title{
    color: #ffffff;
    font-size: 32px;
    text-align: center;
    margin-bottom: 25px;
}

#home-blog .inner{
    padding: 0;
}

#home-blog .tmf-button {
    display: inline-block;
    margin-top: 35px;
    max-width: 320px;
    width: 100%;
    box-sizing: border-box;
    padding: 15px 15px;
}


/* ======================================== *
        Footer Section
 * ======================================== */
#footer-wrapper {    
    background: url(../images/int_footer_bg_1x.jpg) no-repeat center center / cover;
    border-top: 10px solid #003f79;
}

.home #footer-wrapper {    
    background: inherit;
    border-top: none;
}

#footer-container {
    max-width: 915px;
    padding: 30px 0 50px;
}

.home #footer-container {
    max-width: 850px;
}

#footer {}

#footer h3.tmf-module-title {
    color: #003f79;
    font-size: 32px;
    font-weight: 600;
    text-align: center;
    margin-bottom: 20px;
}

#footer .gform_wrapper.tmf-form_wrapper ul li.gfield {
    margin-top: 0;
    padding-top: 0;
}

#footer .gform_wrapper.tmf-form_wrapper .gform_footer {
    padding: 0;
    margin: 0;
    clear: both;
    width: 100%;
}

#footer input[type="text"], 
#footer textarea {
    border: none;
}

#footer textarea {
    height: 115px !important;
}

#footer .gform_wrapper.tmf-form_wrapper .gform_footer input.button,
#footer .gform_wrapper.tmf-form_wrapper input[type=submit] {
    font-family: 'EB Garamond', serif;
    font-size: 22px;
    border: none;
    padding: 15px 15px 18px;
    width: 100%;
    margin-right: 0;
}

/*.home #footer-cell-1{
    width: 380px;
}

#footer-cell-2{
    width: auto;
}*/

@media screen and (max-width: 850px) {
    .home #footer-cell-1,
    #footer-cell-2{
        display: block;
        width: 100%;
    }

    #footer-cell-2{
        padding-top: 25px;
    }
}


/* ======================================== *
        Copyright Section
 * ======================================== */
#copyright-wrapper {
    border-top: 35px solid #003f79;
}

#copyright {
    text-align: center;
    color: #45484d;
    font-size: 18px;
    padding: 25px 0 50px;
}

#copyright a {
    color: #45484d;
}



/* ======================================== *
        Modules
 * ======================================== */
 .tmf-multi-module-area .tmf-module {
    margin-bottom: 50px;
}

.tmf-multi-module-area .tmf-module:last-child {
    margin-bottom: 0;
}

.tmf-multi-module-area .tmf-module h3.tmf-module-title {
    color: #003f79;
    font-size: 32px;
    font-weight: 600;
    margin-bottom: 15px;
}

.tmf-multi-module-area .tmf-module-22 h3.tmf-module-title {
    color: #fff;
    font-size: 32px;
}

.tmf-multi-module-area .tmf-module-22{
    background: #003f79;
    padding: 15px 15px;
}

.tmf-multi-module-area .tmf-module .tmf-button{
    box-sizing: border-box;
    display: inline-block;
    margin-top: 15px;
    width: 100%;
}

#body-cell-1 .sidebar-image {
    max-width: 318px;
    width: 100%;
    float: right;
    margin-bottom: 0;
    margin-left: 15px;
}

#body-cell-2 .sidebar-image {
    margin-bottom: 40px;
    max-width: 366px;
    width: 100%;
}

@media screen and (max-width: 600px) {
    #body-cell-1 .sidebar-image {
        float: none;
        margin-bottom: 40px;
        margin-left: 0;
    }
}


/* ======================================== *
        Inputs & Buttons
 * ======================================== */
input[type="text"], 
textarea {
    background: #fff none repeat scroll 0 0;
    border: 1px solid #cccccc;
    border-radius: 0;
    box-shadow: none;
    color: #000000;
    font-size: 18px !important;
    margin-bottom: 15px !important;
    max-width: 100%;
    padding: 12px 10px !important;
}

textarea {
    height: 100px !important;
}

input[type=text]:focus,
textarea:focus {
    border: 1px solid #cccccc;
}

.gform_wrapper.tmf-form_wrapper ul{
    padding-left: 0;
}

.tmf-button,
.page-numbers,
input[type=submit] {
    background-color: #44739d;
    background-image: url(../ie-gradient.php?from=44739d&to=3a6286);
    background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#44739d), to(#3a6286));
    background-image: -webkit-linear-gradient(#44739d, #3a6286);
    background-image: -moz-linear-gradient(#44739d, #3a6286);
    background-image: -ms-linear-gradient(#44739d, #3a6286);
    background-image: -o-linear-gradient(#44739d, #3a6286);
    background-image: linear-gradient(#44739d, #3a6286);
    border: none;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    border-radius: 10px;
    cursor: pointer;
    text-decoration: none !important;
    text-align: center;
    color: #fff !important;
    font-family: 'EB Garamond', serif;
    font-size: 22px;
    font-weight: 400;
    padding: 15px;
}

.tmf-button:hover,
.page-numbers:hover,
input[type=submit]:hover {
    background-color: #3a6286;
    background-image: url(../ie-gradient.php?from=3a6286&to=44739d);
    background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#3a6286), to(#44739d));
    background-image: -webkit-linear-gradient(#3a6286, #44739d);
    background-image: -moz-linear-gradient(#3a6286, #44739d);
    background-image: -ms-linear-gradient(#3a6286, #44739d);
    background-image: -o-linear-gradient(#3a6286, #44739d);
    background-image: linear-gradient(#3a6286, #44739d);
    text-decoration: none;
}

.tmf-button:active,
.page-numbers:active,
input[type=submit]:active {
    background-color: #44739d;
    background-image: url(../ie-gradient.php?from=44739d&to=3a6286);
    background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#44739d), to(#3a6286));
    background-image: -webkit-linear-gradient(#44739d, #3a6286);
    background-image: -moz-linear-gradient(#44739d, #3a6286);
    background-image: -ms-linear-gradient(#44739d, #3a6286);
    background-image: -o-linear-gradient(#44739d, #3a6286);
    background-image: linear-gradient(#44739d, #3a6286);
    text-decoration: none;
}

.tmf-button.large {
    font-size: 1.1em;
    padding: 7px 25px;
}

.tmf-button.medium {
    font-size: .95em;
    padding: 5px 25px;
}

.tmf-button.small {
    font-size: .85em;
    padding: 3px 15px;
}

.tmf-button.tiny {
    font-size: .75em;
    padding: 2px 7px;
}

.page-numbers.current {
    background: none;
    border: 1px solid #ddd;
    color: #333;
}

.vcard .value {
    background: rgba(0, 0, 0, 0) url(../images/icon_sprite_3x.png) repeat scroll -115px 4px;
    background-size: 518px;
    height: 23px;
    width: 27px;
}


/* ======================================== *
        Responsive Layout
 * ======================================== */
@media screen and (max-width: 700px) {
    #breadcrumbs {
        display: none;
    }
}

@media screen and (max-width: 500px) {
    #secondary-nav-wrapper {
        display: none;
    }
}

@media screen and (max-width: 450px) {
    .row > div > .inner {
        padding-left: 12px;
        padding-right: 12px;
    }
}



/* ======================================== *
        Miscellaneous
 * ======================================== */
aside {
    color: #413d38;
    font-family: 'EB Garamond', serif;
    font-size: 28px;
    font-style: italic;
    font-weight: 400;
    line-height: 34px; 
}

aside.left {
    border-top: 6px solid #44739d; 
    border-bottom: 6px solid #44739d; 
}

aside.right {
    border-top: 6px solid #44739d; 
    border-bottom: 6px solid #44739d; 
}

blockquote {
    color: #003f79;
    font-family: 'EB Garamond', serif;
    font-size: 28px;
    font-style: italic;
    font-weight: 600;
    line-height: 34px;
    position: relative;
    margin: 0;
    padding: 0 0 0 40px;
    z-index: 9;
}

blockquote:after {
    content: "“";
    display: inline-block;
    font-family: Georgia;
    font-size: 400px;
    position: absolute;
    left: -15px;
    color: #c0c3c5;
    top: 140px;
    z-index: -9;
    font-style: normal;
}

#breadcrumbs {
  font-size: 17px;
  margin: 0 0 15px;
  color: #484848;
}

#breadcrumbs a {
  color: #484848;
  text-decoration: underline;
}

#breadcrumbs a:hover {
  text-decoration: none;
}

.editor-content img {
    height: auto;
    max-width: 100%;
}

.mobile {
    display: none;
}

@media screen and (max-width: 500px) {
    .not-mobile {
        display: none;
    }

    .mobile {
        display: inherit;
    }
}


/* ======================================== *
        Gravity Form
 * ======================================== */
.gform_wrapper.tmf-form_wrapper {
    margin: 0 !important;
}

.gform_wrapper.tmf-form_wrapper .field_sublabel_hidden_label .ginput_complex.ginput_container input[type=text],
.gform_wrapper.tmf-form_wrapper input[type=text],
.gform_wrapper.tmf-form_wrapper textarea {
    margin: 0;
}

.gform_wrapper.tmf-form_wrapper .top_label .gfield_label {
    margin-bottom: 0;
}

.gform_wrapper.tmf-form_wrapper ul.gform_fields li.gfield {
    padding-right: 0 !important;
}

.gform_wrapper.tmf-form_wrapper .gform_footer {
    padding: 0 0 15px;
    margin: 16px 0 0;
    clear: both;
    width: 100%;
}

.gform_wrapper.tmf-form_wrapper .gform_footer input.button,
.gform_wrapper.tmf-form_wrapper input[type=submit] {
    font-family: 'EB Garamond', serif;
    font-size: 22px;
    border: none;
    padding: 15px 15px 18px;
    width: 100%;
    margin-right: 0;
}