@import url("https://fonts.googleapis.com/css?family=Assistant:400,700&display=swap");
/* Defaults
-------------------------------------------------------------- */
html {
  font-size: 20px;
}

body {
  color: #2B2B2B;
  font-size: 1rem;
  direction: rtl;
  line-height: 1.4;
  font-weight: 400;
  font-family: "Assistant", sans-serif;
  text-align: right;
}

body.has-overflow {
  overflow: hidden;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  position: relative;
  display: block;
  font-family: "Assistant", sans-serif;
  font-weight: 300;
  line-height: 1.1em;
}

h1 {
  font-size: 3rem;
}

h2 {
  font-size: 3rem;
}

h3 {
  font-size: 1.7rem;
}

h4 {
  font-size: 1rem;
}

div,
p,
span,
a,
input,
input[type="submit"],
select,
textarea {
  font-family: "Assistant", sans-serif;
}

strong,
b {
  font-weight: bold;
}

i,
em {
  font-style: italic;
}

a,
input[type="submit"],
button,
.transition {
  -webkit-transition: all 400ms ease;
  -moz-transition: all 400ms ease;
  -ms-transition: all 400ms ease;
  -o-transition: all 400ms ease;
  transition: all 400ms ease;
}

a {
  text-decoration: none;
}

a:hover,
a:focus {
  color: #0F79B7;
}

img {
  max-width: 100%;
}

img.grayscale {
  -webkit-filter: grayscale(100%);
  filter: grayscale(100%);
  filter: gray;
  filter: url("data:image/svg+xml;utf8,<svg version='1.1' xmlns='http://www.w3.org/2000/svg' height='0'><filter id='greyscale'><feColorMatrix type='matrix' values='0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0 0 0 1 0' /></filter></svg>#greyscale");
}

img.grayscale:hover {
  filter: none;
  -webkit-filter: grayscale(0%);
}

.round {
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  border-radius: 50%;
}

.center {
  text-align: center;
}

.bold {
  font-weight: 700;
}

.white-color {
  color: #fff;
}

.primary-color {
  color: #0F79B7;
}

.green-color {
  color: #33B55F;
}

.yellow-color {
  color: #F2D200;
}

.primary-bg {
  background-color: #0F79B7;
  color: #fff;
}

.green-bg {
  background-color: #33B55F;
}

.dark-blue-bg {
  background-color: #004162;
}

.yellow-bg {
  background-color: #F2D200;
}

.big-text {
  font-size: 3rem;
  line-height: 1.1;
}

.medium-text {
  font-size: 1.7rem;
}

.button {
  background-color: #0F79B7;
  color: #fff;
  border-radius: 50px;
  display: inline-block;
  padding: 0.2em 0.8em;
  transition: 0.3s;
}

.button.yellow-button {
  background-color: #F2D200;
  color: #004162;
}

.button.yellow-button:hover {
  background-color: #33B55F;
  color: #ffffff;
}

.button.green-button {
  background-color: #33B55F;
}

.button.green-button:hover {
  background-color: #004162;
}

.button.green-clear {
  background-color: transparent;
  border: 2px solid #33B55F;
  color: #33B55F;
}

.button:hover {
  text-decoration: none;
  background-color: #33B55F;
  color: #fff;
}

.content ol,
.content ul {
  margin-left: 10px;
  padding-left: 10px;
  font-size: 1rem;
  line-height: 1.4em;
  margin-bottom: 8px;
}

.content ol {
  list-style: decimal;
}

.content p {
  font-size: 1rem;
  line-height: 1.2em;
  margin-bottom: 0.8em;
}

/****************************************************************
    LAYOUT  LAYOUT  LAYOUT  LAYOUT  LAYOUT  LAYOUT  LAYOUT  LAYOUT
****************************************************************/
.off-canvas-wrapper {
  position: relative;
  overflow: hidden;
}

.container {
  max-width: 1200px;
  width: 100%;
  margin: 0 auto;
  position: relative;
  display: block;
}

.flex_container {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

header {
  position: fixed;
  left: 0;
  right: 0;
  background-color: transparent;
  z-index: 5555555;
  padding: 10px 15px;
  font-size: 0.9rem;
  transition: 0.5s;
  background-image: linear-gradient(#eee, transparent);
  background-size: 100% 100%;
  background-position: top;
}

header .container {
  display: flex;
  justify-content: flex-start;
}

header .logo {
  display: flex;
  justify-content: flex-start;
  align-items: center;
}

header .socials {
  display: flex;
  justify-content: space-around;
}

header .socials .single-social {
  transition: all 0.2s ease-out;
}

header .socials .single-social svg {
  height: 0.9rem;
  width: 0.9rem;
  vertical-align: top;
}

header .socials .single-social path {
  fill: #0F79B7;
}

header .socials .single-social:hover path {
  fill: #33B55F;
}

header .nav {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  align-items: flex-end;
  flex-wrap: nowrap;
}

header .single-detail {
  color: #0F79B7;
  margin-right: 15px;
}

header .single-detail svg {
  margin-left: 5px;
}

header .single-detail svg path {
  stroke: #0F79B7;
}

header.bg-header {
  transition: 0.5s;
  background-size: 100% 400%;
}

header.bg-header .buttons .user-message {
  text-align: inherit;
}

header.bg-header .nav {
  width: 70%;
  transition: 0.5s 0.2s;
}

header.bg-header .logo {
  width: calc(50% - 40px);
  transition: 0.5s 0.2s;
}

header.bg-header .logo img {
  width: 70px;
  height: auto;
  transition: 0.3s 0s;
  transform: translateX(0);
}

header.bg-header .single-detail {
  opacity: 1;
  width: auto;
  transition: 0.5s opacity 1s;
}

header:not(.bg-header) {
  padding-top: 50px;
}

header:not(.bg-header) .mobile_menu_button {
  display: block;
  padding: 0.2em 0;
}

header:not(.bg-header) .nav {
  width: 0;
  overflow: hidden;
  opacity: 0;
  transition: 0.5s 0s;
}

header:not(.bg-header) .logo {
  width: calc(50% - 40px);
  margin-right: 50%;
  transition: 0.5s 0s;
}

header:not(.bg-header) .logo img {
  width: 180px;
  height: auto;
  transition: 0.5s 0.3s;
  transform: translateX(50%);
}

header:not(.bg-header) .single-detail {
  opacity: 0;
  width: 0;
  overflow: hidden;
  transition: 0.5s opacity 1s;
}

.floating-buttons {
  position: fixed;
  left: 15px;
  bottom: 15px;
  display: flex;
  z-index: 2;
}

.floating-buttons .icon-button {
  padding: 15px;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 3px solid #fff;
  border-radius: 50px;
  margin-right: 10px;
}

.floating-buttons .icon-button .icon {
  width: 35px;
  height: 35px;
}

.floating-buttons .icon-button .icon svg {
  width: 100%;
  height: 100%;
}

.floating-buttons .icon-button .button-text {
  opacity: 0;
  max-width: 0;
  max-height: 35px;
  overflow: hidden;
  color: #fff;
  transition: 0s;
}

.floating-buttons .icon-button:hover {
  text-decoration: none;
}

.floating-buttons .icon-button:hover .button-text {
  opacity: 1;
  max-width: 200px;
  transition: 0.4s opacity 0.4s, 0.5s max-width 0s;
  padding-right: 10px;
  text-decoration: none;
}

/** Main Menu */
ul#main-menu {
  position: relative;
  display: flex;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  flex-direction: row;
  padding: 0;
  margin: 0;
  list-style: none;
}

ul#main-menu > li {
  position: relative;
}

ul#main-menu > li > a {
  position: relative;
  display: block;
  font-size: 1rem;
  color: #0F79B7;
  line-height: 1.667rem;
  padding: 5px 10px;
}

ul#main-menu > li.current-menu-item > a {
  color: #2B2B2B;
}

ul#main-menu > li > a:focus,
ul#main-menu > li > a:hover {
  text-decoration: none;
  color: #2B2B2B;
}

/** Sub Menu  ***/
ul#main-menu ul.sub-menu {
  position: absolute;
  z-index: 10;
  right: 0;
  width: 200px;
  padding: 0;
  margin: 0;
  padding-top: 15px;
  top: -1000px;
  transition: 0.5s opacity 0.1s,  0.1s top 0.5s;
  opacity: 0;
}

ul#main-menu > li.menu-item-has-children::after {
  content: '';
  position: absolute;
  right: 14px;
  height: 0;
  width: 1px;
  background-color: #0F79B7;
  top: calc(100% - 5px);
  transition: 0.5s;
}

ul#main-menu > li.menu-item-has-children:hover::after {
  height: 200px;
}

ul#main-menu > li.menu-item-has-children:hover > ul.sub-menu {
  top: 100%;
  opacity: 1;
  transition: 0.5s opacity 0.4s, 0.1s top 0.1s;
}

ul#main-menu ul.sub-menu li {
  position: relative;
  display: block;
  padding: 3px 0;
}

ul#main-menu ul.sub-menu li a {
  position: relative;
  display: inline-block;
  padding: 8px 15px;
  color: #0F79B7;
  background-color: #eee;
  border-radius: 50px;
}

ul#main-menu ul.sub-menu li a:hover,
ul#main-menu ul.sub-menu li a:focus {
  text-decoration: none;
  color: #fff;
  background-color: #0F79B7;
}

/****** General ******/
.page-template-accessibility {
  direction: rtl;
}

.page-template-accessibility .main-container {
  padding: 70px 15px;
}

.page-template-accessibility h1 {
  text-align: center;
}

.page-template-accessibility h2 {
  font-size: 2rem;
  margin-top: 50px;
  text-align: right;
}

.page-template-accessibility p {
  text-align: right !important;
  line-height: 1.4;
}

.page-template-accessibility .content ul {
  direction: rtl;
  list-style: disc;
}

.page-template-accessibility .content ul p {
  text-align: right;
}

.page-template-accessibility .content ul li {
  font-size: 0.9rem;
  text-align: right;
  margin-bottom: 10px;
}

/* fixes potential theme css conflict */
.acf-map img {
  max-width: inherit !important;
}

.section {
  position: relative;
  padding: 70px 0;
}

.top-curve-section {
  margin-top: 8vw;
}

.top-curve {
  position: absolute;
  bottom: 100%;
  display: flex;
}

.top-curve svg {
  width: 100%;
  height: auto;
}

.bottom-curve-section {
  margin-bottom: 8vw;
}

.bottom-curve-section.top-wave {
  padding: 20px 0;
}

.bottom-curve {
  position: absolute;
  top: 100%;
  z-index: 2;
  display: flex;
}

.bottom-curve svg {
  width: 100%;
  height: auto;
}

.homepage .top-section {
  padding: 15px 0 70px;
}

.homepage .top-section .text-side {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  padding-bottom: 30px;
}

.homepage .top-section .youtube-link {
  margin-top: 20px;
}

.homepage .top-section .youtube-link svg {
  margin-left: 5px;
}

.homepage .top-section .youtube-link path {
  transition: 0.5s;
}

.homepage .top-section .youtube-link:hover {
  text-decoration: none;
  color: #ffffff;
}

.homepage .top-section .youtube-link:hover path {
  fill: #ffffff;
}

.homepage .top-section .main-illus svg {
  margin-bottom: -150px;
}

.homepage .top-section .button {
  margin: 50px 1rem;
}

.homepage .services-section {
  padding-bottom: 100px;
}

.homepage .services-section .flex_container {
  padding: 0 15px;
  width: 100%;
  max-width: 1600px;
  margin: 0 auto;
}

.homepage .services-section .row {
  width: 100%;
}

.homepage .services-section .single-service-wrapper {
  margin-bottom: 80px;
}

.homepage .services-section .single-service {
  padding: 0 50px;
  max-width: 500px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-between;
  height: 100%;
}

.homepage .services-section .single-service .icon {
  width: 200px;
  height: 200px;
  border-radius: 50%;
  background-color: #33B55F;
  margin: 0 auto 30px;
  display: flex;
  justify-content: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  align-items: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
}

.homepage .services-section .single-service .button {
  margin-top: 40px;
}

@keyframes big-blob {
  0% {
    transform: translate(0) rotate(0);
  }
  25% {
    transform: translate(20px, 50px) rotate(80deg);
  }
  50% {
    transform: translate(80px, -50px) rotate(140deg);
  }
  75% {
    transform: translate(60px, -20px) rotate(50deg);
  }
  100% {
    transform: translate(0) rotate(0);
  }
}

@keyframes small-blob {
  0% {
    transform: translate(0) rotate(0);
  }
  10% {
    transform: translate(-20px, -50px) rotate(60deg);
  }
  40% {
    transform: translate(-80px, 20px) rotate(120deg);
  }
  80% {
    transform: translate(60px, -20px) rotate(50deg);
  }
  100% {
    transform: translate(0) rotate(0);
  }
}

.homepage .about-section {
  position: relative;
  z-index: 2;
  padding-top: 100px;
}

.homepage .about-section .row {
  padding: 50px 0;
}

.homepage .about-section .content {
  max-width: 450px;
  padding-top: 30px;
  z-index: 5;
  position: relative;
}

.homepage .about-section .button {
  z-index: 5;
  position: relative;
}

.homepage .about-section .image-wrapper {
  position: relative;
  max-width: 450px;
  margin: 0 auto;
}

.homepage .about-section .image-wrapper .blob {
  position: absolute;
}

.homepage .about-section .image-wrapper .blob.big-blob {
  top: -100px;
  animation-name: big-blob;
  animation-duration: 17s;
  animation-iteration-count: infinite;
  animation-timing-function: linear;
  width: 135%;
}

.homepage .about-section .image-wrapper .blob.big-blob svg {
  width: 100%;
  height: auto;
}

.homepage .about-section .image-wrapper .blob.small-blob {
  bottom: -100px;
  animation-name: small-blob;
  animation-duration: 10s;
  animation-iteration-count: infinite;
  animation-timing-function: linear;
  width: 55%;
}

.homepage .about-section .image-wrapper .blob.small-blob svg {
  width: 100%;
  height: auto;
}

.homepage .about-section .image {
  width: 100%;
  padding-top: 100%;
  border-radius: 50%;
  background-size: cover;
  position: relative;
}

.homepage .about-section .image::before {
  content: '';
  position: absolute;
  width: calc(100% + 30px);
  height: calc(100% + 30px);
  border: 2px solid #0F79B7;
  left: -15px;
  top: -15px;
  border-radius: 50%;
}

.homepage .benefits-section {
  margin-top: 100px;
  border-bottom: 10px solid #0F79B7;
}

.homepage .benefits-section .single-benefit {
  max-width: 230px;
  margin: 50px auto 0;
}

.homepage .benefits-section .single-benefit .icon-wrapper {
  overflow: hidden;
  margin-bottom: 30px;
  padding: 15px;
  border-bottom: 2px solid #fff;
}

.homepage .benefits-section .single-benefit .icon {
  width: 200px;
  height: 200px;
  border-radius: 50%;
  background-color: #004162;
  margin: 0 auto;
  display: flex;
  justify-content: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  align-items: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  transform: translateY(50%);
  transition: 0.5s;
}

.homepage .benefits-section .single-benefit:hover .icon {
  transform: translateY(0);
}

@keyframes testi-blob {
  0% {
    transform: translate(0) rotate(0);
  }
  10% {
    transform: translate(-10px, -20px) rotate(20deg) skewX(15deg);
  }
  40% {
    transform: translate(-20px, -20px) rotate(-20deg) skewX(-15deg);
  }
  80% {
    transform: translate(10px, 20px) rotate(50deg) skewX(-15deg) skewY(15deg);
  }
  100% {
    transform: translate(0) rotate(0);
  }
}

.homepage .testimonial-section {
  padding-top: 150px;
  min-height: 200px;
}

.homepage .testimonial-section h2 {
  margin-bottom: 70px;
  z-index: 4;
  position: relative;
}

.homepage .testimonial-section .illus-side {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

.homepage .testimonial-section .illus-wrapper {
  position: relative;
  width: 100%;
  max-width: 1;
}

.homepage .testimonial-section .blob {
  position: absolute;
  top: -100px;
  right: -100px;
  animation-name: testi-blob;
  animation-duration: 20s;
  animation-iteration-count: infinite;
  animation-timing-function: linear;
  z-index: 2;
}

.homepage .testimonial-section .blob svg {
  max-width: 100%;
  height: auto;
}

.homepage .testimonial-section .illus {
  position: relative;
  z-index: 3;
  text-align: center;
}

.homepage .testimonial-section .illus svg {
  max-width: 100%;
  height: auto;
}

.homepage .testimonial-section .text-side {
  position: relative;
  z-index: 4;
}

.homepage .testimonial-section .quotes {
  margin-right: 60px;
  margin-bottom: 30px;
}

.slick-slider {
  flex-wrap: wrap;
  align-items: center;
}

.slick-list {
  flex: 1;
}

.slick-dots {
  list-style: none;
  display: flex;
  margin: 0;
  padding: 0;
  width: 100%;
  margin-right: 60px;
  margin-top: 20px;
}

.slick-dots li {
  margin-left: 5px;
}

.slick-dots button {
  font-size: 0;
  background-color: transparent;
  width: 13px;
  height: 13px;
  border-radius: 50%;
  border: 2px solid #0F79B7;
  padding: 0;
}

.slick-dots .slick-active button {
  background-color: #0F79B7;
}

.slick-arrow {
  font-size: 0;
  background-color: transparent;
  border: 0;
  top: 50%;
  z-index: 2;
  width: 30px;
  height: 30px;
  margin: 15px;
}

.slick-arrow::after {
  content: '';
  position: absolute;
  width: 30px;
  height: 30px;
  border-bottom: 2px solid #0F79B7;
  right: 0;
  top: 0;
}

.slick-arrow.slick-prev {
  transform: rotate(-45deg) translate(50%, -50%);
  transform-origin: center;
  border-right: 2px solid #0F79B7;
}

.slick-arrow.slick-next {
  transform: rotate(45deg) translate(-50%, -50%);
  transform-origin: center;
  border-left: 2px solid #0F79B7;
}

.slick-arrow.slick-disabled {
  opacity: 0.3;
}

.articles-section {
  padding: 0;
  border-bottom: 10px solid #33B55F;
}

.articles-section .blue-bg {
  padding-top: 14vw;
  padding-bottom: 70px;
  background-color: rgba(15, 121, 183, 0.85);
}

.articles-section h2 {
  margin-bottom: 70px;
}

.articles-section .row {
  margin-bottom: 50px;
}

.articles-section .single-article {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: flex-start;
  height: 100%;
  padding-bottom: 70px;
}

.articles-section .title {
  margin-top: 20px;
  padding-bottom: 30px;
  border-bottom: 1px solid #fff;
  margin-bottom: 30px;
  min-height: 5.5em;
}

@keyframes contact-blob {
  0% {
    transform: translate(0) rotate(90deg);
  }
  10% {
    transform: scale(1.1) translate(-10px, -20px) rotate(70deg) skewX(15deg);
  }
  40% {
    transform: scale(1.2) translate(-20px, -20px) rotate(130deg) skewX(-15deg);
  }
  80% {
    transform: scale(1.1) translate(10px, 20px) rotate(50deg) skewX(-15deg) skewY(15deg);
  }
  100% {
    transform: translate(0) rotate(90deg);
  }
}

.contact-section {
  padding-top: 100px;
}

.contact-section h2 {
  margin-bottom: 50px;
}

.contact-section .all-contact-methods {
  display: flex;
  justify-content: space-between;
  margin-bottom: 50px;
}

.contact-section .contact-details {
  display: flex;
}

.contact-section .contact-details .single-detail {
  color: #2B2B2B;
  margin-left: 30px;
}

.contact-section .contact-details .single-detail svg {
  margin-left: 5px;
}

.contact-section .contact-details .single-detail:hover {
  text-decoration: none;
}

.contact-section .contact-details .single-detail:hover path, .contact-section .contact-details .single-detail:hover rect, .contact-section .contact-details .single-detail:hover line, .contact-section .contact-details .single-detail:hover circle {
  stroke: #004162;
}

.contact-section .social {
  display: flex;
}

.contact-section .social .single-social {
  display: block;
  margin-right: 15px;
}

.contact-section .social .single-social svg {
  height: 25px;
  width: 25px;
}

.contact-section .social .single-social path {
  fill: #F2D200;
}

.contact-section .social .single-social:hover path {
  fill: #004162;
}

.contact-section .illus-wrapper {
  position: relative;
  width: 100%;
  max-width: 1;
  height: 100%;
  display: flex;
  align-items: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
}

.contact-section .blob {
  position: absolute;
  top: 10%;
  left: 0;
  transform: translate(0) rotate(90deg);
  animation-name: contact-blob;
  animation-duration: 20s;
  animation-iteration-count: infinite;
  animation-timing-function: linear;
  z-index: 2;
}

.contact-section .blob svg {
  max-width: 100%;
  height: auto;
}

.contact-section .illus {
  position: relative;
  z-index: 3;
  text-align: center;
}

.contact-section .illus svg {
  max-width: 100%;
  height: auto;
}

.wpcf7-form {
  font-size: 0.8rem;
  max-width: 400px;
}

.wpcf7-form * {
  width: 100%;
}

.wpcf7-form p {
  margin-bottom: 5px;
}

.wpcf7-form input, .wpcf7-form textarea, .wpcf7-form select {
  border-radius: 25px;
  border: 1px solid #ddd;
  padding: 7px 20px;
  transition: 0.3s;
}

.wpcf7-form input:hover, .wpcf7-form textarea:hover, .wpcf7-form select:hover {
  border: 1px solid #8a8a8a;
}

.wpcf7-form input:focus, .wpcf7-form textarea:focus, .wpcf7-form select:focus {
  outline: 0;
  border: 1px solid #F2D200;
}

.wpcf7-form select[name="menu-375"] {
  -webkit-appearance: none;
  -moz-appearance: none;
  background: transparent;
  background-image: url("data:image/svg+xml;utf8,<svg fill='black' height='24' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'><path d='M7 10l5 5 5-5z'/><path d='M0 0h24v24H0z' fill='none'/></svg>");
  background-repeat: no-repeat;
  background-position-x: 3%;
  background-position-y: 50%;
}

.wpcf7-form input[type="submit"] {
  background-color: #33B55F;
  font-size: 1.2rem;
  font-weight: 700;
  color: #fff;
  width: auto;
  padding: 5px 40px;
}

.wpcf7-form textarea {
  height: 150px;
}

footer {
  position: relative;
  padding-bottom: 5px;
}

footer a {
  color: #fff;
  text-decoration: underline;
}

footer .credit-accessibility {
  font-size: 0.7rem;
  display: flex;
}

footer .credit {
  margin-left: 15PX;
}

@keyframes about-blob {
  0% {
    transform: translate(0) rotate(0);
  }
  10% {
    transform: translate(-10px, -20px) rotate(20deg) skewX(15deg);
  }
  40% {
    transform: translate(-20px, -20px) rotate(-20deg) skewX(-15deg);
  }
  80% {
    transform: translate(10px, 20px) rotate(15deg) skewX(-15deg) skewY(15deg);
  }
  100% {
    transform: translate(0) rotate(0);
  }
}

.title-section {
  background-color: #004162;
  color: #fff;
  padding-bottom: 20px;
}

.title-section .content {
  max-width: 600px;
}

.about-main-section .illus-side {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

.about-main-section .illus-wrapper {
  position: relative;
}

.about-main-section .illus-wrapper svg {
  max-width: 100%;
  height: auto;
}

.about-main-section .blob {
  position: absolute;
  top: 0;
  right: 0;
  animation-name: about-blob;
  animation-duration: 40s;
  animation-iteration-count: infinite;
  animation-timing-function: linear;
  z-index: 5;
}

.about-main-section .illus {
  position: relative;
  z-index: 6;
}

@keyframes vision-hearts {
  0% {
    opacity: 1;
  }
  10% {
    opacity: 0;
  }
  40% {
    opacity: 1;
  }
  80% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

.vision-section {
  border-bottom: 7px solid #33B55F;
}

.vision-section .text-side {
  margin-top: 30px;
}

.vision-section .illus-side {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

.vision-section .illus-wrapper {
  position: relative;
}

.vision-section .illus-wrapper svg {
  max-width: 100%;
  height: auto;
}

.vision-section .vision-hands {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 5;
}

.vision-section .vision-hearts {
  animation-name: vision-hearts;
  animation-duration: 7s;
  animation-iteration-count: infinite;
  animation-timing-function: linear;
  position: relative;
  z-index: 6;
}

.articles-page h2 {
  font-weight: 700;
  font-size: 1.7rem;
  margin-bottom: 15px;
}

.articles-page .content h2 {
  color: #33B55F;
}

.articles-page .articles-section {
  border-bottom: 0;
}

.articles-page .single-article {
  padding-bottom: 100px;
  max-width: 500px;
}

.articles-page .single-article .top {
  width: 100%;
}

.articles-page .single-article .thumbnail-wrapper {
  width: 400px;
  max-width: 100%;
  position: relative;
  margin-bottom: 15px;
}

.articles-page .single-article .thumbnail-wrapper .thumbnail {
  clip-path: none;
  background-size: cover;
  background-position: center;
  box-shadow: 1px 1px 15px rgba(0, 0, 0, 0.1);
  border-radius: 30% 70% 70% 30% / 30% 30% 70% 70%;
}

.articles-page .single-article-wrapper:nth-child(3n-3) .single-article .thumbnail-wrapper .thumbnail {
  border-radius: 60% 40% 70% 30% / 46% 72% 28% 54%;
}

.articles-page .single-article-wrapper:nth-child(3n-2) .single-article .thumbnail-wrapper .thumbnail {
  border-radius: 38% 62% 51% 49% / 69% 72% 28% 31%;
}

.a-breadcrumb {
  text-decoration: underline;
  color: #2B2B2B;
  opacity: 0.5;
  margin-bottom: 10px;
  display: block;
}

.a-breadcrumb:hover {
  color: #2B2B2B;
  opacity: 0.8;
}

.single-article .thumbnail-wrapper {
  width: 782px;
  max-width: 100%;
  position: relative;
  margin-bottom: 80px;
}

.single-article .thumbnail-wrapper .thumbnail {
  background-color: #ddd;
  position: relative;
  padding-top: 54%;
  clip-path: url(#svgClip);
  background-size: cover;
  background-position: center;
}

.single-article .blob {
  position: absolute;
}

.single-article .blob.article-blob {
  animation-name: big-blob;
  animation-duration: 37s;
  animation-iteration-count: infinite;
  animation-timing-function: linear;
  width: 35%;
  bottom: 7%;
  right: 2.8%;
}

.single-article .blob.article-blob svg {
  width: 100%;
  height: auto;
}

.single-article .blob.article-blob-2 {
  top: -12%;
  animation-name: small-blob;
  animation-duration: 20s;
  animation-iteration-count: infinite;
  animation-timing-function: linear;
  width: 25%;
  left: 0;
}

.single-article .blob.article-blob-2 svg {
  width: 100%;
  height: auto;
}

.service-title {
  display: flex;
}

.service-title h1 {
  flex: 1;
}

.service-title .icon {
  position: relative;
  z-index: 2;
  width: 200px;
  height: 200px;
  border-radius: 50%;
  background-color: #33B55F;
  margin-left: 15px;
  margin-top: calc(-200px + 3rem);
  display: flex;
  justify-content: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  align-items: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
}

.main-service-section .illus-side {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

.main-service-section .illus-wrapper {
  position: relative;
}

.main-service-section .illus-wrapper svg {
  max-width: 100%;
  height: auto;
}

.main-service-section .blob {
  position: absolute;
  top: 0;
  right: 0;
  animation-name: about-blob;
  animation-duration: 40s;
  animation-iteration-count: infinite;
  animation-timing-function: linear;
  z-index: 5;
}

.main-service-section .illus {
  position: relative;
  z-index: 6;
}

.blue-service-section {
  border-bottom: 8px solid #33B55F;
}

.numbered-service-section {
  padding-top: 120px;
}

.numbered-service-section .main-numbers-text {
  max-width: 700px;
  margin: 30px auto 50px;
}

.numbered-service-section .number-wrapper {
  max-width: 265px;
  margin: 0 auto;
  padding-bottom: 50px;
}

#acwp-toolbar-btn {
  z-index: 5555555 !important;
  bottom: 15px !important;
  top: auto !important;
}

.acwp-toolbar {
  z-index: 5555555 !important;
}

/* Edit Above Only*/
.mobile_menu_button {
  position: relative;
  display: none;
  align-items: center;
}

.triggerMobileMenu {
  position: relative;
  width: 40px;
  height: 28px;
  padding: 0;
  border: 0;
  margin: 0 auto;
  -webkit-transform: rotate(0deg);
  -moz-transform: rotate(0deg);
  -o-transform: rotate(0deg);
  transform: rotate(0deg);
  -webkit-transition: .5s ease-in-out;
  -moz-transition: .5s ease-in-out;
  -o-transition: .5s ease-in-out;
  transition: .5s ease-in-out;
  cursor: pointer;
  background: none;
  text-indent: -99999px;
}

.triggerMobileMenu span {
  display: block;
  position: absolute;
  height: 2px;
  width: 100%;
  background: #0F79B7;
  border-radius: 9px;
  opacity: 1;
  left: 0;
  -webkit-transform: rotate(0deg);
  -moz-transform: rotate(0deg);
  -o-transform: rotate(0deg);
  transform: rotate(0deg);
  -webkit-transition: .25s ease-in-out;
  -moz-transition: .25s ease-in-out;
  -o-transition: .25s ease-in-out;
  transition: .25s ease-in-out;
}

.triggerMobileMenu span:nth-child(1) {
  top: 0px;
}

.triggerMobileMenu span:nth-child(2) {
  top: 11px;
}

.triggerMobileMenu span:nth-child(3) {
  top: 22px;
}

.triggerMobileMenu.open span:nth-child(1) {
  top: 11px;
  -webkit-transform: rotate(135deg);
  -moz-transform: rotate(135deg);
  -o-transform: rotate(135deg);
  transform: rotate(135deg);
}

.triggerMobileMenu.open span:nth-child(2) {
  opacity: 0;
  left: -60px;
}

.triggerMobileMenu.open span:nth-child(3) {
  top: 11px;
  -webkit-transform: rotate(-135deg);
  -moz-transform: rotate(-135deg);
  -o-transform: rotate(-135deg);
  transform: rotate(-135deg);
}

.button.triggerMobileMenu:focus,
.button.triggerMobileMenu:hover {
  background: none;
  outline: none;
}

/** off-cnavas (mobile menu wrapper) ****************/
.off-canvas {
  position: fixed;
  z-index: 1;
  transition: transform .5s ease;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  background-color: #0F79B7;
  top: 0;
  width: 250px;
  height: 100%;
  overflow-y: auto;
}

.off-canvas.is-open {
  z-index: 9999999;
  transform: translate(0);
}

.position-left {
  transform: translateX(-250px);
  left: 0;
}

.position-right {
  transform: translateX(250px);
  right: 0;
}

body.admin-bar .off-canvas {
  top: 32px;
}

/** Mobile Menu Style **************/
.mobile_menu_holder {
  position: relative;
}

ul#mobile-menu {
  position: relative;
  display: block;
  width: 100%;
  padding: 0;
  margin: 0;
}

ul#mobile-menu li {
  position: relative;
  display: block;
}

ul#mobile-menu > li {
  border-bottom: 1px solid #0F79B7;
}

ul#mobile-menu li a {
  position: relative;
  display: block;
  font-size: 1rem;
  font-size: 0.9rem;
  text-decoration: none;
  padding: 10px 15px;
  color: #fff;
}

ul#mobile-menu ul.sub-menu {
  position: relative;
  display: block;
  margin-right: 15px;
  padding: 0;
}

ul#mobile-menu ul.sub-menu li a {
  padding: 0px 15px 5px 15px;
  font-size: 0.85rem;
}

ul#mobile-menu ul.sub-menu li a:before {
  position: absolute;
  display: block;
  left: 0;
  top: 0px;
  content: '>>';
  font-size: 0.7rem;
}

ul#mobile-menu > li > a:focus,
ul#mobile-menu > li.current-menu-item > a,
ul#mobile-menu ul.sub-menu li.current-menu-item a,
ul.mobile_menu > li a:hover {
  color: #0F79B7;
}

/****************************************************************************************************************/
@media only screen and (max-width: 1440px) {
  header:not(.bg-header) {
    padding-top: 20px;
  }
  header:not(.bg-header) .logo img {
    width: 100px;
  }
  .big-text {
    font-size: 2.6rem;
  }
  .page-wrap.homepage .top-section .main-illus svg {
    margin-bottom: -20vh;
    max-height: 50vh;
  }
  .page-wrap.homepage .top-section .blob-floor {
    text-align: left;
  }
  .page-wrap.homepage .top-section .blob-floor svg {
    max-height: 25vh;
    width: auto;
  }
}

/* end of (max-width: 1440px) */
/****************************************************************************************************************/
@media only screen and (max-height: 920px) {
  header:not(.bg-header) {
    padding-top: 20px;
  }
  header:not(.bg-header) .logo img {
    width: 150px;
  }
  h2 {
    font-size: 2rem;
  }
  .page-wrap.homepage .top-section .big-text {
    font-size: 2rem;
  }
  .page-wrap.homepage .top-section .main-illus svg {
    margin-bottom: -20vh;
    max-height: 50vh;
    margin-right: -20%;
  }
  .page-wrap.homepage .top-section .blob-floor {
    text-align: left;
  }
  .page-wrap.homepage .top-section .blob-floor svg {
    max-height: 25vh;
    width: auto;
  }
  .page-wrap.homepage .top-section .button {
    margin-top: 20px;
    font-size: 1.1rem;
  }
  .contact-section .all-contact-methods {
    flex-direction: column;
  }
  .contact-section .all-contact-methods .contact-details {
    flex-wrap: wrap;
  }
  .contact-section .all-contact-methods .contact-details .single-detail {
    margin-bottom: 15px;
  }
  .contact-section .all-contact-methods .social {
    margin-top: 15px;
  }
  .contact-section .all-contact-methods .social .single-social {
    margin-right: 0;
    margin-left: 15px;
  }
  .service-title .icon {
    width: 150px;
    height: 150px;
    padding: 35px;
    margin-top: calc(-150px + 2rem);
  }
}

/* end of (max-height: 920px) */
/****************************************************************************************************************/
@media only screen and (max-width: 1200px) {
  h1 {
    font-size: 2.5rem;
  }
  .big-text {
    font-size: 2rem;
  }
}

/* end of (max-width: 1200px) */
/****************************************************************************************************************/
@media only screen and (max-width: 990px) {
  .contact-section .contact-details {
    flex-direction: column;
    margin-bottom: 1rem;
  }
  .contact-section .contact-details .single-detail {
    margin: 0.5rem 0;
    font-size: 18px;
  }
  .contact-section .all-contact-methods {
    flex-direction: column;
  }
  .contact-section .social .single-social:first-of-type {
    margin-right: 0;
  }
  .single-article .thumbnail-wrapper {
    width: 782px;
    max-width: 100%;
    position: relative;
    margin-bottom: 50px;
  }
  .single-article .thumbnail-wrapper .thumbnail {
    clip-path: none;
    background-size: cover;
    background-position: center;
    border-radius: 30% 70% 70% 30% / 30% 30% 70% 70%;
  }
}

/* end of (max-width: 990px) */
/****************************************************************************************************************/
@media only screen and (max-width: 768px) {
  .mobile_menu_button {
    display: flex;
  }
  .mobile_menu_holder .socials {
    display: flex;
    max-width: 85%;
    padding: 15px;
    margin: 0  0 auto 0;
    justify-content: space-between;
  }
  .mobile_menu_holder .socials .single-social svg {
    height: 0.86rem;
  }
  .mobile_menu_holder .socials .single-social svg path {
    fill: #fff;
  }
  .mobile_menu_holder ul#mobile-menu ul.sub-menu li a:before {
    content: none;
  }
  .wrap_main_menu {
    display: none;
  }
  body.admin-bar .off-canvas {
    top: 46px;
  }
  .flex_container {
    flex-direction: column;
  }
  header .wrap {
    display: none;
  }
  header .single-detail .text {
    display: none;
  }
  .floating-buttons .icon-button {
    padding: 7px;
    border-width: 2px;
    margin-right: 5px;
  }
  .floating-buttons .icon-button .icon {
    width: 20px;
    height: 20px;
    display: flex;
  }
  .floating-buttons .icon-button .button-text {
    max-height: 20px;
    font-size: 0.8rem;
  }
  .homepage .top-section {
    padding: 15px 0 40px;
    text-align: center;
  }
  .homepage .top-section .main-illus svg {
    margin-right: 0;
    max-width: 100%;
  }
  .homepage .top-section .button {
    margin: 1rem;
  }
  .homepage .services-section .single-service {
    padding: 0 1rem;
    max-width: 100%;
  }
  .homepage .about-section .content {
    padding-top: 0;
  }
  .homepage .about-section .image-wrapper {
    margin: 70px auto 30px;
  }
  .homepage .testimonial-section h2 {
    margin-bottom: 20vw;
  }
  .homepage .testimonial-section .text-side {
    margin-top: 70px;
  }
  .blue-service-section .big-text {
    margin-bottom: 1em;
  }
}

/* end of (max-width: 768px) */
/****************************************************************************************************************/
@media only screen and (max-width: 640px) {
  .service-title {
    flex-direction: column;
  }
  .service-title .icon {
    margin-top: -7vw;
  }
  .service-title h1 {
    margin-top: 15px;
  }
}

/* end of (max-width: 640px) */
/****************************************************************************************************************/
@media only screen and (max-width: 480px) {
  h2 {
    font-size: 2.7rem;
  }
  .page-template-accessibility .main-container {
    padding: 40px 15px;
  }
  .page-template-accessibility h2 {
    font-size: 1.2rem;
  }
}

/* end of (max-width: 480px) */
/****************************************************************************************************************/
@media only screen and (max-width: 340px) {
  .button {
    padding: 0.2em 0.6em;
  }
}

/* end of (max-width: 340px) */
/****************************************************************************************************************/
/* end of (max-width: 320px) */
/****************************************************************************************************************/
