/* Contact Form 7 Styling */
.cf7-row {
    margin-bottom: 20px;
}

.cf7-row label {
    display: block;
    font-weight: 600;
    margin-bottom: 5px;
    color: #333;
}

.wpcf7 input[type="text"],
.wpcf7 input[type="email"],
.wpcf7 input[type="tel"],
.wpcf7 textarea {
    width: 100% !important;
    padding: 12px 15px !important;
    border: 1px solid #ddd !important;
    border-radius: 6px !important;
    font-size: 15px !important;
    color: #333 !important;
    background: #fff !important;
    box-sizing: border-box !important;
}

.wpcf7 input[type="text"]:focus,
.wpcf7 input[type="email"]:focus,
.wpcf7 input[type="tel"]:focus,
.wpcf7 textarea:focus {
    border-color: #999 !important;
    outline: none !important;
}

.wpcf7 textarea {
    height: 150px !important;
    resize: vertical !important;
}

.wpcf7 input[type="submit"] {
    background: #333 !important;
    color: #fff !important;
    padding: 12px 30px !important;
    border: none !important;
    border-radius: 6px !important;
    font-size: 15px !important;
    cursor: pointer !important;
    width: 100% !important;
}

.wpcf7 input[type="submit"]:hover {
    background: #555 !important;
}

.signexa-posts {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 30px;
}

.signexa-posts .post-item {
  display: flex;
  flex-direction: column;
}

#signexa-products ul.products {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: stretch !important;
}

#signexa-products ul.products li.product {
    display: flex !important;
    flex-direction: column !important;
    justify-content: space-between !important;
}

#signexa-products ul.products li.product a.add_to_cart_button {
    margin-top: auto !important;
    align-self: center !important;
    width: 80% !important;
    text-align: center !important;
    position: relative !important;
    bottom: 0 !important;
}




.container.fadeInLeft {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: stretch !important;
}

.container.fadeInLeft .threepagebox.three_column {
    display: flex !important;
    flex-direction: column !important;
    float: none !important;
}

.container.fadeInLeft .threepagebox.three_column .pagecontent {
    display: flex !important;
    flex-direction: column !important;
    flex-grow: 1 !important;
}

.container.fadeInLeft .threepagebox.three_column .pagecontent p {
    flex-grow: 1 !important;
}

.container.fadeInLeft .threepagebox.three_column .pagecontent a.button {
    margin-top: auto !important;
    display: block !important;
    text-align: center !important;
}



@media (max-width: 768px) {
    .container.fadeInLeft {
        display: block !important;
        flex-wrap: unset !important;
    }
    
    .threepagebox.three_column {
        float: none !important;
        width: 100% !important;
        margin-bottom: 20px !important;
    }

    h2.section_title {
        text-align: center !important;
        width: 100% !important;
    }

    .signexa_posts,
    .news-box,
    .latest-news {
        text-align: center !important;
        width: 100% !important;
        float: none !important;
        clear: both !important;
    }
}




/* Equal height product cards on shop pages */
.woocommerce ul.products {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: stretch !important;
}

.woocommerce ul.products li.product {
    display: flex !important;
    flex-direction: column !important;
    justify-content: space-between !important;
}

.woocommerce ul.products li.product a.woocommerce-loop-product__link {
    flex-grow: 1 !important;
    display: flex !important;
    flex-direction: column !important;
}

.woocommerce ul.products li.product a.woocommerce-loop-product__link img {
    flex-shrink: 0 !important;
}

.woocommerce ul.products li.product h2.woocommerce-loop-product__title {
    flex-grow: 1 !important;
}

.woocommerce ul.products li.product a.add_to_cart_button {
    margin-top: auto !important;
    align-self: center !important;
    width: 80% !important;
    text-align: center !important;
}