:root { --ink:#132a35; --paper:#f7f4ed; --soft:#e7eee9; --line:rgba(19,42,53,.18); --accent:#ae5b35; --muted:#607079; }
*{box-sizing:border-box} html{scroll-behavior:smooth} body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.55 "DM Sans",sans-serif}.site-header{height:88px;display:flex;align-items:center;justify-content:space-between;max-width:1240px;padding:0 32px;margin:auto}.brand{display:flex;align-items:center;gap:11px;color:inherit;text-decoration:none}.brand-mark{display:grid;place-items:center;width:39px;height:39px;background:var(--ink);color:white;font:600 15px "Playfair Display",serif}.brand strong,.brand small{display:block}.brand strong{font-size:15px;letter-spacing:.01em}.brand small{font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}nav{display:flex;align-items:center;gap:27px}nav a{color:var(--ink);text-decoration:none;font-size:14px;font-weight:600}.nav-cta{padding:11px 15px;border:1px solid var(--ink)}.menu-button{display:none}.hero{max-width:1240px;min-height:570px;padding:96px 32px 82px;margin:auto;display:grid;grid-template-columns:1.35fr .65fr;gap:90px;align-items:center}.eyebrow{margin:0 0 18px;color:var(--accent);font-weight:700;font-size:11px;text-transform:uppercase;letter-spacing:.16em}.hero h1,.section h2,.contact h2{font:600 clamp(40px,5.5vw,73px)/1.07 "Playfair Display",serif;letter-spacing:-.04em;margin:0;max-width:800px}.lead{max-width:620px;margin:26px 0 31px;font-size:19px;color:#42545c}.hero-actions{display:flex;align-items:center;gap:25px}.button{display:inline-block;text-decoration:none;padding:14px 20px;font-weight:700;font-size:14px}.button-primary{background:var(--accent);color:#fff}.text-link{color:inherit;font-weight:700;text-decoration:none}.text-link span{font-size:21px;margin-left:4px}.hero-panel{background:var(--ink);color:#f8f4eb;padding:40px 37px 31px;align-self:center}.panel-kicker{color:#cbd6ce;text-transform:uppercase;letter-spacing:.16em;font-size:10px;font-weight:700;margin:0}.hero-panel ul{list-style:none;padding:19px 0 13px;margin:0}.hero-panel li{font:600 21px/1.45 "Playfair Display",serif;padding:9px 0;border-bottom:1px solid rgba(255,255,255,.17)}.panel-note{color:#cbd6ce;margin:9px 0 0;font-size:13px}.statement{background:var(--soft);padding:54px 32px}.statement p{max-width:910px;margin:0 auto;text-align:center;font:600 clamp(24px,3vw,39px)/1.23 "Playfair Display",serif;letter-spacing:-.025em}.section{max-width:1240px;margin:auto;padding:110px 32px}.section-heading{max-width:700px}.section h2{font-size:clamp(36px,4.2vw,57px)}.section-heading>p:last-child{color:var(--muted);max-width:590px;margin:22px 0 0;font-size:17px}.service-grid{display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid var(--line);margin-top:59px}.service-grid article{padding:30px 37px 34px 0;border-bottom:1px solid var(--line)}.service-grid article:nth-child(odd){margin-right:37px}.service-grid article:nth-child(even){padding-left:37px;border-left:1px solid var(--line)}.number{color:var(--accent);font-size:12px;font-weight:700;letter-spacing:.13em}.service-grid h3{font:600 26px/1.18 "Playfair Display",serif;margin:15px 0 13px}.service-grid p{margin:0;color:var(--muted);max-width:440px}.approach{background:var(--ink);max-width:none;color:#f7f4ed;padding-left:max(32px,calc((100vw - 1176px)/2));padding-right:max(32px,calc((100vw - 1176px)/2))}.approach .eyebrow{color:#df9d79}.steps{list-style:none;padding:0;margin:56px 0 0;border-top:1px solid rgba(255,255,255,.22);display:grid;grid-template-columns:repeat(4,1fr)}.steps li{padding:25px 25px 0 0;margin-right:25px;border-right:1px solid rgba(255,255,255,.22)}.steps li:last-child{border:0}.steps strong{display:block;font:600 21px/1.23 "Playfair Display",serif;margin-bottom:11px}.steps span{color:#cbd6ce;font-size:14px}.about{display:grid;grid-template-columns:1.15fr .85fr;gap:100px;align-items:center}.about h2{font-size:53px}.role{font-weight:700;font-size:13px;letter-spacing:.04em;text-transform:uppercase;color:var(--accent);margin:12px 0 28px}.about-card>p:not(.eyebrow):not(.role){max-width:625px;color:#42545c;font-size:17px}.quote{font:600 28px/1.28 "Playfair Display",serif;letter-spacing:-.02em;margin:0;padding-left:28px;border-left:3px solid var(--accent)}.location{margin:42px 0 0;padding-top:19px;border-top:1px solid var(--line)}.location span,.location strong{display:block}.location span{font-size:10px;text-transform:uppercase;letter-spacing:.15em;color:var(--muted);font-weight:700}.location strong{font-size:17px;margin-top:3px}.contact{background:var(--accent);color:#fff;padding:87px max(32px,calc((100vw - 1176px)/2));display:grid;grid-template-columns:1fr .7fr;gap:120px}.contact .eyebrow{color:#f9d9ca}.contact h2{font-size:54px}.contact>div>p:last-child{max-width:620px;font-size:17px}.contact-options{border-top:1px solid rgba(255,255,255,.5)}.contact-options>a,.contact-options>div{display:block;text-decoration:none;color:white;padding:17px 0;border-bottom:1px solid rgba(255,255,255,.5)}.contact-options span,.contact-options strong{display:block}.contact-options span{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.13em;color:#f9d9ca}.contact-options strong{font:600 21px "Playfair Display",serif;margin-top:3px}.contact-options b{font:18px sans-serif;float:right}footer{max-width:1240px;margin:auto;padding:38px 32px;color:var(--muted);display:grid;grid-template-columns:1fr 2fr auto;gap:45px;align-items:start;font-size:12px}footer strong,footer span{display:block}footer strong{color:var(--ink);font-size:14px}footer span{font-size:10px;letter-spacing:.11em;text-transform:uppercase}footer p{margin:0}footer small{white-space:nowrap}
.consultation-note{margin:-11px 0 28px;color:var(--accent);font-size:14px}.fees{background:var(--soft);padding:90px max(32px,calc((100vw - 1176px)/2));display:grid;grid-template-columns:1fr .85fr;gap:100px;align-items:end}.fees h2{font:600 clamp(36px,4.2vw,57px)/1.07 "Playfair Display",serif;letter-spacing:-.04em;margin:0}.fees-copy>p:last-child{max-width:560px;color:#42545c;font-size:17px;margin:22px 0 0}.fee-points{border-top:1px solid var(--line)}.fee-points div{padding:15px 0;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:20px}.fee-points strong{font:600 20px "Playfair Display",serif}.fee-points span{color:var(--muted);font-size:14px;text-align:right}.portrait{height:410px;margin:0 0 36px;overflow:hidden;background:#92b5ce}.portrait img{height:100%;width:100%;object-fit:cover;object-position:63% 63%;transform:scale(1.42);transform-origin:63% 63%}
.hero-panel{padding:0;background:var(--ink)}.hero-portrait{height:250px;margin:0;overflow:hidden;background:#6f95ab}.hero-portrait img{height:100%;width:100%;object-fit:cover;object-position:63% 61%;transform:scale(1.55);transform-origin:63% 61%}.hero-profile-copy{padding:25px 29px 27px}.hero-profile-copy h2{font:600 31px/1.1 "Playfair Display",serif;margin:6px 0 8px;letter-spacing:-.025em}.hero-profile-copy>p:not(.panel-kicker):not(.profile-wechat){color:#d3ded8;margin:0;font-size:13px;line-height:1.5}.profile-email{display:block;color:#fff;text-decoration:none;font:600 16px "DM Sans",sans-serif;margin:22px 0 7px;border-bottom:1px solid rgba(255,255,255,.35);padding-bottom:9px}.profile-email span,.profile-linkedin span{float:right}.profile-wechat{font-size:12px;color:#cbd6ce;margin:0}.profile-wechat strong{color:#fff}.profile-linkedin{display:block;color:#fff;font-size:12px;text-decoration:none;margin-top:7px}
@media(max-width:760px){.site-header{height:72px;padding:0 20px}.menu-button{display:block;border:0;background:transparent;font:600 14px "DM Sans";color:var(--ink)}nav{display:none;position:absolute;top:72px;left:0;right:0;z-index:3;background:var(--paper);padding:18px 20px 25px;box-shadow:0 10px 14px rgba(0,0,0,.06);flex-direction:column;align-items:stretch;gap:16px}.site-header.open nav{display:flex}.nav-cta{text-align:center}.hero{min-height:0;padding:66px 20px 59px;display:block}.hero h1{font-size:45px}.lead{font-size:17px}.hero-panel{margin-top:46px;padding:0}.hero-portrait{height:280px}.statement{padding:43px 20px}.section{padding:74px 20px}.service-grid{grid-template-columns:1fr;margin-top:40px}.service-grid article,.service-grid article:nth-child(odd),.service-grid article:nth-child(even){margin:0;padding:25px 0;border-left:0}.steps{grid-template-columns:1fr;margin-top:38px}.steps li{padding:20px 0;margin:0;border-right:0;border-bottom:1px solid rgba(255,255,255,.22)}.fees{display:block;padding:65px 20px}.fee-points{margin-top:40px}.about{display:block}.about h2,.contact h2{font-size:43px}.about-aside{margin-top:50px}.portrait{height:375px}.contact{padding:64px 20px;display:block}.contact-options{margin-top:42px}footer{padding:34px 20px;display:block}footer p{margin:20px 0}footer small{white-space:normal}.hero-actions{gap:18px;flex-wrap:wrap}}
