/*!
 *  Theme Name: Chantal Flores 2026
 *  Description: Custom WordPress theme for Chantal Flores
 *  Version: 1.0.6
 *  Author: Kyle Duncan
 *  Author URI: https://www.thisisforge.com/
 *  */
@font-face {
  font-display: swap;
  font-family: "Made Canvas";
  font-style: normal;
  font-weight: 400;
  src: url("fonts/made_canvas_regular-webfont.woff2") format("woff2"), url("fonts/made_canvas_regular-webfont.woff") format("woff");
}
:root {
  --white: #fff;
  --black: #000;
  --error-red: #DB4141;
  --dark-grey: #36353A;
  --med-grey: #8B8888;
  --light-grey: #A7A7A9;
  --lighter-grey: #CECECF;
  --off-white: #F5F5F5;
  --off-whiter: #FAFAFA;
  --pink: #E29C7F;
  --grey-overlay: rgba(167, 167, 169, 0.5);
  --sans: mr-eaves-modern, Arial, Helvetica, sans-serif;
  --serif: "Made Canvas", Georgia, "Times New Roman", serif;
  --global-font-size: 23px;
  --global-line-height: 1.3em;
}

@media all and (min-width: 0) and (max-width: 374px) {
  :root {
    --gutter: 20px;
  }
}
@media all and (min-width: 375px) and (max-width: 767px) {
  :root {
    --gutter: 30px;
  }
}
@media all and (min-width: 768px) and (max-width: 1259px) {
  :root {
    --gutter: 40px;
  }
}
@media all and (min-width: 1260px) {
  :root {
    --gutter: 80px;
  }
}
*,
*::before,
*::after {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

*:focus {
  outline: none;
}

ul, ol, li {
  list-style: none;
}

address {
  font-style: normal;
}

#container .mar-b-0 {
  margin-bottom: 0;
}

.mar-l-5 {
  margin-left: 5px;
}

.mar-r-5 {
  margin-right: 5px;
}

.mar-t-5 {
  margin-top: 5px;
}

.mar-b-5 {
  margin-bottom: 5px;
}

.mar-l-10 {
  margin-left: 10px;
}

.mar-r-10 {
  margin-right: 10px;
}

.mar-t-10 {
  margin-top: 10px;
}

.mar-b-10 {
  margin-bottom: 10px;
}

.mar-l-15 {
  margin-left: 15px;
}

.mar-r-15 {
  margin-right: 15px;
}

.mar-t-15 {
  margin-top: 15px;
}

.mar-b-15 {
  margin-bottom: 15px;
}

.mar-l-20 {
  margin-left: 20px;
}

.mar-r-20 {
  margin-right: 20px;
}

.mar-t-20 {
  margin-top: 20px;
}

.mar-b-20 {
  margin-bottom: 20px;
}

.mar-l-30 {
  margin-left: 30px;
}

.mar-r-30 {
  margin-right: 30px;
}

.mar-t-30 {
  margin-top: 30px;
}

.mar-b-30 {
  margin-bottom: 30px;
}

.mar-l-40 {
  margin-left: 40px;
}

.mar-r-40 {
  margin-right: 40px;
}

.mar-t-40 {
  margin-top: 40px;
}

.mar-b-40 {
  margin-bottom: 40px;
}

.mar-t-60 {
  margin-top: 60px;
}

.mar-b-60 {
  margin-bottom: 60px;
}

.mar-auto {
  margin-left: auto;
  margin-right: auto;
}

.mar-v-auto {
  margin-bottom: auto;
  margin-top: auto;
}

.mar-neg {
  margin-left: calc(-1 * var(--gutter));
  margin-right: calc(-1 * var(--gutter));
}

.mar-l-neg {
  margin-left: calc(-1 * var(--gutter));
}

.mar-r-neg {
  margin-right: calc(-1 * var(--gutter));
}

@media all and (min-width: 0) and (max-width: 767px) {
  .mar-l-60,
  .mar-l-80,
  .mar-l-100 {
    margin-left: 40px;
  }
  .mar-r-60,
  .mar-r-80,
  .mar-r-100 {
    margin-right: 40px;
  }
  .mar-t-80,
  .mar-t-100 {
    margin-top: 60px;
  }
  .mar-b-80,
  .mar-b-100 {
    margin-bottom: 60px;
  }
}
@media all and (min-width: 768px) {
  .mar-t-80 {
    margin-top: 80px;
  }
  .mar-b-80 {
    margin-bottom: 80px;
  }
  .mar-t-100 {
    margin-top: 100px;
  }
  .mar-b-100 {
    margin-bottom: 100px;
  }
  .mar-x-0-sm {
    margin-left: 0;
    margin-right: 0;
  }
  .mar-l-0-sm {
    margin-left: 0;
  }
  .mar-r-0-sm {
    margin-right: 0;
  }
  #container .mar-b-0-sm {
    margin-bottom: 0;
  }
}
@media all and (min-width: 1024px) {
  .mar-l-60 {
    margin-left: 60px;
  }
  .mar-r-60 {
    margin-right: 60px;
  }
  .mar-l-80 {
    margin-left: 80px;
  }
  .mar-r-80 {
    margin-right: 80px;
  }
  .mar-l-100 {
    margin-left: 100px;
  }
  .mar-r-100 {
    margin-right: 100px;
  }
  .mar-x-0-md {
    margin-left: 0;
    margin-right: 0;
  }
}
.pad-l-5 {
  padding-left: 5px;
}

.pad-r-5 {
  padding-right: 5px;
}

.pad-t-5 {
  padding-top: 5px;
}

.pad-b-5 {
  padding-bottom: 5px;
}

.pad-l-10 {
  padding-left: 10px;
}

.pad-r-10 {
  padding-right: 10px;
}

.pad-t-10 {
  padding-top: 10px;
}

.pad-b-10 {
  padding-bottom: 10px;
}

.pad-10 {
  padding: 10px;
}

.pad-l-15 {
  padding-left: 15px;
}

.pad-r-15 {
  padding-right: 15px;
}

.pad-t-15 {
  padding-top: 15px;
}

.pad-b-15 {
  padding-bottom: 15px;
}

.pad-15 {
  padding: 15px;
}

.pad-l-20 {
  padding-left: 20px;
}

.pad-r-20 {
  padding-right: 20px;
}

.pad-t-20 {
  padding-top: 20px;
}

.pad-b-20 {
  padding-bottom: 20px;
}

.pad-20 {
  padding: 20px;
}

.pad-l-30 {
  padding-left: 30px;
}

.pad-r-30 {
  padding-right: 30px;
}

.pad-t-30 {
  padding-top: 30px;
}

.pad-b-30 {
  padding-bottom: 30px;
}

.pad-30 {
  padding: 30px;
}

.pad-l-40 {
  padding-left: 40px;
}

.pad-r-40 {
  padding-right: 40px;
}

.pad-t-40 {
  padding-top: 40px;
}

.pad-b-40 {
  padding-bottom: 40px;
}

.pad-40 {
  padding: 40px;
}

.pad-t-60 {
  padding-top: 60px;
}

.pad-b-60 {
  padding-bottom: 60px;
}

@media all and (min-width: 0) and (max-width: 767px) {
  .pad-b-80,
  .pad-b-100 {
    padding-bottom: 60px;
  }
  .pad-t-80,
  .pad-t-100 {
    padding-top: 60px;
  }
}
@media all and (min-width: 0) and (max-width: 1023px) {
  .pad-l-60,
  .pad-l-80,
  .pad-l-100 {
    padding-left: 40px;
  }
  .pad-r-60,
  .pad-r-80,
  .pad-r-100 {
    padding-right: 40px;
  }
}
@media all and (min-width: 768px) {
  .pad-t-80 {
    padding-top: 80px;
  }
  .pad-b-80 {
    padding-bottom: 80px;
  }
  .pad-t-100 {
    padding-top: 100px;
  }
  .pad-b-100 {
    padding-bottom: 100px;
  }
}
@media all and (min-width: 1024px) {
  .pad-l-60 {
    padding-left: 60px;
  }
  .pad-r-60 {
    padding-right: 60px;
  }
  .pad-l-80 {
    padding-left: 80px;
  }
  .pad-r-80 {
    padding-right: 80px;
  }
  .pad-l-100 {
    padding-left: 100px;
  }
  .pad-r-100 {
    padding-right: 100px;
  }
}
.wrapper {
  margin-left: auto;
  margin-right: auto;
  max-width: 1360px;
  width: calc(100% - var(--gutter) * 2);
}
.wrapper.no-cntr {
  margin-left: 0;
  margin-right: 0;
}

.grid {
  column-gap: 6%;
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  row-gap: 2.5rem;
}
.grid.gap-4 {
  gap: 4px;
}
.grid.gap-10 {
  gap: 10px;
}
.grid.gap-20 {
  gap: 20px;
}
.grid.no-gap {
  gap: 0;
}
.grid.no-c-gap {
  column-gap: 0;
}
.grid.no-r-gap {
  row-gap: 0;
}
.grid.r-gap-30 {
  row-gap: 30px;
}
.grid.less-c-gap {
  column-gap: 3%;
}
.grid.align-s {
  align-items: start;
}
.grid.align-c {
  align-items: center;
}
.grid.align-e {
  align-items: end;
}
.grid.jstfy-s {
  justify-items: start;
}
.grid.jstfy-c {
  justify-items: center;
}
.grid.jstfy-e {
  justify-items: end;
}
.grid .col-1 {
  grid-column: span 1;
}
.grid .col-2 {
  grid-column: span 2;
}
.grid .col-3 {
  grid-column: span 3;
}
.grid .col-4 {
  grid-column: span 4;
}
.grid .col-5 {
  grid-column: span 5;
}
.grid .col-6 {
  grid-column: span 6;
}
.grid .col-7 {
  grid-column: span 7;
}
.grid .col-8 {
  grid-column: span 8;
}
.grid .col-9 {
  grid-column: span 9;
}
.grid .col-10 {
  grid-column: span 10;
}
.grid .col-11 {
  grid-column: span 11;
}
.grid .col-12 {
  grid-column: span 12;
}
.grid .col-12.overlap {
  grid-column: 1/span 12;
  grid-row: 1;
}

@media all and (min-width: 375px) {
  .grid .col-1-xxs {
    grid-column: span 1;
  }
  .grid .col-2-xxs {
    grid-column: span 2;
  }
  .grid .col-3-xxs {
    grid-column: span 3;
  }
  .grid .col-4-xxs {
    grid-column: span 4;
  }
  .grid .col-5-xxs {
    grid-column: span 5;
  }
  .grid .col-6-xxs {
    grid-column: span 6;
  }
  .grid .col-7-xxs {
    grid-column: span 7;
  }
  .grid .col-8-xxs {
    grid-column: span 8;
  }
  .grid .col-9-xxs {
    grid-column: span 9;
  }
  .grid .col-10-xxs {
    grid-column: span 10;
  }
  .grid .col-11-xxs {
    grid-column: span 11;
  }
  .grid .col-12-xxs {
    grid-column: span 12;
  }
  .grid .first-xxs {
    order: -1;
  }
  .grid .last-xxs {
    order: 13;
  }
}
@media all and (min-width: 600px) {
  .grid .col-1-xs {
    grid-column: span 1;
  }
  .grid .col-2-xs {
    grid-column: span 2;
  }
  .grid .col-3-xs {
    grid-column: span 3;
  }
  .grid .col-4-xs {
    grid-column: span 4;
  }
  .grid .col-5-xs {
    grid-column: span 5;
  }
  .grid .col-6-xs {
    grid-column: span 6;
  }
  .grid .col-7-xs {
    grid-column: span 7;
  }
  .grid .col-8-xs {
    grid-column: span 8;
  }
  .grid .col-9-xs {
    grid-column: span 9;
  }
  .grid .col-10-xs {
    grid-column: span 10;
  }
  .grid .col-11-xs {
    grid-column: span 11;
  }
  .grid .col-12-xs {
    grid-column: span 12;
  }
  .grid .first-xs {
    order: -1;
  }
  .grid .last-xs {
    order: 13;
  }
}
@media all and (min-width: 768px) {
  .grid .col-1-sm {
    grid-column: span 1;
  }
  .grid .col-2-sm {
    grid-column: span 2;
  }
  .grid .col-3-sm {
    grid-column: span 3;
  }
  .grid .col-4-sm {
    grid-column: span 4;
  }
  .grid .col-5-sm {
    grid-column: span 5;
  }
  .grid .col-5-sm.right-sm {
    grid-column: -6/span 5;
  }
  .grid .col-6-sm {
    grid-column: span 6;
  }
  .grid .col-7-sm {
    grid-column: span 7;
  }
  .grid .col-8-sm {
    grid-column: span 8;
  }
  .grid .col-9-sm {
    grid-column: span 9;
  }
  .grid .col-10-sm {
    grid-column: span 10;
  }
  .grid .col-11-sm {
    grid-column: span 11;
  }
  .grid .col-12-sm {
    grid-column: span 12;
  }
  .grid .first-sm {
    order: -1;
  }
  .grid .last-sm {
    order: 13;
  }
}
@media all and (min-width: 1024px) {
  .grid .col-1-md {
    grid-column: span 1;
  }
  .grid .col-2-md {
    grid-column: span 2;
  }
  .grid .col-3-md {
    grid-column: span 3;
  }
  .grid .col-4-md {
    grid-column: span 4;
  }
  .grid .col-5-md {
    grid-column: span 5;
  }
  .grid .col-6-md {
    grid-column: span 6;
  }
  .grid .col-7-md {
    grid-column: span 7;
  }
  .grid .col-8-md {
    grid-column: span 8;
  }
  .grid .col-9-md {
    grid-column: span 9;
  }
  .grid .col-10-md {
    grid-column: span 10;
  }
  .grid .col-11-md {
    grid-column: span 11;
  }
  .grid .col-12-md {
    grid-column: span 12;
  }
  .grid .first-md {
    order: -1;
  }
  .grid .last-md {
    order: 13;
  }
}
@media all and (min-width: 1260px) {
  .grid .col-1-lg {
    grid-column: span 1;
  }
  .grid .col-2-lg {
    grid-column: span 2;
  }
  .grid .col-3-lg {
    grid-column: span 3;
  }
  .grid .col-4-lg {
    grid-column: span 4;
  }
  .grid .col-5-lg {
    grid-column: span 5;
  }
  .grid .col-6-lg {
    grid-column: span 6;
  }
  .grid .col-7-lg {
    grid-column: span 7;
  }
  .grid .col-8-lg {
    grid-column: span 8;
  }
  .grid .col-9-lg {
    grid-column: span 9;
  }
  .grid .col-10-lg {
    grid-column: span 10;
  }
  .grid .col-11-lg {
    grid-column: span 11;
  }
  .grid .col-12-lg {
    grid-column: span 12;
  }
  .grid .first-lg {
    order: -1;
  }
  .grid .last-lg {
    order: 13;
  }
}
@media all and (min-width: 1420px) {
  .grid .col-1-xl {
    grid-column: span 1;
  }
  .grid .col-2-xl {
    grid-column: span 2;
  }
  .grid .col-3-xl {
    grid-column: span 3;
  }
  .grid .col-4-xl {
    grid-column: span 4;
  }
  .grid .col-5-xl {
    grid-column: span 5;
  }
  .grid .col-6-xl {
    grid-column: span 6;
  }
  .grid .col-7-xl {
    grid-column: span 7;
  }
  .grid .col-8-xl {
    grid-column: span 8;
  }
  .grid .col-9-xl {
    grid-column: span 9;
  }
  .grid .col-10-xl {
    grid-column: span 10;
  }
  .grid .col-11-xl {
    grid-column: span 11;
  }
  .grid .col-12-xl {
    grid-column: span 12;
  }
  .grid .first-xl {
    order: -1;
  }
  .grid .last-xl {
    order: 13;
  }
}
.flex.column,
.flex-xxs.column,
.flex-xs.column,
.flex-sm.column,
.flex-md.column,
.flex-lg.column,
.flex-xl.column {
  flex-direction: column;
}
.flex.wrap,
.flex-xxs.wrap,
.flex-xs.wrap,
.flex-sm.wrap,
.flex-md.wrap,
.flex-lg.wrap,
.flex-xl.wrap {
  flex-wrap: wrap;
}
.flex.align-s,
.flex-xxs.align-s,
.flex-xs.align-s,
.flex-sm.align-s,
.flex-md.align-s,
.flex-lg.align-s,
.flex-xl.align-s {
  align-items: flex-start;
}
.flex.align-c,
.flex-xxs.align-c,
.flex-xs.align-c,
.flex-sm.align-c,
.flex-md.align-c,
.flex-lg.align-c,
.flex-xl.align-c {
  align-items: center;
}
.flex.align-e,
.flex-xxs.align-e,
.flex-xs.align-e,
.flex-sm.align-e,
.flex-md.align-e,
.flex-lg.align-e,
.flex-xl.align-e {
  align-items: flex-end;
}
.flex.baseline,
.flex-xxs.baseline,
.flex-xs.baseline,
.flex-sm.baseline,
.flex-md.baseline,
.flex-lg.baseline,
.flex-xl.baseline {
  align-items: baseline;
}
.flex.jstfy-s,
.flex-xxs.jstfy-s,
.flex-xs.jstfy-s,
.flex-sm.jstfy-s,
.flex-md.jstfy-s,
.flex-lg.jstfy-s,
.flex-xl.jstfy-s {
  justify-content: flex-start;
}
.flex.jstfy-c,
.flex-xxs.jstfy-c,
.flex-xs.jstfy-c,
.flex-sm.jstfy-c,
.flex-md.jstfy-c,
.flex-lg.jstfy-c,
.flex-xl.jstfy-c {
  justify-content: center;
}
.flex.jstfy-e,
.flex-xxs.jstfy-e,
.flex-xs.jstfy-e,
.flex-sm.jstfy-e,
.flex-md.jstfy-e,
.flex-lg.jstfy-e,
.flex-xl.jstfy-e {
  justify-content: flex-end;
}
.flex.spc-arnd,
.flex-xxs.spc-arnd,
.flex-xs.spc-arnd,
.flex-sm.spc-arnd,
.flex-md.spc-arnd,
.flex-lg.spc-arnd,
.flex-xl.spc-arnd {
  justify-content: space-around;
}
.flex.spc-btwn,
.flex-xxs.spc-btwn,
.flex-xs.spc-btwn,
.flex-sm.spc-btwn,
.flex-md.spc-btwn,
.flex-lg.spc-btwn,
.flex-xl.spc-btwn {
  justify-content: space-between;
}
.flex.spc-even,
.flex-xxs.spc-even,
.flex-xs.spc-even,
.flex-sm.spc-even,
.flex-md.spc-even,
.flex-lg.spc-even,
.flex-xl.spc-even {
  justify-content: space-evenly;
}
.flex .grow,
.flex-xxs .grow,
.flex-xs .grow,
.flex-sm .grow,
.flex-md .grow,
.flex-lg .grow,
.flex-xl .grow {
  flex-grow: 1;
}
.flex .no-shrink,
.flex-xxs .no-shrink,
.flex-xs .no-shrink,
.flex-sm .no-shrink,
.flex-md .no-shrink,
.flex-lg .no-shrink,
.flex-xl .no-shrink {
  flex-shrink: 0;
}
.flex .first,
.flex-xxs .first,
.flex-xs .first,
.flex-sm .first,
.flex-md .first,
.flex-lg .first,
.flex-xl .first {
  order: -1;
}
.flex .last,
.flex-xxs .last,
.flex-xs .last,
.flex-sm .last,
.flex-md .last,
.flex-lg .last,
.flex-xl .last {
  order: 99;
}

.white {
  color: var(--white);
}

.black {
  color: var(--black);
}

.error-red {
  color: var(--error-red);
}

.dark-grey {
  color: var(--dark-grey);
}

.med-grey {
  color: var(--med-grey);
}

.light-grey {
  color: var(--light-grey);
}

.pink {
  color: var(--pink);
}

.bg-white {
  background-color: var(--white);
}

.bg-black {
  background-color: var(--black);
}

.bg-dark-grey {
  background-color: var(--dark-grey);
}

.bg-light-grey {
  background-color: var(--light-grey);
}

.bg-lighter-grey {
  background-color: var(--lighter-grey);
}

.bg-off-white {
  background-color: var(--off-white);
}

.bg-off-whiter {
  background-color: var(--off-whiter);
}

.bg-pink {
  background-color: var(--pink);
}

.bg-grey-overlay {
  background-color: var(--grey-overlay);
}

.bg-pattern {
  background: url("images/bg-pattern.svg") center center;
}

.bdr-t-pink {
  border-top: 1.5px solid var(--pink);
}

.bdr-b-pink {
  border-bottom: 1.5px solid var(--pink);
}

#container .invalid {
  border-color: var(--error-red);
}

html, body, h1, h2, h3, h4, h5, h6 {
  font-size: var(--global-font-size);
}

html, body {
  color: var(--dark-grey);
  font-family: var(--sans);
  font-weight: 200;
}

h1, h2, h3, h4, h5, h6 {
  font-weight: 200;
  line-height: 1.2em;
}

p,
address {
  line-height: var(--global-line-height);
}
p:not(:last-child),
address:not(:last-child) {
  margin-bottom: 1em;
}

.serif {
  font-family: var(--serif);
  font-weight: 400;
}

.book {
  font-weight: 300;
}

.bold {
  font-weight: 700;
}

.mega-title {
  margin-bottom: 0.2em;
}

.huge-title {
  letter-spacing: 0.025em;
  margin-bottom: 0.2em;
}
.huge-title.more-mar {
  margin-bottom: 0.6em;
}

.big-title {
  margin-bottom: 0.4em;
}
.big-title.less-mar {
  margin-bottom: 0.2em;
}

.med-title {
  margin-bottom: 1em;
}
.med-title.less-mar {
  margin-bottom: 0.4em;
}

.small-title {
  font-size: 24px;
  margin-bottom: 1em;
}
.small-title.less-mar {
  margin-bottom: 0.4em;
}
.small-title.lesser-mar {
  margin-bottom: 0.2em;
}

.caps-title,
.caps-text {
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}
.caps-title:not(.big),
.caps-text:not(.big) {
  font-size: 16px;
}
.caps-title.big,
.caps-text.big {
  font-size: 20px;
}

.caps-title {
  margin-bottom: 1em;
}

.small {
  font-size: 16px;
}

.quote::before {
  background: url("images/quote.svg") no-repeat;
  content: "";
  display: block;
  height: 45px;
  margin: 0 auto 40px;
  width: 67px;
}

.mw-less {
  max-width: 24em;
}

.mw {
  max-width: 36em;
}

.mw-more {
  max-width: 46em;
}

.cms ul, .cms ol {
  margin-bottom: 1em;
}
.cms ul li, .cms ol li {
  line-height: var(--global-line-height);
  position: relative;
}
.cms ul li {
  padding-left: 26px;
}
.cms ul li::before {
  background: var(--dark-grey);
  border-radius: 50%;
  content: "";
  height: 6px;
  left: 0;
  position: absolute;
  top: calc(var(--global-line-height) / 2);
  transform: translateY(-50%);
  width: 6px;
}
.cms ol {
  counter-reset: counter;
}
.cms ol li {
  padding-left: 23px;
}
.cms ol li::before {
  content: counter(counter) ".";
  counter-increment: counter;
  left: 0;
  position: absolute;
  top: 0;
}
.cms strong {
  color: var(--pink);
  font-weight: 400;
}

.caps {
  text-transform: uppercase;
}

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

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

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

@media all and (min-width: 0) and (max-width: 374px) {
  .mega-title {
    font-size: 42px;
  }
  .huge-title {
    font-size: 30px;
  }
  .big-title {
    font-size: 28px;
  }
  .med-title {
    font-size: 24px;
  }
  .large {
    font-size: 20px;
  }
}
@media all and (min-width: 375px) and (max-width: 767px) {
  .mega-title {
    font-size: 50px;
  }
  .huge-title {
    font-size: 34px;
  }
  .big-title {
    font-size: 32px;
  }
  .med-title {
    font-size: 28px;
  }
  .large {
    font-size: 22px;
  }
}
@media all and (min-width: 768px) {
  .mega-title {
    font-size: 100px;
  }
  .huge-title {
    font-size: 60px;
  }
  .big-title {
    font-size: 50px;
  }
  .med-title {
    font-size: 40px;
  }
  .large {
    font-size: 26px;
  }
}
a img {
  border: 0;
}

img,
video {
  display: block;
}
img.w-100,
video.w-100 {
  height: auto;
}
img.h-100,
video.h-100 {
  width: auto;
}
img.obj-cvr, img.obj-cntn,
video.obj-cvr,
video.obj-cntn {
  height: 100%;
  width: 100%;
}
img.obj-cvr,
video.obj-cvr {
  object-fit: cover;
}
img.obj-cvr.parallax,
video.obj-cvr.parallax {
  bottom: -150px;
  height: calc(100% + 300px);
  top: -150px;
}
img.obj-cntn,
video.obj-cntn {
  object-fit: contain;
}

.iframe-video-wrap::before {
  content: "";
  display: block;
  padding-bottom: 56.25%;
}
.iframe-video-wrap iframe,
.iframe-video-wrap video {
  border: 0;
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}

.grayscale {
  filter: grayscale(100%);
  transition: filter 0.6s;
}
.grayscale:hover {
  filter: none;
}

button,
input:not([type=file]),
select,
textarea {
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
  font-family: inherit;
  font-weight: inherit;
}

button {
  background: none;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  color: inherit;
  cursor: pointer;
  display: inline-flex;
  font-size: inherit;
  text-align: left;
}
button.block, button.flex:not(.inline) {
  width: 100%;
}
button:disabled {
  cursor: default;
}

.field-wrap {
  --pad-x: 1em;
  --pad-y: 0.6em;
  --line-height: 1.4em;
  --border-width: 0.5px;
}
.field-wrap input.text,
.field-wrap select,
.field-wrap textarea {
  background-color: transparent;
  border: var(--border-width) solid var(--dark-grey);
  border-radius: 0;
  color: var(--dark-grey);
  display: block;
  font-size: inherit;
  line-height: var(--line-height);
  padding: calc(var(--pad-y) * 1.5) var(--pad-x) calc(var(--pad-y) / 2);
  width: 100%;
}
.field-wrap input.text,
.field-wrap select {
  height: calc(var(--border-width) * 2 + var(--pad-y) * 2 + var(--line-height));
}
.field-wrap select {
  background-image: url("images/dropdown-arrow.svg");
  background-position: right var(--pad-x) center;
  background-repeat: no-repeat;
}
.field-wrap textarea {
  height: calc(var(--border-width) * 2 + var(--pad-y) * 2 + var(--line-height) * 3);
  resize: none;
}
.field-wrap .placeholder {
  left: var(--pad-x);
  line-height: var(--line-height);
  position: absolute;
  top: calc(var(--border-width) + var(--pad-y));
  transition: 0.1s;
}
.field-wrap.focused .placeholder, .field-wrap.filled .placeholder {
  top: calc(var(--border-width) + var(--pad-y) / 2);
  transform: scale(0.75);
  transform-origin: left top;
}

.footer-subscribe .field-wrap input.text {
  border: 0;
  border-bottom: var(--border-width) solid var(--white);
  color: var(--white);
  font-size: 20px;
  padding-left: 0;
  padding-right: 0;
}
.footer-subscribe .field-wrap .placeholder {
  left: 0;
}

@media all and (min-width: 600px) {
  .about-subscribe .field-wrap {
    margin: 0 15px 0 0;
  }
}
a,
.text-btn {
  color: var(--pink);
  text-decoration: none;
}
a.dark-grey:hover,
.text-btn.dark-grey:hover {
  color: var(--pink);
}
a.light-grey:hover,
.text-btn.light-grey:hover {
  color: var(--pink);
}

a,
button,
.btn {
  transition: color 0.3s, background 0.3s, border-color 0.3s, opacity 0.3s;
}

.cms a:hover {
  color: var(--dark-grey);
}

.btn {
  align-items: center;
  background-position: right center;
  background-size: 200% 100%;
  border-radius: 20px;
  display: inline-flex;
  font-size: 16px;
  font-weight: 700;
  height: 40px;
  justify-content: center;
  letter-spacing: 0.1em;
  min-width: 125px;
  padding: 0 20px;
  position: relative;
  text-align: center;
  text-transform: uppercase;
  z-index: 1;
}
.btn.bdr-dark-grey {
  background-image: linear-gradient(to right, var(--pink) 50%, var(--white) 50%);
  border: 0.5px solid var(--dark-grey);
  color: var(--pink);
}
.btn.bdr-dark-grey:hover {
  background-position: left center;
  border-color: var(--pink);
  color: var(--white);
}
.btn.bdr-white {
  background-image: linear-gradient(to right, var(--pink) 50%, transparent 50%);
  border: 1px solid var(--white);
  color: var(--pink);
}
.btn.bdr-white:hover {
  background-position: left center;
  border-color: var(--pink);
  color: var(--white);
}
.btn.bg-pink {
  background-image: linear-gradient(to right, var(--white) 50%, transparent 50%);
  color: var(--white);
}
.btn.bg-pink.has-hover:hover {
  background-position: left center;
  color: var(--pink);
}

.social-icons a {
  align-items: center;
  display: inline-flex;
  font-size: 0;
  height: 46px;
  width: 46px;
}
.social-icons a::before {
  background: url("images/social-icons.svg") no-repeat;
  content: "";
  height: 26px;
  width: 26px;
}
.social-icons a.instagram:hover::before {
  background-position: 0 -52px;
}
.social-icons a.linkedin::before {
  background-position: 0 -26px;
}
.social-icons a.linkedin:hover::before {
  background-position: 0 -78px;
}

.arrow-link {
  align-items: center;
  display: inline-flex;
}
.arrow-link::after {
  background: url("images/arrow.svg") no-repeat;
  content: "";
  display: block;
  height: 11px;
  margin-left: 1em;
  transition: transform 0.3s;
  width: 47px;
}
#footer-banner:hover .arrow-link::after, .arrow-link:hover::after {
  transform: translateX(5px);
}
.arrow-link.pink::after {
  background-position: 0 -11px;
}
.arrow-link.dark-grey::after {
  background-position: 0 -22px;
}

.arrow-circle {
  background: url("images/arrow-circle.svg") no-repeat;
  height: 38px;
  transform: rotate(180deg);
  transition: none;
  width: 38px;
}
.arrow-circle:hover {
  background-position: 0 -76px;
}

.logo-square img {
  height: 70%;
  left: 50%;
  object-fit: contain;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 70%;
}
.logo-square.link:hover {
  background: var(--pink);
}

.box-link.post-link {
  padding: 20px 20px 40px;
}
.box-link.post-link .small-title,
.box-link.post-link .btn {
  transition: 0.3s;
}
.box-link.post-link:not(:hover) .small-title,
.box-link.post-link:not(:hover) .btn {
  transform: translateY(50%);
}
.box-link.post-link:hover .btn {
  background-position: left center;
}
.box-link.post-link:hover .btn.bdr-dark-grey, .box-link.post-link:hover .btn.bdr-white {
  border-color: var(--pink);
  color: var(--white);
}
.box-link.post-link:hover .btn.bg-pink.has-hover {
  color: var(--pink);
}
.box-link .page-nav-arrow {
  background: url("images/arrow.svg") right -22px no-repeat;
  display: block;
  height: 11px;
  margin-left: 1em;
  transition: 0.3s;
  width: 24px;
}
.box-link .page-nav-arrow.left {
  transform: rotate(180deg);
}
.box-link:hover {
  background: var(--off-white);
}
.box-link:hover .page-nav-arrow {
  width: 47px;
}

.cross {
  border-radius: 50%;
  border-style: solid;
  height: 40px;
  position: absolute;
  width: 40px;
}
.cross::before, .cross::after {
  content: "";
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%) rotate(45deg);
}
.cross::before {
  height: 50%;
}
.cross::after {
  width: 50%;
}
.cross.dark-grey {
  border-color: var(--dark-grey);
  border-width: 0.5px;
}
.cross.dark-grey::before, .cross.dark-grey::after {
  background: var(--dark-grey);
}
.cross.dark-grey::before {
  width: 0.5px;
}
.cross.dark-grey::after {
  height: 0.5px;
}
.cross.pink {
  border-color: var(--pink);
  border-width: 1px;
}
.cross.pink::before, .cross.pink::after {
  background: var(--pink);
}
.cross.pink::before {
  width: 1px;
}
.cross.pink::after {
  height: 1px;
}

@media all and (min-width: 0) and (max-width: 767px) {
  .post {
    border-left: 1.5px solid var(--pink);
    border-right: 1.5px solid var(--pink);
  }
  #page-nav .box-link {
    padding: 40px var(--gutter);
  }
}
@media all and (min-width: 375px) {
  #page-nav .col-6-xxs:first-child {
    border-right: 1.5px solid var(--pink);
  }
}
@media all and (min-width: 768px) {
  #page-nav .box-link {
    padding: 50px 40px;
  }
  .post:nth-child(odd) {
    border-left: 1.5px solid var(--pink);
    border-right: 1.5px solid var(--pink);
  }
  .post:nth-child(even) {
    border-right: 1.5px solid var(--pink);
  }
}
.hidden {
  display: none;
}

.block {
  display: block;
}

.flex {
  display: flex;
}
.flex.inline {
  display: inline-flex;
}

@media all and (min-width: 375px) {
  .hidden-xxs {
    display: none;
  }
  .block-xxs {
    display: block;
  }
  .inline-xxs {
    display: inline;
  }
  .flex-xxs {
    display: flex;
  }
  .flex-xxs.inline {
    display: inline-flex;
  }
}
@media all and (min-width: 600px) {
  .hidden-xs {
    display: none;
  }
  .block-xs {
    display: block;
  }
  .inline-xs {
    display: inline;
  }
  .flex-xs {
    display: flex;
  }
  .flex-xs.inline {
    display: inline-flex;
  }
}
@media all and (min-width: 768px) {
  .hidden-sm {
    display: none;
  }
  .block-sm {
    display: block;
  }
  .inline-sm {
    display: inline;
  }
  .flex-sm {
    display: flex;
  }
  .flex-sm.inline {
    display: inline-flex;
  }
}
@media all and (min-width: 1024px) {
  .hidden-md {
    display: none;
  }
  .block-md {
    display: block;
  }
  .inline-md {
    display: inline;
  }
  .flex-md {
    display: flex;
  }
  .flex-md.inline {
    display: inline-flex;
  }
}
@media all and (min-width: 1260px) {
  .hidden-lg {
    display: none;
  }
  .block-lg {
    display: block;
  }
  .inline-lg {
    display: inline;
  }
  .flex-lg {
    display: flex;
  }
  .flex-lg.inline {
    display: inline-flex;
  }
}
@media all and (min-width: 1420px) {
  .hidden-xl {
    display: none;
  }
  .block-xl {
    display: block;
  }
  .inline-xl {
    display: inline;
  }
  .flex-xl {
    display: flex;
  }
  .flex-xl.inline {
    display: inline-flex;
  }
}
.opc-65 {
  opacity: 0.65;
}

.opc-50 {
  opacity: 0.5;
}

.w-100 {
  width: 100%;
}

.h-100 {
  height: 100%;
}

.abs-box,
.fxd-box {
  bottom: 0;
  left: 0;
  right: 0;
  top: 0;
}

.abs-box {
  position: absolute;
}

.fxd-box {
  position: fixed;
}

.rds-50 {
  border-radius: 50%;
}

.sq-box::before {
  content: "";
  display: block;
  padding-bottom: 100%;
}

.landscape-box::before {
  content: "";
  display: block;
  padding-bottom: 56.25%;
}

.rel {
  position: relative;
}

.z-neg-1 {
  z-index: -1;
}

.z-1 {
  z-index: 1;
}

.z-5 {
  z-index: 5;
}

.z-10 {
  z-index: 10;
}

.over-hide {
  overflow: hidden;
}

.over-auto {
  -webkit-overflow-scrolling: touch;
  overflow: auto;
}

#container {
  display: flex;
  flex-direction: column;
  min-height: 100vh;
  min-width: 320px;
}

#main {
  flex-grow: 1;
}

body.preload #nav-wrap,
body.preload #nav-left,
body.preload #nav-right {
  transition: none;
}

#header {
  padding: var(--header-y-pad) var(--header-x-pad) 0;
}
body.dark-header #header {
  background: var(--dark-grey);
}

#logo,
#nav-btn,
#telephone,
#header-shop-link {
  background-repeat: no-repeat;
  background-size: contain;
  font-size: 0;
}

#logo {
  height: var(--logo-height);
  width: var(--logo-width);
}

#nav-btn,
#telephone {
  border: 10px solid transparent;
  position: fixed;
  z-index: 50;
}

#nav-btn {
  background-image: url("images/menu-icon.svg");
  height: var(--nav-btn-height);
  width: var(--nav-btn-width);
}

#telephone {
  background-image: url("images/telephone.svg");
  height: var(--telephone-height);
  width: var(--telephone-width);
}

#header-shop-link {
  background-image: url("images/basket.svg");
  height: var(--shop-link-height);
  position: fixed;
  width: var(--shop-link-width);
  z-index: 50;
}

#nav-wrap {
  opacity: 0;
  transition: 1s;
  visibility: hidden;
  z-index: 100;
}
#nav-wrap #nav-left {
  transform: translateY(100%);
  transition: transform 1s;
}
#nav-wrap #nav-main-menu,
#nav-wrap #nav-services-menu {
  opacity: 0;
  transition: 0.6s;
}
#nav-wrap #nav-main-menu {
  max-width: 400px;
  transform: translateY(30px);
}
#nav-wrap #nav-main-menu li a {
  align-items: center;
  color: var(--light-grey);
  display: flex;
}
#nav-wrap #nav-main-menu li a::before {
  background: url("images/arrow.svg") 0 -11px no-repeat;
  content: "";
  display: block;
  height: 11px;
  transition: width 0.6s;
  width: 0;
}
#nav-wrap #nav-main-menu li:hover a, #nav-wrap #nav-main-menu li.current a, #nav-wrap #nav-main-menu li.active a {
  color: var(--pink);
}
#nav-wrap #nav-main-menu li:hover a::before, #nav-wrap #nav-main-menu li.current a::before, #nav-wrap #nav-main-menu li.active a::before {
  width: 67px;
}
#nav-wrap #nav-services-menu-wrap:not(.active) {
  opacity: 0;
  visibility: hidden;
  transform: translateX(-100%);
  transition: 0.6s;
}
#nav-wrap #close-services-btn {
  align-items: center;
  display: flex;
  height: 40px;
  left: var(--gutter);
  position: absolute;
  width: 47px;
}
#nav-wrap #close-services-btn::after {
  background: url("images/arrow.svg") no-repeat;
  content: "";
  display: block;
  height: 11px;
  transform: rotate(180deg);
  width: 47px;
}
#nav-wrap #nav-services-menu {
  padding-left: var(--gutter);
  padding-right: var(--gutter);
  transform: translateY(-30px);
  transition-delay: 0.6s;
}
#nav-wrap #nav-services-menu li {
  font-size: 19px;
}
#nav-wrap #nav-services-menu li:not(:last-child) {
  margin-bottom: 1em;
}
#nav-wrap #nav-services-menu li a {
  color: var(--white);
  display: inline-block;
  font-weight: 700;
  letter-spacing: 0.1em;
  line-height: var(--global-line-height);
  position: relative;
  text-transform: uppercase;
}
#nav-wrap #nav-services-menu li a::after {
  background: var(--pink);
  bottom: 0;
  content: "";
  height: 1px;
  left: 0;
  position: absolute;
  right: 0;
  transform: scaleX(0);
  transform-origin: left center;
  transition: transform 0.6s;
}
#nav-wrap #nav-services-menu li:hover a, #nav-wrap #nav-services-menu li.current a {
  color: var(--pink);
}
#nav-wrap #nav-services-menu li:hover a::after, #nav-wrap #nav-services-menu li.current a::after {
  transform: scaleX(1);
}
#nav-wrap.active {
  opacity: 1;
  visibility: visible;
}
#nav-wrap.active #nav-left {
  transform: none;
}
#nav-wrap.active #nav-main-menu,
#nav-wrap.active #nav-services-menu-wrap.active #nav-services-menu {
  opacity: 1;
  transform: none;
}
#nav-wrap.active #nav-main-menu {
  transition-delay: 1s;
}

@media all and (min-width: 0) and (max-width: 767px) {
  #header {
    --header-x-pad: 20px;
    --header-y-pad: 25px;
    --logo-height: 106px;
    --logo-width: 164px;
    --nav-btn-height: 39px;
    --nav-btn-width: 45px;
    --telephone-height: 44px;
    --telephone-width: 38px;
  }
  #logo {
    background-image: url("images/logo-stacked.svg");
  }
  #nav-btn {
    right: calc(var(--gutter) - 10px);
    top: var(--header-y-pad);
  }
  #header-shop-link {
    display: none;
  }
  #telephone {
    left: calc(var(--gutter) - 10px);
    top: var(--header-y-pad);
  }
  #nav-main-menu li {
    font-size: 28px;
  }
}
@media all and (min-width: 0) and (max-width: 1023px) {
  #nav-wrap #close-nav-btn,
  #nav-wrap #close-services-btn {
    top: var(--header-y-pad);
  }
  #nav-wrap #close-nav-btn {
    right: var(--header-x-pad);
  }
  #nav-wrap #nav-left {
    padding-left: calc(var(--gutter) * 2);
    padding-right: var(--gutter);
  }
  #nav-wrap #nav-main-menu li:not(:last-child) {
    margin-bottom: 0.4em;
  }
}
@media all and (min-width: 768px) {
  #header {
    --header-x-pad: 40px;
    --header-y-pad: 40px;
    --logo-height: 103px;
    --logo-width: 375px;
    --nav-btn-height: 49px;
    --nav-btn-width: 65px;
    --telephone-height: 49px;
    --telephone-width: 42px;
    --shop-link-height: 32px;
    --shop-link-width: 40px;
    justify-content: flex-start;
  }
  #logo {
    background-image: url("images/logo.svg");
  }
  #nav-btn,
  #telephone,
  #header-shop-link {
    top: calc(var(--header-y-pad) + var(--logo-height) / 2);
    transform: translateY(-50%);
  }
  #nav-btn {
    right: calc(var(--header-x-pad) - 10px);
  }
  #telephone {
    right: calc(var(--header-x-pad) - 10px + var(--nav-btn-width) + 10px);
  }
  #header-shop-link {
    right: calc(var(--header-x-pad) - 10px + var(--nav-btn-width) + 10px + var(--telephone-width) + 20px);
  }
  #nav-main-menu li {
    font-size: 40px;
  }
}
@media all and (min-width: 1024px) {
  #nav-wrap #close-nav-btn,
  #nav-wrap #close-services-btn {
    top: calc(var(--header-y-pad) + var(--logo-height) / 2);
    transform: translateY(-50%);
  }
  #nav-wrap #close-nav-btn {
    left: var(--header-x-pad);
  }
  #nav-wrap #nav-left {
    right: 50%;
  }
  #nav-wrap #nav-main-menu li a {
    padding-right: var(--gutter);
  }
  #nav-wrap #nav-main-menu li:not(:last-child) a {
    padding-bottom: 0.4em;
  }
  #nav-wrap #nav-right {
    background: var(--black);
    bottom: 0;
    left: 50%;
    overflow: hidden;
    position: fixed;
    right: 0;
    top: 0;
    transform: translateY(-100%);
    transition: transform 1s;
  }
  #nav-wrap #nav-right .nav-right-image {
    transition: opacity 0.6s, visibility 0.6s, transform 1s;
  }
  #nav-wrap #nav-right .nav-right-image:not(.active) {
    opacity: 0;
    visibility: hidden;
  }
  #nav-wrap #nav-right .nav-right-image.active {
    transform: scale(1.05);
  }
  #nav-wrap.active #nav-right {
    transform: none;
  }
}
#footer-banner {
  height: 300px;
  margin-bottom: -15px;
}
#footer-banner #footer-banner-image {
  transition: 0.6s;
}
#footer-banner #footer-banner-image img {
  height: 330px;
  left: 0;
  opacity: 0.65;
  position: absolute;
  top: -15px;
  transition: 0.6s;
}
#footer-banner:hover #footer-banner-image {
  bottom: 15px;
  top: 15px;
}
#footer-banner:hover #footer-banner-image img {
  opacity: 0.35;
  top: -30px;
}
#footer-banner:hover .arrow-link {
  color: var(--pink);
}
#footer-banner:hover .arrow-link::after {
  background-position: 0 -11px;
}

#footer-main a {
  color: var(--white);
}
#footer-main a:hover {
  color: var(--pink);
}
#footer-main a.pink {
  color: var(--pink);
}
#footer-main a.pink:hover {
  color: var(--white);
}

#logo-footer {
  background: url("images/marque.svg") no-repeat;
  background-size: 100% 200%;
  font-size: 0;
  height: var(--size);
  width: var(--size);
}

#footer-legal-menu li {
  line-height: var(--global-line-height);
}

@media all and (min-width: 0) and (max-width: 767px) {
  #footer-main {
    padding: 75px 0 40px;
  }
  #logo-footer {
    --size: 105px;
  }
}
@media all and (min-width: 768px) {
  #footer-main {
    padding: 135px 0 100px;
  }
  #logo-footer {
    --size: 159px;
  }
}
@media all and (min-width: 1024px) {
  #footer-main .col-4-md:nth-child(1), #footer-main .col-4-md:nth-child(3) {
    grid-row: span 2;
  }
}
.fx.fade-in {
  opacity: 0;
  transition: opacity 1s;
}
.fx.fade-in.animated {
  opacity: 1;
}
.fx.fade-in.roll-up, .fx.fade-in.roll-right, .fx.fade-in.roll-left {
  transition: opacity 1s, transform 1s;
}
.fx.fade-in.roll-up.animated, .fx.fade-in.roll-right.animated, .fx.fade-in.roll-left.animated {
  transform: translateZ(0);
}
.fx.fade-in.roll-up {
  transform: translateY(30px);
}
.fx.fade-in.roll-right {
  transform: translateX(-30px);
}
.fx.fade-in.roll-left {
  transform: translateX(30px);
}
.fx.fade-in-scroll {
  opacity: 0;
}

.fade {
  transition: 0.3s;
}
.fade.slow {
  transition: 0.6s;
}

.invis {
  opacity: 0;
  visibility: hidden;
}

.anim-height {
  height: 0;
  overflow: hidden;
  transition: height 0.3s;
}
.anim-height.default-open {
  height: auto;
}

@keyframes scroll-prompt {
  0% {
    transform: scaleY(0);
  }
  50% {
    transform: scaleY(1);
  }
}
.tab-btn {
  height: 80px;
  padding: 0 30px;
}
.tab-btn:first-child {
  border-right: 2px solid var(--pink);
}
.tab-btn.active {
  color: var(--pink);
}

.tab-content:not(.active) {
  display: none;
}

.modal-wrap {
  padding: var(--gutter);
  z-index: 1000;
}
.modal-wrap .modal {
  max-height: 100%;
}
.modal-wrap .cross {
  right: 20px;
  top: 20px;
}
.modal-wrap .marque {
  background: url("images/marque.svg") no-repeat;
  background-size: 100% 200%;
  height: 93px;
  width: 105px;
}

@media all and (min-width: 0) and (max-width: 767px) {
  .modal {
    padding: 78px var(--gutter) 40px;
  }
}
@media all and (min-width: 768px) {
  .modal {
    padding: 100px var(--gutter);
  }
}
.crsl-wrap {
  position: relative;
}
.crsl-wrap .crsl {
  -ms-user-select: none;
  -webkit-user-select: none;
  user-select: none;
}
.crsl-wrap .crsl-cell img {
  pointer-events: none;
}
.crsl-wrap.slide {
  --gap: 0px;
  --per-view: 1;
}
.crsl-wrap.slide .crsl {
  display: flex;
  transition-property: transform;
}
.crsl-wrap.slide .crsl.interactive {
  cursor: grab;
}
.crsl-wrap.slide .crsl.interactive.pointer-down {
  cursor: grabbing;
}
.crsl-wrap.dissolve .crsl {
  display: grid;
}
.crsl-wrap.dissolve .crsl-cell {
  grid-column: 1;
  grid-row: 1;
  opacity: 0;
  transition: opacity 0.6s, visibility 0.6s;
  visibility: hidden;
}
.crsl-wrap.dissolve .crsl-cell.active {
  opacity: 1;
  visibility: visible;
}
.crsl-wrap .crsl-arw {
  background: url("images/arrow-circle.svg") no-repeat;
  height: 38px;
  transition: none;
  width: 38px;
}
.crsl-wrap .crsl-arw:disabled {
  opacity: 0.3;
}
.crsl-wrap .crsl-arw.light {
  background-position: 0 -38px;
}
.crsl-wrap .crsl-arw.light:not(:disabled):hover {
  background-position: 0 -76px;
}
.crsl-wrap .crsl-arw.dark:not(:disabled):hover {
  background-position: 0 -76px;
}
.crsl-wrap .crsl-arw.next {
  transform: rotate(180deg);
}
.crsl-wrap .crsl-dots .dot {
  border: 1px solid var(--white);
  border-radius: 50%;
  height: 12px;
  width: 12px;
}
.crsl-wrap .crsl-dots .dot:not(:last-child) {
  margin-right: 5px;
}
.crsl-wrap .crsl-dots .dot.active {
  background: var(--white);
}
.crsl-wrap.gallery-crsl .crsl-arws {
  position: absolute;
  z-index: 5;
}
.crsl-wrap.gallery-crsl .gallery-right {
  padding: 25px;
}
.crsl-wrap.news-crsl .crsl-cell {
  border-right: 1.5px solid var(--pink);
}
.crsl-wrap.news-crsl .crsl-cell:first-child {
  border-left: 1.5px solid var(--pink);
}

@media all and (min-width: 0) and (max-width: 767px) {
  .crsl-wrap.gallery-crsl {
    padding-bottom: 53px;
  }
  .crsl-wrap.gallery-crsl .crsl-arws {
    bottom: 20px;
    left: 20px;
  }
  .crsl-wrap.news-crsl .crsl-cell {
    padding: 30px 20px;
    flex: 0 0 90%;
  }
}
@media all and (min-width: 768px) {
  .crsl-wrap.gallery-crsl .gallery-title {
    left: calc(66.666% + 25px);
    position: absolute;
    top: 30px;
    z-index: 5;
  }
  .crsl-wrap.gallery-crsl .crsl-arws {
    bottom: 30px;
    left: calc(66.666% + 25px);
  }
  .crsl-wrap.news-crsl .crsl-cell {
    flex: 0 0 50%;
    min-width: 900px;
    padding: 40px;
  }
  .crsl-wrap.news-crsl .crsl-cell .news-crsl-text {
    left: 0;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    transition: 0.6s;
  }
  .crsl-wrap.news-crsl .crsl-cell .btn {
    opacity: 0;
    bottom: 0;
    left: 0;
    position: absolute;
  }
  .crsl-wrap.news-crsl .crsl-cell:hover .news-crsl-text {
    top: 0;
    transform: translateY(0);
  }
  .crsl-wrap.news-crsl .crsl-cell:hover .btn {
    opacity: 1;
    transition-delay: 0.3s;
  }
}
#hero-wrap.two-line-title .mega-title {
  margin-bottom: -1.8em;
}
#hero-wrap:not(.two-line-title) .mega-title {
  margin-bottom: -0.6em;
}

#hero-line {
  left: 50%;
  position: absolute;
  width: 1px;
  z-index: 5;
}
#hero-line.mini {
  height: 50px;
  top: -25px;
}

@media all and (min-width: 0) and (max-width: 767px) {
  .landscape-box.taller::before {
    padding-bottom: 75%;
  }
  #hero-wrap {
    margin-bottom: 100px;
    padding-top: 40px;
  }
  #hero-line.bottom {
    bottom: -60px;
  }
  #hero-wrap:not(.two-line-title) #hero-line.bottom {
    top: 100px;
  }
  #hero-wrap.two-line-title #hero-line.bottom {
    top: 200px;
  }
  #hero-line.top {
    height: 80px;
    top: -40px;
  }
}
@media all and (min-width: 768px) {
  #hero-wrap {
    margin-bottom: 140px;
    padding-top: 60px;
  }
  #hero-line.bottom {
    bottom: -100px;
  }
  #hero-wrap:not(.two-line-title) #hero-line.bottom {
    top: 100px;
  }
  #hero-wrap.two-line-title #hero-line.bottom {
    top: 200px;
  }
  #hero-line.top {
    height: 160px;
    top: -80px;
  }
}
.sticky-hero-wrap {
  height: 150vh;
}
.sticky-hero-wrap .sticky-hero-image {
  height: 66.666%;
  position: -webkit-sticky;
  position: sticky;
  top: 0;
}
.sticky-hero-wrap .sticky-hero-border {
  --width: 60px;
  border-color: var(--white);
  border-style: solid;
  border-width: var(--width);
}

.addthis_inline_share_toolbox {
  --size: 38px;
}
.addthis_inline_share_toolbox a {
  align-items: center !important;
  background: none !important;
  border: 1px solid var(--dark-grey) !important;
  border-radius: 50% !important;
  display: inline-flex !important;
  font-size: 0 !important;
  height: var(--size) !important;
  justify-content: center !important;
  margin: 0 10px 0 0 !important;
  padding: 0 !important;
  transform: none !important;
  transition: background 0.3s !important;
  width: var(--size) !important;
}
.addthis_inline_share_toolbox a span {
  display: none !important;
}
.addthis_inline_share_toolbox a::before {
  --icon-size: 21px;
  background: url("images/share-icons.svg") no-repeat;
  content: "";
  display: block;
  height: var(--icon-size);
  width: var(--icon-size);
}
.addthis_inline_share_toolbox a.at-svc-twitter:hover::before {
  background-position: 0 calc(-1 * 4 * var(--icon-size));
}
.addthis_inline_share_toolbox a.at-svc-linkedin::before {
  background-position: 0 calc(-1 * 1 * var(--icon-size));
}
.addthis_inline_share_toolbox a.at-svc-linkedin:hover::before {
  background-position: 0 calc(-1 * 5 * var(--icon-size));
}
.addthis_inline_share_toolbox a.at-svc-facebook::before {
  background-position: 0 calc(-1 * 2 * var(--icon-size));
}
.addthis_inline_share_toolbox a.at-svc-facebook:hover::before {
  background-position: 0 calc(-1 * 6 * var(--icon-size));
}
.addthis_inline_share_toolbox a.at-svc-email::before {
  background-position: 0 calc(-1 * 3 * var(--icon-size));
}
.addthis_inline_share_toolbox a.at-svc-email:hover::before {
  background-position: 0 calc(-1 * 7 * var(--icon-size));
}
.addthis_inline_share_toolbox a:hover {
  background: var(--pink) !important;
  border-color: var(--pink) !important;
}

.full-height {
  min-height: 85vh;
}

body.home #header {
  height: 0;
  padding: 0;
}
body.home #logo {
  display: none;
}

#logo-stacked {
  background: url("images/logo-stacked.svg") no-repeat;
  background-size: contain;
  height: var(--height);
  width: var(--width);
}

#home-scroll-btn {
  width: 50px;
}
#home-scroll-btn::after {
  animation: scroll-prompt forwards infinite 4s ease-out;
  background: var(--pink);
  content: "";
  height: 50px;
  margin: auto;
  transform-origin: center top;
  width: 1px;
}

#home-services-text .marque {
  background: url("images/marque.svg") no-repeat;
  background-size: 100% 200%;
  bottom: calc(-1 * var(--size) * 0.15);
  height: var(--size);
  opacity: 0.1;
  position: absolute;
  right: calc(-1 * var(--size) * 0.18);
  width: var(--size);
  z-index: -1;
}

#home-clients {
  z-index: 1;
}
#home-clients::before {
  background: var(--off-whiter);
  content: "";
  position: absolute;
  top: 0;
  z-index: -1;
}

@media all and (min-width: 0) and (max-width: 767px) {
  #home-hero-text {
    padding: 30px 20px 0;
  }
  #home-services-text {
    padding: 30px 20px;
  }
  #home-services-text .marque {
    --size: 300px;
  }
  #logo-stacked {
    --height: 105px;
    --width: 164px;
  }
  #home-clients::before {
    bottom: 25%;
    left: calc(-1 * var(--gutter));
    right: calc(-1 * var(--gutter));
  }
}
@media all and (min-width: 0) and (max-width: 1259px) {
  .home-section:not(#home-hero-text) {
    position: relative;
  }
  #home-services-text,
  #home-services-media {
    height: 100vh;
  }
  #home-hero-media {
    min-height: 0;
  }
  #home-hero-media::before {
    content: "";
    display: block;
    padding-bottom: 56.25%;
  }
  #home-services-text {
    background: var(--black);
  }
  #home-services-text .caps-title,
  #home-services-text .home-service-title,
  #home-services-text .home-service-link {
    color: var(--white);
  }
  #home-services-text .home-service-link:hover {
    color: var(--pink);
  }
}
@media all and (min-width: 768px) {
  #home-hero-text {
    padding: 60px 60px 0;
  }
  #home-services-text {
    padding: 60px;
  }
  #logo-stacked {
    --height: 169px;
    --width: 263px;
  }
  #home-clients::before {
    bottom: 0;
    left: 25%;
    right: -9999px;
  }
}
@media all and (min-width: 600px) {
  .home-service-title a::before {
    background: url("images/arrow.svg") 0 -11px no-repeat;
    content: "";
    display: block;
    height: 11px;
    transition: width 0.6s;
    width: 0;
  }
  .home-service-title a:hover::before {
    width: 67px;
  }
}
@media all and (min-width: 1260px) {
  #home-hero-wrap {
    height: 200vh;
  }
  #home-hero-wrap.scroll #home-hero-text {
    transform: translateY(-100%);
  }
  #home-hero-wrap.scroll #home-hero-media {
    transform: translateY(100%);
  }
  #home-hero-wrap:not(.scroll) #home-services-text {
    opacity: 0;
    visibility: hidden;
  }
  .home-section {
    height: 100vh;
    position: fixed;
    top: 0;
    width: 50%;
  }
  #home-hero-text,
  #home-hero-media {
    transition: transform 2s;
  }
  #home-hero-text,
  #home-services-media {
    left: 0;
  }
  #home-hero-media,
  #home-services-text {
    left: 50%;
  }
  #home-services-text {
    background: var(--white);
    transition: 0.3s;
  }
  #home-services-text .caps-title,
  #home-services-text .home-service-title {
    color: var(--med-grey);
  }
  #home-services-text .home-service-link {
    color: var(--light-grey);
  }
  #home-services-text .home-service-link:hover {
    color: var(--pink);
  }
  #home-services-text .marque {
    --size: 600px;
  }
  .home-service-image:not(.active) {
    opacity: 0;
    visibility: hidden;
  }
  .home-service-image.active {
    transform: scale(1.05);
  }
}
#team-wrap .marque {
  background: url("images/marque.svg") no-repeat;
  background-position: 0 calc(-1 * var(--size));
  background-size: 100% 200%;
  bottom: calc(-1 * var(--size) * 0.12);
  height: var(--size);
  opacity: 0.05;
  position: absolute;
  right: calc(-1 * var(--size) * 0.12);
  width: var(--size);
  z-index: -1;
}
#team-wrap .mega-title {
  margin-top: calc(-1 * (0.6em + 10px));
}

#team-members {
  margin-left: calc(-1 * var(--gap));
  margin-right: calc(-1 * var(--gap));
}
#team-members .team-link {
  cursor: pointer;
  margin-bottom: 80px;
  margin-left: var(--gap);
  margin-right: var(--gap);
  max-width: 240px;
}
#team-members .team-link:hover img {
  filter: none;
}
#team-members .team-link .team-image img {
  border: 1.5px solid var(--pink);
}

@media all and (min-width: 0) and (max-width: 599px) {
  #team-members {
    --gap: 20px;
  }
  #team-members .team-link {
    flex-basis: 100%;
  }
}
@media all and (min-width: 0) and (max-width: 767px) {
  #team-wrap {
    margin-top: 100px;
  }
  #team-wrap .marque {
    --size: 400px;
  }
}
@media all and (min-width: 600px) and (max-width: 767px) {
  #team-members .team-link {
    flex-basis: 50%;
  }
}
@media all and (min-width: 600px) {
  #team-members {
    --gap: 30px;
  }
}
@media all and (min-width: 768px) {
  #team-wrap {
    margin-top: 140px;
  }
  #team-wrap .marque {
    --size: 800px;
  }
  #team-wrap .team-link {
    flex-basis: 33.333%;
  }
}
.image-grid {
  align-items: end;
  display: grid;
  row-gap: 15px;
}
.image-grid.small-image {
  position: relative;
}
.image-grid.small-image::before {
  background: var(--off-whiter);
  content: "";
  left: calc(-1 * var(--gutter));
  position: absolute;
  z-index: -1;
}

@media all and (min-width: 0) and (max-width: 767px) {
  .image-grid.small-image::before {
    bottom: -40px;
    right: 40px;
    top: -40px;
  }
}
@media all and (min-width: 768px) {
  .content-indent {
    margin-left: 20%;
  }
  .content-indent.has-border::before {
    border-left: 1.5px solid var(--pink);
    content: "";
    left: -21.5px;
    position: absolute;
  }
  .content-indent.has-border.top::before {
    bottom: 0;
    top: -80px;
  }
  .content-indent.has-border.bottom::before {
    bottom: -80px;
    top: 0;
  }
  .image-grid {
    grid-template-columns: repeat(5, 1fr);
  }
  .image-grid.big-image .image {
    grid-column: span 4;
    order: 2;
  }
  .image-grid.big-image .image-caption {
    padding-right: 20px;
    text-align: right;
  }
  .image-grid.small-image::before {
    bottom: -140px;
    right: calc(40% - 140px);
    top: -140px;
  }
  .image-grid.small-image .image {
    grid-column: span 3;
  }
  .image-grid.small-image .image-caption {
    padding-left: 20px;
  }
}
.google-map {
  height: 50vh;
  max-height: 400px;
}

#map-wrap {
  z-index: 1;
}
#map-wrap::before {
  background: var(--off-whiter);
  bottom: 0;
  content: "";
  left: calc(-1 * var(--gutter));
  position: absolute;
  top: 0;
  z-index: -1;
}

@media all and (min-width: 0) and (max-width: 767px) {
  #map-wrap {
    padding-bottom: 60px;
    padding-top: 60px;
  }
  #map-wrap::before {
    right: 0;
  }
}
@media all and (min-width: 768px) {
  #map-wrap {
    padding-bottom: 140px;
    padding-top: 140px;
  }
  #map-wrap::before {
    right: 33.333%;
  }
}