
:root {
  --coal:#17231d;
  --green:#43654b;
  --lime:#c5cf62;
  --cream:#f1f1e8;
  --white:#fff;
  --line:#c8cdc0;
  --text:#29352c;
  --rust:#a34736
}
* {
  box-sizing:border-box
}
body {
  margin:0;
  background:var(--cream);
  color:var(--text);
  font:15px/1.78 "Microsoft YaHei",sans-serif
}
a {
  color:var(--rust)
}
img {
  display:block;
  max-width:100%;
  height:auto
}
.zcp-mast {
  background:var(--coal);
  color:#fff;
  padding:14px max(24px,calc((100vw - 1180px)/2)) 0
}
.zcp-mast__brand {
  display:flex;
  align-items:baseline;
  gap:20px
}
.zcp-mast__brand>a {
  font:700 29px Georgia,serif;
  letter-spacing:.15em;
  color:var(--lime);
  text-decoration:none
}
.zcp-mast__brand span {
  color:#bcc7b8;
  font-size:12px;
  letter-spacing:.12em
}
.zcp-mast nav {
  display:flex;
  overflow:auto;
  white-space:nowrap;
  margin-top:13px;
  border-top:1px solid #485447
}
.zcp-mast nav a {
  padding:10px 12px;
  color:#e5eadf;
  font-size:13px;
  text-decoration:none;
  border-right:1px solid #354338
}
.zcp-mast nav a:hover {
  background:#2f4935;
  color:var(--lime)
}
main {
  max-width:1180px;
  margin:auto;
  padding:30px 24px 70px
}
.zcp-kicker {
  font-size:11px;
  letter-spacing:.19em;
  text-transform:uppercase;
  color:var(--rust)
}
.zcp-feature {
  display:grid;
  grid-template-columns:1.1fr .9fr;
  gap:36px;
  align-items:center;
  padding:18px 0 44px;
  border-bottom:2px solid var(--coal)
}
.zcp-feature h1,.zcp-inner h1 {
  font:clamp(31px,4vw,49px)/1.2 Georgia,serif;
  color:var(--coal);
  margin:7px 0 16px
}
.zcp-feature__copy>p:not(.zcp-kicker) {
  font:16px/2 Georgia,"Songti SC",serif
}
.zcp-feature__copy>a,.zcp-inner>a,.zcp-app a {
  display:inline-block;
  margin-top:12px;
  padding:9px 15px;
  background:var(--green);
  color:white;
  text-decoration:none
}
.zcp-feature figure {
  margin:0;
  padding:12px;
  background:white;
  border:1px solid var(--line);
  transform:rotate(.8deg)
}
.zcp-feature figure img {
  aspect-ratio:5/4;
  object-fit:cover
}
.zcp-feature figcaption {
  padding:8px 0 0;
  font-size:11px;
  color:#657264
}
.zcp-schedule {
  display:grid;
  grid-template-columns:230px 1fr;
  gap:25px;
  margin:35px 0;
  background:#fff;
  border:1px solid var(--line)
}
.zcp-schedule__head {
  padding:22px;
  background:var(--green);
  color:white
}
.zcp-schedule__head span,.zcp-score span {
  font-size:11px;
  letter-spacing:.16em;
  color:var(--lime)
}
.zcp-schedule h2,.zcp-score h2,.zcp-result h2,.zcp-news h2,.zcp-panels h2,.zcp-history h2,.zcp-faq h2,.zcp-app h2 {
  font:26px Georgia,serif;
  margin:6px 0
}
.zcp-schedule__head p {
  font-size:13px
}
.zcp-schedule ol {
  margin:0;
  padding:17px 20px 17px 42px;
  columns:2
}
.zcp-schedule li {
  break-inside:avoid;
  padding:7px 0;
  border-bottom:1px dotted var(--line);
  font-size:13px
}
.zcp-schedule time {
  display:inline-block;
  width:54px;
  color:var(--rust);
  font-variant-numeric:tabular-nums
}
.zcp-schedule b {
  display:inline-block;
  width:95px
}
.zcp-score {
  display:grid;
  grid-template-columns:1fr 270px;
  gap:28px;
  align-items:center;
  background:#dfe6d7;
  padding:24px 30px
}
.zcp-score img {
  width:100%;
  aspect-ratio:4/3;
  object-fit:cover
}
.zcp-score p {
  max-width:75ch
}
.zcp-fixture {
  display:grid;
  grid-template-columns:200px 1fr 180px;
  gap:22px;
  align-items:center;
  margin:30px 0;
  padding:20px 0;
  border-bottom:1px solid var(--line)
}
.zcp-fixture h2 {
  font-size:21px
}
.zcp-fixture p {
  margin:4px 0;
  font-size:13px
}
.zcp-fixture img {
  width:100%;
  aspect-ratio:4/3;
  object-fit:cover
}
.zcp-result {
  padding:28px;
  background:var(--coal);
  color:#e9eee4
}
.zcp-result h2 {
  color:white
}
.zcp-fieldbar {
  display:grid;
  grid-template-columns:repeat(4,1fr);
  margin:14px 0 10px
}
.zcp-fieldbar span {
  text-align:center;
  padding:9px;
  background:#304239;
  border-right:1px solid #536153;
  color:var(--lime);
  font-size:13px
}
.zcp-result p {
  max-width:90ch
}
.zcp-news {
  margin-top:38px
}
.zcp-news header,.zcp-panels header {
  display:flex;
  justify-content:space-between;
  align-items:end;
  border-bottom:2px solid var(--coal);
  margin-bottom:14px
}
.zcp-news header>div>span,.zcp-panels header>span {
  font-size:11px;
  color:var(--rust);
  letter-spacing:.17em
}
.zcp-news header>a {
  text-decoration:none
}
.zcp-news>div {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:13px
}
.zcp-news article {
  background:#fff;
  padding:15px;
  border-top:4px solid var(--green)
}
.zcp-news article:nth-child(3n+1) {
  grid-column:span 2;
  background:#e3e8dd
}
.zcp-news time {
  font-size:10px;
  color:#687369
}
.zcp-news h3 {
  font:18px Georgia,serif;
  margin:6px 0
}
.zcp-news article p {
  font-size:13px;
  margin:0
}
.zcp-panels {
  margin-top:40px
}
.zcp-panels>div {
  display:grid;
  grid-template-columns:1fr 1.1fr .9fr;
  gap:12px
}
.zcp-panel {
  background:#e0e5d9;
  padding:18px;
  border-bottom:3px solid var(--green)
}
.zcp-panel:nth-child(2) {
  transform:translateY(15px);
  background:#fff
}
.zcp-panel span {
  font:13px Georgia,serif;
  color:var(--rust)
}
.zcp-panel h3 {
  font:19px Georgia,serif;
  margin:5px 0
}
.zcp-panel p {
  font-size:13px;
  margin:0
}
.zcp-history {
  display:grid;
  grid-template-columns:110px 1fr 180px;
  gap:22px;
  align-items:start;
  margin-top:55px;
  padding:22px 0;
  border-top:1px solid var(--line)
}
.zcp-history__stamp {
  font:20px/1.3 Georgia,serif;
  color:var(--rust);
  border-left:4px solid var(--lime);
  padding:5px 12px
}
.zcp-history p {
  margin:0
}
.zcp-history img {
  width:100%;
  aspect-ratio:4/3;
  object-fit:cover
}
.zcp-faq {
  margin-top:35px;
  padding:24px;
  background:#fff;
  border:1px solid var(--line)
}
.zcp-faq>div {
  columns:2;
  column-gap:30px
}
.zcp-faq details {
  break-inside:avoid;
  border-top:1px solid var(--line);
  padding:12px 3px
}
.zcp-faq summary {
  font-weight:700;
  color:var(--green);
  cursor:pointer
}
.zcp-faq details p {
  font-size:13px
}
.zcp-app {
  display:grid;
  grid-template-columns:1fr 220px;
  gap:25px;
  align-items:center;
  margin-top:34px;
  padding:22px;
  background:#dce5d5
}
.zcp-app img {
  width:100%;
  aspect-ratio:4/3;
  object-fit:cover
}
.zcp-inner {
  padding:20px 0
}
.zcp-inner>p,.zcp-inner header>p {
  max-width:85ch
}
.zcp-article-list {
  border-top:2px solid var(--coal);
  margin-top:24px
}
.zcp-article-list article {
  max-width:920px;
  border-bottom:1px solid var(--line);
  padding:17px 0
}
.zcp-article-list time {
  font-size:11px;
  color:#67736a
}
.zcp-article-list h2 {
  font:22px Georgia,serif;
  margin:4px 0 8px
}
.zcp-article-list p {
  margin:0
}
.zcp-lines {
  margin:25px 0;
  border-top:2px solid var(--coal)
}
.zcp-lines>div {
  display:grid;
  grid-template-columns:90px 190px 1fr;
  gap:12px;
  padding:12px;
  border-bottom:1px solid var(--line);
  background:white
}
.zcp-lines time {
  color:var(--rust)
}
.zcp-data aside {
  display:grid;
  grid-template-columns:180px 1fr 220px;
  gap:20px;
  align-items:center;
  background:#dfe6d7;
  padding:17px
}
.zcp-data aside p {
  margin:0
}
.zcp-data aside img {
  width:100%;
  aspect-ratio:4/3;
  object-fit:cover
}
.zcp-about-grid,.zcp-app-cards {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:18px;
  margin:24px 0
}
.zcp-about-grid section,.zcp-app-cards article {
  padding:20px;
  background:white;
  border-left:4px solid var(--lime)
}
.zcp-about-grid p,.zcp-app-cards p {
  margin:0
}
.zcp-index {
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:14px;
  margin:25px 0
}
.zcp-index article {
  padding:18px;
  background:white;
  border:1px solid var(--line);
  border-top:4px solid var(--green)
}
.zcp-index h2 {
  font:20px Georgia,serif;
  margin:0 0 8px
}
.zcp-index p {
  font-size:14px;
  margin:0
}
.zcp-data header {
  margin-bottom:20px
}
.zcp-data aside {
  margin-top:20px
}
.zcp-foot {
  background:var(--coal);
  color:#d5ddd2;
  padding:20px max(24px,calc((100vw - 1180px)/2));
  font-size:12px
}
.zcp-foot p {
  margin:3px 0
}
.zcp-foot p:first-child {
  font-size:11px;
  color:#bac5b8
}
.zcp-foot a {
  color:var(--lime);
  margin-right:15px
}
@media(max-width:850px) {
  main {
  padding:22px 17px 50px
}
.zcp-feature,.zcp-score,.zcp-history,.zcp-app,.zcp-data aside {
  grid-template-columns:1fr
}
.zcp-schedule {
  grid-template-columns:1fr
}
.zcp-schedule ol {
  columns:1
}
.zcp-fixture {
  grid-template-columns:1fr 1.5fr
}
.zcp-fixture img {
  display:none
}
.zcp-news>div {
  grid-template-columns:repeat(2,1fr)
}
.zcp-news article:nth-child(3n+1) {
  grid-column:auto
}
.zcp-news article:first-child {
  grid-column:span 2
}
.zcp-panels>div {
  grid-template-columns:1fr 1fr
}
.zcp-panel:nth-child(2) {
  transform:none
}
.zcp-history img {
  max-width:300px
}
.zcp-app img {
  max-width:300px
}

}
@media(max-width:520px) {
  .zcp-mast {
  padding-inline:14px
}
.zcp-mast__brand {
  align-items:flex-start;
  flex-direction:column;
  gap:0
}
.zcp-mast nav a {
  padding:9px 10px
}
main {
  padding-inline:14px
}
.zcp-schedule ol {
  padding-left:28px
}
.zcp-schedule b {
  width:80px
}
.zcp-fixture {
  grid-template-columns:1fr
}
.zcp-news>div,.zcp-panels>div,.zcp-about-grid,.zcp-app-cards,.zcp-index {
  grid-template-columns:1fr
}
.zcp-news article:first-child {
  grid-column:auto
}
.zcp-faq>div {
  columns:1
}
.zcp-fieldbar {
  grid-template-columns:1fr 1fr
}
.zcp-lines>div {
  grid-template-columns:62px 1fr;
  font-size:13px
}
.zcp-lines>div span {
  grid-column:2
}
.zcp-data aside {
  grid-template-columns:1fr
}

}

/* Keep the supplied 128px image-pool assets at or below their source size. */
html body img {
  max-width:128px !important;
  max-height:128px !important;
  object-fit:contain !important;
}
