@charset "UTF-8";
:root { --turq: #3abfbe; --blue: #274fa7; --grey: #5b6066; }

@font-face { font-family: 'RobotoRegular'; src: url('../webfonts/roboto/roboto-regular.ttf') format('truetype'); }
@font-face { font-family: 'RobotoBlack'; src: url('../webfonts/roboto/roboto-black.ttf') format('truetype'); }
@font-face { font-family: 'RobotoBold'; src: url('../webfonts/roboto/roboto-bold.ttf') format('truetype'); }

body { font-family: 'Poppins', Arial, sans-serif !important; font-size: 16px !important; color: var(--grey); }
main { min-height: 300px; overflow: hidden; }
img { max-width: 100%; height: auto; }
h1, h2 { font-family: RobotoBold; }
h3, h4 { font-family: RobotoBlack; }
h1, h2, h3, h4 { color: var(--blue); font-weight: bold; }
h1 { font-size: 3.5em; }
h2 { font-size: 3em; }
h5 { color: #0c7b48; }
a { color: #29a4a9; }
a:hover { color: var(--blue); text-decoration: none; }
main a[target=_blank][href*="//"]:after { content: ""; display: inline-block; margin-left: .5em; font-family: "Font Awesome 5 Pro"; font-size: .8em; }
h1, h2 { position: relative; margin-bottom: 1rem; }
.home h1, .home h2 { text-align: center; }
input[type=text], textarea, textarea.form-control, select, select.form-control { border: 1px solid #d5d7d6; border-radius: 3px; background-color: #fff; }
input[type=text], textarea, textarea.form-control { width: 100%; padding: .25em 1em; }
body .umbraco-forms-form input.text, body .umbraco-forms-form textarea { max-width: none !important; width: 100%; padding: 0.75em 1em; }
body label.umbraco-forms-label { font-weight: normal; font-size: 1.2em; }
body .field-validation-error { margin-bottom: 1em; display: block; }
.field-validation-valid { margin-bottom: 1em; display: block; min-height: 1em; }
select { padding: .5em; margin-bottom: 1em; width: 100%; background: #fff right no-repeat url("../images/dropdown-bg.png"); background-size: contain; appearance: none; }
.form-group select { padding-right: 38px; overflow: hidden; }
button:focus, button:active { border: 0; outline: 0; }
.h-12 { height: 12em; }
.h-15 { height: 15em; }
.forced-crop { overflow: hidden; height: 300px; background-position: center; background-size: cover; background-repeat: no-repeat; }
#gridContent ul { list-style: none; padding-left: 15px; }
#gridContent ul li::before { content: "•"; color: #00b5e2; font-weight: bold; display: inline-block; width: 1em; margin-left: -1em; }


.heading { color: #fff; text-align: center; background-position: center; }
.heading > div { background: url("../images/circle-brush-blue.png") no-repeat center; height: 300px; display: flex; flex-direction: row; align-items: center; align-content: center; }
.heading .container { display: flex; align-items: center; flex-direction: row; align-content: center; justify-content: flex-end; }
.heading-shade { padding: 1em; margin: 0; display: inline-block; }
.heading h2 { font-size: 2.5em; color: inherit; margin: 0; padding: 0; }
.heading p { margin: .5em 0; }
.heading-shade { max-width: 400px; }
.heading-shade h2 { font-weight: normal; }
.heading-shade > a { color: #29a4a9; }
.heading-shade div a { border: 0; background: none; color: #fff; text-transform: uppercase; margin: 1em 0; font-size: 1.2em; display: inline-block; }
.heading-shade div a:after { content: ""; font-family: "Font Awesome 5 Pro"; display: block; text-align: center; }
.heading .searchForm input[type=text] { width: 336px; padding: 0 1em; }


.headerMedium { min-height: 292px; }
.headerLarge { min-height: 860px; }
.searchForm { position: relative; line-height: 1.5em; }
.searchForm input[type=text] { width: 100%; padding-top: 0; padding-bottom: 0; font-size: .9em; }
.searchForm button[type=submit]::after { content: ""; font-family: "Font Awesome 5 Pro"; color: #29a4a9; font-weight: bold; font-size: .95em; }
.searchForm button[type=submit] { position: absolute; z-index: 2; right: .5em; top: 0; background-color: transparent; padding: 0; box-shadow: none; line-height: inherit; margin: 0; border: 0; }
ul#navigation li:hover > ul { visibility: visible; opacity: 1; }
.navbar-toggler { line-height: 32px; display: none; float: right; margin-top: 14px; }
.navbar-toggler-icon { color: var(--blue); }

.FontIcon { display: inline-block; padding: 2px; margin: 0 1px 0 0; color: var(--blue); font-size: 26px; line-height: 1em; }
.FontIcon:hover { color: #29a4a9; }
.Socicon { width: 32px; height: 32px; display: inline-block; background-repeat: no-repeat; background-position: center; margin-right: .25em; }
.Twitter { background-image: url("../images/socialIcons/twitter-32.png"); }
.Facebook { background-image: url("../images/socialIcons/facebook-32.png"); }
.LinkedIn { background-image: url("../images/socialIcons/linkedin-32.png"); }
.Youtube { background-image: url("../images/socialIcons/youtube-32.png"); }
.Instagram { background-image: url("../images/socialIcons/instagram-32.png"); }
.Pinterest { background-image: url("../images/socialIcons/pinterest-32.png"); }
.TwitterWhite { background-image: url("../images/socialIcons/twitter-32-white.png"); }
.FacebookWhite { background-image: url("../images/socialIcons/facebook-32-white.png"); }
.LinkedInWhite { background-image: url("../images/socialIcons/linkedin-32-white.png"); }
.YoutubeWhite { background-image: url("../images/socialIcons/youtube-32-white.png"); }
.WeChatWhite { background-image: url("../images/socialIcons/wechat-32-white.png"); }
.InstagramWhite { background-image: url("../images/socialIcons/instagram-32-white.png"); }
#LogoBox { padding: .5em 10px; position: relative; }
#LogoBox:after { content: ""; display: block; clear: both; }
.Logo { display: inline-block; overflow: hidden; vertical-align: middle; line-height: 108px; }
.Logo img { vertical-align: middle; max-height: 100px; }
.Logo img[src*=svg] { height: 79px; }
.SiteName { font-size: 38px; color: #787878; vertical-align: middle; display: inline-block; line-height: 70px; font-family: Helvetica-light; padding-bottom: 3px; }
.left-sitename-logo .SiteName { float: left; margin-right: 1rem; }
.left-logo-right-sitename .SiteName { float: right; }
.left-sitename-right-logo #Logo { float: right; }
.right-logo-sitename { text-align: right; }
.right-sitename-logo .SiteName, .right-text-logo #Logo { float: right; }
.right-sitename-logo .SiteName { margin-right: 1rem; }

nav.navbar { background-color: #fff; transition: all .1s; padding-bottom: 1em; }
nav.navbar a { margin: 0 .5em; color: var(--grey); display: block; }


.SubMenu { display: none; background-color: #eee; border-color: transparent; }
.SubMenu.show { display: block; }
.SubMenu .container { max-width: 1140px; }
.SubMenu ul { list-style: none; }

.SubMenu ul li a { display: inline-block; border-bottom: 2px solid transparent; }

.nav-item a { text-transform: uppercase; font-weight: bold; padding: 0.35em 0.5em; }
.DropdownToggle { }
.DropdownToggle::after { display: inline-block; margin-left: 0.255em; vertical-align: 0.255em; content: ""; border-top: 0.3em solid; border-right: 0.3em solid transparent; border-bottom: 0; border-left: 0.3em solid transparent; }

.nav-item.notmega { position: relative; }
.notmega .SubMenu { top: 35px; left: 0; padding: 0; }
.notmega .SubMenu ul { min-width: 12em; position: relative; }

#MenuSearchButton, #MobileSearchButton { border: none; background: none; margin: 0 0 0 1em; }
#MenuSearchButton:before, #MobileSearchButton:before { content: '\f002'; font-family: "Font Awesome 5 Pro"; color: var(--turq); font-weight: bold; font-size: 1.5em; }
#MobileSearchButton { line-height: 32px; float: right; margin-top: 21px; }
#MobileSearchButton:before { color: var(--blue); }

#SearchBox { position: absolute; top: 100%; right: 0; width: 500px; display: none; z-index: 3; background-color: #fff; padding: 1em; }
#SearchBox.show { display: block; }
#SearchBox form { display: flex; flex-direction: row; }

.nav-item a.active:not(.Button) { color: #29a4a9; border-bottom: 4px solid #29a4a9; }
.nav-item a.Button { border-radius: 3px; }
.nav-item a.Button i { margin-left: .25em; }
.nav-item a.Button.Primary { background-color: var(--blue); color: #fff; }
.nav-item a.Button.Secondary { background-color: var(--turq); color: #fff; }
.nav-item a.Button.Tertiary { background-color: #0c7b48; color: #fff; }
.nav-item a.Button.Primary:hover { background-color: #29a4a9; }
.nav-item a.Button.Secondary:hover { background-color: var(--blue); }
.nav-item a.Button.Tertiary:hover { background-color: var(--blue); }


.crumbs { padding: 1em 0; font-size: .9em; line-height: 1.5em; }
.crumbs a, .crumbs { color: #454545; }
.crumbs a, .underline { text-decoration: underline; }
.crumbs a:after { content: ""; margin: 0 .25em 0 .75em; display: inline-block; font-family: "Font Awesome 5 Pro"; font-size: .8em; }
.crumbs-button { float: right; margin: -.25em 0 0 1em; background-color: #29a4a9; color: #fff; border-radius: 5px; border: 0; padding: .5em .75em; box-shadow: 3px 3px 6px rgba(0,0,0,.3); }
.crumbs-button:hover { background-color: var(--blue); }

.top-sticky { background-color: rgba(55,55,55,.9); color: #fff; text-align: center; padding: 1em 2em; position: fixed; bottom: 0; left: 0; width: 100%; box-sizing: border-box; z-index: 100; }

#CookieNotice a { color: #fff; margin: 0 1em; }
#CookieNotice button { color: #fff; margin: 0 1em; }

.sidebar h5 { background-color: var(--blue); color: #fff; padding: .5em; }

.subnav { margin: 1em 0 2em 0; }
.subnav ul { list-style: none; padding: 0 0 0 .5em; margin-bottom: .75em; }
.subnav ul ul { margin-left: .5em; }
.subnav a { color: #454545; }
.subnav a:hover, .subnav a.active { color: #749fbb; }
.subnav a.active:before { content: ""; font-family: "Font Awesome 5 Pro"; position: absolute; left: -1em; }
.subnav li { clear: both; position: relative; padding: 0; margin-bottom: .5em; }
.subnav ul li button { background-color: transparent; border: 0; padding: .1em .5em; line-height: inherit; font-family: "Font Awesome 5 Pro"; float: right; margin: 0 0 0 .5em; }
.subnav ul li button:after { content: ""; display: inline-block; transition: .3s transform ease-in-out; color: #29a4a9; }
.subnav > ul > li > button[aria-expanded=true]:after { transform: rotate(180deg); color: var(--blue); }
.subnav h4 { color: var(--blue); text-transform: uppercase; font-size: 1.1em; font-weight: bold; }
.alternatingOdd > *:nth-child(odd) { background-color: #e5e5e5; }
footer { background-color: #f7f7f7; line-height: 1.1em; }
footer a { color: inherit; }
footer a:hover { color: #29a4a9; }
footer h3 { color: var(--blue); text-transform: uppercase; font-size: 1.25em; margin-bottom: 1em; }
footer ul { list-style: none; margin: 0; padding: 0 0 0 0; }
footer ul li { margin: .25em 0 1em 0; }
footer .footer-strap { background-color: #454545; text-align: center; }
footer .footer-strap a:hover { color: var(--blue); }
footer i { font-size: 32px; margin: 0 3px; vertical-align: middle; }
footer ul li img { margin: 0 2px; max-height: 32px; vertical-align: middle; display: inline-block; }
.footer-strap { color: #fff; padding: 10px 0; }
footer h3 { font-weight: bold; }

a.boldlink { font-weight: bold; text-decoration: none; text-transform: uppercase; }

@keyframes imageoverspan {
    from { background-size: 100% 100%; }
    to { background-size: 110% 110%; }
}

#Carousel { position: relative; }
.carousel-item { position: relative; height: 100%; animation-duration: 10s; animation-timing-function: linear; background-position: center; animation-direction: alternate; animation-iteration-count: infinite; background-blend-mode: overlay; background-size: cover; }
.carousel-item .carousel-item-wrap { height: 100%; max-width: 1280px; margin: 0 auto; color: #fff; padding: 1em 0; display: flex; flex-direction: row; flex-wrap: nowrap; align-content: center; justify-content: flex-start; align-items: center; }
#Carousel .carousel-indicators { padding: 3px 0 4px 0; margin: 0; bottom: -2.5em; display: none; }
.carousel-indicators li { background-color: var(--blue); }
.carousel-item h1, .carousel-item h2, .carousel-item p, .carousel-item a { color: #fff; text-shadow: 0 0 3px rgba(0,0,0,.2); line-height: 1.2em; }
.carousel-item h1:before, .carousel-item h2:before, .heading h1:before, .heading h2:before { display: none; }
.carousel-item h1 { line-height: 1em; font-size: 5rem; }
.carousel-item h2 { font-weight: normal; }
.carousel-item p { font-size: 1.2em; }
.carousel-item .carousel-text a { display: inline-block; text-decoration: none; font-size: 1.1em; padding: .75em 2em; margin-top: 1em; color: #fff; text-transform: uppercase; background-color: var(--blue); font-weight: bold; border-radius: 3px;}
.carousel-item .carousel-text a:hover { background-color: #6d84d0; }
.carousel-item iframe { width: 100%; height: 100%; }
.carousel-item.video { width: 100%; height: 38vw; overflow: hidden; }
.carousel-item.video:after { display: block; content: ""; position: absolute; z-index: 3; width: 100%; height: 100%; left: 0; top: 0; }
.carousel-item .videoholder { width: 160%; height: 160%; bottom: -30%; left: -30%; }
.carousel-text { display: flex; flex-direction: column; text-shadow: 0 0 5px rgba(128,128,128,.2); width: clamp(650px,800px,80%); align-content: flex-start; align-items: flex-start; justify-content: center; position: relative; }
#Carousel .carousel-inner { height: 36vw; }

#Carousel .overlay-97999b { background-color: #97999b; }
#Carousel .overlay-e5e5e5 { background-color: #e5e5e5; }
#Carousel .overlay-fafafa { background-color: #fafafa; }
#Carousel .overlay-ffffff { background-color: #ffffff; }
#Carousel .overlay-1f3693 { background-color: var(--blue); }
#Carousel .overlay-29a4a9 { background-color: #29a4a9; }
#Carousel .overlay-0c7b48 { background-color: #0c7b48; }
#Carousel .overlay-3abfbe { background-color: #79a9a9; }

.carousel-control-next, .carousel-control-prev { z-index: 3; }

#CarouselSearch { position: absolute; bottom: 2vw; width: 100%; }
#CarouselSearch form { background-color: #fff; width: 100%; max-width: 1250px; margin: 0 auto; display: flex; border-radius: 3px; padding: 3px; }
#CarouselSearch input[type=text] { border: none; padding: 0.5em 1em; background-color: #f7f7f7; border-radius: 3px; font-size: 1.25em; }
#CarouselSearch button[type=submit] { border: none; background: none; padding: 0em 1.5em; }
#CarouselSearch button[type=submit]:before { content: '\f002'; color: var(--turq); font-family: "Font Awesome 5 Pro"; font-weight: bold; font-size: 2em; }

@keyframes itemfadein {
    from { opacity: 0; }
    to { opacity: 1; }
}

@keyframes itemfadeout {
    from { opacity: 1; }
    to { opacity: 0; }
}

@keyframes itemrunin {
    from { top: -100%; }
    to { top: 0; }
}

@keyframes itemrunout {
    from { top: 0; }
    to { top: -100%; }
}

.carousel-item .carousel-item-wrap .carousel-text { animation-duration: .6s; animation-timing-function: ease-in-out; }
.carousel-item.carousel-item-next .carousel-item-wrap > *, .carousel-item.carousel-item-prev .carousel-item-wrap > *, .carousel-item.carousel-item-next .carousel-item-wrap, .carousel-item.carousel-item-prev .carousel-item-wrap { opacity: 0; }
.carousel-item.carousel-item-next.Fadein .carousel-item-wrap > *, .carousel-item.carousel-item-next.Toptomiddle .carousel-item-wrap > *, .carousel-item.carousel-item-next.Fadein .carousel-item-wrap, .carousel-item.carousel-item-next.Toptomiddle .carousel-item-wrap, .carousel-item.carousel-item-prev.Fadein .carousel-item-wrap > *, .carousel-item.carousel-item-prev.Toptomiddle .carousel-item-wrap > *, .carousel-item.carousel-item-prev.Fadein .carousel-item-wrap, .carousel-item.carousel-item-prev.Toptomiddle .carousel-item-wrap { animation-name: none; }
.carousel-item.Fadein .carousel-item-wrap > * { animation-name: itemfadein; }
.carousel-item.Toptomiddle .carousel-item-wrap > * { animation-name: itemrunin; }
.carousel-item.carousel-item-right.Fadein .carousel-item-wrap > *, .carousel-item.carousel-item-left.Fadein .carousel-item-wrap > * { animation-name: itemfadeout; }
.carousel-item.carousel-item-right.Toptomiddle .carousel-item-wrap > *, .carousel-item.carousel-item-left.Toptomiddle .carousel-item-wrap > * { animation-name: itemrunout; }

@keyframes backgroundfadein {
    from { opacity: 0; }
    to { opacity: 1; }
}

.carousel-item.Fadein .carousel-item-wrap { animation-name: backgroundslide; animation-duration: .4s; animation-timing-function: ease-in-out; background-size: cover; background-attachment: scroll; }

@keyframes backgroundslidein {
    from { left: 100%; }
    to { left: 0%; }
}


.HomeCTA { background-color: var(--turq); color: #fff; padding: 5em 0; text-align: center; max-width: 100%; }
.home .HomeCTA { margin-top: 0; }
.HomeCTA h2 { color: #fff; margin-bottom: 1em; }
.HomeCTA a { display: inline-block; background-color: #fff; color: var(--turq); font-weight: bold; text-transform: uppercase; padding: 0.25em 1.5em; font-size: 2em; border-radius: 3px; min-width: 450px; max-width: 100%; }
.HomeCTA a:hover { background-color: var(--turq); color: #fff; }

.Breakout { position: relative; }
.Breakout:after { content: ''; position: absolute; left: calc(-50vw + 50%); top: 0; width: calc(100vw - 9px); height: 100%; z-index: -1; background-color: inherit; }

.carousel-item.Toptomiddle .carousel-item-wrap { animation-name: backgroundslidein; animation-duration: .3s; animation-timing-function: ease-in-out; position: relative; }
.image3 > a { max-width: 33.33%; padding: 0; margin: 0; background: none; margin-right: -3px; box-sizing: border-box; border-right: 1px solid #fff;display:inline-block; }
.heading.Black > .container > h2, .heading.Black .heading-shade { background-color: rgba(0,0,0,.75); }
.heading.Gray > .container > h2, .heading.Gray .heading-shade { background-color: rgba(33,33,33,.75); }
.heading.Blue > .container > h2, .heading.Blue .heading-shade { background-color: rgba(0,79,156,.75); }
.heading.Lime > .container > h2, .heading.Lime .heading-shade { background-color: rgba(120,190,32,.75); }
.heading.Yellow > .container > h2, .heading.Yellow .heading-shade { background-color: rgba(255,199,44,.75); }
.heading.Orange > .container > h2, .heading.Orange .heading-shade { background-color: rgba(254,80,0,.75); }
.heading.Red > .container > h2, .heading.Red .heading-shade { background-color: rgba(210,38,48,.75); }
.heading.Pink > .container > h2, .heading.Pink .heading-shade { background-color: rgba(197,41,155,.75); }
.heading.Purple > .container > h2, .heading.Purple .heading-shade { background-color: rgba(100,38,103,.75); }
.heading.Green > .container > h2, .heading.Green .heading-shade { background-color: rgba(120,190,32,.75); }
.heading.Dark-Green > .container > h2, .heading.Dark-Green .heading-shade { background-color: rgba(89,98,29,.65); }
.heading.Light-Blue > .container > h2, .heading.Light-Blue .heading-shade { background-color: rgba(0,181,226,.65); }
.heading.White > div { background-image: url("../images/circle-brush-white.png"); color: var(--blue); }
.heading.Blue > div { background-image: url("../images/circle-brush-blue.png"); }
.heading.Blue-2 > div { background-image: url("../images/circle-brush-blue-2.png"); }
.heading.Green > div { background-image: url("../images/circle-brush-green.png"); }
.heading.Light-Blue > div { background-image: url("../images/circle-brush-light-blue.png"); }
.heading.Purple > div { background-image: url("../images/circle-brush-purple.png"); }
.corner-btn { font-weight: bold; text-transform: uppercase; }
.corner-btn:after { content: ""; font-family: "Font Awesome 5 Pro"; font-size: 1.8em; transform: rotate(45deg); display: inline-block; vertical-align: middle; margin-left: .2em; }
.corner-btn-large:after { font-size: 4em; float: right; margin-top: -.3em; }
.right { float: right; }
.title-image .btn-download { background-color: #0c7b48; font-size: .8rem; position: absolute; right: 1em; bottom: 1em; box-shadow: 1px 1px 3px rgba(0,0,0,.3); }
.btn-download:after { content: ""; font-family: "Font Awesome 5 Pro"; font-size: 1.2em; display: inline-block; vertical-align: middle; margin-left: .2em; }
.bg1 { background-color: #fafafa !important; }
.bg1 h4 { color: var(--blue); }
.bg2 { background-color: #e5e5e5; }
.bg2 h5 { color: #000; }
.bg3 { background-color: #d9d9d9; }
.bg4 { background-color: #eee; }
.bg-dark-gray { background-color: #454545; }
.bg-blue { background-color: var(--blue); }
.bg-light-blue { background-color: #00b5e2; }
.bg-aqua { background-color: #018eaa; }
.bg-primary-blue { background-color: var(--blue); color: #fff; }
.bg-green { background-color: var(--turq); }
.bg-green * { color: #fff; }
.bg-green a { color: var(--blue); }
.bg-green a:hover { color: #fff; }
.bg-green h3 { color: var(--blue); font-weight: bold; }
.bg-green h5 { font-size: 1rem; margin: 1em 0 0 0; }
.bg-black { background-color: #000; }
.bg-blue, .bg-light-blue, .bg-aqua, .bg-blue h3, .bg-light-blue h3, .bg-aqua h3, .bg-blue h5, .bg-light-blue h5, .bg-aqua h5, .bg-blue .corner-btn, .bg-light-blue .corner-btn, .bg-aqua .corner-btn, .bg-black a, .bg-black h5, .bg-black h3, .bg-black .corner-btn, .bg-black .btn, .bg-primary-blue h5, .bg-primary-blue a { color: #fff; }
.bg-blue .btn:hover { background-color: #29a4a9; }
.bg-fafafa { background-color: #fafafa; }
.bg-f4f4f4 { background-color: #f4f4f4; }
.twoblueswish { position: relative; overflow: hidden; padding: 85px 0; top: -85px; margin-bottom: -85px; }
.twoblueswish > div { background-color: #29a4a9; padding: 85px 0; }
.twoblueswish:before, .twoblueswish > div:before { content: ""; position: absolute; background-repeat: no-repeat; background-position: center; z-index: 0; }
.twoblueswish:before { width: 1748px; height: 414px; top: -89px; right: 50%; background-image: url("../images/blue-brush-left-1.png"); }
.twoblueswish > div:before { width: 1727px; height: 558px; bottom: 10px; left: 50%; background-image: url("../images/blue-brush-right-1.png"); }

.HomeServices { padding: 3em 0; }
.HomeServices h2 { margin: 1em 0 2em 0; }
.HomeServices .Slider .Slide { flex-wrap: nowrap; justify-content: flex-start; }
.HomeServices .container { overflow: hidden; position: relative; }
.HomeServices .Slide { position: relative; transition: all 0.2s; margin: 0 auto;max-width:1100px; display: grid; grid-template-columns: auto auto auto; justify-content: space-between; align-content: center; justify-items: center; }
.ServiceItem { border-radius: 10px; text-align: center; display: flex; flex-direction: column; align-content: space-between; padding: 0; justify-content: flex-start; margin: 0 0 2em 0; color: #5c6167; width: 250px; }
.HomeServices .Slider .Slide .ServiceItem { margin: 0 1%; }
.ServiceItem h3 { min-height: 3em; padding: 0; margin: 1em; color: var(--grey); font-size: 1.1em; text-transform: uppercase; font-weight: bold; }
.ServiceItem p { padding: 0 0 1em 0; line-height: 1.1em; }
.ServiceItem a { display: inline-block; color: #fff; text-transform: uppercase; padding: 0.5em 1.5em; font-weight: bold; font-size: 1.2em; background-color: var(--turq); margin: auto auto 0 auto; border-radius: 3px; }
.ServiceItem:before { content: var(--glyph); font-family: 'Font Awesome 5 Pro'; font-size: 6em; display: block; margin: 0.5rem auto; color: var(--blue); font-weight: lighter; }
.HomeServices .Slider .ServiceItem { flex: 0 0 287px; }

.ServiceList { display: grid; grid-template-columns: auto auto auto; grid-gap: 2%; clear: both; padding-bottom: 2em;justify-content:space-evenly; }

slidercontrol { position: absolute; height: 100%; top: 0; cursor: pointer; display: flex; flex-direction: row; justify-content: center; flex-wrap: nowrap; align-content: center; align-items: center; z-index: 3; }
slidercontrol[direction="left"] { left: 0; }
slidercontrol[direction="right"] { right: 0; }
slidercontrol:before { font-family: 'Font Awesome 5 Pro'; color: var(--blue-main); font-size: 1.25em; display: block; background-color: var(--grey-neutral); border-radius: 10px; width: 62px; height: 40px; margin: 0; text-align: center; line-height: 40px; }
slidercontrol[direction="right"]:before { content: '\f054'; }
slidercontrol[direction="left"]:before { content: '\f053'; }

.twoblueswish .col-4:nth-child(3n-1) .ServiceItem a { background-color: #0c7b48; }
.ServiceItem a:hover, .twoblueswish .col-4:nth-child(3n-1) .ServiceItem a:hover { background-color: var(--blue); }

.HomeFeatures { padding: 3em 0; }
.HomeFeatures .container { display: flex; flex-direction: row; flex-wrap: nowrap; align-content: flex-start; justify-content: space-between; align-items: flex-start; }
.HomeFeatures h2 { margin: 1em 0 2em 0; }
.FeatureBlock { color: inherit; cursor: pointer; transition: transform .2s; margin-bottom: 1.5em; display: flex; flex-direction: column; align-content: center; justify-content: flex-start; flex: 0 0 32%; }
.FeatureBlock h3 { margin-bottom: 1.5em; }
.FeatureBlock img { display: block; margin: 0 0 1em 0; }


#Counters { padding: 2em 0; margin-top: 2em; }
#Counters .container { display: flex; flex-direction: row; flex-wrap: nowrap; align-content: flex-start; justify-content: space-between; align-items: flex-start; }
#Counters h2 { margin: 0 0 2em 0; }
.CounterBlock { display: block; text-align: center; color: var(--blue); padding: 0 1em; margin-bottom: 1.5em; flex-basis: 100%; }
.CounterBlock i { font-size: 90px; margin-bottom: 1rem; }
.CounterBlock .CounterNumber { display: block; font-size: 1.5em; font-weight: bold; }
.CounterBlock h5 { color: var(--grey); }


.bubbles { background: no-repeat center url("../images/bubbles.jpg"); color: #fff; padding: 2em; }
.bubbles * { color: inherit; }
.bubbles h4 { min-height: 15em; margin-top: 1em; }

#HomeNews { padding: 6em 0; background-color: #f9f9f9; }
#HomeNews h2 { margin-bottom: 2em; }
#HomeNews .container { display: flex; flex-direction: row; flex-wrap: nowrap; align-content: flex-start; justify-content: space-between; align-items: stretch; }
#HomeNews .container > div { flex: 0 0 49%; }

.FirstNews { display: flex; flex-direction: column; }
.FirstNews .readmore { margin-top: auto; }
.FirstNews img { margin-bottom: 1em; }

.SecondNews { display: flex; flex-direction: column; justify-content: space-between; }

.newsblock { background-color: #fff; padding: 2em 1em; color: inherit; position: relative; display: flex; flex-direction: column; align-content: flex-start; justify-content: flex-start; align-items: flex-start; }
.newsblock:not(:last-child) { margin-bottom: 1em; }
.newsblock h4 { font-size: 1.1em; }
.newsblock h5, .FirstNews h5 { font-size: 1em; color: inherit; text-transform: uppercase; }

.short { max-height: 5.75em; overflow: hidden; }

#blogs .title h2 { color: #fff; }
.txtshadow { text-shadow: 0 0 5px rgba(0,0,0,.3); }
.title-image { background-color: #c0c0ca; min-height: 262px; background-position: bottom; background-repeat: no-repeat; position: relative; background-size: cover; }
.title-image h1, .title-image h2, .title-image h3, .title-image h4, .title-image h5 { color: #fff; text-shadow: 0 0 5px rgba(0,0,0,.3); }
.title-image a.corner-btn { color: #ffc72c; position: absolute; right: .5em; bottom: 0; }
.image-block { background-position: center 4.5em; background-repeat: no-repeat; border: 1px solid #ddd; text-transform: uppercase; height: 100%; background-size: 100% 50%; }
.image-block a { display: block; margin: 0 0 185px 0; }
.image-block h5 { margin-top: 1em; color: #000; }
.pagination { clear: both; margin: 2em 0 0 0; display: block; }
.pagination a { display: inline-block; padding: .25em .5em; margin: 4px; border: 1px solid #29a4a9; }
.pagination a.active { color: #fff; background-color: #29a4a9; }
.pagination > * { vertical-align: middle; }
.event-item > a { color: #fff; font-size: 2em; display: block; }
.readmore, .btn, #gridContent .readmore, #gridContent .btn, input.btn-primary { text-align: center; display: inline-block; padding: .5em 2em; font-size: 1rem; text-transform: uppercase; font-weight: bold; color: #fff; border-radius: 3px; background-color: var(--turq); min-width: 150px; line-height: 1.1em; border: none; }
.readmore:hover, .btn:hover, #gridContent .readmore:hover, #gridContent .btn:hover, input.btn-primary:hover { }
.btn.alt { background-color: #29a4a9; color: #fff; text-decoration: none; font-size: .9em; margin: .5em 0; }
.btn.alt:hover { background-color: var(--blue); }
.readmore.forward:after { content: ""; font-family: "Font Awesome 5 Pro"; margin-left: .5em; }
.hilite { background-color: rgba(0,101,225,.3); }
.newsitem1 { position: relative; top: -3em; left: 1em; }
.btn-link { font-weight: 400; color: #007bff; text-decoration: none; outline: 0; background-color: transparent; }
.btn-link:focus, .btn-link.focus { text-decoration: none; }
.btn:focus, .btn.focus { box-shadow: none; }
#gridContent .btn-secondary { background-color: #29a4a9; }
.Round { border-radius: 50%; }
.GridHolder { background-color: #f4f4f4; padding: 2em 0; }

#world { padding: 3em 0 200px 0; text-align: center; background-image: url(../images/footer-brush-purple.png); background-position: bottom; background-repeat: no-repeat; }
#world h2 { margin-bottom: 1em; }
#world img { display: block; margin: 0 auto 1em auto; }

#world a, .regionLabs a { display: inline-block; color: #454545; text-decoration: none; border-bottom: 3px solid transparent; margin: 1em; min-width: 130px; text-align: center; font-size: 1.3em; }
#world a:hover, .regionLabs a:hover { color: var(--blue); border-bottom: 3px solid #29a4a9; }
#world a:after, .regionLabs a:after { display: none; }
.regionLabs { }

.event-item { height: 300px; }
#publications h2, #homenews h2, #world h2 { font-size: 3em; }
#publications h2 { float: left; }
.clear { clear: both; }
.publication-item { display: flex; flex-direction: column; color: #fff; min-height: 300px; background-position: center; background-repeat: no-repeat; position: relative; background-size: cover; padding: .5em; align-content: center; justify-content: flex-end; align-items: flex-start; transition: transform .2s; }
.publication-item > div { margin: 0 0; z-index: 1; }
.publication-item > div:first-child { font-weight: bold; }
.publication-item:before { content: ""; display: block; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-color: rgba(0,0,0,.35); z-index: 0; }
.publication-item:after { content: ""; font-family: "Font Awesome 5 Pro"; color: inherit; font-size: 2em; position: absolute; top: .5em; right: .5em; line-height: 1em; }
.publication-item:hover { color: #fff; box-shadow: 0 0 8px rgba(0,0,0,.25); transform: scale(1.04); }
.bigQuote { font-size: 2em; color: #454545; }
.bigQuote:before { content: ""; font-family: "Font Awesome 5 Pro"; }
.bigQuote:after { content: ""; font-family: "Font Awesome 5 Pro"; }
table { background-color: #fafafa; }
table thead { background-color: #29a4a9; color: #fff; }
table th, table td { border-right: 2px solid #fafafa; }
.table-hover a { display: block; color: #000; }
.table-hover tbody tr:hover { background-color: #a3a3a3; }
.table-hover tbody tr:hover a:after { content: "View"; display: inline-block; padding: .2em .5em; font-size: .8em; background-color: #29a4a9; color: #fff; float: right; border-radius: 3px; }
table.dataTable.table-striped thead th, table.dataTable.table-striped thead td, table.dataTable.table-striped.no-footer { border-bottom: 0; }
.overform { position: fixed; top: 0; right: 0; z-index: 300; width: 600px; height: 100%; background-color: #fff; box-shadow: 0 0 7px rgba(0,0,0,.3); display: none; }
.BTT { 
    position: fixed; 
    bottom: 20px; 
    right: 20px; 
    z-index: 299; 
    padding: 12px 15px; 
    box-shadow: 0 2px 10px rgba(0,0,0,0.3); 
    color: #fff; 
    background-color: var(--blue); 
    border: 0; 
    font-size: 1em; 
    line-height: 1em; 
    border-radius: 4px; 
    transition: all 0.3s ease;
    cursor: pointer;
}
.BTT:hover {
    background-color: var(--turq);
    transform: translateY(-3px);
    box-shadow: 0 4px 15px rgba(0,0,0,0.4);
}
.BTT.hidden {
    opacity: 0;
    visibility: hidden;
}
.bttLeft { left: 20px; right: auto; }
.arrow-only {
    background-color: transparent !important;
    border: none !important;
    box-shadow: none !important;
    padding: 8px !important;
}
.arrow-only:hover {
    background-color: transparent !important;
    box-shadow: none !important;
    transform: translateY(-5px);
}
.arrow-only i {
    color: var(--blue);
    font-size: 1.8em;
}
iframe { max-width: 100%; width: 100%; border: 1px solid #ededed; height: 600px; }
.mapSection { margin: 1rem 0 3rem 0; }
.mapWrap { position: relative; margin: 0 auto; display: table; }
.mapWrap > div { position: absolute; bottom: 0; right: 0; }
.mapWrap > div > img { opacity: 0; transition: opacity linear .25s; }
.map-arrow.left-arrow { text-align: left; }
a.map-arrow:hover span { color: #fff; }
.map-arrow { position: absolute; text-align: right; font-size: 1.25rem; height: 60px; width: 150px; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; padding: 5px; background: #d22630; color: #fff; display: table; display: none; transition: opacity linear .25s; transition-delay: .25s; box-shadow: 1px 1px 2px rgba(0,0,0,.8); text-decoration: none; }
.map-arrow.left-arrow img { left: auto; right: 5px; }
.map-arrow img { position: absolute; left: 5px; top: 5px; max-width: 50px; max-height: 85%; }
.map-arrow.left-arrow span { padding-left: 0; padding-right: 55px; }
.map-arrow span { display: table-cell; vertical-align: middle; padding-left: 55px; }
.map-arrow span.smallTxt { font-size: .75rem; text-align: left; }
.map-arrow .arrow { width: 0; height: 0; display: block; border-left: 30px solid #d22630; border-top: 30px solid transparent; border-bottom: 30px solid transparent; position: absolute; top: 0; right: -30px; }
.map-arrow.left-arrow .arrow { border-right: 30px solid #d22630; border-top: 30px solid transparent; border-bottom: 30px solid transparent; border-left: 0; position: absolute; left: -30px; }
.MapNote { position: absolute; bottom: -1em; left: 1em; }
#north-america { position: absolute; top: 0; left: 0; }
#latam { position: absolute; bottom: 0; left: 0; }
#africa { position: absolute; bottom: 0; right: 0; }
#emei { position: absolute; top: 0; right: 0; }
#apac { position: absolute; bottom: 0; right: 0; }
#north-america .map-arrow { top: 35%; left: 15px; }
#latam .map-arrow { top: 30%; left: 90px; }
#emei .map-arrow { top: 35%; right: 150px; }
#africa .map-arrow { top: 20%; left: 150px; }
#apac .map-arrow { top: 50px; left: 115px; }
.mapWrap > div.active > img { opacity: 1; }
.mapWrap > div.active .map-arrow { display: table; }
.sitemap > ul { padding: 0; list-style: none; border-bottom: 2px solid var(--blue); padding-bottom: 1em; margin-bottom: 1em; }
.sitemap > ul a { color: #000; }
.sitemap > ul > li > a { font-weight: bold; color: var(--blue); }
.sitemap > ul > li > ul { padding: 0; list-style: none; }
.sitemap > ul ul { list-style-type: disc; color: #29a4a9; }
.blocklist { padding: 0; list-style: none; }
.blocklist a { color: #29a4a9; padding: 1em 0; border-bottom: 2px solid #454545; display: block; font-weight: bold; }
.sidebar-item { color: #fff; font-size: 1.2em; font-weight: bold; text-shadow: 0 0 5px rgba(66,66,66,.75); background-size: contain; background-repeat: no-repeat; display: block; max-width: 255px; position: relative; }
.sidebar-item > div { padding: .5em; }
.sidebar-item .readmore { display: block; font-size: .8em; margin: .5em; padding: .1em .5em; }
.sidebar-item:after { content: ""; display: block; clear: both; }
.sidebar-item.overlay > div { position: absolute; top: 0; left: 0; width: 100%; padding-right: 23%; }
.sidebar-item.overlay > .readmore { position: absolute; bottom: 0; right: 0; }
.sidebar-title { background-color: var(--blue); color: #fff; padding: .25em; margin-top: 1em; }
.mega-menu-bg { background-color: #e7e8ea; }
.btn:hover { background-color: #003593; color: #fff; }

.AbsBottom { bottom: -3px; left: 15px; width: 100%; position: absolute; }
.SidebarSocial { width: 70px; height: 70px; float: left; display: block; margin: .5em; background-repeat: no-repeat; background-position: center; background-size: cover; }
.SidebarSocial.LinkedIn { background-image: url("../images/socialIcons/linkedin-80.png"); }
.SidebarSocial.Twitter { background-image: url("../images/socialIcons/twitter-80.png"); }
.SidebarSocial.Facebook { background-image: url("../images/socialIcons/Facebook-80.png"); }
.FooterSocial { width: 32px; height: 32px; float: left; display: block; margin: 0 2px; background-repeat: no-repeat; background-position: center; background-size: cover; color: #29a4a9; }
.FooterSocial.LinkedIn { background-image: url("../images/socialIcons/icon-linkedin.png"); }
.FooterSocial.Twitter { background-image: url("../images/socialIcons/icon-twitter.png"); }
.FooterSocial.Facebook { background-image: url("../images/socialIcons/icon-facebook.png"); }
#SearchResults li { padding-bottom: 1em; margin: 0 0 2em 0; border-bottom: 1px solid #eee; }
.floating-button { position: fixed; right: -1.75em; top: 45%; padding: 1em; border: 0; transform: rotate(-90deg); border-top-left-radius: 15px; border-top-right-radius: 15px; background-color: #78be20; color: #fff; font-family: OpenSans; box-shadow: -2px 4px 3px rgba(0,0,0,.3); }
.scrollbox { max-height: 256px; overflow-y: auto; }

.PeopleList { display: grid; grid-template-columns: auto auto auto; grid-gap: 2%; align-items: center; }
.people-block { padding: 1rem; height: 100%; min-width: 200px; text-align: center; display: flex; flex-direction: column; }
.people-block img { border-radius: 50%; }
.people-block h5 { font-weight: bold; color: var(--blue); }
.people-block div { margin-bottom: 2em; }
.people-block a { margin-top: auto; display: block; width: auto; }
.people-block a:after { font-family: "Font Awesome 5 Pro"; content: ""; margin-left: 1em; }
.PersonTitle { color: var(--turq); text-transform: uppercase; }

.p-18 { padding: 1.8rem; }
.h-55 { min-height: 5.5em; }
.container .dataTables_wrapper .dataTables_length { float: right; }
.container .dataTables_wrapper .dataTables_length select { margin-bottom: 0; padding: 5px 4px; }
.container .dataTables_wrapper .dataTables_filter { float: left; margin-top: 1.5em; }
.field-validation-error { color: #d22630; }
.form-group.checkbox label { width: calc(100% - 20px); float: right; }
.form-group.checkbox .umbraco-forms-field-wrapper { float: left; margin-top: .25em; }
.card-header a { color: #000; }
.col-md-4 .umbraco-forms-form { padding-top: 0; }
.col-md-4 .umbraco-forms-form .umbraco-forms-caption { line-height: 1.5em !important; }
.custom-card { background-color: #e7e8ea; border: 0; }
.lisViewButtons { float: right; margin-top: 1.25em; }
.lisViewButtons button { border: 0; background: none; }
.lisViewButtons button.active { color: #29a4a9; }
.list-view { display: block; }
.list-view .people-block { float: none; width: auto; flex: none; max-width: none; padding: 0 0 .5em 0; background-color: transparent; margin: 0 15px; }
.list-view .people-block img { display: none; }
.list-view .people-block a { margin-top: .5em; }

.lablist { clear: both; }
.lablist .labItem { display: flex; flex-direction: column; justify-content: space-between; border-radius: 10px; text-align: center; margin-bottom: 15px; }
.lablist .labItem { background-color: #ddd; }
.lablist .labItem h4 { font-weight: bold; color: inherit; margin-top: 1em; }
.lablist .labItem a { margin: 1em 0; }
.lablist .labItem p { margin: 1em; }
.lablist .labItem.altBg { background-color: #f3f3f3; }
.lablist .labItem .labStatus { border-bottom-left-radius: inherit; border-bottom-right-radius: inherit; font-weight: bold; text-transform: uppercase; color: #fff; padding: 1em 0; margin-top: auto; }
.lablist .labItem .open { background-color: #abd2b7; }
.labItem .readmore { background-color: #6fa4a8; }


.labItem.closed .readmore { background-color: #eb8b99; }
.labItem.soon .readmore { background-color: #f9a87d; }
.labItem.WellnessCentre:after { content: ""; font-family: 'Font Awesome 5 Pro'; font-size: 2em; }

#LabTable td.open, #LabTable td.closed, #LabTable td.soon { color: #fff; font-size: 2em; background-repeat: no-repeat; background-position: center 0; text-align: center; position: relative; right: -1px; }
#LabTable .open { background-image: url("../images/flag-green-64.png"); }
#LabTable .closed { background-image: url("../images/flag-red-64.png"); }
#LabTable .soon { background-image: url("../images/flag-orange-64.png"); }
#LabMap { margin-bottom: 2em; }
.col-7 .readmore { padding: .1em .5em; }

#LabGrid { background-color: #f4f4f4; padding: 2em 0; }
#LabGrid .labItem { height: 100%; width: 100%; position: relative; border-radius: 3px; background-color: #fff; border-top: 10px solid #6fa4a8; display: flex; flex-direction: column; }
#LabGrid .labItem h3 { padding: .5em 0; margin: 0 1em 0 1em; text-align: center; border-top-left-radius: inherit; border-top-right-radius: inherit; text-transform: uppercase; font-weight: bold; }
#LabGrid .labItem h3 a { color: #4eb9d8; color: var(--blue); }
#LabGrid .labItem.closed { border-top-color: #eb8b99; }
#LabGrid .labItem.soon { border-top-color: #f9a87d; }
#LabGrid .labItem i { color: #4eb9d8; }
#LabGrid .labItem a { font-weight: bold; color: var(--blue); }
#LabGrid .labItem .readmore { display: block; width: calc(100% - 2em); font-weight: normal; margin: 2em auto 1em auto; color: #fff; font-weight: bold; }
#LabGrid .labItem .readmore:after { font-family: "Font Awesome 5 Pro"; content: ""; margin-left: 1em; font-size: 0.7em; vertical-align: middle; }
#LabGrid .labItem .container { display: flex; flex-direction: column; height: 100%; }
#LabGrid .labItem .container div:

.Office i { color: var(--turq); }
.counter { background-color: #f5f5f5; padding: 20px 0; border-radius: 5px; }
.count-title { font-size: 3em; font-weight: bold; margin-top: 10px; margin-bottom: 0; text-align: center; }
.count-text { font-size: 1em; font-weight: normal; margin-top: 10px; margin-bottom: 0; text-align: center; }
.fa-2x { margin: 0 auto; float: none; display: table; color: #29a4a9; }
.LabControls { margin-bottom: 2em; }
.LabControls button { background: none; border: 0; font-size: 1.5em; }
.LabControls button.active { color: var(--blue); }
.LabControls label { line-height: 2em; }
.LabControls input[type=text] { line-height: 2em; }
#GoogleMap { width: 100%; height: 800px; }
.logolist img { filter: grayscale(100%); transition: filter .2s; }
.logolist img:hover { filter: grayscale(0%); }
.top-hr { padding-top: 2em; margin-top: 2em; border-top: 2px dashed #ddd; clear: both; }
.Gallery { display: grid; grid-template-columns: auto auto auto; }
.Gallery > a { overflow: hidden; max-height: 245px; }
.btn-accordion { background-color: #e7e8ea; width: 100%; color: #000; padding: 7px; text-align: left; border: 2px solid transparent; }
.btn-accordion:active { border: 2px solid var(--blue); background-color: #fff; color: var(--blue); }
.btn-accordion:hover { border: 2px solid var(--blue); color: var(--blue); }
.btn-accordion:focus { border: 2px solid var(--blue); background-color: #fff; color: var(--blue); }
.ficon { display: block; text-align: center; font-size: 75px; margin: 10px 0 0 0; }
.FloatingImageLeft, .FloatingImageRight { margin-bottom: 1.5em; max-width: 45%; }
.FloatingImageLeft { float: left; margin-right: 1.5em; }
.FloatingImageRight { float: right; margin-left: 1.5em; }
.rpb > div { margin-top: 1em; }
.gm-style-iw.gm-style-iw-c { width: 400px; overflow: hidden; }
.gm-style-iw.gm-style-iw-c .labStatus { display: none; }
.gm-style-iw-d { padding-bottom: 2em; width: 390px; }
.aboutblock { box-shadow: 0 0 8px rgba(0,0,0,.28); background-color: #fff; border-radius: 3px; height: 100%; width: 100%; margin: 0 0 1em 0; display: flex; flex-direction: column; flex-wrap: nowrap; align-content: center; justify-content: flex-start; align-items: stretch; }
.aboutblock p { margin: 0 .5em; max-width: 350px; text-align: center; align-self: center; }
.aboutblock h4 { font-size: 1.3em; font-weight: bold; border-top-left-radius: inherit; border-top-right-radius: inherit; margin: .75em 0; width: 100%; text-align: center; }
.aboutblock h4.titleblock { background-color: #d8f2f2; color: #4eb9d8; padding: .5em 0; margin: 0 0 1.5em 0; }
.aboutblock > img { width: 80px; height: 80px; margin: 1em auto 0 auto; }
.aboutblock i { color: #4eb9d8; }
.BlockIconLink { box-shadow: 0 0 8px rgba(0,0,0,.28); color: #4eb9d8; background-color: #fff; border-radius: 30px; width: 100%; margin: 0 0 1.5rem 0; display: block; line-height: 60px; clear: both; max-width: 640px; overflow: hidden; }
.BlockIconLink i { color: inherit; background-color: #d8f2f2; border-radius: 30px; font-size: 1.9em; width: 60px; height: 60px; text-align: center; line-height: 60px; margin: 0 .75rem 0 0; float: left; }
.BlockIconLink[href]:after { content: ""; font-family: "Font Awesome 5 Pro"; margin: 0 1em; float: right; font-weight: bold; }
.BlockIconLink[data-toggle=collapse] { margin-bottom: 0; }
.accordion-item { background-color: #d8f2f2; border-radius: 30px; margin-bottom: 1.5rem; }
.accordion-item > div { padding: 1rem 1.5rem; }
.servicel { display: block; height: 100%; text-align: center; color: #4eb9d8; padding: .5em 1em; }
.servicel i { background: radial-gradient(circle at center,#d8f2f2 0%,#d8f2f2 60px,transparent 60px,transparent); height: 120px; line-height: 120px; margin: -14px 0 10px 0; }
.servicel span:first-child { min-height: 3em; display: block; font-size: 1.1em; }
.servicel span.more { text-transform: uppercase; color: var(--blue); }
.servicel span.more:after { font-family: "Font Awesome 5 Pro"; content: ""; margin-left: .5em; }
.sidebysideblock { display: flex; flex-direction: row; flex-wrap: nowrap; align-content: center; justify-content: flex-start; align-items: center; padding-right: 1em; color: var(--blue); font-size: 1.1em; line-height: 1.25em; }
i.bicon { background: radial-gradient(circle at center,#d8f2f2 0%,#d8f2f2 75px,transparent 75px,transparent); display: inline-block; height: 150px; flex: 0 0 165px; line-height: 150px; margin: 16px; font-size: 75px; text-align: center; }
.umb-block-list { display: flex; }
.row.mt-3.mb-3.h-100 p { font-size: 18px; color: #43afaf; padding-bottom: 15px; }
.ServiceItem h3 { min-height: 2em !important; }
.fas.fa-chevron-down { float: right; }
#faq .card { margin-bottom: 1px; border: 0; background-color: transparent; }
#faq .card .card-header { background-color: transparent; border-radius: 20px; border: 0; padding: 6px 10px; }
#faq .card .card-header .btn-header-link { display: block; background-color: #29a4a9; width: 100%; color: #fff; padding: .5em 1.5em; text-align: left; border: 2px solid transparent; font-weight: normal; box-shadow: 0 0 8px rgba(0,0,0,.28); }
#faq .card .card-header .btn-header-link:after { content: ""; font-family: "Font Awesome 5 Pro"; font-weight: 900; float: right; }
#faq .card .card-header .btn-header-link.collapsed { background: #a541bb; color: var(--blue); }
#faq .card .card-header .btn-header-link.collapsed:after { content: ""; }
#faq .card .card-header .btn-header-link.collapsed { background-color: #fff; color: #29a4a9; }
#faq .card .card-header .btn-header-link.collapsed:hover { border-color: #29a4a9; }
#faq .card .collapse { border: 0; }
#gridContent ul.checklist { list-style-type: none; line-height: 1.8em; }
#gridContent ul.checklist li:before { content: ""; font-family: "Font Awesome 5 Pro"; margin-right: .4em; }
#NetworkMap { position: relative; clear: both; max-width: 66%; margin: 0 auto; padding-bottom: 5em; }
#NetworkMap .MapHolder { position: relative; }
#NetworkMap [data-leg] { position: absolute; width: auto; height: auto; opacity: 0; z-index: 2; }
#NetworkMap [data-leg] .aboutblock { position: absolute; width: 250px; height: auto; left: 0; top: 100%; pointer-events: none; }
#NetworkMap [data-leg] .aboutblock ul { list-style-type: none; padding: 0; margin: 0 1.5em 1.5em 1.5em; }
#NetworkMap [data-leg] .aboutblock .note { margin: 0 1.5em 1em 1.5em; }
#NetworkMap [data-leg] .aboutblock ul li { white-space: nowrap; }
#NetworkMap [data-leg] .aboutblock h4 { text-transform: uppercase; }
#NetworkMap [data-leg=Botswana] { left: 54%; top: 76%; width: 13.5%; }
#NetworkMap [data-leg=Ethiopia] { left: 73.3%; top: 31.7%; width: 22.5%; }
#NetworkMap [data-leg=Gabon] { left: 37.9%; top: 48.65%; width: 8.8%; }
#NetworkMap [data-leg=Ghana] { left: 20.3%; top: 37%; width: 6.75%; }
#NetworkMap [data-leg="Ivory Coast"] { left: 13%; top: 37.3%; width: 8.75%; }
#NetworkMap [data-leg=Kenya] { left: 74.6%; top: 44.5%; width: 12%; }
#NetworkMap [data-leg=Nigeria] { left: 29.2%; top: 33.3%; width: 17.6%; }
#NetworkMap [data-leg=Mozambique] { left: 68.8%; top: 65.8%; width: 16%; }
#NetworkMap [data-leg=Rwanda] { left: 67.3%; top: 53.5%; width: 3.3%; }
#NetworkMap [data-leg=Eswatini] { left: 69.15%; top: 86.7%; width: 2.75%; }
#NetworkMap [data-leg=Tanzania] { left: 68%; top: 53.1%; width: 16.2%; }
#NetworkMap [data-leg=Uganda] { left: 68.3%; top: 46.2%; width: 8.6%; }
#NetworkMap [data-leg=Zambia] { left: 56.8%; top: 63%; width: 17.5%; }
#NetworkMap [data-leg=Zimbabwe] { left: 61.8%; top: 72.8%; width: 11.5%; }
#NetworkMap [data-leg]:hover, #NetworkMap [data-leg].active { opacity: 1; }
#NetworkMap [data-leg].hover { opacity: 1; }
#NetworkMap [data-leg].active .aboutblock { pointer-events: initial; }
#NetworkMap #Legend { position: absolute; bottom: 0; left: 0; width: auto; height: auto; text-transform: uppercase; z-index: 1; }
#NetworkMap #Legend .titleblock { min-width: 240px; }
#NetworkMap #Legend h4 { margin-bottom: 0; }
#NetworkMap #Legend > ul { list-style-type: none; margin: 1em 0; padding: 0; }
#NetworkMap #Legend > ul > li { color: var(--grey); font-weight: bold; line-height: 2em; padding: 0 1em 0 3em; cursor: pointer; }
#NetworkMap #Legend > ul > li:before { content: "\f3c5"; font-family: "Font Awesome 5 Pro"; color: #4eb9d8; margin-right: .75em; font-weight: lighter; }
#NetworkMap #Legend ul li.active { background-color: #d7f2f2; color: var(--grey); }
#NetworkMap #Legend > ul > li:hover { background-color: #d7f2f2; color: var(--grey); }
#NetworkMap #Legend > ul ul { display: none; padding: 0; margin: 0; text-transform: none; }
#topnav [href="/request-an-appointment/"] { text-align: center; display: inline-block; padding: .1em .5em; font-size: .9rem; text-transform: uppercase; font-weight: bold; color: #fff; border-radius: 24px; border: solid 1px #29a4a9; background-color: #29a4a9; }

.list-item { background-color: #fff; margin-bottom: 1.5em; display: flex; flex-direction: column; border-top-left-radius: 3px; border-top-right-radius: 3px; }
.list-item h5 { color: #8b8e93; text-transform: uppercase; font-size: 0.9em; margin: 1em 1em 0 1em; }
.list-item > p { margin: 1em 1em 2em 1em; }
.list-item h4 { margin: 1rem; }
.list-item h4 a { color: inherit; }
.list-item .readmore { width: 150px; margin: auto 1em 1em 1em; }
.list-item-alt { display: block; padding: 1px 1px 1rem 1px; }
.list-item-alt .readmore { }

.list-item-alt > div { margin: 0 1rem; display: flex; flex-direction: row; }
.gridbg { display: grid; grid-template-columns: auto auto auto; grid-gap: 1.5em; margin-bottom: 1.5em; }
.gridbg .list-item { margin-bottom: 0; }

.umbraco-forms-form .checkboxlist label { float: none !important; }



@media(max-width:1200px) {
    .col-7 .readmore { font-size: .95em; }
    .Gallery > a { max-height: 205px; }
    #NetworkMap { display: flex; flex-direction: row-reverse; flex-wrap: nowrap; align-content: center; justify-content: center; align-items: center; max-width: none; }
    #NetworkMap #Legend { position: initial; margin: 0 2em 0 0; width: 280px; }
    .col-md-9 .gridbg { grid-template-columns: calc(50% - 0.75em) calc(50% - 0.75em); }
}

@media(min-width:1200px) {
    .container, .container-lg, .container-md, .container-sm, .container-xl { max-width: 1280px; }
}

@media screen and (min-width:993px) {
    .navbar-nav { width: 100%; display: flex; flex-direction: row; flex-wrap: nowrap; justify-content: space-between; align-items: center; }
    .notmega .SubMenu ul ul { display: none; position: absolute; left: 100%; z-index: 4; background-color: #e7e8ea; }
    .notmega .SubMenu ul li { padding: 0 .5em; display: flex; flex-direction: row; align-content: center; justify-content: flex-start; align-items: center; flex-wrap: nowrap; }
    .notmega .SubMenu ul li:hover ul { display: initial; }
    .SubMenu ul li:hover > a, .SubMenu ul li:hover > i { color: #29a4a9; }
    .SubMenu ul { padding: 1em 0 0 0; }
    .SubMenu { top: 100%; position: absolute; z-index: 30; min-width: 250px; }
    .SubMenu ul li { margin-bottom: 1em; }
    #MobileSearchButton { display: none; }
}

@media screen and (max-width:992px) {
    .navbar-toggler { display: initial; }
    .navbar { padding: 0; }
    .nav-link { margin: 0; }
    .navbar-nav .nav-link { padding-left: .5em; }
    .navbar-collapse.collapse.show { margin-bottom: 1em; }
    .SubMenu { padding: 0.1em 0; }
    .SubMenu ul { padding-left: 5px; }
    .notmega .SubMenu ul { margin: 0; padding: 0; }
    .nav-item .card-columns { width: 100%; }
    .nav-link { margin: 0; }
    .navbar-nav .nav-link { padding: .7rem 1rem; }
    .navbar-nav .umb-block-list { display: block; }
    .navbar-collapse { background-color: #e7e8ea; border: 1px solid rgba(0,0,0,.15); border-radius: .25rem; margin-top: 20px; padding: 1em; }
    .notmega .SubMenu ul ul { margin-left: 2em; }
    .notmega .SubMenu { top: 67px; left: 0; padding: .5em; margin: .5em 0; background-color: #fff; }
    .SubMenu ul li a:hover { color: #29a4a9; }
    .navbar .card-body { -ms-flex: 1 1 auto; flex: 1 1 auto; min-height: 1px; padding: .2rem 1.25rem; }
    .mega-menu-bg { background-color: #fff; }
    .custom-card { background-color: #fff; }
    .mega-menu-bg .sub-active { color: #fff !important; background-color: #003594; border-radius: .25rem; padding: .3rem; }
    .notmega .SubMenu ul li i { display: none; }
    .Gallery > a { max-height: 150px; }
    #MenuSearchButton { display: none; }
    #Carousel .carousel-inner { height: 48vw; }
    .carousel-item h1 { font-size: 3em; }
    .carousel-item p { font-size: 1em; }
    .carousel-item .carousel-item-wrap { margin: 0 1em; }
    .gridbg { grid-template-columns: auto auto; }
}

#StickyLogo { display: none; }

@media screen and (min-width:768px) {
    .list-item.w-100 { clear: both; }
    .sticky { padding-top: 50px; }
    .sticky .navbar { position: fixed; top: 0; left: 0; width: 100%; z-index: 300; background-color: #fff; box-shadow: 0 0 7px rgba(0,0,0,.1); }
    .sticky nav.navbar { padding: 0.5em 0; }
    .sticky #StickyLogo { display: block; }
    .sticky #StickyLogo a { display: block; width: 100px; height: 36px; line-height: 36px; margin-left: -10px; text-indent: 170px; overflow: hidden; background: no-repeat center url("../images/logo.html"); vertical-align: middle; background-size: contain; }
    .sticky .nav-link[href="/"] { display: none; }
    .card-columns { column-count: 4; }
    .people-block img { display: block; margin: 0 auto; }
}

@media screen and (max-width:769px) {
    #LogoBox > .Logo { max-width: calc(60% - 60px); }
    #LogoBox .SiteName { max-width: calc(40% - 60px); }
    #LogoBox .Logo { margin: 0; }
    .carousel-item > div { background-size: 200%; }
    .carousel-text { font-size: 1.9vw; }
    .Gallery > a { max-height: 114px; }
    #NetworkMap { flex-direction: column; }
    #NetworkMap #Legend { margin: 1em auto; width: 280px; }

    .PeopleList { grid-template-columns: auto auto; }
    #CarouselSearch { bottom: 0.25em; }
    #CarouselSearch input[type=text] { font-size: 1em; }
}

@media screen and (min-width:768px) and (max-width:1200px) {
    .sidebar-item.overlay > div { font-size: .75rem; line-height: 1em; }
}

@media screen and (max-width:767px) {
    .gridbg > *:nth-child(even) { background-color: #fafafa; }
    .col-md-3.order-md-0.order-sm-1 { margin-top: 1em; padding-top: 1em; border-top: 1px solid #eee; }
    #NetworkMap { flex-direction: column; }
    td .readmore { white-space: nowrap; font-size: 0.85em; line-height: initial; min-width: auto; height: auto; }
    td.d-sm-none, th.d-sm-none { display: none; }
    .HomeServices .Slide { grid-template-columns: auto auto;}
}

@media screen and (max-width:576px) {
    .Gallery > a { max-height: 19.5vw; }
}

@media only screen and (max-width:600px) {
    .twoblueswish .col-4.col-md { max-width: 100% !important; flex: 100% !important; }
}

@media screen and (max-width:436px) {
    h1, h2, h3, h4, h5, h6 { font-size: 1.5em; }
    #topnav { text-align: center; }
    #topnav select { display: block; float: none; width: 90%; border: 1px solid #aaa; margin: 1px auto; }
    #topnav a { margin: 1px 2%; }
    .dataTable { font-size: .9rem; }
    .container .dataTables_wrapper th:nth-child(4), .container .dataTables_wrapper td:nth-child(4) { display: none; }
    #Carousel .carousel-item > div { padding: 2px; }
    #Carousel .carousel-item h1, .carousel-item h2, .carousel-item p { font-size: 4vw; margin: 1px; }
    #Carousel .carousel-item a { padding: 3px 2%; font-size: 3vw; margin: 1px; }
    .sidebar-item { font-size: 1em; }
    .crumbs-button { float: none; margin: .5em auto; }
    p.BlockIconLink { line-height: normal; padding-top: 6px; }
    p.BlockIconLink i { margin-top: -6px; }
    .BlockIconLink[href]:after { position: absolute; right: .5em; }
    .PeopleList { grid-template-columns: auto; }
}

@media(max-width:320px) {
    #SearchBox { width: 100%; }
    #SearchBox button, #SearchBox input[type=text] { box-sizing: border-box; width: 96%; display: block; margin: .25em 0; }
}
/***************START GALLERY************/
.Gallery > a { margin: 8px; }
/***************END GALLERY************/
/***************START SEARCH PAGE************/
.crumbs-button { display: inline-block; color: #fff; text-transform: uppercase; padding: 0.5em 1.5em; font-weight: bold; font-size: 1.2em; background-color: var(--turq); margin: auto auto 0 auto; border-radius: 3px; box-shadow: none; }

/***************END SEARCH PAGE************/
/***************START DOWNLOAD ICON************/
main a[target=_blank][href*="//"]:after { display: none; }
/***************END DOWNLOAD ICON************/
/***************START TABLE************/
.table td { vertical-align: middle; }
td .readmore { margin: 0; }
.table thead th h3 { color: #ffffff; margin: 0; }
/***************END TABLE************/
/***************START PARTNERS************/
.partners h4 { text-align: center; }
.partners p { text-align: center; }
.partners img { max-width: 60%; }
.partners-text { text-align: center; padding: 3em 0 3em 0; }
/***************END PARTNERS************/
/***************START DOWNLOAD************/
a.download-button { min-width: 320px; }
/***************END DOWNLOAD************/
/***************START SEARCH************/
#SearchResults li { padding: 1rem 0 1rem 0; margin: 0; }
#SearchResults li a { color: var(--blue); }
::marker { font-size: 1.5rem; font-family: RobotoBlack; font-weight: bold; color: var(--blue); }
/***************END SEARCH************/
/***************START GENERAL***********/
.col-md-8 { padding: 0; }
/***************END GENERAL***********/

/************START FOOTER************/
footer { background-color: #ffffff; }
/************END FOOTER************/
/**********START PROFILE IMAGES*******/
.people-block img { width: 220px; }
.PeopleList { padding-bottom: 2rem; grid-gap: 0.5%; }

/**********END PROFILE IMAGES*******/
/************START HEADINGS*********/
.heading h2, h1 { font-size: 3em; }
/************END HEADINGS*********/
/*.HomeCTA a {
visibility: hidden;
  position: relative;
}
.HomeCTA a:after {
  visibility: visible;
  content: 'Locate a Lab';
  position: absolute;
  left: 0;
background-color: var(--turq);
    color: #ffffff;
    font-size: 1.2em;
    padding: 0.5em 1.5em;
    border-radius: 3px;
}*/
/******START IMAGE ALIGNMENT******/
.circle-image .col-md-4.column { text-align: center; }
/******END IMAGE ALIGNMENT******/
/******START HEADER******/

.Logo { margin: 0 0 0 1em; }
/******END HEADER******/
/******START NAV******/
.nav-item a.Button.Secondary { width: max-content; }
/******END NAV******/
/******START CAROUSEL******/
#CarouselSearch { display: none; }

@media only screen and (max-width: 920px) {
    .carousel-item h1 { font-size: 4em !important; }
    .ServiceList { grid-template-columns: auto auto; }
}

@media only screen and (max-width: 1080px) {
    #CarouselSearch { display: none !important; }
}

@media only screen and (max-width: 1080px) {
    #Carousel .carousel-item h1 { font-size: 3.5em !important; padding: 0 !important; margin: 0 auto !important; }
    #Carousel .carousel-item p { font-size: 16px !important; text-align: center; padding: 1em !important; margin: 0 auto !important; width: 400px;max-width:90%; }
    #Carousel .carousel-item a { margin: 0 auto !important; font-size: 1.5em; }
    #Carousel .carousel-inner { height: 36vw; }
    #Carousel .carousel-text {width:100%;}
}
/******END CAROUSEL******/
.carousel-item.Fadein .carousel-item-wrap { padding: 0 1em; }

/******START COUNTRIES******/
#world .container { width: 1200px; }
#world a { padding: 0; margin: 0.5em; }

@media only screen and (max-width: 600px) {
    #world .container { width: auto; }
}
/******END COUNTRIES******/

/******START HEADING SPACINGS******/
.HomeServices, #HomeNews, .HomeFeatures, #Counters { padding: 3em 0 3em 0; margin: 0; }
.HomeServices h2, .HomeFeatures h2, #Counters h2, #HomeNews h2 { margin: 0 0 1em 0; }
.FeatureBlock h3 { margin-bottom: 0.5em; }
/******END HEADING SPACINGS******/
/*****START SERVICE ITEMS******/
.ServiceItem:before { margin: 0 auto; }
.ServiceItem h3 { margin: 0; min-height: 1.6em !important; }
.ServiceItem p { padding: 0 0 1em 0; margin: 0 auto; width: 220px; }
.ServiceItem a, .list-item .readmore { width: 220px; }
.copy-block { min-height: 150px; }
::marker { font-size: 1em; }
.col-md-4.column .readmore { margin-bottom: 2rem !important; }

/*****END SERVICE ITEMS******/
.HomeCTA { background-color: #d7f2f2; color: var(--turq); padding: 3em 0; text-align: center; }
.HomeCTA h2 { color: var(--blue); }

.HomeCTA a { background-color: var(--turq); color: #ffffff; font-size: 1.2em; padding: 0.5em 1.5em; border-radius: 3px; }
.HomeCTA a:hover { background-color: var(--blue); }

a.find-a-lab { display: inline-block; background-color: var(--turq); color: #ffffff; padding: 0.5em 1.5em; border-radius: 3px; text-transform: uppercase; font-size: 1.2em; font-weight: bold; margin-top: 1rem; }

a.find-a-lab:hover { background-color: var(--blue); color: #ffffff; }

.HomeCTA { padding: 3em 0; }
.HomeCTA h2 { margin-bottom: 1rem; }

.fa-globe-africa:before { color: var(--blue); }
.whyus-t { margin: 70px 0px 70px 0px !important; }
input.btn.primary { width: 156px; height: 48px; }
a.readmore.Secondary.lct { height: 48px; line-height: 30px; }
.list-item .readmore { height: 48px; line-height: 28px; }

.people-block h5 { font-size: 2em; }

.bg-green a { display: inline-block; background-color: #fff; color: var(--turq); font-weight: bold; text-transform: uppercase; padding: 0.25em 1.5em; font-size: 2em; border-radius: 3px; min-width: 450px; }
.fa-download:before { color: var(--turq); }
.fa-download:hover:after { color: #ffffff; }
.bg-green a:hover { background-color: var(--turq); color: #fff; }
.grey-row { background-color: #fbfbfb; }
.copy-block { margin: 24px 0 16px 0; }
.copy-block h3 { margin-bottom: 24px; }
a.readmore:hover { color: #ffffff; }
.ServiceItem a:hover { color: #ffffff; }
.FirstNews .readmore { margin: 0 auto 1em 0 }
.FirstNews .readmore:hover { background-color: var(--blue); }
.readmore, .btn-secondary, a.btn.btn-primary { border: none; display: inline-block; color: #fff; text-transform: uppercase; padding: 0.5em 1.5em; font-weight: bold; font-size: 1.2em; background-color: var(--turq); margin: auto auto 0 auto; border-radius: 3px; height: 48px; line-height: 30px; }
.readmore a { color: #ffffff; }
[title~="Return to directory"] { margin-bottom: 3rem; }
.readmore:hover { background-color: var(--blue); }

.title-image { min-height: 171px; }
.readmore { margin: 24px 0 0 0; }
a.btn.btn-primary, a.btn.btn-secondary { width: 100%; }
a.btn.btn-primary:hover, a.btn.btn-secondary:hover { background-color: var(--blue); }
input[type=text], textarea, textarea.form-control, select, select.form-control { border-radius: 3px; }
#topnav [href="/request-an-appointment/"] { text-align: center; display: inline-block; padding: 0.1em 0.5em; font-size: 0.90rem; text-transform: uppercase; font-weight: bold; color: #fff; border-radius: 24px; border: solid 1px #29a4a9; background-color: #29a4a9; }
#topnav [href="/request-an-appointment/"]:hover { color: #fff; }

@media only screen and (max-width: 600px) {
    .HomeCTA a { min-width: 0; }    
    #Counters .container, .HomeFeatures .container, #HomeNews .container, .HomeServices .Slide { display: flex; flex-direction: column; flex-wrap: nowrap; align-content: center; justify-content: center; align-items: center; }
    #NetworkMap #Legend > ul ul { display: block; height: 0; overflow: hidden; transition: all .3s; }
    #NetworkMap #Legend > ul > li.active ul { height: auto; }
    #NetworkMap [data-leg] .aboutblock { display: none; }
    .gridbg, .ServiceList, .col-md-9 .gridbg { grid-template-columns: auto; }
}

@media only screen and (max-width: 400px) {
    .carousel-item p { width: auto; }
}

@media only screen and (max-width: 900px) {
    #world a { margin: 5px; }
}

h5 { color: var(--blue) !important; font-weight: bold !important; }

.hidden { display: none; }

/* Mobile Responsive Enhancements */

/* Base Mobile Responsive Rules */
@media screen and (max-width: 1200px) {
    .container {
        width: 100%;
        padding: 0 20px;
    }
    
    /* Carousel adjustments */
    #Carousel .carousel-text h1 {
        font-size: 32px;
    }
    
    #Carousel .carousel-text p {
        font-size: 16px;
    }
    
    /* Services section */
    .HomeServices .Slide {
        flex-wrap: wrap;
        justify-content: center;
    }
    
    .HomeServices .ServiceItem {
        flex: 0 0 45%;
        margin: 10px;
    }
}

/* Tablet Responsive Rules */
@media screen and (max-width: 992px) {
    /* Adjust header elements */
    .top-bar {
        padding: 10px 15px;
    }
    
    /* Features section */
    .HomeFeatures .container {
        flex-direction: column;
        align-items: center;
    }
    
    .HomeFeatures .FeatureBlock {
        width: 90%;
        max-width: 500px;
        margin-bottom: 30px;
    }
    
    /* Services items */
    .HomeServices .ServiceItem {
        flex: 0 0 100%;
        max-width: 500px;
    }
    
    /* Carousel text */
    #Carousel .carousel-text {
        padding: 20px;
        max-width: 80%;
    }
}

/* Small Tablet and Large Mobile */
@media screen and (max-width: 768px) {
    /* Adjust body padding for fixed header */
    body {
        padding-top: 70px;
    }
    
    /* Carousel height */
    #Carousel {
        height: 400px;
    }
    
    #Carousel .carousel-item {
        height: 400px;
    }
    
    #Carousel .carousel-text h1 {
        font-size: 28px;
    }
    
    #Carousel .carousel-text p {
        font-size: 14px;
        line-height: 1.4;
    }
    
    #Carousel .carousel-text a {
        padding: 8px 15px;
        font-size: 14px;
    }
    
    /* Search box */
    #CarouselSearch {
        width: 90%;
        left: 5%;
    }
    
    /* Content spacing */
    .HomeServices, .HomeFeatures, .HomeCTA {
        padding: 30px 0;
    }
    
    h2 {
        font-size: 24px;
        margin-bottom: 20px;
    }
}

/* Mobile Responsive Rules */
@media screen and (max-width: 576px) {
    /* Reduce padding */
    .container {
        padding: 0 15px;
    }
    
    /* Carousel */
    #Carousel {
        height: 350px;
    }
    
    #Carousel .carousel-item {
        height: 350px;
    }
    
    #Carousel .carousel-text {
        max-width: 90%;
        padding: 15px;
    }
    
    #Carousel .carousel-text h1 {
        font-size: 24px;
        margin-bottom: 10px;
    }
    
    #Carousel .carousel-text p {
        font-size: 13px;
        margin-bottom: 15px;
    }
    
    /* Service and feature blocks */
    .HomeServices .ServiceItem, .HomeFeatures .FeatureBlock {
        padding: 15px;
        margin-bottom: 20px;
    }
    
    .HomeServices h2, .HomeFeatures h2 {
        font-size: 22px;
    }
    
    .HomeServices .ServiceItem h3, .HomeFeatures .FeatureBlock h3 {
        font-size: 18px;
    }
    
    /* CTA section */
    .HomeCTA a {
        padding: 10px 20px;
        font-size: 16px;
    }
}

/* Small Mobile Devices */
@media screen and (max-width: 420px) {
    /* Reduce header height */
    .sticky-header {
        height: auto;
    }
    
    .top-bar {
        height: 60px;
    }
    
    /* Smaller carousel */
    #Carousel {
        height: 300px;
    }
    
    #Carousel .carousel-item {
        height: 300px;
    }
    
    /* Full width elements */
    .HomeServices .ServiceItem, 
    .HomeFeatures .FeatureBlock {
        width: 100%;
    }
    
    /* Adjust text sizes */
    h2 {
        font-size: 20px;
    }
    
    .HomeServices .ServiceItem h3,
    .HomeFeatures .FeatureBlock h3 {
        font-size: 16px;
    }
    
    p {
        font-size: 14px;
    }
    
    /* Adjust buttons */
    .btn-secondary, .HomeCTA a {
        width: 100%;
        text-align: center;
        padding: 12px 10px;
    }
}

/* Ensure images are responsive */
img {
    max-width: 100%;
    height: auto;
}

/* Table responsiveness */
@media screen and (max-width: 768px) {
    .table-responsive {
        display: block;
        width: 100%;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }
}

/* Footer Responsive Styles */
.responsive-country-links .container {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}

.responsive-country-links a {
    margin: 5px 10px;
}

.footer-brand img {
    max-width: 100%;
    height: auto;
}

.review-btn {
    width: 100%;
    text-align: center;
    margin-top: 15px !important;
}

.footer-links h3,
.footer-contact h3,
.footer-social h3 {
    font-size: 18px;
    margin-bottom: 15px;
}

.footer-links ul,
.footer-contact ul,
.footer-social ul {
    padding-left: 0;
}

.footer-links li,
.footer-contact li,
.footer-social li {
    margin-bottom: 8px;
}

.contact-item {
    display: flex;
    align-items: center;
    margin-bottom: 8px;
}

.contact-item i {
    margin-right: 10px;
    min-width: 20px;
}

@media screen and (max-width: 768px) {
    .footer-content {
        text-align: center;
    }
    
    .footer-links, 
    .footer-contact,
    .footer-social {
        margin-top: 20px;
    }
    
    .responsive-country-links a {
        margin: 3px 8px;
        font-size: 14px;
    }
    
    .responsive-country-links h2 {
        font-size: 22px;
    }
    
    .footer-brand {
        display: flex;
        flex-direction: column;
        align-items: center;
    }
    
    .contact-item {
        justify-content: center;
    }
}

@media screen and (max-width: 576px) {
    .responsive-country-links .container {
        padding: 0 10px;
    }
    
    .responsive-country-links a {
        margin: 3px 5px;
        font-size: 13px;
    }
    
    .footer-links h3,
    .footer-contact h3,
    .footer-social h3 {
        font-size: 16px;
    }
    
    .footer-links a,
    .footer-contact a,
    .footer-social a {
        font-size: 14px;
    }
}

/* Ensure no horizontal scrolling on mobile */
@media screen and (max-width: 767px) {
  html, body {
    overflow-x: hidden;
    position: relative;
    width: 100%;
  }
  
  .container, 
  .container-fluid, 
  .row,
  main {
    max-width: 100%;
    overflow-x: hidden;
    box-sizing: border-box;
    padding-left: 10px;
    padding-right: 10px;
  }
  
  img {
    max-width: 100%;
    height: auto;
  }
  
  /* Fix carousel on small screens */
  #Carousel .carousel-text {
    width: 100%;
    padding: 0 15px;
  }
  
  /* Fix for mobile tables */
  .table-responsive {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }

  /* Hover lift effect for wellness cards */
  .hover-lift:hover {
    transform: translateY(-5px);
    box-shadow: 0 15px 40px rgba(0,0,0,0.15) !important;
    border-color: var(--blue) !important;
  }

  /* Enhanced button hover effects for wellness sections */
  .hover-lift a:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 25px rgba(0,0,0,0.2) !important;
    color: white !important;
  }
}
