.projects-section[data-astro-cid-hcjuqwdu]{padding:250px 0 24px;border-bottom:1px solid var(--line)}.projects-wrapper[data-astro-cid-hcjuqwdu]{max-width:1740px;margin:0 auto;padding:0 32px}.projects-row[data-astro-cid-hcjuqwdu]{display:flex;align-items:flex-start;gap:52px}.projects-eyebrow[data-astro-cid-hcjuqwdu]{flex-shrink:0;font-size:16px;font-weight:400;line-height:24px;color:var(--text-faint);margin-top:24px}.projects-heading-block[data-astro-cid-hcjuqwdu]{flex:1;min-width:0}.projects-title-row[data-astro-cid-hcjuqwdu]{display:flex;align-items:flex-start;gap:16px}.projects-title[data-astro-cid-hcjuqwdu]{font-family:var(--font-heading);font-size:80px;font-weight:600;letter-spacing:-4px;line-height:96px;color:var(--color-heading);margin:0}.projects-star[data-astro-cid-hcjuqwdu]{width:30px;height:31px;margin-top:28px;flex-shrink:0;filter:brightness(0) invert(1);opacity:.7}.projects-lead[data-astro-cid-hcjuqwdu]{font-size:16px;font-weight:400;line-height:24px;color:var(--text-dim);max-width:60ch;margin:16px 0 0}.portfolio-section[data-astro-cid-hcjuqwdu]{padding:64px 0 24px}.portfolio-inner[data-astro-cid-hcjuqwdu]{max-width:1920px;margin:0 auto;padding:0 32px;overflow:hidden}.portfolio-track[data-astro-cid-hcjuqwdu]{display:flex;gap:28px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;-ms-overflow-style:none}.portfolio-track[data-astro-cid-hcjuqwdu]::-webkit-scrollbar{display:none}.banner-box[data-astro-cid-hcjuqwdu]{flex:0 0 calc(50% - 14px);position:relative;overflow:hidden;display:block;text-decoration:none;scroll-snap-align:start}.banner-image[data-astro-cid-hcjuqwdu]{position:relative;overflow:hidden;width:100%}.banner-image[data-astro-cid-hcjuqwdu] img[data-astro-cid-hcjuqwdu]{position:relative;top:0;width:100%;height:auto;aspect-ratio:672 / 468;object-fit:cover;display:block;border-radius:0;transition:top .2s ease-in-out}.banner-mask[data-astro-cid-hcjuqwdu]{position:absolute;inset:0;background:linear-gradient(to top,#07070ceb,#07070c8c 55%,#07070c33);opacity:0;transition:opacity .2s ease-in-out;pointer-events:none}.banner-box[data-astro-cid-hcjuqwdu]:hover .banner-image[data-astro-cid-hcjuqwdu] img[data-astro-cid-hcjuqwdu],.banner-box[data-astro-cid-hcjuqwdu]:focus-visible .banner-image[data-astro-cid-hcjuqwdu] img[data-astro-cid-hcjuqwdu]{top:-15px}.banner-box[data-astro-cid-hcjuqwdu]:hover .banner-mask[data-astro-cid-hcjuqwdu],.banner-box[data-astro-cid-hcjuqwdu]:focus-visible .banner-mask[data-astro-cid-hcjuqwdu]{opacity:1}.banner-desc[data-astro-cid-hcjuqwdu]{position:absolute;left:0;top:0;width:100%;height:100%;display:flex;justify-content:center;align-items:flex-end;box-sizing:border-box;pointer-events:none}.banner-wrapper[data-astro-cid-hcjuqwdu]{display:flex;flex-direction:column;align-items:center;width:70%;max-width:100%;padding:40px;box-sizing:border-box;text-align:center;transform:translateY(24px);transition:transform .2s ease-in-out}.banner-box[data-astro-cid-hcjuqwdu]:hover .banner-wrapper[data-astro-cid-hcjuqwdu],.banner-box[data-astro-cid-hcjuqwdu]:focus-visible .banner-wrapper[data-astro-cid-hcjuqwdu]{transform:translateY(0)}.banner-title[data-astro-cid-hcjuqwdu]{font-size:32px;font-weight:500;letter-spacing:-1px;color:var(--text);line-height:42px;margin:0}.banner-hidden[data-astro-cid-hcjuqwdu]{opacity:0;max-height:0;overflow:hidden;transition:opacity .2s ease-in-out,max-height .2s ease-in-out}.banner-box[data-astro-cid-hcjuqwdu]:hover .banner-hidden[data-astro-cid-hcjuqwdu],.banner-box[data-astro-cid-hcjuqwdu]:focus-visible .banner-hidden[data-astro-cid-hcjuqwdu]{opacity:1;max-height:240px}.banner-hidden-inner[data-astro-cid-hcjuqwdu]{padding-top:12px;display:flex;flex-direction:column;align-items:center}.banner-excerpt[data-astro-cid-hcjuqwdu]{font-size:16px;font-weight:400;color:var(--text-dim);line-height:24px;margin:0 0 24px}.banner-cta[data-astro-cid-hcjuqwdu]{display:inline-flex;align-items:center;justify-content:center;width:72px;height:72px;border-radius:50%;background-color:var(--lime);color:var(--ink);transition:transform .1s ease-in-out}.banner-box[data-astro-cid-hcjuqwdu]:hover .banner-cta[data-astro-cid-hcjuqwdu],.banner-box[data-astro-cid-hcjuqwdu]:focus-visible .banner-cta[data-astro-cid-hcjuqwdu]{transform:scale(1.06)}.banner-cta[data-astro-cid-hcjuqwdu] svg[data-astro-cid-hcjuqwdu]{width:26px;height:26px}@media(prefers-reduced-motion:reduce){.banner-image[data-astro-cid-hcjuqwdu] img[data-astro-cid-hcjuqwdu],.banner-mask[data-astro-cid-hcjuqwdu],.banner-wrapper[data-astro-cid-hcjuqwdu],.banner-hidden[data-astro-cid-hcjuqwdu],.banner-cta[data-astro-cid-hcjuqwdu]{transition:none}}@media(max-width:1280px){.projects-star[data-astro-cid-hcjuqwdu]{width:28px}}@media(max-width:1023px){.projects-section[data-astro-cid-hcjuqwdu]{padding-top:200px}.projects-row[data-astro-cid-hcjuqwdu]{gap:32px}.projects-title[data-astro-cid-hcjuqwdu]{font-size:68px;line-height:82px;letter-spacing:-3px}.projects-eyebrow[data-astro-cid-hcjuqwdu]{margin-top:16px}.projects-star[data-astro-cid-hcjuqwdu]{width:24px;margin-top:22px}.banner-box[data-astro-cid-hcjuqwdu]{flex:0 0 calc(50% - 14px)}.banner-title[data-astro-cid-hcjuqwdu]{font-size:24px;line-height:32px}.banner-cta[data-astro-cid-hcjuqwdu]{width:56px;height:56px}.banner-cta[data-astro-cid-hcjuqwdu] svg[data-astro-cid-hcjuqwdu]{width:20px;height:20px}}@media(max-width:767px){.projects-section[data-astro-cid-hcjuqwdu]{padding-top:120px}.projects-wrapper[data-astro-cid-hcjuqwdu]{padding:0 20px}.projects-row[data-astro-cid-hcjuqwdu]{gap:16px}.projects-eyebrow[data-astro-cid-hcjuqwdu]{margin-top:6px}.projects-title[data-astro-cid-hcjuqwdu]{font-size:48px;line-height:58px;letter-spacing:-2px}.projects-star[data-astro-cid-hcjuqwdu]{width:20px;height:21px;margin-top:12px}.portfolio-inner[data-astro-cid-hcjuqwdu]{padding:0 20px}.banner-box[data-astro-cid-hcjuqwdu]{flex:0 0 calc(100% - 14px)}.banner-wrapper[data-astro-cid-hcjuqwdu]{padding:24px;width:90%}.banner-title[data-astro-cid-hcjuqwdu]{font-size:22px;line-height:30px}.banner-cta[data-astro-cid-hcjuqwdu]{width:56px;height:56px}.banner-cta[data-astro-cid-hcjuqwdu] svg[data-astro-cid-hcjuqwdu]{width:20px;height:20px}}
