*,*:before,*:after{box-sizing:border-box}body{margin:0;min-width:320px;max-width:100%;overflow-x:clip;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Arial,sans-serif}img,svg,video,canvas{display:block;max-width:100%}:root{--fade-in-distance: 12px;--fade-in-duration: .65s;--float-distance: 10px;--float-duration: 7s;--social-float-distance: 3px;--social-float-duration: 5s;--typing-cursor-duration: 1.15s;--career-scroll-duration: 24s;--hero-overview-scroll-duration: 72s;--modal-enter-duration: .28s;--sg-nav-offset: 5.75rem;--sg-scrollbar-size: 10px;--sg-scrollbar-track: rgba(148, 163, 184, .14);--sg-scrollbar-thumb: rgba(100, 116, 139, .46);--sg-scrollbar-thumb-hover: rgba(100, 116, 139, .62)}html{scrollbar-gutter:stable;scroll-padding-top:var(--sg-nav-offset);-webkit-text-size-adjust:100%}section[id]{scroll-margin-top:var(--sg-nav-offset)}html:not(.dark){color-scheme:light}html.dark{color-scheme:dark;--sg-scrollbar-track: rgba(2, 6, 23, .32);--sg-scrollbar-thumb: rgba(148, 163, 184, .34);--sg-scrollbar-thumb-hover: rgba(148, 163, 184, .52)}*{scrollbar-width:thin;scrollbar-color:var(--sg-scrollbar-thumb) var(--sg-scrollbar-track)}*::-webkit-scrollbar{width:var(--sg-scrollbar-size);height:var(--sg-scrollbar-size)}*::-webkit-scrollbar-track{background:var(--sg-scrollbar-track)}*::-webkit-scrollbar-thumb{border-radius:9999px;border:3px solid transparent;background-clip:padding-box;background-color:var(--sg-scrollbar-thumb)}*::-webkit-scrollbar-thumb:hover{background-color:var(--sg-scrollbar-thumb-hover)}*::-webkit-scrollbar-corner{background:transparent}.social-circle{width:48px;height:48px;border-radius:9999px;background:#0703ecb7;display:flex;align-items:center;justify-content:center;color:#f8f3f3;font-size:1.4rem;box-shadow:0 10px 20px #0000001f;transition:all .35s ease;animation:socialFloat var(--social-float-duration) ease-in-out infinite;will-change:transform}.social-circle:nth-child(2){animation-delay:.4s}.social-circle:nth-child(3){animation-delay:.8s}.social-circle:nth-child(4){animation-delay:1.2s}.social-circle:nth-child(5){animation-delay:1.6s}.social-circle:hover{color:#f7f8fc;transform:translateY(-6px) scale(1.1);box-shadow:0 0 0 6px #2563eb26,0 0 20px #2563eb73,0 15px 30px #0003}@keyframes socialFloat{0%,to{transform:translateY(0)}50%{transform:translateY(calc(var(--social-float-distance) * -1))}}.typing-cursor{display:inline-block;margin-left:4px;animation:blink var(--typing-cursor-duration) infinite}@keyframes blink{0%,50%,to{opacity:1}25%,75%{opacity:0}}.career-scroll-container{height:95px;overflow:hidden;position:relative;margin-top:2rem}.career-scroll-track{display:flex;flex-direction:column;gap:2rem;animation:scrollUp var(--career-scroll-duration) linear infinite;will-change:transform}.career-scroll-container:hover .career-scroll-track{animation-play-state:paused}.career-item{text-align:center;color:#1e293b}.career-item strong{display:block;font-size:1.1rem;color:#2563eb}.career-item span{display:block;font-size:.9rem;color:#64748b;margin-bottom:.25rem}.career-item p{font-size:.95rem;color:#475569;max-width:420px;margin:0 auto}@keyframes scrollUp{0%{transform:translateY(0)}to{transform:translateY(-50%)}}.hero-sections-scroll-shell{position:relative;max-width:100%;isolation:isolate;border-radius:1rem;border:1px solid rgba(148,163,184,.36);background:#ffffffd1;box-shadow:0 10px 24px #0f172a1f;overflow:hidden}html.dark .hero-sections-scroll-shell{border-color:#64748b9e;background:#0f172aa8;box-shadow:0 16px 32px #0206176b}.hero-sections-scroll-container{position:relative;width:100%;height:auto;overflow:hidden;padding:.55rem .65rem}.hero-sections-scroll-track{display:flex;flex-direction:row;width:max-content;animation:heroOverviewScroll var(--hero-overview-scroll-duration) linear infinite;will-change:transform}.hero-sections-scroll-group{display:flex;flex-direction:row;align-items:stretch;gap:.6rem}.hero-sections-scroll-container:hover .hero-sections-scroll-track,.hero-sections-scroll-container:focus-within .hero-sections-scroll-track{animation-play-state:paused}.hero-sections-scroll-fade{pointer-events:none;position:absolute;top:0;bottom:0;z-index:4;width:3.2rem}.hero-sections-scroll-fade-left{left:0;background:linear-gradient(90deg,#fffffffa,#fff0)}.hero-sections-scroll-fade-right{right:0;background:linear-gradient(270deg,#fffffffa,#fff0)}html.dark .hero-sections-scroll-fade-left{background:linear-gradient(90deg,#0f172af0,#0f172a00)}html.dark .hero-sections-scroll-fade-right{background:linear-gradient(270deg,#0f172af0,#0f172a00)}.hero-section-link{display:flex;align-items:flex-start;justify-content:space-between;gap:.7rem;flex:0 0 260px;width:260px;text-decoration:none;border-radius:.8rem;border:1px solid rgba(148,163,184,.35);background:#ffffffe6;padding:.72rem .8rem;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}html.dark .hero-section-link{border-color:#64748b99;background:#0206179e}.hero-section-link:hover,.hero-section-link:focus-visible{transform:translateY(-2px);border-color:#2563eb73;box-shadow:0 10px 20px #2563eb26;outline:none}.hero-section-link-title{margin:0;font-size:.85rem;font-weight:700;color:#0f172a}html.dark .hero-section-link-title{color:#f1f5f9}.hero-section-link-copy{margin:.15rem 0 0;font-size:.72rem;line-height:1.38;color:#475569}html.dark .hero-section-link-copy{color:#cbd5e1}.hero-section-link-icon{width:1.8rem;min-width:1.8rem;height:1.8rem;border-radius:.62rem;border:1px solid rgba(37,99,235,.22);background:#2563eb14;color:#2563eb;display:inline-flex;align-items:center;justify-content:center}html.dark .hero-section-link-icon{border-color:#3b82f657;background:#3b82f624;color:#93c5fd}@keyframes heroOverviewScroll{0%{transform:translate(-50%)}to{transform:translate(0)}}@media(max-width:639px){.hero-sections-scroll-container{padding:.5rem}.hero-section-link{flex-basis:220px;width:220px}}.animate-\[fadeInScale_0\.35s_ease-out\]{animation:fadeInScale var(--modal-enter-duration) ease-out!important}.animate-float,.animate-fade-in{will-change:transform,opacity}.experience-modal-scroll{scrollbar-width:thin;scrollbar-color:rgba(100,116,139,.42) transparent}html.dark .experience-modal-scroll{scrollbar-color:rgba(148,163,184,.32) transparent}.experience-modal-scroll::-webkit-scrollbar{width:10px;height:10px}.experience-modal-scroll::-webkit-scrollbar-track{background:transparent}.experience-modal-scroll::-webkit-scrollbar-thumb{border-radius:9999px;border:2px solid transparent;background-clip:padding-box;background-color:#64748b61}.experience-modal-scroll::-webkit-scrollbar-thumb:hover{background-color:#64748b85}html.dark .experience-modal-scroll::-webkit-scrollbar-thumb{background-color:#94a3b84d}html.dark .experience-modal-scroll::-webkit-scrollbar-thumb:hover{background-color:#94a3b86b}.experience-modal-scroll::-webkit-scrollbar-corner{background:transparent}.experience-timeline-entry{opacity:0;transform:translate3d(0,28px,0);filter:saturate(.88);transition:opacity .7s cubic-bezier(.22,1,.36,1),transform .7s cubic-bezier(.22,1,.36,1),filter .7s ease;will-change:transform,opacity}.experience-timeline-entry.is-visible{opacity:1;transform:translateZ(0);filter:saturate(1)}.experience-timeline-orb{box-shadow:0 0 0 8px #2563eb24}html.dark .experience-timeline-orb{box-shadow:0 0 0 8px #3b82f633}.experience-company-mark{transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease}@media(min-width:481px){:root{--fade-in-distance: 16px;--fade-in-duration: .72s;--float-distance: 14px;--float-duration: 6.5s;--social-float-distance: 4px;--social-float-duration: 4.5s;--typing-cursor-duration: 1.05s;--career-scroll-duration: 21s;--modal-enter-duration: .32s}}@media(min-width:769px){:root{--fade-in-distance: 20px;--fade-in-duration: .8s;--float-distance: 20px;--float-duration: 6s;--social-float-distance: 6px;--social-float-duration: 4s;--typing-cursor-duration: 1s;--career-scroll-duration: 18s;--modal-enter-duration: .35s;--sg-nav-offset: 6.25rem}}@media(max-width:640px){input,select,textarea{font-size:16px}}@media(prefers-reduced-motion:reduce){html:focus-within{scroll-behavior:auto}.animate-float,.animate-fade-in,.social-circle,.typing-cursor,.career-scroll-track,.hero-sections-scroll-track,.animate-\[fadeInScale_0\.35s_ease-out\]{animation:none!important;transform:none!important}.experience-timeline-entry{opacity:1!important;transform:none!important;filter:none!important;transition:none!important}[data-rotating-image],project-card{transition-duration:.01ms!important}}project-card{transition:opacity .3s ease,transform .3s ease}project-card[style*="display: none"]{opacity:0;transform:scale(.98)}body:after{content:"Generated from Sanele Gumede – BI Portfolio";display:block;margin-top:40px;font-size:12px;color:#64748b;text-align:center}body:after{content:none!important;display:none!important}.about-tabletop{height:12px;border-radius:9999px;background:linear-gradient(90deg,#2563eb2e,#0ea5e94d,#2563eb2e)}.about-main-layout{display:grid;gap:1.25rem}@media(min-width:1024px){.about-main-layout{grid-template-columns:minmax(0,1fr) 220px;align-items:center}}.about-floating-profile{width:min(220px,100%);margin-inline:auto;display:flex;flex-direction:column;align-items:center;gap:.75rem}.about-floating-profile-image{width:100%;aspect-ratio:1 / 1;border-radius:9999px;overflow:hidden;border:6px solid rgba(255,255,255,.95);background:#e2e8f052;box-shadow:0 18px 40px #0f172a38}html.dark .about-floating-profile-image{border-color:#0f172aeb;background:#0206176b}@keyframes aboutPortraitFloat{0%,to{transform:translateZ(0) scale(1)}50%{transform:translate3d(0,-8px,0) scale(1.01)}}.about-portrait-float{animation:aboutPortraitFloat 8.5s ease-in-out infinite;will-change:transform}.about-floating-profile-badge{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;min-width:132px;border-radius:.9rem;padding:.65rem .95rem;background:linear-gradient(135deg,#2563eb,#0ea5e9);color:#fff;box-shadow:0 14px 28px #2563eb57}.about-object-card{background:#ffffffc7;transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease}html.dark .about-object-card{background:#0f172acc}.about-object-card:hover{transform:translateY(-6px);border-color:#2563eb73;box-shadow:0 14px 26px #0f172a29}.about-flip-card{perspective:1000px}.about-flip-inner{position:relative;transform-style:preserve-3d;transition:transform .65s ease}.about-flip-card.is-flipped .about-flip-inner{transform:rotateY(180deg)}.about-flip-face{position:absolute;inset:0;backface-visibility:hidden;background:inherit}.about-flip-back{transform:rotateY(180deg)}.about-timeline-dot{width:20px;height:20px;border-radius:9999px;border:2px solid #2563eb;background:#fff;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease}html.dark .about-timeline-dot{background:#020617}.about-timeline-dot:hover{transform:scale(1.08)}.about-timeline-dot.active{background:#2563eb;box-shadow:0 0 0 6px #2563eb33}.about-social-link{width:42px;height:42px;border-radius:9999px;border:1px solid rgba(100,116,139,.55);color:#334155;display:inline-flex;align-items:center;justify-content:center;transition:transform .18s ease,color .18s ease,border-color .18s ease}html.dark .about-social-link{color:#cbd5e1;border-color:#94a3b873}.about-social-link:hover{transform:translateY(-3px);color:#2563eb;border-color:#2563eb}.about-bookshelf-scroll{display:flex;align-items:stretch;gap:1rem;overflow-x:auto;overflow-y:hidden;padding-inline:.125rem;scroll-padding-inline:.125rem;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:rgba(100,116,139,.36) transparent}.about-bookshelf-scroll::-webkit-scrollbar{height:8px}.about-bookshelf-scroll::-webkit-scrollbar-track{background:transparent}.about-bookshelf-scroll::-webkit-scrollbar-thumb{border-radius:9999px;background:#64748b57}.about-book-card{flex:0 0 11.5rem;width:11.5rem;min-width:11.5rem;background:linear-gradient(160deg,#f8fafce6,#f1f5f9e0);transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}html.dark .about-book-card{background:linear-gradient(160deg,#0f172ae6,#020617d9)}.about-book-card:hover{transform:translateY(-4px);border-color:#2563eb73}.about-book-card.active{border-color:#2563ebb3;box-shadow:0 0 0 3px #2563eb2e}@media(min-width:640px){.about-book-card{flex-basis:12.5rem;width:12.5rem;min-width:12.5rem}}@media(min-width:1024px){.about-book-card{flex-basis:13.5rem;width:13.5rem;min-width:13.5rem}}.about-book-cover-wrap{width:100%;aspect-ratio:4 / 5;border-radius:12px;overflow:hidden;background:#94a3b82e;display:flex;align-items:center;justify-content:center}.about-book-cover{width:100%;height:100%;object-fit:cover}.about-book-fallback{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-weight:700;color:#1e3a8a;background:linear-gradient(135deg,#bae6fd,#bfdbfe)}html.dark .about-book-fallback{color:#dbeafe;background:linear-gradient(135deg,#1e3a8a99,#2563eb73)}.about-book-detail-image-wrap{width:110px;min-width:110px;aspect-ratio:4 / 5;border-radius:12px;overflow:hidden;border:1px solid rgba(148,163,184,.35)}@media(max-width:640px){.about-book-detail-image-wrap{width:90px;min-width:90px}}.about-book-detail-image{width:100%;height:100%;object-fit:cover}.about-book-progress-track{width:100%;height:10px;border-radius:9999px;background:#94a3b847;overflow:hidden}.about-book-progress-bar{height:100%;min-width:10%;border-radius:9999px;background:linear-gradient(90deg,#2563eb,#0ea5e9);transition:width .26s ease}.about-books-takeaways{list-style:none;padding-left:0;margin:0;display:grid;gap:.45rem}.about-books-takeaways li{position:relative;padding-left:1rem;color:#334155;font-size:.92rem;line-height:1.45}html.dark .about-books-takeaways li{color:#cbd5e1}.about-books-takeaways li:before{content:"";position:absolute;left:0;top:.52rem;width:.42rem;height:.42rem;border-radius:9999px;background:#2563ebe6}@media(prefers-reduced-motion:reduce){.about-object-card,.about-flip-inner,.about-timeline-dot,.about-social-link,.about-book-card{transition:none!important;transform:none!important}}.project-engagement-action-bar{position:relative;overflow:visible;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.25rem}.project-engagement-action{position:relative;min-width:0;margin:0;overflow:visible}.project-engagement-action-like{z-index:4}.project-reaction-picker{position:relative;display:block;width:100%;z-index:4}.project-engagement-action-button,.project-reaction-trigger{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.3rem;width:100%;min-height:4rem;padding:.72rem .3rem .76rem;border:0;background:transparent;color:#475569;transition:background-color .18s ease,color .18s ease,transform .18s ease}html.dark .project-engagement-action-button,html.dark .project-reaction-trigger{color:#cbd5e1}.project-engagement-action-button:hover,.project-engagement-action-button:focus-visible,.project-engagement-action-button[aria-pressed=true],.project-engagement-action-button[aria-expanded=true],.project-reaction-picker:hover .project-reaction-trigger,.project-reaction-picker:focus-within .project-reaction-trigger,.project-reaction-picker[data-open=true] .project-reaction-trigger{background:#2563eb0d;color:#2563eb;outline:none;transform:translateY(-1px)}html.dark .project-engagement-action-button:hover,html.dark .project-engagement-action-button:focus-visible,html.dark .project-engagement-action-button[aria-pressed=true],html.dark .project-engagement-action-button[aria-expanded=true],html.dark .project-reaction-picker:hover .project-reaction-trigger,html.dark .project-reaction-picker:focus-within .project-reaction-trigger,html.dark .project-reaction-picker[data-open=true] .project-reaction-trigger{background:#3b82f629;color:#93c5fd}.project-engagement-action-button:disabled,.project-reaction-trigger:disabled{opacity:.65;cursor:wait}.project-engagement-action-icon,.project-reaction-trigger-icon{display:inline-flex;align-items:center;justify-content:center;width:1.05rem;height:1.05rem;font-size:.9rem;color:inherit}.project-engagement-action-label{font-size:.88rem;font-weight:500;line-height:1.1;text-align:center}.project-reaction-tray{position:absolute;left:0;bottom:calc(100% + .45rem);z-index:80;display:inline-flex;align-items:center;gap:.55rem;padding:.55rem .7rem;border:1px solid rgba(148,163,184,.34);border-radius:9999px;background:#fffffff7;box-shadow:0 18px 40px #0f172a2e;opacity:0;pointer-events:none;transform:translateY(10px) scale(.96);transform-origin:left bottom;transition:opacity .18s ease,transform .18s ease}html.dark .project-reaction-tray{background:#0f172af5;border-color:#475569bf;box-shadow:0 20px 42px #0206176b}.project-reaction-picker:hover .project-reaction-tray,.project-reaction-picker:focus-within .project-reaction-tray,.project-reaction-picker[data-open=true] .project-reaction-tray{opacity:1;pointer-events:auto;transform:translateY(0) scale(1)}.project-reaction-option{position:relative;display:inline-flex;align-items:center;justify-content:center;padding:0;border:0;background:transparent;border-radius:9999px;transition:transform .16s ease}.project-reaction-option:hover,.project-reaction-option:focus-visible,.project-reaction-option[aria-pressed=true]{transform:translateY(-6px) scale(1.06);outline:none}.project-reaction-option:disabled{opacity:.65;cursor:wait}.project-reaction-option-badge{display:inline-flex;align-items:center;justify-content:center;width:3rem;height:3rem;border-radius:9999px;border:1px solid rgba(148,163,184,.28);box-shadow:0 10px 24px #0f172a24;font-size:1.15rem}.project-reaction-option-label{position:absolute;left:50%;bottom:calc(100% + .45rem);transform:translate(-50%,6px);opacity:0;white-space:nowrap;border-radius:9999px;background:#0f172aeb;color:#f8fafc;padding:.28rem .55rem;font-size:.72rem;font-weight:700;letter-spacing:.01em;transition:opacity .16s ease,transform .16s ease}.project-reaction-option:hover .project-reaction-option-label,.project-reaction-option:focus-visible .project-reaction-option-label,.project-reaction-option[aria-pressed=true] .project-reaction-option-label{opacity:1;transform:translate(-50%)}.project-reaction-trigger-icon[data-reaction-tone=like]{color:#2563eb}.project-reaction-option-badge[data-reaction-tone=like]{background:linear-gradient(135deg,#2563eb,#60a5fa);color:#eff6ff}.project-reaction-trigger-icon[data-reaction-tone=heart]{color:#ef4444}.project-reaction-option-badge[data-reaction-tone=heart]{background:linear-gradient(135deg,#fb7185,#f97316);color:#fff7ed}.project-reaction-trigger-icon[data-reaction-tone=clap]{color:#22c55e}.project-reaction-option-badge[data-reaction-tone=clap]{background:linear-gradient(135deg,#22c55e,#84cc16);color:#f0fdf4}.project-reaction-trigger-icon[data-reaction-tone=insightful]{color:#d97706}.project-reaction-option-badge[data-reaction-tone=insightful]{background:linear-gradient(135deg,#f59e0b,#fcd34d);color:#422006}.project-engagement-panel[hidden]{display:none!important}.project-toc-card{position:relative;overflow:hidden}.project-value-chain-strip{position:relative}.project-value-chain-strip-frame{position:relative;overflow:hidden;padding:.9rem 0;border-radius:1.25rem;background:linear-gradient(180deg,#ffffffc2,#f8fafcf0);box-shadow:inset 0 1px #ffffffa3,0 8px 20px #0f172a0d}html.dark .project-value-chain-strip-frame{background:linear-gradient(180deg,#1e293b99,#0f172ac2);box-shadow:inset 0 1px #94a3b814}.project-value-chain-strip-frame:before,.project-value-chain-strip-frame:after{content:"";position:absolute;top:0;bottom:0;width:2.6rem;z-index:2;pointer-events:none}.project-value-chain-strip-frame:before{left:0;background:linear-gradient(90deg,#f8fafceb,#f8fafc00)}.project-value-chain-strip-frame:after{right:0;background:linear-gradient(270deg,#f8fafceb,#f8fafc00)}html.dark .project-value-chain-strip-frame:before{background:linear-gradient(90deg,#0f172ae6,#0f172a00)}html.dark .project-value-chain-strip-frame:after{background:linear-gradient(270deg,#0f172ae6,#0f172a00)}.project-value-chain-strip-list{display:flex;align-items:center;gap:.7rem;overflow-x:auto;padding:.25rem 1rem .15rem;scroll-snap-type:x proximity;scroll-behavior:smooth;scrollbar-width:none;cursor:grab;touch-action:pan-y;-webkit-overflow-scrolling:touch}.project-value-chain-strip-list::-webkit-scrollbar{display:none}.project-value-chain-strip-list[data-dragging=true]{cursor:grabbing;-webkit-user-select:none;user-select:none}.project-value-chain-strip-list[data-dragging=true] .project-value-chain-step{pointer-events:none}.project-value-chain-step{position:relative;flex:0 0 auto;scroll-snap-align:center;outline:none;z-index:1;cursor:default}.project-value-chain-step-row{display:inline-flex;align-items:center;gap:.65rem;min-width:max-content;padding:.2rem 0}.project-value-chain-step-badge{display:inline-flex;align-items:center;justify-content:center;position:relative;width:2.2rem;height:2.2rem;flex-shrink:0;border-radius:9999px;background:#e2e8f0e6;color:#64748b;font-size:.74rem;font-weight:800;letter-spacing:.02em;box-shadow:inset 0 0 0 1px #94a3b81f;transition:background-color .24s ease,color .24s ease,box-shadow .24s ease,transform .24s ease}html.dark .project-value-chain-step-badge{background:#334155e6;color:#94a3b8}.project-value-chain-step-number,.project-value-chain-step-check{position:absolute;inset:0;display:inline-flex;align-items:center;justify-content:center;transition:opacity .18s ease,transform .24s ease}.project-value-chain-step-number{opacity:1}.project-value-chain-step-check{opacity:0;transform:scale(.45) rotate(-18deg)}.project-value-chain-step-title{margin:0;color:#94a3b8;font-size:.98rem;font-weight:600;line-height:1.25;white-space:nowrap;transition:color .24s ease}html.dark .project-value-chain-step-title{color:#64748b}.project-value-chain-step-connector{display:block;width:2.85rem;height:1px;flex-shrink:0;background:#94a3b859;transition:background .24s ease}html.dark .project-value-chain-step-connector{background:#64748b94}.project-value-chain-step[data-stage-state=complete] .project-value-chain-step-badge,.project-value-chain-step[data-stage-state=current] .project-value-chain-step-badge{background:#22c55e;color:#f0fdf4;box-shadow:0 10px 22px #22c55e38}.project-value-chain-step[data-stage-state=current] .project-value-chain-step-badge{transform:scale(1.04);box-shadow:0 14px 28px #22c55e3d;animation:projectValueChainCurrentPulse 2.6s ease-in-out infinite}.project-value-chain-step[data-stage-state=complete] .project-value-chain-step-number,.project-value-chain-step[data-stage-state=current] .project-value-chain-step-number{opacity:0}.project-value-chain-step[data-stage-state=complete] .project-value-chain-step-check,.project-value-chain-step[data-stage-state=current] .project-value-chain-step-check{opacity:1;transform:scale(1) rotate(0);animation:projectValueChainCheckIn .32s cubic-bezier(.2,.9,.2,1) both}.project-value-chain-step[data-stage-state=complete] .project-value-chain-step-title,.project-value-chain-step[data-stage-state=current] .project-value-chain-step-title{color:#166534}html.dark .project-value-chain-step[data-stage-state=complete] .project-value-chain-step-title,html.dark .project-value-chain-step[data-stage-state=current] .project-value-chain-step-title{color:#bbf7d0}.project-value-chain-step[data-stage-state=complete] .project-value-chain-step-connector{background:#22c55e73}.project-value-chain-step[data-stage-state=current] .project-value-chain-step-connector{background:linear-gradient(90deg,#22c55e73,#94a3b852)}html.dark .project-value-chain-step[data-stage-state=current] .project-value-chain-step-connector{background:linear-gradient(90deg,#22c55e73,#64748b94)}.project-value-chain-step:hover,.project-value-chain-step:focus-visible,.project-value-chain-step:focus-within{z-index:6}.project-value-chain-step:focus-visible{outline:none}.project-value-chain-step:focus-visible .project-value-chain-step-row{border-radius:9999px;box-shadow:0 0 0 3px #2563eb24}.project-value-chain-tooltip-layer{position:relative;min-height:4.4rem;margin-top:.5rem}.project-value-chain-strip-note{position:absolute;top:0;left:var(--project-value-chain-tooltip-left, 50%);width:max-content;max-width:min(24rem,calc(100% - .75rem));margin:0;padding:.7rem .9rem;border-radius:1rem;border:1px solid rgba(37,99,235,.12);background:#fffffffa;box-shadow:0 18px 36px #0f172a1f,0 2px #ffffffbf inset;color:#475569;font-size:.79rem;line-height:1.5;pointer-events:none;opacity:0;transform:translate(-50%) translateY(10px) scale(.98);transform-origin:top center;transition:opacity .16s ease,transform .18s ease}.project-value-chain-strip-note:before{content:"";position:absolute;top:-.45rem;left:var(--project-value-chain-tooltip-arrow-left, 50%);width:.9rem;height:.9rem;border-top:1px solid rgba(37,99,235,.12);border-left:1px solid rgba(37,99,235,.12);background:#fffffffa;transform:translate(-50%) rotate(45deg);box-shadow:-3px -3px 10px #0f172a0a}.project-value-chain-strip-note[data-visible=true]{opacity:1;transform:translate(-50%) translateY(0) scale(1)}html.dark .project-value-chain-strip-note{border-color:#60a5fa24;background:#0f172afa;box-shadow:0 18px 34px #02061752,0 1px #94a3b80f inset;color:#cbd5e1}html.dark .project-value-chain-strip-note:before{border-top-color:#60a5fa24;border-left-color:#60a5fa24;background:#0f172afa;box-shadow:-3px -3px 10px #0206172e}.project-value-chain-strip-note[hidden]{display:none}@keyframes projectValueChainCheckIn{0%{opacity:0;transform:scale(.35) rotate(-18deg)}65%{opacity:1;transform:scale(1.08) rotate(0)}to{opacity:1;transform:scale(1) rotate(0)}}@keyframes projectValueChainCurrentPulse{0%,to{transform:scale(1.04);box-shadow:0 14px 28px #22c55e38}50%{transform:scale(1.085);box-shadow:0 18px 34px #22c55e4d}}@media(prefers-reduced-motion:reduce){.project-value-chain-step[data-stage-state=current] .project-value-chain-step-badge{animation:none}}.project-toc-card:before{content:"";position:absolute;inset:0 0 auto;height:5.5rem;background:radial-gradient(circle at top right,rgba(37,99,235,.12),transparent 48%),linear-gradient(180deg,rgba(148,163,184,.08),transparent);pointer-events:none}.project-toc-badge{display:inline-flex;align-items:center;justify-content:center;width:2.7rem;height:2.7rem;flex-shrink:0;border-radius:1rem;border:1px solid rgba(37,99,235,.18);background:#2563eb14;color:#2563eb;box-shadow:0 10px 24px #2563eb1f}html.dark .project-toc-badge{border-color:#60a5fa38;background:#2563eb24;color:#93c5fd}.project-toc-list{display:grid;gap:.7rem}.project-toc-link{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.85rem;padding:.9rem .95rem;border-radius:1.1rem;border:1px solid rgba(148,163,184,.16);background:#ffffffb8;color:inherit;text-decoration:none;box-shadow:0 10px 26px #0f172a0d;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease,background-color .18s ease}html.dark .project-toc-link{border-color:#47556980;background:#0f172a66;box-shadow:0 12px 26px #02061729}.project-toc-link:hover,.project-toc-link:focus-visible{border-color:#2563eb47;background:#2563eb0f;box-shadow:0 16px 34px #2563eb1a;transform:translateY(-1px);outline:none}html.dark .project-toc-link:hover,html.dark .project-toc-link:focus-visible{border-color:#60a5fa42;background:#1e293be0}.project-toc-index{display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;border-radius:9999px;background:linear-gradient(135deg,#2563eb24,#0ea5e924);color:#1d4ed8;font-size:.73rem;font-weight:800;letter-spacing:.08em}html.dark .project-toc-index{background:linear-gradient(135deg,#2563eb33,#0ea5e924);color:#bfdbfe}.project-toc-copy{min-width:0}.project-toc-title{display:block;color:#334155;font-size:.98rem;font-weight:600;line-height:1.35}html.dark .project-toc-title{color:#e2e8f0}.project-toc-arrow{color:#94a3b8;font-size:.82rem;transition:transform .18s ease,color .18s ease}.project-toc-link:hover .project-toc-arrow,.project-toc-link:focus-visible .project-toc-arrow{color:#2563eb;transform:translate(1px,-1px)}.project-rating-widget{position:relative;padding-top:1.9rem}.project-rating-caption{position:absolute;top:0;left:0;display:inline-flex;align-items:center;min-height:1.55rem;padding:.18rem .65rem;border-radius:9999px;background:#f59e0b1f;color:#b45309;font-size:.74rem;font-weight:700;letter-spacing:.01em;opacity:0;transform:translateY(6px);transition:opacity .16s ease,transform .16s ease}html.dark .project-rating-caption{background:#facc1524;color:#fde68a}.project-rating-caption[data-visible=true]{opacity:1;transform:translateY(0)}.project-rating-stars{display:inline-flex;align-items:center;gap:.2rem;flex-wrap:wrap}.project-rating-star{display:inline-flex;align-items:center;justify-content:center;width:2.35rem;height:2.35rem;padding:0;border:0;border-radius:9999px;background:transparent;color:#cbd5e1;font-size:1.45rem;transition:color .16s ease,transform .16s ease,text-shadow .16s ease}html.dark .project-rating-star{color:#475569}.project-rating-star:hover,.project-rating-star:focus-visible,.project-rating-star[data-active=true]{color:#f59e0b;outline:none}.project-rating-star[aria-pressed=true]{transform:translateY(-1px) scale(1.04);text-shadow:0 8px 18px rgba(245,158,11,.24)}.project-rating-star:disabled{opacity:.65;cursor:wait}@media(max-width:640px){.project-value-chain-strip-list{gap:.45rem;padding:.25rem .75rem .15rem}.project-value-chain-strip-frame{padding:.7rem 0}.project-value-chain-step-row{gap:.5rem}.project-value-chain-step-badge{width:1.8rem;height:1.8rem;font-size:.7rem}.project-value-chain-step-title{font-size:.9rem}.project-value-chain-step-connector{width:1.8rem}.project-value-chain-strip-note{max-width:min(18rem,calc(100% - .5rem));padding:.65rem .75rem;font-size:.75rem}.project-engagement-action-button,.project-reaction-trigger{min-height:3.75rem;padding:.62rem .15rem .68rem}.project-engagement-action-label{font-size:.78rem}.project-reaction-tray{gap:.4rem;padding:.5rem .6rem}.project-reaction-option-badge{width:2.7rem;height:2.7rem}.project-toc-link{gap:.7rem;padding:.82rem .8rem}.project-toc-index{width:1.8rem;height:1.8rem;font-size:.68rem}.project-toc-title{font-size:.92rem}.project-rating-widget{padding-top:1.75rem}.project-rating-star{width:2.1rem;height:2.1rem;font-size:1.28rem}}#skills-role-tabs{display:none}#skills-role-select-wrap{display:block}@media(min-width:768px){#skills-role-tabs{display:flex}#skills-role-select-wrap{display:none}}.skills-role-tabs{scrollbar-width:thin;scrollbar-color:rgba(100,116,139,.35) transparent}.skills-role-tabs::-webkit-scrollbar{height:8px}.skills-role-tabs::-webkit-scrollbar-track{background:transparent}.skills-role-tabs::-webkit-scrollbar-thumb{border-radius:9999px;background:#64748b52}.skills-role-tab{border:1px solid rgba(148,163,184,.55);color:#334155;background:#fffffff2;border-radius:9999px;padding:.48rem .9rem;font-size:.84rem;font-weight:600;white-space:nowrap;transition:all .18s ease}html.dark .skills-role-tab{color:#e2e8f0;background:#0f172ab8;border-color:#64748b9e}.skills-role-tab:hover{transform:translateY(-1px);border-color:#2563eb94}.skills-role-tab.is-active{color:#fff;border-color:#2563eb;background:linear-gradient(120deg,#2563eb,#1d4ed8);box-shadow:0 8px 20px #2563eb3d}.skills-tools-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}@media(min-width:1024px){.skills-tools-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.skills-tool-card{border:1px solid rgba(148,163,184,.48);border-radius:1rem;background:linear-gradient(160deg,#fffffffa,#f8fafcf2);padding:.9rem;text-align:left;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}html.dark .skills-tool-card{border-color:#64748b94;background:linear-gradient(160deg,#0f172af5,#020617eb)}.skills-tool-card:hover,.skills-tool-card:focus-visible{transform:translateY(-4px);border-color:#2563eb9e;box-shadow:0 14px 28px #0f172a29;outline:none}html.dark .skills-tool-card:hover,html.dark .skills-tool-card:focus-visible{box-shadow:0 16px 32px #0206177a}.skills-tool-icon{display:inline-flex;align-items:center;justify-content:center;width:2.1rem;height:2.1rem;border-radius:.75rem;background:#2563eb1f;color:#1d4ed8;font-size:1rem}html.dark .skills-tool-icon{color:#93c5fd;background:#3b82f629}.skills-level-pill{display:inline-flex;align-items:center;border-radius:9999px;padding:.2rem .56rem;font-size:.66rem;font-weight:700;letter-spacing:.03em}.skills-level-pill-expert{background:#1e40af1f;color:#1e40af}.skills-level-pill-proficient{background:#0d948824;color:#0f766e}.skills-level-pill-working{background:#d9770629;color:#b45309}html.dark .skills-level-pill-expert{background:#1e40af42;color:#bfdbfe}html.dark .skills-level-pill-proficient{background:#0d94883d;color:#99f6e4}html.dark .skills-level-pill-working{background:#d9770642;color:#fde68a}.skills-proficiency-track{height:8px;border-radius:9999px;overflow:hidden;background:#94a3b847}.skills-proficiency-fill{display:block;height:100%;border-radius:9999px;transition:width .26s ease}.skills-bar-expert{background:linear-gradient(90deg,#1e3a8a,#2563eb)}.skills-bar-proficient{background:linear-gradient(90deg,#0f766e,#14b8a6)}.skills-bar-working{background:linear-gradient(90deg,#b45309,#f59e0b)}.skills-tool-detail{opacity:0;transform:translateY(6px);transition:opacity .18s ease,transform .18s ease}.skills-tool-card:hover .skills-tool-detail,.skills-tool-card:focus-visible .skills-tool-detail{opacity:1;transform:translateY(0)}.skills-toast{position:fixed;right:calc(1.25rem + env(safe-area-inset-right));bottom:calc(1.25rem + env(safe-area-inset-bottom));width:min(340px,calc(100vw - 2.5rem));max-width:340px;z-index:60;border-radius:.9rem;background:#020617eb;color:#f8fafc;border:1px solid rgba(148,163,184,.34);box-shadow:0 20px 42px #02061759;padding:.72rem .84rem;font-size:.83rem;line-height:1.45;opacity:0;pointer-events:none;transform:translateY(8px);transition:opacity .18s ease,transform .18s ease}.skills-toast.is-visible{opacity:1;transform:translateY(0)}@media(prefers-reduced-motion:reduce){.skills-role-tab,.skills-tool-card,.skills-tool-detail,.skills-toast,.skills-proficiency-fill{transition:none!important;transform:none!important}}.capability-summary{list-style:none}.capability-summary::-webkit-details-marker{display:none}.capability-journey-track{position:relative}.capability-journey-line{position:absolute;--capability-journey-node-size: .75rem;--capability-journey-steps-padding-left: 2.5rem;--capability-journey-line-left: 1.375rem;left:var(--capability-journey-line-left);top:2rem;bottom:2rem;width:1px;z-index:0;overflow:hidden;background:linear-gradient(180deg,#2563eb99,#38bdf852 48%,#34d39947)}.capability-journey-line:after{content:"";position:absolute;left:0;top:-30%;width:1px;height:5.5rem;background:linear-gradient(180deg,#2563eb00,#2563ebd9 35%,#38bdf8a6 55%,#34d3998c 72%,#34d39900);filter:blur(.2px);animation:capabilityJourneyFlow 3.4s linear infinite}.capability-journey-steps{padding-left:2.5rem;position:relative;z-index:1}.capability-journey-step{position:relative}.capability-journey-step:before{content:"";position:absolute;left:-1.5rem;top:2.05rem;width:.75rem;height:.75rem;border-radius:9999px;background:#f8fafceb;border:2px solid rgba(37,99,235,.55);box-shadow:0 10px 22px #0f172a1f;z-index:2;animation:capabilityJourneyNodeGlow 2.6s ease-in-out infinite}html.dark .capability-journey-step:before{background:#020617b8;border-color:#93c5fd80;box-shadow:0 14px 28px #02061780}.capability-journey-step[open]:before{border-color:#2563ebd9;box-shadow:0 0 0 6px #2563eb1f,0 0 18px #3b82f673,0 14px 28px #0f172a24}html.dark .capability-journey-step[open]:before{border-color:#93c5fdbf;box-shadow:0 0 0 6px #3b82f629,0 0 18px #3b82f659,0 18px 34px #02061799}.capability-journey-step:nth-of-type(1):before{animation-delay:0ms}.capability-journey-step:nth-of-type(2):before{animation-delay:.24s}.capability-journey-step:nth-of-type(3):before{animation-delay:.48s}.capability-journey-step:nth-of-type(4):before{animation-delay:.72s}.capability-journey-step:nth-of-type(5):before{animation-delay:.96s}@keyframes capabilityJourneyFlow{0%{transform:translateY(0);opacity:0}10%{opacity:1}90%{opacity:1}to{transform:translateY(160%);opacity:0}}@keyframes capabilityJourneyNodeGlow{0%{transform:translateY(0);box-shadow:0 10px 22px #0f172a1f,0 0 #2563eb00}45%{box-shadow:0 10px 22px #0f172a1f,0 0 0 6px #2563eb1f,0 0 18px #3b82f659}to{box-shadow:0 10px 22px #0f172a1f,0 0 #2563eb00}}@media(min-width:640px){.capability-journey-step:before{top:2.2rem}}@media(prefers-reduced-motion:reduce){.capability-journey-line:after,.capability-journey-step:before{animation:none!important}}.sg-markdown{color:#334155;line-height:1.75}html.dark .sg-markdown{color:#cbd5e1}.sg-markdown>:first-child{margin-top:0}.sg-markdown>:last-child{margin-bottom:0}.sg-md-heading{margin:1.5rem 0 .7rem;color:#0f172a;font-weight:700;letter-spacing:-.02em}html.dark .sg-md-heading{color:#f8fafc}.sg-md-heading-1{font-size:clamp(1.9rem,3vw,2.6rem)}.sg-md-heading-2{font-size:clamp(1.45rem,2.4vw,1.9rem)}.sg-md-heading-3{font-size:clamp(1.15rem,2vw,1.35rem)}.sg-md-heading-4,.sg-md-heading-5,.sg-md-heading-6{font-size:1rem}.sg-md-paragraph{margin:0 0 1rem}.sg-md-link{color:#2563eb;font-weight:600;text-decoration:underline;text-decoration-color:#2563eb59;text-underline-offset:.18em}html.dark .sg-md-link{color:#93c5fd;text-decoration-color:#93c5fd66}.sg-md-inline-code,.sg-md-code-block code{font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace}.sg-md-inline-code{display:inline-block;border-radius:.5rem;background:#94a3b829;padding:.12rem .4rem;color:#0f172a;font-size:.92em}html.dark .sg-md-inline-code{background:#1e293beb;color:#e2e8f0}.sg-md-code-block{overflow-x:auto;margin:1.15rem 0;border-radius:1rem;border:1px solid rgba(148,163,184,.22);background:#0f172a;padding:.95rem 1rem;color:#e2e8f0;box-shadow:inset 0 1px #ffffff0a}html.dark .sg-md-code-block{border-color:#334155e6;background:#020617}.sg-md-blockquote{margin:1.2rem 0;border-left:4px solid rgba(37,99,235,.5);background:#2563eb14;padding:.85rem 1rem;border-radius:0 1rem 1rem 0}html.dark .sg-md-blockquote{border-left-color:#60a5fa99;background:#1e293bb8}.sg-md-list{margin:0 0 1rem;padding-left:1.4rem;display:grid;gap:.45rem}.sg-md-list-item{padding-left:.15rem}.sg-md-image{width:100%;margin:1rem 0;border-radius:1rem;border:1px solid rgba(148,163,184,.22);background:#0f172a0a;object-fit:cover;box-shadow:0 16px 32px #0f172a1f}html.dark .sg-md-image{border-color:#475569b8;background:#0f172ab8;box-shadow:0 18px 36px #02061759}button[aria-busy=true]{cursor:wait}button[aria-busy=true]:before{content:"";display:inline-block;width:.9rem;height:.9rem;margin-right:.55rem;border-radius:9999px;border:2px solid currentColor;border-right-color:transparent;vertical-align:-.15rem;animation:adminSubmitSpin .8s linear infinite}@keyframes adminSubmitSpin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){button[aria-busy=true]:before{animation:none}}
