/* ============================================================
   CASE STUDIES
   ============================================================ */
.cases{position:relative;overflow:hidden;background:#F4FAFE}
.cases__stage{position:relative;z-index:2}
.carousel{position:relative;overflow:visible}
.carousel__viewport{overflow:hidden;padding:26px 0 34px}
.carousel__track{display:flex;gap:34px;transition:transform .78s var(--ease);will-change:transform;cursor:grab}
.carousel__track.is-dragging{transition:none;cursor:grabbing}
.cslide{flex:none;width:100%;opacity:.55;transform:scale(.96);transition:opacity .7s var(--ease),transform .7s var(--ease)}
.cslide.is-active{opacity:1;transform:scale(1)}

.ccard{
  position:relative;background:#fff;border-radius:20px;overflow:hidden;
  box-shadow:0 18px 46px rgba(11,52,84,.10);
  display:grid;grid-template-columns:50% 50%;min-height:470px;
}
.ccard__left{padding:44px 18px 44px 48px;display:flex;flex-direction:column;align-items:flex-start}
.ctags{display:flex;gap:12px;flex-wrap:wrap}
.ctag{display:inline-flex;align-items:center;gap:9px;padding:9px 16px;border-radius:7px;background:var(--teal);color:#fff;font-size:.9rem;font-weight:700}
.ctag--alt{background:var(--blue-deep)}
.ctag svg{width:16px;height:16px}
.ccard__title{margin-top:22px;font-size:clamp(1.5rem,2.4vw,2.25rem);line-height:1.24;letter-spacing:-.03em;max-width:15ch}
.ccard__title em{font-style:normal;color:var(--blue)}
.cresult{
  margin-top:24px;display:flex;align-items:center;gap:14px;padding:13px 20px 13px 13px;
  border:1px solid var(--line);border-radius:12px;background:#fff;max-width:404px;
}
.cresult__ic{width:46px;height:46px;border-radius:50%;background:#EAF3F9;display:grid;place-items:center;color:var(--blue);flex:none}
.cresult__ic svg{width:18px;height:18px}
.cresult__label{display:inline-block;font-size:.68rem;font-weight:700;letter-spacing:.08em;color:#4B7FA4;background:#EAF2F8;padding:3px 9px;border-radius:5px}
.cresult__text{display:block;margin-top:5px;font-size:.9rem;font-weight:600;color:#1B242B}
.ccard__left .btn{margin-top:26px}

.ccard__right{position:relative;overflow:hidden;background:linear-gradient(160deg,#F4F9FD,#EDF4FA)}
.ccard__right--empty::after{content:"";position:absolute;inset:12%;border:1px solid rgba(44,131,185,.12);border-radius:18px}
.ccard__image{display:block;width:100%;height:100%;object-fit:cover;transition:transform .7s var(--ease)}
.ccard:hover .ccard__image{transform:scale(1.025)}

.carousel__nav{position:absolute;top:50%;transform:translateY(-50%);z-index:6;display:flex}
.carousel__nav--prev{left:0}
.carousel__nav--next{right:0}
.cnav{
  width:56px;height:56px;border-radius:50%;border:0;cursor:pointer;background:var(--blue-deep);color:#fff;
  display:grid;place-items:center;box-shadow:0 10px 26px rgba(9,44,71,.24);
  transition:background-color .35s var(--ease),transform .35s var(--ease);
}
.cnav svg{width:20px;height:20px;transition:transform .35s var(--ease)}
.cnav:hover{background:var(--blue)}
.carousel__nav--next .cnav:hover svg{transform:translateX(3px)}
.carousel__nav--prev .cnav:hover svg{transform:translateX(-3px)}
.dots{display:flex;gap:9px;justify-content:center;margin-top:8px}
.dot{width:8px;height:8px;border-radius:50%;border:0;background:#B9D3E3;cursor:pointer;padding:0;transition:width .4s var(--ease),background-color .4s var(--ease)}
.dot.is-active{width:26px;border-radius:4px;background:var(--blue)}

@media (max-width:1200px){
  .ccard{grid-template-columns:50% 50%}
  .ccard__left{padding:42px 16px 42px 40px}
}
@media (max-width:1024px){
  .carousel__nav--prev{left:8px}
  .carousel__nav--next{right:8px}
}
@media (max-width:760px){
  .ccard{grid-template-columns:1fr;min-height:0}
  .ccard__left{padding:30px 24px 26px}
  .ccard__right{height:300px}
  .carousel__track{gap:18px}
  .cnav{width:46px;height:46px}
  .carousel__nav{top:auto;bottom:-18px;transform:none}
  .dots{margin-top:62px}
}
