﻿/* =========================================================
   WILLSMARG CAREERS — LEVEL 5 PREMIUM PAGE
   File: wwwroot/css/Careers.css
========================================================= */

:root {
    --wsm-careers-bg: #f7f9fc;
    --wsm-careers-surface: #fff;
    --wsm-careers-ink: #0b1f3a;
    --wsm-careers-ink-2: #20324d;
    --wsm-careers-muted: #64748b;
    --wsm-careers-line: #dfe7ef;
    --wsm-careers-teal: #00a8c8;
    --wsm-careers-teal-2: #e5fbff;
    --wsm-careers-teal-dark: #007d95;
    --wsm-careers-shadow: 0 16px 42px rgba(11,31,58,.075);
    --wsm-careers-shadow-lg: 0 28px 72px rgba(11,31,58,.13);
    --wsm-careers-radius: 24px
}

.wsm-careers-page {
    color: var(--wsm-careers-ink);
    background: var(--wsm-careers-bg);
    overflow-x: hidden
}

.wsm-careers-shell {
    width: 100%;
    max-width: none;
    padding-left: 32px;
    padding-right: 32px;
    margin: 0 auto
}

.wsm-careers-section {
    position: relative;
    padding: clamp(64px,5vw,96px) 0;
    border-bottom: 1px solid var(--wsm-careers-line)
}

.wsm-careers-head h2, .wsm-careers-split-head h2, .wsm-careers-cta-card h2 {
    margin: 22px 0 14px;
    color: var(--wsm-careers-ink);
    font-size: clamp(2.25rem,3.15vw,4.25rem);
    line-height: 1.05;
    letter-spacing: -.055em;
    font-weight: 950
}

.wsm-careers-head p, .wsm-careers-split-head p, .wsm-careers-model-card p, .wsm-careers-flow-card p, .wsm-job-card p, .wsm-careers-culture-grid p, .wsm-careers-cta-card p {
    color: var(--wsm-careers-muted);
    font-size: clamp(.95rem,.9vw,1.04rem);
    line-height: 1.72;
    font-weight: 620
}

.wsm-careers-head-center {
    max-width: 1120px;
    margin: 0 auto clamp(34px,4vw,54px);
    text-align: center
}

    .wsm-careers-head-center p {
        max-width: 880px;
        margin-left: auto;
        margin-right: auto
    }

.wsm-careers-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-careers-hero {
    position: relative;
    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-careers-line);
    overflow: hidden
}

    .wsm-careers-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-careers-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-careers-hero-copy h1 {
    max-width: 1120px;
    margin: 26px 0 22px;
    color: var(--wsm-careers-ink);
    font-size: clamp(3rem,5vw,6.15rem);
    line-height: .99;
    letter-spacing: -.072em;
    font-weight: 950
}

.wsm-careers-hero-copy p {
    max-width: 1040px;
    color: var(--wsm-careers-muted);
    font-size: clamp(1rem,1.05vw,1.15rem);
    line-height: 1.82;
    font-weight: 620
}

.wsm-careers-hero-actions, .wsm-job-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 30px
}

.wsm-careers-proof-strip {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 30px
}

    .wsm-careers-proof-strip span {
        min-height: 40px;
        display: inline-flex;
        align-items: center;
        gap: 8px;
        padding: 0 14px;
        border-radius: 999px;
        color: var(--wsm-careers-ink);
        background: rgba(255,255,255,.88);
        border: 1px solid var(--wsm-careers-line);
        box-shadow: 0 8px 22px rgba(11,31,58,.045);
        font-size: .86rem;
        font-weight: 900
    }

    .wsm-careers-proof-strip i {
        color: var(--wsm-careers-teal-dark)
    }

.wsm-careers-system-card {
    position: relative;
    width: 100%;
    max-width: 850px;
    margin-left: auto;
    border: 1px solid var(--wsm-careers-line);
    border-radius: 30px;
    background: rgba(255,255,255,.96);
    box-shadow: var(--wsm-careers-shadow);
    overflow: hidden;
    animation: wsmCareersBoardIn .85s cubic-bezier(.22,1,.36,1) both
}

@keyframes wsmCareersBoardIn {
    from {
        opacity: 0;
        transform: translateY(28px) scale(.975);
        filter: blur(8px)
    }

    to {
        opacity: 1;
        transform: translateY(0) scale(1);
        filter: blur(0)
    }
}

.wsm-careers-system-card:after {
    content: "";
    position: absolute;
    inset: 0;
    transform: translateX(-120%);
    background: linear-gradient(90deg,transparent,rgba(255,255,255,.55),transparent);
    animation: wsmCareersBoardSweep 1.1s ease .45s both;
    pointer-events: none
}

@keyframes wsmCareersBoardSweep {
    to {
        transform: translateX(120%)
    }
}

.wsm-careers-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-careers-line);
    background: #fbfdff
}

    .wsm-careers-system-head span, .wsm-careers-system-head strong {
        text-transform: uppercase;
        letter-spacing: .11em;
        font-size: .74rem;
        font-weight: 950;
        color: #8a98aa
    }

    .wsm-careers-system-head strong {
        color: var(--wsm-careers-teal-dark)
    }

.wsm-careers-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;
    isolation: isolate
}

    .wsm-careers-system-body:before {
        content: "";
        position: absolute;
        inset: 12%;
        border: 1px dashed rgba(0,168,200,.30);
        border-radius: 34px;
        z-index: 0
    }

.wsm-careers-line-svg {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
    pointer-events: none
}

.wsm-careers-line {
    fill: none;
    stroke: rgba(0,168,200,.45);
    stroke-width: 2;
    stroke-linecap: round;
    stroke-dasharray: 640;
    stroke-dashoffset: 640;
    animation: wsmCareersLineDraw 1.25s cubic-bezier(.22,1,.36,1) forwards
}

.line-a {
    animation-delay: .55s
}

.line-b {
    animation-delay: .72s
}

.line-c {
    animation-delay: .88s
}

.line-d {
    animation-delay: 1.04s
}

@keyframes wsmCareersLineDraw {
    to {
        stroke-dashoffset: 0
    }
}

.wsm-careers-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-careers-ink);
    box-shadow: 0 22px 56px rgba(11,31,58,.24);
    display: grid;
    place-items: center;
    text-align: center;
    z-index: 5;
    animation: wsmCareersCoreIn .82s cubic-bezier(.22,1,.36,1) .35s both,wsmCareersCoreFloat 6s ease-in-out 1.4s infinite
}

@keyframes wsmCareersCoreIn {
    from {
        opacity: 0;
        transform: translate(-50%,-44%) scale(.92);
        filter: blur(6px)
    }

    to {
        opacity: 1;
        transform: translate(-50%,-50%) scale(1);
        filter: blur(0)
    }
}

@keyframes wsmCareersCoreFloat {
    0%,100% {
        transform: translate(-50%,-50%)
    }

    50% {
        transform: translate(-50%,calc(-50% - 6px))
    }
}

.wsm-careers-core small {
    color: #9ceeff;
    font-weight: 850;
    letter-spacing: .12em
}

.wsm-careers-core strong {
    font-size: 1.24rem;
    line-height: 1.22;
    font-weight: 950
}

.wsm-careers-core span {
    color: rgba(255,255,255,.74);
    font-size: .76rem;
    font-weight: 800
}

.wsm-careers-node {
    position: absolute;
    width: 250px;
    min-height: 124px;
    padding: 24px 22px 20px;
    border-radius: 18px;
    border: 1px solid var(--wsm-careers-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;
    z-index: 4;
    opacity: 0;
    animation: wsmCareersNodeIn .75s cubic-bezier(.22,1,.36,1) forwards
}

    .wsm-careers-node:hover {
        transform: translateY(-5px);
        border-color: rgba(0,168,200,.32);
        box-shadow: 0 22px 50px rgba(11,31,58,.12)
    }

    .wsm-careers-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-careers-node strong {
        position: relative;
        z-index: 1;
        display: block;
        padding-top: 28px;
        margin-bottom: 6px;
        color: var(--wsm-careers-ink);
        line-height: 1.22;
        font-weight: 950
    }

    .wsm-careers-node span {
        position: relative;
        z-index: 1;
        display: block;
        color: var(--wsm-careers-muted);
        line-height: 1.45;
        font-size: .86rem;
        font-weight: 650
    }

@keyframes wsmCareersNodeIn {
    from {
        opacity: 0;
        transform: translateY(18px) scale(.97);
        filter: blur(6px)
    }

    to {
        opacity: 1;
        transform: translateY(0) scale(1);
        filter: blur(0)
    }
}

.wsm-careers-node.node-a {
    left: 32px;
    top: 42px;
    animation-delay: .72s
}

.wsm-careers-node.node-b {
    right: 32px;
    top: 70px;
    animation-delay: .88s
}

.wsm-careers-node.node-c {
    left: 42px;
    bottom: 54px;
    animation-delay: 1.04s
}

.wsm-careers-node.node-d {
    right: 42px;
    bottom: 44px;
    animation-delay: 1.2s
}

.wsm-careers-system-foot {
    display: grid;
    grid-template-columns: repeat(3,1fr);
    border-top: 1px solid var(--wsm-careers-line)
}

    .wsm-careers-system-foot span {
        padding: 18px;
        border-right: 1px solid var(--wsm-careers-line);
        color: var(--wsm-careers-ink);
        font-size: .84rem;
        font-weight: 950
    }

        .wsm-careers-system-foot span:last-child {
            border-right: 0
        }

.wsm-careers-model-grid, .wsm-careers-culture-grid {
    display: grid;
    grid-template-columns: repeat(4,minmax(0,1fr));
    gap: 22px
}

    .wsm-careers-model-card, .wsm-careers-culture-grid article {
        position: relative;
        min-height: 310px;
        padding: 30px 28px;
        border-radius: var(--wsm-careers-radius);
        background: #fff;
        border: 1px solid var(--wsm-careers-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-careers-model-card:hover, .wsm-careers-culture-grid article:hover, .wsm-job-card:hover {
            transform: translateY(-7px);
            border-color: rgba(0,168,200,.34);
            box-shadow: 0 24px 58px rgba(11,31,58,.11)
        }

        .wsm-careers-model-card.is-featured {
            border-color: rgba(0,168,200,.42);
            background: linear-gradient(180deg,#fff,rgba(229,251,255,.35));
            box-shadow: 0 24px 62px rgba(0,168,200,.12)
        }

.wsm-careers-icon-title {
    position: relative;
    isolation: isolate;
    min-height: 92px;
    margin-bottom: 12px
}

    .wsm-careers-icon-title i, .wsm-careers-culture-grid i {
        position: absolute;
        left: 22px;
        top: 20px;
        z-index: 0;
        color: rgba(0,168,200,.18);
        font-size: 4.2rem;
        line-height: 1;
        pointer-events: none
    }

    .wsm-careers-icon-title h3, .wsm-careers-culture-grid h3 {
        position: relative;
        z-index: 1;
        padding-top: 58px;
        margin: 0 0 12px;
        color: var(--wsm-careers-ink);
        font-size: clamp(1.08rem,1vw,1.28rem);
        line-height: 1.25;
        letter-spacing: -.025em;
        font-weight: 950
    }

.wsm-careers-path-section, .wsm-careers-culture-section {
    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-careers-path-flow {
    position: relative;
    display: grid;
    grid-template-columns: repeat(5,minmax(0,1fr));
    gap: 22px;
    align-items: stretch;
    padding-top: 46px;
    isolation: isolate
}

    .wsm-careers-path-flow:before {
        content: "";
        position: absolute;
        left: 5%;
        right: 5%;
        top: 72px;
        height: 2px;
        background: linear-gradient(90deg,transparent,rgba(0,168,200,.55),transparent);
        z-index: 0
    }

    .wsm-careers-path-flow:after {
        content: "";
        position: absolute;
        left: 5%;
        top: 72px;
        width: 12%;
        height: 2px;
        background: linear-gradient(90deg,transparent,rgba(0,168,200,.95),transparent);
        z-index: 1;
        animation: wsmCareersTimelineScan 4.8s cubic-bezier(.22,1,.36,1) infinite
    }

@keyframes wsmCareersTimelineScan {
    0% {
        transform: translateX(0);
        opacity: 0
    }

    15% {
        opacity: 1
    }

    80% {
        opacity: 1
    }

    100% {
        transform: translateX(660%);
        opacity: 0
    }
}

.wsm-careers-flow-card {
    position: relative;
    z-index: 2;
    min-height: 270px;
    padding: 42px 26px 28px;
    border-radius: 24px;
    background: linear-gradient(180deg,rgba(255,255,255,.98),rgba(255,255,255,.94)),radial-gradient(circle at 92% 12%,rgba(0,168,200,.10),transparent 34%);
    border: 1px solid var(--wsm-careers-line);
    box-shadow: 0 16px 42px rgba(11,31,58,.07);
    overflow: hidden;
    transition: transform .34s cubic-bezier(.22,1,.36,1),box-shadow .34s cubic-bezier(.22,1,.36,1),border-color .28s ease
}

    .wsm-careers-flow-card:before {
        content: "";
        position: absolute;
        left: 28px;
        top: -34px;
        width: 18px;
        height: 72px;
        border-radius: 999px;
        background: linear-gradient(180deg,rgba(0,168,200,0),rgba(0,168,200,.45));
        opacity: .55;
        z-index: 2
    }

    .wsm-careers-flow-card:after {
        content: "";
        position: absolute;
        left: 22px;
        top: 16px;
        width: 30px;
        height: 30px;
        border-radius: 999px;
        background: #fff;
        border: 7px solid rgba(0,168,200,.20);
        box-shadow: 0 0 0 1px rgba(0,168,200,.24),0 14px 30px rgba(0,168,200,.16);
        z-index: 3
    }

    .wsm-careers-flow-card:hover {
        transform: translateY(-9px);
        border-color: rgba(0,168,200,.42);
        box-shadow: 0 26px 64px rgba(11,31,58,.12)
    }

    .wsm-careers-flow-card i {
        position: absolute;
        left: 30px;
        top: 54px;
        color: rgba(0,168,200,.18);
        font-size: clamp(4rem,4.4vw,5.4rem);
        line-height: 1;
        z-index: 0;
        pointer-events: none
    }

    .wsm-careers-flow-card h3 {
        position: relative;
        z-index: 2;
        margin: 72px 0 12px;
        color: var(--wsm-careers-ink);
        font-size: clamp(1.12rem,1.08vw,1.34rem);
        line-height: 1.22;
        letter-spacing: -.03em;
        font-weight: 950
    }

    .wsm-careers-flow-card p {
        position: relative;
        z-index: 2;
        margin: 0
    }

.wsm-careers-filter-panel {
    display: grid;
    grid-template-columns: 1.2fr repeat(3,minmax(180px,.65fr));
    gap: 14px;
    padding: 18px;
    margin-bottom: 26px;
    border-radius: 24px;
    background: #fff;
    border: 1px solid var(--wsm-careers-line);
    box-shadow: 0 14px 36px rgba(11,31,58,.06)
}

    .wsm-careers-filter-panel label {
        display: block;
        margin-bottom: 8px;
        color: var(--wsm-careers-ink);
        font-size: .78rem;
        text-transform: uppercase;
        letter-spacing: .1em;
        font-weight: 950
    }

    .wsm-careers-filter-panel input, .wsm-careers-filter-panel select {
        width: 100%;
        min-height: 48px;
        padding: 0 14px;
        border-radius: 14px;
        border: 1px solid var(--wsm-careers-line);
        color: var(--wsm-careers-ink);
        background: #fbfdff;
        font-weight: 800;
        outline: none
    }

.wsm-careers-job-grid {
    display: grid;
    grid-template-columns: repeat(3,minmax(0,1fr));
    gap: 22px
}

.wsm-job-card {
    position: relative;
    min-height: 350px;
    padding: 28px;
    border-radius: 24px;
    background: #fff;
    border: 1px solid var(--wsm-careers-line);
    box-shadow: 0 14px 36px rgba(11,31,58,.06);
    transition: transform .25s ease,border-color .25s ease,box-shadow .25s ease
}

.wsm-job-top, .wsm-job-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 10px
}

.wsm-job-top {
    justify-content: space-between;
    margin-bottom: 18px
}

.wsm-job-badge, .wsm-job-priority, .wsm-job-meta span {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    min-height: 32px;
    padding: 0 11px;
    border-radius: 999px;
    background: var(--wsm-careers-teal-2);
    color: var(--wsm-careers-teal-dark);
    border: 1px solid rgba(0,168,200,.20);
    font-size: .78rem;
    font-weight: 950
}

.wsm-job-priority {
    background: #fff7ed;
    color: #b45309;
    border-color: rgba(245,158,11,.26)
}

.wsm-job-card h3 {
    margin: 0 0 12px;
    color: var(--wsm-careers-ink);
    font-size: 1.25rem;
    line-height: 1.22;
    font-weight: 950;
    letter-spacing: -.025em
}

.wsm-job-meta {
    margin-top: 22px
}

.wsm-job-actions {
    margin-top: 24px
}

.wsm-careers-cta-section {
    background: #f7f9fc
}

.wsm-careers-cta-card {
    max-width: 1500px;
    margin: 0 auto;
    padding: clamp(34px,5vw,74px);
    text-align: center;
    border-radius: 30px;
    background: linear-gradient(rgba(11,31,58,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(11,31,58,.035) 1px,transparent 1px),#fff;
    background-size: 34px 34px;
    border: 1px solid var(--wsm-careers-line);
    box-shadow: var(--wsm-careers-shadow-lg)
}

    .wsm-careers-cta-card p {
        max-width: 860px;
        margin: 0 auto 24px
    }

@media (min-width:1200px) and (max-width:1599.98px) {
    .wsm-careers-hero-grid {
        grid-template-columns: minmax(0,1.05fr) minmax(500px,.78fr);
        gap: clamp(44px,4vw,72px)
    }

    .wsm-careers-system-card {
        max-width: 760px;
        margin-right: 18px
    }

    .wsm-careers-system-body {
        min-height: 430px
    }

    .wsm-careers-node {
        width: 220px;
        min-height: 118px;
        padding: 20px 18px 18px
    }

        .wsm-careers-node i {
            font-size: 2.45rem;
            left: 14px;
            top: 9px
        }

        .wsm-careers-node strong {
            padding-top: 24px;
            font-size: .98rem
        }

        .wsm-careers-node span {
            font-size: .80rem;
            line-height: 1.42
        }

    .wsm-careers-core {
        width: 205px;
        min-height: 132px;
        padding: 20px;
        border-radius: 18px
    }

        .wsm-careers-core strong {
            font-size: 1.06rem
        }

        .wsm-careers-core span {
            font-size: .70rem
        }

    .wsm-careers-node.node-a {
        left: 28px;
        top: 38px
    }

    .wsm-careers-node.node-b {
        right: 28px;
        top: 58px
    }

    .wsm-careers-node.node-c {
        left: 34px;
        bottom: 48px
    }

    .wsm-careers-node.node-d {
        right: 34px;
        bottom: 42px
    }

    .wsm-careers-model-grid, .wsm-careers-culture-grid {
        grid-template-columns: repeat(2,minmax(0,1fr))
    }

    .wsm-careers-path-flow {
        grid-template-columns: repeat(5,minmax(190px,1fr));
        gap: 16px
    }

    .wsm-careers-flow-card {
        min-height: 285px;
        padding: 40px 22px 26px
    }

    .wsm-careers-job-grid {
        grid-template-columns: repeat(2,minmax(0,1fr))
    }
}

@media (max-width:1199.98px) {
    .wsm-careers-hero-grid, .wsm-careers-split-head {
        grid-template-columns: 1fr;
        gap: 34px
    }

    .wsm-careers-system-card {
        width: 100%;
        max-width: 820px;
        margin: 30px auto 0;
        border-radius: 24px;
        overflow: hidden
    }

    .wsm-careers-system-body {
        position: relative;
        min-height: auto;
        display: grid;
        grid-template-columns: repeat(2,minmax(0,1fr));
        gap: 16px;
        padding: 24px;
        align-items: stretch
    }

        .wsm-careers-system-body:before, .wsm-careers-line-svg {
            display: none
        }

    .wsm-careers-core {
        position: relative;
        inset: auto;
        transform: none;
        width: 100%;
        max-width: 440px;
        min-height: 145px;
        margin: 0 auto 10px;
        grid-column: 1/-1;
        order: 1;
        z-index: 2;
        animation: none
    }

    .wsm-careers-node, .wsm-careers-node.node-a, .wsm-careers-node.node-b, .wsm-careers-node.node-c, .wsm-careers-node.node-d {
        position: relative;
        inset: auto;
        transform: none;
        width: 100%;
        min-height: 128px;
        z-index: 1;
        opacity: 1;
        animation: none
    }

        .wsm-careers-node.node-a {
            order: 2
        }

        .wsm-careers-node.node-b {
            order: 3
        }

        .wsm-careers-node.node-c {
            order: 4
        }

        .wsm-careers-node.node-d {
            order: 5
        }

    .wsm-careers-model-grid, .wsm-careers-path-flow, .wsm-careers-culture-grid {
        grid-template-columns: repeat(2,minmax(0,1fr))
    }

    .wsm-careers-path-flow {
        padding-top: 0
    }

        .wsm-careers-path-flow:before, .wsm-careers-path-flow:after, .wsm-careers-flow-card:before, .wsm-careers-flow-card:after {
            display: none
        }

    .wsm-careers-flow-card {
        min-height: auto;
        padding: 28px 24px
    }

        .wsm-careers-flow-card i {
            left: 24px;
            top: 22px;
            font-size: 4.2rem
        }

        .wsm-careers-flow-card h3 {
            margin-top: 62px
        }

    .wsm-careers-filter-panel, .wsm-careers-job-grid {
        grid-template-columns: repeat(2,minmax(0,1fr))
    }
}

@media (max-width:767.98px) {
    .wsm-careers-shell {
        padding-left: 18px;
        padding-right: 18px
    }

    .wsm-careers-hero {
        padding-top: 48px;
        padding-bottom: 60px
    }

    .wsm-careers-hero-copy h1 {
        font-size: clamp(2.35rem,10vw,3.45rem);
        line-height: 1.02;
        letter-spacing: -.055em
    }

    .wsm-careers-hero-actions .wsm-btn {
        width: 100%
    }

    .wsm-careers-proof-strip span {
        width: 100%;
        justify-content: center
    }

    .wsm-careers-system-card {
        max-width: 100%;
        margin-top: 26px;
        border-radius: 22px
    }

    .wsm-careers-system-head {
        min-height: auto;
        padding: 16px 18px;
        display: grid;
        grid-template-columns: 1fr;
        gap: 6px
    }

    .wsm-careers-system-body {
        grid-template-columns: 1fr;
        gap: 14px;
        padding: 18px
    }

    .wsm-careers-core {
        max-width: 100%;
        min-height: 132px;
        margin: 0
    }

    .wsm-careers-system-foot, .wsm-careers-model-grid, .wsm-careers-path-flow, .wsm-careers-filter-panel, .wsm-careers-job-grid, .wsm-careers-culture-grid {
        grid-template-columns: 1fr
    }

        .wsm-careers-system-foot span {
            border-right: 0;
            border-bottom: 1px solid var(--wsm-careers-line)
        }

        .wsm-careers-model-card, .wsm-careers-flow-card, .wsm-job-card, .wsm-careers-culture-grid article {
            min-height: auto;
            padding: 24px 22px
        }

            .wsm-careers-flow-card i {
                left: 22px;
                top: 20px;
                font-size: 3.6rem
            }

            .wsm-careers-flow-card h3 {
                margin-top: 54px;
                font-size: 1.1rem
            }

    .wsm-careers-cta-card {
        border-radius: 24px
    }
}

@media (prefers-reduced-motion:reduce) {
    .wsm-careers-system-card, .wsm-careers-system-card:after, .wsm-careers-core, .wsm-careers-node, .wsm-careers-line, .wsm-careers-path-flow:after {
        animation: none !important;
        transition-duration: .001ms !important
    }

    .wsm-careers-node, .wsm-careers-system-card, .wsm-careers-core {
        opacity: 1 !important;
        filter: none !important
    }
}
