/* Case Studies: a portfolio index using the shared heading and body scales. */
.tt-case-studies-page{background:var(--tt-page,#f7f8fa)}
.tt-case-studies-page .tt-ap-shell{width:min(1400px,calc(100% - 64px))}
.tt-cs-hero{position:relative;overflow:hidden;padding:104px 0 0;background:radial-gradient(circle at 88% 10%,rgba(202,223,255,.7),transparent 27%),radial-gradient(circle at 5% 100%,rgba(255,230,215,.55),transparent 33%),var(--tt-page,#f7f8fa)}
.tt-cs-hero-top,.tt-cs-hero-main,.tt-cs-hero-line{display:flex;justify-content:space-between;gap:32px}
.tt-cs-hero-top{align-items:center}
.tt-cs-index{color:var(--tt-subtle,#667180);font-size:13px;font-weight:600;letter-spacing:.12em}
.tt-cs-hero-main{align-items:end;margin:45px 0 96px}
.tt-cs-hero h1{max-width:800px}
.tt-cs-hero h1 em{white-space:nowrap}
.tt-cs-hero-main p{max-width:410px;padding-bottom:6px}
.tt-cs-hero-line{align-items:center;justify-content:flex-start;min-height:85px;border-top:1px solid var(--tt-border,#dce3ec);color:var(--tt-subtle,#667180);font-size:15px}
.tt-cs-hero-line i{width:5px;height:5px;border-radius:50%;background:#adc0d6}
.tt-cs-hero-line a{display:grid;place-items:center;width:42px;height:42px;margin-left:auto;border:1px solid var(--tt-border,#dce3ec);border-radius:50%;color:var(--tt-heading-accent,#006dfa);font-size:23px;text-decoration:none;transition:background .2s,transform .2s}
.tt-cs-hero-line a:hover{background:var(--tt-surface,#fff);transform:translateY(3px)}
.tt-cs-work{padding-top:106px;padding-bottom:104px}
.tt-cs-work-intro{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.7fr);align-items:end;gap:64px;margin-bottom:42px}
.tt-cs-work-intro h2{margin-top:19px}
.tt-cs-work-intro>p{max-width:485px}
.tt-cs-filters{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:24px;padding:0 0 22px;border-bottom:1px solid var(--tt-border,#dce3ec)}
.tt-cs-filters button{display:inline-flex;align-items:center;gap:10px;min-height:43px;padding:9px 17px;border:1px solid var(--tt-border,#dce3ec);border-radius:100px;background:transparent;color:var(--tt-subtle,#667180);font:inherit;font-size:14px;font-weight:550;line-height:1.3;cursor:pointer;transition:background .2s,color .2s,border-color .2s,transform .2s}
.tt-cs-filters button span{font-size:12px;opacity:.7}
.tt-cs-filters button:hover{border-color:var(--tt-heading-accent,#006dfa);color:var(--tt-heading-accent,#006dfa);transform:translateY(-1px)}
.tt-cs-filters button.is-active{border-color:#006dfa;background:#006dfa;color:#fff}
.tt-cs-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.tt-cs-card{min-width:0;overflow:hidden;border:1px solid var(--tt-border,#dce3ec);border-radius:23px;background:var(--tt-surface,#fff);box-shadow:0 14px 35px rgba(35,58,92,.035)}
.tt-cs-card[hidden]{display:none!important}
.tt-cs-card-featured{grid-column:1/-1}
.tt-cs-card-image{position:relative;display:flex;align-items:flex-end;justify-content:center;height:430px;overflow:hidden;padding:42px 11% 0;background:linear-gradient(130deg,#e3eaff,#e5f5f3 70%,#d7eaf4)}
.tt-cs-card-featured .tt-cs-card-image{height:560px;padding:54px 15% 0}
.tt-cs-card-image-2{background:linear-gradient(130deg,#f7e7df,#e5ecff 70%,#e0f4f3)}
.tt-cs-card-image-3{background:linear-gradient(130deg,#eaf0d9,#def3ef 60%,#dce7ff)}
.tt-cs-desktop{position:relative;width:100%;height:94%;overflow:hidden;border:5px solid #1b2634;border-bottom:0;border-radius:15px 15px 0 0;background:#fff;box-shadow:0 22px 42px rgba(22,42,74,.2);transform:translateY(12px);transition:transform .4s cubic-bezier(.2,.7,.2,1)}
.tt-cs-card:hover .tt-cs-desktop{transform:translateY(0)}
.tt-cs-desktop img{display:block;width:100%;height:100%;padding-top:22px;object-fit:cover;object-position:top}
.tt-cs-browser-bar{position:absolute;z-index:1;top:0;left:0;right:0;display:flex;align-items:center;gap:5px;height:22px;padding:0 10px;border-bottom:1px solid #e2e7ee;background:#f8fafc}
.tt-cs-browser-bar i{width:5px;height:5px;border-radius:50%;background:#b8c3d2}.tt-cs-browser-bar i:first-child{background:#006dfa}
.tt-cs-mobile{position:absolute;right:3.5%;bottom:-7%;width:24%;height:69%;overflow:hidden;border:5px solid #1b2634;border-radius:24px 24px 0 0;background:#fff;box-shadow:0 18px 35px rgba(18,32,52,.26);transform:rotate(3deg) translateY(15px);transition:transform .4s cubic-bezier(.2,.7,.2,1)}
.tt-cs-card:hover .tt-cs-mobile{transform:rotate(1deg) translateY(0)}
.tt-cs-card-featured .tt-cs-mobile{right:9%;width:17%;height:73%}
.tt-cs-mobile img{display:block;width:100%;height:100%;object-fit:cover;object-position:top}
.tt-cs-image-number{position:absolute;top:24px;left:25px;color:#2d506c;font-size:12px;font-weight:650;letter-spacing:.13em}
.tt-cs-card-bottom{display:flex;align-items:end;justify-content:space-between;gap:25px;min-height:174px;padding:28px 31px 31px}
.tt-cs-card-bottom>div{min-width:0}
.tt-cs-card-type{display:block;margin-bottom:11px;color:var(--tt-heading-accent,#006dfa);font-size:13px;font-weight:650;letter-spacing:.08em;text-transform:uppercase}
.tt-cs-card h3{margin-bottom:9px}
.tt-cs-card p{max-width:680px;font-size:16px;line-height:1.55}
.tt-cs-card-link{display:inline-flex;align-items:center;justify-content:center;gap:13px;flex:0 0 auto;min-height:43px;padding:10px 0;color:var(--tt-text,#171a20);font-size:15px;font-weight:650;line-height:1.3;text-decoration:none}
.tt-cs-card-link span{display:grid;place-items:center;width:37px;height:37px;border:1px solid var(--tt-border,#dce3ec);border-radius:50%;color:var(--tt-heading-accent,#006dfa);font-size:20px;font-weight:400;transition:background .2s,border-color .2s,transform .2s}
.tt-cs-card-link:hover{text-decoration:underline;text-underline-offset:5px}.tt-cs-card-link:hover span{border-color:var(--tt-heading-accent,#006dfa);background:rgba(0,109,250,.08);transform:translate(2px,-2px)}
.tt-cs-outro{padding-top:0;padding-bottom:110px}
.tt-cs-outro-panel{position:relative;isolation:isolate;display:flex;align-items:center;justify-content:space-between;gap:30px;min-height:390px;overflow:hidden;padding:58px 65px;border:1px solid var(--tt-border,#dce3ec);border-radius:26px;background:radial-gradient(circle at 0 0,#f1eaff,transparent 48%),radial-gradient(circle at 98% 100%,#ffe5d1,transparent 52%),#fff7f1}
.tt-cs-outro-panel>div:first-child{z-index:1}.tt-cs-outro h2{margin:18px 0}.tt-cs-outro p{max-width:550px}.tt-cs-outro .tt-ap-button{margin-top:25px}
.tt-cs-outro-art{position:relative;width:270px;height:270px;flex:0 0 270px}.tt-cs-outro-art span{position:absolute;inset:0;border:1px solid rgba(0,109,250,.19);border-radius:50%}.tt-cs-outro-art span:nth-child(2){inset:35px}.tt-cs-outro-art span:nth-child(3){inset:70px}.tt-cs-outro-art b{position:absolute;inset:104px;display:grid;place-items:center;border-radius:50%;background:#006dfa;color:#fff;font-size:43px;font-weight:400;box-shadow:0 14px 34px rgba(0,109,250,.25)}
html[data-theme=dark] .tt-cs-hero{background:radial-gradient(circle at 88% 10%,rgba(44,76,117,.35),transparent 27%),var(--tt-page)}
html[data-theme=dark] .tt-cs-card-image-1{background:linear-gradient(130deg,#263657,#294b4c)}html[data-theme=dark] .tt-cs-card-image-2{background:linear-gradient(130deg,#493b4b,#2a405d)}html[data-theme=dark] .tt-cs-card-image-3{background:linear-gradient(130deg,#374432,#2a4651)}
html[data-theme=dark] .tt-cs-image-number{color:#e5eefd}html[data-theme=dark] .tt-cs-filters button.is-active{border-color:#78b3ff;background:#78b3ff;color:#101827}
html[data-theme=dark] .tt-cs-outro-panel{background:radial-gradient(circle at 0 0,rgba(98,68,132,.25),transparent 48%),radial-gradient(circle at 98% 100%,rgba(129,79,53,.22),transparent 52%),var(--tt-surface)}
@media(max-width:1000px){.tt-cs-hero-main{align-items:start;flex-direction:column;gap:25px;margin-bottom:72px}.tt-cs-work-intro{gap:32px}.tt-cs-card-featured .tt-cs-card-image{height:490px}.tt-cs-card-image{height:350px}.tt-cs-card-bottom{align-items:start;flex-direction:column;gap:10px}.tt-cs-outro-art{opacity:.5}}
@media(max-width:700px){.tt-case-studies-page .tt-ap-shell{width:calc(100% - 36px)}.tt-cs-hero{padding-top:62px}.tt-cs-index{font-size:11px;text-align:right}.tt-cs-hero-main{margin:33px 0 48px;gap:20px}.tt-cs-hero-line{min-height:70px;gap:14px;font-size:13px}.tt-cs-work{padding-block:70px}.tt-cs-work-intro{grid-template-columns:1fr;gap:18px;margin-bottom:30px}.tt-cs-filters{flex-wrap:nowrap;overflow-x:auto;margin-right:-18px;padding-right:18px;scrollbar-width:thin}.tt-cs-filters button{flex:0 0 auto;min-height:40px;padding:8px 13px;font-size:13px}.tt-cs-grid{grid-template-columns:1fr;gap:16px}.tt-cs-card-featured{grid-column:auto}.tt-cs-card-image,.tt-cs-card-featured .tt-cs-card-image{height:340px;padding:41px 10% 0}.tt-cs-card-featured .tt-cs-mobile,.tt-cs-mobile{right:2%;width:26%;height:68%}.tt-cs-card-bottom{min-height:0;padding:25px}.tt-cs-outro{padding-bottom:72px}.tt-cs-outro-panel{min-height:0;padding:37px 28px}.tt-cs-outro-art{position:absolute;right:-105px;bottom:-115px;z-index:-1;opacity:.3}}
@media(max-width:420px){.tt-cs-hero-line{gap:10px}.tt-cs-hero-line span{font-size:12px}.tt-cs-hero-line a{width:37px;height:37px;flex:0 0 37px}.tt-cs-card-image,.tt-cs-card-featured .tt-cs-card-image{height:265px;padding:40px 10% 0}.tt-cs-mobile,.tt-cs-card-featured .tt-cs-mobile{border-width:3px;border-radius:16px 16px 0 0}.tt-cs-desktop{border-width:3px}.tt-cs-card-bottom{padding:22px}.tt-cs-outro-panel{padding:32px 23px}}
@media(prefers-reduced-motion:reduce){.tt-cs-card *,.tt-cs-filters button,.tt-cs-hero-line a{transition:none!important}}
.tt-cs-hero h1 em,.tt-cs-work h2 em,.tt-cs-outro h2 em{margin-left:.11em}
.tt-cs-filters button:focus-visible{outline:2px solid var(--tt-heading-accent,#006dfa);outline-offset:3px}
