/* ==========================================================================
   home.css
   ========================================================================== */
.intro-card { min-height: 40vh; display: flex; flex-direction: column; padding: 1.5rem; border: 0; transform-style: preserve-3d; transition: transform .3s ease-out, box-shadow .3s ease; }
.profile-section { flex-shrink: 0; margin: 0 auto 2rem; display: flex; flex-direction: column; align-items: center; gap: 1.5rem; }
.profile-img-bg { padding: .25rem; border-radius: 35.44px; background: linear-gradient(to bottom right, #F59E0B, #FBBF24, #F97316); box-shadow: 0 10px 15px -3px rgba(245, 158, 11, .2); opacity: 0; animation: imageReveal 0.8s cubic-bezier(0.2, 0.65, 0.3, 0.9) forwards; }
.profile-img { width: 8rem; height: 8rem; object-fit: cover; border-radius: 32px; border: 2px solid #111827; }
.intro-text-section { text-align: center; width: 100%; }
.intro-title { font-size: 2.25rem; line-height: 2.5rem; font-weight: 700; color: #fff; margin-bottom: 1rem; opacity: 0; animation: h1Reveal 0.8s cubic-bezier(0.2, 0.65, 0.3, 0.9) forwards, shimmer 10s linear infinite; animation-delay: 0.15s, 0s; }
.intro-subtitle { font-size: 1.125rem; line-height: 1.75rem; font-weight: 500; margin-bottom: .5rem; opacity: 0; animation: h1Reveal 0.8s cubic-bezier(0.2, 0.65, 0.3, 0.9) forwards, shimmer 10s linear infinite; animation-delay: 0.3s, 0s; }
.intro-desc { font-size: 1.125rem; line-height: 1.625; color: #a3a3a3; max-width: 48rem; min-height: 6em; }

@media (min-width: 640px) { .intro-card { padding: 2rem; } .intro-title { font-size: 3rem; line-height: 1; } .intro-subtitle { font-size: 1.25rem; line-height: 1.75rem; } .intro-desc { font-size: 1.25rem; line-height: 1.75rem; } }
@media (min-width: 768px) { .intro-card { flex-direction: row; align-items: flex-start; gap: 2rem; border: 2px solid #262626; } .profile-section { margin: 0; } .profile-img { width: 12rem; height: 12rem; } .intro-text-section { text-align: left; padding-top: 1.5rem; } .intro-title { font-size: 3.75rem; line-height: 1; } .intro-subtitle { font-size: 1.5rem; line-height: 2rem; } }
@media (min-width: 1024px) { .intro-card { gap: 3rem; } }
/* --- WQHD (1440px und größer) --- */
@media (min-width: 1440px) {
    .intro-card { 
        gap: 4rem; 
        padding: 4rem; 
        align-items: center; /* WICHTIG: Zentriert Bild und Text vertikal zueinander */
        border-radius: 48px; /* Größere Rundung für die gesamte Karte */
    }
    
    /* Der bunte Rahmen ums Bild muss mitwachsen */
    .profile-img-bg {
        padding: 0.35rem; 
        border-radius: 42px;
    }
    .profile-img { 
        width: 16rem; 
        height: 16rem; 
        border-radius: 38px; /* Proportionalere Rundung zum größeren Bild */
    }
    
    .intro-title { 
        font-size: 5rem; 
        margin-bottom: 1.5rem;
    }
    .intro-subtitle { 
        font-size: 2rem; 
        line-height: 1.4; 
        margin-bottom: 1rem;
    }
    .intro-desc { 
        font-size: 1.4rem; 
        line-height: 1.8; 
        max-width: 50rem; 
    }
}

/* --- 4K / Ultrawide (1920px und größer) --- */
@media (min-width: 1920px) {
    .intro-card { 
        gap: 6rem; 
        padding: 5rem; 
        border-radius: 64px;
    }
    .profile-img-bg {
        padding: 0.5rem; 
        border-radius: 56px;
    }
    .profile-img { 
        width: 22rem; 
        height: 22rem; 
        border-radius: 48px;
    }
    .intro-title { 
        font-size: 6.5rem; 
    }
    .intro-subtitle { 
        font-size: 2.5rem; 
    }
    .intro-desc { 
        font-size: 1.75rem; 
        max-width: 65rem; 
    }
}