:root{color:#e5e7eb;background:#1e293b;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;line-height:1.5}*{box-sizing:border-box}html,body,#root{margin:0;min-height:100%}a{color:#e5e7eb;text-decoration:none}a:hover{text-decoration:underline}.page{min-height:100vh}.container{width:min(1100px,calc(100% - 3rem));margin:0 auto}.section{padding:1.5rem 0;border-bottom:1px solid #334155}.main-layout{width:100%;margin:0;display:grid;grid-template-columns:clamp(280px,30vw,380px) 1fr;gap:0;min-height:100vh}.profile-column{position:sticky;top:0;height:100vh;background:#334155;border-right:1px solid #475569;padding:1rem 1.5rem;display:flex;flex-direction:column;overflow-y:auto}.profile-footer{margin-top:auto;padding-bottom:0;font-size:.72rem;color:#4b5563;text-align:center}.contact-icons--footer{display:flex;justify-content:center;gap:1.1rem;padding-bottom:1.25rem}.profile-sticky{position:sticky;top:1rem;display:grid;gap:.75rem}.headshot{width:100%;max-width:220px;object-fit:contain;position:relative;z-index:1;filter:drop-shadow(0 4px 24px rgba(255,255,255,.08));-webkit-mask-image:linear-gradient(to bottom,#000 70%,transparent 100%);mask-image:linear-gradient(to bottom,#000 70%,transparent 100%)}.headshot-wrap{width:100%;max-width:220px;display:grid;place-items:center;position:relative}.headshot-wrap:before{display:none}.content-column{min-width:0;padding:1rem 3rem 2rem 2.5rem;background:#1e293b}.meta{letter-spacing:.08em;text-transform:uppercase;color:#9ca3af;margin:0;font-size:.85rem}h1{margin:0;font-size:clamp(1.8rem,2.8vw,2.6rem);max-width:14ch;line-height:1.1}.lead{color:#9ca3af;font-size:.95rem}.profile-sticky h1,.profile-sticky p{color:#fff}h2{margin:0 0 .75rem;font-size:1.75rem;color:#fff}p{margin:0 0 1rem;color:#cbd5e1}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem}.card,.timeline-item{border:1px solid #334155;background:#263244;padding:1rem}.card h3,.timeline-item h3{margin:0 0 .5rem}.card-meta{display:flex;justify-content:space-between;color:#94a3b8;font-size:.92rem;margin:.75rem 0}.links{display:flex;gap:1rem}.timeline{display:grid;gap:1rem}.timeline-item header p,.period{color:#94a3b8;margin:0}.contact-list{display:grid;gap:.6rem}.contact-icons{display:flex;gap:1.25rem;align-items:center;justify-content:flex-start;margin-top:.5rem}.contact-icon{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;color:#9ca3af;transition:color .15s}.contact-icon:hover{color:#fff;text-decoration:none}.contact-icon svg{width:100%;height:100%}.skill-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:1.5rem;justify-items:center}.skill-item{position:relative;display:flex;justify-content:center}.skill-item:after{content:attr(data-tooltip);position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%);padding:.25rem .5rem;background:#111827;color:#fff;font-size:.75rem;white-space:nowrap;pointer-events:none;opacity:0;transition:opacity .15s}.skill-item:hover:after{opacity:1}.skill-icon{width:52px;height:52px;object-fit:contain}.doc-links{display:flex;gap:1rem;margin-top:.5rem}.doc-btn{display:inline-block;padding:.6rem 1.4rem;border:1px solid #e5e7eb;color:#e5e7eb;font-weight:600;font-size:.95rem;transition:background .15s,color .15s}.doc-btn:hover{background:#e5e7eb;color:#1e293b;text-decoration:none}.welcome-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;overflow:hidden;cursor:default;transition:transform .9s cubic-bezier(.4,0,.2,1)}.welcome-overlay.exiting{transform:translateY(-100%)}.welcome-stars,.welcome-twinkle,.welcome-clouds{position:absolute;top:0;right:0;bottom:0;left:0}.welcome-stars{background:#000 url(/welcome/stars.jpg) repeat;background-size:auto;z-index:0;filter:brightness(.75)}.welcome-twinkle{background:transparent url(/welcome/twinkling.png) repeat top center;z-index:1;animation:welcome-twinkle-move 200s linear infinite;opacity:.5}.welcome-clouds{background:transparent url(/welcome/clouds.png) repeat;background-size:cover;z-index:2;animation:welcome-clouds-move 200s linear infinite;opacity:.1}@keyframes welcome-twinkle-move{0%{background-position:0 0}to{background-position:-10000px 5000px}}@keyframes welcome-clouds-move{0%{background-position:0 0}to{background-position:10000px 0}}.welcome-canvas{position:absolute;top:0;right:0;bottom:0;left:0;z-index:3}.welcome-canvas canvas{position:absolute!important;top:0!important;left:0!important;width:100%!important;height:100%!important}.welcome-message{position:absolute;top:35%;left:50%;transform:translate(-50%);z-index:10;text-align:center;animation:welcome-fade-in .8s ease forwards;pointer-events:none;white-space:nowrap}.welcome-title{font-family:Rock Salt,"Press Start 2P",cursive;font-size:clamp(1.8rem,5vw,3.5rem);color:#8f0;text-shadow:0 0 24px rgba(136,255,0,.55),4px 4px 0 rgba(138,240,155,.7);margin:0 0 .75rem}.welcome-sub{font-family:"Press Start 2P",cursive;font-size:clamp(.55rem,1.4vw,.95rem);color:#c8ffc8e6;margin:0 0 2rem}.welcome-sub--blink{animation:welcome-sub-blink 2.8s ease-in-out infinite}@keyframes welcome-sub-blink{0%,to{opacity:.9}50%{opacity:.45}}.welcome-prompt{font-family:"Press Start 2P",cursive;font-size:clamp(.5rem,1.2vw,.8rem);color:#b4ffb4bf;animation:welcome-blink 1.4s ease-in-out infinite;margin:0}@keyframes welcome-fade-in{0%{opacity:0;transform:translate(-50%) translateY(12px)}to{opacity:1;transform:translate(-50%) translateY(0)}}@keyframes welcome-blink{0%,to{opacity:1}50%{opacity:.3}}.role-intro{font-style:italic;color:#ffffffb3;border-left:3px solid #88ff00;padding-left:1rem;margin-bottom:1.5rem}.product-showcase-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin:2rem 0}.product-card{background:#ffffff0a;border:1px solid rgba(136,255,0,.2);border-radius:8px;overflow:hidden}.product-card-header{padding:1rem 1.25rem .75rem;background:#88ff000f;border-bottom:1px solid rgba(136,255,0,.15)}.product-badge{display:inline-block;background:#8f0;color:#000;font-family:"Press Start 2P",monospace;font-size:.6rem;padding:.3em .7em;border-radius:4px;margin-bottom:.5rem}.product-card-subtitle{font-size:.85rem;color:#fff9;margin:0}.product-card-description{padding:1rem 1.25rem;font-size:.9rem;line-height:1.65;margin:0}.product-media-wrap{margin:0 1.25rem 1.25rem;background:#00000059;border:1px solid rgba(136,255,0,.1);border-radius:6px;overflow:hidden;min-height:160px;display:flex;align-items:center;justify-content:center}.product-media-content{width:100%;height:auto;display:block}.section-subheading{font-size:1.1rem;color:#8f0;margin:2.5rem 0 1rem;padding-bottom:.5rem;border-bottom:1px solid rgba(136,255,0,.2)}.role-narrative p{margin-bottom:1rem;line-height:1.7}.training-intro-text{font-style:italic;color:#ffffffb3;margin-bottom:1.5rem}.training-steps-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem;margin:0 0 2rem}.training-step-card{display:flex;gap:1rem;background:#ffffff0a;border:1px solid rgba(136,255,0,.15);border-radius:8px;padding:1.25rem}.step-badge{flex-shrink:0;width:2.2rem;height:2.2rem;background:#8f0;color:#000;font-family:"Press Start 2P",monospace;font-size:.7rem;border-radius:50%;display:flex;align-items:center;justify-content:center}.step-body{min-width:0}.step-title{font-size:.95rem;color:#fff;margin:0 0 .2rem}.step-subtitle{font-size:.8rem;color:#8f0;margin:0 0 .4rem}.step-tagline{font-size:.8rem;color:#ffffff8c;font-style:italic;margin:0 0 .75rem}.step-bullet-list{font-size:.85rem;padding-left:1.2rem;margin:0 0 .75rem;color:#fffc}.step-bullet-list li{margin-bottom:.35rem}.step-note{font-size:.8rem;color:#88ff00d9;border-left:2px solid rgba(136,255,0,.35);padding-left:.6rem;margin:0;font-style:italic}.role-closing{background:#88ff000a;border:1px solid rgba(136,255,0,.15);border-radius:8px;padding:1.5rem;margin-top:1rem}.role-closing p{margin:0 0 .75rem;color:#fffc;line-height:1.65}.role-closing p:last-child{margin-bottom:0}.role-closing-sig{color:#8f0c!important;font-style:italic}.content-column--bubble{padding:0;overflow:hidden}.bubble-layout{position:relative;width:100%;height:100vh;overflow:hidden;display:flex;align-items:center;justify-content:center}.bubble-btn{border:none;background:transparent;padding:0;cursor:pointer;border-radius:50%;pointer-events:all;will-change:transform}.bubble-face{width:100%;height:100%;border-radius:50%;display:flex;align-items:center;justify-content:center;background:radial-gradient(circle at 33% 28%,var(--color-b),var(--color-a));border:2px solid rgba(255,255,255,.12);box-shadow:0 4px 24px #00000073,0 0 14px var(--glow);transition:transform .35s cubic-bezier(.34,1.56,.64,1),box-shadow .35s ease,border-color .35s ease}.bubble-btn:hover .bubble-face{transform:scale(1.14);box-shadow:0 8px 40px #0000008c,0 0 32px #88ff0073;border-color:#88ff008c}.bubble-btn:focus-visible .bubble-face{outline:2px solid #88ff00;outline-offset:4px}.bubble-label{color:#fff;font-family:"Press Start 2P",monospace;font-size:.54rem;text-align:center;line-height:1.55;white-space:pre-line;padding:.5rem;text-shadow:0 1px 5px rgba(0,0,0,.65);pointer-events:none}.bubble-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;background:#000000c7;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);display:flex;align-items:center;justify-content:center;padding:1rem;animation:bubble-overlay-in .2s ease forwards}@keyframes bubble-overlay-in{0%{opacity:0}to{opacity:1}}.bubble-popup{background:#0f172a;border:1px solid rgba(136,255,0,.28);border-radius:14px;width:100%;max-width:680px;max-height:85vh;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 24px 64px #000000bf,0 0 40px #88ff0012;animation:bubble-popup-in .3s cubic-bezier(.34,1.56,.64,1) forwards}@keyframes bubble-popup-in{0%{opacity:0;transform:scale(.88) translateY(18px)}to{opacity:1;transform:scale(1) translateY(0)}}.popup-header{display:flex;align-items:center;justify-content:space-between;padding:1.2rem 1.5rem;border-bottom:1px solid rgba(136,255,0,.14);background:#88ff000a;flex-shrink:0}.popup-title{font-family:Rock Salt,cursive;font-size:clamp(.8rem,1.8vw,1.15rem);color:#8f0;margin:0}.popup-close{background:transparent;border:1px solid rgba(136,255,0,.25);color:#ffffffa6;border-radius:50%;width:2rem;height:2rem;cursor:pointer;font-size:.82rem;display:flex;align-items:center;justify-content:center;transition:background .2s ease,color .2s ease,border-color .2s ease;flex-shrink:0}.popup-close:hover{background:#88ff001a;color:#8f0;border-color:#8f0}.popup-body{padding:1.4rem 1.6rem;overflow-y:auto;flex:1;line-height:1.75;color:#ffffffd1;scrollbar-width:thin;scrollbar-color:rgba(136,255,0,.3) transparent}.popup-body p{margin-bottom:1rem}.popup-body h3{font-size:.82rem;color:#8f0;margin:1.6rem 0 .7rem;padding-bottom:.35rem;border-bottom:1px solid rgba(136,255,0,.14)}.popup-body--centered{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:1.5rem;min-height:180px}.popup-intro{font-style:italic;color:#ffffff94;border-left:3px solid #88ff00;padding-left:1rem;margin-bottom:1.4rem!important}.popup-skill-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(82px,1fr));gap:.9rem}.popup-skill-item{display:flex;flex-direction:column;align-items:center;gap:.45rem;padding:.75rem .5rem;background:#ffffff0a;border:1px solid rgba(136,255,0,.1);border-radius:8px;transition:border-color .2s ease,background .2s ease}.popup-skill-item:hover{border-color:#88ff0059;background:#88ff000f}.popup-skill-item img{width:36px;height:36px;object-fit:contain}.popup-skill-item span{font-size:.6rem;color:#ffffffad;text-align:center}.popup-badge{display:inline-block;background:#8f0;color:#000;font-family:"Press Start 2P",monospace;font-size:.52rem;padding:.3em .65em;border-radius:4px;margin-bottom:.45rem}.popup-product{background:#ffffff08;border:1px solid rgba(136,255,0,.1);border-radius:9px;padding:1rem 1.1rem;margin-bottom:1rem}.popup-product-subtitle{font-size:.78rem;color:#ffffff7a;margin:.2rem 0 .7rem!important;font-style:italic}.popup-training-list{display:flex;flex-direction:column;gap:.7rem;margin-bottom:1.4rem}.popup-training-step{display:flex;gap:.9rem;align-items:flex-start;background:#ffffff08;border:1px solid rgba(136,255,0,.09);border-radius:8px;padding:.8rem 1rem}.popup-step-num{flex-shrink:0;width:1.75rem;height:1.75rem;background:#8f0;color:#000;font-family:"Press Start 2P",monospace;font-size:.55rem;border-radius:50%;display:flex;align-items:center;justify-content:center}.popup-training-step strong{font-size:.84rem;color:#fff}.popup-step-subtitle{font-size:.78rem;color:#88ff00c7}.popup-step-tagline{font-size:.77rem;color:#ffffff7a;font-style:italic;margin:.2rem 0 0!important}.popup-sig{font-style:italic;color:#ffffff73;margin-top:1.8rem!important;font-size:.88rem}.popup-doc-links{display:flex;gap:1rem;flex-wrap:wrap;justify-content:center}@media (max-width: 700px){.main-layout{grid-template-columns:1fr;gap:0;min-height:auto}.profile-sticky{position:static}.profile-column{border-right:0;min-height:auto}.content-column{padding:1rem}.headshot,.headshot-wrap{max-width:280px}.product-showcase-grid,.training-steps-grid{grid-template-columns:1fr}}
