html.cv-signature-intro-pending,html.cv-signature-intro-pending body{overflow:hidden!important}
html.cv-signature-intro-pending::after{content:"";position:fixed;z-index:2147483646;inset:0;background:radial-gradient(circle at 50% 46%,#12374b 0,#071b29 42%,#04111b 100%);pointer-events:none}
.cv-signature-intro{--cv-intro-size:min(410px,78vw,70vh);--cv-intro-radius:calc(var(--cv-intro-size)*.34);position:fixed;z-index:2147483647;inset:0;display:grid;place-items:center;overflow:hidden;background:radial-gradient(circle at 50% 46%,#12374b 0,#071b29 42%,#04111b 100%);opacity:1;visibility:visible;transition:opacity .52s ease,visibility .52s ease;color:#d7e3ea}
.cv-signature-intro::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at center,rgba(44,193,235,.13),transparent 48%);animation:cv-intro-breathe 2s ease-in-out infinite}
.cv-signature-intro.is-leaving{opacity:0;visibility:hidden;pointer-events:none}
.cv-signature-wheel{position:relative;width:var(--cv-intro-size);height:var(--cv-intro-size);transform:scale(.12) rotate(-18deg);animation:cv-intro-wheel-in .68s cubic-bezier(.17,.84,.24,1.12) .06s forwards}
.cv-signature-wheel::before{content:"";position:absolute;inset:2%;border-radius:50%;background:repeating-conic-gradient(from -112.5deg,rgba(18,52,69,.98) 0 40.2deg,transparent 40.2deg 45deg);box-shadow:0 24px 80px rgba(0,0,0,.56),inset 0 0 42px rgba(59,198,239,.07);-webkit-mask:radial-gradient(circle,transparent 0 31%,#000 32% 93%,transparent 94%);mask:radial-gradient(circle,transparent 0 31%,#000 32% 93%,transparent 94%)}
.cv-signature-wheel::after{content:"";position:absolute;inset:15.6%;border:1px solid rgba(101,210,243,.23);border-radius:50%;opacity:0;animation:cv-intro-orbit-in .44s ease .76s forwards}
.cv-signature-app{--a:0deg;--ra:0deg;position:absolute;z-index:2;top:50%;left:50%;display:grid;place-items:center;width:64px;height:64px;margin:0;border:2px solid color-mix(in srgb,currentColor 70%,white);border-radius:50%;background:var(--app-bg);color:var(--app-color);box-shadow:0 10px 28px color-mix(in srgb,currentColor 28%,transparent);opacity:0;transform:translate(-50%,-50%) scale(.08);animation:cv-intro-app-arrive .56s cubic-bezier(.17,.84,.3,1.18) var(--delay) forwards}
.cv-signature-app svg{width:29px;height:29px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.cv-signature-app:nth-child(1){--a:-90deg;--ra:90deg;--delay:.40s;--app-bg:#123e4d;--app-color:#38c5ef}
.cv-signature-app:nth-child(2){--a:-45deg;--ra:45deg;--delay:.60s;--app-bg:#172f50;--app-color:#70a9ee}
.cv-signature-app:nth-child(3){--a:0deg;--ra:0deg;--delay:.80s;--app-bg:#30294f;--app-color:#b6a0f2}
.cv-signature-app:nth-child(4){--a:45deg;--ra:-45deg;--delay:1s;--app-bg:#173f35;--app-color:#6bd3a7}
.cv-signature-app:nth-child(5){--a:90deg;--ra:-90deg;--delay:1.20s;--app-bg:#48351f;--app-color:#efb565}
.cv-signature-app:nth-child(6){--a:135deg;--ra:-135deg;--delay:1.40s;--app-bg:#4b2535;--app-color:#f08bac}
.cv-signature-app:nth-child(7){--a:180deg;--ra:-180deg;--delay:1.60s;--app-bg:#282d59;--app-color:#9da8ff}
.cv-signature-app:nth-child(8){--a:225deg;--ra:-225deg;--delay:1.80s;--app-bg:#163a46;--app-color:#71dfd2}
.cv-signature-center{position:absolute;z-index:3;top:50%;left:50%;display:grid;place-items:center;width:105px;height:105px;border:1px solid #487083;border-radius:50%;background:#0d2a3b;color:#65d2f3;box-shadow:0 16px 38px rgba(0,0,0,.38),inset 0 0 0 8px rgba(22,169,223,.06);opacity:0;filter:blur(8px);transform:translate(-50%,-50%) scale(.015);animation:cv-intro-center-in .58s cubic-bezier(.17,.84,.3,1.12) 2.05s forwards}
.cv-signature-center svg{width:58px;height:58px;overflow:visible}
.cv-signature-glow{position:absolute;z-index:1;inset:0;border-radius:50%;opacity:0;box-shadow:0 0 0 1px rgba(101,210,243,.35),0 0 70px rgba(34,190,232,.22);animation:cv-intro-glow .66s ease 2.36s forwards}
@keyframes cv-intro-wheel-in{0%{opacity:0;transform:scale(.12) rotate(-18deg)}70%{opacity:1;transform:scale(1.035) rotate(1.5deg)}100%{opacity:1;transform:scale(1) rotate(0)}}
@keyframes cv-intro-orbit-in{to{opacity:1}}
@keyframes cv-intro-app-arrive{0%{opacity:0;transform:translate(-50%,-50%) scale(.08) rotate(-45deg)}65%{opacity:1}100%{opacity:1;transform:translate(-50%,-50%) rotate(var(--a)) translateY(calc(var(--cv-intro-radius)*-1)) rotate(var(--ra)) scale(1)}}
@keyframes cv-intro-center-in{0%{opacity:0;filter:blur(8px);transform:translate(-50%,-50%) scale(.015)}72%{opacity:1;filter:blur(0);transform:translate(-50%,-50%) scale(1.08)}100%{opacity:1;filter:blur(0);transform:translate(-50%,-50%) scale(1)}}
@keyframes cv-intro-glow{0%{opacity:0;transform:scale(.88)}100%{opacity:1;transform:scale(1)}}
@keyframes cv-intro-breathe{50%{opacity:.58;transform:scale(1.08)}}
@media(max-width:600px){.cv-signature-intro{--cv-intro-size:min(336px,90vw,62vh)}.cv-signature-app{width:52px;height:52px}.cv-signature-app svg{width:24px;height:24px}.cv-signature-center{width:84px;height:84px}.cv-signature-center svg{width:47px;height:47px}}
@media(prefers-reduced-motion:reduce){.cv-signature-wheel,.cv-signature-app,.cv-signature-center,.cv-signature-wheel::after,.cv-signature-glow{animation-duration:.01ms!important;animation-delay:.01ms!important}.cv-signature-intro::before{animation:none}.cv-signature-intro{transition-duration:.2s}}
