        :root{
            --tc-primary:#653DA5;
            --tc-primary-2:#663DA5;
            --tc-primary-dark:#4A2B75;
            --tc-primary-light:#F4EEFF;
            --tc-text:#111827;
            --tc-muted:#4B5563;
            --tc-soft:#6B7280;
            --tc-border:#E5E7EB;
            --tc-bg:#FFFFFF;
            --tc-bg-soft:#F9FAFB;
            --tc-radius:24px;
            --tc-shadow:0 24px 70px rgba(17,24,39,.08);
            --tc-shadow-purple:0 34px 90px rgba(101,61,165,.16);
        }




        .tc-case img {
            max-width:100%;
            height:auto;
            display:block;
        }




        .tc-case{
            position:relative;
            overflow:visible;
            padding:78px 0 96px;
            background:
                radial-gradient(circle at 10% 4%, rgba(101,61,165,.11) 0, rgba(101,61,165,0) 32%),
                radial-gradient(circle at 90% 18%, rgba(244,238,255,.9) 0, rgba(244,238,255,0) 30%),
                linear-gradient(180deg,#fff 0%,#fff 58%,#fbfaff 100%);
        }

        .tc-case:before{
            content:"";
            position:absolute;
            top:210px;
            left:50%;
            width:1100px;
            height:1100px;
            transform:translateX(-50%);
            background:
                linear-gradient(90deg, rgba(101,61,165,.06) 1px, transparent 1px),
                linear-gradient(180deg, rgba(101,61,165,.06) 1px, transparent 1px);
            background-size:56px 56px;
            mask-image:radial-gradient(circle, #000 0%, transparent 66%);
            pointer-events:none;
        }

        .tc-case__inner{
            position:relative;
            z-index:2;
        }

        .tc-case__breadcrumbs{
            display:flex;
            flex-wrap:wrap;
            gap:8px;
            align-items:center;
            margin:0 0 34px;
            color:var(--tc-soft);
            font-size:14px;
        }

        .tc-case__breadcrumbs a{
            text-decoration:none;
            color:var(--tc-muted);
            transition:.2s ease;
        }

        .tc-case__breadcrumbs a:hover{
            color:var(--tc-primary);
        }

        .tc-case__hero{
            max-width:1000px;
            margin:0 auto 54px;
            text-align:center;
        }

        .tc-case__badge{
            display:inline-flex;
            align-items:center;
            gap:9px;
            padding:11px 20px;
            margin-bottom:22px;
            border:1px solid rgba(101,61,165,.16);
            border-radius:999px;
            background:rgba(244,238,255,.82);
            color:var(--tc-primary);
            font-size:14px;
            font-weight:700;
            letter-spacing:.02em;
        }

        .tc-case__badge:before{
            content:"";
            width:9px;
            height:9px;
            border-radius:999px;
            background:var(--tc-primary);
            box-shadow:0 0 0 7px rgba(101,61,165,.12);
        }

        .tc-case__hero h1{
            max-width:980px;
            margin:0 auto;
            font-size:clamp(34px,4.3vw,62px);
            line-height:1.07;
            letter-spacing:-.035em;
        }

        .tc-case__lead{
            max-width:790px;
            margin:26px auto 0;
            color:var(--tc-muted);
            font-size:20px;
            line-height:1.72;
        }

        .tc-case__video-zone{
            display:grid;
            grid-template-columns:minmax(0,1fr) 420px minmax(0,1fr);
            align-items:center;
            gap:34px;
            margin:0 0 66px;
        }

        .tc-case__video-note{
            min-height:280px;
            padding:30px;
            border:1px solid rgba(101,61,165,.12);
            border-radius:var(--tc-radius);
            background:rgba(255,255,255,.74);
            box-shadow:0 18px 42px rgba(17,24,39,.05);
            backdrop-filter:blur(10px);
        }

        .tc-case__video-note span{
            display:inline-flex;
            margin-bottom:14px;
            color:var(--tc-primary);
            font-size:13px;
            font-weight:800;
            text-transform:uppercase;
            letter-spacing:.08em;
        }

        .tc-case__video-note p{
            color:var(--tc-muted);
            font-size:17px;
            line-height:1.7;
        }

        .tc-case__video-note strong{
            display:block;
            margin-top:18px;
            color:var(--tc-text);
            font-size:18px;
            line-height:1.45;
        }

        .tc-case__video-shell{
            position:relative;
            width:100%;
            max-width:420px;
            margin:0 auto;
            padding:12px;
            border-radius:40px;
            background:
                linear-gradient(145deg, rgba(255,255,255,.96), rgba(244,238,255,.96));
            box-shadow:var(--tc-shadow-purple);
            animation:tcFloatVideo 5.5s ease-in-out infinite;
        }

        .tc-case__video-shell:before{
            content:"";
            position:absolute;
            inset:-18px;
            z-index:-1;
            border-radius:56px;
            background:linear-gradient(145deg, rgba(101,61,165,.24), rgba(244,238,255,.5));
            filter:blur(22px);
            opacity:.9;
        }

        .tc-case__video-device{
            position:relative;
            overflow:hidden;
            aspect-ratio:9/16;
            border:1px solid rgba(17,24,39,.1);
            border-radius:30px;
            background:#111827;
        }

        .tc-case__video-device:before{
            content:"";
            position:absolute;
            top:10px;
            left:50%;
            z-index:3;
            width:74px;
            height:18px;
            transform:translateX(-50%);
            border-radius:999px;
            background:rgba(0,0,0,.78);
        }

        .tc-case__video-device video,
        .tc-case__video-poster{
            position:absolute;
            inset:0;
            width:100%;
            height:100%;
            object-fit:cover;
            display:block;
        }

        .tc-case__video-poster{
            z-index:0;
            transition:opacity .35s ease, visibility .35s ease;
        }

        .tc-case__video-device video{
            z-index:1;
            background:#111827;
        }

        .tc-case__video-device.is-playing .tc-case__video-poster{
            opacity:0;
            visibility:hidden;
            pointer-events:none;
        }

        .tc-case__video-caption{
            position:absolute;
            left:18px;
            right:18px;
            bottom:18px;
            z-index:4;
            padding:14px 16px;
            border:1px solid rgba(255,255,255,.18);
            border-radius:18px;
            background:linear-gradient(180deg, rgba(17,24,39,.28), rgba(17,24,39,.68));
            color:#fff;
            backdrop-filter:blur(10px);
        }

        .tc-case__video-caption small{
            display:block;
            margin-bottom:4px;
            color:rgba(255,255,255,.75);
            font-size:12px;
        }

        .tc-case__video-caption b{
            font-size:15px;
            line-height:1.35;
        }

        .tc-case__project{
            display:grid;
            grid-template-columns:repeat(4,1fr);
            gap:1px;
            overflow:hidden;
            margin:0 0 72px;
            border:1px solid rgba(101,61,165,.12);
            border-radius:var(--tc-radius);
            background:rgba(101,61,165,.12);
            box-shadow:var(--tc-shadow);
        }

        .tc-case__project-item{
            padding:28px;
            background:rgba(255,255,255,.94);
        }

        .tc-case__project-item span{
            display:block;
            margin-bottom:9px;
            color:var(--tc-soft);
            font-size:14px;
        }

        .tc-case__project-item strong{
            display:block;
            color:var(--tc-text);
            font-size:18px;
            line-height:1.36;
        }

        .tc-case__numbers{
            display:grid;
            grid-template-columns:repeat(3,1fr);
            gap:22px;
            margin:0 0 74px;
        }

        .tc-case__number{
            position:relative;
            overflow:hidden;
            min-height:190px;
            padding:34px;
            border:1px solid rgba(101,61,165,.13);
            border-radius:var(--tc-radius);
            background:#fff;
            box-shadow:0 16px 44px rgba(17,24,39,.05);
            transition:transform .35s ease, box-shadow .35s ease, border-color .35s ease;
        }

        .tc-case__number:hover{
            transform:translateY(-8px);
            border-color:rgba(101,61,165,.35);
            box-shadow:0 24px 62px rgba(101,61,165,.13);
        }

        .tc-case__number:after{
            content:"";
            position:absolute;
            right:-44px;
            bottom:-44px;
            width:150px;
            height:150px;
            border-radius:50%;
            background:var(--tc-primary-light);
        }

        .tc-case__number span{
            position:relative;
            z-index:2;
            display:block;
            margin-bottom:14px;
            color:var(--tc-primary);
            font-size:clamp(34px,4vw,48px);
            font-weight:800;
            line-height:1;
            letter-spacing:-.04em;
        }

        .tc-case__number small{
            position:relative;
            z-index:2;
            display:block;
            max-width:250px;
            color:var(--tc-muted);
            font-size:17px;
            line-height:1.55;
        }

        .tc-case__content{
            display:grid;
            grid-template-columns:minmax(0,260px) minmax(0,1fr);
            gap:54px;
            align-items:start;
        }

        .tc-case__nav{
            position:sticky;
            top:28px;
            z-index:20;
            align-self:start;
            max-height:calc(100vh - 56px);
            overflow:auto;
            padding:22px;
            border:1px solid rgba(101,61,165,.12);
            border-radius:22px;
            background:rgba(255,255,255,.9);
            box-shadow:0 14px 40px rgba(17,24,39,.05);
            backdrop-filter:blur(10px);
            -webkit-backdrop-filter:blur(10px);
        }

        .tc-case__nav::-webkit-scrollbar{
            width:4px;
        }

        .tc-case__nav::-webkit-scrollbar-thumb{
            border-radius:999px;
            background:rgba(101,61,165,.32);
        }

        .tc-case__nav-title{
            margin-bottom:15px;
            color:var(--tc-text);
            font-size:15px;
            font-weight:800;
        }

        .tc-case__nav a{
            display:flex;
            align-items:center;
            gap:10px;
            padding:10px 0;
            text-decoration:none;
            color:var(--tc-muted);
            font-size:14px;
            line-height:1.35;
            transition:.2s ease;
        }

        .tc-case__nav a:before{
            content:"";
            width:7px;
            height:7px;
            border-radius:50%;
            background:#D1D5DB;
            transition:.2s ease;
        }

        .tc-case__nav a:hover{
            color:var(--tc-primary);
        }

        .tc-case__nav a:hover:before,
        .tc-case__nav a.is-active:before{
            background:var(--tc-primary);
            box-shadow:0 0 0 6px rgba(101,61,165,.1);
        }

        .tc-case__nav a.is-active{
            color:var(--tc-primary);
            font-weight:800;
        }

        .tc-case__main{
            min-width:0;
        }

        .tc-case__section{
            position:relative;
            margin-bottom:34px;
            padding:42px;
            border:1px solid rgba(101,61,165,.1);
            border-radius:var(--tc-radius);
            background:rgba(255,255,255,.92);
            box-shadow:0 16px 48px rgba(17,24,39,.045);
        }

        .tc-case__section--accent{
            background:
                linear-gradient(143deg, #F4EEFF 0%, #FFFFFF 100%);
        }

        .tc-case__section-kicker{
            display:inline-flex;
            margin-bottom:14px;
            color:var(--tc-primary);
            font-size:13px;
            font-weight:800;
            letter-spacing:.08em;
            text-transform:uppercase;
        }

        .tc-case__section h2{
            margin-bottom:22px;
            font-size:clamp(27px,3vw,38px);
            line-height:1.14;
            letter-spacing:-.025em;
        }

        .tc-case__section h2:after{
            content:"";
            display:block;
            width:72px;
            height:4px;
            margin-top:16px;
            border-radius:999px;
            background:linear-gradient(90deg,var(--tc-primary),rgba(101,61,165,.2));
        }

        .tc-case__section h3{
            margin:32px 0 18px;
            font-size:24px;
            line-height:1.25;
        }

        .tc-case__section p{
            margin-bottom:18px;
            color:var(--tc-muted);
            font-size:18px;
            line-height:1.86;
        }

        .tc-case__section p:last-child{
            margin-bottom:0;
        }

        .tc-case__highlight{
            margin-top:26px;
            padding:24px;
            border-left:4px solid var(--tc-primary);
            border-radius:18px;
            background:#fff;
            color:var(--tc-text);
            font-size:18px;
            line-height:1.72;
            box-shadow:0 14px 34px rgba(17,24,39,.045);
        }

        .tc-case__timeline{
            position:relative;
            display:grid;
            gap:18px;
            margin-top:30px;
        }

        .tc-case__timeline:before{
            content:"";
            position:absolute;
            left:21px;
            top:22px;
            bottom:22px;
            width:2px;
            background:linear-gradient(180deg,var(--tc-primary),rgba(101,61,165,.08));
        }

        .tc-case__timeline-item{
            position:relative;
            display:grid;
            grid-template-columns:44px minmax(0,1fr);
            gap:18px;
            align-items:start;
        }

        .tc-case__timeline-dot{
            position:relative;
            z-index:2;
            display:flex;
            align-items:center;
            justify-content:center;
            width:44px;
            height:44px;
            border-radius:50%;
            background:#fff;
            border:2px solid var(--tc-primary-light);
            box-shadow:0 10px 28px rgba(101,61,165,.14);
        }

        .tc-case__timeline-dot:before{
            content:"";
            width:12px;
            height:12px;
            border-radius:50%;
            background:var(--tc-primary);
        }

        .tc-case__timeline-card{
            padding:20px 22px;
            border:1px solid rgba(101,61,165,.11);
            border-radius:18px;
            background:#fff;
            transition:.3s ease;
        }

        .tc-case__timeline-card:hover{
            transform:translateX(5px);
            border-color:rgba(101,61,165,.32);
            box-shadow:0 16px 34px rgba(101,61,165,.1);
        }

        .tc-case__timeline-card h3{
            margin:0 0 7px;
            color:var(--tc-text);
            font-size:18px;
        }

        .tc-case__timeline-card p{
            margin:0;
            color:var(--tc-muted);
            font-size:16px;
            line-height:1.6;
        }

        .tc-case__params{
            display:grid;
            grid-template-columns:repeat(2,minmax(0,1fr));
            gap:18px;
            margin-top:28px;
        }

        .tc-case__param{
            position:relative;
            overflow:hidden;
            padding:26px;
            border:1px solid rgba(101,61,165,.12);
            border-radius:20px;
            background:#fff;
            transition:.32s ease;
        }

        .tc-case__param:hover{
            transform:translateY(-6px);
            border-color:rgba(101,61,165,.36);
            box-shadow:0 18px 42px rgba(101,61,165,.12);
        }

        .tc-case__param strong{
            display:block;
            margin-bottom:10px;
            color:var(--tc-primary);
            font-size:25px;
            line-height:1;
        }

        .tc-case__param span{
            display:block;
            color:var(--tc-muted);
            font-size:16px;
            line-height:1.58;
        }

        .tc-case__risk{
            position:relative;
            overflow:hidden;
            margin-bottom:34px;
            padding:44px;
            border-radius:var(--tc-radius);
            background:#111827;
            box-shadow:var(--tc-shadow);
        }

        .tc-case__risk:after{
            content:"";
            position:absolute;
            right:-120px;
            top:-120px;
            width:330px;
            height:330px;
            border-radius:50%;
            background:rgba(101,61,165,.5);
            filter:blur(10px);
        }

        .tc-case__risk h2{
            position:relative;
            z-index:2;
            max-width:650px;
            margin-bottom:24px;
            color:#fff;
            font-size:clamp(27px,3vw,38px);
            line-height:1.15;
            letter-spacing:-.025em;
        }

        .tc-case__risk-list{
            position:relative;
            z-index:2;
            display:grid;
            grid-template-columns:repeat(2,minmax(0,1fr));
            gap:14px;
            margin:0;
            padding:0;
            list-style:none;
        }

        .tc-case__risk-list li{
            display:flex;
            gap:12px;
            align-items:flex-start;
            padding:17px 18px;
            border:1px solid rgba(255,255,255,.1);
            border-radius:16px;
            background:rgba(255,255,255,.06);
            color:rgba(255,255,255,.88);
            font-size:16px;
            line-height:1.55;
        }

        .tc-case__risk-list li:before{
            content:"!";
            display:flex;
            flex:0 0 24px;
            align-items:center;
            justify-content:center;
            width:24px;
            height:24px;
            border-radius:50%;
            background:rgba(255,255,255,.13);
            color:#fff;
            font-size:13px;
            font-weight:800;
        }

        .tc-case__result{
            position:relative;
            overflow:hidden;
            padding:52px;
            border-radius:30px;
            background:
                radial-gradient(circle at 84% 10%, rgba(255,255,255,.22), transparent 24%),
                linear-gradient(135deg,var(--tc-primary),#8B5CF6);
            color:#fff;
            box-shadow:var(--tc-shadow-purple);
        }

        .tc-case__result:before{
            content:"";
            position:absolute;
            left:-80px;
            bottom:-80px;
            width:240px;
            height:240px;
            border-radius:50%;
            border:44px solid rgba(255,255,255,.08);
        }

        .tc-case__result-kicker{
            position:relative;
            z-index:2;
            display:inline-flex;
            margin-bottom:16px;
            padding:8px 14px;
            border:1px solid rgba(255,255,255,.22);
            border-radius:999px;
            background:rgba(255,255,255,.12);
            color:#fff;
            font-size:13px;
            font-weight:800;
            letter-spacing:.08em;
            text-transform:uppercase;
        }

        .tc-case__result h2{
            position:relative;
            z-index:2;
            max-width:720px;
            margin-bottom:26px;
            color:#fff;
            font-size:clamp(31px,4vw,48px);
            line-height:1.08;
            letter-spacing:-.035em;
        }

        .tc-case__result-list{
            position:relative;
            z-index:2;
            display:grid;
            gap:12px;
        }

        .tc-case__result-item{
            display:flex;
            gap:14px;
            align-items:flex-start;
            padding:18px 20px;
            border:1px solid rgba(255,255,255,.16);
            border-radius:17px;
            background:rgba(255,255,255,.1);
            color:rgba(255,255,255,.94);
            font-size:17px;
            line-height:1.55;
            backdrop-filter:blur(8px);
        }

        .tc-case__result-item:before{
            content:"✓";
            display:flex;
            flex:0 0 27px;
            align-items:center;
            justify-content:center;
            width:27px;
            height:27px;
            border-radius:50%;
            background:#fff;
            color:var(--tc-primary);
            font-weight:900;
        }

        .tc-case__cta{
            margin-top:34px;
            padding:34px;
            border:1px solid rgba(101,61,165,.12);
            border-radius:var(--tc-radius);
            background:#fff;
            box-shadow:0 18px 44px rgba(17,24,39,.05);
            text-align:center;
        }

        .tc-case__cta h2{
            margin-bottom:12px;
            font-size:30px;
            line-height:1.2;
        }

        .tc-case__cta p{
            max-width:640px;
            margin:0 auto 22px;
            color:var(--tc-muted);
            font-size:17px;
            line-height:1.7;
        }

        .tc-case__btn{
            display:inline-flex;
            align-items:center;
            justify-content:center;
            min-height:52px;
            padding:14px 26px;
            border:2px solid var(--tc-primary-2);
            border-radius:12px;
            background:var(--tc-primary-2);
            color:#fff;
            text-decoration:none;
            font-weight:800;
            font:inherit;
            cursor:pointer;
            appearance:none;
            transition:.3s ease;
        }

        .tc-case__btn:hover{
            background:#fff;
            color:var(--tc-primary-2);
            transform:translateY(-3px);
            box-shadow:0 16px 34px rgba(101,61,165,.18);
        }

        .tc-case-reveal{
            opacity:0;
            transform:translateY(34px);
            transition:opacity .75s ease, transform .75s ease;
        }

        .tc-case-reveal.is-visible{
            opacity:1;
            transform:none;
        }

        @keyframes tcFloatVideo{
            0%,100%{
                transform:translateY(0);
            }
            50%{
                transform:translateY(-10px);
            }
        }

        @media (prefers-reduced-motion:reduce){

            .tc-case__video-shell{
                animation:none;
            }

            .tc-case-reveal{
                opacity:1;
                transform:none;
                transition:none;
            }
        }

        @media (max-width:1180px) {
            .tc-case__video-zone{
                grid-template-columns:1fr;
            }

            .tc-case__video-note{
                min-height:auto;
            }

            .tc-case__video-note:first-child{
                order:2;
            }

            .tc-case__video-shell{
                order:1;
            }

            .tc-case__video-note:last-child{
                order:3;
            }

            .tc-case__project{
                grid-template-columns:repeat(2,1fr);
            }

            .tc-case__content{
                grid-template-columns:1fr;
            }

            .tc-case__nav{
                position:sticky;
                top:24px;
                z-index:20;
                max-height:calc(100vh - 48px);
                overflow:auto;
                display:block;
            }

            .tc-case__nav-title{
                grid-column:1/-1;
            }
        }

        @media (max-width:768px){
            .tc-case__nav{
                position:relative;
                top:auto;
                z-index:1;
                max-height:none;
                overflow:visible;
                display:block;
            }

            .tc-case{
                padding:42px 0 64px;
            }

            .tc-case__breadcrumbs{
                margin-bottom:24px;
            }

            .tc-case__hero{
                margin-bottom:38px;
            }

            .tc-case__hero h1{
                font-size:34px;
                line-height:1.12;
            }

            .tc-case__lead{
                font-size:17px;
                line-height:1.65;
            }

            .tc-case__video-zone{
                gap:22px;
                margin-bottom:42px;
            }

            .tc-case__video-shell{
                max-width:335px;
                border-radius:34px;
            }

            .tc-case__video-device{
                border-radius:25px;
            }

            .tc-case__video-note{
                padding:22px;
            }

            .tc-case__project,
            .tc-case__numbers,
            .tc-case__params,
            .tc-case__risk-list{
                grid-template-columns:1fr;
            }

            .tc-case__project,
            .tc-case__numbers{
                margin-bottom:42px;
            }

            .tc-case__project-item,
            .tc-case__number,
            .tc-case__section,
            .tc-case__risk,
            .tc-case__result,
            .tc-case__cta{
                padding:24px;
            }

            .tc-case__section{
                margin-bottom:24px;
                border-radius:20px;
            }

            .tc-case__section p{
                font-size:16px;
                line-height:1.75;
            }

            .tc-case__timeline:before{
                left:17px;
            }

            .tc-case__timeline-item{
                grid-template-columns:36px minmax(0,1fr);
                gap:14px;
            }

            .tc-case__timeline-dot{
                width:36px;
                height:36px;
            }

            .tc-case__timeline-card{
                padding:17px;
            }

            .tc-case__nav{
                grid-template-columns:1fr;
                padding:18px;
            }

            .tc-case__result h2{
                font-size:31px;
            }
        }

.tc-case h1,
.tc-case h2,
.tc-case h3 {
    font-family: Montserrat, Inter, system-ui, -apple-system, sans-serif;
    font-weight: 700;
}

.tc-case__risk h2,
.tc-case__result h2 {
    color: #fff;
}

.tc-case__hero h1 {
    max-width: 980px;
    margin: 0 auto;
    font-size: clamp(34px, 4.3vw, 62px);
    line-height: 1.07;
    letter-spacing: -0.035em;
}

.tc-case__hero .tc-case__lead {
    max-width: 790px;
    margin: 26px auto 0;
    color: var(--tc-muted);
    font-size: 20px;
    line-height: 1.72;
}

.tc-case a {
    color: inherit;
}

.tc-case__section-content p {
    margin-bottom: 18px;
    color: var(--tc-muted);
    font-size: 18px;
    line-height: 1.86;
}

.tc-case__section-content p:last-child {
    margin-bottom: 0;
}

@media (max-width: 768px) {
    .tc-case__hero h1 {
        font-size: 34px;
        line-height: 1.12;
    }

    .tc-case__hero .tc-case__lead {
        font-size: 17px;
        line-height: 1.65;
    }
}
