:root{--ink:#1d1d1d;--muted:#666;--soft:#f1f1ee;--surface:#fff;--panel:#f7f7f5;--panel-dark:#1d1d1d;--reverse:#fff;--line:#ddddda;--line-dark:#343434;--shadow:0 12px 38px #1d1d1d17;--shadow-small:0 5px 16px #1d1d1d12}*{box-sizing:border-box}html{scroll-behavior:smooth}body{color:var(--ink);background:var(--soft);margin:0;line-height:1.65}a{color:inherit}button,input,textarea{font:inherit}img{max-width:100%}::selection{color:var(--reverse);background:var(--ink)}:focus-visible{outline:2px solid var(--ink);outline-offset:3px}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}h1,h2,h3,h4,p{letter-spacing:0;margin:0}h1,h2,h3,h4{line-height:1.12}h1{font-size:4.5rem}h2{font-size:2.25rem}h3{font-size:1.15rem}.site-shell{flex-direction:column;min-height:100vh;display:flex}.site-frame{background:var(--surface);width:min(1180px,100% - 40px);min-height:calc(100vh - 64px);box-shadow:var(--shadow);grid-template-columns:88px minmax(0,1fr);margin:32px auto 0;display:grid;position:relative;overflow:clip}.identity-rail{border-right:1px solid var(--line);flex-direction:column;align-items:center;min-height:100%;padding:26px 0;display:flex}.nav-logo{width:44px;height:44px;color:var(--reverse);background:var(--ink);place-items:center;font-size:1rem;font-weight:800;line-height:1;text-decoration:none;display:inline-grid}.social-rail{gap:18px;margin-top:auto;display:grid}.social-rail a{width:36px;height:36px;color:var(--muted);place-items:center;text-decoration:none;display:grid}.social-rail a:hover{color:var(--reverse);background:var(--ink)}.site-canvas{flex-direction:column;min-width:0;display:flex}.nav-bar{border-bottom:1px solid var(--line);background:var(--surface);align-items:center;gap:22px;min-height:74px;padding:0 42px;display:flex}.header-email{color:var(--muted);align-items:center;gap:9px;font-size:.78rem;font-weight:600;text-decoration:none;display:inline-flex}.header-email:hover{color:var(--ink)}.nav-container{margin-left:auto}.nav-menu{align-items:center;gap:4px;margin:0;padding:0;list-style:none;display:flex}.nav-menu a,.mobile-nav a{text-transform:capitalize;align-items:center;gap:7px;padding:8px 10px;font-size:.82rem;font-weight:700;text-decoration:none;display:inline-flex}.nav-menu a:hover,.nav-menu a:focus-visible,.mobile-nav a:hover{color:var(--reverse);background:var(--ink);text-decoration:none}.mobile-nav{margin-left:auto;display:none}.mobile-nav summary{cursor:pointer;place-items:center;width:42px;height:42px;list-style:none;display:grid}.mobile-nav summary::-webkit-details-marker{display:none}.mobile-nav nav{z-index:20;background:var(--surface);min-width:190px;box-shadow:var(--shadow);padding:10px;display:grid;position:absolute;top:66px;right:20px}.main{flex:1;min-width:0;padding:46px 54px 84px}.portfolio-hero{grid-template-columns:minmax(0,1fr) minmax(340px,.82fr);align-items:center;gap:42px;min-height:545px;padding:16px 0 58px;display:grid}.hero-copy{z-index:1;position:relative}.callout-label,.section-kicker{min-height:28px;color:var(--reverse);background:var(--ink);letter-spacing:0;text-transform:uppercase;align-items:center;font-size:.72rem;font-weight:700;display:inline-flex}.callout-label{margin-bottom:20px;padding:4px 10px}.hero-copy h1{max-width:600px;font-size:4.75rem;font-weight:800;line-height:.98}.hero-role{text-transform:uppercase;margin-top:22px;font-size:.92rem;font-weight:800}.hero-message{max-width:525px;color:var(--muted);margin-top:28px;font-size:1rem}.hero-actions{flex-wrap:wrap;gap:12px;margin-top:32px;display:flex}.primary-action,.secondary-action,.inline-action{justify-content:center;align-items:center;gap:9px;min-height:44px;font-size:.86rem;font-weight:700;text-decoration:none;display:inline-flex}.primary-action{color:var(--reverse);background:var(--ink);padding:0 17px}.secondary-action{border-bottom:1px solid var(--ink);padding:0 12px}.primary-action:hover,.secondary-action:hover,.inline-action:hover{text-decoration:underline}.hero-art{align-self:end;justify-items:center;min-width:0;display:grid;position:relative}.hero-art img{z-index:1;width:min(120%,520px);max-width:none;height:auto;display:block;position:relative}.hero-art span{z-index:2;border-top:1px solid var(--line);width:92%;color:var(--muted);text-align:right;padding-top:13px;font-size:.7rem;position:relative}.portfolio-section,.section{padding:78px 0 0}.portfolio-section-heading,.section-header{grid-template-columns:minmax(0,1fr) minmax(220px,310px);align-items:end;gap:40px;margin-bottom:32px;display:grid}.section-header{grid-template-columns:minmax(0,1fr) auto}.section-kicker{min-height:auto;margin-bottom:13px;padding:4px 8px}.portfolio-section-heading h2{max-width:650px}.portfolio-section-heading>p,.section-header p,.page-lede{color:var(--muted);font-size:.92rem}.capability-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:34px;display:grid}.capability-grid article{border-top:1px solid var(--ink);min-width:0;padding-top:22px}.capability-grid svg{margin-bottom:26px}.capability-grid h3{font-size:1.05rem}.capability-grid p{color:var(--muted);margin-top:12px;font-size:.88rem}.home-readme,.about-readme{background:var(--panel-dark);box-shadow:var(--shadow-small);grid-template-columns:minmax(310px,.8fr) minmax(0,1.2fr);margin-top:92px;display:grid;overflow:hidden}.readme-portrait,.about-portrait{min-height:530px;position:relative;overflow:hidden}.readme-portrait img,.about-portrait img{object-fit:cover;object-position:10% 30%}.readme-copy,.about-introduction{color:var(--reverse);flex-direction:column;justify-content:center;padding:52px;display:flex}.readme-copy .section-kicker,.about-introduction .section-kicker{color:var(--ink);background:var(--reverse);align-self:flex-start}.readme-copy h2,.about-introduction h2{margin-bottom:24px;font-size:2.35rem}.readme-copy p,.about-introduction p{color:#d5d5d5;font-size:.9rem}.readme-copy p+p,.about-introduction p+p{margin-top:14px}.readme-facts{border-top:1px solid var(--line-dark);margin:28px 0;display:grid}.readme-facts div{border-bottom:1px solid var(--line-dark);grid-template-columns:100px minmax(0,1fr);gap:14px;padding:10px 0;display:grid}.readme-facts dt{color:#aaa;font-size:.75rem}.readme-facts dd{margin:0;font-size:.78rem;font-weight:700}.readme-copy .inline-action{color:var(--reverse);align-self:flex-start}.inline-action{border-bottom:1px solid;min-height:auto;padding-bottom:3px}.grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.two-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.card{background:var(--surface);border:1px solid var(--line);border-radius:4px;flex-direction:column;min-height:240px;padding:26px;display:flex;position:relative;overflow:hidden}.card:hover{border-color:var(--ink)}.card--with-cover{min-height:430px}.card-cover{border-bottom:1px solid var(--line);background:var(--panel-dark);flex:0 0 168px;height:168px;margin:-26px -26px 22px;position:relative;overflow:hidden}.card-cover img{object-fit:cover;filter:grayscale()contrast(1.05);transition:transform .18s}.card:hover .card-cover img{transform:scale(1.015)}.card-index,.note-number{color:var(--muted);margin-bottom:32px;font-size:.7rem;font-weight:700}.card h3{max-width:84%;font-size:1.25rem}.card p{color:var(--muted);margin-top:13px;font-size:.86rem}.meta{flex-wrap:wrap;gap:8px 13px;margin-top:auto;padding:24px 32px 0 0;display:flex}.pill{color:var(--muted);text-transform:uppercase;font-size:.68rem;font-weight:700}.pill:before{content:"#"}.card-arrow{place-items:center;width:34px;height:34px;text-decoration:none;display:grid;position:absolute;bottom:22px;right:22px}.card-arrow:hover{color:var(--reverse);background:var(--ink)}.collection-list{border-top:1px solid var(--ink);display:grid}.collection-list>a{border-bottom:1px solid var(--line);grid-template-columns:52px minmax(0,1fr) auto;align-items:center;gap:18px;min-width:0;padding:20px 8px;text-decoration:none;display:grid}.collection-list>a:hover{background:var(--panel);padding-right:15px}.collection-icon{background:var(--panel);place-items:center;width:44px;height:44px;display:grid}.collection-list strong,.collection-list small{display:block}.collection-list strong{font-size:.95rem}.collection-list small{color:var(--muted);margin-top:2px;font-size:.75rem}.page-heading{gap:16px;max-width:820px;padding:24px 0 42px;display:grid}.page-heading .section-kicker{justify-self:start;margin:0}.page-heading h1{max-width:800px;font-size:3.75rem}.page-lede{max-width:680px;font-size:1rem}.content-stack{gap:30px;padding-top:28px;display:grid}.about-readme{margin-top:16px}.about-details{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;padding-top:48px;display:grid}.about-details .card{min-height:0}.about-details .card h2{font-size:1.2rem}.about-link-panel{color:var(--reverse);background:var(--panel-dark);border-radius:4px;align-content:start;display:grid}.about-link-panel>span,.about-link-panel a{border-bottom:1px solid var(--line-dark);padding:14px 18px}.about-link-panel>span{color:#aaa;text-transform:uppercase;font-size:.7rem;font-weight:700}.about-link-panel a{justify-content:space-between;align-items:center;font-size:.85rem;font-weight:700;text-decoration:none;display:flex}.about-link-panel a:hover{background:#292929}.shelf-overview{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;padding-bottom:54px;display:grid}.shelf-overview a{border:1px solid var(--line);border-radius:4px;align-items:center;gap:18px;min-height:112px;padding:22px;text-decoration:none;display:flex}.shelf-overview a:hover{color:var(--reverse);background:var(--ink);border-color:var(--ink)}.shelf-overview strong,.shelf-overview small{display:block}.shelf-overview small{color:var(--muted);margin-top:3px;font-size:.75rem}.shelf-overview a:hover small{color:#ccc}.shelf-content{gap:76px;display:grid}.shelf-content>section{scroll-margin-top:24px}.learning-index{gap:60px;display:grid}.learning-section{gap:22px;display:grid}.learning-section>.section-header{border-bottom:1px solid var(--ink);margin:0;padding-bottom:16px}.learning-section .section-header h2{font-size:1.7rem}.note-card-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.note-card{border:1px solid var(--line);background:var(--surface);border-radius:4px;flex-direction:column;min-height:310px;padding:24px;transition:transform .16s,box-shadow .16s;display:flex}.note-card:hover{box-shadow:var(--shadow-small);transform:translateY(-3px)}.note-card-body{flex-direction:column;flex:1;min-height:0;display:flex}.note-card--with-cover{padding:0;overflow:hidden}.note-card-cover{border-bottom:1px solid var(--line);flex:0 0 96px;height:96px;display:block;overflow:hidden}.note-card-cover img{object-fit:cover;object-position:center 72%;width:100%;height:100%;transition:transform .18s;display:block}.note-card--with-cover:hover .note-card-cover img{transform:scale(1.015)}.note-card--with-cover .note-card-body{padding:14px 24px 16px}.note-card--with-cover .note-card-footer{padding-top:14px}.note-card h3{font-size:1.08rem}.note-card p{color:var(--muted);margin-top:12px;font-size:.8rem}.note-card-footer{grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:10px;margin-top:auto;padding-top:22px;display:grid}.note-card-footer>span{width:32px;height:32px;color:var(--reverse);background:var(--ink);place-items:center;font-size:.62rem;font-weight:800;display:grid}.note-card-footer small{color:var(--muted);font-size:.67rem}.note-card-footer a{place-items:center;width:32px;height:32px;display:grid}.note-card-footer a:hover{color:var(--reverse);background:var(--ink)}.link-list{border-top:1px solid var(--ink);margin:0;padding:0;list-style:none;display:grid}.link-row{border-bottom:1px solid var(--line);grid-template-columns:130px minmax(0,1fr);gap:18px;padding:15px 4px;display:grid}.date{color:var(--muted);font-size:.78rem}.link-row a,.text-link{color:var(--ink);font-weight:700;text-decoration:none}.link-row a:hover,.text-link:hover{text-decoration:underline}.note-layout{grid-template-columns:minmax(0,1fr) 250px;align-items:start;gap:38px;display:grid}.note-article{min-width:0}.note-header{gap:11px;padding:24px 0 32px;display:grid}.note-header h1{max-width:800px;font-size:3rem}.note-header p:last-child{color:var(--muted);word-break:break-word;font-size:.85rem}.learning-sidebar,.glossary-panel{border:1px solid var(--line);background:var(--surface);border-radius:4px;max-height:calc(100vh - 48px);padding:18px;position:sticky;top:24px;overflow:auto}.learning-sidebar h2,.glossary-panel h2{margin-bottom:14px;font-size:.98rem}.learning-sidebar nav,.glossary-panel nav{gap:9px;display:grid}.learning-sidebar a,.glossary-panel a{color:var(--muted);font-size:.75rem;font-weight:700;text-decoration:none}.learning-sidebar a:hover,.learning-sidebar a:focus-visible,.learning-sidebar a.active,.glossary-panel a:hover,.glossary-panel a:focus-visible{color:var(--ink);text-decoration:underline}.glossary-panel{gap:14px;display:grid;overflow:hidden}.glossary-panel nav{overflow-y:auto}.glossary-panel p:last-child{color:var(--muted);font-size:.8rem}.data-science-learning-layout{grid-template-columns:minmax(0,1fr) 280px;align-items:start;gap:28px;display:grid}.markdown-content{gap:18px;max-width:800px;font-size:.96rem;display:grid}.markdown-content h1,.markdown-content h2,.markdown-content h3,.markdown-content h4,.markdown-content h5{margin-top:20px}.markdown-content h1{max-width:none;font-size:2.1rem}.markdown-content h2{font-size:1.65rem}.markdown-content h3{font-size:1.18rem}.markdown-content h4,.markdown-content h5{font-size:1rem}.markdown-content p,.markdown-content li{color:#303030}.markdown-content ul,.markdown-content ol{margin:0;padding-left:24px}.markdown-content code{background:#eeeeeb;padding:1px 4px;font-size:.88em}.markdown-content blockquote{background:var(--panel);box-shadow:inset 0 0 0 1px var(--line);border-radius:4px;gap:10px;margin:2px 0;padding:18px 20px;display:grid}.markdown-content blockquote p{margin:0}.markdown-content blockquote p:first-child strong:first-child{color:var(--ink);display:inline-block}.math-inline,.math-block{font-family:ui-serif,Georgia,Cambria,Times New Roman,Times,serif;font-style:italic}.math-inline{white-space:nowrap}.math-block{background:var(--panel);padding:14px 16px;font-size:1.05rem;display:block;overflow-x:auto}.note-table-wrap{border:1px solid var(--line);border-radius:4px;overflow-x:auto}.note-table{border-collapse:collapse;background:var(--surface);width:100%;min-width:640px}.note-table th,.note-table td{text-align:left;vertical-align:top;padding:12px 14px}.note-table th{color:var(--reverse);background:var(--panel-dark)}.note-table tr+tr td{border-top:1px solid var(--line)}.markdown-content pre{color:#252525;background:#f8f8f6;border:1px solid #e8e8e4;border-radius:4px;margin:0;padding:50px 22px 22px;position:relative;overflow-x:auto}.markdown-content pre code{min-width:max-content;color:inherit;background:0 0;padding:0;font-size:.88rem;line-height:1.65;display:block}.markdown-content pre code[data-language]:before{content:attr(data-language);color:var(--muted);font-family:var(--font-poppins), sans-serif;font-size:.7rem;font-weight:600;position:absolute;top:12px;right:16px}.markdown-content .hljs-comment,.markdown-content .hljs-quote{color:#777771;font-style:italic}.markdown-content .hljs-keyword,.markdown-content .hljs-selector-tag,.markdown-content .hljs-doctag{color:#9c2f46}.markdown-content .hljs-title,.markdown-content .hljs-title.function_,.markdown-content .hljs-section{color:#006b8f}.markdown-content .hljs-title.class_,.markdown-content .hljs-type,.markdown-content .hljs-built_in{color:#00766f}.markdown-content .hljs-string,.markdown-content .hljs-regexp,.markdown-content .hljs-addition{color:#8a6200}.markdown-content .hljs-number,.markdown-content .hljs-literal,.markdown-content .hljs-symbol,.markdown-content .hljs-bullet{color:#7b4794}.markdown-content .hljs-variable,.markdown-content .hljs-template-variable,.markdown-content .hljs-attr,.markdown-content .hljs-attribute{color:#0b6f73}.markdown-content .hljs-meta,.markdown-content .hljs-meta .hljs-keyword{color:#8a4f12}.markdown-content .hljs-deletion{color:#a02424}.markdown-content .hljs-emphasis{font-style:italic}.markdown-content .hljs-strong{font-weight:700}.note-link{color:var(--ink);font-weight:700}.note-figure{margin:8px 0}.note-figure img{background:var(--surface);width:auto;max-width:100%;height:auto;box-shadow:var(--shadow-small);border-radius:4px;display:block}.note-figure figcaption,.missing-asset{color:var(--muted);margin-top:8px;font-size:.78rem}.contact-page .page-heading{max-width:960px;padding-bottom:48px}.contact-layout{border:1px solid var(--line);border-radius:4px;grid-template-columns:minmax(290px,.72fr) minmax(0,1.28fr);min-height:620px;display:grid;overflow:hidden}.contact-aside{color:var(--reverse);background:var(--panel-dark);flex-direction:column;padding:38px 34px;display:flex}.contact-aside-label,.contact-compose-heading p{color:#a9a9a9;text-transform:uppercase;margin:0 0 16px;font-size:.7rem;font-weight:800}.contact-aside h2,.contact-compose-heading h2{max-width:470px;margin:0;font-size:1.65rem;line-height:1.18}.contact-aside-copy{color:#c8c8c8;max-width:390px;margin:18px 0 0;font-size:.92rem;line-height:1.75}.contact-methods{border-top:1px solid var(--line-dark);margin-top:38px;display:grid}.contact-methods a{min-height:82px;color:var(--reverse);border-bottom:1px solid var(--line-dark);grid-template-columns:36px minmax(0,1fr) auto;align-items:center;gap:14px;text-decoration:none;transition:background-color .15s;display:grid}.contact-methods a:hover{background:#292929}.contact-method-icon{width:36px;height:36px;color:var(--ink);background:var(--surface);place-items:center;display:grid}.contact-method-copy{min-width:0}.contact-method-copy small,.contact-method-copy strong{display:block}.contact-method-copy small{color:#969696;margin-bottom:3px;font-size:.68rem;font-weight:600}.contact-method-copy strong{overflow-wrap:anywhere;font-size:.79rem;line-height:1.35}.contact-methods a[href^=mailto\:] .contact-method-copy strong{white-space:nowrap;font-size:.7rem}.contact-location{color:#a9a9a9;align-items:center;gap:9px;margin:auto 0 0;padding-top:36px;font-size:.75rem;font-weight:600;display:flex}.contact-compose{background:var(--surface);padding:38px 42px}.contact-compose-heading{border-bottom:1px solid var(--line);padding-bottom:26px}.contact-compose-heading p{color:var(--muted)}.contact-form{background:0 0;gap:20px;max-width:none;padding:28px 0 0;display:grid}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.contact-form label{color:var(--ink);gap:9px;font-weight:700;display:grid}.contact-form span{font-size:.78rem}.contact-form input,.contact-form textarea{width:100%;color:var(--ink);border:1px solid var(--line);background:#fafafa;border-radius:2px;padding:13px 14px}.contact-form textarea{resize:vertical;min-height:174px}.contact-form input::placeholder,.contact-form textarea::placeholder{color:#999}.contact-form input:focus,.contact-form textarea:focus{outline:2px solid var(--ink);outline-offset:2px;border-color:var(--ink);background:var(--surface)}.form-actions{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.form-actions button{min-height:44px;color:var(--reverse);background:var(--panel-dark);cursor:pointer;border:0;justify-content:center;align-items:center;gap:10px;padding:0 18px;font-weight:800;display:inline-flex}.form-actions button:hover{background:#373737}.contact-form .status-note{color:var(--muted)}.coding-dashboard{gap:72px;padding-top:16px;display:grid}.stats-panel{color:var(--reverse);background:var(--panel-dark);border-radius:4px;gap:28px;padding:38px 40px 30px;display:grid;overflow:hidden}.stats-header{justify-content:space-between;align-items:flex-start;gap:32px;display:flex}.stats-header h2{margin:10px 0;font-size:2.5rem}.stats-header p{color:#c8c8c8;max-width:610px;font-size:.9rem}.sync-status{color:#bdbdbd;text-transform:uppercase;align-items:center;gap:8px;font-size:.7rem;font-weight:700;display:inline-flex}.sync-status i{background:var(--reverse);width:7px;height:7px;display:block}.stats-links{white-space:nowrap;gap:18px;padding-top:4px;display:flex}.stats-action{color:var(--reverse);border-bottom:1px solid #777;align-items:center;gap:5px;padding-bottom:3px;font-size:.78rem;font-weight:700;text-decoration:none;display:inline-flex}.stats-action:hover{border-color:var(--reverse)}.coding-progress-grid{border-top:1px solid var(--line-dark);border-bottom:1px solid var(--line-dark);grid-template-columns:minmax(210px,.7fr) minmax(0,1.6fr);display:grid}.solved-stat{border-right:1px solid var(--line-dark);flex-direction:column;justify-content:center;min-height:260px;padding:28px 38px 28px 0;display:flex}.solved-stat span,.solved-stat small{color:#aaa;text-transform:uppercase;font-size:.68rem;font-weight:700}.solved-stat strong{margin:12px 0 10px;font-size:6.8rem;font-weight:800;line-height:.82}.difficulty-summary{align-content:center;gap:28px;min-width:0;padding:34px 0 34px 44px;display:grid}.difficulty-header{justify-content:space-between;align-items:center;gap:18px;display:flex}.difficulty-header h3{font-size:1.35rem}.difficulty-header span{color:#999;text-transform:uppercase;font-size:.76rem;font-weight:600}.difficulty-list{gap:23px;margin:0;padding:0;list-style:none;display:grid}.difficulty-list li{grid-template-columns:96px minmax(0,1fr) 64px;align-items:center;gap:18px;min-width:0;display:grid}.difficulty-name{color:#d0d0d0;align-items:center;gap:9px;font-size:.9rem;font-weight:600;display:flex}.difficulty-name i{flex:0 0 10px;width:10px;height:10px}.difficulty-name i[data-difficulty=easy],.difficulty-track i[data-difficulty=easy]{background:#f4f4f4}.difficulty-name i[data-difficulty=medium],.difficulty-track i[data-difficulty=medium]{background:#a2a2a2}.difficulty-name i[data-difficulty=hard],.difficulty-track i[data-difficulty=hard]{background:#555}.difficulty-track{background:#363636;height:11px;display:block;overflow:hidden}.difficulty-track i{height:100%;display:block}.difficulty-value{justify-items:end;line-height:1.1;display:grid}.difficulty-value strong{font-size:1.45rem}.difficulty-value small{color:#929292;margin-top:5px;font-size:.72rem}.stats-footer{justify-content:space-between;align-items:center;gap:24px;display:flex}.language-summary,.snapshot-status{gap:9px;display:grid}.stats-footer-label{color:#8f8f8f;text-transform:uppercase;font-size:.64rem;font-weight:700}.language-list{flex-wrap:wrap;gap:9px;display:flex}.language-list span{border:1px solid #4b4b4b;align-items:center;gap:16px;min-height:36px;padding:6px 11px;display:inline-flex}.language-list small{color:#c8c8c8;font-size:.68rem;font-weight:700}.language-list strong{color:var(--reverse);font-size:.82rem}.snapshot-status{justify-items:end}.stats-footer .status-note{color:silver;text-align:right}.latest-solutions{gap:24px;display:grid}.latest-solutions-header{justify-content:space-between;align-items:end;gap:32px;display:flex}.latest-solutions-header>div>span{color:var(--muted);text-transform:uppercase;margin-bottom:9px;font-size:.68rem;font-weight:700;display:block}.latest-solutions-header h2{font-size:2.35rem}.latest-solutions-header p{color:var(--muted);margin-top:7px;font-size:.84rem}.solution-list{border-top:1px solid var(--ink);margin:0;padding:0;list-style:none;display:grid}.solution-list li{border-bottom:1px solid var(--line)}.solution-row{grid-template-columns:42px minmax(0,1fr) 82px 108px 28px;align-items:center;gap:18px;min-height:92px;padding:14px 8px;text-decoration:none;transition:background-color .15s;display:grid}.solution-row:hover{background:var(--panel)}.solution-order{color:#a0a0a0;font-size:.68rem;font-weight:700}.solution-copy{gap:4px;min-width:0;display:grid}.solution-copy small{color:var(--muted);text-transform:uppercase;font-size:.65rem;font-weight:600}.solution-copy strong{overflow-wrap:anywhere;font-size:.91rem;line-height:1.35}.difficulty-badge{border:1px solid var(--line);color:var(--muted);text-transform:uppercase;justify-self:start;padding:4px 7px;font-size:.64rem;font-weight:700}.difficulty-badge[data-difficulty=hard]{color:var(--reverse);background:var(--ink);border-color:var(--ink)}.difficulty-badge[data-difficulty=medium]{color:var(--ink);border-color:#999}.solution-row time{color:var(--muted);white-space:nowrap;font-size:.7rem}.solution-row>svg{justify-self:end;transition:transform .15s}.solution-row:hover>svg{transform:translate(2px,-2px)}.status-note{color:#aaa;font-size:.75rem}.footer{padding:28px 0 36px}.footer-inner{width:min(1180px,100% - 40px);color:var(--muted);text-transform:uppercase;grid-template-columns:1fr auto 1fr;align-items:center;gap:24px;margin:0 auto;font-size:.7rem;display:grid}.footer-inner nav{gap:20px;display:flex}.footer-inner a{font-weight:700;text-decoration:none}.footer-inner a:hover{color:var(--ink)}.footer-mark{color:var(--ink);text-transform:lowercase;font-size:1rem;font-weight:800}.footer-inner p{justify-self:end}@media (max-width:980px){.site-frame{grid-template-columns:68px minmax(0,1fr);width:calc(100% - 24px);margin-top:12px}.nav-bar{padding:0 28px}.header-email span{display:none}.main{padding:38px 38px 72px}.portfolio-hero{grid-template-columns:minmax(0,1fr) minmax(300px,.72fr)}.hero-copy h1{font-size:3.8rem}.home-readme,.about-readme{grid-template-columns:minmax(280px,.75fr) minmax(0,1.25fr)}.readme-copy,.about-introduction{padding:38px}.contact-aside{padding:32px 28px}.contact-compose{padding:32px}.note-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.note-layout{grid-template-columns:minmax(0,1fr) 220px;gap:26px}.stats-panel{padding:34px}.solved-stat strong{font-size:5.8rem}.solution-row{grid-template-columns:34px minmax(0,1fr) 76px 100px 24px;gap:13px}}@media (max-width:760px){h1{font-size:3rem}h2{font-size:1.8rem}.site-frame{width:100%;min-height:100vh;box-shadow:none;grid-template-columns:1fr;margin:0}.identity-rail{border-right:0;border-bottom:1px solid var(--line);flex-direction:row;justify-content:flex-start;min-height:64px;padding:10px 20px}.nav-logo{width:42px;height:42px}.social-rail{display:none}.nav-bar{z-index:30;background:0 0;border:0;min-height:42px;padding:0;position:absolute;top:11px;right:20px}.header-email,.nav-container{display:none}.mobile-nav{display:block}.main{padding:30px 22px 64px}.portfolio-hero{grid-template-columns:1fr;gap:42px;min-height:0;padding:12px 0 48px}.hero-copy h1{font-size:3.25rem}.hero-message{font-size:.94rem}.hero-art{width:min(100%,310px);margin:0 auto}.portfolio-section,.section{padding-top:64px}.portfolio-section-heading,.section-header{grid-template-columns:1fr;gap:16px}.capability-grid,.grid,.two-grid,.form-grid,.stats-grid,.note-card-grid,.shelf-overview,.about-details{grid-template-columns:1fr}.capability-grid{gap:28px}.home-readme,.about-readme{grid-template-columns:1fr;margin-top:72px}.readme-portrait,.about-portrait{min-height:500px}.readme-copy,.about-introduction{padding:34px 26px}.readme-copy h2,.about-introduction h2{font-size:1.85rem}.page-heading{padding-top:12px}.page-heading h1{font-size:2.8rem}.coding-dashboard{gap:56px}.stats-panel{gap:28px;padding:28px 26px 24px}.stats-header{gap:20px;display:grid}.stats-header h2{font-size:1.9rem}.stats-links{padding:0}.coding-progress-grid{grid-template-columns:1fr}.solved-stat{border-right:0;border-bottom:1px solid var(--line-dark);min-height:170px;padding:24px 0}.solved-stat strong{font-size:4.6rem}.difficulty-summary{padding:28px 0}.stats-footer{display:grid}.snapshot-status{justify-items:start}.stats-footer .status-note{text-align:left}.latest-solutions-header{gap:18px;display:grid}.latest-solutions-header h2{font-size:1.9rem}.latest-solutions-header .inline-action{justify-self:start}.solution-row{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"copy icon""difficulty date";gap:10px 16px;min-height:102px;padding:16px 6px}.solution-order{display:none}.solution-copy{grid-area:copy}.difficulty-badge{grid-area:difficulty}.solution-row time{grid-area:date;justify-self:end}.solution-row>svg{grid-area:icon}.contact-page .page-heading{padding-bottom:36px}.contact-layout{grid-template-columns:1fr;min-height:0}.contact-aside{min-height:500px}.contact-compose{padding:34px 26px}.note-card{min-height:275px}.note-layout,.data-science-learning-layout{grid-template-columns:1fr}.learning-sidebar,.glossary-panel{max-height:none;position:static}.note-header h1{font-size:2.35rem}.link-row{grid-template-columns:1fr;gap:4px}.footer-inner{text-align:center;grid-template-columns:1fr;justify-items:center;width:calc(100% - 40px)}.footer-inner p{justify-self:center}}@media (max-width:430px){.hero-copy h1{font-size:2.75rem}.hero-actions{display:grid}.contact-aside{min-height:0;padding:28px 22px}.contact-aside h2,.contact-compose-heading h2{font-size:1.45rem}.contact-location{margin-top:34px}.contact-compose{padding:28px 20px}.form-actions button{width:100%}.secondary-action{justify-self:start}.hero-art{width:min(100%,270px)}.readme-portrait,.about-portrait{min-height:430px}.readme-facts div{grid-template-columns:1fr;gap:2px}.collection-list>a{grid-template-columns:44px minmax(0,1fr) auto;gap:12px}.footer-inner nav{flex-wrap:wrap;justify-content:center;gap:10px 16px}.stats-panel{padding-left:20px;padding-right:20px}.stats-header h2{font-size:1.75rem}.difficulty-header{gap:7px;display:grid}.difficulty-header span{text-align:left;max-width:none}.difficulty-list li{grid-template-columns:76px minmax(0,1fr) 50px;gap:10px}}
@font-face{font-display:block;font-family:KaTeX_AMS;font-style:normal;font-weight:400;src:url(../media/KaTeX_AMS-Regular.0p1vbqd84i2~o.woff2)format("woff2"),url(../media/KaTeX_AMS-Regular.0b~8ki5y928w2.woff)format("woff"),url(../media/KaTeX_AMS-Regular.173t6ktr7uf-w.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Caligraphic;font-style:normal;font-weight:700;src:url(../media/KaTeX_Caligraphic-Bold.01-pzluls4zgb.woff2)format("woff2"),url(../media/KaTeX_Caligraphic-Bold.0x2v1lwn~880f.woff)format("woff"),url(../media/KaTeX_Caligraphic-Bold.16zv5fax0h0ka.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Caligraphic;font-style:normal;font-weight:400;src:url(../media/KaTeX_Caligraphic-Regular.0rysu1t-ncjq8.woff2)format("woff2"),url(../media/KaTeX_Caligraphic-Regular.10927swgekwun.woff)format("woff"),url(../media/KaTeX_Caligraphic-Regular.02i3z7wig438t.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Fraktur;font-style:normal;font-weight:700;src:url(../media/KaTeX_Fraktur-Bold.0w23i72~hprpq.woff2)format("woff2"),url(../media/KaTeX_Fraktur-Bold.0e-16u10iuyyf.woff)format("woff"),url(../media/KaTeX_Fraktur-Bold.0et27v~3~4uhe.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Fraktur;font-style:normal;font-weight:400;src:url(../media/KaTeX_Fraktur-Regular.0rekyoa-52fj_.woff2)format("woff2"),url(../media/KaTeX_Fraktur-Regular.0b.riegzdfue2.woff)format("woff"),url(../media/KaTeX_Fraktur-Regular.0vjwa15znhk~4.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:normal;font-weight:700;src:url(../media/KaTeX_Main-Bold.16pfc63_du6mx.woff2)format("woff2"),url(../media/KaTeX_Main-Bold.09lmynrorhcbw.woff)format("woff"),url(../media/KaTeX_Main-Bold.09i7~607shf-h.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:italic;font-weight:700;src:url(../media/KaTeX_Main-BoldItalic.0d54rk08rx11s.woff2)format("woff2"),url(../media/KaTeX_Main-BoldItalic.0cp37g7x1q8h6.woff)format("woff"),url(../media/KaTeX_Main-BoldItalic.15j6k~hix2t_0.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:italic;font-weight:400;src:url(../media/KaTeX_Main-Italic.06o5nq0_91v60.woff2)format("woff2"),url(../media/KaTeX_Main-Italic.0382gqciexmbu.woff)format("woff"),url(../media/KaTeX_Main-Italic.0su4i6mm18-wo.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:normal;font-weight:400;src:url(../media/KaTeX_Main-Regular.0kaf-ag2_wkm-.woff2)format("woff2"),url(../media/KaTeX_Main-Regular.0diheg01zyoph.woff)format("woff"),url(../media/KaTeX_Main-Regular.08zh8z.7shijf.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Math;font-style:italic;font-weight:700;src:url(../media/KaTeX_Math-BoldItalic.0ja97dn.cpc87.woff2)format("woff2"),url(../media/KaTeX_Math-BoldItalic.0ck1myuerwyqw.woff)format("woff"),url(../media/KaTeX_Math-BoldItalic.0ajzxypnbx1h1.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Math;font-style:italic;font-weight:400;src:url(../media/KaTeX_Math-Italic.0zrha2c4sl2je.woff2)format("woff2"),url(../media/KaTeX_Math-Italic.09xkhecjcn5r9.woff)format("woff"),url(../media/KaTeX_Math-Italic.0x23a-bmp-5tg.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:normal;font-weight:700;src:url(../media/KaTeX_SansSerif-Bold.05a9.pc1j_zx9.woff2)format("woff2"),url(../media/KaTeX_SansSerif-Bold.0jcl-ayi1uun0.woff)format("woff"),url(../media/KaTeX_SansSerif-Bold.0re8y.dm7.mt5.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:italic;font-weight:400;src:url(../media/KaTeX_SansSerif-Italic.0a0234dc3s62j.woff2)format("woff2"),url(../media/KaTeX_SansSerif-Italic.0judofdln9731.woff)format("woff"),url(../media/KaTeX_SansSerif-Italic.10z1iap9pfus8.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:normal;font-weight:400;src:url(../media/KaTeX_SansSerif-Regular.0v6gcj32-czft.woff2)format("woff2"),url(../media/KaTeX_SansSerif-Regular.0h9yjlugq4q_e.woff)format("woff"),url(../media/KaTeX_SansSerif-Regular.0zm18kga42ebc.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Script;font-style:normal;font-weight:400;src:url(../media/KaTeX_Script-Regular.0c4.h-mer83d_.woff2)format("woff2"),url(../media/KaTeX_Script-Regular.0ze6v4r_-99oy.woff)format("woff"),url(../media/KaTeX_Script-Regular.0q14y6zkzlpob.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size1;font-style:normal;font-weight:400;src:url(../media/KaTeX_Size1-Regular.013x6a4ierotp.woff2)format("woff2"),url(../media/KaTeX_Size1-Regular.0kidw0oi.m68o.woff)format("woff"),url(../media/KaTeX_Size1-Regular.0m6y-i6wfokni.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size2;font-style:normal;font-weight:400;src:url(../media/KaTeX_Size2-Regular.0d5inmyp-tyv3.woff2)format("woff2"),url(../media/KaTeX_Size2-Regular.0blpmluwilgbg.woff)format("woff"),url(../media/KaTeX_Size2-Regular.0wnhnvj-.k9d5.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size3;font-style:normal;font-weight:400;src:url(../media/KaTeX_Size3-Regular.0iukctyhw5j56.woff2)format("woff2"),url(../media/KaTeX_Size3-Regular.01h0xm_sfctj3.woff)format("woff"),url(../media/KaTeX_Size3-Regular.0jl8mqyf4gzpn.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size4;font-style:normal;font-weight:400;src:url(../media/KaTeX_Size4-Regular.0w3.rb_c4stzk.woff2)format("woff2"),url(../media/KaTeX_Size4-Regular.12tvaesf3.zl3.woff)format("woff"),url(../media/KaTeX_Size4-Regular.0wr_9l81-mu06.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Typewriter;font-style:normal;font-weight:400;src:url(../media/KaTeX_Typewriter-Regular.0c4zdxz~8frhm.woff2)format("woff2"),url(../media/KaTeX_Typewriter-Regular.0cgrzn5l3kao5.woff)format("woff"),url(../media/KaTeX_Typewriter-Regular.128~qc3858otl.ttf)format("truetype")}.katex{text-indent:0;text-rendering:auto;font:1.21em/1.2 KaTeX_Main,Times New Roman,serif;position:relative}.katex *{border-color:currentColor;-ms-high-contrast-adjust:none!important}.katex .katex-version:after{content:"0.16.47"}.katex .katex-mathml{clip-path:inset(50%);border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.katex .katex-html>.newline{display:block}.katex .base{white-space:nowrap;width:min-content;position:relative}.katex .base,.katex .strut{display:inline-block}.katex .textbf{font-weight:700}.katex .textit{font-style:italic}.katex .textrm{font-family:KaTeX_Main}.katex .textsf{font-family:KaTeX_SansSerif}.katex .texttt{font-family:KaTeX_Typewriter}.katex .mathnormal{font-family:KaTeX_Math;font-style:italic}.katex .mathit{font-family:KaTeX_Main;font-style:italic}.katex .mathrm{font-style:normal}.katex .mathbf{font-family:KaTeX_Main;font-weight:700}.katex .boldsymbol{font-family:KaTeX_Math;font-style:italic;font-weight:700}.katex .amsrm,.katex .mathbb,.katex .textbb{font-family:KaTeX_AMS}.katex .mathcal{font-family:KaTeX_Caligraphic}.katex .mathfrak,.katex .textfrak{font-family:KaTeX_Fraktur}.katex .mathboldfrak,.katex .textboldfrak{font-family:KaTeX_Fraktur;font-weight:700}.katex .mathtt{font-family:KaTeX_Typewriter}.katex .mathscr,.katex .textscr{font-family:KaTeX_Script}.katex .mathsf,.katex .textsf{font-family:KaTeX_SansSerif}.katex .mathboldsf,.katex .textboldsf{font-family:KaTeX_SansSerif;font-weight:700}.katex .mathitsf,.katex .mathsfit,.katex .textitsf{font-family:KaTeX_SansSerif;font-style:italic}.katex .mainrm{font-family:KaTeX_Main;font-style:normal}.katex .vlist-t{border-collapse:collapse;table-layout:fixed;display:inline-table}.katex .vlist-r{display:table-row}.katex .vlist{vertical-align:bottom;display:table-cell;position:relative}.katex .vlist>span{height:0;display:block;position:relative}.katex .vlist>span>span{display:inline-block}.katex .vlist>span>.pstrut{width:0;overflow:hidden}.katex .vlist-t2{margin-right:-2px}.katex .vlist-s{vertical-align:bottom;width:2px;min-width:2px;font-size:1px;display:table-cell}.katex .vbox{flex-direction:column;align-items:baseline;display:inline-flex}.katex .hbox{width:100%}.katex .hbox,.katex .thinbox{flex-direction:row;display:inline-flex}.katex .thinbox{width:0;max-width:0}.katex .msupsub{text-align:left}.katex .mfrac>span>span{text-align:center}.katex .mfrac .frac-line{border-bottom-style:solid;width:100%;display:inline-block}.katex .hdashline,.katex .hline,.katex .mfrac .frac-line,.katex .overline .overline-line,.katex .rule,.katex .underline .underline-line{min-height:1px}.katex .mspace{display:inline-block}.katex .smash{line-height:0;display:inline}.katex .clap,.katex .llap,.katex .rlap{width:0;position:relative}.katex .clap>.inner,.katex .llap>.inner,.katex .rlap>.inner{position:absolute}.katex .clap>.fix,.katex .llap>.fix,.katex .rlap>.fix{display:inline-block}.katex .llap>.inner{right:0}.katex .clap>.inner,.katex .rlap>.inner{left:0}.katex .clap>.inner>span{margin-left:-50%;margin-right:50%}.katex .rule{border:0 solid;display:inline-block;position:relative}.katex .hline,.katex .overline .overline-line,.katex .underline .underline-line{border-bottom-style:solid;width:100%;display:inline-block}.katex .hdashline{border-bottom-style:dashed;width:100%;display:inline-block}.katex .sqrt>.root{margin-left:.277778em;margin-right:-.555556em}.katex .fontsize-ensurer.reset-size1.size1,.katex .sizing.reset-size1.size1{font-size:1em}.katex .fontsize-ensurer.reset-size1.size2,.katex .sizing.reset-size1.size2{font-size:1.2em}.katex .fontsize-ensurer.reset-size1.size3,.katex .sizing.reset-size1.size3{font-size:1.4em}.katex .fontsize-ensurer.reset-size1.size4,.katex .sizing.reset-size1.size4{font-size:1.6em}.katex .fontsize-ensurer.reset-size1.size5,.katex .sizing.reset-size1.size5{font-size:1.8em}.katex .fontsize-ensurer.reset-size1.size6,.katex .sizing.reset-size1.size6{font-size:2em}.katex .fontsize-ensurer.reset-size1.size7,.katex .sizing.reset-size1.size7{font-size:2.4em}.katex .fontsize-ensurer.reset-size1.size8,.katex .sizing.reset-size1.size8{font-size:2.88em}.katex .fontsize-ensurer.reset-size1.size9,.katex .sizing.reset-size1.size9{font-size:3.456em}.katex .fontsize-ensurer.reset-size1.size10,.katex .sizing.reset-size1.size10{font-size:4.148em}.katex .fontsize-ensurer.reset-size1.size11,.katex .sizing.reset-size1.size11{font-size:4.976em}.katex .fontsize-ensurer.reset-size2.size1,.katex .sizing.reset-size2.size1{font-size:.833333em}.katex .fontsize-ensurer.reset-size2.size2,.katex .sizing.reset-size2.size2{font-size:1em}.katex .fontsize-ensurer.reset-size2.size3,.katex .sizing.reset-size2.size3{font-size:1.16667em}.katex .fontsize-ensurer.reset-size2.size4,.katex .sizing.reset-size2.size4{font-size:1.33333em}.katex .fontsize-ensurer.reset-size2.size5,.katex .sizing.reset-size2.size5{font-size:1.5em}.katex .fontsize-ensurer.reset-size2.size6,.katex .sizing.reset-size2.size6{font-size:1.66667em}.katex .fontsize-ensurer.reset-size2.size7,.katex .sizing.reset-size2.size7{font-size:2em}.katex .fontsize-ensurer.reset-size2.size8,.katex .sizing.reset-size2.size8{font-size:2.4em}.katex .fontsize-ensurer.reset-size2.size9,.katex .sizing.reset-size2.size9{font-size:2.88em}.katex .fontsize-ensurer.reset-size2.size10,.katex .sizing.reset-size2.size10{font-size:3.45667em}.katex .fontsize-ensurer.reset-size2.size11,.katex .sizing.reset-size2.size11{font-size:4.14667em}.katex .fontsize-ensurer.reset-size3.size1,.katex .sizing.reset-size3.size1{font-size:.714286em}.katex .fontsize-ensurer.reset-size3.size2,.katex .sizing.reset-size3.size2{font-size:.857143em}.katex .fontsize-ensurer.reset-size3.size3,.katex .sizing.reset-size3.size3{font-size:1em}.katex .fontsize-ensurer.reset-size3.size4,.katex .sizing.reset-size3.size4{font-size:1.14286em}.katex .fontsize-ensurer.reset-size3.size5,.katex .sizing.reset-size3.size5{font-size:1.28571em}.katex .fontsize-ensurer.reset-size3.size6,.katex .sizing.reset-size3.size6{font-size:1.42857em}.katex .fontsize-ensurer.reset-size3.size7,.katex .sizing.reset-size3.size7{font-size:1.71429em}.katex .fontsize-ensurer.reset-size3.size8,.katex .sizing.reset-size3.size8{font-size:2.05714em}.katex .fontsize-ensurer.reset-size3.size9,.katex .sizing.reset-size3.size9{font-size:2.46857em}.katex .fontsize-ensurer.reset-size3.size10,.katex .sizing.reset-size3.size10{font-size:2.96286em}.katex .fontsize-ensurer.reset-size3.size11,.katex .sizing.reset-size3.size11{font-size:3.55429em}.katex .fontsize-ensurer.reset-size4.size1,.katex .sizing.reset-size4.size1{font-size:.625em}.katex .fontsize-ensurer.reset-size4.size2,.katex .sizing.reset-size4.size2{font-size:.75em}.katex .fontsize-ensurer.reset-size4.size3,.katex .sizing.reset-size4.size3{font-size:.875em}.katex .fontsize-ensurer.reset-size4.size4,.katex .sizing.reset-size4.size4{font-size:1em}.katex .fontsize-ensurer.reset-size4.size5,.katex .sizing.reset-size4.size5{font-size:1.125em}.katex .fontsize-ensurer.reset-size4.size6,.katex .sizing.reset-size4.size6{font-size:1.25em}.katex .fontsize-ensurer.reset-size4.size7,.katex .sizing.reset-size4.size7{font-size:1.5em}.katex .fontsize-ensurer.reset-size4.size8,.katex .sizing.reset-size4.size8{font-size:1.8em}.katex .fontsize-ensurer.reset-size4.size9,.katex .sizing.reset-size4.size9{font-size:2.16em}.katex .fontsize-ensurer.reset-size4.size10,.katex .sizing.reset-size4.size10{font-size:2.5925em}.katex .fontsize-ensurer.reset-size4.size11,.katex .sizing.reset-size4.size11{font-size:3.11em}.katex .fontsize-ensurer.reset-size5.size1,.katex .sizing.reset-size5.size1{font-size:.555556em}.katex .fontsize-ensurer.reset-size5.size2,.katex .sizing.reset-size5.size2{font-size:.666667em}.katex .fontsize-ensurer.reset-size5.size3,.katex .sizing.reset-size5.size3{font-size:.777778em}.katex .fontsize-ensurer.reset-size5.size4,.katex .sizing.reset-size5.size4{font-size:.888889em}.katex .fontsize-ensurer.reset-size5.size5,.katex .sizing.reset-size5.size5{font-size:1em}.katex .fontsize-ensurer.reset-size5.size6,.katex .sizing.reset-size5.size6{font-size:1.11111em}.katex .fontsize-ensurer.reset-size5.size7,.katex .sizing.reset-size5.size7{font-size:1.33333em}.katex .fontsize-ensurer.reset-size5.size8,.katex .sizing.reset-size5.size8{font-size:1.6em}.katex .fontsize-ensurer.reset-size5.size9,.katex .sizing.reset-size5.size9{font-size:1.92em}.katex .fontsize-ensurer.reset-size5.size10,.katex .sizing.reset-size5.size10{font-size:2.30444em}.katex .fontsize-ensurer.reset-size5.size11,.katex .sizing.reset-size5.size11{font-size:2.76444em}.katex .fontsize-ensurer.reset-size6.size1,.katex .sizing.reset-size6.size1{font-size:.5em}.katex .fontsize-ensurer.reset-size6.size2,.katex .sizing.reset-size6.size2{font-size:.6em}.katex .fontsize-ensurer.reset-size6.size3,.katex .sizing.reset-size6.size3{font-size:.7em}.katex .fontsize-ensurer.reset-size6.size4,.katex .sizing.reset-size6.size4{font-size:.8em}.katex .fontsize-ensurer.reset-size6.size5,.katex .sizing.reset-size6.size5{font-size:.9em}.katex .fontsize-ensurer.reset-size6.size6,.katex .sizing.reset-size6.size6{font-size:1em}.katex .fontsize-ensurer.reset-size6.size7,.katex .sizing.reset-size6.size7{font-size:1.2em}.katex .fontsize-ensurer.reset-size6.size8,.katex .sizing.reset-size6.size8{font-size:1.44em}.katex .fontsize-ensurer.reset-size6.size9,.katex .sizing.reset-size6.size9{font-size:1.728em}.katex .fontsize-ensurer.reset-size6.size10,.katex .sizing.reset-size6.size10{font-size:2.074em}.katex .fontsize-ensurer.reset-size6.size11,.katex .sizing.reset-size6.size11{font-size:2.488em}.katex .fontsize-ensurer.reset-size7.size1,.katex .sizing.reset-size7.size1{font-size:.416667em}.katex .fontsize-ensurer.reset-size7.size2,.katex .sizing.reset-size7.size2{font-size:.5em}.katex .fontsize-ensurer.reset-size7.size3,.katex .sizing.reset-size7.size3{font-size:.583333em}.katex .fontsize-ensurer.reset-size7.size4,.katex .sizing.reset-size7.size4{font-size:.666667em}.katex .fontsize-ensurer.reset-size7.size5,.katex .sizing.reset-size7.size5{font-size:.75em}.katex .fontsize-ensurer.reset-size7.size6,.katex .sizing.reset-size7.size6{font-size:.833333em}.katex .fontsize-ensurer.reset-size7.size7,.katex .sizing.reset-size7.size7{font-size:1em}.katex .fontsize-ensurer.reset-size7.size8,.katex .sizing.reset-size7.size8{font-size:1.2em}.katex .fontsize-ensurer.reset-size7.size9,.katex .sizing.reset-size7.size9{font-size:1.44em}.katex .fontsize-ensurer.reset-size7.size10,.katex .sizing.reset-size7.size10{font-size:1.72833em}.katex .fontsize-ensurer.reset-size7.size11,.katex .sizing.reset-size7.size11{font-size:2.07333em}.katex .fontsize-ensurer.reset-size8.size1,.katex .sizing.reset-size8.size1{font-size:.347222em}.katex .fontsize-ensurer.reset-size8.size2,.katex .sizing.reset-size8.size2{font-size:.416667em}.katex .fontsize-ensurer.reset-size8.size3,.katex .sizing.reset-size8.size3{font-size:.486111em}.katex .fontsize-ensurer.reset-size8.size4,.katex .sizing.reset-size8.size4{font-size:.555556em}.katex .fontsize-ensurer.reset-size8.size5,.katex .sizing.reset-size8.size5{font-size:.625em}.katex .fontsize-ensurer.reset-size8.size6,.katex .sizing.reset-size8.size6{font-size:.694444em}.katex .fontsize-ensurer.reset-size8.size7,.katex .sizing.reset-size8.size7{font-size:.833333em}.katex .fontsize-ensurer.reset-size8.size8,.katex .sizing.reset-size8.size8{font-size:1em}.katex .fontsize-ensurer.reset-size8.size9,.katex .sizing.reset-size8.size9{font-size:1.2em}.katex .fontsize-ensurer.reset-size8.size10,.katex .sizing.reset-size8.size10{font-size:1.44028em}.katex .fontsize-ensurer.reset-size8.size11,.katex .sizing.reset-size8.size11{font-size:1.72778em}.katex .fontsize-ensurer.reset-size9.size1,.katex .sizing.reset-size9.size1{font-size:.289352em}.katex .fontsize-ensurer.reset-size9.size2,.katex .sizing.reset-size9.size2{font-size:.347222em}.katex .fontsize-ensurer.reset-size9.size3,.katex .sizing.reset-size9.size3{font-size:.405093em}.katex .fontsize-ensurer.reset-size9.size4,.katex .sizing.reset-size9.size4{font-size:.462963em}.katex .fontsize-ensurer.reset-size9.size5,.katex .sizing.reset-size9.size5{font-size:.520833em}.katex .fontsize-ensurer.reset-size9.size6,.katex .sizing.reset-size9.size6{font-size:.578704em}.katex .fontsize-ensurer.reset-size9.size7,.katex .sizing.reset-size9.size7{font-size:.694444em}.katex .fontsize-ensurer.reset-size9.size8,.katex .sizing.reset-size9.size8{font-size:.833333em}.katex .fontsize-ensurer.reset-size9.size9,.katex .sizing.reset-size9.size9{font-size:1em}.katex .fontsize-ensurer.reset-size9.size10,.katex .sizing.reset-size9.size10{font-size:1.20023em}.katex .fontsize-ensurer.reset-size9.size11,.katex .sizing.reset-size9.size11{font-size:1.43981em}.katex .fontsize-ensurer.reset-size10.size1,.katex .sizing.reset-size10.size1{font-size:.24108em}.katex .fontsize-ensurer.reset-size10.size2,.katex .sizing.reset-size10.size2{font-size:.289296em}.katex .fontsize-ensurer.reset-size10.size3,.katex .sizing.reset-size10.size3{font-size:.337512em}.katex .fontsize-ensurer.reset-size10.size4,.katex .sizing.reset-size10.size4{font-size:.385728em}.katex .fontsize-ensurer.reset-size10.size5,.katex .sizing.reset-size10.size5{font-size:.433944em}.katex .fontsize-ensurer.reset-size10.size6,.katex .sizing.reset-size10.size6{font-size:.48216em}.katex .fontsize-ensurer.reset-size10.size7,.katex .sizing.reset-size10.size7{font-size:.578592em}.katex .fontsize-ensurer.reset-size10.size8,.katex .sizing.reset-size10.size8{font-size:.694311em}.katex .fontsize-ensurer.reset-size10.size9,.katex .sizing.reset-size10.size9{font-size:.833173em}.katex .fontsize-ensurer.reset-size10.size10,.katex .sizing.reset-size10.size10{font-size:1em}.katex .fontsize-ensurer.reset-size10.size11,.katex .sizing.reset-size10.size11{font-size:1.19961em}.katex .fontsize-ensurer.reset-size11.size1,.katex .sizing.reset-size11.size1{font-size:.200965em}.katex .fontsize-ensurer.reset-size11.size2,.katex .sizing.reset-size11.size2{font-size:.241158em}.katex .fontsize-ensurer.reset-size11.size3,.katex .sizing.reset-size11.size3{font-size:.281351em}.katex .fontsize-ensurer.reset-size11.size4,.katex .sizing.reset-size11.size4{font-size:.321543em}.katex .fontsize-ensurer.reset-size11.size5,.katex .sizing.reset-size11.size5{font-size:.361736em}.katex .fontsize-ensurer.reset-size11.size6,.katex .sizing.reset-size11.size6{font-size:.401929em}.katex .fontsize-ensurer.reset-size11.size7,.katex .sizing.reset-size11.size7{font-size:.482315em}.katex .fontsize-ensurer.reset-size11.size8,.katex .sizing.reset-size11.size8{font-size:.578778em}.katex .fontsize-ensurer.reset-size11.size9,.katex .sizing.reset-size11.size9{font-size:.694534em}.katex .fontsize-ensurer.reset-size11.size10,.katex .sizing.reset-size11.size10{font-size:.833601em}.katex .fontsize-ensurer.reset-size11.size11,.katex .sizing.reset-size11.size11{font-size:1em}.katex .delimsizing.size1{font-family:KaTeX_Size1}.katex .delimsizing.size2{font-family:KaTeX_Size2}.katex .delimsizing.size3{font-family:KaTeX_Size3}.katex .delimsizing.size4{font-family:KaTeX_Size4}.katex .delimsizing.mult .delim-size1>span{font-family:KaTeX_Size1}.katex .delimsizing.mult .delim-size4>span{font-family:KaTeX_Size4}.katex .nulldelimiter{width:.12em;display:inline-block}.katex .delimcenter,.katex .op-symbol{position:relative}.katex .op-symbol.small-op{font-family:KaTeX_Size1}.katex .op-symbol.large-op{font-family:KaTeX_Size2}.katex .accent>.vlist-t,.katex .op-limits>.vlist-t{text-align:center}.katex .accent .accent-body{position:relative}.katex .accent .accent-body:not(.accent-full){width:0}.katex .overlay{display:block}.katex .mtable .vertical-separator{min-width:1px;display:inline-block}.katex .mtable .arraycolsep{display:inline-block}.katex .mtable .col-align-c>.vlist-t{text-align:center}.katex .mtable .col-align-l>.vlist-t{text-align:left}.katex .mtable .col-align-r>.vlist-t{text-align:right}.katex .svg-align{text-align:left}.katex svg{fill:currentColor;stroke:currentColor;height:inherit;width:100%;display:block;position:absolute}.katex svg path{stroke:none}.katex svg{fill-rule:nonzero;fill-opacity:1;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1}.katex img{border-style:none;min-width:0;max-width:none;min-height:0;max-height:none}.katex .stretchy{width:100%;display:block;position:relative;overflow:hidden}.katex .stretchy:after,.katex .stretchy:before{content:""}.katex .hide-tail{width:100%;position:relative;overflow:hidden}.katex .halfarrow-left{width:50.2%;position:absolute;left:0;overflow:hidden}.katex .halfarrow-right{width:50.2%;position:absolute;right:0;overflow:hidden}.katex .brace-left{width:25.1%;position:absolute;left:0;overflow:hidden}.katex .brace-center{width:50%;position:absolute;left:25%;overflow:hidden}.katex .brace-right{width:25.1%;position:absolute;right:0;overflow:hidden}.katex .x-arrow-pad{padding:0 .5em}.katex .cd-arrow-pad{padding:0 .55556em 0 .27778em}.katex .mover,.katex .munder,.katex .x-arrow{text-align:center}.katex .boxpad{padding:0 .3em}.katex .fbox,.katex .fcolorbox{box-sizing:border-box;border:.04em solid}.katex .cancel-pad{padding:0 .2em}.katex .cancel-lap{margin-left:-.2em;margin-right:-.2em}.katex .sout{border-bottom-style:solid;border-bottom-width:.08em}.katex .angl{box-sizing:border-box;border-top:.049em solid;border-right:.049em solid;margin-right:.03889em}.katex .anglpad{padding:0 .03889em}.katex .eqn-num:before{content:"(" counter(katexEqnNo) ")";counter-increment:katexEqnNo}.katex .mml-eqn-num:before{content:"(" counter(mmlEqnNo) ")";counter-increment:mmlEqnNo}.katex .mtr-glue{width:50%}.katex .cd-vert-arrow{display:inline-block;position:relative}.katex .cd-label-left{text-align:left;display:inline-block;position:absolute;right:calc(50% + .3em)}.katex .cd-label-right{text-align:right;display:inline-block;position:absolute;left:calc(50% + .3em)}.katex-display{text-align:center;margin:1em 0;display:block}.katex-display>.katex{text-align:center;white-space:nowrap;display:block}.katex-display>.katex>.katex-html{display:block;position:relative}.katex-display>.katex>.katex-html>.tag{position:absolute;right:0}.katex-display.leqno>.katex>.katex-html>.tag{left:0;right:auto}.katex-display.fleqn>.katex{text-align:left;padding-left:2em}body{counter-reset:katexEqnNo mmlEqnNo}
@font-face{font-family:poppins;src:url(../media/poppins_300-s.p.0g_ng0t~d_b9n.woff2)format("woff2");font-display:swap;font-weight:300;font-style:normal}@font-face{font-family:poppins;src:url(../media/poppins_400-s.p.17-1enzs_j91b.woff2)format("woff2");font-display:swap;font-weight:400;font-style:normal}@font-face{font-family:poppins;src:url(../media/poppins_600-s.p.12skym0rqknxy.woff2)format("woff2");font-display:swap;font-weight:600;font-style:normal}@font-face{font-family:poppins;src:url(../media/poppins_700-s.p.0~mcdl10zdfb3.woff2)format("woff2");font-display:swap;font-weight:700;font-style:normal}@font-face{font-family:poppins;src:url(../media/poppins_800-s.p.0ub.k0om~_-xi.woff2)format("woff2");font-display:swap;font-weight:800;font-style:normal}@font-face{font-family:poppins Fallback;src:local(Arial);ascent-override:92.83%;descent-override:30.94%;line-gap-override:8.84%;size-adjust:113.11%}.poppins_c483c2fc-module__bBSHaW__className{font-family:poppins,poppins Fallback,Arial,sans-serif}.poppins_c483c2fc-module__bBSHaW__variable{--font-poppins:"poppins", "poppins Fallback", Arial, sans-serif}
