@font-face{font-family:"Roboto";font-style:normal;font-weight:300;font-display:swap;src:url("../fonts/roboto-latin-300-normal.woff2") format("woff2")}
@font-face{font-family:"Roboto";font-style:normal;font-weight:700;font-display:swap;src:url("../fonts/roboto-latin-700-normal.woff2") format("woff2")}
@font-face{font-family:"Roboto";font-style:normal;font-weight:400;font-display:swap;src:url("../fonts/roboto-latin-400-normal.woff2") format("woff2")}
@font-face{font-family:"Montserrat";font-style:normal;font-weight:700;font-display:swap;src:url("../fonts/montserrat-latin-700-normal.woff2") format("woff2")}
@font-face{font-family:"Roboto";font-style:normal;font-weight:500;font-display:swap;src:url("../fonts/roboto-latin-500-normal.woff2") format("woff2")}
@font-face{font-family:"Montserrat";font-style:normal;font-weight:400;font-display:swap;src:url("../fonts/montserrat-latin-400-normal.woff2") format("woff2")}
/* Small static-runtime adjustments to the recovered, original theme styles. */
[hidden] { display: none !important; }
html { scroll-behavior: smooth; }
.main { width: 100%; float: none; display: block; padding-left: 0; padding-right: 0; }
.panel-padding-lg { position: relative; }
.skip-link { position: fixed; top: -80px; left: 12px; background: white; color: #333; padding: 10px 20px; z-index: 1000; }
.skip-link:focus { top: 10px; }
:focus-visible { outline: 3px solid #166764; outline-offset: 5px; }
.banner { z-index: 100; }
.hero { min-height: 100vh; }
.hero-slide { height: 100vh; min-height: 600px; position: relative; background-size: cover; background-position: center; }
.hero-slide::before { content: ''; position: absolute; inset: 0; background: rgba(0,0,0,.28); }
.hero .slides, .flextest .slides { list-style: none; margin: 0; padding: 0; }
.hero-content { z-index: 1; }
.hero .carousel-controls { position: absolute; bottom: 22px; left: 0; right: 0; color: white; }
.carousel-controls { display: flex; justify-content: center; align-items: center; gap: 12px; margin-top: 20px; position: relative; z-index: 2; }
.carousel-controls button { border: 0; background: none; padding: 6px; color: inherit; font-size: 24px; line-height: 1; }
.carousel-controls .carousel-dot { width: 11px; height: 11px; border: 1px solid currentColor; border-radius: 50%; padding: 0; }
.carousel-dot[aria-pressed="true"] { background: currentColor; }
.flextest { border: 0; background: none; margin: 0; box-shadow: none; }
.flextest [data-slide] { min-height: 420px; }
.services { position: relative; }
.service-tab { display: block; width: 100%; text-align: left; border: 0; border-bottom: 1px solid #d9d9d9; background: #fff; font-size: 16px; line-height: 24px; padding: 14px 20px; color: #333; }
.service-tab.active { background: #32bdba; color: white; font-weight: 600; }
.tabs_layout_content { min-height: 650px; }
.tabs_layout_content p { line-height: 28px; }
.staff-color { background: #32bdba; }
.staff-toggle { text-align: center; background: white; font: inherit; color: inherit; }
.staff-bio-title { color: white !important; font-family: Montserrat, sans-serif; font-size: 22px; line-height: 30px; margin-bottom: 16px; }
.staff_box .p_back .staff-bio-text { display: block; color: white; font-size: 15px; font-weight: 300; }
.staff_box .p_back .staff-bio-text p { color: white; }
.staff-toggle[aria-expanded="true"] .p_back, .staff-toggle:focus-visible .p_back { opacity: 1; }
.staff-toggle .p_back { overflow: auto; }
.icon_box_ps .innerbox { width: 100%; min-height: 360px; }
.icon_box_ps a:focus-visible .p_back { opacity: 1; }
.feature_ul li { position: relative; }
.feature_ul img { width: 24px; height: 24px; }
.news-image { max-width: 100%; height: auto; margin-bottom: 20px; }
.news-content article { margin-bottom: 60px; }
.news-content time, .event-date { display: block; margin-bottom: 20px; color: #666; }
.news-sidebar ul { padding-left: 20px; }
.event { padding: 30px 0; border-bottom: 1px solid #d9d9d9; }
#contact-form { text-align: left; }
#contact-form label { font-weight: 400; }
#contact-form input, #contact-form select, #contact-form textarea { width: 100%; max-width: 100%; border: 1px solid #ccc; padding: 10px 12px; background: #fff; color: #333; border-radius: 0; }
.contact-note, #contact-status { font-size: 14px; line-height: 22px; }
img { max-width: 100%; }
.p_img_bg { max-width: 40%; }
.content-info { text-align: center; position: relative; z-index: 3; background: #fff; padding: 24px 0; }
@media (max-width: 991px) {
  .tabs_layout_ul { position: static; width: auto; margin: 0; height: auto; display: block; border: 1px solid #d9d9d9; }
  .tabs_layout_content { padding: 30px; min-height: 0; }
  .staff_box .innerbox { min-height: 450px; height: auto; }
}
@media (max-width: 767px) {
  .banner { background: #32bdba; height: 70px; }
  .navbar-collapse { position: absolute; left: 0; right: 0; top: 70px; margin-top: 0; padding: 0; box-shadow: 0 6px 16px #0002; }
  .navbar-default .navbar-nav > li > a { color: #333; }
  .nav_fixed .navbar-toggle { border-color: #32bdba !important; }
  .hero-slide { min-height: 620px; height: calc(100svh - 70px); }
  .hero { min-height: 620px; }
  .hero-content { top: 45%; }
  .hero-content p { font-size: 18px; }
  .imagepanel-inner h1, .imagepanel-inner h2 { font-size: 32px; line-height: 42px; }
  .imagepanel-inner p { font-size: 18px; line-height: 28px; }
  .panel-padding-title { padding-top: 80px; padding-bottom: 70px; }
  .panel-padding-lg { padding-top: 50px; padding-bottom: 50px; }
  .title_centre { margin-bottom: 45px; }
  .sidebar_nav { margin-top: 45px; }
  .staff_box .innerbox { width: 100%; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { transition: none !important; animation: none !important; }
}
