/*!***********************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[1].use[3]!./node_modules/import-glob-loader/index.js??ruleSet[1].rules[1].use[4]!./themes/mercury/source/styles/style.scss ***!
  \***********************************************************************************************************************************************************************************************************************************************************************************************************/
/*------------------------------------------------------------------
Base imports
------------------------------------------------------------------*/
html {
  box-sizing: border-box;
}

fieldset {
  border: 0;
  padding: 0;
}

*,
*:before,
*:after {
  box-sizing: inherit;
}

body,
h1,
h2,
h3,
h4,
h5,
h6,
p,
ol,
ul {
  margin: 0;
  padding: 0;
  font-weight: normal;
}

ol,
ul {
  list-style: none;
}

img {
  max-width: 100%;
  height: auto;
}

a {
  text-decoration: none;
  color: inherit;
}

/*------------------------------------------------------------------
Sitewide colours
------------------------------------------------------------------*/
/*------------------------------------------------------------------
Base colours
------------------------------------------------------------------*/
/*------------------------------------------------------------------
Font colours
------------------------------------------------------------------*/
.colour--white {
  color: white !important;
}

.colour--primary {
  color: #ec125f !important;
}

.colour--secondary {
  color: #37b4b8 !important;
}

/*------------------------------------------------------------------
Imports
------------------------------------------------------------------*/
/*------------------------------------------------------------------
Breakpoints
------------------------------------------------------------------*/
/*------------------------------------------------------------------
Box shadows
------------------------------------------------------------------*/
/*------------------------------------------------------------------
Easing functions
------------------------------------------------------------------*/
/*------------------------------------------------------------------
HAF
------------------------------------------------------------------*/
/*------------------------------------------------------------------
Media queries
------------------------------------------------------------------*/
/*------------------------------------------------------------------
Vertical align
------------------------------------------------------------------*/
/*------------------------------------------------------------------
Placeholders
------------------------------------------------------------------*/
/*------------------------------------------------------------------
Clearfix 
------------------------------------------------------------------*/
.clearfix:before,
.clearfix:after {
  content: "";
  display: table;
}

.clearfix:after {
  clear: both;
}

/*------------------------------------------------------------------
Pseudo elements
------------------------------------------------------------------*/
/*------------------------------------------------------------------
Full positioning
------------------------------------------------------------------*/
/*------------------------------------------------------------------
Dynamic Aspect Ratios
------------------------------------------------------------------*/
/*------------------------------------------------------------------
Background Cover
------------------------------------------------------------------*/
/*------------------------------------------------------------------
Responsive SVGs
------------------------------------------------------------------*/
.embed-container {
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden;
  max-width: 100%;
}
.embed-container iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/*------------------------------------------------------------------
Font face
------------------------------------------------------------------*/
/*------------------------------------------------------------------
Element styles
------------------------------------------------------------------*/
html {
  font-size: 10px;
}
html .type {
  margin-bottom: 0;
}

body {
  font-family: "Poppins", sans-serif;
  font-weight: 300;
  font-size: 1.6rem;
}

h1,
.h1 {
  font-family: "Poppins", sans-serif;
  font-weight: 400;
  font-size: 6rem;
  margin-bottom: 1.5rem;
}

h2,
.h2 {
  font-family: "Poppins", sans-serif;
  font-weight: 400;
  font-size: 3.2rem;
  margin-bottom: 1.5rem;
}

h3,
.h3 {
  font-family: "Poppins", sans-serif;
  font-weight: 400;
  font-size: 2.8rem;
  margin-bottom: 1.5rem;
}

h4,
.h4 {
  font-family: "Poppins", sans-serif;
  font-weight: 400;
  font-size: 2.4rem;
  margin-bottom: 1.5rem;
}

h5,
.h5 {
  font-family: "Poppins", sans-serif;
  font-weight: 400;
  font-size: 2rem;
  margin-bottom: 1.5rem;
}

h6,
.h6 {
  font-family: "Poppins", sans-serif;
  font-weight: 400;
  font-size: 1.8rem;
  margin-bottom: 1.5rem;
}

p {
  font-size: 1.6rem;
  margin-bottom: 1.5rem;
}

b,
strong {
  font-family: "Poppins", sans-serif;
  font-weight: 700;
}

i,
em {
  font-style: italic !important;
}

.smaller {
  font-size: 80% !important;
}

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

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

.no-margin {
  margin: 0 !important;
}

/*------------------------------------------------------------------
Base includes
------------------------------------------------------------------*/
/*------------------------------------------------------------------
Banner 
------------------------------------------------------------------*/
.banner {
  overflow: hidden;
  position: relative;
}
.banner__push {
  overflow: hidden;
  position: relative;
  min-height: 10rem;
}
.banner.hasTransparentHeader {
  margin-top: 0;
}
.banner__wrap {
  width: 100%;
  position: relative;
}
.banner__wrap__item {
  width: 100%;
  position: relative;
  overflow: hidden;
  display: none;
}
.banner__wrap__item:first-of-type {
  display: block;
}
.banner__wrap__item__background {
  -o-object-fit: cover;
     object-fit: cover;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: block;
}
.banner__wrap__item__video {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateX(-50%) translateY(-50%);
  position: absolute;
  width: 100%;
  height: auto;
  z-index: 1;
}
.banner__wrap__item__video:after {
  position: absolute;
  display: block;
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background: rgba(0, 0, 0, 0.4);
}
.banner__wrap__item__video iframe {
  position: absolute;
  width: 100%;
  height: 100%;
  pointer-events: none;
  opacity: 0;
}
.banner__wrap__item__overlay {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 3;
  background: black;
  opacity: 0.4;
}
.banner__wrap__item__content {
  width: 100%;
  max-width: 1440px;
  z-index: 5;
  margin: 0 auto;
  position: relative;
  padding: 0 10rem;
}
@media only screen and (max-width: 767px) {
  .banner__wrap__item__content {
    padding: 0 2rem;
  }
}
.banner__wrap__item__content__inner {
  padding: 20rem 0;
}
@media only screen and (max-width: 767px) {
  .banner__wrap__item__content__inner {
    padding: 10rem 0;
  }
}
.banner .tns-controls {
  position: absolute;
  z-index: 4;
  top: 50%;
  transform: translateY(-50%);
  width: 100%;
}
@media only screen and (max-width: 767px) {
  .banner .tns-controls {
    bottom: 6rem;
    top: auto;
  }
}
.banner .tns-controls [data-controls] {
  border: 0;
  font-size: 0;
  background: transparent;
  width: 4rem;
  height: 4rem;
  border: 2px solid white;
  border-radius: 100rem;
  position: absolute;
  background-image: url("data:image/svg+xml; utf8, <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"14\" height=\"10\" viewBox=\"0 0 14 10\"><path fill=\"%23fff\" fill-rule=\"evenodd\" d=\"M8.423.015 13.408 5 8.422 9.985 7.38 8.943l3.2-3.2H.09V4.257H10.58l-3.2-3.2L8.424.016Z\"/></svg>");
  background-size: 14px 10px;
  background-repeat: no-repeat;
  background-position: center center;
  opacity: 0.5;
  transition: opacity 333ms ease;
}
.banner .tns-controls [data-controls]:hover {
  opacity: 1;
}
.banner .tns-controls [data-controls=prev] {
  left: 1rem;
  transform: rotate(-180deg);
}
.banner .tns-controls [data-controls=next] {
  right: 1rem;
}
.banner .tns-nav {
  position: absolute;
  bottom: 3rem;
  left: 0;
  right: 0;
  z-index: 2;
  text-align: center;
}
.banner .tns-nav button {
  background: white;
  width: 0.7rem;
  height: 0.7rem;
  border-radius: 1rem;
  border: 0;
  padding: 0;
  display: inline-block;
  margin: 0.1rem;
  transform: scale(0.6);
  opacity: 0.5;
  transition: opacity 333ms ease, transform 333ms ease;
}
.banner .tns-nav button.tns-nav-active {
  transform: scale(1);
  opacity: 1;
}

/*------------------------------------------------------------------
Breadcrumbs
------------------------------------------------------------------*/
.breadCrumbs {
  border-bottom: 1px solid #f4f4f7;
}
@media only screen and (max-width: 767px) {
  .breadCrumbs {
    padding: 0;
  }
}
.breadCrumbs__wrap {
  max-width: 1280px;
  padding: 0 2rem;
  margin: 0 auto;
  position: relative;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}
@media only screen and (max-width: 767px) {
  .breadCrumbs__wrap {
    padding: 0 2rem;
  }
}
.breadCrumbs__wrap p {
  display: inline-block;
  margin: 0 !important;
  font-size: 1.4rem !important;
}
.breadCrumbs__wrap__item {
  margin-bottom: 0;
  font-size: 1.4rem;
  text-decoration: none;
  display: inline-block;
  vertical-align: middle;
  padding: 2.4rem 1rem;
  color: #ec125f;
}
@media only screen and (max-width: 767px) {
  .breadCrumbs__wrap__item {
    padding-left: 0.2rem;
    padding-right: 0.2rem;
    font-size: 1rem;
  }
}
.breadCrumbs__wrap__item--divivder svg {
  position: relative;
  top: 2px;
  opacity: 0.2;
}
.breadCrumbs__wrap__item--divivder svg polygon,
.breadCrumbs__wrap__item--divivder svg path {
  fill: inherit;
}
.breadCrumbs__wrap__item--icon {
  margin-left: -0.9rem;
}
.breadCrumbs__wrap__item--icon svg {
  opacity: 0.2;
  position: relative;
  top: 2px;
}
.breadCrumbs__wrap__item--icon svg polygon {
  transition: all 333ms ease;
}
.breadCrumbs__wrap__item--icon svg polygon,
.breadCrumbs__wrap__item--icon svg path {
  fill: inherit;
}
.breadCrumbs__wrap__item--icon:hover path,
.breadCrumbs__wrap__item--icon:hover polygon {
  fill: inherit;
}
.breadCrumbs__wrap__item--link {
  color: #ec125f;
}
.breadCrumbs__wrap__item--link:hover {
  color: #ec125f;
}
.breadCrumbs__wrap__item--current {
  color: #ec125f;
}
.breadCrumbs__wrap__social {
  top: 50%;
  transform: translateY(-50%);
  position: absolute;
  right: 0.2rem;
}
@media only screen and (max-width: 767px) {
  .breadCrumbs__wrap__social {
    right: 1.2rem;
  }
}
@media only screen and (max-width: 639px) {
  .breadCrumbs__wrap__social {
    display: none;
  }
}
.breadCrumbs__wrap__social__text {
  margin: 0 !important;
  display: inline-block;
  vertical-align: middle;
  font-size: 1.2rem !important;
}
@media only screen and (max-width: 767px) {
  .breadCrumbs__wrap__social__text {
    display: none;
  }
}
.breadCrumbs__wrap__social__link {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  text-decoration: none;
  margin-left: 0.3rem;
  width: 2.4rem;
  transition: all 222ms ease;
  backface-visibility: hidden;
}
.breadCrumbs__wrap__social__link:after {
  content: "";
  position: relative;
  display: block;
  padding-bottom: 100%;
}
.breadCrumbs__wrap__social__link svg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.breadCrumbs__wrap__social__link path {
  fill: #ec125f;
}
.breadCrumbs__wrap__social__link:hover {
  transform: scale(1.15);
}

/*------------------------------------------------------------------
Buttons
------------------------------------------------------------------*/
.button, input[type=submit] {
  text-align: center;
  background: #ec125f;
  padding: 1.5rem 5.5rem;
  display: inline-block;
  margin-bottom: 0.5rem;
  text-decoration: none !important;
  color: white !important;
  transition: all 111ms ease;
  border: 0;
  font-size: 1.4rem;
  border-radius: 10000rem;
  font-size: 1.6rem;
  font-family: "Poppins", sans-serif;
  font-weight: 600;
}
.button:hover, input[type=submit]:hover {
  box-shadow: inset 0 0 0 1000px rgba(0, 0, 0, 0.2);
}
.button:active, input[type=submit]:active {
  transform: translateY(1px);
}
.button--secondary {
  background: transparent;
  background: #37b4b8;
}
.button--secondary:hover {
  box-shadow: inset 0 0 0 1000px rgba(0, 0, 0, 0.3);
}
.button--white {
  color: #ec125f !important;
  background: white;
}
.button--outline {
  padding: 0.8rem 4rem;
  background: transparent;
  border: 2px solid #ec125f;
  color: #ec125f !important;
}
.button--outline:hover {
  background: #ec125f !important;
  color: white !important;
  box-shadow: none;
}

.arrow-link {
  position: relative;
}
.arrow-link:after {
  content: "";
  position: relative;
  display: inline-block;
  background-image: url("data:image/svg+xml; utf8, <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"14\" height=\"10\" viewBox=\"0 0 14 10\"><path fill=\"%23000\" fill-rule=\"evenodd\" d=\"M8.423.015 13.408 5 8.422 9.985 7.38 8.943l3.2-3.2H.09V4.257H10.58l-3.2-3.2L8.424.016Z\"/></svg>");
  background-size: 14px 10px;
  background-repeat: no-repeat;
  width: 14px;
  height: 10px;
  margin-left: 0.8rem;
  top: -1px;
  transition: all 0.5s cubic-bezier(0.165, 0.84, 0.44, 1);
}
.arrow-link:hover:after {
  transform: translateX(0.3rem);
}

/*------------------------------------------------------------------
footer-cta
------------------------------------------------------------------*/
.footer-cta {
  padding: 0 2rem;
  width: 100%;
  position: relative;
}
.footer-cta__background {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}
.footer-cta__background img {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.footer-cta__wrap {
  max-width: 1280px;
  margin: 0 auto;
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  padding: 10rem 2rem;
  position: relative;
  z-index: 2;
  text-align: right;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  opacity: 0;
  transition: all 1s cubic-bezier(0.165, 0.84, 0.44, 1);
  transform: translateY(2rem);
  transition-delay: 500ms;
}
.footer-cta__wrap.inView {
  opacity: 1;
  transform: translateY(0);
}
@media only screen and (max-width: 1023px) {
  .footer-cta__wrap {
    justify-content: center;
  }
  .footer-cta__wrap h3 {
    font-size: 6rem !important;
  }
  .footer-cta__wrap img {
    width: 4rem;
    height: auto;
  }
}
.footer-cta__wrap a {
  text-decoration: none !important;
  box-shadow: none !important;
}
.footer-cta__wrap a:hover img {
  transform: translateX(0.2rem);
}
.footer-cta__wrap h3 {
  font-size: 8rem;
  background: #8f1146;
  background: linear-gradient(to right, #8f1146 0%, #ec125f 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  text-align: right;
  width: 100%;
}
@media only screen and (max-width: 1023px) {
  .footer-cta__wrap h3 {
    text-align: center;
  }
}
.footer-cta__wrap h3 img {
  transition: all 0.5s cubic-bezier(0.165, 0.84, 0.44, 1);
  margin-right: 0.2rem;
}

/*------------------------------------------------------------------
Footer
------------------------------------------------------------------*/
.footer {
  width: 100%;
  background: #ebebeb;
  padding: 0 2rem;
}
.footer__wrap {
  max-width: 1280px;
  margin: 0 auto;
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  padding: 6rem 0 4rem;
  align-items: flex-start;
}
.footer__wrap__copyright {
  padding: 0 2rem 0 0;
  display: flex;
  flex-wrap: wrap;
  width: 50%;
  justify-content: flex-start;
}
@media only screen and (max-width: 767px) {
  .footer__wrap__copyright {
    width: 100%;
    justify-content: center;
    padding: 0;
  }
}
.footer__wrap__copyright .smaller {
  order: 2;
}
.footer__wrap__copyright__social {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  width: 100%;
  order: 2;
}
@media only screen and (max-width: 767px) {
  .footer__wrap__copyright__social {
    width: 100%;
    justify-content: center;
    padding: 0;
  }
}
@media only screen and (max-width: 767px) {
  .footer__wrap__copyright {
    padding: 0;
  }
}
.footer__wrap__copyright a {
  margin-left: 1rem;
}
.footer__wrap__column {
  width: 50%;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
}
@media only screen and (max-width: 767px) {
  .footer__wrap__column {
    width: 100%;
    justify-content: center;
    padding: 0;
  }
}
.footer__wrap__column .footer__wrap__column__logo {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
}
@media only screen and (max-width: 767px) {
  .footer__wrap__column .footer__wrap__column__logo {
    width: 100%;
    justify-content: center;
    padding: 0;
  }
}
.footer__wrap__column__item {
  width: 100%;
}

/*------------------------------------------------------------------
Header styles
------------------------------------------------------------------*/
.header {
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  z-index: 9999999;
  box-shadow: -1px 4px 74px -16px rgba(0, 0, 0, 0.15);
  transition: all 0.5s cubic-bezier(0.165, 0.84, 0.44, 1);
  box-shadow: none;
  background: transparent;
}
.header.nav-down {
  transform: translateY(0%);
  background: #ec125f;
  background: linear-gradient(45deg, #8e1146, #ec125f);
  background: linear-gradient(45deg, #6C0D31, #7D0E39, #AD1148, #E5125A);
  box-shadow: -1px 4px 74px -16px rgba(0, 0, 0, 0.15);
}
.header.nav-up {
  transform: translateY(-140%);
}
.header__wrap {
  position: relative;
  height: 8rem;
  max-width: 1280px;
  margin: 0 auto;
  padding: 0 2rem;
}
.header__wrap--full {
  max-width: 100%;
}
.header__wrap__menu {
  top: 50%;
  transform: translateY(-50%);
  position: absolute;
  left: 0;
  text-align: right;
  right: 2rem;
}
@media only screen and (max-width: 1023px) {
  .header__wrap__menu {
    right: 7rem;
  }
}
.header__wrap__menu__search, .header__wrap__menu__item {
  display: inline-block;
  vertical-align: middle;
}
@media only screen and (max-width: 1023px) {
  .header__wrap__menu__search:not(.header__wrap__menu__search), .header__wrap__menu__item:not(.header__wrap__menu__search) {
    display: none !important;
  }
}
.header__wrap__menu__search__link, .header__wrap__menu__item__link {
  padding: 2rem 0.5rem;
  display: block;
  margin: 0;
  color: black;
  position: relative;
}
.header__wrap__menu__search__link p, .header__wrap__menu__item__link p {
  margin: 0 !important;
  color: white;
  position: relative;
}
.header__wrap__menu__search__link p:after, .header__wrap__menu__item__link p:after {
  position: absolute;
  display: block;
  content: "";
  bottom: 0;
  left: 0;
  right: 0;
  background: white;
  height: 1px;
  transition: all 0.5s cubic-bezier(0.165, 0.84, 0.44, 1);
  transform: scaleX(0);
}
.header__wrap__menu__search__link:hover .nav:after, .header__wrap__menu__search__link.section .nav:after, .header__wrap__menu__search__link.current .nav:after, .header__wrap__menu__item__link:hover .nav:after, .header__wrap__menu__item__link.section .nav:after, .header__wrap__menu__item__link.current .nav:after {
  transform: scaleX(1);
}
.header__wrap__logo {
  position: absolute;
  left: 2rem;
  top: 50%;
  transform: translateY(-50%);
  z-index: 4;
  margin-top: 5px;
}
.header__wrap__logo img {
  width: auto;
  height: 6rem;
}
.header__wrap__navburger {
  width: 3rem;
  height: 3rem;
  position: absolute;
  right: -4.5rem;
  top: -1.8rem;
  cursor: pointer;
}
@media only screen and (min-width: 1024px) {
  .header__wrap__navburger {
    display: none;
  }
}
.header__wrap__navburger__ring {
  width: 3.6rem;
  height: 0.2rem;
  position: absolute;
  transition: all 333ms ease;
}
.header__wrap__navburger__ring--1 {
  margin-top: 0.5rem;
  background: #ec125f;
}
.header__wrap__navburger__ring--2 {
  margin-top: 1.5rem;
  background: #ec125f;
}
.header__wrap__navburger__ring--3 {
  margin-top: 2.5rem;
  background: #ec125f;
}

/*------------------------------------------------------------------
Header sub menus
------------------------------------------------------------------*/
.header__wrap__nav__link__subnav {
  padding-top: 1.1rem;
  position: absolute;
  width: 26rem;
  left: 50%;
  transform: rotateX(-40deg) translateX(-50%);
  transform-origin: 50% 0;
  will-change: all;
  transition: all 333ms ease;
  visibility: hidden;
  opacity: 0;
  perspective: 600px;
  top: calc(100% + 0rem);
}
.header__wrap__nav__link__subnav__wrap {
  background: #ec125f;
  background: white;
  border-top: 1px solid #f4f4f7;
  border-radius: 0 0 0.2rem 0.2rem;
  padding: 0.8rem 0;
  box-shadow: rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(15, 23, 42, 0.1) 0px 20px 25px -5px, rgba(15, 23, 42, 0.1) 0px 8px 10px -6px;
}
.header__wrap__nav__link__subnav__wrap__item {
  display: block;
  color: white;
  color: #ec125f;
  font-size: 1.4rem;
  text-decoration: none;
  padding: 0.5rem 2rem;
  line-height: 1.4;
  transition: all 111ms ease;
  text-align: left;
}
.header__wrap__nav__link__subnav__wrap__item p {
  margin: 0 !important;
}
.header__wrap__nav__link__subnav__wrap__item.current, .header__wrap__nav__link__subnav__wrap__item:hover {
  background: #ec125f;
}
.header__wrap__nav__link__subnav__wrap__item.current p, .header__wrap__nav__link__subnav__wrap__item:hover p {
  transition: all 111ms ease;
  color: white !important;
}

.header__wrap__menu__item {
  position: relative;
  display: inline-block;
  perspective: 600px;
}
.header__wrap__menu__item:hover {
  z-index: 99;
}
.header__wrap__menu__item:hover .header__wrap__nav__link__subnav {
  transform: translateX(-50%);
  opacity: 1;
  visibility: visible;
}

/*------------------------------------------------------------------
Inputs
------------------------------------------------------------------*/
button,
input,
select,
textarea {
  -webkit-appearance: none;
}

form .field.dropdown select,
form .field.text input,
form .field.textarea textarea {
  margin: 0;
  position: relative;
  display: inline-block;
  padding: 1.5rem 3rem 1.55rem !important;
  width: 100%;
  line-height: 1.5;
  background-color: transparent;
  background-image: none;
  border: 2px solid white;
  border-radius: 3rem;
  transition: all 0.3s;
  font-size: 1.6rem;
  font-family: "Poppins", sans-serif;
  font-weight: 300;
  margin-bottom: 1rem;
  color: white;
}
form .field.dropdown select::-webkit-input-placeholder,
form .field.text input::-webkit-input-placeholder,
form .field.textarea textarea::-webkit-input-placeholder {
  opacity: 1;
  color: white;
}
form .field.dropdown select:-moz-placeholder,
form .field.text input:-moz-placeholder,
form .field.textarea textarea:-moz-placeholder {
  opacity: 1;
  color: white;
}
form .field.dropdown select::-moz-placeholder,
form .field.text input::-moz-placeholder,
form .field.textarea textarea::-moz-placeholder {
  opacity: 1;
  color: white;
}
form .field.dropdown select:-ms-input-placeholder,
form .field.text input:-ms-input-placeholder,
form .field.textarea textarea:-ms-input-placeholder {
  opacity: 1;
  color: white;
}
form .field.dropdown select:hover,
form .field.text input:hover,
form .field.textarea textarea:hover {
  border-color: #ec125f;
}
form .field.dropdown select:focus,
form .field.text input:focus,
form .field.textarea textarea:focus {
  border-color: #ec125f;
  outline: 0;
  box-shadow: 0 0 0 2px rgba(236, 18, 95, 0.2);
}

form .field.dropdown,
form .field.text,
form .field.textarea,
form .field {
  position: relative;
  display: block;
  float: left;
  width: 100%;
  margin-bottom: 1rem;
}
form .field.dropdown legend,
form .field.text legend,
form .field.textarea legend,
form .field.dropdown label,
form .field.text label,
form .field.textarea label,
form .field .optionset,
form .field legend,
form .field label {
  margin: 1rem 0 0.5rem;
  display: block;
  font-family: "Poppins", sans-serif;
  font-weight: 400;
}
form .field.half {
  width: calc(50% - 1rem);
}
@media only screen and (max-width: 767px) {
  form .field.half {
    width: 100%;
  }
}
form .field.textarea textarea {
  min-height: 10rem;
  resize: none;
}
form .field.dropdown select {
  background-image: url("data:image/svg+xml; utf8, <svg width=\"16\" height=\"9\" viewBox=\"0 0 16 9\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M7.839 5.96L13.936.108a.399.399 0 01.553.007l1.07 1.047a.38.38 0 01.008.542L8.122 8.851a.365.365 0 01-.283.105.387.387 0 01-.284-.105L.111 1.704a.38.38 0 01.007-.542L1.188.115a.399.399 0 01.554-.007L7.839 5.96z\" fill=\"%23333\" fill-rule=\"evenodd\"/></svg>");
  background-repeat: no-repeat;
  background-position: 99% 50%;
}

input[type=submit] {
  margin-top: 2rem;
}

/*------------------------------------------------------------------
Checkbox
------------------------------------------------------------------*/
input[type=checkbox] {
  opacity: 0;
  z-index: -1;
  position: absolute;
}
input[type=checkbox] + label {
  position: relative;
  padding-left: 3rem;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  cursor: pointer;
}
input[type=checkbox] + label:before {
  position: absolute;
  display: block;
  content: "";
  display: block;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  transition: all 333ms ease;
  background: white;
  border: 1px solid #ebebeb;
  width: 20px;
  height: 20px;
  border-radius: 0.2rem;
}
input[type=checkbox] + label:after {
  position: absolute;
  display: block;
  content: "";
  transform: rotate(43deg);
  width: 5px;
  height: 9px;
  border: 2px solid white;
  border-top: 0;
  border-left: 0;
  left: 7px;
  top: 50%;
  transition: all 333ms ease;
  margin-top: -1px;
  transform: translateY(-50%) rotate(20deg);
}
input[type=checkbox]:checked + label:before {
  background: #ec125f;
  border-color: #ec125f;
}
input[type=checkbox]:checked + label:after {
  transform: translateY(-50%) rotate(43deg);
}

/*------------------------------------------------------------------
Radio
------------------------------------------------------------------*/
input[type=radio] {
  opacity: 0;
  z-index: -1;
  position: absolute;
}
input[type=radio] + label {
  position: relative;
  padding-left: 3rem;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  cursor: pointer;
}
input[type=radio] + label:before {
  position: absolute;
  display: block;
  content: "";
  display: block;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  transition: all 222ms ease;
  background: white;
  border: 1px solid #ebebeb;
  width: 20px;
  height: 20px;
  border-radius: 2rem;
}
input[type=radio] + label:after {
  position: absolute;
  display: block;
  content: "";
  left: 0;
  top: 50%;
  width: 20px;
  height: 20px;
  background: white;
  transition: all 222ms ease;
  border-radius: 2rem;
  transform: translateY(-50%) scale(0.9);
}
input[type=radio]:checked + label:before {
  background: #ec125f;
  border-color: #ec125f;
}
input[type=radio]:checked + label:after {
  transform: translateY(-50%) scale(0.5);
}

/*------------------------------------------------------------------
User form specifics
------------------------------------------------------------------*/
form .userformsstep,
form .userform-fields {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

/*------------------------------------------------------------------
File field
------------------------------------------------------------------*/
.field.file .middleColumn {
  position: relative;
  border: 2px dashed #ebebeb;
  border-radius: 0.4rem;
  height: 7rem;
}
.field.file .middleColumn input {
  position: absolute;
  width: 100%;
  top: 0;
  padding: 2rem 1rem;
  bottom: 0;
  line-height: 1;
  outline: none;
  margin: 0;
  cursor: pointer;
  transition: all 333ms ease;
}
.field.file .middleColumn input:hover {
  background: #f4f4f7;
}

.SilverStripe\\UserForms\\Model\\UserDefinedForm {
  background: linear-gradient(45deg, #8e1146, #ec125f);
}
.SilverStripe\\UserForms\\Model\\UserDefinedForm label {
  display: none !important;
}

.message {
  padding: 2rem;
  background: rgba(255, 255, 255, 0.2);
  color: white;
  border-left: 3px solid white;
  margin-bottom: 4rem;
}

/*------------------------------------------------------------------
Link hovers
------------------------------------------------------------------*/
a:not([class]) {
  text-decoration: none;
  box-shadow: inset 0 -1px 0 #ec125f, 0 1px 0 #ec125f;
  transition: all 333ms ease;
  overflow: hidden;
  color: #ec125f;
}
a:not([class]):hover {
  box-shadow: inset 0 -30px 0 #ec125f, 0 1px 0 #ec125f;
  color: white !important;
}

/*------------------------------------------------------------------
List items
------------------------------------------------------------------*/
ul:not([class]) {
  list-style: none;
  margin: 1rem auto 3rem;
}
ul:not([class]) > li {
  position: relative;
  padding-left: 3.5rem;
  margin-bottom: 0.2rem;
}
ul:not([class]) > li:before {
  position: absolute;
  display: block;
  content: "";
  width: 1.5rem;
  height: 1.5rem;
  top: 0.5rem;
  left: 0.5rem;
  background-image: url("data:image/svg+xml; utf8, <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"15\" height=\"15\" viewBox=\"0 0 15 15\"><g fill=\"none\" fill-rule=\"evenodd\" stroke=\"%23FFF\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\"><path d=\"M15 7.5V15H0V0h7.5\"/><path d=\"M4.484 5.502 7.5 8.518 15 0\"/></g></svg>");
}

ol:not([class]) {
  list-style: none;
  margin: 1rem auto 3rem;
}
ol:not([class]) > li {
  padding-left: 2.5rem;
  margin-bottom: 0.2rem;
  position: relative;
  counter-increment: counter;
}
ol:not([class]) > li:before {
  position: absolute;
  display: block;
  content: "";
  top: 0;
  left: 0.5rem;
  content: counter(counter) ".";
  color: inherit;
}
ol:not([class]) > li li {
  counter-increment: internalcounter;
}
ol:not([class]) > li li:before {
  content: counter(internalcounter) ".";
}

/* -------------------------------------------- 
Mobile menu
-------------------------------------------- */
.mobile-menu {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  background: white;
  z-index: 999;
  bottom: 0;
  padding: 3rem 0;
  overflow: auto;
  transition: all 0.5s cubic-bezier(0.165, 0.84, 0.44, 1);
  visibility: hidden;
  opacity: 0;
  backface-visibility: hidden;
  -webkit-overflow-scrolling: touch;
}
.mobile-menu__wrap {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  margin: 0 auto;
  position: absolute;
  align-content: flex-start;
  padding-top: 8rem;
}
.mobile-menu__wrap__item {
  width: 100%;
  display: block;
  position: relative;
  margin-bottom: -1px;
}
.mobile-menu__wrap__item.active .mobile-menu__wrap__item__arrow svg {
  transform: rotate(-180deg);
}
.mobile-menu__wrap__item:first-of-type {
  border-top: 1px solid #f4f4f7;
}
.mobile-menu__wrap__item__link {
  font-family: "Poppins", sans-serif;
  font-weight: 400;
  display: block;
  padding: 1rem 2rem;
  font-size: 1.6rem;
  border-bottom: 1px solid #f4f4f7;
}
.mobile-menu__wrap__item__arrow {
  position: absolute;
  right: 0;
  top: 0;
  width: 4.5rem;
  height: 4.5rem;
  border-left: 1px solid #f4f4f7;
  cursor: pointer;
}
.mobile-menu__wrap__item__arrow svg {
  left: 0;
  right: 0;
  margin: 0 auto;
  position: absolute;
  top: 2rem;
  transition: all 0.5s cubic-bezier(0.165, 0.84, 0.44, 1);
}
.mobile-menu__wrap__item__arrow svg path {
  fill: #ec125f;
}
.mobile-menu__wrap__item__group {
  transition: all 0.75s cubic-bezier(0.165, 0.84, 0.44, 1);
  overflow: hidden;
  background: #f4f4f7;
}
.mobile-menu__wrap__item__group:not(.active) {
  display: none;
}
.mobile-menu__wrap__item__group__items {
  padding: 1rem;
}
.mobile-menu__wrap__item__group__link {
  font-family: "Poppins", sans-serif;
  font-weight: 200;
  display: block;
  padding: 1rem 2rem;
  font-size: 1.6rem;
}

.mobileMenuActive {
  overflow: hidden;
}
.mobileMenuActive .header {
  box-shadow: none !important;
  transform: translateY(0%) !important;
}
.mobileMenuActive .mobile-menu {
  visibility: visible !important;
  opacity: 1 !important;
}
.mobileMenuActive .header__wrap__navburger__ring--1 {
  transform: rotate(45deg) translateX(0.7rem) translateY(0.7rem);
}
.mobileMenuActive .header__wrap__navburger__ring--2 {
  background: transparent !important;
}
.mobileMenuActive .header__wrap__navburger__ring--3 {
  transform: rotate(-45deg) translateX(0.7rem) translateY(-0.7rem);
}

/*------------------------------------------------------------------
Notification
------------------------------------------------------------------*/
.notificationActive .notification {
  display: block !important;
}

.notification {
  background: #ec125f;
  display: none;
  position: relative;
}
.notification__wrap {
  max-width: 1280px;
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  position: relative;
}
.notification__wrap__content {
  padding: 0.5rem 3rem;
  text-align: center;
}
.notification__wrap__content p {
  margin: 0 !important;
  font-size: 1.2rem !important;
}
.notification__wrap__content p a:not([class]) {
  text-decoration: none;
  box-shadow: inset 0 -1px 0 rgba(255, 255, 255, 0.4), 0 1px 0 rgba(255, 255, 255, 0.4);
  transition: all 333ms ease;
  overflow: hidden;
  color: white;
}
.notification__wrap__content p a:not([class]):hover {
  box-shadow: inset 0 -30px 0 rgba(255, 255, 255, 0.4), 0 1px 0 rgba(255, 255, 255, 0.4);
  color: white !important;
}
.notification__wrap__close {
  position: absolute;
  right: 2rem;
  top: 50%;
  cursor: pointer;
  transform: translateY(-50%);
  margin-top: 1px;
}
.notification__wrap__close path {
  fill: white;
}
.notification__wrap__close svg {
  width: 14px;
  height: 14px;
}

/*------------------------------------------------------------------
Popup
------------------------------------------------------------------*/
.popupActive {
  position: relative;
  overflow: hidden;
}
.popupActive .popup {
  opacity: 1;
  visibility: visible;
}
.popupActive .popup .text:after {
  transform: scaleX(1) !important;
}
.popupActive .popup__wrap__close {
  transform: translateY(0%);
}

.popup {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  position: fixed;
  background: rgba(255, 255, 255, 0.95);
  transition: all 555ms ease;
  z-index: 9999999999;
  opacity: 0;
  visibility: hidden;
  overflow: auto;
}
.popup__wrap {
  max-width: 640px;
  margin: 0 auto;
  position: relative;
  padding: 0 2rem;
}
.popup__wrap__close {
  top: 4rem;
  right: 2rem;
  transform: translateY(-100%);
  transition: all 0.5s cubic-bezier(0.165, 0.84, 0.44, 1);
  cursor: pointer;
  position: relative;
  width: 4rem;
  position: absolute;
}
.popup__wrap__close:after {
  content: "";
  position: relative;
  display: block;
  padding-bottom: 100%;
}
.popup__wrap__close svg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.popup__wrap__close svg path {
  fill: #ec125f;
}
.popup__wrap__content {
  position: relative;
  top: 10rem;
  background: white;
  box-shadow: rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(15, 23, 42, 0.1) 0px 20px 25px -5px, rgba(15, 23, 42, 0.1) 0px 8px 10px -6px;
  overflow: hidden;
  border-radius: 0.2rem;
}
.popup__wrap__content__heading {
  background: #ec125f;
  padding: 4rem;
}
.popup__wrap__content__heading h2 {
  margin: 0 !important;
}
.popup__wrap__content__copy {
  padding: 4rem;
}

/*------------------------------------------------------------------
Searchpane
------------------------------------------------------------------*/
.searchActive .search-pane {
  opacity: 1;
  visibility: visible;
}
.searchActive .search-pane .text:after {
  transform: scaleX(1) !important;
}
.searchActive .search-pane__wrap__close {
  transform: translateY(0%);
}

.search-pane {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  position: fixed;
  background: rgba(255, 255, 255, 0.95);
  transition: all 555ms ease;
  z-index: 9999999999;
  opacity: 0;
  visibility: hidden;
}
.search-pane__wrap {
  max-width: 1024px;
  margin: 0 auto;
  position: relative;
  padding: 0 2rem;
}
.search-pane__wrap__close {
  top: 4rem;
  right: 2rem;
  transform: translateY(-100%);
  transition: all 0.5s cubic-bezier(0.165, 0.84, 0.44, 1);
  cursor: pointer;
  position: relative;
  width: 4rem;
  position: absolute;
}
.search-pane__wrap__close:after {
  content: "";
  position: relative;
  display: block;
  padding-bottom: 100%;
}
.search-pane__wrap__close svg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.search-pane__wrap__close svg path {
  fill: #ec125f;
}
.search-pane__wrap__form {
  padding-top: 30rem;
}
.search-pane__wrap__form .field label {
  display: none !important;
}
.search-pane__wrap__form .field.text {
  margin-bottom: 2rem;
  position: relative;
}
.search-pane__wrap__form .field.text:after {
  position: absolute;
  display: block;
  content: "";
  border-bottom: 0.4rem solid #ec125f;
  bottom: 0;
  width: 100%;
  transition: all 666ms ease;
  transform: scaleX(0);
  transform-origin: 0 0;
}
@media only screen and (max-width: 639px) {
  .search-pane__wrap__form .field.text:after {
    border-bottom: 0.2rem solid #ec125f;
  }
}
.search-pane__wrap__form .field .text {
  background: transparent;
  border: 0;
  border-radius: 0;
  margin: 0;
  box-shadow: none !important;
  font-size: 5rem;
  padding-left: 0 !important;
  font-weight: light;
}
@media only screen and (max-width: 767px) {
  .search-pane__wrap__form .field .text {
    font-size: 3rem;
  }
}
@media only screen and (max-width: 639px) {
  .search-pane__wrap__form .field .text {
    font-size: 2.4rem;
  }
}
.search-pane__wrap__form .field .text::-webkit-input-placeholder {
  color: black;
  opacity: 1 !important;
}
.search-pane__wrap__form .field .text:-moz-placeholder {
  color: black;
  opacity: 1 !important;
}
.search-pane__wrap__form .field .text::-moz-placeholder {
  color: black;
  opacity: 1 !important;
}
.search-pane__wrap__form .field .text:-ms-input-placeholder {
  color: black;
  opacity: 1 !important;
}
.search-pane__wrap__form .action {
  display: none;
}
.search-pane__wrap__form__direction {
  display: block;
  text-align: right;
}
@media only screen and (max-width: 639px) {
  .search-pane__wrap__form__direction {
    font-size: 1.2rem !important;
  }
}

/*------------------------------------------------------------------
Table styles
------------------------------------------------------------------*/
table {
  vertical-align: top;
  max-width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
  margin: 0 auto 3rem;
  position: relative;
  overflow: hidden;
  border: 1px solid #ebebeb;
}
table li {
  margin-bottom: 0 !important;
}
table tr {
  background: white;
  border-bottom: 1px solid #ebebeb;
  margin-bottom: 5px;
}
table tr:last-of-type {
  border-bottom: 0;
}
table tr:nth-child(even) {
  background: #f4f4f7;
}
table th,
table td {
  text-align: left;
  padding: 1rem;
  border-right: 1px solid #ebebeb;
}
table th p,
table td p {
  margin: 0;
}
table th:last-of-type,
table td:last-of-type {
  border-right: 0;
}
table th {
  background: #ec125f;
  color: white !important;
}

/*------------------------------------------------------------------
Blog post
------------------------------------------------------------------*/
.blog-post {
  background: white;
  box-shadow: rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(15, 23, 42, 0.1) 0px 20px 25px -5px, rgba(15, 23, 42, 0.1) 0px 8px 10px -6px;
  border-radius: 0.5rem;
  position: relative;
  overflow: hidden;
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 6rem;
}
.blog-post__image {
  width: 25rem;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
}
.blog-post__content {
  width: calc(100% - 25rem);
  padding: 3rem 3rem 4rem;
}

/*------------------------------------------------------------------
Error page
------------------------------------------------------------------*/
.fourOhFour {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background: #ec125f;
}
.fourOhFour__wrap {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateX(-50%) translateY(-50%);
  text-align: center;
}
.fourOhFour__wrap__number h1 {
  font-size: 26vw !important;
  color: #ec125f !important;
  font-weight: bold !important;
  text-shadow: 0em 0.16em 0.24em rgba(0, 0, 0, 0.32);
}
.fourOhFour__wrap__button a {
  font-weight: bold !important;
}

/*------------------------------------------------------------------
Login page
------------------------------------------------------------------*/
.login {
  min-height: 100vh;
  display: flex;
  flex-wrap: wrap;
}
.login__image {
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  overflow: hidden;
  width: 50%;
  position: relative;
}
@media only screen and (max-width: 967px) {
  .login__image {
    display: none;
  }
}
.login__image img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.login__form {
  display: flex;
  flex-wrap: wrap;
  width: 50%;
  padding: 4rem;
}
@media only screen and (max-width: 967px) {
  .login__form {
    width: 100%;
    position: relative;
  }
}
.login__form input[type=text],
.login__form input[type=password] {
  color: black !important;
}
.login__form__wrap {
  max-width: 50rem;
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}
.login__form__wrap__logo {
  margin: 6rem auto auto;
  align-self: flex-start;
}
.login__form__wrap__copy {
  width: 100%;
  position: relative;
}
.login__form__wrap__copy a {
  position: absolute;
  right: 0;
  bottom: 3rem;
}
.login__form__wrap #ForgotPassword {
  position: relative;
  top: -0.5rem;
}
.login__form__wrap #LostPasswordForm_lostPasswordForm + a {
  transform: translateY(-1rem);
}

/*------------------------------------------------------------------
Sidebar wrap
------------------------------------------------------------------*/
.sidebar-wrap {
  width: 100%;
  max-width: 1280px;
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
}
.sidebar-wrap__content {
  width: calc(100% - 36rem);
  padding-right: 4rem;
}
@media only screen and (max-width: 967px) {
  .sidebar-wrap__content {
    width: 100%;
    order: 1;
    padding-right: 0;
  }
}
.sidebar-wrap__sidebar {
  width: 36rem;
  padding: 0 2rem;
}
@media only screen and (max-width: 967px) {
  .sidebar-wrap__sidebar {
    width: 100%;
    order: 2;
    padding: 0 2rem;
  }
}
.sidebar-wrap__sidebar__categories__heading {
  border-bottom: 1px solid #ebebeb;
}
.sidebar-wrap__sidebar__recent {
  margin-top: 4rem;
}
.sidebar-wrap__sidebar__recent__heading {
  border-bottom: 1px solid #ebebeb;
  margin-bottom: 2rem;
}
.sidebar-wrap__sidebar__recent__list__item h6 {
  margin-bottom: 0 !important;
  transition: all 0.5s cubic-bezier(0.165, 0.84, 0.44, 1);
}
.sidebar-wrap__sidebar__recent__list__item svg {
  display: inline-block;
  position: relative;
  top: -1px;
  transition: all 1s cubic-bezier(0.165, 0.84, 0.44, 1);
  margin-left: 0.8rem;
}
.sidebar-wrap__sidebar__recent__list__item:hover h6 {
  color: #ec125f;
}
.sidebar-wrap__sidebar__recent__list__item:hover h6 svg {
  transform: translateX(0.5rem);
}
.sidebar-wrap__sidebar__recent__list__item:hover h6 svg path {
  fill: #ec125f;
}

.tags {
  display: flex;
  flex-wrap: wrap;
  margin: 2rem 0 0;
}
.tags .tag {
  font-size: 1.4rem;
  padding: 0.4rem 2rem;
  background: #f4f4f7;
  color: #ec125f;
  border-radius: 10rem;
  margin: 0 0.5rem 0.5rem 0;
  display: inline-block;
  transition: all 0.5s cubic-bezier(0.165, 0.84, 0.44, 1);
}
.tags .tag:hover {
  color: white;
  background: #ec125f;
}

/*------------------------------------------------------------------
Accordion Block
------------------------------------------------------------------*/
.accordion {
  margin: 8rem auto;
}
.accordion__wrap {
  margin: 0 auto;
  padding: 0 2rem;
  max-width: 1024px;
}
.accordion__wrap--wide {
  max-width: 1280px;
}
.accordion__wrap--narrow {
  max-width: 968px;
}
.accordion__wrap--thin {
  max-width: 640px;
}
.accordion__wrap__item {
  position: relative;
  border-top: 1px solid #ebebeb;
  border-bottom: 1px solid #ebebeb;
  margin-bottom: -1px;
  /*------------------------------------------------------------------
  Active styles
  ------------------------------------------------------------------*/
}
.accordion__wrap__item__heading {
  position: relative;
  padding: 2rem 0;
  cursor: pointer;
}
.accordion__wrap__item__heading h5 {
  margin-bottom: 0 !important;
  padding-right: 2.5rem;
}
.accordion__wrap__item__heading:before, .accordion__wrap__item__heading:after {
  position: absolute;
  display: block;
  content: "";
  width: 2.2rem;
  height: 0.3rem;
  background: #ec125f;
  position: absolute;
  right: 0;
  top: 50%;
  margin-top: -1px;
  transition: transform 444ms ease, background 111ms ease;
}
.accordion__wrap__item__heading:after {
  transform: rotate(90deg);
}
.accordion__wrap__item:not(.active) .accordion__wrap__item__content {
  display: none;
}
.accordion__wrap__item__content {
  transition: height 0.35s ease-in-out;
  overflow: hidden;
}
.accordion__wrap__item__content__inner {
  padding: 1rem 0 2rem;
}
.accordion__wrap__item.active .accordion__wrap__item__heading:after {
  transform: rotate(0) !important;
}

/*------------------------------------------------------------------
Tabbed content block
------------------------------------------------------------------*/
.advisor-block__wrap {
  margin: 0 auto;
  position: relative;
  display: flex;
  flex-wrap: wrap;
  max-width: 100%;
}
.advisor-block__wrap__tabs {
  width: 50%;
  position: relative;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  align-items: flex-start;
  align-content: flex-start;
}
@media only screen and (max-width: 967px) {
  .advisor-block__wrap__tabs {
    padding-left: 0 !important;
  }
}
.advisor-block__wrap__tabs__item {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  align-content: center;
  padding-left: 2rem;
  align-items: center;
  align-content: center;
  min-height: 8.3rem;
}
@media only screen and (max-width: 967px) {
  .advisor-block__wrap__tabs__item {
    min-height: auto;
  }
}
.advisor-block__wrap__tabs__item img {
  width: 8rem;
  padding-right: 1rem;
}
.advisor-block__wrap__tabs__item b {
  display: inline-block;
  width: 17rem;
  padding-right: 1rem;
}
.advisor-block__wrap__tabs__item span {
  display: inline-block;
  width: calc(100% - 17rem - 8rem);
  font-size: 1.4rem;
}
@media only screen and (max-width: 967px) {
  .advisor-block__wrap__tabs__item span {
    font-size: 1.4rem;
  }
}
.advisor-block__wrap__tabs__item:nth-child(even) {
  background: #f4f4f7;
}
.advisor-block__wrap__tabs__item:nth-child(even):after {
  position: absolute;
  display: block;
  content: "";
  top: 0;
  right: 99%;
  bottom: 0;
  background: #f4f4f7;
  width: 100vw;
}
@media only screen and (max-width: 967px) {
  .advisor-block__wrap__tabs {
    width: 100%;
    border-right: 0 solid #ebebeb;
    border-left: 1px solid #ebebeb;
    padding-left: 2rem;
    margin-bottom: 4rem;
  }
}
.advisor-block__wrap__tabs__item {
  padding: 2rem;
  display: block;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  justify-content: flex-start;
  width: 100%;
  max-width: 50rem;
  text-align: left;
  position: relative;
}
@media only screen and (max-width: 967px) {
  .advisor-block__wrap__tabs__item {
    padding: 0.5rem 2rem;
    max-width: 100%;
  }
}
@media only screen and (max-width: 967px) {
  .advisor-block__wrap__tabs__item {
    align-items: flex-start;
    align-content: flex-start;
  }
  .advisor-block__wrap__tabs__item:after {
    display: none !important;
  }
}
.advisor-block__wrap__tabs__item.advisor-block__wrap__tabs__item--pink b {
  color: #ec125f;
}
.advisor-block__wrap__tabs__item.advisor-block__wrap__tabs__item--teal b {
  color: #37b4b8;
}
.advisor-block__wrap__tabs__item.advisor-block__wrap__tabs__item--purple b {
  color: #69306c;
}
.advisor-block__wrap__tabs__item.active.advisor-block__wrap__tabs__item--pink {
  background: #ec125f;
  color: white;
}
.advisor-block__wrap__tabs__item.active.advisor-block__wrap__tabs__item--pink:after {
  background: #ec125f;
}
.advisor-block__wrap__tabs__item.active.advisor-block__wrap__tabs__item--teal {
  background: #37b4b8;
  color: white;
}
.advisor-block__wrap__tabs__item.active.advisor-block__wrap__tabs__item--teal:after {
  background: #37b4b8;
}
.advisor-block__wrap__tabs__item.active.advisor-block__wrap__tabs__item--purple {
  background: #69306c;
  color: white;
}
.advisor-block__wrap__tabs__item.active.advisor-block__wrap__tabs__item--purple:after {
  background: #69306c;
}
.advisor-block__wrap__tabs__item.active:after {
  position: absolute;
  display: block;
  content: "";
  top: 0;
  right: 99%;
  bottom: 0;
  background: #ec125f;
  width: 100vw;
}
.advisor-block__wrap__tabs__item.active b {
  color: white !important;
}
.advisor-block__wrap__tabs__item.active h4 {
  color: white;
}
.advisor-block__wrap__content {
  width: 50%;
}
@media only screen and (max-width: 967px) {
  .advisor-block__wrap__content {
    width: 100%;
    padding: 0;
  }
}
.advisor-block__wrap__content__item {
  display: none;
  padding: 6rem;
}
.advisor-block__wrap__content__item__image {
  margin-bottom: 1rem;
  width: 25rem;
}
.advisor-block__wrap__content__item__title {
  margin-bottom: 3rem;
}
.advisor-block__wrap__content__item__title h3 {
  margin-bottom: 0rem;
}
.advisor-block__wrap__content__item__details {
  margin-bottom: 4rem;
}
.advisor-block__wrap__content__item__contact {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
}
.advisor-block__wrap__content__item__contact a {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}
.advisor-block__wrap__content__item__contact a img {
  margin-right: 1rem;
}
.advisor-block__wrap__content__item__contact a:first-of-type {
  margin-right: 2rem;
}
.advisor-block__wrap__content__item--pink {
  background: #ec125f;
  color: white;
}
.advisor-block__wrap__content__item--teal {
  background: #37b4b8;
  color: white;
}
.advisor-block__wrap__content__item--purple {
  background: #69306c;
  color: white;
}
.advisor-block__wrap__content__item.active {
  display: block;
}

/*------------------------------------------------------------------
Download block
------------------------------------------------------------------*/
.download-block__wrap {
  margin: 8rem auto;
  padding: 0 2rem;
  max-width: 1024px;
}
.download-block__wrap--wide {
  max-width: 1280px;
}
.download-block__wrap--narrow {
  max-width: 968px;
}
.download-block__wrap--thin {
  max-width: 640px;
}
.download-block__wrap__list__item {
  display: flex;
  align-items: center;
  width: 100%;
  color: inherit;
  padding: 1.75rem 2rem 1.75rem;
  border-bottom: 1px solid #ebebeb;
  text-decoration: none;
}
.download-block__wrap__list__item:first-of-type {
  border-top: 1px solid #ebebeb;
}
.download-block__wrap__list__item__details__summary, .download-block__wrap__list__item__details__info, .download-block__wrap__list__item__details__title {
  width: 100%;
  transition: all 222ms ease;
}
.download-block__wrap__list__item__details__title {
  margin-bottom: 0.5rem !important;
}
.download-block__wrap__list__item__details__extension {
  margin-bottom: 0 !important;
}
.download-block__wrap__list__item__icon {
  margin-right: 2rem;
  position: relative;
  top: 0.4rem;
}
.download-block__wrap__list__item__icon svg {
  overflow: visible;
}
.download-block__wrap__list__item__icon svg path {
  transition: all 222ms ease;
}
.download-block__wrap__list__item:hover .download-block__wrap__list__item__details__summary,
.download-block__wrap__list__item:hover .download-block__wrap__list__item__details__title {
  color: #ec125f;
}
.download-block__wrap__list__item:hover path {
  fill: #ec125f;
}
.download-block__wrap__list__item:hover path:last-of-type {
  transform: translateY(3px);
}

/*------------------------------------------------------------------
Hero block
------------------------------------------------------------------*/
.hero-block {
  width: 100%;
  position: relative;
  padding: 0;
  background: #f4f4f7;
  overflow: hidden;
  margin: 8rem auto;
}
.hero-block__wrap {
  margin: 0 auto;
  position: relative;
  display: flex;
  flex-wrap: wrap;
}
.hero-block__wrap__background {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}
.hero-block__wrap__background img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.hero-block__wrap__background:after {
  position: absolute;
  display: block;
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background: rgba(0, 0, 0, 0.2);
}
.hero-block__wrap__content {
  display: flex;
  flex-wrap: wrap;
  z-index: 3;
  justify-content: center;
  margin: 0 auto;
}
.hero-block__wrap__content--narrow {
  max-width: 1024px;
}
.hero-block__wrap__content--thin {
  max-width: 640px;
}
.hero-block__wrap__content__constraint {
  padding: 18rem 6rem;
  position: relative;
  z-index: 3;
}
@media only screen and (max-width: 767px) {
  .hero-block__wrap__content__constraint {
    padding: 8rem 2rem;
  }
}

/*------------------------------------------------------------------
Image Block
------------------------------------------------------------------*/
body .image-block {
  margin: 8rem auto;
}
body .image-block__wrap {
  margin: 0 auto;
  padding: 0 2rem;
  position: relative;
  max-width: 1024px;
}
body .image-block__wrap--wide {
  max-width: 1280px;
}
body .image-block__wrap--narrow {
  max-width: 968px;
}
body .image-block__wrap--thin {
  max-width: 640px;
}
body .image-block__wrap img {
  width: 100%;
  height: auto;
  display: block;
}
body .image-block__wrap__caption {
  background: #37b4b8;
  position: absolute;
  bottom: 3rem;
  left: 2rem;
  padding: 1rem 4rem;
  box-shadow: rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(15, 23, 42, 0.1) 0px 20px 25px -5px, rgba(15, 23, 42, 0.1) 0px 8px 10px -6px;
  transform: translateX(-1rem);
}
@media only screen and (max-width: 767px) {
  body .image-block__wrap__caption {
    position: relative;
    width: calc(100% - 2rem);
    padding: 1rem 2rem;
  }
  body .image-block__wrap__caption p {
    font-size: 1.2rem;
  }
}
body .image-block__wrap__caption p {
  color: white;
  margin: 0;
}

/*------------------------------------------------------------------
Image and text block
------------------------------------------------------------------*/
.image-text__wrap {
  padding: 0 2rem;
  position: relative;
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  margin: 8rem auto;
  justify-content: space-between;
  max-width: 1024px;
  align-items: center;
}
.image-text__wrap--wide {
  max-width: 1280px;
}
.image-text__wrap--narrow {
  max-width: 968px;
}
.image-text__wrap--thin {
  max-width: 640px;
}
.image-text__wrap__image {
  width: 50%;
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-content: center;
  text-align: center;
  min-height: 40rem;
}
@media only screen and (max-width: 767px) {
  .image-text__wrap__image {
    width: 100%;
    transform: none !important;
    order: 1 !important;
  }
}
.image-text__wrap__image img {
  width: 100%;
  height: auto;
}
@media only screen and (min-width: 768px) {
  .image-text__wrap__image img {
    -o-object-fit: cover;
       object-fit: cover;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
}
.image-text__wrap__text {
  width: 50%;
  padding: 10rem;
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-content: center;
}
.image-text__wrap__text__heading {
  position: relative;
  width: 100%;
  padding-right: 4rem;
  margin-bottom: 2rem;
}
.image-text__wrap__text__heading__icon {
  position: absolute;
  right: 0;
  top: 0;
  transform: translateX(80%) translateY(-40%);
  opacity: 0;
  transition: all 1s cubic-bezier(0.165, 0.84, 0.44, 1);
}
@media only screen and (max-width: 767px) {
  .image-text__wrap__text__heading__icon {
    right: calc(100% - 2rem);
    top: -2rem;
  }
}
.image-text__wrap__text__heading__icon.inView {
  transform: translateX(80%) translateY(-80%);
  opacity: 1;
}
@media only screen and (max-width: 767px) {
  .image-text__wrap__text {
    width: 100%;
    order: 2;
    padding: 3rem 0 0;
  }
}

.image-text--reversed .image-text__wrap__image {
  order: 2;
}
.image-text--reversed .image-text__wrap__text {
  order: 1;
}

/*------------------------------------------------------------------
Link block
------------------------------------------------------------------*/
.link-block {
  margin: 0 auto;
  position: relative;
  overflow: hidden;
  margin: 8rem auto;
  max-width: 1024px;
}
.link-block--wide {
  max-width: 1280px;
}
.link-block--narrow {
  max-width: 968px;
}
.link-block--thin {
  max-width: 640px;
}
.link-block__wrap {
  padding: 0 2rem 2rem;
  margin: 0 -2rem;
  position: relative;
  display: flex;
  flex-wrap: wrap;
}
@media only screen and (max-width: 767px) {
  .link-block__wrap {
    margin: 0 auto;
    padding: 0 1rem 2rem;
  }
}
.link-block__wrap__item {
  box-shadow: rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(15, 23, 42, 0.1) 0px 20px 25px -5px, rgba(15, 23, 42, 0.1) 0px 8px 10px -6px;
  margin: 2rem;
  background: white;
  overflow: hidden;
  position: relative;
  border-radius: 0.2rem;
}
.link-block__wrap__item:hover .link-block__wrap__item__content__link svg {
  transform: translateX(0.5rem);
}
.link-block__wrap__item__image {
  width: 100%;
}
.link-block__wrap__item__icon {
  text-align: center;
  display: block;
}
.link-block__wrap__item__icon img {
  margin: 2rem auto 0;
  display: inline-block;
  max-width: 100%;
  height: auto;
}
.link-block__wrap__item__content {
  padding: 1rem 3rem 2rem;
}
.link-block__wrap__item__content__heading {
  position: relative;
  margin: 2rem auto 1rem;
}
.link-block__wrap__item__content {
  padding-bottom: 6rem;
}
.link-block__wrap__item__content__link {
  color: #ec125f;
  position: absolute;
  bottom: 2rem;
  left: 3rem;
}
.link-block__wrap__item__content__link svg {
  transition: all 333ms ease;
}
.link-block__wrap__item__content__link svg path {
  fill: #ec125f;
}

.link-block__wrap .link-block__wrap__item {
  width: calc(33.33333% - 4rem);
}
@media only screen and (max-width: 767px) {
  .link-block__wrap .link-block__wrap__item {
    width: 100%;
    margin: 2rem 1rem;
  }
}

.link-block__wrap--2 .link-block__wrap__item {
  width: calc(50% - 4rem);
}
@media only screen and (max-width: 767px) {
  .link-block__wrap--2 .link-block__wrap__item {
    width: 100%;
    margin: 2rem 1rem;
  }
}

.link-block__wrap--3 .link-block__wrap__item {
  width: calc(33.333% - 4rem);
}
@media only screen and (max-width: 767px) {
  .link-block__wrap--3 .link-block__wrap__item {
    width: 100%;
    margin: 2rem 1rem;
  }
}

.link-block__wrap--4 .link-block__wrap__item {
  width: calc(25% - 4rem);
}
@media only screen and (max-width: 767px) {
  .link-block__wrap--4 .link-block__wrap__item {
    width: 100%;
    margin: 2rem 1rem;
  }
}

/*------------------------------------------------------------------
Slider block
------------------------------------------------------------------*/
.slider-block {
  margin: 8rem auto;
  position: relative;
}
.slider-block__wrap {
  position: relative;
  width: 100%;
}
.slider-block__arrows {
  position: absolute;
  top: 30%;
  display: flex;
  flex-wrap: wrap;
  z-index: 33;
  width: 100%;
}
@media only screen and (max-width: 967px) {
  .slider-block__arrows {
    top: 17.5%;
  }
}
.slider-block__arrows__next, .slider-block__arrows__prev {
  position: absolute;
  cursor: pointer;
  transition: all 0.5s cubic-bezier(0.165, 0.84, 0.44, 1);
  left: 0;
}
.slider-block__arrows__next {
  right: 0;
  left: auto;
}
.slider-block__heading {
  margin: 0 auto;
  max-width: 1280px;
  padding: 0 2rem;
  position: relative;
}
.slider-block__slider {
  position: relative;
}
@media only screen and (max-width: 767px) {
  .slider-block__slider {
    margin-left: 0;
    padding-left: 0;
  }
}
.slider-block__slider__item {
  padding-top: 4rem;
}
@media only screen and (max-width: 767px) {
  .slider-block__slider__item {
    width: 49%;
  }
}
.slider-block__slider__item__image {
  position: relative;
  background: #ec125f;
  transition: all 0.5s cubic-bezier(0.165, 0.84, 0.44, 1);
  margin-bottom: 3m;
  position: relative;
}
.slider-block__slider__item__image:after {
  content: "";
  position: relative;
  display: block;
  padding-bottom: 77.7777777778%;
}
.slider-block__slider__item__image:before {
  position: absolute;
  display: block;
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  box-shadow: rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(15, 23, 42, 0.1) 0px 20px 25px -5px, rgba(15, 23, 42, 0.1) 0px 8px 10px -6px;
  opacity: 0;
}
@media only screen and (max-width: 767px) {
  .slider-block__slider__item__image {
    position: relative;
  }
  .slider-block__slider__item__image:after {
    content: "";
    position: relative;
    display: block;
    padding-bottom: 88.8888888889%;
  }
}
.slider-block__slider__item__image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  position: absolute;
  top: 0;
  left: 0;
  object-fit: cover;
}
.slider-block__slider__item__copy {
  padding: 4rem 0 2rem;
  transition: all 0.5s cubic-bezier(0.165, 0.84, 0.44, 1);
  opacity: 0;
  transform: translateY(2rem);
}
@media only screen and (max-width: 767px) {
  .slider-block__slider__item__copy {
    margin: 0 -6rem;
    width: auto;
    text-align: center;
  }
}
.slider-block .tns-item:not(.tns-slide-active) + .tns-slide-active + .tns-slide-active .slider-block__slider__item__image {
  z-index: 3;
  transform: scale(1.05);
}
@media only screen and (max-width: 767px) {
  .slider-block .tns-item:not(.tns-slide-active) + .tns-slide-active + .tns-slide-active .slider-block__slider__item__image {
    transform: scale(1.1);
  }
}
.slider-block .tns-item:not(.tns-slide-active) + .tns-slide-active + .tns-slide-active .slider-block__slider__item__image:before {
  opacity: 1;
}
.slider-block .tns-item:not(.tns-slide-active) + .tns-slide-active + .tns-slide-active .slider-block__slider__item__copy {
  opacity: 1;
  transform: translateY(0);
}
.slider-block .tns-controls {
  position: absolute;
  z-index: 4;
  top: -6rem;
  right: 2rem;
}
@media only screen and (max-width: 767px) {
  .slider-block .tns-controls {
    top: 0;
    position: relative;
    right: 0;
    text-align: center;
  }
}
.slider-block .tns-controls [data-controls] {
  border: 0;
  font-size: 0;
  background: transparent;
  width: 4rem;
  height: 4rem;
  border: 2px solid #ec125f;
  border-radius: 100rem;
  background-image: url("data:image/svg+xml; utf8, <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"14\" height=\"10\" viewBox=\"0 0 14 10\"><path fill=\"%23000\" fill-rule=\"evenodd\" d=\"M8.423.015 13.408 5 8.422 9.985 7.38 8.943l3.2-3.2H.09V4.257H10.58l-3.2-3.2L8.424.016Z\"/></svg>");
  background-size: 14px 10px;
  background-repeat: no-repeat;
  background-position: center center;
  transition: transform 333ms ease;
}
.slider-block .tns-controls [data-controls=prev] {
  transform: rotate(-180deg);
}
.slider-block .tns-controls [data-controls=prev]:hover {
  transform: rotate(-180deg) translateX(0.2rem);
}
.slider-block .tns-controls [data-controls=next] {
  margin-left: 1rem;
}
.slider-block .tns-controls [data-controls=next]:hover {
  transform: translateX(0.2rem);
}

/*------------------------------------------------------------------
Tabbed content block
------------------------------------------------------------------*/
.tabbed-block__wrap {
  margin: 0 auto;
  padding: 0 2rem;
  position: relative;
  display: flex;
  flex-wrap: wrap;
  max-width: 100%;
}
.tabbed-block__wrap__tabs {
  width: 50%;
  position: relative;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  align-items: flex-start;
}
.tabbed-block__wrap__tabs__item {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  align-content: center;
  padding-left: 2rem;
}
@media only screen and (max-width: 967px) {
  .tabbed-block__wrap__tabs__item {
    align-items: flex-start;
    align-content: flex-start;
  }
  .tabbed-block__wrap__tabs__item:after {
    display: none !important;
  }
}
.tabbed-block__wrap__tabs__item:nth-child(even) {
  background: #f4f4f7;
}
.tabbed-block__wrap__tabs__item:nth-child(even):after {
  position: absolute;
  display: block;
  content: "";
  top: 0;
  right: 99%;
  bottom: 0;
  background: #f4f4f7;
  width: 100vw;
}
@media only screen and (max-width: 967px) {
  .tabbed-block__wrap__tabs {
    width: 100%;
    border-right: 0 solid #ebebeb;
    border-left: 1px solid #ebebeb;
    padding-left: 2rem;
    margin-bottom: 4rem;
  }
}
.tabbed-block__wrap__tabs__item {
  padding: 2rem;
  display: block;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  justify-content: flex-start;
  width: 100%;
  max-width: 50rem;
  text-align: left;
  position: relative;
}
@media only screen and (max-width: 967px) {
  .tabbed-block__wrap__tabs__item {
    padding: 0.5rem 2rem;
    max-width: 100%;
  }
}
@media only screen and (max-width: 967px) {
  .tabbed-block__wrap__tabs__item {
    align-items: flex-start;
    align-content: flex-start;
  }
  .tabbed-block__wrap__tabs__item:after {
    display: none !important;
  }
}
.tabbed-block__wrap__tabs__item.active {
  background: #ec125f;
}
.tabbed-block__wrap__tabs__item.active.tabbed-block__wrap__tabs__item--pink {
  background: #ec125f;
  color: white;
}
.tabbed-block__wrap__tabs__item.active.tabbed-block__wrap__tabs__item--pink:after {
  background: #ec125f;
}
.tabbed-block__wrap__tabs__item.active.tabbed-block__wrap__tabs__item--teal {
  background: #37b4b8;
  color: white;
}
.tabbed-block__wrap__tabs__item.active.tabbed-block__wrap__tabs__item--teal:after {
  background: #37b4b8;
}
.tabbed-block__wrap__tabs__item.active.tabbed-block__wrap__tabs__item--purple {
  background: #69306c;
  color: white;
}
.tabbed-block__wrap__tabs__item.active.tabbed-block__wrap__tabs__item--purple:after {
  background: #69306c;
}
.tabbed-block__wrap__tabs__item.active:after {
  position: absolute;
  display: block;
  content: "";
  top: 0;
  right: 99%;
  bottom: 0;
  background: #ec125f;
  width: 100vw;
}
.tabbed-block__wrap__tabs__item.active h4 {
  color: white;
}
.tabbed-block__wrap__content {
  width: 50%;
}
@media only screen and (max-width: 967px) {
  .tabbed-block__wrap__content {
    width: 100%;
    padding: 0;
  }
}
.tabbed-block__wrap__content__item {
  display: none;
  padding: 6rem;
}
.tabbed-block__wrap__content__item__constraint {
  max-width: 50rem;
}
.tabbed-block__wrap__content__item--pink {
  background: #ec125f;
  color: white;
}
.tabbed-block__wrap__content__item--teal {
  background: #37b4b8;
  color: white;
}
.tabbed-block__wrap__content__item--purple {
  background: #69306c;
  color: white;
}
.tabbed-block__wrap__content__item.active {
  display: block;
}

[data-count="1"] .tabbed-block__wrap__tabs__item {
  height: 100%;
}

[data-count="2"] .tabbed-block__wrap__tabs__item {
  height: 50%;
}

[data-count="3"] .tabbed-block__wrap__tabs__item {
  height: 33.33333333%;
}

[data-count="4"] .tabbed-block__wrap__tabs__item {
  height: 25%;
}

[data-count="5"] .tabbed-block__wrap__tabs__item {
  height: 20%;
}

[data-count="6"] .tabbed-block__wrap__tabs__item {
  height: 16.6666666667%;
}

[data-count="7"] .tabbed-block__wrap__tabs__item {
  height: 14.2857142857%;
}

[data-count="8"] .tabbed-block__wrap__tabs__item {
  height: 12.5%;
}

[data-count="9"] .tabbed-block__wrap__tabs__item {
  height: 11.1111111111%;
}

[data-count="10"] .tabbed-block__wrap__tabs__item {
  height: 10%;
}

/*------------------------------------------------------------------
Testimonial block
------------------------------------------------------------------*/
.testimonials {
  margin: 8rem auto;
  position: relative;
  overflow: hidden;
}
.testimonials__wrap {
  margin: 0 auto;
  max-width: 1024px;
  padding: 0 2rem;
  position: relative;
}
.testimonials__wrap__heading {
  width: 100%;
  text-align: center;
  margin-bottom: 4rem;
}
.testimonials__wrap__slider__item {
  max-width: 768px;
  margin: 0 auto;
  text-align: center;
  background: #ec125f;
  box-shadow: rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(15, 23, 42, 0.1) 0px 20px 25px -5px, rgba(15, 23, 42, 0.1) 0px 8px 10px -6px;
  border-radius: 0.5rem;
  padding: 6rem;
}
.testimonials__wrap__slider__item img {
  width: 4rem;
  height: auto;
  margin: 0 auto 4rem;
}
.testimonials__wrap__slider__item__credit {
  color: white;
  margin-top: 4rem;
}
.testimonials__wrap__slider__item__credit p {
  margin: 0 !important;
}
.testimonials .tns-controls {
  position: absolute;
  z-index: 4;
  top: 50%;
  transform: translateY(-50%);
  width: 100%;
  left: 0;
}
@media only screen and (max-width: 767px) {
  .testimonials .tns-controls {
    bottom: 6rem;
    top: auto;
  }
}
.testimonials .tns-controls [data-controls] {
  border: 0;
  font-size: 0;
  background: transparent;
  width: 4rem;
  height: 4rem;
  border: 2px solid #0f172a;
  border-radius: 100rem;
  position: absolute;
  background-image: url("data:image/svg+xml; utf8, <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"14\" height=\"10\" viewBox=\"0 0 14 10\"><path fill=\"%230f172a\" fill-rule=\"evenodd\" d=\"M8.423.015 13.408 5 8.422 9.985 7.38 8.943l3.2-3.2H.09V4.257H10.58l-3.2-3.2L8.424.016Z\"/></svg>");
  background-size: 14px 10px;
  background-repeat: no-repeat;
  background-position: center center;
  opacity: 0.5;
  transition: opacity 333ms ease;
}
.testimonials .tns-controls [data-controls]:hover {
  opacity: 1;
}
@media only screen and (max-width: 767px) {
  .testimonials .tns-controls [data-controls] {
    border: 2px solid white;
    background-image: url("data:image/svg+xml; utf8, <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"14\" height=\"10\" viewBox=\"0 0 14 10\"><path fill=\"%23fff\" fill-rule=\"evenodd\" d=\"M8.423.015 13.408 5 8.422 9.985 7.38 8.943l3.2-3.2H.09V4.257H10.58l-3.2-3.2L8.424.016Z\"/></svg>");
  }
}
.testimonials .tns-controls [data-controls=prev] {
  left: 2rem;
  transform: rotate(-180deg);
}
@media only screen and (max-width: 767px) {
  .testimonials .tns-controls [data-controls=prev] {
    left: 4rem;
  }
}
.testimonials .tns-controls [data-controls=next] {
  right: 2rem;
}
@media only screen and (max-width: 767px) {
  .testimonials .tns-controls [data-controls=next] {
    right: 4rem;
  }
}
.testimonials .tns-nav {
  position: absolute;
  bottom: -3rem;
  left: 0;
  right: 0;
  z-index: 2;
  text-align: center;
}
.testimonials .tns-nav button {
  background: black;
  width: 0.7rem;
  height: 0.7rem;
  border-radius: 1rem;
  border: 0;
  padding: 0;
  display: inline-block;
  margin: 0.1rem;
  transform: scale(0.6);
  opacity: 0.5;
  transition: opacity 333ms ease, transform 333ms ease;
}
.testimonials .tns-nav button.tns-nav-active {
  transform: scale(1);
  opacity: 1;
  background: black;
}

/*------------------------------------------------------------------
Text block
------------------------------------------------------------------*/
.text-block {
  position: relative;
  word-break: break-word;
}
.text-block--off-white {
  padding: 8rem 0;
  background: #f4f4f7;
}
.text-block--off-white .text-block__wrap {
  margin: 0 auto;
}
.text-block--primary {
  padding: 8rem 0;
  background: #ec125f;
}
.text-block--primary .text-block__wrap {
  margin: 0 auto;
}
.text-block__wrap {
  padding: 0 2rem;
  margin: 8rem auto;
  max-width: 1024px;
}
.text-block__wrap--wide {
  max-width: 1280px;
}
.text-block__wrap--narrow {
  max-width: 968px;
}
.text-block__wrap--thin {
  max-width: 640px;
}
.text-block__wrap--column {
  display: flex;
  flex-wrap: wrap;
}
@media only screen and (min-width: 1024px) {
  .text-block__wrap--column__left {
    width: 50%;
    padding-right: 4rem;
    position: relative;
  }
  .text-block__wrap--column__left:after {
    position: absolute;
    display: block;
    content: "";
    top: 2rem;
    bottom: 2rem;
    width: 1px;
    right: 0;
    background: #ebebeb;
  }
  .text-block__wrap--column__right {
    width: 50%;
    padding-left: 4rem;
  }
}
.text-block__wrap img {
  display: block;
  height: auto;
  max-width: 100%;
}
@media only screen and (min-width: 1024px) {
  .text-block__wrap img.left, .text-block__wrap img.leftALone {
    float: left;
    margin-right: 1.5rem;
    margin-bottom: 1.5rem;
  }
  .text-block__wrap img.right, .text-block__wrap img.rightAlone {
    float: right;
    margin-left: 1.5rem;
    margin-bottom: 1.5rem;
  }
  .text-block__wrap img:not([width]) {
    max-width: 100%;
  }
  .text-block__wrap img:not([height]) {
    height: auto;
  }
}

/*------------------------------------------------------------------
Video block
------------------------------------------------------------------*/
.video-block {
  display: flex;
  flex-wrap: wrap;
  margin: 8rem auto;
  padding: 0 2rem;
  max-width: 1024px;
}
.video-block--wide {
  max-width: 1280px;
}
.video-block--narrow {
  max-width: 968px;
}
.video-block--thin {
  max-width: 640px;
}
.video-block__constraint {
  position: relative;
  width: 100%;
  overflow: hidden;
  cursor: pointer;
}
.video-block__constraint__player {
  position: absolute;
  width: 100%;
  height: 100%;
  z-index: -1;
  opacity: 0;
  top: 0%;
  left: 0%;
}
.video-block__constraint__player.playing ~ .video__constraint__icon .stroke-dotted {
  stroke-width: 4px;
  opacity: 1;
}
.video-block__constraint__player.playing ~ .video__constraint__icon .stroke-solid {
  opacity: 0;
  stroke-dashoffset: 300;
}
.video-block__constraint__player.playing ~ .video__constraint__icon .icon {
  transform: scale(1.05);
}
.video-block__constraint__thumbnail {
  position: relative;
  width: 100%;
  position: relative;
  overflow: hidden;
}
.video-block__constraint__thumbnail:after {
  content: "";
  position: relative;
  display: block;
  padding-bottom: 56.25%;
}
.video-block__constraint__thumbnail:before {
  position: absolute;
  display: block;
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.4) 100%);
  opacity: 0.75;
  transition: all 0.75s cubic-bezier(0.165, 0.84, 0.44, 1);
  z-index: 2;
}
.video-block__constraint__thumbnail:hover:after {
  opacity: 1;
}
.video-block__constraint__thumbnail img {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  -o-object-fit: cover;
     object-fit: cover;
}
.video-block__constraint__icon {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateX(-50%) translateY(-50%);
  position: absolute;
  z-index: 2;
  pointer-events: none;
}
@keyframes spin {
  to {
    transform: rotate(360deg);
  }
}
.video-block__constraint__icon .stroke-dotted {
  opacity: 0;
  stroke-dasharray: 4, 5;
  stroke-width: 1px;
  transform-origin: 50% 50%;
  animation: spin 4s infinite linear;
  transition: opacity 1s ease, stroke-width 1s ease;
}
.video-block__constraint__icon .stroke-solid {
  stroke-dashoffset: 0;
  stroke-dasharray: 300;
  stroke-width: 4px;
  transition: stroke-dashoffset 1s ease, opacity 1s ease;
}
.video-block__constraint__icon .icon {
  transform-origin: 50% 50%;
  transition: transform 200ms ease-out;
}
