@charset "UTF-8";
/*
! tailwindcss v3.0.24 | MIT License | https://tailwindcss.com
*/
/*
1. Prevent padding and border from affecting element width. (https://github.com/mozdevs/cssremedy/issues/4)
2. Allow adding a border to an element by just adding a border-width. (https://github.com/tailwindcss/tailwindcss/pull/116)
*/
*,
::before,
::after {
  box-sizing: border-box; /* 1 */
  border-width: 0; /* 2 */
  border-style: solid; /* 2 */
  border-color: #e5e7eb; /* 2 */
}
::before,
::after {
  --tw-content: '';
}
/*
1. Use a consistent sensible line-height in all browsers.
2. Prevent adjustments of font size after orientation changes in iOS.
3. Use a more readable tab size.
4. Use the user's configured `sans` font-family by default.
*/
html {
  line-height: 1.5; /* 1 */
  -webkit-text-size-adjust: 100%; /* 2 */
  -moz-tab-size: 4; /* 3 */
  -o-tab-size: 4;
     tab-size: 4; /* 3 */
  font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; /* 4 */
}
/*
1. Remove the margin in all browsers.
2. Inherit line-height from `html` so users can set them as a class directly on the `html` element.
*/
body {
  margin: 0; /* 1 */
  line-height: inherit; /* 2 */
}
/*
1. Add the correct height in Firefox.
2. Correct the inheritance of border color in Firefox. (https://bugzilla.mozilla.org/show_bug.cgi?id=190655)
3. Ensure horizontal rules are visible by default.
*/
hr {
  height: 0; /* 1 */
  color: inherit; /* 2 */
  border-top-width: 1px; /* 3 */
}
/*
Add the correct text decoration in Chrome, Edge, and Safari.
*/
abbr:where([title]) {
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted;
}
/*
Remove the default font size and weight for headings.
*/
h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: inherit;
  font-weight: inherit;
}
/*
Reset links to optimize for opt-in styling instead of opt-out.
*/
a {
  color: inherit;
  text-decoration: inherit;
}
/*
Add the correct font weight in Edge and Safari.
*/
b,
strong {
  font-weight: bolder;
}
/*
1. Use the user's configured `mono` font family by default.
2. Correct the odd `em` font sizing in all browsers.
*/
code,
kbd,
samp,
pre {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; /* 1 */
  font-size: 1em; /* 2 */
}
/*
Add the correct font size in all browsers.
*/
small {
  font-size: 80%;
}
/*
Prevent `sub` and `sup` elements from affecting the line height in all browsers.
*/
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}
sub {
  bottom: -0.25em;
}
sup {
  top: -0.5em;
}
/*
1. Remove text indentation from table contents in Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=999088, https://bugs.webkit.org/show_bug.cgi?id=201297)
2. Correct table border color inheritance in all Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=935729, https://bugs.webkit.org/show_bug.cgi?id=195016)
3. Remove gaps between table borders by default.
*/
table {
  text-indent: 0; /* 1 */
  border-color: inherit; /* 2 */
  border-collapse: collapse; /* 3 */
}
/*
1. Change the font styles in all browsers.
2. Remove the margin in Firefox and Safari.
3. Remove default padding in all browsers.
*/
button,
input,
optgroup,
select,
textarea {
  font-family: inherit; /* 1 */
  font-size: 100%; /* 1 */
  line-height: inherit; /* 1 */
  color: inherit; /* 1 */
  margin: 0; /* 2 */
  padding: 0; /* 3 */
}
/*
Remove the inheritance of text transform in Edge and Firefox.
*/
button,
select {
  text-transform: none;
}
/*
1. Correct the inability to style clickable types in iOS and Safari.
2. Remove default button styles.
*/
button,
[type='button'],
[type='reset'],
[type='submit'] {
  -webkit-appearance: button; /* 1 */
  background-color: transparent; /* 2 */
  background-image: none; /* 2 */
}
/*
Use the modern Firefox focus style for all focusable elements.
*/
:-moz-focusring {
  outline: auto;
}
/*
Remove the additional `:invalid` styles in Firefox. (https://github.com/mozilla/gecko-dev/blob/2f9eacd9d3d995c937b4251a5557d95d494c9be1/layout/style/res/forms.css#L728-L737)
*/
:-moz-ui-invalid {
  box-shadow: none;
}
/*
Add the correct vertical alignment in Chrome and Firefox.
*/
progress {
  vertical-align: baseline;
}
/*
Correct the cursor style of increment and decrement buttons in Safari.
*/
::-webkit-inner-spin-button,
::-webkit-outer-spin-button {
  height: auto;
}
/*
1. Correct the odd appearance in Chrome and Safari.
2. Correct the outline style in Safari.
*/
[type='search'] {
  -webkit-appearance: textfield; /* 1 */
  outline-offset: -2px; /* 2 */
}
/*
Remove the inner padding in Chrome and Safari on macOS.
*/
::-webkit-search-decoration {
  -webkit-appearance: none;
}
/*
1. Correct the inability to style clickable types in iOS and Safari.
2. Change font properties to `inherit` in Safari.
*/
::-webkit-file-upload-button {
  -webkit-appearance: button; /* 1 */
  font: inherit; /* 2 */
}
/*
Add the correct display in Chrome and Safari.
*/
summary {
  display: list-item;
}
/*
Removes the default spacing and border for appropriate elements.
*/
blockquote,
dl,
dd,
h1,
h2,
h3,
h4,
h5,
h6,
hr,
figure,
p,
pre {
  margin: 0;
}
fieldset {
  margin: 0;
  padding: 0;
}
legend {
  padding: 0;
}
ol,
ul,
menu {
  list-style: none;
  margin: 0;
  padding: 0;
}
/*
Prevent resizing textareas horizontally by default.
*/
textarea {
  resize: vertical;
}
/*
1. Reset the default placeholder opacity in Firefox. (https://github.com/tailwindlabs/tailwindcss/issues/3300)
2. Set the default placeholder color to the user's configured gray 400 color.
*/
input::-moz-placeholder, textarea::-moz-placeholder {
  opacity: 1; /* 1 */
  color: #9ca3af; /* 2 */
}
input:-ms-input-placeholder, textarea:-ms-input-placeholder {
  opacity: 1; /* 1 */
  color: #9ca3af; /* 2 */
}
input::placeholder,
textarea::placeholder {
  opacity: 1; /* 1 */
  color: #9ca3af; /* 2 */
}
/*
Set the default cursor for buttons.
*/
button,
[role="button"] {
  cursor: pointer;
}
/*
Make sure disabled buttons don't get the pointer cursor.
*/
:disabled {
  cursor: default;
}
/*
1. Make replaced elements `display: block` by default. (https://github.com/mozdevs/cssremedy/issues/14)
2. Add `vertical-align: middle` to align replaced elements more sensibly by default. (https://github.com/jensimmons/cssremedy/issues/14#issuecomment-634934210)
   This can trigger a poorly considered lint error in some tools but is included by design.
*/
img,
svg,
video,
canvas,
audio,
iframe,
embed,
object {
  display: block; /* 1 */
  vertical-align: middle; /* 2 */
}
/*
Constrain images and videos to the parent width and preserve their intrinsic aspect ratio. (https://github.com/mozdevs/cssremedy/issues/14)
*/
img,
video {
  max-width: 100%;
  height: auto;
}
/*
Ensure the default browser behavior of the `hidden` attribute.
*/
[hidden] {
  display: none;
}
*, ::before, ::after{
  --tw-translate-x: 0;
  --tw-translate-y: 0;
  --tw-rotate: 0;
  --tw-skew-x: 0;
  --tw-skew-y: 0;
  --tw-scale-x: 1;
  --tw-scale-y: 1;
  --tw-pan-x:  ;
  --tw-pan-y:  ;
  --tw-pinch-zoom:  ;
  --tw-scroll-snap-strictness: proximity;
  --tw-ordinal:  ;
  --tw-slashed-zero:  ;
  --tw-numeric-figure:  ;
  --tw-numeric-spacing:  ;
  --tw-numeric-fraction:  ;
  --tw-ring-inset:  ;
  --tw-ring-offset-width: 0px;
  --tw-ring-offset-color: #fff;
  --tw-ring-color: rgb(59 130 246 / 0.5);
  --tw-ring-offset-shadow: 0 0 #0000;
  --tw-ring-shadow: 0 0 #0000;
  --tw-shadow: 0 0 #0000;
  --tw-shadow-colored: 0 0 #0000;
  --tw-blur:  ;
  --tw-brightness:  ;
  --tw-contrast:  ;
  --tw-grayscale:  ;
  --tw-hue-rotate:  ;
  --tw-invert:  ;
  --tw-saturate:  ;
  --tw-sepia:  ;
  --tw-drop-shadow:  ;
  --tw-backdrop-blur:  ;
  --tw-backdrop-brightness:  ;
  --tw-backdrop-contrast:  ;
  --tw-backdrop-grayscale:  ;
  --tw-backdrop-hue-rotate:  ;
  --tw-backdrop-invert:  ;
  --tw-backdrop-opacity:  ;
  --tw-backdrop-saturate:  ;
  --tw-backdrop-sepia:  ;
}
.container{
  width: 100%;
}
@media (min-width: 480px){
  .container{
    max-width: 480px;
  }
}
@media (min-width: 548px){
  .container{
    max-width: 548px;
  }
}
@media (min-width: 768px){
  .container{
    max-width: 768px;
  }
}
@media (min-width: 1024px){
  .container{
    max-width: 1024px;
  }
}
@media (min-width: 1200px){
  .container{
    max-width: 1200px;
  }
}
@media (min-width: 1400px){
  .container{
    max-width: 1400px;
  }
}
@media (min-width: 1536px){
  .container{
    max-width: 1536px;
  }
}
@media (min-width: 1640px){
  .container{
    max-width: 1640px;
  }
}
.mt-3{
  margin-top: 15px;
}
.block{
  display: block;
}
.hidden{
  display: none;
}
.transform{
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.pt-2{
  padding-top: 10px;
}
.text-center{
  text-align: center;
}
html, body {
  scroll-behavior: smooth;
  -webkit-font-smoothing: antialiased;
}

body{
  --tw-bg-opacity: 1;
  background-color: rgb(0 0 0 / var(--tw-bg-opacity));
  padding-bottom: 100px;
  padding-top: 130px;
  font-family: Roboto, sans-serif;
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity));
}
body.not-sidebar-icon{
  padding-bottom: 0;
}
body.is-landing-page{
  padding: 0;
}
body.has-transition {
  visibility: hidden;
  opacity: 0;
  transition: visibility 0s 500ms, opacity 500ms linear;
}
body.has-transition.is-fade-in {
  visibility: visible;
  opacity: 1;
  transition: opacity 500ms linear;
}
@media (min-width: 768px) {
  body{
    padding-bottom: 0;
    padding-right: 0;
    padding-top: 0;
  }
  body.is-tpc{
    padding-left: 80px;
    padding-right: 0;
  }
  body.not-hero{
    padding-top: 130px;
    padding-right: 80px;
  }
}
@media (min-width: 1024px) {
  body.not-hero{
    padding-right: 140px;
    padding-top: 10.625rem;
  }
}
@media (min-width: 1200px) {
  body{
    padding-right: 0;
  }
  body.is-tpc{
    padding-left: 140px;
  }
  body.not-hero {
    padding-top: 15.9375rem;
  }
}

.main-content{
  width: 100%;
}

.is-landing-page > .main-content > *:not(.landing-page, .pre-screen){
  display: none;
}

.container- {
  max-width: 106.25rem;
  margin-left: auto;
  margin-right: auto;
  width: 100%;
  padding-left: 30px;
  padding-right: 30px;
}

.container-wide{
  width: 100%;
  max-width: none;
  padding-left: 30px;
  padding-right: 30px;
}
@media (min-width: 768px) {
  .container-wide{
    padding-left: 80px;
    padding-right: 0;
  }
  .container-wide--has-pr{
    padding-right: 30px;
  }
  .is-tpc .container-wide--has-pr{
    padding-left: 30px;
  }
  .is-tpc .container-wide{
    padding-right: 80px;
    padding-left: 0;
  }
}
@media (min-width: 1200px) {
  .container-wide{
    padding-left: 140px;
  }
  .is-tpc .container-wide{
    padding-right: 140px;
  }
}

h1, .h1 {
  font-size: 3.5rem;
  line-height: 1.2;
}
@media (min-width: 1024px) {
  h1, .h1 {
    font-size: 3.75rem;
  }
}

h2, .h2 {
  font-size: 3.5rem;
  line-height: 1.2;
}
@media (min-width: 1024px) {
  h2, .h2 {
    font-size: 3.75rem;
  }
}

h3, .h3 {
  font-size: 1.5rem;
  line-height: 1.19;
}
@media (min-width: 1024px) {
  h3, .h3 {
    font-size: 2.875rem;
  }
}

h4, .h4 {
  font-size: 1.25rem;
  line-height: 1.2;
}
@media (min-width: 1024px) {
  h4, .h4 {
    font-size: 1.75rem;
  }
}

h5, .h5 {
  font-size: 1.125rem;
  line-height: 1.2;
}
@media (min-width: 1024px) {
  h5, .h5 {
    font-size: 1.5rem;
  }
}

h6, .h6 {
  font-size: 1.125rem;
  line-height: 1.2;
}
@media (min-width: 1024px) {
  h6, .h6 {
    font-size: 1.25rem;
  }
}

p, ul, ol, dl, table, blockquote {
  font-size: 1.5rem;
  line-height: 1.5;
  font-weight: 300;
}

a:not(.btn){
  cursor: pointer;
  transition: all 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
a:not(.btn):hover{
  --tw-text-opacity: 1;
  color: rgb(121 121 121 / var(--tw-text-opacity));
}

.btn, form .Actions input[type=submit]{
  display: inline-flex;
  cursor: pointer;
  align-items: center;
  justify-content: center;
  border-width: 1px;
  --tw-border-opacity: 1;
  border-color: rgb(255 255 255 / var(--tw-border-opacity));
  padding-left: 15px;
  padding-right: 15px;
  padding-top: 5px;
  padding-bottom: 5px;
  font-weight: 400;
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity));
  transition: all 300ms cubic-bezier(0.785, 0.135, 0.15, 0.86) 0ms;
  font-size: 1rem;
  min-width: 7.8125rem;
  min-height: 2.25rem;
}
.btn:hover, form .Actions input[type=submit]:hover{
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity));
  --tw-text-opacity: 1;
  color: rgb(0 0 0 / var(--tw-text-opacity));
}
.btn--black, .popup form .Actions input{
  --tw-border-opacity: 1;
  border-color: rgb(0 0 0 / var(--tw-border-opacity));
  --tw-bg-opacity: 1;
  background-color: rgb(0 0 0 / var(--tw-bg-opacity));
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity));
}
.btn--black:hover, .popup form .Actions input:hover{
  --tw-border-opacity: 1;
  border-color: rgb(121 121 121 / var(--tw-border-opacity));
  --tw-bg-opacity: 1;
  background-color: rgb(121 121 121 / var(--tw-bg-opacity));
}
.btn--lg, form .Actions input[type=submit] {
  min-height: 3.9375rem;
  font-size: 1.25rem;
  min-width: 15.625rem;
}

.link {
  font-size: 1.5rem;
}
.link:hover{
  -webkit-text-decoration-line: underline;
          text-decoration-line: underline;
}

.typography > *{
  margin-bottom: 25px;
}
.typography > *:last-child{
  margin-bottom: 0;
}
.typography h1, .typography h2, .typography h3, .typography h4, .typography h5, .typography h6{
  font-weight: 500;
}
.blog-post .typography h1, .blog-post .typography h2, .blog-post .typography h3, .blog-post .typography h4, .blog-post .typography h5, .blog-post .typography h6{
  margin-bottom: 25px;
  text-transform: uppercase;
}
.typography ul li, .typography ol li{
  position: relative;
  margin-bottom: 25px;
  padding-left: 45px;
}
.typography ul li:last-child, .typography ol li:last-child{
  margin-bottom: 0;
}
.typography ul li:before,
.typography ol li:before {
  border-radius: 50%;
  position: absolute;
  left: 0;
  display: inline-block;
  height: 35px;
  width: 35px;
}
.typography ul li:before {
  content: "";
  top: 0.375rem;
}
.typography ol li {
  counter-increment: counter;
}
.typography ol li:before {
  content: counter(counter) "";
  top: 0.25rem;
  line-height: 1;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 600;
  --tw-text-opacity: 1;
  color: rgb(0 0 0 / var(--tw-text-opacity));
}
.typography strong, .typography a{
  font-weight: 500;
}
@media (min-width: 1024px) {
  .typography > *, .typography ul li, .typography ol li{
    margin-bottom: 40px;
  }
  .typography ul li, .typography ol li{
    padding-left: 75px;
  }
}

.hamburger {
  pointer-events: all !important;
  z-index: 100;
  height: 1.4375rem;
  position: relative;
  display: inline-block;
  width: 50px;
  cursor: pointer;
}
.hamburger .line {
  border-radius: 0.625rem;
  height: 0.25rem;
  transition: all 300ms cubic-bezier(0.785, 0.135, 0.15, 0.86) 0ms;
  pointer-events: none;
  position: absolute;
  left: 0;
  top: 0;
  display: block;
  width: 100%;
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity));
  padding: 0;
}
.hamburger .line-2 {
  top: 0.59375rem;
}
.hamburger .line-3 {
  top: 1.1875rem;
}
.hamburger.is-active .line-1{
  display: none;
}
.hamburger.is-active .line-2 {
  transform: rotate(45deg);
  top: 0.59375rem;
}
.hamburger.is-active .line-3 {
  transform: rotate(-45deg);
  top: 0.59375rem;
}
@media (min-width: 1200px) {
  .hamburger{
    height: 30px;
    width: 70px;
  }
  .hamburger .line{
    height: 5px;
  }
  .hamburger .line-2 {
    top: 0.78125rem;
  }
  .hamburger .line-3 {
    top: 1.5625rem;
  }
  .hamburger.is-active .line-2,
.hamburger.is-active .line-3 {
    top: 0.78125rem;
  }
}

/* ---- page dots ---- */
.flickity-page-dots {
  bottom: 1.5625rem;
  z-index: 99;
  left: 50%;
  transform: translateX(-50%);
  position: absolute;
  display: flex;
  width: 95px;
  align-items: center;
  overflow: hidden;
  --tw-bg-opacity: 1;
  background-color: rgb(0 0 0 / var(--tw-bg-opacity));
}
.flickity-page-dots .dot {
  height: 0.5rem;
  transition: all 300ms cubic-bezier(0.785, 0.135, 0.15, 0.86) 0ms;
  flex: 1 1 0%;
  cursor: pointer;
  background-color: transparent;
  --tw-bg-opacity: 1;
  background-color: rgb(0 0 0 / var(--tw-bg-opacity));
  opacity: 1;
}
.flickity-page-dots .dot:hover, .flickity-page-dots .dot.is-selected{
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity));
}
@media (min-width: 768px) {
  .flickity-page-dots {
    right: 3.4375rem;
    transform: translateX(0);
    left: auto;
  }
  .is-tpc .flickity-page-dots {
    left: 3.4375rem;
  }
}

/* ---- previous/next buttons ---- */
.flickity-prev-next-button {
  background-size: cover;
  transition: all 300ms cubic-bezier(0.785, 0.135, 0.15, 0.86) 0ms;
  position: absolute;
  right: auto;
  height: 20px;
  width: 20px;
  border-radius: 0px;
  background-size: contain;
  background-repeat: no-repeat !important;
  background-position: center !important;
  bottom: 1rem;
  opacity: 1;
  z-index: 1;
}
.flickity-prev-next-button.previous {
  left: 12.5rem;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12.06' height='21.291' viewBox='0 0 12.06 21.291'%3E%3Cpath id='Path_14' data-name='Path 14' d='M441.865,23.711l9.232,9.231,9.232-9.231' transform='translate(34.357 -440.451) rotate(90)' fill='none' stroke='%23000' stroke-linecap='round' stroke-width='2'/%3E%3C/svg%3E%0A");
}
.flickity-prev-next-button.next {
  left: 15rem;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12.06' height='21.291' viewBox='0 0 12.06 21.291'%3E%3Cg id='Component_19_1' data-name='Component 19 – 1' transform='translate(1.414 1.414)'%3E%3Cpath id='Path_13' data-name='Path 13' d='M441.865,23.711l9.232,9.231,9.232-9.231' transform='translate(-23.711 460.328) rotate(-90)' fill='none' stroke='%23000' stroke-linecap='round' stroke-width='2'/%3E%3C/g%3E%3C/svg%3E%0A");
}
.flickity-prev-next-button .flickity-button-icon{
  display: none;
}
.blog-post__image-slider .flickity-prev-next-button{
  bottom: 0;
  height: 30px;
  width: 30px;
  top: 50%;
  transform: translateY(-50%);
}
.blog-post__image-slider .flickity-prev-next-button[disabled]{
  display: none;
}
.blog-post__image-slider .flickity-prev-next-button.previous {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='45.871' height='77.657' viewBox='0 0 45.871 77.657'%3E%3Cpath id='Path_32' data-name='Path 32' d='M1.343,76.063h0A5,5,0,0,1,1.6,68.987L34.047,38.833,1.6,8.669a5.006,5.006,0,0,1-.255-7.076h0a5,5,0,0,1,7.069-.254L43.925,34.364a6.1,6.1,0,0,1,0,8.937L8.412,76.317a5,5,0,0,1-7.069-.254' transform='translate(45.871 77.656) rotate(180)' fill='%23fff'%3E%3C/path%3E%3C/svg%3E");
  left: 0.9375rem;
  right: auto;
}
.blog-post__image-slider .flickity-prev-next-button.next {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='45.871' height='77.657' viewBox='0 0 45.871 77.657'%3E%3Cpath id='Path_31' data-name='Path 31' d='M1.343,76.063h0A5,5,0,0,1,1.6,68.987L34.047,38.833,1.6,8.669a5.006,5.006,0,0,1-.255-7.076h0a5,5,0,0,1,7.069-.254L43.925,34.364a6.1,6.1,0,0,1,0,8.937L8.412,76.317a5,5,0,0,1-7.069-.254' transform='translate(0 0)' fill='%23fff'%3E%3C/path%3E%3C/svg%3E");
  right: 0.9375rem;
  left: auto;
}

.glightbox-container {
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 999999 !important;
  touch-action: none;
  -webkit-text-size-adjust: 100%;
  -moz-text-size-adjust: 100%;
  text-size-adjust: 100%;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  outline: none;
  overflow: hidden;
}

.glightbox-container.inactive {
  display: none;
}

.glightbox-container .gcontainer {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 9999;
  overflow: hidden;
}

.glightbox-container .gslider {
  transition: transform 0.4s ease;
  height: 100%;
  left: 0;
  top: 0;
  width: 100%;
  position: relative;
  overflow: hidden;
  display: flex !important;
  justify-content: center;
  align-items: center;
  transform: translate3d(0, 0, 0);
}

.glightbox-container .gslide {
  width: 100%;
  position: absolute;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
}

.glightbox-container .gslide.current {
  opacity: 1;
  z-index: 99999;
  position: relative;
}

.glightbox-container .gslide.prev {
  opacity: 1;
  z-index: 9999;
}

.glightbox-container .gslide-inner-content {
  width: 100%;
}

.glightbox-container .ginner-container {
  position: relative;
  width: 100%;
  display: flex;
  justify-content: center;
  flex-direction: column;
  max-width: 100%;
  margin: auto;
  height: 100vh;
}

.glightbox-container .ginner-container.gvideo-container {
  width: 100%;
}

.glightbox-container .ginner-container.desc-bottom,
.glightbox-container .ginner-container.desc-top {
  flex-direction: column;
}

.glightbox-container .ginner-container.desc-left,
.glightbox-container .ginner-container.desc-right {
  max-width: 100% !important;
}

.gslide iframe,
.gslide video {
  outline: none !important;
  border: none;
  min-height: 10.3125rem;
  -webkit-overflow-scrolling: touch;
  touch-action: auto;
}

.gslide-image {
  align-items: center;
}

.gslide-image img {
  max-height: 100vh;
  display: block;
  padding: 0;
  float: none;
  outline: none;
  border: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  max-width: 100vw;
  width: auto;
  height: auto;
  -o-object-fit: cover;
  object-fit: cover;
  touch-action: none;
  margin: auto;
  min-width: 12.5rem;
}

.desc-top .gslide-image img,
.desc-bottom .gslide-image img {
  width: auto;
}

.desc-left .gslide-image img,
.desc-right .gslide-image img {
  width: auto;
  max-width: 100%;
}

.gslide-image img.zoomable {
  position: relative;
}

.gslide-image img.dragging {
  cursor: -webkit-grabbing !important;
  cursor: grabbing !important;
  transition: none;
}

.gslide-video {
  position: relative;
  max-width: 100vh;
  width: 100% !important;
}

.gslide-video .gvideo-wrapper {
  width: 100%;
  /* max-width: 160vmin; */
  margin: auto;
}

.gslide-video::before {
  content: "";
  display: block;
  position: absolute;
  width: 100%;
  height: 100%;
  background: rgba(255, 0, 0, 0.34);
  display: none;
}

.gslide-video.playing::before {
  display: none;
}

.gslide-video.fullscreen {
  max-width: 100% !important;
  min-width: 100%;
  height: 75vh;
}

.gslide-video.fullscreen video {
  max-width: 100% !important;
  width: 100% !important;
}

.gslide-inline {
  background: #fff;
  text-align: left;
  max-height: calc(100vh - 2.5rem);
  overflow: auto;
  max-width: 100%;
}

.gslide-inline .ginlined-content {
  padding: 1.25rem;
  width: 100%;
}

.gslide-inline .dragging {
  cursor: -webkit-grabbing !important;
  cursor: grabbing !important;
  transition: none;
}

.ginlined-content {
  overflow: auto;
  display: block !important;
  opacity: 1;
}

.gslide-external {
  display: flex;
  width: 100%;
  min-width: 100%;
  background: #fff;
  padding: 0;
  overflow: auto;
  max-height: 75vh;
  height: 100%;
}

.gslide-media {
  display: flex;
  width: auto;
}

.zoomed .gslide-media {
  box-shadow: none !important;
}

.desc-top .gslide-media,
.desc-bottom .gslide-media {
  margin: 0 auto;
  flex-direction: column;
}

.gslide-description {
  position: relative;
  flex: 1 0 100%;
}

.gslide-description.description-left,
.gslide-description.description-right {
  max-width: 100%;
}

.gslide-description.description-bottom,
.gslide-description.description-top {
  margin: 0 auto;
  width: 100%;
}

.gslide-description p {
  margin-bottom: 0.75rem;
}

.gslide-description p:last-child {
  margin-bottom: 0;
}

.zoomed .gslide-description {
  display: none;
}

.glightbox-button-hidden {
  display: none;
}

/*
 * Description for mobiles
 * something like facebook does the description
 * for the photos
*/
.glightbox-mobile .glightbox-container .gslide-description {
  height: auto !important;
  width: 100%;
  background: transparent;
  position: absolute;
  bottom: 0.9375rem;
  padding: 1.1875rem 0.6875rem;
  max-width: 100vw !important;
  order: 2 !important;
  max-height: 78vh;
  overflow: auto !important;
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.75) 100%);
  transition: opacity 0.3s linear;
  padding-bottom: 3.125rem;
}

.glightbox-mobile .glightbox-container .gslide-title {
  color: #fff;
  font-size: 2rem;
  font-weight: 900;
  line-height: 2rem;
}

.glightbox-mobile .glightbox-container .gslide-desc {
  color: #a1a1a1;
}

.glightbox-mobile .glightbox-container .gslide-desc a {
  color: #fff;
  font-weight: bold;
}

.glightbox-mobile .glightbox-container .gslide-desc * {
  color: inherit;
}

.glightbox-mobile .glightbox-container .gslide-desc string {
  color: #fff;
}

.glightbox-mobile .glightbox-container .gslide-desc .desc-more {
  color: #fff;
  opacity: 0.4;
}

.gdesc-open .gslide-media {
  transition: opacity 0.5s ease;
  opacity: 0.4;
}

.gdesc-open .gdesc-inner {
  padding-bottom: 1.875rem;
}

.gdesc-closed .gslide-media {
  transition: opacity 0.5s ease;
  opacity: 1;
}

.greset {
  transition: all 0.3s ease;
}

.gabsolute {
  position: absolute;
}

.grelative {
  position: relative;
}

.glightbox-desc {
  display: none !important;
}

.glightbox-open {
  overflow: hidden;
}

.gloader {
  height: 1.5625rem;
  width: 1.5625rem;
  -webkit-animation: lightboxLoader 0.8s infinite linear;
  animation: lightboxLoader 0.8s infinite linear;
  border: 0.125rem solid #fff;
  border-right-color: transparent;
  border-radius: 50%;
  position: absolute;
  display: block;
  z-index: 9999;
  left: 0;
  right: 0;
  margin: 0 auto;
  top: 47%;
}

.goverlay {
  width: 100%;
  height: calc(100vh + 0.0625rem);
  position: fixed;
  top: -0.0625rem;
  left: 0;
  background: #000;
  will-change: opacity;
}

.glightbox-mobile .goverlay {
  background: #000;
}

.gprev,
.gnext,
.gclose {
  z-index: 99999;
  cursor: pointer;
  width: 1.625rem;
  height: 2.75rem;
  border: none;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
}

.gprev svg,
.gnext svg,
.gclose svg {
  display: block;
  width: 1.5625rem;
  height: auto;
  margin: 0;
  padding: 0;
}

.gprev.disabled,
.gnext.disabled,
.gclose.disabled {
  opacity: 0.1;
}

.gprev .garrow,
.gnext .garrow,
.gclose .garrow {
  stroke: #fff;
}

.gbtn.focused {
  outline: 0.125rem solid #0f3d81;
}

iframe.wait-autoplay {
  opacity: 0;
}

.glightbox-closing .gnext,
.glightbox-closing .gprev,
.glightbox-closing .gclose {
  opacity: 0 !important;
}

/*Skin */
.glightbox-clean .gslide-description {
  background: transparent;
}

.glightbox-clean .gdesc-inner {
  padding: 1.375rem 1.25rem;
}

.glightbox-clean .gslide-title {
  font-family: Roboto, sans-serif;
  color: #fff;
  text-align: center;
  margin-bottom: 0;
  font-size: 2rem;
  font-weight: 900;
  line-height: 2rem;
}

.glightbox-clean .gslide-desc {
  font-size: 0.86em;
  margin-bottom: 0;
  font-family: arial;
  line-height: 1.4em;
  display: none;
}

.glightbox-clean .gslide-video {
  background: #000;
}

.glightbox-clean .gprev,
.glightbox-clean .gnext {
  background-color: rgba(0, 0, 0, 0.75);
  border-radius: 0.25rem;
}

.glightbox-clean .gprev path,
.glightbox-clean .gnext path,
.glightbox-clean .gclose path {
  fill: #fff;
}

.glightbox-clean .gprev {
  position: absolute;
  top: -100%;
  left: 1.875rem;
  width: 2.5rem;
  height: 3.125rem;
}

.glightbox-clean .gnext {
  position: absolute;
  top: -100%;
  right: 1.875rem;
  width: 2.5rem;
  height: 3.125rem;
}

.glightbox-clean .gclose {
  width: 2.1875rem;
  height: 2.1875rem;
  top: 0.9375rem;
  right: 0.625rem;
  position: absolute;
}

.glightbox-clean .gclose svg {
  width: 1.125rem;
  height: auto;
}

.glightbox-clean .gclose:hover {
  opacity: 1;
}

/*CSS Animations*/
.gfadeIn {
  -webkit-animation: gfadeIn 0.5s ease;
  animation: gfadeIn 0.5s ease;
}

.gfadeOut {
  -webkit-animation: gfadeOut 0.5s ease;
  animation: gfadeOut 0.5s ease;
}

.gslideOutLeft {
  -webkit-animation: gslideOutLeft 0.3s ease;
  animation: gslideOutLeft 0.3s ease;
}

.gslideInLeft {
  -webkit-animation: gslideInLeft 0.3s ease;
  animation: gslideInLeft 0.3s ease;
}

.gslideOutRight {
  -webkit-animation: gslideOutRight 0.3s ease;
  animation: gslideOutRight 0.3s ease;
}

.gslideInRight {
  -webkit-animation: gslideInRight 0.3s ease;
  animation: gslideInRight 0.3s ease;
}

.gzoomIn {
  -webkit-animation: gzoomIn 0.5s ease;
  animation: gzoomIn 0.5s ease;
}

.gzoomOut {
  -webkit-animation: gzoomOut 0.5s ease;
  animation: gzoomOut 0.5s ease;
}

@-webkit-keyframes lightboxLoader {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
@keyframes lightboxLoader {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
@-webkit-keyframes gfadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes gfadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@-webkit-keyframes gfadeOut {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
@keyframes gfadeOut {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
@-webkit-keyframes gslideInLeft {
  from {
    opacity: 0;
    transform: translate3d(-60%, 0, 0);
  }
  to {
    visibility: visible;
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
}
@keyframes gslideInLeft {
  from {
    opacity: 0;
    transform: translate3d(-60%, 0, 0);
  }
  to {
    visibility: visible;
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
}
@-webkit-keyframes gslideOutLeft {
  from {
    opacity: 1;
    visibility: visible;
    transform: translate3d(0, 0, 0);
  }
  to {
    transform: translate3d(-60%, 0, 0);
    opacity: 0;
    visibility: hidden;
  }
}
@keyframes gslideOutLeft {
  from {
    opacity: 1;
    visibility: visible;
    transform: translate3d(0, 0, 0);
  }
  to {
    transform: translate3d(-60%, 0, 0);
    opacity: 0;
    visibility: hidden;
  }
}
@-webkit-keyframes gslideInRight {
  from {
    opacity: 0;
    visibility: visible;
    transform: translate3d(60%, 0, 0);
  }
  to {
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
}
@keyframes gslideInRight {
  from {
    opacity: 0;
    visibility: visible;
    transform: translate3d(60%, 0, 0);
  }
  to {
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
}
@-webkit-keyframes gslideOutRight {
  from {
    opacity: 1;
    visibility: visible;
    transform: translate3d(0, 0, 0);
  }
  to {
    transform: translate3d(60%, 0, 0);
    opacity: 0;
  }
}
@keyframes gslideOutRight {
  from {
    opacity: 1;
    visibility: visible;
    transform: translate3d(0, 0, 0);
  }
  to {
    transform: translate3d(60%, 0, 0);
    opacity: 0;
  }
}
@-webkit-keyframes gzoomIn {
  from {
    opacity: 0;
    transform: scale3d(0.3, 0.3, 0.3);
  }
  to {
    opacity: 1;
  }
}
@keyframes gzoomIn {
  from {
    opacity: 0;
    transform: scale3d(0.3, 0.3, 0.3);
  }
  to {
    opacity: 1;
  }
}
@-webkit-keyframes gzoomOut {
  from {
    opacity: 1;
  }
  50% {
    opacity: 0;
    transform: scale3d(0.3, 0.3, 0.3);
  }
  to {
    opacity: 0;
  }
}
@keyframes gzoomOut {
  from {
    opacity: 1;
  }
  50% {
    opacity: 0;
    transform: scale3d(0.3, 0.3, 0.3);
  }
  to {
    opacity: 0;
  }
}
@media (min-width: 769px) {
  .glightbox-container .ginner-container {
    width: auto;
    height: auto;
    flex-direction: row;
  }

  .glightbox-container .ginner-container.desc-top .gslide-description {
    order: 0;
  }

  .glightbox-container .ginner-container.desc-top .gslide-image,
.glightbox-container .ginner-container.desc-top .gslide-image img {
    order: 1;
  }

  .glightbox-container .ginner-container.desc-left .gslide-description {
    order: 0;
  }

  .glightbox-container .ginner-container.desc-left .gslide-image {
    order: 1;
  }

  .gslide-image img {
    max-height: 97vh;
    max-width: 100%;
  }

  .gslide-image img.zoomable {
    cursor: zoom-in;
  }

  .zoomed .gslide-image img.zoomable {
    cursor: -webkit-grab;
    cursor: grab;
  }

  .gslide-inline {
    max-height: 95vh;
  }

  .gslide-external {
    max-height: 100vh;
  }

  .gslide-description.description-left,
.gslide-description.description-right {
    max-width: 17.1875rem;
  }

  .glightbox-open {
    height: auto;
  }

  .goverlay {
    background: rgba(0, 0, 0, 0.92);
  }

  .glightbox-clean .gslide-media {
    box-shadow: 0.0625rem 0.125rem 0.5625rem 0 rgba(0, 0, 0, 0.65);
  }

  .glightbox-clean .description-left .gdesc-inner,
.glightbox-clean .description-right .gdesc-inner {
    position: absolute;
    height: 100%;
    overflow-y: auto;
  }

  .glightbox-clean .gprev,
.glightbox-clean .gnext {
    background-color: rgba(0, 0, 0, 0.32);
  }

  .glightbox-clean .gprev:hover,
.glightbox-clean .gnext:hover {
    background-color: rgba(0, 0, 0, 0.7);
  }

  .glightbox-clean .gprev {
    top: 45%;
  }

  .glightbox-clean .gnext {
    top: 45%;
  }
}
@media (min-width: 992px) {
  .glightbox-clean .gclose {
    opacity: 0.7;
    right: 1.25rem;
  }
}
@media screen and (max-height: 420px) {
  .goverlay {
    background: #000;
  }
}
.card-news{
  margin-top: 40px;
  padding-left: 10px;
  padding-right: 10px;
}
.card-news:first-child{
  margin-top: 0;
}
.card-news__inner{
  display: flex;
  height: 100%;
  flex-direction: column;
}
.card-news__image-holder{
  position: relative;
  display: block;
  width: 100%;
  overflow: hidden;
  padding-top: 100%;
}
.card-news__image {
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
}
.card-news__content{
  display: flex;
  flex: 1 1 0%;
  flex-direction: column;
  align-items: flex-start;
  padding-top: 20px;
}
.card-news__title{
  margin-bottom: 25px;
}
.card-news__typography{
  margin-bottom: 40px;
  display: flex;
  flex: 1 1 0%;
  flex-direction: column;
  font-weight: 300;
}
.card-news__typography > * {
  font-size: 1rem;
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 4;
  line-clamp: 4;
  -webkit-box-orient: vertical;
}
.card-news__typography > *:not(:first-child){
  display: none;
}
.card-news__typography > *:first-child{
  margin-bottom: 0;
}
@media (min-width: 480px) {
  .card-news{
    width: 50%;
  }
  .card-news:nth-child(2){
    margin-top: 0;
  }
}
@media (min-width: 768px) {
  .card-news{
    width: 33.333333%;
  }
  .card-news:nth-child(3){
    margin-top: 0;
  }
}
@media (min-width: 1024px) {
  .card-news{
    margin-top: 80px;
    width: 25%;
  }
  .card-news:nth-child(4){
    margin-top: 0;
  }
}

form fieldset div.field, form .form-step div.field{
  margin-bottom: 20px;
  width: 100%;
}
form fieldset label.left, form .form-step label.left{
  display: none;
}
form input[type=text], form input[type=date], form input[type=number], form input[type=email], form input[type=password], form select, form textarea{
  width: 100%;
  border-bottom-width: 1px;
  --tw-border-opacity: 1;
  border-color: rgb(255 255 255 / var(--tw-border-opacity));
  background-color: transparent;
  padding-top: 10px;
  padding-bottom: 10px;
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity));
  height: 3.75rem;
}
form input[type=text]::-webkit-input-placeholder, form input[type=date]::-webkit-input-placeholder, form input[type=number]::-webkit-input-placeholder, form input[type=email]::-webkit-input-placeholder, form input[type=password]::-webkit-input-placeholder, form select::-webkit-input-placeholder, form textarea::-webkit-input-placeholder{
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity));
}
form input[type=text]::-moz-placeholder, form input[type=date]::-moz-placeholder, form input[type=number]::-moz-placeholder, form input[type=email]::-moz-placeholder, form input[type=password]::-moz-placeholder, form select::-moz-placeholder, form textarea::-moz-placeholder{
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity));
}
form input[type=text]:-ms-input-placeholder, form input[type=date]:-ms-input-placeholder, form input[type=number]:-ms-input-placeholder, form input[type=email]:-ms-input-placeholder, form input[type=password]:-ms-input-placeholder, form select:-ms-input-placeholder, form textarea:-ms-input-placeholder{
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity));
}
form input[type=text]:-moz-placeholder, form input[type=date]:-moz-placeholder, form input[type=number]:-moz-placeholder, form input[type=email]:-moz-placeholder, form input[type=password]:-moz-placeholder, form select:-moz-placeholder, form textarea:-moz-placeholder{
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity));
}
form input[type=text]:focus, form input[type=date]:focus, form input[type=number]:focus, form input[type=email]:focus, form input[type=password]:focus, form select:focus, form textarea:focus{
  outline: 2px solid transparent;
  outline-offset: 2px;
}
.popup form input[type=text], .popup form input[type=date], .popup form input[type=number], .popup form input[type=email], .popup form input[type=password], .popup form select, .popup form textarea{
  --tw-border-opacity: 1;
  border-color: rgb(0 0 0 / var(--tw-border-opacity));
}
.popup form input[type=text]::-webkit-input-placeholder, .popup form input[type=date]::-webkit-input-placeholder, .popup form input[type=number]::-webkit-input-placeholder, .popup form input[type=email]::-webkit-input-placeholder, .popup form input[type=password]::-webkit-input-placeholder, .popup form select::-webkit-input-placeholder, .popup form textarea::-webkit-input-placeholder{
  --tw-text-opacity: 1;
  color: rgb(0 0 0 / var(--tw-text-opacity));
}
.popup form input[type=text]::-moz-placeholder, .popup form input[type=date]::-moz-placeholder, .popup form input[type=number]::-moz-placeholder, .popup form input[type=email]::-moz-placeholder, .popup form input[type=password]::-moz-placeholder, .popup form select::-moz-placeholder, .popup form textarea::-moz-placeholder{
  --tw-text-opacity: 1;
  color: rgb(0 0 0 / var(--tw-text-opacity));
}
.popup form input[type=text]:-ms-input-placeholder, .popup form input[type=date]:-ms-input-placeholder, .popup form input[type=number]:-ms-input-placeholder, .popup form input[type=email]:-ms-input-placeholder, .popup form input[type=password]:-ms-input-placeholder, .popup form select:-ms-input-placeholder, .popup form textarea:-ms-input-placeholder{
  --tw-text-opacity: 1;
  color: rgb(0 0 0 / var(--tw-text-opacity));
}
.popup form input[type=text]:-moz-placeholder, .popup form input[type=date]:-moz-placeholder, .popup form input[type=number]:-moz-placeholder, .popup form input[type=email]:-moz-placeholder, .popup form input[type=password]:-moz-placeholder, .popup form select:-moz-placeholder, .popup form textarea:-moz-placeholder{
  --tw-text-opacity: 1;
  color: rgb(0 0 0 / var(--tw-text-opacity));
}
form .Actions input[type=submit]{
  width: 100%;
}
@media (min-width: 768px) {
  form fieldset, form .form-step{
    margin-left: -10px;
    margin-right: -10px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  form fieldset div.field, form .form-step div.field{
    padding-left: 10px;
    padding-right: 10px;
  }
  form fieldset div.field.half--width, form .form-step div.field.half--width{
    width: 50%;
  }
}

.gallery-popup{
  position: fixed;
  left: 0;
  top: 0;
  z-index: 998;
  height: 100%;
  width: 100%;
  --tw-bg-opacity: 1;
  background-color: rgb(0 0 0 / var(--tw-bg-opacity));
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity));
  visibility: hidden;
  opacity: 0;
  transition: visibility 0s 500ms, opacity 500ms linear;
}
.gallery-popup.is-active {
  visibility: visible !important;
  opacity: 1;
  transition: opacity 500ms linear;
}
.gallery-popup .container{
  margin-left: auto;
  margin-right: auto;
  max-width: 1200px;
  padding-left: 30px;
  padding-right: 30px;
}
.gallery-popup__header{
  padding-top: 25px;
  padding-bottom: 25px;
}
.gallery-popup__title{
  margin-bottom: 25px;
}
.gallery-popup__logo{
  display: inline-block;
}
.gallery-popup__logo img{
  height: 80px;
}
.gallery-popup__inner{
  display: flex;
  height: 100%;
  flex-direction: column;
}
.gallery-popup__slider{
  display: flex;
  flex: 1 1 0%;
  flex-direction: column;
  height: calc(100vh - 19.75rem);
}
.gallery-popup__bottom-inner{
  display: flex;
  min-height: 60px;
  align-items: center;
  justify-content: space-between;
  padding-top: 15px;
  padding-bottom: 15px;
}
.gallery-popup__hamburger{
  position: absolute;
  right: 30px;
  top: 45px;
}
.gallery-popup__details{
  text-align: right;
  font-size: 10px;
}
.gallery-popup__back{
  cursor: pointer;
}
.gallery-popup__back:hover{
  --tw-text-opacity: 1;
  color: rgb(121 121 121 / var(--tw-text-opacity));
}
.gallery-popup .swiper.swiper-desktop{
  display: none;
}
.gallery-popup .swiper-slide{
  height: 100%;
  width: auto;
}
@media (min-width: 768px) {
  .gallery-popup__header{
    text-align: center;
  }
}
@media (min-width: 1024px) {
  .gallery-popup__logo img{
    height: 120px;
  }
  .gallery-popup__details{
    font-size: 14px;
  }
  .gallery-popup__slider {
    height: calc(100vh - 20.5rem);
  }
  .gallery-popup__bottom-inner{
    min-height: 72px;
  }
  .gallery-popup .swiper.swiper-mobile{
    display: none;
  }
  .gallery-popup .swiper.swiper-desktop{
    display: block;
  }
}
@media (min-width: 1200px) {
  .gallery-popup__logo img{
    height: 200px;
  }
  .gallery-popup__slider {
    height: calc(100vh - 25.5rem);
  }
}

.header {
  transition: all 300ms cubic-bezier(0.785, 0.135, 0.15, 0.86) 0ms;
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  --tw-bg-opacity: 1;
  background-color: rgb(0 0 0 / var(--tw-bg-opacity));
  padding-top: 25px;
  padding-bottom: 25px;
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity));
  z-index: 99;
}
.header.stick{
  padding-top: 10px;
  padding-bottom: 10px;
}
.header.stick .header__logo img{
  height: 60px;
}
.header__top-nav{
  display: none;
}
.header__logo img {
  transition: all 300ms cubic-bezier(0.785, 0.135, 0.15, 0.86) 0ms;
  height: 80px;
  width: auto;
  max-width: 100%;
}
.header__inner{
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.header--tpc{
  display: none;
}
.is-tpc .header--tpc{
  display: block;
}
.is-tpc .header--tbg{
  display: none;
}
@media (min-width: 768px) {
  .header{
    background-color: transparent;
    padding-right: 80px;
  }
  .header__hamburger{
    display: none;
  }
  .header__inner{
    justify-content: center;
  }
  .header.stick{
    padding-top: 15px;
    padding-bottom: 15px;
  }
  .is-tpc .header{
    padding-left: 80px;
    padding-right: 0;
  }
  .is-tpc .header .container-wide{
    padding-right: 0;
  }
  .header.stick {
    background-color: rgba(0, 0, 0, 0.75);
  }
}
@media (min-width: 1024px) {
  .header__logo img {
    height: 7.5rem;
  }
  .header.stick .header__logo img{
    height: 100px;
  }
}
@media (min-width: 1200px) {
  .header{
    padding-right: 140px;
    padding-top: 30px;
  }
  .header__logo img {
    height: 12.5rem;
  }
  .is-tpc .header{
    padding-left: 140px;
  }
}

.side-menu-bar{
  position: relative;
  top: 0;
  right: 0;
  width: 80px;
  background-color: transparent;
  padding-top: 90px;
  border-color: black;
  z-index: 100;
  position: fixed !important;
}
.side-menu-bar.is-active {
  display: block !important;
}
.side-menu-bar__hamburger{
  position: absolute;
  display: none;
  top: 2.8125rem;
  left: 50%;
  transform: translateX(-50%);
}
.side-menu-bar__action{
  display: flex;
  height: 100%;
  width: 100%;
  align-items: center;
  justify-content: center;
  padding-left: 10px;
  padding-right: 10px;
  padding-bottom: 90px;
}
.side-menu-bar__logo-section{
  display: flex;
  align-items: center;
  justify-content: center;
}
.side-menu-bar__logo{
  margin-left: 10px;
}
.side-menu-bar__logo svg{
  height: auto;
  width: 50px;
  max-width: 100%;
}
.not-sidebar-icon .side-menu-bar{
  border-left-width: 0px;
}
.is-tpc .side-menu-bar{
  left: 0;
  right: auto;
  border-left-width: 0px;
  border-right-width: 1px;
}
@media (max-width: 767px) {
  .side-menu-bar{
    bottom: 0;
    top: auto;
    height: 100px;
    width: 100%;
    border-left-width: 0px;
    border-top-width: 1px;
    padding: 10px;
  }
  .side-menu-bar__action{
    padding: 0;
  }
  .side-menu-bar__logo-section{
    flex-direction: column;
  }
  .side-menu-bar__logo-section > svg {
    transform: rotate(90deg);
    top: -0.1875rem;
    position: relative;
    left: 0;
    margin-left: 10px;
  }
  .not-sidebar-icon .side-menu-bar{
    display: none;
  }
}
@media (min-width: 768px) {
  .side-menu-bar__hamburger{
    display: block;
  }
  .is-tpc .side-menu-bar__logo-section{
    flex-direction: row-reverse;
  }
  .is-tpc .side-menu-bar__logo-section > svg {
    transform: rotate(180deg);
  }
  .is-tpc .side-menu-bar__logo{
    margin-left: 0;
    margin-right: 10px;
  }
  .side-menu-bar__logo-section--tpc .side-menu-bar__logo svg{
    height: 45px;
    width: auto;
  }
}
@media (min-width: 1200px) {
  .side-menu-bar{
    width: 140px;
  }
  .side-menu-bar__logo svg{
    width: 70px;
  }
  .side-menu-bar__logo-section--tpc .side-menu-bar__logo svg{
    height: 75px;
  }
}

.pre-screen{
  position: fixed;
  left: 0;
  top: 0;
  height: 100%;
  width: 100%;
  --tw-bg-opacity: 1;
  background-color: rgb(0 0 0 / var(--tw-bg-opacity));
  padding-bottom: 100px;
  visibility: hidden;
  opacity: 0;
  transition: visibility 0s 500ms, opacity 500ms linear;
  z-index: 10;
}
.pre-screen.is-active {
  visibility: visible !important;
  opacity: 1;
  transition: opacity 500ms linear;
}
.pre-screen__logo{
  display: flex;
  height: 100%;
  align-items: center;
  justify-content: center;
  padding: 30px;
}
.pre-screen__logo img,
.pre-screen__logo svg {
  width: 60%;
  max-width: 37.5rem;
  height: auto;
  opacity: 0.25;
}
@media (min-width: 768px) {
  .pre-screen{
    padding-right: 80px;
    padding-bottom: 0;
  }
}
@media (min-width: 1024px) {
  .pre-screen{
    padding-right: 140px;
  }
}

.main-menu{
  position: fixed;
  left: 0;
  top: 0;
  height: 100%;
  width: 100%;
  padding-left: 20px;
  padding-right: 20px;
  padding-top: 140px;
  text-align: right;
  z-index: 999;
  background-color: rgba(0, 0, 0, 0.7);
  -webkit-backdrop-filter: blur(0.5rem);
          backdrop-filter: blur(0.5rem);
  visibility: hidden;
  opacity: 0;
  transition: all 300ms;
  transform: translateX(25%);
}
.main-menu ul{
  height: 100%;
  max-height: 100%;
  width: 100%;
  overflow-y: auto;
  padding-left: 10px;
  padding-right: 10px;
}
.main-menu ul li{
  margin-bottom: 25px;
}
.main-menu ul li:last-child{
  margin-bottom: 0;
}
.main-menu ul li a {
  font-size: 2.625rem;
  line-height: 0.8;
  font-weight: 900;
  text-transform: uppercase;
}
.main-menu__hamburger{
  position: absolute;
  right: 1.875rem;
  top: 2.8125rem;
}
.is-tpc .main-menu {
  transform: translateX(-25%);
  text-align: left;
}
.is-tpc .main-menu__hamburger{
  right: auto;
  left: 1.875rem;
}
.main-menu.is-active {
  visibility: visible;
  opacity: 1;
  transform: translateX(0);
}
@media (min-width: 768px) {
  .main-menu__hamburger {
    right: 0.875rem;
  }
  .main-menu ul{
    padding-left: 0;
    padding-right: 0;
  }
}
@media (min-width: 1024px) {
  .main-menu__hamburger {
    right: 2.125rem;
  }
  .main-menu ul{
    padding-left: 15px;
    padding-right: 15px;
  }
  .main-menu ul li a {
    font-size: 5.3125rem;
  }
}
@media (min-width: 1400px) {
  .main-menu ul li a {
    font-size: 5.9375rem;
  }
}

.popup{
  position: fixed;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  visibility: hidden;
  opacity: 0;
  transition: visibility 0s 500ms, opacity 500ms linear;
  z-index: 999;
  -webkit-backdrop-filter: blur(0.375rem);
          backdrop-filter: blur(0.375rem);
}
.popup.is-active {
  visibility: visible !important;
  opacity: 1;
  transition: opacity 500ms linear;
}
.popup__inner{
  margin-left: auto;
  margin-right: auto;
  max-height: 100%;
  width: 100%;
  overflow-y: auto;
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity));
  padding-left: 20px;
  padding-right: 10px;
  padding-top: 110px;
  padding-bottom: 30px;
  --tw-text-opacity: 1;
  color: rgb(0 0 0 / var(--tw-text-opacity));
  max-width: 67.5rem;
}
.popup__body{
  height: 100%;
  padding-right: 10px;
}
.popup__close{
  position: absolute;
  cursor: pointer;
  top: 1.25rem;
  right: 1.25rem;
}
.popup__close svg{
  height: auto;
  width: 50px;
  transition: all 300ms cubic-bezier(0.785, 0.135, 0.15, 0.86) 0ms;
}
.popup__close svg path{
  fill: #000000;
}
.popup__close:hover svg {
  transform: scale(1.1);
}
.popup__title{
  margin-bottom: 35px;
}
@media (min-width: 768px) {
  .popup{
    padding-left: 30px;
    padding-right: 30px;
    padding-top: 50px;
    padding-bottom: 50px;
  }
  .popup__body {
    padding-left: 12.5%;
    padding-right: 12.5%;
  }
  .popup__inner{
    padding-top: 60px;
    padding-bottom: 60px;
  }
  .popup__close {
    top: 3.75rem;
    right: 2.5rem;
  }
}
@media (min-width: 1024px) {
  .popup{
    padding-top: 100px;
    padding-bottom: 100px;
  }
  .popup__close {
    top: 1.875rem;
    right: 1.875rem;
  }
  .popup__close svg{
    width: 70px;
  }
  .popup__close svg path{
    fill: #ffffff;
  }
}

.footer{
  padding-top: 40px;
  padding-bottom: 40px;
}
.footer__inner{
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.footer__left p {
  font-size: 0.875rem;
}
.footer__right ul{
  display: flex;
  align-items: center;
}
.footer__right ul li{
  margin-right: 45px;
}
.footer__right ul li:last-child{
  margin-right: 0;
}
.footer__right ul li a svg {
  transition: all 300ms cubic-bezier(0.785, 0.135, 0.15, 0.86) 0ms;
}
.footer__right ul li a:hover svg {
  transform: scale(1.1);
}
.is-tpc .footer__left p {
  color: #C3C3C3;
}
@media (min-width: 768px) {
  .footer__right ul{
    padding-right: 10px;
  }
  .is-tpc .footer__right ul{
    padding-right: 0;
  }
  .is-tpc .footer__left{
    padding-left: 10px;
  }
}

.landing-page{
  --tw-bg-opacity: 1;
  background-color: rgb(0 0 0 / var(--tw-bg-opacity));
}
.landing-page__item{
  position: relative;
  display: flex;
  width: 100%;
  align-items: center;
  justify-content: center;
  padding: 25px;
  height: 50vh;
}
.landing-page__item--tbg{
  border-bottom-width: 1px;
  border-color: rgba(255, 255, 255, 0.3);
}
.landing-page__item--tbg .landing-page__arrow{
  top: auto;
  bottom: 0;
}
.landing-page__logo{
  display: flex;
  align-items: center;
  justify-content: center;
}
.landing-page__logo a{
  display: inline-block;
  max-width: 80%;
}
.landing-page__logo a img,
.landing-page__logo a svg {
  transition: all 500ms;
  max-width: 100%;
}
.landing-page__logo a:hover svg, .landing-page__logo a:hover img {
  transform: scale(1.05);
}
.landing-page__arrow{
  position: absolute;
  left: 0;
  top: 0;
  display: flex;
  width: 100%;
  cursor: pointer;
  align-items: center;
  justify-content: center;
  padding-top: 10px;
  padding-bottom: 10px;
}
.landing-page__arrow svg {
  transform: rotate(90deg);
}
@media (min-width: 768px) {
  .landing-page{
    display: flex;
  }
  .landing-page__item{
    height: 100vh;
    width: 50%;
  }
  .landing-page__item--tbg{
    border-bottom-width: 0px;
    border-right-width: 1px;
  }
  .landing-page__item--tbg .landing-page__arrow{
    right: 0;
    left: auto;
  }
  .landing-page__item--tpc .landing-page__arrow{
    left: 0;
  }
  .landing-page__arrow{
    top: 0;
    height: 100%;
    width: 50px;
  }
  .landing-page__arrow a{
    display: inline-block;
  }
  .landing-page__arrow a svg {
    transition: all 500ms;
    transform: rotate(0);
  }
  .landing-page__arrow a:hover svg {
    transform: scale(1.2);
  }
}

.blog-page{
  margin-bottom: 50px;
}
.blog-page__title{
  margin-bottom: 50px;
}
.blog-page__pagination{
  margin-top: 50px;
}
.blog-page__pagination-button-wrapper{
  text-align: center;
}
.blog-page__pagination-button-wrapper p{
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity));
}
@media (min-width: 480px) {
  .blog-page__grid{
    margin-left: -10px;
    margin-right: -10px;
    display: flex;
    flex-wrap: wrap;
  }
}
@media (min-width: 768px) {
  .blog-page{
    margin-bottom: 75px;
  }
}

.blog-post-page .blog-post{
  overflow: visible;
}
.blog-post-page .blog-post__date {
  font-size: 0.75rem;
  font-family: "Bebas Neue", regular;
  margin-bottom: 15px;
}
.blog-post-page .blog-post__title{
  margin-bottom: 30px;
  font-weight: 900;
  font-size: 3.25rem;
}
.blog-post-page .blog-post__image-slider{
  position: relative;
  margin-left: -30px;
  margin-right: -30px;
  overflow: hidden;
  outline: 2px solid transparent;
  outline-offset: 2px;
}
.blog-post-page .blog-post__image-slider .swiper-slide{
  height: 100%;
  width: auto;
}
.blog-post-page .blog-post__image-slider .swiper.swiper-mobile{
  display: none;
}
.blog-post-page .blog-post__image-slider .swiper.swiper-desktop{
  display: block;
}
.blog-post-page .blog-post__content{
  position: relative;
  z-index: 1;
  margin-top: -35px;
  --tw-bg-opacity: 1;
  background-color: rgb(0 0 0 / var(--tw-bg-opacity));
  padding: 20px;
}
.blog-post-page .blog-post__more{
  margin-top: 30px;
  display: inline-block;
  cursor: pointer;
}
.blog-post-page .blog-post__more span{
  -webkit-text-decoration-line: underline;
          text-decoration-line: underline;
}
.blog-post-page .blog-post__header-pc{
  display: none;
}
.blog-post-page .blog-post__typography-more{
  margin-top: 25px;
  display: none;
}
.blog-post-page .blog-post__typography-more.is-active{
  display: block;
}
.blog-post-page .blog-post__more {
  transition: all 300ms cubic-bezier(0.785, 0.135, 0.15, 0.86) 0ms;
}
.blog-post-page .blog-post__more .less{
  display: none;
}
.blog-post-page .blog-post__more.is-active .more{
  display: none;
}
.blog-post-page .blog-post__more.is-active .less{
  display: inline-block;
}
.blog-post-page .blog-post__more:hover{
  --tw-text-opacity: 1;
  color: rgb(121 121 121 / var(--tw-text-opacity));
}
.blog-post-page .blog-post__pagination{
  margin-top: 40px;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.blog-post-page .blog-post__pagination .disabled {
  opacity: 0.15;
  pointer-events: none;
}
@media (max-width: 767px) {
  .blog-post-page .blog-post__image-slider .gallery-popup__slider {
    height: auto !important;
  }
}
@media (min-width: 768px) {
  .blog-post-page .blog-post__header{
    width: 58.333333%;
  }
  .blog-post-page .blog-post__image-slider{
    margin-left: 0;
    margin-right: 0;
  }
  .blog-post-page .blog-post__header-pc{
    display: block;
  }
  .blog-post-page .blog-post__header-mobile{
    display: none;
  }
  .blog-post-page .blog-post__content-align{
    max-height: 100%;
    overflow-y: auto;
  }
  .blog-post-page .blog-post__content{
    margin-top: 25px;
    padding: 0;
  }
  .blog-post-page .blog-post__content * {
    font-size: 0.875rem;
  }
  .blog-post-page .blog-post__pagination{
    position: absolute;
    left: 0;
    bottom: 0;
    margin-top: 0;
    width: 100%;
    padding-left: 15px;
  }
}
@media (min-width: 1024px) {
  .blog-post-page .blog-post__typography-more{
    margin-top: 40px;
  }
}

.element{
  position: relative;
  margin-bottom: 50px;
  overflow: hidden;
}
.element.margin-bottom-none {
  margin-bottom: 0 !important;
}
.element__back{
  display: none;
}
@media (min-width: 768px) {
  .element{
    margin-bottom: 75px;
  }
  .element__back{
    margin-bottom: 30px;
    display: block;
  }
  .element__back svg{
    position: relative;
    left: 0;
    height: auto;
    width: 15px;
    transition: all 300ms cubic-bezier(0.785, 0.135, 0.15, 0.86) 0ms;
  }
  .element__back a{
    display: inline-block;
  }
  .element__back a:hover svg {
    left: -0.3125rem;
  }
}

.hero{
  position: relative;
  padding-top: 80px;
  padding-bottom: 80px;
}
.hero__text h1 {
  font-size: 3.5rem;
  font-weight: 900;
  text-transform: uppercase;
  line-height: 1;
}
@media (min-width: 1024px) {
  .hero__text h1 {
    font-size: 5.3125rem;
  }
}
@media (min-width: 1400px) {
  .hero__text h1 {
    font-size: 6.625rem;
  }
}
.hero__bg-slider {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
}
.hero__bg-slider:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
  background-color: rgba(0, 0, 0, 0.5);
}
.hero__bg-slide{
  position: relative;
  height: 100%;
  width: 100%;
}
.hero__bg-slide-image {
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
}
.hero__inner{
  position: relative;
}
.hero .flickity-slider{
  height: 100%;
}
.hero--video{
  padding-top: 0;
}
.hero--video .hero__video{
  position: relative;
  height: auto;
  min-height: auto;
}
.hero--video .hero__video:before {
  content: "";
  display: block;
  width: 100%;
  padding-top: 56.25%;
}
.hero--video .hero__video iframe{
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  width: 100%;
}
.hero--video .hero__bg-slide, .hero--video .hero__inner, .hero--video .hero__bg-slider{
  height: auto;
  min-height: auto;
}
.hero--video .hero__bg-slider{
  position: relative;
}
.hero--video .hero__bg-slider:after{
  display: none;
}
.hero--video .hero__inner{
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  width: 100%;
}
.hero--video .hero__text{
  display: flex;
  height: 100%;
  width: 100%;
  align-items: center;
  justify-content: center;
  padding-top: 50px;
  padding-bottom: 50px;
  padding-left: 25px;
  padding-right: 25px;
  text-align: center;
}
.hero--video .hero__text h1{
  margin-top: 0;
}
@media (max-width: 767px) {
  .hero__text h1 {
    font-size: 2.5rem;
  }
}
@media (min-width: 768px) {
  .hero{
    padding-top: 0;
    padding-bottom: 0;
  }
  .hero__inner{
    display: flex;
    height: 100vh;
    min-height: 56.25rem;
  }
  .hero__text{
    display: flex;
    width: 75%;
    flex-direction: column;
    justify-content: flex-end;
    padding-right: 25px;
    padding-top: 140px;
    padding-bottom: 50px;
  }
  .hero__text h1 {
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 6;
    line-clamp: 6;
    -webkit-box-orient: vertical;
    margin-top: 6.25rem;
  }
  .is-tpc .hero__inner{
    justify-content: flex-end;
  }
  .is-tpc .hero__text{
    padding-left: 25px;
    padding-right: 0;
    text-align: right;
  }
  .hero--video{
    padding-bottom: 80px;
  }
}

.img-with-content {
  padding-top: 1.25rem;
}
.img-with-content__image-holder{
  position: relative;
  margin-left: -30px;
  margin-right: -30px;
}
.img-with-content__image-holder:before {
  content: "";
  display: block;
  width: 100%;
  padding-top: 75.052%;
}
.img-with-content__image {
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
}
.img-with-content__content{
  position: relative;
  margin-top: -40px;
  --tw-bg-opacity: 1;
  background-color: rgb(0 0 0 / var(--tw-bg-opacity));
  padding: 20px;
}
.img-with-content__title{
  margin-bottom: 30px;
  word-break: break-word;
  font-size: 3.75rem;
  font-family: "Bebas Neue", regular;
}
.img-with-content__typography strong{
  font-weight: 700;
}
.img-with-content__btn{
  margin-top: 40px;
}
@media (min-width: 768px) {
  .img-with-content__inner{
    display: flex;
  }
  .img-with-content__image-holder{
    margin-left: 0;
    margin-right: 0;
    width: 58.333333%;
  }
  .img-with-content__content-holder{
    display: flex;
    width: 41.666667%;
    align-items: center;
    padding-top: 60px;
    padding-bottom: 60px;
  }
  .img-with-content__content{
    margin-top: 0;
    padding: 50px;
    padding-right: 40px;
    min-width: 100%;
    width: 100%;
    left: -7.5%;
  }
}
@media (min-width: 1024px) {
  .img-with-content__content{
    padding: 70px;
    padding-right: 40px;
  }
}

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

.projects__title{
  margin-bottom: 50px;
}
.projects__link-holder{
  margin-top: 50px;
  text-align: center;
}
@media (min-width: 480px) {
  .projects__inner{
    display: flex;
    flex-wrap: wrap;
    margin: 0 -0.5rem;
  }
}

.card-project{
  margin-bottom: 10px;
  width: 100%;
}
.card-project:last-child{
  margin-bottom: 0;
}
.card-project__inner{
  position: relative;
  display: block;
  width: 100%;
  overflow: hidden;
  padding-top: 100%;
}
.card-project__inner:hover .card-project__image {
  transform: scale(1.1);
}
.card-project__image {
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
  transition: all 500ms;
}
@media (min-width: 480px) {
  .card-project{
    margin-bottom: 0;
    width: 50%;
    padding: 0.5rem;
  }
}
@media (min-width: 548px) {
  .card-project{
    width: 33.333333%;
  }
}
@media (min-width: 768px) {
  .card-project{
    width: 25%;
  }
}
@media (min-width: 1024px) {
  .card-project {
    width: 20%;
  }
}

.partners__title{
  margin-bottom: 50px;
}
.partners__logo{
  margin-bottom: 40px;
}
.partners__logo:last-child{
  margin-bottom: 0;
}
@media (min-width: 480px) {
  .partners{
    margin-bottom: 20px;
  }
  .partners__grid{
    margin-left: -15px;
    margin-right: -15px;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
  }
  .partners__logo{
    margin-left: 15px;
    margin-right: 15px;
  }
  .partners__logo:last-child{
    margin-bottom: 30px;
  }
}
@media (min-width: 1024px) {
  .partners{
    margin-bottom: 15px;
  }
  .partners__grid{
    margin-left: -35px;
    margin-right: -35px;
  }
  .partners__logo{
    margin-left: 35px;
    margin-right: 35px;
    margin-bottom: 80px;
  }
  .partners__logo:last-child{
    margin-bottom: 60px;
  }
}

.gallery__title{
  margin-bottom: 50px;
}
@media (min-width: 480px) {
  .gallery__inner{
    margin-left: -10px;
    margin-right: -10px;
    display: flex;
    flex-wrap: wrap;
  }
}

.card-gallery{
  width: 100%;
  padding: 10px;
}
.card-gallery__inner{
  position: relative;
  display: block;
  width: 100%;
  cursor: pointer;
  overflow: hidden;
  padding-top: 100%;
}
.card-gallery__inner:hover .card-gallery__image {
  transform: scale(1.1);
}
.card-gallery__image {
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
  transition: all 500ms;
}
.card-gallery__overlay{
  position: absolute;
  left: 0;
  top: 0;
  display: flex;
  height: 100%;
  width: 100%;
  align-items: center;
  justify-content: center;
  padding: 15px;
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity));
  visibility: hidden;
  opacity: 0;
  transition: visibility 0s 500ms, opacity 500ms linear;
  background-color: rgba(0, 0, 0, 0.75);
}
.card-gallery__overlay h6 {
  font-size: 2rem;
  font-family: Roboto, sans-serif;
  line-height: 2rem;
  font-weight: 900;
  text-align: center;
}
.card-gallery:hover .card-gallery__overlay {
  visibility: visible !important;
  opacity: 1;
  transition: opacity 500ms linear;
}
@media (min-width: 480px) {
  .card-gallery{
    width: 50%;
  }
}
@media (min-width: 768px) {
  .card-gallery{
    width: 33.333333%;
  }
}
@media (min-width: 1024px) {
  .card-gallery{
    width: 25%;
  }
}

.tpc-hero {
  min-height: calc(100vh - 23.375rem);
}
.tpc-hero ul{
  width: 100%;
  padding-left: 30px;
  padding-right: 30px;
  text-align: right;
  --tw-text-opacity: 1;
  color: rgb(121 121 121 / var(--tw-text-opacity));
}
.tpc-hero ul li{
  margin-bottom: 25px;
}
.tpc-hero ul li:last-child{
  margin-bottom: 0;
}
.tpc-hero ul li a {
  font-size: 2.625rem;
  line-height: 1;
  font-weight: 900;
  text-transform: uppercase;
}
.tpc-hero ul li a:hover{
  --tw-text-opacity: 1;
  color: rgb(0 0 0 / var(--tw-text-opacity));
}
@media (min-width: 768px) {
  .tpc-hero {
    min-height: calc(100vh - 17.125rem);
  }
}
@media (min-width: 1024px) {
  .tpc-hero {
    min-height: calc(100vh - 19rem);
  }
  .tpc-hero ul{
    padding-left: 35px;
    padding-right: 35px;
  }
  .tpc-hero ul li a {
    font-size: 5.3125rem;
  }
}
@media (min-width: 1200px) {
  .tpc-hero {
    min-height: calc(100vh - 27.125rem);
  }
}
@media (min-width: 1400px) {
  .tpc-hero ul {
    padding-left: 8.3333%;
  }
  .tpc-hero ul li a {
    font-size: 9.0625rem;
  }
}

.two-col-img-with-content__image-holder{
  position: relative;
  margin-left: -30px;
  margin-right: -30px;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  background-image: url("../img/png/image-placeholder.png");
}
.two-col-img-with-content__image-holder:before {
  content: "";
  display: block;
  width: 100%;
  padding-top: 75.052%;
}
.two-col-img-with-content__image {
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
}
.two-col-img-with-content__content-holder{
  margin-bottom: 40px;
}
.two-col-img-with-content__content{
  width: 100%;
}
.two-col-img-with-content__title{
  margin-bottom: 30px;
  font-weight: 700;
  text-transform: uppercase;
  font-size: 1.875rem;
}
@media (min-width: 768px) {
  .two-col-img-with-content__inner{
    display: flex;
  }
  .two-col-img-with-content__image-holder{
    margin-left: 0;
    margin-right: 0;
    width: 50%;
  }
  .two-col-img-with-content__content-holder{
    margin-bottom: 0;
    display: flex;
    width: 50%;
    align-items: center;
    padding-top: 30px;
    padding-bottom: 30px;
    padding-left: 40px;
    padding-right: 30px;
  }
  .two-col-img-with-content__back{
    margin-top: -30px;
  }
  .two-col-img-with-content__title{
    font-weight: 400;
    text-transform: none;
  }
}
@media (min-width: 1024px) {
  .two-col-img-with-content__title {
    font-size: 2.8125rem;
  }
}
@media (min-width: 1200px) {
  .two-col-img-with-content__title {
    font-size: 3.75rem;
  }
}
@media (min-width: 1400px) {
  .two-col-img-with-content__content-holder{
    padding: 60px;
    padding-left: 8.33%;
  }
  .two-col-img-with-content__back{
    margin-top: -60px;
  }
}

.form-block__content * {
  word-break: break-all;
}
.form-block__title{
  margin-bottom: 20px;
  font-weight: 700;
  text-transform: uppercase;
  font-size: 1.875rem;
}
.form-block__form{
  margin-top: 30px;
}
@media (min-width: 768px) {
  .form-block__inner{
    display: flex;
  }
  .form-block__form{
    margin-left: 0;
    margin-right: 0;
    margin-top: 0;
    width: 50%;
  }
  .form-block__back, .form-block__content, .form-block__title{
    padding-left: 40px;
  }
  .form-block__content{
    margin-bottom: 0;
    width: 50%;
    padding-right: 30px;
  }
  .form-block__title{
    font-weight: 400;
    text-transform: none;
  }
}
@media (min-width: 1024px) {
  .form-block__title {
    font-size: 2.8125rem;
  }
}
@media (min-width: 1200px) {
  .form-block__title {
    font-size: 3.75rem;
  }
}
@media (min-width: 1400px) {
  .form-block__back, .form-block__content, .form-block__title {
    padding-left: 8.33%;
  }
  .form-block__content{
    padding-right: 60px;
  }
}
