:root{--bg:#000;--fg:#fff;--muted:rgba(255,255,255,.56);--accent:#ff2147}
*{box-sizing:border-box}
html,body{width:100%;height:100%;margin:0;overflow:hidden;background:#000}
body{font-family:'Space Grotesk',system-ui,sans-serif;color:var(--fg)}
a,button{-webkit-tap-highlight-color:transparent}
.page{position:relative;width:100%;height:100%;background:#000;isolation:isolate;overflow:hidden}
.bg-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:0;opacity:0;transform:scale(1.12);filter:saturate(1.08) contrast(1.1) brightness(.68);transition:opacity .95s ease,transform 12s cubic-bezier(.16,.7,.2,1)}
.bg-video.visible{opacity:1;transform:scale(1.02)}
.cinematic-overlay{position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(0,0,0,.35),rgba(0,0,0,.06) 35%,rgba(0,0,0,.44));pointer-events:none}
.vignette{position:absolute;inset:0;z-index:2;background:radial-gradient(circle at 50% 48%,transparent 20%,rgba(0,0,0,.48) 100%);pointer-events:none}
.scanlines{position:absolute;inset:0;z-index:8;pointer-events:none;opacity:.06;background:repeating-linear-gradient(180deg,rgba(255,255,255,.5) 0,rgba(255,255,255,.5) 1px,transparent 1px,transparent 4px)}
.grain{position:absolute;inset:-50%;z-index:9;opacity:.08;pointer-events:none;mix-blend-mode:screen;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 220 220' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.8'/%3E%3C/svg%3E");animation:grain .18s steps(2) infinite}
@keyframes grain{0%{transform:translate(0,0)}25%{transform:translate(-2%,1%)}50%{transform:translate(1%,-2%)}75%{transform:translate(2%,2%)}100%{transform:translate(0,0)}}
.particles{position:absolute;inset:0;width:100%;height:100%;z-index:5;pointer-events:none}
.intro{position:absolute;inset:0;z-index:10;pointer-events:none}
.intro-black{position:absolute;inset:0;background:#000;opacity:1;transition:opacity 1.1s cubic-bezier(.77,0,.18,1)}
.intro.video-revealed .intro-black{opacity:0}
.intro-caption{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-family:'Permanent Marker',cursive;font-size:clamp(3.3rem,9vw,8.5rem);white-space:nowrap;letter-spacing:.01em;opacity:0;text-shadow:0 0 35px rgba(255,255,255,.24),5px 7px 0 rgba(0,0,0,.4);animation:introCaption 2.2s 1.15s forwards}
@keyframes introCaption{0%{opacity:0;transform:translate(-50%,-50%) scale(1.08);filter:blur(12px)}30%{opacity:1;filter:blur(0)}100%{opacity:0;transform:translate(-50%,-61%) scale(.92);filter:blur(1px)}}
.intro-progress{position:absolute;left:50%;bottom:11%;width:min(390px,58vw);height:2px;transform:translateX(-50%);background:rgba(255,255,255,.15);overflow:hidden}
.intro-progress span{display:block;width:0;height:100%;background:#fff;box-shadow:0 0 18px rgba(255,255,255,.9)}
.flash{position:absolute;inset:0;display:grid;place-items:center;font-weight:900;font-size:clamp(2rem,5.3vw,5rem);letter-spacing:.1em;color:#fff;opacity:0;text-shadow:0 0 18px rgba(255,255,255,.65);mix-blend-mode:screen}
.flash span{color:var(--accent)}
.flash.show{animation:flashHit .18s ease-out}
@keyframes flashHit{0%{opacity:0;transform:scale(1.3);filter:blur(10px)}16%{opacity:1;transform:scale(1);filter:blur(0)}42%{opacity:.95}100%{opacity:0;transform:scale(.98);filter:blur(2px)}}
.glitch-title{position:absolute;top:14%;left:50%;transform:translateX(-50%);font-weight:800;letter-spacing:.28em;font-size:11px;color:rgba(255,255,255,.46);opacity:0}
.glitch-title.show{animation:glitchTitle .45s steps(2) both}
@keyframes glitchTitle{0%{opacity:0;transform:translateX(-50%) skew(0)}18%{opacity:1;transform:translateX(calc(-50% + 4px)) skew(-9deg)}35%{transform:translateX(calc(-50% - 5px)) skew(8deg)}58%{transform:translateX(-50%) skew(0)}100%{opacity:.65}}
.profile{position:absolute;inset:0;z-index:7;display:grid;place-items:center;opacity:0;pointer-events:none;transition:opacity .15s ease}
.profile.visible{opacity:1;pointer-events:auto}
.profile-wrap{opacity:1}
.profile-wrap{text-align:center;padding:40px 28px 36px;width:min(850px,92vw)}
.eyebrow{display:inline-flex;align-items:center;gap:8px;color:rgba(255,255,255,.56);font-size:10px;letter-spacing:.28em;text-transform:uppercase}
.dot{width:7px;height:7px;border-radius:50%;background:#63ff7a;box-shadow:0 0 14px rgba(99,255,122,.95)}
.name-stack{display:flex;flex-direction:column;align-items:center;gap:8px}
.name-stack h1,.saint-name{position:relative;margin:0;font-family:'Permanent Marker',cursive;font-size:clamp(4.7rem,12vw,11rem);line-height:.82;letter-spacing:.015em;text-shadow:0 0 30px rgba(255,255,255,.2),8px 9px 0 rgba(0,0,0,.36)}
.name-stack h1{color:#fff}
.saint-name{color:#ff4f86;opacity:0;transform:translateY(20px);filter:brightness(0) blur(10px);text-shadow:0 0 22px rgba(255,79,134,.32),6px 7px 0 rgba(0,0,0,.3)}
.saint-name.saint-visible{animation:saintRise .8s cubic-bezier(.16,.8,.2,1) both}
@keyframes saintRise{0%{opacity:0;transform:translateY(26px);filter:brightness(0) blur(8px)}60%{opacity:1;transform:translateY(-3px);filter:brightness(1.35) blur(0)}100%{opacity:1;transform:translateY(0);filter:brightness(1) blur(0)}}
.profile h1{position:relative;margin:0;font-family:'Permanent Marker',cursive;font-size:clamp(4.7rem,12vw,11rem);line-height:.86;letter-spacing:.015em;text-shadow:0 0 30px rgba(255,255,255,.2),8px 9px 0 rgba(0,0,0,.36);opacity:0;visibility:hidden;transform:translateY(24px) scale(.97);filter:brightness(0) blur(10px);}
.profile h1.flicker-in{visibility:visible;animation:nameFlickerHard .78s steps(2,end) both;}

@keyframes nameBreath{50%{transform:translateY(-3px) rotate(-.15deg)}}
.tagline{margin:22px 0 30px;color:rgba(255,255,255,.55);font-size:13px;letter-spacing:.28em;text-transform:uppercase}
.socials{display:flex;justify-content:center;gap:16px;flex-wrap:wrap;opacity:0;transform:translateY(95px);pointer-events:none;margin-top:54px}
.socials.socials-visible{animation:socialsRise .95s cubic-bezier(.16,.72,.18,1) both;pointer-events:auto}
.social{opacity:0;transform:translateY(70px) scale(.88);}
.socials.socials-visible .social{animation:socialItemRise .62s cubic-bezier(.16,.72,.18,1) both;}
.socials.socials-visible .social:nth-child(1){animation-delay:.02s}
.socials.socials-visible .social:nth-child(2){animation-delay:.10s}
.socials.socials-visible .social:nth-child(3){animation-delay:.18s}
.socials.socials-visible .social:nth-child(4){animation-delay:.26s}

.social{position:relative;width:64px;height:64px;display:grid;place-items:center;border-radius:20px;color:#fff;background:rgba(0,0,0,.34);border:1px solid rgba(255,255,255,.11);backdrop-filter:blur(9px);-webkit-backdrop-filter:blur(9px);transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease,background .22s ease}
.social svg{width:27px;height:27px;fill:currentColor;opacity:.92;transition:transform .22s ease,filter .22s ease}
.social:hover,.social:focus-visible{transform:translateY(-9px) scale(1.08);background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.35);box-shadow:0 18px 36px rgba(0,0,0,.4),0 0 30px rgba(255,255,255,.13);outline:none}
.social:hover svg,.social:focus-visible svg{transform:scale(1.12);filter:drop-shadow(0 0 11px rgba(255,255,255,.55))}
.social::after{content:attr(data-label);position:absolute;bottom:-37px;left:50%;transform:translateX(-50%) translateY(5px);padding:5px 8px;border-radius:7px;background:rgba(0,0,0,.75);border:1px solid rgba(255,255,255,.08);color:#fff;font-size:10px;letter-spacing:.1em;opacity:0;white-space:nowrap;pointer-events:none;transition:opacity .18s ease,transform .18s ease}
.social:hover::after,.social:focus-visible::after{opacity:1;transform:translateX(-50%) translateY(0)}
.hint{margin-top:50px;color:rgba(255,255,255,.3);font-size:10px;letter-spacing:.24em;text-transform:uppercase}
.enter-button{position:absolute;inset:auto 50% 8%;transform:translateX(-50%);z-index:13;min-width:200px;padding:14px 21px 15px;border:1px solid rgba(255,255,255,.2);border-radius:18px;background:rgba(0,0,0,.55);color:#fff;display:flex;flex-direction:column;align-items:center;gap:3px;cursor:pointer;backdrop-filter:blur(10px);box-shadow:0 12px 45px rgba(0,0,0,.35);transition:opacity .45s ease,transform .25s ease,background .25s ease}
.enter-button:hover{background:rgba(255,255,255,.1);transform:translateX(-50%) translateY(-3px)}
.enter-button.hidden{opacity:0;pointer-events:none;transform:translateX(-50%) translateY(12px)}
.enter-kicker{font-size:9px;letter-spacing:.28em;color:rgba(255,255,255,.48)}
.enter-main{font-size:12px;font-weight:800;letter-spacing:.19em}
.enter-note{font-size:9px;letter-spacing:.16em;color:rgba(255,255,255,.33)}
.loading{position:absolute;top:50%;left:50%;transform:translate(-50%,calc(-50% + 78px));z-index:12;color:rgba(255,255,255,.45);font-size:10px;letter-spacing:.22em;text-transform:uppercase;opacity:1;transition:opacity .4s ease;pointer-events:none}
.loading.hidden{opacity:0}
.loader-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:#fff;box-shadow:0 0 10px rgba(255,255,255,.8);margin-right:7px;animation:loadPulse .9s ease-in-out infinite}
@keyframes loadPulse{50%{opacity:.25;transform:scale(.65)}}
@media(max-width:700px){.profile-wrap{padding:28px 16px}.profile h1{font-size:clamp(3.6rem,18vw,6.7rem)}.social{width:56px;height:56px;border-radius:17px}.enter-button{min-width:280px;min-height:160px;padding:28px 32px}.enter-main{font-size:clamp(2.6rem,13vw,4.8rem)}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}


@keyframes nameBreath{50%{transform:translateY(-3px) rotate(-.15deg)}}
@keyframes nameFlickerHard{
0%{opacity:0;transform:translateY(26px) scale(.96);filter:brightness(0) blur(12px);text-shadow:none}
6%{opacity:1;transform:translateY(0) scale(1);filter:brightness(4.8) blur(0);text-shadow:0 0 42px rgba(255,255,255,1),8px 9px 0 rgba(0,0,0,.36)}
12%{opacity:.05;filter:brightness(.1)}
18%{opacity:1;filter:brightness(3.8)}
25%{opacity:.15;filter:brightness(.2)}
33%{opacity:1;filter:brightness(3.2)}
42%{opacity:.08;filter:brightness(.12)}
51%{opacity:1;filter:brightness(2.8)}
61%{opacity:.25;filter:brightness(.35)}
70%{opacity:1;filter:brightness(2.0)}
79%{opacity:.45;filter:brightness(.7)}
88%{opacity:1;filter:brightness(1.35)}
94%{opacity:.8;filter:brightness(1)}
100%{opacity:1;transform:translateY(0) scale(1);filter:brightness(1);text-shadow:0 0 30px rgba(255,255,255,.2),8px 9px 0 rgba(0,0,0,.36)}
}
@keyframes subtleRise{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}
@keyframes socialsRise{from{opacity:0;transform:translateY(95px)}to{opacity:1;transform:translateY(0)}}
@keyframes socialItemRise{from{opacity:0;transform:translateY(70px) scale(.88)}to{opacity:1;transform:translateY(0) scale(1)}}

/* v2 additions: Discord card, HELL location, social rise and random name glitches */
.location-pill{margin:11px auto 0;display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border:1px solid rgba(255,255,255,.12);background:rgba(0,0,0,.34);border-radius:999px;color:rgba(255,255,255,.66);font-size:9px;font-weight:800;letter-spacing:.22em;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);box-shadow:0 10px 28px rgba(0,0,0,.25)}
.location-pill svg{width:13px;height:13px;fill:currentColor}
.profile h1::before,.profile h1::after{content:attr(data-text);position:absolute;inset:0;pointer-events:none;opacity:0;z-index:-1}
.profile h1::before{color:#ff234f;transform:translate(-4px,1px);clip-path:inset(8% 0 58% 0)}
.profile h1::after{color:#4cfaff;transform:translate(4px,-1px);clip-path:inset(52% 0 12% 0)}
.profile h1.random-glitch::before,.profile h1.random-glitch::after{opacity:.9;z-index:2}
.profile h1.random-glitch{animation:glitchJolt .18s steps(2,end) both}
@keyframes glitchJolt{0%{transform:translate(0,0)}20%{transform:translate(-5px,1px) skewX(-5deg)}42%{transform:translate(4px,-1px) skewX(6deg)}67%{transform:translate(-2px,0) skewX(-3deg)}100%{transform:translate(0,0)}}
.socials{pointer-events:none;margin-top:36px}
.socials.socials-visible{pointer-events:auto}
.socials.socials-visible .social{animation:socialRise .72s cubic-bezier(.16,.9,.22,1) both}
.socials.socials-visible .social:nth-child(1){animation-delay:.05s}.socials.socials-visible .social:nth-child(2){animation-delay:.14s}.socials.socials-visible .social:nth-child(3){animation-delay:.23s}.socials.socials-visible .social:nth-child(4){animation-delay:.32s}
@keyframes socialRise{0%{opacity:0;transform:translateY(48px) scale(.92)}65%{opacity:1;transform:translateY(-7px) scale(1.03)}100%{opacity:1;transform:translateY(0) scale(1)}}
.discord-card{position:relative;margin:38px auto 0;display:flex;align-items:center;gap:13px;width:min(440px,92vw);padding:10px 13px 10px 10px;text-align:left;border:1px solid rgba(255,255,255,.12);border-radius:18px;background:rgba(10,10,10,.48);box-shadow:0 18px 50px rgba(0,0,0,.28);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);color:#fff;text-decoration:none;opacity:0;transform:translateY(46px) scale(.98);transition:transform .28s ease,background .28s ease,border-color .28s ease,box-shadow .28s ease}
.socials.socials-visible + .discord-card{animation:cardRise .82s .48s cubic-bezier(.16,.9,.22,1) forwards}
@keyframes cardRise{0%{opacity:0;transform:translateY(46px) scale(.98)}100%{opacity:1;transform:translateY(0) scale(1)}}
.discord-card:hover{transform:translateY(-5px);background:rgba(20,20,20,.6);border-color:rgba(255,255,255,.22);box-shadow:0 24px 70px rgba(0,0,0,.35)}
.discord-card img{width:58px;height:58px;flex:none;border-radius:50%;object-fit:cover;border:2px solid rgba(255,255,255,.08);box-shadow:0 0 0 5px rgba(88,101,242,.08)}
.discord-status{position:absolute;left:53px;bottom:12px;width:15px;height:15px;border-radius:50%;background:#3ba55d;border:3px solid #171717;box-shadow:0 0 18px rgba(59,165,93,.55)}
.discord-copy{min-width:0;display:flex;flex:1;flex-direction:column;gap:4px}.discord-copy strong{font-size:15px;line-height:1.1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.discord-copy>span{font-size:11px;color:rgba(255,255,255,.56);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.discord-copy small{display:flex;align-items:center;gap:6px;font-size:10px;color:rgba(255,255,255,.43);letter-spacing:.08em}.discord-game-dot{width:7px;height:7px;border-radius:50%;background:#ff4f7a;box-shadow:0 0 9px rgba(255,79,122,.6)}.discord-arrow{font-size:21px;color:rgba(255,255,255,.38);transition:transform .2s ease,color .2s ease}.discord-card:hover .discord-arrow{transform:translate(2px,-2px);color:#fff}
.profile-bottom{display:flex;justify-content:center;gap:22px;margin-top:21px;align-items:center}.location-note{color:rgba(255,255,255,.42);font-size:9px;letter-spacing:.22em;text-transform:uppercase}
@media(max-width:700px){.discord-card{margin-top:32px}}

/* requested cleanup: bottom helper text removed */
.profile-bottom,.hint,.location-note{display:none!important}

.volume-control{position:fixed;top:20px;left:20px;z-index:30;display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid rgba(255,255,255,.12);border-radius:18px;background:linear-gradient(180deg,rgba(18,18,18,.58),rgba(7,7,7,.38));backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);box-shadow:0 14px 34px rgba(0,0,0,.34),inset 0 1px 0 rgba(255,255,255,.06);color:rgba(255,255,255,.9);opacity:0;pointer-events:none;transform:translateY(-8px);transition:opacity .35s ease,transform .35s ease,border-color .2s ease,box-shadow .2s ease}
.volume-control.ready{opacity:1;pointer-events:auto;transform:translateY(0)}
.volume-control:focus-within,.volume-control:hover{border-color:rgba(255,79,134,.38);box-shadow:0 16px 38px rgba(0,0,0,.38),0 0 24px rgba(255,79,134,.09),inset 0 1px 0 rgba(255,255,255,.08)}
.volume-control svg{width:17px;height:17px;fill:currentColor;flex:none;filter:drop-shadow(0 0 6px rgba(255,255,255,.25))}
.volume-control input[type=range]{--fill:70%;width:150px;height:6px;appearance:none;-webkit-appearance:none;background:linear-gradient(90deg,#ff4f86 0%,#ff4f86 var(--fill),rgba(255,255,255,.14) var(--fill),rgba(255,255,255,.14) 100%);border-radius:999px;outline:none;cursor:pointer;box-shadow:inset 0 1px 2px rgba(0,0,0,.45),0 0 13px rgba(255,79,134,.08)}
.volume-control input[type=range]::-webkit-slider-runnable-track{height:6px;background:transparent;border-radius:999px}
.volume-control input[type=range]::-webkit-slider-thumb{appearance:none;-webkit-appearance:none;width:15px;height:15px;margin-top:-4.5px;border-radius:50%;border:2px solid rgba(255,255,255,.96);background:#ff4f86;box-shadow:0 0 0 3px rgba(255,79,134,.15),0 0 15px rgba(255,79,134,.72);transition:transform .14s ease,box-shadow .14s ease}
.volume-control input[type=range]:hover::-webkit-slider-thumb,.volume-control input[type=range]:focus-visible::-webkit-slider-thumb{transform:scale(1.14);box-shadow:0 0 0 4px rgba(255,79,134,.18),0 0 20px rgba(255,79,134,.88)}
.volume-control input[type=range]::-moz-range-track{height:6px;background:rgba(255,255,255,.14);border-radius:999px}
.volume-control input[type=range]::-moz-range-progress{height:6px;background:#ff4f86;border-radius:999px}
.volume-control input[type=range]::-moz-range-thumb{width:15px;height:15px;border-radius:50%;border:2px solid rgba(255,255,255,.96);background:#ff4f86;box-shadow:0 0 0 3px rgba(255,79,134,.15),0 0 15px rgba(255,79,134,.72)}
.volume-control span{min-width:42px;text-align:right;font-size:10px;font-weight:700;letter-spacing:.08em;color:rgba(255,255,255,.68);font-variant-numeric:tabular-nums}
@media(max-width:700px){.volume-control{top:14px;left:14px;padding:9px 10px;border-radius:16px}.volume-control input[type=range]{width:95px}}


/* Custom cursor */
html.custom-cursor-enabled,html.custom-cursor-enabled body,html.custom-cursor-enabled a,html.custom-cursor-enabled button,html.custom-cursor-enabled input,html.custom-cursor-enabled label{cursor:none!important}
.custom-pointer{position:fixed;left:0;top:0;width:34px;height:50px;z-index:1000;pointer-events:none;opacity:0;transform:translate(-50%,-50%) rotate(0deg) scale(1);transform-origin:50% 50%;filter:drop-shadow(0 0 7px rgba(255,255,255,.55)) drop-shadow(0 6px 16px rgba(0,0,0,.75));mix-blend-mode:screen;transition:opacity .16s ease,filter .16s ease,transform .08s ease}
.custom-pointer.visible{opacity:1}
.custom-pointer.pressed{transform:translate(-50%,-50%) rotate(-4deg) scale(.9);filter:drop-shadow(0 0 13px rgba(255,79,134,.7)) drop-shadow(0 6px 16px rgba(0,0,0,.75))}
.custom-pointer img{display:block;width:100%;height:100%;object-fit:contain}
@media(pointer:coarse){.custom-pointer{display:none!important}html.custom-cursor-enabled,html.custom-cursor-enabled body,html.custom-cursor-enabled a,html.custom-cursor-enabled button,html.custom-cursor-enabled input,html.custom-cursor-enabled label{cursor:auto!important}}

/* v6: clean centered enter screen */
.enter-button{
  position:absolute;
  top:50%;
  left:50%;
  right:auto;
  bottom:auto;
  transform:translate(-50%,-50%);
  z-index:13;
  min-width:320px;
  min-height:180px;
  padding:34px 46px;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
  backdrop-filter:none;
  -webkit-backdrop-filter:none;
  color:#fff;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:10px;
  cursor:pointer;
  transition:opacity .5s ease, transform .32s ease;
}
.enter-button:hover{
  background:transparent;
  transform:translate(-50%,-50%) scale(1.045);
}
.enter-button:focus-visible{outline:0;box-shadow:none}
.enter-button.hidden{opacity:0;pointer-events:none;transform:translate(-50%,-50%) scale(.96)}
.enter-main{
  font-family:'Permanent Marker',cursive;
  font-size:clamp(3rem,6.8vw,6.6rem);
  line-height:.9;
  letter-spacing:.01em;
  text-transform:none;
  color:#fff;
  text-shadow:0 0 30px rgba(255,255,255,.18),8px 9px 0 rgba(0,0,0,.38);
}
.enter-note{
  font-family:'Space Grotesk',system-ui,sans-serif;
  font-size:11px;
  font-weight:700;
  letter-spacing:.38em;
  text-transform:uppercase;
  color:rgba(255,255,255,.52);
  margin-left:.38em;
}
@keyframes nameFlickerHard{
  0%{opacity:0;transform:translateY(26px) scale(.97);filter:brightness(0) blur(13px);text-shadow:none}
  7%{opacity:1;transform:translateY(0) scale(1);filter:brightness(4.8) blur(0);text-shadow:0 0 42px rgba(255,255,255,1),8px 9px 0 rgba(0,0,0,.36)}
  13%{opacity:.03;filter:brightness(.05)}
  21%{opacity:1;filter:brightness(3.9)}
  29%{opacity:.08;filter:brightness(.15)}
  38%{opacity:1;filter:brightness(3.1)}
  46%{opacity:.02;filter:brightness(.05)}
  56%{opacity:1;filter:brightness(2.5)}
  67%{opacity:.18;filter:brightness(.25)}
  79%{opacity:1;filter:brightness(1.55)}
  89%{opacity:.48;filter:brightness(.7)}
  100%{opacity:1;transform:translateY(0) scale(1);filter:brightness(1);text-shadow:0 0 30px rgba(255,255,255,.2),8px 9px 0 rgba(0,0,0,.36)}
}
.name-flicker-burst{animation:nameFlickerBurst .78s steps(2,end) both!important}
@keyframes nameFlickerBurst{
  0%,100%{opacity:1;filter:brightness(1);transform:translate(0,0)}
  8%{opacity:.05;filter:brightness(.05)}
  14%{opacity:1;filter:brightness(3.8)}
  22%{opacity:.12;filter:brightness(.12)}
  30%{opacity:1;filter:brightness(2.9)}
  38%{opacity:.04;filter:brightness(.06)}
  46%{opacity:1;filter:brightness(3.4);transform:translate(-3px,0)}
  54%{opacity:.1;filter:brightness(.12);transform:translate(2px,-1px)}
  63%{opacity:1;filter:brightness(2.4)}
  72%{opacity:.22;filter:brightness(.35)}
  81%{opacity:1;filter:brightness(1.9)}
  91%{opacity:.6;filter:brightness(.8)}
}


@media (max-width: 720px) {
  .socials { grid-template-columns: repeat(3, 54px); gap: 10px; }
}
