/* Screen Sizes https://tailwindcss.com/docs/responsive-design
xs	25rem (400px)	@media (width >= 40rem) { ... }
sm	40rem (640px)	@media (width >= 40rem) { ... }
md	48rem (768px)	@media (width >= 48rem) { ... }
lg	64rem (1024px)	@media (width >= 64rem) { ... }
xl	80rem (1280px)	@media (width >= 80rem) { ... }
2xl	96rem (1536px)	@media (width >= 96rem) { ... }
*/
/* 
only for stuff which is easier to write in sass than tailwind

@include lg() {}

*/
:root {
  --height-navbar: 96px;
  --height-navbar-sticky: 80px;
}

.bg-center-center {
  background-position: center;
}

.bg-left-center {
  background-position: left center;
}

.bg-right-center {
  background-position: right center;
}

.navbar-logo {
  width: 130px;
  height: 100%;
  position: relative;
}
.navbar-logo svg {
  position: absolute;
  left: 0;
  top: 0;
}

.navbar-sticky .navbar-logo svg .addon {
  display: none;
}

.custom-block.type-hero {
  height: 100%;
}

@media (width < 64rem) {
  .bg-blob.bg-contain {
    background-position: top 10% center;
  }
}
@media (width >= 64rem) {
  .bg-blob.bg-contain {
    background-size: auto;
  }
}

.event-card-top {
  position: relative;
}
.event-card-top::before {
  content: "";
  background-color: var(--color-cream);
  position: absolute;
  width: 100%;
  height: 30%;
  left: 0;
  bottom: 0;
  z-index: -1;
  border-top-left-radius: 0.75rem;
  border-top-right-radius: 0.75rem;
}

.event-card-text {
  position: relative;
}
.event-card-text::before {
  content: "";
  background-color: var(--color-cream);
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: -2px;
  z-index: -1;
  border-bottom-left-radius: 0.75rem;
  border-bottom-right-radius: 0.75rem;
}

.event-author-image {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 203.897 207.227'%3E%3Cpath d='M197.766,72.258c14.074,41.129,3.643,93.645-28.477,118.289C137,215.191,83.189,211.962,46.762,184.6,10.168,157.406-8.873,105.909,4.042,66.31S61.828-.993,103.553.027c41.56,1.19,80.139,30.932,94.213,72.231' fill='%23fcf5f2'/%3E%3C/svg%3E");
  background-size: 100% 100%;
  background-position: center;
  padding: 0.5rem 1rem;
}
.event-author-image img {
  border-radius: 999px;
}
.event-author-image.detailpage {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 203.897 207.227'%3E%3Cpath d='M197.766,72.258c14.074,41.129,3.643,93.645-28.477,118.289C137,215.191,83.189,211.962,46.762,184.6,10.168,157.406-8.873,105.909,4.042,66.31S61.828-.993,103.553.027c41.56,1.19,80.139,30.932,94.213,72.231' fill='%237085D9'/%3E%3C/svg%3E");
}

.location-teaser {
  background-size: 100% 100%;
  background-position: center;
  padding: 0.5rem 1rem;
}
.location-teaser:nth-child(6n+1), .location-teaser:nth-child(6n+6) {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 203.897 207.227'%3E%3Cpath d='M197.766,72.258c14.074,41.129,3.643,93.645-28.477,118.289C137,215.191,83.189,211.962,46.762,184.6,10.168,157.406-8.873,105.909,4.042,66.31S61.828-.993,103.553.027c41.56,1.19,80.139,30.932,94.213,72.231' fill='%237085D9'/%3E%3C/svg%3E");
}
.location-teaser:nth-child(6n+2), .location-teaser:nth-child(6n+4) {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 203.897 207.227'%3E%3Cg transform='rotate(180 101.9485 103.6135)'%3E%3Cpath d='M197.766,72.258c14.074,41.129,3.643,93.645-28.477,118.289C137,215.191,83.189,211.962,46.762,184.6,10.168,157.406-8.873,105.909,4.042,66.31S61.828-.993,103.553.027c41.56,1.19,80.139,30.932,94.213,72.231' fill='%23C624A0'/%3E%3C/g%3E%3C/svg%3E");
}
.location-teaser:nth-child(6n+3), .location-teaser:nth-child(6n+5) {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 203.897 207.227'%3E%3Cg transform='rotate(90 101.9485 103.6135)'%3E%3Cpath d='M197.766,72.258c14.074,41.129,3.643,93.645-28.477,118.289C137,215.191,83.189,211.962,46.762,184.6,10.168,157.406-8.873,105.909,4.042,66.31S61.828-.993,103.553.027c41.56,1.19,80.139,30.932,94.213,72.231' fill='%23FCF5F2'/%3E%3C/g%3E%3C/svg%3E");
}

.event-author-book-cover {
  background-color: var(--color-cream);
  padding: 0.25rem;
  border-radius: 4px;
  box-shadow: 0 -1px 1.5rem 0.25rem var(--color-secondary);
}
.event-author-book-cover.booktip {
  display: flex;
  box-shadow: 0 -1px 1rem var(--color-secondary);
}

.swiper-meta-cover .swiper-container .event-author-book-cover {
  box-shadow: none;
}

.bookprice-cover {
  background-color: var(--color-cream);
  padding: 0.25rem;
  border-radius: 4px;
  box-shadow: 0 -1px 1.5rem 0.25rem rgba(0, 0, 0, 0.25);
}

.layout-section.mb-row-none:last-child {
  margin-bottom: -132px;
}
@media (width < 64rem) {
  .layout-section.mb-row-none:last-child {
    margin-bottom: -82px;
  }
}
@media (width < 40rem) {
  .layout-section.mb-row-none:last-child {
    margin-bottom: -42px;
  }
}

.content-col .event-text-wrp {
  position: relative;
}
.content-col .event-text-wrp * {
  z-index: 10;
}
.content-col .event-text-wrp .bg-surface {
  z-index: 0;
  position: absolute;
  background-color: var(--color-secondaryLight);
  top: 0;
  z-index: 0;
  width: 100%;
  height: 100%;
  left: 0;
}
@media (width >= 64rem) {
  .content-col .event-text-wrp .bg-surface {
    width: 80vw;
    height: 100%;
    left: -20%;
  }
}

.event-title-wrp {
  position: relative;
}
.event-title-wrp::before {
  content: "";
  position: absolute;
  z-index: 0;
  top: 0;
  left: -480px;
  height: 100%;
  width: 500px;
  background-color: var(--color-primary);
}
.event-title-wrp .event-title {
  position: relative;
  z-index: 10;
}

@media (width >= 64rem) {
  .bookprice-entries .bookprice-entry:nth-child(1) {
    order: 2;
  }
  .bookprice-entries .bookprice-entry:nth-child(2) {
    order: 1;
    margin-top: 3rem;
  }
  .bookprice-entries .bookprice-entry:nth-child(3) {
    order: 3;
    margin-top: 5rem;
  }
}

.site-footer {
  position: relative;
  background-image: url(../gfx/blobs-footer.svg);
  background-size: 100% auto;
  background-position: top -2px center;
  background-repeat: no-repeat;
  --width: 140px;
  --slice: 140;
  border-top: var(--width) solid;
  border-image-slice: var(--slice) fill;
  border-image-width: var(--width);
  border-image-source: url(../gfx/blob-footer-top.svg);
}
.site-footer::after {
  content: "";
  position: absolute;
  z-index: -1;
  background-color: var(--color-secondary);
  width: 100%;
  height: 100%;
  left: 0;
  top: 25vw;
}
@media (width >= 40rem) {
  .site-footer::after {
    top: calc(var(--width) * 2);
  }
}
@media (width >= 64rem) {
  .site-footer::after {
    top: calc(var(--width) * 4);
  }
}
@media (width < 64rem) {
  .site-footer {
    --width: 80px;
  }
}
@media (width < 40rem) {
  .site-footer {
    --width: 40px;
  }
}

.footer-hint {
  padding: 2rem 3rem 4rem 3rem;
  width: 100%;
  text-align: center;
}
@media (width >= 48rem) {
  .footer-hint {
    max-width: 70%;
  }
}
@media (width >= 64rem) {
  .footer-hint {
    max-width: 348px;
  }
}
.footer-hint * {
  z-index: 5;
  position: relative;
}
.footer-hint svg.bg {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
}

@media (width < 64rem) {
  .welttag .blocks .spacer:first-child {
    display: none;
  }
}

.bg-secondaryLight .text-primary {
  color: var(--color-secondary);
}

body.home .site-footer {
  margin-top: -8px;
}

.high-contrast-mode .site-footer {
  background-image: none !important;
  border-top: 0;
  border-image: none;
}
.high-contrast-mode .site-footer::after {
  content: none;
}
.high-contrast-mode .footer-hint svg {
  display: none;
}
.high-contrast-mode .event-page-bg {
  display: none;
}
.high-contrast-mode .event-title-wrp::before {
  content: none;
}
.high-contrast-mode .content-col .event-text-wrp .bg-surface {
  display: none;
}
