img, iframe {max-width: 100%; height: auto} html,body{-webkit-text-size-adjust:100%;text-size-adjust:100%} html, body { -webkit-text-size-adjust: 100%; text-size-adjust: 100% }body { min-width: 320px; font-family: 'Montserrat', Verdana, sans-serif; font-size: 16px; line-height: 1.5; text-align: center; }body, .top { background-color: #111; }body, nav a { color: #4d4d4d; }h1, h2, h3, h4, h5, h6, p, th, td, dd, dt, li, blockquote { text-align: left; }h1, h2, h3, h4, h5, h6 { line-height: 1.3; }body, header ul, .subnav, .subfoot ul { padding: 0; margin: 0; }img, iframe { max-width: 100%; display: block; margin: 0 auto; height: auto }.fullwidth { width: 100%; }a img, iframe { border: none; }a, .top a:hover, footer a:hover { text-decoration: none; transition: ease-out .3s; }a { color: #FF8200; font-weight: bold; }a:hover { text-decoration: underline; transition: ease-in-out .3s; color: #FF4300; }nav a:hover, .subnav a:hover, .quote a:hover { text-decoration: none; }hr { border-width: 2px; border-color: #eee; border-style: none none solid; margin: 40px 0; }.imgLeft, .imgRight { max-width: 45%; }.imgLeft { float: left; margin: 10px 4% 2% 0; }.imgCenter { display: block; margin: 0 auto; }.imgRight { float: right; margin: 10px 0 2% 4%; }.clear { clear: both; }.nowrap, a[href^=tel] { white-space: nowrap; }.hide { display: none !important; }.center, .home > div:last-of-type h2 { text-align: center; }.container, .banner { background: #eee; }.wrap { display: block; max-width: 1080px; margin: 0 auto; position: relative; }.flex { display: flex; flex-wrap: wrap; }.grid { display: grid; grid-gap: 20px; }.grid.half { grid-template-columns: repeat(2,1fr); }.grid.third { grid-template-columns: repeat(3,1fr); }.grid.fourth { grid-template-columns: repeat(4,1fr); }.bgimg { position: relative }.bgimg > img:first-of-type { position: absolute; width: 100%; height: 100%; left: 0; right: 0; top: 0; bottom: 0; object-fit: cover; z-index: 0 } header, main { background-color: #fff; }header, footer { font-size: 15px; }header .flex, footer .flex { justify-content: space-between; align-items: center; }header .grid { grid-template-columns: 300px 1fr; align-items: center;; }header li, .subnav li, footer li, .customers li { display: inline-block; }header a, nav ul ul li, nav a, nav li:hover > ul, .subnav a, .quote a, .quote b { display: block; }.top { padding: 5px; font-family: 'Montserrat', verdana, sans-serif; }.top .grid { grid-gap: 0 20px }.top, .top a, .top .btn:hover, nav ul ul a, .subnav a, footer, footer a, .quote a { color: #fff; }.top a { padding: 5px; margin: 5px }.top a:hover, footer a:hover { color: #FF8200; }.top .btn { font-size: 14px; padding: 5px 0; margin: 0 10px 0 5px; text-shadow: 1px 1px 3px #5E584D; }.mainhead { padding: 5px 0 }.mainhead .grid { grid-gap: 0 }.mainhead img { filter: drop-shadow(4px 4px 3px #aaa); padding: 5px 5px 10px }header ul { text-align: right }nav li { position: relative; }nav > ul > li:after { content: ""; width: 100%; height: 4px; background-color: transparent; position: absolute; top: 35px; transition: ease-in-out .3s; }nav a { padding: 5px; margin: 5px }nav a:hover { color: #4d4d4d }nav li:hover:after { background-color: #FF8200; border-radius: 1px; }nav ul ul { display: none; min-width: 210px; background-color: #FF8200; padding: 10px 0; position: absolute; z-index: 999; border-radius: 3px; box-shadow: 0 0 5px rgba(0,0,0,.1); }nav ul ul li { margin: 0 }nav ul ul a { padding: 5px 20px; text-shadow: 1px 1px 3px #5E584D; margin: 0 }nav ul ul a:hover { background-color: #FF4300; color: #fff; text-shadow: 1px 1px 3px #5E584D; }.subnav, .customers { font-size: 0; }.subnav { margin-top: 20px; position: relative; z-index: 888; }.subnav a { font-size: 14px; background-color: #FF8200; padding: 11px; margin: 0 1px; border-radius: 3px 3px 0 0; text-shadow: 1px 1px 3px #5E584D; }.subnav li:first-of-type a { margin-left: 0; }.subnav li:last-of-type a { margin-right: 0; } .banner, .slideshow { height: 400px; }.slideshow { position: relative; max-width: 1080px; margin: 20px auto; }.slideshow > div { position: absolute; inset: 0; opacity: 0; z-index: 1; transition: opacity 4s; height: 100%; width: 100% }.slideshow div div { position: relative; width: 100%; height: 100% }.slideshow img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center }.slideshow p { font-size: 24px; font-weight: bold; text-align: center; background-color: #FF8200; color: #fff; margin: 0; padding: 10px 20px; text-shadow: 1px 1px 3px #5E584D; border-radius: 3px; position: absolute; left: 40px; bottom: 40px; }.slideshow .showing { opacity: 1; z-index: 2 } .home.grid { grid-gap: 30px; grid-template-columns: 1fr 280px }.home > div:first-of-type { padding: 0 10px }.home > div:last-of-type { font-size: 14px; background-color: #eee; padding: 5px 20px 10px; border-radius: 5px; }.home h2 { margin-top: 20px; }.home ul { list-style: none; padding-left: 30px; }.home li, .customers li { margin: 2px 0; position: relative; }.home li:before, .customers li:before { content: "✔"; font-weight: bold; color: #FF8200; position: absolute; left: -20px; }.home img { margin-top: 20px; }.quote { margin-top: 50px; }.quote a { font-size: 22px; font-weight: bold; background-color: #FF8200; padding: 40px 10px; text-shadow: 1px 1px 3px #5E584D; white-space: normal }.quote span { white-space: nowrap }.quote b { text-transform: uppercase; margin-top: 5px }main { padding: 40px; margin: 20px 0; box-shadow: 0 0 10px rgba(0,0,0,.1); overflow: hidden; }main h1 { font-size: 24px; color: #333; }main h2, main h3, main h4, .logo { margin-top: 40px; }main h2 { font-size: 20px; }main h3, .home > div:last-of-type h2, .cta { font-size: 18px; }main h4 { font-size: 16px; }main ul { padding-left: 25px; }main li { margin: 5px 0; }.nolist { list-style: none; padding: 0; }.map { width: 100%; height: 400px; margin: 20px 0; }.services.imgRight { margin-top: 30px; }.customers { margin-top: 40px; text-align: left }.customers li { width: calc((100% / 3) - 25px); font-size: 16px; margin: 5px 25px 5px 0 }.shop img, .logo { display: block; text-align: left; }.team h2 { margin-top: 0; }.team img { width: auto; height: 216px; }.carousel { height: 150px; margin: 0 -40px }.carousel img { max-width: 150px; max-height: 80px; display: inline-block; vertical-align: middle; margin: 50px 40px 20px; } form { margin: 20px 0; }form .grid { grid-gap: 10px; }form input[type=text], form input[type=email], form input[type=tel], form input[type=file], form input[type=submit], form select, form textarea { font-family: 'Montserrat', verdana, sans-serif; font-size: 16px; border-radius: 3px; }form input[type=text], form input[type=email], form input[type=tel], form select, form textarea { background-color: #eee; margin-bottom: 10px; padding: 0 15px; border: none; }form input[type=text], form input[type=email], form input[type=tel], form textarea { width: calc(100% - 30px); }form input[type=text], form input[type=email], form input[type=tel], form select { height: 50px; }form select { width: 100%; }form input[type=file] { margin-left: 10px; border-radius: 0; }form textarea { height: 190px; padding: 15px; margin-bottom: 5px; }form input[type=submit], .btn { display: inline-block; min-width: 120px; font-size: 16px; font-weight: bold; text-align: center; background-color: #FF8200; color: #fff; padding: 13px 40px; margin-top: 10px; border: none; border-radius: 3px; transition: ease-in-out .3s; text-shadow: 1px 1px 3px #5E584D; }form input[type=submit] { min-width: 250px; padding: 15px 40px; margin: 0; }form input[type=submit]:hover, .subnav a:hover, .btn:hover, .quote a:hover { cursor: pointer; text-decoration: none; background-color: #FF4300; color: #fff; } footer .wrap { padding: 40px 0; }footer ul { padding: 0; margin-bottom: 60px; }footer li { border-right: 1px solid rgba(255,255,255,.3); line-height: 1; margin: 8px 0 }footer li a { padding: 2px 12px; display: block; }footer li:last-of-type { border: none; }footer .flex > div { flex: 3 0 300px; padding: 0 10px; }footer .flex a { text-align: center; flex: 1 0 175px; padding: 0 10px; margin: 1em 0 }footer .flex p { text-align: center }footer .flex p span { white-space: nowrap }.ccpaNotice a { font-weight: normal }.marquee {display: flex;user-select: none;gap: 10px;animation: scroll-x 30s linear infinite;margin: 2em auto 0 auto;padding-left: 1100px;width: 100%;} .marquee img {max-width: 200px;max-height: 80px;vertical-align: middle;margin: 0 40px;object-fit: contain;width: auto;} @keyframes scroll-x {from {transform: translateX(0);} to {transform: translateX(calc(-44 * 150px));}} @media(max-width:999px) { nav ul ul { display: none !important } main { padding: 40px 10px } .subnav { margin: 10px 0 } .subnav a { margin: 4px } .carousel { margin: 0 -10px }} @media(max-width:767px) { .customers li { width: calc(50% - 25px); }} @media(max-width:700px) { header .grid { grid-template-columns: 1fr } header p, header ul { text-align: center } .top span { margin: .5em 10px } .top { padding-bottom: 10px }} @media(max-width:600px) { .home.grid, .grid.half { grid-template-columns: 1fr; grid-gap: 0 } .grid.half p:first-of-type { margin-top: 0 } .home > div:last-of-type { border-radius: 0; padding: 5px 20px } .home > div:last-of-type li { display: inline-block; margin: 5px 25px 5px 0 } .imgRight, .imgLeft { float: none; margin: 1em auto; max-width: 100% }} @media(max-width:500px) { .customers li { display: block; width: auto }} @media(max-width:400px) { .slideshow p { left: unset !important; padding: 10px !important} .slideshow p span { white-space: normal !important } form input[type=submit] { display: block; width: 100% } .ccpaNotice a { display: block } .ccpaNotice { text-align: center !important }}