@charset "UTF-8";
/* Box sizing rules */
*,
*::before,
*::after {
  box-sizing: border-box; }

*, *:focus, *:hover {
  outline: none; }

/* Remove default padding */
ul[class],
ol[class] {
  padding: 0; }

/* Remove default margin */
body,
h1,
h2,
h3,
h4,
p,
ul[class],
ol[class],
li,
figure,
figcaption,
blockquote,
dl,
dd {
  margin: 0; }

/* Set core body defaults */
body {
  min-height: 100vh;
  scroll-behavior: smooth;
  text-rendering: optimizeSpeed;
  line-height: 1.5; }

/* Remove list styles on ul, ol elements with a class attribute */
ul[class],
ol[class] {
  list-style: none; }

/* A elements that don't have a class get default styles */
a:not([class]) {
  text-decoration-skip-ink: auto; }

/* Make images easier to work with */
img {
  display: block;
  object-fit: cover; }

/* Inherit fonts for inputs and buttons */
input,
button,
textarea,
select {
  font: inherit; }

button {
  border: 0;
  cursor: pointer; }

ul {
  margin: 0;
  padding: 0; }

li {
  margin: 0;
  list-style-type: none; }

/* Remove all animations and transitions for people that prefer not to see them */
@media (prefers-reduced-motion: reduce) {
  * {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important; } }
::selection {
  color: #ffffff;
  background: #FF4025; }

html {
  color: #000000;
  background: #F6F6F6; }

a {
  color: #000000;
  transition: color .5s ease; }
  a:visited {
    color: #000000; }
  a:hover {
    transition: color .5s ease;
    color: #FF4025; }

::selection {
  color: #ffffff;
  background: #FF4025; }

html {
  color: #000000;
  background: #F6F6F6; }

a {
  color: #000000;
  transition: color .5s ease; }
  a:visited {
    color: #000000; }
  a:hover {
    transition: color .5s ease;
    color: #FF4025; }

:root {
  --x-large-title:4vw;
  --large-title:3vw;
  --medium-title:2.5vw;
  --small-title:2vw;
  --x-large-subtitle:3vw;
  --large-subtitle:2vw;
  --medium-subtitle:1.75vw;
  --small-subtitle:1.5vw;
  --x-large-p:2rem;
  --large-p:1.4rem;
  --medium-p:1.2rem;
  --small-p:1rem;
  --medium-btn:1.1rem;
  --small-btn:0.9rem; }
  @media (min-width: 280px) and (max-width: 799px) {
    :root {
      --x-large-title:13vw;
      --large-title:10vw;
      --medium-title:8vw;
      --small-title:7vw;
      --large-subtitle:8vw;
      --medium-subtitle:7vw;
      --small-subtitle:6vw;
      --large-p:1.3rem;
      --small-p:.85rem; } }
  @media (min-width: 480px) and (max-width: 1024px) and (orientation: portrait) {
    :root {
      --x-large-title:11vw;
      --large-title:8vw;
      --medium-title:6vw;
      --small-title:5vw;
      --large-subtitle:5vw;
      --medium-subtitle:4vw;
      --small-subtitle:3vw;
      --medium-btn:1.2rem;
      --small-btn:1rem;
      --large-p:1.6rem;
      --medium-p:1.4rem;
      --small-p:1.2rem; } }
  @media (min-width: 800px) and (max-width: 1440px) {
    :root {
      --x-large-title:6vw;
      --large-title:4.5vw;
      --medium-title:4vw;
      --small-title:4vw;
      --large-subtitle:4vw;
      --medium-subtitle:3vw;
      --small-subtitle:2.5vw;
      --large-p:1.3rem;
      --small-p:.9rem; } }
  @media (min-width: 2560px) and (orientation: landscape) {
    :root {
      --small-subtitle:1.2vw; } }

html {
  font-family: "Lato", sans-serif; }

input, textarea, input::placeholder, textarea::placeholder {
  font-family: "Lato", sans-serif;
  font-weight: 300; }

button {
  font-family: "Lato", sans-serif; }

strong {
  font-weight: 700; }

h1, h2, h3, h4, h5, h6 {
  font-family: "Prata", serif; }
  h1 strong, h2 strong, h3 strong, h4 strong, h5 strong, h6 strong {
    font-weight: 300; }

h1 {
  font-weight: 400;
  line-height: 140%;
  font-size: var(--large-title);
  margin-bottom: 30px; }

h2 {
  font-weight: 400;
  line-height: 150%;
  font-size: var(--large-subtitle);
  margin-bottom: 30px; }

h1 + h2 {
  margin-top: -15px; }

h3 {
  font-weight: 400;
  line-height: 150%;
  font-size: var(--small-subtitle); }

p {
  line-height: 160%;
  font-weight: 300;
  font-size: var(--large-p);
  margin-bottom: 30px; }

:root {
  --mobile-btn-height: 65px;
  --horizontal-s:2vw;
  --horizontal:3vw;
  --horizontal-l:6vw;
  --horizontal-xl:10vw;
  --vertical-s:1vw;
  --vertical:2vw;
  --vertical-l:4vw;
  --vertical-xl:8vw; }
  @media (min-width: 280px) and (max-width: 799px) {
    :root {
      --horizontal-s:2vw;
      --horizontal:3vw;
      --horizontal-l:6vw;
      --horizontal-xl:10vw;
      --vertical-s:5vw;
      --vertical:10vw;
      --vertical-l:15vw;
      --vertical-xl:20vw; } }
  @media (min-width: 480px) and (max-width: 1024px) and (orientation: portrait) {
    :root {
      --mobile-btn-height: 85px;
      --horizontal:6vw;
      --vertical-s:4vw;
      --vertical:8vw;
      --vertical-l:10vw;
      --vertical-xl:15vw; } }

@keyframes fadeIn {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }
@keyframes fadeInUp {
  from {
    opacity: 0;
    transform: translate3d(0, 100%, 0); }
  to {
    opacity: 1;
    transform: translate3d(0, 0, 0); } }
.fadeInUp {
  animation-name: fadeInUp; }

@keyframes bounceInRight {
  from,
    60%,
    75%,
    90%,
    to {
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  from {
    opacity: 0;
    transform: translate3d(3000px, 0, 0); }
  60% {
    opacity: 1;
    transform: translate3d(-25px, 0, 0); }
  75% {
    transform: translate3d(10px, 0, 0); }
  90% {
    transform: translate3d(-5px, 0, 0); }
  to {
    transform: translate3d(0, 0, 0); } }
.bounceInRight {
  animation-name: bounceInRight; }

@keyframes bounceInLeft {
  from,
    60%,
    75%,
    90%,
    to {
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  0% {
    opacity: 0;
    transform: translate3d(-3000px, 0, 0); }
  60% {
    opacity: 1;
    transform: translate3d(25px, 0, 0); }
  75% {
    transform: translate3d(-10px, 0, 0); }
  90% {
    transform: translate3d(5px, 0, 0); }
  to {
    transform: translate3d(0, 0, 0); } }
.bounceInLeft {
  animation-name: bounceInLeft; }

@keyframes slideInUp {
  from {
    transform: translate3d(0, 100%, 0);
    visibility: visible; }
  to {
    transform: translate3d(0, 0, 0); } }
.slideInUp {
  animation-name: slideInUp; }

@keyframes pulse-dot {
  0% {
    transform: scale(0.9); }
  50% {
    transform: scale(1); }
  100% {
    transform: scale(0.9); } }
@keyframes arrowDown {
  0% {
    opacity: 0;
    transform: translateY(-10vh); }
  50% {
    opacity: 1;
    transform: translateY(0); }
  100% {
    opacity: 0;
    transform: translateY(30vh); } }
::selection {
  color: #ffffff;
  background: #FF4025; }

html {
  color: #000000;
  background: #F6F6F6; }

a {
  color: #000000;
  transition: color .5s ease; }
  a:visited {
    color: #000000; }
  a:hover {
    transition: color .5s ease;
    color: #FF4025; }

html {
  overflow-x: hidden;
  scroll-behavior: smooth; }
  html:lang(jp) body, html:lang(jp) h1, html:lang(jp) h2, html:lang(jp) h3, html:lang(jp) h4, html:lang(jp) h5, html:lang(jp) h6, html:lang(jp) p, html:lang(jp) cite {
    font-family: 'Noto Sans JP', sans-serif !important; }

img.icon {
  object-fit: contain;
  display: inline-block; }

.gb_block {
  width: 100vw; }

.frontpage.warning {
  width: 100vw;
  height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center; }

.location_link {
  text-decoration: none; }

.btn {
  padding: 8px 35px;
  border-radius: 30px;
  display: inline-block;
  text-decoration: none;
  text-transform: uppercase;
  margin: 10px 10px 10px 0;
  line-height: 35px;
  cursor: pointer;
  font-size: var(--small-p);
  white-space: normal; }
  .btn:visited {
    color: inherit; }
  @media (min-width: 280px) and (max-width: 799px) {
    .btn {
      padding: 6px 30px; } }
  @media (min-width: 480px) and (max-width: 1024px) and (orientation: portrait) {
    .btn {
      padding: 10px 50px;
      font-size: var(--small-btn); } }
  @media (min-width: 800px) and (max-width: 1440px) {
    .btn {
      padding: 5px 28px; } }

.action_btn {
  background: linear-gradient(217.1deg, #FF2A42 33.82%, #FF5509 84.93%), #FF5C00;
  color: #ffffff;
  text-shadow: 2px 2px 1px rgba(139, 24, 17, 0.25);
  transition: background-color .6s ease, color .3s ease; }
  .action_btn:visited {
    color: #ffffff; }
  .action_btn:hover {
    background: #ffffff;
    color: #000000;
    text-shadow: none;
    transition: background-color .6s ease, color .3s ease; }

.action_btn.black {
  transition: background-color .6s ease, color .3s ease; }
  .action_btn.black:hover {
    background: #000000;
    color: #ffffff;
    transition: background-color .6s ease, color .3s ease; }

.secondary_btn {
  background: #ffffff;
  color: #000000;
  transition: background-color .6s ease, color .3s ease; }
  .secondary_btn:visited {
    color: #ffffff; }
  .secondary_btn:hover {
    background: linear-gradient(217.1deg, #FF2A42 33.82%, #FF5509 84.93%), #FF5C00;
    color: #ffffff;
    text-shadow: 2px 2px 1px rgba(139, 24, 17, 0.25);
    transition: background-color .6s ease, color .3s ease; }

.secondary_btn.black {
  background: #000000;
  color: #ffffff;
  transition: background-color .6s ease, color .3s ease; }
  .secondary_btn.black:hover {
    background: linear-gradient(217.1deg, #FF2A42 33.82%, #FF5509 84.93%), #FF5C00;
    color: #ffffff;
    text-shadow: 2px 2px 1px rgba(139, 24, 17, 0.25);
    transition: background-color .6s ease, color .3s ease; }

.ghost_btn {
  background: none;
  border: 1px solid; }

.ghost_btn.white {
  border-color: #ffffff;
  color: #ffffff;
  transition: background-color .6s ease, color .3s ease; }
  .ghost_btn.white:hover {
    background: #ffffff;
    color: #000000;
    transition: background-color .6s ease, color .3s ease; }

.ghost_btn.black {
  border-color: #000000;
  color: #000000;
  transition: background-color .6s ease, color .3s ease; }
  .ghost_btn.black:hover {
    background: #000000;
    color: #ffffff;
    transition: background-color .6s ease, color .3s ease; }

.read_more_link {
  padding: 0;
  text-decoration: none;
  font-size: var(--small-btn);
  text-transform: uppercase;
  font-weight: 600;
  background: none;
  transition: color .5s ease;
  display: block; }
  .read_more_link img {
    width: 20px;
    height: 13px;
    margin-right: 15px;
    filter: brightness(0) saturate(100%);
    transition: filter .5s ease; }
  .read_more_link:hover {
    color: #FF4025;
    transition: color .5s ease;
    cursor: pointer; }
    .read_more_link:hover img {
      filter: brightness(0) saturate(100%) invert(52%) sepia(56%) saturate(7443%) hue-rotate(6deg) brightness(109%) contrast(101%);
      transition: filter .5s ease; }

.button_repeater .read_more_link {
  margin-top: 10px;
  margin-bottom: 10px; }
  @media (min-width: 280px) and (max-width: 799px) {
    .button_repeater .read_more_link {
      margin-top: 25px;
      margin-bottom: 25px; } }

.next_posts_btn_wrap a {
  padding: 10px 44px;
  border-radius: 30px;
  display: inline-block;
  text-decoration: none;
  text-transform: uppercase;
  margin: 10px 0;
  line-height: 35px;
  cursor: pointer;
  font-size: var(--small-p);
  white-space: normal;
  background: #000000;
  color: #ffffff;
  transition: background-color .6s ease, color .3s ease; }
  .next_posts_btn_wrap a:hover {
    background: linear-gradient(217.1deg, #FF2A42 33.82%, #FF5509 84.93%), #FF5C00;
    color: #ffffff;
    text-shadow: 2px 2px 1px rgba(139, 24, 17, 0.25);
    transition: background-color .6s ease, color .3s ease; }

.slider_button {
  background: linear-gradient(217.1deg, #FF2A42 33.82%, #FF5509 84.93%), #FF5C00;
  width: 80px;
  height: 80px;
  padding: 0;
  position: absolute;
  top: 45%;
  z-index: 100;
  cursor: pointer;
  overflow: hidden; }
  @media (min-width: 280px) and (max-width: 799px) {
    .slider_button {
      width: 60px;
      height: 60px; } }
  @media (min-width: 800px) and (max-width: 1440px) {
    .slider_button {
      width: 70px;
      height: 70px;
      top: 52%; } }
  .slider_button .background_wrap {
    width: 80px;
    height: 80px;
    padding-top: 27px;
    background-color: black;
    transition: background .5s ease; }
    .slider_button .background_wrap .icon {
      margin-left: auto;
      margin-right: auto;
      width: 26px;
      height: 26px; }
    @media (min-width: 280px) and (max-width: 799px) {
      .slider_button .background_wrap {
        width: 60px;
        height: 60px;
        padding-top: 20px; }
        .slider_button .background_wrap img {
          width: 20px;
          height: 20px; } }
    @media (min-width: 800px) and (max-width: 1440px) {
      .slider_button .background_wrap {
        width: 70px;
        height: 70px;
        padding-top: 25px; }
        .slider_button .background_wrap img {
          width: 22px;
          height: 22px; } }
  .slider_button:hover .background_wrap {
    background-color: rgba(0, 0, 0, 0);
    transition: background-color .5s ease; }
  .slider_button:focus {
    border-radius: 0;
    outline-color: none; }

.slider_button.left {
  left: var(--horizontal);
  display: none; }
  @media (min-width: 1441px) {
    .slider_button.left {
      display: block; } }

.slider_button.right {
  right: var(--horizontal); }

.slider_button.hidden {
  opacity: 0;
  transition: opacity 1s ease; }

.social {
  display: flex;
  margin-bottom: var(--vertical-l); }
  .social a {
    margin-right: 30px; }
    .social a img {
      filter: brightness(0) saturate(100%);
      transition: fill .5s ease; }
    .social a:hover img {
      filter: brightness(0) saturate(100%) invert(52%) sepia(56%) saturate(7443%) hue-rotate(6deg) brightness(109%) contrast(101%);
      transition: fill .5s ease; }
  .social .facebook img {
    margin-top: -2px;
    margin-left: 5px; }

/* ------------- Cookie message ----------------------------------------------------------------------------------------------------------- */
.cookie_message {
  background: rgba(0, 0, 0, 0.6);
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 10000;
  display: none; }
  .cookie_message .box {
    background: #ffffff;
    width: 30vw;
    max-width: 450px;
    position: fixed;
    bottom: 0;
    right: 10vw; }
    @media (min-width: 280px) and (max-width: 799px) {
      .cookie_message .box {
        width: 100vw;
        right: 0;
        left: 0; } }
    @media (min-width: 800px) and (max-width: 1440px) {
      .cookie_message .box {
        width: 55vh; } }
    .cookie_message .box .gdpr_image {
      display: block;
      width: 100%;
      max-height: 25vh; }
      @media (min-width: 280px) and (max-width: 799px) {
        .cookie_message .box .gdpr_image {
          display: none; } }
      @media (min-width: 480px) and (max-width: 1024px) and (orientation: portrait) {
        .cookie_message .box .gdpr_image {
          display: block;
          width: calc(100vw - var(--horizontal) * 2); } }
      @media (min-width: 800px) and (max-width: 1440px) {
        .cookie_message .box .gdpr_image {
          width: 55vh; } }
    .cookie_message .box .text {
      padding: var(--horizontal-s); }
      @media (min-width: 280px) and (max-width: 799px) {
        .cookie_message .box .text {
          padding: var(--horizontal-l); } }
      .cookie_message .box .text h2 {
        font-size: 2rem;
        margin: 0; }
      .cookie_message .box .text p {
        font-size: 1.2rem;
        max-width: 33ch; }
        @media (min-width: 480px) and (max-width: 1024px) and (orientation: portrait) {
          .cookie_message .box .text p {
            font-size: 1.5rem; } }
      .cookie_message .box .text .checkbox_wrap {
        margin-top: 15px;
        margin-bottom: 15px; }
        .cookie_message .box .text .checkbox_wrap .checkbox {
          transform: scale(1.3);
          filter: grayscale(1); }
        .cookie_message .box .text .checkbox_wrap label {
          font-size: 1.1rem;
          font-weight: 600;
          margin-left: 5px; }
        .cookie_message .box .text .checkbox_wrap label.functional {
          color: #828282; }
        .cookie_message .box .text .checkbox_wrap p {
          margin-bottom: 0; }

.cookie_message.visible {
  display: block; }

/* ------------- Wordpress Embedd Videos ----------------------------------------------------------------------------------------------------------- */
.wp-block-embed.is-type-video {
  position: relative;
  padding-bottom: 56.25%;
  /* 16:9 */
  padding-top: 25px;
  height: 0; }
  .wp-block-embed.is-type-video iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 90%;
    height: 90%; }

.wp-block-video video {
  width: 100%; }

/* ------------- Default Wordpress Blocks ----------------------------------------------------------------------------------------------------------- */
.wp-block-group__inner-container {
  display: flex; }
  @media (min-width: 280px) and (max-width: 799px) {
    .wp-block-group__inner-container {
      flex-direction: column; } }
  @media (min-width: 800px) and (max-width: 1440px) {
    .wp-block-group__inner-container {
      flex-direction: column; } }
  .wp-block-group__inner-container .wp-block-group {
    width: 65vw;
    padding: 20vh var(--horizontal) var(--vertical) var(--horizontal); }
    @media (min-width: 280px) and (max-width: 799px) {
      .wp-block-group__inner-container .wp-block-group {
        width: 100%; } }
    @media (min-width: 800px) and (max-width: 1440px) {
      .wp-block-group__inner-container .wp-block-group {
        width: 100vw; } }
    .wp-block-group__inner-container .wp-block-group h2 {
      margin-top: var(--vertical-l);
      max-width: 30ch; }
      @media (min-width: 280px) and (max-width: 799px) {
        .wp-block-group__inner-container .wp-block-group h2 {
          width: 100%; } }
    .wp-block-group__inner-container .wp-block-group h2:first-of-type {
      font-size: var(--large-title);
      margin-top: 20px;
      max-width: 20ch; }
      @media (min-width: 280px) and (max-width: 799px) {
        .wp-block-group__inner-container .wp-block-group h2:first-of-type {
          width: 100%; } }
    .wp-block-group__inner-container .wp-block-group h3:first-of-type {
      margin: var(--vertical) 0 20px 0;
      color: #828282; }
    .wp-block-group__inner-container .wp-block-group p, .wp-block-group__inner-container .wp-block-group h3 {
      width: 80%; }
      @media (min-width: 280px) and (max-width: 799px) {
        .wp-block-group__inner-container .wp-block-group p, .wp-block-group__inner-container .wp-block-group h3 {
          width: 100%; } }
    .wp-block-group__inner-container .wp-block-group .wp-block-group__inner-container {
      display: inline-block; }

.gb_block ~ .wp-block-group ~ .wp-block-group {
  padding: var(--vertical) var(--horizontal) var(--vertical) var(--horizontal); }

.wp-block-group .wp-block-group__inner-container .wp-block-group ~ .wp-block-group {
  width: 33.33vw; }
  @media (min-width: 280px) and (max-width: 799px) {
    .wp-block-group .wp-block-group__inner-container .wp-block-group ~ .wp-block-group {
      width: 100%; } }
  .wp-block-group .wp-block-group__inner-container .wp-block-group ~ .wp-block-group h3:first-of-type {
    margin: 0 0 20px 0;
    color: #000000; }

.wp-block-group .wp-block-image {
  height: 100vh; }
  .wp-block-group .wp-block-image img {
    height: 100vh;
    width: 100%; }
.wp-block-group .wp-block-quote {
  background: #000000;
  color: #ffffff;
  padding: var(--vertical) var(--horizontal);
  margin-bottom: var(--vertical);
  width: 70%; }
  .wp-block-group .wp-block-quote p {
    margin-top: var(--vertical);
    font-family: "Prata", serif;
    font-size: 2rem;
    width: 100%; }
  .wp-block-group .wp-block-quote cite {
    font-family: "Lato", sans-serif;
    font-size: 1rem;
    font-style: normal;
    margin-bottom: var(--vertical);
    display: inline-block; }
.wp-block-group .wp-block-quote.is-style-large p {
  font-size: 2vw; }
.wp-block-group .wp-block-image {
  margin-bottom: var(--vertical); }

/* ------------- Logo ----------------------------------------------------------------------------------------------------------- */
.logo {
  position: absolute;
  left: var(--horizontal);
  top: var(--vertical);
  z-index: 1000; }

.logo.large {
  display: none; }

.logo.small {
  display: block;
  background: #000000;
  width: 60vw;
  height: var(--mobile-btn-height);
  top: 0;
  left: 0;
  position: fixed;
  padding: 8px var(--horizontal); }
  @media (min-width: 480px) and (max-width: 1024px) and (orientation: portrait) {
    .logo.small {
      width: 70vw; }
      .logo.small img {
        width: 220px; } }

@media (min-width: 280px) and (max-width: 799px) {
  .logo {
    background: #000000; }
    .logo img {
      filter: invert(1); } }
@media (min-width: 801px) {
  .logo.small {
    display: none; }

  .logo.large {
    display: block; } }
.home .logo img {
  filter: invert(1); }

.logo {
  transition: all 0.8s ease; }

.logo.background--dark img {
  filter: invert(1);
  transition: all 0.8s ease; }

.logo.background--light {
  transition: all 0.8s ease; }

/* ------------- Hide / Show Mobile menus on scroll ---------------- */
.mobile_top_menu .logo.small, .mobile_top_menu .main_menu_toggle {
  transition: all 200ms linear; }

.scroll-down .mobile_top_menu .logo.small, .scroll-down .mobile_top_menu .main_menu_toggle {
  transition: all 200ms linear;
  transform: translate3d(0, calc(var(--mobile-btn-height) * -1), 0); }

.mobile_buttons {
  transition: all 200ms linear; }

.scroll-up .mobile_buttons {
  transition: all 200ms linear;
  transform: translate3d(0, var(--mobile-btn-height), 0); }

/* ------------- Menu ----------------------------------------------------------------------------------------------------------- */
.menu_buttons_wrap {
  position: fixed;
  top: 0;
  right: 0;
  display: flex;
  z-index: 1000; }

/* ------------- Language Menu ---------------- */
.admin_edit_btn {
  display: flex;
  align-items: center;
  background: rgba(0, 0, 0, 0.2);
  color: #ffffff;
  text-transform: uppercase;
  font-size: 0.9rem;
  padding: 20px 30px;
  cursor: pointer;
  transition: background .5s ease; }
  @media (min-width: 280px) and (max-width: 799px) {
    .admin_edit_btn {
      display: none; } }
  @media (min-width: 480px) and (max-width: 1024px) and (orientation: portrait) {
    .admin_edit_btn {
      display: block; } }
  .admin_edit_btn .icon {
    margin-top: -4px;
    display: inline-block;
    transition: all .5s ease; }
  .admin_edit_btn:hover {
    background: rgba(0, 0, 0, 0.6);
    transition: background .5s ease; }
    .admin_edit_btn:hover .icon {
      filter: invert(1);
      transition: all .5s ease;
      display: inline-block; }

.language_menu_toggle {
  align-items: center;
  background: #000000;
  color: #ffffff;
  text-transform: uppercase;
  font-size: 0.9rem;
  cursor: pointer;
  display: none; }
  @media (min-width: 801px) {
    .language_menu_toggle {
      max-width: 200px;
      max-height: 75px; } }
  @media (min-width: 800px) and (max-width: 1440px) {
    .language_menu_toggle {
      display: flex;
      padding: 20px 30px; }
      .language_menu_toggle .icon {
        margin-right: 10px;
        margin-top: -4px;
        display: inline-block; } }
  @media (min-width: 1441px) and (orientation: landscape) {
    .language_menu_toggle {
      display: flex;
      padding: 20px 30px; }
      .language_menu_toggle .icon {
        margin-right: 10px;
        margin-top: -4px;
        display: inline-block; } }

.language_close {
  position: absolute;
  top: 20px;
  right: 20px;
  padding: 20px 25px 18px 25px;
  cursor: pointer;
  background: rgba(246, 246, 246, 0.15);
  transition: background .5s ease; }
  .language_close:hover {
    background: rgba(246, 246, 246, 0.2);
    transition: background .5s ease; }

.language_menu .menu_background {
  width: 100vw;
  min-height: 100vh;
  top: 0;
  right: 0;
  position: fixed;
  z-index: 1010; }
.language_menu .language_menu_wrap {
  width: 33.33vw;
  height: 100vh;
  background: #000000;
  color: #ffffff;
  padding: 30px;
  top: 0;
  right: 0;
  position: fixed;
  z-index: 1100;
  overflow-y: scroll; }
  .language_menu .language_menu_wrap::-webkit-scrollbar {
    width: 5px; }
  .language_menu .language_menu_wrap::-webkit-scrollbar-track {
    box-shadow: inset 0 0 6px rgba(163, 163, 163, 0.3); }
  .language_menu .language_menu_wrap::-webkit-scrollbar-thumb {
    background-color: #FF4025; }
  .language_menu .language_menu_wrap .current-lang a {
    font-weight: 700; }
  @media (min-width: 280px) and (max-width: 799px) {
    .language_menu .language_menu_wrap {
      width: 100%; } }
  .language_menu .language_menu_wrap h2 {
    color: #ffffff;
    font-size: 0.9rem;
    font-family: "Lato", sans-serif;
    text-transform: uppercase;
    font-weight: 400;
    margin: 15px 0 60px 20px; }
  .language_menu .language_menu_wrap a {
    color: #ffffff;
    text-decoration: none;
    display: block;
    font-weight: 300;
    padding: 18px 20px;
    transition: background .5s ease;
    border-top: 1px solid rgba(246, 246, 246, 0.2); }
    .language_menu .language_menu_wrap a:hover {
      background: rgba(246, 246, 246, 0.05);
      transition: background .5s ease; }
  .language_menu .language_menu_wrap li:nth-last-of-type(1) {
    border-bottom: 1px solid rgba(246, 246, 246, 0.2); }

/* ------------- Mobile Buttons ---------------- */
.mobile_buttons {
  display: flex;
  height: var(--mobile-btn-height);
  position: fixed;
  z-index: 1000;
  bottom: 0; }
  @media (min-width: 801px) {
    .mobile_buttons {
      display: none; } }
  .mobile_buttons .mobile_btn {
    width: 50vw;
    text-align: center;
    text-transform: uppercase;
    display: block;
    padding-top: 23px;
    font-size: var(--small-btn);
    text-decoration: none; }
    @media (min-width: 480px) and (max-width: 1024px) and (orientation: portrait) {
      .mobile_buttons .mobile_btn {
        padding-top: 30px; } }
  .mobile_buttons .buy_tickets {
    background: linear-gradient(217.1deg, #FF2A42 33.82%, #FF5509 84.93%), #FF5C00;
    color: #ffffff;
    text-shadow: 2px 2px 1px rgba(139, 24, 17, 0.25);
    transition: background-color .6s ease, color .3s ease; }
    .mobile_buttons .buy_tickets:visited {
      color: #ffffff; }
    .mobile_buttons .buy_tickets:hover {
      background: #000000;
      color: #ffffff;
      text-shadow: none;
      transition: background-color .6s ease, color .3s ease; }
  .mobile_buttons .plan_visit {
    color: #ffffff;
    background: #000000;
    transition: background-color .6s ease, color .3s ease; }
    .mobile_buttons .plan_visit:visited {
      color: #ffffff; }
    .mobile_buttons .plan_visit:hover {
      background: linear-gradient(217.1deg, #FF2A42 33.82%, #FF5509 84.93%), #FF5C00;
      color: #ffffff;
      text-shadow: 2px 2px 1px rgba(139, 24, 17, 0.25);
      transition: background-color .6s ease, color .3s ease; }

/* ------------- Main Menu ---------------- */
.main_menu_toggle {
  background: linear-gradient(217.1deg, #FF2A42 33.82%, #FF5509 84.93%), #FF5C00;
  color: #ffffff;
  text-transform: uppercase;
  font-size: var(--small-btn);
  cursor: pointer;
  height: var(--mobile-btn-height);
  width: 40vw; }
  .main_menu_toggle .icon {
    margin-left: 10px;
    margin-top: 2px;
    display: inline-block; }
  @media (min-width: 480px) and (max-width: 1024px) and (orientation: portrait) {
    .main_menu_toggle {
      width: 30vw; } }
  @media (min-width: 801px) {
    .main_menu_toggle {
      padding: 20px 30px;
      height: auto;
      width: auto;
      max-height: 75px;
      max-width: 145px; }
      .main_menu_toggle .icon {
        margin-left: 10px;
        margin-top: 2px;
        display: inline-block; } }

.main_menu .menu_background {
  width: 100vw;
  min-height: 100vh;
  top: 0;
  right: 0;
  position: fixed;
  z-index: 1010; }
.main_menu .main_menu_wrap {
  width: 100vw;
  height: 100vh;
  background: #000000;
  color: #ffffff;
  overflow-y: scroll;
  top: 0;
  right: 0;
  position: fixed;
  z-index: 1020;
  display: flex;
  flex-direction: column;
  justify-content: space-between; }
  .main_menu .main_menu_wrap::-webkit-scrollbar {
    width: 5px; }
  .main_menu .main_menu_wrap::-webkit-scrollbar-track {
    box-shadow: inset 0 0 6px rgba(163, 163, 163, 0.3); }
  .main_menu .main_menu_wrap::-webkit-scrollbar-thumb {
    background-color: #FF4025; }
  .main_menu .main_menu_wrap .location_link {
    color: #ffffff; }
    .main_menu .main_menu_wrap .location_link:hover {
      color: #FF4025; }
  @media (min-width: 480px) and (max-width: 1024px) and (orientation: portrait) {
    .main_menu .main_menu_wrap {
      padding: var(--horizontal-s); } }
  @media (min-width: 800px) and (max-width: 1440px) {
    .main_menu .main_menu_wrap {
      width: 60vw;
      padding: var(--horizontal); } }
  @media (min-width: 1441px) {
    .main_menu .main_menu_wrap {
      width: 40vw;
      padding: var(--horizontal-s); } }
  @media (min-width: 2560px) and (orientation: landscape) {
    .main_menu .main_menu_wrap {
      width: 25vw; } }
  .main_menu .main_menu_wrap .menu_top {
    display: flex;
    margin-bottom: var(--horizontal-s);
    width: 100%;
    justify-content: space-between; }
    .main_menu .main_menu_wrap .menu_top .search_form {
      position: relative;
      display: flex;
      width: calc(100% - 90px ); }
      .main_menu .main_menu_wrap .menu_top .search_form label {
        display: none; }
      @media (min-width: 280px) and (max-width: 799px) {
        .main_menu .main_menu_wrap .menu_top .search_form {
          margin: var(--horizontal);
          width: 100%; } }
      @media (min-width: 480px) and (max-width: 1024px) and (orientation: portrait) {
        .main_menu .main_menu_wrap .menu_top .search_form {
          margin: var(--horizontal-s); } }
      .main_menu .main_menu_wrap .menu_top .search_form .search_field {
        border: 0;
        background: rgba(246, 246, 246, 0.15);
        transition: background .5s ease;
        padding: 20px;
        font-size: var(--medium-p);
        font-weight: 300;
        color: #ffffff;
        height: 3.5vw;
        min-height: 60px;
        width: 100%;
        vertical-align: bottom; }
        @media (min-width: 280px) and (max-width: 799px) {
          .main_menu .main_menu_wrap .menu_top .search_form .search_field {
            margin: 0;
            width: 100%;
            height: var(--mobile-btn-height); } }
        @media (min-width: 2560px) and (orientation: landscape) {
          .main_menu .main_menu_wrap .menu_top .search_form .search_field {
            height: 3vw; } }
        .main_menu .main_menu_wrap .menu_top .search_form .search_field::-webkit-input-placeholder {
          font-size: var(--medium-p);
          font-weight: 300;
          color: #ffffff;
          font-style: italic; }
        .main_menu .main_menu_wrap .menu_top .search_form .search_field::-moz-placeholder {
          font-size: var(--medium-p);
          font-weight: 300;
          color: #ffffff;
          font-style: italic; }
        .main_menu .main_menu_wrap .menu_top .search_form .search_field:-ms-input-placeholder {
          font-size: var(--medium-p);
          font-weight: 300;
          color: #ffffff;
          font-style: italic; }
        .main_menu .main_menu_wrap .menu_top .search_form .search_field:-moz-placeholder {
          font-size: var(--medium-p);
          font-weight: 300;
          color: #ffffff; }
      .main_menu .main_menu_wrap .menu_top .search_form .search_submit {
        border: 0;
        background: rgba(246, 246, 246, 0.15);
        height: 3.5vw;
        width: 3.5vw;
        min-height: 60px;
        min-width: 60px;
        cursor: pointer; }
        @media (min-width: 280px) and (max-width: 799px) {
          .main_menu .main_menu_wrap .menu_top .search_form .search_submit {
            margin: 0;
            height: var(--mobile-btn-height);
            width: var(--mobile-btn-height); } }
        @media (min-width: 2560px) and (orientation: landscape) {
          .main_menu .main_menu_wrap .menu_top .search_form .search_submit {
            height: 3vw; } }
        .main_menu .main_menu_wrap .menu_top .search_form .search_submit img {
          margin-top: 6px;
          transition: filter .5s ease; }
        .main_menu .main_menu_wrap .menu_top .search_form .search_submit:hover img {
          filter: invert(52%) sepia(56%) saturate(7443%) hue-rotate(6deg) brightness(109%) contrast(101%);
          transition: filter .5s ease; }
    .main_menu .main_menu_wrap .menu_top .main_close {
      height: 3.5vw;
      width: 3.5vw;
      min-height: 60px;
      min-width: 60px;
      background: rgba(246, 246, 246, 0.15);
      transition: background .5s ease;
      display: none; }
      @media (min-width: 801px) {
        .main_menu .main_menu_wrap .menu_top .main_close {
          display: block; } }
      @media (min-width: 2560px) and (orientation: landscape) {
        .main_menu .main_menu_wrap .menu_top .main_close {
          height: 3vw;
          width: 3vw; } }
      .main_menu .main_menu_wrap .menu_top .main_close:hover {
        background: rgba(246, 246, 246, 0.2);
        transition: background .5s ease; }
  .main_menu .main_menu_wrap .mobile_bottom_buttons {
    width: calc(100% - var(--horizontal) * 2);
    margin-left: var(--horizontal);
    margin-bottom: var(--horizontal);
    display: flex; }
    @media (min-width: 480px) and (max-width: 1024px) and (orientation: portrait) {
      .main_menu .main_menu_wrap .mobile_bottom_buttons {
        width: calc(100% - var(--horizontal-s) * 2);
        margin-left: var(--horizontal-s);
        margin-bottom: var(--horizontal-s); } }
    @media (min-width: 801px) {
      .main_menu .main_menu_wrap .mobile_bottom_buttons {
        display: none; } }
    .main_menu .main_menu_wrap .mobile_bottom_buttons .mobile_close {
      height: var(--mobile-btn-height);
      flex-grow: 1;
      color: #ffffff;
      text-transform: uppercase;
      text-decoration: none;
      font-size: 0.9rem;
      font-weight: 600;
      text-transform: uppercase;
      background: rgba(246, 246, 246, 0.15);
      transition: background .5s ease; }
      .main_menu .main_menu_wrap .mobile_bottom_buttons .mobile_close img {
        margin-right: 5px; }
      @media (min-width: 801px) {
        .main_menu .main_menu_wrap .mobile_bottom_buttons .mobile_close {
          display: none; } }
      .main_menu .main_menu_wrap .mobile_bottom_buttons .mobile_close:hover {
        background: rgba(246, 246, 246, 0.2);
        transition: background .5s ease; }
    .main_menu .main_menu_wrap .mobile_bottom_buttons .mobile_language_menu_toggle {
      height: var(--mobile-btn-height);
      flex-grow: 2;
      color: #ffffff;
      text-transform: uppercase;
      text-decoration: none;
      font-size: 0.9rem;
      font-weight: 600;
      background: rgba(246, 246, 246, 0.15);
      transition: background .5s ease;
      margin: 0 0 0 var(--horizontal); }
      @media (min-width: 480px) and (max-width: 1024px) and (orientation: portrait) {
        .main_menu .main_menu_wrap .mobile_bottom_buttons .mobile_language_menu_toggle {
          margin-left: var(--horizontal-s); } }
      @media (min-width: 801px) {
        .main_menu .main_menu_wrap .mobile_bottom_buttons .mobile_language_menu_toggle {
          display: none; } }
      .main_menu .main_menu_wrap .mobile_bottom_buttons .mobile_language_menu_toggle img {
        width: 20px;
        height: 13px;
        margin-left: 5px;
        filter: brightness(0) saturate(100%) invert(100%); }
      .main_menu .main_menu_wrap .mobile_bottom_buttons .mobile_language_menu_toggle:hover {
        background: rgba(246, 246, 246, 0.2);
        transition: background .5s ease; }
  @media (min-width: 280px) and (max-width: 799px) {
    .main_menu .main_menu_wrap .main_navigation {
      flex-grow: 2;
      display: flex;
      flex-direction: column;
      justify-content: center; } }
  .main_menu .main_menu_wrap .main_navigation a {
    color: #ffffff;
    text-decoration: none;
    display: block;
    font-weight: 300;
    font-size: var(--medium-p);
    padding: 10px var(--horizontal);
    transition: color .5s ease; }
    @media (min-width: 280px) and (max-width: 799px) {
      .main_menu .main_menu_wrap .main_navigation a {
        font-size: var(--small-subtitle);
        margin-left: var(--horizontal); } }
    @media (min-width: 480px) and (max-width: 1024px) and (orientation: portrait) {
      .main_menu .main_menu_wrap .main_navigation a {
        font-size: var(--large-p);
        margin-left: var(--horizontal-s); } }
    @media (min-width: 1441px) {
      .main_menu .main_menu_wrap .main_navigation a {
        padding: 10px 20px; } }
    @media (min-width: 2560px) and (orientation: landscape) {
      .main_menu .main_menu_wrap .main_navigation a {
        font-size: calc(var(--large-p) * 1.2); } }
    .main_menu .main_menu_wrap .main_navigation a:hover {
      color: #FF4025;
      transition: color .5s ease; }
  .main_menu .main_menu_wrap .meta {
    margin: var(--horizontal);
    background: #202020; }
    @media (min-width: 480px) and (max-width: 1024px) and (orientation: portrait) {
      .main_menu .main_menu_wrap .meta {
        margin: var(--horizontal-s); } }
    @media (min-width: 801px) {
      .main_menu .main_menu_wrap .meta {
        background: none;
        margin: 0 0 0 20px; } }
    .main_menu .main_menu_wrap .meta .city_header {
      color: #ffffff;
      font-size: calc(var(--medium-p) * 1.2);
      font-family: "Lato", sans-serif;
      font-weight: 900;
      margin-bottom: 10px;
      margin-top: 4vh; }
      @media (min-width: 280px) and (max-width: 799px) {
        .main_menu .main_menu_wrap .meta .city_header {
          display: none; } }
    .main_menu .main_menu_wrap .meta .tabs_header {
      width: 100%;
      display: flex; }
      .main_menu .main_menu_wrap .meta .tabs_header .tab_title {
        width: 50%;
        height: var(--mobile-btn-height);
        font-family: "Prata", serif;
        font-size: var(--medium-p);
        color: #ffffff;
        background: rgba(0, 0, 0, 0.4); }
      .main_menu .main_menu_wrap .meta .tabs_header .tab_title-active {
        background: #202020; }
      @media (min-width: 801px) {
        .main_menu .main_menu_wrap .meta .tabs_header {
          display: none; } }
    .main_menu .main_menu_wrap .meta .openinghours {
      display: flex;
      margin-bottom: 20px; }
      @media (min-width: 280px) and (max-width: 799px) {
        .main_menu .main_menu_wrap .meta .openinghours {
          margin: 6vw; } }
      .main_menu .main_menu_wrap .meta .openinghours p {
        font-size: var(--medium-p);
        margin-bottom: 0; }
      .main_menu .main_menu_wrap .meta .openinghours img {
        margin: 8px 20px 0 0;
        filter: brightness(0) saturate(100%) invert(100%); }
    .main_menu .main_menu_wrap .meta .mobile_more_info_link {
      color: #ffffff;
      margin-left: 6vw;
      margin-bottom: 6vw;
      display: inline-block;
      font-size: var(--medium-p);
      font-weight: 300;
      text-decoration: none; }
      @media (min-width: 801px) {
        .main_menu .main_menu_wrap .meta .mobile_more_info_link {
          display: none; } }
      .main_menu .main_menu_wrap .meta .mobile_more_info_link img {
        width: 20px;
        height: 13px;
        margin-right: 18px;
        filter: brightness(0) saturate(100%) invert(100%);
        transition: filter .5s ease; }
      .main_menu .main_menu_wrap .meta .mobile_more_info_link:hover {
        color: #FF4025;
        transition: color .5s ease;
        cursor: pointer; }
        .main_menu .main_menu_wrap .meta .mobile_more_info_link:hover img {
          filter: brightness(100%) saturate(100%) invert(52%) sepia(56%) saturate(7443%) hue-rotate(6deg) brightness(109%) contrast(101%);
          transition: filter .5s ease; }
    .main_menu .main_menu_wrap .meta .social {
      display: flex;
      margin-bottom: 0; }
      @media (min-width: 280px) and (max-width: 799px) {
        .main_menu .main_menu_wrap .meta .social {
          display: none; } }
      .main_menu .main_menu_wrap .meta .social a {
        margin-right: 30px; }
        .main_menu .main_menu_wrap .meta .social a img {
          filter: brightness(100%);
          transition: filter .5s ease; }
        .main_menu .main_menu_wrap .meta .social a:hover img {
          filter: brightness(100%) saturate(100%) invert(52%) sepia(56%) saturate(7443%) hue-rotate(6deg) brightness(109%) contrast(101%);
          transition: filter .5s ease; }
      .main_menu .main_menu_wrap .meta .social .facebook img {
        margin-top: -2px; }
  .main_menu .main_menu_wrap .ticket_buttons {
    margin-top: 4vh; }
    @media (min-width: 280px) and (max-width: 799px) {
      .main_menu .main_menu_wrap .ticket_buttons {
        display: none; } }
    .main_menu .main_menu_wrap .ticket_buttons .action_btn {
      margin-right: 20px; }
    .main_menu .main_menu_wrap .ticket_buttons .btn {
      padding: 10px 37px; }
  .main_menu .main_menu_wrap .boring_links {
    margin-top: 2vh;
    width: 100%; }
    @media (min-width: 280px) and (max-width: 799px) {
      .main_menu .main_menu_wrap .boring_links {
        display: none; } }
    .main_menu .main_menu_wrap .boring_links ul {
      display: flex;
      justify-content: space-evenly;
      width: 100%; }
    .main_menu .main_menu_wrap .boring_links a {
      color: #828282;
      text-decoration: none;
      font-size: var(--small-p);
      font-weight: 300; }
      .main_menu .main_menu_wrap .boring_links a:hover {
        color: #828282;
        text-decoration: underline; }

/* ------------- Hide / Display menu ---------------- */
.hidden .menu_background {
  visibility: hidden;
  background-color: rgba(0, 0, 0, 0);
  transition-property: background-color, visibility;
  transition-duration: .5s;
  transition-delay: .1s; }
.hidden .language_menu_wrap {
  transform: translate3d(100vw, 0, 0);
  transition: transform .6s ease-in-out; }
  @media (min-width: 800px) and (max-width: 1440px) {
    .hidden .language_menu_wrap {
      transform: translate3d(60vw, 0, 0); } }
  @media (min-width: 1441px) {
    .hidden .language_menu_wrap {
      transform: translate3d(40vw, 0, 0); } }
.hidden .main_menu_wrap {
  transform: translate3d(100vw, 0, 0);
  transition: transform .6s ease-in-out; }
  @media (min-width: 800px) and (max-width: 1440px) {
    .hidden .main_menu_wrap {
      transform: translate3d(60vw, 0, 0); } }
  @media (min-width: 1441px) {
    .hidden .main_menu_wrap {
      transform: translate3d(40vw, 0, 0); } }

.visible .menu_background {
  visibility: visible;
  background-color: rgba(0, 0, 0, 0.6);
  transition-property: background-color, visibility;
  transition-duration: .5s;
  transition-delay: .1s; }
.visible .language_menu_wrap {
  transform: translate3d(0, 0, 0);
  transition: transform .6s ease-in-out; }
.visible .main_menu_wrap {
  transform: translate3d(0, 0, 0);
  transition: transform .6s ease-in-out; }

/* ------------- Images - Single Image & Image Slider ----------------------------------------------------------------------------------------------------------- */
.image_wrap {
  position: relative;
  display: flex;
  align-items: stretch;
  overflow: hidden; }
  .image_wrap img {
    width: 100%; }
  .image_wrap .slider {
    height: 100%; }
    .image_wrap .slider div {
      height: 100%; }
      .image_wrap .slider div div {
        display: flex;
        align-items: stretch; }
    @media (min-width: 280px) and (max-width: 799px) {
      .image_wrap .slider {
        height: 50vh; } }
  .image_wrap .caption {
    position: absolute;
    bottom: 20px;
    margin-left: var(--horizontal);
    font-size: 1rem;
    font-weight: 400;
    color: #ffffff;
    z-index: 100;
    filter: drop-shadow(1px 1px 6px #000000); }
    @media (min-width: 280px) and (max-width: 799px) {
      .image_wrap .caption {
        bottom: 0; } }
  .image_wrap .slider_gradient {
    background: linear-gradient(0deg, rgba(0, 0, 0, 0.95) 10%, rgba(0, 0, 0, 0.7) 19%, rgba(0, 0, 0, 0.5) 34%, rgba(0, 0, 0, 0.35) 47%, rgba(0, 0, 0, 0.278) 56.5%, rgba(0, 0, 0, 0.194) 65%, rgba(0, 0, 0, 0.126) 73%, rgba(0, 0, 0, 0.075) 80.2%, rgba(0, 0, 0, 0.042) 86.1%, rgba(0, 0, 0, 0.021) 91%, rgba(0, 0, 0, 0.008) 95.2%, rgba(0, 0, 0, 0.001) 98.2%, rgba(0, 0, 0, 0) 100%);
    display: block;
    height: 30vh;
    left: 0;
    right: 0;
    bottom: 0;
    position: absolute;
    z-index: 10;
    opacity: .3; }

.background_video {
  object-fit: cover;
  width: 100%;
  height: 100%; }

/* ------------- Custom Gutenberg Blocks ----------------------------------------------------------------------------------------------------------- */
/* ------------- Hero Block ---------------- */
.hero {
  display: flex;
  width: 100vw;
  min-height: 100vh; }
  @media (min-width: 280px) and (max-width: 799px) {
    .hero {
      flex-direction: column-reverse; } }
  .hero .breadcrumbs {
    font-size: 0.9rem;
    text-transform: uppercase;
    color: #828282;
    font-weight: 400;
    margin: 20px 0; }
    .hero .breadcrumbs a {
      color: #828282;
      text-decoration: none;
      transition: color .5s ease; }
      .hero .breadcrumbs a:hover {
        color: #000000;
        transition: color .5s ease; }
    @media (min-width: 280px) and (max-width: 799px) {
      .hero .breadcrumbs .breadcrumb_last {
        display: none; } }
    @media (min-width: 800px) and (max-width: 1440px) {
      .hero .breadcrumbs .breadcrumb_last {
        display: none; } }
  .hero .subheader {
    font-size: var(--small-subtitle); }
  .hero .text_wrap {
    width: 33.33vw;
    padding: var(--vertical) var(--horizontal) var(--vertical) var(--horizontal);
    margin-top: 200px;
    flex-direction: column;
    justify-content: center; }
    @media (min-width: 280px) and (max-width: 799px) {
      .hero .text_wrap {
        width: 100vw;
        margin-top: 0; } }
    @media (min-width: 800px) and (max-width: 1440px) {
      .hero .text_wrap {
        width: 50vw; } }
    .hero .text_wrap .read_more_link {
      padding: 0;
      text-decoration: none;
      font-size: var(--small-btn);
      text-transform: uppercase;
      font-weight: 600;
      background: none;
      transition: color .5s ease; }
      .hero .text_wrap .read_more_link img {
        width: 20px;
        height: 13px;
        margin-right: 15px;
        filter: brightness(0) saturate(100%);
        transition: filter .5s ease; }
      .hero .text_wrap .read_more_link:hover {
        color: #FF4025;
        transition: color .5s ease;
        cursor: pointer; }
        .hero .text_wrap .read_more_link:hover img {
          filter: brightness(0) saturate(100%) invert(52%) sepia(56%) saturate(7443%) hue-rotate(6deg) brightness(109%) contrast(101%);
          transition: filter .5s ease; }
    .hero .text_wrap .back_link {
      padding: 0;
      text-decoration: none;
      font-size: var(--small-btn);
      text-transform: uppercase;
      font-weight: 600;
      background: none;
      transition: color .5s ease;
      margin-bottom: 20px;
      display: inline-block; }
      .hero .text_wrap .back_link img {
        width: 20px;
        height: 13px;
        margin-right: 15px;
        filter: brightness(0) saturate(100%);
        transition: filter .5s ease; }
      .hero .text_wrap .back_link:hover {
        color: #FF4025;
        transition: color .5s ease;
        cursor: pointer; }
        .hero .text_wrap .back_link:hover img {
          filter: brightness(0) saturate(100%) invert(52%) sepia(56%) saturate(7443%) hue-rotate(6deg) brightness(109%) contrast(101%);
          transition: filter .5s ease; }
  .hero .text_wrap.expo .btn {
    margin-bottom: 40px; }
  .hero .text_wrap.expo .date {
    display: flex; }
    .hero .text_wrap.expo .date img {
      margin-top: -28px;
      width: 18px; }
    .hero .text_wrap.expo .date p {
      font-weight: 600;
      font-size: var(--medium-p);
      margin-left: 20px; }
  .hero .text_wrap.expo .opening_hours {
    display: flex; }
    .hero .text_wrap.expo .opening_hours img {
      margin-top: -26px;
      width: 18px; }
    .hero .text_wrap.expo .opening_hours p {
      font-weight: 300;
      font-size: var(--medium-p);
      margin-left: 20px; }
  .hero .text_wrap.expo .location {
    display: flex; }
    .hero .text_wrap.expo .location img {
      margin-top: -26px;
      width: 14px; }
    .hero .text_wrap.expo .location p {
      font-weight: 300;
      font-size: var(--medium-p);
      margin-left: 20px; }
  .hero .text_wrap.expo .free_entry {
    display: flex; }
    .hero .text_wrap.expo .free_entry img {
      margin-top: -26px;
      width: 13px; }
    .hero .text_wrap.expo .free_entry p {
      font-weight: 300;
      font-size: var(--medium-p);
      margin-left: 20px; }
  .hero .image_wrap {
    width: 66.6vw; }
    @media (min-width: 280px) and (max-width: 799px) {
      .hero .image_wrap {
        width: 100vw; } }
    @media (min-width: 800px) and (max-width: 1440px) {
      .hero .image_wrap {
        width: 50vw; } }
    .hero .image_wrap img {
      width: 66.6vw; }
      @media (min-width: 280px) and (max-width: 799px) {
        .hero .image_wrap img {
          width: 100vw; } }

/* ------------- Styling specifically for the large text hero block ---------------- */
@media (min-width: 280px) and (max-width: 799px) {
  .hero.large_text {
    flex-direction: column; } }
.hero.large_text .text_wrap {
  padding: var(--vertical) calc(var(--horizontal-xl) * 2) var(--vertical) var(--horizontal);
  width: 66.66vw;
  overflow: hidden; }
  @media (min-width: 280px) and (max-width: 799px) {
    .hero.large_text .text_wrap {
      padding: var(--vertical) var(--horizontal);
      width: 100vw; } }
  @media (min-width: 800px) and (max-width: 1440px) {
    .hero.large_text .text_wrap {
      width: 50vw;
      padding: 20vh var(--horizontal) var(--horizontal) var(--horizontal); } }
  .hero.large_text .text_wrap .description p:first-of-type {
    font-size: var(--small-subtitle);
    font-family: "Prata", serif; }
.hero.large_text .image_wrap {
  width: 33vw;
  display: flex;
  align-items: stretch;
  overflow: hidden; }
  .hero.large_text .image_wrap:before {
    content: '';
    background: linear-gradient(0deg, rgba(0, 0, 0, 0.95) 10%, rgba(0, 0, 0, 0.7) 19%, rgba(0, 0, 0, 0.5) 34%, rgba(0, 0, 0, 0.35) 47%, rgba(0, 0, 0, 0.278) 56.5%, rgba(0, 0, 0, 0.194) 65%, rgba(0, 0, 0, 0.126) 73%, rgba(0, 0, 0, 0.075) 80.2%, rgba(0, 0, 0, 0.042) 86.1%, rgba(0, 0, 0, 0.021) 91%, rgba(0, 0, 0, 0.008) 95.2%, rgba(0, 0, 0, 0.001) 98.2%, rgba(0, 0, 0, 0) 100%);
    width: 100%;
    display: block;
    height: 40vh;
    bottom: 0;
    position: absolute;
    z-index: 10; }
  @media (min-width: 280px) and (max-width: 799px) {
    .hero.large_text .image_wrap {
      width: 100vw;
      min-height: calc(100vh - var(--mobile-btn-height)); } }
  @media (min-width: 800px) and (max-width: 1440px) {
    .hero.large_text .image_wrap {
      width: 50vw; } }
  .hero.large_text .image_wrap .content {
    position: absolute;
    bottom: 0;
    padding: var(--vertical) var(--horizontal);
    z-index: 100;
    margin: 0; }
    .hero.large_text .image_wrap .content .mobile_logo {
      display: none; }
      @media (min-width: 280px) and (max-width: 799px) {
        .hero.large_text .image_wrap .content .mobile_logo {
          display: block; }
          .hero.large_text .image_wrap .content .mobile_logo img {
            width: 65vw;
            margin: 0 auto 20px auto;
            display: block;
            filter: invert(1); } }
    .hero.large_text .image_wrap .content .header {
      font-size: calc(var(--x-large-title) * 1.1);
      color: #ffffff;
      margin: 0; }
      @media (min-width: 280px) and (max-width: 799px) {
        .hero.large_text .image_wrap .content .header {
          text-align: center; } }
  .hero.large_text .image_wrap .caption {
    display: none; }

.hero.exhibition .slider {
  max-height: 100vh; }
@media (min-width: 280px) and (max-width: 799px) {
  .hero.exhibition .image_wrap {
    margin-top: var(--mobile-btn-height); } }

.hero.collection_item .taxonomy_link {
  padding: 0;
  text-decoration: none;
  font-size: var(--small-btn);
  text-transform: uppercase;
  font-weight: 600;
  background: none;
  transition: color .5s ease; }
  .hero.collection_item .taxonomy_link img {
    width: 20px;
    height: 13px;
    margin-right: 15px;
    filter: brightness(0) saturate(100%);
    transition: filter .5s ease; }
  .hero.collection_item .taxonomy_link:hover {
    color: #FF4025;
    transition: color .5s ease;
    cursor: pointer; }
    .hero.collection_item .taxonomy_link:hover img {
      filter: brightness(0) saturate(100%) invert(52%) sepia(56%) saturate(7443%) hue-rotate(6deg) brightness(109%) contrast(101%);
      transition: filter .5s ease; }
.hero.collection_item .text_wrap {
  padding: var(--vertical) var(--horizontal);
  flex-direction: column;
  justify-content: space-between;
  align-items: stretch; }
  .hero.collection_item .text_wrap .text_wrap_inner {
    display: inline-flex;
    flex-direction: column;
    justify-content: center;
    min-height: 90vh; }
  .hero.collection_item .text_wrap .license_message {
    font-size: var(--small-p);
    margin-right: 10px; }
@media (min-width: 800px) and (max-width: 1440px) {
  .hero.collection_item {
    flex-direction: column; }
    .hero.collection_item .text_wrap_inner {
      min-height: 50vh; }
    .hero.collection_item .image_wrap {
      width: 100vw;
      min-height: 100vh; }
      .hero.collection_item .image_wrap img {
        width: 100vw;
        min-height: 100vh; } }
@media (min-width: 480px) and (max-width: 1024px) and (orientation: portrait) {
  .hero.collection_item {
    flex-direction: column;
    height: auto; }
    .hero.collection_item .text_wrap .text_wrap_inner {
      min-height: auto; }
    .hero.collection_item .text_wrap .license_message {
      margin-top: 20px; }
    .hero.collection_item .image_wrap {
      margin-top: var(--mobile-btn-height); } }
@media (min-width: 280px) and (max-width: 799px) {
  .hero.collection_item {
    flex-direction: column;
    height: auto; }
    .hero.collection_item .text_wrap .text_wrap_inner {
      min-height: auto; }
    .hero.collection_item .text_wrap .license_message {
      margin-top: 20px; }
    .hero.collection_item .image_wrap {
      margin-top: var(--mobile-btn-height); } }

/* ------------- Collection Overview Hero Block ---------------- */
.collection-overview-hero {
  display: flex;
  width: 100vw;
  min-height: 100vh; }
  @media (min-width: 280px) and (max-width: 799px) {
    .collection-overview-hero {
      flex-direction: column; } }
  .collection-overview-hero .text_wrap {
    width: 33.33vw;
    padding: var(--vertical) var(--horizontal);
    flex-direction: column;
    display: inline-flex;
    justify-content: center; }
    @media (min-width: 280px) and (max-width: 799px) {
      .collection-overview-hero .text_wrap {
        width: 100vw; } }
    @media (min-width: 800px) and (max-width: 1440px) {
      .collection-overview-hero .text_wrap {
        width: 50vw; } }
    .collection-overview-hero .text_wrap .item_number {
      font-size: var(--x-large-title);
      margin: 0; }
    .collection-overview-hero .text_wrap .item_text {
      font-size: var(--large-subtitle);
      margin-bottom: 20px; }
    .collection-overview-hero .text_wrap .location_text {
      font-size: var(--small-subtitle); }
    .collection-overview-hero .text_wrap .read_more_link {
      margin-top: 20px;
      padding: 0;
      text-decoration: none;
      font-size: var(--small-btn);
      text-transform: uppercase;
      font-weight: 600;
      background: none;
      transition: color .5s ease; }
      .collection-overview-hero .text_wrap .read_more_link img {
        width: 20px;
        height: 13px;
        margin-right: 15px;
        filter: brightness(0) saturate(100%);
        transition: filter .5s ease; }
      .collection-overview-hero .text_wrap .read_more_link:hover {
        color: #FF4025;
        transition: color .5s ease;
        cursor: pointer; }
        .collection-overview-hero .text_wrap .read_more_link:hover img {
          filter: brightness(0) saturate(100%) invert(52%) sepia(56%) saturate(7443%) hue-rotate(6deg) brightness(109%) contrast(101%);
          transition: filter .5s ease; }
  .collection-overview-hero .image_wrap {
    width: 33.33vw;
    position: relative;
    display: flex;
    align-items: stretch; }
    @media (min-width: 800px) and (max-width: 1440px) {
      .collection-overview-hero .image_wrap {
        width: 50vw; } }
    .collection-overview-hero .image_wrap:before {
      background: linear-gradient(0deg, rgba(0, 0, 0, 0.95) 10%, rgba(0, 0, 0, 0.7) 19%, rgba(0, 0, 0, 0.5) 34%, rgba(0, 0, 0, 0.35) 47%, rgba(0, 0, 0, 0.278) 56.5%, rgba(0, 0, 0, 0.194) 65%, rgba(0, 0, 0, 0.126) 73%, rgba(0, 0, 0, 0.075) 80.2%, rgba(0, 0, 0, 0.042) 86.1%, rgba(0, 0, 0, 0.021) 91%, rgba(0, 0, 0, 0.008) 95.2%, rgba(0, 0, 0, 0.001) 98.2%, rgba(0, 0, 0, 0) 100%);
      width: 100%;
      display: block;
      height: 40vh;
      bottom: 0;
      position: absolute;
      z-index: 10; }
    .collection-overview-hero .image_wrap .content {
      position: absolute;
      bottom: 0;
      padding: var(--vertical) var(--horizontal);
      z-index: 100;
      margin: 0; }
      .collection-overview-hero .image_wrap .content .mobile_logo {
        display: none; }
        @media (min-width: 280px) and (max-width: 799px) {
          .collection-overview-hero .image_wrap .content .mobile_logo {
            display: block; }
            .collection-overview-hero .image_wrap .content .mobile_logo img {
              width: 65vw;
              margin: 0 auto 20px auto;
              display: block;
              filter: invert(1); } }
      .collection-overview-hero .image_wrap .content .header {
        font-size: calc(var(--x-large-title) * 1.1);
        color: #ffffff;
        margin: 0; }
        @media (min-width: 280px) and (max-width: 799px) {
          .collection-overview-hero .image_wrap .content .header {
            text-align: center; } }
    @media (min-width: 280px) and (max-width: 799px) {
      .collection-overview-hero .image_wrap {
        width: 100vw;
        height: calc(100vh - var(--mobile-btn-height)); }
        .collection-overview-hero .image_wrap img {
          height: calc(100vh - var(--mobile-btn-height)); } }
    .collection-overview-hero .image_wrap .slider_gradient {
      background: linear-gradient(0deg, rgba(0, 0, 0, 0.95) 10%, rgba(0, 0, 0, 0.7) 19%, rgba(0, 0, 0, 0.5) 34%, rgba(0, 0, 0, 0.35) 47%, rgba(0, 0, 0, 0.278) 56.5%, rgba(0, 0, 0, 0.194) 65%, rgba(0, 0, 0, 0.126) 73%, rgba(0, 0, 0, 0.075) 80.2%, rgba(0, 0, 0, 0.042) 86.1%, rgba(0, 0, 0, 0.021) 91%, rgba(0, 0, 0, 0.008) 95.2%, rgba(0, 0, 0, 0.001) 98.2%, rgba(0, 0, 0, 0) 100%);
      display: block;
      height: 30vh;
      left: 0;
      right: 0;
      bottom: 0;
      position: absolute;
      z-index: 10;
      opacity: .5; }
    .collection-overview-hero .image_wrap img {
      min-width: 100%; }
    .collection-overview-hero .image_wrap .slider_button.left {
      display: none; }
    .collection-overview-hero .image_wrap .image_slide {
      height: 100vh;
      position: relative; }
      .collection-overview-hero .image_wrap .image_slide a {
        text-decoration: none;
        height: 100%;
        display: flex;
        align-items: stretch; }
        .collection-overview-hero .image_wrap .image_slide a img {
          height: 100%; }
      .collection-overview-hero .image_wrap .image_slide .caption {
        margin: var(--vertical) var(--horizontal);
        color: #ffffff;
        position: absolute;
        bottom: var(--vertical-s); }
        .collection-overview-hero .image_wrap .image_slide .caption h2 {
          font-size: var(--small-subtitle);
          margin-bottom: 10px; }
        .collection-overview-hero .image_wrap .image_slide .caption p {
          font-size: var(--medium-p);
          font-weight: 300;
          margin: 0; }
  @media (min-width: 280px) and (max-width: 799px) {
    .collection-overview-hero .image_wrap.slider {
      display: none; } }
  @media (min-width: 800px) and (max-width: 1440px) {
    .collection-overview-hero .image_wrap.slider {
      display: none; } }

/* ------------- Location Info Block ---------------- */
.location_info {
  display: flex;
  min-height: 100vh; }
  @media (min-width: 1441px) {
    .location_info {
      max-height: 100vh; } }
  .location_info .tabs {
    display: flex; }
    .location_info .tabs .tabs_header {
      width: 100%;
      display: none; }
      .location_info .tabs .tabs_header .tab_title {
        width: 50%;
        height: var(--mobile-btn-height);
        font-family: "Prata", serif;
        font-size: var(--medium-p);
        background: rgba(0, 0, 0, 0.15); }
      .location_info .tabs .tabs_header .tab_title-active {
        background: #ffffff; }
      @media (min-width: 801px) {
        .location_info .tabs .tabs_header {
          display: none; } }
    @media (min-width: 280px) and (max-width: 799px) {
      .location_info .tabs {
        background: #ffffff;
        display: block; }
        .location_info .tabs .tabs_header {
          display: flex; } }
  .location_info .text_wrap {
    display: flex;
    justify-content: center;
    align-self: center;
    width: 33vw;
    padding: 0 var(--horizontal-l); }
    @media (max-width: 799px) {
      .location_info .text_wrap {
        padding: var(--vertical-l) var(--horizontal-l); } }
    @media (min-width: 280px) and (max-width: 799px) {
      .location_info .text_wrap {
        width: 100vw;
        padding: var(--vertical-xl) var(--horizontal) var(--vertical-xl) var(--horizontal); } }
    @media (min-width: 800px) and (max-width: 1440px) {
      .location_info .text_wrap {
        width: 50vw; } }
    .location_info .text_wrap .social {
      margin-bottom: 10px; }
    .location_info .text_wrap h2 {
      font-size: var(--large-title);
      margin-bottom: 10px; }
    .location_info .text_wrap .text p {
      font-size: var(--medium-p);
      margin-bottom: 0; }
    @media (min-width: 280px) and (max-width: 799px) {
      .location_info .text_wrap .meta {
        height: auto; } }
    .location_info .text_wrap .meta .openinghours, .location_info .text_wrap .meta .address, .location_info .text_wrap .meta .phonenumber {
      display: flex; }
      .location_info .text_wrap .meta .openinghours p, .location_info .text_wrap .meta .address p, .location_info .text_wrap .meta .phonenumber p {
        font-size: var(--medium-p);
        margin-bottom: 5px; }
      .location_info .text_wrap .meta .openinghours img, .location_info .text_wrap .meta .address img, .location_info .text_wrap .meta .phonenumber img {
        filter: brightness(100%) saturate(100%); }
    .location_info .text_wrap .meta .address img {
      margin: 3px 22px 0 6px; }
    .location_info .text_wrap .meta .phonenumber img {
      margin: 3px 18px 0 4px; }
    .location_info .text_wrap .meta .openinghours img {
      margin: 2px 19px 0 3px; }
    .location_info .text_wrap .buttons {
      margin: var(--vertical-s) 0 var(--vertical-s) 0; }
      @media (min-width: 280px) and (max-width: 799px) {
        .location_info .text_wrap .buttons .ticket {
          display: none; } }
  .location_info .text_wrap.amsterdam {
    position: relative; }
    .location_info .text_wrap.amsterdam:after {
      content: '';
      border-right: 1px solid #828282;
      position: absolute;
      display: none;
      height: 40vh;
      width: 1px;
      right: 0; }
      @media (min-width: 1441px) {
        .location_info .text_wrap.amsterdam:after {
          display: inline; } }
  .location_info .text_wrap.amsterdam.normal_block {
    border-right: none; }
    .location_info .text_wrap.amsterdam.normal_block:after {
      display: none; }
  .location_info .image_wrap {
    width: 33vw;
    display: flex;
    align-items: stretch;
    position: relative; }
    .location_info .image_wrap .mobile_text {
      display: none; }
    .location_info .image_wrap:before {
      content: '';
      background: linear-gradient(0deg, rgba(0, 0, 0, 0.95) 10%, rgba(0, 0, 0, 0.7) 19%, rgba(0, 0, 0, 0.5) 34%, rgba(0, 0, 0, 0.35) 47%, rgba(0, 0, 0, 0.278) 56.5%, rgba(0, 0, 0, 0.194) 65%, rgba(0, 0, 0, 0.126) 73%, rgba(0, 0, 0, 0.075) 80.2%, rgba(0, 0, 0, 0.042) 86.1%, rgba(0, 0, 0, 0.021) 91%, rgba(0, 0, 0, 0.008) 95.2%, rgba(0, 0, 0, 0.001) 98.2%, rgba(0, 0, 0, 0) 100%);
      width: 100%;
      display: block;
      height: 40vh;
      bottom: 0;
      position: absolute;
      z-index: 10; }
    @media (min-width: 280px) and (max-width: 799px) {
      .location_info .image_wrap {
        width: 100vw;
        min-height: calc(100vh - var(--mobile-btn-height)); }
        .location_info .image_wrap .caption {
          display: none; }
        .location_info .image_wrap .mobile_text {
          width: 100%;
          display: block;
          position: absolute;
          z-index: 20;
          bottom: var(--vertical);
          padding: 0 var(--horizontal);
          color: #ffffff;
          filter: drop-shadow(1px 1px 6px #000000);
          text-align: center; }
          .location_info .image_wrap .mobile_text h1 {
            font-size: calc(var(--x-large-title) * 1.15);
            margin-bottom: var(--vertical); }
          .location_info .image_wrap .mobile_text h2 {
            font-size: var(--small-subtitle); }
          .location_info .image_wrap .mobile_text img {
            width: 65vw;
            filter: brightness(0) saturate(100%) invert(100%); } }
    .location_info .image_wrap img {
      width: 100%; }
  .location_info .image_wrap.amsterdam, .location_info .image_wrap.barcelona {
    width: 66vw; }
    @media (min-width: 280px) and (max-width: 799px) {
      .location_info .image_wrap.amsterdam, .location_info .image_wrap.barcelona {
        width: 100vw; } }
    @media (min-width: 800px) and (max-width: 1440px) {
      .location_info .image_wrap.amsterdam, .location_info .image_wrap.barcelona {
        width: 50vw; } }
  .location_info .image_wrap.location_hero .content {
    position: absolute;
    z-index: 100;
    bottom: var(--vertical);
    left: var(--horizontal); }
    .location_info .image_wrap.location_hero .content .mobile_logo {
      display: none; }
      .location_info .image_wrap.location_hero .content .mobile_logo .icon {
        width: 65vw;
        min-height: 100px;
        display: block;
        margin: 20vh auto 10px auto;
        filter: brightness(0) saturate(100%) invert(100%); }
      @media (min-width: 280px) and (max-width: 799px) {
        .location_info .image_wrap.location_hero .content .mobile_logo {
          display: block; } }
    .location_info .image_wrap.location_hero .content .header {
      color: #ffffff;
      font-size: calc(var(--x-large-title) * 1.5);
      line-height: 110%;
      width: 1rem;
      margin: 0; }
      @media (min-width: 280px) and (max-width: 799px) {
        .location_info .image_wrap.location_hero .content .header {
          font-size: calc(var(--x-large-title) * 1.2);
          line-height: 130%;
          width: calc(100vw - var(--horizontal) * 2);
          text-align: center; } }
  @media (min-width: 800px) and (max-width: 1440px) {
    .location_info .image_wrap.location_hero {
      width: 50vw; } }
  @media (min-width: 280px) and (max-width: 799px) {
    .location_info .image_wrap.normal_block {
      display: none; } }
  @media (min-width: 800px) and (max-width: 1440px) {
    .location_info .image_wrap.normal_block {
      display: none; } }
  .location_info .image_wrap.normal_block.small-desktop {
    display: none;
    width: 50vw;
    align-items: stretch; }
    .location_info .image_wrap.normal_block.small-desktop:before {
      display: none; }
    @media (min-width: 800px) and (max-width: 1440px) {
      .location_info .image_wrap.normal_block.small-desktop {
        display: flex; } }

@media (min-width: 280px) and (max-width: 799px) {
  .location_info.amsterdam, .location_info.barcelona {
    flex-direction: column-reverse; }

  .location_info.hero {
    flex-direction: column; } }
@media (min-width: 800px) and (max-width: 1440px) {
  .location_info.amsterdam, .location_info.barcelona {
    flex-direction: row-reverse; }

  .location_info.hero .text_wrap {
    padding-top: var(--vertical); }

  .location_info .tabs {
    width: 50vw;
    flex-direction: column;
    justify-content: center;
    padding-top: 80px; }
    .location_info .tabs .text_wrap {
      width: 50vw;
      margin-top: 10px; }
      .location_info .tabs .text_wrap h2 {
        margin-bottom: 0;
        font-size: var(--large-subtitle); }
      .location_info .tabs .text_wrap .meta {
        height: auto; }
      .location_info .tabs .text_wrap .buttons {
        margin: 0; }
        .location_info .tabs .text_wrap .buttons .ghost_btn {
          display: none; }
      .location_info .tabs .text_wrap .text {
        display: none; }

  .gb_block ~ .location_info .tabs {
    padding-top: 0; } }
.single-visitorinfo .location_info .image_wrap.location_hero .header {
  font-size: var(--x-large-title); }

/* ------------- Info Block ---------------- */
.info {
  display: flex;
  width: 100vw;
  min-height: 100vh; }
  @media (min-width: 280px) and (max-width: 799px) {
    .info {
      flex-direction: column; } }
  .info .subheader {
    font-size: var(--small-subtitle);
    color: #828282;
    margin-bottom: 20px; }
  .info .header {
    font-size: var(--medium-title); }
  .info .text_wrap {
    width: 33vw;
    padding: var(--vertical) var(--horizontal);
    display: flex;
    align-self: center;
    flex-direction: column; }
    @media (min-width: 280px) and (max-width: 799px) {
      .info .text_wrap {
        width: 100vw;
        padding: var(--vertical) var(--horizontal); } }
    @media (min-width: 800px) and (max-width: 1440px) {
      .info .text_wrap {
        width: 50vw;
        padding: var(--vertical-xl) var(--horizontal); } }
    .info .text_wrap strong {
      font-size: var(--medium-p);
      font-weight: 400; }
    .info .text_wrap .below_btn_header {
      font-size: var(--large-p);
      margin: 30px 0 10px 0; }
    .info .text_wrap .below_btn_text {
      font-size: var(--medium-p); }
  .info .image_wrap {
    width: 66.1vw; }
    .info .image_wrap img {
      width: 66.1vw; }
    @media (min-width: 280px) and (max-width: 799px) {
      .info .image_wrap {
        height: 50vh;
        width: 100vw; }
        .info .image_wrap img {
          height: 50vh;
          width: 100vw; } }
    @media (min-width: 800px) and (max-width: 1440px) {
      .info .image_wrap {
        width: 50vw; }
        .info .image_wrap img {
          width: 50vw; } }
  .info .mobile .image_wrap {
    display: none; }

@media (min-width: 280px) and (max-width: 799px) {
  .info.right .image_wrap {
    display: none; }
  .info.right .mobile .image_wrap {
    display: block; } }
/* ------------- Info Two Image ---------------- */
.info_two_image {
  display: flex;
  width: 100vw;
  min-height: 100vh; }
  @media (min-width: 280px) and (max-width: 799px) {
    .info_two_image {
      flex-direction: column; } }
  .info_two_image .subheader {
    font-size: var(--medium-title);
    margin-bottom: 20px; }
  .info_two_image .header {
    display: none; }
    @media (min-width: 800px) and (max-width: 1440px) {
      .info_two_image .header {
        text-align: left; } }
  .info_two_image .text_wrap {
    width: 33.1vw;
    padding: 20vh var(--horizontal) var(--horizontal) var(--horizontal); }
    .info_two_image .text_wrap strong {
      font-size: var(--medium-p);
      font-weight: 400; }
    @media (min-width: 280px) and (max-width: 799px) {
      .info_two_image .text_wrap {
        width: 100vw;
        padding: var(--vertical-xl) var(--horizontal); } }
    @media (min-width: 800px) and (max-width: 1440px) {
      .info_two_image .text_wrap {
        width: 50vw; } }
  .info_two_image .image_wrap {
    width: 33vw;
    display: flex;
    align-items: stretch; }
    @media (min-width: 280px) and (max-width: 799px) {
      .info_two_image .image_wrap {
        display: none;
        width: 100vw;
        height: 50vh; } }
    @media (min-width: 800px) and (max-width: 1440px) {
      .info_two_image .image_wrap {
        display: none;
        width: 50vw; } }
  .info_two_image .image_wrap.mobile {
    display: none;
    min-height: calc(100vh - var(--mobile-btn-height)); }
    @media (min-width: 280px) and (max-width: 799px) {
      .info_two_image .image_wrap.mobile {
        display: flex; } }
    @media (min-width: 800px) and (max-width: 1440px) {
      .info_two_image .image_wrap.mobile {
        display: flex; } }
    .info_two_image .image_wrap.mobile:before {
      content: '';
      background: linear-gradient(0deg, rgba(0, 0, 0, 0.95) 10%, rgba(0, 0, 0, 0.7) 19%, rgba(0, 0, 0, 0.5) 34%, rgba(0, 0, 0, 0.35) 47%, rgba(0, 0, 0, 0.278) 56.5%, rgba(0, 0, 0, 0.194) 65%, rgba(0, 0, 0, 0.126) 73%, rgba(0, 0, 0, 0.075) 80.2%, rgba(0, 0, 0, 0.042) 86.1%, rgba(0, 0, 0, 0.021) 91%, rgba(0, 0, 0, 0.008) 95.2%, rgba(0, 0, 0, 0.001) 98.2%, rgba(0, 0, 0, 0) 100%);
      width: 100%;
      display: block;
      height: 40vh;
      bottom: 0;
      position: absolute;
      z-index: 10; }
    .info_two_image .image_wrap.mobile .mobile_text {
      position: absolute;
      width: 100%;
      bottom: var(--vertical);
      padding: 0 var(--horizontal);
      z-index: 20;
      color: #ffffff;
      filter: drop-shadow(1px 1px 6px #000000);
      text-align: center; }
      .info_two_image .image_wrap.mobile .mobile_text .header {
        display: block;
        margin-bottom: 0;
        font-size: calc(var(--x-large-title) * 1.15); }
      .info_two_image .image_wrap.mobile .mobile_text .mobile_logo img {
        width: 65vw;
        margin-bottom: 10px;
        filter: invert(1); }
      @media (min-width: 800px) and (max-width: 1440px) {
        .info_two_image .image_wrap.mobile .mobile_text .mobile_logo {
          display: none; } }
    .info_two_image .image_wrap.mobile .caption {
      display: none; }
  .info_two_image .quote_wrap {
    width: 33vw;
    display: flex;
    align-items: center;
    background: #000000;
    padding: var(--vertical) var(--horizontal-l); }
    @media (min-width: 280px) and (max-width: 799px) {
      .info_two_image .quote_wrap {
        width: 100vw;
        padding: var(--vertical-xl) var(--horizontal); } }
    .info_two_image .quote_wrap .quote {
      color: #ffffff;
      text-align: center; }
      .info_two_image .quote_wrap .quote img {
        width: 155px;
        height: 150px;
        filter: brightness(0) saturate(100%) invert(100%); }
        @media (min-width: 280px) and (max-width: 799px) {
          .info_two_image .quote_wrap .quote img {
            width: 110px;
            height: 105px; } }
      .info_two_image .quote_wrap .quote .quote_text {
        margin-top: var(--vertical);
        font-family: "Prata", serif;
        font-size: var(--medium-title); }
      .info_two_image .quote_wrap .quote .quote_text.medium {
        font-size: var(--large-title); }
      .info_two_image .quote_wrap .quote .quote_text.large {
        font-size: var(--x-large-title); }
      .info_two_image .quote_wrap .quote .quote_author {
        color: #828282;
        font-family: "Prata", serif;
        font-size: var(--small-subtitle); }

.gb_block ~ .info_two_image .image_wrap.mobile {
  min-height: 50vh; }
  .gb_block ~ .info_two_image .image_wrap.mobile:before {
    display: none; }
.gb_block ~ .info_two_image .caption {
  display: block; }
.gb_block ~ .info_two_image .header {
  font-size: var(--medium-title);
  display: block; }
.gb_block ~ .info_two_image .subheader {
  font-size: var(--small-subtitle);
  color: #828282;
  margin-bottom: 20px; }
.gb_block ~ .info_two_image .mobile_text {
  display: none; }

/* ------------- Reviews ---------------- */
.reviews {
  display: flex;
  align-items: center;
  background: #000000;
  position: relative;
  min-height: 100vh; }
  @media (min-width: 280px) and (max-width: 799px) {
    .reviews {
      flex-direction: column; } }
  .reviews .text_wrap {
    width: 33vw;
    color: #ffffff;
    text-align: center; }
    @media (min-width: 280px) and (max-width: 799px) {
      .reviews .text_wrap {
        width: 100vw;
        padding: var(--vertical-xl) var(--horizontal-l); } }
    @media (min-width: 800px) and (max-width: 1440px) {
      .reviews .text_wrap {
        width: 50vw; } }
    .reviews .text_wrap .header {
      margin: var(--vertical) var(--horizontal);
      font-size: var(--x-large-title); }
    .reviews .text_wrap img {
      width: 155px;
      height: 150px;
      filter: brightness(0) saturate(100%) invert(100%); }
      @media (min-width: 280px) and (max-width: 799px) {
        .reviews .text_wrap img {
          width: 110px;
          height: 105px; } }
    .reviews .text_wrap .tripadvisor_ratings {
      display: flex;
      justify-content: center; }
      .reviews .text_wrap .tripadvisor_ratings .rating {
        text-align: center;
        margin: 20px;
        text-transform: uppercase;
        font-size: var(--small-p);
        font-weight: 400; }
        @media (min-width: 280px) and (max-width: 799px) {
          .reviews .text_wrap .tripadvisor_ratings .rating {
            margin: 10px; } }
        .reviews .text_wrap .tripadvisor_ratings .rating img {
          width: 40px;
          height: 25px;
          display: block;
          margin: 15px auto;
          filter: brightness(0) saturate(100%) invert(100%); }
        .reviews .text_wrap .tripadvisor_ratings .rating .stars {
          --percent: calc(var(--rating) / 5 * 99%);
          margin-top: 20px;
          display: block;
          font-size: 30px;
          font-family: Times;
          line-height: 1; }
          .reviews .text_wrap .tripadvisor_ratings .rating .stars::before {
            content: '★★★★★';
            letter-spacing: 3px;
            background: linear-gradient(90deg, #ffffff var(--percent), rgba(255, 255, 255, 0.2) var(--percent));
            -webkit-background-clip: text;
            -webkit-text-fill-color: transparent; }
  .reviews .reviews_slider {
    width: 66vw;
    position: relative; }
    @media (min-width: 280px) and (max-width: 799px) {
      .reviews .reviews_slider {
        width: 100vw; } }
    @media (min-width: 800px) and (max-width: 1440px) {
      .reviews .reviews_slider {
        width: 50vw;
        overflow: hidden; } }
    .reviews .reviews_slider .review {
      width: 33vw;
      height: 100vh;
      display: block;
      position: relative;
      color: #ffffff; }
      @media (min-width: 280px) and (max-width: 799px) {
        .reviews .reviews_slider .review {
          width: 100vw; } }
      @media (min-width: 800px) and (max-width: 1440px) {
        .reviews .reviews_slider .review {
          width: 50vw; } }
      .reviews .reviews_slider .review:before {
        content: '';
        background: linear-gradient(0deg, rgba(0, 0, 0, 0.95) 10%, rgba(0, 0, 0, 0.7) 19%, rgba(0, 0, 0, 0.5) 34%, rgba(0, 0, 0, 0.35) 47%, rgba(0, 0, 0, 0.278) 56.5%, rgba(0, 0, 0, 0.194) 65%, rgba(0, 0, 0, 0.126) 73%, rgba(0, 0, 0, 0.075) 80.2%, rgba(0, 0, 0, 0.042) 86.1%, rgba(0, 0, 0, 0.021) 91%, rgba(0, 0, 0, 0.008) 95.2%, rgba(0, 0, 0, 0.001) 98.2%, rgba(0, 0, 0, 0) 100%);
        width: 100%;
        display: block;
        height: 40vh;
        bottom: 0;
        position: absolute;
        z-index: 10; }
        @media (min-width: 280px) and (max-width: 799px) {
          .reviews .reviews_slider .review:before {
            height: 70vh; } }
      .reviews .reviews_slider .review .quote {
        position: absolute;
        z-index: 20;
        bottom: calc(var(--vertical) * 2.2);
        margin-left: var(--horizontal);
        width: 80%;
        font-size: var(--medium-title);
        margin-bottom: 60px;
        line-height: 120%; }
        .reviews .reviews_slider .review .quote:before {
          content: '“'; }
        .reviews .reviews_slider .review .quote:after {
          content: '”'; }
        @media (min-width: 800px) and (max-width: 1440px) {
          .reviews .reviews_slider .review .quote {
            margin-bottom: 80px; } }
        @media (min-width: 280px) and (max-width: 799px) {
          .reviews .reviews_slider .review .quote {
            margin-bottom: 45px; } }
      .reviews .reviews_slider .review .quote:lang(jp):before {
        display: none; }
      .reviews .reviews_slider .review .quote:lang(jp):after {
        display: none; }
      .reviews .reviews_slider .review .meta {
        position: absolute;
        z-index: 20;
        padding: var(--vertical) var(--horizontal);
        bottom: 10px; }
        .reviews .reviews_slider .review .meta .name {
          font-family: "Prata", serif;
          font-size: calc(var(--x-large-p) * .9);
          margin-bottom: 10px; }
          @media (min-width: 280px) and (max-width: 799px) {
            .reviews .reviews_slider .review .meta .name {
              font-size: calc(var(--x-large-p) * .7); } }
        .reviews .reviews_slider .review .meta .bio {
          text-transform: uppercase;
          font-size: calc(var(--small-p) * .9);
          font-weight: 400;
          margin: 0; }
      .reviews .reviews_slider .review .image_credit {
        font-size: var(--small-p);
        transform: rotate(-90deg);
        position: absolute;
        z-index: 20;
        bottom: 40px;
        left: 31vw;
        width: 100%;
        transform-origin: left bottom;
        margin: 0; }
        @media (min-width: 280px) and (max-width: 799px) {
          .reviews .reviews_slider .review .image_credit {
            left: 91vw; } }
        @media (min-width: 800px) and (max-width: 1440px) {
          .reviews .reviews_slider .review .image_credit {
            left: 98vw; } }
      .reviews .reviews_slider .review img {
        width: 100%;
        height: 100%; }

/* ------------- Image Slider ---------------- */
.horizontal_slider {
  height: 100vh;
  display: flex;
  flex-wrap: nowrap;
  position: relative;
  overflow-x: auto;
  overflow-y: hidden;
  scroll-behavior: smooth; }
  .horizontal_slider .image_wrap {
    flex: 0 0 auto;
    height: 100vh; }
    .horizontal_slider .image_wrap:nth-of-type(2n+1) {
      width: 66.66vw; }
    .horizontal_slider .image_wrap:nth-of-type(2n) {
      width: 33.33vw; }
  .horizontal_slider img {
    width: 100%;
    height: 100%; }

/* ------------- Slider Buttons ---------------- */
.horizontal_slider_btn_wrap .slider_button.hidden {
  opacity: 0;
  transition: opacity 1s ease; }

.horizontal_slider::-webkit-scrollbar {
  height: 0; }

.horizontal_slider {
  scrollbar-width: none;
  border: 0; }

/* ------------- Related Posts Block ---------------- */
.related_posts {
  position: relative;
  margin: 20vh 0; }
  .related_posts .header_wrap {
    border-top: 1px solid rgba(130, 130, 130, 0.3);
    padding: 100px var(--horizontal);
    margin: 0 var(--vertical-xl) 0 var(--vertical-xl);
    text-align: center; }
    .related_posts .header_wrap .leaf_wrap {
      background: #F6F6F6;
      width: 140px;
      margin-top: -138px;
      margin-left: calc(50% - 70px); }
    .related_posts .header_wrap .header {
      margin-top: var(--vertical-l); }
  .related_posts .related_posts_inner {
    display: flex;
    justify-content: center; }
  .related_posts .post {
    width: 33.33vw; }
    @media (min-width: 280px) and (max-width: 799px) {
      .related_posts .post {
        width: 100%; } }
    @media (min-width: 280px) and (max-width: 799px) {
      .related_posts .post .image_wrap {
        height: 50vh; } }
    .related_posts .post .image_wrap img {
      min-width: 100%;
      height: 45vh; }
      @media (min-width: 280px) and (max-width: 799px) {
        .related_posts .post .image_wrap img {
          height: 50vh; } }
    .related_posts .post .text_wrap {
      padding: var(--vertical) var(--horizontal); }
      @media (min-width: 280px) and (max-width: 799px) {
        .related_posts .post .text_wrap {
          padding: calc(var(--vertical) * 1.2) var(--horizontal) var(--vertical) var(--horizontal); } }
      .related_posts .post .text_wrap .title {
        text-decoration: none; }
      .related_posts .post .text_wrap .read_more {
        padding: 0;
        text-decoration: none;
        font-size: var(--small-btn);
        text-transform: uppercase;
        font-weight: 600;
        background: none;
        transition: color .5s ease; }
        .related_posts .post .text_wrap .read_more img {
          width: 20px;
          height: 13px;
          margin-right: 15px;
          filter: brightness(0) saturate(100%);
          transition: filter .5s ease; }
        .related_posts .post .text_wrap .read_more:hover {
          color: #FF4025;
          transition: color .5s ease;
          cursor: pointer; }
          .related_posts .post .text_wrap .read_more:hover img {
            filter: brightness(0) saturate(100%) invert(52%) sepia(56%) saturate(7443%) hue-rotate(6deg) brightness(109%) contrast(101%);
            transition: filter .5s ease; }

/* ------------- Sub Item Block ---------------- */
.sub_items {
  position: relative;
  margin: 10vh 0; }
  .sub_items .header_wrap {
    padding: 100px var(--horizontal);
    margin: 0 var(--vertical-xl) 0 var(--vertical-xl);
    text-align: center; }
    .sub_items .header_wrap .leaf_wrap {
      background: #F6F6F6;
      width: 140px;
      margin-top: -138px;
      margin-left: calc(50% - 70px); }
    .sub_items .header_wrap .header {
      margin-top: var(--vertical-l); }
  .sub_items .related_posts_inner {
    display: flex;
    justify-content: center; }
    @media (min-width: 280px) and (max-width: 799px) {
      .sub_items .related_posts_inner {
        flex-direction: column; } }
  .sub_items .post {
    width: 33.33vw; }
    @media (min-width: 800px) and (max-width: 1440px) {
      .sub_items .post {
        width: 50vw; } }
    @media (min-width: 280px) and (max-width: 799px) {
      .sub_items .post {
        width: 100vw; } }
    .sub_items .post .image_wrap img {
      min-width: 100%;
      height: 45vh; }
    .sub_items .post .text_wrap {
      padding: var(--vertical) var(--horizontal); }
      .sub_items .post .text_wrap .title {
        text-decoration: none; }
      .sub_items .post .text_wrap .read_more {
        padding: 0;
        text-decoration: none;
        font-size: var(--small-btn);
        text-transform: uppercase;
        font-weight: 600;
        background: none;
        transition: color .5s ease; }
        .sub_items .post .text_wrap .read_more img {
          width: 20px;
          height: 13px;
          margin-right: 15px;
          filter: brightness(0) saturate(100%);
          transition: filter .5s ease; }
        .sub_items .post .text_wrap .read_more:hover {
          color: #FF4025;
          transition: color .5s ease;
          cursor: pointer; }
          .sub_items .post .text_wrap .read_more:hover img {
            filter: brightness(0) saturate(100%) invert(52%) sepia(56%) saturate(7443%) hue-rotate(6deg) brightness(109%) contrast(101%);
            transition: filter .5s ease; }

/* ------------- Google Map Block ---------------- */
.google_map {
  display: flex;
  align-items: center;
  align-items: stretch;
  min-height: 100vh; }
  @media (min-width: 280px) and (max-width: 799px) {
    .google_map {
      flex-direction: column; } }
  .google_map .map_wrap {
    width: 66vw;
    background: #ffffff; }
    @media (min-width: 280px) and (max-width: 799px) {
      .google_map .map_wrap {
        width: 100vw; } }
    @media (min-width: 800px) and (max-width: 1440px) {
      .google_map .map_wrap {
        width: 50vw; } }
    .google_map .map_wrap .map_style {
      width: 100%;
      min-height: 100vh;
      height: 100%; }
  .google_map .text_wrap {
    width: 33vw;
    padding: var(--vertical-xl) var(--horizontal) var(--vertical-l) var(--horizontal); }
    @media (min-width: 280px) and (max-width: 799px) {
      .google_map .text_wrap {
        width: 100vw; } }
    @media (min-width: 800px) and (max-width: 1440px) {
      .google_map .text_wrap {
        width: 50vw; } }
    .google_map .text_wrap .subheader {
      color: #828282; }
    .google_map .text_wrap .header {
      font-size: var(--large-title); }
    .google_map .text_wrap .location {
      margin-bottom: 40px;
      display: flex; }
      .google_map .text_wrap .location .icon {
        margin-top: 36px;
        margin-right: 20px; }
        .google_map .text_wrap .location .icon img {
          width: 35px;
          height: 50px; }
      .google_map .text_wrap .location .content .label {
        text-transform: uppercase;
        font-size: var(--small-p);
        font-weight: 400;
        color: #828282;
        margin-bottom: 5px; }
      .google_map .text_wrap .location .content .text {
        margin-bottom: 10px; }
      .google_map .text_wrap .location .content .link {
        padding: 0;
        text-decoration: none;
        font-size: var(--small-btn);
        text-transform: uppercase;
        font-weight: 600;
        background: none;
        transition: color .5s ease; }
        .google_map .text_wrap .location .content .link a {
          text-decoration: none; }
        .google_map .text_wrap .location .content .link img {
          width: 20px;
          height: 13px;
          margin-right: 15px;
          filter: brightness(0) saturate(100%);
          transition: filter .5s ease; }
        .google_map .text_wrap .location .content .link:hover {
          color: #FF4025;
          transition: color .5s ease;
          cursor: pointer; }
          .google_map .text_wrap .location .content .link:hover img {
            filter: brightness(0) saturate(100%) invert(52%) sepia(56%) saturate(7443%) hue-rotate(6deg) brightness(109%) contrast(101%);
            transition: filter .5s ease; }

@media (min-width: 280px) and (max-width: 799px) {
  .google_map.left {
    flex-direction: column-reverse; } }
/* ------------- Visitor Information Block ---------------- */
.visitor_information {
  display: flex;
  min-height: 100vh; }
  @media (min-width: 800px) and (max-width: 1440px) {
    .visitor_information {
      min-height: 50vh; } }
  @media (min-width: 280px) and (max-width: 799px) {
    .visitor_information {
      min-height: auto;
      background: #ffffff; } }
  .visitor_information .image_wrap {
    width: 33vw;
    display: flex;
    align-items: stretch; }
    @media (min-width: 280px) and (max-width: 799px) {
      .visitor_information .image_wrap {
        display: none; } }
    @media (min-width: 800px) and (max-width: 1440px) {
      .visitor_information .image_wrap {
        width: 50vw; } }
  .visitor_information .text_wrap {
    width: 66vw;
    padding: var(--vertical) var(--horizontal); }
    @media (min-width: 280px) and (max-width: 799px) {
      .visitor_information .text_wrap {
        width: 100vw; } }
    @media (min-width: 800px) and (max-width: 1440px) {
      .visitor_information .text_wrap {
        width: 50vw; } }
    .visitor_information .text_wrap .header {
      font-size: var(--small-subtitle);
      color: #828282;
      margin-top: var(--vertical-l); }
      @media (min-width: 280px) and (max-width: 799px) {
        .visitor_information .text_wrap .header {
          margin-top: var(--vertical); } }
    .visitor_information .text_wrap .information {
      list-style-type: none;
      columns: 2;
      column-gap: 5vw;
      -webkit-column-break-inside: avoid;
      page-break-inside: avoid;
      break-inside: avoid; }
      @media (min-width: 280px) {
        .visitor_information .text_wrap .information {
          columns: auto; } }
      @media (min-width: 1441px) {
        .visitor_information .text_wrap .information {
          columns: 2; } }
      .visitor_information .text_wrap .information .info_item {
        margin-bottom: var(--vertical-l); }
        .visitor_information .text_wrap .information .info_item .sub_header {
          display: flex;
          margin-bottom: 20px; }
          @media (min-width: 280px) and (max-width: 799px) {
            .visitor_information .text_wrap .information .info_item .sub_header {
              cursor: pointer; } }
          @media (min-width: 800px) and (max-width: 1440px) {
            .visitor_information .text_wrap .information .info_item .sub_header {
              cursor: pointer; } }
          .visitor_information .text_wrap .information .info_item .sub_header h3 {
            font-size: var(--medium-subtitle); }
            @media (min-width: 800px) and (max-width: 1440px) {
              .visitor_information .text_wrap .information .info_item .sub_header h3 {
                font-size: var(--small-subtitle); } }
          .visitor_information .text_wrap .information .info_item .sub_header .icon {
            margin-right: 15px;
            margin-top: 3px; }
            @media (min-width: 800px) and (max-width: 1440px) {
              .visitor_information .text_wrap .information .info_item .sub_header .icon img {
                width: 23px; } }
        .visitor_information .text_wrap .information .info_item .mobile_icon {
          position: absolute;
          right: 10vw;
          margin-top: 8px; }
          @media (min-width: 1441px) {
            .visitor_information .text_wrap .information .info_item .mobile_icon {
              display: none; } }
          @media (min-width: 800px) and (max-width: 1440px) {
            .visitor_information .text_wrap .information .info_item .mobile_icon {
              right: 5vw; } }
        @media (min-width: 280px) and (max-width: 799px) {
          .visitor_information .text_wrap .information .info_item {
            padding: 5px;
            margin-bottom: 20px;
            border-bottom: 1px solid rgba(130, 130, 130, 0.2); }
            .visitor_information .text_wrap .information .info_item .icon {
              display: none; }
            .visitor_information .text_wrap .information .info_item .content {
              max-height: 0;
              opacity: 0;
              overflow: hidden;
              transition: max-height .4s ease, opacity .3s ease; }
              .visitor_information .text_wrap .information .info_item .content p {
                font-size: var(--medium-p); }
                .visitor_information .text_wrap .information .info_item .content p strong {
                  font-size: var(--medium-p); } }
        @media (min-width: 800px) and (max-width: 1440px) {
          .visitor_information .text_wrap .information .info_item {
            padding: 5px;
            margin-bottom: 20px;
            border-bottom: 1px solid rgba(130, 130, 130, 0.2); }
            .visitor_information .text_wrap .information .info_item .content {
              max-height: 0;
              opacity: 0;
              overflow: hidden;
              transition: max-height .4s ease, opacity .3s ease; }
              .visitor_information .text_wrap .information .info_item .content p {
                font-size: var(--medium-p); }
                .visitor_information .text_wrap .information .info_item .content p strong {
                  font-size: var(--medium-p); } }
      .visitor_information .text_wrap .information .info_item.open .content {
        max-height: 2000px;
        opacity: 1;
        transition: max-height .6s ease, opacity .4s ease; }

/* ------------- Promotional Block ---------------- */
.promo {
  display: flex;
  width: 100vw;
  min-height: 100vh;
  background: #000000;
  color: #ffffff;
  text-align: center;
  align-items: center; }
  .promo .text_wrap {
    width: 33.33vw;
    padding: var(--vertical-l) var(--horizontal-l); }
    @media (min-width: 280px) and (max-width: 799px) {
      .promo .text_wrap {
        width: 100vw; } }
    @media (min-width: 800px) and (max-width: 1440px) {
      .promo .text_wrap {
        width: 50vw; } }
    .promo .text_wrap .header {
      font-size: var(--small-title);
      margin-top: var(--vertical-l); }
      @media (min-width: 280px) and (max-width: 799px) {
        .promo .text_wrap .header {
          font-size: var(--medium-title); } }
    .promo .text_wrap .subheader {
      font-size: var(--small-subtitle); }
    .promo .text_wrap img {
      width: 143px;
      height: 142px;
      filter: brightness(0) saturate(100%) invert(100%); }
    @media (min-width: 280px) and (max-width: 799px) {
      .promo .text_wrap .btn {
        display: none; } }
  .promo .image_wrap {
    width: 66.66vw;
    position: relative;
    display: flex;
    align-items: stretch; }
    @media (min-width: 280px) and (max-width: 799px) {
      .promo .image_wrap {
        display: none; } }
    @media (min-width: 800px) and (max-width: 1440px) {
      .promo .image_wrap {
        width: 50vw; } }
    .promo .image_wrap img {
      min-width: 100%;
      min-height: 100vh; }
    .promo .image_wrap .caption {
      margin-top: -80px;
      margin-left: var(--horizontal);
      font-size: 1rem;
      font-weight: 400;
      color: #ffffff;
      text-align: left; }

/* ------------- Image sidebar ---------------- */
.image_sidebar {
  display: inline-block;
  width: 33.33vw; }
  @media (min-width: 280px) and (max-width: 799px) {
    .image_sidebar {
      width: 100vw; } }
  @media (min-width: 800px) and (max-width: 1440px) {
    .image_sidebar {
      width: 100vw;
      display: flex; }
      .image_sidebar .image_wrap ~ .image_wrap {
        width: 50vw; } }
  .image_sidebar .image_wrap {
    position: relative; }
    .image_sidebar .image_wrap img {
      height: 100vh; }
    .image_sidebar .image_wrap .caption {
      position: absolute;
      color: #ffffff;
      font-size: 1rem;
      font-weight: 400;
      padding-left: var(--horizontal);
      padding-bottom: var(--vertical);
      left: 0;
      bottom: 0; }
  .image_sidebar .quote {
    background: #000000;
    color: #ffffff;
    padding: var(--vertical) var(--horizontal); }
    @media (min-width: 280px) and (max-width: 799px) {
      .image_sidebar .quote {
        padding: var(--vertical) var(--horizontal-l); } }
    @media (min-width: 800px) and (max-width: 1440px) {
      .image_sidebar .quote {
        width: 50vw; } }
    .image_sidebar .quote .quote_text {
      margin-top: var(--vertical);
      font-family: "Prata", serif;
      font-size: var(--medium-title); }
      @media (min-width: 480px) and (max-width: 1024px) and (orientation: portrait) {
        .image_sidebar .quote .quote_text {
          font-size: var(--large-title); } }
      @media (min-width: 800px) and (max-width: 1440px) {
        .image_sidebar .quote .quote_text {
          font-size: var(--medium-title); } }
    .image_sidebar .quote .quote_text.medium {
      font-size: var(--large-title); }
    .image_sidebar .quote .quote_text.large {
      font-size: var(--x-large-title); }
    .image_sidebar .quote .quote_author {
      font-family: "Lato", sans-serif;
      font-size: var(--small-p); }
      @media (min-width: 800px) and (max-width: 1440px) {
        .image_sidebar .quote .quote_author {
          font-size: var(--medium-p); } }

/* ------------- Category Overview ---------------- */
.category_overview {
  display: flex;
  flex-wrap: wrap;
  width: 100vw; }
  @media (min-width: 280px) and (max-width: 799px) {
    .category_overview {
      display: block; } }
  .category_overview .category {
    width: 33.33vw; }
    @media (min-width: 280px) and (max-width: 799px) {
      .category_overview .category {
        width: 100vw; } }
    @media (min-width: 800px) and (max-width: 1440px) {
      .category_overview .category {
        width: 50vw; } }
    .category_overview .category .image {
      height: 65vh;
      width: 100%;
      object-fit: cover; }
      @media (min-width: 280px) and (max-width: 799px) {
        .category_overview .category .image {
          height: 50vh; } }
    .category_overview .category .text_wrap {
      padding: var(--horizontal); }
      @media (min-width: 280px) and (max-width: 799px) {
        .category_overview .category .text_wrap {
          padding: var(--vertical) var(--horizontal); } }
      .category_overview .category .text_wrap h2 {
        margin-bottom: 10px; }
      .category_overview .category .text_wrap .link {
        text-decoration: none; }
      .category_overview .category .text_wrap .read_more_link {
        padding: 0;
        text-decoration: none;
        font-size: var(--small-btn);
        text-transform: uppercase;
        font-weight: 600;
        background: none;
        transition: color .5s ease; }
        .category_overview .category .text_wrap .read_more_link img {
          width: 20px;
          height: 13px;
          margin-right: 15px;
          filter: brightness(0) saturate(100%);
          transition: filter .5s ease; }
        .category_overview .category .text_wrap .read_more_link:hover {
          color: #FF4025;
          transition: color .5s ease;
          cursor: pointer; }
          .category_overview .category .text_wrap .read_more_link:hover img {
            filter: brightness(0) saturate(100%) invert(52%) sepia(56%) saturate(7443%) hue-rotate(6deg) brightness(109%) contrast(101%);
            transition: filter .5s ease; }

.collection_items {
  height: 100vh;
  position: relative;
  overflow-x: auto;
  overflow-y: none;
  scroll-behavior: smooth; }
  .collection_items .image_wrap {
    width: 200vw;
    display: flex;
    flex-wrap: wrap; }
    .collection_items .image_wrap .post {
      flex: 0 0 auto; }
      .collection_items .image_wrap .post img {
        height: 50vh;
        width: auto;
        object-fit: cover; }

.collection_items::-webkit-scrollbar {
  height: 0; }

.collection_items {
  scrollbar-width: none;
  border: 0; }

/* ------------- Collection Theme Slider ---------------- */
.collection_slider {
  position: relative; }
  .collection_slider:after {
    content: '';
    background: linear-gradient(180deg, rgba(0, 0, 0, 0.95) 10%, rgba(0, 0, 0, 0.7) 19%, rgba(0, 0, 0, 0.5) 34%, rgba(0, 0, 0, 0.35) 47%, rgba(0, 0, 0, 0.278) 56.5%, rgba(0, 0, 0, 0.194) 65%, rgba(0, 0, 0, 0.126) 73%, rgba(0, 0, 0, 0.075) 80.2%, rgba(0, 0, 0, 0.042) 86.1%, rgba(0, 0, 0, 0.021) 91%, rgba(0, 0, 0, 0.008) 95.2%, rgba(0, 0, 0, 0.001) 98.2%, rgba(0, 0, 0, 0) 100%);
    width: 100%;
    display: block;
    height: 40vh;
    top: 0;
    position: absolute;
    z-index: 10;
    margin: 0; }
  .collection_slider .header_wrap {
    position: absolute;
    width: 100%;
    text-align: center;
    color: #ffffff;
    margin-top: var(--vertical);
    text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.25);
    z-index: 20; }
    @media (min-width: 800px) and (max-width: 1440px) {
      .collection_slider .header_wrap {
        margin-top: var(--vertical-l); } }
    .collection_slider .header_wrap h2 {
      margin-bottom: 15px;
      color: #F6F6F6;
      font-size: var(--small-subtitle); }
    .collection_slider .header_wrap h1 {
      margin-bottom: 10px;
      font-size: var(--large-title); }
    @media (min-width: 280px) and (max-width: 799px) {
      .collection_slider .header_wrap .sepa {
        display: none; } }
    .collection_slider .header_wrap .sepa img {
      margin: 0 auto 20px auto;
      filter: brightness(0) saturate(100%) invert(100%); }
  .collection_slider .collection_slider_inner {
    display: flex; }
  .collection_slider .theme {
    width: 33.33vw;
    position: relative;
    text-decoration: none;
    display: block; }
    @media (min-width: 280px) and (max-width: 799px) {
      .collection_slider .theme {
        width: 100vw; } }
    @media (min-width: 800px) and (max-width: 1440px) {
      .collection_slider .theme {
        width: 50vw; } }
    .collection_slider .theme:before {
      content: '';
      background: linear-gradient(0deg, rgba(0, 0, 0, 0.95) 10%, rgba(0, 0, 0, 0.7) 19%, rgba(0, 0, 0, 0.5) 34%, rgba(0, 0, 0, 0.35) 47%, rgba(0, 0, 0, 0.278) 56.5%, rgba(0, 0, 0, 0.194) 65%, rgba(0, 0, 0, 0.126) 73%, rgba(0, 0, 0, 0.075) 80.2%, rgba(0, 0, 0, 0.042) 86.1%, rgba(0, 0, 0, 0.021) 91%, rgba(0, 0, 0, 0.008) 95.2%, rgba(0, 0, 0, 0.001) 98.2%, rgba(0, 0, 0, 0) 100%);
      display: block;
      height: 40vh;
      left: 0;
      right: 0;
      bottom: 0;
      position: absolute;
      z-index: 10;
      margin: 0; }
      @media (min-width: 280px) and (max-width: 799px) {
        .collection_slider .theme:before {
          height: 60vh;
          left: 0; } }
      @media (min-width: 800px) and (max-width: 1440px) {
        .collection_slider .theme:before {
          left: 0; } }
    .collection_slider .theme img {
      height: 100vh;
      width: 100%;
      object-fit: cover; }
    .collection_slider .theme .text_wrap {
      position: absolute;
      z-index: 20;
      bottom: 0;
      padding: 50px;
      color: #ffffff;
      width: 100%; }
      @media (min-width: 280px) and (max-width: 799px) {
        .collection_slider .theme .text_wrap {
          padding: var(--vertical) var(--horizontal-l); } }
      .collection_slider .theme .text_wrap h2 {
        font-size: var(--small-subtitle);
        margin-bottom: 10px;
        text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.4); }
      .collection_slider .theme .text_wrap p {
        font-size: calc(var(--medium-p) * .9);
        font-weight: 300;
        margin: 0;
        text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.5); }
        @media (min-width: 480px) and (max-width: 1024px) and (orientation: portrait) {
          .collection_slider .theme .text_wrap p {
            font-size: var(--medium-p); } }
  @media (min-width: 280px) and (max-width: 799px) {
    .collection_slider .slider_button.left {
      display: none; } }

/* ------------- Home Hero ---------------- */
.home_hero {
  display: flex;
  background: #000000; }
  @media (min-width: 280px) and (max-width: 799px) {
    .home_hero {
      flex-wrap: wrap; } }
  .home_hero .sidebar {
    width: 33.3vw;
    padding: calc(var(--vertical-xl) * 1.4) var(--horizontal) var(--vertical-s) var(--horizontal);
    color: #ffffff;
    text-align: left;
    display: flex;
    align-self: center;
    flex-direction: column; }
    .home_hero .sidebar .mobile_image {
      display: none; }
    .home_hero .sidebar .mobile_logo {
      display: none; }
    @media (min-width: 800px) and (max-width: 1440px) {
      .home_hero .sidebar {
        width: 50vw; }
        .home_hero .sidebar .buttons {
          padding-bottom: 5vh; } }
    @media (min-width: 280px) and (max-width: 799px) {
      .home_hero .sidebar {
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-self: center;
        width: 100%;
        height: 100vh;
        display: flex; }
        .home_hero .sidebar:before {
          z-index: 10;
          content: '';
          background: linear-gradient(0deg, rgba(0, 0, 0, 0.95) 10%, rgba(0, 0, 0, 0.7) 19%, rgba(0, 0, 0, 0.5) 34%, rgba(0, 0, 0, 0.35) 47%, rgba(0, 0, 0, 0.278) 56.5%, rgba(0, 0, 0, 0.194) 65%, rgba(0, 0, 0, 0.126) 73%, rgba(0, 0, 0, 0.075) 80.2%, rgba(0, 0, 0, 0.042) 86.1%, rgba(0, 0, 0, 0.021) 91%, rgba(0, 0, 0, 0.008) 95.2%, rgba(0, 0, 0, 0.001) 98.2%, rgba(0, 0, 0, 0) 100%);
          width: 100%;
          display: block;
          height: 80vh;
          bottom: 0;
          left: 0;
          position: absolute; }
        .home_hero .sidebar .buttons {
          display: none; }
        .home_hero .sidebar .header_text {
          z-index: 100;
          text-shadow: 1px 1px 6px #000000; }
          .home_hero .sidebar .header_text .header {
            text-align: center;
            margin-bottom: 2vh; }
          .home_hero .sidebar .header_text .mobile_logo {
            display: block;
            position: relative;
            margin-bottom: 2vh; }
            .home_hero .sidebar .header_text .mobile_logo img {
              width: 65vw;
              margin-left: 12.5vw;
              margin-bottom: 10px;
              filter: invert(1); }
        .home_hero .sidebar .mobile_image {
          display: block;
          position: absolute;
          width: 100%;
          left: 0;
          top: 0;
          width: 100%;
          object-fit: cover;
          min-height: 100%;
          z-index: 1; } }
    .home_hero .sidebar .subheader {
      font-size: var(--small-subtitle); }
      @media (min-width: 280px) and (max-width: 799px) {
        .home_hero .sidebar .subheader {
          text-align: center;
          width: 70%;
          margin: 0 auto; } }
    .home_hero .sidebar .home_navigation {
      margin: var(--vertical) 0; }
      @media (min-width: 280px) and (max-width: 799px) {
        .home_hero .sidebar .home_navigation {
          display: none; } }
      .home_hero .sidebar .home_navigation a {
        color: #ffffff;
        text-decoration: none;
        font-size: var(--large-p);
        margin: 10px 0;
        display: inline-block;
        font-weight: 300; }
        .home_hero .sidebar .home_navigation a:visited {
          color: #ffffff; }
        .home_hero .sidebar .home_navigation a:hover {
          transition: color .5s ease;
          color: #FF4025; }
  .home_hero .slider_wrap {
    width: 66.6vw;
    min-height: 100vh;
    position: relative;
    overflow: hidden;
    background: #000000; }
    @media (min-width: 280px) {
      .home_hero .slider_wrap {
        display: none; } }
    @media (min-width: 1441px) {
      .home_hero .slider_wrap {
        display: inline-block; } }
    .home_hero .slider_wrap .background {
      background: #000000; }
      .home_hero .slider_wrap .background .bg_image {
        position: absolute;
        opacity: 0;
        transition: all 1s ease; }
        .home_hero .slider_wrap .background .bg_image img {
          width: 70vw;
          object-fit: cover;
          min-height: 100vh;
          height: 100%; }
      .home_hero .slider_wrap .background .active {
        transition: all 1s ease;
        opacity: 1; }
    .home_hero .slider_wrap .foreground {
      width: 100%;
      display: flex;
      position: absolute;
      bottom: 0; }
      .home_hero .slider_wrap .foreground .text_wrap {
        display: inline-block;
        position: relative;
        min-width: 33.33%;
        height: 230px;
        padding: 1.7vw 2vw;
        background: rgba(0, 0, 0, 0.6);
        text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.25);
        color: #fff;
        align-self: flex-end;
        transition: all 0.3s ease; }
        .home_hero .slider_wrap .foreground .text_wrap:nth-child(2n) {
          background: rgba(0, 0, 0, 0.5); }
        .home_hero .slider_wrap .foreground .text_wrap:nth-child(3n) {
          background: rgba(0, 0, 0, 0.4); }
        .home_hero .slider_wrap .foreground .text_wrap .item_meta {
          visibility: hidden;
          opacity: 0; }
          .home_hero .slider_wrap .foreground .text_wrap .item_meta h3 {
            font-size: var(--small-subtitle); }
          .home_hero .slider_wrap .foreground .text_wrap .item_meta p {
            font-family: "Prata", serif;
            color: #828282;
            font-size: var(--medium-p); }
        .home_hero .slider_wrap .foreground .text_wrap .text {
          position: absolute;
          bottom: 70px; }
          .home_hero .slider_wrap .foreground .text_wrap .text .subheader {
            font-size: calc(var(--small-p) * 1.1);
            font-weight: 400;
            margin-bottom: 5px;
            width: 90%; }
          .home_hero .slider_wrap .foreground .text_wrap .text .header {
            width: 90%;
            line-height: 120%;
            font-size: var(--small-subtitle);
            font-weight: 300;
            font-family: "Lato", sans-serif;
            margin-bottom: 10px; }
        .home_hero .slider_wrap .foreground .text_wrap .subheader.action {
          color: #FF4025; }
        .home_hero .slider_wrap .foreground .text_wrap .read_more_link {
          padding: 0;
          text-decoration: none;
          font-size: var(--small-btn);
          text-transform: uppercase;
          font-weight: 600;
          background: none;
          transition: color .5s ease;
          color: #ffffff;
          position: absolute;
          bottom: 30px; }
          .home_hero .slider_wrap .foreground .text_wrap .read_more_link img {
            width: 20px;
            height: 13px;
            margin-right: 15px;
            filter: brightness(0) saturate(100%);
            transition: filter .5s ease; }
          .home_hero .slider_wrap .foreground .text_wrap .read_more_link:hover {
            color: #FF4025;
            transition: color .5s ease;
            cursor: pointer; }
            .home_hero .slider_wrap .foreground .text_wrap .read_more_link:hover img {
              filter: brightness(0) saturate(100%) invert(52%) sepia(56%) saturate(7443%) hue-rotate(6deg) brightness(109%) contrast(101%);
              transition: filter .5s ease; }
          .home_hero .slider_wrap .foreground .text_wrap .read_more_link img {
            display: inline;
            width: 18px;
            height: 18px;
            margin: 0 10px 0 0;
            filter: brightness(0) saturate(100%) invert(100%); }
      .home_hero .slider_wrap .foreground .expo .subheader {
        font-size: calc(var(--small-p) * 1.1);
        font-weight: 400;
        margin-bottom: 5px;
        width: 90%; }
      .home_hero .slider_wrap .foreground .expo .header {
        width: 90%;
        line-height: 120%;
        font-size: var(--small-subtitle);
        font-weight: 300;
        font-family: "Lato", sans-serif;
        margin-bottom: 10px; }
      .home_hero .slider_wrap .foreground .expo .tagline {
        margin-top: 20px;
        font-family: "Prata", serif;
        font-size: var(--small-subtitle);
        width: 90%;
        visibility: visible;
        opacity: 0; }
      .home_hero .slider_wrap .foreground .active {
        height: 346px;
        transition: all 0.3s ease;
        background: rgba(0, 0, 0, 0.6); }
        .home_hero .slider_wrap .foreground .active:nth-child(2n) {
          background: rgba(0, 0, 0, 0.7); }
        .home_hero .slider_wrap .foreground .active:nth-child(3n) {
          background: rgba(0, 0, 0, 0.7); }
        .home_hero .slider_wrap .foreground .active .item_meta, .home_hero .slider_wrap .foreground .active .tagline {
          visibility: visible;
          line-height: 130%;
          opacity: 1;
          transition: opacity .5s ease, display .5s ease .5s; }
  .home_hero .mobile_slider {
    display: block;
    width: 100vw;
    position: relative;
    overflow: hidden; }
    @media (min-width: 800px) and (max-width: 1440px) {
      .home_hero .mobile_slider {
        width: 50vw;
        min-height: clamp(800px, 100vh, 1000px); } }
    .home_hero .mobile_slider .slide {
      position: relative; }
      @media (min-width: 800px) and (max-width: 1440px) {
        .home_hero .mobile_slider .slide {
          height: clamp(800px, 100vh, 1000px); } }
      .home_hero .mobile_slider .slide:before {
        content: '';
        background: linear-gradient(0deg, rgba(0, 0, 0, 0.95) 10%, rgba(0, 0, 0, 0.7) 19%, rgba(0, 0, 0, 0.5) 34%, rgba(0, 0, 0, 0.35) 47%, rgba(0, 0, 0, 0.278) 56.5%, rgba(0, 0, 0, 0.194) 65%, rgba(0, 0, 0, 0.126) 73%, rgba(0, 0, 0, 0.075) 80.2%, rgba(0, 0, 0, 0.042) 86.1%, rgba(0, 0, 0, 0.021) 91%, rgba(0, 0, 0, 0.008) 95.2%, rgba(0, 0, 0, 0.001) 98.2%, rgba(0, 0, 0, 0) 100%);
        width: 100%;
        display: block;
        height: 40vh;
        bottom: 0;
        position: absolute;
        z-index: 10; }
      .home_hero .mobile_slider .slide .text_wrap {
        position: absolute;
        width: 90vw;
        bottom: 4vh;
        margin-left: 4vh;
        z-index: 100;
        color: #ffffff; }
        @media (min-width: 800px) and (max-width: 1440px) {
          .home_hero .mobile_slider .slide .text_wrap {
            width: 45vw; } }
      .home_hero .mobile_slider .slide .image {
        width: 100%;
        object-fit: cover;
        height: calc(100vh - 2 * var(--mobile-btn-height));
        z-index: 1; }
        @media (min-width: 800px) and (max-width: 1440px) {
          .home_hero .mobile_slider .slide .image {
            height: clamp(800px, 100vh, 1000px); } }
      .home_hero .mobile_slider .slide .read_more_link {
        color: #ffffff; }
        .home_hero .mobile_slider .slide .read_more_link img {
          filter: brightness(0) saturate(100%) invert(100%); }
        .home_hero .mobile_slider .slide .read_more_link:hover {
          color: #FF4025; }
          .home_hero .mobile_slider .slide .read_more_link:hover img {
            filter: brightness(0) saturate(100%) invert(52%) sepia(56%) saturate(7443%) hue-rotate(6deg) brightness(109%) contrast(101%); }
      .home_hero .mobile_slider .slide .item_meta {
        display: none; }
      .home_hero .mobile_slider .slide .subheader {
        margin-bottom: 10px;
        font-family: "Lato", sans-serif;
        font-weight: 400;
        font-size: calc(var(--small-p) * 1.2); }
      .home_hero .mobile_slider .slide .header {
        font-weight: 300;
        font-size: var(--large-subtitle);
        margin-bottom: 10px; }
      .home_hero .mobile_slider .slide .tagline {
        margin-bottom: 20px; }
      .home_hero .mobile_slider .slide .read_more_link {
        margin: 20px 0 10px 0; }
    @media (min-width: 1441px) {
      .home_hero .mobile_slider {
        display: none; } }

/* ------------- Home About ---------------- */
.home_about {
  display: flex;
  min-height: 100vh; }
  @media (min-width: 280px) and (max-width: 799px) {
    .home_about {
      flex-wrap: wrap; } }
  @media (min-width: 800px) and (max-width: 1440px) {
    .home_about {
      flex-wrap: wrap;
      min-height: 200vh; } }
  .home_about .section {
    display: flex;
    align-self: center;
    flex-direction: column; }
  .home_about .text_wrap {
    width: 33.3vw;
    position: relative;
    padding: var(--vertical) var(--horizontal); }
    @media (min-width: 280px) and (max-width: 799px) {
      .home_about .text_wrap {
        width: 100vw; } }
    @media (min-width: 800px) and (max-width: 1440px) {
      .home_about .text_wrap {
        width: 50vw; } }
    .home_about .text_wrap .visitor_number {
      font-size: var(--large-title);
      font-family: "Prata", serif; }
      @media (min-width: 280px) and (max-width: 799px) {
        .home_about .text_wrap .visitor_number {
          font-size: var(--x-large-title);
          margin-bottom: 10px; } }
    .home_about .text_wrap .header {
      font-size: var(--small-subtitle); }
    .home_about .text_wrap .button_repeater {
      position: relative;
      z-index: 2; }
    .home_about .text_wrap .weedleaf {
      position: absolute;
      right: -10vw;
      bottom: -1vw;
      z-index: 1;
      display: none; }
      @media (min-width: 1441px) {
        .home_about .text_wrap .weedleaf {
          display: block; } }
      .home_about .text_wrap .weedleaf img {
        width: 30vw;
        height: 30vw;
        opacity: .05; }
  .home_about .image_wrap {
    width: 33.3vw; }
    @media (min-width: 280px) and (max-width: 799px) {
      .home_about .image_wrap {
        width: 100vw;
        height: 50vh; } }
    @media (min-width: 800px) and (max-width: 1440px) {
      .home_about .image_wrap {
        width: 50vw; } }
  .home_about .image_wrap.tablet {
    display: none; }
    @media (min-width: 800px) and (max-width: 1440px) {
      .home_about .image_wrap.tablet {
        display: flex;
        width: 50vw; } }
  .home_about .locations {
    width: 33.3vw;
    padding: var(--vertical) var(--horizontal) var(--vertical) var(--horizontal-l);
    display: flex;
    align-self: center;
    flex-direction: column; }
    @media (min-width: 280px) and (max-width: 799px) {
      .home_about .locations {
        width: 100vw;
        padding: 0; } }
    @media (min-width: 800px) and (max-width: 1440px) {
      .home_about .locations {
        width: 50vw;
        padding-left: var(--horizontal-xl); } }
    .home_about .locations .header_wrap {
      font-size: var(--large-title);
      font-family: "Prata", serif;
      margin-bottom: var(--vertical); }
      @media (min-width: 280px) and (max-width: 799px) {
        .home_about .locations .header_wrap {
          display: none; } }
      .home_about .locations .header_wrap .text {
        position: relative;
        z-index: 2; }
      .home_about .locations .header_wrap .ampersand {
        margin-left: -4vw;
        position: absolute;
        z-index: 1;
        margin-top: -10px; }
        @media (min-width: 800px) and (max-width: 1440px) {
          .home_about .locations .header_wrap .ampersand {
            margin-left: -6vw;
            margin-top: -6px; } }
        .home_about .locations .header_wrap .ampersand img {
          width: 8vw;
          height: 10vw; }
          @media (min-width: 800px) and (max-width: 1440px) {
            .home_about .locations .header_wrap .ampersand img {
              width: 12vw;
              height: 14vw; } }
    .home_about .locations .tabs_header {
      display: none; }
      @media (min-width: 280px) and (max-width: 799px) {
        .home_about .locations .tabs_header {
          display: flex; } }
      .home_about .locations .tabs_header .tab_title {
        width: 50%;
        height: var(--mobile-btn-height);
        font-family: "Prata", serif;
        background: rgba(130, 130, 130, 0.3);
        font-size: var(--large-p); }
      .home_about .locations .tabs_header .tab_title-active {
        background: #F6F6F6; }
    .home_about .locations .address_wrap {
      z-index: 2; }
      @media (min-width: 280px) and (max-width: 799px) {
        .home_about .locations .address_wrap {
          padding: var(--vertical) var(--horizontal) var(--vertical) var(--horizontal-l); } }
      .home_about .locations .address_wrap .header {
        font-weight: 600;
        font-size: var(--medium-p); }
        @media (min-width: 280px) and (max-width: 799px) {
          .home_about .locations .address_wrap .header {
            display: none; } }
      .home_about .locations .address_wrap .openinghours, .home_about .locations .address_wrap .address, .home_about .locations .address_wrap .phonenumber {
        display: flex; }
        .home_about .locations .address_wrap .openinghours p, .home_about .locations .address_wrap .address p, .home_about .locations .address_wrap .phonenumber p {
          font-size: var(--medium-p);
          margin-bottom: 5px; }
      .home_about .locations .address_wrap .address img {
        margin: 0 22px 0 6px; }
      .home_about .locations .address_wrap .phonenumber img {
        margin: 0 18px 0 4px; }
      .home_about .locations .address_wrap .openinghours img {
        margin: 2px 18px 0 4px; }
      .home_about .locations .address_wrap .moreinfo {
        display: flex;
        margin-bottom: calc(var(--vertical) * .6);
        text-decoration: none; }
        .home_about .locations .address_wrap .moreinfo p {
          font-size: var(--medium-p);
          margin-bottom: 0; }
        .home_about .locations .address_wrap .moreinfo img {
          width: 14px;
          margin: 0 25px 0 3px;
          filter: brightness(0) saturate(100%);
          transition: filter .5s ease; }
        .home_about .locations .address_wrap .moreinfo:hover img {
          filter: brightness(0) saturate(100%) invert(52%) sepia(56%) saturate(7443%) hue-rotate(6deg) brightness(109%) contrast(101%);
          transition: filter .5s ease; }
      .home_about .locations .address_wrap .social.barcelona {
        margin: 0; }

/* ------------- Search Page ----------------------------------------------------------------------------------------------------------- */
.fourofour {
  min-height: 100vh;
  padding: var(--vertical-xl) var(--horizontal);
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center; }
  .fourofour .header {
    font-size: var(--x-large-title);
    text-align: center;
    margin-bottom: 20px; }
  .fourofour .subheader {
    font-size: var(--medium-subtitle);
    margin-top: 0;
    margin-bottom: 30px;
    text-align: center; }
  .fourofour p {
    text-align: center; }
  .fourofour .search_form {
    display: block;
    margin: 5vh auto 10vh auto; }
    .fourofour .search_form label {
      display: none; }
    .fourofour .search_form input {
      width: 70vw;
      height: 60px;
      padding: 10px 25px;
      border: 0;
      max-width: 800px;
      box-shadow: 5px 5px 10px rgba(0, 0, 0, 0.05);
      font-size: var(--medium-p); }
    .fourofour .search_form button {
      background: #ffffff;
      height: 49px;
      width: 50px;
      margin-top: 7px;
      margin-left: -55px;
      position: absolute;
      cursor: pointer; }
      .fourofour .search_form button img {
        margin-top: 4px;
        filter: brightness(0); }
      .fourofour .search_form button:hover img {
        filter: brightness(0) saturate(100%) invert(52%) sepia(56%) saturate(7443%) hue-rotate(6deg) brightness(109%) contrast(101%); }

/* ------------- Search Page ----------------------------------------------------------------------------------------------------------- */
.result_page {
  padding: var(--vertical-xl) var(--horizontal);
  display: flex;
  flex-direction: column;
  justify-content: center; }
  .result_page .header {
    font-size: var(--x-large-title);
    text-align: center; }
  .result_page .subheader {
    font-size: var(--small-subtitle);
    color: #828282;
    margin-bottom: 0;
    text-align: center; }
  .result_page .search_form {
    display: block;
    margin: 20vh auto 10vh auto; }
    .result_page .search_form label {
      display: none; }
    @media (min-width: 280px) and (max-width: 799px) {
      .result_page .search_form {
        margin: var(--vertical) auto; } }
    .result_page .search_form input {
      width: 70vw;
      height: 60px;
      padding: 10px 25px;
      border: 0;
      max-width: 800px;
      box-shadow: 5px 5px 10px rgba(0, 0, 0, 0.05);
      font-size: var(--medium-p); }
      @media (min-width: 280px) and (max-width: 799px) {
        .result_page .search_form input {
          width: 90vw; } }
    .result_page .search_form button {
      background: #ffffff;
      height: 49px;
      width: 50px;
      margin-top: 7px;
      margin-left: -55px;
      position: absolute;
      cursor: pointer; }
      .result_page .search_form button img {
        margin-top: 4px;
        filter: brightness(0) saturate(100%); }
      .result_page .search_form button:hover img {
        filter: brightness(0) saturate(100%) invert(52%) sepia(56%) saturate(7443%) hue-rotate(6deg) brightness(109%) contrast(101%); }
  .result_page .results {
    display: flex;
    flex-wrap: wrap; }
    @media (min-width: 280px) and (max-width: 799px) {
      .result_page .results {
        flex-direction: column; } }
    @media (min-width: 480px) and (max-width: 1024px) and (orientation: portrait) {
      .result_page .results {
        flex-direction: row; } }
    .result_page .results .result {
      background: #ffffff;
      margin: 1vw;
      width: 21vw; }
      @media (min-width: 280px) and (max-width: 799px) {
        .result_page .results .result {
          margin: var(--horizontal);
          width: auto; } }
      @media (min-width: 480px) and (max-width: 1024px) and (orientation: portrait) {
        .result_page .results .result {
          margin: 1vw;
          width: 42vw; } }
      @media (min-width: 800px) and (max-width: 1440px) {
        .result_page .results .result {
          margin: 1vw;
          width: 29vw; } }
      .result_page .results .result .image img {
        height: 25vh;
        width: 100%;
        object-fit: cover; }
      .result_page .results .result .text {
        padding: 2vw; }
        @media (min-width: 280px) and (max-width: 799px) {
          .result_page .results .result .text {
            padding: var(--vertical) var(--horizontal); } }
        .result_page .results .result .text .header {
          text-align: left;
          font-size: var(--large-p);
          margin-bottom: 10px; }
        .result_page .results .result .text p {
          font-size: var(--medium-p); }

/* ------------- Whats on page / Expo / News / Exhibition ----------------------------------------------------------------------------------------------------------- */
.pagination {
  margin: var(--vertical) var(--horizontal);
  text-align: center; }
  .pagination .page-numbers {
    padding: 10px 15px;
    margin: 3px;
    background: #ffffff;
    border-radius: 2px; }
  .pagination .screen-reader-text {
    display: none; }

.events .next_posts_btn_wrap {
  padding-bottom: 15vh;
  display: flex;
  justify-content: center;
  align-items: flex-start;
  width: 52vw; }
  .events .next_posts_btn_wrap a {
    display: inline-block;
    text-align: center;
    margin-top: -15px; }
    @media (min-width: 800px) and (max-width: 1440px) {
      .events .next_posts_btn_wrap a {
        margin-top: 10vh; } }
  @media (min-width: 280px) and (max-width: 799px) {
    .events .next_posts_btn_wrap {
      width: 95vw;
      padding-top: 10vh;
      padding-bottom: 8vh;
      margin-left: calc(var(--horizontal) + 1px);
      border-top: 1px solid #000000; } }
  @media (min-width: 800px) and (max-width: 1440px) {
    .events .next_posts_btn_wrap {
      width: 98vw;
      border-left: 1px solid #000000;
      margin-left: 2vw; } }

.event {
  display: flex;
  min-height: 100vh;
  align-items: center; }
  @media (min-width: 800px) and (max-width: 1440px) {
    .event {
      border-left: 1px solid #000000;
      margin-left: 2vw; } }
  .event .info_wrap {
    width: 66.66vw;
    display: flex; }
    @media (min-width: 280px) and (max-width: 799px) {
      .event .info_wrap {
        width: 100vw;
        border-left: 1px solid #000000;
        margin-left: calc(var(--horizontal) * 1.1);
        min-height: 100vh; } }
  @media (min-width: 280px) and (max-width: 799px) and (min-width: 280px) and (max-width: 799px) {
    .event .info_wrap {
      padding-top: var(--mobile-btn-height); } }

    @media (min-width: 800px) and (max-width: 1440px) {
      .event .info_wrap {
        width: 48vw;
        padding-top: 20vh; } }
    .event .info_wrap .meta_info {
      width: 40vw;
      min-height: 100vh;
      padding: 30vh var(--horizontal) var(--vertical) var(--horizontal);
      text-align: right;
      border-right: 1px solid #000000; }
      @media (min-width: 280px) and (max-width: 799px) {
        .event .info_wrap .meta_info {
          display: none; } }
      @media (min-width: 800px) and (max-width: 1440px) {
        .event .info_wrap .meta_info {
          display: none; } }
      .event .info_wrap .meta_info .title {
        text-decoration: none; }
        .event .info_wrap .meta_info .title h2 {
          font-size: var(--small-subtitle);
          margin-bottom: 10px; }
      .event .info_wrap .meta_info .date {
        display: flex;
        justify-content: flex-end; }
        .event .info_wrap .meta_info .date img {
          margin-top: -12px;
          width: 20px; }
        .event .info_wrap .meta_info .date p {
          font-weight: 400;
          font-size: var(--medium-p);
          margin-right: 20px;
          margin-bottom: 15px; }
      .event .info_wrap .meta_info .location {
        display: flex;
        justify-content: flex-end; }
        .event .info_wrap .meta_info .location img {
          margin-top: -10px;
          width: 15px; }
        .event .info_wrap .meta_info .location p {
          font-weight: 400;
          font-size: var(--medium-p);
          margin-right: 20px;
          margin-bottom: 15px; }
      .event .info_wrap .meta_info .free_entry {
        display: flex;
        justify-content: flex-end; }
        .event .info_wrap .meta_info .free_entry img {
          margin-top: -27px;
          width: 14px; }
        .event .info_wrap .meta_info .free_entry p {
          font-weight: 400;
          font-size: var(--medium-p);
          margin-right: 20px; }
    .event .info_wrap .description {
      width: 60vw;
      padding: 25vh calc(var(--horizontal) * 2) var(--vertical) 8vw; }
      @media (min-width: 280px) and (max-width: 799px) {
        .event .info_wrap .description {
          padding: var(--vertical) calc(var(--horizontal) * 2);
          width: 100%; } }
      @media (min-width: 800px) and (max-width: 1440px) {
        .event .info_wrap .description {
          padding: var(--vertical) calc(var(--horizontal) * 2); } }
      .event .info_wrap .description .title {
        text-decoration: none; }
        .event .info_wrap .description .title h2 {
          color: rgba(130, 130, 130, 0.3);
          font-size: var(--small-subtitle);
          margin-bottom: 10px; }
          @media (min-width: 280px) and (max-width: 799px) {
            .event .info_wrap .description .title h2 {
              font-size: var(--medium-title);
              color: #000000; } }
          @media (min-width: 800px) and (max-width: 1440px) {
            .event .info_wrap .description .title h2 {
              font-size: var(--medium-title);
              color: #000000; } }
      .event .info_wrap .description h1 {
        font-size: var(--small-subtitle);
        margin-top: var(--vertical);
        margin-bottom: 10px;
        position: relative; }
        .event .info_wrap .description h1:before {
          content: '';
          border-bottom: 1px solid #000000;
          width: 6vw;
          height: 1px;
          display: block;
          margin-left: -8vw;
          margin-top: 20px;
          position: absolute; }
          @media (min-width: 280px) and (max-width: 799px) {
            .event .info_wrap .description h1:before {
              display: none; } }
          @media (min-width: 800px) and (max-width: 1440px) {
            .event .info_wrap .description h1:before {
              display: none; } }
        .event .info_wrap .description h1:after {
          content: '';
          width: 20px;
          height: 20px;
          background: #F6F6F6;
          border: 1px solid #000000;
          border-radius: 10px;
          position: absolute;
          left: -163px;
          top: 10px; }
      @media (min-width: 1441px) {
        .event .info_wrap .description .mobile_meta_info {
          display: none; } }
      .event .info_wrap .description .mobile_meta_info .date {
        display: flex;
        justify-content: flex-start;
        position: relative; }
        .event .info_wrap .description .mobile_meta_info .date img {
          margin-top: -10px;
          width: 20px; }
        .event .info_wrap .description .mobile_meta_info .date p {
          font-weight: 400;
          font-size: var(--medium-p);
          margin-left: 20px;
          margin-bottom: 15px; }
        .event .info_wrap .description .mobile_meta_info .date:before {
          content: '';
          border-bottom: 1px solid #000000;
          width: 6vw;
          height: 1px;
          display: block;
          margin-left: -8vw;
          margin-top: 20px;
          position: absolute; }
          @media (min-width: 800px) and (max-width: 1440px) {
            .event .info_wrap .description .mobile_meta_info .date:before {
              width: 4vw;
              margin-left: calc(var(--horizontal-l) * -1); } }
          @media (min-width: 1441px) {
            .event .info_wrap .description .mobile_meta_info .date:before {
              display: none; } }
        .event .info_wrap .description .mobile_meta_info .date:after {
          content: '';
          width: 15px;
          height: 15px;
          background: #F6F6F6;
          border: 1px solid #000000;
          border-radius: 10px;
          position: absolute;
          left: -30px;
          top: 13px; }
          @media (min-width: 800px) and (max-width: 1440px) {
            .event .info_wrap .description .mobile_meta_info .date:after {
              left: calc((var(--horizontal-l) * -1) - 7px); } }
          @media (min-width: 1441px) {
            .event .info_wrap .description .mobile_meta_info .date:after {
              display: none; } }
      .event .info_wrap .description .mobile_meta_info .location {
        display: flex;
        justify-content: flex-start; }
        .event .info_wrap .description .mobile_meta_info .location img {
          margin-top: -8px;
          width: 15px; }
        .event .info_wrap .description .mobile_meta_info .location p {
          font-weight: 400;
          font-size: var(--medium-p);
          margin-left: 20px;
          margin-bottom: 15px; }
      .event .info_wrap .description .mobile_meta_info .free_entry {
        display: flex;
        justify-content: flex-start; }
        .event .info_wrap .description .mobile_meta_info .free_entry img {
          margin-top: -25px;
          width: 15px; }
        .event .info_wrap .description .mobile_meta_info .free_entry p {
          font-weight: 400;
          font-size: var(--medium-p);
          margin-left: 20px; }
      .event .info_wrap .description .btn .short_text {
        display: none; }
        @media (min-width: 280px) and (max-width: 799px) {
          .event .info_wrap .description .btn .short_text {
            display: block; } }
        @media (min-width: 800px) and (max-width: 1440px) {
          .event .info_wrap .description .btn .short_text {
            display: block; } }
      .event .info_wrap .description .btn .long_text {
        display: none; }
        @media (min-width: 1441px) {
          .event .info_wrap .description .btn .long_text {
            display: block; } }
      .event .info_wrap .description .mobile_image {
        display: none; }
        .event .info_wrap .description .mobile_image img {
          width: 100%;
          height: 50vh; }
        @media (min-width: 280px) and (max-width: 799px) {
          .event .info_wrap .description .mobile_image {
            display: block; } }
  .event .image {
    width: 33.33vw;
    display: flex;
    align-items: stretch;
    height: 100vh; }
    @media (min-width: 280px) and (max-width: 799px) {
      .event .image {
        display: none; } }
    @media (min-width: 800px) and (max-width: 1440px) {
      .event .image {
        width: 50vw; } }
    .event .image img {
      width: 100%;
      min-height: 100vh; }

/* ------------- Newsletter Subscribe Section ----------------------------------------------------------------------------------------------------------- */
.newsletter {
  background: #ffffff;
  padding: var(--vertical-xl) var(--horizontal);
  text-align: center; }
  .newsletter .header {
    font-size: var(--large-title);
    margin-bottom: 20px; }
  .newsletter .subheader {
    font-size: var(--small-subtitle);
    color: #828282;
    margin-bottom: 20px; }
  .newsletter .form_inner {
    display: inline-flex;
    margin: 0 auto; }
    @media (min-width: 280px) and (max-width: 799px) {
      .newsletter .form_inner {
        display: block; } }
  .newsletter .input_wrap {
    display: inline; }
    .newsletter .input_wrap label {
      display: block;
      text-align: left;
      margin-left: 10px;
      color: #000000;
      font-weight: 300; }
      @media (min-width: 480px) and (max-width: 1024px) and (orientation: portrait) {
        .newsletter .input_wrap label {
          margin-left: 40px; } }
    .newsletter .input_wrap input {
      border: 1px solid rgba(130, 130, 130, 0.4);
      box-sizing: border-box;
      border-radius: 2px;
      padding: 10px 20px;
      margin: 5px;
      min-width: 300px; }
      @media (min-width: 280px) and (max-width: 799px) {
        .newsletter .input_wrap input {
          width: 90%; } }
    .newsletter .input_wrap input.error {
      border-color: #FF4025; }
    .newsletter .input_wrap .error-message {
      text-align: left;
      font-weight: 300;
      font-size: var(--small-p);
      margin-left: 10px;
      color: #FF4025; }
  .newsletter .gdpr_check {
    margin: 20px 0 30px 0;
    font-size: calc(var(--medium-p) * .9 );
    font-weight: 300; }
    .newsletter .gdpr_check a {
      font-weight: 400;
      font-size: calc(var(--medium-p) * .8 ); }
    .newsletter .gdpr_check .error-message {
      text-align: center;
      font-weight: 300;
      font-size: var(--small-p);
      color: #FF4025;
      display: inline; }
  .newsletter .hide_success.hidden {
    display: none;
    opacity: 0;
    transition: opacity .5s ease, display 0s ease .5s; }
  .newsletter .status_message.success-message {
    margin-top: 20px;
    font-weight: 300;
    font-size: var(--medium-p);
    background: #F6F6F6;
    display: inline-block;
    padding: 18px 40px 20px 40px;
    border-radius: 30px; }
  .newsletter .status_message.error-message {
    margin-top: 20px;
    font-weight: 300;
    font-size: var(--medium-p);
    color: #FF4025; }

.ticket_modal {
  position: fixed;
  z-index: 2000;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.5);
  display: none;
  padding: 5vw; }
  .ticket_modal .modal_inner {
    position: relative;
    background: #ffffff;
    border-radius: 2px;
    width: 60vw;
    min-height: 50vh;
    margin: 0 auto;
    display: flex;
    padding: 4vw 0; }
    @media (min-width: 280px) and (max-width: 799px) {
      .ticket_modal .modal_inner {
        width: 90vw;
        flex-wrap: wrap; } }
    .ticket_modal .modal_inner .weedleaf {
      position: absolute;
      left: 50%;
      margin-left: -22px;
      margin-top: 24%;
      background: #ffffff;
      padding: 8px 0 3px 0;
      display: none; }
      @media (min-width: 1441px) {
        .ticket_modal .modal_inner .weedleaf {
          display: block; } }
      .ticket_modal .modal_inner .weedleaf img {
        width: 50px;
        height: 50px;
        filter: brightness(0) saturate(100%); }
    .ticket_modal .modal_inner .location_info {
      display: block;
      width: 50%;
      padding: 1vw 5vw;
      min-height: auto; }
      @media (min-width: 280px) and (max-width: 799px) {
        .ticket_modal .modal_inner .location_info {
          width: 100%; } }
      .ticket_modal .modal_inner .location_info h2 {
        font-size: var(--large-title); }
      @media (min-width: 280px) and (max-width: 799px) {
        .ticket_modal .modal_inner .location_info .location_header {
          font-size: var(--medium-subtitle);
          margin: 2vh 0 2vh 0; }
        .ticket_modal .modal_inner .location_info .intro_text {
          font-size: var(--medium-p);
          margin: 0 0 2vh 0; } }
      .ticket_modal .modal_inner .location_info .meta {
        margin-top: 30px; }
        @media (min-width: 280px) and (max-width: 799px) {
          .ticket_modal .modal_inner .location_info .meta {
            display: none; } }
        .ticket_modal .modal_inner .location_info .meta .openinghours, .ticket_modal .modal_inner .location_info .meta .address, .ticket_modal .modal_inner .location_info .meta .phonenumber {
          display: flex; }
          .ticket_modal .modal_inner .location_info .meta .openinghours p, .ticket_modal .modal_inner .location_info .meta .address p, .ticket_modal .modal_inner .location_info .meta .phonenumber p {
            font-size: var(--medium-p);
            margin-bottom: 5px; }
          .ticket_modal .modal_inner .location_info .meta .openinghours img, .ticket_modal .modal_inner .location_info .meta .address img, .ticket_modal .modal_inner .location_info .meta .phonenumber img {
            margin: 3px 22px 0 0;
            filter: brightness(0) saturate(100%); }
        .ticket_modal .modal_inner .location_info .meta .address img {
          margin: 3px 22px 0 6px; }
        .ticket_modal .modal_inner .location_info .meta .phonenumber img {
          margin: 3px 18px 0 4px; }
    .ticket_modal .modal_inner .location_info + .location_info {
      border-left: 1px solid rgba(0, 0, 0, 0.2); }
    .ticket_modal .modal_inner .close {
      position: absolute;
      right: 30px;
      top: 30px;
      background: none;
      cursor: pointer; }
      .ticket_modal .modal_inner .close img {
        filter: brightness(0) saturate(100%); }

.ticket_modal.active {
  display: flex; }

/* ------------- Footer Section ----------------------------------------------------------------------------------------------------------- */
.footer {
  padding: var(--vertical-xl) var(--horizontal);
  /* ------------- First Column ---------------- */
  /* ------------- Second Column ---------------- */
  /* ------------- Third Column ---------------- */ }
  .footer .header {
    font-size: var(--small-subtitle);
    margin-bottom: 10px; }
  .footer .columns {
    display: flex; }
    @media (min-width: 280px) and (max-width: 799px) {
      .footer .columns {
        flex-direction: column; } }
    @media (min-width: 800px) and (max-width: 1440px) {
      .footer .columns {
        flex-wrap: wrap;
        justify-content: space-around; } }
  .footer .sister_companies p {
    font-style: italic;
    font-size: var(--small-p);
    margin: 50px 0 10px 0; }
  .footer .sister_companies .logos {
    display: flex;
    align-items: flex-end; }
    .footer .sister_companies .logos img {
      margin-right: 20px; }
  @media (min-width: 280px) {
    .footer .sister_companies {
      display: none; } }
  @media (min-width: 1441px) {
    .footer .sister_companies {
      display: block; } }
  .footer .sister_companies.mobile {
    display: none; }
  @media (min-width: 280px) and (max-width: 799px) {
    .footer .sister_companies.mobile {
      display: block; } }
  .footer .first {
    width: 35%; }
    @media (min-width: 800px) and (max-width: 1440px) {
      .footer .first {
        width: 100%;
        margin-bottom: var(--vertical-xl);
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center; } }
    .footer .first .footer_logo {
      margin-bottom: 20px; }
      @media (min-width: 800px) and (max-width: 1440px) {
        .footer .first .footer_logo {
          max-width: 51vw;
          text-align: center; } }
    .footer .first .header {
      max-width: 20vw; }
      @media (min-width: 800px) and (max-width: 1440px) {
        .footer .first .header {
          max-width: 51vw;
          text-align: center; } }
    .footer .first .ticket_buttons {
      margin-top: var(--vertical);
      max-width: 20vw; }
      @media (min-width: 800px) and (max-width: 1440px) {
        .footer .first .ticket_buttons {
          max-width: 100vw; } }
    @media (min-width: 280px) and (max-width: 799px) {
      .footer .first .footer_logo img {
        width: 80vw; }
      .footer .first .header, .footer .first .ticket_buttons {
        display: none; } }
  .footer .second, .footer .third {
    width: 40%; }
    .footer .second img, .footer .third img {
      object-fit: contain; }
    @media (min-width: 280px) and (max-width: 799px) {
      .footer .second, .footer .third {
        width: 100%; } }
    @media (min-width: 800px) and (max-width: 1440px) {
      .footer .second, .footer .third {
        width: 35%; } }
    .footer .second .openinghours, .footer .second .address, .footer .second .phonenumber, .footer .second .email, .footer .third .openinghours, .footer .third .address, .footer .third .phonenumber, .footer .third .email {
      display: flex; }
      .footer .second .openinghours p, .footer .second .address p, .footer .second .phonenumber p, .footer .second .email p, .footer .third .openinghours p, .footer .third .address p, .footer .third .phonenumber p, .footer .third .email p {
        font-size: var(--medium-p);
        margin-bottom: 5px; }
      .footer .second .openinghours img, .footer .second .address img, .footer .second .phonenumber img, .footer .second .email img, .footer .third .openinghours img, .footer .third .address img, .footer .third .phonenumber img, .footer .third .email img {
        margin: 2px 22px 0 0;
        filter: brightness(0) saturate(100%); }
    .footer .second .address img, .footer .third .address img {
      margin: 3px 22px 0 6px; }
    .footer .second .phonenumber img, .footer .third .phonenumber img {
      margin: 3px 18px 0 4px; }
    .footer .second .moreinfo, .footer .third .moreinfo {
      display: flex;
      margin-bottom: var(--vertical);
      text-decoration: none; }
      .footer .second .moreinfo p, .footer .third .moreinfo p {
        font-size: var(--medium-p);
        margin-bottom: 0; }
      .footer .second .moreinfo img, .footer .third .moreinfo img {
        width: 14px;
        margin: 5px 25px 0 3px;
        filter: brightness(0) saturate(100%);
        transition: filter .5s ease; }
      .footer .second .moreinfo:hover img, .footer .third .moreinfo:hover img {
        filter: brightness(0) saturate(100%) invert(52%) sepia(56%) saturate(7443%) hue-rotate(6deg) brightness(109%) contrast(101%);
        transition: filter .5s ease; }
    .footer .second .email, .footer .third .email {
      display: flex;
      text-decoration: none; }
      .footer .second .email p, .footer .third .email p {
        font-size: var(--medium-p);
        margin-bottom: 5px; }
      .footer .second .email img, .footer .third .email img {
        width: 18px;
        margin: 0 20px 0 3px;
        filter: brightness(0) saturate(100%);
        transition: filter .5s ease; }
      .footer .second .email:hover img, .footer .third .email:hover img {
        filter: brightness(0) saturate(100%) invert(52%) sepia(56%) saturate(7443%) hue-rotate(6deg) brightness(109%) contrast(101%);
        transition: filter .5s ease; }
  .footer .third {
    width: 25%; }
    @media (min-width: 280px) and (max-width: 799px) {
      .footer .third {
        width: 100%; } }
    .footer .third .header:nth-of-type(2) {
      margin-top: var(--vertical); }
      @media (min-width: 800px) and (max-width: 1440px) {
        .footer .third .header:nth-of-type(2) {
          margin-top: var(--vertical-l); } }
    .footer .third .menu-item a {
      font-size: var(--medium-p);
      text-decoration: none;
      font-weight: 300;
      margin-bottom: 8px;
      display: inline-block; }
  .footer .copyright_notice {
    margin-top: var(--vertical-xl);
    font-size: var(--small-p);
    text-align: center; }
    @media (min-width: 280px) and (max-width: 799px) {
      .footer .copyright_notice {
        text-align: left; } }
    .footer .copyright_notice:after {
      content: '| Status OK'; }

/* ------------- Section ----------------------------------------------------------------------------------------------------------- */
/* ------------- Sub section ---------------- */
/* ------------- Section ----------------------------------------------------------------------------------------------------------- */
/* ------------- Sub section ---------------- */
/* ------------- Section ----------------------------------------------------------------------------------------------------------- */
/* ------------- Sub section ---------------- */
/* ------------- Section ----------------------------------------------------------------------------------------------------------- */
/* ------------- Sub section ---------------- */

/*# sourceMappingURL=style.min.css.map */
