/* css ***************************************************************/


/* basics **************************************************************/

body {
    font-family: "PT Serif", serif;
    font-optical-sizing: auto;
    color: #fff;
    font-weight: 300;
    font-style: normal;
    font-size: 23px;
    word-spacing: normal;
}

body hr {
    clear: both;
    margin: 2vw 0;
    color: #aaa;
    opacity: 1;
    border-top: 1px solid #ddd;
}

strong {
    font-weight: 900;
}

h1, h2, h3, h4, h5, h6 {
    font-family: "PT Sans", sans-serif;
    font-weight: 600;
    line-height: 1;
    margin-bottom: 1.1vw;
}

h1 {
    color: #DD0000;
}

h1 { font-size: 180%; }
h2 { font-size: 160%; }
h3 { font-size: 140%; }
h4 { font-size: 130%; }
h5 { font-size: 120%; }
h6 { font-size: 110%; }

blockquote {
    font-size: 129%;
    font-style: italic;
    line-height: 1.1;
    margin: 0 0 1vw;
    padding: 4px 0px 0px 1vw;
    border-left: 7px solid #ddd;
}

a,
.footer a:not(.btn),
.footer .btn-link {
    color: #DD0000;
    text-decoration: none;
}

.footer a:not(.btn),
.footer .btn-link {
    color: #DD0000;
}

a:not([class]) {
    text-decoration: none;
}

p, ul, ol {
    margin-bottom: 1.1vw;
}

body p.readmore a.btn {
    background: #dd0000;
    border: 2px solid #ffffff;
    border-radius: 0;
    color: #fff;
}

body p.readmore a.btn:hover {
    background: #fff;
    border: 2px solid #d00;
    border-radius: 0;
    color: #d00;
}


.wf_caption span {
    background: rgba(0,0,0,.1); /* #afc4bc; */
    border: 1px solid rgba(0,0,0,.2);
    font-size: 83%;
    font-style: italic;
    color: #09074a;
    padding: 3px 7px 7px;
    text-align: center;
    margin-bottom: 17px;
}



/* convert forms */



#cf_1.convertforms {
    margin: auto;
    padding: 23px;
}

#cf_2 {
    margin: auto;
}

body .convertforms .cf-content-wrap, 
body .convertforms .cf-form-wrap {
    padding: 0 0;
}



/* sp pagebuilder */

body .sppb-row-container {
  padding-left: 0;
  padding-right: 0;
}







/*structural ***********************************************************/

body:not(.has-sidebar-left) .site-grid .container-component {
    grid-column-start: main-start;
}

body:not(.has-sidebar-right) .site-grid .container-component {
    grid-column-end: main-end;
}

body .site-grid>[class^=container-],
body .site-grid>[class*=\ container-] {
    width: 100%;
}

body {
    background: none;
    background-size: 100% auto;
}

body .container-header {
    background: url(../images/antique-tools.jpg) top center;
    background-size: contain;
}

body.homepage .container-header {
    background: none;
}

body .container-header .container-topbar {
    background: url(../images/topbar-bg.png) repeat-x;
    background-position: 0 0;
}

body .container-header .container-topbar {
    display: flex;
    flex-direction: row;
    justify-content: space-around;
    max-width: 100%;
    padding: 0;
    margin: 0;
    box-shadow: none;
    transition: all 1s ease-in;
}

body .card {
  --card-spacer-y: 0;
  --card-spacer-x: 0;
    border: none;
}


/* scrolled ********************************************************************/

body.scrolled .container-header .container-topbar {
    -webkit-backdrop-filter: blur(7px);
    backdrop-filter: blur(7px);
    background-position: 0 -53px;
}

body.scrolled .container-header .container-topbar nav {
    margin: 11px 0;
}

body.scrolled .proudly-serving {
    margin: 0 0;
}




/* topbar **********************************************************************/

body .container-topbar > div {
    width: 40%;
}



/* logo */

body .container-topbar .logo {
    opacity: 1;
    margin: 0;
    padding: 11px;
    transition: all 1s ease-out;
    width: 20%;
    text-align: center;
}

#logoshrink {
    transition: all 1s ease-out;
}



/* proudly serving */

body .proudly-serving {
    margin: calc(77px - 1vw) 0;
    text-align: right;
    padding: 35px 2.3vw;
    transition: all 1s ease-out;
    font-style: italic;
    line-height: 1.2;
    font-size: 1vw;
}

body .proudly-serving .lawrence {
    font-style: normal;
    font-size: 1.8vw;
}

body .proudly-serving .seventy-eight{
    background: #DD0000;
    border: 2px solid #fff;
    padding: 1px 7px;
    margin-left: 7px;
    vertical-align: super;
}




/* top menu ***************************************************************/

body .container-header .metismenu > li > a:hover::after, /* get rid of stupid white underline - be sure to change .container-header to correct position */
body .container-header .metismenu > li > button:hover::before, 
body .container-header .metismenu > li.active > a::after, 
body .container-header .metismenu > li.active > button::before {
    background: none;
}

body .mod-menu > li:hover > .mm-collapse { /* force menu drop down on hover */
    display: block !important;
}

/* hide arrow to indicate dropdowns */
body .mod-menu .mm-toggler {
    display: none !important;
}

.container-header .mod-menu > li + li {
    margin: 0;
}

.menu-top {
    transition: all 1s ease-in;
    margin: 0;
    padding: 0;
}

body .container-header .container-topbar nav {
    margin: 67px 0;
    padding: 0px;
    transition: all 1s ease-out;
}

body .metismenu.mod-menu .metismenu-item {
    padding: 0;
    margin: 0;
    transition: all .2s ease-in;
}

body .metismenu.mod-menu .metismenu-item > a {
    font-family: "PT Sans", sans-serif;
    font-size: 1.3vw;
    line-height: 1;
    font-weight: 600;
    letter-spacing: .17rem;
    color: #fff;
    text-transform: uppercase;
    text-decoration: none;
    padding: calc(53px - 1vw) 1.3vw calc(53px - 1vw);
    margin: 0;
    background: none;
    width: 100%;
    transition: all .2s ease-in;
}


body .mod-menu .metismenu-item.active > a,
body .mod-menu .metismenu-item:hover > a {
    color: #f00;
}




/* dropdowns */

body .metismenu.mod-menu .mm-collapse {
    background: rgba(0,0,0,.67);
}

body .metismenu.mod-menu .mm-collapse .metismenu-item {
    padding: 0;
    margin: 0;
}

body .metismenu.mod-menu .metismenu-item > ul.mm-collapse {
    right: 0;
    margin-right: 0;
}

body .metismenu.mod-menu .mm-collapse .metismenu-item {
    color: #000;
    padding: 11px 5px 3px;
}

body .metismenu.mod-menu .mm-collapse .metismenu-item a {
    justify-content: right;
}

body .metismenu.mod-menu .mm-collapse .metismenu-item.active,
body .metismenu.mod-menu .mm-collapse .metismenu-item:hover {
    color: #f00;
}

body .metismenu.mod-menu .mm-collapse .metismenu-item.active a,
body .metismenu.mod-menu .mm-collapse .metismenu-item:hover a {
    text-decoration: none;
}



/* search icon */

.metismenu.mod-menu .metismenu-item.level-1 > a.search {
  box-shadow: none;
  height: 1em;
  width: 1em;
  color: rgba(0,0,0,0) !important;
  background: transparent url("../images/search.png") no-repeat;
  background-size: cover;
  padding: 0;
  margin: 0 0 0 11px;
  transition: all .5s ease-in-out;
  transform: rotate(0deg);
}

.metismenu.mod-menu .metismenu-item.level-1.active > a.search {
    background-image: url("../images/search-ro.png");
	box-shadow: none;
    border: none;
	color: rgba(0,0,0,0) !important;
	transform: rotate(0deg);
}

.metismenu.mod-menu .metismenu-item.level-1:hover > a.search,
.metismenu.mod-menu .metismenu-item.level-1.active:hover > a.search {
    background-image: url("../images/search-ro.png");
    border: none;
	box-shadow: none;
	color: rgba(0,0,0,0) !important;
	transform: rotate(90deg);
}






/* banners ***********************************************************/

body .homepage-banner {
    display: inherit;
    z-index: 1;
}
    
body .homepage-banner-mobile {
    display: none;
    z-index: 1;
}

body .container-banner {
    margin: -231px 0 0;
    background: #06050a;
}


/* before and after */

body .before-after {
    padding-bottom: 3vw;
}

body .before-after h2 {
    color: #fff;
}

body .before-after p {
    font-style: italic;
}

body .before-after .sig {
    font-family: "Fuggles", cursive;
    font-size: 167%;
    font-style: normal;
}

body .before-after .owner {
    font-family: "PT Sans", sans-serif;
    font-size: 83%;
    text-transform: uppercase;
    font-style: normal;
    color: #DD0000;
    letter-spacing: .2em;
    padding-left: 11px;
}









/* content area ********************************************************/

body .site-grid {
    background: #06050a;
}

body .site-grid main {
    padding: 2vw;
}

body.homepage .site-grid main {
    background: none;
    padding: 0;
}

.container-component > *, 
.container-sidebar-left > *, 
.container-sidebar-right > * {

}























/* footer ***************************************************************/

.footer {
  color: #fff;
  background: #351112;
  margin-top: 1em;
}

.footer {
    margin-top: 0;
    width: 100%;
}

.footer .grid-child {
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
    padding: 0;
    margin: 0;
    max-width: 100%;
}





/* our success */

.footer .our-success {
    font-size: 200%;
    font-weight: 600;
    line-height: 1;
    font-style: italic;
    text-align: center;
    padding: 5vw 1vw;
    border-top: 1px solid rgba(255,255,255,.5);
    border-bottom: 1px solid rgba(255,255,255,.5);
}



/* testimonials */

.footer .testimonials {
    background: #06050a;
}

.footer .testimonials h2 {
    font-family: "PT Serif", serif;
    font-weight: 400;
    text-align: center;
}

.footer .testimonials p {
    font-size: 167%;
    text-align: center;
    font-style: italic;
}

.footer .testimonials .owner {
    font-family: "PT Sans", sans-serif;
    font-size: 123%;
    text-transform: uppercase;
    font-style: normal;
    color: #DD0000;
    letter-spacing: .2em;
    padding-left: 11px;
}




/* copyright */

.footer .footer-copyright {
    border-top: 1px solid rgba(255,255,255,.5);
    font-family: "PT Sans", sans-serif;
    font-size: 87%;
    letter-spacing: .1em;
}

.footer .footer-copyright > div {
    text-align: center;
    padding: 5vw 1vw 3vw;
    margin: auto;
}

.footer .footer-copyright p {
    text-align: center;
    padding-bottom: 2vw;
}














/* media queries ***********************************************************/

@media only screen and (max-width: 991px) {

body .homepage-banner {
    display: none;
}
    
body .homepage-banner-mobile {
    display: inherit;
}

body .site-grid .container-banner {
    margin: calc(-1.1 * 21vw) 0 0;
}

body .container-topbar .logo {
    margin: 0;
    padding: 7px;
    width: 20%;
}
    
body .container-header .container-topbar {
    background: linear-gradient(to bottom, rgba(0,0,0,.9) 23%, rgba(0,0,0,0) 99%);
}
    
body .logo {
    margin: 0;
}

body .container-topbar .proudly-serving {
    font-size: 1.9vw;
    margin: -2vw 0 0 11%;
    width: 69%;
}

body .proudly-serving .lawrence {
    font-size: 3.4vw;
}

    
/* nav */

body .container-topbar .top-menu {
    position: absolute;
    width: 42px;
    top: -50px;
    left: 22vw;
    z-index: 9;
}
    
body .metismenu.mod-menu .metismenu-item > a {
    font-size: inherit;
}
    
body .mod-menu > li:hover > ul.mm-collapse {
    display: none !important;
}
    
.container-header .navbar-collapse {
    text-align: right;
}
    
navbar-toggler {
    padding: 3px 7px 3px 13px;
}
    
.navbar-toggler.navbar-toggler-right {
    margin: 0 0 0 auto;
    color: #c4352e;
    border: 1px solid #c4352e;
    border-radius: 0;
    box-shadow: none;
    background: none;
}

.navbar-toggler.navbar-toggler-right:hover {
    color: #fff;
    border: 1px solid #fff;
}

body .navbar .navbar-collapse .mod-menu_dropdown-metismenu {
    background: rgba(0,0,0,.79);
}

body .navbar .navbar-collapse .mod-menu_dropdown-metismenu .metismenu-item a,
body .metismenu.mod-menu .metismenu-item.level-1 > a.search {
    text-decoration: none;
    padding: 0;
    margin: 11px;
    text-align: left;
}

    
/* responsive tables */
    
table, thead, tbody, th, td, tr { /* Force table to not be like tables anymore */
	display: block;
    border: none;
}

tr { border: none; }

td { /* Behave  like a "row" */
	border: none;
	position: relative;
    width: 100% !important;
    text-align: center !important;
    padding: 23px !important;
}

}

@media only screen and (max-width: 600px) {

.footer .footer-copyright {
    font-size: 3vw;
    padding: 0 1vw;
}

}






