/* October 2026: preserve the warm-white/copper system and improve reading and conversion. */
.service-hero,.service-section,.buyer-brief{padding:clamp(32px,5vw,64px) 0}
.service-hero,.buyer-brief{background:#f5f3ef;border-bottom:1px solid var(--border)}
.service-hero-grid{display:grid;grid-template-columns:1.05fr 1fr;align-items:center;gap:44px;margin-top:24px}
.service-hero h1{font-size:clamp(2rem,3.4vw,3.2rem);line-height:1.12;letter-spacing:-.025em;margin:16px 0 22px}
.service-lead{font-size:1.08rem;line-height:1.75;color:var(--muted);margin-bottom:24px}
.service-hero figure{margin:0;background:white;border:1px solid var(--border);border-radius:12px;overflow:hidden}
.service-hero figure img{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;display:block}
.service-hero figcaption{padding:14px 18px;font-size:.85rem;line-height:1.6;color:var(--muted)}
.service-section.alt{background:#f5f3ef}
.service-section h2,.buyer-brief h2{font-size:clamp(1.5rem,2.4vw,2.1rem);line-height:1.25;margin:10px 0 24px}
.service-section p,.buyer-brief p{line-height:1.8;color:var(--muted);margin:0 0 18px}
.service-card-grid,.service-example-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.service-card-grid article{padding:24px;background:white;border:1px solid var(--border);border-top:3px solid var(--orange);border-radius:8px}
.service-card-grid h3,.service-steps h3,.buyer-brief-grid h3{font-size:1.1rem;line-height:1.4;margin:0 0 12px}
.service-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;list-style:none;padding:0;counter-reset:step}
.service-steps li{padding:22px 0;border-top:1px solid var(--border);counter-increment:step}
.service-steps li::before{content:"0" counter(step);display:block;color:var(--orange);font-weight:700;margin-bottom:14px}
.service-two-col{display:grid;grid-template-columns:1fr 1fr;gap:48px}
.service-example{display:flex;flex-direction:column;background:white;border:1px solid var(--border);border-radius:10px;overflow:hidden;color:var(--ink)}
.service-example img{width:100%;height:220px;object-fit:contain;padding:18px;display:block;background:white}
.service-example h3{font-size:1.1rem;padding:16px 20px 8px;line-height:1.4}
.service-example span{font-size:.9rem;padding:0 20px 22px;color:var(--orange);margin-top:auto}
.service-faq details{padding:0 20px;margin:12px 0;border:1px solid var(--border);border-radius:8px}
.service-faq summary{font-weight:600;cursor:pointer;padding:18px 0;line-height:1.5}
.buyer-brief-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;margin-bottom:24px}
.buyer-brief-grid>div{border-top:2px solid var(--orange);padding-top:18px}
.buyer-brief .hero-actions{margin-top:24px}
.service-note{font-size:.9rem;margin-top:20px!important}
.service-hero .btn-ghost{color:var(--ink);border-color:var(--border-d)}
.mobile-contact{display:none}
.table-scroll{max-width:100%;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-color:var(--orange) #eee6da}
.table-scroll:focus-visible{outline:2px solid var(--orange);outline-offset:3px}
.article-main{min-width:0}.article-main p,.detail-copy p{max-width:78ch}
.article-main .article-note h2{font-size:1.3rem;line-height:1.35;margin:0 0 12px}
.article-main .library-links{line-height:1.6;gap:12px}
.cap-card{display:flex;flex-direction:column}.cap-card .text-link{margin-top:auto;padding-top:14px;font-size:.9rem}
.cat-hero-lead,.hero-lede{max-width:62ch}
.detail-photo img{transform:none;object-fit:contain}.catalog-example img,.sample-card img,.family-card img{object-fit:contain}
.trust-bar .trust-item .label,.trust-bar .trust-item>span{color:#c6beb2}
.section.dark .sec-sub,.section.dark .case-card p{color:#c6beb2}
.rfq-file-picker{min-height:46px}.rfq-file-names{overflow-wrap:anywhere}
[data-rfq-status]{overflow-wrap:anywhere;line-height:1.65;min-height:1.65em}
[data-rfq-status][data-state=error]{color:#9e2727!important}
[data-rfq-status][data-state=success]{color:#246535!important}
button:disabled{cursor:wait;opacity:.75}
.hero-actions .btn{white-space:normal;text-align:center;line-height:1.5}
.breadcrumb,.detail-breadcrumb{flex-wrap:wrap;gap:8px;line-height:1.6}
@media(max-width:1000px){
 .service-steps,.buyer-brief-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .service-hero-grid{gap:28px}.service-card-grid,.service-example-grid{gap:16px}
}
@media(max-width:700px){
 body{padding-bottom:calc(58px + env(safe-area-inset-bottom,0px))}
 .service-hero-grid,.service-two-col,.service-card-grid,.service-example-grid{grid-template-columns:1fr;gap:24px}
 .service-hero h1{font-size:2rem}.service-lead{font-size:1rem}
 .service-example img{height:240px}.service-steps,.buyer-brief-grid{gap:18px}
 .buyer-brief-grid h3{font-size:1rem}.buyer-brief-grid p{font-size:.92rem}
 .service-hero .hero-actions .btn,.buyer-brief .hero-actions .btn{width:100%;justify-content:center}
 .mobile-contact{display:grid;grid-template-columns:1.3fr 1fr 1fr;position:fixed;bottom:0;left:0;right:0;z-index:80;padding-bottom:env(safe-area-inset-bottom,0px);background:#fff;border-top:1px solid var(--border);box-shadow:0 -3px 14px #17130e0c}
 .mobile-contact a{display:flex;align-items:center;justify-content:center;min-height:52px;padding:10px 6px;font-size:.9rem;font-weight:600;color:var(--ink);border-right:1px solid var(--border)}
 .mobile-contact a:first-child{background:var(--orange);color:white}.mobile-contact a:last-child{border-right:0}
 .trust-item{padding:10px 8px}.article-layout{padding-left:18px;padding-right:18px}
 .library-links{display:flex;flex-wrap:wrap;gap:12px}.library-links a{line-height:1.6}
 .hero h1{font-size:clamp(2rem,8vw,2.7rem);line-height:1.12}
 .table-scroll table{font-size:.85rem}.detail-side{position:static}
}
@media(max-width:400px){.service-steps,.buyer-brief-grid{grid-template-columns:1fr}}

/* Certification wording follows each component's original type scale. */
.cert-token{white-space:nowrap}
.hero-cap .cert-pair{font-size:inherit;line-height:inherit;letter-spacing:inherit;text-align:right}
.hero-cap{gap:16px;align-items:flex-start}
.hero-cap .cert-pair .cert-token{display:inline}
.hero-stat .cert-pair{font-size:1rem;line-height:1.5;letter-spacing:0}
.hero-stat .cert-pair .cert-token{display:inline;font:inherit;color:inherit;letter-spacing:inherit;text-transform:none;margin:0}
.trust-item .num.cert-pair,.people-stat strong.cert-pair{font-size:1.05rem;line-height:1.5;letter-spacing:0}
.trust-item .num.cert-pair .cert-token,.people-stat strong.cert-pair .cert-token{display:inline;font:inherit;color:inherit;letter-spacing:inherit;margin:0}
.honor strong.cert-pair{font-size:.92rem;line-height:1.5}
.product-trust strong.cert-pair{line-height:1.5}
@media(max-width:700px){.hero-stat .cert-pair{font-size:.95rem}.trust-item .num.cert-pair,.people-stat strong.cert-pair{font-size:1rem}}

/* Share title and caption rows so mixed-length statistics stay aligned. */
.hero-stats-grid,.trust-grid,.people-stats{grid-template-rows:auto auto;row-gap:0}
.hero-stats-grid>.hero-stat,.trust-grid>.trust-item,.people-stats>.people-stat{display:grid;grid-template-rows:subgrid;grid-row:span 2;align-content:start}
.hero-stat>strong,.trust-item>.num,.trust-item>strong,.people-stat>strong{align-self:end}
.hero-stat>span,.trust-item>.label,.trust-item>span,.people-stat>span{align-self:start}
.hero-stat .cert-pair{font-size:1.15rem;line-height:1.35}
@media(max-width:700px){.hero-stat .cert-pair{font-size:.95rem}}

/* Use one type scale and caption gap across all four homepage statistics. */
.hero-stat>strong sup{line-height:0}
.hero-stat>strong,.hero-stat>strong.cert-pair{font-family:var(--serif);font-size:1.55rem;font-weight:500;line-height:1.35;letter-spacing:-.01em}
.hero-stat>span{margin-top:8px;line-height:1.5}
.hero-stat .cert-pair .cert-token{font:inherit;letter-spacing:inherit}
@media(max-width:700px){.hero-stat>strong,.hero-stat>strong.cert-pair{font-size:1.15rem}.hero-stat>span{margin-top:8px}}

/* Use one type scale and caption gap across all four homepage statistics. */
.hero-stat>strong,.hero-stat>strong.cert-pair{font-family:var(--serif);font-size:1.55rem;font-weight:500;line-height:1.35;letter-spacing:-.01em}
.hero-stat>span{margin-top:8px;line-height:1.5}
.hero-stat .cert-pair .cert-token{font:inherit;letter-spacing:inherit}
.trust-item .num.cert-pair{font-size:1.9rem;line-height:1.1;letter-spacing:-.03em}
.people-stat strong.cert-pair{font-size:1.8rem;line-height:1.1;letter-spacing:-.03em}
.trust-item>.label,.trust-item>span,.people-stat>span{margin-top:8px}
@media(max-width:700px){.hero-stat>strong,.hero-stat>strong.cert-pair{font-size:1.15rem}.hero-stat>span{margin-top:8px}}
