img, iframe {max-width: 100%; height: auto} html,body{-webkit-text-size-adjust:100%;text-size-adjust:100%} html { --14px: 0.875rem; --15px: 0.9375rem; --16px: 1rem; --17px: 1.0625rem; --18px: 1.125rem; --19px: 1.1875rem; --20px: 1.25rem; --21px: 1.3125rem; }*:focus-visible, input[type='submit']:focus-visible { outline-style: solid; outline-width: 2px; outline-color: #000; outline-offset: 4px; border-radius: 3px; transition: all 0.3s linear 0.01s; }.focusclarity *:focus-visible { outline-color: #fff; }.focusclarity input[type='submit']:focus-visible { outline-color: var(--primary); }#jump { text-decoration-line: underline; text-decoration-color: var(--accent); text-underline-offset: 4px; position: absolute; background-color: var(--secondary); left: 10px; top: 0; padding: 10px; border-width: 2px; border-color: var(--light-comp); border-style: none solid solid; transform: translateY(-200%); z-index: 9 }#jump:focus { transform: translateY(0); outline-offset: 0; text-decoration: none; }a[target='_blank'] { position: relative; }a[target='_blank'] i { padding: 4px; border: 1px solid black; color: #000; background-color: #fff; text-decoration: none; position: absolute; left: 30px; bottom: -30px; z-index: 999; width: 130px; display: none; font-size: 12px; font-family: sans-serif; text-align: center; letter-spacing: 0; }a[target='_blank']:hover i, a[target='_blank']:focus i { display: block; }.back { margin: 0; }.back :is(a,button) { color: var(--dark-comp); padding: 5px 15px; display: inline-block }button { border: none; margin: 0; background: none; font-size: 1rem }button:hover { cursor: pointer }header a[target='_blank'] i { left: 0; }.ccpaNotice a i { bottom: unset !important; top: -30px; }* { scroll-behavior: smooth; }.team div { background-color: #eeecec; padding: 15px; }.team div img { max-width: 200px; width: 100px; border-radius: 10%; box-shadow: rgba(0, 0, 0, 0.05) 0px 6px 24px 0px, rgba(0, 0, 0, 0.08) 0px 0px 0px 1px; } body { margin: 0; min-width: 320px; line-height: 1.5; }h1, h2, h3, h4, h5, h6 { line-height: 1.25; }.wrap { max-width: 1080px; margin: 0 auto; padding: 0; position: relative; }img, iframe, video { max-width: 100%; display: block; height: auto; margin: 0 auto }a img, iframe { border: none; }a, header a:hover, .btn:hover, form input[type='submit'] { text-decoration: none; }a, form input[type='submit'] { transition: ease-in-out 0.3s; }a:hover { text-decoration: underline; }hr { border-width: 1px; border-color: #eee; border-style: none none solid; margin: 40px 0; }.imgLeft, .imgRight { max-width: 50%; }.imgLeft { float: left; margin: 10px 4% 2% 0; }.imgCenter { margin: 0 auto; }.imgRight { float: right; margin: 10px 0 2% 4%; }.clear { clear: both; }.hide { display: none !important; }.nowrap, a[href^='tel'] { white-space: nowrap; }.grid { display: grid; grid-gap: 10px; }.grid.half { grid-template-columns: 1fr 1fr; }.grid.third { grid-template-columns: 1fr 1fr 1fr; }.grid.fourth { grid-template-columns: 1fr 1fr 1fr 1fr; }.grid.mid { align-items: center; }.mid div { padding: 20px; }.grid .span2 { grid-column: span 2; }.grid .span3 { grid-column: span 3; }.grid.lists { grid-row-gap: 0; }.grid ul { margin: 0; }.flex { display: flex; flex-wrap: wrap; }.flex > * { flex: 1 1 300px; }ul, ol { padding-left: 25px; margin: 0; }.nolist { list-style: none; padding: 0; }.flex ul li:last-of-type { margin-bottom: 0; }section li, main li { margin: 5px 0; }.center, .btn, form { text-align: center; }.cover { background-size: cover; background-position: center; }header a, .btn { text-decoration: none; }.bgimg { position: relative; }.bgimg > img:first-of-type { position: absolute; width: 100%; height: 100%; inset: 0; object-fit: cover; z-index: 0; object-position: 50% 50% } .notice { padding: 10px; }.notice ul { padding: 0; margin: 0 }.notice li { display: inline-block; white-space: nowrap; position: relative }.notice a { margin: 4px; padding: 4px 4px 4px 8px; display: block; line-height: 1 }.notice > a { display: inline-block; position: absolute; top: 10px; right: 10px }header a { display: block; }header .wrap { padding: 0 }header .grid { grid-template-columns: 270px 1fr; padding: 20px 0; grid-gap: 0; }header .logo { text-align: left; padding: 10px; }nav ul { padding: 0; margin: 0; text-align: right; }nav li { display: inline-block; }nav a { margin: 5px; padding: 5px; } .banner { min-height: 300px; color: #fff; text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.3); position: relative; }.banner .btn { text-shadow: none; }.banner:after { content: ''; position: absolute; inset: 0; background-color: rgba(0, 0, 0, 0.3); background-image: linear-gradient(transparent, rgba(0, 0, 0, 0.3), transparent); z-index: 1; }.banner > .wrap { position: relative; z-index: 2; padding: 60px 15px }.banner h1 { font-size: 38px; margin: 0 0 20px; }.banner :is(h1,p) { text-wrap: balance; max-width: 700px; margin: 16px auto }.banner p, main h3, .row3 { font-size: 18px; } main { padding: 30px 10px; color: var(--font, #4d4d4d); }.segment { padding: 30px 10px; }.btn, form input[type='submit'] { display: inline-block; min-width: 160px; padding: 15px 20px; margin: 0 auto; border-radius: 3px; } footer { clear: both }footer .wrap { padding: 20px 10px; }footer .segment { padding: 20px 10px; }.subfoot .grid { grid-gap: 0; } form { margin: 40px 0; }form fieldset { border: none; padding: 0; margin: 0; }form legend { text-align: left; padding: 0; }form label { display: block; text-align: left; }form input, form textarea { display: block; width: 100%; box-sizing: border-box; margin: 0 0 12px; line-height: 1.5; font-size: var(--16px); background-color: transparent; padding: 10px 0; border: none; border-bottom: 1px solid #4d4d4d; }form textarea { height: 150px; }form input[type='submit'] { max-width: 250px; }form input[type='submit']:hover { cursor: pointer; }form :is(input,textarea)::placeholder, form textarea::placeholder { color: var(--light-comp); }form input[type='submit'] { border: 1px solid var(--primary); } :root { --main-bg: #fff; --light: #f5f5f5; --light-comp: #4d4d4d; --dark: #040813; --dark-comp: #fff; --primary: #007BBD; --primary-comp: #000; --secondary: #ccc; --secondary-comp: #000; --accent: ##c94500; --dark-accent: #c94500; }body, form :is(input, textarea) { font-family: 'Figtree', sans-serif; }body { font-size: 18px; color: var(--light-comp, #4d4d4d); }body, .bg-dark { background-color: var(--dark, #232323); color: var(--dark-comp, #fff); }.bg-main, main { background-color: var(--main-bg, #fff); color: var(--light-comp, #4d4d4d); }.bg-light { background-color: var(--light, #f5f5f5); color: var(--light-comp, #4d4d4d); }.bg-primary, input[type='submit'], .btn { background-color: var(--primary, #1ba2b6); color: var(--dark-comp, #fff); }a, nav a:hover, .row1 a:hover, .services a:hover, .news a:hover { color: var(--dark, #040813); }.services { padding-bottom: 40px; }.services .grid, .contact .grid { margin: 50px 0 10px; }.grid.services { grid-template-columns: repeat(12, 1fr) }.services a:nth-of-type(-n+3) { grid-column: span 4 }.services a { grid-column: span 3; padding: 5px 15px; background-color: #f6f6f6; color: var(--light-comp, #4d4d4d); }.services p { font-size: 16px; text-wrap: balance }:is(.btn, form input[type='submit']):is(:hover,:focus) { background-color: var(--secondary, #1acbdd); color: var(--secondary-comp, #fff); }.bgdark { background-color: #040813; padding: 100px; color: #eee; }.bgdark div { padding: 50px; }.bgblue { background-color: #0084c9; color: #eee; padding: 30px clamp(15px, 2vw, 30px); margin: clamp(10px, 3vw, 50px); }.logo img { max-width: 250px; width: 100%; margin: 0 auto; }.notice, .banner, .row1, .services .grid, footer, .emphasis { text-align: center; }header a, .btn { color: var(--dark-comp, #fff); }header a:hover { color: var(--dark-accent); }header, .subfoot, .btn, form input[type='submit'], .contact li { font-size: 16px; }header { width: 100%; background-image: linear-gradient(rgba(0, 0, 0, 0.8), rgba(0, 0, 0, 0.5), transparent); position: relative; z-index: 999; } .cta.bgimg > img:first-of-type { filter: opacity(0.2) }.btn, form input[type='submit'] { padding: 13px 20px; }.btn { margin-top: 10px; }.btn.style2 { background-color: var(--dark, #232323); }.btn.style2:hover { background-color: #3c3c3c; }main h2 { font-size: 24px; }.row1 a { color: var(--light-comp, #eee); }.row1 a:hover, .services a:hover, .news a:hover { text-decoration: none; }.row1 .grid { margin: 40px 0 10px; }.row2, .row4 { padding: 50px 10px; }.row2 .grid > div:first-of-type { order: 2; }.row2 .grid > div:last-of-type { order: 1; }.row2 p { padding-right: 50px; }.row4 { text-align: right; }.row4 p { padding-left: 50px; }.emphasis { padding: 20px clamp(10px, 3vw, 40px) 30px; margin: 40px 0; }.news a { color: var(--primary, #1ba2b6); }.contact ul { margin: 40px 0; }footer { padding: 0; }footer .cta { padding: 50px 0 40px; }footer h2, footer p, footer form { position: relative; z-index: 999; }footer .mark { display: block }.mark img { filter: invert(1) }.subfoot .grid { grid-template-columns: 1fr 150px }.subfoot .grid p { text-align: left }nav { font-size: 20px; }nav li, footer .social li { display: inline-block; }nav ul ul { display: none; min-width: 230px; background-color: #0084c9; margin-left: -10px; border-radius: 5px; box-shadow: 0 5px 5px rgba(0, 0, 0, 0.1); position: absolute; z-index: 999; }nav ul ul li, nav ul ul a { display: block; }nav ul ul a, .hero, .hero a, footer, footer a, .solutions .grid.half:first-of-type, .solutions .grid.half:first-of-type h2, .innovation .intro, .about .grid.fourth a:hover h3, .contact .locations, .contact .locations a, .emphasis, .emphasis h2, .emphasis a { color: #fff; }nav li:hover > ul, a.emphasis { display: block; }nav ul ul a { padding: 10px 20px; }nav ul ul a:hover { background-color: #006fbf; color: #fff; }nav ul ul li:first-of-type a { border-radius: 5px 5px 0 0; }nav ul ul li:last-of-type a { border-radius: 0 0 5px 5px; }nav ul li:last-of-type ul, nav ul > li:nth-last-child(2) ul { right: 0; } @media(max-width:1300px) { .notice > a { position: relative; top: unset; right: unset }} @media(max-width:1100px) { .grid.services h3 span { display: block }} @media(max-width:999px) { nav ul ul { display: none !important } .grid.fourth { grid-template-columns: 1fr 1fr } .grid.services a { grid-column: span 2 } .grid.services a:nth-of-type(-n+2) {grid-column:span 6} .grid.services a { grid-column: span 4 } .imgRight { float: none; max-width: 100%; margin: 0 auto }} @media(max-width:700px) { .grid.half { grid-template-columns: 1fr } .row4 :is(h2,p) { text-align: left; padding-left: 0 } .row4 .grid.half div:first-of-type { order: 1; }} @media(max-width:600px) { header .grid, .subfoot .grid, .grid.fourth { grid-template-columns: 1fr } nav ul, .subfoot .grid p { text-align: center } nav li:last-of-type { display: block } .grid.services { grid-template-columns: 1fr 1fr } .grid.services.services a { grid-column: unset } .grid.services.services a:last-of-type:nth-of-type(odd) { grid-column: 1 / -1 } footer .wrap { padding: 10px 10px 20px; }} @media(max-width:500px) { .banner h1 { font-size: 36px }} @media(max-width:400px) { .grid.services { grid-template-columns: 1fr } .grid.services h3 span { display: inline }}