/**
 * inwendo Core Theme Child
 *
 * Theme Name:      ferienhof-riensheide.de (2025)
 * Theme URI:       https://iwlink.de/wp-themes-en
 * Description:     Child Theme based on the inwendo Core Theme for customized design and function. (Core Theme 2025)
 * Version:         1.0.0
 * Author:          inwendo GmbH
 * Author URI:      https://iwlink.de/wp-websites-en
 * Template:        inwendo-core-theme
 * Text Domain:     inwendo-core-theme-child
 * Domain Path:     /languages
 * License:         GPL v3
 *
 * You should have received a copy of the GNU General Public License
 * and further information along with this program.
 * If not, see:
 * <https://www.gnu.org/licenses/> (GNU General Public License)
 * <https://inwendo.de/licenses/> (Author)
 */

/* Fonts */
h1,
h2,
h3,
h4,
h5,
h6,
.lookalike-h1,
.lookalike-h2,
.lookalike-h3,
.lookalike-h4,
.lookalike-h5,
.lookalike-h6 {
    font-family: "Hind", sans-serif;
    color: #1D1D1D;
}

.highlight-1,
.highlight-1 h1,
.highlight-1 h2,
.highlight-1 h3,
.highlight-1 h4,
.highlight-1 h5,
.highlight-1 h6,
.highlight-1 .lookalike-h1,
.highlight-1 .lookalike-h2,
.highlight-1 .lookalike-h3,
.highlight-1 .lookalike-h4,
.highlight-1 .lookalike-h5,
.highlight-1 .lookalike-h6 {
    color: #ab88b8;
}

h1,
.lookalike-h1 {
    font-size: 40px;
    line-height: 60px;
    font-weight: 700;
}

h2,
.lookalike-h2,
.iw-tal-headline {
    font-size: 30px;
    line-height: 48px;
    font-weight: 700;
}

h3,
.lookalike-h3 {
    font-size: 24px;
    line-height: 38px;
    font-weight: 600;
}

h4,
.lookalike-h4 {
    font-size: 22px;
    line-height: 35px;
    font-weight: 300;
}

h5,
.lookalike-h5 {
    font-size: 18px;
    line-height: 32px;
    font-weight: 600;
}

h6,
.lookalike-h6,
body {
    font-family: "Hind", sans-serif;
    font-weight: 400;
    font-size: 16px;
    line-height: 26px;
    color: #1D1D1D;
}

.wpb_content_element {
    margin-bottom: 25px !important;
}

.vc_row-has-fill > .vc_column_container > .vc_column-inner {
    padding-top: 0 !important;
}

/* Generell Link Style */
a {
    color: #1D1D1D;
    text-decoration: underline;
}

a:hover,
a:focus {
    color: #1D1D1D;
    text-decoration: none;
}

/* Header */
.iw-sticky .iw_header {
    background-color: transparent;
}

.iw_header.inside_grid .iw_header_content_area {
    background-color: #FFFFFF;
    padding-right: 20px;
    display: none;
    opacity: 0;
    transition: visibility 0s, opacity 0.3s linear;
}

.iw_header .iw_header_content_area .iw_navigation {
    padding-top: 17px;
}

/* Main Menu */
.iw_header .iw_header_content_area .iw_navigation ul > li.top-level-menu-item:first-child {
    padding: 0 20px 0 0;
}

.iw_header .iw_header_content_area .iw_navigation ul > li.top-level-menu-item {
    padding: 0 20px;
}

.iw_header .iw_header_content_area .iw_navigation ul > li.top-level-menu-item:last-child {
    padding: 0 0 0 20px;
}

.iw_header .iw_header_content_area .iw_navigation ul > li.top-level-menu-item a {
    color: #101010;
    font-size: 14px;
    line-height: 22px;
    font-weight: 700;
    letter-spacing: 0.28px;
}

.iw_header .iw_header_content_area .iw_navigation ul > li.top-level-menu-item > a:hover,
.iw_header .iw_header_content_area .iw_navigation ul > li.top-level-menu-item > a:focus,
.iw_header .iw_header_content_area .iw_navigation ul > li.top-level-menu-item.active > a,
.iw_header .iw_header_content_area .iw_navigation ul > li.top-level-menu-item.active-parent > a {
    color: #ab88b8 !important;
}

.iw_header .iw_header_content_area .iw_socnws_widget {
    padding-left: 20px;
    padding-top: 16px;
}

.iw-body-widgets-wrapper .iw_mobile_navigation_buttons button.iw_mobile_navigation_button {
    background: #ab88b8;
}

.iw-body-widgets-wrapper .iw_mobile_navigation_buttons button.iw_mobile_navigation_button svg {
    fill: #fff;
}

.iw_mobile_navigation {
    background: #ab88b8;
}

.iw_mobile_navigation .iw_navigation ul {
    padding: 141px 30px 30px 30px;
    text-align: center
}

.iw_mobile_navigation .iw_navigation ul > li.top-level-menu-item:first-child,
.iw_mobile_navigation .iw_navigation ul > li.top-level-menu-item,
.iw_mobile_navigation .iw_navigation ul > li.top-level-menu-item:last-child {
    padding: 15px
}

.iw_mobile_navigation .iw_navigation ul > li.top-level-menu-item a {
    font-size: 14px;
    line-height: 22px;
    font-weight: 700;
    letter-spacing: 0.28px;
    color: #FFFFFF;
}

.iw_mobile_navigation .iw_navigation ul > li.top-level-menu-item > a:hover,
.iw_mobile_navigation .iw_navigation ul > li.top-level-menu-item > a:focus,
.iw_mobile_navigation .iw_navigation ul > li.top-level-menu-item.active > a,
.iw_mobile_navigation .iw_navigation ul > li.top-level-menu-item.active-parent > a {
    color: #101010;
}

/* Footer - Info Area */
.iw_footer {
    z-index: -1;
}

.iw_footer .iw_footer_info_area .iw_footer_info_area_block_wrapper.iw_flex_grid {
    justify-content: center;
}

.iw_footer .iw_footer_info_area .iw-footer-info-area-widgets-wrapper.left {
    flex-direction: column;
}

.iw_footer .iw_footer_info_area {
    font-size: 16px;
    line-height: 26px;
    font-weight: 400;
    color: #101010;
    padding: 20px 40px;
}

.iw_footer .iw_footer_info_area .iw_tal_wrapper {
    display: none;
}

.iw_footer .iw_footer_info_area .iw_navigation ul {
    justify-content: center;
}

.iw_footer .iw_footer_info_area .iw_navigation ul > li.top-level-menu-item {
    padding: 0 15px 15px 15px;
}

.iw_footer .iw_footer_info_area .iw_navigation ul > li.top-level-menu-item a {
    font-size: 16px;
    line-height: 26px;
    font-weight: 400;
    color: #101010;
    display: inline-block;
}

.iw_footer .iw_footer_info_area .iw_navigation ul > li.top-level-menu-item > a:hover,
.iw_footer .iw_footer_info_area .iw_navigation ul > li.top-level-menu-item > a:focus,
.iw_footer .iw_footer_info_area .iw_navigation ul > li.top-level-menu-item.active > a,
.iw_footer .iw_footer_info_area .iw_navigation ul > li.top-level-menu-item.active-parent > a {
    color: #ab88b8;
    text-decoration: none;
}

.iw_footer .iw_footer_info_area .iw_core_theme_copyright_text_widget {
    text-align: center;
}

/* CUSTOM - VC Standard Button */
.iw_wbs_button button,
.iw_contact_form input.wpcf7-submit {
    font-weight: 600;
    font-size: 16px;
    line-height: 26px;
    letter-spacing: 0.4px;
    text-transform: uppercase;
    padding: 14px 40px 10px 40px;
    background-color: #ab88b8;
    cursor: pointer;
    color: #FFFFFF;
    border: 2px solid #ab88b8;
    width: inherit;
    -webkit-appearance: none;
    -moz-appearance: none;
    border-radius: 0;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
}

.iw_wbs_button button:hover,
.iw_contact_form input.wpcf7-submit:hover {
    background-color: #FFFFFF;
    border: 2px solid #ab88b8;
    color: #ab88b8;
}

.iw_wbs_button.disabled button,
.iw_wbs_button.disabled button:hover,
.iw_contact_form input.wpcf7-submit:hover:disabled,
.iw_contact_form input.wpcf7-submit:disabled {
    -webkit-transition: none;
    -o-transition: none;
    transition: none;
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
    -webkit-box-shadow: none;
    box-shadow: none;
    background: #DEDEDE;
    cursor: not-allowed;
}

/* CF7 Styling */
.iw_contact_form {
    padding-bottom: 25px;
}

.iw_contact_form .standard_row {
    padding: 0;
}

.iw_contact_form .content-element.half {
    margin-top: -5px;
}

.iw_contact_form .content-element.half.left {
    padding: 0 15px 0 0;
}

.iw_contact_form .content-element.half.right {
    padding: 0 0 0 15px;
}

.iw_contact_form .standard_row_headline,
.iw_contact_form .content-note {
    font-size: 14px;
    line-height: 22px;
    color: #101010;
}

.iw_contact_form .standard_row_headline {
    padding: 25px 0 0 0;
}

.iw_contact_form .content-note {
    padding: 20px 0 0 0;
}

/* Style for fields */
.iw_contact_form input,
.iw_contact_form textarea,
.iw_contact_form .iw-cf7-file span::after,
.iw_contact_form .iw-custom-select .option,
.iw_contact_form .iw-custom-select .select-field,
.iw_contact_form .iw-custom-select .option-wrapper {
    font-size: 14px;
    line-height: 22px;
    font-weight: 500;
    color: #101010;
    border: 2px solid #ab88b8;
    border-radius: 0;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    background-color: #FFFFFF;
    padding: 16px 20px 15px 20px;
}

/* Placeholder, all colors should be the same */
.iw_contact_form input::-webkit-input-placeholder,
.iw_contact_form textarea::-webkit-input-placeholder {
    color: #101010;
}

.iw_contact_form input::-moz-placeholder,
.iw_contact_form textarea::-moz-placeholder {
    color: #101010;
}

.iw_contact_form input:-ms-input-placeholder,
.iw_contact_form textarea:-ms-input-placeholder {
    color: #101010;
}

.iw_contact_form input::-ms-input-placeholder,
.iw_contact_form textarea::-ms-input-placeholder {
    color: #101010;
}

.iw_contact_form input::-webkit-input-placeholder, .iw_contact_form textarea::-webkit-input-placeholder {
    color: #101010;
}

.iw_contact_form input::-moz-placeholder, .iw_contact_form textarea::-moz-placeholder {
    color: #101010;
}

.iw_contact_form input:-ms-input-placeholder, .iw_contact_form textarea:-ms-input-placeholder {
    color: #101010;
}

.iw_contact_form input::-ms-input-placeholder, .iw_contact_form textarea::-ms-input-placeholder {
    color: #101010;
}

.iw_contact_form input::placeholder,
.iw_contact_form textarea::placeholder {
    color: #101010;
}

.iw_contact_form textarea {
    height: 100px;
}

/* Styles for acceptance_row */
.iw_contact_form .acceptance_row {
    padding: 25px 0 0 0;
    margin: 0 0 0 30px;
}

.iw_contact_form .acceptance_row a {
    color: #101010;
    text-decoration: underline;
}

.iw_contact_form .acceptance_row a:hover {
    text-decoration: none;
}

.iw_contact_form .acceptance_row label {
    font-size: 14px;
    line-height: 22px;
    font-weight: 400;
    color: #101010;
}

.iw_contact_form .acceptance_row input[type=checkbox] + span::before,
.iw_contact_form .checkbox-element input[type="radio"] + span::before {
    width: 18px;
    height: 18px;
    background-color: #FFFFFF;
    display: block;
    content: "";
    float: left;
    border: 2px solid #ab88b8;
    border-radius: 0;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    -webkit-appearance: none;
    -moz-appearance: none;
    margin: 6px 10px 0 -30px;
}

.iw_contact_form .acceptance_row input[type=checkbox]:checked + span::before {
    background-color: #ab88b8;
    border: 2px solid #ab88b8;
}

/* Style for Submit Area */
.iw_contact_form .submit_row {
    padding: 25px 0 0 0;
    text-align: left;
}

.iw_contact_form .wpcf7-not-valid-tip {
    color: #dc3232;
    font-size: 1em;
    font-weight: normal;
    display: block;
    padding: 5px 0 0 5px;
}

.iw_cct_footer_svg {
    width: 250px;
    margin: 0 auto;
    padding-bottom: 50px;
}

.iw_cost_calculator {
    background: #FFFFFF;
}

.iw-tech-agency-legal p {
    margin: 0;
}

@media screen and (max-width: 768px) {

    h1,
    .lookalike-h1 {
        font-size: 36px;
        line-height: 58px;
    }

    h2,
    .lookalike-h2,
    .iw-tal-headline {
        font-size: 26px;
        line-height: 42px;
    }

    h3,
    .lookalike-h3 {
        font-size: 22px;
        line-height: 35px;
    }

    h4,
    .lookalike-h4 {
        font-size: 20px;
        line-height: 32px;
    }

}

@media screen and (max-width: 520px) {

    h1,
    .lookalike-h1 {
        font-size: 30px;
        line-height: 48px;
    }

    h2,
    .lookalike-h2,
    .iw-tal-headline {
        font-size: 24px;
        line-height: 38px;
    }

    h3,
    .lookalike-h3 {
        font-size: 20px;
        line-height: 32px;
    }

    h4,
    .lookalike-h4 {
        font-size: 18px;
        line-height: 28px;
    }

    h5,
    .lookalike-h5 {
        font-size: 16px;
        line-height: 26px;
    }

}
