.editorial-shell{width:min(calc(100% - 2rem),1366px);margin-inline:auto}.editorial-eyebrow{margin:0 0 1.2rem;color:#67a9f6;font:700 .72rem 'Questrial',sans-serif;letter-spacing:.18em;text-transform:uppercase}.editorial-eyebrow-dark{color:#4a90e2}.editorial-link{display:inline-flex;align-items:center;gap:.55rem;color:#111827;font:1rem 'Questrial',sans-serif;text-decoration:none}.editorial-link span{color:#4a90e2;transition:transform .25s ease}.editorial-link:hover span{transform:translateX(5px)}

/* Case study index */
.portfolio-page{padding-top:94px}.portfolio-hero{min-height:650px;display:grid;grid-template-columns:1.25fr .75fr;align-items:end;gap:5rem;padding:clamp(3rem,7vw,7rem);border-radius:2.5rem;background:radial-gradient(circle at 80% 10%,rgba(74,144,226,.28),transparent 32%),linear-gradient(145deg,#111827,#142039);color:#fff;overflow:hidden}.portfolio-hero-copy{max-width:850px}.portfolio-hero h1{margin:0;font-size:clamp(3.8rem,7vw,7.5rem);font-weight:400;letter-spacing:-.06em;line-height:.94}.portfolio-hero-copy>p:last-child{max-width:690px;margin:2rem 0 0;color:#a9b4c5;font-size:1.2rem;line-height:1.7}.portfolio-hero-proof{display:grid;gap:1px;border:1px solid rgba(255,255,255,.1);border-radius:1.7rem;background:rgba(255,255,255,.08);overflow:hidden;backdrop-filter:blur(12px)}.portfolio-hero-proof div{display:flex;flex-direction:column;gap:.25rem;padding:1.4rem 1.5rem;background:rgba(17,24,39,.58)}.portfolio-hero-proof strong{font-size:1.4rem;font-weight:400}.portfolio-hero-proof span{color:#8390a5;font-size:.78rem}.portfolio-intro{display:grid;grid-template-columns:.35fr 1.65fr;gap:4rem;padding:clamp(6rem,10vw,10rem) clamp(1rem,5vw,5rem) 5rem}.portfolio-intro>div{display:grid;grid-template-columns:1.15fr .85fr;gap:4rem;align-items:end}.portfolio-intro h2{margin:0;font-size:clamp(3rem,5vw,5.5rem);font-weight:400;letter-spacing:-.05em;line-height:1}.portfolio-intro div p{margin:0;color:#667085;font-size:1.08rem;line-height:1.7}.portfolio-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem;padding:0 clamp(0rem,3vw,3rem) clamp(6rem,10vw,10rem)}.portfolio-card{display:grid;grid-template-rows:auto 1fr;border:1px solid #e7eaf0;border-radius:2rem;background:#fff;overflow:hidden;box-shadow:0 16px 45px rgba(17,24,39,.05);transition:transform .4s cubic-bezier(.22,1,.36,1),box-shadow .4s ease}.portfolio-card:hover{transform:translateY(-8px);box-shadow:0 26px 60px rgba(17,24,39,.1)}.portfolio-card-featured{grid-column:1/-1;grid-template-columns:1.25fr .75fr;grid-template-rows:none;min-height:620px}.portfolio-card-media{position:relative;display:block;min-height:390px;overflow:hidden;background:#111827}.portfolio-card-featured .portfolio-card-media{min-height:620px}.portfolio-card-media img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover;transition:transform .75s cubic-bezier(.22,1,.36,1)}.portfolio-card:hover img{transform:scale(1.04)}.portfolio-card-index{position:absolute;top:1.2rem;left:1.2rem;display:grid;place-items:center;width:42px;height:42px;border:1px solid rgba(255,255,255,.28);border-radius:50%;background:rgba(17,24,39,.48);color:#fff;font:.7rem 'Questrial',sans-serif;backdrop-filter:blur(10px)}.portfolio-card-body{display:flex;flex-direction:column;align-items:flex-start;padding:clamp(1.7rem,4vw,3.5rem)}.portfolio-card-meta{display:flex;flex-wrap:wrap;gap:.45rem}.portfolio-card-meta span{padding:.42rem .7rem;border-radius:999px;background:#eaf3fd;color:#2f75c4;font:.68rem 'Questrial',sans-serif;text-transform:uppercase;letter-spacing:.08em}.portfolio-card h2{margin:1.3rem 0 1rem;font-size:clamp(2.2rem,3.7vw,4.3rem);font-weight:400;letter-spacing:-.045em;line-height:1}.portfolio-card h2 a{text-decoration:none}.portfolio-card p{margin:0 0 2rem;color:#667085;font-size:1.02rem;line-height:1.7}.portfolio-card .editorial-link{margin-top:auto}.editorial-cta{margin-bottom:1rem;padding:clamp(3rem,7vw,7rem);border-radius:2.5rem;background:radial-gradient(circle at 20% 0%,rgba(74,144,226,.25),transparent 38%),#111827;color:#fff;text-align:center}.editorial-cta h2{max-width:880px;margin:0 auto;font-size:clamp(3rem,6vw,6.5rem);font-weight:400;letter-spacing:-.055em;line-height:.98}.editorial-cta>p:not(.editorial-eyebrow){margin:1.5rem auto 0;color:#9ca8ba;font-size:1.08rem}.editorial-cta-actions{display:flex;justify-content:center;flex-wrap:wrap;gap:.8rem;margin-top:2rem}

/* Case study detail */
.case-detail-page{padding-top:94px}.case-detail-hero{position:relative;min-height:760px;display:flex;flex-direction:column;justify-content:flex-end;padding:clamp(2rem,6vw,6rem);border-radius:2.5rem;overflow:hidden;color:#fff;isolation:isolate}.case-detail-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-3}.case-detail-shade{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,rgba(11,17,29,.96) 0%,rgba(11,17,29,.78) 48%,rgba(11,17,29,.25) 100%)}.case-detail-hero-content{max-width:850px}.case-back-link{display:inline-flex;margin-bottom:4rem;color:rgba(255,255,255,.72);font: .85rem 'Questrial',sans-serif;text-decoration:none}.case-back-link:hover{color:#fff}.case-detail-labels{display:flex;flex-wrap:wrap;gap:.55rem}.case-detail-labels span{padding:.48rem .78rem;border:1px solid rgba(255,255,255,.18);border-radius:999px;background:rgba(255,255,255,.08);font:.68rem 'Questrial',sans-serif;text-transform:uppercase;letter-spacing:.09em;backdrop-filter:blur(8px)}.case-detail-hero h1{margin:1.4rem 0 1.2rem;font-size:clamp(4rem,8vw,8.5rem);font-weight:400;letter-spacing:-.06em;line-height:.9}.case-detail-hero-content>p{max-width:760px;margin:0;color:#c0c8d4;font-size:clamp(1.1rem,1.6vw,1.35rem);line-height:1.65}.case-detail-stats{position:absolute;right:clamp(2rem,5vw,5rem);bottom:clamp(2rem,5vw,5rem);display:flex;border:1px solid rgba(255,255,255,.13);border-radius:1.4rem;background:rgba(17,24,39,.75);overflow:hidden;backdrop-filter:blur(14px)}.case-detail-stats div{min-width:125px;display:flex;flex-direction:column;gap:.2rem;padding:1.1rem 1.3rem;border-right:1px solid rgba(255,255,255,.1)}.case-detail-stats div:last-child{border:0}.case-detail-stats strong{color:#67a9f6;font-size:1.25rem;font-weight:400}.case-detail-stats span{color:#9aa6b7;font-size:.68rem;text-transform:uppercase;letter-spacing:.07em}.case-detail-layout{display:grid;grid-template-columns:300px minmax(0,760px);justify-content:center;gap:clamp(4rem,9vw,9rem);padding:clamp(6rem,10vw,10rem) 1rem}.case-detail-sidebar{position:sticky;top:8rem;align-self:start;display:grid;gap:2.5rem;padding:1.5rem;border:1px solid #e7eaf0;border-radius:1.5rem;background:#f8fafc}.case-detail-sidebar ul{display:grid;gap:.7rem;margin:0;padding:0;list-style:none}.case-detail-sidebar li{padding-bottom:.7rem;border-bottom:1px solid #e7eaf0;color:#394357}.case-tech-list{display:flex;flex-wrap:wrap;gap:.45rem}.case-tech-list span{padding:.42rem .65rem;border-radius:999px;background:#eaf3fd;color:#2f75c4;font-size:.72rem}.case-markdown h2{margin:0 0 1.3rem;padding-top:4.5rem;color:#111827;font-size:clamp(2.5rem,4.6vw,4.5rem);font-weight:400;letter-spacing:-.045em;line-height:1.04}.case-markdown h2:first-child{padding-top:0}.case-markdown h3{margin:2.8rem 0 .85rem;color:#111827;font-size:1.65rem;font-weight:400}.case-markdown p{margin:0 0 1.35rem;color:#596579;font-size:1.08rem;line-height:1.85}.case-markdown strong{color:#111827;font-weight:500}.case-markdown ul,.case-markdown ol{color:#596579;line-height:1.75}.case-markdown blockquote{margin:2rem 0;padding:1.5rem;border-left:3px solid #4a90e2;background:#f5f8fc}.next-case{position:relative;min-height:420px;display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:1rem;padding:clamp(2rem,6vw,5rem);border-radius:2.5rem;overflow:hidden;color:#fff;text-decoration:none;isolation:isolate}.next-case::after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(17,24,39,.95),rgba(17,24,39,.38))}.next-case>img{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.22,1,.36,1)}.next-case:hover>img{transform:scale(1.04)}.next-case>span{display:flex;flex-direction:column;gap:.55rem}.next-case small{color:#8fbdf0;font:.72rem 'Questrial',sans-serif;text-transform:uppercase;letter-spacing:.14em}.next-case strong{font-size:clamp(3rem,6vw,6rem);font-weight:400;letter-spacing:-.05em}.next-case>b{font-size:3rem;font-weight:400;transition:transform .3s ease}.next-case:hover>b{transform:translateX(8px)}

/* Legal pages */
.legal-page{padding-top:94px}.legal-hero{min-height:500px;display:grid;grid-template-columns:1.15fr .85fr;align-items:end;gap:5rem;padding:clamp(3rem,7vw,7rem);border-radius:2.5rem;background:radial-gradient(circle at 80% 10%,rgba(74,144,226,.28),transparent 32%),#111827;color:#fff}.legal-hero h1{margin:0;font-size:clamp(4rem,8vw,8rem);font-weight:400;letter-spacing:-.06em;line-height:.9}.legal-hero-copy>p:last-child{max-width:680px;margin:1.7rem 0 0;color:#a9b4c5;font-size:1.15rem;line-height:1.7}.legal-meta{display:grid;gap:1px;border:1px solid rgba(255,255,255,.1);border-radius:1.4rem;background:rgba(255,255,255,.08);overflow:hidden}.legal-meta div{padding:1.25rem 1.4rem;background:rgba(17,24,39,.55)}.legal-meta span{display:block;color:#7f8ca1;font-size:.68rem;text-transform:uppercase;letter-spacing:.1em}.legal-meta strong{display:block;margin-top:.3rem;font-size:1.05rem;font-weight:400}.legal-layout{display:grid;grid-template-columns:260px minmax(0,780px);justify-content:center;gap:clamp(4rem,9vw,9rem);padding:clamp(5rem,9vw,9rem) 1rem}.legal-nav{position:sticky;top:8rem;align-self:start;padding:1.4rem;border:1px solid #e7eaf0;border-radius:1.4rem;background:#f8fafc}.legal-nav p{margin:0 0 1rem;color:#4a90e2;font:.7rem 'Questrial',sans-serif;text-transform:uppercase;letter-spacing:.12em}.legal-nav a{display:block;padding:.65rem 0;border-bottom:1px solid #e7eaf0;color:#5f6b7e;font-size:.86rem;text-decoration:none}.legal-nav a:last-child{border:0}.legal-nav a:hover{color:#4a90e2}.legal-content section{padding:0 0 3.5rem;margin-bottom:3.5rem;border-bottom:1px solid #e7eaf0;scroll-margin-top:8rem}.legal-content section:last-child{border:0}.legal-number{display:inline-grid;place-items:center;width:36px;height:36px;margin-bottom:1rem;border-radius:50%;background:#eaf3fd;color:#2f75c4;font:.7rem 'Questrial',sans-serif}.legal-content h2{margin:0 0 1rem;color:#111827;font-size:clamp(2rem,3.5vw,3.4rem);font-weight:400;letter-spacing:-.04em}.legal-content h3{margin:1.8rem 0 .7rem;font-size:1.25rem;font-weight:400}.legal-content p,.legal-content li{color:#5d687b;font-size:1.02rem;line-height:1.8}.legal-content ul{padding-left:1.2rem}.legal-content a{color:#2f75c4}.legal-callout{padding:1.4rem;border:1px solid #cfe3fa;border-radius:1.2rem;background:#f2f7fd}.legal-switcher{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1rem}.legal-switcher a{padding:2rem;border:1px solid #e7eaf0;border-radius:1.5rem;background:#fff;text-decoration:none;transition:transform .3s ease,border-color .3s ease}.legal-switcher a:hover{transform:translateY(-4px);border-color:#4a90e2}.legal-switcher small{display:block;color:#4a90e2;text-transform:uppercase;letter-spacing:.1em}.legal-switcher strong{display:block;margin-top:.5rem;color:#111827;font-size:1.4rem;font-weight:400}

@media(max-width:1050px){.portfolio-hero,.legal-hero{grid-template-columns:1fr;gap:3rem}.portfolio-hero-proof{grid-template-columns:repeat(3,1fr)}.portfolio-card-featured{grid-template-columns:1fr;grid-template-rows:auto 1fr}.portfolio-card-featured .portfolio-card-media{min-height:480px}.case-detail-stats{position:static;width:max-content;max-width:100%;margin-top:2rem}.case-detail-layout{grid-template-columns:240px minmax(0,680px);gap:3rem}}
@media(max-width:820px){.editorial-shell{width:min(calc(100% - 1rem),1366px)}.portfolio-page,.case-detail-page,.legal-page{padding-top:84px}.portfolio-hero,.case-detail-hero,.legal-hero{border-radius:1.75rem}.portfolio-hero{min-height:620px;padding:3rem 1.5rem}.portfolio-hero-proof{grid-template-columns:1fr}.portfolio-intro{grid-template-columns:1fr;gap:1rem;padding-block:5rem}.portfolio-intro>div{grid-template-columns:1fr;gap:1.5rem}.portfolio-grid{grid-template-columns:1fr}.case-detail-hero{min-height:720px;padding:2rem 1.5rem}.case-detail-stats{display:grid;grid-template-columns:repeat(3,1fr);width:100%}.case-detail-stats div{min-width:0}.case-detail-layout,.legal-layout{grid-template-columns:1fr;gap:3rem}.case-detail-sidebar,.legal-nav{position:static}.next-case{border-radius:1.75rem}.legal-hero{min-height:560px;padding:3rem 1.5rem}.legal-switcher{grid-template-columns:1fr}}
@media(max-width:560px){.portfolio-hero h1{font-size:3.6rem}.portfolio-card-media,.portfolio-card-featured .portfolio-card-media{min-height:330px}.portfolio-card{border-radius:1.5rem}.portfolio-card-body{padding:1.4rem}.editorial-cta{padding:3rem 1.2rem;border-radius:1.75rem}.case-detail-hero{min-height:740px}.case-detail-hero h1{font-size:3.7rem}.case-back-link{margin-bottom:3rem}.case-detail-stats{grid-template-columns:1fr}.case-detail-stats div{padding:.8rem 1rem;border-right:0;border-bottom:1px solid rgba(255,255,255,.1)}.case-detail-layout{padding-block:4rem}.case-markdown h2{font-size:2.5rem}.next-case{min-height:360px;padding:1.5rem}.next-case strong{font-size:2.8rem}.legal-hero h1{font-size:4rem}.legal-layout{padding-block:4rem}.legal-content section{padding-bottom:2.5rem;margin-bottom:2.5rem}}

/* Video case-study media and connected web/mobile product showcase */
.portfolio-card-media video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .75s cubic-bezier(.22,1,.36,1)}.portfolio-card:hover .portfolio-card-media video{transform:scale(1.04)}.case-detail-hero>video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-3}.next-case>video{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.22,1,.36,1)}.next-case:hover>video{transform:scale(1.04)}.case-product-showcase{position:relative;min-height:690px;margin-top:1.2rem;border-radius:2.5rem;background:radial-gradient(circle at 14% 12%,rgba(89,160,240,.38),transparent 30%),linear-gradient(145deg,#111827,#172744 65%,#1e4777);overflow:hidden;box-shadow:0 24px 70px rgba(17,24,39,.15)}.case-product-browser{position:absolute;top:10%;left:6%;width:82%;box-shadow:0 40px 80px rgba(2,8,20,.45)}.case-product-browser video{display:block;width:100%;aspect-ratio:16/9;object-fit:cover}.case-product-phone{position:absolute;right:7%;bottom:7%;width:180px;height:375px;z-index:3;transform:rotate(2deg);box-shadow:0 34px 65px rgba(2,8,20,.5)}.case-product-phone video{display:block;width:100%;height:100%;object-fit:cover}.case-product-showcase>p{position:absolute;left:6%;bottom:7%;display:flex;flex-direction:column;gap:.3rem;margin:0;padding:1rem 1.25rem;border:1px solid rgba(255,255,255,.12);border-radius:1.2rem;background:rgba(17,24,39,.8);color:#fff;font-size:1rem;backdrop-filter:blur(12px)}.case-product-showcase>p span{color:#78b4f1;font:.68rem 'Questrial',sans-serif;text-transform:uppercase;letter-spacing:.12em}
@media(max-width:820px){.case-product-showcase{min-height:560px;border-radius:1.75rem}.case-product-browser{left:3%;top:10%;width:94%}.case-product-phone{right:5%;width:135px;height:285px}.case-product-showcase>p{left:4%;bottom:6%;max-width:64%;font-size:.88rem}}
@media(max-width:560px){.case-product-showcase{min-height:430px}.case-product-browser{top:12%}.case-product-phone{width:100px;height:210px}.case-product-showcase>p{max-width:58%;padding:.75rem;font-size:.75rem}.case-product-showcase>p span{font-size:.58rem}.portfolio-card-media video,.case-detail-hero>video,.next-case>video{object-position:center}}
@media(prefers-reduced-motion:reduce){.portfolio-card-media video,.next-case>video{transition:none!important}}
