:root{
    --th-green-950:#052f27;
    --th-green-900:#064e3b;
    --th-green-800:#0b5d48;
    --th-green-700:#13705a;
    --th-green-600:#188665;
    --th-green-500:#28a477;
    --th-green-400:#5cc99b;
    --th-green-soft:#eaf7f1;
    --th-green-soft-2:#f4faf7;

    --th-bg:#f8fbfa;
    --th-white:#ffffff;

    --th-text:#13231d;
    --th-muted:#6f7f78;
    --th-line:#e2ebe7;

    --th-shadow:0 18px 55px rgba(5,47,39,.08);
    --th-shadow-lg:0 32px 85px rgba(5,47,39,.14);
}

.th-home{
    overflow:hidden;
    color:var(--th-text);
    background:var(--th-bg);
}

.th-home *,
.th-home *::before,
.th-home *::after{
    box-sizing:border-box;
}

/* =========================================================
   GLOBAL
========================================================= */

.th-section{
    position:relative;
    padding:100px 0;
}

.th-eyebrow{
    display:inline-flex;
    align-items:center;
    gap:9px;

    color:var(--th-green-700);

    font-size:12px;
    font-weight:900;
}

.th-eyebrow::before{
    content:"";

    width:7px;
    height:7px;

    flex:0 0 7px;

    border-radius:50%;

    background:var(--th-green-500);

    box-shadow:
        0 0 0 6px
        rgba(40,164,119,.12);
}

.th-section-heading{
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(270px,.55fr);

    gap:46px;
    align-items:end;

    margin-bottom:38px;
}

.th-section-heading h2{
    max-width:790px;

    margin:10px 0 0;

    color:var(--th-text);

    font-size:clamp(33px,4vw,50px);
    line-height:1.24;
    letter-spacing:-1.2px;
}

.th-section-heading h2 span{
    color:var(--th-green-600);
}

.th-section-heading > p{
    max-width:520px;

    margin:0;

    color:var(--th-muted);

    font-size:14px;
    line-height:1.95;
}

.th-section-heading.center{
    display:block;

    max-width:740px;

    margin:
        0 auto 40px;

    text-align:center;
}

.th-section-heading.center > p{
    margin:
        12px auto 0;
}

/* =========================================================
   HERO
========================================================= */

.th-hero{
    position:relative;
    isolation:isolate;
    overflow:hidden;

    min-height:calc(100vh - 78px);

    display:flex;
    align-items:center;

    padding:
        90px 0 115px;

    background:
        radial-gradient(
            circle at 83% 18%,
            rgba(40,164,119,.15),
            transparent 31%
        ),
        radial-gradient(
            circle at 8% 82%,
            rgba(6,78,59,.08),
            transparent 27%
        ),
        linear-gradient(
            180deg,
            #fff 0%,
            #f5faf8 100%
        );
}

.th-hero::before{
    content:"";

    position:absolute;
    inset:0;
    z-index:-3;

    opacity:.42;

    background-image:
        linear-gradient(
            rgba(6,78,59,.045) 1px,
            transparent 1px
        ),
        linear-gradient(
            90deg,
            rgba(6,78,59,.045) 1px,
            transparent 1px
        );

    background-size:
        48px 48px;

    mask-image:
        linear-gradient(
            to bottom,
            #000,
            transparent 92%
        );
}

.th-orb{
    position:absolute;
    z-index:-2;

    border-radius:50%;

    pointer-events:none;
}

.th-orb.one{
    width:520px;
    height:520px;

    left:-270px;
    top:-250px;

    background:
        radial-gradient(
            circle,
            rgba(40,164,119,.15),
            transparent 68%
        );
}

.th-orb.two{
    width:440px;
    height:440px;

    right:-150px;
    bottom:-240px;

    background:
        radial-gradient(
            circle,
            rgba(6,78,59,.12),
            transparent 69%
        );
}

.th-hero-layout{
    position:relative;

    display:grid;
    grid-template-columns:
        minmax(0,1.05fr)
        minmax(380px,.95fr);

    gap:72px;
    align-items:center;
}

.th-hero-copy{
    position:relative;
    z-index:2;
}

.th-kicker{
    display:inline-flex;
    align-items:center;
    gap:9px;

    margin-bottom:21px;

    padding:
        8px 13px;

    border:
        1px solid #dae9e3;

    border-radius:999px;

    color:var(--th-green-700);

    background:
        rgba(255,255,255,.78);

    backdrop-filter:
        blur(14px);

    font-size:12px;
    font-weight:900;
}

.th-kicker::before{
    content:"";

    width:8px;
    height:8px;

    border-radius:50%;

    background:#3dc68c;

    box-shadow:
        0 0 0 6px
        rgba(61,198,140,.13);
}

.th-hero h1{
    max-width:820px;

    margin:0;

    color:var(--th-text);

    font-size:
        clamp(44px,5vw,74px);

    line-height:1.12;
    letter-spacing:-2.3px;

    font-weight:900;
}

.th-hero h1 .accent{
    position:relative;

    display:inline-block;

    color:var(--th-green-700);
}

.th-hero h1 .accent::after{
    content:"";

    position:absolute;

    right:0;
    left:0;
    bottom:2px;
    z-index:-1;

    height:9px;

    border-radius:999px;

    background:
        rgba(40,164,119,.17);
}

.th-hero-lead{
    max-width:650px;

    margin:
        24px 0 0;

    color:var(--th-muted);

    font-size:16px;
    line-height:2;
}

.th-hero-actions{
    display:flex;
    flex-wrap:wrap;
    gap:12px;

    margin-top:31px;
}

.th-action{
    min-height:55px;

    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:10px;

    padding:
        0 24px;

    border-radius:15px;

    text-decoration:none;

    font-weight:900;

    transition:
        transform .24s ease,
        box-shadow .24s ease,
        border-color .24s ease;
}

.th-action.primary{
    color:#fff;

    background:
        linear-gradient(
            135deg,
            var(--th-green-900),
            var(--th-green-600)
        );

    box-shadow:
        0 17px 38px
        rgba(6,78,59,.23);
}

.th-action.primary:hover{
    color:#fff;

    transform:
        translateY(-3px);

    box-shadow:
        0 22px 46px
        rgba(6,78,59,.29);
}

.th-action.secondary{
    color:var(--th-green-900);

    border:
        1px solid #d6e4de;

    background:#fff;
}

.th-action.secondary:hover{
    color:var(--th-green-900);

    transform:
        translateY(-3px);

    border-color:
        #bfd5cb;

    box-shadow:
        0 14px 34px
        rgba(5,47,39,.08);
}

.th-action-arrow{
    font-size:18px;
}

.th-proof-row{
    display:flex;
    flex-wrap:wrap;
    gap:18px;

    margin-top:28px;

    color:#687871;

    font-size:12px;
    font-weight:800;
}

.th-proof-row span{
    display:inline-flex;
    align-items:center;
    gap:7px;
}

.th-proof-row i{
    width:21px;
    height:21px;

    display:grid;
    place-items:center;

    border-radius:50%;

    color:var(--th-green-700);

    background:
        var(--th-green-soft);

    font-style:normal;
}

/* =========================================================
   HERO PANEL
========================================================= */

.th-dashboard-shell{
    position:relative;

    padding:9px;

    border:
        1px solid
        rgba(255,255,255,.86);

    border-radius:31px;

    background:
        rgba(255,255,255,.46);

    box-shadow:
        0 38px 95px
        rgba(5,47,39,.15);

    backdrop-filter:
        blur(22px);

    transform-style:
        preserve-3d;

    transition:
        transform .18s ease-out;
}

.th-dashboard{
    position:relative;

    overflow:hidden;

    padding:23px;

    border:
        1px solid var(--th-line);

    border-radius:24px;

    background:#fff;
}

.th-dashboard::before{
    content:"";

    position:absolute;

    width:260px;
    height:260px;

    left:-120px;
    top:-130px;

    border-radius:50%;

    background:
        radial-gradient(
            circle,
            rgba(40,164,119,.16),
            transparent 70%
        );
}

.th-dashboard-header{
    position:relative;
    z-index:2;

    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px;

    margin-bottom:19px;
}

.th-dashboard-name{
    display:flex;
    align-items:center;
    gap:10px;
}

.th-live{
    width:9px;
    height:9px;

    border-radius:50%;

    background:#3bc78c;

    box-shadow:
        0 0 0 6px
        rgba(59,199,140,.13);
}

.th-dashboard-name strong,
.th-dashboard-name small{
    display:block;
}

.th-dashboard-name strong{
    font-size:14px;
}

.th-dashboard-name small{
    margin-top:3px;

    color:#839089;

    font-size:10px;
}

.th-dashboard-code{
    padding:
        7px 11px;

    border-radius:999px;

    color:var(--th-green-700);

    background:
        var(--th-green-soft);

    font-size:10px;
    font-weight:900;
}

.th-project-progress{
    position:relative;
    z-index:2;

    padding:15px;

    margin-bottom:13px;

    border:
        1px solid #e6eeea;

    border-radius:17px;

    background:
        linear-gradient(
            135deg,
            #f9fcfb,
            #eff8f4
        );
}

.th-progress-heading{
    display:flex;
    justify-content:space-between;
    gap:10px;

    margin-bottom:9px;
}

.th-progress-heading strong{
    font-size:12px;
}

.th-progress-heading small{
    color:#7c8983;

    font-size:10px;
}

.th-progress{
    height:7px;

    overflow:hidden;

    border-radius:999px;

    background:#e3ece8;
}

.th-progress span{
    display:block;

    width:25%;
    height:100%;

    border-radius:inherit;

    background:
        linear-gradient(
            90deg,
            var(--th-green-800),
            #53cb99
        );

    transition:
        width .4s
        cubic-bezier(.2,.8,.2,1);
}

.th-stage-list{
    position:relative;
    z-index:2;

    display:grid;
    gap:7px;
}

.th-stage{
    width:100%;

    display:grid;
    grid-template-columns:
        42px minmax(0,1fr) 18px;

    gap:11px;
    align-items:center;

    padding:10px;

    border:
        1px solid transparent;

    border-radius:14px;

    color:inherit;

    text-align:right;

    background:transparent;

    cursor:pointer;

    transition:
        transform .2s ease,
        background .2s ease,
        border-color .2s ease;
}

.th-stage:hover{
    transform:
        translateX(-4px);

    background:#f8fbfa;
}

.th-stage.active{
    border-color:#d6e9e1;

    background:#edf8f3;
}

.th-stage-number{
    width:37px;
    height:37px;

    display:grid;
    place-items:center;

    border:
        1px solid #e2ebe7;

    border-radius:11px;

    color:var(--th-green-700);

    background:#fff;

    font-size:10px;
    font-weight:900;
}

.th-stage strong,
.th-stage small{
    display:block;
}

.th-stage strong{
    margin-bottom:3px;

    font-size:12px;
}

.th-stage small{
    color:#829089;

    font-size:9.5px;
    line-height:1.55;
}

.th-stage-state{
    color:#d4deda;

    font-size:10px;

    transition:.2s ease;
}

.th-stage.active
.th-stage-state{
    color:#36bd84;

    transform:scale(1.25);
}

.th-dashboard-foot{
    position:relative;
    z-index:2;

    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:15px;

    margin-top:15px;
    padding-top:14px;

    border-top:
        1px solid #e8efec;
}

.th-dashboard-foot small{
    color:#87948e;

    font-size:9.5px;
}

.th-avatar-stack{
    display:flex;
    direction:ltr;
}

.th-avatar-stack span{
    width:28px;
    height:28px;

    display:grid;
    place-items:center;

    margin-left:-6px;

    border:
        2px solid #fff;

    border-radius:50%;

    color:#fff;

    background:
        var(--th-green-700);

    font-size:9px;
    font-weight:900;
}

/* =========================================================
   STATS
========================================================= */

.th-stats-wrap{
    position:relative;
    z-index:5;

    margin-top:-38px;
}

.th-stats{
    display:grid;
    grid-template-columns:
        repeat(3,minmax(0,1fr));

    overflow:hidden;

    border:
        1px solid var(--th-line);

    border-radius:22px;

    background:#fff;

    box-shadow:
        var(--th-shadow);
}

.th-stat{
    min-height:108px;

    display:flex;
    align-items:center;
    justify-content:center;
    gap:14px;

    padding:19px;

    border-left:
        1px solid var(--th-line);
}

.th-stat:last-child{
    border-left:0;
}

.th-stat-icon{
    width:44px;
    height:44px;

    display:grid;
    place-items:center;

    border-radius:14px;

    color:var(--th-green-700);

    background:
        var(--th-green-soft);
}

.th-stat-icon svg{
    width:20px;
    height:20px;

    fill:none;
    stroke:currentColor;
    stroke-width:1.8;
}

.th-stat strong,
.th-stat small{
    display:block;
}

.th-stat strong{
    color:var(--th-green-950);

    font-size:25px;
    line-height:1.1;
}

.th-stat small{
    margin-top:5px;

    color:#798780;

    font-size:11px;
}

/* =========================================================
   SERVICES - SMALL CARDS
========================================================= */

.th-services-section{
    background:#fff;
}

.th-service-grid{
    display:grid;
    grid-template-columns:
        repeat(4,minmax(0,1fr));

    gap:14px;
}

.th-service-card{
    position:relative;

    min-height:185px;

    display:flex;
    flex-direction:column;

    overflow:hidden;

    padding:17px;

    border:
        1px solid var(--th-line);

    border-radius:19px;

    background:
        linear-gradient(
            180deg,
            #fff 0%,
            #fbfdfc 100%
        );

    box-shadow:
        0 7px 23px
        rgba(5,47,39,.035);

    transition:
        transform .24s ease,
        box-shadow .24s ease,
        border-color .24s ease;
}

.th-service-card::before{
    content:"";

    position:absolute;

    width:130px;
    height:130px;

    left:-65px;
    bottom:-75px;

    border-radius:50%;

    background:
        radial-gradient(
            circle,
            rgba(40,164,119,.12),
            transparent 70%
        );

    pointer-events:none;
}

.th-service-card::after{
    content:"";

    position:absolute;

    right:18px;
    left:18px;
    bottom:0;

    height:3px;

    border-radius:
        999px 999px 0 0;

    background:
        linear-gradient(
            90deg,
            var(--th-green-700),
            var(--th-green-400)
        );

    transform:scaleX(0);

    transition:
        transform .24s ease;
}

.th-service-card:hover{
    transform:
        translateY(-5px);

    border-color:#c5dbd1;

    box-shadow:
        0 18px 40px
        rgba(5,47,39,.085);
}

.th-service-card:hover::after{
    transform:scaleX(1);
}

.th-service-card-head{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;

    margin-bottom:18px;
}

.th-service-icon{
    width:43px;
    height:43px;

    display:grid;
    place-items:center;

    border-radius:13px;

    color:var(--th-green-700);

    background:
        var(--th-green-soft);

    font-size:19px;

    transition:
        transform .24s ease,
        background .24s ease;
}

.th-service-card:hover
.th-service-icon{
    transform:
        translateY(-2px)
        scale(1.04);

    background:#ddf3e8;
}

.th-service-number{
    color:#9aa6a0;

    font-size:9px;
    font-weight:900;
}

.th-service-card h3{
    position:relative;
    z-index:2;

    margin:
        0 0 7px;

    color:var(--th-text);

    font-size:16px;
    line-height:1.35;
}

.th-service-card p{
    position:relative;
    z-index:2;

    display:-webkit-box;

    overflow:hidden;

    margin:0;

    color:var(--th-muted);

    font-size:11px;
    line-height:1.75;

    -webkit-line-clamp:3;
    -webkit-box-orient:vertical;
}

.th-service-card-foot{
    position:relative;
    z-index:2;

    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:8px;

    margin-top:auto;
    padding-top:15px;
}

.th-service-card-foot small{
    color:#8c9a94;

    font-size:9px;
}

.th-service-corner{
    width:28px;
    height:28px;

    display:grid;
    place-items:center;

    border:
        1px solid #dfe9e4;

    border-radius:50%;

    color:var(--th-green-700);

    background:#fff;

    font-size:12px;

    transition:
        color .24s ease,
        background .24s ease,
        transform .24s ease;
}

.th-service-card:hover
.th-service-corner{
    color:#fff;

    background:
        var(--th-green-700);

    transform:
        translateX(-2px);
}

/* =========================================================
   CAPABILITIES
========================================================= */

.th-capabilities{
    position:relative;

    overflow:hidden;

    color:#fff;

    background:
        radial-gradient(
            circle at 12% 28%,
            rgba(40,164,119,.20),
            transparent 29%
        ),
        linear-gradient(
            135deg,
            var(--th-green-950),
            var(--th-green-900)
        );
}

.th-capabilities::after{
    content:"";

    position:absolute;

    width:520px;
    height:520px;

    left:-180px;
    bottom:-300px;

    border:
        1px solid
        rgba(255,255,255,.06);

    border-radius:50%;

    box-shadow:
        0 0 0 70px
        rgba(255,255,255,.022),
        0 0 0 140px
        rgba(255,255,255,.014);
}

.th-capability-layout{
    position:relative;
    z-index:2;

    display:grid;
    grid-template-columns:
        minmax(0,.9fr)
        minmax(0,1.1fr);

    gap:72px;
    align-items:center;
}

.th-capabilities
.th-eyebrow{
    color:#82ddb6;
}

.th-capabilities
.th-eyebrow::before{
    background:#78dbae;
}

.th-capability-copy h2{
    max-width:650px;

    margin:
        11px 0 19px;

    color:#fff;

    font-size:
        clamp(35px,4.5vw,54px);

    line-height:1.22;
    letter-spacing:-1.4px;
}

.th-capability-copy h2 span{
    color:#80deb7;
}

.th-capability-copy p{
    max-width:620px;

    margin:0;

    color:
        rgba(255,255,255,.67);

    line-height:2;
}

.th-capability-grid{
    display:grid;
    grid-template-columns:
        repeat(2,minmax(0,1fr));

    gap:11px;
}

.th-capability-card{
    min-height:82px;

    display:flex;
    align-items:center;
    gap:14px;

    padding:16px;

    border:
        1px solid
        rgba(255,255,255,.10);

    border-radius:17px;

    background:
        rgba(255,255,255,.055);

    backdrop-filter:
        blur(12px);

    transition:
        transform .24s ease,
        background .24s ease;
}

.th-capability-card:hover{
    transform:
        translateY(-4px);

    background:
        rgba(255,255,255,.095);
}

.th-capability-card span{
    color:#76d9ad;

    font-size:10px;
    font-weight:900;
}

.th-capability-card strong{
    color:#fff;

    font-size:13px;
}

/* =========================================================
   CLIENTS / PARTNERS
========================================================= */

.th-showcase{
    background:#fff;
}

.th-showcase.alt{
    background:
        var(--th-green-soft-2);
}

.th-brand-grid{
    display:grid;
    grid-template-columns:
        repeat(4,minmax(0,1fr));

    gap:14px;
}

.th-brand-card{
    position:relative;

    min-height:145px;

    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;

    gap:13px;

    overflow:hidden;

    padding:18px;

    border:
        1px solid var(--th-line);

    border-radius:19px;

    color:var(--th-text);

    text-align:center;
    text-decoration:none;

    background:#fff;

    transition:
        transform .25s ease,
        border-color .25s ease,
        box-shadow .25s ease;
}

.th-brand-card::after{
    content:"";

    position:absolute;

    right:24px;
    left:24px;
    bottom:0;

    height:3px;

    border-radius:
        999px 999px 0 0;

    background:
        linear-gradient(
            90deg,
            var(--th-green-700),
            var(--th-green-400)
        );

    transform:
        scaleX(0);

    transition:
        transform .25s ease;
}

.th-brand-card:hover{
    color:
        var(--th-green-700);

    transform:
        translateY(-5px);

    border-color:
        #c5dbd1;

    box-shadow:
        0 18px 42px
        rgba(5,47,39,.08);
}

.th-brand-card:hover::after{
    transform:
        scaleX(1);
}

.th-brand-card img{
    width:110px;
    height:60px;

    object-fit:contain;

    transition:
        transform .25s ease;
}

.th-brand-card:hover img{
    transform:
        scale(1.04);
}

.th-brand-card strong{
    font-size:12px;
}

/* =========================================================
   FINAL
========================================================= */

.th-end{
    padding:
        35px 0 100px;

    background:
        var(--th-green-soft-2);
}

.th-end-card{
    position:relative;

    overflow:hidden;

    display:grid;
    grid-template-columns:
        minmax(0,1fr) auto;

    gap:48px;
    align-items:center;

    padding:47px;

    border-radius:28px;

    color:#fff;

    background:
        linear-gradient(
            135deg,
            var(--th-green-950),
            var(--th-green-700)
        );

    box-shadow:
        0 30px 78px
        rgba(5,47,39,.17);
}

.th-end-card::before{
    content:"";

    position:absolute;

    width:350px;
    height:350px;

    left:-90px;
    top:-180px;

    border-radius:50%;

    background:
        radial-gradient(
            circle,
            rgba(111,218,171,.27),
            transparent 68%
        );
}

.th-end-copy,
.th-end-link{
    position:relative;
    z-index:2;
}

.th-end-copy h2{
    max-width:670px;

    margin:
        9px 0 10px;

    color:#fff;

    font-size:
        clamp(30px,4vw,45px);

    line-height:1.24;
}

.th-end-copy h2 span{
    color:#7bdcb3;
}

.th-end-copy p{
    margin:0;

    color:
        rgba(255,255,255,.67);

    line-height:1.9;
}

.th-end-link{
    min-height:54px;

    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:9px;

    padding:
        0 22px;

    border-radius:14px;

    color:var(--th-green-900);

    text-decoration:none;

    background:#fff;

    font-weight:900;

    transition:
        transform .24s ease,
        box-shadow .24s ease;
}

.th-end-link:hover{
    color:var(--th-green-900);

    transform:
        translateY(-3px);

    box-shadow:
        0 17px 40px
        rgba(0,0,0,.14);
}

/* =========================================================
   REVEAL
========================================================= */

[data-th-reveal]{
    opacity:0;

    transform:
        translateY(24px);

    transition:
        opacity .7s
        cubic-bezier(.2,.7,.2,1),
        transform .7s
        cubic-bezier(.2,.7,.2,1);
}

[data-th-reveal].visible{
    opacity:1;

    transform:none;
}

/* =========================================================
   RESPONSIVE
========================================================= */

@media(max-width:1150px){

    .th-service-grid{
        grid-template-columns:
            repeat(3,minmax(0,1fr));
    }

}

@media(max-width:1050px){

    .th-hero-layout{
        grid-template-columns:1fr;

        gap:48px;
    }

    .th-dashboard-shell{
        max-width:710px;
    }

    .th-capability-layout{
        grid-template-columns:1fr;

        gap:42px;
    }

    .th-brand-grid{
        grid-template-columns:
            repeat(3,minmax(0,1fr));
    }

}

@media(max-width:850px){

    .th-hero{
        min-height:auto;

        padding:
            65px 0 90px;
    }

    .th-section{
        padding:
            78px 0;
    }

    .th-section-heading{
        grid-template-columns:1fr;

        gap:19px;
    }

    .th-stats{
        grid-template-columns:1fr;
    }

    .th-stat{
        justify-content:flex-start;

        border-left:0;

        border-bottom:
            1px solid var(--th-line);
    }

    .th-stat:last-child{
        border-bottom:0;
    }

    .th-service-grid{
        grid-template-columns:
            repeat(2,minmax(0,1fr));
    }

    .th-brand-grid{
        grid-template-columns:
            repeat(2,minmax(0,1fr));
    }

    .th-end-card{
        grid-template-columns:1fr;

        gap:26px;

        padding:
            35px 27px;
    }

    .th-end-link{
        justify-self:start;
    }

}

@media(max-width:560px){

    .th-hero{
        padding-top:47px;
    }

    .th-hero h1{
        font-size:
            clamp(38px,10vw,53px);

        letter-spacing:-1.2px;
    }

    .th-hero-actions{
        display:grid;
    }

    .th-action{
        width:100%;
    }

    .th-proof-row{
        display:grid;

        gap:10px;
    }

    .th-dashboard-shell{
        padding:5px;

        border-radius:23px;
    }

    .th-dashboard{
        padding:14px;

        border-radius:18px;
    }

    .th-stage{
        grid-template-columns:
            36px minmax(0,1fr) 13px;

        padding:
            9px 6px;
    }

    .th-stage-number{
        width:33px;
        height:33px;
    }

    .th-service-grid{
        grid-template-columns:1fr;

        gap:11px;
    }

    .th-service-card{
        min-height:160px;

        padding:15px;
    }

    .th-service-card-head{
        margin-bottom:13px;
    }

    .th-service-icon{
        width:40px;
        height:40px;

        font-size:18px;
    }

    .th-service-card h3{
        font-size:15px;
    }

    .th-capability-grid,
    .th-brand-grid{
        grid-template-columns:1fr;
    }

    .th-end{
        padding-bottom:70px;
    }

}

@media(prefers-reduced-motion:reduce){

    [data-th-reveal]{
        opacity:1 !important;

        transform:none !important;

        transition:none !important;
    }

    .th-dashboard-shell,
    .th-stage,
    .th-service-card,
    .th-brand-card,
    .th-capability-card,
    .th-action{
        transition:none !important;
    }

}
