
/* V15 — broad natural edge fades, silver branding, portrait/brain choice */
#work .carousel-shell::before,#work .carousel-shell::after,
#credentials .cert-carousel::before,#credentials .cert-carousel::after{display:none!important}
/* Fade the moving cards themselves, not a narrow opaque blurry overlay. */
#work .projects-grid,#credentials .cert-grid{
 -webkit-mask-image:linear-gradient(to right, transparent 0%,rgba(0,0,0,.12) 1.5%,rgba(0,0,0,.55) 4%,#000 10%,#000 90%,rgba(0,0,0,.55) 96%,rgba(0,0,0,.12) 98.5%, transparent 100%);
 mask-image:linear-gradient(to right, transparent 0%,rgba(0,0,0,.12) 1.5%,rgba(0,0,0,.55) 4%,#000 10%,#000 90%,rgba(0,0,0,.55) 96%,rgba(0,0,0,.12) 98.5%, transparent 100%);
}
/* The glass header repeats the refined, illuminated card language. */
.header{background:linear-gradient(110deg,color-mix(in srgb,var(--panel) 91%,transparent),color-mix(in srgb,var(--bg) 81%,transparent) 62%,color-mix(in srgb,var(--panel) 78%,transparent))!important;border-bottom:1px solid color-mix(in srgb,var(--border) 82%,transparent);box-shadow:inset 0 1px 0 rgba(230,238,249,.07),0 6px 30px rgba(0,0,0,.08)}
body[data-theme="light"] .header{box-shadow:inset 0 1px 0 rgba(255,255,255,.75),0 7px 24px rgba(60,80,105,.06)}
.header-logo{width:34px!important;height:31px!important;object-fit:contain!important;margin-right:11px!important;filter:drop-shadow(0 1px 1px rgba(0,0,0,.12))}
.identity{letter-spacing:normal!important}
/* Portrait and brain share the same hero container and admin selection. */
.neural-hero .portrait-visual[hidden]{display:none!important}
.neural-hero.show-portrait .neural-float,.neural-hero.show-portrait .neural-glow,.neural-hero.show-portrait .neural-shadow{display:none!important}
.neural-hero.show-portrait{overflow:visible!important;filter:none!important;transform:none!important;isolation:isolate}
.neural-hero .portrait-visual{position:absolute;inset:-8% -8% -4% -16%;display:block;overflow:hidden;border-radius:0;pointer-events:none}
.neural-hero .portrait-visual img{width:100%;height:100%;object-fit:contain;object-position:center bottom;filter:saturate(.81) contrast(1.05);-webkit-mask-image:linear-gradient(to right,transparent 0%,#000 24%,#000 82%,transparent 100%),linear-gradient(to bottom,transparent 0%,#000 12%,#000 77%,transparent 100%);mask-image:linear-gradient(to right,transparent 0%,#000 24%,#000 82%,transparent 100%),linear-gradient(to bottom,transparent 0%,#000 12%,#000 77%,transparent 100%);-webkit-mask-composite:source-in;mask-composite:intersect}
@media(max-width:690px){
 #work .projects-grid,#credentials .cert-grid{-webkit-mask-image:linear-gradient(90deg,transparent, #000 7%,#000 90%,transparent);mask-image:linear-gradient(90deg,transparent,#000 7%,#000 90%,transparent)}
 .neural-hero.show-portrait{right:-9px!important;width:100vw!important;opacity:1!important;max-width:100vw!important;z-index:1!important}
 .neural-hero .portrait-visual{inset:-3% -7% 0 -4%}
 .neural-hero .portrait-visual img{object-position:center top;filter:saturate(.8) contrast(1.035)}
 .hero-copy{z-index:4!important}
 .header-logo{width:29px!important;height:27px!important;margin-right:7px!important}
}
