
/* Separate 100vh Case Studies section. Curved 3D loop transposed from the user-supplied TiltedGridHero. */
.case-study-section{box-sizing:border-box;min-height:100vh;min-height:100svh;min-height:100dvh;display:flex;flex-direction:column;position:relative;isolation:isolate;overflow:hidden;background:radial-gradient(ellipse 45% 45% at 50% 62%,#edf7fc 0%,transparent 100%),#f8f7f3;padding:clamp(28px,4.2vh,54px) 0 clamp(22px,3.4vh,45px);color:#10263b;}
.case-study-kicker{flex:none;display:flex;align-items:center;justify-content:space-between;gap:16px;color:#2e668c;font-size:10px;letter-spacing:.15em;font-weight:800;}
.case-study-kicker>span:first-child{display:inline-flex;align-items:center;gap:10px}
.case-study-kicker b{font-weight:800}
.case-study-kicker i{height:1px;width:28px;background:#079bdf;display:block}
.case-study-kicker>span:last-child{font-size:9px;color:#8da2b0}
.case-study-heading{flex:none;text-align:center;padding-top:clamp(15px,2.8vh,38px);position:relative;z-index:2;pointer-events:none}
.case-study-eyebrow{font-size:10px;font-weight:800;letter-spacing:.15em;color:#3f728f;margin:0 0 15px;display:flex;align-items:center;justify-content:center;gap:8px}
.case-study-eyebrow span{width:7px;height:7px;background:#079bdf;border-radius:50%;box-shadow:0 0 0 4px rgba(7,155,223,.12)}
.case-study-heading h2{font-size:clamp(45px,5.3vw,77px);line-height:1.045;letter-spacing:-.07em;font-weight:800;color:#10263b;margin:0 0 12px}
.case-study-heading h2 em{font-style:normal;color:#079bdf}
.case-study-heading>p:last-child{margin:0 auto;max-width:570px;color:#617989;font-size:14px;line-height:1.65}
.case-study-stage{position:relative;flex:1 1 0;min-height:clamp(290px,42dvh,600px);width:100%;overflow:hidden;isolation:isolate;}
.case-study-band{position:absolute;inset:0;z-index:2;pointer-events:none;opacity:0;transition:opacity .35s;mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent);-webkit-mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent)}
.case-study-stage.is-ready .case-study-band{opacity:1}
.case-study-orbit-tile{position:absolute;transform-style:preserve-3d;will-change:transform;backface-visibility:hidden;}
.case-study-facet{position:absolute;top:0;overflow:hidden;backface-visibility:hidden;background:#e6edf0}
.case-study-facet img{position:absolute;top:0;max-width:none;display:block;object-fit:cover;object-position:center top;pointer-events:none;user-select:none;image-rendering:auto;filter:none;transform:none}
.case-study-nojs{position:absolute;z-index:1;inset:0;display:flex;align-items:center;justify-content:center;gap:16px;pointer-events:none;opacity:1;transition:opacity .3s}
.case-study-nojs img{width:30%;aspect-ratio:16/9;object-fit:cover;object-position:center top;border-radius:12px;box-shadow:0 16px 40px rgba(20,45,70,.12)}
.case-study-stage.is-ready .case-study-nojs{opacity:0}
.case-study-footer{display:flex;align-items:center;justify-content:space-between;flex:none;gap:22px;border-top:1px solid #d7e2e8;padding-top:19px}
.case-study-counter{display:flex;align-items:center;gap:11px;flex:none}
.case-study-counter b{font-size:42px;line-height:1;color:#079bdf;letter-spacing:-.06em}
.case-study-counter span{font-size:9px;line-height:1.6;font-weight:800;letter-spacing:.09em;color:#688294}
.case-study-footer>p{color:#718798;font-size:9px;letter-spacing:.07em;font-weight:800;display:flex;align-items:center;justify-content:center;gap:8px;flex-wrap:wrap;margin:0}
.case-study-footer>p span{color:#079bdf}
.case-study-actions{display:flex;align-items:center;gap:18px;flex:none}

.case-study-actions a{display:flex;align-items:center;gap:11px;padding:13px 17px;border-radius:100px;background:#079bdf;color:white;font-size:12px;font-weight:800;white-space:nowrap}
.case-study-actions a:hover{background:#047fb9}
.case-study-actions a svg.icon{width:16px;height:16px}
.case-study-sr{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important}
@media(max-width:850px){
 .case-study-section{padding:24px 0}
 .case-study-kicker>span:last-child{display:none}
 .case-study-footer{flex-wrap:wrap;gap:13px}
 .case-study-footer>p{order:3;width:100%;justify-content:flex-start}
 .case-study-heading h2{font-size:clamp(39px,6.5vw,59px)}
 .case-study-stage{min-height:330px}
}
@media(max-width:600px){
 .case-study-section{min-height:100svh;min-height:100dvh;padding:20px 0}
 .case-study-kicker{font-size:8px}
 .case-study-kicker i{width:18px}
 .case-study-heading{padding-top:25px}
 .case-study-eyebrow{font-size:8px;letter-spacing:.1em;margin-bottom:12px}
 .case-study-heading h2{font-size:clamp(35px,9vw,52px);margin-bottom:10px}
 .case-study-heading>p:last-child{font-size:12px;max-width:340px}
 .case-study-stage{min-height:clamp(240px,37dvh,380px)}
 .case-study-footer{gap:12px;padding-top:13px}
 .case-study-counter b{font-size:36px}
 .case-study-counter span{font-size:8px}
 .case-study-footer>p{font-size:8px;gap:6px;letter-spacing:.015em}
 .case-study-actions{gap:12px}
 .case-study-actions a{font-size:11px;padding:11px 13px}
 .case-study-nojs img{width:56%}
 .case-study-nojs img:first-child,.case-study-nojs img:last-child{opacity:.65}
}
@media(max-height:650px) and (min-width:851px){
 .case-study-section{padding:19px 0}
 .case-study-heading{padding-top:12px}
 .case-study-heading h2{font-size:clamp(36px,4.2vw,59px)}
 .case-study-stage{min-height:240px}
 .case-study-footer{padding-top:9px}
}
@media(prefers-reduced-motion:reduce){.case-study-band,.case-study-nojs{transition:none}}

/* Full-bleed 3D image band (not limited by .wrap) and edge-seam overscan. */
.case-study-stage{
  width:100vw;
  max-width:none;
  margin-left:calc(50% - 50vw);
  left:auto;
  overflow:hidden;
  box-sizing:border-box;
}
.case-study-band{
  inset:-2px -8px;
  mask-image:linear-gradient(90deg,transparent 0%,#000 14%,#000 86%,transparent 100%);
  -webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 14%,#000 86%,transparent 100%);
}
