﻿/* =========================================
   WALBRYDGE HOME PAGE
   Premium Enterprise Styling + Motion Polish
========================================= */

.wb-home-page {
    overflow: hidden;
}

/* HERO */
.wb-hero {
    position: relative;
    overflow: hidden;
}

.wb-home-hero-premium {
    position: relative;
    padding: 3.4rem 0 5rem;
    background: radial-gradient(circle at 12% 18%, rgba(79, 124, 255, 0.18), transparent 22%), radial-gradient(circle at 88% 82%, rgba(79, 124, 255, 0.12), transparent 24%), linear-gradient(135deg, #06101d 0%, #09172b 58%, #0c2347 100%);
    color: var(--wb-white);
}

    .wb-home-hero-premium::before {
        content: "";
        position: absolute;
        inset: 0;
        background: linear-gradient(to right, rgba(255, 255, 255, 0.04) 1px, transparent 1px), linear-gradient(to bottom, rgba(255, 255, 255, 0.035) 1px, transparent 1px);
        background-size: 96px 96px;
        opacity: 0.08;
        pointer-events: none;
    }

    .wb-home-hero-premium::after {
        content: "";
        position: absolute;
        inset: auto 0 0 0;
        height: 140px;
        background: linear-gradient(to bottom, rgba(6, 16, 29, 0), rgba(6, 16, 29, 0.28));
        pointer-events: none;
    }

.wb-hero-row {
    position: relative;
    z-index: 2;
}

.wb-eyebrow {
    display: inline-flex;
    align-items: center;
    min-height: 40px;
    padding: 0.52rem 0.95rem;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.08);
    border: 1px solid rgba(255, 255, 255, 0.1);
    color: #d7e3ff;
    font-size: 0.76rem;
    font-weight: 800;
    letter-spacing: 0.11em;
    text-transform: uppercase;
    margin-bottom: 1rem;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08);
    animation: wbFadeLift 0.9s ease both;
}

.wb-hero-title {
    margin-top: 1.2rem;
    margin-bottom: 1.1rem;
    font-size: clamp(2.5rem, 4.8vw, 3rem);
    line-height: 1.02;
    font-weight: 800;
    letter-spacing: -.04em;
    max-width: none;
    color: #fff;
    animation: wbFadeLift 3s ease both;
}

    .wb-hero-title span {
        display: inline;
        color: #dfe8ff;
    }

.wb-hero-text {
    max-width: 100%;
    color: rgba(255, 255, 255, 0.76);
    font-size: 1rem;
    line-height: 1.82;
    margin: 0 0 1.5rem;
    animation: wbFadeLift 1.5s ease both;
}

.wb-hero-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
    margin-bottom: 2.35rem;
    animation: wbFadeLift 1.2s ease both;
}

.wb-btn-primary,
.wb-btn-ghost {
    transition: transform 0.35s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.35s cubic-bezier(0.22, 1, 0.36, 1), background 0.35s ease, border-color 0.35s ease, color 0.35s ease;
}

    .wb-btn-primary:hover,
    .wb-btn-ghost:hover {
        transform: translateY(-3px);
    }

.wb-btn-ghost {
    border: 1px solid rgba(255, 255, 255, 0.18);
    background: rgba(255, 255, 255, 0.06);
    color: var(--wb-white);
    border-radius: 999px;
    padding: 0.92rem 1.5rem;
    font-weight: 800;
    font-size: 0.96rem;
    letter-spacing: -0.01em;
    backdrop-filter: blur(10px);
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

    .wb-btn-ghost:hover {
        color: var(--wb-white);
        background: rgba(255, 255, 255, 0.12);
        border-color: rgba(255, 255, 255, 0.26);
        box-shadow: 0 18px 36px rgba(0, 0, 0, 0.18);
    }

/* HERO STATS */
.wb-home-hero-stats {
    margin-top: 0.2rem;
}

.wb-home-stat {
    position: relative;
    height: 100%;
    padding: 1.35rem 1.15rem;
    border-radius: 22px;
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.08);
    backdrop-filter: blur(12px);
    box-shadow: 0 16px 38px rgba(0, 0, 0, 0.14);
    transition: transform 0.45s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.45s cubic-bezier(0.22, 1, 0.36, 1), border-color 0.35s ease, background 0.35s ease;
    overflow: hidden;
}

    .wb-home-stat::before {
        content: "";
        position: absolute;
        inset: 0;
        background: linear-gradient(135deg, rgba(255,255,255,0.05), transparent 45%, rgba(79,124,255,0.08));
        opacity: 0;
        transition: opacity 0.4s ease;
    }

    .wb-home-stat:hover {
        transform: translateY(-8px);
        background: rgba(255, 255, 255, 0.08);
        border-color: rgba(255, 255, 255, 0.12);
        box-shadow: 0 22px 46px rgba(0, 0, 0, 0.2);
    }

        .wb-home-stat:hover::before {
            opacity: 1;
        }

.wb-home-stat-icon {
    width: 52px;
    height: 52px;
    border-radius: 16px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 0.95rem;
    background: rgba(79, 124, 255, 0.16);
    color: #dbe5ff;
    font-size: 1.15rem;
    transition: transform 0.4s cubic-bezier(0.22, 1, 0.36, 1), background 0.35s ease, box-shadow 0.35s ease;
}

.wb-home-stat:hover .wb-home-stat-icon {
    transform: translateY(-3px) scale(1.04);
    box-shadow: 0 14px 28px rgba(79, 124, 255, 0.2);
    background: rgba(79, 124, 255, 0.22);
}

.wb-home-stat h4 {
    color: var(--wb-white);
    font-size: 1.2rem;
    font-weight: 800;
    margin-bottom: 0.35rem;
}

.wb-home-stat p {
    color: rgba(255, 255, 255, 0.72);
    line-height: 1.65;
    margin: 0;
    font-size: 0.95rem;
}

/* HERO VISUAL */
.wb-hero-visual-pro {
    position: relative;
    min-height: 540px;
    border-radius: 36px;
    padding: 1.7rem;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.06), rgba(255, 255, 255, 0.03)), linear-gradient(135deg, rgba(8, 18, 34, 0.76), rgba(17, 40, 71, 0.9));
    border: 1px solid rgba(255, 255, 255, 0.1);
    box-shadow: 0 30px 80px rgba(0, 0, 0, 0.24);
    overflow: hidden;
    animation: wbHeroFloat 7s ease-in-out infinite;
}

.wb-hero-visual-hybrid {
    display: flex;
    align-items: center;
    justify-content: center;
}

.wb-hybrid-glow {
    position: absolute;
    border-radius: 50%;
    filter: blur(48px);
    opacity: 0.9;
    pointer-events: none;
}

.wb-hybrid-glow-one {
    width: 220px;
    height: 220px;
    top: -40px;
    right: -30px;
    background: rgba(79, 124, 255, 0.22);
    animation: wbPulseGlow 6s ease-in-out infinite;
}

.wb-hybrid-glow-two {
    width: 200px;
    height: 200px;
    bottom: -40px;
    left: -20px;
    background: rgba(79, 124, 255, 0.12);
    animation: wbPulseGlow 7s ease-in-out infinite 0.8s;
}

.wb-hybrid-glow-three {
    width: 140px;
    height: 140px;
    top: 42%;
    left: 50%;
    transform: translate(-50%, -50%);
    background: rgba(79, 124, 255, 0.1);
    animation: wbPulseGlow 5.5s ease-in-out infinite 0.4s;
}

.wb-hybrid-ring {
    position: absolute;
    border-radius: 50%;
    border: 1px solid rgba(255, 255, 255, 0.08);
    box-shadow: inset 0 0 30px rgba(255, 255, 255, 0.02);
    pointer-events: none;
}

.wb-hybrid-ring-one {
    width: 360px;
    height: 360px;
    animation: wbRotateSlow 22s linear infinite;
}

.wb-hybrid-ring-two {
    width: 270px;
    height: 270px;
    animation: wbRotateReverse 18s linear infinite;
}

.wb-hybrid-ring-three {
    width: 180px;
    height: 180px;
    animation: wbRotateSlow 14s linear infinite;
}

.wb-hybrid-core {
    position: relative;
    z-index: 2;
    width: min(100%, 320px);
    padding: 3rem 1.4rem;
    border-radius: 28px;
    background: rgba(7, 17, 31, 0.72);
    border: 1px solid rgba(255, 255, 255, 0.1);
    backdrop-filter: blur(14px);
    box-shadow: 0 22px 55px rgba(0, 0, 0, 0.22);
    text-align: center;
    animation: wbCoreLift 5.5s ease-in-out infinite;
}

.wb-hybrid-core-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 42px;
    padding: 0.55rem 1rem;
    border-radius: 999px;
    background: rgba(79, 124, 255, 0.18);
    color: #d7e3ff;
    font-size: 0.8rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    margin-bottom: 1rem;
}

.wb-hybrid-core-lines {
    display: grid;
    gap: 0.55rem;
}

    .wb-hybrid-core-lines span {
        color: var(--wb-white);
        font-weight: 700;
        font-size: 1rem;
        line-height: 1.4;
    }

.wb-hybrid-pill {
    position: absolute;
    z-index: 3;
    display: inline-flex;
    align-items: center;
    gap: 0.65rem;
    min-height: 54px;
    padding: 0.8rem 1rem;
    border-radius: 18px;
    background: rgba(7, 17, 31, 0.72);
    border: 1px solid rgba(255, 255, 255, 0.1);
    color: #dfe8ff;
    box-shadow: 0 18px 38px rgba(0, 0, 0, 0.2);
    backdrop-filter: blur(10px);
    font-weight: 700;
    transition: transform 0.4s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.35s ease, background 0.35s ease;
}

    .wb-hybrid-pill:hover {
        transform: translateY(-6px);
        box-shadow: 0 22px 40px rgba(0, 0, 0, 0.24);
    }

    .wb-hybrid-pill i {
        width: 40px;
        height: 40px;
        border-radius: 14px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        background: rgba(79, 124, 255, 0.18);
        color: #dfe8ff;
        font-size: 1rem;
        transition: transform 0.35s ease;
    }

    .wb-hybrid-pill:hover i {
        transform: scale(1.05);
    }

.wb-hybrid-pill-top {
    top: 1.8rem;
    left: 50%;
    transform: translateX(-50%);
    animation: wbFloatY 5.8s ease-in-out infinite;
}

.wb-hybrid-pill-left {
    left: 1rem;
    top: 50%;
    transform: translateY(-50%);
    animation: wbFloatY 6.2s ease-in-out infinite 0.3s;
}

.wb-hybrid-pill-right {
    right: 1.2rem;
    top: 50%;
    transform: translateY(-50%);
    animation: wbFloatY 6s ease-in-out infinite 0.6s;
}

.wb-hybrid-pill-bottom {
    bottom: 1.3rem;
    left: 50%;
    transform: translateX(-50%);
    animation: wbFloatY 5.4s ease-in-out infinite 0.2s;
}

/* TRUST STRIP */
.wb-trust-strip {
    position: relative;
    margin-top: -1px;
    background: linear-gradient(180deg, #08182e 0%, #0e2344 100%);
    border-top: 1px solid rgba(255, 255, 255, 0.06);
    border-bottom: 1px solid rgba(255, 255, 255, 0.06);
}

.wb-trust-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 1rem;
    padding: 1.25rem 0;
}

.wb-trust-item {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.6rem;
    min-height: 58px;
    border-radius: 16px;
    background: rgba(255, 255, 255, 0.04);
    border: 1px solid rgba(255, 255, 255, 0.06);
    color: rgba(255, 255, 255, 0.84);
    font-weight: 700;
    text-align: center;
    transition: transform 0.4s cubic-bezier(0.22, 1, 0.36, 1), background 0.35s ease, border-color 0.35s ease, box-shadow 0.35s ease;
}

    .wb-trust-item:hover {
        transform: translateY(-5px);
        background: rgba(255, 255, 255, 0.06);
        box-shadow: 0 14px 26px rgba(0,0,0,0.14);
    }

    .wb-trust-item i {
        color: #8aa7ff;
        transition: transform 0.35s ease;
    }

    .wb-trust-item:hover i {
        transform: scale(1.08);
    }

/* SHARED SECTIONS */
.wb-section {
    padding: 4rem 0;
}

.wb-section-light {
    background: var(--wb-bg-light);
}

.wb-section-light-alt {
    background: linear-gradient(180deg, var(--wb-white) 0%, #f5f8fc 100%);
}

.wb-section-soft {
    background: radial-gradient(circle at top right, rgba(79, 124, 255, 0.08), transparent 22%), linear-gradient(180deg, var(--wb-white) 0%, #f8fbff 100%);
}

.wb-section-head {
    max-width: 900px;
    margin: 0 auto 0.75rem;
}

.wb-section-head-wide {
    max-width: 1080px;
}

.wb-section-head h2 {
    color: var(--wb-text);
    font-size: clamp(2rem, 3.4vw, 3.15rem);
    line-height: 1.08;
    font-weight: 800;
    letter-spacing: -0.03em;
    margin-bottom: 0.7rem;
}

.wb-section-head p {
    color: var(--wb-text-soft);
    line-height: 1.82;
    font-size: 1.02rem;
    margin: 0;
}

.wb-section-tag {
    display: inline-block;
    margin-bottom: 0.85rem;
    color: var(--wb-primary);
    font-size: 0.82rem;
    font-weight: 800;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.wb-section-tag-dark {
    color: #dbe5ff;
}

.wb-section-copy {
    color: var(--wb-text-soft);
    line-height: 1.9;
    font-size: 1.02rem;
}

.wb-section-tight {
    padding: 3.4rem 0;
}

.wb-section-soft-tight {
    padding: 3.8rem 0;
}

.wb-section-loose {
    padding: 5.2rem 0;
}

.wb-section .row.g-4.mt-2,
.wb-section-tight .row.g-4.mt-2,
.wb-section-soft-tight .row.g-4.mt-2 {
    margin-top: 0.4rem !important;
}

/* CARD SYSTEM */
.wb-cap-card,
.wb-product-preview-card,
.wb-home-pillar-card,
.wb-home-thinking-card,
.wb-tech-card,
.wb-global-card,
.wb-process-card,
.wb-outcome-card,
.wb-home-metric-box {
    position: relative;
    border: 1px solid var(--wb-border);
    box-shadow: var(--wb-shadow-md);
    transition: transform 0.5s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.45s cubic-bezier(0.22, 1, 0.36, 1), border-color 0.35s ease, background 0.35s ease;
    overflow: hidden;
}

    .wb-cap-card::before,
    .wb-product-preview-card::before,
    .wb-home-pillar-card::before,
    .wb-home-thinking-card::before,
    .wb-tech-card::before,
    .wb-global-card::before,
    .wb-process-card::before,
    .wb-outcome-card::before,
    .wb-home-metric-box::before {
        content: "";
        position: absolute;
        inset: 0;
        background: linear-gradient(135deg, rgba(79,124,255,0.06), transparent 38%, rgba(255,255,255,0.35));
        opacity: 0;
        transition: opacity 0.4s ease;
        pointer-events: none;
    }

    .wb-cap-card:hover,
    .wb-product-preview-card:hover,
    .wb-home-pillar-card:hover,
    .wb-home-thinking-card:hover,
    .wb-tech-card:hover,
    .wb-global-card:hover,
    .wb-outcome-card:hover,
    .wb-home-metric-box:hover {
        transform: translateY(-10px);
        box-shadow: 0 30px 64px rgba(7, 17, 31, 0.13);
        border-color: rgba(79, 124, 255, 0.16);
    }

        .wb-cap-card:hover::before,
        .wb-product-preview-card:hover::before,
        .wb-home-pillar-card:hover::before,
        .wb-home-thinking-card:hover::before,
        .wb-tech-card:hover::before,
        .wb-global-card:hover::before,
        .wb-outcome-card:hover::before,
        .wb-home-metric-box:hover::before {
            opacity: 1;
        }

/* CAPABILITIES */
.wb-cap-card {
    height: 100%;
    padding: 1.95rem 1.5rem;
    border-radius: 28px;
    background: var(--wb-white);
}

.wb-cap-icon,
.wb-home-pillar-icon,
.wb-tech-icon,
.wb-global-icon,
.wb-outcome-icon {
    transition: transform 0.4s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.35s ease, background 0.35s ease;
}

.wb-cap-card:hover .wb-cap-icon,
.wb-home-pillar-card:hover .wb-home-pillar-icon,
.wb-tech-card:hover .wb-tech-icon,
.wb-global-card:hover .wb-global-icon,
.wb-outcome-card:hover .wb-outcome-icon {
    transform: translateY(-4px) scale(1.04);
    box-shadow: 0 16px 28px rgba(79, 124, 255, 0.16);
}

.wb-cap-icon {
    width: 64px;
    height: 64px;
    border-radius: 20px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 1rem;
    background: rgba(79, 124, 255, 0.1);
    color: var(--wb-primary);
    font-size: 1.35rem;
}

.wb-cap-card h4 {
    font-size: 1.16rem;
    font-weight: 800;
    color: var(--wb-text);
    margin-bottom: 0.7rem;
}

.wb-cap-card p {
    margin: 0;
    color: var(--wb-text-soft);
    line-height: 1.82;
}

/* PRODUCT PORTFOLIO */
.wb-home-products-preview {
    background: var(--wb-white);
}

.wb-product-preview-card {
    height: 100%;
    padding: 2.05rem 1.6rem;
    border-radius: 30px;
    background: linear-gradient(180deg, var(--wb-white) 0%, #f8fbff 100%);
}

.wb-product-preview-icon {
    width: 68px;
    height: 68px;
    border-radius: 22px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 1rem;
    background: linear-gradient(135deg, rgba(79, 124, 255, 0.14), rgba(79, 124, 255, 0.08));
    color: var(--wb-primary);
    font-size: 1.5rem;
    transition: transform 0.4s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.35s ease;
}

.wb-product-preview-card:hover .wb-product-preview-icon {
    transform: translateY(-4px) scale(1.04);
    box-shadow: 0 16px 30px rgba(79, 124, 255, 0.16);
}

.wb-product-preview-tag {
    display: inline-block;
    margin-bottom: 0.85rem;
    color: var(--wb-primary);
    font-size: 0.78rem;
    font-weight: 800;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.wb-product-preview-card h4 {
    font-size: 1.7rem;
    font-weight: 800;
    color: var(--wb-text);
    margin-bottom: 0.75rem;
}

.wb-product-preview-card p {
    margin: 0;
    color: var(--wb-text-soft);
    line-height: 1.88;
}

/* PILLARS */
.wb-home-pillars {
    background: linear-gradient(180deg, var(--wb-white) 0%, #f8fbff 100%);
}

.wb-home-pillar-card {
    height: 100%;
    padding: 2rem 1.55rem;
    border-radius: 28px;
    background: var(--wb-white);
}

.wb-home-pillar-icon {
    width: 66px;
    height: 66px;
    border-radius: 20px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 1rem;
    background: rgba(79, 124, 255, 0.1);
    color: var(--wb-primary);
    font-size: 1.35rem;
}

.wb-home-pillar-card h4 {
    font-size: 1.25rem;
    font-weight: 800;
    color: var(--wb-text);
    margin-bottom: 0.75rem;
}

.wb-home-pillar-card p {
    color: var(--wb-text-soft);
    line-height: 1.85;
    margin-bottom: 1rem;
}

.wb-home-mini-list {
    margin: 0;
    padding-left: 1.15rem;
    color: #30435f;
}

    .wb-home-mini-list li {
        margin-bottom: 0.5rem;
        line-height: 1.75;
    }

/* PRODUCT THINKING */
.wb-home-copy-points {
    display: grid;
    gap: 0.75rem;
    margin-top: 1.1rem;
}

    .wb-home-copy-points div {
        display: flex;
        align-items: flex-start;
        gap: 0.65rem;
        color: #30435f;
        line-height: 1.75;
    }

    .wb-home-copy-points i {
        color: var(--wb-primary);
        margin-top: 0.1rem;
    }

.wb-home-thinking-grid {
    display: grid;
    gap: 1rem;
}

.wb-home-thinking-card {
    padding: 1.5rem 1.25rem;
    border-radius: 26px;
    background: var(--wb-white);
}

    .wb-home-thinking-card:hover {
        transform: translateY(-8px);
    }

    .wb-home-thinking-card i {
        color: var(--wb-primary);
        font-size: 1.2rem;
        margin-bottom: 0.8rem;
        display: inline-block;
        transition: transform 0.35s ease;
    }

    .wb-home-thinking-card:hover i {
        transform: translateY(-2px) scale(1.06);
    }

    .wb-home-thinking-card h4 {
        font-size: 1.08rem;
        font-weight: 800;
        color: var(--wb-text);
        margin-bottom: 0.55rem;
    }

    .wb-home-thinking-card p {
        margin: 0;
        color: var(--wb-text-soft);
        line-height: 1.78;
    }

.wb-home-thinking-core {
    background: linear-gradient(135deg, #0a1930, #12305c);
    border-color: rgba(255, 255, 255, 0.08);
}

    .wb-home-thinking-core h4,
    .wb-home-thinking-core p {
        color: var(--wb-white);
    }

.wb-arch-chip {
    display: inline-block;
    margin-bottom: 0.8rem;
    padding: 0.4rem 0.8rem;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.1);
    color: #dbe5ff;
    font-size: 0.76rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

/* TECH */
.wb-tech-card {
    height: 100%;
    padding: 1.85rem 1.4rem;
    border-radius: 26px;
    background: var(--wb-white);
}

.wb-tech-icon {
    width: 62px;
    height: 62px;
    border-radius: 18px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 1rem;
    background: rgba(79, 124, 255, 0.1);
    color: var(--wb-primary);
    font-size: 1.3rem;
}

.wb-tech-card h4 {
    color: var(--wb-text);
    font-weight: 800;
    margin-bottom: 0.7rem;
}

.wb-tech-card p {
    margin: 0;
    color: var(--wb-text-soft);
    line-height: 1.82;
}

/* SOLUTIONS BAND */
.wb-home-solutions-band {
    background: radial-gradient(circle at 15% 20%, rgba(79, 124, 255, 0.16), transparent 22%), linear-gradient(135deg, #06101d 0%, #09172b 55%, #0d2446 100%);
    color: var(--wb-white);
}

.wb-dark-title {
    color: var(--wb-white);
    font-size: clamp(2rem, 3.2vw, 3rem);
    line-height: 1.08;
    font-weight: 800;
    letter-spacing: -0.03em;
    margin-bottom: 0.95rem;
}

.wb-dark-text {
    color: rgba(255, 255, 255, 0.76);
    line-height: 1.9;
    margin-bottom: 1.2rem;
}

.wb-home-industry-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 1rem;
}

    .wb-home-industry-grid span {
        min-height: 72px;
        border-radius: 22px;
        display: flex;
        align-items: center;
        gap: 0.8rem;
        padding: 1rem 1.1rem;
        background: rgba(255, 255, 255, 0.06);
        border: 1px solid rgba(255, 255, 255, 0.08);
        color: var(--wb-white);
        font-weight: 700;
        backdrop-filter: blur(10px);
        transition: transform 0.4s cubic-bezier(0.22, 1, 0.36, 1), background 0.35s ease, box-shadow 0.35s ease;
    }

        .wb-home-industry-grid span:hover {
            transform: translateY(-6px);
            background: rgba(255, 255, 255, 0.08);
            box-shadow: 0 16px 30px rgba(0,0,0,0.18);
        }

    .wb-home-industry-grid i {
        width: 42px;
        height: 42px;
        border-radius: 14px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        background: rgba(79, 124, 255, 0.18);
        color: #dbe5ff;
        transition: transform 0.35s ease;
    }

    .wb-home-industry-grid span:hover i {
        transform: scale(1.06);
    }

/* GLOBAL */
.wb-global-card {
    height: 100%;
    padding: 1.85rem 1.35rem;
    border-radius: 26px;
    background: var(--wb-white);
}

.wb-global-icon {
    width: 60px;
    height: 60px;
    border-radius: 18px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 1rem;
    background: rgba(79, 124, 255, 0.1);
    color: var(--wb-primary);
    font-size: 1.28rem;
}

.wb-global-card h4 {
    color: var(--wb-text);
    font-weight: 800;
    margin-bottom: 0.7rem;
}

.wb-global-card p {
    margin: 0;
    color: var(--wb-text-soft);
    line-height: 1.82;
}

/* PROCESS */
.wb-home-process-section {
    background: var(--wb-white);
}

.wb-process-vertical {
    position: relative;
    max-width: 1080px;
    margin: 0 auto;
}

.wb-process-line {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 50%;
    width: 2px;
    transform: translateX(-50%);
    background: linear-gradient(180deg, rgba(79, 124, 255, 0.15), rgba(79, 124, 255, 0.45), rgba(79, 124, 255, 0.15));
}

.wb-process-item {
    position: relative;
    display: grid;
    grid-template-columns: 1fr 72px 1fr;
    align-items: center;
    margin-bottom: 2rem;
}

.wb-process-left .wb-process-card {
    grid-column: 1;
}

.wb-process-left .wb-process-icon {
    grid-column: 2;
}

.wb-process-right .wb-process-icon {
    grid-column: 2;
}

.wb-process-right .wb-process-card {
    grid-column: 3;
}

.wb-process-card {
    padding: 1.45rem 1.3rem;
    border-radius: 24px;
    background: var(--wb-white);
}

    .wb-process-card h4 {
        color: var(--wb-text);
        font-weight: 800;
        margin-bottom: 0.55rem;
    }

    .wb-process-card p {
        margin: 0;
        color: var(--wb-text-soft);
        line-height: 1.78;
    }

.wb-process-step {
    display: inline-block;
    margin-bottom: 0.7rem;
    padding: 0.36rem 0.7rem;
    border-radius: 999px;
    background: rgba(53, 103, 255, 0.08);
    color: var(--wb-primary-deep);
    font-size: 0.74rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.wb-process-icon {
    width: 58px;
    height: 58px;
    margin: 0 auto;
    border-radius: 18px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, var(--wb-primary-deep), #5c83ff);
    color: var(--wb-white);
    box-shadow: 0 14px 34px rgba(28, 72, 227, 0.24);
    z-index: 2;
    transition: transform 0.4s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.35s ease;
}

.wb-process-item:hover .wb-process-icon {
    transform: scale(1.07);
    box-shadow: 0 18px 38px rgba(28, 72, 227, 0.32);
}

/* OUTCOMES */
.wb-outcome-card {
    height: 100%;
    padding: 1.8rem 1.3rem;
    border-radius: 26px;
    background: var(--wb-white);
}

.wb-outcome-icon {
    width: 60px;
    height: 60px;
    border-radius: 18px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 1rem;
    background: rgba(79, 124, 255, 0.1);
    color: var(--wb-primary);
    font-size: 1.28rem;
}

.wb-outcome-card h4 {
    color: var(--wb-text);
    font-weight: 800;
    margin-bottom: 0.7rem;
}

.wb-outcome-card p {
    margin: 0;
    color: var(--wb-text-soft);
    line-height: 1.82;
}

.wb-home-metric-box {
    height: 100%;
    padding: 1.45rem 1rem;
    border-radius: 22px;
    background: linear-gradient(180deg, var(--wb-white) 0%, #f8fbff 100%);
    text-align: center;
}

    .wb-home-metric-box h3 {
        color: var(--wb-primary-deep);
        font-size: 1.65rem;
        font-weight: 800;
        margin-bottom: 0.35rem;
        transition: transform 0.35s ease;
    }

    .wb-home-metric-box:hover h3 {
        transform: translateY(-2px);
    }

    .wb-home-metric-box p {
        margin: 0;
        color: var(--wb-text-soft);
        font-weight: 600;
    }

/* CTA */
.wb-cta-section {
    padding: 5.8rem 0;
    background: var(--wb-bg-light);
}

.wb-home-final-cta {
    background: linear-gradient(180deg, var(--wb-bg-light) 0%, #eef4ff 100%);
}

.wb-cta-box {
    padding: 3rem 2.1rem;
    border-radius: 34px;
    background: radial-gradient(circle at top right, rgba(255, 255, 255, 0.12), transparent 22%), linear-gradient(135deg, #0b1728 0%, #112847 56%, #2457f5 100%);
    color: var(--wb-white);
    box-shadow: 0 28px 80px rgba(7, 17, 31, 0.18);
    transition: transform 0.45s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.4s ease;
}

    .wb-cta-box:hover {
        transform: translateY(-6px);
        box-shadow: 0 34px 86px rgba(7, 17, 31, 0.22);
    }

.wb-cta-kicker {
    display: inline-block;
    margin-bottom: 0.85rem;
    padding: 0.45rem 0.85rem;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.1);
    border: 1px solid rgba(255, 255, 255, 0.1);
    color: #dbe5ff;
    font-size: 0.76rem;
    font-weight: 800;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.wb-cta-box h2 {
    color: var(--wb-white);
    font-size: clamp(2rem, 3vw, 3rem);
    line-height: 1.08;
    font-weight: 800;
    margin-bottom: 0.85rem;
}

.wb-cta-box p {
    color: rgba(255, 255, 255, 0.78);
    max-width: 860px;
    margin: 0 auto;
    line-height: 1.9;
}

/* AOS SMOOTH POLISH */
[data-aos] {
    will-change: transform, opacity;
}

[data-aos="fade-up"],
[data-aos="fade-right"],
[data-aos="fade-left"],
[data-aos="zoom-in-up"] {
    transition-timing-function: cubic-bezier(0.22, 1, 0.36, 1) !important;
}

/* ANIMATIONS */
@keyframes wbFadeLift {
    0% {
        opacity: 0;
        transform: translateY(18px);
    }

    100% {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes wbFloatY {
    0%, 100% {
        transform: translateY(0);
    }

    50% {
        transform: translateY(-10px);
    }
}

@keyframes wbHeroFloat {
    0%, 100% {
        transform: translateY(0);
    }

    50% {
        transform: translateY(-6px);
    }
}

@keyframes wbCoreLift {
    0%, 100% {
        transform: translateY(0);
    }

    50% {
        transform: translateY(-8px);
    }
}

@keyframes wbPulseGlow {
    0%, 100% {
        opacity: 0.72;
        transform: scale(1);
    }

    50% {
        opacity: 1;
        transform: scale(1.08);
    }
}

@keyframes wbRotateSlow {
    from {
        transform: rotate(0deg);
    }

    to {
        transform: rotate(360deg);
    }
}

@keyframes wbRotateReverse {
    from {
        transform: rotate(360deg);
    }

    to {
        transform: rotate(0deg);
    }
}

@keyframes wbFloatSoft {
    0% {
        transform: translateY(0px);
    }

    50% {
        transform: translateY(-8px);
    }

    100% {
        transform: translateY(0px);
    }
}

@keyframes wbFloatSoftMobile {
    0% {
        transform: translateY(0px);
    }

    50% {
        transform: translateY(-4px);
    }

    100% {
        transform: translateY(0px);
    }
}

/* RESPONSIVE */
@media (max-width: 1199.98px) {
    .wb-home-hero-premium {
        padding: 6rem 0 5.1rem;
    }

    .wb-hero-visual-pro {
        width: 100%;
        min-height: 500px;
        overflow: visible;
        justify-content: center;
        gap: 10px;
    }
}

@media (max-width: 991.98px) {
    .wb-home-hero-premium {
        padding: 5.3rem 0 4.5rem;
    }

    .wb-trust-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .wb-process-line {
        left: 29px;
        transform: none;
    }

    .wb-process-item {
        grid-template-columns: 58px 1fr;
        gap: 1rem;
    }

    .wb-process-left .wb-process-icon,
    .wb-process-right .wb-process-icon {
        grid-column: 1;
    }

    .wb-process-left .wb-process-card,
    .wb-process-right .wb-process-card {
        grid-column: 2;
    }

    .wb-home-industry-grid {
        grid-template-columns: 1fr;
    }

    .wb-hybrid-core {
        animation-name: wbFloatSoftMobile;
        animation-duration: 5.5s;
    }

    .wb-hybrid-pill:nth-child(1),
    .wb-hybrid-pill:nth-child(2),
    .wb-hybrid-pill:nth-child(3),
    .wb-hybrid-pill:nth-child(4) {
        animation-name: wbFloatSoftMobile;
        animation-duration: 5.5s;
    }
}

@media (max-width: 767.98px) {
    .wb-home-hero-premium,
    .wb-home-section,
    .wb-home-panels,
    .wb-home-cta,
    .wb-home-products,
    .wb-home-industries,
    .wb-home-platforms,
    .wb-section,
    .wb-cta-section {
        overflow: hidden;
    }

        .wb-home-hero-premium .container,
        .wb-home-hero-premium .container-fluid,
        .wb-home-section .container,
        .wb-home-section .container-fluid,
        .wb-home-panels .container,
        .wb-home-panels .container-fluid,
        .wb-home-cta .container,
        .wb-home-cta .container-fluid {
            padding-left: 14px !important;
            padding-right: 14px !important;
        }

    .wb-home-hero-premium {
        padding: 2.2rem 0 3.2rem !important;
    }

    .wb-eyebrow {
        margin-bottom: .8rem !important;
        padding: .52rem .9rem !important;
        font-size: .74rem !important;
        letter-spacing: .1em !important;
        min-height: auto !important;
        border-radius: 999px !important;
    }

    .wb-hero-title {
        font-size: clamp(2.05rem, 7.2vw, 2.55rem) !important;
        line-height: 1.02 !important;
        letter-spacing: -.045em !important;
        margin-bottom: .95rem !important;
        max-width: 100% !important;
    }

    .wb-hero-text,
    .wb-section-head p,
    .wb-section-copy,
    .wb-cta-box p {
        font-size: 1rem !important;
        line-height: 1.72 !important;
        margin-bottom: 1.35rem !important;
        max-width: 100% !important;
    }

    .wb-hero-actions {
        display: flex !important;
        flex-direction: row !important;
        justify-content: flex-start !important;
        align-items: center !important;
        gap: .8rem !important;
        flex-wrap: wrap !important;
        margin-bottom: 1.35rem !important;
    }

        .wb-hero-actions .btn,
        .wb-btn-primary,
        .wb-btn-ghost {
            width: auto !important;
            min-height: 50px !important;
            padding: .72rem 1.2rem !important;
            font-size: .92rem !important;
            border-radius: 999px !important;
            flex: 0 0 auto !important;
            justify-content: center !important;
        }

    .wb-hero-visual-pro {
        min-height: auto !important;
        margin-top: 1.4rem !important;
        padding: 1rem !important;
        border-radius: 22px !important;
        overflow: hidden !important;
        display: block !important;
    }

    .wb-hybrid-visual,
    .wb-hybrid-shell,
    .wb-hybrid-architecture {
        position: relative !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        justify-content: flex-start !important;
        width: 100% !important;
        min-height: auto !important;
        gap: .85rem !important;
        overflow: hidden !important;
    }

    .wb-hybrid-ring,
    .wb-hybrid-glow-one,
    .wb-hybrid-glow-two,
    .wb-hybrid-glow-three,
    .wb-hybrid-orbit,
    .wb-hybrid-line,
    .wb-hybrid-connector {
        display: none !important;
    }

    .wb-hybrid-core {
        position: relative !important;
        inset: auto !important;
        left: auto !important;
        right: auto !important;
        top: auto !important;
        bottom: auto !important;
        transform: none !important;
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
        padding: 1rem !important;
        border-radius: 18px !important;
        min-height: auto !important;
        order: 1 !important;
        animation: none !important;
    }

    .wb-hybrid-core-badge {
        margin-bottom: .7rem !important;
        padding: .42rem .75rem !important;
        font-size: .7rem !important;
        min-height: auto !important;
        border-radius: 999px !important;
    }

    .wb-hybrid-core-lines {
        gap: .42rem !important;
    }

        .wb-hybrid-core-lines span {
            font-size: .95rem !important;
            line-height: 1.32 !important;
        }

    .wb-hybrid-pill,
    .wb-hybrid-node,
    .wb-hybrid-card {
        position: relative !important;
        inset: auto !important;
        left: auto !important;
        right: auto !important;
        top: auto !important;
        bottom: auto !important;
        transform: none !important;
        width: 100% !important;
        max-width: 100% !important;
        min-height: 68px !important;
        margin: 0 !important;
        padding: .85rem .95rem !important;
        border-radius: 18px !important;
        justify-content: flex-start !important;
        animation: none !important;
        box-sizing: border-box !important;
    }

        .wb-hybrid-pill i,
        .wb-hybrid-node i,
        .wb-hybrid-card i {
            width: 42px !important;
            height: 42px !important;
            border-radius: 14px !important;
            font-size: 1rem !important;
            flex-shrink: 0 !important;
        }

        .wb-hybrid-pill span,
        .wb-hybrid-node span,
        .wb-hybrid-card span {
            font-size: .95rem !important;
            line-height: 1.28 !important;
        }

    .wb-hero-feature-list,
    .wb-home-feature-stack,
    .wb-hero-feature-stack {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: .85rem !important;
        margin-top: 1rem !important;
    }

    .wb-feature-strip,
    .wb-home-feature-pill,
    .wb-hero-feature-item {
        width: 100% !important;
        min-height: 56px !important;
        padding: .95rem 1.05rem !important;
        border-radius: 18px !important;
        box-sizing: border-box !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        gap: .7rem !important;
    }

        .wb-feature-strip i,
        .wb-home-feature-pill i,
        .wb-hero-feature-item i {
            font-size: 1rem !important;
        }

    .wb-section-title,
    .wb-home-section-title,
    .wb-home-block-title,
    .wb-panel h2,
    .wb-cta-box h2 {
        font-size: clamp(1.7rem, 6vw, 2.1rem) !important;
        line-height: 1.08 !important;
        letter-spacing: -.035em !important;
        margin-bottom: .8rem !important;
    }

    .wb-section-subtitle,
    .wb-home-section-subtitle,
    .wb-panel p,
    .wb-cta-box p {
        font-size: .98rem !important;
        line-height: 1.72 !important;
    }

    .wb-card,
    .wb-home-card,
    .wb-panel,
    .wb-cta-box,
    .wb-product-card,
    .wb-industry-card,
    .wb-platform-card,
    .wb-arch-card,
    .wb-capability-card,
    .wb-cap-card,
    .wb-product-preview-card,
    .wb-home-pillar-card,
    .wb-home-thinking-card,
    .wb-tech-card,
    .wb-global-card,
    .wb-process-card,
    .wb-outcome-card,
    .wb-home-metric-box {
        padding: 1rem !important;
        border-radius: 20px !important;
    }

    .wb-panel,
    .wb-cta-box {
        padding: 1.2rem 1rem !important;
    }

    .wb-icon-box,
    .wb-home-icon,
    .wb-card-icon,
    .wb-industry-icon,
    .wb-platform-icon {
        width: 48px !important;
        height: 48px !important;
        border-radius: 14px !important;
        font-size: 1rem !important;
    }

    .row {
        --bs-gutter-x: 1rem;
        --bs-gutter-y: 1rem;
    }

    .wb-btn-primary:active,
    .wb-btn-ghost:active,
    .wb-feature-strip:active,
    .wb-home-feature-pill:active,
    .wb-hybrid-pill:active {
        transform: scale(.98) !important;
    }
}

/* HYBRID VISUAL ANIMATION - TABLET & MOBILE */
.wb-hybrid-pill,
.wb-hybrid-core {
    animation-duration: 6s;
    animation-timing-function: ease-in-out;
    animation-iteration-count: infinite;
}

.wb-hybrid-core {
    animation-name: wbFloatSoft;
}

.wb-hybrid-pill:nth-child(1) {
    animation-name: wbFloatSoft;
    animation-delay: 0s;
}

.wb-hybrid-pill:nth-child(2) {
    animation-name: wbFloatSoft;
    animation-delay: .4s;
}

.wb-hybrid-pill:nth-child(3) {
    animation-name: wbFloatSoft;
    animation-delay: .8s;
}

.wb-hybrid-pill:nth-child(4) {
    animation-name: wbFloatSoft;
    animation-delay: 1.2s;
}

@media (max-width: 991.98px) {
    .wb-hybrid-core {
        animation-name: wbFloatSoftMobile;
        animation-duration: 5.5s;
    }

    .wb-hybrid-pill:nth-child(1),
    .wb-hybrid-pill:nth-child(2),
    .wb-hybrid-pill:nth-child(3),
    .wb-hybrid-pill:nth-child(4) {
        animation-name: wbFloatSoftMobile;
        animation-duration: 5.5s;
    }
}

@media (max-width: 767.98px) {
    .wb-hybrid-core {
        animation-name: wbFloatSoftMobile;
        animation-duration: 5s;
    }

    .wb-hybrid-pill:nth-child(1),
    .wb-hybrid-pill:nth-child(2),
    .wb-hybrid-pill:nth-child(3),
    .wb-hybrid-pill:nth-child(4) {
        animation-name: wbFloatSoftMobile;
        animation-duration: 5s;
    }
}

/* ACCESSIBILITY */
@media (prefers-reduced-motion: reduce) {
    .wb-hybrid-core,
    .wb-hybrid-pill {
        animation: none !important;
    }

    *,
    *::before,
    *::after {
        transition: none !important;
        scroll-behavior: auto !important;
    }
}
