.case-study-main{background-color:var(--bg-primary);padding-bottom:var(--section-space)}.case-study-container{max-width:860px;padding-top:clamp(1.5rem,1rem + 1.5vw,2.5rem)}.page-breadcrumb{display:flex;align-items:center;gap:var(--space-2);font-family:var(--font-family-mono);font-size:.8125rem;color:var(--text-secondary);margin-bottom:var(--space-6)}.breadcrumb-link{color:var(--text-secondary);text-decoration:none;transition:color var(--duration-fast) var(--ease-standard)}.breadcrumb-link:hover{color:var(--accent-solid)}.breadcrumb-sep{color:var(--border-strong)}.breadcrumb-item{color:var(--text-secondary)}.breadcrumb-current{color:var(--text-primary);font-weight:500}.case-study-header{margin-bottom:var(--space-8);border-bottom:1px solid var(--border-subtle);padding-bottom:var(--space-6)}.case-study-title{font-family:var(--font-family-serif);font-size:2rem;line-height:1.2;font-weight:500;letter-spacing:-.02em;color:var(--text-primary);margin:0}@media(min-width:768px){.case-study-title{font-size:2.5rem;line-height:1.15}}@media(min-width:1024px){.case-study-title{font-size:2.85rem;line-height:1.15}}.case-study-content{display:flex;flex-direction:column;gap:var(--space-6)}.case-study-section h2{font-family:var(--font-family-serif);font-size:1.5rem;line-height:1.25;font-weight:500;letter-spacing:-.02em;color:var(--text-primary);margin-top:var(--space-6);margin-bottom:var(--space-3)}@media(min-width:768px){.case-study-section h2{font-size:1.85rem}}.case-study-section h3{font-family:var(--font-family-sans);font-size:1.125rem;line-height:1.35;font-weight:600;color:var(--text-primary);margin-top:var(--space-6);margin-bottom:var(--space-3)}.case-study-section p{color:var(--text-primary);line-height:1.65;margin-bottom:var(--space-4)}.case-study-list{list-style:disc;padding-left:var(--space-5);margin-bottom:var(--space-5);display:flex;flex-direction:column;gap:var(--space-2)}.case-study-list li{color:var(--text-primary);line-height:1.6}.case-study-list li strong{color:var(--text-primary);font-weight:600}.case-study-diagram-frame{background-color:var(--bg-primary);border:1px solid var(--border-subtle);border-radius:var(--radius-xl);padding:var(--space-4);margin-block:var(--space-6);box-shadow:0 1px 3px #0000000a}.case-study-diagram-trigger{display:block;position:relative;width:100%;padding:0;margin:0;background:transparent;border:none;border-radius:var(--radius-lg);cursor:zoom-in;text-align:inherit;font:inherit;color:inherit;overflow:hidden}.case-study-diagram-trigger:focus-visible{outline:2px solid var(--focus-ring);outline-offset:3px}.case-study-diagram-img{width:100%;height:auto;display:block;border-radius:var(--radius-lg);transition:transform var(--duration-default) var(--ease-standard)}.case-study-diagram-trigger:hover .case-study-diagram-img{transform:scale(1.008)}.diagram-zoom-hint{position:absolute;right:var(--space-3);bottom:var(--space-3);display:inline-flex;align-items:center;gap:var(--space-1);background-color:#2c2c2ad9;color:#fff;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);padding:6px 12px;border-radius:var(--radius-full);font-family:var(--font-family-sans);font-size:.75rem;font-weight:500;line-height:1;pointer-events:none;opacity:.9;transition:opacity var(--duration-default) var(--ease-standard)}.case-study-diagram-trigger:hover .diagram-zoom-hint{opacity:1}.diagram-lightbox{position:fixed;inset:0;z-index:9999;display:flex;align-items:center;justify-content:center;padding:var(--space-4)}.diagram-lightbox[hidden]{display:none}.diagram-lightbox-backdrop{position:absolute;inset:0;background-color:#141413cc;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);cursor:zoom-out}.diagram-lightbox-container{position:relative;z-index:1;background-color:var(--bg-primary);border:1px solid var(--border-subtle);border-radius:var(--radius-xl);padding:var(--space-4);max-width:min(94vw,1360px);max-height:90vh;display:flex;flex-direction:column;box-shadow:0 24px 48px #00000047;animation:lightboxFadeIn var(--duration-default) var(--ease-standard);overflow:hidden}.diagram-lightbox-header{display:flex;justify-content:flex-end;margin-bottom:var(--space-2)}.diagram-lightbox-close{display:inline-flex;align-items:center;gap:var(--space-1);background-color:var(--surface);border:1px solid var(--border-subtle);color:var(--text-primary);border-radius:var(--radius-full);padding:6px 14px;font-family:var(--font-family-sans);font-size:.8125rem;font-weight:500;cursor:pointer;transition:background-color var(--duration-fast) var(--ease-standard),border-color var(--duration-fast) var(--ease-standard)}.diagram-lightbox-close:hover{background-color:var(--surface-hover);border-color:var(--border-strong)}.diagram-lightbox-close:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.diagram-lightbox-body{overflow:auto;max-height:calc(90vh - 64px);display:flex;justify-content:center;align-items:center;border-radius:var(--radius-lg);-webkit-overflow-scrolling:touch}.diagram-lightbox-img{width:100%;max-width:100%;height:auto;max-height:calc(90vh - 72px);object-fit:contain;display:block;border-radius:var(--radius-md)}@keyframes lightboxFadeIn{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:scale(1)}}@media(max-width:767px){.diagram-lightbox{padding:var(--space-2)}.diagram-lightbox-container{max-width:98vw;padding:var(--space-2)}.diagram-lightbox-img{min-width:580px}}.gated-area{position:relative;width:100%;margin-top:var(--space-6);overflow:hidden}.gated-content-container{padding-top:0}.protected-content{border-top:1px solid var(--border-subtle);padding-top:var(--space-6);transition:filter .26s ease,opacity .26s ease}.protected-content.is-locked{user-select:none;-webkit-user-select:none;pointer-events:none;min-height:520px;max-height:580px;overflow:hidden;opacity:.9}.progressive-blur{position:absolute;inset:0;width:100%;pointer-events:none;z-index:5}.blur-layer{position:absolute;inset:0;width:100%;pointer-events:none}.blur-layer-1{backdrop-filter:blur(1.5px);-webkit-backdrop-filter:blur(1.5px);mask-image:linear-gradient(to bottom,#0000,#000 15%);-webkit-mask-image:linear-gradient(to bottom,rgba(0,0,0,0) 0%,rgba(0,0,0,1) 15%)}.blur-layer-2{backdrop-filter:blur(3.5px);-webkit-backdrop-filter:blur(3.5px);mask-image:linear-gradient(to bottom,#0000 10%,#000 35%);-webkit-mask-image:linear-gradient(to bottom,rgba(0,0,0,0) 10%,rgba(0,0,0,1) 35%)}.blur-layer-3{backdrop-filter:blur(7px);-webkit-backdrop-filter:blur(7px);mask-image:linear-gradient(to bottom,#0000 25%,#000 55%);-webkit-mask-image:linear-gradient(to bottom,rgba(0,0,0,0) 25%,rgba(0,0,0,1) 55%)}.blur-layer-4{backdrop-filter:blur(11px);-webkit-backdrop-filter:blur(11px);mask-image:linear-gradient(to bottom,#0000 45%,#000001 75%);-webkit-mask-image:linear-gradient(to bottom,rgba(0,0,0,0) 45%,rgba(0,0,1) 75%)}.blur-layer-5{backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);mask-image:linear-gradient(to bottom,#0000 65%,#000);-webkit-mask-image:linear-gradient(to bottom,rgba(0,0,0,0) 65%,rgba(0,0,0,1) 100%)}.case-study-placeholder-area{pointer-events:none;user-select:none}.skeleton-lines{display:flex;flex-direction:column;gap:var(--space-2);margin:var(--space-4) 0}.skeleton-bar{height:14px;background:linear-gradient(90deg,var(--surface) 25%,var(--surface-hover) 50%,var(--surface) 75%);background-size:200% 100%;animation:skeletonShimmer 2.2s infinite ease-in-out;border-radius:var(--radius-sm)}.skeleton-diagram-placeholder{height:180px;width:100%;background:linear-gradient(90deg,var(--surface) 25%,var(--surface-hover) 50%,var(--surface) 75%);background-size:200% 100%;animation:skeletonShimmer 2.2s infinite ease-in-out;border-radius:var(--radius-lg);margin-block:var(--space-4)}@keyframes skeletonShimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.gate-overlay{position:absolute;inset:0;z-index:10;display:flex;align-items:center;justify-content:center;padding:var(--space-4)}.gate-card{background-color:var(--bg-primary);border:1px solid var(--border-subtle);border-radius:var(--radius-xl);padding:clamp(1.5rem,1.25rem + 1vw,2.25rem);max-width:480px;width:100%;box-shadow:0 16px 36px #0000001f,0 2px 6px #0000000a;text-align:left;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.gate-title{font-family:var(--font-family-serif);font-size:1.45rem;line-height:1.25;font-weight:500;letter-spacing:-.015em;color:var(--text-primary);margin:0 0 var(--space-4)}.unlock-form,.form-grid{display:flex;flex-direction:column;gap:var(--space-3)}.form-group{display:flex;flex-direction:column;gap:var(--space-1)}.form-label{font-family:var(--font-family-sans);font-size:.8125rem;font-weight:500;color:var(--text-primary)}.form-input{font-family:var(--font-family-sans);font-size:.9375rem;padding:10px 14px;border:1px solid var(--border-subtle);border-radius:var(--radius-md);background-color:var(--surface);color:var(--text-primary);transition:border-color var(--duration-fast) var(--ease-standard),box-shadow var(--duration-fast) var(--ease-standard)}.form-input:focus{outline:none;border-color:var(--accent-solid);box-shadow:0 0 0 3px #185fa526}.gate-submit-btn{width:100%;margin-top:var(--space-2);justify-content:center}.gate-submit-btn[aria-busy=true]{opacity:.7;pointer-events:none}.gate-error-message{font-family:var(--font-family-sans);font-size:.8125rem;color:#c0392b;line-height:1.4;margin-top:var(--space-1);background-color:#c0392b14;border:1px solid rgba(192,57,43,.2);border-radius:var(--radius-sm);padding:8px 12px}.evaluation-section{background-color:var(--surface);border:1px solid var(--border-subtle);border-radius:var(--radius-xl);padding:clamp(1.5rem,1.25rem + 1.2vw,2.5rem);margin-top:var(--space-8)}.evaluation-actions{margin-top:var(--space-4)}html.case-study-unlocked .progressive-blur,html.case-study-unlocked .gate-overlay{display:none!important}html.case-study-unlocked .protected-content.is-locked{user-select:auto;-webkit-user-select:auto;pointer-events:auto;min-height:0;max-height:none;overflow:visible;opacity:1}
