.page-hero{--page-hero-title-size: clamp(2rem, 5vw, 3.75rem);--page-hero-subtitle-size: clamp(1.1rem, 2vw, 1.25rem);--page-hero-glow: transparent;--page-hero-glow-opacity: .6;--page-hero-glow-opacity-dark: .4;--page-hero-glow-blend: screen;position:relative;padding:clamp(60px,10vh,100px) 1.5rem clamp(40px,8vh,80px);text-align:center;overflow:hidden;width:100%;display:flex;flex-direction:column;align-items:center;gap:1.5rem}.page-hero *{box-sizing:border-box}.page-hero:before{content:"";position:absolute;top:-20%;left:50%;transform:translate(-50%);width:140%;height:140%;pointer-events:none;z-index:0;opacity:var(--page-hero-glow-opacity);background:var(--page-hero-glow);filter:blur(80px);border-radius:50%;mix-blend-mode:var(--page-hero-glow-blend)}[data-theme=dark] .page-hero:before{mix-blend-mode:var(--page-hero-glow-blend);opacity:var(--page-hero-glow-opacity-dark)}.page-hero-content{position:relative;z-index:1;max-width:1000px;width:100%;display:flex;flex-direction:column;align-items:center;gap:1rem}.page-hero--align-left{text-align:left;align-items:flex-start}.page-hero--align-right{text-align:right;align-items:flex-end}.page-hero--align-left .page-hero-content{align-items:flex-start}.page-hero--align-right .page-hero-content{align-items:flex-end}.page-hero--size-lg{--page-hero-title-size: clamp(2.5rem, 7vw, 4.5rem);--page-hero-subtitle-size: clamp(1.1rem, 2.4vw, 1.35rem)}.page-hero--size-sm{--page-hero-title-size: clamp(1.75rem, 4vw, 3rem);--page-hero-subtitle-size: clamp(1rem, 1.8vw, 1.15rem)}.page-hero--tone-accent{--page-hero-glow: radial-gradient(ellipse 60% 50% at 50% 0%, rgba(var(--accent-rgb), .08) 0%, transparent 60%), radial-gradient(ellipse 40% 30% at 20% 60%, color-mix(in srgb, var(--accent-secondary) 12%, transparent) 0%, transparent 50%), radial-gradient(ellipse 40% 30% at 80% 40%, color-mix(in srgb, var(--accent-primary) 12%, transparent) 0%, transparent 50%);--page-hero-glow-opacity: 1;--page-hero-glow-opacity-dark: 1;--page-hero-glow-blend: normal}.page-hero--tone-accent:before{top:0;left:50%;transform:translate(-50%);width:85%;height:100%;filter:none;border-radius:0}.page-hero-badge{display:inline-flex;align-items:center;gap:.5rem;padding:.35rem .85rem;background:var(--glass-bg, rgba(255, 255, 255, .05));border:1px solid var(--glass-border, rgba(255, 255, 255, .1));border-radius:999px;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);font-size:.75rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--link-color);margin-bottom:.5rem;box-shadow:0 4px 12px #0000000d}.page-hero-badge.success{background:color-mix(in srgb,var(--success-color, #22c55e) 15%,transparent);border-color:color-mix(in srgb,var(--success-color, #22c55e) 25%,transparent);color:var(--success-color, #22c55e)}.page-hero-badge.warning{background:color-mix(in srgb,#f59e0b 14%,transparent);border-color:color-mix(in srgb,#f59e0b 28%,transparent);color:#92400e}[data-theme=dark] .page-hero-badge.warning{color:#fbbf24}.page-hero-badge svg{font-size:.9em}.page-hero-title{margin:0;font-family:var(--font-display, "SF Pro Display", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif);font-size:var(--page-hero-title-size);font-weight:650;letter-spacing:-.03em;line-height:1.1;color:var(--text-primary);background:linear-gradient(180deg,var(--text-primary) 20%,color-mix(in srgb,var(--text-primary) 70%,transparent) 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.page-hero-subtitle{margin:0;font-size:var(--page-hero-subtitle-size);line-height:1.6;color:var(--text-secondary);max-width:720px}.page-hero-actions{margin-top:.75rem;display:flex;flex-wrap:wrap;gap:1rem;justify-content:center;width:100%}.page-hero-extra{margin-top:1rem;display:flex;flex-direction:column;align-items:center;gap:1rem;width:100%}.page-hero--align-left .page-hero-actions,.page-hero--align-left .page-hero-extra{align-items:flex-start;justify-content:flex-start}.page-hero--align-right .page-hero-actions,.page-hero--align-right .page-hero-extra{align-items:flex-end;justify-content:flex-end}@keyframes pulse{0%{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(1.1)}to{opacity:1;transform:scale(1)}}.live-dot{width:6px;height:6px;background:currentColor;border-radius:50%;display:inline-block}.live-dot.pulse{animation:pulse 2s infinite ease-in-out}
