/* ============================================================
   Home Hub — professional design system
   Tokens, nav, heroes, cards, footer, mascot animations
   ============================================================ */

:root {
    /* Palette */
    --hub-ink: #0f172a;
    --hub-ink-soft: #334155;
    --hub-muted: #64748b;
    --hub-surface: #ffffff;
    --hub-bg: #f6f8fb;
    --hub-border: rgba(15, 23, 42, 0.08);
    --hub-primary: #2b6cb0;
    --hub-primary-ink: #1a4e8a;

    /* Per-area accents */
    --hub-accent-ai-1: #12335f;
    --hub-accent-ai-2: #2b6cb0;
    --hub-accent-corp-1: #1b4332;
    --hub-accent-corp-2: #2f855a;
    --hub-accent-learn-1: #1d4e3d;
    --hub-accent-learn-2: #38a169;
    --hub-accent-social-1: #553c9a;
    --hub-accent-social-2: #d53f8c;
    --hub-accent-product-1: #7b341e;
    --hub-accent-product-2: #dd6b20;

    /* Elevation */
    --hub-shadow-sm: 0 1px 2px rgba(15, 23, 42, 0.05), 0 1px 3px rgba(15, 23, 42, 0.06);
    --hub-shadow-md: 0 10px 30px -12px rgba(15, 23, 42, 0.18);
    --hub-shadow-lg: 0 24px 50px -20px rgba(15, 23, 42, 0.28);

    /* Shape & type */
    --hub-radius: 16px;
    --hub-radius-lg: 24px;
    --hub-font: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
}

.hub-body {
    background-color: var(--hub-bg);
    font-family: var(--hub-font);
    color: var(--hub-ink);
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
}

.hub-main {
    min-height: 60vh;
}

/* ============================================================
   Area switcher nav
   ============================================================ */

.hub-area-nav {
    background: rgba(255, 255, 255, 0.85);
    backdrop-filter: saturate(180%) blur(12px);
    -webkit-backdrop-filter: saturate(180%) blur(12px);
    border-bottom: 1px solid var(--hub-border);
    position: sticky;
    top: 0;
    z-index: 1000;
    padding-top: 0.4rem;
    padding-bottom: 0.4rem;
}

.hub-area-nav .navbar-brand span {
    font-weight: 800;
    letter-spacing: -0.02em;
    color: var(--hub-ink);
}

.hub-area-nav .navbar-brand img {
    box-shadow: var(--hub-shadow-sm);
}

.hub-area-tabs .nav-link {
    color: var(--hub-ink-soft);
    font-weight: 600;
    font-size: 0.95rem;
    padding: 0.55rem 1rem;
    border-radius: 999px;
    transition: background-color 0.2s ease, color 0.2s ease;
}

.hub-area-tabs .nav-link:hover {
    background-color: rgba(43, 108, 176, 0.08);
    color: var(--hub-primary-ink);
}

.hub-area-tabs .nav-link.active {
    background-color: var(--hub-ink);
    color: #ffffff;
    box-shadow: var(--hub-shadow-sm);
}

.hub-area-nav .navbar-toggler {
    border-color: rgba(43, 108, 176, 0.35);
}

.hub-area-nav .navbar-toggler:focus {
    box-shadow: 0 0 0 0.2rem rgba(43, 108, 176, 0.25);
}

/* ============================================================
   Hero
   ============================================================ */

.hub-hero {
    position: relative;
    overflow: hidden;
    padding: 4.5rem 3rem;
    border-radius: var(--hub-radius-lg);
    margin: 2rem auto;
    max-width: 1140px;
    display: flex;
    align-items: center;
    gap: 3rem;
    flex-wrap: wrap;
    color: #fff;
    box-shadow: var(--hub-shadow-lg);
}

/* Soft radial glow layered over each gradient */
.hub-hero::before {
    content: "";
    position: absolute;
    inset: 0;
    background:
        radial-gradient(600px 300px at 85% 15%, rgba(255, 255, 255, 0.14), transparent 70%),
        radial-gradient(400px 260px at 10% 90%, rgba(255, 255, 255, 0.08), transparent 70%);
    pointer-events: none;
}

.hub-hero > * {
    position: relative;
}

.hub-hero-text {
    flex: 1 1 340px;
}

.hub-hero-mascot {
    flex: 0 0 240px;
    display: flex;
    justify-content: center;
}

.hub-hero-mascot .mascot {
    background: rgba(255, 255, 255, 0.12);
    border: 1px solid rgba(255, 255, 255, 0.18);
    border-radius: 50%;
    padding: 1.4rem;
    backdrop-filter: blur(2px);
}

.hub-hero h1 {
    font-weight: 800;
    letter-spacing: -0.03em;
    line-height: 1.1;
    margin-bottom: 1rem;
}

.hub-hero .lead {
    font-size: 1.15rem;
    line-height: 1.7;
    color: rgba(255, 255, 255, 0.92);
    max-width: 46ch;
}

.hub-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 0.45rem;
    font-size: 0.78rem;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: rgba(255, 255, 255, 0.85);
    background: rgba(255, 255, 255, 0.14);
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: 999px;
    padding: 0.35rem 0.9rem;
    margin-bottom: 1.1rem;
}

.hub-hero-actions {
    display: flex;
    gap: 0.75rem;
    flex-wrap: wrap;
    margin-top: 1.5rem;
}

.hub-btn-light {
    background: #ffffff;
    color: var(--hub-ink);
    font-weight: 700;
    border: none;
    border-radius: 999px;
    padding: 0.7rem 1.5rem;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
    box-shadow: var(--hub-shadow-sm);
}

.hub-btn-light:hover {
    transform: translateY(-2px);
    box-shadow: var(--hub-shadow-md);
    color: var(--hub-ink);
}

.hub-btn-ghost {
    background: transparent;
    color: #ffffff;
    font-weight: 600;
    border: 1.5px solid rgba(255, 255, 255, 0.5);
    border-radius: 999px;
    padding: 0.7rem 1.5rem;
    transition: background-color 0.2s ease, border-color 0.2s ease;
}

.hub-btn-ghost:hover {
    background: rgba(255, 255, 255, 0.12);
    border-color: rgba(255, 255, 255, 0.85);
    color: #ffffff;
}

.hub-hero.theme-ai { background: linear-gradient(130deg, var(--hub-accent-ai-1), var(--hub-accent-ai-2)); }
.hub-hero.theme-corporate { background: linear-gradient(130deg, var(--hub-accent-corp-1), var(--hub-accent-corp-2)); }
.hub-hero.theme-learners { background: linear-gradient(130deg, var(--hub-accent-learn-1), var(--hub-accent-learn-2)); }
.hub-hero.theme-social { background: linear-gradient(130deg, var(--hub-accent-social-1), var(--hub-accent-social-2)); }
.hub-hero.theme-product { background: linear-gradient(130deg, var(--hub-accent-product-1), var(--hub-accent-product-2)); }

/* ============================================================
   Content sections
   ============================================================ */

.hub-content {
    max-width: 1140px;
    margin: 0 auto 3.5rem;
    padding: 0 1.5rem;
}

.hub-section-head {
    max-width: 640px;
    margin-bottom: 2rem;
}

.hub-section-eyebrow {
    font-size: 0.75rem;
    font-weight: 700;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    color: var(--hub-primary);
    margin-bottom: 0.4rem;
}

.hub-section-head h2 {
    font-weight: 800;
    letter-spacing: -0.02em;
    color: var(--hub-ink);
}

.hub-section-head p {
    color: var(--hub-muted);
    margin-bottom: 0;
}

.hub-card {
    background: var(--hub-surface);
    border: 1px solid var(--hub-border);
    border-radius: var(--hub-radius);
    padding: 1.75rem;
    height: 100%;
    box-shadow: var(--hub-shadow-sm);
    transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
}

.hub-card:hover {
    transform: translateY(-4px);
    box-shadow: var(--hub-shadow-md);
    border-color: rgba(43, 108, 176, 0.25);
}

.hub-card h5 {
    font-weight: 700;
    letter-spacing: -0.01em;
    margin-bottom: 0.5rem;
}

.hub-card p {
    line-height: 1.65;
}

.hub-card-icon {
    width: 48px;
    height: 48px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 12px;
    font-size: 1.15rem;
    margin-bottom: 1rem;
    color: #fff;
    background: linear-gradient(135deg, var(--hub-primary-ink), var(--hub-primary));
    box-shadow: var(--hub-shadow-sm);
}

.hub-card-icon.icon-corp { background: linear-gradient(135deg, var(--hub-accent-corp-1), var(--hub-accent-corp-2)); }
.hub-card-icon.icon-learn { background: linear-gradient(135deg, var(--hub-accent-learn-1), var(--hub-accent-learn-2)); }
.hub-card-icon.icon-social { background: linear-gradient(135deg, var(--hub-accent-social-1), var(--hub-accent-social-2)); }
.hub-card-icon.icon-product { background: linear-gradient(135deg, var(--hub-accent-product-1), var(--hub-accent-product-2)); }

/* Tag chips (knowledge feed, product cards) */
.hub-chip {
    display: inline-block;
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: var(--hub-primary-ink);
    background: rgba(43, 108, 176, 0.1);
    border-radius: 999px;
    padding: 0.3rem 0.75rem;
    margin-bottom: 0.85rem;
}

/* Product cards */
.hub-product-thumb {
    width: 100%;
    height: 160px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 2.2rem;
    color: rgba(15, 23, 42, 0.35);
    border-radius: 12px;
    background: linear-gradient(135deg, #eef2f7, #dde5ee);
    margin-bottom: 1.1rem;
}

.hub-price {
    font-weight: 800;
    color: var(--hub-ink);
    font-size: 1.05rem;
}

/* CTA banner */
.hub-cta-banner {
    background: linear-gradient(130deg, var(--hub-ink), #1e293b);
    color: #fff;
    border-radius: var(--hub-radius-lg);
    padding: 3rem 2.5rem;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1.5rem;
    flex-wrap: wrap;
    box-shadow: var(--hub-shadow-lg);
}

.hub-cta-banner h3 {
    font-weight: 800;
    letter-spacing: -0.02em;
    margin-bottom: 0.35rem;
}

.hub-cta-banner p {
    color: rgba(255, 255, 255, 0.75);
    margin-bottom: 0;
}

/* Ads */
.hub-ad-unit {
    max-width: 1140px;
    margin-left: auto;
    margin-right: auto;
    padding: 0 1.5rem;
}

/* ============================================================
   Footer
   ============================================================ */

.hub-footer {
    background: var(--hub-ink);
    color: rgba(255, 255, 255, 0.8);
    padding: 3.5rem 0 2rem;
    margin-top: 4rem;
}

.hub-footer h6 {
    color: #fff;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    font-size: 0.8rem;
    margin-bottom: 1rem;
}

.hub-footer a {
    color: rgba(255, 255, 255, 0.75);
    text-decoration: none;
    transition: color 0.2s ease;
}

.hub-footer a:hover {
    color: #4fd1ff;
}

.hub-footer .hub-footer-links li {
    margin-bottom: 0.55rem;
}

.hub-footer-bottom {
    border-top: 1px solid rgba(255, 255, 255, 0.12);
    margin-top: 2.5rem;
    padding-top: 1.5rem;
    font-size: 0.85rem;
    color: rgba(255, 255, 255, 0.55);
}

.link-hover:hover {
    color: #00d4ff;
    text-decoration: underline;
}

/* ============================================================
   Responsive
   ============================================================ */

@media (max-width: 991.98px) {
    .hub-area-tabs {
        padding: 0.5rem 0 0.75rem;
    }

    .hub-area-tabs .nav-item {
        border-bottom: 1px solid rgba(13, 27, 42, 0.06);
    }

    .hub-area-tabs .nav-item:last-child {
        border-bottom: none;
    }

    .hub-area-tabs .nav-link {
        padding: 0.85rem 0.75rem;
        border-radius: 10px;
    }

    .hub-hero {
        padding: 2.75rem 1.5rem;
        margin: 1.25rem 1rem;
        text-align: center;
        justify-content: center;
        gap: 1.75rem;
    }

    .hub-hero-text {
        flex-basis: 100%;
    }

    .hub-hero-mascot {
        flex-basis: auto;
        order: -1;
    }

    .hub-hero .lead {
        margin-left: auto;
        margin-right: auto;
    }

    .hub-hero-actions {
        justify-content: center;
    }

    .hub-cta-banner {
        padding: 2.25rem 1.5rem;
        text-align: center;
        justify-content: center;
    }
}

/* ============================================================
   Mascots
   ============================================================ */

.mascot svg {
    width: 100%;
    max-width: 200px;
    height: auto;
    display: block;
}

/* Shared idle bob used by the robot mascots */
.mascot-bob {
    animation: mascotBob 3.2s ease-in-out infinite;
    transform-origin: center bottom;
}

@keyframes mascotBob {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(-6px); }
}

/* Shared eye/glow animation used by all robot mascots */
.mascot-eye {
    animation: mascotBlink 4s infinite;
    transform-origin: center;
}

@keyframes mascotBlink {
    0%, 92%, 100% { transform: scaleY(1); }
    95% { transform: scaleY(0.1); }
}

.mascot-antenna {
    animation: mascotGlow 1.6s ease-in-out infinite;
}

@keyframes mascotGlow {
    0%, 100% { opacity: 0.6; }
    50% { opacity: 1; }
}

/* AI human robot: AI Consultant */
.mascot-ai-halo {
    animation: mascotHaloPulse 3.4s ease-in-out infinite;
    transform-origin: center;
}

@keyframes mascotHaloPulse {
    0%, 100% { transform: scale(1); opacity: 0.65; }
    50% { transform: scale(1.12); opacity: 1; }
}

.mascot-ai-core {
    animation: mascotCorePulse 1.8s ease-in-out infinite;
    transform-origin: center;
}

@keyframes mascotCorePulse {
    0%, 100% { opacity: 0.75; transform: scale(1); }
    50% { opacity: 1; transform: scale(1.18); }
}

.mascot-arm-wave-human {
    animation: mascotWaveHuman 1.7s ease-in-out infinite;
    transform-origin: 150px 112px;
}

@keyframes mascotWaveHuman {
    0%, 100% { transform: rotate(0deg); }
    50% { transform: rotate(-16deg); }
}

.mascot-spark-1 { animation: mascotFloat 3s ease-in-out infinite; }
.mascot-spark-2 { animation: mascotFloat 3.6s ease-in-out infinite 0.6s; }
.mascot-spark-3 { animation: mascotFloat 4.2s ease-in-out infinite 1.1s; }

/* Teaching robot: Corporate Training / Learners */
.mascot-point-arm {
    animation: mascotPoint 2.2s ease-in-out infinite;
    transform-origin: left center;
}

@keyframes mascotPoint {
    0%, 100% { transform: rotate(0deg); }
    50% { transform: rotate(6deg); }
}

.mascot-board-line {
    animation: mascotDraw 3s ease-in-out infinite;
    transform-origin: left center;
}

@keyframes mascotDraw {
    0%, 100% { transform: scaleX(1); }
    50% { transform: scaleX(0.4); }
}

.mascot-board {
    animation: mascotFade 5s ease-in-out infinite;
}

@keyframes mascotFade {
    0%, 80%, 100% { opacity: 1; }
    90% { opacity: 0.55; }
}

/* Social people: Social Messages */
.mascot-wave-arm {
    animation: mascotWave 1.4s ease-in-out infinite;
    transform-origin: top center;
}

@keyframes mascotWave {
    0%, 100% { transform: rotate(0deg); }
    50% { transform: rotate(-24deg); }
}

.mascot-wave-left {
    animation: mascotBob 3.4s ease-in-out infinite;
}

.mascot-idle-right {
    animation: mascotBob 3.8s ease-in-out infinite 0.4s;
}

.mascot-bubble {
    animation: mascotFloat 3.6s ease-in-out infinite;
}

.mascot-bubble-2 {
    animation-delay: 0.8s;
}

@keyframes mascotFloat {
    0%, 100% { transform: translateY(0); opacity: 0.85; }
    50% { transform: translateY(-8px); opacity: 1; }
}

/* Selling robot: Product Gallery */
.mascot-spotlight {
    animation: mascotSweep 4.5s ease-in-out infinite;
    transform-origin: 110px 10px;
}

@keyframes mascotSweep {
    0%, 100% { transform: rotate(-8deg); opacity: 0.5; }
    50% { transform: rotate(8deg); opacity: 0.85; }
}

.mascot-raise-arm {
    animation: mascotShake 1.8s ease-in-out infinite;
    transform-origin: bottom center;
}

@keyframes mascotShake {
    0%, 100% { transform: rotate(0deg); }
    50% { transform: rotate(-4deg); }
}

.mascot-product-box {
    animation: mascotFloat 2.4s ease-in-out infinite;
}

/* ---------- Accessibility: respect reduced-motion preference ---------- */
@media (prefers-reduced-motion: reduce) {
    .mascot-bob,
    .mascot-eye,
    .mascot-antenna,
    .mascot-ai-halo,
    .mascot-ai-core,
    .mascot-arm-wave-human,
    .mascot-spark-1,
    .mascot-spark-2,
    .mascot-spark-3,
    .mascot-point-arm,
    .mascot-board-line,
    .mascot-board,
    .mascot-wave-arm,
    .mascot-wave-left,
    .mascot-idle-right,
    .mascot-bubble,
    .mascot-spotlight,
    .mascot-raise-arm,
    .mascot-product-box {
        animation: none !important;
        transform: none !important;
    }

    .hub-card:hover,
    .hub-btn-light:hover {
        transform: none;
    }
}

/* ============================================================
   Corporate Training profile
   ============================================================ */
.corporate-page { --corp-navy:#071a2f; --corp-blue:#1267df; --corp-cyan:#35d5d4; --corp-soft:#f2f7fb; --corp-line:#dce7f0; color:#10243b; background:#fff; }
.corporate-shell { width:min(1140px, calc(100% - 40px)); margin-inline:auto; }
.corporate-hero { position:relative; overflow:hidden; padding:6.4rem 0 7rem; color:#fff; background:radial-gradient(circle at 83% 18%,rgba(53,213,212,.24),transparent 28%),radial-gradient(circle at 5% 100%,rgba(18,103,223,.35),transparent 34%),linear-gradient(130deg,#051526,#092c49 58%,#0a4656); }
.corporate-hero::after { content:""; position:absolute; inset:0; opacity:.13; background-image:linear-gradient(rgba(255,255,255,.12) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.12) 1px,transparent 1px); background-size:48px 48px; mask-image:linear-gradient(#000,transparent); }
.corporate-hero-grid { position:relative; z-index:1; display:grid; grid-template-columns:1.22fr .78fr; gap:4rem; align-items:center; }
.corporate-kicker,.corporate-heading>span,.corporate-cta>div>span { display:inline-flex; gap:.55rem; align-items:center; color:#1370e5; font-size:.76rem; font-weight:800; letter-spacing:.14em; text-transform:uppercase; }
.corporate-hero .corporate-kicker { color:#a8f3ef; }
.corporate-hero h1 { max-width:780px; margin:.9rem 0 1.4rem; font-size:clamp(2.75rem,5vw,5rem); line-height:1.02; letter-spacing:-.055em; font-weight:800; }
.corporate-hero h1 em { color:var(--corp-cyan); font-style:normal; }
.corporate-hero p { max-width:700px; margin:0; color:#c8dae7; font-size:1.08rem; line-height:1.75; }
.corporate-actions { display:flex; flex-wrap:wrap; gap:.8rem; margin-top:2rem; }
.corporate-button { display:inline-flex; align-items:center; justify-content:center; gap:.65rem; min-height:48px; padding:.75rem 1.25rem; border:1px solid transparent; border-radius:10px; font-weight:750; text-decoration:none; transition:transform .2s,box-shadow .2s; }
.corporate-button:hover { transform:translateY(-2px); }
.corporate-button-primary { color:#062038; background:var(--corp-cyan); box-shadow:0 10px 30px rgba(53,213,212,.18); }
.corporate-button-primary:hover { color:#062038; }
.corporate-button-secondary { color:#fff; border-color:rgba(255,255,255,.35); background:rgba(255,255,255,.07); }
.corporate-button-secondary:hover { color:#fff; }
.corporate-promise { padding:1.65rem; border:1px solid rgba(255,255,255,.16); border-radius:22px; background:rgba(255,255,255,.075); backdrop-filter:blur(10px); box-shadow:0 25px 70px rgba(0,0,0,.23); }
.corporate-promise>span { display:block; margin-bottom:.5rem; color:#91aabc; font-size:.72rem; font-weight:800; letter-spacing:.14em; text-transform:uppercase; }
.corporate-promise ol { list-style:none; margin:0; padding:0; }
.corporate-promise li { display:grid; grid-template-columns:40px 1fr; gap:.8rem; align-items:center; padding:.85rem 0; border-top:1px solid rgba(255,255,255,.12); color:#edf8fa; font-weight:650; font-size:.9rem; }
.corporate-promise li:first-child { border:0; }
.corporate-promise b { display:grid; place-items:center; width:40px; height:40px; border-radius:10px; color:#062038; background:var(--corp-cyan); font-size:.76rem; }
.corporate-stats { position:relative; z-index:2; display:grid; grid-template-columns:repeat(4,1fr); margin-top:-2rem; overflow:hidden; border-radius:18px; background:#fff; box-shadow:0 20px 50px rgba(8,32,56,.12); }
.corporate-stats>div { padding:1.6rem 1.4rem; border-right:1px solid var(--corp-line); }
.corporate-stats>div:last-child { border:0; }
.corporate-stats strong,.corporate-stats span { display:block; }
.corporate-stats strong { color:var(--corp-navy); font-size:1.55rem; letter-spacing:-.04em; }
.corporate-stats span { margin-top:.3rem; color:#65778b; font-size:.8rem; line-height:1.45; }
.corporate-section { padding:5.5rem 0; }
.corporate-soft { background:var(--corp-soft); }
.corporate-heading { max-width:800px; margin-bottom:2.25rem; }
.corporate-heading-center { margin-inline:auto; text-align:center; }
.corporate-heading h2,.corporate-cta h2 { margin:.5rem 0 .7rem; color:var(--corp-navy); font-size:clamp(2rem,4vw,3.15rem); line-height:1.12; letter-spacing:-.045em; font-weight:800; }
.corporate-heading p { margin:0; color:#63758a; font-size:1.02rem; }
.corporate-about-grid { display:grid; grid-template-columns:1.05fr .95fr; gap:1.5rem; }
.corporate-panel,.corporate-values article { border:1px solid var(--corp-line); border-radius:18px; background:#fff; box-shadow:0 10px 30px rgba(8,32,56,.05); }
.corporate-about-copy { padding:2rem; }
.corporate-icon { display:grid; place-items:center; width:48px; height:48px; margin-bottom:1.2rem; border-radius:13px; color:#fff; background:var(--corp-blue); }
.corporate-about-copy h3,.corporate-values h3 { color:var(--corp-navy); }
.corporate-about-copy h3 { margin:0 0 .7rem; font-size:1.3rem; }
.corporate-about-copy p,.corporate-values p { margin:0; color:#63758a; line-height:1.7; }
.corporate-values { display:grid; gap:.8rem; }
.corporate-values article { display:grid; grid-template-columns:42px 1fr; gap:1rem; padding:1.1rem; }
.corporate-values b { display:grid; place-items:center; width:42px; height:42px; border-radius:11px; color:#fff; background:var(--corp-blue); font-size:.78rem; }
.corporate-values h3 { margin:0 0 .2rem; font-size:1rem; }
.corporate-values p { font-size:.86rem; }
.corporate-trust { padding:1.7rem 0; border-block:1px solid var(--corp-line); }
.corporate-trust p { margin:0 0 1rem; color:#7a8a9b; text-align:center; font-size:.7rem; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }
.corporate-trust div div { display:flex; flex-wrap:wrap; justify-content:center; gap:.55rem; }
.corporate-trust span { padding:.45rem .8rem; border:1px solid var(--corp-line); border-radius:99px; color:#45596e; background:#f8fbfd; font-size:.76rem; font-weight:700; }
.corporate-filters { display:flex; justify-content:center; flex-wrap:wrap; gap:.5rem; margin-bottom:1.7rem; }
.corporate-filters button { padding:.55rem .95rem; border:1px solid var(--corp-line); border-radius:99px; color:#56697c; background:#fff; font-size:.78rem; font-weight:750; }
.corporate-filters button.active,.corporate-filters button:hover { color:#fff; border-color:var(--corp-blue); background:var(--corp-blue); }
.corporate-program-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1rem; }
.corporate-program { position:relative; padding:1.5rem; border:1px solid var(--corp-line); border-radius:16px; background:#fff; transition:transform .2s,box-shadow .2s,border-color .2s; }
.corporate-program:hover { transform:translateY(-4px); border-color:#a5c8f3; box-shadow:0 18px 35px rgba(8,32,56,.1); }
.corporate-program>span { color:var(--corp-blue); font-size:.7rem; font-weight:850; letter-spacing:.11em; }
.corporate-program>i { float:right; color:#8ba9c5; font-size:1.15rem; }
.corporate-program h3 { clear:both; margin:1rem 0 .5rem; color:var(--corp-navy); font-size:1.05rem; }
.corporate-program p { min-height:4.3rem; margin:0 0 1rem; color:#65778a; font-size:.83rem; line-height:1.65; }
.corporate-program div { display:flex; flex-wrap:wrap; gap:.35rem; }
.corporate-program small { padding:.28rem .46rem; border-radius:5px; color:#2d6094; background:#edf5ff; font-weight:650; }
.corporate-delivery { display:grid; grid-template-columns:.78fr 1.22fr; gap:2rem; align-items:start; }
.corporate-formats { padding:2rem; border-radius:20px; color:#fff; background:linear-gradient(145deg,#0a2f50,#0c5769); }
.corporate-formats .corporate-kicker { color:#8eeae5; }
.corporate-formats h3 { margin:.65rem 0 1.3rem; }
.corporate-formats>div { display:grid; grid-template-columns:1fr 1fr; gap:.55rem; }
.corporate-formats>div span { padding:.65rem; border-radius:8px; background:rgba(255,255,255,.09); font-size:.76rem; font-weight:650; }
.corporate-formats>div span::before { content:"✓"; margin-right:.4rem; color:var(--corp-cyan); }
.corporate-steps { display:grid; grid-template-columns:1fr 1fr; gap:.8rem; }
.corporate-steps article { display:grid; grid-template-columns:36px 1fr; gap:.8rem; padding:1.15rem; border:1px solid var(--corp-line); border-radius:14px; }
.corporate-steps b { color:#a5b4c3; font-size:1.1rem; }
.corporate-steps span { color:var(--corp-blue); font-size:.66rem; font-weight:850; letter-spacing:.12em; text-transform:uppercase; }
.corporate-steps h3 { margin:.2rem 0 .35rem; color:var(--corp-navy); font-size:.93rem; }
.corporate-steps p { margin:0; color:#697b8e; font-size:.78rem; line-height:1.5; }
.corporate-outcomes { color:#fff; background:var(--corp-navy); }
.corporate-outcomes .corporate-heading span { color:var(--corp-cyan); }
.corporate-outcomes .corporate-heading h2 { color:#fff; }
.corporate-outcomes .corporate-heading p { color:#b5c8d8; }
.corporate-outcome-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:1rem; }
.corporate-outcome-grid article { padding:1.4rem; border:1px solid #294b68; border-radius:15px; background:#0b2a48; }
.corporate-outcome-grid b { color:var(--corp-cyan); font-size:.75rem; letter-spacing:.1em; }
.corporate-outcome-grid h3 { margin:1.1rem 0 .5rem; font-size:1rem; }
.corporate-outcome-grid p { margin:0; color:#b6c9d8; font-size:.8rem; line-height:1.55; }
.corporate-faculty { display:grid; grid-template-columns:1fr 1fr; gap:1rem; }
.corporate-faculty article { display:grid; grid-template-columns:58px 1fr; gap:1rem; padding:1.6rem; border:1px solid var(--corp-line); border-radius:18px; background:#fff; }
.corporate-avatar { display:grid; place-items:center; width:58px; height:58px; border-radius:15px; color:#fff; background:linear-gradient(135deg,var(--corp-blue),#17a9b2); font-weight:850; }
.corporate-faculty h3 { margin:0; color:var(--corp-navy); font-size:1.05rem; }
.corporate-faculty article div>span { color:var(--corp-blue); font-size:.76rem; font-weight:700; }
.corporate-faculty p,.corporate-faculty ul { color:#617387; font-size:.8rem; line-height:1.6; }
.corporate-faculty p { margin:.8rem 0; }.corporate-faculty ul { margin:0; padding-left:1.1rem; }
.corporate-engage { color:#fff; background:#0a2540; }
.corporate-engage .corporate-heading span { color:var(--corp-cyan); }.corporate-engage .corporate-heading h2 { color:#fff; }
.corporate-engage-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1rem; }
.corporate-engage-grid article { padding:1.6rem; border:1px solid #2a4a65; border-radius:16px; background:#0c2d4c; }
.corporate-engage-grid i { float:right; color:#426c8d; font-size:1.5rem; }.corporate-engage-grid span { color:var(--corp-cyan); font-size:.7rem; font-weight:850; letter-spacing:.12em; text-transform:uppercase; }
.corporate-engage-grid h3 { margin:1rem 0 .5rem; }.corporate-engage-grid p { margin:0; color:#b7c9d7; font-size:.82rem; line-height:1.6; }
.corporate-cta { padding:5rem 0; text-align:center; background:linear-gradient(135deg,#1168df,#0793ae); }
.corporate-cta>div>span { color:#d8ffff; }.corporate-cta h2 { max-width:820px; margin:.7rem auto; color:#fff; }.corporate-cta p { max-width:680px; margin:0 auto 1.5rem; color:#e4f5fb; }
.corporate-cta .corporate-button { background:#fff; color:#1168df; }
@media(max-width:900px){.corporate-hero-grid,.corporate-about-grid,.corporate-delivery{grid-template-columns:1fr}.corporate-program-grid{grid-template-columns:1fr 1fr}.corporate-outcome-grid{grid-template-columns:1fr 1fr}.corporate-faculty{grid-template-columns:1fr}}
@media(max-width:600px){.corporate-shell{width:min(100% - 28px,1140px)}.corporate-hero{padding:4.5rem 0 5rem}.corporate-stats,.corporate-program-grid,.corporate-steps,.corporate-outcome-grid,.corporate-engage-grid{grid-template-columns:1fr}.corporate-stats>div{border-right:0;border-bottom:1px solid var(--corp-line)}.corporate-formats>div{grid-template-columns:1fr}.corporate-section{padding:4rem 0}.corporate-faculty article{grid-template-columns:1fr}.corporate-program p{min-height:0}}
