.scroll-top{z-index:40;border:1px solid var(--fx-line);background:color-mix(in srgb,var(--background) 70%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);width:44px;height:44px;color:var(--primary);opacity:0;pointer-events:none;border-radius:9999px;justify-content:center;align-items:center;transition:opacity .25s,transform .25s;display:flex;position:fixed;bottom:1.25rem;left:1.25rem;transform:scale(.6)}.scroll-top[data-visible=true]{opacity:1;pointer-events:auto;transform:none}body{isolation:isolate;position:relative}body:before{content:"";z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 28% 8%,color-mix(in srgb,var(--primary) 26%,transparent),transparent 52%),radial-gradient(ellipse at 85% 28%,color-mix(in srgb,var(--primary) 16%,transparent),transparent 48%),radial-gradient(ellipse at 10% 58%,#ab19ff5c,transparent 46%),radial-gradient(ellipse at 76% 82%,#ab19ff4d,transparent 50%),radial-gradient(ellipse at 45% 90%,color-mix(in srgb,var(--primary) 10%,transparent),transparent 60%);position:fixed;inset:0}body:after{content:"";z-index:-1;pointer-events:none;background-image:linear-gradient(color-mix(in srgb,var(--primary) 10%,transparent) 1px,transparent 1px),linear-gradient(90deg,color-mix(in srgb,var(--primary) 10%,transparent) 1px,transparent 1px);-webkit-mask-image:radial-gradient(ellipse at 50% 25%,var(--background),transparent 78%);mask-image:radial-gradient(ellipse at 50% 25%,var(--background),transparent 78%);background-size:56px 56px;position:fixed;inset:0}.hero-aurora:before,.grid-mask:after{display:none}main section:has(h1):before{display:none}main>.bg-background,main>div>.bg-background,main section.bg-black,main section.bg-background{background-color:#0000}.hero-aurora{isolation:isolate;position:relative;overflow:hidden}main section:has(h1){isolation:isolate;position:relative;overflow:hidden}.hero-aurora:before{content:"";z-index:-2;pointer-events:none;background:radial-gradient(45% 45% at 30% 20%,color-mix(in srgb,var(--primary) 28%,transparent),transparent 70%),radial-gradient(40% 40% at 72% 12%,color-mix(in srgb,var(--secondary) 16%,transparent),transparent 70%),radial-gradient(50% 40% at 50% 60%,color-mix(in srgb,var(--primary) 14%,transparent),transparent 75%);position:absolute;inset:-20% -10%}main section:has(h1):before{content:"";z-index:-2;pointer-events:none;background:radial-gradient(45% 45% at 30% 20%,color-mix(in srgb,var(--primary) 28%,transparent),transparent 70%),radial-gradient(40% 40% at 72% 12%,color-mix(in srgb,var(--secondary) 16%,transparent),transparent 70%),radial-gradient(50% 40% at 50% 60%,color-mix(in srgb,var(--primary) 14%,transparent),transparent 75%);position:absolute;inset:-20% -10%}.grid-mask:after{content:"";z-index:-1;pointer-events:none;background-image:linear-gradient(color-mix(in srgb,var(--foreground) 7%,transparent) 1px,transparent 1px),linear-gradient(90deg,color-mix(in srgb,var(--foreground) 7%,transparent) 1px,transparent 1px);-webkit-mask-image:radial-gradient(ellipse 70% 70% at 50% 25%,var(--background) 20%,transparent 75%);mask-image:radial-gradient(ellipse 70% 70% at 50% 25%,var(--background) 20%,transparent 75%);background-size:56px 56px;position:absolute;inset:0}.section-tint{background:radial-gradient(60% 55% at 50% 0%,color-mix(in srgb,var(--primary) 10%,transparent),transparent 72%);position:relative}.section-tint:before{content:"";background:linear-gradient(90deg,transparent,var(--primary),transparent);opacity:.55;pointer-events:none;height:1px;position:absolute;top:0;left:10%;right:10%}main h1,main h2:not([data-slot=card] h2,.card-spot h2),.heading-gradient{background-image:linear-gradient(90deg,var(--primary) 0%,var(--primary) 44%,#d7e1e6 48%,#f5f7fa 50%,#d7e1e6 52%,var(--primary) 56%,var(--primary) 100%);-webkit-text-fill-color:transparent;color:#0000;background-repeat:repeat-x;background-size:200% 100%;-webkit-background-clip:text;background-clip:text;margin-bottom:-.12em;padding-bottom:.12em}main :is(h1,h2):not([data-slot=card] h2,.card-spot h2) span{-webkit-text-fill-color:inherit}main :is([data-slot=card],.card-spot) :is(h2,h3){color:var(--primary);-webkit-text-fill-color:currentColor;background-image:none}.popup-glow{border-color:var(--primary);box-shadow:0 0 0 1px var(--fx-glow),0 0 36px -8px var(--primary),0 24px 100px -30px var(--primary),inset 0 1px 20px var(--fx-glow)}.faq-callout{isolation:isolate;border-color:var(--fx-line);background:color-mix(in srgb,var(--card) 96%,var(--primary));box-shadow:0 0 28px -10px var(--primary),0 16px 48px color-mix(in srgb,var(--background) 80%,transparent);overflow:hidden}.faq-callout:before{content:"";z-index:-1;pointer-events:none;background:linear-gradient(110deg,transparent 25%,var(--fx-glow),transparent 75%);position:absolute;inset:0;transform:translate(-130%)}@media (prefers-reduced-motion:no-preference){.faq-callout:before{animation:8s ease-in-out infinite shine-loop}}header nav .nav-link:after{content:"";background:var(--primary);transform-origin:0;height:2px;transition:transform .25s ease-out;position:absolute;bottom:-4px;left:0;right:0;transform:scaleX(0)}header.site-header nav a.nav-link:is(:hover,:focus-visible):after{transform:scaleX(1)}.portfolio-card{background-color:color-mix(in srgb,var(--card) 88%,transparent)}.portfolio-preview{background:color-mix(in srgb,var(--primary) 12%,var(--card));color:var(--primary);border:1px solid var(--fx-line)}.portfolio-preview:hover{background:var(--primary);color:var(--primary-foreground)}.eyebrow{color:var(--primary);letter-spacing:.14em;text-transform:uppercase;font-size:.875rem;font-weight:700}.site-header{z-index:50;width:100%;color:var(--foreground);background:0 0;transition:background-color .3s,box-shadow .3s;position:sticky;top:0}.site-header:after{content:"";background:linear-gradient(90deg,transparent,var(--primary),transparent);pointer-events:none;height:1px;position:absolute;inset:auto 0 -1px}.site-header[data-scrolled=true]{background:color-mix(in srgb,var(--background) 80%,transparent);-webkit-backdrop-filter:blur(24px)}.header-inner{height:88px;transition:height .3s}.site-header[data-scrolled=true] .header-inner{height:56px}.brand-image{object-fit:contain;width:40px;height:40px;transition:width .3s,height .3s,filter .25s}.brand-name{font-size:24px;line-height:1.2;transition:font-size .3s}.site-header[data-scrolled=true] .brand-image{width:28px;height:28px}.site-header[data-scrolled=true] .brand-name{font-size:18px}.brand-logo:hover .brand-image{filter:drop-shadow(0 0 8px var(--primary))}.burger{border-radius:8px;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:44px;height:44px}.burger span{background:var(--foreground);width:22px;height:2px;transition:transform .25s,opacity .2s;display:block}.burger[aria-expanded=true] span:first-child{transform:translateY(7px)rotate(45deg)}.burger[aria-expanded=true] span:nth-child(2){opacity:0}.burger[aria-expanded=true] span:nth-child(3){transform:translateY(-7px)rotate(-45deg)}.mobile-panel{border:1px solid var(--fx-line);color:var(--foreground);background:color-mix(in srgb,var(--background) 95%,transparent);-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);opacity:0;visibility:hidden;border-radius:12px;max-height:calc(100dvh - 100px);padding:.75rem;transition:opacity .25s,transform .25s,visibility .25s;position:absolute;top:100%;left:1rem;right:1rem;overflow-y:auto;transform:translateY(-12px)}.mobile-panel[data-open=true]{opacity:1;visibility:visible;transform:none}.mobile-panel>a:not([data-slot]){border-radius:8px;padding:.75rem;display:block}@media (max-width:767px){.burger{display:flex}}header nav a:not([data-slot]),footer a:not([data-slot]){background-image:none}a:not([data-slot=button]){transition:color .2s}a:not([data-slot=button]):hover,a:not([data-slot=button]):focus-visible{color:var(--primary)}:is(main,header) a:not([data-slot=button]):not(:has(img)):not(:has([data-slot=card])){text-decoration:none;position:relative}:is(main,header) a:not([data-slot=button]):not(:has(img)):not(:has([data-slot=card])):after{content:"";background:var(--primary);transform-origin:0;pointer-events:none;height:2px;transition:transform .25s;position:absolute;bottom:-3px;left:0;right:0;transform:scaleX(0)}:is(main,header) a:not([data-slot=button]):is(:hover,:focus-visible):after{transform:scaleX(1)}.btn-glow{background-image:linear-gradient(135deg,color-mix(in srgb,var(--primary) 80%,var(--background)),var(--primary));color:var(--primary-foreground);border:1px solid var(--primary);box-shadow:0 8px 28px -10px var(--fx-glow),inset 0 1px color-mix(in srgb,var(--foreground) 22%,transparent)}.btn-glow:is(:hover,:focus-visible){filter:brightness(1.08);box-shadow:0 0 0 3px var(--fx-glow),0 10px 40px -6px var(--fx-glow)!important}.pill{border:1px solid var(--fx-line);background:linear-gradient(180deg,var(--fx-glow),transparent);border-radius:9999px;align-items:center;gap:.5rem;padding:.45rem 1rem;font-size:.875rem;transition:border-color .25s,box-shadow .3s;display:inline-flex}.pill:is(:hover,:focus-visible){border-color:var(--primary);box-shadow:0 0 24px -4px var(--fx-glow)}.ping-wrap{border-radius:8px;display:inline-flex;position:relative}.ping-wrap:after{content:"";border:2px solid var(--primary);border-radius:inherit;pointer-events:none;position:absolute;inset:0}[data-slot=card],.card-spot{isolation:isolate;border:1px solid var(--border);background-image:linear-gradient(180deg,color-mix(in srgb,var(--foreground) 4%,transparent),transparent 55%);transition:border-color .25s,box-shadow .3s,transform .18s;position:relative;overflow:hidden}[data-slot=card]:before,.card-spot:before{content:"";pointer-events:none;z-index:-1;opacity:0;background:radial-gradient(320px circle at var(--mx,50%) var(--my,0%),color-mix(in srgb,var(--primary) 20%,transparent),transparent 70%);transition:opacity .3s;position:absolute;inset:0}[data-slot=card]:is(:hover,:focus-within),.card-spot:is(:hover,:focus-within){border-color:var(--fx-line);box-shadow:0 12px 32px -16px var(--primary)}[data-slot=card]:is(:hover,:focus-within):before,.card-spot:is(:hover,:focus-within):before{opacity:1}main [data-slot=card]:not(.fx-featured):hover{transform:none}main [data-slot=card].fx-featured{background:linear-gradient(180deg,color-mix(in srgb,var(--primary) 16%,var(--card)),var(--card) 70%) padding-box,linear-gradient(135deg,var(--primary),var(--secondary),var(--primary)) border-box;border:1px solid #0000}main [data-slot=card].fx-featured:is(:hover,:focus-within){box-shadow:0 24px 70px -20px var(--fx-glow)}.fx-icon-tile{background-image:linear-gradient(145deg,var(--fx-glow),color-mix(in srgb,var(--primary) 12%,var(--background)));border-radius:12px}.step-badge{color:var(--primary-foreground);background:linear-gradient(145deg,var(--secondary),var(--primary));box-shadow:0 0 0 4px var(--fx-glow),0 0 24px -4px var(--primary)}.portfolio-card:focus-within .overlay-cap{opacity:1}@media (hover:none){.overlay-cap{opacity:1}}.flip{perspective:1000px}.flip-toggle{text-align:left;width:100%;color:inherit;background:0 0;border-radius:12px}.flip-inner{transform-style:preserve-3d;transition:transform .7s;display:grid}.flip-face{backface-visibility:hidden;grid-area:1/1;min-height:260px}.flip-back,.flip[data-flipped=true] .flip-inner{transform:rotateY(180deg)}@media (prefers-reduced-motion:reduce){.flip-inner,.flip[data-flipped=true] .flip-inner,.flip:hover .flip-inner{transform:none}.flip .flip-back{visibility:hidden;transform:none}.flip[data-flipped=true] .flip-back{visibility:visible}.flip[data-flipped=true] .flip-front{visibility:hidden}}@keyframes aurora-drift{to{transform:translate(2%,3%)scale(1.06)}}@keyframes heading-flow{0%{background-position:200% 0}to{background-position:0 0}}@keyframes shine-loop{0%,to{transform:translate(-130%)}45%,60%{transform:translate(130%)}}@keyframes ping{0%{opacity:.7;transform:scale(1)}75%,to{opacity:0;transform:scale(1.25)}}@property --border-angle{syntax:"<angle>";inherits:false;initial-value:0deg}@keyframes border-orbit{to{--border-angle:360deg}}@media (prefers-reduced-motion:no-preference){main h1,main h2:not([data-slot=card] h2,.card-spot h2),.heading-gradient{animation:8s linear infinite heading-flow}main :is(h1,h2):not([data-slot=card] h2,.card-spot h2).animate-fade-in-up{animation:.65s ease-out both fx-enter,8s linear infinite heading-flow}.btn-shine-loop:before{animation:6s ease-in-out infinite shine-loop}.ping-wrap:after{animation:1.8s cubic-bezier(0,0,.2,1) infinite ping}main [data-slot=card].fx-featured{background:linear-gradient(180deg,color-mix(in srgb,var(--primary) 16%,var(--card)),var(--card) 70%) padding-box,conic-gradient(from var(--border-angle),var(--fx-line) 0% 55%,var(--primary) 80%,var(--fx-line)) border-box;animation:9s linear infinite border-orbit}@media (hover:hover) and (pointer:fine){.fx-pop:hover{filter:brightness(1.1);transform:scale(1.05)}main :is([data-slot=card],.card-spot):not(.flip-face),main :is([data-slot=card],.card-spot):not(.flip-face):hover{transform:perspective(800px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg))}}}@media (prefers-reduced-motion:reduce){.ping-wrap:after{display:none}}
