.about{padding-bottom:96px}.about .section-title{margin-bottom:32px}.about-layout{display:grid;grid-template-columns:minmax(200px,320px) minmax(0,1fr);column-gap:48px}@media (max-width: 760px){.about-layout{grid-template-columns:minmax(0,1fr);row-gap:24px}}.about-photo{width:100%;height:100%;object-fit:cover;border-radius:8px}@media (max-width: 760px){.about-photo{height:auto;aspect-ratio:760 / 1140;max-width:280px}}.about-name{margin:0 0 16px;font-size:1.4rem;font-weight:600}.about-pronunciation{margin-left:8px;font-family:Inter,ui-sans-serif,system-ui,-apple-system,sans-serif;font-size:.95rem;font-weight:400;color:var(--muted)}.about-intro{margin:0 0 32px;max-width:60ch}.about-intro a{color:var(--coral-text);text-decoration:none;background-image:linear-gradient(currentColor,currentColor);background-repeat:no-repeat;background-position:100% 100%;background-size:0% 1px;-webkit-box-decoration-break:clone;box-decoration-break:clone;transition:background-size .28s ease,background-position .28s ease}.about-intro a:hover,.about-intro a:focus-visible{background-position:0% 100%;background-size:100% 1px}.about-section+.about-section{margin-top:32px}.about-heading{margin:0 0 12px;font-size:1.15rem;font-weight:600;color:color-mix(in srgb,var(--accent-alt) 30%,var(--muted))}.about-section p{margin:0;max-width:60ch}.about-section p+p{margin-top:16px}.about-marquee{width:100vw;margin-left:calc(50% - 50vw);margin-top:64px;overflow:hidden}.about-marquee-track{display:flex;width:max-content}@media (prefers-reduced-motion: no-preference){.about-marquee-track{animation:about-marquee-scroll 75s linear infinite}.about-marquee:hover .about-marquee-track{animation-play-state:paused}}@media (prefers-reduced-motion: reduce){.about-marquee{overflow-x:auto}}.about-marquee-photo{display:block;flex:none;height:clamp(160px,22vw,240px);width:auto;margin-right:8px;border-radius:4px}@keyframes about-marquee-scroll{0%{transform:translate(0)}to{transform:translate(-50%)}}.card{display:flex;flex-direction:column;padding:12px;border-radius:8px;color:inherit;text-decoration:none;background:var(--tonal);transition:background-color .28s ease}.card:hover{background-color:color-mix(in srgb,var(--tonal),var(--accent) 6%)}.card-media{aspect-ratio:3 / 2;margin-bottom:16px;padding:12px;border-radius:6px;overflow:hidden;background:var(--bg)}@media (prefers-color-scheme: dark){:root:not([data-theme=light]) .card-media{background:color-mix(in srgb,var(--tonal),white 16%)}}:root[data-theme=dark] .card-media{background:color-mix(in srgb,var(--tonal),white 16%)}.card-media img,.card-media video{display:block;width:100%;height:100%;object-fit:contain;transition:transform .28s ease}.card-media--bleed-bottom-right{padding:12px 0 0 48px}.card-media--bleed-bottom-right img,.card-media--bleed-bottom-right video{object-position:100% 100%}.card-media--bleed-bottom{padding:12px 32px 0}.card-media--bleed-bottom img,.card-media--bleed-bottom video{object-position:50% 100%}.card-media--padding-loose{padding:24px}.card-media--padding-loose-vertical{padding:32px 12px}@media (prefers-reduced-motion: no-preference){.card:hover .card-media img{transform:scale(1.08)}}.card-body{padding-inline:4px;padding-bottom:4px}.card-body h4{margin:0 0 8px;font-size:1.15rem;font-weight:600}.card-body p{margin:0;font-size:.95rem;color:var(--muted)}.card-labels{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0 0;padding:0;list-style:none}.card-labels li{padding:4px 8px;font-family:IBM Plex Mono,ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.75rem;letter-spacing:.02em;color:var(--muted);background:var(--bg);border-radius:4px}.card-labels .card-label-wip{color:var(--coral-text);background:color-mix(in srgb,var(--accent),transparent 88%)}.row-list .card{flex-direction:row;gap:24px}.row-list .card-media{flex:0 0 180px;margin-bottom:0;padding:0;background:transparent}.row-list .card-media img,.row-list .card-media video{object-fit:cover}.row-list .card-body{display:flex;flex-direction:column;gap:12px;padding-top:8px;padding-bottom:8px}.row-list .card-body h4{margin-bottom:0}.row-list .card-labels{margin:auto 0 0}@media (max-width: 600px){.row-list .card{flex-direction:column;align-items:stretch}.row-list .card-media{flex-basis:auto}}.case-study{max-width:1120px;margin-inline:auto;padding-block:64px 96px;padding-inline:24px}.case-study-intro,.case-study-body{max-width:54rem;margin-inline:auto}.case-study-intro{margin-bottom:64px}.case-study-intro--tight{margin-bottom:32px}.case-study-wip-badge{display:inline-block;margin:0 0 16px;padding:4px 8px;font-family:IBM Plex Mono,ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.75rem;letter-spacing:.02em;color:var(--coral-text);background:color-mix(in srgb,var(--accent),transparent 88%);border-radius:4px}.case-study-eyebrow{font-family:IBM Plex Mono,ui-monospace,SFMono-Regular,Menlo,monospace;font-weight:400;font-size:.85rem;letter-spacing:.02em;color:var(--muted);margin:0 0 16px}.case-study-intro h1{margin:0 0 16px;font-weight:600}.case-study-lede{font-size:1rem;color:var(--muted);margin:0}.case-study-body>*+*{margin-top:32px}.case-study-body>p+.case-study-media-frame,.case-study-body>ul+.case-study-media-frame,.case-study-body>ol+.case-study-media-frame,.case-study-body>.case-study-media-frame+p{margin-top:16px}.case-study-body>.case-study-media-frame+ul,.case-study-body>.case-study-media-frame+ol{margin-top:64px}.case-study-body>.case-study-media-frame+p+p{margin-top:16px}.case-study-body p,.case-study-body li{color:color-mix(in srgb,var(--text) 78%,var(--muted))}@media (prefers-color-scheme: dark){:root:not([data-theme=light]) .case-study-body p,:root:not([data-theme=light]) .case-study-body li{color:color-mix(in srgb,var(--text) 65%,var(--muted))}}:root[data-theme=dark] .case-study-body p,:root[data-theme=dark] .case-study-body li{color:color-mix(in srgb,var(--text) 65%,var(--muted))}.case-study-body h2{margin-top:144px;margin-bottom:0;font-size:1.5rem;font-weight:600}.case-study-body h3{margin-top:96px;margin-bottom:0;font-size:1.15rem;font-weight:600;color:color-mix(in srgb,var(--accent-alt) 30%,var(--muted))}.case-study-body h4{margin-top:32px;margin-bottom:0;font-size:1.05rem;font-weight:700}.case-study-body h2+*{margin-top:24px}.case-study-body h3+*{margin-top:16px}.case-study-body h3+h4{margin-top:32px}.case-study-body p+h4{margin-top:48px}.case-study-body h4+*{margin-top:8px}.case-study-body h4+.case-study-media-frame{margin-top:16px}.case-study-body .case-study-media-frame+h4{margin-top:48px}.case-study-body p+ul,.case-study-body p+ol{margin-top:12px}.case-study-body>.case-study-continuation{position:relative;margin-top:12px;padding-left:24px}.case-study-body>.case-study-continuation:before{content:"•";position:absolute;left:8px;color:var(--muted)}.case-study-body ul,.case-study-body ol{padding-left:24px}.case-study-body ul li+li,.case-study-body ol li+li{margin-top:12px}.case-study-body li{line-height:1.6}.case-study-body .case-study-list-icon{padding-left:0;list-style:none}.case-study-body .case-study-list-icon li+li{margin-top:24px}.case-study-body .case-study-list-icon-item{display:flex;align-items:flex-start;gap:16px}.case-study-body .case-study-list-icon-tile{flex:none;width:44px;height:44px;border-radius:8px;background:var(--tonal);display:flex;align-items:center;justify-content:center}.case-study-body .case-study-list-icon-tile img{width:26px;height:26px;border-radius:0;background:none}.case-study-body .case-study-list-icon-text{padding-top:4px}.case-study-body strong{font-weight:600;color:var(--text)}.case-study-body a{color:var(--coral-text);text-decoration:none;background-image:linear-gradient(currentColor,currentColor);background-repeat:no-repeat;background-position:100% 100%;background-size:0% 1px;-webkit-box-decoration-break:clone;box-decoration-break:clone;transition:background-size .28s ease,background-position .28s ease}.case-study-body a:hover,.case-study-body a:focus-visible{background-position:0% 100%;background-size:100% 1px}.case-study-body .case-study-emphasis{font-weight:600;color:var(--text)}.case-study-body .case-study-split{display:grid;grid-template-columns:1fr 1fr;gap:32px;align-items:start}@media (max-width: 600px){.case-study-body .case-study-split{grid-template-columns:1fr;gap:24px}}.case-study-body .case-study-split-main>*+*{margin-top:16px}.case-study-body .case-study-split-main>.case-study-split-timeline{margin-top:32px}.case-study-body .case-study-split-sidebar{display:flex;flex-direction:column;gap:16px;padding:16px 24px;border-radius:8px;background:var(--tonal)}.case-study-body .case-study-split-block+.case-study-split-block{padding-top:16px;border-top:1px solid color-mix(in srgb,var(--muted) 30%,var(--tonal))}.case-study-body .case-study-split-label{font-family:IBM Plex Mono,ui-monospace,SFMono-Regular,Menlo,monospace;font-weight:400;font-size:.85rem;letter-spacing:.02em;color:var(--muted);margin:0 0 16px}.case-study-body .case-study-split-label+*{margin-top:0}.case-study-body .case-study-stepper{display:flex;flex-direction:column;gap:8px}.case-study-body .case-study-step{margin:0;font-size:.95rem;line-height:1.4}.case-study-body .case-study-step-date{font-family:IBM Plex Mono,ui-monospace,SFMono-Regular,Menlo,monospace;font-weight:400;font-size:.85rem;letter-spacing:.02em;color:var(--muted);font-family:Inter,ui-sans-serif,system-ui,-apple-system,sans-serif;letter-spacing:normal;margin-right:8px}.case-study-body .case-study-split-role-title{margin:0 0 8px}.case-study-body .case-study-split-role-list{margin:0;padding-left:1.1em;font-size:.95rem}.case-study-body .case-study-split-role-list li+li{margin-top:8px}.case-study-body .case-study-split-team-list{display:flex;flex-direction:column;gap:12px}.case-study-body .case-study-split-team-name{margin:0}.case-study-body .case-study-split-team-tag{font-family:IBM Plex Mono,ui-monospace,SFMono-Regular,Menlo,monospace;font-weight:400;font-size:.85rem;letter-spacing:.02em;color:var(--muted);margin:2px 0 0}.case-study-body .case-study-split-team-text{margin:2px 0 0;font-size:.95rem}.case-study-body .case-study-beats{display:flex;flex-direction:column;gap:32px}.case-study-body .case-study-beat{display:grid;grid-template-columns:2.5rem 1fr;gap:16px}.case-study-body .case-study-beat-num{padding-top:2px;font-family:IBM Plex Mono,ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.95rem;color:color-mix(in srgb,var(--accent-alt) 55%,var(--muted))}.case-study-body .case-study-beat-label{margin:0 0 8px}.case-study-body .case-study-beat-body{margin:0}.case-study-body .case-study-beat-cite{margin:12px 0 0;padding-left:16px;border-left:2px solid color-mix(in srgb,var(--muted) 35%,var(--bg));font-size:.95rem;color:var(--muted)}.case-study-body .case-study-beat-conclusion{position:relative;padding:16px 24px 16px 3.5rem;border-radius:8px;background:var(--tonal)}.case-study-body .case-study-beat-conclusion:before{content:"";position:absolute;inset:0 auto 0 0;width:3px;border-radius:8px 0 0 8px;background:var(--accent-alt)}.case-study-body img,.case-study-body video{display:block;width:100%;height:auto;border-radius:4px;background:var(--tonal)}@media (prefers-reduced-motion: reduce){.case-study-body a{transition:none}}.case-study-media-frame{padding:32px;border-radius:0;background:radial-gradient(120% 100% at 50% -10%,color-mix(in srgb,var(--accent) 14%,var(--tonal)),color-mix(in srgb,var(--text) 8%,var(--tonal)))}.case-study-media-frame img,.case-study-media-frame video{box-shadow:0 12px 24px -18px #00000059}@media (prefers-color-scheme: dark){:root:not([data-theme=light]) .case-study-media-frame:has(img[src*="ibm-solution-gateway/hero"]) img{box-shadow:0 12px 24px -18px #00000059,0 0 0 1px color-mix(in srgb,var(--text) 18%,transparent)}}:root[data-theme=dark] .case-study-media-frame:has(img[src*="ibm-solution-gateway/hero"]) img{box-shadow:0 12px 24px -18px #00000059,0 0 0 1px color-mix(in srgb,var(--text) 18%,transparent)}.case-study-body img[src*=final-onboarding],.case-study-body img[src*=final-upcoming-calendar],.case-study-body img[src*=final-notification],.case-study-body img[src*=final-live-stream]{background:#f8f3f1}.case-study-media-frame--compact{padding:16px;border-radius:0}.case-study-media-frame--compact video{border-radius:8px}.case-study-media-frame--compact:has(img[src*=ai-toggle-let-system-decide]){padding:32px 64px}@media (max-width: 600px){.case-study-media-frame{padding:16px}.case-study-media-frame--compact{padding:12px;border-radius:0}.case-study-media-frame--compact:has(img[src*=ai-toggle-let-system-decide]){padding:16px 32px}}.case-study-caption{font-family:IBM Plex Mono,ui-monospace,SFMono-Regular,Menlo,monospace;font-weight:400;font-size:.85rem;letter-spacing:.02em;color:var(--muted);margin:8px 0 0;text-align:center;font-style:normal}.case-study-media-frame-button{display:block;width:100%;padding:0;border:none;background:none;cursor:zoom-in}.case-study-media-frame-button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.case-study-media-frame-button img{border-radius:4px;pointer-events:none}.case-study-image-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}.case-study-image-row-item{min-width:0;display:flex;flex-direction:column}.case-study-image-row-item-button{display:block;width:100%;flex:1 1 auto;min-height:0;padding:12px;border:none;border-radius:16px;background:radial-gradient(120% 100% at 50% -10%,color-mix(in srgb,var(--accent) 14%,var(--tonal)),color-mix(in srgb,var(--text) 8%,var(--tonal)));font:inherit;text-align:inherit;cursor:zoom-in;transition:opacity .15s ease}.case-study-image-row-item-button:hover,.case-study-image-row-item-button:focus-visible{opacity:.85}.case-study-image-row-item-button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.case-study-image-row-item-button img{border-radius:4px;pointer-events:none;width:100%;height:100%;object-fit:cover}@media (max-width: 600px){.case-study-image-row-item-button{padding:8px}}@media (max-width: 700px){.case-study-image-row{grid-template-columns:1fr}}.case-study-carousel{position:relative;overflow:hidden;border-radius:4px;cursor:zoom-in;aspect-ratio:2928 / 1858}.case-study-carousel img,.case-study-carousel .case-study-media-placeholder{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;opacity:0;transition:opacity .6s ease}.case-study-carousel img{object-fit:cover}.case-study-carousel img.is-active,.case-study-carousel .case-study-media-placeholder.is-active{opacity:1}.case-study-carousel-hit{position:absolute;top:0;right:0;bottom:0;left:0}.case-study-carousel-nav{position:absolute;top:50%;z-index:1;display:flex;align-items:center;justify-content:center;width:40px;height:40px;padding:0;border:none;border-radius:50%;transform:translateY(-50%);background:#00000073;color:#fff;cursor:pointer;transition:background-color .15s ease}.case-study-carousel-nav svg{width:22px;height:22px}.case-study-carousel-nav:hover,.case-study-carousel-nav:focus-visible{background:#000000a6}.case-study-carousel-nav:focus-visible{outline:2px solid #fff;outline-offset:2px}.case-study-carousel-nav--prev{left:12px}.case-study-carousel-nav--next{right:12px}@media (max-width: 600px){.case-study-carousel-nav{width:32px;height:32px}.case-study-carousel-nav svg{width:18px;height:18px}}.case-study-carousel-dots{display:flex;justify-content:center;gap:8px;margin-top:16px}.case-study-carousel-dots button{width:8px;height:8px;padding:0;border:none;border-radius:50%;background:color-mix(in srgb,var(--muted) 50%,transparent);cursor:pointer;transition:background-color .2s ease}.case-study-carousel-dots button.is-active{background:var(--accent)}.case-study-carousel-dots button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.case-study-columns{display:grid;grid-template-columns:repeat(auto-fit,minmax(0,1fr));gap:32px;align-items:start}@media (max-width: 700px){.case-study-columns{grid-template-columns:1fr;gap:24px}}.case-study-columns img[src*=quote-icon-marvel],.case-study-columns img[src*=quote-icon-transformers]{aspect-ratio:1080 / 859}.case-study-columns img[src*=persona-hardcore-fan],.case-study-columns img[src*=persona-casual-fan]{aspect-ratio:1 / 1}.case-study-media-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:32px;align-items:start}.case-study-media-split .case-study-media-split-text>*+*{margin-top:16px}.case-study-media-split .case-study-media-split-text>:first-child{margin-top:0}.case-study-media-split .case-study-media-split-text>:last-child{margin-bottom:0}.case-study-media-split--align-end{align-items:end}.case-study-media-split--align-end .case-study-media-split-text>h3:nth-of-type(2){margin-top:60px}.case-study h3+.case-study-media-split{margin-top:32px}@media (max-width: 1000px){.case-study-media-split{grid-template-columns:minmax(0,1fr);gap:24px}}.case-study-media-split--stacked{grid-template-columns:minmax(0,1fr);gap:8px}.case-study-media-split+.case-study-media-split{margin-top:64px}.case-study-icon-split{display:flex;gap:16px;align-items:flex-start}@media (max-width: 500px){.case-study-icon-split{flex-direction:column}}.case-study-icon-split-icon{flex:none;width:128px;height:128px;border-radius:16px;background:var(--tonal);display:flex;align-items:center;justify-content:center}.case-study-icon-split-icon img{width:88px;height:88px;padding:4px;border-radius:16px;background:#fff;box-sizing:border-box}.case-study-icon-split-content>*+*{margin-top:16px}.case-study-icon-split-content>:first-child{margin-top:0}.case-study-more{margin-top:96px}.case-study-more-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}@media (max-width: 900px){.case-study-more-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 600px){.case-study-more-grid{grid-template-columns:1fr}}.case-study-more-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:32px}.case-study-more-head .section-title{margin:0}.case-study-stats{padding:24px;border-radius:8px;background:var(--tonal)}.case-study-stats-period{font-family:IBM Plex Mono,ui-monospace,SFMono-Regular,Menlo,monospace;font-weight:400;font-size:.85rem;letter-spacing:.02em;color:var(--muted);margin:0 0 16px}.case-study-stats-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:auto auto auto;column-gap:24px}@media (max-width: 600px){.case-study-stats-grid{grid-template-columns:1fr}}.case-study-stat{display:grid;grid-row:span 3;grid-template-rows:subgrid}.case-study-stat+.case-study-stat{position:relative;padding-left:24px}.case-study-stat+.case-study-stat:before{content:"";position:absolute;top:0;bottom:20px;left:0;width:1px;background:color-mix(in srgb,var(--muted) 35%,var(--tonal))}@media (max-width: 600px){.case-study-stat+.case-study-stat{padding-left:0;padding-top:16px;border-top:1px solid color-mix(in srgb,var(--muted) 35%,var(--tonal))}.case-study-stat+.case-study-stat:before{content:none}}.case-study-stats-note{margin:0;padding-top:16px;border-top:1px solid color-mix(in srgb,var(--muted) 35%,var(--tonal));font-size:.75rem;color:var(--muted)}.case-study-stat-label{font-family:IBM Plex Mono,ui-monospace,SFMono-Regular,Menlo,monospace;font-weight:400;font-size:.85rem;letter-spacing:.02em;color:var(--muted);margin:0;text-transform:uppercase}.case-study-stat-value{margin:8px 0 0;font-size:2.5rem;font-weight:700;line-height:1.1}.case-study-stat-description{margin:16px 0;color:var(--muted)}.case-study-stat-details{margin:16px 0}.case-study-stat-detail-row{display:flex;justify-content:space-between;gap:12px}.case-study-stat-detail-row dt{color:var(--muted)}.case-study-stat-detail-row dd{margin:0;font-weight:600}.case-study-stat-detail-row+.case-study-stat-detail-row{margin-top:0}.case-study-quotes{display:flex;flex-direction:column;gap:32px;padding:24px;border-radius:8px;background:var(--tonal)}.case-study-quote{margin:0;padding-left:24px;border-left:2px solid color-mix(in srgb,var(--accent-alt) 55%,var(--bg))}.case-study-quote-text{margin:0}.case-study-quote-attribution{font-family:IBM Plex Mono,ui-monospace,SFMono-Regular,Menlo,monospace;font-weight:400;font-size:.85rem;letter-spacing:.02em;color:var(--muted);display:block;margin-top:8px;font-style:normal}.case-study-media-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;min-height:16rem;padding:24px;border:1px dashed var(--muted);border-radius:8px;background:var(--tonal);text-align:center}.case-study-media-placeholder span{font-family:IBM Plex Mono,ui-monospace,SFMono-Regular,Menlo,monospace;font-weight:400;font-size:.85rem;letter-spacing:.02em;color:var(--muted)}.case-study-media-placeholder-badge{font-weight:600;color:var(--accent)}.case-study-lightbox{position:fixed;top:0;right:0;bottom:0;left:0;z-index:500;display:flex;align-items:center;justify-content:center;padding:48px;background:#000c;cursor:zoom-out}.case-study-lightbox img{max-width:100%;max-height:100%;width:auto;height:auto;border-radius:4px;box-shadow:0 24px 48px -12px #00000080;cursor:default}.case-study-lightbox-close{position:fixed;top:24px;right:24px;display:flex;align-items:center;justify-content:center;width:40px;height:40px;border:none;border-radius:50%;background:#ffffff1a;color:#fff;font-size:1.5rem;line-height:1;cursor:pointer}.case-study-lightbox-close:hover{background:#fff3}.case-study-lightbox-close:focus-visible{outline:2px solid #fff;outline-offset:2px}.case-study-lightbox-nav{position:fixed;top:50%;z-index:1;display:flex;align-items:center;justify-content:center;width:48px;height:48px;padding:0;border:none;border-radius:50%;transform:translateY(-50%);background:#ffffff1a;color:#fff;cursor:pointer}.case-study-lightbox-nav svg{width:26px;height:26px}.case-study-lightbox-nav:hover{background:#fff3}.case-study-lightbox-nav:focus-visible{outline:2px solid #fff;outline-offset:2px}.case-study-lightbox-nav--prev{left:24px}.case-study-lightbox-nav--next{right:24px}@media (max-width: 600px){.case-study-lightbox-nav{width:40px;height:40px}.case-study-lightbox-nav svg{width:20px;height:20px}.case-study-lightbox-nav--prev{left:12px}.case-study-lightbox-nav--next{right:12px}}.theme-toggle{display:inline-grid;place-items:center;width:32px;height:32px;padding:0;border:1px solid transparent;border-radius:4px;background:transparent;color:var(--muted);cursor:pointer;transition:color .15s ease,border-color .15s ease}.theme-toggle:hover{color:var(--text);border-color:var(--accent)}.theme-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.theme-toggle-icon{grid-area:1 / 1;width:16px;height:16px;display:block;transition:opacity .55s ease-in-out,transform .55s ease-in-out}.theme-toggle-sun{opacity:0;transform:rotate(-90deg) scale(.4)}.theme-toggle-moon,.theme-toggle[data-dark] .theme-toggle-sun{opacity:1;transform:rotate(0) scale(1);transition-delay:.4s}.theme-toggle[data-dark] .theme-toggle-moon{opacity:0;transform:rotate(90deg) scale(.4);transition-delay:0s}@media (prefers-reduced-motion: reduce){.theme-toggle-icon{transition:opacity .15s ease;transition-delay:0s;transform:none}}.case-study-header{position:sticky;top:0;z-index:100;background:color-mix(in srgb,var(--bg) 65%,transparent);backdrop-filter:blur(16px) saturate(1.6);-webkit-backdrop-filter:blur(16px) saturate(1.6);border-bottom:1px solid transparent;transition:border-color .15s ease}.case-study-header[data-scrolled]{border-bottom-color:color-mix(in srgb,var(--tonal) 70%,transparent)}@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))){.case-study-header{background:var(--bg)}.case-study-header[data-scrolled]{border-bottom-color:var(--tonal)}}.case-study-header-inner{position:relative;display:flex;align-items:center;justify-content:space-between;gap:16px;max-width:1120px;min-height:64px;margin-inline:auto;padding-inline:24px}.case-study-header-left{display:flex;align-items:center;flex-shrink:0;gap:16px}.case-study-header-back{font-family:IBM Plex Mono,ui-monospace,SFMono-Regular,Menlo,monospace;font-weight:400;font-size:.85rem;letter-spacing:.02em;color:var(--muted);text-decoration:none;white-space:nowrap}.case-study-header-back:hover{color:var(--text)}.case-study-header-sections-link{position:relative;font-family:IBM Plex Mono,ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.85rem;text-decoration:none;color:var(--muted);white-space:nowrap}a.case-study-header-sections-link:hover,a.case-study-header-sections-link.is-active{color:var(--text)}a.case-study-header-sections-link:after{content:"";position:absolute;left:0;right:0;bottom:-2px;height:1px;background:var(--accent-alt);transform:scaleX(0);transform-origin:right;transition:transform .28s ease}a.case-study-header-sections-link:hover:after,a.case-study-header-sections-link:focus-visible:after,a.case-study-header-sections-link.is-active:after{transform:scaleX(1);transform-origin:left}.case-study-header-sections{display:flex;align-items:center;gap:24px}.case-study-header-sections-measure{position:absolute;visibility:hidden;top:0;left:-9999px;pointer-events:none;display:flex;align-items:center;gap:24px;white-space:nowrap}.case-study-nav-toggle{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:1px solid var(--tonal);border-radius:4px;background:transparent;color:var(--text);cursor:pointer;transition:border-color .15s ease,color .15s ease}.case-study-nav-toggle:hover{border-color:var(--accent)}.case-study-nav-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.case-study-nav-toggle svg{width:18px;height:18px;display:block}.case-study-header-inner.is-nav-collapsed .case-study-header-sections{position:absolute;top:100%;left:0;right:0;z-index:1;flex-direction:column;align-items:flex-end;gap:4px;padding:8px 24px 24px;background:var(--bg);border-bottom:1px solid var(--tonal);box-shadow:0 8px 18px -8px #00000029;opacity:0;visibility:hidden;transform:translateY(-8px);pointer-events:none;transition:opacity .28s ease,transform .28s ease,visibility 0s linear .28s}.case-study-header-inner.is-nav-collapsed .case-study-header-sections.is-open{opacity:1;visibility:visible;transform:none;pointer-events:auto;transition:opacity .28s ease,transform .28s ease,visibility 0s linear 0s}.case-study-header-inner.is-nav-collapsed .case-study-header-sections .case-study-header-sections-link{padding:8px 0;font-family:Raleway,ui-sans-serif,system-ui,-apple-system,sans-serif;font-weight:500;font-size:1.15rem;color:var(--text)}.case-study-header-inner.is-nav-collapsed .case-study-header-sections .case-study-header-sections-link.is-active{color:var(--accent-alt)}@media (prefers-reduced-motion: reduce){.case-study-header-inner.is-nav-collapsed .case-study-header-sections,.case-study-header-inner.is-nav-collapsed .case-study-header-sections.is-open{transition:none}}@media (prefers-reduced-motion: reduce){a.case-study-header-sections-link:after{transition:none}}.cursor{display:contents;--cursor-dot-size: 7px;--cursor-disc-size: 22px;--cursor-disc-size-hot: 36px;--cursor-disc-size-pressed: 14px}.cursor__disc,.cursor__dot,.cursor__label{position:fixed;top:0;left:0;z-index:1000;pointer-events:none;opacity:0}.cursor__disc{width:var(--cursor-disc-size);height:var(--cursor-disc-size);border-radius:50%;background:#fff;mix-blend-mode:difference;transition:opacity .22s cubic-bezier(.16,1,.3,1),width .15s ease,height .15s ease}.cursor__dot{width:var(--cursor-dot-size);height:var(--cursor-dot-size);border-radius:50%;background:var(--accent);will-change:transform;transition:opacity .22s cubic-bezier(.16,1,.3,1)}.cursor__disc.is-visible,.cursor__dot.is-visible{opacity:1}.cursor__disc.is-hot{width:var(--cursor-disc-size-hot);height:var(--cursor-disc-size-hot)}.cursor__disc.is-pressed{width:var(--cursor-disc-size-pressed);height:var(--cursor-disc-size-pressed)}.cursor__label{transition:opacity .22s cubic-bezier(.16,1,.3,1)}.cursor__label-inner{display:inline-flex;align-items:center;gap:.4em;padding:8px 12px;border-radius:4px;background:var(--text);color:var(--bg);box-shadow:0 0 0 1px var(--bg);font-family:IBM Plex Mono,ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.85rem;line-height:1;white-space:nowrap;transform:scale(.7);transition:transform .22s cubic-bezier(.16,1,.3,1)}.cursor__label.is-visible .cursor__label-inner{transform:scale(1)}.cursor__label-arrow{width:.8em;height:.8em;flex:none}.cursor__label.no-arrow .cursor__label-arrow{display:none}.cursor__label-icon{display:none;width:20px;height:20px}.cursor__label.icon-mode .cursor__label-inner{gap:0;padding:4px;border-radius:50%}.cursor__label.icon-mode .cursor__label-text,.cursor__label.icon-mode .cursor__label-arrow{display:none}.cursor__label.icon-mode .cursor__label-icon{display:block}.cursor__label.is-visible{opacity:1}body.has-custom-cursor,body.has-custom-cursor a,body.has-custom-cursor button,body.has-custom-cursor .btn,body.has-custom-cursor [role=button],body.has-custom-cursor label,body.has-custom-cursor summary,body.has-custom-cursor [data-cursor-label],body.has-custom-cursor [data-cursor-icon]{cursor:none}@media (prefers-reduced-motion: reduce){.cursor__disc,.cursor__dot,.cursor__label{display:none}}.site-footer{border-top:1px solid var(--tonal)}.site-footer-inner{padding-block:24px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;color:var(--muted);font-family:IBM Plex Mono,ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.85rem}.site-footer-inner p{margin:0}.footer-links a{position:relative;margin-left:32px;color:var(--muted);text-decoration:none}.footer-links a:first-child{margin-left:0}.footer-links a:hover{color:var(--text)}.footer-links a:after{content:"";position:absolute;left:0;right:0;bottom:-2px;height:1px;background:var(--accent-alt);transform:scaleX(0);transform-origin:right;transition:transform .28s ease}.footer-links a:hover:after,.footer-links a:focus-visible:after{transform:scaleX(1);transform-origin:left}@media (prefers-reduced-motion: reduce){.footer-links a:after{transition:none}}.nav{display:flex;align-items:center;flex-wrap:wrap}.nav .nav-links{display:contents}.nav a{margin-left:32px;font-family:IBM Plex Mono,ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.85rem;text-decoration:none;color:var(--muted)}.nav a:hover{color:var(--text)}.nav a:not(.nav-cta){position:relative}.nav a:not(.nav-cta):after{content:"";position:absolute;left:0;right:0;bottom:-2px;height:1px;background:var(--accent-alt);transform:scaleX(0);transform-origin:right;transition:transform .28s ease}.nav a:not(.nav-cta):hover:after,.nav a:not(.nav-cta):focus-visible:after{transform:scaleX(1);transform-origin:left}.nav a.nav-cta{display:inline-flex;align-items:center;gap:4px;margin-left:32px;padding:8px 16px;font-family:Inter,ui-sans-serif,system-ui,-apple-system,sans-serif;font-size:.85rem;color:var(--bg)}.nav a.nav-cta:hover{color:var(--accent-text)}.ext-icon{width:.85em;height:.85em;flex-shrink:0}@media (max-width: 560px){.nav{position:absolute;top:100%;left:0;right:0;z-index:1;flex-direction:column;align-items:flex-end;gap:12px;padding:8px 24px 24px;background:var(--bg);border-bottom:1px solid var(--tonal);box-shadow:0 8px 18px -8px #00000029;opacity:0;visibility:hidden;transform:translateY(-8px);pointer-events:none;transition:opacity .28s ease,transform .28s ease,visibility 0s linear .28s}.nav.is-open{opacity:1;visibility:visible;transform:none;pointer-events:auto;transition:opacity .28s ease,transform .28s ease,visibility 0s linear 0s}.nav .nav-links{display:flex;flex-direction:column;align-items:flex-end;gap:4px}.nav .nav-links a{margin-left:0;padding:8px 0;font-family:Raleway,ui-sans-serif,system-ui,-apple-system,sans-serif;font-weight:500;font-size:1.15rem;color:var(--text)}.nav a.nav-cta{margin-left:0;font-size:.95rem;padding:8px 16px}}@media (max-width: 560px) and (prefers-reduced-motion: reduce){.nav,.nav.is-open{transition:none}}@media (prefers-reduced-motion: reduce){.nav a:not(.nav-cta):after{transition:none}}.site-header{position:sticky;top:0;z-index:100;background:color-mix(in srgb,var(--bg) 65%,transparent);backdrop-filter:blur(16px) saturate(1.6);-webkit-backdrop-filter:blur(16px) saturate(1.6);border-bottom:1px solid transparent;transition:border-color .15s ease}.site-header[data-scrolled]{border-bottom-color:color-mix(in srgb,var(--tonal) 70%,transparent)}@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))){.site-header{background:var(--bg)}.site-header[data-scrolled]{border-bottom-color:var(--tonal)}}.site-header-inner{position:relative;display:flex;align-items:center;justify-content:space-between;gap:16px;height:64px}.brand{display:flex;align-items:center;gap:12px}.wordmark{font-family:Raleway,ui-sans-serif,system-ui,-apple-system,sans-serif;font-weight:700;font-size:1.05rem;text-decoration:none;color:var(--text)}.nav-toggle{display:none}@media (max-width: 560px){.nav-toggle{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:1px solid var(--tonal);border-radius:4px;background:transparent;color:var(--text);cursor:pointer;transition:border-color .15s ease,color .15s ease}.nav-toggle:hover{border-color:var(--accent)}.nav-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.nav-toggle svg{width:18px;height:18px;display:block}}.portrait{--puzzle-gap: 4px;--puzzle-control: 36px;position:relative;container-type:inline-size}.portrait-img{display:block;box-sizing:border-box;width:100%;height:100%;padding-inline:calc((1 - var(--photo-scale)) / 2 * 100%);padding-top:calc((1 - var(--photo-scale) * var(--photo-aspect)) * 100%);object-fit:contain;object-position:50% 100%;border-radius:24px;background:var(--tonal)}.puzzle{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:24px}.puzzle:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.puzzle-tile{position:absolute;top:0;left:0;width:calc((100% - (var(--puzzle-size) - 1) * var(--puzzle-gap)) / var(--puzzle-size));height:calc((100% - (var(--puzzle-size) - 1) * var(--puzzle-gap)) / var(--puzzle-size));padding:0;border:0;border-radius:8px;background-color:var(--tonal);background-repeat:no-repeat;background-size:calc(var(--puzzle-size) * var(--photo-scale) * 100%) auto;background-position:var(--bg-x) var(--bg-y);transform:translate(calc(var(--col) * (100% + var(--puzzle-gap))),calc(var(--row) * (100% + var(--puzzle-gap))));transition:transform .22s cubic-bezier(.2,.7,.2,1),border-radius .28s ease,opacity .28s ease,filter .15s ease;cursor:default}.puzzle-tile.is-movable{cursor:pointer}.puzzle-tile.is-movable:hover{filter:brightness(1.12)}.puzzle-tile.is-blank{opacity:0;pointer-events:none}.is-solved{--puzzle-gap: 0px}.is-solved .puzzle-tile{border-radius:0}.is-solved .puzzle-tile.is-blank{opacity:1}.puzzle-number{position:absolute;top:8px;left:8px;display:grid;place-items:center;min-width:22px;height:22px;padding:0 4px;border:1px solid color-mix(in srgb,var(--text) 18%,transparent);border-radius:4px;font-family:IBM Plex Mono,ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.85rem;line-height:1;color:var(--text);background:color-mix(in srgb,var(--bg) 72%,transparent);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);pointer-events:none;transition:opacity .28s ease}.is-solved .puzzle-number{opacity:0}@property --ring-angle{syntax: "<angle>"; inherits: false; initial-value: 0deg;}.portrait.is-solved:before{content:"";position:absolute;top:-4px;right:-4px;bottom:-4px;left:-4px;z-index:3;padding:4px;border-radius:28px;background:conic-gradient(from var(--ring-angle),var(--rainbow-1),var(--rainbow-2),var(--rainbow-3),var(--rainbow-4),var(--rainbow-5),var(--rainbow-6),var(--rainbow-7),var(--rainbow-1));-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:0;pointer-events:none}@media (prefers-reduced-motion: no-preference){.portrait.is-solved:before{animation:portrait-ring 2.2s ease-in-out}}@keyframes portrait-ring{0%{--ring-angle: 0deg;opacity:0}20%{--ring-angle: 120deg;opacity:1}75%{--ring-angle: 300deg;opacity:1}to{--ring-angle: 360deg;opacity:0}}.confetti{--confetti-1: var(--accent);--confetti-2: var(--accent-alt);--confetti-3: #ffb996;--confetti-4: var(--coral-text);--confetti-5: #ffd6b9;position:absolute;top:0;right:0;bottom:0;left:0;z-index:6;overflow:hidden;border-radius:24px;pointer-events:none}.confetti-piece{position:absolute;top:0;left:var(--x);width:var(--size);height:calc(var(--size) * .55);background:var(--color);animation:confetti-fall var(--dur) cubic-bezier(.25,.2,.75,.9) var(--delay) both,confetti-sway var(--dur) ease-in-out var(--delay) both,confetti-spin var(--dur) linear var(--delay) both,confetti-fade var(--dur) linear var(--delay) both}.confetti-piece.is-round{height:var(--size);border-radius:50%}@keyframes confetti-fall{0%{transform:translateY(var(--start))}to{transform:translateY(var(--fall))}}@keyframes confetti-sway{0%,50%,to{translate:0 0}25%{translate:var(--sway) 0}75%{translate:calc(var(--sway) * -1) 0}}@keyframes confetti-spin{to{rotate:var(--spin)}}@keyframes confetti-fade{0%{opacity:0}8%,88%{opacity:1}to{opacity:0}}.portrait-sparkles{position:absolute;top:0;left:0;width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:2px;stroke-linejoin:round;color:var(--text);pointer-events:none}.portrait-sparkles path{vector-effect:non-scaling-stroke}.portrait-sparkles.is-corner{width:calc(100% / var(--puzzle-size));height:calc(100% / var(--puzzle-size))}.portrait-action,.portrait-status,.portrait-sizes{border:1px solid color-mix(in srgb,var(--text) 18%,transparent);color:var(--text);background:color-mix(in srgb,var(--bg) 72%,transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.portrait-action{display:grid;place-items:center;width:var(--puzzle-control);height:var(--puzzle-control);padding:0;border-radius:50%;cursor:pointer;transition:border-color .15s ease,background-color .15s ease}.portrait-action:hover{border-color:var(--accent)}.portrait-action.is-corner{position:absolute;top:12px;right:12px;z-index:2}.portrait-callout{--callout-bg: var(--text);position:absolute;bottom:calc(100% + 12px);right:0;z-index:3;width:max-content;max-width:min(220px,90vw);padding:8px 12px;border-radius:8px;font-family:IBM Plex Mono,ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.85rem;letter-spacing:.02em;color:var(--bg);background:var(--callout-bg);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .1s ease,visibility .1s}.portrait-callout:after{content:"";position:absolute;bottom:-5px;right:calc(12px + var(--puzzle-control) / 2 - 5px);width:10px;height:10px;background:var(--callout-bg);transform:rotate(45deg)}@media (max-width: 760px){.portrait-callout{top:12px;right:auto;bottom:auto;left:calc(100% + 12px);max-width:180px}.portrait-callout:after{top:calc(var(--puzzle-control) / 2 - 5px);right:auto;bottom:auto;left:-5px}}.portrait-action:hover+.portrait-callout,.portrait-action:focus-visible+.portrait-callout{opacity:1;visibility:visible}.portrait-action-glyph{width:16px;height:16px}.portrait-controls{position:absolute;top:calc(100% + 12px);left:0;right:0;z-index:2;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px}.portrait-controls-end{display:flex;align-items:center;gap:8px;margin-left:auto}.portrait-status{display:flex;align-items:center;gap:4px;height:var(--puzzle-control);margin:0;padding:0 12px;border-radius:999px;font-family:IBM Plex Mono,ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.85rem;letter-spacing:.02em;white-space:nowrap}.portrait-status.is-solved{border-color:var(--accent)}.portrait-status-glyph{width:14px;height:14px;color:var(--coral-text)}@container (max-width: 279px){.portrait-status-word{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.portrait-size{padding:0 8px}}.portrait-sizes{display:flex;height:var(--puzzle-control);padding:3px;border-radius:999px}.portrait-size{padding:0 12px;border:0;border-radius:999px;font-family:IBM Plex Mono,ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.85rem;letter-spacing:.02em;color:var(--muted);background:transparent;cursor:pointer;transition:color .15s ease,background-color .15s ease}.portrait-size:hover{color:var(--text)}.portrait-size[aria-checked=true]{color:var(--accent-text);background:var(--accent);cursor:default}@media (prefers-reduced-motion: no-preference){.is-solved .portrait-img{animation:portrait-pop .5s cubic-bezier(.34,1.56,.64,1)}}@keyframes portrait-pop{0%{transform:scale(.94)}to{transform:scale(1)}}@media (prefers-reduced-motion: reduce){.puzzle-tile{transition:none}}.intro{padding-top:96px;padding-bottom:144px;--hero-eyebrow-size: .95rem;--hero-title-size: clamp(1.85rem, 1rem + 3vw, 2.5rem);--hero-title-leading: 1.1;--hero-title-weight: 600;--hero-lede-size: clamp(1rem, .75rem + 1vw, 1.25rem);display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:32px;align-items:center}@media (max-width: 760px){.intro{grid-template-columns:minmax(0,1fr);row-gap:32px}}.intro-photo{width:clamp(220px,28vw,340px);aspect-ratio:1;justify-self:end}@media (max-width: 760px){.intro-photo{grid-row:1;justify-self:start;width:120px}.intro-photo.is-playing,.intro-photo.is-solved{width:min(100%,320px);margin-bottom:calc(var(--puzzle-control) + 12px)}}.eyebrow{margin:0 0 12px;font-family:IBM Plex Mono,ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.85rem;letter-spacing:.02em;color:var(--muted)}.intro .eyebrow{font-size:var(--hero-eyebrow-size)}.intro h1{margin:0 0 24px;font-weight:var(--hero-title-weight);font-size:var(--hero-title-size);line-height:var(--hero-title-leading);max-width:26ch;text-wrap:balance}@media (min-width: 60em){.intro h1{max-width:none;white-space:pre-line}}.typed{display:block;color:var(--coral-text)}@media (min-width: 30em){.typed{display:inline}}.typed-caret{display:inline-block;width:.6em;height:1.1em;margin-left:.1em;vertical-align:-.2em;background:currentColor}@media (prefers-reduced-motion: no-preference){.typed-caret{animation:typed-caret-blink 1s steps(1) infinite}}@keyframes typed-caret-blink{50%{opacity:0}}.lede{margin:0 0 12px;font-size:1.15rem;color:var(--muted);max-width:55ch}.intro .lede{margin-bottom:32px;font-size:var(--hero-lede-size);max-width:46ch;text-wrap:balance}.lede-mark{--mark-height: 35%;--mark-strength: 28%;--mark-wash: color-mix(in srgb, var(--accent) var(--mark-strength), transparent);padding:0 .12em;margin:0 -.12em;border-radius:2px;color:var(--text);font-weight:500;background:linear-gradient(var(--mark-wash),var(--mark-wash)) no-repeat 0 78% / 100% var(--mark-height);-webkit-box-decoration-break:clone;box-decoration-break:clone}@keyframes lede-mark-draw{0%{background-size:0% var(--mark-height)}}@media (prefers-reduced-motion: no-preference){.lede-mark{animation:lede-mark-draw .9s cubic-bezier(.2,.7,.2,1) .2s backwards}.lede-mark:nth-of-type(2){animation-delay:.6s}}@media (prefers-color-scheme: dark){:root:not([data-theme=light]) .lede-mark{--mark-strength: 36%}}:root[data-theme=dark] .lede-mark{--mark-strength: 36%}.intro-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px}.intro-socials{display:flex;gap:8px}.build-process-scrubber{display:flex;gap:12px;margin-bottom:32px;padding-bottom:8px;overflow-x:auto}.build-process-step{flex:0 0 auto;display:flex;flex-direction:column;gap:4px;width:11rem;padding:12px 16px;text-align:left;font:inherit;color:var(--muted);background:var(--tonal);border:1px solid transparent;border-radius:8px;cursor:pointer;transition:border-color .15s ease,color .15s ease}.build-process-step:hover{color:var(--text)}.build-process-step.is-active{color:var(--text);border-color:var(--accent)}.build-process-step-index{font-family:IBM Plex Mono,ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.75rem;color:var(--muted)}.build-process-step-title{font-size:.95rem;font-weight:500;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.build-process-detail{padding:32px;background:var(--tonal);border-radius:8px}.build-process-label{font-family:IBM Plex Mono,ui-monospace,SFMono-Regular,Menlo,monospace;font-weight:400;font-size:.85rem;letter-spacing:.02em;color:var(--muted);margin:0 0 8px}.build-process-label+.build-process-label{margin-top:24px}.build-process-prompt{margin:0;font-family:Raleway,ui-sans-serif,system-ui,-apple-system,sans-serif;font-size:1.15rem;font-style:italic}.build-process-output{margin:8px 0 0;padding:16px;overflow-x:auto;font-family:IBM Plex Mono,ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.85rem;line-height:1.6;color:var(--muted);background:var(--bg);border-radius:8px}.build-process-output code{white-space:pre}.build-process-edit{margin:8px 0 0}.build-process-rationale{margin:24px 0 0;padding-top:24px;border-top:1px solid var(--bg);color:var(--muted);font-size:.95rem}.build-process-nav{display:flex;align-items:center;justify-content:center;gap:16px;margin-top:24px}.build-process-nav-count{font-family:IBM Plex Mono,ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.85rem;color:var(--muted)}.build-process .btn:disabled{opacity:.4;cursor:not-allowed}.design-explorer{display:grid;grid-template-columns:minmax(220px,300px) 1fr;gap:48px;align-items:start}@media (max-width: 600px){.design-explorer{grid-template-columns:1fr}}.design-explorer-controls{display:flex;flex-direction:column;gap:24px;padding:24px;background:var(--tonal);border-radius:8px}.design-explorer-control{display:flex;flex-direction:column;gap:8px}.design-explorer-control-label{display:flex;justify-content:space-between;font-family:IBM Plex Mono,ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.85rem;color:var(--muted)}.design-explorer-control-value{color:var(--text)}.design-explorer-control input[type=range]{width:100%;accent-color:var(--accent-alt)}.design-explorer-preview{display:flex;flex-direction:column;gap:24px;padding:32px;background:var(--bg);border:1px solid var(--tonal);border-radius:8px}.design-explorer-preview .btn{border-radius:var(--pg-radius)}.design-explorer-preview .btn-primary:hover{background:var(--pg-accent);color:var(--pg-accent-text)}.design-explorer-preview .btn-secondary:hover{border-color:var(--pg-accent)}.design-explorer-preview .badge{border-radius:var(--pg-radius);background:var(--pg-accent);color:var(--pg-accent-text)}.design-explorer-preview-row{display:flex;flex-wrap:wrap;align-items:center;gap:12px}.pg-card{padding:24px;background:var(--tonal);border-radius:var(--pg-radius)}.pg-card-eyebrow{font-family:IBM Plex Mono,ui-monospace,SFMono-Regular,Menlo,monospace;font-weight:400;font-size:.85rem;letter-spacing:.02em;color:var(--muted);margin:0 0 8px}.pg-card-title{margin:0 0 8px;font-family:Raleway,ui-sans-serif,system-ui,-apple-system,sans-serif;font-weight:600;font-size:calc(1.15rem * var(--pg-scale))}.pg-card-body{margin:0;color:var(--muted);font-size:calc(.95rem * var(--pg-scale))}.motion-sandbox-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}@media (max-width: 600px){.motion-sandbox-grid{grid-template-columns:1fr}}.motion-swatch{padding:24px;background:var(--tonal);border-radius:8px}.motion-swatch-stage{display:flex;align-items:center;justify-content:center;height:128px;margin-bottom:16px;background:var(--bg);border-radius:8px;overflow:hidden}.motion-swatch-name{margin:0 0 4px;font-family:Raleway,ui-sans-serif,system-ui,-apple-system,sans-serif;font-weight:600}.motion-swatch-technique{font-family:IBM Plex Mono,ui-monospace,SFMono-Regular,Menlo,monospace;font-weight:400;font-size:.85rem;letter-spacing:.02em;color:var(--muted);margin:0 0 8px}.motion-swatch-description{margin:0;color:var(--muted);font-size:.95rem}.motion-magnetic-field{display:flex;align-items:center;justify-content:center;width:100%;height:100%;cursor:pointer}.motion-magnetic-dot{width:3rem;height:3rem;border-radius:50%;background:var(--accent);transition:transform .15s ease}@media (prefers-reduced-motion: reduce){.motion-magnetic-dot{transition:none}}.motion-reveal-stage{display:flex;align-items:center;justify-content:center;width:100%;height:100%}.motion-reveal-card{padding:12px 16px;font-family:IBM Plex Mono,ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.85rem;color:var(--muted);background:var(--tonal);border-radius:8px;opacity:0;transform:translateY(12px);transition:opacity .28s ease,transform .28s ease}.motion-reveal-card.is-visible{opacity:1;transform:none}@media (prefers-reduced-motion: reduce){.motion-reveal-card{transition:none;opacity:1;transform:none}}@property --motion-ring-angle{syntax: "<angle>"; initial-value: 0deg; inherits: false;}.motion-ring-tile{display:flex;align-items:center;justify-content:center;width:96px;height:96px;font-family:IBM Plex Mono,ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.85rem;color:var(--muted);border-radius:8px;background:linear-gradient(var(--bg),var(--bg)) padding-box,linear-gradient(var(--bg),var(--bg)) border-box;border:3px solid transparent}.motion-ring-tile:hover{background:linear-gradient(var(--bg),var(--bg)) padding-box,conic-gradient(from var(--motion-ring-angle),var(--accent),#ffd6b9,var(--accent-alt),var(--accent)) border-box}@media (prefers-reduced-motion: no-preference){.motion-ring-tile:hover{animation:motion-ring-spin 3s linear infinite}}@keyframes motion-ring-spin{to{--motion-ring-angle: 360deg}}.playground-eyebrow{font-family:IBM Plex Mono,ui-monospace,SFMono-Regular,Menlo,monospace;font-weight:400;font-size:.85rem;letter-spacing:.02em;color:var(--muted);margin:0 0 12px}.playground-intro{padding-block:64px 32px}.playground-lede{margin:0;max-width:55ch;font-size:1.15rem;color:var(--muted)}.playground-tabs{position:sticky;top:64px;z-index:99;background:var(--bg);border-bottom:1px solid var(--tonal)}.playground-tabs-inner{display:flex;gap:32px;max-width:1120px;margin-inline:auto;padding-inline:24px;overflow-x:auto}.playground-tabs-inner a{padding-block:12px;font-family:IBM Plex Mono,ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.85rem;letter-spacing:.02em;color:var(--muted);text-decoration:none;white-space:nowrap;border-bottom:2px solid transparent;transition:color .15s ease,border-color .15s ease}.playground-tabs-inner a:hover{color:var(--text)}.playground-tabs-inner a.is-active{color:var(--text);border-color:var(--accent-alt)}.playground-module{padding-block:64px}.playground-closing{max-width:44rem;margin-inline:auto;padding-block:96px;text-align:center}.playground-closing p{max-width:50ch;margin:16px auto 0;color:var(--muted)}.playground-closing-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin-top:32px}.playground-caption{margin:16px 0 0;font-family:IBM Plex Mono,ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.85rem;color:var(--muted)}.work{padding-bottom:96px}.work-group+.work-group{margin-top:64px}.work-group-title{margin:0 0 24px}.card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}@media (max-width: 600px){.card-grid{grid-template-columns:1fr}}.row-list{display:flex;flex-direction:column;gap:24px}:root{--bg: #f8f3f1;--text: #201a18;--muted: #7a635c;--tonal: #f2e7e5;--accent: #fb9280;--accent-alt: #f76a6a;--accent-text: #201f1c;--coral-text: #c2432f;--rainbow-1: #ff5a5f;--rainbow-2: #ff9f43;--rainbow-3: #ffd93d;--rainbow-4: #5ad17a;--rainbow-5: #4dabf7;--rainbow-6: #7c6cf0;--rainbow-7: #c56cf0}@media (prefers-color-scheme: dark){:root:not([data-theme=light]){--bg: #110e0e;--text: #f0ebe7;--muted: #a5938d;--tonal: #1f1b1a;--coral-text: #fb9280}}:root[data-theme=dark]{--bg: #110e0e;--text: #f0ebe7;--muted: #a5938d;--tonal: #1f1b1a;--coral-text: #fb9280}*,*:before,*:after{box-sizing:border-box}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}html{scroll-padding-top:96px;overflow-x:hidden}@media (prefers-reduced-motion: no-preference){html{scroll-behavior:smooth}}body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,sans-serif;font-weight:400;font-size:1rem;line-height:1.6;-webkit-font-smoothing:antialiased;text-wrap:pretty}:root[data-theme-changing],:root[data-theme-changing] *,:root[data-theme-changing] *:before,:root[data-theme-changing] *:after{transition:background-color .7s cubic-bezier(.16,1,.3,1),border-color .7s cubic-bezier(.16,1,.3,1),color .7s cubic-bezier(.16,1,.3,1),fill .7s cubic-bezier(.16,1,.3,1),stroke .7s cubic-bezier(.16,1,.3,1)}.site-header-inner,main>section,.site-footer-inner{max-width:1120px;margin-inline:auto;padding-inline:24px}a{color:var(--text);text-decoration:underline;text-decoration-color:var(--accent);text-decoration-thickness:1px;text-underline-offset:3px}a:hover{text-decoration-color:var(--accent-alt)}h1,h2,h3,h4{font-family:Raleway,ui-sans-serif,system-ui,-apple-system,sans-serif;font-weight:500;line-height:1.2;letter-spacing:-.01em;text-wrap:balance}h1{font-size:clamp(1.85rem,1rem + 3vw,2.5rem);line-height:1.1}h2{font-size:1.4rem}h3,h4{font-size:1.15rem}.btn{display:inline-block;font-family:Inter,ui-sans-serif,system-ui,-apple-system,sans-serif;font-weight:500;font-size:.95rem;line-height:1;padding:12px 24px;border:1px solid transparent;border-radius:4px;text-decoration:none;cursor:pointer;transition:background .15s ease,border-color .15s ease,color .15s ease,transform .15s ease}.btn-primary{background:var(--text);color:var(--bg)}.btn-primary:hover{background:var(--accent-alt);color:var(--accent-text)}.btn-secondary{background:var(--tonal);color:var(--text)}.btn-secondary:hover{border-color:var(--accent)}.btn-icon{display:inline-flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;padding:0;background:var(--tonal);color:var(--text)}.btn-icon:hover{border-color:var(--accent);color:var(--accent-alt)}.btn-icon svg{width:1.15rem;height:1.15rem}.btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media (prefers-reduced-motion: no-preference){.btn:active{transform:scale(.96)}}.badge{display:inline-block;font-family:IBM Plex Mono,ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.75rem;padding:4px 12px;border-radius:8px;background:var(--accent);color:var(--accent-text)}.section-title{font-family:IBM Plex Mono,ui-monospace,SFMono-Regular,Menlo,monospace;font-weight:400;font-size:.85rem;letter-spacing:.02em;color:var(--muted);margin:0 0 32px}
