/* Cases list + case page */

.cp{padding-top:calc(60*var(--u))}
.cp-top{display:flex;align-items:flex-end;gap:24px;flex-wrap:wrap}
.cp-top .eb{font-size:calc(30*var(--u));line-height:1.2;letter-spacing:1px;display:block}
.cp-top h1{font-size:calc(120*var(--u));line-height:1;letter-spacing:1px;font-weight:400;margin:0}
.cp-top .stat{margin-bottom:calc(12*var(--u))}
.cp-lead{margin-top:calc(40*var(--u));font-size:calc(18*var(--u));line-height:1.65;font-weight:500;max-width:40em}
.cgrid{display:grid;grid-template-columns:repeat(2,calc(605*var(--u)));column-gap:calc(80*var(--u));row-gap:calc(70*var(--u));margin-top:calc(70*var(--u))}
.cc{position:relative;display:block;height:calc(560*var(--u));border-radius:calc(30*var(--u));overflow:hidden;color:#fff;text-decoration:none;background:#1a1a1a;isolation:isolate}
.cc img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .6s cubic-bezier(.2,.8,.2,1);z-index:-1}
.cc::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,0) 30%,rgba(0,0,0,.6) 58%,rgba(0,0,0,.9));z-index:-1}
.cc .in{text-shadow:0 1px 12px rgba(0,0,0,.35)}
.cc:hover img{transform:scale(1.04)}
.cc .in{position:absolute;left:calc(40*var(--u));right:calc(40*var(--u));bottom:calc(36*var(--u));display:grid;gap:calc(10*var(--u));justify-items:start}
.cc .ty{font-size:calc(14*var(--u));font-weight:600;letter-spacing:.08em;text-transform:uppercase;background:rgba(255,255,255,.16);backdrop-filter:blur(6px);padding:calc(7*var(--u)) calc(12*var(--u));border-radius:999px}
.cc b{font-size:calc(30*var(--u));line-height:1.2;font-weight:600}
.cc span{font-size:calc(17*var(--u));font-weight:500;opacity:.92}
.cc i{font-style:normal;margin-top:calc(10*var(--u));display:inline-flex;align-items:center;gap:calc(10*var(--u));border:1.5px solid rgba(255,255,255,.75);border-radius:calc(20*var(--u));padding:calc(15*var(--u)) calc(26*var(--u));font-size:calc(16*var(--u));font-weight:500;transition:background .2s,color .2s}
.cc i svg{width:calc(16*var(--u));height:calc(16*var(--u))}
.cc:hover i{background:#fff;color:var(--ink)}
@media (max-width:1024px){
  .cp{padding-top:28px}
  .cp-top .eb{font-size:22px}
  .cp-top h1{font-size:clamp(46px,10vw,96px)}
  .cp-lead{font-size:17px;margin-top:22px}
  .cgrid{grid-template-columns:1fr 1fr;gap:20px;margin-top:36px}
  .cc{height:auto;aspect-ratio:4/3.7;border-radius:24px}
  .cc .in{left:24px;right:24px;bottom:22px;gap:8px}
  .cc .ty{font-size:12px;padding:6px 10px}
  .cc b{font-size:24px}.cc span{font-size:15px}
  .cc i{font-size:15px;padding:13px 22px;border-radius:16px;margin-top:6px}.cc i svg{width:15px;height:15px}
}
@media (max-width:640px){.cgrid{grid-template-columns:1fr}.cc{aspect-ratio:4/4.2}}


.cs{padding-top:calc(50*var(--u))}
.back{display:inline-flex;align-items:center;gap:10px;font-size:calc(18*var(--u));font-weight:500;text-decoration:none;color:var(--ink-2)}
.back:hover{color:var(--blue)}
.back svg{width:18px;height:18px}
.cs h1{margin-top:0;font-size:calc(80*var(--u));line-height:calc(90*var(--u));letter-spacing:1px;font-weight:400;overflow-wrap:break-word}
.cs .sub{margin-top:calc(18*var(--u));font-size:calc(26*var(--u));font-weight:500;color:var(--ink-2)}
.cs-grid{display:grid;grid-template-columns:calc(720*var(--u)) calc(490*var(--u));column-gap:calc(80*var(--u));margin-top:calc(30*var(--u));align-items:start}
.cs-txt{margin-top:calc(60*var(--u))}
.cs-txt{display:grid;gap:calc(18*var(--u));font-size:calc(18*var(--u));line-height:1.65;font-weight:500;color:var(--ink-2)}
.cs-txt h2,.cs-res h2{font-size:calc(30*var(--u));line-height:1.3;font-weight:600;color:var(--ink);margin-bottom:calc(4*var(--u))}
.facts{border-radius:calc(30*var(--u));background:#f3f6fb;padding:calc(36*var(--u)) calc(40*var(--u));display:grid;gap:calc(22*var(--u))}
.facts dl{margin:0;display:grid;gap:calc(18*var(--u))}
.facts dt{font-size:calc(14*var(--u));color:#6b6b6b;text-transform:uppercase;letter-spacing:.08em;font-weight:600}
.facts dd{margin:calc(4*var(--u)) 0 0;font-size:calc(19*var(--u));font-weight:600}
.chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:6px}
.chips span{background:#fff;border-radius:999px;padding:7px 13px;font-size:calc(15*var(--u));font-weight:500}
.facts .btn{width:100%;font-size:calc(19*var(--u));padding:calc(26*var(--u)) calc(30*var(--u))}
.obtn{display:flex;align-items:center;justify-content:center;gap:10px;border:1.5px solid var(--blue);color:var(--blue);border-radius:calc(20*var(--u));padding:calc(22*var(--u)) calc(30*var(--u));font-size:calc(17*var(--u));font-weight:500;text-decoration:none;transition:background .2s,color .2s}
.obtn:hover{background:var(--blue);color:#fff}
.obtn svg{width:18px;height:18px}
.cs-res{margin-top:calc(70*var(--u));display:grid;gap:calc(18*var(--u));font-size:calc(18*var(--u));line-height:1.65;font-weight:500;color:var(--ink-2);max-width:calc(900*var(--u))}
.mets{display:grid;grid-template-columns:repeat(4,1fr);gap:calc(20*var(--u));margin-top:calc(10*var(--u))}
.mets div{background:#f3f6fb;border-radius:calc(24*var(--u));padding:calc(24*var(--u))}
.mets b{display:block;font-size:calc(40*var(--u));line-height:1.1;color:var(--blue);font-weight:700;font-variant-numeric:tabular-nums}
.mets span{font-size:calc(16*var(--u));color:var(--ink-2)}
.gal-h{margin-top:calc(100*var(--u));font-size:calc(80*var(--u));line-height:calc(90*var(--u))}
.gal{display:grid;gap:calc(30*var(--u));margin-top:calc(50*var(--u))}
.gal img{width:100%;height:auto;border-radius:calc(30*var(--u));background:#f3f6fb}
.gal.two{grid-template-columns:1fr 1fr;align-items:start}
.gal.two img.wide{grid-column:1/-1}
.gal.two img:not(.wide){aspect-ratio:1400/1743;height:auto;object-fit:cover;object-position:center}
.cta{margin-top:calc(120*var(--u));border-radius:calc(30*var(--u));background:var(--blue);color:#fff;display:grid;grid-template-columns:1fr calc(300*var(--u));gap:calc(60*var(--u));padding:calc(60*var(--u)) calc(70*var(--u));align-items:center;overflow:hidden}
.cta .eb{font-size:calc(18*var(--u));opacity:.85;font-weight:500}
.cta h2{font-size:calc(64*var(--u));line-height:1.1;margin-top:calc(10*var(--u))}
.cta p{font-size:calc(18*var(--u));line-height:1.6;margin-top:calc(16*var(--u));max-width:32em;opacity:.92}
.cta .row{display:flex;flex-wrap:wrap;gap:12px;margin-top:calc(30*var(--u))}
.cta .ms{display:inline-flex;align-items:center;gap:10px;border:1.5px solid rgba(255,255,255,.6);border-radius:calc(18*var(--u));padding:calc(16*var(--u)) calc(22*var(--u));font-size:calc(17*var(--u));font-weight:500;color:#fff;text-decoration:none}
.cta .ms svg{width:20px;height:20px;color:#fff;--ic-in:var(--blue)}
.cta .ms:hover{background:rgba(255,255,255,.14)}
.cta .wb{background:#fff;color:var(--blue);border:0;border-radius:calc(18*var(--u));padding:calc(17*var(--u)) calc(26*var(--u));font:600 calc(17*var(--u))/1 var(--font);cursor:pointer}
.cta figure{margin:0;display:grid;gap:12px;justify-items:center;text-align:center}
.cta figure img{width:calc(220*var(--u));height:calc(260*var(--u));object-fit:cover;border-radius:calc(24*var(--u))}
.cta figcaption{font-size:calc(15*var(--u));opacity:.9}
.next{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:calc(80*var(--u));padding-top:calc(40*var(--u));border-top:1px solid var(--line);text-decoration:none}
.next span{font-size:calc(18*var(--u));color:#6b6b6b;font-weight:500}
.next b{display:block;font-size:calc(50*var(--u));line-height:1.1;font-weight:400;margin-top:6px}
.next img{width:calc(260*var(--u));height:calc(160*var(--u));object-fit:cover;border-radius:calc(20*var(--u));transition:transform .4s}
.next:hover img{transform:scale(1.04)}
.next:hover b{color:var(--blue)}
@media (max-width:1024px){
  .cs{padding-top:24px}
  .back{font-size:16px}
  .cs h1{font-size:clamp(34px,7vw,64px);line-height:1.12;margin-top:0}
  .cs-txt{margin-top:28px}
  .cs .sub{font-size:20px;margin-top:10px}
  .cs-grid{grid-template-columns:1fr;gap:28px;margin-top:18px}
  .cs-txt,.cs-res{font-size:16px;gap:14px}
  .cs-txt h2,.cs-res h2{font-size:24px}
  .facts{border-radius:24px;padding:26px 24px;gap:18px}
  .facts dt{font-size:12px}.facts dd{font-size:17px}.chips span{font-size:14px}
  .facts .btn{font-size:18px;padding:22px}
  .obtn{font-size:16px;padding:18px;border-radius:18px}
  .cs-res{margin-top:44px}
  .mets{grid-template-columns:1fr 1fr;gap:12px}.mets div{border-radius:18px;padding:18px}.mets b{font-size:30px}.mets span{font-size:14px}
  .gal-h{margin-top:56px;font-size:clamp(34px,6vw,56px);line-height:1.15}
  .gal{gap:16px;margin-top:24px}.gal img{border-radius:18px}
  .cta{grid-template-columns:1fr;margin-top:64px;border-radius:24px;padding:32px 24px;gap:28px}
  .cta .eb{font-size:16px}.cta h2{font-size:clamp(30px,6vw,48px)}.cta p{font-size:16px}
  .cta .ms,.cta .wb{font-size:16px;padding:14px 18px;border-radius:16px}
  .cta figure{justify-items:start;text-align:left;grid-template-columns:auto 1fr;align-items:center}
  .cta figure img{width:72px;height:72px;border-radius:50%}
  .cta figcaption{font-size:14px}
  .next{margin-top:48px;padding-top:28px}.next span{font-size:15px}.next b{font-size:clamp(26px,5vw,40px)}.next img{width:150px;height:96px;border-radius:14px}
}
@media (max-width:560px){.gal.two{grid-template-columns:1fr}.next img{display:none}}

