/* ============================================================
   xueyuan-gushi.css —— 学员故事页专属布局
   ============================================================ */

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

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

/* ---------- 引语大卡 ---------- */
.big-quote{
  margin:10px auto; max-width:880px; padding:44px 48px;
  background:linear-gradient(135deg,#EAF6EF,#EAF3FA);
  border-left:6px solid #FFCE33; border-radius:14px;
}
.big-quote p{
  font-size:clamp(18px,2.4vw,24px); line-height:1.9; color:var(--ink-900);
  margin:0 0 18px; font-weight:500;
}
.big-quote cite{ font-style:normal; color:var(--ink-500); font-size:15px; }

/* ---------- 故事长文卡 ---------- */
.story-card{
  margin-top:30px; overflow:hidden; padding:0;
  display:grid; grid-template-columns:1fr;
}
.story-card img{ width:100%; height:320px; object-fit:cover; display:block; }
.story-body{ padding:28px 32px 32px; }
.story-body p{ color:var(--ink-700); line-height:2.0; margin-bottom:14px; font-size:16px; }
.story-body p:last-child{ margin-bottom:0; }

/* 图文左右排布 */
@media (min-width:769px){
  .story-card.alt{ grid-template-columns:1fr 1fr; }
  .story-card.alt img{ height:100%; min-height:360px; }
}

/* ---------- 考场那天 ---------- */
.gushi-day{
  display:grid; gap:30px; align-items:center;
}
@media (min-width:769px){
  .gushi-day{ grid-template-columns:1fr 1.1fr; }
}
.day-img img{ width:100%; height:300px; object-fit:cover; border-radius:12px; display:block; }
.day-text h2{ margin:8px 0 14px; color:var(--ink-900); font-size:26px; }
.day-text p{ color:var(--ink-700); line-height:1.95; margin-bottom:12px; }

/* ---------- 链接卡 ---------- */
.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 ---------- */
.gushi-cta{ background:linear-gradient(120deg,#FFF7DC 0%,#EAF6EF 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){
  .gushi-hero{ min-height:480px; }
  .big-quote{ padding:30px 24px; }
  .story-body{ padding:22px 22px 26px; }
  .story-card img{ height:220px; }
}

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

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

/* 首屏标题：覆盖渐变文字，强制纯白不透明 */
.gushi-hero .hero-title, .gushi-hero .hero-title .line, .gushi-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){
  .gushi-hero .ph-actions{ flex-direction:column; align-items:stretch; }
  .gushi-hero .ph-actions .btn{ width:100%; }
}

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