/* @author ZQ — Production single-line headline and restrained principle signature. */
.v6-home-hero .v20-hero-copy h1.v20-headline {
  display:block;
  margin:0;
  block-size:1.55em;
  min-block-size:1.55em;
  font-family:var(--font-display,'Songti SC','STSong','SimSun',serif);
  font-size:clamp(32px,3.3vw,52px);
  font-weight:600;
  line-height:1.55;
  letter-spacing:0;
  white-space:nowrap;
  color:#f3f8ff;
}
.v20-headline .v20-headline-text {
  display:inline;
  white-space:inherit;
  color:inherit;
}
.v20-headline .v20-headline-caret {
  display:inline-block;
  width:2px;
  height:.84em;
  margin-left:.10em;
  vertical-align:-.015em;
  border:0;
  border-radius:1px;
  background:#a4d5ff;
  visibility:hidden;
  opacity:.86;
}
.v20-headline[data-typewriter-ready="true"] .v20-headline-caret {
  visibility:visible;
  animation:v20-copy-caret 1.1s steps(1,end) infinite;
}
.v20-headline[data-typewriter-running="false"] .v20-headline-caret {
  animation-play-state:paused;
}
.v20-headline:is([data-typewriter-phase="typing"],[data-typewriter-phase="deleting"]) .v20-headline-caret {
  animation:none;
  opacity:.86;
}
.v20-hero-copy .v20-hero-principles {
  display:grid;
  grid-template-columns:repeat(3,max-content);
  column-gap:clamp(30px,3.1vw,48px);
  align-items:start;
  margin:32px 0 39px;
  padding:0;
  list-style:none;
}
.v20-hero-principles>li {
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:12px;
  margin:0;
  padding:0;
  min-width:60px;
  color:#c6d9ef;
  background:none;
  border:0;
  font-family:var(--font-text,'PingFang SC','Microsoft YaHei',sans-serif);
  font-size:14px;
  font-weight:500;
  line-height:1.6;
  letter-spacing:.03em;
  white-space:nowrap;
}
.v20-hero-principles .v20-principle-icon {
  display:block;
  flex:none;
  width:32px;
  height:32px;
  min-width:32px;
  max-width:none;
  aspect-ratio:1;
  fill:currentColor;
  color:#a0ccf8;
}
@keyframes v20-copy-caret { 50% { opacity:.18; } }
@media(max-width:1080px) and (min-width:721px) {
  .v6-home-hero .v20-hero-copy h1.v20-headline { font-size:clamp(28px,3.8vw,38px); }
  .v20-hero-copy .v20-hero-principles { column-gap:27px;margin:27px 0 32px; }
  .v20-hero-principles>li { min-width:56px;font-size:13px;gap:11px; }
}
@media(max-width:720px) {
  .v6-home-hero .v20-hero-copy h1.v20-headline { font-size:clamp(26px,8vw,40px); }
  .v20-hero-copy .v20-hero-principles { column-gap:clamp(28px,8vw,40px);margin:24px 0 30px; }
  .v20-hero-principles>li { min-width:58px;font-size:13px;gap:10px; }
}
@media(max-width:380px) {
  .v6-home-hero .v20-hero-copy .v4-hero-actions {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px;
  }
  .v6-home-hero .v20-hero-copy .v4-hero-actions .button {
    width:auto;
    min-width:0;
    padding-inline:10px;
    gap:8px;
    font-size:12px;
  }
}

/* Keep the approved short-line scale while fitting all accepted ten-character headlines. */
.v20-hero-copy { container-type:inline-size; }
.v20-headline[data-headline-length="2"] { --headline-chars:2; }
.v20-headline[data-headline-length="3"] { --headline-chars:3; }
.v20-headline[data-headline-length="4"] { --headline-chars:4; }
.v20-headline[data-headline-length="5"] { --headline-chars:5; }
.v20-headline[data-headline-length="6"] { --headline-chars:6; }
.v20-headline[data-headline-length="7"] { --headline-chars:7; }
.v20-headline[data-headline-length="8"] { --headline-chars:8; }
.v20-headline[data-headline-length="9"] { --headline-chars:9; }
.v20-headline[data-headline-length="10"] { --headline-chars:10; }
@supports (font-size:1cqi) {
 .v6-home-hero .v20-hero-copy h1.v20-headline { font-size:min(clamp(32px,3.3vw,52px),calc((100cqi - 8px) / var(--headline-chars,10))); }
 @media(max-width:1080px) and (min-width:721px) { .v6-home-hero .v20-hero-copy h1.v20-headline { font-size:min(clamp(28px,3.8vw,38px),calc((100cqi - 8px) / var(--headline-chars,10))); } }
 @media(max-width:720px) { .v6-home-hero .v20-hero-copy h1.v20-headline { font-size:min(clamp(26px,8vw,40px),calc((100cqi - 8px) / var(--headline-chars,10))); } }
}
.v20-hero-copy .v20-hero-principles { display:flex; flex-wrap:wrap; row-gap:20px; }
