/* Shared presentation layer. Copy and page behavior remain unchanged. */
:root{--muted:#53675d;--line:#d2d9cc}
body{font-family:"Segoe UI",Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
html[lang="zh-CN"] body{font-family:"Microsoft YaHei UI","Microsoft YaHei","PingFang SC",sans-serif}
.wrap{max-width:1320px;padding-inline:56px}
header{background:rgba(245,243,236,.97);box-shadow:0 3px 16px #17383105}
.nav{min-height:100px;height:auto;gap:22px;padding-block:17px}
.brand{gap:14px;flex-shrink:0}.mark{width:44px;height:44px;font-size:19px;letter-spacing:-1px}
.brand strong{font-size:24px;font-weight:650;letter-spacing:-.7px}
.brand small{font-size:10px;line-height:1.7;letter-spacing:1px}
.brand .brand-subtitle{font-size:12px;letter-spacing:0;line-height:1.65}
.brand-zh-tagline{font-size:10px;line-height:1.7;margin-top:3px}
.links{gap:21px;font-size:13px;line-height:1.5}.nav-cta{padding-block:7px;border-bottom-color:#78936b}
.language-picker summary{border-radius:3px;padding:8px 12px;background:#ffffff40}
.language-options{border-radius:5px;box-shadow:0 12px 30px #17383115}
.hero{padding-top:85px;padding-bottom:76px;gap:60px}
.hero h1{font-size:clamp(44px,4.6vw,65px);line-height:1.12;letter-spacing:-1.8px;margin:28px 0 30px;font-weight:400}
html[lang="zh-CN"] .hero h1{font-size:clamp(38px,4.05vw,57px);line-height:1.4;letter-spacing:-1.1px}
html[lang="zh-CN"] h1 em{font-style:normal}
.eyebrow{font-size:12px;line-height:1.8;letter-spacing:1.25px}
.lead,.locale-page .lead{font-size:17px;line-height:1.9;max-width:550px}
.hero-detail{font-size:15px;line-height:1.9;max-width:550px}
.hero-note{font-size:12px;line-height:1.8}.actions{margin:32px 0 24px;gap:26px}
.button{font-size:14px;line-height:1.5;padding:16px 24px;border-radius:2px;transition:background .18s ease,box-shadow .18s ease}
.button:hover{background:#284d41;box-shadow:0 5px 16px #17383119}
.text-link{font-size:13px;line-height:1.7;padding-bottom:3px}
.drawing{border-color:#cbd5c1;border-radius:3px}.drawing-top{font-size:10px;line-height:1.6}.drawing-bottom{font-size:11px}.drawing-tag{font-size:10px}
.strip{padding-block:28px}.strip div{font-size:13px;line-height:1.8}.strip strong{font-size:23px;margin-bottom:7px}
section{padding-block:96px}.why-section{padding-top:86px}
.section-head{gap:48px;margin-bottom:42px;align-items:end}
h2{font-size:clamp(34px,3.1vw,46px);line-height:1.2;letter-spacing:-1px;font-weight:400}
html[lang="zh-CN"] h2{line-height:1.5;letter-spacing:-.5px}
.section-head>p{font-size:15px;line-height:1.9;max-width:340px}
.reasons-grid{gap:24px}.reason-card{border-radius:3px}.practical-value{padding:30px}
.reason-card p,.practical-value p{font-size:15px;line-height:1.9}
.practical-value h3{font-size:25px;line-height:1.4;margin:22px 0 18px}
.num,.practical-value .num{font-size:11px;line-height:1.8}
.benefit>strong{font-size:13px}.practical-value .output-note{font-size:13px;line-height:1.8}
.reasons-grid .design-reason{padding:48px}
.design-feature-head{gap:44px;align-items:start}.design-feature-head h3{font-size:37px!important;line-height:1.3;margin-top:22px}
.design-feature-head>p{font-size:16px!important;line-height:1.95;margin-top:28px}
.design-feature-context{margin-block:34px;padding:25px 28px}.design-feature-context>strong{font-size:18px;line-height:1.7}
.design-capabilities{gap:0 42px}.design-capabilities>div{padding-block:29px}
.design-capabilities h4{font-size:22px;line-height:1.5;font-weight:500;margin-block:16px}
.design-capabilities strong{font-size:14px;line-height:1.8}
.design-feature-bottom>strong{font-size:22px;line-height:1.6}
.design-reason .design-boundary{font-size:12px!important;line-height:1.85}
.service{padding-top:30px}.service h3,.locale-page .service h3{font-size:25px;line-height:1.35;margin-top:24px}
.service p{font-size:15px;line-height:1.9}.services{column-gap:0}
.example-layout{gap:48px}.example-layout h3{font-size:18px;line-height:1.6;margin-top:27px}
.example-layout p{font-size:15px;line-height:1.9}.example-badge{font-size:12px;padding:8px 13px;border-radius:2px}
.compare{font-size:14px;font-variant-numeric:tabular-nums;line-height:1.7}
.compare th,.compare td{padding:17px 14px}.compare tbody tr:nth-child(even){background:#f2f4eb}
.compare caption{font-size:13px!important;line-height:1.7;padding-bottom:12px;text-align:start!important}
.saving{padding:25px;border-radius:2px}.saving strong{font-size:clamp(24px,2.25vw,32px);line-height:1.4;font-variant-numeric:tabular-nums}
.saving p{font-size:13px;line-height:1.8;margin-top:9px}
.example-disclosure{font-size:13px!important;line-height:1.85;margin-top:32px}
.dark p{font-size:16px;line-height:1.9}.project,.locale-page .project{font-size:22px;line-height:1.5;padding-block:23px}
.project span{font-size:10px;line-height:1.7}.caption{font-size:12px!important;line-height:1.8}
.material-item{padding-block:25px}.material-item h3{font-size:19px;line-height:1.5;margin-bottom:10px}.material-item p{font-size:15px;line-height:1.9}.pill{font-size:11px}
.step h3{font-size:18px;line-height:1.5}.step p{font-size:15px;line-height:1.85}
.contact p,.contact ul{font-size:15px;line-height:1.9}label{font-size:13px;line-height:1.7}
input,textarea{font-size:15px;padding:13px;background:#fafbf5;border-radius:2px;line-height:1.6}
input:focus,textarea:focus{background:white;border-color:#839d70}.form-grid{gap:20px}
.contact .form-note,.contact .preview-notice{font-size:12px!important;line-height:1.8}.status{font-size:13px;line-height:1.8}
.footer-inner{font-size:12px;line-height:1.8;align-items:center}footer{padding-block:33px}
html[dir="rtl"] body{font-family:Tahoma,Arial,sans-serif}html[dir="rtl"] .hero h1{font-size:clamp(36px,3.6vw,53px);line-height:1.65}
html[dir="rtl"] .design-feature-head h3{line-height:1.65}html[dir="rtl"] .eyebrow,html[dir="rtl"] .num{letter-spacing:0}
@media(min-width:651px) and (max-width:1180px){.nav{flex-wrap:wrap}.links{width:100%;justify-content:center;flex-wrap:wrap}.hero{gap:35px}.wrap{padding-inline:36px}.section-head{gap:30px}.reasons-grid{grid-template-columns:1fr}.practical-value{padding:30px}.experience,.contact-grid{gap:45px}.hero h1{font-size:48px}.locale-page .hero h1{font-size:43px}}
@media(max-width:800px){.design-feature-head{grid-template-columns:1fr;gap:0}.design-feature-head>p{margin-top:22px}.reasons-grid .design-reason{padding:32px}.example-layout{grid-template-columns:1fr}.section-head>p{max-width:none}.materials{gap:30px}.drawing-bottom{flex-wrap:wrap}}
@media(max-width:650px){html{scroll-padding-top:115px}.wrap{padding-inline:22px}.nav{min-height:96px;padding-block:14px;gap:8px;position:relative}.brand{gap:9px;min-width:0}.mark{width:34px;height:38px;font-size:16px}.brand strong{font-size:21px}.brand small{font-size:9px;letter-spacing:0}.brand .brand-subtitle{font-size:9px;letter-spacing:0;max-width:170px}.brand-zh-tagline{font-size:8px;max-width:177px}.language-picker{margin-inline-start:auto}.language-picker summary{font-size:11px;padding:7px}.menu-toggle{font-size:12px;padding:7px 8px}.links{top:100%;font-size:15px;gap:20px;padding:25px;box-shadow:0 10px 18px #17383110}.hero{padding-top:45px;padding-bottom:42px;gap:34px}.hero h1,.locale-page .hero h1{font-size:40px;letter-spacing:-1px;line-height:1.15}html[lang="zh-CN"] .hero h1{font-size:36px;line-height:1.45}.lead,.locale-page .lead{font-size:16px;line-height:1.9}.hero-detail{font-size:15px}.eyebrow{font-size:11px}.hero-note{font-size:11px}.drawing{min-height:390px}.drawing svg{height:310px}.drawing-bottom strong,.locale-page .drawing-bottom strong{font-size:18px}.strip{gap:22px}.strip strong{font-size:21px}.strip div{font-size:13px}section{padding-block:60px}.why-section{padding-top:60px}.section-head{margin-bottom:29px}.section-head>p{font-size:15px}h2{font-size:32px}.reasons-grid .design-reason{padding:26px}.design-feature-head h3,.locale-page .design-feature-head h3{font-size:27px!important}.design-feature-head>p{font-size:15px!important}.design-feature-context{padding:20px;margin-block:26px}.design-feature-context>strong{font-size:17px}.design-capabilities{grid-template-columns:1fr}.design-capabilities h4{font-size:21px}.design-feature-bottom>strong{font-size:20px}.practical-value{padding:25px}.practical-value h3{font-size:24px}.service h3,.locale-page .service h3{font-size:22px}.service p{font-size:14px;line-height:1.85}.compare{table-layout:fixed;width:100%}.compare th,.compare td{font-size:12px;padding:13px 8px;overflow-wrap:anywhere}.locale-page .case-table-wrap table{min-width:0}.saving strong{font-size:25px}.project,.locale-page .project{font-size:19px;gap:12px}.step h3{font-size:17px}.step p{font-size:14px}.form-grid{gap:17px}input,textarea{font-size:16px}.footer-inner{align-items:flex-start;font-size:11px}html[dir="rtl"] .hero h1{font-size:35px;line-height:1.65}}
@media(prefers-reduced-motion:reduce){.button{transition:none}}
@media(max-width:380px){.nav{gap:6px}.brand{gap:7px}.brand .brand-subtitle{max-width:130px;font-size:8px}.brand strong{font-size:20px}.brand-zh-tagline{max-width:140px;font-size:8px}.language-picker summary{font-size:10px;padding:6px}.menu-toggle{font-size:11px;padding:6px}.mark{width:30px;font-size:14px}.brand small{font-size:8px}}

.dark .project-experience-note{font-size:14px!important;line-height:1.95;margin-top:25px;color:#d1ddd2;border-inline-start:2px solid #a5bd85;padding-inline-start:18px}@media(max-width:650px){.dark .project-experience-note{font-size:13px!important;padding-inline-start:14px}}

/* Improve legibility of the two introductory experience paragraphs. */
.experience > div:first-child > p{font-size:18px;line-height:1.95}
@media(max-width:650px){.experience > div:first-child > p{font-size:16px;line-height:1.9}}

.studio-name{font-weight:700;color:inherit}

/* Launch review: long words and narrow touch layouts. */
.service,.step,.reason-card,.example-layout>div,.experience>div{min-width:0}
.service h3,.service p,.step h3,.step p{overflow-wrap:anywhere;hyphens:auto}
@media(max-width:380px){.services,.steps{grid-template-columns:minmax(0,1fr)}.service+.service,html[dir="rtl"] .service+.service{border-inline-start:0;padding-inline:0}.service{padding-inline:0}.button{max-width:100%;white-space:normal}}
.language-options a{min-height:42px}
@media(max-width:650px){.menu-toggle,.language-picker summary{min-height:40px;display:flex;align-items:center;justify-content:center}}
