/*
Theme Name: Twenty Twenty-Four
Theme URI: https://wordpress.org/themes/twentytwentyfour/
Author: the WordPress team
Author URI: https://wordpress.org
Description: Twenty Twenty-Four is designed to be flexible, versatile and applicable to any website. Its collection of templates and patterns tailor to different needs, such as presenting a business, blogging and writing or showcasing work. A multitude of possibilities open up with just a few adjustments to color and typography. Twenty Twenty-Four comes with style variations and full page designs to help speed up the site building process, is fully compatible with the site editor, and takes advantage of new design tools introduced in WordPress 6.4.
Requires at least: 6.4
Tested up to: 6.7
Requires PHP: 7.0
Version: 1.3
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: twentytwentyfour
Tags: one-column, custom-colors, custom-menu, custom-logo, editor-style, featured-images, full-site-editing, block-patterns, rtl-language-support, sticky-post, threaded-comments, translation-ready, wide-blocks, block-styles, style-variations, accessibility-ready, blog, portfolio, news
*/
/* Logo Hover/Press Effekt */
.custom-logo {
    transition: opacity 0.2s ease;
}

.custom-logo:hover {
    opacity: 0.9;
}
/* Wackel-Animation für die Links */
@keyframes sanftesWackeln {
    0%   { transform: rotate(0deg); }
    25%  { transform: rotate(4deg); }
    75%  { transform: rotate(-4deg); }
    100% { transform: rotate(0deg); }
}

.wp-block-heading a {
    display: inline-block;
    animation: sanftesWackeln 2.5s ease-in-out infinite;
}

/* Jedes Wort startet leicht versetzt damit es nicht gleichzeitig wackelt */
.wp-block-heading a:nth-child(1) { animation-delay: 0s; }
.wp-block-heading a:nth-child(2) { animation-delay: 0.4s; }
.wp-block-heading a:nth-child(3) { animation-delay: 0.8s; }

/* Auf Desktop aufhören zu wackeln wenn man hovert */
@media (hover: hover) {
    .wp-block-heading a:hover {
        animation-play-state: paused;
    }
}
/* Mindestabstand zum Rand für das Bild auf der Landing Page */
figure.wp-block-image.wp-image-763,
figure:has(.wp-image-763) {
    padding-left: 50px;
    padding-right: 50px;
    box-sizing: border-box;
}

figure:has(.wp-image-763) img {
    width: 100%;
    height: auto;
}
/* Hamburger Menü nach rechts und größer */
.wp-block-navigation__responsive-container-open {
    position: absolute !important;
    right: 20px !important;
    top: 10px !important;
    width: 40px;
    height: 40px;
}

.wp-block-navigation__responsive-container-open svg {
    width: 40px;
    height: 40px;
}
/* Kontaktseite - Textblöcke vertikal zentriert */
.page-id-461 main#wp--skip-link--target {
    min-height: calc(80vh - var(--wp-admin--admin-bar--height, 0px));
    display: flex;
    flex-direction: column;
    justify-content: center;
}

/* Desktop Korrektur */
@media (min-width: 768px) {
    .page-id-461 main#wp--skip-link--target {
        justify-content: flex-start;
        padding-top: 5vh;
    }
}
/* About Me - Mobile Bildanpassungen */
@media (max-width: 768px) {

    /* Hase - weiter runter und größer */
    figure:has(.wp-image-770) {
        margin-top: 100px !important;
        margin-bottom: 0px !important;
    }

    .wp-image-770 {
        max-width: 100% !important;
        height: auto !important;
    }

    /* Katze - kleiner und bessere Abstände */
    figure:has(.wp-image-558) {
        margin-top: 20px !important;
        margin-bottom: 20px !important;
    }

    .wp-image-558 {
        max-width: 60% !important;
        height: auto !important;
    }
}
/* Grafik Seite - Linke Spalte fixiert, rechte Spalte scrollbar */
.page-id-747, .page-id-831, .page-id-873 .wp-block-post-content {
    overflow: visible;
}

.page-id-747 .wp-block-columns,
.page-id-831 .wp-block-columns,
.page-id-873 .wp-block-columns {
    align-items: flex-start;
    min-height: 100vh;
}

.page-id-747 .wp-block-columns .wp-block-column:first-child,
.page-id-831 .wp-block-columns .wp-block-column:first-child,
.page-id-873 .wp-block-columns .wp-block-column:first-child {
    position: sticky;
    top: 120px;
    align-self: flex-start;
}

/* Mobile - Schrift in linker Spalte skalieren */
@media (max-width: 768px) {
    .page-id-747 .wp-block-column:first-child h1,
    .page-id-831 .wp-block-column:first-child h1,
    .page-id-873 .wp-block-column:first-child h1 {
        font-size: clamp(1rem, 4vw, 2rem) !important;
    }

    .page-id-747 .wp-block-column:first-child p,
    .page-id-831 .wp-block-column:first-child p,
    .page-id-873 .wp-block-column:first-child p {
        font-size: clamp(0.75rem, 3vw, 1rem) !important;
    }

    /* Rechte Spalte auf Mobile nach unten schieben */
    .page-id-747 .wp-block-columns .wp-block-column:last-child,
    .page-id-831 .wp-block-columns .wp-block-column:last-child,
    .page-id-873 .wp-block-columns .wp-block-column:last-child {
        margin-top: 20px !important;
    }
}

/* Navigation fixiert oben */
header.wp-block-template-part {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 1000;
}

/* Abstand damit der Content nicht unter der Navigation verschwindet */
body {
    padding-top: 80px;
}

/* Landing Page - padding-top korrigieren */
.home {
    padding-top: 0px;
}

/* Mobile - schwarze Leiste über die ganze Breite */
@media (max-width: 768px) {
    header.wp-block-template-part .wp-block-group {
        background-color: black !important;
        width: 100vw !important;
        padding: 10px 0 !important;
    }

    header.wp-block-template-part .wp-block-group nav {
        background-color: black !important;
        width: 100% !important;
        min-height: 50px !important;
    }

    /* Schwarzes Kästchen vom Button entfernen */
    .wp-block-navigation__responsive-container-open {
        background-color: transparent !important;
        padding: 0 !important;
    }
}