.device[data-astro-cid-eihzlhfk]{margin:0;border-radius:var(--radius-m);overflow:hidden;border:1px solid var(--hairline);background:var(--bg-1);box-shadow:var(--shadow-2)}.device__bar[data-astro-cid-eihzlhfk]{display:flex;align-items:center;gap:.9rem;padding:.7rem .9rem;background:color-mix(in srgb,var(--bg-2) 80%,#000);border-bottom:1px solid var(--hairline-2)}.device__dots[data-astro-cid-eihzlhfk]{display:inline-flex;gap:.45rem;flex:none}.device__dots[data-astro-cid-eihzlhfk] i[data-astro-cid-eihzlhfk]{width:11px;height:11px;border-radius:50%;background:#3a3a48;display:block}.device__dots[data-astro-cid-eihzlhfk] i[data-astro-cid-eihzlhfk]:nth-child(1){background:#ff5f57}.device__dots[data-astro-cid-eihzlhfk] i[data-astro-cid-eihzlhfk]:nth-child(2){background:#febc2e}.device__dots[data-astro-cid-eihzlhfk] i[data-astro-cid-eihzlhfk]:nth-child(3){background:#28c840}.device__url[data-astro-cid-eihzlhfk]{flex:1 1 auto;display:inline-flex;align-items:center;gap:.5em;min-width:0;justify-content:center;font-family:var(--font-mono);font-size:var(--step--1);color:var(--ink-dim);background:var(--bg);border:1px solid var(--hairline-2);border-radius:999px;padding:.4em 1em;max-width:22rem;margin-inline:auto}.device__url-text[data-astro-cid-eihzlhfk]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.device__modes[data-astro-cid-eihzlhfk]{flex:none;display:inline-flex;gap:.2rem;border:0;padding:0;margin:0}.device__modes[data-astro-cid-eihzlhfk] input[data-astro-cid-eihzlhfk]{position:absolute;opacity:0;pointer-events:none}.device__modes[data-astro-cid-eihzlhfk] label[data-astro-cid-eihzlhfk]{display:inline-grid;place-items:center;width:32px;height:30px;border-radius:var(--radius-s);color:var(--ink-faint);cursor:pointer;transition:color var(--dur-fast),background-color var(--dur-fast)}.device__modes[data-astro-cid-eihzlhfk] label[data-astro-cid-eihzlhfk]:hover{color:var(--ink)}.device__modes[data-astro-cid-eihzlhfk] input[data-astro-cid-eihzlhfk]:checked+label[data-astro-cid-eihzlhfk]{color:var(--dev-accent);background:color-mix(in srgb,var(--dev-accent) 14%,transparent)}.device__modes[data-astro-cid-eihzlhfk] input[data-astro-cid-eihzlhfk]:focus-visible+label[data-astro-cid-eihzlhfk]{outline:2px solid var(--accent);outline-offset:2px}.device__pop[data-astro-cid-eihzlhfk]{flex:none;display:inline-flex;align-items:center;gap:.4em;font-family:var(--font-mono);font-size:var(--step--1);color:var(--ink-dim);border:1px solid var(--hairline);border-radius:999px;padding:.45em .85em;transition:color var(--dur-fast),border-color var(--dur-fast)}.device__pop[data-astro-cid-eihzlhfk]:hover{color:var(--dev-accent);border-color:var(--dev-accent)}.device__stage[data-astro-cid-eihzlhfk]{display:grid;place-items:center;padding:clamp(.75rem,2vw,1.5rem);background:radial-gradient(120% 120% at 50% 0%,color-mix(in srgb,var(--dev-accent) 7%,transparent),transparent 60%),var(--bg)}.device__viewport[data-astro-cid-eihzlhfk]{width:100%;max-width:100%;height:clamp(420px,66vh,780px);border-radius:10px;overflow:hidden;background:#000;border:1px solid var(--hairline-2);transition:max-width .6s var(--ease-out)}.device__frame[data-astro-cid-eihzlhfk]{width:100%;height:100%;border:0;display:block;background:#000}.device[data-astro-cid-eihzlhfk]:has([value=tablet]:checked) .device__viewport[data-astro-cid-eihzlhfk]{max-width:834px}.device[data-astro-cid-eihzlhfk]:has([value=phone]:checked) .device__viewport[data-astro-cid-eihzlhfk]{max-width:390px}@media(max-width:520px){.device__url[data-astro-cid-eihzlhfk]{display:none}.device__bar[data-astro-cid-eihzlhfk]{gap:.6rem}}@media(prefers-reduced-motion:reduce){.device__viewport[data-astro-cid-eihzlhfk]{transition:none}}.case[data-astro-cid-qwekciqp]{--grad: linear-gradient(120deg, var(--a), var(--b))}.case-hero[data-astro-cid-qwekciqp]{position:relative;padding-top:var(--header-h)}.case-hero__head[data-astro-cid-qwekciqp]{padding-top:clamp(3rem,9vw,6rem)}.case-back[data-astro-cid-qwekciqp]{display:inline-flex;align-items:center;gap:.5em;font-family:var(--font-mono);font-size:var(--step--1);color:var(--ink-dim);margin-bottom:2rem}.case-back[data-astro-cid-qwekciqp]:hover{color:var(--accent)}.case-back[data-astro-cid-qwekciqp] svg[data-astro-cid-qwekciqp]{transition:transform var(--dur) var(--ease-out)}.case-back[data-astro-cid-qwekciqp]:hover svg[data-astro-cid-qwekciqp]{transform:translate(-4px)}.case-title[data-astro-cid-qwekciqp]{font-family:var(--font-display);font-weight:600;font-size:var(--step-5);line-height:1.05;letter-spacing:var(--tracking-tight);margin-top:.6rem}.case-tagline[data-astro-cid-qwekciqp]{margin-top:1.2rem;font-size:var(--step-2);color:var(--ink-dim);max-width:30ch;font-family:var(--font-display);font-weight:500}.case-actions[data-astro-cid-qwekciqp]{margin-top:2rem;display:flex;flex-wrap:wrap;gap:1rem}.case-meta[data-astro-cid-qwekciqp]{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,5vw,4rem);padding-block:clamp(3rem,8vh,6rem)}.case-credits[data-astro-cid-qwekciqp]{display:grid;grid-template-columns:1fr 1fr;gap:1.6rem 2rem;align-content:start}.case-credits[data-astro-cid-qwekciqp] dt[data-astro-cid-qwekciqp]{font-family:var(--font-mono);font-size:var(--step--1);letter-spacing:.16em;text-transform:uppercase;color:var(--ink-faint);margin-bottom:.4rem}.case-credits[data-astro-cid-qwekciqp] dd[data-astro-cid-qwekciqp]{color:var(--ink)}.case-highlights[data-astro-cid-qwekciqp]{display:flex;flex-direction:column;gap:1rem}.case-highlights[data-astro-cid-qwekciqp] li[data-astro-cid-qwekciqp]{display:flex;gap:.9rem;color:var(--ink-dim);line-height:1.5}.case-highlights__mark[data-astro-cid-qwekciqp]{flex:none;margin-top:.55em;width:8px;height:8px;border-radius:50%;background:var(--grad);box-shadow:0 0 12px color-mix(in srgb,var(--a) 60%,transparent)}.case-preview[data-astro-cid-qwekciqp]{padding-block:clamp(1rem,3vh,2rem) clamp(3rem,8vh,6rem)}.case-preview__head[data-astro-cid-qwekciqp]{display:flex;flex-wrap:wrap;align-items:baseline;gap:.5rem 1.5rem;margin-bottom:1.5rem}.case-preview__note[data-astro-cid-qwekciqp]{color:var(--ink-faint);font-size:var(--step--1);font-family:var(--font-mono)}.case-body[data-astro-cid-qwekciqp]{padding-block:clamp(2rem,6vh,4rem)}.case-gallery[data-astro-cid-qwekciqp]{padding-block:clamp(1rem,4vh,3rem) clamp(3rem,8vh,6rem)}.case-gallery__grid[data-astro-cid-qwekciqp]{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:clamp(1rem,3vw,2rem)}.plate[data-astro-cid-qwekciqp]{position:relative;aspect-ratio:4 / 3;border-radius:var(--radius-m);overflow:hidden;border:1px solid var(--hairline-2)}.plate__fill[data-astro-cid-qwekciqp]{position:absolute;inset:-10%;background:linear-gradient(135deg,var(--from),var(--to));filter:saturate(115%)}.plate__label[data-astro-cid-qwekciqp]{position:absolute;left:1rem;bottom:.9rem;font-family:var(--font-mono);font-size:var(--step--1);color:#fff;mix-blend-mode:difference}.case-next[data-astro-cid-qwekciqp]{border-top:1px solid var(--hairline)}.case-next__link[data-astro-cid-qwekciqp]{display:flex;align-items:center;gap:1.5rem;flex-wrap:wrap;width:min(100% - (var(--gutter) * 2),var(--maxw));margin-inline:auto;padding-block:clamp(2.5rem,7vh,5rem)}.case-next__label[data-astro-cid-qwekciqp]{font-family:var(--font-mono);font-size:var(--step--1);letter-spacing:.18em;text-transform:uppercase;color:var(--ink-faint)}.case-next__title[data-astro-cid-qwekciqp]{font-family:var(--font-display);font-weight:600;font-size:var(--step-4);letter-spacing:var(--tracking-tight);transition:color var(--dur-fast)}.case-next__arrow[data-astro-cid-qwekciqp]{font-size:var(--step-3);color:var(--ink-dim);transition:transform var(--dur) var(--ease-out),color var(--dur-fast);margin-left:auto}.case-next__link[data-astro-cid-qwekciqp]:hover .case-next__title[data-astro-cid-qwekciqp]{color:transparent;background:linear-gradient(120deg,var(--a),var(--b));-webkit-background-clip:text;background-clip:text}.case-next__link[data-astro-cid-qwekciqp]:hover .case-next__arrow[data-astro-cid-qwekciqp]{transform:translate(8px);color:var(--accent)}@media(max-width:760px){.case-meta[data-astro-cid-qwekciqp]{grid-template-columns:1fr}.case-credits[data-astro-cid-qwekciqp]{grid-template-columns:1fr 1fr}}
