/* ?? CORPORATE LANDING GLOBAL RESET RULES */
body.light-corporate-theme {
    background-color: #F8F9FA;
    color: #212529;
    font-family: 'Segoe UI', Arial, sans-serif;
    margin: 0;
    padding: 0;
}

/* ?? HORIZONTAL TOP NAVIGATION ROW BAR */
.corporate-navbar {
    background-color: #FFFFFF;
    border-bottom: 1px solid #E9ECEF;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 14px 40px;
}
.nav-branding { display: flex; align-items: center; gap: 10px; }
.nav-logo { height: 32px; object-fit: contain; }
.company-name { font-weight: 800; font-size: 18px; color: #1A252C; }

/* ?? FIXED LINK ACCENT TRACKS: Permanent high-visibility corporate blue */
.nav-menu-links a, .nav-menu-links a:visited {
    color: #495057 !important;
    text-decoration: none;
    font-weight: 600;
    font-size: 14px;
    margin: 0 16px;
}
.nav-menu-links a:hover { color: #007ACC !important; }

.login-trigger-btn, .login-trigger-btn:visited {
    background-color: #007ACC;
    color: #FFFFFF !important;
    padding: 8px 18px;
    border-radius: 4px;
    text-decoration: none;
    font-weight: bold;
}
.login-trigger-btn:hover { background-color: #0098FF; }

/* ?? MODERN STAGGERED VERTICAL SECTION CARDS STACK */
.hero-splash-deck {
    background: linear-gradient(135deg, #1A252C 0%, #343A40 100%);
    color: #FFFFFF;
    text-align: center;
    padding: 100px 20px;
}
.hero-splash-deck h1 { font-size: 42px; font-weight: 800; margin: 0 0 16px 0; }
.hero-lead-text { font-size: 16px; color: #CED4DA; max-width: 650px; margin: 0 auto; line-height: 1.6; }

.product-profile-deck {
    background-color: #FFFFFF;
    padding: 80px 40px;
    text-align: center;
    border-bottom: 1px solid #E9ECEF;
}
.product-tagline-badge { background-color: #E7F5FF; color: #007ACC; font-weight: bold; font-size: 11px; padding: 4px 12px; border-radius: 12px; text-transform: uppercase; }
.product-profile-deck h2 { font-size: 28px; margin: 16px 0; color: #1A252C; }
.product-profile-deck p { font-size: 15px; color: #495057; max-width: 720px; margin: 0 auto 40px auto; line-height: 1.6; }

/* ?? FIXED VERTICAL GRID DISPLAY FOR DYNAMIC SHOWCASES */
.dynamic-showcase-canvas {
    display: flex;
    flex-direction: column;  /* Forces stacked vertical orientation lines */
    align-items: center;
    gap: 16px;
    max-width: 600px;
    margin: 0 auto;
}
.showcase-wireframe-card {
    background-color: #F8F9FA;
    border: 1px solid #E9ECEF;
    padding: 18px;
    width: 100%;
    border-radius: 6px;
    font-weight: bold;
    color: #343A40;
    box-sizing: border-box;
    text-align: left;
}

/* DOWNLOAD REPOSITORY BLOCK */
.downloads-registry-deck { background-color: #F1F3F5; padding: 60px 20px; text-align: center; }
.download-buttons-grid { display: flex; flex-direction: column; gap: 16px; max-width: 500px; margin: 0 auto; }
.download-link-box, .download-link-box:visited {
    background-color: #FFFFFF;
    border: 1px solid #CED4DA;
    border-radius: 6px;
    padding: 20px;
    display: flex;
    align-items: center;
    gap: 16px;
    text-decoration: none;
    text-align: left;
}
.download-link-box:hover { border-color: #007ACC; transform: translateY(-1px); }
.dl-icon { font-size: 24px; }
.dl-title { font-weight: bold; color: #212529; font-size: 14px; display: block; }
.dl-specs { font-size: 11px; color: #6C757D; }

.corporate-footer-shelf { background-color: #1A252C; color: #6C757D; text-align: center; padding: 24px; font-size: 12px; }

/* =====================================================================
   📱 DYNAMIC MOBILE & TABLET RESPONSIVE ADAPTER BREAKPOINT
   ===================================================================== */
@media screen and (max-width: 768px) {
    /* Transitions the top navigation bar from horizontal to a clean vertical stack */
    .corporate-navbar {
        flex-direction: column;
        gap: 14px;
        padding: 16px 20px;
        text-align: center;
    }

    .nav-menu-links {
        display: flex;
        flex-direction: column;
        gap: 10px;
        margin: 8px 0;
    }

    .nav-menu-links a {
        margin: 0;
        font-size: 15px;
    }

    .nav-auth-actions {
        width: 100%;
    }

    .login-trigger-btn {
        display: block;
        text-align: center;
        width: 100%;
        box-sizing: border-box;
    }

    /* Adjusts the marketing grids to wrap fluidly on tight screens */
    .download-buttons-grid, .dynamic-showcase-canvas {
        flex-direction: column;
        width: 100%;
    }

    .portal-container.clear-portal-card {
        margin: 20px 10px;
        padding: 20px;
        width: calc(100% - 20px);
    }
}