/* Flagship child-Page presentation. Every rule is scoped; no homepage overrides. */
.ims-case{--case-gap:clamp(28px,4.5vw,72px);--case-space:clamp(64px,7.5vw,116px);background:#03141e;color:var(--white)}
.ims-case .container{max-width:1456px;margin-inline:auto;padding-inline:var(--gutter)}
.ims-case :is(h1,h2,h3){text-wrap:balance}
.ims-case h1{font-size:clamp(36px,3.8vw,64px);line-height:1.09;letter-spacing:-.045em;font-weight:750}
.ims-case h2{font-size:clamp(30px,3.5vw,54px);line-height:1.13;max-width:25ch}
.ims-case h3{font-size:clamp(18px,1.6vw,24px);line-height:1.35;letter-spacing:-.025em}
.ims-case p{font-size:clamp(16px,1.25vw,19px);line-height:1.75;color:var(--soft);text-wrap:pretty}
.ims-case p+p,.ims-case h3+p{margin-top:20px}
.ims-case .eyebrow{font-size:11px;letter-spacing:.17em;color:var(--aqua);line-height:1.5;margin:0 0 22px}
.ims-case img{width:100%;height:auto;object-fit:contain}
.ims-case :is(.ims-case__hero-grid,.ims-case__split,.ims-case__matrices,.ims-case__metrics,.ims-case__screens)>*{min-width:0}
.ims-case section[id]{scroll-margin-top:110px}
.ims-case__section{padding-block:var(--case-space);border-top:1px solid #8ddde41f}
.ims-case__heading{margin-bottom:clamp(32px,4vw,60px)}
.ims-case__hero{padding:145px 0 70px;position:relative;isolation:isolate;background:radial-gradient(ellipse at 85% 30%,#12404c8f,transparent 56%),#041822}
.ims-case__hero:before{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;background-image:radial-gradient(#80e4de35 .7px,transparent .8px),linear-gradient(#70d0d608 1px,transparent 1px),linear-gradient(90deg,#70d0d608 1px,transparent 1px);background-size:18px 18px,108px 108px,108px 108px;mask-image:linear-gradient(90deg,transparent 15%,#000 100%)}
.ims-case__hero-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--case-gap);align-items:center}
.ims-case .ims-case__project{font-size:14px;font-weight:600;color:var(--aqua);margin-bottom:24px}
.ims-case .ims-case__services{font-size:13px;line-height:1.9;color:#c0d9dd;margin-top:28px;max-width:76ch}
.ims-case__actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:30px}
.ims-case__actions .button{min-height:52px;border-radius:4px;max-width:100%;font-size:11px}
.ims-case__hero-visual{position:relative;padding:30px 0}
.ims-case .ims-case__caption{font-size:9px;color:var(--aqua);letter-spacing:.15em;text-transform:uppercase;border-top:1px solid #64d8da66;padding-top:17px;margin-bottom:24px}
.ims-case .ims-case__visual-note{font-size:10px;letter-spacing:.12em;text-align:right;color:#a5c7cd;margin-top:26px}
.ims-case__intro{display:grid;grid-template-columns:1fr 1fr;gap:18px var(--case-gap);margin-top:64px;padding-top:40px;border-top:1px solid var(--line)}
.ims-case__intro p:first-child{grid-row:1 / 3}
.ims-case__intro p+p{margin:0}
.ims-case__intro p:nth-child(2){font-weight:600;color:var(--white)}
/* Same approved straight-on teal desktop / overlapping phone component. */
.ims-case .ims-service__device{display:block;position:relative;width:100%;min-width:0;padding:0 9% 5% 0;isolation:isolate}
.ims-case .ims-service__device:after{content:'';position:absolute;inset:auto 2% -8% 3%;height:18%;z-index:-1;background:radial-gradient(ellipse,#42d6d52b,transparent 70%)}
.ims-case .ims-service__device-desktop{display:block;border:1px solid #81d9df99;border-radius:9px;overflow:hidden;box-shadow:0 4px 0 #0b2834,0 25px 45px #0006;background:#03141e}
.ims-case .ims-service__device-phone{display:block;position:absolute;right:0;bottom:0;width:23%;border:4px solid #0b1720;outline:1px solid #98dce4;border-radius:17px;overflow:hidden;box-shadow:-8px 15px 28px #0009}
.ims-case__split{display:grid;grid-template-columns:1fr 1fr;gap:var(--case-gap);align-items:start}
.ims-case__split--visual{grid-template-columns:1.15fr 1fr;align-items:center}
.ims-case__closing{max-width:86ch;border-left:2px solid var(--aqua);padding-left:24px;margin-top:40px!important}
.ims-case__questions{padding:0;margin:0;list-style:none;counter-reset:question}
.ims-case__questions li{position:relative;padding:17px 0 17px 42px;border-bottom:1px solid var(--line);font-size:16px;line-height:1.6;counter-increment:question}
.ims-case__questions li:first-child{padding-top:0}
.ims-case__questions li:before{content:counter(question,decimal-leading-zero);position:absolute;left:0;color:var(--aqua);font-size:11px;padding-top:4px}
.ims-case__platform{background:#061f2a}
.ims-case__stack{display:flex;flex-wrap:wrap;gap:14px 22px;border-top:1px solid var(--line);margin-top:24px;padding-top:18px;color:var(--aqua);font-size:10px;letter-spacing:.04em}
.ims-case__screen{margin:0;min-width:0}
.ims-case__screen>a{display:block;border:1px solid #76cdd28c;border-radius:6px;overflow:hidden;box-shadow:0 18px 38px #0005;background:#010c12}
.ims-case__screen figcaption{font-size:10px;line-height:1.7;color:#a8c5cd;margin-top:18px;letter-spacing:.05em}
.ims-case__matrices{display:grid;grid-template-columns:1.2fr 1fr;gap:var(--case-gap);margin-top:45px}
.ims-case__matrices h3{padding-bottom:24px;border-bottom:1px solid var(--aqua);display:flex;gap:24px;align-items:center}
.ims-case__matrices h3 span{color:var(--aqua);font-size:11px;font-weight:400}
.ims-case__matrix{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;column-gap:28px}
.ims-case__matrix li{font-size:14px;line-height:1.65;border-bottom:1px solid var(--line);padding:16px 0;color:#e1eef1}
.ims-case__matrices>div:last-child .ims-case__matrix{grid-template-columns:1fr}
.ims-case__seo{background:linear-gradient(115deg,#082632,#041923)}
.ims-case__list{padding-left:18px;margin:26px 0 0;color:var(--soft);font-size:16px;line-height:1.7}
.ims-case__list li{padding:5px 0 5px 5px;break-inside:avoid}
.ims-case__list li::marker{color:var(--aqua);font-size:10px}
.ims-case__list--columns{columns:2;column-gap:32px}
.ims-case__split>.ims-case__list{margin-top:0}
.ims-case__callout{border-left:2px solid var(--aqua);padding:30px 32px;background:#73cdd70a;margin-top:30px}
.ims-case__split>.ims-case__callout{margin-top:0}
.ims-case__index{display:block;font-size:12px;color:var(--aqua);letter-spacing:.14em;margin-bottom:22px}
.ims-case__checkpoints{padding-bottom:70px;background:#092a36}
.ims-case__checkpoints h2{max-width:24ch}
.ims-case__metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-block:1px solid #79d3d757}
.ims-case__metric{padding:30px 28px 30px 0}
.ims-case__metric+.ims-case__metric{padding-left:28px;border-left:1px solid #79d3d738}
.ims-case__metric strong{display:block;font-size:clamp(64px,7vw,112px);line-height:1.05;letter-spacing:-.07em;font-weight:650;color:var(--aqua);font-variant-numeric:tabular-nums;margin-bottom:25px}
.ims-case__metric h3{font-size:17px;min-height:69px}
.ims-case__metric p{font-size:12px;margin-top:15px;line-height:1.6;color:#b8d1d9}
.ims-case .ims-case__qualifier{margin-top:28px;font-size:13px;max-width:94ch}
.ims-case__responsive{padding-top:70px;background:linear-gradient(#092a36,#03141e);border-top:0}
.ims-case__screens--responsive{display:grid;grid-template-columns:1.6fr .9fr .48fr;align-items:end;gap:28px;margin-top:55px}
.ims-case__screen--tablet>a{border:4px solid #0b1d27;outline:1px solid #76cdd28c;border-radius:12px}
.ims-case__screen--mobile>a{border:4px solid #0b1d27;outline:1px solid #76cdd28c;border-radius:16px}
.ims-case__foundation .container{display:grid;grid-template-columns:.9fr 1.1fr;gap:var(--case-gap)}
.ims-case__timeline{padding:0;margin:0;list-style:none;position:relative}
.ims-case__timeline:before{content:'';position:absolute;left:15px;top:10px;bottom:30px;width:1px;background:linear-gradient(var(--aqua),#6befd81a)}
.ims-case__timeline li{display:grid;grid-template-columns:48px 1fr;gap:25px;position:relative;padding:0 0 38px}
.ims-case__timeline li>span{color:var(--aqua);font-size:11px;background:var(--night);align-self:start;padding-block:6px;z-index:1}
.ims-case__timeline h3{font-size:21px}
.ims-case__timeline p{font-size:16px;margin-top:12px}
.ims-case__discovery{background:#061e29}
.ims-case__systems{list-style:none;padding:0;margin:25px 0 0;display:grid;grid-template-columns:1fr 1fr;gap:0 28px}
.ims-case__systems li{padding:16px 0;border-bottom:1px solid var(--line);font-size:16px;color:var(--white)}
.ims-case__progression{padding:0;margin:48px 0 0;list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:35px;border-top:1px solid #6befd866}
.ims-case__progression li{padding-top:25px}
.ims-case__progression span{font-size:11px;color:var(--aqua);display:block;margin-bottom:18px}
.ims-case__progression h3{font-size:23px}
.ims-case__discretion{background:#0a222c;border-block:1px solid #93dde34a}
.ims-case__discretion .container{display:grid;grid-template-columns:1fr 1fr;gap:var(--case-gap)}
.ims-case__discretion-copy p:nth-child(3){color:var(--white);font-weight:600;border-left:2px solid var(--coral);padding-left:20px}





.ims-case__related{display:flex;justify-content:center;flex-wrap:wrap;gap:18px 32px;padding-top:35px;border-top:1px solid var(--line);margin-top:45px}
.ims-case__related a{font-size:12px;color:var(--aqua);text-decoration:underline;text-underline-offset:6px;min-height:34px}
.ims-case__related a:hover{color:var(--white)}
@media(min-width:1600px){.ims-case__hero{padding-top:160px}}
@media(max-width:1100px){.ims-case__hero{padding-top:115px}.ims-case__hero-grid{gap:30px}.ims-case h1{font-size:clamp(36px,4.3vw,50px)}.ims-case__actions .button{padding-inline:16px}.ims-case__metric{padding-right:20px}.ims-case__metric+.ims-case__metric{padding-left:20px}.ims-case__metric h3{font-size:15px;min-height:82px}.ims-case__matrix{grid-template-columns:1fr}.ims-case__list--columns{columns:1}}
@media(max-width:800px){.ims-case__hero{padding-top:104px}.ims-case__hero-grid{grid-template-columns:1fr}.ims-case h1{font-size:clamp(36px,6.5vw,52px);max-width:23ch}.ims-case__hero-visual{width:100%;max-width:650px;justify-self:center;padding-bottom:0}.ims-case__intro{margin-top:35px}.ims-case__split--visual,.ims-case__foundation .container,.ims-case__discretion .container{grid-template-columns:1fr}.ims-case__platform-visual{max-width:620px}.ims-case__metrics{grid-template-columns:1fr 1fr}.ims-case__metric:nth-child(3){padding-left:0;border-left:0;border-top:1px solid var(--line)}.ims-case__metric:nth-child(4){border-top:1px solid var(--line)}.ims-case__metric h3{min-height:48px;font-size:17px}.ims-case__screens--responsive{gap:18px;grid-template-columns:1.4fr 1fr .55fr}.ims-case__progression{gap:22px}.ims-case__progression h3{font-size:19px}}
@media(max-width:550px){.ims-case .container{padding-inline:24px}.ims-case__hero{padding-bottom:50px}.ims-case h1{font-size:36px}.ims-case__split,.ims-case__intro,.ims-case__matrices{grid-template-columns:1fr}.ims-case__intro p:first-child{grid-row:auto}.ims-case__hero-visual{padding-top:12px}.ims-case__actions{gap:12px}.ims-case__actions .button{font-size:10px;padding-inline:15px}.ims-case .ims-service__device-phone{border-width:2px;border-radius:10px}.ims-case__callout{padding:25px 22px}.ims-case__metrics{gap:0}.ims-case__metric{padding:25px 15px 25px 0}.ims-case__metric+.ims-case__metric{padding-left:15px}.ims-case__metric:nth-child(3){padding-left:0}.ims-case__metric strong{font-size:66px}.ims-case__metric h3{font-size:15px;min-height:83px}.ims-case__metric p{font-size:11px}.ims-case__screens--responsive{grid-template-columns:1.4fr 1fr;gap:26px}.ims-case__screen--desktop{grid-column:1/-1}.ims-case__screen--mobile{max-width:125px;justify-self:end}.ims-case__screen figcaption{font-size:9px}.ims-case__timeline li{gap:12px;grid-template-columns:35px 1fr}.ims-case__progression{grid-template-columns:1fr;gap:0}.ims-case__progression li{display:grid;grid-template-columns:35px 1fr;gap:15px;align-items:baseline;border-bottom:1px solid var(--line);padding-block:22px}.ims-case__progression span{margin:0}}
/* Traffic analytics stays distinct from technical project validation. */
.ims-case__activity{margin-top:40px;padding-top:30px;border-top:1px solid var(--line)}
.ims-case__activity>h3{font-size:18px}
.ims-case__activity dl{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px;margin:24px 0 0}
.ims-case__activity dl>div{display:flex;flex-direction:column;gap:12px;min-width:0}
.ims-case__activity dt{font-size:13px;line-height:1.6;color:var(--soft)}
.ims-case__activity dd{order:-1;margin:0;color:var(--white);font-size:36px;font-weight:650;line-height:1.1;letter-spacing:-.04em;font-variant-numeric:tabular-nums}
.ims-case__validation-count{display:flex;align-items:center;gap:28px;margin-bottom:40px;padding:24px 0;border-block:1px solid var(--line)}
.ims-case__validation-count>strong{font-size:clamp(56px,6vw,80px);font-weight:650;color:var(--aqua);line-height:1.1;letter-spacing:-.06em}
.ims-case__validation-count h3{font-size:20px;max-width:30ch}
.ims-case__validation-count p{font-size:12px;margin-top:10px}
@media(max-width:800px){.ims-case__activity dl{grid-template-columns:1fr 1fr;row-gap:26px}}
@media(max-width:550px){.ims-case__validation-count{align-items:flex-start;gap:20px}.ims-case__validation-count h3{font-size:16px}.ims-case__activity>h3{font-size:17px}}
/* Dated snapshots: traffic, search discovery and project QA are distinct. */
.ims-case .ims-case__snapshot-date{font-size:12px;line-height:1.65;color:var(--soft);margin-top:16px}
.ims-case .ims-case__baseline{max-width:90ch;font-size:15px;line-height:1.8;margin-top:28px}
.ims-case__qualifier strong{color:var(--white);font-weight:600}
.ims-case__search-snapshot{margin-top:48px;padding-top:32px;border-top:1px solid #79d3d757}
.ims-case__search-snapshot>div{display:flex;align-items:center;gap:30px}
.ims-case__search-count{font-size:clamp(52px,5vw,72px);line-height:1.1;letter-spacing:-.05em;color:var(--aqua);font-weight:650}
.ims-case__search-snapshot h3{font-size:20px}
.ims-case__search-snapshot .ims-case__qualifier{margin-top:10px;font-size:12px}
@media(max-width:550px){.ims-case__search-snapshot>div{align-items:flex-start;gap:22px}.ims-case__search-snapshot h3{font-size:17px}.ims-case__search-snapshot .ims-case__snapshot-date{font-size:11px}}
/* Spanish implementation: uncropped public captures in the approved device family. */
.ims-case__multilingual{background:#061f2a}
.ims-case__localization-details{grid-template-columns:1fr}
.ims-case__localization-details li:first-child{padding-top:0}
.ims-case__spanish-showcase{margin-top:48px}
.ims-case__spanish-devices{max-width:1100px;margin-inline:auto}
.ims-case__spanish-showcase figcaption{font-size:11px;line-height:1.7;color:var(--soft);margin-top:22px}
.ims-case__spanish-showcase>figure:first-child>figcaption{text-align:center}
.ims-case__spanish-detail{max-width:820px;margin:48px auto 0}
.ims-case__localization-proof{margin-top:48px}
.ims-case__localization-milestone{display:flex;align-items:flex-start;gap:26px;border-top:1px solid var(--line);padding-top:28px}
.ims-case__localization-milestone>strong{font-size:76px;line-height:1;color:var(--aqua);font-weight:650}
.ims-case__localization-milestone h3{font-size:17px;line-height:1.5}
.ims-case__localization-proof .ims-case__callout h3{font-size:22px}
@media(max-width:800px){.ims-case__multilingual .ims-case__split{grid-template-columns:1fr}}
@media(max-width:550px){.ims-case__spanish-devices .ims-service__device{padding:0}.ims-case__spanish-devices .ims-service__device-phone{position:relative;right:auto;bottom:auto;width:64%;max-width:260px;margin:28px auto 0}.ims-case__spanish-detail{margin-top:32px}.ims-case__localization-milestone{gap:20px}.ims-case__localization-milestone>strong{font-size:60px}}
