/* Project-only variants. The shared shell, fonts, AOS and project cards remain canonical. */
body.im-project-detail-page .im-home{overflow:clip}
.im-case-hero{position:relative;background:radial-gradient(ellipse 50% 70% at 85% 30%,rgba(224,38,31,.35),transparent 60%),radial-gradient(ellipse 40% 50% at 10% 100%,rgba(47,91,255,.35),transparent 60%),var(--navy);color:#fff}.im-case-hero:before{content:"";position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px);background-size:56px 56px;mask-image:linear-gradient(90deg,transparent,#000 60%)}.im-case-hero__wrap{position:relative;z-index:1;display:flex;flex-direction:column;gap:28px;padding-top:30px!important;padding-bottom:150px!important}.im-case-breadcrumb{display:flex;flex-wrap:wrap;gap:8px;align-items:center;font-size:14px;color:#c9cdf0}.im-home .im-case-breadcrumb a{color:#c9cdf0}.im-case-breadcrumb [aria-current]{font-weight:600;color:#fff}.im-case-hero__columns{display:flex;flex-wrap:wrap;gap:56px;align-items:center}.im-case-hero__copy{flex:1 1 520px;display:flex;flex-direction:column;gap:20px;min-width:0}.im-case-tags{display:flex;flex-wrap:wrap;gap:8px}.im-case-tags span{display:inline-flex;align-items:center;padding:6px 14px;border-radius:999px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.2);font-size:13px;font-weight:700}.im-case-tags span:first-child{background:var(--yellow);color:var(--navy)}.im-case-hero h1,.im-case-hero h2{margin:0;font-size:clamp(38px,4.6vw,66px);line-height:1.08;font-weight:800;letter-spacing:-.035em;overflow-wrap:anywhere}.im-case-hero__description{font-size:clamp(17px,1.5vw,20px);line-height:1.65;color:#e3e6f7;max-width:600px}.im-case-hero__description p{margin:0}.im-case-hero__description strong{color:#fff}.im-case-hero__facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(170px,100%),1fr));gap:10px;margin-top:4px}.im-case-hero__facts>div{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;column-gap:10px;row-gap:2px;padding:14px 16px;border-radius:16px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14)}.im-case-hero__facts svg{grid-row:span 2;color:var(--yellow)}.im-case-hero__facts span{font-size:12px;color:#c9cdf0}.im-case-hero__facts b{font-size:15px;color:#fff;line-height:1.5}.im-case-hero__visual{flex:1 1 460px;position:relative;min-width:0}.im-case-picture{position:relative;border-radius:24px;overflow:hidden;border:4px solid rgba(255,255,255,.9);box-shadow:0 30px 60px rgba(0,0,0,.35)}.im-case-hero__image{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;display:block}.im-case-float{position:absolute;left:-26px;bottom:-24px;display:flex;flex-direction:column;padding:14px 18px;border-radius:18px;background:#fff;color:var(--navy);box-shadow:0 18px 40px rgba(0,0,0,.25);line-height:1.2}.im-case-float b{font:600 30px Oswald,sans-serif;color:var(--red)}.im-case-float span{font-size:13px;font-weight:600}
.im-case-metrics{position:relative;z-index:3;margin-top:-86px}.im-case-metrics__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(200px,100%),1fr));border-radius:24px;overflow:hidden;background:#fff;box-shadow:0 30px 60px rgba(13,17,80,.16)}.im-case-metrics__grid>div{display:flex;flex-direction:column;gap:6px;padding:28px;border-left:1px solid #e3e7f5}.im-case-metrics__grid>div:first-child{border-left:0}.im-case-metrics__icon{width:44px;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center;background:#fff1f0;color:var(--red);margin-bottom:6px}.im-case-metrics__grid>div:nth-child(2) .im-case-metrics__icon{background:#fff8e3;color:#c68a00}.im-case-metrics__grid>div:nth-child(3) .im-case-metrics__icon{background:var(--tint);color:var(--navy)}.im-case-metrics__grid>div:nth-child(4) .im-case-metrics__icon{background:var(--navy);color:var(--yellow)}.im-case-metrics__grid b{font:600 42px/1 Oswald,sans-serif;color:var(--navy)}.im-case-metrics__grid>div:first-child b{color:var(--red)}.im-case-metrics__grid>div>span:last-child{font-size:14px;color:#474d6e}
.im-case-body{padding:100px 0 120px}.im-case-columns{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:56px;align-items:start}.im-case-article{min-width:0;display:flex;flex-direction:column;gap:30px}.im-case-block{display:flex;flex-direction:column;gap:20px;min-width:0;scroll-margin-top:calc(var(--im-home-sticky-height,88px) + var(--im-home-admin-offset,0px) + 20px)}.im-case-heading{display:flex;align-items:center;gap:14px}.im-case-heading h2{margin:0;font-size:clamp(24px,2.4vw,32px);font-weight:800;color:var(--navy);letter-spacing:-.01em;line-height:1.3}.im-case-number{font:700 16px Oswald,sans-serif;padding:6px 10px;border-radius:10px;background:var(--red);color:#fff;flex-shrink:0}.im-case-richtext{font-size:17px;line-height:1.8;color:#2a2f4f;overflow-wrap:anywhere}.im-case-richtext>:first-child{margin-top:0}.im-case-richtext>:last-child{margin-bottom:0}.im-case-richtext p{margin:0 0 16px}.im-case-richtext strong,.im-case-richtext b{color:var(--navy)}.im-case-richtext ul,.im-case-richtext ol{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:10px}.im-case-richtext li{position:relative;padding-left:28px;font-size:16px;line-height:1.65}.im-case-richtext li:before{content:"✓";position:absolute;left:0;top:0;color:var(--red);font-weight:700}.im-case-richtext li ul,.im-case-richtext li ol{margin-top:10px}.im-case-richtext h3{font-size:20px;color:var(--navy);margin:22px 0 12px;line-height:1.4}.im-case-richtext img{max-width:100%;height:auto}.im-case-richtext figure{max-width:100%;margin:18px 0}.im-case-richtext table{width:100%;border-collapse:collapse}.im-case-richtext td,.im-case-richtext th{border:1px solid #e3e7f5;padding:10px}.im-case-items{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(200px,100%),1fr));gap:12px}.im-case-item{padding:20px;border-radius:18px;background:var(--tint);font-size:15px;line-height:1.6;color:#474d6e;min-width:0}.im-case-item p{margin:0}.im-case-item b,.im-case-item strong{color:var(--navy)}.im-case-items--challenges,.im-case-items--goals{grid-template-columns:repeat(auto-fit,minmax(min(260px,100%),1fr))}.im-case-items--challenges .im-case-item{display:flex;gap:14px;padding:18px 20px;border:1px solid #f3d3d1;background:#fff7f6}.im-case-items--challenges .im-case-item b{display:block;font-size:16px;margin-bottom:2px}.im-case-challenge-icon{width:40px;height:40px;border-radius:12px;display:flex;align-items:center;justify-content:center;background:var(--red);color:#fff;flex-shrink:0}.im-case-items--goals{list-style:none;padding:0;margin:0}.im-case-items--goals .im-case-item{display:flex;gap:14px;align-items:center;padding:18px 20px;background:var(--navy);color:#fff;font-weight:600}.im-case-items--goals b,.im-case-items--goals strong{color:var(--yellow)}.im-case-goal-number{flex-shrink:0;font:600 26px Oswald,sans-serif;color:var(--yellow)}.im-case-solutions{display:flex;flex-direction:column;gap:16px}.im-case-solution{display:flex;flex-direction:column;gap:16px;padding:26px;border-radius:22px;background:#fff;border:1px solid #e3e7f5;transition:box-shadow .3s ease,border-color .3s ease}.im-case-solution:hover{box-shadow:0 20px 44px rgba(13,17,80,.1);border-color:var(--red)}.im-case-solution__heading{display:flex;align-items:center;gap:14px}.im-case-solution__heading h3{margin:0;font-size:20px;line-height:1.35;font-weight:700;color:var(--navy)}.im-case-solution__heading>span{flex-shrink:0;width:48px;height:48px;border-radius:14px;display:flex;align-items:center;justify-content:center;background:var(--tint);color:var(--red);font:700 20px Oswald,sans-serif}.im-case-highlight{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;padding:14px 18px;border-radius:14px;background:#fff8e3;border:1px solid #f5de95}.im-case-highlight>span{font-size:13px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#9a6b00}.im-case-highlight>b{font-size:16px;color:var(--navy)}.im-case-results{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(220px,100%),1fr));gap:14px}.im-case-results>div{display:flex;flex-direction:column;gap:4px;padding:26px;border-radius:22px;background:var(--red);color:#fff}.im-case-results>div:nth-child(even){background:var(--navy)}.im-case-results span{font-size:13px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--yellow)}.im-case-results b{font:600 56px/1 Oswald,sans-serif}.im-case-results em{font-style:normal;font-size:15px;color:#ffe9e7}.im-case-conclusion{display:flex;flex-direction:column;gap:14px;padding:28px;border-radius:22px;background:var(--tint);border-left:5px solid var(--red)}.im-case-items--conclusion{display:flex;flex-wrap:wrap}.im-case-items--conclusion .im-case-item{padding:10px 14px;background:var(--navy);color:#fff;font-size:14px;font-weight:600}
.im-case-sidebar{display:flex;flex-direction:column;gap:22px;min-width:0}.im-case-side{display:flex;flex-direction:column;gap:14px;padding:24px;border-radius:22px;background:#fff;border:1px solid #e3e7f5;flex-shrink:0}.im-case-side__title{margin:0;padding-bottom:12px;border-bottom:3px solid var(--red);align-self:flex-start;font-size:15px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--navy);line-height:1.5}.im-case-summary{margin:0;display:flex;flex-direction:column}.im-case-summary>div{display:grid;grid-template-columns:20px minmax(0,1fr);column-gap:12px;row-gap:2px;padding:12px 0;border-top:1px solid #eef0f7}.im-case-summary>div:first-child{border-top:0}.im-case-summary svg{grid-row:span 2;width:20px;height:20px;color:var(--red);margin-top:2px}.im-case-summary dt{font-size:12px;color:#565c7d}.im-case-summary dd{margin:0;font-size:15px;font-weight:600;color:var(--navy);line-height:1.5;overflow-wrap:anywhere}.im-case-toc{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}.im-home .im-case-toc a{display:block;padding:10px 0;border-bottom:1px solid #eef0f7;color:#474d6e;font-size:14px;line-height:1.5;transition:color .25s ease,padding-left .25s ease}.im-home .im-case-toc a:hover,.im-home .im-case-toc a:focus{color:var(--red);padding-left:5px}.im-case-side--cta{background:radial-gradient(ellipse 70% 60% at 100% 0%,rgba(47,91,255,.45),transparent 60%),var(--navy);border-color:var(--navy);color:#fff}.im-case-side__eyebrow{font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--yellow)}.im-home .im-case-service-link{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:12px 0;border-bottom:1px solid rgba(255,255,255,.16);color:#fff;font-size:15px;font-weight:600;transition:color .25s ease}.im-home .im-case-service-link:hover{color:var(--yellow)}.im-case-service-link span{transition:transform .25s ease}.im-case-service-link:hover span{transform:translateX(4px)}.im-case-side--cta>b{font-size:19px;line-height:1.35;margin-top:6px}.im-case-side--cta .im-home-btn{align-self:flex-start}
.im-case-booking{padding:100px 0;background:radial-gradient(ellipse 60% 80% at 90% 0%,rgba(47,91,255,.35),transparent 60%),var(--navy);color:#fff}.im-case-booking__columns{display:flex;flex-wrap:wrap;gap:48px;align-items:center}.im-case-booking__copy{flex:1 1 380px;display:flex;flex-direction:column;gap:16px;min-width:0}.im-case-booking__copy .im-home-slash{color:var(--yellow)}.im-case-booking h2{margin:0;font-size:clamp(28px,3.2vw,44px);line-height:1.1;font-weight:700;letter-spacing:-.025em}.im-case-booking p{margin:0;font-size:17px;line-height:1.65;color:#c9cdf0}.im-home .im-case-booking__phone{font-size:22px;font-weight:800;color:var(--yellow)}.im-case-booking__form{flex:1.2 1 460px;background:#fff;color:#12163a;border-radius:28px;padding:clamp(24px,3.4vw,40px);box-shadow:0 30px 60px rgba(0,0,0,.25);min-width:0}.im-case-booking__form .wpcf7-form{display:flex;flex-direction:column;gap:16px}.im-case-form__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(160px,100%),1fr));gap:14px}.im-case-field{display:flex;flex-direction:column;gap:8px;font-size:14px;font-weight:600;color:var(--navy);min-width:0}.im-home .im-case-booking__form .im-case-input{width:100%;max-width:100%;min-height:52px;border:1px solid #d5daf0;border-radius:12px;padding:0 16px;background:#fff;color:#12163a;font:400 15px 'Be Vietnam Pro',sans-serif;transition:border-color .25s ease,box-shadow .25s ease}.im-home .im-case-booking__form textarea.im-case-input{height:96px;min-height:96px;padding:14px 16px;resize:vertical}.im-home .im-case-booking__form .im-case-input:focus{outline:0;border-color:var(--red);box-shadow:0 0 0 3px rgba(224,38,31,.15)}.im-case-submit{position:relative}.im-case-submit input[type=submit]{width:100%;min-height:56px;font-size:16px}.im-case-submit:after{content:"→";position:absolute;right:26px;top:50%;translate:0 -50%;color:#fff;pointer-events:none;transition:transform .3s ease}.im-case-submit:hover:after{transform:translateX(5px)}.im-case-submit .wpcf7-spinner{position:absolute;left:12px;top:16px;margin:0}.im-case-booking__form .wpcf7-not-valid-tip{font-size:12px;font-weight:400}.im-case-booking__form .wpcf7-response-output{margin:0!important;padding:14px!important;border-radius:12px;font-size:14px;line-height:1.6}
.im-case-related{padding:110px 0 120px;background:var(--tint)}.im-case-related__intro{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;flex-wrap:wrap;margin-bottom:38px}.im-case-related__intro>div{display:flex;flex-direction:column;gap:16px}.im-case-related h2{font-size:clamp(30px,3.4vw,46px);line-height:1.1;font-weight:700;letter-spacing:-.025em;margin:0;color:var(--navy)}.im-case-related__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.im-case-related .im-home-pcard{box-shadow:0 10px 30px rgba(13,17,80,.08);border:1px solid #e3e7f5;min-width:0}.im-case-related .im-home-pcard:hover{box-shadow:0 22px 44px rgba(13,17,80,.16)}.im-case-related .im-home-projects__s15{border-top:0;padding-top:0}.im-case-gallery{margin-top:30px}.im-case-gallery h2{font-size:28px;color:var(--navy)}.im-case-gallery>div{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(260px,100%),1fr));gap:20px}.im-case-gallery figure{margin:0;min-width:0}.im-case-gallery img{display:block;width:100%;height:auto;border-radius:16px}.im-case-gallery figcaption{margin-top:8px;font-size:14px;color:#565c7d}
@media(min-width:1001px){.im-case-sidebar{--im-case-sticky-top:calc(var(--im-home-sticky-height,88px) + var(--im-home-admin-offset,0px) + 16px);position:sticky;top:var(--im-case-sticky-top);max-height:calc(100vh - var(--im-case-sticky-top) - 16px);max-height:calc(100dvh - var(--im-case-sticky-top) - 16px);overflow-y:auto;overflow-x:hidden;scrollbar-width:thin;scrollbar-color:#c1c7df transparent;scrollbar-gutter:stable}}
@media(max-width:1100px){.im-case-hero__columns{gap:36px}.im-case-hero__copy,.im-case-hero__visual{flex-basis:100%}.im-case-hero__visual{max-width:760px;width:100%;margin:0 auto}.im-case-hero__facts{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:1000px){.im-case-columns{grid-template-columns:1fr;gap:40px}.im-case-sidebar{width:100%}.im-case-booking__copy,.im-case-booking__form{flex-basis:100%}.im-case-related__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.im-case-hero__wrap{padding-bottom:120px!important}.im-case-hero__facts{grid-template-columns:1fr}.im-case-float{display:none}.im-case-metrics{margin-top:-70px}.im-case-metrics__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.im-case-metrics__grid>div{padding:22px 18px;border-bottom:1px solid #e3e7f5}.im-case-metrics__grid b{font-size:34px}.im-case-body{padding:72px 0}.im-case-heading{gap:10px}.im-case-solution{padding:22px}.im-case-richtext{font-size:16px}.im-case-booking{padding:72px 0}.im-case-booking__columns{gap:28px}.im-case-related{padding:72px 0}.im-case-related__grid{grid-template-columns:1fr}.im-case-related__intro{align-items:flex-start}.im-case-conclusion{padding:24px}.im-case-results b{font-size:48px}}
@media(max-width:420px){.im-case-metrics__grid{grid-template-columns:1fr}.im-case-metrics__grid>div{border-left:0}.im-case-hero h1{font-size:36px}.im-case-tags span{font-size:12px}.im-case-side{padding:22px}}
@media(prefers-reduced-motion:reduce){.im-case-solution,.im-case-toc a,.im-case-service-link,.im-case-service-link span,.im-case-input,.im-case-submit:after{transition:none!important}}

.im-case-hero__facts>.im-case-hero__fact{align-content:start}
.im-case-hero__fact--services b{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;max-height:3em}

.im-case-native .im-case-native-heading{display:flex;align-items:center;gap:14px;margin:36px 0 18px;color:var(--navy);font-size:clamp(24px,2.4vw,32px);font-weight:800;line-height:1.3;scroll-margin-top:calc(var(--im-home-sticky-height,88px) + var(--im-home-admin-offset,0px) + 20px)}
.im-case-native .im-case-native-heading:first-child{margin-top:0}
.im-case-native h3{margin:26px 0 12px;color:var(--navy);font-size:clamp(19px,1.9vw,24px);line-height:1.4}
.im-case-native img,.im-case-native video{max-width:100%;height:auto}
.im-case-native figure{max-width:100%;margin-inline:0}
.im-case-native figcaption{color:#565c7d;font-size:14px}
.im-case-native .im-case-native-list{gap:8px}
.im-case-native ul>li{padding-inline-start:1.55em}
.im-case-native ul>li::before{inset-inline-start:0;inset-inline-end:auto}
.im-case-native ol{list-style:decimal outside;padding-inline-start:1.75em}
.im-case-native ol>li{padding-inline-start:.25em}
.im-case-native ol>li::before{content:none}
.im-case-native ol>li::marker{color:var(--red);font-weight:700}
.im-case-native li>p:last-child{margin-bottom:0}
.im-case-native .im-case-native-list--challenges,.im-case-native .im-case-native-list--goals{padding:18px 22px;border:1px solid #e3e7f5;border-radius:18px;background:var(--tint)}
.im-case-native ol.im-case-native-list--goals{padding-inline-start:42px}
.im-case-native .im-case-results{margin-bottom:22px}
.im-case-native .im-case-highlight{display:block;margin:14px 0 20px}
