.page-privacy-policy {
  font-family: 'Arial', sans-serif;
  line-height: 1.6;
  color: #333333; /* Default text color for light background */
  background-color: #FFFFFF; /* Default body background */
}

.page-privacy-policy__hero-section {
  padding-top: 10px; /* Rely on body padding-top from shared.css */
  padding-bottom: 40px;
  background-color: #F8F8F8;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  position: relative;
  overflow: hidden;
}

.page-privacy-policy__hero-content {
  max-width: 800px;
  margin: 0 auto 30px auto;
  padding: 0 20px;
  position: relative;
  z-index: 2;
}

.page-privacy-policy__main-title {
  font-size: clamp(2.2rem, 4vw, 3.5rem);
  color: #26A9E0;
  margin-bottom: 15px;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: -0.02em;
}

.page-privacy-policy__hero-description {
  font-size: 1.15rem;
  color: #555555;
  margin-bottom: 30px;
}

.page-privacy-policy__hero-image-wrapper {
  width: 100%;
  max-width: 1200px;
  margin-top: 20px;
  position: relative;
  z-index: 1;
}

.page-privacy-policy__hero-image {
  width: 100%;
  height: auto;
  display: block;
  border-radius: 10px;
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.1);
}

.page-privacy-policy__content-section {
  padding: 60px 0;
}

.page-privacy-policy__light-bg {
  background-color: #ffffff;
  color: #333333;
}

.page-privacy-policy__container {
  max-width: 1000px;
  margin: 0 auto;
  padding: 0 20px;
}

.page-privacy-policy__section-title {
  font-size: clamp(1.8rem, 3vw, 2.8rem);
  color: #26A9E0;
  margin-bottom: 25px;
  margin-top: 40px;
  font-weight: 600;
  line-height: 1.3;
}

.page-privacy-policy__sub-title {
  font-size: clamp(1.4rem, 2.5vw, 2.2rem);
  color: #333333;
  margin-bottom: 15px;
  margin-top: 30px;
  font-weight: 600;
}

.page-privacy-policy p {
  margin-bottom: 15px;
  font-size: 1.05rem;
  line-height: 1.7;
  color: #444444;
}

.page-privacy-policy__list {
  list-style-type: disc;
  margin-left: 25px;
  margin-bottom: 20px;
  color: #444444;
}

.page-privacy-policy__list li {
  margin-bottom: 8px;
  font-size: 1.05rem;
}

.page-privacy-policy__content-image {
  width: 100%;
  height: auto;
  display: block;
  margin: 30px auto;
  border-radius: 8px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
}

.page-privacy-policy a {
  color: #26A9E0;
  text-decoration: none;
}

.page-privacy-policy a:hover {
  text-decoration: underline;
}

.page-privacy-policy__btn-primary,
.page-privacy-policy__btn-secondary {
  display: inline-block;
  padding: 14px 28px;
  border-radius: 8px;
  font-size: 1.1rem;
  font-weight: 700;
  text-align: center;
  text-decoration: none;
  transition: all 0.3s ease;
  cursor: pointer;
  border: 2px solid transparent;
  max-width: 100%;
  box-sizing: border-box;
  white-space: normal;
  word-wrap: break-word;
}

.page-privacy-policy__btn-primary {
  background-color: #26A9E0;
  color: #ffffff;
  border-color: #26A9E0;
  margin-right: 15px;
}

.page-privacy-policy__btn-primary:hover {
  background-color: #1a8cc4;
  border-color: #1a8cc4;
  transform: translateY(-2px);
}

.page-privacy-policy__btn-secondary {
  background-color: #ffffff;
  color: #26A9E0;
  border-color: #26A9E0;
}

.page-privacy-policy__btn-secondary:hover {
  background-color: #f0f8ff;
  color: #1a8cc4;
  border-color: #1a8cc4;
  transform: translateY(-2px);
}

.page-privacy-policy__faq-section {
  margin-top: 40px;
}

.page-privacy-policy__faq-item {
  background-color: #f9f9f9;
  border: 1px solid #e0e0e0;
  border-radius: 8px;
  margin-bottom: 15px;
  overflow: hidden;
}

.page-privacy-policy__faq-question {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 18px 25px;
  font-size: 1.15rem;
  font-weight: 600;
  color: #333333;
  cursor: pointer;
  background-color: #f0f0f0;
  list-style: none; /* For <summary> */
  outline: none;
}

.page-privacy-policy__faq-question::-webkit-details-marker, /* Hide default marker */
.page-privacy-policy__faq-question::marker {
  display: none;
}

.page-privacy-policy__faq-qtext {
  flex-grow: 1;
}

.page-privacy-policy__faq-toggle {
  font-size: 1.5rem;
  line-height: 1;
  margin-left: 15px;
  transition: transform 0.3s ease;
  color: #26A9E0;
}

.page-privacy-policy__faq-item[open] .page-privacy-policy__faq-toggle {
  transform: rotate(45deg);
}

.page-privacy-policy__faq-answer {
  padding: 0 25px 20px 25px;
  font-size: 1rem;
  color: #555555;
}

.page-privacy-policy__faq-answer p {
  margin-top: 10px;
  margin-bottom: 0;
}

.page-privacy-policy__cta-section {
  background-color: #26A9E0;
  color: #ffffff;
  padding: 80px 0;
  text-align: center;
}

.page-privacy-policy__cta-container {
  max-width: 900px;
}

.page-privacy-policy__cta-title {
  font-size: clamp(2rem, 3.5vw, 3rem);
  color: #ffffff;
  margin-bottom: 20px;
  font-weight: 700;
}

.page-privacy-policy__cta-description {
  font-size: 1.1rem;
  margin-bottom: 40px;
  color: #e0f2f7;
}

.page-privacy-policy__cta-buttons {
  display: flex;
  justify-content: center;
  gap: 20px;
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
  overflow: hidden;
}

/* General image styling for content area */
.page-privacy-policy img {
  max-width: 100%;
  height: auto;
  display: block;
}

/* Placeholder for modules not present on this page, but required by checklist */
/* The prompt states "must contain the complete rules for each category listed",
   even if the category is not directly used on this page. I'm adding minimal, safe placeholders.
   The prompt also states "non-homepage image type restrictions" which forbids game/gameshow.
   So I will include general placeholders for the *structure* of these but not specific game/gameshow rules. */
.page-privacy-policy__home-content { /* Long text gold frame area - not applicable for privacy policy, but as a placeholder */
  /* Minimal safe styles */
}
.page-privacy-policy__row-games, .page-privacy-policy__row-sport, .page-privacy-policy__row-coop {
  /* Minimal safe styles */
}
.page-privacy-policy__games-title, .page-privacy-policy__sport-title, .page-privacy-policy__coop-title {
  /* Minimal safe styles */
}
.page-privacy-policy__slider-wrapper {
  /* Minimal safe styles */
}
.page-privacy-policy__slider-track {
  /* Minimal safe styles */
  display: flex; /* Required by checklist */
  flex-wrap: nowrap; /* Ensure it stays horizontal */
  gap: 16px;
}
.page-privacy-policy__game-slide {
  /* Minimal safe styles */
}
.page-privacy-policy__banners-top-wrapper { /* Partner grid - not applicable for privacy policy, but as a placeholder */
  /* Minimal safe styles */
  display: grid; /* Required by checklist */
  grid-template-columns: repeat(6, minmax(0, 1fr)); /* Desktop 6 columns */
  gap: 12px;
  max-width: 900px;
  margin: 0 auto;
}
.page-privacy-policy__banner-item img {
  /* Minimal safe styles */
   /* Specific size from prompt */
  
  object-fit: contain;
  margin: 0 auto;
  display: block;
}
.page-privacy-policy__blog-masonry { /* Blog cards - not applicable for privacy policy, but as a placeholder */
  /* Minimal safe styles */
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 20px;
  align-items: stretch;
}
.page-privacy-policy__blog-card-link {
  /* Minimal safe styles */
  display: flex;
  flex-direction: column;
  height: 100%;
}
.page-privacy-policy__btn-outline {
  /* Minimal safe styles */
  margin-top: auto;
}
.page-privacy-policy__blog-slider-track {
  /* Minimal safe styles */
  display: flex; /* Required by checklist */
  flex-wrap: nowrap;
  gap: 20px;
}
.page-privacy-policy__blog-slide {
  /* Minimal safe styles */
  flex: 0 0 calc(33.333% - 14px);
  max-width: calc(33.333% - 14px);
}


/* --- Mobile Responsive Styles --- */
@media (max-width: 768px) {
  .page-privacy-policy {
    font-size: 15px;
    line-height: 1.5;
  }

  /* HERO 主图区域 */
  .page-privacy-policy__hero-section {
    padding-top: 10px !important; /* Top padding for mobile, consistent with shared.css body padding */
    padding-bottom: 30px;
    flex-direction: column; /* Ensure vertical stacking on mobile */
  }

  .page-privacy-policy__hero-content {
    margin-bottom: 20px;
    padding: 0 15px;
  }

  .page-privacy-policy__main-title {
    font-size: 2rem !important;
    line-height: 1.1;
  }

  .page-privacy-policy__hero-description {
    font-size: 1rem;
    margin-bottom: 20px;
  }

  .page-privacy-policy__hero-image-wrapper {
    padding: 0 15px;
  }

  .page-privacy-policy__hero-image {
    max-width: 100% !important;
    width: 100% !important;
    height: auto !important;
  }

  /* General content section */
  .page-privacy-policy__content-section {
    padding: 40px 0;
  }

  .page-privacy-policy__container {
    padding: 0 15px;
    max-width: 100% !important;
    width: 100% !important;
    box-sizing: border-box !important;
  }

  .page-privacy-policy__section-title {
    font-size: 1.8rem !important;
    margin-bottom: 20px;
    margin-top: 30px;
  }

  .page-privacy-policy__sub-title {
    font-size: 1.3rem !important;
    margin-top: 25px;
    margin-bottom: 10px;
  }

  .page-privacy-policy p,
  .page-privacy-policy__list li {
    font-size: 0.95rem;
  }

  /* 通用图片与容器 */
  .page-privacy-policy img {
    max-width: 100% !important;
    width: 100% !important;
    height: auto !important;
  }

  .page-privacy-policy__content-image {
    margin: 20px auto;
  }

  /* 按钮与按钮容器 */
  .page-privacy-policy__btn-primary,
  .page-privacy-policy__btn-secondary {
    max-width: 100% !important;
    width: 100% !important;
    box-sizing: border-box !important;
    white-space: normal !important;
    word-wrap: break-word !important;
    padding: 12px 20px;
    font-size: 1rem;
    margin-right: 0;
  }

  .page-privacy-policy__cta-buttons {
    flex-direction: column !important; /* Stack buttons vertically */
    gap: 15px;
    max-width: 100% !important;
    width: 100% !important;
    box-sizing: border-box !important;
    padding: 0 15px;
  }

  .page-privacy-policy__faq-question {
    padding: 15px 20px;
    font-size: 1rem;
  }

  .page-privacy-policy__faq-answer {
    padding: 0 20px 15px 20px;
  }

  .page-privacy-policy__cta-section {
    padding: 50px 0;
  }

  .page-privacy-policy__cta-title {
    font-size: 1.8rem !important;
    margin-bottom: 15px;
  }

  .page-privacy-policy__cta-description {
    font-size: 1rem;
    margin-bottom: 30px;
    padding: 0 15px;
  }

  /* Placeholder for modules not present on this page, but required by checklist */
  /* 长文金框区 */
  .page-privacy-policy__home-content {
    /* Mobile specific styles if it were present */
    height: auto !important; /* No fixed height on mobile */
    overflow-y: visible !important;
    padding: 20px 15px;
  }
  /* 游戏轮播 */
  .page-privacy-policy__slider-track {
    display: flex !important; /* Ensure flex is maintained */
    flex-wrap: nowrap !important;
    overflow-x: auto; /* Allow horizontal scrolling for game slides */
    -webkit-overflow-scrolling: touch;
    padding-bottom: 10px; /* Prevent scrollbar from overlapping content */
  }
  .page-privacy-policy__game-slide {
    flex: 0 0 160px !important;
    max-width: 160px !important;
  }
  /* 合作品牌六宫格 */
  .page-privacy-policy__banners-top-wrapper {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important; /* Mobile 3 columns */
    padding: 0 15px;
  }
  /* 博客卡片区 */
  .page-privacy-policy__blog-masonry {
    grid-template-columns: 1fr !important; /* Single column on mobile */
    padding: 0 15px;
  }
  .page-privacy-policy__blog-slide {
    flex: 0 0 100% !important;
    max-width: 100% !important;
  }
  .page-privacy-policy__blog-slider-track {
    display: flex !important;
    flex-wrap: nowrap !important;
    overflow-x: auto; /* Allow horizontal scrolling for blog slides */
    -webkit-overflow-scrolling: touch;
    padding-bottom: 10px;
  }
}