.detail-hero[data-astro-cid-ovxcmftc]{position:relative;width:100%;height:70vh;max-height:600px;overflow:hidden;display:flex;align-items:flex-end}.detail-hero__parallax[data-astro-cid-ovxcmftc]{position:absolute;inset:0;will-change:transform}.detail-hero__img[data-astro-cid-ovxcmftc]{width:100%;height:100%;object-fit:cover;transform:scale(1.1)}.detail-hero__overlay[data-astro-cid-ovxcmftc]{position:absolute;inset:0;background:linear-gradient(to bottom,hsl(var(--bg-primary) / .2),hsl(var(--bg-primary) / .6) 60%,hsl(var(--bg-primary)))}.detail-hero__content[data-astro-cid-ovxcmftc]{position:relative;z-index:1;padding-bottom:var(--space-10)}.detail-hero__tag[data-astro-cid-ovxcmftc]{display:inline-block;font-size:var(--text-xs);font-weight:500;padding:4px 14px;border-radius:999px;background:hsl(var(--tag-color) / .2);color:hsl(var(--tag-color));backdrop-filter:blur(8px);margin-bottom:var(--space-4)}.detail-hero__title[data-astro-cid-ovxcmftc]{font-size:var(--text-5xl);font-weight:700;margin-bottom:var(--space-4);max-width:800px}.detail-hero__meta[data-astro-cid-ovxcmftc]{display:flex;align-items:center;gap:var(--space-3);font-size:var(--text-sm);color:hsl(var(--text-body))}.detail-hero__sep[data-astro-cid-ovxcmftc]{color:hsl(var(--text-subtle))}.detail-metrics[data-astro-cid-ovxcmftc]{margin-top:calc(-1 * var(--space-8));position:relative;z-index:2;padding-bottom:var(--space-4)}.detail-metrics__grid[data-astro-cid-ovxcmftc]{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:var(--space-4)}.detail__layout[data-astro-cid-ovxcmftc]{display:grid;grid-template-columns:1fr;gap:var(--space-10)}@media(min-width:1024px){.detail__layout[data-astro-cid-ovxcmftc]{grid-template-columns:1fr 300px}}.detail__summary[data-astro-cid-ovxcmftc]{font-size:var(--text-lg);color:hsl(var(--text-body));line-height:1.7;margin-bottom:var(--space-8);max-width:640px}.detail__story[data-astro-cid-ovxcmftc]{display:flex;flex-direction:column;gap:var(--space-6);margin-bottom:var(--space-10);padding:var(--space-6);background:hsl(var(--bg-elevated));border:1px solid hsl(var(--border-default));border-radius:16px}.detail__story-block[data-astro-cid-ovxcmftc]{display:flex;gap:var(--space-4);align-items:flex-start}.detail__story-icon[data-astro-cid-ovxcmftc]{flex-shrink:0;width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:var(--text-lg)}.detail__story-icon--challenge[data-astro-cid-ovxcmftc]{background:hsl(var(--gold) / .15);color:hsl(var(--gold))}.detail__story-icon--solution[data-astro-cid-ovxcmftc]{background:hsl(var(--green) / .15);color:hsl(var(--green))}.detail__story-heading[data-astro-cid-ovxcmftc]{font-size:var(--text-base);font-weight:600;margin-bottom:var(--space-2)}.detail__story-text[data-astro-cid-ovxcmftc]{font-size:var(--text-sm);color:hsl(var(--text-body));line-height:1.7}.prose[data-astro-cid-ovxcmftc]{margin-bottom:var(--space-10)}.prose[data-astro-cid-ovxcmftc] h2{font-size:var(--text-2xl);font-weight:600;margin-top:var(--space-10);margin-bottom:var(--space-4)}.prose[data-astro-cid-ovxcmftc] h3{font-size:var(--text-xl);font-weight:600;margin-top:var(--space-8);margin-bottom:var(--space-3)}.prose[data-astro-cid-ovxcmftc] p{margin-bottom:var(--space-4);line-height:1.7}.prose[data-astro-cid-ovxcmftc] ul,.prose[data-astro-cid-ovxcmftc] ol{margin-bottom:var(--space-4);padding-left:var(--space-6)}.prose[data-astro-cid-ovxcmftc] li{margin-bottom:var(--space-2);line-height:1.6}.prose[data-astro-cid-ovxcmftc] li::marker{color:hsl(var(--accent-primary))}.detail__tags-section[data-astro-cid-ovxcmftc]{margin-top:var(--space-8)}.detail__tags-heading[data-astro-cid-ovxcmftc]{font-size:var(--text-lg);font-weight:600;margin-bottom:var(--space-4)}.detail__tech-tags[data-astro-cid-ovxcmftc]{display:flex;flex-wrap:wrap;gap:var(--space-2)}.detail__tech-tag[data-astro-cid-ovxcmftc]{font-size:var(--text-xs);font-weight:500;padding:6px 14px;border-radius:8px;background:hsl(var(--bg-surface));color:hsl(var(--text-body));border:1px solid hsl(var(--border-default));transition:border-color .2s ease,color .2s ease}.detail__tech-tag[data-astro-cid-ovxcmftc]:hover{border-color:hsl(var(--border-accent));color:hsl(var(--accent-primary))}.detail__sidebar-inner[data-astro-cid-ovxcmftc]{position:sticky;top:96px;padding:var(--space-6);background:hsl(var(--bg-elevated));border:1px solid hsl(var(--border-default));border-radius:16px}.detail__info-item[data-astro-cid-ovxcmftc]{display:flex;flex-direction:column;padding-block:var(--space-3);border-bottom:1px solid hsl(var(--border-subtle))}.detail__info-item[data-astro-cid-ovxcmftc]:last-of-type{border-bottom:none}.detail__info-label[data-astro-cid-ovxcmftc]{font-size:var(--text-xs);color:hsl(var(--text-muted));text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--space-1)}.detail__info-value[data-astro-cid-ovxcmftc]{font-size:var(--text-base);font-weight:500;color:hsl(var(--text-primary))}.detail__sidebar-actions[data-astro-cid-ovxcmftc]{display:flex;flex-direction:column;gap:var(--space-3);margin-top:var(--space-6)}.detail__btn-icon[data-astro-cid-ovxcmftc]{width:16px;height:16px}.detail-gallery__heading[data-astro-cid-ovxcmftc]{font-size:var(--text-2xl);font-weight:600;margin-bottom:var(--space-10)}.detail-nav__inner[data-astro-cid-ovxcmftc]{display:flex;justify-content:space-between;border-top:1px solid hsl(var(--border-default));padding-top:var(--space-8)}.detail-nav__link[data-astro-cid-ovxcmftc]{display:flex;flex-direction:column;gap:var(--space-1);padding:var(--space-4) var(--space-6);border-radius:12px;border:1px solid transparent;transition:background .2s ease,border-color .2s ease}.detail-nav__link[data-astro-cid-ovxcmftc]:hover{background:hsl(var(--bg-elevated));border-color:hsl(var(--border-default))}.detail-nav__next[data-astro-cid-ovxcmftc]{text-align:right}.detail-nav__label[data-astro-cid-ovxcmftc]{font-size:var(--text-xs);color:hsl(var(--text-muted));text-transform:uppercase;letter-spacing:.05em}.detail-nav__name[data-astro-cid-ovxcmftc]{font-family:Space Grotesk,system-ui,sans-serif;font-size:var(--text-lg);font-weight:600;color:hsl(var(--text-primary))}
