/* Global classes */
:root {
  --logo-green: rgba(33, 56, 130, 1.0);
  --logo-gray: rgba(99, 101, 105, 1.0);
  --logo-green-dark: rgba(21, 39, 96, 1.0);
  --logo-gray-dark: rgba(48, 48, 49, 1.0);
  --logo-green-light: rgba(41, 69, 163, 1.0);
  --logo-gray-light: rgba(177, 180, 185, 1.0);
  --footer-bg2:#141f64;
  --footer-bg1:#1a1a1a;
  --footer-bg: linear-gradient(to bottom, var(--footer-bg1) 0%, var(--footer-bg2) 80%);
  --main-bg: linear-gradient(to bottom, #fff 0%, #f2f2f2 80%);
}

.timeline {
  height: 0;
  font-size: 0px;
}

svg.ext {
  width: 20px;
  height: 20px;
}

.page-wrapper,
.solo-outer,
.region-inner {
  --r-bg: var(--solo-white);
}

#page-wrapper .blue-title {
  background: var(--logo-green) !important;
  color: var(--solo-white) !important;
  padding: 8px 12px;
  text-transform: uppercase;
  font-weight: normal;
}

.header-inner {
  align-items: center;
}

#header .navigation li a {
  font-size: var(--solo-px14);
  line-height: 1.2;
  border-radius: var(--solo-px16);
  transition: all 0.5s ease;
}

#header .navigation {
  margin: 0;
}

#header .navigation li a {
  --r-bg: var(--logo-green);
  background: var(--r-bg);
  --r-tx: var(--solo-white);
  margin-left: var(--solo-px12);
}
#primary-menu li a.is-active {
  border-bottom-width: 3px;
  border-bottom-style: solid;
}

#primary-menu li a.is-active,
#header .navigation li a:hover {
  --r-bg: var(--logo-green-dark);
  --r-tx: var(--solo-white);
}

.page-wrapper h1 {
  --r-h1:var(--logo-green-dark);
}

.branding-wrapper .site-name a {
  align-items: center;
}

.branding-wrapper:not(.brics) .branding-first a {
  width: 100px;
}

.branding-wrapper.brics .branding-first a img {
  height: 65px;
}

#page-wrapper .site-name-link {
  font-size: var(--solo-px14);
  line-height: 1.1;
  font-weight: normal;
  display: flex;
  align-items: start;
  justify-content: start;
  flex-direction: column;
}

#page-wrapper .site-name-link.brics {
  font-size: var(--solo-px16);
}

#page-wrapper .site-name-link.brics * {
  color: #1472b9;
  font-family: 'Amiri', serif;
}

#page-wrapper .site-name-link * {
  white-space: nowrap;
}

#page-wrapper .branding-wrapper:not(.brics) .site-name {
  padding-right: 16px;
  margin-right: 16px;
  border-right: 2px solid var(--r-br);
}

#page-wrapper .site-name-link .brics-font {
  font-weight: bold;
  font-family: 'Play', sans-serif;
  font-size: var(--solo-px16);
}

@media (max-width:48rem) {
  #page-wrapper .block-system-branding-block {
    display: flex;
    flex-direction: column;
  }

  #page-wrapper .branding-wrapper:not(.brics) .site-name {
    border-right: none;
  }

}

#page-wrapper {
  --r-bg: var(--main-bg);
  background: var(--r-bg);
  --r-tx: #4a5a6d;
}

#page-wrapper .pb__slide-nav {
  background: linear-gradient(180deg, #d8e5ed, #fff);
  border-radius: 24px 24px 0 0;
  width: 220px;
  margin: 0 auto;
}

.paragraph--type--slideshow-bundle .pb__slideshow-inner > .pb__slide-nav.pb__slide-number.dot > .pb__slide-bottom-btn {
  background: radial-gradient(circle at 40% 30%, #ffffff 10%, #cccccc 35%, #888888 60%, #222 100%);
}

.paragraph--type--slideshow-bundle .pb__slideshow-inner > .pb__slide-nav.pb__slide-number.dot > .pb__slide-bottom-btn.pb__active {
  background: linear-gradient(180deg, #d8e5ed, #3b5972);
  pointer-events: none;
  cursor: none;
}

.page-node-type-pb-content .main-box-inner .block-system-main-block>*>.node__content>.paragraph:not(.paragraph--type--hero-bundle, .paragraph--type--slideshow-bundle)>*>* {
  padding-right: var(--solo-px16);
  padding-left: var(--solo-px16);
}

#page-wrapper .solo-footer-menu,
.page-wrapper .solo-inner:not(.footer-menu-inner, body.contact .solo-inner) {
  --r-bg: transparent;
  background-color: var(--r-bg);
}

#page-wrapper .main-container {
  min-height: 600px;
}

#copyright {
  border-top: 5px solid var(--logo-gray);
  --r-bg: var(--logo-green);
  --r-tx: var(--solo-white);
}

#copyright-inner {
  padding-top: 0;
  padding-bottom: 0;
}

#footer-menu {
  --r-bg: var(--footer-bg);
  background: var(--r-bg);
  --r-tx: var(--solo-white);
}

#footer-menu ul.solo-footer-menu a {
  font-size: var(--solo-px14);
  font-weight: bold;
  text-decoration: underline;
  text-underline-offset: 4px;
  --r-br: var(--logo-green-light);
}

body.about .pb__hero-4 .field--name-pb-content-body {
  --r-h1:var(--pb-tx);
}

#primary-menu {
  --r-bg: var(--logo-green);
  --r-tx: var(--solo-white);
}

#primary-menu li:hover {
  --r-bg: var(--logo-green-dark);
}

#primary-menu li a {
  padding-left: 32px;
  padding-right: 32px;
}

#page-wrapper input[type="submit"] {
  --r-bg: var(--logo-green);
  background: var(--r-bg);
  color: var(--solo-white);
}

#page-wrapper input[type="submit"]:hover {
  --r-bg: var(--logo-green-dark);
}

body.contact .paragraph--type--one-column-bundle .pb__one-column {
  max-width: 42rem;
  background: transparent;
  margin: 3rem auto;
  border-radius: 2px;
  box-shadow: 0 var(--pb-px2) var(--pb-px6) rgba(0, 0, 0, 0.18), 0 var(--pb-px4) var(--pb-px12) rgba(0, 0, 0, 0.15);
  overflow: hidden;
}

body.contact .paragraph--type--one-column-bundle .pb__one-column .paragraph--type--simple-bundle {
  padding: 1rem 2rem;
  background: rgba(113, 150, 62, 0.6);
}

body.contact #page-wrapper .paragraph--type--one-column-bundle .pb__one-column .paragraph--type--simple-bundle h2 {
  line-height: calc(2 * var(--solo-px20));
  color: var(--solo-white) !important;
  margin: 0 !important;
}

body.contact .paragraph--type--one-column-bundle .pb__one-column .paragraph--type--contact-form-bundle {
  padding: 1rem 2rem 2rem 2rem;
  background: rgba(255, 255, 255, 0.9);
}

body.contact .paragraph--type--one-column-bundle .pb__one-column .paragraph--type--simple-bundle * {
  color: var(--solo-white) !important;
  background-color: transparent !important;
}

body.contact .paragraph--type--one-column-bundle .pb__one-column .paragraph--type--contact-form-bundle {
  --r-br: var(--logo-green-light);
}

body.contact #page-wrapper .paragraph--type--one-column-bundle .pb__one-column .paragraph--type--contact-form-bundle label {
  color: var(--logo-green) !important;
}

/*  */
.pb__grid-25,
.pb__grid-19 {
  background-image: url(../images/main-bg.svg);
  background-position: center top;
  background-repeat: repeat;
  background-size: cover;
  --r-br: var(--logo-green-light);
}

body.contact .paragraph--type--one-column-bundle {
  background-image: url(../images/contact.jpg);
  background-position: center top;
  background-repeat: repeat;
  background-size: cover;
}

body.home .paragraph--type--slideshow-bundle {
  background-image: url(../images/home-hero.jpg);
  background-position: center top;
  background-repeat: repeat;
  background-size: cover;
  min-height: 260px;
  border-bottom: 12px solid var(--solo-white);
}

body.home .paragraph--type--slideshow-bundle .field--name-pb-content-body h1 {
  margin: 50px 0;
}

body.home .pb__grid-19 .paragraph--type--icon-bundle {
  height: 100%;
}

body.home .pb__grid-19 .paragraph--type--icon-bundle > .pb__icon__inner {
  border: 2px solid var(--solo-white);
}

body.home .pb__grid-19 .paragraph--type--icon-bundle > .pb__icon__inner:hover {
  background: linear-gradient(45deg, #f0f5eb, #ffffff);
}

body.home .pb__grid-19 .pb__icon-15 > .pb__icon__inner:hover {
  border-color: #673ab7;
}

body.home .pb__grid-19 .pb__icon-20 > .pb__icon__inner:hover {
  border-color: #4caf50;
}

body.home .pb__grid-19 .pb__icon-21 > .pb__icon__inner:hover {
  border-color: #ff9800;
}

body.home .pb__grid-19 .pb__icon-22 > .pb__icon__inner:hover {
  border-color: #d32f2f;
}

body.home .pb__grid-25 .field--type-image .field__item img {
  display: block;
  max-width: 100%;
}

body.home .pb__slide-wrap-14 .pb__slide-wrap__inner,
body.home .pb__slide-wrap-14 .pb__slide-wrap__inner>*,
body.home .pb__slide-wrap-14 .pb__slide-wrap__inner>*>* {
  height: 100%;
}

body.home .pb__slide-wrap-14 .pb__slides {
  height: calc(100% - 40px) !important;
}

body.home .pb__grid-25 .pb__simple-24 {
  background: var(--solo-white);
  padding: 48px;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: var(--solo-px24);
  line-height: calc(2*var(--solo-px24));
  font-weight: 300;
  font-style: italic;
  --r-tx: #627389;
}

body.home .pb__hero-26 img {
  min-height: 400px;
}

body.about .pb__grid-29 .paragraph--type--simple-bundle {
  padding: var(--solo-px24);
  border: 2px solid var(--solo-white);
  transition: all 0.5s ease;
  border-radius: 24px;
}

body.about .pb__grid-29 .pb__grid-wrapper>* {
  height: 100%;
}

body.about .pb__grid-29 .paragraph--type--simple-bundle:hover {
  border-color: var(--logo-green-light);
  box-shadow: 0 20px 40px 0 rgba(0, 0, 0, 0.35);
  transform: scale(1.01);
}

body.about .pb__simple-3 .field {
  max-width: 1000px;
  margin: 120px auto;
  padding: 0 32px;
  border-left: 5px solid var(--logo-green-light);
  font-size: var(--solo-px20);
  font-weight: 200;
}

@media (min-width:48rem) {
  body.home .paragraph--id--26 {
    font-size: var(--solo-px24);
    line-height: calc(2*var(--solo-px20));
    font-weight: 200;
  }

  body.home .pb__hero-26 img {
    min-height: 400px;
  }

  body.home .paragraph--type--slideshow-bundle .field--name-pb-content-body h1 {
    font-size: var(--solo-px48);
    line-height: var(--solo-px48);
  }

}

@media (min-width:62rem) {
  body.home .pb__grid-25 .field--type-image .field__item {
    padding: 40px 24px 80px 24px;
    border-radius: 5px;
    background: var(--solo-white);
    border: 4px solid #e6ecf5;
    box-shadow: 0 -16px 40px rgba(0, 0, 0, 0.2);
    display: inline-block;
    transform: rotate(-6deg);
  }

  body.home .pb__grid-25 {
    padding-top: 70px;
  }

  body.home .pb__grid-25 .pb__simple-24 {
    margin-top: -70px;
    margin-left: -70px;
  }

  #page-wrapper .page-title-text {
    padding: 0;
  }

  #page-wrapper .page-title-text span {
    font-size: var(--solo-px36);
  }

  .timeline {
    position: relative;
    width: 100%;
    height: 40px;
    margin: 0 auto;
  }

  /* Horizontal line */
  .timeline::before {
    content: '';
    position: absolute;
    top: 50%;
    left: 0;
    right: 0;
    height: 6px;
    background-color: var(--logo-green);
    transform: translateY(-50%);
    z-index: 0;
  }

  /* Circle base */
  .circle {
    position: absolute;
    top: 50%;
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background-color: var(--logo-green);
    transform: translate(-50%, -50%);
    z-index: 1;
    font-size: 1px !important;
  }

  .circle.transparent {
    background-color: transparent;
  }

  /* Position control */
  .pos-0 {
    left: 16px;
  }

  .pos-25 {
    left: 27.5%;
  }

  .pos-50 {
    left: 53.5%;
  }

  .pos-75 {
    left: 79.2%;
  }

  .pos-100 {
    left: 100%;
  }

}

@media (min-width:75rem) {
  body.home .pb__hero-26 img {
    min-height: 500px;
  }

  body.home .paragraph--type--slideshow-bundle .field--name-pb-content-body h1 {
    font-size: calc(2*var(--solo-px32));
    line-height: calc(2*var(--solo-px36));
  }

}
.branding-second > * {
    min-width: auto;
}