.CaseStudy-module__zZca6a__snapContainer{height:calc(100vh - var(--header-height) - var(--footer-height));scroll-snap-type:y mandatory;scroll-behavior:smooth;-webkit-overflow-scrolling:touch;overflow:hidden auto}.CaseStudy-module__zZca6a__snapSection{scroll-snap-align:start;min-height:calc(100vh - var(--header-height) - var(--footer-height));flex-direction:column;justify-content:center;display:flex}.CaseStudy-module__zZca6a__hero{min-height:calc(100vh - var(--header-height) - var(--footer-height));padding:var(--space-4xl)clamp(var(--space-lg),8vw,10rem);padding-top:var(--space-2xl);flex-direction:column;justify-content:center;display:flex;position:relative;overflow:hidden}.CaseStudy-module__zZca6a__heroDecoration{background:var(--color-accent);opacity:.06;filter:blur(100px);pointer-events:none;border-radius:50%;width:600px;height:600px;position:absolute;top:-10%;right:-15%}.CaseStudy-module__zZca6a__backLink{align-items:center;gap:var(--space-sm);font-size:var(--text-sm);color:var(--color-text-muted);margin-bottom:var(--space-2xl);transition:color var(--transition-fast);font-weight:500;display:inline-flex}.CaseStudy-module__zZca6a__backLink:hover{color:var(--color-accent)}.CaseStudy-module__zZca6a__heroLabel{font-size:var(--text-sm);text-transform:uppercase;letter-spacing:.1em;color:var(--color-accent);margin-bottom:var(--space-md);font-weight:600;display:inline-block}.CaseStudy-module__zZca6a__heroTitle{color:var(--color-text);letter-spacing:-.03em;margin-bottom:var(--space-lg);font-size:clamp(2.5rem,5vw,5rem);font-weight:900;line-height:1.05}.CaseStudy-module__zZca6a__heroTagline{font-size:var(--text-xl);color:var(--color-text-secondary);margin-bottom:var(--space-xl);line-height:1.6}.CaseStudy-module__zZca6a__heroMeta{align-items:center;gap:var(--space-lg);margin-bottom:var(--space-xl);flex-wrap:wrap;display:flex}.CaseStudy-module__zZca6a__heroMetaItem{align-items:center;gap:var(--space-sm);font-size:var(--text-sm);color:var(--color-text-muted);font-weight:500;display:flex}.CaseStudy-module__zZca6a__heroMetaIcon{color:var(--color-accent);font-size:var(--text-base)}.CaseStudy-module__zZca6a__heroTags{gap:var(--space-sm);margin-bottom:var(--space-xl);flex-wrap:wrap;display:flex}.CaseStudy-module__zZca6a__heroTag{font-size:var(--text-xs);background:var(--color-accent-light);color:var(--color-accent);border-radius:var(--radius-full);letter-spacing:.02em;padding:6px 14px;font-weight:600}.CaseStudy-module__zZca6a__heroLinks{gap:var(--space-md);margin-bottom:var(--space-xl);display:flex}.CaseStudy-module__zZca6a__section{padding:var(--space-4xl)clamp(var(--space-lg),8vw,10rem);gap:var(--space-2xl)}.CaseStudy-module__zZca6a__sectionAlt{background:var(--color-bg-alt)}.CaseStudy-module__zZca6a__overviewGrid{gap:var(--space-xl);grid-template-columns:1fr;max-width:100%;display:grid}.CaseStudy-module__zZca6a__overviewText{font-size:var(--text-lg);color:var(--color-text-secondary);line-height:1.8}.CaseStudy-module__zZca6a__featureLoopWrapper{width:100%;position:relative}.CaseStudy-module__zZca6a__featuresGrid{gap:var(--space-lg);grid-template-columns:repeat(auto-fill,minmax(320px,1fr));display:grid}.CaseStudy-module__zZca6a__featureCard{gap:var(--space-md);padding:var(--space-xl);background:var(--color-card-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);transition:border-color var(--transition-fast),transform var(--transition-fast),box-shadow var(--transition-fast);flex-direction:column;display:flex}.CaseStudy-module__zZca6a__featureCard:hover{border-color:var(--color-accent);box-shadow:var(--shadow-md);transform:translateY(-4px)}.CaseStudy-module__zZca6a__featureIconRow{align-items:center;gap:var(--space-md);display:flex}.CaseStudy-module__zZca6a__featureIcon{font-size:var(--text-2xl);flex-shrink:0}.CaseStudy-module__zZca6a__featureTitle{font-size:var(--text-lg);color:var(--color-text);font-weight:700}.CaseStudy-module__zZca6a__featureDesc{font-size:var(--text-sm);color:var(--color-text-secondary);line-height:1.7}.CaseStudy-module__zZca6a__galleryLoopWrapper{width:100%;position:relative}.CaseStudy-module__zZca6a__galleryCard{border-radius:var(--radius-lg);background:var(--color-card-bg);border:1px solid var(--color-border);flex-shrink:0;width:480px;height:300px;overflow:hidden}.CaseStudy-module__zZca6a__galleryImage{object-fit:cover;width:100%;height:100%;display:block}.CaseStudy-module__zZca6a__learningsGrid{gap:var(--space-lg);grid-template-columns:repeat(auto-fill,minmax(320px,1fr));display:grid}.CaseStudy-module__zZca6a__learningCard{align-items:flex-start;gap:var(--space-md);padding:var(--space-lg)var(--space-xl);border-left:3px solid var(--color-accent);background:var(--color-card-bg);border-radius:0 var(--radius-md)var(--radius-md)0;display:flex}.CaseStudy-module__zZca6a__learningNumber{font-size:var(--text-2xl);color:var(--color-accent);opacity:.4;flex-shrink:0;min-width:28px;font-weight:900;line-height:1}.CaseStudy-module__zZca6a__learningText{font-size:var(--text-base);color:var(--color-text-secondary);line-height:1.7}.CaseStudy-module__zZca6a__projectNav{gap:var(--space-xl);padding:var(--space-3xl)clamp(var(--space-lg),8vw,10rem);border-top:1px solid var(--color-border);grid-template-columns:1fr 1fr;display:grid}.CaseStudy-module__zZca6a__projectNavLink{gap:var(--space-xs);padding:var(--space-lg);border-radius:var(--radius-md);transition:background var(--transition-fast);flex-direction:column;text-decoration:none;display:flex}.CaseStudy-module__zZca6a__projectNavLink:hover{background:var(--color-accent-light)}.CaseStudy-module__zZca6a__projectNavLinkNext{text-align:right;margin-left:auto}.CaseStudy-module__zZca6a__projectNavLabel{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.1em;color:var(--color-accent);font-weight:600}.CaseStudy-module__zZca6a__projectNavTitle{font-size:var(--text-xl);color:var(--color-text);transition:color var(--transition-fast);font-weight:700}.CaseStudy-module__zZca6a__projectNavLink:hover .CaseStudy-module__zZca6a__projectNavTitle{color:var(--color-accent)}@media (max-width:1024px){.CaseStudy-module__zZca6a__hero{min-height:auto;padding-top:var(--space-2xl);padding-bottom:var(--space-2xl)}.CaseStudy-module__zZca6a__snapSection{min-height:auto}.CaseStudy-module__zZca6a__snapContainer{scroll-snap-type:none;overflow-y:auto}.CaseStudy-module__zZca6a__featuresGrid,.CaseStudy-module__zZca6a__learningsGrid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}}@media (max-width:768px){.CaseStudy-module__zZca6a__hero{padding:var(--space-xl)var(--space-lg)}.CaseStudy-module__zZca6a__heroTitle{font-size:clamp(2rem,6vw,3rem)}.CaseStudy-module__zZca6a__heroTagline{font-size:var(--text-lg)}.CaseStudy-module__zZca6a__section{padding:var(--space-2xl)var(--space-lg)}.CaseStudy-module__zZca6a__featuresGrid,.CaseStudy-module__zZca6a__learningsGrid{grid-template-columns:1fr}.CaseStudy-module__zZca6a__heroLinks{flex-direction:column}.CaseStudy-module__zZca6a__projectNav{padding-left:var(--space-lg);padding-right:var(--space-lg);grid-template-columns:1fr}.CaseStudy-module__zZca6a__projectNavLinkNext{text-align:left}.CaseStudy-module__zZca6a__overviewText{font-size:var(--text-base)}.CaseStudy-module__zZca6a__heroDecoration{width:300px;height:300px}.CaseStudy-module__zZca6a__galleryCard{width:340px;height:220px}}@media (max-width:480px){.CaseStudy-module__zZca6a__hero{padding:var(--space-lg)var(--space-md)}.CaseStudy-module__zZca6a__heroTitle{font-size:clamp(1.5rem,7vw,2.5rem)}.CaseStudy-module__zZca6a__section,.CaseStudy-module__zZca6a__projectNav{padding:var(--space-xl)var(--space-md)}.CaseStudy-module__zZca6a__featureCard{padding:var(--space-lg)}.CaseStudy-module__zZca6a__heroDecoration{width:200px;height:200px}}
