/* ==========================================================================
   OIT AWARDS · 关于评选（改版）— 页面样式
   设计稿：关于评选_改版.psd  画布 2560×5368 / K=0.75 → 正文基准 1920×4026
   所有几何值 = 设计稿 px × 0.75
   ========================================================================== */
.page {
  max-width: 1920px;
  margin: 0 auto;
  background: linear-gradient(90deg,var(--page-1) 0%,var(--page-2) 100%);
  overflow: hidden;
}
/* ---------- 主视觉 ---------- */
.hero{
  position:relative;
  background:var(--page-2);
}
.hero__bg{ width:100%; height:auto; }
.hero__inner{ position:absolute; inset:0; }

.hero__badge{
  position:absolute;
  left:4.18%;
  top:13.87%;
  width:33.4%;
  height:auto;
}
.hero__panel{
  font-size:14px;
  position:absolute;
  left:46.25%;
  top:17.75%;
  width:38.36%;
  height:48.8%;
  background:rgba(0,0,0,.30);
  padding:clamp(34px, 3.005vw, 57.7px) clamp(21px, 1.875vw, 36px) 0;
}
.hero__panel p{
  font-size:var(--fs-body);
  line-height:2.5;
  letter-spacing:.02em;
  text-align:justify;
}

/* ---------- 通用小节 ---------- */
.sec-title{
  position:relative;
}

/* ---------- 参评要求 ---------- */
.req{ padding-top:86.5px; }

.req__card{
  margin-top:26px;
  aspect-ratio:1773 / 543;
  display:flex;
  align-items:center;
  background:url(../images/sl_req-card.jpg) center/100% 100% no-repeat;
  border-radius:6px;
  padding:1.6% 2%;
}
.req__card p{
  width:100%;
  /* 卡片宽度在 1330 封顶，字号同步封顶，避免宽屏文字缩水留白 */
  font-size:min(16px, 1.2vw);
  line-height:2.5;
  letter-spacing:.01em;
  text-align:justify;
}
.req__card b{ font-weight:700; }

/* ---------- 奖项设置 ---------- */
.awards{ margin-top:86.3px; }

.awards__grid{
  margin-top:41.2px;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:42.25px 126.75px;
}
.award{
  aspect-ratio:802 / 183;
  border-radius:6px;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:0 4%;
  background-position:center;
  background-size:100% 100%;
  background-repeat:no-repeat;
  font-size:clamp(15px, 1.5625vw, 30px);
  font-weight:700;
  letter-spacing:.16em;
  text-indent:.16em;
  text-align:center;
  line-height:1.2;
}
.award--gold{ background-image:url(../images/sl_award-1.jpg); }
.award--gold2{ background-image:url(../images/sl_award-2.jpg); }
.award--blue1{ background-image:url(../images/sl_award-3.jpg); }
.award--blue2{ background-image:url(../images/sl_award-4.jpg); }
.award--blue3{ background-image:url(../images/sl_award-5.jpg); }

/* ---------- 活动日程 ---------- */
.sched{ margin-top:79.8px; }

.sched__stage{
  position:relative;
  margin-top:9px;
  /* 底图已裁掉顶部 38px 空白（让内置时间轴与文字对齐），这里补回高度以保持后续区块节奏 */
  padding-bottom:28px;
}
.sched__stage img{
  width:100%;
  height:auto;
  -webkit-mask-image:linear-gradient(rgba(0,0,0,0) 0%, #000 6%, #000 70%, rgba(0,0,0,0) 100%);
  mask-image:linear-gradient(rgba(0,0,0,0) 0%, #000 6%, #000 70%, rgba(0,0,0,0) 100%);
}

.node{
  position:absolute;
  left:var(--x);
  top:var(--y);
  display:flex;
  align-items:flex-start;
  gap:var(--gap, 11px);
}
.node--right{ flex-direction:row-reverse; }
.node--right .node__txt{ text-align:right; }

/* 时间轴竖线由 sched-bg.jpg 内置，这里只保留占位、不再绘制，避免出现两根线 */
.node__mark{
  flex:none;
  width:8px;
  height:58px;
  margin-top:3px;
  visibility:hidden;
}
/* 细引线：与粗线同一中线（粗 8px → 中线 4px，细 2px → left 3px） */

/* 设计稿第 3、4 阶段为倒置：细线在上、粗线在下 */


.node__txt b{
  display:block;
  font-size:clamp(12px, .9375vw, 18px);
  font-weight:400;
  line-height:1.3;
  letter-spacing:.02em;
  white-space:nowrap;
}
.node__txt em{
  display:block;
  font-style:normal;
  font-size:clamp(14px, 1.25vw, 24px);
  font-weight:700;
  line-height:1.25;
  letter-spacing:.01em;
  margin-top:5px;
  white-space:nowrap;
}

.node--1{ --x:9.71%;  --y:10.83%; }
.node--2{ --x:30.00%; --y:26.67%; --gap:21px; }
.node--3{ --x:51.45%; --y:48.65%; --gap:22px; }
.node--4{ --x:70.40%; --y:25.16%; }

/* ---------- 评审委员会 ---------- */
.committee{ margin-top:87.5px; }

.committee__card{
  margin-top:40.5px;
  aspect-ratio:1772 / 405;
  display:flex;
  align-items:center;
  background:url(../images/sl_comm-card.jpg) center/100% 100% no-repeat;
  border-radius:6px;
  padding:0 6.8% 0 6.7%;
}
.committee__list{
  flex:1;
  display:grid;
  grid-template-columns:repeat(9, 1fr);
}
.committee__list li{
  font-size:min(20px, 1.65vw);
  line-height:3;
  letter-spacing:.2em;
  white-space:nowrap;
}

/* ---------- 获奖权益 ---------- */
.rights{ margin-top:85.3px; }

.rights__band{
  margin-top:41.2px;
  background:url(../images/sl_rights-band.jpg) center/cover no-repeat;
  padding:38px 0 37px;
}
.rights__text{
  max-width:1170px;
  margin-left:55px;
  font-size:14px;
}
.rights__text p{
  font-size:var(--fs-body);
  line-height:2.0833;
  letter-spacing:.02em;
  text-align:justify;
}
.rights__text b{ font-weight:700; }
.rights__text span{
  display:block;
  padding-left:30px;
}

/* ==========================================================================
   响应式
   ========================================================================== */
@media (max-width:1440px){
  .awards__grid{ gap:34px 90px; }

  /* 面板高度随文字自适应，避免窄屏文字溢出半透明底板 */
  .hero__panel{
    height:auto;
    padding-bottom:clamp(18px, 2.2vw, 34px);
  }
}

/* ---- 中小屏：卡片改自动高度，时间轴改纵向列表 ---- */
@media (max-width:1200px){
  .req{ padding-top:64px; }
  .awards{ margin-top:62px; }
  .sched{ margin-top:58px; }
  .committee{ margin-top:64px; }
  .rights{ margin-top:62px; }

  .req__card{
    aspect-ratio:auto;
    padding:32px 30px 34px;
    background-size:cover;
  }
  .awards__grid{
    margin-top:34px;
    gap:26px 40px;
  }
  .award{
    aspect-ratio:auto;
    min-height:96px;
    background-size:cover;
  }

  .sched__stage{
    margin-top:20px;
    padding-bottom:0; /* 窄屏没有底图，不需要补高 */
    display:flex;
    flex-direction:column;
    gap:10px;
  }
  /* 4 个阶段已独立成卡片，背景雪山图在窄屏没有意义，直接去掉 */
  .sched__stage img{ display:none; }
  .node{
    position:static;
    display:flex;
    gap:10px;
    padding:10px 14px;
    background:rgba(255,255,255,.07);
    border-left:3px solid #fff;
    border-radius:3px;
  }
  .node--right{ flex-direction:row; }
  .node--right .node__txt{ text-align:left; }
  .node__mark{ display:none; }
  .node__txt b{ font-size:13px; }
  .node__txt em{ font-size:16px; margin-top:3px; }

  .committee__card{
    aspect-ratio:auto;
    padding:34px 30px 38px;
    background-size:cover;
  }
  .committee__list{ grid-template-columns:repeat(6, 1fr); }
  .committee__list li{ line-height:2.6; }

  .rights__text{ margin-left:0; }
  .rights__band{ padding:34px 0 36px; }
}

/* ---- 手机：主视觉纵向排布 ---- */
@media (max-width:900px){
  .sec-title{
    font-size:22px;
    letter-spacing:.1em;
  }

  .hero{
    background:linear-gradient(180deg,#3ba6c6 0%,#21749c 42%,#123c66 100%);
  }
  .hero__bg{
    display:block;
    width:100%;
    height:clamp(120px, 17vw, 190px);
    object-fit:cover;
    object-position:center 32%;
  }
  .hero__inner{
    position:relative;
    padding:0 20px 28px;
  }
  .hero__badge{
    position:relative;
    left:auto;
    top:auto;
    width:min(58%, 300px);
    margin:-56px auto 16px;
  }
  .hero__panel{
    position:static;
    width:auto;
    height:auto;
    padding:16px 18px;
    margin-top:0;
    border-radius:8px;
    background:rgba(4,22,48,.55);
  }
  .hero__panel p{
    font-size:13px;
    line-height:1.95;
    text-align:left;
  }

  .req{ padding-top:46px; }
  .req__card{
    margin-top:20px;
    padding:24px 20px 26px;
    border-radius:4px;
  }
  .req__card p{ font-size:13px; line-height:1.9; }

  .awards{ margin-top:46px; }
  .awards__grid{
    margin-top:22px;
    grid-template-columns:1fr 1fr;
    gap:14px;
  }
  .award{
    min-height:80px;
    font-size:15px;
    letter-spacing:.08em;
    text-indent:.08em;
    background-size:cover;
  }

  .sched{ margin-top:46px; }

  .committee{ margin-top:46px; }
  .committee__card{
    margin-top:20px;
    padding:22px 18px 26px;
    border-radius:4px;
  }
  .committee__list{ grid-template-columns:repeat(4, 1fr); }
  .committee__list li{
    font-size:13px;
    line-height:2.4;
    letter-spacing:.06em;
  }

  .rights{ margin-top:46px; }
  .rights__band{
    margin-top:20px;
    padding:26px 0 28px;
    background-size:cover;
  }
  .rights__text p{ font-size:13px; line-height:1.9; text-align:left; }
  .rights__text span{ padding-left:0; }
}

/* ---- 小手机 ---- */
@media (max-width:560px){
  .awards__grid{ grid-template-columns:1fr; }
  .committee__list{ grid-template-columns:repeat(3, 1fr); }
  .sec-title{ font-size:20px; }
}
