.toggle_search_button {
    position: absolute; right: 4rem;
    top: 1.5rem; font-size: 1.25rem;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    transform: translateY(-50%);
    cursor: pointer;
    z-index: 4000;
}

.topbar .typo_searchform {
    display: none; position: absolute; padding: 0.5rem 1.625rem;
    top: 3.5rem; left: -1.625rem; right: -1.625rem; width: auto;
    background-color: #891610; color: #FFFFFF;
}
.topbar.active .typo_searchform {
    display: block;
}
.topbar .typo_searchform.extra_gab {
    top: 6rem;
}

.topbar .typo_searchform .searchform {
    font-size: 0; position: relative;
    max-width: 50rem; margin: 0 0 0 auto;
    text-align: left; z-index: 20;
}
.topbar .typo_searchform .searchform .search_text {
    font-size: 1rem; vertical-align: top;
    display: inline-block; width: 70%;
}
.topbar .typo_searchform .searchform .search_button {
    font-size: 1rem; vertical-align: top;
    display: inline-block; width: 30%;
    position: absolute; top: 0; bottom: 0;
    right: 0;
}


[type="color"], [type="date"], [type="datetime-local"], [type="datetime"],
[type="email"], [type="month"], [type="number"], [type="password"],
[type="search"], [type="tel"], [type="text"], [type="time"], [type="url"],
[type="week"], [type="file"], textarea, select {
    margin: 0; padding: 0.5rem 1.625rem;
    line-height: 1.2; border-radius: 0;
    border: 1px solid #FFFFFF; outline: none;
    box-shadow: none;
}
[type="color"]:hover, [type="date"]:hover, [type="datetime-local"]:hover, [type="datetime"]:hover,
[type="email"]:hover, [type="month"]:hover, [type="number"]:hover, [type="password"]:hover,
[type="search"]:hover, [type="tel"]:hover, [type="text"]:hover, [type="time"]:hover,
[type="url"]:hover, [type="week"]:hover, [type="file"]:hover,
textarea:hover, select:hover {
    border: 1px solid #FFFFFF;
}
[type="color"]:focus, [type="date"]:focus, [type="datetime-local"]:focus, [type="datetime"]:focus,
[type="email"]:focus, [type="month"]:focus, [type="number"]:focus, [type="password"]:focus,
[type="search"]:focus, [type="tel"]:focus, [type="text"]:focus, [type="time"]:focus,
[type="url"]:focus, [type="week"]:focus, [type="file"]:focus,
textarea:focus, select:focus {
    border: 1px solid #FFFFFF;
    background-color: #FFFFFF;
    box-shadow: none;
}

.topbar .typo_searchform .searchform .search_button input[type="submit"] {
    position: absolute; left: 0; right: 0; top:0; bottom: 0;
    text-align: center; border: 1px solid #FFFFFF; outline: none;
    background-color: transparent; width: 100%;
}



.wpcf7 input,
.wpcf7 textarea,
.wpcf7 select{
	margin-bottom: 0.5rem;	
}

.red_bg .wpcf7 .typo_cf_acceptance {
	margin-bottom: 1rem;
}
.red_bg .wpcf7 .typo_cf_acceptance label {
	color: #FFFFFF;
}
.red_bg .wpcf7 .typo_cf_acceptance a {
	color: inherit;
}

@media screen and (min-width: 40em) {
    /****************************************************************************
     * Searchform
     ****************************************************************************/
    .topbar .typo_searchform {
        padding: 0.75rem 0;
        left: 0; right: 0;
        z-index: 20;
    }
    .topbar .typo_searchform:after {
        content: ''; position: absolute;
        top: 0; bottom: 0; left: -999rem; right: -999rem;
        background-color: #891610; z-index: 0;
    }
}


@media screen and (min-width: 40em) {
    /****************************************************************************
     * Searchform
     ****************************************************************************/
    .toggle_search_button {
        right: 5.5rem; top: 1.5rem;
    }
}