.page-home{
  display:block;
  background:var(--color-paper);
  color:var(--color-ink);
  overflow-x:clip;
}

/* ---------- 首屏 ---------- */
.page-home .home-hero{
  position:relative;
  min-height:100vh;
  min-height:100svh;
  display:flex;
  flex-direction:column;
  justify-content:center;
  background:var(--color-navy);
  padding:calc(var(--header-height) + 2rem) var(--gutter) 4rem;
  overflow:hidden;
  isolation:isolate;
}
.page-home .hero-bg{
  position:absolute;
  inset:0;
  z-index:-2;
  background:var(--color-navy);
}
.page-home .hero-bg img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}
.page-home .hero-veil{
  position:absolute;
  inset:0;
  z-index:-1;
  background:linear-gradient(135deg, var(--color-navy) 0%, rgba(11,42,70,.72) 48%, rgba(11,42,70,.35) 72%, rgba(212,168,67,.22) 100%);
}
.page-home .home-hero::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:-1px;
  height:36px;
  background:var(--color-paper);
  clip-path:polygon(0 0, 100% 0, 100% 100%, 0 78%);
  z-index:2;
}
.page-home .hero-inner{
  position:relative;
  z-index:1;
  max-width:var(--container);
  width:100%;
  margin-inline:auto;
}
.page-home .hero-inner .breadcrumb{
  margin-bottom:clamp(1.4rem, 4vw, 2.4rem);
}
.page-home .hero-inner .breadcrumb__link,
.page-home .hero-inner .breadcrumb__current{
  color:rgba(246,241,235,.78);
}
.page-home .hero-inner .breadcrumb__link:hover{
  color:var(--color-white);
}
.page-home .hero-kicker{
  color:var(--color-gold-light);
  font-family:var(--font-display);
  font-size:.82rem;
  letter-spacing:.18em;
  text-transform:uppercase;
  margin:0 0 .65rem;
}
.page-home .hero-inner h1{
  color:var(--color-white);
  font-family:var(--font-display);
  font-size:clamp(2.3rem, 6vw, 4.2rem);
  line-height:1.05;
  letter-spacing:-.02em;
  margin:.1rem 0 1rem;
}
.page-home .hero-lede{
  color:rgba(246,241,235,.88);
  font-size:clamp(.98rem, 1.4vw, 1.1rem);
  line-height:1.75;
  max-width:40rem;
  margin:0 0 1.6rem;
}
.page-home .hero-actions{
  display:flex;
  flex-wrap:wrap;
  gap:.8rem;
  margin-bottom:2.6rem;
}
.page-home .hero-actions .btn-outline{
  border-color:rgba(255,255,255,.72);
  color:var(--color-white);
}
.page-home .hero-actions .btn-outline:hover,
.page-home .hero-actions .btn-outline:focus-visible{
  border-color:var(--color-white);
  background:rgba(255,255,255,.14);
}
.page-home .entry-board-head{
  display:flex;
  align-items:baseline;
  gap:1rem;
  flex-wrap:wrap;
  margin-bottom:1rem;
}
.page-home .board-title{
  color:var(--color-white);
  font-family:var(--font-display);
  font-size:1.15rem;
}
.page-home .board-note{
  color:var(--color-gold-light);
  font-size:.8rem;
  letter-spacing:.08em;
}
.page-home .entry-board{
  display:flex;
  flex-direction:column;
  gap:1rem;
}
.page-home .entry-card{
  position:relative;
  display:flex;
  flex-direction:column;
  background:var(--color-white);
  border-radius:var(--radius-md);
  padding:1.35rem 1.35rem 1.2rem;
  box-shadow:var(--shadow-md);
  text-decoration:none;
  color:var(--color-ink);
  transition:transform .25s ease, box-shadow .25s ease, border-color .25s ease;
  border-left:4px solid var(--color-gold);
}
.page-home .entry-card:hover,
.page-home .entry-card:focus-visible{
  transform:translateY(-4px);
  box-shadow:var(--shadow-lg);
}
.page-home .entry-card--old{
  border-left-color:var(--color-steel);
  background:rgba(246,241,235,.98);
}
.page-home .entry-card--reg{
  background:var(--color-navy);
  border-left-color:var(--color-orange);
  color:var(--color-white);
}
.page-home .entry-card--contact{
  border-left-color:var(--color-orange);
  background:var(--color-white);
}
.page-home .entry-index{
  position:absolute;
  top:.85rem;
  right:.95rem;
  font-family:var(--font-display);
  font-size:.72rem;
  letter-spacing:.12em;
  color:var(--color-steel);
}
.page-home .entry-card--reg .entry-index{
  color:rgba(255,255,255,.5);
}
.page-home .entry-flag{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:34px;
  height:22px;
  padding:0 .5rem;
  border-radius:999px;
  font-family:var(--font-display);
  font-size:.68rem;
  letter-spacing:.04em;
  margin-bottom:.7rem;
  width:fit-content;
}
.page-home .entry-flag--gold{
  background:var(--color-gold);
  color:var(--color-navy);
}
.page-home .entry-flag--steel{
  background:var(--color-steel);
  color:var(--color-white);
}
.page-home .entry-flag--orange{
  background:var(--color-orange);
  color:var(--color-white);
}
.page-home .entry-card h2{
  font-family:var(--font-display);
  font-size:1.1rem;
  line-height:1.25;
  margin:.1rem 0 .5rem;
  color:inherit;
}
.page-home .entry-card p{
  font-size:.88rem;
  line-height:1.6;
  color:var(--color-steel);
  margin:0 0 .8rem;
  flex:1;
}
.page-home .entry-card--reg p{
  color:rgba(246,241,235,.72);
}
.page-home .entry-go{
  font-size:.84rem;
  font-weight:700;
  color:var(--color-orange);
}
.page-home .entry-card--reg .entry-go{
  color:var(--color-gold-light);
}

/* ---------- 区块通用 ---------- */
.page-home .section-head{
  max-width:52rem;
  margin-bottom:2.2rem;
}
.page-home .section-kicker{
  display:flex;
  align-items:center;
  gap:.6rem;
  font-family:var(--font-display);
  font-size:.78rem;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:var(--color-gold);
  margin:0 0 .6rem;
}
.page-home .section-kicker::before{
  content:"";
  width:28px;
  height:3px;
  flex:none;
  background:linear-gradient(90deg, var(--color-gold), var(--color-orange));
}
.page-home .section-head h2,
.page-home .service-intro h2,
.page-home .register-content h2{
  font-family:var(--font-display);
  font-size:clamp(1.7rem, 3.4vw, 2.5rem);
  line-height:1.15;
  color:var(--color-navy);
  margin:.2rem 0 .7rem;
}
.page-home .section-desc{
  font-size:.96rem;
  line-height:1.75;
  color:var(--color-steel);
  margin:0;
}

/* ---------- 版本对照 ---------- */
.page-home .version-compare{
  background:var(--color-paper);
  padding:4.8rem 0;
}
.page-home .compare-box{
  position:relative;
  background:linear-gradient(135deg, var(--color-navy) 0%, #10314f 62%, rgba(212,168,67,.28) 130%);
  border-radius:var(--radius-lg);
  padding:1.6rem 1.1rem 1.4rem;
  box-shadow:var(--shadow-lg);
  overflow:hidden;
}
.page-home .compare-box::before{
  content:"";
  position:absolute;
  top:0;
  right:0;
  width:110px;
  height:110px;
  background:linear-gradient(135deg, transparent 44%, rgba(212,168,67,.22) 45%, rgba(212,168,67,.22) 58%, transparent 59%);
  pointer-events:none;
}
.page-home .compare-radio{
  position:absolute;
  opacity:0;
  pointer-events:none;
  width:1px;
  height:1px;
}
.page-home .compare-switch{
  position:relative;
  display:flex;
  background:rgba(255,255,255,.14);
  border-radius:999px;
  padding:5px;
  max-width:340px;
  margin:0 auto 1.4rem;
  backdrop-filter:blur(4px);
}
.page-home .compare-tab{
  flex:1;
  text-align:center;
  padding:.68rem 1rem .7rem;
  cursor:pointer;
  z-index:2;
  font-family:var(--font-display);
  font-size:.86rem;
  letter-spacing:.04em;
  color:rgba(246,241,235,.8);
  transition:color .25s ease, opacity .25s ease;
  user-select:none;
}
.page-home .switch-thumb{
  position:absolute;
  top:5px;
  left:5px;
  width:calc(50% - 5px);
  height:calc(100% - 10px);
  border-radius:999px;
  background:linear-gradient(90deg, var(--color-gold), var(--color-orange));
  transition:transform .3s cubic-bezier(.65,.05,.36,1);
  box-shadow:0 4px 14px rgba(255,94,43,.32);
}
.page-home .compare-radio#compare-new:checked ~ .compare-switch .switch-thumb{
  transform:translateX(0);
}
.page-home .compare-radio#compare-old:checked ~ .compare-switch .switch-thumb{
  transform:translateX(100%);
}
.page-home .compare-radio#compare-new:checked ~ .compare-switch .compare-tab--new,
.page-home .compare-radio#compare-old:checked ~ .compare-switch .compare-tab--old{
  color:var(--color-white);
}
.page-home .compare-radio#compare-new:focus-visible ~ .compare-switch .compare-tab--new,
.page-home .compare-radio#compare-old:focus-visible ~ .compare-switch .compare-tab--old{
  outline:2px solid var(--color-orange);
  outline-offset:2px;
  border-radius:999px;
}
.page-home .compare-views{
  min-height:250px;
}
.page-home .compare-view{
  display:none;
  background:var(--color-white);
  border-radius:var(--radius-md);
  padding:1.3rem 1.2rem;
  box-shadow:var(--shadow-sm);
  border-top:4px solid var(--color-gold);
}
.page-home .compare-radio#compare-new:checked ~ .compare-views .compare-view--new,
.page-home .compare-radio#compare-old:checked ~ .compare-views .compare-view--old{
  display:block;
  animation:ph-compare-in .3s ease both;
}
.page-home .compare-view--old{
  border-top-color:var(--color-orange);
}
@keyframes ph-compare-in{
  from{
    opacity:0;
    transform:translateY(8px);
  }
  to{
    opacity:1;
    transform:translateY(0);
  }
}
.page-home .view-top{
  display:flex;
  gap:.85rem;
  align-items:flex-start;
  margin-bottom:.7rem;
}
.page-home .view-icon{
  font-size:1.5rem;
  line-height:1;
  color:var(--color-gold);
  flex:none;
}
.page-home .compare-view--old .view-icon{
  color:var(--color-orange);
}
.page-home .view-top h3{
  font-family:var(--font-display);
  font-size:1.08rem;
  line-height:1.25;
  color:var(--color-navy);
  margin:.1rem 0 .3rem;
}
.page-home .view-top p{
  margin:0;
  font-size:.84rem;
  line-height:1.6;
  color:var(--color-steel);
}
.page-home .view-list{
  list-style:none;
  margin:0;
  padding:0;
}
.page-home .view-list li{
  display:flex;
  gap:.55rem;
  align-items:flex-start;
  padding:.42rem 0;
  font-size:.88rem;
  line-height:1.55;
  color:var(--color-ink);
}
.page-home .view-dot{
  width:8px;
  height:8px;
  border-radius:50%;
  background:var(--color-gold);
  flex:none;
  margin-top:.5rem;
}
.page-home .compare-view--old .view-dot{
  background:var(--color-orange);
}
.page-home .compare-media{
  margin-top:1.6rem;
  border-radius:var(--radius-lg);
  overflow:hidden;
  box-shadow:var(--shadow-md);
  background:var(--color-navy);
}
.page-home .compare-media img{
  width:100%;
  height:auto;
  display:block;
}
.page-home .media-caption{
  background:var(--color-navy);
  color:rgba(246,241,235,.82);
  font-size:.78rem;
  text-align:center;
  padding:.6rem 1rem;
}
.page-home .compare-table{
  margin-top:1.4rem;
  background:var(--color-white);
  border-radius:var(--radius-lg);
  overflow-x:auto;
  box-shadow:var(--shadow-sm);
}
.page-home .compare-table table{
  width:100%;
  min-width:560px;
  border-collapse:collapse;
}
.page-home .compare-table th,
.page-home .compare-table td{
  padding:.85rem 1rem;
  text-align:left;
  border-bottom:1px solid rgba(11,42,70,.08);
  font-size:.88rem;
  line-height:1.5;
}
.page-home .compare-table thead th{
  background:var(--color-navy);
  color:var(--color-white);
  font-family:var(--font-display);
  font-size:.82rem;
  letter-spacing:.04em;
  font-weight:700;
}
.page-home .compare-table thead th:first-child{
  border-top-left-radius:var(--radius-lg);
}
.page-home .compare-table thead th:last-child{
  border-top-right-radius:var(--radius-lg);
}
.page-home .compare-table tbody th{
  background:rgba(212,168,67,.09);
  color:var(--color-navy);
  white-space:nowrap;
  font-weight:700;
}
.page-home .compare-table tbody tr:last-child th,
.page-home .compare-table tbody tr:last-child td{
  border-bottom:none;
}

/* ---------- 注册流程 ---------- */
.page-home .register-steps{
  background:var(--color-navy);
  padding:4.8rem 0;
  position:relative;
}
.page-home .register-steps::before{
  content:"";
  position:absolute;
  inset:0 0 auto;
  height:6px;
  background:linear-gradient(90deg, var(--color-gold), var(--color-orange) 60%, transparent 100%);
  opacity:.7;
}
.page-home .register-steps .section-kicker{
  color:var(--color-gold-light);
}
.page-home .register-steps .register-content h2{
  color:var(--color-white);
}
.page-home .register-steps .section-desc{
  color:rgba(246,241,235,.74);
}
.page-home .register-grid{
  display:flex;
  flex-direction:column;
  gap:2.2rem;
}
.page-home .register-content{
  order:1;
}
.page-home .register-media{
  order:2;
  border-radius:var(--radius-lg);
  overflow:hidden;
  border:1px solid rgba(212,168,67,.35);
  box-shadow:var(--shadow-lg);
  background:#0d2d48;
}
.page-home .register-media img{
  width:100%;
  height:auto;
  display:block;
}
.page-home .step-timeline{
  list-style:none;
  margin:2rem 0 0;
  padding:0;
  position:relative;
}
.page-home .step-timeline::before{
  content:"";
  position:absolute;
  left:20px;
  top:14px;
  bottom:14px;
  width:2px;
  background:linear-gradient(to bottom, var(--color-gold), var(--color-orange));
  opacity:.55;
}
.page-home .step-item{
  position:relative;
  padding-left:56px;
  margin-bottom:.9rem;
}
.page-home .step-num{
  position:absolute;
  left:0;
  top:10px;
  width:40px;
  height:40px;
  border-radius:50%;
  background:var(--color-gold);
  color:var(--color-navy);
  font-family:var(--font-display);
  font-size:1rem;
  display:flex;
  align-items:center;
  justify-content:center;
  border:3px solid rgba(11,42,70,.5);
  box-shadow:0 0 0 3px var(--color-gold);
}
.page-home .step-detail{
  background:rgba(255,255,255,.06);
  border-radius:var(--radius-md);
  border-left:3px solid var(--color-gold);
  padding:.2rem .4rem .2rem 1rem;
}
.page-home .step-detail summary{
  cursor:pointer;
  list-style:none;
  display:flex;
  align-items:center;
  gap:1rem;
  padding:.7rem .3rem;
}
.page-home .step-detail summary::-webkit-details-marker{
  display:none;
}
.page-home .step-detail summary h3{
  font-family:var(--font-display);
  font-size:1rem;
  line-height:1.3;
  color:var(--color-white);
  margin:0;
  flex:1;
}
.page-home .step-detail summary::after{
  content:"展开";
  font-size:.72rem;
  color:var(--color-gold-light);
  white-space:nowrap;
  padding-right:.55rem;
}
.page-home .step-detail[open] summary::after{
  content:"收起";
}
.page-home .step-detail p{
  margin:0;
  padding:0 .4rem .85rem;
  color:rgba(246,241,235,.75);
  font-size:.87rem;
  line-height:1.65;
}

/* ---------- 品牌服务 ---------- */
.page-home .brand-service{
  background:var(--color-paper);
  padding:4.8rem 0;
}
.page-home .service-intro{
  max-width:52rem;
}
.page-home .service-stats{
  display:grid;
  grid-template-columns:repeat(2, 1fr);
  gap:1rem;
  margin:2.4rem 0;
}
.page-home .stat-block{
  background:var(--color-white);
  border-radius:var(--radius-md);
  padding:1.35rem 1.3rem;
  box-shadow:var(--shadow-sm);
  border-top:4px solid var(--color-gold);
}
.page-home .stat-block:nth-child(2){
  border-top-color:var(--color-orange);
}
.page-home .stat-block:nth-child(3){
  border-top-color:var(--color-steel);
}
.page-home .stat-block:nth-child(4){
  border-top-color:var(--color-gold);
}
.page-home .stat-num{
  display:block;
  font-family:var(--font-display);
  font-size:clamp(1.5rem, 3vw, 1.9rem);
  line-height:1.1;
  color:var(--color-navy);
}
.page-home .stat-label{
  display:block;
  color:var(--color-steel);
  font-size:.8rem;
  line-height:1.5;
  margin-top:.35rem;
}
.page-home .service-grid{
  display:flex;
  flex-direction:column;
  gap:1.4rem;
}
.page-home .service-cards{
  display:grid;
  grid-template-columns:repeat(2, 1fr);
  gap:1rem;
}
.page-home .service-link{
  display:block;
  background:var(--color-white);
  border-radius:var(--radius-md);
  padding:1.25rem 1.1rem;
  text-decoration:none;
  color:var(--color-navy);
  box-shadow:var(--shadow-sm);
  border-left:4px solid var(--color-orange);
  transition:transform .25s ease, box-shadow .25s ease;
}
.page-home .service-link:hover,
.page-home .service-link:focus-visible{
  transform:translateY(-3px);
  box-shadow:var(--shadow-md);
}
.page-home .service-link span{
  display:block;
  font-family:var(--font-display);
  font-size:.96rem;
  color:inherit;
}
.page-home .service-link small{
  display:block;
  color:var(--color-steel);
  font-size:.78rem;
  line-height:1.5;
  margin-top:.4rem;
}
.page-home .service-contact{
  background:var(--color-navy);
  border-radius:var(--radius-lg);
  padding:1.5rem 1.3rem;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:1rem .9rem;
  box-shadow:var(--shadow-md);
}
.page-home .contact-brief{
  display:flex;
  flex-direction:column;
  gap:.3rem;
}
.page-home .contact-label{
  font-size:.72rem;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:var(--color-gold-light);
}
.page-home .contact-value{
  font-size:.92rem;
  line-height:1.4;
  color:var(--color-white);
  font-weight:600;
  word-break:break-all;
}

/* ---------- 本地化条带 ---------- */
.page-home .local-strip{
  position:relative;
  overflow:hidden;
  background:var(--color-gold-light);
}
.page-home .local-strip img{
  display:block;
  width:100%;
  height:auto;
}
.page-home .strip-caption{
  position:absolute;
  inset:auto 0 0 0;
  background:linear-gradient(to top, rgba(11,42,70,.88), rgba(11,42,70,.15) 85%, transparent);
  color:var(--color-white);
  display:flex;
  flex-wrap:wrap;
  gap:.6rem 1.2rem;
  align-items:baseline;
  justify-content:space-between;
  padding:2.2rem var(--gutter) 1.15rem;
}
.page-home .strip-city{
  font-family:var(--font-display);
  font-size:1.05rem;
  letter-spacing:.08em;
}
.page-home .strip-text{
  color:var(--color-gold-light);
  font-size:.86rem;
}

/* ---------- 焦点可见 ---------- */
.page-home a:focus-visible,
.page-home summary:focus-visible,
.page-home label:focus-visible{
  outline:3px solid var(--color-orange);
  outline-offset:3px;
  border-radius:var(--radius-sm);
}

/* ---------- 桌面端增强 ---------- */
@media (min-width: 900px){
  .page-home .hero-inner{
    padding-top:.8rem;
  }
  .page-home .entry-board{
    display:grid;
    grid-template-columns:repeat(12, 1fr);
    gap:1.25rem;
    align-items:stretch;
  }
  .page-home .entry-card--new{
    grid-column:span 7;
  }
  .page-home .entry-card--old{
    grid-column:span 5;
  }
  .page-home .entry-card--reg{
    grid-column:span 4;
  }
  .page-home .entry-card--contact{
    grid-column:span 8;
  }
  .page-home .version-compare{
    padding-top:6rem;
    padding-bottom:6rem;
  }
  .page-home .compare-box{
    padding:2rem 2.2rem;
  }
  .page-home .compare-views{
    min-height:220px;
  }
  .page-home .compare-view{
    padding:1.6rem 1.7rem;
  }
  .page-home .compare-media{
    margin-top:2rem;
  }
  .page-home .compare-table{
    margin-top:1.6rem;
  }
  .page-home .register-steps{
    padding-top:6rem;
    padding-bottom:6rem;
  }
  .page-home .register-grid{
    display:grid;
    grid-template-columns:.9fr 1.1fr;
    gap:2.8rem;
    align-items:center;
  }
  .page-home .register-content{
    grid-column:2;
    grid-row:1;
  }
  .page-home .register-media{
    grid-column:1;
    grid-row:1;
  }
  .page-home .brand-service{
    padding-top:6rem;
    padding-bottom:6rem;
  }
  .page-home .service-stats{
    grid-template-columns:repeat(4, 1fr);
    gap:1.2rem;
  }
  .page-home .service-grid{
    display:grid;
    grid-template-columns:.92fr 1.08fr;
    gap:1.4rem;
  }
  .page-home .service-cards{
    grid-template-columns:1fr 1fr;
  }
  .page-home .service-contact{
    grid-template-columns:1fr 1fr;
    padding:1.6rem 1.6rem;
    gap:1.2rem .8rem;
    align-content:center;
  }
  .page-home .step-item{
    padding-left:62px;
  }
  .page-home .step-num{
    width:44px;
    height:44px;
  }
}
