/* Light glass visual language, inspired by the supplied floating action bar. */
:root{--bg:#f5f2fa;--ink:#20162e;--muted:#756d83;--line:rgba(72,48,96,.14);--purple:#7c3aed;--pink:#df69a9;--lime:#9bcf37}.noise{opacity:.025;mix-blend-mode:multiply}.cursor-glow{background:radial-gradient(circle,rgba(155,91,248,.14),transparent 65%)}body{background:radial-gradient(circle at 7% 18%,#eadcff 0,transparent 19%),radial-gradient(circle at 94% 38%,#dce8ff 0,transparent 18%),var(--bg);color:var(--ink)}.nav{background:rgba(245,242,250,.66);border-color:var(--line)}.brand{color:#241532}.brand-mark{color:#fff;border-color:#8d53d1;background:linear-gradient(135deg,#a855f7,#6d28d9)}nav.action-bar{position:relative;gap:4px;padding:5px;background:rgba(255,255,255,.7);border:1px solid rgba(78,48,104,.15);box-shadow:0 8px 26px rgba(52,31,72,.08);border-radius:999px;backdrop-filter:blur(14px)}nav a{position:relative;z-index:1;color:#62586e;padding:9px 12px;border-radius:999px}nav a:hover{color:#4c1d95;background:transparent}.anchored-pointer{position:absolute;left:5px;top:5px;height:calc(100% - 10px);width:0;border:1px solid #d5b9f3;border-radius:999px;background:linear-gradient(180deg,#faf4ff,#eadcff);box-shadow:0 3px 12px #8b4ec428;transition:left .6s cubic-bezier(.22,1,.36,1),width .6s cubic-bezier(.22,1,.36,1),opacity .3s;opacity:0}.nav-cta{background:#2d1744!important;color:#fff!important;padding-inline:14px!important}.nav-cta:hover{background:#6532a2!important}.hero,.section{position:relative}.intro,.about p,.section-heading p,.project p,.learn-copy>p:not(.eyebrow),.services-list p{color:var(--muted)}.eyebrow,.section-label{color:#71617f}.eyebrow span{background:#80ad23;box-shadow:0 0 12px #9bcf37}.hero-proof strong{color:#30213e}.avatars b{border-color:var(--bg);background:#e3d4ec;color:#51386c}.avatars b:first-child{background:#c477ad}.portrait{box-shadow:0 18px 65px #8242b052;background:linear-gradient(150deg,#d9aeff,#7840aa 70%)}.portrait:after{background:#e7d4f7}.portrait-initials{color:#3b1a55}.grid-sphere{opacity:.45}.orbit{border-color:#9b65d077}.floating-card{background:rgba(255,255,255,.68);border-color:#cdb7df;color:#402958;box-shadow:0 10px 30px #5e36751c}.floating-card small{color:#786b86}.ticker{background:#fff9;border-color:var(--line);color:#7547ad}.ticker span{color:#7baa22}.skills,.projects,.contact{border-color:var(--line)}.stats{border-color:var(--line)}.stats div{border-color:var(--line)}.stats strong{color:#6b369d}.skill-grid article{background:rgba(255,255,255,.56);border-color:rgba(76,43,104,.13);box-shadow:0 10px 25px #4720600b}.skill-grid article.featured{background:linear-gradient(140deg,#f1e3ff,#fff8fc)}.skill-grid h3,.project h3,.services-list h3{color:#271a34}.tags span{border-color:#d5c2e3;color:#745e84}.project-visual{border-color:#eadcf4}.learn{border-color:#d6bee9;background:radial-gradient(circle at 78% 45%,#d8b3fa,transparent 32%),linear-gradient(120deg,#f6efff,#eee6f8)}.dashboard{background:rgba(255,255,255,.85);border-color:#fff;box-shadow:0 28px 60px #5a237433}.services-list a{border-color:var(--line);color:#281a36}.services-list a:hover{color:#6826a7}.contact form{background:rgba(255,255,255,.48);border-color:#ddcfe8}.contact input,.contact textarea{color:#2b1c39;border-color:#cfc0db}.contact input::placeholder,.contact textarea::placeholder{color:#9c90a6}.email{color:#7138ad;border-color:#9c61ca}footer{border-color:var(--line)}footer p,footer a:not(.brand){color:#786c82}.chat,.whatsapp{display:none}.ambient{z-index:-1}.orb-a{background:#a579ea}.orb-b{background:#e588bd}.orb-c{background:#98c740}.plus{color:#8b55c955}.diamond{border-color:#865ab36e}.random-shape{z-index:-1}.random-shape.ring{border-color:#9873b366}.random-shape.square{border-color:#92ba3e88;background:#bce06e14}.random-shape.cross{color:#c0759f88}@media(max-width:760px){nav.action-bar{border-radius:16px}.mobile-open{background:#fbf9fd!important;border-color:#e3d8ec!important}.mobile-open .anchored-pointer{display:none}.mobile-open a{width:100%;padding:10px 12px}}
:root{--corner:20px;--corner-sm:13px}.skill-grid article{border-radius:var(--corner)}.project-visual{border-radius:var(--corner)}.project{border-radius:var(--corner)}.learn{border-radius:26px}.dashboard{border-radius:var(--corner)}.contact form{border-radius:var(--corner)}.contact input,.contact textarea{border-radius:var(--corner-sm)}.stats{border-radius:var(--corner);overflow:hidden;background:rgba(255,255,255,.26)}.services-list{border-radius:var(--corner);overflow:hidden;background:rgba(255,255,255,.28);border:1px solid var(--line)}.services-list a:first-child{border-top:0}.floating-card{border-radius:var(--corner-sm)}.button{border-radius:999px}.tags span{border-radius:999px}.project:hover .project-visual{box-shadow:0 18px 35px rgba(93,53,126,.12)}
.codeverse,.learn-card{background:linear-gradient(140deg,#f1e3ff,#fff8fc);border:1px solid rgba(76,43,104,.13)}.cv-logo{color:#4d2477;font-size:28px;letter-spacing:-1px}.learn-card span{color:#76508d}.learn-card strong{color:#352040}.learn-card .course-lines b{background:#bfa0d8}.contact form .primary{background:linear-gradient(105deg,#9b4be3,#7331c7);border:0;box-shadow:0 9px 25px rgba(147,61,221,.22)}.contact form .primary:hover{background:linear-gradient(105deg,#8b3cdb,#6525ba)}
@media(max-width:760px){body{background:radial-gradient(circle at 90% 14%,#eadcff 0,transparent 22%),#f5f2fa}.nav{padding-inline:24px}.brand{font-size:12px;letter-spacing:1px}.hero{padding:58px 28px 54px}.hero h1{font-size:clamp(43px,13vw,57px);line-height:1.02;letter-spacing:-2.8px;margin:25px 0 22px}.hero .intro{font-size:14px;line-height:1.75;max-width:100%}.hero-actions{flex-direction:column;align-items:flex-start;gap:17px;margin-top:27px}.hero-actions .button{min-height:52px}.hero-actions .text-link{padding:0 4px}.hero-proof{margin-top:42px}.hero-art{display:none}.ticker{padding:13px 0}.section{padding:70px 28px}.stats{gap:0}.stats strong{font-size:29px}.floating-card,.code-chip{display:none}.random-shape:nth-child(n+4){display:none}.whatsapp{display:none}}
.certifications{border-top:1px solid var(--line)}.certificate-columns{display:grid;grid-template-columns:1fr 1fr;gap:20px}.certificate-group{border:1px solid var(--line);border-radius:var(--corner);padding:22px;background:rgba(255,255,255,.4)}.certificate-label{margin:0 0 17px;font:700 10px 'DM Mono';letter-spacing:1.2px}.certificate-label.complete{color:#6d3ba3}.certificate-label.studying{color:#739625}.certificate{display:grid;grid-template-columns:30px 1fr auto;gap:12px;align-items:center;padding:15px 0;border-top:1px solid var(--line)}.certificate i{width:19px;color:#7c3aed}.certificate h3{font-size:13px;letter-spacing:-.25px;margin:0;color:#2d1e3c}.certificate p{font-size:11px;margin:3px 0 0;color:var(--muted)}.certificate span{font:10px 'DM Mono';color:#79558d;white-space:nowrap}.client-project{text-decoration:none;color:inherit}.client-visual{background:linear-gradient(145deg,#f0e3fc,#fdf9ff);display:flex;align-items:center;justify-content:center;gap:10px;color:#5c2f82}.client-visual svg{width:25px}.client-visual span{font:700 13px 'DM Mono';letter-spacing:.6px}.client-project:hover h3{color:#6b2ead}@media(max-width:760px){.certificate-columns{grid-template-columns:1fr}.certificate{grid-template-columns:26px 1fr}.certificate span{grid-column:2}.client-visual{height:175px}}
.client-project .project-visual{height:128px}.client-project .project-meta{margin-top:12px}.client-project h3{margin-top:7px}.client-project p{font-size:11px}@media(max-width:760px){.project-grid{display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;padding:0 2px 14px}.project-grid::-webkit-scrollbar{height:5px}.project-grid::-webkit-scrollbar-thumb{background:#d2c1df;border-radius:9px}.project-grid .project{min-width:82vw;scroll-snap-align:start}.project-grid .project-visual,.project-grid .large .project-visual,.client-project .project-visual{height:180px}.project-grid .project.large{grid-row:auto}.project-grid .client-project .project-visual{height:118px}}
.portrait{background:#7840aa}.portrait:after{display:none}.portrait img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center top}.portrait-ring{z-index:1;pointer-events:none}.portrait small{z-index:2;background:rgba(31,14,48,.55);padding:6px 9px;border-radius:8px;backdrop-filter:blur(7px);color:#fff}
.community-project{cursor:pointer}.community-project:focus-visible{outline:3px solid #9d59e6;outline-offset:7px;border-radius:var(--corner)}.community-project .project-meta span:after{content:' · JOIN';color:#7c3aed}
.portrait-ring{left:50%;top:50%;transform:translate(-50%,-50%);border-color:#a855f7!important;box-shadow:0 0 18px rgba(168,85,247,.55);animation:portrait-ring-spin 11s linear infinite}.orbit{border-color:rgba(139,74,202,.48);animation:orbit-spin 16s linear infinite}.orbit-two{animation-direction:reverse;animation-duration:21s}@keyframes portrait-ring-spin{to{transform:translate(-50%,-50%) rotate(360deg)}}@keyframes orbit-spin{from{transform:translate(-50%,-50%) rotate(-25deg)}to{transform:translate(-50%,-50%) rotate(335deg)}}
.projects .project-grid{display:block}.projects .project{display:block;min-width:0!important;padding:17px 0;margin:0;border:0;border-bottom:1px solid var(--line);border-radius:0;transform:none!important;box-shadow:none!important;background:none!important}.projects .project:first-child{border-top:1px solid var(--line)}.projects .project-visual,.projects .project-meta,.projects .project p{display:none}.projects .project h3{margin:0;color:#2d1e3c;font-size:18px;font-weight:600}.projects .client-project:hover h3,.projects .community-project:hover h3{color:#7c3aed}@media(max-width:760px){.projects .project-grid{display:block;overflow:visible;padding:0}.projects .project{min-width:0}.projects .project h3{font-size:16px}}
.projects .project h3 a{color:inherit;text-decoration:underline;text-decoration-color:#b690df;text-underline-offset:5px}.projects .project h3 a:hover{color:#7c3aed;text-decoration-color:#7c3aed}
.portrait-ring{border:1px dashed rgba(255,255,255,.82);border-top-color:#d8ff83;border-right-color:#e49bff;animation:portrait-ring-spin 12s linear infinite}@keyframes portrait-ring-spin{to{transform:rotate(360deg)}}
