@layer v9 {
.design-v9{--paper:#f7f7f2;--white:#fff;--ink:#202620;--muted:#6d736d;--line:#dcdfd6;--orange:#ed5c30;--orange-dark:#c83f19;--orange-soft:#fff0e8;--green:#51755c;--font:"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;color:var(--ink);background:var(--paper);font:16px/1.8 var(--font);-webkit-font-smoothing:antialiased;position:relative;isolation:isolate;text-align:left}
.design-v9 *{box-sizing:border-box}
.design-v9 button,.design-v9 a{touch-action:manipulation;-webkit-tap-highlight-color:transparent}
.design-v9 button{font:inherit;cursor:pointer;color:inherit}
.design-v9 a{color:inherit;text-decoration:none}
.design-v9 img{display:block;width:100%;height:100%;object-fit:cover}
.design-v9 svg{display:block}
.design-v9 h1,.design-v9 h2,.design-v9 h3,.design-v9 p{padding:0}
.design-v9 button:focus-visible,.design-v9 a:focus-visible{outline:3px solid var(--orange);outline-offset:5px}
.design-v9 ::selection{background:#ffd8c2;color:var(--ink)}
.design-v9 .container{width:min(1200px,calc(100% - 88px));max-width:1200px;min-width:0;margin:0 auto;position:relative}
.design-v9 .icon{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}
.design-v9 .btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;border:1px solid transparent;padding:14px 24px;border-radius:4px;font-weight:700;line-height:1.5;font-size:16px;transition:background .2s,transform .2s,box-shadow .2s;cursor:pointer}
.design-v9 .btn:hover{transform:translateY(-2px)}
.design-v9 .btn-primary{background:var(--orange);color:white}
.design-v9 .btn-primary:hover{background:var(--orange-dark);box-shadow:0 5px 15px #ed5c3026}
.design-v9 .btn-outline{background:transparent;border-color:#bcc4b2}
.design-v9 .btn-outline:hover{background:#fff;border-color:#7d8b6c}
.design-v9 .hero{padding:60px 0 32px}
.design-v9 .hero-grid{display:grid;grid-template-columns:1fr 1.06fr;gap:60px;align-items:center}
.design-v9 .hero-badge{display:inline-flex;gap:8px;align-items:center;border:1px solid #dce4d6;color:#53724b;background:#eff3e9;border-radius:3px;padding:5px 12px;font-size:14px;letter-spacing:1px;margin-bottom:10px}
.design-v9 .hero-badge .icon{width:16px;height:16px}
.design-v9 .hero .hero-headline{font-size:clamp(43px,4.3vw,60px);line-height:1.27;letter-spacing:-2px;margin:15px 0 23px;font-weight:800;color:var(--ink)}
.design-v9 .hero .hero-headline em{font-style:normal;color:var(--orange);position:relative}
.design-v9 .hero .hero-headline em:after{content:"";position:absolute;bottom:-5px;left:0;width:100%;height:4px;background:var(--orange);opacity:.22;transform:rotate(-1.8deg);border-radius:50%}
.design-v9 .hero-description{color:var(--muted);font-size:18px;line-height:1.9;margin:0;max-width:490px}
.design-v9 .hero-services{display:flex;flex-wrap:wrap;gap:9px;margin:22px 0 25px}
.design-v9 .hero-services :is(a,button){font-size:15px;padding:6px 11px;border:1px solid var(--line);border-radius:3px;transition:all .2s;background:#ffffff70;white-space:nowrap}
.design-v9 .hero-services :is(a,button):hover{background:var(--orange-soft);border-color:var(--orange);color:var(--orange-dark)}
.design-v9 .hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}
.design-v9 .hero-contact{display:grid;gap:12px;margin-top:4px}
.design-v9 .hero-contact .plain-copy{display:flex;align-items:center;gap:16px;width:max-content;max-width:100%;border:0;background:none;padding:0;font-size:15px;color:var(--muted);line-height:1.3;cursor:pointer}
.design-v9 .hero-contact .plain-copy .contact-value{font:650 29px/1.35 "Segoe UI",sans-serif;letter-spacing:.9px;color:var(--ink)}
.design-v9 .hero-contact .plain-copy .icon{width:16px;height:16px;color:#89947c}
.design-v9 .hero-contact .plain-copy:hover strong{color:var(--orange)}
.design-v9 .hero-contact .plain-copy>.contact-name{width:36px}
.design-v9 .hero-visual{position:relative;min-width:0;padding-bottom:23px}
.design-v9 .hero-visual:before{content:"";position:absolute;left:28px;right:-16px;top:24px;bottom:6px;border:1px solid #dcdacf;border-radius:6px;background:#e9e9df}
.design-v9 .photo-frame{position:relative;height:535px;border-radius:6px;overflow:hidden;background:#d0cec4}
.design-v9 .photo-frame img{object-position:46% center}
.design-v9 .photo-frame:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#2026200a,transparent 45%,#20262087);pointer-events:none}
.design-v9 .visual-corner{position:absolute;z-index:2;top:22px;left:22px;display:flex;align-items:center;gap:8px;background:#f7f7f2ee;border-radius:3px;padding:6px 12px;font-size:14px;color:var(--ink);letter-spacing:1px}
.design-v9 .visual-corner .icon{width:17px;height:17px}
.design-v9 .visual-bottom{position:absolute;z-index:2;bottom:36px;left:27px;color:white}
.design-v9 .visual-bottom .visual-caption{font-size:15px;letter-spacing:1px;opacity:.9}
.design-v9 .visual-bottom .visual-title{display:block;font-size:29px;line-height:1.5;letter-spacing:-.5px;margin-top:7px}
.design-v9 .visual-foot{font-size:13px;color:var(--muted);margin-top:17px;text-align:right;line-height:1.7}
.design-v9 .promise-row{display:grid;grid-template-columns:repeat(3,1fr);margin-top:34px;padding:25px 0 0;border-top:1px solid var(--line)}
.design-v9 .promise{display:flex;align-items:center;gap:14px}
.design-v9 .promise:nth-child(2){justify-content:center}
.design-v9 .promise:nth-child(3){justify-content:flex-end}
.design-v9 .promise .icon{width:27px;height:27px;color:var(--green)}
.design-v9 .promise strong{font-size:16px;display:block;line-height:1.6}
.design-v9 .promise span{font-size:14px;color:var(--muted);display:block;line-height:1.7;margin-top:3px}
.design-v9 .section{padding:64px 0}
.design-v9 .section-title{display:flex;justify-content:space-between;gap:30px;align-items:flex-end;margin:16px 0 32px}
.design-v9 h2{font-size:36px;letter-spacing:-1px;line-height:1.4;margin:0;font-weight:750}
.design-v9 .section-title p{color:var(--muted);font-size:16px;line-height:1.85;margin:0;max-width:350px}
.design-v9 .section-label{font-size:18px;letter-spacing:1.6px;color:var(--orange-dark);font-weight:650;line-height:1.6}
.design-v9 .service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:17px}
.design-v9 .service-card{background:white;border:1px solid var(--line);border-radius:5px;padding:24px 21px 21px;display:flex;flex-direction:column;position:relative;transition:border-color .2s,transform .2s}
.design-v9 .service-card:hover{border-color:#b4b9aa;transform:translateY(-4px)}
.design-v9 .service-card:target{border-color:var(--orange);box-shadow:0 0 0 3px #ed5c3010}
.design-v9 .card-top{display:flex;align-items:center;justify-content:space-between;color:var(--muted);font-size:15px}
.design-v9 .card-num{font-family:Georgia,serif;font-size:22px;color:#98a08d;font-style:italic}
.design-v9 .service-diagram{height:119px;display:flex;align-items:center;justify-content:center;gap:14px;margin:10px 0 7px}
.design-v9 .service-diagram .diagram-arrow{color:#9a9f92;width:23px;height:23px}
.design-v9 .material-ball{width:65px;height:65px;position:relative;border-radius:50%;box-shadow:inset -6px -8px 13px #00000025,3px 9px 12px #2026200d}
.design-v9 .material-ball:after{content:"";position:absolute;inset:0;border-radius:50%;background:radial-gradient(circle at 33% 28%,#ffffff9c,transparent 40%);mix-blend-mode:screen}
.design-v9 .material-ball.cr{background:radial-gradient(circle at 38% 32%,#e9b289 0%,#b57b5c 48%,#715849 80%)}
.design-v9 .material-ball.vr{background:radial-gradient(circle at 33% 30%,#f6f6ed,#c6caba 41%,#7c8d7a 65%,#e6e7dd 88%)}
.design-v9 .material-ball span{position:absolute;bottom:18px;left:0;width:100%;text-align:center;font-size:17px;letter-spacing:.7px;color:white;font-weight:800;z-index:2;text-shadow:0 1px 2px #0004}
.design-v9 .version-file{height:71px;width:58px;border:1px solid #cdd4c6;border-radius:3px;background:#edf1e8;color:#65795b;display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative}
.design-v9 .version-file:before{content:"";position:absolute;top:7px;left:10px;width:18px;height:2px;background:currentColor;opacity:.3;box-shadow:0 5px 0 currentColor}
.design-v9 .version-file strong{font-size:17px;margin-top:11px;font-weight:700;line-height:1.4}
.design-v9 .version-file small{font-size:11px;letter-spacing:.8px}
.design-v9 .version-file.low{background:var(--orange-soft);border-color:#e5c5b6;color:#b86842}
.design-v9 .wire-cube{width:64px;height:72px;color:#748267}
.design-v9 .wire-cube.su{color:var(--orange)}
.design-v9 .service-card h3{font-size:20px;letter-spacing:-.6px;line-height:1.6;margin:4px 0 5px;font-weight:700}
.design-v9 .service-subtitle{font-size:14px;color:var(--muted);margin:0 0 16px;line-height:1.7}
.design-v9 .service-description{font-size:16px;line-height:1.8;color:var(--muted);margin:0;min-height:116px}
.design-v9 .service-tags{display:flex;gap:7px;flex-wrap:wrap;margin:17px 0 24px}
.design-v9 .service-tags span{font-size:13px;padding:3px 8px;background:#f3f4ee;color:#71776b;border-radius:2px}
.design-v9 .service-action{margin-top:auto;display:flex;align-items:center;justify-content:space-between;border:0;background:none;padding:15px 0 0;border-top:1px solid #e9ebe2;font-size:16px;font-weight:700;color:var(--ink);text-align:left}
.design-v9 .service-action:hover{color:var(--orange)}
.design-v9 .service-action .icon{width:20px;height:20px}
.design-v9 .custom-service{margin-top:19px;border:1px dashed #c5cabb;border-radius:4px;display:flex;gap:18px;align-items:center;justify-content:space-between;padding:23px 25px;background:#f0f1e8}
.design-v9 .custom-copy{display:flex;gap:16px;align-items:center}
.design-v9 .plus-icon{width:40px;height:40px;display:grid;place-items:center;background:#e4e8d8;border-radius:50%;color:#71845c;flex-shrink:0}
.design-v9 .custom-copy strong{font-size:18px;display:block;line-height:1.6}
.design-v9 .custom-copy p{font-size:15px;color:var(--muted);margin:4px 0 0}
.design-v9 .text-button{border:0;background:none;padding:3px 0;display:inline-flex;gap:10px;align-items:center;font-size:16px;font-weight:700;color:var(--orange-dark);white-space:nowrap}
.design-v9 .text-button:hover{color:var(--ink)}
.design-v9 .process-section{padding-top:22px;padding-bottom:62px}
.design-v9 .process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:31px;margin-top:37px}
.design-v9 .process-step{border-top:1px solid #cfd4c7;padding-top:22px;position:relative}
.design-v9 .process-step:before{content:"";position:absolute;left:0;top:-4px;width:7px;height:7px;border-radius:50%;background:var(--orange)}
.design-v9 .step-index{font-size:16px;letter-spacing:1.3px;color:var(--orange-dark);display:block;margin-bottom:16px;line-height:1.5}
.design-v9 .step-icon{color:#63715b;background:#e9edde;width:48px;height:48px;border-radius:5px;display:grid;place-items:center;margin-bottom:18px}
.design-v9 .step-icon .icon{width:25px;height:25px}
.design-v9 .process-step h3{font-size:22px;margin:0 0 10px;font-weight:700;line-height:1.6}
.design-v9 .process-step p{font-size:16px;color:var(--muted);line-height:1.85;margin:0}
.design-v9 .file-checklist{margin-top:36px;display:flex;justify-content:space-between;align-items:center;gap:23px;padding:22px 26px;border-radius:4px;background:white;border:1px solid var(--line)}
.design-v9 .file-checklist>div{display:flex;gap:12px;align-items:center}
.design-v9 .file-checklist .icon{color:var(--green)}
.design-v9 .file-checklist strong{font-size:16px;white-space:nowrap}
.design-v9 .file-checklist ul{list-style:none;padding:0;margin:0;display:flex;gap:20px;color:var(--muted);font-size:14px;flex-wrap:wrap}
.design-v9 .file-checklist li:before{content:"✓";margin-right:6px;color:var(--green)}
.design-v9 .contact-section{padding:18px 0 62px}
.design-v9 .contact-panel{background:#e9ede3;border:1px solid #d9decd;border-radius:6px;padding:34px 36px}
.design-v9 .contact-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:28px;margin-bottom:27px}
.design-v9 .contact-heading h2{font-size:32px;letter-spacing:-.8px;margin-top:12px}
.design-v9 .contact-heading p{font-size:15px;line-height:1.9;color:#64715c;margin:0;max-width:280px}
.design-v9 .contact-channels{display:grid;grid-template-columns:1fr 1fr;gap:17px}
.design-v9 .channel{display:flex;gap:17px;align-items:center;border:1px solid #d2d9c7;background:#ffffffd9;border-radius:5px;padding:20px 22px}
.design-v9 .channel-symbol{width:44px;height:44px;border-radius:5px;display:grid;place-items:center;background:#edf1e6;color:#68825b;flex-shrink:0}
.design-v9 .channel-symbol .icon{width:26px;height:26px}
.design-v9 .channel-info{flex:1;min-width:0}
.design-v9 .channel-info small{font-size:14px;color:#69765f;display:block;line-height:1.6}
.design-v9 .channel-info strong{font:650 32px/1.6 "Segoe UI",sans-serif;letter-spacing:.8px;color:var(--ink)}
.design-v9 .copy-small{border:1px solid #c8d0ba;background:transparent;color:#516146;padding:9px 13px;border-radius:3px;font-size:15px;white-space:nowrap;line-height:1.5}
.design-v9 .copy-small:hover{background:#edf1e4}
.design-v9 .contact-extra{display:flex;justify-content:space-between;align-items:center;margin-top:17px;gap:12px;font-size:14px;color:#64715c}
.design-v9 .contact-extra a{display:flex;gap:7px;align-items:center;font-size:15px;color:#425835;font-weight:600}
.design-v9 .contact-extra a:hover{color:var(--orange-dark)}
.design-v9 .contact-extra .icon{height:17px;width:17px}
.design-v9 .contact-dialog{border:1px solid #d6dbc9;max-width:calc(100% - 32px);width:510px;padding:29px;border-radius:6px;background:var(--paper);color:var(--ink);box-shadow:0 24px 100px #0003;font:16px/1.8 var(--font)}
.design-v9 .contact-dialog::backdrop{background:#1c2817a8;backdrop-filter:blur(4px)}
.design-v9 .dialog-top{display:flex;align-items:center;justify-content:space-between;gap:20px}
.design-v9 .dialog-close{border:1px solid #d7dccd;border-radius:50%;background:none;width:36px;height:36px;display:grid;place-items:center;padding:0;color:#68725e}
.design-v9 .dialog-close .icon{width:18px;height:18px}
.design-v9 .contact-dialog h2{font-size:29px;margin:19px 0 12px;line-height:1.45}
.design-v9 .dialog-subtitle{font-size:16px;color:var(--muted);line-height:1.85;margin:0 0 21px}
.design-v9 .contact-dialog .channel{padding:16px;margin-top:13px;gap:13px}
.design-v9 .contact-dialog .channel-symbol{width:37px;height:37px}
.design-v9 .contact-dialog .channel-info strong{font-size:27px}
.design-v9 .contact-dialog .copy-small{font-size:14px;padding:8px 10px}
.design-v9 .dialog-help{font-size:14px;color:var(--muted);margin:15px 0 20px;line-height:1.85}
.design-v9 .dialog-actions{display:flex;gap:11px}
.design-v9 .dialog-actions .btn{flex:1;font-size:15px;padding:12px 15px}
.design-v9 .manual-copy{margin-top:17px;border:1px solid #d0d8c2;border-radius:3px;background:white;padding:12px 15px;font-size:18px;line-height:1.7;overflow-wrap:anywhere;user-select:all}
.design-v9 .toast{position:fixed;bottom:30px;left:50%;transform:translate(-50%,20px);z-index:10010;background:#202620;color:#fff;padding:14px 23px;box-shadow:0 6px 22px #0002;border:1px solid #ffffff18;border-radius:5px;font-size:15px;opacity:0;transition:transform .22s,opacity .22s;pointer-events:none;max-width:calc(100% - 32px);width:max-content;text-align:center;line-height:1.7}
.design-v9 .toast.visible{opacity:1;transform:translate(-50%,0)}
body.rt-mc2-modal-open{overflow:hidden}
@media(max-width:1120px){.design-v9 .container{width:calc(100% - 74px)}.design-v9 .hero-grid{gap:35px;grid-template-columns:1fr 1fr}.design-v9 .hero .hero-headline{font-size:48px}.design-v9 .photo-frame{height:560px}.design-v9 .hero-description{font-size:17px}.design-v9 .service-grid{grid-template-columns:repeat(2,1fr);gap:20px}.design-v9 .service-card{padding:24px}.design-v9 .service-card h3{font-size:23px}.design-v9 .service-description{min-height:58px}.design-v9 .service-diagram{height:115px}.design-v9 .channel-info strong{font-size:27px}.design-v9 .channel{padding:18px 16px;gap:12px}.design-v9 .channel-symbol{width:38px;height:38px}.design-v9 .file-checklist{flex-direction:column;align-items:flex-start;gap:14px}}
@media(max-width:900px){.design-v9 .hero-grid{gap:27px}.design-v9 .hero .hero-headline{font-size:42px;letter-spacing:-1.6px}.design-v9 .hero-services :is(a,button){font-size:14px;padding:6px 8px}.design-v9 .hero-contact .plain-copy .contact-value{font-size:27px}.design-v9 .hero-actions .btn{font-size:15px;padding:12px 18px}.design-v9 .photo-frame{height:535px}.design-v9 .visual-bottom .visual-title{font-size:26px}.design-v9 .visual-bottom .visual-caption{font-size:14px}.design-v9 .promise strong{font-size:15px}.design-v9 .promise span{font-size:13px}.design-v9 .promise{gap:9px}.design-v9 .promise .icon{width:23px;height:23px}.design-v9 .process-grid{gap:23px;grid-template-columns:repeat(2,1fr)}.design-v9 .process-step h3{font-size:22px}.design-v9 .contact-channels{grid-template-columns:1fr}.design-v9 .channel-info strong{font-size:32px}.design-v9 .contact-heading{align-items:flex-start}.design-v9 .contact-heading h2{font-size:29px}.design-v9 .contact-heading p{max-width:200px}.design-v9 .section-title p{max-width:280px}.design-v9 h2{font-size:33px}}
@media(max-width:720px){.design-v9 .container{width:calc(100% - 36px)}.design-v9 .hero{padding:35px 0 27px}.design-v9 .hero-grid{grid-template-columns:1fr;gap:29px}.design-v9 .hero .hero-headline{font-size:48px;margin:14px 0 21px;letter-spacing:-1.8px}.design-v9 .hero-badge{font-size:14px;padding:4px 10px}.design-v9 .hero-description{font-size:17px;max-width:none}.design-v9 .hero-services{gap:8px;margin:20px 0 22px}.design-v9 .hero-services :is(a,button){font-size:14px;padding:6px 9px}.design-v9 .hero-contact{gap:11px}.design-v9 .hero-contact .plain-copy{font-size:16px;gap:17px}.design-v9 .hero-contact .plain-copy .contact-value{font-size:29px}.design-v9 .hero-actions{margin-top:22px;gap:11px}.design-v9 .hero-actions .btn{font-size:16px;padding:13px 21px}.design-v9 .hero-visual:before{left:17px;right:-5px;top:17px;border-radius:6px}.design-v9 .hero-visual{padding-bottom:17px}.design-v9 .photo-frame{height:340px;border-radius:5px}.design-v9 .visual-corner{top:17px;left:17px;font-size:14px;padding:5px 10px}.design-v9 .visual-bottom{left:21px;bottom:27px}.design-v9 .visual-bottom .visual-title{font-size:27px}.design-v9 .visual-bottom .visual-caption{font-size:15px}.design-v9 .visual-foot{font-size:12px;margin-top:15px}.design-v9 .promise-row{grid-template-columns:1fr;gap:15px;margin-top:22px;padding-top:22px}.design-v9 .promise,.design-v9 .promise:nth-child(2),.design-v9 .promise:nth-child(3){justify-content:flex-start;gap:13px}.design-v9 .promise strong{font-size:16px}.design-v9 .promise span{font-size:14px;display:inline;margin-top:0}.design-v9 .promise>div{display:flex;gap:15px;align-items:center;flex-wrap:wrap}.design-v9 .promise .icon{width:23px;height:23px}.design-v9 .section{padding:44px 0}.design-v9 .section-label{font-size:16px;letter-spacing:1px}.design-v9 .section-title{flex-direction:column;align-items:flex-start;gap:12px;margin:12px 0 27px}.design-v9 h2{font-size:29px;letter-spacing:-.8px}.design-v9 .section-title p{font-size:16px;max-width:none}.design-v9 .service-grid{grid-template-columns:1fr;gap:15px}.design-v9 .service-card{padding:22px 24px}.design-v9 .card-top{font-size:15px}.design-v9 .card-num{font-size:22px}.design-v9 .service-diagram{height:90px;margin:9px 0 8px;justify-content:flex-start;gap:22px}.design-v9 .material-ball{width:63px;height:63px}.design-v9 .material-ball span{font-size:17px;bottom:17px}.design-v9 .service-card h3{font-size:23px;letter-spacing:-.4px}.design-v9 .service-subtitle{font-size:15px;margin-bottom:12px}.design-v9 .service-description{font-size:16px;min-height:0}.design-v9 .service-tags{gap:8px;margin:16px 0 20px}.design-v9 .service-tags span{font-size:14px;padding:3px 9px}.design-v9 .service-action{font-size:16px}.design-v9 .custom-service{flex-direction:column;align-items:flex-start;padding:20px 18px;gap:13px}.design-v9 .custom-copy{gap:12px;align-items:flex-start}.design-v9 .custom-copy strong{font-size:17px}.design-v9 .custom-copy p{font-size:15px}.design-v9 .plus-icon{width:34px;height:34px}.design-v9 .text-button{font-size:16px}.design-v9 .custom-service .text-button{margin-left:46px}.design-v9 .process-section{padding-top:13px;padding-bottom:36px}.design-v9 .process-grid{grid-template-columns:1fr 1fr;gap:28px 22px;margin-top:29px}.design-v9 .process-step{padding-top:18px}.design-v9 .step-index{font-size:15px;margin-bottom:14px}.design-v9 .step-icon{width:43px;height:43px;margin-bottom:15px}.design-v9 .process-step h3{font-size:19px;margin-bottom:8px}.design-v9 .process-step p{font-size:15px;line-height:1.9}.design-v9 .file-checklist{margin-top:27px;padding:20px 18px;gap:14px}.design-v9 .file-checklist strong{font-size:16px;white-space:normal}.design-v9 .file-checklist ul{display:grid;grid-template-columns:1fr;gap:8px;font-size:15px}.design-v9 .contact-section{padding:5px 0 37px}.design-v9 .contact-panel{padding:24px 19px;border-radius:5px}.design-v9 .contact-heading{flex-direction:column;gap:12px;margin-bottom:22px}.design-v9 .contact-heading h2{font-size:27px;margin-top:10px}.design-v9 .contact-heading p{font-size:15px;max-width:none}.design-v9 .contact-channels{gap:12px}.design-v9 .channel{padding:17px 15px;gap:12px;flex-wrap:wrap}.design-v9 .channel-symbol{width:34px;height:34px}.design-v9 .channel-symbol .icon{width:23px;height:23px}.design-v9 .channel-info small{font-size:14px}.design-v9 .channel-info strong{font-size:28px;letter-spacing:.5px}.design-v9 .copy-small{font-size:14px;padding:8px 11px}.design-v9 .channel>.copy-small{margin-left:46px}.design-v9 .contact-extra{flex-direction:column;align-items:flex-start;gap:10px;font-size:14px;margin-top:16px}.design-v9 .contact-dialog{padding:23px}.design-v9 .contact-dialog h2{font-size:25px;margin-top:18px}.design-v9 .dialog-subtitle{font-size:15px}.design-v9 .contact-dialog .channel{padding:14px 12px;gap:11px}.design-v9 .contact-dialog .channel-info strong{font-size:27px}.design-v9 .contact-dialog .channel-symbol{width:32px;height:32px}.design-v9 .contact-dialog .channel>.copy-small{margin-left:43px}.design-v9 .dialog-help{font-size:14px}.design-v9 .dialog-actions .btn{font-size:14px;padding:11px 12px}.design-v9 .toast{font-size:14px;bottom:21px;padding:12px 17px}}
@media(max-width:380px){.design-v9 .hero .hero-headline{font-size:43px}.design-v9 .hero-services :is(a,button){font-size:14px;padding:5px 8px}.design-v9 .hero-actions .btn{padding:13px 17px;font-size:15px}.design-v9 .hero-contact .plain-copy{gap:13px}.design-v9 .hero-contact .plain-copy .contact-value{font-size:27px}.design-v9 .photo-frame{height:315px}.design-v9 .promise>div{gap:6px}.design-v9 .service-card{padding:20px}.design-v9 .process-grid{grid-template-columns:1fr}.design-v9 .process-step{display:grid;grid-template-columns:43px 1fr;column-gap:15px}.design-v9 .step-index{grid-column:1/-1}.design-v9 .step-icon{grid-row:2/4}.design-v9 .process-step h3{grid-column:2;font-size:20px}.design-v9 .process-step p{grid-column:2;font-size:16px}.design-v9 .contact-panel{padding:22px 16px}.design-v9 .channel-info strong{font-size:25px}.design-v9 .contact-dialog{padding:21px}.design-v9 .contact-dialog .channel-info strong{font-size:24px}}
@media(prefers-reduced-motion:reduce){.design-v9 *{transition:none!important;scroll-behavior:auto!important}}
@media print{.design-v9 .btn,.design-v9 dialog,.design-v9 .toast{display:none!important}.design-v9 .section{padding:25px 0}.design-v9 .container{width:100%}.design-v9 .hero-grid{grid-template-columns:1fr 1fr}.design-v9 .service-card,.design-v9 .process-step,.design-v9 .channel{break-inside:avoid}}

}
@layer v9 {
body.design-v9 { margin: 0; }
.design-v9 a { touch-action: manipulation; }
.design-v9 button { touch-action: manipulation; }
.design-v9 img { height: auto; object-fit: contain; max-width: 100%; }
.design-v9 ul { list-style: none; padding: 0; margin: 0; }
.design-v9 h3 { margin: 0; }
.design-v9 em { font-style: normal; }
html { scroll-padding-top: 84px; }
.design-v9 .site-header { height: 60px; background: #191919; color: white; position: sticky; top: 0; z-index: 20; }
.design-v9 .header-inner { height: 100%; display: flex; align-items: center; gap: 36px; }
.design-v9 .brand { flex-shrink: 0; }
.design-v9 .brand img { width: auto; height: 50px; }
.design-v9 .main-nav { display: flex; align-items: center; justify-content: center; flex: 1; gap: 3px; }
.design-v9 .main-nav a { padding: 6px 21px; color: white; border-radius: 4px; font-size: 14px; line-height: 1.8; white-space: nowrap; }
.design-v9 .main-nav a:hover, .design-v9 .main-nav .is-current { background: #0057ff; }
.design-v9 .header-contact { padding: 6px 18px; color: white; background: var(--orange); border-radius: 4px; font-size: 14px; white-space: nowrap; }
.design-v9 .header-contact:hover { background: var(--orange-dark); }
.design-v9 .hero-headline > span { display: block; }
.design-v9 .hero-headline em { display: inline-block; }
.design-v9 .hero-description-wrap { display: flex; align-items: baseline; gap: 10px; }
.design-v9 .hero-separator { font-size: 7px; color: var(--orange); flex-shrink: 0; }
.design-v9 .hero-services button { color: inherit; cursor: pointer; line-height: 1.8; }
.design-v9 .hero-contact .plain-copy { cursor: default; }
.design-v9 .hero-contact .plain-copy .contact-value { width: auto; }
.design-v9 .photo-frame { background: #d0cec4 var(--hero-photo) center / cover no-repeat; }
.design-v9 .visual-title { font-weight: 700; }
.design-v9 .promise { border: 0; background: none; padding: 0; text-align: left; }
.design-v9 .promise .discipline-label { display: block; font-size: 16px; font-weight: 700; line-height: 1.6; color: var(--ink); }
.design-v9 .promise small { display: block; font-size: 14px; line-height: 1.7; color: var(--muted); margin-top: 3px; }
.design-v9 .promise:hover .discipline-label { color: var(--orange-dark); }
.design-v9 .services { padding: 64px 0; }
.design-v9 .services .section-title > h2:last-child { font-size: 16px; line-height: 1.85; color: var(--muted); max-width: 350px; letter-spacing: 0; font-weight: 400; }
.design-v9 .services h2 span { color: var(--orange); }
.design-v9 .service-art svg { width: 265px; max-width: 100%; height: 110px; }
.design-v9 .case-art { gap: 10px; }
.design-v9 .case-art .case-thumb { display: block; width: 158px; max-width: 100%; }
.design-v9 .case-art .case-secondary { display: block; width: 65px; flex-shrink: 0; }
.design-v9 .service-card .service-card-title { font-size: 20px; line-height: 1.6; font-weight: 700; letter-spacing: -.6px; margin: 4px 0 5px; }
.design-v9 .service-card .article-list { color: var(--muted); font-size: 16px; line-height: 1.8; margin: 16px 0 24px; }
.design-v9 .service-card .article-list li + li { margin-top: 8px; }
.design-v9 .article-list a { display: block; overflow-wrap: anywhere; }
.design-v9 .article-list a:hover { color: var(--orange-dark); }
.design-v9 .case-footer { margin-top: auto; }
.design-v9 .more { color: var(--orange-dark); font-weight: 600; font-size: 14px; white-space: nowrap; }
.design-v9 .more:hover { color: var(--ink); }
.design-v9 .service-card .service-action { color: var(--ink); width: 100%; }
.design-v9 .service-card .service-action:hover { color: var(--orange); }
.design-v9 .work-section { padding-top: 22px; padding-bottom: 62px; }
.design-v9 .section-header { display: flex; align-items: flex-end; justify-content: space-between; gap: 30px; margin: 16px 0 32px; }
.design-v9 .work-heading { display: block; font-size: 36px; line-height: 1.4; font-weight: 750; letter-spacing: -1px; }
.design-v9 .horizontal-filters { background: #f0f1e8; border: 1px dashed #c5cabb; border-radius: 4px; padding: 23px 25px; margin-bottom: 19px; }
.design-v9 .category-panel { display: grid; grid-template-columns: 92px minmax(0, 1fr); gap: 22px; align-items: start; }
.design-v9 .category-panel > h3 { font-size: 16px; line-height: 1.8; color: #425835; padding-top: 3px; }
.design-v9 .category-group { display: grid; grid-template-columns: 75px minmax(0, 1fr); gap: 14px; }
.design-v9 .category-group + .category-group { padding-top: 8px; margin-top: 8px; border-top: 1px solid #dce2d2; }
.design-v9 .category-group h3 { font-size: 14px; line-height: 1.8; color: #64715c; padding-top: 3px; }
.design-v9 .category-links { display: flex; flex-wrap: wrap; align-items: baseline; line-height: 1.8; }
.design-v9 .category-links a { padding: 3px 6px; font-size: 14px; border-radius: 3px; }
.design-v9 .category-links a:hover { color: var(--orange-dark); background: var(--orange-soft); }
.design-v9 .category-divider { color: #b6c0ad; font-size: 12px; white-space: pre; }
.design-v9 .work-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 17px; }
.design-v9 .work-card { background: white; border: 1px solid var(--line); border-radius: 5px; padding: 24px 21px 21px; min-width: 0; transition: border-color .2s, transform .2s; }
.design-v9 .work-card:hover { border-color: #b4b9aa; transform: translateY(-4px); }
.design-v9 .work-image { display: block; }
.design-v9 .work-caption { margin-top: 17px; }
.design-v9 .work-caption a { display: block; font-size: 20px; line-height: 1.6; font-weight: 700; letter-spacing: -.6px; overflow-wrap: anywhere; }
.design-v9 .work-caption a:hover { color: var(--orange); }
.design-v9 .focus-gallery { padding-top: 22px; padding-bottom: 62px; }
.design-v9 .focus-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 17px; margin-top: 32px; }
.design-v9 .focus-card { display: block; border: 1px solid var(--line); background: white; border-radius: 5px; padding: 10px; }
.design-v9 .focus-card:hover { border-color: #b4b9aa; }
.design-v9 .resources { padding-top: 22px; padding-bottom: 62px; }
.design-v9 .resource-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 17px; margin-top: 32px; }
.design-v9 .resource-panel { background: white; border: 1px solid var(--line); border-radius: 5px; padding: 24px 21px 21px; min-width: 0; }
.design-v9 .resource-panel .section-title { gap: 10px; margin: 4px 0 16px; align-items: center; flex-wrap: wrap; }
.design-v9 .resource-panel .section-title em { order: -1; font-size: 22px; line-height: 1.6; font-weight: 700; letter-spacing: -.6px; }
.design-v9 .resource-panel .section-title .more { font-size: 12px; }
.design-v9 .resource-panel .article-list { color: var(--muted); font-size: 16px; line-height: 1.8; }
.design-v9 .resource-panel .article-list li { border-top: 1px solid #e9ebe2; padding: 13px 0; }
.design-v9 .resource-panel .article-list li:last-child { padding-bottom: 0; }
.design-v9 .contact-panel .contact-heading { justify-content: flex-start; align-items: center; gap: 14px; font-size: 32px; line-height: 1.4; letter-spacing: -.8px; font-weight: 750; }
.design-v9 .contact-heading > .icon { width: 30px; height: 30px; color: var(--green); }
.design-v9 .channel img { width: auto; height: auto; max-width: calc(100% - 61px); }
.design-v9 .contact-panel > p { color: #64715c; margin: 17px 0 0; font-size: 14px; line-height: 1.9; }
.design-v9 .site-footer { background: #191919; color: #b9c0b5; padding: 25px 0; }
.design-v9 .footer-inner { display: flex; align-items: center; gap: 32px; }
.design-v9 .footer-brand { flex-shrink: 0; }
.design-v9 .footer-brand img { width: auto; height: 67px; }
.design-v9 .footer-content { flex: 1; min-width: 0; font-size: 12px; line-height: 1.9; }
.design-v9 .footer-content p { margin: 0; overflow-wrap: anywhere; }
.design-v9 .footer-content a:hover { color: white; }
.design-v9 .back-top { display: grid; place-items: center; width: 40px; height: 40px; flex-shrink: 0; color: white; border: 1px solid #454e41; border-radius: 4px; font-size: 21px; }
.design-v9 .back-top:hover { background: var(--orange); border-color: var(--orange); }

@media (max-width: 1120px) {
  .design-v9 .header-inner { gap: 22px; }
  .design-v9 .main-nav a { padding-inline: 14px; }
  .design-v9 .work-card, .design-v9 .resource-panel { padding: 24px; }
}
@media (max-width: 900px) {
  .design-v9 .main-nav a { font-size: 12px; padding-inline: 11px; }
  .design-v9 .header-contact { font-size: 12px; padding-inline: 12px; }
  .design-v9 .brand img { height: 45px; }
  .design-v9 .work-heading { font-size: 33px; }
  .design-v9 .work-grid, .design-v9 .focus-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .design-v9 .resource-grid { grid-template-columns: 1fr; }
}
@media (max-width: 720px) {
  html { scroll-padding-top: 134px; }
  .design-v9 .site-header { height: auto; }
  .design-v9 .header-inner { display: grid; grid-template-columns: 1fr auto; gap: 0; }
  .design-v9 .brand { padding-block: 6px; }
  .design-v9 .header-contact { grid-column: 2; grid-row: 1; font-size: 13px; padding: 8px 16px; }
  .design-v9 .main-nav { grid-column: 1 / -1; flex-wrap: wrap; justify-content: space-between; gap: 2px; padding-bottom: 7px; }
  .design-v9 .main-nav a { font-size: 12px; padding: 5px 3px; }
  .design-v9 .promise .promise-copy { display: flex; align-items: center; gap: 15px; flex-wrap: wrap; }
  .design-v9 .promise small { margin: 0; font-size: 12px; }
  .design-v9 .services { padding: 44px 0; }
  .design-v9 .services .section-title > h2:last-child { font-size: 16px; max-width: none; }
  .design-v9 .case-art { justify-content: flex-start; }
  .design-v9 .service-card .article-list { margin: 16px 0 20px; }
  .design-v9 .work-section, .design-v9 .focus-gallery, .design-v9 .resources { padding-top: 13px; padding-bottom: 36px; }
  .design-v9 .section-header { gap: 12px; margin: 12px 0 27px; }
  .design-v9 .work-heading { font-size: 29px; letter-spacing: -.8px; }
  .design-v9 .more { font-size: 13px; }
  .design-v9 .horizontal-filters { padding: 20px 18px; }
  .design-v9 .category-panel { grid-template-columns: 1fr; gap: 12px; }
  .design-v9 .category-panel > h3 { padding-bottom: 10px; border-bottom: 1px solid #d5ddcc; }
  .design-v9 .category-group { grid-template-columns: 1fr; gap: 3px; }
  .design-v9 .category-links a { padding: 4px 5px; }
  .design-v9 .work-grid, .design-v9 .focus-grid { grid-template-columns: 1fr; gap: 15px; }
  .design-v9 .work-card { padding: 22px 24px; }
  .design-v9 .work-caption a { font-size: 20px; }
  .design-v9 .resource-panel { padding: 22px 24px; }
  .design-v9 .resource-panel .section-title { flex-direction: row; }
  .design-v9 .contact-panel .contact-heading { flex-direction: row; font-size: 27px; gap: 12px; }
  .design-v9 .channel img { max-width: calc(100% - 46px); }
  .design-v9 .footer-inner { flex-wrap: wrap; gap: 14px 22px; }
  .design-v9 .footer-brand img { height: 60px; }
  .design-v9 .footer-content { flex-basis: calc(100% - 125px); }
  .design-v9 .back-top { margin-left: auto; }
}
@media (max-width: 380px) {
  .design-v9 .work-heading { font-size: 25px; }
  .design-v9 .footer-content { flex-basis: 100%; }
}

}

.design-v11 {
  --surface: #eeefe7;
  --caption: #fffefa;
  --footer: #191919;
}

.design-v11 *,
.design-v11 *::before,
.design-v11 *::after {
  border: 0;
}

.design-v11 a,
.design-v11 button {
  transition: color .18s, background-color .18s, transform .18s;
}

.design-v11 .site-header {
  height: 70px;
}

.design-v11 .header-inner {
  gap: 28px;
}

.design-v11 .brand img {
  width: 108px;
  height: auto;
  filter: brightness(0) invert(1);
}

.design-v11 .main-nav {
  flex: 0 1 auto;
  justify-content: flex-start;
  gap: 4px;
}

.design-v11 .main-nav a {
  padding: 7px 14px;
  color: #d8d8cf;
}

.design-v11 .main-nav .is-current,
.design-v11 .main-nav a:hover {
  background: #ffffff12;
  color: #fffefa;
}

.design-v11 .header-contact {
  margin-left: auto;
  padding: 8px 17px;
  background: #34302a;
  color: #f7b298;
}

.design-v11 .header-contact:hover {
  background: var(--orange);
  color: white;
}

.design-v11 .hero {
  padding: 38px 0 14px;
}

.design-v11 .hero-services {
  margin: 18px 0 20px;
}

.design-v11 .hero-services button {
  background: #ebece2;
  padding: 6px 12px;
}

.design-v11 .hero-actions {
  margin-top: 20px;
}

.design-v11 .btn {
  padding: 13px 22px;
}

.design-v11 .btn-outline {
  background: #e7e9df;
  color: #43543f;
}

.design-v11 .btn-outline:hover {
  background: #dce2d2;
}

.design-v11 .hero-visual {
  padding-bottom: 16px;
}

.design-v11 .visual-foot {
  margin-top: 8px;
}

.design-v11 .promise-row {
  margin-top: 18px;
  padding-top: 14px;
}

.design-v11 .promise small {
  margin-top: 1px;
  font-size: 12px;
  letter-spacing: 1.1px;
}

.design-v11 .services {
  padding: 30px 0 34px;
}

.design-v11 .section-label {
  font-size: 13px;
  font-weight: 500;
  letter-spacing: 1.7px;
}

.design-v11 .services .section-title,
.design-v11 .section-header {
  gap: 24px;
  margin: 8px 0 22px;
}

.design-v11 .service-grid {
  gap: 18px;
}

.design-v11 .service-card {
  padding: 22px 20px 20px;
  background: var(--surface);
  box-shadow: none;
  transition: background-color .18s, transform .18s;
}

.design-v11 .service-card:hover {
  background: #e8ebdf;
  transform: translateY(-2px);
}

.design-v11 .service-card:target {
  box-shadow: none;
}

.design-v11 .card-top {
  font-size: 13px;
  color: #6d7569;
}

.design-v11 .service-diagram {
  height: 96px;
  margin: 7px 0;
}

.design-v11 .service-art svg {
  height: 96px;
}

.design-v11 .service-card .service-card-title {
  margin: 3px 0 4px;
  font-weight: 600;
  letter-spacing: -.3px;
}

.design-v11 .service-card .article-list {
  margin: 12px 0 17px;
  font-size: 14px;
  line-height: 1.9;
  color: #5c6559;
}

.design-v11 .service-card .article-list li + li {
  margin-top: 6px;
}

.design-v11 .service-card .service-action {
  padding: 10px 0 0;
  font-size: 14px;
  font-weight: 500;
  color: #435b43;
  gap: 10px;
}

.design-v11 .action-icon {
  width: 18px;
  height: 18px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.4;
  stroke-linecap: round;
  stroke-linejoin: round;
  flex-shrink: 0;
  transition: transform .18s;
}

.design-v11 .more {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  color: #627258;
  font-size: 14px;
  font-weight: 500;
}

.design-v11 .more-label {
  white-space: nowrap;
}

.design-v11 .more-marks {
  position: absolute;
  width: 0;
  height: 0;
  overflow: hidden;
  font-size: 0;
}

.design-v11 .more:hover,
.design-v11 .service-card .service-action:hover {
  color: var(--orange-dark);
}

.design-v11 .more:hover .action-icon,
.design-v11 .service-action:hover .action-icon {
  transform: translateX(3px);
}

.design-v11 .work-section,
.design-v11 .focus-gallery,
.design-v11 .resources {
  padding-top: 12px;
  padding-bottom: 34px;
}

.design-v11 .horizontal-filters {
  padding: 19px 22px;
  margin-bottom: 18px;
  background: #edf0e7;
  border-radius: 5px;
}

.design-v11 .category-panel {
  grid-template-columns: 102px minmax(0, 1fr);
  gap: 20px;
}

.design-v11 .category-panel > h3 {
  font-size: 15px;
  font-weight: 600;
  color: #43573f;
  padding-top: 4px;
}

.design-v11 .category-group {
  grid-template-columns: 70px minmax(0, 1fr);
  gap: 12px;
}

.design-v11 .category-group + .category-group {
  padding-top: 0;
  margin-top: 10px;
}

.design-v11 .category-group h3 {
  font-size: 13px;
  font-weight: 500;
  color: #717b68;
  padding-top: 5px;
}

.design-v11 .category-links {
  align-items: center;
  gap: 6px;
}

.design-v11 .category-links a {
  padding: 4px 9px;
  background: #ffffff80;
  color: #54614e;
  font-size: 13px;
  line-height: 1.65;
  border-radius: 3px;
}

.design-v11 .category-links a:hover {
  background: #dae2ce;
  color: #34472d;
}

.design-v11 .category-divider {
  position: absolute;
  width: 0;
  height: 0;
  overflow: hidden;
  font-size: 0;
}

.design-v11 .work-grid,
.design-v11 .focus-grid {
  gap: 18px;
}

.design-v11 .work-card {
  padding: 0;
  background: var(--caption);
  overflow: hidden;
  box-shadow: none;
  transition: transform .18s;
}

.design-v11 .work-card:hover {
  transform: translateY(-2px);
}

.design-v11 .work-image {
  display: block;
  width: 100%;
  padding: 0;
}

.design-v11 .work-image img,
.design-v11 .focus-card img {
  width: 100%;
  height: auto;
  object-fit: contain;
}

.design-v11 .work-caption {
  display: flex;
  align-items: flex-start;
  min-height: 106px;
  margin: 0;
  padding: 18px 21px 21px;
}

.design-v11 .work-caption a {
  font-size: 17px;
  font-weight: 500;
  line-height: 1.7;
  letter-spacing: .05px;
  color: #374134;
}

.design-v11 .focus-grid,
.design-v11 .resource-grid {
  margin-top: 20px;
}

.design-v11 .focus-card {
  padding: 0;
  overflow: hidden;
  background: none;
}

.design-v11 .resource-grid {
  gap: 30px;
}

.design-v11 .resource-panel {
  padding: 0;
  background: none;
}

.design-v11 .resource-panel .section-title {
  margin: 2px 0 11px;
}

.design-v11 .resource-panel .section-title .more {
  font-size: 12px;
}

.design-v11 .resource-panel .section-title em {
  font-size: 21px;
  font-weight: 650;
}

.design-v11 .resource-panel .article-list {
  font-size: 14px;
  line-height: 1.85;
  color: #616b5d;
}

.design-v11 .resource-panel .article-list li {
  padding: 7px 0;
}

.design-v11 .contact-section {
  padding: 10px 0 32px;
}

.design-v11 .contact-panel {
  margin-top: 13px;
  padding: 25px 28px;
  background: #e7ece0;
}

.design-v11 .contact-panel .contact-heading {
  margin: 0 0 20px;
  font-size: 28px;
}

.design-v11 .contact-channels {
  gap: 24px;
}

.design-v11 .channel {
  padding: 0;
  gap: 14px;
  background: none;
}

.design-v11 .channel-symbol {
  background: #dbe4cf;
}

.design-v11 .contact-panel > p {
  margin-top: 17px;
}

.design-v11 .site-footer {
  padding: 37px 0 24px;
  background: var(--footer);
  color: #afb2a6;
}

.design-v11 .footer-inner {
  display: block;
}

.design-v11 .footer-main {
  display: grid;
  grid-template-columns: 150px minmax(0, 1fr) minmax(245px, 310px) 40px;
  align-items: center;
  gap: 36px;
}

.design-v11 .footer-brand img {
  width: 135px;
  height: auto;
  filter: brightness(0) invert(1);
}

.design-v11 .footer-main p {
  margin: 0;
}

.design-v11 .footer-location p {
  max-width: 310px;
  font-size: 14px;
  line-height: 1.85;
  color: #bec1b6;
}

.design-v11 .footer-phone,
.design-v11 .footer-wechat {
  display: block;
}

.design-v11 .footer-phone {
  font-size: 23px;
  font-weight: 500;
  line-height: 1.55;
  letter-spacing: .5px;
  color: #f7f7f2;
}

.design-v11 .footer-wechat {
  margin-top: 5px;
  font-size: 14px;
  color: #afb2a6;
}

.design-v11 .back-top {
  width: 40px;
  height: 40px;
  margin: 0;
  background: #2d3029;
  color: #dce1d4;
  font-size: 19px;
}

.design-v11 .footer-bottom {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  gap: 24px;
  margin-top: 24px;
}

.design-v11 .footer-bottom p {
  max-width: 890px;
  margin: 0;
  font-size: 12px;
  line-height: 1.9;
  color: #939b8b;
  overflow-wrap: anywhere;
}

.design-v11 .footer-bottom a:hover {
  color: #f7f7f2;
}

.design-v11 .footer-signature {
  font-size: 10px;
  letter-spacing: 1.5px;
  white-space: nowrap;
  color: #78816f;
}

@media (max-width: 1120px) {
  .design-v11 .header-inner { gap: 20px; }
  .design-v11 .main-nav a { padding-inline: 11px; }
  .design-v11 .footer-main {
    grid-template-columns: 125px minmax(0, 1fr) minmax(220px, 270px) 40px;
    gap: 24px;
  }
  .design-v11 .footer-brand img { width: 120px; }
  .design-v11 .footer-phone { font-size: 20px; }
}

@media (max-width: 900px) {
  .design-v11 .header-inner { gap: 14px; }
  .design-v11 .main-nav a { padding-inline: 9px; }
  .design-v11 .header-contact { padding-inline: 12px; }
  .design-v11 .category-panel { grid-template-columns: 85px minmax(0, 1fr); gap: 14px; }
  .design-v11 .footer-main { grid-template-columns: 130px minmax(0, 1fr) 40px; gap: 20px; }
  .design-v11 .footer-brand { grid-column: 1; grid-row: 1 / 3; }
  .design-v11 .footer-location { grid-column: 2; grid-row: 1; }
  .design-v11 .footer-reach { grid-column: 2; grid-row: 2; }
  .design-v11 .back-top { grid-column: 3; grid-row: 1 / 3; }
}

@media (max-width: 720px) {
  html { scroll-padding-top: 128px; }
  .design-v11 .site-header { height: auto; }
  .design-v11 .header-inner { gap: 0; }
  .design-v11 .brand { padding: 0; }
  .design-v11 .brand img { width: 96px; }
  .design-v11 .header-contact { padding: 8px 15px; }
  .design-v11 .main-nav { justify-content: flex-start; gap: 3px 6px; padding-bottom: 8px; }
  .design-v11 .main-nav a { padding: 5px 7px; }
  .design-v11 .hero { padding: 25px 0 11px; }
  .design-v11 .hero-grid { gap: 24px; }
  .design-v11 .hero-visual { padding-bottom: 13px; }
  .design-v11 .promise-row { margin-top: 13px; padding-top: 10px; gap: 12px; }
  .design-v11 .promise small { margin-top: 0; }
  .design-v11 .services { padding: 24px 0 27px; }
  .design-v11 .services .section-title,
  .design-v11 .section-header { margin: 7px 0 18px; gap: 12px; }
  .design-v11 .service-card { padding: 20px; }
  .design-v11 .service-diagram { height: 90px; }
  .design-v11 .service-card .article-list { font-size: 15px; }
  .design-v11 .work-section,
  .design-v11 .focus-gallery,
  .design-v11 .resources { padding-top: 9px; padding-bottom: 27px; }
  .design-v11 .horizontal-filters { padding: 17px; margin-bottom: 15px; }
  .design-v11 .category-panel { grid-template-columns: 1fr; gap: 10px; }
  .design-v11 .category-panel > h3 { padding: 0; }
  .design-v11 .category-group { grid-template-columns: 1fr; gap: 6px; }
  .design-v11 .category-group h3 { padding-top: 0; }
  .design-v11 .category-links { gap: 5px; }
  .design-v11 .category-links a { padding: 5px 8px; }
  .design-v11 .work-caption { padding: 17px 19px 20px; min-height: 100px; }
  .design-v11 .work-caption a { font-size: 17px; }
  .design-v11 .focus-grid,
  .design-v11 .resource-grid { margin-top: 17px; }
  .design-v11 .resource-grid { gap: 23px; }
  .design-v11 .resource-panel .article-list { font-size: 15px; }
  .design-v11 .contact-section { padding: 7px 0 25px; }
  .design-v11 .contact-panel { padding: 22px 20px; }
  .design-v11 .contact-panel .contact-heading { font-size: 26px; margin-bottom: 18px; }
  .design-v11 .contact-channels { gap: 17px; }
  .design-v11 .site-footer { padding: 27px 0 21px; }
  .design-v11 .footer-main { grid-template-columns: minmax(0, 1fr) 40px; gap: 17px; }
  .design-v11 .footer-brand { grid-column: 1; grid-row: 1; }
  .design-v11 .footer-brand img { width: 125px; }
  .design-v11 .footer-location { grid-column: 1 / -1; grid-row: 2; }
  .design-v11 .footer-location p { max-width: none; }
  .design-v11 .footer-reach { grid-column: 1 / -1; grid-row: 3; }
  .design-v11 .footer-phone { font-size: 23px; }
  .design-v11 .back-top { grid-column: 2; grid-row: 1; }
  .design-v11 .footer-bottom { display: block; margin-top: 22px; }
  .design-v11 .footer-signature { display: block; margin-top: 12px; }
}

@media (prefers-reduced-motion: reduce) {
  .design-v11 a,
  .design-v11 button,
  .design-v11 .action-icon,
  .design-v11 .service-card,
  .design-v11 .work-card { transition: none; }
}


.design-v12 {
  --caption-font: "Microsoft YaHei Light", "DengXian Light", "PingFang SC", "Microsoft YaHei", "Noto Sans CJK SC", sans-serif;
}

.design-v12 .brand {
  display: flex;
  align-items: center;
  height: 70px;
  line-height: 0;
}

.design-v12 .brand img {
  width: 108px;
  height: auto;
  transform: translateY(4px);
}

.design-v12 .hero {
  padding: 32px 0 18px;
}

.design-v12 .hero-contact {
  margin-top: 19px;
  gap: 10px;
}

.design-v12 .hero-visual {
  margin: 0;
  padding-bottom: 10px;
}

.design-v12 .hero-visual::before {
  left: 14px;
  right: -10px;
  top: 16px;
  bottom: 0;
  background: #e6e8dc;
}

.design-v12 .photo-frame {
  height: auto;
  background: #e5ddd1;
}

.design-v12 .photo-frame::after {
  content: none;
}

.design-v12 .photo-frame .hero-photo {
  display: block;
  width: 100%;
  height: auto;
  object-fit: contain;
}

.design-v12 .visual-corner {
  top: 18px;
  left: 18px;
  background: #f7f7f2e8;
  color: #354333;
  font-size: 11px;
  letter-spacing: 1px;
  padding: 6px 9px;
}

.design-v12 .visual-corner .icon {
  width: 15px;
  height: 15px;
}

.design-v12 .services {
  padding: 0 0 32px;
}

.design-v12 .service-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
}

.design-v12 .service-card {
  min-width: 0;
  padding: 20px 21px;
}

.design-v12 .card-top {
  justify-content: flex-end;
  min-height: 30px;
}

.design-v12 .card-num {
  font-size: 25px;
  line-height: 1.2;
  color: #8b967e;
}

.design-v12 .service-diagram {
  height: 94px;
  margin: 5px 0 11px;
}

.design-v12 .service-art svg {
  height: 94px;
}

.design-v12 .service-card .service-card-title {
  font-size: 20px;
  font-weight: 600;
  line-height: 1.6;
  letter-spacing: -.3px;
  margin: 0 0 4px;
}

.design-v12 .service-card h2 span {
  color: inherit;
}

.design-v12 .service-card .article-list {
  margin: 11px 0 18px;
}

.design-v12 .action-icon {
  stroke-width: 1.35;
}

.design-v12 .more {
  gap: 10px;
  font-weight: 400;
}

.design-v12 .more .action-icon {
  width: 30px;
  height: 30px;
  padding: 5px;
  border-radius: 50%;
  background: #e4e8dc;
}

.design-v12 .more:hover .action-icon {
  background: #d9e2ce;
  transform: translate(1px, -1px);
}

.design-v12 .work-caption {
  min-height: 104px;
  padding: 17px 20px 20px;
}

.design-v12 .work-caption a {
  font-family: var(--caption-font);
  font-size: 16px;
  font-weight: 300;
  font-synthesis: none;
  line-height: 1.8;
  letter-spacing: .25px;
  color: #41463f;
}

.design-v12 .resources {
  margin-top: 5px;
  padding: 30px 0 35px;
  background: #e7ece0;
}

.design-v12 .resources .section-label {
  color: #708069;
}

.design-v12 .resource-grid {
  gap: 38px;
  margin-top: 18px;
}

.design-v12 .resource-panel .section-title {
  margin: 0 0 12px;
  gap: 12px;
  justify-content: space-between;
}

.design-v12 .resource-panel .section-title em {
  color: #32462e;
}

.design-v12 .resource-panel .article-list {
  color: #53644c;
}

.design-v12 .resource-panel .more .action-icon {
  width: 26px;
  height: 26px;
  padding: 4px;
  background: #d9e2ce;
}

.design-v12 .site-footer {
  padding: 37px 0 32px;
  scroll-margin-top: 84px;
}

.design-v12 .footer-main {
  position: relative;
  display: grid;
  grid-template-columns: 1.15fr 1fr;
  align-items: start;
  gap: 64px;
  padding-right: 64px;
}

.design-v12 .footer-identity,
.design-v12 .footer-contact-details {
  min-width: 0;
}

.design-v12 .footer-brand {
  position: relative;
  display: block;
  width: 124px;
  height: 49px;
  overflow: hidden;
}

.design-v12 .footer-brand img {
  position: absolute;
  width: 140px;
  max-width: none;
  height: auto;
  top: -13.45px;
  left: -7.13px;
}

.design-v12 .footer-company-copy {
  padding-top: 17px;
  overflow-wrap: anywhere;
}

.design-v12 .footer-company {
  display: block;
  font-size: 15px;
  line-height: 1.85;
  font-weight: 400;
  color: #e3e5dd;
}

.design-v12 .footer-copyright {
  display: block;
  margin-top: 12px;
  font-size: 11px;
  line-height: 1.9;
  color: #999e92;
}

.design-v12 .footer-copyright a:hover {
  color: #f7f7f2;
}

.design-v12 .footer-contact-details {
  padding-top: 1px;
}

.design-v12 .footer-reach p {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 8px 22px;
}

.design-v12 .footer-phone {
  font-size: 26px;
  font-weight: 400;
  line-height: 1.6;
  letter-spacing: .5px;
  white-space: nowrap;
}

.design-v12 .footer-wechat {
  margin: 0;
  font-size: 14px;
  white-space: nowrap;
}

.design-v12 .footer-location {
  margin-top: 14px;
}

.design-v12 .footer-location p {
  max-width: none;
  font-size: 13px;
  line-height: 1.9;
  color: #b2b7aa;
}

.design-v12 .back-top {
  position: absolute;
  top: 0;
  right: 0;
  width: 36px;
  height: 36px;
  color: #c6ccbd;
  background: #2b3028;
}

@media (max-width: 1120px) {
  .design-v12 .service-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .design-v12 .service-card { padding: 21px 23px; }
  .design-v12 .footer-main { grid-template-columns: 1.1fr 1fr; gap: 35px; padding-right: 54px; }
  .design-v12 .footer-phone { font-size: 24px; }
}

@media (max-width: 900px) {
  .design-v12 .hero-grid { gap: 25px; }
  .design-v12 .visual-corner { top: 12px; left: 12px; }
  .design-v12 .resource-grid { grid-template-columns: 1fr; gap: 25px; }
  .design-v12 .footer-main { grid-template-columns: 1fr 1fr; gap: 28px; }
  .design-v12 .footer-phone { font-size: 21px; }
}

@media (max-width: 720px) {
  .design-v12 .brand { height: 64px; }
  .design-v12 .brand img { width: 96px; transform: translateY(3.556px); }
  .design-v12 .hero { padding: 24px 0 18px; }
  .design-v12 .hero-grid { gap: 23px; }
  .design-v12 .hero-visual::before { left: 10px; right: -5px; top: 12px; }
  .design-v12 .services { padding: 0 0 26px; }
  .design-v12 .service-grid { grid-template-columns: 1fr; gap: 13px; }
  .design-v12 .service-card { padding: 21px; }
  .design-v12 .service-card .service-card-title { font-size: 20px; }
  .design-v12 .work-caption { min-height: 100px; padding: 16px 19px 19px; }
  .design-v12 .work-caption a { font-size: 16px; }
  .design-v12 .resources { padding: 25px 0 30px; }
  .design-v12 .resource-grid { margin-top: 17px; }
  .design-v12 .site-footer { padding: 28px 0; scroll-margin-top: 130px; }
  .design-v12 .footer-main { grid-template-columns: 1fr; padding: 0; gap: 25px; }
  .design-v12 .footer-identity { padding-right: 45px; }
  .design-v12 .footer-company-copy { padding-top: 15px; }
  .design-v12 .footer-copyright { margin-top: 10px; font-size: 12px; }
  .design-v12 .footer-contact-details { padding: 0; }
  .design-v12 .footer-phone { font-size: 25px; }
  .design-v12 .footer-location { margin-top: 10px; }
}

@media (prefers-reduced-motion: reduce) {
  .design-v12 .more:hover .action-icon { transform: none; }
}


/* A single collection mark replaces both the arrow and the text badge. */
.design-v14 .more,
.design-v14 .service-card .more,
.design-v14 .resource-panel .section-title .more {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 32px;
  width: 32px;
  height: 32px;
  min-width: 32px;
  min-height: 32px;
  gap: 0;
  margin: 0;
  padding: 0;
  border-radius: 5px;
  background: #e4e9dd;
  color: #51705a;
  line-height: 1;
  box-shadow: none;
  transform: none;
  vertical-align: middle;
  transition: background-color .18s, color .18s;
}

.design-v14 .resource-panel .section-title .more {
  background: #d9e3d0;
}

.design-v14 .more .more-label,
.design-v14 .more .more-marks {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
  border: 0;
}

.design-v14 .more .collection-icon {
  display: block;
  flex: none;
  width: 17px;
  height: 17px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.45;
}

.design-v14 .more .collection-accent {
  fill: #d67750;
  stroke: none;
}

.design-v14 .more:hover,
.design-v14 .service-card .more:hover,
.design-v14 .resource-panel .section-title .more:hover {
  background: #d2ddc9;
  color: #344f3c;
  transform: none;
}

.design-v14 .more:focus-visible {
  outline: 2px solid var(--green);
  outline-offset: 4px;
}

@media (prefers-reduced-motion: reduce) {
  .design-v14 .more { transition: none; }
}


/* One continuous frame, with unequal panels, gives the mark a firmer rhythm. */
.design-v15 .more,
.design-v15 .service-card .more,
.design-v15 .resource-panel .section-title .more {
  height: 30px;
  min-height: 30px;
  border-radius: 3px;
  color: #4b6550;
}

.design-v15 .more .collection-icon {
  width: 18px;
  height: 18px;
  stroke-width: 1.35;
  stroke-linecap: butt;
  stroke-linejoin: miter;
}

/* Keep the small direction mark beside the label, as part of one control. */
.design-v15 .service-card button.service-action {
  justify-content: flex-start;
  gap: 9px;
}

.design-v15 .service-card button.service-action .action-icon {
  width: 18px;
  height: 12px;
  stroke-width: 1.15;
  stroke-linecap: round;
  stroke-linejoin: round;
  transform: none;
}

.design-v15 .service-card button.service-action:hover .action-icon {
  transform: none;
}


/* Four solid tiles read as one compact collection mark. */
.design-v16 .more,
.design-v16 .service-card .more,
.design-v16 .resource-panel .section-title .more {
  width: 32px;
  height: 32px;
  min-width: 32px;
  min-height: 32px;
  border-radius: 3px;
}

.design-v16 .more .collection-icon {
  width: 20px;
  height: 20px;
  fill: currentColor;
  stroke: none;
}

.design-v16 .more .collection-accent {
  fill: #c87550;
  stroke: none;
}


/* Softer gray green keeps the solid mark quiet beside the section titles. */
.design-v17 .more,
.design-v17 .service-card .more,
.design-v17 .resource-panel .section-title .more {
  background: #eef0e8;
  color: #939d8b;
}

.design-v17 .resource-panel .section-title .more {
  background: #e6ebdf;
}

.design-v17 .more:hover,
.design-v17 .service-card .more:hover,
.design-v17 .resource-panel .section-title .more:hover {
  background: #e7ebdf;
  color: #85917c;
}

.design-v17 .resource-panel .section-title .more:hover {
  background: #dfe6d7;
}

/* Product detail: the shared V17 styles above remain the visual baseline. */
html { scroll-behavior: smooth; }
.product-detail-v1 .detail-breadcrumb {
  display: flex;
  align-items: baseline;
  flex-wrap: wrap;
  gap: 8px 12px;
  margin-top: 24px;
  color: #858b7e;
  font-size: 12px;
  line-height: 1.8;
}
.product-detail-v1 .detail-breadcrumb a:hover { color: var(--orange-dark); }
.product-detail-v1 .detail-breadcrumb .breadcrumb-divider { color: #c0c5b8; }
.product-detail-v1 .detail-breadcrumb [aria-current] { color: #555f50; }
.product-detail-v1 .project-section { padding: 23px 0 45px; }
.product-detail-v1 .project-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.95fr) minmax(295px, .9fr);
  align-items: center;
  gap: 46px;
}
.product-detail-v1 .project-art { min-width: 0; margin: 0; }
.product-detail-v1 .project-image {
  display: block;
  overflow: hidden;
  border-radius: 5px;
  background: #e8dfd2;
}
.product-detail-v1 .project-image img {
  display: block;
  width: 100%;
  height: auto;
  object-fit: contain;
}
.product-detail-v1 .project-image:focus-visible { outline-offset: 6px; }
.product-detail-v1 .project-art figcaption {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  margin-top: 13px;
  color: #7c8275;
  font-size: 12px;
  line-height: 1.6;
}
.product-detail-v1 .image-original {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  white-space: nowrap;
}
.product-detail-v1 .image-original:hover { color: var(--orange-dark); }
.product-detail-v1 .detail-arrow {
  display: block;
  width: 18px;
  height: 12px;
  flex-shrink: 0;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.15;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.product-detail-v1 .project-copy { min-width: 0; padding-bottom: 31px; }
.product-detail-v1 .project-kicker {
  margin: 0 0 14px;
  color: #8e977f;
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 1.7px;
}
.product-detail-v1 .project-heading {
  margin: 0;
  font-size: clamp(30px, 2.65vw, 38px);
  font-weight: 650;
  line-height: 1.5;
  letter-spacing: -.85px;
  overflow-wrap: anywhere;
  text-wrap: pretty;
}
.product-detail-v1 .project-heading em { color: var(--orange); }
.product-detail-v1 .project-summary {
  margin: 23px 0 0;
  padding: 21px 22px 23px;
  border-radius: 4px;
  background: var(--surface);
}
.product-detail-v1 .project-summary h2 {
  margin: 0 0 8px;
  color: #7b856f;
  font-size: 12px;
  font-weight: 400;
  line-height: 1.7;
  letter-spacing: 1px;
}
.product-detail-v1 .project-summary p {
  margin: 0;
  color: #515b4a;
  font-size: 15px;
  font-weight: 400;
  line-height: 1.95;
  letter-spacing: .25px;
}
.product-detail-v1 .project-actions {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 15px 20px;
  margin-top: 24px;
}
.product-detail-v1 .project-actions .btn {
  padding: 12px 21px;
  font-size: 14px;
  font-weight: 500;
  box-shadow: none;
  transform: none;
}
.product-detail-v1 .project-actions .browse-works {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  color: #6d7a5f;
  font-size: 13px;
  white-space: nowrap;
}
.product-detail-v1 .project-actions .browse-works:hover { color: var(--orange-dark); }
.product-detail-v1 .related-section { padding-top: 0; padding-bottom: 44px; }
.product-detail-v1 .related-section .section-label { color: #9b806c; }
.product-detail-v1 .related-section .section-header { margin: 8px 0 22px; }
.product-detail-v1 .related-section h2 { font-size: 34px; font-weight: 700; }
.product-detail-v1 .related-section .work-grid { gap: 26px 18px; }
.product-detail-v1 .related-section .work-caption { min-height: 0; padding-bottom: 19px; }
.product-detail-v1 .related-section .work-image img { aspect-ratio: auto; }
.product-detail-v1 .detail-directory { padding: 33px 0 39px; background: #e7ece0; }
.product-detail-v1 .directory-heading {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 14px 35px;
  margin-bottom: 23px;
}
.product-detail-v1 .directory-heading h2 {
  font-size: 28px;
  font-weight: 650;
  color: #32462e;
}
.product-detail-v1 .directory-heading .section-label { margin-bottom: 6px; color: #7b8a70; }
.product-detail-v1 .directory-block + .directory-block { margin-top: 25px; }
.product-detail-v1 .detail-directory .category-panel { align-items: start; }
.product-detail-v1 .detail-directory .category-panel > h3 { color: #46583d; }
.product-detail-v1 .detail-directory .category-links a { background: #f6f7f0aa; }
.product-detail-v1 .detail-directory .category-links a:hover { background: #d9e1ce; }
.product-detail-v1 .detail-services {
  display: grid;
  grid-template-columns: 102px minmax(0, 1fr);
  align-items: baseline;
  gap: 20px;
  margin-top: 28px;
}
.product-detail-v1 .detail-services h2 {
  font-size: 14px;
  line-height: 1.9;
  font-weight: 500;
  color: #43573f;
  letter-spacing: 0;
}
.product-detail-v1 .detail-services ul { display: flex; gap: 8px 26px; flex-wrap: wrap; }
.product-detail-v1 .detail-services li { font-size: 13px; line-height: 1.9; color: #647358; }
.product-detail-v1 .detail-services a:hover { color: var(--orange-dark); }
.product-detail-v1 .detail-principle {
  margin: 26px 0 0;
  padding-left: 122px;
  color: #87917d;
  font-size: 12px;
  line-height: 1.95;
}
.product-detail-v1 .detail-principle .f10 { padding: 0 7px; font-size: 6px; vertical-align: 2px; }
.product-detail-v1 .image-view {
  display: none;
  position: fixed;
  inset: 0;
  z-index: 100;
  place-items: center;
  padding: 64px 30px 30px;
  background: #191919f5;
}
.product-detail-v1 .image-view:target { display: grid; }
.product-detail-v1 .image-view-backdrop { position: absolute; inset: 0; }
.product-detail-v1 .image-view img {
  position: relative;
  z-index: 1;
  width: auto;
  height: auto;
  max-width: 100%;
  max-height: calc(100dvh - 100px);
  object-fit: contain;
  pointer-events: none;
}
.product-detail-v1 .image-view-close {
  position: absolute;
  z-index: 2;
  right: 25px;
  top: 20px;
  padding: 6px 14px;
  border-radius: 3px;
  background: #35392f;
  color: #e2e6d9;
  font-size: 13px;
}
.product-detail-v1 .image-view-close:hover { background: #4a5041; }
@media (min-width: 1440px) {
  .product-detail-v1 .project-layout { gap: 50px; }
}
@media (max-width: 1120px) {
  .product-detail-v1 .project-layout { grid-template-columns: minmax(0, 1.65fr) minmax(285px, 1fr); gap: 30px; }
  .product-detail-v1 .project-heading { font-size: 30px; line-height: 1.55; }
  .product-detail-v1 .project-summary { margin-top: 18px; padding: 18px; }
  .product-detail-v1 .project-summary p { font-size: 14px; }
  .product-detail-v1 .project-actions { margin-top: 19px; gap: 13px; }
}
@media (max-width: 900px) {
  .product-detail-v1 .project-layout { grid-template-columns: minmax(0, 1fr); gap: 24px; }
  .product-detail-v1 .project-copy { display: grid; grid-template-columns: 1fr 1fr; gap: 0 30px; padding-bottom: 0; }
  .product-detail-v1 .project-kicker { grid-column: 1; margin-bottom: 9px; }
  .product-detail-v1 .project-heading { grid-column: 1; grid-row: 2 / 4; }
  .product-detail-v1 .project-summary { grid-column: 2; grid-row: 1 / 3; margin: 0; }
  .product-detail-v1 .project-actions { grid-column: 2; }
  .product-detail-v1 .project-section { padding-bottom: 36px; }
  .product-detail-v1 .related-section .work-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .product-detail-v1 .detail-services { grid-template-columns: 85px minmax(0, 1fr); gap: 14px; }
  .product-detail-v1 .detail-principle { padding-left: 99px; }
}
@media (max-width: 720px) {
  .product-detail-v1 .detail-breadcrumb { gap: 7px 9px; margin-top: 19px; font-size: 11px; }
  .product-detail-v1 .project-section { padding: 16px 0 30px; }
  .product-detail-v1 .project-layout { gap: 23px; }
  .product-detail-v1 .project-copy { display: block; }
  .product-detail-v1 .project-kicker { margin-bottom: 10px; font-size: 11px; }
  .product-detail-v1 .project-heading { font-size: 29px; line-height: 1.6; letter-spacing: -.5px; }
  .product-detail-v1 .project-summary { margin-top: 18px; padding: 19px 20px; }
  .product-detail-v1 .project-summary p { font-size: 15px; }
  .product-detail-v1 .project-actions { margin-top: 19px; gap: 20px; }
  .product-detail-v1 .related-section { padding-bottom: 30px; }
  .product-detail-v1 .related-section h2 { font-size: 28px; }
  .product-detail-v1 .related-section .work-grid { gap: 18px 14px; }
  .product-detail-v1 .related-section .work-caption { padding: 12px 14px 16px; }
  .product-detail-v1 .related-section .work-caption a { font-size: 14px; line-height: 1.85; letter-spacing: 0; }
  .product-detail-v1 .detail-directory { padding: 27px 0 31px; }
  .product-detail-v1 .directory-heading { margin-bottom: 20px; }
  .product-detail-v1 .directory-heading h2 { font-size: 26px; }
  .product-detail-v1 .directory-block + .directory-block { margin-top: 23px; }
  .product-detail-v1 .detail-services { grid-template-columns: 1fr; gap: 10px; margin-top: 24px; }
  .product-detail-v1 .detail-services h2 { font-size: 15px; }
  .product-detail-v1 .detail-services ul { gap: 8px 20px; }
  .product-detail-v1 .detail-principle { margin-top: 23px; padding-left: 0; }
}
@media (max-width: 430px) {
  .product-detail-v1 .related-section .work-grid { grid-template-columns: 1fr; gap: 17px; }
  .product-detail-v1 .related-section .work-caption { padding: 15px 18px 18px; }
  .product-detail-v1 .related-section .work-caption a { font-size: 16px; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .product-detail-v1 a { transition: none; }
}


/* Inner-page masthead: a quiet original promise above the navigation. */
.product-detail-v3 .detail-topline {
  padding: 7px 0;
  background: #eeefe7;
  color: #727b68;
}
.product-detail-v3 .detail-topline p {
  margin: 0;
  font-size: 12px;
  font-weight: 400;
  line-height: 1.85;
  letter-spacing: .1px;
}
.product-detail-v3 .detail-topline .f10 {
  display: inline-block;
  margin: 0 9px;
  color: #a6ae9c;
  font-size: 5px;
  vertical-align: 2px;
}
.product-detail-v3 .detail-topline .red {
  color: #5b6754;
  font-weight: 400;
}
.product-detail-v3 .detail-header { position: sticky; top: 0; }
.product-detail-v3 .project-layout { align-items: start; }
.product-detail-v3 .project-copy { padding-top: 2px; padding-bottom: 0; }
.product-detail-v3 .project-services {
  margin-top: 24px;
  padding-top: 17px;
  border-top: 1px solid #dce1d3;
}
.product-detail-v3 .project-service-heading {
  margin: 0;
  color: #4f6044;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.8;
  letter-spacing: 0;
}
.product-detail-v3 .project-service-heading a {
  display: inline-flex;
  align-items: center;
  gap: 12px;
}
.product-detail-v3 .project-service-heading .detail-arrow {
  color: #a6ad9a;
  width: 16px;
}
.product-detail-v3 .project-service-links {
  display: grid;
  gap: 3px;
  margin: 7px 0 0;
  padding: 0;
  list-style: none;
}
.product-detail-v3 .project-service-links li {
  color: #7b846f;
  font-size: 13px;
  font-weight: 400;
  line-height: 1.85;
}
.product-detail-v3 .project-service-links a {
  display: inline-block;
  padding: 1px 0;
}
.product-detail-v3 .project-services a {
  text-underline-offset: 4px;
  transition: color .18s ease;
}
.product-detail-v3 .project-services a:hover {
  color: #b95a33;
  text-decoration: underline;
}
@media (max-width: 900px) {
  .product-detail-v3 .project-services {
    display: grid;
    grid-template-columns: 175px minmax(0, 1fr);
    grid-column: 1 / -1;
    grid-row: 4;
    align-items: baseline;
    gap: 7px 22px;
    margin-top: 22px;
    padding-top: 16px;
  }
  .product-detail-v3 .project-service-links {
    display: flex;
    flex-wrap: wrap;
    gap: 4px 18px;
    margin: 0;
  }
}
@media (max-width: 720px) {
  .product-detail-v3 .detail-topline { padding: 7px 0; }
  .product-detail-v3 .detail-topline p { font-size: 11px; line-height: 1.85; }
  .product-detail-v3 .detail-topline .f10 { margin-inline: 5px; }
  .product-detail-v3 .project-copy { padding-top: 0; }
  .product-detail-v3 .project-services { display: block; margin-top: 23px; padding-top: 17px; }
  .product-detail-v3 .project-service-heading { font-size: 16px; }
  .product-detail-v3 .project-service-links { display: grid; gap: 4px; margin-top: 7px; }
  .product-detail-v3 .project-service-links li { font-size: 13px; }
}
@media (prefers-reduced-motion: reduce) {
  .product-detail-v3 .project-services a { transition: none; }
}



/* V4: the image determines the desktop row height; services end at its bottom. */
.product-detail-v4 .project-section { padding: 20px 0 22px; }
.product-detail-v4 .project-layout { align-items: stretch; }
.product-detail-v4 .project-art { align-self: start; }
.product-detail-v4 .project-copy {
  position: relative;
  display: block;
  min-height: 0;
  padding: 0;
}
.product-detail-v4 .project-copy-inner {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  min-width: 0;
}
.product-detail-v4 .project-copy-inner > * { flex: 0 0 auto; }
.product-detail-v4 .project-kicker {
  margin: 0 0 8px;
  font-size: 11px;
  line-height: 1.6;
}
.product-detail-v4 .project-heading {
  font-size: clamp(24px, 2.15vw, 28px);
  font-weight: 600;
  line-height: 1.4;
  letter-spacing: -.4px;
}
.product-detail-v4 .project-summary {
  margin-top: 14px;
  padding: 14px 16px;
}
.product-detail-v4 .project-summary h2 {
  margin-bottom: 5px;
  font-size: 12px;
  line-height: 1.55;
}
.product-detail-v4 .project-summary p {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 4;
  line-clamp: 4;
  max-height: 7em;
  overflow: hidden;
  font-size: 14px;
  line-height: 1.75;
  letter-spacing: 0;
}
.product-detail-v4 .project-actions { margin-top: 16px; gap: 13px 18px; }
.product-detail-v4 .project-actions .btn { padding: 9px 19px; }
.product-detail-v4 .project-services {
  margin-top: auto;
  padding-top: 16px;
}
.product-detail-v4 .project-service-heading { font-size: 15px; line-height: 1.7; }
.product-detail-v4 .project-service-links { margin-top: 6px; gap: 2px; }
.product-detail-v4 .project-service-links li { line-height: 1.65; }
.product-detail-v4 .project-service-links a { padding: 0; }
.product-detail-v4 .related-section .section-header { margin-top: 6px; margin-bottom: 18px; }
.product-detail-v4 .footer-reach p { display: block; }
.product-detail-v4 .footer-reach .footer-wechat-line { margin-top: 12px; }
.product-detail-v4 .footer-copyright { margin-top: 6px; }
/* A stacked layout avoids squeezing a fixed-height sidebar on smaller screens. */
@media (max-width: 1180px) {
  .product-detail-v4 .project-layout { grid-template-columns: minmax(0, 1fr); gap: 22px; }
  .product-detail-v4 .project-copy-inner {
    position: static;
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 0 30px;
  }
  .product-detail-v4 .project-kicker { grid-column: 1; grid-row: 1; }
  .product-detail-v4 .project-heading { grid-column: 1; grid-row: 2 / 4; font-size: 27px; }
  .product-detail-v4 .project-summary { grid-column: 2; grid-row: 1 / 3; margin-top: 0; }
  .product-detail-v4 .project-actions { grid-column: 2; grid-row: 3; }
  .product-detail-v4 .project-services {
    display: grid;
    grid-template-columns: 175px minmax(0, 1fr);
    grid-column: 1 / -1;
    grid-row: 4;
    align-items: baseline;
    gap: 7px 22px;
    margin-top: 20px;
    padding-top: 14px;
  }
  .product-detail-v4 .project-service-links { display: flex; flex-wrap: wrap; gap: 4px 18px; margin: 0; }
}
@media (max-width: 720px) {
  .product-detail-v4 .project-section { padding: 16px 0 20px; }
  .product-detail-v4 .project-layout { gap: 20px; }
  .product-detail-v4 .project-copy-inner { display: block; }
  .product-detail-v4 .project-heading { font-size: 25px; line-height: 1.5; }
  .product-detail-v4 .project-summary { margin-top: 15px; padding: 15px 17px; }
  .product-detail-v4 .project-summary p { font-size: 14px; }
  .product-detail-v4 .project-actions { margin-top: 17px; }
  .product-detail-v4 .project-services { display: block; margin-top: 20px; padding-top: 15px; }
  .product-detail-v4 .project-service-links { display: grid; gap: 3px; margin-top: 6px; }
  .product-detail-v4 .related-section .section-header { margin-bottom: 17px; }
  .product-detail-v4 .footer-copyright { margin-top: 6px; }
}


/* V4 supplies the brand, header, footer and category directory unchanged. */
.inner-suite{margin:0}
.inner-suite main{min-height:45vh}
.inner-suite .page-intro{display:grid;grid-template-columns:minmax(0,1fr) 305px;gap:60px;align-items:start;padding:28px 0 30px;border-bottom:1px solid #dce0d4;margin-bottom:28px}
.inner-suite .page-kicker{margin:0 0 12px;color:#929b85;font-size:12px;letter-spacing:1.8px;font-weight:500}
.inner-suite .page-title{margin:0;font-size:clamp(32px,3.2vw,44px);line-height:1.4;letter-spacing:-1.1px;font-weight:650;text-wrap:pretty}
.inner-suite .page-title em{font-style:normal;color:var(--orange)}
.inner-suite .page-note{color:#7b8272;font-size:13px;margin:11px 0 0;line-height:1.85}
.inner-suite .page-intro .project-services{margin:0;padding:3px 0 0;border:0}
.inner-suite .page-intro .project-service-heading{font-size:16px;margin:0 0 8px}
.inner-suite .page-intro .project-service-links{display:grid;gap:5px;list-style:none;margin:0;padding:0}
.inner-suite .page-intro .project-service-links a{font-size:13px;line-height:1.7;color:#737d68}
.inner-suite .page-intro .project-service-heading a{display:inline-flex;align-items:center;gap:13px}
.inner-suite .page-intro a:hover{color:var(--orange-dark)}
.inner-suite .suite-main{padding-bottom:38px}
.inner-suite .suite-main .work-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px 18px;list-style:none;padding:0;margin:0}
.inner-suite .suite-main .work-card{padding:0;background:transparent;border:0;box-shadow:none;min-width:0}
.inner-suite .suite-main .work-image{display:block;border-radius:4px;overflow:hidden;background:#e7e8df;height:auto;aspect-ratio:auto}
.inner-suite .suite-main .work-image img{display:block;width:100%;height:auto;object-fit:contain;aspect-ratio:auto;transform:none}
.inner-suite .suite-main .work-caption{min-height:0;padding:12px 1px 0;background:transparent;border:0}
.inner-suite .suite-main .work-caption a{display:block;font-size:16px;line-height:1.8;font-weight:400;color:#262c23;letter-spacing:0;white-space:normal;overflow:visible;text-overflow:clip;overflow-wrap:anywhere}
.inner-suite .suite-main .work-caption a:hover{color:var(--orange-dark)}
.inner-suite .catalog-tools{display:flex;gap:20px;align-items:center;justify-content:space-between;margin-bottom:22px}
.inner-suite .catalog-tools h2{margin:0;font-size:21px;font-weight:500;letter-spacing:-.3px}
.inner-suite .catalog-tools>.browse-works{display:inline-flex;align-items:center;gap:9px;font-size:13px;color:#7a896c}
.inner-suite .catalog-tabs{display:flex;gap:7px;flex-wrap:wrap;font-size:13px}
.inner-suite .catalog-tabs a{display:inline-flex;align-items:center;gap:10px;padding:6px 13px;border-radius:3px;background:#edf0e7;color:#76826b}
.inner-suite .catalog-tabs a.current{background:#293328;color:#fff}
.inner-suite .catalog-tabs a:hover{background:#e2e8da;color:#526148}
.inner-suite .catalog-tabs a.current:hover{background:#293328;color:#fff}
.inner-suite .pagination{display:flex;align-items:center;justify-content:center;gap:6px;flex-wrap:wrap;margin:32px 0 2px}
.inner-suite .pagination a,.inner-suite .pagination span{display:inline-flex;align-items:center;justify-content:center;min-width:33px;height:33px;padding:0 10px;border-radius:3px;font-size:12px;background:#ecefe5;color:#79836d}
.inner-suite .pagination span{background:#293328;color:#fff}
.inner-suite .pagination a:hover{background:#e1e7d8;color:#34462b}
.inner-suite .filter-panel{margin:0 0 26px;padding:5px 24px;background:#e9eee2;border-radius:4px}
.inner-suite .filter-row{display:grid;grid-template-columns:70px minmax(0,1fr);gap:12px;padding:14px 0;border-bottom:1px solid #d7dfcf}
.inner-suite .filter-row:last-child{border:0}
.inner-suite .filter-row h2{padding:5px 0 0;margin:0;color:#768369;font-size:13px;font-weight:400;line-height:1.6;letter-spacing:0}
.inner-suite .filter-links{display:flex;gap:5px 7px;flex-wrap:wrap;align-items:center}
.inner-suite .filter-links a{display:inline-flex;padding:4px 10px;font-size:13px;line-height:1.7;border-radius:3px;color:#5d6e52}
.inner-suite .filter-links a:hover{background:#dbe4d1}
.inner-suite .filter-links a[aria-current]{background:#293328;color:#fff}
.inner-suite .selected-filter{font-size:12px;color:#87917d;font-weight:400;padding-left:10px}
.inner-suite .reading-layout{display:grid;grid-template-columns:minmax(0,1fr) 280px;align-items:start;gap:55px}
.inner-suite .reading-main{min-width:0;padding-bottom:10px}
.inner-suite .article-header{padding:28px 0 25px;border-bottom:1px solid #dce0d4;margin-bottom:28px}
.inner-suite .article-header .page-title{font-size:clamp(28px,2.6vw,36px);line-height:1.5;max-width:860px}
.inner-suite .article-category{display:inline-block;margin-top:13px;color:#7a856c;font-size:12px}
.inner-suite .article-content{font-size:16px;line-height:2.05;color:#59624f;overflow-wrap:anywhere}
.inner-suite .article-content>p:first-child{padding:22px 25px;margin:0 0 30px;border-radius:4px;background:#eef0e7;color:#68725e;font-size:15px;line-height:2}
.inner-suite .article-content p{margin:0 0 22px;font-size:16px;line-height:2.05}
.inner-suite .article-content figure{padding:0;margin:0 0 28px}
.inner-suite .article-content img{width:100%;height:auto;object-fit:contain;border-radius:4px;aspect-ratio:auto;margin:0}
.inner-suite .article-content a{color:#677e53}
.inner-suite .reading-side{padding-top:30px;position:sticky;top:92px}
.inner-suite .side-label{font-size:11px;color:#939d86;letter-spacing:1.8px;margin:0 0 14px}
.inner-suite .reading-side .project-services{padding:0;margin:0;border:0}
.inner-suite .reading-side .project-service-heading{font-size:18px;line-height:1.5;margin:0 0 15px}
.inner-suite .reading-side .project-service-heading a{display:flex;align-items:center;gap:14px}
.inner-suite .reading-side .project-service-links{padding:0;margin:0;display:grid;gap:9px;list-style:none}
.inner-suite .reading-side .project-service-links a{font-size:13px;color:#77836b}
.inner-suite .side-contact{background:#e9eee1;padding:24px;margin-top:27px;border-radius:4px}
.inner-suite .side-contact h2{font-size:18px;font-weight:500;margin:0 0 15px;letter-spacing:0}
.inner-suite .side-contact p{font-size:12px;line-height:1.8;color:#8a947e;margin:0 0 3px}
.inner-suite .side-contact .phone{font-size:22px;letter-spacing:.3px;color:#2b3427;font-weight:500}
.inner-suite .side-contact .wechat{font-size:14px;color:#64715a;margin-top:9px}
.inner-suite .side-contact .btn{font-size:13px;font-weight:500;margin-top:19px;padding:10px 15px;transform:none;box-shadow:none}
.inner-suite .related-reading{padding:25px 0 8px;border-top:1px solid #dce0d4;margin-top:18px}
.inner-suite .related-reading h2{font-size:21px;font-weight:500;margin:0 0 17px;letter-spacing:-.3px}
.inner-suite .related-reading ul{padding:0;margin:0;list-style:none;display:grid;gap:13px}
.inner-suite .related-reading a{font-size:14px;color:#6e7a60;line-height:1.7}
.inner-suite .journal-list{list-style:none;padding:0;margin:0;display:grid;gap:28px}
.inner-suite .journal-item{display:grid;grid-template-columns:34% minmax(0,1fr);gap:27px;padding-bottom:28px;border-bottom:1px solid #dce0d4}
.inner-suite .journal-image{display:block;border-radius:4px;overflow:hidden;align-self:start}
.inner-suite .journal-image img{width:100%;height:auto;object-fit:contain;aspect-ratio:auto}
.inner-suite .journal-copy{min-width:0;padding:3px 0}
.inner-suite .journal-date{display:flex;align-items:center;gap:15px;color:#929c86;font-size:11px;letter-spacing:1px;margin:0 0 10px}
.inner-suite .journal-date .index{color:#b29983}
.inner-suite .journal-copy h2{font-size:21px;font-weight:500;line-height:1.65;letter-spacing:-.4px;margin:0 0 11px}
.inner-suite .journal-copy p.journal-summary{font-size:13px;line-height:1.95;color:#879079;margin:0 0 13px}
.inner-suite .journal-read{display:inline-flex;gap:9px;align-items:center;font-size:12px;color:#728264}
.inner-suite .journal-read .detail-arrow{width:16px;height:11px}
.inner-suite .about-intro{display:grid;grid-template-columns:1fr 1.06fr;gap:55px;align-items:center;padding:28px 0 36px;border-bottom:1px solid #dce0d4;margin-bottom:33px}
.inner-suite .about-intro .page-title{margin-bottom:20px}
.inner-suite .company-lead{font-size:21px;font-weight:450;line-height:1.9;color:#4f5c46;margin:0 0 20px}
.inner-suite .company-motto{padding:19px 22px;background:#e9eee1;border-radius:4px;color:#718060;font-size:14px;line-height:1.9;margin:20px 0 0}
.inner-suite .company-motto strong{font-size:12px;letter-spacing:1px;font-weight:400;display:block;margin-bottom:5px;color:#8a977c}
.inner-suite .about-image{margin:0;min-width:0}
.inner-suite .about-image img{width:100%;height:auto;object-fit:contain;border-radius:4px;aspect-ratio:auto}
.inner-suite .about-image figcaption{font-size:11px;color:#98a08b;margin-top:8px}
.inner-suite .about-section-title{font-size:28px;font-weight:600;line-height:1.5;letter-spacing:-.5px;margin:6px 0 22px}
.inner-suite .company-services{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 35px;margin:0;padding:0;list-style:none}
.inner-suite .company-service{padding:22px 0;border-top:1px solid #dce0d4;display:grid;grid-template-columns:35px minmax(0,1fr);gap:15px}
.inner-suite .company-service .num{font-size:12px;color:#a4937d;line-height:2.7}
.inner-suite .company-service h3{font-size:19px;font-weight:500;line-height:1.65;margin:0 0 9px;letter-spacing:-.3px}
.inner-suite .company-service p{font-size:14px;line-height:1.95;color:#849074;margin:0}
.inner-suite .company-bottom{display:grid;grid-template-columns:1fr 1fr;gap:35px;margin:21px 0 0;padding:26px;background:#e9eee1;border-radius:4px}
.inner-suite .company-bottom h2{font-size:21px;font-weight:500;margin:0 0 12px;letter-spacing:-.3px}
.inner-suite .company-bottom p{font-size:13px;line-height:1.9;color:#718261;margin:5px 0}
.inner-suite .company-bottom .related-reading{padding:0;margin:0;border:0}
.inner-suite .error-section{display:grid;grid-template-columns:1.05fr 1fr;align-items:center;gap:80px;min-height:520px;padding:55px 0 65px}
.inner-suite .error-code{color:#d9e1ce;font-size:clamp(160px,21vw,280px);font-weight:750;line-height:.95;letter-spacing:-14px;position:relative;text-align:center;user-select:none}
.inner-suite .error-code:after{content:"";position:absolute;width:30px;height:5px;background:#c87550;bottom:-25px;left:48%;border-radius:1px}
.inner-suite .error-copy .page-title{font-size:34px;line-height:1.5;margin:13px 0 15px}
.inner-suite .error-copy p.error-note{font-size:15px;line-height:1.9;color:#829074;margin:0 0 25px}
.inner-suite .error-actions{display:flex;gap:20px;align-items:center}
.inner-suite .error-actions .btn{font-size:14px;font-weight:500;padding:11px 23px;box-shadow:none;transform:none}
.inner-suite .error-actions .browse-works{display:flex;align-items:center;gap:10px;font-size:13px;color:#758568}
.inner-suite .overview{padding:35px 0 50px}
.inner-suite .overview>h1{font-size:38px;font-weight:600;line-height:1.5;margin:10px 0 12px;letter-spacing:-1px}
.inner-suite .overview>p{font-size:14px;color:#849075;max-width:760px}
.inner-suite .overview-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:30px}
.inner-suite .overview-card{display:block;border-radius:4px;background:#edf0e7;padding:25px;min-height:210px;border:1px solid #dce2d3}
.inner-suite .overview-card:hover{background:#e5ebdc;border-color:#c7d2bb}
.inner-suite .overview-card span{font-size:11px;letter-spacing:1.6px;color:#9a8b77}
.inner-suite .overview-card h2{font-size:24px;font-weight:500;line-height:1.5;margin:20px 0 10px;letter-spacing:-.5px}
.inner-suite .overview-card p{font-size:12px;color:#8b957e;line-height:1.8;margin:0}
.inner-suite .overview-baselines{display:flex;flex-wrap:wrap;gap:12px 28px;margin-top:26px;font-size:13px;color:#728462}
@media(max-width:1100px){.inner-suite .page-intro{gap:35px;grid-template-columns:minmax(0,1fr) 280px}.inner-suite .reading-layout{gap:30px;grid-template-columns:minmax(0,1fr) 245px}.inner-suite .side-contact{padding:20px}.inner-suite .journal-item{gap:20px}.inner-suite .journal-copy h2{font-size:19px}.inner-suite .about-intro{gap:30px}.inner-suite .company-lead{font-size:18px}}
@media(max-width:900px){.inner-suite .page-intro{gap:30px;grid-template-columns:1fr 270px}.inner-suite .page-title{font-size:32px}.inner-suite .reading-layout{grid-template-columns:minmax(0,1fr);gap:28px}.inner-suite .reading-side{position:static;padding-top:0;display:grid;grid-template-columns:1fr 1fr;gap:25px;padding-bottom:20px}.inner-suite .reading-side .side-label{grid-column:1/-1;margin-bottom:-14px}.inner-suite .side-contact{margin:0}.inner-suite .about-intro{grid-template-columns:1fr 1fr}.inner-suite .error-section{gap:35px}.inner-suite .overview-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.inner-suite .page-intro{display:block;padding:23px 0 24px;margin-bottom:22px}.inner-suite .page-title{font-size:29px;letter-spacing:-.6px}.inner-suite .page-intro .project-services{margin-top:22px;padding-top:17px;border-top:1px solid #dce0d4}.inner-suite .page-intro .project-service-links{display:flex;flex-wrap:wrap;gap:5px 15px}.inner-suite .page-kicker{font-size:10px}.inner-suite .suite-main .work-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 14px}.inner-suite .suite-main .work-caption a{font-size:14px;line-height:1.8}.inner-suite .catalog-tools{align-items:flex-start;gap:15px}.inner-suite .catalog-tools h2{font-size:19px}.inner-suite .catalog-tabs{font-size:11px}.inner-suite .catalog-tabs a{padding:5px 9px}.inner-suite .filter-panel{padding:3px 15px}.inner-suite .filter-row{grid-template-columns:48px minmax(0,1fr);gap:9px}.inner-suite .filter-row h2{font-size:11px}.inner-suite .filter-links{gap:4px}.inner-suite .filter-links a{font-size:12px;padding:4px 7px}.inner-suite .article-header{padding:22px 0}.inner-suite .article-header .page-title{font-size:27px}.inner-suite .article-content p{font-size:15px}.inner-suite .article-content>p:first-child{padding:18px;font-size:14px;margin-bottom:24px}.inner-suite .journal-item{grid-template-columns:1fr;gap:15px}.inner-suite .journal-copy{padding:0}.inner-suite .journal-copy h2{font-size:21px}.inner-suite .reading-side{display:block}.inner-suite .side-contact{margin-top:23px}.inner-suite .reading-side .side-label{margin-bottom:14px}.inner-suite .about-intro{display:block;padding-top:23px}.inner-suite .about-image{margin-top:25px}.inner-suite .company-lead{font-size:19px}.inner-suite .company-services{grid-template-columns:1fr}.inner-suite .company-bottom{grid-template-columns:1fr;gap:23px;padding:21px}.inner-suite .error-section{grid-template-columns:1fr;min-height:0;gap:70px;padding:60px 0}.inner-suite .error-code{font-size:180px;letter-spacing:-9px}.inner-suite .error-copy .page-title{font-size:29px}.inner-suite .overview-grid{grid-template-columns:1fr}.inner-suite .overview>h1{font-size:29px}.inner-suite .overview-card{min-height:0}.inner-suite .overview-card h2{margin-top:13px}.inner-suite .pagination{gap:5px}.inner-suite .pagination a,.inner-suite .pagination span{min-width:29px;height:31px;padding:0 8px}}
@media(max-width:430px){.inner-suite .suite-main .work-grid{grid-template-columns:1fr}.inner-suite .suite-main .work-caption a{font-size:16px}.inner-suite .catalog-tools{flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}


/* Match the user's circled overview-card heading: regular face, weight 500. */
.inner-suite.inner-suite-v3 .journal-copy h2,
.inner-suite.inner-suite-v3 .related-reading h2,
.inner-suite.inner-suite-v3 .related-reading a,
.inner-suite.inner-suite-v3.company-page-v3 .page-title,
.inner-suite.inner-suite-v3.company-page-v3 .company-lead,
.inner-suite.inner-suite-v3.company-page-v3 .company-motto strong,
.inner-suite.inner-suite-v3.company-page-v3 .about-section-title,
.inner-suite.inner-suite-v3.company-page-v3 .company-service h3,
.inner-suite.inner-suite-v3.company-page-v3 .company-bottom h2 {
  font-family: var(--font);
  font-weight: 500;
  font-synthesis: none;
  letter-spacing: 0;
}

.inner-suite.inner-suite-v3 .related-reading a strong,
.inner-suite.inner-suite-v3 .related-reading a span {
  font-family: inherit;
  font-weight: inherit;
  font-synthesis: none;
}

/* Category names lead the page without overpowering the work or article list. */
.inner-suite.inner-suite-v3.compact-title-v3 .page-title {
  font-family: var(--font);
  font-size: 32px;
  font-weight: 500;
  line-height: 1.45;
  letter-spacing: -.5px;
}

.inner-suite.inner-suite-v3.company-page-v3 .about-section-title {
  font-size: 26px;
}

.inner-suite.inner-suite-v3.company-page-v3 .company-service p {
  font-family: var(--font);
  font-weight: 400;
  color: #66725d;
}

@media (max-width: 900px) {
  .inner-suite.inner-suite-v3.compact-title-v3 .page-title {
    font-size: 28px;
  }
}

@media (max-width: 720px) {
  .inner-suite.inner-suite-v3.compact-title-v3 .page-title {
    font-size: 26px;
  }
}


/* V4: bold, solid black headings. Preserve every V3 font size and line height. */
.inner-suite.inner-suite-v4.compact-title-v3 .page-title,
.inner-suite.inner-suite-v4 .catalog-tools h2,
.inner-suite.inner-suite-v4 .journal-copy h2,
.inner-suite.inner-suite-v4 .related-reading h2,
.inner-suite.inner-suite-v4 .project-service-heading,
.inner-suite.inner-suite-v4 .side-contact h2,
.inner-suite.inner-suite-v4.company-page-v3 .company-lead,
.inner-suite.inner-suite-v4.company-page-v3 .company-motto strong,
.inner-suite.inner-suite-v4.company-page-v3 .about-section-title,
.inner-suite.inner-suite-v4.company-page-v3 .company-service h3,
.inner-suite.inner-suite-v4.company-page-v3 .company-bottom h2 {
  font-family: var(--font);
  font-weight: 700;
  font-synthesis: weight;
  color: #202020;
}

/* The user requests normal black titles, including the formerly orange words. */
.inner-suite.inner-suite-v4.compact-title-v3 .page-title em,
.inner-suite.inner-suite-v4 .catalog-tools h2 em,
.inner-suite.inner-suite-v4 .journal-copy h2 a,
.inner-suite.inner-suite-v4 .project-service-heading a {
  font-family: inherit;
  font-weight: inherit;
  color: inherit;
}

.inner-suite.inner-suite-v4 .related-reading a {
  color: #202020;
}


/* Match the service heading in article-detail V4; leave all other rules intact. */
.product-detail-v4.inner-services-v5 .project-service-heading {
  font-family: var(--font);
  font-size: 18px;
  font-weight: 700;
  font-style: normal;
  font-synthesis: weight;
  line-height: 1.5;
  letter-spacing: 0;
  color: #202020;
}

.product-detail-v4.inner-services-v5 .project-service-heading a {
  font-family: inherit;
  font-size: inherit;
  font-weight: inherit;
  font-style: inherit;
  line-height: inherit;
  letter-spacing: inherit;
  color: inherit;
}
