.GithubAvatar-module__enwT_q__avatarImg{object-fit:cover;border-radius:50%}
.Doodle-module__k-JLrq__doodle{z-index:1;color:var(--paper-text-dim);opacity:.6;pointer-events:none;animation:6s ease-in-out infinite Doodle-module__k-JLrq__doodle-float;position:absolute}@keyframes Doodle-module__k-JLrq__doodle-float{0%,to{transform:translateY(0)rotate(0)}50%{transform:translateY(-10px)rotate(-4deg)}}@media (prefers-reduced-motion:reduce){.Doodle-module__k-JLrq__doodle{animation:none}}
.TableOfContent-module__VKKa-W__section{background:var(--paper);color:var(--paper-text);padding:var(--space-6) var(--space-3);text-align:center;position:relative;overflow:hidden}.TableOfContent-module__VKKa-W__heading{margin:0 auto var(--space-5);font-family:var(--font-poster), var(--font-display), serif;text-transform:uppercase;font-size:clamp(1.8rem,5vw,3rem);display:inline-flex;position:relative}.TableOfContent-module__VKKa-W__ghost{color:var(--paper-line);z-index:0;white-space:nowrap;pointer-events:none;font-size:1.6em;position:absolute;inset:-.3em -.1em auto auto}.TableOfContent-module__VKKa-W__heading>span:not(.TableOfContent-module__VKKa-W__ghost){z-index:1;position:relative}.TableOfContent-module__VKKa-W__of{color:var(--accent-yellow-ink)}.TableOfContent-module__VKKa-W__grid{max-width:var(--content-max);gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(11rem,1fr));margin:0 auto;display:grid}.TableOfContent-module__VKKa-W__card{align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-2);transition:transform var(--duration-fast) var(--ease-exhibit), background var(--duration-fast) ease;border-radius:1.25rem;flex-direction:column;display:flex}.TableOfContent-module__VKKa-W__card:hover,.TableOfContent-module__VKKa-W__card:focus-visible{background:var(--paper-raised);transform:translateY(-4px) rotate(var(--tab-tilt,0deg))}.TableOfContent-module__VKKa-W__index{font-family:var(--font-body), monospace;color:var(--paper-text-dim);font-size:.7rem}.TableOfContent-module__VKKa-W__badge{border:2.5px solid var(--paper-text);width:4.5rem;height:4.5rem;color:var(--paper-text);transform:rotate(var(--tab-tilt,0deg));transition:background var(--duration-fast) ease, color var(--duration-fast) ease, transform var(--duration-fast) var(--ease-exhibit);background:0 0;border-radius:26% 26% 26% 8%;justify-content:center;align-items:center;display:flex;position:relative}.TableOfContent-module__VKKa-W__card:hover .TableOfContent-module__VKKa-W__badge,.TableOfContent-module__VKKa-W__card:focus-visible .TableOfContent-module__VKKa-W__badge{background:var(--accent-coral);border-color:var(--accent-coral);color:var(--ink)}.TableOfContent-module__VKKa-W__badge svg{width:2.1rem;height:2.1rem}.TableOfContent-module__VKKa-W__label{font-family:var(--font-body), sans-serif;font-size:.95rem;font-weight:700}
.ProjectMotif-module__0pDnKa__motif{color:#ffffffeb;width:60%;max-width:11rem;height:auto;overflow:visible}.ProjectMotif-module__0pDnKa__chorusRing{fill:none;stroke:currentColor;stroke-width:1.4px;opacity:.35;transform-origin:60px 45px;animation:ProjectMotif-module__0pDnKa__chorus-pulse 2.6s var(--ease-exhibit) infinite}.ProjectMotif-module__0pDnKa__chorusBars rect{fill:currentColor;transform-origin:50%;animation:1.4s ease-in-out infinite ProjectMotif-module__0pDnKa__chorus-bar}@keyframes ProjectMotif-module__0pDnKa__chorus-pulse{0%,to{opacity:.15;transform:scale(.92)}50%{opacity:.45;transform:scale(1.05)}}@keyframes ProjectMotif-module__0pDnKa__chorus-bar{0%,to{transform:scaleY(.6)}50%{transform:scaleY(1.15)}}.ProjectMotif-module__0pDnKa__marsGrid{stroke-width:1px;opacity:.25}.ProjectMotif-module__0pDnKa__marsLine{stroke:currentColor;stroke-width:2.4px;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:140;stroke-dashoffset:140px;animation:ProjectMotif-module__0pDnKa__mars-draw 2.4s var(--ease-exhibit) infinite}.ProjectMotif-module__0pDnKa__marsDot{fill:currentColor;animation:ProjectMotif-module__0pDnKa__mars-blink 2.4s var(--ease-exhibit) infinite}@keyframes ProjectMotif-module__0pDnKa__mars-draw{0%{stroke-dashoffset:140px}60%,to{stroke-dashoffset:0}}@keyframes ProjectMotif-module__0pDnKa__mars-blink{0%,55%{opacity:0;transform-origin:108px 16px;transform:scale(.5)}70%,to{opacity:1;transform-origin:108px 16px;transform:scale(1)}}.ProjectMotif-module__0pDnKa__neuroEdges line{stroke-width:1.2px;opacity:.3;animation:3s ease-in-out infinite ProjectMotif-module__0pDnKa__neuro-edge}.ProjectMotif-module__0pDnKa__neuroNodes circle{fill:currentColor;animation:3s ease-in-out infinite ProjectMotif-module__0pDnKa__neuro-node}@keyframes ProjectMotif-module__0pDnKa__neuro-edge{0%,to{opacity:.15}50%{opacity:.5}}@keyframes ProjectMotif-module__0pDnKa__neuro-node{0%,to{opacity:.7;transform:scale(1)}50%{opacity:1;transform:scale(1.25)}}.ProjectMotif-module__0pDnKa__bridgeArc{stroke:currentColor;stroke-width:2px;opacity:.5;stroke-dasharray:6 6;animation:6s linear infinite ProjectMotif-module__0pDnKa__bridge-flow}.ProjectMotif-module__0pDnKa__bridgeNode{fill:currentColor;animation:2.4s ease-in-out infinite ProjectMotif-module__0pDnKa__bridge-node}.ProjectMotif-module__0pDnKa__bridgeCheck{stroke:currentColor;stroke-width:3px;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:24;stroke-dashoffset:24px;animation:ProjectMotif-module__0pDnKa__bridge-check 2.4s var(--ease-exhibit) infinite}@keyframes ProjectMotif-module__0pDnKa__bridge-flow{0%{stroke-dashoffset:0}to{stroke-dashoffset:-24px}}@keyframes ProjectMotif-module__0pDnKa__bridge-node{0%,to{opacity:.7}50%{opacity:1}}@keyframes ProjectMotif-module__0pDnKa__bridge-check{0%,40%{stroke-dashoffset:24px}80%,to{stroke-dashoffset:0}}.ProjectMotif-module__0pDnKa__genericPulse{fill:none;stroke:currentColor;stroke-width:2px;animation:ProjectMotif-module__0pDnKa__chorus-pulse 2.6s var(--ease-exhibit) infinite}@media (prefers-reduced-motion:reduce){.ProjectMotif-module__0pDnKa__chorusRing,.ProjectMotif-module__0pDnKa__chorusBars rect,.ProjectMotif-module__0pDnKa__marsLine,.ProjectMotif-module__0pDnKa__marsDot,.ProjectMotif-module__0pDnKa__neuroEdges line,.ProjectMotif-module__0pDnKa__neuroNodes circle,.ProjectMotif-module__0pDnKa__bridgeArc,.ProjectMotif-module__0pDnKa__bridgeNode,.ProjectMotif-module__0pDnKa__bridgeCheck,.ProjectMotif-module__0pDnKa__genericPulse{animation:none}.ProjectMotif-module__0pDnKa__marsLine,.ProjectMotif-module__0pDnKa__bridgeCheck{stroke-dashoffset:0}.ProjectMotif-module__0pDnKa__marsDot{opacity:1;transform:none}}
.ProjectCard-module__hd2bGa__card{background:var(--paper-raised);border:1px solid var(--paper-line);color:var(--paper-text);transition:transform var(--duration-fast) var(--ease-exhibit), box-shadow var(--duration-fast) ease;border-radius:1.25rem;flex-direction:column;display:flex;overflow:hidden}.ProjectCard-module__hd2bGa__card:hover,.ProjectCard-module__hd2bGa__card:focus-visible{transform:translateY(-4px);box-shadow:0 18px 40px #17140f24}.ProjectCard-module__hd2bGa__plate{aspect-ratio:16/10;background:linear-gradient(135deg, var(--plate-accent) 0%, color-mix(in srgb, var(--plate-accent) 60%, black) 100%);padding:var(--space-2);justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.ProjectCard-module__hd2bGa__plate:has(.ProjectCard-module__hd2bGa__plateImage):before{display:none}.ProjectCard-module__hd2bGa__plate:has(.ProjectCard-module__hd2bGa__plateImage):after{content:"";pointer-events:none;background:linear-gradient(#00000073 0%,#0000 30% 70%,#00000040 100%);position:absolute;inset:0}.ProjectCard-module__hd2bGa__plate:before{content:"";opacity:.5;pointer-events:none;background-image:radial-gradient(#ffffff29 1px,#0000 1px);background-size:14px 14px;position:absolute;inset:0}.ProjectCard-module__hd2bGa__plateYear{top:var(--space-2);left:var(--space-2);z-index:2;font-family:var(--font-body), monospace;color:#ffffffd9;font-size:.75rem;position:absolute}.ProjectCard-module__hd2bGa__plateImage{object-fit:cover;object-position:top;transition:transform var(--duration-fast) var(--ease-exhibit)}.ProjectCard-module__hd2bGa__card:hover .ProjectCard-module__hd2bGa__plateImage,.ProjectCard-module__hd2bGa__card:focus-visible .ProjectCard-module__hd2bGa__plateImage{transform:scale(1.03)}.ProjectCard-module__hd2bGa__plateBadge{bottom:var(--space-2);right:var(--space-2);z-index:2;background:var(--plate-accent);color:#fff;border:2px solid #ffffffd9;border-radius:999px;justify-content:center;align-items:center;width:2.75rem;height:2.75rem;display:flex;position:absolute;box-shadow:0 6px 16px #17140f40}.ProjectCard-module__hd2bGa__plateBadgeMotif{width:1.6rem!important;max-width:none!important;height:1.6rem!important}.ProjectCard-module__hd2bGa__body{padding:var(--space-3);flex-direction:column;gap:.6rem;display:flex}.ProjectCard-module__hd2bGa__titleRow{justify-content:space-between;align-items:baseline;gap:.35rem var(--space-1);flex-wrap:wrap;display:flex}.ProjectCard-module__hd2bGa__titleRow h3{font-size:1.3rem}.ProjectCard-module__hd2bGa__status{font-family:var(--font-body), sans-serif;text-transform:uppercase;letter-spacing:.06em;color:var(--paper-text-dim);text-align:right;max-width:11rem;font-size:.68rem}.ProjectCard-module__hd2bGa__oneLiner{color:var(--paper-text-dim);font-size:.95rem}.ProjectCard-module__hd2bGa__tech{font-family:var(--font-body), sans-serif;flex-wrap:wrap;gap:.4rem;font-size:.72rem;list-style:none;display:flex}.ProjectCard-module__hd2bGa__tech li{border:1px solid var(--paper-line);color:var(--paper-text-dim);border-radius:999px;padding:.25rem .6rem}
.FeaturedWork-module__wbKvdq__section{background:var(--paper);color:var(--paper-text);padding:var(--space-6) var(--space-3)}.FeaturedWork-module__wbKvdq__inner{max-width:var(--content-max);margin:0 auto}.FeaturedWork-module__wbKvdq__heading{justify-content:space-between;align-items:baseline;gap:var(--space-2);margin-bottom:var(--space-4);flex-wrap:wrap;display:flex}.FeaturedWork-module__wbKvdq__heading h2{font-size:clamp(2rem,5vw,3rem)}.FeaturedWork-module__wbKvdq__viewAll{font-family:var(--font-body), sans-serif;color:var(--accent-coral-ink);font-weight:600}.FeaturedWork-module__wbKvdq__grid{gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(260px,1fr));display:grid}
.ShelfPreview-module__48f4HG__section{background:var(--ink);color:var(--ink-text);padding:var(--space-6) var(--space-3);position:relative;overflow:hidden}.ShelfPreview-module__48f4HG__inner{max-width:var(--content-max);margin:0 auto}.ShelfPreview-module__48f4HG__heading{font-family:var(--font-poster), var(--font-display), serif;text-transform:uppercase;font-size:clamp(2rem,5vw,3rem)}.ShelfPreview-module__48f4HG__lede{color:var(--ink-text-dim);margin:var(--space-2) 0 var(--space-4);max-width:48ch}.ShelfPreview-module__48f4HG__grid{gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(220px,1fr));list-style:none;display:grid}.ShelfPreview-module__48f4HG__card{border:1px solid var(--ink-line);padding:var(--space-3);transition:transform var(--duration-fast) var(--ease-exhibit), border-color var(--duration-fast) ease;border-radius:1.25rem;flex-direction:column;align-items:flex-start;gap:.6rem;display:flex}.ShelfPreview-module__48f4HG__card:hover{border-color:var(--accent-yellow);transform:translateY(-4px)}.ShelfPreview-module__48f4HG__badge{background:var(--badge-accent,var(--accent-yellow));width:2.75rem;height:2.75rem;color:var(--ink);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.ShelfPreview-module__48f4HG__badge svg{width:1.4rem;height:1.4rem}.ShelfPreview-module__48f4HG__category{font-family:var(--font-body), sans-serif;text-transform:uppercase;letter-spacing:.08em;color:var(--ink);background:var(--accent-coral);border-radius:999px;padding:.25rem .7rem;font-size:.72rem;font-weight:700;display:inline-block}.ShelfPreview-module__48f4HG__grid p{color:var(--ink-text-dim);font-size:.92rem}
.SiteHeader-module__azVQWW__header{z-index:50;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--paper-line);background:#f4eee2d9;position:sticky;top:0}.SiteHeader-module__azVQWW__inner{max-width:var(--content-max);padding:var(--space-2) var(--space-3);justify-content:space-between;align-items:center;gap:var(--space-2);margin:0 auto;display:flex}.SiteHeader-module__azVQWW__wordmark{font-family:var(--font-display), serif;color:var(--paper-text);align-items:baseline;gap:.5rem;font-size:1.15rem;display:flex}.SiteHeader-module__azVQWW__handle{font-family:var(--font-body), monospace;color:var(--accent-yellow-ink);font-size:.75rem;font-weight:500}.SiteHeader-module__azVQWW__nav{gap:var(--space-3);font-family:var(--font-body), sans-serif;color:var(--paper-text-dim);font-size:.95rem;font-weight:600;display:flex;position:relative}.SiteHeader-module__azVQWW__nav svg{display:none}.SiteHeader-module__azVQWW__nav a{transition:color var(--duration-fast) ease}.SiteHeader-module__azVQWW__nav a:hover,.SiteHeader-module__azVQWW__nav a:focus-visible{color:var(--accent-coral-ink)}.SiteHeader-module__azVQWW__menuButton{border:2px solid var(--paper-text);width:2.75rem;height:2.75rem;transition:background var(--duration-fast) ease, border-color var(--duration-fast) ease, transform var(--duration-fast) var(--ease-exhibit);background:0 0;border-radius:999px;justify-content:center;align-items:center;display:none}.SiteHeader-module__azVQWW__menuButton[aria-expanded=true]{background:var(--accent-yellow);border-color:var(--accent-yellow);transform:rotate(-6deg)}.SiteHeader-module__azVQWW__menuIcon,.SiteHeader-module__azVQWW__menuIcon:before,.SiteHeader-module__azVQWW__menuIcon:after{content:"";background:var(--paper-text);width:1.3rem;height:2px;transition:transform var(--duration-fast) ease, opacity var(--duration-fast) ease;display:block;position:relative}.SiteHeader-module__azVQWW__menuIcon:before{position:absolute;top:-6px}.SiteHeader-module__azVQWW__menuIcon:after{position:absolute;top:6px}.SiteHeader-module__azVQWW__menuIcon[data-open=true]{background:0 0}.SiteHeader-module__azVQWW__menuIcon[data-open=true]:before{top:0;transform:rotate(45deg)}.SiteHeader-module__azVQWW__menuIcon[data-open=true]:after{top:0;transform:rotate(-45deg)}@media (max-width:640px){.SiteHeader-module__azVQWW__menuButton{display:flex}.SiteHeader-module__azVQWW__nav{inset:4rem var(--space-2) auto;background:var(--paper);padding:var(--space-3);border:1px solid var(--paper-line);opacity:0;transition:transform .4s cubic-bezier(.34, 1.56, .64, 1), opacity var(--duration-base) ease;border-radius:1.25rem;flex-direction:column;position:fixed;transform:translateY(-16px)scale(.96);box-shadow:0 20px 45px #17140f29}.SiteHeader-module__azVQWW__nav[data-open=true]{opacity:1;transform:translateY(0)scale(1)}.SiteHeader-module__azVQWW__nav svg{display:block}}
.SiteFooter-module__VFKzxG__footer{background:var(--ink);color:var(--ink-text);margin-top:var(--space-6);position:relative;overflow:hidden}.SiteFooter-module__VFKzxG__inner{max-width:var(--content-max);padding:var(--space-5) var(--space-3) var(--space-4);gap:var(--space-4);flex-wrap:wrap;justify-content:space-between;margin:0 auto;display:flex}.SiteFooter-module__VFKzxG__heading{font-family:var(--font-poster), var(--font-display), serif;text-transform:uppercase;margin-bottom:var(--space-1);color:var(--accent-yellow);font-size:clamp(2rem,5vw,3.2rem)}.SiteFooter-module__VFKzxG__copy{color:var(--ink-text-dim);max-width:32ch}.SiteFooter-module__VFKzxG__links{font-family:var(--font-body), sans-serif;flex-direction:column;gap:.6rem;font-weight:600;list-style:none;display:flex}.SiteFooter-module__VFKzxG__links a{transition:color var(--duration-fast) ease}.SiteFooter-module__VFKzxG__links a:hover,.SiteFooter-module__VFKzxG__links a:focus-visible{color:var(--accent-yellow)}.SiteFooter-module__VFKzxG__bottom{max-width:var(--content-max);padding:var(--space-2) var(--space-3) var(--space-3);font-family:var(--font-body), sans-serif;color:var(--ink-text-dim);border-top:1px solid var(--ink-line);justify-content:space-between;margin:0 auto;font-size:.8rem;display:flex}
.page-module__NfDiEG__page{background:var(--paper);color:var(--paper-text);min-height:60vh;position:relative;overflow:hidden}.page-module__NfDiEG__helloSection{max-width:var(--content-max);padding:var(--space-6) var(--space-3) var(--space-5);gap:var(--space-5);grid-template-columns:minmax(14rem,20rem) 1fr;align-items:start;margin:0 auto;display:grid}.page-module__NfDiEG__helloPortraitCol{gap:var(--space-3);flex-direction:column;display:flex}.page-module__NfDiEG__portraitWrap{aspect-ratio:1;width:100%;max-width:16rem;position:relative}.page-module__NfDiEG__portraitBlock{background:var(--accent-yellow);border-radius:32px;position:absolute;inset:10% -10% -10% 10%}.page-module__NfDiEG__portraitCircle{z-index:1;background:var(--ink);width:100%;height:100%;color:var(--ink-text);font-family:var(--font-poster), var(--font-display), serif;border:6px solid var(--paper);border-radius:50%;justify-content:center;align-items:center;font-size:3rem;display:flex;position:relative;box-shadow:0 12px 30px #14110c2e}.page-module__NfDiEG__contactCard{background:var(--paper-raised);border:1px solid var(--paper-line);padding:var(--space-3);border-radius:1.25rem}.page-module__NfDiEG__contactHeading{margin-bottom:var(--space-1);font-weight:700}.page-module__NfDiEG__contactList{margin-bottom:var(--space-2);flex-direction:column;gap:.4rem;font-size:.9rem;list-style:none;display:flex}.page-module__NfDiEG__contactList a{color:var(--accent-coral-ink);word-break:break-word;font-weight:600}.page-module__NfDiEG__qr{align-items:center;gap:var(--space-2);border-top:1px solid var(--paper-line);padding-top:var(--space-2);color:var(--paper-text-dim);font-size:.8rem;display:flex}.page-module__NfDiEG__helloCol{position:relative}.page-module__NfDiEG__quote{font-family:var(--font-poster), var(--font-display), serif;color:var(--accent-yellow);margin-bottom:-1.5rem;font-size:5rem;line-height:1}.page-module__NfDiEG__helloHeading{font-family:var(--font-poster), var(--font-display), serif;text-transform:uppercase;font-size:clamp(2.5rem,6vw,4rem)}.page-module__NfDiEG__bio{color:var(--paper-text-dim);max-width:none;margin-top:var(--space-2);font-size:1.05rem}.page-module__NfDiEG__bio a{color:var(--accent-coral-ink);font-weight:600}.page-module__NfDiEG__detailGrid{gap:var(--space-4);margin-top:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(14rem,1fr));display:grid}.page-module__NfDiEG__detailHeading{font-family:var(--font-body), sans-serif;text-transform:uppercase;letter-spacing:.06em;border-bottom:2px solid var(--accent-yellow);margin-bottom:var(--space-2);padding-bottom:.3rem;font-size:.9rem;font-weight:700;display:inline-block}.page-module__NfDiEG__eduList,.page-module__NfDiEG__experienceList{gap:var(--space-2);flex-direction:column;list-style:none;display:flex}.page-module__NfDiEG__eduSchool,.page-module__NfDiEG__jobRole{font-weight:700}.page-module__NfDiEG__eduCredential,.page-module__NfDiEG__jobOrg{color:var(--paper-text-dim);font-size:.9rem}.page-module__NfDiEG__eduPeriod,.page-module__NfDiEG__jobPeriod{color:var(--paper-text-dim);font-size:.8rem;font-family:var(--font-body), sans-serif}.page-module__NfDiEG__skillGroups{gap:var(--space-2);flex-direction:column;display:flex}.page-module__NfDiEG__skillGroupLabel{font-family:var(--font-body), sans-serif;color:var(--paper-text-dim);margin-bottom:.35rem;font-size:.78rem;font-weight:700}.page-module__NfDiEG__skillGrid{flex-wrap:wrap;gap:.5rem;list-style:none;display:flex}.page-module__NfDiEG__skillBadge{background:var(--accent-yellow);color:var(--paper-text);border-radius:999px;padding:.4rem .9rem;font-size:.8rem;font-weight:700}.page-module__NfDiEG__experienceBlock{margin-top:var(--space-4)}.page-module__NfDiEG__jobDuties{color:var(--paper-text-dim);flex-direction:column;gap:.3rem;margin:.5rem 0 0 1.1rem;font-size:.92rem;list-style:outside;display:flex}@media (max-width:720px){.page-module__NfDiEG__helloSection{grid-template-columns:1fr}}
.page-module__Ro7qTW__page{background:var(--paper);color:var(--paper-text)}.page-module__Ro7qTW__banner{background:linear-gradient(160deg, var(--plate-accent) 0%, color-mix(in srgb, var(--plate-accent) 45%, black) 100%);color:#fff;padding:var(--space-6) var(--space-3) var(--space-5);position:relative;overflow:hidden}.page-module__Ro7qTW__bannerMotif{opacity:.35;pointer-events:none;width:min(60%,22rem);max-width:none;position:absolute;top:50%;right:clamp(-2rem,4vw,2rem);transform:translateY(-50%)}@media (max-width:720px){.page-module__Ro7qTW__bannerMotif{display:none}}.page-module__Ro7qTW__bannerInner{z-index:1;max-width:var(--content-max);margin:0 auto;position:relative}.page-module__Ro7qTW__back{margin-bottom:var(--space-3);font-family:var(--font-body), sans-serif;color:#ffffffd9;font-weight:600;display:inline-block}.page-module__Ro7qTW__status{font-family:var(--font-body), sans-serif;text-transform:uppercase;letter-spacing:.08em;color:#ffffffbf;margin-bottom:var(--space-1);font-size:.8rem}.page-module__Ro7qTW__bannerInner h1{color:#fff;font-size:clamp(2.5rem,7vw,4.2rem)}.page-module__Ro7qTW__oneLiner{margin-top:var(--space-2);color:#ffffffe6;max-width:48ch;font-size:1.1rem}.page-module__Ro7qTW__body{max-width:44rem;padding:var(--space-5) var(--space-3) var(--space-6);gap:var(--space-4);flex-direction:column;margin:0 auto;display:flex;position:relative;overflow:hidden}.page-module__Ro7qTW__body h2{margin-bottom:var(--space-2);font-size:1.5rem}.page-module__Ro7qTW__screenshotFrame{margin:calc(-1 * var(--space-5)) 0 0;background:var(--paper-raised);border:1px solid var(--paper-line);border-radius:.9rem;overflow:hidden;box-shadow:0 22px 48px #17140f38}.page-module__Ro7qTW__screenshotChrome{background:color-mix(in srgb, var(--paper-raised) 85%, black);gap:.4rem;padding:.6rem .75rem;display:flex}.page-module__Ro7qTW__screenshotChrome span{background:var(--paper-line);border-radius:50%;width:.6rem;height:.6rem}.page-module__Ro7qTW__screenshotChrome span:first-child{background:var(--accent-coral)}.page-module__Ro7qTW__screenshotImage{width:100%;height:auto;display:block}@media (max-width:720px){.page-module__Ro7qTW__screenshotFrame{margin-top:calc(-1 * var(--space-5))}}.page-module__Ro7qTW__summary p{color:var(--paper-text);font-size:1.1rem}.page-module__Ro7qTW__details{gap:var(--space-2);flex-direction:column;padding-left:1.25rem;display:flex}.page-module__Ro7qTW__details li{color:var(--paper-text-dim)}.page-module__Ro7qTW__limitations{background:var(--paper-raised);padding:var(--space-2) var(--space-3);border-radius:.75rem;padding-left:3.5rem;position:relative}.page-module__Ro7qTW__limitationsBadge{top:var(--space-2);left:var(--space-2);background:var(--accent-yellow);width:2rem;height:2rem;color:var(--paper-text);border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute}.page-module__Ro7qTW__limitationsBadge svg{width:1.1rem;height:1.1rem}.page-module__Ro7qTW__limitations p{color:var(--paper-text-dim);max-width:none}.page-module__Ro7qTW__tech{flex-wrap:wrap;gap:.5rem;list-style:none;display:flex}.page-module__Ro7qTW__tech li{font-family:var(--font-body), sans-serif;border:1px solid var(--paper-line);color:var(--paper-text-dim);border-radius:999px;padding:.3rem .75rem;font-size:.8rem}.page-module__Ro7qTW__links{gap:var(--space-3);flex-wrap:wrap;display:flex}.page-module__Ro7qTW__links a{font-family:var(--font-body), sans-serif;color:var(--accent-coral-ink);font-weight:600}
.page-module__t-ObYq__page{background:var(--paper);color:var(--paper-text);min-height:60vh;padding:var(--space-6) var(--space-3);position:relative;overflow:hidden}.page-module__t-ObYq__header{max-width:var(--content-max);margin:0 auto var(--space-5)}.page-module__t-ObYq__header h1{margin-bottom:var(--space-2);font-size:clamp(2.5rem,7vw,4rem)}.page-module__t-ObYq__header p{color:var(--paper-text-dim);max-width:52ch}.page-module__t-ObYq__grid{max-width:var(--content-max);margin:0 auto var(--space-6);gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(260px,1fr));display:grid}.page-module__t-ObYq__archive{max-width:var(--content-max);border-top:1px solid var(--paper-line);padding-top:var(--space-4);margin:0 auto}.page-module__t-ObYq__archive h2{margin-bottom:var(--space-3);font-size:1.6rem}.page-module__t-ObYq__archive ul{gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(240px,1fr));list-style:none;display:grid}.page-module__t-ObYq__archive a{font-family:var(--font-body), sans-serif;color:var(--accent-coral-ink);font-weight:600}.page-module__t-ObYq__archive p{color:var(--paper-text-dim);margin-top:.35rem;font-size:.9rem}
