/* Design review: one home composition and explicit responsive component states. */
:root{--review-paper:#f8f8f3;--review-ink:#203c32;--review-muted:#586b61;--review-line:#d7dfd7;--review-accent:#426953}
.header{background:var(--review-paper);border-color:var(--review-line)}
.sidebar{background:#f2f5ef;border-color:var(--review-line)}
.sidebar .nav-row>a,.sidebar .side-services>button{font-family:"Microsoft YaHei","PingFang SC",sans-serif;font-weight:500;color:var(--review-ink)}
.sidebar .nav-row.active{background:#e1e9de;border-left-color:#426953}
.sidebar .nav-row.active>a{font-weight:700}
.sidebar .side-label,.sidebar .side-label span{color:#5c7060;letter-spacing:.06em}
.brand small{font-size:9px;letter-spacing:.025em;color:#52675c}
.search input{font-weight:400}
button,a{-webkit-tap-highlight-color:transparent}
:is(button,a,input):focus-visible{outline:2px solid #427354;outline-offset:4px}
.home-canvas{color:var(--review-ink);font-family:"Microsoft YaHei","PingFang SC",sans-serif}
.home-canvas .breadcrumb{font-size:12px;font-weight:400;background:transparent;border-color:var(--review-line)}
.home-canvas .hero-home{position:relative;height:500px;min-height:0;margin:18px 0 0!important;border-radius:8px!important;box-shadow:none!important;isolation:isolate}
.home-canvas .hero-home>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:60% center;filter:none}
.home-canvas .hero-home:after{content:"";display:block;position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,#112d28e6 0%,#18332e99 42%,#18332e05 85%),linear-gradient(0deg,#132b2666,transparent 45%);pointer-events:none}
.home-canvas .hero-home .hero-content{position:relative;z-index:2;max-width:690px;padding:48px 48px 0;background:none;color:#fff}
.home-canvas .hero-home .hero-kicker{display:flex;gap:18px;align-items:center;color:#e3ecdd;font-size:11px;font-weight:500;letter-spacing:.12em}
.home-canvas .hero-home .hero-kicker span+span{border-left:1px solid #b1c2b78c;padding-left:18px}
.home-canvas .hero-home h1{font-family:"Microsoft YaHei","PingFang SC",sans-serif;color:#fff;font-size:clamp(42px,4.2vw,62px);font-weight:500;line-height:1.18;letter-spacing:-.04em;margin:27px 0 24px}
.home-canvas .hero-period{color:#baca9e}
.home-canvas .hero-home p{max-width:430px;font-size:15px;font-weight:400;color:#e8eee4;line-height:1.9;letter-spacing:.025em}
.home-canvas .hero-home>.hero-actions{position:absolute;left:48px;bottom:40px;z-index:3;display:flex;gap:24px;align-items:center}
.home-canvas .hero-home .hero-actions .primary{min-height:46px;padding:13px 21px;border-radius:3px;background:#f4f7ee;color:#203c32;font-size:13px;font-weight:600}
.home-canvas .hero-home .hero-actions .quiet{background:none;border:0;border-radius:0;color:white;padding:13px 0;font-size:13px}
.home-canvas .hero-home .hero-caption{display:block;position:absolute;z-index:3;right:18px;bottom:18px;padding:5px 9px;background:#172d27d9;color:#ecf2e7;font-size:11px;font-weight:400;letter-spacing:0}
.home-services-heading{display:flex;align-items:end;justify-content:space-between;gap:24px;padding:38px 0 19px}
.home-services-heading h2{margin:0;font-size:23px;font-weight:500;letter-spacing:.02em}
.home-services-heading p{margin:0;color:var(--review-muted);font-size:13px;line-height:1.7}
.home-canvas .service-strip{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0;padding:0;margin:0;border:1px solid var(--review-line);border-radius:5px 5px 0 0;background:#eef2eb;counter-reset:none;overflow:visible}
.home-canvas .service-strip:after,.home-canvas .service-strip>[data-home-module]:before,.home-canvas .service-strip>[data-home-module]:after{display:none!important;content:none!important}
.home-canvas .service-strip>[data-home-module]{--tab-accent:#3e6754;display:flex;position:relative;align-items:center;justify-content:flex-start;gap:11px;min-width:0;min-height:80px;margin:0;padding:17px 19px;text-align:left;border:0;border-right:1px solid var(--review-line);border-radius:0!important;background:transparent!important;box-shadow:inset 0 3px transparent!important;transform:none!important;cursor:pointer;transition:background .15s ease,box-shadow .15s ease;color:var(--review-ink);overflow:visible}
.home-canvas .service-strip>[data-home-module]:nth-child(2){--tab-accent:#887143}
.home-canvas .service-strip>[data-home-module]:nth-child(3){--tab-accent:#537a85}
.home-canvas .service-strip>[data-home-module]:nth-child(4){--tab-accent:#936757}
.home-canvas .service-strip>[data-home-module]:nth-child(5){--tab-accent:#6b7c43;border-right:0}
.home-canvas .service-strip>[aria-selected=true]{background:#fff!important;box-shadow:inset 0 3px var(--tab-accent)!important;outline:none}
.home-canvas .service-strip>[data-home-module]:hover{background:#e5ebdf!important}
.home-canvas .service-strip>[data-home-module]:focus-visible{outline:2px solid var(--tab-accent);outline-offset:-5px}
.home-canvas .service-index{display:none}
.home-canvas .service-icon{display:flex;flex-shrink:0;align-items:center;justify-content:center;width:30px;height:32px;margin:0;border:0;border-radius:0;background:none;color:var(--tab-accent)}
.home-canvas .service-icon svg{display:block;width:23px;height:23px;stroke-width:1.5;color:var(--tab-accent)!important}
.home-canvas .service-copy{display:grid;gap:6px;min-width:0;padding:0;align-self:center}
.home-canvas .service-copy strong{font-family:inherit;font-size:15px!important;font-weight:600!important;line-height:1.4;color:var(--review-ink)!important;letter-spacing:0;white-space:nowrap}
.home-canvas .service-copy small{font-family:inherit;font-size:10px!important;font-weight:400!important;line-height:1.3;letter-spacing:.05em;color:var(--review-muted)!important}
.home-canvas .service-action{display:none}
.home-canvas .home-module-carousel{position:relative;overflow:hidden;margin:0 0 44px;border:1px solid var(--review-line);border-top:0;border-radius:0 0 5px 5px;background:#fff;scroll-margin-top:calc(var(--header) + 18px)}
.home-canvas .home-module-track{display:block;width:100%;transform:none!important;transition:none;will-change:auto}
.home-canvas .home-module-panel{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);min-height:460px;min-width:0;background:#fff}
.home-canvas .home-module-panel[hidden]{display:none!important}
.home-canvas .home-module-copy{display:flex;flex-direction:column;min-width:0;padding:40px;background:#fff}
.home-canvas .home-module-copy .eyebrow{font-size:11px!important;letter-spacing:.1em;color:#5a745e!important;font-weight:500!important}
.home-canvas .home-module-copy h2{margin:22px 0 20px;font-family:"Microsoft YaHei","PingFang SC",sans-serif;font-size:clamp(27px,2.5vw,38px);font-weight:500;line-height:1.45;letter-spacing:-.035em;color:var(--review-ink)}
.home-canvas .home-module-copy h2 span{color:#60805a;font-weight:500}
.home-canvas .home-module-copy>p{max-width:480px;margin:0;color:var(--review-muted);font-size:14px;font-weight:400;line-height:1.95}
.home-canvas .home-module-facts{display:flex;flex-wrap:wrap;gap:9px 16px;margin-top:auto;padding-top:24px;border:0}
.home-canvas .home-module-facts span{display:flex;flex-direction:row;align-items:center;gap:7px;color:#526952;font-size:12px;font-weight:400}
.home-canvas .home-module-facts b{width:4px;height:4px;border-radius:50%;background:#96aa87;font-size:0}
.home-canvas .home-module-actions{display:flex;flex-wrap:wrap;align-items:center;gap:22px;margin-top:27px}
.home-canvas .home-module-actions .primary{min-height:44px;padding:12px 18px;background:#294b3c;border-radius:3px;color:#fff;font-size:13px;font-weight:500}
.home-canvas .home-module-actions .text-link{font-size:13px;font-weight:500;color:#476348;background:none}
.home-canvas .home-module-visual{position:relative;display:block;min-width:0;height:auto;margin:0;overflow:hidden;background:#e9eee5}
.home-canvas .home-module-visual img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover}
.home-canvas .home-module-visual:after{display:none}
.home-canvas .home-module-visual figcaption{position:absolute;z-index:1;right:14px;bottom:14px;margin:0;padding:6px 9px;background:#19362ee6;color:#f1f4ed;font-size:11px;font-weight:400;letter-spacing:0}
.home-canvas .home-module-controls{position:static;display:flex;justify-content:space-between;align-items:center;gap:20px;min-height:62px;padding:10px 20px;background:#f0f3ec;border-top:1px solid var(--review-line);font-size:12px;font-weight:400;color:#53695c;letter-spacing:.04em}
.home-canvas .home-module-controls>div{display:flex;gap:8px}
.home-canvas .home-module-controls button{display:grid;place-items:center;width:40px;height:40px;margin:0;border:1px solid #b8c8b7;border-radius:3px;background:transparent;color:#36563e;cursor:pointer}
.home-canvas .home-module-controls button:hover{background:#dbe6d7}
.home-canvas .home-module-controls svg{width:17px;height:17px}
.home-canvas .contact-band{margin:0;padding:38px 40px;display:flex;align-items:center;justify-content:space-between;gap:28px;background:#203c32;border:0;border-radius:5px}
.home-canvas .contact-band h2{font-family:inherit;font-size:29px;font-weight:400;line-height:1.5;color:#f0f4e9;letter-spacing:-.02em;margin:10px 0 0}
.home-canvas .contact-band .eyebrow{font-size:11px;color:#bdd0ad}
.home-canvas .contact-link{margin:0;color:#eff5e7;font-size:14px;font-weight:400;min-width:150px}
.home-canvas .footer{margin:0;padding:24px 0;background:none;color:#526457;font-size:11px}
.home-canvas .footer a{color:#3c6045}
/* Restore product text contrast after older light and dark themes overlapped. */
.type-product.is-detail .product-introduction{background:#213b30;padding:42px!important;border-left:0}
.type-product.is-detail .product-introduction h2{color:#f5f7ee;font-size:36px;font-weight:500;line-height:1.3}
.type-product.is-detail .product-family{color:#bfcea8}
.type-product.is-detail .product-introduction>p{color:#d3ded0;font-size:15px;font-weight:400}
.type-product.is-detail .product-topics{border-color:#526656}
.type-product.is-detail .product-topics>span{color:#e4eada;border-color:#526656;font-size:13px;font-weight:400}
.type-product.is-detail .product-topics svg{color:#b8cb9c}
.type-product.is-detail .product-actions .primary{background:#e0e9d0;color:#233b2c;border-radius:3px}
.type-product.is-detail .product-actions .read-specs{color:#d3dfc7}
.catalog-description p{color:#536552;font-size:14px;line-height:1.85}
.media-provenance{position:absolute;right:12px;bottom:12px;padding:5px 8px;background:#19362ee6;color:#fff;font:11px/1.5 "Microsoft YaHei",sans-serif}
.project-image,.catalog-cover{position:relative}
@media(min-width:961px){
 main:has(.home-canvas){padding:0!important}
 .home-canvas{width:100%;max-width:none;margin:0;padding:0 12px 16px}
 .home-canvas .hero-home{height:clamp(480px,38vw,600px)}
 .home-services-heading{padding-top:26px}
 .home-canvas .service-strip{scroll-margin-top:calc(var(--header) + 14px)}
 .content-page .content-title{max-width:none;margin-inline:0;padding-inline:24px}
 .content-page>.content-width{width:100%;max-width:none;margin-inline:0;padding-inline:24px}
 .type-institution.is-detail>.content-width,.type-research.is-detail>.content-width{max-width:none;padding-inline:28px}
 .content-page .article-reader-layout{max-width:none}
}
@media(min-width:961px) and (max-width:1200px){.home-canvas .service-strip>[data-home-module]{padding:16px 10px;gap:6px}.home-canvas .service-copy strong{font-size:13px!important}.home-canvas .service-icon{width:24px}.home-canvas .service-copy small{font-size:9px!important}.home-canvas .home-module-copy{padding:28px}.home-canvas .home-module-copy h2{font-size:29px}}
@media(max-width:960px){
 .home-canvas{padding:0 20px 16px;background:var(--review-paper)}
 .home-canvas .breadcrumb{padding-inline:0;height:42px}
 .home-canvas .hero-home{height:480px;margin:0!important}
 .home-canvas .hero-home .hero-content{padding:35px 30px 0}
 .home-canvas .hero-home>.hero-actions{left:30px;bottom:42px}
 .home-canvas .hero-home h1{font-size:46px}
 .home-canvas .service-strip>[data-home-module]{padding:15px 10px;gap:7px}
 .home-canvas .service-copy strong{font-size:13px!important}
 .home-canvas .service-copy small{display:none}
 .home-canvas .home-module-copy{padding:30px}
 .home-canvas .home-module-copy h2{font-size:29px}
 .home-canvas .home-module-panel{min-height:450px}
 .home-canvas .contact-band{padding:30px}
}
@media(max-width:600px){
 .brand small{font-size:9px;max-width:230px;line-height:1.3;white-space:normal}
 .home-canvas{padding:0 14px 16px}
 .home-canvas .hero-home{height:450px;border-radius:5px!important}
 .home-canvas .hero-home>img{object-position:62% center}
 .home-canvas .hero-home:after{background:linear-gradient(180deg,#153c32ce 0%,#122e2375 45%,#122e231a 67%,#122e2380)}
 .home-canvas .hero-home .hero-content{padding:28px 22px 0;max-width:none}
 .home-canvas .hero-home .hero-kicker{font-size:9px;gap:10px;letter-spacing:.025em}
 .home-canvas .hero-home .hero-kicker span+span{padding-left:10px}
 .home-canvas .hero-home h1{font-size:36px;line-height:1.25;letter-spacing:-.06em;margin:24px 0 18px}
 .home-canvas .hero-home p{font-size:14px;line-height:1.85;max-width:260px}
 .home-canvas .hero-home>.hero-actions{left:22px;bottom:54px;gap:17px;flex-wrap:wrap}
 .home-canvas .hero-home .hero-actions .primary,.home-canvas .hero-home .hero-actions .quiet{font-size:12px}
 .home-canvas .hero-home .hero-caption{font-size:10px;right:10px;bottom:12px}
 .home-services-heading{display:block;padding:28px 2px 16px}
 .home-services-heading h2{font-size:22px;margin:0 0 7px}
 .home-services-heading p{font-size:12px}
 .home-canvas .service-strip{display:flex;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:#9fb29a #eef2eb;scroll-padding-inline:4px}
 .home-canvas .service-strip>[data-home-module]{flex:0 0 112px;min-height:64px;padding:14px 9px;gap:5px}
 .home-canvas .service-copy strong{font-size:13px!important}
 .home-canvas .service-icon{width:23px;height:26px}
 .home-canvas .service-icon svg{width:19px;height:19px}
 .home-canvas .home-module-carousel{margin-bottom:28px;scroll-margin-top:calc(var(--header) + 12px)}
 .home-canvas .home-module-panel{display:flex;flex-direction:column;min-height:0}
 .home-canvas .home-module-copy{padding:28px 24px}
 .home-canvas .home-module-copy h2{font-size:27px;line-height:1.5;margin:16px 0}
 .home-canvas .home-module-copy .eyebrow{font-size:10px!important;letter-spacing:.05em}
 .home-canvas .home-module-copy>p{font-size:14px;line-height:1.9}
 .home-canvas .home-module-facts{padding-top:20px;margin-top:0;gap:9px 13px}
 .home-canvas .home-module-facts span{font-size:12px}
 .home-canvas .home-module-actions{margin-top:24px;gap:17px}
 .home-canvas .home-module-visual{height:230px;flex:none;margin:0}
 .home-canvas .home-module-controls{padding:8px 14px;min-height:60px}
 .home-canvas .home-module-controls button{width:42px;height:42px}
 .home-canvas .contact-band{display:block;padding:28px 24px}
 .home-canvas .contact-band h2{font-size:25px}
 .home-canvas .contact-link{margin-top:24px;width:max-content;min-width:165px;font-size:13px}
 .home-canvas .footer{display:flex;flex-direction:column;align-items:flex-start;gap:9px;line-height:1.6;font-size:10px}
 .type-product.is-detail .product-introduction{padding:28px 24px!important}
 .type-product.is-detail .product-introduction h2{font-size:29px}
 .catalog-description p{font-size:13px}
}
@media(prefers-reduced-motion:reduce){.home-canvas *{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
