/*! Equal Access > 20180701 ---------------- */

:root {

 --contain: 1170; --sx: 60px; --sy: 20px; --s1: 30px; --s2: 50px; --s3: 70px; --s4: 100px; --s5: 140px;
 --nx: calc(var(--sx) * -1); --ny: calc(var(--sy) * -1);
 --vws: 1px;

 --ff_1: Averta,Helvetica Neue,Arial,sans-serif;
 --ff_2: Averta,Helvetica Neue,Arial,sans-serif;

 --c_d1: #034369; --c_d1x: #035d91; /* default: gray, text */
 --c_i1: #ffffff; /* inverted: white, text */
 --c_a1: #ad3b01; --c_a1x: #db4b01; /* accent: red, links */
 --c_a2: #faaf22; /* accent: yellow */
 --c_a3: #57c1e9; /* accent: blue */
 --c_a4: #daeefa; /* accent: light blue */
 --c_b1: #eeeeee; /* background: gray, separators */
 --c_b2: #dddddd; /* backgrounds: gray, fields */
 --c_p1: #b8c2cc; /* placeholder: light default */
 --c_e1: #EF4242; /* error: red, fields */

 --xw_1: 1440px;
 --xw_2: 1170px;
 --xw_3:  970px;
 --xw_4:  670px;

}

@media screen and (max-width: 1279px) { :root { --sx: 40px; --vws: calc((100vw - 320px) / (1280 - 320)); } }
@media screen and (max-width: 1023px) { :root { --sx: 30px; --s1: 30px; --s2: 40px; --s3: 50px; --s4: 70px; --s5: 100px; } }
@media screen and (max-width:  719px) { :root { --sx: 20px; --s1: 20px; --s2: 30px; --s3: 40px; --s4: 55px; --s5: 70px; } }
@media screen and (max-width:  319px) { :root { --vws: 0px; } }

@font-face { font-family: 'Tex Gyre Termes'; font-weight: 400; font-style: normal; src:url('../fonts/texgyretermes/texgyretermes-400.woff2') format('woff2'), url('../fonts/texgyretermes/texgyretermes-400.woff') format('woff'), url('../fonts/texgyretermes/texgyretermes-400.otf') format('opentype'), url('../fonts/texgyretermes/texgyretermes-400.ttf') format('truetype'); }
@font-face { font-family: 'Tex Gyre Termes'; font-weight: 400; font-style: italic; src:url('../fonts/texgyretermes/texgyretermes-400i.woff2') format('woff2'), url('../fonts/texgyretermes/texgyretermes-400i.woff') format('woff'), url('../fonts/texgyretermes/texgyretermes-400i.otf') format('opentype'), url('../fonts/texgyretermes/texgyretermes-400i.ttf') format('truetype'); }
@font-face { font-family: 'Tex Gyre Termes'; font-weight: 700; font-style: normal; src:url('../fonts/texgyretermes/texgyretermes-700.woff2') format('woff2'), url('../fonts/texgyretermes/texgyretermes-700.woff') format('woff'), url('../fonts/texgyretermes/texgyretermes-700.otf') format('opentype'), url('../fonts/texgyretermes/texgyretermes-700.ttf') format('truetype'); }
@font-face { font-family: 'Averta'; font-weight: 300; font-style: normal; src:url('../fonts/averta/averta-300.woff2') format('woff2'), url('../fonts/averta/averta-300.woff') format('woff'), url('../fonts/averta/averta-300.otf') format('opentype'), url('../fonts/averta/averta-300.ttf') format('truetype'); }
@font-face { font-family: 'Averta'; font-weight: 400; font-style: normal; src:url('../fonts/averta/averta-400.woff2') format('woff2'), url('../fonts/averta/averta-400.woff') format('woff'), url('../fonts/averta/averta-400.otf') format('opentype'), url('../fonts/averta/averta-400.ttf') format('truetype'); }
@font-face { font-family: 'Averta'; font-weight: 400; font-style: italic; src:url('../fonts/averta/averta-400i.woff2') format('woff2'), url('../fonts/averta/averta-400i.woff') format('woff'), url('../fonts/averta/averta-400i.otf') format('opentype'), url('../fonts/averta/averta-400i.ttf') format('truetype'); }
@font-face { font-family: 'Averta'; font-weight: 700; font-style: normal; src:url('../fonts/averta/averta-700.woff2') format('woff2'), url('../fonts/averta/averta-700.woff') format('woff'), url('../fonts/averta/averta-700.otf') format('opentype'), url('../fonts/averta/averta-700.ttf') format('truetype'); }
@font-face { font-family: 'Averta'; font-weight: 700; font-style: italic; src:url('../fonts/averta/averta-700i.woff2') format('woff2'), url('../fonts/averta/averta-700i.woff') format('woff'), url('../fonts/averta/averta-700i.otf') format('opentype'), url('../fonts/averta/averta-700i.ttf') format('truetype'); }
@font-face { font-family: 'Icons'; font-weight: normal; font-style: normal; src: url('../fonts/icomoon/fonts/icomoon.ttf?z8888v') format('truetype'), url('../fonts/icomoon/fonts/icomoon.woff?z8888v') format('woff'), url('../fonts/icomoon/fonts/icomoon.svg?z8888v#icomoon') format('svg'); }

/*   ______  _______ _______ _______
 *   |_____] |_____| |______ |______
 *   |_____] |     | ______| |______
*/

.root1 { position: relative; width: 100%; min-width: 320px; margin: 0; padding: 0; }
 .root1, .root1 *, .root1 *:before, .root1 *:after { box-sizing: border-box; }
 .root1-wrap { margin: 0; }

@media screen {
 .-contain { max-width: 1210px; max-width: calc(var(--contain) * 1px + 2 * var(--sx)); margin-left: auto; margin-right: auto; border-left: 20px solid transparent; border-right: 20px solid transparent; border-left-width: var(--sx); border-right-width: var(--sx); }
 .-decontain { margin-left: calc(50% - var(--vw, 1vw) * 50); margin-right: calc(50% - var(--vw, 1vw) * 50); }
 .-recontain { margin-left: calc(50% - var(--vw, 1vw) * 50); margin-right: calc(50% - var(--vw, 1vw) * 50); padding-left: calc(var(--vw, 1vw) * 50 - 50%); padding-right: calc(var(--vw, 1vw) * 50 - 50%); }
}

/* grid */

[grid] { --gap: var(--s1); display: flex; flex-wrap: wrap; margin-top: -40px; margin-left: -20px; margin-right: -20px; margin-top: calc(var(--row-gap,var(--gap)) * -1); margin-left: calc(var(--gap) / -2); margin-right: calc(var(--gap) / -2); padding: 0; pointer-events: none; }
[grid~="inline"] { display: inline-flex; }
 [grid] > * { width: var(--column, auto); min-width: 0; margin-bottom: 0; border: 1px solid transparent; border-width: 40px 20px 0; border-width: var(--row-gap,var(--gap)) calc(var(--gap) / 2) 0; background-clip: padding-box; pointer-events: auto; }
  [grid] > li:before { display: none; }

[width="-"]{width:100%;height:0;margin:0;border-width:0}[width^="16/"]{width:16.666%}[width^="20/"]{width:19.999%}[width^="25/"]{width:24.999%}[width^="33/"]{width:33.333%}[width^="40/"]{width:39.999%}[width^="50/"]{width:49.999%}[width^="60/"]{width:59.999%}[width^="66/"],[width^="67/"]{width:66.666%}[width^="75/"]{width:74.999%}[width^="80/"]{width:74.999%}[width^="99/"],[width^="100/"]{width:100%}
@media screen and (max-width: 1279px){[width*="/a/"]{width:auto}[width*="/16/"]{width:16.666%}[width*="/20/"]{width:19.999%}[width*="/25/"]{width:24.999%}[width*="/33/"]{width:33.333%}[width*="/40/"]{width:39.999%}[width*="/50/"]{width:49.999%}[width*="/60/"]{width:59.999%}[width*="/66/"],[width*="/67/"]{width:66.666%}[width*="/75/"]{width:74.999%}[width*="/80/"]{width:79.999%}[width*="/100/"]{width:100%}}
@media screen and (max-width: 719px) {[width$="/a"]{width:auto}[width$="/16"]{width:16.666%}[width$="/20"]{width:19.999%}[width$="/25"]{width:24.999%}[width$="/33"]{width:33.333%}[width$="/40"]{width:39.999%}[width$="/50"]{width:49.999%}[width$="/60"]{width:59.999%}[width$="/66"],[width$="/67"]{width:66.666%}[width$="/75"]{width:74.999%}[width$="/80"]{width:79.999%}[width$="/100"]{width:100%}}
@media screen and (min-width: 1280px){[width^="0/"]{display:none !important}} @media screen and (min-width: 720px) and (max-width: 1279px){[width*="/0/"]{display:none !important}} @media screen and (max-width: 719px){[width$="/0"]{display:none !important}}

/* reveal */

@media screen and (min-width: 1024px) {
.js [data-aiol], .js [data-aios] { transition-property: transform, opacity; transition-duration: 0.75s, 0.5s; }
.js .is-loading [data-aiol^="1/"], .js [data-aios^="1/"]:not(.is-aiosed) { transform: translateY(25px); opacity: 0; }
.js [data-aiol^="2/"], .js [data-aios^="2/"] { transition-duration: 1.25s; }
.js .is-loading [data-aiol^="2/"], .js [data-aios^="2/"]:not(.is-aiosed) { opacity: 0; }

[data-aiol$="/1"]{transition-delay:0.1s}[data-aiol$="/2"]{transition-delay:0.2s}[data-aiol$="/3"]{transition-delay:0.3s}[data-aiol$="/4"]{transition-delay:0.4s}[data-aiol$="/5"]{transition-delay:0.5s}[data-aiol$="/6"]{transition-delay:0.6s}[data-aiol$="/7"]{transition-delay:0.7s}[data-aiol$="/8"]{transition-delay:0.8s}[data-aiol$="/9"]{transition-delay:0.9s}[data-aiol$="/10"]{transition-delay:1.0s}
}

a:active, a:focus { outline: 0; -moz-outline-style: none; }

/*   _______  _____  ______  _     _ _      _______ _______
 *   |  |  | |     | |     \ |     | |      |______ |______
 *   |  |  | |_____| |_____/ |_____| |_____ |______ ______|
*/

/**
 * @name .accordion1
 * @description Accordion
 * @example { }
 */

.accordion1 {  }
 .accordion1-entry { margin-bottom: 5px; }
  .accordion1-title { display: flex; align-items: center; margin: 0; border-bottom: 1px solid var(--c_b2); color: inherit; font-size: 22px; font-weight: bold; text-transform: uppercase; cursor: pointer; }
   .js .accordion1-title:after { flex: none; content: '\e91b'; width: 70px; color: var(--c_a1); font: 0.72em/1 Icons; text-align: center; }
   .js .accordion1-entry.is-active .accordion1-title:after { content: '\e910'; }
   .accordion1-title > i { flex: none; width: 100px; color: var(--c_a1); font-size: 42px; line-height: 70px; text-align: center; }
   .accordion1-title > span { flex-grow: 1; }
  .accordion1-details { overflow: hidden; transition: height 0.3s ease-in-out; }
  .js .accordion1-entry:not(.is-active) .accordion1-details { height: 0 !important; }
   .accordion1-inner { padding: var(--s1) 0 30px 100px; }
    .accordion1-list { padding-left: 50px; font-size: 22px; }
     .accordion1-list li:before { margin-left: -50px; font-size: 22px; line-height: inherit; }

@media screen and (max-width: 719px) {
.accordion1-list { padding-left: 0; }
 .accordion1-list li:before { margin-left: -62px; }
}
@media screen and (max-width: 599px) {
.js .accordion1-title { padding: 12px 0; font-size: 18px; }
 .js .accordion1-title:after { width: 40px; }
 .js .accordion1-title > i { width: 60px; margin-left: -10px; font-size: 30px; line-height: 1; }
.accordion1-inner { padding-left: 0; }
 .accordion1-list { padding-left: 50px; font-size: 17px; }
  .accordion1-list li:before { margin-left: -38px; font-size: inherit; line-height: inherit; }
}

/**
 * @name .approach1
 * @description Approach animation
 * @example { }
 */

.approach1 { --size: 700; position: relative; z-index: 99; margin: 0; }
 .approach1-scene { position: relative; margin: 0; }
  .approach1-header { position: absolute; right: 50%; top: 31.5%; z-index: 2; min-width: 200px; margin: 0 calc(var(--size) * 0.575px); padding: 20px 0; border: 1px solid var(--c_a2); border-width: 1px 0; color: #fff; font: 700 22px/1.27 sans-serif; font-family: inherit; text-transform: uppercase; text-align: center; }
  .approach1-header.-right { right: auto; left: 50%; border-color: var(--c_a3); }
   .approach1-header span { display: block; }
  .approach1-sides { display: flex; position: absolute; left: 0; right: 0; top: 70px; bottom: 70px; z-index: 1; overflow: hidden; margin: 0; background: linear-gradient(to right, #af3f03, #eca135 50%, #66cbf0 50%, #07496f); }
   .approach1-sides .img1 { opacity: 0.2; }
   .approach1-sidemask { position: absolute; left: 0; right: 50%; top: 0; bottom: 0; background: #fff; opacity: 0; transform-origin: 100% 50%; }
   .approach1-sidemask.-right { left: 50%; right: 0; transform-origin: 0 50%; }
  .approach1-ripples { position: absolute; left: 50%; top: 50%; z-index: 3; width: calc(var(--size) * 1px); height: calc(var(--size) * 1px); margin: 0; transform: translate(-50%,-50%); pointer-events: none; }
   .approach1-ripple { position: absolute; left: 0; right: 0; top: 0; bottom: 0; border-radius: 50%; border: 1px solid rgba(255,255,255,0.25); }
  .approach1-circle { position: relative; z-index: 3; width: calc(var(--size) * 1px); margin: -70px auto;  }
   .approach1-svg { display: block; position: relative; }
    .approach1-svg .background { }
    .approach1-svg .pulse { fill: #fcf3e2; transform-origin: 50% 50%; }
    .approach1-svg .stripe { transform-origin: 50% 50%; }
    .approach1-svg .arrow { transform-origin: 50% 50%; }
  .approach1-center { position: absolute; left: 50%; top: 50%; z-index: 4; width: calc(var(--size) * 0.328px); margin: calc(var(--size) * 0.328px / -2) 0 0 calc(var(--size) * 0.328px / -2); border-radius: 50%; background: #011d2d; transform-origin: 50% 50%; }
   .approach1-center .img1 { opacity: 0.6; }
   .approach1-center figcaption { display: flex; justify-content: center; align-items: center; position: absolute; left: 0; top: 0; right: 0; bottom: 0; color: #fff; font: 700 15px/1.46 sans-serif; font-family: inherit; text-transform: uppercase; text-align: center; }
    .approach1-center figcaption span span { display: block; }
  .approach1-dots { position: absolute; left: 50%; top: 50%; z-index: 5; margin: 0; }
   .approach1-dot { position: absolute; left: calc(var(--l) / 700 * var(--size)); top: calc(var(--t) / 700 * var(--size)); margin: 0; transform: translateX(-50%); }
   .approach1-dot:hover { z-index: 10; }
   .approach1-dot.-s1 { --l:   55px; --t: -200px; }
   .approach1-dot.-s2 { --l:  185px; --t: -100px; }
   .approach1-dot.-s3 { --l:  180px; --t:   50px; }
   .approach1-dot.-s4 { --l:   45px; --t:  155px; }
   .approach1-dot.-s5 { --l: -135px; --t:  105px; }
   .approach1-dot.-s6 { --l: -185px; --t:  -35px; }
   .approach1-dot.-s7 { --l: -125px; --t: -165px; }
    .approach1-link { display: block; color: inherit !important; font-weight: normal; }
    .approach1-label { margin: 0; font-size: 16px; line-height: 1.25; text-align: center; }
     .approach1-label i { display: block; width: 16px; height: 16px; margin: -8px auto 5px; border-radius: 50%; background: var(--c_a3); }
     .approach1-label strong { display: block; }
      .approach1-label strong span { display: block; }
    .approach1-details { display: flex; justify-content: center; align-items: center; position: absolute; left: 50%; top: 50%; width: 470px; height: 470px; margin: calc(var(--t) * 0.75) 0 0 calc(var(--l) * 0.75); padding: 0 50px; border-radius: 50%; background: var(--c_d1); color: var(--c_i1); transform: translate(-50%,-50%) scale(1); text-align: center; opacity: 0.999; transition-property: transform, opacity, visibility; }
    .approach1-dot:not(:hover) .approach1-details { visibility: hidden; opacity: 0; transform: translate(-50%,-50%) scale(0); }
 .approach1-icons { overflow: hidden; padding: calc(var(--s4) + 10px) 0 var(--s4); }
  .approach1-icons ul { justify-content: center; padding: 0; font-size: 16px; font-weight: bold; text-transform: uppercase; text-align: center; --gap: 0; }
   .approach1-icons li { position: relative; padding-bottom: 40px; flex-grow: 1; }
    .approach1-icons li a { display: block; color: inherit; font-weight: bold; }
    .approach1-icons li a:hover { color: var(--c_d1x); }
     .approach1-icons li i { display: block; margin: 0; color: var(--c_a1); font-size: 56px; line-height: 1; text-align: center; }
     .approach1-icons li span { position: absolute; left: -100px; right: -100px; bottom: 0; }
   .approach1-icons .icon-engage,
   .approach1-icons .icon-learn { color: var(--c_a2); }
   .approach1-icons .icon-social { color: var(--c_a3); }

.js .approach1:not(.-visible) { visibility: hidden; }
.js .approach1-dot:not(.-touchable) { pointer-events: none; }
.js .approach1-label > *,
.js .approach1-icons li span { opacity: 0; }

@media screen and (max-width: 1279px) {
.approach1 { padding-top: 270px; }
 .approach1-sides { top: -200px; }
 .approach1-header { left: 25%; top: -150px; margin: 0; transform: translateX(-50%); }
 .approach1-header.-right { left: 75%; right: auto; }
}
@media screen and (max-width: 1023px) {
.approach1-icons li { flex-grow: 0; width: 33.33%; }
}
@media screen and (max-width: 719px) {
.approach1 { --size: 560; }
 .approach1-details { display: none; }
}
@media screen and (max-width: 599px) {
.approach1 { --size: 360; padding-top: 120px; }
 .approach1-scene { padding: 40px 0; }
  .approach1-sides { top: -120px; bottom: 0; }
  .approach1-header { top: -80px; min-width: 140px; padding: 15px 0; font-size: 16px; }
  .approach1-circle { margin: 0 auto; }
  .approach1-icons li { width: 50%; }
   .approach1-center figcaption { font-size: 13px; line-height: 1.3; }
  .approach1-label { font-size: 11px; line-height: 1.1; }
   .approach1-label i { width: 10px; height: 10px; }
}
@media screen and (max-width: 360px) {
.approach1 { --size: 320; }
}

/**
 * @name .audience1
 * @description Audience options
 * @example { }
 */

.audience1 {  }
 .audience1-grid { --column: 33.33%; --gap: 50px; }

@media screen and (max-width: 719px) {
.audience1-grid { --column: 100%; }
}

/**
 * @name .body1
 * @description Nonstandard elements spacing
 */

.body1 { }
 .body1:after { display: table; clear: both; content: ''; }
 .body1 > h2, .body1 > h3, .body1 > h4, .body1 > h5 { margin-top: var(--s3); }
 .body1 > blockquote,
 .body1 > iframe,
 .body1 > .embed1,
 .body1 > .table1 { margin-top: var(--s3); margin-bottom: var(--s3); }
 .body1 > :first-child { margin-top: 0; }

/**
 * @name .card1
 * @description Circular photo card
 * @example { }
 */

.card1 { text-align: center; }
 .card1-outer { display: block; color: inherit; font-weight: normal; }
 a.card1-outer:hover { color: var(--c_d1x); }
 .-invert a.card1-outer:hover { color: var(--c_a2); }
  .card1-image { margin-bottom: 0; border-radius: 50%; }
    .card1-image .img1 { transition-property: transform, background, box-shadow; }
    .-invert .card1-image .img1 { background: none; }
    a:hover .card1-image .img1 { box-shadow: 0 3px 5px rgba(0,0,0,0.2); background-color: rgba(0,0,0,0.2); transform: translateY(-5px); }
  .card1-wrap { margin-top: var(--s1); padding-left: 15px; padding-right: 15px; line-height: 1.235; }
   .card1-wrap:before { display: block; content: ''; width: 130px; height: 1px; margin: 0 auto var(--s1); border-top: 1px solid var(--c_a2); }
   .card1-name { margin-bottom: 5px; font: bold 18px/1.3 var(--ff_2); text-transform: none; }

.card1.-mini { }
 .card1.-mini .card1-wrap { margin-top: 25px; }
  .card1.-mini .card1-wrap:before { width: 50px; margin-bottom: 15px; }
  .card1.-mini .card1-title { font-size: 17px; font-weight: bold; }


/**
 * @name .card2
 * @description Audience cards
 * @example { }
 */

.card2 { position: relative; padding: 5px 0 35px; overflow: hidden; text-align: center; }
 .card2-outer { transition-property: margin; }
 .card2.is-active .card2-outer { margin-top: calc(-200px - var(--s1) - 6px); }
  .card2-image { width: 200px; margin: 0 auto var(--s1); }
   .card2-image .img1 { transition-property: transform, box-shadow; }
   .card2:hover .card2-image .img1 { box-shadow: 0 3px 5px rgba(0,0,0,0.2); background-color: rgba(0,0,0,0.2); transform: translateY(-5px); }
  .card2-wrap {  }
   .card2-wrap:before { display: block; content: ''; width: 50px; height: 1px; margin: 0 auto var(--s1); background: var(--c_a2); }
   .card2-header { margin-bottom: 0; }
    .card2-header:before { position: absolute; left: 0; right: 0; bottom: 5px; content: '\e91b'; color: var(--c_a1); font: 14px/1 Icons; transition-property: transform, opacity; }
    .card2:hover .card2-header:before { transform: translateY(5px); }
    .card2.is-active .card2-header:before { opacity: 0; }
   .card2-details { overflow: hidden; transition-property: height; }
   .card2:not(.is-active) .card2-details { height: 0 !important; }
    .card2-details > :first-child { padding-top: var(--sy); }

/**
 * @name .circle1
 * @description Decorative circle
 */

.circle1 { display: block; }
 .circle1 svg { display: block; overflow: visible }
  .circle1 circle { fill: none; stroke: url(#circle1); stroke-width: 2; }

/**
 * @name .coin1
 * @description Flipping image
 * @example { }
 */

.coin1 { position: relative; padding: 7px; }
 .coin1 .circle1 { position: absolute; left: 0; right: 0; top: 0; bottom: 0; }
  .coin1-inner { position: relative; transform-style: preserve-3d; transition: transform 0.5s; }
  a:hover .coin1-inner { transform: rotateY(180deg); }
   .coin1-front, .coin1-back { -webkit-backface-visibility: hidden; backface-visibility: hidden; }
   .coin1-front { transform: rotateY(0deg); }
   .coin1-back { position: absolute; left: 0; right: 0; top: 0; bottom: 0; border-radius: 50%; background: var(--c_d1); color: #fff; transform: rotateY(180deg); }
    .coin1-wrap { display: flex; align-items: center; position: absolute; left: 0; right: 0; top: 0; bottom: 0; overflow: auto; border-radius: 50%; font-size: 16px; line-height: 1.3; -ms-overflow-style: none; -webkit-overflow-scrolling: touch; }
    .coin1-wrap::-webkit-scrollbar { display: none; }
     .coin1-innerwrap { padding: 40px 40px; }
     .coin1-innerwrap[class][class] { margin: auto; }
      .coin1-wrap p { margin-bottom: 20px; }
      .coin1-source { font-size: 13px; font-weight: bold; font-style: italic; display: none; /* JY!! Change per Charity 12/12 */ }
       .coin1-source:before { display: block; content: ''; width: 40px; height: 1px; margin: 0 auto 20px; background: var(--c_a2); }

@media screen and (max-width: 599px) {
.coin1-source { display: none; }
}

@media print {
.coin1-back { visibility: hidden; box-shadow: inset 0 0 0 1px var(--c_b2); background: #fff; color: inherit; transform: none; }
}

/**
 * @name .coin2
 * @description Text-only coin
 * @example { }
 */

.coin2 { position: relative; font-size: 17px; line-height: 1.3; }
 .coin2-outer { display: block; font-weight: inherit }
  .coin2-inner { position: relative; height: 0; padding-top: 100%; transform-style: preserve-3d; transition: transform 0.5s; }
  .coin2:hover .coin2-inner { transform: rotateY(180deg); }
   .coin2-front, .coin2-back { position: absolute; left: 0; right: 0; top: 0; bottom: 0; margin: 0; border-radius: 50%; background: var(--c_d1); color: var(--c_i1); -webkit-backface-visibility: hidden; backface-visibility: hidden; }
   .coin2-front { transform: rotateY(0deg); font-size: 22px; }
   .coin2-back { position: absolute; left: 0; right: 0; top: 0; bottom: 0; border-radius: 50%; background: var(--c_d1); color: #fff; transform: rotateY(180deg); }
    .coin2-spot { display: flex; position: absolute; left: 0; right: 0; top: 0; bottom: 0; overflow: auto; border-radius: 50%; text-align: center; -ms-overflow-style: none; -webkit-overflow-scrolling: touch; }
    .coin2-spot::-webkit-scrollbar { display: none; }
    .coin2-front .coin2-spot:after { position: absolute; left: 0; right: 0; bottom: 30px; content: '+'; color: var(--c_a2); font-size: 25px; line-height: 30px; font-weight: normal; text-align: center; }
     .coin2-wrap { padding: 40px; }
     .coin2-front .coin2-wrap { padding: 60px 40px; }
     .coin2-wrap[class][class] { margin: auto; }
      .coin2-wrap p { margin-bottom: 20px; }
      .coin2-source { font-size: 13px; font-weight: bold; font-style: italic; }
       .coin2-source:before { display: block; content: ''; width: 40px; height: 1px; margin: 0 auto 20px; background: var(--c_a2); }

@media screen and (max-width: 599px) {
.coin2-front { font-size: 20px; }
.coin2-source { display: none; }

}

@media print {
.coin2-front, .coin2-back { box-shadow: inset 0 0 0 1px var(--c_b2); background: #fff; color: var(--c_d1); }
.coin2-back { visibility: hidden; }
}

/**
 * @name .content1
 * @description Global content
 */

.content1 { margin-bottom: 0; }
 .content1:before { display: block; content: attr(data-warning); margin: 0; padding: 20px 40px; background: #b22; color: #fff; text-align: center; }
@supports(--css: variables) { .content1:before { display: none; } }

@media screen and (max-width: 599px) {
 .content1:before { padding: 15px 20px; font-size: 14px; }
}

/**
 * @name .corner1
 * @description Decorative corners
 */

.corner1 { position: absolute; left: 0; right: 0; top: 0; bottom: 0; margin: 0; pointer-events: none; }
 .corner1-wrap { position: absolute; right: 0; top: 0; }
  .corner1 .circle1 { position: absolute; right: 0; top: 0; width: 1em; font-size: 180px; }
  .corner1 .circle1:nth-child(3) { display: none; }
  .corner1.-s1 .circle1:nth-child(1) { right: 0.14em; top: -0.35em; }
  .corner1.-s1 .circle1:nth-child(2) { right: -0.5em; top: -0.65em; }
  .corner1.-s2 .circle1:nth-child(1) { right: 0.14em; top: -0.75em; }
  .corner1.-s2 .circle1:nth-child(2) { right: -0.25em; top: -0.5em; }
  .corner1.-s3 .circle1:nth-child(1) { right: -0.15em; top: -0.5em; }
  .corner1.-s3 .circle1:nth-child(2) { right: -0.5em; top: -0.2em; }
  .corner1.-s4 .circle1:nth-child(1) { right: -0.5em; top: -0.5em; }
  .corner1.-s4 .circle1:nth-child(2) { right: -0.1em; top: -0.6em; }
  .corner1.-s4 .circle1:nth-child(3) { display: block; right: -0.8em; top: -0.2em; font-size: 300px; }
  .corner1.-s5 .circle1:nth-child(1) { right: -0.4em; top: -0.4em; font-size: 400px; transform: rotate(-100deg); }
  .corner1.-s5 .circle1:nth-child(2) { right: -0.65em; top: -0.15em; font-size: 450px; transform: rotate(180deg); }
  .corner1.-s5 .circle1:nth-child(3) { display: block; right: -0.1em; top: -0.58em; font-size: 500px; }
  .corner1.-s6 .circle1:nth-child(1) { right: -0.1em; top: -0.4em; }
  .corner1.-s6 .circle1:nth-child(2) { right: -0.4em; top: -0.25em; }
  .corner1.-s6 .circle1:nth-child(3) { display: block; right: 0.18em; top: -0.4em; font-size: 400px; }
  .corner1.-s7 .circle1:nth-child(1) { right: -0.3em; top: -0.75em; }
  .corner1.-s7 .circle1:nth-child(2) { right: -0.5em; top: -0.65em; }

@media screen and (max-width: 1279px) {
.corner1 { display: none; }
}

/**
 * @name .downloads1
 * @description Downloads list
 * @example { }
 */

.downloads1 { overflow: hidden; padding: var(--s2) 0; border: 1px solid var(--c_b2); border-width: 1px 0; }
 .downloads1-entries { --column: 25%; --row-gap: 50px; text-align: center; justify-content: center; }
  .downloads1-entries a { display: block; color: inherit; font-weight: inherit }
   .downloads1-entries i { display: flex; position: relative; width: 1em; height: 1em; margin: 0 auto 20px; border-radius: 50%; background: var(--c_a2); color: var(--c_d1); font-size: 64px; line-height: 1em; }
    .downloads1-entries i:before { display: block; position: relative; z-index: 2; margin: auto; font-size: 0.5em; }
    .downloads1-entries i:after { position: absolute; left: 0; right: 0; top: 0; bottom: 0; content: ''; border-radius: 50%; background: inherit; transition-property: transform; }
    .downloads1-entries a:hover i:after { transform: scale(1.1); }

@media screen and (max-width: 1023px) {
.downloads1-entries { --column: 50%; }
}
@media screen and (max-width: 599px) {
.downloads1-entries { --column: 100%; --row-gap: 30px; }
}

@media print {
.downloads1-entries i:after { box-shadow: inset 0 0 0 1px var(--c_a2); background: #fff; }
}

/**
 * @name .embed1
 * @description Responsive embeds
 */

.embed1 { display: block; position: relative; overflow: hidden; height: 0; padding-bottom: 56.25%; }
 .embed1 iframe { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }

/**
 * @name .error1
 * @description Error page overlay
 */

.error1 { display: flex; justify-content: center; align-items: center; position: fixed; left: 0; right: 0; top: 0; bottom: 0; z-index: 201; margin: 0; background: #f2f2f2; text-align: center; }
 .error1-code { margin: 0; font-size: 82px; line-height: 1; opacity: 0.2; }
 .error1-title { margin-bottom: 5px; }
 .error1-info { margin-bottom: var(--sy); }

/**
 * @name .featured1
 * @description Featured circular block
 * @example { }
 */

.featured1 { overflow: hidden; padding: 100px 0; color: #d25c21; }
 .featured1-outer { position: relative; padding: 40px 0 0; transform: translateX(140px); }
  .featured1-image { position: relative; z-index: 1; width: 670px; margin: 0 0 0 auto; }
   .featured1-image .circle1 { position: absolute; left: -7px; top: -7px; right: -7px; }
   .featured1-image .img1 img { -webkit-backface-visibility: visible; }
  .featured1-main { display: flex; position: absolute; left: 0; top: 0; z-index: 2; width: 500px; height: 500px; margin: 0; background: currentColor; border-radius: 50%; }
   .featured1-wrap { padding: var(--s2); color: var(--c_i1); font: italic 25px/1.2 sans-serif; font-family: inherit; text-align: center; }
   .featured1-wrap[class][class] { margin: auto; }
  .featured1-circles { position: absolute; left: 175px; top: 120px; }
   .featured1-circles .circle1 { position: absolute; top: 0; right: 0; width: 300px; }
   .featured1-circles > :nth-child(1) { width: 500px; height: 500px; }
   .featured1-circles > :nth-child(2) { top: 90px; right: -20px; }
   .featured1-circles > :nth-child(3) { top: 150px; right: -140px; }

.featured1.-flip .featured1-outer { transform: translateX(-140px); }
 .featured1.-flip .featured1-image { margin-left: 0; }
 .featured1.-flip .featured1-main { left: auto; right: 0; }
 .featured1.-flip .featured1-circles { left: auto; right: 175px; transform: scaleX(-1); }

.featured1.-top { padding-top: 140px; }
 .featured1.-top .featured1-circles { top: -80px; left: 215px; }
 .featured1.-flip.-top .featured1-circles { left: auto; right: 215px; }
  .featured1.-top .featured1-circles > :nth-child(2) { top: 140px; right: 5px; }
  .featured1.-top .featured1-circles > :nth-child(3) { top: 100px; right: -40px; }


@media screen and (min-width: 1024px) {
.featured1 [data-aios] { transition-property: opacity; }

[data-parallax] .featured1-image, [data-parallax] .featured1-main, [data-parallax] .featured1-circles .circle1 { --y: calc(var(--y1) + (var(--y2) - var(--y1)) * var(--parallax, 0) ); transform: translateY(var(--y)); will-change: transform, opacity; }
[data-parallax] .featured1-image { --y1: 0; --y2: 150px; } [data-parallax^="1/"] .featured1-image { --y1: -100px; --y2: 90px; }
[data-parallax] .featured1-main { --y1: 0; --y2: -150px; } [data-parallax^="1/"] .featured1-main { --y1: 100px; --y2: -100px; }
[data-parallax] .featured1-circles > :nth-child(2) { --y1: 0; --y2: 75px; } [data-parallax^="1/"] .featured1-circles > :nth-child(2) { --y1: -50px; --y2: 50px; }
}

@media screen and (max-width: 1023px) {
.featured1, .featured1.-top { padding: 0; }
 .featured1[class] .featured1-outer { transform: translateX(0); }
  .featured1-circles { display: none; }
  .featured1-image { width: 400px; margin-bottom: -300px; }
  .featured1-main { position: relative; left: auto; top: auto; }
  .featured1.-flip .featured1-main { margin-left: auto; }
}
@media screen and (max-width: 719px) {
.featured1-wrap { font-size: 17px; line-height: 1.35; }
 .featured1-image { width: calc(100% - 10px); margin: 0 auto -33vw; }
 .featured1.-flip .featured1-image { margin-left: auto; }
 .featured1-main { width: 80vw; height: 80vw; margin: 0 auto; }
}

@media print {
.featured1-main { box-shadow: inset 0 0 0 1px; background: #fff; }
 .featured1-wrap { color: inherit; }
}

/**
 * @name .featured2
 * @description Featured circular block
 * @example { }
 */

.featured2 { max-width: 670px; }
 .featured2-outer { display: flex; position: relative; margin: 0; padding: 70px 0 0; }
  .featured2-circles { position: absolute; left: 50%; top: 50%; margin: 0; }
   .featured2-circles .circle1 { position: absolute; width: 1em; font-size: 250px; }
   .featured2-circles .circle1:nth-child(3) { display: none; }
   .featured2-circles.-s1 .circle1:nth-child(1) { left: -40px; bottom: 115px; }
   .featured2-circles.-s1 .circle1:nth-child(2) { left: -20px; bottom: 100px; font-size: 200px; }
   .featured2-circles.-s2 .circle1:nth-child(1) { right: 120px; top: -80px; font-size: 400px; }
   .featured2-circles.-s2 .circle1:nth-child(1) ~ .circle1 { display: none; }
   .featured2-circles.-s3 .circle1:nth-child(1) { left: -350px; top: 100px; font-size: 400px; }
   .featured2-circles.-s3 .circle1:nth-child(2) { right: 200px; top: 40px; font-size: 320px; }
   .featured2-circles.-s3 .circle1:nth-child(3) { display: block; right: 120px; top: 130px; font-size: 200px; }
  .featured2-image { flex: none; position: relative; width: 66.5%; margin: 0 -100% 0 0; padding: 7px; }
   .featured2-image .circle1 { position: absolute; left: 0; top: 0; width: 100%; }
   .featured2-image .img1 { background-color: transparent; }
  .featured2-main { flex: none; position: relative; width: 57.5%; margin: -70px 0 0 auto; }

@media screen and (max-width: 1023px) {
.featured2-circles { display: none; }
}
@media screen and (max-width: 719px) {
.featured2 { margin-bottom: var(--s4); }
.featured2-outer { display: block; padding-top: 0; }
 .featured2-image { width: 100%; margin: 0 0 -33vw; }
 .featured2-main { width: 80vw; margin: 0 auto; }
}

/**
 * @name .filter1
 * @description Resource filters
 * @example { }
 */

.filter1 { display: flex; align-items: center; margin-bottom: var(--s3); }
 .filter1-label { flex: none; margin: 0; font-weight: bold; text-transform: uppercase; }
 .filter1-label ~ * { margin-left: 40px; }
 .filter1-select { flex-grow: 1; position: relative; margin-bottom: 0; font-weight: bold; text-transform: uppercase; }
  .filter1-select:after { position: absolute; right: 10px; top: 50%; content: '\e91b'; margin: -15px 0 0; color: var(--c_a1); font: 13px/30px Icons; pointer-events: none; }
  .filter1-select i { position: absolute; left: 10px; top: 50%; margin: -15px 0 0; line-height: 30px; pointer-events: none; }
  .filter1-select select { padding-left: 40px; border-color: transparent transparent var(--c_b2); background: none; font-weight: normal; text-transform: none; }
  .firefox .filter1-select select { padding-left: 40px; }
 .filter1-all { flex: none; margin-bottom: 0; border-bottom: 1px solid var(--c_b2); line-height: 50px; }
  .filter1-all a { display: block; padding: 0 10px; color: inherit; font-weight: normal; }
  .filter1-all a:hover { color: var(--c_d1x); }

@media screen and (max-width: 1023px) {
.filter1 { flex-wrap: wrap; }
 .filter1-label { width: 100%; }
 .filter1-label + * { margin-left: 0; }
}
@media screen and (max-width: 599px) {
.filter1-label ~ p { width: 100%; margin-left: 0; }
 .filter1-all a { padding-left: 41px; }
}

/**
 * @name .footer1
 * @description Global footer
 */

.footer1 { overflow: hidden; margin-bottom: 0; background: #034f7b; color: #fff; }
 .footer1 a { color: inherit; }
 .footer1 a:hover { color: var(--c_a2); }
 .footer1-wrap { display: flex; margin-bottom: 0; }
 .footer1-wrap { display: flex; margin: 0; }
  .footer1-main { flex-grow: 1; margin: 0; padding: 30px 0; }
   .footer1-nav { }
    .footer1-nav ul { display: inline-flex; margin: 0; padding: 0; }
    .footer1-nav ul + ul { margin-left: 30px; }
     .footer1-nav li { margin: 0; }
     .footer1-nav li + li { margin-left: 30px; }
      .footer1-nav li:before { display: none; }
      .footer1-nav ul + ul a { font-weight: inherit }
   .footer1-bottom { display: flex; align-items: center; }
    .footer1-bottom .socials1 { margin-bottom: 0; margin-right: var(--s2); }
     .footer1-bottom .socials1 a { background-color: var(--c_a2); color: var(--c_d1); }
     .footer1-bottom .socials1 a:hover { background-color: var(--c_i1); color: var(--c_d1); }
    .footer1-copy { color: #c2cdd7; font-size: 12px; }
     .footer1-copy small { padding: 0 5px; visibility: hidden; }
     .footer1-copy a { font-weight: inherit }
  .footer1-side { position: relative; width: 330px; margin: 0 0 0 100px; padding: 30px 0; }
   .footer1-side:before { position: absolute; left: 0; top: 50%; content: ''; width: 1em; height: 1em; margin: -0.5em 0 0 -50px; border-radius: 50%; background: #146691; font-size: 500px; }
   .footer1-side:after { position: absolute; left: 50px; top: 0; bottom: 0; content: ''; width: 2000px; background: #146691; }
   .footer1 .signup1 { --c_e1: var(--c_a2); position: relative; z-index: 2; margin-bottom: 0; }
   .footer1 .signup1 button { color: var(--c_a2); }
   .footer1-side .footer1-copy { display: none; position: relative; z-index: 2; margin-top: var(--s1); text-align: center; }

@media screen and (max-width: 1279px) {
.footer1-wrap { display: block; }
 .footer1-main { text-align: center; }
  .footer1-bottom { justify-content: center; }
   .footer1-bottom .socials1 { margin-right: 0; }
   .footer1-bottom .footer1-copy { display: none; }
 .footer1-side { width: auto; margin-left: 0; }
  .footer1-side:before { display: none; }
  .footer1-side:after { left: var(--nx); right: var(--nx); width: auto; }
  .footer1-side .signup1 { max-width: 330px; margin-left: auto; margin-right: auto; text-align: center; }
  .footer1-side .footer1-copy { display: block; }
}
@media screen and (max-width: 719px) {
.footer1-main { text-align: left; }
 .footer1-nav { display: flex; }
  .footer1-nav ul { display: block; min-width: 80px; }
  .footer1-nav ul:first-child { flex-grow: 1; }
   .footer1-nav li { margin-bottom: 10px; }
   .footer1-nav li + li { margin-left: 0; }
 .footer1-bottom { display: block; }
  .footer1 .socials1 { margin-bottom: 0; }
 .footer1-side .signup1 { max-width: 100%; text-align: left; }
 .footer1-side .footer1-copy { text-align: left; }
}
@media screen and (max-width: 479px) {
.footer1-copy small { display: block; overflow: hidden; height: 0; }
}

@media print {
.footer1 { margin-top: 50px; border-top: 1px solid var(--c_b2); background: none; color: inherit; }
  .footer1-bottom .socials1 a { background: none; }
  .footer1-copy { color: inherit; }
 .footer1-side { display: none; }
}

/**
 * @name .form1
 * @description Form wrapper
 */

.form1 {  }
 .form1-fields { --gap: 30px; --row-gap: 25px; margin-bottom: var(--s1); }
  .form1-fields .-ts\:10 + p { margin-top: -10px; }
  .nf-form-content .listcheckbox-wrap ul,
  .form1-ticks { padding: 0; }
  .nf-form-content .listcheckbox-wrap li,
   .form1-ticks li { display: flex; align-items: center; }
    .nf-form-content .listcheckbox-wrap li:before,
    .form1-ticks li:before { display: none; }
    .nf-form-content .listcheckbox-wrap label ~ input,
    .form1-ticks label ~ input { height: 40px; margin-left: 25px; padding-top: 9px; padding-bottom: 9px; }

/**
 * @name .grid1
 * @description Flipcards grid
 */

.grid1 { }
 .grid1-entries { --column: 33%; --gap: var(--s1); --row-gap: var(--s3); justify-content: center; }
 .page-template-template-work-impact-area .grid1-entries { --column: 50%; }
 .grid1-more { position: relative; margin-top: var(--s3); text-align: center; }
  .grid1-more:before { position: absolute; left: 0; top: 50%; right: 0; content: ''; height: 1px; background: var(--c_b2); }
  .grid1-more.-noline:before { display: none; }

@media screen and (min-width: 1280px) {
.grid1-entries > .-force-newline { width: 35%; }
}
@media screen and (max-width: 1279px) {
.grid1-entries { --column: 50%; }
}
@media screen and (max-width: 719px) {
.grid1-entries { --column: 100%; }
}

/**
 * @name .grid2
 * @description .featured2 grid
 */

.grid2 {  }
 .grid2 > .featured2 { margin-bottom: 30px; }
 .grid2 > .featured2:nth-child(even) { margin-top: -150px; margin-left: auto; }
 .grid2-more { position: relative; margin-top: var(--s3); text-align: center; }
  .grid2-more:before { position: absolute; left: 0; top: 50%; right: 0; content: ''; height: 1px; background: var(--c_b2); }
  .grid2-more.-noline:before { display: none; }

@media screen and (max-width: 1279px) {
.grid2 > .featured2 { margin-bottom: 40px; }
.grid2 > .featured2:nth-child(even) { margin-top: -70px; }
}
@media screen and (max-width: 1023px) {
.grid2 > .featured2 { margin: 40px auto 0; }
.grid2 > .featured2:nth-child(even) { margin-top: 0; }
}
@media screen and (max-width: 719px) {
.grid2 > .featured2 { margin-top: 0; margin-bottom: var(--s4); }
}

/**
 * @name .grid3
 * @description Grid/carousel combo
 * @example { }
 */

.grid3 {  }
 .grid3-entries { --column: 33.33%; --gap: var(--s1); --row-gap: var(--s3); justify-content: center; }
 .grid3-more { margin-top: var(--s3); }

@media screen and (max-width: 1023px) {
.grid3 .card1-wrap { padding-left: 0; padding-right: 0; }
}
@media screen and (max-width: 719px) {
.grid3-entries { --column: 100%; --gap: 0px; --row-gap: 0px; display: block; }
 .grid3-entries .slick-list { width: 100%; padding-top: 10px; }
 .grid3-entries .slick-arrow[class] { top: 150px; background: none !important; color: var(--c_a2) !important; }
 .grid3-entries .slick-dots { display: none !important; width: 100%; }
  .grid3-entries .card1 { margin: 0 0 40px; }
  .grid3-entries.slick-slider .card1 { margin-bottom: 0; }
   .grid3-entries .card1-outer { max-width: 270px; margin: 0 auto; }
}

/**
 * @name .grid4
 * @description Mini cards grid/carousel
 * @example { }
 */

.grid4 {  }
 .grid4-header { }
 .grid4-entries { --column: 25%; --gap: 20px; }
  .grid4-entries .card1-image { margin-left: 30px; margin-right: 30px; }

@media screen and (max-width: 719px) {
.grid4-entries { --column: 50%; }
.grid4-entries.slick-slider { --gap: 0px; }
 .grid4-entries .slick-list { width: 100%; padding-top: 10px; }
 .grid4-entries .slick-arrow[class] { top: 115px; background: none !important; color: var(--c_a1) !important; }
 .grid4-entries .slick-dots { display: none !important; width: 100%; }
  .grid4-entries .card1 { margin-left: auto; margin-right: auto; }
   .grid4-entries .card1-outer { max-width: 270px; margin-left: auto; margin-right: auto; }
}
@media screen and (max-width: 399px) {
.grid4-entries { --column: 100%; }
}

/**
 * @name .header1
 * @description Article header
 * @example { }
 */

.header1 { margin-bottom: var(--s2); }
.header1 + .project1 { margin-top: calc(var(--s2) * -0.4); }
 .header1-title { margin-bottom: 10px; }
 .header1-meta { font-size: 14px; }
  .header1-meta a { color: inherit; }
  .header1-meta time + strong { margin-left: 5px; }

/**
 * @name .header2
 * @description Section header with pattern background
 * @example { }
 */

.header2 { position: relative; overflow: hidden; margin-bottom: 0; background: var(--c_d1); color: var(--c_i1); }
 .header2:before { position: absolute; left: 0; right: 0; top: -100px; bottom: -100px; content: ''; background: url(../images/pattern1.png) 50% 50%; background-size: 300px 300px; opacity: 0.5; pointer-events: none; }
 .header2-wrap { position: relative; padding: var(--s4) 0; color: #fff; text-align: center; }

@media screen and (min-width: 1024px) {
.header2[data-parallax^="1/"]:before { --y1: 0px; --y2: 200px; --y: calc(var(--y1) + (var(--y2) - var(--y1)) * var(--parallax, 0) ); transform: translateY(var(--y)); will-change: transform; }
 .header2-title span { display: block; }
}

@media print {
.header2 { border: 1px solid var(--c_b2); border-width: 1px 0; background: none; color: inherit; }
 .header2:before { display: none; }
 .header2-wrap { color: inherit; }
}

/**
 * @name .hero1
 * @description Standard hero
 * @example { }
 */

.hero1 { position: relative; overflow: hidden; min-height: 800px; margin-bottom: 0; background: #6a7175; color: #fff; text-align: center; }
.hero1.-short { min-height: 500px; }
 .hero1-outer { display: flex; min-height: inherit; padding: var(--s3) 0; color: inherit; font-weight: inherit; }
 .hero1-outer:hover { color: inherit; }
  .hero1-background { position: absolute; left: 0; right: 0; top: 0; bottom: 0; margin: 0; pointer-events: none; }
   .hero1-background:after { position: absolute; left: 0; right: 0; top: 0; bottom: 0; content: ''; background: #000; opacity: 0.45; transform: translateZ(0); }
  .hero1-wrap { position: relative; width: 100%; transform: translateZ(0); }
  .hero1-wrap[class][class] { margin: auto; }
   .hero1.-line .hero1-wrap:before { position: absolute; left: 50%; top: 100%; content: ''; width: 1px; height: 500px; margin: var(--s3) 0 0; background: var(--c_a2); opacity: 0.5; }

@media screen and (min-width: 1024px) {
[data-parallax] .hero1-wrap { --y1: 0px; --y2: -150px; --y: calc(var(--y1) + (var(--y2) - var(--y1)) * var(--parallax, 0) ); transform: translateY(var(--y)); transition: transform 0.05s; will-change: transform; }
[data-parallax^="1/"] .hero1-wrap { --y1: 100px; --y2: -100px; }
}
@media screen and (max-width: 1279px) {
.hero1 { min-height: 600px; }
.hero1.-short { min-height: 400px; }
}
@media screen and (max-width: 599px) {
.hero1-outer { padding: 50px 0; }
}

@media print {
.hero1[class] { min-height: 0; border: 1px solid var(--c_b2); border-width: 1px 0; background: none; color: inherit; }
.content1 > .hero1:first-child { border-top-width: 0; }
 .hero1-background { display: none; }
}

/**
 * @name .hero2
 * @description Arc hero
 * @example { }
 */

.hero2 { --background: #2f8ab4; --link: var(--c_a2); --hover: var(--c_i1); position: relative; overflow: hidden; margin: 0; background: var(--background); color: var(--text, #fff); }
.hero2.-blue { --background: #57c1e9; --text: var(--c_d1); --link: var(--c_i1); --hover: var(--c_a4); }
.hero2.-yellow { --background: #dc7621; --link: var(--c_d1); --hover: #011d2e; }
 .hero2-outer { display: flex; height: 650px; color: inherit; font-weight: inherit; }
 .hero2-outer:hover { color: inherit; }
  .hero2-background { display: flex; position: absolute; left: 0; right: 0; top: 0; bottom: 0; z-index: 1; margin: 0; }
   .hero2 .loader1 { color: #fff; }
   .hero2-background > * { flex: none; min-width: 0; margin-bottom: 0; }
   .hero2-pattern { position: relative; width: calc(50vw - 1170px/2 + 1170px*0.4); }
   .hero2-arc { position: relative; z-index: 2; width: 200px; height: 650px; margin: 0 -100px; }
   .hero2-arc:first-child { margin-left: auto; }
   .hero2-arc:first-child + .hero2-photo { margin-left: 0; }
   .hero2.-flip .hero2-arc { transform: scaleX(-1); }
    .hero2 path { fill: url(#hero2navy); }
    .hero2.-blue path { fill: url(#hero2blue); }
    .hero2.-yellow path { fill: url(#hero2yellow); }
   .hero2-photo { flex-grow: 1; position: relative; margin-left: auto; }
    .hero2-photo svg { display: none; }
 .hero2-inner { position: relative; width: 100%; z-index: 2; }
  .hero2-inner[class][class] { margin: auto; }
   .hero2-wrap > * { max-width: 34%; }
   .hero2.-yellow .hero2-wrap > * { max-width: 30%; }

   .hero2-brow { margin-bottom: var(--s1); font-size: 22px; line-height: 1.18; font-style: italic; }
    .hero2-brow i { float: left; display: block; margin: -3px 15px 10px 0; color: var(--c_a2); font-size: 54px; line-height: 1; }
    .hero2-brow span { display: block; }
   .hero2-title {  }
    .hero2-title .icon-quote { float: left; margin: 0.3em 0 0 -35px; font-size: 0.5625em; vertical-align: top; }
   .hero2-more { margin-top: calc(var(--sy) * -0.75); font-weight: bold; }
    .hero2-more span { color: var(--link); transition-property: color; }
    a.hero2-outer:hover .hero2-more span { color: var(--hover); }

@media screen and (min-width: 1024px) {
[data-parallax] .hero2-wrap { --y1: 0px; --y2: -100px; --y: calc(var(--y1) + (var(--y2) - var(--y1)) * var(--parallax, 0) ); transform: translateY(var(--y)); will-change: transform; }
[data-parallax^="1/"] .hero2-wrap { --y1: 100px; --y2: -100px; }
}
@media screen and (min-width: 1366px) {
.hero2-brow i { margin: -3px 0 0 -70px; }
}
@media screen and (max-width: 1023px) {
.hero2-outer { display: block; height: auto; }
 .hero2-background { display: block; position: relative; left: auto; top: auto; right: auto; bottom: auto; z-index: 2; width: 100%; }
  .hero2-pattern { display: none; }
  .hero2-arc { display: none; }
   .hero2 path { fill: url(#hero2navy-h); }
   .hero2.-blue path { fill: url(#hero2blue-h); }
   .hero2.-yellow path { fill: url(#hero2yellow-h); }
  .hero2-photo { width: 100%; height: 50vw; }
   .hero2-photo svg { display: block; position: absolute; left: 0; right: 0; top: 100%; transform: translateY(-50%); }
 .hero2-inner { position: relative; width: 100%; padding-top: 12vw; z-index: 1; }
  .hero2-inner:before { position: absolute; left: 0; right: 0; top: 0; bottom: 0; content: ''; background: url(../images/pattern1bw.png) 50% 50% repeat; opacity: 0.1; }
  .hero2-wrap { padding: 40px 0; }
   .hero2-wrap > * { max-width: 100%; }
   .hero2.-yellow .hero2-wrap > * { max-width: 100%; }

   .hero2-title .icon-quote { margin-left: 0; margin-right: 10px; }
}

@media print {
.hero2[class] { border: 1px solid var(--c_b2); border-width: 1px 0; background-color: transparent; color: inherit; }
.content1 > .hero2:first-child { border-top-width: 0; }
 .hero2-outer { height: auto; padding: 100px 0; }
  .hero2-background { display: none; }
   .hero2-wrap > * { max-width: 50%; }
}

/**
 * @name .hero3
 * @description Partner hero
 * @example { }
 */

.hero3 { position: relative; overflow: hidden; min-height: 600px; margin-bottom: 0; background: #6a7175; color: #fff; }
 .hero3-outer { display: flex; min-height: inherit; padding: var(--s4) 0; color: inherit; font-weight: inherit; }
 .hero3-outer:hover { color: inherit; }
  .hero3-background { position: absolute; left: 0; right: 0; top: 0; bottom: 0; margin: 0; pointer-events: none; }
   .hero3-background:after { position: absolute; left: 0; right: 0; top: 0; bottom: 0; content: ''; background: linear-gradient(90deg, rgba(0,0,0,0.65) 40%, rgba(0,0,0,0) 75%); transform: translateZ(0) skew(-10deg); transform-origin: 0 0; }
  .hero3-wrap { position: relative; width: 100%; margin: 0 auto; transform: translateZ(0); }
   /*.hero3-wrap > * { max-width: 700px; }*/

@media screen and (min-width: 1024px) {
[data-parallax] .hero3-wrap { --y1: 0px; --y2: -150px; --y: calc(var(--y1) + (var(--y2) - var(--y1)) * var(--parallax, 0) ); transform: translateY(var(--y)); will-change: transform; }
[data-parallax^="1/"] .hero3-wrap { --y1: 100px; --y2: -100px; }
}
@media screen and (max-width: 1023px) {
.hero3 { min-height: 400px; }
 .hero3-background:after { background: rgba(0,0,0,0.4); transform: translateZ(0); }
}

@media print {
.hero3[class] { min-height: 0px; border: 1px solid var(--c_b2); border-width: 1px 0; background-color: transparent; color: inherit; }
.content1 > .hero3:first-child { border-top-width: 0; }
 .hero3-outer { height: auto; padding: 100px 0; }
  .hero3-background { display: none; }
}

/**
 * @name .hero4
 * @description Work hero with tab-like nav
 * @example { }
 */

.hero4 { position: relative; overflow: hidden; min-height: 460px; margin-bottom: 0; background: #6a7175; color: #fff; }
 .hero4-outer {  }
  .hero4-background { position: absolute; left: 0; right: 0; top: 0; bottom: 0; margin: 0; pointer-events: none; }
   .hero4-background:after { position: absolute; left: 0; right: 0; top: 0; bottom: 0; content: ''; background: #000; opacity: 0.45; }
  .hero4-wrap { position: relative; padding: var(--s3) 0; text-align: center; }
   .hero4-title { margin-bottom: var(--s1); }
   .hero4-tabs { --gap: 20px; --row-gap: 0px; justify-content: center; padding: 0; margin-bottom: var(--s2); border-bottom: 1px solid rgba(255,255,255,0.3); font-size: 22px; font-weight: bold; }
    .hero4-tabs a { display: block; padding: 0 10px 5px; border-bottom: 5px solid transparent; color: inherit; }
    .hero4-tabs .is-active > a { border-bottom-color: var(--c_a3); }
    .hero4-tabs a:hover { color: var(--c_a3); }
     .hero4-tabs i { display: inline-block; margin-right: 5px; }
   .hero4-subtitle { margin-bottom: 10px; }

@media screen and (min-width: 1024px) {
[data-parallax^="0/"] .hero4-wrap { --y1: 0px; --y2: -100px; --y: calc(var(--y1) + (var(--y2) - var(--y1)) * var(--parallax, 0) ); transform: translateY(var(--y)); will-change: transform; }
}
@media screen and (max-width: 719px) {
.hero4-tabs { font-size: 18px; }
}
@media screen and (max-width: 479px) {
.hero4-tabs { display: block; }
 .hero4-tabs li { margin-bottom: 5px; }
  .hero4-tabs a { display: inline-block; }
}

@media print {
.hero4 { min-height: 0; border: 1px solid var(--c_b2); border-width: 1px 0; background: none; color: inherit; }
.content1 > .hero4:first-child { border-top-width: 0; }
 .hero4-background { display: none; }
  .hero4-tabs { border-bottom: 1px solid var(--c_b2); }
}

/**
 * @name .img1
 * @description Image wrapper
 */

.img1 { display: block; position: relative; overflow: hidden; width: 100%; height: 0; padding-top: 56.25%; background: #fafafa; }
.img1.-bg { position: absolute; left: 0; right: 0; top: 0; bottom: 0; width: auto; height: auto; margin-bottom: 0; padding-top: 0 !important; background: transparent; }
.img1.-round { border-radius: 50%; }
 .img1 img, .img1 video { display: block; position: absolute; left: 0; top: 0; width: 100%; height: 100%; object-fit: cover; object-position: var(--ix, 50%) var(--iy, 50%); -webkit-backface-visibility: hidden; }
 .img1.-round img, .img1.-round video { border-radius: 50%; }
 .img1.-left { --ix: 0; } .img1.-right { --ix: 100%; } .img1.-top { --iy: 0; } .img1.-bottom { --iy: 100%; }
 .no-objectfit .img1 img, .no-objectfit .img1 video { height: auto; }

@media screen and (max-width: 599px) {
.no-objectfit .img1 img, .no-objectfit .img1 video { width: auto; height: 100%; }
}

/**
 * @name .lightleaks1
 * @description Floating light dots
 */

.lightleaks1 { position: absolute; left: 0; right: 0; top: 0; bottom: 0; overflow: hidden; margin: 0; pointer-events: none; }
 .lightleaks1-wrap { position: absolute; right: 0; top: 0; }
 .lightleaks1.-flip .lightleaks1-wrap { right: auto; left: 0; transform: scaleX(-1); }
  .lightleaks1-wrap:before, .lightleaks1-wrap:after { position: absolute; right: -0.5em; bottom: -80px; content: ''; width: 1em; height: 1em; border-radius: 50%; background: var(--c_a3); font-size: 1440px; opacity: 0.2; animation: lightleaks1 7s ease-in-out alternate infinite; }
  .lightleaks1-wrap:after { right: -0.7em; bottom: -180px; animation-delay: 1s; animation-duration: 6s; }
  .lightleaks1.-s2 .lightleaks1-wrap:before { right: -0.35em; }
  .lightleaks1.-s2 .lightleaks1-wrap:after { right: -0.5em; }
  .lightleaks1.-s3 .lightleaks1-wrap:before { right: -0.35em; bottom: -0.3em; }
  .lightleaks1.-s3 .lightleaks1-wrap:after { right: -0.3em; bottom: -0.2em; }

@keyframes lightleaks1 { 0% { transform: scaleX(1) scaleY(1); } 100% { transform: scaleX(1.2) scaleY(1.05); } }
.lightleaks1-wrap:before, .lightleaks1-wrap:after { animation-play-state: paused; }

@media screen and (max-width: 719px) {
.lightleaks1-wrap:before, .lightleaks1-wrap:after { animation-play-state: paused; }
}
@media print, screen and (max-width: 599px) {
.lightleaks1 { display: none; }
}

/**
 * @name .loader1
 * @description Loading spinner
 */

.loader1 { display: block; position: absolute; left: 50%; top: 50%; width: 1em; height: 1em; margin: -0.5em 0 0 -0.5em; color: #aaa; font-size: 28px; transition-property: opacity, visibility; pointer-events: none; animation: loader1 1s 7 linear; }
 .loader1:before, .loader1:after { position: absolute; left: 0; right: 0; top: 0; bottom: 0; content: ''; border: 2px solid; border-radius: 50%; -webkit-clip-path: polygon(50% 0, 100% 0, 100% 100%, 50% 100%); clip-path: polygon(50% 0, 100% 0, 100% 100%, 50% 100%); }
 .loader1:before { -webkit-clip-path: polygon(0 0, 50% 0, 50% 100%, 0 100%); clip-path: polygon(0 0, 50% 0, 50% 100%, 0 100%); }
 .loader1:after { opacity: 0.5; }
.loader1.-light, .-invert .loader1 { color: #fff; }
.lazyloading ~ .loader1 { animation-iteration-count: infinite; }
.lazyloaded ~ .loader1, .is-loaded ~ .loader1, html:not(.js) .loader1 { visibility: hidden; opacity: 0; }

@media screen and (max-width: 599px) {
.loader1 { font-size: 20px; }
}

@keyframes loader1 { 0% { transform: rotate(0deg); } 100% { transform: rotate(360deg); } }

/**
 * @name .locations1
 * @description Locations wrapper
 * @example { }
 */

.locations1 { overflow: hidden; }
 .locations1-wrap { display: flex; }
  .locations1 .accordion1 { flex: none; width: 430px; margin: 0 50px 0 0; padding: var(--s3) 0; }
  .locations1-globe { flex-grow: 1; width: 767px; margin: 0 -100px 0 0; }
   .locations1-globe .img1 { background-color: transparent; }

@media screen and (max-width: 1023px) {
.locations1 .accordion1 { width: 100%; margin: 0; padding: 0; }
.locations1-globe { display: none; }
}

/**
 * @name .nav1
 * @description Primary navigation
 */

@media print, screen and (min-width: 1280px) {
.nav1 { display: flex; align-items: center; transform-origin: 100% 50%; transition: transform var(--td, 0.2s); }
 .nav1-overlay { display: none; }
 .nav1 ul { display: flex; list-style: none; margin-bottom: 0; padding: 0; }
  .nav1 li { margin-bottom: 0; font-size: 16px; }
  .nav1 li ~ li { margin-left: 35px; }
   .nav1 li:before { display: none; }
   .nav1 a { display: block; }
   .nav1 em { position: absolute; left: -10001px; top: -10001px; }
   .nav1 ul ul { display: none; }
 .nav1-main { }
  .nav1-main a { position: relative; color: inherit; }
  .nav1-main a:hover { color: var(--c_d1x); }
   .nav1-main a:before { position: absolute; left: -2px; right: -2px; bottom: -2px; content: ''; height: 2px; background: var(--c_a3); transform: scaleX(0); transition-property: transform; }
   .nav1-main a:hover:before, .nav1-main li.is-active > a:before { transform: scaleX(1); }
  .nav1-main i { display: none; }
 .nav1-side { margin-left: 40px; }
  .nav1-side li ~ li { margin-left: 10px; }
}
@media print {
.nav1-side[class] { display: none; }
}
@media screen and (max-width: 1279px) {
.nav1 { display: none; position: absolute; left: var(--nx); top: 100%; right: var(--nx); padding: var(--sx); border-top: 1px solid #e6e6e6; box-shadow: 0 5px 10px rgba(0,0,0,0.15); background: #000; }
.is-nav-active .nav1 { display: block; }
 .nav1 ul { padding: 0; }
  .nav1 li { margin-bottom: 20px; font-size: 16px; line-height: 20px; }
   .nav1 li:before { display: none; }
   .nav1 a { }
   .nav1 em { display: none; }
   .nav1 li:not(.is-open) ul { display: none; }
 .nav1-main { margin-bottom: 30px; }
  .nav1-main a { display: inline-block; position: relative; color: inherit; vertical-align: top; }
  .nav1-main a:hover { color: var(--c_d1x); }
   .nav1-main a:before { position: absolute; left: -2px; right: -2px; bottom: -2px; content: ''; height: 2px; background: var(--c_a3); transform: scaleX(0); transition-property: transform; }
   .nav1-main .is-active > a:before { transform: scaleX(1); }
  .nav1-main i { display: inline-block; width: 20px; height: 20px; font-size: 12px; vertical-align: top; text-align: center; }
   .nav1-main .is-open > i:before { content: '\e910'; }
  .nav1-main ul { margin: var(--sx) var(--nx) 0; padding: var(--sx); background: #5ac7f0; }
   .nav1-main ul a:before { background: rgba(255,255,255,0.65); }
 .nav1-side { display: flex; }
 .nav1-side li { margin-bottom: 0; }
 .nav1-side li ~ li { margin-left: 20px; }
}

/**
 * @name .nav2
 * @description Subnavigation
 */

.nav2 { background: #5bc9f2; text-align: center; transition: transform var(--td, 0.2s); }
 .nav2:before { position: absolute; left: 0; right: 0; top: 0; bottom: 0; content: ''; background: url(../images/pattern1.png) 50% -50%; background-size: 300px 300px; opacity: 0.05; pointer-events: none; }
 .nav2-wrap { display: flex; position: relative; justify-content: center; max-width: 100%; height: 160px; padding: 20px 0; flex-direction: column; transition: transform var(--td, 0.2s); }
  .nav2-title { margin-bottom: 20px; transform-origin: 50% 0; transition: transform var(--td, 0.2s); }
  .nav2-entries { display: flex; justify-content: center; padding: 0; transform-origin: 50% 50%; transition: transform var(--td, 0.2s); }
   .nav2-entries li { margin-bottom: 0; font-size: 15px; }
   .nav2-entries li ~ li { margin-left: 40px; }
    .nav2-entries li:before { display: none; }
    .nav2-entries a { display: block; position: relative; color: inherit; }
    .nav2-entries a:hover { color: var(--c_d1x); }
     .nav2-entries a:before { position: absolute; left: -2px; right: -2px; bottom: -2px; content: ''; height: 2px; background: rgba(255,255,255,0.65); transform: scaleX(0); transition-property: transform; }
     .nav2-entries a:hover:before, .nav2-entries li.is-active > a:before { transform: scaleX(1); }

@media screen and (max-width: 1279px) {
.nav2 { display: none; }
}

@media print {
.nav2 { display: none; }
}
@media screen and (max-width: 1279px) {
.nav2 { display: none; position: absolute; left: var(--nx); top: 100%; right: var(--nx); padding: var(--sx); border-top: 1px solid #e6e6e6; box-shadow: 0 5px 10px rgba(0,0,0,0.15); background: #000; }
.is-nav-active .nav2 { display: block; }
 .nav2 ul { padding: 0; }
  .nav2 li { margin-bottom: 20px; font-size: 16px; line-height: 20px; }
   .nav2 li:before { display: none; }
   .nav2 a { }
   .nav2 em { display: none; }
   .nav2 li:not(.is-open) ul { display: none; }
 .nav2-main { margin-bottom: 30px; }
  .nav2-main a { display: inline-block; position: relative; color: inherit; vertical-align: top; }
  .nav2-main a:hover { color: var(--c_d1x); }
   .nav2-main a:before { position: absolute; left: -2px; right: -2px; bottom: -2px; content: ''; height: 2px; background: var(--c_a3); transform: scaleX(0); transition-property: transform; }
   .nav2-main .is-active > a:before { transform: scaleX(1); }
  .nav2-main i { display: inline-block; width: 20px; height: 20px; font-size: 12px; vertical-align: top; text-align: center; }
   .nav2-main .is-open > i:before { content: '\e910'; }
  .nav2-main ul { margin: var(--sx) var(--nx) 0; padding: var(--sx); background: #5ac7f0; }
   .nav2-main ul a:before { background: rgba(255,255,255,0.65); }
 .nav2-side { display: flex; }
 .nav2-side li { margin-bottom: 0; }
 .nav2-side li ~ li { margin-left: 20px; }
}

/**
 * @name .nav3
 * @description Subnavigation
 * added by Jonathan and Julian
 */

.nav3 { background: #5bc9f2; text-align: center; transition: transform var(--td, 0.2s); }
 .nav3:before { position: absolute; left: 0; right: 0; top: 0; bottom: 0; content: ''; background: url(../images/pattern1.png) 50% -50%; background-size: 300px 300px; opacity: 0.05; pointer-events: none; }
 .top1 .nav3 { position: relative; z-index: 1; }
 .top1.-compact .nav3 { transform: translateY(-90px); }



/**
 * @name .number1
 * @description Featured number
 * @example { }
 */

.number1 { font: 700 30px/1 serif; font-family: var(--ff_2); letter-spacing: 0.15em; text-transform: uppercase; text-align: center; }
.number1.-large { font-size: 40px; }
 .number1 big { display: block; font: inherit; font-size: 2.35em; }

@media screen and (max-width: 599px) {
.number1.-large { font-size: 30px; }
}

/**
 * @name .overlay1
 * @description Nav overlay
 * @example { }
 */

.overlay1 { display: none; position: fixed; left: 0; top: 0; right: 0; bottom: -100px; z-index: 100; background: #fff; opacity: 0.8; }
.is-nav-active .overlay1 { display: block; }

/**
 * @name .partners1
 * @description Partners carousel
 * @example { }
 */

.partners1 {  }
 .partners1-main { padding: var(--s2) 0; border: 1px solid; border-width: 1px 0; border-color: var(--c_b2); }
  .partners1-title { margin: -15px 0 30px; font: inherit; font-size: 15px; font-weight: 700; text-transform: none; text-align: center; }
  .partners1-items { padding: 0 50px; font-size: 0; letter-spacing: -1em; }
  .partners1-items:not(.slick-slider) { padding: 0; overflow: auto; white-space: nowrap; }
   .partners1-items figure { display: inline-block; width: 16.66%; margin: 0; padding: 0 10px; font-size: 16px; letter-spacing: 0; vertical-align: top; text-align: center; white-space: normal }
    .partners1-items figure a { display: block; }
    .partners1-items figure a:hover { opacity: 0.9; }
     .partners1-items figure img { display: block; margin: 0 auto; max-height: 70px; }
   .partners1 .slick-dots { display: none !important; }
   .partners1 .slick-track { margin: 0 auto; }
 .partners1-more { margin-bottom: var(--s3); text-align: center; }
 .partners1-more:last-child { margin-top: var(--s3); }

@media screen and (max-width: 1280px) {
.partners1 figure { width: 20%; }
}
@media screen and (max-width: 1023px) {
.partners1 figure { width: 33.33%; }
}
@media screen and (max-width: 719px) {
.partners1 figure { width: 50%; }
}
@media screen and (max-width: 359px) {
.partners1 figure { width: 100%; }
}

@media print {
.partners1 .slick-track { display: flex; justify-content: center; flex-wrap: wrap; margin-top: -20px; }
 .partners1 .slick-track > * { width: 25%; margin: 20px 0 0; }
}

/**
 * @name .peel1
 * @description Section peeling effect
 * @example { }
 */

.peel1 { margin-bottom: 0; }
 .peel1-section { margin-bottom: 0; }

@media screen and (min-width: 720px) {
 .peel1-section { position: relative; height: 200vh; margin-top: -100vh; pointer-events: none; }
 .peel1-section:first-child { margin-top: 0; }
 .peel1-section:last-child { height: 100vh; }
  .peel1-section > * { pointer-events: auto; }
  .peel1-section > .hero1 { position: -webkit-sticky; position: sticky; top: 0; min-height: 100vh; transform: translateZ(0); backface-visibility: hidden; }
}

@media print {
.peel1 { border-top: 1px solid var(--c_b2); }
.header2 + .peel1 { border-top-width: 0; }
 .peel1 .hero1 { border-top-width: 0; }
}

/**
 * @name .photos1
 * @description Description
 * @example { }
 */

.photos1 { display: flex; flex-wrap: wrap; }
 .photos1-entry { flex-basis: 50%; flex-grow: 1; margin-bottom: 0; }

@media screen and (max-width: 719px) {
.photos1 { display: block; }
}

/**
 * @name .project1
 * @description Project banner
 * @example { }
 */

.project1 { display: flex; margin-bottom: var(--s2); padding: 19px 29px; border: 1px solid; border-color: var(--c_b2); }
 .project1 > * { display: flex; flex-direction: column; justify-content: center; margin-bottom: 0; }
 .project1-logo { flex: none; width: 140px; }
 .project1-links { flex: none; max-width: 250px; margin-left: 30px; padding-left: 30px; border-left: 1px solid var(--c_b2); font-size: 13px; }
  .project1-links .socials2 { margin-bottom: 15px; }
 .project1-details { flex-grow: 1; margin-left: 30px; padding-left: 30px; border-left: 1px solid var(--c_b2); font-size: 17px; line-height: 1.53; font-weight: bold; }
  .project1-details em { display: block; padding-bottom: 5px; font-size: 14px; font-weight: normal; }

@media screen and (max-width: 719px) {
.project1 { flex-wrap: wrap; }
 .project1-details { width: 100%; margin: var(--sy) 0 0; padding-left: 0; border-left-width: 0; }
}
@media screen and (max-width: 599px) {
.project1 { display: block; padding: var(--sx); }
 .project1-links { max-width: 100%; margin: var(--sy) 0 0; padding-left: 0; border-left-width: 0; }
}

/**
 * @name .promo1
 * @description Partners / quote block
 * @example { }
 */

.promo1 { position: relative; max-width: 700px; padding-top: 30px; }
 .promo1:after { position: absolute; left: 0; top: 0; content: ''; width: 170px; height: 1px; border-top: 1px solid; color: var(--c_a2); }
 .promo1-title { margin-bottom: 15px; }
 .promo1-action { margin-top: var(--s1); }
 .promo1 blockquote { padding-top: 0; padding-left: 50px; }
  .promo1 blockquote:after { display: none; }

/**
 * @name .promo2
 * @description Blue partner promo block
 * @example { }
 */

.promo2 { margin: 0; padding: var(--s3) 0; background: linear-gradient(to right, #04507c, #46aad3); color: #fff; text-align: center; }
 .promo2-wrap { }
  .promo2-action { margin-top: var(--s1); }

@media print {
.promo2 { border: 1px solid var(--c_b2); border-width: 1px 0; background: none; color: inherit; }
.content1 > .promo2:first-child { border-top-width: 0; }
 .hero1-background { display: none; }
}


/**
 * @name .reach1
 * @description Reach widget
 * @example { }
 */

.reach1 { position: relative; overflow: hidden; padding: var(--s4) 0; background: #1b709b; color: #fff; text-align: center; }
 .reach1-background { position: absolute; left: 0; right: 0; top: 0; bottom: 0; margin: 0; }
 .reach1-wrap { position: relative; }
  .reach1-title { margin-bottom: var(--s2); }
  .reach1-entries { --column: 33.33%; --gap: 60px; justify-content: center; }
   .reach1-entry { position: relative; line-height: 1.27; }
   .reach1-entry + .reach1-entry:before { position: absolute; left: calc(var(--gap) / -2); top: 0; bottom: 0; content: ''; width: 1px; background: var(--c_a2); opacity: 0.5; }
  .reach1-note { margin: var(--s2) 0 calc(var(--s3) * -1) !important; font-size: 14px; opacity: 0.5; }

@media screen and (min-width: 1024px) {
[data-parallax] .reach1-wrap { --y1: 0px; --y2: -100px; --y: calc(var(--y1) + (var(--y2) - var(--y1)) * var(--parallax, 0) ); transform: translateY(var(--y)); will-change: transform; }
[data-parallax^="1/"] .reach1-wrap { --y1: 75px; --y2: -75px; }
}
@media screen and (max-width: 719px) {
.reach1-entries { --column: 100%; --row-gap: 0px; position: relative; padding: 0 var(--sx); }
.reach1-entries.slick-slider { --gap: 0; margin: 0; border: 1px solid var(--c_a2); border-width: 1px 0; }
 .reach1-entries .slick-list { border-width: 0; }
  .reach1-entry { margin: 0 0 -1px; padding: 30px 20px; border: 1px solid var(--c_a2); border-width: 1px 0; }
  .reach1-entry.slick-slide { border-width: 0; }
  .reach1-entry:before { display: none; }
  .reach1-entries .slick-arrow[class] { background: none !important; color: var(--c_a2) !important; }
  .reach1-entries .slick-dots { display: none !important; }
}

@media print {
.reach1 { background: none; color: inherit; }
 .reach1-background { display: none; }
}

/**
 * @name .signup1
 * @description Signup form
 * @example { }
 */

.signup1 {  }
 .signup1-title { margin-bottom: 15px; }
 .signup1-fields { position: relative; }
  .signup1-fields input[type] { height: 30px; padding: 5px 70px 4px 0; border-width: 0 0 1px; background: transparent; font-size: 14px; }
  .signup1-fields button { position: absolute; right: 0; top: 0; width: auto; min-width: 0; min-height: 30px; padding: 0; border: none; background: none; font-size: 14px; line-height: 30px; font-weight: bold; text-transform: none; }
  .signup1-fields button:hover { background: none; color: inherit; }

/**
 * @name .skips1
 * @description Skip links
 */

.skips1 { position: absolute; top: 100%; left: 0; z-index: 9999; list-style: none; width: 100%; height: 0; margin: -30px 0 0; padding: 0; text-align: center; }
 .skips1 li { position: absolute; left: 0; top: 0; width: 100%; height: 0; font: bold 50px/1 Calibri,Myriad Pro,Arial,Helvetica Neue,Helvetica,sans-serif; }
  .skips1 li:before { display: none;  }
  .skips1 li a { display: inline-block; position: absolute; left: -10001px; margin: 0 auto; padding: 20px 30px; border: 1px dotted #fff; border-color: rgba(255,255,255,0.7); border-radius: 20px;  background: #333; background: rgba(0,0,0,0.6); color: #fff; text-align: center; text-decoration: none; outline: none; }
  .skips1 li a:focus, .skips1 li a:active { position: relative; left: 0; }

@media print, screen and (max-width: 1279px) {
.skips1 { display: none; }
}

/**
 * @name .slick
 * @description Slick slider defaults
 */

.slick-slide { margin-bottom: 0; border-top-width: 0; outline: none; }
 .slick-slide * { outline: none; }
.slick-arrow[class] { position: absolute; left: 0; top: 50%; z-index: 10; width: 2em; min-width: 0; height: 2em; margin: -1em 0 0; min-height: 0; padding: 0; border: none; border-radius: 0; background: transparent; color: #aaa; font: 14px/2 Icons; text-align: center; text-indent: -10001px; }
.slick-next[class] { left: auto; right: 0; }
 .slick-arrow:before { position: absolute; left: 0; right: 0; top: 0; bottom: 0; content: '\e91d'; text-indent: 0; }
 .slick-next:before { content: '\e91c'; }
.slick-arrow.slick-disabled { opacity: 0.2; pointer-events: none; }
.slick-dots { position: absolute; left: 0; bottom: 0; right: 0; padding: 0; font-size: 0; letter-spacing: -1em; text-align: center; }
 .slick-dots li { display: inline-block; margin: 0 5px; vertical-align: top; }
  .slick-dots li:before { display: none; }
  .slick-dots button { overflow: hidden; width: 8px; min-width: 0; min-height: 0; height: 8px; padding: 0; border: 1px solid !important; border-radius: 50%; background: currentColor; color: var(--c_b2); font-size: 0; line-height: 1; text-indent: 321%; white-space: nowrap; }
  .slick-dots button:hover { background: currentColor; color: var(--d1); }
  .slick-dots .slick-active button { color: var(--c_d1); }

@media print {
 .slick-track { width: auto !important; max-width: 100%; transform: none !important; }
  .slick-track > * { width: auto !important; }
  .slick-cloned { display: none; }
 .slick-arrow, .slick-dots { display: none !important; }
}

/**
 * @name .socials1
 * @description Red sharing icons
 * @example { }
 */

.socials1 { display: flex; align-items: center; }
.socials1.-side { justify-content: flex-end; margin: 0; padding: var(--sy) var(--s1) 0; }
 .socials1-label { margin: 0 15px 0 0; font-size: 13px; font-weight: bold; }
 .socials1-items { --gap: 10px; --row-gap: 0px; }
  .socials1-items li { }
   .socials1-items a { width: 1em; height: 1em; border-radius: 50%; background: var(--c_a1); color: var(--c_i1); font-size: 26px; line-height: 1em; text-align: center; }
   .socials1-items a:hover { background-color: var(--c_a1x); color: var(--c_i1); }
    .socials1-items a:before { display: block; font-size: 0.5em; transition: none; }

@media screen and (min-width: 1024px) {
.socials1[data-aios] .socials1-label, .socials1[data-aios] .socials1-items li { transition-property: transform, opacity; }
.socials1[data-aios] .socials1-items li { transition-delay: 0.05s; }
.socials1[data-aios] .socials1-items li:nth-child(2) { transition-delay: 0.1s; }
.socials1[data-aios] .socials1-items li:nth-child(3) { transition-delay: 0.15s; }
.socials1[data-aios] .socials1-items li:nth-child(4) { transition-delay: 0.2s; }
.socials1[data-aios] .socials1-items li:nth-child(5) { transition-delay: 0.25s; }
.socials1[data-aios]:not(.is-aiosed) .socials1-label, .socials1[data-aios]:not(.is-aiosed) .socials1-items li { transform: translateX(20px); opacity: 0; }
}

@media print {
.socials1-items a { box-shadow: inset 0 0 0 1px; background: #fff; color: var(--c_a1); }
}

/**
 * @name .socials2
 * @description Project social icons
 * @example { }
 */

.socials2 { display: flex;align-items: center; margin: 0 0 var(--sy); }
 .socials2-label { margin: 0 15px 0 0; font-size: 13px; font-weight: bold; }
 .socials2-items { --gap: 10px; --row-gap: 0px; }
  .socials2-items li { }
   .socials2-items a { width: 1em; height: 1em; border-radius: 50%; box-shadow: inset 0 0 0 1px var(--c_b2); font-size: 32px; line-height: 1em; text-align: center; }
   .socials2-items a:hover { box-shadow: inset 0 0 0 1px var(--c_a1x); }
    .socials2-items a:before { display: block; font-size: 0.5em; transition: none; }

/**
 * @name .subheader1
 * @description Minor header with paragraph
 * @example { }
 */

.subheader1 { margin-bottom: var(--s2); }
 .subheader1-title { margin-bottom: 5px; }
 .subheader1 p { margin-bottom: 5px; }

/**
 * @name .svgdefs1
 * @description SVG definitions container
 */

.svgdefs1 { position: absolute; left: 0; top: 0; visibility: hidden; }

/**
 * @name .table1
 * @description Responsive tables
 */

@media screen and (max-width: 719px) {

.table1.-scroll { position: relative; margin-right: -20px; margin-left: -20px; margin-left: calc(var(--sx) * -1); margin-right: calc(var(--sx) * -1); }
 .table1.-scroll:after { position: absolute; right: 20px; bottom: -16px; content: ''; width: 18px; height: 24px; background: url(../images/table1-icon1.png) no-repeat; background-size: contain; opacity: 0.75; }
 .table1.-scroll:after { animation: swipeleft 2s infinite; }
 .table1.-scroll > .wrap { overflow: auto; overflow-y: hidden; padding: 0; -webkit-overflow-scrolling: touch; }
  .table1.-scroll table { min-width: 680px; }
   .table1.-scroll table th:first-child, .table1.-scroll table td:first-child { padding-left: 20px; padding-left: var(--sx); }
   .table1.-scroll table th:last-child, .table1.-scroll table td:last-child { padding-right: 40px !important; }

.table1.-fold { }
 .table1.-fold table { display: block; width: auto; margin-right: -20px; margin-left: -20px; margin-left: calc(var(--sx) * -1); margin-right: calc(var(--sx) * -1); }
  .table1.-fold table thead { display: none; }
  .table1.-fold table tbody { display: block; }
  .table1.-fold table tr { display: block; width: 100%; margin: 0; padding: 10px 20px 15px; padding-left: var(--sx); padding-right: var(--sx); border: 1px solid #e6e6e6; border-width: 1px 0; }
  .table1.-fold table tr + tr { margin-top: -1px; }
   .table1.-fold table th, .table1.-fold table td { display: block; margin-bottom: 3px; margin-top: 3px; padding: 0; border: none !important; }
   .table1.-fold table [data-th]:before { display: block; content: attr(data-th) ':'; margin: 10px 0 0; font-size: 10px; font-weight: bold; text-transform: uppercase; }

@keyframes swipeleft { 0% { opacity: 0; transform: translate3d(0,0,0); } 60% { transform: translate3d(-20px,0,0); opacity: 0.75; } 80% { opacity: 0.75; } 100% { opacity: 0; transform: translate3d(-20px,0,0); } }
}

/**
 * @name .tick1
 * @description Custom radio/checkbox
 */

.nf-form-content .listcheckbox-wrap input,
.tick1 { position: absolute; left: -10001px; }

.nf-form-content .listcheckbox-wrap input + label,
.tick1 + label { display: inline-block; padding-left: 50px; vertical-align: top; margin-left: 0!important;}

.nf-form-content .listcheckbox-wrap input + label:before,
 .tick1 + label:before { float: left; content: ''; width: 30px; height: 30px; margin: -2px 20px 0 -50px; border: 1px solid var(--c_b2); background: #fff; background-clip: content-box; color: var(--c_a3); font: 18px/28px Icons; vertical-align: top; text-align: center; }

  .nf-form-content .listcheckbox-wrap input[type=radio] + label:before,
 .tick1[type=radio] + label:before { border-radius: 50%; }

  .nf-form-content .listcheckbox-wrap input[type=checkbox]:checked + label:before,
 .tick1[type=checkbox]:checked + label:before { content: '\e91a'; }


  .nf-form-content .listcheckbox-wrap input[type=radio]:checked + label:before,
 .tick1[type=radio]:checked + label:before { padding: 9px; background-color: currentColor; box-shadow: inset 0 0 0 9px #fff; }

/**
 * @name .top1
 * @description Global header
 */

.top1 { --td: 0.2s; position: relative; z-index: 101; margin: 0; pointer-events: none; transform: translateZ(0); }
 .top1 > * { pointer-events: auto; }
 .top1 > :last-child { box-shadow: 0 4px 8px rgba(0,0,0,0.075); }
 .top1-wrap { display: flex; align-items: center; position: relative; z-index: 2; height: 100px; max-width: 100%; margin-bottom: 0; background: #fff; transition: transform var(--td, 0.2s); }
  .top1-logo { margin: 0; line-height: 1; transition: transform var(--td, 0.2s); transform-origin: 0 50%; background: url(../images/logo.png) no-repeat; background-size: contain;}
   .top1-logo a { display: block; color: inherit; width: 180px; height: 38px; }
   .top1-logo a:hover { color: var(--c_d1x); }
    .top1-logo :before, .top1-logo :after { transition: none; }
   .top1-logo img { display: block; }
  .top1-logo span { display: none; }
  .top1-toggler { display: none; }
  .top1 .nav1 { margin-left: auto; }
 .top1 .nav2 { position: relative; z-index: 1; }

@media screen and (min-width: 1340px) {
  .top1-logo a { width: 220px; height: 42px; }
}

@media screen and (min-width: 1280px) {
.top1 { position: -webkit-sticky; position: sticky; top: 0; }
 body.admin-bar .top1 { top: 38px; }
.top1.-compact { }
 .top1.-compact .top1-wrap { transform: translateY(-30px); }
  .top1.-compact .top1-logo { transform: scale(0.6875) translateY(18px); }
  .top1.-compact .top1-toggler { transform: scale(0.6875) translateY(18px); }
  .top1.-compact .nav1 { transform: scale(0.875) translateY(16.5px); }
 .top1.-compact .nav2 { transform: translateY(-90px); }
  .top1.-compact .nav2-wrap { transform: translateY(40px); }
   .top1.-compact .nav2-title { transform: scale(0.6875); }
   .top1.-compact .nav2-entries { transform: scale(0.93) translateY(-25px); }
}
@media screen and (max-width: 1279px) {
.top1 { box-shadow: 0 4px 8px rgba(0,0,0,0.075); }
 .top1 > :last-child { box-shadow: none; }
 .top1-wrap { height: 80px; }
  .top1-logo { font-size: 48px; }
    .top1-logo a {  width: 220px; height: 42px; }
  .top1-toggler { display: block; margin: 0 0 0 auto; font-size: 30px; line-height: 1; }
   .top1-toggler a { color: inherit !important; }
    .is-nav-active .top1-toggler a:before { content: '\e90f'; }
}

@media print {
.top1 { border-bottom: 1px solid #e6e6e6; }
 .top1 > :last-child { box-shadow: none; }
}


/**
 * @name .wrap1
 * @description Standard page wrapper
 */

.wrap1 { margin-bottom: 0; }
 .wrap1-break:first-child { margin-top: 0; }

@media screen and (min-width: 1280px) {
 .wrap1 > blockquote { margin-left: -100px; margin-right: -100px; }
 .wrap1-break { margin: var(--s3) -100px; }
}

/**
 * @name .wrap2
 * @description Bottom background wrapper
 */

.wrap2 { position: relative; overflow: hidden; margin-bottom: 0; background-color: #fff; }
 .wrap2-background { position: absolute; left: 0; bottom: 0; right: 0; margin: 0; }
  .wrap2-background:after { position: absolute; left: 0; right: 0; top: 0; content: ''; height: 250px; background: linear-gradient(rgba(255,255,255,1), rgba(255,255,255,0)); }
 .wrap2-background ~ .wrap2-content { padding-bottom: 30vw; }
 .wrap2.-taller .wrap2-background ~ .wrap2-content { padding-bottom: 50vw; }
 .wrap2.-shorter .wrap2-background ~ .wrap2-content { padding-bottom: 25vw; }
 .wrap2.-shortest .wrap2-background ~ .wrap2-content { padding-bottom: 12.5vw; }
 .wrap2.-nospace .wrap2-background ~ .wrap2-content { padding-bottom: 0; }
 .wrap2-content { position: relative; }

.wrap2.-blue1 { background-color: rgba(218,236,248,1); }
 .wrap2.-blue1 .wrap2-background:after { background: linear-gradient(rgba(218,236,248,1), rgba(218,236,248,0)); }
.wrap2.-blue2 { background-color: rgba(230,246,252,1); }
 .wrap2.-blue2 .wrap2-background:after { background: linear-gradient(rgba(230,246,252,1), rgba(230,246,252,0)); }

@media screen and (max-width: 1023px) {
.wrap2-background:after { height: 40%; max-height: 200px; }
}

@media print {
.wrap2[class] { background-color: transparent; }
 .wrap2-background { display: none; }
 .wrap2[class] .wrap2-background ~ .wrap2-content { padding-bottom: 40px; }
}

/**
 * @name .wrap3
 * @description Blue pattern background
 */

.wrap3 { position: relative; margin-bottom: 0; background: linear-gradient(#2279a3,#0a5985); color: #fff; }
 .wrap3:before { position: absolute; left: 0; right: 0; top: 0; bottom: 0; content: ''; background: url(../images/pattern1.png) 50% -150px; background-size: 300px 300px; opacity: 0.35; pointer-events: none; }
 .wrap3-inner { position: relative; }

@media print {
.wrap3 { border: 1px solid var(--c_b2); border-width: 1px 0; background:green; color: inherit; }
 .wrap3:before { display: none; }
}

/**
 * @name .youtube1
 * @description Youtube ember wrapper
 * @example { }
 */

.youtube1 {  }

/*   ______  _     _ _______ _______  _____  __   _ _______
 *   |_____] |     |    |       |    |     | | \  | |______
 *   |_____] |_____|    |       |    |_____| |  \_| ______|
*/

.button1, [type="submit"], [type="button"], [type="reset"] { --n: var(--c_a1); --h: var(--c_i1); display: inline-block; min-width: 320px; height: auto; min-height: 44px; padding: 10px 28px; border: 2px solid var(--n); border-radius: 6px; background: transparent; color: var(--n); font: 700 18px/20px var(--ff_1); text-align: center; text-transform: uppercase; text-decoration: none !important; outline: none; }
.button1:hover, [type="submit"]:hover, [type="button"]:hover, [type="reset"]:hover { background-color: var(--n); color: var(--h); }

.button1.-yellow { --n: var(--c_a2); --h: var(--c_d1); }
.button1.-small { min-width: 0; min-height: 30px; padding: 4px 19px; border-width: 1px; font-size: 13px; }
.button1.-block { display: block; width: 100%; }

@media screen and (max-width: 359px) {
.button1, [type="submit"], [type="button"], [type="reset"] { display: block; width: 100%; min-width: 0; }
}

.button2 { display: inline-flex; position: relative; min-width: 0; width: 120px; height: 120px; min-height: 0; padding: 10px; border: none; color: #fff !important; font-size: 16px; line-height: 1; text-align: center; text-transform: none; }
 .button2:before { position: absolute; left: 0; right: 0; top: 0; bottom: 0; content: ''; border-radius: 50%; background: var(--c_a1); transition-property: background, transform; }
 .button2:hover:before { background: var(--c_a1x); color: #fff; transform: scale(1.05); }
 .button2 > span { position: relative; transition: transform .2s ease; will-change: transform; }
 .button2 > span:last-child { margin: auto; }
  .button2 > span i { display: block; margin: 7px 0; font-size: 0.8em; animation: button2bounce 1s linear infinite; animation-play-state: paused; }
  .button2:hover > span i { animation-play-state: running; }
  .button2 > span i:first-child { margin-top: -10px; }
  .button2 > span i:last-child { margin-bottom: -10px; }

@keyframes button2bounce { 0%, 100% { transform: translateY(0); } 25% { transform: translateY(-2px); } 75% { transform: translateY(2px); } }


/*   _____ ______  ______  __   _ _______
 *     |   |       |     | | \  | |______
 *   __|__ |_____  |_____| |  \_| ______|
*/

[class^="icon-"],[class*=" icon-"] { display: inline-block; font-family: 'Icons' !important; speak: none; font-style: normal; font-weight: normal; font-variant: normal; text-transform: none; }
 [class^="icon-"] i, [class*=" icon-"] i { font: inherit; }
 [class^="icon-"] span, [class*=" icon-"] span { display: none; }

.icon-logo:before { content: "\e90d"; }
.icon-logo:after { content: "\e90e"; margin-left: -1.97265625em; }
.icon-adapt:before { content: "\e900"; }
.icon-capacity:before { content: "\e901"; }
.icon-cocreate:before { content: "\e902"; }
.icon-engage:before { content: "\e903"; }
.icon-engagement:before { content: "\e904"; }
.icon-feedback:before { content: "\e905"; }
.icon-innovate:before { content: "\e906"; }
.icon-learn:before { content: "\e907"; }
.icon-listen:before { content: "\e908"; }
.icon-research:before { content: "\e909"; }
.icon-social:before { content: "\e90a"; }
.icon-location:before { content: "\e90b"; }
.icon-past:before { content: "\e90c"; }
.icon-close:before { content: "\e90f"; }
.icon-minus:before { content: "\e911"; }
.icon-plus:before { content: "\e912"; }
.icon-menu:before { content: "\e913"; }
.icon-external:before { content: "\e914"; }
.icon-link:before { content: "\e915"; }
.icon-up:before { content: "\e910"; }
.icon-down:before { content: "\e91b"; }
.icon-right:before { content: "\e91c"; }
.icon-left:before { content: "\e91d"; }
.icon-quote:before { content: "\e91e"; }
.icon-handshake:before { content: "\e916"; }
.icon-globe:before { content: "\e917"; }
.icon-circle:before { content: "\e918"; }
.icon-dot:before { content: "\e919"; }
.icon-check:before { content: "\e91a"; }
.icon-email:before { content: "\e91f"; }
.icon-instagram:before { content: "\e920"; }
.icon-linkedin:before { content: "\e921"; }
.icon-youtube:before { content: "\e922"; }
.icon-twitter:before { content: "\e923"; }
.icon-facebook:before { content: "\e924"; }


/*   ______  _______ _______ _______ _     _ _      _______ _______
 *   |     \ |______ |______ |_____| |     | |         |    |______
 *   |_____/ |______ |       |     | |_____| |_____    |    ______|
*/

*, *:before, *:after { margin: 0; padding: 0; color: inherit; transition: none 0.35s; }

html { overflow-y: scroll; -webkit-text-size-adjust: 100%; -ms-text-size-adjust: 100%; }
body { font: inherit; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }

div, form, blockquote, article, aside, details, figcaption, figure, footer, header, menu, nav, main, section, address, ul, ol, dl, dd, dt, p, table, pre, h1, h2, h3, h4, h5, h6 { display: block; margin-bottom: 1rem; margin-bottom: var(--sy); }
body > :not(.root1), body > :not(.root1) div, body > :not(.root1) form { margin-bottom: 0; }

@page { margin: 40px; }

@media print {
 body { width: 1024px; margin: 0 auto; background: #fff; }
}

/* forms */

label { cursor: pointer; vertical-align: middle; }
label:first-child { display: block; margin: 0 0 5px; }
 label em { color: var(--c_a1); font-style: inherit; }
input[type=text], input[type=password], input[type=search], input[type=email], input[type=tel], textarea, select { width: 100%; height: 50px; padding: 14px 19px; border: 1px solid #ccc; border-color: var(--c_b2); border-radius: 0; background: #fff; vertical-align: top; font: inherit; line-height: 20px; -webkit-appearance: none; -moz-appearance: none; outline: none; }
input[type="checkbox"], input[type="radio"] { padding: 0; }
input::-ms-clear { display: none; }
textarea { overflow: auto; height: auto; padding: 14px 19px; resize: vertical; }
textarea.autoresize { min-height: 40px; max-height: 160px; }
select { padding: 13px 35px 13px 18px; background: #fff url(../images/select1.png) 100% 50% no-repeat; line-height: normal; -webkit-appearance: none; -moz-appearance: none; text-indent: 1px; text-overflow: ''; }
select::-ms-expand { display: none; }
.firefox select { padding-left: 13px; }
button, input[type="submit"], input[type="button"], input[type="reset"] { overflow: visible; cursor: pointer; -webkit-appearance: button; } button::-moz-focus-inner { padding: 0; border: none; }
button[disabled], input[disabled] { cursor: default; }

::-webkit-input-placeholder { color: var(--c_p1); font-style: normal; }
:-ms-input-placeholder { color: var(--c_p1); font-style: normal; }
::-moz-placeholder { color: var(--c_p1); font-style: normal; }
select:invalid, select.is-placeholder { color: var(--c_p1); }

.is-invalid:invalid, .is-invalid:invalid + label, .is-invalid:invalid + label:before { border-color: var(--c_e1); color: var(--c_e1); }
.error-message { display: none; margin-top: 5px; color: var(--c_e1); }
.is-invalid:invalid ~ .error-message, .is-invalid:invalid + label .error-message { display: block; }

/* tables */

table { display: table; border-collapse: collapse; border-spacing: 0; }
 table th, table td { padding: 9px 19px; border: 1px solid #eee; text-align: left; }
 table thead th { font-size: 0.86rem; text-transform: uppercase; }

/* lists */

ul, ol, dd, blockquote { padding-left: 30px; }

ol, ul { list-style: none; counter-reset: ordered; }
 li { margin-bottom: 10px; counter-increment: ordered; }
  ol li:before { position: absolute; content: counter(ordered) '.'; width: 15px; margin: 0 0 0 -30px; text-align: right; }
  ul li:before { float: left; overflow: hidden; content: '\e918'; margin: 0 0 0 -25px; color: var(--c_a3); font: 0.76em/2.1 Icons; }

dt { margin-bottom: 5px; font-weight: bold; }
dd { padding-left: 0; }

/* links */

a { background: transparent; color: var(--c_a1); font-weight: bolder; text-decoration: none; }
a, a:before, a:after, label, button, input[type=submit] { transition-property: border, background, color, box-shadow, opacity; }
a:hover { color: var(--c_a1x); }
 a span { cursor: pointer; }

/* images */

figure { }
 img { max-width: 100%; border-width: 0; box-sizing: content-box; }
 figure img { display: inline-block; vertical-align: top; }
 figcaption { margin-top: 10px; }

.alignright { float: right; margin-left: var(--s2); }
.alignleft { float: left; margin-right: var(--s2); }
 .alignright img, .alignleft img { display: block; max-width: none; }

@media screen and (max-width: 719px) {
.alignright, .alignleft { float: none; width: 100%; max-width: 100% !important; margin-left: 0; margin-right: 0; }
}

/* other */

blockquote { position: relative; margin: 40px 0; padding: 30px 0 0; } blockquote:first-child { margin-top: 0; }
 blockquote:before { float: left; content: '“'; margin: 0.25em 0 0 -50px; font: 700 58px/0.5 var(--ff_2); }
 blockquote:after { position: absolute; left: 0; top: 0; content: ''; width: 170px; height: 1px; background: currentColor; color: var(--c_a2); }
 cite { display: block; margin-top: 20px; }
pre { padding: 10px; border: 1px solid #ccc; background: #f3f3f3; font: 12px/1.2 Consolas,Monaco,Courier New,monospace; white-space: pre; white-space: pre-wrap; word-wrap: break-word; }
code { padding: 2px 4px; background-color: #f9f2f4; color: #c7254e; font-size: 80%; white-space: nowrap; }
hr { overflow: hidden; width: auto; height: 1px; margin: 20px 0; margin: var(--s1) 0; border: none; height: 1px; background: currentColor; color: var(--c_b2); font-size: 0; }
sup, sub { font-size: 0.6875em; vertical-align: top; } sub { vertical-align: bottom; }
b, strong { font-weight: bolder; }
mark { padding: 0 2px; background-color: #f3f3f3; }

@media print, screen and (max-width: 1279px) {
blockquote { padding-left: 50px; }
}
@media screen and (max-width: 599px) {
blockquote:before { margin-top: 0.15em; }
}

/* first/last margins */

body :last-child { margin-bottom: 0; }

/*   _    _ _______  ______ _______
 *    \  /  |_____| |_____/ |______
 *     \/   |     | |    \_ ______|
*/

/* text styling */

html, h1, h2, h3, h4, h5, h6, blockquote, cite, figcaption, [class*="-ts:"] { font: 17px/1.53 Averta,Helvetica Neue,Helvetica,Arial,sans-serif; font-family: var(--ff_1); letter-spacing: 0; text-transform: none; }
.-ts\:1, h1 { font: 700 40px/1.20 serif; font-family: var(--ff_2); }
.-ts\:2, h2 { font: 400 30px/1.27 sans-serif; font-family: var(--ff_1); text-transform: uppercase; }
.-ts\:3, h3 { font: 700 22px/1.27 sans-serif; font-family: var(--ff_1); text-transform: uppercase; }
.-ts\:4, h4 { font: 700 20px/1.4 sans-serif; font-family: var(--ff_1); }
.-ts\:5, h5 { font: 700 18px/1.4 sans-serif; font-family: var(--ff_1); text-transform: uppercase; }
.-ts\:6, h6 { font-weight: bold; }
.-ts\:7, blockquote { font: 400 32px/1.41 sans-serif; font-family: var(--ff_1); }
.-ts\:8, cite, figcaption { font: 400 15px/1.47 sans-serif; font-family: var(--ff_1); }
.-ts\:9, cite strong { font: 700 15px/1.47 serif; font-family: var(--ff_2); }
.-ts\:10, label:first-child { font: 700 16px/1.2 sans-serif; font-family: var(--ff_1); text-transform: uppercase; }
.-ts\:11 { font: 300 50px/1.1 sans-serif; font-family: var(--ff_1); text-transform: uppercase; }
.-ts\:12 { font-size: 14px; line-height: 1.43; }

@media screen and (max-width: 719px) {
.-ts\:1, h1 { font-size: 30px; }
}
@media screen and (max-width: 599px) {
.-ts\:7, blockquote { font-size: 22px; }
.-ts\:11 { font-size: 30px; line-height: 1.2; }
}

/* input styling */

.-is\:1[type] { padding-left: 0; border: 1px solid #fff; border-width: 0 0 2px; background: transparent; color: inherit; font-weight: 900; } .-is\:1[type]:-ms-input-placeholder { color: #f78d84; }
.-is\:1[type].is-invalid { border-color: #fff; color: #fff; }

/* link styling */

a.-as\:1, .-as\:1 a { box-shadow: 0 0 rgba(0,0,0,0); } a.-as\:1:hover, .-as\:1 a:hover { box-shadow: 0 6px rgba(0,0,0,0.2); }

/* list styling */

ul.-ls\:1, ol.-ls\:1, .-ls\:1 ul, .-ls\:1 ol { padding: 0; }
 .-ls\:1 li { margin-bottom: 0; }
  .-ls\:1 li:before { display: none; }

/* spacing */

[class*="-mb:"],[class*="-my:"]{margin-bottom:30px}[class*="-mt:"],[class*="-my:"]{margin-top:30px}[class*="-nb:"],[class*="-ny:"]{margin-bottom:-30px}[class*="-nt:"],[class*="-ny:"]{margin-top:-30px}[class*="-nl:"],[class*="-nx:"]{margin-left:-30px}[class*="-nr:"],[class*="-nx:"]{margin-right:-30px}[class*="-pb:"],[class*="-py:"],[class*="-pa:"]{padding-bottom:30px}[class*="-pt:"],[class*="-py:"],[class*="-pa:"]{padding-top:30px}[class*="-pl:"],[class*="-px:"],[class*="-pa:"]{padding-left:30px}[class*="-pr:"],[class*="-px:"],[class*="-pa:"]{padding-right:30px}
.-mb\:a,.-my\:a{margin-bottom:auto}.-mt\:a,.-my\:a {margin-top:auto}.-ml\:a,.-mx\:a{margin-left:auto}.-mr\:a,.-mx\:a{margin-right:auto}
.-nb\:y,.-ny\:y{margin-bottom:var(--ny)}.-nt\:y,.-ny\:y{margin-top:var(--ny)}
.-mb\:0,.-my\:0{margin-bottom:0}.-mt\:0,.-my\:0{margin-top:0}.-pb\:0,.-py\:0{padding-bottom:0}.-pt\:0,.-py\:0{padding-top:0}
.-mb\:1,.-my\:1{margin-bottom:var(--s1)}.-mt\:1,.-my\:1{margin-top:var(--s1)}.-nb\:1,.-ny\:1,.-na\:1{margin-bottom: calc(var(--s1) * -1)}.-nt\:1,.-ny\:1,.-na\:1{margin-top: calc(var(--s1) * -1)}.-nl\:1,.-nx\:1,.-na\:1{margin-left: calc(var(--s1) * -1)}.-nr\:1,.-nx\:1,.-na\:1{margin-right: calc(var(--s1) * -1)}.-pb\:1,.-py\:1,.-pa\:1{padding-bottom:var(--s1)}.-pt\:1,.-py\:1,.-pa\:1{padding-top:var(--s1)}.-pl\:1,.-px\:1,.-pa\:1{padding-left:var(--s1)}.-pr\:1,.-px\:1,.-pa\:1{padding-right:var(--s1)}
.-mb\:2,.-my\:2{margin-bottom:var(--s2)}.-mt\:2,.-my\:2{margin-top:var(--s2)}.-nb\:2,.-ny\:2,.-na\:2{margin-bottom: calc(var(--s2) * -1)}.-nt\:2,.-ny\:2,.-na\:2{margin-top: calc(var(--s2) * -1)}.-nl\:2,.-nx\:2,.-na\:2{margin-left: calc(var(--s2) * -1)}.-nr\:2,.-nx\:2,.-na\:2{margin-right: calc(var(--s2) * -1)}.-pb\:2,.-py\:2,.-pa\:2{padding-bottom:var(--s2)}.-pt\:2,.-py\:2,.-pa\:2{padding-top:var(--s2)}.-pl\:2,.-px\:2,.-pa\:2{padding-left:var(--s2)}.-pr\:2,.-px\:2,.-pa\:2{padding-right:var(--s2)}
.-mb\:3,.-my\:3{margin-bottom:var(--s3)}.-mt\:3,.-my\:3{margin-top:var(--s3)}.-nb\:3,.-ny\:3,.-na\:3{margin-bottom: calc(var(--s3) * -1)}.-nt\:3,.-ny\:3,.-na\:3{margin-top: calc(var(--s3) * -1)}.-nl\:3,.-nx\:3,.-na\:3{margin-left: calc(var(--s3) * -1)}.-nr\:3,.-nx\:3,.-na\:3{margin-right: calc(var(--s3) * -1)}.-pb\:3,.-py\:3,.-pa\:3{padding-bottom:var(--s3)}.-pt\:3,.-py\:3,.-pa\:3{padding-top:var(--s3)}.-pl\:3,.-px\:3,.-pa\:3{padding-left:var(--s3)}.-pr\:3,.-px\:3,.-pa\:3{padding-right:var(--s3)}
.-mb\:4,.-my\:4{margin-bottom:var(--s4)}.-mt\:4,.-my\:4{margin-top:var(--s4)}.-nb\:4,.-ny\:4,.-na\:4{margin-bottom: calc(var(--s4) * -1)}.-nt\:4,.-ny\:4,.-na\:4{margin-top: calc(var(--s4) * -1)}.-nl\:4,.-nx\:4,.-na\:4{margin-left: calc(var(--s4) * -1)}.-nr\:4,.-nx\:4,.-na\:4{margin-right: calc(var(--s4) * -1)}.-pb\:4,.-py\:4,.-pa\:4{padding-bottom:var(--s4)}.-pt\:4,.-py\:4,.-pa\:4{padding-top:var(--s4)}.-pl\:4,.-px\:4,.-pa\:4{padding-left:var(--s4)}.-pr\:4,.-px\:4,.-pa\:4{padding-right:var(--s4)}
.-mb\:5,.-my\:5{margin-bottom:var(--s5)}.-mt\:5,.-my\:5{margin-top:var(--s5)}.-nb\:5,.-ny\:5,.-na\:5{margin-bottom: calc(var(--s5) * -1)}.-nt\:5,.-ny\:5,.-na\:5{margin-top: calc(var(--s5) * -1)}.-nl\:5,.-nx\:5,.-na\:5{margin-left: calc(var(--s5) * -1)}.-nr\:5,.-nx\:5,.-na\:5{margin-right: calc(var(--s5) * -1)}.-pb\:5,.-py\:5,.-pa\:5{padding-bottom:var(--s5)}.-pt\:5,.-py\:5,.-pa\:5{padding-top:var(--s5)}.-pl\:5,.-px\:5,.-pa\:5{padding-left:var(--s5)}.-pr\:5,.-px\:5,.-pa\:5{padding-right:var(--s5)}

/* visibility */

@media screen and (max-width:  719px){.-hide\<medium{display:none !important}}
@media screen and (max-width: 1279px){.-hide\<large{display:none !important}}
@media screen and (min-width:  720px){.-hide\>small{display:none !important}}
@media screen and (min-width: 1280px){.-hide\>medium{display:none !important}}

/* max widths */

.-xw\:n { max-width: none; }
.-xw\:1 { max-width: var(--xw_1); } .-xw\:1.-contain { max-width: calc(var(--xw_1) + var(--sx) * 2); }
.-xw\:2 { max-width: var(--xw_2); } .-xw\:2.-contain { max-width: calc(var(--xw_2) + var(--sx) * 2); }
.-xw\:3 { max-width: var(--xw_3); } .-xw\:3.-contain { max-width: calc(var(--xw_3) + var(--sx) * 2); }
.-xw\:4 { max-width: var(--xw_4); } .-xw\:4.-contain { max-width: calc(var(--xw_4) + var(--sx) * 2); }

/* colors */

.-c\:d1, a.-c\:d1h:hover, a:hover .-c\:d1h, .-c\:d1h a:hover, html { color: #034369; color: var(--c_d1); }
.-c\:i1, a.-c\:i1h:hover, a:hover .-c\:i1h, .-c\:i1h a:hover { color: #ffffff; color: var(--c_i1); }
.-c\:a1, a.-c\:a1h:hover, a:hover .-c\:a1h, .-c\:a1h a:hover { color: #ad3b01; color: var(--c_a1); } .-c\:a1x, a.-c\:a1xh:hover, a:hover .-c\:a1xh, .-c\:a1xh a:hover { color: #db4b01; color: var(--c_a1x); }
.-c\:a2, a.-c\:a2h:hover, a:hover .-c\:a2h, .-c\:a2h a:hover { color: #faaf22; color: var(--c_a2); }
.-c\:a3, a.-c\:a3h:hover, a:hover .-c\:a3h, .-c\:a3h a:hover { color: #57c1e9; color: var(--c_a3); }
.-c\:a4, a.-c\:a4h:hover, a:hover .-c\:a4h, .-c\:a4h a:hover { color: #daeefa; color: var(--c_a4); }
.-c\:ix, a.-c\:ixh:hover, a:hover .-c\:ixh, .-c\:ixh a:hover { color: inherit; }
.-c\:ux, a.-c\:uxh:hover, a:hover .-c\:uxh, .-c\:uxh a:hover { color: unset; }

/* families */

.-ff\:1, html { font-family: var(--ff_1); }
.-ff\:2 { font-family: var(--ff_2); }

/* weights */

.-fw\:l { font-weight: 300; }
.-fw\:n, .-fwn a /* WP nav fix */{ font-weight: 400; }
.-fw\:b { font-weight: 700; }
.-fw\:i { font-weight: inherit; }

/* basic css */

.-ta\:l { text-align: left; }
.-ta\:c { text-align: center; }
.-ta\:r { text-align: right; }

.-tt\:u { text-transform: uppercase; }
.-tt\:n { text-transform: none; }

.-us\:n, [toggle], [data-toggle] { -webkit-touch-callout: none; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; }

/* helpers */

[hidden] { display: none !important; }
[toggle],[data-toggle] { cursor: pointer; -webkit-tap-highlight-color: rgba(0,0,0,0); }
.-halt-transitions { transition: none !important; }

@media print {
.-hide\@print { display: none !important; }
[data-equalize] { height: auto !important; min-height: 0 !important; }
}

.notice { border: 1px dashed orange; margin: 0; padding: 40px; background-color: var(--c_a2); }
/* Ninja Forms overrides */
.nf-form-content { margin-left: -5px; margin-right: -5px; }
.nf-form-content div { margin-bottom: 0; }
.nf-form-content div.nf-row { margin-bottom: 20px; }
.nf-form-fields-required { display: none; }

img.aligncenter { display: block; width: auto; margin-left: auto; margin-right: auto;  }
/*   _      _____ ______  _______
 *   |        |   |_____] |______
 *   |_____ __|__ |_____] ______|
/*

/* slick */ .slick-list,.slick-slider,.slick-track{position:relative;display:block}.slick-loading .slick-slide,.slick-loading .slick-track{visibility:hidden}.slick-slider{box-sizing:border-box;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-touch-callout:none;-khtml-user-select:none;-ms-touch-action:pan-y;touch-action:pan-y;-webkit-tap-highlight-color:transparent}.slick-list{overflow:hidden;margin:0;padding:0}.slick-list:focus{outline:0}.slick-list.dragging{cursor:pointer;cursor:hand}.slick-slider .slick-list,.slick-slider .slick-track{-webkit-transform:translate3d(0,0,0);-moz-transform:translate3d(0,0,0);-ms-transform:translate3d(0,0,0);-o-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}.slick-track{top:0;left:0}.slick-track:after,.slick-track:before{display:table;content:''}.slick-track:after{clear:both}.slick-slide{display:none;float:left;height:100%;min-height:1px}[dir=rtl] .slick-slide{float:right}.slick-slide img{display:block}.slick-slide.slick-loading img{display:none}.slick-slide.dragging img{pointer-events:none}.slick-initialized .slick-slide{display:block}.slick-vertical .slick-slide{display:block;height:auto;border:1px solid transparent}.slick-arrow.slick-hidden{display:none}
/* lazysizes */ .lazyload, .lazyloading { opacity: 0; } .js .lazyloaded[class] { opacity: 1; transition: opacity 0.5s !important; }

/*
 * Cookie Consent
 * https://github.com/insites/cookieconsent
 */
.cc-window{opacity:1;transition:opacity 1s ease}.cc-window.cc-invisible{opacity:0}.cc-animate.cc-revoke{transition:transform 1s ease}.cc-animate.cc-revoke.cc-top{transform:translateY(-2em)}.cc-animate.cc-revoke.cc-bottom{transform:translateY(2em)}.cc-animate.cc-revoke.cc-active.cc-bottom,.cc-animate.cc-revoke.cc-active.cc-top,.cc-revoke:hover{transform:translateY(0)}.cc-grower{max-height:0;overflow:hidden;transition:max-height 1s}
.cc-link,.cc-revoke:hover{text-decoration:underline}.cc-revoke,.cc-window{position:fixed;overflow:hidden;box-sizing:border-box;font-family:Helvetica,Calibri,Arial,sans-serif;font-size:16px;line-height:1.5em;display:-ms-flexbox;display:flex;-ms-flex-wrap:nowrap;flex-wrap:nowrap;z-index:9999}.cc-window.cc-static{position:static}.cc-window.cc-floating{padding:2em;max-width:24em;-ms-flex-direction:column;flex-direction:column}.cc-window.cc-banner{padding:1em 1.8em;width:100%;-ms-flex-direction:row;flex-direction:row}.cc-revoke{padding:.5em}.cc-header{font-size:18px;font-weight:700}.cc-btn,.cc-close,.cc-link,.cc-revoke{cursor:pointer}.cc-link{opacity:.8;display:inline-block;padding:.2em}.cc-link:hover{opacity:1}.cc-link:active,.cc-link:visited{color:initial}.cc-btn{display:block;padding:.4em .8em;font-size:.9em;font-weight:700;border-width:2px;border-style:solid;text-align:center;white-space:nowrap}.cc-banner .cc-btn:last-child{min-width:140px}.cc-highlight .cc-btn:first-child{background-color:transparent;border-color:transparent}.cc-highlight .cc-btn:first-child:focus,.cc-highlight .cc-btn:first-child:hover{background-color:transparent;text-decoration:underline}.cc-close{display:block;position:absolute;top:.5em;right:.5em;font-size:1.6em;opacity:.9;line-height:.75}.cc-close:focus,.cc-close:hover{opacity:1}
.cc-revoke.cc-top{top:0;left:3em;border-bottom-left-radius:.5em;border-bottom-right-radius:.5em}.cc-revoke.cc-bottom{bottom:0;left:3em;border-top-left-radius:.5em;border-top-right-radius:.5em}.cc-revoke.cc-left{left:3em;right:unset}.cc-revoke.cc-right{right:3em;left:unset}.cc-top{top:1em}.cc-left{left:1em}.cc-right{right:1em}.cc-bottom{bottom:1em}.cc-floating>.cc-link{margin-bottom:1em}.cc-floating .cc-message{display:block;margin-bottom:1em}.cc-window.cc-floating .cc-compliance{-ms-flex:1 0 auto;flex:1 0 auto}.cc-window.cc-banner{-ms-flex-align:center;align-items:center}.cc-banner.cc-top{left:0;right:0;top:0}.cc-banner.cc-bottom{left:0;right:0;bottom:0}.cc-banner .cc-message{-ms-flex:1;flex:1}.cc-compliance{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-line-pack:justify;align-content:space-between}.cc-compliance>.cc-btn{-ms-flex:1;flex:1}.cc-btn+.cc-btn{margin-left:.5em}
@media print{.cc-revoke,.cc-window{display:none}}@media screen and (max-width:900px){.cc-btn{white-space:normal}}@media screen and (max-width:414px) and (orientation:portrait),screen and (max-width:736px) and (orientation:landscape){.cc-window.cc-top{top:0}.cc-window.cc-bottom{bottom:0}.cc-window.cc-banner,.cc-window.cc-left,.cc-window.cc-right{left:0;right:0}.cc-window.cc-banner{-ms-flex-direction:column;flex-direction:column}.cc-window.cc-banner .cc-compliance{-ms-flex:1;flex:1}.cc-window.cc-floating{max-width:none}.cc-window .cc-message{margin-bottom:1em}.cc-window.cc-banner{-ms-flex-align:unset;align-items:unset}}
.cc-floating.cc-theme-classic{padding:1.2em;border-radius:5px}.cc-floating.cc-type-info.cc-theme-classic .cc-compliance{text-align:center;display:inline;-ms-flex:none;flex:none}.cc-theme-classic .cc-btn{border-radius:5px}.cc-theme-classic .cc-btn:last-child{min-width:140px}.cc-floating.cc-type-info.cc-theme-classic .cc-btn{display:inline-block}
.cc-theme-edgeless.cc-window{padding:0}.cc-floating.cc-theme-edgeless .cc-message{margin:2em 2em 1.5em}.cc-banner.cc-theme-edgeless .cc-btn{margin:0;padding:.8em 1.8em;height:100%}.cc-banner.cc-theme-edgeless .cc-message{margin-left:1em}.cc-floating.cc-theme-edgeless .cc-btn+.cc-btn{margin-left:0}
.cc-theme-edgeless.cc-window { padding: 20px 0 20px 0; }
.cc-link { display: inline; }
