/* One visual system for the public V2 portfolio. */
:root{--v2-accent:#9d8cff;--v2-bg:#0a0a0c;--v2-panel:#121216;--v2-paper:#f4f1ea;--v2-line:rgba(244,241,234,.14)}
body,.editor-site-v2{background:var(--v2-bg)!important;color:var(--v2-paper)!important}
::selection{background:var(--v2-accent);color:#0a0a0c}
.v2-hero{margin:12px;height:calc(100svh - 24px);border-radius:24px;background:#111;isolation:isolate}
.v2-hero::after{inset:12px;border-color:rgba(244,241,234,.13);border-radius:16px}
.v2-header{left:50%;right:auto;top:24px;width:max-content;min-width:0;transform:translateX(-50%);padding:6px;border:1px solid rgba(244,241,234,.18);border-radius:999px;background:rgba(8,8,10,.72);box-shadow:0 12px 38px rgba(0,0,0,.28);backdrop-filter:blur(18px)}
.v2-header:hover{background:rgba(8,8,10,.88);border-color:rgba(157,140,255,.48)}
.v2-header .v2-logo,.v2-header .v2-contact-link{display:none!important}
.v2-header nav{display:flex!important;gap:3px!important;margin:0!important}
.v2-header nav a{min-width:92px;padding:11px 16px;text-align:center;border-radius:999px;color:rgba(244,241,234,.68);font:500 10px/1 'DM Sans',sans-serif;letter-spacing:.14em}
.v2-header nav a:hover{background:var(--v2-accent);color:#0a0a0c;transform:none}
.v2-kicker,.v2-work-card span,.v2-work-card p,.v2-all-work span,.v2-hero-cta span,.v2-contact>a span{color:var(--v2-accent)!important}
.v2-hero-copy h1 em,.v2-statement h2 em,.v2-section-head h2 em,.v2-contact h2 em{color:var(--v2-accent)!important}
.v2-hero-cta:hover{background:var(--v2-accent);color:#0a0a0c;border-color:var(--v2-accent)}
.v2-statement{max-width:none;min-height:90svh;padding:16vh 7vw;align-items:center;text-align:center}
.v2-statement h2{max-width:1100px;margin:26px auto 38px}
.v2-statement-copy{max-width:620px;margin:0 auto;text-align:center}
.v2-work{padding:120px 5vw 150px}
.v2-section-head{display:block;text-align:center;margin-bottom:64px}
.v2-section-head>p{max-width:480px;margin:30px auto 0;text-align:center}
.v2-work-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;max-width:1440px;margin:0 auto}
.v2-work-card,.v2-work-card.v2-work-feature{width:100%;min-height:560px;border:1px solid var(--v2-line);border-radius:24px;padding:28px;background:var(--v2-panel)}
.v2-work-card:hover{border-color:rgba(157,140,255,.56)}
.v2-all-work{width:max-content;margin:32px auto 0;justify-content:center}
.v2-about-me{padding:120px 1rem!important;background:var(--v2-bg)!important}
.v2-about-me::before{background:radial-gradient(circle,rgba(157,140,255,.12),transparent 68%)}
.v2-about-card{width:min(1180px,100%);border-color:var(--v2-line);border-radius:24px;background:var(--v2-panel);box-shadow:0 28px 80px rgba(0,0,0,.25)}
.v2-about-card .v2-kicker,.v2-about-card h2 em,.v2-about-stats span,.v2-about-roles span{color:var(--v2-accent)!important}
.v2-about-stats{grid-template-columns:repeat(3,minmax(0,1fr));border-color:var(--v2-line)}
.v2-about-stats>div{display:flex;min-height:132px;flex-direction:column;align-items:center;justify-content:center;padding:22px}
.v2-about-stats>div+div{border-left-color:var(--v2-line)}
.v2-about-roles{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:16px}
.v2-about-roles article{display:flex;min-height:220px;flex-direction:column;justify-content:flex-start;padding:28px;border:1px solid var(--v2-line);border-radius:24px;background:#0e0e12}
.v2-about-roles article:hover{transform:translateY(-4px);border-color:rgba(157,140,255,.55);background:rgba(157,140,255,.04)}
.v2-about-roles p{max-width:100%}
.v2-contact{text-align:center;background:var(--v2-bg)}
.v2-contact h2{margin-left:auto;margin-right:auto}
.v2-footer{border-top-color:var(--v2-line)}
@media(pointer:fine){
 .home-page .cursor-follower,.home-page .cursor-follower.is-active,.home-page .cursor-follower.is-hand,.home-page .cursor-follower.is-grab{background:var(--v2-accent)!important;box-shadow:0 0 0 5px rgba(157,140,255,.15)!important}
 .home-page .cursor-follower::before,.home-page .cursor-follower.is-hand::before,.home-page .cursor-follower.is-grab::before{border-color:rgba(157,140,255,.58)!important}
}
@media(max-width:900px){.v2-header nav a{min-width:78px;padding-inline:12px}.v2-work-grid{grid-template-columns:1fr}.v2-work-card,.v2-work-card.v2-work-feature{min-height:520px}.v2-about-roles{grid-template-columns:1fr}.v2-about-roles article{min-height:0}.v2-about-card .v2-about-lede,.v2-about-card .v2-about-body{text-align:left}}
@media(max-width:560px){.v2-hero{margin:6px;height:calc(100svh - 12px);border-radius:18px}.v2-header{top:16px}.v2-header nav a{min-width:0;padding:10px 12px;font-size:9px}.v2-work{padding-inline:1rem}.v2-work-card,.v2-work-card.v2-work-feature{min-height:430px;border-radius:18px}.v2-about-me{padding:80px 6px!important}.v2-about-card{border-radius:18px}.v2-about-stats>div{min-height:104px;padding:14px 5px}.v2-about-roles article{border-radius:18px}}

/* Unified scrollbar, alignment, glass surfaces, and restored utility actions. */
html{scrollbar-color:var(--v2-accent) #09090b;scrollbar-width:thin}
html::-webkit-scrollbar{width:10px}
html::-webkit-scrollbar-track{background:#09090b}
html::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#b9adff,var(--v2-accent));border:2px solid #09090b;border-radius:999px}
html::-webkit-scrollbar-thumb:hover{background:#c9c0ff}
.v2-header,.v2-work-card,.v2-about-card,.v2-about-roles article,.v2-copy-email{background:linear-gradient(145deg,rgba(255,255,255,.065),rgba(255,255,255,.018))!important;backdrop-filter:blur(16px) saturate(125%);-webkit-backdrop-filter:blur(16px) saturate(125%);box-shadow:inset 0 1px 0 rgba(255,255,255,.1),0 18px 50px rgba(0,0,0,.18)}
.v2-about-card{text-align:center!important}.v2-about-card .v2-kicker,.v2-about-card h2,.v2-about-card .v2-about-lede,.v2-about-card .v2-about-body,.v2-about-card .v2-tools{text-align:center!important;margin-left:auto!important;margin-right:auto!important}
.v2-about-roles article{text-align:center!important;align-items:center!important}.v2-about-roles p{text-align:center!important}
.v2-contact>a{display:none!important}
.v2-copy-email{display:inline-flex;align-items:center;gap:18px;margin:0 auto;padding:8px 8px 8px 20px;border:1px solid rgba(244,241,234,.2);border-radius:999px;color:var(--v2-paper);font:500 clamp(.9rem,1.4vw,1.1rem)/1 'DM Sans',sans-serif;transition:border-color .25s,transform .25s,background .25s}
.v2-copy-email:hover,.v2-copy-email.is-copied{transform:translateY(-3px);border-color:rgba(157,140,255,.75);background:rgba(157,140,255,.1)!important}
.v2-copy-state{display:grid;place-items:center;min-width:82px;min-height:40px;padding:0 13px;border-radius:999px;background:var(--v2-accent);color:#0a0a0c;font:700 9px/1 'DM Sans',sans-serif;letter-spacing:.12em}
.v2-footer{align-items:center;padding:24px 5vw}.v2-footer>div{display:flex;flex-direction:column;gap:7px}.v2-footer>div span{display:block}
.v2-top-button{display:inline-flex;align-items:center;gap:12px;padding:11px 15px;border:1px solid rgba(244,241,234,.16);border-radius:999px;transition:color .25s,background .25s,border-color .25s,transform .25s}
.v2-top-button span{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:rgba(244,241,234,.08);transition:background .25s,transform .25s}
.v2-top-button:hover{color:#0a0a0c;background:var(--v2-accent);border-color:var(--v2-accent);transform:translateY(-2px)}.v2-top-button:hover span{background:#0a0a0c;color:var(--v2-accent);transform:translateY(-2px)}
@media(max-width:900px){.v2-about-card .v2-about-lede,.v2-about-card .v2-about-body{text-align:center!important}}
@media(max-width:560px){.v2-copy-email{gap:10px;padding-left:15px}.v2-copy-state{min-width:72px}.v2-footer{align-items:flex-start}.v2-footer>div{max-width:190px;line-height:1.6}.v2-footer>div span{display:block!important}.v2-top-button span{display:grid!important}}
