@charset "UTF-8";
:root{--bg:#f6f5f0;--ink:#243c4a;--muted:#82908d;--line:#dedfd7;--green:#dce5b4;--serif:"Songti SC","Noto Serif CJK SC","STSong",SimSun,serif;--sans:"PingFang SC","Microsoft YaHei",system-ui,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:32px}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--sans);font-size:15px;-webkit-font-smoothing:antialiased}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit}a{color:inherit;text-decoration:none}button{cursor:pointer}button:focus-visible,a:focus-visible{outline:3px solid #6f925d;outline-offset:6px}::selection{background:#d9e3ba}.wrap{width:min(1240px,calc(100% - 112px));margin-inline:auto}.header{height:116px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:30px}.brand{display:flex;align-items:center;gap:13px;font-size:20px;font-weight:600;letter-spacing:2px}.brand small{display:block;font:8px/1.8 var(--sans);letter-spacing:2.4px;margin-top:4px}.brand-mark{background:#e1e7bb;width:46px;height:46px;display:grid;place-items:center;font:bold 37px Georgia;letter-spacing:-5px;border-radius:50% 50% 3px 50%;position:relative;padding-right:5px}.brand-mark>span{position:absolute;font:16px Georgia;right:0;top:-5px}.desktop-nav{display:flex;gap:38px;margin-left:80px;font-size:13px}.desktop-nav a{padding-block:12px;transition:opacity .2s}.desktop-nav a:hover{opacity:.6}.contact-nav{font-size:13px;display:flex;gap:25px;align-items:center}.contact-nav>span{font-size:23px}.menu-toggle{display:none}.hero{display:grid;grid-template-columns:1.02fr 1fr;gap:64px;align-items:center;padding-block:70px 62px}.eyebrow{font-size:11px;letter-spacing:1.7px;font-weight:500;margin:0}.live-dot{display:inline-block;width:6px;height:6px;background:#7e9568;border-radius:50%;margin-right:9px;vertical-align:2px;box-shadow:0 0 0 4px #7e956812}h1{font:500 clamp(55px,5.25vw,76px)/1.4 var(--serif);letter-spacing:1px;margin:24px 0 20px}.serif-em{position:relative}.serif-em svg{position:absolute;width:100%;height:17px;left:0;bottom:-10px;fill:none;stroke:#bcc997;stroke-width:3;stroke-linecap:round}.period{color:#8b9c7b} .hero-desc{color:#7c8581;font-size:13px;line-height:2.1;margin:0;letter-spacing:.6px}.hero-desc>span{color:var(--ink);font-weight:600}.hero-actions{display:flex;gap:30px;align-items:center;margin-top:30px}.button{min-height:48px;padding:14px 22px;border:0;display:inline-flex;align-items:center;justify-content:space-between;gap:34px;font-size:12px;letter-spacing:.7px;transition:transform .2s,background .2s}.button:hover{transform:translateY(-3px)}.button>span{font-size:20px;line-height:1}.primary{background:var(--ink);color:#fff}.primary:hover{background:#365361}.text-link{font-size:12px;display:flex;gap:18px;align-items:center}.text-link span{font-size:18px}.hero-foot{display:flex;align-items:center;gap:16px;margin-top:40px}.tiny-cross{font-size:36px;color:#748666}.hero-foot p{font-size:10px;line-height:1.9;color:#959b90;margin:0;letter-spacing:1px}.hero-foot strong{font-weight:400;color:#6d7a70}.hero-visual{height:554px;position:relative;padding:8px 19px 28px 0}.photo-frame{height:100%;position:relative;overflow:hidden;border-radius:160px 160px 3px 3px;background:#bdc8bf}.photo-frame>img{width:100%;height:100%;object-fit:cover;object-position:50% 50%;filter:saturate(.55) brightness(.85);transition:transform 1.5s}.hero-visual:hover img{transform:scale(1.025)}.photo-shade{position:absolute;inset:0;background:linear-gradient(0deg,#163642a8,transparent 55%)}.photo-index{position:absolute;top:35px;left:50%;transform:translateX(-50%);font-size:8px;letter-spacing:3px;color:#fff9;white-space:nowrap}.photo-caption{position:absolute;bottom:33px;left:32px;color:#fff}.photo-caption>span{font:21px var(--serif);letter-spacing:3px}.photo-caption>small{display:block;font-size:7px;letter-spacing:2.6px;margin-top:14px;opacity:.65}.photo-spark{position:absolute;top:39%;right:27px;width:60px;height:60px;stroke:#e8ecdc;stroke-width:1.1}.vertical-note{position:absolute;right:-5px;top:42%;writing-mode:vertical-rl;font-size:7px;letter-spacing:2.4px;color:#8d9690}.floating-note{position:absolute;bottom:5px;left:-30px;display:flex;gap:17px;align-items:center;background:#e3e8c1;padding:21px 25px;width:290px;transform:rotate(-5deg);box-shadow:0 8px 24px #20342408}.floating-note>span{font-size:29px}.floating-note>div{font:19px var(--serif);letter-spacing:2px}.floating-note small{display:block;font:6px var(--sans);letter-spacing:1.3px;margin-top:8px}.floating-note>svg{width:45px;fill:none;stroke:#5b7560;stroke-width:1.5;margin-left:auto}.intro-strip{display:flex;align-items:center;justify-content:space-between;border-block:1px solid var(--line);padding-block:22px;font-size:11px;color:#90978f;letter-spacing:1px}.intro-strip strong{font-weight:400;color:#5b7066}.intro-strip>div{display:flex;align-items:center;gap:24px;color:#5d7064}.intro-strip i{font-size:10px;font-style:normal;color:#a7b58e}.section{padding-block:78px 82px;scroll-margin-top:0}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:32px;gap:24px}.section-label{font-size:9px;color:#8e978c;letter-spacing:1.6px;margin-bottom:16px}h2{font:500 33px/1.5 var(--serif);letter-spacing:1px;margin:0}.muted{color:#819083}.section-aside{font-size:11px;color:#8b948b;line-height:1.9;letter-spacing:1px;margin:0 0 3px}.project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.project{border:1px solid #dfE2d6;text-align:left;padding:21px 23px 25px;overflow:hidden;transition:transform .3s,box-shadow .3s}.project:hover{transform:translateY(-6px);box-shadow:0 12px 25px #2c3a3309}.project-top{display:flex;align-items:center;justify-content:space-between;font-size:10px;letter-spacing:1px}.circle-arrow{border:1px solid #899b8a55;border-radius:50%;width:28px;height:28px;display:grid;place-items:center;font-size:17px}.project-web{background:#e8eddf}.project-notes{background:#eeeae0;border-color:#e3dfd5}.project-life{background:#e3e9e6;border-color:#d8e0da}.project-description small{font-size:7px;letter-spacing:1.5px;color:#8d9685}.project-description h3{font:500 20px var(--serif);letter-spacing:1px;margin:12px 0}.project-description p{font-size:10px;color:#829083;line-height:1.9;letter-spacing:.2px;margin:0}.web-art,.notes-art,.life-art{height:225px;position:relative;display:flex;align-items:center;justify-content:center}.mini-browser{height:158px;width:246px;background:#fafbf5;border:1px solid #acb89b;border-radius:5px;transform:rotate(-5deg);position:relative;box-shadow:8px 10px 0 #d4ddc7}.browser-bar{height:20px;border-bottom:1px solid #dfe4d5;display:flex;gap:3px;align-items:center;padding:0 8px}.browser-bar>i{width:3px;height:3px;background:#adb89e;border-radius:50%}.browser-bar>span{font-size:5px;color:#9ba68e;margin-left:auto}.mini-body{padding:17px}.mini-label{display:block;font-size:4px;letter-spacing:1px}.mini-body>strong{display:block;font:20px/1.5 var(--serif);margin-top:7px}.mini-body>strong>span{font-size:13px;margin-left:4px;color:#9cab7b}.mini-lines{margin-top:8px}.mini-lines i{height:2px;background:#d8ddcf;width:75px;display:block;margin-bottom:4px}.mini-lines i:last-child{width:60px}.mini-button{font-size:3px;background:var(--ink);color:white;padding:5px;display:inline-block;vertical-align:top}.mini-art{position:absolute;right:15px;top:56px;background:#d4deba;width:72px;height:72px;border-radius:50%;display:grid;place-items:center}.mini-art>span{font:36px Georgia;font-style:italic}.orbit{position:absolute;border:1px solid #8b9f75;width:90px;height:33px;transform:rotate(-40deg);border-radius:50%}.art-plus{position:absolute;right:1px;bottom:36px;font:25px var(--serif);color:#a1b087}.paper{height:167px;width:165px;background:#fbf8ed;padding:22px 16px;box-shadow:1px 4px 15px #534f3a12;transform:rotate(5deg);position:relative}.paper-back{position:absolute;width:162px;height:169px;transform:rotate(-9deg);background:#d2d4b7;top:24px;left:calc(50% - 83px)}.paper>span:first-child{font-size:5px;letter-spacing:1.3px;color:#9a9e8e}.paper>strong{font:17px/1.5 var(--serif);display:block;margin:13px 0}.paper>i{display:block;background:#dddacc;height:1px;margin-bottom:7px;width:90%}.paper>i:nth-of-type(3){width:70%}.paper>.paper-star{position:absolute;right:14px;bottom:19px;color:#9caa7d;font-size:33px}.paper>small{position:absolute;bottom:14px;font-size:5px;color:#8a8f7c}.life-art>svg{width:235px;position:absolute;right:-12px;bottom:10px;opacity:.9}.life-word{position:absolute;top:33px;left:13px;font:italic 26px/1.1 Georgia;color:#536f61;transform:rotate(-9deg)}.life-word em{font-size:24px}.about-section{background:#eeefe7;padding-block:78px}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center}.about-art{height:340px;position:relative;display:grid;place-items:center}.about-card{background:#f7f6f0;width:300px;height:280px;padding:30px 28px;transform:rotate(-5deg);position:relative;box-shadow:1px 9px 30px #57654f09}.about-card>small{font-size:7px;letter-spacing:2px;color:#a1a58e}.about-card>span{display:block;font:39px/1.5 var(--serif);margin-top:26px;letter-spacing:3px}.outlined{color:#a3ad8b}.card-bottom{font-size:5px;letter-spacing:1px;display:flex;align-items:center;gap:10px;position:absolute;bottom:28px}.card-bottom>i{height:1px;width:40px;background:#b3baa1}.about-stamp{position:absolute;right:28px;top:0;width:105px;height:105px;border:1px solid #899679;border-radius:50%;text-align:center;padding-top:23px;transform:rotate(17deg);font:7px/1.8 Georgia;letter-spacing:1.5px;z-index:1;color:#7d8a6e}.about-stamp>span{display:block;font-size:30px;line-height:1.2}.handwriting{font:italic 25px Georgia;color:#87916e;position:absolute;bottom:3px;right:2px;transform:rotate(-8deg)}.about-copy h2{font-size:35px;line-height:1.6;margin-bottom:24px}.about-copy>p:not(.eyebrow){font-size:12px;line-height:2.1;color:#7e8b7f;max-width:390px;letter-spacing:.4px;margin:0 0 18px}.about-tags{display:flex;gap:9px;flex-wrap:wrap;margin-top:22px}.about-tags span{font-size:9px;border:1px solid #d0d7c4;padding:6px 11px;color:#7d8d73}.signature{font:20px var(--serif);margin-top:25px;letter-spacing:4px}.signature>span{font-size:30px;color:#92a17d;margin-left:12px}.journal-note{font-size:10px;color:#8a978b}.journal-note>span{font-size:22px;vertical-align:middle;margin-left:15px}.journal-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px}.journal-card{text-align:left;border:0;border-top:1px solid #bdc8b5;background:none;padding:24px 0 0;transition:transform .2s}.journal-card:hover{transform:translateY(-4px)}.journal-card-head{display:flex;align-items:center;justify-content:space-between}.journal-card-head>span{font-size:9px;color:#779067;background:#e8eddf;padding:4px 8px}.journal-card-head>small{font-size:7px;letter-spacing:.9px;color:#a1a89d}.journal-card h3{font:23px/1.65 var(--serif);margin:22px 0 15px;letter-spacing:1px}.journal-card>p{font-size:11px;color:#8b958b;line-height:2.1;margin:0;max-width:300px}.journal-bottom{display:flex;justify-content:space-between;border-top:1px solid #e3e5db;padding-top:20px;margin-top:25px;font-size:9px}.journal-bottom>span:first-child{color:#9aa38f}.journal-bottom>span:last-child{color:#5b7361}.contact-section{background:#29474e;position:relative;padding:54px 60px;display:flex;align-items:center;justify-content:space-between;overflow:hidden;color:#f0f3e5}.contact-section .eyebrow{font-size:7px;letter-spacing:1.8px;color:#adc2b0}.contact-section h2{font-size:38px;line-height:1.5;margin-top:18px}.contact-section h2 span{color:#d9e4b4}.contact-section p:not(.eyebrow){font-size:10px;line-height:2;color:#b0c3b9;margin:18px 0 0}.contact-actions{display:flex;flex-direction:column;gap:18px;align-items:flex-start;z-index:1}.light{background:#e0e6bd;color:#2d4948;min-width:185px}.contact-actions>span{font-size:8px;color:#9db3a9;letter-spacing:.3px}.contact-orbit{position:absolute;right:260px;top:30px;width:240px;height:240px;color:#a1bfa0;opacity:.045;pointer-events:none}.footer{padding-block:42px 35px;display:flex;align-items:center;justify-content:space-between}.footer-brand{font:16px var(--serif);letter-spacing:2px}.footer-brand>span{display:block;font:8px var(--sans);letter-spacing:1px;color:#a4ac9e;margin-top:8px}.footer>div{display:flex;gap:38px;font-size:8px;color:#8d998b}.back-top{color:#5c7762}.skip-link{position:fixed;top:-100px;left:20px;background:var(--ink);color:white;padding:12px;z-index:20}.skip-link:focus{top:15px}dialog{border:1px solid #d7decb;padding:0;background:#f9f8f3;color:var(--ink);width:min(620px,calc(100% - 36px));max-height:85dvh;border-radius:3px;box-shadow:0 20px 100px #122b3b26}dialog::backdrop{background:#172f3b88;backdrop-filter:blur(5px)}.dialog-top{display:flex;justify-content:space-between;align-items:center;padding:20px 30px;border-bottom:1px solid var(--line);color:#8b967e;font-size:10px;letter-spacing:1px}.dialog-close{border:none;background:none;font-size:20px;padding:6px}.dialog-body{padding:30px 38px}.dialog-body h2{font-size:29px;line-height:1.6;margin-bottom:22px}.dialog-body p{font-size:13px;line-height:2.1;color:#728374}.dialog-body .editor-note{font-size:10px;background:#edf0e4;padding:12px 16px;border-left:2px solid #a7b78d}.dialog-footer{border-top:1px solid var(--line);padding:18px 30px;display:flex;justify-content:space-between;align-items:center;font-size:7px;letter-spacing:1px;color:#91a087}.dialog-done,.copy-button{background:var(--ink);color:#fff;border:0;font-size:11px;padding:10px 16px}.copy-button{margin-top:10px}.toast{position:fixed;bottom:25px;left:50%;transform:translate(-50%,15px);padding:12px 24px;background:var(--ink);color:white;box-shadow:0 4px 24px #172d321c;font-size:12px;opacity:0;pointer-events:none;transition:.2s;z-index:100}.toast.visible{opacity:1;transform:translate(-50%,0)}
.geo-title{font:italic 66px Georgia;position:absolute;left:20px;top:29px;color:#46675d;letter-spacing:-4px}.geo-title>span{font-style:normal;font-size:35px;display:inline-block;vertical-align:top;margin-left:16px;color:#98a98a}.search-concept{position:absolute;right:0;bottom:30px;background:#f0f3e9;border:1px solid #b9c8b8;padding:18px 20px;width:210px;transform:rotate(-4deg);box-shadow:5px 6px 0 #cbd5c8}.search-concept>span{font-size:11px;font-family:var(--serif);display:block;margin-bottom:13px}.search-concept>i{display:block;height:2px;background:#c2cdbb;margin-bottom:7px;width:90%}.search-concept>i:nth-of-type(2){width:65%}.search-concept>small{display:block;font-size:6px;margin-top:12px;color:#83957c;letter-spacing:1px}.geo-caption{font-size:5px;letter-spacing:1.4px;position:absolute;left:5px;bottom:16px;color:#87947f}.project-status{font-size:10px;line-height:1.8;color:#8b9786;margin:20px 0 0;letter-spacing:.5px}.mini-body>strong{font-size:18px;line-height:1.7}.mini-art>span{font-size:28px;font-family:var(--serif)}.site-link{width:100%;padding:12px;margin-top:10px;border:1px solid #c8d0bd;background:#fff;color:#29474e;font-size:12px;font-family:var(--sans);border-radius:0}#copy-status{font-size:11px;margin-bottom:0;min-height:24px}
.identity-line{font-size:11px!important;color:#5e785f!important;letter-spacing:.7px!important;margin-bottom:15px!important}.contact-copy{position:relative;z-index:1;max-width:590px}.contact-topics{display:flex;flex-wrap:wrap;gap:8px;margin-top:24px}.contact-topics>span{font-size:9px;padding:6px 9px;border:1px solid #809e8d66;color:#c4d4ba}.contact-details{display:grid;gap:21px;margin:30px 0}.contact-method>span{display:block;font-size:7px;letter-spacing:1.5px;color:#99b5a7;margin-bottom:9px}.contact-method>a{font-size:18px;letter-spacing:.5px;color:#e5ebcb;display:inline-flex;gap:20px;align-items:center}.contact-method>a:hover{text-decoration:underline;text-underline-offset:5px}.contact-method>p{margin:0!important}.contact-method strong{font-family:var(--serif);font-size:19px;color:#e5ebcb;font-weight:400;letter-spacing:2px}.contact-method small{display:block;font-size:9px;line-height:1.7;margin-top:5px;color:#aac1b2}.contact-actions>span{max-width:310px;line-height:1.8}.wechat-panel{position:relative;z-index:1;flex:0 0 240px;margin-left:40px;text-align:center}.wechat-card{background:#f8f6ed;border:0;padding:9px 9px 14px;width:100%;text-align:left;transition:transform .2s}.wechat-card:hover{transform:translateY(-3px)}.wechat-card>img{display:block;width:100%;height:auto}.wechat-card>span{display:flex;justify-content:space-between;font-size:10px;margin:13px 5px 0;letter-spacing:.7px;color:#29474e}.wechat-panel>p{font-size:8px!important;letter-spacing:.2px;color:#a9bfb1!important;line-height:1.8!important;margin-top:13px!important}.dialog-email{display:inline-block;font-size:13px;line-height:1.8;color:#3e6751;text-decoration:underline;text-underline-offset:4px;overflow-wrap:anywhere;margin-top:4px}.dialog-account{padding-top:12px;border-top:1px solid var(--line)}.dialog-wechat{margin:24px auto 0;text-align:center;max-width:300px}.dialog-wechat>img{display:block;width:100%;height:auto}.dialog-wechat>a{display:inline-block;font-size:11px;color:#59754f;margin-top:14px;text-decoration:underline;text-underline-offset:4px}
@media(min-width:761px) and (max-width:1100px){.wechat-panel{flex-basis:205px;margin-left:28px}.contact-section{padding:40px 32px;gap:10px}.contact-section h2{font-size:33px}.contact-section .eyebrow{font-size:6px;letter-spacing:1px}.contact-topics{gap:5px}.contact-topics>span{font-size:8px;padding:5px 7px}}
@media(max-width:760px){.contact-section{gap:35px}.contact-copy{width:100%}.wechat-panel{flex-basis:auto;width:min(270px,100%);margin:0 auto}.contact-method>a{font-size:19px}.contact-topics>span{font-size:8px}.contact-actions>span{font-size:8px}.dialog-wechat{max-width:270px}}
@media(min-width:1500px){.hero{padding-block:80px 75px;gap:85px}.hero-visual{height:590px}.hero h1{font-size:79px}.hero-desc{font-size:14px}}
@media(max-width:1100px){.wrap{width:calc(100% - 72px)}.desktop-nav{margin-left:0;gap:25px}.hero{gap:35px;padding-block:55px}.hero-visual{height:510px}.hero h1{font-size:57px}.hero-desc{font-size:11px}.floating-note{width:255px;padding:19px}.project{padding:18px}.web-art,.notes-art,.life-art{height:205px}.mini-browser{transform:rotate(-5deg) scale(.85)}.about-grid{gap:50px}.about-stamp{right:0}.project-description h3{font-size:18px}.project-description p{font-size:9px}.about-copy h2{font-size:30px}.contact-section{padding:45px}}
@media(max-width:760px){.wrap{width:calc(100% - 40px)}.header{height:84px}.brand{font-size:17px;gap:10px}.brand-mark{width:37px;height:37px;font-size:30px}.brand small{font-size:6px;letter-spacing:1.6px}.desktop-nav,.contact-nav{display:none}.menu-toggle{display:flex;flex-direction:column;gap:7px;padding:10px 4px;border:0;background:none}.menu-toggle span{width:23px;height:1px;background:var(--ink);transition:transform .2s}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(4px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-4px) rotate(-45deg)}.mobile-nav:not([hidden]){display:flex;flex-direction:column;padding:12px 25px 22px;gap:20px;border-bottom:1px solid var(--line);background:var(--bg)}.mobile-nav>a{font-size:13px;padding-block:5px}.hero{grid-template-columns:1fr;padding-block:45px 42px;gap:37px}.hero h1{font-size:clamp(49px,11vw,72px);line-height:1.4;margin-top:24px}.hero-desc{font-size:12px;line-height:2.2}.hero-actions{margin-top:27px;gap:28px}.hero-foot{margin-top:28px}.eyebrow{font-size:10px}.hero-visual{height:440px;width:100%;max-width:500px;justify-self:center;padding:0 12px 20px 12px}.photo-frame{border-radius:150px 150px 3px 3px}.floating-note{left:0;bottom:0;width:245px;transform:rotate(-4deg);padding:18px}.photo-caption{left:24px;bottom:38px}.photo-caption>span{font-size:19px}.photo-spark{width:48px;height:48px}.vertical-note{right:-4px;font-size:6px}.intro-strip{padding-block:18px;flex-direction:column;gap:16px;font-size:10px}.intro-strip>div{gap:27px;font-size:9px}.section{padding-block:54px}.section-heading{align-items:flex-start;margin-bottom:24px}.section-label{font-size:7px;letter-spacing:1.3px;margin-bottom:11px}h2{font-size:27px}.section-aside{display:none}.project-grid{grid-template-columns:1fr;gap:17px}.project{padding:20px 24px 25px}.project-top{font-size:10px}.web-art,.notes-art,.life-art{height:210px}.mini-browser{transform:rotate(-5deg) scale(1)}.project-description h3{font-size:21px}.project-description p{font-size:11px}.project-description small{font-size:7px}.life-art>svg{width:250px;right:0;bottom:0}.life-word{left:30px;font-size:29px}.about-section{padding-block:44px 48px}.about-grid{grid-template-columns:1fr;gap:28px}.about-art{height:320px;max-width:360px;width:100%;justify-self:center}.about-card{width:275px;height:260px}.about-stamp{right:0}.about-copy h2{font-size:32px}.about-copy>p:not(.eyebrow){font-size:12px;max-width:100%}.journal-note{font-size:8px;margin-top:4px;white-space:nowrap}.journal-note>span{display:none}.journal-grid{grid-template-columns:1fr;gap:30px}.journal-card{padding-top:22px}.journal-card h3{font-size:25px;margin-top:19px}.journal-card>p{max-width:100%;font-size:12px}.journal-card-head>small{font-size:8px}.journal-bottom{font-size:10px;margin-top:19px;padding-top:17px}.contact-section{flex-direction:column;align-items:flex-start;padding:35px 28px;gap:30px}.contact-section h2{font-size:32px}.contact-section p:not(.eyebrow){font-size:11px}.contact-section .eyebrow{font-size:6px;letter-spacing:1.1px}.contact-orbit{display:none}.contact-actions{gap:14px}.contact-actions>span{font-size:8px}.footer{padding-block:30px;gap:25px;align-items:flex-start}.footer-brand{font-size:14px;white-space:nowrap}.footer-brand>span{font-size:7px}.footer>div{flex-direction:column;gap:12px;align-items:flex-end;font-size:7px}.dialog-body{padding:25px}.dialog-body h2{font-size:24px}.dialog-top{padding:16px 22px}.dialog-footer{padding:16px 22px;gap:12px}.dialog-footer>span{font-size:6px}}
.profile-avatar{position:relative;display:block;flex:0 0 46px;width:46px;height:46px;overflow:hidden;border-radius:50%;border:2px solid #d5dec1;background:#dce4d8}.profile-avatar>img{position:absolute;display:block;width:260%;max-width:none;height:auto;left:-112%;top:-136%}.portrait-art{height:520px}.portrait-figure{position:relative;width:270px;margin:0;background:#faf9f2;padding:10px 10px 17px;transform:rotate(-3deg);box-shadow:0 8px 24px #38452f0f}.portrait-figure>img{display:block;width:100%;height:auto}.portrait-figure>figcaption{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:15px 5px 0;font:17px var(--serif);letter-spacing:2px}.portrait-figure>figcaption>small{font:8px var(--sans);letter-spacing:1px;color:#8a987d}.portrait-art .about-stamp{right:20px;top:7px;background:#eef0e5e8;pointer-events:none}
@media(max-width:1100px) and (min-width:761px){.portrait-art .about-stamp{right:0;width:87px;height:87px;padding-top:15px}.portrait-art .about-stamp>span{font-size:26px}}
@media(max-width:760px){.profile-avatar{width:40px;height:40px;flex-basis:40px}.portrait-art{height:520px}.portrait-art .about-stamp{right:0;top:7px;width:92px;height:92px;padding-top:18px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}

/* Draw ornaments as SVG so mobile browsers cannot substitute color emoji. */
.decorative-star{display:inline-block;width:1em;height:1em;vertical-align:-.12em;fill:none;stroke:currentColor;stroke-width:5;stroke-linecap:square;pointer-events:none}.contact-orbit>.decorative-star{display:block;width:100%;height:100%}.tiny-cross{display:flex;align-items:center}.contact-copy,.wechat-panel{min-width:0}.contact-method>a{max-width:100%;overflow-wrap:anywhere;flex-wrap:wrap;row-gap:4px}
@media(max-width:760px){.contact-section p:not(.eyebrow)>br{display:none}.contact-method>a{column-gap:16px}.contact-topics>span{font-size:9px}.contact-method>span{font-size:9px}.contact-method small,.contact-actions>span,.wechat-panel>p{font-size:10px!important}.contact-section .eyebrow{font-size:8px;letter-spacing:.8px}}

/* Reading sizes apply at every breakpoint, including article dialogs. */
body{font-size:17px;line-height:1.8}
.hero-desc,.about-copy>p:not(.eyebrow),.dialog-body p{font-size:17px;line-height:1.9;letter-spacing:.2px}
.hero-desc,.project-description p,.about-copy>p:not(.eyebrow),.journal-card>p{color:#59695e}
.about-copy>p:not(.eyebrow){max-width:42ch;margin-bottom:22px}
.about-copy>.identity-line{font-size:14px!important;line-height:1.8}
.project-description p,.journal-card>p{font-size:16px;line-height:1.9;letter-spacing:.2px}
.project-description h3{line-height:1.5}
.project-description small,.project-top,.project-status,.journal-card-head>span,.journal-bottom,.journal-note,.about-tags span{font-size:13px;line-height:1.7}
.project-description small,.project-status,.journal-card>p,.journal-bottom>span:first-child{color:#63715e}
.project-description small{letter-spacing:.6px}
.journal-card-head>small{font-size:11px;letter-spacing:.6px}
.journal-card>p{max-width:36ch}
.hero-foot p,.intro-strip,.section-aside{font-size:14px;line-height:1.9;color:#63715e}
.intro-strip>div{font-size:13px}
.button,.text-link,.desktop-nav,.contact-nav{font-size:15px}
.hero-actions{flex-wrap:wrap;gap:20px 24px}
.section-label,.eyebrow{font-size:12px;line-height:1.8;letter-spacing:1px}
.portrait-figure>figcaption{flex-wrap:wrap;row-gap:6px}
.portrait-figure>figcaption>small{font-size:12px;letter-spacing:.4px;color:#63715e}
.contact-section p:not(.eyebrow){font-size:16px;line-height:1.9;color:#ccdad1}
.contact-section .eyebrow{font-size:11px;line-height:1.7;letter-spacing:1px}
.contact-copy{flex:1 1 auto}
.contact-topics>span,.contact-method>span{font-size:13px;line-height:1.7}
.contact-method>span{color:#c0d2c6}
.contact-method>a{font-size:22px;line-height:1.6;letter-spacing:0}
.contact-method strong{font-size:23px}
.contact-method small,.contact-actions>span,.wechat-panel>p{font-size:14px!important;line-height:1.8!important;color:#c0d2c6!important}
.wechat-card>span{font-size:14px;line-height:1.7}
.footer-brand>span,.footer>div{font-size:12px;line-height:1.8}
.dialog-body .editor-note{font-size:14px;line-height:1.85}
.dialog-top,.dialog-footer{font-size:12px;line-height:1.7;letter-spacing:.4px}
.dialog-footer>span{font-size:11px}
.dialog-done,.copy-button,.dialog-email,.site-link{font-size:16px;line-height:1.6}
.dialog-done,.copy-button{min-height:44px}
#copy-status{font-size:14px}
.dialog-close{min-width:44px;min-height:44px}
@media(max-width:760px){
  .mobile-nav>a{font-size:16px}
  .section-heading{flex-wrap:wrap;gap:12px}
  .about-copy>p:not(.eyebrow){max-width:100%}
  .journal-card>p{max-width:100%}
  .contact-section{padding:36px 24px}
  .contact-copy{flex:0 1 auto}
  .contact-section h2{font-size:30px}
  .contact-method>a{font-size:21px;column-gap:12px}
  .footer{flex-wrap:wrap;gap:20px}
  .dialog-body{padding:24px}
  .dialog-footer{flex-wrap:wrap;gap:12px}
}

/* Sunny seaside illustration; keep the idea card outside the caption. */
.hero-visual{height:auto;display:grid;grid-template-columns:minmax(0,1fr);gap:20px;padding:8px 19px 0 0}
.hero-visual .photo-frame{height:518px}
.hero-visual .photo-frame>img{filter:none;object-position:50% 58%}
.hero-visual .photo-shade{background:linear-gradient(0deg,#163642a8,transparent 45%)}
.hero-visual .floating-note{position:relative;left:auto;bottom:auto;transform:none;justify-self:start;margin:0}
@media(max-width:760px){
  .hero-visual{padding:0 12px;gap:16px}
  .hero-visual .photo-frame{height:420px}
  .hero-visual .floating-note{left:auto;bottom:auto;transform:none;max-width:100%}
}
