.case-studies-page{background:var(--color-surface);min-height:100vh}.case-studies-hero{border-bottom:1px solid var(--color-border);margin:0 auto;max-width:1280px;padding:64px 24px 32px}.case-studies-hero__label{color:var(--color-text-muted);font-size:11px;font-weight:500;letter-spacing:.1em;margin:0 0 12px;text-transform:uppercase}.case-studies-hero__title{color:var(--color-text-heading);font-size:clamp(32px,4vw,48px);font-weight:700;letter-spacing:-.02em;line-height:1.1;margin:0 0 8px}.case-studies-hero__count{color:var(--color-text-secondary);font-size:15px;margin:0}.case-studies-grid{display:grid;gap:28px;grid-template-columns:repeat(2,1fr);margin:0 auto;max-width:1280px;padding:32px 24px 96px}.case-studies-empty{color:var(--color-text-secondary);font-size:16px;margin:0 auto;max-width:1280px;padding:64px 24px}.case-study-card{background:#fff;border-radius:12px;box-shadow:0 1px 2px #0000000f,0 4px 16px #00000014;color:inherit;cursor:pointer;display:flex;flex-direction:column;overflow:hidden;text-decoration:none;transition:box-shadow .25s ease,transform .25s ease}.case-study-card:hover{box-shadow:0 4px 8px #00000014,0 16px 40px #00000024;transform:translateY(-4px)}.case-study-card:hover .case-study-card__img{transform:scale(1.04)}.case-study-card__img-wrap{background:var(--color-surface-alt);flex-shrink:0;height:300px;overflow:hidden;position:relative;width:100%}.case-study-card__img{display:block;height:100%;inset:0;object-fit:cover;object-position:center top;position:absolute;transition:transform .4s ease;width:100%}.case-study-card__body{display:flex;flex:1;flex-direction:column;gap:4px;padding:18px 20px 20px}.case-study-card__title{color:var(--color-text-heading);font-size:20px;font-weight:700;line-height:1.2;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.case-study-card__header{align-items:flex-start;display:flex;gap:12px;justify-content:space-between}.case-study-card__header-left{flex:1;min-width:0}.case-study-card__title{margin-bottom:2px}.case-study-card__subtitle{color:var(--color-text-secondary);font-size:13px;font-weight:400;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.case-study-card__year{color:var(--color-text-muted);flex-shrink:0;font-size:13px;font-weight:500;white-space:nowrap}.case-study-card__divider{background:var(--color-border);height:1px;margin:8px 0}.case-study-card__description{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:var(--color-text-secondary);display:-webkit-box;font-size:13px;font-weight:400;line-height:1.5;margin:0;overflow:hidden}.case-study-card__bottom{align-items:center;border-top:1px solid var(--color-border);display:flex;justify-content:space-between;margin-top:12px;padding-top:12px}.case-study-card__tags{display:flex;flex:1;flex-wrap:wrap;gap:6px;min-width:0}.case-study-card__tag{border:1px solid var(--color-border);border-radius:99px;color:var(--color-text-secondary);font-size:11px;font-weight:500;padding:3px 9px;white-space:nowrap}.case-study-card__tech{align-items:center;cursor:default;display:flex;gap:6px;position:relative}.case-study-card__tech-icon{align-items:center;background:var(--color-surface-alt);border:1px solid var(--color-border);border-radius:50%;display:flex;flex-shrink:0;height:26px;justify-content:center;overflow:hidden;width:26px}.case-study-card__tech-icon img{display:block;height:16px;object-fit:contain;width:16px}.case-study-card__tech-tooltip{background:#111;border-radius:8px;bottom:calc(100% + 8px);box-shadow:0 4px 16px #0003;color:#fff;font-size:12px;font-weight:400;line-height:1.5;opacity:0;padding:8px 12px;pointer-events:none;position:absolute;right:0;transform:translateY(4px);transition:opacity .2s ease,transform .2s ease;white-space:nowrap;z-index:10}.case-study-card__tech-tooltip:after{border:5px solid #0000;border-top-color:#111;content:"";position:absolute;right:12px;top:100%}.case-study-card__tech:hover .case-study-card__tech-tooltip{opacity:1;transform:translateY(0)}@media (max-width:768px){.case-studies-grid{gap:20px;grid-template-columns:1fr;padding:24px 16px 64px}.case-study-card__img-wrap{height:220px}.case-study-card__title{font-size:18px}.case-study-card__header{flex-direction:column;gap:4px}.case-study-card__year{align-self:flex-start}.case-studies-hero{padding:48px 16px 24px}.case-studies-hero__title{font-size:32px}}