/*Global H-padding*/
h1, h2, h3, h4, h5, h6 {
  margin-left: 20px;
  margin-right: 20px;
}

/* Global Text-Padding */
p, li, blockquote, .text {
  margin-left: 20px;
  margin-right: 20px;
}

/*Home elements*/
/*Teaser container*/
/* Container for all teasers */
    .teaser-container {
      display: flex;
      flex-wrap: wrap;          
      gap: 20px;                
      padding: 20px;
      max-width: 1200px;
      margin: 0 auto;
      align-items: stretch;  /*same height for boxes*/
    }

    /* Teaser-box */
    .teaser-box {
      flex: 1 1 calc(33.333% - 20px);          /* 300px + */
      background-color: #f5f5f5;
      border-radius: 8px;
      overflow: hidden;
      box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
      transition: transform 0.3s ease, box-shadow 0.3s ease;
      display: flex;
      flex-direction: column;   /*vertical default*/
      min-height: 200px;
    }

    .teaser-box:hover {
      transform: translateY(-5px);
      box-shadow: 0 4px 16px rgba(0, 0, 0, 0.15);
    }

    /* Image */
    .teaser-image {
      width: 100%;
      height: 200px;
      object-fit: cover;        /* Image cutoff prevention*/
      background-color: #ddd;
      flex-shrink: 0; /*Image shrink prevention*/
    }

    /* Content box */
    .teaser-content {
      padding: 16px;
      flex: 1 1 auto;
      display: flex;
      flex-direction: column;
    }

    .teaser-title {
      font-size: 1.2rem;
      margin: 0 0 10px 0;
      color: #333;
    }

    .teaser-text {
      font-size: 0.95rem;
      color: #666;
      line-height: 1.5;
      margin: 0 0 12px 0;
      flex: 1;
    }

    .teaser-button {
      display: inline-block;
      padding: 10px 20px;
      background-color: #6d4aff;
      color: white;
      text-decoration: none;
      border-radius: 4px;
      font-weight: 500;
      transition: background-color 0.2s ease;
      align-self: flex-start; /*button alignement left*/
    }

    .teaser-button:hover {
      background-color: #5a3fd4;
    }
    /* Responsive */
    @media (max-width: 768px) {
      .teaser-box {
        flex: 1 1 100%;         
      }
    }

/*CTA*/
/* Container CTA */
    .cta-container {
      display: flex;
      flex-wrap: wrap;          
      gap: 20px;                
      padding: 20px;
      max-width: 1200px;
      margin: 0 auto;
      justify-content: center;
      align-items: stretch; 
    }

    /* CTA-box */
    .cta-box {
      flex: 0 1 300px;          /* 300px + */
      max-width: 400px;
      width: fit-content;
      align-self: center;
      margin: 20px auto;  /*need it?*/
      background-color: #99AABB;
      border-radius: 8px;
      overflow: hidden;
      box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
      transition: transform 0.3s ease, box-shadow 0.3s ease;
      display: flex;
      flex-direction: column;   /*Vertical default*/
      min-height: 200px;
      align-items: center; 
    }

    .cta-box:hover {
      transform: translateY(-5px);
      box-shadow: 0 4px 16px rgba(0, 0, 0, 0.15);
    }

    /* Content CTA */
    .cta-content {
      padding: 16px;
      flex: 1 1 auto;
      display: flex;
      flex-direction: column;
      align-items: center;
      justify-content: center;
      text-align: center;
    }

    .cta-title {
      font-size: 1.2rem;
      margin: 0 0 10px 0;
      color: #333;
    }

    .cta-text {
      font-size: 0.95rem;
      color: #666;
      line-height: 1.5;
      margin: 0 0 12px 0;
      flex: 1;
    }

    .cta-button {
      display: inline-block;
      padding: 10px 20px;
      background-color: #6d4aff;
      color: white;
      text-decoration: none;
      border-radius: 4px;
      font-weight: 500;
      transition: background-color 0.2s ease;
      align-self: center; /*button alignement center*/
    }

    .cta-button:hover {
      background-color: #5a3fd4;
    }
    /* Responsive */
    @media (max-width: 768px) {
      .cta-box {
        flex: 1 1 100%;         
      }
    }

/*Services container*/
/* Container for all services */
    .services-container {
      display: flex;
      flex-wrap: wrap;          
      gap: 20px;                
      padding: 20px;
      max-width: 1200px;
      margin: 0 auto;
      align-items: stretch;  /*same height for boxes*/
    }

    /* Services-box */
    .services-box {
      flex: 1 1 calc(33.333% - 20px);          /* 300px + */
      background-color: #247ebb;
      border-radius: 8px;
      overflow: hidden;
      box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
      transition: transform 0.3s ease, box-shadow 0.3s ease;
      display: flex;
      flex-direction: column;   /*vertical default*/
      min-height: 200px;
    }

    .services-box:hover {
      transform: translateY(-5px);
      box-shadow: 0 4px 16px rgba(0, 0, 0, 0.15);
    }

    /* Image */
    .services-image {
      width: 100%;
      height: 200px;
      object-fit: cover;        /* Image cutoff prevention*/
      background-color: #ddd;
      flex-shrink: 0; /*Imaage shrink prevention*/
    }

    /* Services content box */
    .services-content {
      padding: 16px;
      flex: 1 1 auto;
      display: flex;
      flex-direction: column;
    }

    .services-title {
      font-size: 1.2rem;
      margin: 0 0 10px 0;
      color: #333;
    }

    .services-text {
      font-size: 0.95rem;
      color: #000000;
      line-height: 1.5;
      margin: 0 0 12px 0;
      flex: 1;
    }

    .services-button {
      display: inline-block;
      padding: 10px 20px;
      background-color: #6d4aff;
      color: white;
      text-decoration: none;
      border-radius: 4px;
      font-weight: 500;
      transition: background-color 0.2s ease;
      align-self: flex-start; /*button alignement left*/
    }

    .services-button:hover {
      background-color: #5a3fd4;
    }
    /* Responsive */
    @media (max-width: 768px) {
      .services-box {
        flex: 1 1 100%;         
      }
    }

/*References*/
/*Todo*/
/*Todo*/
/*Todo*/
/*Todo*/
/*Todo*/

/*Contact site*/
/* Hide the second "Contact" H2 */
.com-contact__container > h2 {
    display: none !important;
}

/* Hide "Contact Form" H2 */
.com-contact > h2:last-of-type {
    display: none !important;
}

/*Contact form max width*/
/* Apply changes only to screens wider than 1200px */
@media (min-width: 1200px) {
    .com-contact__form, 
    #contact-form {
        max-width: 800px;  /* Change 800px to your preferred maximum width */
        margin-left: auto;   /* Centers the form container */
        margin-right: auto;  /* Centers the form container */
        width: 100%;
    }
}

/*About*/

.about-container {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start; 
  gap: 2%; /* Distance % for better repsonsiveness */
  padding: 0 10px;
  margin-bottom: 20px;
}

.about-container::after {
  content: "";
  display: block;
  width: 100%;
  height: 1px;
  background-color: #ccc;
  margin-top: 1rem;
}

/* Title style about*/
.about-container h2 {
  margin: 0; 
  padding-top: 0
  }

/* Image style about*/
.imgintro img {
  border-radius: 3%;
  max-width: 75%;
  max-height: 200px; 
  box-shadow: 10px 10px 5px LightSteelBlue;
  margin-bottom: 0; 
  height: auto; 
  flex-shrink: 0; 
}

/* About responsive*/
@media only screen and (max-width: 768px) {
  .about-container {
    flex-direction: column; 
    align-items: flex-start;
  }
  
  .imgintro img {
    max-width: 100%; 
    margin-top: 10px;
  }
}

/* H2 about responsive */
@media only screen and (max-width: 1024px) {
  .imgintro img {
    max-width: 50%; 
  }
}


/*Footer*/

.footer p {
  line-height: 0.5;
}