/* Font */
@font-face {
    font-family: Euclid-Medium;
    src: url('../fonts/EuclidFlex-Medium-WebS.ttf');
    font-display: swap;
}
@font-face {
    font-family: WorkSans-Medium;
    src: url('../fonts/WorkSans-Medium.ttf');
    font-display: swap;
}

/* Variables */
:root {
    /* Main page color */
    --main-color-home: #A91FFF;
    --main-color-bookette: #1FFFB1;
    --main-color-press: #8FF0Eb;
    --main-color-team: #FF6565;
    --main-color-podcast: #FF57A4;
    --main-color-mehr: #F2FC7E;
    --main-color-blog: #8582ee;

    --content-background-color: #F8F8F8;
    --typo-main-color: #000;
    --footer-background-color: #FFF;
    --footer-font-color: #B3B3B3;
}


body,
html {
    margin: 0;
    padding: 0;
    font-family: WorkSans-Medium;
    font-weight: 100;
    background-color: var(--content-background-color);
    font-size: 14px;
    overflow-x: hidden;
    scroll-behavior: smooth;
}

/* General */
.scroll-animate {
    opacity: 0;
}
.stop-scrolling {
    height: 100%;
    overflow: hidden;
}
footer {
    background-color: var(--footer-background-color);
    color: var(--footer-font-color);
}
.main-content {
    width: 100%;
}
.container {
    max-width: 1000px;
    width: 100%;
}
.vertical-align {
    position: relative;
    top: 50%;
    transform: translateY(-50%);
}

/* Header */
.hamburger {
    display: none !important;
}
header .logo-icon {
    font-size: 16px;
}

/* Footer */
.footer-social-network, .footer-social-network a {
    display: inline-block;
    padding-right: .5rem;
}
.footer-social-network img {
    margin-top: .25rem;
}

/* Typo */
h1 {
    font-family: Euclid-Medium;
    font-size: 8rem;
    line-height: 8rem;
}
h3 {
    font-family: WorkSans-Medium;
    font-size: 2rem;
}
li {
    font-size: 16px;
    margin-left: 40px;
    margin-top: 10px;
    margin-bottom: 10px;
    position: relative;
}
li::before {
    content:'•';
    position: absolute;
    left: -20px;
}
.menu li {
    margin-left: 0;
}
.menu li::before {
    content: '';
}
.menu img {
    display: none;
}
.menu .active img {
    display: inline-block;
}
a {
    position: relative;
}
a:hover {
    cursor: pointer;
}
a:not(.menu a):not(.home-social-network a):not(.brandingLogo a):not(.footer-social-network a):not(.media a):hover::before {
    content: '';
    position: absolute;
    top: 50%;
    left: 0;
    width: 100%;
    height: 2px;
    background-color: #000;
}
p {
    font-size: 16px;
}

/* Bubble */

.bubble:not(.show-bubble) {
    opacity: 0;
    scale: .9;
}
.bubble.show-bubble {
    z-index: 9999;
    animation: show-bubble .5s linear;
}
@keyframes show-bubble {
    80% {
        opacity: 1;
        scale: 1.1;
    }    
    100% {
        opacity: 1;
        scale: 1;
    }
}
.bubble-content__exit {
    background-color: var(--main-color-team);
    padding: 20px;
}
.bubble-content__exit:hover {
    cursor: pointer;
    animation: rotating 4s linear infinite;
}
@keyframes rotating {
    from{
        transform: rotate(0deg);
    }
    to {
        transform: rotate(360deg);
    }
}
.bubble-content {
    background-color: var(--main-color-team);
    max-width: 500px;
    max-height: 500px;
    top: 50%;
    transform: translateY(-50%);
}
.bubble-content__align {
    position: relative;
    top: 50%;
    transform: translateY(-50%);    
}
.bubble-content__text {
    text-align: center;
    height: 100%;
    line-height: 2rem;
}
.bubble-content__text a {
    border-bottom: 2px solid var(--typo-main-color);
}
.bubble-content__text a:hover {
    border: none;
}
.bubble-content::before {
    content: "";
    float: left;
    height: 100%;
    width: 50%;
    shape-outside: polygon(
      0 0,
      98% 0,
      50% 6%,
      23.4% 17.3%,
      6% 32.6%,
      0 50%,
      6% 65.6%,
      23.4% 82.7%,
      50% 94%,
      98% 100%,
      0 100%
    );
    /* shape-margin: 7%; */
    position: relative;
    top: -50%;    
}
.bubble-content .bubble-content__text::before {
    content: "";
    float: right;
    height: 100%;
    width: 50%;
    shape-outside: polygon(
      2% 0%,
      100% 0%,
      100% 100%,
      2% 100%,
      50% 94%,
      76.6% 82.7%,
      94% 65.6%,
      100% 50%,
      94% 32.6%,
      76.6% 17.3%,
      50% 6%
      );
    /* shape-margin: 7%; */
    position: relative;
    top: -50%;    
}
.bubble-content h2 {
    font-family: Euclid-Medium;
    line-height: 3.5rem;
}
.bubble p {
    font-size: 1.5rem;
}

/* Home */
#home p {
    font-size: 2rem;
}
#home-newsletter {
    background-color: var(--main-color-home);
}

.home-social-network {
    position: absolute;
    bottom: 4rem;
    left: 0;
}
.home-social-network a {
    display: inline-block;
    padding-right: 1rem;
}

.newsletter-input input {
    padding: 5px 10px;
    width: calc(100% - 50px);
    margin-top: 1rem;
    display: inline-block;
}
.newsletter-send {
    transition: all .2s;
    margin-left: 0;
}
.newsletter-send:hover {
    margin-left: .5rem;
}
#mc_embed_signup_scroll {
    position: relative;
}
.optionalParent {
    display: inline-block;
    width: 20px;
    margin-top: -24px;
}
.brandingLogo img {
    height: 30px;
    margin-top: 10px;
}
.optionalParent {
    position: absolute;
    right: 10px;
}
.optionalParent img {
    height: 20px;
    /* margin-top: -39px; */
}

.rockette-animated {
    animation: animation-rockette 7s infinite linear;
}
@keyframes animation-rockette {
    0% { margin-top: 20px }
    50% { margin-top: 0px }
    100% { margin-top: 20px }
    
}

/* Press */
#in-den-medien {
    background-color: var(--main-color-press);
}
.media {
    position: relative;
    background-color: #FFF;
}
.media p {
    margin: 0;
}
.media a {
    display: inline-block;
    width: 100%;
}
.media a:hover::before {
    right: 1.5rem;
}
.media a::before {
    content: '';
    background-image: url('../images/medien_fleche.svg');
    position: absolute;
    transition: all .2s;
    right: 2rem;
    width: 20px;
    height: 20px;
    top: 50%;
    transform: translateY(-50%);  
} 

/* Blog */
.grid--articles {
    position: relative;
    max-width: 1280px;
    width: calc(100% - 48px);
    left: 50%;
    transform: translateX(-50%);
}
.media.media--article a::before {
    bottom: 14px;
    top: initial;
    transform: inherit;
}
.media.media--article {
    background-color: transparent;
    position: relative;
}
.media.media--article:after {
    position: absolute;
    content: '';
    height: 100%;
    width: 1px;
    background-color: var(--typo-main-color);
    right: -3rem;
}
.media.media--article:nth-child(3n):after {
    display: none;
}

#pressbilder .bg-cover {
    transition: all .2s;
    background-size: 100%;
}
#pressbilder .bg-cover:hover {
    background-size: 110%;
    cursor: pointer;
}

/* Blog */
#blog {
    background-color: var(--main-color-blog);
}
#blog-detail a {
    position: relative;
}
.blog_detail_header_full {
    height: 100vh;
}
.blog_detail_header_cropped {
    height: 50vh;
}
#blog-detail a:before {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 2px;
    background-color: #000;
}

/* Gallery */
.gallery-view {
    position: fixed;
    display: none;
    z-index: 99;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    background-color: rgba(255, 255, 255, 0.9);
}
.gallery-view.is-visible {
    display: inline-block;
}
.gallery-view__content {
    position: relative;
    height: 70%;
    top: 50%;
    transform: translateY(-50%);
    max-width: 1024px;
    margin: 0 auto;
}
.gallery-view__img {
    position: relative;
    max-height: 100%;
    width: auto;
    margin: 0 auto;
}
.gallery-view__exit,
.gallery-view__download,
.gallery-view__previous,
.gallery-view__next {
    width: auto;
    height: 30px;
    display: inline-block;
    z-index: 999;
}
.gallery-view__exit {
    position: absolute;
    right: 0px;
    top: -60px;
}
.gallery-view__download:hover,
.gallery-view__previous:hover,
.gallery-view__next:hover,
.gallery-view__exit:hover {
    cursor: pointer;
}
.gallery-view__download,
.gallery-view__previous,
.gallery-view__next {
    text-align: center;
    padding: 0 15px;
    margin-top: 30px;
}

/* Podcast */
#podcast-links {
    background-color: var(--main-color-podcast);
}

/* Bookette */
#bookette, #in-biel, #rocknroll-buckclub {
    background-color: var(--main-color-bookette);
}

/* Team */
#miriam {
    background-color: var(--main-color-team);
}

/* Mehr */
#referenzen, #call-me-shirley, #baschi-konkret {
    background-color: var(--main-color-mehr);
}

/* Slideshow (blog detail) */
.slideshow .slideshow__images {
    height: 450px;
    overflow: hidden;
}
.slideshow .slideshow__img {
    position: relative;
    display: none;
    max-width:100%;
    height:auto;
    max-height:100%;
    top: 50%;
    transform: translateY(-50%);
}
.slideshow .slideshow__img.is-active {
    width: auto;
    display: inline-block;
}