@charset "UTF-8";
@import 'swiper.min.css';
* {
  box-sizing: border-box;
}

html, body, div, span, applet, object, iframe,
pre, a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  vertical-align: baseline;
}

h1, h2, h3, h4, h5, h6, p, blockquote,
dl, dt, dd, ol, ul, li {
  padding: 0;
  border: 0;
  vertical-align: baseline;
}

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block;
}

ol, ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

blockquote:before, blockquote:after,
q:before, q:after {
  content: "";
  content: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

/*
1. Color
2. Animations
3. Breakpoints
4. Fluid Typography and Grid


*/
/* 1. Colors */
/* 2. Animations */
/* 3. Breakpoints */
/* 4. Fluid Typography and Grid */
:root {
  --t1: 2.1rem;
  --t2: 2.1rem;
  --t3: 2.1rem;
  --t4: 1.66rem;
  --t5: 1.414rem;
  --t6: 1rem;
  --t7: 0.707rem;
  --spacer: 20px;
  --spacer-1: $spacer * 3;
  --spacer-2: $spacer * 2;
  --spacer-3: $spacer;
}
@media screen and (min-width: 767px) {
  :root {
    --t1: 5.653rem;
    --t2: 3.7rem;
    --t3: 2.827rem;
    --t4: 1.999rem;
    --t5: 1.414rem;
    --t6: 1rem;
    --t7: 0.707rem;
    --spacer: $spacer;
  }
}

/*
1. Import fonts
2. Typography Scales
2. Type utilities
4. Fluid Type mixin
*/
@font-face {
  font-family: "Mabry Pro";
  src: url("fonts/mabry-regular-pro.eot");
  src: url("fonts/mabry-regular-pro.eot?#iefix") format("embedded-opentype"), url("fonts/mabry-regular-pro.woff2") format("woff2"), url("fonts/mabry-regular-pro.woff") format("woff"), url("fonts/mabry-regular-pro.ttf") format("truetype");
  font-display: swap;
  font-weight: 400;
  font-style: normal;
}
@font-face {
  font-family: "Mabry Pro";
  src: url("fonts/mabry-medium-pro.eot");
  src: url("fonts/mabry-medium-pro.eot?#iefix") format("embedded-opentype"), url("fonts/mabry-medium-pro.woff2") format("woff2"), url("fonts/mabry-medium-pro.woff") format("woff"), url("fonts/mabry-medium-pro.ttf") format("truetype");
  font-display: swap;
  font-weight: 600;
  font-style: normal;
}
html {
  font-size: 16px;
}
@media screen and (min-width: 767px) {
  html {
    font-size: 1.5vw;
  }
}
@media screen and (min-width: 1024px) {
  html {
    font-size: 1.5vw;
  }
}
@media screen and (min-width: 1480px) {
  html {
    font-size: 1.4vw;
  }
}
@media screen and (min-width: 1440px) {
  html {
    font-size: 1.4vw;
  }
}
@media screen and (min-width: 1650px) {
  html {
    font-size: 24px;
  }
}

body {
  font-family: "Mabry Pro", Helvetica, Arial, sans-serif;
  font-weight: 400;
  font-size: var(--t6);
  line-height: 1.45;
}

p {
  margin-top: 1.45rem;
  margin-bottom: 1.45rem;
}

h1,
h2,
h3,
h4,
h5,
h6,
.h1,
.h2,
.h3,
.field-portfolio:after,
.field-item:after,
.h4,
.article-item .no-thumb .title,
.h5,
.h6 {
  font-weight: 600;
  text-transform: uppercase;
  line-height: 1.3;
  margin: 1.45rem 0;
}

h1,
.h1 {
  font-size: var(--t2);
  line-height: 1.15;
}

h2,
.h2 {
  font-size: var(--t4);
}

h3,
.h3,
.field-portfolio:after,
.field-item:after {
  font-size: var(--t5);
}

h4,
.h4,
.article-item .no-thumb .title {
  font-size: var(--t5);
  line-height: 1.15;
}

h5,
.h5 {
  font-size: var(--t6);
  line-height: 1.3;
}

small,
.small,
.optin,
.course-intro .details {
  font-size: var(--t7);
}

.section-title {
  font-size: var(--t3);
  line-height: 1;
}

.outline {
  -webkit-text-stroke: 1px #000;
}

a {
  color: #000;
  transition: 0.2s cubic-bezier(0.015, 0.445, 0.305, 0.99);
}
a:hover {
  color: #999;
}

strong {
  font-weight: 600;
}

.text-center {
  text-align: center;
}
.text-center .decorated-title:after {
  margin-left: auto;
  margin-right: auto;
}

.text-left {
  text-align: left;
}

.text-right {
  text-align: right;
}

.uppercase {
  text-transform: uppercase;
}

.m-t0 {
  margin-top: 0 !important;
}

.m-t1 {
  margin-top: 1.45rem !important;
}

.m-t2 {
  margin-top: 2.9rem !important;
}

.m-t3 {
  margin-top: 4.35rem !important;
}

.m-t4 {
  margin-top: 5.8rem !important;
}

.m-t5 {
  margin-top: 7.25rem !important;
}

.m-b0 {
  margin-bottom: 0 !important;
}

.m-b1 {
  margin-bottom: 1.45rem !important;
}

.m-b2 {
  margin-bottom: 2.9rem !important;
}

.m-b3 {
  margin-bottom: 4.35rem !important;
}

.m-b4 {
  margin-bottom: 5.8rem !important;
}

.m-b5 {
  margin-bottom: 7.25rem !important;
}

.m-l0 {
  margin-left: 0 !important;
}

.m-l1 {
  margin-left: 1.45rem !important;
}

.m-l2 {
  margin-left: 2.9rem !important;
}

.m-l3 {
  margin-left: 4.35rem !important;
}

.m-l4 {
  margin-left: 5.8rem !important;
}

.m-l5 {
  margin-left: 7.25rem !important;
}

.m-r0 {
  margin-right: 0 !important;
}

.m-r1 {
  margin-right: 1.45rem !important;
}

.m-r2 {
  margin-right: 2.9rem !important;
}

.m-r3 {
  margin-right: 4.35rem !important;
}

.m-r4 {
  margin-right: 5.8rem !important;
}

.m-r5 {
  margin-right: 7.25rem !important;
}

.m-lr1 {
  margin-left: 0 !important;
  margin-right: 0 !important;
}

.m-lr1 {
  margin-left: 1.45rem !important;
  margin-right: 1.45rem !important;
}

.m-lr2 {
  margin-left: 2.9rem !important;
  margin-right: 2.9rem !important;
}

.m-lr3 {
  margin-left: 4.35rem !important;
  margin-right: 4.35rem !important;
}

.m-lr4 {
  margin-left: 5.8rem !important;
  margin-right: 5.8rem !important;
}

.m-lr5 {
  margin-left: 7.25rem !important;
  margin-right: 7.25rem !important;
}

.m-tb0 {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

.m-tb1 {
  margin-top: 1.45rem !important;
  margin-bottom: 1.45rem !important;
}

.m-tb2 {
  margin-top: 2.9rem !important;
  margin-bottom: 2.9rem !important;
}

.m-tb3 {
  margin-top: 4.35rem !important;
  margin-bottom: 4.35rem !important;
}

.m-tb4 {
  margin-top: 5.8rem !important;
  margin-bottom: 5.8rem !important;
}

.m-tb5 {
  margin-top: 7.25rem !important;
  margin-bottom: 7.25rem !important;
}

.p-0 {
  padding-top: 0 !important;
  padding-right: 0 !important;
  padding-bottom: 0 !important;
  padding-left: 0 !important;
}

.p-1 {
  padding-top: 1.45rem !important;
  padding-right: 1.45rem !important;
  padding-bottom: 1.45rem !important;
  padding-left: 1.45rem !important;
}

.p-2 {
  padding-top: 2.9rem !important;
  padding-right: 2.9rem !important;
  padding-bottom: 2.9rem !important;
  padding-left: 2.9rem !important;
}

.p-3 {
  padding-top: 4.35rem !important;
  padding-right: 4.35rem !important;
  padding-bottom: 4.35rem !important;
  padding-left: 4.35rem !important;
}

.p-4 {
  padding-top: 5.8rem !important;
  padding-right: 5.8rem !important;
  padding-bottom: 5.8rem !important;
  padding-left: 5.8rem !important;
}

.p-5 {
  padding-top: 7.25rem !important;
  padding-right: 7.25rem !important;
  padding-bottom: 7.25rem !important;
  padding-left: 7.25rem !important;
}

.p-t0 {
  padding-top: 0 !important;
}

.p-t1 {
  padding-top: 1.45rem !important;
}

.p-t2 {
  padding-top: 2.9rem !important;
}

.p-t3 {
  padding-top: 4.35rem !important;
}

.p-t4 {
  padding-top: 5.8rem !important;
}

.p-t5 {
  padding-top: 7.25rem !important;
}

.p-b0 {
  padding-bottom: 0 !important;
}

.p-b1 {
  padding-bottom: 1.45rem !important;
}

.p-b2 {
  padding-bottom: 2.9rem !important;
}

.p-b3 {
  padding-bottom: 4.35rem !important;
}

.p-b4 {
  padding-bottom: 5.8rem !important;
}

.p-b5 {
  padding-bottom: 7.25rem !important;
}

.p-l0 {
  padding-left: 0 !important;
}

.p-l1 {
  padding-left: 1.45rem !important;
}

.p-l2 {
  padding-left: 2.9rem !important;
}

.p-l3 {
  padding-left: 4.35rem !important;
}

.p-l4 {
  padding-left: 5.8rem !important;
}

.p-l5 {
  padding-left: 7.25rem !important;
}

.p-r0 {
  padding-right: 0 !important;
}

.p-r1 {
  padding-right: 1.45rem !important;
}

.p-r2 {
  padding-right: 2.9rem !important;
}

.p-r3 {
  padding-right: 4.35rem !important;
}

.p-r4 {
  padding-right: 5.8rem !important;
}

.p-r5 {
  padding-right: 7.25rem !important;
}

.p-lr1 {
  padding-left: 0 !important;
  padding-right: 0 !important;
}

.p-lr1 {
  padding-left: 1.45rem !important;
  padding-right: 1.45rem !important;
}

.p-lr2 {
  padding-left: 2.9rem !important;
  padding-right: 2.9rem !important;
}

.p-lr3 {
  padding-left: 4.35rem !important;
  padding-right: 4.35rem !important;
}

.p-lr4 {
  padding-left: 5.8rem !important;
  padding-right: 5.8rem !important;
}

.p-lr5 {
  padding-left: 7.25rem !important;
  padding-right: 7.25rem !important;
}

.p-tb0 {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

.p-tb1 {
  padding-top: 1.45rem !important;
  padding-bottom: 1.45rem !important;
}

.p-tb2 {
  padding-top: 2.9rem !important;
  padding-bottom: 2.9rem !important;
}

.p-tb3 {
  padding-top: 4.35rem !important;
  padding-bottom: 4.35rem !important;
}

.p-tb4 {
  padding-top: 5.8rem !important;
  padding-bottom: 5.8rem !important;
}

.p-tb5 {
  padding-top: 7.25rem !important;
  padding-bottom: 7.25rem !important;
}

.p-0 {
  padding-top: 0 !important;
  padding-right: 0 !important;
  padding-bottom: 0 !important;
  padding-left: 0 !important;
}

.p-1 {
  padding-top: 1.45rem !important;
  padding-right: 1.45rem !important;
  padding-bottom: 1.45rem !important;
  padding-left: 1.45rem !important;
}

.p-2 {
  padding-top: 2.9rem !important;
  padding-right: 2.9rem !important;
  padding-bottom: 2.9rem !important;
  padding-left: 2.9rem !important;
}

.p-3 {
  padding-top: 4.35rem !important;
  padding-right: 4.35rem !important;
  padding-bottom: 4.35rem !important;
  padding-left: 4.35rem !important;
}

.p-4 {
  padding-top: 5.8rem !important;
  padding-right: 5.8rem !important;
  padding-bottom: 5.8rem !important;
  padding-left: 5.8rem !important;
}

.p-5 {
  padding-top: 7.25rem !important;
  padding-right: 7.25rem !important;
  padding-bottom: 7.25rem !important;
  padding-left: 7.25rem !important;
}

/*

FLUID TYPE

// Single property
html {
  @include fluid-type(font-size, 320px, 1366px, 14px, 18px);
}

// Multiple properties with same values
h1 {
  @include fluid-type(padding-bottom padding-top, 20em, 70em, 2em, 4em);
}
*/
@media (min-width: 1024px) {
  .show-mobile {
    display: none !important;
  }
}

@media (max-width: 1024px) {
  .hide-mobile {
    display: none;
  }
}

.overflow-hidden {
  height: 100vh;
  overflow: hidden;
}

.img-responsive {
  max-width: 100%;
}

.no-border-bottom {
  border-bottom: none !important;
}

@-ms-viewport {
  width: device-width;
}
.visible-xs,
.visible-sm,
.visible-md,
.visible-lg {
  display: none !important;
}

.visible-xs-block,
.visible-xs-inline,
.visible-xs-inline-block,
.visible-sm-block,
.visible-sm-inline,
.visible-sm-inline-block,
.visible-md-block,
.visible-md-inline,
.visible-md-inline-block,
.visible-lg-block,
.visible-lg-inline,
.visible-lg-inline-block {
  display: none !important;
}

@media (max-width: 766px) {
  .visible-xs {
    display: block !important;
  }

  table.visible-xs {
    display: table;
  }

  tr.visible-xs {
    display: table-row !important;
  }

  th.visible-xs,
td.visible-xs {
    display: table-cell !important;
  }
}
@media (max-width: 766px) {
  .visible-xs-block {
    display: block !important;
  }
}
@media (max-width: 766px) {
  .visible-xs-inline {
    display: inline !important;
  }
}
@media (max-width: 766px) {
  .visible-xs-inline-block {
    display: inline-block !important;
  }
}
@media (min-width: 767px) and (max-width: 1023px) {
  .visible-sm {
    display: block !important;
  }

  table.visible-sm {
    display: table;
  }

  tr.visible-sm {
    display: table-row !important;
  }

  th.visible-sm,
td.visible-sm {
    display: table-cell !important;
  }
}
@media (min-width: 767px) and (max-width: 1023px) {
  .visible-sm-block {
    display: block !important;
  }
}
@media (min-width: 767px) and (max-width: 1023px) {
  .visible-sm-inline {
    display: inline !important;
  }
}
@media (min-width: 767px) and (max-width: 1023px) {
  .visible-sm-inline-block {
    display: inline-block !important;
  }
}
@media (min-width: 1024px) and (max-width: 1479px) {
  .visible-md {
    display: block !important;
  }

  table.visible-md {
    display: table;
  }

  tr.visible-md {
    display: table-row !important;
  }

  th.visible-md,
td.visible-md {
    display: table-cell !important;
  }
}
@media (min-width: 1024px) and (max-width: 1479px) {
  .visible-md-block {
    display: block !important;
  }
}
@media (min-width: 1024px) and (max-width: 1479px) {
  .visible-md-inline {
    display: inline !important;
  }
}
@media (min-width: 1024px) and (max-width: 1479px) {
  .visible-md-inline-block {
    display: inline-block !important;
  }
}
@media (min-width: 1480px) {
  .visible-lg {
    display: block !important;
  }

  table.visible-lg {
    display: table;
  }

  tr.visible-lg {
    display: table-row !important;
  }

  th.visible-lg,
td.visible-lg {
    display: table-cell !important;
  }
}
@media (min-width: 1480px) {
  .visible-lg-block {
    display: block !important;
  }
}
@media (min-width: 1480px) {
  .visible-lg-inline {
    display: inline !important;
  }
}
@media (min-width: 1480px) {
  .visible-lg-inline-block {
    display: inline-block !important;
  }
}
@media (max-width: 766px) {
  .hidden-xs {
    display: none !important;
  }
}
@media (min-width: 767px) and (max-width: 1023px) {
  .hidden-sm {
    display: none !important;
  }
}
@media (min-width: 1024px) and (max-width: 1479px) {
  .hidden-md {
    display: none !important;
  }
}
@media (min-width: 1480px) {
  .hidden-lg {
    display: none !important;
  }
}
.visible-print {
  display: none !important;
}

@media print {
  .visible-print {
    display: block !important;
  }

  table.visible-print {
    display: table;
  }

  tr.visible-print {
    display: table-row !important;
  }

  th.visible-print,
td.visible-print {
    display: table-cell !important;
  }
}
.visible-print-block {
  display: none !important;
}

@media print {
  .visible-print-block {
    display: block !important;
  }
}
.visible-print-inline {
  display: none !important;
}

@media print {
  .visible-print-inline {
    display: inline !important;
  }
}
.visible-print-inline-block {
  display: none !important;
}

@media print {
  .visible-print-inline-block {
    display: inline-block !important;
  }
}
@media print {
  .hidden-print {
    display: none !important;
  }
}
.container {
  margin-right: auto;
  margin-left: auto;
  padding-left: 0.725rem;
  padding-right: 0.725rem;
}
@media screen and (min-width: 767px) {
  .container {
    max-width: 80%;
  }
}
@media screen and (min-width: 1024px) {
  .container {
    max-width: 60%;
  }
}

.container-fluid {
  margin-right: auto;
  margin-left: auto;
  padding-left: 0.725rem;
  padding-right: 0.725rem;
}

.container-full {
  margin: 0 -1px;
  padding: 0;
  width: calc(100% + 2px);
}
.container-full .row {
  margin-left: 0;
  margin-right: 0;
}
.container-full .col, .container-full .col-xs-1, .container-full .col-sm-1, .container-full .col-md-1, .container-full .col-lg-1, .container-full .col-xs-2, .container-full .col-sm-2, .container-full .col-md-2, .container-full .col-lg-2, .container-full .col-xs-3, .container-full .col-sm-3, .container-full .col-md-3, .container-full .col-lg-3, .container-full .col-xs-4, .container-full .col-sm-4, .container-full .col-md-4, .container-full .col-lg-4, .container-full .col-xs-5, .container-full .col-sm-5, .container-full .col-md-5, .container-full .col-lg-5, .container-full .col-xs-6, .container-full .col-sm-6, .container-full .col-md-6, .container-full .col-lg-6, .container-full .col-xs-7, .container-full .col-sm-7, .container-full .col-md-7, .container-full .col-lg-7, .container-full .col-xs-8, .container-full .col-sm-8, .container-full .col-md-8, .container-full .col-lg-8, .container-full .col-xs-9, .container-full .col-sm-9, .container-full .col-md-9, .container-full .col-lg-9, .container-full .col-xs-10, .container-full .col-sm-10, .container-full .col-md-10, .container-full .col-lg-10, .container-full .col-xs-11, .container-full .col-sm-11, .container-full .col-md-11, .container-full .col-lg-11, .container-full .col-xs-12, .container-full .col-sm-12, .container-full .col-md-12, .container-full .col-lg-12 {
  padding-left: 1.45rem;
  padding-right: 1.45rem;
}

.row {
  margin-left: 0rem;
  margin-right: 0rem;
}

.col, .col-xs-1, .col-sm-1, .col-md-1, .col-lg-1, .col-xs-2, .col-sm-2, .col-md-2, .col-lg-2, .col-xs-3, .col-sm-3, .col-md-3, .col-lg-3, .col-xs-4, .col-sm-4, .col-md-4, .col-lg-4, .col-xs-5, .col-sm-5, .col-md-5, .col-lg-5, .col-xs-6, .col-sm-6, .col-md-6, .col-lg-6, .col-xs-7, .col-sm-7, .col-md-7, .col-lg-7, .col-xs-8, .col-sm-8, .col-md-8, .col-lg-8, .col-xs-9, .col-sm-9, .col-md-9, .col-lg-9, .col-xs-10, .col-sm-10, .col-md-10, .col-lg-10, .col-xs-11, .col-sm-11, .col-md-11, .col-lg-11, .col-xs-12, .col-sm-12, .col-md-12, .col-lg-12 {
  position: relative;
  min-height: 1px;
  padding-left: 0.725rem;
  padding-right: 0.725rem;
}

.col, .col-xs-1, .col-xs-2, .col-xs-3, .col-xs-4, .col-xs-5, .col-xs-6, .col-xs-7, .col-xs-8, .col-xs-9, .col-xs-10, .col-xs-11, .col-xs-12 {
  float: left;
}

.col-xs-12 {
  width: 100%;
}

.col-xs-11 {
  width: 91.66666667%;
}

.col-xs-10 {
  width: 83.33333333%;
}

.col-xs-9 {
  width: 75%;
}

.col-xs-8 {
  width: 66.66666667%;
}

.col-xs-7 {
  width: 58.33333333%;
}

.col-xs-6 {
  width: 50%;
}

.col-xs-5 {
  width: 41.66666667%;
}

.col-xs-4 {
  width: 33.33333333%;
}

.col-xs-3 {
  width: 25%;
}

.col-xs-2 {
  width: 16.66666667%;
}

.col-xs-1 {
  width: 8.33333333%;
}

.col-xs-pull-12 {
  right: 100%;
}

.col-xs-pull-11 {
  right: 91.66666667%;
}

.col-xs-pull-10 {
  right: 83.33333333%;
}

.col-xs-pull-9 {
  right: 75%;
}

.col-xs-pull-8 {
  right: 66.66666667%;
}

.col-xs-pull-7 {
  right: 58.33333333%;
}

.col-xs-pull-6 {
  right: 50%;
}

.col-xs-pull-5 {
  right: 41.66666667%;
}

.col-xs-pull-4 {
  right: 33.33333333%;
}

.col-xs-pull-3 {
  right: 25%;
}

.col-xs-pull-2 {
  right: 16.66666667%;
}

.col-xs-pull-1 {
  right: 8.33333333%;
}

.col-xs-pull-0 {
  right: auto;
}

.col-xs-push-12 {
  left: 100%;
}

.col-xs-push-11 {
  left: 91.66666667%;
}

.col-xs-push-10 {
  left: 83.33333333%;
}

.col-xs-push-9 {
  left: 75%;
}

.col-xs-push-8 {
  left: 66.66666667%;
}

.col-xs-push-7 {
  left: 58.33333333%;
}

.col-xs-push-6 {
  left: 50%;
}

.col-xs-push-5 {
  left: 41.66666667%;
}

.col-xs-push-4 {
  left: 33.33333333%;
}

.col-xs-push-3 {
  left: 25%;
}

.col-xs-push-2 {
  left: 16.66666667%;
}

.col-xs-push-1 {
  left: 8.33333333%;
}

.col-xs-push-0 {
  left: auto;
}

.col-xs-offset-12 {
  margin-left: 100%;
}

.col-xs-offset-11 {
  margin-left: 91.66666667%;
}

.col-xs-offset-10 {
  margin-left: 83.33333333%;
}

.col-xs-offset-9 {
  margin-left: 75%;
}

.col-xs-offset-8 {
  margin-left: 66.66666667%;
}

.col-xs-offset-7 {
  margin-left: 58.33333333%;
}

.col-xs-offset-6 {
  margin-left: 50%;
}

.col-xs-offset-5 {
  margin-left: 41.66666667%;
}

.col-xs-offset-4 {
  margin-left: 33.33333333%;
}

.col-xs-offset-3 {
  margin-left: 25%;
}

.col-xs-offset-2 {
  margin-left: 16.66666667%;
}

.col-xs-offset-1 {
  margin-left: 8.33333333%;
}

.col-xs-offset-0 {
  margin-left: 0%;
}

@media (min-width: 767px) {
  .col, .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12 {
    float: left;
  }

  .col-sm-12 {
    width: 100%;
  }

  .col-sm-11 {
    width: 91.66666667%;
  }

  .col-sm-10 {
    width: 83.33333333%;
  }

  .col-sm-9 {
    width: 75%;
  }

  .col-sm-8 {
    width: 66.66666667%;
  }

  .col-sm-7 {
    width: 58.33333333%;
  }

  .col-sm-6 {
    width: 50%;
  }

  .col-sm-5 {
    width: 41.66666667%;
  }

  .col-sm-4 {
    width: 33.33333333%;
  }

  .col-sm-3 {
    width: 25%;
  }

  .col-sm-2 {
    width: 16.66666667%;
  }

  .col-sm-1 {
    width: 8.33333333%;
  }

  .col-sm-pull-12 {
    right: 100%;
  }

  .col-sm-pull-11 {
    right: 91.66666667%;
  }

  .col-sm-pull-10 {
    right: 83.33333333%;
  }

  .col-sm-pull-9 {
    right: 75%;
  }

  .col-sm-pull-8 {
    right: 66.66666667%;
  }

  .col-sm-pull-7 {
    right: 58.33333333%;
  }

  .col-sm-pull-6 {
    right: 50%;
  }

  .col-sm-pull-5 {
    right: 41.66666667%;
  }

  .col-sm-pull-4 {
    right: 33.33333333%;
  }

  .col-sm-pull-3 {
    right: 25%;
  }

  .col-sm-pull-2 {
    right: 16.66666667%;
  }

  .col-sm-pull-1 {
    right: 8.33333333%;
  }

  .col-sm-pull-0 {
    right: auto;
  }

  .col-sm-push-12 {
    left: 100%;
  }

  .col-sm-push-11 {
    left: 91.66666667%;
  }

  .col-sm-push-10 {
    left: 83.33333333%;
  }

  .col-sm-push-9 {
    left: 75%;
  }

  .col-sm-push-8 {
    left: 66.66666667%;
  }

  .col-sm-push-7 {
    left: 58.33333333%;
  }

  .col-sm-push-6 {
    left: 50%;
  }

  .col-sm-push-5 {
    left: 41.66666667%;
  }

  .col-sm-push-4 {
    left: 33.33333333%;
  }

  .col-sm-push-3 {
    left: 25%;
  }

  .col-sm-push-2 {
    left: 16.66666667%;
  }

  .col-sm-push-1 {
    left: 8.33333333%;
  }

  .col-sm-push-0 {
    left: auto;
  }

  .col-sm-offset-12 {
    margin-left: 100%;
  }

  .col-sm-offset-11 {
    margin-left: 91.66666667%;
  }

  .col-sm-offset-10 {
    margin-left: 83.33333333%;
  }

  .col-sm-offset-9 {
    margin-left: 75%;
  }

  .col-sm-offset-8 {
    margin-left: 66.66666667%;
  }

  .col-sm-offset-7 {
    margin-left: 58.33333333%;
  }

  .col-sm-offset-6 {
    margin-left: 50%;
  }

  .col-sm-offset-5 {
    margin-left: 41.66666667%;
  }

  .col-sm-offset-4 {
    margin-left: 33.33333333%;
  }

  .col-sm-offset-3 {
    margin-left: 25%;
  }

  .col-sm-offset-2 {
    margin-left: 16.66666667%;
  }

  .col-sm-offset-1 {
    margin-left: 8.33333333%;
  }

  .col-sm-offset-0 {
    margin-left: 0%;
  }
}
@media (min-width: 1024px) {
  .col, .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12 {
    float: left;
  }

  .col-md-12 {
    width: 100%;
  }

  .col-md-11 {
    width: 91.66666667%;
  }

  .col-md-10 {
    width: 83.33333333%;
  }

  .col-md-9 {
    width: 75%;
  }

  .col-md-8 {
    width: 66.66666667%;
  }

  .col-md-7 {
    width: 58.33333333%;
  }

  .col-md-6 {
    width: 50%;
  }

  .col-md-5 {
    width: 41.66666667%;
  }

  .col-md-4 {
    width: 33.33333333%;
  }

  .col-md-3 {
    width: 25%;
  }

  .col-md-2 {
    width: 16.66666667%;
  }

  .col-md-1 {
    width: 8.33333333%;
  }

  .col-md-pull-12 {
    right: 100%;
  }

  .col-md-pull-11 {
    right: 91.66666667%;
  }

  .col-md-pull-10 {
    right: 83.33333333%;
  }

  .col-md-pull-9 {
    right: 75%;
  }

  .col-md-pull-8 {
    right: 66.66666667%;
  }

  .col-md-pull-7 {
    right: 58.33333333%;
  }

  .col-md-pull-6 {
    right: 50%;
  }

  .col-md-pull-5 {
    right: 41.66666667%;
  }

  .col-md-pull-4 {
    right: 33.33333333%;
  }

  .col-md-pull-3 {
    right: 25%;
  }

  .col-md-pull-2 {
    right: 16.66666667%;
  }

  .col-md-pull-1 {
    right: 8.33333333%;
  }

  .col-md-pull-0 {
    right: auto;
  }

  .col-md-push-12 {
    left: 100%;
  }

  .col-md-push-11 {
    left: 91.66666667%;
  }

  .col-md-push-10 {
    left: 83.33333333%;
  }

  .col-md-push-9 {
    left: 75%;
  }

  .col-md-push-8 {
    left: 66.66666667%;
  }

  .col-md-push-7 {
    left: 58.33333333%;
  }

  .col-md-push-6 {
    left: 50%;
  }

  .col-md-push-5 {
    left: 41.66666667%;
  }

  .col-md-push-4 {
    left: 33.33333333%;
  }

  .col-md-push-3 {
    left: 25%;
  }

  .col-md-push-2 {
    left: 16.66666667%;
  }

  .col-md-push-1 {
    left: 8.33333333%;
  }

  .col-md-push-0 {
    left: auto;
  }

  .col-md-offset-12 {
    margin-left: 100%;
  }

  .col-md-offset-11 {
    margin-left: 91.66666667%;
  }

  .col-md-offset-10 {
    margin-left: 83.33333333%;
  }

  .col-md-offset-9 {
    margin-left: 75%;
  }

  .col-md-offset-8 {
    margin-left: 66.66666667%;
  }

  .col-md-offset-7 {
    margin-left: 58.33333333%;
  }

  .col-md-offset-6 {
    margin-left: 50%;
  }

  .col-md-offset-5 {
    margin-left: 41.66666667%;
  }

  .col-md-offset-4 {
    margin-left: 33.33333333%;
  }

  .col-md-offset-3 {
    margin-left: 25%;
  }

  .col-md-offset-2 {
    margin-left: 16.66666667%;
  }

  .col-md-offset-1 {
    margin-left: 8.33333333%;
  }

  .col-md-offset-0 {
    margin-left: 0%;
  }
}
@media (min-width: 1480px) {
  .col, .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12 {
    float: left;
  }

  .col-lg-12 {
    width: 100%;
  }

  .col-lg-11 {
    width: 91.66666667%;
  }

  .col-lg-10 {
    width: 83.33333333%;
  }

  .col-lg-9 {
    width: 75%;
  }

  .col-lg-8 {
    width: 66.66666667%;
  }

  .col-lg-7 {
    width: 58.33333333%;
  }

  .col-lg-6 {
    width: 50%;
  }

  .col-lg-5 {
    width: 41.66666667%;
  }

  .col-lg-4 {
    width: 33.33333333%;
  }

  .col-lg-3 {
    width: 25%;
  }

  .col-lg-2 {
    width: 16.66666667%;
  }

  .col-lg-1 {
    width: 8.33333333%;
  }

  .col-lg-pull-12 {
    right: 100%;
  }

  .col-lg-pull-11 {
    right: 91.66666667%;
  }

  .col-lg-pull-10 {
    right: 83.33333333%;
  }

  .col-lg-pull-9 {
    right: 75%;
  }

  .col-lg-pull-8 {
    right: 66.66666667%;
  }

  .col-lg-pull-7 {
    right: 58.33333333%;
  }

  .col-lg-pull-6 {
    right: 50%;
  }

  .col-lg-pull-5 {
    right: 41.66666667%;
  }

  .col-lg-pull-4 {
    right: 33.33333333%;
  }

  .col-lg-pull-3 {
    right: 25%;
  }

  .col-lg-pull-2 {
    right: 16.66666667%;
  }

  .col-lg-pull-1 {
    right: 8.33333333%;
  }

  .col-lg-pull-0 {
    right: auto;
  }

  .col-lg-push-12 {
    left: 100%;
  }

  .col-lg-push-11 {
    left: 91.66666667%;
  }

  .col-lg-push-10 {
    left: 83.33333333%;
  }

  .col-lg-push-9 {
    left: 75%;
  }

  .col-lg-push-8 {
    left: 66.66666667%;
  }

  .col-lg-push-7 {
    left: 58.33333333%;
  }

  .col-lg-push-6 {
    left: 50%;
  }

  .col-lg-push-5 {
    left: 41.66666667%;
  }

  .col-lg-push-4 {
    left: 33.33333333%;
  }

  .col-lg-push-3 {
    left: 25%;
  }

  .col-lg-push-2 {
    left: 16.66666667%;
  }

  .col-lg-push-1 {
    left: 8.33333333%;
  }

  .col-lg-push-0 {
    left: auto;
  }

  .col-lg-offset-12 {
    margin-left: 100%;
  }

  .col-lg-offset-11 {
    margin-left: 91.66666667%;
  }

  .col-lg-offset-10 {
    margin-left: 83.33333333%;
  }

  .col-lg-offset-9 {
    margin-left: 75%;
  }

  .col-lg-offset-8 {
    margin-left: 66.66666667%;
  }

  .col-lg-offset-7 {
    margin-left: 58.33333333%;
  }

  .col-lg-offset-6 {
    margin-left: 50%;
  }

  .col-lg-offset-5 {
    margin-left: 41.66666667%;
  }

  .col-lg-offset-4 {
    margin-left: 33.33333333%;
  }

  .col-lg-offset-3 {
    margin-left: 25%;
  }

  .col-lg-offset-2 {
    margin-left: 16.66666667%;
  }

  .col-lg-offset-1 {
    margin-left: 8.33333333%;
  }

  .col-lg-offset-0 {
    margin-left: 0%;
  }
}
.clearfix,
.clearfix:before,
.clearfix:after,
.container:before,
.container:after,
.container-fluid:before,
.container-fluid:after,
.row:before,
.row:after {
  content: " ";
  display: table;
}

.clearfix:after,
.container:after,
.container-fluid:after,
.row:after {
  clear: both;
}

.center-block {
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.pull-right {
  float: right !important;
}

.pull-left {
  float: left !important;
}

*,
*:before,
*:after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

/*

EXAMPLE:
p {
  @include sm {
    font-size: 18px;
  }

  @include md {
    font-size: 20px;
  }
}

*/
input[type=text],
input[type=email] {
  appearance: none;
  background-color: transparent;
  border: none;
  border-bottom: 1px solid #000;
  border-radius: 0;
  color: #17242E;
  display: inline-block;
  font-family: "Mabry Pro";
  height: 30px;
  font-size: inherit;
  outline: none;
  width: 100%;
}
input[type=text]::placeholder,
input[type=email]::placeholder {
  color: #484848;
  opacity: 0.5;
}

textarea {
  appearance: none;
  background-color: transparent;
  border: none;
  border: 1px solid #000;
  border-radius: 0;
  color: #17242E;
  display: inline-block;
  font-family: "Mabry Pro";
  outline: none;
  padding: 10px;
  resize: vertical;
  vertical-align: middle;
  width: 100%;
  font-size: inherit;
}
textarea::placeholder {
  color: #484848;
  opacity: 0.5;
}

select {
  appearance: none;
  -webkit-appearance: none;
  background-image: url(../img/icon-dropdown-carrot.svg);
  background-position: left 0 center;
  background-repeat: no-repeat;
  background-size: 15px auto;
  background-color: transparent;
  border: none;
  border-bottom: 1px solid;
  border-radius: 0 !important;
  font-size: inherit;
  color: #17242e;
  cursor: pointer;
  display: block;
  font-family: "Mabry Pro";
  font-weight: 400;
  height: 40px;
  outline: none;
  padding-left: 40px;
}
input[type=checkbox] {
  display: none;
}

input[type=checkbox]:checked + .checkbox:before {
  display: inline-block;
}

.checkbox {
  border: 1px solid #000;
  cursor: pointer;
  display: inline-block;
  height: 20px !important;
  margin: 0 5px 0 0 !important;
  position: relative;
  user-select: none;
  vertical-align: middle;
  width: 20px !important;
  z-index: 1;
}
.checkbox:before {
  background-image: url(../img/icon-check.svg);
  background-repeat: no-repeat;
  background-position: center top 1px;
  background-size: 15px;
  content: "";
  display: none;
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}
.checkbox + label {
  display: inline-block !important;
  margin-bottom: -2px;
  margin-left: 10px !important;
  margin-top: 0 !important;
  vertical-align: middle;
  width: auto !important;
}

input[type=radio] {
  display: none;
}

input[type=radio]:checked + .radio:before {
  display: inline-block;
}

.radio {
  border: 1px solid #000;
  border-radius: 100%;
  cursor: pointer;
  display: inline-block;
  height: 20px !important;
  margin: 0 5px 0 0 !important;
  position: relative;
  user-select: none;
  vertical-align: middle;
  width: 20px !important;
  z-index: 1;
}
.radio:before {
  background-color: #000;
  border-radius: 100%;
  content: "";
  display: none;
  height: calc(100% - 6px);
  left: 3px;
  position: absolute;
  top: 3px;
  width: calc(100% - 6px);
}
.radio + label {
  display: inline-block !important;
  margin-bottom: -2px;
  margin-left: 10px !important;
  margin-top: 0 !important;
  vertical-align: middle;
  width: auto !important;
}
.radio + * {
  color: #000;
}

label label {
  display: inline-block !important;
  z-index: -1 !important;
}

.wpcf7-list-item {
  margin: 0 !important;
}

.courses-filters {
  border-top: 1px solid #556069;
  display: flex;
  flex-wrap: wrap;
  margin: 0 -22px;
  overflow: auto;
  position: relative;
}
.courses-filters select {
  appearance: none;
  background-image: url(../img/icon-dropdown-carrot.svg);
  background-position: left 40px center;
  background-repeat: no-repeat;
  background-size: 20px auto;
  background-color: transparent;
  border: none;
  border-radius: 0;
  border-right: 1px solid #556069;
  color: #000;
  cursor: pointer;
  display: inline-block;
  float: left;
  font-family: "Mabry Pro";
  width: 100%;
  font-weight: 400;
  height: 100px;
  outline: none;
  padding-left: 100px;
  text-transform: uppercase;
}
textarea {
  margin-top: 0.5rem;
}

/*! Lity - v2.3.1 - 2018-04-20
* http://sorgalla.com/lity/
* Copyright (c) 2015-2018 Jan Sorgalla; Licensed MIT */
.lity {
  z-index: 9990;
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  white-space: nowrap;
  background: #0b0b0b;
  background: rgba(0, 0, 0, 0.9);
  outline: none !important;
  opacity: 0;
  -webkit-transition: opacity 0.3s ease;
  -o-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}

.lity.lity-opened {
  opacity: 1;
}

.lity.lity-closed {
  opacity: 0;
}

.lity * {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.lity-wrap {
  z-index: 9990;
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  text-align: center;
  outline: none !important;
}

.lity-wrap:before {
  content: "";
  display: inline-block;
  height: 100%;
  vertical-align: middle;
  margin-right: -0.25em;
}

.lity-loader {
  z-index: 9991;
  color: #fff;
  position: absolute;
  top: 50%;
  margin-top: -0.8em;
  width: 100%;
  text-align: center;
  font-size: 14px;
  font-family: Arial, Helvetica, sans-serif;
  opacity: 0;
  -webkit-transition: opacity 0.3s ease;
  -o-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}

.lity-loading .lity-loader {
  opacity: 1;
}

.lity-container {
  z-index: 9992;
  position: relative;
  text-align: left;
  vertical-align: middle;
  display: inline-block;
  white-space: normal;
  max-width: 100%;
  max-height: 100%;
  outline: none !important;
}

.lity-content {
  z-index: 9993;
  width: 100%;
  -webkit-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
  -webkit-transition: -webkit-transform 0.3s ease;
  transition: -webkit-transform 0.3s ease;
  -o-transition: -o-transform 0.3s ease;
  transition: transform 0.3s ease;
  transition: transform 0.3s ease, -webkit-transform 0.3s ease, -o-transform 0.3s ease;
}

.lity-loading .lity-content, .lity-closed .lity-content {
  -webkit-transform: scale(0.8);
  -ms-transform: scale(0.8);
  -o-transform: scale(0.8);
  transform: scale(0.8);
}

.lity-content:after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  display: block;
  right: 0;
  width: auto;
  height: auto;
  z-index: -1;
  -webkit-box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
  box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
}

.lity-close {
  z-index: 9994;
  width: 35px;
  height: 35px;
  position: fixed;
  right: 0;
  top: 0;
  -webkit-appearance: none;
  cursor: pointer;
  text-decoration: none;
  text-align: center;
  padding: 0;
  color: #fff;
  font-style: normal;
  font-size: 35px;
  font-family: Arial, Baskerville, monospace;
  line-height: 35px;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6);
  border: 0;
  background: none;
  outline: none;
  -webkit-box-shadow: none;
  box-shadow: none;
}

.lity-close::-moz-focus-inner {
  border: 0;
  padding: 0;
}

.lity-close:hover, .lity-close:focus, .lity-close:active, .lity-close:visited {
  text-decoration: none;
  text-align: center;
  padding: 0;
  color: #fff;
  font-style: normal;
  font-size: 35px;
  font-family: Arial, Baskerville, monospace;
  line-height: 35px;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6);
  border: 0;
  background: none;
  outline: none;
  -webkit-box-shadow: none;
  box-shadow: none;
}

.lity-close:active {
  top: 1px;
}

.lity-image img {
  max-width: 100%;
  display: block;
  line-height: 0;
  border: 0;
}

.lity-iframe .lity-container, .lity-youtube .lity-container, .lity-vimeo .lity-container, .lity-facebookvideo .lity-container, .lity-googlemaps .lity-container {
  width: 100%;
  max-width: 964px;
}

.lity-iframe-container {
  width: 100%;
  height: 0;
  padding-top: 56.25%;
  overflow: auto;
  pointer-events: auto;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-overflow-scrolling: touch;
}

.lity-iframe-container iframe {
  position: absolute;
  display: block;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -webkit-box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
  box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
  background: #000;
}

.lity-hide {
  display: none;
}

::selection {
  background: #ededed;
  /* WebKit/Blink Browsers */
}

::-moz-selection {
  background: #ededed;
  /* Gecko Browsers */
}

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
}

hr {
  background-color: #556069;
  border: none;
  height: 1px;
  margin: 2.9rem 0;
}

.no-margin-bottom {
  margin-bottom: 0;
}

.date {
  color: #6E7E8C;
  margin-top: 1.45rem;
}

.iframe-wrapper {
  height: 0;
  padding-bottom: 56.25%;
  position: relative;
  width: 100%;
}
.iframe-wrapper iframe {
  position: absolute;
  height: 100%;
  width: 100%;
}

video,
iframe {
  outline: none;
}

article {
  margin-top: 11.6rem;
  margin-bottom: 2.9rem;
}
article.has-header-section {
  margin-top: 0;
}
article h1, article .h1,
article h2, article .h2,
article h3, article .h3, article .field-portfolio:after, article .field-item:after,
article h4, article .h4, article .article-item .no-thumb .title, .article-item .no-thumb article .title,
article h5, article .h5 {
  margin-top: 2.9rem;
}
@media (max-width: 766px) {
  article {
    margin-top: 0;
  }
}

.bg-helper {
  pointer-events: none;
  background: rgba(255, 255, 255, 0);
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 3;
  padding: 1.45rem;
  transition: opacity 0.3s cubic-bezier(0.015, 0.445, 0.305, 0.99), transform 0.4s cubic-bezier(0.015, 0.445, 0.305, 0.99) 0.5s;
  transform: translateY(100%);
  opacity: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
}
.bg-helper .inner {
  visibility: hidden;
  color: transparent;
  position: absolute;
  text-transform: uppercase;
  font-size: 8vw;
  -webkit-text-stroke: 1px #000;
  text-align: center;
  line-height: 1;
  transform: scale(1);
  transition: 5s cubic-bezier(0.015, 0.445, 0.305, 0.99) 0.3s;
}
.bg-helper.active {
  transition: opacity 0.3s cubic-bezier(0.015, 0.445, 0.305, 0.99), transform 0.4s cubic-bezier(0.015, 0.445, 0.305, 0.99);
  opacity: 1;
  transform: translateY(0);
}
.bg-helper.active .inner {
  opacity: 1;
  transition: 5s cubic-bezier(0.015, 0.445, 0.305, 0.99);
  transform: scale(1.2);
}

.lity-close {
  top: 1.45rem;
  right: 1.45rem;
}
.lity-close:active {
  top: 1.45rem;
}

.btn {
  appearance: none;
  background-color: transparent;
  border: 1px solid #000;
  background: #fff;
  border-radius: 0;
  color: #000;
  cursor: pointer;
  display: inline-block;
  font-family: "Mabry Pro", Helvetica, Arial, sans-serif;
  font-size: inherit;
  outline: none;
  padding: 0.725rem 1.45rem;
  text-align: center;
  text-decoration: none;
  transition: all 0.2s cubic-bezier(0.015, 0.445, 0.305, 0.99);
}
.btn:hover {
  background-color: #000;
  color: #fff;
  border: 1px solid #fff;
}
.btn.invert {
  background-color: #000 !important;
  -webkit-background-color: #000;
  border: 1px solid #000 !important;
  -webkit-border: 1px solid #000;
  color: #fff !important;
}
.btn.invert:hover {
  background-color: #fff !important;
  -webkit-background-color: #fff !important;
  color: #000 !important;
}

.section-title {
  color: #000;
  text-transform: uppercase;
  margin: 2.9rem 0 1.45rem;
}

.section-subtitle {
  color: #000;
  margin: 0;
  text-transform: uppercase;
  margin-top: 1.45rem;
  margin-bottom: 1.45rem;
}

.pointer-none {
  pointer-events: none;
}

.outline {
  color: transparent;
  -webkit-text-stroke: 1px #000;
}

html {
  overflow-x: hidden;
  width: 100vw;
}

body {
  color: #000;
  overflow-x: hidden;
  width: 100vw;
  -webkit-font-smoothing: antialiased;
}
@media (min-width: 767px) {
  body.blurred > *:not(nav) {
    cursor: default;
    opacity: 0.8;
    pointer-events: none;
    transition: all 0.2s;
  }
  body.blurred:before {
    background-color: #fff;
    content: "";
    display: inline-block;
    height: 100vh;
    opacity: 0.5;
    position: fixed;
    left: 0;
    top: 0;
    width: 100vw;
    z-index: 1;
  }
}

nav {
  left: 0;
  position: fixed;
  top: 0;
  width: 100vw;
  z-index: 5;
  border-bottom: 1px solid transparent;
  transition: background-color 0.2s, padding 0.2s cubic-bezier(0.015, 0.445, 0.305, 0.99), border-bottom 0.2s cubic-bezier(0.015, 0.445, 0.305, 0.99) 0.2s;
}
@media (max-width: 766px) {
  nav {
    background-color: #fff;
    padding: 10px 0 !important;
    border-bottom: 1px solid;
  }
  nav + div {
    margin-top: 70px !important;
  }
}
nav .home-link {
  display: inline-block;
  text-decoration: none;
}
nav .home-link .logo {
  transition: padding 0.2s cubic-bezier(0.015, 0.445, 0.305, 0.99);
}
@media (min-width: 767px) {
  nav .home-link .logo {
    padding: 1.45rem 0;
  }
}
nav .home-link .logo,
nav .home-link .logo-desc {
  display: inline-block;
  vertical-align: middle;
}
nav .home-link .logo-desc {
  overflow: hidden;
}
nav .home-link .logo-desc svg {
  transition: height 0.2s cubic-bezier(0.015, 0.445, 0.305, 0.99), transform 0.2s cubic-bezier(0.015, 0.445, 0.305, 0.99) 0.1s;
}
nav .home-link:hover svg {
  opacity: 0.5;
}
nav .home-link svg {
  display: inline-block;
  height: 6rem;
  max-height: 110px;
  vertical-align: middle;
  transition: all 0.2s;
  transform: translate3d(0, 0, 0);
}
@media (max-width: 766px) {
  nav .home-link svg {
    height: 50px;
  }
}
nav .hamburger span,
nav .hamburger span:after,
nav .hamburger span:before {
  display: none;
  width: 40px;
  height: 2px;
}
@media (max-width: 766px) {
  nav .hamburger span,
nav .hamburger span:after,
nav .hamburger span:before {
    display: inline-block;
  }
}
nav .hamburger {
  display: inline-block;
  float: right;
  height: 50px;
}
@media (max-width: 766px) {
  nav .hamburger {
    transform: scale(0.8);
    transform-origin: 100%;
  }
}
nav .hamburger span {
  float: right;
  margin: 9px 0 0;
  position: relative;
  transform: translateY(15px);
  background: #000;
  transition: all 0ms 300ms;
}
nav .hamburger span:before {
  content: "";
  position: absolute;
  left: 0;
  bottom: 15px;
  background: #000;
  transition: bottom 300ms 300ms cubic-bezier(0.23, 1, 0.32, 1), transform 300ms cubic-bezier(0.23, 1, 0.32, 1);
}
nav .hamburger span:after {
  content: "";
  position: absolute;
  left: 0;
  top: 15px;
  background: #000;
  transition: top 300ms 300ms cubic-bezier(0.23, 1, 0.32, 1), transform 300ms cubic-bezier(0.23, 1, 0.32, 1);
}
nav .primary-nav {
  padding: 2.9rem 0 0;
}
@media (max-width: 766px) {
  nav .primary-nav > li {
    font-weight: 600;
  }
}
nav ul {
  display: inline-block;
  float: right;
  position: relative;
  z-index: 1;
  line-height: 1;
  margin: 0;
  padding: 34px 0;
  text-align: right;
  text-transform: uppercase;
  transition: padding 0.2s;
  /* MOBILE NAVIGATION */
}
nav ul li {
  display: inline-block;
  margin-left: 2.9rem;
}
nav ul li a {
  color: #000;
  text-decoration: none;
  transition: all 0.2s cubic-bezier(0.015, 0.445, 0.305, 0.99);
}
nav ul li a:hover {
  color: #000;
  opacity: 0.5;
}
nav ul li ul {
  background-color: #fff;
  border-left: 1px solid;
  line-height: 1.2;
  height: 100vh;
  transform: translateX(100vw);
  left: 0;
  top: 0;
  padding: 0 3rem;
  padding-bottom: 1.45rem;
  padding-top: 5.8rem;
  position: absolute;
  opacity: 0;
  overflow-y: auto;
  pointer-events: none;
  text-align: left;
  text-transform: none;
  transition: transform 0.8s cubic-bezier(0.015, 0.445, 0.305, 0.99), opacity 0.2s, left 0s 0.6s;
  width: calc(100% + 1.45rem);
  z-index: -1;
  -webkit-overflow-scrolling: touch;
}
@media (max-width: 766px) {
  nav ul li ul {
    z-index: 1;
    top: 0;
  }
}
nav ul li ul li {
  display: block;
  margin: 0;
  overflow: hidden;
  line-height: 1.6;
  width: 100%;
}
nav ul li ul li a {
  transform: translateY(4.35rem) translate3d(0, 0, 0);
  transition: none;
  display: inline-block;
  text-transform: uppercase;
}
nav ul li ul li.menu-item-type-custom a {
  color: #979EA4;
  font-size: var(--t7);
  margin-top: 1.45rem;
  pointer-events: none;
}
@media (max-width: 766px) {
  nav ul li ul li.menu-item-type-custom a {
    margin-top: 0.725rem;
  }
}
nav ul li ul li:first-of-type a {
  margin-top: 0;
}
nav ul li.active > a {
  color: #666;
}
nav ul li.active ul {
  display: inline-block;
  transform: translateY(0);
  opacity: 1;
  pointer-events: all;
  transition: transform 0.4s cubic-bezier(0.015, 0.445, 0.305, 0.99), opacity 0.2s, left 0s 0.6s;
}
nav ul li.active ul li:nth-child(1) a {
  transition-delay: 0.05s, 0s;
}
nav ul li.active ul li:nth-child(2) a {
  transition-delay: 0.1s, 0s;
}
nav ul li.active ul li:nth-child(3) a {
  transition-delay: 0.15s, 0s;
}
nav ul li.active ul li:nth-child(4) a {
  transition-delay: 0.2s, 0s;
}
nav ul li.active ul li:nth-child(5) a {
  transition-delay: 0.25s, 0s;
}
nav ul li.active ul li:nth-child(6) a {
  transition-delay: 0.3s, 0s;
}
nav ul li.active ul li:nth-child(7) a {
  transition-delay: 0.35s, 0s;
}
nav ul li.active ul li:nth-child(8) a {
  transition-delay: 0.4s, 0s;
}
nav ul li.active ul li:nth-child(9) a {
  transition-delay: 0.45s, 0s;
}
nav ul li.active ul li:nth-child(10) a {
  transition-delay: 0.5s, 0s;
}
nav ul li.active ul li:nth-child(11) a {
  transition-delay: 0.55s, 0s;
}
nav ul li.active ul li:nth-child(12) a {
  transition-delay: 0.6s, 0s;
}
nav ul li.active ul li:nth-child(13) a {
  transition-delay: 0.65s, 0s;
}
nav ul li.active ul li:nth-child(14) a {
  transition-delay: 0.7s, 0s;
}
nav ul li.active ul li:nth-child(15) a {
  transition-delay: 0.75s, 0s;
}
nav ul li.active ul li:nth-child(16) a {
  transition-delay: 0.8s, 0s;
}
nav ul li.active ul li:nth-child(17) a {
  transition-delay: 0.85s, 0s;
}
nav ul li.active ul li:nth-child(18) a {
  transition-delay: 0.9s, 0s;
}
nav ul li.active ul li a {
  transform: translateY(0) translate3d(0, 0, 0);
  transition: transform 0.4s cubic-bezier(0.015, 0.445, 0.305, 0.99), opacity 0.2s cubic-bezier(0.015, 0.445, 0.305, 0.99);
}
@media (max-width: 766px) {
  nav ul {
    background-color: #fff;
    display: none;
    height: calc(100vh - 70px);
    left: 0;
    overflow-y: auto;
    padding: 1.45rem !important;
    position: fixed;
    text-align: center;
    top: 70px;
    width: 100vw;
    -webkit-overflow-scrolling: touch;
  }
  nav ul li {
    width: 100%;
    margin-left: 0;
    margin-bottom: 15px;
    text-align: left;
    font-size: var(--t5);
  }
  nav ul li ul {
    box-shadow: none;
    display: none !important;
    padding: 0 !important;
    margin: 0.725rem 0 1.45rem !important;
    position: relative;
    border-left: 0;
    width: 100%;
  }
  nav ul li ul li {
    font-size: var(--t6);
  }
  nav ul li ul:before {
    display: none;
  }
  nav ul li.active ul {
    display: inline-block !important;
    height: auto;
  }
}
nav .search-toggle {
  display: inline-block;
}
nav .search-toggle svg {
  display: inline-block;
  vertical-align: middle;
  height: 1rem;
  width: 1rem;
  top: -0.1rem;
  position: relative;
}
nav .search-toggle circle,
nav .search-toggle path {
  transition: all 0.2s cubic-bezier(0.015, 0.445, 0.305, 0.99);
}
nav .search-toggle:hover circle,
nav .search-toggle:hover path {
  stroke: #666;
}
@media (max-width: 766px) {
  nav .search-toggle {
    display: none;
  }
}
@media (max-width: 766px) {
  nav ul .search-item .sub-menu {
    transform: translateY(0);
    opacity: 1;
    display: block !important;
    pointer-events: all;
    height: auto;
  }
}
nav .search-container {
  box-shadow: none;
  position: relative;
  padding-top: 4.35rem;
}
nav .search-container.expanded + .search-toggle circle,
nav .search-container.expanded + .search-toggle path {
  stroke: #666;
}
nav .search-container form {
  display: flex;
  flex-wrap: wrap;
  position: relative;
  width: 100%;
  margin: 0 auto;
  max-width: 1360px;
  border-bottom: 1px solid #000;
}
nav .search-container form input[type=text] {
  appearance: none;
  background-color: transparent;
  border: none;
  border-radius: 0;
  color: #17242E;
  display: inline-block;
  font-family: "Mabry Pro", Helvetica, Arial, sans-serif;
  font-size: 1rem;
  height: 50px;
  outline: none;
  width: calc(100% - 80px);
}
nav .search-container form input[type=text]::placeholder {
  color: #484848;
  opacity: 0.5;
}
nav .search-container form input[type=submit] {
  appearance: none;
  -webkit-appearance: none;
  background-color: transparent;
  border: none;
  border-radius: 0;
  color: #000;
  cursor: pointer;
  display: inline-block;
  position: absolute;
  right: 0;
  font-size: var(--t4);
  opacity: 1;
  font-family: "Mabry Pro", Helvetica, Arial, sans-serif;
  height: 50px;
  outline: none;
}
@media (max-width: 766px) {
  nav .search-container {
    display: flex;
    flex-wrap: wrap !important;
    justify-content: space-between;
    align-items: center;
    margin-top: 40px;
    padding: 0 !important;
    position: static;
    width: 100%;
  }
  nav .search-container input[type=text] {
    font-size: 18px !important;
    line-height: normal !important;
    height: 40px !important;
    vertical-align: middle;
    padding: 0 !important;
    width: calc(100% - 40px) !important;
  }
  nav .search-container input[type=submit] {
    float: none;
    height: 40px !important;
    vertical-align: middle;
    width: 40px !important;
  }
}
nav.scrolled {
  background-color: #fff;
  padding: 0;
  border-bottom: 1px solid #000;
  height: 71px;
}
@media (min-width: 767px) {
  nav.scrolled .home-link {
    margin-top: 10px;
  }
}
@media (min-width: 767px) {
  nav.scrolled .home-link svg {
    height: 50px;
  }
}
nav.scrolled .home-link .logo {
  padding: 0;
}
nav.scrolled .home-link .logo-desc svg {
  transform: translateX(-102%);
}
nav.scrolled .row > div > ul {
  padding: 17px 0;
}
@media (min-width: 767px) {
  nav.scrolled .row > div > ul {
    padding: 25px 0 17px;
  }
}
@media (min-width: 1480px) {
  nav.scrolled .row > div > ul {
    padding: 21px 0 17px;
  }
}
nav.scrolled .row > div > ul .menu-item-has-children > ul {
  padding-top: 4.35rem;
}
@media (max-width: 766px) {
  nav.expanded .hamburger span {
    background: rgba(255, 255, 255, 0);
  }
  nav.expanded .hamburger span:after {
    top: 0;
    transform: rotate(45deg);
    transition: top 300ms cubic-bezier(0.23, 1, 0.32, 1), transform 300ms 300ms cubic-bezier(0.23, 1, 0.32, 1);
  }
  nav.expanded .hamburger span:before {
    bottom: 0;
    transform: rotate(-45deg);
    transition: bottom 300ms cubic-bezier(0.23, 1, 0.32, 1), transform 300ms 300ms cubic-bezier(0.23, 1, 0.32, 1);
  }
  nav.expanded ul {
    display: inline-block;
  }
}

.hero {
  align-items: center;
  background-repeat: no-repeat;
  background-position: bottom right 5vw;
  display: flex;
  justify-content: center;
  min-height: 100vh;
  overflow: hidden;
  padding-top: 8rem;
  padding-bottom: 8rem;
  position: relative;
  width: 100vw;
  background: #eee;
}
.hero.hero-home .container-fluid {
  width: 100%;
}
.hero.hero-home h1,
.hero.hero-home h2,
.hero.hero-home p {
  color: #fff;
}
@media (max-width: 766px) {
  .hero {
    min-height: 0;
    padding-top: 0 !important;
    margin-top: 70px;
  }
}
.hero .background {
  background-repeat: no-repeat;
  background-position: 90% 0%;
  background-size: auto 100%;
  height: 100%;
  right: -150px;
  position: fixed;
  top: 0;
  transform-origin: 50% 100%;
  width: 100%;
}
@media (max-width: 766px) {
  .hero .background {
    background-position: 100% 100% !important;
    background-size: auto 100%;
    height: 100%;
    right: 0;
    position: absolute;
  }
}
.hero .background-bottom {
  background-position: 90% 100%;
}
@keyframes background_enter {
  0% {
    transform: translateY(50px);
  }
  100% {
    transform: translateY(0);
  }
}
.hero .background-top {
  background-position: 90% 0%;
}
@media (max-width: 766px) {
  .hero .background-top {
    background-position: top 0 right 0;
  }
}
@keyframes background_enter_top {
  0% {
    transform: translateY(-50px);
  }
  100% {
    transform: translateY(0);
  }
}
.hero .background-cover {
  background-size: cover;
  background-position: center;
}
.hero .inner {
  width: 100%;
}
.hero.has-slideshow {
  display: block;
  padding: 0 !important;
  min-height: 0;
}
.hero.has-slideshow .swiper-container {
  width: 100%;
}
.hero.has-slideshow .swiper-container .swiper-wrapper {
  height: 100%;
}
.hero.has-slideshow .swiper-container .swiper-wrapper .swiper-slide {
  align-items: center;
  background-repeat: no-repeat;
  background-position: bottom right 5vw;
  background-size: cover;
  display: flex;
  height: calc(100vh - 64px);
  max-height: 50vw;
  padding-bottom: 40px;
  width: 100% !important;
  background-position: center !important;
}
@media (min-width: 767px) {
  .hero.has-slideshow .swiper-container .swiper-wrapper .swiper-slide {
    min-height: 25rem;
  }
}
.hero.has-slideshow .swiper-container .swiper-wrapper .swiper-slide a {
  display: block;
  width: 100%;
  min-height: 100%;
}
.hero.has-slideshow .swiper-container .swiper-wrapper .swiper-slide .container {
  width: 100%;
}
@media (max-width: 766px) {
  .hero.has-slideshow .swiper-container .swiper-wrapper .swiper-slide {
    background-position: center !important;
    background-size: cover;
    max-height: 35vmax;
    min-height: 0;
  }
}
.hero.has-slideshow .swiper-container .swiper-wrapper .swiper-slide.background-bottom {
  background-position: bottom right 5vw;
}
.hero.has-slideshow .swiper-container .swiper-wrapper .swiper-slide.background-top {
  background-position: top right 5vw;
}
.hero.has-slideshow .swiper-container .swiper-wrapper .swiper-slide.background-cover {
  background-size: cover;
  background-position: center;
}
.hero.has-slideshow .swiper-container .swiper-wrapper .swiper-slide .inner {
  opacity: 0;
  transition: opacity 1s 0.5s;
}
.hero.has-slideshow .swiper-container .swiper-wrapper .swiper-slide.swiper-slide-active .inner {
  opacity: 1;
}
.hero.field {
  padding-bottom: 132px;
  background-size: contain;
}
@media (max-width: 766px) {
  .hero.field {
    padding-bottom: 0;
  }
}
.hero.certification {
  background-position: center;
  background-size: cover;
  color: #000;
  min-height: 0;
  padding-top: 8.7rem;
  background: #fff !important;
}
@media (min-width: 1024px) {
  .hero.certification .inner p.extra-margin {
    margin-top: 0;
  }
}
@media (max-width: 766px) {
  .hero.certification {
    padding-bottom: 20px;
    padding-top: 20px;
  }
}
@media (max-width: 766px) {
  .hero .inner {
    padding: 40px 0;
  }
}
.hero .inner h1,
.hero .inner h2 {
  margin: 0;
  text-transform: uppercase;
}
.hero .inner h1 + p,
.hero .inner h2 + p {
  margin-top: 4.35rem;
}
.hero .inner p {
  margin: 0;
}
@media (min-width: 767px) {
  .hero .inner p {
    white-space: pre-line;
  }
}
.hero .inner p a {
  text-decoration: none;
}
.hero .inner p a:hover {
  color: inherit;
  text-decoration: underline;
}

.animated-type {
  overflow: hidden;
  transform: translateY(100%);
  transition: transform 0.5s cubic-bezier(0.015, 0.445, 0.305, 0.99), opacity 0.1s cubic-bezier(0.015, 0.445, 0.305, 0.99);
  display: block;
  padding-top: 0.12em;
  margin: 0;
}
.animated-type.visible {
  opacity: 1;
  transform: translateY(0);
}

.animated-type-wrapper {
  display: inline-table;
  overflow: hidden;
  width: 100%;
}

.articles-container {
  margin: 0 0.725rem;
}
.articles-container .article-item {
  padding-left: 0.725rem;
  padding-right: 0.725rem;
  width: 100%;
}
.articles-container .article-item.swiper-container .swiper-wrapper {
  height: auto !important;
}
@media (min-width: 767px) {
  .articles-container .article-item {
    width: 33.33333%;
  }
  .articles-container .article-item.featured {
    width: 66.66666%;
  }
}
@media (min-width: 1024px) {
  .articles-container .article-item {
    width: 20%;
  }
  .articles-container .article-item.featured {
    width: 40%;
  }
}
@media (min-width: 1480px) {
  .articles-container .article-item {
    width: 16.666666666%;
  }
  .articles-container .article-item.featured {
    width: 33.3333333%;
  }
}

.articles {
  display: flex;
  flex-wrap: wrap;
  padding-top: 1.45rem;
}
.articles.articles-page {
  margin-left: -0.725rem;
  margin-right: -0.725rem;
}
.articles.course-articles {
  padding-top: 0;
}
.articles.course-articles .article-item {
  margin-bottom: 0;
}

.view-all {
  margin: 0 auto 1.45rem;
  display: inline-block;
}

.article-item {
  color: #000;
  padding-bottom: 0;
  text-decoration: none;
  margin-bottom: 1.45rem;
}
.article-item img {
  opacity: 1;
}
.article-item:hover * {
  color: #666 !important;
}
.article-item:hover img {
  opacity: 0.6;
}
.article-item .no-thumb {
  background: #000;
  height: 100%;
  margin-top: 0;
}
.article-item .no-thumb .title {
  color: #fff;
  margin-top: 0 !important;
  padding: 1.45rem;
}
.article-item figure {
  height: 0 !important;
  padding-bottom: 70%;
  position: relative;
  width: 100%;
  overflow: hidden;
  background-color: #000;
}
.article-item figure img {
  font-family: "object-fit: cover;";
  height: 100%;
  left: 0;
  object-fit: cover;
  position: absolute;
  top: 0;
  width: 100%;
  transition: all 0.4s cubic-bezier(0.015, 0.445, 0.305, 0.99);
  backface-visibility: hidden;
}
.article-item p {
  transition: all 0.2s cubic-bezier(0.015, 0.445, 0.305, 0.99);
}
.article-item p .title {
  display: block;
  margin-bottom: 0.725rem;
  margin-top: 1.45rem;
  width: 100%;
}
.article-item p .excerpt {
  display: block;
  margin-bottom: 0;
}
@media (max-width: 766px) {
  .article-item {
    margin-bottom: 0;
  }
}

video::-webkit-media-controls-overlay-play-button {
  display: none;
}

.video-section {
  margin: 1.45rem 0;
  position: relative;
  width: 100%;
}
@media (max-width: 766px) {
  .video-section {
    background-color: transparent;
  }
}
.video-section .text-wrapper {
  color: #000;
  left: 0;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 1;
}
.video-section .text-wrapper p {
  max-width: 40%;
}
.video-section .text-wrapper .title {
  color: transparent;
  white-space: pre;
  font-weight: 600;
  margin: 2.9rem 0;
  max-width: initial;
  -webkit-text-stroke: 1px #000;
  text-transform: uppercase;
}
@media (max-width: 766px) {
  .video-section .text-wrapper {
    color: #000;
    position: static;
    transform: none;
    width: auto;
  }
  .video-section .text-wrapper p {
    max-width: 100%;
    margin-bottom: 0;
  }
  .video-section .text-wrapper .title {
    white-space: normal;
    margin: 1.45rem 0 0;
  }
}
.video-section .video-wrapper {
  position: relative;
  width: 100%;
  margin: 0 auto;
}
@media (min-width: 767px) {
  .video-section .video-wrapper {
    width: 80%;
  }
}
.video-section .video-wrapper .play {
  cursor: pointer;
  height: 90px;
  left: 50%;
  position: absolute;
  top: 50%;
  text-decoration: none;
  transform: translateX(-50%) translateY(-50%);
  width: 90px;
  z-index: 2;
}
.video-section .video-wrapper .play svg {
  height: 90px;
  width: 90px;
}
.video-section .video-wrapper .play svg .st0 {
  fill: #000;
}
.video-section .video-wrapper .play svg .st1 {
  fill: none;
  stroke: #231F20;
  stroke-miterlimit: 10;
}
.video-section .video-wrapper .play svg * {
  transition: all 0.2s cubic-bezier(0.015, 0.445, 0.305, 0.99);
}
.video-section .video-wrapper .play:hover svg .st0 {
  fill: #fff;
}
.video-section .video-wrapper .play:hover svg .st1 {
  fill: #000;
}
@media (max-width: 766px) {
  .video-section .video-wrapper .play {
    height: 60px;
    width: 60px;
  }
  .video-section .video-wrapper .play svg {
    height: 60px;
    width: 60px;
  }
}
.video-section .video-wrapper video {
  display: inline-block;
  vertical-align: middle;
  width: 100%;
}

.field-item {
  background-color: #fff;
  border: 1px solid #000;
  border-bottom: none;
  overflow: hidden;
  position: relative;
  text-decoration: none;
  transition: all 0.2s cubic-bezier(0.015, 0.445, 0.305, 0.99);
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.field-item:after {
  content: "→";
  display: inline-block;
}
.field-item .title {
  color: #000;
  padding-right: 0.3em;
  position: relative;
  text-transform: uppercase;
  z-index: 1;
}
.field-item:hover {
  background-color: #000;
}
.field-item:hover .title, .field-item:hover:after {
  color: #fff;
}
.field-item:last-child {
  border-bottom: 1px solid #000;
}

.certifications-section {
  margin-bottom: -1px;
}

.certifications {
  display: flex;
  flex-wrap: wrap;
  position: relative;
}
@media (max-width: 1480px) {
  .certifications {
    margin-left: -41px;
    margin-right: -41px;
    width: calc(100% + 82px);
  }
}
@media (max-width: 766px) {
  .certifications {
    border-bottom: none;
    margin-left: -22px;
    margin-right: -22px;
    padding: 0 16px;
    width: calc(100% + 44px);
  }
}
.certifications:before, .certifications:after {
  background-color: #556069;
  content: "";
  display: inline-block;
  height: 1px;
  left: 50%;
  position: absolute;
  transform: translateX(-50%);
  width: 100vw;
}
.certifications:before {
  top: 0;
}
.certifications:after {
  bottom: 0;
}
.certifications .certification-item {
  background-color: #fff;
  border: 1px solid #000;
  border-bottom: none;
  border-right: none;
  padding: 4.35rem;
  padding-bottom: 1.45rem;
  text-decoration: none;
  transition: all 0.2s cubic-bezier(0.015, 0.445, 0.305, 0.99);
}
.certifications .certification-item:last-of-type:after {
  background-color: #000;
  content: "";
  display: inline-block;
  height: 100%;
  position: absolute;
  right: -1px;
  top: 0;
  width: 1px;
}
@media (max-width: 1023px) {
  .certifications .certification-item {
    border-right: 1px solid #000;
  }
}
@media (max-width: 766px) {
  .certifications .certification-item {
    padding: 20px 20px;
  }
}
.certifications .certification-item .title {
  color: #000;
  font-weight: 600;
  margin-bottom: 4.35rem;
  position: relative;
  text-transform: uppercase;
  z-index: 1;
}
@media (max-width: 766px) {
  .certifications .certification-item .title {
    margin-bottom: 4.35rem;
  }
}
.certifications .certification-item .title .duration {
  color: transparent;
  -webkit-text-stroke: 1px #000;
}
.certifications .certification-item .description {
  color: #556069;
}
.certifications .certification-item .total {
  bottom: 4.35rem;
  color: #6E7E8C;
  left: 4.35rem;
  position: absolute;
  text-transform: uppercase;
  z-index: 1;
}
@media (max-width: 766px) {
  .certifications .certification-item .total {
    display: inline-block;
    margin-top: 4.35rem;
    position: static;
    width: auto;
  }
}
.certifications .certification-item:hover {
  background-color: #000;
}
.certifications .certification-item:hover .title {
  color: #fff;
}
.certifications .certification-item:hover .title .duration {
  -webkit-text-stroke: 1px #fff;
}
.certifications .certification-item:hover .description {
  color: #fff;
}
.certifications .certification-item:hover .total {
  border-color: #fff;
  color: #fff;
}
.certifications .certification-item:hover figure {
  opacity: 1;
}

.instagram-section {
  padding-bottom: 1.45rem;
}
.instagram-section h2 img {
  display: inline-block;
  height: 2.8rem;
  vertical-align: middle;
  margin-top: -0.6rem;
}
@media (max-width: 766px) {
  .instagram-section h2 img {
    height: 36px;
    margin-top: -10px;
  }
}

.instagram-item {
  display: inline-block;
}
@media (max-width: 1023px) {
  .instagram-item {
    margin-bottom: 1.45rem;
  }
}
.instagram-item figure {
  height: 0;
  padding-bottom: 100%;
  position: relative;
  width: 100%;
}
.instagram-item figure img {
  font-family: "object-fit: cover;";
  height: 100%;
  left: 0;
  object-fit: cover;
  position: absolute;
  top: 0;
  width: 100%;
}

.single-header {
  overflow: hidden;
  position: relative;
  border-bottom: 1px solid #000;
  padding-bottom: 0;
  margin: 0;
}
@media (max-width: 766px) {
  .single-header {
    margin: 0;
  }
}
.single-header h1, .single-header .h1 {
  margin: 0;
}
.single-header .first-section {
  padding: 10.15rem 0 4.35rem;
}
@media (max-width: 766px) {
  .single-header .first-section {
    padding: 2.9rem 0 2.9rem;
  }
}

.single-header-bg {
  width: 110%;
  height: 110%;
  position: absolute;
  filter: blur(10px) contrast(1.2) saturate(0.9);
  background-color: #ddd;
  background-size: cover;
  background-position: center;
  opacity: 0.4;
}

.courses-container {
  position: relative;
  border-top: 1px solid;
  background: #fff;
  transition: 0.5s cubic-bezier(0.015, 0.445, 0.305, 0.99);
}
@media (min-width: 767px) {
  .courses-container {
    margin-bottom: -4rem;
  }
}
@media (min-width: 767px) {
  .courses-container.active {
    transform: translateY(-4rem);
  }
}

.courses {
  display: flex;
  flex-wrap: wrap;
  margin: 0 -4px;
  margin-bottom: -1px;
  position: relative;
  width: calc(100% + 6px);
  background: #eee;
}
.courses:before, .courses:after {
  background-color: #556069;
  content: "";
  display: inline-block;
  height: 1px;
  left: 50%;
  position: absolute;
  transform: translateX(-50%);
  width: 100vw;
}
.courses:before {
  top: 0;
}
.courses:after {
  bottom: 0;
}
.courses.no-border-bottom:after {
  display: none;
}
@media (max-width: 766px) {
  .courses {
    background-image: none;
    border-bottom: none;
    margin: 0 -1px;
    padding: 0;
    transform: none;
    width: calc(100% + 2px);
  }
}
.courses.hnd:after {
  display: none;
}
.courses.hnd .course-item {
  width: 100% !important;
}
.courses.hnd .course-item:after {
  display: none !important;
}
.courses .course-item {
  background-color: #fff;
  border: 1px solid #556069;
  margin-right: 0px;
  margin-left: -1px;
  transform: translateX(3px);
  margin-bottom: -1px;
  padding: 1.5rem;
  position: relative;
  text-decoration: none;
  transition: all 0.2s cubic-bezier(0.015, 0.445, 0.305, 0.99);
  overflow: hidden;
}
@media (max-width: 766px) {
  .courses .course-item {
    border: 1px solid #000;
    border-bottom: none;
    border-left: 0;
  }
}
@media (min-width: 1024px) {
  .courses .course-item {
    min-height: 16rem;
  }
}
.courses .course-item:nth-of-type(4n) {
  border-right: 1px solid #556069;
}
.courses .course-item:last-of-type:not(:nth-of-type(4n)):after {
  background-color: #556069;
  content: "";
  display: inline-block;
  height: 100%;
  position: absolute;
  right: -2px;
  top: 0;
  width: 1px;
}
@media (max-width: 766px) {
  .courses .course-item:last-of-type:not(:nth-of-type(4n)):after {
    display: none;
  }
}
@media (max-width: 1023px) {
  .courses .course-item:nth-of-type(2n) {
    border-right: 1px solid #556069;
  }
}
.courses .course-item .title {
  color: #000;
  margin: 2rem 0 1rem;
  position: relative;
  z-index: 1;
  line-height: 1.2;
  transition: color 0.3s cubic-bezier(0.015, 0.445, 0.305, 0.99);
}
@media (max-width: 766px) {
  .courses .course-item .title {
    min-height: 0;
    margin-top: 0.725rem;
    margin-bottom: 0;
  }
}
.courses .course-item .details {
  color: #969696;
  position: relative;
  text-transform: uppercase;
  z-index: 1;
  margin: 1.45rem 0 1.45rem;
  font-size: var(--t7);
}
.courses .course-item .details span {
  display: inline-block;
  min-height: 2rem;
}
@media (max-width: 766px) {
  .courses .course-item .details {
    margin: 0;
  }
}
.courses .course-item figure {
  height: 100%;
  left: 0;
  opacity: 0;
  position: absolute;
  top: 0;
  transition: all 0.5s cubic-bezier(0.015, 0.445, 0.305, 0.99);
  width: calc(100% + 1px);
  transform: scale(1.1);
}
@media (max-width: 766px) {
  .courses .course-item figure {
    display: none;
  }
}
.courses .course-item figure img {
  font-family: "object-fit: cover;'";
  height: 100%;
  object-fit: cover;
  width: 100%;
  opacity: 0.95;
}
.courses .course-item:hover {
  background-color: #000;
}
.courses .course-item:hover figure {
  opacity: 1;
  transform: scale(1);
}
.courses .course-item:hover .title {
  color: #fff;
}
.courses .course-item:hover .details {
  color: #fff;
}

.course-intro {
  align-items: center;
  padding-top: 1.45rem;
}
.course-intro > .col-md-6:nth-child(2n) {
  padding: 0;
}
@media (min-width: 767px) {
  .course-intro {
    display: flex;
    align-items: stretch;
    margin-top: 0;
    padding-top: 0;
  }
}
@media (max-width: 766px) {
  .course-intro {
    padding-top: 0;
  }
}
.course-intro .course-intro-info {
  padding-top: 10.15rem;
  padding-bottom: 2.9rem;
}
@media (max-width: 766px) {
  .course-intro .course-intro-info {
    padding-top: 1.45rem;
    padding-bottom: 1.45rem;
  }
}
.course-intro .course-image {
  position: absolute;
}
.course-intro .course-image img {
  width: 50vw;
}
.course-intro .title {
  font-weight: 400;
  margin-bottom: 0;
}
.course-intro .subtitle {
  margin-bottom: 2.9rem;
  text-transform: uppercase;
  margin-top: 0;
}
.course-intro .details {
  margin: 1.45rem 0 0;
  display: flex;
  flex-wrap: wrap;
  width: 100%;
}
@media (max-width: 766px) {
  .course-intro .details {
    font-size: var(--t6);
  }
}
@media (min-width: 767px) {
  .course-intro .details {
    margin: 1.45rem 0;
  }
}
.course-intro .details p {
  padding-right: 1.45rem;
  margin-top: 0;
  width: calc(100% * (1/3) - 1px);
  margin-bottom: 0.725rem;
}
@media (max-width: 766px) {
  .course-intro .details p {
    margin-bottom: 1.45rem;
    width: calc(100% * (1/2) - 1px);
  }
}
.course-intro .details p small {
  color: #969696;
  display: inline-block;
  text-transform: uppercase;
  display: block;
  margin-bottom: 0.5rem;
}

.download-pdf {
  margin: 0;
}
.download-pdf svg {
  height: 0.6rem;
  margin-right: 5px;
}
.download-pdf:hover svg * {
  stroke: #fff;
}
@media (max-width: 766px) {
  .course-intro-info .course-actions{
    display:block!important;
  }
  .course-intro-info .course-actions .btn{
    display:block;
    margin-bottom:-1px;
    margin-right:0px;
    margin-left:0px;
  }
  .download-pdf {
    display: block;
  }
}

.course-navigation {
  position: relative;
  z-index: 2 !important;
  background: #fff;
  border-bottom: 1px solid;
  border-top: 1px solid;
  margin: 0 !important;
}
.course-navigation a:not(.btn) {
  position: relative;
}
.course-navigation a:not(.btn):after {
  content: " ";
  display: block;
  background: #000;
  height: 4px;
  width: 100%;
  left: 0;
  bottom: 0px;
  position: absolute;
  opacity: 0;
  transition: opacity 0.2s cubic-bezier(0.015, 0.445, 0.305, 0.99);
}
.course-navigation a:not(.btn).active:after {
  opacity: 1;
}
.course-navigation .swiper-wrapper {
  height: auto !important;
}
.course-navigation ul {
  margin: 0 !important;
  padding-left: 0 !important;
  text-transform: uppercase;
  display: flex;
  align-items: center;
}
.course-navigation ul li {
  display: inline-block;
  flex-grow: 1;
  text-align: center;
}
.course-navigation ul li a {
  color: #000;
  display: inline-block;
  white-space: nowrap;
  padding: 16px 20px;
  text-decoration: none;
  transition: all 0.2s cubic-bezier(0.015, 0.445, 0.305, 0.99);
  width: 100%;
}
@media (max-width: 766px) {
  .course-navigation ul li a {
    padding-left: 20px;
    padding-right: 20px;
  }
}
.course-navigation ul li a:hover {
  background-color: rgba(199, 212, 224, 0.2);
}
.course-navigation .btn {
  margin: 0;
  padding-left: 2em;
  padding-right: 2em;
  width: 100%;
  border: none;
  border-right: 1px solid #fff;
}
.course-navigation .btn:hover {
  background: #ddd;
}

.course-image {
  height: 100%;
}
.course-image img {
  display: block;
  object-fit: cover;
  height: 100%;
  width: 100%;
}

.course-content .course-image {
  margin-bottom: 4.35rem;
}
.course-content .course-image img {
  min-height: 36vh;
}
.course-content ul {
  list-style: disc;
  padding-right: 40px;
}
.course-content ol {
  list-style: decimal;
  padding-right: 40px;
}
.course-content .section-text {
  margin-bottom: 2.9rem;
}
.course-content .section-text > *:last-child {
  margin-bottom: 0;
}
.course-content .section-grid .grid {
  margin-bottom: -1.45rem;
}

.page-content ul {
  list-style: disc;
  padding-left: 1.2rem;
}
@media (max-width: 766px) {
  .page-content ul {
    padding-left: 20px;
  }
}
.page-content ol {
  list-style: decimal;
  padding-left: 40px;
}
.page-content > figure img {
  background: #dedede;
  max-width: 100%;
  margin: 0 auto;
  display: block;
}
.page-content .section-text:first-child {
  margin-top: 4.35rem;
}
.page-content .section-text:last-child {
  margin-bottom: 4.35rem;
}
.page-content .section-text p > img {
  max-height: 100vmin;
  display: block;
  width: auto;
  max-width: 100%;
  height: auto;
  margin: 0 auto;
}
.page-content .section-text.two-columns {
  display: flex;
  flex-wrap: wrap;
  margin: 0;
  margin-bottom: 80px;
  overflow: auto;
  padding: 0;
  width: 100%;
}
@media (max-width: 766px) {
  .page-content .section-text.two-columns {
    border-left: 1px solid #556069;
    border-right: 1px solid #556069;
    margin: 0 auto;
    margin-bottom: 40px;
    width: 100%;
  }
}
.page-content .section-text.two-columns .column {
  border: 1px solid #556069;
  float: left;
  padding: 40px;
  width: 50%;
}
@media (max-width: 766px) {
  .page-content .section-text.two-columns .column {
    border-left: none;
    border-right: none;
    padding: 20px;
    width: 100%;
  }
  .page-content .section-text.two-columns .column:first-of-type {
    border-bottom: none;
  }
}
.page-content .section-text.two-columns .column:first-of-type {
  border-right: none;
}
.page-content .section-text.two-columns .column > *:last-child {
  margin-bottom: 0;
}
.page-content > div:first-child {
  margin-top: 4.35rem;
}
.page-content > *:last-child:not(.section-text):not(.section-grid) {
  margin-bottom: 0;
}

.breadcrumbs {
  color: #aaa;
  font-size: var(--t7);
}
.breadcrumbs a {
  text-decoration: none;
}

.accordion .accordion-title {
  font-weight: 600;
  padding: 0 5px;
}
.accordion .accordion-row {
  border-top: 1px solid #000;
}
.accordion .accordion-row:last-child {
  border-bottom: 1px solid #000;
}
.accordion .accordion-row .top {
  text-transform: uppercase;
  position: relative;
  cursor: pointer;
  padding: 0.725rem 0.3625rem 0.725rem;
  padding-right: 2.5rem;
  user-select: none;
  transition: all 0.3s;
}
.accordion .accordion-row .top:hover {
  background-color: rgba(199, 212, 224, 0.2);
}
@media (max-width: 766px) {
  .accordion .accordion-row .top {
    background-position: center right 10px;
  }
  .accordion .accordion-row .top:hover {
    background-color: transparent;
  }
}
.accordion .accordion-row .top:before {
  content: " ";
  position: absolute;
  right: 1rem;
  top: 1.3em;
  height: 2px;
  background: #000;
  width: 20px;
  transform: translateX(calc(50% - 1px));
}
.accordion .accordion-row .top:after {
  content: " ";
  position: absolute;
  right: 1rem;
  top: 1.3em;
  height: 20px;
  background: #000;
  width: 2px;
  transform: translateY(calc(-50% + 1px));
}
.accordion .accordion-row .content {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.2s cubic-bezier(0.015, 0.445, 0.305, 0.99);
}
.accordion .accordion-row .content .inner {
  padding: 0 0 1.45rem;
}
.accordion .accordion-row .content .inner p, .accordion .accordion-row .content .inner ul {
  margin-top: 0;
}
@media (max-width: 766px) {
  .accordion .accordion-row .content .inner {
    padding: 20px 0;
  }
}
.accordion .accordion-row .content .inner > *:last-child {
  margin-bottom: 0;
}
.accordion .accordion-row.expanded .top:after {
  content: " ";
  position: absolute;
  right: 0.8rem;
  top: 1.3em;
  height: 0;
  background: #000;
  width: 2px;
  transform: translateY(calc(-50% + 1px));
}
.accordion .accordion-row.expanded .content {
  transition: max-height 2s cubic-bezier(0.015, 0.445, 0.305, 0.99);
  max-height: 1500px;
}

.swiper-container {
  width: 100%;
  overflow: visible;
  margin-top: 2.9rem;
  margin-bottom: 4.35rem;
}
.swiper-container:not(.articles) .swiper-slide {
  align-self: center;
  width: auto;
}
.swiper-container .embed-container {
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden;
  max-width: 100%;
}
.swiper-container .embed-container iframe,
.swiper-container .embed-container object,
.swiper-container .embed-container embed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.swiper-container .swiper-slide-video {
  width: 100% !important;
}
.swiper-container .swiper-wrapper .swiper-slide {
  height: 100%;
}
.swiper-container .swiper-wrapper .swiper-slide figure {
  height: 100%;
}
.swiper-container .swiper-wrapper .swiper-slide figure img {
  font-family: "object-fit: contain;";
  height: 100%;
  object-fit: contain;
}
.swiper-container.hero-slideshow .swiper-pagination {
  bottom: 1rem;
}
@media (max-width: 766px) {
  .swiper-container.hero-slideshow .swiper-pagination {
    display: none;
  }
}
.swiper-container .swiper-navigation {
  position: absolute;
  text-align: right;
  width: 100%;
  z-index: 1;
  margin-top: 0.725rem;
  font-size: var(--t4);
}
.swiper-container .swiper-navigation .swiper-button-prev,
.swiper-container .swiper-navigation .swiper-button-next {
  background-image: none;
  display: inline-block;
  position: relative;
  vertical-align: middle;
  height: auto;
  width: auto;
  left: auto;
}
.swiper-container .swiper-navigation .swiper-button-prev:before {
  content: "←";
}
.swiper-container .swiper-navigation .swiper-button-next {
  margin-left: 1em;
  right: 0;
}
.swiper-container .swiper-navigation .swiper-button-next:before {
  content: "→";
}
.swiper-container .swiper-pagination {
  bottom: -1rem;
}
.swiper-container .swiper-pagination.swiper-pagination-fraction {
  position: absolute;
  text-align: left;
  width: 100%;
  z-index: 1;
  font-size: var(--t5);
  bottom: auto;
  margin-top: 0.725rem;
  padding-top: 3px;
}
.swiper-container .swiper-pagination .swiper-pagination-bullet {
  background-color: transparent;
  border: 1px solid #000;
  height: 1rem;
  width: 3rem;
  margin: 0 0.5rem;
  opacity: 1;
  outline: none;
  border-radius: 0;
}
.swiper-container .swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
  background-color: #000;
}
.swiper-container.general-page {
  margin-bottom: 5.8rem;
  margin-top: 0;
}
.swiper-container.general-page img {
  height: 70vmin !important;
  max-width: 100%;
}
.swiper-container.articles {
  margin-top: 0;
  margin-bottom: 0;
}
.swiper-container.articles .swiper-wrapper .swiper-slide {
  align-self: flex-start;
}
.swiper-container.articles .swiper-wrapper .swiper-slide figure img {
  font-family: "object-fit: cover;";
  object-fit: cover;
}
.swiper-container.hero-slideshow {
  margin: 0;
}

.grid {
  display: flex;
  flex-wrap: wrap;
  overflow: auto;
  width: 100%;
}
.grid .grid-item {
  float: left;
  margin-bottom: 1.45rem;
  padding-right: 1.45rem;
  width: calc(100%/3);
}
@media (max-width: 1023px) {
  .grid .grid-item {
    width: calc(100%/2);
  }
}
@media (max-width: 766px) {
  .grid .grid-item {
    margin-bottom: 1.45rem;
    width: 100%;
  }
}
.grid .grid-item h3 {
  font-weight: 400;
  margin: 0;
  transition: all 0.2s cubic-bezier(0.015, 0.445, 0.305, 0.99);
}
.grid .grid-item > p {
  color: #969696;
  margin: 0;
  word-break: break-word;
}
.grid .grid-item.open-lightbox {
  transition: opacity 0.2s cubic-bezier(0.015, 0.445, 0.305, 0.99);
}
.grid .grid-item.open-lightbox:hover {
  opacity: 0.6;
  cursor: pointer;
}
.grid .grid-item.open-lightbox:hover h3 {
  color: #666;
}

.btn-blink {
  background: black;
  background: linear-gradient(320deg, black 25%, #515151 50%, black 75%);
  animation-name: btnBlink;
  animation-duration: 6s;
  animation-delay: 2s;
  background-size: 400%;
  animation-iteration-count: infinite;
  transition: 0.2s cubic-bezier(0.015, 0.445, 0.305, 0.99);
}

@keyframes btnBlink {
  0% {
    background-position: 0;
  }
  90% {
    background-position: 0;
  }
  100% {
    background-position: 100%;
  }
}
.border-container {
  padding-top: 4.35rem;
  border-top: 1px solid #000;
  padding-bottom: 1.45rem;
}

.team {
  display: flex;
  flex-wrap: wrap;
  overflow: auto;
}
.team .team-item {
  float: left;
  margin-bottom: 2.9rem;
  overflow: auto;
  width: 50%;
}
@media (max-width: 1023px) {
  .team .team-item {
    float: none;
    width: 100%;
  }
}
.team .team-item figure {
  float: left;
  height: 160px;
  width: 120px;
}
@media (max-width: 766px) {
  .team .team-item figure {
    height: 0;
    padding-bottom: 60%;
    position: relative;
    width: 100%;
  }
}
.team .team-item figure img {
  font-family: "object-fit: cover;";
  height: 100%;
  object-fit: cover;
  width: 100%;
}
@media (max-width: 766px) {
  .team .team-item figure img {
    left: 0;
    position: absolute;
    top: 0;
  }
}
.team .team-item .text {
  float: left;
  padding-left: 20px;
  padding-right: 40px;
  width: calc(100% - 120px);
}
@media (max-width: 766px) {
  .team .team-item .text {
    margin-top: 20px;
    padding-left: 0;
    padding-right: 0;
    width: 100%;
  }
}
.team .team-item .text h3 {
  margin: 0;
}
.team .team-item .text p {
  margin: 0;
}
.team .team-item .text p.label {
  color: #969696;
  margin-bottom: 20px;
}
@media (max-width: 766px) {
  .contacts-page {
    margin-top: 120px;
  }
}
.contacts-page .wpcf7-form-control-wrap {
  display: block;
}
.contacts-page .wpcf7-form-control-wrap.optin, .contacts-page .wpcf7-form-control-wrap[data-name="optin"] {
  display: inline-block;
  top: -5px;
}
.contacts-page .wpcf7-not-valid-tip {
  margin-bottom: 15px;
  margin-top: 5px;
}
.contacts-page label {
  color: #969696;
  margin: 1.25rem 0 0;
  display: block;
}
.contacts-page select {
  width: 100%;
}
.contacts-page [type=submit] {
  margin-top: 0px;
}
.contacts-page small {
  vertical-align: top;
  display: inline-block;
}

.search-results {
  margin-bottom: 5rem !important;
  min-height: 30vh;
}
@media (max-width: 766px) {
  .search-results {
    margin-bottom: 40px;
  }
}
.search-results .pagination-list {
  margin-bottom: 0;
  margin-top: 80px;
}
.search-results .search-result-item {
  display: inline-block;
  text-decoration: none;
  transition: all 0.2s cubic-bezier(0.015, 0.445, 0.305, 0.99);
  width: 100%;
  border-top: 1px solid;
  margin: 1rem 0;
  padding: 0.5rem 0;
}
.search-results .search-result-item small {
  display: inline-block;
  font-size: var(--t7);
  margin-top: 0;
}
.search-results .search-result-item:last-of-type {
  margin-bottom: 0;
}

.pagination-list {
  font-weight: 600;
  margin: 40px 0;
  text-align: center;
}
.pagination-list li {
  display: inline-block;
}
.pagination-list li a {
  padding: 0 10px;
  text-decoration: none;
  transition: all 0.2s cubic-bezier(0.015, 0.445, 0.305, 0.99);
}
.pagination-list li a.current {
  color: #666;
  cursor: default;
}

.back-to-top {
  bottom: 40px;
  color: #000;
  display: none;
  height: 40px;
  position: fixed;
  right: 30px;
  text-align: center;
  text-decoration: none;
  width: 40px;
  z-index: 15;
}
@media (max-width: 766px) {
  .back-to-top {
    bottom: 10px;
    right: 10px;
  }
}

@media (min-width: 767px) {
  .courses-container + footer {
    margin-top: -4rem;
  }
}

footer {
  background-color: #000;
  color: #fff;
  position: relative;
}
footer .signature {
  line-height: 1.45rem;
  text-align: right;
}
footer .signature img {
  height: 0.5rem;
}
@media (max-width: 766px) {
  footer .signature {
    text-align: center;
    margin-top: 0.5rem;
  }
}
footer .logo {
  margin-top: 1.45rem;
  margin-bottom: 0;
}
@media (max-width: 766px) {
  footer .logo {
    position: absolute;
    margin-top: 0;
  }
}
footer a {
  color: #fff;
}
footer a:hover {
  opacity: 0.5;
  color: #fff;
}
footer p {
  margin-bottom: 1.45rem;
}
@media (max-width: 766px) {
  footer p {
    margin-top: 0;
  }
}
footer h6 {
  opacity: 0.5;
  margin-top: 1.45rem;
}
@media (max-width: 766px) {
  footer h6 {
    margin-top: 0;
  }
}
footer svg, footer img {
  margin-bottom: 1.45rem;
  margin-right: 1.45rem;
  vertical-align: middle;
}
footer .row {
  border-bottom: 1px solid #fff;
  padding-bottom: 1.45rem;
  padding-top: 1.45rem;
}
@media (max-width: 766px) {
  footer .row {
    padding-bottom: 1.45rem;
    padding-top: 2.9rem;
  }
}
footer .follow {
  padding-bottom: 1.45rem;
  padding-top: 1.45rem;
  display: flex;
  align-items: center;
}
@media (max-width: 766px) {
  footer .follow {
    flex-wrap: wrap;
    padding-top: 2.9rem;
  }
}
footer .follow .outline {
  -webkit-text-stroke: 1px #fff;
}
footer .follow h2 {
  margin: 0;
}
footer .follow img {
  height: 2rem;
  margin-right: 1rem;
}
@media (max-width: 766px) {
  footer .follow img {
    height: 2.3rem;
    margin-right: 1rem;
    margin-bottom: 1rem;
  }
}
footer .social-links {
  display: block;
  margin: 0;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
}
@media (max-width: 766px) {
  footer .social-links {
    margin-top: 1.45rem;
  }
}
footer .social-links li {
  display: inline-block;
  padding: 0.5em 0;
}
@media (max-width: 766px) {
  footer .social-links li {
    padding: 0;
  }
}
footer .social-links li a {
  display: inline-block;
}
footer .contact {
  opacity: 0.5;
}
footer .contact a {
  text-decoration: none;
}
@media (max-width: 766px) {
  footer .contact {
    margin-top: 0;
    margin-left: 50%;
  }
}
footer ul a {
  color: #fff;
  text-decoration: none;
}
footer .partners {
  overflow: auto;
}
footer .partners a {
  display: inline-block;
  text-decoration: none;
  vertical-align: middle;
}
footer .footer-bottom {
  opacity: 0.5;
  border-bottom: none;
  padding-bottom: 1.45rem;
  padding-top: 0;
}
@media (max-width: 766px) {
  footer .footer-bottom {
    padding-top: 1.45rem;
    text-align: center;
  }
}
footer .footer-bottom p {
  margin-bottom: 0;
}
footer .footer-bottom a {
  text-decoration: none;
}

#cookieChoiceInfo {
  padding: 0.5rem !important;
  font-size: 0.8rem;
}
#cookieChoiceInfo > div {
  padding-right: 0 !important;
}
@media (max-width: 766px) {
  #cookieChoiceInfo span {
    display: block;
  }
}

#cookieChoiceDismissIcon {
  display: none !important;
}

.portal-link svg {
  margin: -3px 10px 0 0 !important;
}
.portal-link:hover {
  opacity: 1;
}
.portal-link:hover svg * {
  stroke: #fff;
}
.portal-link span {
  display: inline-block;
  vertical-align: middle;
  margin-right: 2px;
  line-height: 1;
}

.lightbox {
  background-color: rgba(255, 255, 255, 0.9);
  display: none;
  height: 100vh;
  justify-content: center;
  left: 0;
  overflow-y: auto;
  position: fixed;
  top: 0;
  width: 100vw;
  z-index: 20;
  -webkit-overflow-scrolling: touch;
}
.lightbox.open {
  display: flex;
}
.lightbox h2 {
  margin: 0;
  padding-right: 80px;
}
.lightbox h3 {
  margin: 0;
  margin-bottom: 0;
  margin-top: 2.9rem;
}
.lightbox label {
  color: #969696;
  display: inline-block;
  position: relative;
  z-index: 1;
  margin-top: 40px;
  width: 100%;
}
.lightbox .wpcf7-form-control-wrap.optin {
  display: inline-block;
  margin-top: -5px;
  vertical-align: middle;
}
.lightbox input[type=submit] {
  margin-top: 0px;
}
.lightbox .inner {
  max-width: 767px;
  width: 100%;
}
.lightbox .inner .lightbox-content {
  background-color: #fff;
  border: 1px solid #000;
  margin: 2.9rem 0;
  padding: 2.9rem 1.45rem;
  position: relative;
}
@media (max-width: 766px) {
  .lightbox .inner .lightbox-content {
    margin: 1.45rem;
    min-height: calc(100vh - $spacer-2);
    padding: 1.45rem;
  }
}
.lightbox .inner .lightbox-content .close {
  background-image: url(../img/icon-close.svg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  height: 32px;
  position: absolute;
  right: 32px;
  top: 32px;
  width: 32px;
  z-index: 1;
  transition: opacity 0.2s cubic-bezier(0.015, 0.445, 0.305, 0.99);
}
@media (max-width: 766px) {
  .lightbox .inner .lightbox-content .close {
    right: 20px;
    top: 20px;
  }
}
.lightbox .inner .lightbox-content .close:hover {
  opacity: 0.5;
}
.lightbox .inner .lightbox-content .content > *:last-child {
  margin-bottom: 0;
}

#tinymce.page-content {
  padding: 40px !important;
  padding-bottom: 0 !important;
}

.wpcf7-response-output {
  background-color: #f5f5f5;
  border: none !important;
  float: left;
  margin: 0 !important;
  margin-top: 40px !important;
  padding: 0 15px !important;
  width: 100%;
}

.wpcf7-not-valid-tip {
  color: #e8bf32 !important;
  float: left;
  margin-top: 10px;
  width: 100%;
}

.lightbox .wpcf7-response-output {
  padding: 0 20px !important;
  text-align: center;
  width: 100%;
}

input[type=text]#curso {
  display: none;
}

body.ie .outline {
  color: #fff;
  text-shadow: -1px -1px 0 #000, 1px -1px 0 #000, -1px 1px 0 #000, 1px 1px 0 #000;
}
body.ie .video-section .text-wrapper .title {
  color: #fff;
  text-shadow: -1px -1px 0 #000, 1px -1px 0 #000, -1px 1px 0 #000, 1px 1px 0 #000;
}
body.ie .certifications .certification-item .title .duration {
  color: #fff;
  text-shadow: -1px -1px 0 #000, 1px -1px 0 #000, -1px 1px 0 #000, 1px 1px 0 #000;
}
body.ie .certifications .certification-item:hover .title .duration {
  color: #fff;
  text-shadow: -1px -1px 0 #000, 1px -1px 0 #000, -1px 1px 0 #000, 1px 1px 0 #000;
}
body.ie .course-intro .subtitle {
  color: #fff;
  text-shadow: -1px -1px 0 #000, 1px -1px 0 #000, -1px 1px 0 #000, 1px 1px 0 #000;
}
body.ie .footer .section-title {
  color: #1A2127;
  text-shadow: -1px -1px 0 #000, 1px -1px 0 #000, -1px 1px 0 #000, 1px 1px 0 #000;
}

.fadein {
  animation: fade_in 2s forwards;
}

@keyframes fade_in {
  0% {
    opacity: 0;
    transform: translateX(-20px);
  }
  40% {
    opacity: 0;
    transform: translateX(-20px);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}
.iframe-wrapper {
  height: 0;
  padding-bottom: 56.4%;
  position: relative;
  width: 100%;
}
.iframe-wrapper iframe {
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}

.grecaptcha-badge {
  display: none !important;
}

.view-all {
  margin-bottom: 2.9rem;
}

.swiper-pagination.pagination-margin {
  position: relative !important;
  margin-bottom: 2.9rem;
}

nav ul li {
  margin-left: 1.9rem;
}
@media (max-width: 766px) {
  nav ul li {
    margin-left: 0;
  }
}
@media (max-width: 1479px) {
  nav .logo-desc {
    display: none !important;
  }
}

footer .search-container {
  box-shadow: none;
  position: relative;
}
footer .search-container form {
  border-bottom: 1px solid #fff;
}
footer .search-container form input[type=text] {
  color: #ededed;
  font-size: 1rem;
  height: 50px;
}
footer .search-container form input[type=text]::placeholder {
  color: #ededed;
  opacity: 0.5;
}
footer .search-container form input[type=submit] {
  appearance: none;
  -webkit-appearance: none;
  background-color: transparent;
  border: none;
  border-radius: 0;
  color: #fff;
  cursor: pointer;
  display: inline-block;
  position: absolute;
  right: 0;
  font-size: var(--t4);
  opacity: 1;
  font-family: "Mabry Pro", Helvetica, Arial, sans-serif;
  height: 50px;
  outline: none;
  line-height: 0;
}

.article-item .title.small, .article-item .course-intro .title.details, .course-intro .article-item .title.details, .article-item .title.optin {
  color: #969696;
  text-transform: uppercase;
  line-height: 1.5 !important;
}

.field-portfolio {
  background-color: #fff;
  border: 1px solid #000;
  overflow: hidden;
  position: relative;
  text-decoration: none;
  transition: all 0.2s cubic-bezier(0.015, 0.445, 0.305, 0.99);
  display: flex;
  align-items: center;
}
.field-portfolio:after {
  content: "";
  display: inline-block;
}
.field-portfolio .title {
  color: #000;
  padding-right: 0.3em;
  position: relative;
  text-transform: uppercase;
  z-index: 1;
}
.field-portfolio span {
  width: 100%;
  justify-content: flex-end;
  display: flex;
}
.field-portfolio select {
  width: 100%;
  justify-content: flex-end;
  display: flex;
  padding-left: 0;
  border: none;
  height: 100%;
  background-position: right 0 center;
  text-transform: uppercase;
  color: #969696;
}

.all-courses .lightbox {
  background-color: rgba(255, 255, 255, 0.3);
}
.all-courses .courses {
  background-color: #fff;
}
.all-courses .courses:before {
  background-color: #fff;
  border-top: 1px solid #000;
}
.all-courses .courses:after {
  background-color: #fff;
  border-bottom: 1px solid #000;
}
.all-courses .details {
  padding: 2rem 4rem;
}
@media (max-width: 766px) {
  .all-courses .details {
    padding: 1.45rem 2rem;
  }
}
.all-courses h2 {
  margin: 1.45rem 0;
}
.all-courses .course-item {
  border: none;
  border-top: 1px solid;
  margin-left: -2px;
  margin-bottom: 0;
  margin-top: 0px;
}
@media (max-width: 766px) {
  .all-courses .course-item {
    min-height: 50vw;
  }
}
.all-courses .course-item figure {
  opacity: 1;
}
@media (max-width: 766px) {
  .all-courses .course-item figure {
    display: block;
  }
}
.all-courses .buttons {
  display: flex;
  margin-left: 2px;
}
@media (max-width: 766px) {
  .all-courses .buttons {
    margin-left: 0;
  }
}
.all-courses .buttons > a:nth-child(2n) {
  margin-left: -1px;
}
.all-courses .btn:hover {
  border-color: #000;
}

.course-intro-info .details p {
  width: 100%;
  padding-right: 0;
}
.course-intro-info .subtitle {
  margin-bottom: 1.45rem;
}
.course-intro-info .view-all {
  margin-right: 0;
}
.course-intro-info .course-actions {
  display: flex;
}
.course-intro-info .course-actions > a {
  margin-left: -1px;
}
.course-intro-info .course-actions > a:first-child {
  margin-left: 0;
}

.portfolio-single .details {
  display: flex;
  flex-direction: column;
}
.portfolio-single .details p {
  margin-top: 1rem;
}

.hero-home .inner {
  margin-top: 4.5rem;
  padding-left: 2rem;
}
@media (max-width: 766px) {
  .hero-home .inner {
    padding-left: 0;
  }
}
.hero-home h2, .hero-home p {
  color: #000 !important;
}
.hero-home .btn {
  background-color: transparent;
  color: #000;
}
.hero-home .details {
  margin-top: 2rem;
}
@media (max-width: 766px) {
  .hero-home .details {
    display: none;
  }
}
.hero-home .banner-btn {
  margin-top: 1.45rem;
  width: fit-content;
  width: -webkit-fit-content;
  width: -moz-fit-content;
}

.homepage-courses .field-item {
  border: none;
}
.homepage-courses .field-item:hover h2 {
  -webkit-text-stroke: 1px #fff;
}
.homepage-courses h2 {
  margin-top: 1.45rem;
}

.swiper-container.general-page .swiper-slide {
  align-self: flex-start;
}
.swiper-container.general-page .swiper-slide img {
  height: 50vmin !important;
  max-width: 100vh !important;
}

@media (max-width: 766px) {
  .course-section.section-slideshow .swiper-slide {
    height: auto;
    width: 100%;
    max-width: 100vw;
  }
  .course-section.section-slideshow .swiper-slide img {
    height: 100% !important;
    max-height: 60vmin !important;
    width: 100%;
    max-width: 100vh !important;
  }
  .course-section.section-slideshow .swiper-slide iframe {
    width: 100%;
  }
}

.send_wrapper{
  position: relative;
}

@keyframes spin {
	from { transform: rotate(0deg);	}
	to { transform: rotate(360deg);	}
}

.send_wrapper .custom-spinner{
  position: absolute;
  left: 10px;
  top: 50%;
  margin: 0;
  transform: translateY(-50%) scale(1.2);
  display: inline-block;
  background-color: #23282d;
  opacity: 0;
  width: 24px;
  height: 24px;
  border: none;
  border-radius: 100%;
  padding: 0;
  display: none;
}

.send_wrapper .custom-spinner::before{
  content: '';
    position: absolute;
    background-color: #fbfbfc;
    top: 4px;
    left: 4px;
    width: 6px;
    height: 6px;
    border: none;
    border-radius: 100%;
    transform-origin: 8px 8px;
    animation-name: spin;
    animation-duration: 1000ms;
    animation-timing-function: linear;
    animation-iteration-count: infinite;
}

.send_wrapper .custom-spinner.active{
  opacity:.75;
  display:block;
}

.wpcf7-spinner{
  display:none
}

.send_wrapper .wpcf7-submit{
  width:180px;
}

.wpcf7-submit.sending{
  cursor:wait;
  pointer-events:none;
  opacity: .5;
}

form .checkbox{
  vertical-align:baseline
}