/* 首页首屏，对照 hifi361-新首页.html 的 .hero。 */

.hires-home-hero {
  --red: #C9002B;
  --gold: #F6B800;
  --red-d: #A00025;
  --bg: #FFFFFF;
  --warm: #FFF9F1;
  --ink: #161616;
  --ink2: #64615E;
  --line: #E7E0D8;
  --sans: system-ui, -apple-system, "Segoe UI", "PingFang SC", "Microsoft YaHei", sans-serif;
  --mono: ui-monospace, "Cascadia Mono", "Segoe UI Mono", Consolas, monospace;
  --r-btn: 4px;
  --shadow-red: 0 26px 48px -30px rgba(160, 0, 37, .42);
  --ease: cubic-bezier(.2, .8, .2, 1);
  --w: 1488px;
  position: relative !important;
  isolation: isolate;
  z-index: 0;
  overflow: hidden;
  width: 100%;
  max-width: 100%;
  height: 631px;
  margin-left: 0;
  margin-right: 0;
  min-width: 0;
  display: flex;
  flex-direction: column;
  background: var(--warm);
  color: var(--ink);
  font-family: var(--sans);
  font-size: 15px;
  line-height: 1.55;
}
.hires-home-hero,
.hires-home-hero * { box-sizing: border-box; }
.hires-home-hero h1,
.hires-home-hero p,
.hires-home-hero dl,
.hires-home-hero dt,
.hires-home-hero dd { margin: 0; padding: 0; }
.hires-home-hero button,
.hires-home-hero input { font: inherit; color: inherit; background: none; border: 0; }
.hires-home-hero button { cursor: pointer; }
.hires-home-hero a { color: inherit; text-decoration: none; }
.hires-home-hero svg { display: block; flex: none; max-width: none; }
.hires-home-hero .sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
.hires-home-hero .wrap { width: 100%; max-width: var(--w); margin: 0 auto; padding-left: 24px; padding-right: 24px; background: transparent !important; }
.hires-home-hero .stage { position: absolute !important; left: 0 !important; top: 0 !important; z-index: 0 !important; display: block !important; width: 100% !important; height: 100% !important; max-width: none !important; max-height: none !important; pointer-events: none; }
.hires-home-hero .hero-in { position: relative; z-index: 1; flex: 1; min-height: 0; display: flex; flex-direction: column; align-items: center; text-align: center; padding-top: 36px; padding-bottom: 18px; background: transparent !important; }

@keyframes hiresHeroUp { from { opacity: 0; transform: translateY(22px); } }
@keyframes hiresHeroRise { from { transform: translateY(112%); } }
.hires-home-hero .a-up { animation: hiresHeroUp .9s var(--ease) backwards; animation-delay: var(--d, 0ms); }

.hires-home-hero .eyebrow { display: flex; align-items: center; justify-content: center; gap: 10px; font: 700 12px/1.5 var(--mono); letter-spacing: .2em; text-transform: uppercase; color: var(--red); }
.hires-home-hero .eyebrow::before,
.hires-home-hero .eyebrow::after { content: ""; width: 24px; height: 2px; background: var(--red); flex: none; }
.hires-home-hero .h1 { margin-top: 16px; font-size: clamp(40px, 6.4vw, 92px); line-height: 1.1; font-weight: 800; letter-spacing: -.01em; white-space: nowrap; color: var(--ink); }
.hires-home-hero .h1-m { display: block; overflow: hidden; padding: .03em 0; }
.hires-home-hero .h1-m span { display: inline-block !important; font-style: normal; font-weight: inherit; font-family: inherit; animation: hiresHeroRise .95s var(--ease) backwards; animation-delay: calc(120ms + var(--i) * 46ms); }
.hires-home-hero .h1-m .r { color: var(--red); }
.hires-home-hero .lede { margin-top: 16px; max-width: 900px; font-size: 17px; line-height: 1.6; color: var(--ink2); text-wrap: balance; }
.hires-home-hero .lede b,
.hires-home-hero .lede strong { color: var(--ink); font-weight: 700; }

.hires-home-hero .hsearch { margin-top: 26px; width: min(640px, 100%); display: flex !important; align-items: center; gap: 12px; height: 58px; padding: 0 5px 0 18px; border: 1px solid var(--ink); border-radius: var(--r-btn); background: var(--bg); box-shadow: var(--shadow-red); text-align: left; transition: border-color .2s, box-shadow .2s; }
.hires-home-hero .hsearch:focus-within { border-color: var(--red); box-shadow: inset 0 0 0 1px var(--red), var(--shadow-red); }
.hires-home-hero .hsearch > svg { color: var(--ink2); width: 20px; height: 20px; }
.hires-home-hero .hsearch input { flex: 1; min-width: 0; width: auto !important; height: 100% !important; margin: 0 !important; padding: 0 !important; border: 0 !important; outline: 0; box-shadow: none !important; border-radius: 0 !important; background: none !important; font: inherit; font-size: 16px !important; color: var(--ink) !important; }
.hires-home-hero .hsearch input::placeholder { color: var(--ink2); opacity: 1; }
.hires-home-hero .hsearch input::-webkit-search-cancel-button { appearance: none; }
.hires-home-hero .hsearch kbd { flex: none; display: grid; place-items: center; width: 24px; height: 24px; margin: 0; border: 1px solid var(--line); border-radius: 3px; background: transparent; font: 600 12px var(--mono); color: var(--ink2); }
.hires-home-hero .hsearch button { flex: none; width: auto !important; height: 46px !important; min-height: 0 !important; margin: 0 !important; padding: 0 30px !important; border: 0 !important; border-radius: 3px !important; box-shadow: none !important; background: var(--red) !important; color: var(--bg) !important; font-weight: 700 !important; font-size: 16px !important; line-height: 1 !important; white-space: nowrap; transition: background .2s, transform .15s; }
.hires-home-hero .hsearch button:hover { background: var(--red-d) !important; }
.hires-home-hero .hsearch button:active { transform: translateY(1px); }

.hires-home-hero .proof { margin-top: 26px; display: flex; justify-content: center; }
.hires-home-hero .fact { display: flex; flex-direction: column-reverse; align-items: center; gap: 2px; padding: 0 30px; border-left: 1px solid rgba(22, 22, 22, .14); }
.hires-home-hero .fact:first-child { border-left: 0; }
.hires-home-hero .fact dd { font-weight: 800; font-size: 20px; line-height: 1.3; font-variant-numeric: tabular-nums; white-space: nowrap; color: var(--ink); }
.hires-home-hero .fact dt { font-size: 14px; line-height: 1.5; font-weight: 400; color: var(--ink2); white-space: nowrap; }

.hires-home-hero .cue { margin-top: auto; display: flex; align-items: center; gap: 8px; font-weight: 700; font-size: 14px; letter-spacing: .1em; color: var(--warm); white-space: nowrap; transition: color .2s; animation: hiresHeroUp .9s var(--ease) 1.5s backwards; }
.hires-home-hero .cue svg { width: 16px; height: 16px; color: var(--gold); animation: hiresHeroNudge 1.8s var(--ease) infinite; }
.hires-home-hero .cue:hover { color: var(--gold); }
.hires-home-hero .cue:focus-visible { outline: 2px solid var(--gold); outline-offset: 2px; }
@keyframes hiresHeroNudge { 0%, 100% { transform: translateY(-2px); } 50% { transform: translateY(3px); } }

@media (max-width: 1100px) {
  .hires-home-hero .h1 { white-space: normal; }
}
@media (max-width: 900px) {
  .hires-home-hero .lede { font-size: 15px; }
  .hires-home-hero .proof { display: grid; grid-template-columns: 1fr 1fr; row-gap: 12px; }
  .hires-home-hero .fact { padding: 0 24px; }
  .hires-home-hero .fact:nth-child(odd) { border-left: 0; }
  .hires-home-hero .fact dd { font-size: 17px; }
}
@media (max-width: 599px) {
  .hires-home-hero { height: auto !important; }
  .hires-home-hero .wrap { padding-left: 16px; padding-right: 16px; }
  .hires-home-hero .hero-in { flex: none; padding-top: 30px; padding-bottom: 16px; }
  .hires-home-hero .eyebrow { font-size: 11px; letter-spacing: .12em; }
  .hires-home-hero .eyebrow::before,
  .hires-home-hero .eyebrow::after { width: 14px; }
  .hires-home-hero .h1 { font-size: clamp(28px, 9.6vw, 56px); margin-top: 14px; white-space: normal; }
  .hires-home-hero .hsearch { height: 52px; margin-top: 22px; padding-left: 14px; }
  .hires-home-hero .hsearch kbd { display: none; }
  .hires-home-hero .hsearch button { height: 40px !important; padding: 0 18px !important; font-size: 15px !important; }
  .hires-home-hero .proof { width: 100%; }
  .hires-home-hero .fact { padding: 0 8px; }
  .hires-home-hero .fact dd { font-size: 15px; }
  .hires-home-hero .cue { margin-top: 160px; }
}
