*{box-sizing:border-box}html,body{margin:0;background:#000;color:#eee;font-family:Arial,Helvetica,sans-serif;overflow:hidden}.scene{position:fixed;inset:0;opacity:0;visibility:hidden;pointer-events:none;transition:.8s;background:#000}.scene.active{opacity:1;visibility:visible;pointer-events:auto}#login{display:grid;place-items:center;font-family:Consolas,monospace}.login-box{width:min(92vw,650px);padding:36px;border:1px solid #e50914;background:#030303;box-shadow:0 0 30px #e5091430,inset 0 0 30px #e5091410}.eyebrow{color:#e50914;letter-spacing:.24em;font-size:12px}h1{color:#e50914;font-size:clamp(30px,6vw,58px);letter-spacing:.08em;text-shadow:0 0 16px #e5091460}.status{color:#666;font-size:13px;margin:18px 0}.field{margin:18px 0}.field label{display:block;color:#666;font-size:12px;letter-spacing:.18em;margin-bottom:7px}.input{height:52px;border:1px solid #1d1d1d;background:#050505;padding:0 16px;display:flex;align-items:center;color:#e50914;letter-spacing:.08em}.cursor{animation:blink .55s steps(1) infinite}.hidden{visibility:hidden}.auth{display:flex;justify-content:space-between;color:#666;font-size:12px;margin-top:24px}.auth #led{width:9px;height:9px;border-radius:50%;background:#3b0004}.auth #led.ok{background:#e50914;box-shadow:0 0 14px #e50914}.profiles{background:radial-gradient(circle at top,#151515,#070707 42%,#000 80%);display:flex;flex-direction:column;align-items:center;justify-content:center}.brand{position:absolute;top:28px;left:4vw;color:#e50914;font-family:Consolas,monospace;font-weight:700;letter-spacing:.14em}.profiles h2{font-size:clamp(36px,5vw,62px);font-weight:500;margin:0;text-align:center;padding:0 4vw;flex-shrink:0}.profiles p{color:#888}.grid{width:min(938.4px,92vw);display:flex;flex-wrap:wrap;justify-content:center;gap:28px;margin-top:35px;flex-shrink:0}.card{border:0;background:none;color:#999;cursor:pointer;width:calc((100% - 84px)/4);flex-shrink:0;padding:2px 6px}.avatar{aspect-ratio:1;border-radius:8px;display:grid;place-items:center;font-size:clamp(38px,5vw,72px);font-family:Consolas,monospace;font-weight:700;background:linear-gradient(135deg,#e50914,#3c0005);border:2px solid transparent;transition:.2s}.card .card-label{display:block;margin-top:12px;font-size:18px}.card:hover,.card:focus-visible{color:white}.card:hover .avatar,.card:focus-visible .avatar{transform:scale(1.05);border-color:white;box-shadow:0 0 24px #e5091450}.card:nth-child(2) .avatar{background:linear-gradient(135deg,#ff2b36,#700009)}.card:nth-child(3) .avatar{background:linear-gradient(135deg,#a90b13,#260003)}.card:nth-child(4) .avatar{background:linear-gradient(135deg,#e50914,#1d0002)}.card:nth-child(5) .avatar{background:linear-gradient(135deg,#ff4650,#520006)}@keyframes blink{50%{opacity:0}}@media(max-width:820px){.brand{position:static;align-self:flex-start;margin:28px 0 60px 4vw}.profiles{justify-content:flex-start;overflow:auto;padding-bottom:40px}}
/* Profile icons and responsive rows retain the existing card treatment. */
.profiles{overflow:auto;justify-content:safe center;padding:90px 0}.profiles p{flex-shrink:0}.card:focus-visible{outline:2px solid #ff4650;outline-offset:8px;border-radius:8px}.cyber-icon{width:70%;height:70%;color:#ff4650;filter:drop-shadow(0 1px 2px #000);transition:color .2s,filter .2s}.card:hover .cyber-icon,.card:focus-visible .cyber-icon{color:#ff9399;filter:drop-shadow(0 0 4px #e50914)}.card:hover .icon-pulse,.card:focus-visible .icon-pulse{animation:cyber-pulse 1.2s ease-in-out infinite}@keyframes cyber-pulse{50%{opacity:.45}}
@media(min-width:1800px){.grid{width:1663.2px}.card{width:213.6px}}
@media(min-width:621px) and (max-width:1024px){.grid{width:min(680.8px,92vw);gap:20px}.card{width:calc((100% - 40px)/3)}}
@media(max-width:820px){.profiles{justify-content:flex-start;padding:0 0 40px}}
@media(max-width:620px){.grid{width:min(520px,92vw);gap:20px}.card{width:calc((100% - 20px)/2)}}
@media(prefers-reduced-motion:reduce){.card:hover .icon-pulse,.card:focus-visible .icon-pulse{animation:none}}

/* Temporary entrance states; normal card styling and layout stay unchanged. */
#login.departing{transition:opacity .3s ease;opacity:0;pointer-events:none}
.profiles.entering{background:#000;overflow:hidden;transition:none}
.profiles.entering .grid{pointer-events:none}
.profiles.entering .card{position:relative;opacity:0;pointer-events:none;will-change:transform,opacity;cursor:default}
.profiles.entering h2,.profiles.entering>p{opacity:0;will-change:transform,opacity}
.profiles.entering .card .avatar{transform:none;border-color:transparent;box-shadow:none}
.profiles.entering .card .cyber-icon{color:#ff4650;filter:drop-shadow(0 1px 2px #000)}
.profiles.entering .card .icon-pulse{animation:none}
@media(prefers-reduced-motion:reduce){.profiles.entering .card,.profiles.entering h2,.profiles.entering>p{will-change:opacity}}

/* Visible, short-lived glitch layers; original content stays untouched. */
#glitch-overlay{position:fixed;inset:0;z-index:99999;pointer-events:none;overflow:hidden;contain:strict}
#glitch-overlay *{pointer-events:none}
.glitch-text-copy,.glitch-band,.glitch-scan,.glitch-noise,.glitch-vertical{position:absolute;pointer-events:none;will-change:transform,opacity;box-sizing:border-box}
.glitch-text-copy{color:transparent;overflow:visible}
.glitch-text-copy::before,.glitch-text-copy::after{content:attr(data-text);position:absolute;inset:0;padding:inherit;white-space:inherit;box-sizing:border-box;animation-duration:var(--glitch-duration);animation-timing-function:steps(1,end);animation-fill-mode:both}
.glitch-text-copy::before{color:#ff2635;text-shadow:1px 0 #e50914;animation-name:glitch-slice-red}
.glitch-text-copy::after{color:#ddd;text-shadow:-1px 0 #444;animation-name:glitch-slice-light}
@keyframes glitch-slice-red{0%,72%{clip-path:inset(12% 0 55% 0);transform:translate3d(calc(-1 * var(--glitch-split)),0,0) skewX(-5deg);filter:blur(1px)}24%,86%{clip-path:inset(54% 0 8% 0);transform:translate3d(var(--glitch-split),1px,0) skewX(4deg);letter-spacing:1px;filter:blur(0)}48%{clip-path:inset(30% 0 36% 0);transform:translate3d(-4px,-1px,0);filter:blur(1.5px)}100%{opacity:0;transform:translate3d(0,0,0)}}
@keyframes glitch-slice-light{0%,65%{clip-path:inset(58% 0 10% 0);transform:translate3d(var(--glitch-split),0,0) skewX(4deg)}20%,82%{clip-path:inset(5% 0 66% 0);transform:translate3d(calc(-1 * var(--glitch-split)),-1px,0) skewX(-3deg);filter:blur(1px)}43%{clip-path:inset(35% 0 35% 0);transform:translate3d(5px,0,0);letter-spacing:-.5px}100%{opacity:0;transform:translate3d(0,0,0)}}
.glitch-band{background:linear-gradient(90deg,#34343490,#e5091499 18%,#a0a0a070 55%,#e5091480 85%,#34343460);border-top:1px solid #ff4650;clip-path:polygon(0 0,100% 0,100% 40%,89% 40%,89% 72%,100% 72%,100% 100%,0 100%)}
.glitch-scan{background:repeating-linear-gradient(to bottom,#ff2635 0 1px,transparent 1px 5px,#999 5px 6px,transparent 6px 10px)}
.glitch-noise{inset:0;background:repeating-linear-gradient(0deg,transparent 0 3px,#a9a9a9 3px 4px,transparent 4px 9px),repeating-linear-gradient(93deg,transparent 0 17px,#e50914 17px 19px,transparent 19px 47px),repeating-linear-gradient(177deg,transparent 0 23px,#777 23px 25px,transparent 25px 61px)}
.glitch-vertical{background:linear-gradient(to bottom,transparent,#ff2635 15%,#555 54%,#e50914 83%,transparent)}
.card.glitch-card-active .avatar,.input.glitch-field-active{border-color:#ff4650;box-shadow:0 0 28px #e50914b0,inset 0 0 9px #e5091470;transition:none}
.login-box.glitch-grant-active{border-color:#ff4650;box-shadow:0 0 38px #e5091490,inset 0 0 20px #e5091430}
@media(prefers-reduced-motion:reduce){#glitch-overlay{display:none}.glitch-text-copy::before,.glitch-text-copy::after{animation:none}}

/* About Me: self-contained dossier overlay; the directory remains underneath. */
#about-modal[hidden],#about-modal [hidden]{display:none!important}
.about-modal{position:fixed;inset:0;z-index:10000;display:flex;align-items:center;justify-content:center;padding:24px;background:rgba(0,0,0,.78);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);color:#dedede;animation:about-backdrop-in .24s ease both;overscroll-behavior:contain}
.about-modal.is-opening{background:rgba(0,0,0,.7);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.about-window{width:min(1180px,100%);max-height:calc(100vh - 48px);max-height:calc(100dvh - 48px);display:flex;flex-direction:column;min-height:0;border:1px solid #76121b;background:#0a090a;box-shadow:0 0 32px #e5091428;position:relative}
.about-toolbar{flex-shrink:0;display:flex;align-items:center;gap:24px;padding:20px 24px;border-bottom:1px solid #3f1519;background:#0a090a;position:relative;z-index:3}
.about-back{flex-shrink:0;border:1px solid #66151d;background:#100b0d;color:#ddd;padding:12px 14px;font:12px Consolas,monospace;letter-spacing:.06em;cursor:pointer;transition:color .2s,border-color .2s,background .2s}
.about-back:hover{color:white;border-color:#e50914;background:#26090d}
.about-back:focus-visible,.about-modal a:focus-visible{outline:2px solid #ff4650;outline-offset:4px}
.about-heading{flex:1;min-width:0}.about-heading h2{margin:4px 0 0;font:600 clamp(17px,2.4vw,25px) Consolas,monospace;letter-spacing:.09em;color:#eee}
.dossier-kicker{font:10px/1.5 Consolas,monospace;letter-spacing:.12em;color:#ad6066;margin:0}
.dossier-stamp{display:inline-block;border:2px solid #a0202b;padding:6px 9px;color:#e34550;font:700 12px/1.2 Consolas,monospace;letter-spacing:.13em;transform:rotate(-4deg)}
.about-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}
.dossier-stage{display:grid;place-items:center;min-height:0;height:min(65vh,570px);padding:32px;perspective:1600px;overflow:hidden}
.case-file{position:relative;width:min(660px,100%);aspect-ratio:1.48;transform-style:preserve-3d;isolation:isolate}
.dossier-paper{position:absolute;inset:0;background:repeating-linear-gradient(0deg,#181517 0 2px,#191618 2px 4px);border:1px solid #633039;padding:24px;box-shadow:inset 0 0 35px #0008;opacity:0}
.paper-header,.paper-footer{display:flex;justify-content:space-between;align-items:center;gap:12px;font:10px/1.5 Consolas,monospace;color:#9d777b;letter-spacing:.08em}
.paper-header{border-bottom:1px solid #492d32;padding-bottom:12px}.paper-footer{margin-top:18px;border-top:1px solid #492d32;padding-top:12px}.paper-footer .dossier-stamp{font-size:10px}
.paper-content{display:grid;grid-template-columns:.65fr 1.35fr;gap:22px;margin-top:18px}
.preview-details{font:10px/1.45 Consolas,monospace;min-width:0}.preview-details p{margin:0 0 7px}.preview-details p>span{color:#a35f67}.preview-details strong{display:block;color:#ded6d7;font-weight:500}
.redacted-lines{margin-top:12px;color:#8e777a}.redacted-lines i{font-style:normal;filter:blur(1.3px);color:#963540;letter-spacing:1px}
.case-cover{position:absolute;inset:0;z-index:2;padding:30px;background:repeating-linear-gradient(112deg,#121012 0 2px,#151214 2px 4px);border:1px solid #81202a;border-left:5px solid #4d1118;transform-origin:left center;backface-visibility:hidden;box-shadow:4px 8px 26px #0009;display:flex;flex-direction:column}
.folder-tab{position:absolute;left:-5px;top:-22px;background:#281116;border:1px solid #81202a;border-bottom:0;padding:6px 20px;font:10px Consolas,monospace;color:#bd8187;letter-spacing:.12em}
.cover-topline,.cover-footer{display:flex;justify-content:space-between;gap:16px;font:10px/1.4 Consolas,monospace;color:#9a747a;letter-spacing:.08em}.cover-stamp{align-self:flex-end;margin-top:20px}.cover-title{font:600 clamp(25px,4vw,44px)/1.12 Consolas,monospace;letter-spacing:.1em;margin:auto 0 16px;color:#b7a4a7}.cover-rule{height:2px;background:#751923;width:45%;margin-bottom:14px}.cover-subject{font:12px/1.5 Consolas,monospace;letter-spacing:.1em;color:#baa0a4}.cover-footer{margin-top:26px;font-size:9px}
.is-opening .case-file{animation:case-arrive .32s cubic-bezier(.2,.75,.25,1) both,case-zoom .3s 1.65s ease-in forwards}
.is-opening .case-cover{animation:case-open .52s .26s cubic-bezier(.2,.7,.25,1) both}
.is-opening .dossier-paper{animation:paper-reveal .22s .42s ease-out both}
.about-panel{overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;min-height:0;scrollbar-color:#651820 #100c0d;scrollbar-width:thin}
.is-ready .about-panel{animation:profile-reveal .25s ease-out both}
.about-layout{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:34px;padding:30px}
.about-details-column{min-width:0}.subject-name{font:500 clamp(25px,3vw,36px)/1.16 Arial,Helvetica,sans-serif;margin:10px 0;color:#f0eded;overflow-wrap:anywhere}.subject-title{color:#ba7179;font-size:14px;line-height:1.6;margin:0 0 26px}
.about-details{margin:0}.about-detail-row{display:grid;grid-template-columns:135px minmax(0,1fr);gap:18px;border-bottom:1px solid #25171a;padding:11px 0}.about-details dt{font:11px/1.6 Consolas,monospace;letter-spacing:.04em;color:#ab6a72}.about-details dd{margin:0;font-size:13px;line-height:1.65;overflow-wrap:anywhere;color:#d3ced0}.about-details a{color:#e79097;text-decoration-color:#713039;text-underline-offset:4px}.about-details .profile-placeholder{color:#887d80;font-family:Consolas,monospace;font-size:12px}
.about-summary{padding-top:24px}.about-summary h4{font:12px Consolas,monospace;letter-spacing:.09em;color:#c77c84;margin:0 0 12px}.about-summary p{font-size:14px;line-height:1.8;color:#bfb6b9;margin:0}
.profile-photo-panel{min-width:0;align-self:start;position:sticky;top:24px}.photo-frame{position:relative;aspect-ratio:3/4;width:100%;overflow:hidden;background:#0d0a0b;border:1px solid #75202a;box-shadow:0 0 22px #e509141c}
.photo-frame::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(135deg,#780d171c,transparent 70%),repeating-linear-gradient(0deg,transparent 0 4px,#0002 4px 5px)}
.photo-frame img{display:block;width:100%;height:100%;object-fit:cover;object-position:center;filter:saturate(.62) contrast(1.04)}
.portrait-placeholder{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:16px;font:12px Consolas,monospace;letter-spacing:.12em;color:#92535c;background:linear-gradient(90deg,transparent 49.7%,#5b202735 50%,transparent 50.3%),linear-gradient(0deg,transparent 49.7%,#5b202735 50%,transparent 50.3%)}
.portrait-placeholder small{font-size:9px;letter-spacing:.04em;color:#71535a;text-align:center}.portrait-crosshair{width:54px;height:54px;border:1px solid #53212a;position:relative}.portrait-crosshair::before,.portrait-crosshair::after{content:"";position:absolute;background:#85404a}.portrait-crosshair::before{width:1px;height:18px;top:17px;left:26px}.portrait-crosshair::after{width:18px;height:1px;top:26px;left:17px}
.preview-photo{align-self:start;box-shadow:none}.preview-photo .portrait-placeholder{font-size:8px;gap:12px}.preview-photo .portrait-crosshair{width:54px;height:54px}
.photo-metadata{margin:20px 0}.photo-metadata>div{display:flex;justify-content:space-between;gap:12px;margin:0 0 12px;font:10px/1.6 Consolas,monospace}.photo-metadata dt{color:#92616a}.photo-metadata dd{margin:0;color:#d8bec3;text-align:right}.subject-status-dot{display:inline-block;width:6px;height:6px;background:#e50914;box-shadow:0 0 8px #e5091460;border-radius:50%;margin-right:8px}
.file-metadata{border-top:1px solid #4b1b23;padding-top:16px;display:grid;gap:8px;font:9px/1.4 Consolas,monospace;color:#7e6067;letter-spacing:.04em}.dossier-fiction{font-size:10px;line-height:1.6;color:#75656b;margin:18px 0 0}
.photo-frame.glitch-photo-active{border-color:#ff4650;box-shadow:0 0 22px #e5091480}
.about-modal.is-closing{animation:about-backdrop-out .22s ease both}.is-closing .about-window{animation:dossier-close .22s ease both;pointer-events:none}
@keyframes case-arrive{from{opacity:0;transform:translate3d(0,65px,0) rotate(-7deg) scale(.85)}to{opacity:1;transform:translate3d(0,0,0) rotate(-2deg) scale(1)}}
@keyframes case-open{from{transform:rotateY(0)}to{transform:rotateY(-115deg)}}
@keyframes paper-reveal{from{opacity:0}to{opacity:1}}
@keyframes case-zoom{from{opacity:1;transform:rotate(-2deg) scale(1)}to{opacity:0;transform:rotate(0) scale(1.15)}}
@keyframes profile-reveal{from{opacity:0;transform:translate3d(0,10px,0) scale(.99)}to{opacity:1;transform:none}}
@keyframes dossier-close{to{opacity:0;transform:translate3d(0,18px,0) scale(.97)}}
@keyframes about-backdrop-in{from{opacity:0}to{opacity:1}}@keyframes about-backdrop-out{to{opacity:0}}
@media(max-width:900px){.about-toolbar{gap:16px;padding:16px}.about-layout{gap:22px;padding:24px}.about-detail-row{grid-template-columns:110px minmax(0,1fr);gap:12px}.about-toolbar>.dossier-stamp{font-size:10px}.about-back{padding:10px;font-size:10px}}
@media(max-width:640px){.about-modal{padding:10px}.about-window{max-height:calc(100vh - 20px);max-height:calc(100dvh - 20px)}.about-toolbar{flex-wrap:wrap;gap:12px;padding:14px}.about-back{order:-1;width:100%;text-align:left}.about-heading h2{font-size:18px}.dossier-kicker{font-size:8px}.about-layout{display:flex;flex-direction:column;padding:20px;gap:26px}.profile-photo-panel{order:-1;position:static;width:100%;max-width:320px;margin:auto}.photo-frame{max-height:45vh;aspect-ratio:3/4}.preview-photo{max-height:none}.photo-metadata{margin:14px 0}.subject-name{font-size:27px}.about-detail-row{grid-template-columns:100px minmax(0,1fr);gap:10px}.about-details dd{font-size:12px}.about-details dt{font-size:10px}.dossier-stage{height:min(60vh,470px);padding:28px 16px}.case-file{aspect-ratio:.94}.case-cover{padding:20px}.cover-title{font-size:29px}.cover-topline,.cover-footer{font-size:8px;gap:6px}.cover-subject{font-size:10px}.dossier-paper{padding:14px}.paper-content{gap:10px;grid-template-columns:.55fr 1.45fr;margin-top:12px}.preview-details{font-size:8px}.paper-footer{font-size:7px;margin-top:10px}.paper-footer .dossier-stamp{font-size:7px;padding:4px}.paper-header{font-size:8px}.redacted-lines{margin-top:8px}}
@media(max-height:550px) and (min-width:641px){.dossier-stage{height:65vh}.case-file{width:min(440px,100%)}.case-cover{padding:16px}.cover-title{font-size:26px}.cover-footer{margin-top:12px}.cover-stamp{margin-top:8px}.dossier-paper{padding:12px}.preview-details{font-size:8px}.paper-content{margin-top:10px;gap:12px}.paper-footer{margin-top:10px}}
@media(prefers-reduced-motion:reduce){.about-modal,.about-modal *{animation:none!important;scroll-behavior:auto}.about-modal{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}}

.cover-subject,.preview-details strong{text-transform:uppercase}

/* Education uses a digital archive sequence, independent of the dossier. */
#education-modal[hidden],#education-modal [hidden]{display:none!important}
.education-modal{position:fixed;inset:0;z-index:10000;display:flex;align-items:center;justify-content:center;padding:24px;background:rgba(0,0,0,.78);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);color:#ddd;animation:academic-overlay-in .4s ease both;overscroll-behavior:contain}
.education-window{width:min(1180px,100%);max-height:calc(100vh - 48px);max-height:calc(100dvh - 48px);min-height:0;display:flex;flex-direction:column;position:relative;background:#09090a;border:1px solid #62151e;box-shadow:0 0 32px #e5091424}
.education-toolbar{display:flex;align-items:center;gap:24px;padding:20px 24px;border-bottom:1px solid #34141a;flex-shrink:0;background:#0c090b;z-index:2}
.education-back{font:11px/1.5 Consolas,monospace;letter-spacing:.05em;color:#ddd;background:#100a0d;border:1px solid #711b26;padding:11px 14px;cursor:pointer;flex-shrink:0;transition:background .2s,border-color .2s}.education-back:hover{background:#260c12;border-color:#e50914;color:white}.education-back:focus-visible,.education-content:focus-visible{outline:2px solid #ff4650;outline-offset:-4px}
.edu-heading{flex:1;min-width:0}.edu-heading h2{font:600 clamp(18px,2.5vw,26px)/1.3 Consolas,monospace;letter-spacing:.09em;margin:4px 0 0;color:#f0e9eb}.academic-eyebrow{font:10px/1.5 Consolas,monospace;color:#b16c76;letter-spacing:.1em;margin:0}.archive-count{font:10px Consolas,monospace;color:#a06972;white-space:nowrap}
.education-sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
.education-sweep{position:absolute;inset:0 0 auto;height:1px;background:#e50914;box-shadow:0 0 12px #e5091490;pointer-events:none;animation:academic-sweep .4s ease-out both;z-index:3}
.academic-boot{display:grid;place-items:center;height:min(60vh,470px);padding:30px;overflow:hidden}.boot-console{width:min(620px,100%);border-left:2px solid #8a1928;padding:20px 24px;background:#0e0a0c}.boot-console-label{font:10px/1.6 Consolas,monospace;color:#6f4c53;letter-spacing:.12em;margin-bottom:24px}.academic-boot-line{font:clamp(10px,1.45vw,15px)/1.6 Consolas,monospace;color:#c97380;margin:12px 0;opacity:0;transform:translate3d(-6px,0,0);transition:opacity .12s,transform .12s}.academic-boot-line.is-visible{opacity:1;transform:none}.academic-boot-line:nth-of-type(3){color:#e5b1b9}
.education-modal.is-booting .edu-heading,.education-modal.is-booting .archive-count{opacity:0}
.education-content{overflow-y:auto;overflow-x:hidden;min-height:0;overscroll-behavior:contain;padding:28px 32px 36px;scrollbar-color:#651820 #100c0d;scrollbar-width:thin}.academic-progression{font:11px/1.7 Consolas,monospace;letter-spacing:.04em;color:#99767e;margin:0 0 26px;text-align:center}.academic-progression span{color:#e50914;padding:0 10px}
.academic-timeline{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:28px 52px;padding:8px 0 20px}.timeline-rail{position:absolute;left:calc(50% - 1px);top:40px;bottom:53px;width:2px;background:linear-gradient(to top,#61131f,#e50914);transform-origin:center bottom;box-shadow:0 0 10px #e5091430;pointer-events:none}
.academic-card{position:relative;min-width:0;padding:25px;background:#0f0c0e;border:1px solid #52202a;align-self:start}.degree-btech{grid-column:1;grid-row:2}.degree-msc{grid-column:1;grid-row:1;border-color:#b12336;background:#120c10;box-shadow:0 0 22px #e5091425;padding:28px 25px}
.timeline-node{position:absolute;right:-34px;top:25px;width:14px;height:14px;border:2px solid #e50914;border-radius:50%;background:#10090c;box-shadow:0 0 10px #e5091455;z-index:1}.degree-msc .timeline-node{background:#e50914}.degree-connector{position:absolute;left:100%;top:31px;width:27px;height:1px;background:#8e2030;pointer-events:none}
.record-topline{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;font:10px/1.5 Consolas,monospace;color:#8d5a66;letter-spacing:.05em;margin-bottom:20px}.academic-year{color:#da818f}.academic-card h3{font:12px/1.6 Consolas,monospace;letter-spacing:.035em;color:#ccadb4;margin:0 0 7px}.degree-specialism{font-size:clamp(19px,2.25vw,25px);line-height:1.3;color:#e4d9dd;margin:0 0 20px;overflow-wrap:anywhere}.degree-msc .degree-specialism{font-size:clamp(22px,2.5vw,29px);color:#f1e7eb}.degree-institution{font-size:15px;margin:0 0 6px;color:#c5b8bd}.degree-location{font-size:12px;color:#8f7e86;margin:0}.academic-status{font:10px/1.6 Consolas,monospace;color:#d7808c;letter-spacing:.08em;margin:22px 0 14px}.academic-status span{font-size:9px;margin-right:7px;color:#e50914}.record-caption{font:9px/1.6 Consolas,monospace;letter-spacing:.11em;color:#79515d;border-top:1px solid #302027;padding-top:12px;margin:0}
.gandiva-panel{grid-column:2;grid-row:1;position:relative;align-self:start;min-width:0;padding:25px;border:1px solid #652031;background:#0f0b0e}.project-connector{position:absolute;right:100%;top:31px;width:26px;height:1px;background:#e50914;transform-origin:left center;pointer-events:none}.gandiva-panel h3{font:500 clamp(20px,2.3vw,27px)/1.3 Consolas,monospace;color:#e4c6ce;margin:10px 0}.project-subtitle{font-size:13px;line-height:1.6;color:#bd8796;margin:0 0 16px}.academic-description{font-size:13px;line-height:1.8;color:#b3a5ad;margin:0 0 20px}.academic-tags{list-style:none;display:flex;flex-wrap:wrap;gap:7px;padding:0;margin:0}.academic-tags li{font:10px/1.4 Consolas,monospace;color:#c48a9a;border:1px solid #652033;background:#200c1340;padding:6px 8px}
.cortex-panel{margin-top:28px;padding:28px;border:1px solid #40202a;background:#0b0b0d;position:relative}.practical-heading{display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;border-bottom:1px solid #392029;padding-bottom:16px;margin-bottom:22px}.practical-heading h3{font:12px/1.6 Consolas,monospace;color:#bd798d;letter-spacing:.13em;margin:0}.practical-heading>span{font:9px/1.6 Consolas,monospace;color:#755e68;letter-spacing:.09em}.cortex-intro{display:grid;grid-template-columns:1fr 2fr;gap:24px}.cortex-intro h4{font:500 28px/1.2 Consolas,monospace;color:#dfc7d1;margin:0 0 8px}.lab-stack{list-style:none;display:flex;align-items:stretch;gap:24px;margin:10px 0 28px;padding:0}.lab-stack li{position:relative;flex:1;min-width:0;display:grid;place-items:center;text-align:center;border:1px solid #522133;background:#140d12;padding:12px 8px;font:10px/1.6 Consolas,monospace;color:#c994a6;overflow-wrap:anywhere}.lab-stack li+li::before{content:'→';position:absolute;right:calc(100% + 6px);top:50%;transform:translateY(-50%);color:#9d314c;width:12px}.lab-details{display:grid;grid-template-columns:1fr 1fr;gap:24px}.lab-details h5{font:10px/1.5 Consolas,monospace;letter-spacing:.09em;color:#9d6378;margin:0 0 10px}.lab-details ul{padding-left:16px;margin:0;color:#a99aa2;font-size:12px;line-height:1.9}
.profiles.education-background .grid{animation:directory-retreat .4s ease both}.profiles.education-background.education-leaving .grid{animation:directory-return .22s ease both}
.is-reconstructing .edu-heading{animation:academic-reveal .3s ease both}.is-reconstructing .timeline-rail{animation:academic-draw .9s cubic-bezier(.3,.7,.3,1) both}.is-reconstructing .degree-btech{animation:academic-reveal .3s ease both}.is-reconstructing .degree-msc{animation:academic-reveal .35s .45s ease both}.is-reconstructing .degree-msc .academic-status{animation:academic-verify .4s .8s ease both}.is-reconstructing .project-connector{animation:project-link .3s .85s ease both}.is-reconstructing .gandiva-panel{animation:academic-reveal .35s 1s ease both}.is-reconstructing .cortex-panel{animation:academic-reveal .4s 1.45s ease both}
.education-modal.is-closing{animation:academic-overlay-out .22s ease both}.education-modal.is-closing .education-window{animation:academic-close .22s ease both;pointer-events:none}
@keyframes academic-overlay-in{from{opacity:0}to{opacity:1}}@keyframes academic-overlay-out{to{opacity:0}}@keyframes academic-sweep{0%{opacity:0;transform:translate3d(0,0,0)}20%{opacity:.85}100%{opacity:0;transform:translate3d(0,100vh,0)}}@keyframes academic-reveal{from{opacity:0;transform:translate3d(0,8px,0)}to{opacity:1;transform:none}}@keyframes academic-draw{from{transform:scaleY(0)}to{transform:scaleY(1)}}@keyframes project-link{from{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes academic-verify{0%,100%{filter:none}50%{filter:brightness(1.35) drop-shadow(0 0 4px #e50914)}}@keyframes academic-close{to{opacity:0;transform:translate3d(0,14px,0) scale(.985)}}@keyframes directory-retreat{from{opacity:1;transform:scale(1)}to{opacity:.55;transform:scale(.97)}}@keyframes directory-return{from{opacity:.55;transform:scale(.97)}to{opacity:1;transform:scale(1)}}
@media(max-width:900px){.education-toolbar{gap:16px;padding:16px}.education-content{padding:24px}.academic-timeline{column-gap:36px}.timeline-node{right:-26px}.degree-connector{width:19px}.project-connector{width:18px}.academic-card,.degree-msc,.gandiva-panel{padding:20px}.record-topline{font-size:9px}.archive-count{display:none}.education-back{font-size:10px;padding:10px}.lab-stack{gap:18px}.lab-stack li+li::before{right:calc(100% + 3px)}}
@media(max-width:640px){.education-modal{padding:10px}.education-window{max-height:calc(100vh - 20px);max-height:calc(100dvh - 20px)}.education-toolbar{flex-wrap:wrap;padding:14px;gap:14px}.education-back{width:100%;text-align:left}.edu-heading h2{font-size:21px}.academic-eyebrow{font-size:8px}.education-content{padding:20px 16px 26px}.academic-progression{text-align:left;font-size:10px}.academic-progression span{padding:0 4px}.academic-timeline{display:flex;flex-direction:column;padding-left:22px;gap:22px}.timeline-rail{left:3px;top:40px;bottom:52px}.degree-msc{order:1}.gandiva-panel{order:2}.degree-btech{order:3}.timeline-node{left:-27px;right:auto}.degree-connector{right:100%;left:auto;width:20px}.project-connector{right:100%;width:19px}.academic-card,.degree-msc,.gandiva-panel{padding:20px 16px}.academic-card h3{font-size:10px}.degree-specialism{font-size:20px}.degree-msc .degree-specialism{font-size:24px}.cortex-panel{padding:20px 16px;margin-top:22px}.cortex-intro{grid-template-columns:1fr;gap:8px}.lab-stack{flex-direction:column;gap:22px;margin:14px 0 26px}.lab-stack li{padding:10px}.lab-stack li+li::before{content:'↓';top:auto;bottom:calc(100% + 3px);left:50%;right:auto;transform:translateX(-50%);height:16px}.lab-details{grid-template-columns:1fr;gap:24px}.academic-boot{padding:20px 16px;height:min(60vh,430px)}.boot-console{padding:16px 12px}.academic-boot-line{font-size:10px}.boot-console-label{font-size:8px}}
@media(prefers-reduced-motion:reduce){.education-sweep{display:none}.education-modal,.education-modal *,.profiles.education-background .grid{animation:none!important;transition:none!important}.education-modal.is-ready .education-content{animation:academic-opacity .15s ease both!important}@keyframes academic-opacity{from{opacity:0}to{opacity:1}}}

.academic-timeline>.project-connector{left:50%;right:auto;top:40px}
@media(max-width:640px){.academic-timeline>.project-connector{left:4px;right:auto}}

/* Education archive upgrade: paired records, logical lab explorer, project archive. */
#education-modal .academic-progression{display:flex;justify-content:center;align-items:center;gap:16px;flex-wrap:wrap;font-size:10px;letter-spacing:.08em;margin-bottom:24px}
#education-modal .academic-progression>span{color:#a9808b;padding:0}.progression-link{position:relative;min-width:62px;text-align:center;color:#d04256!important;border-bottom:1px solid #53202b}.progression-link i{position:absolute;width:12px;height:1px;background:#f24c62;left:0;bottom:-1px;opacity:0}.is-reconstructing .progression-link i{animation:progression-pulse 1.3s .25s ease-out 1}
#education-modal .academic-timeline{gap:24px 52px;align-items:stretch;padding-bottom:8px}.trojan-panel{grid-column:2;grid-row:2}.academic-project{min-width:0;position:relative;background:#0f0b0e;border:1px solid #652031;padding:24px;align-self:stretch}
#education-modal .academic-card{align-self:stretch;display:flex;flex-direction:column}#education-modal .academic-card .record-caption{margin-top:auto}#education-modal .degree-msc{box-shadow:0 0 26px #e509142c;background:#130c10}.academic-project-heading{display:flex;gap:14px;align-items:flex-start;margin-bottom:14px}.academic-project-heading>[data-cyber-icon]{width:45px;flex:0 0 45px;color:#c34a60}.academic-project-heading>div{min-width:0}.academic-project h3{font:500 clamp(16px,1.8vw,22px)/1.35 Consolas,monospace;color:#dec2cc;margin:6px 0 0;overflow-wrap:anywhere}.academic-project .academic-description{font-size:12px;margin-bottom:16px}.prototype-label{font:9px/1.6 Consolas,monospace;letter-spacing:.06em;color:#886370;margin:0 0 15px}.academic-project .academic-tags{gap:5px}.academic-project .academic-tags li{font-size:9px;padding:5px 7px}.project-controls{display:flex;flex-wrap:wrap;gap:14px;align-items:center;justify-content:space-between;border-top:1px solid #39202a;margin-top:18px;padding-top:15px}.project-record-status{font:8px/1.5 Consolas,monospace;letter-spacing:.03em;color:#9e6878}.project-record-status i{display:inline-block;width:5px;height:5px;background:#b52642;margin-right:5px;border-radius:50%}
.detail-toggle,.source-link,.service-close,.gandiva-jump{display:inline-block;border:1px solid #783044;background:#180e14;color:#d793a6;padding:9px 11px;font:10px/1.5 Consolas,monospace;letter-spacing:.03em;cursor:pointer;text-decoration:none}.detail-toggle:hover,.source-link:hover,.service-close:hover,.gandiva-jump:hover{border-color:#dc3a57;color:#f1d4de;background:#271019}.project-detail{border-top:1px solid #542330;margin-top:18px;padding-top:18px}.project-detail-inner{animation:detail-enter .24s ease both}.project-detail h4,.cluster-detail h5{font:10px/1.6 Consolas,monospace;letter-spacing:.08em;color:#bb778e;margin:18px 0 10px}.project-detail h4:first-child{margin-top:0}.project-feature-list{font-size:12px;line-height:1.8;color:#b4a1aa;margin:8px 0 20px;padding-left:17px}.detail-tags{margin:0 0 20px}.research-label{display:block;font:9px/1.6 Consolas,monospace;color:#c27992;border-left:2px solid #962c48;padding-left:9px;margin:10px 0}.source-link{margin-top:16px}.archive-icon{display:block;width:100%;height:auto;max-height:68px;transition:transform .2s}
.flow-diagram{margin:15px 0;max-width:440px}.flow-diagram svg{display:block;width:100%;height:auto;max-height:440px}.flow-nodes rect{fill:#150d13;stroke:#643046;stroke-width:1}.flow-nodes text{font:11px Consolas,monospace;fill:#c19aa9;text-anchor:middle}.flow-connectors{fill:none;stroke:#a52d4c;stroke-width:1.25}.flow-packet{fill:#e74c6b;opacity:0;offset-rotate:0deg;pointer-events:none}.flow-packet.packet-grey{fill:#ad8a98;animation-delay:.3s!important}.packet-active .flow-packet{animation:archive-packet 1.8s linear 1}.flow-mobile{display:none}.ml-diagram{max-width:100%;margin:14px 0 20px}.ml-diagram .flow-nodes text{font-size:12px}.ml-diagram svg{max-height:235px}.purple-flow .flow-connectors path:nth-child(n+3){stroke:#927b84}
#education-modal .cortex-panel{margin-top:28px;padding:26px;border-color:#512531}.showcase-section-heading{display:flex;gap:20px;justify-content:space-between;align-items:flex-start;border-bottom:1px solid #3a202c;padding-bottom:18px;margin-bottom:22px}.showcase-section-heading h3{font:500 clamp(20px,2.3vw,27px)/1.3 Consolas,monospace;letter-spacing:.045em;color:#dcc0cc;margin:7px 0 0}.archive-index{flex-shrink:0;font:9px/1.5 Consolas,monospace;color:#79515f;letter-spacing:.07em;padding-top:8px}.cortex-title-row{display:flex;gap:18px;align-items:center;margin-bottom:14px}.cortex-title-row>[data-cyber-icon]{width:56px;color:#c34361;flex-shrink:0}.cortex-title-row h4{font:500 29px/1.2 Consolas,monospace;color:#e3cbd5;margin:0 0 7px}.cortex-title-row .project-subtitle{margin:0;font-size:10px;letter-spacing:.07em}.system-labels,.lab-concept-stats{list-style:none;margin:18px 0;padding:0;display:flex;gap:7px;flex-wrap:wrap}.system-labels li{font:8px/1.5 Consolas,monospace;letter-spacing:.07em;color:#b1798d;border:1px solid #482433;padding:5px 8px}.lab-concept-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:22px 0}.lab-concept-stats li{font:9px/1.6 Consolas,monospace;color:#a78292;background:#140e13;border-left:2px solid #6e263b;padding:12px 10px;overflow-wrap:anywhere}.lab-tabs{display:flex;gap:0;border-bottom:1px solid #512737;margin:26px 0 18px}.lab-tabs button{padding:13px 22px;border:0;border-bottom:2px solid transparent;background:transparent;color:#906a7b;font:11px Consolas,monospace;letter-spacing:.07em;cursor:pointer}.lab-tabs button[aria-selected="true"]{color:#e3b8c9;border-bottom-color:#dd3b60;background:#1a0f17}.explorer-hint{font:11px/1.7 Consolas,monospace;color:#866775;margin:10px 0 18px}.topology-container{border:1px solid #30202b;background:radial-gradient(ellipse at center,#1a0f1555,transparent 65%);padding:12px}.topology-svg{width:100%;height:auto;display:block}.topology-wires{stroke:#743146;stroke-width:1.5;fill:none}.topology-node rect{fill:#130d13;stroke:#643044;stroke-width:1.2;transition:stroke .2s,fill .2s}.topology-node text{fill:#b99aaa;text-anchor:middle;font:12px Consolas,monospace}.topology-node .topology-subtext{font-size:10px;fill:#805565}.topology-node[role="button"]{cursor:pointer;outline:none}.topology-node[role="button"]:hover rect,.topology-node[aria-pressed="true"] rect,.topology-node:focus-visible rect{stroke:#ed5276;fill:#26111d;stroke-width:2}.topology-mobile{display:none}.cluster-selectors{display:flex;flex-wrap:wrap;gap:7px;margin:16px 0}.cluster-selectors button,.topology-mobile button{border:1px solid #472433;padding:8px 10px;background:#110d11;color:#9f7286;font:9px/1.5 Consolas,monospace;cursor:pointer}.cluster-selectors button[aria-pressed="true"],.topology-mobile button[aria-pressed="true"]{border-color:#c53b60;background:#25101a;color:#e1b3c5}.cluster-detail{padding:22px;background:#0e0c10;border:1px solid #482533}.cluster-detail h4{font:13px/1.6 Consolas,monospace;color:#d6a2b8;letter-spacing:.04em;margin:0 0 18px}.cluster-service-list{list-style:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;padding:0;margin:0}.cluster-service-list button{width:100%;display:flex;align-items:flex-start;gap:12px;text-align:left;border:1px solid #2d1e28;background:#110e13;padding:13px;cursor:pointer;color:#ab7d90}.cluster-service-list .archive-icon{width:28px;flex-shrink:0}.cluster-service-list button>span{min-width:0;flex:1}.cluster-service-list strong{display:block;font:11px/1.5 Consolas,monospace;color:#c6a5b4;margin-bottom:5px}.cluster-service-list button>span>span{display:block;font:11px/1.7 Arial,Helvetica,sans-serif;color:#8e7f87}.cluster-service-list b{font-size:12px;font-weight:400}.cluster-service-list button:hover{border-color:#98405f}.cluster-flow{max-width:470px;margin:24px auto 0}.gandiva-bridge{display:flex;align-items:center;gap:12px;margin-top:24px;flex-wrap:wrap}.gandiva-bridge>span{font:9px Consolas,monospace;color:#9c6b80}.gandiva-bridge i{height:1px;flex:1;min-width:24px;background:#a83d5b}.service-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:12px}.service-card{display:flex;flex-direction:column;align-items:flex-start;gap:10px;min-width:0;text-align:left;padding:16px;border:1px solid #3e2231;background:#110d13;color:#b8849a;cursor:pointer;transition:transform .2s,border-color .2s}.service-card:hover{transform:translateY(-3px);border-color:#b73d63}.service-card[aria-expanded="true"]{border-color:#d64b72;background:#1c1019}.service-icon{width:33px}.service-card strong{font:12px/1.5 Consolas,monospace;color:#d0afbf}.service-card>span:not(.service-icon){font:8px/1.5 Consolas,monospace;color:#896677;min-height:24px}.service-card small{font:8px Consolas,monospace;color:#86556b;border-top:1px solid #382130;padding-top:8px;width:100%}.service-detail{grid-column:1/-1;background:#180e17;border:1px solid #9b3459;padding:20px;animation:detail-enter .22s ease both}.service-close{float:right}.service-detail h4{font:18px/1.5 Consolas,monospace;color:#ddb3c7;margin:0 90px 18px 0}.service-detail dl{display:grid;grid-template-columns:90px minmax(0,1fr);gap:10px 18px;clear:both;font-size:12px;line-height:1.7}.service-detail dt{font:10px/1.7 Consolas,monospace;color:#b77896}.service-detail dd{margin:0;color:#beabb6;overflow-wrap:anywhere}
.arsenal-section{margin-top:32px;padding-top:26px;border-top:1px solid #592436}.project-filters{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0 12px}.project-filters button{font:10px/1.5 Consolas,monospace;color:#a1738a;background:#130e14;border:1px solid #4c273b;padding:8px 12px;cursor:pointer}.project-filters button[aria-pressed="true"]{color:#efc4d8;border-color:#cf416d;background:#291120}.arsenal-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;align-items:start}.arsenal-card{min-width:0;position:relative;overflow:hidden;border:1px solid #492536;background:#0f0c12;transition:transform .2s,border-color .2s}.arsenal-card.featured-project{border-color:#79304d;background:#140c13}.arsenal-card:hover{transform:translateY(-3px);border-color:#c23e65}.arsenal-card::after{content:"";position:absolute;inset:0 0 auto;height:1px;background:#d0396470;pointer-events:none;opacity:0}.arsenal-card:hover::after{animation:card-scan .45s ease 1}.arsenal-toggle{display:flex;flex-direction:column;align-items:flex-start;gap:11px;width:100%;padding:22px;text-align:left;border:0;background:transparent;color:inherit;cursor:pointer;min-width:0}.project-icon{width:45px;color:#b94368}.arsenal-toggle:hover .archive-icon{transform:translateY(-2px) rotate(-3deg)}.project-archive-id{font:8px Consolas,monospace;color:#765164;letter-spacing:.07em}.project-category{font:9px/1.5 Consolas,monospace;color:#b47190;letter-spacing:.04em}.arsenal-title{display:block;font:500 17px/1.35 Consolas,monospace;color:#ddbacd;overflow-wrap:anywhere}.arsenal-toggle .project-subtitle{font-size:11px;margin:0}.project-card-description{font-size:12px;line-height:1.8;color:#a3919e}.card-tech-tags{display:flex;flex-wrap:wrap;gap:5px}.card-tech-tags>span{font:8px/1.5 Consolas,monospace;color:#a97590;border:1px solid #4b263b;padding:4px 6px}.view-details-label{width:100%;display:flex;justify-content:space-between;border-top:1px solid #3e2032;padding-top:14px;margin-top:5px;color:#c083a1;font:9px/1.5 Consolas,monospace}.project-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;width:100%;margin:5px 0}.project-metrics>div,.project-metrics>span{display:flex;flex-direction:column;gap:5px;min-width:0}.project-metrics strong{font:18px/1.2 Consolas,monospace;color:#dfa2bd}.project-metrics span{font:8px/1.5 Consolas,monospace;color:#98768a}.project-metrics i{height:2px;background:linear-gradient(to right,#b53260 var(--metric),#35202d var(--metric));width:100%}.arsenal-card .project-detail{margin:0 20px 20px}.is-expanded{border-color:#d44674!important;animation:record-border-pulse .4s ease 1}.is-expanded .project-icon{animation:icon-activate .35s ease 1}.project-arrival{animation:record-border-pulse .5s ease 1}.project-arrival .academic-tags li{animation:tag-enter .15s calc(var(--tag-order)*.025s) ease both}.project-arrival .project-record-status i{animation:status-activate .35s ease both}.netra-radar{width:140px;height:140px;border:1px solid #7b3152;border-radius:50%;margin:24px auto;position:relative;background:repeating-radial-gradient(circle,transparent 0 20px,#6b2e452d 20px 21px)}.netra-radar i{position:absolute;left:50%;top:0;width:1px;height:50%;background:#d14675;transform-origin:center bottom;opacity:0}.netra-radar span,.netra-radar b{position:absolute;width:4px;height:4px;border-radius:50%;background:#d14675;left:28%;top:33%}.netra-radar b{left:65%;top:64%;background:#9b7d8d}.netra-radar.packet-active i{animation:radar-pass 1.8s linear 1}
.reveal-pending{opacity:0;transform:translateY(12px)}.is-revealed{opacity:1;transform:none}.reveal-enter{animation:detail-enter .45s ease both}.reveal-enter .arsenal-card{animation:archive-card-enter .32s calc(var(--card-order)*.045s) ease both}.reveal-enter .topology-wires path{stroke-dasharray:1800;stroke-dashoffset:1800;animation:topology-draw 1s ease forwards}
#education-modal .is-reconstructing .timeline-rail,.education-modal.is-reconstructing .timeline-rail{transform-origin:center top;animation:academic-draw 1.4s ease both}.education-modal.is-reconstructing .degree-msc{animation:academic-reveal .3s ease both}.education-modal.is-reconstructing .degree-msc .timeline-node{animation:status-activate .3s .2s ease both}.education-modal.is-reconstructing .connector-gandiva{animation:project-link .25s .3s ease both}.education-modal.is-reconstructing .gandiva-panel{animation:academic-reveal .3s .55s ease both}.education-modal.is-reconstructing .degree-btech{animation:academic-reveal .3s .95s ease both}.education-modal.is-reconstructing .degree-btech .timeline-node{animation:status-activate .3s 1.15s ease both}.education-modal.is-reconstructing .connector-trojan{animation:project-link .25s 1.25s ease both}.education-modal.is-reconstructing .trojan-panel{animation:academic-reveal .3s 1.5s ease both}.education-modal.is-reconstructing .cortex-panel{animation:none}
#education-modal button:focus-visible,#education-modal a:focus-visible{outline:2px solid #ed789b;outline-offset:3px}
@keyframes progression-pulse{0%{opacity:0;transform:translateX(0)}20%{opacity:.8}100%{opacity:0;transform:translateX(50px)}}@keyframes archive-packet{0%{opacity:0;offset-distance:0%}10%,85%{opacity:.85}100%{opacity:0;offset-distance:100%}}@keyframes detail-enter{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:none}}@keyframes record-border-pulse{50%{box-shadow:0 0 18px #c7245840;border-color:#ed567e}}@keyframes icon-activate{50%{transform:scale(1.08)}}@keyframes tag-enter{from{opacity:0;transform:translateY(3px)}to{opacity:1;transform:none}}@keyframes status-activate{0%{opacity:.25}60%{opacity:1;filter:drop-shadow(0 0 4px #e50914)}100%{opacity:1;filter:none}}@keyframes card-scan{0%{opacity:0;transform:translateY(0)}20%{opacity:.7}100%{opacity:0;transform:translateY(340px)}}@keyframes radar-pass{0%{opacity:0;transform:rotate(0)}15%,85%{opacity:.8}100%{opacity:0;transform:rotate(360deg)}}@keyframes archive-card-enter{from{opacity:0;transform:translateY(10px) scale(.985)}to{opacity:1;transform:none}}@keyframes topology-draw{to{stroke-dashoffset:0}}
@media(max-width:1000px){.arsenal-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.lab-concept-stats{grid-template-columns:repeat(2,minmax(0,1fr))}#education-modal .academic-timeline{column-gap:36px}.academic-project{padding:20px}.academic-project-heading{gap:10px}.academic-project-heading>[data-cyber-icon]{width:36px;flex-basis:36px}.academic-project h3{font-size:17px}.academic-project .academic-description{font-size:11px}.cluster-service-list{grid-template-columns:1fr}}
@media(max-width:640px){#education-modal .academic-timeline{display:flex;flex-direction:column;gap:18px;padding-left:22px}.degree-msc{order:1}.gandiva-panel{order:2}.degree-btech{order:3}.trojan-panel{order:4}#education-modal .academic-progression{font-size:8px;gap:9px;justify-content:flex-start}.progression-link{min-width:28px}.academic-project{padding:18px 14px}.academic-project-heading h3{font-size:16px}.academic-project .academic-description{font-size:12px}#education-modal .academic-card{min-height:290px}.project-controls{align-items:flex-start;flex-direction:column}.flow-diagram>svg{display:none}.flow-mobile{display:flex;flex-direction:column;list-style:none;padding:0;margin:0;gap:15px}.flow-mobile li{position:relative;text-align:center;border:1px solid #5e2b40;background:#160d14;padding:9px 7px;color:#c39bac;font:9px/1.7 Consolas,monospace}.flow-mobile li+li::before{content:'↓';position:absolute;bottom:100%;left:50%;height:16px;transform:translateX(-50%);color:#b13a5b}.packet-active .flow-mobile li{animation:status-activate .5s ease 1}.ml-diagram{margin:18px 0}#education-modal .cortex-panel{padding:20px 14px}.showcase-section-heading{gap:10px}.showcase-section-heading h3{font-size:19px}.archive-index{font-size:7px}.cortex-title-row{gap:12px}.cortex-title-row>[data-cyber-icon]{width:42px}.cortex-title-row h4{font-size:24px}.cortex-title-row .project-subtitle{font-size:9px}.lab-concept-stats li{font-size:8px;padding:10px 8px}.lab-tabs button{flex:1;padding:12px}.topology-container{display:none}.topology-mobile{display:block}.topology-mobile-core{display:flex;flex-direction:column;align-items:stretch;gap:6px;text-align:center;font:10px Consolas,monospace;color:#b68197;border:1px solid #462231;padding:16px}.topology-mobile-core>span{padding:5px}.cluster-selectors{display:grid;grid-template-columns:1fr}.cluster-selectors button{padding:12px;text-align:left}.cluster-detail{padding:16px 12px}.cluster-service-list button{padding:10px}.service-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.service-card{padding:12px 10px}.service-card strong{font-size:10px}.service-card>span:not(.service-icon){font-size:7px}.service-detail{padding:14px}.service-detail dl{grid-template-columns:1fr;gap:5px}.service-detail dd{margin-bottom:10px}.service-detail h4{font-size:16px}.arsenal-grid{grid-template-columns:1fr}.arsenal-toggle{padding:20px}.project-filters{gap:6px}.project-filters button{padding:8px 9px;font-size:9px}.gandiva-bridge{flex-direction:column;align-items:stretch}.gandiva-bridge i{height:18px;width:1px;min-width:1px;flex:auto;align-self:center}.arsenal-card .project-detail{margin:0 18px 18px}}
@media(prefers-reduced-motion:reduce){#education-modal .reveal-pending{opacity:1;transform:none}#education-modal .flow-packet{display:none}#education-modal .arsenal-card:hover,#education-modal .service-card:hover{transform:none}.progression-link i{display:none}}

/* Keep connectors aligned through the intermediate tablet breakpoint. */
@media(min-width:641px) and (max-width:1000px){#education-modal .timeline-node{right:-26px}#education-modal .degree-connector{width:19px}#education-modal .project-connector{width:18px}}
.flow-nodes text{font-size:12px}.ml-diagram .flow-nodes text{font-size:14px}
.is-expanded .detail-tags li{animation:tag-enter .18s calc(var(--tag-order)*.025s) ease both}.is-expanded .project-detail .flow-connectors path{stroke-dasharray:400;stroke-dashoffset:400;animation:diagram-link-draw .5s .08s ease forwards}.is-expanded .source-link{animation:detail-enter .2s .2s ease both}@keyframes diagram-link-draw{to{stroke-dashoffset:0}}

/* Six directory sections; project content remains in the academic archive. */
#profiles .grid{width:min(1170px,92vw);gap:30px}
#profiles .card{width:170px}
@media(max-width:1270px){#profiles .grid{width:min(570px,92vw)}}
@media(max-width:620px){#profiles .grid{width:min(370px,92vw);gap:20px}#profiles .card{width:calc((100% - 20px)/2)}}


/* Authentication and identity resolution share the original login container. */
.login-form{opacity:1;transition:opacity .2s}
.login-form[hidden],#identity-index[hidden]{display:none}
#login.identity-morph .login-form{opacity:0}
#login.identity-morph .login-box{transition:height .25s ease,border-color .3s,box-shadow .3s}
#login.identity-mode{overflow:auto;padding:16px 0}
#login.identity-mode .login-box{flex-shrink:0}
#login.identity-mode h1{font-size:clamp(26px,5vw,38px);margin:16px 0 22px;transition:font-size .25s,margin .25s}
#identity-index{position:relative;min-width:0;font-family:Consolas,monospace;animation:identity-reveal .25s ease-out}
.identity-eyebrow{font-size:11px;letter-spacing:.13em;color:#cf404b;margin-bottom:14px}
.operator-list{position:relative;isolation:isolate}
.operator-row{position:relative;display:grid;grid-template-columns:32px minmax(0,1fr);gap:8px;align-items:center;min-height:35px;padding:8px 12px;line-height:1.4;color:#989398;font-size:13px;transition:opacity .3s}
.operator-rank{color:#a44951;font-size:11px}
.operator-name{overflow-wrap:anywhere}
.operator-row.checking .operator-name{color:#fff;font-weight:700}
.operator-row.checking .operator-rank{color:#ffe3e6}
.operator-row.match .operator-name{color:#fff;font-weight:800}
.operator-selector{position:absolute;inset:0 0 auto;height:0;z-index:-1;pointer-events:none;border-radius:2px;background:#aa000f;box-shadow:0 0 15px #c500233a;transition:transform .22s cubic-bezier(.2,.75,.25,1),height .22s,background .2s}
.confirmed .operator-selector{background:#d1091c;box-shadow:0 0 20px #ed23336b}
.identity-confirmation{display:flex;flex-wrap:wrap;gap:6px 16px;font-size:9px;color:#8b8084;line-height:1.6;margin-top:14px}
.identity-confirmation[hidden]{visibility:hidden;display:flex}
.identity-confirmation b{color:#eee;font-weight:400}
#login.identity-mode .status{color:#e25864;font-size:11px;min-height:30px;line-height:1.5;margin:14px 0 0}
.identity-beam{display:none;position:absolute;inset:0 0 auto;height:1px;background:#ff687650;z-index:2;pointer-events:none}
.scanning .identity-beam{display:block;animation:identity-sweep 1.5s linear infinite}
.anomaly .operator-name{animation:identity-jolt .15s steps(2) 3}
.anomaly .operator-selector,.confirmed .operator-selector{animation:identity-bar-flash .1s steps(2) 3}
#login.identity-pulse .login-box{animation:identity-border .15s steps(2) 3}
.isolating .operator-row:not(.match){opacity:.15}
#login.identity-exit .login-box{transform:scale(.97);opacity:0;border-color:#420009;box-shadow:none;transition:transform .45s ease,opacity .45s,border-color .45s,box-shadow .45s}
#login.identity-exit #identity-index{opacity:0;transition:opacity .3s}
@keyframes identity-reveal{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}
@keyframes identity-sweep{from{top:0;opacity:0}20%,80%{opacity:.6}to{top:100%;opacity:0}}
@keyframes identity-jolt{25%{translate:-3px 0}75%{translate:3px 0}}
@keyframes identity-bar-flash{50%{background:#e82538}}
@keyframes identity-border{50%{border-color:#ff8995;box-shadow:0 0 24px #e5091470}}
@media(max-width:480px){
  #login.identity-mode .login-box{padding:24px 20px}
  #login.identity-mode h1{font-size:26px;margin:12px 0 18px}
  .operator-row{font-size:12px;padding:7px 9px;grid-template-columns:24px minmax(0,1fr);min-height:34px}
  .identity-eyebrow{font-size:9px}
  .identity-confirmation{font-size:8px;gap:4px 10px}
}
@media(max-height:650px){
  #login.identity-mode{place-items:safe center}
  #login.identity-mode .login-box{padding-top:18px;padding-bottom:18px}
  #login.identity-mode h1{font-size:25px;margin:10px 0 14px}
  .operator-row{padding-top:5px;padding-bottom:5px;min-height:29px}
  .identity-confirmation{margin-top:9px}
}
@media(prefers-reduced-motion:reduce){
  #login.identity-mode *,#login.identity-morph .login-box{animation:none!important;transition:none!important}
}

/* Experience is an independent overlay; the directory state is never reset. */
.experience-modal{position:fixed;inset:0;z-index:10000;display:grid;place-items:center;padding:68px 0 18px;background:#000a;backdrop-filter:blur(6px);font-family:Consolas,monospace;animation:experience-backdrop .35s ease-out}
.experience-modal[hidden],.experience-modal [hidden]{display:none!important}
#experience-back{position:absolute;top:18px;left:4vw;z-index:8;background:#0d080a;border:1px solid #76232b;padding:12px 16px;color:#ddd;font:11px Consolas,monospace;cursor:pointer}
.experience-modal button:focus-visible{outline:2px solid #ff6975;outline-offset:4px}
.experience-panel{width:min(84vw,1220px);max-height:calc(88dvh - 48px);overflow:auto;overscroll-behavior:contain;background:#080709;border:1px solid #8d202a;box-shadow:0 0 35px #a0001220;padding:32px;color:#c3bec1}
.experience-panel header{border-bottom:1px solid #43181e;padding-bottom:22px;margin-bottom:26px}
.experience-kicker,.experience-track-title{font-size:10px;letter-spacing:.14em;color:#c8515a}
.experience-panel h2{font-size:clamp(22px,3vw,35px);font-weight:500;margin:14px 0;overflow-wrap:anywhere}
.experience-header-meta{display:flex;flex-wrap:wrap;gap:12px 25px;font-size:10px;color:#979095}
.experience-career{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:26px;align-items:start}
.experience-employment{border-left:1px solid #8b2330;padding-left:20px}
.experience-parallel{border-left:1px dashed #64313a;padding-left:20px}
.experience-track-title{line-height:1.7;margin:0 0 20px}
.experience-overlap{font-size:11px;line-height:1.8;color:#9d8b91;padding:12px;border:1px dashed #44202a;margin:0 0 20px}
.experience-role{position:relative;border:1px solid #402029;background:#100b0e;padding:20px;min-width:0}
.experience-role:before{content:"";position:absolute;width:7px;height:7px;border:1px solid #ec4050;background:#100608;border-radius:50%;left:-25px;top:30px}
.experience-role-heading{display:flex;gap:13px;align-items:flex-start}
.experience-role-heading>svg{width:40px;height:40px;color:#da3847;flex-shrink:0}
.experience-role h3{font-size:15px;line-height:1.5;margin:0;color:#eee;font-weight:500;overflow-wrap:anywhere}
.experience-company{font-size:12px;line-height:1.7;margin:7px 0;color:#c4b5bc}
.experience-dates{font-size:11px;color:#d2606c;margin:5px 0 14px}
.experience-tags,.experience-tools{display:flex;flex-wrap:wrap;gap:6px}
.experience-tags span{font-size:8px;line-height:1.5;padding:4px 6px;border:1px solid #4e2029;color:#ba828a}
.experience-summary,.experience-details li{font-family:Arial,Helvetica,sans-serif;font-size:13px;line-height:1.8;color:#b5acb1}
.experience-toggle,.experience-replay{font:10px Consolas,monospace;color:#f07b86;padding:10px 0;background:none;border:0;border-bottom:1px solid #62212c;cursor:pointer;text-align:left}
.experience-toggle{width:100%;display:flex;justify-content:space-between;gap:12px}
.experience-toggle[aria-expanded="true"]{color:#fff}
.experience-details{padding-top:18px;animation:experience-reveal .25s ease-out}
.experience-groups{display:grid;gap:12px}
.experience-details h4{color:#d0838d;font-size:10px;letter-spacing:.06em;line-height:1.7;margin:14px 0 9px}
.experience-details ul{padding-left:17px;margin:0}
.experience-tools span{display:flex;align-items:center;gap:6px;font-size:10px;border:1px solid #55232d;padding:7px;line-height:1.4}
.experience-tools svg{width:19px;height:19px;color:#d34353;flex-shrink:0}
.experience-workflow{display:grid;gap:8px;border-left:1px solid #772430;padding-left:12px}
.experience-workflow button{position:relative;text-align:left;border:1px solid #3e2028;background:#0b080a;color:#b3979f;font:9px Consolas,monospace;padding:10px;cursor:pointer;transition:color .2s,border-color .2s}
.experience-workflow button:before{content:"";position:absolute;left:-16px;top:13px;border-radius:50%;width:6px;height:6px;background:#54212b}
.experience-workflow .signal-active{border-color:#df4455;color:white}
.experience-workflow .signal-active:before{background:#ff5369;box-shadow:0 0 9px #ed2333}
.experience-workflow-status{font-size:10px;min-height:28px;color:#ae7e89;line-height:1.6}
.experience-progression{position:relative;margin:20px 0;padding:10px 0;color:#dc5565;font-size:10px}
.experience-progression span{display:block;color:#8c777e;font-size:8px;line-height:1.7;margin-top:8px}
.experience-progression:before{content:"";position:absolute;left:-22px;top:0;width:3px;height:100%;background:#e73c52;transform-origin:top}
.experience-matrix{margin-top:28px;border-top:1px solid #51212a;padding-top:20px}
.experience-matrix h3{font-size:16px;font-weight:500;color:#eee}
.experience-matrix p{font-size:11px;line-height:1.8;color:#99868e}
.experience-matrix table{width:100%;border-collapse:collapse;table-layout:fixed;font-size:10px}
.experience-matrix th,.experience-matrix td{border-bottom:1px solid #311921;padding:10px 5px;overflow-wrap:anywhere}
.experience-matrix th{font-weight:400;text-align:left;line-height:1.6}
.experience-matrix th:first-child{width:34%}
.experience-matrix td{text-align:center}
.experience-matrix td button{background:none;border:0;color:#df5366;font-size:21px;cursor:pointer;min-width:32px;min-height:32px}
.experience-matrix td button[aria-pressed="true"]{background:#681426;color:white}
.experience-evolution{border-top:1px solid #391a22;margin-top:20px;padding-top:20px;font-size:10px;line-height:2;color:#baa5ad}
.experience-evolution span{color:#f0576b;padding:0 8px}
.experience-evolution p:last-child{color:#8a7a82}
.experience-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
#experience-stage{position:absolute;inset:0;pointer-events:none;perspective:1000px;overflow:hidden}
.experience-case{position:absolute;left:50%;top:50%;width:min(340px,76vw);height:200px;transform:translate(-50%,-50%);perspective:850px}
.experience-case-handle{position:absolute;width:94px;height:30px;left:calc(50% - 47px);top:-24px;border:7px solid #373338;border-bottom:0;border-radius:10px 10px 0 0}
.experience-case-lid{position:absolute;inset:0 0 42%;background:linear-gradient(160deg,#211b20,#080709);border:1px solid #9e2b3e;border-radius:7px 7px 0 0;transform-origin:bottom center;z-index:4;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:13px;backface-visibility:visible}
.experience-case-lid span{font-size:8px;letter-spacing:.16em;color:#b96574}
.experience-case-lid b{font-size:12px;letter-spacing:.1em;color:#c6bcc0}
.experience-case-lid small{font-size:8px;color:#6d5b62}
.experience-case-body{position:absolute;inset:58% 0 0;background:linear-gradient(#191117,#090709);border:1px solid #812637;border-radius:0 0 7px 7px;z-index:5;box-shadow:inset 0 5px 22px #9e122326;display:flex;justify-content:space-between;align-items:center;padding:25px;color:#72545f;font-size:9px}
.experience-case-body i{width:5px;height:5px;background:#e63350;box-shadow:0 0 8px #ed2333}
.experience-file{position:absolute;left:50%;top:50%;width:min(280px,68vw);height:190px;padding:20px;background:#100c10;border:1px solid #a12e40;transform:translate(-50%,-32%) scale(.65);opacity:0;z-index:3;display:flex;flex-direction:column;gap:20px}
.experience-file>span{background:#691324;padding:6px;font-size:7px;color:#e2aeb8;letter-spacing:.1em}
.experience-file strong{font-size:15px;line-height:1.5;font-weight:400;color:#e8dce1}
.experience-file small{font-size:7px;color:#977782}
.experience-file-lines{height:34px;background:repeating-linear-gradient(transparent 0 8px,#5e3542 9px 10px)}
.is-opening .experience-case{animation:experience-case-rise .8s cubic-bezier(.17,.8,.22,1) both,experience-case-away .4s 2.15s ease forwards}
.is-opening .experience-case-lid{animation:experience-lid .55s 1s ease-in-out forwards}
.is-opening .experience-file{animation:experience-file-rise .75s 1.5s ease-out both,experience-file-expand .5s 2.25s ease-in-out forwards}
.experience-modal.is-ready .experience-panel{animation:experience-reveal .35s ease-out both}
.experience-modal.is-ready header,.experience-modal.is-ready .experience-track-title,.experience-modal.is-ready .experience-role,.experience-modal.is-ready .experience-matrix{animation:experience-reveal .4s ease-out both}
.experience-modal.is-ready .experience-career{animation:experience-reveal .4s .1s both}
.experience-modal.is-ready #experience-analyst{animation-delay:.2s}
.experience-modal.is-ready .experience-progression:before{animation:experience-line .4s .3s both}
.experience-modal.is-ready #experience-pentester{animation-delay:.4s}
.experience-modal.is-ready .experience-parallel{animation:experience-reveal .4s .5s both}
.experience-modal.is-ready .experience-matrix{animation-delay:.6s}
.experience-modal.is-closing{opacity:0;backdrop-filter:blur(0);transition:opacity .25s,backdrop-filter .25s}
@keyframes experience-backdrop{from{background:#0000;backdrop-filter:blur(0)}}
@keyframes experience-case-rise{0%{translate:0 80vh;opacity:0}80%{translate:0 -7px;opacity:1}100%{translate:0 0;opacity:1}}
@keyframes experience-lid{to{transform:rotateX(-105deg);box-shadow:0 0 24px #d7143030}}
@keyframes experience-file-rise{0%{opacity:0;transform:translate(-50%,-15%) scale(.65) rotateX(12deg)}15%{opacity:1}70%{transform:translate(-50%,-100%) scale(.85) rotateX(0)}100%{opacity:1;transform:translate(-50%,-70%) scale(1)}}
@keyframes experience-case-away{to{opacity:0;scale:.9;filter:blur(6px)}}
@keyframes experience-file-expand{to{width:min(84vw,1220px);height:calc(88dvh - 48px);transform:translate(-50%,-50%);padding:32px;background:#080709}}
@keyframes experience-reveal{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@keyframes experience-line{from{scale:1 0}to{scale:1 1}}
@media(max-width:1000px){.experience-career{grid-template-columns:1fr}.experience-parallel{margin-top:8px}.experience-panel{width:90vw;padding:24px}}
@media(max-width:600px){.experience-panel{width:94vw;padding:18px 12px;max-height:calc(100dvh - 92px)}.experience-role{padding:15px 12px}.experience-role-heading>svg{width:30px;height:30px}.experience-role h3{font-size:13px}.experience-matrix table{font-size:8px}.experience-matrix th,.experience-matrix td{padding:7px 2px}.experience-matrix td button{min-width:26px}.experience-evolution span{display:block}.experience-case{height:180px}#experience-back{left:3vw}.experience-file strong{font-size:13px}}
@media(prefers-reduced-motion:reduce){.experience-modal,.experience-modal *{animation:none!important;transition:none!important}.experience-modal.is-ready .experience-panel{animation:experience-backdrop .35s ease-out!important}}

.experience-modal{--experience-target-width:min(84vw,1220px);--experience-target-height:calc(88dvh - 48px)}
.experience-case{z-index:4}
@keyframes experience-file-expand{to{width:var(--experience-target-width);height:var(--experience-target-height);top:calc(50% + 25px);transform:translate(-50%,-50%);padding:32px;background:#080709}}
.experience-chronology{margin:0 0 28px;padding:16px;border:1px solid #402029;background:#0e090c}
.experience-year-scale{display:flex;justify-content:space-between;color:#997782;font-size:9px;margin-bottom:12px}
.experience-lane{display:grid;grid-template-columns:repeat(54,minmax(0,1fr));gap:0;min-height:34px;margin:5px 0}
.experience-range{display:flex;align-items:center;justify-content:center;padding:7px 4px;text-align:center;font-size:8px;line-height:1.5;border:1px solid #763042;color:#c5a4af;background:#25111a;overflow-wrap:anywhere}
.analyst-range{grid-column:1/25}.pentest-range{grid-column:25/47;background:#421322;border-color:#b23950;color:#eac3ce}.consultant-range{grid-column:35/55;border-style:dashed;background:#190e14}
.experience-chronology>p{font-size:9px;color:#987981;line-height:1.7;margin-bottom:0}
@media(max-width:1000px){.experience-modal{--experience-target-width:90vw}}
@media(max-width:600px){.experience-modal{--experience-target-width:94vw;--experience-target-height:calc(100dvh - 92px)}.experience-chronology{padding:10px}.experience-range{font-size:7px}}
@keyframes experience-fade{from{opacity:0}to{opacity:1}}
@media(prefers-reduced-motion:reduce){.experience-modal.is-ready .experience-panel{animation:experience-fade .35s ease-out!important}}

/* Compact client disclosures are confined to the consultancy record. */
#experience-consultant .consultant-clients{margin:22px 0}
#experience-consultant .consultant-clients h5{font-size:9px;font-weight:400;letter-spacing:.08em;color:#c47787;line-height:1.7;margin:18px 0 10px}
#experience-consultant .consultant-coverage{border:1px solid #49212c;padding:10px;background:#170d13}
#experience-consultant .consultant-coverage h5{margin:0 0 8px}
#experience-consultant .consultant-coverage>div{display:flex;flex-wrap:wrap;gap:6px}
#experience-consultant .consultant-coverage span{font-size:8px;padding:4px 6px;border:1px solid #5c2635;color:#c39ca9}
#experience-consultant .consultant-client-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:10px}
#experience-consultant .consultant-client{position:relative;min-width:0;overflow:hidden;background:#0c080b;border:1px solid #49212d;transition:border-color .2s}
#experience-consultant .consultant-client summary{cursor:pointer;padding:14px;list-style:none;overflow-wrap:anywhere}
#experience-consultant .consultant-client summary::-webkit-details-marker{display:none}
#experience-consultant .consultant-client summary:focus-visible{outline:2px solid #ff6975;outline-offset:-3px}
#experience-consultant .consultant-client-name{display:block;font-size:12px;line-height:1.6;color:#cfb9c2;transition:color .2s}
#experience-consultant .consultant-client-category,#experience-consultant .consultant-client-hint{display:block;font-size:8px;line-height:1.7;color:#91747f;margin-top:6px}
#experience-consultant .consultant-client-hint{color:#cb647a}
#experience-consultant .consultant-client-hint>span{float:right}
#experience-consultant .consultant-client ul{display:flex;flex-wrap:wrap;gap:6px;list-style:none;margin:0;padding:0 14px 14px}
#experience-consultant .consultant-client li{font:10px/1.7 Arial,Helvetica,sans-serif;color:#bf9fac;background:#1d1018;border:1px solid #492330;padding:5px 7px;max-width:100%;overflow-wrap:anywhere}
#experience-consultant .consultant-client:hover,#experience-consultant .consultant-client:focus-within,#experience-consultant .consultant-client[open]{border-color:#a6334f}
#experience-consultant .consultant-client:hover .consultant-client-name,#experience-consultant .consultant-client:focus-within .consultant-client-name,#experience-consultant .consultant-client[open] .consultant-client-name{color:#fff}
#experience-consultant .consultant-client:after{content:"";position:absolute;left:0;right:0;top:0;height:1px;background:#ee516640;pointer-events:none;opacity:0}
#experience-consultant .consultant-client:hover:after,#experience-consultant .consultant-client:focus-within:after{animation:consultant-client-scan .5s ease-out}
#experience-consultant .consultant-client[open] ul{animation:experience-fade .25s ease-out}
@keyframes consultant-client-scan{0%{top:0;opacity:0}20%{opacity:1}100%{top:100%;opacity:0}}
@media(min-width:700px) and (max-width:1000px){#experience-consultant .consultant-client-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(prefers-reduced-motion:reduce){#experience-consultant .consultant-client:after{animation:none!important}}

/* Certification exhibition: isolated styles and native, on-demand PDF display. */
.certification-wall,.certificate-viewer{position:fixed;inset:0;z-index:10000;display:grid;place-items:center;background:#000a;backdrop-filter:blur(6px);font-family:Consolas,monospace;color:#dacbd0;padding:22px}
.certification-wall[hidden],.certificate-viewer[hidden]{display:none!important}
.certification-gallery{width:min(1320px,94vw);max-height:92dvh;overflow:auto;overscroll-behavior:contain;padding:28px 42px 45px;background:radial-gradient(ellipse at 50% 0,#67263235,transparent 65%),repeating-linear-gradient(92deg,#ffffff02 0 1px,transparent 1px 5px),#290d16;border:1px solid #652733;box-shadow:0 22px 85px #000b,inset 0 0 90px #10030670}
#certification-back,.certificate-viewer button,.certificate-viewer a{font:10px Consolas,monospace;border:1px solid #76404d;background:#180c11;color:#dcc4cc;padding:11px 13px;text-decoration:none;cursor:pointer}
.certification-gallery>header{position:relative;margin:28px 0 38px;border-bottom:1px solid #68313c;padding-bottom:22px}
.certification-kicker{font-size:10px;letter-spacing:.14em;color:#c796a0;line-height:1.6}
.certification-gallery h2{font-size:clamp(23px,3vw,36px);font-weight:400;letter-spacing:.05em;margin:12px 0 0}
.certification-count{display:block;font-size:10px;color:#b78391;margin-top:12px}
.certification-exhibits{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px 30px}
.certification-exhibit{min-width:0;position:relative;padding-top:17px}
.certificate-frame{position:relative;display:block;width:100%;border:9px solid #141215;outline:1px solid #633441;padding:0;background:#090709;box-shadow:0 10px 18px #0009,inset 0 0 0 1px #70535c;color:inherit;cursor:pointer;transform:rotate(var(--hanging-angle));transform-origin:50% -12px;transition:transform .25s,box-shadow .25s,outline-color .25s}
.certificate-hook{position:absolute;width:5px;height:7px;top:-28px;left:calc(50% - 2px);border-radius:50%;background:#99858b;box-shadow:0 1px 4px #000}
.certificate-hook:after{content:"";position:absolute;width:30px;height:17px;border-left:1px solid #76636b;border-right:1px solid #76636b;left:-13px;top:5px;clip-path:polygon(50% 0,100% 100%,0 100%);background:linear-gradient(60deg,transparent 47%,#76636b 49%,transparent 51%)}
.certificate-placeholder{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:9px;aspect-ratio:1.414;padding:15px;text-align:center;background:#e4ddd1;color:#332c30;border:5px double #82757b;font-family:Georgia,serif}
.certificate-placeholder>span:first-child{font-family:Arial,sans-serif;font-size:10px;letter-spacing:.14em}
.certificate-placeholder strong{font-size:clamp(24px,3vw,38px);font-weight:400}
.certificate-placeholder>span{font-size:12px;line-height:1.4}
.certificate-placeholder small{font:7px Consolas,monospace;letter-spacing:.06em;color:#756b70}
.certificate-view-label{position:absolute;bottom:0;left:0;right:0;padding:8px;background:#190910e8;color:#f1d3dc;font:9px Consolas,monospace;opacity:0;transition:opacity .2s}
.certificate-frame:hover,.certificate-frame:focus-visible{transform:translateY(-5px) rotate(0deg);outline-color:#cf677e;box-shadow:0 16px 26px #000b}
.certificate-frame:hover .certificate-view-label,.certificate-frame:focus-visible .certificate-view-label{opacity:1}
.certificate-plaque{position:relative;overflow:hidden;background:linear-gradient(125deg,#1b1318,#100c0f);border:1px solid #61303e;box-shadow:0 5px 12px #0005;padding:17px;margin:18px 0 0;transition:border-color .2s,background .2s}
.certificate-plaque h3{margin:0;line-height:1.55;font-weight:400}
.certificate-plaque h3>span:first-child{display:block;color:#edb5c4;font-size:18px;margin-bottom:4px}
.certificate-plaque h3>span:last-child{display:block;color:#d5c6ce;font-size:12px}
.certificate-issuer{color:#92717e;font-size:9px;text-transform:uppercase;letter-spacing:.12em}
.certificate-plaque dl{display:grid;gap:10px;margin:16px 0}
.certificate-plaque dt,.certificate-viewer dt{font-size:8px;color:#b98697;letter-spacing:.07em}
.certificate-plaque dd,.certificate-viewer dd{font-size:10px;line-height:1.7;color:#cfb8c2;margin:3px 0 0;overflow-wrap:anywhere}
.certificate-description{font:12px/1.65 Arial,Helvetica,sans-serif;color:#ad9ba5;margin:14px 0 0}
.certification-exhibit:hover .certificate-plaque,.certification-exhibit:focus-within .certificate-plaque{border-color:#aa556d;background:#21141b}
.certificate-plaque:after{content:"";position:absolute;inset:0 0 auto;height:1px;background:#dc8ca23b;opacity:0;pointer-events:none}
.certification-exhibit:hover .certificate-plaque:after,.certification-exhibit:focus-within .certificate-plaque:after{animation:certificate-plaque-scan .5s ease-out}
.gallery-enter .certification-gallery{animation:certificate-wall-rise .4s ease-out both}
.gallery-enter .certification-gallery>header{animation:certificate-wall-rise .35s .15s both}
.gallery-enter .certification-exhibit{animation:certificate-hang .65s var(--arrival-delay) ease-out both;transform-origin:50% 0}
.viewer-open .certification-gallery{filter:blur(5px) brightness(.55)}
.certificate-viewer{z-index:10020;background:#000c;backdrop-filter:blur(6px)}
.certificate-viewer-panel{width:94vw;height:88dvh;display:flex;flex-direction:column;background:#100b0f;border:1px solid #764050;box-shadow:0 15px 65px #000b;min-width:0}
.certificate-viewer-panel>header{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:14px 18px;flex-shrink:0;border-bottom:1px solid #482331}
.certificate-viewer h2{font-size:14px;line-height:1.5;font-weight:400;margin:0;overflow-wrap:anywhere}
.certificate-viewer-panel>header>div{display:flex;gap:8px;flex-shrink:0}
.certificate-document{flex:1;min-height:0;background:#242124;overflow:hidden}
.certificate-document object{display:block;width:100%;height:100%;border:0}
.certificate-pdf-fallback{font-size:13px;line-height:1.8;padding:24px;color:#c9b8c0}
#certificate-viewer-meta{display:flex;flex-wrap:wrap;gap:10px 30px;margin:0;padding:12px 18px;flex-shrink:0}
.certification-wall button:focus-visible,.certificate-viewer button:focus-visible,.certificate-viewer a:focus-visible{outline:2px solid #ff7b99;outline-offset:4px}
@keyframes certificate-wall-rise{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}
@keyframes certificate-hang{0%{opacity:0;transform:translateY(-22px) rotate(-2deg)}45%{opacity:1;transform:translateY(0) rotate(1deg)}75%{transform:rotate(-.5deg)}100%{opacity:1;transform:rotate(0)}}
@keyframes certificate-plaque-scan{0%{top:0;opacity:0}20%{opacity:1}100%{top:100%;opacity:0}}
@media(max-width:1150px){.certification-exhibits{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.certification-wall{padding:10px}.certification-gallery{width:96vw;max-height:96dvh;padding:22px 20px 30px}.certification-exhibits{grid-template-columns:minmax(0,1fr);gap:30px}.certificate-placeholder{gap:12px}.certificate-placeholder strong{font-size:36px}.certificate-view-label{opacity:1}.certificate-viewer{padding:6px}.certificate-viewer-panel{width:98vw;height:94dvh}.certificate-viewer-panel>header{flex-direction:column;align-items:stretch;padding:12px}.certificate-viewer-panel>header>div{justify-content:space-between}.certificate-viewer h2{font-size:12px}#certificate-viewer-meta{gap:8px 16px;padding:10px 12px}}
@media(prefers-reduced-motion:reduce){.certification-wall *{animation:none!important;transition:none!important}.gallery-enter .certification-gallery{animation:experience-fade .35s ease-out!important}}

/* Physical exhibition treatment; viewer and credential content stay untouched. */
#certification-wall .brick-surface{
  position:relative;isolation:isolate;width:min(1360px,96vw);padding:32px 48px 50px;
  background-color:#2b0b12;
  background-image:radial-gradient(ellipse at 50% 30%,#0000 15%,#060104b3 100%),repeating-linear-gradient(107deg,#edb5b502 0 1px,transparent 1px 5px),var(--brick-pattern);
  background-size:auto,7px 9px,240px 96px;
  border:1px solid #632230;box-shadow:0 0 60px #5a000a26,0 20px 60px #000b,inset 0 0 85px #08010470;
}
.wall-cracks{position:absolute;inset:0;width:100%;height:100%;min-height:1350px;z-index:-1;pointer-events:none;opacity:.75}
.wall-cracks path{stroke:#060103b3;stroke-width:1.6;filter:drop-shadow(1px 0 0 #8a364326)}
#certification-wall .certification-gallery>header{background:none;border-color:#6b2c394d;text-shadow:0 2px 3px #0009;margin-bottom:34px}
#certification-wall #certification-back{background:linear-gradient(#292126,#110d10);border-color:#65414b;box-shadow:inset 0 1px #a7949a24,0 3px 6px #0008;color:#c9b7bf}
#certification-wall .certification-exhibits{--gallery-gap:72px;column-gap:var(--gallery-gap);row-gap:116px;position:relative}
#certification-wall .certification-exhibit{padding-top:0;display:flex;flex-direction:column;min-width:0}
#certification-wall.gallery-enter .certification-exhibit{animation:none;transform:none}
.cert-display{position:relative;display:flex;flex-direction:column;align-items:center;padding-top:60px;padding-bottom:35px;isolation:isolate}
.cert-display:before{content:"";position:absolute;inset:30px -8% 15px;background:radial-gradient(ellipse at 50% 45%,#ffdbd017,transparent 65%);z-index:-1;pointer-events:none}
#certification-wall .certificate-frame{width:78%;max-width:290px;margin:0 auto;box-sizing:border-box;border:8px solid #100e11;outline:1px solid #6d3948;box-shadow:inset 0 1px 1px #b9aab538,0 10px 25px #0008,0 0 0 3px #292329,0 0 0 4px #160b10;z-index:2}
#certification-wall .certificate-placeholder{padding:10px;gap:6px;border:3px double #82757b;aspect-ratio:1.414;overflow:hidden}
#certification-wall .certificate-placeholder strong{font-size:28px}
#certification-wall .certificate-placeholder>span{font-size:10px}
#certification-wall .certificate-placeholder>span:first-child{font-size:8px}
#certification-wall .certificate-placeholder small{font-size:6px}
#certification-wall .certificate-hook{top:-26px;width:5px;height:6px;background:linear-gradient(#76676d,#292328);box-shadow:1px 2px 2px #0009}
#certification-wall .certificate-hook:after{background:none;clip-path:none;width:25px;height:17px;left:-10px;top:5px;border:0;border-left:1px solid #b4b4b459;border-right:1px solid #b4b4b459;transform:perspective(20px) rotateX(24deg);box-shadow:1px 1px 1px #0003}
.gallery-light{position:absolute;top:5px;width:78%;max-width:290px;height:calc(100% - 40px);z-index:1;pointer-events:none}
.light-fixture{position:absolute;top:0;left:calc(50% - 21px);width:42px;height:13px;border:1px solid #383038;border-radius:3px;background:linear-gradient(#322c32,#0c0a0d 70%);box-shadow:0 3px 4px #000b,inset 0 1px #81707b26}
.light-fixture:before{content:"";position:absolute;left:17px;top:-9px;width:7px;height:8px;background:#171216;border:1px solid #35212a}
.light-fixture:after{content:"";position:absolute;bottom:0;left:5px;right:5px;height:2px;background:#b38c844d}
.light-beam{position:absolute;top:11px;left:-18%;width:136%;height:100%;clip-path:polygon(48% 0,52% 0,100% 100%,0 100%);background:linear-gradient(#ffe1d71f,#ffddd314 35%,#ff505a08 75%,transparent);filter:blur(8px);opacity:.8;transform-origin:50% 0;transition:opacity .25s,transform .25s}
#certification-wall .certification-exhibit:hover .light-beam,#certification-wall .certification-exhibit:focus-within .light-beam{opacity:.96;transform:scaleX(.94)}
#certification-wall .certificate-frame:hover,#certification-wall .certificate-frame:focus-visible{transform:translateY(-4px) rotate(0deg);box-shadow:inset 0 1px #b9aab538,0 15px 30px #000a,0 0 0 3px #30242c,0 0 0 4px #572735}
.row-shelf{position:relative;width:calc(100% + var(--gallery-gap));height:16px;flex-shrink:0;z-index:3;pointer-events:none;margin:0 0 24px}
.shelf-top{position:absolute;left:0;right:0;top:-15px;height:16px;background:linear-gradient(#20171c,#35212b);transform:skewX(-18deg);transform-origin:bottom;box-shadow:inset 0 1px #9b64732b}
.shelf-front{position:absolute;inset:0;background:linear-gradient(#211419,#110d10);border-top:1px solid #702438;border-bottom:1px solid #080608;box-shadow:0 14px 20px #0009}
#certification-wall .certification-exhibit:nth-child(3n) .row-shelf{width:100%}
#certification-wall .certificate-plaque{width:94%;align-self:center;margin:0;padding:15px;background:#100a0dcc;border:1px solid #592432b3;box-shadow:0 3px 6px #0005;flex:1}
#certification-wall .certificate-plaque h3>span:first-child{font-size:16px}
#certification-wall .certificate-plaque h3>span:last-child{font-size:11px}
#certification-wall .certificate-description{font-size:11px;line-height:1.65}
#certification-wall .certification-exhibit:hover .certificate-plaque,#certification-wall .certification-exhibit:focus-within .certificate-plaque{background:#1c1016e6;border-color:#8b3e54}
#certification-wall.gallery-enter .gallery-light{animation:gallery-light-on .3s calc(var(--arrival-delay) - 180ms) both}
#certification-wall.gallery-enter .certificate-frame{animation:gallery-frame-settle .65s var(--arrival-delay) both}
@keyframes gallery-light-on{from{opacity:0}to{opacity:1}}
@keyframes gallery-frame-settle{0%{opacity:0;translate:0 -22px;rotate:-2deg}45%{opacity:1;translate:0 0;rotate:1deg}75%{rotate:-.5deg}100%{opacity:1;translate:0 0;rotate:0deg}}
@media(max-width:1150px){
  #certification-wall .certification-exhibits{--gallery-gap:64px;row-gap:108px}
  #certification-wall .certification-exhibit:nth-child(3n) .row-shelf{width:calc(100% + var(--gallery-gap))}
  #certification-wall .certification-exhibit:nth-child(2n) .row-shelf{width:100%}
}
@media(max-width:650px){
  #certification-wall .brick-surface{width:96vw;padding:24px 22px 35px}
  #certification-wall .certification-exhibits{--gallery-gap:0px;row-gap:84px}
  #certification-wall .certification-exhibit .row-shelf{width:100%}
  #certification-wall .certificate-frame,.gallery-light{width:86%;max-width:290px}
  #certification-wall .certificate-plaque{width:96%}
  #certification-wall .certificate-placeholder strong{font-size:26px}
}
@media(prefers-reduced-motion:reduce){
  #certification-wall.gallery-enter .certification-gallery,#certification-wall.gallery-enter .gallery-light,#certification-wall.gallery-enter .certificate-frame{animation:none!important}
}

#certification-wall .brick-surface{--brick-pattern:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22240%22%20height%3D%2296%22%20viewBox%3D%220%200%20240%2096%22%3E%3Cdefs%3E%3ClinearGradient%20id%3D%22brick%22%20x2%3D%220%22%20y2%3D%221%22%3E%3Cstop%20stop-color%3D%22%2345212a%22%2F%3E%3Cstop%20offset%3D%22.05%22%20stop-color%3D%22%23331018%22%2F%3E%3Cstop%20offset%3D%22.85%22%20stop-color%3D%22%232b0b12%22%2F%3E%3Cstop%20offset%3D%221%22%20stop-color%3D%22%2319060c%22%2F%3E%3C%2FlinearGradient%3E%3C%2Fdefs%3E%3Cpath%20fill%3D%22%23100307%22%20d%3D%22M0%200h240v96H0z%22%2F%3E%3Cg%20fill%3D%22url(%23brick)%22%3E%3Crect%20x%3D%221%22%20y%3D%221%22%20width%3D%22117%22%20height%3D%2244%22%20rx%3D%221%22%2F%3E%3Crect%20x%3D%22121%22%20y%3D%221%22%20width%3D%22117%22%20height%3D%2244%22%20rx%3D%221%22%2F%3E%3Crect%20x%3D%22-59%22%20y%3D%2249%22%20width%3D%22117%22%20height%3D%2244%22%20rx%3D%221%22%2F%3E%3Crect%20x%3D%2261%22%20y%3D%2249%22%20width%3D%22117%22%20height%3D%2244%22%20rx%3D%221%22%2F%3E%3Crect%20x%3D%22181%22%20y%3D%2249%22%20width%3D%22117%22%20height%3D%2244%22%20rx%3D%221%22%2F%3E%3C%2Fg%3E%3Cpath%20fill%3D%22%235d283712%22%20d%3D%22M3%203h113v39H3zM63%2051h113v39H63z%22%2F%3E%3C%2Fsvg%3E")}

/* Authentic PDF page previews, contained inside the unchanged frame dimensions. */
#certification-wall .certificate-thumbnail-mat{position:relative;display:block;width:100%;aspect-ratio:1.414;padding:8px;background:#0a0a0a}
#certification-wall .certificate-thumbnail{display:block;width:100%;height:100%;object-fit:contain;transition:filter .25s;background:#0a0a0a}
#certification-wall .certificate-thumbnail[hidden],#certification-wall .certificate-thumbnail-fallback[hidden]{display:none!important}
#certification-wall .certificate-thumbnail-fallback{position:absolute;inset:8px;display:grid;place-items:center;padding:14px;background:#0a0a0a;color:#b5a5ad;font:10px/1.7 Consolas,monospace;text-align:center}
#certification-wall .certificate-frame:hover .certificate-thumbnail,#certification-wall .certificate-frame:focus-visible .certificate-thumbnail{filter:brightness(1.04)}

/* Recognition vault: independent modal, decorative entrance, and record archive. */
.achievements-modal,.achievement-evidence{position:fixed;inset:0;z-index:10000;display:grid;place-items:center;padding:70px 0 20px;background:#000a;backdrop-filter:blur(6px);font-family:Consolas,monospace;color:#c9bdc3;animation:achievement-backdrop .4s ease-out}
.achievements-modal[hidden],.achievements-modal [hidden],.achievement-evidence[hidden],.achievement-evidence [hidden]{display:none!important}
#achievements-back,.achievement-evidence button{background:#130b10;border:1px solid #75273b;color:#d6c3cb;padding:12px 15px;font:10px Consolas,monospace;cursor:pointer}
#achievements-back{position:absolute;top:18px;left:4vw;z-index:10}
.achievements-modal button:focus-visible,.achievement-evidence button:focus-visible{outline:2px solid #ff6789;outline-offset:4px}
.achievements-panel{width:min(84vw,1250px);height:calc(86dvh - 40px);overflow:auto;overscroll-behavior:contain;background:#09070a;border:1px solid #86233b;box-shadow:0 0 36px #a2112925;padding:32px}
.achievements-panel>header{border-bottom:1px solid #45212d;padding-bottom:22px}
.achievement-kicker,.achievement-header-status{display:block;font-size:10px;letter-spacing:.12em;color:#c3667e;line-height:1.7}
.achievements-panel h2{font-size:clamp(24px,3.3vw,38px);font-weight:400;color:#eee;margin:14px 0}
.achievement-note{font:11px/1.7 Arial,sans-serif;color:#897980;max-width:660px;margin:12px 0 0}
.achievement-summary{display:flex;flex-wrap:wrap;gap:8px 20px;margin:22px 0;font-size:9px;color:#9c7d8a}
.achievement-summary span{border-left:2px solid #92304a;padding-left:9px;line-height:1.6}
.achievement-filters{display:flex;flex-wrap:wrap;gap:8px;margin:24px 0 30px}
.achievement-filters button,.achievement-evidence-button{background:#160c12;border:1px solid #582236;color:#bc8fa0;padding:10px 13px;font:10px Consolas,monospace;cursor:pointer}
.achievement-filters button[aria-pressed="true"]{background:#60172f;color:white;border-color:#c44266}
.achievement-group{margin-bottom:34px}
.achievement-group>h3{font-size:12px;font-weight:400;letter-spacing:.1em;color:#c7758b;line-height:1.7;margin-bottom:17px}
.achievement-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.achievement-group[data-achievement-group="outreach"] .achievement-grid{grid-template-columns:minmax(0,1fr)}
.achievement-card{position:relative;overflow:hidden;min-width:0;padding:23px 20px 52px;border:1px solid #522134;background:linear-gradient(150deg,#170d14,#0d0a0e);transition:opacity .25s,transform .25s}
.achievement-record-id{font-size:9px;color:#925a70;letter-spacing:.08em;margin-bottom:20px}
.achievement-card-heading{display:flex;gap:12px;align-items:flex-start}
.achievement-card-heading svg{width:35px;height:35px;color:#d84266;flex-shrink:0}
.achievement-category{font-size:8px;color:#a7788a;line-height:1.7;display:block}
.achievement-card h4{font-size:15px;line-height:1.5;font-weight:500;color:#e7dbe2;margin:9px 0 0;overflow-wrap:anywhere}
.achievement-badge{display:inline-block;font-size:11px;color:#f2bbcc;border:1px solid #8c2947;padding:9px 11px;margin-top:20px;background:#391020;line-height:1.6}
.achievement-body{font:13px/1.85 Arial,sans-serif;color:#b9a9b2;margin:18px 0}
.achievement-stamp{position:absolute;bottom:18px;left:20px;border:1px solid #6e3045;padding:5px 7px;color:#a36b7f;font-size:8px;letter-spacing:.08em}
.achievement-snapshot,.achievement-participant{font-size:10px;line-height:1.8;color:#ac8293}
.achievement-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 10px;border-top:1px solid #482032;padding-top:17px}
.achievement-stats dt{font-size:8px;line-height:1.7;color:#b47e95}
.achievement-stats dd{font-size:clamp(21px,2.5vw,30px);margin:6px 0;color:#f0dce5}
.achievement-streak{font-size:9px;color:#77636d}
.achievement-institutions{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:22px 0 10px}
.achievement-institutions span{border:1px solid #522435;background:#150d13;padding:17px;font-size:11px;line-height:1.8;color:#c8a5b4}
.achievement-card h5{font-size:9px;color:#a26e83;font-weight:400;margin:22px 0 10px}
.achievement-clients{padding-left:16px;font:11px/1.9 Arial,sans-serif;color:#a58b98}
.achievement-evidence-button{margin:10px 0}
.achievement-pending{opacity:0;transform:translateY(12px)}
.achievement-revealed{opacity:1;transform:none}
.achievement-reveal{animation:achievement-record-reveal .45s ease-out}
.achievement-reveal .achievement-stamp{animation:achievement-stamp .45s .15s both}
.achievement-reveal .achievement-stats dd{animation:achievement-digits .6s ease-out both}
.achievement-reveal .achievement-badge{animation:achievement-stamp .5s ease-out}
.achievement-reveal:after{content:"";position:absolute;left:0;right:0;height:1px;top:0;background:#df55763b;pointer-events:none;animation:achievement-scan .6s ease-out both}
#achievement-records{transition:opacity .2s,transform .2s}
#achievement-records.achievement-filtering{opacity:0;transform:translateY(4px) scale(.995)}
.achievements-ready .achievements-panel{animation:achievement-record-reveal .35s ease-out}
.achievements-closing{opacity:0;transition:opacity .25s}
.achievement-evidence{z-index:10030;padding:18px;background:#000d}
.achievement-evidence-panel{width:min(94vw,1400px);height:90dvh;display:flex;flex-direction:column;background:#100a0e;border:1px solid #72223d}
.achievement-evidence-panel header{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:14px;border-bottom:1px solid #482033}
.achievement-evidence-panel h2{font-size:14px;line-height:1.6;font-weight:400;margin:0}
.achievement-evidence-panel img{display:block;width:100%;height:100%;min-height:0;object-fit:contain;flex:1;padding:16px}
#achievement-evidence-error{padding:24px;font-size:12px;color:#be94a5}
#recognition-stage{position:absolute;inset:0;overflow:hidden;pointer-events:none;--vault-size:min(340px,65vw,55dvh)}
.recognition-scanner,.recognition-vault,.recognition-symbols{position:absolute;left:50%;top:46%;width:var(--vault-size);height:var(--vault-size);transform:translate(-50%,-50%)}
.recognition-scanner{color:#9c2543;opacity:0}
.recognition-scanner svg{width:100%;height:100%;stroke:currentColor;stroke-width:1.1}
.recognition-scanner>span{position:absolute;top:100%;left:0;width:100%;text-align:center;font-size:8px;color:#9f5b72;letter-spacing:.1em}
.scanner-outer,.scanner-inner,.vault-ring,.vault-inner{transform-origin:120px 120px}
.recognition-symbols{width:calc(var(--vault-size) * 1.5);height:calc(var(--vault-size) * 1.5)}
.recognition-symbols>span{position:absolute;left:calc(50% + var(--symbol-x));top:calc(50% + var(--symbol-y));width:30px;height:30px;margin:-15px;color:#d3466b;opacity:0}
.recognition-symbols svg{width:100%;height:100%}
.recognition-vault{opacity:0;perspective:800px}
.vault-depth{position:absolute;inset:5%;border-radius:50%;background:radial-gradient(#411127,#150811 58%,#060407);box-shadow:0 0 22px #a51d3f20}
.vault-door{position:absolute;inset:0;background:radial-gradient(circle,#272129,#0d0a10 67%,#45182c 68%,#130d16 72%);border:1px solid #90304d;border-radius:50%;box-shadow:inset 0 0 18px #000a}
.vault-left{clip-path:polygon(0 0,50% 0,50% 100%,0 100%)}
.vault-right{clip-path:polygon(50% 0,100% 0,100% 100%,50% 100%)}
.vault-lock{position:absolute;inset:5%;color:#94324f}
.vault-lock svg{width:100%;height:100%;stroke:currentColor;stroke-width:1.4}
.vault-markers circle{fill:#791936;stroke:none}
.vault-categories{position:absolute;inset:15%;display:flex;flex-direction:column;align-items:center;justify-content:space-between;font-size:7px;letter-spacing:.1em;color:#b97a93}
.recognition-burst{position:absolute;left:50%;top:46%;width:0;height:0}
.recognition-burst>span{position:absolute;left:-83px;top:-53px;width:166px;height:106px;padding:20px 12px;border:1px solid #9d3154;background:#160b15;color:#c695a9;font-size:9px;line-height:1.7;box-shadow:0 5px 15px #0008;opacity:0}
.recognition-master{position:absolute;left:50%;top:46%;width:min(310px,74vw);height:200px;transform:translate(-50%,-50%);border:1px solid #a43759;background:#0e0810;padding:25px;display:flex;flex-direction:column;justify-content:center;gap:20px;opacity:0}
.recognition-master span{font-size:8px;line-height:1.7;letter-spacing:.06em;color:#a96b85}
.recognition-master strong{font-size:21px;line-height:1.5;font-weight:400;color:#e4cbd7}
.recognition-master i{height:1px;background:#7e2646;width:65%}
#recognition-status{position:absolute;top:calc(46% + var(--vault-size) / 2 + 42px);left:5%;width:90%;text-align:center;color:#c4577b;font-size:10px;line-height:1.8;letter-spacing:.08em}
.vault-enter .recognition-scanner{animation:recognition-scanner .9s ease both}
.vault-enter .scanner-outer{animation:recognition-ring .7s ease-out both}
.vault-enter .scanner-inner{animation:recognition-ring .7s reverse ease-out both}
.vault-enter .scanner-line{animation:recognition-line .65s ease-out both}
.vault-enter .recognition-symbols>span{animation:recognition-symbol .16s var(--symbol-delay) both}
.vault-enter .recognition-vault{animation:recognition-vault-appear .35s .75s both,recognition-vault-away .5s 2.25s forwards}
.vault-enter .vault-ring{animation:recognition-lock .85s .9s both}
.vault-enter .vault-inner{animation:recognition-lock .85s .9s reverse both}
.vault-enter .vault-markers circle{animation:recognition-verified .15s 1.05s both}
.vault-enter .vault-markers circle:nth-child(2){animation-delay:1.18s}
.vault-enter .vault-markers circle:nth-child(3){animation-delay:1.31s}
.vault-enter .vault-markers circle:nth-child(4){animation-delay:1.44s}
.vault-enter .vault-markers circle:nth-child(5){animation-delay:1.57s}
.vault-enter .vault-left{animation:recognition-door-left .6s 1.8s both}
.vault-enter .vault-right{animation:recognition-door-right .6s 1.8s both}
.vault-enter .vault-lock{animation:recognition-lock-away .3s 1.8s forwards}
.vault-enter .recognition-burst>span{animation:recognition-burst .65s 2.3s both}
.vault-enter .recognition-master{animation:recognition-master .55s 2.85s both}
@keyframes achievement-backdrop{from{background:#0000;backdrop-filter:blur(0)}}
@keyframes achievement-record-reveal{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
@keyframes achievement-stamp{from{opacity:0;transform:scale(.93)}to{opacity:1;transform:scale(1)}}
@keyframes achievement-digits{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}
@keyframes achievement-scan{0%{top:0;opacity:0}15%{opacity:1}100%{top:100%;opacity:0}}
@keyframes recognition-scanner{0%{opacity:0;transform:translate(-50%,-50%) scale(.5)}35%,78%{opacity:1;transform:translate(-50%,-50%) scale(1)}100%{opacity:0;transform:translate(-50%,-50%) scale(.85)}}
@keyframes recognition-ring{from{rotate:0deg}to{rotate:70deg}}
@keyframes recognition-line{from{translate:0 -65px;opacity:0}20%,80%{opacity:1}to{translate:0 65px;opacity:0}}
@keyframes recognition-symbol{0%,100%{opacity:0;scale:.8}30%,70%{opacity:.8;scale:1}}
@keyframes recognition-vault-appear{from{opacity:0;scale:.85}to{opacity:1;scale:1}}
@keyframes recognition-lock{from{rotate:0deg}to{rotate:42deg}}
@keyframes recognition-verified{from{fill:#791936}to{fill:#eee1e8}}
@keyframes recognition-door-left{to{transform:translateX(-45%) rotateY(-18deg);opacity:0}}
@keyframes recognition-door-right{to{transform:translateX(45%) rotateY(18deg);opacity:0}}
@keyframes recognition-lock-away{to{opacity:0;scale:.85}}
@keyframes recognition-vault-away{to{opacity:0}}
@keyframes recognition-burst{0%{opacity:0;transform:scale(.4)}25%,65%{opacity:1;transform:translate(var(--fan-x),var(--fan-y)) rotate(var(--fan-angle)) scale(1)}100%{opacity:0;transform:translate(0,0) rotate(0) scale(.9)}}
@keyframes recognition-master{0%{opacity:0;scale:.85}20%{opacity:1;scale:1}100%{opacity:1;width:var(--achievement-width);height:var(--achievement-height);top:calc(50% + 25px);scale:1}}
@media(max-width:1050px){.achievement-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.achievement-institutions{grid-template-columns:repeat(2,minmax(0,1fr))}.achievements-panel{width:90vw;padding:25px}}
@media(max-width:650px){.achievements-panel{width:94vw;height:calc(100dvh - 94px);padding:20px 14px}.achievement-grid{grid-template-columns:minmax(0,1fr)}.achievement-institutions{grid-template-columns:minmax(0,1fr)}.achievement-card{padding:20px 17px 50px}.achievement-filters button{font-size:9px;padding:9px 10px}.recognition-symbols{width:calc(var(--vault-size) * 1.35);height:calc(var(--vault-size) * 1.35)}.recognition-symbols>span{width:23px;height:23px}.vault-categories{font-size:5px}.recognition-burst>span{width:126px;left:-63px;font-size:8px}.achievement-evidence-panel header{align-items:flex-start}.achievement-evidence-panel h2{font-size:11px}.achievement-evidence button{flex-shrink:0}.achievement-evidence-panel img{padding:6px}}
@media(prefers-reduced-motion:reduce){.achievements-modal,.achievements-modal *,.achievement-evidence *{animation:none!important;transition:none!important}.achievement-pending{opacity:1;transform:none}.achievements-ready .achievements-panel{animation:experience-fade .35s ease-out!important}}

.achievements-modal{--achievement-width:min(84vw,1250px);--achievement-height:calc(86dvh - 40px)}
@media(max-width:1050px){.achievements-modal{--achievement-width:90vw}}
@media(max-width:650px){.achievements-modal{--achievement-width:94vw;--achievement-height:calc(100dvh - 94px)}}

.vault-enter .vault-lock svg>circle:last-of-type{animation:recognition-core-pulse .25s 1.6s both}
@keyframes recognition-core-pulse{0%,100%{stroke:#94324f}50%{stroke:#f1dce6;stroke-width:2.5}}

/* Socials: isolated contact overlay and layered network-resolution animation. */
.social-modal{position:fixed;inset:0;z-index:10000;display:grid;place-items:center;padding:20px;background:#0009;backdrop-filter:blur(7px);font-family:Consolas,monospace;color:#cdbbc4;animation:social-backdrop .35s ease-out}
.social-modal[hidden],.social-modal [hidden]{display:none!important}
.social-modal:focus{outline:none}
.social-panel{position:relative;width:min(760px,94vw);max-height:calc(100dvh - 40px);overflow:auto;overscroll-behavior:contain;padding:26px;background:#0b070b;border:1px solid #812440;box-shadow:0 0 30px #a41a3728}
#social-back{font:10px Consolas,monospace;color:#cda4b3;background:#160b12;border:1px solid #602039;padding:10px 12px;cursor:pointer}
.social-panel>header{margin:24px 0 22px}
.social-panel>header>span{font-size:9px;letter-spacing:.13em;color:#b96883}
.social-panel h2{font-size:clamp(25px,4vw,34px);font-weight:400;color:#eee2e8;margin:12px 0}
.social-panel>header p{font-size:10px;color:#9e7e8c}
.social-panel>header small{font-size:9px;color:#c05777}
.social-network{position:relative;isolation:isolate}
.social-endpoints{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:42px 38px}
.social-endpoint{position:relative;display:block;min-width:0;padding:18px;border:1px solid #552038;background:#160b13;color:inherit;text-decoration:none;transition:border-color .25s,background .25s,transform .25s}
.social-endpoint-icon{width:29px;height:29px;color:#d6446c;transition:transform .25s}
.social-channel-status{display:block;font-size:8px;letter-spacing:.06em;color:#9d677d;margin-top:10px}
.social-channel-status:before{content:"";display:inline-block;width:4px;height:4px;margin-right:5px;background:#b83358;border-radius:50%}
.social-endpoint h3{font-size:13px;font-weight:500;margin:12px 0 8px;color:#dcb3c3}
.social-address{font-size:10px;line-height:1.7;color:#b17c92;overflow-wrap:anywhere;margin:0}
.social-description{font:12px/1.7 Arial,sans-serif;color:#a18d98;margin:12px 0 15px}
.social-action{font-size:9px;color:#c05a7b;letter-spacing:.05em}
.social-panel button:focus-visible,.social-panel a:focus-visible{outline:2px solid #fa7097;outline-offset:4px}
.social-connectors{position:absolute;inset:0;width:100%;height:100%;z-index:-1;pointer-events:none;overflow:visible}
.social-connectors path{stroke:#6c2340;stroke-width:1;fill:none;stroke-dasharray:600;stroke-dashoffset:0;transition:stroke .2s}
.social-connectors path.social-line-active{stroke:#f3658c}
.social-network-center{position:absolute;left:50%;top:50%;width:30px;height:30px;transform:translate(-50%,-50%);border:1px solid #67203b;border-radius:50%;background:#110911;color:#b23b62;z-index:1;pointer-events:none}
.social-network-center svg{width:100%;height:100%}
.social-ready .social-network-center{animation:social-center-pulse 5s 1s 2}
.social-ready .social-panel{animation:social-panel-pop .45s cubic-bezier(.2,.7,.25,1) both}
.social-ready .social-endpoint{animation:social-endpoint-in .25s var(--endpoint-delay) both}
.social-ready .social-connectors path{animation:social-line-draw .3s var(--endpoint-delay) both}
#social-transition{position:absolute;inset:0;overflow:hidden;pointer-events:none;--social-globe-size:230px}
.social-transition-position{position:absolute;left:50%;top:50%;width:var(--social-globe-size);height:var(--social-globe-size);margin-left:calc(var(--social-globe-size) / -2);margin-top:calc(var(--social-globe-size) / -2)}
.social-transition-scale,.social-glitch-layer{width:100%;height:100%}
.social-glitch-layer>svg{width:100%;height:100%;overflow:visible;color:#df365e}
.globe-rotation-layer{transform-origin:48px 48px}
.social-globe-ring{transform-origin:48px 48px}
.network-arm .arm-node{transform-box:fill-box;transform-origin:center}
.arm-nw{--node-x:16px;--node-y:16px;--line-origin:29px 29px}
.arm-ne{--node-x:-16px;--node-y:16px;--line-origin:67px 29px}
.arm-se{--node-x:-16px;--node-y:-16px;--line-origin:67px 67px}
.arm-sw{--node-x:16px;--node-y:-16px;--line-origin:29px 67px}
.arm-line{transform-origin:var(--line-origin)}
.arm-ripple{opacity:0;transform-box:fill-box;transform-origin:center}
.social-lock-rays{opacity:0;stroke:#ffe0e9}
.social-shockwave{position:absolute;inset:18%;border:1px solid #d44c72;border-radius:50%;opacity:0;pointer-events:none}
.social-particles{position:absolute;inset:0;pointer-events:none}
.social-particles i{position:absolute;left:50%;top:50%;width:3px;height:3px;background:#d7597e;opacity:0;transform:rotate(var(--particle-angle)) translateX(0)}
#social-transition-status{position:absolute;left:5%;width:90%;top:calc(50% + var(--social-globe-size) / 2 + 24px);text-align:center;font-size:10px;line-height:1.8;color:#c55378;letter-spacing:.05em}
.social-enter .globe-rotation-layer{animation:social-longitude 1.32s .45s both}
.social-enter .social-globe-ring{animation:social-ring-motion 1.32s .45s both}
.social-enter .arm-line{animation:social-arm-shorten .26s var(--arm-delay) both}
.social-enter .arm-node{animation:social-node-lock .26s var(--arm-delay) both}
.social-enter .arm-ripple{animation:social-node-ripple .22s calc(var(--arm-delay) + .26s) both}
.social-enter .social-lock-rays{animation:social-rays .15s 1.77s both}
.social-enter .social-transition-scale{animation:social-compress-pop .55s 1.8s both}
.social-enter .social-shockwave{animation:social-shockwave .25s 2.1s both}
.social-enter .social-particles i{animation:social-particle .25s 2.1s both}
.social-enter .social-glitch-layer:after{content:"";position:absolute;left:5%;right:5%;top:50%;height:1px;background:#ffe0e955;opacity:0;animation:social-rays .15s 2.1s}
.social-closing{opacity:0;backdrop-filter:blur(0);transition:opacity .35s,backdrop-filter .35s}
.social-closing .social-panel{animation:none;transform:scale(.97);opacity:0;transition:transform .35s,opacity .35s}
.social-closing .social-endpoint{animation:none;transform:scale(.96);opacity:0;transition:transform .3s,opacity .3s}
.social-closing .social-connectors path{animation:none;stroke-dashoffset:600;transition:stroke-dashoffset .3s}
@keyframes social-backdrop{from{background:#0000;backdrop-filter:blur(0)}}
@keyframes social-longitude{0%{transform:scaleX(1);animation-timing-function:ease-in}22%{transform:scaleX(-1)}37%{transform:scaleX(1)}49%{transform:scaleX(-1)}59%{transform:scaleX(1)}68%{transform:scaleX(-1)}80%{transform:scaleX(.1);animation-timing-function:ease-out}100%{transform:scaleX(1)}}
@keyframes social-ring-motion{0%{rotate:0deg}65%{rotate:9deg}100%{rotate:0deg}}
@keyframes social-arm-shorten{0%{transform:scale(1);stroke:#df365e}60%{stroke:#ffe3ec}100%{transform:scale(0);stroke:#ff9ab8}}
@keyframes social-node-lock{0%{transform:translate(0,0) scale(1);stroke:#df365e}75%{stroke:#ffe3ec}100%{transform:translate(var(--node-x),var(--node-y)) scale(.4);stroke:#ffacc4}}
@keyframes social-node-ripple{0%{opacity:.8;transform:scale(1)}100%{opacity:0;transform:scale(1.6)}}
@keyframes social-rays{0%,100%{opacity:0}40%{opacity:1}}
@keyframes social-compress-pop{0%{transform:scale(1);opacity:1}36%,54%{transform:scale(.82);opacity:1}69%{transform:scale(1.12);opacity:1}100%{transform:scale(1.35);opacity:0}}
@keyframes social-shockwave{0%{opacity:.7;transform:scale(.8)}100%{opacity:0;transform:scale(2)}}
@keyframes social-particle{0%{opacity:.8;transform:rotate(var(--particle-angle)) translateX(50px)}100%{opacity:0;transform:rotate(var(--particle-angle)) translateX(120px)}}
@keyframes social-panel-pop{0%{opacity:0;transform:scale(.7)}70%{opacity:1;transform:scale(1.03)}100%{opacity:1;transform:scale(1)}}
@keyframes social-endpoint-in{from{opacity:0;translate:0 8px;scale:.92}to{opacity:1;translate:0 0;scale:1}}
@keyframes social-line-draw{from{stroke-dashoffset:600}to{stroke-dashoffset:0}}
@keyframes social-status-pulse{50%{opacity:.4;box-shadow:0 0 7px #e6396a}}
@keyframes social-center-pulse{0%,85%,100%{opacity:1}92%{opacity:.5}}
@media(max-width:650px){#social-transition{--social-globe-size:170px}.social-panel{padding:22px 17px}.social-endpoints{gap:36px 24px}.social-endpoint{padding:15px}.social-panel>header{margin:20px 0}}
@media(max-width:480px){.social-endpoints{grid-template-columns:minmax(0,1fr);gap:20px;padding-left:20px}.social-network-center{left:2px;top:50%;width:22px;height:22px}.social-endpoint{padding:15px}.social-modal{padding:12px}.social-panel{max-height:calc(100dvh - 24px)}}
@media(prefers-reduced-motion:reduce){.social-modal,.social-modal *{animation:none!important;transition:none!important}.social-lock-rays{opacity:0}.social-ready .social-panel{animation:experience-fade .35s ease-out!important}}

/* Contact cards only; the directory and globe entry timeline stay unchanged. */
.social-panel{width:min(900px,94vw);background:#090909;border-color:#712128;color:#c6c3c3;box-shadow:0 0 30px #a41a2220}
.social-panel>header>span,.social-panel>header small{color:#ba646b}
.social-panel h2{color:#eeeaea}
.social-panel>header p{color:#9b9192}
.social-endpoints{gap:46px 42px}
.social-endpoint{display:flex;flex-direction:column;align-items:flex-start;padding:24px;background:#111010;border-color:#542329;isolation:isolate}
.social-node-frame{position:relative;display:grid;place-items:center;width:66px;height:66px;border:1px solid #683038;background:#0b0909;color:#cf3d49;transition:box-shadow .25s,border-color .25s}
.social-node-frame:before,.social-node-frame:after{content:"";position:absolute;width:8px;height:8px;border-color:#c84c56;border-style:solid;pointer-events:none}
.social-node-frame:before{left:-3px;top:-3px;border-width:1px 0 0 1px}
.social-node-frame:after{right:-3px;bottom:-3px;border-width:0 1px 1px 0}
.social-node-indicator{position:absolute;right:5px;top:5px;width:3px;height:3px;background:#74343b;border-radius:50%;transition:background .2s,box-shadow .2s}
.social-logo-draw{display:block;width:44px;height:44px}
.social-endpoint-icon{display:block;width:44px;height:44px;color:#d54450;transition:transform .25s,color .25s}
.social-channel-status{color:#a78689;margin-top:16px;font-size:8px}
.social-channel-status:before{background:#b83944}
.social-endpoint h3{color:#ddd5d5;letter-spacing:.12em;margin:16px 0 9px}
.social-address{color:#c6b1b3;font-size:11px;max-width:100%;min-height:19px}
.social-description{color:#a79d9e;margin:13px 0 22px;font-size:12px;line-height:1.8}
.social-action{position:relative;display:block;align-self:stretch;margin-top:auto;border:1px solid #59262c;padding:12px;color:#df979d;background:#190e10;font-size:10px;transition:translate .2s,color .2s,border-color .2s}
.social-action:before{content:"";position:absolute;left:0;top:-13px;width:28px;height:1px;background:#ed5864;opacity:0}
.social-endpoint:is(:hover,:focus-visible){transform:translateY(-4px);border-color:#df4b56;background:#181112}
.social-endpoint:is(:hover,:focus-visible) .social-node-frame{border-color:#d44b55;box-shadow:0 0 15px #d02c3825}
.social-endpoint:is(:hover,:focus-visible) .social-node-indicator{background:#ff5763;box-shadow:0 0 6px #ff5763}
.social-endpoint:is(:hover,:focus-visible) .social-endpoint-icon{transform:scale(1.08);color:#f16b74}
.social-endpoint:is(:hover,:focus-visible) h3{color:#fff}
.social-endpoint:is(:hover,:focus-visible) .social-action{translate:3px 0;color:#fff;border-color:#9b3942}
.social-endpoint:is(:hover,:focus-visible) .social-action:before{animation:social-data-line .45s ease-out}
.social-panel button:focus-visible,.social-panel a:focus-visible{outline-color:#f26c75}
.social-connectors path{stroke:#742830;stroke-dasharray:1;stroke-width:1;vector-effect:non-scaling-stroke}
.social-connectors path.social-line-active{stroke:#fa6a74;stroke-width:1.6}
.social-network-center{background:#100b0c;border-color:#96323c;color:#d54854}
.social-network-center:after{content:"";position:absolute;inset:-4px;border:1px solid transparent;border-top-color:#d44b55;border-radius:50%;animation:social-icon-orbit 12s linear infinite}
.social-ready .social-network-center{animation:social-center-in .2s both,social-center-pulse 6s 1s infinite}
.social-ready .social-endpoint{animation:social-endpoint-in .3s var(--endpoint-delay) backwards}
.social-ready .social-connectors path{animation:social-connector-reveal .12s var(--endpoint-delay) both}
.social-ready .social-node-frame{animation:social-detail-in .18s var(--endpoint-delay) backwards}
.social-ready .social-logo-draw{animation:social-logo-entry .25s calc(var(--endpoint-delay) + 50ms) backwards}
.social-ready .social-logo-draw svg>*{stroke-dasharray:180;animation:social-logo-stroke .3s calc(var(--endpoint-delay) + 70ms) backwards}
.social-ready .social-endpoint h3{animation:social-detail-in .2s calc(var(--endpoint-delay) + 120ms) backwards}
.social-ready .social-address{animation:social-detail-in .2s calc(var(--endpoint-delay) + 170ms) backwards}
.social-ready .social-description{animation:social-detail-in .2s calc(var(--endpoint-delay) + 220ms) backwards}
.social-ready .social-action{animation:social-detail-in .2s calc(var(--endpoint-delay) + 270ms) backwards}
.social-endpoint-icon .social-longitude,.social-endpoint-icon .social-orbit,.social-endpoint-icon .social-lens-highlight,.social-endpoint-icon .social-camera-scan{transform-origin:24px 24px}
.social-ready .social-endpoint-icon .social-longitude{animation:social-idle-longitude 12s ease-in-out infinite}
.social-ready .social-endpoint-icon .social-orbit{animation:social-icon-orbit 18s linear infinite}
.social-ready .social-endpoint-icon .social-core{animation:social-soft-pulse 6s ease-in-out infinite}
.social-ready .social-endpoint-icon .social-icon-scan{animation:social-icon-scan 8s ease-in-out infinite}
.social-ready [data-social-endpoint="linkedin"] .social-icon-scan{animation-name:social-icon-scan-horizontal}
.social-ready .social-endpoint-icon .social-commit{animation:social-soft-pulse 7s ease-in-out infinite}
.social-ready .social-endpoint-icon .social-commit:nth-of-type(2){animation-delay:.15s}
.social-ready .social-endpoint-icon .social-commit:nth-of-type(3){animation-delay:.3s}
.social-ready .social-endpoint-icon .social-camera{animation:social-soft-pulse 9s ease-in-out infinite}
.social-ready .social-endpoint-icon .social-lens-highlight{animation:social-icon-orbit 14s linear infinite}
.social-endpoint-icon .social-camera-scan{opacity:0}
.social-endpoint-icon .social-lens{transform-origin:24px 24px;transition:transform .25s}
.social-endpoint[data-social-endpoint="website"]:is(:hover,:focus-visible) .social-endpoint-icon{transform:rotate(6deg) scale(1.08)}
.social-endpoint[data-social-endpoint="github"]:is(:hover,:focus-visible) .social-endpoint-icon{transform:rotate(3deg) scale(1.08)}
.social-ready .social-endpoint:is(:hover,:focus-visible) .social-in-mark{animation:social-mark-glitch .18s steps(1,end)}
.social-ready .social-endpoint:is(:hover,:focus-visible) .social-branch{stroke-dasharray:1;animation:social-branch-draw .4s ease-out}
.social-ready .social-endpoint:is(:hover,:focus-visible) .social-commit{animation:social-commit-light .5s ease-out both}
.social-ready .social-endpoint:is(:hover,:focus-visible) .social-commit:nth-of-type(2){animation-delay:.1s}
.social-ready .social-endpoint:is(:hover,:focus-visible) .social-commit:nth-of-type(3){animation-delay:.2s}
.social-ready .social-endpoint:is(:hover,:focus-visible) .social-camera-scan{animation:social-camera-orbit .65s ease-out}
.social-endpoint:is(:hover,:focus-visible) .social-lens{transform:scale(1.1)}
.social-ready .social-endpoint.social-click-pulse{animation:social-click-flash .16s ease-out}
.social-click-pulse .social-node-frame{animation:social-click-logo .16s ease-out}
.social-modal[hidden] *,.social-closing *{animation-play-state:paused!important}
@keyframes social-center-in{from{opacity:0;scale:.8}to{opacity:1;scale:1}}
@keyframes social-detail-in{from{opacity:0}to{opacity:1}}
@keyframes social-logo-entry{from{opacity:0;scale:.9}to{opacity:1;scale:1}}
@keyframes social-logo-stroke{from{stroke-dashoffset:180}to{stroke-dashoffset:0}}
@keyframes social-connector-reveal{from{stroke-dashoffset:1;opacity:0}to{stroke-dashoffset:0;opacity:1}}
@keyframes social-idle-longitude{0%,100%{transform:scaleX(1)}50%{transform:scaleX(.25)}}
@keyframes social-icon-orbit{to{transform:rotate(360deg)}}
@keyframes social-soft-pulse{0%,75%,100%{opacity:.85}85%{opacity:.4}92%{opacity:1}}
@keyframes social-icon-scan{0%,78%,100%{opacity:0;transform:translateY(-15px)}82%{opacity:.7}95%{opacity:0;transform:translateY(15px)}}
@keyframes social-icon-scan-horizontal{0%,78%,100%{opacity:0;transform:translateX(-15px)}82%{opacity:.7}95%{opacity:0;transform:translateX(15px)}}
@keyframes social-mark-glitch{20%{translate:-2px 0}45%{translate:2px 0}70%{translate:-1px 0}100%{translate:0 0}}
@keyframes social-branch-draw{from{stroke-dashoffset:1}to{stroke-dashoffset:0}}
@keyframes social-commit-light{0%,100%{fill:transparent}50%{fill:#ff6771;stroke:#ffe3e5}}
@keyframes social-camera-orbit{0%{opacity:0;transform:rotate(0)}20%{opacity:.8}100%{opacity:0;transform:rotate(360deg)}}
@keyframes social-data-line{0%{opacity:0;left:0}25%{opacity:.8}100%{opacity:0;left:calc(100% - 28px)}}
@keyframes social-click-flash{35%{border-color:#ffe0e3;box-shadow:0 0 18px #d93c4940}}
@keyframes social-click-logo{50%{filter:brightness(1.6)}}
@media(max-width:650px){.social-endpoint{padding:19px}.social-endpoints{gap:40px 30px}}
@media(max-width:560px){.social-endpoints{grid-template-columns:minmax(0,1fr);gap:24px;padding-left:22px}.social-network-center{left:2px;top:50%;width:22px;height:22px}.social-node-frame{align-self:center}.social-address{font-size:10px}.social-panel{padding:20px 15px}.social-modal{padding:12px}.social-panel{max-height:calc(100dvh - 24px)}}
@media(prefers-reduced-motion:reduce){.social-modal *::before,.social-modal *::after{animation:none!important;transition:none!important}.social-endpoint:is(:hover,:focus-visible),.social-endpoint:is(:hover,:focus-visible) .social-endpoint-icon,.social-endpoint:is(:hover,:focus-visible) .social-lens{transform:none!important}.social-endpoint:is(:hover,:focus-visible) .social-action{translate:none}.social-icon-scan,.social-camera-scan{opacity:0}.social-ready .social-endpoint{animation:social-detail-in .2s ease-out!important}}
