:root{--black-a1:rgba(0,0,0,.05);--black-a2:rgba(0,0,0,.1);--black-a3:rgba(0,0,0,.15);--black-a4:rgba(0,0,0,.2);--black-a5:rgba(0,0,0,.3);--black-a6:rgba(0,0,0,.4);--black-a7:rgba(0,0,0,.5);--black-a8:rgba(0,0,0,.6);--black-a9:rgba(0,0,0,.7);--black-a10:rgba(0,0,0,.8);--black-a11:rgba(0,0,0,.9);--black-a12:rgba(0,0,0,.95)}@supports (color:color(display-p3 1 1 1)){@media (color-gamut:p3){:root{--black-a1:color(display-p3 0 0 0/.05);--black-a2:color(display-p3 0 0 0/.1);--black-a3:color(display-p3 0 0 0/.15);--black-a4:color(display-p3 0 0 0/.2);--black-a5:color(display-p3 0 0 0/.3);--black-a6:color(display-p3 0 0 0/.4);--black-a7:color(display-p3 0 0 0/.5);--black-a8:color(display-p3 0 0 0/.6);--black-a9:color(display-p3 0 0 0/.7);--black-a10:color(display-p3 0 0 0/.8);--black-a11:color(display-p3 0 0 0/.9);--black-a12:color(display-p3 0 0 0/.95)}}}.light,.light-theme,:root{--indigo-1:#fdfdfe;--indigo-2:#f7f9ff;--indigo-3:#edf2fe;--indigo-4:#e1e9ff;--indigo-5:#d2deff;--indigo-6:#c1d0ff;--indigo-7:#abbdf9;--indigo-8:#8da4ef;--indigo-9:#3e63dd;--indigo-10:#3358d4;--indigo-11:#3a5bc7;--indigo-12:#1f2d5c}@supports (color:color(display-p3 1 1 1)){@media (color-gamut:p3){.light,.light-theme,:root{--indigo-1:color(display-p3 .992 .992 .996);--indigo-2:color(display-p3 .971 .977 .998);--indigo-3:color(display-p3 .933 .948 .992);--indigo-4:color(display-p3 .885 .914 1);--indigo-5:color(display-p3 .831 .87 1);--indigo-6:color(display-p3 .767 .814 .995);--indigo-7:color(display-p3 .685 .74 .957);--indigo-8:color(display-p3 .569 .639 .916);--indigo-9:color(display-p3 .276 .384 .837);--indigo-10:color(display-p3 .234 .343 .801);--indigo-11:color(display-p3 .256 .354 .755);--indigo-12:color(display-p3 .133 .175 .348)}}}.light,.light-theme,:root{--mauve-1:#fdfcfd;--mauve-2:#faf9fb;--mauve-3:#f2eff3;--mauve-4:#eae7ec;--mauve-5:#e3dfe6;--mauve-6:#dbd8e0;--mauve-7:#d0cdd7;--mauve-8:#bcbac7;--mauve-9:#8e8c99;--mauve-10:#84828e;--mauve-11:#65636d;--mauve-12:#211f26}@supports (color:color(display-p3 1 1 1)){@media (color-gamut:p3){.light,.light-theme,:root{--mauve-1:color(display-p3 .991 .988 .992);--mauve-2:color(display-p3 .98 .976 .984);--mauve-3:color(display-p3 .946 .938 .952);--mauve-4:color(display-p3 .915 .906 .925);--mauve-5:color(display-p3 .886 .876 .901);--mauve-6:color(display-p3 .856 .846 .875);--mauve-7:color(display-p3 .814 .804 .84);--mauve-8:color(display-p3 .735 .728 .777);--mauve-9:color(display-p3 .555 .549 .596);--mauve-10:color(display-p3 .514 .508 .552);--mauve-11:color(display-p3 .395 .388 .424);--mauve-12:color(display-p3 .128 .122 .147)}}}:root{--neon-cyan:#0ff;--neon-pink:#f0c;--neon-green:#0f0;--neon-purple:#90f;--neon-yellow:#ff0;--neon-orange:#f90;--neon-cyan-gradient:linear-gradient(to top left,var(--neon-cyan),#55595e);--neon-pink-gradient:linear-gradient(to top left,var(--neon-pink),#55595e);--neon-green-gradient:linear-gradient(to top left,var(--neon-green),#55595e);--neon-purple-gradient:linear-gradient(to top left,var(--neon-purple),oklch(from var(--neon-pink) l c h));--neon-yellow-gradient:linear-gradient(to top left,var(--neon-yellow),#55595e);--neon-orange-gradient:linear-gradient(to top left,var(--neon-orange),#55595e);--neon-bg-1:linear-gradient(290deg,#3e6052,#3c6d68 11%,#376f7b 22%,#31618c 33%,#2c489b 44%,#2c25b1 56%,#551dc3 67%,#8f15d5 78%,#d70bea 89%,#f0c);--neon-bg-2:linear-gradient(290deg,#0ff,#010101);--neon-bg-3:linear-gradient(45deg,#f0c,#010101);--neon-bg-4:linear-gradient(290deg,#05ffff,#1ff0ff 12%,#47ddff 21%,#38bdfa 0,#57a3e5 26%,#4770bd 29%,#4a79c9 46%,#4b72b9 49%,#5e6db5 51%,#867981 52%,#747272 53%,#836773 0,#94617b 0,#9f5683 0,#a94c8f 0,#af419b 54%,#b332aa 56%,#b425bb 59%,#b115d1 66%,#aa04e7 77%,#90f);--neon-bg-5:linear-gradient(45deg,red,#f50 11%,#fa0 22%,#ff0 33%,#af0 44%,#5f0 56%,#0f0 67%,#0f5 78%,#0fa 89%,#0ff);--neon-bg-6:linear-gradient(70deg,#ff61ff 1%,#e459ee 33%,#cb4cdc 42%,#b244ca 46%,#9a38b7 49%,#842ea8 50%,#6d2494 51%,#581a84 0,#411070 0,#2d075f 0,#18004d 0,#001761 0,#002770 0,#00377a 0,#004585 0,#00568f 50%,#006394 51%,#007099 54%,#00819e 58%,#0090a3 67%,#139da4 99%);--neon-bg-7:linear-gradient(300deg,#0ff 1%,#00f2ff 33%,#00e1ff 42%,#00d0ff 46%,#00bfff 49%,#00aeff 50%,#09f 51%,#0084ff 0,#006aff 0,#0048ff 0,#1500ff 0,#50f 0,#7606fe 0,#8f10fe 0,#a31bfe 0,#b526fd 50%,#c630fd 51%,#d73ffd 54%,#e549fd 58%,#f358fe 67%,#ff61ff 99%)}.neon-bg-1{background:var(--neon-bg-1)}.neon-bg-1,.neon-bg-2{color:var(--background)}.neon-bg-2{background:var(--neon-bg-2)}.neon-bg-3{background:var(--neon-bg-3)}.neon-bg-3,.neon-bg-4{color:var(--background)}.neon-bg-4{background:var(--neon-bg-4)}.neon-bg-5{background:var(--neon-bg-5)}.neon-bg-5,.neon-bg-6{color:var(--background)}.neon-bg-6{background:var(--neon-bg-6)}.neon-bg-6 .CalloutHeading{color:var(--text-color)}.neon-bg-7{background:var(--neon-bg-7)}.neon-bg-7,.neon-bg-7 .CalloutHeading{color:var(--background)}button,p{color:var(--text-color)}p{line-height:1.75}main>ul{line-height:2;margin:1rem 0 2rem 2rem}main>ul li{margin:.5rem 0}pre{margin:2rem 0}.SocialLinks{display:grid;gap:.5rem;grid-template-columns:repeat(auto-fill,minmax(7rem,1fr));grid-template-rows:1fr;margin-top:1rem}.SocialLinks label{align-self:flex-start}.SocialLinks a{align-content:center;align-items:center;color:var(--neon-purple)!important;cursor:pointer;display:grid;font-size:1.5rem;grid-template-columns:2.5rem 1fr;justify-content:stretch;line-height:125%;text-wrap:nowrap}.SocialLinks a svg.icon{height:2.5rem;margin:.25rem;width:2.5rem}.SocialLinks a .Icon{align-items:center;display:inline-block;height:2.5rem;justify-content:center;place-self:center;width:2.5rem}.NavigationMenuRoot{display:flex;justify-content:center;position:relative;width:100%;z-index:100}.NavigationMenuList{align-items:center;border-radius:.5rem;display:grid;gap:.5rem;grid-template-columns:2.5rem 1fr;grid-template-rows:1fr 1fr 1fr;justify-content:center;margin:0;padding:.5rem;text-wrap:nowrap}@media only screen and (min-width:350px){.NavigationMenuList{grid-template-columns:3rem 1fr}}.searchToggle{align-self:center;grid-column:1;grid-row:1/-1;height:auto;justify-self:center}.searchToggle button{-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);background:#152028b3;border:1px solid rgba(0,255,255,.2);border-radius:.75rem;box-shadow:0 0 20px #00ffff1a,inset 0 1px #ffffff1a;overflow:hidden;padding:.5rem;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1)}.searchToggle button:before{background:linear-gradient(90deg,transparent,rgba(0,255,255,.1),transparent);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .6s ease;width:100%}.searchToggle button:hover{background:#152028e6;border-color:#00ffff80;box-shadow:0 0 40px #00ffff4d,0 0 20px #f0c3,inset 0 1px #fff3;transform:translateY(-2px) scale(1.05)}.searchToggle button:hover:before{left:100%}.searchToggle button:focus{border-color:#00ffff80;box-shadow:0 0 0 2px #0ff9,0 0 30px #00ffff4d,inset 0 1px #fff3;outline:none}@media (min-width:640px){.searchToggle button{padding:.6rem}}.searchToggle svg{color:var(--neon-cyan);filter:drop-shadow(0 0 8px rgba(0,255,255,.5));max-width:1.5rem;transition:all .3s ease}@media (min-width:640px){.searchToggle svg{max-width:1.75rem}}@media only screen and (min-width:580px){.NavigationMenuList{align-items:center;gap:1rem;grid-template-columns:3.5rem repeat(3,minmax(5rem,1fr));grid-template-rows:1fr}.NavigationMenuList li{grid-column:unset}.searchToggle{align-self:center;grid-column:1;grid-row:unset;height:unset;justify-self:center;width:auto}}.ViewportPosition{top:5.6rem;z-index:200}@media (min-width:640px){.ViewportPosition{top:4.5rem}}.NavigationMenuLink,.NavigationMenuTrigger{-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);background:#152028b3;border:1px solid rgba(0,255,255,.2);border-radius:.75rem;box-shadow:0 0 20px #00ffff1a,inset 0 1px #ffffff1a;color:var(--text-color);cursor:pointer;font-size:1.125rem;font-weight:500;line-height:1;overflow:hidden;padding:.5rem .75rem;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1);-webkit-user-select:none;-moz-user-select:none;user-select:none}@media (min-width:640px){.NavigationMenuLink,.NavigationMenuTrigger{font-size:1.25rem;padding:.6rem 1rem}}.NavigationMenuLink:before,.NavigationMenuTrigger:before{background:linear-gradient(90deg,transparent,rgba(0,255,255,.1),transparent);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .6s ease;width:100%}.NavigationMenuLink:focus,.NavigationMenuTrigger:focus{border-color:#00ffff80;box-shadow:0 0 0 2px #0ff9,0 0 30px #00ffff4d,inset 0 1px #fff3;outline:none}.NavigationMenuLink:hover,.NavigationMenuTrigger:hover{background:#152028e6;border-color:#00ffff80;box-shadow:0 0 40px #00ffff4d,0 0 20px #f0c3,inset 0 1px #fff3;color:#fff;transform:translateY(-2px) scale(1.02)}.NavigationMenuLink:hover:before,.NavigationMenuTrigger:hover:before{left:100%}.NavigationMenuTrigger{align-items:center;display:flex;gap:.25rem;justify-content:space-between;margin:0 auto}.CaretDown{transition:transform .2s ease}.NavigationMenuTrigger[data-state=open]{background:#152028f2;border-color:#0ff9;box-shadow:0 0 30px #0ff6,0 0 15px #ff00cc4d,inset 0 1px #fff3;color:#fff}.NavigationMenuTrigger[data-state=open] .CaretDown{filter:drop-shadow(0 0 4px rgba(0,255,255,.6));transform:rotate(180deg)}.NavigationMenuLink{display:block;font-size:1.2rem;line-height:1;text-decoration:none}.NavigationMenuContent{animation-duration:.3s;animation-timing-function:cubic-bezier(.4,0,.2,1);left:0;padding:1rem;position:absolute;top:0;width:100%}.NavigationMenuContent[data-motion=from-start]{overflow:scroll}@media (min-width:768px){.NavigationMenuContent[data-motion=from-start]{overflow:hidden}}.NavigationMenuContent[data-motion=from-start]{animation-name:enterFromLeft}.NavigationMenuContent[data-motion=from-end]{overflow:scroll}@media (min-width:768px){.NavigationMenuContent[data-motion=from-end]{overflow:hidden}}.NavigationMenuContent[data-motion=from-end]{animation-name:enterFromRight}.NavigationMenuContent[data-motion=to-start]{overflow:scroll}@media (min-width:768px){.NavigationMenuContent[data-motion=to-start]{overflow:hidden}}.NavigationMenuContent[data-motion=to-start]{animation-name:exitToLeft}.NavigationMenuContent[data-motion=to-end]{overflow:scroll}@media (min-width:768px){.NavigationMenuContent[data-motion=to-end]{overflow:hidden}}.NavigationMenuContent[data-motion=to-end]{animation-name:exitToRight}@media (min-width:640px){.NavigationMenuContent{min-width:90vw;width:95%}}@media (min-width:768px){.NavigationMenuContent{max-width:85vw;min-width:680px;width:auto}}.NavigationMenuIndicator{align-items:flex-end;display:flex;height:12px;justify-content:center;overflow:hidden;top:100%;transition:width,transform .25s ease;z-index:1}.NavigationMenuIndicator[data-state=visible]{animation:fadeIn .2s ease}.NavigationMenuIndicator[data-state=hidden]{animation:fadeOut .2s ease}.NavigationMenuViewport{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#152028f2;border:1px solid hsla(0,0%,100%,.1);border-radius:1rem;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a,0 0 40px #00ffff1a;height:var(--radix-navigation-menu-viewport-height);margin-bottom:3rem;margin-top:.75rem;max-height:75vh;overflow-x:hidden;overflow-y:auto;position:relative;scrollbar-color:rgba(0,255,255,.3) transparent;scrollbar-width:thin;transform-origin:top center;transition:all .3s cubic-bezier(.4,0,.2,1);width:100%}.NavigationMenuViewport::-webkit-scrollbar{width:8px}.NavigationMenuViewport::-webkit-scrollbar-track{background:#ffffff0d;border-radius:4px}.NavigationMenuViewport::-webkit-scrollbar-thumb{background:#00ffff4d;border-radius:4px}.NavigationMenuViewport::-webkit-scrollbar-thumb:hover{background:#00ffff80}.NavigationMenuViewport h4{color:var(--neon-cyan);margin:0 1rem;opacity:.8}.NavigationMenuViewport[data-state=open]{animation:menuSlideDown .3s cubic-bezier(.4,0,.2,1)}.NavigationMenuViewport[data-state=closed]{animation:menuSlideUp .3s cubic-bezier(.4,0,.2,1)}@keyframes menuSlideDown{0%{opacity:0;transform:scale(.95) translateY(-10px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes menuSlideUp{0%{opacity:1;transform:scale(1) translateY(0)}to{opacity:0;transform:scale(.95) translateY(-10px)}}@media only screen and (min-width:600px){.NavigationMenuViewport{width:var(--radix-navigation-menu-viewport-width)}}.contact-info-list .Callout{max-width:100%;padding:.5em;row-gap:.5rem}.contact-info-list .Callout a{text-align:center}.contact-info-list img{background-color:var(--highlight);border:.25rem solid var(--highlight);border-radius:.5rem;margin:.1rem auto}.List{display:grid;gap:1rem;list-style:none;padding:0 .25rem .25rem;width:100%}.List.one{grid-template-rows:140px 50px auto;text-shadow:1px 1px 1.5px #444}.List.two{font-weight:800;grid-template-columns:1fr 1fr}.List.three{grid-template-columns:1fr 1fr 1fr}.panel-projects{grid-column:unset;grid-row:1/-1}@media only screen and (max-width:580px){.panel-projects{grid-column:1/-1;grid-row:unset}.List{gap:1rem;padding:0}.List.one{grid-template-columns:1fr;max-width:100vw}.List.two{grid-template-columns:40% auto;max-width:100vw}}@media (min-width:640px){.List.one{grid-template-columns:.9fr 1fr;max-width:100vw}.List.two{grid-template-rows:repeat(2,1fr);max-width:100vw}}@media (min-width:768px){.List.one{grid-template-columns:.9fr 1fr;max-width:85vw}.List.two{grid-template-rows:repeat(2,1fr);max-width:85vw}}.item-list-lg>*{min-height:14.375rem}.item-list-md>*{min-height:10.625rem}.item-list-sm>*{min-height:3.75rem}.ListItemLink{border-radius:.5rem;display:block;font-size:15px;line-height:1;padding:.75rem;text-decoration:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.ListItemLink:focus{box-shadow:0 0 0 2px var(--neon-purple)}.ListItemLink:hover{background-color:var(--mauve-3)}.ListItemHeading{color:var(--neon-pink);font-weight:500;line-height:1.2;margin-bottom:5px}.ListItemText{color:var(--mauve-11);line-height:1.4}.Callout{border-radius:.5rem;display:flex;flex-direction:column;height:100%;justify-content:flex-start;padding:1.5rem;text-decoration:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;width:100%}.Callout a{color:#fff}.Callout:focus{box-shadow:0 0 0 2px var(--neon-pink)}.CalloutHeading{color:#fff;font-size:1.75rem;font-weight:500;line-height:1.1}.ContactSubMenu{padding:.5rem 0}.ContactSubMenu .CalloutHeading{color:var(--accent)}.CalloutText{display:grid;font-size:1.2rem;font-weight:300;gap:1rem;line-height:1.3;margin-top:1rem}.CalloutText .CategoryItem{width:38%}.CalloutText a.CalloutItem{text-shadow:1px 1px 1px #333,1px 2px 2px #666,2.5px 3.5px 2.5px #999}.item-quizzes{grid-row:span 1}.item-categories,.item-popular{grid-row:span 2}.item-categories .CalloutText{display:grid;grid-template-columns:repeat(auto-fill,minmax(5.5rem,1fr));text-wrap:nowrap}.CategoryItem{width:38%}.ViewportPosition{display:flex;justify-content:flex-end;padding-inline:1rem;perspective:600px;position:absolute;transition:top .25s ease;width:calc(100vw - 2rem)}@media (min-width:640px){.ViewportPosition{width:calc(100% - 2rem)}}@media (min-width:768px){.ViewportPosition{width:calc(100% - 2rem)}}.CaretDown{color:var(--neon-pink);position:relative;top:1px;transition:transform .25s ease-in-out,color .25s ease-in}[data-state=open]>.CaretDown{color:var(--neon-cyan);transform:rotate(-180deg)}.Arrow{background-color:#fff;border-top-left-radius:2px;height:10px;position:relative;top:70%;transform:rotate(45deg);width:10px}.Callout .CalloutItem{font-size:1.1rem}.Callout .CalloutItem sup{display:block;height:1rem;margin-top:.8rem;opacity:.5}.ArticleCard{width:16rem}.ArticleCard img{border-radius:100%;height:120px;width:120px}@keyframes enterFromRight{0%{opacity:0;transform:translate(200px)}to{opacity:1;transform:translate(0)}}@keyframes enterFromLeft{0%{opacity:0;transform:translate(-200px)}to{opacity:1;transform:translate(0)}}@keyframes exitToRight{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(200px)}}@keyframes exitToLeft{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(-200px)}}@keyframes scaleIn{0%{opacity:0;transform:rotateX(-30deg) scale(.9)}to{opacity:1;transform:rotateX(0) scale(1)}}@keyframes scaleOut{0%{opacity:1;transform:rotateX(0) scale(1)}to{opacity:0;transform:rotateX(-10deg) scale(.95)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}:focus,button:focus{outline:2px solid var(--neon-pink)!important}
