@import "https://fonts.googleapis.com/css2?family=Caveat:wght@600;700&family=Inter:wght@300;400;500;600;700;800&family=JetBrains+Mono:wght@400;500;600&display=swap";
:root{--bg-primary:#fff;--bg-secondary:#fafafa;--bg-hover:#f4f4f5;--fg-primary:#0a0a0a;--fg-secondary:#404040;--fg-muted:#737373;--fg-faint:#a3a3a3;--border-light:#e5e5e5;--border-strong:#0a0a0a;--font-sans:"Inter", -apple-system, BlinkMacSystemFont, sans-serif;--font-mono:"JetBrains Mono", monospace;--font-signature:"Caveat", cursive, sans-serif}[data-theme=dark]{--bg-primary:#0a0a0a;--bg-secondary:#121212;--bg-hover:#1c1c1c;--fg-primary:#fff;--fg-secondary:#a3a3a3;--fg-muted:#737373;--fg-faint:#404040;--border-light:#262626;--border-strong:#fff}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;font-family:var(--font-sans);background-color:var(--bg-primary);color:var(--fg-primary);-webkit-font-smoothing:antialiased}body{background-color:var(--bg-primary);min-height:100vh;color:var(--fg-primary);line-height:1.6;overflow-x:hidden}::selection{background-color:var(--fg-primary);color:var(--bg-primary)}.container{width:100%;max-width:1000px;margin:0 auto;padding:0 1.5rem}@media (min-width:768px){.container{padding:0 2rem}}.font-mono{font-family:var(--font-mono)}.font-signature{font-family:var(--font-signature);letter-spacing:.01em;font-weight:700}.link-ultra{color:var(--fg-primary);border-bottom:1px solid var(--fg-primary);font-family:var(--font-mono);padding-bottom:2px;font-size:.85rem;text-decoration:none;transition:all .2s}.link-ultra:hover{opacity:.6}.btn-minimal{background:var(--fg-primary);color:var(--bg-primary);border:1px solid var(--fg-primary);font-family:var(--font-mono);cursor:pointer;align-items:center;gap:.5rem;padding:.65rem 1.25rem;font-size:.8rem;font-weight:500;text-decoration:none;transition:all .2s;display:inline-flex}.btn-minimal:hover{color:var(--fg-primary);background:0 0}.btn-minimal-outline{color:var(--fg-primary);border:1px solid var(--border-light);font-family:var(--font-mono);cursor:pointer;background:0 0;align-items:center;gap:.5rem;padding:.65rem 1.25rem;font-size:.8rem;font-weight:500;text-decoration:none;transition:all .2s;display:inline-flex}.btn-minimal-outline:hover{border-color:var(--fg-primary);background:var(--bg-secondary)}.divider-thin{background-color:var(--border-light);width:100%;height:1px;margin:4rem 0}.contact-grid{flex-direction:column;gap:3rem;display:flex}.contact-stamp-col{order:1;justify-content:center;width:100%;display:flex}.contact-text-col{order:2;width:100%}@media (min-width:768px){.contact-grid{grid-template-columns:1fr 1fr;align-items:center;gap:4rem;display:grid}.contact-text-col{order:1}.contact-stamp-col{order:2}}.green-pulse-dot{background-color:#10b981;border-radius:50%;flex-shrink:0;width:8px;height:8px;animation:2.2s ease-in-out infinite pulseDim;display:inline-block;box-shadow:0 0 8px #10b98199}@keyframes pulseDim{0%,to{opacity:1;transform:scale(1);box-shadow:0 0 8px #10b981b3}50%{opacity:.35;transform:scale(.88);box-shadow:0 0 2px #10b98133}}@keyframes stampFall{0%{opacity:1;transform:rotate(-3deg)translateY(0)scale(1)}50%{opacity:.8;transform:rotate(15deg)translateY(80px)scale(.85)}to{opacity:0;transform:rotate(40deg)translateY(220px)scale(.3)}}.stamp-falling{pointer-events:none;animation:.55s cubic-bezier(.55,.055,.675,.19) forwards stampFall!important}@keyframes stampSlam{0%{opacity:0;filter:blur(14px);transform:scale(3.6)rotate(16deg)translateY(-20px);box-shadow:0 120px 200px #000000b3}20%{opacity:.95;filter:blur(4px)}82%{opacity:1;filter:blur();transform:scale(.95)rotate(-5deg)translateY(0);box-shadow:0 4px 12px #0006}92%{transform:scale(1.05)rotate(-2deg)translateY(0)}to{opacity:1;filter:blur();transform:scale(1)rotate(-3deg)translateY(0);box-shadow:0 12px 30px #0000001a}}.stamp-slamming{z-index:50!important;animation:.65s cubic-bezier(.16,1,.3,1) forwards stampSlam!important}@keyframes inkImpactRipple{0%{transform:translate(-50%,-50%)scale(.72)rotate(-10deg)}35%{filter:drop-shadow(0 20px 35px #00000073);transform:translate(-50%,-50%)scale(1.18)rotate(-4deg)}65%{transform:translate(-50%,-50%)scale(.96)rotate(-8deg)}to{filter:drop-shadow(0 10px 25px #00000040);transform:translate(-50%,-50%)scale(1.05)rotate(-7deg)}}.ink-splash-impact{animation:.65s cubic-bezier(.175,.885,.32,1.275) forwards inkImpactRipple!important}@keyframes inkDropFall{0%{opacity:1;transform:translateY(0)scale(1)}50%{opacity:.9;transform:translateY(50px)scale(.8,1.4)}to{opacity:0;transform:translateY(120px)scale(.3)}}.ink-drip-falling{animation:.75s cubic-bezier(.55,.055,.675,.19) forwards inkDropFall}@keyframes screenInkBurstDrip{0%{opacity:0;transform:translate(0)scale(.2)}12%{opacity:1}25%{transform:var(--burst-target) scale(1.15);opacity:.95}60%{transform:var(--burst-target) scale(1) translateY(12px);opacity:.95}85%{transform:var(--burst-target) scale(.7, 1.4) translateY(45vh);opacity:.65}to{transform:var(--burst-target) scale(.2, .2) translateY(95vh);opacity:0}}.screen-ink-droplet{animation:2.2s cubic-bezier(.25,1,.5,1) forwards screenInkBurstDrip}@keyframes splashWaitThenFall{0%{transform:scale(.2) var(--burst-rotate,rotate(0deg));opacity:0}15%{opacity:1}25%{transform:scale(1.15) var(--burst-rotate,rotate(0deg));opacity:.95}52%{transform:scale(1) translateY(8px) var(--burst-rotate,rotate(0deg));opacity:.95}78%{transform:scale(.7, 1.5) translateY(35vh) var(--burst-rotate,rotate(0deg));opacity:.7}to{transform:scale(.2, .2) translateY(80vh) var(--burst-rotate,rotate(0deg));opacity:0}}.screen-splash-drop{pointer-events:none;z-index:99999;background:radial-gradient(circle at 35% 30%,#3a3a3a 0%,#0c0c0c 70%,#000 100%);animation:cubic-bezier(.25,1,.5,1) forwards splashWaitThenFall;position:fixed;box-shadow:0 4px 12px #0009,inset -1px -1px 3px #ffffff73}.contact-stamp-col img,.contact-stamp-col{-webkit-touch-callout:none!important;-webkit-user-select:none!important;user-select:none!important;-webkit-user-drag:none!important}@media (max-width:767px){.desktop-only-drop{display:none!important}}.vanishing-ink-input{font-family:var(--font-signature);color:#fff;text-align:center;text-shadow:0 0 12px #ffffffe6,0 0 20px #000000e6;caret-color:#fff;background:0 0;border:none;outline:none;width:100%;font-size:2.2rem}.vanishing-ink-input::placeholder{color:#ffffff80;font-size:1.1rem;font-family:var(--font-mono);letter-spacing:.02em}.dino-btn-hover:hover{transform:translateY(-2px)scale(1.04);border-color:var(--fg-primary)!important;box-shadow:0 4px 12px #0000001f!important}.dino-btn-hover:active{transform:translateY(0)scale(.98)}@keyframes spideySwing{0%{transform:rotate(-5deg)}50%{transform:rotate(5deg)}to{transform:rotate(-5deg)}}.spidey-hover-shake:hover{transform:scale(1.1)rotate(6deg)}.batman-hover-rise:hover{transform:translateY(-4px)scale(1.08)}@keyframes batCapeFlutter{0%,to{transform:scaleX(1)}50%{transform:scaleX(1.04)skew(2deg)}}.bat-cape{transform-origin:top;animation:3s ease-in-out infinite alternate batCapeFlutter}@keyframes batHoverLeft{0%,to{transform:translateY(0)rotate(-6deg)}50%{transform:translateY(-8px)rotate(-2deg)}}@keyframes batHoverRight{0%,to{transform:translateY(-4px)rotate(6deg)}50%{transform:translateY(-12px)rotate(2deg)}}@keyframes batWingFlapLeft{0%,to{transform:scaleY(1)}50%{transform:scaleY(-.7)translateY(4px)}}@keyframes batWingFlapRight{0%,to{transform:scaleY(1)}50%{transform:scaleY(-.7)translateY(4px)}}.bat-flying-left{animation:2.4s ease-in-out infinite alternate batHoverLeft}.bat-flying-right{animation:2.8s ease-in-out .3s infinite alternate batHoverRight}.bat-wing-anim-left{transform-origin:12px 10px;animation:.35s ease-in-out infinite alternate batWingFlapLeft}.bat-wing-anim-right{transform-origin:18px 10px;animation:.35s ease-in-out infinite alternate batWingFlapRight}@keyframes spiderBounceLeft{0%,to{transform:translateY(0)}50%{transform:translateY(6px)}}@keyframes spiderBounceRight{0%,to{transform:translateY(0)}50%{transform:translateY(8px)}}@keyframes spiderLegsTwitch{0%,to{transform:scale(1)}50%{transform:scale(1.06)rotate(2deg)}}.spider-left-bounce{animation:2.6s ease-in-out infinite alternate spiderBounceLeft}.spider-right-bounce{animation:3.1s ease-in-out .4s infinite alternate spiderBounceRight}.spider-legs-anim{transform-origin:50%;animation:.4s ease-in-out infinite alternate spiderLegsTwitch}
