:root{--cream:#fffdfb;--pink:#efc4d2;--pink2:#fff0f5;--blue:#cfe2f5;--blue2:#eff7ff;--ink:#29282d;--muted:#77747a;--line:#e9e2e4}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif;line-height:1.75}nav{height:72px;display:flex;align-items:center;justify-content:space-between;padding:0 6vw;position:sticky;top:0;background:#fffdfbe8;backdrop-filter:blur(14px);z-index:20;border-bottom:1px solid #eee8ea}nav a{color:var(--ink);text-decoration:none;margin-left:28px;font-size:14px}.brand{font-weight:700;font-size:17px;margin:0}.brand i{color:#d891aa}.hero{min-height:820px;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:5vw;padding:8vh 8vw 10vh}.eyebrow{font-size:11px;letter-spacing:.28em;text-transform:uppercase;font-weight:650;color:#9b8f96}.pink{color:#cf8fa6}.blue{color:#87aaca}.hero h1{font-family:Georgia,"Songti SC",serif;font-size:clamp(64px,8vw,118px);line-height:.9;margin:18px 0 8px;letter-spacing:-.07em}.hero h1 span{color:var(--pink)}.roman{font-family:Georgia,serif;font-style:italic;letter-spacing:.16em;color:#b58b9b}.lead{font-size:16px;margin-top:32px}.hero h2,.section h3,.contact h3{font-family:Georgia,"Songti SC",serif;font-weight:500;font-size:clamp(38px,4.4vw,68px);line-height:1.2;letter-spacing:-.04em;margin:28px 0}.hero h2 em,.life h3 em,.contact h3 em{font-weight:400;color:#c7869f}.chips,.tags{display:flex;gap:9px;flex-wrap:wrap}.chips b,.tags span{border:1px solid #e5dadd;border-radius:999px;padding:6px 15px;font-size:12px;font-weight:500;background:#fff}.actions{display:flex;gap:24px;align-items:center;margin-top:36px}.actions a{color:var(--ink);text-decoration:none}.actions .primary{background:var(--ink);color:white;padding:11px 22px;border-radius:999px}.collage{height:650px;position:relative}.collage img{position:absolute;object-fit:cover;box-shadow:0 20px 60px #8e71821f}.p1{width:58%;height:68%;left:15%;top:11%;border-radius:48% 48% 20px 20px}.p2{width:39%;height:38%;right:0;bottom:7%;border-radius:120px 120px 18px 18px;transform:rotate(2deg)}.p3{width:31%;height:35%;left:0;bottom:0;border-radius:18px;transform:rotate(-4deg)}.note{position:absolute;right:3%;top:10%;font-family:Georgia,serif;font-style:italic;color:#c27e98;transform:rotate(5deg)}.section{padding:110px 9vw;border-top:1px solid var(--line)}.two{display:grid;grid-template-columns:1.25fr .75fr;gap:9vw;align-items:center}.two p{font-size:16px;color:#5e5a60;max-width:680px}.about-photo{width:100%;height:560px;object-fit:cover;border-radius:220px 220px 24px 24px}.tags{margin-top:28px}.tags span:nth-child(odd){background:var(--pink2)}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:55px}.cards article{min-height:330px;padding:34px;border:1px solid var(--line);border-radius:28px;background:var(--pink2)}.cards .bluecard{background:var(--blue2)}.cards small,.num{font-family:Georgia,serif;font-style:italic;color:#b67e93}.cards h4,.project-grid h4{font-size:25px;margin:50px 0 12px}.cards p,.project-grid p{color:#6c686e}.cards article div{font-size:12px;margin-top:28px}.toolbox{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:16px}.toolbox>div{padding:26px 30px;border-radius:20px;background:#fff;border:1px solid var(--line)}.toolbox p{margin:6px 0 0;color:#6c686e}.projects{background:#fffafd}.project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:48px}.project-grid article{background:white;border:1px solid #eadfe3;padding:34px;border-radius:24px}.project-grid .featured{background:var(--pink2)}.project-grid h4{margin-top:60px}.project-grid span{font-size:11px;letter-spacing:.08em;color:#a17788}.life .intro{max-width:700px;color:#69656b}.masonry{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:320px;gap:14px;margin-top:55px}.masonry figure{margin:0;position:relative;overflow:hidden;border-radius:18px;background:#eee}.masonry .wide{grid-column:span 2}.masonry img{width:100%;height:100%;object-fit:cover;transition:.5s}.masonry figure:hover img{transform:scale(1.025)}figcaption{position:absolute;left:12px;bottom:12px;background:#fffdfbe6;padding:5px 11px;border-radius:999px;font-size:11px}blockquote{font-family:Georgia,"Songti SC",serif;font-size:30px;max-width:760px;margin:90px auto 0;text-align:center;color:#b5778f}.contact{margin:60px 4vw 4vw;background:linear-gradient(135deg,#fff0f5,#edf6ff);border-radius:38px;padding:90px 6vw}.contact h3{max-width:1000px}.contact-row{border-top:1px solid #d9cbd0;margin-top:60px;padding-top:28px;display:grid;grid-template-columns:1fr 1.4fr .8fr;gap:30px}.contact-row div{display:flex;flex-direction:column}.contact-row small{color:#a78591}.contact-row a{color:var(--ink);font-weight:700}.footer{margin-top:80px;font-family:Georgia,serif;font-style:italic;color:#a37c8b}@media(max-width:850px){nav div{display:none}.hero{grid-template-columns:1fr;padding:70px 7vw}.collage{height:500px}.two{grid-template-columns:1fr}.about-photo{height:500px}.cards,.project-grid,.toolbox{grid-template-columns:1fr}.masonry{grid-template-columns:1fr 1fr;grid-auto-rows:260px}.contact-row{grid-template-columns:1fr}.section{padding:80px 7vw}}@media(max-width:520px){.hero h1{font-size:62px}.collage{height:410px}.masonry{grid-template-columns:1fr}.masonry .wide{grid-column:span 1}.contact{margin:20px;border-radius:26px;padding:60px 7vw}.about-photo{height:420px}}

.copy-btn{margin-top:10px;width:max-content;border:1px solid #d8c5cc;background:#fff9fb;border-radius:999px;padding:6px 12px;cursor:pointer;color:#755f68;font-size:12px}.copy-btn:hover{background:#fff}.contact-row{grid-template-columns:1fr 1.25fr 1.25fr .8fr}@media(max-width:850px){.contact-row{grid-template-columns:1fr}}

.about-collage{height:580px;position:relative}.about-collage img{position:absolute;object-fit:cover;border:6px solid var(--cream);box-shadow:0 16px 45px #8e71821c}.about-collage .ac1{width:63%;height:58%;left:0;top:0;border-radius:120px 120px 22px 22px}.about-collage .ac2{width:56%;height:51%;right:0;top:22%;border-radius:24px;transform:rotate(2deg)}.about-collage .ac3{width:52%;height:45%;left:8%;bottom:0;border-radius:24px;transform:rotate(-2deg)}@media(max-width:850px){.about-collage{height:560px}}

.lang-toggle{margin-left:22px;border:1px solid #e2cfd6;background:#fff7fa;color:#9b687b;border-radius:999px;padding:7px 13px;font:600 12px/1 -apple-system,BlinkMacSystemFont,sans-serif;cursor:pointer;transition:.2s}.lang-toggle:hover{background:#ffeef4;transform:translateY(-1px)}
