* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

body {
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", sans-serif;
  background: #111;
  color: #fff;
  line-height: 1.6;
}

.container {
  max-width: 1000px;
  margin: 0 auto;
  padding: 0 20px;
}

/* 导航栏+背景图 */
.navbar {
  position: relative;
  padding: 24px 0;
  position: sticky;
  top: 0;
  z-index: 999;
  background-image: url(images/nav-bg.jpg);
  background-size: cover;
  background-position: center;
}
.navbar::after {
  content: "";
  position: absolute;
  left: 0; top: 0;
  width: 100%; height: 100%;
  background: rgba(0,0,0,0.75);
  z-index: -1;
}
.navbar .container {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.logo {
  font-size: 20px;
  font-weight: bold;
  color: #fff;
}
.menu {
  list-style: none;
  display: flex;
  gap: 28px;
}
.menu a {
  color: #eee;
  text-decoration: none;
  font-weight: 500;
}
.menu a:hover {
  color: #f5d142;
}

/* 首屏 */
.hero {
  padding: 120px 0;
  text-align: center;
  background: #151515;
}
.hero h1 {
  font-size: 46px;
  margin-bottom: 8px;
}
.hero h2 {
  font-size: 24px;
  color: #f5d142;
  margin-bottom: 18px;
}
.hero span {
  color: #f5d142;
}
.desc {
  font-size: 18px;
  color: #aaa;
}

/* 擅长软件 */
.software {
  background: #1a1a1a;
  padding: 50px 0;
  text-align: center;
}
.soft-title {
  font-size: 16px;
  color: #aaa;
  margin-bottom: 22px;
}
.soft-list {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 14px;
}
.soft-list span {
  background: #292929;
  color: #f5d142;
  padding: 11px 20px;
  border-radius: 50px;
  font-size: 15px;
}

/* 作品分类按钮 */
.category-box{
  background:#111;
  padding:45px 0;
  text-align:center;
}
.cat-tip{
  color:#aaa;
  margin-bottom:28px;
}
.category-flex{
  display:flex;
  justify-content:center;
  align-items:center;
  gap:22px;
  flex-wrap:wrap;
}
.cat-tag{
  padding:12px 26px;
  border-radius:6px;
  background:#222;
  color:#ccc;
  text-decoration:none;
  transition:all 0.3s ease;
}
.tag1{transform: translateY(0);border-radius:40px;}
.tag2{transform: translateY(-12px);border-radius:6px 30px;}
.tag3{transform: translateY(8px);border-radius:30px 6px;}
.cat-tag.active,.cat-tag:hover{
  background:#f5d142;
  color:#000;
  transform:translateY(0) scale(1.05);
  box-shadow:0 0 18px rgba(245,209,66,0.25);
}

/* 作品区域-多图排版 */
.works {
  padding: 60px 0;
  background: #111;
}
.work-item{
  margin-bottom:50px;
}
.work-item h3{
  padding:16px 0;
  font-size:22px;
  color:#f5d142;
}
.img-wrap{
  display:grid;
  grid-template-columns: repeat(auto-fill,minmax(240px,1fr));
  gap:25px;
}
.img-wrap img{
  width:auto;
  max-width:100%;
  height:auto;
  display:block;
  margin:0 auto;
  background:#1a1a1a;
  padding:8px;
  border-radius:12px;
  transition:0.3s;
}
.img-wrap img:hover{
  transform:translateY(-5px);
  box-shadow:0 8px 24px rgba(245,209,66,0.15);
}

/* 关于我 */
.about {
  padding: 90px 0;
  background: #151515;
  text-align: center;
}
.section-title {
  font-size: 30px;
  margin-bottom: 40px;
  color: #fff;
}
.about p {
  max-width: 650px;
  margin: 0 auto 30px;
  color: #ccc;
}
.skills {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 12px;
}
.skills span {
  background: #242424;
  color: #f5d142;
  padding: 9px 16px;
  border-radius: 30px;
  font-size: 14px;
}

/* 工作经历 */
.career{
  background:#111;
  padding:90px 0;
}
.timeline{
  max-width:700px;
  margin:0 auto;
  border-left:2px solid #f5d142;
  padding-left:30px;
}
.timeline-item{
  margin-bottom:40px;
  position:relative;
}
.timeline-item::before{
  content:"";
  width:12px;
  height:12px;
  background:#f5d142;
  border-radius:50%;
  position:absolute;
  left:-36px;
  top:6px;
}
.time{
  color:#f5d142;
  font-size:15px;
  margin-bottom:6px;
}
.info h3{
  color:#fff;
  font-size:19px;
  margin-bottom:8px;
}
.info p{
  color:#aaa;
  line-height:1.7;
}

/* 联系 */
.contact {
  padding: 90px 0;
  background: #151515;
  text-align: center;
}
.contact p {
  font-size: 17px;
  color: #ccc;
  margin-bottom: 10px;
}

/* 底部 */
footer {
  background: #0a0a0a;
  color: #777;
  text-align: center;
  padding: 35px 0;
}