:root {
  --primary: #76b5c5;
  --danger: #f97272;
  --warning: #fdd862;
  --dark1: #193743;
  --light1: #b2ced3;
  --light2: #408593;
  --brand-font: 'Comfortaa', sans-serif;
  --text-font: 'Funnel Display', sans-serif;
  --border-radius: 3rem;
}

html, body {
  height: 100%
}

header, main, footer {
  display: block
}

*, ::before, ::after {
  box-sizing: border-box
}

html {
  line-height: 1.15;
  -webkit-text-size-adjust: 100%;
  -webkit-tap-highlight-color: transparent
}

body {
  background-color: #fff;
  font-size: 1.125rem;
  font-family: var(--text-font);
  font-weight: 400;
  margin: 0
}

main {
  background-image: linear-gradient(131deg, #569bab 0%, #569bab 60%, #1b4c58 100%);
}

footer {
  font-size: 0.8rem;
  opacity: 0.6;
  padding: 0.9rem;
  text-align: center;
}

.footer-quote {
  font-weight: 500;
  margin-bottom: 0.2rem;
}

a {
  color: #005c84;
  text-decoration: none
}

a:focus, a:hover {
  color: #d26060;
}

a:active, a:hover {
  outline: 0
}

img {
  vertical-align: middle;
  border: 0
}

h1, h2, h3, h4, h5, h6 {
  font-family: var(--brand-font);
  font-weight: 700;
}

h2, h3, h4, h5, h6 {
  margin: 0 0 0.5rem
}

h1 {
  font-size: 2em;
}

h2 {
  font-size: 1.5em
}

h3 {
  font-size: 1.3em;
  line-height: 1.3
}

h4 {
  font-size: 1.2em
}

h5 {
  font-size: 1.1em
}

h6 {
  font-size: 1.05em
}

.logo-box {
  padding: 0.8rem 0 1rem;
  background: #fff;
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  align-items: center;
  justify-content: center;
  outline: 0;
}

.brand-name {
  color: var(--dark1);
  text-align: center;
  margin: 0;
  font-family: var(--brand-font);
  font-weight: 700;
}

ul {
  padding: 0;
  margin: 0
}

ul li {
  list-style: none
}

ul.menu {
  padding: 0;
  margin: 0
}

.menu-btn {
  display: none
}

.menu-box {
  display: block
}

.social-box {
  padding: 0.5rem 0 1.5rem;
  overflow: hidden
}

ul.social-icons {
  padding: 0;
  margin: 0
}

ul.social-icons li {
  list-style: none;
  display: inline-block;
  margin-left: 4px
}

ul.social-icons li:first-child {
  margin-left: 0
}

ul.social-icons li .social-i {
  display: inline-block;
  margin: 0;
  width: 20px;
  height: 20px;
  border-radius: 2px;
  text-align: center
}

ul.social-icons li .social-i i {
  color: #fff;
  font-size: 20px;
  line-height: 20px;
  transition: all 0.17s ease-in-out
}

ul.social-icons li .social-i .small {
  font-size: 18px;
  line-height: 18px
}

p.copyright {
  color: #7b8184;
  font-size: 0.9rem;
  margin-top: 30px;
  line-height: 20px
}

.project-title {
  position: absolute;
  z-index: 2;
  left: 0;
  width: 100%;
  top: 50%;
  margin-top: -75px;
  padding: 0 20px
}

.project-title h2 {
  color: #fff;
  font-size: 24px;
  line-height: 30px;
  margin: 0
}

.project-title span {
  display: inline-block;
  color: #fff;
  font-size: 12px;
  padding-bottom: 12px;
  border-bottom: 1px solid #fff;
  margin: 0 0 18px
}

.project-title a {
  outline: none;
  display: inline-block;
  clear: both;
  width: 61px;
  height: 61px;
  border: 1px solid #fff;
  text-align: center;
  border-radius: 50%;
  transition: all 0.2s ease-in-out
}

.project-title a:hover {
  transform: scale(1.2);
}

.project-title a i {
  color: #fff;
  line-height: 61px
}

.blog-page {
  padding: 12px;
  margin: 0;
  overflow: hidden;
  position: relative
}

.blog-page.load-more {
  columns: auto;
  padding: 0
}

.blog-post {
  width: 100%;
  padding: 12px
}

.blog-post img {
  width: 100%;
  border-radius: 0 !important
}

.blog-page-link {
  cursor: pointer;
  display: block;
  border: 0;
  width: 100%;
  margin: 0 auto;
  padding: 1rem;
  background: var(--danger);
  color: #fff !important;
  font-size: 1.1rem;
  text-transform: uppercase;
  transition: all 0.17s ease-in-out
}

.blog-page-link:hover {
  opacity: 0.8
}

.inner-post {
  border-radius: 3rem;
}

.blog-project-title {
  background-color: var(--warning);
  padding: 15px 20px
}

.blog-project-title > h3 {
  margin: 0;
}

.details-link {
  display: inline-block;
  font-size: 1rem
}

.blog-cover-link .details-link {
  display: block;
  font-size: 1rem;
  padding-bottom: 15px
}

.post-content {
  background: #fff;
  padding: 15px 20px
}

.post-content.latest {
  background: #ecf7da
}

.post-content p {
  line-height: 22px;
  margin: 0 0 0.5rem 0
}

.post-tags {
  padding: 15px 10px 15px 30px;
  background: #fff;
  margin: 0;
  border-top: 1px solid #e3e3e3
}

.post-tags li {
  margin-right: 15px;
  color: #808586;
  font-size: 1rem;
  line-height: 22px
}

.post-tags li:last-child {
  margin-right: 0
}

.post-tags li i {
  font-size: 14px;
  margin-right: 8px
}

.post-tags li.category {
  text-indent: -1.5em;
  padding-left: 1em
}

.post-tags li.site {
  text-indent: -1.5em;
  padding-left: 1.6em
}

.post-tags li.category:before,
.post-tags li.site:before {
  font-family: "Font Awesome 5 Free";
  margin-right: 8px;
  font-size: 0.8rem
}

.post-tags li.category:before {
  content: '\f02c';
  position: relative
}

.post-tags li.site:before {
  content: '\f0c1';
  transform: rotate(271deg);
  display: inline-block;
  position: relative;
  top: -18px
}

.blog-cover-link-title {
  color: #000
}

.image-post .inner-post {
  border-top: 5px solid #30383c
}

.blog-cover-link-title {
  color: var(--dark1);
}

.aside-post .post-content {
  background-color: var(--light1);
  padding: 18px 25px;
}

.aside-post .post-content p {
  color: var(--dark1);
  margin-bottom: 0
}

.aside-post .post-tags {
  background: var(--dark1);
  border-top: 0
}

.aside-post .post-tags li {
  color: var(--light1);
}

.aside-post a {
  color: #3baef3
}

.single-project {
  padding: 30px
}

.single-box {
  overflow: hidden;
  background-color: var(--dark1);
  border-radius: var(--border-radius);
}

.single-box-content {
  width: 47%;
  float: left;
  background-color: var(--light1);
}

.sidebar {
  width: 50%;
  float: left;
  padding: 20px
}

.project-post-content .project-text {
  padding: 20px
}

.project-post-content .section-title, .sidebar h1 {
  font-size: 24px;
  margin: 0 0 7px;
  line-height: 30px
}

.section-title-light {
  color: #fff;
}

.sidebar h1 {
  margin-bottom: 17px
}

.post-info ul li:not(:first-child) {
  padding: 14px 0;
}

.post-info ul li:not(:last-child) {
  border-bottom: 1px solid rgba(180, 183, 184, 0.16)
}

.post-info ul li:first-child {
  padding: 0 0 14px
}

.post-info ul li span {
  display: inline-block;
  width: 32px;
  height: 32px;
  text-align: center;
  border-radius: 50%;
  margin-right: 14px
}

.post-info ul li span i {
  color: var(--primary);
  line-height: 32px;
  font-size: 20px
}

.post-info ul li a.sitelink {
  display: inline-block;
  color: #b3b0af;
  line-height: 32px
}

.post-info ul li a.sitelink:hover {
  color: var(--primary)
}

.post-info ul li .site-link-btn {
  display: inline-block;
  color: #b3b0af;
  line-height: 32px;
  background-color: transparent;
  border: 0;
  font-size: 1.1rem;
  cursor: pointer;
}

.post-info ul li .site-link-btn:hover {
  color: var(--primary)
}

.project-gallery {
  margin-bottom: 14px
}

.bottom-delimiter {
  border-bottom: 1px solid #e5e5e5;
  margin-bottom: 2rem;
}

.project-gallery ul {
  overflow: hidden
}

.project-gallery ul li {
  float: left;
  margin-right: 12px;
  margin-bottom: 12px
}

.project-gallery ul li a {
  display: inline-block;
  max-width: 78px;
  transition: all 0.2s ease-in-out
}

.project-gallery ul li a:hover {
  opacity: 0.7
}

.project-gallery ul li a img {
  width: 100%
}

.project-feature {
  padding-top: 20px
}

.project-feature .project-feature-title {
  margin-bottom: 17px;
  color: #fff
}

.project-feature ul li {
  color: #b3b0af;
  line-height: 32px
}

.project-feature ul li:before {
  content: '\f00c';
  font-family: "Font Awesome 5 Free";
  margin-right: 8px
}

.project-post-content p, .project-post-content li {
  color: var(--dark1);
  margin: 0 0 25px;
  line-height: 30px
}

.flexslider img {
  max-width: 100%
}

.project-gallery p {
  color: #cccac9;
  line-height: 1.5;
  margin-bottom: 1rem
}

.similar-projects .project-post {
  width: 49.9%
}

.project-post {
  width: 24.99%;
  min-width: 306px;
  padding: 12px;
  overflow: hidden
}

.project-post img {
  width: 100%
}

.services {
  margin-bottom: 20px
}

.services h1 {
  margin-bottom: 20px
}

.services ul li strong {
  font-weight: bold;
  line-height: 28px;
  display: block
}

.services ul li {
  position: relative;
  padding-left: 11px
}

.services ul li:before {
  content: '';
  width: 4px;
  height: 4px;
  background: #848484;
  border-radius: 50%;
  top: 12px;
  left: 0;
  margin-right: 7px;
  position: absolute
}

.contact-float-input-q {
  color: var(--danger);
  font-weight: bold;
  padding: 15px 5px;
  white-space: nowrap;
  vertical-align: middle;
  width: 110px !important;
  border-right: 0 none !important
}

.contact-float-input-q-container {
  padding-left: 110px
}

.contact-page {
  padding-top: 30px;
  display: flex;
  align-items: center;
  flex-direction: column;
}

.contact-box {
  margin: 0 30px 30px;
  background-color: var(--light1);
  max-width: 780px;
  overflow: hidden;
  border-radius: var(--border-radius);
}

.contact-box .post-info {
  padding: 30px;
  background-color: var(--dark1)
}

.contact-info {
  padding: 0 2.5rem 2rem
}

.contact-info p {
  line-height: 30px;
  margin: 0 0 20px
}

.contact-info .contact-item {
  margin-right: 11px
}

.project-list {
  margin-bottom: 20px
}

.project-list ul {
  padding: 0 0 0 15px
}

.project-list ul li {
  line-height: 32px;
  list-style: disc
}

.project-list {
  counter-reset: item
}

.project-list ol {
  font-weight: normal;
  font-size: 14px;
  font-style: normal;
  padding-left: 24px
}

.project-list ol li {
  color: #5C5957
}

.project-list.simple-list ol.level1 > li {
  font-weight: bold;
  font-size: 16px;
  margin-top: 14px
}

.project-list.simple-list ol.level2 {
  counter-increment: item;
  counter-reset: subitem;
  padding-left: 0
}

.project-list.simple-list ol.level2 > li {
  display: block;
  line-height: 24px
}

.project-list.simple-list ol.level2 > li:before {
  counter-increment: subitem;
  content: counter(item) "." counter(subitem) " "
}

.project-list.list-3levels {
  counter-reset: parentitem2
}

.project-list.list-3levels ol.level1 {
  padding-left: 10px
}

.project-list.list-3levels ol.level1 > li {
  color: #f34f29;
  list-style: none;
  margin: 20px 0;
  font-weight: 700;
  font-size: 16px;
  font-style: italic;
  display: block;
  counter-reset: item2;
  counter-increment: parentitem2
}

.project-list.list-3levels ol.level2 > li {
  font-weight: bold;
  margin-top: 14px;
  display: block;
  counter-reset: subitem2
}

.project-list.list-3levels ol.level2 > li:before {
  content: counter(parentitem2) "." counter(item2) " ";
  counter-increment: item2
}

.project-list.list-3levels ol.level3 > li {
  display: block;
  line-height: 24px
}

.project-list.list-3levels ol.level3 > li:before {
  content: counter(parentitem2) "." counter(item2) "." counter(subitem2) " ";
  counter-increment: subitem2
}

.sidebar-section {
  color: #848484;
  font-size: 14px;
  line-height: 28px
}

@media (min-width: 780px) {
  .blog-page {
    columns: 306px;
    column-gap: 0.5rem
  }

  .blog-post {
    display: inline-block;
    width: 33.3333%;
    min-width: 306px
  }

  .blog-post-testimonial {
    display: inline-block;
    min-width: 306px
  }
}

@media (max-width: 1300px) {
  .project-post {
    width: 33.3%
  }

  .single-box-content {
    width: 100%;
    float: none;
    border-right: none
  }

  .sidebar {
    float: none;
    width: 100%
  }
}

@media (max-width: 1199px) {
  .blog-post {
    width: 49.9%
  }
}

@media (max-width: 991px) {
  .blog-post {
    width: 100%
  }

  .single-project {
    padding: 10px
  }

  .project-post {
    width: 49.99%
  }

  .similar-projects .project-post {
    width: 100%
  }
}

@media (max-width: 768px) {
  .testimonial-page {
    display: block
  }

  .testimonial-page .testimonial-post {
    width: auto
  }

  ul.drop-down {
    position: relative;
    text-align: center;
    top: 0;
    left: 0;
    width: 100%;
    visibility: visible;
    opacity: 1;
    -webkit-transform: rotateY(0deg);
    -moz-transform: rotateY(0deg);
    -ms-transform: rotateY(0deg);
    -o-transform: rotateY(0deg);
    transform: rotateY(0deg);
    -webkit-transition: -webkit-transform 0.4s, opacity 0.1s;
    -moz-transition: -moz-transform 0.4s, opacity 0.1s;
    -o-transition: -o-transform 0.4s, opacity 0.1s;
    transition: transform 0.4s, opacity 0.1s
  }

  ul.menu {
    max-height: 280px;
    overflow-y: scroll
  }

  p.copyright {
    display: none
  }

  .menu-btn {
    display: block;
    width: 100%;
    border: 0;
    color: #fff;
    font-size: 24px;
    text-transform: uppercase;
    padding: 0.5rem 0;
    background: var(--danger);
    border-bottom: 1px solid rgba(0, 0, 0, 0.1);
    transition: all 0.17s ease-in-out
  }

  .menu-box {
    overflow: hidden;
    transition: all .5s ease-in-out;
    height: 0
  }

  .menu-box.active {
    height: 280px
  }
}

@media (max-width: 581px) {
  .project-post {
    width: 100%
  }
}

@media (max-width: 375px) {
  .blog-page {
    padding: 0
  }
}

#link-btn-email {
  transition: opacity 0.5s ease-out;
}

.sitelink2 {
  opacity: 0;
  transition: opacity 0.5s ease-in;
}

.sitelink2.show {
  opacity: 1;
}

.round-border0 {
  border-radius: 0 var(--border-radius) 0 0;
}

.round-border01 {
  border-radius: 0 0 var(--border-radius) var(--border-radius);
}

.round-border1 {
  border-radius: var(--border-radius) var(--border-radius) var(--border-radius) 0;
}

.round-border2 {
  border-radius: 0 var(--border-radius);
}

.round-border3 {
  border-radius: var(--border-radius) 0 0;
}

.round-border4 {
  border-radius: 0 0 var(--border-radius) 0;
}

.round-border6 {
  border-radius: var(--border-radius) 0 var(--border-radius);
}

.index {
  padding: 5rem 0;
}

.content {
  padding: 3rem 0;
}

.page {
  max-width: 700px;
  padding-top: 30px;
  margin: 0 1rem 0 3rem;
}

.page-title-container {
  display: flex;
  justify-content: center;
  margin-bottom: 1rem;
}

.page-title {
  background-color: var(--dark1);
  color: #fff;
  border-radius: var(--border-radius);
  padding: 0.4rem 3rem;
  font-weight: 400;
}

.grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(50%, 1fr));
  grid-gap: 5em;
  width: auto;
}

@media (min-width: 576px) {
  .page {
    margin: 0 auto;
  }

  .grid {
    grid-template-columns:50% 50%;
    width: 87%;
  }
}

.outer, .box {
  border-radius: var(--border-radius)
}

.outer {
  background-color: rgba(0, 0, 0, 0.15)
}

.box {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 1.5rem;
  background-color: rgba(255, 255, 255, 0.6);
  transform: translate(-25px, -25px);
  transform-origin: bottom right;
  transition: all 0.5s ease-out
}

.box:hover {
  transform: scale(1);
  background-color: rgba(255, 255, 255, 0.7);
}

.box .label {
  margin-top: 20px;
  text-align: center;
  font-size: 1.5rem;
}

/*/////////////////////////////////////////////////////*/

.frame-line {
  max-width: 760px;
  margin: 0 auto;
}

.training-title {
  margin-top: 1rem;
}

.row {
  display: flex
}

.col {
  flex: 1 0 0
}

.overview {
  padding: 0 1.7rem 0 2.3rem;
  background-color: #beddd28c;
  border-radius: 1.8rem
}

.overview .text {
  background-color: #fffceda3;
  padding: 0.2rem 0.5rem 0.1rem 1.3rem
}

@media (max-width: 768px) {
  .row {
    display: block
  }
}

.row.gap {
  padding-right: 2.7rem
}

.cap-title {
  background-color: #193743;
  padding: 4px 0 0 20px;
  color: #fff;
  border-radius: 1rem 1rem 0 0;
  margin-left: 2.3rem
}

.title2 {
  background-color: #bfdddb5c;
  padding: 6rem 0 16px 20px;
  margin-left: 2.3rem;
  margin-bottom: 0;
  color: #0b191e
}

.title3 {
  padding: 6rem 0 16px 20px;
  margin-left: 2.3rem;
  color: #fff
}

.title3 .tag {
  background-color: var(--dark1);
  padding: .5rem 1rem;
  border-radius: 10rem
}

.bg-r {
  background-color: rgba(191, 221, 219, 0.35)
}

.step {
  padding: 0 1.3rem 0 2.3rem;
  border-radius: 10rem;
  background-color: #beddd28c
}

.step .row {
  background-color: #fffceda3;
  padding: 15px 26px 15px 0;
  border-radius: 0 10rem 10rem 0;
  display: flex;
  align-items: center
}

.step .num {
  background-color: var(--danger);
  color: #fff;
  font-size: 1.3rem;
  font-weight: bold;
  padding: 2px 11px;
  margin-left: -17px;
  border-radius: 10rem
}

.step .topic {
  margin-left: 17px
}

.space-down {
  margin-bottom: 20px
}

.cases {
  background: #bfdddb5c;
  border-radius: 1rem 1rem 0 1rem;
  padding-right: 2.7rem;
  margin-bottom: 3rem;
}

.cases .text {
  padding: 0.5em 1.7rem;
  background: #fffceda3;
  border-radius: 1rem 1rem 0 0;
}

.fq {
  display: flex;
  justify-content: center
}

.fq .text {
  background-color: rgba(89, 224, 225, 0.8);
  padding: 1rem;
  font-weight: bold;
  text-align: center;
  width: 300px
}

.fa.radius1 {
  border-radius: 0 0 10rem 0
}

.fa.radius2 {
  border-radius: 0 10rem 0 0
}

.closer {
  border-radius: 10rem;
  padding: 1rem 2rem;
  margin-top: 2rem;
  background-color: #193743;
  text-align: center
}

.closer a {
  border: 5px solid #fffceda3;
  padding: 0.5em 1.5rem;
  font-weight: bold
}

@media (max-width: 768px) {

  .overview {
    padding-right: 0;
    border-radius: 0
  }

  .title2 {
    border-radius: 0 10rem 0 0
  }

  .title3 {
    background-color: #bfdddb5c
  }

  .step {
    border-radius: 10rem 0 0 10rem;
    padding: 0 1rem 0 2.3rem
  }

  .cases {
    padding-right: 0
  }

  .fa.radius1, .fa.radius2 {
    border-radius: 0
  }

  .fa.radius3 {
    border-radius: 0 0 10rem 5rem
  }
}

.test {
  background-color: #beddd28c;
  border-radius: 0 50%;
  padding: 0 2.7rem 20px 2.3rem;
}

.test .content {
  background: #fffceda3;
  border-radius: 0 14px 14px;
  padding: 0 0 20px;
}

.test .promo {
  background-color: var(--light2);
  padding: 1em 1.7rem;
  margin: 0
}
.promo-inner{
  color: var(--light1)
}

.test-last {
  padding: 0 1.7rem 20px;
}

