:root{--gradient-start:var(--warm-teal-600);--gradient-mid:var(--warm-purple-600);--gradient-end:var(--warm-amber-500);--glass-blur:12px;--glass-opacity:0.75;--glass-border-opacity:0.3;--mesh-opacity-light:0.25;--mesh-opacity-dark:0.15;--grain-opacity-light:0.03;--grain-opacity-dark:0.04;--section-spacing:clamp(4rem,10vh,8rem)}.dark{--glass-opacity:0.6;--glass-border-opacity:0.2}.text-gradient{background:linear-gradient(135deg,hsl(var(--gradient-start)) 0,hsl(var(--gradient-mid)) 50%,hsl(var(--gradient-end)) 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;display:inline-block}.bg-website-vignette{background-image:radial-gradient(circle at top,hsl(var(--foreground)/.08),transparent 55%),radial-gradient(circle at bottom,hsl(var(--foreground)/.12),transparent 65%)}.grain-overlay{position:relative;isolation:isolate}.grain-overlay:before{content:"";position:absolute;inset:0;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 120'%3E%3Cfilter id='grain'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23grain)' opacity='0.45'/%3E%3C/svg%3E");mix-blend-mode:soft-light;opacity:.3;pointer-events:none;z-index:1}.grain-overlay>*{position:relative;z-index:2}.glass-border{border:1px solid hsl(var(--border)/var(--glass-border-opacity))}.section-padding{padding-block:var(--section-spacing)}@supports not ((-webkit-background-clip:text) or (background-clip:text)){.text-gradient{background:none;color:hsl(var(--primary))}}.surface-glass{background:hsl(var(--card));backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid hsl(var(--border));box-shadow:0 2px 8px hsl(var(--foreground)/.06)}.dark .surface-glass{background:hsl(var(--card)/.85);border:1px solid hsl(var(--border)/.5);box-shadow:0 2px 12px hsl(0 0% 0%/.3)}@supports not (backdrop-filter:blur(1px)){.surface-glass{background:hsl(var(--card));border:1px solid hsl(var(--border))}}.texture-grain{position:relative;isolation:isolate}.texture-grain:before{content:"";position:absolute;inset:0;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='grain'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23grain)' opacity='0.5'/%3E%3C/svg%3E");background-size:256px;opacity:var(--grain-opacity-light);mix-blend-mode:overlay;pointer-events:none;z-index:1;content-visibility:auto}.dark .texture-grain:before{opacity:var(--grain-opacity-dark)}.texture-grain>*{position:relative;z-index:2}.magnetic-cursor-active,.magnetic-cursor-active *{cursor:none!important}.text-balance{text-wrap:balance}.text-shadow-soft{text-shadow:0 1px 2px rgba(0,0,0,.1),0 2px 8px rgba(0,0,0,.15)}.divider-soft{height:1px;background:linear-gradient(90deg,transparent,hsl(var(--border)/.5),transparent);border:none}.font-display,.font-display-interactive{font-family:var(--font-display),var(--font-heading);font-variation-settings:"wght" 600}.font-display-interactive{transition:font-variation-settings .3s cubic-bezier(.4,0,.2,1)}.font-display-interactive:hover{font-variation-settings:"wght" 700}.font-display-hero{font-family:var(--font-display),var(--font-heading);font-variation-settings:"wght" 700,"opsz" 72;font-size:clamp(2.5rem,8vw,5rem)}.font-display-heading{font-family:var(--font-display),var(--font-heading);font-variation-settings:"wght" 650,"opsz" 32}h1{font-variation-settings:"wght" 700,"opsz" 72;font-size:clamp(2.5rem,8vw,5rem);letter-spacing:-.02em;line-height:1.1}h1,h1 .gradient-heading,h1 .text-gradient{font-family:var(--font-display),var(--font-heading)}h1 .gradient-heading,h1 .text-gradient{background:linear-gradient(135deg,hsl(var(--gradient-start)) 0,hsl(var(--gradient-mid)) 50%,hsl(var(--gradient-end)) 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;display:inline-block;font-variation-settings:"wght" 700,"opsz" 72}h2{font-family:var(--font-display),var(--font-heading);font-variation-settings:"wght" 650,"opsz" 48;letter-spacing:-.015em}h3{font-family:var(--font-display),var(--font-heading);font-variation-settings:"wght" 600,"opsz" 32;letter-spacing:-.01em}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important}*,:after,:before,:focus{transition-duration:.01ms!important}}