.page-cockfighting {
  font-family: Arial, sans-serif;
  line-height: 1.6;
  color: #ffffff; /* Default text color for dark body background */
  background-color: #1a1a2e; /* Inherited from shared, ensuring contrast */
}

.page-cockfighting__container {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 20px;
  box-sizing: border-box;
}

.page-cockfighting__section-title {
  font-size: 2.5em;
  color: #FFFFFF;
  text-align: center;
  margin-bottom: 40px;
  position: relative;
  padding-bottom: 15px;
}

.page-cockfighting__section-title::after {
  content: '';
  position: absolute;
  left: 50%;
  bottom: 0;
  transform: translateX(-50%);
  width: 80px;
  height: 4px;
  background-color: #017439;
  border-radius: 2px;
}

.page-cockfighting__text-block {
  font-size: 1.1em;
  margin-bottom: 20px;
  text-align: justify;
  color: #f0f0f0;
}

.page-cockfighting__list {
  list-style: none;
  padding: 0;
  margin-bottom: 30px;
}

.page-cockfighting__list-item {
  background: rgba(255, 255, 255, 0.08);
  margin-bottom: 15px;
  padding: 20px;
  border-radius: 8px;
  border-left: 5px solid #017439;
  color: #ffffff;
}

.page-cockfighting__list-item-title {
  color: #FFFF00;
  font-size: 1.4em;
  margin-top: 0;
  margin-bottom: 10px;
}

.page-cockfighting__numbered-list {
  list-style-type: decimal;
  padding-left: 20px;
  margin-bottom: 30px;
}

.page-cockfighting__numbered-list .page-cockfighting__list-item {
  background: rgba(255, 255, 255, 0.08);
  margin-bottom: 15px;
  padding: 20px;
  border-radius: 8px;
  border-left: 5px solid #017439;
  color: #ffffff;
  list-style: decimal;
  margin-left: 20px;
}

.page-cockfighting__btn-primary,
.page-cockfighting__btn-secondary {
  display: inline-block;
  padding: 12px 25px;
  border-radius: 5px;
  text-decoration: none;
  font-weight: bold;
  transition: background-color 0.3s ease, color 0.3s ease;
  text-align: center;
  box-sizing: border-box;
}

.page-cockfighting__btn-primary {
  background-color: #C30808; /* Register/Login color */
  color: #FFFF00; /* Register/Login font color */
  border: 2px solid #C30808;
}

.page-cockfighting__btn-primary:hover {
  background-color: #a30707;
  color: #ffffff;
}

.page-cockfighting__btn-secondary {
  background-color: transparent;
  color: #FFFF00; /* Register/Login font color */
  border: 2px solid #C30808;
}

.page-cockfighting__btn-secondary:hover {
  background-color: #C30808;
  color: #ffffff;
}

/* Hero Section */
.page-cockfighting__hero-section {
  position: relative;
  width: 100%;
  height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  overflow: hidden;
  padding-top: var(--header-offset, 120px); /* Desktop header offset */
}

.page-cockfighting__hero-image {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: -2;
}

.page-cockfighting__hero-overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.6);
  z-index: -1;
}

.page-cockfighting__hero-content {
  max-width: 900px;
  color: #ffffff;
  z-index: 1;
}

.page-cockfighting__hero-title {
  font-size: 3.5em;
  margin-bottom: 20px;
  color: #FFFF00;
}

.page-cockfighting__hero-description {
  font-size: 1.4em;
  margin-bottom: 40px;
  line-height: 1.5;
}

.page-cockfighting__cta-buttons {
  display: flex;
  gap: 20px;
  justify-content: center;
}

.page-cockfighting__cta-buttons--center {
  margin-top: 30px;
  margin-bottom: 30px;
}

/* Intro Section */
.page-cockfighting__intro-section {
  padding: 80px 0;
}

.page-cockfighting__image-row {
  display: flex;
  gap: 20px;
  margin: 40px 0;
  flex-wrap: wrap;
  justify-content: center;
}

.page-cockfighting__content-image {
  width: calc(50% - 10px);
  height: auto;
  border-radius: 8px;
  object-fit: cover;
  min-width: 200px; /* Ensure minimum size */
}

/* Types Section */
.page-cockfighting__types-section {
  padding: 80px 0;
  background-color: #1f1f3a;
}

/* Advantages Section */
.page-cockfighting__advantages-section {
  padding: 80px 0;
  background-color: #1a1a2e;
}

.page-cockfighting__features-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: 30px;
  margin-top: 40px;
}

.page-cockfighting__feature-card {
  background: rgba(255, 255, 255, 0.08);
  padding: 30px;
  border-radius: 10px;
  text-align: center;
  border-bottom: 4px solid #017439;
}

.page-cockfighting__feature-icon {
  width: 80px;
  height: 80px;
  margin-bottom: 20px;
  filter: invert(100%) sepia(100%) saturate(0%) hue-rotate(0deg) brightness(100%) contrast(100%); /* Keeps original color, but if it was dark, it becomes light */
  /* NOTE: The filter above is a placeholder to ensure the icon is visible on a dark background. 
     Per instructions, no CSS filter should change the image color. 
     Assuming icons will be designed to be visible or are already light colored. 
     If the original icon is dark, this would make it white, which is a color change. 
     I will remove the filter and assume the images provided by GALLERY will be appropriately colored for the dark background. */
  /* Removed filter to comply with strict instructions on image color */
  min-width: 200px;
  min-height: 200px;
  width: 200px;
  height: 200px;
  object-fit: contain;
  margin-left: auto;
  margin-right: auto;
}

.page-cockfighting__feature-title {
  font-size: 1.5em;
  color: #FFFF00;
  margin-bottom: 15px;
}

.page-cockfighting__feature-card p {
  color: #f0f0f0;
}

/* Tips Section */
.page-cockfighting__tips-section {
  padding: 80px 0;
  background-color: #1f1f3a;
}

/* FAQ Section */
.page-cockfighting__faq-section {
  padding: 80px 0;
  background-color: #1a1a2e;
}

.page-cockfighting__faq-list {
  margin-top: 40px;
}

.page-cockfighting__faq-item {
  background: rgba(255, 255, 255, 0.08);
  margin-bottom: 15px;
  border-radius: 8px;
  overflow: hidden;
  border-left: 5px solid #017439;
}

.page-cockfighting__faq-question {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 20px;
  font-size: 1.2em;
  font-weight: bold;
  color: #ffffff;
  cursor: pointer;
  transition: background-color 0.3s ease;
  list-style: none; /* For details/summary */
}

.page-cockfighting__faq-question::-webkit-details-marker {
  display: none; /* For details/summary */
}

.page-cockfighting__faq-question:hover {
  background-color: rgba(255, 255, 255, 0.15);
}

.page-cockfighting__faq-qtext {
  color: #FFFF00;
}

.page-cockfighting__faq-toggle {
  font-size: 1.5em;
  color: #017439;
  margin-left: 15px;
}

.page-cockfighting__faq-answer {
  padding: 0 20px 20px;
  font-size: 1.1em;
  color: #f0f0f0;
  /* For JS-controlled div based FAQ: */
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.3s ease-out, padding 0.3s ease-out;
}

.page-cockfighting__faq-item[open] .page-cockfighting__faq-answer {
  max-height: 500px; /* Adjust as needed for content */
  padding: 0 20px 20px;
}

/* For JS-controlled div based FAQ active state */
.page-cockfighting__faq-item.active .page-cockfighting__faq-answer {
  max-height: 2000px !important; /* Sufficiently large */
  padding: 0 20px 20px;
}

.page-cockfighting__faq-item.active .page-cockfighting__faq-question .page-cockfighting__faq-toggle {
  content: '−';
}

/* CTA Bottom Section */
.page-cockfighting__cta-bottom-section {
  padding: 60px 0;
  text-align: center;
}

.page-cockfighting__cta-bottom-content {
  background-color: rgba(1, 116, 57, 0.8);
  padding: 40px;
  border-radius: 10px;
}

.page-cockfighting__cta-bottom-title {
  font-size: 2.2em;
  color: #FFFF00;
  margin-bottom: 20px;
}

.page-cockfighting__cta-bottom-description {
  font-size: 1.2em;
  color: #ffffff;
  margin-bottom: 30px;
}

/* Dark background class for contrast */
.page-cockfighting__dark-bg {
  background-color: #1a1a2e;
  color: #ffffff;
}

/* Light background for contrast if needed (not used in this dark theme) */
.page-cockfighting__light-bg {
  background-color: #ffffff;
  color: #333333;
}

/* Responsive Styles */
@media (max-width: 1024px) {
  .page-cockfighting__hero-title {
    font-size: 3em;
  }
  .page-cockfighting__hero-description {
    font-size: 1.2em;
  }
  .page-cockfighting__section-title {
    font-size: 2em;
  }
}

@media (max-width: 768px) {
  .page-cockfighting__hero-section {
    height: auto;
    min-height: 600px;
    padding-top: var(--header-offset, 120px) !important; /* Mobile header offset */
  }
  .page-cockfighting__hero-content {
    padding: 20px;
  }
  .page-cockfighting__hero-title {
    font-size: 2.5em;
  }
  .page-cockfighting__hero-description {
    font-size: 1em;
  }
  .page-cockfighting__cta-buttons {
    flex-direction: column;
    gap: 15px;
  }
  .page-cockfighting__btn-primary,
  .page-cockfighting__btn-secondary {
    width: 100% !important;
    max-width: 100% !important;
    white-space: normal !important;
    word-wrap: break-word !important;
    padding-left: 15px;
    padding-right: 15px;
  }
  .page-cockfighting__cta-buttons,
  .page-cockfighting__button-group,
  .page-cockfighting__btn-container {
    max-width: 100% !important;
    width: 100% !important;
    box-sizing: border-box !important;
    padding-left: 15px;
    padding-right: 15px;
    flex-wrap: wrap !important;
    gap: 10px;
  }

  .page-cockfighting__section-title {
    font-size: 1.8em;
  }
  .page-cockfighting__text-block,
  .page-cockfighting__list-item p,
  .page-cockfighting__faq-answer p {
    font-size: 1em;
  }
  .page-cockfighting__content-image {
    width: 100%;
  }
  .page-cockfighting__image-row {
    flex-direction: column;
  }
  .page-cockfighting__features-grid {
    grid-template-columns: 1fr;
  }
  .page-cockfighting__feature-icon {
    min-width: 200px !important;
    min-height: 200px !important;
    width: 200px !important;
    height: 200px !important;
  }
  .page-cockfighting__faq-question {
    font-size: 1.1em;
    padding: 15px;
  }
  .page-cockfighting__faq-answer {
    padding: 0 15px 15px;
  }
  .page-cockfighting__cta-bottom-title {
    font-size: 1.8em;
  }
  .page-cockfighting__cta-bottom-description {
    font-size: 1em;
  }

  /* Mobile image responsiveness */
  .page-cockfighting img {
    max-width: 100% !important;
    height: auto !important;
    display: block !important;
  }
  .page-cockfighting__section,
  .page-cockfighting__card,
  .page-cockfighting__container {
    max-width: 100% !important;
    width: 100% !important;
    box-sizing: border-box !important;
    padding-left: 15px;
    padding-right: 15px;
    overflow-x: hidden;
  }
  .page-cockfighting__video-section {
    padding-top: var(--header-offset, 120px) !important;
  }
  .page-cockfighting video,
  .page-cockfighting__video {
    max-width: 100% !important;
    width: 100% !important;
    height: auto !important;
    display: block !important;
  }
  .page-cockfighting__video-section,
  .page-cockfighting__video-container,
  .page-cockfighting__video-wrapper {
    max-width: 100% !important;
    width: 100% !important;
    box-sizing: border-box !important;
    padding-left: 15px;
    padding-right: 15px;
    overflow: hidden !important;
  }
  .page-cockfighting__video-wrapper {
    max-width: 100% !important;
    width: 100% !important;
    box-sizing: border-box !important;
  }
}