/* --- Über-mich Sections (1 & 2) --- */
.section-1 {
    display: flex;
    height: 100vh;
    width: 100%;
}

.section-1,
.section-1 * {
    font-family: var(--font-base);
}

/* --- Über-mich Section (ehem. Hero) --- */
.section-1 {
    display: flex;
    height: 100vh;
    width: 100%;
}

.section-1,
.section-1 * {
    font-family: var(--font-base);
}

.left {
    background: linear-gradient(-90deg,
            #030303 5%,
            #333333 100%);
    width: 50vw;
    height: 100vh;
    display: flex;
    justify-content: center;
    /* statt flex-start -> Inhalt vertikal mittig */
    align-items: center;
    /* horizontal mittig im linken Bereich */
    position: relative;
    flex-direction: column;
    gap: 8px;
    padding-inline: 1.5rem;
    /* etwas Innenabstand nach links/rechts */
}

.left::before {
    content: none;
}

/* Textblock im linken Bereich der Über-mich-Seite */
.left .right-overlay-text {
    position: static;
    inset: auto;
    padding: 2rem 2rem 1.5rem;
    /* etwas mehr Platz */
    color: #ffffff;
    /* Animation/Transition entfernt */
    pointer-events: auto;

    max-width: 52rem;
    width: 100%;
    margin: 0 auto;
    /* mittig im linken Panel */

    font-size: clamp(0.75rem, 1vw, 1rem);
    line-height: 1.6;

    max-height: calc(100vh - 4rem);
    /* etwas Abstand zu Ober-/Unterkante */
    overflow-y: auto;
}

/* Hero-Texte – größere Grundgrößen */
.vertical-text {
    rotate: 0deg;
    font-size: clamp(2.4rem, 3.5vw, 4.2rem);
    color: #ffffff;
    font-family: "Inter Tight", sans-serif;
    margin: 0;
    position: relative;
    opacity: 0;
    will-change: translate, opacity;
    animation: flyDown 900ms cubic-bezier(.22, .9, .3, 1) 100ms forwards;
}

.horizontal-text {
    font-size: clamp(3.4rem, 5.5vw, 6rem);
    color: #ffffff;
    font-family: "Inter Tight", sans-serif;
    font-weight: 900;
    margin: 0;
    position: relative;
    top: 0;
    opacity: 0;
    will-change: translate, opacity;
    animation: flyRight 900ms cubic-bezier(.22, .9, .3, 1) 250ms forwards;
}

/* rechter Teil: nur Bild, OHNE Hover/Overlay-Effekt */
.right {
    width: 50vw;
    height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    background-image: url('../Pictures/888A3291.JPG');
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    position: relative;
    overflow: hidden;
    /* Animation/Transition entfernt */
}

/* Overlay-Layer komplett deaktivieren */
.right::before {
    content: none;
}

/* auf dieser Seite gibt es rechts keinen Text, daher nichts überschreiben */
.right .right-overlay-text {
    /* kein Hover-Text auf der Bildseite der Über-mich-Seite */
}

/* Absätze im Overlay: sichtbare Abstände (nur links genutzt) */
.right-overlay-text p {
    margin: 0 0 0.9rem 0;
}

/* Motto etwas absetzen und hervorheben */
.right-overlay-motto {
    margin-top: 0.5rem;
    text-align: center;
    font-weight: 700;
    letter-spacing: 0.06em;
}

/* KEIN Hover-Effekt mehr für das Bild rechts */
/* .right:hover::before, .right:focus-within::before { ... } entfernt */
/* .right:hover .right-overlay-text, .right:focus-within .right-overlay-text { ... } entfernt */

.hero-image {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
}

/* Animationen */
@keyframes flyDown {
    from {
        translate: 0 -120vh;
        opacity: 0;
    }

    to {
        translate: 0 0;
        opacity: 1;
    }
}

@keyframes flyRight {
    from {
        translate: -120vw 0;
        opacity: 0;
    }

    to {
        translate: 0 0;
        opacity: 1;
    }
}

@media (prefers-reduced-motion: reduce) {

    .vertical-text,
    .horizontal-text {
        animation: none !important;
        opacity: 1 !important;
        translate: 0 0 !important;
    }

    .right::before,
    .right-overlay-text {
        transition: none;
    }
}

/* Über-mich & Layout auf kleinen Screens */
@media (max-width: 900px) {

    .section-1 {
        flex-direction: column;
    }

    .left,
    .right {
        width: 100vw;
        height: auto;
        /* erlaubt, dass der Text nach unten wachsen kann */
        min-height: 50vh;
    }

    .left {
        gap: 4px;
        padding-inline: 1rem;
        align-items: stretch;
        /* auf Mobil: volle Breite nutzen */
        justify-content: flex-start;
    }

    .vertical-text {
        font-size: clamp(2rem, 5vw, 3rem);
    }

    .horizontal-text {
        font-size: clamp(2.8rem, 8vw, 4.2rem);
    }

    /* auf Mobil etwas mehr Innenabstand für Text */
    .right-overlay-text {
        inset: 6%;
        padding: 1.25rem 1.25rem;
        font-size: 0.95rem;
        line-height: 1.7;
        max-width: 100%;
        /* mobil volle Breite nutzen */
        margin: 0;
        max-height: none;
        overflow-y: visible;
    }
}

/* --- Bild-Section (ehem. PDF Section) --- */
.ueber-mich-pdf {
    padding: 6rem 1.5rem;
    /* wenn du auch den Hintergrundverlauf weghaben willst, hier auf none setzen:
       background: none;
    */
    background: linear-gradient(180deg,
            var(--color-gradient-start, #000000) 0%,
            var(--color-gradient-end, #333333) 100%);
}

.ueber-mich-pdf .container {
    max-width: none;
    width: 100vw;
    margin: 0 calc(50% - 50vw);
    /* Container auf volle Fensterbreite ziehen */
}

.ueber-mich-pdf h2 {
    font-size: 2rem;
    margin-bottom: 1rem;
}

.ueber-mich-pdf p {
    margin-bottom: 1.5rem;
}

/* Bild-Wrapper */
.football-gallery {
    width: 100%;
    /* Kasten-Effekt entfernen */
    border-radius: 0;
    box-shadow: none;
    padding: 0;
    background: none;
    overflow: hidden;
    transition: transform 0.4s ease-out;
    /* für sanfte Skalierung des gesamten Abschnitts */
}

/* Grid mit „zufälliger“ Anmutung */
.football-grid {
    display: grid;
    grid-template-columns: 1.2fr 2fr 1.2fr;
    grid-auto-rows: minmax(180px, auto);
    /* Mindesthöhe je Zeile erhöhen */
    gap: 1rem;
    /* mehr Abstand -> visuell größer */
    width: 100vw;
    /* Grid immer so breit wie das Fenster */
    margin: 0 auto;
}

/* Basiseigenschaften für alle Bilder */
.football-img {
    display: block;
    border-radius: 0;
    object-fit: cover;
    box-shadow: none;
    transition:
        transform 0.4s ease-out,
        opacity 0.7s ease-out,
        filter 0.7s ease-out;
    /* Standardzustand: sichtbar */
    opacity: 1;
    transform: translateY(0) scale(1);
    filter: blur(0);
}

/* Zustand, wenn Bild nicht im Viewport ist (wird von JS indirekt benutzt) */
.football-img:not(.in-view-img) {
    opacity: 0;
    transform: translateY(30px) scale(0.96);
    filter: blur(3px);
}

/* Wenn Bild in den Viewport kommt */
.football-img.in-view-img {
    opacity: 1;
    transform: translateY(0) scale(1);
    filter: blur(0);
    transition-delay: calc(0.05s * var(--delay-index, 0));
}

/* Hauptbild: mittlere Spalte, über zwei Zeilen */
.football-img.main {
    grid-row: 1 / span 2;
    grid-column: 2 / 3;
    width: 70%;
    height: auto;
    margin: 0 auto;
    /* Hauptbild generell etwas kleiner und zentriert */
}

/* Hover-Effekt:
   - gesamte Gallery skaliert leicht
   - Hauptbild zusätzlich etwas stärker */
.football-gallery:hover {
    transform: scale(1.03);
    /* leichter Gesamteffekt */
}

.football-gallery:hover .football-img.main {
    transform: scale(1.10);
    /* Hauptbild stärker vergrößern */
}

/* Rechts vom Hauptbild: 1 & 2 */
.football-img.v1 {
    grid-row: 1 / 2;
    grid-column: 3 / 4;
    transform: translateY(4%) rotate(-2deg);
}

.football-img.v2 {
    grid-row: 2 / 3;
    grid-column: 3 / 4;
    transform: translateY(-4%) rotate(2deg);
}

/* Links vom Hauptbild: 3 & 4 */
.football-img.v3 {
    grid-row: 1 / 2;
    grid-column: 1 / 2;
    transform: translateX(-3%) rotate(-1.5deg);
}

.football-img.v4 {
    grid-row: 2 / 3;
    grid-column: 1 / 2;
    transform: translateX(3%) rotate(1.5deg);
}

/* Auf kleineren Screens: einspaltig und ohne Versatz */
@media (max-width: 900px) {
    .ueber-mich-pdf {
        padding: 4rem 1rem;
    }

    .ueber-mich-pdf .container {
        max-width: none;
        width: 100vw;
        margin: 0;
    }

    .football-gallery {
        padding: 0;
        border-radius: 0;
        box-shadow: none;
        transform: none;
        transition: none;
        /* kein Skalieren des Abschnitts auf Touch */
    }

    .football-grid {
        grid-template-columns: 1fr;
        gap: 0.75rem;
        grid-auto-rows: auto;
        width: 100vw;
    }

    .football-img {
        height: auto;
        border-radius: 0;
        box-shadow: none;
        transition: none;
        width: 100%;
    }

    .football-img.main {
        grid-row: auto;
        grid-column: auto;
        width: 100%;
        height: auto;
        margin: 0;
        /* mobil weiterhin volle Breite nutzen */
    }

    .football-gallery:hover,
    .football-gallery:hover .football-img.main {
        transform: none;
    }
}

/* Bild füllt den Container responsiv aus */
.football-gallery img {
    display: block;
    width: 100%;
    height: auto;
}