@font-face{font-family:Gilroy;src:url('/assets/GilroyRegular.woff2') format('woff2');font-weight:400;font-display:swap}@font-face{font-family:Gilroy;src:url('/assets/GilroyBold.woff2') format('woff2');font-weight:700;font-display:swap}@font-face{font-family:Chronicle;src:url('/assets/ChronicleDisplaySemibold.woff2') format('woff2');font-weight:600;font-display:swap}
:root{--ink:#424242;--muted:#62696b;--teal:#b5d9dc;--ice:#d1e4ec;--gray:#c3c6c7;--canvas:#f5f7f8;--body:17px;--sub:28px;--display:56px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;color:var(--ink);background:#fff;font:400 var(--body)/1.55 Gilroy,Arial,sans-serif}button,input,textarea{font:inherit}button,a,input,textarea{ -webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{cursor:pointer;border:0;color:inherit;background:none}button:active,.primary:active{transform:scale(.97)}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #548d96;outline-offset:4px}img{max-width:100%;display:block}h1,h2,h3,h4,h5,h6{font-family:Chronicle,Georgia,serif;font-weight:600;line-height:1.12;letter-spacing:-.02em;margin:0 0 24px}h1,h2{font-size:var(--display)}h3,h4,h5,h6{font-size:var(--sub)}p{margin:0 0 22px}header{height:90px;padding:0 max(28px,calc((100vw - 1280px)/2));display:flex;align-items:center;gap:36px;position:sticky;top:0;z-index:20;background:#fffffff0;backdrop-filter:blur(18px);border-bottom:1px solid #42424210}.brand{width:110px;flex-shrink:0}.brand img{width:100%;height:65px;object-fit:contain}header nav{display:flex;justify-content:center;gap:30px;flex:1}header nav a{white-space:nowrap}header nav a:hover,.text-link:hover{color:#49777e}.nav-contact,.primary{display:inline-flex;justify-content:center;align-items:center;background:var(--teal);color:var(--ink);border-radius:999px;padding:14px 25px;min-height:48px;white-space:nowrap}.menu{display:none;min-height:44px;min-width:44px}.eyebrow{font-size:var(--body);font-weight:700;letter-spacing:.08em;margin-bottom:22px}.hero{text-align:center;padding:62px 24px 0;background:#f5f7f8}.hero h1{margin-bottom:22px}.hero h1 span,.design-hero h1 span,.insights-hero h1 span{color:#6a9298}.hero-sub{font-size:var(--body);max-width:680px;margin:0 auto 30px}.search-wrap{max-width:760px;margin:auto;position:relative;z-index:3}#location-search{display:flex;align-items:center;gap:12px;background:#fff;padding:9px;border-radius:999px;border:1px solid #42424215;text-align:left}.location-icon{font-size:var(--sub);padding-left:14px}#location{flex:1;min-width:0;border:0;background:transparent;padding:12px 4px;outline:none}.micro{margin:16px 0 38px;color:var(--muted);font-size:var(--body)}.hero-photo{max-width:1440px;height:480px;margin:auto;overflow:hidden;position:relative}.hero-photo>img{width:100%;height:100%;object-fit:cover;object-position:50% 55%}.photo-caption{display:flex;justify-content:space-between;position:absolute;bottom:0;left:0;right:0;padding:24px 32px;color:white;background:linear-gradient(transparent,#0009)}.section{padding:110px max(28px,calc((100vw - 1200px)/2))}.section-head{text-align:center;margin:0 auto 50px;max-width:1020px}.section-head h2{margin-bottom:26px}.source-copy{max-width:800px;margin:auto}.source-copy br+br{display:none}.text-link{display:inline-block;color:#466f77;border-bottom:1px solid #466f7740;padding:2px 0;background:none}.three-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.feature{overflow:hidden;padding:34px 28px 0;display:flex;flex-direction:column;border-radius:18px;min-height:450px}.small-number{display:block;margin-bottom:40px}.feature h3{min-height:94px;margin-bottom:18px}.feature-link{margin-bottom:32px}.feature img{width:calc(100% + 56px);max-width:none;margin-left:-28px;height:205px;object-fit:cover;margin-top:auto}.pale{background:var(--ice)}.yellow{background:#e9eeee}.dark{background:var(--ink);color:#fff}.design-section{background:var(--canvas)}.comparison{width:100%;height:590px;position:relative;overflow:hidden;border-radius:18px;--split:50%;isolation:isolate}.comparison img{position:absolute;width:100%;height:100%;object-fit:cover}.comparison .before{clip-path:inset(0 calc(100% - var(--split)) 0 0)}.comparison .compare-label{position:absolute;top:25px;background:#ffffffdc;padding:8px 20px;border-radius:999px;z-index:2}.compare-label.left{left:25px}.compare-label.right{right:25px}.compare-line{position:absolute;top:0;bottom:0;width:2px;background:#fff;left:var(--split);pointer-events:none}.compare-line span{position:absolute;top:50%;transform:translate(-50%,-50%);width:58px;height:58px;border-radius:50%;background:white;color:var(--ink);display:grid;place-items:center;font-size:var(--sub);box-shadow:0 3px 24px #0002;white-space:nowrap}.comparison input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:ew-resize;touch-action:pan-y;z-index:4}.comparison:focus-within{outline:3px solid #548d96;outline-offset:5px}.compare-bottom{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:24px}.case-tabs{display:flex;gap:8px}.case-tabs button{width:48px;height:48px;border-radius:50%;background:#e5e8e9}.case-tabs button[aria-pressed=true]{background:var(--ink);color:white}.split{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.split>img{width:100%;height:560px;object-fit:cover;border-radius:18px}.owner-section{background:white}.owner-section .split p{max-width:550px}.midterm-section{background:var(--ice)}.midterm-section .split{gap:60px}.pills{display:flex;gap:10px;flex-wrap:wrap}.pills span{padding:8px 15px;background:#ffffff90;border-radius:999px}.process-section{padding:100px max(28px,calc((100vw - 1100px)/2));background:#fff;overflow:hidden}.process-section .section-title{text-align:center;margin-bottom:65px}.process-section .container{width:100%}.process-section .row{display:flex;align-items:center;position:relative;min-height:320px;gap:65px}.process-section .row>div{width:50%}.process-section .row:first-child>.col-12{width:100%}.process-section .order-lg-1{order:1}.process-section .order-lg-2{order:2}.process-section .row .text-block{position:relative;z-index:2}.process-section .row .image-block svg{width:100%;max-height:280px}.process-section .line-block{height:180px;position:relative}.process-section .line-block svg{height:100%;width:100%;overflow:visible}.process-section .row:has(.line-block){min-height:180px}.process-section .line-block svg path{stroke:var(--gray)}.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px 28px;margin-top:60px}.services-grid article{border-top:1px solid #42424225;padding-top:26px}.services-grid h3{margin:14px 0 18px}.owner-services{background:var(--canvas)}.about{text-align:center;background:var(--ink);color:#fff}.about .eyebrow{color:var(--teal)}.faq{display:grid;grid-template-columns:1fr 1.3fr;gap:80px}.faq details{border-bottom:1px solid #42424225;padding:20px 0}.faq summary{cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:25px}.faq summary::after{content:'+';font-size:var(--sub)}.faq details[open] summary::after{content:'−'}.faq details p{margin-top:18px}.insights{background:var(--canvas)}.insight-links{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.insight-links a{padding:36px;border-radius:18px;background:#fff;min-height:240px}.insight-links span{display:block;margin-bottom:35px}.contact-section{background:var(--ice);display:grid;grid-template-columns:1fr 1.1fr;gap:80px}.lead-form{padding:35px;background:#fff;border-radius:18px}.lead-form fieldset{border:0;margin:0 0 20px;padding:0}.lead-form legend{margin-bottom:14px}.roles{display:grid;grid-template-columns:1fr 1fr;gap:9px}.roles label{position:relative;cursor:pointer;margin:0}.roles input{position:absolute;width:1px;height:1px;opacity:0}.roles span{display:flex;align-items:center;min-height:58px;justify-content:center;text-align:center;border:1px solid #42424225;border-radius:10px;padding:8px 12px}.roles input:checked+span{background:var(--ice);border-color:#709ca5}.roles input:focus-visible+span{outline:3px solid #548d96}.lead-form>label,.form-grid label{display:block;margin-bottom:18px}.lead-form input:not([type=radio]),.lead-form textarea{display:block;width:100%;padding:13px 14px;background:#f5f7f8;border:1px solid #42424220;border-radius:8px;margin-top:7px;min-width:0}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.lead-form textarea{resize:vertical}.lead-form .primary{width:100%}.muted,.form-note{color:var(--muted)}.form-note{margin:15px 0 0}.review{padding:20px;border:1px solid var(--teal);border-radius:10px;margin-top:20px;white-space:pre-line;overflow-wrap:anywhere}.footer-top{display:grid;grid-template-columns:150px 1.5fr 1fr 1fr;gap:45px;padding:70px max(28px,calc((100vw - 1200px)/2))}.footer-top a,.footer-top button{display:block;margin-bottom:10px}.footer-top .brand{width:135px}.footer-bottom{padding:25px max(28px,calc((100vw - 1200px)/2));display:flex;justify-content:space-between;background:var(--canvas);gap:25px}.chat-launch,.to-top{position:fixed;bottom:22px;z-index:25;border-radius:999px;min-height:52px;background:var(--ink);color:white;padding:12px 20px;box-shadow:0 4px 20px #0002}.chat-launch{left:22px;display:flex;align-items:center;gap:12px}.chat-launch span{font-size:var(--sub)}.to-top{right:22px;width:52px;background:white;color:var(--ink);border:1px solid #42424225;font-size:var(--sub);padding:0}dialog{padding:40px;border:0;border-radius:22px;max-width:630px;width:calc(100% - 30px);max-height:90vh;overflow:auto;color:var(--ink)}dialog::backdrop{background:#0005;backdrop-filter:blur(6px)}dialog .close{position:absolute;right:15px;top:10px;width:44px;height:44px;font-size:var(--sub)}dialog h2{font-size:var(--sub)}dialog .lead-form{padding:0}.qr{max-width:320px;margin:auto}.selected-location{background:var(--ice);padding:16px;border-radius:12px;margin-bottom:20px}.selected-location iframe{display:block;border:0;width:100%;height:150px;margin-top:12px}.search-results,#search-results{background:#fff;border-radius:18px;border:1px solid #42424220;margin-top:10px;text-align:left;padding:12px;box-shadow:0 15px 30px #0001}#search-results button{display:block;width:100%;padding:15px;text-align:left;border-radius:8px}#search-results button:hover{background:var(--ice)}#search-results p{padding:12px;margin:0}.design-hero{text-align:center;background:var(--canvas)}.design-hero .wide-photo{margin-top:45px;height:480px;width:100%;object-fit:cover;border-radius:18px}.designer{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}.designer>img{width:100%;max-height:650px;object-fit:cover;border-radius:18px}.design-services{background:var(--ice)}.insights-hero{text-align:center;background:var(--canvas);min-height:75vh}.journal-empty{padding:60px;background:white;max-width:850px;margin:60px auto 0;border-radius:18px}.journal-empty h2{font-size:var(--sub)}.journal-empty .text-link{margin:20px}
@media(min-width:1500px){.hero-photo{height:550px}}@media(max-width:1100px){header{gap:20px;padding:0 25px}header nav{gap:20px}.section,.process-section{padding:80px 35px}.split{gap:35px}.faq,.contact-section{gap:35px}.feature{padding:28px 20px 0}.feature img{width:calc(100% + 40px);margin-left:-20px}.footer-top{gap:25px}.hero-photo{height:430px}}@media(max-width:850px){:root{--display:40px;--sub:24px;--body:17px}header{height:78px}.brand{width:90px}header nav{display:none;position:absolute;top:78px;left:0;right:0;padding:25px;background:white;flex-direction:column;border-bottom:1px solid #ddd}header nav.open{display:flex}.nav-contact{margin-left:auto;padding:10px 20px}.menu{display:block}.hero{padding:48px 20px 0}.hero-photo{height:370px}.three-grid{grid-template-columns:1fr}.feature{min-height:300px;position:relative;padding:28px;width:100%}.feature h3{min-height:0;max-width:55%}.feature-link{max-width:50%}.feature img{position:absolute;right:0;width:42%;height:100%;top:0;margin:0;object-fit:cover}.small-number{margin-bottom:35px}.comparison{height:450px}.split{gap:40px;grid-template-columns:1fr}.split>img{height:400px}.midterm-section .split>img{order:2}.services-grid{grid-template-columns:1fr 1fr}.faq,.contact-section,.designer{grid-template-columns:1fr;gap:40px}.insight-links{grid-template-columns:1fr}.insight-links a{min-height:180px}.footer-top{grid-template-columns:1fr 1fr}.designer>img{max-height:500px;width:auto;margin:auto}.process-section .row{gap:30px;min-height:280px}.chat-launch{padding:10px 16px}.footer-bottom{padding-bottom:90px}}
@media(max-width:520px){:root{--display:34px;--sub:24px;--body:17px}.section,.process-section{padding:64px 22px}.eyebrow{letter-spacing:.025em}.hero .eyebrow{max-width:300px;margin:0 auto 24px}.hero-sub br{display:none}.hero h1{font-size:var(--display)}#location-search{border-radius:18px;flex-wrap:wrap;gap:4px;padding:9px}#location-search .primary{width:100%;margin-top:5px}.hero-photo{height:310px}.photo-caption{padding:20px;text-align:left}.photo-caption span:last-child{display:none}.feature{min-height:335px}.feature h3{max-width:59%}.feature img{width:38%}.comparison{height:300px}.compare-bottom{flex-wrap:wrap;justify-content:center;text-align:center}.compare-bottom>span:last-child{display:none}.compare-label.left{left:14px}.compare-label.right{right:14px}.comparison .compare-label{top:14px;padding:7px 14px}.services-grid{grid-template-columns:1fr;gap:25px}.lead-form{padding:22px}.form-grid{grid-template-columns:1fr;gap:0}.roles span{padding:8px;min-height:68px}.footer-top{padding:50px 22px;gap:25px}.footer-bottom{display:block;padding:22px 22px 100px}.footer-bottom span{display:block;margin:10px 0}.chat-launch{max-width:calc(100% - 100px);font-size:var(--body);bottom:16px;left:16px}.chat-launch span{display:none}.to-top{right:16px;bottom:16px}.process-section .row{display:flex;flex-direction:column;gap:15px;padding:30px 0;min-height:0}.process-section .row>div{width:100%}.process-section .row .image-block svg{height:220px}.process-section .row .text-block{order:2}.process-section .order-lg-1{order:1}.process-section .row:has(.line-block){display:none}.process-section .row>div:has(.text-block){order:2}.process-section .row>div:has(.image-block){order:1}.designer{gap:35px}.design-hero .wide-photo{height:300px}.journal-empty{padding:30px 20px}.journal-empty .text-link{margin:20px 0}.selected-location iframe{height:130px}dialog{padding:35px 22px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.process-section svg{opacity:1!important}}@media(prefers-reduced-transparency:reduce){header{background:#fff;backdrop-filter:none}dialog::backdrop{backdrop-filter:none}}@media(prefers-contrast:more){input,textarea,.roles span{border-color:var(--ink)!important}}
/* Brand palette supplied by the owner. Three text size tokens at every breakpoint. */
:root{--teal:#bcd8db;--ice:#d4e3ec;--gray:#c2c4c5}
.process-section .container{position:relative;isolation:isolate}.process-section .graphic-block{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;pointer-events:none;z-index:0}.process-section .graphic-block svg{width:100%;height:100%;max-width:1100px}.process-section .row{z-index:1}.process-section .image-block{visibility:hidden}.process-section .text-block{padding:55px 20px}.process-section .row{min-height:350px}.process-section .row>div:has(.text-block){background:#ffffffdd;border-radius:18px}.languages{display:flex;gap:8px;align-items:center;white-space:nowrap}.languages a[aria-current=page]{font-weight:700;border-bottom:2px solid #6a9298}.languages a{padding:9px 2px}header{gap:24px}header nav{gap:24px}html[lang=zh-CN] h1,html[lang=zh-CN] h2,html[lang=zh-CN] h3,html[lang=zh-CN] h4{font-family:Chronicle,'Songti SC','Noto Serif CJK SC',serif}html[lang=zh-CN] body{font-family:Gilroy,'PingFang SC','Microsoft YaHei',sans-serif}
@media(max-width:1100px){header nav{gap:16px}header{gap:16px}}@media(max-width:850px){.process-section .graphic-block{display:none}.process-section .image-block{visibility:visible}.process-section .text-block{padding:20px 0}.process-section .row{min-height:300px}.process-section .row>div:has(.text-block){background:transparent}.languages{margin-left:0}.nav-contact{margin-left:auto}}@media(max-width:520px){header{padding:0 16px;gap:12px}.nav-contact{display:none}.languages{margin-left:auto}.process-section .row{min-height:0}.process-section .text-block{padding:0}html[lang=zh-CN] .feature h3{max-width:60%}}
.stats{padding-top:40px;padding-bottom:80px}.stats .section-head h2{font-size:var(--sub)}.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);text-align:center;gap:24px}.stats-grid h3{font-size:var(--display);color:#6a9298;margin-bottom:8px}.stats-grid p{margin:0}@media(max-width:520px){.stats-grid{gap:12px}.stats-grid h3{font-size:var(--sub)}}
.process-section>.container:first-child .row{min-height:0;display:block}.process-section>.container:first-child .section-title{margin-bottom:45px}

/* Compact navigation before the desktop header runs out of space. */
@media(min-width:851px) and (max-width:900px){header nav{display:none;position:absolute;top:100%;left:0;right:0;padding:25px;background:#fff;flex-direction:column;border-bottom:1px solid #ddd}header nav.open{display:flex}.nav-contact{margin-left:auto}.menu{display:block}}

/* Keep the longer English insights label within the existing compact menu. */
@media(min-width:851px) and (max-width:1100px){html[lang=en] header nav{display:none;position:absolute;top:100%;left:0;right:0;padding:25px;background:#fff;flex-direction:column;border-bottom:1px solid #ddd}html[lang=en] header nav.open{display:flex}html[lang=en] .nav-contact{margin-left:auto}html[lang=en] .menu{display:block}}
header nav a[href="/insights/"]{white-space:normal;max-width:100%}
