:root{
  --ink-900:#0B1220;
  --ink-800:#16233A;
  --paper:#F3ECE0;
  --paper-2:#FBF7EF;
  --orange:#FF5A1F;
  --amber:#FFB020;
  --mint:#00E0C0;
  --brown:#241A12;
  --brick:#C2412A;
  --slate:#7A8798;
  --sans:"Noto Sans SC","PingFang SC","Hiragino Sans GB","Microsoft YaHei",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  --mono:"JetBrains Mono","IBM Plex Mono",ui-monospace,SFMono-Regular,Menlo,Consolas,"Courier New",monospace;
  --edge:3px solid var(--brown);
  --hard:8px 8px 0 rgba(36,26,18,.22);
}

*,*::before,*::after{box-sizing:border-box}

html{
  -webkit-text-size-adjust:100%;
  scroll-behavior:smooth;
}

body{
  margin:0;
  background-color:var(--paper);
  background-image:
    linear-gradient(rgba(36,26,18,.045) 1px,transparent 1px),
    linear-gradient(90deg,rgba(36,26,18,.045) 1px,transparent 1px);
  background-size:34px 34px;
  color:var(--brown);
  font-family:var(--sans);
  font-size:17px;
  line-height:1.65;
  font-weight:400;
  overflow-x:hidden;
}

h1,h2,h3,h4{
  margin:0 0 .55em;
  font-family:var(--sans);
  font-weight:900;
  line-height:1.12;
  letter-spacing:-.015em;
}
h1{font-size:clamp(38px,5.4vw,60px)}
h2{font-size:clamp(28px,3.4vw,42px)}
h3{font-size:clamp(20px,2.1vw,28px)}
p{margin:0 0 1em}
a{color:inherit}
img,svg,video{max-width:100%}
ul,ol{margin:0;padding:0;list-style:none}
button{font:inherit;color:inherit}

:focus-visible{outline:3px solid var(--orange);outline-offset:3px}
.s196-header :focus-visible,
.s196-footer :focus-visible{outline-color:var(--mint)}

/* ---------- 容器与节奏 ---------- */
.s196-container{
  width:100%;
  max-width:1240px;
  margin:0 auto;
  padding:0 28px;
}
.s196-section{
  padding:64px 0;
  border-top:2px solid rgba(36,26,18,.16);
}
.s196-section:first-of-type{border-top:0}
.s196-divider{height:3px;background:var(--brown)}

/* ---------- 排印工具 ---------- */
.s196-mono{
  font-family:var(--mono);
  font-size:13px;
  letter-spacing:.04em;
  font-variant-numeric:tabular-nums;
}
.s196-num{
  font-style:italic;
  font-weight:900;
  font-variant-numeric:tabular-nums;
  letter-spacing:-.02em;
}
.s196-eyebrow{
  display:flex;
  align-items:center;
  gap:10px;
  margin:0 0 14px;
  font-family:var(--mono);
  font-size:12.5px;
  letter-spacing:.2em;
  text-transform:uppercase;
  color:var(--brick);
}
.s196-eyebrow::before{
  content:"";
  width:28px;
  height:2px;
  background:var(--brick);
  flex:0 0 auto;
}

/* ---------- 跳转链接 ---------- */
.s196-skip{
  position:absolute;
  left:-9999px;
  top:0;
  z-index:200;
  padding:12px 18px;
  background:var(--orange);
  color:var(--ink-900);
  font-weight:900;
  text-decoration:none;
  border:3px solid var(--brown);
}
.s196-skip:focus{
  left:16px;
  top:14px;
}

/* ---------- 头部 ---------- */
.s196-header{
  position:sticky;
  top:0;
  z-index:80;
  background:var(--ink-900);
  background-image:
    linear-gradient(115deg,rgba(22,35,58,.9),rgba(11,18,32,1) 62%);
  color:var(--paper);
  border-bottom:2px solid rgba(255,90,31,.7);
}
.s196-header__inner{
  display:grid;
  grid-template-columns:auto 1fr auto;
  align-items:center;
  gap:24px;
  width:100%;
  max-width:1440px;
  margin:0 auto;
  padding:14px 28px;
  min-height:84px;
}
.s196-header__progress{
  position:absolute;
  left:0;
  bottom:-2px;
  height:4px;
  width:0;
  background:linear-gradient(90deg,var(--orange),var(--amber) 55%,var(--mint));
  transition:width .12s linear;
}

/* 品牌 */
.s196-brand{
  display:flex;
  align-items:center;
  gap:14px;
  text-decoration:none;
  color:var(--paper);
  min-width:0;
}
.s196-brand__mark{
  display:grid;
  place-items:center;
  width:52px;
  height:52px;
  flex:0 0 auto;
  background:var(--orange);
  color:var(--ink-900);
  font-family:var(--mono);
  font-size:17px;
  font-weight:700;
  letter-spacing:-.04em;
  border:2px solid var(--paper);
  box-shadow:4px 4px 0 rgba(0,224,192,.9);
  transform:skewX(-8deg);
}
.s196-brand__text{display:flex;flex-direction:column;gap:2px;min-width:0}
.s196-brand__name{
  font-size:20px;
  font-weight:900;
  letter-spacing:-.01em;
  line-height:1.1;
  white-space:nowrap;
}
.s196-brand__motto{
  font-family:var(--mono);
  font-size:11.5px;
  letter-spacing:.22em;
  color:var(--mint);
  white-space:nowrap;
}

/* 状态条 */
.s196-status{
  justify-self:center;
  display:flex;
  align-items:center;
  gap:10px;
  margin:0;
  padding:8px 16px;
  max-width:100%;
  overflow:hidden;
  white-space:nowrap;
  background:rgba(22,35,58,.9);
  border:1px solid rgba(243,236,224,.22);
  border-radius:999px;
  font-family:var(--mono);
  font-size:12.5px;
  letter-spacing:.04em;
  color:rgba(243,236,224,.74);
}
.s196-status__pulse{
  width:8px;
  height:8px;
  flex:0 0 auto;
  border-radius:50%;
  background:var(--amber);
  animation:s196-pulse 1.8s ease-out infinite;
}
@keyframes s196-pulse{
  0%{box-shadow:0 0 0 0 rgba(255,176,32,.6)}
  70%{box-shadow:0 0 0 10px rgba(255,176,32,0)}
  100%{box-shadow:0 0 0 0 rgba(255,176,32,0)}
}
.s196-status__label{color:var(--mint);font-weight:700}
.s196-status__item b{color:var(--paper);font-weight:700}
.s196-status__sep{color:rgba(243,236,224,.3)}

/* 栏目导航 */
.s196-nav{
  justify-self:end;
  display:flex;
  align-items:center;
  gap:16px;
}
.s196-nav__list{
  display:flex;
  align-items:center;
  gap:4px;
}
.s196-nav__link{
  display:block;
  padding:9px 13px;
  font-size:14.5px;
  font-weight:700;
  line-height:1.2;
  color:rgba(243,236,224,.76);
  text-decoration:none;
  border:2px solid transparent;
  transition:color .18s ease,background-color .18s ease,border-color .18s ease;
}
.s196-nav__link:hover,
.s196-nav__link:focus-visible{
  color:var(--ink-900);
  background:var(--mint);
  border-color:var(--mint);
}
.s196-nav__link[aria-current="page"]{
  color:var(--paper);
  background:rgba(255,90,31,.16);
  border-color:var(--orange);
}
.s196-nav__cta{
  display:inline-block;
  padding:11px 18px;
  background:var(--orange);
  color:var(--ink-900);
  font-size:14.5px;
  font-weight:900;
  line-height:1;
  white-space:nowrap;
  text-decoration:none;
  border:2px solid var(--paper);
  box-shadow:4px 4px 0 rgba(0,224,192,.9);
  transition:transform .16s ease,box-shadow .16s ease;
}
.s196-nav__cta:hover,
.s196-nav__cta:focus-visible{
  transform:translate(3px,3px);
  box-shadow:1px 1px 0 rgba(0,224,192,.9);
}

/* 汉堡按钮 */
.s196-burger{
  display:none;
  width:46px;
  height:42px;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  gap:5px;
  padding:0;
  background:var(--orange);
  border:2px solid var(--paper);
  cursor:pointer;
}
.s196-burger__bar{
  display:block;
  width:20px;
  height:2px;
  background:var(--ink-900);
  transition:transform .2s ease,opacity .2s ease;
}
.s196-burger[aria-expanded="true"] .s196-burger__bar:nth-child(1){transform:translateY(7px) rotate(45deg)}
.s196-burger[aria-expanded="true"] .s196-burger__bar:nth-child(2){opacity:0}
.s196-burger[aria-expanded="true"] .s196-burger__bar:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

/* ---------- 页脚 ---------- */
.s196-footer{
  position:relative;
  background:var(--ink-900);
  background-image:linear-gradient(160deg,rgba(22,35,58,.85),rgba(11,18,32,1) 70%);
  color:var(--paper);
  border-top:3px solid var(--orange);
}
.s196-footer__top{
  display:grid;
  grid-template-columns:1.15fr 2.1fr 1.2fr;
  gap:44px;
  width:100%;
  max-width:1240px;
  margin:0 auto;
  padding:64px 28px 44px;
}
.s196-footer__mark{
  display:grid;
  place-items:center;
  width:54px;
  height:54px;
  margin-bottom:18px;
  background:var(--orange);
  color:var(--ink-900);
  font-family:var(--mono);
  font-size:17px;
  font-weight:700;
  border:2px solid var(--paper);
  box-shadow:4px 4px 0 rgba(0,224,192,.9);
  transform:skewX(-8deg);
}
.s196-footer__motto{
  margin:0 0 12px;
  font-size:24px;
  font-weight:900;
  letter-spacing:-.01em;
}
.s196-footer__note{
  margin:0;
  max-width:34ch;
  font-size:14px;
  line-height:1.7;
  color:rgba(243,236,224,.66);
}
.s196-footer__cols{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:28px;
}
.s196-footer__title{
  margin:0 0 16px;
  padding-bottom:10px;
  font-family:var(--mono);
  font-size:11.5px;
  font-weight:500;
  letter-spacing:.2em;
  text-transform:uppercase;
  color:var(--mint);
  border-bottom:2px solid rgba(0,224,192,.25);
}
.s196-footer__list{display:flex;flex-direction:column;gap:11px}
.s196-footer__link{
  position:relative;
  display:inline-block;
  font-size:14.5px;
  color:rgba(243,236,224,.74);
  text-decoration:none;
  transition:color .18s ease;
}
.s196-footer__link::after{
  content:"";
  position:absolute;
  left:0;
  bottom:-3px;
  width:0;
  height:2px;
  background:var(--mint);
  transition:width .24s ease;
}
.s196-footer__link:hover,
.s196-footer__link:focus-visible{color:var(--paper)}
.s196-footer__link:hover::after,
.s196-footer__link:focus-visible::after{width:100%}
.s196-footer__contact .s196-footer__title{margin-bottom:16px}
.s196-footer__line{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin:0 0 10px;
  font-family:var(--mono);
  font-size:13px;
  letter-spacing:.02em;
  color:rgba(243,236,224,.82);
  overflow-wrap:anywhere;
}
.s196-footer__key{
  color:var(--amber);
  min-width:34px;
}
.s196-footer__contact .s196-footer__note{margin-top:14px;max-width:32ch}
.s196-footer__ridge{
  position:relative;
  height:72px;
  overflow:hidden;
  border-top:1px solid rgba(243,236,224,.12);
}
.s196-footer__ridge::before{
  content:"";
  position:absolute;
  left:-6%;
  bottom:-98px;
  width:62%;
  height:150px;
  border:2px solid rgba(0,224,192,.2);
  border-radius:50%;
}
.s196-footer__ridge::after{
  content:"";
  position:absolute;
  right:-10%;
  bottom:-124px;
  width:74%;
  height:194px;
  border:2px solid rgba(255,90,31,.18);
  border-radius:50%;
}
.s196-footer__bottom{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:14px 26px;
  width:100%;
  max-width:1240px;
  margin:0 auto;
  padding:22px 28px 30px;
  border-top:2px solid rgba(243,236,224,.14);
}
.s196-footer__copy,
.s196-footer__icp{
  margin:0;
  font-family:var(--mono);
  font-size:12.5px;
  letter-spacing:.05em;
  color:rgba(243,236,224,.6);
}
.s196-footer__legal{display:flex;flex-wrap:wrap;gap:18px}
.s196-top{
  margin-left:auto;
  padding:9px 16px;
  background:transparent;
  color:var(--paper);
  font-family:var(--mono);
  font-size:12.5px;
  letter-spacing:.08em;
  border:2px solid rgba(243,236,224,.4);
  cursor:pointer;
  transition:background-color .18s ease,color .18s ease,border-color .18s ease,transform .18s ease;
}
.s196-top:hover,
.s196-top:focus-visible{
  background:var(--mint);
  color:var(--ink-900);
  border-color:var(--mint);
  transform:translateY(-2px);
}

/* ---------- 通用按钮 ---------- */
.s196-btn{
  display:inline-flex;
  align-items:center;
  gap:9px;
  padding:13px 22px;
  font-family:var(--sans);
  font-size:15px;
  font-weight:900;
  line-height:1;
  text-decoration:none;
  border:3px solid var(--brown);
  background:var(--paper-2);
  color:var(--brown);
  box-shadow:6px 6px 0 var(--brown);
  cursor:pointer;
  transition:transform .16s ease,box-shadow .16s ease,background-color .16s ease,color .16s ease;
}
.s196-btn:hover,
.s196-btn:focus-visible{transform:translate(3px,3px);box-shadow:3px 3px 0 var(--brown)}
.s196-btn--primary{background:var(--orange);color:var(--ink-900)}
.s196-btn--mint{background:var(--mint);color:var(--ink-900)}
.s196-btn--ghost{
  background:transparent;
  color:var(--paper);
  border-color:var(--paper);
  box-shadow:6px 6px 0 rgba(255,90,31,.9);
}
.s196-btn--ghost:hover,
.s196-btn--ghost:focus-visible{box-shadow:3px 3px 0 rgba(255,90,31,.9)}

/* ---------- 面包屑 ---------- */
.s196-breadcrumb{margin:0 0 26px}
.s196-breadcrumb ol{display:flex;flex-wrap:wrap;gap:8px}
.s196-breadcrumb li{
  display:flex;
  align-items:center;
  gap:8px;
  font-family:var(--mono);
  font-size:12.5px;
  letter-spacing:.05em;
  color:var(--slate);
}
.s196-breadcrumb li+li::before{
  content:"/";
  color:rgba(36,26,18,.32);
}
.s196-breadcrumb a{
  color:var(--brick);
  text-decoration:none;
  border-bottom:2px solid rgba(194,65,42,.35);
  transition:background-color .18s ease,color .18s ease;
}
.s196-breadcrumb a:hover,
.s196-breadcrumb a:focus-visible{
  background:rgba(255,90,31,.16);
  color:var(--brown);
}

/* ---------- 网格 ---------- */
.s196-grid{display:grid;gap:26px}
.s196-grid--2{grid-template-columns:repeat(2,minmax(0,1fr))}
.s196-grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}
.s196-grid--4{grid-template-columns:repeat(4,minmax(0,1fr))}
.s196-grid--asym{grid-template-columns:7fr 5fr}

/* ---------- 卡片 ---------- */
.s196-card{
  padding:26px;
  background:var(--paper-2);
  border:var(--edge);
  box-shadow:var(--hard);
  transition:transform .18s ease,box-shadow .18s ease;
}
.s196-card:hover{
  transform:translate(4px,4px);
  box-shadow:4px 4px 0 rgba(36,26,18,.22);
}
.s196-card--ink{
  background:var(--ink-900);
  color:var(--paper);
  border-color:var(--ink-800);
  box-shadow:8px 8px 0 rgba(255,90,31,.85);
}
.s196-card--ink:hover{box-shadow:4px 4px 0 rgba(255,90,31,.85)}

/* ---------- 图片容器 ---------- */
.s196-media{
  position:relative;
  display:block;
  overflow:hidden;
  aspect-ratio:16/9;
  background:var(--ink-800);
  border:var(--edge);
  box-shadow:var(--hard);
}
.s196-media img,
.s196-media video,
.s196-media svg{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
}
.s196-media--wide{aspect-ratio:21/9}
.s196-media--portrait{aspect-ratio:3/4}
.s196-media--square{aspect-ratio:1/1}
.s196-media__tag{
  position:absolute;
  left:0;
  bottom:0;
  padding:7px 11px;
  background:var(--ink-900);
  color:var(--mint);
  font-family:var(--mono);
  font-size:12px;
  letter-spacing:.06em;
}

/* ---------- 显现场景 ---------- */
.js [data-reveal]{
  opacity:0;
  transform:translateY(16px);
  transition:opacity .5s ease,transform .5s ease;
}
.js [data-reveal].is-visible{
  opacity:1;
  transform:none;
}

/* ---------- 响应式 ---------- */
@media (max-width:1200px){
  .s196-status{display:none}
}

@media (max-width:1050px){
  .s196-nav__link{padding:9px 10px;font-size:13.5px}
  .s196-nav__cta{padding:10px 14px;font-size:13.5px}
}

@media (max-width:960px){
  .s196-header__inner{
    grid-template-columns:1fr auto;
    gap:12px;
    padding:12px 18px;
    min-height:72px;
  }
  .s196-brand__mark{width:44px;height:44px;font-size:15px}
  .s196-brand__name{font-size:17px}
  .s196-brand__motto{font-size:10.5px;letter-spacing:.16em}
  .s196-burger{display:flex}
  .s196-nav{
    position:absolute;
    left:0;
    right:0;
    top:100%;
    display:none;
    flex-direction:column;
    align-items:stretch;
    gap:14px;
    padding:16px 18px 22px;
    background:var(--ink-800);
    border-top:2px solid var(--orange);
    border-bottom:3px solid var(--brown);
    max-height:min(76vh,640px);
    overflow-y:auto;
    box-shadow:0 10px 0 rgba(11,18,32,.35);
    animation:s196-panel .2s ease;
  }
  @keyframes s196-panel{
    from{opacity:0;transform:translateY(-8px)}
    to{opacity:1;transform:none}
  }
  .s196-nav[data-open]{display:flex}
  .s196-nav__list{flex-direction:column;align-items:stretch;gap:0}
  .s196-nav__link{
    padding:15px 8px;
    font-size:16px;
    border:0;
    border-bottom:1px solid rgba(243,236,224,.14);
  }
  .s196-nav__link[aria-current="page"]{
    border:0;
    border-bottom:1px solid rgba(255,90,31,.6);
  }
  .s196-nav__cta{
    text-align:center;
    padding:15px 18px;
    font-size:15.5px;
  }
}

@media (max-width:900px){
  .s196-footer__top{
    grid-template-columns:1fr;
    gap:36px;
    padding:48px 20px 34px;
  }
  .s196-footer__cols{grid-template-columns:repeat(2,minmax(0,1fr));gap:26px}
  .s196-footer__bottom{padding:20px 20px 26px}
  .s196-top{margin-left:0}
}

@media (max-width:820px){
  body{font-size:16px}
  .s196-container{padding:0 20px}
  .s196-section{padding:48px 0}
  .s196-grid--2,
  .s196-grid--3,
  .s196-grid--4,
  .s196-grid--asym{grid-template-columns:minmax(0,1fr)}
  .s196-grid{gap:20px}
  .s196-card{padding:20px}
  .s196-divider{height:2px}
}

@media (max-width:560px){
  .s196-footer__cols{grid-template-columns:1fr}
  .s196-footer__legal{gap:12px}
  .s196-brand__motto{display:none}
  .s196-btn{width:100%;justify-content:center}
}

/* ---------- 无障碍动画偏好 ---------- */
@media (prefers-reduced-motion: reduce){
  html{scroll-behavior:auto}
  *,
  *::before,
  *::after{
    animation-duration:.001ms !important;
    animation-iteration-count:1 !important;
    transition-duration:.001ms !important;
  }
  .js [data-reveal]{opacity:1;transform:none}
  .s196-card:hover,
  .s196-btn:hover{transform:none}
}
