
/* General styling */

.page-section {
    display: flex;
    flex-direction: column;

    align-items: center;
    margin: 10px 0px;
    padding: 40px 100px;
}

.section-title {
    color: #d27644;
}
.section-description {
    text-align: center;
    width: 70vw;
    margin-bottom: 50px;
    font-size: 40px;
}

.main-infographic {
    display: flex;
    flex-direction: row;

    padding: 20px;
    border-radius: 15px;
    width: 100%;
}
.main-infographic h4 {
    color: gray;
    font-weight: 100;
}

.left-column {
    flex: 1;

    display: flex;
    flex-direction: column;

}

.slider-wrapper {
    flex: 1;
    display: flex;
    flex-direction: column;
}

.point-info-box {
    flex: 1;

    display: flex;
    flex-direction: row;
    
    margin: 5px 15px;

    padding: 10px;

    align-items: center;
    
    border-radius: 15px;
    border: 1px solid #d8d6d7;
}

.point-info-box span {
    display: flex;
    flex-direction: column;
}

.slider-buttons {
    display: none;
}



.right-column {
    flex: 1;
}
.right-column img {
    width: 100%;
}

.info-icon {
    margin: 10px;

    border-radius: 15px;
    padding: 15px;

    display: inline-block;
}
.info-icon img {
    width: 30px;
    display: block;
}

/* Section 1 - Our Process */

.our-process-box .main-infographic {
    background-color: #efedee;
    
}

.our-process-box .info-icon {
    background-color: white;
}


/* Section 2 - Measuring Metabolites */

.measuring-metabolites-box .main-infographic {
    background-color: #a29794;
}

.measuring-metabolites-box .point-info-box {
    background-color: white;
}

.measuring-metabolites-box .info-icon {
    background-color: #f7f6f7;
}


/* Section 3 - Our Test Kit */

.our-test-kit-box .checkmark-icon {
    width: auto;
    border: 1px solid black;
    padding: 10px;
    border-radius: 100px;
}

.our-test-kit-box .slider-wrapper {
    display: flex;
    flex-direction: row;
}

.checkmark-item {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    padding: 10px 10px;
    margin: 5px 20px;
    border-bottom: 1px solid #cccccc; 
}

.our-test-kit-box h1 {
    font-weight: 400;
}

/* Section 4 - Our Platform */

.our-platform-box {
    background-color: #67997d;
    text-align: center;
    border-radius: 15px;

    margin: 0px 100px;
    padding-bottom: 0px;
}

.our-platform-box p, .our-platform-box h1 {
    color: white;
}

.our-platform-subtext {
    margin-bottom: 20px;
}

.our-platform-box img {
    width: 100%;
}

.our-platform-box a {
    background-color: #a8879d;
    color: white;

    display: flex;
    align-items: center;

    margin: 30px;
    padding: 5px;
    padding-left: 10px;
    border-radius: 50px;
}

.our-platform-box a img {
    width: 30px;
    margin-left: 5px;
}

/* Section 5 - Contact Us */

.contact-us-block {
    margin-top: 100px;
    padding: 0px 100px;
}

.contact-us-block .left-column {
    background-color: #a8879d;
    height: 100%;
    border-radius: 20px;

    padding: 20px;
}

.contact-us-block .left-column span {
    flex: 1;
    display: flex;
    flex-direction: column;
}

.info-icon {
    background-color: #a8879d;
}

.contact-me-input {
    background-color: white;
    border-radius: 20px;

    display: flex;
    flex-direction: column;
    flex: 1;

    margin: 10px;
    padding: 15px;

    cursor:text;
}

.contact-me-input input, .contact-me-input textarea {
    flex: 1;
    border: none;
}
.contact-us-block input:focus, .contact-us-block textarea:focus {
    outline: none;
}

.contact-me-input textarea {
    resize: none;
}


.contact-us-block button {
    background-color: #a8879d;
    color: white;
    border: none;

    display: flex;
    align-items: center;

    padding: 5px;
    padding-left: 10px;
    border-radius: 50px;
    cursor: pointer;

    width: 100px;

    align-self: flex-end;
}

.contact-us-block button img {
    width: 30px;
    margin-left: 5px;
}

.contact-me-input textarea::placeholder,
.contact-me-input input::placeholder,
.contact-me-input textarea  {
    font-family: 'Open Sans';
    font-size: small;
    color: black;
}

.icon-border-div {
    border-radius: 100px;
    border: 2px solid white;
    padding: 10px;
}

.form-response {
    position: fixed;
    top: 20px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 9999;
    
    padding: 20px 30px;
    border-radius: 15px;
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    min-width: 250px;
    max-width: 90%;
    
    animation: fadeIn 0.5s ease-in-out;
    box-shadow: 0 5px 15px rgba(0,0,0,0.3);
    font-weight: 600;

    transition: opacity 0.3s ease, transform 0.3s ease;
}

.form-response.success {
    background-color: #67997d;
    color: white;
    border: 2px solid #4e7a61;
}

.form-response.error {
    background-color: #d27644;
    color: white;
    border: 2px solid #a54f2f;
}

@keyframes fadeIn {
    from { opacity: 0; }
    to { opacity: 1; }
}


@media (max-width: 1000px) {
    /* General styling */
    .main-infographic {
        flex-direction: column;
    }

    .main-infographic .right-column {
        order: -1;
    }

    .main-infographic .left-column {
        order: 0;
    }

    .contact-us-block {
        margin-bottom: 100px;
    }

    .contact-us-block .right-column {
        order: 0;
        flex: 1;
    }

    .contact-us-block .left-column {
        height: 50%;
    }

    .our-platform-box {
        width: 100%;
        margin: 0px;
    }

    .contact-us-block {
        padding: 0px;
    }

    .contact-us-block .left-column,
    .contact-us-block .right-column {
        margin: 20px;
        width: 100%;
    }
}

@media (max-width: 1000px) {
  .mobile-slider {
    width: 100%;
  }

  .mobile-slider .slider-wrapper {
    display: flex;
    overflow: hidden;
    position: relative;

    padding: 0;
  }

  .mobile-slider .slider-item {
    width: 100%;
    display: none;
    flex: 0 0 100%;
  }

  .mobile-slider .slider-item.active {
    display: flex;
  }

  .mobile-slider .slider-buttons {
    display: flex;
    justify-content: space-between;
    margin-top: 10px;
  }

  .mobile-slider .slider-buttons button {
    background-color: #a8879d;
    color: white;
    border: none;
    padding: 10px 20px;
    border-radius: 10px;
    cursor: pointer;
  }

  .our-test-kit-box .right-column, .our-test-kit-box .left-column {
    flex-direction: column;
    width: 100%;
    flex: none;
    justify-content: space-between;
  }

  .main-infographic .left-column,
  .main-infographic .right-column {
    width: 100%;
    flex: none;
  }

  
  .main-infographic {
    justify-content: space-between; /* distribute vertically */
  }
}