.portfolio-index-hero__veil{background:linear-gradient(180deg,rgb(188 78 235 / .05) 0%,rgb(var(--color-champagne-wash-rgb) / .02) 28%,transparent 55%)}.portfolio-index-hero__grid{display:flex;flex-direction:column;align-items:stretch;gap:clamp(2.75rem,9vw,3.75rem)}.portfolio-index-hero__grid>*{min-width:0;width:100%;box-sizing:border-box}@media(min-width:1024px){.portfolio-index-hero__grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,38%);align-items:center;gap:3rem 3.5rem}}.portfolio-index-hero__aside-col{display:flex;flex-direction:column;align-items:center;gap:clamp(1.25rem,3vw,2rem);width:100%}.portfolio-index-hero__gems{width:100%}.portfolio-index-hero__gems-tray{width:100%;padding:1rem .65rem .85rem;border-radius:1rem;border:1px solid rgb(var(--color-deep-cream-rgb) / .1);background:linear-gradient(165deg,rgb(var(--color-champagne-wash-rgb) / .06),rgb(var(--color-hole-black-rgb) / .45) 55%,rgb(var(--color-hole-black-rgb) / .65));box-shadow:inset 0 1px rgb(var(--color-deep-cream-rgb) / .08),0 20px 44px #00000052}.portfolio-index-hero__gems-row{display:flex;align-items:flex-end;justify-content:space-between;gap:.15rem;margin:0;padding:0;list-style:none}.portfolio-index-hero__gems-item{flex:1 1 0;min-width:0;display:flex;justify-content:center}.portfolio-index-hero__gem-link{display:flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:.15rem;border-radius:.5rem;text-decoration:none;transition:transform .35s cubic-bezier(.4,0,.2,1)}.portfolio-index-hero__gem-link:hover,.portfolio-index-hero__gem-link:focus-visible{transform:translateY(-2px)}.portfolio-index-hero__gem-link:focus-visible{outline:2px solid rgb(var(--color-deep-cream-rgb) / .55);outline-offset:3px}main .portfolio-page a.portfolio-index-hero__gem-link{display:flex;flex-direction:row;align-items:center;justify-content:center}.portfolio-index-hero__gem-vitrine{position:relative;display:flex;align-items:center;justify-content:center;width:2.75rem;height:2.85rem}.portfolio-index-hero__gem-glow{position:absolute;inset:-20%;border-radius:50%;background:radial-gradient(circle,var(--service-glow) 0%,transparent 72%);filter:blur(14px);opacity:.45;transition:opacity .4s ease;pointer-events:none}.portfolio-index-hero__gem-link:hover .portfolio-index-hero__gem-glow,.portfolio-index-hero__gem-link:focus-visible .portfolio-index-hero__gem-glow{opacity:.95}.portfolio-index-hero__gem-icon{position:relative;z-index:1;filter:drop-shadow(0 6px 18px var(--service-glow));transition:transform .4s cubic-bezier(.4,0,.2,1)}.portfolio-index-hero__gem-link:hover .portfolio-index-hero__gem-icon,.portfolio-index-hero__gem-link:focus-visible .portfolio-index-hero__gem-icon{transform:translateY(-2px);opacity:1}@media(max-width:1023px){.portfolio-index-hero__aside-col{max-width:min(100%,28rem);margin-inline:auto;gap:clamp(1.5rem,4vw,2rem)}.portfolio-index-hero__gems-tray{max-width:28rem;margin-inline:auto;padding:1.1rem 1rem .95rem}.portfolio-index-hero__gems-row{justify-content:center;flex-wrap:wrap;gap:.65rem .85rem}.portfolio-index-hero__gems-item{flex:0 0 auto}}.portfolio-index-hero__aside-leads{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1.5rem}article.portfolio-page .portfolio-index-hero__aside-leads p:not(.eyebrow):not(.lead),.portfolio-page .portfolio-index-hero__aside-leads p:not(.eyebrow):not(.lead){max-width:none;margin-inline:auto;text-align:center!important}.portfolio-index-hero__aside{width:100%;border-radius:1rem;border:1px solid rgb(var(--color-deep-cream-rgb) / .12);background:linear-gradient(152deg,rgb(var(--color-champagne-wash-rgb) / .04),rgb(var(--color-hole-black-rgb) / .55));box-shadow:0 24px 48px #00000059}.portfolio-stats,.portfolio-index,.portfolio-tech{padding-top:clamp(3rem,5.5vw,4.5rem);padding-bottom:clamp(3rem,5.5vw,4.5rem)}.portfolio-stats{padding-bottom:clamp(2rem,4vw,3rem)}.portfolio-tech{padding-top:clamp(2rem,4vw,3rem)}.portfolio-stats__grid{display:flex;flex-wrap:wrap;justify-content:center;margin:0;padding:0;list-style:none;border-block:1px solid rgb(var(--color-deep-cream-rgb) / .08)}.portfolio-stats__item{flex:1 1 50%;min-width:min(100%,9.5rem);padding:clamp(1.35rem,3.5vw,2rem) clamp(.75rem,2vw,1.25rem);text-align:center;border:none;background:transparent}@media(min-width:640px){.portfolio-stats__item{flex:1 1 25%}}@media(min-width:1024px){.portfolio-stats__item:not(:last-child){border-inline-end:1px solid rgb(var(--color-deep-cream-rgb) / .08)}}.portfolio-stats__value{display:block;font-family:var(--font-display, "Glancyr", system-ui, sans-serif);font-size:clamp(1.65rem,3.5vw,2.35rem);font-weight:500;line-height:1.05;letter-spacing:-.02em;margin-bottom:.4rem;color:var(--color-deep-cream)}.portfolio-stats__label{font-size:.8125rem;line-height:1.5;letter-spacing:.02em;color:rgb(var(--color-deep-cream-rgb) / .62)}.portfolio-tech__header{text-align:center;margin-bottom:clamp(1.25rem,3vw,2rem)}.portfolio-tech__list{display:flex;flex-wrap:wrap;justify-content:center;gap:.45rem .55rem;max-width:42rem;margin:0 auto;padding:0;list-style:none}.portfolio-tech__item{margin:0}.portfolio-tech__tag{display:inline-block;padding:.38rem .75rem;border:1px solid rgb(var(--color-deep-cream-rgb) / .12);border-radius:.25rem;font-family:var(--font-display, "Glancyr", system-ui, sans-serif);font-size:.75rem;font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:rgb(var(--color-deep-cream-rgb) / .68);background:transparent}.portfolio-index__curator{max-width:38rem;margin:0 0 clamp(1.75rem,4vw,2.5rem);padding-inline-start:.85rem;border-inline-start:1px solid rgb(188 78 235 / .45);font-size:.875rem;line-height:1.55;letter-spacing:.01em;color:rgb(var(--color-deep-cream-rgb) / .62)}.portfolio-grid{display:grid;gap:clamp(1.25rem,3vw,1.75rem);grid-template-columns:1fr}@media(min-width:640px){.portfolio-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(min-width:1024px){.portfolio-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(1.15rem,2vw,1.5rem)}}@media(min-width:1536px){.portfolio-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}.portfolio-filters{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.5rem;justify-content:center}.portfolio-filters__btn{border-radius:.25rem;border:1px solid rgb(var(--color-deep-cream-rgb) / .1);background:transparent;color:rgb(var(--color-deep-cream-rgb) / .72);font-size:.8125rem;letter-spacing:.02em;padding:.4rem .8rem;cursor:pointer;transition:border-color .25s ease,color .25s ease,background-color .25s ease}.portfolio-filters__btn:hover,.portfolio-filters__btn.is-active{border-color:rgb(var(--color-deep-cream-rgb) / .22);background:rgb(var(--color-deep-cream-rgb) / .04);color:rgb(var(--color-deep-cream-rgb) / .95)}.portfolio-dev-filters{display:flex;flex-wrap:nowrap;align-items:center;gap:.4rem}.portfolio-dev-filters__label{font-size:.8125rem;color:rgb(var(--color-deep-cream-rgb) / .75)}.portfolio-search{width:100%;max-width:16rem;flex:0 1 16rem;border-radius:.375rem;border:1px solid rgb(var(--color-deep-cream-rgb) / .1);background:rgb(var(--color-hole-black-rgb) / .4);padding:.5rem .85rem;font-size:.8125rem;letter-spacing:.01em;color:var(--color-deep-cream)}.portfolio-search::placeholder{color:rgb(var(--color-deep-cream-rgb) / .45)}.portfolio-search:focus{outline:2px solid rgb(var(--color-deep-cream-rgb) / .35);outline-offset:2px;border-color:rgb(var(--color-deep-cream-rgb) / .28)}.portfolio-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:.65rem .85rem;margin-bottom:1.5rem}@media(min-width:768px){.portfolio-toolbar{flex-wrap:nowrap;justify-content:flex-start;gap:.75rem 1rem}}.portfolio-dev-filters{flex-shrink:0}.portfolio-dev-filters .portfolio-filters__btn{padding:.45rem .75rem;font-size:.8125rem;white-space:nowrap}.portfolio-dev-filters__label{white-space:nowrap}.portfolio-index__load-more{display:inline-flex;min-height:44px;align-items:center;justify-content:center;gap:.5rem;padding:.65rem 1.5rem;border:1px solid rgb(var(--color-deep-cream-rgb) / .18);border-radius:.375rem;background:transparent;font-family:var(--font-display, "Glancyr", system-ui, sans-serif);font-size:.875rem;letter-spacing:.03em;color:rgb(var(--color-deep-cream-rgb) / .88);cursor:pointer;transition:border-color .25s ease,color .25s ease,background-color .25s ease}.portfolio-index__load-more:hover{border-color:rgb(var(--color-deep-cream-rgb) / .32);background:rgb(var(--color-deep-cream-rgb) / .04);color:var(--color-deep-cream)}.portfolio-index__empty[hidden]{display:none}.portfolio-index__empty{text-align:center;padding:3rem 1rem;color:rgb(var(--color-deep-cream-rgb) / .75)}.portfolio-filter.is-active,.dev-type-filter.is-active{border-color:rgb(var(--color-deep-cream-rgb) / .28);background:rgb(var(--color-deep-cream-rgb) / .08)}.portfolio-card{display:flex;flex-direction:column;min-height:0;height:100%;border-radius:.75rem;border:1px solid rgb(var(--color-deep-cream-rgb) / .08);background:linear-gradient(168deg,var(--color-surface-12) 0%,var(--color-hole-black) 100%);overflow:hidden;isolation:isolate;transition:border-color .35s ease,box-shadow .35s ease}.portfolio-card:hover{border-color:rgb(var(--color-deep-cream-rgb) / .16);box-shadow:0 20px 48px #00000073,inset 0 1px rgb(var(--color-deep-cream-rgb) / .06)}.portfolio-card--has-case{border-color:#bc4eeb38;box-shadow:0 0 0 1px #bc4eeb0f}.portfolio-card--has-case:hover{border-color:#bc4eeb61;box-shadow:0 22px 52px #00000080,0 0 32px #bc4eeb14}.portfolio-card.hidden{display:none}.portfolio-card__brand{position:relative;aspect-ratio:925 / 511;width:100%;overflow:hidden;background:var(--color-hole-black);border-bottom:1px solid rgb(var(--color-deep-cream-rgb) / .06)}.portfolio-card__brand:before{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:radial-gradient(ellipse 85% 70% at 50% 45%,rgb(var(--color-deep-cream-rgb) / .04) 0%,transparent 68%),linear-gradient(180deg,rgb(var(--color-hole-black-rgb) / 0) 55%,rgb(var(--color-hole-black-rgb) / .85))}.portfolio-card--has-case .portfolio-card__brand:after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(135deg,rgb(188 78 235 / .12) 0%,transparent 48%)}.portfolio-card__brand-inner{position:relative;z-index:0;display:flex;align-items:center;justify-content:center;width:100%;height:100%;padding:clamp(1rem,3vw,1.35rem) clamp(1.1rem,3.5vw,1.5rem)}.portfolio-card__logo{width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain;object-position:center;mix-blend-mode:lighten;filter:grayscale(1) contrast(1.08) opacity(.92);transition:filter .45s ease,opacity .45s ease}.portfolio-card:hover .portfolio-card__logo{filter:grayscale(.25) contrast(1.05) opacity(1)}.portfolio-card__category{position:absolute;z-index:2;bottom:.75rem;left:.75rem;max-width:calc(100% - 1.5rem);padding:.28rem .6rem;border-radius:9999px;border:1px solid rgb(var(--color-deep-cream-rgb) / .18);background:rgb(var(--color-hole-black-rgb) / .72);backdrop-filter:blur(8px);font-size:.6875rem;font-weight:500;letter-spacing:.07em;text-transform:uppercase;color:rgb(var(--color-deep-cream-rgb) / .88)}.portfolio-card__case-badge{position:absolute;z-index:2;top:.75rem;right:.75rem;padding:.28rem .6rem;border-radius:9999px;border:1px solid rgb(188 78 235 / .45);background:#bc4eeb24;font-size:.6875rem;font-weight:500;letter-spacing:.04em;color:var(--color-deep-cream)}.portfolio-card__body{display:flex;flex:1;flex-direction:column;padding:1.15rem 1.35rem 1.3rem;gap:.4rem}.portfolio-card__client{margin:0;font-family:var(--font-display, "Glancyr", system-ui, sans-serif);font-size:clamp(1.05rem,2vw,1.2rem);font-weight:500;line-height:1.25;letter-spacing:-.01em;color:var(--color-deep-cream)}.portfolio-card__stack{margin:0;font-size:.75rem;letter-spacing:.05em;text-transform:uppercase;color:rgb(var(--color-deep-cream-rgb) / .45)}.portfolio-card__summary{margin:.15rem 0 0;font-size:.875rem;line-height:1.5;color:rgb(var(--color-deep-cream-rgb) / .62)}.portfolio-card__case-link{display:inline-flex;align-items:center;gap:.35rem;margin-top:auto;padding-top:.85rem;border-top:1px solid rgb(var(--color-deep-cream-rgb) / .08);font-size:.875rem;letter-spacing:.02em;color:rgb(var(--color-deep-cream-rgb) / .78);text-decoration:none;transition:color .25s ease}.portfolio-card__case-link:hover{color:var(--color-deep-cream)}main .portfolio-page a.portfolio-card__case-link{display:inline-flex;flex-direction:row;align-items:center;justify-content:flex-start;min-height:44px;width:100%;padding-block:.85rem 0;padding-inline:0}
