html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video { margin: 0; padding: 0; border: 0; font-size: 100%; font: inherit; vertical-align: baseline; }
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section { display: block; }
body, input, button { line-height: 1; }
body { text-rendering: geometricPrecision; font-family: "itc-avant-garde-gothic-pro", sans-serif; background:#FFF; }
ol, ul { list-style: none; }
blockquote, q { quotes: none; }
blockquote:before, blockquote:after, q:before, q:after { content: ''; content: none; }
h1, h2, h3, h4, h5, .btn, .submit-btn, .field label, .field input, .field select, .field textarea { font-family: "itc-avant-garde-gothic-pro", sans-serif; }
p, footer ul li, .content ul li, #contactForm { font-family: "forma-djr-micro", sans-serif; }
table { border-collapse: collapse; border-spacing: 0; }
a:link, a:visited, a:hover, a:active { text-decoration:none; }
a, button, input, :before {-webkit-transition: all 0.2s ease; -moz-transition: all 0.2s ease; -ms-transition: all 0.2s ease; -o-transition: all 0.2s ease; transition: all 0.2s ease;}
::-moz-selection { color: #FFF; background:#002532; }
::selection { color:#FFF; background:#002532; }
body.overflow { overflow: hidden; }

/*-- Responsive Grid --*/
.container { max-width:1240px; height:100%; margin: 0 auto; clear:both; padding:0 20px; }
.container:after,.row:after, .col:after, .clr:after, .group:after { content: ""; display: table; clear: both; }								  
.col { display: block;float: left;width: 100%;}
@media (min-width : 768px) {.gutters .col { margin-left: 2%;} .gutters .col:first-child { margin-left: 0; }}
@media (min-width : 768px) {.span_1{width:8.33333333333%}.span_2{width:16.6666666667%}.span_3{width:25%}.span_4{width:33.3333333333%}.span_5{width:41.6666666667%}.span_6{width:50%}.span_7{width:58.3333333333%}.span_8{width:66.6666666667%}.span_9{width:75%}.span_10{width:83.3333333333%}.span_11{width:91.6666666667%}.span_12{width:100%}.gutters .span_1{width:6.5%}.gutters .span_2{width:15%}.gutters .span_3{width:23.5%}.gutters .span_4{width:32%}.gutters .span_5{width:40.5%}.gutters .span_6{width:49%}.gutters .span_7{width:57.5%}.gutters .span_8{width:66%}.gutters .span_9{width:74.5%}.gutters .span_10{width:83%}.gutters .span_11{width:91.5%}.gutters .span_12{width:100%}}

/*-- Header --*/
header { width:100%; height: 110px; padding: 0; margin: 10px 0; float: left; position: absolute; z-index: 3; }
header .logo { width:190px; height: 45px; position: absolute; background-image: url("../images/logo.png"); background-size: 100%; background-repeat: no-repeat; background-position: center; left:35px; top:30px; text-indent: -999999px; }
header .cta { position: absolute; right:35px; top:45px; }
header .cta .btn { border:2px solid #0791cf; border-radius: 5px; padding: 10px 25px; color:#FFF; font-weight: 700; }
header .cta .btn:hover { background:#0791cf; color:#FFF; }
header .cta .btn.two { background:#0791cf; color:#FFF; margin-left: 10px; text-transform: uppercase; }
header .cta .btn.two:hover { border:2px solid #FFA213; background:#FFA213; color:#FFF; }

/*-- Primary Nav --*/
#nav{display:table;margin:35px auto}
#nav ul{margin:0;padding:0;list-style:none}
#nav ul ul{opacity:0;position:absolute;top:180%;visibility:hidden;transition:all .4s ease;-webkit-transition:all .4s ease;background:#FFF;border-bottom-left-radius:5px;border-bottom-right-radius:5px;border-top-left-radius:5px;border-top-right-radius:5px;width:215px;box-shadow:0 10px 10px rgba(0,0,0,.1);overflow: hidden;}
#nav ul ul li a{font-size:16px;line-height: 24px; color:#002532;font-weight:600;text-transform:capitalize;text-align:left;padding:20px}
#nav ul ul li:hover > ul{top:0;left:100%;opacity:1;visibility:visible}
#nav ul li:hover > ul{opacity:1;top:160%;visibility:visible}
#nav ul li{float:left;position:relative;cursor:pointer;margin:0 10px}
#nav ul li:first-child { margin-left: 60px; }
#nav ul li ul li:first-child { margin-left: 0; }
#nav ul ul li{float:none;margin:0}
#nav ul li a{text-decoration:none;display:block;color:#FFF;text-transform:capitalize;font-weight:600;font-size:17px;padding:10px 15px;text-align:center;position: relative;}
#nav ul li a.dropdown:after{ font: var(--fa-font-solid); content:"\f078";color:#0791cf;float:right;position:absolute;right:-5px;font-size: 16px;}
#nav ul li:hover{color:#0791cf}
#nav ul li ul li a:hover{background-color:#0791cf; color: #FFF;}

/*-- Menu Icon --*/
.burger{width:50px;height:50px;position:absolute;top:40px;right:35px;border-radius:4px;z-index:10}
.burger span{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;position:absolute;top:50%;left:50%;margin-left:-15px}
.burger span,.burger span::before,.burger span::after{display:block;width:30px;height:4px;background-color:#0791cf;outline:1px solid transparent;-webkit-transition-property:background-color,-webkit-transform;-moz-transition-property:background-color,-moz-transform;-o-transition-property:background-color,-o-transform;transition-property:background-color,transform;-webkit-transition-duration:.3s;-moz-transition-duration:.3s;-o-transition-duration:.3s;transition-duration:.3s}
.burger span::before,.burger span::after{position:absolute;content:""}
.burger span::before{top:-9px}
.burger span::after{top:9px}
.burger.clicked { top:5px; right:10px; }
.burger.clicked span{background-color:transparent}
.burger.clicked span::before{-webkit-transform:translateY(9px) rotate(45deg);-moz-transform:translateY(9px) rotate(45deg);-ms-transform:translateY(9px) rotate(45deg);-o-transform:translateY(9px) rotate(45deg);transform:translateY(9px) rotate(45deg)}
.burger.clicked span::after{-webkit-transform:translateY(-9px) rotate(-45deg);-moz-transform:translateY(-9px) rotate(-45deg);-ms-transform:translateY(-9px) rotate(-45deg);-o-transform:translateY(-9px) rotate(-45deg);transform:translateY(-9px) rotate(-45deg)}
.burger.clicked span:before,.burger.clicked span:after{background-color:#0791cf}
.burger:hover{cursor:pointer}

/*-- Secondary Nav --*/
nav{background-color:#FFF;position:fixed;z-index:9;top:0;right:0;height:100%;max-width:370px;width:100%;padding:40px 40px 60px;overflow-y:auto;-webkit-transform:translateX(100%);-moz-transform:translateX(100%);-ms-transform:translateX(100%);-o-transform:translateX(100%);transform:translateX(100%);-webkit-transition:transform .55s cubic-bezier(0.785,0.135,0.15,0.86);-moz-transition:transform .55s cubic-bezier(0.785,0.135,0.15,0.86);-o-transition:transform .55s cubic-bezier(0.785,0.135,0.15,0.86);transition:transform .55s cubic-bezier(0.785,0.135,0.15,0.86);box-sizing:border-box}
nav .container{flex-direction:column;overflow:auto;padding:0;height:100%;/*height:calc(100% - 140px);*/transition:height .2s}
nav.show{-webkit-transform:translateX(0px);-moz-transform:translateX(0px);-ms-transform:translateX(0px);-o-transform:translateX(0px);transform:translateX(0px)}
nav.show ul.main li,nav.show .logo{-webkit-transform:translateX(0px);-moz-transform:translateX(0px);-ms-transform:translateX(0px);-o-transform:translateX(0px);transform:translateX(0px);opacity:1}
nav.show .logo{transition-delay:.15s;-webkit-transform:translateY(0px);-moz-transform:translateY(0px);-ms-transform:translateY(0px);-o-transform:translateY(0px);transform:translateY(0px);opacity:1}
nav.show ul.main li:nth-child(1){transition-delay:.15s}
nav.show ul.main li:nth-child(2){transition-delay:.3s}
nav.show ul.main li:nth-child(3){transition-delay:.45s}
nav.show ul.main li:nth-child(4){transition-delay:.6s}
nav.show ul.main li:nth-child(5){transition-delay:.75s}
nav.show ul.main li:nth-child(6){transition-delay:.9s}
nav.show ul.main li:nth-child(7){transition-delay:1.05s}
nav.show ul.main li:nth-child(8){transition-delay:1.2s}
nav.show ul.main li:nth-child(9){transition-delay:1.35s}
nav.show .about,nav.show .social,nav.show ul.sub{-webkit-transform:translateY(0px);-moz-transform:translateY(0px);-ms-transform:translateY(0px);-o-transform:translateY(0px);transform:translateY(0px);opacity:1;transition-delay:.85s}

@media (min-width: 667px) {
	nav { padding: 40px 40px 70px 45px; }
}
@media only screen and (max-width: 480px) { 
	nav { max-width:none; }
}
nav ul.main{list-style-type:none;max-width:220px}
nav ul.main li{-webkit-transform:translateX(40px);-moz-transform:translateX(40px);-ms-transform:translateX(40px);-o-transform:translateX(40px);transform:translateX(40px);opacity:0;-webkit-transition:all .3s ease;-moz-transition:all .3s ease;-o-transition:all .3s ease;transition:all .3s ease}
nav ul.main li:last-of-type{margin-bottom:0}
nav ul.main li.submenu:before{font: var(--fa-font-solid); content:"\f078";color:#0791cf;float:right;top:0;position:relative}
nav ul.main li.submenu-open:before{font: var(--fa-font-solid); content:"\f077";color:#0791cf;float:right;top:0;position:relative}
nav ul.main li{color:#002532;text-transform:capitalize;font-size:1.5rem;display:block;font-weight:700;padding:15px 0;-webkit-transition:all .3s ease;-moz-transition:all .3s ease;-o-transition:all .3s ease;transition:all .3s ease;cursor:pointer}
nav ul.main li a{color:#002532;text-decoration:none;-webkit-transition:all .3s ease;-moz-transition:all .3s ease;-o-transition:all .3s ease;transition:all .3s ease}
nav ul.main li a span{color:#0791cf}
nav ul.main li:hover{color:#0791cf}
nav ul.main li a:hover{color:#0791cf}
nav .cta { margin: 30px 0; display: block; float: left; width: 100%; }
nav .cta .btn { border:2px solid #0791cf; border-radius: 100px; padding: 10px 25px; color:#002532; font-weight: 600; }
nav .cta .btn:hover { background:#0791cf; color:#FFF; }
nav .cta .btn.two { background:#0791cf; color:#FFF; margin-left: 10px; }
nav .cta .btn.two:hover { border:2px solid #002532; background:#002532; color:#FFF; }
.submenu > ul{transition:max-height .2s ease-in-out,visibility .2s ease-in-out}
.submenu > ul .link{transition:opacity .2s ease-in-out}
.submenu button{width:100%;text-align:left;background:transparent;border:0}
.submenu > a,.submenu > button{position:relative}
.submenu > a::after,.submenu > button::after{display:block;height:11px;width:8px;position:absolute;top:50%;right:15px;-webkit-transform: translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);transition:transform .2s}
.submenu-closed > ul{max-height:0;overflow:hidden;visibility:hidden}
.submenu-closed .link{opacity:0}
.submenu-open > ul{max-height:1000px;visibility:visible;margin:0}
.submenu-open .link{opacity:1}
.submenu .link,.submenu .link a{font-size:18px;line-height: 30px;color:#002532;font-weight:500;margin:20px 0 0;padding:0}
.submenu-open > a::after,.submenu-open > button::after{-webkit-transform:translateY(-50%) rotate(90deg);-ms-transform:translateY(-50%) rotate(90deg);transform:translateY(-50%) rotate(90deg)}
nav .about{margin-top:40px;-webkit-transform:translateY(30px);-moz-transform:translateY(30px);-ms-transform:translateY(30px);-o-transform:translateY(30px);transform:translateY(30px);opacity:0;-webkit-transition:all .4s ease;-moz-transition:all .4s ease;-o-transition:all .4s ease;transition:all .4s ease}
nav .about p{color:#002532;font-family:museo-sans,sans-serif;font-size:1.05rem;letter-spacing:.5px;line-height:170%}
nav .social{-webkit-transform:translateY(30px);-moz-transform:translateY(30px);-ms-transform:translateY(30px);-o-transform:translateY(30px);transform:translateY(30px);opacity:0;-webkit-transition:all .4s ease;-moz-transition:all .4s ease;-o-transition:all .4s ease;transition:all .4s ease;z-index:5;position:absolute;left:0;bottom:0;padding:10px 40px 20px;background-color:#fff}
nav .social ul li{display:inline-block;width:30px;height:30px;margin-right:25px;font-size:30px}
nav .social ul li a{color:#002532;-webkit-transition:all .4s ease;-moz-transition:all .4s ease;-o-transition:all .4s ease;transition:all .4s ease}
nav .social ul li a:hover{color:#0791cf}
nav .social ul li:last-of-type{margin-right:0}
nav ul.sub{position:absolute;bottom:0;left:0;list-style-type:none;-webkit-transform:translateY(30px);-moz-transform:translateY(30px);-ms-transform:translateY(30px);-o-transform:translateY(30px);transform:translateY(30px);opacity:0;-webkit-transition:all .4s ease;-moz-transition:all .4s ease;-o-transition:all .4s ease;transition:all .4s ease;width:100%}
nav ul.sub li a{color:#FFF;font-family:museo-sans,sans-serif;text-transform:capitalize;font-size:1.5rem;font-weight:700;text-decoration:none;background:#0791cf;-webkit-transition:all .3s ease;-moz-transition:all .3s ease;-o-transition:all .3s ease;transition:all .3s ease;width:100%;float:left;padding:40px}
nav ul.sub li a:hover{color:#FFF;background:#002532}

/*-- Nav Overlay --*/
.overlay{position:fixed;top:0;left:0;z-index:4;width:100%;height:100%;-webkit-transition:all .3s ease-in-out;-moz-transition:all .3s ease-in-out;-o-transition:all .3s ease-in-out;transition:all .3s ease-in-out;background-color:#0791cf;opacity:0;visibility:hidden}
.overlay.show{opacity:.8;visibility:visible}

/*-- Hero --*/
.hero { width:100%; height: 100vh; min-height: 800px; max-height: 800px; background:#2d4256; float: left; position: relative; }
.hero:before { width: 100%; height: 100%; display: block; overflow: hidden; object-fit: cover; content: ''; background: linear-gradient(331deg, rgba(0, 0, 0, .5) 0%, rgba(0, 0, 0, 1) 100%); position: absolute; z-index: 2;}
.hero img { width: 100%; height: 100vh; position: absolute; object-fit: cover; }
.hero .background-video { position: absolute; top: 0; right: 0; bottom: 0; left: 0; object-fit: cover; width: 100vw; height: 100%; object-position: center; z-index: 1; }
.hero .text { top: 50%; -ms-transform: translateY(-50%); transform: translateY(-50%); max-width:775px; width: 100%; padding: 0; left:0; right: 0; position: relative; z-index: 2; margin: 0 auto; text-align: center; }
.hero .text .logo { max-width:265px; height: 70px; width:100%; display: block; background-image: url("../images/logo-large.png"); background-repeat: no-repeat; background-size: 100%; margin-bottom: 45px; }
.hero .text h1 { font-size:57px; text-transform: uppercase; font-weight:700; margin:0; padding: 0; color:#FFF; }
.hero .text h1 strong { color:#0791cf; }
.hero .text p { font-size:24px; line-height: 38px; padding: 25px 0; font-weight: 400; color:#FFF; }
.hero .text p:last-child { padding-top:0; padding-bottom: 0; }
.hero .text .btn{border:3px solid #0791cf; border-radius:5px;padding:20px 45px;color:#FFF;font-size:16px;font-weight:700;display:inline-block;line-height:18px;text-transform:uppercase;outline:none; margin: 0 2px;}
.hero .text .btn:hover{background:#0791cf;color:#fff}
.hero .text .btn.white{background:#FFF;margin-left:15px;color:#002532}
.hero .text .btn.white:hover{background:#002532; color: #FFF;}
.hero .image { float:right; max-width: 50%; width: 100%; height: 100vh; display: block; position: absolute; top:0; right:0; overflow: hidden;}
.hero .image:before { content:''; position: absolute; top:0; z-index: 1; width:40vw; height: 100vh; background-image: url("../images/banner-clip.png"); background-size: cover; background-repeat: no-repeat; background-position: bottom left; }
.hero .image img { width:100%; height: 100%; object-fit: cover; object-position: center; }

.hero.switch { min-height: 655px; max-height: 655px; box-shadow: 0px 5px 50px rgb(0 0 0 / 5%); background: #FFF; }
.hero.switch:before { display: none; }
.hero.switch .text { left:10%; text-align: left; }
.hero.switch .text h2 { font-size: 40px; line-height: 50px; color:#000; }
.hero.switch .text h1 { font-size: 54px; line-height: 60px; color:#000; }
.hero.switch .text p { font-size:18px; line-height: 29px; color:#000; }
.hero.switch .text a.btn { color:#000; }
.hero.switch .text a.btn:hover { color:#FFF; }
.hero.switch .image { float:left; max-height: 655px; max-width: 40vw; position: relative; }
.hero.switch .image:before { background-image: url("../images/banner-clip-switch.png"); height: 100%; background-position: center right; max-height: 655px; }

.hero-stats { position: relative; display: flex; gap: 3rem; background: #2C617A; float: left; width: 100%; padding: 30px 0; justify-content: center; }
.stat { text-align: center; }
.stat-num { font-size: 2.4rem; font-weight: 800; color: #FFF; line-height: 1; }
.stat-num span { color: #FFA213; }
.stat-label { color: #FFF; font-size: 0.75rem; font-weight: 500; letter-spacing: 0.12em; text-transform: uppercase; margin-top: 0.25rem; }

/*--- Hero (Sub) --*/
.hero.sub { height: 440px; max-height: 440px; min-height: 440px; overflow: hidden; }
.hero.sub .text { padding: 0; position: relative; }
.hero.sub .image { height:440px; }
.hero.sub .image:before { content:''; position: absolute; top:0; z-index: 1; width:50vw; height: 440px; background-image: url("../images/banner-clip.png"); background-size: contain; background-repeat: no-repeat; background-position: bottom left; }
.hero.sub .image img { width:100%; height: 100%; object-fit: cover; object-position: center; }
.hero.sub .text h1 { font-size: 54px; line-height: 60px; color:#FFFFFF; }
.hero.sub .text h2 { font-size: 18px; line-height: 24px; color:#0791cf; font-weight: 700; margin-bottom: 5px; text-transform: uppercase; }
.hero.sub .text p { max-width: 460px; font-size:18px; line-height: 31px;padding: 5px 0; font-weight: 300; color:#002532; }

/*-- services News --*/
.services { width:100%; height: auto; background: #FFF; float: left; position: relative; }
.services .container { max-width: 1240px; padding:110px 20px; }
.services h1.title { position: relative; font-size:45px; line-height: 50px; color:#002532; font-weight:700; z-index: 2; text-transform: uppercase; }
.services h1.title strong { font-weight: 700; color:#0791cf; }
.services.sub { background: #045A82; padding: 0; }
.services.sub h1.title { color: #FFF; }
.services.sub p { color: #FFF; }
.services.sub .service-card p { color:#000; }
.services .services-header h1 { color: #002532; }
.services.sub .services-header h1 { color: #FFF; }
/* ── SERVICES ── */
.services-header { width:100%; float: left; }
.services-header p { font-size: 18px; line-height: 29px; padding: 20px 0 0 0; color: #000; max-width: 500px; }
.services-header h1 { position: relative; font-size:45px; line-height: 50px; color:#FFF; font-weight:700; z-index: 2; text-transform: uppercase; }
.services-header h1 strong { font-weight: 700; color:#0791cf; }
.services-grid { width: 100%; float: left; display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; margin-top: 50px;}
.service-card { padding: 2rem; border-radius: 10px; background: #ebf6fb; }
.service-icon { width: 60px; height: 60px; margin-bottom: 1.5rem; display: flex; align-items: center; justify-content: center; font-size: 40px; color:#FFA213; }
.service-card h3 { font-size: 18px;; font-weight: 700; text-transform: uppercase; color: #000; margin-bottom: 0.75rem; }
.service-card p { color: #000; font-size: 17px; line-height: 30px; }

/* ── CTA ── */
.cta-section { width: 100%; float: left; background: #033E59; padding: 100px 0; text-align: center; position: relative; }
/*.cta-section:before { width: 100%; height: 100%; display: block; overflow: hidden; object-fit: cover; content: ''; background: linear-gradient(331deg, rgba(207, 142, 6, .8) 0%, rgba(207, 142, 6, 1) 100%); position: absolute; z-index: 2; top: 0; }
.cta-section img { position: absolute; top: 0; right: 0; bottom: 0; left: 0; object-fit: cover; width: 100vw; height: 100%; object-position: center; z-index: 1; }*/
.cta-section .container { max-width: 800px; z-index: 3; position: relative; }
.cta-section h2 { color: #9cd3ec; font-size: 18px; margin-bottom: 1rem; font-weight: 700; text-transform: uppercase; }
.cta-section h1 { font-size: 50px; font-weight: 700; color:#FFF; }
.cta-section p { color: #9cd3ec; padding: 20px 0; font-size: 20px; line-height: 32px; }
.cta-section .btn{border:3px solid #0791cf; border-radius:5px;padding:20px 45px;color:#FFF;font-size:16px;font-weight:700;display:inline-block;line-height:18px;text-transform:uppercase;outline:none; margin: 0 2px;}
.cta-section .btn:hover{background:#0791cf;color:#fff}
.cta-contact { margin-top: 1.5rem; font-size: 1.1rem; font-weight: 600; color: #FFF; }
.cta-contact a:link { color:#FFF; }
.cta-contact a:hover { color:#FFA213; }

/* ── PRODUCTS ── */
.products-section { width:100%; float:left; background: #045A82; padding: 110px 0; }
.products-header { width:100%; float: left; }
.services.sub .products-header h1 { color:#FFF; }
.products-header h1 { position: relative; font-size:45px; line-height: 50px; color:#002532; font-weight:700; text-transform: uppercase; }
.products-header h1 strong { font-weight: 700; color:#0791cf; }
.products-header h2.title { position: relative; font-size:45px; line-height: 50px; color:#FFF; font-weight:700; text-transform: uppercase; }
.products-header h2.title strong { font-weight: 700; color:#0791cf; }
.products-header p { font-size: 18px; line-height: 29px; padding: 20px 0 0 0; color: #002532; max-width: 600px; }
.products-header.home p { color: #FFF; }
.products-list { width:100%; float:left; margin: 50px 0 0 0; display: grid; grid-template-columns: repeat(4, 1fr); gap: 1rem;}
.products-list.three-col { grid-template-columns: repeat(3, 1fr); }
.product-item { background: #033E59; color: #FFF; padding: 1.5rem 1.25rem; border-radius: 2px; font-size: 1rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.05em; line-height: 1.3; border-left: 5px solid #FFA213; }
.products-section.sub { background: #FFF; }
.products-section.sub .products-header h2.title { color:#000; }
.products-section.sub .products-header p { color:#000; }

/*-- Content --*/
.content { width:100%; float:left; padding:100px 0; background:#FFF; }
.content h1 { font-size:45px; line-height: 49px; font-weight:700; color:#002532; margin-bottom: 20px; margin-top:40px; text-transform: capitalize; }
.content h1:first-child { margin-top: 0; margin-bottom: 0; }
.content h1 strong { color:#0791cf; }
.content h2 { font-size:28px; line-height: 38px; font-weight: 700; color:#002532; margin: 10px 0 5px 0; }
.content p { color:#002532; font-size: 18px; line-height: 29px; font-weight: 400; padding: 10px 0; }
.content img { max-width: 100%; object-fit: contain; object-position: top; }
.content ul { list-style: disc; list-style-position: inside; margin: 0 0 20px 0;  }
.content ul li { color:#002532; font-size: 16px; line-height: 31px; font-weight: 300; padding: 5px 0; }
.content ul { list-style: none; padding: 0; margin: 25px 0; }
.content ul li { padding-left: 1.7em; font-size: 18px; line-height: 28px; margin: 5px 0; font-weight: 500; }
.content ul li:before { font: var(--fa-font-solid); content: "\f058"; display: inline-block; margin-left: -1.5em; width: 1.5em; font-size: 20px; color:#00a0df;}
.contact li.error { background-color: #F2DEDE; padding: 8px; border-radius: 4px; margin: 8px 0; }
.content strong, .content em, .content b { font-weight:700; }
.content blockquote { border-left:5px solid #0791cf; font-size:20px; line-height: 36px; color:#002532; font-weight: 300; padding: 10px 0 10px 40px; margin: 40px 0; font-style: italic; }
.content blockquote h1 { font-size: 20px; line-height: 32px; }
.content blockquote p:last-child { padding-bottom:0; margin-bottom: 0; }
.content blockquote strong { font-weight: 700; font-style: normal; }
.contact ul.errors { column-count: auto; column-gap: normal; text-align: left; margin: 20px 0; }
.contact ul.errors li { font-size: 16px; padding: 0; }
.contact ul.errors li:before { content: ""; margin: 0; width:auto; }
.contact .success { width:100%; background:#0791cf1f; padding: 25px 10px; box-sizing: border-box; color:#002532; font-weight: 600; text-align: center; border-radius: 5px; }
.content a:link { color:#0791cf; font-weight: 700; }
.content a:visited { color:#0791cf; }
.content a:hover { color:#002532; }
.content a:active { color:#0791cf; }
.content ul.subnav { width:100%; max-width:250px; column-count:auto; column-gap:normal; float: right; }
.content ul.subnav li { color:#002532; font-size: 18px; line-height: 30px; padding: 5px 0; padding-left:0; font-weight: 600; }
.content ul.subnav li.active { color:#002532; }
.content ul.subnav li.active a:link { color:#002532; }
.content ul.subnav li.active a:visited { color:#002532; }
.content ul.subnav li.active a:hover { color:#002532; }
.content ul.subnav li.active a:active { color:#002532; }
.content ul.subnav li:before { content: none; }
.content ul.subnav li a:link { color:#002532; }
.content ul.subnav li a:visited { color:#002532; }
.content ul.subnav li a:hover{ color:#0791cf; }
.content ul.subnav li a:active { color:#002532; }
.content .btn {border-radius:5px;padding:15px 35px;font-size:16px;font-weight:700;display:inline-block;line-height:22px;margin:0;text-transform:uppercase;outline:none; border:3px solid #0791cf; color:#002632; }
.content .btn:link { color:#002632; font-weight: 600; }
.content .btn:visited { color:#002632; }
.content .btn:hover{background:#0791cf; border:3px solid #0791cf; color:#fff}
.content .btn:active { color:#002632; }

/*-- Gallery --*/
.content .gallery { width:100%; float:left; position: relative; }
.content .gallery #box-container { display: flex; flex-wrap: wrap; justify-content: center; gap: 20px; width: 100%; list-style:none; max-width: 1280px; margin: 0 auto; }
.content .gallery .box { width:100%; margin: 0; padding: 0; list-style: none; position: relative; flex-basis: 400px; }
.content .gallery .box:before { content:none; margin:0; padding:0; }
.content .gallery .box a { width:100%; height: 100%; display: block; }
.content .gallery .box img { width:100%; vertical-align: baseline; display: block; margin: 0; }

.content .gallery .box a:before { content:''; background: rgba(0, 0, 0, 0); position: absolute; left: 0; right: 0; bottom: 0; top: 0; opacity: 0; -webkit-transition: all 0.2s ease; -moz-transition: all 0.2s ease; -ms-transition: all 0.2s ease; -o-transition: all 0.2s ease; transition: all 0.2s ease; }
.content .gallery .box a:hover:before { opacity: 1; content: ''; background: rgba(0, 0, 0, .7); position: absolute; left: 0; right: 0; bottom: 0; top: 0; -webkit-transition: all 0.2s ease; -moz-transition: all 0.2s ease; -ms-transition: all 0.2s ease; -o-transition: all 0.2s ease; transition: all 0.2s ease; }

.content .gallery .box a:hover:after { font-family:'FontAwesome'; font-size: 35px; line-height: 35px; content:"\f067"; color:#FFF; position: absolute; left:0; right:0; margin: 0 auto; top: 50%; -ms-transform: translateY(-50%); transform: translateY(-50%); width: 35px; height: 35px; text-align: center; background:#FFA213; padding: 20px; border-radius: 100%; }

/*-- Contact --*/
#contactForm { padding: 50px 0 0 0; }
.field{margin-bottom:18px;display:flex;flex-direction:column;gap:6px}
.field label{font-size:14px;letter-spacing:.08em;text-transform:uppercase;color:#000;font-weight: 700;}
.field input,.field select,.field textarea{font-size:15px;padding:11px 12px;border:1px solid #e1e1e1;border-radius:5px;background:#FFF;color:#000;-webkit-appearance: none; appearance: none;}
.field select {-webkit-appearance: none; -moz-appearance: none; appearance: none; padding-right: 3rem; background-color: #fff; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='9' viewBox='0 0 14 9' fill='none'%3E%3Cpath d='M1 1.5L7 7.5L13 1.5' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: right 1.25rem center; background-size: 14px 9px; cursor: pointer; }
.field input:focus,.field select:focus,.field textarea:focus{outline:2px solid #002532;outline-offset:1px;border-color:#002532;}
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:14px}
@media (max-width:520px) {
.two-col{grid-template-columns:1fr}
}
.submit-btn{font-size:14px;letter-spacing:.1em;text-transform:uppercase;background:#0791cf;color:#FFF;border:none;padding:14px 24px;border-radius:5px;cursor:pointer;font-weight:600;width:auto;transition:background .15s ease}
.submit-btn:hover{background:#002632;color:#FFF}

.contact-details { width: 100%; float: left; padding: 110px 0; background: #033E59; }
.contact-details .block h2 { font-size: 32px; line-height: 42px; font-weight: 700; color: #FFF; }
.contact-details .block h3 { font-size: 24px; line-height: 32px; font-weight: 700; color: #FFF; }
.contact-details .block p { font-size: 18px; line-height: 32px; font-weight: 400; color: #FFF; padding: 5px 0; }
.contact-details .block p strong { font-weight: 700; }
.contact-details .block p a:link { color:#FFF; font-weight: 600; }
.contact-details .block p a:visited { color:#FFF; }
.contact-details .block p a:hover{color:#0791cf}
.contact-details .block p a:active { color:#FFF; }

/*-- FAQ --*/
.faq { float:left; width:100%; padding: 110px 0; }
.faq .title { font-size:45px; font-weight: 700; color:#002532; text-align: center; }
.acc{margin:20px 0 50px;overflow:hidden;padding:0;float:left;width:100%;display:block}
.acc li{list-style-type:none;padding:0}
.acc li ul li{list-style-type:disc}
.acc li ol{list-style-position:inside}
.acc li ol li{list-style-type:decimal}
.acc_ctrl{background:#FFF;border:none;border-bottom:solid 1px #E1E1E1;cursor:pointer;display:block;outline:none;padding:30px 0;position:relative;text-align:left;width:100%;color:#002532}
.acc_ctrl h2{font-size:20px;line-height:30px;font-weight:700;font-family:"itc-avant-garde-gothic-pro",sans-serif;padding:0 40px 0 0;margin:0}
.acc_ctrl:before{background:#0791cf;content:'';height:5px;margin-right:0;position:absolute;right:0;top:50%;-webkit-transform:rotate(90deg);-moz-transform:rotate(90deg);-ms-transform:rotate(90deg);-o-transform:rotate(90deg);transform:rotate(90deg);-webkit-transition:all .2s ease-in-out;-moz-transition:all .2s ease-in-out;-ms-transition:all .2s ease-in-out;-o-transition:all .2s ease-in-out;transition:all .2s ease-in-out;width:20px}
.acc_ctrl:after{background:#0791cf;content:'';height:5px;margin-right:0;position:absolute;right:0;top:50%;width:20px}
.acc_ctrl.active:before{-webkit-transform:rotate(0deg);-moz-transform:rotate(0deg);-ms-transform:rotate(0deg);-o-transform:rotate(0deg);transform:rotate(0deg)}
.acc_ctrl.active h2,.acc_ctrl:focus h2{position:relative}
.acc_panel{background:#F4FAFC;display:none;overflow:hidden;padding:30px;border-radius:10px;margin-top:25px}
.acc_panel p{font-size:18px;line-height:32px;font-weight:400;margin:20px 0;padding:0}
.acc_panel p strong{font-weight:600}
.content .accordion-menu ul{list-style:none;margin:0;padding:0;box-shadow:0 0 10px #cd0000;overflow:hidden;border-radius:10px}
.content .accordion-menu li.open > ul{display:block}
.content .accordion-menu li > ul{display:none;height:0;overflow:hidden;transition:height 350ms ease-in-out;box-shadow:none;background:#F4FAFC;border-radius:0}
.content .accordion-menu ul.is-visible{display:block}
.content .accordion-menu li{border-bottom:1px solid #c2c2c255;position:relative;overflow:hidden;transition:all .4s ease;padding:0;line-height:inherit}
.content .accordion-menu li:last-child{border:none}
.content .accordion-menu li::after{content:"";display:block;clear:both}
.content .accordion-menu li > a > svg{display:block;position:relative;fill:#0093c9;width:13px;float:right;transition:all .3s ease}
.content .accordion-menu li.open > a > svg{transform:rotate(180deg)}
.content .accordion-menu ul li{padding:0}
.content .accordion-menu ul li.active{font-weight:600}
.content .accordion-menu ul li.active > a{font-weight:600}
.content .accordion-menu ul li a{padding:25px 30px;display:flex;flex-direction:row;justify-content:space-between;align-items:center;text-decoration:none;font-weight:400;font-size:16px;line-height:24px}
.content .accordion-menu a:link{color:#002532}
.content .accordion-menu a:visited{color:#002532}
.content .accordion-menu a:hover{color:#0791cf}
.content .accordion-menu a:active{color:#002532}
.content .accordion-menu a.active,.content .accordion-menu li.parent-active{font-weight:600}
.content .accordion-menu li.parent-active > a{font-weight:600}
.content .accordion-menu ul li.parent-active > ul{display:block;height:auto}
.content .accordion-menu ul li ul li a.active{font-weight:600;border-left:5px solid #0791cf}
.content .accordion-menu ul li ul li.active{font-weight:600;border-left:5px solid #0791cf;padding:0}
.content .accordion-menu ul li ul li a{font-size:14px}
.content .accordion-menu *{box-sizing:border-box}

/*-- Testimonials --*/
.testimonials { width:100%; float:left; padding: 130px 0; background-image: linear-gradient(45deg, #7DC8E3, #0791cf); }
.testimonials.sub { margin-top: 0; }  
.testimonials .block { max-width:1070px; width:100%; }
.testimonials .block:before { font: var(--fa-font-solid); content:"\f078"; color:#66cde7; font-size: 100px; position: absolute; }
.testimonials .block .text { margin-left: 190px; }
.testimonials .block h1 { font-size:34px; line-height: 53px; color:#FFF; font-weight:300; margin: 0 0 40px 0; }
.testimonials .block p { font-size:24px; line-height: 29px; color:#FFF; font-weight:600; }
.testimonials .block span { font-size:18px; line-height: 29px; color:#e0f5fa; font-weight: 400; }
.testimonials .block .btn {border-radius:100px;padding:15px 35px;color:#FFF;font-size:14px;font-weight:600;display:inline-block;line-height:18px;margin:0;text-transform:capitalize;outline:none; border:2px solid #FFF; margin-top: 40px; }
.testimonials .block .btn:link { color:#FFF; }
.testimonials .block .btn:visited { color:#FFF; }
.testimonials .block .btn:hover{background:#0791cf; border:2px solid #0791cf; color:#fff}
.testimonials .block .btn:active { color:#FFF; }

/*-- Footer --*/
footer { width:100%; float:left; padding: 120px 0; position: relative; background:#FFF; }
footer .logo { width:190px; height: 50px; position: relative; background-image: url("../images/logo-color.png"); background-size: 100%; background-repeat: no-repeat; background-position: center; text-indent: -999999px; display: block; margin-bottom: 35px; }
footer .qps { max-width: 100px; margin:0; float: right; }
footer h1 { font-size: 20px; font-weight:600; color:#002532; text-transform: capitalize; margin-bottom: 15px; }
footer ul { margin:0; padding: 0; columns: 2; -webkit-columns: 2; -moz-columns: 2; }
footer ul li { font-size:16px; line-height: 32px; font-weight: 400; margin: 0; display: block; }
footer p a:link { font-weight: 600; } 
footer a:link { color:#002532; }
footer a:visited { color:#002532; }
footer a:hover { color:#0791cf; }
footer a:active { color:#002532; }
footer p { font-size:16px; line-height: 32px; margin: 0; display: block; }
footer ul.social li { display: inline-block; width: 30px; height: 30px; margin-right: 5px; font-size: 30px; }
footer ul.social li a { color:#0791cf; -webkit-transition: all 0.4s ease; -moz-transition: all 0.4s ease; -o-transition: all 0.4s ease; transition: all 0.4s ease; }
footer ul.social li a:hover { color:#002532; }

/*-- Media Queries --*/
@media (min-width: 1355px) {
	.burger { display:none; }
}

@media only screen and (max-width: 1355px) { 
#nav, header .cta { display:none; }
}

@media only screen and (max-width: 1024px) { 
	.hero .text { padding: 60px 2%; }
	.hero.switch .image:before { min-height: 655px; background-position: center right; }
	.hero.switch .text { max-width: 430px; }
	.content .full-profile img { padding-right:20px; }
	.hero.sub .text { max-width: 455px; }
	.hero.sub .text h1 { font-size: 45px; line-height: 50px; }
	footer ul.social li { margin-bottom:15px; }
	footer ul.social li:last-child { margin-bottom:0; }
}
@media only screen and (max-width: 1000px) { 
	.hero .text { padding:60px 3%; }
}

@media only screen and (max-width: 980px) { 
	.services { height:auto; padding-bottom: 50px; }
	.services h1.title { position: relative; }
	.services .text { max-width:none; margin: 40px 0 0 0; }
	.slider { top:0; margin: 40px 0; }
	.testimonials { margin:0; padding: 100px 0; }
	.testimonials .block:before { position:relative; margin-bottom: 40px; display: block; }
	.testimonials .block .text { margin-left:0; }
	.services .container { padding-top:100px; padding-left: 20px; padding-right: 20px; }
	.contact { padding:50px 0; }
}

@media only screen and (max-width: 880px) { 
	header { height:65px; }
	header .logo { top:12px; left: 15px; }
	.burger { top: 10px; right:10px; }
	.hero { min-height:660px; }
	.hero .image, .hero .image:before { min-height:660px; }
	.hero.sub { min-height: 325px; height: 325px; }
	.hero.sub.news { height: 240px; background: #0791cf; min-height: 240px; border-bottom: none; }
	.hero.sub .image, .hero.sub .image:before { min-height: 325px; height: 325px; }
	.hero .text { width: auto; padding: 0 35px;max-width: none;}
	.hero .image { max-width:none; width:100%; }
	.hero.switch .image { max-width:none; }
	.hero .image:before { font-size: 80px; width: 100%; height: 100vh; border-top: none; border-left: none; border-bottom: none; background-color: rgba(0, 147, 201, 0.8); background-image:none; }
	.hero .text h2, .hero .text h1, .hero .text p { color:#FFF; }
	.hero .text .btn { color:#FFF; border: 3px solid #FFF; }
	.hero .text .btn:hover { background: #002532; border: 3px solid #002532; color: #fff; }
	.hero.sub .image:before { background-image:none; }
	.hero.switch .image:before { background-image:none; min-height: stretch; }
	.hero.sub .image:before { font-size: 80px; width: 100%; height: 100vh; border-top: none; border-left: none; border-bottom: none; background-color: rgba(0, 147, 201, 0.8); }
	.hero.switch .text { max-width: none; right: 0; left: 0; width: 100%; box-sizing: border-box; position: absolute; }
	.hero.switch .text h2, .hero.switch .text h1, .hero.switch .text p, .hero.switch .text a.btn { color: #FFF; }
	.hero.sub .text h2 { color:#9eccdd; } 
	.hero.sub .text h1 { color:#FFF; }
	.hero.sub .text p { color:#FFF; }
}

@media only screen and (max-width: 768px) { 
	footer .col { margin-bottom: 40px; width: 50%; }
	footer .col:last-child { margin-bottom: 0; }
	.end p:nth-child(2) { float: left; clear: left; margin: 20px 0 0 0;}
	.hero .text { padding: 0 20px; }
	.content .block { margin-top: 50px; }
	.contact-details .block { margin-bottom: 50px; }
	.contact-details .block:last-child { margin-bottom:0; }
	.content ul.subnav { display: none; }
	.hero.switch .image:before { min-height: inherit; }
	.hero.switch .text { max-width: none; top: 50%; -ms-transform: translateY(-50%); transform: translateY(-50%); }
	footer .col:first-child { width:100% !important; }
	footer .span_1, footer .span_2, footer .span_3 { width:50% !important; margin:10px 0 !important; }
	.content .span_9 { width:100%; }
	.content .span_3 { width: 100%; margin: 40px 0 0 0; }
	.services-grid { grid-template-columns: repeat(2, 1fr); }
	.products-list { grid-template-columns: repeat(2, 1fr); }
	.products-list.three-col { grid-template-columns: repeat(2, 1fr); }
	footer .qps { float: left; }
}

@media only screen and (max-width: 680px) { 
	header .logo { width: 150px; height: 40px; }
	#nav { display: none; }
	.services h1.title { font-size: 55px; line-height: 60px; }
	.services .text p, .hero .text p { font-size: 16px; line-height: 25px; }
	.hero .text p:last-child { padding-top:0; }
	.hero .text .btn.white { margin-top:10px; }
	.testimonials .block:before { font-size: 48px; }
	.testimonials .block h1 { font-size:28px; line-height: 38px; }
	.content ul { column-count: 1; column-gap: 40px; }
	.services-grid { grid-template-columns: repeat(1, 1fr); }
	.products-list { grid-template-columns: repeat(1, 1fr); }
	.products-list.three-col { grid-template-columns: repeat(1, 1fr); }
	.hero-stats { padding: 30px 10px; box-sizing: border-box; }
	.services.sub .services-header h1, .services.sub .products-header h1 { font-size: 34px; line-height: 38px; }
}

@media only screen and (max-width: 520px) { 
	footer .col { width: 100%; }
	.hero .text .logo { max-width: 215px; height: 55px; }
	.hero.sub .text { position: absolute; padding: 0 20px; }
	.hero.sub .text h1 { font-size: 34px; line-height: 44px; }
	.hero.sub .text h2 { margin:0; }
	.content h1.title { font-size:34px; line-height: 38px; margin: 0; }
	.hero .text h1 { font-size:34px; }
	.hero .text h2 { font-size: 35px; line-height: 40px; }
	.hero .text .btn { font-size: 14px; padding: 20px 20px; }
	.services h1.title { font-size: 34px; line-height: 44px; }
	.hero.switch .text { left:0; right:0; }
	.hero.switch .text h1 { font-size: 34px; line-height: 44px; }
	.hero.switch .text h2 { font-size: 34px; line-height: 44px; }
	.products-header h2.title { font-size: 34px; line-height: 44px; }
	.hero.switch .text p { padding: 10px 0; }
	.content h1 { font-size: 24px; line-height: 34px; }
	.content h2 { font-size:20px; line-height: 30px; }
	.accordion-menu { margin-top:40px; }
	.announcement p { font-size:13px; }
	#boxes #dialog { margin:0 20px; }
	.product-item { font-size: .8em; }
	.faq .title { font-size: 34px; line-height: 44px; }
	.cta-section h1 { font-size: 34px; line-height: 44px; }
	footer .logo { width: 150px; height: 40px; }
	footer .col { width: 100% !important; max-width: none; }
}
@media only screen and (max-width: 375px) { 
	.hero.sub { min-height: 300px; height: auto; } 
	.hero.sub .image, .hero.sub .image:before { min-height: 300px; height: 300px; }
	.hero .text .btn.white { margin-top:10px; margin-left: 0; }
}
@media only screen and (max-width: 320px) { 
	header .logo { width: 225px; height: 30px; top: 16px; }
	nav .cta .btn { width:auto; float:left; margin: 5px 0; }
	nav .cta .btn.two { margin-left:0; }
	footer .logo { width:255px; }
	.hero.switch .text h1 { font-size: 42px; line-height: 48px; }
	.hero.sub .text p { font-size:14px; line-height: 24px; }
}