/* Global Styles */
body {
  font-family: "Cairo", sans-serif;
  /* Default background is now dark, but white sections override it */
  background-color: #ffffff;
  color: #ffffff;
  direction: rtl;
  text-align: right;
}

main {
  background-color: #ffffff;
  color: #000000; /* Ensure text is readable on white background */
}

.container,
.container-fluid {
  max-width: 800px; /* Constrains width on desktop for readability */
}

/* Typography */
h1,
h2,
h3,
h4,
h5,
h6 {
  font-weight: 900;
}

.main-headline {
  color: #ffd700; /* Gold */
  font-weight: 900;
  font-size: 2.5rem;
}

.sub-headline {
  font-size: 1.8rem;
  font-weight: 700;
}

.section-title {
  font-size: 2rem;
  font-weight: 700;
  color: #ffd700;
  margin-bottom: 20px;
}

/* Original Dark Mode Sections (from Empathy down) */
.problem-section {
  background-color: #2b2b2b;
  border-radius: 8px;
}
.highlight-box {
  background-color: #ffd700;
  color: #000000;
  font-weight: 700;
  padding: 15px;
  border-radius: 8px;
  font-size: 1.1rem;
  margin-top: 15px;
}
.highlight-box-alt {
  background-color: #333;
  border: 1px solid #ffd700;
  color: #ffffff;
  font-weight: 700;
  padding: 15px;
  border-radius: 8px;
  font-size: 1.1rem;
}

/* Product Section (Original, but now used in white hero) */
.product-image-main {
  /* The .img-fluid class and .col-4 parent now control the size */
  margin-top: -20px;
  box-shadow: 15px 4px 8px 5px rgba(0, 0, 0, 0.1);
}
.delivery-banner {
  display: flex;
  justify-content: space-between;
  align-items: center;
  background-color: #333;
  color: #ffd700;
  font-weight: 700;
  padding: 10px 20px;
  border-radius: 8px;
  font-size: 1.1rem;
}

/* CTA Button (Original Gold) */
.btn-cta {
  background-color: #ffd700;
  color: #000000;
  font-weight: 900;
  font-size: 1.5rem;
  padding: 10px 30px;
  border-radius: 8px;
  border: none;
  transition: transform 0.2s;
}
.btn-cta:hover {
  color: #000000;
  transform: scale(1.05);
}

/* Problems List (Dark) */
.problems-list {
  margin-top: 20px;
}
.problem-item {
  background-color: #2b2b2b;
  padding: 20px;
  border-radius: 8px;
  margin-bottom: 15px;
  border-right: 5px solid #ffd700;
}
.problem-item h4 {
  color: #ffd700;
  font-weight: 700;
}

/* Results Section (Dark) */
.result-card {
  background-color: #2b2b2b;
  border-radius: 8px;
  overflow: hidden;
  border: 1px solid #ffd700;
}
.result-header {
  background-color: #ffd700;
  color: #000;
  padding: 10px;
  font-weight: 700;
  font-size: 1.2rem;
}
.result-body {
  padding: 15px;
}
.result-body p {
  margin-bottom: 5px;
  font-size: 1.1rem;
}
.payment-banner {
  background-color: #222;
  border: 1px dashed #ffd700;
  color: #ffd700;
  padding: 10px;
  font-weight: 700;
  font-size: 1.2rem;
  margin-top: 20px;
}

/* Benefits Section (Dark) */
.benefits-list-dark {
  /* Renamed to avoid conflict */
  list-style: none;
  padding: 0;
  margin-top: 20px;
}
.benefits-list-dark li {
  background-color: #2b2b2b;
  padding: 15px;
  margin-bottom: 10px;
  border-radius: 8px;
  font-size: 1.2rem;
  font-weight: 700;
}
.benefits-footer {
  display: flex;
  justify-content: space-between;
  align-items: center;
  background-color: #333;
  color: #ffd700;
  font-weight: 700;
  padding: 10px 20px;
  border-radius: 8px;
  font-size: 1.1rem;
  margin-top: 20px;
}

/* Testimonial Section (Dark) */
.testimonial-card {
  background-color: #2b2b2b;
  border-radius: 8px;
  border: 1px solid #444;
}
.testimonial-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 15px;
  background-color: #333;
  border-bottom: 1px solid #444;
  font-weight: 700;
  font-size: 1.1rem;
}
.stars {
  color: #ffd700;
}
.testimonial-body {
  padding: 15px;
  font-style: italic;
  line-height: 1.7;
}

/* Order Section (Dark) */
.order-section {
  background-color: #2b2b2b;
  border-radius: 8px;
}
.price-image {
  max-width: 400px;
}
.price-box {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
.new-price {
  font-size: 2.5rem;
  font-weight: 900;
  color: #ffd700;
}
.old-price {
  font-size: 1.5rem;
  text-decoration: line-through;
  color: #888;
}
.guarantee-box {
  background-color: #333;
  border: 1px dashed #ffd700;
  color: #ffffff;
  padding: 15px;
  border-radius: 8px;
  font-weight: 700;
  margin: 20px 0;
}

/* Form (Dark) */
.form-label {
  float: right;
  font-weight: 700;
}
.form-control {
  background-color: #fff;
  color: #000;
  border: 1px solid #ffd700;
  text-align: right;
}
.form-control:focus {
  background-color: #fff;
  color: #000;
  border-color: #ffd700;
  box-shadow: 0 0 0 0.25rem rgba(255, 215, 0, 0.25);
}

/* Footer (Dark) */
footer {
  background-color: #000;
  margin-top: 20px;
}
.warning-text {
  color: #888;
  font-size: 0.9rem;
}

/* ======== NEW HERO STYLES (FROM EDITS) ======== */

/* 1. Top Banner (Black) */
.top-banner {
  background-color: #000000;
  padding: 0px 15px;
  /* border-bottom: 2px solid #FFD700; */
}

/* .logo-placeholder styles removed as it's replaced by an image */

.logo-img {
  max-width: 250px; /* Increased size as requested */
  height: auto;
  margin: 0 auto 0px; /* Center it and add some bottom margin */
  display: block; /* To allow margin auto to work */
}

.top-banner .main-headline {
  color: #ffd700;
}

.hero-slogan {
  color: #ffffff;
  font-size: 0.9rem;
  line-height: 1.6;
  margin-top: 0px;
  margin-bottom: 5px;
}

/* 2. Main Content (White) */
.main-content-white {
  background-color: #ffffff;
  color: #000000;
  padding: 30px 15px;
  padding-bottom: 10px;
}

.benefit-list {
  list-style: none;
  padding: 0;
  margin: 0;
}

.benefit-list li {
  position: relative;
  font-size: 0.9rem;
  line-height: 1.3;
  padding-right: 25px; /* Space for the red bar */
  margin-bottom: 20px;
  font-weight: 550;
}

.benefit-list li::before {
  /* The vertical red bar */
  content: "";
  display: block;
  position: absolute;
  right: 0;
  top: 5px;
  bottom: 5px;
  width: 8px;
  background-color: #ff0000; /* Bright Red */
  border-radius: 4px;
}

/* 3. Section CTA */
.cta-section {
  background-color: #ffffff;
  color: #000000;
  padding-bottom: 40px;
  border-bottom: 2px solid #f0f0f0;
}

.cta-headline {
  color: #000000;
  font-weight: 900;
  font-size: 1.5rem;
  line-height: 1.4;
  margin-bottom: 20px;
}

.btn-cta-red {
  background-color: #ff0000; /* Bright Red */
  color: #ffffff;
  font-weight: 900;
  font-size: 1.2rem;
  padding: 10px 20px;
  border-radius: 8px;
  border: none;
  transition: all 0.2s;
  width: 100%;
  max-width: 400px; /* Limit button width */
  text-decoration: none;
}

.btn-cta-red:hover {
  color: #ffffff;
  background-color: #d90000; /* Darker red on hover */
  transform: scale(1.03);
}

/* New Problem Introduction Section */

.problem-headline {
  font-weight: 900;
  font-size: 2rem; /* Adjust for mobile-first */
  margin-bottom: 30px;
}

.problem-headline span:first-child {
  margin-bottom: 5px; /* Add some space between the two lines */
}

.problem-headline span:first-child {
  color: #000000;
}

.problem-headline span:last-child {
  color: #ff0000; /* Bright Red */
}

.problem-image-container {
  border: 1px solid #e0e0e0; /* Thin light-grey border */
  padding: 5px; /* Space between border and image */
  margin-bottom: 30px;
  text-align: center; /* Center the image */
}

.problem-image {
  max-width: 100%;
  height: auto;
  display: block; /* Remove extra space below image */
  margin: 0 auto; /* Center the image */
  border-radius: 8px;
}

.problem-description {
  font-size: 1rem; /* Adjust for mobile-first */
  line-height: 1.6;
  color: #000000;
  font-weight: 700;
}

/* New Problem Cards Section */
.problem-cards-section {
  background-color: #ffffff;
  padding: 40px 15px;
}

.problem-card {
  background-color: #f8f8f8; /* Light grey background */
  border-radius: 15px; /* Curved corners for the card itself */
  padding: 25px;
  margin-bottom: 20px;
  position: relative;
  overflow: hidden; /* To contain the curved borders */
  text-align: center; /* Center content within card */
}

.problem-card::before,
.problem-card::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  height: 10px; /* Height of the curved border */
  background-color: #ff0000; /* Red border color */
  border-radius: 0 0 50% 50% / 0 0 100% 100%; /* Curved bottom */
}

.problem-card::before {
  top: 0;
  border-radius: 50% 50% 0 0 / 100% 100% 0 0; /* Curved top */
}

.problem-card::after {
  bottom: 0;
  border-radius: 0 0 50% 50% / 0 0 100% 100%; /* Curved bottom */
}

.card-icon {
  margin-bottom: 15px;
  position: relative; /* To ensure it's above the pseudo-elements */
  z-index: 1;
}

.icon-image {
  max-width: 60px; /* Example size, adjust as needed */
  height: auto;
  display: block;
  margin: 0 auto;
}

.card-headline {
  font-size: 1.5rem;
  font-weight: 900; /* Bold black */
  color: #000000;
  margin-bottom: 10px;
}

.card-subtext {
  font-size: 1rem;
  color: #000000; /* Black sub-text */
  line-height: 1.5;
}

/* Dark Results Section */
.dark-results-section {
  background-color: #2b2b2b; /* Dark grey background */
  padding: 40px 15px;
  color: #ffffff; /* Default text color for this section */
}

.dark-section-headline {
  font-weight: 900;
  font-size: 2rem;
  color: #ffffff;
  margin-bottom: 30px;
  line-height: 1.4;
}

.result-block-image {
  max-width: 100%;
  height: auto;
  display: block;
  margin: 0 auto 20px auto; /* Center and add bottom margin */
}

.shipping-payment-image {
  max-width: 100%;
  height: auto;
  display: block;
  margin: 30px auto; /* Center and add top/bottom margin */
}

.full-width-btn {
  width: 100%;
  max-width: 400px; /* Limit button width on larger screens */
  margin: 0 auto; /* Center the button */
  display: block; /* Make it a block element to center with margin auto */
}

/* Testimonial Gallery Section */
.testimonial-gallery-section {
  background-color: #2b2b2b; /* Dark grey background */
  padding: 40px 15px;
  color: #ffffff;
}

.testimonial-headline {
  font-weight: 900;
  font-size: 2rem;
  color: #ffffff;
  margin-bottom: 30px;
  line-height: 1.4;
}

.testimonial-headline .text-red {
  color: #ff0000; /* Red for 'X' in APEXX */
}

.testimonial-card-image-container {
  margin-bottom: 20px;
}

.testimonial-image {
  max-width: 100%;
  height: auto;
  display: block;
  margin: 0 auto; /* Center the image */
  border-radius: 10px; /* Rounded corners for the image */
  transition: opacity 0.5s ease-in-out;
}

.gallery-navigation {
  margin-top: 20px;
}

.nav-arrow {
  font-size: 2.5rem; /* Increased size for more prominence */
  font-weight: 900;
  text-shadow: 0px 0px 5px rgba(255, 255, 255, 0.5); /* Subtle shadow for boldness */
  color: #ffffff;
  cursor: pointer;
  margin: 0 15px;
  display: inline-block; /* Allows margin and clickability */
}

.nav-arrow:hover {
  color: #ffd700; /* Highlight on hover */
}

/* New Image Section */
.new-image-section {
  background-color: #ffffff; /* Assuming white background for new section */
  padding: 0px 15px;
  padding-bottom: 0px;
}

.new-section-image {
  max-width: 100%;
  height: auto;
  display: block;
  margin: 0 auto; /* Center the image */
}

/* Order Form Section */
.order-form-section {
  background-color: #2b2b2b; /* Dark grey background */
  border: 2px solid #ffd700; /* Golden-yellow border */
  border-radius: 10px;
  padding: 0px 15px;
  margin: 0px auto; /* Center the box and add vertical margin */
  max-width: 600px; /* Limit width for better readability */
  color: #ffffff; /* Default text color for this section */
}

.product-name-form {
  font-weight: 900;
  font-size: 1.5rem;
  color: #ffd700; /* Golden-yellow */
  margin-bottom: 0px;
}

.form-explanation {
  font-weight: 700;
  font-size: 0.8rem;
  color: #ffffff;
  margin-bottom: 0px;
  line-height: 1.6;
}

.form-label-custom {
  float: right;
  font-weight: 700;
  color: #ffffff;
  margin-bottom: 5px;
}

.form-control-custom {
  background-color: #000000; /* Black input field */
  color: #ffffff;
  border: 1px solid #ffd700; /* Golden-yellow border */
  border-radius: 8px;
  padding: 10px 15px;
  width: 100%;
  margin-bottom: 5px;
  text-align: right;
}

.form-control-custom:focus {
  background-color: #000000;
  color: #ffffff;
  border-color: #ffd700;
  box-shadow: 0 0 0 0.25rem rgba(255, 215, 0, 0.25);
}

@media (min-width: 768px) {
  .container,
  .container-fluid {
    max-width: 1140px; /* Increase container width for larger screens */
  }

  /* Top Banner */
  .top-banner {
    padding: 30px 15px;
  }
  .logo-img {
    max-width: 300px;
  }
  .hero-slogan {
    font-size: 1.2rem;
  }

  /* Main Content White - Column Layout */
  .main-content-white .col-8 {
    width: 66.66666667%; /* Revert to Bootstrap col-8 */
  }
  .main-content-white .col-4 {
    width: 33.33333333%; /* Revert to Bootstrap col-4 */
  }

  /* Problem Intro Section */
  .problem-intro-section {
    padding: 40px 15px;
  }
  .problem-headline {
    font-size: 2.5rem;
  }

  /* Problem Cards Section */
  .problem-cards-section {
    padding: 60px 15px;
  }

  /* Dark Results Section */
  .dark-results-section {
    padding: 60px 15px;
  }
  .dark-section-headline {
    font-size: 2.5rem;
  }
  .result-block-image {
    max-width: 500px; /* Adjust as needed */
    margin: 0 auto 30px auto;
  }

  /* Testimonial Gallery Section */
  .testimonial-gallery-section {
    padding: 60px 15px;
  }
  .testimonial-headline {
    font-size: 2.5rem;
  }
  .testimonial-image {
    max-width: 500px; /* Adjust as needed */
  }

  /* New Image Section */
  .new-image-section {
    padding: 60px 15px;
  }

  /* Order Form Section */
  .order-form-section {
    margin: 60px auto;
  }
  .product-name-form {
    font-size: 3rem;
  }
}

/* ======== END NEW HERO STYLES ======== */
