/* ================================================================
   INLINE VIDEO TESTIMONIALS — 9:16 PORTRAIT
   ================================================================ */
.tm-inline-testimonials{
  width:100%;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;
  margin:26px 0 48px;position:relative;
}
.tm-inline-testimonials .tm-testimonial-card{min-width:0;margin:0;padding:0;border:0;background:transparent;}
.tm-inline-testimonials .tm-video-card{position:relative;display:block;width:100%;padding:0;margin:0;border:0;outline:0;background:transparent;text-align:left;cursor:pointer;font:inherit;}
.tm-inline-testimonials .tm-video-poster{position:relative;display:block;width:100%;aspect-ratio:9/16;overflow:hidden;border-radius:16px;background:#101321;isolation:isolate;box-shadow:0 12px 30px rgba(23,16,68,.10);}
.tm-inline-testimonials .tm-video-cover{position:absolute;inset:0;z-index:1;display:block;width:100%;height:100%;object-fit:contain;object-position:center;background:#101321;}
.tm-inline-testimonials .tm-video-play{position:absolute;left:50%;top:50%;z-index:4;width:46px;height:46px;transform:translate(-50%,-50%);display:grid;place-items:center;padding-left:2px;border-radius:50%;background:#774CF7;color:#fff;font-size:14px;box-shadow:0 8px 24px rgba(119,76,247,.35);pointer-events:none;transition:transform .25s ease;}
.tm-inline-testimonials .tm-video-card:hover .tm-video-play{transform:translate(-50%,-50%) scale(1.07);}
.tm-inline-testimonials .tm-testimonial-video,.tm-inline-testimonials .tm-testimonial-iframe{position:absolute;inset:0;z-index:2;display:block;width:100%;height:100%;border:0;border-radius:inherit;background:#000;object-fit:contain;}
.tm-inline-testimonials .tm-video-stop{position:absolute;top:9px;right:9px;z-index:8;width:32px;height:32px;display:grid;place-items:center;padding:0;border:1px solid rgba(255,255,255,.28);border-radius:50%;background:rgba(0,0,0,.58);color:#fff;font-size:18px;cursor:pointer;}
.tm-inline-testimonials .tm-video-stop:hover{background:#774CF7;}
.tm-inline-testimonials .tm-video-card:focus-visible{outline:3px solid rgba(119,76,247,.30);outline-offset:5px;border-radius:18px;}

/* ---------- Case studies ---------- */
.section-cadence{
  position:relative;
  margin-top:0;
  padding-bottom:120px;
  overflow:visible;
}
.section-cadence .section-head-center{
  margin-bottom:44px;
  max-width:860px;
}
.case-study-carousel-wrap{
  position:relative;
  width:100%;
  max-width:var(--container,1180px);
  margin:0 auto;
  padding:0;
}
.case-study-carousel{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:20px;
  width:100%;
  overflow:hidden;
  outline:0;
  scroll-behavior:smooth;
}
.case-study-card{
  min-width:0;
  padding:16px 16px 22px;
  border:1px solid rgba(231,227,244,.9);
  border-radius:20px;
  background:rgba(255,255,255,.94);
  box-shadow:0 12px 32px rgba(23,16,68,.07);
}
.case-study-media{
  position:relative;
  display:grid;
  grid-template-rows:1fr 1fr;
  gap:8px;
  margin-bottom:14px;
}
.case-study-shot{
  position:relative;
  min-width:0;
  height:132px;
  overflow:hidden;
  border-radius:13px;
  background:#0c1319;
}
.case-study-shot img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
}
.case-study-shot::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(to bottom,rgba(0,0,0,.20),transparent 45%,rgba(0,0,0,.14));
}
.case-study-shot>span{
  position:absolute;
  z-index:2;
  top:10px;
  left:10px;
  padding:5px 11px;
  border-radius:999px;
  background:rgba(72,77,88,.88);
  color:#fff;
  font-size:10px;
  line-height:1;
  font-weight:700;
}
.case-study-shot.after-shot>span{background:#774CF7;}
.case-study-vs{
  position:absolute;
  z-index:6;
  left:50%;
  top:50%;
  width:38px;
  height:38px;
  transform:translate(-50%,-50%);
  display:grid;
  place-items:center;
  border:2px solid #fff;
  border-radius:50%;
  background:#774CF7;
  color:#fff;
  font-size:11px;
  font-weight:800;
  box-shadow:0 5px 16px rgba(119,76,247,.35);
  pointer-events:none;
}
.case-study-label{
  display:block;
  margin:0 0 8px;
  color:#774CF7;
  font-size:12px;
  line-height:1.2;
  font-weight:800;
}
.case-study-card h3{
  margin:0 0 9px;
  color:#171044;
  font-size:20px;
  line-height:1.12;
  letter-spacing:-.025em;
  font-weight:800;
}
.case-study-card p{
  margin:0;
  color:#625B7A;
  font-size:13px;
  line-height:1.5;
}
.case-study-nav{
  position:absolute;
  z-index:10;
  bottom:-78px;
  width:54px;
  height:54px;
  display:grid;
  place-items:center;
  padding:0;
  border:0;
  border-radius:50%;
  background:#fff;
  color:#7d8193;
  font-size:24px;
  line-height:1;
  cursor:pointer;
  box-shadow:0 8px 24px rgba(23,16,68,.10);
  transition:transform .2s ease,opacity .2s ease,background .2s ease;
}
.case-study-prev{left:50%;margin-left:-67px;}
.case-study-next{left:50%;margin-left:13px;background:#774CF7;color:#fff;}
.case-study-nav:hover{transform:translateY(-2px);}
.case-study-nav:focus-visible{
  outline:3px solid rgba(119,76,247,.30);
  outline-offset:4px;
}
.case-study-nav[disabled]{opacity:.45;cursor:not-allowed;transform:none;}

/* Tablet: 2-column testimonials, 2-column case studies. */
@media(max-width:1100px){
  .tm-inline-testimonials{grid-template-columns:repeat(2,minmax(0,1fr));}
  .case-study-carousel{grid-template-columns:repeat(2,minmax(0,1fr));}
  .case-study-card:nth-child(n+3){display:none;}
}

/* Mobile: one testimonial per row and a true horizontally scrollable
   case-study track. The site's existing dotted background is untouched. */
@media(max-width:760px){
  .tm-inline-testimonials{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:14px;
    margin:26px 0 52px;
  }
  .tm-inline-testimonials .tm-video-poster{border-radius:14px;}

  .case-study-carousel-wrap{padding:0 18px;}
  .case-study-carousel{
    display:flex;
    gap:16px;
    overflow-x:auto;
    padding:0 0 8px;
    scroll-snap-type:x mandatory;
    scrollbar-width:none;
  }
  .case-study-carousel::-webkit-scrollbar{display:none;}
  .case-study-card{
    flex:0 0 calc(100% - 8px);
    scroll-snap-align:start;
  }
  .case-study-shot{height:150px;}
  .case-study-nav{display:none;}
}
@media(max-width:480px){
  .tm-inline-testimonials{
    grid-template-columns:1fr;
    gap:16px;
  }
  .tm-inline-testimonials .tm-video-poster{aspect-ratio:16/9;}
  .case-study-card{padding:12px 12px 18px;}
  .case-study-shot{height:145px;}
  .case-study-card h3{font-size:19px;}
}

/* ================================================================
   RESPONSIVE SPACING POLISH — preserve original Case Study design
   ================================================================ */
.section-cadence{background:transparent !important;padding-bottom:86px;}
.section-cadence .section-head-center{margin-bottom:28px;}
.case-study-carousel-wrap{padding:0 18px;}
.case-study-carousel{padding-bottom:4px;}
.case-study-nav{width:40px;height:40px;font-size:18px;bottom:-56px;}
.case-study-prev{margin-left:-50px;}
.case-study-next{margin-left:10px;}
#fordel{padding-top:72px !important;}
@media(max-width:1100px){
  .tm-inline-testimonials{gap:14px;margin-bottom:40px;}
  .section-cadence{padding-bottom:78px;}
  .section-cadence .section-head-center{margin-bottom:24px;}
  #fordel{padding-top:64px !important;}
}
@media(max-width:760px){
  .tm-inline-testimonials{display:flex;flex-wrap:nowrap;overflow-x:auto;gap:12px;margin:20px 0 30px;padding:0 2px 4px;scrollbar-width:none;-webkit-overflow-scrolling:touch;}
  .tm-inline-testimonials::-webkit-scrollbar{display:none;}
  .tm-inline-testimonials .tm-testimonial-card{flex:0 0 142px;width:142px;}
  .tm-inline-testimonials .tm-video-card{width:142px;max-width:142px;}
  .tm-inline-testimonials .tm-video-poster{aspect-ratio:9/16;border-radius:14px;}
  .section-cadence{margin-top:0 !important;padding-top:0 !important;padding-bottom:58px;}
  .section-cadence .section-head-center{margin-bottom:18px;}
  .case-study-carousel-wrap{padding:0 14px;}
  .case-study-carousel{gap:14px;padding-bottom:3px;}
  .case-study-card{flex:0 0 calc(100% - 8px);padding:12px 12px 14px;}
  .case-study-shot{height:150px;}
  .case-study-nav{display:grid !important;width:34px;height:34px;font-size:15px;bottom:-44px;}
  .case-study-prev{left:50%;margin-left:-40px;}
  .case-study-next{left:50%;margin-left:6px;}
  #fordel{padding-top:48px !important;}
}
@media(max-width:480px){
  .tm-inline-testimonials{gap:10px;margin-top:18px;margin-bottom:26px;}
  .tm-inline-testimonials .tm-testimonial-card,.tm-inline-testimonials .tm-video-card{flex-basis:128px;width:128px;max-width:128px;}
  .section-cadence{padding-bottom:54px;}
  .case-study-card{padding:11px 11px 12px;}
  .case-study-shot{height:145px;}
  .case-study-card h3{font-size:19px;}
  .case-study-nav{width:32px;height:32px;bottom:-42px;font-size:14px;}
  .case-study-prev{margin-left:-38px;}
  #fordel{padding-top:44px !important;}
}


/* ================================================================
   FINAL CASE STUDY POLISH — original two-image design + image popup
   ================================================================ */
.section-cadence{padding-top:0 !important;padding-bottom:54px !important;}
.section-cadence .section-head-center{margin-bottom:18px !important;}
.case-study-carousel-wrap{padding:0 !important;}
.case-study-carousel{padding-bottom:0 !important;}
.case-study-nav{width:42px !important;height:42px !important;font-size:18px !important;bottom:-58px !important;}
.case-study-prev{margin-left:-52px !important;}
.case-study-next{margin-left:10px !important;}
#fordel{padding-top:78px !important;}

.case-study-shot{cursor:zoom-in;}
.case-study-shot img{cursor:zoom-in;}

.case-study-lightbox{position:fixed;inset:0;z-index:9999;display:none;align-items:center;justify-content:center;padding:24px;background:rgba(17,12,42,.72);}
.case-study-lightbox.is-open{display:flex;}
.case-study-lightbox-backdrop{position:absolute;inset:0;}
.case-study-lightbox-panel{position:relative;z-index:1;width:min(1080px,94vw);max-height:92vh;overflow:auto;padding:28px;border-radius:24px;background:#fff;box-shadow:0 30px 90px rgba(0,0,0,.28);}
.case-study-lightbox-close{position:absolute;right:14px;top:12px;z-index:3;width:38px;height:38px;border:0;border-radius:50%;background:#774CF7;color:#fff;font-size:25px;line-height:1;cursor:pointer;}
.case-study-lightbox-images{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
.case-study-lightbox-images>div{position:relative;min-width:0;border-radius:16px;overflow:hidden;background:#f7f5fc;}
.case-study-lightbox-images span{position:absolute;top:10px;left:10px;z-index:2;padding:6px 10px;border-radius:999px;background:#774CF7;color:#fff;font-size:11px;font-weight:800;}
.case-study-lightbox-images img{display:block;width:100%;height:min(58vh,560px);object-fit:contain;background:#f7f5fc;}
.case-study-lightbox-copy{text-align:center;padding:18px 8px 0;}
.case-study-lightbox-copy>span{color:#774CF7;font-size:12px;font-weight:800;}
.case-study-lightbox-copy h3{margin:6px 0 6px;color:#171044;font-size:22px;}
.case-study-lightbox-copy p{margin:0 auto;color:#625B7A;font-size:14px;line-height:1.55;max-width:720px;}

/* Keep testimonials genuinely portrait at every breakpoint. */
.tm-inline-testimonials .tm-video-poster,.tm-inline-testimonials .tm-testimonial-video,.tm-inline-testimonials .tm-testimonial-iframe{aspect-ratio:9/16 !important;}
.tm-inline-testimonials .tm-video-poster{height:auto !important;}

@media(max-width:760px){
  .section-cadence{padding-top:0 !important;padding-bottom:50px !important;}
  .section-cadence .section-head-center{margin-bottom:14px !important;}
  .case-study-carousel-wrap{padding:0 12px !important;}
  .case-study-carousel{gap:12px !important;}
  .case-study-card{padding:12px 12px 14px !important;}
  .case-study-shot{height:145px !important;}
  .case-study-nav{display:grid !important;width:34px !important;height:34px !important;font-size:15px !important;bottom:-46px !important;}
  .case-study-prev{left:50%;margin-left:-42px !important;}
  .case-study-next{left:50%;margin-left:8px !important;}
  #fordel{padding-top:62px !important;}
  .case-study-lightbox{padding:14px;}
  .case-study-lightbox-panel{padding:18px 12px 16px;border-radius:18px;width:96vw;}
  .case-study-lightbox-images{grid-template-columns:1fr;gap:10px;}
  .case-study-lightbox-images img{height:240px;}
}
@media(max-width:480px){
  .section-cadence{padding-bottom:48px !important;}
  .tm-inline-testimonials{margin-top:16px !important;margin-bottom:22px !important;}
  .tm-inline-testimonials .tm-video-poster{aspect-ratio:9/16 !important;}
  .case-study-shot{height:138px !important;}
  #fordel{padding-top:58px !important;}
}

/* ================================================================
   FINAL RESPONSIVE SPACING / LIGHTBOX POLISH
   Keep the original Case Studies composition; only tune spacing.
   ================================================================ */
.section-cadence{
  padding-top:clamp(28px,3.2vw,44px) !important;
  padding-bottom:clamp(76px,6vw,92px) !important;
  margin-top:0 !important;
}
.section-cadence .section-head-center{
  margin-bottom:clamp(20px,2.4vw,30px) !important;
}
.case-study-carousel-wrap{
  padding:0 !important;
}
.case-study-carousel{
  gap:20px !important;
}
.case-study-nav{
  bottom:-62px !important;
  width:42px !important;
  height:42px !important;
  font-size:18px !important;
}
.case-study-prev{margin-left:-54px !important;}
.case-study-next{margin-left:12px !important;}
#fordel{
  padding-top:72px !important;
}

/* Lightbox: clean landscape presentation on desktop */
.case-study-lightbox{
  padding:20px !important;
}
.case-study-lightbox-panel{
  width:min(1120px,94vw) !important;
  max-height:92vh !important;
  padding:30px !important;
}
.case-study-lightbox-images{
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:18px !important;
  align-items:center !important;
}
.case-study-lightbox-images>div{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  aspect-ratio:16/10 !important;
  min-height:0 !important;
}
.case-study-lightbox-images img{
  width:100% !important;
  height:100% !important;
  max-height:none !important;
  object-fit:contain !important;
  object-position:center !important;
}
.case-study-lightbox-copy{
  padding:16px 8px 2px !important;
}

@media (max-width:1100px){
  .section-cadence{
    padding-top:26px !important;
    padding-bottom:82px !important;
  }
  .section-cadence .section-head-center{margin-bottom:22px !important;}
  #fordel{padding-top:66px !important;}
}

@media (max-width:760px){
  .section-cadence{
    padding-top:22px !important;
    padding-bottom:78px !important;
  }
  .section-cadence .section-head-center{margin-bottom:18px !important;}
  .case-study-carousel-wrap{padding:0 12px !important;}
  .case-study-carousel{gap:12px !important;}
  .case-study-card{padding:12px 12px 14px !important;}
  .case-study-nav{
    display:grid !important;
    bottom:-48px !important;
    width:34px !important;
    height:34px !important;
    font-size:15px !important;
  }
  .case-study-prev{left:50% !important;margin-left:-42px !important;}
  .case-study-next{left:50% !important;margin-left:8px !important;}
  #fordel{padding-top:58px !important;}

  .case-study-lightbox{padding:12px !important;}
  .case-study-lightbox-panel{
    width:96vw !important;
    max-height:94vh !important;
    padding:16px 12px 14px !important;
    border-radius:18px !important;
  }
  .case-study-lightbox-images{
    grid-template-columns:1fr !important;
    gap:10px !important;
  }
  .case-study-lightbox-images>div{
    aspect-ratio:16/10 !important;
  }
  .case-study-lightbox-images img{
    width:100% !important;
    height:100% !important;
    object-fit:contain !important;
  }
  .case-study-lightbox-copy{padding:12px 4px 0 !important;}
}

@media (max-width:480px){
  .section-cadence{
    padding-top:18px !important;
    padding-bottom:72px !important;
  }
  .section-cadence .section-head-center{margin-bottom:16px !important;}
  .case-study-nav{bottom:-46px !important;}
  #fordel{padding-top:54px !important;}
}

/* Testimonials remain true 9:16 portraits at every viewport. */
.tm-inline-testimonials .tm-video-poster{
  width:100% !important;
  aspect-ratio:9/16 !important;
  height:auto !important;
}
.tm-inline-testimonials .tm-testimonial-video,
.tm-inline-testimonials .tm-testimonial-iframe{
  width:100% !important;
  height:100% !important;
  aspect-ratio:9/16 !important;
  object-fit:contain !important;
}

/* ================================================================
   CASE STUDIES — FINAL RESPONSIVE SPACING + SINGLE-IMAGE LIGHTBOX
   ================================================================ */
.section-cadence{padding-top:clamp(28px,3vw,44px)!important;padding-bottom:clamp(150px,10vw,175px)!important;margin:0!important;background:transparent!important;overflow:visible!important}
.section-cadence .section-head-center{margin-bottom:24px!important}
.case-study-carousel-wrap{max-width:1180px!important;padding:0 18px!important;margin:0 auto!important}
.case-study-carousel{display:flex!important;gap:20px!important;overflow-x:auto!important;overflow-y:visible!important;scrollbar-width:none!important;scroll-snap-type:x mandatory!important;padding:0 0 4px!important}
.case-study-carousel::-webkit-scrollbar{display:none!important}
.case-study-card{flex:0 0 calc((100% - 40px)/3)!important;scroll-snap-align:start!important}
.case-study-nav{display:grid!important;width:40px!important;height:40px!important;bottom:-66px!important;font-size:17px!important}
.case-study-prev{left:50%!important;margin-left:-50px!important}
.case-study-next{left:50%!important;margin-left:10px!important}
#fordel{padding-top:82px!important;margin-top:0!important}

.case-study-lightbox{position:fixed!important;inset:0!important;z-index:9999!important;display:none!important;align-items:center!important;justify-content:center!important;padding:24px!important;background:rgba(17,12,42,.76)!important}
.case-study-lightbox.is-open{display:flex!important}
.case-study-lightbox-panel{position:relative!important;width:min(980px,94vw)!important;max-height:92vh!important;overflow:auto!important;padding:22px!important;border-radius:22px!important;background:#fff!important}
.case-study-lightbox-close{transition:transform .18s ease,box-shadow .18s ease!important}
.case-study-lightbox-close:hover,.case-study-lightbox-close:focus-visible{transform:scale(1.08)!important;box-shadow:0 0 0 5px rgba(119,76,247,.14)!important}
.case-study-lightbox-topline{text-align:left;margin:0 0 10px;padding-right:48px;color:#774CF7;font-size:12px;font-weight:800;letter-spacing:.02em}
.case-study-lightbox-stage{position:relative;display:flex;align-items:center;justify-content:center;width:100%;aspect-ratio:16/10;border-radius:16px;overflow:hidden;background:#f7f5fc}
.case-study-lightbox-stage img{display:block;width:100%;height:100%;object-fit:contain;object-position:center}
.case-study-lightbox-after{position:absolute;right:14px;top:50%;transform:translateY(-50%);border:0;border-radius:999px;padding:9px 13px;background:#774CF7;color:#fff;font-size:12px;font-weight:800;cursor:pointer;box-shadow:0 8px 22px rgba(119,76,247,.3);animation:tm-after-pulse 1.45s ease-in-out infinite}
.case-study-lightbox-copy{text-align:center;padding:14px 8px 0!important}
@keyframes tm-after-pulse{0%,100%{opacity:.65;box-shadow:0 8px 22px rgba(119,76,247,.18)}50%{opacity:1;box-shadow:0 0 0 7px rgba(119,76,247,.10),0 8px 22px rgba(119,76,247,.34)}}

@media(max-width:1100px){
  .section-cadence{padding-top:26px!important;padding-bottom:145px!important}
  .section-cadence .section-head-center{margin-bottom:22px!important}
  .case-study-card{flex-basis:calc((100% - 20px)/2)!important}
  #fordel{padding-top:74px!important}
}
@media(max-width:760px){
  .section-cadence{padding-top:22px!important;padding-bottom:128px!important}
  .section-cadence .section-head-center{margin-bottom:18px!important}
  .case-study-carousel-wrap{padding:0 14px!important}
  .case-study-carousel{gap:14px!important}
  .case-study-card{flex:0 0 calc(100% - 18px)!important;padding:12px 12px 14px!important}
  .case-study-nav{display:grid!important;bottom:-54px!important;width:34px!important;height:34px!important;font-size:14px!important}
  .case-study-prev{left:50%!important;margin-left:-42px!important}
  .case-study-next{left:50%!important;margin-left:8px!important}
  #fordel{padding-top:68px!important}
  .case-study-lightbox{padding:12px!important}
  .case-study-lightbox-panel{width:96vw!important;max-height:94vh!important;padding:16px 12px 14px!important;border-radius:18px!important}
  .case-study-lightbox-topline{margin-bottom:8px}
  .case-study-lightbox-stage{aspect-ratio:16/10!important}
  .case-study-lightbox-after{right:50%;top:auto;bottom:10px;transform:translateX(50%);padding:8px 14px}
}
@media(max-width:480px){
  .section-cadence{padding-top:18px!important;padding-bottom:120px!important}
  .case-study-card{flex-basis:calc(100% - 16px)!important}
  #fordel{padding-top:62px!important}
}

/* FINAL CRITICAL CAROUSEL SPACING + INTERACTIVE LIGHTBOX */
.section-cadence{padding-top:clamp(28px,3vw,44px)!important;padding-bottom:clamp(150px,10vw,175px)!important;margin:0!important;background:transparent!important;overflow:visible!important}
.section-cadence .section-head-center{margin-bottom:24px!important}
.case-study-carousel-wrap{max-width:1180px!important;padding:0 18px!important;margin:0 auto!important}
.case-study-carousel{display:flex!important;gap:20px!important;overflow-x:auto!important;scrollbar-width:none!important;padding:0 0 4px!important;scroll-snap-type:x mandatory!important}
.case-study-carousel::-webkit-scrollbar{display:none!important}
.case-study-card{flex:0 0 calc((100% - 40px)/3)!important;scroll-snap-align:start!important}
.case-study-nav{display:grid!important;width:40px!important;height:40px!important;bottom:-66px!important;font-size:17px!important}
.case-study-prev{left:50%!important;margin-left:-50px!important}.case-study-next{left:50%!important;margin-left:10px!important}
#fordel{padding-top:82px!important;margin-top:0!important}
.case-study-lightbox{padding:24px!important}
.case-study-lightbox-panel{width:min(980px,94vw)!important;max-height:92vh!important;padding:22px!important;border-radius:22px!important}
.case-study-lightbox-topline{text-align:left;margin:0 0 10px;padding-right:48px;color:#774CF7;font-size:12px;font-weight:800}
.case-study-lightbox-stage{position:relative;display:flex;align-items:center;justify-content:center;width:100%;aspect-ratio:16/10;border-radius:16px;overflow:hidden;background:#f7f5fc}
.case-study-lightbox-stage img{width:100%!important;height:100%!important;object-fit:contain!important;object-position:center!important}
.case-study-lightbox-after{position:absolute;right:14px;top:50%;transform:translateY(-50%);border:0;border-radius:999px;padding:9px 13px;background:#774CF7;color:#fff;font-size:12px;font-weight:800;cursor:pointer;animation:tm-after-pulse 1.45s ease-in-out infinite}
.case-study-lightbox-copy{text-align:center;padding:14px 8px 0!important}
.case-study-lightbox-close{transition:transform .18s ease,box-shadow .18s ease!important}.case-study-lightbox-close:hover,.case-study-lightbox-close:focus-visible{transform:scale(1.08)!important;box-shadow:0 0 0 5px rgba(119,76,247,.14)!important}
@keyframes tm-after-pulse{0%,100%{opacity:.62}50%{opacity:1;box-shadow:0 0 0 7px rgba(119,76,247,.10),0 8px 22px rgba(119,76,247,.34)}}
@media(max-width:1100px){.section-cadence{padding-top:26px!important;padding-bottom:145px!important}.case-study-card{flex-basis:calc((100% - 20px)/2)!important}#fordel{padding-top:74px!important}}
@media(max-width:760px){.section-cadence{padding-top:22px!important;padding-bottom:128px!important}.section-cadence .section-head-center{margin-bottom:18px!important}.case-study-carousel-wrap{padding:0 14px!important}.case-study-carousel{gap:14px!important}.case-study-card{flex-basis:calc(100% - 18px)!important;padding:12px 12px 14px!important}.case-study-nav{display:grid!important;bottom:-54px!important;width:34px!important;height:34px!important;font-size:14px!important}.case-study-prev{margin-left:-42px!important}.case-study-next{margin-left:8px!important}#fordel{padding-top:68px!important}.case-study-lightbox{padding:12px!important}.case-study-lightbox-panel{width:96vw!important;padding:16px 12px 14px!important}.case-study-lightbox-stage{aspect-ratio:16/10!important}.case-study-lightbox-after{right:50%;top:auto;bottom:10px;transform:translateX(50%);padding:8px 14px!important}}
@media(max-width:480px){.section-cadence{padding-top:18px!important;padding-bottom:120px!important}.case-study-card{flex-basis:calc(100% - 16px)!important}#fordel{padding-top:62px!important}}
/* Testimonials: never let mobile rules turn portraits into landscape. */
.tm-inline-testimonials .tm-video-poster,.tm-inline-testimonials .tm-testimonial-video,.tm-inline-testimonials .tm-testimonial-iframe{aspect-ratio:9/16!important}

/* === FINAL CAROUSEL VISIBILITY / SPACING PASS === */
.section-cadence{
  padding-top:34px !important;
  padding-bottom:118px !important;
}
.section-cadence .section-head-center{margin-bottom:20px !important;}
.case-study-carousel-wrap{
  width:min(1420px,96vw) !important;
  max-width:1420px !important;
  padding:0 18px !important;
  margin:0 auto !important;
}
.case-study-carousel{
  gap:18px !important;
  padding:0 0 6px !important;
  overflow-x:auto !important;
}
/* Exactly four cards in the desktop viewport. */
.case-study-card{
  flex:0 0 calc((100% - 54px)/4) !important;
}
.case-study-nav{
  width:38px !important;
  height:38px !important;
  bottom:-58px !important;
  font-size:16px !important;
}
.case-study-prev{left:50% !important;margin-left:-48px !important;}
.case-study-next{left:50% !important;margin-left:10px !important;}
/* Give the following Our Edge section real breathing room after the controls. */
#fordel{
  padding-top:96px !important;
  margin-top:0 !important;
}
@media (max-width:1200px){
  .section-cadence{padding-top:30px !important;padding-bottom:112px !important;}
  .case-study-carousel-wrap{width:min(1280px,96vw) !important;}
  .case-study-card{flex-basis:calc((100% - 36px)/3) !important;}
  #fordel{padding-top:88px !important;}
}
@media (max-width:900px){
  .section-cadence{padding-top:26px !important;padding-bottom:108px !important;}
  .case-study-card{flex-basis:calc((100% - 18px)/2) !important;}
  .case-study-nav{bottom:-52px !important;width:36px !important;height:36px !important;}
  #fordel{padding-top:82px !important;}
}
@media (max-width:760px){
  .section-cadence{padding-top:22px !important;padding-bottom:102px !important;}
  .section-cadence .section-head-center{margin-bottom:16px !important;}
  .case-study-carousel-wrap{width:100% !important;padding:0 14px !important;}
  .case-study-carousel{gap:14px !important;}
  .case-study-card{flex:0 0 calc(100% - 18px) !important;}
  .case-study-nav{display:grid !important;bottom:-48px !important;width:34px !important;height:34px !important;font-size:14px !important;}
  .case-study-prev{margin-left:-42px !important;}
  .case-study-next{margin-left:8px !important;}
  #fordel{padding-top:76px !important;}
}
@media (max-width:480px){
  .section-cadence{padding-top:18px !important;padding-bottom:98px !important;}
  .case-study-card{flex-basis:calc(100% - 14px) !important;}
  #fordel{padding-top:70px !important;}
}

/* ================================================================
   FINAL QA OVERRIDES — 4-VISIBLE CAROUSEL / SAFE LIGHTBOX
   ================================================================ */
.section-cadence{padding-top:0!important;padding-bottom:118px!important;margin:0!important;overflow:visible!important}
.section-cadence .section-head-center{margin-bottom:24px!important}
.case-study-carousel-wrap{position:relative;max-width:1280px!important;padding:0 28px!important;margin:0 auto!important}
.case-study-carousel{display:flex!important;flex-wrap:nowrap!important;gap:22px!important;overflow:hidden!important;width:100%!important;padding:0!important;scroll-behavior:smooth!important}
.case-study-card{flex:0 0 calc((100% - 66px)/4)!important;width:calc((100% - 66px)/4)!important;box-sizing:border-box!important}
.case-study-nav{bottom:-64px!important;width:40px!important;height:40px!important;font-size:17px!important}
.case-study-prev{left:50%!important;margin-left:-50px!important}
.case-study-next{left:50%!important;margin-left:10px!important}
#fordel{padding-top:92px!important;margin-top:0!important}
.case-study-shot{cursor:zoom-in!important}
.case-study-shot img{pointer-events:none!important}
.case-study-lightbox{padding:22px!important}
.case-study-lightbox-panel{width:min(1100px,94vw)!important;max-height:92vh!important}
.case-study-lightbox-stage{aspect-ratio:16/10!important}
.case-study-lightbox-stage img{object-fit:contain!important}
@media(max-width:1100px){
 .section-cadence{padding-bottom:108px!important}
 .case-study-carousel-wrap{padding:0 22px!important}
 .case-study-carousel{gap:18px!important}
 .case-study-card{flex-basis:calc((100% - 18px)/2)!important;width:calc((100% - 18px)/2)!important}
 #fordel{padding-top:82px!important}
}
@media(max-width:760px){
 .section-cadence{padding-bottom:108px!important}
 .section-cadence .section-head-center{margin-bottom:20px!important}
 .case-study-carousel-wrap{padding:0 14px!important}
 .case-study-carousel{gap:14px!important;overflow-x:auto!important;scroll-snap-type:x mandatory!important;-webkit-overflow-scrolling:touch!important}
 .case-study-card{flex:0 0 calc(100% - 18px)!important;width:calc(100% - 18px)!important;scroll-snap-align:start!important}
 .case-study-nav{display:grid!important;bottom:-52px!important;width:34px!important;height:34px!important;font-size:14px!important}
 .case-study-prev{margin-left:-42px!important}.case-study-next{margin-left:8px!important}
 #fordel{padding-top:76px!important}
 .case-study-lightbox{padding:10px!important}
 .case-study-lightbox-panel{width:96vw!important;padding:14px 11px 14px!important}
 .case-study-lightbox-stage{aspect-ratio:16/10!important}
}
@media(max-width:480px){
 .section-cadence{padding-bottom:102px!important}
 #fordel{padding-top:68px!important}
 .case-study-card{flex-basis:calc(100% - 14px)!important;width:calc(100% - 14px)!important}
}

/* ================================================================
   V3 MOBILE REPAIR — clean responsive carousel + image containment
   ================================================================ */

/* Remove legacy negative/overlapping spacing from the base site. */
.section-cadence{
  margin-top:0 !important;
  padding-top:28px !important;
  padding-bottom:112px !important;
  background:transparent !important;
  overflow:visible !important;
}
.section-cadence .section-head-center{margin-bottom:22px !important;}
#fordel{
  margin-top:0 !important;
  padding-top:96px !important;
}

/* Four cards visible on desktop, with the sixth card still in the track. */
.case-study-carousel-wrap{
  width:min(1420px,96vw) !important;
  max-width:1420px !important;
  padding:0 16px !important;
  margin:0 auto !important;
}
.case-study-carousel{
  display:flex !important;
  flex-wrap:nowrap !important;
  gap:20px !important;
  width:100% !important;
  overflow:hidden !important;
  padding:0 !important;
  scroll-behavior:smooth !important;
}
.case-study-card{
  flex:0 0 calc((100% - 60px)/4) !important;
  width:calc((100% - 60px)/4) !important;
  box-sizing:border-box !important;
}
.case-study-shot{
  height:auto !important;
  aspect-ratio:16/10 !important;
  overflow:hidden !important;
  cursor:zoom-in !important;
}
.case-study-shot img{
  width:100% !important;
  height:100% !important;
  object-fit:contain !important;
  object-position:center !important;
  background:#f7f5fc !important;
  pointer-events:none !important;
}
.case-study-nav{
  display:grid !important;
  width:40px !important;
  height:40px !important;
  bottom:-60px !important;
  font-size:16px !important;
}
.case-study-prev{left:50% !important;margin-left:-50px !important;}
.case-study-next{left:50% !important;margin-left:10px !important;}

/* Testimonial navigation sits directly below the portrait row. */
.tm-testimonial-nav{
  display:flex;
  justify-content:center;
  align-items:center;
  gap:10px;
  margin:-28px 0 34px;
}
.tm-testimonial-nav-btn{
  width:36px;
  height:36px;
  display:grid;
  place-items:center;
  padding:0;
  border:0;
  border-radius:50%;
  background:#fff;
  color:#7d8193;
  font-size:15px;
  line-height:1;
  cursor:pointer;
  box-shadow:0 8px 24px rgba(23,16,68,.10);
}
.tm-testimonial-nav-btn.tm-testimonial-next{background:#774CF7;color:#fff;}
.tm-testimonial-nav-btn[disabled]{opacity:.4;cursor:not-allowed;}

/* Never crop portrait testimonial media. */
.tm-inline-testimonials .tm-video-poster,
.tm-inline-testimonials .tm-testimonial-video,
.tm-inline-testimonials .tm-testimonial-iframe{
  aspect-ratio:9/16 !important;
  object-fit:contain !important;
}

@media (max-width:1200px){
  .case-study-carousel-wrap{width:min(1280px,96vw) !important;}
  .case-study-card{
    flex-basis:calc((100% - 40px)/3) !important;
    width:calc((100% - 40px)/3) !important;
  }
  #fordel{padding-top:88px !important;}
}
@media (max-width:900px){
  .section-cadence{padding-top:24px !important;padding-bottom:106px !important;}
  .case-study-card{
    flex-basis:calc((100% - 20px)/2) !important;
    width:calc((100% - 20px)/2) !important;
  }
  .case-study-carousel{gap:20px !important;overflow-x:hidden !important;}
  .case-study-nav{width:36px !important;height:36px !important;bottom:-54px !important;}
  #fordel{padding-top:84px !important;}
}
@media (max-width:760px){
  .section-cadence{padding-top:20px !important;padding-bottom:104px !important;}
  .section-cadence .section-head-center{margin-bottom:16px !important;}
  .case-study-carousel-wrap{width:100% !important;padding:0 14px !important;}
  .case-study-carousel{
    gap:14px !important;
    overflow-x:auto !important;
    overflow-y:hidden !important;
    scroll-snap-type:x mandatory !important;
    -webkit-overflow-scrolling:touch !important;
  }
  .case-study-card{
    flex:0 0 calc(100% - 4px) !important;
    width:calc(100% - 4px) !important;
    scroll-snap-align:start !important;
    padding:12px !important;
  }
  .case-study-shot{aspect-ratio:16/10 !important;height:auto !important;}
  .case-study-nav{display:grid !important;bottom:-50px !important;width:34px !important;height:34px !important;font-size:14px !important;}
  .case-study-prev{margin-left:-42px !important;}
  .case-study-next{margin-left:8px !important;}
  #fordel{padding-top:82px !important;}

  /* Keep testimonials horizontal on mobile while each item stays 9:16. */
  .tm-inline-testimonials{
    display:flex !important;
    flex-wrap:nowrap !important;
    overflow-x:auto !important;
    gap:12px !important;
    margin:18px 0 10px !important;
    padding:0 2px 4px !important;
    scrollbar-width:none !important;
    -webkit-overflow-scrolling:touch !important;
  }
  .tm-inline-testimonials::-webkit-scrollbar{display:none !important;}
  .tm-inline-testimonials .tm-testimonial-card{
    flex:0 0 150px !important;
    width:150px !important;
  }
  .tm-inline-testimonials .tm-video-card{width:150px !important;max-width:150px !important;}
  .tm-inline-testimonials .tm-video-poster{width:150px !important;aspect-ratio:9/16 !important;height:auto !important;}
  .tm-testimonial-nav{margin:8px 0 28px !important;}
  #fordel{margin-top:0 !important;}

  .case-study-lightbox{padding:10px !important;}
  .case-study-lightbox-panel{width:96vw !important;max-height:94vh !important;padding:14px 11px !important;}
  .case-study-lightbox-stage{aspect-ratio:16/10 !important;}
}
@media (max-width:480px){
  .section-cadence{padding-top:18px !important;padding-bottom:100px !important;}
  .case-study-card{flex-basis:calc(100% - 4px) !important;width:calc(100% - 4px) !important;}
  .case-study-shot{aspect-ratio:16/10 !important;}
  .tm-inline-testimonials .tm-testimonial-card{flex-basis:136px !important;width:136px !important;}
  .tm-inline-testimonials .tm-video-card,.tm-inline-testimonials .tm-video-poster{width:136px !important;max-width:136px !important;}
  .tm-testimonial-nav{margin:8px 0 24px !important;}
  #fordel{padding-top:76px !important;}
}


/* ================================================================
   V4 FINAL RESPONSIVE QA — PROCESS CARDS + LOOP CAROUSELS
   ================================================================ */
/* How-it-works visuals: let the real image define the height on mobile.
   The old min-height on .mock-card created a tall white area and clipped
   the visible artwork inside the card. */
.process-visual{min-width:0 !important;width:100% !important;align-self:stretch !important;}
.process-visual .mock-card{
  min-height:0 !important;
  height:auto !important;
  width:100% !important;
  aspect-ratio:16/10 !important;
  background-image:none !important;
  overflow:hidden !important;
  display:flex !important;
  align-items:stretch !important;
  justify-content:stretch !important;
}
.process-visual .mock-card img{
  display:block !important;
  width:100% !important;
  height:100% !important;
  max-width:none !important;
  object-fit:contain !important;
  object-position:center !important;
  margin:0 !important;
}

/* Section rhythm: keep a deliberate gap between the carousel controls and
   Our Edge; never use negative spacing or overlap. */
.section-cadence{padding-bottom:82px !important;}
#fordel{padding-top:58px !important;}

/* The carousel itself is the viewport; cards are never hidden with nth-child.
   This makes adding card 7, 8, 9, 10... work automatically. */
.case-study-carousel{overflow:hidden !important;scroll-snap-type:none !important;}
.case-study-card{display:block !important;visibility:visible !important;}
.case-study-shot img{object-fit:contain !important;}

@media (min-width:1201px){
  .case-study-carousel-wrap{width:min(1420px,96vw) !important;}
  .case-study-carousel{gap:20px !important;}
  .case-study-card{flex:0 0 calc((100% - 60px)/4) !important;width:calc((100% - 60px)/4) !important;}
  .case-study-nav{bottom:-54px !important;width:38px !important;height:38px !important;}
  #fordel{padding-top:58px !important;}
}
@media (min-width:901px) and (max-width:1200px){
  .case-study-carousel-wrap{width:min(1240px,96vw) !important;}
  .case-study-carousel{gap:18px !important;}
  .case-study-card{flex:0 0 calc((100% - 36px)/3) !important;width:calc((100% - 36px)/3) !important;}
  .case-study-nav{bottom:-52px !important;width:36px !important;height:36px !important;}
  #fordel{padding-top:56px !important;}
}
@media (min-width:601px) and (max-width:900px){
  .section-cadence{padding-bottom:78px !important;}
  .case-study-carousel{gap:16px !important;}
  .case-study-card{flex:0 0 calc((100% - 16px)/2) !important;width:calc((100% - 16px)/2) !important;}
  .case-study-nav{bottom:-50px !important;width:36px !important;height:36px !important;}
  #fordel{padding-top:54px !important;}
}
@media (max-width:600px){
  .section-cadence{padding-top:14px !important;padding-bottom:82px !important;}
  .section-cadence .section-head-center{margin-bottom:16px !important;}
  .case-study-carousel-wrap{width:100% !important;padding:0 12px !important;}
  .case-study-carousel{
    display:flex !important;
    flex-wrap:nowrap !important;
    gap:12px !important;
    overflow-x:auto !important;
    overflow-y:hidden !important;
    scroll-snap-type:x mandatory !important;
    scrollbar-width:none !important;
    -webkit-overflow-scrolling:touch !important;
    overscroll-behavior-x:contain !important;
  }
  .case-study-carousel::-webkit-scrollbar{display:none !important;}
  .case-study-card{
    flex:0 0 100% !important;
    width:100% !important;
    scroll-snap-align:start !important;
    scroll-snap-stop:always !important;
    padding:12px !important;
  }
  .case-study-nav{display:grid !important;bottom:-46px !important;width:34px !important;height:34px !important;font-size:14px !important;}
  .case-study-prev{left:50% !important;margin-left:-42px !important;}
  .case-study-next{left:50% !important;margin-left:8px !important;}
  #fordel{padding-top:50px !important;}

  /* Full-width process visual with no artificial fixed height. */
  .process-row,.process-row-reverse{padding:20px !important;gap:22px !important;}
  .process-visual{height:auto !important;min-height:0 !important;}
  .process-visual .mock-card{aspect-ratio:16/10 !important;min-height:0 !important;height:auto !important;}
  .process-visual .mock-card img{object-fit:contain !important;}

  /* Four testimonials remain 9:16 and are navigable below on mobile. */
  .tm-inline-testimonials{display:flex !important;flex-wrap:nowrap !important;overflow-x:auto !important;}
  .tm-inline-testimonials .tm-video-poster{aspect-ratio:9/16 !important;height:auto !important;}
  .tm-inline-testimonials .tm-testimonial-video,.tm-inline-testimonials .tm-testimonial-iframe{aspect-ratio:9/16 !important;height:100% !important;object-fit:contain !important;}
  .tm-testimonial-nav{display:flex !important;margin:10px 0 22px !important;}
}
@media (max-width:380px){
  .process-row,.process-row-reverse{padding:16px !important;gap:18px !important;}
  .case-study-carousel-wrap{padding:0 10px !important;}
  .case-study-card{padding:10px !important;}
  #fordel{padding-top:46px !important;}
}


/* ================================================================
   V4.1 — FUTURE-PROOF TESTIMONIAL CAROUSEL
   Four visible on desktop; navigation appears only when overflow exists.
   ================================================================ */
.tm-inline-testimonials{
  display:flex !important;
  flex-wrap:nowrap !important;
  overflow:hidden !important;
  gap:18px !important;
  scroll-snap-type:none !important;
  -webkit-overflow-scrolling:touch;
}
.tm-inline-testimonials .tm-testimonial-card{
  flex:0 0 calc((100% - 54px)/4) !important;
  width:calc((100% - 54px)/4) !important;
}
.tm-testimonial-nav{display:none !important;}
.tm-testimonial-nav.is-active{display:flex !important;}
@media (min-width:601px) and (max-width:1100px){
  .tm-inline-testimonials{gap:14px !important;}
  .tm-inline-testimonials .tm-testimonial-card{
    flex-basis:calc((100% - 28px)/3) !important;
    width:calc((100% - 28px)/3) !important;
  }
}
@media (max-width:600px){
  .tm-inline-testimonials{
    overflow-x:auto !important;
    gap:12px !important;
    padding:0 2px 4px !important;
    scroll-snap-type:x mandatory !important;
  }
  .tm-inline-testimonials .tm-testimonial-card{
    flex:0 0 150px !important;
    width:150px !important;
    scroll-snap-align:start !important;
  }
  .tm-inline-testimonials .tm-video-card,
  .tm-inline-testimonials .tm-video-poster{width:100% !important;max-width:none !important;}
  .tm-inline-testimonials .tm-video-poster{aspect-ratio:9/16 !important;height:auto !important;}
}
@media (max-width:380px){
  .tm-inline-testimonials .tm-testimonial-card{flex-basis:136px !important;width:136px !important;}
}

/* Final spacing correction: the navigation must sit clearly below the
   cards, while Our Edge begins with a smaller, intentional gap. */
@media (min-width:1201px){
  .section-cadence{padding-bottom:62px !important;}
  #fordel{padding-top:36px !important;}
}
@media (min-width:901px) and (max-width:1200px){
  .section-cadence{padding-bottom:60px !important;}
  #fordel{padding-top:34px !important;}
}
@media (min-width:601px) and (max-width:900px){
  .section-cadence{padding-bottom:58px !important;}
  #fordel{padding-top:34px !important;}
}
@media (max-width:600px){
  .section-cadence{padding-bottom:64px !important;}
  #fordel{padding-top:32px !important;}
}
@media (max-width:380px){
  .section-cadence{padding-bottom:62px !important;}
  #fordel{padding-top:30px !important;}
}

/* ================================================================
   FINAL PROCESS CARD IMAGE FIX — NATURAL IMAGE HEIGHT
   Keep the complete artwork visible on every viewport. The source artwork
   determines the card height; no forced 16:10 box and no object-fit crop.
   ================================================================ */
.process-visual .mock-card{
  aspect-ratio:auto !important;
  height:auto !important;
  min-height:0 !important;
  overflow:hidden !important;
  display:block !important;
  background-image:none !important;
}
.process-visual .mock-card img{
  display:block !important;
  width:100% !important;
  height:auto !important;
  max-width:100% !important;
  max-height:none !important;
  object-fit:initial !important;
  object-position:center !important;
  margin:0 !important;
}
.process-visual{height:auto !important;min-height:0 !important;align-self:center !important;}

@media (max-width:600px){
  .process-row,.process-row-reverse{
    align-items:center !important;
    padding:18px !important;
    gap:20px !important;
  }
  .process-visual .mock-card{
    aspect-ratio:auto !important;
    height:auto !important;
  }
  .process-visual .mock-card img{
    width:100% !important;
    height:auto !important;
    object-fit:initial !important;
  }
}
@media (max-width:380px){
  .process-row,.process-row-reverse{padding:14px !important;gap:16px !important;}
}


/* ================================================================
   V6 — REAL CASE STUDY MEDIA + RESPONSIVE FINAL POLISH
   ================================================================ */
.process-visual .mock-card{
  aspect-ratio:auto !important;
  height:auto !important;
  min-height:0 !important;
  overflow:hidden !important;
}
.process-visual .mock-card img{
  width:100% !important;
  height:auto !important;
  max-height:none !important;
  object-fit:contain !important;
  object-position:center !important;
}
.case-study-carousel-wrap{
  background:transparent !important;
}
.case-study-carousel{
  background:transparent !important;
}
.case-study-shot{cursor:zoom-in !important;}
.case-study-shot img{pointer-events:none !important;}
.case-study-nav{
  display:grid !important;
  place-items:center !important;
  line-height:1 !important;
  padding:0 !important;
}
.case-study-nav > span{
  display:grid !important;
  place-items:center !important;
  width:100% !important;
  height:100% !important;
  line-height:1 !important;
  transform:none !important;
}
/* Keep the controls and the next section separated with a real positive gap. */
#fordel{margin-top:0 !important;}
.section-cadence{margin-bottom:0 !important;}
@media (min-width:1201px){
  .section-cadence{padding-bottom:112px !important;}
  #fordel{padding-top:54px !important;}
}
@media (min-width:901px) and (max-width:1200px){
  .section-cadence{padding-bottom:104px !important;}
  #fordel{padding-top:52px !important;}
}
@media (min-width:601px) and (max-width:900px){
  .section-cadence{padding-bottom:88px !important;}
  #fordel{padding-top:48px !important;}
}
@media (max-width:600px){
  .process-row,.process-row-reverse{gap:20px !important;}
  .process-visual .mock-card{width:100% !important;}
  .process-visual .mock-card img{width:100% !important;height:auto !important;}
  .section-cadence{padding-bottom:96px !important;}
  .case-study-carousel-wrap{padding:0 12px !important;}
  .case-study-carousel{gap:12px !important;}
  .case-study-card{flex:0 0 100% !important;width:100% !important;}
  .case-study-nav{width:36px !important;height:36px !important;bottom:-48px !important;}
  .case-study-prev{left:50% !important;margin-left:-46px !important;}
  .case-study-next{left:50% !important;margin-left:10px !important;}
  #fordel{padding-top:50px !important;}
  .tm-inline-testimonials .tm-video-poster{aspect-ratio:9/16 !important;}
}
@media (max-width:380px){
  .case-study-nav{width:34px !important;height:34px !important;bottom:-46px !important;}
  #fordel{padding-top:46px !important;}
}


/* ================================================================
   PROCESS CARD IMAGE FRAME — FINAL RESPONSIVE COVER
   Use real, wide dashboard screenshots. All four visual frames share
   the same ratio so cards stay equal while preserving maximum image area.
   ================================================================ */
.process-visual{
  align-self:center !important;
  width:100% !important;
  min-width:0 !important;
}
.process-visual .mock-card{
  width:100% !important;
  min-height:0 !important;
  height:auto !important;
  aspect-ratio:2.18 / 1 !important;
  overflow:hidden !important;
  background-image:none !important;
  background:#f7f6fb !important;
  border-radius:var(--radius-md) !important;
  display:block !important;
}
.process-visual .mock-card img{
  display:block !important;
  width:100% !important;
  height:100% !important;
  max-width:none !important;
  object-fit:cover !important;
  object-position:center center !important;
  margin:0 !important;
}
@media(max-width:760px){
  .process-visual{width:100% !important;}
  .process-visual .mock-card{
    aspect-ratio:2.18 / 1 !important;
    width:100% !important;
  }
}
@media(max-width:480px){
  .process-visual .mock-card{aspect-ratio:2.18 / 1 !important;}
}

/* ================================================================
   FINAL REAL-IMAGE PRESENTATION
   Equal cover frames + clickable How It Works visuals.
   ================================================================ */
.process-image-button{
  display:block !important;
  width:100% !important;
  padding:0 !important;
  margin:0 !important;
  border:0 !important;
  background:transparent !important;
  color:inherit !important;
  text-align:inherit !important;
  cursor:zoom-in !important;
  font:inherit !important;
}
.process-image-button .mock-card{
  width:100% !important;
  aspect-ratio:2.18 / 1 !important;
  height:auto !important;
  min-height:0 !important;
  overflow:hidden !important;
}
.process-image-button .mock-card img{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  object-position:center !important;
  display:block !important;
}
.process-image-button:focus-visible{
  outline:3px solid rgba(119,76,247,.35) !important;
  outline-offset:5px !important;
  border-radius:var(--radius-md) !important;
}
.case-study-shot{
  overflow:hidden !important;
}
.case-study-shot img{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  object-position:center !important;
  display:block !important;
}
@media(max-width:760px){
  .process-image-button .mock-card{aspect-ratio:2.18 / 1 !important;}
  .case-study-shot{height:150px !important;}
}
@media(max-width:480px){
  .process-image-button .mock-card{aspect-ratio:2.18 / 1 !important;}
  .case-study-shot{height:145px !important;}
}

/* ================================================================
   FINAL MEDIA FRAME NORMALIZATION — 2026-09-09
   Fixed card dimensions; images fill the frame with COVER.
   No extra image background or artificial whitespace.
   ================================================================ */

/* How It Works: one identical frame for every card on every viewport. */
.process-image-button,
.process-image-button .mock-card{
  width:100% !important;
  box-sizing:border-box !important;
}
.process-image-button .mock-card{
  height:clamp(190px, 20vw, 285px) !important;
  min-height:190px !important;
  max-height:285px !important;
  aspect-ratio:auto !important;
  overflow:hidden !important;
  padding:0 !important;
  background:transparent !important;
  background-image:none !important;
  border-radius:var(--radius-md) !important;
}
.process-image-button .mock-card img{
  display:block !important;
  width:100% !important;
  height:100% !important;
  max-width:none !important;
  max-height:none !important;
  object-fit:cover !important;
  object-position:center center !important;
  margin:0 !important;
}

/* Case Studies: fixed image height, full-width shot, cover treatment. */
.case-study-media{width:100% !important;}
.case-study-shot{
  width:100% !important;
  height:150px !important;
  min-height:150px !important;
  max-height:150px !important;
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
  box-sizing:border-box !important;
}
.case-study-shot img{
  width:100% !important;
  height:100% !important;
  max-width:none !important;
  max-height:none !important;
  object-fit:cover !important;
  object-position:center center !important;
}

/* Testimonials: never allow the portrait cards to collapse. */
.tm-inline-testimonials .tm-testimonial-card,
.tm-inline-testimonials .tm-video-card,
.tm-inline-testimonials .tm-video-poster{
  box-sizing:border-box !important;
}
.tm-inline-testimonials .tm-video-poster{
  width:100% !important;
  aspect-ratio:9 / 16 !important;
  height:auto !important;
  background:transparent !important;
}
.tm-inline-testimonials .tm-video-cover,
.tm-inline-testimonials .tm-testimonial-video,
.tm-inline-testimonials .tm-testimonial-iframe{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  object-position:center center !important;
  background:transparent !important;
}

/* Keep the navigation attached to the testimonial carousel, not floating away. */
.tm-testimonial-nav{
  margin:14px auto 0 !important;
  justify-content:center !important;
  align-items:center !important;
  gap:10px !important;
}

@media (min-width:1101px){
  .tm-inline-testimonials{grid-template-columns:repeat(4,minmax(0,1fr)) !important;}
  .tm-testimonial-nav:not(.is-active){display:none !important;}
  .case-study-shot{height:150px !important;min-height:150px !important;max-height:150px !important;}
}

@media (min-width:761px) and (max-width:1100px){
  .tm-inline-testimonials{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
  .tm-inline-testimonials .tm-testimonial-card{min-width:0 !important;}
  .tm-testimonial-nav:not(.is-active){display:none !important;}
  .case-study-shot{height:150px !important;min-height:150px !important;max-height:150px !important;}
  .process-image-button .mock-card{height:clamp(190px,23vw,245px) !important;}
}

@media (max-width:760px){
  /* Two complete portrait testimonials visible; remaining items scroll horizontally. */
  .tm-inline-testimonials{
    display:flex !important;
    flex-wrap:nowrap !important;
    overflow-x:auto !important;
    gap:12px !important;
    margin:18px 0 0 !important;
    padding:0 2px 3px !important;
    scrollbar-width:none !important;
    -webkit-overflow-scrolling:touch !important;
  }
  .tm-inline-testimonials::-webkit-scrollbar{display:none !important;}
  .tm-inline-testimonials .tm-testimonial-card{
    flex:0 0 calc((100% - 12px) / 2) !important;
    width:calc((100% - 12px) / 2) !important;
    max-width:none !important;
  }
  .tm-inline-testimonials .tm-video-card,
  .tm-inline-testimonials .tm-video-poster{
    width:100% !important;
    max-width:none !important;
    aspect-ratio:9 / 16 !important;
    height:auto !important;
  }
  .tm-inline-testimonials .tm-video-cover,
  .tm-inline-testimonials .tm-testimonial-video,
  .tm-inline-testimonials .tm-testimonial-iframe{
    width:100% !important;
    height:100% !important;
    object-fit:cover !important;
  }
  .tm-testimonial-nav.is-active{display:flex !important;}
  .tm-testimonial-nav:not(.is-active){display:none !important;}

  .process-image-button .mock-card{
    width:100% !important;
    height:clamp(165px,45vw,220px) !important;
    min-height:165px !important;
    max-height:220px !important;
  }
  .process-image-button .mock-card img{
    width:100% !important;
    height:100% !important;
    object-fit:cover !important;
    object-position:center !important;
  }

  .case-study-shot{
    width:100% !important;
    height:145px !important;
    min-height:145px !important;
    max-height:145px !important;
  }
  .case-study-shot img{
    width:100% !important;
    height:100% !important;
    object-fit:cover !important;
    object-position:center !important;
  }
}

@media (max-width:480px){
  .process-image-button .mock-card{
    height:180px !important;
    min-height:180px !important;
    max-height:180px !important;
  }
  .case-study-shot{
    height:140px !important;
    min-height:140px !important;
    max-height:140px !important;
  }
}
