/*
Theme Name: New-Line Insulation
Theme URI: https://wordpress.org/themes/twentytwentythree
Author: the WordPress team
Author URI: https://wordpress.org
Description: Twenty Twenty-Three is designed to take advantage of the new design tools introduced in WordPress 6.1. With a clean, blank base as a starting point, this default theme includes ten diverse style variations created by members of the WordPress community. Whether you want to build a complex or incredibly simple website, you can do it quickly and intuitively through the bundled styles or dive into creation and full customization yourself.
Requires at least: 6.1
Tested up to: 6.3
Requires PHP: 5.6
Version: 1.2
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/old-licenses/gpl-2.0.html
Text Domain: twentytwentythree
Tags: one-column, custom-colors, custom-menu, custom-logo, editor-style, featured-images, full-site-editing, block-patterns, rtl-language-support, sticky-post, threaded-comments, translation-ready, wide-blocks, block-styles, style-variations, accessibility-ready, blog, portfolio, news
*/

* {
    box-sizing: border-box;
}

.w-100 {
    width: 100%;
}

.flex-1 {
    flex: 1;
}

.mt-auto {
    margin-top: auto !important;
}

.is-style-card .is-style-jagged-top.mt-auto {
    transform: translateY(5px);
}

.entry-content {
    margin-top: 0;
}

.clip-bottom {
    clip-path: polygon(0 0, 100% 0, 100% 94%, 0 94%);
}

/* General styles for links to adjust spacing with icons */
.wp-block-navigation-item__content {
    display: flex;
    align-items: center;
}

/* Adding a contact icon before the Contact link */
.wp-block-navigation-item.contact-link .wp-block-navigation-item__content::before {
    content: "\f0e0";
    /* Unicode for Font Awesome user icon (as an example) */
    font-family: "Font Awesome 5 Free";
    /* Assuming you are using FA5 Free. Adjust accordingly if using another version or Pro. */
    font-weight: 900;
    /* For solid icons in FA5 */
    margin-right: 8px;
    /* Space between the icon and the label */
}

/* Adding a phone icon before the Phone number link */
.wp-block-navigation-item.phone-number-click .wp-block-navigation-item__content::before {
    content: "\f095";
    /* Unicode for Font Awesome phone icon */
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    margin-right: 8px;
}

.is-style-jagged-top {
    flex: none !important;
}

.wp-block-cover.bottom-edge {
    clip-path: polygon(100% -1%, 100% 100%, 68% 90%, -1% 100%, -1% -1%);
}

.wp-block-query.is-style-slider {
    margin-top: 0 !important;
    position: relative;

}

.wp-block-query.is-style-slider ul {
    width: 100%;
    max-width: 100%;
    height: auto;
    display: flex;
    flex-wrap: nowrap !important;
    overflow-x: auto;
    gap: 1em;
    -webkit-overflow-scrolling: touch;
    scroll-snap-type: x mandatory;
}

.wp-block-query.is-style-slider li {
    width: 300px;
    flex-shrink: 0;
    padding-left: 1em;
    padding-right: 1em;
    display: flex;
    flex-direction: column;
    box-sizing: border-box;
    padding: 0 !important;
    scroll-snap-align: start;
}

.wp-block-columns.services-slider .wp-block-column:first-of-type>.wp-block-group>.wp-block-group {
    position: relative;
}

.wp-block-columns.services-slider .wp-block-column:first-of-type>.wp-block-group>.wp-block-group .wp-block-query.is-style-slider {
    position: absolute;
    top: 0;
    left: 0;
    width: calc(100vw - var(--wp--style--root--padding-right));
    overflow: hidden;
}

.wp-block-group.is-style-card {
    display: flex;
    flex-direction: column;
    flex: 1;
    overflow: hidden;
}

.wp-block-group.is-style-card>.wp-block-cover {
    flex: 1;
    display: flex;
    flex-direction: column;
}

.wp-block-group.is-style-card>.wp-block-cover .wp-block-cover__inner-container {
    height: 100% !important;
    display: flex;
    flex-direction: column;
}

.wp-block-group.is-style-card>.wp-block-cover .wp-block-cover__inner-container>.wp-block-group {
    flex: 1;
}

.wp-block-group.is-style-card>.wp-block-group,
.wp-block-group.is-style-card>.wp-block-group>.wp-block-post-excerpt {
    flex: 1;
}

.wp-block-group.is-style-card>.wp-block-group>.wp-block-post-excerpt {
    display: flex !important;
    flex-direction: column !important;
}

.wp-block-group.is-style-card>.wp-block-group>.wp-block-post-excerpt>.wp-block-post-excerpt__more-text {
    margin-top: auto !important;
}

.wp-block-group.is-style-card .wp-block-cover {
    width: 100%;
}

.slider-arrow-row {
    position: relative;
    display: flex;
    justify-content: flex-end;
    gap: 1em;
    font-size: 2em;
    padding-top: 0;
    padding-bottom: var(--wp--preset--spacing--30);
    margin-right: var(--wp--preset--spacing--30);
}

.slider-arrow-row i {
    color: var(--wp--preset--color--secondary);
    cursor: pointer;
}

.wp-block-columns.is-style-featured .wp-block-column {
    display: flex;
}

.wp-block-columns.is-style-featured .wp-block-column .wp-block-group.is-style-card {
    flex: 1;
}

.wp-block-columns.is-style-featured .wp-block-column .wp-block-group.is-style-card p:last-of-type {
    margin-top: auto;
}

.testimonial-content {
    position: relative;
}

.testimonial-content mark {
    position: absolute;
    font-size: 3.5em !important;
    display: flex;
}

.testimonial-content mark:first-of-type {
    top: 3px;
    left: 5px;
    justify-content: start;
}

.testimonial-content mark:last-of-type {
    bottom: 3px;
    right: 5px;
    justify-content: end;
}

.wp-block-group.is-style-jagged-top {
    clip-path: polygon(71% -1%, 100% 15%, 100% 99%, -1% 100%, -1% 16%);
}

.wp-block-column.is-style-testimonial>.wp-block-group {
    position: relative;
    overflow: visible;
}

.wp-block-column.is-style-testimonial>.wp-block-group::before,
.wp-block-column.is-style-testimonial>.wp-block-group::after {
    z-index: 1000;
    font-size: 2.5em;
    color: var(--wp--preset--color--custom-color-1) !important
}

/* Add the opening quote to the top left */
.wp-block-column.is-style-testimonial>.wp-block-group::before {
    content: "\f10d";
    /* Font Awesome Unicode for fa-quote-left */
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    /* Ensure the icon is solid and not an outline */
    position: absolute;
    top: 0;
    /* Adjust as needed */
    left: 0;
    transform: translate(-50%, -50%);
}

/* Add the closing quote to the bottom right */
.wp-block-column.is-style-testimonial>.wp-block-group::after {
    content: "\f10e";
    /* Font Awesome Unicode for fa-quote-right */
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    /* Ensure the icon is solid and not an outline */
    position: absolute;
    bottom: 0;
    /* Adjust as needed */
    right: 0;
    transform: translate(20%, 20%);
}

/* Add the closing quote to the bottom right */
.wp-block-column.is-style-testimonial .wp-block-group,
.wp-block-column.is-style-testimonial .wp-block-cover,
.wp-block-column.is-style-testimonial .is-style-card>.wp-block-cover>.wp-block-cover__inner-container {
    height: 100%;
}

.wp-block-column.is-style-testimonial .is-style-card>.wp-block-cover>.wp-block-cover__inner-container {
    display: flex;
    flex-direction: column;
    align-items: stretch;
}

.wp-block-column.is-style-testimonial .is-style-card>.wp-block-cover>.wp-block-cover__inner-container>.wp-block-group {
    height: auto !important;
}

.wp-block-column.is-style-testimonial .is-style-card>.wp-block-cover>.wp-block-cover__inner-container>.wp-block-group:first-child {
    flex: 1;
}

/* Container class for the row */
.cm-row {
    display: flex;
    /* Makes it a flex container */
    justify-content: space-between;
    /* Distributes the columns with space in between */
    align-items: center;
    /* Vertically center-aligns the content if there's any vertical discrepancy between columns */
    flex-wrap: nowrap;
    /* Prevents wrapping, ensuring that the columns are always side-by-side */
}

/* Column classes to define the widths */
.cm-column-6 {
    flex: 1;
    /* This will ensure both columns take up equal width */
    padding: 0 10px;
    /* Optional padding to prevent content from touching the edges or the neighboring column */
}

.wpcf7-form-control-wrap {
    width: 100%;
}

/* Optional: Adds a bit of margin to the top and bottom of the input fields and the submit button for better aesthetics */
.wpcf7-form-control {
    margin: 10px 0;
    width: 100%;
}

.wpcf7-form button {
    font: inherit;
    background: transparent;
    border: none;
    border-bottom: 1px solid;
    border-color: inherit;
    text-align: left;
    padding: 0;
    /* remove any default padding */
    margin: 0;
    /* remove any default margin */
    cursor: pointer;
    color: inherit;
}

/* Style for submit button */
input[type="submit"]::after {
    content: '';
    width: 1em;
    height: 1em;
}

input[type="submit"]:hover {
    background-color: white;
    color: var(--wp--preset--color--contrast);
    border-bottom: 1px solid var(--wp--preset--color--contrast);
}

/* Set line-height of all <p> tags within CF7 form to 1 */
.wpcf7-form p {
    line-height: 1 !important;
    margin-top: .25em !important;
    margin-bottom: .25em !important;
}

/* Replace 'Font Awesome 6 Solid' with the font family name of your font awesome icon set */


/* Remove border from the email input field */
.wpcf7-email {
    background-color: #fff;
    border: none;
    outline: none;
    /* Optional: removes focus outline. However, keep in mind that this may affect accessibility */
    padding: .75em 1.26em;
    border-radius: 5px;
}

input[type="submit"] {
    cursor: pointer;
}

/* Remove border from the submit button */
.wpcf7-form-control {
    /* Optional: removes focus outline. However, keep in mind that this may affect accessibility */
    padding: .75em 1.26em;
    border-radius: 5px;
    border: none;
    /* In case the button has a background color */
    outline: none;
    /* Optional: removes focus outline. However, keep in mind that this may affect accessibility */
}

/* Base styling for the FAQ container */
.schema-faq.wp-block-yoast-faq-block {
    display: grid;
    gap: 20px;
    /* Spacing between grid items */
    padding: 20px;
    border-radius: 5px;
    /* Light gray background color */
}

/* Default single column layout for mobile screens */
.schema-faq-section {
    display: grid;
    gap: 10px;
    grid-template-columns: 1fr;
    padding: 15px;
    border: 1px solid #ccc;
    /* Light border around each FAQ item */
    border-radius: 5px;
    background-color: #ffffff;
    /* White background for each FAQ item */
}

/* Question and answer styles */
.schema-faq-question {
    font-size: 1.2em;
    color: #333;
    /* Dark gray color for questions */
}

.schema-faq-answer {
    font-size: 1em;
    color: #666;
    /* Light gray color for answers */
}

/* Responsive styles for larger screens (for example: tablets, laptops, and desktops) */
@media (min-width: 768px) {
    .schema-faq.wp-block-yoast-faq-block {
        grid-template-columns: repeat(2, 1fr);
        /* 2 columns layout for larger screens */
    }
}

@media (min-width: 1200px) {
    .schema-faq.wp-block-yoast-faq-block {
        grid-template-columns: repeat(3, 1fr);
        /* 3 columns layout for even larger screens */
    }
}