/*! https://piccalil.li/blog/a-more-modern-css-reset/ */
/* Box sizing rules */
*,
*::before,
*::after {
  box-sizing: border-box;
}

/* Prevent font size inflation */
html {
  -moz-text-size-adjust: none;
  -webkit-text-size-adjust: none;
  text-size-adjust: none;
}

/* Remove default margin in favour of better control in authored CSS */
body, h1, h2, h3, h4, p,
figure, blockquote, dl, dd {
  margin-block-end: 0;
}

/* Remove list styles on ul, ol elements with a list role, which suggests default styling will be removed */
ul[role=list],
ol[role=list] {
  list-style: none;
}

/* Set core body defaults */
body {
  min-height: 100vh;
  line-height: 1.5;
}

/* Set shorter line heights on headings and interactive elements */
h1, h2, h3, h4,
button, input, label {
  line-height: 1.1;
}

/* Balance text wrapping on headings */
h1, h2,
h3, h4 {
  text-wrap: balance;
}

/* A elements that don't have a class get default styles */
a:not([class]) {
  text-decoration-skip-ink: auto;
  color: currentColor;
}

/* Make images easier to work with */
img,
picture {
  max-width: 100%;
  display: block;
}

/* Inherit fonts for inputs and buttons */
input, button,
textarea, select {
  font-family: inherit;
  font-size: inherit;
}

/* Make sure textareas without a rows attribute are not tiny */
textarea:not([rows]) {
  min-height: 10em;
}

/* Anything that has been anchored to should have extra scroll margin */
:target {
  scroll-margin-block: 5ex;
}

@font-face {
  font-family: "Canela Web";
  src: url(/app_assets/Canela-MediumItalic-Web-31b6e3942fad3ee9e849e54ca3659ea0ed766dc7fdbb246710236502c416ac48.woff2) format("woff2"), url(/app_assets/Canela-MediumItalic-Web-3d3a30d52a99efee316acc601bc0e0563a0cfde1f424fade357b23d3f8025c4d.woff) format("woff");
  font-weight: 500;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: "Canela Web";
  src: url(/app_assets/Canela-Medium-Web-75443eae982321b648cfa7e8148c1d443253a5f6376a5dbea1299e7429117228.woff2) format("woff2"), url(/app_assets/Canela-Medium-Web-c715f7829a479779e5a361767570bd8b9b566bcaa0c72a520e0c07cfd1e84023.woff) format("woff");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Canela Web";
  src: url(/app_assets/Canela-RegularItalic-Web-2b5828ee076a46c401c23d494d27a0441c83483e20ffcf7ff1f9fe6209340eb8.woff2) format("woff2"), url(/app_assets/Canela-RegularItalic-Web-2311c2f05f72c21ae9ce6575777ccb8735f277b0c7e0f0826921865d431605c2.woff) format("woff");
  font-weight: 400;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: "Canela Web";
  src: url(/app_assets/Canela-LightItalic-Web-dec8e131f495f3342d87ff3227e009be408a6460ffa9867c07340e25388ccb2e.woff2) format("woff2"), url(/app_assets/Canela-LightItalic-Web-322a5117b1fd60a7257db072ceb3e6d075771f1687e1c8076b0376a75bcc3830.woff) format("woff");
  font-weight: 300;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: "Canela Web";
  src: url(/app_assets/Canela-Light-Web-8d6c0b024ea5da5223a450d04e8d60d7c99d34b1f8a96fd5da53105408dbd4d8.woff2) format("woff2"), url(/app_assets/Canela-Light-Web-200ffe60053f299cff9dadd73301f8cd709264947d14eec0f0a0be61e6c4603d.woff) format("woff");
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Druk Web";
  src: url(/app_assets/Druk-Medium-Web-8e0d7d5e7ab400e71002bb0492ec905d269bf462709479aca557beab397f3df2.woff2) format("woff2"), url(/app_assets/Druk-Medium-Web-59be737adc742b491d45f713fb7f60f44f799ac7071fb5728ea3d8b887f40611.woff) format("woff");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Canela Web";
  src: url(/app_assets/Canela-Regular-Web-e05a305a4e35544cb8e221155e471369d01e44c284614137a9c85b5656b0c924.woff2) format("woff2"), url(/app_assets/Canela-Regular-Web-ff12e8dfee4aba4d6d25e83a456d31ceff590b19fc410a2ee487c20df8f1f545.woff) format("woff");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
html {
  font-family: "Canela Web", sans-serif;
  font-weight: 300;
  font-style: normal;
}

body {
  font-size: 1em;
  line-height: 1.6875;
}

h1, .h1, h2, .h2, h3, .h3, h4, .h4 {
  font-family: "Druk Web", sans-serif;
  font-weight: 500;
  font-style: normal;
  text-transform: uppercase;
  grid-column: 1/-1;
  margin: 0;
}

h5, .h5 {
  font-family: "Canela Web", sans-serif;
  font-weight: 500;
  font-style: normal;
}

h1, .h1 {
  font-size: 2.625em;
  line-height: 1.0952380952;
  letter-spacing: 0.0238095238em;
  margin: 1.1428571429em 0 0.9523809524em;
}
h1.large, .h1.large {
  font-size: 3.75em;
  line-height: 0.8666666667;
  letter-spacing: 0.0166666667em;
  margin: 0 0 0.4em;
}

h2, .h2 {
  font-size: 2.25em;
  line-height: 1.1944444444;
  letter-spacing: 0.0277777778em;
  margin: 1.1111111111em 0 0.6666666667em;
}
h2.extra_large, .h2.extra_large {
  font-size: 3.75em;
  line-height: 0.8666666667;
  letter-spacing: 0.0166666667em;
  margin: 0 0 0.4em;
}

h3, .h3 {
  font-size: 1.875em;
  line-height: 1.3;
  letter-spacing: 0.0083333333em;
  margin: 1.3333333333em 0 0.5333333333em;
}

h4, .h4 {
  font-size: 1.5em;
  line-height: 1.2916666667;
  letter-spacing: 0.0104166667em;
  margin: 0 0 0.6666666667em;
}

h5, .h5 {
  font-size: 1.125em;
  line-height: 1.3888888889;
  margin: 0 0 0.8888888889em;
}

p {
  margin: 0 0 1.5em;
  grid-column: 1/-1;
}
p.intro {
  font-family: "Canela Web", sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 1.125em;
  line-height: 1.7222222222;
  margin: 0 0 1.3333333333em;
}
p.medium {
  font-size: 1.25em;
  line-height: 1.4;
  margin: 0 0 1.2em;
}
p.large {
  font-size: 1.375em;
  line-height: 1.4545454545;
  margin: 0 0 1.0909090909em;
}

li p {
  margin: 0 0 1em;
}

@media screen and (min-width: 601px) {
  h1.large, .h1.large {
    font-size: 5em;
    line-height: 0.875;
    letter-spacing: 0.0125em;
    margin: 0 0 0.3em;
  }
  h2.extra_large, .h2.extra_large {
    font-size: 5.9375em;
    line-height: 0.8736842105;
    letter-spacing: 0.0105263158em;
    margin: 0 0 0.2526315789em;
  }
  p.large {
    font-size: 1.5em;
    line-height: 1.5;
    margin: 0 0 1em;
  }
}
@media screen and (min-width: 769px) {
  h1, .h1 {
    font-size: 3.3125em;
    line-height: 1.0943396226;
    letter-spacing: 0.0188679245em;
    margin: 1.0566037736em 0 0.9056603774em;
  }
  h1.large, .h1.large {
    font-size: 6.875em;
    line-height: 0.8636363636;
    letter-spacing: 0.0090909091em;
    margin: 0 0 0.2545454545em;
  }
  h2, .h2 {
    font-size: 2.625em;
    line-height: 1.1904761905;
    letter-spacing: 0.0238095238em;
    margin: 1.1428571429em 0 0.5714285714em;
  }
  h2.extra_large, .h2.extra_large {
    font-size: 6.875em;
    line-height: 0.8636363636;
    letter-spacing: 0.0090909091em;
    margin: 0 0 0.2545454545em;
  }
  h3, .h3 {
    font-size: 2.125em;
    line-height: 1.2941176471;
    letter-spacing: 0.0147058824em;
    margin: 1.2941176471em 0 0.5294117647em;
  }
  h4, .h4 {
    font-size: 1.625em;
    line-height: 1.3076923077;
    letter-spacing: 0.0192307692em;
    margin: 1.2307692308em 0 0.6923076923em;
  }
  h5, .h5 {
    font-size: 1.375em;
    line-height: 1.4090909091;
    margin: 0 0 0.8181818182em;
  }
  p {
    font-size: 1.25em;
    line-height: 1.7;
    margin: 0 0 1.4em;
  }
  p.intro {
    font-size: 1.375em;
    line-height: 1.6818181818;
    margin: 0 0 1.2727272727em;
  }
  p.medium {
    font-size: 1.625em;
    line-height: 1.3846153846;
    margin: 0 0 1.0769230769em;
  }
  p.large {
    font-size: 2.25em;
    line-height: 1.2777777778;
    margin: 0 0 0.7777777778em;
  }
  li p {
    margin: 0 0 1em;
  }
}
@media screen and (min-width: 1025px) {
  h1, .h1 {
    font-size: 4.8125em;
    line-height: 1.1038961039;
    letter-spacing: 0.025974026em;
    margin: 0.9350649351em 0 0.8311688312em;
  }
  h1.large, .h1.large {
    font-size: 8.125em;
    line-height: 0.8461538462;
    letter-spacing: 0.0076923077em;
    margin: 0 0 0.2461538462em;
  }
  h2, .h2 {
    font-size: 3.375em;
    line-height: 1.2037037037;
    letter-spacing: 0.037037037em;
    margin: 1.037037037em 0 0.4444444444em;
  }
  h2.extra_large, .h2.extra_large {
    font-size: 8.125em;
    line-height: 0.8461538462;
    letter-spacing: 0.0076923077em;
    margin: 0 0 0.2461538462em;
  }
  h3, .h3 {
    font-size: 2.25em;
    line-height: 1.3055555556;
    letter-spacing: 0.0138888889em;
    margin: 1.3333333333em 0 0.5555555556em;
  }
  h4, .h4 {
    font-size: 1.75em;
    line-height: 1.2857142857;
    letter-spacing: 0.0089285714em;
    margin: 1.1428571429em 0 0.7142857143em;
  }
  h5, .h5 {
    font-size: 1.625em;
    line-height: 1.3846153846;
    margin: 0 0 0.7692307692em;
  }
  p {
    font-size: 1.5em;
    line-height: 1.7083333333;
    margin: 0 0 1.3333333333em;
  }
  p.intro {
    font-size: 1.625em;
    line-height: 1.6923076923;
    margin: 0 0 1.2307692308em;
  }
  p.medium {
    font-size: 1.875em;
    line-height: 1.6;
    margin: 0 0 1.0666666667em;
  }
  p.large {
    font-size: 2.875em;
    line-height: 1.2173913043;
    margin: 0 0 0.6956521739em;
  }
  li p {
    margin: 0 0 1em;
  }
}
@media screen and (min-width: 1281px) {
  h1, .h1 {
    font-size: 6.125em;
    line-height: 1.1020408163;
    letter-spacing: 0.0204081633em;
    margin: 0.8979591837em 0 0.7346938776em;
  }
  h1.large, .h1.large {
    font-size: 10em;
    line-height: 0.8125;
    letter-spacing: 0.00625em;
    margin: 0 0 0.2em;
  }
  h2, .h2 {
    font-size: 4.25em;
    line-height: 1.2058823529;
    letter-spacing: 0.0294117647em;
    margin: 0.9411764706em 0 0.4705882353em;
  }
  h2.extra_large, .h2.extra_large {
    font-size: 10em;
    line-height: 0.8125;
    letter-spacing: 0.00625em;
    margin: 0 0 0.2em;
  }
  h2.large, .h2.large {
    font-size: 7.5em;
    line-height: 1.1;
    letter-spacing: 0.0083333333em;
    margin: 0.5333333333em 0 0.2666666667em;
  }
  h3, .h3 {
    font-size: 2.375em;
    line-height: 1.2894736842;
    letter-spacing: 0.0131578947em;
    margin: 1.4736842105em 0 0.6315789474em;
  }
  h4, .h4 {
    margin: 1.4285714286em 0 0.8571428571em;
  }
  p.large {
    font-size: 3.625em;
    line-height: 1.1379310345;
    margin: 0 0 0.5517241379em;
  }
}
@media screen and (min-width: 1441px) {
  h1, .h1 {
    font-size: 6.875em;
    line-height: 1.1;
    letter-spacing: 0.0181818182em;
    margin: 0.8em 0 0.6545454545em;
  }
}
a {
  color: #1D1D1D;
  text-decoration: none;
  transition-duration: 200ms;
  border-bottom: 2px solid #1D1D1D;
  transition-property: border, color;
}

@media screen and (min-width: 769px) {
  a:hover, a:focus {
    border-color: transparent;
    outline-color: currentColor;
  }
}
.button {
  font-family: "Druk Web", sans-serif;
  font-weight: 500;
  font-style: normal;
  font-size: 1.25em;
  line-height: 1.2;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  background-color: #FF844D;
  border: 2px solid #FF844D;
  border-radius: 2px;
  color: #1D1D1D;
  cursor: pointer;
  display: inline-block;
  margin: 0;
  padding: 0.8em 0.9em;
  transition-duration: 200ms;
  transition-property: color, background-color, border;
  width: 100%;
  text-align: center;
}
.button.secondary {
  background-color: transparent;
  border-color: #FF844D;
  color: #FF844D;
}
.button.tertiary {
  background-color: transparent;
  border-color: #1D1D1D;
  color: #1D1D1D;
}

@media screen and (min-width: 481px) {
  .button {
    width: auto;
  }
}
@media screen and (min-width: 769px) {
  .button {
    padding: 0.8em 1em;
  }
  .button:hover, .button:focus {
    background-color: #1D1D1D;
    border-color: #1D1D1D;
    color: #FF844D;
  }
  .button.secondary:hover, .button.secondary:focus {
    border-color: #FF844D;
    color: #FF844D;
  }
  .button.tertiary:hover, .button.tertiary:focus {
    background-color: #1D1D1D;
    color: #FF844D;
  }
}
@media screen and (min-width: 1025px) {
  .button {
    font-size: 1.375em;
    line-height: 1.1818181818;
    padding: 0.75em 1.0909090909em;
  }
}
@media screen and (min-width: 1281px) {
  .button {
    font-size: 1.5em;
    line-height: 1.2083333333;
    padding: 0.6458333333em 1em;
  }
}
.wrapper {
  margin: 0 auto;
  max-width: 1400px;
  display: grid;
}
@media screen and (min-width: 0px) {
  .wrapper {
    width: 88%;
    grid-template-columns: repeat(4, 1fr);
    column-gap: 23px;
  }
}
@media screen and (min-width: 481px) {
  .wrapper {
    width: 78%;
    grid-template-columns: repeat(6, 1fr);
    column-gap: 18px;
  }
}
@media screen and (min-width: 601px) {
  .wrapper {
    width: 78%;
    grid-template-columns: repeat(6, 1fr);
    column-gap: 23px;
  }
}
@media screen and (min-width: 769px) {
  .wrapper {
    width: 88%;
    grid-template-columns: repeat(12, 1fr);
    column-gap: 15px;
  }
}
@media screen and (min-width: 1025px) {
  .wrapper {
    width: 88%;
    grid-template-columns: repeat(12, 1fr);
    column-gap: 26px;
  }
}
@media screen and (min-width: 1281px) {
  .wrapper {
    width: 88%;
    grid-template-columns: repeat(12, 1fr);
    column-gap: 31px;
  }
}
@media screen and (min-width: 1441px) {
  .wrapper {
    width: 72%;
    grid-template-columns: repeat(12, 1fr);
    column-gap: 24px;
  }
}

.hide {
  height: 0;
  overflow: hidden;
  position: absolute;
  text-indent: -9999px;
  width: 0;
}

.big_link {
  position: absolute;
  top: 0;
  left: 0;
  text-indent: -9999px;
  width: 100%;
  height: 100%;
  border-bottom: 0;
  z-index: 10;
}

.margin_large {
  margin-top: 4.5em;
}

.text_column, .large_column, .full_column {
  grid-column: 1/-1;
  margin: 0 auto;
  display: grid;
  grid-template-columns: subgrid;
  width: 100%;
}

@media screen and (min-width: 769px) {
  .margin_large {
    margin-top: 5.5em;
  }
  .text_column {
    grid-column: 3/-3;
  }
  .large_column {
    grid-column: 2/-2;
  }
}
@media screen and (min-width: 1025px) {
  .margin_large {
    margin-top: 6.5em;
  }
}
@media screen and (min-width: 1281px) {
  .margin_large {
    margin-top: 7.5em;
  }
}
