/*!*********************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[2].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[2].use[2]!./src/css/base/typography.css ***!
  \*********************************************************************************************************************************************************************************/
/* Krana Fat A */
@font-face {
    font-family: 'Krana Fat A';
    src: url(fonts/KranaFat-A.b7f55b5b.woff2) format('woff2'),
         url(fonts/KranaFat-A.e24798d9.woff) format('woff');
    font-weight: 900;
    font-style: normal;
    font-display: swap;
}

/* Pacaembu */
@font-face {
    font-family: 'Pacaembu';
    src: url(fonts/Pacaembu-Regular.db202247.woff2) format('woff2'),
         url(fonts/Pacaembu-Regular.24ecfe4d.woff) format('woff');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Pacaembu';
    src: url(fonts/Pacaembu-Bold.9fa06f04.woff2) format('woff2'),
         url(fonts/Pacaembu-Bold.dbfb3226.woff) format('woff');
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Pacaembu';
    src: url(fonts/Pacaembu-Ultra.af85c17e.woff2) format('woff2'),
         url(fonts/Pacaembu-Ultra.9b9441f6.woff) format('woff');
    font-weight: 900;
    font-style: normal;
    font-display: swap;
}

/*!*********************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[2].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[2].use[2]!./src/css/components/root.css ***!
  \*********************************************************************************************************************************************************************************/
:host {
    position: relative;
    display: block;
    margin-left: auto;
    margin-right: auto;
    z-index: 1
}

*[hidden] {
    display: none
}

::-moz-selection {
    text-shadow: none;
    background: #c8c8c840
}

::selection {
    text-shadow: none;
    background: #c8c8c840
}

:root {
    --color-primary: #fbf3d3;
    --color-bg: #0240a9;
    --color-error: #d71920;
    --color-media: #4e4e4e;

    /* --color-primary: #12B7FA;
    --color-secondary: #04D4FA;
    --color-accent: #49C2C1;
    --color-dark: #3F3D3D;
    --color-light: #FCFCFC;
    --color-white: #FFFFFF; */
}

:root {
    --wrapper-width: 187.8rem;
    --header-height: 10.7rem;
    --columns: 12;
    --margin: 4rem;
    --gutter: 2rem;
    --wrapper-bleed-margin: max((var(--viewport-width, 100vw) - var(--wrapper-width)) / 2 + var(--margin), var(--margin))
}

@media screen and (max-width: 1023px) {
    :root {
        --header-height: 7.5rem;
        --columns: 6;
        --margin: 3.2rem;
        --gutter: 2rem
    }
}

@media screen and (max-width: 519px) {
    :root {
        --header-height: 6.4rem;
        --columns: 2;
        --margin: 1.6rem;
        --gutter: 2rem
    }
}

@supports (height: 100svh) {
    :root {
        --vh: 1svh
    }
}

.fb-xfbml-parse-ignore {
    visibility: hidden
}
/*!*********************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[2].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[2].use[2]!./src/css/components/tags.css ***!
  \*********************************************************************************************************************************************************************************/
html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,main,menu,nav,output,ruby,section,summary,time,mark,audio,video {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    font: inherit;
    vertical-align: baseline
}

article,aside,details,figcaption,figure,footer,header,hgroup,main,menu,nav,section {
    display: block
}


body {
    line-height: 1
}

menu,ol,ul {
    list-style: none
}

blockquote,q {
    quotes: none
}

blockquote:before,blockquote:after,q:before,q:after {
    content: "";
    content: none
}

table {
    border-collapse: collapse;
    border-spacing: 0
}

h1,h2,h3,h4,h5,h6 {
    font-family: 'Krana Fat A', sans-serif;
}

body {
    --lh: 1.1666666667em;
    font-family: 'Pacaembu', sans-serif;
    font-weight: 400;
    font-size: 1.8rem;
    line-height: 1.1666666667;
    color: var(--color-primary);
    background-color: var(--color-bg)
}



* {
    outline: 0;
    -webkit-tap-highlight-color: transparent
}

*,*:before,*:after {
    box-sizing: border-box
}

body {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    -webkit-text-size-adjust: 100%;
    -moz-text-size-adjust: 100%;
         text-size-adjust: 100%
}

button {
    text-transform: inherit;
    cursor: pointer
}

img,video,svg {
    display: block;
    width: 100%;
    height: auto
}

a {
    display: inline-block;
    color: inherit;
    text-decoration: none
}

a:link {
    -webkit-tap-highlight-color: transparent
}

address {
    font-style: normal
}

small {
    font-size: inherit
}

input,select,button,textarea {
    padding: 0;
    color: inherit;
    font: inherit;
    border: 0;
    border-radius: 0;
    background: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    -webkit-font-smoothing: antialiased
}

textarea {
    resize: vertical
}

html {
    font-size: .5208333333vw
}

@media screen and (max-width: 1023px) {
    html {
        font-size:1.3020833333vw
    }
}

@media screen and (max-width: 519px) {
    html {
        font-size:2.3255813953vw
    }
}

html {
    height: 100%;
    min-height: 100%;
    position: relative;
    overflow: hidden scroll
}

html.is-non-interactive {
    cursor: wait!important;
    pointer-events: none!important
}

/*!**************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[2].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[2].use[2]!./src/css/components/keyframes.css ***!
  \**************************************************************************************************************************************************************************************/

@keyframes appear {
    0% {
        opacity: 0
    }

    to {
        opacity: 1
    }
}

@keyframes disappear {
    0% {
        opacity: 1
    }

    to {
        opacity: 0
    }
}

@keyframes appear-left {
    0% {
        transform: translate(4rem);
        opacity: 0
    }

    to {
        transform: translate(0);
        opacity: 1
    }
}

@keyframes appear-right {
    0% {
        transform: translate(-4rem);
        opacity: 0
    }

    to {
        transform: translate(0);
        opacity: 1
    }
}

@keyframes appear-up {
    0% {
        transform: translateY(4rem);
        opacity: 0
    }

    to {
        transform: translate(0);
        opacity: 1
    }
}

@keyframes appear-down {
    0% {
        transform: translateY(-4rem);
        opacity: 0
    }

    to {
        transform: translate(0);
        opacity: 1
    }
}


@keyframes load-dots {
    0% {
        box-shadow: 0 0,40px 0,-40px 0,0 40px,0 -40px
    }

    10% {
        box-shadow: 0 0,12px 0,-40px 0,0 40px,0 -40px
    }

    20% {
        box-shadow: 0 0 0 4px,0 0,-40px 0,0 40px,0 -40px
    }

    30% {
        box-shadow: 0 0 0 4px,0 0,-12px 0,0 40px,0 -40px
    }

    40% {
        box-shadow: 0 0 0 8px,0 0,0 0,0 40px,0 -40px
    }

    50% {
        box-shadow: 0 0 0 8px,0 0,0 0,0 12px,0 -40px
    }

    60% {
        box-shadow: 0 0 0 12px,0 0,0 0,0 0,0 -40px
    }

    70% {
        box-shadow: 0 0 0 12px,0 0,0 0,0 0,0 -12px
    }

    80% {
        box-shadow: 0 0 0 16px,0 0,0 0,0 0,0 0
    }

    90%,to {
        box-shadow: 0 0,40px 0,-40px 0,0 40px,0 -40px
    }
}
/*!***********************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[2].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[2].use[2]!./src/css/components/module.css ***!
  \***********************************************************************************************************************************************************************************/
.module:first-child {
    padding-block: 43.5rem 12.5rem
}

@media screen and (max-width: 1023px) {
    .module:first-child {
        padding-block: 29rem 7.2rem
    }
}

@media screen and (max-width: 519px) {
    .module:first-child {
        padding-block: 24.5rem 5rem
    }
}

.module:first-child.module--text-two-columns {
    padding-block-end: 0
}

.module:first-child .start-line {
    display: none
}

.module:last-child:not(.module--links-list) {
    margin-block-end: 25rem
}

@media screen and (max-width: 1023px) {
    .module:last-child:not(.module--links-list) {
        margin-block-end: 0
    }
}

.module.has-vertical-line .section-headline:before {
    content: "";
    width: 5px;
    position: absolute;
    top: 0;
    left: 50%;
    z-index: 1;
    background-color: #fbf3d3;
    translate: -50% 0;
    height: calc(100% - var(--lh) / 2);
    top: var(--top-line)
}

@media screen and (max-width: 1023px) {
    .module.has-vertical-line .section-headline:before {
        display: none
    }
}

.module.has-vertical-line+.module.has-vertical-line .start-line {
    visibility: visible
}
/*
.module.has-vertical-line+.module.has-vertical-line .section-headline:before {
    content: "";
    width: 5px;
    position: absolute;
    top: 0;
    left: 50%;
    z-index: 1;
    background-color: #fbf3d3;
    translate: -50% 0;
    height: calc(100% + 1px)
}
*/
@media screen and (max-width: 1023px) {
    .module.has-vertical-line+.module.has-vertical-line .section-headline:before {
        display: none
    }
}

.module.has-vertical-line+.module.has-headline:not(.has-vertical-line) .start-line {
    visibility: visible
}
/*
.module.has-vertical-line+.module.has-headline:not(.has-vertical-line) .section-headline:before {
    content: "";
    width: 5px;
    position: absolute;
    left: 50%;
    z-index: 1;
    background-color: #fbf3d3;
    translate: -50% 0;
    height: calc(100% - var(--lh) / 2 * .9em);
    top: 0
}
*/
@media screen and (max-width: 1023px) {
    .module.has-vertical-line+.module.has-headline:not(.has-vertical-line) .section-headline:before {
        display: none
    }
}

.module:not(.has-vertical-line, .module--embed)+.module.has-vertical-line:not(.text-two-columns:not(.has-headline)) {
    margin-block-start: 38rem
}

@media screen and (max-width: 1023px) {
    .module:not(.has-vertical-line, .module--embed)+.module.has-vertical-line:not(.text-two-columns:not(.has-headline)) {
        margin-block-start: 22rem
    }
}

@media screen and (max-width: 519px) {
    .module:not(.has-vertical-line, .module--embed)+.module.has-vertical-line:not(.text-two-columns:not(.has-headline)) {
        margin-block-start: 17rem
    }
}

.module:not(.has-vertical-line, .module--embed)+.module.has-vertical-line .start-line {
    display: none
}

.module:not(.has-vertical-line, .module--embed).module--text-one-column+.module.has-vertical-line:not(.text-two-columns:not(.has-headline)) {
    margin-block-start: 25rem
}

@media screen and (max-width: 1023px) {
    .module:not(.has-vertical-line, .module--embed).module--text-one-column+.module.has-vertical-line:not(.text-two-columns:not(.has-headline)) {
        margin-block-start: 13rem
    }
}

@media screen and (max-width: 519px) {
    .module:not(.has-vertical-line, .module--embed).module--text-one-column+.module.has-vertical-line:not(.text-two-columns:not(.has-headline)) {
        margin-block-start: 10rem
    }
}

.module:not(.has-vertical-line, .module--embed).module--media-fullscreen:not(.has-headline)+.module--text-with-sticky-media:not(.has-headline) {
    margin-block-start: 0
}

@media screen and (max-width: 1023px) {
    .module:not(.has-vertical-line, .module--embed).module--media-fullscreen:not(.has-headline)+.module--text-with-sticky-media:not(.has-headline) {
        margin-block-start: 5rem
    }
}

@media screen and (max-width: 519px) {
    .module:not(.has-vertical-line, .module--embed):not(.has-headline)+.module:not(.has-vertical-line) {
        margin-block-start: 8rem
    }
}

.module--media-fullscreen+.module--text-two-columns:not(.has-headline) .text-two-columns__wrapper {
    border-top: unset
}

.module--events,
.module--text-with-sticky-media,
.module--text-one-column,
.module--events:first-child,
.module--text-with-sticky-media:first-child,
.module--text-one-column:first-child {
    padding-bottom: 0
}
/*!**********************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[2].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[2].use[2]!./src/css/components/intro.css ***!
  \**********************************************************************************************************************************************************************************/
.intro {
    width: 100%;
    padding-inline:max((100% - var(--wrapper-width)) / 2 + var(--margin),var(--margin));
    display: grid;
    grid-auto-rows: auto;
    grid-template-columns: repeat(var(--columns),minmax(0,1fr));
    -moz-column-gap: var(--gutter);
         column-gap: var(--gutter);
    padding-block:41rem 11.5rem;position: relative
}

@media screen and (max-width: 1023px) {
    .intro {
        padding-block:29rem 7.2rem
    }
}

@media screen and (max-width: 519px) {
    .intro {
        padding-block:24rem 5rem
    }
}

.intro__headline,.intro__media {
    grid-column: 1/-1
}

.intro__headline {
    min-height: calc(28.2rem + var(--top-line));
    padding-bottom: 5.5rem;
    z-index: 1
}

@media screen and (max-width: 1023px) {
    .intro__headline {
        min-height:0;
        padding-bottom: 0
    }
}

.intro__headline:before {
    content: "";
    width: 5px;
    position: absolute;
    top: 0;
    left: 50%;
    z-index: 1;
    background-color: #000;
    translate: -50% 0;
    height: calc(100% - var(--top-line));
    min-height: 30.5rem;
    top: var(--top-line)
}

@media screen and (max-width: 1023px) {
    .intro__headline:before {
        display:none
    }
}

.intro__media {
    padding-bottom: 25.5rem;
    position: relative
}

@media screen and (max-width: 1023px) {
    .intro__media {
        margin-top:11.5rem;
        padding-bottom: 0
    }
}

@media screen and (max-width: 519px) {
    .intro__media {
        margin-top:7.5rem
    }
}

.intro__media:before {
    content: "";
    width: 5px;
    position: absolute;
    left: 50%;
    z-index: 1;
    background-color: #fbf3d3;
    translate: -50% 0;
    height: 100%;
    top: 0
}

@media screen and (max-width: 1023px) {
    .intro__media:before {
        display:none
    }
}

.intro__media-item {
    max-width: 96rem;
    margin-inline:auto;max-height: 72rem
}

@media screen and (max-width: 1023px) {
    .intro__media-item {
        max-width:52rem
    }
}

.intro__body,.intro__link {
    grid-column-start: 6;
    grid-column-end: -2
}

@media screen and (max-width: 1023px) {
    .intro__body,.intro__link {
        grid-column-start:1;
        grid-column-end: -1
    }
}

.intro__link {
    --lh: 1.15625em;
    font-family: 'Pacaembu', sans-serif;
    font-size: 3.2rem;
    font-weight: 400;
    line-height: 1.15625;
    letter-spacing: -.01em;
    margin-top: 10rem
}

@media screen and (max-width: 1023px) {
    .intro__link {
        font-size:2.5rem;
        line-height: 1.2;
        letter-spacing: 0
    }
}

@media screen and (max-width: 519px) {
    .intro__link {
        font-size:2rem;
        line-height: 1.25;
        letter-spacing: 0
    }
}

@media screen and (max-width: 1023px) {
    .intro__link {
        margin-top:8rem
    }
}

@media screen and (max-width: 519px) {
    .intro__link {
        margin-top:6rem
    }
}

.intro__body {
    --lh: 1.1666666667em;
    font-family: 'Pacaembu',sans-serif;
    font-size: 3rem;
    font-weight: 400;
    line-height: 1.1666666667;
    letter-spacing: -.01em;
    margin-top: 15rem
}

@media screen and (max-width: 1023px) {
    .intro__body {
        font-size:2.5rem;
        line-height: 1.2
    }
}

@media screen and (max-width: 519px) {
    .intro__body {
        font-size:2rem;
        line-height: 1.25
    }
}

@media screen and (max-width: 1023px) {
    .intro__body {
        margin-top:10.8rem
    }
}

@media screen and (max-width: 519px) {
    .intro__body {
        margin-top:7.8rem
    }
}
/*!*****************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[2].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[2].use[2]!./src/css/components/page-content.css ***!
  \*****************************************************************************************************************************************************************************************/
.page-content {
    width: 100%;
    padding-inline:max((100% - var(--wrapper-width)) / 2 + var(--margin),var(--margin));
    display: grid;
    grid-template-columns: 1fr;
    -moz-column-gap: var(--gutter);
         column-gap: var(--gutter);
    padding-block: 1.5rem 11.5rem;
    position: relative
}

@media screen and (max-width: 1023px) {
    .page-content {
        padding-block: 0 7.2rem
    }
}

@media screen and (max-width: 519px) {
    .page-content {
        padding-block: 0 5rem
    }
}
/*!*******************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[2].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[2].use[2]!./src/css/components/gallery-slider.css ***!
  \*******************************************************************************************************************************************************************************************/
.slider__slide {
    display: grid;
    place-content: center;
    min-height: 20rem;
    text-align: center;
    background-color: #fff
}

@media screen and (max-width: 519px) {
    .module--gallery-slider+.module--featured-slider {
        margin-block-start: 10rem;
    }
}

.gallery-slider__wrapper {
    height: calc(var(--vh, 1vh) * 100)
}

@media screen and (max-width: 1023px) {
    .gallery-slider__wrapper {
        height: 88rem;
    }
}

@media screen and (max-width: 519px) {
    .gallery-slider__wrapper {
        height: 40rem;
    }
}

.gallery-slider .swiper {
    height: 100%;
}

.gallery-slider .slider {
    width: 100%;
}

.gallery-slider .slider__slide {
    display: flex;
    height: 100%;
    margin-left: -.1rem
}

.gallery-slider .slider__slide--aspect-auto {
    width: auto;
    max-width: 90%;
}

@media screen and (max-width: 1023px) {
    .gallery-slider .slider__slide--aspect-auto {
        max-width: unset;
    }
}

.gallery-slider .slider__slide--aspect-auto .media--auto {
    width: calc(var(--vh, 1vh) * 100 * var(--media-w) / var(--media-h));
    max-width: 90vw;
}

@media screen and (max-width: 1023px) {
    .gallery-slider .slider__slide--aspect-auto .media--auto {
        width: calc(88rem * var(--media-w) / var(--media-h));
        max-width: unset;
    }
}

@media screen and (max-width: 519px) {
    .gallery-slider .slider__slide--aspect-auto .media--auto {
        width: calc(40rem * var(--media-w) / var(--media-h));
    }
}

.gallery-slider .slider__slide--aspect-landscape {
    width: 75%;
}

@media screen and (max-width: 1023px) {
    .gallery-slider .slider__slide--aspect-landscape {
        width: 85%;
    }
}

@media screen and (max-width: 519px) {
    .gallery-slider .slider__slide--aspect-landscape {
        width: 90%;
    }
}

.gallery-slider .slider__slide--aspect-square {
    width: calc(50% + .15rem);
}

@media screen and (max-width: 1023px) {
    .gallery-slider .slider__slide--aspect-square {
        width: calc(88rem * var(--media-w) / var(--media-h));
    }
}

@media screen and (max-width: 519px) {
    .gallery-slider .slider__slide--aspect-square {
        width: calc(40rem * var(--media-w) / var(--media-h));
    }
}

.gallery-slider .slider__slide--aspect-portrait {
    width: 50%;
}

@media screen and (max-width: 1023px) {
    .gallery-slider .slider__slide--aspect-portrait {
        width: 74%;
    }
}

@media screen and (max-width: 519px) {
    .gallery-slider .slider__slide--aspect-portrait {
        width: 82%;
    }
}

.gallery-slider .slider__slide--aspect-portrait-alt {
    width: 39.7%;
}

@media screen and (max-width: 1023px) {
    .gallery-slider .slider__slide--aspect-portrait-alt {
        width: 58.7%;
    }
}

@media screen and (max-width: 519px) {
    .gallery-slider .slider__slide--aspect-portrait-alt {
        width: 65.1%;
    }
}
/*!**************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[2].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[2].use[2]!./src/css/components/accordion.css ***!
  \**************************************************************************************************************************************************************************************/
.accordion {
    --media-height: 51.6rem;
    width: 100%;
    padding-inline: max((100% - var(--wrapper-width)) / 2 + var(--margin), var(--margin))
}

.accordion--start-line {
    grid-column: 1/-1;
    display: block;
    position: relative;
    visibility: hidden;
    padding-block-start: 26rem
}

.accordion--start-line:before {
    content: "";
    width: 5px;
    position: absolute;
    top: 0;
    left: 50%;
    z-index: 1;
    background-color: #fbf3d3;
    translate: -50% 0;
    height: calc(100% + .2rem);
    top: -.1rem
}

@media screen and (max-width: 1023px) {
    .accordion--start-line:before {
        display: none
    }
}

@media screen and (max-width: 1023px) {
    .accordion--start-line {
        padding-block-start: 15rem
    }
}

@media screen and (max-width: 519px) {
    .accordion--start-line {
        padding-block-start: 8.5rem
    }
}

.accordion.has-headline .accordion--start-line {
    visibility: visible
}

.accordion__headline {
    grid-column: 1/-1
}

.accordion__wrapper {
    grid-column: 1/-1;
    display: grid;
    grid-template-columns: 1fr 1fr;
    align-items: flex-start;
    position: relative;
    padding-block: 16rem 48rem
}

@media screen and (max-width: 1023px) {
    .accordion__wrapper {
        grid-template-columns: 1fr;
        padding-block: 15.3rem 28.7rem
    }
}

@media screen and (max-width: 519px) {
    .accordion__wrapper {
        padding-block: 7rem 20rem
    }
}

.accordion__wrapper:after {
    content: "";
    width: 5px;
    height: 100%;
    position: absolute;
    top: 22px;
    left: 50%;
    transform: translate(-50%);
    background-color: #fbf3d3
}

@media screen and (max-width: 1023px) {
    .accordion__wrapper:after {
        display: none
    }
}

.accordion__col--image {
    position: sticky;
    top: calc(var(--vh, 1vh) * 50 - var(--media-height) / 2)
}

@media screen and (max-width: 1023px) {
    .accordion__col--image {
        display: none
    }
}

.accordion__sticky-image {
    width: 100%;
    max-width: 50.6rem;
    min-height: var(--media-height);
    padding-left: 10rem;
    margin-inline: auto
}

@media screen and (max-width: 1023px) {
    .accordion__sticky-image {
        padding-left: 0
    }
}

@media screen and (min-width: 1024px) {
    .accordion__sticky-image .media--iframe {
        padding-top: var(--media-height)
    }
}

.accordion__sticky-image img,
.accordion__sticky-image video {
    aspect-ratio: 406/516;
    -o-object-fit: cover;
       object-fit: cover
}

.accordion__list {
    max-width: 74.4rem
}

.accordion__item {
    border-bottom: 5px solid #fbf3d3
}

@media screen and (max-width: 1023px) {
    .accordion__item {
        border-width: 4px
    }
}

@media screen and (max-width: 519px) {
    .accordion__item {
        border-width: 3px
    }
}

.accordion__item:last-child {
    border: unset
}

.accordion__item.is-active .accordion__trigger {
    opacity: .4
}

.accordion__item.is-active .accordion__icon {
    transform: rotate(45deg) translateZ(0)
}

@media (hover: hover) {
    .accordion__item:not(.is-active):hover .accordion__icon {
        transform: rotate(180deg) translateZ(0)
    }
}

.accordion__item:not(.is-active):focus-visible .accordion__icon {
    transform: rotate(180deg) translateZ(0)
}

@media (hover: hover) {
    .accordion__item:not(.is-active) .accordion__trigger:hover {
        opacity: .8
    }
}

.accordion__item:not(.is-active) .accordion__trigger:focus-visible {
    opacity: .8
}

.accordion__trigger {
    --lh: 1.0833333333em;
    font-family: 'Pacaembu', sans-serif;
    font-size: 6rem;
    font-weight: 400;
    line-height: 1.0833333333;
    letter-spacing: -.01em;
    display: flex;
    -moz-column-gap: 2rem;
         column-gap: 2rem;
    align-items: baseline;
    justify-content: space-between;
    width: 100%;
    padding: 1.3rem 0;
    color: #fbf3d3;
    text-align: left;
    transition: opacity .4s ease
}

@media screen and (max-width: 1023px) {
    .accordion__trigger {
        font-size: 4rem;
        line-height: 1.125
    }
}

@media screen and (max-width: 519px) {
    .accordion__trigger {
        font-size: 2rem;
        line-height: 1.25
    }
}

@media screen and (max-width: 1023px) {
    .accordion__trigger {
        padding: 1rem 0
    }
}

@media screen and (max-width: 519px) {
    .accordion__trigger {
        padding: .4rem 0
    }
}

.accordion__icon {
    display: inline-flex;
    position: relative;
    transition: transform .4s ease;
    transform: rotate(0) translateZ(0);
    opacity: 1;
    backface-visibility: hidden
}

.accordion__content {
    max-height: 0;
    visibility: hidden;
    overflow: hidden;
    transition: max-height .4s ease 0ms, opacity .8s ease 0ms, visibility 0ms ease .8s;
    opacity: 0;
    backface-visibility: hidden;
    will-change: max-height, opacity, visibility
}

[aria-expanded=true] .accordion__content {
    visibility: visible;
    transition: max-height .4s ease 0ms, opacity .8s ease .2s, visibility .8s ease .2s;
    opacity: 1
}

.accordion__content .wysiwyg-content {
    padding: 6rem 0 10.5rem
}

@media screen and (max-width: 1023px) {
    .accordion__content .wysiwyg-content {
        padding: 3.8rem 0 10rem
    }
}

@media screen and (max-width: 519px) {
    .accordion__content .wysiwyg-content {
        padding: 3.2rem 0 3.4rem
    }
}

.accordion__content .wysiwyg-content p {
    --lh: 1.1666666667em;
    font-family: 'Pacaembu', sans-serif;
    font-size: 3rem;
    font-weight: 400;
    line-height: 1.1666666667;
    letter-spacing: -.01em
}

@media screen and (max-width: 1023px) {
    .accordion__content .wysiwyg-content p {
        font-size: 2.5rem;
        line-height: 1.2
    }
}

@media screen and (max-width: 519px) {
    .accordion__content .wysiwyg-content p {
        font-size: 2rem;
        line-height: 1.25
    }
}

.accordion__content .wysiwyg-content p:not(:first-child)[style*=padding-left] {
    margin-top: 5.6rem
}

@media screen and (max-width: 1023px) {
    .accordion__content .wysiwyg-content p:not(:first-child)[style*=padding-left] {
        margin-top: 5.2rem
    }
}

@media screen and (max-width: 519px) {
    .accordion__content .wysiwyg-content p:not(:first-child)[style*=padding-left] {
        margin-top: 4.2rem
    }
}

.accordion__content .wysiwyg-content p:not(:first-child) .text-indent {
    margin-top: calc(calc(var(--lh, 1em) * 2) - 2.1rem)
}

@media screen and (max-width: 1023px) {
    .accordion__content .wysiwyg-content p:not(:first-child) .text-indent {
        margin-top: calc(calc(var(--lh, 1em) * 2) - 1.7rem)
    }
}

@media screen and (max-width: 519px) {
    .accordion__content .wysiwyg-content p:not(:first-child) .text-indent {
        margin-top: calc(calc(var(--lh, 1em) * 2) - .8rem)
    }
}



.rules-page .accordion__trigger {
    --lh: 1.1666666667em;
    font-family: 'Pacaembu', sans-serif;
    font-size: 3rem;
    font-weight: 400;
    line-height: 1.1666666667;
    letter-spacing: -.01em
}

@media screen and (max-width: 1023px) {
    .rules-page .accordion__trigger {
        font-size: 2rem;
        line-height: 1.2;
        letter-spacing: -.01em
    }
}

.rules-page .accordion__content {
    --lh: 1.1666666667em;
    font-family: 'Pacaembu', sans-serif;
    font-size: 3rem;
    font-weight: 400;
    line-height: 1.1666666667;
    letter-spacing: -.01em
}

@media screen and (max-width: 1023px) {
    .rules-page .accordion__content {
        font-size: 2rem;
        line-height: 1.2;
        letter-spacing: -.01em
    }
}
/*!****************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[2].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[2].use[2]!./src/css/components/sign-up-cta.css ***!
  \****************************************************************************************************************************************************************************************/

.sign-up-cta--start-line {
    display: block;
    position: relative;
    padding-block-start:24rem}

.sign-up-cta--start-line:before {
    content: "";
    width: 5px;
    position: absolute;
    top: 0;
    left: 50%;
    z-index: 1;
    background-color: #fbf3d3;
    /* background-color: #000; */
    translate: -50% 0;
    height: calc(100% + .2rem);
    top: -.1rem
}

@media screen and (max-width: 1023px) {
    .sign-up-cta--start-line:before {
        display:none
    }
}

@media screen and (max-width: 1023px) {
    .sign-up-cta--start-line {
        padding-block-start:15rem
    }
}

@media screen and (max-width: 519px) {
    .sign-up-cta--start-line {
        padding-block-start:5rem
    }
}

.sign-up-cta__wrapper {
    width: 100%;
    padding-inline:max((100% - var(--wrapper-width)) / 2 + var(--margin),var(--margin));position: relative;
    padding-block-end:23rem}

@media screen and (max-width: 1023px) {
    .sign-up-cta__wrapper {
        padding-block-end:0
    }
}

.sign-up-cta__wrapper-inner {
    display: grid;
    grid-template-columns: 1fr 1fr;
    border-style: solid;
    border-color: #fbf3d3;
    /* border-color: #000; */
    border-top-width: 5px;
    border-bottom-width: 5px
}

@media screen and (max-width: 1023px) {
    .sign-up-cta__wrapper-inner {
        grid-template-columns:1fr;
        border-top-width: 4px;
        border-bottom: 0
    }
}

@media screen and (max-width: 519px) {
    .sign-up-cta__wrapper-inner {
        border-top-width:3px
    }
}

.sign-up-cta__wrapper:after {
    content: "";
    width: 5px;
    height: 100%;
    position: absolute;
    top: 0;
    left: 50%;
    transform: translate(-50%);
    background-color: #fbf3d3;
}

@media screen and (max-width: 1023px) {
    .sign-up-cta__wrapper:after {
        display:none
    }
}

.sign-up-cta__col {
    position: relative
}

.sign-up-cta__col--banner {
    margin-right: calc(var(--wrapper-bleed-margin) * -1)
}

@media screen and (max-width: 1023px) {
    .sign-up-cta__col--banner {
        margin-left:calc(var(--wrapper-bleed-margin) * -1)
    }
}

.sign-up-cta__col--banner .media {
    width: 100%;
    height: 100%;
    min-height: 60rem;
    max-height: 100%;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0
}

@media screen and (max-width: 1023px) {
    .sign-up-cta__col--banner .media {
        position:static
    }
}

@media screen and (max-width: 519px) {
    .sign-up-cta__col--banner .media {
        min-height:46.5rem
    }
}

.sign-up-cta__col--banner img,.sign-up-cta__col--banner video {
    aspect-ratio: 432/465
}

.sign-up-cta__content {
    display: flex;
    flex-direction: column;
    height: 100%;
    padding: 10.7rem 15.9rem 10.7rem 0
}

@media screen and (max-width: 1023px) {
    .sign-up-cta__content {
        padding:15rem 8.9rem 15rem 0
    }
}

@media screen and (max-width: 519px) {
    .sign-up-cta__content {
        padding:10rem 0
    }
}

.sign-up-cta__content-text {
    --lh: 1.0833333333em;
    font-family: 'Pacaembu', sans-serif;
    font-size: 6rem;
    font-weight: 400;
    line-height: 1.0833333333;
    letter-spacing: -.01em;
    margin-bottom: 13.5rem
}

@media screen and (max-width: 1023px) {
    .sign-up-cta__content-text {
        font-size:4rem;
        line-height: 1.125
    }
}

@media screen and (max-width: 519px) {
    .sign-up-cta__content-text {
        font-size:2rem;
        line-height: 1.25
    }
}

@media screen and (max-width: 1023px) {
    .sign-up-cta__content-text {
        margin-bottom:6.6rem
    }
}

@media screen and (max-width: 519px) {
    .sign-up-cta__content-text {
        margin-bottom:9.4rem
    }
}

.sign-up-cta__content-button {
    margin-top: auto
}

.sign-up-cta__banner {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    width: 59.2%;
    height: 63.3%;
    padding: 3.3rem 3rem 3.8rem;
    position: absolute;
    z-index: 1;
    transform: translate(-50%,-50%);
    background-color: var(--banner-bg-color, #d71920);
    top: 50%;
    right: 50%;
    bottom: 50%;
    left: 50%
}

@media screen and (max-width: 1023px) {
    .sign-up-cta__banner {
        padding:2.6rem 2.5rem 3.2rem
    }
}

@media screen and (max-width: 519px) {
    .sign-up-cta__banner {
        padding:1.3rem 2.5rem 2rem 1.3rem
    }
}

.sign-up-cta__banner svg * {
    fill: var(--banner-logo-color, #000)
}
/*!********************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[2].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[2].use[2]!./src/css/components/visually-hidden.css ***!
  \********************************************************************************************************************************************************************************************/
.visually-hidden {
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    position: absolute;
    white-space: nowrap;
    overflow: hidden;
    clip-path: inset(0 0 0 0);
    border: 0
}

.visually-hidden.focusable:active,.visually-hidden.focusable:focus {
    width: auto;
    height: auto;
    margin: 0;
    position: static;
    white-space: inherit;
    overflow: visible;
    clip: auto
}

/*!***********************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[2].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[2].use[2]!./src/css/components/swiper.css ***!
  \***********************************************************************************************************************************************************************************/
@font-face {
    font-family: swiper-icons;
    src: url("data:application/font-woff;charset=utf-8;base64, d09GRgABAAAAAAZgABAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAGRAAAABoAAAAci6qHkUdERUYAAAWgAAAAIwAAACQAYABXR1BPUwAABhQAAAAuAAAANuAY7+xHU1VCAAAFxAAAAFAAAABm2fPczU9TLzIAAAHcAAAASgAAAGBP9V5RY21hcAAAAkQAAACIAAABYt6F0cBjdnQgAAACzAAAAAQAAAAEABEBRGdhc3AAAAWYAAAACAAAAAj//wADZ2x5ZgAAAywAAADMAAAD2MHtryVoZWFkAAABbAAAADAAAAA2E2+eoWhoZWEAAAGcAAAAHwAAACQC9gDzaG10eAAAAigAAAAZAAAArgJkABFsb2NhAAAC0AAAAFoAAABaFQAUGG1heHAAAAG8AAAAHwAAACAAcABAbmFtZQAAA/gAAAE5AAACXvFdBwlwb3N0AAAFNAAAAGIAAACE5s74hXjaY2BkYGAAYpf5Hu/j+W2+MnAzMYDAzaX6QjD6/4//Bxj5GA8AuRwMYGkAPywL13jaY2BkYGA88P8Agx4j+/8fQDYfA1AEBWgDAIB2BOoAeNpjYGRgYNBh4GdgYgABEMnIABJzYNADCQAACWgAsQB42mNgYfzCOIGBlYGB0YcxjYGBwR1Kf2WQZGhhYGBiYGVmgAFGBiQQkOaawtDAoMBQxXjg/wEGPcYDDA4wNUA2CCgwsAAAO4EL6gAAeNpj2M0gyAACqxgGNWBkZ2D4/wMA+xkDdgAAAHjaY2BgYGaAYBkGRgYQiAHyGMF8FgYHIM3DwMHABGQrMOgyWDLEM1T9/w8UBfEMgLzE////P/5//f/V/xv+r4eaAAeMbAxwIUYmIMHEgKYAYjUcsDAwsLKxc3BycfPw8jEQA/gZBASFhEVExcQlJKWkZWTl5BUUlZRVVNXUNTQZBgMAAMR+E+gAEQFEAAAAKgAqACoANAA+AEgAUgBcAGYAcAB6AIQAjgCYAKIArAC2AMAAygDUAN4A6ADyAPwBBgEQARoBJAEuATgBQgFMAVYBYAFqAXQBfgGIAZIBnAGmAbIBzgHsAAB42u2NMQ6CUAyGW568x9AneYYgm4MJbhKFaExIOAVX8ApewSt4Bic4AfeAid3VOBixDxfPYEza5O+Xfi04YADggiUIULCuEJK8VhO4bSvpdnktHI5QCYtdi2sl8ZnXaHlqUrNKzdKcT8cjlq+rwZSvIVczNiezsfnP/uznmfPFBNODM2K7MTQ45YEAZqGP81AmGGcF3iPqOop0r1SPTaTbVkfUe4HXj97wYE+yNwWYxwWu4v1ugWHgo3S1XdZEVqWM7ET0cfnLGxWfkgR42o2PvWrDMBSFj/IHLaF0zKjRgdiVMwScNRAoWUoH78Y2icB/yIY09An6AH2Bdu/UB+yxopYshQiEvnvu0dURgDt8QeC8PDw7Fpji3fEA4z/PEJ6YOB5hKh4dj3EvXhxPqH/SKUY3rJ7srZ4FZnh1PMAtPhwP6fl2PMJMPDgeQ4rY8YT6Gzao0eAEA409DuggmTnFnOcSCiEiLMgxCiTI6Cq5DZUd3Qmp10vO0LaLTd2cjN4fOumlc7lUYbSQcZFkutRG7g6JKZKy0RmdLY680CDnEJ+UMkpFFe1RN7nxdVpXrC4aTtnaurOnYercZg2YVmLN/d/gczfEimrE/fs/bOuq29Zmn8tloORaXgZgGa78yO9/cnXm2BpaGvq25Dv9S4E9+5SIc9PqupJKhYFSSl47+Qcr1mYNAAAAeNptw0cKwkAAAMDZJA8Q7OUJvkLsPfZ6zFVERPy8qHh2YER+3i/BP83vIBLLySsoKimrqKqpa2hp6+jq6RsYGhmbmJqZSy0sraxtbO3sHRydnEMU4uR6yx7JJXveP7WrDycAAAAAAAH//wACeNpjYGRgYOABYhkgZgJCZgZNBkYGLQZtIJsFLMYAAAw3ALgAeNolizEKgDAQBCchRbC2sFER0YD6qVQiBCv/H9ezGI6Z5XBAw8CBK/m5iQQVauVbXLnOrMZv2oLdKFa8Pjuru2hJzGabmOSLzNMzvutpB3N42mNgZGBg4GKQYzBhYMxJLMlj4GBgAYow/P/PAJJhLM6sSoWKfWCAAwDAjgbRAAB42mNgYGBkAIIbCZo5IPrmUn0hGA0AO8EFTQAA");
    font-weight: 400;
    font-style: normal
}

:root {
    --swiper-theme-color: #007aff
}

.swiper {
    margin-left: auto;
    margin-right: auto;
    position: relative;
    overflow: hidden;
    list-style: none;
    padding: 0;
    z-index: 1;
    display: block
}

.swiper-vertical>.swiper-wrapper {
    flex-direction: column
}

.swiper-wrapper {
    position: relative;
    width: 100%;
    height: 100%;
    z-index: 1;
    display: flex;
    transition-property: transform;
    transition-timing-function: var(--swiper-wrapper-transition-timing-function, initial);
    box-sizing: content-box
}

.swiper-android .swiper-slide,
.swiper-ios .swiper-slide,
.swiper-wrapper {
    transform: translateZ(0)
}

.swiper-horizontal {
    touch-action: pan-y
}

.swiper-vertical {
    touch-action: pan-x
}

.swiper-slide {
    flex-shrink: 0;
    width: 100%;
    height: 100%;
    position: relative;
    transition-property: transform;
    display: block
}

.swiper-slide-invisible-blank {
    visibility: hidden
}

.swiper-autoheight,
.swiper-autoheight .swiper-slide {
    height: auto
}

.swiper-autoheight .swiper-wrapper {
    align-items: flex-start;
    transition-property: transform, height
}

.swiper-backface-hidden .swiper-slide {
    transform: translateZ(0);
    backface-visibility: hidden
}

.swiper-3d.swiper-css-mode .swiper-wrapper {
    perspective: 1200px
}

.swiper-3d .swiper-wrapper {
    transform-style: preserve-3d
}

.swiper-3d {
    perspective: 1200px
}

.swiper-3d .swiper-slide,
.swiper-3d .swiper-cube-shadow {
    transform-style: preserve-3d
}

.swiper-css-mode>.swiper-wrapper {
    overflow: auto;
    scrollbar-width: none;
    -ms-overflow-style: none
}

.swiper-css-mode>.swiper-wrapper::-webkit-scrollbar {
    display: none
}

.swiper-css-mode>.swiper-wrapper>.swiper-slide {
    scroll-snap-align: start start
}

.swiper-css-mode.swiper-horizontal>.swiper-wrapper {
    scroll-snap-type: x mandatory
}

.swiper-css-mode.swiper-vertical>.swiper-wrapper {
    scroll-snap-type: y mandatory
}

.swiper-css-mode.swiper-free-mode>.swiper-wrapper {
    scroll-snap-type: none
}

.swiper-css-mode.swiper-free-mode>.swiper-wrapper>.swiper-slide {
    scroll-snap-align: none
}

.swiper-css-mode.swiper-centered>.swiper-wrapper:before {
    content: "";
    flex-shrink: 0;
    order: 9999
}

.swiper-css-mode.swiper-centered>.swiper-wrapper>.swiper-slide {
    scroll-snap-align: center center;
    scroll-snap-stop: always
}

.swiper-css-mode.swiper-centered.swiper-horizontal>.swiper-wrapper>.swiper-slide:first-child {
    margin-inline-start: var(--swiper-centered-offset-before)
}

.swiper-css-mode.swiper-centered.swiper-horizontal>.swiper-wrapper:before {
    height: 100%;
    min-height: 1px;
    width: var(--swiper-centered-offset-after)
}

.swiper-css-mode.swiper-centered.swiper-vertical>.swiper-wrapper>.swiper-slide:first-child {
    margin-block-start: var(--swiper-centered-offset-before)
}

.swiper-css-mode.swiper-centered.swiper-vertical>.swiper-wrapper:before {
    width: 100%;
    min-width: 1px;
    height: var(--swiper-centered-offset-after)
}

.swiper-3d .swiper-slide-shadow,
.swiper-3d .swiper-slide-shadow-left,
.swiper-3d .swiper-slide-shadow-right,
.swiper-3d .swiper-slide-shadow-top,
.swiper-3d .swiper-slide-shadow-bottom {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    z-index: 10
}

.swiper-3d .swiper-slide-shadow {
    background: #00000026
}

.swiper-3d .swiper-slide-shadow-left {
    background-image: linear-gradient(to left, #00000080, #0000)
}

.swiper-3d .swiper-slide-shadow-right {
    background-image: linear-gradient(to right, #00000080, #0000)
}

.swiper-3d .swiper-slide-shadow-top {
    background-image: linear-gradient(to top, #00000080, #0000)
}

.swiper-3d .swiper-slide-shadow-bottom {
    background-image: linear-gradient(to bottom, #00000080, #0000)
}

.swiper-lazy-preloader {
    width: 42px;
    height: 42px;
    position: absolute;
    left: 50%;
    top: 50%;
    margin-left: -21px;
    margin-top: -21px;
    z-index: 10;
    transform-origin: 50%;
    box-sizing: border-box;
    border: 4px solid var(--swiper-preloader-color, var(--swiper-theme-color));
    border-radius: 50%;
    border-top-color: transparent
}

.swiper:not(.swiper-watch-progress) .swiper-lazy-preloader,
.swiper-watch-progress .swiper-slide-visible .swiper-lazy-preloader {
    animation: swiper-preloader-spin 1s infinite linear
}

.swiper-lazy-preloader-white {
    --swiper-preloader-color: #fff
}

.swiper-lazy-preloader-black {
    --swiper-preloader-color: #000
}

@keyframes swiper-preloader-spin {
    0% {
        transform: rotate(0)
    }

    to {
        transform: rotate(360deg)
    }
}

.swiper-fade.swiper-free-mode .swiper-slide {
    transition-timing-function: ease-out
}

.swiper-fade .swiper-slide {
    pointer-events: none;
    transition-property: opacity
}

.swiper-fade .swiper-slide .swiper-slide {
    pointer-events: none
}

.swiper-fade .swiper-slide-active,
.swiper-fade .swiper-slide-active .swiper-slide-active {
    pointer-events: auto
}

.swiper--visible {
    overflow: visible
}
/*!****************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[2].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[2].use[2]!./src/css/components/hero-slider.css ***!
  \****************************************************************************************************************************************************************************************/
.hero-slider {
    display: flex;
    height: calc(var(--vh, 1vh) * 100);
    position: relative
}

.hero-slider--scroll {
    display: grid;
    grid-template-columns: 1fr 1fr;
    height: 100vh;
    height: 100lvh;
    position: sticky;
    top: 0;
    left: 0
}

.hero-slider--scroll:before {
    content: "";
    width: 5px;
    position: absolute;
    top: 0;
    left: 50%;
    z-index: 1;
    background-color: #fbf3d3;
    translate: -50% 0;
    height: 100%;
    z-index: 5
}

@media screen and (max-width: 1023px) {
    .hero-slider--scroll:before {
        display:none
    }
}

.hero-slider--scroll .swiper-wrapper {
    transform-style: preserve-3d
}

.hero-slider__column {
    height: 100%;
    overflow: hidden
}

.hero-slider__swiper {
    width: 100%;
    height: 100%
}

.hero-slider__slide {
    display: flex;
    align-items: center;
    justify-content: center
}

.hero-slider__slide--scroll {
    height: auto;
    min-height: 0;
    margin-top: -1px
}

.hero-slider__slide--scroll .media img,.hero-slider__slide--scroll .media video {
    aspect-ratio: var(--media-w)/var(--media-h)
}

.hero-slider__slide--layout-full .media {
    width: 100%
}

.hero-slider__slide--layout-landscape {
    padding: 10rem
}

@media screen and (min-width: 1920px) {
    .hero-slider__slide--layout-landscape {
        padding:12rem
    }
}

@media screen and (max-width: 519px) {
    .hero-slider__slide--layout-landscape {
        padding:6rem
    }
}

.hero-slider__slide--layout-landscape .hero-slider__slide-inner {
    position: relative;
    z-index: 2
}

.hero-slider__slide--layout-landscape .media {
    width: auto;
    max-width: 100%;
    height: 54rem;
    max-height: 100%
}

@media screen and (max-width: 1023px) {
    .hero-slider__slide--layout-landscape .media {
        height:34rem
    }
}

@media screen and (max-width: 519px) {
    .hero-slider__slide--layout-landscape .media {
        height:31.4rem;
        aspect-ratio: 1
    }
}

.hero-slider__slide--layout-portrait {
    padding: 10rem
}

@media screen and (min-width: 1920px) {
    .hero-slider__slide--layout-portrait {
        padding:12rem
    }
}

@media screen and (max-width: 519px) {
    .hero-slider__slide--layout-portrait {
        padding:6rem
    }
}

.hero-slider__slide--layout-portrait .hero-slider__slide-inner {
    position: relative;
    z-index: 2
}

.hero-slider__slide--layout-portrait .media {
    width: auto;
    max-width: 100%;
    height: 59rem;
    max-height: 100%
}

@media screen and (max-width: 1023px) {
    .hero-slider__slide--layout-portrait .media {
        height:43rem
    }
}

@media screen and (max-width: 519px) {
    .hero-slider__slide--layout-portrait .media {
        height:56rem
    }
}

.hero-slider__slide-inner {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%
}

.hero-slider__nav {
    content: "";
    width: 50%;
    height: 100%;
    position: absolute;
    top: 0;
    bottom: 0;
    z-index: 5;
    opacity: 0
}

.hero-slider__nav--prev {
    left: 0;
    cursor: w-resize
}

.hero-slider__nav--next {
    right: 0;
    cursor: e-resize
}

@media (pointer: coarse) {
    .hero-slider__nav {
        display:none
    }
}

.hero-slider__pagination {
    --lh: 1.2083333333em;
    font-family: 'Pacaembu', sans-serif;
    font-size: 2.4rem;
    font-weight: 400;
    line-height: 1.2083333333;
    letter-spacing: -.024em;
    margin-top: 6rem;
    color: #fff
}

@media screen and (max-width: 1023px) {
    .hero-slider__pagination {
        font-size:2rem;
        line-height: 1.2;
        letter-spacing: 0
    }
}

@media screen and (max-width: 1023px) {
    .hero-slider__pagination {
        margin-top:7rem
    }
}

@media screen and (max-width: 519px) {
    .hero-slider__pagination {
        margin-top:6.5rem;
        font-size: 1.8rem;
        line-height: 1.2222222222
    }
}

.hero-slider__pagination-wrapper {
    width: 100%;
    padding-inline:max((100% - var(--wrapper-width)) / 2 + var(--margin),var(--margin));display: flex;
    justify-content: space-between;
    position: absolute;
    top: 50%;
    left: 50%;
    z-index: 2;
    transform: translate(-50%,-50%);
    mix-blend-mode: difference
}

.hero-slider__pagination--next {
    margin-left: auto
}

.hero-slider__line {
    --wrapper-margin: max((100% - var(--wrapper-width)) / 2 + var(--margin), var(--margin));
    position: absolute;
    top: 50%;
    left: 50%;
    z-index: 1;
    transform: translate(-50%,-50%);
    mix-blend-mode: difference
}

.hero-slider__line .arrow {
    display: inline-block;
    padding: 7px;
    position: absolute;
    border: solid #fff;
    border-width: 0 3px 3px 0
}

@media screen and (min-width: 1920px) {
    .hero-slider__line .arrow {
        padding:.8rem;
        border-width: 0 .3rem .3rem 0
    }
}

.hero-slider__line .arrow--down {
    bottom: 0;
    left: 50%;
    transform: translate(-50%) rotate(45deg)
}

.hero-slider__line .arrow--left {
    top: 50%;
    left: var(--wrapper-margin);
    transform: translateY(-50%) rotate(135deg)
}

.hero-slider__line .arrow--right {
    top: 50%;
    right: var(--wrapper-margin);
    transform: translateY(-50%) rotate(-45deg)
}

.hero-slider__line--vertical {
    width: 3px;
    height: calc(100% - 12rem);
    background-color: #fff
}

@media screen and (min-width: 1920px) {
    .hero-slider__line--vertical {
        width:.3rem
    }
}

@media screen and (max-width: 1023px) {
    .hero-slider__line--vertical {
        height:calc(100% - 6rem)
    }
}

@media screen and (max-width: 519px) {
    .hero-slider__line--vertical {
        height:calc(100% - 4.4rem)
    }
}

.hero-slider__line--horizontal {
    width: 100%;
    height: 3px
}

@media screen and (min-width: 1920px) {
    .hero-slider__line--horizontal {
        height:.3rem
    }
}

.hero-slider__line--horizontal:before,.hero-slider__line--horizontal:after {
    content: "";
    width: calc(50% - var(--wrapper-margin) - .15rem);
    height: 100%;
    position: absolute;
    background-color: #fff
}

.hero-slider__line--horizontal:before {
    left: var(--wrapper-margin)
}

.hero-slider__line--horizontal:after {
    right: var(--wrapper-margin)
}

.hero-slider-pin-spacer {
    --speed: 1;
    min-height: calc(calc(var(--vh, 1vh) * 100) * var(--slides-count, 1) * var(--speed));
    pointer-events: none;
    touch-action: none
}

@media screen and (max-width: 1023px) {
    .hero-slider-pin-spacer {
        --speed: .45
    }
}

@media screen and (max-width: 519px) {
    .hero-slider-pin-spacer {
        --speed: .3
    }
}

.hero-slider__swiper .swiper-wrapper { will-change: transform; }
/*!********************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[2].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[2].use[2]!./src/css/components/featured-slider.css ***!
  \********************************************************************************************************************************************************************************************/
.module--featured-slider+.module {
    margin-block-start:49rem}

@media screen and (max-width: 1023px) {
    .module--featured-slider+.module {
        margin-block-start:30rem
    }
}

@media screen and (max-width: 519px) {
    .module--featured-slider+.module {
        margin-block-start:20rem
    }
}

.featured-slider {
    width: 100%;
    padding-inline:max((100% - var(--wrapper-width)) / 2 + var(--margin),var(--margin));overflow: clip
}

.featured-slider--start-line {
    display: block;
    position: relative;
    padding-block-start:35rem;visibility: hidden
}

.featured-slider--start-line:before {
    content: "";
    width: 5px;
    position: absolute;
    top: 0;
    left: 50%;
    z-index: 1;
    background-color: #000;
    translate: -50% 0;
    height: calc(100% + .2rem);
    top: -.1rem
}

@media screen and (max-width: 1023px) {
    .featured-slider--start-line:before {
        display:none
    }
}

@media screen and (max-width: 1023px) {
    .featured-slider--start-line {
        padding-block-start:16rem
    }
}

@media screen and (max-width: 519px) {
    .featured-slider--start-line {
        padding-block-start:8rem
    }
}

.featured-slider__slider {
    display: block;
    padding-top: 25rem
}

@media screen and (max-width: 1023px) {
    .featured-slider__slider {
        padding-top:17rem
    }
}

@media screen and (max-width: 519px) {
    .featured-slider__slider {
        padding-top:17.5rem
    }
}

.featured-slider-item {
    display: flex;
    width: 25%;
    height: auto
}

.featured-slider-item:not(:first-child) {
    margin-left: -.1rem
}

.featured-slider-item__link {
    display: flex;
    align-items: flex-end;
    padding: 1.6rem 1.9rem;
    position: absolute;
    z-index: 1;
    color: #fff;
    font-family: 'Pacaembu', sans-serif;
    font-size: 2rem;
    line-height: 1.25;
    letter-spacing: -.01em;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0
}

@media screen and (max-width: 1023px) and (min-width: 768px) {
    .featured-slider-item__link {
        font-size:1.7rem;
        line-height: 1.2941176471
    }
}

/* @media (hover: hover) {
    .featured-slider-item__link:hover+.featured-slider-item__media {
        opacity:.75
    }
}

.featured-slider-item__link:focus-visible+.featured-slider-item__media {
    opacity: .75
} */

/* cursor de arraste no container */
.featured-slider .swiper { cursor: grab; }
.featured-slider .swiper:active { cursor: grabbing; }

/* faça o <a> herdar o cursor do container */
.featured-slider .featured-slider-item__link { cursor: inherit; }

/* remove highlight azul no mobile */
.featured-slider .featured-slider-item__link { -webkit-tap-highlight-color: transparent; }


.featured-slider-item__title {
    max-width: 27.5rem;
    text-align: left;
    transform: translateZ(0)
}

.featured-slider-item__media {
    overflow: clip;
    width: 100%;
    min-height: 56.6rem;
    position: relative;
    transition: opacity .4s ease;
    background-color: var(--dominant-color, var(--color-media))
}

@supports not (overflow: clip) {
    .featured-slider-item__media {
        overflow:hidden
    }
}

@media screen and (max-width: 1023px) {
    .featured-slider-item__media {
        min-height:44.5rem
    }
}

.featured-slider-item__image {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
    aspect-ratio: 445/566
}
/*!***********************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[2].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[2].use[2]!./src/css/components/button.css ***!
  \***********************************************************************************************************************************************************************************/

.button {
    --lh: 1.2083333333em;
    font-family: 'Pacaembu', sans-serif;
    font-size: 2.4rem;
    font-weight: 400;
    line-height: 1.2083333333;
    letter-spacing: -.024em;
    width: -moz-fit-content;
    width: fit-content;
    text-align: left;
    text-transform: uppercase
}

@media screen and (max-width: 1023px) {
    .button {
        font-size:2rem;
        line-height: 1.2;
        letter-spacing: 0
    }
}

.button span:not(.button-icon) {
    transition: background .4s ease;
    background: linear-gradient(to right,transparent,transparent),linear-gradient(to right,currentColor,currentColor);
    background-repeat: no-repeat;
    background-position: 100% 100%,0 100%;
    background-size: 100% 2px,0 2px
}

.button:focus-visible span:not(.button-icon) {
    transition: background .4s ease;
    background: linear-gradient(to right,transparent,transparent),linear-gradient(to right,currentColor,currentColor);
    background-repeat: no-repeat;
    background-position: 100% 100%,0 100%;
    background-size: 0 2px,100% 2px
}

@media (hover: hover) {
    .button:hover .button-icon {
        transform:rotate(180deg) translateZ(0)
    }
}

.button:focus-visible .button-icon {
    transform: rotate(180deg) translateZ(0)
}

.button--medium {
    --lh: 1.15625em;
    font-family: 'Pacaembu', sans-serif;
    font-size: 3.2rem;
    font-weight: 400;
    line-height: 1.15625;
    letter-spacing: -.01em
}

@media screen and (max-width: 1023px) {
    .button--medium {
        font-size:2.5rem;
        line-height: 1.2;
        letter-spacing: 0
    }
}

@media screen and (max-width: 519px) {
    .button--medium {
        font-size:2rem;
        line-height: 1.25;
        letter-spacing: 0
    }
}

.button-icon {
    display: inline-flex;
    position: relative;
    transition: transform .4s ease;
    transform: rotate(0) translateZ(0);
    opacity: 1;
    backface-visibility: hidden
}

.button--close .button-icon {
    transform: rotate(45deg) translateZ(0)
}
/*!*********************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[2].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[2].use[2]!./src/css/components/data-in-viewport.css ***!
  \*********************************************************************************************************************************************************************************************/

[data-in-viewport] {
    animation-duration: .8s;
    animation-timing-function: ease;
    animation-fill-mode: forwards
}

[data-in-viewport][data-in-viewport-delay="1"] {
    animation-delay: .1s
}

[data-in-viewport][data-in-viewport-delay="2"] {
    animation-delay: .2s
}

[data-in-viewport][data-in-viewport-delay="3"] {
    animation-delay: .3s
}

[data-in-viewport][data-in-viewport-delay="4"] {
    animation-delay: .4s
}

[data-in-viewport][data-in-viewport-delay="5"] {
    animation-delay: .5s
}

[data-in-viewport][data-in-viewport-delay="6"] {
    animation-delay: .6s
}

[data-in-viewport][data-in-viewport-delay="7"] {
    animation-delay: .7s
}

[data-in-viewport][data-in-viewport-delay="8"] {
    animation-delay: .8s
}

[data-in-viewport][data-in-viewport-delay="9"] {
    animation-delay: .9s
}

[data-in-viewport][data-in-viewport-delay="10"] {
    animation-delay: 1s
}

[data-in-viewport][data-in-viewport-delay="11"] {
    animation-delay: 1.1s
}

[data-in-viewport][data-in-viewport-delay="12"] {
    animation-delay: 1.2s
}

[data-in-viewport][data-in-viewport-delay="13"] {
    animation-delay: 1.3s
}

[data-in-viewport][data-in-viewport-delay="14"] {
    animation-delay: 1.4s
}

[data-in-viewport=fade] {
    opacity: 0
}

[data-in-viewport=fade].is-in-viewport {
    animation-name: appear
}

[data-in-viewport=right] {
    opacity: 0
}

[data-in-viewport=right].is-in-viewport {
    animation-name: appear-left
}

[data-in-viewport=left] {
    opacity: 0
}

[data-in-viewport=left].is-in-viewport {
    animation-name: appear-right
}

[data-in-viewport=bottom] {
    opacity: 0
}

[data-in-viewport=bottom].is-in-viewport {
    animation-name: appear-up
}

[data-in-viewport=top] {
    opacity: 0
}

[data-in-viewport=top].is-in-viewport {
    animation-name: appear-down
}
/*!*******************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[2].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[2].use[2]!./src/css/components/data-lazy-load.css ***!
  \*******************************************************************************************************************************************************************************************/
[data-lazy-load],[data-video-autoplay],.media iframe {
    animation-duration: 1.2s;
    animation-timing-function: ease;
    animation-fill-mode: none;
    opacity: 0
}

[data-lazy-load].loaded,[data-video-autoplay].loaded,.media.has-started iframe {
    animation-name: appear;
    opacity: 1
}
/*!*******************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[2].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[2].use[2]!./src/css/components/sample-wysiwyg.css ***!
  \*******************************************************************************************************************************************************************************************/
.sample-wysiwyg {
    width: 100%;
    max-width: var(--wrapper-width);
    margin-inline:auto;padding-inline:var(--margin);padding-block: 4rem
}
/*!************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[2].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[2].use[2]!./src/css/components/overall.css ***!
  \************************************************************************************************************************************************************************************/
.overall {
    display: flex;
    flex-direction: column;
    min-height: calc(var(--vh, 1vh) * 100)
}
/*!***********************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[2].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[2].use[2]!./src/css/components/header.css ***!
  \***********************************************************************************************************************************************************************************/

.header {
    --logo-color: #fbf3d3;
    --logo-hover-color: rgba(251, 243, 211, .8);
    --menu-color: #878787;
    --menu-hover-color: rgba(251, 243, 211, .8);
    width: 100%;
    position: sticky;
    top: 0;
    left: 0;
    z-index: 6001;
    background: transparent;
    mix-blend-mode: difference
}

.header.dark-mode {
    --logo-color: $color_black;
    --logo-hover-color: rgba(251, 243, 211, .4);
    --menu-color: rgba(0, 0, 0, .53);
    --menu-hover-color: #000;
    mix-blend-mode: unset
}

.header__container {
    width: 100%;
    padding-inline:max((100% - var(--wrapper-width)) / 2 + var(--margin),var(--margin));display: flex;
    -moz-column-gap: var(--gutter);
         column-gap: var(--gutter);
    align-items: flex-start;
    min-height: var(--header-height, auto);
    padding-top: 3.5rem;
    position: relative
}

@media screen and (max-width: 1023px) {
    .header__container {
        -moz-column-gap:0;
             column-gap:0
    }
}

@media screen and (max-width: 519px) {
    .header__container {
        align-items:flex-start;
        padding-top: 2rem
    }
}

.header__logo {
    width: 22.6rem;
    color: var(--logo-color);
    transition: color .4s ease;
}

.header__logo-desktop img{
    transition: opacity .4s ease;
}

.header__logo-desktop img:hover {
    opacity: .4;
}

@media (hover: hover) {
    .header__logo:hover {
        color:var(--logo-hover-color);
    }
}

.header__logo:focus-visible {
    transition: color .4s ease;
    color: var(--logo-hover-color);
}

@media screen and (max-width: 1023px) {
    .header__logo {
        width: 22.5rem;
    }
}

@media screen and (max-width: 519px) {
    .header__logo {
        width: 14.2rem;
    }
}

.header__logo svg {
    fill: currentcolor;
    transition: color .4s ease

}

@media screen and (max-width: 519px) {
    .header__logo-desktop {
        display:none
    }
}

.header__logo-mobile {
    display: none
}

@media screen and (max-width: 519px) {
    .header__logo-mobile {
        display:block
    }
}

.header__nav {
    display: block;
    margin-left: auto
}

@media screen and (max-width: 1023px) {
    .header__nav {
        display:none
    }
}

.header__nav .menu-item {
    --lh: 1.2083333333em;
    font-family: 'Pacaembu', sans-serif;
    font-size: 2.4rem;
    font-weight: 400;
    line-height: 1.2083333333;
    letter-spacing: -.01em;
    display: inline-block;
    color: #fbf3d3;
    transition: color .4s ease
}

@media screen and (max-width: 1023px) {
    .header__nav .menu-item {
        font-size:1.8rem;
        line-height: 1.2222222222
    }
}

@media (hover: hover) {
    .header__nav .menu-item:hover {
        color: rgba(251, 243, 211, 0.4);
    }
}

.header__nav .menu-item:focus-visible {
    color: var(--menu-hover-color)
}

.header__nav .menu-item:not(:last-child) a:after {
    content: ",";
    display: inline
}

@media screen and (min-width: 1024px) {
    .header__nav-menu {
        display:flex;
        flex-wrap: wrap;
        gap: 0 1.4rem;
        max-width: 73.8rem
    }
}

.header__nav-toggle {
    --lh: 1.2083333333em;
    font-family: 'Pacaembu', sans-serif;
    font-size: 2.4rem;
    font-weight: 400;
    line-height: 1.2083333333;
    letter-spacing: -.01em;
    display: none;
    margin-left: auto;
    position: relative;
    z-index: 8001;
    color: #fbf3d3;
    transition: color .4s ease;
}

@media screen and (max-width: 1023px) {
    .header__nav-toggle {
        font-size:1.8rem;
        line-height: 1.2222222222
    }
}

@media screen and (max-width: 1023px) {
    .header__nav-toggle {
        display:block;
        margin-left: 11rem
    }
}

@media screen and (max-width: 767px) {
    .header__nav-toggle {
        margin-left:5rem
    }
}

@media screen and (max-width: 519px) {
    .header__nav-toggle {
        margin-right:.2rem
    }
}

@media (hover: hover) {
    .header__nav-toggle:hover {
        color: rgba(251, 243, 211, 0.4);
    }
}

.header__nav-toggle:focus-visible {
    color: rgba(251, 243, 211, 0.4);
}

.menu-visible .header__nav-toggle {
    color: rgba(251, 243, 211, 0.4);
}

.header__nav-toggle span {
    position: relative
}

.header__nav-toggle span:before,.header__nav-toggle span:after {
    content: "";
    display: inline-block;
    width: .2rem;
    height: 1rem;
    position: absolute;
    top: 50%;
    left: -1rem;
    transition: transform .4s ease;
    transform: translateY(-50%) rotate(var(--toggle-rotate));
    background-color: currentColor
}

@media screen and (max-width: 519px) {
    .header__nav-toggle span:before,.header__nav-toggle span:after {
        left:-1.1rem
    }
}

.header__nav-toggle span:before {
    --toggle-rotate: 90deg
}

.header__nav-toggle span:after {
    --toggle-rotate: 0deg
}

.menu-visible .header__nav-toggle span:before {
    --toggle-rotate: 45deg
}

.menu-visible .header__nav-toggle span:after {
    --toggle-rotate: 135deg
}


.header__nav-menu,.header__nav-toggle {
    margin-top: -.3rem
}

.page-template-page-discover .footer,.page-template-page-discover .header {
    display: none
}

.header__nav-toggle {
    margin-left: auto;
}
/*!***********************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[2].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[2].use[2]!./src/css/components/footer.css ***!
  \***********************************************************************************************************************************************************************************/
.footer {
    --padding-block: 3.5rem;
    margin-top: auto;
    padding-block:var(--padding-block);
    background-color: #fbf3d3;
}

@media screen and (max-width: 1023px) {
    .footer {
        --padding-block: 3.4rem
    }
}

@media screen and (max-width: 519px) {
    .footer {
        --padding-block: 2.8rem
    }
}

.footer__wrapper {
    --row-gap: 43rem;
    width: 100%;
    padding-inline:max((100% - var(--wrapper-width)) / 2 + var(--margin),var(--margin));display: flex;
    flex-direction: column;
    row-gap: var(--row-gap)
}

@media screen and (max-width: 1023px) {
    .footer__wrapper {
        --row-gap: 9.5rem
    }
}

@media screen and (max-width: 519px) {
    .footer__wrapper {
        --row-gap: 7.7rem
    }
}

.footer__container {
    color: #0240a9;
    --lh: 1.2083333333em;
    font-family: 'Pacaembu', sans-serif;
    font-size: 2.4rem;
    font-weight: 400;
    line-height: 1.2083333333;
    letter-spacing: -.01em;
    display: grid;
    grid-auto-rows: auto;
    grid-template-columns: repeat(var(--columns),minmax(0,1fr));
    -moz-column-gap: var(--gutter);
         column-gap: var(--gutter);
}

@media screen and (max-width: 1023px) {
    .footer__container {
        font-size:1.7rem;
        line-height: 1.2941176471
    }
}

@media screen and (max-width: 519px) {
    .footer__container {
        line-height:1.1764705882
    }
}

@media screen and (max-width: 1023px) {
    .footer__container {
        row-gap:7.4rem
    }
}

@media screen and (max-width: 519px) {
    .footer__container {
        row-gap:4.7rem
    }
}

.footer__container a {
    transition: background .4s ease;
    background: linear-gradient(to right,transparent,transparent),linear-gradient(to right,currentColor,currentColor);
    background-repeat: no-repeat;
    background-position: 100% 100%,0 100%;
    background-size: 100% 2px,0 2px;
    transition: .4s ease;
    transition-property: opacity,background;
    opacity: 1
}

.footer__container a:focus-visible {
    background-size: 0 2px,100% 2px
}

@media (hover: hover) {
    .footer__container a:hover {
        opacity:.6
    }
}

.footer__container a:focus-visible {
    opacity: .6
}

.footer__address {
    grid-column: 1/span 3
}

@media screen and (max-width: 1023px) {
    .footer__address {
        order:2;
        grid-column: span 3/-1;
        margin-left: auto
    }
}

@media screen and (max-width: 519px) {
    .footer__address {
        order:1;
        grid-column: 1/-1;
        max-width: 22rem;
        margin-left: unset
    }
}

.footer__links {
    grid-column: span 2/-5
}

@media screen and (max-width: 1023px) {
    .footer__links {
        order:3;
        grid-column: 1/span 2
    }
}

@media screen and (max-width: 519px) {
    .footer__links {
        order:2;
        grid-column: 1/-1;
        max-width: 22rem
    }
}

.footer__links-item {
    display: inline-flex;
    align-items: baseline
}

.footer__links-item-wrapper,.footer__links-item-wrapper a {
    display: inline
}

.footer__info {
    grid-column: span 2/-1
}

/* .footer__info {
    grid-column: span 3 / -1;
    justify-self: end;
} */

@media screen and (min-width: 1024px) {
    .footer__info {
        grid-column: span 3 / -1;
        justify-self: end;
    }
}

@media screen and (max-width: 1023px) {
    .footer__info {
        order:1;
        grid-column: 1/span 3
    }
}

@media screen and (max-width: 519px) {
    .footer__info {
        order:3;
        grid-column: 1/-1;
        max-width: 22rem
    }
}

.footer__logotypes {
    margin-inline:1rem;display: flex;
    justify-content: space-between;
    pointer-events: none
}

@media screen and (max-width: 1023px) {
    .footer__logotypes {
        margin-inline:0
    }
}

.footer__logo {
    --width: 100%;
    width: var(--width);
    transition: opacity .4s ease;
    pointer-events: auto;
    opacity: 1
}

@media screen and (max-width: 1023px) {
    .footer__logo {
        --width: 100%;
    }
}

@media (hover: hover) {
    .footer__logo:hover {
        opacity:.6
    }
}

.footer__logo:focus-visible {
    opacity: .6
}

.page-template-page-contact .footer {
    display: none
}

/* vírgula após cada link, exceto o último */
.footer__links-item:not(:last-child) .footer__links-item-wrapper a::after {
    content: ",";
}

/* Itens do address inline, com vírgula após cada link (menos o último) */
.footer__address-list {
    display: inline-block;
}

.footer__address-item {
    display: inline-block;
}

.footer__address-item a::after {
    content: ",";
}

/* Remove a vírgula do último item */
.footer__address-item:last-child a::after {
    content: "";
}

/*!********************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[2].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[2].use[2]!./src/css/components/nav.css ***!
  \********************************************************************************************************************************************************************************/

.nav {
    --clip-bottom: 100%;
    padding-inline:max((100% - var(--wrapper-width)) / 2 + var(--margin),var(--margin));scrollbar-width: none;
    display: flex;
    flex-direction: column;
    width: 100%;
    height: 100%;
    padding-top: calc(var(--header-height) + 9.4rem);
    position: fixed;
    top: 0;
    left: 0;
    z-index: 6000;
    color: #fbf3d3;
    visibility: hidden;
    overflow-y: auto;
    transition: 1.2s ease;
    transition-property: visibility,clip-path;
    pointer-events: none;
    opacity: 1;
    contain: paint;
    touch-action: pan-y;
    overscroll-behavior: contain;
    clip-path: inset(0 0 var(--clip-bottom) 0);
    background-color: #0240a9;
}

.nav::-webkit-scrollbar {
    display: none
}

@media screen and (max-width: 519px) {
    .nav {
        padding-top:calc(var(--header-height) + 7rem)
    }
}

.nav:after {
    content: "";
    height: 3px;
    position: absolute;
    right: 0;
    bottom: calc(var(--clip-bottom));
    left: 0;
    transition: bottom 1.2s ease;
    background-color: #fbf3d3
}

@media screen and (max-width: 1023px) {
    .menu-visible .nav {
        --clip-bottom: 0%;
        visibility: visible;
        pointer-events: auto;
        opacity: 1
    }

    .menu-visible .nav:after {
        bottom: 0;
        transition: bottom 1.2s ease, opacity .2s ease 1.2s;
        opacity: 0
    }
}

.nav__header {
    display: flex;
    align-items: center;
    height: var(--header-height, auto)
}

.nav__burger {
    margin-left: auto
}

.nav__menu {
    margin-bottom: 4rem
}

@media screen and (max-width: 519px) {
    .nav__menu {
        margin-bottom:3rem
    }
}

.nav__media {
    margin: auto calc(var(--margin) * -1) 0;
    position: relative
}

@media screen and (max-width: 519px) {
    .nav__media {
        max-height:calc(var(--vh, 1vh) * 50)
    }
}

.nav__media figure {
    position: relative
}

.nav__media figure img,.nav__media figure iframe {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0
}

.nav__media figure img {
    -o-object-fit: cover;
       object-fit: cover
}

.nav__media figure:before {
    content: "";
    display: block;
    padding-top: 65.8854166667%
}

@media screen and (max-width: 519px) {
    .nav__media figure {
        position:relative
    }

    .nav__media figure img,.nav__media figure iframe {
        width: 100%;
        height: 100%;
        position: absolute;
        top: 0;
        left: 0
    }

    .nav__media figure img {
        -o-object-fit: cover;
           object-fit: cover
    }

    .nav__media figure:before {
        content: "";
        display: block;
        padding-top: 117.6744186047%
    }
}

.nav .menu-item {
    --lh: 1.0833333333em;
    font-family: 'Pacaembu', sans-serif;
    font-size: 6rem;
    font-weight: 400;
    line-height: 1.0833333333;
    letter-spacing: -.01em;
    margin-bottom: 1.4rem;
    padding-bottom: 1.5rem;
    border-bottom: 3px solid #fbf3d3
}

@media screen and (max-width: 1023px) {
    .nav .menu-item {
        font-size:4rem;
        line-height: 1.125
    }
}

@media screen and (max-width: 519px) {
    .nav .menu-item {
        font-size:2rem;
        line-height: 1.25
    }
}

@media screen and (max-width: 519px) {
    .nav .menu-item {
        padding-bottom:1.3rem;
        font-size: 4rem;
        line-height: 1.125
    }
}

.nav .menu-item:last-child {
    margin-bottom: 0;
    padding-bottom: 0;
    border-bottom: unset
}












/* corta a transição do menu quando precisamos fechar imediato */
.nav--immediate,
.nav--immediate::after {
  transition: none !important;
}
/*!************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[2].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[2].use[2]!./src/css/components/single-event-artist.css ***!
  \************************************************************************************************************************************************************************************************/

.single-event-artist {
    --section-height: calc(var(--vh, 1vh) * 100);
    --content-height: 68rem;
    --content-max-height: calc(var(--vh, 1vh) * 71);
    --content-padding-top: 0rem;
    --content-padding-bottom: 0rem;
    display: flex;
    align-items: center;
    min-height: var(--section-height);
    position: relative
}

@media screen and (max-width: 1023px) {
    .single-event-artist {
        --section-height: calc(var(--vh, 1vh) * 200);
        --content-padding-top: 12.2rem;
        --content-padding-bottom: 20.4rem
    }
}

@media screen and (max-width: 519px) {
    .single-event-artist {
        --content-height: 50rem;
        --content-padding-top: 13.2rem;
        --content-padding-bottom: 6.6rem
    }
}

.single-event-artist .italic {
    font-family: Times Ten,serif;
    font-style: italic
}

.single-event-artist__background {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background-color: #000
}

.single-event-artist__background-media {
    width: 50%;
    position: absolute;
    top: 0;
    left: 0
}

@media screen and (max-width: 1023px) {
    .single-event-artist__background-media {
        width:100%;
        height: calc(var(--section-height) / 2)
    }
}

.single-event-artist__background-media:first-child .media__image,.single-event-artist__background-media:first-child .media__cover,.single-event-artist__background-media:first-child .media__video,.single-event-artist__background-media:first-child.media--iframe {
    filter: blur(36px)
}

.single-event-artist__background-media.media--iframe {
    padding-top: calc(var(--section-height) / 2)
}

.single-event-artist__background-media+.single-event-artist__background-media {
    right: 0;
    left: unset
}

@media screen and (max-width: 1023px) {
    .single-event-artist__background-media+.single-event-artist__background-media {
        top:unset;
        bottom: 0
    }
}

.single-event-artist__wrapper {
    width: 100%
}

@media screen and (max-width: 1023px) {
    .single-event-artist__wrapper {
        display:flex;
        flex-direction: column;
        align-items: center;
        align-self: flex-start;
        justify-content: center;
        min-height: calc(var(--vh, 1vh) * 100);
        padding-block:var(--content-padding-top) var(--content-padding-bottom)}
}

.single-event-artist__content {
    display: flex;
    flex-direction: column;
    width: calc(50% - (max((100% - var(--wrapper-width)) / 2 + var(--margin),var(--margin))*2));
    height: var(--content-height);
    max-height: var(--content-max-height);
    margin-left: max((100% - var(--wrapper-width)) / 2 + var(--margin),var(--margin));
    padding: 3.2rem;
    position: relative;
    z-index: 1;
    background-color: var(--background-color, #1d6933)
}

@media screen and (max-width: 1023px) {
    .single-event-artist__content {
        width:calc(100% - 24rem);
        margin-block:0;margin-inline:auto;padding: 3.6rem
    }
}

@media screen and (max-width: 519px) {
    .single-event-artist__content {
        width:calc(100% - 10.4rem)
    }
}

.single-event-artist__name,.single-event-artist__title,.single-event-artist__date {
    margin-bottom: 3.9rem
}

@media screen and (max-width: 1023px) {
    .single-event-artist__name,.single-event-artist__title,.single-event-artist__date {
        margin-bottom:4.3rem
    }
}

@media screen and (max-width: 519px) {
    .single-event-artist__name,.single-event-artist__title,.single-event-artist__date {
        margin-bottom:4rem
    }
}

.single-event-artist__date,.single-event-artist__name {
    order: -1;
    font-family: Times Ten,serif;
    font-size: 2.5rem;
    letter-spacing: -.01em
}

@media screen and (max-width: 1023px) {
    .single-event-artist__date,.single-event-artist__name {
        font-size:2rem
    }
}

@media screen and (max-width: 519px) {
    .single-event-artist__date,.single-event-artist__name {
        font-size:1.5rem
    }
}

.single-event-artist__description,.single-event-artist__title {
    --lh: 1.125em;
    font-family: 'Pacaembu', sans-serif;
    font-size: 4rem;
    font-weight: 400;
    line-height: 1.125;
    letter-spacing: -.01em;
    margin-bottom: 4.8rem;
    font-family: Times Ten,serif
}

@media screen and (max-width: 1023px) {
    .single-event-artist__description,.single-event-artist__title {
        font-size:3rem;
        line-height: 1.1666666667
    }
}

@media screen and (max-width: 519px) {
    .single-event-artist__description,.single-event-artist__title {
        font-size:2rem;
        line-height: 1.25
    }
}

@media screen and (max-width: 1023px) and (min-width: 768px) {
    .single-event-artist__description,.single-event-artist__title {
        font-size:3rem
    }
}

@media screen and (max-width: 519px) and (min-width: 430px) {
    .single-event-artist__description,.single-event-artist__title {
        font-size:2rem
    }
}

.single-event-artist__description em,.single-event-artist__description i,.single-event-artist__title em,.single-event-artist__title i {
    font-family: Times Ten,serif;
    font-style: italic
}

.single-event-artist__description {
    scrollbar-width: none;
    max-height: 100%;
    overflow-y: auto
}

.single-event-artist__description::-webkit-scrollbar {
    display: none
}

.single-event-artist__link {
    margin-top: auto;
    font-style: normal
}

.single-event-artist__close {
    --lh: 1.2083333333em;
    font-family: 'Pacaembu', sans-serif;
    font-size: 2.4rem;
    font-weight: 400;
    line-height: 1.2083333333;
    letter-spacing: -.01em;
    padding: 1rem 1rem 1rem 3rem;
    position: fixed;
    top: 4.3rem;
    right: 5.3rem;
    z-index: 1000;
    color: #fff;
    text-transform: uppercase;
    mix-blend-mode: difference
}

@media screen and (max-width: 1023px) {
    .single-event-artist__close {
        font-size:1.8rem;
        line-height: 1.2222222222
    }
}

@media screen and (max-width: 1023px) {
    .single-event-artist__close {
        top:4.3rem;
        right: 2.5rem
    }
}

@media screen and (max-width: 519px) {
    .single-event-artist__close {
        top:2.3rem;
        right: .8rem
    }
}

.single-event-artist__close span {
    position: relative
}

.single-event-artist__close span:before,.single-event-artist__close span:after {
    content: "";
    display: inline-block;
    width: .3rem;
    height: 1.3rem;
    position: absolute;
    top: 50%;
    left: -1.5rem;
    transform: translateY(-50%) rotate(var(--rotate-close));
    background-color: #fff
}

@media screen and (max-width: 1023px) {
    .single-event-artist__close span:before,.single-event-artist__close span:after {
        left:-1.2rem
    }
}

@media screen and (max-width: 519px) {
    .single-event-artist__close span:before,.single-event-artist__close span:after {
        left:-1.1rem
    }
}

.single-event-artist__close span:before {
    --rotate-close: 45deg
}

.single-event-artist__close span:after {
    --rotate-close: 135deg
}
/*!******************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[2].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[2].use[2]!./src/css/components/single-artist.css ***!
  \******************************************************************************************************************************************************************************************/
.single-artist .footer,.single-event .footer {
    display: none
}

.single-artist .header,.single-event .header {
    pointer-events: none
}

.single-artist .header__container>*:not(.header__logo),.single-event .header__container>*:not(.header__logo) {
    visibility: hidden;
    pointer-events: none;
    opacity: 0
}

.single-artist .header__container .header__logo,.single-event .header__container .header__logo {
    pointer-events: all
}

/*!***************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[2].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[2].use[2]!./src/css/components/rules-page.css ***!
  \***************************************************************************************************************************************************************************************/

.rules-page {
    width: 100%;
    padding-inline:max((100% - var(--wrapper-width)) / 2 + var(--margin),var(--margin));display: grid;
    grid-auto-rows: auto;
    grid-template-columns: repeat(var(--columns),minmax(0,1fr));
    -moz-column-gap: var(--gutter);
         column-gap: var(--gutter);
    row-gap: 5.2rem;
    padding-top: calc(var(--header-height) + 26rem);
    padding-bottom: 31.6rem
}

@media screen and (max-width: 1023px) {
    .rules-page {
        padding-top:calc(var(--header-height) + 21.8rem);
        padding-bottom: 21.8rem
    }
}

@media screen and (max-width: 519px) {
    .rules-page {
        row-gap:4.4rem;
        padding-top: calc(var(--header-height) + 20.4rem);
        padding-bottom: 20.6rem
    }
}

.rules-page__title {
    --lh: 1.0833333333em;
    font-family: 'Pacaembu', sans-serif;
    font-size: 6rem;
    font-weight: 500;
    line-height: 1.0833333333;
    letter-spacing: -.01em;
    grid-column: span 5
}

@media screen and (max-width: 1023px) {
    .rules-page__title {
        font-size:4rem;
        line-height: 1.125
    }
}

@media screen and (max-width: 519px) {
    .rules-page__title {
        font-size:2rem;
        line-height: 1.25
    }
}

@media screen and (max-width: 1023px) {
    .rules-page__title {
        grid-column:1/-1
    }
}

@media screen and (max-width: 519px) {
    .rules-page__title {
        font-size:3rem;
        line-height: 1.1666666667
    }
}

.rules-page__wrapper {
    display: grid;
    grid-auto-rows: auto;
    grid-template-columns: repeat(1,minmax(0,1fr));
    -moz-column-gap: var(--gutter);
         column-gap: var(--gutter);
    grid-column: span 5/-1;
    row-gap: 6rem;
    overflow-wrap: break-word
}

@media screen and (max-width: 1023px) {
    .rules-page__wrapper {
        grid-column:1/-1
    }
}

.rules-page__wrapper h2 {
    text-transform: uppercase
}

.rules-page__wrapper p+h2 {
    margin-top: calc(var(--lh, 1em) * 2)
}

.rules-page__wrapper h2,.rules-page__wrapper p {
    --lh: 1.1666666667em;
    font-family: 'Pacaembu', sans-serif;
    font-size: 3rem;
    font-weight: 400;
    line-height: 1.1666666667;
    letter-spacing: -.01em
}

@media screen and (max-width: 1023px) {
    .rules-page__wrapper h2,.rules-page__wrapper p {
        font-size:2rem;
        line-height: 1.2;
        letter-spacing: -.01em
    }
}

@media screen and (max-width: 1023px) {
    .rules-page__wrapper h2,.rules-page__wrapper p {
        font-size:2.5rem;
        line-height: 1.2;
        letter-spacing: -.01em
    }
}

@media screen and (max-width: 519px) {
    .rules-page__wrapper h2,.rules-page__wrapper p {
        font-size:2rem;
        line-height: 1.25
    }
}

[data-accordion-content] {
  max-height: 0;
  overflow: hidden;
  visibility: hidden;
  transition: max-height 300ms ease;
}

.accordion__item.is-active [data-accordion-content] {
  visibility: visible;
}
/*!***************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[2].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[2].use[2]!./src/css/components/transition.css ***!
  \***************************************************************************************************************************************************************************************/

#transition-overlay {
    position: fixed;
    z-index: 10000;
    -webkit-user-select: none;
    -moz-user-select: none;
         user-select: none;
    pointer-events: none;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0
}

#transition-overlay .transition-overlay__item {
    position: absolute;
    background-color: #fff
}

#transition-overlay .transition-overlay__item--left {
    transform: translate(-100%);
    border-right: 4px solid #000;
    inset: 0 calc(50% - 2px) -4px 0
}

#transition-overlay .transition-overlay__item--right {
    transform: translate(100%);
    border-left: 4px solid #000;
    inset: 0 -4px 0 calc(50% - 2px)
}
/*!************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[2].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[2].use[2]!./src/css/components/cookies.css ***!
  \************************************************************************************************************************************************************************************/

.cookies {
    display: none;
    position: fixed;
    bottom: 0;
    left: 0;
    z-index: 1000;
    visibility: hidden;
    transition: .4s ease;
    transition-property: opacity,visibility;
    opacity: 0
}

.cookies.ovee-component {
    display: flex
}

.no-js .cookies,.cookies.is-visible {
    visibility: visible;
    opacity: 1
}

/*!***********************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[2].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[2].use[2]!./src/css/components/dialog.css ***!
  \***********************************************************************************************************************************************************************************/

.dialog {
    display: none;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 9000;
    visibility: hidden;
    transition: opacity .4s,visibility .4s;
    pointer-events: none;
    opacity: 0;
    touch-action: pan-y;
    backdrop-filter: blur(8px)
}

.dialog:before {
    content: "";
    display: flex;
    flex-direction: column;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
    opacity: .5
}

.dialog.ovee-component {
    display: flex
}

.dialog:not([inert]) {
    visibility: visible;
    -webkit-user-select: auto;
    -moz-user-select: auto;
         user-select: auto;
    transition: opacity .4s,visibility 0ms;
    pointer-events: auto;
    opacity: 1
}

html.menu-visible,html.dialog-open,html.preloader-lock,html.transition-lock {
    overflow: hidden;
    overscroll-behavior: none;
    touch-action: none
}

/*!*****************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[2].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[2].use[2]!./src/css/components/overlay-grid.css ***!
  \*****************************************************************************************************************************************************************************************/

.overlay-grid {
    --column-color: rgba(255, 0, 0, 10%);
    height: 100vh;
    position: fixed;
    inset: 0 var(--margin) auto;
    z-index: 8999;
    pointer-events: none;
    background-image: repeating-linear-gradient(to right,var(--column-color) 0 calc((100% - (var(--columns) - 1) * var(--gutter)) / var(--columns)),transparent calc((100% - (var(--columns) - 1) * var(--gutter)) / var(--columns)) calc((100% - (var(--columns) - 1) * var(--gutter)) / var(--columns) + var(--gutter)));
    background-repeat: no-repeat;
    background-position: center;
    background-size: min(100%,var(--wrapper-width) - 2 * var(--margin))
}

.overlay-grid:has(input[type=checkbox]:checked) {
    background-image: none
}

.overlay-grid label {
    display: flex;
    align-items: center;
    width: auto;
    padding: .5rem 1rem;
    position: absolute;
    top: 50%;
    left: calc(var(--margin) * -1);
    color: var(--color-bg);
    font-size: 1rem;
    white-space: no-wrap;
    text-transform: uppercase;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
         user-select: none;
    transform: rotate(-90deg) translate(-50%);
    transform-origin: top left;
    pointer-events: auto;
    background-color: var(--color-primary);
    box-shadow: 0 0 0 1px var(--color-bg)
}

.overlay-grid label input {
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    position: absolute;
    white-space: nowrap;
    overflow: hidden;
    clip-path: inset(0 0 0 0);
    border: 0
}

@supports not selector(:has(a,b)) {
    .overlay-grid {
        display: none
    }
}
/*!***********************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[2].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[2].use[2]!./src/css/components/events.css ***!
  \***********************************************************************************************************************************************************************************/

.events {
    --media-height: 51.6rem;
    width: 100%;
    padding-inline:max((100% - var(--wrapper-width)) / 2 + var(--margin),var(--margin));padding-block: 41.5rem 0
}

@media screen and (max-width: 1023px) {
    .events {
        padding-block:29rem 0
    }
}

@media screen and (max-width: 519px) {
    .events {
        padding-block:27rem 0
    }
}

.events[data-load-container].is-loading {
    pointer-events: all
}

.events__wrapper {
    display: grid;
    grid-template-columns: 1fr 1fr;
    align-items: flex-start;
    position: relative;
    padding-block:15rem 49rem}

@media screen and (max-width: 1023px) {
    .events__wrapper {
        grid-template-columns:1fr;
        padding-block:10rem 30rem}
}

@media screen and (max-width: 519px) {
    .events__wrapper {
        padding-block:7.4rem 20rem
    }
}

.events__wrapper:before {
    content: "";
    width: 5px;
    position: absolute;
    top: 36px;
    left: 50%;
    z-index: 1;
    background-color: #fbf3d3;
    translate: -50% 0;
    height: 100%
}

@media screen and (max-width: 1023px) {
    .events__wrapper:before {
        display:none
    }
}

.events__copy {
    --lh: 1.1666666667em;
    font-family: 'Pacaembu', sans-serif;
    font-size: 3rem;
    font-weight: 400;
    line-height: 1.1666666667;
    letter-spacing: -.01em;
    max-width: 73.1rem;
    margin-bottom: 7.5rem
}

@media screen and (max-width: 1023px) {
    .events__copy {
        font-size:2.5rem;
        line-height: 1.2
    }
}

@media screen and (max-width: 519px) {
    .events__copy {
        font-size:2rem;
        line-height: 1.25
    }
}

@media screen and (max-width: 1023px) {
    .events__copy {
        margin-bottom:4.4rem
    }
}

@media screen and (max-width: 519px) {
    .events__copy {
        margin-bottom:4.2rem
    }
}

.events__list {
    display: flex;
    flex-direction: column;
    gap: 10rem
}

@media screen and (max-width: 1023px) {
    .events__list {
        gap:5.2rem
    }
}

@media screen and (max-width: 1023px) {
    .events__list {
        gap:4.2rem
    }
}

.events__row--image {
    margin-right: calc(var(--wrapper-bleed-margin) * -1);
    position: sticky;
    top: calc(var(--vh, 1vh) * 50 - var(--media-height) / 2)
}

@media screen and (max-width: 1023px) {
    .events__row--image {
        margin-right:0
    }
}

.events__image {
    width: 100%;
    max-width: 40.6rem;
    min-height: var(--media-height);
    position: relative;
    margin-inline:auto}

@media screen and (max-width: 1023px) {
    .events__image {
        display:none
    }
}

.events__image:not(.events__image--no-default-image) {
    background-color: var(--dominant-color, var(--color-media))
}

.events__image img {
    width: 100%;
    height: 100%;
    aspect-ratio: 406/516;
    -o-object-fit: cover;
       object-fit: cover
}

.events__image.hover-triggered .events__image-event.is-preserved {
    visibility: hidden;
    opacity: 0
}

.events__no-image {
    width: 100%;
    max-width: 40.6rem;
    height: 100%;
    min-height: var(--media-height);
    position: relative;
    margin-inline:auto;aspect-ratio: 406/516
}

@media screen and (max-width: 1023px) {
    .events__no-image {
        display:none
    }
}

.events__image-event {
    position: absolute;
    visibility: hidden;
    transition: .4s ease;
    transition-property: opacity visibility;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    opacity: 0
}

.events__image-event.loaded {
    opacity: 0
}

.events__image-event.is-visible,.events__image-event.is-preserved {
    visibility: visible;
    opacity: 1
}

.events__loader {
    margin-top: 2rem;
    margin-inline:auto}

@media screen and (max-width: 1023px) {
    .events__loader {
        margin-top:4rem
    }
}

.events-item {
    --lh: 1.1666666667em;
    font-family: 'Pacaembu', sans-serif;
    font-size: 3rem;
    font-weight: 400;
    line-height: 1.1666666667;
    letter-spacing: -.01em;
    max-width: 74rem
}

@media screen and (max-width: 1023px) {
    .events-item {
        font-size:2.5rem;
        line-height: 1.2
    }
}

@media screen and (max-width: 519px) {
    .events-item {
        font-size:2rem;
        line-height: 1.25
    }
}

.events-item__link {
    transition: opacity .4s ease
}

@media (hover: hover) {
    .events-item__link:hover {
        opacity:.4
    }
}

.events-item__link:focus-visible {
    opacity: .4
}

.events-item__date {
    padding-left: 6.8rem
}

@media screen and (max-width: 519px) {
    .events-item__date {
        padding-left:2.4rem
    }
}

.events-item__date,.events-item__details {
    display: block
}

.events-item__date,.events-item__title {
    text-transform: uppercase
}

/*!*********************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[2].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[2].use[2]!./src/css/components/form.css ***!
  \*********************************************************************************************************************************************************************************/

.form input:-webkit-autofill,.form input:-webkit-autofill:hover,.form input:-webkit-autofill:focus,.form textarea:-webkit-autofill,.form textarea:-webkit-autofill:hover,.form textarea:-webkit-autofill:focus,.form select:-webkit-autofill,.form select:-webkit-autofill:hover,.form select:-webkit-autofill:focus {
    -webkit-transition: background-color .4s ease 0s;
    transition: background-color .4s ease 0s;
    box-shadow: 0 0 0 1000px #e6242b inset
}

.form__field {
    display: flex;
    flex-direction: column;
    justify-content: flex-start
}

.form__field .form__error {
    display: none
}

.form__label {
    --lh: 1.2083333333em;
    font-family: 'Pacaembu', sans-serif;
    font-size: 2.4rem;
    font-weight: 400;
    line-height: 1.2083333333;
    letter-spacing: -.024em;
    margin-bottom: auto;
    position: relative;
    font-weight: 500
}

@media screen and (max-width: 1023px) {
    .form__label {
        font-size:1.8rem;
        line-height: 1.2222222222;
        letter-spacing: -.018em
    }
}

.form__label-error {
    padding-left: .5rem;
    position: absolute;
    transition: opacity .4s ease;
    opacity: 0
}

.form__label:has(+.has-error) {
    opacity: .4
}

.form__label:has(+.has-error) .form__label-error {
    padding: 0;
    position: static;
    opacity: 1
}

.form__label+.form__radio-button {
    margin-top: 1.2rem
}

@media screen and (max-width: 1023px) {
    .form__label+.form__radio-button {
        margin-top:1.6rem
    }
}

@media screen and (max-width: 519px) {
    .form__label+.form__radio-button {
        margin-top:2rem
    }
}

.form__radio-button {
    margin-bottom: .7rem;
}

@media screen and (max-width: 1023px) {
    .form__radio-button {
        margin-top:.9rem
    }
}

@media screen and (max-width: 519px) {
    .form__radio-button {
        margin-top:.1rem
    }
}

.form__radio-button:last-child {
    margin-bottom: 0
}

.form__input {
    --padding-block: .5rem 1rem;
    --lh: 1.2083333333em;
    font-family: 'Pacaembu', sans-serif;
    font-size: 2.4rem;
    font-weight: 400;
    line-height: 1.2083333333;
    letter-spacing: -.024em;
    padding-block:var(--padding-block);border-bottom: 2px solid #000
}

@media screen and (max-width: 1023px) {
    .form__input {
        font-size:1.8rem;
        line-height: 1.2222222222;
        letter-spacing: -.018em
    }
}

@media screen and (max-width: 1023px) {
    .form__input {
        --padding-block: .8rem .9rem
    }
}

.form__input.has-error {
    color: #0006
}

.form__input--textarea {
    min-height: 26.2rem;
    margin-top: 2.5rem;
    padding: 3.6rem;
    border: 2px solid #000
}

@media screen and (max-width: 1023px) {
    .form__input--textarea {
        margin-top:2rem
    }
}

.form__checkbox-input {
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    position: absolute;
    white-space: nowrap;
    overflow: hidden;
    clip-path: inset(0 0 0 0);
    border: 0
}

.form__checkbox-input+.form__checkbox-label {
    --size: 2.1rem;
    --inner-size: calc(var(--size) - .8rem);
    --position: calc((var(--size) - var(--inner-size)) / 2);
    --position-offset: .3rem;
    padding-left: 3.6rem;
    position: relative;
    pointer-events: auto
}

@media screen and (max-width: 1023px) {
    .form__checkbox-input+.form__checkbox-label {
        --position-offset: 0
    }
}

.form__checkbox-input+.form__checkbox-label:before,.form__checkbox-input+.form__checkbox-label:after {
    content: "";
    display: block;
    width: var(--size);
    height: var(--size);
    position: absolute;
    top: var(--position-offset);
    left: 0
}

.form__checkbox-input+.form__checkbox-label:before {
    border: 2px solid #000
}

.form__checkbox-input+.form__checkbox-label:after {
    width: var(--inner-size);
    height: var(--inner-size);
    top: calc(var(--position) + var(--position-offset));
    left: var(--position);
    transition: opacity .2s ease;
    opacity: 0;
    background: #000
}

@media screen and (max-width: 1023px) {
    .form__checkbox-input+.form__checkbox-label:after {
        top:var(--position)
    }
}

.form__checkbox-input[name=consent] {
    max-width: 80.1rem
}

.form__checkbox-input[name=consent]+.form__checkbox-label {
    --lh: 1.2666666667em;
    font-family: 'Pacaembu', sans-serif;
    font-size: 1.5rem;
    font-weight: 400;
    line-height: 1.2666666667;
    letter-spacing: -.015em
}

.form__checkbox-input[name=consent]+.form__checkbox-label .form__checkbox-label-error {
    color: #0006;
    transition: opacity .4s ease;
    opacity: 0
}

.form__checkbox-input:checked+.form__checkbox-label:after {
    opacity: 1
}

.form__checkbox-input.has-error+.form__checkbox-label {
    color: #0006;
    transition: color .4s ease
}

.form__checkbox-input.has-error+.form__checkbox-label .form__checkbox-label-error {
    color: #0006;
    transition: opacity .4s ease;
    opacity: 1
}

.form__checkbox-input.has-error+.form__checkbox-label:before,.form__checkbox-input.has-error+.form__checkbox-label:after {
    border-color: #0006
}

.is-success .form__submit {
    pointer-events: none
}

.form__ajax-message {
    display: none
}

.form__content {
    display: flex;
    flex-wrap: wrap;
    gap: 2.4rem 2.4rem
}

@media screen and (max-width: 1023px) {
    .form__content {
        gap:1.8rem 1.2rem
    }
}

.form__footer {
    margin-top: 3.7rem
}

.form--sign-up .form__field {
    flex-grow: 1;
    width: calc(50% - 2rem);
    text-align: left
}

@media screen and (max-width: 1023px) {
    .form--sign-up .form__field:first-child,.form--sign-up .form__field:nth-child(2) {
        width:100%
    }
}

@media screen and (max-width: 519px) {
    .form--sign-up .form__field {
        width:100%
    }
}

.form--sign-up .form__field.form__field--checkbox,.form--sign-up .form__field:has([type=email]) {
    width: 100%
}

.form--enquire .form__field {
    flex-grow: 1;
    width: calc(50% - 2rem);
    text-align: left
}

@media screen and (max-width: 1023px) {
    .form--enquire .form__field:first-child,.form--enquire .form__field:nth-child(2) {
        width:100%
    }
}

@media screen and (max-width: 519px) {
    .form--enquire .form__field {
        width:100%
    }
}

.form--enquire .form__field.form__field--checkbox,.form--enquire .form__field:has([type=email]),.form--enquire .form__field.form__field--radio,.form--enquire .form__field.form__field--textarea {
    width: 100%
}

.form__errors {
    display: flex;
    flex-direction: column;
    position: absolute;
    opacity: 0
}
/*!***********************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[2].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[2].use[2]!./src/css/components/titles.css ***!
  \***********************************************************************************************************************************************************************************/

.tiles {
    display: grid;
    min-height: calc(var(--vh, 1vh) * 100)
}

.tiles__close {
    --lh: 1.2083333333em;
    font-family: 'Pacaembu', sans-serif;
    font-size: 2.4rem;
    font-weight: 400;
    line-height: 1.2083333333;
    letter-spacing: -.01em;
    padding: 1rem 1rem 1rem 3rem;
    position: fixed;
    top: 4.3rem;
    right: 5.3rem;
    z-index: 1000;
    color: #fff;
    text-transform: uppercase;
    mix-blend-mode: difference
}

@media screen and (max-width: 1023px) {
    .tiles__close {
        font-size:1.8rem;
        line-height: 1.2222222222
    }
}

@media screen and (max-width: 1023px) {
    .tiles__close {
        top:2.3rem;
        right: 2.5rem
    }
}

@media screen and (max-width: 519px) {
    .tiles__close {
        top:1.3rem;
        right: .8rem
    }
}

.tiles__close span {
    position: relative
}

.tiles__close span:before,.tiles__close span:after {
    content: "";
    display: inline-block;
    width: .3rem;
    height: 1.3rem;
    position: absolute;
    top: 50%;
    left: -1.5rem;
    transform: translateY(-50%) rotate(var(--rotate-close));
    background-color: #fff
}

@media screen and (max-width: 1023px) {
    .tiles__close span:before,.tiles__close span:after {
        left:-1.2rem
    }
}

@media screen and (max-width: 519px) {
    .tiles__close span:before,.tiles__close span:after {
        left:-1.1rem
    }
}

.tiles__close span:before {
    --rotate-close: 45deg
}

.tiles__close span:after {
    --rotate-close: 135deg
}

.tiles__list {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-template-rows: 1fr 1fr
}

@media screen and (max-width: 1023px) {
    .tiles__list {
        display:block
    }
}

.tiles__item {
    display: block;
    position: relative
}

@media (hover: hover) {
    .tiles__item:hover .item-basic {
        opacity:0
    }

    .tiles__item:hover .item-hover {
        pointer-events: all;
        opacity: 1
    }
}

.tiles__item:focus-visible .item-basic {
    opacity: 0
}

.tiles__item:focus-visible .item-hover {
    pointer-events: all;
    opacity: 1
}

@media (pointer: coarse) {
    .tiles__item.is-active .item-basic {
        opacity:0
    }

    .tiles__item.is-active .item-hover {
        pointer-events: all;
        opacity: 1
    }
}

.tiles__item .item-hover {
    display: flex;
    flex-direction: column;
    height: 100%;
    padding: 6.7rem 15.9rem 7.1rem 6.2rem;
    transition: opacity .4s ease;
    pointer-events: none;
    opacity: 0;
    background-color: #fff
}

@media screen and (max-width: 1023px) {
    .tiles__item .item-hover {
        min-height:50.5rem;
        padding: 6.7rem 12.3rem 6.7rem 3.4rem
    }
}

@media screen and (max-width: 519px) {
    .tiles__item .item-hover {
        min-height:46.5rem;
        padding: 7rem 1.5rem
    }
}

.tiles__item .item-hover__title {
    --lh: 1.1666666667em;
    font-family: 'Pacaembu', sans-serif;
    font-size: 3rem;
    font-weight: 400;
    line-height: 1.1666666667;
    letter-spacing: -.01em;
    margin-bottom: 3.9rem
}

@media screen and (max-width: 1023px) {
    .tiles__item .item-hover__title {
        font-size:2rem;
        line-height: 1.2;
        letter-spacing: -.01em
    }
}

@media screen and (max-width: 1023px) {
    .tiles__item .item-hover__title {
        margin-bottom:4.3rem;
        font-size: 2.5rem;
        line-height: 1.2
    }
}

@media screen and (max-width: 519px) {
    .tiles__item .item-hover__title {
        margin-bottom:4rem
    }
}

.tiles__item .item-hover__content {
    --lh: 1.1666666667em;
    font-family: 'Pacaembu', sans-serif;
    font-size: 3rem;
    font-weight: 400;
    line-height: 1.1666666667;
    letter-spacing: -.01em;
    scrollbar-width: none;
    max-height: 25rem;
    margin-bottom: 2rem;
    z-index: 5;
    overflow: auto
}

@media screen and (max-width: 1023px) {
    .tiles__item .item-hover__content {
        font-size:2rem;
        line-height: 1.2;
        letter-spacing: -.01em
    }
}

.tiles__item .item-hover__content::-webkit-scrollbar {
    display: none
}

@media screen and (max-width: 1023px) {
    .tiles__item .item-hover__content {
        max-height:20rem;
        font-size: 2.5rem;
        line-height: 1.2
    }
}

@media screen and (max-width: 519px) {
    .tiles__item .item-hover__content {
        font-size:2rem;
        line-height: 1.25
    }
}

.tiles__item .item-hover__link-holder {
    margin-top: auto
}

.tiles__item .item-hover__link {
    --lh: 1.2083333333em;
    font-family: 'Pacaembu', sans-serif;
    font-size: 2.4rem;
    font-weight: 400;
    line-height: 1.2083333333;
    letter-spacing: -.01em;
    position: relative;
    z-index: 5
}

@media screen and (max-width: 1023px) {
    .tiles__item .item-hover__link {
        font-size:1.8rem;
        line-height: 1.2222222222
    }
}

.tiles__item .item-basic {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 10%;
    position: absolute;
    cursor: default;
    transition: opacity .4s ease;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0
}

.tiles__item .item-basic__title {
    --lh: 1.0833333333em;
    font-family: 'Pacaembu', sans-serif;
    font-size: 6rem;
    font-weight: 400;
    line-height: 1.0833333333;
    letter-spacing: -.01em;
    color: #fff
}

@media screen and (max-width: 1023px) {
    .tiles__item .item-basic__title {
        font-size:4rem;
        line-height: 1.125
    }
}

@media screen and (max-width: 519px) {
    .tiles__item .item-basic__title {
        font-size:2rem;
        line-height: 1.25
    }
}

.tiles__item .item-basic .media {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: -1
}
/*!*****************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[2].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[2].use[2]!./src/css/components/contact-page.css ***!
  \*****************************************************************************************************************************************************************************************/

.contact-page {
    width: 100%;
    padding-inline:max((100% - var(--wrapper-width)) / 2 + var(--margin),var(--margin));display: flex;
    flex-direction: column;
    justify-content: space-between;
    min-height: calc(var(--vh, 1vh) * 100);
    padding-top: 4.2rem;
    padding-bottom: 4.2rem;
    background-color: #0240a9
}

@media screen and (max-width: 1023px) {
    .contact-page {
        padding-bottom:3.3rem
    }
}

@media screen and (max-width: 519px) {
    .contact-page {
        padding-bottom:2rem
    }
}

.contact-page__content {
    --lh: 1.0833333333em;
    font-family: 'Pacaembu', sans-serif;
    font-size: 6rem;
    font-weight: 400;
    line-height: 1.0833333333;
    letter-spacing: -.01em;
    display: flex;
    flex-grow: 1;
    align-items: center;
    max-width: 164.5rem;
    padding: 11.5rem 0 10rem
}

@media screen and (max-width: 1023px) {
    .contact-page__content {
        font-size:4rem;
        line-height: 1.125
    }
}

@media screen and (max-width: 519px) {
    .contact-page__content {
        font-size:2rem;
        line-height: 1.25
    }
}

@media screen and (max-width: 1023px) {
    .contact-page__content {
        max-width:61.1rem;
        padding: 14.5rem 0 10rem
    }
}

@media screen and (max-width: 519px) {
    .contact-page__content {
        max-width:100%;
        padding: 4rem 0 1rem;
        font-size: 3rem;
        line-height: 1.1666666667
    }
}

.contact-page__content .wysiwyg-content {
    --lh: 2rem;
}

@media screen and (max-width: 1023px) {
    .contact-page__content .wysiwyg-content {
        --lh: 4.5rem
    }
}

@media screen and (max-width: 519px) {
    .contact-page__content .wysiwyg-content {
        --lh: 3.7rem
    }
}

.contact-page__footer {
    --lh: 1.2083333333em;
    font-family: 'Pacaembu', sans-serif;
    font-size: 2.4rem;
    font-weight: 400;
    line-height: 1.2083333333;
    letter-spacing: -.01em;
    display: flex;
    align-items: flex-end;
    justify-content: space-between
}

@media screen and (max-width: 1023px) {
    .contact-page__footer {
        font-size:1.7rem;
        line-height: 1.2941176471
    }
}

@media screen and (max-width: 519px) {
    .contact-page__footer {
        line-height:1.1764705882
    }
}

@media screen and (max-width: 1023px) and (min-width: 768px) {
    .contact-page__footer {
        font-size:2.4rem;
        line-height: 1.2083333333
    }
}

@media screen and (max-width: 519px) {
    .contact-page__footer {
        flex-direction:column;
        gap: 4.2rem;
        align-items: flex-start
    }
}

.contact-page__footer-info br {
    display: none
}

@media screen and (max-width: 1023px) {
    .contact-page__footer-info br {
        display:block
    }
}

.contact-page__footer-links {
    max-width: 50%
}

@media screen and (max-width: 519px) {
    .contact-page__footer-links {
        max-width:unset
    }
}

.contact-page__footer-link {
    display: inline-flex;
    align-items: baseline;
    transition: opacity .4s ease;
    opacity: 1
}

@media (hover: hover) {
    .contact-page__footer-link:hover {
        opacity:.6
    }
}

.contact-page__footer-link:focus-visible {
    opacity: .6
}

.contact-page__footer-link:not(:last-child):after {
    content: ",";
    display: inline
}

.break-safe {
  overflow-wrap: anywhere;
  white-space: normal;
}

/* COntact Sep */
.contact-page__content .contact-sep{
  display: inline-block;
  width: 6px;
  height: 6px;
  background: currentColor;
  vertical-align: middle;
}

.contact-page__content .contact-line{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  -moz-column-gap:.4ch;
       column-gap:.4ch;
}
.contact-page__content .contact-line .contact-sep{
  width: 6px; 
  height: 6px; 
  background: currentColor;
}

@media(max-width: 480px) {
    .contact-page__content .contact-line{
        display:initial;
        -moz-column-gap:0;
             column-gap:0;
    }
    .contact-page__content .contact-sep{
        margin-inline: 10px;
    }
}
/*!**********************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[2].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[2].use[2]!./src/css/components/media.css ***!
  \**********************************************************************************************************************************************************************************/

.media {
    width: 100%;
    height: 100%;
    position: relative;
    z-index: 0;
    overflow: hidden;
    isolation: isolate
}

@supports (overflow: clip) {
    .media {
        overflow:clip
    }
}

.media--landscape {
    aspect-ratio: 16/9
}

.media--landscape-alt {
    aspect-ratio: 3.1/2
}

.media--portrait {
    aspect-ratio: 3/4
}

.media--portrait-alt {
    aspect-ratio: 4/5
}

.media--square {
    aspect-ratio: 1
}

.media--auto .media__image,.media--auto .media__video {
    height: 100%;
    position: static
}

.media--video {
    background-color: var(--color-media)
}

.media__figure {
    overflow: clip;
    width: 100%;
    height: 100%;
    position: relative;
    background-color: var(--dominant-color, var(--color-media))
}

@supports not (overflow: clip) {
    .media__figure {
        overflow:hidden
    }
}

.media__cover,.media__cover-wrapper,.media__image,.media__video {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    -webkit-user-select: none;
    -moz-user-select: none;
         user-select: none;
    transform: scale(1.005);
    pointer-events: none;
    -o-object-fit: cover;
       object-fit: cover
}

.media__cover-wrapper {
    transition: opacity .4s ease;
    opacity: 1
}

.media__video--desktop {
    display: flex
}

@media screen and (max-width: 1023px) {
    .media__video--desktop {
        display:none
    }
}

.media__video--mobile {
    display: none
}

@media screen and (max-width: 1023px) {
    .media__video--mobile {
        display:flex
    }
}

.media--iframe>div {
    contain: strict;
    width: 100%;
    height: 100%;
    position: absolute!important;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%) scale(1.001)
}

.media--iframe.media--auto {
    padding-top: calc(var(--media-h, 16) / var(--media-w, 9) * 100%)
}

.media--iframe iframe {
    width: 200vmax!important;
    height: 100vw!important;
    min-height: 100%;
    max-height: 100%;
    position: absolute;
    top: 0!important;
    left: 50%!important;
    -webkit-user-select: none;
    -moz-user-select: none;
         user-select: none;
    transform: translate(-50%) scale(1.005);
    pointer-events: none
}

@media screen and (min-width: 1024px) {
    .links-list__media .media--iframe {
        padding-top:var(--media-height)
    }
}

.text-two-columns__logo-item .media__figure {
    background-color: unset
}

@media screen and (min-width: 1024px) {
    .text-with-sticky-media__sticky-image .media--iframe {
        padding-top:var(--media-height)
    }
}


.media-centered {
    position: relative;
    padding-block:15rem 15rem}

@media screen and (max-width: 1023px) {
    .media-centered {
        padding-block:8rem 8rem
    }
}

.media-centered:before {
    content: "";
    width: 5px;
    position: absolute;
    left: 50%;
    z-index: 1;
    background-color: #fbf3d3;
    translate: -50% 0;
    height: calc(100% + 1px);
    top: -1px
}

@media screen and (max-width: 1023px) {
    .media-centered:before {
        display:none
    }
}

.media-centered__wrapper {
    width: 100%;
    padding-inline:max((100% - var(--wrapper-width)) / 2 + var(--margin),var(--margin));display: grid;
    grid-auto-rows: auto;
    grid-template-columns: repeat(var(--columns),minmax(0,1fr));
    -moz-column-gap: var(--gutter);
         column-gap: var(--gutter)
}

.media-centered__image {
    grid-column: 1/-1;
    position: relative
}

.media-centered__media {
    margin-inline:auto;max-width: 119.2rem;
    max-height: 72rem
}

@media screen and (max-width: 1023px) {
    .media-centered__media {
        max-height:60rem
    }
}

@media screen and (max-width: 519px) {
    .media-centered__media {
        max-height:50rem
    }
}

.media-fullscreen {
    height: calc(var(--vh, 1vh) * 100);
    margin-block:12.5rem 0}

@media screen and (max-width: 1023px) {
    .media-fullscreen {
        height:90rem;
        margin-block:8rem 0}
}

@media screen and (max-width: 519px) {
    .media-fullscreen {
        height:50rem
    }
}


@media(min-width: 1024px) {
    .media--adjustment {
        height: initial;
    }
}
/*!***************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[2].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[2].use[2]!./src/css/components/links-list.css ***!
  \***************************************************************************************************************************************************************************************/

.links-list {
    --spacing: 29.5rem 50rem;
    --media-height: 51.6rem;
    width: 100%;
    padding-inline:max((100% - var(--wrapper-width)) / 2 + var(--margin),var(--margin));display: flex;
    flex-direction: column;
    justify-content: center;
    min-height: calc(var(--media-height) + var(--spacing) * 2);
    position: relative;
    padding-block:var(--spacing)}

@media screen and (max-width: 1023px) {
    .links-list {
        --spacing: 7.7rem 30rem;
        --media-height: 0rem
    }
}

@media screen and (max-width: 519px) {
    .links-list {
        --spacing: 5rem 20rem
    }
}

.links-list:before {
    content: "";
    width: 5px;
    position: absolute;
    top: 0;
    left: 50%;
    z-index: 1;
    background-color: #fbf3d3;
    /* background-color: #000; */
    translate: -50% 0;
    height: 100%
}

@media screen and (max-width: 1023px) {
    .links-list:before {
        display:none
    }
}

.links-list__list {
    position: relative
}

@media screen and (min-width: 1024px) {
    .links-list__item+.links-list__item .links-list__item-line:after {
        content:"";
        width: 100%;
        height: 5px;
        position: absolute;
        left: 0;
        background-color: #fbf3d3;
        /* background-color: #000; */
        top: 0;
        visibility: visible
    }
}

@media screen and (min-width: 1024px) and (max-width: 1023px) {
    .links-list__item+.links-list__item .links-list__item-line:after {
        height:4px
    }
}

@media screen and (min-width: 1024px) and (max-width: 519px) {
    .links-list__item+.links-list__item .links-list__item-line:after {
        height:3px
    }
}

@media screen and (min-width: 1024px) {
    .links-list__item:first-child .links-list__link {
        padding-block:1.2rem 1.3rem
    }

    .links-list__item:not(:first-child) .links-list__link {
        padding-block:1.8rem 1.3rem}

    .links-list__item:last-child .links-list__link {
        padding-block:1.8rem 1.2rem}
}

.links-list__item-line {
    display: block;
    position: relative;
    visibility: hidden;
    pointer-events: none
}

@media screen and (max-width: 1023px) {
    .links-list__item-line {
        display:none
    }
}

@media screen and (max-width: 1023px) {
    .links-list__item+.links-list__item {
        border-top:4px solid #fbf3d3;
        /* border-top:4px solid #000; */
    }
}

@media screen and (max-width: 519px) {
    .links-list__item+.links-list__item {
        border-top-width:3px
    }
}

.links-list__item:first-child .links-list__media {
    visibility: visible;
    opacity: 1
}

.links-list__link {
    --lh: 1.0833333333em;
    font-family: 'Pacaembu', sans-serif;
    font-size: 6rem;
    font-weight: 400;
    line-height: 1.0833333333;
    letter-spacing: -.01em;
    padding-block:1.2rem;transition: opacity .4s ease
}

@media screen and (max-width: 1023px) {
    .links-list__link {
        font-size:4rem;
        line-height: 1.125
    }
}

@media screen and (max-width: 519px) {
    .links-list__link {
        font-size:2rem;
        line-height: 1.25
    }
}

@media screen and (max-width: 1023px) {
    .links-list__link {
        padding-block:1rem
    }
}

@media screen and (max-width: 519px) {
    .links-list__link {
        padding-block:.6rem
    }
}

@media (hover: hover) {
    .links-list__link:hover {
        opacity:.4
    }
}

.links-list__link:focus-visible {
    opacity: .4
}

@media (hover: hover) {
    .links-list__link:hover~.links-list__media {
        visibility:visible;
        opacity: 1
    }
}

.links-list__link:focus-visible~.links-list__media {
    visibility: visible;
    opacity: 1
}

.links-list__media {
    width: 100%;
    max-width: 40.6rem;
    min-height: var(--media-height);
    position: absolute;
    top: 50%;
    right: 20rem;
    z-index: 1;
    visibility: hidden;
    opacity: 0;
    translate: 0 -50%
}

@media screen and (max-width: 1023px) {
    .links-list__media {
        display:none
    }
}

.links-list__media--default {
    visibility: visible;
    opacity: 1
}

@media screen and (max-width: 1023px) {
    .links-list__media--default {
        display:block;
        max-width: 100%;
        margin-top: 15.4rem;
        position: static;
        translate: 0
    }
}

@media screen and (max-width: 519px) {
    .links-list__media--default {
        margin-top:10rem
    }
}



.links-list__media img,.links-list__media video {
    aspect-ratio: 406/516;
    -o-object-fit: cover;
       object-fit: cover
}
/*!********************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[2].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[2].use[2]!./src/css/components/text-one-column.css ***!
  \********************************************************************************************************************************************************************************************/

.text-one-column {
    width: 100%;
    padding-inline:max((100% - var(--wrapper-width)) / 2 + var(--margin),var(--margin));display: grid;
    grid-auto-rows: auto;
    grid-template-columns: repeat(var(--columns),minmax(0,1fr));
    -moz-column-gap: var(--gutter);
         column-gap: var(--gutter);
    padding-block-end:0;position: relative
}

.text-one-column--start-line {
    grid-column: 1/-1;
    display: block;
    position: relative;
    padding-block-start:25rem;visibility: hidden
}

.text-one-column--start-line:before {
    content: "";
    width: 5px;
    position: absolute;
    top: 0;
    left: 50%;
    z-index: 1;
    background-color: #fbf3d3;
    translate: -50% 0;
    height: 80%;
    top: -.1rem
}

/* News Pages */
.page-template-vertical-farm .text-one-column--start-line:before {
    height: 70%;
}

@media screen and (max-width: 1023px) {
    .text-one-column--start-line:before {
        display:none
    }
}

@media screen and (max-width: 1023px) {
    .text-one-column--start-line {
        padding-block-start:0
    }
}

@media screen and (max-width: 519px) {
    .text-one-column--start-line {
        padding-block-start:8rem
    }
}

.text-one-column__headline {
    grid-column: 1/-1
}

.text-one-column__body {
    grid-column: 1/-1;
    --lh: 1.1666666667em;
    font-family: 'Pacaembu', sans-serif;
    font-size: 3rem;
    font-weight: 400;
    line-height: 1.1666666667;
    letter-spacing: -.01em;
    display: grid;
    grid-auto-rows: auto;
    grid-template-columns: repeat(var(--columns),minmax(0,1fr));
    -moz-column-gap: var(--gutter);
         column-gap: var(--gutter);
    margin-left: auto;
    padding-top: 15rem;
    padding-bottom: 11.5rem;
    position: relative
}

@media screen and (max-width: 1023px) {
    .text-one-column__body {
        font-size:2.5rem;
        line-height: 1.2
    }
}

@media screen and (max-width: 519px) {
    .text-one-column__body {
        font-size:2rem;
        line-height: 1.25
    }
}

@media screen and (max-width: 1023px) {
    .text-one-column__body {
        padding-top:12rem;
        padding-bottom: 7.2rem
    }
}

@media screen and (max-width: 519px) {
    .text-one-column__body {
        padding-top:7.4rem;
        padding-bottom: 5rem
    }
}

.text-one-column__body-text {
    grid-column-start: 8;
    grid-column-end: -1
}

@media screen and (max-width: 1023px) {
    .text-one-column__body-text {
        grid-column:1/-1
    }
}

.text-one-column__link {
    grid-column-start: 8;
    grid-column-end: -1;
    --lh: 1.15625em;
    font-family: 'Pacaembu', sans-serif;
    font-size: 3.2rem;
    font-weight: 400;
    line-height: 1.15625;
    letter-spacing: -.01em;
    margin-top: 12.5rem
}

@media screen and (max-width: 1023px) {
    .text-one-column__link {
        font-size:2.5rem;
        line-height: 1.2;
        letter-spacing: 0
    }
}

@media screen and (max-width: 519px) {
    .text-one-column__link {
        font-size:2rem;
        line-height: 1.25;
        letter-spacing: 0
    }
}

@media screen and (max-width: 1023px) {
    .text-one-column__link {
        grid-column:1/-1;
        margin-top: 4.5rem
    }
}

@media screen and (max-width: 519px) {
    .text-one-column__link {
        margin-top:4.2rem
    }
}

.text-one-column--vertical-line .text-one-column__body:before {
    content: "";
    width: 5px;
    position: absolute;
    top: 36px;
    left: 50%;
    z-index: 1;
    background-color: #fbf3d3;
    translate: -50% 0;
    height: 100%
}

@media screen and (max-width: 1023px) {
    .text-one-column--vertical-line .text-one-column__body:before {
        display:none
    }
}
/*!*********************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[2].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[2].use[2]!./src/css/components/text-two-columns.css ***!
  \*********************************************************************************************************************************************************************************************/

.text-two-columns {
    width: 100%;
    padding-inline:max((100% - var(--wrapper-width)) / 2 + var(--margin),var(--margin))}

.text-two-columns:not(.has-headline) .text-two-columns__wrapper {
    border-top:5px solid #fbf3d3;
    padding-block:24.6rem 12.5rem
}

@media screen and (max-width: 1023px) {
    .text-two-columns:not(.has-headline) .text-two-columns__wrapper {
        border-top-width:4px;
        padding-block:15rem 7.5rem}
}

@media screen and (max-width: 519px) {
    .text-two-columns:not(.has-headline) .text-two-columns__wrapper {
        border-top-width:3px;
        padding-block:10rem 5rem}
}

.text-two-columns.has-headline .text-two-columns__wrapper {
    padding-block:33.4rem 12.5rem}

@media screen and (max-width: 1023px) {
    .text-two-columns.has-headline .text-two-columns__wrapper {
        padding-block:23.5rem 7.5rem
    }
}

@media screen and (max-width: 519px) {
    .text-two-columns.has-headline .text-two-columns__wrapper {
        padding-block:8rem 5rem
    }
}

.text-two-columns__headline {
    grid-column: 1/-1
}

.text-two-columns__wrapper {
    grid-column: 1/-1;
    --lh: 1.1666666667em;
    font-family: 'Pacaembu', sans-serif;
    font-size: 3rem;
    font-weight: 400;
    line-height: 1.1666666667;
    letter-spacing: -.01em;
    display: grid;
    grid-template-columns: 1fr 1fr;
    row-gap: 15rem;
    align-items: flex-start;
    position: relative
}

@media screen and (max-width: 1023px) {
    .text-two-columns__wrapper {
        font-size:2.5rem;
        line-height: 1.2
    }
}

@media screen and (max-width: 519px) {
    .text-two-columns__wrapper {
        font-size:2rem;
        line-height: 1.25
    }
}

.text-two-columns__wrapper:before {
    content: "";
    width: 5px;
    position: absolute;
    top: 36px;
    left: 50%;
    z-index: 1;
    background-color: #fbf3d3;
    translate: -50% 0;
    height: 100%
}

/* New Pages */
.page-template-food-hall .text-two-columns__wrapper:before,
.page-template-terrace .text-two-columns__wrapper:before,
.page-template-plant-room .text-two-columns__wrapper:before,
.page-template-main-space .text-two-columns__wrapper:before,
.page-template-loft .text-two-columns__wrapper:before,
.page-template-private-hire .text-two-columns__wrapper:before {
    top: 0;
}

@media screen and (max-width: 1023px) {
    .text-two-columns__wrapper:before {
        display:none
    }
}

@media screen and (max-width: 1023px) {
    .text-two-columns__wrapper {
        grid-template-columns:1fr;
        row-gap: 12.8rem
    }
}

@media screen and (max-width: 519px) {
    .text-two-columns__wrapper {
        row-gap:7.6rem
    }
}

.text-two-columns__content {
    max-width: 73.1rem
}

.text-two-columns__list {
    --col-gap: 1.6rem;
    display: flex;
    flex-wrap: wrap;
    gap: 3rem var(--col-gap);
    max-width: 58.2rem;
    margin-inline:auto;margin-top: var(--lh)
}

@media screen and (max-width: 1023px) {
    .text-two-columns__list {
        --col-gap: 1.2rem;
        max-width: 52.5rem;
        margin-inline:0 auto}
}

@media screen and (max-width: 519px) {
    .text-two-columns__list {
        --col-gap: 1rem
    }
}

.text-two-columns__logos-list {
    --col-gap: 1.6rem;
    --media-width: 13.6rem;
    --padding-left: 16rem;
    --columns: 3;
    --row-gap: 2.7rem;
    display: grid;
    grid-auto-rows: auto;
    grid-template-columns: repeat(var(--columns),minmax(0,1fr));
    -moz-column-gap: var(--gutter);
         column-gap: var(--gutter);
    gap: var(--row-gap) var(--col-gap);
    max-width: calc(var(--media-width) * 3 + var(--col-gap) * 2 + var(--padding-left));
    margin-top: calc(var(--lh) * -1);
    padding-left: var(--padding-left);
    margin-inline:auto}

@media screen and (max-width: 1365px) {
    .text-two-columns__logos-list {
        --padding-left: 12rem;
        --media-width: 15rem
    }
}

@media screen and (max-width: 1279px) {
    .text-two-columns__logos-list {
        --padding-left: 10rem;
        --media-width: 17rem
    }
}

@media screen and (max-width: 1023px) {
    .text-two-columns__logos-list {
        --col-gap: 1.2rem;
        --padding-left: 0;
        --columns: 4;
        --row-gap: 0;
        margin-top: 0;
        margin-inline:0 auto}
}

@media screen and (max-width: 519px) {
    .text-two-columns__logos-list {
        --col-gap: 1rem;
        margin-top: 3rem
    }
}

.text-two-columns__logo-item {
    grid-column: span 1
}



.text-two-columns__logo-item:is(a) {
    transition: opacity .4s ease
}

@media (hover: hover) {
    .text-two-columns__logo-item:is(a):hover {
        opacity:.8
    }
}

.text-two-columns__logo-item:is(a):focus-visible {
    opacity: .8
}

.text-two-columns__item {
    flex: 1 1 calc(50% - var(--col-gap) / 2)
}
/*!*************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[2].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[2].use[2]!./src/css/components/hp-modal.css ***!
  \*************************************************************************************************************************************************************************************/

.hp-modal {
    --padding: 6.2rem 6.8rem;
    --width: 89rem;
    --height: 59rem;
    display: flex;
    flex-direction: column;
    gap: 3.6rem;
    max-width: var(--width);
    height: var(--height);
    max-height: calc(var(--vh, 1vh) * 90);
    margin: auto;
    padding: var(--padding);
    position: relative;
    z-index: 1;
    background-color: #1d6933
}

@media screen and (max-width: 1023px) {
    .hp-modal {
        --padding: 3.6rem;
        --width: 52rem;
        --height: 52.8rem
    }
}

@media screen and (max-width: 519px) {
    .hp-modal {
        --padding: 3.7rem;
        --width: 32.3rem
    }
}

.hp-modal__content {
    --lh: 1.1666666667em;
    font-family: 'Pacaembu', sans-serif;
    font-size: 3rem;
    font-weight: 400;
    line-height: 1.1666666667;
    letter-spacing: -.01em;
    scrollbar-width: none;
    height: 100%;
    overflow-y: auto
}

@media screen and (max-width: 519px) {
    .hp-modal__content {
        font-size:2rem;
        line-height: 1.25
    }
}

.hp-modal__content::-webkit-scrollbar {
    display: none
}

.hp-modal__content b,.hp-modal__content strong {
    font-family: 'Pacaembu', sans-serif;
    font-weight: 400
}

.hp-modal__cta {
    --lh: 1.2083333333em;
    font-family: 'Pacaembu', sans-serif;
    font-size: 2.4rem;
    font-weight: 400;
    line-height: 1.2083333333;
    letter-spacing: -.024em;
    width: -moz-fit-content;
    width: fit-content;
    font-size: 3rem;
    line-height: 1.2333333333;
    text-align: left;
    letter-spacing: 0;
    text-transform: uppercase
}

@media screen and (max-width: 1023px) {
    .hp-modal__cta {
        font-size:2rem;
        line-height: 1.2;
        letter-spacing: 0
    }
}

@media (hover: hover) {
    .hp-modal__cta:hover .hp-modal__cta-icon {
        transform:rotate(180deg) translateZ(0)
    }
}

.hp-modal__cta:focus-visible .hp-modal__cta-icon {
    transform: rotate(180deg) translateZ(0)
}

.hp-modal__cta-icon {
    display: inline-flex;
    position: relative;
    transition: transform .4s ease;
    transform: rotate(0) translateZ(0);
    opacity: 1;
    backface-visibility: hidden
}
/*!*********************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[2].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[2].use[2]!./src/css/components/section-headline.css ***!
  \*********************************************************************************************************************************************************************************************/
.section-headline {
    --lh: calc(160 / 180);
    /*--top-line: calc(var(--lh) / 2 * 1.1em); */
    --top-line: calc(var(--lh) * 1.2em);

    width: 100%;
    padding-inline:max((100% - var(--wrapper-width)) / 2 + var(--margin),var(--margin));position: relative;
    font-size: 18rem;
    font-weight: 400;
    line-height: var(--lh);
    text-align: center;
    overflow-wrap: break-word
}

@media screen and (max-width: 1023px) {
    .section-headline {
        --lh: 1 ;
        font-size: 9.5rem
    }
}

@media screen and (max-width: 519px) {
    .section-headline {
        --lh: 1 ;
        font-size: 4rem
    }
}

.section-headline:after {
    content: "";
    width: 100%;
    height: 5px;
    position: absolute;
    top: 0;
    left: 0;
    background-color: #fbf3d3;
    top: var(--top-line)
}

@media screen and (max-width: 1023px) {
    .section-headline:after {
        height:4px
    }
}

@media screen and (max-width: 519px) {
    .section-headline:after {
        height:3px
    }
}
/*!***************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[2].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[2].use[2]!./src/css/components/text-with-sticky-media.css ***!
  \***************************************************************************************************************************************************************************************************/

.text-with-sticky-media {
    --media-height: 68.8rem;
    width: 100%;
    padding-inline:max((100% - var(--wrapper-width)) / 2 + var(--margin),var(--margin))}

.text-with-sticky-media__headline {
    grid-column: 1/-1
}

.text-with-sticky-media__wrapper {
    grid-column: 1/-1;
    display: grid;
    grid-template-columns: 1fr 1fr;
    row-gap: 14.5rem;
    align-items: flex-start;
    position: relative;
    padding-block:25rem 18rem}

.text-with-sticky-media__wrapper:before {
    content: "";
    width: 5px;
    position: absolute;
    top: 36px;
    left: 50%;
    z-index: 1;
    background-color: #fbf3d3;
    translate: -50% 0;
    height: 100%
}

@media screen and (max-width: 1023px) {
    .text-with-sticky-media__wrapper:before {
        display:none
    }
}

@media screen and (max-width: 1023px) {
    .text-with-sticky-media__wrapper {
        grid-template-columns:1fr;
        padding-block:9rem 10rem}
}

@media screen and (max-width: 519px) {
    .text-with-sticky-media__wrapper {
        padding-block:8rem 8.8rem;
        row-gap: 15rem
    }
}

.text-with-sticky-media__col--image {
    margin-right: calc(var(--wrapper-bleed-margin) * -1);
    position: sticky;
    top: calc(var(--vh, 1vh) * 50 - var(--media-height) / 2)
}

@media screen and (max-width: 1023px) {
    .text-with-sticky-media__col--image {
        margin-right:0
    }
}

.text-with-sticky-media__sticky-image {
    width: 100%;
    max-width: 56.1rem;
    margin-inline:auto;min-height: var(--media-height);
    padding-left: 2rem
}

@media screen and (max-width: 1023px) {
    .text-with-sticky-media__sticky-image {
        max-width:100%;
        min-height: unset;
        padding-left: 0
    }
}



.text-with-sticky-media__sticky-image img,.text-with-sticky-media__sticky-image video {
    aspect-ratio: 541/688;
    -o-object-fit: cover;
       object-fit: cover
}

.text-with-sticky-media__content {
    max-width: 73.9rem
}

.text-with-sticky-media__content .wysiwyg-content h1,.text-with-sticky-media__content .wysiwyg-content h2 {
    --lh: 1.0833333333em;
    font-family: 'Pacaembu', sans-serif;
    font-size: 6rem;
    font-weight: 400;
    line-height: 1.0833333333;
    letter-spacing: -.01em;
    margin-bottom: 6rem
}

@media screen and (max-width: 1023px) {
    .text-with-sticky-media__content .wysiwyg-content h1,.text-with-sticky-media__content .wysiwyg-content h2 {
        font-size:4rem;
        line-height: 1.125
    }
}

@media screen and (max-width: 519px) {
    .text-with-sticky-media__content .wysiwyg-content h1,.text-with-sticky-media__content .wysiwyg-content h2 {
        font-size:2rem;
        line-height: 1.25
    }
}

@media screen and (max-width: 1023px) {
    .text-with-sticky-media__content .wysiwyg-content h1,.text-with-sticky-media__content .wysiwyg-content h2 {
        margin-bottom:4.7rem
    }
}

@media screen and (max-width: 519px) {
    .text-with-sticky-media__content .wysiwyg-content h1,.text-with-sticky-media__content .wysiwyg-content h2 {
        margin-bottom:4rem;
        font-size: 2.5rem;
        line-height: 1.2
    }
}

.text-with-sticky-media__content .wysiwyg-content p {
    --lh: 1.1666666667em;
    font-family: 'Pacaembu', sans-serif;
    font-size: 3rem;
    font-weight: 400;
    line-height: 1.1666666667;
    letter-spacing: -.01em
}

@media screen and (max-width: 1023px) {
    .text-with-sticky-media__content .wysiwyg-content p {
        font-size:2rem;
        line-height: 1.2;
        letter-spacing: -.01em
    }
}

@media screen and (max-width: 1023px) {
    .text-with-sticky-media__content .wysiwyg-content p {
        font-size:2.5rem;
        line-height: 1.2
    }
}

@media screen and (max-width: 519px) {
    .text-with-sticky-media__content .wysiwyg-content p {
        font-size:2rem;
        line-height: 1.25
    }
}

.text-with-sticky-media__content .wysiwyg-content p+h1,.text-with-sticky-media__content .wysiwyg-content p+h2 {
    margin-top: 11.4rem
}

@media screen and (max-width: 1023px) {
    .text-with-sticky-media__content .wysiwyg-content p+h1,.text-with-sticky-media__content .wysiwyg-content p+h2 {
        margin-top:10rem
    }
}
/*!********************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[2].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[2].use[2]!./src/css/components/wysiwyg-content.css ***!
  \********************************************************************************************************************************************************************************************/


.wysiwyg-content,.sample-wysiwyg {
    --indent-value: 6.8rem
}

@media screen and (max-width: 519px) {
    .wysiwyg-content,.sample-wysiwyg {
        --indent-value: 2.4rem
    }
}

.wysiwyg-content ul li,.sample-wysiwyg ul li {
    padding-left: 1em;
    position: relative
}

.wysiwyg-content ul li:before,.sample-wysiwyg ul li:before {
    content: "· ";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    color: #1d6933;
    font-weight: 700
}

.wysiwyg-content ul li:not(:last-child),.sample-wysiwyg ul li:not(:last-child) {
    margin-bottom: 1em
}

.wysiwyg-content ol,.sample-wysiwyg ol {
    list-style-position: inside;
    list-style-type: decimal
}

.wysiwyg-content h1,.sample-wysiwyg h1 {
    --lh: 1.0833333333em;
    font-family: 'Krana Fat A', sans-serif;
    font-size: 6rem;
    /* font-weight: 500; */
    line-height: 1.0833333333;
    letter-spacing: -.01em
}

@media screen and (max-width: 1023px) {
    .wysiwyg-content h1,.sample-wysiwyg h1 {
        font-size:4rem;
        line-height: 1.125
    }
}

@media screen and (max-width: 519px) {
    .wysiwyg-content h1,.sample-wysiwyg h1 {
        font-size:2rem;
        line-height: 1.25
    }
}

@media screen and (max-width: 519px) {
    .wysiwyg-content h1,.sample-wysiwyg h1 {
        font-size:2.5rem;
        line-height: 1.2
    }
}

.wysiwyg-content h2,.sample-wysiwyg h2 {
    --lh: 1.1666666667em;
    font-family: 'Krana Fat A', sans-serif;
    font-size: 3rem;
    /* font-weight: 500; */
    line-height: 1.1666666667;
    letter-spacing: -.01em
}

@media screen and (max-width: 1023px) {
    .wysiwyg-content h2,.sample-wysiwyg h2 {
        font-size:2rem;
        line-height: 1.2;
        letter-spacing: -.01em
    }
}

.wysiwyg-content h3,.sample-wysiwyg h3 {
    --lh: 1.2083333333em;
    font-family: 'Krana Fat A', sans-serif;
    font-size: 2.4rem;
    /* font-weight: 500; */
    line-height: 1.2083333333;
    letter-spacing: -.01em
}

@media screen and (max-width: 1023px) {
    .wysiwyg-content h3,.sample-wysiwyg h3 {
        font-size:1.7rem;
        line-height: 1.2941176471
    }
}

@media screen and (max-width: 519px) {
    .wysiwyg-content h3,.sample-wysiwyg h3 {
        line-height:1.1764705882
    }
}

.wysiwyg-content h4,.sample-wysiwyg h4 {
    --lh: 1.2em;
    font-family: 'Krana Fat A', sans-serif;
    font-size: 2rem;
    line-height: 1.2
}

.wysiwyg-content h1:not(:last-child),.wysiwyg-content h2:not(:last-child),.wysiwyg-content h3:not(:last-child),.wysiwyg-content h4:not(:last-child),.sample-wysiwyg h1:not(:last-child),.sample-wysiwyg h2:not(:last-child),.sample-wysiwyg h3:not(:last-child),.sample-wysiwyg h4:not(:last-child) {
    margin-bottom: calc(var(--lh, 1em) * .5)
}

.wysiwyg-content p:not(:last-child),.wysiwyg-content ul:not(:last-child),.wysiwyg-content ol:not(:last-child),.wysiwyg-content blockquote:not(:last-child),.sample-wysiwyg p:not(:last-child),.sample-wysiwyg ul:not(:last-child),.sample-wysiwyg ol:not(:last-child),.sample-wysiwyg blockquote:not(:last-child) {
    margin-bottom: calc(var(--lh, 1em) * 1)
}

.wysiwyg-content blockquote,.sample-wysiwyg blockquote {
    padding-left: 1em;
    border-left: 1px solid currentcolor
}

.wysiwyg-content blockquote cite,.sample-wysiwyg blockquote cite {
    font-style: normal
}

.wysiwyg-content blockquote cite:before,.sample-wysiwyg blockquote cite:before {
    content: "— "
}

.wysiwyg-content mark,.sample-wysiwyg mark {
    background-color: #ff0
}

.wysiwyg-content strong,.sample-wysiwyg strong {
    font-weight: bolder
}

.wysiwyg-content em,.wysiwyg-content i,.sample-wysiwyg em,.sample-wysiwyg i {
    font-style: italic
}

.wysiwyg-content a,.sample-wysiwyg a {
    display: inline;
    transition: opacity .4s ease;
    opacity: 1
}

@media (hover: hover) {
    .wysiwyg-content a:hover,.sample-wysiwyg a:hover {
        opacity:.6
    }
}

.wysiwyg-content a:focus-visible,.sample-wysiwyg a:focus-visible {
    opacity: .6
}

.wysiwyg-content .alignleft,.sample-wysiwyg .alignleft {
    float: left;
    margin: 0 3rem 3rem 0
}

.wysiwyg-content .alignright,.sample-wysiwyg .alignright {
    float: right;
    margin: 0 3rem
}

.wysiwyg-content .text-indent,.sample-wysiwyg .text-indent {
    display: inline-block;
    padding-left: var(--indent-value, 6.8rem)
}

@media screen and (max-width: 519px) {
    .wysiwyg-content .text-indent,.sample-wysiwyg .text-indent {
        padding-left:var(--indent-value, 2.4rem)
    }
}

.wysiwyg-content p[style*=padding-left],.sample-wysiwyg p[style*=padding-left] {
    padding-left: 0!important;
    text-indent: var(--indent-value, 6.8rem)
}

@media screen and (max-width: 519px) {
    .wysiwyg-content p[style*=padding-left],.sample-wysiwyg p[style*=padding-left] {
        text-indent:var(--indent-value, 2.4rem)
    }
}
/*!***********************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[2].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[2].use[2]!./src/css/components/burger.css ***!
  \***********************************************************************************************************************************************************************************/

.burger {
    --burger-width: 2.8rem;
    --burger-line: 1px;
    --burger-padding: 1.6rem;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: calc(var(--burger-width) + 2 * var(--burger-padding));
    height: calc(var(--burger-width) + 2 * var(--burger-padding));
    margin: calc(var(--burger-padding) * -1);
    padding: var(--burger-padding);
    position: relative;
    transition: .4s ease;
    transition-property: transform,visibility,opacity
}

.burger:before,.burger:after {
    content: "";
    display: block;
    width: var(--burger-width);
    height: var(--burger-line);
    transition: transform .6s ease;
    transform-origin: center;
    background-color: currentcolor
}

.burger:before {
    transform: translateY(-4px)
}

.burger:after {
    transform: translateY(4px)
}

.burger__label {
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    position: absolute;
    white-space: nowrap;
    overflow: hidden;
    clip-path: inset(0 0 0 0);
    border: 0
}

.menu-visible .burger:before {
    transform: rotate(-45deg)
}

.menu-visible .burger:after {
    transform: rotate(45deg)
}
/*!**********************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[2].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[2].use[2]!./src/css/components/embed.css ***!
  \**********************************************************************************************************************************************************************************/

.embed {
    width: 100%;
    padding-inline:max((100% - var(--wrapper-width)) / 2 + var(--margin),var(--margin));margin-block-end: 8rem
}

@media screen and (max-width: 1023px) {
    .embed {
        margin-block-start:7rem
    }
}

@media screen and (max-width: 519px) {
    .embed {
        margin-block:5rem
    }
}

.embed__code {
    display: flex;
    flex-direction: column;
    align-items: center
}

/*!****************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[2].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[2].use[2]!./src/css/components/loader-dots.css ***!
  \****************************************************************************************************************************************************************************************/

.loader--dots {
    width: 12px;
    visibility: hidden;
    transition: .4s ease;
    transition-property: opacity,visibility;
    opacity: 0;
    border-radius: 50%;
    background: #000;
    aspect-ratio: 1;
    clip-path: inset(-220%)
}

.loader--dots.is-loading {
    visibility: visible;
    animation: load-dots 2s infinite linear;
    opacity: 1
}
/*!*****************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[2].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[2].use[2]!./src/css/components/ajax-wrapper.css ***!
  \*****************************************************************************************************************************************************************************************/
.ajax-wrapper {
    display: flex;
    flex-direction: column;
    flex-grow: 1;
    margin-top: calc(var(--header-height) * -1)
}

.ajax-wrapper.is-loading,[data-load-container].is-loading {
    pointer-events: none
}

.page-template-page-discover .ajax-wrapper {
    margin-top: 0
}
/*!************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[2].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[2].use[2]!./src/css/components/enquire.css ***!
  \************************************************************************************************************************************************************************************/

.enquire {
    --padding: 6.6rem;
    --width: 104rem;
    display: flex;
    flex-direction: column;
    max-width: var(--width);
    max-height: calc(var(--vh, 1vh) * 90);
    margin: auto;
    padding: var(--padding);
    position: relative;
    z-index: 1;
    background-color: #d71920
}

@media screen and (max-width: 1023px) {
    .enquire {
        --padding: 3.6rem;
        --width: 52rem
    }
}

@media screen and (max-width: 519px) {
    .enquire {
        --padding: 3.7rem 4.3rem;
        --width: 35.2rem
    }
}

.enquire__headline {
    --lh: 1.1666666667em;
    font-family: 'Pacaembu', sans-serif;
    font-size: 3rem;
    font-weight: 400;
    line-height: 1.1666666667;
    letter-spacing: -.01em;
    margin-bottom: 4.8rem
}

@media screen and (max-width: 1023px) {
    .enquire__headline {
        font-size:2rem;
        line-height: 1.2;
        letter-spacing: -.01em
    }
}

@media screen and (max-width: 1023px) {
    .enquire__headline {
        margin-bottom:3.2rem
    }
}

@media screen and (max-width: 519px) {
    .enquire__headline {
        margin-bottom:4.5rem
    }
}

.enquire__content {
    --lh: 1.2083333333em;
    font-family: 'Pacaembu', sans-serif;
    font-size: 2.4rem;
    font-weight: 400;
    line-height: 1.2083333333;
    letter-spacing: -.01em;
    scrollbar-width: none;
    height: 100%;
    overflow-y: auto
}

@media screen and (max-width: 1023px) {
    .enquire__content {
        font-size:1.7rem;
        line-height: 1.2941176471
    }
}

@media screen and (max-width: 519px) {
    .enquire__content {
        line-height:1.1764705882
    }
}

.enquire__content::-webkit-scrollbar {
    display: none
}

.enquire .success-message {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    place-content: flex-start space-between;
    width: 100%;
    height: 100%;
    padding: var(--padding);
    position: absolute;
    top: 0;
    left: 0;
    background: #d71920
}

.enquire .success-message__label {
    --lh: 1.1666666667em;
    font-family: 'Pacaembu', sans-serif;
    font-size: 3rem;
    font-weight: 400;
    line-height: 1.1666666667;
    letter-spacing: -.01em
}

@media screen and (max-width: 1023px) {
    .enquire .success-message__label {
        font-size:2rem;
        line-height: 1.2;
        letter-spacing: -.01em
    }
}
/*!************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[2].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[2].use[2]!./src/css/components/sign-up.css ***!
  \************************************************************************************************************************************************************************************/

.sign-up {
    --padding: 6.6rem;
    --width: 104rem;
    display: flex;
    flex-direction: column;
    max-width: var(--width);
    max-height: calc(var(--vh, 1vh) * 90);
    margin: auto;
    padding: var(--padding);
    position: relative;
    z-index: 1;
    background-color: #d71920
}

@media screen and (max-width: 1023px) {
    .sign-up {
        --padding: 3.6rem;
        --width: 52rem
    }
}

@media screen and (max-width: 519px) {
    .sign-up {
        --padding: 3.7rem 4.3rem;
        --width: 35.2rem
    }
}

.sign-up__headline {
    --lh: 1.1666666667em;
    font-family: 'Pacaembu', sans-serif;
    font-size: 3rem;
    font-weight: 400;
    line-height: 1.1666666667;
    letter-spacing: -.01em;
    margin-bottom: 2.5rem
}

@media screen and (max-width: 1023px) {
    .sign-up__headline {
        font-size:2rem;
        line-height: 1.2;
        letter-spacing: -.01em
    }
}

.sign-up__content {
    --lh: 1.2083333333em;
    font-family: 'Pacaembu', sans-serif;
    font-size: 2.4rem;
    font-weight: 400;
    line-height: 1.2083333333;
    letter-spacing: -.01em;
    scrollbar-width: none;
    height: 100%;
    overflow-y: auto
}

@media screen and (max-width: 1023px) {
    .sign-up__content {
        font-size:1.7rem;
        line-height: 1.2941176471
    }
}

@media screen and (max-width: 519px) {
    .sign-up__content {
        line-height:1.1764705882
    }
}

.sign-up__content::-webkit-scrollbar {
    display: none
}

.sign-up .success-message {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    place-content: flex-start space-between;
    width: 100%;
    height: 100%;
    padding: var(--padding);
    position: absolute;
    top: 0;
    left: 0;
    background: #d71920
}

.sign-up .success-message__label {
    --lh: 1.1666666667em;
    font-family: 'Pacaembu', sans-serif;
    font-size: 3rem;
    font-weight: 400;
    line-height: 1.1666666667;
    letter-spacing: -.01em
}

@media screen and (max-width: 1023px) {
    .sign-up .success-message__label {
        font-size:2rem;
        line-height: 1.2;
        letter-spacing: -.01em
    }
}
/*!**********************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[2].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[2].use[2]!./src/css/main.css ***!
  \**********************************************************************************************************************************************************************/
/* trava scroll durante a transição */
html.is-transitioning { overflow: hidden; }
/* quando precisamos fechar o menu sem animar */
.nav--immediate, .nav--immediate::after { transition: none !important; }

@media (prefers-reduced-motion: reduce) {
  .nav { transition-duration: .01ms !important; }
  .nav:after { transition-duration: .01ms !important; }
}

.barba-fade-enter,
.barba-fade-leave {
    will-change: opacity;
}

[data-barba="container"] { backface-visibility: hidden; }

/*# sourceMappingURL=index.css.map*/