/*
Theme Name: the7dtchild
Author: Dream-Theme
Author URI: http://dream-theme.com/
Description: The7 is perfectly scalable, performance and SEO optimized, responsive, retina ready multipurpose WordPress theme. It will fit every site – big or small. From huge corporate portals to studio or personal sites – The7 will become a great foundation for your next project!
Version: 1.0.0
License: This WordPress theme is comprised of two parts: (1) The PHP code and integrated HTML are licensed under the GPL license as is WordPress itself.  You will find a copy of the license text in the same directory as this text file. Or you can read it here: http://wordpress.org/about/gpl/ (2) All other parts of the theme including, but not limited to the CSS code, images, and design are licensed according to the license purchased. Read about licensing details here: http://themeforest.net/licenses/regular_extended
Template: dt-the7
*/

@font-face {
    font-family: "Font Awesome 5 Free";
    font-style: normal;
    font-weight: 900;
    font-display: swap;
    src: url("/wp-content/themes/dt-the7-child/fonts/fa-solid-900.woff2") format("woff2");
}

@font-face {
    font-family: "Font Awesome 5 Free";
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url("/wp-content/themes/dt-the7-child/fonts/fa-regular-400.woff2") format("woff2");
}

@font-face {
    font-family: "Font Awesome 5 Brands";
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url("/wp-content/themes/dt-the7-child/fonts/fa-brands-400.woff2") format("woff2");
}

html {
    scroll-behavior: smooth !important;
    scroll-padding-top: 400px;
}

.green {
    color: #73bd6e;
}

.black {
    color: #2d2c28;
}

.blue {
    color: #647af7;
}

.yellow-gold {
    color: #dfaf20;
}

.home-heading h1 .blue {
    text-shadow:
        -1px 0 #ffffff,
        0 1px #ffffff,
        1px 0 #ffffff,
        0 -1px #ffffff;
}

.home-heading span.h3-size {
    color: #ffffff;
    font-weight: 400;
    display: block;
    width: 100%;
}

html .elementor-tab-content h2,
html .elementor-widget-text-editor h2,
html .elementor-widget-theme-post-content h2,
html .the7-e-tab-content.the7-e-tab-text-content h2,
.elementor-widget.no-margin p:last-of-type,
.elementor-widget.no-margin .the7-heading-title:last-of-type {
    margin-bottom: 0px;
}

.elementor-widget-theme-post-content .wp-block-separator {
    display: none;
}

.elementor-custom-embed {
    height: 100%;
}

.info-icon {
    position: relative;
    display: inline-block;
    width: 18px;
    height: 18px;
    margin-left: 3px;
    cursor: pointer;
    line-height: 1;
    top: 4px;
}

.info-icon::after {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    background-color: #6d6d6d;
    border-radius: 50%;
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='20' height='20'><text x='50%' y='60%' dominant-baseline='middle' text-anchor='middle' font-family='Arial' font-size='14' fill='white'>i</text></svg>");
    background-repeat: no-repeat;
    background-position: center;
    background-size: 17px;
}

.image-stretch *,
.image-stretch .img-css-resize-wrapper img,
.image-stretch .elementor-icon svg {
    height: 100%;
}

.stretch-item .the7-box-wrapper {
    height: 100%;
    align-items: center;
}

.logo-fix-height,
.logo-fix-height * {
    height: 100% !important;
}

.unset-maxwidth {
    max-width: none !important;
}

form div.elementor-message {
    margin: 1rem 0;
    padding: 1rem;
    color: #ffffff !important;
    border-radius: 17px;
}

form div.elementor-message.elementor-message-success {
    background: #73bd6e;
}

form div.elementor-message:not(.elementor-message-success) {
    background: #d9534f;
}

html #footer.solid-bg {
    background: none;
}

.text-wrap-desktop {
    overflow-wrap: anywhere;
}
.elementor-field-type-checkbox .elementor-field-subgroup {
    gap: 20px;
}

.elementor-field-type-checkbox .elementor-field-option {
    display: flex;
    align-items: center;
    position: relative;
    flex: 0 1 calc(16.6666% - 20px);
    padding: 0 !important;
}

.elementor-field-type-checkbox .elementor-field-option input {
    display: none !important;
}

.elementor-field-type-checkbox .elementor-field-option input + label {
    color: var(--the7-input-color);
    font: var(--the7-form-md-font);
    border-style: var(--the7-form-border);
    border-top-width: var(--the7-top-input-border-width);
    border-right-width: var(--the7-right-input-border-width);
    border-bottom-width: var(--the7-bottom-input-border-width);
    border-left-width: var(--the7-left-input-border-width);
    border-color: var(--the7-input-border-color);
    background-color: var(--the7-input-bg-color);
    padding: 10px 16px 10px 16px;
    border-radius: 8px 8px 8px 8px;
    width: 100%;
    display: flex !important;
    align-items: center;
    cursor: pointer;
}

.elementor-field-type-checkbox .elementor-field-option input + label::before {
    content: "";
    border: 1px solid #15281f;
    width: 17px;
    height: 17px;
    display: block;
    border-radius: 2px;
    margin-right: 10px;
}

.elementor-field-type-checkbox .elementor-field-option input:checked + label {
    border-color: #15281f;
    background-color: rgba(217, 232, 225, 0.5019607843137255);
}

.elementor-field-type-checkbox .elementor-field-option input:checked + label::before {
    content: "";
    background-image: url('data:image/svg+xml,<%3Fxml version="1.0" encoding="utf-8"%3F><!-- Generator: Adobe Illustrator 28.2.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) --><svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 448.1 416" style="enable-background:new 0 0 448.1 416;" xml:space="preserve"><style type="text/css">.st0{fill:%23ffffff;}</style><path class="st0" d="M438,4.5c10.8,7.7,13.2,22.7,5.5,33.5l-264,368c-4.1,5.7-10.5,9.4-17.5,9.9s-14-1.9-19-6.9L7.1,273c-9.4-9.4-9.4-24.6,0-33.9c9.4-9.3,24.6-9.4,33.9,0L157.1,355L404.5,10C412.2-0.8,427.2-3.2,438,4.5z"/></svg>');
    background-size: 70%;
    background-repeat: no-repeat;
    background-position: 2px center;
    background-color: #15281f;
}

input[readonly] {
    cursor: not-allowed !important;
    background: rgba(0, 0, 0, 0.12) !important;
}

.elementor-field-group {
    align-content: flex-start;
}

.flex-direction-none > .e-con-inner {
    flex-direction: initial !important;
}

html #page {
    background: none;
}

.header-relative > div {
    position: relative;
}

.elementor-widget-n-accordion .e-n-accordion-item {
    overflow: visible !important;
}

.elementor-widget-n-accordion summary {
    box-shadow: 0px 0px 15px 0px rgba(72, 19.999999999999986, 0.9999999999999964, 0.25);
}

header .horizontal-menu-wrap:not(.horizontal-menu-dropdown) .the7-e-mega-menu-content > .elementor-section-wrap {
    overflow: visible !important;
}

.normal-style {
    text-transform: none !important;
}

.margin-top-auto {
    margin-top: auto;
}

.contact-button.elementor-element {
    display: flex;
    align-items: center;
    justify-content: end;
    gap: 10px;
    width: auto;
    position: fixed;
    bottom: 10px;
    right: 10px;
    transition: bottom 0.6s ease-in-out;
    z-index: 99999;
    pointer-events: none;
}

.contact-button.elementor-element .elementor-button {
    background-color: #647af7;
    border-color: #647af7;
    border-style: solid;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: start;
    min-width: 9px;
    flex: 0;
    position: relative;
    overflow: hidden;
    transition: all 0.5s ease;
    cursor: pointer;
    pointer-events: all;
}

.contact-button.elementor-element:hover .elementor-button,
.contact-button.elementor-element:focus .elementor-button {
    background: #4557c0;
    border-color: #4557c0;
    border-style: solid;
}

.contact-button.elementor-element .elementor-button .text {
    display: flex;
    flex-direction: column;
    justify-content: center;
    white-space: nowrap;
    padding-left: 20px;
    opacity: 0;
    transition: all 0.5s ease;
}

.contact-button.elementor-element:hover .elementor-button .text,
.contact-button.elementor-element:focus .elementor-button .text {
    opacity: 1;
}

.contact-button.elementor-element .elementor-button svg {
    width: 20px;
    height: 20px;
    flex: 0 0 20px;
    margin-left: -5px;
}

.contact-button.elementor-element .elementor-button span:first-child {
    font-family: var(--e-global-typography-el_f_uppercase_s-font-family), Sans-serif;
    font-size: 12px;
    font-weight: var(--e-global-typography-el_f_uppercase_s-font-weight);
    text-transform: var(--e-global-typography-el_f_uppercase_s-text-transform);
    line-height: 1;
    display: block;
}

.contact-button.elementor-element .elementor-button span + span {
    display: block;
    margin-top: 3px;
    line-height: 1;
}

.contact-button.elementor-element .elementor-button img {
    position: absolute;
    left: 21px;
}

/* Fix blog styles */
.wp-block-heading {
    color: var(--the7-base-color);
}

.dot-pattern {
    background-image: radial-gradient(rgb(36 76 57 / 11%) 1.5px, transparent 1.5px);
    background-size: 24px 24px;
}

.dot-pattern.light {
    background-image: radial-gradient(rgb(136 143 139 / 11%) 1.5px, transparent 1.5px);
    background-size: 24px 24px;
}

.grid-pattern {
    background-image: linear-gradient(rgb(36 76 57 / 3%) 1px, transparent 1px),
        linear-gradient(90deg, rgb(36 76 57 / 3%) 1px, transparent 1px);
    background-size: 40px 40px;
}

.border-left-green {
    border-left: 0.5rem solid #10b981 !important;
}

.border-left-blue {
    border-left: 0.5rem solid #3b82f6 !important;
}

.border-left-orange {
    border-left: 0.5rem solid #f59e0b !important;
}

.border-top-green {
    border-top: 0.5rem solid #10b981 !important;
}

.border-top-blue {
    border-top: 0.5rem solid #3b82f6 !important;
}

.border-top-orange {
    border-top: 0.5rem solid #f59e0b !important;
}

.sentenced-form .e-form__indicators {
    width: 50%;
    align-self: center;
    margin-left: auto;
    margin-right: auto;
}

.sentenced-form .e-form__indicators__indicator--state-active .e-form__indicators__indicator__number {
    color: var(--e-global-color-el_c_1_text);
}

.sentenced-form .elementor-field-group .elementor-field-textual.elementor-size-lg,
.sentenced-form .content .elementor-field-group .elementor-field-textual.elementor-size-lg {
    padding-bottom: 5px;
}

.sentenced-form .elementor-field-group select.elementor-field-textual.elementor-size-lg,
.sentenced-form .content .elementor-field-group select.elementor-field-textual.elementor-size-lg {
    font-family: var(--e-global-typography-el_f_title_4-font-family), Sans-serif;
    font-size: var(--e-global-typography-el_f_title_4-font-size);
    font-weight: var(--e-global-typography-el_f_title_4-font-weight);
    text-transform: var(--e-global-typography-el_f_title_4-text-transform);
    font-style: var(--e-global-typography-el_f_title_4-font-style);
    color: #ffffff;
}

.sentenced-form .elementor-field-group select.elementor-field-textual.elementor-size-lg option,
.sentenced-form .content .elementor-field-group select.elementor-field-textual.elementor-size-lg option {
    color: var(--e-global-color-el_c_1_text);
}

.sentenced-form .text-label {
    display: flex;
    align-items: flex-end;
    height: 100%;
    color: #ffffff;
}

html .elementor-hidden {
    display: none !important;
}

.text-left .elementor-button {
    text-align: left;
}

.custom-steps-form .e-form__indicators {
    margin: auto;
    margin-bottom: 2rem;
}

.custom-steps-form .e-form__indicators__indicator { 
    min-width: 45%;
}

html .swiper-wrapper, html .swiper-wrapper .elementor-section-wrap, html .swiper-wrapper .elementor-section-wrap > .elementor-element {
    height: 100% !important;
    align-items: stretch !important;
}

@media only screen and (min-width: 1024px) {
    .contact-button.elementor-element.whatsapp {
        display: none !important;
    }

    .contact-button.elementor-element + .contact-button.elementor-element {
        bottom: calc(10px + 65px + 10px);
    }

    .contact-button.elementor-element:hover .elementor-button,
    .contact-button.elementor-element:focus .elementor-button {
        flex: 1;
    }
    
.custom-steps-form .e-form__indicators {
    max-width: 50%;
}
    
}

/* mobiel */
@media only screen and (max-width: 1023px) {
    .text-wrap {
        overflow-wrap: anywhere;
    }

    html .elementor-button-align-stretch .e-form__buttons__wrapper {
        flex-basis: 100%;
    }

    .elementor-field-type-checkbox .elementor-field-option {
        flex: 0 1 calc(25% - 20px);
        max-width: 100%;
    }

    .contact-button.elementor-element.email {
        display: none !important;
    }

    .contact-button.elementor-element + .contact-button.elementor-element:not(.whatsapp) {
        bottom: calc(10px + 51px + 10px);
    }

    .contact-button.elementor-element .elementor-button {
        padding: 6px 18px;
    }

    .contact-button.elementor-element .elementor-button img {
        left: 14px;
    }
}

@media (max-width: 767px) {
    .elementor-field-type-checkbox .elementor-field-option {
        flex: 0 1 calc(50% - 20px);
        max-width: 100%;
    }
}


/* Table vergelijker */
html body .comparison-section {
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
}

html body .comparison-section *,
html body .comparison-section *::before,
html body .comparison-section *::after {
    box-sizing: border-box !important;
}

/* Scroll hint */
html body .comparison-section p.scroll-hint {
    display: block !important;
    text-align: center !important;
    font-size: 12px !important;
    color: #71717a !important;
    margin-bottom: 8px !important;
    padding: 0 !important;
    border: none !important;
    background: transparent !important;
}

@media (min-width: 768px) {
    html body .comparison-section p.scroll-hint {
        display: none !important;
    }
}

/* Table wrapper */
html body .comparison-section div.table-wrapper {
    position: relative !important;
    width: 100% !important;
    overflow-x: auto !important;
    overflow-y: visible !important;
    border-radius: 0px !important;
    border: none !important;
    box-shadow: none !important;
}

/* Scroll gradient indicator */
html body .comparison-section div.table-wrapper div.scroll-gradient {
    display: none !important;
}

@media (max-width: 767px) {
    html body .comparison-section div.table-wrapper div.scroll-gradient {
        display: block !important;
        position: absolute !important;
        top: 0 !important;
        right: 0 !important;
        bottom: 0 !important;
        width: 40px !important;
        pointer-events: none !important;
        z-index: 30 !important;
        border: none !important;
    }
}

/* Table base */
html body .comparison-section table.comparison-table {
    width: 100% !important;
    min-width: 500px !important;
    border-collapse: collapse !important;
    border-spacing: 0 !important;
    font-size: 14px !important;
    border: none !important;
    background-color: transparent !important;
    box-shadow: none !important;
    outline: none !important;
    margin: 0px;
}

/* Table header */
html body .comparison-section table.comparison-table thead {
    position: sticky !important;
    top: 0 !important;
    z-index: 10 !important;
    border: none !important;
}

html body .comparison-section table.comparison-table thead tr {
    border: none !important;
}

html body .comparison-section table.comparison-table thead tr th {
    padding: 12px 16px !important;
    text-align: center !important;
    font-weight: 600 !important;
    color: #18181b !important;
    font-size: 14px !important;
    background-color: transparent !important;
    border: none !important;
    border-bottom: 1px solid #e4e4e7 !important;
}

html body .comparison-section table.comparison-table thead tr th.sticky-header-cell {
    position: sticky !important;
    left: 0 !important;
    background-color: #f9f8f5 !important;
    z-index: 20 !important;
    box-shadow: 2px 0 5px -2px rgba(0, 0, 0, 0.1) !important;
    border: none !important;
    border-bottom: 1px solid #e4e4e7 !important;
}

/* Header content met iconen */
html body .comparison-section table.comparison-table thead tr th span.header-content {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 6px !important;
    border: none !important;
    background: transparent !important;
}

html body .comparison-section table.comparison-table thead tr th span.header-content svg {
    width: 16px !important;
    height: 16px !important;
    flex-shrink: 0 !important;
    border: none !important;
}

/* Table body */
html body .comparison-section table.comparison-table tbody {
    border: none !important;
}

html body .comparison-section table.comparison-table tbody tr {
    border: none !important;
    border-bottom: 1px solid #e4e4e7 !important;
}

html body .comparison-section table.comparison-table tbody tr.row-even {
    background-color: #e3e2e1 !important;
}

html body .comparison-section table.comparison-table tbody tr.row-odd {
    background-color: transparent !important;
}

html body .comparison-section table.comparison-table tbody tr td {
    padding: 12px 16px !important;
    text-align: center !important;
    color: #71717a !important;
    font-size: 14px !important;
    border: none !important;
    background-color: inherit !important;
}

/* Sticky eerste kolom in body */
html body .comparison-section table.comparison-table tbody tr td.sticky-cell {
    position: sticky !important;
    left: 0 !important;
    z-index: 10 !important;
    text-align: left !important;
    font-weight: 500 !important;
    color: #18181b !important;
    box-shadow: 2px 0 5px -2px rgba(0, 0, 0, 0.1) !important;
    border: none !important;
}

html body .comparison-section table.comparison-table tbody tr td.sticky-cell.row-even {
    background-color: ##e3e2e1 !important;
}

html body .comparison-section table.comparison-table tbody tr td.sticky-cell.row-odd {
    background-color: #f9f8f5 !important;
}

/* Table footer */
html body .comparison-section table.comparison-table tfoot {
    border: none !important;
}

html body .comparison-section table.comparison-table tfoot tr {
    background-color: transparent !important;
    border: none !important;
    border-top: 1px solid #e4e4e7 !important;
}

html body .comparison-section table.comparison-table tfoot tr td {
    padding: 16px !important;
    text-align: center !important;
    border: none !important;
    background-color: transparent !important;
}

html body .comparison-section table.comparison-table tfoot tr td.footer-cell {
    position: sticky !important;
    left: 0 !important;
    z-index: 10 !important;
    background-color: #f9f8f5 !important;
    box-shadow: 2px 0 5px -2px rgba(0, 0, 0, 0.1) !important;
    border: none !important;
}

/* Meer info buttons */
html body .comparison-section table.comparison-table tfoot tr td a.more-info-btn {
    font: var(--the7-btn-m-font);
    text-transform: var(--the7-btn-m-text-transform);
    letter-spacing: var(--the7-btn-m-letter-spacing);
    word-spacing: var(--the7-btn-m-word-spacing);
    border-radius: var(--the7-btn-m-border-radius);
    border-width: var(--the7-btn-m-border-width);
    padding: var(--the7-btn-m-padding);
    min-width: var(--the7-btn-m-min-width);
    min-height: var(--the7-btn-m-min-height);
    --btn-icon-spacing: var(--the7-btn-m-icon-gap, 7px);
    background: var(--e-global-color-d7adfd3);
    color: var(--e-global-color-el_c_1_text);
    border-style: solid;
    border-color: var(--e-global-color-ca5b9bd);
}

html body .comparison-section table.comparison-table tfoot tr td a.more-info-btn:hover {
    background: var(--e-global-color-ca5b9bd);
}

/* Responsive aanpassingen */
@media (max-width: 767px) {
    html body .comparison-section table.comparison-table thead tr th {
        padding: 8px !important;
        font-size: 12px !important;
    }

    html body .comparison-section table.comparison-table tbody tr td {
        padding: 8px !important;
        font-size: 12px !important;
    }

    html body .comparison-section table.comparison-table tfoot tr td {
        padding: 12px 8px !important;
    }

    html body .comparison-section table.comparison-table tfoot tr td a.more-info-btn {
        padding: 6px 12px !important;
        font-size: 12px !important;
    }
}
