/* Shared layout refinement: content grows naturally at every viewport size. */
:root{--vl-ink:#173b50;--vl-text:#405361;--vl-line:#e0e8ed;--vl-soft:#f5f8fa}
body{font-family:system-ui,-apple-system,"Microsoft YaHei",sans-serif;font-size:16px;line-height:1.8;color:var(--vl-text)}
.main{width:100%;min-width:0}
.main *{box-sizing:border-box}
.header,.header *,.footer-main,.footer-main *,.footer-bottom{box-sizing:border-box}
.main img{max-width:100%}
.main h1,.main h2,.main h3{font-family:inherit;color:var(--vl-ink);line-height:1.45}
.main h1{font-weight:650}.main h2{font-weight:600}.main h3{font-weight:600}
a:focus-visible{outline:3px solid #1597b3;outline-offset:4px}
.header{display:flex;align-items:center;justify-content:space-between;padding:0 max(24px,calc((100vw - 1200px)/2));background:#555;height:80px}
.header>a{width:160px!important;height:auto!important;padding:0!important;float:none;flex-shrink:0}
.header .menu{position:relative;padding:0!important}.header .menu>ul{margin-left:0!important;display:flex}
.header .menu>ul>li{margin:0;width:auto;min-width:88px;height:auto}
.header .firstmenu{width:auto;min-width:88px;padding:0 10px;font-size:15px}
.header .main-li:has(.prod-menu){position:static}
.header .child-menu{top:100%}
.header .prod-menu{position:absolute;top:100%;left:auto!important;right:0;width:min(760px,85vw)!important;min-height:0;max-height:70vh;overflow:auto}
.roll{height:auto;max-height:360px;overflow:hidden}.roll img{display:block;width:100%;height:auto;max-height:360px;object-fit:contain}
.homepage-entry,.homepage-faq{width:min(1200px,calc(100% - 48px))}
.about-us-l h3{color:#fff}
@media(min-width:701px){
.news,.product,.solution,.application{width:min(1200px,calc(100% - 48px))}
.news-img,.news-content{width:50%}.news-content ul li,.news-content ul li a,.news-content ul li a:hover{width:100%}.news-content ul li a{height:auto;min-height:100px;padding:12px 24px}
.prod-main{display:flex;gap:24px;align-items:center}.prod-img,.prod-content{float:none;width:calc(50% - 12px);height:auto;margin:0}.prod-main>div.clear{display:none}
.solution-btn{width:calc(25% - 10px);height:auto;min-height:180px;padding:20px 12px}
.application-main{width:calc(33.333% - 20px)}
.application-main>div{width:100%!important}.application-main img{height:auto!important}
}
/* Article reading rhythm and discoverable resource links. */
.main:has(>.news-detail-header)>.news-detail-header,
.main:has(>.news-detail-header)>.news-detail-part,
.main:has(>.news-detail-header)>.detail-faq,
.main:has(>.news-detail-header)>.detail-related-resources,
.main:has(>.news-detail-header)>.detail-service-contact{width:min(820px,calc(100% - 48px))}
.news-detail-part{text-align:left;overflow-wrap:break-word}
.news-detail-part>p:first-of-type{font-size:18px;color:var(--vl-ink);line-height:1.9}
.news-detail-part>h2{padding-left:14px;border-left:3px solid #1597b3}
.news-detail-part>.detail-content-heading{font-size:14px;color:#587180;border:0;padding:0;margin:0 0 20px;letter-spacing:.08em}
.news-detail-part a,.detail-faq a,.detail-service-contact a{color:#146b94;text-decoration:underline;text-underline-offset:3px}
.news-detail-part a:hover,.detail-faq a:hover,.detail-service-contact a:hover{color:#0b4b68}
.news-detail-part figure{overflow:hidden}.news-detail-part figure img{display:block;margin:0 auto}
.news-detail-part figcaption{padding:0 12px}
.main:has(>.news-detail-header)>.detail-related-resources h2{font-size:22px;margin-bottom:14px}
.main:has(>.news-detail-header)>.detail-related-resources a{display:inline-block;padding:8px 12px;margin:4px 0;border:1px solid var(--vl-line);border-radius:6px;background:#fff;color:#146b94;line-height:1.6}
.main:has(>.news-detail-header)>.detail-related-resources a:hover{background:#e9f3f7;border-color:#90b9cd}
@media(max-width:700px){
.main:has(>.news-detail-header)>.detail-faq,
.main:has(>.news-detail-header)>.detail-related-resources,
.main:has(>.news-detail-header)>.detail-service-contact{width:calc(100% - 36px)!important}
.news-detail-part>p:first-of-type{font-size:17px}
.news-detail-part>h2{padding-left:10px}
.news-detail-part>.detail-content-heading{padding:0}
}
.prod-detail-header{width:min(1200px,calc(100% - 48px));height:auto;min-height:90px;display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;padding:24px 0;margin:0 auto;border-bottom:1px solid var(--vl-line);line-height:1.5}
.prod-detail-header>div:first-child{position:static;background:none;width:auto;height:auto;line-height:1.5;float:none}
.prod-detail-wenzi{float:none;color:var(--vl-ink);font-size:28px;line-height:1.5;padding:0}
.menu3{margin:0!important;float:none}.menu3 ul{display:flex;flex-wrap:wrap;gap:8px}.menu3 ul li{float:none;margin:0}
.menu3 ul li a{display:block;width:auto!important;height:auto!important;line-height:1.5!important;padding:10px 16px;border-radius:6px;background:var(--vl-soft)}
.menu3 ul li a.active-card{background:#146b94;color:#fff!important}
.main>h2,.prod-detail-logo,.tech-part,.norms-part,.solution-list-part,.application-list-part,.sale-part,.aboutus-part-one,.aboutus-part-two,.aboutus-part-three{width:min(1200px,calc(100% - 48px))!important;margin-left:auto!important;margin-right:auto!important;height:auto}
.prod-detail-bar{width:100%;height:auto;margin:40px auto 24px}.prod-detail-bar>div{width:auto;max-width:100%;height:auto}.prod-detail-bar span{font-size:24px!important;line-height:1.5!important}
.prod-detail-logo{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;padding:0 0 40px}
.prod-detail-logo-part,.prod-detail-logo-part:only-child{width:100%;height:auto;min-height:0;margin:0;padding:24px;float:none;background:var(--vl-soft);border:1px solid var(--vl-line);border-radius:10px}
.prod-detail-logo-part:only-child{grid-column:1/-1}
.prod-detail-logo-l,.prod-detail-logo-r,.prod-detail-logo-part:only-child .prod-detail-logo-l,.prod-detail-logo-part:only-child .prod-detail-logo-r{position:static;width:100%;height:auto;float:none;margin:0;padding:0}
.prod-detail-logo-l:has(img){margin-bottom:18px}.prod-detail-logo-l img,.prod-detail-logo-part:only-child .prod-detail-logo-l img{width:auto;height:auto;max-height:240px;object-fit:contain;display:block;margin:auto}
.prod-detail-logo-r p:first-child{font-size:20px;font-weight:600;color:var(--vl-ink);margin-bottom:12px}.prod-detail-logo-r p:nth-child(2){font-size:16px;line-height:1.85}
.struc-part{height:auto;position:static;background:var(--vl-soft);padding:40px 24px;display:flex;flex-direction:column;gap:28px;align-items:center}
.struc-part>img{position:static;z-index:auto;display:block;width:min(100%,1100px);height:auto;max-height:none;object-fit:contain;margin:0}
.struc-part-wenzi{position:static;width:min(100%,900px);height:auto;padding:0;margin:0;color:var(--vl-text);background:none;text-align:left}
.struc-part-wenzi p:first-child{font-size:24px;color:var(--vl-ink);margin:0 0 16px}.struc-part-wenzi p:nth-child(2){width:100%!important;font-size:16px!important;line-height:1.9!important;color:var(--vl-text)}
.tech-part-list,.tech-part-list2{display:flex;align-items:center;gap:32px;width:100%;height:auto;min-height:0;margin:0;padding:28px 0;border-bottom:1px solid var(--vl-line)}
.tech-part-list-l{position:static;float:none;width:40%;height:auto;flex-shrink:0}.tech-part-list-l img{display:block;width:100%;height:auto;max-height:360px;object-fit:contain}
.tech-part-list-l:not(:has(img)){display:none}.tech-part-list-r,.tech-part-list-no-image .tech-part-list-r{position:static;float:none;width:auto;height:auto;flex:1;padding:0;margin:0}
.tech-part-list-r p{padding-left:0!important;line-height:1.85}.tech-part-list-r p:first-child{font-size:21px;font-weight:600;color:var(--vl-ink);line-height:1.5!important;margin-bottom:14px;padding-top:0;padding-bottom:0}
.norms-part-table{width:100%;height:auto;overflow:auto;padding:0 0 24px}.norms-part-table table{width:100%!important;min-width:0;table-layout:fixed;font-size:16px;margin:0!important;border:1px solid var(--vl-line)}
.norms-part-table th,.norms-part-table td{padding:14px 18px;line-height:1.8;text-align:left;vertical-align:top;border:1px solid var(--vl-line);overflow-wrap:anywhere}.norms-part-table th,.norms-part-table tr:first-child{background:var(--vl-soft)}
.norms-part-table td:first-child{width:24%}
.news-detail-header,.solution-detail-header{width:min(900px,calc(100% - 48px));height:auto;min-height:0;margin:0 auto;padding:48px 0 28px;text-align:left}
.news-detail-header h1:nth-child(1),.solution-detail-header h1{font-size:34px;line-height:1.5;padding:0 0 20px;border-bottom:1px solid var(--vl-line);overflow-wrap:anywhere;color:var(--vl-ink)}
.news-detail-header time,.solution-detail-header time{display:block;font-size:14px;color:#748795;margin-top:14px}
.news-detail-part,.solution-detail-part{width:min(900px,calc(100% - 48px));height:auto;min-height:0;margin:0 auto;font-size:17px;line-height:1.95}
.news-detail-part p,.solution-detail-part p{margin:0 0 18px}.news-detail-part h2,.solution-detail-part h2{font-size:25px;margin:36px 0 16px}.news-detail-part h3,.solution-detail-part h3{font-size:20px;margin:24px 0 12px}
.news-detail-part figure,.solution-detail-part figure{margin:28px 0}.news-detail-part img,.solution-detail-part img{height:auto;border-radius:8px}.news-detail-part figcaption,.solution-detail-part figcaption{font-size:14px;color:#748795;line-height:1.7;margin-top:10px;text-align:center}
.news-detail-part ul,.news-detail-part ol,.solution-detail-part ul,.solution-detail-part ol{padding-left:1.5em;margin:16px 0 24px;list-style:revert}.news-detail-part li,.solution-detail-part li{margin:8px 0}
.detail-faq,.product-faq,.list-faq,.detail-service-contact,.detail-related-resources,.product-related-resources,.listing-intro{width:min(900px,calc(100% - 48px));height:auto;margin:28px auto!important;padding:24px!important;border-radius:10px;font-size:16px}
.detail-faq h2,.product-faq h2,.list-faq h2{font-size:23px;margin-bottom:18px}.detail-faq h3,.product-faq h3,.list-faq h3{font-size:18px;margin:22px 0 8px}.detail-faq p,.product-faq p,.list-faq p{margin-bottom:14px}
main.main{max-width:1200px;margin:auto}main.main>section ul{columns:2;padding-left:20px;list-style:disc}main.main>section h2{font-size:25px;margin-bottom:16px}main.main>section h3{font-size:20px;margin-bottom:12px}main.main>header h1{font-size:32px;margin-bottom:16px}main.main>section p{margin-bottom:16px}
.footer-main{display:flex;gap:32px;height:auto;min-height:0;padding:40px max(24px,calc((100vw - 1200px)/2));background:#153c51!important}.footer-l,.footer-mid,.footer-r{float:none;width:auto;height:auto;flex:1}.footer-contact{width:auto;margin:0}.footer-solution{height:auto;padding:0!important}.footer-weixin{margin:0 0 14px}.footer-main a{color:#d4e3ec}.footer-bottom{height:auto;line-height:1.8;padding:18px;background:#103044;font-size:13px}
@media(max-width:1000px){.header{padding:0 16px}.header .firstmenu{min-width:72px;padding:0 6px}.header .menu>ul>li{min-width:72px}.prod-detail-logo{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){
body{font-size:16px}.mb-header{height:68px;background:#5e5e5e}.mb-header .mb-bars{width:28px;height:22px;margin-right:20px}.mb-header .mb-bars b{width:28px}.mb-menu{top:68px;background:#5e5e5e;opacity:1;padding:20px;max-height:calc(100vh - 68px)}.mb-menu li>a{display:block;padding:10px 0}
.mb-header .mb-menu-show b:nth-child(1){width:28px;transform-origin:center;transform:translateY(10px) rotate(45deg)}
.mb-header .mb-menu-show b:nth-child(3){width:28px;transform-origin:center;transform:translateY(-10px) rotate(-45deg)}
.main>div:has(>.page){width:calc(100% - 32px)!important;display:flex;justify-content:center;gap:12px}.main>div>.page{float:none;margin:0;width:auto;padding:0 20px}
.service-tech-part-three-img>div{width:100%!important}
.prod-detail-header,.main>h2,.prod-detail-logo,.tech-part,.norms-part,.solution-list-part,.application-list-part,.sale-part,.aboutus-part-one,.aboutus-part-two,.aboutus-part-three{width:calc(100% - 32px)!important}
.prod-detail-header{gap:16px;padding:24px 0}.prod-detail-wenzi{font-size:25px}.menu3{width:100%}.menu3 ul li a{padding:8px 12px;font-size:14px}.prod-detail-logo{grid-template-columns:1fr;gap:16px;padding-bottom:28px}.prod-detail-logo-part{padding:20px}.struc-part{padding:28px 16px;gap:20px}
.tech-part-list,.tech-part-list2{flex-direction:column;gap:20px;padding:24px 0}.tech-part-list-l,.tech-part-list-r{width:100%}.tech-part-list-l img{max-height:none}.norms-part-table th,.norms-part-table td{padding:10px;font-size:14px}
.news-detail-header,.solution-detail-header,.news-detail-part,.solution-detail-part{width:calc(100% - 36px)!important}.news-detail-header,.solution-detail-header{padding:30px 0 24px}.news-detail-header h1:nth-child(1),.solution-detail-header h1{font-size:26px}.news-detail-part,.solution-detail-part{font-size:16px}.news-detail-part h2,.solution-detail-part h2{font-size:22px}.news-detail-part h3,.solution-detail-part h3{font-size:18px}
.detail-faq,.product-faq,.list-faq,.detail-service-contact,.detail-related-resources,.product-related-resources,.listing-intro{width:calc(100% - 32px)!important;padding:20px!important;margin:24px auto!important}
main.main>section ul{columns:1}.footer-main{flex-direction:column;padding:32px 20px;gap:24px}.footer-mid,.footer-r{width:100%;margin:0}.footer-contact{padding:0;width:100%;font-size:14px}.footer-bottom{padding:16px}
}
/* Preserve the original homepage palette without reverting layout fixes. */
body:has(.roll-lunbotu){color:#5e5e5e}
body:has(.roll-lunbotu) .header{background:#555}
body:has(.roll-lunbotu) .mb-header,body:has(.roll-lunbotu) .mb-menu{background:#5e5e5e}
body:has(.roll-lunbotu) .footer-main{background:#777!important}
body:has(.roll-lunbotu) .footer-bottom{background:#555}
body:has(.roll-lunbotu) .footer-main a{color:#fff}
body:has(.roll-lunbotu) .footer-solution p a{color:#fff}
body:has(.roll-lunbotu) .footer-solution p a:hover{color:#2b85e4}
body:has(.roll-lunbotu) .homepage-entry-heading h2{color:#15364c}
body:has(.roll-lunbotu) .homepage-faq-grid h3{color:#173f58}
/* Homepage cards must form rows regardless of individual text height. */
body:has(.roll-lunbotu) .application-out{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
body:has(.roll-lunbotu) .application-out:before,body:has(.roll-lunbotu) .application-out:after{display:none}
body:has(.roll-lunbotu) .application-main{float:none;width:100%;margin:0;min-width:0}
body:has(.roll-lunbotu) .application-main>div:first-child{width:100%;height:auto;aspect-ratio:38/25;overflow:hidden}
body:has(.roll-lunbotu) .application-main>div:first-child>img{display:block;width:100%;height:100%!important;object-fit:cover}
body:has(.roll-lunbotu) .application-main .maskText{width:100%;height:100%;margin:0;padding:16px;font-size:14px;line-height:1.7;overflow:auto}
body:has(.roll-lunbotu) .about-us-l h3{width:auto}
body:has(.roll-lunbotu) .about-us{display:flex;height:auto;align-items:stretch}
body:has(.roll-lunbotu) .about-us-l,body:has(.roll-lunbotu) .about-us-r{float:none;height:auto;min-width:0}
body:has(.roll-lunbotu) .about-us-l{padding:40px clamp(24px,5vw,80px)}
body:has(.roll-lunbotu) .about-us-pad{padding:0}
body:has(.roll-lunbotu) .about-us-l>div{line-height:2}
body:has(.roll-lunbotu) .about-us-r img{display:block;object-fit:cover}
@media(max-width:700px){
body:has(.roll-lunbotu) .news,body:has(.roll-lunbotu) .product,body:has(.roll-lunbotu) .application{width:calc(100% - 32px);margin-left:auto;margin-right:auto}
body:has(.roll-lunbotu) .application-out{grid-template-columns:1fr;gap:24px}
body:has(.roll-lunbotu) .prod-main{height:auto;margin-bottom:28px}
body:has(.roll-lunbotu) .prod-content{height:auto}
body:has(.roll-lunbotu) .about-us-l{width:100%;padding:32px 20px}
}
