/* Silk Road: photography, clear typography and an editorial rhythm. */
.home-hero { position:relative; display:flex; min-height:580px; height:calc(88svh - 132px); max-height:760px; overflow:hidden; color:#fff; background:#242424; }
.home-hero .home-hero-image { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center 57%; }
.home-hero-shade { position:absolute; inset:0; background:linear-gradient(90deg,rgba(8,35,52,.79),rgba(8,35,52,.1) 75%),linear-gradient(0deg,rgba(8,35,52,.6),transparent 35%); }
.home-hero-inner { position:relative; align-self:center; padding-bottom:35px; z-index:1; }
.home-hero-eyebrow { font-size:12px; letter-spacing:.16em; color:#c4eef0; margin-bottom:24px!important; }
.home-hero h1 { color:#fff; font-size:clamp(48px,5.6vw,76px); font-weight:650; line-height:1.24; letter-spacing:0; }
.home-hero h1 span { color:#fff; }.home-hero-description { margin-top:26px!important; font-size:18px; line-height:1.85; color:#f1f6f8; }
.home-hero-link { display:inline-flex; gap:40px; align-items:center; margin-top:30px; padding:13px 23px; border:1px solid #ffffff80; background:#ffffff12; font-size:14px; }
.home-hero-link:hover { background:#d60000; border-color:#d60000; }
.home-hero-bottom { display:flex; justify-content:space-between; align-items:center; position:absolute; left:0; right:0; bottom:25px; z-index:1; font-size:11px; letter-spacing:.1em; color:#e1e7eb; }

.home-intro { background:#fff; }.home-intro-grid { display:grid; grid-template-columns:.95fr 1.05fr; gap:70px; align-items:center; }
.home-intro-photo { position:relative; margin:0; }.home-intro-photo img { width:100%; height:470px; object-fit:cover; object-position:center; }
.home-intro-photo figcaption { position:absolute; left:0; bottom:0; padding:18px 24px; background:#d60000; color:#fff; font-size:11px; letter-spacing:.06em; }
.home-intro h2 { font-size:clamp(29px,3vw,40px); line-height:1.45; margin-bottom:28px!important; }.home-intro-copy p { font-size:15px; line-height:1.95; margin-bottom:18px; }
.home-intro-copy .sr-link { margin-top:7px; }.home-services { background:#f7f7f5; }
.home-section-top { display:flex; gap:36px; align-items:flex-end; justify-content:space-between; margin-bottom:38px; }.home-section-top .sr-link { flex:none; }
.home-service-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; }
.home-service { display:grid; grid-template-columns:.85fr 1.15fr; overflow:hidden; background:#fff; transition:box-shadow .25s; }.home-service:hover { box-shadow:0 12px 32px #24242416; }
.home-service-photo { min-height:255px; overflow:hidden; }.home-service-photo img { width:100%; height:100%; object-fit:cover; transition:transform .35s; }.home-service:hover img { transform:scale(1.035); }
.home-service-copy { position:relative; display:flex; flex-direction:column; align-items:flex-start; padding:28px; }
.home-service h3 { font-size:25px; margin-bottom:7px; }.home-service-label { color:#d60000; font-size:9px; letter-spacing:.04em; margin-bottom:16px!important; }
.home-service-description { font-size:13px; line-height:1.9; }.home-service-arrow { display:flex; align-items:center; justify-content:center; width:32px; height:32px; margin-top:18px; color:#d60000; border:1px solid #c1dfe2; font-size:21px; line-height:1; }
.home-discipline { background:#fff; }.home-discipline-grid { display:grid; grid-template-columns:.85fr 1.15fr; gap:70px; align-items:stretch; }
.home-discipline-photo { margin:0; overflow:hidden; }.home-discipline-photo img { width:100%; height:100%; min-height:540px; object-fit:cover; object-position:center; }
.home-discipline-intro > p { margin-top:22px!important; font-size:15px; line-height:1.95; }
.home-process-grid { display:grid; gap:23px; margin-top:34px; }.home-process-grid article { position:relative; padding-left:27px; border-left:2px solid #d7e8eb; }
.home-process-dot { position:absolute; left:-6px; top:8px; width:10px; height:10px; background:#d60000; border-radius:50%; }.home-process-grid h3 { font-size:20px; margin-bottom:8px; }.home-process-grid p { font-size:13px; line-height:1.9; }
.home-insights { background:#f7f7f5; }.home-insight-grid { display:grid; grid-template-columns:1.2fr 1fr; gap:26px 36px; }.home-insight:first-child { grid-row:span 2; }.home-insight:not(:first-child) > a { display:grid; grid-template-columns:180px minmax(0,1fr); gap:10px 24px; align-content:start; }.home-insight:not(:first-child) .home-insight-image { grid-row:span 4; height:180px; aspect-ratio:auto; }.home-insight:not(:first-child) .home-insight-meta { margin:0; }.home-insight:not(:first-child) h3 { font-size:21px; margin-bottom:0; }.home-insight:not(:first-child) p { display:none; }.home-insight:not(:first-child) .home-insight-link { margin-top:0; }
.home-insight-image { aspect-ratio:1.65; overflow:hidden; background:#dce9ef; }.home-insight-image img { width:100%; height:100%; object-fit:cover; transition:transform .4s; }.home-insight a:hover img { transform:scale(1.035); }
.home-insight-meta { display:flex; flex-wrap:wrap; justify-content:space-between; gap:6px 12px; margin:20px 0 12px; font-size:10px; color:#627783; }.home-insight-meta > span { color:#d60000; }
.home-insight h3 { font-size:27px; line-height:1.5; margin-bottom:12px; }.home-insight p { font-size:14px; line-height:1.9; }.home-insight-link { display:flex; gap:25px; color:#d60000; font-size:12px; margin-top:20px; }
.home-contact { padding:75px 0; color:#e6f1f5; background:linear-gradient(90deg,#0b324beb,#0b324b99),url('/static/picture/contact/contact_shenzhen.jpg') center/cover; }.home-contact .sr-eyebrow { color:#a6dfe3; }.home-contact h2 { margin-bottom:14px; color:#fff; }.home-contact-inner { display:flex; justify-content:space-between; align-items:center; gap:40px; }.home-contact p:not(.sr-eyebrow) { font-size:14px; }.home-contact .sr-button { background:#fff; color:#242424!important; border:0; }.home-career-link { display:block; margin-top:20px; font-size:12px; }
html[lang="en"] .home-hero h1 { max-width:830px; font-size:clamp(40px,4.7vw,65px); letter-spacing:0; }
@media(max-width:1100px) { .home-intro-grid,.home-discipline-grid { gap:40px; }.home-insight:not(:first-child) > a { grid-template-columns:130px minmax(0,1fr); gap:12px 20px; }.home-service-copy { padding:23px; }.home-service h3 { font-size:23px; } }
@media(max-width:800px) { .home-hero { height:calc(82svh - 74px); min-height:550px; }.home-intro-grid,.home-discipline-grid { grid-template-columns:1fr; gap:32px; }.home-intro-photo img { height:330px; }.home-discipline-photo img { min-height:0; height:280px; object-position:center 60%; }.home-service { grid-template-columns:1fr; }.home-service-photo { min-height:0; height:190px; }.home-service-copy { padding:25px; }.home-insight-grid { grid-template-columns:1fr; gap:30px; }.home-insight:first-child { grid-row:auto; }.home-insight:not(:first-child) > a { grid-template-columns:180px minmax(0,1fr); } }
@media(max-width:600px) { .home-hero { min-height:530px; max-height:680px; }.home-hero h1 { font-size:48px; }.home-hero-eyebrow { font-size:10px; letter-spacing:.1em; }.home-hero-description { font-size:16px; }.home-hero-link { margin-top:24px; font-size:13px; }.home-hero-bottom { font-size:9px; letter-spacing:0; gap:12px; }.home-hero .home-hero-image { object-position:61% center; }.home-section-top { display:block; margin-bottom:28px; }.home-section-top .sr-link { margin-top:15px; }.home-service-grid { grid-template-columns:1fr; gap:22px; }.home-service { grid-template-columns:.8fr 1.2fr; }.home-service-photo { height:100%; min-height:245px; }.home-service-copy { padding:23px; }.home-service h3 { font-size:22px; }.home-service-label { font-size:8px; }.home-service-description { font-size:12px; }.home-insight:not(:first-child) > a { grid-template-columns:110px minmax(0,1fr); gap:10px 18px; }.home-insight:not(:first-child) .home-insight-image { height:155px; }.home-insight:not(:first-child) h3 { font-size:18px; }.home-insight h3 { font-size:24px; }.home-contact-inner { display:block; }.home-contact-inner > div:last-child { margin-top:26px; }.home-contact { padding:58px 0; } html[lang="en"] .home-hero h1 { font-size:37px; } html[lang="en"] .home-service { grid-template-columns:1fr; } html[lang="en"] .home-service-photo { min-height:0; height:180px; } }
@media(max-width:360px) { .home-service { grid-template-columns:1fr; }.home-service-photo { min-height:0; height:170px; }.home-hero h1 { font-size:42px; } }
