﻿/* =========================================================
   WILLSMARG COMPANY — LEVEL 3 PREMIUM PAGE
   File: wwwroot/css/Company.css
   Purpose: product-company story, responsive system, premium motion
========================================================= */

:root {
    --wsm-company-bg: #f7f9fc;
    --wsm-company-surface: #ffffff;
    --wsm-company-ink: #0b1f3a;
    --wsm-company-ink-2: #20324d;
    --wsm-company-muted: #64748b;
    --wsm-company-line: #dfe7ef;
    --wsm-company-teal: #00a8c8;
    --wsm-company-teal-2: #e5fbff;
    --wsm-company-teal-dark: #007d95;
    --wsm-company-blue: #1d4ed8;
    --wsm-company-shadow: 0 16px 42px rgba(11,31,58,.075);
    --wsm-company-shadow-lg: 0 28px 72px rgba(11,31,58,.13);
    --wsm-company-radius: 24px;
}

.wsm-company-page {
    color: var(--wsm-company-ink);
    background: var(--wsm-company-bg);
    overflow-x: hidden;
}

.wsm-company-shell {
    width: 100%;
    max-width: none;
    padding-left: 32px;
    padding-right: 32px;
    margin: 0 auto;
}

.wsm-company-section {
    position: relative;
    padding: clamp(70px, 5.6vw, 106px) 0;
    border-bottom: 1px solid var(--wsm-company-line);
}

.wsm-company-head h2,
.wsm-company-cta-card h2 {
    margin: 22px 0 14px;
    color: var(--wsm-company-ink);
    font-size: clamp(2.25rem, 3.15vw, 4.25rem);
    line-height: 1.05;
    letter-spacing: -.055em;
    font-weight: 950;
}

.wsm-company-head p,
.wsm-company-card p,
.wsm-company-operating-card p,
.wsm-company-time-card p,
.wsm-company-location p,
.wsm-company-why-list p,
.wsm-company-cta-card p {
    color: var(--wsm-company-muted);
    font-size: clamp(.95rem, .9vw, 1.04rem);
    line-height: 1.72;
    font-weight: 620;
}

.wsm-company-head-center {
    max-width: 1120px;
    margin: 0 auto clamp(34px, 4vw, 54px);
    text-align: center;
}

    .wsm-company-head-center p {
        max-width: 880px;
        margin-left: auto;
        margin-right: auto;
    }

.wsm-company-split-head {
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(360px, .8fr);
    gap: clamp(28px, 5vw, 86px);
    align-items: end;
    margin-bottom: 34px;
}

    .wsm-company-split-head p {
        margin: 0 0 8px;
        max-width: 760px;
    }

/* =========================================================
   HERO
========================================================= */
.wsm-company-hero {
    position: relative;
    /*    padding: clamp(74px, 6.6vw, 118px) 0 clamp(78px, 6.6vw, 112px);*/
    padding: clamp(58px, 5vw, 92px) 0 clamp(60px, 5vw, 96px);
    background: linear-gradient(rgba(11,31,58,.035) 1px, transparent 1px), linear-gradient(90deg, rgba(11,31,58,.035) 1px, transparent 1px), radial-gradient(circle at 8% 12%, rgba(0,168,200,.11), transparent 30%), radial-gradient(circle at 90% 18%, rgba(29,78,216,.07), transparent 28%), linear-gradient(135deg, #fbfdff 0%, #f4f8fb 52%, #eef5f8 100%);
    background-size: 46px 46px, 46px 46px, auto, auto, auto;
    border-bottom: 1px solid var(--wsm-company-line);
    overflow: hidden;
}

    .wsm-company-hero::before {
        content: "";
        position: absolute;
        inset: 0;
        background: linear-gradient(110deg, transparent 0 48%, rgba(0,168,200,.075) 48% 49%, transparent 49% 100%);
        pointer-events: none;
    }

.wsm-company-hero-grid {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: minmax(0, 1.02fr) minmax(560px, .88fr);
    gap: clamp(42px, 5vw, 92px);
    align-items: center;
}

.wsm-company-hero-copy h1 {
    max-width: 1080px;
    margin: 26px 0 22px;
    color: var(--wsm-company-ink);
    font-size: clamp(3rem, 5vw, 6.15rem);
    line-height: .99;
    letter-spacing: -.072em;
    font-weight: 950;
}

.wsm-company-hero-copy p {
    max-width: 1040px;
    color: var(--wsm-company-muted);
    font-size: clamp(1rem, 1.05vw, 1.15rem);
    line-height: 1.82;
    font-weight: 620;
}

.wsm-company-hero-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 30px;
}

/* =========================================================
   HERO SYSTEM CARD
========================================================= */
.wsm-company-system-card {
    width: 100%;
    max-width: 850px;
    margin-left: auto;
    border: 1px solid var(--wsm-company-line);
    border-radius: 30px;
    background: rgba(255,255,255,.96);
    box-shadow: var(--wsm-company-shadow);
    overflow: hidden;
    transform: translateZ(0);
}

.wsm-company-system-head {
    min-height: 60px;
    padding: 0 22px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    border-bottom: 1px solid var(--wsm-company-line);
    background: #fbfdff;
}

    .wsm-company-system-head span,
    .wsm-company-system-head strong {
        text-transform: uppercase;
        letter-spacing: .11em;
        font-size: .74rem;
        font-weight: 950;
        color: #8a98aa;
    }

    .wsm-company-system-head strong {
        color: var(--wsm-company-teal-dark);
    }

.wsm-company-system-body {
    position: relative;
    min-height: 485px;
    background: linear-gradient(rgba(11,31,58,.045) 1px, transparent 1px), linear-gradient(90deg, rgba(11,31,58,.045) 1px, transparent 1px), #fff;
    background-size: 34px 34px;
}

    .wsm-company-system-body::before {
        content: "";
        position: absolute;
        inset: 12%;
        border: 1px dashed rgba(0,168,200,.30);
        border-radius: 34px;
    }

.wsm-company-core {
    position: absolute;
    width: 245px;
    min-height: 152px;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    padding: 24px;
    border-radius: 20px;
    color: #fff;
    background: var(--wsm-company-ink);
    box-shadow: 0 22px 56px rgba(11,31,58,.24);
    display: grid;
    place-items: center;
    text-align: center;
    z-index: 2;
}

    .wsm-company-core small {
        color: #9ceeff;
        font-weight: 850;
        letter-spacing: .12em;
    }

    .wsm-company-core strong {
        font-size: 1.24rem;
        line-height: 1.22;
        font-weight: 950;
    }

    .wsm-company-core span {
        color: rgba(255,255,255,.74);
        font-size: .76rem;
        font-weight: 800;
    }

.wsm-company-node {
    position: absolute;
    width: 250px;
    min-height: 124px;
    padding: 24px 22px 20px;
    border-radius: 18px;
    border: 1px solid var(--wsm-company-line);
    background: rgba(255,255,255,.98);
    box-shadow: 0 14px 36px rgba(11,31,58,.09);
    transition: transform .28s ease, border-color .28s ease, box-shadow .28s ease;
    overflow: hidden;
}

    .wsm-company-node:hover {
        transform: translateY(-5px);
        border-color: rgba(0,168,200,.32);
        box-shadow: 0 22px 50px rgba(11,31,58,.12);
    }

    .wsm-company-node i {
        position: absolute;
        left: 15px;
        top: 10px;
        color: rgba(0,168,200,.22);
        font-size: 2.9rem;
        line-height: 1;
        pointer-events: none;
    }

    .wsm-company-node strong {
        position: relative;
        z-index: 1;
        display: block;
        padding-top: 28px;
        margin-bottom: 6px;
        color: var(--wsm-company-ink);
        line-height: 1.22;
        font-weight: 950;
    }

    .wsm-company-node span {
        position: relative;
        z-index: 1;
        display: block;
        color: var(--wsm-company-muted);
        line-height: 1.45;
        font-size: .86rem;
        font-weight: 650;
    }

.node-a {
    left: 32px;
    top: 42px;
}

.node-b {
    right: 32px;
    top: 70px;
}

.node-c {
    left: 42px;
    bottom: 54px;
}

.node-d {
    right: 42px;
    bottom: 44px;
}

/* =========================================================
   CARDS + ICON BEHIND HEADING
========================================================= */
.wsm-company-grid-3,
.wsm-company-scope-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 22px;
}

.wsm-company-card {
    position: relative;
    min-height: 250px;
    padding: 30px 28px;
    border-radius: var(--wsm-company-radius);
    background: #fff;
    border: 1px solid var(--wsm-company-line);
    box-shadow: 0 14px 36px rgba(11,31,58,.06);
    overflow: hidden;
    transition: transform .25s ease, border-color .25s ease, box-shadow .25s ease;
}

    .wsm-company-card::after {
        content: "";
        position: absolute;
        inset: auto 0 0 0;
        height: 3px;
        background: var(--wsm-company-teal);
        transform: scaleX(0);
        transform-origin: left;
        transition: transform .3s ease;
    }

    .wsm-company-card:hover {
        transform: translateY(-7px);
        border-color: rgba(0,168,200,.34);
        box-shadow: 0 24px 58px rgba(11,31,58,.11);
    }

        .wsm-company-card:hover::after {
            transform: scaleX(1);
        }

.wsm-company-icon-title {
    position: relative;
    isolation: isolate;
    min-height: 86px;
    margin-bottom: 12px;
}

    .wsm-company-icon-title i {
        position: absolute;
        left: -2px;
        top: -10px;
        z-index: 0;
        color: rgba(0,168,200,.18);
        font-size: clamp(3.35rem, 4.2vw, 4.7rem);
        line-height: 1;
        pointer-events: none;
    }

    .wsm-company-icon-title h3 {
        position: relative;
        z-index: 1;
        padding-top: 40px;
        margin: 0;
        color: var(--wsm-company-ink);
        font-size: clamp(1.08rem, 1vw, 1.25rem);
        line-height: 1.25;
        letter-spacing: -.025em;
        font-weight: 950;
    }

/* =========================================================
   OPERATING MODEL
========================================================= */
.wsm-company-operating {
    background: linear-gradient(rgba(11,31,58,.035) 1px, transparent 1px), linear-gradient(90deg, rgba(11,31,58,.035) 1px, transparent 1px), radial-gradient(circle at 88% 12%, rgba(0,168,200,.075), transparent 28%), #f7f9fc;
    background-size: 46px 46px, 46px 46px, auto, auto;
}

.wsm-company-operating-grid {
    position: relative;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 22px;
}

    .wsm-company-operating-grid::before {
        content: "";
        position: absolute;
        left: 8%;
        right: 8%;
        top: 50%;
        height: 2px;
        background: linear-gradient(90deg, rgba(0,168,200,.08), rgba(0,168,200,.50), rgba(0,168,200,.08));
        transform: translateY(-50%);
        z-index: 0;
    }

.wsm-company-operating-card {
    position: relative;
    z-index: 1;
    min-height: 230px;
    padding: 30px 28px;
    border-radius: var(--wsm-company-radius);
    background: rgba(255,255,255,.96);
    border: 1px solid var(--wsm-company-line);
    box-shadow: 0 14px 36px rgba(11,31,58,.06);
    overflow: hidden;
    transition: transform .25s ease, border-color .25s ease, box-shadow .25s ease, background .25s ease;
}

    .wsm-company-operating-card:hover {
        transform: translateY(-6px);
        border-color: rgba(0,168,200,.34);
        background: #fff;
        box-shadow: 0 24px 58px rgba(11,31,58,.11);
    }

    .wsm-company-operating-card.is-center {
        border-color: rgba(0,168,200,.46);
        background: linear-gradient(180deg, #fff, rgba(229,251,255,.36));
        box-shadow: 0 24px 62px rgba(0,168,200,.13);
    }

    .wsm-company-operating-card span {
        display: inline-flex;
        margin-bottom: 28px;
        color: var(--wsm-company-teal-dark);
        letter-spacing: .16em;
        font-size: .78rem;
        font-weight: 950;
    }

    .wsm-company-operating-card h3 {
        margin: 0 0 12px;
        color: var(--wsm-company-ink);
        font-size: clamp(1.12rem, 1.06vw, 1.3rem);
        line-height: 1.25;
        letter-spacing: -.025em;
        font-weight: 950;
    }

/* =========================================================
   TIMELINE
========================================================= */
.wsm-company-lifecycle {
    background: #fff;
}

.wsm-company-timeline {
    position: relative;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 76px 34px;
    margin-top: 56px;
}

.wsm-company-time-item {
    position: relative;
    min-height: 250px;
    padding-bottom: 70px;
}

    .wsm-company-time-item::before {
        content: "";
        position: absolute;
        left: -17px;
        right: -17px;
        bottom: 28px;
        height: 2px;
        background: linear-gradient(90deg, rgba(0,168,200,.10), rgba(0,168,200,.62), rgba(0,168,200,.10));
        z-index: 0;
    }

    .wsm-company-time-item:nth-child(3n+1)::before {
        left: 0;
    }

    .wsm-company-time-item:nth-child(3n)::before {
        right: 0;
    }

.wsm-company-time-card {
    position: relative;
    z-index: 2;
    min-height: 160px;
    padding: 26px 26px 24px;
    display: grid;
    grid-template-columns: 52px 1fr;
    gap: 18px;
    align-items: start;
    border-radius: 22px;
    background: rgba(255,255,255,.96);
    border: 1px solid var(--wsm-company-line);
    box-shadow: 0 16px 40px rgba(11,31,58,.075);
    transition: transform .28s ease, border-color .28s ease, box-shadow .28s ease, background .28s ease;
}

    .wsm-company-time-card:hover {
        transform: translateY(-7px);
        border-color: rgba(0,168,200,.38);
        background: #fff;
        box-shadow: 0 28px 62px rgba(11,31,58,.13);
    }

    .wsm-company-time-card::before {
        content: "";
        position: absolute;
        left: 50%;
        bottom: -42px;
        width: 2px;
        height: 42px;
        background: rgba(11,31,58,.26);
        transform: translateX(-50%);
        z-index: 1;
    }

    .wsm-company-time-card::after {
        content: "";
        position: absolute;
        left: 28px;
        bottom: 0;
        width: 130px;
        height: 4px;
        border-radius: 999px 999px 0 0;
        background: var(--wsm-company-teal);
        transition: width .28s ease;
    }

    .wsm-company-time-card:hover::after {
        width: calc(100% - 56px);
    }

    .wsm-company-time-card i {
        width: 48px;
        height: 48px;
        display: grid;
        place-items: center;
        border-radius: 15px;
        color: var(--wsm-company-teal-dark);
        background: var(--wsm-company-teal-2);
        border: 1px solid rgba(0,168,200,.22);
        font-size: 1.25rem;
    }

    .wsm-company-time-card h3 {
        margin: 0 0 8px;
        color: var(--wsm-company-ink);
        font-size: clamp(1.08rem, 1.08vw, 1.34rem);
        line-height: 1.2;
        letter-spacing: -.025em;
        font-weight: 950;
    }

    .wsm-company-time-card p {
        margin: 0;
        font-size: .92rem;
        line-height: 1.58;
    }

.wsm-company-time-dot {
    display: block;
    position: absolute;
    left: 50%;
    bottom: 0;
    transform: translateX(-50%);
    width: 56px;
    height: 56px;
    border-radius: 50%;
    background: var(--wsm-company-teal);
    box-shadow: 0 18px 40px rgba(0,168,200,.26), 0 0 0 10px rgba(0,168,200,.10);
    z-index: 2;
}

    .wsm-company-time-dot::after {
        content: "";
        position: absolute;
        inset: 17px;
        border-radius: 50%;
        background: #fff;
        opacity: .95;
    }

.wsm-company-time-item:nth-child(3n+2) .wsm-company-time-card::after,
.wsm-company-time-item:nth-child(3n+2) .wsm-company-time-dot {
    background: #0b7fd0;
}

.wsm-company-time-item:nth-child(3n) .wsm-company-time-card::after,
.wsm-company-time-item:nth-child(3n) .wsm-company-time-dot {
    background: #10b981;
}

/* =========================================================
   WHY + GLOBAL
========================================================= */
.wsm-company-why {
    background: #f7f9fc;
}

.wsm-company-why-grid {
    display: grid;
    grid-template-columns: .9fr 1.1fr;
    gap: clamp(34px, 5vw, 90px);
    align-items: start;
}

.wsm-company-why-list {
    display: grid;
    gap: 16px;
}

    .wsm-company-why-list article {
        padding: 24px;
        display: grid;
        grid-template-columns: 50px 1fr;
        column-gap: 16px;
        align-items: start;
        border-radius: 20px;
        background: #fff;
        border: 1px solid var(--wsm-company-line);
        box-shadow: 0 12px 32px rgba(11,31,58,.055);
        transition: transform .25s ease, border-color .25s ease;
    }

        .wsm-company-why-list article:hover {
            transform: translateY(-5px);
            border-color: rgba(0,168,200,.30);
        }

    .wsm-company-why-list i {
        width: 50px;
        height: 50px;
        border-radius: 15px;
        display: grid;
        place-items: center;
        color: var(--wsm-company-teal-dark);
        background: var(--wsm-company-teal-2);
        font-size: 1.35rem;
    }

    .wsm-company-why-list h3 {
        margin: 0 0 6px;
        color: var(--wsm-company-ink);
        font-size: 1.06rem;
        line-height: 1.25;
        font-weight: 950;
    }

    .wsm-company-why-list p {
        margin: 0;
    }

.wsm-company-global {
    background: #fff;
}

.wsm-company-global-map {
    display: grid;
    grid-template-columns: 1fr .82fr 1fr;
    gap: 18px;
    align-items: stretch;
}

.wsm-company-location,
.wsm-company-global-core {
    padding: 30px;
    border-radius: var(--wsm-company-radius);
    border: 1px solid var(--wsm-company-line);
    box-shadow: 0 14px 36px rgba(11,31,58,.06);
}

.wsm-company-location {
    background: #fff;
}

    .wsm-company-location i {
        color: var(--wsm-company-teal-dark);
        font-size: 1.5rem;
    }

    .wsm-company-location span {
        display: inline-block;
        margin-top: 16px;
        color: var(--wsm-company-teal-dark);
        text-transform: uppercase;
        letter-spacing: .13em;
        font-size: .76rem;
        font-weight: 950;
    }

    .wsm-company-location h3 {
        margin: 14px 0 10px;
        color: var(--wsm-company-ink);
        font-size: clamp(1.15rem, 1.18vw, 1.35rem);
        line-height: 1.25;
        font-weight: 950;
    }

.wsm-company-global-core {
    display: grid;
    place-items: center;
    text-align: center;
    color: #fff;
    background: var(--wsm-company-ink);
}

    .wsm-company-global-core strong {
        font-size: 1.22rem;
        font-weight: 950;
    }

    .wsm-company-global-core small {
        display: block;
        margin-top: 8px;
        color: rgba(255,255,255,.72);
        line-height: 1.5;
        font-weight: 700;
    }

/* =========================================================
   CTA
========================================================= */
.wsm-company-cta {
    background: #f7f9fc;
}

.wsm-company-cta-card {
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(360px, .78fr);
    column-gap: clamp(38px, 6vw, 92px);
    row-gap: 24px;
    align-items: center;
    text-align: left;
    padding: clamp(44px, 5.2vw, 82px);
    border-radius: 28px;
    background: linear-gradient(rgba(11,31,58,.04) 1px, transparent 1px), linear-gradient(90deg, rgba(11,31,58,.04) 1px, transparent 1px), #fff;
    background-size: 42px 42px;
    border: 1px solid var(--wsm-company-line);
    box-shadow: 0 20px 56px rgba(11,31,58,.08);
}

    .wsm-company-cta-card .wsm-kicker {
        grid-column: 1 / -1;
        justify-self: start;
        margin: 0;
    }

    .wsm-company-cta-card h2 {
        grid-column: 1;
        grid-row: 2 / span 2;
        max-width: 940px;
        margin: 0;
    }

    .wsm-company-cta-card > div {
        grid-column: 2;
        grid-row: 2 / span 2;
    }

    .wsm-company-cta-card p {
        max-width: 650px;
        margin: 0 0 24px;
    }

/* =========================================================
   RESPONSIVE
========================================================= */
@media (max-width: 1399.98px) {
    .wsm-company-hero-grid {
        grid-template-columns: 1fr;
    }

    .wsm-company-system-card {
        max-width: 920px;
        margin: 36px auto 0;
    }
}

@media (max-width: 1199.98px) {
    .wsm-company-grid-3,
    .wsm-company-scope-grid,
    .wsm-company-operating-grid,
    .wsm-company-timeline,
    .wsm-company-global-map {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .wsm-company-split-head,
    .wsm-company-why-grid,
    .wsm-company-cta-card {
        grid-template-columns: 1fr;
    }

        .wsm-company-cta-card .wsm-kicker,
        .wsm-company-cta-card h2,
        .wsm-company-cta-card > div {
            grid-column: 1;
            grid-row: auto;
        }

    .wsm-company-operating-grid::before,
    .wsm-company-time-item::before,
    .wsm-company-time-card::before,
    .wsm-company-time-dot {
        display: none;
    }

    .wsm-company-time-item {
        min-height: auto;
        padding-bottom: 0;
    }

    .wsm-company-global-core {
        grid-column: 1 / -1;
        order: 3;
    }
}

@media (min-width: 768px) and (max-width: 1100px) {
    .wsm-company-shell {
        padding-left: 26px;
        padding-right: 26px;
    }

    .wsm-company-section {
        padding-top: 58px;
        padding-bottom: 58px;
    }

    .wsm-company-system-body {
        min-height: auto;
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 18px;
        padding: 24px;
    }

        .wsm-company-system-body::before {
            display: none;
        }

    .wsm-company-core,
    .wsm-company-node {
        position: relative;
        inset: auto;
        transform: none;
        width: 100%;
        min-height: 150px;
    }

    .wsm-company-core {
        grid-column: 1 / -1;
        max-width: 420px;
        margin: 0 auto;
    }
}

@media (max-width: 767.98px) {
    .wsm-company-shell {
        padding-left: 18px;
        padding-right: 18px;
    }

    .wsm-company-section {
        padding-top: 58px;
        padding-bottom: 58px;
    }

    .wsm-company-hero {
        padding: 54px 0 66px;
    }

    .wsm-company-hero-copy h1,
    .wsm-company-head h2,
    .wsm-company-cta-card h2 {
        font-size: clamp(2rem, 9vw, 3rem);
        line-height: 1.08;
        letter-spacing: -.052em;
    }

    .wsm-company-hero-copy p,
    .wsm-company-head p,
    .wsm-company-card p,
    .wsm-company-cta-card p {
        font-size: 1rem;
        line-height: 1.72;
    }

    .wsm-company-hero-actions .wsm-btn,
    .wsm-company-cta-card .wsm-btn {
        width: 100%;
    }

    .wsm-company-grid-3,
    .wsm-company-scope-grid,
    .wsm-company-operating-grid,
    .wsm-company-timeline,
    .wsm-company-global-map {
        grid-template-columns: 1fr;
    }

    .wsm-company-system-body {
        min-height: auto;
        display: grid;
        grid-template-columns: 1fr;
        gap: 14px;
        padding: 18px;
    }

        .wsm-company-system-body::before {
            display: none;
        }

    .wsm-company-core,
    .wsm-company-node {
        position: relative;
        inset: auto;
        transform: none;
        width: 100%;
        min-height: auto;
    }

    .wsm-company-card,
    .wsm-company-operating-card,
    .wsm-company-location {
        min-height: auto;
        padding: 26px 22px;
        border-radius: 20px;
    }

    .wsm-company-icon-title {
        min-height: 76px;
    }

        .wsm-company-icon-title i {
            font-size: 3.35rem;
        }

        .wsm-company-icon-title h3 {
            padding-top: 34px;
        }

    .wsm-company-time-card {
        grid-template-columns: 48px 1fr;
        min-height: auto;
        padding: 24px;
    }

    .wsm-company-why-list article {
        grid-template-columns: 46px 1fr;
        padding: 22px;
    }

    .wsm-company-why-list i {
        width: 46px;
        height: 46px;
    }

    .wsm-company-cta-card {
        padding: 30px 22px;
        border-radius: 20px;
    }
}

@media (max-width: 420px) {
    .wsm-company-shell {
        padding-left: 14px;
        padding-right: 14px;
    }

    .wsm-company-hero-copy h1,
    .wsm-company-head h2,
    .wsm-company-cta-card h2 {
        font-size: clamp(1.9rem, 9.6vw, 2.55rem);
    }
}

@media (prefers-reduced-motion: reduce) {
    .wsm-company-page *,
    .wsm-company-page *::before,
    .wsm-company-page *::after {
        animation-duration: .001ms !important;
        animation-iteration-count: 1 !important;
        scroll-behavior: auto !important;
        transition-duration: .001ms !important;
    }
}
/* =========================================================
   COMPANY TIMELINE — CLEAN FINAL FIX
========================================================= */

.wsm-company-timeline,
.wsm-company-time-item {
    display: none !important;
}

.wsm-company-timeline-clean {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 24px;
    margin-top: 48px;
}

.wsm-company-life-card {
    position: relative;
    min-height: 230px;
    padding: 34px 30px 30px;
    border-radius: 24px;
    background: #fff;
    border: 1px solid var(--wsm-company-line);
    box-shadow: 0 16px 42px rgba(11,31,58,.075);
    overflow: hidden;
    transition: transform .26s ease, border-color .26s ease, box-shadow .26s ease;
}

    .wsm-company-life-card:hover {
        transform: translateY(-7px);
        border-color: rgba(0,168,200,.36);
        box-shadow: 0 26px 62px rgba(11,31,58,.12);
    }

    .wsm-company-life-card i {
        position: absolute;
        left: 24px;
        top: 18px;
        color: rgba(0,168,200,.18);
        font-size: 4.4rem;
        line-height: 1;
    }

    .wsm-company-life-card h3 {
        position: relative;
        z-index: 1;
        margin: 48px 0 12px;
        color: var(--wsm-company-ink);
        font-size: clamp(1.25rem, 1.25vw, 1.55rem);
        line-height: 1.18;
        font-weight: 950;
        letter-spacing: -.035em;
    }

    .wsm-company-life-card p {
        position: relative;
        z-index: 1;
        max-width: 420px;
        margin: 0;
        color: var(--wsm-company-muted);
        font-size: .96rem;
        line-height: 1.65;
        font-weight: 620;
    }

    .wsm-company-life-card::after {
        content: "";
        position: absolute;
        left: 30px;
        right: 30px;
        bottom: 0;
        height: 4px;
        border-radius: 999px 999px 0 0;
        background: var(--wsm-company-teal);
        transform: scaleX(.35);
        transform-origin: left;
        transition: transform .28s ease;
    }

    .wsm-company-life-card:hover::after {
        transform: scaleX(1);
    }

@media (max-width: 1199.98px) {
    .wsm-company-timeline-clean {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 767.98px) {
    .wsm-company-timeline-clean {
        grid-template-columns: 1fr;
        gap: 18px;
    }

    .wsm-company-life-card {
        min-height: auto;
        padding: 30px 24px;
    }
}

/* =========================================================
   COMPANY LEVEL 3 — CONNECTED SYSTEM DIAGRAM UPGRADE
   Adds animated SVG connectors + hover intelligence.
========================================================= */

.wsm-company-system-body {
    isolation: isolate;
}

.wsm-company-system-lines {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
    pointer-events: none;
}

    .wsm-company-system-lines .wsm-company-line {
        fill: none;
        stroke: rgba(0,168,200,.34);
        stroke-width: 1.8;
        stroke-linecap: round;
        stroke-dasharray: 620;
        stroke-dashoffset: 620;
        animation: wsmCompanyLineDraw 1.4s cubic-bezier(.2,.8,.2,1) forwards;
    }

    .wsm-company-system-lines .line-a {
        animation-delay: .12s;
    }

    .wsm-company-system-lines .line-b {
        animation-delay: .24s;
    }

    .wsm-company-system-lines .line-c {
        animation-delay: .36s;
    }

    .wsm-company-system-lines .line-d {
        animation-delay: .48s;
    }

@keyframes wsmCompanyLineDraw {
    to {
        stroke-dashoffset: 0;
    }
}

.wsm-company-core,
.wsm-company-node {
    z-index: 3;
}

.wsm-company-core {
    transition: transform .32s ease, box-shadow .32s ease, background .32s ease;
}

.wsm-company-system-body:has(.wsm-company-node:hover) .wsm-company-core {
    transform: translate(-50%, -50%) scale(1.035);
    box-shadow: 0 28px 76px rgba(11,31,58,.32);
}

.wsm-company-system-body:has(.node-a:hover) .line-a,
.wsm-company-system-body:has(.node-b:hover) .line-b,
.wsm-company-system-body:has(.node-c:hover) .line-c,
.wsm-company-system-body:has(.node-d:hover) .line-d {
    stroke: rgba(0,168,200,.85);
    stroke-width: 2.6;
    filter: drop-shadow(0 0 8px rgba(0,168,200,.30));
}

.wsm-company-node::after {
    content: "";
    position: absolute;
    left: 22px;
    right: 22px;
    bottom: 0;
    height: 3px;
    border-radius: 999px 999px 0 0;
    background: var(--wsm-company-teal);
    transform: scaleX(.34);
    transform-origin: left;
    transition: transform .28s ease;
}

.wsm-company-node:hover::after {
    transform: scaleX(1);
}

@media (max-width: 1100px) {
    .wsm-company-system-lines {
        display: none;
    }
}

@media (prefers-reduced-motion: reduce) {
    .wsm-company-system-lines .wsm-company-line {
        animation: none !important;
        stroke-dashoffset: 0 !important;
    }
}

/* =========================================================
   HERO SYSTEM LEVEL 3 — COMPANY FIX FINAL
   Match Home + Capabilities hero spacing and split layout.
   Removes centered/editorial white-space issue.
========================================================= */

.wsm-company-hero {
    padding: clamp(74px, 6.6vw, 118px) 0 clamp(78px, 6.6vw, 112px) !important;
}

.wsm-company-hero-editorial {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: minmax(0, 1.02fr) minmax(560px, .88fr);
    gap: clamp(42px, 5vw, 92px);
    align-items: center;
}

    .wsm-company-hero-editorial .wsm-company-hero-copy {
        max-width: none;
        margin: 0;
        text-align: left;
    }

    .wsm-company-hero-editorial .wsm-kicker {
        margin-left: 0;
        margin-right: 0;
    }

    .wsm-company-hero-editorial .wsm-company-hero-copy h1 {
        max-width: 1120px;
        margin: 26px 0 22px;
        font-size: clamp(3rem, 5vw, 6.15rem);
        line-height: .99;
        letter-spacing: -.072em;
    }

    .wsm-company-hero-editorial .wsm-company-hero-copy p {
        max-width: 1040px;
        margin-left: 0;
        margin-right: 0;
    }

    .wsm-company-hero-editorial .wsm-company-hero-actions {
        justify-content: flex-start;
    }

    .wsm-company-hero-editorial .wsm-company-system-card {
        max-width: 900px;
        margin-left: auto;
        margin-right: 0;
    }

    .wsm-company-hero-editorial .wsm-company-system-body {
        min-height: 485px;
    }

@media (min-width: 1400px) {
    .wsm-company-hero-editorial .wsm-company-system-card {
        margin-right: 18px;
    }
}

@media (max-width: 1399.98px) {
    .wsm-company-hero-editorial {
        grid-template-columns: 1fr;
    }

        .wsm-company-hero-editorial .wsm-company-system-card {
            max-width: 920px;
            margin: 36px auto 0;
        }
}

@media (min-width: 768px) and (max-width: 1100px) {
    .wsm-company-hero-editorial .wsm-company-system-card {
        margin-top: 30px;
    }
}

@media (max-width: 767.98px) {
    .wsm-company-hero {
        padding: 54px 0 66px !important;
    }

    .wsm-company-hero-editorial .wsm-company-system-card {
        margin-top: 28px;
    }

    .wsm-company-hero-editorial .wsm-company-hero-actions {
        width: 100%;
    }
}

/* =========================================================
   MOBILE FIX — DISABLE HOVER SHIFT / CORE MOVEMENT
========================================================= */

@media (max-width: 767.98px) {
    .wsm-company-core,
    .wsm-company-node,
    .wsm-company-card,
    .wsm-company-system-card {
        transform: none !important;
        transition: box-shadow .22s ease, border-color .22s ease, background .22s ease !important;
    }

        .wsm-company-node:hover,
        .wsm-company-card:hover,
        .wsm-company-system-card:hover {
            transform: none !important;
        }

    .wsm-company-system-body:has(.wsm-company-node:hover) .wsm-company-core {
        transform: none !important;
    }
}




/* =========================================================
   10-INCH TABLET RESPONSIVE POLISH
   Keeps premium look, reduces excess width/height.
========================================================= */

@media (min-width: 768px) and (max-width: 1100px) {
    .wsm-hero,
    .wsm-company-hero,
    .wsm-cap-hero {
        padding-top: 54px !important;
        padding-bottom: 62px !important;
    }

    .wsm-section,
    .wsm-company-section,
    .wsm-cap-section {
        padding-top: 54px !important;
        padding-bottom: 54px !important;
    }

    .wsm-hero-copy h1,
    .wsm-company-hero-copy h1,
    .wsm-cap-hero-copy h1 {
        font-size: clamp(2.7rem, 6vw, 4.4rem) !important;
        line-height: 1.04 !important;
    }

    .wsm-engineering-board,
    .wsm-company-system-card,
    .wsm-cap-hero-board {
        max-width: 760px !important;
        margin-left: auto !important;
        margin-right: auto !important;
    }

    .wsm-global-bridge,
    .wsm-cap-global-bridge,
    .wsm-company-global-core {
        border-radius: 20px !important;
        padding: 24px !important;
    }

    .wsm-company-why-list article {
        min-height: auto !important;
        padding: 22px !important;
    }
}

/* =========================================================
   HERO RIGHT SIDE AOS FIX — COMPANY + CAPABILITIES
========================================================= */

.wsm-company-system-card[data-aos="fade-left"],
.wsm-cap-hero-board[data-aos="fade-left"] {
    opacity: 0;
    transform: translate3d(44px, 0, 0) !important;
    transition-property: opacity, transform !important;
}

    .wsm-company-system-card[data-aos="fade-left"].aos-animate,
    .wsm-cap-hero-board[data-aos="fade-left"].aos-animate {
        opacity: 1 !important;
        transform: translate3d(0, 0, 0) !important;
    }

@media (max-width: 767.98px) {
    .wsm-company-system-card[data-aos="fade-left"],
    .wsm-cap-hero-board[data-aos="fade-left"],
    .wsm-company-system-card[data-aos="fade-left"].aos-animate,
    .wsm-cap-hero-board[data-aos="fade-left"].aos-animate {
        opacity: 1 !important;
        transform: none !important;
    }
}

/* =========================================================
   WILLSMARG SIGNATURE HERO SYSTEM — LEVEL 5
   Company board: depth reveal, line draw, node sequence,
   subtle alive motion, hover intelligence, mobile-safe behavior.
========================================================= */

.wsm-signature-hero-board {
    position: relative;
    opacity: 0;
    transform: translate3d(0, 38px, 0) scale(.965);
    filter: blur(10px);
    transform-origin: 50% 50%;
    will-change: opacity, transform, filter;
    animation: wsmCompanySignatureBoardReveal .95s cubic-bezier(.16,1,.3,1) .18s forwards;
}

@keyframes wsmCompanySignatureBoardReveal {
    0% {
        opacity: 0;
        transform: translate3d(0, 38px, 0) scale(.965);
        filter: blur(10px);
    }

    62% {
        opacity: 1;
        filter: blur(0);
    }

    100% {
        opacity: 1;
        transform: translate3d(0, 0, 0) scale(1);
        filter: blur(0);
    }
}

.wsm-signature-hero-board::before {
    content: "";
    position: absolute;
    inset: -1px;
    border-radius: inherit;
    background: linear-gradient(120deg, transparent 0 30%, rgba(255,255,255,.56) 44%, transparent 58% 100%);
    transform: translateX(-130%);
    opacity: .78;
    pointer-events: none;
    z-index: 8;
    animation: wsmCompanySignatureGlassSweep 1.25s cubic-bezier(.22,1,.36,1) .45s forwards;
}

@keyframes wsmCompanySignatureGlassSweep {
    to {
        transform: translateX(130%);
        opacity: 0;
    }
}

.wsm-signature-hero-board .wsm-company-system-body {
    isolation: isolate;
}

.wsm-signature-hero-board .wsm-company-system-lines .wsm-company-line {
    stroke: rgba(0,168,200,.38);
    stroke-width: 1.9;
    stroke-dasharray: 640;
    stroke-dashoffset: 640;
    animation: wsmCompanySignatureLineDraw 1.45s cubic-bezier(.22,1,.36,1) forwards;
}

.wsm-signature-hero-board .wsm-company-system-lines .line-a {
    animation-delay: .58s;
}

.wsm-signature-hero-board .wsm-company-system-lines .line-b {
    animation-delay: .70s;
}

.wsm-signature-hero-board .wsm-company-system-lines .line-c {
    animation-delay: .82s;
}

.wsm-signature-hero-board .wsm-company-system-lines .line-d {
    animation-delay: .94s;
}

@keyframes wsmCompanySignatureLineDraw {
    to {
        stroke-dashoffset: 0;
    }
}

.wsm-signature-hero-board .wsm-company-core,
.wsm-signature-hero-board .wsm-company-node {
    z-index: 3;
}

.wsm-signature-hero-board .wsm-company-core {
    opacity: 0;
    animation: wsmCompanySignatureCoreReveal .72s cubic-bezier(.22,1,.36,1) .52s forwards, wsmCompanySignatureCoreFloat 7s ease-in-out 1.45s infinite;
}

@keyframes wsmCompanySignatureCoreReveal {
    from {
        opacity: 0;
        transform: translate(-50%, -46%) scale(.92);
        filter: blur(8px);
    }

    to {
        opacity: 1;
        transform: translate(-50%, -50%) scale(1);
        filter: blur(0);
    }
}

@keyframes wsmCompanySignatureCoreFloat {
    0%,100% {
        transform: translate(-50%, -50%);
    }

    50% {
        transform: translate(-50%, calc(-50% - 5px));
    }
}

.wsm-signature-hero-board .wsm-company-node {
    opacity: 0;
    transform: translateY(18px) scale(.965);
    filter: blur(6px);
    animation: wsmCompanySignatureNodeReveal .62s cubic-bezier(.22,1,.36,1) forwards;
}

.wsm-signature-hero-board .node-a {
    animation-delay: .78s;
}

.wsm-signature-hero-board .node-b {
    animation-delay: .92s;
}

.wsm-signature-hero-board .node-c {
    animation-delay: 1.06s;
}

.wsm-signature-hero-board .node-d {
    animation-delay: 1.20s;
}

@keyframes wsmCompanySignatureNodeReveal {
    to {
        opacity: 1;
        transform: translateY(0) scale(1);
        filter: blur(0);
    }
}

.wsm-signature-hero-board .wsm-company-system-body:has(.node-a:hover) .line-a,
.wsm-signature-hero-board .wsm-company-system-body:has(.node-b:hover) .line-b,
.wsm-signature-hero-board .wsm-company-system-body:has(.node-c:hover) .line-c,
.wsm-signature-hero-board .wsm-company-system-body:has(.node-d:hover) .line-d {
    stroke: rgba(0,168,200,.88);
    stroke-width: 2.8;
    filter: drop-shadow(0 0 8px rgba(0,168,200,.32));
}

@media (max-width: 1100px) {
    .wsm-signature-hero-board .wsm-company-system-lines {
        display: none;
    }
}

@media (max-width: 767.98px) {
    .wsm-signature-hero-board,
    .wsm-signature-hero-board .wsm-company-node,
    .wsm-signature-hero-board .wsm-company-core {
        opacity: 1 !important;
        filter: none !important;
        animation: none !important;
        transform: none !important;
    }

        .wsm-signature-hero-board::before {
            display: none;
        }
}

@media (prefers-reduced-motion: reduce) {
    .wsm-signature-hero-board,
    .wsm-signature-hero-board *,
    .wsm-signature-hero-board::before {
        animation: none !important;
        transition-duration: .001ms !important;
        opacity: 1 !important;
        filter: none !important;
    }
}

/* =========================================================
   14–16 INCH LAPTOP HERO BOARD POLISH
   Makes right-side system boards proportional like Home.
========================================================= */

@media (min-width: 1200px) and (max-width: 1599.98px) {
    .wsm-company-hero-editorial,
    .wsm-cap-hero-level3 .wsm-cap-hero-grid {
        grid-template-columns: minmax(0, 1.05fr) minmax(520px, .82fr) !important;
        gap: clamp(44px, 4.2vw, 76px) !important;
    }

    .wsm-company-system-card,
    .wsm-cap-hero-board {
        max-width: 760px !important;
        margin-left: auto !important;
        margin-right: 18px !important;
        transform-origin: center right !important;
    }

    .wsm-company-system-body,
    .wsm-cap-board-canvas {
        min-height: 430px !important;
    }

    .wsm-company-node,
    .wsm-cap-node {
        width: 220px !important;
        padding: 20px 18px !important;
    }

    .wsm-company-core,
    .wsm-cap-core {
        width: 210px !important;
        min-height: 136px !important;
        padding: 22px !important;
    }
}

/* =========================================================
   COMPANY HERO BOARD — RESPONSIVE PROPORTION FINAL
   Matches Home right-side board feeling across 14/15/16-inch laptops,
   tablets, and mobile. Prevents card overlap and crowded core.
========================================================= */

/* 14–16 inch laptops / medium desktops */
@media (min-width: 1200px) and (max-width: 1599.98px) {
    .wsm-company-hero-editorial,
    .wsm-company-hero-grid {
        grid-template-columns: minmax(0, 1.05fr) minmax(500px, .78fr) !important;
        gap: clamp(44px, 4vw, 72px) !important;
        align-items: center !important;
    }

    .wsm-company-system-card {
        width: 100% !important;
        max-width: 760px !important;
        margin-left: auto !important;
        margin-right: 18px !important;
        border-radius: 28px !important;
    }

    .wsm-company-system-body {
        min-height: 430px !important;
    }

    .wsm-company-node {
        width: 220px !important;
        min-height: 118px !important;
        padding: 20px 18px 18px !important;
    }

        .wsm-company-node i {
            font-size: 2.45rem !important;
            left: 14px !important;
            top: 9px !important;
        }

        .wsm-company-node strong {
            padding-top: 24px !important;
            font-size: .98rem !important;
        }

        .wsm-company-node span {
            font-size: .80rem !important;
            line-height: 1.42 !important;
        }

    .wsm-company-core {
        width: 205px !important;
        min-height: 132px !important;
        padding: 20px !important;
        border-radius: 18px !important;
    }

        .wsm-company-core strong {
            font-size: 1.06rem !important;
        }

        .wsm-company-core span {
            font-size: .70rem !important;
        }

    .wsm-company-system-body .node-a {
        left: 28px !important;
        top: 38px !important;
    }

    .wsm-company-system-body .node-b {
        right: 28px !important;
        top: 58px !important;
    }

    .wsm-company-system-body .node-c {
        left: 34px !important;
        bottom: 48px !important;
    }

    .wsm-company-system-body .node-d {
        right: 34px !important;
        bottom: 42px !important;
    }
}

/* Tablets and small laptops */
@media (min-width: 768px) and (max-width: 1199.98px) {
    .wsm-company-hero-editorial,
    .wsm-company-hero-grid {
        grid-template-columns: 1fr !important;
        gap: 34px !important;
    }

    .wsm-company-system-card {
        width: 100% !important;
        max-width: 820px !important;
        margin: 30px auto 0 !important;
        border-radius: 24px !important;
        overflow: hidden !important;
    }

    .wsm-company-system-body {
        position: relative !important;
        min-height: auto !important;
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 16px !important;
        padding: 24px !important;
        align-items: stretch !important;
    }

        .wsm-company-system-body::before,
        .wsm-company-line-svg {
            display: none !important;
        }

    .wsm-company-core {
        position: relative !important;
        left: auto !important;
        right: auto !important;
        top: auto !important;
        bottom: auto !important;
        inset: auto !important;
        transform: none !important;
        width: 100% !important;
        max-width: 440px !important;
        min-height: 145px !important;
        margin: 0 auto 10px !important;
        grid-column: 1 / -1 !important;
        order: 1 !important;
        z-index: 2 !important;
        animation: none !important;
    }

    .wsm-company-node,
    .wsm-company-system-body .node-a,
    .wsm-company-system-body .node-b,
    .wsm-company-system-body .node-c,
    .wsm-company-system-body .node-d {
        position: relative !important;
        left: auto !important;
        right: auto !important;
        top: auto !important;
        bottom: auto !important;
        inset: auto !important;
        transform: none !important;
        width: 100% !important;
        min-height: 128px !important;
        z-index: 1 !important;
    }

    .wsm-company-system-body .node-a {
        order: 2 !important;
    }

    .wsm-company-system-body .node-b {
        order: 3 !important;
    }

    .wsm-company-system-body .node-c {
        order: 4 !important;
    }

    .wsm-company-system-body .node-d {
        order: 5 !important;
    }
}

/* Mobile */
@media (max-width: 767.98px) {
    .wsm-company-system-card {
        width: 100% !important;
        max-width: 100% !important;
        margin: 26px auto 0 !important;
        border-radius: 22px !important;
        overflow: hidden !important;
    }

    .wsm-company-system-head {
        min-height: auto !important;
        padding: 16px 18px !important;
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 6px !important;
        align-items: start !important;
    }

        .wsm-company-system-head span,
        .wsm-company-system-head strong {
            white-space: normal !important;
            line-height: 1.35 !important;
        }

    .wsm-company-system-body {
        position: relative !important;
        min-height: auto !important;
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 14px !important;
        padding: 18px !important;
        align-items: stretch !important;
    }

        .wsm-company-system-body::before,
        .wsm-company-line-svg {
            display: none !important;
        }

    .wsm-company-core {
        position: relative !important;
        left: auto !important;
        right: auto !important;
        top: auto !important;
        bottom: auto !important;
        inset: auto !important;
        transform: none !important;
        width: 100% !important;
        max-width: 100% !important;
        min-height: 132px !important;
        margin: 0 !important;
        order: 1 !important;
        z-index: 1 !important;
        animation: none !important;
    }

    .wsm-company-node,
    .wsm-company-system-body .node-a,
    .wsm-company-system-body .node-b,
    .wsm-company-system-body .node-c,
    .wsm-company-system-body .node-d {
        position: relative !important;
        left: auto !important;
        right: auto !important;
        top: auto !important;
        bottom: auto !important;
        inset: auto !important;
        transform: none !important;
        width: 100% !important;
        min-height: 120px !important;
        z-index: 1 !important;
    }

    .wsm-company-system-body .node-a {
        order: 2 !important;
    }

    .wsm-company-system-body .node-b {
        order: 3 !important;
    }

    .wsm-company-system-body .node-c {
        order: 4 !important;
    }

    .wsm-company-system-body .node-d {
        order: 5 !important;
    }
}

/* =========================================================
   FINAL FIX — COMPANY + CAPABILITIES TABLET/MOBILE BOARD
   Removes blank gap, shows center core, stacks cleanly.
========================================================= */

@media (max-width: 1199.98px) {

    .wsm-company-system-card,
    .wsm-cap-hero-board {
        width: 100% !important;
        max-width: 820px !important;
        margin: 28px auto 0 !important;
        overflow: hidden !important;
    }

    .wsm-company-system-body,
    .wsm-cap-board-body {
        min-height: 0 !important;
        height: auto !important;
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 16px !important;
        padding: 22px !important;
        align-items: stretch !important;
    }

        .wsm-company-system-body::before,
        .wsm-cap-board-body::before,
        .wsm-company-line-svg,
        .wsm-cap-line-svg {
            display: none !important;
        }

    .wsm-company-core,
    .wsm-cap-core {
        position: relative !important;
        inset: auto !important;
        left: auto !important;
        top: auto !important;
        right: auto !important;
        bottom: auto !important;
        transform: none !important;
        display: grid !important;
        visibility: visible !important;
        opacity: 1 !important;
        width: 100% !important;
        max-width: 440px !important;
        min-height: 138px !important;
        margin: 0 auto 4px !important;
        grid-column: 1 / -1 !important;
        order: 1 !important;
        z-index: 5 !important;
        animation: none !important;
    }

    .wsm-company-node,
    .wsm-cap-node {
        position: relative !important;
        inset: auto !important;
        left: auto !important;
        top: auto !important;
        right: auto !important;
        bottom: auto !important;
        transform: none !important;
        width: 100% !important;
        min-height: 126px !important;
        z-index: 2 !important;
    }

    .node-a,
    .cap-node-a {
        order: 2 !important;
    }

    .node-b,
    .cap-node-b {
        order: 3 !important;
    }

    .node-c,
    .cap-node-c {
        order: 4 !important;
    }

    .node-d,
    .cap-node-d {
        order: 5 !important;
    }
}

@media (max-width: 767.98px) {

    .wsm-company-system-card,
    .wsm-cap-hero-board {
        max-width: 100% !important;
        margin-top: 24px !important;
        border-radius: 22px !important;
    }

    .wsm-company-system-body,
    .wsm-cap-board-body {
        grid-template-columns: 1fr !important;
        gap: 14px !important;
        padding: 18px !important;
    }

    .wsm-company-core,
    .wsm-cap-core {
        max-width: 100% !important;
        min-height: 132px !important;
        margin: 0 !important;
    }

    .wsm-company-node,
    .wsm-cap-node {
        min-height: 118px !important;
    }
}