/* Lichtatelier project stages. Client color lives in the photographic set. */
.references{--ref-copy:#425b7a;position:relative;isolation:isolate;overflow:clip;background:#f8faff;color:#172a47;scroll-margin-top:110px}
.references::before{content:"";position:absolute;inset:0;z-index:-2;pointer-events:none;background:radial-gradient(ellipse at 95% 15%,#c8def333,transparent 46%),linear-gradient(180deg,#f8faff,#f1f6fc)}
.references::after{content:"";position:absolute;left:-35%;top:12%;width:130%;height:1500px;z-index:-1;border-radius:50%;transform:rotate(-28deg);pointer-events:none;background:linear-gradient(130deg,#ffffff99,#e0ecfa21 65%,transparent);box-shadow:inset 0 2px 1px #ffffffb3}
.references-inner{max-width:1440px;margin:auto;padding:30px 56px 94px}
.references-heading{display:grid;grid-template-columns:1.7fr 1fr;gap:70px;align-items:end;margin-bottom:46px}
.references h2{font-size:clamp(38px,3.6vw,54px);font-weight:500;letter-spacing:-.03em;line-height:1.18;margin:0;text-wrap:balance}
.references-heading>p{margin:0 0 5px;font-size:17px;line-height:1.75;color:var(--ref-copy);max-width:40ch}
.reference-highlight{position:relative;display:inline-block;isolation:isolate;font-weight:600;font-style:normal;color:#2148b0;line-height:1.1;padding:.04em .12em .10em;margin:.08em -.12em -.04em;border-radius:.12em;text-shadow:0 1px 0 #ffffff80}
.reference-highlight::before{content:"";position:absolute;inset:0;z-index:-1;border-radius:inherit;background:linear-gradient(150deg,#ffffffd6,#eef5ffb3 36%,#bddbfc8c 76%,#dcecffb3);box-shadow:inset 0 2px 1px #ffffffd9,inset 1px 0 1px #ffffffbf,inset 0 -1px 2px #76a7e64d,0 8px 18px -13px #264c8560}
.reference-highlight::after{content:"";position:absolute;inset:0;z-index:1;border-radius:inherit;padding:1px;pointer-events:none;background:linear-gradient(135deg,#fff,#ffffff60 30%,#8bbaff70 58%,#ffffffd9 82%,#b4d4f88c);mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask-composite:exclude}
.reference-project{position:relative;padding:18px 0 62px;scroll-margin-top:112px}
.reference-project+.reference-project{padding-top:52px}
.reference-project+.reference-project::before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,#c7d9ef 14%,#fff 48%,#b3cbe8 80%,transparent);box-shadow:0 5px 12px -4px #adc8e34d}
.reference-top{display:grid;grid-template-columns:.8fr 1.35fr;gap:46px;align-items:center}
.reference-copy{position:relative;z-index:2;min-width:0;padding-bottom:0}
.reference-company{font-size:15px;line-height:1.6;color:#526b89;margin:0 0 20px;display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.reference-company>strong{font-weight:500;color:#29476c}
.reference-company>span{font-size:13px;padding-left:12px;border-left:1px solid #a8bfda}
.reference-copy h3{font-size:clamp(28px,2.7vw,40px);line-height:1.23;letter-spacing:-.025em;font-weight:500;margin:0 0 20px;max-width:18ch;text-wrap:pretty}
.reference-copy>p:not(.reference-company){font-size:17px;line-height:1.75;color:var(--ref-copy);margin:0;max-width:38ch}
.reference-link{display:inline-flex;align-items:center;gap:13px;min-height:44px;margin-top:24px;color:#2148b0;font-size:15px;font-weight:500;text-decoration:underline;text-decoration-color:#91abd099;text-underline-offset:6px;text-decoration-thickness:1px}
.reference-link svg{width:19px;height:19px;transition:transform .55s cubic-bezier(.16,1,.3,1)}
.reference-stage{position:relative;isolation:isolate;aspect-ratio:1.5;margin:0;min-width:0}
.reference-studio{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;z-index:-1;pointer-events:none;mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}
.reference-browser{position:absolute;left:9%;top:16%;width:77%;padding:3px;border-radius:12px;background:linear-gradient(150deg,#f7fcff,#b8c7d9 50%,#eef5fb);box-shadow:inset 0 1px 1px #fff,0 21px 24px -17px #30445e73,0 4px 7px -4px #27436759}
.reference-browser-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;height:27px;padding:0 10px;background:linear-gradient(160deg,#f7fbffdd,#dde7f3c9);border-radius:9px 9px 0 0;color:#52657c;font-size:9px;line-height:1;box-shadow:inset 0 1px 1px #fff}
.reference-browser-dots{display:flex;gap:4px}
.reference-browser-dots i{width:4px;height:4px;border-radius:50%;background:#afbdd0;box-shadow:inset 0 1px 0 #fff}
.reference-browser-bar svg{width:10px;height:10px;stroke-width:1.3}
.reference-window{position:relative;aspect-ratio:1.55;overflow:hidden;border-radius:0 0 8px 8px;background:#e8edf5}
.reference-window img{display:block;width:100%;height:auto;max-width:none}
.reference-phone{position:absolute;right:4.5%;bottom:17%;width:18%;aspect-ratio:.47;padding:3px;transform:rotate(7deg);transform-origin:bottom center;border-radius:18px;background:linear-gradient(110deg,#1b2330,#b3bbc4 7%,#3c4553 13%,#080d15 88%,#9eabb8 95%,#172332);box-shadow:inset 0 1px 1px #d2d8e0,3px 10px 13px -7px #1c304c99}
.reference-phone-screen{width:100%;height:100%;overflow:hidden;border-radius:15px;background:#e8edf5;position:relative}
.reference-phone-screen img{display:block;width:100%;height:auto}
.reference-phone-screen::after{content:"";position:absolute;top:5px;left:31%;right:31%;height:5px;border-radius:10px;background:#111723;box-shadow:0 1px 1px #657182}
.reference-result{position:absolute;z-index:3;left:3%;bottom:4%;width:49%;padding:18px 22px 16px;border-radius:14px;background:linear-gradient(150deg,#ffffffde,#e4effbc4 62%,#d5e6f7c4);-webkit-backdrop-filter:blur(16px) saturate(115%);backdrop-filter:blur(16px) saturate(115%);box-shadow:inset 0 2px 1px #fff,inset 1px 0 1px #fff,inset 0 -1px 2px #9fbddd66,0 16px 24px -20px #2c4a6b99}
.reference-result::before{content:"";position:absolute;inset:0;border-radius:inherit;padding:1px;pointer-events:none;background:linear-gradient(135deg,#fff,#fff4 35%,#9fbed9aa 65%,#ffffffdf);mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask-composite:exclude}
.reference-result-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:4px}
.reference-result-head>strong{font-size:clamp(27px,3vw,42px);font-weight:600;line-height:1.1;letter-spacing:-.025em;color:#2148b0;font-variant-numeric:tabular-nums}
.reference-result-head>span{color:#385c91;display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:9px;background:#c9dff469;box-shadow:inset 0 1px 1px #ffffffd9}
.reference-result-head svg{width:18px;height:18px;stroke-width:1.5}
.reference-result p{font-size:14px;line-height:1.5;color:#29496f;margin:0 0 6px;font-weight:500}
.reference-result small{display:block;color:#526b89;font-size:11px;line-height:1.5}
/* Deister's green belongs to the project stage; the portfolio stays navy/blue. */
.reference-deister .reference-result,.case-deister .reference-result{background:linear-gradient(150deg,#ffffffde,#e5f3edcf 62%,#d1e9ddc9);box-shadow:inset 0 2px 1px #fff,inset 1px 0 1px #fff,inset 0 -1px 2px #88b69e66,0 16px 24px -20px #284d3b99}
.reference-deister .reference-result-head>strong,.case-deister .reference-result-head>strong{color:#17613f}
.reference-deister .reference-result-head>span,.case-deister .reference-result-head>span{color:#32654c;background:#c6e6d869}
.reference-deister .reference-result p,.case-deister .reference-result p{color:#29563e}
.reference-deister .reference-result small,.case-deister .reference-result small{color:#466756}
.reference-deister .reference-result::before,.case-deister .reference-result::before{background:linear-gradient(135deg,#fff,#fff4 35%,#96bfa8aa 65%,#ffffffdf)}
.reference-story{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:38px;margin-top:24px}
.reference-story>div{min-width:0}
.reference-story h4{display:flex;align-items:center;gap:11px;font-size:17px;font-weight:500;letter-spacing:-.01em;line-height:1.5;margin:0 0 11px;color:#29496f}
.reference-story h4 svg{color:#426590;width:19px;height:19px;stroke-width:1.4}
.reference-story p{margin:0;font-size:16px;line-height:1.75;color:var(--ref-copy,#425b7a);max-width:43ch}
.references-note{color:#526b89;font-size:12px;line-height:1.7;margin:0;padding-top:12px;max-width:90ch}
.references .reference-story{grid-template-columns:1fr 1fr 1.15fr;gap:32px;margin-top:34px;align-items:start}
.references .reference-story-item{padding:23px 0 0}
.references .reference-story h4{gap:15px;font-size:18px;line-height:1.35;margin-bottom:17px}
.references .reference-story-icon{position:relative;isolation:isolate;display:grid;place-items:center;flex:0 0 52px;width:52px;height:52px;color:#426596}
.references .reference-story-icon::before{content:"";position:absolute;inset:3px;z-index:-1;border-radius:13px;background:linear-gradient(145deg,#ffffffbd,#d9e9fc66);box-shadow:inset 0 1px 1px #fff,inset 0 -1px 1px #9dbde047,0 8px 16px -13px #28598f66}
.references .reference-story-icon svg{width:48px;height:48px;stroke-width:1.7}
.references .reference-story-result{position:relative;isolation:isolate;padding:23px 25px 25px;border-radius:14px;background:linear-gradient(145deg,#192d4b,#101d33 65%,#142745);color:#f4f8ff;color-scheme:dark;box-shadow:inset 0 1px 1px #d9eaff40,inset 0 -1px 2px #030b16,0 17px 28px -23px #23446e80;scroll-margin-top:112px}
.references .reference-story-result::before{content:"";position:absolute;inset:0;z-index:1;padding:1px;border-radius:inherit;pointer-events:none;background:linear-gradient(135deg,#dbeeff80,#a6cafa17 45%,#6596d14d 70%,#d9eaff47);mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask-composite:exclude}
.references .reference-story-result h4{font-size:22px;color:#f4f8ff;font-weight:600}
.references .reference-story-result .reference-story-icon{color:#bed6ff}
.references .reference-story-result .reference-story-icon svg{color:inherit}
.references .reference-story-result .reference-story-icon::before{background:linear-gradient(145deg,#a8caff24,#6294d018);box-shadow:inset 0 1px 1px #d8eaff59,inset 0 -1px 1px #6294d02e}
.references .reference-story-result p{color:#c3d5eb}
.references .reference-story-result p strong{color:#f4f8ff;font-weight:600}
.references .reference-project-button{width:100%;min-height:54px;margin-top:23px;font-size:14px;text-decoration:none}
.references a:focus-visible,.case-page a:focus-visible,.case-page button:focus-visible,.case-page [tabindex]:focus-visible{outline:2px solid #2148b0;outline-offset:5px;border-radius:4px}
.references .reference-project-button:focus-visible{border-radius:12px}
.references .reference-story-result a:focus-visible{outline-color:#b9d7ff}
@media(hover:hover) and (prefers-reduced-motion:no-preference){.reference-link:hover svg{transform:translateX(4px)}}
@media(hover:hover) and (pointer:fine){.reference-link:hover{text-decoration-color:currentColor}}
@media(max-width:1000px){.references-inner{padding:24px 6% 70px}.references-heading{gap:32px;grid-template-columns:1.4fr 1fr}.references-heading>p{font-size:16px}.reference-top{gap:24px;grid-template-columns:1fr 1.2fr}.reference-copy{padding-bottom:0}.reference-copy h3{font-size:30px}.reference-copy>p:not(.reference-company){font-size:16px}.reference-result{padding:13px 16px;width:54%;left:0;bottom:0}.reference-result p{font-size:12px}.reference-result small{font-size:10px}.reference-story{gap:26px;margin-top:32px}.reference-story p{font-size:15px}.reference-browser-bar{height:23px;font-size:7px}.reference-phone{border-radius:14px}.reference-phone-screen{border-radius:11px}}
@media(max-width:700px){.references-heading{display:block;margin-bottom:28px}.references h2{font-size:36px;line-height:1.2}.references-heading>p{margin-top:22px;max-width:48ch}.reference-project{padding-top:10px;padding-bottom:40px}.reference-project+.reference-project{padding-top:40px}.reference-top{display:flex;flex-direction:column;gap:14px;align-items:stretch}.reference-copy h3{max-width:25ch;font-size:30px;line-height:1.26;margin-bottom:16px}.reference-company{margin-bottom:12px;font-size:14px}.reference-copy>p:not(.reference-company){max-width:48ch}.reference-stage{width:calc(100% + 8vw);margin:0 -4vw;aspect-ratio:1.4}.reference-browser{top:15%;left:8%;width:78%}.reference-browser-bar{height:22px;font-size:7px}.reference-phone{right:6%;bottom:19%;width:18%;border-radius:15px}.reference-phone-screen{border-radius:12px}.reference-result{left:8%;bottom:1%;padding:14px 17px 12px;width:55%}.reference-result-head>strong{font-size:32px}.reference-result-head>span{width:28px;height:28px}.reference-result p{font-size:13px;margin-bottom:4px}.reference-result small{font-size:10px}.reference-story{grid-template-columns:1fr;gap:22px;margin-top:30px}.reference-story h4{font-size:17px;margin-bottom:7px}.reference-story p{font-size:16px;max-width:60ch}.references-note{font-size:12px}.references-inner{padding-bottom:60px}}
@media(max-width:360px){.references h2{font-size:32px}.reference-copy h3{font-size:27px}.reference-result-head>strong{font-size:27px}.reference-result p{font-size:12px}.reference-result{padding:12px 14px}.reference-phone{border-radius:12px}.reference-phone-screen{border-radius:9px}}

/* Detail page: native scroll, genuine page captures, shared local navigation. */
@media(max-width:1000px){.references .reference-story{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 28px}.references .reference-story-item{padding-top:12px}.references .reference-story-result{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:0 32px;padding:23px 25px}.references .reference-story-result h4{grid-column:1}.references .reference-story-result p{grid-column:1;max-width:60ch}.references .reference-project-button{grid-column:2;grid-row:1/3;width:255px;margin:0;align-self:center}}
@media(max-width:700px){.references .reference-story{grid-template-columns:1fr;gap:25px;margin-top:28px}.references .reference-story-item{padding:0}.references .reference-story h4{margin-bottom:13px;gap:13px;font-size:18px}.references .reference-story-icon{flex-basis:48px;width:48px;height:48px}.references .reference-story-icon svg{width:44px;height:44px}.references .reference-story-result{display:block;padding:22px;margin-top:3px}.references .reference-story-result h4{font-size:22px}.references .reference-project-button{width:100%;margin-top:22px;min-height:56px}}
@media(prefers-reduced-transparency:reduce){.references .reference-story-result{background:#101d33}.references .reference-story-icon::before{background:#e9f2ff}.references .reference-story-result .reference-story-icon::before{background:#203b61}}
@media(forced-colors:active){.references .reference-story-result{background:Canvas;border:1px solid CanvasText;box-shadow:none}.references .reference-story-result::before,.references .reference-story-icon::before{display:none}.references .reference-story-icon,.references .reference-story-result .reference-story-icon,.references .reference-story-result h4,.references .reference-story-result p,.references .reference-story-result p strong{color:CanvasText}}
/* Project detail: desktop screenshot carousel, open decisions, clear final action. */
.case-page{--paper:#f8faff;background:#f1f6fc;color:#172a47;color-scheme:light}
.case-main{position:relative;isolation:isolate;overflow:clip;background:linear-gradient(180deg,#f8faff,#eef4fb);padding:142px 0 64px}
.case-main::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 100% 12%,#bad7f52b,transparent 45%)}
.case-inner{max-width:1328px;margin:auto;padding:0 56px}
.case-back{display:inline-flex;gap:10px;align-items:center;min-height:44px;color:#425d80;font-size:14px;margin-bottom:26px}
.case-back svg{width:18px;height:18px;transform:rotate(180deg)}
.case-intro{display:grid;grid-template-columns:1.35fr 1fr;gap:70px;align-items:end;margin-bottom:24px}
.case-intro h1{font-size:clamp(44px,4.1vw,62px);line-height:1.15;font-weight:500;letter-spacing:-.03em;margin:0 0 20px;text-wrap:balance}
.case-intro p{font-size:17px;line-height:1.8;color:#425b7a;margin:0;max-width:55ch}
.case-intro .reference-company{margin-bottom:17px;font-size:16px}
.case-hero-stage{max-width:930px;margin:0 auto 48px}
.case-hero-stage .reference-browser{left:11.5%;width:77%}
.case-hero-stage .reference-result{width:37%;left:4%;bottom:5%;padding:22px 28px}
.case-hero-stage .reference-result-head>strong{font-size:50px}
.case-story{scroll-margin-top:112px;gap:32px;margin:24px 0 0;align-items:start}
.case-story-point{padding:24px 0 0;min-width:0}
.case-story h2{display:flex;gap:14px;align-items:center;font-size:24px;line-height:1.3;letter-spacing:-.02em;font-weight:500;margin:0 0 18px}
.case-story p{font-size:16px;line-height:1.8}
.case-story .reference-story-icon,.case-action-icon{position:relative;isolation:isolate;display:grid;place-items:center;flex:0 0 52px;width:52px;height:52px;color:#426596}
.case-story .reference-story-icon::before,.case-action-icon::before{content:"";position:absolute;inset:3px;z-index:-1;border-radius:13px;background:linear-gradient(145deg,#ffffffbd,#d9e9fc66);box-shadow:inset 0 1px 1px #fff,inset 0 -1px 1px #9dbde047,0 8px 16px -13px #28598f66}
.case-story .reference-story-icon svg,.case-action-icon svg{width:48px;height:48px;stroke-width:1.7}
.case-story-result{position:relative;isolation:isolate;padding:24px;border-radius:14px;background:linear-gradient(145deg,#192d4b,#101d33 65%,#142745);color:#f4f8ff;color-scheme:dark;box-shadow:inset 0 1px 1px #d9eaff40,inset 0 -1px 2px #030b16,0 17px 28px -23px #23446e80}
.case-story-result::before{content:"";position:absolute;inset:0;z-index:1;padding:1px;border-radius:inherit;pointer-events:none;background:linear-gradient(135deg,#dbeeff80,#a6cafa17 45%,#6596d14d 70%,#d9eaff47);mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask-composite:exclude}
.case-story-result h2{color:#f4f8ff}
.case-story-result .reference-story-icon{color:#bed6ff}
.case-story-result .reference-story-icon svg{color:inherit}
.case-story-result .reference-story-icon::before{background:linear-gradient(145deg,#a8caff24,#6294d018);box-shadow:inset 0 1px 1px #d8eaff59,inset 0 -1px 1px #6294d02e}
.case-story-result p{color:#c3d5eb}
.case-story-result strong{font-weight:600;color:#f4f8ff}
.case-block{margin-top:72px;scroll-margin-top:112px}
.case-block h2{font-size:clamp(30px,3vw,42px);line-height:1.2;letter-spacing:-.025em;font-weight:500;margin:0;text-wrap:balance}
.case-block-heading{display:flex;align-items:center;justify-content:space-between;gap:32px;margin-bottom:32px}
.case-block-heading p{color:#425b7a;font-size:16px;line-height:1.75;margin:14px 0 0}
/* A fixed browser frame keeps only its content moving. No-JS remains swipeable. */
.case-gallery{--playback-progress:0;max-width:1120px;margin:0 auto}
.case-gallery-frame{padding:3px;overflow:hidden;border-radius:14px;background:linear-gradient(145deg,#ffffff,#b8cbe0 58%,#eef6ff);box-shadow:inset 0 1px 1px #fff,0 22px 40px -28px #274c7e80,0 3px 8px -5px #38588066}
.case-gallery-chrome{display:flex;gap:16px;align-items:center;justify-content:space-between;height:34px;padding:0 16px;background:linear-gradient(160deg,#f7fbff,#e0eafa);color:#52657c;font-size:11px}
.case-gallery-chrome svg{width:12px;height:12px;stroke-width:1.5}
.case-gallery-track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;aspect-ratio:8/5;background:#e8edf5;border-radius:0 0 11px 11px}
.case-gallery-slide{flex:0 0 100%;min-width:0;margin:0;scroll-snap-align:start}
.case-gallery-slide a,.case-gallery-slide img{display:block;width:100%;height:100%}
.case-gallery-slide a{cursor:zoom-in}
.case-gallery-slide img{object-fit:contain;background:#fff}
.case-gallery.is-enhanced .case-gallery-track{position:relative;display:block;overflow:hidden}
.case-gallery.is-enhanced .case-gallery-slide{position:absolute;inset:0;opacity:0;visibility:hidden;pointer-events:none;transition:opacity var(--motion-media,560ms) var(--motion-fade,cubic-bezier(.4,0,.2,1)),visibility 0s var(--motion-media,560ms)}
.case-gallery.is-enhanced .case-gallery-slide.is-active{opacity:1;visibility:visible;pointer-events:auto;transition:opacity var(--motion-media,560ms) var(--motion-fade,cubic-bezier(.4,0,.2,1)),visibility 0s}
.case-gallery-controls{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:18px;padding:0 4px}
.case-gallery-controls[hidden]{display:none}
.case-gallery-navigation,.case-gallery-playback{display:flex;gap:15px;align-items:center}
.case-gallery-arrow,.case-gallery-toggle{display:grid;place-items:center;flex:0 0 46px;width:46px;height:46px;border:1px solid #b9cfe7;border-radius:50%;background:linear-gradient(145deg,#fafdff,#e1edfc);color:#214773;box-shadow:inset 0 1px 1px #fff,0 6px 12px -10px #24457180;transition:background-color .25s,border-color .25s}
.case-gallery-arrow svg,.case-gallery-toggle svg{width:20px;height:20px;stroke-width:1.6}
.case-gallery-toggle svg[hidden]{display:none}
.case-gallery-position{display:flex;gap:7px;align-items:baseline;font-size:14px;min-width:62px;color:#526b89;font-variant-numeric:tabular-nums}
.case-gallery-position b{font-size:18px;font-weight:500;color:#172a47}
.case-gallery-progress{width:96px;height:3px;overflow:hidden;border-radius:4px;background:#cedcee}
.case-gallery-progress i{display:block;width:100%;height:100%;border-radius:inherit;background:#426bb3;transform-origin:left;transform:scaleX(var(--playback-progress))}
.case-preview-caption{display:flex;justify-content:center;margin:20px 0 0}
.case-preview-caption .reference-link{font-size:14px;min-height:44px;margin:0}
.case-page .case-gallery-slide a:focus-visible{outline-offset:-6px;border-radius:8px}
@media(hover:hover) and (pointer:fine){.case-gallery-arrow:hover,.case-gallery-toggle:hover{background:#d4e5fc;border-color:#89abd9}}
.case-approach{padding:48px 0 0;position:relative}
.case-approach::before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,#c7d9ef 14%,#fff 48%,#b3cbe8 80%,transparent)}
.case-approach-intro{display:grid;grid-template-columns:1.2fr 1fr;gap:64px;align-items:end;margin-bottom:40px}
.case-approach-intro p{color:#425b7a;font-size:17px;line-height:1.8;margin:0;max-width:45ch}
.case-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:40px 48px;margin:0;padding:0;list-style:none}
.case-actions li{display:flex;gap:20px;align-items:start;min-width:0}
.case-action-icon{flex:0 0 60px;width:60px;height:60px}
.case-action-icon svg{width:52px;height:52px}
.case-actions h3{font-size:23px;line-height:1.35;font-weight:500;margin:5px 0 14px;letter-spacing:-.02em;text-wrap:balance}
.case-actions p{font-size:16px;line-height:1.8;margin:0;color:#425b7a;max-width:60ch}
.case-closing{position:relative;isolation:isolate;overflow:hidden;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:32px;align-items:center;padding:52px;border-radius:16px;background:#101d33;color:#f4f8ff;box-shadow:inset 0 1px 1px #d9eaff40,inset 0 -1px 2px #030b16,0 26px 40px -30px #203f7380;color-scheme:dark}
.case-closing::before{content:"";position:absolute;z-index:-1;width:120%;height:170%;right:-65%;top:-65%;border-radius:50%;background:linear-gradient(140deg,#80b5ef24,#2148b019 50%,#101d3300);box-shadow:inset 1px 0 1px #cde5ff21;transform:rotate(-24deg);pointer-events:none}
.case-closing::after{content:"";position:absolute;z-index:-2;inset:0;background:radial-gradient(ellipse at 95% 65%,#28549e40,transparent 64%);pointer-events:none}
.case-closing-copy{position:relative;z-index:1;min-width:0}
.case-closing h2{font-size:clamp(30px,3vw,40px);line-height:1.25;max-width:22ch}
.case-closing .highlight-glass-dark{position:relative;display:inline-block;isolation:isolate;font-family:DM,Arial,sans-serif;font-style:normal;font-weight:600;color:#edf4ff;line-height:1.1;padding:.04em .12em .10em;margin:.025em -.12em -.04em;border-radius:.12em;text-shadow:0 1px 2px #09132255}
.case-closing p{font-size:17px;line-height:1.8;color:#c3d5eb;margin:24px 0 0;max-width:44ch}
.case-closing .studio-primary{width:max-content;max-width:100%;margin-top:28px;font-size:14px}
.case-closing-visual{position:relative;min-width:0;margin:0 -32px 0 -6px}
.case-closing-visual img{display:block;width:100%;height:auto}
.case-page .site-footer::before{background:none}
.case-page .studio-primary:focus-visible{border-radius:12px}
.case-page .case-closing a:focus-visible{outline-color:#b9d7ff}
@media(max-width:1000px){.case-inner{padding:0 6%}.case-intro{display:block}.case-intro>div+div{margin-top:22px}.case-intro h1{font-size:46px}.case-hero-stage{max-width:800px}.case-story{gap:24px;grid-template-columns:repeat(2,minmax(0,1fr))}.case-story-result{grid-column:1/-1}.case-story-result p{max-width:75ch}.case-approach-intro{gap:32px}.case-actions{gap:32px}.case-actions li{display:block}.case-actions h3{margin-top:18px}.case-closing{padding:40px;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:20px}.case-closing h2{font-size:32px}.case-closing .studio-primary{font-size:13px;gap:10px}}
@media(max-width:700px){.case-main{padding-top:108px;padding-bottom:32px}.case-back{margin-bottom:20px}.case-intro{margin-bottom:20px}.case-intro h1{font-size:clamp(30px,8.5vw,36px);line-height:1.2;margin-bottom:18px}.case-intro .reference-highlight{white-space:nowrap}.case-intro p{font-size:16px}.case-hero-stage{margin-bottom:32px}.case-hero-stage .reference-result{width:55%;left:8%;bottom:1%;padding:14px 17px 12px}.case-hero-stage .reference-result-head>strong{font-size:32px}.case-story{grid-template-columns:1fr;gap:28px;margin-top:28px}.case-story-point{padding-top:0}.case-story-result{padding:22px}.case-story h2{font-size:23px;margin-bottom:14px}.case-story p{font-size:16px}.case-block{margin-top:48px;scroll-margin-top:100px}.case-block h2{font-size:31px}.case-block-heading{display:block;margin-bottom:28px}.case-block-heading p{font-size:15px}.case-preview-caption{justify-content:flex-start;margin-top:24px}.case-preview-caption .reference-link{font-size:13px}.case-approach{padding-top:32px}.case-approach-intro{display:block;margin-bottom:32px}.case-approach-intro p{font-size:16px;margin-top:18px;max-width:50ch}.case-actions{grid-template-columns:1fr;gap:32px}.case-actions li{display:flex;gap:18px}.case-action-icon{flex-basis:48px;width:48px;height:48px}.case-action-icon svg{width:44px;height:44px}.case-actions h3{font-size:21px;margin:4px 0 12px}.case-closing{display:flex;flex-direction:column;padding:28px 24px;gap:24px}.case-closing h2{font-size:30px;max-width:22ch}.case-closing p{font-size:16px;margin-top:20px}.case-closing .studio-primary{margin-top:24px;width:100%;font-size:12px;gap:8px}.case-closing-visual{margin:0;max-width:360px;width:100%}}
@media(prefers-reduced-motion:reduce){.reference-link svg,.case-gallery-arrow,.case-gallery-toggle,.case-gallery.is-enhanced .case-gallery-slide,.case-gallery.is-enhanced .case-gallery-slide.is-active{transition:none}}
@media(prefers-reduced-transparency:reduce){.reference-deister .reference-result,.case-deister .reference-result{background:#e8f4ed;-webkit-backdrop-filter:none;backdrop-filter:none}}
@media(prefers-reduced-transparency:reduce){.reference-result{background:#eaf2fb;-webkit-backdrop-filter:none;backdrop-filter:none}.reference-highlight::before{background:#e5effc}.case-story-result{background:#101d33}.case-action-icon::before,.case-story .reference-story-icon::before{background:#e9f2ff}.case-story-result .reference-story-icon::before{background:#203b61}}
@media(forced-colors:active){.references,.case-page,.case-main,.case-closing{color:CanvasText;background:Canvas}.references::before,.references::after,.case-main::before,.reference-studio,.reference-highlight::before,.reference-highlight::after,.reference-result::before,.case-story-result::before,.case-approach::before,.case-closing::before,.case-closing::after,.case-action-icon::before,.case-story .reference-story-icon::before{display:none}.reference-result,.reference-browser,.reference-browser-bar,.case-gallery-frame,.case-story-result,.case-closing{background:Canvas;border:1px solid CanvasText;box-shadow:none}.references p,.reference-company,.reference-company>strong,.reference-story h4,.reference-result small,.reference-result-head>strong,.reference-highlight,.case-page p,.case-actions p,.case-story-result strong,.case-story h2,.case-story .reference-story-icon,.case-action-icon{color:CanvasText}.reference-link,.case-back,.case-preview-caption a{color:LinkText}.references a:focus-visible,.case-page a:focus-visible,.case-page button:focus-visible,.case-page .case-closing a:focus-visible{outline-color:Highlight}}

@media(max-width:700px){.case-gallery-chrome{height:27px;padding:0 10px;font-size:9px}.case-gallery-controls{gap:12px;margin-top:14px}.case-gallery-navigation,.case-gallery-playback{gap:10px}.case-gallery-arrow,.case-gallery-toggle{flex-basis:44px;width:44px;height:44px}.case-gallery-position{font-size:12px;min-width:54px}.case-gallery-position b{font-size:16px}.case-gallery-progress{width:46px}.case-preview-caption{justify-content:center;margin-top:16px}}
@media(forced-colors:active){.case-gallery-arrow,.case-gallery-toggle{color:ButtonText;background:ButtonFace;border:1px solid ButtonText}.case-gallery-position,.case-gallery-position b{color:CanvasText}.case-gallery-progress i{background:Highlight}}

@media(forced-colors:active){.references .reference-story-result a:focus-visible{outline-color:Highlight}}
