@font-face{font-family:Nunito;src:url("assets/nunito.woff2") format("woff2");font-weight:400 900;font-display:swap}
@font-face{font-family:Cozy;src:url("assets/cozy.woff2?v=personal-3") format("woff2");font-weight:400;font-display:swap}
:root{--paper:#fffafb;--surface:#ffffff;--ink:#352b31;--muted:#75616c;--accent:#ac3c63;--accent-hover:#8e294e;--pink:#fbe8ef;--line:#eadce2;--stage:#fff4f8;--stage-ink:#352b31;--stage-muted:#75616c;--signal:#ac3c63;font-family:Nunito,"Microsoft YaHei","PingFang SC",sans-serif;color:var(--ink);background:var(--paper);color-scheme:light;scroll-behavior:smooth;scroll-padding-top:28px}
*{box-sizing:border-box}body{margin:0;font-size:16px;line-height:1.85}h1,h2,h3,p,figure{margin:0}h1,h2,h3{line-height:1.4;text-wrap:balance}a{color:inherit;text-decoration:none}button{font:inherit}img{display:block;max-width:100%;height:auto}svg{fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.icon{width:20px;height:20px;vertical-align:middle;flex:none}a,button,summary{-webkit-tap-highlight-color:transparent;touch-action:manipulation}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:5px}a,button{cursor:pointer}::selection{background:#f7cedd;color:var(--ink)}::-webkit-scrollbar{width:9px}::-webkit-scrollbar-thumb{background:#d9afbf;border:2px solid var(--paper);border-radius:8px}::-webkit-scrollbar-track{background:var(--paper)}[hidden]{display:none!important}.wrap{width:min(1160px,calc(100% - 64px));margin-inline:auto}.skip-link{position:fixed;left:20px;top:-80px;z-index:30;background:var(--accent);color:white;padding:10px 20px;border-radius:8px}.skip-link:focus{top:12px}@supports(animation-timeline:scroll()){.reading-progress{position:fixed;top:0;left:0;width:100%;height:2px;background:var(--accent);transform-origin:left;z-index:20;animation:reading linear;animation-timeline:scroll()}}@keyframes reading{from{transform:scaleX(0)}to{transform:scaleX(1)}}
.site-header{height:80px;display:flex;align-items:center;gap:35px}.brand{display:flex;gap:11px;align-items:center;flex:1;line-height:1.2}.brand>span{font-size:25px;font-weight:850;letter-spacing:-.5px}.brand img{object-fit:contain}.brand-cn{font-family:Cozy,"Microsoft YaHei",sans-serif;font-size:22px;font-weight:400;margin-left:3px}.brand small{display:block;font-size:12px;font-weight:400;letter-spacing:0;color:var(--muted);margin-top:7px}.site-header nav{display:flex;gap:30px}.site-header nav>a{position:relative;display:flex;align-items:center;min-height:44px;font-size:14px;font-weight:700}.site-header nav>a:hover,.site-header nav>a[aria-current]{color:var(--accent)}.site-header nav>a[aria-current]:after{content:"";position:absolute;bottom:0;left:50%;width:13px;height:3px;background:var(--accent);border-radius:3px;translate:-50% 0}.github-top{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:0 16px;border:1px solid var(--line);border-radius:24px;background:var(--surface);font-size:13px;font-weight:700}.github-top:hover{background:var(--pink)}
.intro{display:grid;grid-template-columns:minmax(0,1fr) 350px;gap:70px;align-items:center;padding:56px 18px 68px 4px}.intro-copy{max-width:660px}.intro h1{font-size:27px;font-weight:750;letter-spacing:-.4px}.intro h1>span{color:var(--accent)}.intro-claim{font-family:Cozy,"Microsoft YaHei",sans-serif;font-size:clamp(35px,3.7vw,48px);line-height:1.5;letter-spacing:.3px;margin-top:17px}.intro-description{max-width:520px;color:var(--muted);margin-top:21px;line-height:1.95}.intro-aside{color:var(--muted);font-size:13px;max-width:520px;margin-top:12px}.actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap;margin-top:25px}.button{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:0 20px;border:0;border-radius:8px;font-size:14px;font-weight:750;transition:background .2s}.primary{background:var(--accent);color:white}.primary:hover{background:var(--accent-hover)}.button .icon,.text-link .icon{width:17px;height:17px}.text-link{display:inline-flex;align-items:center;gap:7px;min-height:44px;color:var(--accent);font-size:14px;font-weight:750;text-decoration:underline;text-decoration-color:transparent;text-underline-offset:5px}.text-link:hover{text-decoration-color:currentColor}
.portrait{padding:18px;background:var(--surface);border-radius:16px;box-shadow:0 16px 42px #a4527015;position:relative}.portrait-art{position:relative;background:linear-gradient(145deg,#fff6f9,#f9dce8);overflow:hidden;border-radius:7px;aspect-ratio:1;display:grid;align-items:end}.portrait-art>img{width:100%;height:100%;object-fit:contain}.portrait-art>.icon{position:absolute;top:15px;right:14px;color:var(--accent);width:26px;height:26px}.portrait figcaption{font-size:12px;color:var(--muted);margin-top:16px;text-align:left}
.about-section{margin-top:64px;display:grid;grid-template-columns:290px minmax(0,1fr);gap:55px;padding:38px 4px 50px;border-top:1px solid var(--line)}.section-lead h2,.section-heading h2,.contact-section h2{font-family:Cozy,"Microsoft YaHei",sans-serif;font-size:29px;font-weight:400}.section-lead>p{color:var(--muted);font-size:14px;margin-top:13px}.about-copy{max-width:680px}.about-copy>p+p{margin-top:13px}.interest-list{list-style:none;display:flex;gap:9px 22px;flex-wrap:wrap;margin:21px 0 0;padding:0;font-size:13px;font-weight:700;color:var(--accent)}.about-copy .margin-note{font-size:13px;color:var(--muted);margin-top:16px}.section-heading{display:block;margin:17px 4px 24px}.section-heading>p{color:var(--muted);font-size:14px;margin-top:7px}.work-section{scroll-margin-top:25px;padding-bottom:8px}
.project-feature,.project-exhibit{background:var(--stage);color:var(--stage-ink);border-radius:16px;overflow:hidden}.project-feature{padding:32px;position:relative}.feature-heading{display:flex;align-items:center;justify-content:space-between;gap:20px}.feature-heading h3{font-size:40px;font-weight:850;letter-spacing:-1px}.feature-heading>div>p{font-size:15px;color:var(--signal);margin-top:1px}.project-state{font-size:12px;color:var(--signal);border:1px solid #dab9c6;border-radius:20px;white-space:nowrap;padding:4px 12px}.feature-story{margin-top:22px;display:grid;grid-template-columns:1fr 1.3fr;gap:5px 40px;align-items:start}.feature-story>p:first-child{font-size:20px;line-height:1.8;max-width:320px}.feature-story>p:nth-child(2){color:var(--stage-muted);font-size:15px;max-width:580px}.feature-story>.feature-aside{grid-column:2;font-size:13px;color:var(--stage-muted);margin-top:8px}.feature-bottom{display:flex;justify-content:space-between;align-items:center;gap:20px;padding-top:25px}.feature-bottom .actions{margin:0;gap:20px}.tech-list{list-style:none;display:flex;gap:8px 18px;flex-wrap:wrap;padding:0;margin:0;font-size:12px;color:var(--stage-muted)}.light{background:var(--accent);color:white}.light:hover{background:var(--accent-hover)}.stage-link{display:inline-flex;align-items:center;gap:8px;color:var(--stage-ink);font-size:13px;min-height:44px}.stage-link:hover{text-decoration:underline;text-underline-offset:5px}
.preview-gallery{margin-top:28px}.preview-controls{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:13px}.preview-controls button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 15px;border:1px solid #dab9c6;border-radius:7px;color:var(--stage-muted);background:transparent;font-size:13px;font-weight:650;transition:background .2s,color .2s}.preview-controls button:hover{color:var(--stage-ink);background:#fbe8ef}.preview-controls button[aria-pressed=true]{color:white;background:var(--accent);border-color:var(--accent)}.preview-panels{display:grid;gap:28px}.preview-figure{min-width:0}.preview-image{display:grid;place-items:center;border-radius:10px;overflow:hidden;background:#f6ecf0;min-height:240px}.preview-image img{width:100%;height:auto;max-height:640px;object-fit:contain}.preview-figure[data-view-panel=pet] .preview-image img{width:auto;max-height:490px}.gallery-ready .preview-image{aspect-ratio:1440/868}.gallery-ready .preview-image img{width:100%;height:100%;max-height:640px;object-fit:contain}.gallery-ready .preview-figure[data-view-panel=pet] .preview-image img{width:auto;max-width:100%;height:100%;max-height:600px}.preview-figure figcaption{display:flex;justify-content:space-between;gap:14px;align-items:center;color:var(--stage-muted);font-size:12px;padding-top:9px}.preview-figure figcaption>a{display:inline-flex;gap:5px;align-items:center;min-height:32px;color:var(--stage-ink);white-space:nowrap}.preview-figure figcaption .icon{width:15px;height:15px}.preview-figure figcaption>a:hover{text-decoration:underline;text-underline-offset:4px}
.contact-section{display:grid;grid-template-columns:1fr auto;align-items:center;gap:40px;padding:66px 4px 52px}.contact-section>div>p{color:var(--muted);font-size:15px;margin:15px 0 8px;line-height:1.95}.signature{font-family:Cozy,"Microsoft YaHei",sans-serif;font-size:24px;color:var(--accent);rotate:-3deg}.signature>span{display:block;font-family:Nunito,"Microsoft YaHei",sans-serif;font-size:12px;color:var(--muted);text-align:right;margin-top:8px;rotate:3deg}.site-footer{padding-block:24px 20px;border-top:1px solid var(--line);font-size:12px;color:var(--muted)}.footer-line{display:flex;justify-content:space-between;align-items:center;gap:15px}.footer-line>a{display:inline-flex;gap:4px;align-items:center;min-height:36px}.footer-line .icon{width:15px;height:15px}.site-footer a:hover{color:var(--accent);text-decoration:underline;text-underline-offset:4px}.beian{text-align:center;margin-top:10px;font-size:13px}.beian>a{display:inline-flex;align-items:center;min-height:32px}
.back-link{display:inline-flex;gap:8px;align-items:center;min-height:44px;color:var(--muted);font-size:13px}.back-link>.icon{width:17px;height:17px;rotate:180deg}.back-link:hover{color:var(--accent)}.project-intro{padding:30px 0 35px;max-width:860px}.project-intro h1{font-size:clamp(48px,5vw,67px);font-weight:850;letter-spacing:-1.5px;line-height:1.15}.project-tagline{text-wrap:balance;font-family:Cozy,"Microsoft YaHei",sans-serif;font-size:29px;line-height:1.6;margin-top:13px}.project-summary{font-size:16px;max-width:740px;color:var(--muted);margin-top:16px}.project-meta{display:flex;gap:10px 22px;flex-wrap:wrap;align-items:center;margin-top:23px;color:var(--muted);font-size:13px}.project-meta>a{display:inline-flex;align-items:center;gap:4px;min-height:36px;color:var(--accent)}.project-meta .icon{width:15px;height:15px}.status-label{color:var(--accent);background:var(--pink);border-radius:20px;padding:3px 11px}.project-exhibit{padding:30px 35px}.exhibit-intro{display:flex;align-items:center;justify-content:space-between;gap:30px}.exhibit-intro h2{font-family:Cozy,"Microsoft YaHei",sans-serif;font-size:28px;font-weight:400;line-height:1.6}.exhibit-intro>p{font-size:14px;color:var(--stage-muted)}.project-nav{display:flex;justify-content:center;gap:35px;flex-wrap:wrap;border-bottom:1px solid var(--line);padding:20px 0 18px;margin-bottom:42px}.project-nav>a{font-size:14px;min-height:44px;display:inline-flex;align-items:center;font-weight:700}.project-nav>a:hover{color:var(--accent)}.project-content{max-width:860px;margin-inline:auto}.project-content>section+section{margin-top:64px;padding-top:38px;border-top:1px solid var(--line)}.project-content h2{font-size:28px;line-height:1.5;letter-spacing:-.3px}.section-description{color:var(--muted);margin-top:14px;max-width:75ch}.experience-row{display:grid;grid-template-columns:190px 1fr;gap:30px;margin-top:31px}.experience-row h3{font-size:17px;font-weight:800;line-height:1.8}.experience-row p{font-size:16px;color:var(--muted)}.experience-row p+p{margin-top:11px}.project-content section>h3{font-size:19px;margin-top:28px}.implementation{margin:16px 0 25px}.implementation>div{display:grid;grid-template-columns:130px 1fr;gap:25px;margin-top:18px}.implementation dt{font-weight:750;color:var(--ink)}.implementation dd{margin:0;color:var(--muted)}.engineering-links{display:flex;gap:20px;flex-wrap:wrap}.notes-list{margin-top:23px}summary{cursor:pointer;list-style:none}summary::-webkit-details-marker{display:none}.note+.note{border-top:1px solid var(--line)}.note summary{display:flex;gap:16px;align-items:center;padding:23px 0;min-height:70px}.note-mark{display:grid;place-items:center;background:var(--pink);color:var(--accent);width:42px;height:46px;border-radius:10px;flex:none}.note-summary{display:flex;flex-direction:column;gap:2px;min-width:0}.note-summary strong{font-size:16px;line-height:1.8}.note-category{font-size:12px;color:var(--accent)}.note-summary>span:last-child{font-size:13px;color:var(--muted)}.note-chevron{width:18px;height:18px;margin-left:auto;color:var(--accent);transition:rotate .2s}.note[open] .note-chevron{rotate:90deg}.note-content{padding:0 0 25px 58px;color:var(--muted);font-size:16px;line-height:1.95}.note-content p+p{margin-top:12px}.note-content>a{display:inline-flex;align-items:center;min-height:36px;margin-top:13px;color:var(--accent);font-size:13px;text-decoration:underline;text-underline-offset:4px;overflow-wrap:anywhere}code{font-family:Consolas,monospace;font-size:.9em;background:#fbe8ef;padding:2px 5px;border-radius:4px}.progress-list{margin:22px 0}.progress-list>div{display:grid;grid-template-columns:130px 1fr;gap:25px;padding:18px 0;border-bottom:1px solid var(--line)}.progress-list dt{font-size:14px;font-weight:750;color:var(--accent)}.progress-list dd{margin:0;color:var(--muted)}.progress-note{font-size:13px;color:var(--muted)}.project-signoff{font-family:Cozy,"Microsoft YaHei",sans-serif;font-size:23px;color:var(--accent);text-align:center;padding:60px 15px 50px}.not-found{display:grid;place-items:center;min-height:100dvh;padding:30px;text-align:center}.not-found main{max-width:600px}.not-found img{margin:0 auto 25px}.not-found h1{font-family:Cozy,"Microsoft YaHei",sans-serif;font-size:32px;font-weight:400}.not-found p{margin:18px 0 25px;color:var(--muted)}
@media(max-width:1024px){.wrap{width:calc(100% - 48px)}.intro{grid-template-columns:minmax(0,1fr) 250px;gap:40px;padding-block:43px 60px}.intro-claim{font-size:38px}.intro-description{font-size:15px}.about-section{grid-template-columns:230px 1fr;gap:35px}.feature-story{grid-template-columns:1fr 1.4fr;gap:5px 25px}.feature-bottom{align-items:start;flex-direction:column}.feature-bottom .actions{width:100%;justify-content:space-between}.contact-section{gap:25px}.signature{font-size:21px}.desktop-break{display:none}.project-content{max-width:800px}.experience-row{grid-template-columns:165px 1fr;gap:24px}}
@media(max-width:767px){.wrap{width:calc(100% - 32px)}.site-header{height:auto;min-height:110px;padding-block:16px 12px;display:grid;grid-template-columns:1fr auto;gap:9px 12px}.brand{gap:8px}.brand img{width:38px;height:38px}.brand>span{font-size:22px}.brand-cn{font-size:20px}.brand small{font-size:11px;margin-top:5px}.github-top{grid-column:2;grid-row:1;width:40px;min-height:40px;padding:0}.github-top>span{display:none}.site-header nav{grid-column:1/-1;grid-row:2;justify-content:center;gap:38px}.site-header nav>a{min-height:38px;font-size:13px}.intro{grid-template-columns:1fr;gap:29px;padding:26px 5px 38px}.intro h1{font-size:23px}.intro-claim{font-size:35px;line-height:1.5;margin-top:13px}.intro-description{font-size:15px;margin-top:18px}.intro-aside{font-size:12px;margin-top:11px}.actions{gap:18px;margin-top:20px}.button{min-height:46px;font-size:13px;padding-inline:16px}.text-link{font-size:13px}.portrait{width:205px;justify-self:end;margin:0 11px 4px 0;padding:12px 12px 11px;rotate:4deg}.portrait-art>.icon{width:21px;height:21px;top:11px;right:10px}.portrait figcaption{font-size:11px;margin-top:8px}.about-section{grid-template-columns:1fr;gap:20px;padding:30px 5px 34px}.section-lead h2,.section-heading h2,.contact-section h2{font-size:27px}.section-lead>p{font-size:13px;margin-top:8px}.section-lead>p>br{display:none}.about-copy{font-size:15px}.interest-list{gap:8px 19px;font-size:12px;margin-top:18px}.about-copy .margin-note{font-size:12px}.section-heading{display:block;margin:10px 5px 19px}.section-heading>p{font-size:12px;margin-top:8px}.project-feature{padding:25px 20px 23px}.feature-heading{gap:10px;align-items:start}.feature-heading h3{font-size:33px}.feature-heading>div>p{font-size:13px}.project-state{font-size:11px;padding:3px 9px;margin-top:6px}.feature-story{display:block;margin-top:19px}.feature-story>p:first-child{font-size:18px;max-width:none}.feature-story>p:nth-child(2){font-size:15px;margin-top:10px}.feature-story>.feature-aside{font-size:12px;margin-top:11px}.preview-gallery{margin-top:21px}.preview-controls{gap:6px;margin-bottom:11px}.preview-controls button{font-size:12px;padding-inline:10px;min-height:44px}.preview-image{min-height:0;border-radius:7px}.gallery-ready .preview-image{aspect-ratio:1.4}.gallery-ready .preview-image img{height:100%;max-height:400px}.preview-figure figcaption{font-size:11px;align-items:start;gap:10px;line-height:1.7}.preview-figure figcaption>a{min-height:30px}.feature-bottom{gap:17px;padding-top:20px}.feature-bottom .actions{align-items:start;flex-direction:column;gap:8px}.tech-list{font-size:11px;gap:5px 13px}.stage-link{font-size:12px;min-height:36px}.contact-section{grid-template-columns:1fr;gap:24px;padding:42px 5px 37px}.contact-section>div>p{font-size:14px;margin-top:11px}.signature{font-size:22px;justify-self:end;margin-right:3px;rotate:-2deg}.signature>span{font-size:11px}.footer-line{flex-wrap:wrap;justify-content:center;gap:2px 14px;font-size:11px}.footer-line>span:nth-child(2){display:none}.site-footer{padding-block:17px 15px}.beian{margin-top:4px;font-size:12px}.back-link{font-size:12px}.project-intro{padding:20px 4px 27px}.project-intro h1{font-size:48px}.project-tagline{font-size:24px;margin-top:10px;line-height:1.6}.project-summary{font-size:15px;margin-top:13px}.project-meta{font-size:12px;gap:7px 15px;margin-top:16px}.project-exhibit{padding:23px 20px}.exhibit-intro{display:block}.exhibit-intro h2{font-size:25px}.exhibit-intro>p{font-size:13px;margin-top:12px}.project-nav{gap:5px 21px;justify-content:start;padding:13px 4px;margin-bottom:29px}.project-nav>a{font-size:13px;min-height:40px}.project-content{padding-inline:5px}.project-content h2{font-size:24px}.section-description{font-size:15px;margin-top:13px}.experience-row{grid-template-columns:1fr;gap:9px;margin-top:25px}.experience-row h3{font-size:17px}.experience-row p{font-size:15px}.project-content>section+section{margin-top:39px;padding-top:28px}.implementation>div{grid-template-columns:1fr;gap:4px;margin-top:18px}.implementation{font-size:15px}.project-content section>h3{font-size:18px;margin-top:25px}.engineering-links{gap:5px 15px}.note summary{gap:11px;padding-block:20px}.note-mark{width:32px;height:39px;border-radius:8px}.note-mark>.icon{width:18px;height:18px}.note-summary strong{font-size:15px}.note-category{font-size:11px}.note-summary>span:last-child{font-size:12px}.note-chevron{width:15px;height:15px}.note-content{font-size:15px;padding:0 0 22px}.note-content>a{font-size:12px}.progress-list>div{grid-template-columns:1fr;gap:5px;padding-block:15px;font-size:15px}.progress-note{font-size:12px}.project-signoff{font-size:20px;padding:38px 5px 32px}}
@media(max-width:360px){.intro-claim{font-size:31px}.intro h1{font-size:22px}.actions{gap:12px}.button{padding-inline:13px;font-size:12px}.text-link{font-size:12px}.portrait{width:185px}.signature{font-size:20px}.project-state{padding-inline:7px;font-size:11px}.preview-controls{gap:5px}.preview-controls button{padding-inline:7px;font-size:11px}.project-nav{gap:4px 16px}.project-nav>a{font-size:12px}}
@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}

.trial-note{font-size:13px;color:var(--muted);line-height:1.8;margin-top:15px}.project-feature .trial-note{color:var(--stage-muted);font-size:12px;margin-top:17px}

/* Pink-white studio: metal is limited to the portrait seam and project rule. */
.portrait:before{content:"";position:absolute;inset:0;border-radius:16px;padding:1px;background:linear-gradient(125deg,#d6c1a3 0%,#fff7df 26%,#b48b59 48%,#f3e3c5 72%,#d6c1a3);mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask-composite:exclude;pointer-events:none}
.portrait-caption{display:flex;align-items:center;gap:9px;color:var(--muted);font-size:12px;margin-bottom:15px}.portrait-caption .icon{color:#927044;width:18px;height:18px}
.portrait figcaption code{padding:0;background:none;font:12px/1.9 Consolas,monospace;white-space:nowrap}.code-comment{color:var(--muted)}.code-string{color:var(--accent)}
.portrait-art>.icon{color:#927044}.portrait-art{border-radius:10px}
.project-feature:before{content:"";position:absolute;inset:0 32px auto;height:2px;background:linear-gradient(90deg,#d6c1a3,#fff7df 35%,#b48b59 65%,#f3e3c5)}
.project-feature .feature-heading h3{letter-spacing:-1px}.tech-list{font-family:Consolas,monospace;color:var(--muted)}
.button:active{transform:translateY(1px)}.preview-image{transition:box-shadow .2s}.preview-image:hover{box-shadow:0 6px 22px #a452701c}
.project-state{background:var(--surface)}.project-feature .trial-note{grid-column:1/-1}
@media(min-width:1025px){.project-feature{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);column-gap:38px;grid-template-rows:min-content 1fr auto auto;align-items:start}.feature-heading{grid-column:1;display:block}.project-state{display:inline-block;margin-top:16px}.feature-story{grid-column:1;display:block;margin-top:20px}.feature-story>p:nth-child(2){margin-top:14px}.feature-story>.feature-aside{margin-top:15px}.project-feature .preview-gallery{grid-column:2;grid-row:1/3;margin-top:0}.feature-bottom{grid-column:1/-1;border-top:1px solid var(--line);margin-top:28px}.feature-bottom .actions{gap:18px}.feature-story>p:first-child{font-size:21px}.project-feature .gallery-ready .preview-image{min-height:260px;aspect-ratio:1.55}.feature-heading h3{font-size:44px}}
@media(max-width:767px){.intro{gap:27px;padding-bottom:45px}.portrait{width:270px;max-width:100%;justify-self:center;rotate:0deg;margin:0;padding:15px}.portrait-art{aspect-ratio:1}.portrait-art>img{object-fit:contain;object-position:center 25%}.portrait figcaption code{font-size:10.5px}.portrait-caption{margin-bottom:10px}.portrait figcaption{margin-top:12px}.about-section{margin-top:35px}.project-feature:before{inset-inline:20px}.project-feature{padding:25px 20px}.contact-section{padding-top:32px}.signature{font-size:22px}}
