    .page-transition-overlay {
        position: fixed;
        inset: 0;
        z-index: 4000;
        pointer-events: none;
        background:
            radial-gradient(1200px 520px at 82% 18%, rgba(253, 58, 37, 0.18) 0%, rgba(253, 58, 37, 0.07) 24%, transparent 56%),
            radial-gradient(900px 420px at 18% 82%, rgba(255,255,255,0.04) 0%, transparent 60%),
            linear-gradient(180deg, #070708 0%, #111114 100%);
        transform: translate3d(0, 100%, 0);
        transition: transform 0.62s cubic-bezier(0.19, 1, 0.22, 1);
        will-change: transform;
    }
    .page-transition-overlay::before {
        content: "";
        position: absolute;
        inset: 0;
        background: linear-gradient(90deg, transparent 0%, rgba(255,255,255,0.035) 48%, transparent 100%);
        opacity: 0.35;
        transform: translateX(-28%) skewX(-18deg);
        animation: pageTransitionSheen 0.95s ease-in-out both;
    }
    .page-transition-overlay::after {
        content: "";
        position: absolute;
        inset: 0;
        background: linear-gradient(135deg, transparent 0%, rgba(255,255,255,0.02) 40%, transparent 100%);
        opacity: 0.72;
    }
    .page-transition-brand {
        position: absolute;
        top: 50%;
        left: 50%;
        z-index: 2;
        transform: translate(-50%, -50%);
        font-size: clamp(42px, 8vw, 110px);
        line-height: 0.92;
        font-weight: 700;
        letter-spacing: -0.06em;
        color: rgba(255,255,255,0.9);
        text-shadow: 0 10px 40px rgba(0,0,0,0.28);
        white-space: nowrap;
        opacity: 0;
        filter: blur(10px);
        transition: opacity 0.24s ease, filter 0.36s ease, transform 0.50s cubic-bezier(0.19, 1, 0.22, 1);
    }
    .page-transition-brand span {
        display: inline-block;
        background: linear-gradient(180deg, rgba(255,255,255,0.98) 0%, rgba(255,255,255,0.72) 100%);
        -webkit-background-clip: text;
        background-clip: text;
        color: transparent;
    }
    .page-transition-brand::after {
        content: "";
        position: absolute;
        left: 50%;
        bottom: -16px;
        width: min(140px, 48%);
        height: 1px;
        transform: translateX(-50%);
        background: linear-gradient(90deg, rgba(255,59,38,0) 0%, rgba(255,59,38,0.9) 50%, rgba(255,59,38,0) 100%);
        opacity: 0.78;
    }
    @keyframes pageTransitionSheen {
        0% { opacity: 0; transform: translateX(-42%) skewX(-18deg); }
        30% { opacity: 0.42; }
        100% { opacity: 0; transform: translateX(42%) skewX(-18deg); }
    }
    body.page-transition-init .page-transition-overlay,
    body.page-transition-leave .page-transition-overlay {
        transform: translate3d(0, 0, 0);
    }
    body.page-transition-enter .page-transition-overlay {
        transform: translate3d(0, -100%, 0);
    }
    body.page-transition-init .page-transition-brand,
    body.page-transition-leave .page-transition-brand {
        opacity: 1;
        filter: blur(0);
        transform: translate(-50%, -50%) scale(1);
    }
    body.page-transition-enter .page-transition-brand {
        opacity: 0;
        filter: blur(12px);
        transform: translate(-50%, -50%) scale(1.035);
    }
    #wrapper,
    main {
        transition: opacity 0.36s ease, transform 0.52s cubic-bezier(0.19, 1, 0.22, 1), filter 0.36s ease;
        will-change: opacity, transform;
    }
    body.page-transition-leave #wrapper,
    body.page-transition-leave main {
        opacity: 0.88;
        transform: scale(0.984) translateY(8px);
        filter: saturate(0.92) blur(1.5px);
    }
    @media (prefers-reduced-motion: reduce) {
        .page-transition-overlay,
        #wrapper,
        main {
            transition: none !important;
        }
    }

    /* ================================================================
       WORK.HTML — Nos Réalisations — iBundle
       ================================================================ */

    :root {
        --brand:        #ff3b26;
        --brand-dim:    rgba(255,59,38,0.08);
        --brand-border: rgba(255,59,38,0.18);
        --bg:           #EDECEC;
        --bg-card:      #ffffff;
        --border:       rgba(0,0,0,0.08);
        --border-hover: rgba(0,0,0,0.14);
        --t1: #09090B;
        --t2: rgba(9,9,11,0.62);
        --t3: rgba(9,9,11,0.42);
        --page-gap: 88px;
        --title-track: -0.05em;
        --card-radius: 30px;
        --card-shadow: 0 14px 28px rgba(28, 28, 28, 0.08), 0 5px 0 rgba(28, 28, 28, 0.035);
    }
    @media (max-width: 991px) { :root { --page-gap: 68px; } }
    @media (max-width: 575px)  { :root { --page-gap: 50px; } }

    /* ================================================================
       FOND STATIQUE
       ================================================================ */
    html {
        background: #0d0d0d !important; /* correspond au fond du footer — évite le vide clair en overscroll */
        background-color: #0d0d0d !important;
    }
    body {
        background: #0d0d0d !important;
        background-color: #0d0d0d !important;
    }

    #wk-bg {
        position: fixed;
        inset: 0;
        z-index: 0;
        pointer-events: none;
        overflow: hidden;
        background: transparent;
    }

    #wk-bg::before,
    #wk-bg::after {
        content: none;
        position: absolute;
        inset: -12%;
        will-change: transform, opacity;
    }
    #wk-bg .wk-gold-dust {
        display: none;
    }

    #wk-bg .wk-glass-orb {
        display: none;
    }
    .bg-blob { display: none; }

    /* Stacking */
    .tf-header { z-index: 999; }
    #wrapper {
        position: relative; z-index: 1;
        background: #f6f4f1;
        background-color: #f6f4f1;
    }

    /* Sections — fonds transparents pour que les blobs traversent */
    .wk-filters, .wk-projects,
    .wk-domains, .wk-approach, .wk-cta {
        background: transparent;
    }

    /* Rythme global des sections — aligné avec index.html */
    :root {
        --wk-section-gap: 96px;
        --wk-section-separator-width: min(140px, 32vw);
        --wk-section-separator-bg: linear-gradient(
            90deg,
            rgba(124, 132, 145, 0) 0%,
            rgba(124, 132, 145, 0.24) 20%,
            rgba(124, 132, 145, 0.4) 50%,
            rgba(124, 132, 145, 0.24) 80%,
            rgba(124, 132, 145, 0) 100%
        );
    }
    .wk-projects,
    .wk-approach,
    .wk-cta {
        position: relative;
    }
    .wk-cta::before {
        content: "";
        position: absolute;
        top: 0;
        left: 50%;
        width: var(--wk-section-separator-width);
        height: 1px;
        transform: translate(-50%, -50%);
        background: var(--wk-section-separator-bg);
        pointer-events: none;
        z-index: 2;
    }

    /* ── Boutons surchargés — fluidité + éclat ───────── */
    .tf-btn {
        background: linear-gradient(135deg, #ff3b26 0%, #e02a15 100%) !important;
        border-color: transparent !important;
        box-shadow: 0 4px 24px rgba(255,59,38,0.28), inset 0 1px 0 rgba(255,255,255,0.12) !important;
        transition: transform 0.22s ease, box-shadow 0.22s ease, background 0.22s ease !important;
    }
    .tf-btn:hover {
        transform: translateY(-2px) !important;
        box-shadow: 0 8px 32px rgba(255,59,38,0.42), inset 0 1px 0 rgba(255,255,255,0.12) !important;
    }
    .tf-btn:active { transform: translateY(0) !important; }
    .tf-header .tf-btn {
        padding: 14px 24px !important;
        font-size: 16px !important;
        line-height: 24px !important;
        background: radial-gradient(62.56% 62.56% at 28.14% -10.42%, rgba(255, 255, 255, 0.2) 0%, rgba(255, 255, 255, 0) 100%), linear-gradient(0deg, #272727, #272727) !important;
        color: #ffffff !important;
        border-color: transparent !important;
        box-shadow: 0px -3px 0px 0px #080808 inset, 0px 1px 0px 0px rgba(255, 255, 255, 0.3019607843) inset, 0px 2.77px 2.21px 0px rgba(0, 0, 0, 0.1215686275), 0px 6.65px 5.32px 0px rgba(0, 0, 0, 0.1294117647), 0px 12.52px 10.02px 0px rgba(0, 0, 0, 0.1333333333), 0px 22.34px 17.87px 0px rgba(0, 0, 0, 0.1411764706), 0px 41.78px 33.42px 0px rgba(0, 0, 0, 0.1490196078), 0px 100px 80px 0px rgba(0, 0, 0, 0.1490196078), 0px 3px 3px 0px rgba(0, 0, 0, 0.1411764706), 0px 2.77px 2.21px 0px rgba(0, 0, 0, 0.1215686275) !important;
        transform: none !important;
    }
    .tf-header .tf-btn:hover {
        background: radial-gradient(62.56% 62.56% at 50% -13%, rgba(255, 255, 255, 0.7) 0%, rgba(255, 255, 255, 0) 100%), linear-gradient(0deg, #272727, #272727) !important;
        color: #ffffff !important;
        box-shadow: 0px -3px 0px 0px rgb(8, 8, 8) inset, 0px 1px 0px 0px rgba(255, 255, 255, 0.3) inset, 0px 2.77px 2.21px 0px rgba(0, 0, 0, 0.12), 0px 6.65px 5.32px 0px rgba(0, 0, 0, 0.13), 0px 12.52px 10.02px 0px rgba(0, 0, 0, 0.14), 0px 22.34px 17.87px 0px rgba(0, 0, 0, 0.14), 0px 41.78px 33.42px 0px rgba(0, 0, 0, 0.15), 0px 100px 80px 0px rgba(0, 0, 0, 0.15), 0px 3px 3px 0px rgba(0, 0, 0, 0.14), 0px 2.77px 2.21px 0px rgba(0, 0, 0, 0.12) !important;
        transform: none !important;
    }
    .logo-site {
        display: inline-flex;
        align-items: center;
        text-decoration: none;
    }
    .site-wordmark {
        display: block;
        color: #09090b;
        background: linear-gradient(110deg, #09090b 0%, #09090b 42%, #ff3b26 50%, #09090b 58%, #09090b 100%);
        background-size: 240% 100%;
        -webkit-background-clip: text;
        background-clip: text;
        color: transparent;
        font-size: clamp(22px, 1.8vw, 30px);
        font-weight: 650;
        line-height: 0.95;
        letter-spacing: -0.045em;
        text-decoration: none;
        transform: translateY(-1px);
        transition: background-position 0.7s cubic-bezier(0.19, 1, 0.22, 1), transform 0.24s ease, letter-spacing 0.24s ease;
    }
    .logo-site:hover .site-wordmark {
        background-position: 100% 0;
        letter-spacing: -0.05em;
        transform: translateY(-2px);
    }
    @media (min-width: 992px) {
        .tf-header .header-inner {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 22px;
        }
        .tf-header .logo-site {
            flex: 0 0 auto;
        }
        .tf-header .box-navigation {
            flex: 0 1 auto;
            width: auto;
            min-width: 0;
            margin-left: auto;
            margin-right: 0;
        }
        .tf-header .nav-menu-main {
            display: flex;
            align-items: center;
            gap: 34px;
        }
        .tf-header .header-inner > .tf-btn.d-lg-flex.d-none {
            flex: 0 0 auto;
            margin-left: 14px;
        }
    }

    .tf-btn-2 {
        border: 1px solid rgba(0,0,0,0.14) !important;
        background: rgba(255,255,255,0.70) !important;
        color: #09090B !important;
        transition: border-color 0.22s, background 0.22s, transform 0.22s, box-shadow 0.22s !important;
        backdrop-filter: blur(6px);
    }
    .tf-btn-2:hover {
        border-color: rgba(0,0,0,0.22) !important;
        background: #ffffff !important;
        transform: translateY(-2px) !important;
        box-shadow: 0 6px 24px rgba(0,0,0,0.10) !important;
    }

    /* ── Utilitaires ─────────────────────────────────── */
    .wk-eyebrow {
        display: inline-flex; align-items: center; gap: 8px;
        padding: 11px 18px;
        border-radius: 13px;
        background: #fff;
        border: 1px solid rgba(0,0,0,0.05);
        box-shadow: 0 8px 20px rgba(20,20,20,0.08), 0 4px 0 rgba(20,20,20,0.04);
        font-size: 14px; font-weight: 700; letter-spacing: -0.015em;
        text-transform: none; color: var(--brand);
        margin-bottom: 18px;
    }
    .wk-eyebrow::before {
        content: "";
        display: block;
        width: 8px; height: 8px; border-radius: 50%;
        background: var(--brand);
    }
    .wk-sep-line {
        height: 1px; margin: 0;
        background: linear-gradient(90deg, transparent 0%, var(--border) 20%, var(--border) 80%, transparent 100%);
    }

    /* ================================================================
       HERO — identique à index.html (section-hero natif)
       ================================================================ */
    /* Pas de CSS custom : on réutilise .section-hero de styles.css */

    /* ================================================================
       STATS — dans le hero (fond vidéo sombre)
       ================================================================ */
    .wk-hero-stats {
        display: inline-flex;
        margin-top: 32px;
        margin-bottom: 0;
        border-radius: 20px;
        overflow: hidden;
        border: 1px solid rgba(255,255,255,0.14);
        background: rgba(0,0,0,0.28);
        backdrop-filter: blur(18px);
        -webkit-backdrop-filter: blur(18px);
    }
    .section-hero .bot-btns {
        margin-top: 28px;
        display: flex;
        gap: 18px;
        flex-wrap: wrap;
        justify-content: center;
    }
    .wk-hstat {
        padding: 24px 40px; text-align: center;
        border-right: 1px solid rgba(255,255,255,0.10);
    }
    .wk-hstat:last-child { border-right: none; }
    .wk-hstat-num {
        font-size: 44px; font-weight: 800;
        letter-spacing: -0.05em; line-height: 1; color: #fff;
    }
    .wk-hstat-num em { font-style: normal; color: var(--brand); }
    .wk-hstat-label {
        font-size: 11px; font-weight: 600; letter-spacing: 0.06em;
        text-transform: uppercase; color: rgba(255,255,255,0.45);
        margin-top: 6px; white-space: nowrap;
    }
    @media (max-width: 767px) {
        /* Hero — même hauteur que index.html (compense l'absence des icônes 3D) */
        .section-hero {
            min-height: 100dvh;
            min-height: 100vh; /* fallback */
        }
        .section-hero .content-wrap {
            padding: 130px 0 110px;
        }
        /* Boutons empilés verticalement — identique à index.html */
        .section-hero .bot-btns {
            flex-direction: column !important;
            align-items: center;
            gap: 12px !important;
            margin-top: 24px;
        }
        .section-hero .bot-btns a {
            display: flex;
            justify-content: center;
            text-align: center;
            width: auto;
        }
        /* Stats bar */
        .wk-hero-stats {
            display: flex;
            width: 100%;
            margin-top: 24px;
            margin-bottom: 0;
            border-radius: 16px;
        }
        .wk-hstat { flex: 1; padding: 14px 8px; }
        .wk-hstat-num { font-size: 28px; }
        .wk-hstat-label { font-size: 9px; letter-spacing: 0.04em; }
    }

    /* ================================================================
       FILTRES
       ================================================================ */
    .wk-filters {
        padding: 56px 0 44px;
    }
    .wk-filter-head {
        text-align: center; margin-bottom: 28px;
    }
    .wk-filter-head h2 {
        font-size: clamp(42px, 8vw, 110px);
        font-weight: 700;
        letter-spacing: -0.06em;
        line-height: 0.92;
        color: var(--t1);
        margin: 0 0 14px;
        max-width: 10.5ch;
        margin-left: auto;
        margin-right: auto;
    }
    .wk-filter-head p {
        font-size: 16px; line-height: 1.72; color: var(--t2); margin: 0;
    }
    /* ================================================================
       GRILLE PROJETS
       ================================================================ */
    .wk-projects {
        padding: var(--wk-section-gap) 0;
    }
    .wk-project-block + .wk-project-block { margin-top: 96px; }
    .wk-project-block--after-automation {
        margin-top: 0 !important;
    }
    .wk-project-block-head {
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        gap: 12px;
        margin-bottom: 32px;
    }
    .wk-project-block--after-automation .wk-project-block-head {
        padding-top: 0;
    }
    .wk-project-block-title {
        font-size: clamp(28px, 2.2vw, 38px);
        font-weight: 600;
        letter-spacing: -0.05em;
        line-height: 1.04;
        color: var(--t1);
        margin: 0;
    }
    .wk-project-block-copy {
        max-width: 760px;
        font-size: 16px;
        line-height: 1.72;
        color: var(--t2);
        margin: 0;
        text-align: left;
    }
    .wk-project-block-head.effectFade {
        transition: transform 0.4s ease, opacity 0.4s ease;
    }
    .wk-section-divider {
        position: relative;
        height: 1px;
        width: min(calc(100% - 48px), 1280px);
        margin: 54px auto 42px;
        background: linear-gradient(
            90deg,
            rgba(124, 132, 145, 0.06) 0%,
            rgba(124, 132, 145, 0.12) 50%,
            rgba(124, 132, 145, 0.06) 100%
        );
        overflow: visible;
    }
    .wk-section-divider::after {
        content: "";
        position: absolute;
        top: 50%;
        left: 50%;
        width: min(140px, 32vw);
        height: 1px;
        transform: translate(-50%, -50%);
        background: linear-gradient(
            90deg,
            rgba(124, 132, 145, 0) 0%,
            rgba(124, 132, 145, 0.24) 20%,
            rgba(124, 132, 145, 0.4) 50%,
            rgba(124, 132, 145, 0.24) 80%,
            rgba(124, 132, 145, 0) 100%
        );
    }
    .wk-section-divider + .wk-project-block {
        margin-top: 0 !important;
    }
    .wk-section-divider + .wk-project-block .wk-project-block-head {
        padding-top: 0;
    }
    .wk-grid {
        display: grid; grid-template-columns: repeat(2, 1fr); gap: 26px;
    }
    @media (max-width: 767px) { .wk-grid { grid-template-columns: 1fr; } }

    .wk-card {
        border-radius: var(--card-radius); overflow: hidden;
        border: 1px solid rgba(0,0,0,0.05); background: var(--bg-card);
        display: flex; flex-direction: column;
        transition: border-color 0.28s ease, transform 0.32s cubic-bezier(0.34,1.56,0.64,1), box-shadow 0.28s ease;
        box-shadow: var(--card-shadow);
    }
    .wk-card:hover {
        border-color: rgba(0,0,0,0.08);
        transform: translateY(-8px) scale(1.01);
        box-shadow: 0 24px 42px rgba(0,0,0,0.1), 0 8px 0 rgba(20,20,20,0.04);
    }
    .wk-card--wide { grid-column: 1 / -1; }
    @media (max-width: 767px) { .wk-card--wide { grid-column: 1; } }

    /* Image */
    .wk-card-img { overflow: hidden; position: relative; flex-shrink: 0; }
    .wk-card--wide .wk-card-img { aspect-ratio: 16/7; }
    .wk-card-img      { aspect-ratio: 4/3; }
    .wk-card-preview {
        position: absolute;
        inset: 0;
        opacity: 0;
        visibility: hidden;
        transition: opacity 0.3s ease, visibility 0.3s ease;
        background: #f4f0eb;
    }
    .wk-card-preview.is-active {
        opacity: 1;
        visibility: visible;
    }
    .wk-card-img img,
    .wk-card-img video {
        width: 100%;
        height: 100%;
        object-fit: cover;
        object-position: center center;
        display: block;
        transition: transform 0.45s ease;
    }
    .wk-card--wide .wk-card-img video {
        object-position: center top;
        background: #ece8e3;
    }
    .wk-card-img--switchable {
        background:
            radial-gradient(circle at 50% 20%, rgba(255,255,255,0.88) 0%, rgba(255,255,255,0.36) 22%, transparent 58%),
            linear-gradient(180deg, #f3efea 0%, #ebe5de 100%);
    }
    .wk-card-device-toggle {
        position: absolute;
        top: 18px;
        right: 18px;
        z-index: 8;
        display: inline-flex;
        gap: 6px;
        padding: 6px;
        border-radius: 999px;
        background: rgba(255,255,255,0.8);
        border: 1px solid rgba(0,0,0,0.06);
        box-shadow: 0 10px 22px rgba(0,0,0,0.08);
        backdrop-filter: blur(10px);
        -webkit-backdrop-filter: blur(10px);
    }
    .wk-card-device-btn {
        border: none;
        background: transparent;
        color: rgba(9,9,11,0.56);
        font-size: 12px;
        font-weight: 700;
        line-height: 1;
        padding: 9px 12px;
        border-radius: 999px;
        transition: background 0.22s ease, color 0.22s ease, transform 0.22s ease;
    }
    .wk-card-device-btn.is-active {
        background: #111;
        color: #fff;
    }
    .wk-card-device-btn:hover {
        transform: translateY(-1px);
    }
    .wk-card-preview--mobile {
        display: flex;
        align-items: center;
        justify-content: center;
        padding: 26px 28px 18px;
        background:
            radial-gradient(circle at 50% 12%, rgba(255,255,255,0.88) 0%, rgba(255,255,255,0.52) 20%, transparent 58%),
            linear-gradient(180deg, rgba(246,242,236,0.94) 0%, rgba(241,237,231,0.84) 100%);
    }
    .wk-card-phone {
        width: min(21vw, 230px);
        aspect-ratio: 10 / 19.5;
        border-radius: 36px;
        padding: 6px;
        background:
            linear-gradient(180deg, #c9c9cf 0%, #8f9097 16%, #232428 48%, #111215 100%);
        box-shadow:
            0 30px 54px rgba(0,0,0,0.14),
            0 10px 24px rgba(255,255,255,0.28),
            0 0 0 1px rgba(255,255,255,0.34) inset,
            0 1px 0 rgba(255,255,255,0.42) inset,
            0 -1px 0 rgba(0,0,0,0.18) inset;
        position: relative;
        overflow: hidden;
    }
    .wk-card-phone::before {
        content: "";
        position: absolute;
        top: 9px;
        left: 50%;
        width: 40%;
        height: 16px;
        border-radius: 999px;
        transform: translateX(-50%);
        background: linear-gradient(180deg, rgba(20,20,24,0.98) 0%, rgba(38,38,42,0.94) 100%);
        box-shadow: 0 1px 0 rgba(255,255,255,0.05) inset;
        z-index: 3;
    }
    .wk-card-phone::after {
        content: "";
        position: absolute;
        inset: 0;
        border-radius: 36px;
        pointer-events: none;
        background:
            linear-gradient(115deg, rgba(255,255,255,0.26) 0%, rgba(255,255,255,0.05) 18%, transparent 38%),
            linear-gradient(290deg, rgba(255,255,255,0.12) 0%, transparent 18%);
        z-index: 2;
    }
    .wk-card-phone-hardware {
        position: absolute;
        inset: 0;
        pointer-events: none;
        z-index: 4;
    }
    .wk-card-phone-btn {
        position: absolute;
        background: linear-gradient(180deg, #5f6066 0%, #2d2f35 100%);
        box-shadow: 0 1px 0 rgba(255,255,255,0.18) inset, 0 2px 6px rgba(0,0,0,0.16);
    }
    .wk-card-phone-btn--power {
        top: 30%;
        right: -2px;
        width: 3px;
        height: 18%;
        border-radius: 4px 0 0 4px;
    }
    .wk-card-phone-btn--volume-up {
        top: 24%;
        left: -2px;
        width: 3px;
        height: 10%;
        border-radius: 0 4px 4px 0;
    }
    .wk-card-phone-btn--volume-down {
        top: 36%;
        left: -2px;
        width: 3px;
        height: 10%;
        border-radius: 0 4px 4px 0;
    }
    .wk-card-phone-btn--action {
        top: 16%;
        left: -2px;
        width: 3px;
        height: 7%;
        border-radius: 0 4px 4px 0;
    }
    .wk-card-phone-screen {
        width: 100%;
        height: 100%;
        overflow: hidden;
        border-radius: 31px;
        background: #fff;
        position: relative;
        z-index: 1;
    }
    .wk-card-phone-screen::after {
        content: "";
        position: absolute;
        left: 50%;
        bottom: 8px;
        width: 30%;
        height: 4px;
        transform: translateX(-50%);
        border-radius: 999px;
        background: rgba(18,18,22,0.22);
        z-index: 2;
        pointer-events: none;
    }
    .wk-card-phone-screen img,
    .wk-card-phone-screen video {
        object-fit: cover;
        object-position: center top;
        transform: scale(1.07);
        width: calc(100% - 14px);
        height: calc(100% - 14px);
        margin: 7px;
        border-radius: 24px;
    }
    .wk-card-phone-screen video {
        background: #ffffff;
    }
    .wk-card-preview--desktop .wk-logo-stage {
        height: 100%;
        border-radius: 0;
    }
    .wk-card-phone-screen .wk-logo-stage {
        min-height: 100%;
        height: 100%;
        padding: 22px 14px 26px;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        text-align: center;
        border-radius: 24px;
    }
    .wk-card-phone-screen .wk-logo-stage__eyebrow {
        font-size: 10px;
        margin-bottom: 12px;
    }
    .wk-card-phone-screen .wk-logo-stage__mark {
        margin-bottom: 12px;
    }
    .wk-card-phone-screen .wk-logo-stage__sub {
        font-size: 12px;
        line-height: 1.55;
        max-width: 18ch;
    }
    .wk-card:hover .wk-card-img img,
    .wk-card:hover .wk-card-img video { transform: scale(1.05); }
    .wk-card:hover .wk-card-title { transform: translateY(-2px); }
    @media (max-width: 575px) {
        .wk-card--wide .wk-card-img { aspect-ratio: 4/3; }
        .wk-card-device-toggle {
            top: 12px;
            right: 12px;
            left: auto;
            transform: none;
            padding: 5px;
            gap: 4px;
            z-index: 6;
        }
        .wk-card-device-btn {
            padding: 8px 10px;
            font-size: 11px;
            flex: 0 0 auto;
            text-align: center;
        }
        .wk-card-phone {
            width: min(58vw, 220px);
        }
    }

    .wk-grid--web .wk-card--wide .wk-card-img { aspect-ratio: 16 / 8; }
    .wk-grid--web .wk-card { min-height: 100%; }
    .wk-grid--web .wk-card--wide .wk-card-title { font-size: 36px; }

    @media (min-width: 992px) {
        .wk-grid--web {
            grid-template-columns: 1fr;
            gap: 28px;
        }
        .wk-grid--web .wk-card--wide {
            display: flex;
            flex-direction: column;
            align-items: stretch;
        }
        .wk-grid--web .wk-card--wide .wk-card-img {
            aspect-ratio: 16 / 8;
            min-height: 0;
            height: auto;
            min-block-size: 0;
            border-right: 0;
            border-bottom: 1px solid rgba(0,0,0,0.05);
        }
        .wk-grid--web .wk-card--wide .wk-logo-stage {
            min-height: 320px;
        }
        .wk-grid--web .wk-card--wide .wk-logo-stage__mark {
            min-height: 248px;
        }
        .wk-grid--web .wk-card--wide .wk-card-body {
            padding: 34px 36px 36px;
            gap: 16px;
        }
        .wk-grid--web .wk-card--wide .wk-card-title {
            font-size: 30px;
        }
        .wk-grid--web .wk-card--wide .wk-card-desc {
            max-width: none;
            flex: 0 0 auto;
        }
        .wk-grid--web .wk-card--wide .wk-chip-groups {
            gap: 14px;
        }
        .wk-grid--web .wk-card--wide .wk-card-foot {
            margin-top: 8px;
        }
    }

    /* Overlay */
    .wk-card-ov {
        position: absolute; inset: 0;
        background: linear-gradient(to top, rgba(0,0,0,0.65) 0%, transparent 55%);
        display: flex; align-items: flex-end; padding: 20px;
        opacity: 0; transition: opacity 0.28s;
        z-index: 5;
    }
    .wk-card:hover .wk-card-ov { opacity: 1; }
    .wk-ov-btn {
        display: inline-flex; align-items: center; gap: 6px;
        background: #fff; color: #111; border-radius: 100px;
        padding: 9px 20px; font-size: 13px; font-weight: 700;
        text-decoration: none; transition: background 0.2s, color 0.2s;
    }
    .wk-ov-btn:hover { background: var(--brand); color: #fff; }
    .wk-ov-btn .icon { font-size: 11px; }

    /* Body */
    .wk-card-body { padding: 28px 28px 30px; display: flex; flex-direction: column; gap: 14px; flex: 1; }
    .wk-card--wide .wk-card-body { padding: 34px 36px 36px; }

    .wk-card-header { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
    .wk-card-meta {
        display: inline-flex;
        align-items: center;
        gap: 10px;
        flex-wrap: wrap;
    }
    .wk-badge {
        font-size: 12px; font-weight: 700; letter-spacing: 0.015em;
        text-transform: none; padding: 8px 14px; border-radius: 999px;
        background: #fff1ed; color: var(--brand); border: 1px solid rgba(255,59,38,0.06);
        white-space: nowrap;
    }
    .wk-badge--status {
        background: rgba(17,17,17,0.04);
        color: rgba(17,17,17,0.6);
        border-color: rgba(17,17,17,0.06);
    }
    .wk-year { font-size: 13px; color: var(--t3); }
    .wk-card--in-progress {
        border-color: rgba(253,58,37,0.12);
        box-shadow: 0 14px 34px rgba(0,0,0,0.08), 0 0 0 1px rgba(253,58,37,0.04) inset;
    }
    .wk-card--in-progress .wk-card-img::after {
        content: "";
        position: absolute;
        inset: 0;
        pointer-events: none;
        background: linear-gradient(180deg, rgba(253,58,37,0.03) 0%, transparent 26%);
        z-index: 1;
    }
    .wk-card-note {
        margin: -2px 0 0;
        font-size: 13px;
        line-height: 1.6;
        color: rgba(9,9,11,0.48);
    }
    .wk-automation-copy {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 10px;
        margin-top: 2px;
    }
    .wk-automation-copy-card {
        padding: 14px 16px;
        border-radius: 18px;
        background: linear-gradient(180deg, rgba(246,246,248,0.92) 0%, rgba(250,250,251,0.98) 100%);
        border: 1px solid rgba(0,0,0,0.05);
    }
    .wk-automation-copy-card strong {
        display: block;
        margin: 0 0 6px;
        font-size: 14px;
        font-weight: 700;
        letter-spacing: -0.02em;
        color: var(--t1);
    }
    .wk-automation-copy-card p {
        margin: 0;
        font-size: 14px;
        line-height: 1.68;
        color: var(--t2);
    }
    .wk-automation-offers {
        display: grid;
        gap: 10px;
        margin-top: 4px;
        margin-bottom: 2px;
    }
    .wk-automation-offers-head {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        gap: 8px 12px;
        margin-bottom: 2px;
    }
    .wk-automation-offers-label {
        font-size: 11px;
        font-weight: 700;
        letter-spacing: 0.12em;
        text-transform: uppercase;
        color: rgba(9,9,11,0.42);
    }
    .wk-automation-setup {
        display: inline-flex;
        align-items: center;
        min-height: 38px;
        padding: 8px 14px;
        border-radius: 16px;
        background: linear-gradient(180deg, #2a2a2a 0%, #232323 100%);
        color: rgba(255,255,255,0.94);
        font-size: 14px;
        font-weight: 600;
        box-shadow: 0 10px 24px rgba(17,17,17,0.12);
    }
    .wk-automation-offer-grid {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 12px;
    }
    .wk-automation-offer-card {
        padding: 18px 18px 16px;
        border-radius: 20px;
        background: linear-gradient(180deg, rgba(244,244,246,0.96) 0%, rgba(250,250,251,0.98) 100%);
        border: 1px solid rgba(0,0,0,0.06);
        box-shadow: 0 12px 24px rgba(17,17,17,0.08);
    }
    .wk-automation-offer-top {
        display: flex;
        align-items: flex-start;
        justify-content: space-between;
        gap: 10px;
        margin-bottom: 8px;
    }
    .wk-automation-offer-title {
        margin: 0;
        font-size: 20px;
        font-weight: 600;
        letter-spacing: -0.04em;
        line-height: 1.02;
        color: var(--t1);
    }
    .wk-automation-offer-price {
        white-space: nowrap;
        font-size: 17px;
        font-weight: 700;
        letter-spacing: -0.04em;
        color: #ff4d37;
    }
    .wk-automation-offer-card p {
        margin: 0;
        font-size: 14px;
        line-height: 1.55;
        color: rgba(9,9,11,0.66);
    }
    .wk-automation-offer-card p + p {
        margin-top: 6px;
        color: rgba(9,9,11,0.44);
    }
    .wk-logo-stage {
        position: relative;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        gap: 18px;
        min-height: 100%;
        padding: 42px 32px;
        background:
            radial-gradient(circle at 50% 18%, rgba(255,255,255,0.92) 0%, rgba(255,255,255,0.35) 24%, transparent 56%),
            linear-gradient(180deg, #f5f0ea 0%, #eee7df 100%);
    }
    .wk-logo-stage__eyebrow {
        font-size: 11px;
        font-weight: 700;
        letter-spacing: 0.16em;
        text-transform: uppercase;
        color: rgba(9,9,11,0.42);
    }
    .wk-logo-stage__mark {
        width: min(100%, 400px);
        min-height: 230px;
        display: flex;
        align-items: center;
        justify-content: center;
        border-radius: 32px;
        border: 1px solid rgba(0,0,0,0.06);
        background: rgba(255,255,255,0.78);
        box-shadow: 0 18px 34px rgba(0,0,0,0.08), 0 1px 0 rgba(255,255,255,0.55) inset;
        padding: 24px;
        text-align: center;
    }
    .wk-logo-stage__name {
        display: block;
        font-size: clamp(34px, 4vw, 58px);
        font-weight: 700;
        letter-spacing: -0.06em;
        line-height: 0.95;
        color: #111;
    }
    .wk-logo-stage__name--soft {
        font-weight: 600;
        letter-spacing: -0.05em;
    }
    .wk-logo-stage__name--spaced {
        letter-spacing: 0.08em;
        font-size: clamp(28px, 3.2vw, 44px);
    }
    .wk-logo-stage__sub {
        font-size: 13px;
        line-height: 1.6;
        color: rgba(9,9,11,0.5);
        text-align: center;
        max-width: 34ch;
        margin: 0;
    }

    .wk-card-title {
        font-size: 26px; font-weight: 600; color: var(--t1);
        letter-spacing: -0.045em; line-height: 1.06; margin: 0;
        text-shadow: none;
        transition: transform 0.24s ease, color 0.24s ease;
    }
    .wk-card--wide .wk-card-title { font-size: clamp(30px, 2.6vw, 38px); letter-spacing: -0.05em; line-height: 1.04; }

    .wk-card-desc { font-size: 16px; line-height: 1.72; color: var(--t2); margin: 0; flex: 1; }

    .wk-chip-groups {
        display: flex;
        flex-direction: column;
        gap: 12px;
        margin-bottom: 10px;
    }
    .wk-chip-group {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        gap: 6px;
    }
    .wk-chip-label {
        font-size: 11px;
        font-weight: 700;
        letter-spacing: 0.08em;
        text-transform: uppercase;
        color: rgba(9,9,11,0.4);
        margin-right: 4px;
    }
    .wk-chips { display: flex; flex-wrap: wrap; gap: 6px; }
    .wk-chip {
        font-size: 13px; font-weight: 600; color: rgba(9,9,11,0.68);
        padding: 8px 12px; border-radius: 10px;
        background: #f1f1f4; border: 1px solid rgba(0,0,0,0.05);
        transition: transform 0.22s ease, background 0.22s ease, border-color 0.22s ease;
    }
    .wk-card:hover .wk-chip {
        transform: translateY(-2px);
        background: #f6f6f8;
        border-color: rgba(0,0,0,0.07);
    }

    .wk-card-foot {
        display: flex; align-items: center; justify-content: space-between;
        padding-top: 20px; border-top: 1px solid rgba(0,0,0,0.06);
        margin-top: 8px;
    }
    .wk-sector { font-size: 13px; color: var(--t3); }
    .wk-link {
        display: inline-flex; align-items: center; gap: 5px;
        font-size: 15px; font-weight: 700; color: var(--t1);
        text-decoration: none; transition: color 0.2s;
    }
    .wk-link:hover { color: var(--brand); }
    .wk-link .icon { font-size: 11px; transition: transform 0.2s; }
    .wk-link:hover .icon { transform: translate(2px,-2px); }

    @media (max-width: 575px) {
        .wk-card-body { padding: 20px 20px 22px; gap: 10px; }
        .wk-card-title { font-size: 21px; }
        .wk-card--wide .wk-card-title { font-size: 24px; }
        .wk-card-desc { font-size: 16px; }
        .wk-chip-groups { gap: 10px; }
        .wk-chip-group { align-items: flex-start; }
        .wk-chip-label { flex-basis: 100%; margin-right: 0; }
        .wk-automation-copy { grid-template-columns: 1fr; gap: 10px; }
        .wk-automation-copy-card { padding: 14px 15px; border-radius: 16px; }
        .wk-automation-offers-head { align-items: stretch; }
        .wk-automation-setup { width: 100%; justify-content: center; }
        .wk-automation-offer-grid { grid-template-columns: 1fr; }
        .wk-automation-offer-card { padding: 16px 16px 15px; border-radius: 18px; }
        .wk-automation-offer-title { font-size: 22px; }
        .wk-automation-offer-price { font-size: 18px; }
        .wk-logo-stage {
            padding: 28px 20px;
        }
        .wk-logo-stage__mark {
            min-height: 180px;
            border-radius: 24px;
        }
    }

    .wk-editorial-grid {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 26px;
        align-items: stretch;
    }
    .wk-editorial-grid--single {
        grid-template-columns: 1fr;
    }
    .wk-editorial-panel {
        display: grid;
        grid-template-columns: minmax(220px, 0.9fr) minmax(0, 1.1fr);
        border-radius: 30px;
        overflow: hidden;
        border: 1px solid rgba(0,0,0,0.05);
        background: #fff;
        box-shadow: var(--card-shadow);
        min-height: 100%;
        transition: transform 0.32s cubic-bezier(0.34,1.56,0.64,1), box-shadow 0.28s ease, border-color 0.28s ease;
    }
    .wk-editorial-panel:hover {
        transform: translateY(-8px) scale(1.01);
        border-color: rgba(0,0,0,0.08);
        box-shadow: 0 24px 42px rgba(0,0,0,0.1), 0 8px 0 rgba(20,20,20,0.04);
    }
    .wk-editorial-media {
        min-height: 320px;
        background: #dfe3ea;
        overflow: hidden;
    }
    .wk-editorial-media img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        display: block;
        transition: transform 0.45s ease;
    }
    .wk-editorial-panel:hover .wk-editorial-media img {
        transform: scale(1.04);
    }
    .wk-editorial-panel--automation {
        grid-template-columns: minmax(250px, 0.82fr) minmax(0, 1.18fr);
    }
    .wk-editorial-panel--branding {
        grid-template-columns: 1fr;
    }
    .wk-editorial-panel--automation .wk-editorial-media {
        min-height: 100%;
    }
    .wk-editorial-panel--branding .wk-editorial-media {
        min-height: 0;
    }
    .works-ia-inline {
        padding: 0 !important;
        margin: 0 0 36px;
    }
    .works-ia-inline.section-ia-workflow {
        padding-bottom: 8px !important;
    }
    .works-ia-inline::before {
        display: none !important;
    }
    .works-ia-inline__intro {
        max-width: 760px;
        margin: 0 auto 24px;
        text-align: center;
    }
    .works-ia-inline__eyebrow {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        min-height: 38px;
        padding: 8px 18px;
        margin-bottom: 14px;
        border-radius: 999px;
        background: rgba(255, 59, 38, 0.08);
        color: var(--brand);
        font-size: 13px;
        font-weight: 700;
        letter-spacing: 0.04em;
        text-transform: uppercase;
    }
    .works-ia-inline__title {
        margin: 0 0 10px;
        color: var(--t1);
        font-size: clamp(28px, 2.4vw, 38px);
        font-weight: 600;
        line-height: 1.04;
        letter-spacing: -0.05em;
    }
    .works-ia-inline__copy {
        max-width: 700px;
        margin: 0 auto;
        color: var(--t2);
        font-size: 15px;
        line-height: 1.8;
    }
    .works-ia-inline .ia-layout {
        width: min(100%, 1420px);
        margin: 0 auto;
    }
    .works-ia-inline .ia-layout__card {
        width: 100%;
        margin: 0 auto;
    }
    .ia-layout__text,
    .ia-layout__card {
        opacity: 1;
    }
    .ia-wf-card {
        background: #fff;
        border-radius: 20px;
        overflow: hidden;
        box-shadow: 0 2px 4px rgba(0,0,0,0.04), 0 16px 48px rgba(0,0,0,0.11);
        border: 1px solid #e4e4e7;
        animation: wfCardIn 0.7s cubic-bezier(0.16,1,0.3,1) both;
        animation-delay: 0.2s;
    }
    @keyframes wfCardIn {
        from { opacity: 0; transform: translateY(28px) scale(0.97); }
        to { opacity: 1; transform: translateY(0) scale(1); }
    }
    .ia-wf-topbar {
        display: flex;
        align-items: center;
        gap: 10px;
        padding: 13px 22px;
        background: #f4f4f5;
        border-bottom: 1px solid #e4e4e7;
    }
    .ia-wf-dots { display: flex; gap: 6px; }
    .ia-wf-dots span { width: 12px; height: 12px; border-radius: 50%; display: block; flex-shrink: 0; }
    .ia-wf-filename { font-size: 13px; color: #aaa; font-weight: 500; flex: 1; }
    .ia-wf-badge {
        display: inline-flex; align-items: center; gap: 5px;
        font-size: 12px; font-weight: 600; color: #16a34a;
        background: #f0fdf4; border-radius: 99px;
        padding: 4px 12px; border: 1px solid #bbf7d0;
    }
    .ia-wf-pulse {
        width: 7px; height: 7px; border-radius: 50%;
        background: #22c55e; display: inline-block;
        animation: pulseGreen 2s ease-in-out infinite;
    }
    @keyframes pulseGreen {
        0%,100% { box-shadow: 0 0 0 0 rgba(34,197,94,0.5); }
        50% { box-shadow: 0 0 0 5px rgba(34,197,94,0); }
    }
    .ia-wf-body { padding: 30px 34px; }
    .ia-wf-example-tag {
        display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 8px;
        font-size: 11px; font-weight: 600; color: #888;
        letter-spacing: 0.04em; text-transform: uppercase;
        background: #f4f4f5; border-radius: 8px; padding: 8px 14px; margin-bottom: 22px;
    }
    .ia-wf-tag-nets { display: flex; align-items: center; gap: 6px; flex-shrink: 0; }
    .ia-wf-tag-nets .icon { font-size: 14px; line-height: 1; }
    .ia-wf-icon-svg {
        width: 14px;
        height: 14px;
        display: inline-block;
        flex-shrink: 0;
        vertical-align: middle;
    }
    .ia-wf-section-label {
        font-size: 10px; font-weight: 700; color: #c4c4c4;
        letter-spacing: 0.12em; text-transform: uppercase; margin-bottom: 12px;
    }
    .ia-wf-flow-stack { display: flex; flex-direction: column; gap: 16px; margin-bottom: 22px; }
    .ia-wf-flow-row { display: flex; align-items: stretch; margin-bottom: 0; }
    .ia-wf-node-card {
        display: flex; align-items: center; gap: 12px;
        background: #fafafa; border: 1.5px solid #e4e4e7;
        border-top: 3px solid var(--nc);
        border-radius: 14px; padding: 11px 14px;
        flex: 1 1 0; min-width: 0; min-height: 92px;
    }
    .ia-wf-nc-icon {
        width: 38px; height: 38px; border-radius: 10px; background: var(--nc);
        display: flex; align-items: center; justify-content: center; flex-shrink: 0;
    }
    .ia-wf-nc-icon .icon { font-size: 16px; color: #fff; }
    .ia-wf-nc-text { display: flex; flex-direction: column; gap: 3px; min-width: 0; }
    .ia-wf-nc-text strong {
        font-size: 13px; font-weight: 700; color: #111; line-height: 1.32;
        white-space: normal; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden;
    }
    .ia-wf-nc-text span {
        font-size: 12px; color: #aaa; line-height: 1.45;
        white-space: normal; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden;
    }
    .ia-wf-flow-arrow, .ia-wf-mini-arrow {
        position: relative; flex-shrink: 0;
        width: 40px; height: 20px;
        display: flex; align-items: center; justify-content: center; align-self: center;
    }
    .ia-wf-flow-arrow::before, .ia-wf-mini-arrow::before {
        content: '';
        position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%);
        width: calc(100% - 10px); height: 2px;
        background: repeating-linear-gradient(90deg, #d4d4d8 0, #d4d4d8 4px, transparent 4px, transparent 9px);
    }
    .ia-wf-flow-arrow::after, .ia-wf-mini-arrow::after {
        content: '';
        position: absolute; right: 0; top: 50%; transform: translateY(-50%);
        border: 5px solid transparent;
        border-left-color: #d4d4d8;
    }
    .ia-wf-travel-dot {
        position: absolute; top: 50%; transform: translateY(-50%);
        width: 7px; height: 7px; border-radius: 50%;
        background: var(--fc, #f97316);
        box-shadow: 0 0 6px var(--fc, #f97316);
        animation: dotTravel 1.6s linear infinite;
        z-index: 1;
    }
    @keyframes dotTravel {
        0% { left: 0; opacity: 0; }
        10% { opacity: 1; }
        85% { opacity: 1; }
        100% { left: calc(100% - 12px); opacity: 0; }
    }
    .ia-wf-platforms-row { display: flex; gap: 7px; flex-wrap: wrap; margin-bottom: 18px; }
    .ia-wf-platform {
        display: inline-flex; align-items: center; gap: 5px;
        padding: 5px 11px; border-radius: 99px;
        font-size: 12px; font-weight: 600;
        color: var(--pc); border: 1.5px solid var(--pc);
        background: #fff; opacity: 0.9;
    }
    .ia-wf-platform .icon { font-size: 12px; }
    .ia-wf-platform .ia-wf-icon-svg { width: 12px; height: 12px; }
    .ia-wf-platforms-toggle {
        display: none;
        align-items: center; justify-content: center; gap: 6px;
        padding: 0; border: 0; background: transparent;
        color: #707684; font-size: 12px; font-weight: 700; line-height: 1.2;
        letter-spacing: 0.01em; margin: -4px auto 18px; cursor: pointer;
        transition: color 0.2s ease, transform 0.2s ease;
    }
    .ia-wf-platforms-toggle::after {
        content: "";
        width: 6px; height: 6px;
        border-right: 1.5px solid currentColor;
        border-bottom: 1.5px solid currentColor;
        transform: rotate(45deg) translateY(-1px);
        transition: transform 0.2s ease;
    }
    .ia-wf-platforms-toggle[aria-expanded="true"]::after {
        transform: rotate(-135deg) translateY(-1px);
    }
    .ia-wf-hr { height: 1px; background: #ebebeb; margin: 22px 0; }
    .ia-wf-secondary-grid {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 12px;
    }
    .ia-wf-auto-card {
        display: flex; align-items: flex-start; gap: 12px;
        background: #fafafa; border: 1px solid #e4e4e7;
        border-radius: 14px; padding: 14px 18px; min-width: 0;
    }
    .ia-wf-mini-node {
        width: 34px; height: 34px; border-radius: 9px;
        display: flex; align-items: center; justify-content: center; flex-shrink: 0;
    }
    .ia-wf-mini-node .icon { font-size: 14px; color: #fff; }
    .ia-wf-auto-info { display: flex; flex-direction: column; gap: 2px; flex: 1; min-width: 0; }
    .ia-wf-auto-info strong { font-size: 13px; font-weight: 700; color: #111; }
    .ia-wf-auto-info span { font-size: 12px; color: #aaa; }
    .ia-wf-card,
    .ia-wf-node-card,
    .ia-wf-auto-card,
    .ia-wf-platform {
        transition: transform 0.34s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.34s ease, border-color 0.34s ease;
        will-change: transform;
    }
    @media (hover: hover) {
        .ia-wf-card:hover {
            transform: translateY(-6px);
        }
        .ia-wf-node-card:hover,
        .ia-wf-auto-card:hover {
            transform: translateY(-4px);
            box-shadow: 0 16px 28px rgba(15, 23, 42, 0.08);
        }
        .ia-wf-platform:hover {
            transform: translateY(-2px);
        }
    }
    .wk-automation-flow {
        padding: 14px;
        background:
            radial-gradient(circle at top center, rgba(255,255,255,0.8) 0%, rgba(255,255,255,0.3) 24%, transparent 60%),
            linear-gradient(180deg, #f4f0eb 0%, #ebe5de 100%);
        display: flex;
        flex-direction: column;
        gap: 10px;
        height: 100%;
        justify-content: stretch;
    }
    .wk-automation-body {
        display: flex;
        flex-direction: column;
        gap: 10px;
        padding: 0;
        flex: 1;
        justify-content: stretch;
    }
    .wk-automation-minihead {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 10px;
        padding: 10px 12px;
        border-radius: 16px;
        background: rgba(255,255,255,0.74);
        border: 1px solid rgba(0,0,0,0.05);
        box-shadow: 0 10px 18px rgba(15,23,42,0.05);
    }
    .wk-automation-minihead-title {
        min-width: 0;
        font-size: 10px;
        font-weight: 700;
        letter-spacing: 0.08em;
        text-transform: uppercase;
        color: rgba(9,9,11,0.42);
        line-height: 1.35;
    }
    .wk-automation-minihead-socials {
        display: inline-flex;
        align-items: center;
        gap: 10px;
        flex: 0 0 auto;
    }
    .wk-automation-minihead-socials i {
        font-size: 12px;
        line-height: 1;
    }
    .wk-automation-minihead-socials .icon-instagram {
        color: #ff4f7a;
    }
    .wk-automation-minihead-socials .icon-linkedin-in {
        color: #0a66c2;
    }
    .wk-automation-minihead-socials .icon-facebook-f {
        color: #1877f2;
    }
    .wk-automation-label {
        font-size: 10px;
        font-weight: 700;
        letter-spacing: 0.14em;
        color: rgba(9,9,11,0.32);
        text-transform: uppercase;
        margin: 0;
    }
    .wk-automation-stack {
        display: flex;
        flex-direction: column;
        gap: 10px;
        flex: 1;
        justify-content: flex-start;
        width: 100%;
        max-width: none;
        margin: 0;
    }
    .wk-automation-flow-main {
        display: flex;
        flex-direction: column;
        align-items: stretch;
        gap: 8px;
    }
    .wk-automation-node {
        display: flex;
        align-items: center;
        gap: 10px;
        min-height: 68px;
        padding: 11px 12px;
        border-radius: 18px;
        background: rgba(255,255,255,0.9);
        border: 1px solid rgba(0,0,0,0.07);
        box-shadow: 0 14px 24px rgba(15,23,42,0.06);
        transition: transform 0.28s ease, box-shadow 0.28s ease, border-color 0.28s ease;
    }
    .wk-automation-node-icon {
        width: 38px;
        height: 38px;
        border-radius: 12px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        color: #fff;
        font-size: 13px;
        flex: 0 0 auto;
        box-shadow: 0 10px 18px rgba(15,23,42,0.14);
        transition: transform 0.28s ease, box-shadow 0.28s ease;
    }
    .wk-automation-node-text {
        display: flex;
        flex-direction: column;
        gap: 3px;
        min-width: 0;
    }
    .wk-automation-node-text strong {
        font-size: 13px;
        line-height: 1.2;
        color: var(--t1);
        letter-spacing: -0.02em;
    }
    .wk-automation-node-text span {
        font-size: 10px;
        line-height: 1.4;
        color: var(--t3);
    }
    .wk-automation-arrow {
        position: relative;
        width: 2px;
        height: 22px;
        margin: 0 auto;
        background: rgba(0,0,0,0.12);
        border-radius: 999px;
        overflow: visible;
    }
    .wk-automation-arrow::before {
        content: "";
        position: absolute;
        left: 50%;
        top: 2px;
        width: 8px;
        height: 8px;
        border-radius: 999px;
        background: linear-gradient(180deg, #ff7b28 0%, #ff4d1f 100%);
        box-shadow: 0 0 0 4px rgba(255, 122, 0, 0.12);
        transform: translateX(-50%);
        animation: wkAutomationPing 2.4s ease-in-out infinite;
    }
    .wk-automation-arrow::after {
        content: "";
        position: absolute;
        left: 50%;
        bottom: -1px;
        width: 7px;
        height: 7px;
        border-right: 2px solid rgba(0,0,0,0.18);
        border-bottom: 2px solid rgba(0,0,0,0.18);
        transform: translateX(-50%) rotate(45deg);
    }
    .wk-automation-meta {
        display: grid;
        grid-template-columns: 1fr;
        gap: 12px;
        margin-top: 8px;
    }
    .wk-automation-meta-card {
        display: flex;
        align-items: center;
        gap: 8px;
        padding: 10px;
        border-radius: 14px;
        background: rgba(255,255,255,0.84);
        border: 1px solid rgba(0,0,0,0.06);
        box-shadow: 0 10px 18px rgba(15,23,42,0.05);
        transition: transform 0.28s ease, box-shadow 0.28s ease, border-color 0.28s ease;
    }
    .wk-automation-meta-icon {
        width: 30px;
        height: 30px;
        border-radius: 10px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        color: #fff;
        font-size: 12px;
        flex: 0 0 auto;
        box-shadow: 0 10px 18px rgba(15,23,42,0.14);
    }
    .wk-automation-meta-icon svg {
        width: 16px;
        height: 16px;
        stroke: currentColor;
        fill: none;
        stroke-width: 1.9;
        stroke-linecap: round;
        stroke-linejoin: round;
    }
    .wk-automation-meta-text {
        display: flex;
        flex-direction: column;
        gap: 2px;
        min-width: 0;
    }
    .wk-automation-meta-text strong {
        font-size: 11px;
        line-height: 1.2;
        color: var(--t1);
        letter-spacing: -0.02em;
    }
    .wk-automation-meta-text span {
        font-size: 9px;
        line-height: 1.35;
        color: var(--t3);
    }
    .wk-editorial-panel--automation:hover .wk-automation-node,
    .wk-editorial-panel--automation:hover .wk-automation-meta-card {
        transform: translateY(-3px);
        border-color: rgba(0,0,0,0.08);
        box-shadow: 0 16px 26px rgba(15,23,42,0.08);
    }
    .wk-editorial-panel--automation:hover .wk-automation-node-icon,
    .wk-editorial-panel--automation:hover .wk-automation-meta-icon {
        transform: translateY(-2px) scale(1.03);
    }
    .wk-editorial-panel--automation:hover .wk-automation-arrow::before {
        animation-duration: 1.6s;
    }
    @keyframes wkAutomationPing {
        0% { top: 2px; opacity: 0.55; }
        18% { opacity: 1; }
        82% { opacity: 1; }
        100% { top: calc(100% - 10px); opacity: 0.55; }
    }
    .wk-branding-stage {
        min-height: 100%;
        padding: 18px;
        background: #fff;
        display: grid;
        grid-template-rows: auto auto;
        gap: 24px;
    }
    .wk-branding-shell {
        display: flex;
        flex-direction: column;
        gap: 24px;
        min-height: 100%;
    }
    .wk-branding-copy {
        display: flex;
        flex-direction: column;
        gap: 16px;
        padding: 10px 12px 0;
    }
    .wk-branding-copy .wk-card-header {
        margin-bottom: 2px;
    }
    .wk-branding-copy .wk-editorial-title {
        max-width: 18ch;
        font-size: clamp(34px, 3vw, 48px);
        line-height: 1.04;
        margin: 0;
    }
    .wk-branding-copy .wk-editorial-copy {
        max-width: 86ch;
        font-size: 18px;
        line-height: 1.78;
        flex: 0 0 auto;
    }
    .wk-branding-body {
        display: grid;
        grid-template-columns: minmax(0, 1.08fr) minmax(340px, 0.92fr);
        gap: 16px;
        min-height: 0;
    }
    .wk-branding-panel-box {
        position: relative;
        border-radius: 28px;
        border: 1px solid rgba(0,0,0,0.05);
        background: #fff;
        box-shadow: 0 18px 38px rgba(31,41,55,0.08);
        backdrop-filter: blur(10px);
        overflow: hidden;
    }
    .wk-branding-panel-head {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 12px;
        padding: 18px 20px 14px;
    }
    .wk-branding-panel-kicker {
        font-size: 11px;
        font-weight: 700;
        letter-spacing: 0.14em;
        text-transform: uppercase;
        color: rgba(9,9,11,0.38);
    }
    .wk-branding-panel-note {
        font-size: 12px;
        line-height: 1.45;
        color: rgba(9,9,11,0.4);
    }
    .wk-branding-marquee {
        position: relative;
    }
    .wk-branding-marquee::after {
        content: "";
        position: absolute;
        inset: 0;
        background: linear-gradient(90deg, rgba(255,255,255,0.92) 0%, rgba(255,255,255,0) 14%, rgba(255,255,255,0) 86%, rgba(255,255,255,0.92) 100%);
        pointer-events: none;
    }
    .wk-branding-viewport {
        height: 100%;
        min-height: 184px;
        padding: 0 16px 16px;
        overflow: hidden;
    }
    .wk-branding-track {
        display: flex;
        align-items: center;
        gap: 10px;
        width: max-content;
        animation: wkBrandingScrollX 18s linear infinite;
    }
    .wk-branding-logo {
        display: flex;
        align-items: center;
        justify-content: center;
        min-height: 92px;
        min-width: 148px;
        aspect-ratio: 1 / 1;
        padding: 1px 2px;
        border-radius: 22px;
        background: rgba(255,255,255,0.82);
        border: 1px solid rgba(255,255,255,0.92);
        box-shadow: 0 14px 30px rgba(31,41,55,0.08);
        backdrop-filter: blur(10px);
    }
    .wk-branding-logo img {
        width: auto;
        height: auto;
        max-width: 136px;
        max-height: 82px;
        margin: auto;
        flex: 0 0 auto;
        vertical-align: middle;
        object-fit: contain;
        display: block;
        cursor: zoom-in;
        filter: saturate(1.02) contrast(1.02);
    }
    .wk-branding-logo--text span {
        font-size: 18px;
        font-weight: 800;
        letter-spacing: -0.03em;
        color: #1b1b1d;
    }
    .wk-branding-logo--signature {
        min-height: 82px;
        min-width: 132px;
        padding: 12px 14px;
        border-radius: 22px;
        background: linear-gradient(180deg, #ff6150 0%, #fd3a25 100%);
        border-color: rgba(255,255,255,0.38);
        box-shadow:
            0 16px 34px rgba(253,58,37,0.22),
            0 2px 0 rgba(255,255,255,0.16) inset,
            0 -5px 14px rgba(0,0,0,0.08) inset;
    }
    .wk-branding-logo--signature span {
        font-size: 24px;
        line-height: 1;
        font-weight: 700;
        letter-spacing: -0.08em;
        color: #101010;
        text-transform: none;
        white-space: nowrap;
    }
    .wk-branding-compare {
        padding: 0 16px 16px;
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 12px;
    }
    .wk-branding-compare-card {
        border-radius: 20px;
        border: 1px solid rgba(0,0,0,0.06);
        background: rgba(255,255,255,0.72);
        padding: 14px;
        display: flex;
        flex-direction: column;
        gap: 10px;
        box-shadow: 0 12px 24px rgba(31,41,55,0.06);
        align-items: flex-start;
    }
    .wk-branding-compare-label {
        font-size: 11px;
        font-weight: 700;
        letter-spacing: 0.12em;
        text-transform: uppercase;
        color: rgba(9,9,11,0.38);
    }
    .wk-branding-compare-mark {
        min-height: 92px;
        width: min(100%, 148px);
        border-radius: 18px;
        display: flex;
        align-items: center;
        justify-content: center;
        padding: 2px 3px;
        text-align: center;
    }
    .wk-branding-compare-mark--old {
        background: linear-gradient(180deg, #f3f4f6 0%, #e8eaee 100%);
        border: 1px dashed rgba(9,9,11,0.14);
    }
    .wk-branding-compare-mark--new {
        background: linear-gradient(180deg, #ff5a46 0%, #fd3a25 100%);
        border: 1px solid rgba(255,255,255,0.3);
        box-shadow: 0 14px 28px rgba(253,58,37,0.18);
    }
    .wk-branding-compare-mark span {
        font-weight: 700;
        line-height: 0.98;
        white-space: nowrap;
    }
    .wk-branding-compare-mark--old span {
        font-size: 24px;
        letter-spacing: 0.01em;
        color: rgba(9,9,11,0.4);
    }
    .wk-branding-compare-mark--new span {
        font-size: 30px;
        letter-spacing: -0.06em;
        color: #111;
    }
    .wk-branding-compare-copy {
        font-size: 12px;
        line-height: 1.55;
        color: rgba(9,9,11,0.5);
        margin: 0;
    }
    @keyframes wkBrandingScrollX {
        0% { transform: translateX(0); }
        100% { transform: translateX(calc(-50% - 9px)); }
    }
    .wk-editorial-panel--wide-media {
        grid-template-columns: 1fr;
    }
    .wk-editorial-panel--wide-media .wk-editorial-media {
        aspect-ratio: 16 / 5;
        min-height: 0;
    }
    .wk-editorial-body {
        padding: 20px 20px 20px;
        display: flex;
        flex-direction: column;
        gap: 12px;
    }
    .wk-editorial-title {
        font-size: clamp(28px, 2.4vw, 38px);
        font-weight: 600;
        letter-spacing: -0.05em;
        line-height: 1.04;
        color: var(--t1);
        margin: 0;
        transition: transform 0.24s ease;
    }
    .wk-editorial-panel:hover .wk-editorial-title {
        transform: translateY(-2px);
    }
    .wk-editorial-copy {
        font-size: 15px;
        line-height: 1.62;
        color: var(--t2);
        margin: 0;
        flex: 1;
    }
    .wk-editorial-foot {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 14px;
        padding-top: 12px;
        border-top: 1px solid rgba(0,0,0,0.06);
        margin-top: auto;
    }
    @media (max-width: 991px) {
        .wk-editorial-grid {
            grid-template-columns: 1fr;
        }
    }
    @media (max-width: 767px) {
        .wk-editorial-panel {
            grid-template-columns: 1fr;
        }
        .wk-editorial-panel--automation {
            grid-template-columns: 1fr;
        }
        .wk-editorial-media {
            aspect-ratio: 4 / 3;
            min-height: 0;
        }
        .wk-automation-flow {
            padding: 12px;
        }
        .wk-automation-body { gap: 8px; }
        .wk-automation-stack { max-width: none; gap: 8px; }
        .wk-automation-flow-main { gap: 8px; }
        .wk-automation-minihead {
            padding: 9px 10px;
            border-radius: 14px;
        }
        .wk-automation-minihead-title {
            font-size: 9px;
        }
        .wk-automation-minihead-socials {
            gap: 8px;
        }
        .wk-automation-minihead-socials i {
            font-size: 11px;
        }
        .wk-automation-node {
            min-height: 60px;
            padding: 10px;
            border-radius: 16px;
        }
        .wk-automation-node-icon {
            width: 32px;
            height: 32px;
            border-radius: 10px;
        }
        .wk-automation-node-text strong {
            font-size: 12px;
        }
        .wk-automation-node-text span {
            font-size: 10px;
        }
        .wk-automation-meta { grid-template-columns: 1fr 1fr; gap: 8px; margin-top: 6px; }
        .wk-branding-logo {
            min-height: 88px;
            min-width: 146px;
            border-radius: 22px;
        }
        .wk-branding-stage {
            grid-template-rows: auto auto;
        }
        .wk-branding-body {
            grid-template-columns: 1fr;
        }
        .wk-branding-compare {
            grid-template-columns: 1fr;
        }
        .works-ia-inline {
            margin-bottom: 28px;
        }
        .works-ia-inline__intro {
            margin-bottom: 18px;
        }
        .works-ia-inline__eyebrow {
            min-height: 34px;
            padding: 7px 14px;
            margin-bottom: 12px;
            font-size: 11px;
        }
        .works-ia-inline__title {
            font-size: 22px;
            line-height: 1.14;
        }
        .works-ia-inline__copy {
            font-size: 14px;
            line-height: 1.68;
        }
        .ia-wf-card {
            border-radius: 18px;
        }
        .ia-wf-topbar {
            padding: 10px 12px;
            gap: 8px;
        }
        .ia-wf-dots span {
            width: 10px;
            height: 10px;
        }
        .ia-wf-filename {
            display: none;
        }
        .ia-wf-badge {
            margin-left: auto;
            padding: 4px 10px;
            font-size: 11px;
            white-space: nowrap;
        }
        .ia-wf-body {
            padding: 14px;
        }
        .ia-wf-example-tag {
            padding: 9px 11px;
            margin-bottom: 14px;
            border-radius: 12px;
            font-size: 10px;
            line-height: 1.5;
            justify-content: center;
            text-align: center;
        }
        .ia-wf-tag-nets {
            width: 100%;
            justify-content: center;
        }
        .ia-wf-section-label {
            margin-bottom: 8px;
            text-align: center;
        }
        .ia-wf-platforms-row {
            justify-content: center;
            margin-bottom: 10px;
        }
        .ia-wf-platforms-row:not(.is-expanded) [data-ia-platform-extra] {
            display: none;
        }
        .ia-wf-platforms-toggle {
            display: inline-flex;
        }
        .ia-wf-flow-stack {
            gap: 10px;
            margin-bottom: 14px;
        }
        .ia-wf-flow-row {
            flex-direction: column;
            align-items: stretch;
            gap: 8px;
            margin-bottom: 0;
        }
        .ia-wf-node-card {
            width: 100%;
            padding: 11px 12px;
            border-radius: 14px;
            justify-content: flex-start;
            align-items: center;
            text-align: left;
        }
        .ia-wf-nc-icon {
            width: 36px;
            height: 36px;
            margin-top: 0;
        }
        .ia-wf-nc-text strong,
        .ia-wf-nc-text span {
            white-space: normal;
            overflow: visible;
            text-overflow: unset;
        }
        .ia-wf-nc-text {
            align-items: flex-start;
            text-align: left;
            flex: 1 1 auto;
        }
        .ia-wf-flow-arrow {
            display: flex;
            width: 20px;
            height: 28px;
            margin: 0 auto;
        }
        .ia-wf-flow-arrow::before {
            top: 0;
            left: 50%;
            width: 2px;
            height: calc(100% - 8px);
            transform: translateX(-50%);
            background: repeating-linear-gradient(180deg, #d4d4d8 0, #d4d4d8 4px, transparent 4px, transparent 9px);
        }
        .ia-wf-flow-arrow::after {
            top: auto;
            bottom: 0;
            right: auto;
            left: 50%;
            transform: translateX(-50%);
            border: 5px solid transparent;
            border-top-color: #d4d4d8;
            border-left-color: transparent;
        }
        .ia-wf-travel-dot {
            left: 50%;
            top: 0;
            transform: translateX(-50%);
            animation: dotTravelVertical 1.6s linear infinite;
        }
        .ia-wf-hr {
            margin: 14px 0;
        }
        .ia-wf-secondary-grid {
            grid-template-columns: 1fr;
            gap: 8px;
        }
        .ia-wf-auto-card {
            align-items: center;
            justify-content: flex-start;
            gap: 12px;
            padding: 11px 12px;
            border-radius: 14px;
            text-align: left;
        }
        .ia-wf-auto-info {
            min-width: 0;
            align-items: flex-start;
            text-align: left;
            flex: 1 1 auto;
        }
        .ia-wf-auto-info strong,
        .ia-wf-auto-info span {
            white-space: normal;
        }
    }
    @keyframes dotTravelVertical {
        0% { top: 0; opacity: 0; }
        10% { opacity: 1; }
        85% { opacity: 1; }
        100% { top: calc(100% - 12px); opacity: 0; }
    }
    @media (min-width: 992px) {
        .wk-card--automation {
            display: block !important;
        }
        .wk-card--automation .wk-card-img,
        .wk-card--automation .wk-card-body {
            display: block !important;
            width: 100% !important;
            max-width: none !important;
        }
    }
    @media (max-width: 575px) {
        .wk-project-block-title { font-size: 26px; line-height: 1.05; }
        .wk-project-block-copy { font-size: 16px; }
        .wk-grid--web .wk-card--wide .wk-card-title { font-size: 24px; line-height: 1.06; }
        .wk-editorial-title { font-size: 24px; line-height: 1.06; }
        .wk-editorial-body { padding: 22px 20px 24px; }
        .wk-branding-stage { padding: 12px; gap: 14px; }
        .wk-branding-copy { padding: 6px 6px 0; gap: 12px; }
        .wk-branding-copy .wk-editorial-copy { font-size: 16px; line-height: 1.72; }
        .wk-branding-panel-head { padding: 14px 14px 10px; }
        .wk-branding-viewport,
        .wk-branding-compare { padding-left: 12px; padding-right: 12px; padding-bottom: 12px; }
        .wk-branding-viewport { min-height: 188px; }
        .wk-branding-logo { min-height: 82px; min-width: 136px; padding: 2px 3px; }
        .wk-branding-logo--signature { min-height: 74px; min-width: 124px; padding: 10px 12px; }
        .wk-branding-logo--text span { font-size: 18px; }
        .wk-branding-logo--signature span { font-size: 26px; }
        .wk-branding-compare { grid-template-columns: 1fr; }
        .wk-branding-compare-mark { min-height: 82px; width: min(100%, 136px); padding: 2px 3px; }
        .wk-branding-compare-mark--new span { font-size: 30px; }
        .wk-branding-compare-mark--old span { font-size: 22px; }
        .wk-automation-flow {
            padding: 10px;
            gap: 8px;
        }
        .wk-automation-minihead {
            padding: 8px 10px;
        }
        .wk-automation-minihead-title {
            font-size: 8px;
            letter-spacing: 0.07em;
        }
        .wk-automation-label { font-size: 9px; }
        .wk-automation-node {
            min-height: 58px;
            padding: 9px 10px;
        }
        .wk-automation-node-text strong { font-size: 11px; }
        .wk-automation-node-text span { font-size: 9px; }
        .wk-automation-meta { gap: 8px; margin-top: 6px; }
        .wk-automation-meta-card { padding: 10px; }
    }

    .wk-shooting-showcase {
        border-radius: 32px;
        border: 1px solid rgba(0,0,0,0.05);
        background: #fff;
        box-shadow: var(--card-shadow);
        overflow: hidden;
        transition: transform 0.32s cubic-bezier(0.34,1.56,0.64,1), box-shadow 0.28s ease, border-color 0.28s ease;
    }
    .wk-shooting-showcase:hover {
        transform: translateY(-8px);
        border-color: rgba(0,0,0,0.08);
        box-shadow: 0 24px 42px rgba(0,0,0,0.1), 0 8px 0 rgba(20,20,20,0.04);
    }
    .wk-card--shooting .wk-card-img {
        aspect-ratio: auto;
        border-bottom: 1px solid rgba(0,0,0,0.05);
    }
    .wk-card--shooting .wk-shooting-stage {
        height: 100%;
    }
    .wk-card--automation .wk-card-img {
        aspect-ratio: auto;
        max-height: none;
        display: flex;
        align-items: flex-start;
        justify-content: center;
        border-bottom: 1px solid rgba(0,0,0,0.05);
        background: #f6f4f1;
        overflow: visible;
    }
    .wk-card--automation {
        display: block !important;
        margin-bottom: 0;
    }
    .wk-card--automation .wk-card-img .ia-layout {
        width: 100%;
        height: auto;
    }
    .wk-card--automation .wk-card-img .ia-layout__card {
        padding: 18px;
        height: auto;
    }
    .wk-card--automation .ia-wf-body {
        padding: 24px 26px;
    }
    .wk-card--automation .ia-wf-node-card {
        min-height: 84px;
    }
    .wk-card--automation .wk-card-body {
        display: block !important;
        width: 100% !important;
        max-width: none !important;
        float: none !important;
        clear: both;
        margin-top: 0;
    }
    .wk-card--automation .wk-card-img {
        display: block !important;
        width: 100% !important;
        max-width: none !important;
        float: none !important;
    }
    .wk-project-block:last-child {
        margin-bottom: 0;
    }
    .wk-project-block:last-child .wk-card--automation {
        margin-bottom: 0;
    }
    @media (max-width: 767px) {
        .wk-card--automation {
            margin-bottom: 0;
        }
    }
    .wk-shooting-stage {
        position: relative;
        overflow: hidden;
        padding: 12px;
        background: #f1efec;
    }
    .wk-shooting-controls {
        position: absolute;
        top: 18px;
        right: 18px;
        z-index: 3;
        display: flex;
        align-items: center;
        gap: 10px;
    }
    .wk-shooting-controls .wk-shooting-control[data-shooting-prev] {
        display: inline-flex;
    }
    .wk-shooting-control {
        width: 42px;
        height: 42px;
        border-radius: 999px;
        border: 1px solid rgba(0,0,0,0.08);
        background: rgba(255,255,255,0.92);
        color: var(--t1);
        display: inline-flex;
        align-items: center;
        justify-content: center;
        box-shadow: 0 12px 22px rgba(15,23,42,0.08);
        transition: transform 0.22s ease, box-shadow 0.22s ease, background 0.22s ease;
        cursor: pointer;
    }
    .wk-shooting-control:hover {
        transform: translateY(-2px);
        box-shadow: 0 16px 26px rgba(15,23,42,0.12);
        background: #fff;
    }
    .wk-shooting-control .icon {
        font-size: 14px;
    }
    .wk-shooting-track {
        display: flex;
        gap: 12px;
        will-change: transform;
        transition: transform 0.65s ease;
    }
    .wk-shooting-tile {
        position: relative;
        overflow: hidden;
        border-radius: 24px;
        flex: 0 0 calc((100% - 48px) / 5);
        aspect-ratio: 9 / 16;
        min-height: 0;
        background: #dfe3ea;
        cursor: zoom-in;
    }
    .wk-shooting-tile img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        display: block;
        transition: transform 0.45s ease;
    }
    .wk-shooting-tile:hover img {
        transform: scale(1.04);
    }
    .wk-shooting-tile::after {
        content: "";
        position: absolute;
        inset: 0;
        background: linear-gradient(to top, rgba(0,0,0,0.14) 0%, transparent 44%);
        pointer-events: none;
    }
    .wk-shot-lightbox {
        position: fixed;
        inset: 0;
        z-index: 4500;
        display: flex;
        align-items: center;
        justify-content: center;
        padding: 28px;
        background: rgba(8, 8, 10, 0.88);
        backdrop-filter: blur(10px);
        opacity: 0;
        visibility: hidden;
        transition: opacity 0.22s ease, visibility 0.22s ease;
    }
    .wk-shot-lightbox.is-open {
        opacity: 1;
        visibility: visible;
    }
    .wk-shot-lightbox__inner {
        position: relative;
        max-width: min(92vw, 1280px);
        max-height: 88vh;
        border-radius: 24px;
        overflow: hidden;
        box-shadow: 0 24px 80px rgba(0,0,0,0.42);
        transform: scale(0.985);
        transition: transform 0.22s ease;
    }
    .wk-shot-lightbox.is-open .wk-shot-lightbox__inner {
        transform: scale(1);
    }
    .wk-shot-lightbox__inner--logo {
        background: rgba(255,255,255,0.98);
        padding: 28px;
        max-width: min(88vw, 960px);
    }
    .wk-shot-lightbox__inner--logo .wk-shot-lightbox__img {
        margin: 0 auto;
        max-width: min(100%, 760px);
        max-height: 72vh;
        background: transparent;
    }
    .wk-shot-lightbox__img {
        display: block;
        max-width: 100%;
        max-height: 88vh;
        object-fit: contain;
        background: #111;
    }
    .wk-shot-lightbox__close {
        position: absolute;
        top: 14px;
        right: 14px;
        width: 42px;
        height: 42px;
        border: 0;
        border-radius: 999px;
        background: rgba(255,255,255,0.92);
        color: #111;
        font-size: 18px;
        line-height: 1;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        cursor: pointer;
        box-shadow: 0 10px 24px rgba(0,0,0,0.16);
    }
    .wk-shooting-band {
        display: grid;
        grid-template-columns: minmax(0, 1.35fr) minmax(280px, 0.9fr);
        gap: 28px;
        padding: 30px 32px 32px;
        align-items: start;
    }
    .wk-shooting-meta {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 12px;
        margin-bottom: 14px;
    }
    .wk-shooting-title {
        font-size: clamp(28px, 2.3vw, 36px);
        font-weight: 600;
        letter-spacing: -0.05em;
        line-height: 1.04;
        color: var(--t1);
        margin: 0 0 12px;
        transition: transform 0.24s ease;
    }
    .wk-shooting-showcase:hover .wk-shooting-title {
        transform: translateY(-2px);
    }
    .wk-shooting-copy {
        font-size: 16px;
        line-height: 1.72;
        color: var(--t2);
        margin: 0;
    }
    .wk-shooting-side {
        border-left: 1px solid rgba(0,0,0,0.06);
        padding-left: 28px;
        display: flex;
        flex-direction: column;
        gap: 16px;
        min-height: 100%;
    }
    .wk-shooting-side-label {
        font-size: 12px;
        font-weight: 700;
        letter-spacing: 0.08em;
        text-transform: uppercase;
        color: var(--t3);
        margin: 0 0 6px;
    }
    .wk-shooting-side p {
        font-size: 15px;
        line-height: 1.68;
        color: var(--t2);
        margin: 0;
    }
    .wk-shooting-chips {
        display: flex;
        flex-wrap: wrap;
        gap: 8px;
    }
    @media (max-width: 991px) {
        .wk-shooting-tile { flex-basis: calc((100% - 12px) / 2); }
        .wk-shooting-controls {
            top: 14px;
            right: 14px;
            gap: 8px;
        }
        .wk-shooting-band {
            grid-template-columns: 1fr;
            gap: 22px;
        }
        .wk-shooting-side {
            border-left: 0;
            border-top: 1px solid rgba(0,0,0,0.06);
            padding-left: 0;
            padding-top: 22px;
        }
    }
    @media (max-width: 575px) {
        .wk-project-block-title { font-size: 22px; line-height: 1.06; }
        .wk-project-block-copy { font-size: 16px; }
        .wk-shooting-tile {
            flex-basis: calc((100% - 24px) / 3);
        }
        .wk-shooting-controls {
            top: 12px;
            right: 12px;
        }
        .wk-shooting-control {
            width: 38px;
            height: 38px;
        }
        .wk-shooting-band { padding: 22px 20px 24px; }
        .wk-shooting-title { font-size: 22px; line-height: 1.06; }
        .wk-shooting-copy { font-size: 16px; }
    }

    /* ================================================================
       DOMAINES D'EXPERTISE
       ================================================================ */
    .wk-domains {
        padding: var(--page-gap) 0;
        border-top: 1px solid var(--border);
    }
    .wk-domains-head {
        margin-bottom: 64px;
    }
    .wk-domains-head .wk-eyebrow { display: inline-flex; }
    .wk-domains-head h2 {
        font-size: clamp(42px, 8vw, 110px);
        font-weight: 700; letter-spacing: -0.06em; line-height: 0.92;
        color: var(--t1); margin: 0 0 16px;
    }
    .wk-domains-head h2 span {
        display: block;
    }
    .wk-domains-head p {
        font-size: 16px; line-height: 1.72; color: var(--t2);
        max-width: 600px; margin: 0;
    }

    .wk-domain-grid {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: 22px;
        border: 0;
        border-radius: 0;
        overflow: visible;
        box-shadow: none;
        align-items: stretch;
    }
    @media (max-width: 767px) { .wk-domain-grid { grid-template-columns: 1fr; } }

    .wk-domain-card {
        padding: 36px 34px;
        background: var(--bg-card);
        border: 1px solid rgba(0,0,0,0.05);
        border-radius: var(--card-radius);
        transition: background 0.25s, transform 0.22s ease, box-shadow 0.22s ease, border-color 0.22s ease;
        display: flex; flex-direction: column; gap: 20px;
        box-shadow: var(--card-shadow);
        min-height: 100%;
    }
    .wk-domain-card:hover {
        background: rgba(255,255,255,0.98);
        border-color: rgba(0,0,0,0.08);
        transform: translateY(-8px);
        box-shadow: 0 24px 44px rgba(0,0,0,0.11), 0 8px 0 rgba(20,20,20,0.04);
    }

    .wk-domain-top {
        display: flex; align-items: flex-start; justify-content: space-between; gap: 16px;
    }
    .wk-domain-icon {
        width: 52px; height: 52px; border-radius: 14px;
        background: var(--brand-dim); border: 1px solid var(--brand-border);
        display: flex; align-items: center; justify-content: center;
        color: var(--brand); font-size: 22px; flex-shrink: 0;
        transition: transform 0.28s ease, box-shadow 0.28s ease, background 0.28s ease;
    }
    .wk-domain-num {
        font-size: 11px; font-weight: 700; letter-spacing: 0.1em;
        color: var(--t3); text-transform: uppercase; margin-top: 4px;
    }

    .wk-domain-card h3 {
        font-size: 28px; font-weight: 700; letter-spacing: -0.04em;
        line-height: 1.16; color: var(--t1); margin: 0;
        text-shadow: none;
        transition: transform 0.28s ease, color 0.22s ease;
    }
    .wk-domain-card p {
        font-size: 16px; line-height: 1.72; color: var(--t2); margin: 0;
    }

    .wk-domain-list {
        list-style: none; padding: 0; margin: 0;
        display: flex; flex-direction: column; gap: 10px;
        flex: 1;
    }
    .wk-domain-list li {
        display: flex; align-items: flex-start; gap: 10px;
        font-size: 15px; color: var(--t2); line-height: 1.62;
    }
    .wk-domain-list li::before {
        content: ""; display: block;
        width: 6px; height: 6px; border-radius: 50%;
        background: var(--brand); margin-top: 7px; flex-shrink: 0;
    }

    .wk-domain-tools {
        display: flex; flex-wrap: wrap; gap: 6px; margin-top: auto;
    }
    .wk-domain-tool {
        display: flex; align-items: center; gap: 6px;
        padding: 8px 12px; border-radius: 10px;
        background: #f1f1f4; border: 1px solid rgba(0,0,0,0.05);
        font-size: 13px; font-weight: 600; color: rgba(9,9,11,0.68);
        transition: transform 0.22s ease, background 0.22s ease, border-color 0.22s ease;
    }
    .wk-domain-tool img { height: 14px; width: auto; }

    .wk-domain-card:hover .wk-domain-icon {
        transform: translateY(-3px) scale(1.04);
        background: rgba(255,59,38,0.12);
        box-shadow: 0 14px 26px rgba(255,59,38,0.14);
    }
    .wk-domain-card:hover h3 {
        transform: translateY(-2px);
    }
    .wk-domain-card:hover .wk-domain-tool {
        transform: translateY(-2px);
        background: #f6f6f8;
        border-color: rgba(0,0,0,0.07);
    }

    @media (max-width: 575px) {
        .wk-domain-card { padding: 26px 22px; gap: 16px; }
        .wk-domain-card h3 { font-size: 23px; }
        .wk-domain-card p { font-size: 16px; }
        .wk-domain-list li { font-size: 15px; }
        .wk-domains-head { margin-bottom: 40px; }
    }

    /* ================================================================
       SECTION : "COMMENT ON TRAVAILLE"
       ================================================================ */
    .wk-approach {
        padding: var(--wk-section-gap) 0;
        border-top: 0;
    }
    .wk-approach-inner {
        display: grid; grid-template-columns: 1fr 1fr; gap: 80px; align-items: start;
    }
    @media (max-width: 991px) {
        .wk-approach-inner { grid-template-columns: 1fr; gap: 40px; }
    }
    .wk-approach-left h2 {
        font-size: clamp(42px, 8vw, 110px);
        font-weight: 700; letter-spacing: -0.06em; line-height: 0.92;
        color: var(--t1); margin: 16px 0 20px;
        text-shadow: none;
        max-width: 8.5ch;
    }
    .wk-approach-left p {
        font-size: 16px; line-height: 1.72; color: var(--t2); margin: 0;
    }
    .wk-approach-right {
        display: flex; flex-direction: column; gap: 2px;
        border: 1px solid var(--border); border-radius: var(--card-radius); overflow: hidden;
        box-shadow: var(--card-shadow);
    }
    .wk-step {
        display: flex; gap: 20px; padding: 24px 28px;
        background: var(--bg-card); border-bottom: 1px solid var(--border);
        align-items: flex-start; transition: background 0.2s;
    }
    .wk-step:last-child { border-bottom: none; }
    .wk-step:hover { background: rgba(0,0,0,0.025); }
    .wk-step-num {
        font-size: 13px; font-weight: 800; color: var(--brand);
        min-width: 28px; padding-top: 2px; letter-spacing: -0.02em;
    }
    .wk-step-body {}
    .wk-step-title { font-size: 17px; font-weight: 700; color: var(--t1); margin: 0 0 6px; letter-spacing: -0.02em; }
    .wk-step-text  { font-size: 15px; line-height: 1.7; color: var(--t2); margin: 0; }
    @media (max-width: 575px) {
        .wk-step { padding: 18px 20px; gap: 14px; }
    }

    /* ================================================================
       CTA FINAL
       ================================================================ */
    .wk-cta {
        padding: var(--wk-section-gap) 0;
        border-top: 0;
    }
    .wk-cta-inner {
        border-radius: 28px;
        border: 1px solid rgba(255,59,38,0.15);
        background: linear-gradient(135deg, rgba(255,59,38,0.07) 0%, rgba(255,59,38,0.02) 60%, transparent 100%);
        padding: 72px 48px; text-align: center;
        position: relative; overflow: hidden;
    }
    .wk-cta-inner::before {
        content: "";
        position: absolute; top: -80px; left: 50%; transform: translateX(-50%);
        width: 400px; height: 200px;
        background: radial-gradient(ellipse, rgba(255,59,38,0.15) 0%, transparent 70%);
        pointer-events: none;
    }
    .wk-cta-inner > * { position: relative; }
    .wk-cta-eyebrow { display: block; font-size: 11px; font-weight: 700; letter-spacing: 0.12em; text-transform: uppercase; color: var(--brand); margin-bottom: 16px; }
    .wk-cta-title {
        font-size: clamp(42px, 8vw, 110px);
        font-weight: 700; letter-spacing: -0.06em; line-height: 0.92;
        color: var(--t1); margin: 0 0 16px;
        max-width: 8.5ch;
        margin-left: auto;
        margin-right: auto;
    }
    .wk-cta-sub {
        font-size: 16px; line-height: 1.72; color: var(--t2);
        max-width: 460px; margin: 0 auto 36px;
    }
    .wk-cta-btns { display: flex; gap: 12px; justify-content: center; flex-wrap: wrap; }
    @media (max-width: 575px) {
        .wk-cta-inner { padding: 44px 22px; }
        .wk-cta-btns { flex-direction: column; }
        .wk-cta-btns a { text-align: center; justify-content: center; }
    }

    /* ================================================================
       FOOTER (reprise identique à l'index)
       ================================================================ */
    .ib-footer {
        background: #0d0d0d;
        border-top: 1px solid rgba(255, 255, 255, 0.06);
        padding: 76px 0 0;
        position: relative;
        z-index: 2;
        box-shadow: 0 100vh 0 100vh #0d0d0d;
    }

    .ib-footer .container {
        width: min(calc(100% - 64px), 1280px);
        max-width: none;
        margin-inline: auto;
    }

    .ib-footer-top {
        display: grid;
        grid-template-columns: minmax(220px, 0.8fr) minmax(0, 1.5fr);
        gap: clamp(56px, 9vw, 150px);
        align-items: start;
        padding-bottom: 56px;
        border-bottom: 1px solid rgba(255, 255, 255, 0.07);
    }

    .ib-footer-brand {
        min-width: 0;
    }

    .ib-footer-logo {
        display: inline-flex;
        align-items: center;
        margin-bottom: 18px;
        text-decoration: none;
    }

    .ib-footer-logo img {
        width: auto;
        height: 30px;
        filter: brightness(0) invert(1);
    }

    .ib-footer-logo-text {
        display: block;
        color: #fff;
        font-size: 24px;
        font-weight: 700;
        line-height: 1;
        letter-spacing: -0.055em;
    }

    .ib-footer-tagline {
        max-width: 220px;
        margin: 0 0 22px;
        color: rgba(255, 255, 255, 0.42);
        font-size: 14px;
        line-height: 1.65;
    }

    .ib-footer-socials {
        display: flex;
        gap: 10px;
        align-items: center;
    }

    .ib-footer-social {
        display: flex;
        width: 38px;
        height: 38px;
        align-items: center;
        justify-content: center;
        border: 1px solid rgba(255, 255, 255, 0.12);
        border-radius: 50%;
        color: rgba(255, 255, 255, 0.58);
        font-size: 14px;
        text-decoration: none;
        transition: border-color 0.2s, color 0.2s, transform 0.2s;
    }

    .ib-footer-social:hover {
        border-color: rgba(255, 255, 255, 0.42);
        color: #fff;
        transform: translateY(-2px);
    }

    .ib-footer-nav {
        display: grid;
        grid-template-columns: repeat(3, minmax(120px, max-content));
        gap: clamp(42px, 6vw, 88px);
        justify-content: end;
    }

    .ib-footer-nav-title {
        margin-bottom: 18px;
        color: rgba(255, 255, 255, 0.32);
        font-size: 11px;
        font-weight: 700;
        letter-spacing: 0.1em;
        text-transform: uppercase;
    }

    .ib-footer-nav-col ul {
        display: flex;
        flex-direction: column;
        gap: 12px;
        margin: 0;
        padding: 0;
        list-style: none;
    }

    .ib-footer-nav-col ul li a {
        color: rgba(255, 255, 255, 0.56);
        font-size: 14px;
        line-height: 1.35;
        text-decoration: none;
        transition: color 0.2s;
    }

    .ib-footer-nav-col ul li a:hover {
        color: #fff;
    }

    .ib-footer-bottom {
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding: 24px 0;
    }

    .ib-footer-bottom p {
        margin: 0;
        color: rgba(255, 255, 255, 0.28);
        font-size: 13px;
    }

    .ib-footer-top-btn {
        display: flex;
        align-items: center;
        gap: 7px;
        color: rgba(255, 255, 255, 0.46);
        font-size: 13px;
        font-weight: 600;
        text-decoration: none;
        transition: color 0.2s;
    }

    .ib-footer-top-btn .icon {
        font-size: 15px;
    }

    .ib-footer-top-btn:hover {
        color: #fff;
    }

    @media (max-width: 991px) {
        .ib-footer-top {
            grid-template-columns: 1fr;
            gap: 42px;
        }

        .ib-footer-nav {
            justify-content: start;
        }
    }

    @media (max-width: 575px) {
        .ib-footer {
            padding-top: 52px;
        }

        .ib-footer .container {
            width: min(calc(100% - 32px), 1280px);
        }

        .ib-footer-top {
            gap: 34px;
            padding-bottom: 34px;
        }

        .ib-footer-brand,
        .ib-footer-tagline {
            max-width: none;
            text-align: center;
        }

        .ib-footer-logo,
        .ib-footer-socials {
            justify-content: center;
        }

        .ib-footer-nav {
            grid-template-columns: repeat(2, minmax(0, 1fr));
            gap: 30px 22px;
            justify-content: stretch;
        }

        .ib-footer-nav-title,
        .ib-footer-nav-col ul,
        .ib-footer-nav-col ul li a {
            text-align: center;
        }

        .ib-footer-nav-col:last-child {
            grid-column: 1 / -1;
        }

        .ib-footer-bottom {
            flex-direction: column;
            gap: 12px;
            text-align: center;
        }
    }
    .wk-btn-dark {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        min-height: 62px;
        padding: 0 34px;
        border-radius: 999px;
        border: 1px solid rgba(255,255,255,0.12);
        background: linear-gradient(180deg, #2b2b2d 0%, #151515 100%) !important;
        color: #fff !important;
        box-shadow: 0 5px 0 rgba(8,8,8,0.9), 0 18px 34px rgba(0,0,0,0.12);
        font-weight: 700;
        text-decoration: none;
        transition: transform 0.2s ease, box-shadow 0.2s ease;
    }
    .wk-btn-dark:hover {
        transform: translateY(-2px);
        box-shadow: 0 5px 0 rgba(8,8,8,0.9), 0 22px 38px rgba(0,0,0,0.16);
    }
    .wk-btn-light {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        min-height: 62px;
        padding: 0 34px;
        border-radius: 999px;
        border: 1px solid rgba(0,0,0,0.08);
        background: linear-gradient(180deg, #ffffff 0%, #f6f6f6 100%) !important;
        color: #111 !important;
        box-shadow: 0 4px 0 rgba(20,20,20,0.08), 0 12px 28px rgba(0,0,0,0.08);
        font-weight: 700;
        text-decoration: none;
        transition: transform 0.2s ease, box-shadow 0.2s ease, background 0.2s ease;
    }
    .wk-btn-light:hover {
        transform: translateY(-2px);
        background: #fff !important;
        box-shadow: 0 4px 0 rgba(20,20,20,0.08), 0 16px 32px rgba(0,0,0,0.1);
    }
    .wk-header-cta {
        min-height: 78px;
        padding: 0 46px !important;
        border-radius: 999px !important;
        border: 1px solid rgba(255,255,255,0.12) !important;
        background: linear-gradient(180deg, #2b2b2d 0%, #151515 100%) !important;
        color: #fff !important;
        box-shadow: 0 5px 0 rgba(8,8,8,0.9), 0 18px 34px rgba(0,0,0,0.12) !important;
        font-weight: 700 !important;
    }
    .wk-header-cta:hover {
        transform: translateY(-2px) !important;
        box-shadow: 0 5px 0 rgba(8,8,8,0.9), 0 22px 38px rgba(0,0,0,0.16) !important;
    }

    /* ================================================================
       RESPONSIVE GLOBAL — tous breakpoints
       ================================================================ */

    /* ── 991px — tablette ─────────────────────────────────────────── */
    @media (max-width: 991px) {
        /* Domains head */
        .wk-domains-head { text-align: center; margin-bottom: 44px; }
        .wk-domains-head .wk-eyebrow { margin-left: auto; margin-right: auto; }
        .wk-domains-head p { margin-left: auto; margin-right: auto; }

        /* Project block heads */
        .wk-project-block-head { align-items: center; text-align: center; }
        .wk-project-block-copy { text-align: center; }

        /* Approach left */
        .wk-approach-left { text-align: center; }
        .wk-approach-left .wk-eyebrow { margin-left: auto; margin-right: auto; }

        /* Shooting */
        .wk-shooting-band > div:first-child { text-align: center; }
        .wk-shooting-meta { justify-content: center; }
        .wk-shooting-chips { justify-content: center; }

        /* Shooting side */
        .wk-shooting-side { align-items: center; text-align: center; }
        .wk-shooting-side .wk-link { align-self: center; }
    }

    /* ── 767px — mobile large ─────────────────────────────────────── */
    @media (max-width: 767px) {
        /* Filtres */
        .wk-filters { padding: 44px 0 24px; }
        .wk-filter-head h2 { font-size: clamp(28px, 7.5vw, 44px); line-height: 0.98; max-width: 9ch; }

        /* Domains */
        .wk-domains-head h2 { font-size: clamp(28px, 7.5vw, 46px); line-height: 0.98; }
        .wk-domains-head p  { font-size: 15px; }

        /* Project blocks */
        .wk-projects { padding: 72px 0 60px; }
        .wk-project-block + .wk-project-block { margin-top: 56px; }
        .wk-project-block--after-automation { margin-top: 0 !important; }
        .wk-project-block-title { text-align: center; }
        .wk-section-divider { margin: 44px auto 34px; }

        /* Editorial */
        .wk-editorial-body { text-align: center; }
        .wk-chips { justify-content: center; }
        .wk-editorial-foot {
            flex-direction: column;
            align-items: center;
            gap: 10px;
        }

        /* Approach */
        .wk-approach-left h2 { font-size: clamp(28px, 7.5vw, 44px); line-height: 0.98; max-width: 9ch; }

        /* CTA */
        .wk-cta-title { font-size: clamp(30px, 7.5vw, 48px); line-height: 0.98; max-width: 9ch; }
    }

    /* ── 575px — mobile ───────────────────────────────────────────── */
    @media (max-width: 575px) {
        /* Filtres */
        .wk-filters { padding: 36px 0 20px; }
        .wk-filter-head h2 { font-size: clamp(24px, 8vw, 38px); line-height: 0.98; max-width: 8ch; }
        .wk-filter-head p  { font-size: 14px; }

        /* Domains */
        .wk-domains-head { margin-bottom: 32px; }
        .wk-domains-head h2 { font-size: clamp(24px, 8vw, 38px); line-height: 0.98; }

        /* Approach */
        .wk-approach-left h2 { font-size: clamp(24px, 8vw, 38px); line-height: 0.98; max-width: 8ch; }
        .wk-approach-left p  { font-size: 15px; }

        /* Projects */
        .wk-projects { padding: 64px 0 50px; }
        .wk-project-block + .wk-project-block { margin-top: 44px; }
        .wk-project-block--after-automation { margin-top: 0 !important; }
        .wk-section-divider { margin: 38px auto 28px; }

        /* CTA */
        .wk-cta-title { font-size: clamp(26px, 8vw, 38px); line-height: 0.98; max-width: 8ch; }
        .wk-cta-sub   { font-size: 15px; margin-bottom: 24px; }

        /* Shooting */
        .wk-shooting-stage { padding: 10px; }
        .wk-shooting-tile { min-height: 160px; border-radius: 18px; }

        /* Domain card */
        .wk-domain-card p   { font-size: 15px; }
        .wk-domain-list li  { font-size: 14px; }

        /* Chips */
        .wk-chip { font-size: 12px; padding: 6px 10px; }
        .wk-domain-tool { font-size: 12px; padding: 7px 10px; }

        /* Eyebrow pill */
        .wk-eyebrow { font-size: 13px; padding: 9px 16px; }

        /* Ensure hero stats don't overflow */
        .wk-hstat-label { font-size: 10px; letter-spacing: 0.04em; }
    }


    @media (max-width: 767px) {
        .wk-project-block + .wk-project-block {
            margin-top: 64px;
        }
        .wk-project-block--after-automation { margin-top: 0 !important; }
        .wk-project-block-head {
            margin-bottom: 32px;
        }
        .wk-grid--web {
            gap: 22px;
        }
        .wk-grid--web .wk-card-body {
            align-items: center;
            text-align: center;
        }
        .wk-grid--web .wk-card-header,
        .wk-grid--web .wk-card-title,
        .wk-grid--web .wk-card-desc,
        .wk-grid--web .wk-chip-groups,
        .wk-grid--web .wk-card-foot {
            width: 100%;
        }
        .wk-grid--web .wk-card-desc {
            text-align: center;
            max-width: none;
        }
        .wk-grid--web .wk-chip-groups {
            align-items: stretch;
        }
        .wk-grid--web .wk-chip-group,
        .wk-grid--web .wk-chips {
            justify-content: center;
        }
        .wk-grid--web .wk-chip-label {
            text-align: center;
        }
        .wk-grid--web .wk-card-foot {
            flex-direction: column;
            align-items: center;
            gap: 10px;
        }
    }

    @media (max-width: 575px) {
        .wk-projects {
            padding-top: 64px;
            padding-bottom: 64px;
        }
        .wk-project-block--after-automation { margin-top: 0 !important; }
        .wk-domains-head h2 {
            max-width: 12ch;
            margin-left: auto;
            margin-right: auto;
            line-height: 1.12;
            letter-spacing: -0.035em;
        }
        .wk-domains-head h2 span + span {
            margin-top: 0.04em;
        }
        .wk-project-block + .wk-project-block {
            margin-top: 56px;
        }
        .wk-project-block-head {
            margin-bottom: 28px;
        }
        .wk-projects > .container > .wk-project-block:first-child .wk-project-block-head {
            align-items: flex-start;
            text-align: left;
        }
        .wk-projects > .container > .wk-project-block:first-child .wk-project-block-title,
        .wk-projects > .container > .wk-project-block:first-child .wk-project-block-copy {
            text-align: left;
        }
        .wk-projects > .container > .wk-project-block:first-child .wk-project-block-copy {
            max-width: none;
        }
        .wk-domain-tools {
            flex-wrap: nowrap;
            overflow-x: auto;
            overflow-y: hidden;
            -webkit-overflow-scrolling: touch;
            scrollbar-width: none;
            justify-content: flex-start;
            padding-bottom: 2px;
        }
        .wk-domain-tools::-webkit-scrollbar {
            display: none;
        }
        .wk-domain-tool {
            flex: 0 0 auto;
            white-space: nowrap;
        }
        .wk-grid--web .wk-card-body {
            padding: 22px 20px 24px;
        }
        .wk-grid--web .wk-card-img {
            aspect-ratio: 4 / 3;
        }
        .wk-grid--web .wk-card-preview--desktop img,
        .wk-grid--web .wk-card-preview--desktop video {
            object-position: center top;
        }
        .wk-grid--web .wk-card-preview--mobile {
            padding: 16px 10px 12px;
        }
        .wk-grid--web .wk-card-desc {
            font-size: 16px;
            line-height: 1.7;
        }
        .wk-grid--web .wk-chip-groups {
            gap: 12px;
        }
        .wk-grid--web .wk-chip-group {
            width: 100%;
            flex-wrap: wrap;
            justify-content: center;
        }
        .wk-grid--web .wk-chip-label {
            flex-basis: 100%;
            margin-right: 0;
            margin-bottom: 2px;
            text-align: center;
        }
        .wk-grid--web .wk-card-foot {
            padding-top: 14px;
        }
    }
    .section-hero .content-wrap {
        max-width: min(100%, 1360px);
        margin-left: auto;
        margin-right: auto;
        display: flex;
        flex-direction: column;
        align-items: center;
        text-align: center;
    }
    .section-hero .title.text-display-2 {
        display: block;
        width: 100%;
        max-width: 1480px;
        margin-left: auto;
        margin-right: auto;
        text-align: center;
        font-size: clamp(80px, 7.8vw, 122px);
        line-height: 0.94;
        letter-spacing: -0.045em;
    }
    .section-hero .hero-title-break {
        display: block;
    }
    .section-hero .title1 {
        display: inline;
    }
    .section-hero .title2 {
        display: inline-flex !important;
        align-items: center;
        justify-content: center;
        gap: 20px;
        flex-wrap: nowrap;
        width: auto;
        margin-top: 0.02em;
    }
    .section-hero .title2 > span {
        display: inline;
        white-space: nowrap;
    }
    .section-hero .title-icon {
        --hero-icon-scale: 1;
        pointer-events: none;
        flex: 0 0 auto;
        position: relative;
        overflow: visible;
    }
    .section-hero .title-icon--desktop {
        display: inline-block !important;
        width: calc(255px * var(--hero-icon-scale));
        height: calc(155px * var(--hero-icon-scale));
        margin-left: 4px;
        vertical-align: middle;
    }
    .section-hero .title-icon--mobile {
        display: none !important;
        width: calc(255px * var(--hero-icon-scale));
        height: calc(155px * var(--hero-icon-scale));
        margin: 14px auto 0 !important;
        align-self: center;
        left: auto;
        right: auto;
        transform: none;
    }
    .section-hero .title-icon .box {
        display: block;
        width: calc(255px * var(--hero-icon-scale));
        height: calc(80px * var(--hero-icon-scale));
        border-radius: 999px;
        background: linear-gradient(180deg, #EA2B16 0%, #FF3B26 100%);
        box-shadow: 0px 3.44px 5.57px 0px rgba(0, 0, 0, 0.0862745098), 0px 22.91px 37.08px 0px rgba(255, 59, 0, 0.1647058824), 0px 76px 123px 0px rgba(255, 59, 0, 0.0509803922), 0px 5.05px 8.18px 0px rgba(255, 59, 0, 0.1019607843), 0px 16.98px 27.47px 0px rgba(255, 59, 0, 0.0470588235), 0px 56px 83px 0px rgba(255, 59, 0, 0.2509803922), 0px 14px 34px 0px rgba(255, 59, 0, 0.2509803922), 0px 1px 2px 0px rgba(255, 59, 0, 0.4);
    }
    .section-hero .title-icon .title-icon-wrap {
        position: absolute;
        top: 0;
        left: 0;
        width: calc(255px * var(--hero-icon-scale));
        height: calc(177px * var(--hero-icon-scale));
        overflow: hidden;
    }
    .section-hero .title-icon .img-1,
    .section-hero .title-icon .img-2,
    .section-hero .title-icon .img-3 {
        position: absolute;
        object-fit: contain;
        height: auto;
    }
    .section-hero .title-icon .img-1 {
        width: calc(133px * var(--hero-icon-scale));
        left: calc(49px * var(--hero-icon-scale));
        top: 0;
        transform: none;
    }
    .section-hero .title-icon .img-2 {
        width: calc(115px * var(--hero-icon-scale));
        left: calc(136px * var(--hero-icon-scale));
        top: calc(28px * var(--hero-icon-scale));
        transform: none;
    }
    .section-hero .title-icon .img-3 {
        width: calc(105px * var(--hero-icon-scale));
        left: calc(66px * var(--hero-icon-scale));
        top: calc(83px * var(--hero-icon-scale));
        transform: none;
    }
    .section-hero .text {
        max-width: 1040px;
        margin-left: auto;
        margin-right: auto;
        margin-top: 20px;
        text-align: center;
        font-size: 18px;
        line-height: 1.58;
    }
    .section-hero .bot-btns {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        gap: 16px;
        margin-top: 20px;
    }
    .section-hero .bot-btns .tf-btn,
    .section-hero .bot-btns .tf-btn-2 {
        min-width: 0;
        position: relative;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: 12px;
        border-radius: 99px;
        font-weight: 600;
        font-size: 16px;
        line-height: 24px;
        padding: 14px 24px;
        overflow: hidden;
        transform: none !important;
    }
    .section-hero .bot-btns .tf-btn {
        color: var(--white) !important;
        background: radial-gradient(62.56% 62.56% at 28.14% -10.42%, rgba(255, 255, 255, 0.2) 0%, rgba(255, 255, 255, 0) 100%), linear-gradient(0deg, #272727, #272727) !important;
        border-color: transparent !important;
        box-shadow: 0px -3px 0px 0px #080808 inset, 0px 1px 0px 0px rgba(255, 255, 255, 0.3019607843) inset, 0px 2.77px 2.21px 0px rgba(0, 0, 0, 0.1215686275), 0px 6.65px 5.32px 0px rgba(0, 0, 0, 0.1294117647), 0px 12.52px 10.02px 0px rgba(0, 0, 0, 0.1333333333), 0px 22.34px 17.87px 0px rgba(0, 0, 0, 0.1411764706), 0px 41.78px 33.42px 0px rgba(0, 0, 0, 0.1490196078), 0px 100px 80px 0px rgba(0, 0, 0, 0.1490196078), 0px 3px 3px 0px rgba(0, 0, 0, 0.1411764706), 0px 2.77px 2.21px 0px rgba(0, 0, 0, 0.1215686275) !important;
    }
    .section-hero .bot-btns .tf-btn:hover {
        color: var(--white) !important;
        background: radial-gradient(62.56% 62.56% at 50% -13%, rgba(255, 255, 255, 0.7) 0%, rgba(255, 255, 255, 0) 100%), linear-gradient(0deg, #272727, #272727) !important;
        box-shadow: 0px -3px 0px 0px rgb(8, 8, 8) inset, 0px 1px 0px 0px rgba(255, 255, 255, 0.3) inset, 0px 2.77px 2.21px 0px rgba(0, 0, 0, 0.12), 0px 6.65px 5.32px 0px rgba(0, 0, 0, 0.13), 0px 12.52px 10.02px 0px rgba(0, 0, 0, 0.14), 0px 22.34px 17.87px 0px rgba(0, 0, 0, 0.14), 0px 41.78px 33.42px 0px rgba(0, 0, 0, 0.15), 0px 100px 80px 0px rgba(0, 0, 0, 0.15), 0px 3px 3px 0px rgba(0, 0, 0, 0.14), 0px 2.77px 2.21px 0px rgba(0, 0, 0, 0.12) !important;
    }
    .section-hero .bot-btns .tf-btn-2 {
        color: var(--primary) !important;
        background: radial-gradient(62.56% 62.56% at 28.14% -10.42%, rgba(255, 255, 255, 0.2) 0%, rgba(255, 255, 255, 0) 100%), linear-gradient(0deg, #F5F5F5, #F5F5F5) !important;
        border-color: transparent !important;
        box-shadow: 0px -3px 0px 0px #E9E9E9 inset, 0px 1px 0px 0px rgba(255, 255, 255, 0.6980392157) inset, 0px 2.77px 2.21px 0px rgba(0, 0, 0, 0.1215686275), 0px 3px 3px 0px rgba(0, 0, 0, 0.1411764706) !important;
        backdrop-filter: none !important;
    }
    .section-hero .bot-btns .tf-btn-2:hover {
        color: var(--brand) !important;
        background: radial-gradient(62.56% 62.56% at 28.14% -10.42%, rgba(255, 255, 255, 0.2) 0%, rgba(255, 255, 255, 0) 100%), linear-gradient(0deg, #F5F5F5, #F5F5F5) !important;
        box-shadow: 0px -3px 0px 0px #E9E9E9 inset, 0px 1px 0px 0px rgba(255, 255, 255, 0.6980392157) inset, 0px 2.77px 2.21px 0px rgba(0, 0, 0, 0.1215686275), 0px 3px 3px 0px rgba(0, 0, 0, 0.1411764706) !important;
    }
    @media (max-width: 1199px) {
        .section-hero .content-wrap {
            max-width: 900px;
        }
        .section-hero .title.text-display-2 {
            font-size: clamp(54px, 8.2vw, 82px) !important;
            line-height: 0.96;
        }
        .section-hero .title2 {
            gap: 16px;
        }
        .section-hero .title-icon--desktop {
            --hero-icon-scale: 0.9;
        }
        .section-hero .text {
            max-width: 760px;
            font-size: 16px;
            line-height: 1.72;
        }
    }
    @media (max-width: 991px) {
        .section-hero .content-wrap {
            max-width: 340px;
        }
        .section-hero .title.text-display-2 {
            font-size: clamp(36px, 10.2vw, 46px) !important;
            line-height: 1.01;
            display: block;
            max-width: 330px;
            letter-spacing: -0.042em;
        }
        .section-hero .hero-title-break {
            display: none;
        }
        .section-hero .title1 {
            display: block;
        }
        .section-hero .title2 {
            display: block !important;
            width: 100%;
            margin-top: 8px;
        }
        .section-hero .title2 > span {
            display: block;
            white-space: normal;
            max-width: 100%;
            text-align: center;
        }
        .section-hero .title-icon--desktop {
            display: none !important;
        }
        .section-hero .title-icon--mobile {
            display: block !important;
            --hero-icon-scale: 0.88;
            width: 100%;
            max-width: 320px;
            align-self: center;
            left: auto;
            right: auto;
            transform: none;
        }
        .section-hero .text {
            max-width: 320px;
            font-size: 15px !important;
            line-height: 1.68 !important;
            margin-top: 18px;
        }
        .section-hero .bot-btns {
            flex-direction: column !important;
            align-items: stretch !important;
            width: min(100%, 300px);
            margin-left: auto;
            margin-right: auto;
            margin-top: 16px;
            gap: 12px !important;
        }
        .section-hero .bot-btns .tf-btn,
        .section-hero .bot-btns .tf-btn-2 {
            width: 100%;
            justify-content: center;
        }
    }
    @media (max-width: 575px) {
        .section-hero .title.text-display-2 {
            font-size: clamp(31px, 11.4vw, 40px) !important;
            line-height: 1.02;
        }
        .section-hero .title1,
        .section-hero .title2 > span {
            text-wrap: balance;
        }
        .section-hero .title-icon--mobile {
            --hero-icon-scale: 0.82;
            max-width: 300px;
            align-self: center;
            left: auto;
            right: auto;
            transform: none;
        }
    }
