/* ultra-kaiyungroup.com.cn — runway archive in deep violet and silver */
:root {
  --ultra-night: #211b32;
  --ultra-violet: #51476d;
  --ultra-silver: #b9b6c2;
  --ultra-paper: #f4f2f7;
  --ultra-ink: #272433;
  --ultra-rule: #d7d4df;
  --ultra-width: 1300px;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; background: var(--ultra-paper); color: var(--ultra-ink); font-family: "Noto Serif CJK SC", "Songti SC", serif; line-height: 1.85; }
a { color: inherit; text-underline-offset: 4px; }
img { display: block; width: 100%; height: auto; }
figure { margin: 0; }
.ultra-brandhead, .ultra-nav, .ultra-main, .ultra-footer { width: min(calc(100% - 52px), var(--ultra-width)); margin-inline: auto; }
.ultra-brandhead { display: flex; align-items: baseline; justify-content: space-between; padding: 29px 0 18px; border-bottom: 1px solid var(--ultra-rule); }
.ultra-wordmark { color: var(--ultra-night); font: 700 23px Arial, sans-serif; letter-spacing: .22em; text-decoration: none; }
.ultra-brandnote { margin: 0; color: var(--ultra-violet); font-size: 13px; }
.ultra-nav { display: flex; flex-wrap: wrap; gap: 9px 19px; padding: 14px 0 18px; border-bottom: 1px solid var(--ultra-rule); font: 12px Arial, "Microsoft YaHei", sans-serif; }
.ultra-nav a { text-decoration: none; white-space: nowrap; }
.ultra-nav a:hover { color: #7a659c; }
.ultra-main { padding: 30px 0 92px; }
.ultra-main > h1 { max-width: 930px; margin: 0 0 22px; color: var(--ultra-night); font-size: clamp(35px, 5vw, 64px); font-weight: 500; line-height: 1.22; letter-spacing: -.035em; }
.ultra-stage-cover { display: grid; grid-template-columns: minmax(0, .95fr) minmax(360px, 1.05fr); gap: 38px; align-items: stretch; min-height: 470px; padding: 12px 0 30px; border-bottom: 1px solid var(--ultra-silver); }
.ultra-stage-copy { align-self: center; max-width: 620px; }
.ultra-stage-copy h2 { margin: 0 0 12px; color: var(--ultra-violet); font-size: 23px; font-weight: 500; }
.ultra-stage-copy p { margin: 0; font-size: 16px; line-height: 2; }
.ultra-stage-art { display: flex; align-items: stretch; background: #e8e5ee; padding: 11px; }
.ultra-cover-photo { width: 100%; max-height: 440px; overflow: hidden; }
.ultra-cover-photo img { height: 100%; max-height: 440px; object-fit: cover; }
.ultra-stage-caption { display: flex; justify-content: space-between; padding: 14px 0 20px; color: var(--ultra-violet); font: 11px Arial, sans-serif; letter-spacing: .16em; }
.ultra-archive-flow { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: 0 27px; }
.ultra-archive-section { grid-column: 1 / -1; display: grid; grid-template-columns: minmax(155px, .36fr) minmax(0, 1.64fr); gap: 30px; padding: 30px 0 34px; border-top: 1px solid var(--ultra-rule); }
.ultra-section-timeline, .ultra-section-brands, .ultra-section-features { grid-column: 2 / -1; }
.ultra-archive-section > header { color: var(--ultra-violet); font-size: 13px; }
.ultra-section-copy { display: flow-root; }
.ultra-section-copy h2 { margin: 0 0 11px; color: var(--ultra-night); font-size: 22px; font-weight: 500; }
.ultra-section-copy > p { margin: 0; max-width: 880px; font-size: 15px; }
.ultra-section-art { float: right; width: min(28%, 210px); margin: 0 0 13px 22px; padding: 8px; background: #e8e5ee; }
.ultra-faq-section { grid-template-columns: minmax(155px, .36fr) minmax(0, 1.64fr); }
.ultra-faq-section > header h2 { margin: 0; color: var(--ultra-night); font-size: 22px; font-weight: 500; }
.ultra-faq-fold { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 22px; }
.ultra-faq-card, .ultra-faq-more { padding: 12px 0; border-bottom: 1px solid var(--ultra-rule); }
.ultra-faq-card summary, .ultra-faq-more > summary { list-style: none; cursor: pointer; color: var(--ultra-night); font-size: 14px; }
.ultra-faq-card summary::-webkit-details-marker, .ultra-faq-more > summary::-webkit-details-marker { display: none; }
.ultra-faq-card p { margin: 9px 0 0; color: #625e6d; font-size: 12px; }
.ultra-faq-more { grid-column: 1 / -1; }
.ultra-news-rail { padding: 30px 0 10px; border-top: 2px solid var(--ultra-night); }
.ultra-news-rail > header { display: flex; align-items: baseline; justify-content: space-between; border-bottom: 1px solid var(--ultra-rule); }
.ultra-news-rail h2 { margin: 0 0 12px; color: var(--ultra-night); font-size: 24px; font-weight: 500; }
.ultra-news-rail header p { margin: 0; color: var(--ultra-violet); font-size: 12px; }
.ultra-headline-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 30px; }
.ultra-headline { padding: 16px 0 20px; border-bottom: 1px solid var(--ultra-rule); }
.ultra-headline time, .ultra-story-sequence time { color: var(--ultra-violet); font: 11px Arial, sans-serif; }
.ultra-headline h3 { margin: 6px 0 8px; font-size: 17px; font-weight: 500; }
.ultra-headline p { margin: 0; font-size: 13px; line-height: 1.8; }
.ultra-headline a { display: inline-block; margin-top: 7px; color: var(--ultra-violet); font: 11px Arial, sans-serif; }
.ultra-news-mast { display: grid; grid-template-columns: minmax(260px, .7fr) minmax(0, 1.3fr); gap: 34px; align-items: center; padding-bottom: 25px; border-bottom: 2px solid var(--ultra-night); }
.ultra-news-cover { padding: 10px; background: #e8e5ee; }
.ultra-news-mast > p { margin: 0; color: var(--ultra-violet); font-size: 16px; }
.ultra-story-stack { margin-left: 72px; border-left: 1px solid var(--ultra-silver); }
.ultra-story { display: grid; grid-template-columns: 64px minmax(0, 1fr); gap: 24px; padding: 23px 0; border-bottom: 1px solid var(--ultra-rule); }
.ultra-story-sequence { display: flex; flex-direction: column; gap: 8px; color: var(--ultra-violet); }
.ultra-story-sequence span { font: 17px Arial, sans-serif; }
.ultra-story-body { min-width: 0; }
.ultra-story-photo { float: right; width: min(24%, 190px); margin: 0 0 12px 18px; }
.ultra-story-body h2 { margin: 0 0 7px; color: var(--ultra-night); font-size: 19px; font-weight: 500; }
.ultra-story-body p { margin: 0; font-size: 14px; }
.ultra-page-preamble { display: grid; grid-template-columns: minmax(220px, .62fr) minmax(0, 1.38fr); gap: 35px; align-items: center; margin-bottom: 34px; }
.ultra-page-preamble > div { padding: 10px; background: #e8e5ee; }
.ultra-page-preamble span { color: var(--ultra-violet); font: 11px Arial, sans-serif; letter-spacing: .16em; }
.ultra-page-preamble h2 { margin: 5px 0 10px; color: var(--ultra-night); font-size: 18px; font-weight: 500; }
.ultra-page-preamble > p { margin: 0; font-size: 15px; }
.ultra-reference-list { display: flex; flex-direction: column; }
.ultra-reference-card { display: grid; grid-template-columns: minmax(165px, .44fr) minmax(0, 1.56fr); gap: 28px; align-items: center; padding: 22px 0; border-top: 1px solid var(--ultra-rule); }
.ultra-reference-card:nth-child(even) { grid-template-columns: minmax(0, 1.56fr) minmax(165px, .44fr); }
.ultra-reference-card:nth-child(even) .ultra-reference-photo { order: 2; }
.ultra-reference-photo { padding: 7px; background: #e8e5ee; }
.ultra-reference-card h2 { margin: 0 0 7px; color: var(--ultra-violet); font-size: 18px; font-weight: 500; }
.ultra-reference-card p { margin: 0; font-size: 14px; }
.ultra-film-strip { display: flex; gap: 13px; overflow: hidden; margin-top: 23px; padding-top: 18px; border-top: 1px solid var(--ultra-rule); }
.ultra-film-frame { flex: 1 1 0; min-width: 0; padding: 7px; background: #e8e5ee; }
.ultra-footer { display: grid; grid-template-columns: 1fr 2fr; gap: 7px 24px; padding: 26px 0 40px; border-top: 2px solid var(--ultra-violet); font: 12px/1.8 Arial, "Microsoft YaHei", sans-serif; }
.ultra-footer-mark { grid-row: 1 / span 2; color: var(--ultra-night); font: 700 20px Arial, sans-serif; letter-spacing: .17em; }
.ultra-footer address { font-style: normal; }
.ultra-footer p { margin: 0; }
.ultra-footer > p:last-child { grid-column: 1 / -1; }
@media (max-width: 760px) {
  .ultra-brandhead, .ultra-nav, .ultra-main, .ultra-footer { width: min(calc(100% - 28px), var(--ultra-width)); }
  .ultra-stage-cover { grid-template-columns: 1fr; gap: 18px; min-height: auto; }
  .ultra-stage-art { max-height: 300px; }
  .ultra-cover-photo img { max-height: 280px; object-fit: contain; }
  .ultra-archive-section, .ultra-faq-section { grid-column: 1 / -1; grid-template-columns: 1fr; gap: 10px; padding: 23px 0; }
  .ultra-section-art { width: 38%; }
  .ultra-faq-fold, .ultra-headline-grid { grid-template-columns: 1fr; }
  .ultra-news-rail > header { align-items: flex-start; flex-direction: column; }
  .ultra-news-mast, .ultra-story, .ultra-page-preamble, .ultra-reference-card, .ultra-reference-card:nth-child(even) { grid-template-columns: 1fr; gap: 14px; }
  .ultra-story-stack { margin-left: 12px; }
  .ultra-story { padding-left: 16px; }
  .ultra-reference-card:nth-child(even) .ultra-reference-photo { order: 0; }
  .ultra-film-strip { overflow-x: auto; }
  .ultra-film-frame { min-width: 38%; }
  .ultra-footer { grid-template-columns: 1fr; }
  .ultra-footer-mark { grid-row: auto; }
  .ultra-footer > p:last-child { grid-column: auto; }
}

/* Homepage repair: archive ledger with alternating image margins */
.ultra-archive-flow { display: grid; grid-template-columns: repeat(10, minmax(0, 1fr)); gap: 0 28px; }
.ultra-archive-flow > .ultra-archive-section { grid-column: 1 / span 6; display: grid; grid-template-columns: minmax(0, 1fr) minmax(150px, .55fr); gap: 22px; padding: 28px 0; border-bottom: 1px solid rgba(255,255,255,.2); }
.ultra-archive-flow > .ultra-archive-section:nth-child(even) { grid-column: 5 / span 6; }
.ultra-archive-flow > .ultra-archive-section:nth-child(even) .ultra-section-art { order: -1; }
.ultra-archive-flow > .ultra-faq-section { grid-column: 1 / -1; }
@media (max-width: 760px) { .ultra-archive-flow { display: block; } .ultra-archive-flow > .ultra-archive-section { display: block; } }

/* FAQ repair layout */
.ultra-kaiyungroup-com-cn-faq-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px 24px; } .ultra-kaiyungroup-com-cn-faq-entry { padding:18px; background:rgba(255,255,255,.045); }
@media (max-width: 760px) { .ultra-kaiyungroup-com-cn-faq-list { grid-template-columns:1fr; } }
