/* red #e30b5c, green: #28a745 */

* {
  margin: 0px;
  padding: 0px;
  box-sizing: border-box;
  /* overflow: hidden; */
}

.qalam_landing_logo_container {
  position: absolute;
  top: 0;
  /* top: 8px; */
  /* left: 80px; */
  /* width: 100%; */
  /* background-color: #28a745; */
}
.qalam_landing_logo {
  width: 116px;
}

.hero {
  height: 100vh;
}

.hero_columns {
  margin-top: 20vh;
  margin-left: 116px;
  margin-right: 116px;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  flex-direction: row;
}

.hero_column {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  flex-direction: column;
  width: 100%;
  /* border: 1px solid red; */
}

.hero_second_column,
.hero_last_colmun {
  width: auto !important;
}

.hero_first_line,
.hero_second_line {
  padding-left: 1em;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}

.hero_second_line {
  width: 100%;
  line-height: 1.6;
  margin-bottom: 2em;
}

body {
  font-family: Poppins, Arial, Helvetica, sans-serif;
}

.hero_second_line_question {
  width: 100%;
  display: flex;
  flex-direction: row;
  align-items: flex-end;
  justify-content: flex-end;
}

.hero_first_line_title {
  margin-top: 0;
  color: #28a745;
  color: white;
  font-weight: bold;
  font-size: 26px;
  max-width: 20em;
}

.hero_first_line_title strong {
  position: relative;

  color: #28a745;
}

.hero_first_line_title strong::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: 0;
  transform: translateX(-50%);
  width: 50%; /* Half-width underline for style */
  height: 2px;
  background-color: #e30b5c; /* Green underline for emphasis */
  border-radius: 1px;
}

.hero_short_teaser {
  font-size: 21px;
  display: inline-block;
  color: white;

  /* max-width: 450px; */
}

.ibcs-charts,
.pc-compta-screen {
  width: 250px;
}

.ibcs-charts_container {
  margin-top: 60px;
}

.ibcs-charts_container,
.pc-compta-screen_container {
  transition: transform 0.3s ease;
}

.ibcs-charts_container:hover,
.pc-compta-screen_container:hover {
  transform: translateY(-10px);
}

.first_arrow {
  width: 161px;
  /* stroke-dasharray: 500;
  stroke-dashoffset: 500;
  animation: arrow_animation 8s linear forwards; */
}

.second_arrow_container {
  margin-top: 110px;
}

.third_arrow {
  width: 98px;
}

.third_arrow_container {
  width: 100%;
  display: flex;
  justify-content: flex-end;
  align-items: center;
  flex-direction: row;
}

.third_arrow_container {
  margin-top: 98px;
}

/* Responsive Design */
@media (max-width: 768px) {
  .ibcs-charts,
  .third_arrow,
  .second_arrow_container,
  .pc-compta-screen,
  .hero_last_colmun {
    display: none;
  }

  .hero {
    height: 100dvh;
  }
  .hero_columns {
    margin-top: 26px;
    margin-left: 10px;
    margin-right: 10px;
  }

  .hero_first_line_title {
    font-size: 22px;
  }

  .hero_short_teaser {
    font-size: 17px;
  }
}

.video-section,
.faq-section,
.benefits-section,
.features-section {
  min-height: 100vh;
  position: relative;
  margin-top: 2vh;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
}

.video-section {
  width: 80%;
  margin: auto;
}

.video-section-video-screen {
  position: relative;
  /* width: 100%; */
  height: auto;
  border-radius: 8px;
  margin: 20px;
  border: 1px solid #28a745;
  padding: 10px;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
}

.video-section-video-screen video {
  max-width: 100%;
  max-height: 100%;
  /* width: 100%; */
  height: auto;
  display: block;
  /* margin: 0 auto; */
}

.feature-blocks {
  display: flex;
  justify-content: space-around;
  gap: 1.2rem;
  flex-wrap: wrap; /* Allows for responsiveness */
}

.feature-block {
  margin-top: 20px;
  background-color: #f9f9f9;
  padding: 1.5rem;
  border-radius: 8px;
  width: 235px;
  text-align: center;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.feature-block:hover {
  transform: translateY(-5px);
  box-shadow: 0 5px 15px rgba(0, 0, 0, 0.15);
}

.feature-icon img {
  width: 50px;
  height: 50px;
  margin-bottom: 1rem;
}

.feature-title {
  font-size: 1.2rem;
  font-weight: 600;
  color: #333;
  margin-bottom: 0.5rem;
}

.feature-description {
  font-size: 0.9rem;
  color: #666;
  line-height: 1.4;
}

.faq-section {
  padding: 3rem 2rem;
  width: 71%;
  margin: 0 auto;
  /* background-color: #f7f7f7; */
  text-align: center;
}

.faq-title {
  font-size: 1.8rem;
  font-weight: 700;
  color: #333;
  margin-bottom: 2rem;
}

.faq-item {
  background-color: #fff;
  border-radius: 8px;
  margin-bottom: 1.5rem;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
  overflow: hidden;
  transition: box-shadow 0.3s ease;
  width: 100%;
}

.faq-item:hover {
  box-shadow: 0 5px 15px rgba(0, 0, 0, 0.15);
}

.faq-question {
  padding: 1rem 2rem;
  display: flex;
  justify-content: space-between;
  align-items: center;
  cursor: pointer;
  font-size: 1.1rem;
  color: #333;
  font-weight: 600;
  background-color: #f1f1f1;
  transition: background-color 0.3s ease;
}

.faq-question:hover {
  background-color: #e9e9e9;
}

.faq-toggle {
  font-size: 1.5rem;
  font-weight: bold;
  color: #28a745;
  transition: transform 0.3s ease;
}

.faq-answer {
  padding: 1rem 2rem;
  font-size: 1rem;
  color: #666;
  display: none;
  transition: max-height 0.3s ease-out;
  max-height: 0;
  overflow: hidden;
}

.faq-answer.open {
  display: block;
  max-height: 1000px; /* Enough to reveal the answer */
}

@media (max-width: 768px) {
  .faq-section {
    padding: 0.85rem 0.5rem;
    width: 98%;
    margin: 0 auto;
    /* background-color: #f7f7f7; */
    text-align: center;
  }
}

/* Sections  */

/* Subtle Section Separator with Style */
.section-separator {
  margin: 2rem 0; /* Space around the separator */
  position: relative;
}

.section-separator::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  height: 1px;
  background: linear-gradient(
    to right,
    rgba(40, 167, 69, 0.2),
    rgba(40, 167, 69, 0.1),
    rgba(40, 167, 69, 0.2)
  ); /* Gradient line */
  opacity: 0.4; /* Subtle opacity */
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.05); /* Light shadow for depth */
  transform: translateY(-50%); /* Center the line vertically */
}

.subtitle {
  font-size: 0.75rem; /* Slightly larger for readability */
  color: #4d4d4d; /* A softer dark gray for better contrast */
  padding: 0.6rem 1.2rem; /* More balanced padding for a cleaner shape */
  background: linear-gradient(
    135deg,
    #ffffff,
    #f2f2f2
  ); /* Softer gradient for a fresher look */
  border-radius: 25px; /* Increased rounding for a more modern pill-like shape */
  border: 1px solid #ddd; /* Consistent border width */
  font-variant: small-caps;
  letter-spacing: 0.7px; /* Slightly wider spacing for elegance */
  display: inline-block;
  margin: 1.5rem 0;
  box-shadow: 0px 1px 5px rgba(0, 0, 0, 0.1),
    inset 0px 1px 1px rgba(255, 255, 255, 0.5); /* Softer shadow with slight inset effect */
  text-align: center; /* Ensures text is neatly centered */
  transition: transform 0.3s ease, box-shadow 0.3s ease; /* Add hover-friendly transitions */
}

/* Hover Interaction */
.subtitle:hover {
  transform: translateY(-2px); /* Subtle lift effect on hover */
  box-shadow: 0px 3px 10px rgba(0, 0, 0, 0.2),
    inset 0px 2px 2px rgba(255, 255, 255, 0.6); /* Enhanced hover shadow */
}

.subtitle-icon {
  color: #bbb; /* Light gray color */
  margin-right: 0.5rem;
  font-size: 0.75rem;
}

/* Section Subtitle */
.section-subtitle {
  font-size: 1.34rem;
  font-weight: 600;
  color: #28a745;
  text-align: center;
  text-transform: uppercase;
  letter-spacing: 1.5px;
  position: relative;
  display: inline-block;
  padding: 5px 15px;
}

/* Elegant Accent Line */
.section-subtitle::before,
.section-subtitle::after {
  content: "";
  position: absolute;
  bottom: 0;
  height: 3px;
  width: 40px;
  background: #28a745;
  border-radius: 2px;
  transition: all 0.3s ease;
}

.section-subtitle::before {
  left: 0;
  transform: translateX(-150%);
  opacity: 0.5;
}

.section-subtitle::after {
  right: 0;
  transform: translateX(150%);
  opacity: 0.5;
}

/* Subtle Animation */
.section-subtitle:hover::before,
.section-subtitle:hover::after {
  transform: translateX(0);
  opacity: 1;
  width: 60px;
}

.section-subtitle:hover {
  color: #1e7e34; /* Darker shade of green */

  transition: color 0.3s ease;
}

/* CTA button */

.hero-button-container {
  /* margin-left: 116px; */

  height: 10vh;
  display: flex;
  justify-content: center;
  align-items: center;
}

.hero-cta-button {
  background-color: #28a745;
  color: white;
  font-size: 1.2rem;
  font-weight: bold;
  padding: 0.75rem 1.5rem;
  text-decoration: none; /* Remove underline from link */
  border-radius: 5px;
  cursor: pointer;
  position: relative;
  overflow: hidden;
  display: flex;
  align-items: center;
  gap: 0.5rem;
  transition: background-color 0.3s ease-in-out;
  height: 100%;
}

.hero-cta-button::before {
  content: "";
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  background-color: rgba(255, 255, 255, 0.2);
  transition: left 0.4s ease;
  z-index: 0;
}

.hero-cta-button:hover {
  background-color: #218838;
}

.hero-cta-button:hover::before {
  left: 0;
}

.hero-cta-button span {
  position: relative;
  z-index: 1;
}

.hero-arrow {
  font-size: 1.2rem;
  transition: transform 0.3s ease-in-out;
  display: inline-block;
  position: relative;
  z-index: 1;
}

.hero-cta-button:hover .hero-arrow {
  transform: translateX(5px);
}

@keyframes arrow_animation {
  to {
    stroke-dashoffset: 0;
  }
}

@media (max-width: 768px) {
  .hero-cta-button {
    font-size: 1rem;
  }
}

.flag_with_red_border {
  border: 1px solid red;
}

/* Stylish link */

/* Base styling for the link */
.subtle-link {
  font-size: 1rem;
  font-weight: 400;
  color: #218838; /* Use the requested color */
  text-decoration: none;
  transition: all 0.3s ease;
  position: relative;
  display: inline-block;
}

/* Hover effect for the link */
.subtle-link:hover {
  color: #1e7e34; /* Slightly darker shade for the hover effect */
  text-decoration: none;
  transform: scale(1.02); /* Slightly scale up for subtle effect */
}

/* Underline effect */
.subtle-link::after {
  content: "";
  position: absolute;
  bottom: -2px;
  left: 0;
  width: 100%;
  height: 1px;
  background-color: #218838; /* Match the link color for underline */
  transform: scaleX(0);
  transform-origin: bottom right;
  transition: transform 0.2s ease-out;
}

/* Show the underline when the link is hovered */
.subtle-link:hover::after {
  transform: scaleX(1);
  transform-origin: bottom left;
}

/* Optional: Focus state for accessibility */
.subtle-link:focus {
  outline: none;
  box-shadow: 0 0 3px rgba(0, 0, 0, 0.2);
}

/* bg video */

.bg-video-container {
  height: 100vh;
  overflow: hidden;
  width: 100%;
  margin: auto;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
}

/* Background video styling */
.background-video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: -100; /* Keep video behind content */
}

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

/* Transparent content styling */
.transparent-content {
  position: relative;
  color: #fff;
  background-color: rgba(26, 26, 26, 0.8); /* Adjust transparency here */
  padding: 20px;
  width: 100%;
  height: 100%;
  z-index: -50;
}

/* Responsive Design */
@media (max-width: 768px) {
  .bg-video-container {
    height: 100lvh;
  }
}

/* Benefits section */

/* Benefits Section Styles */
.benefits-section {
  padding: 60px 20px;

  text-align: left;
  min-height: 100vh;
}

.benefits-container {
  background-color: #f4fdf6; /* A lighter green for a clean, airy feel */
  margin: 2rem auto;
  box-shadow: 0 6px 15px rgba(0, 0, 0, 0.1); /* Soft, more diffused shadow for elegance */
  border: 1px solid #d6f1e4; /* Soft border to complement the background */
  border-radius: 30px; /* A smoother, more refined corner radius */
  width: 75%; /* Adjust width for balance */
  padding: 2.5rem;
  text-align: center; /* Center-align content */
}

/* Benefits Subtitle */
.benefits-subtitle {
  font-size: 1.5rem;
  font-weight: 600;
  color: #218838; /* Vibrant green */
  letter-spacing: 0.5px;
  text-transform: capitalize;
  margin-bottom: 2rem;
  position: relative;
}

/* Subtitle Decorative Line */
.benefits-subtitle::after {
  content: "";
  position: absolute;
  bottom: -10px;
  left: 50%;
  transform: translateX(-50%);
  width: 80px;
  height: 3px;
  background: linear-gradient(
    to right,
    #28a745,
    #d6f1e4,
    #28a745
  ); /* Subtle gradient */
  border-radius: 5px;
}

/* Benefits List */
.benefits-list {
  list-style: none; /* Remove default bullets */
  padding: 0;
  margin: 0;
}

/* Benefit Item */
.benefit-item {
  display: flex;
  align-items: center;
  gap: 20px; /* Space between icon and text */
  background-color: #ffffff; /* Clean white background */
  padding: 1.5rem;
  margin-bottom: 1.5rem; /* Space between items */
  border-radius: 18px; /* More subtle rounding */
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.08); /* Soft shadow for depth */
  transition: transform 0.3s ease, background-color 0.3s ease,
    box-shadow 0.3s ease;
}

/* Hover Effect */
.benefit-item:hover {
  background-color: #e6f7e6; /* Gentle light green for hover */
  transform: translateY(-5px); /* Subtle upward movement on hover */
  box-shadow: 0 6px 20px rgba(0, 0, 0, 0.1); /* Elevated shadow effect */
}

/* Benefit Icon */
.benefit-icon {
  width: 55px; /* Slightly larger icons for more impact */
  height: 55px;
  font-size: 2.2rem; /* Bold and noticeable icon size */
  color: #28a745; /* Consistent brand color */
  display: flex;
  align-items: center;
  justify-content: center;
}

/* Benefit Item Text */
.benefit-item strong {
  color: #218838; /* Darker green for strong emphasis */
  font-weight: bold;
  font-size: 1.1rem;
}

.benefit-item span {
  font-size: 1rem;
  color: #155d27; /* A bit darker text for description */
}

/* Responsive Design */
@media (max-width: 768px) {
  .benefits-container {
    width: 90%;
    padding: 1.5rem;
  }

  .benefit-item {
    flex-direction: column;
    gap: 15px; /* Adjust gap between icon and text */
    padding: 1rem;
  }

  .benefit-icon {
    margin-bottom: 1rem;
    font-size: 1.8rem; /* Adjust icon size for mobile */
  }
}

/* 
.benefits-container {
  background-color: #e9f7ef;
  margin: 0 auto;
  margin-top: 1em;
  box-shadow: 0 0 3px rgba(0, 0, 0, 0.2);
  border: 0.1em solid #218838;
  border-radius: 28px;
  width: 71%;
  padding: 1em;
}

.benefits-list {
  list-style: none; 
  padding: 0;
  margin: 0;
}

.benefit-item {
  display: flex;
  align-items: flex-start;
  gap: 15px; 
  font-size: 1.2rem;
  color: #155d27; 
  margin-bottom: 20px;
  padding: 10px;
  min-height: 5em;
  border-radius: 8px;

  transition: background-color 0.3s, transform 0.3s;
}

.benefit-item:hover {
  background-color: #d4edda; 
  transform: translateX(10px);
}

.benefit-icon {
  width: 50px;
  color: #28a745; 
  flex-shrink: 0; 
}

.benefit-item strong {
  color: #28a745; 
  font-weight: bold;
}


@media (max-width: 768px) {
  .benefit-item {
    font-size: 1rem;
    gap: 8px;
  }

  .benefit-icon {
    width: 25px;
  }

  .benefits-subtitle {
    font-size: 1.2em;
  }

  .benefits-container {
    width: 98%;
    padding: 0.8em;
  }
} */
