/* Case stories: original commercial detail, deliberately authored presentation. */
#main.case-story,#main.case-index{background:#f2f5fb;overflow:clip;color:#0d1b37}
#main.case-story .case-document{display:block;width:100%;max-width:none;margin:0;padding:0}
#main.case-story .case-document section[id]{scroll-margin-top:0}
#main.case-story :is(figure,ul,ol){margin:0}
#main.case-story :is(p,li){font-size:18px;line-height:1.75;letter-spacing:-.012em}
#main.case-story p+p{margin-top:23px}
#main.case-story :is(h1,h2,h3,h4){text-wrap:pretty}
#main.case-story a:focus-visible,#main.case-index a:focus-visible{outline:3px solid #2655f3;outline-offset:7px}
#main.case-story .case-opening{padding:158px var(--pad) 76px;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:clamp(40px,5vw,88px);align-items:stretch;background:#f2f5fb}
#main.case-story .case-introduction{min-width:0;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:20px 0 10px}
#main.case-story .case-eyebrow{font-size:14px;font-weight:700;color:#56647d;margin:0 0 22px;display:block;letter-spacing:.015em}
#main.case-story .case-client-lockup{display:flex;align-items:center;gap:18px;margin:0 0 32px;min-height:45px;max-width:100%}
#main.case-story .case-client-logo{display:block;width:76px;height:48px;object-fit:contain;object-position:left center}
#main.case-story .case-client-lockup>span{font-size:19px;line-height:1.2;letter-spacing:-.025em;font-weight:700}
#main.case-story .case-title{font-size:clamp(44px,4.25vw,70px);line-height:1.045;letter-spacing:-.058em;margin:0 0 29px;max-width:23ch;overflow-wrap:normal;font-weight:700}
#main.case-story .case-title-long{font-size:clamp(42px,3.8vw,62px);line-height:1.08}
#main.case-story .case-lead{font-size:18px;line-height:1.7;max-width:59ch;color:#4b5870;letter-spacing:-.012em}
#main.case-story .case-jump-nav{display:flex;flex-wrap:wrap;gap:12px 23px;padding-top:30px;margin-top:10px;align-items:center;font-size:13px;font-weight:700;color:#2655f3}
#main.case-story .case-jump-nav>a{display:inline-flex;align-items:center;gap:9px;padding:8px 0;border-bottom:1px solid #bcccf3;white-space:nowrap}
#main.case-story .case-jump-nav>a:after{content:'↓';font-size:16px;font-weight:400}
#main.case-story .case-jump-nav>a:hover{color:#0d1b37;border-color:#0d1b37}
#main.case-story .case-hero-media{position:relative;align-self:stretch;width:100%;min-height:670px;margin:0;overflow:hidden;background:#dce4f3;border-radius:3px;isolation:isolate}
#main.case-story .case-hero-media>.case-photo{display:block;position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:var(--case-object-fit,cover);object-position:var(--case-object-position,center);transform:scale(1.045) translateY(var(--case-photo-y,0px));will-change:transform}
#main.case-story .case-photo-caption,#main.case-index .case-photo-caption{position:absolute;left:20px;bottom:19px;z-index:3;font-size:11px;line-height:1.4;color:#fff;text-shadow:0 1px 9px #0009;max-width:calc(100% - 40px);letter-spacing:0;pointer-events:none}
#main.case-story .case-hero-media:after{content:'';position:absolute;bottom:0;inset-inline:0;height:100px;background:linear-gradient(transparent,#0713224a);z-index:1;pointer-events:none}
#main.case-story .case-browser-hero{background:#1237aa;min-height:670px}
#main.case-story .case-browser-hero:before{content:'';position:absolute;width:10px;height:10px;border-radius:50%;top:15%;left:14%;background:#fff9;box-shadow:20px 0 #fff9,40px 0 #fff9;z-index:3}
#main.case-story .case-browser-hero>.case-photo{inset:auto;width:125%;height:auto;max-height:none;left:10%;top:20%;border-radius:6px;box-shadow:0 25px 70px #07153677;object-fit:contain;transform:rotate(-4deg) translateY(var(--case-photo-y,0px));transform-origin:top left}
#main.case-story[data-case=fortem] .case-hero-media>.case-photo{object-position:var(--case-object-position,50% 35%)}
#main.case-story[data-case=wrap-by-djam] .case-hero-media>.case-photo{object-position:var(--case-object-position,52% 45%)}
#main.case-story[data-case=rs-overkappingen] .case-hero-media>.case-photo{object-position:var(--case-object-position,43% center)}
/* The opening figures are truthful outcomes, not decorative badges. */
#main.case-story .case-metric-band{padding:58px var(--pad) 62px;margin:0;background:#fff;border-top:1px solid #e1e7f3;border-bottom:1px solid #e1e7f3}
#main.case-story .case-metric-grid{display:flex;justify-content:flex-start;gap:8%;max-width:1400px;margin:auto;align-items:start}
#main.case-story .case-metric-item{flex:1 1 0;min-width:0;position:relative;padding:0 0 0 32px;border-left:1px solid #cad6ef}
#main.case-story .case-metric-item:first-child{padding-left:0;border-left:0}
#main.case-story .case-metric-value{font-size:clamp(62px,7.5vw,120px);font-weight:700;line-height:1;letter-spacing:-.07em;overflow-wrap:anywhere;color:#2655f3}
#main.case-story .case-metric-value.case-value-words{font-size:clamp(40px,4.7vw,72px);line-height:1.05;letter-spacing:-.055em;max-width:16ch;overflow-wrap:normal}
#main.case-story .case-metric-description{font-size:16px;line-height:1.5;letter-spacing:-.01em;margin-top:15px;max-width:32ch;color:#5b6880}
#main.case-story .case-chapters{padding:0;margin:0;width:100%;max-width:none}
#main.case-story .case-chapter{margin:0;position:relative;padding:105px var(--pad);isolation:isolate}
#main.case-story :is(.case-challenge,.case-about,.case-delivery,.case-conclusion){display:grid;grid-template-columns:minmax(0,.52fr) minmax(0,1fr);gap:50px 11%}
#main.case-story .case-chapter-heading{min-width:0}
#main.case-story .case-chapter h2{font-size:clamp(38px,4.15vw,66px);font-weight:700;line-height:1.06;letter-spacing:-.055em;margin:0;max-width:15ch}
#main.case-story .case-chapter-copy{min-width:0;max-width:850px}
#main.case-story .case-chapter-copy>p{max-width:70ch;color:#4c5870}
#main.case-story .case-about{padding-bottom:55px}
#main.case-story .case-about+.case-challenge{padding-top:55px}
#main.case-story .case-context-media{grid-column:1/-1;position:relative;margin:18px 0 0;overflow:hidden;height:clamp(420px,48vw,760px);background:#dfe6f2;border-radius:3px}
#main.case-story .case-context-media>img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:var(--case-object-fit,cover);object-position:var(--case-object-position,center);transform:scale(1.03) translateY(var(--case-photo-y,0px));max-width:none}
#main.case-story .case-context-media:after{content:'';position:absolute;inset:70% 0 0;background:linear-gradient(transparent,#07132255);pointer-events:none}
#main.case-story[data-case=wrap-by-djam] .case-context-media{height:clamp(440px,49vw,740px)}
#main.case-story[data-case=hobat] .case-context-media{width:75%;margin-left:auto;height:clamp(500px,52vw,750px)}
#main.case-story .case-delivery{background:#fff}
#main.case-story .case-delivery ul{max-width:none;list-style:none;padding:0!important;margin:35px 0 0}
#main.case-story .case-delivery-row{list-style:none!important;border-top:1px solid #ccd5e6;padding:28px 0 31px!important;margin:0!important;display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1fr);gap:32px;font-size:17px;line-height:1.75;color:#536079}
#main.case-story .case-delivery-row>strong{display:block;font-size:24px;font-weight:700;line-height:1.2;letter-spacing:-.045em;color:#0d1b37}
#main.case-story .case-delivery-row::marker{content:''}
/* The named source process owns a full-width, purpose-built moving composition. */
#main.case-story .case-process{background:#2655f3;color:#fff;padding-top:90px;padding-bottom:95px;overflow:hidden}
#main.case-story .case-process-title{margin:0 0 58px;font-size:clamp(42px,4.8vw,76px);line-height:1.04;letter-spacing:-.06em;max-width:22ch;position:relative;z-index:2}
#main.case-story .case-process-layout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:7%;align-items:center}
#main.case-story .case-composition{position:relative;min-width:0;width:100%;margin:0;align-self:center;isolation:isolate}
#main.case-story .case-composition>svg{display:block;width:100%;height:auto;aspect-ratio:800/360;overflow:visible;fill:none;stroke-linecap:round;stroke-linejoin:round}
#main.case-story .case-geometry{stroke:currentColor;stroke-width:1.25;fill:none;opacity:.52;vector-effect:non-scaling-stroke}
#main.case-story .case-flow-route{stroke:#fff;stroke-width:2;fill:none;opacity:.8;stroke-dasharray:1;stroke-dashoffset:0;vector-effect:non-scaling-stroke}
#main.case-story .case-flow-dot{fill:#fff;stroke:#2655f3;stroke-width:5;paint-order:stroke;filter:drop-shadow(0 0 12px #e5efff66)}
#main.case-story .case-flow-end{fill:none;stroke:#fff;stroke-width:1;opacity:0;transform-box:fill-box;transform-origin:center}
#main.case-story .case-composition.is-complete .case-flow-end{animation:case-arrival 1.65s ease-out 1 both}
#main.case-story .case-calendar-cell{fill:#a5c5ff12;stroke:currentColor;stroke-width:1;opacity:.6;vector-effect:non-scaling-stroke;transition:fill .7s,opacity .7s}
#main.case-story .case-composition.is-complete .case-calendar-cell{fill:#d7e6ff7a;opacity:1}
#main.case-story .case-radius{stroke:#c8dcff;stroke-width:.75;fill:none;opacity:.25;transform-box:fill-box;transform-origin:center}
#main.case-story .case-composition.is-active .case-radius{animation:case-radius 6s ease-in-out infinite}
#main.case-story .case-composition.is-active .case-radius:nth-child(3){animation-delay:-2s}
#main.case-story .case-result-ring{fill:none;stroke:currentColor;stroke-width:1;opacity:.3}
#main.case-story .case-composition-caption{font-size:11px;letter-spacing:.01em;line-height:1.4;margin-top:40px;color:#d7e5ff99;text-align:left}
#main.case-story .case-process-original{min-width:0;position:relative;padding:0}
#main.case-story .case-process-original p,#main.case-story .case-process-original li{color:#d9e5ff;font-size:16px;line-height:1.65;max-width:48ch}
#main.case-story .case-process-original h4{font-size:clamp(23px,2.2vw,33px);line-height:1.12;letter-spacing:-.04em;margin:0 0 13px;color:#fff}
#main.case-story .case-process-original ul{list-style:none;padding:0!important;margin:15px 0 0;max-width:100%}
#main.case-story .case-process-original li{padding:9px 0 9px 18px;position:relative;margin:0!important;border-top:1px solid #d4e4ff1c}
#main.case-story .case-process-original li:before{content:'·';position:absolute;left:0;font-size:22px;color:#bdd5ff}
#main.case-story .case-process-grid{display:grid;grid-template-columns:1fr;gap:0;min-width:0}
#main.case-story .case-process-grid>div:has(.case-process-step),#main.case-story .case-process-grid>.case-process-step{border-top:1px solid #bed6ff55;padding:24px 0 27px;position:relative;min-width:0;transition:border-color .5s}
#main.case-story .case-process-grid .case-process-step{position:relative;min-width:0}
#main.case-story .case-process-grid .case-process-step:before{content:'';position:absolute;top:-1px;left:0;width:100%;height:1px;background:#fff;transform:scaleX(0);transform-origin:left;transition:transform 1s cubic-bezier(.2,.65,.2,1);pointer-events:none}
#main.case-story .case-process-grid .case-process-step.is-active:before{transform:scaleX(1)}
#main.case-story .case-process-step>div:first-child:not(:has(*)){font-size:13px;line-height:1.4;color:#b8d3ff;margin-bottom:10px}
#main.case-story .case-process-step>div:has(>span)>span:first-child{display:block;font-size:25px;line-height:1.15;font-weight:700;letter-spacing:-.04em;margin-bottom:12px}
#main.case-story .case-process-step>div:has(>span)>span+span{font-size:16px;line-height:1.65;color:#d9e5ff}
#main.case-story[data-case=internal-acquisition-benchmark] .case-process-step{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:15px}
#main.case-story[data-case=internal-acquisition-benchmark] .case-process-step>div:first-child{font-size:19px;font-weight:700;letter-spacing:-.025em;margin:0;color:#fff}
#main.case-story[data-case=internal-acquisition-benchmark] .case-process-step>div:last-child{font-size:23px;font-weight:700;color:#d6e5ff;letter-spacing:-.03em}
#main.case-story[data-case=klus-hellevoets] .case-process-step>div:first-child,#main.case-story[data-case=rs-overkappingen] .case-process-step>div:first-child{font-size:26px;line-height:1.1;font-weight:700;color:#fff;letter-spacing:-.045em;margin:0 0 14px}
#main.case-story[data-case=klus-hellevoets] .case-process-step>div+div,#main.case-story[data-case=rs-overkappingen] .case-process-step>div+div{font-size:16px;line-height:1.65;color:#d9e5ff}
#main.case-story .case-source-arrow{display:none}
#main.case-story .case-native-conversion{padding-top:30px;border-top:1px solid #bed6ff55;margin-top:12px}
#main.case-story .case-native-conversion>div:first-child{font-size:13px;font-weight:700;color:#c0d6ff;margin-bottom:16px}
#main.case-story .case-native-conversion>div:nth-child(2){display:flex;gap:25px;align-items:center;font-size:clamp(23px,2.5vw,36px);font-weight:700;letter-spacing:-.04em;line-height:1.1}
#main.case-story .case-native-conversion>div:nth-child(2)>div:empty{flex:1;min-width:35px;height:1px;background:#bdd5ff77}
#main.case-story .case-native-conversion>div:last-child{font-size:14px;color:#bad4ff;font-weight:700;margin-top:18px}
/* Exact source impact, with a visible, completed route rather than fake dashboards. */
#main.case-story .case-impact{background:#0d1b37;color:#fff;padding-top:95px;padding-bottom:110px;overflow:hidden}
#main.case-story .case-impact-heading{display:flex;align-items:center;justify-content:space-between;gap:45px;margin-bottom:45px}
#main.case-story .case-impact-heading h2{color:#fff;font-size:clamp(48px,6vw,95px);max-width:12ch;position:relative;z-index:2}
#main.case-story .case-impact-heading>.case-composition{width:44%;max-width:570px;color:#7fa9ff;flex:none}
#main.case-story .case-impact .case-flow-dot{stroke:#0d1b37;fill:#a5c6ff}
#main.case-story .case-impact .case-flow-route{stroke:#9bbfff}
#main.case-story .case-impact .case-flow-end{stroke:#9bbfff}
#main.case-story .case-impact-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6%;margin:0;max-width:none;align-items:start}
#main.case-story .case-impact-item{min-width:0;border-top:1px solid #526581;padding:30px 0 0;position:relative}
#main.case-story .case-impact-item:before{content:'';position:absolute;top:-1px;left:0;width:100%;height:1px;background:#b0ccff;transform:scaleX(0);transform-origin:left}
#main.case-story .case-impact.is-arrived .case-impact-item:before{animation:case-rule 1.4s cubic-bezier(.2,.65,.2,1) calc(var(--item,0)*.14s) both}
#main.case-story .case-impact-value{font-size:clamp(50px,5.8vw,90px);font-weight:700;letter-spacing:-.07em;line-height:1;max-width:100%;margin-bottom:21px;color:#fff;overflow-wrap:anywhere}
#main.case-story .case-impact-value.case-value-words{font-size:clamp(28px,3vw,45px);line-height:1.07;letter-spacing:-.05em;max-width:17ch;overflow-wrap:normal}
#main.case-story .case-impact-description{font-size:17px;line-height:1.7;color:#b8c7e2;max-width:40ch;letter-spacing:-.008em}
#main.case-story .case-impact.is-arrived [data-case-emphasis]{animation:case-number-arrive 1s cubic-bezier(.18,.7,.2,1) calc(var(--item,0)*.14s) both}
#main.case-story .case-metric-band.is-arrived [data-case-emphasis]{animation:case-number-arrive 1s cubic-bezier(.18,.7,.2,1) .1s both}
#main.case-story .case-conclusion{background:#f2f5fb;padding-block:100px}
#main.case-story .case-conclusion .case-chapter-copy>p{font-size:20px;line-height:1.75;color:#33415b}
#main.case-story .case-contact{padding:95px var(--pad);background:#e7eefc;position:relative}
#main.case-story .case-contact>div{max-width:1100px;margin:0 auto}
#main.case-story .case-contact-title{font-size:clamp(43px,5.5vw,86px);line-height:1.035;letter-spacing:-.06em;margin:0 0 25px;max-width:15ch}
#main.case-story .case-contact-copy{max-width:63ch!important;font-size:19px;line-height:1.7;color:#4b5d7d}
#main.case-story .case-contact-actions{display:flex;flex-wrap:wrap;align-items:flex-start;gap:25px 35px;margin-top:34px}
#main.case-story .case-contact-link{display:inline-flex;align-items:center;gap:55px;background:#2655f3;color:#fff;padding:19px 23px;font-size:16px;font-weight:700;line-height:1;border-radius:3px;min-height:64px;transition:background .3s,transform .4s}
#main.case-story .case-contact-link>span{font-size:27px;font-weight:400}
#main.case-story .case-contact-link:hover{background:#173cb1;transform:translateY(-3px)}
#main.case-story .case-booking-reveal{padding:0;border:0;max-width:100%;flex:1;min-width:200px}
#main.case-story .case-booking-reveal>summary{display:inline-flex;align-items:center;gap:30px;min-height:64px;list-style:none;border-bottom:1px solid #6e8bc6;font-size:15px;font-weight:700;cursor:pointer;user-select:none;padding:10px 0}
#main.case-story .case-booking-reveal>summary::-webkit-details-marker{display:none}
#main.case-story .case-booking-reveal>summary:after{content:'+';font-size:24px;font-weight:400}
#main.case-story .case-booking-reveal[open]>summary:after{content:'−'}
#main.case-story .case-booking-reveal[open]{flex-basis:100%}
#main.case-story .case-booking-reveal>.inner-booking{margin-top:35px;max-width:100%;width:100%;color:#0d1b37}
#main.case-story .case-next{display:grid;grid-template-columns:1fr 42%;background:#2655f3;color:#fff;min-height:340px;overflow:hidden;position:relative;isolation:isolate}
#main.case-story .case-next-copy{padding:60px var(--pad);position:relative;display:flex;justify-content:center;align-items:flex-start;flex-direction:column;gap:15px;min-width:0}
#main.case-story .case-next-copy>span:first-child{font-size:14px;color:#c8daff}
#main.case-story .case-next-copy>strong{font-size:clamp(34px,4vw,62px);line-height:1.07;font-weight:700;letter-spacing:-.055em;max-width:14ch;padding-right:55px}
#main.case-story .case-next-arrow{position:absolute;right:35px;top:50%;translate:0 -50%;font-size:65px;font-weight:400;transition:translate .5s}
#main.case-story .case-next:hover .case-next-arrow{translate:8px calc(-50% - 8px)}
#main.case-story .case-next-media{position:relative;margin:0;overflow:hidden;min-width:0}
#main.case-story .case-next-media:after{content:'';position:absolute;inset:65% 0 0;background:linear-gradient(transparent,#0713227a);pointer-events:none;z-index:1}
#main.case-story .case-next-image{width:100%;height:100%;max-height:450px;object-fit:var(--case-object-fit,cover);object-position:var(--case-object-position,center);display:block;transition:transform .9s cubic-bezier(.2,.6,.2,1)}
#main.case-story .case-next:hover .case-next-image{transform:scale(1.03)}
#main.case-story .case-next>.case-composition{padding:35px 30px;color:#dce8ff;align-self:center}
/* No guessed project photographs: these source-led hero compositions are intentional. */
#main.case-story .case-graphic-hero,#main.case-index .case-graphic-hero{height:100%;width:100%;background:#123bb8;color:#fff;position:relative;display:flex;flex-direction:column;justify-content:space-between;padding:44px 38px;min-width:0;overflow:hidden;isolation:isolate}
#main.case-story .case-graphic-word,#main.case-index .case-graphic-word{font-size:clamp(43px,4.8vw,77px);line-height:1.02;letter-spacing:-.06em;font-weight:700;position:relative;z-index:2;max-width:12ch}
#main.case-story .case-graphic-hero>.case-composition,#main.case-index .case-graphic-hero>.case-composition{margin:45px -5% 35px;width:110%;color:#c1d7ff}
#main.case-story .case-graphic-hero .case-composition-caption,#main.case-index .case-graphic-hero .case-composition-caption{display:none}
#main.case-story .case-graphic-subject,#main.case-index .case-graphic-subject{font-size:21px;line-height:1.2;font-weight:700;letter-spacing:-.025em;max-width:19ch;color:#c4d9ff}
#main.case-story .case-graphic-values,#main.case-index .case-graphic-values{display:flex;gap:30px;justify-content:space-between;font-size:25px;letter-spacing:-.045em;font-weight:700;line-height:1.1;color:#dce8ff}
#main.case-story[data-case=netwerk-dakdekkers] .case-graphic-hero,#main.case-index [data-case=netwerk-dakdekkers] .case-graphic-hero{background:#e0e8f7;color:#123578}
#main.case-story[data-case=netwerk-dakdekkers] .case-graphic-hero>.case-composition,#main.case-index [data-case=netwerk-dakdekkers] .case-graphic-hero>.case-composition{color:#2655f3}
#main.case-story[data-case=netwerk-dakdekkers] .case-graphic-hero .case-flow-route,#main.case-index [data-case=netwerk-dakdekkers] .case-graphic-hero .case-flow-route{stroke:#2655f3}
#main.case-story[data-case=fortem] .case-graphic-hero,#main.case-index [data-case=fortem] .case-graphic-hero{background:#132d2a;color:#fff}
#main.case-story[data-case=fortem] .case-graphic-hero>.case-composition,#main.case-index [data-case=fortem] .case-graphic-hero>.case-composition{color:#a4c5ac}
#main.case-story[data-case=internal-acquisition-benchmark] .case-graphic-hero,#main.case-index [data-case=internal-acquisition-benchmark] .case-graphic-hero{background:#0d1b37}
/* Fourteen individually art-directed entries retain their entire original case copy. */
#main.case-index .case-index-section{padding:165px var(--pad) 105px;margin:0;display:block;background:#f2f5fb}
#main.case-index .case-index-section>div{max-width:none;width:100%;margin:0}
#main.case-index .case-index-introduction{display:grid;grid-template-columns:1fr .5fr;gap:28px 9%;align-items:end;margin-bottom:85px}
#main.case-index .case-index-title{font-size:clamp(60px,6.9vw,110px);line-height:1.01;letter-spacing:-.065em;max-width:15ch;margin:0;overflow-wrap:normal}
#main.case-index .case-index-introduction>p{font-size:19px;line-height:1.65;max-width:36ch;margin:0;color:#5a6680}
#main.case-index .case-index-count{font-size:15px;font-weight:700;color:#2655f3;padding-top:20px;border-top:1px solid #c9d4e8;align-self:start}
#main.case-index .case-index-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:75px 5%;margin:0;align-items:start;width:100%;max-width:none}
#main.case-index .case-index-card{display:block;min-width:0;padding:0;border:0;background:transparent;text-decoration:none;color:#0d1b37;overflow:visible;border-radius:0;box-shadow:none;transform:none;position:relative}
#main.case-index .case-index-visual{height:clamp(350px,31vw,500px);margin:0;overflow:hidden;position:relative;background:#dde5f5;border-radius:3px;isolation:isolate}
#main.case-index .case-index-photo{display:block;position:absolute;inset:0;width:100%;height:100%;object-fit:var(--case-object-fit,cover);object-position:var(--case-object-position,center);transition:transform 1.1s cubic-bezier(.2,.65,.2,1);border-radius:0;max-width:none}
#main.case-index [data-case=wrap-by-djam] .case-index-photo{object-position:var(--case-object-position,52% 82%)}
#main.case-index .case-index-card:hover .case-index-photo{transform:scale(1.055)}
#main.case-index .case-index-visual:after{content:'';position:absolute;inset:65% 0 0;background:linear-gradient(transparent,#0713227a);pointer-events:none;z-index:1}
#main.case-index .case-index-client{position:absolute;left:25px;bottom:23px;max-width:calc(100% - 100px);font-size:21px;line-height:1.1;letter-spacing:-.035em;color:#fff;font-weight:700;z-index:3}
#main.case-index .case-index-arrow{position:absolute;right:22px;bottom:18px;font-size:38px;color:#fff;line-height:1;z-index:3;transition:transform .5s}
#main.case-index .case-index-card:hover .case-index-arrow{transform:translate(4px,-4px)}
#main.case-index .case-index-copy{padding-top:26px;margin:0;width:100%;position:relative}
#main.case-index .case-index-eyebrow{display:block;font-size:12px;font-weight:700;color:#68758e;letter-spacing:.015em;margin:0 0 14px}
#main.case-index .case-index-copy h3{font-size:clamp(29px,2.8vw,44px);line-height:1.075;font-weight:700;letter-spacing:-.045em;margin:0 0 22px;max-width:25ch;color:#0d1b37}
#main.case-index .case-index-copy p{font-size:16px;line-height:1.75;max-width:63ch;color:#56637c;margin:0}
#main.case-index .case-index-outcome{display:flex;gap:10px;align-items:baseline;margin-top:23px;padding-top:20px;border-top:1px solid #c7d2e6;font-size:14px;line-height:1.4;color:#63718c}
#main.case-index .case-index-outcome>div:first-child{font-weight:700;color:#2655f3;font-size:19px;letter-spacing:-.03em}
#main.case-index .case-index-card:nth-child(4n+2){margin-top:100px}
#main.case-index .case-index-card:first-child{grid-column:1/-1;display:grid;grid-template-columns:1.25fr 1fr;gap:6%;align-items:center;margin-bottom:15px}
#main.case-index .case-index-card:first-child .case-index-visual{height:clamp(430px,43vw,650px)}
#main.case-index .case-index-card:first-child .case-index-copy{padding:0}
#main.case-index .case-index-card:first-child .case-index-copy h3{font-size:clamp(33px,3.8vw,61px);line-height:1.055;max-width:18ch}
#main.case-index .case-graphic-hero{padding:32px 29px}
#main.case-index .case-graphic-word{font-size:clamp(34px,3.7vw,56px)}
#main.case-index .case-graphic-hero .case-composition>svg{display:block;width:100%;aspect-ratio:800/360;fill:none;overflow:visible}
#main.case-index .case-graphic-hero .case-geometry{stroke:currentColor;stroke-width:1.3;opacity:.55;fill:none}
#main.case-index .case-graphic-hero .case-flow-route{stroke:#fff;stroke-width:2;fill:none}
#main.case-index .case-graphic-hero .case-flow-dot{fill:currentColor}
#main.case-index .case-graphic-hero .case-flow-end{opacity:0}
#main.case-index [data-case=internal-acquisition-benchmark] .case-graphic-word{font-size:clamp(37px,4vw,65px)}
#main.case-index [data-case=legal-intake-system] .case-index-photo{object-position:left top}
@keyframes case-arrival{0%{opacity:.8;transform:scale(.7)}100%{opacity:0;transform:scale(2.7)}}
@keyframes case-rule{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@keyframes case-number-arrive{0%{clip-path:inset(0 0 100% 0);translate:0 12px}100%{clip-path:inset(0);translate:0 0}}
@keyframes case-radius{0%,100%{opacity:.13;scale:.96}50%{opacity:.45;scale:1.02}}
@media(min-width:1700px){#main.case-story .case-opening{padding-top:175px;gap:7%}#main.case-story .case-title{font-size:76px}#main.case-story .case-title-long{font-size:67px}#main.case-story .case-hero-media{min-height:790px}}
@media(max-width:1100px){#main.case-story .case-opening{padding-top:145px;gap:5%;grid-template-columns:1fr 1fr}#main.case-story .case-title{font-size:46px}#main.case-story .case-title-long{font-size:43px}#main.case-story .case-lead{font-size:17px}#main.case-story .case-hero-media{min-height:640px}#main.case-story .case-client-logo{width:65px;height:42px}#main.case-story .case-client-lockup>span{font-size:16px}#main.case-story .case-client-lockup{gap:12px;margin-bottom:25px}#main.case-story .case-jump-nav{gap:8px 17px;font-size:12px}#main.case-story :is(.case-challenge,.case-about,.case-delivery,.case-conclusion){grid-template-columns:.5fr 1fr;gap:40px 7%}#main.case-story .case-chapter{padding-block:80px}#main.case-story .case-process-layout{grid-template-columns:1fr 1fr;gap:7%}#main.case-story .case-process-title{font-size:55px;margin-bottom:48px}#main.case-story .case-process-original h4{font-size:25px}#main.case-story .case-impact-grid{gap:5%}#main.case-story .case-impact-value.case-value-words{font-size:32px}#main.case-story .case-delivery-row{grid-template-columns:1fr;gap:13px;padding-block:25px!important}#main.case-story .case-delivery-row>strong{font-size:25px}#main.case-story .case-graphic-hero{padding:35px 25px}#main.case-story .case-graphic-word{font-size:50px}#main.case-story .case-graphic-values{font-size:20px;gap:20px}#main.case-index .case-index-section{padding-top:150px}#main.case-index .case-index-introduction{grid-template-columns:1fr .6fr;gap:25px 7%;margin-bottom:65px}#main.case-index .case-index-title{font-size:75px}#main.case-index .case-index-card:first-child{grid-template-columns:1fr 1fr;gap:5%}#main.case-index .case-index-card:first-child .case-index-copy h3{font-size:38px}#main.case-index .case-index-copy h3{font-size:32px}#main.case-index .case-index-visual{height:350px}#main.case-index .case-index-card:first-child .case-index-visual{height:510px}#main.case-index .case-index-client{font-size:18px;left:21px;bottom:20px}#main.case-index .case-index-grid{gap:65px 5%}}
@media(max-width:760px){#main.case-story .case-opening{display:flex;flex-direction:column;padding:126px var(--pad) 48px;gap:36px}#main.case-story .case-introduction{padding:0}#main.case-story .case-eyebrow{font-size:12px;margin-bottom:17px}#main.case-story .case-client-lockup{margin-bottom:25px;min-height:38px;gap:15px}#main.case-story .case-client-logo{width:65px;height:38px}#main.case-story .case-client-lockup>span{font-size:17px}#main.case-story .case-title,#main.case-story .case-title-long{font-size:clamp(36px,9.5vw,58px);line-height:1.07;letter-spacing:-.052em;max-width:24ch;margin-bottom:25px}#main.case-story .case-lead{font-size:17px;line-height:1.7;max-width:100%}#main.case-story .case-jump-nav{font-size:12px;padding-top:21px;margin-top:3px;gap:13px 22px}#main.case-story .case-hero-media{min-height:0;height:510px;width:100%;flex:none}#main.case-story .case-browser-hero{height:490px;min-height:0}#main.case-story .case-browser-hero>.case-photo{top:19%;left:9%;width:132%}#main.case-story .case-photo-caption{left:16px;bottom:15px;font-size:10px;max-width:calc(100% - 32px)}#main.case-story .case-metric-band{padding:39px var(--pad) 43px}#main.case-story .case-metric-grid{gap:25px;align-items:start}#main.case-story .case-metric-item{padding-left:20px}#main.case-story .case-metric-value{font-size:clamp(42px,12vw,74px);line-height:1.02}#main.case-story .case-metric-value.case-value-words{font-size:clamp(28px,7.5vw,46px);line-height:1.06;max-width:10ch;overflow-wrap:normal}#main.case-story .case-metric-description{font-size:12px;line-height:1.5;margin-top:11px;max-width:18ch}#main.case-story .case-chapter{padding:60px var(--pad)}#main.case-story :is(.case-challenge,.case-about,.case-delivery,.case-conclusion){display:block}#main.case-story .case-chapter h2{font-size:40px;line-height:1.06;max-width:19ch}#main.case-story .case-chapter-heading{margin-bottom:27px}#main.case-story .case-chapter-copy{max-width:none}#main.case-story :is(p,li){font-size:17px;line-height:1.75}#main.case-story p+p{margin-top:20px}#main.case-story .case-about{padding-bottom:30px}#main.case-story .case-about+.case-challenge{padding-top:30px}#main.case-story .case-context-media{width:100%;height:360px;margin:34px 0 0}#main.case-story[data-case=wrap-by-djam] .case-context-media{height:380px}#main.case-story[data-case=hobat] .case-context-media{width:100%;height:420px;margin:34px 0 0}#main.case-story .case-process{padding-top:62px;padding-bottom:60px}#main.case-story .case-process-title{font-size:43px;line-height:1.04;max-width:18ch;margin-bottom:33px}#main.case-story .case-process-layout{display:flex;flex-direction:column;gap:35px}#main.case-story .case-process-layout>.case-composition{width:calc(100% + 10px);margin:0 -5px;flex:none}#main.case-story .case-composition-caption{font-size:10px;margin-top:20px}#main.case-story .case-process-original{width:100%}#main.case-story .case-process-original h4{font-size:27px;line-height:1.1;max-width:23ch;margin-bottom:12px}#main.case-story .case-process-original p,#main.case-story .case-process-original li{font-size:16px;line-height:1.7;max-width:none}#main.case-story .case-process-grid>div:has(.case-process-step),#main.case-story .case-process-grid>.case-process-step{padding:25px 0 27px}#main.case-story .case-process-step>div:has(>span)>span:first-child{font-size:27px}#main.case-story .case-process-step>div:has(>span)>span+span{font-size:16px}#main.case-story .case-process-step>div:first-child:not(:has(*)){margin-bottom:10px}#main.case-story .case-native-conversion{margin-top:12px;padding-top:26px}#main.case-story .case-native-conversion>div:nth-child(2){font-size:27px;gap:18px}#main.case-story .case-process-grid .case-process-step:before{transition-duration:.7s}#main.case-story .case-delivery ul{margin-top:29px}#main.case-story .case-delivery-row{display:block;font-size:16px;line-height:1.75;padding:25px 0 28px!important}#main.case-story .case-delivery-row>strong{font-size:25px;line-height:1.14;margin-bottom:13px;max-width:24ch}#main.case-story .case-impact{padding-top:60px;padding-bottom:65px}#main.case-story .case-impact-heading{display:block;margin-bottom:35px}#main.case-story .case-impact-heading h2{font-size:51px;max-width:15ch;line-height:1.04}#main.case-story .case-impact-heading>.case-composition{width:100%;max-width:500px;margin:30px 0 36px}#main.case-story .case-impact-grid{grid-template-columns:1fr;gap:30px}#main.case-story .case-impact-item{padding-top:25px}#main.case-story .case-impact-value{font-size:clamp(59px,18vw,88px);margin-bottom:17px}#main.case-story .case-impact-value.case-value-words{font-size:36px;line-height:1.07;max-width:20ch}#main.case-story .case-impact-description{font-size:16px;line-height:1.7;max-width:100%}#main.case-story .case-conclusion .case-chapter-copy>p{font-size:18px;line-height:1.75}#main.case-story .case-contact{padding:62px var(--pad)}#main.case-story .case-contact-title{font-size:45px;line-height:1.04;margin-bottom:24px;max-width:17ch}#main.case-story .case-contact-copy{font-size:17px;line-height:1.7}#main.case-story .case-contact-actions{gap:21px 28px;margin-top:28px}#main.case-story .case-contact-link{font-size:15px;min-height:60px;gap:40px;padding:17px 20px}#main.case-story .case-booking-reveal{min-width:150px}#main.case-story .case-booking-reveal>summary{min-height:60px;font-size:14px;gap:20px}#main.case-story .case-booking-reveal>.inner-booking{margin-top:25px}#main.case-story .case-next{grid-template-columns:1fr;min-height:0}#main.case-story .case-next-copy{padding:50px var(--pad);gap:17px;min-height:215px}#main.case-story .case-next-copy>strong{font-size:44px;line-height:1.05;max-width:17ch;padding-right:48px}#main.case-story .case-next-copy>span:first-child{font-size:12px}#main.case-story .case-next-arrow{right:var(--pad);font-size:53px}#main.case-story .case-next-image{height:280px;max-height:none}#main.case-story .case-next>.case-composition{padding:0 var(--pad) 40px}#main.case-story .case-graphic-hero{padding:30px 27px}#main.case-story .case-graphic-word{font-size:52px;line-height:1.03;max-width:11ch}#main.case-story .case-graphic-hero>.case-composition{margin:30px -5% 25px}#main.case-story .case-graphic-values{font-size:23px}#main.case-story .case-graphic-subject{font-size:20px}#main.case-index .case-index-section{padding:133px var(--pad) 70px}#main.case-index .case-index-introduction{display:block;margin-bottom:50px}#main.case-index .case-index-title{font-size:clamp(47px,12vw,78px);line-height:1.04;max-width:16ch;letter-spacing:-.057em;margin-bottom:26px}#main.case-index .case-index-introduction>p{font-size:17px;line-height:1.7;max-width:100%}#main.case-index .case-index-count{margin-top:25px;padding-top:21px;font-size:13px}#main.case-index .case-index-grid{display:block;margin:0}#main.case-index .case-index-card,#main.case-index .case-index-card:first-child,#main.case-index .case-index-card:nth-child(4n+2){display:block;margin:0 0 55px;grid-column:auto}#main.case-index .case-index-visual,#main.case-index .case-index-card:first-child .case-index-visual{height:360px}#main.case-index .case-index-copy,#main.case-index .case-index-card:first-child .case-index-copy{padding:24px 0 0;margin:0}#main.case-index .case-index-copy h3,#main.case-index .case-index-card:first-child .case-index-copy h3{font-size:32px;line-height:1.1;max-width:26ch;margin-bottom:18px;letter-spacing:-.045em}#main.case-index .case-index-copy p{font-size:16px;line-height:1.75;max-width:100%}#main.case-index .case-index-eyebrow{font-size:11px;margin-bottom:12px}#main.case-index .case-index-client{font-size:19px;left:19px;bottom:20px;max-width:calc(100% - 75px)}#main.case-index .case-index-arrow{font-size:33px;bottom:18px;right:18px}#main.case-index .case-index-outcome{font-size:13px;padding-top:18px;margin-top:21px}#main.case-index .case-index-outcome>div:first-child{font-size:18px}#main.case-index .case-graphic-hero{padding:27px 23px}#main.case-index .case-graphic-word{font-size:43px}#main.case-index .case-graphic-hero>.case-composition{margin:20px -5% 15px}#main.case-index .case-graphic-values{font-size:20px}}
@media(max-width:370px){#main.case-story .case-title,#main.case-story .case-title-long{font-size:35px}#main.case-story .case-client-lockup>span{font-size:15px}#main.case-story .case-client-logo{width:52px}#main.case-story .case-hero-media{height:440px}#main.case-story .case-browser-hero{height:410px}#main.case-story .case-metric-grid{gap:18px}#main.case-story .case-metric-item{padding-left:15px}#main.case-story .case-metric-value{font-size:43px}#main.case-story .case-metric-value.case-value-words{font-size:26px}#main.case-story .case-metric-description{font-size:11px}#main.case-story .case-process-title,#main.case-story .case-chapter h2{font-size:36px}#main.case-story .case-impact-heading h2{font-size:44px}#main.case-story .case-impact-value.case-value-words{font-size:33px}#main.case-story .case-contact-title{font-size:39px}#main.case-story .case-next-copy>strong{font-size:37px}#main.case-index .case-index-copy h3,#main.case-index .case-index-card:first-child .case-index-copy h3{font-size:29px}#main.case-index .case-index-visual,#main.case-index .case-index-card:first-child .case-index-visual{height:320px}#main.case-index .case-graphic-word{font-size:37px}#main.case-story .case-graphic-word{font-size:45px}}
.motion-paused .case-story .case-composition *,.motion-paused .case-index .case-composition *{animation-play-state:paused!important}.motion-paused .case-story [data-case-emphasis]{animation:none!important;clip-path:none!important;translate:none!important}
@media(prefers-reduced-motion:reduce){body:not(.motion-enabled) .case-story *,body:not(.motion-enabled) .case-index *{animation:none!important;transition:none!important;scroll-behavior:auto!important}body:not(.motion-enabled) .case-story [data-case-emphasis]{clip-path:none!important;translate:none!important}body:not(.motion-enabled) .case-story :is(.case-photo,.case-context-media>img){transform:none!important}}
#main.case-story .case-graphic-logo,#main.case-index .case-graphic-logo{width:clamp(160px,18vw,270px);height:90px;max-width:80%;object-fit:contain;object-position:left center;display:block;position:relative;z-index:2;margin-bottom:25px}
#main.case-story .case-graphic-hero:has(>.case-graphic-logo)>.case-graphic-word,#main.case-index .case-graphic-hero:has(>.case-graphic-logo)>.case-graphic-word{font-size:26px;color:currentColor;letter-spacing:-.045em}
#main.case-story[data-case=fortem] .case-client-logo{background:#132d2a;padding:6px;border-radius:2px;height:52px}
#main.case-story[data-case=internal-acquisition-benchmark] .case-client-logo{background:#0d1b37;padding:9px;border-radius:2px;width:120px;height:45px}
#main.case-index .case-photo-caption{bottom:57px;font-size:10px;left:25px}
@media(max-width:760px){#main.case-story .case-graphic-logo,#main.case-index .case-graphic-logo{width:210px;max-width:80%;height:74px;margin-bottom:15px}#main.case-story .case-graphic-hero:has(>.case-graphic-logo)>.case-composition,#main.case-index .case-graphic-hero:has(>.case-graphic-logo)>.case-composition{margin-block:15px}#main.case-index .case-photo-caption{left:19px;bottom:54px;font-size:9px}#main.case-index .case-graphic-hero:has(>.case-graphic-logo)>.case-graphic-word{font-size:21px}}

#main.case-story[data-case=bee-property-development] .case-client-logo{background:#123bb8;padding:7px;border-radius:2px;height:54px}
#main.case-story .case-process-grid>div>div:first-child:has(+.case-process-step){font-size:13px;font-weight:700;line-height:1.4;color:#bad4ff;margin-bottom:13px}

@media(max-width:760px){#main.case-story .case-opening{gap:0}#main.case-story .case-introduction{display:contents}#main.case-story .case-eyebrow{order:0;margin:0 0 17px}#main.case-story .case-client-lockup{order:1;margin:0 0 25px}#main.case-story .case-title{order:2;margin:0 0 31px}#main.case-story .case-hero-media{order:3;margin:0 0 30px}#main.case-story .case-lead{order:4;margin:0}#main.case-story .case-jump-nav{order:5;margin:0;padding-top:21px}}

/* Tangible paper, plans and finished objects replace the earlier wireframe study. */
#main.case-story .case-scene-ground{fill:#061b59;opacity:.18;filter:blur(8px)}
#main.case-story .case-object-face{stroke:#fff;stroke-width:1.4;stroke-linejoin:round;vector-effect:non-scaling-stroke}
#main.case-story .case-object-depth{fill:#102a6d;stroke:#183b88;stroke-width:1;opacity:.72;vector-effect:non-scaling-stroke}
#main.case-story .case-object-detail{stroke:#4772b8;stroke-width:1.5;opacity:.9;fill:none;vector-effect:non-scaling-stroke}
#main.case-story .case-object-node{stroke:#d7e7ff;stroke-width:1.2;vector-effect:non-scaling-stroke}
#main.case-story .case-flow-route{stroke:#fff;stroke-width:3.5;opacity:1;vector-effect:non-scaling-stroke}
#main.case-story .case-flow-dot{fill:#fff;stroke:#2655f3;stroke-width:6;filter:drop-shadow(0 0 11px #d8eaff77)}
#main.case-story .case-object-label{font-family:Agency,Arial,sans-serif;font-size:15px;line-height:1.2;letter-spacing:-.3px;font-weight:700;fill:#15366f;stroke:none}
#main.case-story .case-org-label{text-anchor:middle;font-size:15px}
#main.case-story .case-object-ink{fill:#234f9d;fill-rule:evenodd;stroke:none}
#main.case-story .case-folder-sheet{fill:#a8c4f7;stroke:#c7dcff;stroke-width:1.2}
#main.case-story .case-folder-face{stroke:#fff;stroke-width:1.4}
#main.case-story .case-folder-rule{stroke:#a9bedf;stroke-width:1.1;fill:none}
#main.case-story .case-folder-value{font-family:Agency,Arial,sans-serif;font-size:44px;font-weight:700;letter-spacing:-2px;fill:#163e91;opacity:.76;transition:opacity .6s,fill .6s}
#main.case-story .case-folder-number{font-family:Agency,Arial,sans-serif;font-size:33px;font-weight:700;letter-spacing:-1.2px;fill:#163e91}
#main.case-story .case-folder-label{font-family:Agency,Arial,sans-serif;font-size:12px;font-weight:400;letter-spacing:-.1px;fill:#526f9f}
#main.case-story .case-composition.is-complete .case-folder-value{opacity:1;fill:#2655f3}
#main.case-story .case-composition.is-active .case-paper-lift{animation:case-paper-breathe 6s cubic-bezier(.4,0,.6,1) var(--paper-delay,0s) infinite}
#main.case-story .case-calendar-cell{fill:#afc9f3;stroke:#6a92d3;stroke-width:1.1;opacity:1}
#main.case-story .case-composition.is-complete .case-calendar-cell{fill:#2655f3;stroke:#2655f3;opacity:1}
#main.case-story .case-impact .case-scene-ground{fill:#030a19;opacity:.28}
#main.case-story .case-impact .case-object-depth{fill:#020b20;stroke:#0b204b;opacity:.9}
#main.case-story .case-impact .case-flow-route{stroke:#b7d2ff;stroke-width:3.5}
#main.case-story .case-impact .case-flow-dot{fill:#fff;stroke:#0d1b37}
#main.case-story .case-composition-caption{display:none}
/* Brand posters use source-owned marks and outcomes, without repeating process art. */
#main.case-story .case-brand-poster,#main.case-index .case-brand-poster{justify-content:flex-start;gap:0;padding:50px 40px;background:radial-gradient(ellipse at 30% 10%,#2457d5,#0e2e96 80%)}
#main.case-story .case-poster-mark,#main.case-index .case-poster-mark{min-height:120px;position:relative;z-index:3;display:flex;align-items:center;margin-bottom:27px;max-width:100%}
#main.case-story .case-poster-mark .case-graphic-logo,#main.case-index .case-poster-mark .case-graphic-logo{height:120px;width:270px;max-width:100%;margin:0;object-fit:contain;object-position:left center;filter:drop-shadow(0 12px 15px #07173144)}
#main.case-story .case-brand-poster .case-graphic-word,#main.case-index .case-brand-poster .case-graphic-word{font-size:22px;line-height:1.2;max-width:none;position:relative;z-index:3;color:#c8dbff;margin-bottom:40px}
#main.case-story .case-poster-statement,#main.case-index .case-poster-statement{margin-top:auto;position:relative;z-index:3;padding-bottom:25px;min-width:0}
#main.case-story .case-poster-statement>strong,#main.case-index .case-poster-statement>strong{display:block;font-size:clamp(71px,8.7vw,145px);font-weight:700;line-height:.95;letter-spacing:-.075em;color:#fff;overflow-wrap:normal;max-width:100%}
#main.case-story .case-poster-statement>span,#main.case-index .case-poster-statement>span{display:block;color:#bed5ff;font-size:24px;line-height:1.1;font-weight:400;letter-spacing:-.035em;margin-top:18px}
#main.case-story .case-poster-paperwork,#main.case-index .case-poster-paperwork{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:0;opacity:.55}
#main.case-story .case-poster-paperwork>i,#main.case-index .case-poster-paperwork>i{position:absolute;right:-18%;top:29%;height:62%;width:63%;border:1px solid #7eabff4a;background:linear-gradient(145deg,#abc8ff12,#001d6617);rotate:28deg;box-shadow:18px 18px 0 #071c5b19}
#main.case-story .case-poster-paperwork>i:nth-child(2),#main.case-index .case-poster-paperwork>i:nth-child(2){translate:45px 15px}
#main.case-story .case-poster-paperwork>i:nth-child(3),#main.case-index .case-poster-paperwork>i:nth-child(3){translate:90px 30px}
#main.case-story[data-case=fortem] .case-brand-poster,#main.case-index [data-case=fortem] .case-brand-poster{background:radial-gradient(ellipse at 25% 15%,#24433c,#122a25 85%)}
#main.case-story[data-case=fortem] .case-poster-mark,#main.case-index [data-case=fortem] .case-poster-mark{min-height:180px;justify-content:center}
#main.case-story[data-case=fortem] .case-poster-mark .case-graphic-logo,#main.case-index [data-case=fortem] .case-poster-mark .case-graphic-logo{height:190px;width:260px;object-position:center}
#main.case-story[data-case=fortem] .case-brand-poster .case-graphic-word,#main.case-index [data-case=fortem] .case-brand-poster .case-graphic-word{color:#b4ccbc}
#main.case-story[data-case=fortem] .case-poster-statement>span,#main.case-index [data-case=fortem] .case-poster-statement>span{color:#c1d4c7}
#main.case-story[data-case=netwerk-dakdekkers] .case-brand-poster,#main.case-index [data-case=netwerk-dakdekkers] .case-brand-poster{background:linear-gradient(155deg,#e8eef9,#c8d9f2)}
#main.case-story[data-case=netwerk-dakdekkers] .case-brand-poster .case-graphic-word,#main.case-index [data-case=netwerk-dakdekkers] .case-brand-poster .case-graphic-word{color:#50698e}
#main.case-story[data-case=netwerk-dakdekkers] .case-poster-statement>strong,#main.case-index [data-case=netwerk-dakdekkers] .case-poster-statement>strong{color:#18448f}
#main.case-story[data-case=netwerk-dakdekkers] .case-poster-statement>span,#main.case-index [data-case=netwerk-dakdekkers] .case-poster-statement>span{color:#4d6c9d}
#main.case-story[data-case=internal-acquisition-benchmark] .case-brand-poster,#main.case-index [data-case=internal-acquisition-benchmark] .case-brand-poster{background:radial-gradient(ellipse at 20% 10%,#1a3057,#0a172d 80%)}
#main.case-story[data-case=internal-acquisition-benchmark] .case-poster-statement>strong,#main.case-index [data-case=internal-acquisition-benchmark] .case-poster-statement>strong{color:#fff;border-bottom:9px solid #ed7a31;display:inline-block;padding-bottom:10px}
#main.case-story[data-case=compendium-solutions] .case-poster-mark,#main.case-index [data-case=compendium-solutions] .case-poster-mark{background:#fff;padding:5px 20px;border-radius:3px;width:max-content;max-width:100%;box-shadow:8px 10px 0 #061f6866,0 20px 35px #061c6344;rotate:-3deg}
#main.case-story[data-case=compendium-solutions] .case-poster-mark .case-graphic-logo,#main.case-index [data-case=compendium-solutions] .case-poster-mark .case-graphic-logo{filter:none;height:105px;width:200px}
#main.case-story[data-case=compendium-solutions] .case-poster-statement>strong,#main.case-index [data-case=compendium-solutions] .case-poster-statement>strong{font-size:clamp(55px,5.9vw,96px);letter-spacing:-.065em}
@keyframes case-paper-breathe{0%,100%{translate:0 0}50%{translate:0 -5px}}
@media(max-width:1100px){#main.case-story .case-brand-poster{padding:38px 28px}#main.case-story .case-poster-statement>strong{font-size:100px}#main.case-story[data-case=compendium-solutions] .case-poster-statement>strong{font-size:63px}#main.case-story .case-poster-mark .case-graphic-logo{width:220px}}
@media(max-width:760px){#main.case-story .case-brand-poster,#main.case-index .case-brand-poster{padding:31px 27px}#main.case-story .case-poster-mark,#main.case-index .case-poster-mark{min-height:85px;margin-bottom:17px}#main.case-story .case-poster-mark .case-graphic-logo,#main.case-index .case-poster-mark .case-graphic-logo{height:85px;width:220px;max-width:100%}#main.case-story .case-brand-poster .case-graphic-word,#main.case-index .case-brand-poster .case-graphic-word{font-size:18px;margin-bottom:25px}#main.case-story .case-poster-statement,#main.case-index .case-poster-statement{padding-bottom:10px}#main.case-story .case-poster-statement>strong{font-size:102px}#main.case-index .case-poster-statement>strong{font-size:84px}#main.case-story .case-poster-statement>span,#main.case-index .case-poster-statement>span{font-size:21px;margin-top:14px}#main.case-story[data-case=fortem] .case-poster-mark{min-height:150px}#main.case-story[data-case=fortem] .case-poster-mark .case-graphic-logo{height:155px}#main.case-index [data-case=fortem] .case-poster-mark{min-height:90px}#main.case-index [data-case=fortem] .case-poster-mark .case-graphic-logo{height:100px}#main.case-story[data-case=compendium-solutions] .case-poster-mark,#main.case-index [data-case=compendium-solutions] .case-poster-mark{padding:3px 15px}#main.case-story[data-case=compendium-solutions] .case-poster-mark .case-graphic-logo,#main.case-index [data-case=compendium-solutions] .case-poster-mark .case-graphic-logo{height:74px;width:160px}#main.case-story[data-case=compendium-solutions] .case-poster-statement>strong,#main.case-index [data-case=compendium-solutions] .case-poster-statement>strong{font-size:62px}#main.case-index .case-brand-poster .case-graphic-values{font-size:17px}#main.case-index .case-graphic-word{margin-bottom:17px}}
@media(max-width:370px){#main.case-story .case-brand-poster,#main.case-index .case-brand-poster{padding:26px 22px}#main.case-story .case-poster-statement>strong{font-size:89px}#main.case-index .case-poster-statement>strong{font-size:74px}#main.case-story[data-case=compendium-solutions] .case-poster-statement>strong,#main.case-index [data-case=compendium-solutions] .case-poster-statement>strong{font-size:53px}#main.case-story .case-poster-statement>span,#main.case-index .case-poster-statement>span{font-size:19px}}

#main.case-story .case-brand-poster,#main.case-index .case-brand-poster{container-type:inline-size}
#main.case-story[data-case=compendium-solutions] .case-poster-statement>strong,#main.case-index [data-case=compendium-solutions] .case-poster-statement>strong{font-size:clamp(40px,15cqw,90px)}

#main.case-story .case-surface-ink{fill:none;stroke:#315c9f;stroke-width:1.1;opacity:.85;vector-effect:non-scaling-stroke}

/* Transparent white client marks sit directly on the image corner. */
#main:is(.case-story,.case-index) .case-visual-brand{position:absolute;top:22px;left:22px;z-index:4;display:flex;align-items:center;justify-content:flex-start;padding:0;max-width:calc(100% - 44px);border-radius:0;background:none;pointer-events:none;line-height:0}
#main:is(.case-story,.case-index) .case-visual-brand>.case-visual-logo{position:static;display:block;width:var(--case-logo-width,140px);height:auto;max-width:100%;max-height:48px;object-fit:contain;object-position:left center;transform:none;filter:none;border-radius:0;margin:0}
#main:is(.case-story,.case-index) .case-visual-brand:before{content:'';position:absolute;z-index:-1;top:-22px;left:-22px;width:360px;height:175px;background:radial-gradient(ellipse at left top,#0008 0%,#0004 42%,transparent 70%);pointer-events:none}
#main.case-index .case-index-client{color:#fff;text-shadow:0 1px 12px #0005}
@media(max-width:760px){
 #main:is(.case-story,.case-index) .case-visual-brand{top:15px;left:15px;max-width:calc(100% - 30px)}
 #main:is(.case-story,.case-index) .case-visual-brand>.case-visual-logo{width:calc(var(--case-logo-width,140px)*.78);max-height:38px}
 #main:is(.case-story,.case-index) .case-visual-brand:before{top:-15px;left:-15px;width:280px;height:140px}
}

/* Manifest crop controls keep important subjects visible across image contexts. */
#main.case-story .case-hero-media[data-case-frame=custom]{height:auto!important;min-height:0!important;max-height:none;aspect-ratio:var(--case-frame-ratio,4/3);align-self:center}
@media(max-width:760px){#main.case-story .case-hero-media[data-case-frame=custom]{aspect-ratio:var(--case-frame-ratio-mobile,var(--case-frame-ratio,4/3))}}
#main:is(.case-story,.case-index) img[data-case-fit=contain]{object-fit:contain;transform:none!important}
@media(max-width:760px){
 #main.case-story .case-hero-media>.case-photo[style*="--case-object-position-mobile"],
 #main.case-story .case-context-media>img[style*="--case-object-position-mobile"],
 #main.case-story .case-next-image[style*="--case-object-position-mobile"],
 #main.case-index .case-index-photo[style*="--case-object-position-mobile"]{object-position:var(--case-object-position-mobile,var(--case-object-position,center))}
 #main.case-index .case-photo-caption{font-size:11px;line-height:1.45}
}

/* Real website captures retain their entire canvas within the brand's stage. */
#main:is(.case-story,.case-index) :is(.case-hero-media,.case-context-media,.case-index-visual,.case-next-media):has(>img[data-case-presentation=website]){display:grid;place-items:center;padding:8%;background:#ed7926;isolation:isolate}
#main.case-story .case-hero-media:has(>img[data-case-presentation=website]){height:auto!important;min-height:0!important;aspect-ratio:var(--case-frame-ratio,4/3);align-self:center}
#main:is(.case-story,.case-index) :is(.case-hero-media,.case-context-media,.case-index-visual,.case-next-media):has(>img[data-case-presentation=website]):before{content:none}
#main:is(.case-story,.case-index) :is(.case-hero-media,.case-context-media,.case-index-visual,.case-next-media):has(>img[data-case-presentation=website]):after{background:linear-gradient(transparent,#160b0780)}
#main:is(.case-story,.case-index) :is(.case-hero-media,.case-context-media,.case-index-visual,.case-next-media):has(>img[data-case-presentation=website])>img[data-case-presentation=website]{position:relative;inset:auto;display:block;width:100%;height:auto;max-width:100%;max-height:100%;object-fit:contain;object-position:center;transform:rotate(-3deg);transform-origin:center;border-radius:3px;box-shadow:0 20px 45px #270f0960;z-index:2;will-change:auto}
@media(max-width:760px){
 #main.case-story .case-hero-media:has(>img[data-case-presentation=website]){aspect-ratio:var(--case-frame-ratio-mobile,3/2)}
 #main:is(.case-story,.case-index) :is(.case-hero-media,.case-context-media,.case-index-visual,.case-next-media):has(>img[data-case-presentation=website])>img[data-case-presentation=website]{box-shadow:0 12px 28px #270f0955}
}

/* Custom Roofing Network icon pairs with its visible client name. */
#main.case-story[data-case=netwerk-dakdekkers] .case-client-logo{background:#0d1b37;padding:6px;border-radius:2px}

/* Venti Cleaners: full source delivery detail and transparent methodology. */
#main.case-story[data-case=venti-cleaners] .case-title{font-size:clamp(42px,3.85vw,64px);line-height:1.07}
#main.case-story[data-case=venti-cleaners] .case-client-logo{width:106px;height:54px}
#main.case-story[data-case=venti-cleaners] .case-process-layout{grid-template-columns:minmax(0,1.08fr) minmax(0,1fr);gap:6%}
#main.case-story[data-case=venti-cleaners] .case-composition[data-composition=venti] svg{overflow:visible}
#main.case-story[data-case=venti-cleaners] .case-venti-pipelines path{fill:none;stroke:#a9caff;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}
#main.case-story[data-case=venti-cleaners] .case-venti-pipelines .case-venti-lane{stroke:#fff;stroke-width:7}
#main.case-story[data-case=venti-cleaners] :is(.case-venti-calendar,.case-venti-followup,.case-venti-won){fill:#eaf1ff;stroke:#a4c4ff;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
#main.case-story[data-case=venti-cleaners] :is(.case-venti-calendar,.case-venti-followup,.case-venti-won)>path{fill:none;stroke:#2755b6;stroke-width:2.5}
#main.case-story[data-case=venti-cleaners] .case-venti-won>path:first-child{fill:#eaf1ff;stroke:#a4c4ff;stroke-width:2}
#main.case-story[data-case=venti-cleaners] :is(.case-venti-calendar,.case-venti-won) .case-venti-tick{stroke:#2655f3;stroke-width:5;stroke-dasharray:150;stroke-dashoffset:0;transition:stroke-dashoffset .8s}
#main.case-story[data-case=venti-cleaners] .case-venti-art-label{font-family:Agency,Arial,sans-serif;font-size:38px;font-weight:700;letter-spacing:-1px;fill:#fff;stroke:none}
#main.case-story[data-case=venti-cleaners] .case-process-step>div:has(>h4){display:flex;align-items:baseline;gap:13px}
#main.case-story[data-case=venti-cleaners] .case-process-step>div:has(>h4)>span{flex:none;font-size:18px;color:#c3d8ff;line-height:1.4}
#main.case-story[data-case=venti-cleaners] .case-process-step h4{font-size:clamp(24px,2.05vw,32px);line-height:1.2;margin:0 0 15px}
#main.case-story[data-case=venti-cleaners] .case-process-step>p{font-size:17px;line-height:1.75;max-width:52ch}
#main.case-story[data-case=venti-cleaners] .case-venti-delivery-item{padding:34px 0 37px;border-top:1px solid #cbd5e8}
#main.case-story[data-case=venti-cleaners] .case-delivery .case-chapter-copy>div>div:first-child>.case-venti-delivery-item{padding-top:0;border-top:0}
#main.case-story[data-case=venti-cleaners] .case-venti-delivery-item h3{font-size:clamp(25px,2.2vw,33px);line-height:1.23;letter-spacing:-.035em;margin:0 0 20px;color:#0d1b37;max-width:28ch}
#main.case-story[data-case=venti-cleaners] .case-venti-delivery-item p{font-size:18px;line-height:1.8;color:#4c5870;max-width:72ch}
#main.case-story[data-case=venti-cleaners] .case-venti-delivery-item p+p{margin-top:23px}
#main.case-story[data-case=venti-cleaners] .case-impact-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:42px 7%}
#main.case-story[data-case=venti-cleaners] .case-impact-item:last-child{grid-column:1/-1}
#main.case-story[data-case=venti-cleaners] .case-impact-item:last-child .case-impact-description{max-width:88ch}
#main.case-story[data-case=venti-cleaners] .case-methodology{display:grid;grid-template-columns:minmax(0,.52fr) minmax(0,1fr);gap:50px 11%;background:#fff;border-top:1px solid #dce4f1}
#main.case-story[data-case=venti-cleaners] .case-methodology .case-chapter-copy{width:100%;min-width:0}
#main.case-story[data-case=venti-cleaners] .case-venti-methodology-table{width:100%;border-collapse:collapse;table-layout:fixed;font-size:18px;line-height:1.6;text-align:left;border:0}
#main.case-story[data-case=venti-cleaners] .case-venti-methodology-table :is(th,td){padding:19px 21px;border:0;border-bottom:1px solid #d3deed;vertical-align:top;overflow-wrap:break-word}
#main.case-story[data-case=venti-cleaners] .case-venti-methodology-table th{font-size:16px;font-weight:700;color:#4a5c7b;background:#edf2fb}
#main.case-story[data-case=venti-cleaners] .case-venti-methodology-table :is(th,td):first-child{width:66%}
#main.case-story[data-case=venti-cleaners] .case-venti-methodology-table td:last-child{font-weight:700;color:#153eaa}
#main.case-story[data-case=venti-cleaners] .case-venti-methodology-table tbody tr:nth-child(even){background:#f8faff}
#main.case-story[data-case=venti-cleaners] .case-venti-methodology-table tr:last-child td{border-bottom:1px solid #b9cae3}
@media(max-width:1100px){
 #main.case-story[data-case=venti-cleaners] .case-process-layout{grid-template-columns:1fr;gap:35px}
 #main.case-story[data-case=venti-cleaners] .case-process-layout>.case-composition{width:min(800px,100%);margin:0 auto}
 #main.case-story[data-case=venti-cleaners] .case-process-original p{max-width:70ch}
}
@media(max-width:760px){
 #main.case-story[data-case=venti-cleaners] .case-title{font-size:clamp(35px,9vw,49px);line-height:1.09}
 #main.case-story[data-case=venti-cleaners] .case-client-logo{width:85px;height:43px}
 #main.case-story[data-case=venti-cleaners] .case-process-layout{gap:27px}
 #main.case-story[data-case=venti-cleaners] .case-process-step h4{font-size:25px;line-height:1.25}
 #main.case-story[data-case=venti-cleaners] .case-process-step>p{font-size:16.5px;line-height:1.8}
 #main.case-story[data-case=venti-cleaners] .case-venti-art-label{display:none}
 #main.case-story[data-case=venti-cleaners] .case-venti-delivery-item{padding:28px 0 31px}
 #main.case-story[data-case=venti-cleaners] .case-venti-delivery-item h3{font-size:25px;line-height:1.3;margin-bottom:18px;max-width:none}
 #main.case-story[data-case=venti-cleaners] .case-venti-delivery-item p{font-size:17px;line-height:1.85}
 #main.case-story[data-case=venti-cleaners] .case-impact-grid{grid-template-columns:1fr;gap:33px}
 #main.case-story[data-case=venti-cleaners] .case-impact-item:last-child{grid-column:auto}
 #main.case-story[data-case=venti-cleaners] .case-methodology{display:block}
 #main.case-story[data-case=venti-cleaners] .case-methodology h2{margin-bottom:33px}
 #main.case-story[data-case=venti-cleaners] .case-venti-methodology-table{font-size:16px;line-height:1.65}
 #main.case-story[data-case=venti-cleaners] .case-venti-methodology-table :is(th,td){padding:16px 13px}
 #main.case-story[data-case=venti-cleaners] .case-venti-methodology-table :is(th,td):first-child{width:60%}
 #main.case-story[data-case=venti-cleaners] .case-venti-methodology-table th{font-size:15px}
}
/* Genuine Venti technician detail keeps its native portrait composition. */
#main.case-story[data-case=venti-cleaners] .case-context-media{width:min(60%,487.5px);max-width:100%;height:auto;max-height:650px;aspect-ratio:3/4;margin:22px 0 0 auto;align-self:start}
@media(max-width:760px){#main.case-story[data-case=venti-cleaners] .case-context-media{width:100%;max-width:none;max-height:none;aspect-ratio:3/4;margin-top:15px}}

/* Each complete case-card link has one permanent, clearly labelled action. */
#main.case-index .case-index-read{display:inline-flex;align-items:center;justify-content:space-between;gap:30px;min-height:52px;max-width:100%;margin-top:28px;padding:15px 20px;border:1px solid #2655f3;border-radius:3px;background:#2655f3;color:#fff;font-size:14px;font-weight:700;line-height:1.45;letter-spacing:0;white-space:normal;transition:background .25s,border-color .25s}
#main.case-index .case-index-read-arrow{display:block;flex:none;font-size:22px;font-weight:400;line-height:1;transition:transform .3s cubic-bezier(.2,.65,.2,1)}
#main.case-index .case-index-card:is(:hover,:focus-visible) .case-index-read{background:#0d1b37;border-color:#0d1b37;color:#fff}
#main.case-index .case-index-card:is(:hover,:focus-visible) .case-index-read-arrow{transform:translate(2px,-2px)}
@media(max-width:760px){#main.case-index .case-index-read{min-height:52px;margin-top:25px;padding:15px 19px;font-size:14px}}
@media(prefers-reduced-motion:reduce){#main.case-index .case-index-read,#main.case-index .case-index-read-arrow{transition:none}#main.case-index .case-index-card:is(:hover,:focus-visible) .case-index-read-arrow{transform:none}}
