/* ========== 全局 Reset & 基础布局 ========== */
* {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
  }
  html, body {
    height: 100%;
    font-family: 'Open Sans', sans-serif;
    overflow-x: hidden;
  }
  html, body {
  margin: 0;
  padding: 0;
  overflow-x: hidden;   /* **核心**：隐藏一切横向滚动 */
}
  body {
    font-weight: 400;
    display: flex;
    flex-direction: column;
  }
  .page-wrapper {
    display: flex;
    flex-direction: column;
    min-height: 100%;
  }
  .page-content {
    flex: 1;
    padding-top: 4rem; /* 如果 header 高度是 4rem，可调整 */
  }
  
  
  /* ========== Header ========== */
  .site-header {
    position: fixed;
    top: 0; left: 0; right: 0;
    background: #fff;
    box-shadow: 0 2px 4px rgba(0,0,0,0.1);
    z-index: 1000;
    padding: 1rem 0;
  }
  .container {
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 16px;
    display: flex;
    align-items: center;
    justify-content: space-between;
  }
  .site-logo img {
    height: 50px;
    display: block;
  }
  
  /* 导航 */
  .site-nav { display: none; }
  .mobile-menu-toggle {
    display: block;
    background: none;
    border: none;
    font-size: 1.5rem;
    cursor: pointer;
  }
  .nav-list {
    list-style: none;
    display: flex;
    flex-direction: column;
    gap: 12px;
    margin-top: .5rem;
  }
  .nav-list a {
    text-decoration: none;
    color: #333;
    text-transform: uppercase;
    font-weight: 500;
  }
  .site-nav.is-open { display: block; }
  
  @media (min-width: 768px) {
    .mobile-menu-toggle { display: none; }
    .site-nav { display: block; margin-left: auto; }
    .nav-list {
      flex-direction: row;
      gap: 24px;
      margin-top: 0;
    }
  }
  
  /* ========== chieafore Hero 区域 ========== */
  .prodotti-hero {
    position: relative;
    background: url('https://assets.slarkvan.com/image/desktopprodotti_image1.jpg') center/cover no-repeat;
    height: 60vh;
    overflow: hidden;
    width: 100%;
    margin-top: -4rem; /* 保证在 header 之下 */
    padding-top: 4rem; /* 再给内部留同样的间距，确保内容不被导航栏挡住 */
  }
  .prodotti-hero__overlay {
    position: absolute;
  top: 50%; left: 50%;
  transform: translate(-50%, -50%);
  width: 90%;
  max-width: 800px;
  /* 改成竖直排列，居中对齐 */
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: 1.5rem;
}
  .prodotti-hero__title {
    font-size: clamp(2.5rem,8vw,5rem);
    color: #fff;
    margin-bottom: 1.5rem;
    text-transform: uppercase;
  }
/* ========== 搜索框容器 ========== */
.download-search {
    display: flex;
    gap: 1rem;
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;     /* 居中 */
  }
  
  /* 输入区自动撑满剩余空间 */
  .download-search__input {
    position: relative;
    flex: 1;
  }
  
  /* 文本输入框 */
  .download-search__input input {
    width: 100%;
    padding: 0.75rem 3rem 0.75rem 1rem;
    border: 1px solid #ccc;
    border-radius: 4px;
    font-size: 1rem;
  }
  
  /* 放大镜图标（如果是按钮，保持可点击） */
  .download-search__input .search-icon {
    position: absolute;
    top: 50%;
    right: 0.75rem;
    transform: translateY(-50%);
    background: none;
    border: none;
    font-size: 1.25rem;
    cursor: pointer;
  }
  
  /* 提交按钮 */
  .download-search__btn {
    flex: 0 0 180px;     /* 初始固定宽度 */
    background: #C01C20;
    color: #fff;
    border: none;
    border-radius: 4px;
    font-size: 1rem;
    cursor: pointer;
    transition: flex-basis 0.2s, font-size 0.2s;
  }
  
  /* 中等屏：按钮略微变小 */
  @media (max-width: 1200px) {
    .download-search__btn {
      flex: 0 0 150px;
    }
  }
  
  /* 小平板：按钮和输入框字体更紧凑 */
  @media (max-width: 992px) {
    .download-search__btn {
      flex: 0 0 130px;
      font-size: 0.9rem;
    }
    .download-search__input input {
      padding: 0.6rem 2.5rem 0.6rem 0.8rem;
    }
  }
  
  /* 手机窄屏：上下堆叠，宽度 100% */
  @media (max-width: 767px) {
    .download-search {
      flex-direction: column;
    }
    .download-search__input,
    .download-search__btn {
      width: 100%;
      flex: none;
    }
    .download-search__btn {
      font-size: 1rem;
    }
  }

  /* ========== About Afore 区块 ========== */
.about-afore {
    max-width: 1200px;
    margin: 0 auto;
    padding: 2rem 1rem;
  }
  
  /* 面包屑 */
  breadcrumb {
    font-size: 0.9rem;
    margin-bottom: 2rem;
    margin-top: 2rem;
    color: #555;            /* HOME 默认灰 */
    display: flex;
    align-items: center;
    gap: 0.25rem;
  }
  
  /* HOME */
  .breadcrumb a {
    color: inherit;         /* 继承上面 #555 */
    text-decoration: none;
    font-weight: normal;
    margin-bottom: 2rem;
  }
  
  /* “>” 箭头 */
  .breadcrumb span.separator {
    color: #555;
  }
  
  /* 最后一个 span，也就是 “Chi è AFORE” */
  .breadcrumb span.current {
    color: #C01C20;
    font-weight: 600;
    text-decoration: underline;
  }
  
  /* Tab 导航 */
  .about-tabs {
    display: flex;
    justify-content: center;
    gap: 2rem;
    border-bottom: 2px solid #f0f0f0;
    margin-bottom: 2rem;
  }
  .about-tabs .tab {
    background: none;
    border: none;
    padding: 0.5rem 0;
    font-size: 1rem;
    font-weight: 600;
    color: #333;
    cursor: pointer;
    position: relative;
  }
  .about-tabs .tab--active {
    color: #C01C20;
  }
  .about-tabs .tab--active::after {
    content: "";
    position: absolute;
    bottom: -2px;
    left: 50%;
    transform: translateX(-50%);
    width: 40px;
    height: 4px;
    background: #C01C20;
    border-radius: 2px;
  }
  
  /* 面板 */
  .about-panels .panel {
    display: none;
  }
  .about-panels .panel--active {
    display: block;
  }
  
  /* 标题 */
  .about-title {
    font-size: 2rem;
    font-weight: 700;
    margin-bottom: 1rem;
  }
  .about-title .highlight {
    color: #C01C20;
  }
  
  /* 内容区域：左右并列 */
  .about-content {
    display: flex;
    align-items: flex-start;
    gap: 2rem;
    margin-top: 1rem;
  }
  /* 左侧文字 */
  .about-text {
    flex: 1 1 50%;
    font-size: 1rem;
    line-height: 1.6;
    color: #333;
  }
  /* 右侧图片 */
  .about-media {
    flex: 1 1 50%;
  }
  .about-media img {
    width: 100%;
    height: auto;
    border-radius: 8px;
  }
  
  /* 响应式：≤768px 时上下堆叠 */
  @media (max-width: 768px) {
    .about-content {
      flex-direction: column;
      text-align: center;
    }
    .about-text {
      margin-bottom: 1.5rem;
    }
  }

//* 基础重置 */
* {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
  }
  body {
    font-family: 'Open Sans', sans-serif;
    color: #333;
  }
  
/* ======== Milestones Section ======== */

/* 高亮色 & 背景色 */
:root {
    --primary: #C01C20;
    --bg: #f7f7f7;
  }
  
  /* 整体容器 */
  .milestones {
    padding: 2rem 1rem;
    background: var(--bg);
    overflow: hidden;
  }
  
  /* 标题 */
  .milestones__title {
    text-align: center;
    font-size: 2rem;
    font-weight: 700;
    margin-bottom: 1.5rem;
  }
  .milestones__title .highlight {
    color: var(--primary);
  }
  
  /* 列表：水平排列，项之间留1px分隔 */
  .milestones__list {
    display: flex;
    gap: 1px;
    background: #ddd;
  }
  
  /* 每一项默认平分宽度，统一背景图 */
  .milestones__list .milestone {
    flex: 1;
    position: relative;
    overflow: hidden;
    cursor: pointer;
    transition: flex 0.5s ease;
    background: url('https://assets.slarkvan.com/image/desktopchieafore_image3.jpg') center/cover no-repeat;
    background-size: cover;
  }
  
  /* 悬停时放大 2 倍 */
  .milestones__list .milestone:hover {
    flex: 2;
  }
  
  /* 年份竖排标签 */
  .milestones__list .milestone__year {
    position: absolute;
    top: 50%;
    left: 1rem;
    transform: translateY(-50%) rotate(180deg);
    writing-mode: vertical-rl;
    text-orientation: mixed;
    background: rgba(0,0,0,0.5);
    color: #fff;
    padding: 0.5rem;
    border-radius: 4px;
    font-weight: 700;
    font-size: 1.2rem;
    transition: background 0.3s;
  }
  
  /* 悬停时年份背景高亮 */
  .milestones__list .milestone:hover .milestone__year {
    background: var(--primary);
  }
  
  /* 悬停时显示内容层 */
  .milestones__list .milestone__content {
    position: absolute;
    inset: 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding: 1rem;
    text-align: center;
    background: rgba(0,0,0,0.6);
    color: #fff;
    opacity: 0;
    transition: opacity 0.5s ease;
  }
  .milestones__list .milestone:hover .milestone__content {
    opacity: 1;
  }
  
  /* 内容标题 */
  .milestones__list .milestone__heading {
    font-size: 2rem;
    font-weight: 700;
    margin-bottom: 0.5rem;
  }
  
  /* 链接箭头 */
  .milestones__list .milestone__link {
    margin-top: 1rem;
    font-size: 1.5rem;
    color: #fff;
    text-decoration: none;
    transition: transform 0.2s ease;
  }
  .milestones__list .milestone__link:hover {
    transform: translateX(4px);
  }
  
  /* ======== 响应式：窄屏时改为纵向 ======== */
  @media (max-width: 768px) {
    .milestones__list {
      flex-direction: column;
    }
    .milestones__list .milestone {
      flex: none !important;
      height: 200px;
      margin-bottom: 1px;
    }
    .milestones__list .milestone__year {
      position: relative;
      transform: none;
      writing-mode: horizontal-tb;
      margin-bottom: 0.5rem;
      background: var(--primary);
    }
    .milestones__list .milestone__content {
      position: relative;
      opacity: 1;
      background: var(--primary);
    }
  }
  
  /* ========== Product Grid ========== */
  /* 包裹标题和卡片整体 */
.product-grid-wrapper {
    display: flex;
    flex-direction: column;
    gap: 2rem;
    margin-top: 5rem;
  }
  
  /* 左对齐标题 */
  .product-grid-title {
    font-size: 2rem;
    font-weight: bold;
    text-align: left;
    margin: 0;
    padding-left: 0.5rem;
  }
  .product-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));  /* 自动缩列 */
    gap: 2rem;
    width: 100%;
    max-width: 1200px;
    margin: 2rem auto;
    padding: 0 1rem; /* 防止贴边 */
  }
  
  .product-card {
    background: #fff;
    padding: 0.5rem 1rem 2rem;  /* 简化写法 */
    border-radius: 8px;
    text-align: left;
    transition: transform .2s, box-shadow .3s;
    /* ⬇️ 新增：让卡片内容从上到下排列 */
    display: flex;
    flex-direction: column;
    height: 100%;
  }
  .product-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 12px 24px rgba(0,0,0,0.15);
  }
  .product-card img {
    width: 100%;
    height: auto;
    margin-bottom: 1rem;
    display: block;
  }
  .product-card h3 {
    margin: 0.5rem 0;
    font-size: 1.1rem;
    line-height: 1.4;
  }  
  .product-card .models {
    font-size: .9rem;
    color: #666;
    margin-bottom: 1rem;
  }
  .product-card .btn {
    display: inline-block;
    width: 100%;
    padding: 0.5rem 1rem;
    background: #C01C20;
    color: #fff;
    border-radius: 4px;
    text-decoration: none;
  
    /* ⬇️ 核心：将按钮推到底部 */
    margin-top: auto;
  
    /* ⬇️ 可选：让按钮靠左或居中 */
    align-self: center; /* 改为 center 可居中 */
  }
  
  .product-card .btn:hover {
    background: #991A1C;
  }

  .section-divider {
    width: 100%;
    max-width: 1200px;
    height: 2px;
    background-color: #C01C20; /* 红色 */
    margin: 3rem auto; /* 上下间距 */
    border-radius: 2px;
  }
  
  /* ========== Partner CTA ========== */
  .partner-cta__wrapper {
    display: flex;
    flex-wrap: wrap;
    gap: 1.5rem;
    justify-content: center;
    margin: 4rem auto;
  }
  .partner-card {
    background: #fff;
    box-shadow: 0 4px 16px rgba(0,0,0,0.08);
    padding: 2rem;
    border-radius: 8px;
    flex: 1 1 300px;
    text-align: center;
    transition: transform .2s, box-shadow .3s;
  }
  .partner-card:hover {
    transform: translateY(-4px);
  }
  /* 让图标、标题、文字自然堆叠，按钮推到最底部 */
.partner-card__icon {
    width: 48px;
    margin-bottom: 1rem;
    flex-shrink: 0;
  }
  .partner-card__title {
    font-weight: 600;
    margin-bottom: .5rem;
    flex-shrink: 0;
  }
  /* 中间正文区域可随内容伸缩 */
  .partner-card__text {
    flex-grow: 1;
  }
  .partner-card__btn {
    display: inline-block;
    padding: .5rem 1rem;
    background: #C01C20;
    color: #fff;
    border-radius: 4px;
    text-decoration: none;
    /* 关键：上外边距自动，吸到底部 */
    margin-top: auto;
}
.partner-card__btn:hover {
    background: #991A1C;
}
  
  /* ========== 通用变量 & 重置 ========== */
:root {
    --primary-color: #C01C20;
    --bg-color:    #fff;
    --text-color:  #333;
    --max-width:   1200px;
  }
  
  * {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
  }
  
  body {
    font-family: "Open Sans", sans-serif;
    color: var(--text-color);
    background: #fff;
  }
  
  /* ========== 容器布局 ========== */
  .about-section {
    max-width: var(--max-width);
    margin: 0 auto;
    padding: 2rem 1rem;  /* 上下由 4rem → 2rem */
    background: var(--bg-color);
    display: flex;
    flex-direction: column;
    gap: 2rem;
  }
  
  /* ========== 每一项 ========== */
  .about-item {
    display: flex;
    align-items: center;
    gap: 2rem;
  }
  
  /* 左右翻转 */
  .about-item.reverse {
    flex-direction: row-reverse;
  }
  
  /* ========== 媒体区 ========== */
  .about-media {
    flex: 1;
  }
  .about-media img {
    width: 100%;
    height: auto;
    display: block;
    border-radius: 8px;
    object-fit: cover;
  }
  
  /* ========== 文本区 ========== */
  .about-content {
    flex: 1;
  }
  .about-content, .about-content p {
    flex-direction: column;   /* 由横排改为竖排 */
  }
  .about-content h3 {
    font-size: 2rem;
    font-weight: 700;
    margin-bottom: 1rem;
    line-height: 1.2;
  }
  .about-content h3 .highlight {
    color: var(--primary-color);
  }
  .about-content p {
    font-size: 1rem;
    line-height: 1.6;
    color: var(--text-color);
  }
  
  /* ========== 响应式：窄屏时上下堆叠 ========== */
  @media (max-width: 768px) {
    .about-item {
      flex-direction: column;
      text-align: center;
    }
    .about-media,
    .about-content {
      width: 100%;
    }
    .about-content h3 {
      margin-top: 1rem;
    }
  }

  /* ========== Newsletter ========== */
.newsletter {
  padding: 4rem 0;
}
.newsletter__inner {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  max-width: 1200px;
  margin: 0 auto;
  gap: 2rem;
}
.newsletter__input {
  flex: 1 1 300px;
  padding: 0.75rem 1rem;
  border-radius: 9999px;
  border: 1px solid #DDD;
}
.newsletter__btn {
  padding: 0.75rem 2rem;
  border-radius: 9999px;
  border: none;
  background-color: #C01C20;
  color: #FFF;
}

/* ========== Footer ========== */
.site-footer {
  background: #000;
  color: #FFF;
  padding: 2rem 0;
}
.footer__inner {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  max-width: 1200px;
  margin: 0 auto;
  gap: 1rem;
}
.footer__socials a {
  margin-right: 0.5rem;
}
.footer__socials img {
  width: 24px;
  height: auto;
}

/* ===== Newsletter Signup ===== */
.newsletter {
  background: #fff;
  padding: 4rem 0;
}

.newsletter__inner {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 2rem;
}

.newsletter__text {
  flex: 1 1 300px;
}

.newsletter__title {
  font-size: 1.75rem;
  font-weight: 700;
  margin-bottom: 0.5rem;
}

.newsletter__subtitle {
  font-size: 1rem;
  color: #666;
}

.newsletter__form {
  flex: 1 1 300px;
  display: flex;
  gap: 0.5rem;
}

.newsletter__input {
  flex: 1;
  padding: 0.75rem 1rem;
  height: au;
  border: 1px solid #ddd;
  border-radius: 9999px 0 0 9999px;
  font-size: 1rem;
}

.newsletter__btn {
  padding: 0 1.5rem;
  width: 30%;
  background-color: #C01C20;
  color: #fff;
  border: none;
  border-radius: 0 9999px 9999px 0;
  font-size: 1rem;
  font-weight: 600;
  cursor: pointer;
}

.newsletter__btn:hover {
  background-color: #621c1c;
}

/* Mobile: form 堆叠 */
@media (max-width: 600px) {
  .newsletter__inner {
    flex-direction: column;
    align-items: stretch;
  }
  .newsletter__form {
    flex-direction: column;
  }
  .newsletter__input,
  .newsletter__btn {
    border-radius: 9999px;
  }
}

/* ===== Footer ===== */
.site-footer {
  background: #000;
  color: #fff;
  padding: 2rem 0;
  height: 300px
}

.footer__inner {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
}

.footer__socials a img {
  width: 24px;
  height: auto;
  margin-right: 0.5rem;
}

.footer__socials {
  flex: 1 1 200px;
}

.footer__copyright {
  flex: 1 1 200px;
  text-align: center;
  font-size: 0.9rem;
}

.footer__logo img {
  height: 40px;
  width: auto;
}

.footer__logo {
  flex: 1 1 200px;
  text-align: right;
}

/* Mobile: 堆叠居中 */
@media (max-width: 600px) {
  .footer__inner {
    flex-direction: column;
    text-align: center;
  }
  .footer__socials,
  .footer__copyright,
  .footer__logo {
    flex: none;
    margin-bottom: 1rem;
  }
  .footer__socials a img {
    margin-right: 1rem;
  }
}

/* 1) 让 html、body 占满整个视口高度 */
html, body {
  height: 100%;
  margin: 0;          /* 清除默认 margin */
  padding: 0;
}

/* 2) body 作为 flex 容器，纵向排列 */
body {
  display: flex;
  flex-direction: column;
}

/* 3) 主内容区自动拉伸 */
.page-content {
  flex: 1;            /* 占据 header/footer 以外的所有剩余空间 */
}

/* 4) footer 固定在底部，不拉伸 */
.site-footer {
  flex-shrink: 0;
}

/* 再次保证全局无横向滚动 */
html, body { overflow-x:hidden; }