img, iframe {max-width: 100%; height: auto} html,body{-webkit-text-size-adjust:100%;text-size-adjust:100%} :root { --main-bg: #fff; --light: #f5f5f5; --light-comp: #4d4d4d; --dark: #333; --dark-comp: #fff; --primary: #1773BE; --primary-comp: #fff; --secondary: #a0138e; --secondary-comp: #fff; } html, body { -webkit-text-size-adjust: 100%; text-size-adjust: 100%; }body { font-family: 'Red Hat Display', Arial, Helvetica, sans-serif; font-size: 18px; line-height: 1.5; letter-spacing: .5px; text-align: center; min-width: 320px; }body, footer a, .solutions h3 a { color: var(--light-comp, #4d4d4d); }body, header ul, .hero h1, .hero p, .point h2 { padding: 0; margin: 0; }h1, h2, h3, h4, h5, h6, p, th, td, dd, dt, li, blockquote { text-align: left; }h1, h2, h3, h4, h5, h6, nav, form input[type=submit], .btn { text-transform: uppercase; }h1, h2, h3, h4, h5, h6 { line-height: 1.3; }img, iframe, svg { max-width: 100%; height: auto; display: block; margin: 0 auto; }iframe { aspect-ratio: auto 16 / 9; width: 100%; margin: 1em auto; }a img, iframe { border: none; }a, .logos img { transition: ease-in-out .3s; }a, header a:hover, form input[type=submit]:hover, .btn:hover, footer a:hover, .solutions h3 a, .cta a:hover { text-decoration: none; }a, footer a:hover, .solutions h3 a:hover { color: #BE17A8; }a:hover { text-decoration: underline; }hr { border-width: 1px; 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; }sup { line-height: 0; }.hide { display: none !important; }.center, .ccpaNotice, .comments h2, .comments h3, .comments p, .cta h2, .cta p, .cta li { text-align: center !important; }.wrap { display: block; max-width: 1080px; margin: 0 auto; position: relative; }.bg-dark, .bg-primary { color: var(--dark-comp, #fff); }.bg-dark { background-color: var(--dark, #333); }.bg-primary { background-color: var(--primary, #1773BE); }.bg-light { background-color: var(--light, #f5f5f5); }.mid { align-items: center; align-self: center; }.grid { display: grid; grid-gap: 10px 15px; }.grid.half { grid-template-columns: repeat(2,1fr); }.grid.third { grid-template-columns: repeat(3,1fr); }.grid.fourth { grid-template-columns: repeat(4,1fr); }.caring img { width: 100%; max-width: 320px; }.caring div { padding: 30px; }.pad { padding: 0 10px } header, .hero, .comments, .cta { position: relative; }header, footer, .about .grid h3 span { font-size: 16px; }header { z-index: 999; }header .wrap { padding-top: 5px; }header .grid, footer .cta .grid, .solutions .grid { grid-template-columns: 300px 1fr; }header .grid > div:last-of-type, .hero h1, .hero p, footer .subfoot .grid > div:last-of-type { text-align: right; }nav a, .social a { display: block; margin: 5px; padding: 5px }nav a, .hero h1, .hero p, .cta a { color: var(--dark-comp, #fff); text-shadow: 0 0 5px rgba(0,0,0,.5); }nav a, .cta a { border-bottom: 3px solid transparent; }nav a:hover, .cta a:hover { border-bottom: 3px solid var(--secondary, #a0138e); }nav ul { text-align: right }nav ul:first-of-type li { vertical-align: middle }nav li, .social li { display: inline-block; font-weight: bold; position: relative; text-align: center; }nav a span { display: block }nav .phone { font-size: 20px; margin-right: 15px; }nav .btn { font-size: 14px; padding: 5px 15px; margin: 5px; display: block; border-bottom: none !important; }nav .btn, .hero .btn { text-shadow: none; } .hero, .comments, .cta { background-size: cover; background-position: center; }.hero:before, .comments:before, .cta:before { content: ""; position: absolute; }.hero:before, .comments:before, .cta:before { width: 100%; height: 100%; background-color: rgba(0,0,0,.5); top: 0; left: 0; z-index: 1 }.hero { width: 100%; min-height: 450px; height: 100%; }.hero:has(.home) { min-height: 800px }.hero > .wrap { padding: 80px 0; z-index: 1; }.hero h1, .hero p, .comments p, .cta h2, .cta p { padding: 0 10px; text-shadow: 2px 2px 3px rgba(0,0,0,.3); }.hero h1, .cta h2 { font-size: 36px; }.hero p { font-size: 30px; font-weight: bold; }.bgimg { position: relative }.bgimg > img:last-of-type { position: absolute; width: 100%; height: 100%; inset: 0; object-fit: cover; z-index: 0 }.hero.bgimg > img { object-position: 50% 50% }.home { text-align: right }.home .btn { margin: 40px 150px 0 0 } .point .wrap { padding: 50px 10px 40px; }.solutions .bg-light, .emphasis { padding: 20px clamp(20px, 3vw, 40px) 40px; border-left: 10px solid var(--primary, #1773BE); }.solutions .grid { grid-template-columns: 300px 1fr; grid-gap: 20px 50px; margin: 50px 0; }.solutions .grid.homepad div { padding: 0 10px }.solutions img { object-fit: cover; height: 100%; max-height: 350px; width: 100%; object-position: 50% 25% }.solutions h3 { margin: 0; }.solutions h3 span { text-transform: none; }.solutions .btn { margin: 10px 0 0 0; }.comments, .welcome { margin: 60px 0; }.comments { min-height: 450px; max-height: 100%; background-position-y: 80%; }.comments:before { background-color: rgba(16,80,133,.8); z-index: 1; }.solutions .emphasis .wrap { top: 50%; transform: translateY(-50%); }.comments .overlay { z-index: 1; }.comments p { font-size: 22px; font-weight: bold; margin: 20px auto; padding-bottom: 15px; }.comments p:first-of-type { padding: 55px 10px }.welcome .wrap { padding: 40px 10px; }.welcome img { width: 900px; border-radius: 10px; }.logos .wrap { padding: 20px 10px; }.logos img { filter: grayscale(100%); opacity: 50%; padding: 90px 15px; box-sizing: border-box }.logos img.sm { padding: 15px }.logos img:hover { filter: grayscale(0); opacity: 100%; }.cta { font-weight: bold; padding: 5px 0 }.cta .overlay { z-index: 2; }.cta ul { max-width: 850px; padding: 20px 0; margin: 40px auto; border-top: 1px solid #fff; border-bottom: 1px solid #fff; }.cta p a { margin: 0 10px; } form { margin: 20px 0; }form .grid { grid-gap: 0 10px; }form label { display: block; text-align: left; padding: 5px; }form input[type=checkbox], form span { text-align: left; }form input[type=text], form input[type=email], form input[type=tel], form input[type=file], form input[type=submit], form select, form textarea, form input[type=password], .btn { font-family: 'Red Hat Display', sans-serif; font-size: 18px; }form input[type=text], form input[type=email], form input[type=tel], form select, form textarea, form input[type=password] { background-color: var(--main-bg, #fff); margin-bottom: 10px; padding: 0 10px; border: 1px solid #f5f5f5; }form input[type=text], form input[type=email], form input[type=tel], form select, form input[type=password] { height: 45px; }form input[type=text], form input[type=email], form input[type=tel], form textarea, form input[type=password] { width: calc(100% - 20px); }form select { width: 100%; }form input[type=file] { margin-left: 10px; border-radius: 0; }form textarea { height: 150px; padding: 15px 10px; }form input[type=submit], .btn { display: inline-block; min-width: 110px; font-size: 16px; font-weight: bold; text-align: center; line-height: 1.6; background-color: var(--primary, #1773BE); color: var(--primary-comp, #fff); padding: 10px 40px; margin: 10px 0; border: none; border-radius: 3px; transition: ease-in-out .3s; }form input[type=submit] { min-width: 250px; margin: 0; }form input[type=submit]:hover, .btn:hover { cursor: pointer; background-color: var(--secondary, #01cdea); color: var(--primary-comp, #fff); }.jQexpiring { display: none; } footer .wrap { padding: 10px 10px 20px }footer .grid.fourth { padding: 40px 0; border-top: 1px solid #eee; border-bottom: 1px solid #eee; }.subfoot .grid { grid-template-columns: 1fr 150px } main, .contact .bg-light { padding: 40px 10px; }main h1, main h2, .solutions h3, .cta li { font-size: 30px; }main h3, .cta { font-size: 20px; }main h4, footer h3 { font-size: 18px; }main ul, main ol { padding-left: 25px; }main li, footer li { margin: 5px 0; }.hero > .home.wrap { padding: 300px 0 80px }.nolist, footer ul, .cta ul, .contact ul { list-style: none; padding-left: 0; }.about .grid { padding: 50px 0 40px; margin: 50px 0; }.about .grid h3 span { display: block; margin: 5px 0; }.solutions .emphasis { height: 350px; background-color: #8eedff; margin: 40px 0; }.solutions .emphasis .grid { grid-template-columns: 400px 1fr; grid-gap: 0; }.solutions .emphasis img { display: block; object-fit: cover; height: 350px; }.contact .grid.mid { grid-template-columns: 300px 1fr; padding: 40px 0 50px; }.contact .grid.mid ul { padding: 0 0 20px 50px; position: relative; }.contact li:first-of-type { position: absolute; top: -5px; left: 0; }.gmap { height: 100%; max-height: 500px }.gmap img { width: 100%; height: 100%; object-fit: cover } @media(max-width:999px) { header .grid { grid-template-columns: 1fr; grid-template-areas: "logo" "social" "nav"; } nav ul { text-align: center; margin: 5px 0 } .hero :is(h1,p), .home { text-align: center; } .logos.grid.third { grid-template-columns: 1fr; } .logos img { padding: 15px; max-width: 300px } .home .btn { margin: 40px 0 0 } footer .grid.fourth { grid-template-columns: 1fr 1fr }} @media(max-width:767px) { header .wrap { padding: 15px 10px; } .hero:has(.home) { min-height: unset } .hero > .home.wrap { padding: 80px 0 } .grid.half, .grid.mid, .contact .grid.mid { grid-template-columns: 1fr; } .grid.fourth { grid-template-columns: 1fr 1fr; } .solutions img { height: unset !important; } .cta { min-height: 715px; } .contact .grid.mid { padding: 0 } .contact .grid.mid > div { display: grid; grid-template-columns: 1fr 1fr } .contact .grid.mid ul { padding: 0; } .contact li, .contact li:first-of-type { text-align: center; padding: 10px 0; position: relative; } .featured .grid { grid-template-columns: 1fr 1fr } footer p { text-align: center; } footer .wrap:last-of-type { padding-bottom: 20px; } nav > ul:last-of-type { display: grid; grid-template-columns: 1fr 1fr } nav a span { display: inline }} @media(max-width:600px) { .imgLeft, .imgRight { float: none; max-width: 100%; margin: 0 auto; } .grid.half, .grid.third { grid-template-columns: 1fr } body main .post > .postThumbnail { float: none; width: 100%; max-width: unset; margin: 0 }} @media(max-width:500px) { header ul { padding-right: 0 } body .hero { height: auto; } .hero > .wrap { padding: 40px 0 80px } h1 { text-align: center; } .bgimg > img { object-position: 35% 27%; } .banner .main h1 { font-size: 36px; } .banner .main p { font-size: 28px } .grid.fourth, footer .grid.fourth { grid-template-columns: 1fr; } footer h3, footer li { text-align: center; } footer .wrap { padding: 10px 0 } nav a span { display: block }}