:root{--nav-bg:#05070a;--nav-text:#f8fafc;--nav-muted:#94a3b8;--nav-dim:#64748b;--nav-rose:#b15382;--nav-rose-dark:#6d284f;--nav-rose-light:#edcee2;--nav-rose-mid:#a14a6e;--nav-emerald:#10b981;--nav-purple:#a855f7;--nav-blue:#3b82f6;--nav-paper:#f6f6f8;--nav-paper-dark:#0a0a0c;--nav-line:hsla(0,0%,100%,.08);--nav-line-light:rgba(0,0,0,.08)}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:#05070a}::-webkit-scrollbar-thumb{background:#1e2430;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#b15382}.navfolio-root{background-color:var(--nav-bg);color:var(--nav-text);min-height:100vh;font-family:var(--sans),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;overflow-x:hidden;position:relative}.navfolio-root ::selection{background:rgba(177,83,130,.4);color:#edcee2}.terminal-canvas{width:100%;height:100%;z-index:0;opacity:.85}.crt-vignette,.terminal-canvas{position:fixed;inset:0;pointer-events:none}.crt-vignette{z-index:1;background:radial-gradient(ellipse at center,transparent 55%,#05070a 96%);opacity:.65}.target-cursor-wrap{position:fixed;top:0;left:0;pointer-events:none;z-index:9999;transform:translate(-50%,-50%);transition:width .22s cubic-bezier(.16,1,.3,1),height .22s cubic-bezier(.16,1,.3,1);will-change:transform}.target-cursor-corner{position:absolute;width:9px;height:9px;border-color:#edcee2;transition:all .2s cubic-bezier(.16,1,.3,1)}.target-cursor-corner.tl{top:0;left:0;border-top:2px solid #edcee2;border-left:2px solid #edcee2}.target-cursor-corner.tr{top:0;right:0;border-top:2px solid #edcee2;border-right:2px solid #edcee2}.target-cursor-corner.bl{bottom:0;left:0;border-bottom:2px solid #edcee2;border-left:2px solid #edcee2}.target-cursor-corner.br{bottom:0;right:0;border-bottom:2px solid #edcee2;border-right:2px solid #edcee2}.target-cursor-center{position:absolute;top:50%;left:50%;width:4px;height:4px;border-radius:50%;background:#edcee2;transform:translate(-50%,-50%);transition:all .2s ease}.target-cursor-wrap.targeted .target-cursor-corner{border-color:#b15382;width:13px;height:13px}.target-cursor-wrap.targeted .target-cursor-center{background:#b15382;transform:translate(-50%,-50%) scale(1.6)}@media (pointer:coarse){.target-cursor-wrap{display:none!important}}.lanyard-wrapper{perspective:1400px;transform-style:preserve-3d;position:relative;transition:transform .8s cubic-bezier(.16,1,.3,1),opacity .6s ease}.lanyard-ribbon{width:20px;height:140px;background:repeating-linear-gradient(45deg,#6d284f,#6d284f 12px,#b15382 0,#b15382 24px);margin:0 auto;border-radius:5px 5px 0 0;box-shadow:0 8px 24px rgba(0,0,0,.6);position:relative;transform-origin:top center;animation:ribbon-sway 4.5s ease-in-out infinite alternate}.lanyard-ribbon:after{content:"RIVASA";position:absolute;bottom:28px;left:50%;transform:translateX(-50%) rotate(-90deg);font-size:8px;font-weight:900;letter-spacing:.2em;color:#edcee2;text-shadow:0 1px 2px rgba(0,0,0,.8)}.lanyard-ring{width:26px;height:26px;border:3.5px solid #cbd5e1;border-radius:50%;margin:-8px auto 0;position:relative;z-index:2;box-shadow:0 4px 10px rgba(0,0,0,.6)}.lanyard-clip{width:16px;height:22px;background:linear-gradient(90deg,#94a3b8,#cbd5e1,#64748b);margin:-5px auto 0;border-radius:3px;box-shadow:0 3px 6px rgba(0,0,0,.4)}.badge-card{width:100%;max-width:350px;background:linear-gradient(145deg,rgba(20,24,34,.95),rgba(10,13,20,.98));border:1px solid rgba(237,206,226,.28);border-radius:18px;box-shadow:0 30px 70px -15px rgba(0,0,0,.8),0 0 50px rgba(177,83,130,.22);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);overflow:hidden;position:relative;transition:transform .12s ease-out;transform-style:preserve-3d;cursor:-webkit-grab;cursor:grab}.badge-card:active{cursor:-webkit-grabbing;cursor:grabbing}.badge-card:before{content:"";position:absolute;top:0;left:-60%;width:220%;height:100%;background:linear-gradient(65deg,transparent 35%,rgba(237,206,226,.12) 50%,transparent 65%);pointer-events:none;animation:badge-shimmer 6s infinite}@keyframes badge-shimmer{0%{transform:translateX(-100%)}50%,to{transform:translateX(100%)}}@keyframes ribbon-sway{0%{transform:rotate(-2deg)}to{transform:rotate(2deg)}}.scroll-float-wrap{display:inline-flex;flex-wrap:nowrap;perspective:1000px}.scroll-float-char{display:inline-block;opacity:0;transform:translateY(70px) rotateX(-50deg);transition:transform .85s cubic-bezier(.175,.885,.32,1.275),opacity .6s ease;will-change:transform,opacity}.scroll-float-wrap.in-view .scroll-float-char{opacity:1;transform:translateY(0) rotateX(0)}.magnet-field-container{display:grid;grid-template-columns:repeat(14,1fr);grid-gap:1.4rem;gap:1.4rem;width:100%;height:100%}.magnet-line-bar{height:2.5px;background:rgba(177,83,130,.35);border-radius:2px;transform-origin:center center;transition:transform .08s ease-out,background-color .2s ease;will-change:transform}.peekaboo-btn{position:relative;min-width:9.5rem;height:2.85rem;border-radius:.8rem;background:#000;cursor:pointer;outline:none;border:none;padding:0;overflow:hidden;-webkit-user-select:none;-moz-user-select:none;user-select:none;display:inline-flex;align-items:center;justify-content:center;transition:transform .15s ease,box-shadow .2s ease;box-shadow:0 4px 14px rgba(0,0,0,.25)}.peekaboo-eyes{position:absolute;right:1.15rem;bottom:.68rem;display:flex;align-items:center;gap:.35rem;pointer-events:none;z-index:1}.peekaboo-eye{width:.78rem;height:.78rem;background:#fff;border-radius:50%;position:relative;overflow:hidden;transition:height .15s ease}.peekaboo-pupil{position:absolute;top:50%;left:50%;width:.4rem;height:.4rem;background:#000;border-radius:50%;transform:translate(-50%,-50%);transition:transform .06s ease-out}.peekaboo-cover{position:absolute;inset:0;border-radius:.8rem;background:#b15382;color:#fff;font-weight:800;font-size:.88rem;letter-spacing:.05em;display:flex;align-items:center;justify-content:center;padding:.5rem 1.1rem;transform-origin:1.2rem 50%;transition:transform .32s cubic-bezier(.34,1.56,.64,1);box-shadow:inset 0 0 0 1.5px rgba(0,0,0,.4);z-index:2}.peekaboo-btn:hover .peekaboo-cover{transform:rotate(-14deg)}.peekaboo-btn:active{transform:scale(.96)}.line-hover-link{position:relative;display:inline-flex;align-items:center;text-decoration:none;cursor:pointer;color:inherit;transition:color .2s ease}.line-hover-link svg.line-scribble-svg{position:absolute;top:100%;left:0;width:100%;height:10px;pointer-events:none;overflow:visible}.line-hover-link svg.line-scribble-svg path{fill:none;stroke:#b15382;stroke-width:2.2;stroke-dasharray:100;stroke-dashoffset:100;transition:stroke-dashoffset .5s cubic-bezier(.7,0,.3,1)}.line-hover-link:hover svg.line-scribble-svg path{stroke-dashoffset:0}.line-hover-link.strike-hover{position:relative}.line-hover-link.strike-hover:after{content:"";position:absolute;left:0;right:0;top:55%;height:2px;background:#b15382;transform:scaleX(0);transform-origin:left center;transition:transform .3s cubic-bezier(.7,0,.3,1)}.line-hover-link.strike-hover:hover:after{transform:scaleX(1)}.fluid-morph-backdrop{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;overflow:hidden;opacity:.25}.fluid-wave-path-1{animation:wave-float-1 12s ease-in-out infinite alternate;transform-origin:center}.fluid-wave-path-2{animation:wave-float-2 15s ease-in-out infinite alternate;transform-origin:center}@keyframes wave-float-1{0%{transform:scale(1) translateY(0) rotate(0deg)}50%{transform:scale(1.08) translateY(-20px) rotate(2deg)}to{transform:scale(.96) translateY(15px) rotate(-1.5deg)}}@keyframes wave-float-2{0%{transform:scale(1) translateX(0)}50%{transform:scale(1.05) translateX(30px)}to{transform:scale(.98) translateX(-25px)}}.book-perspective{perspective:2000px;display:flex;justify-content:center;align-items:center}.book-3d-wrap{width:320px;height:440px;position:relative;transform-style:preserve-3d;transition:transform .85s cubic-bezier(.25,0,0,1)}.book-cover{position:absolute;inset:0;width:100%;height:100%;transform-origin:left;transform-style:preserve-3d;transition:transform .9s cubic-bezier(.25,0,0,1);cursor:pointer;border-radius:4px 12px 12px 4px}.book-cover-front{position:absolute;inset:0;background:linear-gradient(135deg,#1c1427,#2a1b3d 50%,#150f20);border:2px solid rgba(177,83,130,.45);border-radius:4px 12px 12px 4px;box-shadow:0 20px 45px rgba(0,0,0,.75),inset 0 0 24px rgba(177,83,130,.2);-webkit-backface-visibility:hidden;backface-visibility:hidden;display:flex;flex-direction:column;justify-content:space-between;padding:2.2rem 1.8rem;overflow:hidden}.book-cover-front:after{content:"";position:absolute;top:0;bottom:0;left:0;width:20px;background:linear-gradient(90deg,rgba(0,0,0,.7),hsla(0,0%,100%,.12) 40%,rgba(0,0,0,.4))}.book-cover-back{transform:rotateY(180deg);-webkit-backface-visibility:hidden;backface-visibility:hidden;border-radius:12px 4px 4px 12px;padding:2rem 1.6rem;box-shadow:inset 0 0 18px rgba(0,0,0,.06)}.book-cover-back,.book-page-right{position:absolute;inset:0;background:#fdfbf7;color:#1e293b;display:flex;flex-direction:column;font-family:Georgia,serif}.book-page-right{border-radius:4px 12px 12px 4px;padding:2rem 1.8rem;box-shadow:10px 14px 34px rgba(0,0,0,.45),inset 0 0 20px rgba(0,0,0,.04);justify-content:space-between;transform-origin:left}.book-page-right:before{content:"";position:absolute;top:0;bottom:0;left:0;width:24px;background:linear-gradient(90deg,rgba(0,0,0,.15),transparent);pointer-events:none}.accordion-item{border-bottom:1px solid rgba(0,0,0,.1);transition:background-color .2s ease}.accordion-trigger{width:100%;display:flex;justify-content:space-between;align-items:center;padding:1.25rem 0;background:transparent;border:none;cursor:pointer;text-align:left;font-weight:800;font-size:1.1rem;color:#0f172a;transition:color .15s ease}.accordion-trigger:hover{color:#b15382}.accordion-content{overflow:hidden;transition:max-height .35s cubic-bezier(.16,1,.3,1),opacity .3s ease}@media (max-width:860px){.book-3d-wrap{width:270px;height:380px}.book-cover-back,.book-cover-front,.book-page-right{padding:1.3rem;font-size:.88rem}.magnet-field-container{grid-template-columns:repeat(8,1fr);gap:.9rem}}@media (max-width:640px){.book-3d-wrap{width:240px;height:340px}.magnet-field-container{grid-template-columns:repeat(6,1fr);gap:.75rem}}