@import url("https://fonts.googleapis.com/css2?family=DM+Serif+Display:ital@0;1&family=Barlow+Semi+Condensed:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800&family=JetBrains+Mono:wght@400;500&display=swap");*,:after,:before{margin:0;padding:0;box-sizing:border-box}:root{--p247-purple:#622b7c;--p247-orange:#e5641e;--p247-red:#c52e1a;--brand-bright:#9a4dc0;--accent:#e5641e;--accent-hover:#f2762f;--ink-900:#0b0810;--ink-850:#110d18;--ink-800:#17121f;--ink-700:#1f1929;--ink-600:#2a2336;--ink-500:#382f47;--ink-400:#4a4059;--fg1:#f6f4fa;--fg2:#bbb4c9;--fg3:#847c95;--fg4:#5c5469;--purple-50:#f5eef9;--purple-100:#e8d5f2;--purple-200:#c5a4d6;--purple-300:#a271bd;--purple-400:#8341a2;--purple-500:#622b7c;--purple-600:#4e2263;--purple-700:#3b194a;--purple-800:#281033;--purple-900:#17091e;--orange-50:#fef3ec;--orange-100:#fce1cc;--orange-200:#f7bc8e;--orange-300:#ed8a4c;--orange-400:#e5641e;--orange-500:#c24e10;--orange-600:#9a3d0c;--orange-700:#722d09;--gradient-247-soft:linear-gradient(102deg,#8341a2,#e5641e);--gradient-text:linear-gradient(100deg,#c9a8dd,#a86fc4 46%,#d8628f 78%,#e5641e);--grad-purple:linear-gradient(100deg,#c9a8dd,#9a4dc0);--r-xs:0px;--r-sm:2px;--r-md:3px;--r-lg:5px;--r-xl:8px;--r-pill:999px;--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:24px;--sp-6:32px;--sp-7:48px;--sp-8:64px;--sp-9:96px;--sp-10:128px;--text-xs:13px;--text-sm:15px;--text-base:17px;--text-md:20px;--text-lg:25px;--text-xl:33px;--text-2xl:46px;--text-3xl:64px;--text-4xl:88px;--text-5xl:118px;--leading-tight:1.04;--leading-snug:1.18;--leading-body:1.6;--tracking-tight:-0.01em;--tracking-caps:0.14em;--font-display:"DM Serif Display",Georgia,"Times New Roman",serif;--font-sans:"Barlow Semi Condensed","Arial Narrow",system-ui,sans-serif;--font-mono:"JetBrains Mono","SFMono-Regular",ui-monospace,Menlo,monospace;--shadow-md:0 6px 20px -6px rgba(0,0,0,.55);--shadow-glow-purple:0 0 0 1px rgba(154,77,192,.5),0 6px 22px -4px rgba(154,77,192,.65),0 22px 70px -6px rgba(154,77,192,.95)}html{scroll-behavior:smooth;font-size:16px}body{background:var(--ink-900);color:var(--fg2);font-family:var(--font-sans);font-size:var(--text-base);line-height:var(--leading-body);overflow-x:hidden;-webkit-font-smoothing:antialiased}.container{max-width:1240px;margin:0 auto;padding:0 40px}@media (max-width:560px){.container{padding:0 20px}}.grad-text{background:var(--gradient-text);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;font-style:italic}.btn{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-sans);font-weight:600;font-size:16px;border-radius:var(--r-md);padding:13px 22px;border:none;cursor:pointer;text-decoration:none;transition:transform .18s cubic-bezier(.22,1,.36,1),filter .18s ease,background .18s ease,box-shadow .18s ease,border-color .18s ease;line-height:1;white-space:nowrap}.btn-sm{font-size:14px;padding:9px 16px}.btn-lg{font-size:17px;padding:16px 28px}.btn-primary{background:var(--gradient-247-soft);color:#fff;box-shadow:0 8px 30px -10px rgba(229,100,30,.5)}.btn-primary:hover{filter:brightness(1.07);transform:translateY(-1px);box-shadow:0 12px 40px -8px rgba(229,100,30,.7)}.btn-primary:active{transform:scale(.985)}.btn-ghost{background:hsla(0,0%,100%,.04);color:var(--fg1);border:1px solid var(--ink-400)}.btn-ghost:hover{background:hsla(0,0%,100%,.07);border-color:var(--fg4)}.eyebrow{font-family:var(--font-sans);font-size:var(--text-xs);font-weight:600;letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--accent)}@keyframes auroraDrift{0%{transform:translate(0) scale(1) rotate(0deg)}to{transform:translate(30px,-20px) scale(1.08) rotate(3deg)}}@keyframes emberPulse{0%,to{opacity:.42;transform:scale(1)}50%{opacity:.6;transform:scale(1.15)}}@keyframes beamSweep{0%{transform:translateX(-120%);opacity:0}20%{opacity:1}80%{opacity:1}to{transform:translateX(120%);opacity:0}}@keyframes gridPan{0%{background-position:0 0}to{background-position:0 34px}}@keyframes scrollBob{0%,to{transform:translateY(0)}50%{transform:translateY(6px)}}@keyframes coreGlow{0%,to{box-shadow:0 0 30px 8px rgba(154,77,192,.6),0 0 60px 20px rgba(154,77,192,.3)}50%{box-shadow:0 0 40px 12px rgba(154,77,192,.8),0 0 80px 30px rgba(154,77,192,.4)}}@keyframes haloSpin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes ringCounter{0%{transform:rotate(0deg)}to{transform:rotate(-1turn)}}@keyframes nodeFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@keyframes dashFlow{0%{stroke-dashoffset:40}to{stroke-dashoffset:0}}@keyframes ledBlink{0%,to{opacity:1}50%{opacity:.25}}@keyframes pulseDot{0%,to{transform:scale(1);opacity:.7}50%{transform:scale(1.4);opacity:1}}@keyframes flowPulse{0%{offset-distance:0;opacity:0}10%{opacity:1}90%{opacity:1}to{offset-distance:100%;opacity:0}}@keyframes gridPanH{0%{background-position:0 0}to{background-position:34px 0}}@keyframes orbBreathe{0%,to{transform:translateX(-50%) scale(1);opacity:.7}50%{transform:translateX(-50%) scale(1.2);opacity:1}}@keyframes diagPan{0%{background-position:0 0}to{background-position:48px 48px}}@keyframes shimmerSweep{0%{transform:translateX(-100%) skewX(-15deg);opacity:0}15%{opacity:1}85%{opacity:1}to{transform:translateX(200%) skewX(-15deg);opacity:0}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}