:root{
  --bg:#FDFBF7;
  --paper:#FFFFFF;
  --ink:#101010;
  --brand:#F4442E;
  --brand2:#FFA630;
  --lime:#E8FF47;
  --muted:#5F5F5F;
  --wrap:1120px;
  --r:12px;
  --sh:5px 5px 0 var(--ink);
}
*,*::before,*::after{box-sizing:border-box;}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;}
body{
  margin:0;
  background:var(--bg);
  color:var(--ink);
  font-family:"Microsoft YaHei","PingFang SC","Hiragino Sans GB","Helvetica Neue",Arial,sans-serif;
  font-size:16px;
  line-height:1.78;
}
img{max-width:100%;height:auto;display:block;}
h1,h2,h3,h4,p,ul,ol,li,dl,dd,dt,figure,figcaption,blockquote{margin:0;padding:0;}
ul,ol{list-style:none;}
a{color:inherit;text-decoration:none;}
svg{display:block;}

.top{position:sticky;top:0;z-index:60;background:var(--bg);border-bottom:2px solid var(--ink);}
.top__in{
  max-width:var(--wrap);margin:0 auto;padding:12px 22px;
  display:flex;align-items:center;gap:16px;flex-wrap:wrap;
}
.brand{display:inline-flex;align-items:center;gap:10px;font-size:19px;font-weight:800;letter-spacing:.6px;}
.brand img{width:38px;height:38px;border:2px solid var(--ink);border-radius:10px;background:var(--paper);}
.brand span{white-space:nowrap;}
.nav{display:flex;align-items:center;gap:4px;flex-wrap:wrap;margin-left:auto;}
.nav a{
  padding:8px 13px;border:2px solid transparent;border-radius:8px;
  font-size:15px;font-weight:700;color:var(--ink);white-space:nowrap;
}
.nav a:hover{border-color:var(--ink);background:var(--lime);}
.nav a[aria-current="page"]{background:var(--ink);color:var(--paper);}

.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  white-space:nowrap;padding:12px 22px;border:2px solid var(--ink);border-radius:10px;
  background:linear-gradient(100deg,var(--brand),var(--brand2));
  color:#fff;font-size:15px;font-weight:800;letter-spacing:.5px;
  box-shadow:4px 4px 0 var(--ink);cursor:pointer;
}
.btn:hover{transform:translate(-1px,-1px);box-shadow:5px 5px 0 var(--ink);}
.btn--ghost{background:var(--paper);color:var(--ink);}
.btn--top{padding:9px 18px;font-size:14px;box-shadow:3px 3px 0 var(--ink);}

.hero{background:linear-gradient(180deg,#FFFEF8,#FDFBF7);border-bottom:2px solid var(--ink);}
.hero__in{
  max-width:var(--wrap);margin:0 auto;padding:46px 22px 54px;
  display:grid;grid-template-columns:1.12fr .88fr;gap:38px;align-items:center;
}
.hero__copy h1{font-size:44px;line-height:1.16;font-weight:900;letter-spacing:1px;}
.hero__lead{margin-top:16px;font-size:17px;color:#2F2F2F;}
.hero__cta{margin-top:24px;display:flex;flex-wrap:wrap;gap:12px;}
.cta-note{margin-top:12px;font-size:14px;color:var(--muted);}
.hero__facts{margin-top:22px;display:flex;flex-wrap:wrap;gap:10px;}
.hero__facts li{
  padding:6px 13px;border:2px solid var(--ink);border-radius:8px;
  background:var(--paper);box-shadow:3px 3px 0 var(--ink);
  font-size:14px;font-weight:700;
}
.hero__shot{display:flex;flex-direction:column;align-items:center;}
.hero__shot img{
  width:100%;max-width:300px;height:auto;
  border:2px solid var(--ink);border-radius:16px;
  background:var(--paper);box-shadow:8px 8px 0 var(--ink);
}
.hero__shot figcaption{margin-top:14px;font-size:14px;color:var(--muted);text-align:center;}

.stats{background:var(--ink);color:var(--paper);border-bottom:2px solid var(--ink);}
.stats__in{
  max-width:var(--wrap);margin:0 auto;padding:24px 22px;
  display:grid;grid-template-columns:repeat(4,1fr);gap:16px;text-align:center;
}
.stats__in b{display:block;font-size:26px;font-weight:900;color:var(--lime);line-height:1.3;}
.stats__in span{font-size:14px;color:#D8D8D8;}

.sec{padding:58px 0;}
.sec__in{max-width:var(--wrap);margin:0 auto;padding:0 22px;}
.h2{font-size:30px;line-height:1.3;font-weight:900;letter-spacing:.8px;}
.sub{margin-top:8px;font-size:15px;color:var(--muted);}

.cards{margin-top:26px;display:grid;grid-template-columns:repeat(3,1fr);gap:18px;}
.card{
  padding:22px;border:2px solid var(--ink);border-radius:var(--r);
  background:var(--paper);box-shadow:var(--sh);
}
.card__ic{
  width:42px;height:42px;margin-bottom:14px;
  display:flex;align-items:center;justify-content:center;
  border:2px solid var(--ink);border-radius:10px;background:var(--lime);color:var(--ink);
}
.ic{width:22px;height:22px;}
.card h3{font-size:17px;font-weight:900;}
.card p{margin-top:8px;font-size:15px;color:#333;}

.shots{margin-top:26px;display:grid;grid-template-columns:repeat(4,1fr);gap:18px;}
.shot img{
  width:100%;height:auto;border:2px solid var(--ink);border-radius:var(--r);
  background:var(--paper);box-shadow:var(--sh);
}
.shot figcaption{margin-top:10px;font-size:14px;color:var(--muted);text-align:center;line-height:1.6;}

.entry{margin-top:26px;display:grid;grid-template-columns:repeat(3,1fr);gap:18px;}
.entry a{
  display:block;padding:24px;border:2px solid var(--ink);border-radius:var(--r);
  background:var(--paper);box-shadow:var(--sh);
}
.entry a:hover{background:#FFFBEA;}
.entry h3{font-size:18px;font-weight:900;}
.entry p{margin-top:10px;font-size:15px;color:#333;}
.entry__more{
  display:inline-block;margin-top:14px;padding-bottom:2px;
  font-size:15px;font-weight:800;color:var(--brand);border-bottom:2px solid var(--lime);
}

.quotes{margin-top:26px;display:grid;grid-template-columns:repeat(3,1fr);gap:18px;}
.quote{
  padding:22px;border:2px solid var(--ink);border-radius:var(--r);
  background:var(--paper);box-shadow:var(--sh);
}
.quote p{font-size:15px;color:#2F2F2F;}
.who{margin-top:14px;font-size:13px;font-weight:800;color:var(--muted);}

.qa{margin-top:24px;}
.qa details{
  margin-bottom:12px;padding:14px 20px;
  border:2px solid var(--ink);border-radius:10px;
  background:var(--paper);box-shadow:4px 4px 0 var(--ink);
}
.qa summary{font-size:16px;font-weight:800;cursor:pointer;}
.qa p{margin-top:10px;font-size:15px;color:#333;}

.cta{background:var(--ink);color:var(--paper);border-top:2px solid var(--ink);padding:54px 0;}
.cta__in{max-width:var(--wrap);margin:0 auto;padding:0 22px;text-align:center;}
.cta__in h2{font-size:30px;font-weight:900;color:var(--paper);}
.cta .sub{color:#CFCFCF;}
.cta .btn{background:linear-gradient(100deg,var(--brand),var(--brand2));color:#fff;}
.cta .btn--ghost{background:var(--paper);color:var(--ink);}
.cta__btn{margin-top:22px;}

.page-hero{background:linear-gradient(180deg,#FFFEF8,#FDFBF7);border-bottom:2px solid var(--ink);padding:46px 0 42px;}
.page-hero__in{max-width:var(--wrap);margin:0 auto;padding:0 22px;}
.page-hero h1{font-size:38px;line-height:1.2;font-weight:900;letter-spacing:1px;}
.lead{margin-top:14px;max-width:900px;font-size:17px;color:#2F2F2F;}

.prose{max-width:900px;}
.prose h2{margin-top:44px;font-size:27px;line-height:1.34;font-weight:900;}
.prose h3{margin-top:24px;font-size:19px;font-weight:900;}
.prose p{margin-top:14px;font-size:16px;color:#2E2E2E;}
.prose ul{margin-top:14px;}
.prose li{position:relative;margin-top:9px;padding-left:20px;font-size:16px;color:#2E2E2E;}
.prose li::before{
  content:"";position:absolute;left:0;top:11px;
  width:8px;height:8px;border:2px solid var(--ink);border-radius:2px;background:var(--brand);
}
.prose strong{font-weight:800;}
.prose a{color:var(--brand);font-weight:800;border-bottom:2px solid var(--lime);}
.prose a:hover{background:var(--lime);}
.prose figure{margin-top:24px;max-width:400px;}
.prose figure img{
  width:auto;max-width:100%;height:auto;
  border:2px solid var(--ink);border-radius:var(--r);
  background:var(--paper);box-shadow:6px 6px 0 var(--ink);
}
.prose figcaption{margin-top:10px;font-size:14px;color:var(--muted);line-height:1.6;}

.feat{
  margin-top:20px;padding:22px;border:2px solid var(--ink);border-radius:var(--r);
  background:var(--paper);box-shadow:var(--sh);
}
.feat h3{font-size:17px;}
.feat p{margin-top:8px;font-size:15px;color:#2E2E2E;}

.more{margin-top:46px;border-top:2px solid var(--ink);padding-top:26px;}
.more h2{margin-top:0;font-size:25px;}
.more__grid{margin-top:18px;display:grid;grid-template-columns:repeat(3,1fr);gap:16px;}
.more__grid a{
  display:block;padding:18px;border:2px solid var(--ink);border-radius:var(--r);
  background:var(--paper);box-shadow:4px 4px 0 var(--ink);
}
.more__grid a:hover{background:#FFFBEA;}
.more__grid b{display:block;font-size:16px;font-weight:900;margin-bottom:6px;}
.more__grid span{font-size:14px;color:var(--muted);line-height:1.65;}

.foot{padding:46px 0 28px;}
.foot__in{
  max-width:var(--wrap);margin:0 auto;padding:0 22px;
  display:grid;grid-template-columns:1.4fr 1fr 1.1fr;gap:28px;
}
.foot h3{font-size:16px;font-weight:900;margin-bottom:12px;}
.foot__brand p{font-size:14px;color:var(--muted);}
.foot__links a{display:block;padding:4px 0;font-size:15px;color:#333;}
.foot__links a:hover{color:var(--brand);}
.foot__cta{display:block;}
.foot__cta p{margin-bottom:14px;font-size:14px;color:var(--muted);}
.foot .btn{
  display:inline-flex;padding:12px 22px;border:2px solid var(--ink);
  background:linear-gradient(100deg,var(--brand),var(--brand2));color:#fff;
}
.foot__bottom{border-top:2px solid var(--ink);padding-top:18px;}
.foot__bottom p{font-size:13px;color:var(--muted);line-height:1.85;}
.foot__bottom p+p{margin-top:6px;}

@keyframes stampIn{
  from{opacity:0;transform:translateY(16px) rotate(-.6deg);}
  to{opacity:1;transform:none;}
}
.card,.entry a,.quote,.shot,.feat,.stats__in>div{animation:stampIn .5s cubic-bezier(.2,.7,.3,1) both;}
.entry a:nth-child(2),.card:nth-child(2),.quote:nth-child(2){animation-delay:.07s;}
.entry a:nth-child(3),.card:nth-child(3),.quote:nth-child(3){animation-delay:.14s;}
.card:nth-child(5),.card:nth-child(6){animation-delay:.07s;}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto;}
  .card,.entry a,.quote,.shot,.feat,.stats__in>div{animation:none;}
}

@media (max-width:980px){
  .hero__in{grid-template-columns:1fr;gap:30px;padding:36px 22px 46px;}
  .hero__copy h1{font-size:36px;}
  .stats__in{grid-template-columns:repeat(2,1fr);}
  .cards,.entry,.quotes,.more__grid{grid-template-columns:repeat(2,1fr);}
  .shots{grid-template-columns:repeat(2,1fr);}
  .foot__in{grid-template-columns:1fr 1fr;}
  .page-hero h1{font-size:32px;}
  .prose h2{font-size:24px;}
}

@media (max-width:620px){
  .top__in{flex-wrap:wrap;gap:10px 12px;}
  .brand{order:1;}
  .btn--top{order:2;margin-left:auto;}
  .nav{order:3;flex:1 0 100%;justify-content:center;flex-wrap:wrap;margin-left:0;}
  .nav a{padding:7px 11px;font-size:14px;}
  .hero__in{padding:28px 22px 36px;}
  .hero__copy h1{font-size:29px;}
  .hero__lead{font-size:16px;}
  .hero__shot img{max-width:262px;}
  .sec{padding:42px 0;}
  .h2{font-size:23px;}
  .cta__in h2{font-size:23px;}
  .stats__in{grid-template-columns:repeat(2,1fr);padding:20px 22px;}
  .stats__in b{font-size:22px;}
  .cards,.entry,.quotes,.shots,.more__grid{grid-template-columns:1fr;}
  .foot__in{grid-template-columns:1fr;gap:22px;}
  .page-hero{padding:32px 0 30px;}
  .page-hero h1{font-size:27px;}
  .lead{font-size:16px;}
  .prose h2{font-size:22px;margin-top:36px;}
  .prose p,.prose li{font-size:15px;}
  .quote,.card,.feat{padding:18px;}
}
