/* Company, catalogue and update pages. Rows and cells reach the frame and share hairlines. */
.sp-hero{padding:0 0 56px}
.sp-hero .lead{max-width:640px}

.sp-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-inline:calc(var(--pad) * -1);border-top:1px solid var(--line)}
.sp-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}
.sp-card{display:flex;flex-direction:column;gap:10px;min-width:0;padding:28px var(--pad);border-right:1px solid var(--line);border-bottom:1px solid var(--line);color:var(--ink);text-decoration:none}
.sp-grid > :nth-child(3n){border-right:0}
.sp-grid.two > :nth-child(odd){border-right:1px solid var(--line)}
.sp-grid.two > :nth-child(even){border-right:0}
a.sp-card:hover{background:var(--soft);color:var(--ink)}
.sp-card b,.sp-card h3{margin:0;font-size:18px;font-weight:500;line-height:1.3;letter-spacing:-.01em}
:lang(zh) .sp-card b,:lang(zh) .sp-card h3{letter-spacing:0}
.sp-card span,.sp-card p{margin:0;font-size:15px;line-height:1.55;color:var(--muted)}
.sp-card .actions{margin:auto 0 0;padding-top:12px}
.sp-card pre{margin:4px 0 0;padding:16px;font-size:12.5px;line-height:1.6;white-space:pre-wrap;overflow-wrap:anywhere}

.sp-rows{margin-inline:calc(var(--pad) * -1);border-top:1px solid var(--line)}
.sp-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:24px clamp(32px,5vw,96px);padding:56px var(--pad);border-bottom:1px solid var(--line)}
.sp-row:last-child{border-bottom:0}
.sp-row > div > *:last-child{margin-bottom:0}
.sp-row h2{margin:0}
.sp-label{margin-bottom:14px}
.sp-row p{max-width:72ch;margin:0 0 16px}
.sp-more summary{font-size:14.5px;font-weight:500;cursor:pointer}
.sp-more[open] summary{margin-bottom:12px}
.sp-row li{margin-bottom:8px}
.sp-pillars{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 32px;margin-top:28px}
.sp-pillars b{display:block;font-size:16px;font-weight:500;line-height:1.35}
.sp-pillars span{display:block;margin-top:4px;font-size:15px;line-height:1.55;color:var(--muted)}
.sp-values{margin:0;padding:0;list-style:none}
.sp-values li{margin:0;padding:20px 0;border-top:1px solid var(--line)}
.sp-values li:first-child{padding-top:0;border-top:0}
.sp-values li:last-child{padding-bottom:0}
.sp-values b{display:block;font-size:16px;font-weight:500;line-height:1.35}
.sp-values span{display:block;margin-top:4px;line-height:1.6;color:var(--muted)}
.sp-tools{display:flex;flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none}
.sp-tools li{margin:0;padding:4px 10px;border:1px solid var(--line);border-radius:4px;font:500 12.5px/1.5 var(--mono)}

.sp-section{margin-inline:calc(var(--pad) * -1);padding:56px var(--pad);border-top:1px solid var(--line)}
.sp-section:has(> .sp-grid:last-child),.sp-section:has(> .sp-models + .sp-older){padding-bottom:0}
.sp-grid + .sp-section{border-top:0}
.sp-section > p{max-width:640px;color:var(--muted)}
.sp-models{display:grid;margin-inline:calc(var(--pad) * -1);border-top:1px solid var(--line)}
.sp-model{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 24px;padding:22px var(--pad);border-bottom:1px solid var(--line)}
.sp-model h3{margin:0}
.sp-model h3 a{color:var(--ink);text-decoration:none}
.sp-model h3 a:hover{color:var(--accent)}
.sp-model .sp-meta{justify-self:end;align-self:center;font:500 12px/1.5 var(--mono);color:var(--muted);white-space:nowrap}
.sp-model p{grid-column:1/-1;margin:0;font-size:15px;line-height:1.55;color:var(--muted)}
.sp-model .sp-links{display:flex;flex-wrap:wrap;gap:6px 16px;font-size:14px}
.sp-older summary{padding:18px 0;font-size:14.5px;font-weight:500;cursor:pointer}
.sp-older[open] summary{padding-bottom:18px}
.sp-older:not([open]) + *{margin-top:0}

.sp-log{margin:0 calc(var(--pad) * -1);padding:0;list-style:none;border-top:1px solid var(--line)}
.sp-log li{display:grid;grid-template-columns:104px 84px minmax(0,1fr);gap:4px 20px;margin:0;padding:20px var(--pad);border-bottom:1px solid var(--line)}
.sp-log li:last-child{border-bottom:0}
.sp-log time{font:500 12px/1.9 var(--mono);color:var(--muted)}
.sp-log .sp-tag{font:500 11.5px/2 var(--mono);text-transform:uppercase;letter-spacing:.06em;color:var(--accent)}
.sp-log a{font-size:16px;font-weight:500;line-height:1.35;color:var(--ink);text-decoration:none}
.sp-log a:hover{color:var(--accent)}
.sp-log p{margin:4px 0 0;max-width:72ch;font-size:15px;line-height:1.55;color:var(--muted)}

.sp-doc{max-width:720px}
.sp-doc section{margin:0 0 40px}
.sp-doc h2{margin-bottom:12px}
.sp-doc p{margin:0 0 14px}
.sp-section.sp-doc{max-width:none}
.sp-section.sp-doc > *{max-width:720px}
@media(max-width:860px){
  .sp-grid,.sp-grid.two{grid-template-columns:minmax(0,1fr)}
  .sp-grid > *,.sp-grid.two > *{border-right:0}
  .sp-row{grid-template-columns:minmax(0,1fr);padding-block:40px}
  .sp-log li{grid-template-columns:100px minmax(0,1fr)}
  .sp-log li > div{grid-column:1/-1}
}
@media(max-width:560px){
  .sp-pillars{grid-template-columns:minmax(0,1fr)}
  .sp-model{grid-template-columns:minmax(0,1fr)}
  .sp-model .sp-meta{justify-self:start}
}
