/* ───────────────────────────────────────────────
   Landing page specific overrides & enhancements
   ─────────────────────────────────────────────── */

header {
    padding: var(--space-6xl) 0 var(--space-5xl);
}

.name {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: var(--space-2xl);
    margin-bottom: var(--space-lg);
}

.name h1 {
    font-size: 3.2rem;
    margin-top: 0.2rem !important;
    display: inline-block;
}

.logo {
    width: 80px;
    height: 80px;
    object-fit: contain;
    filter: drop-shadow(0 4px 12px rgba(243, 215, 50, 0.35));
    transition: transform var(--transition-normal);
}

.name:hover .logo {
    transform: rotate(12deg) scale(1.08);
}

.tagline {
    font-size: 1.35rem;
    font-weight: 400;
    letter-spacing: 0.5px;
    max-width: 620px;
    opacity: 0.92;
}

/* Views / iFrames */
.views-container {
    position: relative;
    min-height: 80vh;
    overflow: auto;
    margin: var(--space-3xl) auto;
    max-width: 100dvw;
}

.view-frame {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    border: none;
    display: none;
    transition: opacity 0.4s ease;
    pointer-events: none;
    overflow: auto;
}

.view-frame.active {
    display: block;
    pointer-events: auto;
    z-index: 2;
}

/* Footer refinements */
footer {
    padding: var(--space-4xl) 0;
    font-size: 0.95rem;
}

.footer-links {
    margin-bottom: var(--space-md);
}

.footer-links a {
    margin: 0 var(--space-lg);
}

.copyright {
    margin-top: var(--space-md);
    opacity: 0.75;
    font-size: 0.9rem;
}

/* Mobile adjustments */
@media (max-width: 640px) {
    .name {
        flex-direction: column;
        gap: var(--space-lg);
    }

    .name h1 {
        font-size: 3.4rem;
    }

    .views-container {
        border-radius: 0;
        margin: 0 -1px;
        box-shadow: none;
    }
}
