/* ============================================================
   haoping-tuijian.css —— 学员好评推荐页专属布局
   ============================================================ */

/* ---------- 首屏 ---------- */
.hp-hero{
  position:relative; min-height:560px; display:flex; align-items:center;
  color:#fff; overflow:hidden;
}
.hp-hero .ph-bg{ position:absolute; inset:0; z-index:0; }
.hp-hero .ph-bg img{ width:100%; height:100%; object-fit:cover; display:block; }
.hp-hero::after{
  content:""; position:absolute; inset:0; z-index:1;
  background:linear-gradient(80deg, rgba(21,50,56,.3) 0%, rgba(21,50,56,.55) 50%, rgba(21,50,56,.85) 100%);
}
.hp-hero .container{ position:relative; z-index:3; }
.hp-hero .crumbs{ color:rgba(255,255,255,.82); margin-bottom:18px; }
.hp-hero .crumbs a{ color:#D7EEE2; }
.hp-hero h1{ font-size:clamp(28px,5vw,48px); line-height:1.18; margin:6px 0 16px; max-width:18ch; }
.hp-hero .ph-desc{ color:rgba(255,255,255,.92); font-size:17px; line-height:1.9; max-width:620px; }
.hp-hero .ph-actions{ margin-top:26px; display:flex; gap:14px; flex-wrap:wrap; }
.hp-hero .hero-lineart{ position:absolute; left:0; right:0; bottom:0; z-index:2; width:100%; height:50%; }

/* ---------- 折线分割 ---------- */
.split{ line-height:0; }
.split svg{ display:block; width:100%; height:52px; }
.split.flip svg{ transform:scaleY(-1); }

/* ---------- 打分条 ---------- */
.score-wrap{ margin-top:30px; max-width:760px; }
.score-item{ margin-bottom:20px; }
.score-label{ display:flex; justify-content:space-between; align-items:baseline; margin-bottom:8px; }
.score-label span{ color:var(--ink-700); font-size:15px; }
.score-label b{ color:var(--ink-900); font-size:20px; }
.score-bar{ height:12px; background:#E4EDE7; border-radius:99px; overflow:hidden; }
.score-bar i{ display:block; height:100%; border-radius:99px; }
.bar-green{ background:#41B383; }
.bar-blue{ background:#4493C4; }
.bar-yellow{ background:#FFCE33; }
.w98{ width:98%; } .w96{ width:96%; } .w94{ width:94%; } .w92{ width:92%; }

/* ---------- 评价墙 ---------- */
.wall{ margin-top:30px; }
.review-card{ padding:22px 22px 20px; }
.rv-tags{ display:flex; gap:8px; flex-wrap:wrap; margin-bottom:12px; }
.rv-text{ color:var(--ink-700); line-height:1.9; font-size:15px; margin:0 0 14px; }
.rv-star{ color:#FFCE33; letter-spacing:2px; font-size:15px; }

/* ---------- 说明区 ---------- */
.body-note{ margin-top:16px; color:var(--ink-700); line-height:1.9; max-width:820px; }

/* ---------- 双图 ---------- */
.hp-imgs{ display:grid; gap:20px; grid-template-columns:1fr 1fr; }
.hp-img img{ width:100%; height:220px; object-fit:cover; border-radius:12px; display:block; }

/* ---------- 链接卡 ---------- */
.link-grid{ margin-top:30px; }
.link-card{ display:block; padding:22px 24px; transition:transform .2s ease; }
.link-card:hover{ transform:translateY(-4px); }
.link-card h3{ margin:0 0 8px; font-size:18px; color:var(--ink-900); }
.link-card p{ margin:0; color:var(--ink-500); font-size:14px; line-height:1.7; }

/* ---------- CTA ---------- */
.hp-cta{ background:linear-gradient(135deg,#FFF7DC 0%,#EAF3FA 100%); }
.center-box{ text-align:center; max-width:760px; margin:0 auto; }
.center-box h2{ font-size:clamp(24px,3.4vw,34px); color:var(--ink-900); margin-bottom:14px; }
.center-box p{ color:var(--ink-700); line-height:1.9; }
.center-box .ph-actions{ margin-top:24px; display:flex; gap:14px; justify-content:center; flex-wrap:wrap; }

/* ---------- 平板 ---------- */
@media (max-width:768px){
  .hp-hero{ min-height:480px; }
  .hp-imgs{ grid-template-columns:1fr; }
  .hp-img img{ height:200px; }
}

/* ---------- 手机 ---------- */
@media (max-width:375px){
  .hp-hero{ min-height:440px; }
  .split svg{ height:38px; }
  .center-box .ph-actions .btn{ width:100%; }
}

/* 首屏大标题强制白色，压在实景照片上可读 */
.hp-hero .hero-title, .hp-hero .hero-title .line, .hp-hero .hero-title .line > span{
  color:#fff !important;
  text-shadow:0 2px 16px rgba(0,0,0,.5);
}

/* 首屏标题：覆盖渐变文字，强制纯白不透明 */
.hp-hero .hero-title, .hp-hero .hero-title .line, .hp-hero .hero-title .line > span{
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  background:none !important;
  opacity:1 !important;
  transform:none !important;
  text-shadow:0 2px 18px rgba(0,0,0,.55);
}

@media (max-width:375px){
  .hp-hero .ph-actions{ flex-direction:column; align-items:stretch; }
  .hp-hero .ph-actions .btn{ width:100%; }
}

@media (max-width:640px){
  .hp-hero .ph-actions{ flex-direction:column !important; align-items:stretch !important; }
  .hp-hero .ph-actions .btn{ width:100% !important; }
}
