@charset "UTF-8";
:root{--ink:#202226;--paper:#faf9f5;--yellow:#f1bd4c;--muted:#666966;--line:#d9d9d2;--dark-muted:#b7bab7;--font:Arial,Helvetica,"Microsoft YaHei","PingFang SC",sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:25px}body{margin:0;font:16px/1.75 var(--font);color:var(--ink);background:var(--paper)}h1,h2,h3,h4,p{margin:0}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}a,button,summary{-webkit-tap-highlight-color:transparent;touch-action:manipulation}::selection{background:var(--yellow);color:var(--ink)}:focus-visible{outline:3px solid #9a7012;outline-offset:6px}.skip-link{position:absolute;left:20px;top:-100px;z-index:20;background:white;padding:12px 20px}.skip-link:focus{top:10px}.site-header{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:25px 5%;min-height:92px;background:var(--paper)}.wordmark{font-size:25px;font-weight:700;letter-spacing:.5px;line-height:1.2}.header-right{display:flex;align-items:center;gap:43px}.site-nav{display:flex;gap:34px;font-size:14px}.site-nav a{padding:5px 0;border-bottom:1px solid transparent}.site-nav a:hover{border-bottom-color:var(--ink)}.language-control{display:flex;align-items:center;gap:9px;font-size:12px;color:var(--muted)}.language-control button{border:0;background:none;padding:6px 2px;font-size:13px;min-height:34px}.language-control button[aria-pressed="true"]{color:var(--ink);font-weight:700;text-decoration:underline;text-underline-offset:6px}.hero{background:var(--yellow);padding:38px 5% 23px}.hero-top{display:flex;justify-content:space-between;align-items:center}.eyebrow{font-size:12px;letter-spacing:1.6px;line-height:1.6;font-weight:500}.hero h1{font-size:clamp(47px,6.35vw,100px);font-weight:500;line-height:1.1;letter-spacing:-.05em;margin:47px 0 38px}.hero-bottom{display:flex;align-items:flex-end;justify-content:space-between;gap:70px;max-width:1180px}.hero-bottom>p{font-size:16px;line-height:1.85;max-width:625px}.hero-link{font-size:14px;white-space:nowrap;border-bottom:1px solid var(--ink);padding-bottom:7px}.hero-link:hover{border-bottom-width:2px}.hero-company{border-top:1px solid #20222640;margin-top:42px;padding-top:17px;font-size:11px;letter-spacing:.8px}.services-section{background:var(--ink);color:var(--paper);padding:70px 5% 76px;display:grid;grid-template-columns:1fr 1.65fr;gap:70px}.services-intro{position:sticky;top:30px;align-self:start}.services-intro .eyebrow{color:var(--yellow);margin-bottom:26px}.services-intro h2{font-size:clamp(28px,2.65vw,42px);line-height:1.25;letter-spacing:-.7px;font-weight:400;margin-bottom:24px}.intro-description{color:var(--dark-muted);font-size:14px;line-height:1.8;max-width:330px}.service{border-top:1px solid #ffffff35}.service:last-child{border-bottom:1px solid #ffffff35}.service summary{display:grid;grid-template-columns:26px minmax(0,1fr) 24px;gap:17px;align-items:center;padding:26px 0;list-style:none;cursor:pointer}.service summary::-webkit-details-marker{display:none}.service-index{font-size:12px;color:var(--yellow);align-self:start;padding-top:6px}.service h3{font-size:23px;line-height:1.4;font-weight:400;letter-spacing:-.3px}.service summary:hover h3{color:var(--yellow)}.detail-indicator{width:22px;height:22px;position:relative;flex-shrink:0}.detail-indicator::before,.detail-indicator::after{content:"";height:1px;width:14px;background:var(--yellow);position:absolute;left:4px;top:10px}.detail-indicator::after{transform:rotate(90deg)}details[open] .detail-indicator::after{transform:rotate(0)}.service-content{padding:0 36px 30px 43px}.service-content h4{font-size:18px;font-weight:400;line-height:1.6;margin-bottom:14px}.service-content>p{font-size:14px;line-height:1.9;color:var(--dark-muted);max-width:590px}.service-content ul{display:flex;gap:10px 24px;flex-wrap:wrap;padding:0;margin:20px 0 0;list-style:none}.service-content li{font-size:12px;line-height:1.7;color:#e1e1d9;padding-left:11px;position:relative}.service-content li::before{content:"";position:absolute;width:3px;height:3px;background:var(--yellow);left:0;top:8px}.company-section{padding:74px 5% 62px;display:grid;grid-template-columns:1fr 1fr;gap:40px 95px}.company-heading .eyebrow{color:var(--muted);margin-bottom:25px}.company-heading h2{font-size:34px;line-height:1.45;font-weight:400;letter-spacing:-.6px}.company-copy{padding-top:45px;max-width:610px}.company-copy p{font-size:15px;line-height:1.9;color:var(--muted)}.company-copy p+p{margin-top:17px}.company-record{grid-column:1/-1;margin:0;display:grid;grid-template-columns:1fr 1.1fr 1.2fr;border-top:1px solid var(--line);padding-top:25px;gap:45px}.company-record dt{font-size:12px;color:var(--muted);margin-bottom:12px}.company-record dd{font-size:14px;line-height:1.8;margin:0}.contact-section{background:#eeebe3;padding:52px 5% 56px;display:grid;grid-template-columns:1.2fr 1fr;gap:70px;align-items:center}.contact-section .eyebrow{color:var(--muted);margin-bottom:21px}.contact-section h2{font-weight:400;font-size:44px;line-height:1.25;letter-spacing:-1.3px;margin-bottom:18px}.contact-description{font-size:14px;color:var(--muted);line-height:1.9;max-width:510px}.email-block{padding-left:40px;border-left:1px solid #c9c6bc}.email-label{display:block;font-size:12px;color:var(--muted);margin-bottom:19px}.email-slot{display:block;font-size:24px;line-height:1.5;border-bottom:1px dashed #aaa89d;padding-bottom:11px;overflow-wrap:anywhere}.email-slot a{border-bottom:1px solid var(--ink);padding-bottom:5px;display:inline-block}.email-slot a:hover{color:#825500}.footer{background:var(--ink);color:#c6c9c4;padding:24px 5%;display:flex;justify-content:space-between;gap:32px;align-items:center;font-size:11px}.footer>div{display:flex;flex-wrap:wrap;gap:6px 13px;max-width:800px}.footer nav{display:flex;gap:24px;font-size:12px;flex-shrink:0}.footer nav a:hover{color:var(--yellow)}.legal-main{background:var(--paper)}.legal-heading{background:var(--yellow);padding:35px 5% 42px}.legal-heading>a{display:inline-block;font-size:13px;border-bottom:1px solid #20222666;margin-bottom:32px}.legal-heading .eyebrow{margin-bottom:13px}.legal-heading h1{font-size:50px;font-weight:400;line-height:1.25;letter-spacing:-1px;margin-bottom:20px}.effective{font-size:13px}.legal-layout{padding:38px 5% 55px}.legal-index{border-block:1px solid var(--line);padding:20px 0 25px;margin-bottom:40px}.legal-index>p{font-size:12px;color:var(--muted);margin-bottom:16px}.legal-index nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px 25px}.legal-index a{display:flex;gap:10px;font-size:12px;line-height:1.6}.legal-index a>span:first-child{color:#896008;font-size:11px;flex-shrink:0}.legal-index a:hover{text-decoration:underline;text-underline-offset:4px}.legal-article{max-width:890px;margin:auto}.legal-article p,.legal-article li{font-size:15px;line-height:1.95;color:#5e635f}.legal-article p+p{margin-top:14px}.legal-article section{margin-top:35px}.legal-article h2{font-size:21px;font-weight:500;line-height:1.5;margin-bottom:15px}.legal-article ul{padding-left:23px;margin:14px 0}.legal-article li{margin:4px 0}.legal-article .email-slot{display:inline;font-size:15px;border:0;padding:0}.legal-end{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding-top:25px;margin-top:39px;font-size:13px}.legal-end a{text-decoration:underline;text-underline-offset:5px}html[data-language="zh"] .hero h1{font-size:clamp(44px,5.75vw,86px);line-height:1.28;letter-spacing:-1px}html[data-language="zh"] .wordmark{font-size:26px;letter-spacing:2px}html[data-language="zh"] .services-intro h2{font-size:34px;line-height:1.5;letter-spacing:.5px}html[data-language="zh"] .company-heading h2{font-size:31px;letter-spacing:.5px;line-height:1.55}
@media(max-width:1050px){.header-right{gap:27px}.site-nav{gap:24px}.hero h1{font-size:6.4vw}.hero-bottom{gap:40px}.hero-bottom>p{max-width:580px}.services-section{gap:42px;grid-template-columns:1fr 1.6fr}.service h3{font-size:21px}.company-section{gap:35px 55px}.company-heading h2{font-size:30px}.company-record{gap:30px}.contact-section{gap:40px}.email-block{padding-left:25px}.footer{align-items:flex-start}.footer>div{max-width:540px}.footer nav{gap:16px}.legal-index nav{grid-template-columns:repeat(3,minmax(0,1fr))}html[data-language="zh"] .services-intro h2{font-size:29px}html[data-language="zh"] .company-heading h2{font-size:27px}}
@media(max-width:700px){.site-header{padding:19px 6%;min-height:80px;flex-wrap:wrap;gap:18px}.wordmark{font-size:22px}.header-right{gap:20px;justify-content:space-between;flex:1;min-width:100%}.site-nav{gap:23px;font-size:13px}.language-control{gap:8px;font-size:11px}.language-control button{font-size:12px;padding:4px 1px;min-height:30px}.hero{padding:28px 6% 20px}.eyebrow{font-size:11px;letter-spacing:.6px}.hero h1{font-size:clamp(32px,7.4vw,51px);line-height:1.14;letter-spacing:-1.2px;margin:32px 0 25px}.hero-bottom{display:block}.hero-bottom>p{font-size:14px;line-height:1.85}.hero-link{font-size:13px;display:inline-block;margin-top:23px;padding-bottom:5px}.hero-company{margin-top:28px;padding-top:14px;font-size:10px;letter-spacing:0}.services-section{padding:41px 6% 43px;grid-template-columns:1fr;gap:31px}.services-intro{position:static}.services-intro .eyebrow{margin-bottom:18px}.services-intro h2{font-size:30px;line-height:1.3;letter-spacing:-.5px;margin-bottom:17px}.intro-description{font-size:13px;max-width:none}.service summary{grid-template-columns:22px minmax(0,1fr) 19px;gap:10px;padding:23px 0}.service-index{font-size:11px;padding-top:4px}.service h3{font-size:19px;line-height:1.45;letter-spacing:0}.detail-indicator{width:19px}.service-content{padding:0 8px 24px 32px}.service-content h4{font-size:16px;margin-bottom:12px}.service-content>p{font-size:14px;line-height:1.9}.service-content ul{margin-top:15px;display:block}.service-content li{font-size:12px;margin-top:6px}.company-section{padding:42px 6% 37px;grid-template-columns:1fr;gap:23px}.company-heading .eyebrow{margin-bottom:18px}.company-heading h2{font-size:28px;line-height:1.4;letter-spacing:-.6px}.company-copy{padding-top:0}.company-copy p{font-size:14px;line-height:1.9}.company-copy p+p{margin-top:15px}.company-record{grid-template-columns:1fr;gap:20px;padding-top:22px}.company-record dt{font-size:11px;margin-bottom:6px}.company-record dd{font-size:13px}.contact-section{padding:36px 6% 40px;grid-template-columns:1fr;gap:29px}.contact-section .eyebrow{margin-bottom:16px}.contact-section h2{font-size:35px;letter-spacing:-.8px;margin-bottom:17px}.contact-description{font-size:14px}.email-block{padding-left:0;border:0}.email-label{font-size:11px;margin-bottom:10px}.email-slot{font-size:21px;line-height:1.5}.footer{padding:23px 6% 26px;flex-direction:column;gap:19px;font-size:10px}.footer>div{gap:5px 10px}.footer nav{font-size:12px;gap:24px}.legal-heading{padding:27px 6% 30px}.legal-heading>a{font-size:12px;margin-bottom:25px}.legal-heading h1{font-size:36px;letter-spacing:-.6px;margin-bottom:16px}.effective{font-size:12px}.legal-layout{padding:28px 6% 39px}.legal-index{display:none}.legal-article p,.legal-article li{font-size:14px;line-height:1.9}.legal-article section{margin-top:28px}.legal-article h2{font-size:18px;line-height:1.6;margin-bottom:13px}.legal-end{font-size:12px;margin-top:31px;padding-top:20px}html[data-language="zh"] .hero h1{font-size:clamp(38px,9.1vw,57px);line-height:1.38;letter-spacing:0}html[data-language="zh"] .wordmark{font-size:24px}html[data-language="zh"] .services-intro h2{font-size:28px;line-height:1.45}html[data-language="zh"] .company-heading h2{font-size:26px;line-height:1.5}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
@media print{.site-header,.footer,.language-control,.legal-index,.legal-end{display:none}.legal-heading{background:white;padding:0 0 25px}.legal-heading>a{display:none}.legal-layout{padding:0}.legal-article{max-width:none}.legal-article section{break-inside:avoid}.services-section{background:white;color:black}.service-content{display:block!important}.service-content>p,.service-content li{color:black}}

/* Business imagery in the three navigation sections. */
.hero{padding-bottom:48px}
.section-photo{margin:28px 0 0;min-width:0}
.section-photo img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;background:#d9d5ca}
.services-intro .section-photo{max-width:430px}
.company-heading .section-photo{max-width:520px}
.company-record{grid-template-columns:1fr 1fr}
.company-copy{align-self:center;padding-top:0}
.contact-section{grid-template-columns:minmax(0,.9fr) minmax(0,1.3fr) minmax(0,1.2fr);gap:35px}
.contact-photo{margin:0}
.contact-section h2{font-size:36px;letter-spacing:-.8px}
.email-block{padding-left:25px}
.email-slot{font-size:clamp(18px,1.6vw,24px)}
@media(max-width:1050px){.contact-section{grid-template-columns:minmax(0,.85fr) minmax(0,1.4fr);gap:25px 35px}.contact-photo{grid-row:1 / 3;align-self:center}.email-block{grid-column:2;padding-left:0;border:0}.contact-section h2{font-size:32px}.contact-section .eyebrow{margin-bottom:14px}}
@media(max-width:700px){.hero{padding-bottom:34px}.services-intro .section-photo,.company-heading .section-photo{max-width:none}.section-photo{margin-top:24px}.company-record{grid-template-columns:1fr}.contact-section{grid-template-columns:1fr;gap:25px}.contact-photo{grid-row:auto;margin:0;order:2}.contact-intro{order:1}.email-block{grid-column:auto;order:3}.contact-photo img{aspect-ratio:16/9}.contact-section h2{font-size:34px}.email-slot{font-size:21px}}

/* Alternate section imagery: services left, company right, contact left. */
.company-section{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:40px 80px}
.company-intro{min-width:0}
.company-intro .company-copy{margin-top:25px;padding-top:0;max-width:610px}
.company-photo{margin:0;width:100%;max-width:560px;justify-self:end}
.company-record{align-self:start}
@media(max-width:1050px){.company-section{gap:35px 45px}}
@media(max-width:700px){.company-section{grid-template-columns:1fr;gap:25px}.company-intro .company-copy{margin-top:20px}.company-photo{max-width:none;justify-self:stretch}}

/* Slightly larger photographs with soft corners. */
.section-photo{border-radius:18px;overflow:hidden}
.section-photo img{border-radius:18px}
.services-section{grid-template-columns:minmax(0,1.1fr) minmax(0,1.4fr);gap:65px}
.services-intro .section-photo{max-width:520px}
.company-section{grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);column-gap:65px}
.company-photo{max-width:640px}
.contact-section{grid-template-columns:minmax(0,1.1fr) minmax(0,1.3fr) minmax(0,1.2fr);gap:30px}
@media(max-width:1050px){.services-section{grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);gap:35px}.company-section{column-gap:40px}.contact-section{grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);gap:25px 30px}}
@media(max-width:700px){.section-photo,.section-photo img{border-radius:14px}.services-section,.company-section,.contact-section{grid-template-columns:1fr}.services-intro .section-photo,.company-photo{max-width:none}.company-section{gap:25px}.contact-photo img{aspect-ratio:8/5}}

/* A more restrained opening section. */
.hero{padding-top:30px;padding-bottom:36px}
.hero h1{font-size:clamp(44px,4.8vw,72px);line-height:1.16;letter-spacing:-.035em;margin:30px 0 25px}
.hero-bottom{max-width:1080px;gap:45px}
.hero-bottom>p{font-size:15px;max-width:610px}
html[data-language="zh"] .hero h1{font-size:clamp(42px,4.5vw,66px);line-height:1.28;letter-spacing:-.5px}
@media(max-width:1050px){.hero h1{font-size:clamp(40px,5.2vw,54px)}html[data-language="zh"] .hero h1{font-size:clamp(38px,5.2vw,54px)}}
@media(max-width:700px){.hero{padding-top:26px;padding-bottom:30px}.hero h1{font-size:clamp(29px,7.3vw,44px);line-height:1.18;margin:24px 0 20px}.hero-bottom>p{font-size:14px}.hero-link{margin-top:19px}html[data-language="zh"] .hero h1{font-size:clamp(34px,8.2vw,48px);line-height:1.35;letter-spacing:0}}
