.Lightbox-module__78wArW__overlay{z-index:1000;background-color:#000000d9;justify-content:center;align-items:center;padding:40px;animation:.2s Lightbox-module__78wArW__fadeIn;display:flex;position:fixed;inset:0}@keyframes Lightbox-module__78wArW__fadeIn{0%{opacity:0}to{opacity:1}}.Lightbox-module__78wArW__image{object-fit:contain;transform-origin:50%;cursor:zoom-in;touch-action:pan-x pan-y;border-radius:8px;max-width:100%;max-height:100%;transition:transform .2s;animation:.2s Lightbox-module__78wArW__scaleIn}.Lightbox-module__78wArW__imageZoomed{cursor:grab;touch-action:none;transition:none}.Lightbox-module__78wArW__imageZoomed:active{cursor:grabbing}@keyframes Lightbox-module__78wArW__scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.Lightbox-module__78wArW__close{color:#fff;z-index:1001;background:#ffffff1a;border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;transition:background .2s;display:flex;position:absolute;top:20px;right:20px}.Lightbox-module__78wArW__close:hover{background:#ffffff40}.Lightbox-module__78wArW__close svg{width:20px;height:20px}.Lightbox-module__78wArW__imageLightBg{background:#fff;border-radius:12px;padding:16px}
.CaseStudy-module__91nsqW__page{padding-top:var(--space-7)}.CaseStudy-module__91nsqW__page.CaseStudy-module__91nsqW__dark{color:#f0f0f0;background-color:#0d1117}.CaseStudy-module__91nsqW__inner{max-width:var(--max-width);padding:0 var(--space-5);margin:0 auto}@media (min-width:768px){.CaseStudy-module__91nsqW__inner{padding:0 var(--space-7)}}@media (min-width:1024px){.CaseStudy-module__91nsqW__inner{padding:0 var(--space-8)}}.CaseStudy-module__91nsqW__meta{align-items:center;gap:var(--space-2);margin-bottom:var(--space-3);color:var(--text-tertiary);font-size:14px;display:flex}.CaseStudy-module__91nsqW__page.CaseStudy-module__91nsqW__dark .CaseStudy-module__91nsqW__meta{color:#8b949e}.CaseStudy-module__91nsqW__metaCompany{text-transform:uppercase;letter-spacing:.05em;font-weight:600}.CaseStudy-module__91nsqW__metaDot{opacity:.4}.CaseStudy-module__91nsqW__title{color:var(--text-primary);margin-bottom:var(--space-4);max-width:800px;font-family:Instrument Serif,serif;font-size:clamp(24px,3.5vw,36px);font-weight:400;line-height:1.2}.CaseStudy-module__91nsqW__page.CaseStudy-module__91nsqW__dark .CaseStudy-module__91nsqW__title{color:#f0f0f0}.CaseStudy-module__91nsqW__intro{color:var(--text-secondary);margin-bottom:var(--space-6);max-width:760px;font-family:DM Sans,sans-serif;font-size:15px;line-height:1.75}.CaseStudy-module__91nsqW__page.CaseStudy-module__91nsqW__dark .CaseStudy-module__91nsqW__intro{color:#c9d1d9}.CaseStudy-module__91nsqW__cover{margin-bottom:var(--space-7);border-radius:var(--radius-lg);background-color:var(--bg-secondary);overflow:hidden}.CaseStudy-module__91nsqW__heroLabel{letter-spacing:.15em;text-transform:uppercase;text-align:center;color:var(--text-tertiary,#9ca3af);margin-bottom:var(--space-2);font-size:.75rem;font-weight:700}.CaseStudy-module__91nsqW__heroGrid{gap:var(--space-4);margin-bottom:var(--space-7);grid-template-columns:1fr 1fr;display:grid}@media (max-width:768px){.CaseStudy-module__91nsqW__heroGrid{grid-template-columns:1fr}}.CaseStudy-module__91nsqW__gifMatchHeight{aspect-ratio:16/9;border-radius:var(--radius-md,12px);overflow:hidden}.CaseStudy-module__91nsqW__gifMatchHeight img{object-fit:cover;object-position:top;width:100%;height:100%}.CaseStudy-module__91nsqW__page.CaseStudy-module__91nsqW__dark .CaseStudy-module__91nsqW__cover{background-color:#161b22}.CaseStudy-module__91nsqW__cover img{width:100%;height:auto}.CaseStudy-module__91nsqW__embedWrapper{width:100%;height:0;padding-bottom:56.25%;position:relative;overflow:hidden}.CaseStudy-module__91nsqW__embedIframe{border-radius:var(--radius-md);border:0;width:100%;height:100%;position:absolute;top:0;left:0}.CaseStudy-module__91nsqW__embedLink{text-decoration:none;display:block}.CaseStudy-module__91nsqW__section{margin-bottom:var(--space-7)}.CaseStudy-module__91nsqW__label{letter-spacing:.1em;text-transform:uppercase;color:var(--text-tertiary);margin-bottom:var(--space-2);font-size:12px;font-weight:600}.CaseStudy-module__91nsqW__page.CaseStudy-module__91nsqW__dark .CaseStudy-module__91nsqW__label{color:#58a6ff}.CaseStudy-module__91nsqW__heading{color:var(--text-primary);margin-bottom:var(--space-3);font-family:Instrument Serif,serif;font-size:clamp(20px,2.5vw,26px);font-weight:400;line-height:1.3}.CaseStudy-module__91nsqW__page.CaseStudy-module__91nsqW__dark .CaseStudy-module__91nsqW__heading{color:#f0f0f0}.CaseStudy-module__91nsqW__body{color:var(--text-secondary);margin-bottom:var(--space-3);font-family:DM Sans,sans-serif;font-size:15px;line-height:1.75}.CaseStudy-module__91nsqW__page.CaseStudy-module__91nsqW__dark .CaseStudy-module__91nsqW__body{color:#c9d1d9}.CaseStudy-module__91nsqW__subtitle{color:var(--text-primary);margin-bottom:var(--space-1);margin-top:var(--space-3);font-family:DM Sans,sans-serif;font-size:15px;font-weight:600;line-height:1.4}.CaseStudy-module__91nsqW__page.CaseStudy-module__91nsqW__dark .CaseStudy-module__91nsqW__subtitle{color:#f0f0f0}.CaseStudy-module__91nsqW__bullets{padding-left:var(--space-5);margin:var(--space-2) 0 var(--space-4);list-style:outside}.CaseStudy-module__91nsqW__bullets li{color:var(--text-secondary);margin-bottom:var(--space-2);font-size:15px;line-height:1.7}.CaseStudy-module__91nsqW__page.CaseStudy-module__91nsqW__dark .CaseStudy-module__91nsqW__bullets li{color:#c9d1d9}.CaseStudy-module__91nsqW__row{gap:var(--space-5);margin-bottom:var(--space-7);grid-template-columns:1fr;align-items:center;display:grid}@media (min-width:768px){.CaseStudy-module__91nsqW__row{gap:var(--space-6);grid-template-columns:1fr 1fr}.CaseStudy-module__91nsqW__row55{grid-template-columns:55% 1fr}.CaseStudy-module__91nsqW__row50{grid-template-columns:1fr 1fr}.CaseStudy-module__91nsqW__row45{grid-template-columns:45% 1fr}.CaseStudy-module__91nsqW__row60{grid-template-columns:60% 1fr}.CaseStudy-module__91nsqW__row40{grid-template-columns:40% 1fr}}.CaseStudy-module__91nsqW__imgStack{gap:var(--space-4);flex-direction:column;display:flex}.CaseStudy-module__91nsqW__rowText{flex-direction:column;justify-content:center;display:flex}.CaseStudy-module__91nsqW__grid2{gap:var(--space-4);margin-bottom:var(--space-4);grid-template-columns:1fr;display:grid}@media (min-width:768px){.CaseStudy-module__91nsqW__grid2{grid-template-columns:repeat(2,1fr)}}.CaseStudy-module__91nsqW__grid3{gap:var(--space-4);margin-bottom:var(--space-5);grid-template-columns:1fr;display:grid}@media (min-width:768px){.CaseStudy-module__91nsqW__grid3{grid-template-columns:repeat(3,1fr)}}.CaseStudy-module__91nsqW__grid4{gap:var(--space-4);margin-bottom:var(--space-5);grid-template-columns:repeat(2,1fr);display:grid}@media (min-width:768px){.CaseStudy-module__91nsqW__grid4{grid-template-columns:repeat(4,1fr)}}.CaseStudy-module__91nsqW__img{background-color:var(--bg-card);border-radius:var(--radius-lg);padding:var(--space-3);box-shadow:var(--shadow-sm);transition:box-shadow var(--transition-base);position:relative;overflow:hidden}.CaseStudy-module__91nsqW__img:hover{box-shadow:var(--shadow-md)}.CaseStudy-module__91nsqW__page.CaseStudy-module__91nsqW__dark .CaseStudy-module__91nsqW__img{background-color:#161b22;box-shadow:0 1px 4px #0000004d}.CaseStudy-module__91nsqW__page.CaseStudy-module__91nsqW__dark .CaseStudy-module__91nsqW__img.CaseStudy-module__91nsqW__lightBg{background-color:#fff}@media (prefers-color-scheme:dark){.CaseStudy-module__91nsqW__img.CaseStudy-module__91nsqW__lightBg{background-color:#fff}}.CaseStudy-module__91nsqW__img img{border-radius:var(--radius-md);width:100%;height:auto}.CaseStudy-module__91nsqW__imgFull{box-shadow:none;margin-bottom:var(--space-5);background:0 0;border-radius:0;padding:0}.CaseStudy-module__91nsqW__imgFull:hover{box-shadow:none}.CaseStudy-module__91nsqW__imgFull img{border-radius:var(--radius-lg)}.CaseStudy-module__91nsqW__imgClickable:hover{opacity:.92;transition:opacity .2s}.CaseStudy-module__91nsqW__page.CaseStudy-module__91nsqW__dark .CaseStudy-module__91nsqW__imgFull{box-shadow:none;background:0 0}.CaseStudy-module__91nsqW__imgFlush{box-shadow:none;margin-bottom:var(--space-5);background:0 0;border-radius:0;padding:0}.CaseStudy-module__91nsqW__imgFlush:hover{box-shadow:none}.CaseStudy-module__91nsqW__imgFlush img{border-radius:0}.CaseStudy-module__91nsqW__page.CaseStudy-module__91nsqW__dark .CaseStudy-module__91nsqW__imgFlush{box-shadow:none;background:0 0}.CaseStudy-module__91nsqW__painGrid{grid-template-columns:1fr 1fr;gap:12px;display:grid}@media (max-width:767px){.CaseStudy-module__91nsqW__painGrid{grid-template-columns:1fr}}.CaseStudy-module__91nsqW__painCard{background:#fff;border:1px solid #e8e8e8;border-left:3px solid #e74c3c;border-radius:8px;flex-direction:column;gap:8px;padding:16px;display:flex}.CaseStudy-module__91nsqW__painTitle{color:#1a1a1a;margin:0;font-size:13px;font-weight:700;line-height:1.3}.CaseStudy-module__91nsqW__painDesc{color:#555;margin:0;font-size:11px;line-height:1.45}.CaseStudy-module__91nsqW__painQuote{color:#555;border-left:2px solid #eee;margin:4px 0 0;padding-left:10px;font-size:11px;font-style:italic;line-height:1.45}.CaseStudy-module__91nsqW__painBadge{color:#fff;background:#e74c3c;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:26px;height:26px;font-size:13px;font-weight:700;display:inline-flex}.CaseStudy-module__91nsqW__painTags{flex-wrap:wrap;gap:4px;display:flex}.CaseStudy-module__91nsqW__painTag{color:#c0392b;background:#fdeaea;border-radius:4px;padding:2px 8px;font-size:10px;font-weight:500}.CaseStudy-module__91nsqW__beforeAfter{margin-bottom:var(--space-5)}.CaseStudy-module__91nsqW__beforeAfterHeader{gap:var(--space-4);margin-bottom:var(--space-4);grid-template-columns:1fr 1fr;display:grid}.CaseStudy-module__91nsqW__solutionGrid{grid-template-columns:1fr 1fr;gap:12px;display:grid}@media (max-width:767px){.CaseStudy-module__91nsqW__solutionGrid{grid-template-columns:1fr}}.CaseStudy-module__91nsqW__solutionCard{background:#fff;border:1px solid #e0e8e0;border-left:3px solid #27ae60;border-radius:8px;flex-direction:column;gap:8px;padding:16px;display:flex}.CaseStudy-module__91nsqW__solutionBadge{color:#fff;background:#27ae60;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:26px;height:26px;font-size:13px;font-weight:700;display:inline-flex}.CaseStudy-module__91nsqW__solutionTag{color:#1b7a3d;background:#e8f5e9;border-radius:4px;padding:2px 8px;font-size:10px;font-weight:500}[data-theme=dark] .CaseStudy-module__91nsqW__painCard{background:#161b22;border-color:#30363d #30363d #30363d #e74c3c}[data-theme=dark] .CaseStudy-module__91nsqW__painTitle{color:#f0f0f0}[data-theme=dark] .CaseStudy-module__91nsqW__painDesc{color:#8b949e}[data-theme=dark] .CaseStudy-module__91nsqW__painQuote{color:#8b949e;border-left-color:#30363d}[data-theme=dark] .CaseStudy-module__91nsqW__painTag{color:#f87171;background:#3d1a1a}[data-theme=dark] .CaseStudy-module__91nsqW__solutionCard{background:#161b22;border-color:#30363d #30363d #30363d #27ae60}[data-theme=dark] .CaseStudy-module__91nsqW__solutionTag{color:#4ade80;background:#1a3d2a}.CaseStudy-module__91nsqW__beforeAfterLabel{letter-spacing:.12em;text-transform:uppercase;text-align:center;color:var(--text-primary);font-size:14px;font-weight:700}.CaseStudy-module__91nsqW__page.CaseStudy-module__91nsqW__dark .CaseStudy-module__91nsqW__beforeAfterLabel{color:#f0f0f0}.CaseStudy-module__91nsqW__beforeAfterRow{gap:var(--space-4);margin-bottom:var(--space-4);grid-template-columns:1fr 1fr;display:grid}.CaseStudy-module__91nsqW__beforeAfterRow:last-child{margin-bottom:0}.CaseStudy-module__91nsqW__beforeAfterHero{gap:var(--space-4);margin-bottom:var(--space-4);grid-template-columns:60% 1fr;align-items:center;display:grid}@media (max-width:767px){.CaseStudy-module__91nsqW__beforeAfterHero{grid-template-columns:1fr}}.CaseStudy-module__91nsqW__beforeFaded{opacity:.6;filter:saturate(.3);transition:opacity .3s,filter .3s}.CaseStudy-module__91nsqW__beforeFaded:hover{opacity:1;filter:saturate()}.CaseStudy-module__91nsqW__sectionDivider{border:none;border-top:1px solid var(--border);margin:var(--space-7) auto;opacity:.5;width:100%}.CaseStudy-module__91nsqW__beforeBadge,.CaseStudy-module__91nsqW__afterBadge{top:calc(var(--space-3) + 8px);left:calc(var(--space-3) + 8px);letter-spacing:.08em;text-transform:uppercase;z-index:2;pointer-events:none;border-radius:6px;padding:4px 10px;font-size:11px;font-weight:600;line-height:1.4;position:absolute}.CaseStudy-module__91nsqW__beforeBadge{color:#fff;background:#b43232b3}.CaseStudy-module__91nsqW__afterBadge{color:#fff;background:#27ae60b3}.CaseStudy-module__91nsqW__imgBadge{top:calc(var(--space-3) + 8px);left:calc(var(--space-3) + 8px);letter-spacing:.08em;text-transform:uppercase;z-index:2;pointer-events:none;color:#ffffffe6;background:#00000080;border-radius:6px;padding:4px 10px;font-size:11px;font-weight:600;line-height:1.4;position:absolute}.CaseStudy-module__91nsqW__caption{color:var(--text-tertiary);text-align:center;margin-top:var(--space-2);font-size:13px;line-height:1.5}.CaseStudy-module__91nsqW__page.CaseStudy-module__91nsqW__dark .CaseStudy-module__91nsqW__caption{color:#6e7681}.CaseStudy-module__91nsqW__stats{gap:var(--space-3);margin:var(--space-5) 0 var(--space-6);grid-template-columns:repeat(2,1fr);max-width:60%;display:grid}.CaseStudy-module__91nsqW__stat{background-color:var(--bg-card);border-radius:var(--radius-md);padding:var(--space-4);align-items:center;gap:var(--space-2);display:flex}.CaseStudy-module__91nsqW__page.CaseStudy-module__91nsqW__dark .CaseStudy-module__91nsqW__stat{background-color:#161b22}.CaseStudy-module__91nsqW__statValue{color:var(--text-secondary);flex-shrink:0;font-family:DM Sans,sans-serif;font-size:clamp(18px,2vw,22px);font-weight:500;line-height:1}.CaseStudy-module__91nsqW__page.CaseStudy-module__91nsqW__dark .CaseStudy-module__91nsqW__statValue{color:#c9d1d9}.CaseStudy-module__91nsqW__statLabel{color:var(--text-secondary);padding-top:2px;font-family:DM Sans,sans-serif;font-size:13px;line-height:1.3}.CaseStudy-module__91nsqW__page.CaseStudy-module__91nsqW__dark .CaseStudy-module__91nsqW__statLabel{color:#8b949e}.CaseStudy-module__91nsqW__highlight{background-color:var(--bg-secondary);border-left:3px solid var(--accent);border-radius:0 var(--radius-md) var(--radius-md) 0;padding:var(--space-4);margin:var(--space-4) 0}.CaseStudy-module__91nsqW__highlight p{color:var(--text-secondary);font-size:15px;font-style:italic;line-height:1.7}.CaseStudy-module__91nsqW__page.CaseStudy-module__91nsqW__dark .CaseStudy-module__91nsqW__highlight{background-color:#161b22;border-left-color:#58a6ff}.CaseStudy-module__91nsqW__page.CaseStudy-module__91nsqW__dark .CaseStudy-module__91nsqW__highlight p{color:#c9d1d9}.CaseStudy-module__91nsqW__nav{padding:var(--space-6) 0;margin-top:var(--space-6);justify-content:space-between;align-items:center;display:flex}.CaseStudy-module__91nsqW__navLink{color:var(--text-primary);transition:color var(--transition-fast);align-items:center;gap:6px;font-family:DM Sans,sans-serif;font-size:15px;font-weight:500;text-decoration:none;display:inline-flex}.CaseStudy-module__91nsqW__navLink:hover{color:var(--accent)}.CaseStudy-module__91nsqW__navLink svg{transition:transform var(--transition-fast)}.CaseStudy-module__91nsqW__navLink:hover svg{transform:translate(-3px)}.CaseStudy-module__91nsqW__navLink:last-child:hover svg{transform:translate(3px)}.CaseStudy-module__91nsqW__linkButton{margin-top:var(--space-3);color:var(--text-primary);text-underline-offset:3px;transition:color var(--transition-fast);font-family:DM Sans,sans-serif;font-size:15px;font-weight:500;text-decoration:underline;display:inline-block}.CaseStudy-module__91nsqW__linkButton:hover{color:var(--accent)}.CaseStudy-module__91nsqW__page.CaseStudy-module__91nsqW__dark .CaseStudy-module__91nsqW__navLink{color:#f0f0f0}.CaseStudy-module__91nsqW__simpleImageStack{gap:var(--space-4);margin-top:var(--space-6);flex-direction:column;display:flex}.CaseStudy-module__91nsqW__illustrationGrid{gap:var(--space-3);margin-top:var(--space-6);grid-template-columns:1fr;display:grid}.CaseStudy-module__91nsqW__illustrationGrid .CaseStudy-module__91nsqW__img{border-radius:var(--radius-md);justify-content:center;align-items:center;display:flex;overflow:hidden}.CaseStudy-module__91nsqW__illustrationGrid .CaseStudy-module__91nsqW__img img{object-fit:contain}@media (min-width:640px){.CaseStudy-module__91nsqW__illustrationGrid{grid-template-columns:repeat(2,1fr)}}@media (min-width:1024px){.CaseStudy-module__91nsqW__illustrationGrid{grid-template-columns:repeat(3,1fr)}}.CaseStudy-module__91nsqW__sketchbookGrid{gap:var(--space-3);margin-top:var(--space-6);grid-template-columns:1fr;display:grid}@media (min-width:640px){.CaseStudy-module__91nsqW__sketchbookGrid{grid-template-columns:repeat(2,1fr)}}
