@charset "UTF-8";
/*
 * Web Fonts from colophon-foundry.org
 *
 * The fonts included in this stylesheet are subject to the End User License you purchased
 * from Colophon Foundry. The fonts are protected under domestic and international trademark and
 * copyright law. You are prohibited from modifying, reverse engineering, duplicating, or
 * distributing this font software.
 *
 * (c) 2018 Colophon Foundry
 *
 * Licenced to Susan Montgomery Hampton
 */
/* VALUE SANS */
@import url("https://fast.fonts.net/t/1.css?apiType=css&projectid=2751a199-3f22-46dc-a2b0-ea53e0ed3c6e");
@import url("https://use.typekit.net/ydo8mnm.css");
@import 'vendors/splidejs/themes/splide-default.min.css';
@font-face {
  font-family: "value-regular";
  src: url("vendors/fonts/value-regular.eot");
  src: url("vendors/fonts/value-regular.eot?#iefix") format("embedded-opentype"), url("vendors/fonts/value-regular.woff") format("woff"), url("vendors/fonts/value-regular.woff2") format("woff2"), url("vendors/fonts/value-regular.ttf") format("truetype");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "value-italic";
  src: url("vendors/fonts/value-italic.eot");
  src: url("vendors/fonts/value-italic.eot?#iefix") format("embedded-opentype"), url("vendors/fonts/value-italic.woff") format("woff"), url("vendors/fonts/value-italic.woff2") format("woff2"), url("vendors/fonts/value-italic.ttf") format("truetype");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "value-medium";
  src: url("vendors/fonts/value-medium.eot");
  src: url("vendors/fonts/value-medium.eot?#iefix") format("embedded-opentype"), url("vendors/fonts/value-medium.woff") format("woff"), url("vendors/fonts/value-medium.woff2") format("woff2"), url("vendors/fonts/value-medium.ttf") format("truetype");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "value-medium-italic";
  src: url("vendors/fonts/value-medium-italic.eot");
  src: url("vendors/fonts/value-medium-italic.eot?#iefix") format("embedded-opentype"), url("vendors/fonts/value-medium-italic.woff") format("woff"), url("vendors/fonts/value-medium-italic.woff2") format("woff2"), url("vendors/fonts/value-medium-italic.ttf") format("truetype");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "value-bold";
  src: url("vendors/fonts/value-bold.eot");
  src: url("vendors/fonts/value-bold.eot?#iefix") format("embedded-opentype"), url("vendors/fonts/value-bold.woff") format("woff"), url("vendors/fonts/value-bold.woff2") format("woff2"), url("vendors/fonts/value-bold.ttf") format("truetype");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "value-bold-italic";
  src: url("vendors/fonts/value-bold-italic.eot");
  src: url("vendors/fonts/value-bold-italic.eot?#iefix") format("embedded-opentype"), url("vendors/fonts/value-bold-italic.woff") format("woff"), url("vendors/fonts/value-bold-italic.woff2") format("woff2"), url("vendors/fonts/value-bold-italic.ttf") format("truetype");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "value-black";
  src: url("vendors/fonts/value-black.eot");
  src: url("vendors/fonts/value-black.eot?#iefix") format("embedded-opentype"), url("vendors/fonts/value-black.woff") format("woff"), url("vendors/fonts/value-black.woff2") format("woff2"), url("vendors/fonts/value-black.ttf") format("truetype");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}
/* VALUE SERIF */
@font-face {
  font-family: "value-serif-bold";
  src: url("vendors/fonts/value-serif-bold.eot");
  src: url("vendors/fonts/value-serif-bold.eot?#iefix") format("embedded-opentype"), url("vendors/fonts/value-serif-bold.woff") format("woff"), url("vendors/fonts/value-serif-bold.woff2") format("woff2"), url("vendors/fonts/value-serif-bold.ttf") format("truetype");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}
/* MARYDALE */
@font-face {
  font-family: "Marydale W01 Bold";
  src: url("vendors/fonts/a817290e-8802-4a51-b6dd-81b0b6760b93.eot?#iefix");
  src: url("vendors/fonts/a817290e-8802-4a51-b6dd-81b0b6760b93.eot?#iefix") format("eot"), url("vendors/fonts/064221d5-1e7d-4283-8f8b-432c8a0c3d33.woff2") format("woff2"), url("vendors/fonts/7d269198-6a24-422e-958e-5ecc718a5474.woff") format("woff"), url("vendors/fonts/69cf52fa-443b-4570-aab2-623fe142aeb8.ttf") format("truetype");
  font-display: swap;
}
/*
================================
  SITE SETTINGS
================================
*/
[data-aos][data-aos][data-aos-duration="50"], body[data-aos-duration="50"] [data-aos] {
  transition-duration: 50ms;
}

[data-aos][data-aos][data-aos-delay="50"], body[data-aos-delay="50"] [data-aos] {
  transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="50"].aos-animate, body[data-aos-delay="50"] [data-aos].aos-animate {
  transition-delay: 50ms;
}

[data-aos][data-aos][data-aos-duration="100"], body[data-aos-duration="100"] [data-aos] {
  transition-duration: 0.1s;
}

[data-aos][data-aos][data-aos-delay="100"], body[data-aos-delay="100"] [data-aos] {
  transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="100"].aos-animate, body[data-aos-delay="100"] [data-aos].aos-animate {
  transition-delay: 0.1s;
}

[data-aos][data-aos][data-aos-duration="150"], body[data-aos-duration="150"] [data-aos] {
  transition-duration: 0.15s;
}

[data-aos][data-aos][data-aos-delay="150"], body[data-aos-delay="150"] [data-aos] {
  transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="150"].aos-animate, body[data-aos-delay="150"] [data-aos].aos-animate {
  transition-delay: 0.15s;
}

[data-aos][data-aos][data-aos-duration="200"], body[data-aos-duration="200"] [data-aos] {
  transition-duration: 0.2s;
}

[data-aos][data-aos][data-aos-delay="200"], body[data-aos-delay="200"] [data-aos] {
  transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="200"].aos-animate, body[data-aos-delay="200"] [data-aos].aos-animate {
  transition-delay: 0.2s;
}

[data-aos][data-aos][data-aos-duration="250"], body[data-aos-duration="250"] [data-aos] {
  transition-duration: 0.25s;
}

[data-aos][data-aos][data-aos-delay="250"], body[data-aos-delay="250"] [data-aos] {
  transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="250"].aos-animate, body[data-aos-delay="250"] [data-aos].aos-animate {
  transition-delay: 0.25s;
}

[data-aos][data-aos][data-aos-duration="300"], body[data-aos-duration="300"] [data-aos] {
  transition-duration: 0.3s;
}

[data-aos][data-aos][data-aos-delay="300"], body[data-aos-delay="300"] [data-aos] {
  transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="300"].aos-animate, body[data-aos-delay="300"] [data-aos].aos-animate {
  transition-delay: 0.3s;
}

[data-aos][data-aos][data-aos-duration="350"], body[data-aos-duration="350"] [data-aos] {
  transition-duration: 0.35s;
}

[data-aos][data-aos][data-aos-delay="350"], body[data-aos-delay="350"] [data-aos] {
  transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="350"].aos-animate, body[data-aos-delay="350"] [data-aos].aos-animate {
  transition-delay: 0.35s;
}

[data-aos][data-aos][data-aos-duration="400"], body[data-aos-duration="400"] [data-aos] {
  transition-duration: 0.4s;
}

[data-aos][data-aos][data-aos-delay="400"], body[data-aos-delay="400"] [data-aos] {
  transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="400"].aos-animate, body[data-aos-delay="400"] [data-aos].aos-animate {
  transition-delay: 0.4s;
}

[data-aos][data-aos][data-aos-duration="450"], body[data-aos-duration="450"] [data-aos] {
  transition-duration: 0.45s;
}

[data-aos][data-aos][data-aos-delay="450"], body[data-aos-delay="450"] [data-aos] {
  transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="450"].aos-animate, body[data-aos-delay="450"] [data-aos].aos-animate {
  transition-delay: 0.45s;
}

[data-aos][data-aos][data-aos-duration="500"], body[data-aos-duration="500"] [data-aos] {
  transition-duration: 0.5s;
}

[data-aos][data-aos][data-aos-delay="500"], body[data-aos-delay="500"] [data-aos] {
  transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="500"].aos-animate, body[data-aos-delay="500"] [data-aos].aos-animate {
  transition-delay: 0.5s;
}

[data-aos][data-aos][data-aos-duration="550"], body[data-aos-duration="550"] [data-aos] {
  transition-duration: 0.55s;
}

[data-aos][data-aos][data-aos-delay="550"], body[data-aos-delay="550"] [data-aos] {
  transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="550"].aos-animate, body[data-aos-delay="550"] [data-aos].aos-animate {
  transition-delay: 0.55s;
}

[data-aos][data-aos][data-aos-duration="600"], body[data-aos-duration="600"] [data-aos] {
  transition-duration: 0.6s;
}

[data-aos][data-aos][data-aos-delay="600"], body[data-aos-delay="600"] [data-aos] {
  transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="600"].aos-animate, body[data-aos-delay="600"] [data-aos].aos-animate {
  transition-delay: 0.6s;
}

[data-aos][data-aos][data-aos-duration="650"], body[data-aos-duration="650"] [data-aos] {
  transition-duration: 0.65s;
}

[data-aos][data-aos][data-aos-delay="650"], body[data-aos-delay="650"] [data-aos] {
  transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="650"].aos-animate, body[data-aos-delay="650"] [data-aos].aos-animate {
  transition-delay: 0.65s;
}

[data-aos][data-aos][data-aos-duration="700"], body[data-aos-duration="700"] [data-aos] {
  transition-duration: 0.7s;
}

[data-aos][data-aos][data-aos-delay="700"], body[data-aos-delay="700"] [data-aos] {
  transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="700"].aos-animate, body[data-aos-delay="700"] [data-aos].aos-animate {
  transition-delay: 0.7s;
}

[data-aos][data-aos][data-aos-duration="750"], body[data-aos-duration="750"] [data-aos] {
  transition-duration: 0.75s;
}

[data-aos][data-aos][data-aos-delay="750"], body[data-aos-delay="750"] [data-aos] {
  transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="750"].aos-animate, body[data-aos-delay="750"] [data-aos].aos-animate {
  transition-delay: 0.75s;
}

[data-aos][data-aos][data-aos-duration="800"], body[data-aos-duration="800"] [data-aos] {
  transition-duration: 0.8s;
}

[data-aos][data-aos][data-aos-delay="800"], body[data-aos-delay="800"] [data-aos] {
  transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="800"].aos-animate, body[data-aos-delay="800"] [data-aos].aos-animate {
  transition-delay: 0.8s;
}

[data-aos][data-aos][data-aos-duration="850"], body[data-aos-duration="850"] [data-aos] {
  transition-duration: 0.85s;
}

[data-aos][data-aos][data-aos-delay="850"], body[data-aos-delay="850"] [data-aos] {
  transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="850"].aos-animate, body[data-aos-delay="850"] [data-aos].aos-animate {
  transition-delay: 0.85s;
}

[data-aos][data-aos][data-aos-duration="900"], body[data-aos-duration="900"] [data-aos] {
  transition-duration: 0.9s;
}

[data-aos][data-aos][data-aos-delay="900"], body[data-aos-delay="900"] [data-aos] {
  transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="900"].aos-animate, body[data-aos-delay="900"] [data-aos].aos-animate {
  transition-delay: 0.9s;
}

[data-aos][data-aos][data-aos-duration="950"], body[data-aos-duration="950"] [data-aos] {
  transition-duration: 0.95s;
}

[data-aos][data-aos][data-aos-delay="950"], body[data-aos-delay="950"] [data-aos] {
  transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="950"].aos-animate, body[data-aos-delay="950"] [data-aos].aos-animate {
  transition-delay: 0.95s;
}

[data-aos][data-aos][data-aos-duration="1000"], body[data-aos-duration="1000"] [data-aos] {
  transition-duration: 1s;
}

[data-aos][data-aos][data-aos-delay="1000"], body[data-aos-delay="1000"] [data-aos] {
  transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="1000"].aos-animate, body[data-aos-delay="1000"] [data-aos].aos-animate {
  transition-delay: 1s;
}

[data-aos][data-aos][data-aos-duration="1050"], body[data-aos-duration="1050"] [data-aos] {
  transition-duration: 1.05s;
}

[data-aos][data-aos][data-aos-delay="1050"], body[data-aos-delay="1050"] [data-aos] {
  transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="1050"].aos-animate, body[data-aos-delay="1050"] [data-aos].aos-animate {
  transition-delay: 1.05s;
}

[data-aos][data-aos][data-aos-duration="1100"], body[data-aos-duration="1100"] [data-aos] {
  transition-duration: 1.1s;
}

[data-aos][data-aos][data-aos-delay="1100"], body[data-aos-delay="1100"] [data-aos] {
  transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="1100"].aos-animate, body[data-aos-delay="1100"] [data-aos].aos-animate {
  transition-delay: 1.1s;
}

[data-aos][data-aos][data-aos-duration="1150"], body[data-aos-duration="1150"] [data-aos] {
  transition-duration: 1.15s;
}

[data-aos][data-aos][data-aos-delay="1150"], body[data-aos-delay="1150"] [data-aos] {
  transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="1150"].aos-animate, body[data-aos-delay="1150"] [data-aos].aos-animate {
  transition-delay: 1.15s;
}

[data-aos][data-aos][data-aos-duration="1200"], body[data-aos-duration="1200"] [data-aos] {
  transition-duration: 1.2s;
}

[data-aos][data-aos][data-aos-delay="1200"], body[data-aos-delay="1200"] [data-aos] {
  transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="1200"].aos-animate, body[data-aos-delay="1200"] [data-aos].aos-animate {
  transition-delay: 1.2s;
}

[data-aos][data-aos][data-aos-duration="1250"], body[data-aos-duration="1250"] [data-aos] {
  transition-duration: 1.25s;
}

[data-aos][data-aos][data-aos-delay="1250"], body[data-aos-delay="1250"] [data-aos] {
  transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="1250"].aos-animate, body[data-aos-delay="1250"] [data-aos].aos-animate {
  transition-delay: 1.25s;
}

[data-aos][data-aos][data-aos-duration="1300"], body[data-aos-duration="1300"] [data-aos] {
  transition-duration: 1.3s;
}

[data-aos][data-aos][data-aos-delay="1300"], body[data-aos-delay="1300"] [data-aos] {
  transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="1300"].aos-animate, body[data-aos-delay="1300"] [data-aos].aos-animate {
  transition-delay: 1.3s;
}

[data-aos][data-aos][data-aos-duration="1350"], body[data-aos-duration="1350"] [data-aos] {
  transition-duration: 1.35s;
}

[data-aos][data-aos][data-aos-delay="1350"], body[data-aos-delay="1350"] [data-aos] {
  transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="1350"].aos-animate, body[data-aos-delay="1350"] [data-aos].aos-animate {
  transition-delay: 1.35s;
}

[data-aos][data-aos][data-aos-duration="1400"], body[data-aos-duration="1400"] [data-aos] {
  transition-duration: 1.4s;
}

[data-aos][data-aos][data-aos-delay="1400"], body[data-aos-delay="1400"] [data-aos] {
  transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="1400"].aos-animate, body[data-aos-delay="1400"] [data-aos].aos-animate {
  transition-delay: 1.4s;
}

[data-aos][data-aos][data-aos-duration="1450"], body[data-aos-duration="1450"] [data-aos] {
  transition-duration: 1.45s;
}

[data-aos][data-aos][data-aos-delay="1450"], body[data-aos-delay="1450"] [data-aos] {
  transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="1450"].aos-animate, body[data-aos-delay="1450"] [data-aos].aos-animate {
  transition-delay: 1.45s;
}

[data-aos][data-aos][data-aos-duration="1500"], body[data-aos-duration="1500"] [data-aos] {
  transition-duration: 1.5s;
}

[data-aos][data-aos][data-aos-delay="1500"], body[data-aos-delay="1500"] [data-aos] {
  transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="1500"].aos-animate, body[data-aos-delay="1500"] [data-aos].aos-animate {
  transition-delay: 1.5s;
}

[data-aos][data-aos][data-aos-duration="1550"], body[data-aos-duration="1550"] [data-aos] {
  transition-duration: 1.55s;
}

[data-aos][data-aos][data-aos-delay="1550"], body[data-aos-delay="1550"] [data-aos] {
  transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="1550"].aos-animate, body[data-aos-delay="1550"] [data-aos].aos-animate {
  transition-delay: 1.55s;
}

[data-aos][data-aos][data-aos-duration="1600"], body[data-aos-duration="1600"] [data-aos] {
  transition-duration: 1.6s;
}

[data-aos][data-aos][data-aos-delay="1600"], body[data-aos-delay="1600"] [data-aos] {
  transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="1600"].aos-animate, body[data-aos-delay="1600"] [data-aos].aos-animate {
  transition-delay: 1.6s;
}

[data-aos][data-aos][data-aos-duration="1650"], body[data-aos-duration="1650"] [data-aos] {
  transition-duration: 1.65s;
}

[data-aos][data-aos][data-aos-delay="1650"], body[data-aos-delay="1650"] [data-aos] {
  transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="1650"].aos-animate, body[data-aos-delay="1650"] [data-aos].aos-animate {
  transition-delay: 1.65s;
}

[data-aos][data-aos][data-aos-duration="1700"], body[data-aos-duration="1700"] [data-aos] {
  transition-duration: 1.7s;
}

[data-aos][data-aos][data-aos-delay="1700"], body[data-aos-delay="1700"] [data-aos] {
  transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="1700"].aos-animate, body[data-aos-delay="1700"] [data-aos].aos-animate {
  transition-delay: 1.7s;
}

[data-aos][data-aos][data-aos-duration="1750"], body[data-aos-duration="1750"] [data-aos] {
  transition-duration: 1.75s;
}

[data-aos][data-aos][data-aos-delay="1750"], body[data-aos-delay="1750"] [data-aos] {
  transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="1750"].aos-animate, body[data-aos-delay="1750"] [data-aos].aos-animate {
  transition-delay: 1.75s;
}

[data-aos][data-aos][data-aos-duration="1800"], body[data-aos-duration="1800"] [data-aos] {
  transition-duration: 1.8s;
}

[data-aos][data-aos][data-aos-delay="1800"], body[data-aos-delay="1800"] [data-aos] {
  transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="1800"].aos-animate, body[data-aos-delay="1800"] [data-aos].aos-animate {
  transition-delay: 1.8s;
}

[data-aos][data-aos][data-aos-duration="1850"], body[data-aos-duration="1850"] [data-aos] {
  transition-duration: 1.85s;
}

[data-aos][data-aos][data-aos-delay="1850"], body[data-aos-delay="1850"] [data-aos] {
  transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="1850"].aos-animate, body[data-aos-delay="1850"] [data-aos].aos-animate {
  transition-delay: 1.85s;
}

[data-aos][data-aos][data-aos-duration="1900"], body[data-aos-duration="1900"] [data-aos] {
  transition-duration: 1.9s;
}

[data-aos][data-aos][data-aos-delay="1900"], body[data-aos-delay="1900"] [data-aos] {
  transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="1900"].aos-animate, body[data-aos-delay="1900"] [data-aos].aos-animate {
  transition-delay: 1.9s;
}

[data-aos][data-aos][data-aos-duration="1950"], body[data-aos-duration="1950"] [data-aos] {
  transition-duration: 1.95s;
}

[data-aos][data-aos][data-aos-delay="1950"], body[data-aos-delay="1950"] [data-aos] {
  transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="1950"].aos-animate, body[data-aos-delay="1950"] [data-aos].aos-animate {
  transition-delay: 1.95s;
}

[data-aos][data-aos][data-aos-duration="2000"], body[data-aos-duration="2000"] [data-aos] {
  transition-duration: 2s;
}

[data-aos][data-aos][data-aos-delay="2000"], body[data-aos-delay="2000"] [data-aos] {
  transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="2000"].aos-animate, body[data-aos-delay="2000"] [data-aos].aos-animate {
  transition-delay: 2s;
}

[data-aos][data-aos][data-aos-duration="2050"], body[data-aos-duration="2050"] [data-aos] {
  transition-duration: 2.05s;
}

[data-aos][data-aos][data-aos-delay="2050"], body[data-aos-delay="2050"] [data-aos] {
  transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="2050"].aos-animate, body[data-aos-delay="2050"] [data-aos].aos-animate {
  transition-delay: 2.05s;
}

[data-aos][data-aos][data-aos-duration="2100"], body[data-aos-duration="2100"] [data-aos] {
  transition-duration: 2.1s;
}

[data-aos][data-aos][data-aos-delay="2100"], body[data-aos-delay="2100"] [data-aos] {
  transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="2100"].aos-animate, body[data-aos-delay="2100"] [data-aos].aos-animate {
  transition-delay: 2.1s;
}

[data-aos][data-aos][data-aos-duration="2150"], body[data-aos-duration="2150"] [data-aos] {
  transition-duration: 2.15s;
}

[data-aos][data-aos][data-aos-delay="2150"], body[data-aos-delay="2150"] [data-aos] {
  transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="2150"].aos-animate, body[data-aos-delay="2150"] [data-aos].aos-animate {
  transition-delay: 2.15s;
}

[data-aos][data-aos][data-aos-duration="2200"], body[data-aos-duration="2200"] [data-aos] {
  transition-duration: 2.2s;
}

[data-aos][data-aos][data-aos-delay="2200"], body[data-aos-delay="2200"] [data-aos] {
  transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="2200"].aos-animate, body[data-aos-delay="2200"] [data-aos].aos-animate {
  transition-delay: 2.2s;
}

[data-aos][data-aos][data-aos-duration="2250"], body[data-aos-duration="2250"] [data-aos] {
  transition-duration: 2.25s;
}

[data-aos][data-aos][data-aos-delay="2250"], body[data-aos-delay="2250"] [data-aos] {
  transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="2250"].aos-animate, body[data-aos-delay="2250"] [data-aos].aos-animate {
  transition-delay: 2.25s;
}

[data-aos][data-aos][data-aos-duration="2300"], body[data-aos-duration="2300"] [data-aos] {
  transition-duration: 2.3s;
}

[data-aos][data-aos][data-aos-delay="2300"], body[data-aos-delay="2300"] [data-aos] {
  transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="2300"].aos-animate, body[data-aos-delay="2300"] [data-aos].aos-animate {
  transition-delay: 2.3s;
}

[data-aos][data-aos][data-aos-duration="2350"], body[data-aos-duration="2350"] [data-aos] {
  transition-duration: 2.35s;
}

[data-aos][data-aos][data-aos-delay="2350"], body[data-aos-delay="2350"] [data-aos] {
  transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="2350"].aos-animate, body[data-aos-delay="2350"] [data-aos].aos-animate {
  transition-delay: 2.35s;
}

[data-aos][data-aos][data-aos-duration="2400"], body[data-aos-duration="2400"] [data-aos] {
  transition-duration: 2.4s;
}

[data-aos][data-aos][data-aos-delay="2400"], body[data-aos-delay="2400"] [data-aos] {
  transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="2400"].aos-animate, body[data-aos-delay="2400"] [data-aos].aos-animate {
  transition-delay: 2.4s;
}

[data-aos][data-aos][data-aos-duration="2450"], body[data-aos-duration="2450"] [data-aos] {
  transition-duration: 2.45s;
}

[data-aos][data-aos][data-aos-delay="2450"], body[data-aos-delay="2450"] [data-aos] {
  transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="2450"].aos-animate, body[data-aos-delay="2450"] [data-aos].aos-animate {
  transition-delay: 2.45s;
}

[data-aos][data-aos][data-aos-duration="2500"], body[data-aos-duration="2500"] [data-aos] {
  transition-duration: 2.5s;
}

[data-aos][data-aos][data-aos-delay="2500"], body[data-aos-delay="2500"] [data-aos] {
  transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="2500"].aos-animate, body[data-aos-delay="2500"] [data-aos].aos-animate {
  transition-delay: 2.5s;
}

[data-aos][data-aos][data-aos-duration="2550"], body[data-aos-duration="2550"] [data-aos] {
  transition-duration: 2.55s;
}

[data-aos][data-aos][data-aos-delay="2550"], body[data-aos-delay="2550"] [data-aos] {
  transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="2550"].aos-animate, body[data-aos-delay="2550"] [data-aos].aos-animate {
  transition-delay: 2.55s;
}

[data-aos][data-aos][data-aos-duration="2600"], body[data-aos-duration="2600"] [data-aos] {
  transition-duration: 2.6s;
}

[data-aos][data-aos][data-aos-delay="2600"], body[data-aos-delay="2600"] [data-aos] {
  transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="2600"].aos-animate, body[data-aos-delay="2600"] [data-aos].aos-animate {
  transition-delay: 2.6s;
}

[data-aos][data-aos][data-aos-duration="2650"], body[data-aos-duration="2650"] [data-aos] {
  transition-duration: 2.65s;
}

[data-aos][data-aos][data-aos-delay="2650"], body[data-aos-delay="2650"] [data-aos] {
  transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="2650"].aos-animate, body[data-aos-delay="2650"] [data-aos].aos-animate {
  transition-delay: 2.65s;
}

[data-aos][data-aos][data-aos-duration="2700"], body[data-aos-duration="2700"] [data-aos] {
  transition-duration: 2.7s;
}

[data-aos][data-aos][data-aos-delay="2700"], body[data-aos-delay="2700"] [data-aos] {
  transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="2700"].aos-animate, body[data-aos-delay="2700"] [data-aos].aos-animate {
  transition-delay: 2.7s;
}

[data-aos][data-aos][data-aos-duration="2750"], body[data-aos-duration="2750"] [data-aos] {
  transition-duration: 2.75s;
}

[data-aos][data-aos][data-aos-delay="2750"], body[data-aos-delay="2750"] [data-aos] {
  transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="2750"].aos-animate, body[data-aos-delay="2750"] [data-aos].aos-animate {
  transition-delay: 2.75s;
}

[data-aos][data-aos][data-aos-duration="2800"], body[data-aos-duration="2800"] [data-aos] {
  transition-duration: 2.8s;
}

[data-aos][data-aos][data-aos-delay="2800"], body[data-aos-delay="2800"] [data-aos] {
  transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="2800"].aos-animate, body[data-aos-delay="2800"] [data-aos].aos-animate {
  transition-delay: 2.8s;
}

[data-aos][data-aos][data-aos-duration="2850"], body[data-aos-duration="2850"] [data-aos] {
  transition-duration: 2.85s;
}

[data-aos][data-aos][data-aos-delay="2850"], body[data-aos-delay="2850"] [data-aos] {
  transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="2850"].aos-animate, body[data-aos-delay="2850"] [data-aos].aos-animate {
  transition-delay: 2.85s;
}

[data-aos][data-aos][data-aos-duration="2900"], body[data-aos-duration="2900"] [data-aos] {
  transition-duration: 2.9s;
}

[data-aos][data-aos][data-aos-delay="2900"], body[data-aos-delay="2900"] [data-aos] {
  transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="2900"].aos-animate, body[data-aos-delay="2900"] [data-aos].aos-animate {
  transition-delay: 2.9s;
}

[data-aos][data-aos][data-aos-duration="2950"], body[data-aos-duration="2950"] [data-aos] {
  transition-duration: 2.95s;
}

[data-aos][data-aos][data-aos-delay="2950"], body[data-aos-delay="2950"] [data-aos] {
  transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="2950"].aos-animate, body[data-aos-delay="2950"] [data-aos].aos-animate {
  transition-delay: 2.95s;
}

[data-aos][data-aos][data-aos-duration="3000"], body[data-aos-duration="3000"] [data-aos] {
  transition-duration: 3s;
}

[data-aos][data-aos][data-aos-delay="3000"], body[data-aos-delay="3000"] [data-aos] {
  transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="3000"].aos-animate, body[data-aos-delay="3000"] [data-aos].aos-animate {
  transition-delay: 3s;
}

[data-aos][data-aos][data-aos-easing=linear], body[data-aos-easing=linear] [data-aos] {
  transition-timing-function: cubic-bezier(0.25, 0.25, 0.75, 0.75);
}

[data-aos][data-aos][data-aos-easing=ease], body[data-aos-easing=ease] [data-aos] {
  transition-timing-function: ease;
}

[data-aos][data-aos][data-aos-easing=ease-in], body[data-aos-easing=ease-in] [data-aos] {
  transition-timing-function: ease-in;
}

[data-aos][data-aos][data-aos-easing=ease-out], body[data-aos-easing=ease-out] [data-aos] {
  transition-timing-function: ease-out;
}

[data-aos][data-aos][data-aos-easing=ease-in-out], body[data-aos-easing=ease-in-out] [data-aos] {
  transition-timing-function: ease-in-out;
}

[data-aos][data-aos][data-aos-easing=ease-in-back], body[data-aos-easing=ease-in-back] [data-aos] {
  transition-timing-function: cubic-bezier(0.6, -0.28, 0.735, 0.045);
}

[data-aos][data-aos][data-aos-easing=ease-out-back], body[data-aos-easing=ease-out-back] [data-aos] {
  transition-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1.275);
}

[data-aos][data-aos][data-aos-easing=ease-in-out-back], body[data-aos-easing=ease-in-out-back] [data-aos] {
  transition-timing-function: cubic-bezier(0.68, -0.55, 0.265, 1.55);
}

[data-aos][data-aos][data-aos-easing=ease-in-sine], body[data-aos-easing=ease-in-sine] [data-aos] {
  transition-timing-function: cubic-bezier(0.47, 0, 0.745, 0.715);
}

[data-aos][data-aos][data-aos-easing=ease-out-sine], body[data-aos-easing=ease-out-sine] [data-aos] {
  transition-timing-function: cubic-bezier(0.39, 0.575, 0.565, 1);
}

[data-aos][data-aos][data-aos-easing=ease-in-out-sine], body[data-aos-easing=ease-in-out-sine] [data-aos] {
  transition-timing-function: cubic-bezier(0.445, 0.05, 0.55, 0.95);
}

[data-aos][data-aos][data-aos-easing=ease-in-quad], body[data-aos-easing=ease-in-quad] [data-aos] {
  transition-timing-function: cubic-bezier(0.55, 0.085, 0.68, 0.53);
}

[data-aos][data-aos][data-aos-easing=ease-out-quad], body[data-aos-easing=ease-out-quad] [data-aos] {
  transition-timing-function: cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

[data-aos][data-aos][data-aos-easing=ease-in-out-quad], body[data-aos-easing=ease-in-out-quad] [data-aos] {
  transition-timing-function: cubic-bezier(0.455, 0.03, 0.515, 0.955);
}

[data-aos][data-aos][data-aos-easing=ease-in-cubic], body[data-aos-easing=ease-in-cubic] [data-aos] {
  transition-timing-function: cubic-bezier(0.55, 0.085, 0.68, 0.53);
}

[data-aos][data-aos][data-aos-easing=ease-out-cubic], body[data-aos-easing=ease-out-cubic] [data-aos] {
  transition-timing-function: cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

[data-aos][data-aos][data-aos-easing=ease-in-out-cubic], body[data-aos-easing=ease-in-out-cubic] [data-aos] {
  transition-timing-function: cubic-bezier(0.455, 0.03, 0.515, 0.955);
}

[data-aos][data-aos][data-aos-easing=ease-in-quart], body[data-aos-easing=ease-in-quart] [data-aos] {
  transition-timing-function: cubic-bezier(0.55, 0.085, 0.68, 0.53);
}

[data-aos][data-aos][data-aos-easing=ease-out-quart], body[data-aos-easing=ease-out-quart] [data-aos] {
  transition-timing-function: cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

[data-aos][data-aos][data-aos-easing=ease-in-out-quart], body[data-aos-easing=ease-in-out-quart] [data-aos] {
  transition-timing-function: cubic-bezier(0.455, 0.03, 0.515, 0.955);
}

[data-aos^=fade][data-aos^=fade] {
  opacity: 0;
  transition-property: opacity, -webkit-transform;
  transition-property: opacity, transform;
  transition-property: opacity, transform, -webkit-transform;
}

[data-aos^=fade][data-aos^=fade].aos-animate {
  opacity: 1;
  -webkit-transform: translate(0);
          transform: translate(0);
}

[data-aos=fade-up] {
  -webkit-transform: translateY(100px);
          transform: translateY(100px);
}

[data-aos=fade-down] {
  -webkit-transform: translateY(-100px);
          transform: translateY(-100px);
}

[data-aos=fade-right] {
  -webkit-transform: translate(-100px);
          transform: translate(-100px);
}

[data-aos=fade-left] {
  -webkit-transform: translate(100px);
          transform: translate(100px);
}

[data-aos=fade-up-right] {
  -webkit-transform: translate(-100px, 100px);
          transform: translate(-100px, 100px);
}

[data-aos=fade-up-left] {
  -webkit-transform: translate(100px, 100px);
          transform: translate(100px, 100px);
}

[data-aos=fade-down-right] {
  -webkit-transform: translate(-100px, -100px);
          transform: translate(-100px, -100px);
}

[data-aos=fade-down-left] {
  -webkit-transform: translate(100px, -100px);
          transform: translate(100px, -100px);
}

[data-aos^=zoom][data-aos^=zoom] {
  opacity: 0;
  transition-property: opacity, -webkit-transform;
  transition-property: opacity, transform;
  transition-property: opacity, transform, -webkit-transform;
}

[data-aos^=zoom][data-aos^=zoom].aos-animate {
  opacity: 1;
  -webkit-transform: translate(0) scale(1);
          transform: translate(0) scale(1);
}

[data-aos=zoom-in] {
  -webkit-transform: scale(0.6);
          transform: scale(0.6);
}

[data-aos=zoom-in-up] {
  -webkit-transform: translateY(100px) scale(0.6);
          transform: translateY(100px) scale(0.6);
}

[data-aos=zoom-in-down] {
  -webkit-transform: translateY(-100px) scale(0.6);
          transform: translateY(-100px) scale(0.6);
}

[data-aos=zoom-in-right] {
  -webkit-transform: translate(-100px) scale(0.6);
          transform: translate(-100px) scale(0.6);
}

[data-aos=zoom-in-left] {
  -webkit-transform: translate(100px) scale(0.6);
          transform: translate(100px) scale(0.6);
}

[data-aos=zoom-out] {
  -webkit-transform: scale(1.2);
          transform: scale(1.2);
}

[data-aos=zoom-out-up] {
  -webkit-transform: translateY(100px) scale(1.2);
          transform: translateY(100px) scale(1.2);
}

[data-aos=zoom-out-down] {
  -webkit-transform: translateY(-100px) scale(1.2);
          transform: translateY(-100px) scale(1.2);
}

[data-aos=zoom-out-right] {
  -webkit-transform: translate(-100px) scale(1.2);
          transform: translate(-100px) scale(1.2);
}

[data-aos=zoom-out-left] {
  -webkit-transform: translate(100px) scale(1.2);
          transform: translate(100px) scale(1.2);
}

[data-aos^=slide][data-aos^=slide] {
  transition-property: -webkit-transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform;
}

[data-aos^=slide][data-aos^=slide].aos-animate {
  -webkit-transform: translate(0);
          transform: translate(0);
}

[data-aos=slide-up] {
  -webkit-transform: translateY(100%);
          transform: translateY(100%);
}

[data-aos=slide-down] {
  -webkit-transform: translateY(-100%);
          transform: translateY(-100%);
}

[data-aos=slide-right] {
  -webkit-transform: translateX(-100%);
          transform: translateX(-100%);
}

[data-aos=slide-left] {
  -webkit-transform: translateX(100%);
          transform: translateX(100%);
}

[data-aos^=flip][data-aos^=flip] {
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  transition-property: -webkit-transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform;
}

[data-aos=flip-left] {
  -webkit-transform: perspective(2500px) rotateY(-100deg);
          transform: perspective(2500px) rotateY(-100deg);
}

[data-aos=flip-left].aos-animate {
  -webkit-transform: perspective(2500px) rotateY(0);
          transform: perspective(2500px) rotateY(0);
}

[data-aos=flip-right] {
  -webkit-transform: perspective(2500px) rotateY(100deg);
          transform: perspective(2500px) rotateY(100deg);
}

[data-aos=flip-right].aos-animate {
  -webkit-transform: perspective(2500px) rotateY(0);
          transform: perspective(2500px) rotateY(0);
}

[data-aos=flip-up] {
  -webkit-transform: perspective(2500px) rotateX(-100deg);
          transform: perspective(2500px) rotateX(-100deg);
}

[data-aos=flip-up].aos-animate {
  -webkit-transform: perspective(2500px) rotateX(0);
          transform: perspective(2500px) rotateX(0);
}

[data-aos=flip-down] {
  -webkit-transform: perspective(2500px) rotateX(100deg);
          transform: perspective(2500px) rotateX(100deg);
}

[data-aos=flip-down].aos-animate {
  -webkit-transform: perspective(2500px) rotateX(0);
          transform: perspective(2500px) rotateX(0);
}


.pater {
  font-size: 0.7em;
  right: 1vw;
  top: 1vw;
  flex: none;
  border: 3px solid #fff;
  padding: 4.5em 2.25em 2.5em;
  width: 100%;
  max-width: 360px;
  position: absolute;
  background: #d0cfc5;
  margin: auto 0 3em auto;
  transition: background-color 0.3s;
  pointer-events: visible;
  display: block;
}

.pater:hover,
.pater:focus {
  outline: none;
  background-color: #fff;
}

.pater::after {
  content: "Sponsored by";
  position: absolute;
  top: 2.75em;
  left: 3.5em;
  font-size: 0.65em;
  letter-spacing: 2px;
  text-transform: uppercase;
  font-weight: bold;
}

@media screen and (min-width: 50em) {
  .pater::before {
    content: "";
    position: absolute;
    background: url(../img/sponsor/terminal.svg) no-repeat 50% 100%;
    background-size: contain;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
    -webkit-transform: translate3d(-25px, 25px, 0);
    transform: translate3d(-25px, 25px, 0);
    transition: -webkit-transform 0.3s;
    transition: transform 0.3s;
    transition: transform 0.3s, -webkit-transform 0.3s;
  }
  .pater:hover::before,
  .pater:focus::before {
    opacity: 1;
    -webkit-transform: translate3d(-40px, 40px, 0);
    transform: translate3d(-40px, 40px, 0);
    transition: -webkit-transform 0.3s cubic-bezier(0.43, 0.04, 0.32, 0.97);
    transition: transform 0.3s cubic-bezier(0.43, 0.04, 0.32, 0.97);
    transition: transform 0.3s cubic-bezier(0.43, 0.04, 0.32, 0.97), -webkit-transform 0.3s cubic-bezier(0.43, 0.04, 0.32, 0.97);
  }
}
.pater__img {
  display: block;
  width: 50%;
}

.pater__title {
  font-size: 1.5em;
  margin: 1em 0 0.5em;
}

.pater__desc {
  color: #3D3935;
  line-height: 1.1;
  margin: 0;
  font-size: 1.25em;
}

@media screen and (max-width: 50em) {
  .pater {
    top: 0;
    right: 0;
    margin: 0;
    border: 0;
    position: relative;
    max-width: none;
    font-size: 0.85em;
    background-color: #fff;
    padding: 2.5em 1em 1em;
  }
  .pater::after {
    top: 1em;
    left: 1em;
  }
  .pater__img {
    width: 160px;
  }
}
@media screen and (max-width: 40em) {
  .pater__title {
    font-size: 1em;
    margin-bottom: 0;
  }
  .pater__desc {
    display: none;
  }
  .pater__img {
    max-width: 30%;
  }
}
.block-revealer__element {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #000;
  pointer-events: none;
  opacity: 0;
}

/*
–––––––––––––––––––––––––––––––––––––––
  GLOBAL VARIABLES
–––––––––––––––––––––––––––––––––––––––
*/
:root {
  --x: 0;
}

/*
–––––––––––––––––––––––––––––––––––––––
  GLOBAL MIXINS
–––––––––––––––––––––––––––––––––––––––
*/
/*
–––––––––––––––––––––––––––––––––––––––
  GLOBAL PLACEHOLDERS
–––––––––––––––––––––––––––––––––––––––
*/
.content-image figure img,
.content-video figure img, .grid-logos div img, .columns-2 > div img, .cta-60-40_images img, [class^=card-] img, .instagram-feed .instagram-icon img,
.instagram-feed .instagram-image img {
  max-width: 100%;
  display: block;
  height: auto;
  image-rendering: -moz-crisp-edges; /* Firefox */
  image-rendering: -o-crisp-edges; /* Opera */
  image-rendering: -webkit-optimize-contrast; /* Webkit (non-standard naming) */
  image-rendering: crisp-edges;
  -ms-interpolation-mode: nearest-neighbor;
}

/*! normalize.css http://github.com/necolas/normalize.css */
/* =============================================================================
   HTML5 display definitions
   ========================================================================== */
/*
 * Corrects block display not defined in IE6/7/8/9 & FF3
 */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
nav,
section,
summary {
  display: block;
}

/*
 * Corrects inline-block display not defined in IE6/7/8/9 & FF3
 */
audio,
canvas,
video {
  display: inline-block;
  *display: inline;
  *zoom: 1;
}

/*
 * Prevents modern browsers from displaying 'audio' without controls
 */
audio:not([controls]) {
  display: none;
}

/*
 * Addresses styling for 'hidden' attribute not present in IE7/8/9, FF3, S4
 * Known issue: no IE6 support
 */
[hidden] {
  display: none;
}

/* =============================================================================
   Base
   ========================================================================== */
/*
 * 1. Corrects text resizing oddly in IE6/7 when body font-size is set using em units
 *  http://clagnut.com/blog/348/#c790
 * 2. Prevents iOS text size adjust after orientation change, without disabling user zoom
 *  www.456bereastreet.com/archive/201012/controlling_text_size_in_safari_for_ios_without_disabling_user_zoom/
 */
html {
  font-size: 100%; /* 1 */
  -webkit-text-size-adjust: 100%; /* 2 */
  -ms-text-size-adjust: 100%; /* 2 */
}

/*
 * Addresses font-family inconsistency between 'textarea' and other form elements.
 */
html,
button,
input,
select,
textarea {
  font-family: sans-serif;
}

/*
 * Addresses margins handled incorrectly in IE6/7
 */
body {
  margin: 0;
}

/* =============================================================================
   Links
   ========================================================================== */
/*
 * Addresses outline displayed oddly in Chrome
 */
a:focus {
  outline: thin dotted;
}

/*
 * Improves readability when focused and also mouse hovered in all browsers
 * people.opera.com/patrickl/experiments/keyboard/test
 */
a:hover,
a:active {
  outline: 0;
}

/* =============================================================================
   Typography
   ========================================================================== */
/*
 * Addresses font sizes and margins set differently in IE6/7
 * Addresses font sizes within 'section' and 'article' in FF4+, Chrome, S5
 */
h1, h2, h3, h4, h5, h6 {
  font-size: 1em;
  margin: 0;
}

/*
 * Addresses styling not present in IE7/8/9, S5, Chrome
 */
abbr[title] {
  border-bottom: 1px dotted;
}

/*
 * Addresses style set to 'bolder' in FF3+, S4/5, Chrome
*/
b,
strong {
  font-weight: bold;
}

blockquote {
  margin: 0;
}

/*
 * Addresses styling not present in S5, Chrome
 */
dfn {
  font-style: italic;
}

/*
 * Addresses styling not present in IE6/7/8/9
 */
mark {
  background: #ff0;
  color: #000;
}

/*
 * Addresses margins set differently in IE6/7
 */
p,
pre {
  margin: 0;
}

/*
 * Corrects font family set oddly in IE6, S4/5, Chrome
 * en.wikipedia.org/wiki/User:Davidgothberg/Test59
 */
pre,
code,
kbd,
samp {
  font-family: monospace, serif;
  _font-family: "courier new", monospace;
  font-size: 1em;
}

/*
 * Improves readability of pre-formatted text in all browsers
 */
pre {
  white-space: pre;
  white-space: pre-wrap;
  word-wrap: break-word;
}

/*
 * 1. Addresses CSS quotes not supported in IE6/7
 * 2. Addresses quote property not supported in S4
 */
/* 1 */
q {
  quotes: none;
}

/* 2 */
q:before,
q:after {
  content: "";
  content: none;
}

small {
  font-size: 75%;
}

/*
 * Prevents sub and sup affecting line-height in all browsers
 * gist.github.com/413930
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sup {
  top: -0.5em;
}

sub {
  bottom: -0.25em;
}

/* =============================================================================
   Lists
   ========================================================================== */
/*
 * Addresses margins set differently in IE6/7
 */
dl,
menu,
ol,
ul {
  margin: 0;
}

dd {
  margin: 0;
}

/*
 * Addresses paddings set differently in IE6/7
 */
menu,
ol,
ul {
  padding: 0;
}

/*
 * Corrects list images handled incorrectly in IE7
 */
nav ul,
nav ol {
  list-style: none;
  list-style-image: none;
}

/* =============================================================================
   Embedded content
   ========================================================================== */
/*
 * 1. Removes border when inside 'a' element in IE6/7/8/9, FF3
 * 2. Improves image quality when scaled in IE7
 *  code.flickr.com/blog/2008/11/12/on-ui-quality-the-little-things-client-side-image-resizing/
 */
img {
  border: 0; /* 1 */
  -ms-interpolation-mode: bicubic; /* 2 */
}

/*
 * Corrects overflow displayed oddly in IE9
 */
svg:not(:root) {
  overflow: hidden;
}

/* =============================================================================
   Figures
   ========================================================================== */
/*
 * Addresses margin not present in IE6/7/8/9, S5, O11
 */
figure {
  margin: 0;
}

/* =============================================================================
   Forms
   ========================================================================== */
/*
 * Corrects margin displayed oddly in IE6/7
 */
form {
  margin: 0;
}

/*
 * Define consistent border, margin, and padding
 */
fieldset {
  border: none;
  padding: 0;
  margin: 0;
}

/*
 * 1. Corrects color not being inherited in IE6/7/8/9
 * 2. Corrects text not wrapping in FF3 
 * 3. Corrects alignment displayed oddly in IE6/7
 */
legend {
  border: 0; /* 1 */
  padding: 0;
  white-space: normal; /* 2 */
  *margin-left: -7px; /* 3 */
}

/*
 * 1. Corrects font size not being inherited in all browsers
 * 2. Addresses margins set differently in IE6/7, FF3+, S5, Chrome
 * 3. Improves appearance and consistency in all browsers
 */
button,
input,
select,
textarea {
  font-size: 100%; /* 1 */
  margin: 0; /* 2 */
  vertical-align: baseline; /* 3 */
  *vertical-align: middle; /* 3 */
}

/*
 * Addresses FF3/4 setting line-height on 'input' using !important in the UA stylesheet
 */
button,
input {
  line-height: normal; /* 1 */
}

/*
 * 1. Improves usability and consistency of cursor style between image-type 'input' and others
 * 2. Corrects inability to style clickable 'input' types in iOS
 * 3. Removes inner spacing in IE7 without affecting normal text inputs
 *  Known issue: inner spacing remains in IE6
 */
button,
input[type=button],
input[type=reset],
input[type=submit] {
  cursor: pointer; /* 1 */
  -webkit-appearance: button; /* 2 */
  *overflow: visible; /* 3 */
}

/*
 * Re-set default cursor for disabled elements
 */
button[disabled],
input[disabled] {
  cursor: default;
}

/*
 * 1. Addresses box sizing set to content-box in IE8/9
 * 2. Removes excess padding in IE8/9
 * 3. Removes excess padding in IE7
    Known issue: excess padding remains in IE6
 */
input[type=checkbox],
input[type=radio] {
  box-sizing: border-box; /* 1 */
  padding: 0; /* 2 */
  *height: 13px; /* 3 */
  *width: 13px; /* 3 */
}

/*
 * 1. Addresses appearance set to searchfield in S5, Chrome
 * 2. Addresses box-sizing set to border-box in S5, Chrome (include -moz to future-proof)
 */
input[type=search] {
  -webkit-appearance: textfield; /* 1 */ /* 2 */
  box-sizing: content-box;
}

/*
 * Removes inner padding and search cancel button in S5, Chrome on OS X
 */
input[type=search]::-webkit-search-decoration,
input[type=search]::-webkit-search-cancel-button {
  -webkit-appearance: none;
}

/*
 * Removes inner padding and border in FF3+
 * www.sitepen.com/blog/2008/05/14/the-devils-in-the-details-fixing-dojos-toolbar-buttons/
 */
button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0;
}

/*
 * 1. Removes default vertical scrollbar in IE6/7/8/9
 * 2. Improves readability and alignment in all browsers
 */
textarea {
  overflow: auto; /* 1 */
  vertical-align: top; /* 2 */
}

/* =============================================================================
   Tables
   ========================================================================== */
/*
 * Remove most spacing between table cells
 */
table {
  border-collapse: collapse;
  border-spacing: 0;
}

body {
  position: relative;
  margin: 0;
}

.grid-outer, .prefooter, .form-contact, .listing-services, .listing-clients, .crosslink, .page-hero, .page-header, article .breadcrumb {
  padding: 0 calc(1.666rem + 5vw);
  max-width: 80ch;
  margin-right: auto;
  margin-left: auto;
}
.grid-outer.relative, .relative.prefooter, .relative.form-contact, .relative.listing-services, .relative.listing-clients, .relative.crosslink, .relative.page-hero, .relative.page-header, article .relative.breadcrumb {
  position: relative;
}

.grid-outer.full-bleed, .full-bleed.prefooter, .full-bleed.form-contact, .full-bleed.listing-services, .full-bleed.listing-clients, .full-bleed.crosslink, .full-bleed.page-hero, .full-bleed.page-header, article .full-bleed.breadcrumb {
  max-width: none;
  padding: 0;
}

#logos {
  padding: 0 calc(1.666rem + 5vw);
  max-width: 80ch;
  margin-right: auto;
  margin-left: auto;
}

.grid-container, .listing-people {
  margin-left: -1.5em;
  margin-right: -1.5em;
  width: calc(100% + 3em);
  position: relative;
}
.grid-container::after, .listing-people::after {
  clear: both;
  content: "";
  display: block;
}
.grid-container.flex, .flex.listing-people {
  display: flex;
  flex-wrap: wrap;
}
.bg-video .grid-container, .bg-video .listing-people {
  position: static;
}

.grid-row {
  margin-bottom: 1.666rem;
}
.grid-row::after {
  clear: both;
  content: "";
  display: block;
}

.bg-image {
  color: #fff;
  background-attachment: fixed;
  background-color: #101921;
  background-size: cover;
  position: relative;
}
.bg-image .logo-svg {
  fill: #fff;
}
.bg-image a {
  border-color: #fff;
  color: #fff;
}
.bg-image.bg-video {
  height: 85vh;
  max-height: 95vh;
}
@media (max-width: 599px) {
  .bg-image.bg-video.is-mobile {
    height: auto;
    max-height: auto;
  }
}
@media (min-width: 600px) {
  .bg-image.bg-video.is-mobile {
    height: auto;
    max-height: auto !important;
  }
}
.bg-image.is-mobile {
  height: auto !important;
  max-height: auto !important;
}
.bg-image.is-mobile video {
  position: relative;
  width: 100%;
  height: auto;
}
.bg-image:before {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  content: "";
  z-index: 0;
}

.bg-light {
  background-color: #9f7dff;
  background-size: cover;
  color: #212e2e;
}
.bg-light .logo-svg {
  fill: #212e2e;
}
.bg-light a {
  border-color: #212e2e;
  color: #212e2e;
}
.bg-light.bg-image:before {
  background-color: rgba(159, 125, 255, 0.8);
}
.bg-light h3, .bg-light p, .bg-light figcaption {
  color: #101921;
}

.bg-mid {
  background-color: #690031;
  color: #9f7dff;
}
.bg-mid .logo-svg {
  fill: #9f7dff;
}
.bg-mid a {
  border-color: #9f7dff;
  color: #9f7dff;
}
.bg-mid svg {
  fill: #fff;
}
.bg-mid h2, .bg-mid p, .bg-mid figcaption {
  color: #fff;
}

.bg-bright {
  background-color: #f93822;
  -webkit-font-smoothing: antialiased;
  color: #101921;
}
.bg-bright .logo-svg {
  fill: #101921;
}
.bg-bright a {
  border-color: #101921;
  color: #101921;
}
.bg-bright.bg-image:before {
  background-color: #f93822;
}
.bg-bright svg {
  fill: #101921;
}
.bg-bright p, .bg-bright figcaption {
  color: #690031;
}
.bg-bright h2 {
  color: #101921;
}

.bg-dark {
  -webkit-font-smoothing: antialiased;
  color: #fff;
  background-color: #212e2e;
}
.bg-dark .logo-svg {
  fill: #fff;
}
.bg-dark a {
  border-color: #fff;
  color: #fff;
}
.bg-dark.bg-image:before {
  background-color: rgba(33, 46, 46, 0.8);
}

.bg-black {
  -webkit-font-smoothing: antialiased;
  color: #fff;
  background-color: #101921;
}
.bg-black .logo-svg {
  fill: #fff;
}
.bg-black a {
  border-color: #fff;
  color: #fff;
}
.bg-black.bg-image:before {
  background-color: rgba(16, 25, 33, 0.8);
}

.content-text h1 + h1, .content-text h1 + h2, .content-text h1 + h3, .content-text h1 + h4, .content-text h1 + h5, .content-text h1 + h6, .content-text h2 + h1, .content-text h2 + h2, .content-text h2 + h3, .content-text h2 + h4, .content-text h2 + h5, .content-text h2 + h6, .content-text h3 + h1, .content-text h3 + h2, .content-text h3 + h3, .content-text h3 + h4, .content-text h3 + h5, .content-text h3 + h6, .content-text h4 + h1, .content-text h4 + h2, .content-text h4 + h3, .content-text h4 + h4, .content-text h4 + h5, .content-text h4 + h6, .content-text h5 + h1, .content-text h5 + h2, .content-text h5 + h3, .content-text h5 + h4, .content-text h5 + h5, .content-text h5 + h6, .content-text h6 + h1, .content-text h6 + h2, .content-text h6 + h3, .content-text h6 + h4, .content-text h6 + h5, .content-text h6 + h6, #newsletter_form .checkbox-label, .column-right a[href^="tel:"],
.column-right a[href^="mailto:"], .callout-text, .crosslink-text p, .video-placeholder-text button, .breadcrumb, .global-footer, #main-navigation > li > ul > li > a, .checkbox-label, .error-message,
.success-message, .pullquote, blockquote, small, button, body {
  font-family: "mozaic-geo-variable", sans-serif;
  font-variation-settings: "wght" 300;
}

.content-image figure figcaption,
.content-video figure figcaption, .columns-2 > div figcaption, em,
i {
  font-family: "mozaic-italic-variable", sans-serif;
  font-variation-settings: "wght" 300;
  font-style: italic;
}

.split-content ul > li, .testimonials figcaption, .map-text h2, .card-blog h2, .card-project h2, .callout-title, span.icon-red, .category-list a, .crosslink-text h2, #main-navigation a:not(.btn), #main-navigation .btn, .logo-text, .button-cta, .pagination .prev,
.pagination .next, .js-load-more, .submit-button, .js-cm-form h2, blockquote small, h6, h5, h4, h3, h2, h1 {
  font-family: "mozaic-geo-variable", sans-serif;
  font-variation-settings: "wght" 400;
}

h6 em,
h6 i, h5 em,
h5 i, h4 em,
h4 i, h3 em,
h3 i, h2 em,
h2 i, h1 em,
h1 i {
  font-family: "mozaic-italic-variable", sans-serif;
  font-variation-settings: "wght" 400;
}

.social-share button, .notification-bar > p > a, .cta-60-40_text h2, .snippets-title, .listing-clients h2, .hero-text .page-intro, .page-title, .breadcrumb b, .nav-toggle, label, .section-heading, strong,
b {
  font-family: "mozaic-geo-variable", sans-serif;
  font-variation-settings: "wght" 500;
}

.clamp-1 {
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
}

.clamp-2 {
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}

.clamp-3 {
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
}

::-moz-selection {
  color: #690031;
  background: #F8BEE2;
}

::selection {
  color: #690031;
  background: #F8BEE2;
}

body {
  -webkit-animation: fadein 0.8s ease-in forwards;
          animation: fadein 0.8s ease-in forwards;
  line-height: 1.666;
  background-color: #fff;
  color: #101921;
  font-size: 1rem;
  font-size: clamp(1rem, 0.8333rem + 0.8333vw, 1.5rem);
}

p {
  margin: 0 0 1.666rem;
}
p.lead {
  font-size: 1.265625em;
}
@media (min-width: 25em) and (max-width: 75em) {
  p.lead {
    font-size: calc( 1.265625em + 0.174375 * ( ( 100vw - 25em) / 50 ) );
  }
}
@media (min-width: 75em) {
  p.lead {
    font-size: 1.44em;
  }
}

small {
  font-size: 0.75em;
  color: #212e2e;
}

hr {
  background-color: #FAFAFA;
  margin: 3.332rem 0;
  width: 10ch;
  border: none;
  height: 2px;
}

a {
  transition: 0.2s linear;
  color: inherit;
}
a:active {
  color: #101921;
}
a:hover, a:focus {
  color: #101921;
}

.category-list a, .nav-toggle, blockquote small, .map-text h2, .callout-title, .listing-clients h2 {
  text-transform: uppercase;
  letter-spacing: 0.15em;
}

.map-text h2, .callout-title, .listing-clients h2 {
  margin: 0 0 0.4165rem;
}

.content-text h1, .prefooter h2 {
  font-size: 1.6018066406em;
}
@media (min-width: 25em) and (max-width: 75em) {
  .content-text h1, .prefooter h2 {
    font-size: calc( 1.6018066406em + 0.4717933594 * ( ( 100vw - 25em) / 50 ) );
  }
}
@media (min-width: 75em) {
  .content-text h1, .prefooter h2 {
    font-size: 2.0736em;
  }
}

.content-text h2, .card-sector h3 {
  font-size: 1.423828125em;
}
@media (min-width: 25em) and (max-width: 75em) {
  .content-text h2, .card-sector h3 {
    font-size: calc( 1.423828125em + 0.304171875 * ( ( 100vw - 25em) / 50 ) );
  }
}
@media (min-width: 75em) {
  .content-text h2, .card-sector h3 {
    font-size: 1.728em;
  }
}

.content-text h3, .card-service h3 {
  font-size: 1.265625em;
}
@media (min-width: 25em) and (max-width: 75em) {
  .content-text h3, .card-service h3 {
    font-size: calc( 1.265625em + 0.174375 * ( ( 100vw - 25em) / 50 ) );
  }
}
@media (min-width: 75em) {
  .content-text h3, .card-service h3 {
    font-size: 1.44em;
  }
}

.content-text h4 {
  font-size: 1.125em;
}
@media (min-width: 25em) and (max-width: 75em) {
  .content-text h4 {
    font-size: calc( 1.125em + 0.075 * ( ( 100vw - 25em) / 50 ) );
  }
}
@media (min-width: 75em) {
  .content-text h4 {
    font-size: 1.2em;
  }
}

.content-text h5 {
  font-size: 1em;
}
@media (min-width: 25em) and (max-width: 75em) {
  .content-text h5 {
    font-size: calc( 1em + 0 * ( ( 100vw - 25em) / 50 ) );
  }
}
@media (min-width: 75em) {
  .content-text h5 {
    font-size: 1em;
  }
}

.content-text h6 {
  font-size: 0.8888888889em;
}
@media (min-width: 25em) and (max-width: 75em) {
  .content-text h6 {
    font-size: calc( 0.8888888889em + -0.0555555556 * ( ( 100vw - 25em) / 50 ) );
  }
}
@media (min-width: 75em) {
  .content-text h6 {
    font-size: 0.8333333333em;
  }
}

/* Tighter line height for large headings */
h1, h2, h3 {
  line-height: 1.333;
}

blockquote {
  margin: 1.666rem 0 3.332rem;
  color: #690031;
}
blockquote.long-quote p {
  font-size: 1.125em;
}
@media (min-width: 25em) and (max-width: 75em) {
  blockquote.long-quote p {
    font-size: calc( 1.125em + 0.075 * ( ( 100vw - 25em) / 50 ) );
  }
}
@media (min-width: 75em) {
  blockquote.long-quote p {
    font-size: 1.2em;
  }
}
blockquote.medium-quote p {
  font-size: 1.265625em;
}
@media (min-width: 25em) and (max-width: 75em) {
  blockquote.medium-quote p {
    font-size: calc( 1.265625em + 0.174375 * ( ( 100vw - 25em) / 50 ) );
  }
}
@media (min-width: 75em) {
  blockquote.medium-quote p {
    font-size: 1.44em;
  }
}
blockquote.short-quote {
  max-width: 60ch;
}
blockquote.short-quote p {
  font-size: 1.423828125em;
}
@media (min-width: 25em) and (max-width: 75em) {
  blockquote.short-quote p {
    font-size: calc( 1.423828125em + 0.304171875 * ( ( 100vw - 25em) / 50 ) );
  }
}
@media (min-width: 75em) {
  blockquote.short-quote p {
    font-size: 1.728em;
  }
}
blockquote p {
  margin: 0 0 0.833rem;
}
blockquote small {
  color: #212e2e;
  display: block;
}

.section-heading {
  font-size: 1.8020324707em;
}
@media (min-width: 25em) and (max-width: 75em) {
  .section-heading {
    font-size: calc( 1.8020324707em + 0.6862875293 * ( ( 100vw - 25em) / 50 ) );
  }
}
@media (min-width: 75em) {
  .section-heading {
    font-size: 2.48832em;
  }
}

.pullquote {
  color: #690031;
  font-size: 150%;
  display: none;
}
@media (min-width: 600px) {
  .pullquote {
    margin: 0.833rem 1.666rem 0.833rem 0;
    width: 20ch;
    position: relative;
    display: block;
    float: left;
  }
}

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

.sr-only-focusable:active,
.sr-only-focusable:focus {
  position: static;
  width: auto;
  height: auto;
  margin: 0;
  overflow: visible;
  clip: auto;
}

fieldset {
  background-color: transparent;
  border: 0;
  margin: 0;
  padding: 0;
}

legend {
  font-weight: 600;
  margin-bottom: 0.4165rem;
  padding: 0;
}

label {
  margin-bottom: 0.4165rem;
  line-height: 1.333;
  display: block;
  color: #690031;
}

input,
select,
textarea {
  display: block;
  font-family: "value-regular";
}

input[type=text],
input[type=tel],
input[type=email] {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background-color: #fff;
  border: 1px solid #fff;
  border-radius: 4px;
  box-shadow: 0px 0px 1px 1px rgba(16, 25, 33, 0.1), 1px 1px 1px 1px rgba(16, 25, 33, 0.1), 0 0 5em 0 rgba(0, 0, 0, 0.05);
  box-sizing: border-box;
  margin-bottom: 3.332rem;
  padding: 0.833rem;
  transition: border-color 0.25s;
  width: 100%;
}
input[type=text]:focus,
input[type=tel]:focus,
input[type=email]:focus {
  border-color: #9f7dff;
  box-shadow: 0px 0px 1px 1px rgba(16, 25, 33, 0.1), 1px 1px 1px 1px rgba(16, 25, 33, 0.1), 0 0 5em 0 rgba(0, 0, 0, 0.05), 0 0 10px rgba(159, 125, 255, 0.25);
  outline: none;
}
input[type=text]:disabled,
input[type=tel]:disabled,
input[type=email]:disabled {
  background-color: #f2f2f2;
  cursor: not-allowed;
}
input[type=text]:disabled:hover,
input[type=tel]:disabled:hover,
input[type=email]:disabled:hover {
  border: 1px solid #fff;
}
input[type=text]::-webkit-input-placeholder, input[type=tel]::-webkit-input-placeholder, input[type=email]::-webkit-input-placeholder {
  color: #70757a;
}
input[type=text]::-moz-placeholder, input[type=tel]::-moz-placeholder, input[type=email]::-moz-placeholder {
  color: #70757a;
}
input[type=text]::placeholder,
input[type=tel]::placeholder,
input[type=email]::placeholder {
  color: #70757a;
}

textarea {
  margin-bottom: 3.332rem;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background-color: #fff;
  border: 1px solid #fff;
  border-radius: 4px;
  box-shadow: 0px 0px 1px 1px rgba(16, 25, 33, 0.1), 1px 1px 1px 1px rgba(16, 25, 33, 0.1), 0 0 5em 0 rgba(0, 0, 0, 0.05);
  box-sizing: border-box;
  padding: 0.833rem;
  width: 100%;
  resize: vertical;
}
textarea:focus {
  border-color: #9f7dff;
  box-shadow: 0px 0px 1px 1px rgba(16, 25, 33, 0.1), 1px 1px 1px 1px rgba(16, 25, 33, 0.1), 0 0 5em 0 rgba(0, 0, 0, 0.05), 0 0 10px rgba(159, 125, 255, 0.25);
  outline: none;
}

[type=checkbox],
[type=radio] {
  display: inline;
  cursor: pointer;
  margin-right: 0.4165rem;
}

[type=file] {
  margin-bottom: 0.833rem;
  width: 100%;
}

select {
  box-sizing: border-box;
  -webkit-appearance: none;
  -moz-appearance: none;
  margin-bottom: 0.833rem;
  border-radius: 4px;
  box-shadow: 0px 0px 1px 1px rgba(16, 25, 33, 0.1), 1px 1px 1px 1px rgba(16, 25, 33, 0.1), 0 0 5em 0 rgba(0, 0, 0, 0.05);
  padding: 0.833rem;
  border: 1px solid #fff;
  width: 100%;
}

[type=checkbox]:focus,
[type=radio]:focus,
[type=file]:focus,
select:focus {
  outline: #9f7dff;
  outline-offset: 3px;
}

label.error {
  color: #690031;
}
label.error:before {
  text-transform: uppercase;
  content: "Error: ";
}
label.error + input {
  border-color: #f93822;
}

.error-message,
.success-message {
  margin: 1.666rem 0;
  padding: 1.666rem;
}

.error-message {
  background-color: #feebe9;
  border: 2px solid #f93822;
  color: #690031;
}

.success-message {
  background-color: #f5f2ff;
  border: 2px solid #9f7dff;
  color: #101921;
}

@media (min-width: 800px) {
  .js-cm-form {
    padding-left: 3.332rem;
  }
}
.js-cm-form h2 {
  font-size: 1.423828125em;
  padding-bottom: 0.833rem;
}
@media (min-width: 25em) and (max-width: 75em) {
  .js-cm-form h2 {
    font-size: calc( 1.423828125em + 0.304171875 * ( ( 100vw - 25em) / 50 ) );
  }
}
@media (min-width: 75em) {
  .js-cm-form h2 {
    font-size: 1.728em;
  }
}
.js-cm-form > div {
  display: flex;
  flex-direction: column;
}
.js-cm-form input[type=email] {
  border-radius: 30px;
  box-shadow: none;
  background: #FAFAFA;
  border: 2px solid whitesmoke;
  padding-left: 1.5rem;
}
.js-cm-form button {
  position: absolute;
  top: 0;
  right: 0;
  padding: 1.2rem 1.5rem;
}
.js-cm-form .input-wrap {
  padding-bottom: 0.833rem;
}
.js-cm-form .relative {
  position: relative;
}

.inline-label {
  border-radius: 4px;
  box-shadow: 0px 0px 1px 1px rgba(16, 25, 33, 0.1), 1px 1px 1px 1px rgba(16, 25, 33, 0.1), 0 0 5em 0 rgba(0, 0, 0, 0.05);
  margin-bottom: 3.332rem;
  align-items: stretch;
  display: flex;
}
.inline-label label {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
  border-right: 1px solid rgba(0, 0, 0, 0.05);
  flex-direction: column;
  justify-content: center;
  padding: 0 1.666rem;
  min-width: 70px;
  display: flex;
}
.inline-label input {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}
.inline-label label,
.inline-label input {
  box-shadow: none;
  margin: 0;
}

.optional-input {
  justify-content: space-between;
  -webkit-column-gap: 1.666rem;
     -moz-column-gap: 1.666rem;
          column-gap: 1.666rem;
  row-gap: 0;
  align-items: center;
  flex-wrap: wrap;
  display: flex;
}
.optional-input span {
  font-size: 0.75em;
  color: #212e2e;
}

.checkbox-input {
  margin-bottom: 3.332rem;
}

#hampton-sprite {
  visibility: hidden;
  position: absolute;
  z-index: -1;
}

.modal-close-button {
  background-position: -51px -51px;
  background-size: 500px 250px;
}
.no-svg .modal-close-button {
  background-image: url("../media/hampton-sprite@1x.png");
}
.svg .modal-close-button {
  background-image: url("../media/hampton-sprite.svg");
}

.pagination .prev,
.pagination .next, .js-load-more, .submit-button {
  padding: 0.833rem 1.666rem 0.62475rem;
  text-decoration: none;
  border-radius: 50px;
  position: relative;
  overflow: hidden;
  line-height: 1;
  border: none;
}
.pagination .prev:active,
.pagination .next:active, .js-load-more:active, .submit-button:active {
  top: 2px;
}

.submit-button {
  background-color: #f93822;
}
.submit-button span {
  position: relative;
  color: #101921;
  z-index: 1;
}
.load-more-wrap {
  padding: 1.666rem 0 0;
  text-align: center;
}

.js-load-more {
  background-color: transparent;
  transition: 0.2s linear;
  border: 2px solid #FAFAFA;
  color: #212e2e;
}
.js-load-more:after {
  content: "+"/"";
  padding-left: 0.4165rem;
  color: #9f7dff;
}
.js-load-more:hover, .js-load-more:focus {
  border-color: #9f7dff;
}

.button-cta {
  border-bottom: 2px solid #f93822;
  line-height: 1.333;
  text-decoration: none;
  display: inline-block;
  color: #690031;
  margin-top: 0.833rem;
  text-decoration: none;
}
.button-cta:hover, .button-cta:focus {
  border-bottom-color: #690031;
  color: #690031;
}
.button-cta:hover span.icon-red, .button-cta:focus span.icon-red {
  color: #690031;
}

.button-br {
  border-radius: 50%;
  border: 2px solid currentColor;
  color: #f93822;
  display: block;
  height: 44px;
  width: 44px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.button-br svg {
  fill: currentColor;
}
.button-br:hover, .button-br:focus {
  color: #690031;
}

#oldbrowser span,
noscript span {
  background-color: darkred;
  text-align: center;
  display: block;
  color: white;
  padding: 1em;
}
#oldbrowser span a:hover,
#oldbrowser span a:focus,
noscript span a:hover,
noscript span a:focus {
  color: #c58080;
}

.lazyload,
.lazyloading {
  opacity: 0;
}

.lazyloaded {
  opacity: 1;
  transition: opacity 300ms;
}

.statement0, .statement1, .statement2 {
  position: relative;
}

.statement0 .text-wrapper, .statement1 .text-wrapper, .statement2 .text-wrapper {
  position: relative;
  display: inline-block;
  padding-top: 0.2em;
  padding-right: 0.05em;
}

.letter {
  display: inline-block;
  line-height: 1em;
  -webkit-transform-origin: 0 0;
          transform-origin: 0 0;
}

.letters {
  padding: 0 5px;
  margin: 0 1%;
  background: #2d2d2d;
}

.global-header {
  transition: opacity 0.2s ease-in;
}
.global-header.slide-up {
  -webkit-transform: translateY(-100%);
          transform: translateY(-100%);
}
.global-header.fade-out {
  opacity: 0;
}

@-webkit-keyframes fadein {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

@keyframes fadein {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
.nav-toggle .nav-line:nth-child(1) {
  top: 0;
  -webkit-transform: rotate(0);
          transform: rotate(0);
  transition: all 0.3s ease;
}
.nav-toggle .nav-line:nth-child(2) {
  left: 0;
  opacity: 1;
  transition: all 0.3s ease;
}
.nav-toggle .nav-line:nth-child(3) {
  top: 0;
  -webkit-transform: rotate(0);
          transform: rotate(0);
  transition: all 0.3s ease;
}
.nav-toggle.open .nav-label {
  position: absolute;
  top: -100px;
  opacity: 0;
  transition: all 0.3s ease;
}
.nav-toggle.open .nav-line:nth-child(1) {
  top: 12px;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  transition: all 0.3s ease;
}
.nav-toggle.open .nav-line:nth-child(2) {
  left: -100px;
  opacity: 0;
  transition: all 0.3s ease;
}
.nav-toggle.open .nav-line:nth-child(3) {
  top: -12px;
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
  transition: all 0.3s ease;
}

#nav-overlay {
  opacity: 0;
  transition: all 0.6s ease;
}
#nav-overlay.open {
  opacity: 1;
  transition: all 0.3s ease;
}

.rotate {
  -webkit-animation: rotation 260s infinite linear;
          animation: rotation 260s infinite linear;
  -webkit-transform: translateZ(0);
          transform: translateZ(0);
}

.rotate-reverse {
  -webkit-animation: rotationreverse 260s infinite linear;
          animation: rotationreverse 260s infinite linear;
  -webkit-transform: translateZ(0);
          transform: translateZ(0);
}

@-webkit-keyframes rotation {
  from {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  to {
    -webkit-transform: rotate(359deg);
            transform: rotate(359deg);
  }
}

@keyframes rotation {
  from {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  to {
    -webkit-transform: rotate(359deg);
            transform: rotate(359deg);
  }
}
@-webkit-keyframes rotationreverse {
  from {
    -webkit-transform: rotate(359deg);
            transform: rotate(359deg);
  }
  to {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
}
@keyframes rotationreverse {
  from {
    -webkit-transform: rotate(359deg);
            transform: rotate(359deg);
  }
  to {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
}
#video-container {
  width: 640px;
  height: 365px;
  position: relative;
}
#video-container.bg-video {
  width: 640px;
  height: 365px;
  position: absolute;
  top: 0;
  left: 0;
}

video {
  width: 100%;
}

#video-controls {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  padding: 5px;
  opacity: 0;
  transition: opacity 0.3s;
  background-image: linear-gradient(to bottom, rgb(3, 113, 168) 13%, rgb(0, 136, 204) 100%);
  background-color: #9f7dff;
}

#video-container:hover #video-controls {
  opacity: 0.9;
}

button {
  background: rgba(0, 0, 0, 0.5);
  border: 0;
  color: #EEE;
  border-radius: 3px;
}

button:hover {
  cursor: pointer;
}

#seek-bar {
  width: 360px;
}

#volume-bar {
  width: 60px;
}

@media (max-width: 799px) {
  .modal-wrapper {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 999;
  }
  .modal-wrapper[aria-hidden=true] {
    display: none;
  }
  .modal-overlay {
    background-color: #f93822;
    height: 100%;
    width: 100%;
  }
  .modal {
    max-width: calc(100% - 1.666rem * 2);
    position: fixed;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    padding: calc(1.666rem + 5vw);
    overflow: auto;
    width: 60ch;
  }
  .modal-close-button {
    position: absolute;
    top: 1.666rem;
    right: 1.666rem;
    background-color: #f93822;
    white-space: nowrap;
    text-indent: 200%;
    overflow: hidden;
    margin-left: auto;
    display: block;
    border: none;
    height: 48px;
    width: 48px;
  }
}
.global-header {
  position: relative;
  margin: 0 auto;
  z-index: 3;
  padding: calc(1.666rem + 5vw/2) calc(1.666rem + 5vw) 0;
  justify-content: space-between;
  align-items: center;
  display: flex;
}
@media (min-width: 1000px) {
  .global-header {
    padding-top: 1.666rem;
    padding-left: calc(1.666rem + 5vw/2);
    padding-right: calc(1.666rem + 5vw/2);
  }
}

.logo-svg {
  fill: #f93822;
}
.is-white .logo-svg {
  fill: #fff;
}

.notification {
  display: flex;
  background: #101921;
  color: #fff;
  padding: 0.4165rem;
}
.notification p {
  margin: 0;
  line-height: 1.333;
}
.notification a {
  margin-left: 0.4165rem;
}
.notification a:hover, .notification a:focus {
  color: rgb(101, 188, 105);
}
.notification button {
  border: 0;
  font-weight: 400;
  background: transparent;
  margin-left: auto;
  font-size: 14px;
}
@media (min-width: 1000px) {
  .notification {
    display: flex;
    justify-content: center;
  }
  .notification p {
    flex: 1;
    display: flex;
    justify-content: center;
  }
}

.header-logo.hide {
  display: none;
}
.header-logo a {
  text-decoration: none;
  text-align: center;
  -webkit-transform-origin: center left;
          transform-origin: center left;
  -webkit-transform: scale(0.75);
          transform: scale(0.75);
  display: flex;
  flex-direction: column;
  width: 188.41px;
  height: 40px;
}
.header-logo a:hover, .header-logo a:focus {
  color: inherit;
}
@media (min-width: 1000px) {
  .header-logo a {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}
.header-logo .logo-svg {
  vertical-align: middle;
  display: inline-block;
  height: auto;
  width: 100%;
}

.logo-text {
  margin-top: 0.20825rem;
  letter-spacing: 0.5px;
  font-size: 1.35rem;
  display: block;
}

.outline {
  -webkit-animation: offset 1.5s linear forwards;
          animation: offset 1.5s linear forwards;
  stroke-dasharray: 1300px;
  stroke-dashoffset: 1300px;
}

@-webkit-keyframes offset {
  to {
    stroke-dashoffset: 0px;
  }
}

@keyframes offset {
  to {
    stroke-dashoffset: 0px;
  }
}
#header-nav {
  position: fixed;
  top: 0;
  left: 0;
  padding-top: calc(1.666rem + 5vw/2);
  padding-left: calc(1.666rem + 5vw/2);
  display: none;
}
#header-nav.open {
  display: block;
  transition: all 0.6s ease;
}
@media (min-width: 1000px) {
  #header-nav {
    position: relative;
    display: flex;
    padding: 0;
    right: auto;
    top: auto;
  }
}

.nav-toggle {
  transition: 0.2s linear;
  position: relative;
  margin-left: auto;
  line-height: 35px;
  display: block;
  color: inherit;
  border: none;
  height: 35px;
  width: 35px;
}
@media (min-width: 1000px) {
  .nav-toggle {
    display: none;
  }
}
.nav-toggle.text-white {
  color: #fff;
}

#nav-hamburger {
  position: absolute;
  right: 0;
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-around;
}
#nav-hamburger:hover {
  cursor: pointer;
}
#nav-hamburger .nav-line {
  position: relative;
  width: 31.5px;
  height: 3px;
  background: #690031;
}
.nav-toggle.open #nav-hamburger .nav-line, .bg-bright #nav-hamburger .nav-line, .bg-image #nav-hamburger .nav-line, .bg-video #nav-hamburger .nav-line {
  background: #f93822;
}
#nav-hamburger.text-white .nav-line {
  background: #fff;
}

#nav-overlay {
  overflow: hidden;
}
#nav-overlay.open {
  position: fixed;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background: #690031;
  z-index: 3;
}
@media (min-width: 1000px) {
  #nav-overlay {
    display: none;
  }
}

.nav-logo a {
  text-decoration: none;
  height: auto;
  display: block;
}
.nav-logo .logo-svg {
  fill: #fff;
  height: 35px;
  width: auto;
}
@media (min-width: 1000px) {
  .nav-logo {
    display: none;
  }
}

#main-navigation {
  margin: calc(1.666rem + 5vw/2) 0;
  flex-direction: column;
  gap: 0.833rem;
  display: flex;
}
#main-navigation .btn {
  padding: 0.833rem 1.666rem 0.62475rem;
  margin-top: 1.666rem;
  display: inline-block;
  text-decoration: none;
  border-radius: 50px;
  position: relative;
  overflow: hidden;
  line-height: 1;
  background-color: transparent;
  border: 2px solid #690031;
  color: #690031;
}
#main-navigation .btn:hover, #main-navigation .btn:focus {
  color: #690031;
  border-color: #f93822;
}
#main-navigation a:not(.btn) {
  border-bottom: 2px solid transparent;
  line-height: 1.333;
  text-decoration: none;
}
#main-navigation a:not(.btn):hover, #main-navigation a:not(.btn):focus, #main-navigation a:not(.btn).is-active {
  border-bottom: 2px solid #f93822;
}
.open #main-navigation a:not(.btn).is-active {
  color: #fff;
}
#main-navigation > li > a:not(.btn):hover, #main-navigation > li > a:not(.btn):focus {
  color: inherit;
}
#main-navigation > li.has-dropdown > a:not(.btn) {
  border-bottom-color: transparent;
}
#main-navigation > li.has-dropdown > a:not(.btn):after {
  content: "+"/"";
  padding-left: 0.4165rem;
  color: #f93822;
}
#main-navigation > li {
  color: #fff;
}
#main-navigation.white-text .btn {
  background-color: transparent;
  border-color: #fff;
  color: #fff;
}
#main-navigation.white-text .btn:hover, #main-navigation.white-text .btn:focus {
  background-color: transparent;
  border-color: #f93822;
}
.has-dropdown #main-navigation.white-text .btn:hover, .has-dropdown #main-navigation.white-text .btn:focus {
  color: #690031;
}
#main-navigation > li > ul {
  padding: 1.666rem 1.04125rem 0.833rem;
}
#main-navigation > li > ul > li {
  padding: 0 0 0.5553333333rem;
}
#main-navigation > li > ul > li:last-child {
  padding-bottom: 0;
}
#main-navigation > li > ul > li > a {
  font-size: 0.8888888889em;
  white-space: nowrap;
}
@media (min-width: 25em) and (max-width: 75em) {
  #main-navigation > li > ul > li > a {
    font-size: calc( 0.8888888889em + -0.0555555556 * ( ( 100vw - 25em) / 50 ) );
  }
}
@media (min-width: 75em) {
  #main-navigation > li > ul > li > a {
    font-size: 0.8333333333em;
  }
}
#main-navigation > li > ul > li > a:hover, #main-navigation > li > ul > li > a:focus {
  color: #fff;
}
@media (min-width: 1000px) {
  #main-navigation {
    justify-content: flex-end;
    margin: 1.666rem 0;
    gap: 2.499rem;
    flex-direction: row;
    align-items: center;
    display: flex;
  }
  #main-navigation .btn {
    margin-top: 0;
  }
  #main-navigation > li {
    display: inline-block;
    color: #690031;
  }
  #main-navigation.white-text > li {
    color: #fff;
  }
  #main-navigation > li > a {
    display: block;
    padding: 0;
  }
  #main-navigation > li.has-dropdown {
    position: relative;
  }
  #main-navigation > li.has-dropdown.is-active > ul,
  #main-navigation > li.has-dropdown.is-active > ul > li, #main-navigation > li.has-dropdown:hover > ul,
  #main-navigation > li.has-dropdown:hover > ul > li, #main-navigation > li.has-dropdown:focus > ul,
  #main-navigation > li.has-dropdown:focus > ul > li {
    visibility: visible;
    overflow: visible;
    opacity: 1;
    height: auto;
  }
  #main-navigation > li.has-dropdown.is-active > ul, #main-navigation > li.has-dropdown:hover > ul, #main-navigation > li.has-dropdown:focus > ul {
    background: #fff;
    display: inline-block;
    box-shadow: 0 4px 6px 0 rgba(105, 0, 49, 0.1);
    border-radius: 3px;
    padding: 0.833rem 1.2495rem;
    min-width: 150px;
  }
  #main-navigation > li.has-dropdown > ul,
  #main-navigation > li.has-dropdown > ul > li {
    visibility: visible;
    overflow: hidden;
    opacity: 0;
    height: 0;
  }
  #main-navigation > li.has-dropdown > ul {
    position: absolute;
    top: 100%;
    left: 0;
    transition: opacity;
    transition-duration: 0.2s;
    transition-timing-function: ease-in;
  }
  #main-navigation > li.has-dropdown > ul > li > a {
    display: inline-block;
    text-align: left;
    color: #690031;
  }
  #main-navigation > li.has-dropdown > ul > li > a:hover, #main-navigation > li.has-dropdown > ul > li > a:focus {
    color: #690031;
  }
}

.footer-row {
  margin-top: calc(1.666rem + 5vw);
  flex-wrap: wrap;
  display: flex;
}
.footer-row:first-child {
  gap: calc(1.666rem + 5vw);
}
.footer-row:last-child {
  justify-content: space-between;
  gap: 0.833rem;
}

.footer-logo {
  align-self: flex-start;
}
.footer-logo > a {
  display: inline-block;
}
.footer-logo .logo-svg {
  -webkit-transform: scale(0.75);
          transform: scale(0.75);
  -webkit-transform-origin: center left;
          transform-origin: center left;
  fill: #101921;
  height: 40px;
  width: auto;
}
@media (min-width: 800px) {
  .footer-logo .logo-svg {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}

.footer-contact {
  flex-grow: 1;
}
.footer-contact address {
  font-style: normal;
}
.footer-contact a[href^="tel:"],
.footer-contact a[href^="mailto:"] {
  margin-bottom: 0.20825rem;
  text-decoration: none;
}
.footer-contact a[href^="tel:"]:hover, .footer-contact a[href^="tel:"]:focus,
.footer-contact a[href^="mailto:"]:hover,
.footer-contact a[href^="mailto:"]:focus {
  text-decoration: underline;
  color: #f93822;
}

.footer-social, .social-links {
  flex-grow: 0;
}
.footer-social > ul, .social-links > ul {
  display: flex;
  align-items: flex-end;
  justify-content: center;
  list-style: none;
  gap: 0.833rem;
}
.footer-social > ul > li, .social-links > ul > li {
  display: block;
}
.footer-social > ul > li > a, .social-links > ul > li > a {
  display: block;
  text-decoration: none;
}
.footer-social > ul > li > a .icon:hover, .footer-social > ul > li > a .icon:focus, .social-links > ul > li > a .icon:hover, .social-links > ul > li > a .icon:focus {
  fill: #f93822;
}

.social-links {
  margin-top: 3.332rem;
}
.social-links ul {
  gap: 1.666rem;
}

.icon {
  transition: 0.2s linear;
  white-space: nowrap;
  text-indent: 200%;
  overflow: hidden;
  margin: 0 auto;
  display: block;
  fill: #101921;
  height: 44px;
  width: 44px;
}
.icon:hover, .icon:focus {
  fill: #101921;
}

.footer-links a {
  color: #101921;
  text-decoration: none;
}
.footer-links a:hover, .footer-links a:focus {
  text-decoration: underline;
  color: #f93822;
}

.footer-copyright p,
.footer-legal p {
  font-size: 0.8888888889em;
  color: #212e2e;
  margin: 0;
}
@media (min-width: 25em) and (max-width: 75em) {
  .footer-copyright p,
  .footer-legal p {
    font-size: calc( 0.8888888889em + -0.0555555556 * ( ( 100vw - 25em) / 50 ) );
  }
}
@media (min-width: 75em) {
  .footer-copyright p,
  .footer-legal p {
    font-size: 0.8333333333em;
  }
}
.footer-copyright p a,
.footer-legal p a {
  text-decoration: none;
}
.footer-copyright p a:hover, .footer-copyright p a:focus,
.footer-legal p a:hover,
.footer-legal p a:focus {
  text-decoration: underline;
  color: #f93822;
}

@media (min-width: 800px) {
  .footer-legal p {
    text-align: right;
  }
}

.marquee {
  margin-top: calc(1.666rem + 5vw);
  background-color: #690031;
  padding: 1.666rem;
  color: #f93822;
  --gap: 1rem;
  display: flex;
  overflow: hidden;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  gap: var(--gap);
}

.marquee__content {
  font-size: 1.265625em;
  flex-shrink: 0;
  display: flex;
  justify-content: space-around;
  min-width: 100%;
  gap: var(--gap);
  list-style: none;
}
@media (min-width: 25em) and (max-width: 75em) {
  .marquee__content {
    font-size: calc( 1.265625em + 0.174375 * ( ( 100vw - 25em) / 50 ) );
  }
}
@media (min-width: 75em) {
  .marquee__content {
    font-size: 1.44em;
  }
}

@-webkit-keyframes scroll {
  from {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  to {
    -webkit-transform: translateX(calc(-100% - var(--gap)));
            transform: translateX(calc(-100% - var(--gap)));
  }
}

@keyframes scroll {
  from {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  to {
    -webkit-transform: translateX(calc(-100% - var(--gap)));
            transform: translateX(calc(-100% - var(--gap)));
  }
}
/* Enable animation */
.marquee__content {
  -webkit-animation: scroll 9s linear infinite;
          animation: scroll 9s linear infinite;
}

/* Pause animation when reduced-motion is set */
@media (prefers-reduced-motion) {
  .marquee__content {
    -webkit-animation-play-state: paused !important;
            animation-play-state: paused !important;
  }
}
.breadcrumb {
  margin-bottom: 1.666rem;
  color: #212e2e;
}
.breadcrumb a {
  transition: 0.2s linear;
  text-decoration: none;
}
.breadcrumb a:hover, .breadcrumb a:focus {
  text-decoration: underline;
  color: #f93822;
}
.breadcrumb ol {
  font-size: 0.8888888889em;
  display: flex;
  width: 100%;
  list-style: none;
}
@media (min-width: 25em) and (max-width: 75em) {
  .breadcrumb ol {
    font-size: calc( 0.8888888889em + -0.0555555556 * ( ( 100vw - 25em) / 50 ) );
  }
}
@media (min-width: 75em) {
  .breadcrumb ol {
    font-size: 0.8333333333em;
  }
}
.breadcrumb ol li {
  padding-right: 0.4165rem;
  padding-left: 0.4165rem;
}
.breadcrumb ol li:first-child {
  padding-left: 0;
}

article .breadcrumb {
  padding-bottom: 0;
}
article .breadcrumb .container {
  max-width: 60ch;
  margin: 0 auto;
}

.hero-wrapper + article > .breadcrumb {
  margin-top: 1.666rem;
}

.page-header {
  padding-top: 3.332rem;
}
.page-header + *:not(.bg-light, .bg-grey, .content-bg) {
  margin-top: calc(1.666rem + 5vw/2);
}
.page-header.narrow {
  max-width: 60ch;
  margin-right: auto;
  margin-left: auto;
}

.page-title {
  font-size: 2.0272865295em;
  color: #f93822;
}
@media (min-width: 25em) and (max-width: 75em) {
  .page-title {
    font-size: calc( 2.0272865295em + 0.9586974705 * ( ( 100vw - 25em) / 50 ) );
  }
}
@media (min-width: 75em) {
  .page-title {
    font-size: 2.985984em;
  }
}

.page-intro {
  margin-bottom: 0;
  margin-top: 0.20825rem;
  font-size: 1.423828125em;
  color: #212e2e;
}
@media (min-width: 25em) and (max-width: 75em) {
  .page-intro {
    font-size: calc( 1.423828125em + 0.304171875 * ( ( 100vw - 25em) / 50 ) );
  }
}
@media (min-width: 75em) {
  .page-intro {
    font-size: 1.728em;
  }
}

.page-hero {
  position: static;
  padding-top: 0;
  z-index: 1;
}
.page-hero .page-title {
  margin-bottom: 1.666rem;
  max-width: 30ch;
}
.page-hero .page-intro {
  max-width: 36ch;
}
.page-hero .hero-video {
  margin: calc(0.8rem + 1.5vw) 1.6rem;
}

#line {
  position: absolute;
  bottom: 0%;
  z-index: 0;
  width: 75%;
  right: -10%;
  opacity: 0.2;
  cursor: pointer;
  z-index: 1;
}

.hero-text {
  padding: calc(1.666rem + 5vw);
  margin: 0 auto;
  justify-content: space-between;
  align-items: center;
  display: flex;
}
.hero-text .page-intro a {
  color: #fefbfb;
  text-decoration: none;
  border-bottom: 2px solid #fefbfb;
}
.hero-text .page-intro span.statement-swipe {
  display: block;
}
.hero-text .hero-content {
  width: 100%;
}
.hero-text .hero-content h1 {
  font-size: 4vw;
}
.hero-text .hero-content p {
  font-size: 2vw;
}
.hero-text .page-intro {
  line-height: 1.333;
  font-size: 4vw;
}
.hero-text .page-intro > div {
  display: block;
}
.hero-text .page-intro > div + div {
  padding-top: calc(1.666rem + 5vw);
}
.hero-text .page-intro > div:hover span:after, .hero-text .page-intro > div:focus span:after {
  width: 0;
}
.hero-text .page-intro b {
  display: inline-block;
}
.hero-text .page-intro span {
  white-space: nowrap;
  position: relative;
  display: inline-block;
}

.hero-video-wrap {
  position: absolute;
  top: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
}

.hero-content-overlay {
  position: relative;
  z-index: 1;
  transition: opacity 0.2s ease-in;
}
.hero-content-overlay.hide {
  display: none;
}
@media (max-width: 599px) {
  .hero-content-overlay {
    top: 50%;
    -webkit-transform: translateY(0%);
            transform: translateY(0%);
  }
}
@media (min-width: 600px) {
  .hero-content-overlay {
    top: calc(50% + 48px);
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
  }
}

.hero-video-wrap video {
  pointer-events: none;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  cursor: pointer;
  z-index: 0;
  opacity: 0;
  transition: opacity 0.2s ease-in;
}
.hero-video-wrap video.playing {
  pointer-events: auto;
  opacity: 1;
}

@media (max-width: 1024px) {
  .hero-video-wrap video {
    height: auto;
    top: 50%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
  }
}
.hero-video-wrap video::-webkit-media-controls {
  -webkit-filter: hue-rotate(180deg) brightness(0.9);
          filter: hue-rotate(180deg) brightness(0.9);
}

.video-placeholder-text {
  transition: opacity 0.2s ease-out;
  pointer-events: auto;
  position: relative;
  text-align: center;
  z-index: 1;
}
.video-placeholder-text.hide {
  pointer-events: none;
  opacity: 0;
}
.video-placeholder-text h1 {
  font-size: 2.565784514em;
  line-height: 1.333;
}
@media (min-width: 25em) and (max-width: 75em) {
  .video-placeholder-text h1 {
    font-size: calc( 2.565784514em + 1.734032446 * ( ( 100vw - 25em) / 50 ) );
  }
}
@media (min-width: 75em) {
  .video-placeholder-text h1 {
    font-size: 4.29981696em;
  }
}
.video-placeholder-text button {
  font-size: 1.6018066406em;
  line-height: 1.333;
  background: transparent;
  pointer-events: auto;
  position: relative;
  color: #fff;
  padding: 0;
  border: 0;
  z-index: 999;
}
@media (min-width: 25em) and (max-width: 75em) {
  .video-placeholder-text button {
    font-size: calc( 1.6018066406em + 0.4717933594 * ( ( 100vw - 25em) / 50 ) );
  }
}
@media (min-width: 75em) {
  .video-placeholder-text button {
    font-size: 2.0736em;
  }
}
.video-placeholder-text button svg {
  max-width: 100px;
  transition: -webkit-transform 0.2s ease;
  transition: transform 0.2s ease;
  transition: transform 0.2s ease, -webkit-transform 0.2s ease;
}
.video-placeholder-text button span {
  margin: 0.4165rem;
  display: block;
}
.video-placeholder-text button:hover svg, .video-placeholder-text button:focus svg {
  -webkit-transform: scale(1.1);
          transform: scale(1.1);
}

.hero-wrapper {
  -webkit-font-smoothing: antialiased;
  position: relative;
  width: 100%;
  aspect-ratio: 16/9;
  overflow: hidden;
  background: #690031;
}
.hero-wrapper.flex {
  display: flex;
  flex-direction: column;
}
@media (max-width: 599px) {
  .hero-wrapper {
    max-height: 600px;
  }
}
@media (min-width: 1000px) {
  .hero-wrapper {
    max-height: 100vh;
  }
}

.hero-carousel {
  position: absolute !important;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.hero-carousel a {
  display: block;
}
.hero-carousel img {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.hero-media {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.hero-media img,
.hero-media video {
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
  height: 100%;
}
.hero-media[data-overlay]:before {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.2);
  z-index: 1;
}
.hero-media .hero-video-controls {
  position: absolute;
  right: 0;
  bottom: 0;
  margin: 1.666rem;
  z-index: 2;
}
.hero-media .hero-video-controls button {
  background: transparent;
  padding: 0;
}

.hero-header {
  position: relative;
  z-index: 2;
  width: calc(100% - 3em);
  max-width: 1200px;
  padding: calc(0.8rem + 1.5vw) 0;
  margin: auto;
}
.hero-header .hero-header-content {
  max-width: 78ch;
}
.hero-header .hero-header-content h1 {
  color: #fff;
  font-size: 4vw;
  line-height: 1.3;
  font-family: "value-regular";
}
@media (min-width: 800px) {
  .hero-header .hero-header-content h1 {
    font-size: 2vw;
  }
}
.hero-header .hero-header-content .hero-subtitle {
  color: #fff;
  font-size: 2.2806973457em;
  line-height: 1.333;
  margin-top: 0.833rem;
  font-family: "value-serif-bold";
}
@media (min-width: 25em) and (max-width: 75em) {
  .hero-header .hero-header-content .hero-subtitle {
    font-size: calc( 2.2806973457em + 1.3024834543 * ( ( 100vw - 25em) / 50 ) );
  }
}
@media (min-width: 75em) {
  .hero-header .hero-header-content .hero-subtitle {
    font-size: 3.5831808em;
  }
}
@media (min-width: 1000px) {
  .hero-header .hero-header-content .hero-subtitle {
    font-size: 2.565784514em;
    line-height: 1.333;
    margin-top: 1.666rem;
  }
}
@media (min-width: 1000px) and (min-width: 25em) and (max-width: 75em) {
  .hero-header .hero-header-content .hero-subtitle {
    font-size: calc( 2.565784514em + 1.734032446 * ( ( 100vw - 25em) / 50 ) );
  }
}
@media (min-width: 1000px) and (min-width: 75em) {
  .hero-header .hero-header-content .hero-subtitle {
    font-size: 4.29981696em;
  }
}

.placeholder-logo {
  position: fixed;
  left: 0%;
  top: 0%;
  width: 100%;
  height: 100%;
  background: #f93822;
  z-index: 20;
}
.placeholder-logo svg {
  position: absolute;
  left: 50%;
  top: 50%;
  width: 10%;
  min-width: 100px;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}
.placeholder-logo.hide {
  -webkit-animation-duration: 0.5s;
          animation-duration: 0.5s;
  -webkit-animation-timing-function: ease-out;
          animation-timing-function: ease-out;
  -webkit-animation-name: logoscreen;
          animation-name: logoscreen;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
}

.lazy-loaded-image {
  opacity: 1;
  transition: opacity 0.2s ease-in;
}
.lazy-loaded-image.lazy {
  opacity: 0;
}

@-webkit-keyframes logoscreen {
  from {
    opacity: 1;
    z-index: 20;
  }
  50% {
    opacity: 0;
    z-index: 1;
  }
  to {
    position: fixed;
    opacity: 0;
    z-index: -1;
  }
}

@keyframes logoscreen {
  from {
    opacity: 1;
    z-index: 20;
  }
  50% {
    opacity: 0;
    z-index: 1;
  }
  to {
    position: fixed;
    opacity: 0;
    z-index: -1;
  }
}
.instagram-feed::after {
  clear: both;
  content: "";
  display: block;
}
.instagram-feed .instagram-icon,
.instagram-feed .instagram-image {
  width: 50%;
  display: block;
  float: left;
}
.instagram-feed .instagram-icon a,
.instagram-feed .instagram-image a {
  display: block;
}
.instagram-feed .instagram-icon img,
.instagram-feed .instagram-image img {
  display: block;
}
@media (max-width: 799px) {
  .instagram-feed .instagram-icon:nth-child(2)::after,
  .instagram-feed .instagram-image:nth-child(2)::after {
    clear: both;
    content: "";
    display: block;
  }
}
@media (min-width: 800px) {
  .instagram-feed .instagram-icon,
  .instagram-feed .instagram-image {
    width: 25%;
  }
}

.crosslink {
  flex-direction: column;
  text-decoration: none;
  gap: 1.666rem;
  display: flex;
}
.crosslink-reverse {
  flex-direction: column-reverse;
}
@media (min-width: 800px) {
  .crosslink {
    flex-direction: row;
    justify-content: center;
    align-items: center;
    gap: calc(1.666rem + 5vw/2);
  }
  .crosslink-reverse {
    flex-direction: row-reverse;
  }
}

@media (min-width: 800px) {
  .crosslink-left,
  .crosslink-right {
    flex-basis: 50%;
  }
}

.crosslink-image {
  position: relative;
}
.crosslink-image img {
  -o-object-fit: contain;
     object-fit: contain;
  max-height: 100%;
  max-width: 100%;
  width: auto;
}

.crosslink-text h2 {
  font-size: 1.265625em;
  margin-bottom: 0.833rem;
  line-height: 1.333;
  position: relative;
  color: #690031;
  z-index: 0;
}
@media (min-width: 25em) and (max-width: 75em) {
  .crosslink-text h2 {
    font-size: calc( 1.265625em + 0.174375 * ( ( 100vw - 25em) / 50 ) );
  }
}
@media (min-width: 75em) {
  .crosslink-text h2 {
    font-size: 1.44em;
  }
}
@media (min-width: 600px) {
  .listing-projects {
    flex-wrap: wrap;
    display: flex;
    width: 100%;
  }
}
.listing-projects .card-project {
  width: calc(100% - 3em);
  float: left;
  margin-left: 1.5em;
}
@media (min-width: 600px) {
  .listing-projects .card-project {
    width: calc(50% - 2.25em);
    float: left;
    margin-left: 1.5em;
  }
}

.listing-people {
  padding-bottom: calc(1.666rem + 5vw);
  flex-wrap: wrap;
  display: flex;
}
.listing-people .card-people {
  width: calc(50% - 2.25em);
  float: left;
  margin-left: 1.5em;
}
.no-flexbox .listing-people .card-people h2,
.no-flexbox .listing-people .card-people p {
  display: inline-block;
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  word-wrap: normal;
  display: block;
}
.listing-people .card-people[data-aos]:nth-child(odd) {
  transition-delay: 100ms;
}
.listing-people .card-people[data-aos]:nth-child(even) {
  transition-delay: 300ms;
}
@media (min-width: 600px) {
  .listing-people .card-people {
    width: calc(33.3333333333% - 2em);
    float: left;
    margin-left: 1.5em;
  }
  .listing-people .card-people[data-aos]:nth-child(1n+3) {
    transition-delay: 100ms;
  }
  .listing-people .card-people[data-aos]:nth-child(2n+3) {
    transition-delay: 300ms;
  }
  .listing-people .card-people[data-aos]:nth-child(3n+3) {
    transition-delay: 500ms;
  }
}

@media (min-width: 600px) {
  .listing-blog {
    flex-wrap: wrap;
    display: flex;
    width: 100%;
  }
}
.listing-blog .card-blog {
  width: calc(100% - 3em);
  float: left;
  margin-left: 1.5em;
}
.listing-blog .card-blog h2 {
  color: #690031;
}
@media (min-width: 600px) and (max-width: 799px) {
  .listing-blog .card-blog {
    width: calc(50% - 2.25em);
    float: left;
    margin-left: 1.5em;
  }
}
@media (min-width: 800px) {
  .listing-blog .card-blog {
    width: calc(33.3333333333% - 2em);
    float: left;
    margin-left: 1.5em;
  }
}

.listing-related {
  margin: 0 1.5rem;
}
@media (min-width: 600px) {
  .listing-related {
    margin: 0;
  }
}

.listing-clients h2 {
  margin-bottom: 1.666rem;
  width: calc(100% - 3em);
  float: left;
  margin-left: 1.5em;
}
.listing-clients h2 a {
  text-decoration: none;
}
.listing-clients .card-sector {
  width: calc(100% - 3em);
  float: left;
  margin-left: 1.5em;
}
@media (min-width: 600px) and (max-width: 799px) {
  .listing-clients .card-sector {
    width: calc(50% - 2.25em);
    float: left;
    margin-left: 1.5em;
  }
}
@media (min-width: 800px) {
  .listing-clients .card-sector {
    width: calc(33.3333333333% - 2em);
    float: left;
    margin-left: 1.5em;
  }
}

.listing-services {
  margin-top: calc(1.666rem + 5vw);
}
.bg-grey .listing-services {
  margin-top: 0;
}
.listing-services header {
  padding-bottom: 1.666rem;
}
.listing-services header h2 {
  margin-bottom: 0.833rem;
  font-size: 1.8020324707em;
}
@media (min-width: 25em) and (max-width: 75em) {
  .listing-services header h2 {
    font-size: calc( 1.8020324707em + 0.6862875293 * ( ( 100vw - 25em) / 50 ) );
  }
}
@media (min-width: 75em) {
  .listing-services header h2 {
    font-size: 2.48832em;
  }
}
.listing-services header h2 a {
  text-decoration: none;
}
.listing-services header p {
  font-size: 1.423828125em;
}
@media (min-width: 25em) and (max-width: 75em) {
  .listing-services header p {
    font-size: calc( 1.423828125em + 0.304171875 * ( ( 100vw - 25em) / 50 ) );
  }
}
@media (min-width: 75em) {
  .listing-services header p {
    font-size: 1.728em;
  }
}
.listing-services a {
  width: calc(100% - 3em);
  float: left;
  margin-left: 1.5em;
}
.listing-services .card-service {
  width: calc(100% - 3em);
  float: left;
  margin-left: 1.5em;
}
@media (min-width: 800px) and (max-width: 999px) {
  .listing-services .card-service {
    width: calc(50% - 2.25em);
    float: left;
    margin-left: 1.5em;
  }
}
@media (min-width: 1000px) {
  .listing-services .card-service {
    width: calc(33.3333333333% - 2em);
    float: left;
    margin-left: 1.5em;
  }
}

/* Fix large space between */
.listing-services + .content-text {
  padding-top: 0;
}

.category-list a {
  padding: 0.4165rem 0.833rem 0.20825rem;
  font-size: 0.8888888889em;
  border-radius: 1.666rem;
  text-decoration: none;
  display: inline-block;
  line-height: 1;
}
@media (min-width: 25em) and (max-width: 75em) {
  .category-list a {
    font-size: calc( 0.8888888889em + -0.0555555556 * ( ( 100vw - 25em) / 50 ) );
  }
}
@media (min-width: 75em) {
  .category-list a {
    font-size: 0.8333333333em;
  }
}

.category-list {
  margin-bottom: 1.666rem;
  width: calc(100% - 3em);
  float: left;
  margin-left: 1.5em;
}
.category-list a {
  border: 1.5px solid #FAFAFA;
  font-size: 0.75em;
  margin-right: 0.4165rem;
  margin-bottom: 0.833rem;
  color: #212e2e;
}
.category-list a:hover, .category-list a:focus, .category-list a.active {
  border-color: #9f7dff;
  opacity: 1;
}

.pagination {
  margin-bottom: calc(1.666rem + 5vw);
  margin-top: 1.666rem;
  width: calc(100% - 3em);
  float: left;
  margin-left: 1.5em;
}
.pagination .prev,
.pagination .next {
  transition: 0.2s linear;
  border: 2px solid #FAFAFA;
  color: #212e2e;
}
.pagination .prev:hover, .pagination .prev:focus,
.pagination .next:hover,
.pagination .next:focus {
  border-color: #9f7dff;
}
.pagination .prev {
  float: left;
}
.pagination .prev:before {
  content: "←"/"";
  padding-right: 0.4165rem;
  color: #9f7dff;
}
.pagination .next {
  float: right;
}
.pagination .next:after {
  content: "→"/"";
  padding-left: 0.4165rem;
  color: #9f7dff;
}

.snippets-title {
  font-size: 1.125em;
  color: #690031;
}
@media (min-width: 25em) and (max-width: 75em) {
  .snippets-title {
    font-size: calc( 1.125em + 0.075 * ( ( 100vw - 25em) / 50 ) );
  }
}
@media (min-width: 75em) {
  .snippets-title {
    font-size: 1.2em;
  }
}
.snippets-title a {
  text-decoration: none;
  line-height: 1;
}

.snippets-header {
  display: flex;
  justify-content: space-between;
  gap: 1.666rem;
  margin-bottom: 2.499rem;
  margin-top: calc(1.666rem + 5vw);
}
.content-bg .snippets-header {
  margin-top: 0;
}
.snippets-header a {
  margin: 0;
}
.snippets-header .hide-mobile {
  display: none;
}
@media (min-width: 800px) {
  .snippets-header .hide-mobile {
    display: inline-block;
  }
}

span.icon-red {
  transition: 0.2s linear;
  color: #f93822;
}

.snippets {
  gap: 1.666rem;
  display: flex;
  flex-wrap: wrap;
}
@media (min-width: 800px) {
  .snippets {
    flex-wrap: nowrap;
  }
}
.snippets .card-snippet,
.snippets .card-project {
  flex-basis: 100%;
}
@media (min-width: 800px) {
  .snippets .card-snippet,
  .snippets .card-project {
    margin-bottom: 0;
    flex-basis: 50%;
  }
}

.snippets.four {
  gap: 0;
}
@media (min-width: 800px) {
  .snippets.four {
    flex-wrap: wrap;
  }
}

.callout {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  text-align: center;
}

.callout-title {
  font-size: 0.8888888889em;
  margin: 0 0 1.666rem;
  color: #212e2e;
}
@media (min-width: 25em) and (max-width: 75em) {
  .callout-title {
    font-size: calc( 0.8888888889em + -0.0555555556 * ( ( 100vw - 25em) / 50 ) );
  }
}
@media (min-width: 75em) {
  .callout-title {
    font-size: 0.8333333333em;
  }
}

.callout-text {
  font-size: 1.6018066406em;
  margin: 0 0 1.666rem;
  max-width: 26.6666666667ch;
  line-height: 1.333;
  color: #690031;
}
@media (min-width: 25em) and (max-width: 75em) {
  .callout-text {
    font-size: calc( 1.6018066406em + 0.4717933594 * ( ( 100vw - 25em) / 50 ) );
  }
}
@media (min-width: 75em) {
  .callout-text {
    font-size: 2.0736em;
  }
}

.bg-grey {
  background-color: #FAFAFA;
  padding-top: calc(1.666rem + 5vw);
  padding-bottom: calc(1.666rem + 5vw);
}

[class^=card-] img {
  margin-bottom: 1.666rem;
  width: 100%;
}
[class^=card-] p {
  font-size: 0.8888888889em;
  margin-bottom: 3.332rem;
  color: #212e2e;
}
@media (min-width: 25em) and (max-width: 75em) {
  [class^=card-] p {
    font-size: calc( 0.8888888889em + -0.0555555556 * ( ( 100vw - 25em) / 50 ) );
  }
}
@media (min-width: 75em) {
  [class^=card-] p {
    font-size: 0.8333333333em;
  }
}
[class^=card-] > a {
  text-decoration: none;
}

.card-snippet {
  transition: 0.2s cubic-bezier(0.42, 0, 0.58, 1);
  background-color: #101921;
  text-decoration: none;
  position: relative;
  color: #fff;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
@media (min-width: 600px) {
  .card-snippet {
    flex-direction: column;
  }
}
.card-snippet > div {
  position: absolute;
  z-index: 2;
  bottom: 0;
  left: 0;
  flex: 1;
  padding: 1.666rem;
}
.card-snippet.has-overlay:before {
  position: absolute;
  content: "";
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-image: rgba(16, 25, 33, 0.5);
  background-image: linear-gradient(0deg, hsl(218, 11%, 14%), hsla(0, 0%, 0%, 0) 66%);
  z-index: 1;
}
.card-snippet img {
  margin-bottom: 0;
}
.card-snippet:hover, .card-snippet:focus {
  color: #fff;
  -webkit-transform: scale(1.05);
          transform: scale(1.05);
  z-index: 2;
}
.card-snippet h2 {
  line-height: 1.333;
  font-size: 1.125em;
}
@media (min-width: 25em) and (max-width: 75em) {
  .card-snippet h2 {
    font-size: calc( 1.125em + 0.075 * ( ( 100vw - 25em) / 50 ) );
  }
}
@media (min-width: 75em) {
  .card-snippet h2 {
    font-size: 1.2em;
  }
}
.card-snippet span.readtime {
  display: block;
  transition: 0.2s linear;
  font-size: 0.8888888889em;
  margin-bottom: 0.4165rem;
  opacity: 0.75;
}
@media (min-width: 25em) and (max-width: 75em) {
  .card-snippet span.readtime {
    font-size: calc( 0.8888888889em + -0.0555555556 * ( ( 100vw - 25em) / 50 ) );
  }
}
@media (min-width: 75em) {
  .card-snippet span.readtime {
    font-size: 0.8333333333em;
  }
}

.card-project h2 {
  font-size: 1em;
  transition: 0.2s linear;
  color: #690031;
}
@media (min-width: 25em) and (max-width: 75em) {
  .card-project h2 {
    font-size: calc( 1em + 0 * ( ( 100vw - 25em) / 50 ) );
  }
}
@media (min-width: 75em) {
  .card-project h2 {
    font-size: 1em;
  }
}
.card-project ul {
  font-size: 1.125em;
  margin-bottom: 1.666rem;
  list-style: none;
}
@media (min-width: 25em) and (max-width: 75em) {
  .card-project ul {
    font-size: calc( 1.125em + 0.075 * ( ( 100vw - 25em) / 50 ) );
  }
}
@media (min-width: 75em) {
  .card-project ul {
    font-size: 1.2em;
  }
}
.card-project img {
  transition: 0.2s linear;
}
.card-project:hover h2, .card-project:focus h2 {
  color: #f93822;
}
.card-project:hover img, .card-project:focus img {
  -webkit-transform: scale(1.025);
          transform: scale(1.025);
}

.card-project.four-up {
  position: relative;
}
.card-project.four-up .card-content {
  position: absolute;
  height: 100%;
  width: 100%;
  top: 0;
}

.card-blog h2 {
  font-size: 1.125em;
  margin-bottom: 0.20825rem;
  transition: 0.2s linear;
}
@media (min-width: 25em) and (max-width: 75em) {
  .card-blog h2 {
    font-size: calc( 1.125em + 0.075 * ( ( 100vw - 25em) / 50 ) );
  }
}
@media (min-width: 75em) {
  .card-blog h2 {
    font-size: 1.2em;
  }
}
.card-blog img {
  transition: 0.2s linear;
}
.card-blog:hover h2, .card-blog:focus h2 {
  color: #f93822;
}
.card-blog:hover img, .card-blog:focus img {
  -webkit-transform: scale(1.025);
          transform: scale(1.025);
}

.card-sector ul {
  margin: 0.4165rem 0 1.666rem;
  font-size: 1.125em;
  list-style: none;
}
@media (min-width: 25em) and (max-width: 75em) {
  .card-sector ul {
    font-size: calc( 1.125em + 0.075 * ( ( 100vw - 25em) / 50 ) );
  }
}
@media (min-width: 75em) {
  .card-sector ul {
    font-size: 1.2em;
  }
}
.card-sector li {
  margin-bottom: 0.833rem;
  line-height: 1.333;
}
.card-sector a {
  border-bottom: 2px solid #101921;
  line-height: 1.333;
  text-decoration: none;
  display: inline-block;
  color: #101921;
  border-bottom-color: #9f7dff;
}
.card-sector a:hover, .card-sector a:focus {
  border-bottom-color: #101921;
  color: #101921;
}

.card-service ul {
  margin: 0;
  max-width: 60ch;
  margin-bottom: 1.666rem;
  list-style: square;
  margin-right: 18px;
  margin-left: 18px;
}
.card-service ul li {
  margin-top: 0.4165rem;
}

.map {
  margin: calc(1.666rem + 5vw) 0 0;
  position: relative;
  min-height: 640px;
}
@media (max-width: 799px) {
  .map + .full-bleed {
    padding-top: 0;
  }
}
.map.has-image {
  background: #9f7dff url("../media/map-bg.png") no-repeat center;
  background-size: cover;
}
.map iframe {
  position: absolute;
  display: block;
  border: none;
  height: 100%;
  min-height: 100%;
}

.map-container {
  position: relative;
  max-width: 80ch;
  padding: 0 calc(1.666rem + 5vw);
  margin: 0 auto;
  z-index: 1;
}

.map-text {
  position: absolute;
  top: 0;
  background-color: #fff;
  margin: calc(1.666rem + 5vw) 0 0 0;
  padding: calc(1.666rem + 5vw);
}
.map-text h2 {
  margin: 0 0 0.833rem;
  color: #212e2e;
}
.map-text p {
  font-size: 1.265625em;
  margin: 0;
}
@media (min-width: 25em) and (max-width: 75em) {
  .map-text p {
    font-size: calc( 1.265625em + 0.174375 * ( ( 100vw - 25em) / 50 ) );
  }
}
@media (min-width: 75em) {
  .map-text p {
    font-size: 1.44em;
  }
}
.map-text a:hover,
.map-text a:focus {
  color: #f93822;
}

#map-loader {
  height: 640px;
}

.client-list {
  list-style: none;
}
.client-list::after {
  clear: both;
  content: "";
  display: block;
}
.client-list li {
  width: calc(50% - 2.25em);
  float: left;
  margin-left: 1.5em;
  margin-bottom: 1em;
}
@media (min-width: 600px) {
  .client-list li {
    width: calc(33.3333333333% - 2em);
    float: left;
    margin-left: 1.5em;
  }
}
@media (min-width: 800px) {
  .client-list li {
    width: calc(25% - 1.875em);
    float: left;
    margin-left: 1.5em;
  }
}
.client-list li img {
  width: 100%;
}

.cookie-bar {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 3;
  width: 100%;
  text-align: center;
  font-size: 90%;
  color: #fff;
  background: #101921;
  -webkit-transform: translateY(-100%);
          transform: translateY(-100%);
  opacity: 0;
  z-index: 3;
  transition: all 0.2s ease;
}
.cookie-bar.show {
  -webkit-transform: translateY(0%);
          transform: translateY(0%);
  opacity: 1;
}
.cookie-bar svg {
  margin: 0 0 -2px 0;
}
.cookie-bar a {
  text-decoration: none;
  border-bottom: 1px solid #fff;
}
.cookie-bar a:hover, .cookie-bar a:focus {
  color: #fff;
  border-bottom: 1px solid #9f7dff;
}
.cookie-bar .container {
  max-width: 48em;
  padding: 0.5rem;
  margin: 0 auto;
}

/* Call to action block
================================================== */
.content-cta {
  background-color: #9f7dff;
  padding: calc(1.666rem + 5vw) 0;
}

.call-to-action_text {
  max-width: 60ch;
  text-align: center;
  margin: 0 auto;
}

.call-to-action_title {
  font-size: 1.423828125em;
  line-height: 1.333;
  margin-bottom: 0.833rem;
}
@media (min-width: 25em) and (max-width: 75em) {
  .call-to-action_title {
    font-size: calc( 1.423828125em + 0.304171875 * ( ( 100vw - 25em) / 50 ) );
  }
}
@media (min-width: 75em) {
  .call-to-action_title {
    font-size: 1.728em;
  }
}

.call-to-action_link {
  border-bottom: 2px solid #0A311B;
  text-decoration: none;
  font-size: 1.423828125em;
  color: #0A311B;
  line-height: 1;
}
@media (min-width: 25em) and (max-width: 75em) {
  .call-to-action_link {
    font-size: calc( 1.423828125em + 0.304171875 * ( ( 100vw - 25em) / 50 ) );
  }
}
@media (min-width: 75em) {
  .call-to-action_link {
    font-size: 1.728em;
  }
}
.call-to-action_link:hover, .call-to-action_link:focus {
  border-bottom-color: #fff;
  color: #fff;
}

.cta-60-40 {
  flex-direction: column;
  gap: 1.666rem;
  display: flex;
}
@media (min-width: 800px) {
  .cta-60-40 {
    flex-direction: row;
    gap: calc(1.666rem + 5vw);
  }
}

.cta-60-40_text {
  justify-content: space-between;
  gap: 1.666rem;
  display: flex;
}
.cta-60-40_text h2 {
  font-size: 1.125em;
  color: #690031;
}
@media (min-width: 25em) and (max-width: 75em) {
  .cta-60-40_text h2 {
    font-size: calc( 1.125em + 0.075 * ( ( 100vw - 25em) / 50 ) );
  }
}
@media (min-width: 75em) {
  .cta-60-40_text h2 {
    font-size: 1.2em;
  }
}
@media (min-width: 800px) {
  .cta-60-40_text {
    -webkit-writing-mode: vertical-lr;
            writing-mode: vertical-lr;
  }
}

.cta-60-40_images {
  gap: 1.666rem;
  display: flex;
}
@-webkit-keyframes bounce {
  0% {
    -webkit-transform: rotate(-2.5deg);
            transform: rotate(-2.5deg);
    animationTimingFunction: cubic-bezier(0.8, 0, 1, 1);
  }
  50% {
    -webkit-transform: none;
            transform: none;
    animationTimingFunction: cubic-bezier(0, 0, 0.2, 1);
  }
  100% {
    -webkit-transform: rotate(-2.5deg);
            transform: rotate(-2.5deg);
    animationTimingFunction: cubic-bezier(0.8, 0, 1, 1);
  }
}
@keyframes bounce {
  0% {
    -webkit-transform: rotate(-2.5deg);
            transform: rotate(-2.5deg);
    animationTimingFunction: cubic-bezier(0.8, 0, 1, 1);
  }
  50% {
    -webkit-transform: none;
            transform: none;
    animationTimingFunction: cubic-bezier(0, 0, 0.2, 1);
  }
  100% {
    -webkit-transform: rotate(-2.5deg);
            transform: rotate(-2.5deg);
    animationTimingFunction: cubic-bezier(0.8, 0, 1, 1);
  }
}
.notification-bar {
  background-color: #013057;
  padding: 0 1.666rem;
  position: relative;
  color: #fff;
  z-index: 999;
  justify-content: center;
  align-items: center;
  display: flex;
}
.notification-bar > p {
  display: inline-block;
  padding: 0.833rem 0;
  margin: 0;
}
.notification-bar > p > a {
  color: #ffa400;
}
.notification-bar > p > a:hover, .notification-bar > p > a:focus {
  color: #fff;
}
.notification-bar > svg {
  -webkit-animation: bounce 0.25s 3 ease;
          animation: bounce 0.25s 3 ease;
  -webkit-animation-delay: 2s;
          animation-delay: 2s;
  -webkit-transform: rotate(-2.5deg);
          transform: rotate(-2.5deg);
  margin-right: 0.833rem;
  position: relative;
  flex-shrink: 0;
  height: auto;
  width: 75px;
  top: 10px;
}
.notification-bar:hover svg, .notification-bar:focus svg {
  -webkit-animation: bounce 0.25s 3 ease;
          animation: bounce 0.25s 3 ease;
}

.columns-2 {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 1.666rem;
  width: 100%;
  margin: 0 auto;
}
.columns-2.async {
  gap: 1.666rem;
  flex-wrap: nowrap;
}
.columns-2.async > div {
  width: 50%;
}
.columns-2.async > div figure {
  height: 100%;
}
.columns-2.async > div figure img {
  height: 100%;
}
.columns-2.async > div:first-child {
  min-width: 65%;
}
.columns-2.async > div:last-child {
  width: auto;
}
.columns-2.async > div:last-child img {
  overflow: hidden;
  max-height: 100%;
  min-height: 100%;
}
@media (max-width: 799px) {
  .columns-2 > div {
    width: 100%;
  }
}
@media (max-width: 799px) {
  .columns-2 > div img {
    width: 100%;
  }
}
@media (min-width: 600px) {
  .columns-2 > div figure.has-padding {
    padding: 1.666rem;
    padding-right: 0;
  }
}
.columns-2 > div figcaption {
  font-size: 0.8888888889em;
  padding-top: 0.833rem;
  max-width: 80ch;
  text-align: center;
  margin: 0 auto;
  color: #212e2e;
}
@media (min-width: 25em) and (max-width: 75em) {
  .columns-2 > div figcaption {
    font-size: calc( 0.8888888889em + -0.0555555556 * ( ( 100vw - 25em) / 50 ) );
  }
}
@media (min-width: 75em) {
  .columns-2 > div figcaption {
    font-size: 0.8333333333em;
  }
}

@media (min-width: 600px) {
  .columns-2:not(.async) {
    display: flex;
    flex-wrap: nowrap;
    max-width: 1200px;
    width: 100%;
    margin: 0 auto;
  }
  .columns-2:not(.async) > div {
    width: 50%;
  }
  .columns-2:not(.async) > div:last-child {
    margin-right: 0;
  }
}
.bg-grey {
  background: #FAFAFA;
}

.grid-logos {
  top: 0;
  display: flex;
  justify-content: space-between;
  gap: 1.666rem;
  box-sizing: border-box;
  margin-bottom: 1.5rem;
  padding: 0;
}
.grid-logos div {
  text-align: center;
}
.grid-logos div img {
  width: 100%;
  image-rendering: -moz-crisp-edges; /* Firefox */
  image-rendering: -o-crisp-edges; /* Opera */
  image-rendering: -webkit-optimize-contrast; /* Webkit (non-standard naming) */
  image-rendering: crisp-edges;
  -ms-interpolation-mode: nearest-neighbor;
}
.grid-logos a {
  display: block;
}
.grid-logos + .grid-logo {
  top: 100%;
}

[data-parallax] {
  display: flex;
  justify-content: space-between;
  gap: 1rem;
  align-items: center;
  justify-content: center;
}

[data-parallax] + [data-parallax] {
  margin-top: 1.666rem;
}

[data-parallax=left] {
  --x: -200px;
  will-change: transform;
  -webkit-transform: translateX(calc(-1 * var(--x) * 200px));
          transform: translateX(calc(-1 * var(--x) * 200px));
}

[data-parallax=right] {
  --x: 0px;
  will-change: transform;
  -webkit-transform: translateX(calc(var(--x) * 200px));
          transform: translateX(calc(var(--x) * 200px));
  display: flex;
  align-items: center;
  justify-content: center;
}

[data-share][aria-expanded=true] {
  -webkit-transform: translateY(-29px);
          transform: translateY(-29px);
  opacity: 0;
}
[data-share][aria-expanded=true] + ul {
  -webkit-transform: translateY(-29px);
          transform: translateY(-29px);
  opacity: 1;
}

.social-share {
  flex-direction: column;
  justify-content: center;
  align-items: center;
  display: flex;
}
.social-share:hover button {
  -webkit-transform: translateY(-29px);
          transform: translateY(-29px);
  opacity: 0;
}
.social-share:hover ul {
  -webkit-transform: translateY(-29px);
          transform: translateY(-29px);
  opacity: 1;
}
.social-share button {
  display: flex;
  align-content: center;
  background: transparent;
  color: #690031;
  padding: 0;
  transition: all 0.3s ease-in-out;
}

.social-share ul {
  transition: all 0.3s ease-in-out;
  -webkit-transform: translateY(0px);
          transform: translateY(0px);
  opacity: 0;
  list-style: none;
  display: flex;
  justify-content: between;
  gap: 1em;
}

.social-share ul a {
  line-height: 1;
  color: #690031;
  text-decoration: none;
  display: inline-block;
  border-bottom: 2px solid #f93822;
  line-height: 1.333;
  text-decoration: none;
  display: inline-block;
  color: #690031;
}
.social-share ul a:hover, .social-share ul a:focus {
  border-bottom-color: #690031;
  color: #690031;
}

.icon-share {
  margin-right: 0.5em;
}

.testimonials {
  transition: all 0.1s ease-in;
  padding-top: calc(1.666rem + 5vw);
  padding-bottom: calc(1.666rem + 5vw);
}
.testimonials h2 {
  transition: all 0.1s ease-in;
  font-size: 1.125em;
  flex: 1 0 auto;
}
@media (min-width: 25em) and (max-width: 75em) {
  .testimonials h2 {
    font-size: calc( 1.125em + 0.075 * ( ( 100vw - 25em) / 50 ) );
  }
}
@media (min-width: 75em) {
  .testimonials h2 {
    font-size: 1.2em;
  }
}
.testimonials blockquote {
  font-size: 1.265625em;
  line-height: 1.333;
  margin: 0 0 1.666rem;
}
@media (min-width: 25em) and (max-width: 75em) {
  .testimonials blockquote {
    font-size: calc( 1.265625em + 0.174375 * ( ( 100vw - 25em) / 50 ) );
  }
}
@media (min-width: 75em) {
  .testimonials blockquote {
    font-size: 1.44em;
  }
}
.testimonials figcaption {
  transition: all 0.1s ease-in;
}
.testimonials p {
  transition: all 0.1s ease-in;
}

.slider {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 1.666rem;
}
@media (min-width: 600px) {
  .slider {
    display: flex;
    flex-direction: row;
    gap: calc(1.666rem + 5vw);
  }
}

.slider-nav {
  margin: 1.666rem 0 0 0;
}
@media (min-width: 600px) {
  .slider-nav {
    position: absolute;
    bottom: 0;
    left: 0;
  }
}
.slider-nav button {
  background: transparent;
  padding: 0;
}
.slider-nav button.disable {
  opacity: 0.5;
}

.split {
  display: flex;
  justify-content: space-between;
  flex-direction: column;
  gap: calc(1.666rem + 5vw/2);
}
@media (min-width: 1000px) {
  .split {
    flex-direction: row;
  }
  .split[data-reverse] {
    flex-direction: row-reverse;
  }
}

.split-content h2 {
  font-size: 1.423828125em;
  margin-bottom: 1rem;
}
@media (min-width: 25em) and (max-width: 75em) {
  .split-content h2 {
    font-size: calc( 1.423828125em + 0.304171875 * ( ( 100vw - 25em) / 50 ) );
  }
}
@media (min-width: 75em) {
  .split-content h2 {
    font-size: 1.728em;
  }
}
.split-content ul {
  margin-top: 3.332rem;
  list-style: none;
  -webkit-columns: 2;
     -moz-columns: 2;
          columns: 2;
  -webkit-column-gap: 3.332rem;
     -moz-column-gap: 3.332rem;
          column-gap: 3.332rem;
}
.split-content ul > li {
  margin-bottom: 1.666rem;
  line-height: 1.333;
}

.split-img {
  min-width: 40%;
  overflow: hidden;
  aspect-ratio: 16/9;
}
.split-img img {
  -o-object-fit: cover;
     object-fit: cover;
  height: 100%;
}

[data-theme=light] h2 {
  color: #9f7dff;
}

[data-theme=bright] h2 {
  color: #f93822;
}

[data-theme=dark-blue] h2 {
  color: #6D32FF;
}

[data-theme=dark-green] h2 {
  color: #0A311B;
}

.contact-columns {
  padding: 0 1.666rem;
}

#contact_form {
  max-width: 60ch;
}

.column-right {
  padding-top: 1.666rem;
  display: flex;
  flex-direction: column;
  gap: 0.4165rem;
}
.column-right h3 {
  display: none;
}
.column-right a[href^="tel:"],
.column-right a[href^="mailto:"] {
  font-size: 1.265625em;
  position: relative;
  margin-left: 1.5em;
  display: block;
}
@media (min-width: 25em) and (max-width: 75em) {
  .column-right a[href^="tel:"],
  .column-right a[href^="mailto:"] {
    font-size: calc( 1.265625em + 0.174375 * ( ( 100vw - 25em) / 50 ) );
  }
}
@media (min-width: 75em) {
  .column-right a[href^="tel:"],
  .column-right a[href^="mailto:"] {
    font-size: 1.44em;
  }
}
.column-right a[href^="tel:"] {
  text-decoration: none;
}
.column-right a[href^="mailto:"]:hover, .column-right a[href^="mailto:"]:focus {
  color: #f93822;
}
.column-right a[href^="tel:"]:before {
  position: absolute;
  top: calc(50% - 12px);
  left: -1.5em;
  height: 24px;
  width: 22.5px;
  content: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="22.5"><path d="M24 9.75C24 4.361 18.639 0 12 0S0 4.361 0 9.75a9.31 9.31 0 0 0 4.944 7.889 7.447 7.447 0 0 1-1.806 4 .568.568 0 0 0-.111.556.513.513 0 0 0 .472.306c2.889 0 5.222-1.889 6.472-3.139A15.851 15.851 0 0 0 12 19.5c6.639 0 12-4.361 12-9.75Z" fill="%23f93822"/></svg>');
}
.column-right a[href^="mailto:"]:before {
  position: absolute;
  top: calc(50% - 9px);
  left: -1.5em;
  height: 18px;
  width: 24px;
  content: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="18"><path d="m12 10.5 12-9A1.494 1.494 0 0 0 22.5 0h-21A1.494 1.494 0 0 0 0 1.5Zm0 2.694-12-9V16.5A1.494 1.494 0 0 0 1.5 18h21a1.494 1.494 0 0 0 1.5-1.5V4.194Z" fill="%23f93822"/></svg>');
}
@media (min-width: 800px) {
  .column-right {
    flex-direction: row;
    gap: 3.332rem;
  }
}

.prefooter h2 {
  text-shadow: 1px 1px 1px rgba(255, 255, 255, 0.1);
  margin-bottom: 0.833rem;
}

.form-container {
  width: calc(100% - 3em);
  float: left;
  margin-left: 1.5em;
}

#newsletter_form {
  box-shadow: 1px 1px 0 #794aff, 2px 2px 0 #794aff, 3px 3px 0 #794aff, 4px 4px 0 #794aff, 5px 5px 0 #794aff;
  background-color: #9f7dff;
  text-align: center;
  padding: calc(1.666rem + 5vw);
  color: #101921;
}
#newsletter_form input[type=email],
#newsletter_form button {
  margin-bottom: 0.833rem;
  display: inline-block;
  text-align: center;
}
#newsletter_form input[type=email] {
  border-radius: 50px;
}
@media (min-width: 600px) {
  #newsletter_form input[type=email] {
    width: calc(100% - 134px - 1.666rem);
  }
}
#newsletter_form .checkbox-label {
  text-shadow: 1px 1px 1px rgba(255, 255, 255, 0.1);
  margin-bottom: 1.666rem;
  font-size: 1.265625em;
  cursor: pointer;
  display: block;
}
@media (min-width: 25em) and (max-width: 75em) {
  #newsletter_form .checkbox-label {
    font-size: calc( 1.265625em + 0.174375 * ( ( 100vw - 25em) / 50 ) );
  }
}
@media (min-width: 75em) {
  #newsletter_form .checkbox-label {
    font-size: 1.44em;
  }
}
@media (min-width: 600px) {
  #newsletter_form button {
    margin-left: 1.666rem;
  }
}

.form-brief .grid-outer, .form-brief article .breadcrumb, article .form-brief .breadcrumb, .form-brief .page-header, .form-brief .page-hero, .form-brief .crosslink, .form-brief .listing-clients, .form-brief .listing-services, .form-brief .form-contact, .form-brief .prefooter {
  align-items: flex-start;
  flex-direction: column;
  gap: 1.666rem;
  flex-wrap: wrap;
  display: flex;
}
@media (min-width: 1000px) {
  .form-brief .grid-outer, .form-brief article .breadcrumb, article .form-brief .breadcrumb, .form-brief .page-header, .form-brief .page-hero, .form-brief .crosslink, .form-brief .listing-clients, .form-brief .listing-services, .form-brief .form-contact, .form-brief .prefooter {
    flex-direction: row;
    flex-wrap: nowrap;
    gap: calc(1.666rem + 5vw);
  }
}

.form-brief_intro h1 {
  margin-bottom: 1.666rem;
}
.form-brief_intro p {
  margin-bottom: 0;
}
@media (min-width: 1000px) {
  .form-brief_intro {
    flex-basis: 22.5ch;
    top: calc(1.666rem + 5vw);
    position: -webkit-sticky;
    position: sticky;
    flex-shrink: 0;
  }
}

.form-brief form {
  flex: 1;
}

[class*=content-] + *,
[class*=bg-] + *,
.hero-video,
.grid-outer + [class*=content-],
article .breadcrumb + [class*=content-],
.page-header + [class*=content-],
.page-hero + [class*=content-],
.crosslink + [class*=content-],
.listing-clients + [class*=content-],
.listing-services + [class*=content-],
.form-contact + [class*=content-],
.prefooter + [class*=content-],
.content-text:not(.bg-grey, .bg-light),
.content-callout:not(.bg-grey, .bg-light) {
  margin-top: calc(1.666rem + 5vw);
}

.content-video + .content-bg,
.content-bg + .content-bg,
[class*=bg-] + [class*=bg-] {
  margin-top: 0;
}

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

.content-text {
  padding-right: calc(1.666rem + 5vw);
  padding-left: calc(1.666rem + 5vw);
  margin-right: auto;
  margin-left: auto;
}
.content-text a:not(.button-cta):hover, .content-text a:not(.button-cta):focus {
  color: #f93822;
}
.content-text .grid-inner {
  max-width: 60ch;
  margin: 0 auto;
}
.content-text .grid-inner.wide {
  max-width: 80ch;
}
.content-text .grid-inner > *:first-child {
  margin-top: 0;
}
.content-text .grid-inner > *:last-child {
  margin-bottom: 0;
}
.content-text h1 {
  margin: 2.499rem 0 1.666rem;
  color: #690031;
}
.content-text h2 {
  margin: 2.499rem 0 1.666rem;
  color: #690031;
}
.content-text h3 {
  margin: 2.499rem 0 1.666rem;
  color: #690031;
}
.content-text h4 {
  margin: 2.499rem 0 1.666rem;
  color: #690031;
}
.content-text h5 {
  margin: 2.499rem 0 1.666rem;
  color: #690031;
}
.content-text h6 {
  margin: 2.499rem 0 1.666rem;
  color: #690031;
}
.content-text h1 + h1, .content-text h1 + h2, .content-text h1 + h3, .content-text h1 + h4, .content-text h1 + h5, .content-text h1 + h6, .content-text h2 + h1, .content-text h2 + h2, .content-text h2 + h3, .content-text h2 + h4, .content-text h2 + h5, .content-text h2 + h6, .content-text h3 + h1, .content-text h3 + h2, .content-text h3 + h3, .content-text h3 + h4, .content-text h3 + h5, .content-text h3 + h6, .content-text h4 + h1, .content-text h4 + h2, .content-text h4 + h3, .content-text h4 + h4, .content-text h4 + h5, .content-text h4 + h6, .content-text h5 + h1, .content-text h5 + h2, .content-text h5 + h3, .content-text h5 + h4, .content-text h5 + h5, .content-text h5 + h6, .content-text h6 + h1, .content-text h6 + h2, .content-text h6 + h3, .content-text h6 + h4, .content-text h6 + h5, .content-text h6 + h6 {
  font-size: 0.75em;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  margin: 0 0 0.833rem;
  color: #212e2e;
}
.content-text ul,
.content-text ol {
  margin: 1.666rem 1.666rem 1.666rem 17px;
}
.content-text ul ul,
.content-text ul ol,
.content-text ol ul,
.content-text ol ol {
  margin: 0 0.833rem;
}
@media (min-width: 800px) {
  .content-text q.pullquote {
    margin-left: -2.5vw;
  }
}

.content-logos {
  overflow: hidden;
}

.content-text.bg-dark {
  -webkit-font-smoothing: antialiased;
  background-color: #690031;
  padding: calc(1.666rem + 5vw);
  margin-top: calc(1.666rem + 5vw);
  max-width: none;
  color: #FAFAFA;
}
.content-text.bg-dark .grid-inner {
  max-width: 60ch;
  margin: 0 auto;
}
.content-text.bg-dark a {
  border-bottom-color: #f93822;
  color: #fff;
}
.content-text.bg-dark a:hover, .content-text.bg-dark a:focus {
  border-bottom-color: #fff;
}
.content-text.bg-dark h1 {
  color: #FAFAFA;
}
.content-text.bg-dark h2 {
  color: #FAFAFA;
}
.content-text.bg-dark h3 {
  color: #FAFAFA;
}
.content-text.bg-dark h4 {
  color: #FAFAFA;
}
.content-text.bg-dark h5 {
  color: #FAFAFA;
}
.content-text.bg-dark h6 {
  color: #FAFAFA;
}
.content-text.bg-dark + .bg-dark {
  padding-top: 0;
  margin-top: 0;
}

.content-image .grid-outer, .content-image article .breadcrumb, article .content-image .breadcrumb, .content-image .page-header, .content-image .page-hero, .content-image .crosslink, .content-image .listing-clients, .content-image .listing-services, .content-image .form-contact, .content-image .prefooter,
.content-video .grid-outer,
.content-video article .breadcrumb,
article .content-video .breadcrumb,
.content-video .page-header,
.content-video .page-hero,
.content-video .crosslink,
.content-video .listing-clients,
.content-video .listing-services,
.content-video .form-contact,
.content-video .prefooter {
  margin: 0 auto;
}
.content-image figure figcaption,
.content-video figure figcaption {
  font-size: 0.8888888889em;
  padding-top: 0.833rem;
  max-width: 80ch;
  text-align: center;
  margin: 0 auto;
  color: #212e2e;
}
@media (min-width: 25em) and (max-width: 75em) {
  .content-image figure figcaption,
  .content-video figure figcaption {
    font-size: calc( 0.8888888889em + -0.0555555556 * ( ( 100vw - 25em) / 50 ) );
  }
}
@media (min-width: 75em) {
  .content-image figure figcaption,
  .content-video figure figcaption {
    font-size: 0.8333333333em;
  }
}
.content-image figure figcaption a:hover, .content-image figure figcaption a:focus,
.content-video figure figcaption a:hover,
.content-video figure figcaption a:focus {
  color: #f93822;
}
.content-image figure img,
.content-video figure img {
  margin: 0 auto;
}
.content-image figure p,
.content-video figure p {
  margin-bottom: 0;
}
.content-image video,
.content-video video {
  margin-right: auto;
  margin-left: auto;
  max-width: 100%;
  height: auto;
  width: auto;
}

.content-image.large-image p:last-child,
.content-video p:last-child {
  margin-bottom: 0;
}
.content-image.large-image figcaption,
.content-video figcaption {
  padding-bottom: 1.666rem;
}
@media (max-width: 999px) {
  .content-image.large-image figcaption,
  .content-video figcaption {
    padding-right: calc(1.666rem + 5vw);
    padding-left: calc(1.666rem + 5vw);
  }
}

.content-image.large-image .grid-outer, .content-image.large-image article .breadcrumb, article .content-image.large-image .breadcrumb, .content-image.large-image .page-header, .content-image.large-image .page-hero, .content-image.large-image .crosslink, .content-image.large-image .listing-clients, .content-image.large-image .listing-services, .content-image.large-image .form-contact, .content-image.large-image .prefooter {
  max-width: none;
  padding-right: 0;
  padding-left: 0;
}
.content-image.large-image img {
  width: 100%;
}

.content-image.small-image {
  max-width: 60ch;
  margin-right: auto;
  margin-left: auto;
}

.video-wrapper {
  position: relative;
  padding-bottom: 56.25%; /* 16:9 */
  height: 0;
  cursor: pointer;
  overflow: hidden;
}
.video-wrapper .swap-video img {
  position: absolute;
  -o-object-fit: cover;
     object-fit: cover;
  height: 100%;
  width: 100%;
}
.video-wrapper:hover .play-icon, .video-wrapper:focus .play-icon {
  -webkit-transform: scale(1.1);
          transform: scale(1.1);
}
.video-wrapper .play-icon {
  background-image: url("../media/play-icon.svg");
  box-shadow: 0 1em 1em rgba(16, 25, 33, 0.5);
  outline: 1px solid rgba(255, 255, 255, 0.05);
  background-repeat: no-repeat;
  background-position: center;
  background-size: 50%;
  background-color: #101921;
  border-radius: 100%;
  left: calc(50% - 50px);
  top: calc(50% - 50px);
  position: absolute;
  z-index: 1;
  height: 100px;
  width: 100px;
  bottom: 0;
  right: 0;
  transition: -webkit-transform 0.3s ease-in-out;
  transition: transform 0.3s ease-in-out;
  transition: transform 0.3s ease-in-out, -webkit-transform 0.3s ease-in-out;
}
@media (max-width: 999px) {
  .video-wrapper .play-icon {
    left: calc(50% - 37.5px);
    top: calc(50% - 37.5px);
    height: 75px;
    width: 75px;
  }
}
.video-wrapper img {
  max-width: 100%;
}
.video-wrapper iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.content-video.large {
  background: #690031;
  -webkit-font-smoothing: antialiased;
  position: relative;
  width: 100%;
  aspect-ratio: 16/9;
  overflow: hidden;
}
.content-video.large.flex {
  display: flex;
  flex-direction: column;
}
@media (max-width: 599px) {
  .content-video.large {
    max-height: 600px;
  }
}
@media (min-width: 1000px) {
  .content-video.large {
    max-height: 100vh;
  }
}
.content-video.large[data-overlay]:before {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.2);
  z-index: 1;
}
.content-video.large .hero-video-controls {
  position: absolute;
  right: 0;
  bottom: 0;
  margin: 1.666rem;
  z-index: 2;
}
.content-video.large .hero-video-controls button {
  background: transparent;
  padding: 0;
}
.content-video.large img,
.content-video.large video {
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
  height: 100%;
}

@-webkit-keyframes splide-loading {
  0% {
    -webkit-transform: rotate(0);
            transform: rotate(0);
  }
  to {
    -webkit-transform: rotate(1turn);
            transform: rotate(1turn);
  }
}

@keyframes splide-loading {
  0% {
    -webkit-transform: rotate(0);
            transform: rotate(0);
  }
  to {
    -webkit-transform: rotate(1turn);
            transform: rotate(1turn);
  }
}
.splide--draggable > .splide__slider > .splide__track, .splide--draggable > .splide__track {
  -webkit-user-select: none;
  -moz-user-select: none;
       user-select: none;
}

.splide--fade > .splide__slider > .splide__track > .splide__list, .splide--fade > .splide__track > .splide__list {
  display: block;
}

.splide--fade > .splide__slider > .splide__track > .splide__list > .splide__slide, .splide--fade > .splide__track > .splide__list > .splide__slide {
  left: 0;
  opacity: 0;
  position: absolute;
  top: 0;
  z-index: 0;
  height: 100%;
}

.splide--fade > .splide__slider > .splide__track > .splide__list > .splide__slide.is-active, .splide--fade > .splide__track > .splide__list > .splide__slide.is-active {
  opacity: 1;
  position: relative;
  z-index: 1;
}

.splide--rtl {
  direction: rtl;
}

.splide--ttb.is-active > .splide__slider > .splide__track > .splide__list, .splide--ttb.is-active > .splide__track > .splide__list {
  display: block;
}

.splide__container {
  box-sizing: border-box;
  position: relative;
}

.splide__list {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  display: flex;
  margin: 0 !important;
  padding: 0 !important;
  -webkit-transform-style: preserve-3d;
          transform-style: preserve-3d;
  will-change: transform;
}

.splide.is-initialized:not(.is-active) .splide__list {
  display: block;
}

.splide__pagination {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin: 0;
  pointer-events: none;
}

.splide__pagination li {
  display: inline-block;
  line-height: 1;
  list-style-type: none;
  margin: 0;
  pointer-events: auto;
}

.splide__progress__bar {
  width: 0;
}

.splide {
  outline: none;
  position: relative;
  visibility: hidden;
}

.splide.is-initialized, .splide.is-rendered {
  visibility: visible;
}

.splide__slide {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  box-sizing: border-box;
  flex-shrink: 0;
  list-style-type: none !important;
  margin: 0;
  outline: none;
  position: relative;
}

.splide__slide img {
  vertical-align: bottom;
}

.splide__slider {
  position: relative;
}

.splide__spinner {
  -webkit-animation: splide-loading 1s linear infinite;
          animation: splide-loading 1s linear infinite;
  border: 2px solid #999;
  border-left-color: transparent;
  border-radius: 50%;
  bottom: 0;
  contain: strict;
  display: inline-block;
  height: 20px;
  left: 0;
  margin: auto;
  position: absolute;
  right: 0;
  top: 0;
  width: 20px;
}

.splide__track {
  overflow: hidden;
  position: relative;
  z-index: 0;
}
