/* Aqua's warm personality, with a quieter layer of liquid glass. */
:root{--surface:#f8fcffbd;--card:#ffffff9e;--soft:#edf5fac2;--glass:#f6fbff85;--border:#afc8d657;--shadow:0 30px 100px #274a7128,0 5px 18px #3e779820;--glass-edge:#ffffffdf;--glass-glow:#ffffffa8;--ease:cubic-bezier(.18,.72,.25,1);--spring:cubic-bezier(.2,1.55,.38,1)}
:root[data-theme=dark]{--surface:#102239bd;--card:#21364a85;--soft:#192e40b0;--glass:#29476372;--border:#a5ceeb29;--glass-edge:#b7d6ff36;--glass-glow:#8bc9ff2b;--shadow:0 30px 100px #0006,0 2px 16px #0003}
body{background:radial-gradient(ellipse at 5% 0%,#f9f2ff 0,transparent 43%),radial-gradient(ellipse at 92% 22%,#b0e9f4 0,transparent 44%),radial-gradient(ellipse at 20% 80%,#d4c8f0 0,transparent 42%),linear-gradient(135deg,#ddebf4,#bcdbea 55%,#d4e9ee);overflow-x:hidden}
html[data-theme=dark] body{background:radial-gradient(ellipse at 82% 10%,#20507366,transparent 46%),radial-gradient(ellipse at 10% 70%,#43457955,transparent 44%),linear-gradient(145deg,#0e2034,#091827 70%,#102638)}
.ambient-lights{position:fixed;inset:0;overflow:hidden;pointer-events:none;z-index:-1}.ambient-lights i{position:absolute;width:44vw;height:44vw;border-radius:50%;filter:blur(75px);opacity:.28;background:#9abaf9;animation:ambient-drift 24s ease-in-out infinite alternate}.ambient-lights i:first-child{left:-19vw;top:5vh;background:#d1baf4}.ambient-lights i:nth-child(2){right:-15vw;top:18vh;background:#70dce6;animation-delay:-8s}.ambient-lights i:last-child{left:30vw;bottom:-25vw;animation-delay:-15s}html[data-theme=dark] .ambient-lights i{opacity:.1}
.desktop-bar{background:#f5fbff70;backdrop-filter:blur(28px) saturate(160%)}.desktop-brand>span{font-size:18px}.desktop-right button{border-radius:7px}.desktop-right button:hover{background:var(--glass-glow)}
.site-window{border-color:var(--glass-edge)!important;backdrop-filter:blur(32px) saturate(150%);box-shadow:var(--shadow),inset 0 1px 0 #fff8;isolation:isolate}.glass-shell:before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at var(--light-x,65%) var(--light-y,5%),var(--glass-glow),transparent 42%);opacity:.38}.window-title{background:linear-gradient(180deg,#ffffff9e,#e6f0f887);border-bottom-color:var(--border)}html[data-theme=dark] .window-title{background:linear-gradient(#39516c85,#233c5266)}.window-extra{font-size:9px;opacity:.72;letter-spacing:.015em}.site-header{background:var(--surface);backdrop-filter:blur(20px)}.brand-icon{box-shadow:inset 0 1px 2px #ffff,0 4px 12px #0877d12c;transition:transform .4s var(--spring)}.brand:hover .brand-icon{transform:rotate(-7deg) scale(1.05)}
.hero{padding-top:58px;padding-bottom:47px}.hero h1{letter-spacing:-.065em}.hero h1 em{background:linear-gradient(95deg,#277db3,#448aa8 45%,#666aab);background-clip:text;-webkit-text-fill-color:transparent}html[data-theme=dark] .hero h1 em{background-image:linear-gradient(95deg,#7bd0fc,#a0d7dc 50%,#b9a7f8)}.heading-dot{animation:spark-turn 14s linear infinite;display:inline-block}.glass-signature{display:inline-flex;align-items:center;gap:6px;margin-top:18px;font-size:9px;letter-spacing:.025em;color:var(--muted);padding:5px 10px;border:1px solid var(--glass-edge);border-radius:20px;background:var(--glass);box-shadow:inset 0 1px 1px #fff5}
.portrait-area{transition:transform .7s var(--ease);transform:perspective(900px) rotateX(var(--tilt-y,0deg)) rotateY(var(--tilt-x,0deg))}.photo-window{background:var(--glass);border:1px solid var(--glass-edge);box-shadow:0 14px 35px #173f642b,inset 0 0 0 1px #fff3}.portrait-glow{animation:glow-breathe 9s ease-in-out infinite}.floating-tag{background:var(--glass);backdrop-filter:blur(22px) saturate(155%);border-color:var(--glass-edge);box-shadow:0 8px 25px #132c5320,inset 0 1px 0 #fff7}.craft-tag{animation:float-tag 6s ease-in-out infinite}.status-tag{animation:float-tag 7s ease-in-out infinite reverse}.portrait-caption{background:var(--glass)}
.aqua-button,.nav-contact{position:relative;overflow:hidden;isolation:isolate;transition:transform .35s var(--spring),box-shadow .35s var(--ease);border:1px solid #59b8ec;box-shadow:inset 0 1px 3px #fff,0 5px 12px #168ad126,0 1px 2px #0f6f9d59}.aqua-button:before,.nav-contact:before{content:"";position:absolute;inset:1px 1px 48%;border-radius:inherit;background:linear-gradient(#ffffffe5,#ffffff30);z-index:-1}.aqua-button:after,.nav-contact:after{content:"";position:absolute;top:-80%;left:-85%;width:38%;height:260%;transform:rotate(27deg);background:linear-gradient(90deg,transparent,#fff9,transparent);pointer-events:none;transition:left .7s var(--ease)}.aqua-button:hover:after,.nav-contact:hover:after{left:150%}.aqua-button:hover{transform:translateY(-3px);box-shadow:inset 0 1px 3px #fff,0 9px 24px #168ad144}.aqua-button:active{transform:translateY(1px) scale(.97)}.quiet-button,.icon-button,.round-link{transition:transform .35s var(--spring),background .2s}.quiet-button:hover,.round-link:hover,.icon-button:hover{transform:translateY(-2px)}.button-ripple{position:absolute;border-radius:50%;pointer-events:none;background:#fff6;animation:ripple-expand .7s ease-out forwards}
.client-card,.skill-card,.ventures-window{background:var(--card);border-color:var(--glass-edge);backdrop-filter:blur(14px);box-shadow:inset 0 1px 0 #fff7,0 7px 24px #243a6510}.glass-hover{position:relative;transition:box-shadow .45s var(--ease),border-color .3s,transform .45s var(--ease)}.glass-hover:hover{box-shadow:inset 0 1px 0 #fff8,0 14px 36px #2949731c}.skill-card:hover{transform:translateY(-5px)}.company-row{transition:background .3s}.company-row:hover{background:var(--glass)}.company-icon{box-shadow:inset 0 1px 2px #fff9,0 4px 12px #182d4712;transition:transform .4s var(--spring)}.company-row:hover .company-icon{transform:scale(1.08) rotate(-4deg)}.nivra-card{box-shadow:inset 0 1px 0 #ffffff82,0 8px 25px #3b355217}.nivra-logo{width:112px;height:112px;object-fit:contain;border-radius:28px;position:relative;z-index:2;filter:drop-shadow(0 10px 16px #26204b2e);animation:float-tag 8s ease-in-out infinite}.nivra-art{display:flex;align-items:center;justify-content:center}.nivra-pill{background:#ffffff44;backdrop-filter:blur(15px);border:1px solid #fff7}
.post-card{display:block}.post-card h3{transition:color .25s}.post-card:hover h3{color:var(--blue)}.article-cover{border:1px solid var(--glass-edge);box-shadow:inset 0 1px 0 #fff8,0 5px 16px #152f5310;overflow:hidden}.article-cover img{width:100%;height:100%;object-fit:cover;object-position:top;transition:transform .7s var(--ease)}.post-card:hover .article-cover img{transform:scale(1.035)}.post-card .cover-orb{transition:transform .7s var(--spring)}.post-card:hover .cover-orb{transform:scale(1.08) translateY(-4px)}.article-share-group{display:flex;gap:5px;margin-left:auto}.article-share-group .icon-button{background:var(--glass);border:1px solid var(--border)}.prose img{width:100%;border-radius:14px;border:1px solid var(--glass-edge);margin:26px 0 12px;box-shadow:0 7px 25px #23436518}.prose>p:has(>img){margin:0}.prose blockquote{border-left:3px solid var(--blue);margin:25px 0;padding:12px 20px;background:var(--glass);border-radius:0 10px 10px 0}.reading-progress{position:fixed;top:0;left:0;width:100%;height:2px;background:linear-gradient(90deg,#32aaff,#b6dcf6);transform:scaleX(var(--read-progress,0));transform-origin:left;z-index:100;pointer-events:none;box-shadow:0 1px 8px #69c8ff88}
.contact-section{background:radial-gradient(ellipse at 50% 40%,var(--glass-glow),transparent 65%),var(--glass);border-top:1px solid var(--border)}.contact-orb{animation:float-tag 8s ease-in-out infinite;transform:rotate(-12deg);border-color:var(--glass-edge);box-shadow:inset 0 1px 1px #fff8,0 8px 22px #193b6523}.site-footer{background:var(--soft);border-top-color:var(--border)}
.liquid-dock{background:linear-gradient(145deg,#f9feff85,#def2fb55);backdrop-filter:blur(32px) saturate(180%);border:1px solid var(--glass-edge);box-shadow:0 12px 35px #152b5026,inset 0 1px 1px #fff9,inset 0 -1px 3px #fff3;overflow:visible;padding:10px 13px 13px;gap:11px}html[data-theme=dark] .liquid-dock{background:linear-gradient(145deg,#789eb24a,#33526961);box-shadow:0 12px 35px #0004,inset 0 1px 1px #def1ff66}.dock-item{transform:translateY(var(--dock-lift,0px)) scale(var(--dock-scale,1));transform-origin:bottom center;transition:transform .35s var(--spring),box-shadow .35s;box-shadow:inset 0 1px 3px #ffff,0 3px 7px #21405a30}.dock-item:hover{transform:translateY(var(--dock-lift,-8px)) scale(var(--dock-scale,1.18))}.theme-dock{background:linear-gradient(#ddd8f1,#b3abdf 45%,#807cae 55%,#b5b5e2)}html[data-theme=dark] .theme-dock{background:linear-gradient(#ffe3ae,#ecc799 45%,#ce9563 55%,#f5d5a7)}.dock-tooltip{white-space:nowrap;pointer-events:none}.dock-divider{height:34px;background:var(--border)}
dialog.spotlight{border:1px solid var(--glass-edge);width:min(580px,calc(100% - 30px));padding:0;margin:12vh auto auto;background:var(--surface);color:var(--text);backdrop-filter:blur(32px);box-shadow:var(--shadow);border-radius:18px;max-height:75vh}.spotlight::backdrop{background:#08182c55;backdrop-filter:blur(7px)}.spotlight-results{max-height:52vh;overflow:auto}.spotlight-results a{display:flex;align-items:center;justify-content:space-between;padding:13px 23px;gap:20px}.spotlight-results a:hover{background:var(--glass)}.spotlight-results a>span{display:flex;flex-direction:column;gap:4px}.spotlight-results strong{font-size:12px;font-weight:550}.spotlight-results small{font-size:9px;color:var(--muted)}.spotlight-search button{background:none;color:var(--muted)}.spotlight input{color:var(--text)}.toast{position:fixed;bottom:100px;left:50%;transform:translate(-50%,15px);opacity:0;pointer-events:none;background:var(--surface);color:var(--text);border:1px solid var(--glass-edge);border-radius:14px;box-shadow:var(--shadow);backdrop-filter:blur(20px);padding:12px 18px;font-size:12px;z-index:200;transition:opacity .25s,transform .35s var(--spring);max-width:calc(100% - 32px);text-align:center}.toast.visible{opacity:1;transform:translate(-50%,0)}[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.aqua-cursor-ring{display:none;position:fixed;top:0;left:0;height:32px;width:32px;border:1px solid #8ed8ff66;box-shadow:inset 0 0 12px #81c6ff10,0 0 18px #7cd1ff16;border-radius:50%;pointer-events:none;z-index:9999;transition:width .25s,height .25s,background .25s,opacity .2s;opacity:0}.aqua-cursor-ring.active{background:#9adbff12;width:45px;height:45px}
@media(hover:hover) and (pointer:fine){html.custom-cursor,html.custom-cursor body{cursor:url('/cursors/aqua-arrow.svg') 3 2,auto}html.custom-cursor a,html.custom-cursor button,html.custom-cursor summary{cursor:url('/cursors/aqua-arrow.svg') 3 2,pointer}html.custom-cursor .aqua-cursor-ring{display:block}.reveal{opacity:0;transform:translateY(20px);transition:opacity .8s var(--ease),transform .8s var(--ease)}.reveal.visible{opacity:1;transform:none}}
@keyframes ambient-drift{to{transform:translate(8vw,-5vh) scale(1.15)}}@keyframes float-tag{50%{translate:0 -6px}}@keyframes glow-breathe{50%{opacity:.65;scale:1.08}}@keyframes spark-turn{to{rotate:360deg}}@keyframes ripple-expand{from{scale:0;opacity:1}to{scale:2.5;opacity:0}}
@media(min-width:701px){.site-footer{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr)}.site-footer>span{justify-self:center;text-align:center}.site-footer>a{justify-self:end}}
@media(max-width:1000px){.hero{padding-top:40px}.window-extra{font-size:8px}.glass-signature{font-size:8px}}
@media(max-width:700px){.hero{padding-top:38px;padding-bottom:35px}.glass-signature{margin-top:14px}.desktop-right{gap:13px}[data-cursor-toggle]{display:none!important}.window-extra{display:none}.site-footer{display:flex}.nivra-logo{width:93px;height:93px;border-radius:24px}.liquid-dock{gap:8px;padding:9px 10px 12px}.dock-item{transform:none!important}.article-share-group{margin-left:auto}.article-header h1{font-size:34px}.article-cover.large{height:220px}.spotlight-results a{padding:14px 18px}.toast{bottom:90px}.blog-controls{align-items:stretch}.filter-tabs{overflow-x:auto;flex-wrap:nowrap;padding-bottom:5px}.filter-tabs button{white-space:nowrap;flex-shrink:0}.aqua-cursor-ring{display:none!important}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.reveal{opacity:1!important;transform:none!important}.portrait-area,.dock-item{transform:none!important}.aqua-cursor-ring{display:none!important}.ambient-lights i{filter:blur(75px)}}
