/* Common CSS for All components : Start */
:root {
   scroll-behavior: auto;
}
*,
*::after,
*::before {
 margin: 0;
 padding: 0;
 -webkit-box-sizing: border-box;
 -moz-box-sizing: border-box;
 box-sizing: border-box;
}

html,
body { min-height: 100%; }

html { margin: 0; padding: 0; }
body { margin: 0; padding: 0;font-family: 'Manrope';font-size: 18px;color: #222; line-height: 1.4; font-weight: normal; background: #fff; }

:focus { outline: none; }

a,
button,
input[type=submit] {
  outline: none;
  border: none;
  cursor: pointer;
  text-decoration: none !important;
  transition: all ease-in-out 0.3s;
}

input, textarea {
	-webkit-appearance: none;
	appearance: none;
}

a:hover { text-decoration: none !important; }

img,
svg,
iframe { max-width:100%; }

h1,
h2,
h3,
h4,
h5,
h6 {
  margin: 0;
  padding: 0;
  font-family: 'ProximaNovaBold';
  line-height: 1;
  font-weight: bold;
  color: #fff;
  word-wrap: break-word;
}

h1 { font-size: 54px; }

h2 { font-size: 36px; }

h3 { font-size: 28px; }

h4 { font-size: 16px; }

h5 { font-size: 16px; }

h6 { font-size: 12px; }

p { margin: 0; padding: 0; font-weight: normal; font-size: 18px; line-height: 1.5; color: #222; }

p b,
p strong { font-weight: bold; }

p + p { margin-top: 17px; }

a,
a:hover { color: inherit; }

ul,
ol {
  margin: 0;
  padding: 0;
}

ol li,
ul li { list-style: none; }

.container { width: 100%; padding-right: 15px; padding-left: 15px; margin: 0 auto; }

@media (min-width:576px) {
    .container { max-width: 540px; }
}
@media (min-width: 768px) {
    .container { max-width: 750px; }
}
@media (min-width: 992px) {
    .container { max-width: 970px; }
}
@media (min-width:1280px) {
    .container { max-width: 1270px; }
}
@media (min-width:1800px) {
    .container { max-width: 1702px; }
}

.wrapper_main { position:relative; width:100%; min-height:100%; }

.page_wrapper { position: relative; width: 100%; padding-top: 112px; }

.header_main { position: fixed; top: 0; left: 0; z-index: 100; width: 100%; background: #fff; }
.header_main.fixed { box-shadow: 0 0 3px rgba(0,0,0,0.20); }
.header_main .header_wrap { position: relative; width: 100%; padding: 20px 0; display: flex; justify-content: space-between; align-items: center; }
.header_main .header_wrap .navbar_brand { position: relative; display: flex; }
.header_main .header_wrap .navbar_brand .logo { position: relative; display: flex; }
.header_main .header_wrap .navbar_brand .logo a { display: flex; }
.header_main .header_wrap .navbar_brand .logo a img { display: inline-flex; width: 100%; height: auto; }
.header_main .hamburger { display: none; }
.header_main .navbar { position: relative; }
.header_main .navigation { position: relative; }
.header_main .navigation ul { position: relative; display: flex; column-gap: 24px; }
.header_main .navigation ul li { position: relative; display: flex; }
.header_main .navigation ul li a { display: flex; font-size: 14px; color: #757575; font-weight: 500; text-transform: uppercase; }
.header_main .navigation ul li a:hover,
.header_main .navigation ul li a.active { color: #015C6B; }


.banner_main { position: relative; width: 100%; }
.banner_main .banner_image { position: relative; width: 100%; }
.banner_main .banner_image .image { position: relative; width: 100%; height: 598px; display: flex; overflow: hidden; }
.banner_main .banner_image .image img { position: absolute; top: 0; left: 0; width: 100%; height: 130%; display: flex; object-fit: cover; }
.banner_main .banner_caption { position: absolute; top: 0; left: 0; width: 100%; height: 100%; display: flex; align-items: center; background: rgba(0,0,0,0.70); }
.banner_main .caption_text { position: relative; width: 100%; max-width: 1100px; }
.banner_main .caption_text p { color: #fff; }
.banner_main .caption_text .brand { display: flex; width: 100%; margin: 24px 0; }
.banner_main .caption_text .brand span { display: flex; padding: 16px 20px; font-family: 'ProximaNovaBold'; font-size: 36px; color: #fff; line-height: 1.2222; font-weight: bold; text-transform: uppercase; background: #015C6B; }
.banner_main .caption_text h1 { margin-bottom: 16px; text-transform: uppercase; }


.overview_sec { position: relative; width: 100%; padding: 64px 0; }
.overview_sec .text_wrap { position: relative; width: 100%; max-width: 1230px; margin: 0 auto; }
.overview_sec .text_wrap h2 { position: relative; margin-bottom: 16px; padding-bottom: 20px; color: #015C6B; }
.overview_sec .text_wrap h2:after { position: absolute; bottom: 0; left: 0; width: 100px; height: 4px; background: #015C6B; content: ''; }
.overview_sec .text_wrap p { line-height: 1.6; }


.media_text_sec { position: relative; width: 100%; }
.media_text_sec .image_wrap { position: relative; width: 100%; }
.media_text_sec .image_wrap .image { position: relative; width: 100%; height: 400px; display: flex; overflow: hidden; }
.media_text_sec .image_wrap .image img { position: absolute; top: 9%; left: 0; width: 100%; height: 120%; display: flex; object-fit: cover; }
.media_text_sec .image_caption { position: absolute; top: 0; left: 0; width: 100%; height: 100%; display: flex; align-items: center; background: rgba(0,0,0,0.20); }
.media_text_sec .image_caption .sec_heading { display: flex; width: 100%; }
.media_text_sec .image_caption .sec_heading h2 { padding: 16px 20px; font-size: 36px; color: #fff; line-height: 1.2222; font-weight: bold; text-transform: uppercase; background: #015C6B; }
.media_text_sec .text_wrap { position: relative; width: 100%; padding: 64px 0; }
.media_text_sec .text_wrap .container { max-width: 1230px; }

.media_text_sec .text_wrap .flexrow { display: flex; align-items: flex-start; gap: 64px; }
.media_text_sec .text_wrap .flexrow .textblock { position: relative; min-width: 568px; flex: 1 1 auto; }
.media_text_sec .text_wrap .flexrow .textblock p { font-weight: normal; font-style: normal;line-height: 1.4; }
.media_text_sec .text_wrap .flexrow .textblock p + p { margin-top: 30px; }
.media_text_sec .text_wrap .flexrow .text-block-right { position: relative; min-width: 568px; flex: 1 1 auto; }
.media_text_sec .text_wrap .flexrow .text-block-right ul { display: block; margin: 0; padding: 0; }
.media_text_sec .text_wrap .flexrow .text-block-right ul li { font-weight: normal; font-size: 18px; line-height: 1.4; position: relative; padding-left: 20px; }
.media_text_sec .text_wrap .flexrow .text-block-right ul li::before { position: absolute; left: 0; top: 10px; width: 6px; height: 6px; border-radius: 50%; background-color: #222; content: ''; }
.media_text_sec .text_wrap .flexrow .text-block-right ul li strong { font-weight: 700; }
.media_text_sec .text_wrap .flexrow .text-block-right ul li:not(:last-child) { margin-bottom: 16px; } 

.media_text_sec .text_wrap .flexrow .textblock ul { display: block; margin: 0; padding: 0; }
.media_text_sec .text_wrap .flexrow .textblock ul li { font-weight: normal; font-size: 18px; line-height: 1.4; position: relative; padding-left: 20px; }
.media_text_sec .text_wrap .flexrow .textblock ul li::before { position: absolute; left: 0; top: 10px; width: 6px; height: 6px; border-radius: 50%; background-color: #222; content: ''; }
.media_text_sec .text_wrap .flexrow .textblock ul li:not(:last-child) { margin-bottom: 32px; } 
.media_text_sec .text_wrap .flexrow .textblock ul + p {margin-top: 32px;}



.footer_main { position: relative; width: 100%; }
/*.footer_main .footer-top { max-width: 700px; margin: 0 auto; padding: 64px 0; } */
 .footer-top-content { position: relative; width: 100%; margin-bottom: 44px; max-width: 700px; margin: 0 auto; }
 .footer-top-content ul { display: block; margin: 0; padding: 0; }
 .footer-top-content ul li { list-style: none; display: flex; align-items: center; gap: 5px; }
 .footer-top-content ul li:not(:last-child) { margin-bottom: 16px; }
 .footer-top-content ul li em { font-weight: normal; font-style: normal; font-size: 18px; line-height: 1.4; min-width: 200px; color: #222222; }
.footer_main .footer-top .footer-top-content ul li strong { display: block; font-weight: 700; font-size: 18px; line-height: 1.4; min-width: 450px; color: #222222; }

.contact-dtl {position: relative; max-width: 700px; margin: 0 auto; padding-bottom: 64px;}
.contact-dtl h3 { margin-bottom: 36px; color: #015C6B; position: relative; font-weight: 700; line-height: 100%; text-transform: uppercase; }
.contact-dtl h3::after { position: absolute; left: 0; bottom: -16px; width: 60px; height: 4px; background: #015C6B; content: ''; }
.contact-dtl p { font-family: 'Manrope'; font-weight: normal; font-style: normal; line-height: 1.4; color: #222222; }
.contact-dtl p a { display: inline-flex; margin-left: 10px; font-weight: 700; text-decoration: underline !important; }
.contact-dtl p + p { margin-top: 24px; }
.footer-bottom {position: relative; width: 100%;}
.footer-bottom .textblock { position: relative; width: 100%; background: linear-gradient(270deg, #014656 0%, #013037 100%); padding: 20px 0; text-align: center; }
.footer-bottom .textblock p {color: #fff; font-weight: normal; font-style: normal; text-align: center; }

