/* ===============================
   GLOBAL LAYOUT SYSTEM
   Structural & spacing rules
================================ */

/* ===== Fixed navbar offset ===== */
body > :is(section, div):first-of-type:not(#hero):not(.page-title) {
  padding-top: 90px;
}

body {
  overflow-x: hidden;
}

/* ===== Main wrapper safety ===== */
main {
  display: block;
  width: 100%;
  padding-top: 60px; /* 等于 navbar 高度 */
  overflow-x: hidden;
}

/* ===== Global section rhythm ===== */
section {
  padding-block: 4rem;
}

/* ===== Anchor offset under fixed navbar ===== */
section h1,
section h2,
section h3 {
  scroll-margin-top: 160px;
}

/* ===== Content list (restore bullets) ===== */
section ul {
  list-style: disc;
  padding-left: 1.4em;
}

section ul li {
  list-style: none;
  margin-bottom: 0.5em;
}

/* ===== Explicit no-bullet zones ===== */
nav ul,
footer ul {
  list-style: none;
  padding-left: 0;
  margin: 0;
}

/* ===== Footer spacing safety ===== */
footer {
  position: relative;
  /*margin-top: 120px;*/
  clear: both;

}

header,
footer {
  width: 100%;
}

/* Ensure space before footer
main > footer,
section:last-of-type {
 /* margin-bottom: 120px;
}*/

/* ===============================
   PAGE HEADER / INTRO SECTIONS
   (Exclude from global section rhythm)
================================ */

/* About / Overview style headers */
.overview-section {
  padding-top: 40px;      /* 比普通 section 小 */
  padding-bottom: 40px;
}

/* 防止 container 自带 margin 拉开 */
.overview-section .container {
  margin-top: 0;
}

.container {
  width: 100%;
  max-width: 1200px;
  margin-inline: auto;
  padding-inline: 1.5rem;
}
