/*
Theme Name: Blumenarnold
Theme URI: http://blumenarnold.com
Author: Benjamin Arnold
Description: A custom WordPress theme.
Version: 1.0
*/

/* Fonts */
@font-face {
    font-family: 'CB';
    src: local('CB');
    src: url('assets/fonts/CB/CB.eot');
    src: url('assets/fonts/CB/CB.eot?#iefix') format('embedded-opentype'),
        url('assets/fonts/CB/CB.woff') format('woff'),
        url('assets/fonts/CB/CB.ttf') format('truetype'),
        url('assets/fonts/CB/CB.svg#webfont') format('svg');
    font-weight: normal;
    font-style: normal;
}

h1 {
    margin: 0;
    line-height: 48px;
    font-size: 48px;
    font-family: 'CB', "Verdana", cursive;
    color: white;
    text-align: center;
    text-shadow: -1px 0 5px #965898, 0 1px 5px #965898, 1px 0 5px #965898, 0 -1px 5px #965898;
    letter-spacing: 3px;
}

h2 {
    margin: 0 0 16px 0;
}

h3 {
    margin: 0;
    padding-top: var(--space-m);
    padding-bottom: 0;
}

body {
    font-family: Verdana, Geneva, Tahoma, sans-serif;
    line-height: 1.5;
}

a {
    text-decoration: none;
    color: var(--color-dark);
    font-weight: 600;
}

a:hover {
    color: var(--color-gray);
}

.text-align-right {
    text-align: right;
}

/* Colors */
:root {
    --color-light: #DAC3DA;
    --color-primary: #965898;
    --color-dark: #4c2037;
    --color-gray: #777;
}

.background-primary {
    background-color: var(--color-primary);
}

.background-light {
    background-color: var(--color-light);
}

/* Basic */
.display-flex {
    display: flex;
}

.justify-content-center {
    justify-content: center;
}

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

.flex-grow {
    flex-grow: 1;
}

.full-width {
    width: 100%;
}

/* Layout */
:root {
    --height-title: 80px;
    --height-slideshow: 370px;
    --height-footer: 215px;
    --width-left-column: 200px;

    --space-s: 8px;
    --space-m: 16px;
    --space-l: 24px;
    --space-xl: 32px;
    --space-xxl: 40px;
}

html,
body {
    margin: 0;
}

td {
    padding: 0;
}

ul:not(.wp-block-list),
ul:not(.wp-block-list) li {
    list-style: none;
}

.container {
    max-width: 1800px;
    margin: 0 auto;
}

.col-left {
    width: var(--width-left-column);
    flex-shrink: 0;
}

.row-header {
    height: var(--height-title);
}

.row-header>div {
    height: 100%
}

.slideshow {
    height: var(--height-slideshow);
}

.slideshow>div {
    padding: var(--space-m) 0;
}

.slideshow>div>div {
    height: calc(var(--height-slideshow) - 2 * var(--space-m));
    width: 100%;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
}

.mobile-menu-toggle {
    display: none;
    /* WICHTIG */
}

nav.background-light.col-left {
    max-height: none;
    overflow: visible;
}

nav>div {
    padding: var(--space-xl);
}

nav>div li {
    margin-bottom: var(--space-m);
}

main {
    padding: var(--space-xl);
}

.row-main {
    min-height: calc(100dvh - var(--height-title) - var(--height-slideshow) - var(--height-footer))
}

footer .row-contact>div>div {
    padding: var(--space-l) 0;
    flex-wrap: wrap;
    gap: var(--space-xl);
    color: #fff;
    justify-content: space-around;
}

footer .schedule,
footer .contact {
    width: 264px;
}

footer address {
    font-style: normal;
}

footer .row-info {
    padding: var(--space-s);
    text-align: center;
}

footer .row-info>div+div {
    margin-left: var(--space-s);
    padding-left: var(--space-s);
    border-left: 1px solid #000
}

.menu-main-container ul,
footer ul {
    margin: 0;
    padding: 0;
}

/* Tablet Layout */

@media only screen and (max-width: 768px) {
    :root {
        --width-left-column: auto;
        --height-slideshow: 240px;
    }

    .hide-tablet {
        display: none;
    }

    .row-main {
        flex-direction: column;
    }

    h1 {
        font-size: 32px;
        line-height: 32px;
    }

    /* Layout untereinander */
    .row-main {
        flex-direction: column;
    }

    /* Burger anzeigen */
    .mobile-menu-toggle {
        display: flex;
        width: 100%;
        height: var(--height-title);
        background: var(--color-light);
        border: 0;
        cursor: pointer;
        padding: 0 var(--space-xl);
        box-sizing: border-box;

        flex-direction: column;
        justify-content: center;
        gap: 6px;
    }

    /* Burger Linien */
    .mobile-menu-toggle span {
        width: 28px;
        height: 3px;
        background: var(--color-dark);
        transition: 0.3s ease;
    }

    /* Navigation einklappen */
    nav.background-light.col-left {
        width: 100%;
        max-height: 0;
        overflow: hidden;
        transition: max-height 0.35s ease;
    }

    /* Navigation offen */
    nav.background-light.col-left.is-open {
        max-height: 500px;
    }

    /* Menü optisch kompakt */
    nav>div {
        padding: var(--space-l);
    }

    nav li {
        margin-bottom: var(--space-s);
    }

    nav a {
        display: block;
        padding: 8px 0;
    }
}



/* Mobile Layout */
@media only screen and (max-width: 480px) {

    :root {
        --height-slideshow: 160px;
    }

    .hide-phone {
        display: none;
    }
}


/* Burger animation */
.mobile-menu-toggle.is-open span:nth-child(1) {
    transform: translateY(9px) rotate(45deg);
}

.mobile-menu-toggle.is-open span:nth-child(2) {
    opacity: 0;
}

.mobile-menu-toggle.is-open span:nth-child(3) {
    transform: translateY(-9px) rotate(-45deg);
}