/*
 Theme Name: Twenty Twenty Child
 Description: Twenty Twenty Child Theme
 Author: Maria Lagergren   
 Template: twentytwenty
 Version: 1.0.0
 License: GNU General Public License v2 or later
 License URI: http://www.gnu.org/licenses/gpl-2.0.html         
 Text Domain: twentytwentychild
*/

body {
color: #333;
letter-spacing: normal;
font-weight: 400;
}

b, strong {
    font-weight: 500;
}

h1.entry-title, h2.entry-title {
text-align: left;
}

.page-template-default .header-footer-group .entry-header-inner {
max-width: 58rem;
}

.site-logo img {
max-height: 100%;
display: inline-block;
}

.widget_text p, .widget_text ol, .widget_text ul, .widget_text dl, .widget_text dt, .widget-content .rssSummary, .entry-content h5, .entry-content h6 {
font-family: Manrope, sans-serif;
}

.entry-content h4, h4 {
font-family: Caveat, sans-serif;
}

.site-description {
color: #02acc3;
font-weight: 400;
font-size: 2.3rem;
letter-spacing: 0.6px;
display: block;
}

ul.primary-menu {
font-weight: 400;
font-size: 2.3rem;
letter-spacing: 0.6px;
}

body:not(.overlay-header) .primary-menu > li > .icon, .modal-menu a, #site-footer .wp-block-button.is-style-outline, .wp-block-pullquote::before, .singular:not(.overlay-header) .entry-header a, .archive-header a, .header-footer-group .color-accent, .header-footer-group .color-accent-hover:hover, .color-accent, .color-accent-hover:hover, .color-accent-hover:focus, :root .has-accent-color, .has-drop-cap:not(:focus)::first-letter, a {
color: #02acc3 !important;
}

body:not(.overlay-header) .primary-menu > li > a {
color: #333 !important;
}

h1, h2, h3 {
color: #02acc3;
}

a:hover, a:active, a:focus, .entry-content a:hover, .entry-content a:active, .entry-content a:focus {
color: #efbf24 !important;
text-decoration: underline;
}

.menu-footer-menu-container .menu-item a {
font-family: Manrope, sans-serif !important;
}

.footer-widgets a {
color: #333 !important;
}

.header-titles-wrapper {
display: block;
padding: 0;
}

.header-inner .nav-toggle {
display: block;
position: relative;
width: 100%;
}

body:not(.enable-search-modal) .header-titles-wrapper {
text-align: center;
}

.header-inner {
border-bottom: 1px solid #ccc;
padding-bottom:  3.9rem;
}

.header-titles {
padding-bottom: 12px;
}

h1, h2, h3, h4, h5, h6, .faux-heading {
font-weight: 400;
letter-spacing: 0.5px;
}

.wp-block-button.is-style-outline a {
color: #efbf24 !important;
border: 2px solid #efbf24;
font-weight: 400;
text-transform: none;
font-family: Caveat, sans-serif;
padding: 12px 60px;
font-size: 2.2rem;
background-color: #fff !important;
}

.is-style-outline .wp-block-button__link {
    padding: 16px 46px;
}

.wp-block-buttons {
margin-top: 2rem;
}

ul.ohne {
list-style: none;
margin-left: 0;
}

.widget-content {
font-size: 1.8rem;
}

.footer-widgets .heading-size-3 {
font-family: Manrope, sans-serif;
font-size: 1.8rem;
margin-bottom: 1rem;
}

.reduced-spacing.footer-top-visible .footer-nav-widgets-wrapper, .reduced-spacing.footer-top-hidden #site-footer {
    border-top-width: 0;
    text-align: center;
}

.footer-nav-widgets-wrapper .footer-inner {
border-top: 1px solid #ccc;
}

.widget li {
    margin: 0;
}

.widget_nav_menu .menu-footer-menu-container a {
font-weight: 200;
font-size: 1.6rem;
}

.footer-widgets a {
font-weight: 400;
text-decoration: none;
}

.footer-widgets-outer-wrapper {
border-bottom: none;
}

#site-footer {
background-color: #eee;
}

.footer-copyright {
font-weight: 200;
}

#site-footer a {
    color: #333 !important;
}

.trennelement, .trennelement:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):not(.aligncenter) {
margin-top: 8rem;
margin-bottom: 8rem;
}

.box {
border: 2px solid #02acc3;
padding: 1rem;
max-width: 504px;
margin-right: auto;
margin-left: auto;
}

body.template-full-width .entry-content > .box:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):not(.is-style-wide) {
max-width: 504px;
}

.box .wp-block-group__inner-container {
background-color: rgba(2,172,195,0.05);
padding: 3rem 3rem 5rem;
text-align: center;
}

.box h3 {
padding-bottom: 2rem;
border-bottom: 1px solid #02acc3;
font-size: 3.2rem;
}

.box h4, .entry-content .wp-block-columns .box h4 {
font-size: 1.8rem;
font-weight: 500;
margin-bottom: 1rem;
}

.box .wp-block-button {
margin-top: 2rem;
}

.aligncenter .wp-block-button, .box  .wp-block-button {
margin-right: 0;
}

.preise h3 {
border-bottom: none;
padding-bottom: 0;
line-height: 1.1;
}

.entry-content .wp-block-columns .preise h4 {
margin-top: 2.5rem;
}

.preise .wp-block-group__inner-container {
padding-bottom: 3rem;
}

.box .wp-block-buttons {
margin-top: 1rem;
}

.kontakt a {
color: #333 !important;
text-decoration: none;
}

.entry-content .box h4, .box h4 {
font-family: Manrope, sans-serif;
}

.primary-menu-wrapper, .header-inner, .header-titles, .custom-logo {
transition: all 0.15s linear;
}

.to-the-top .arrow {
display: inline-block;
padding: 7px 16px;
border: 2px solid #efbf24;
color: #efbf24;
background-color: #fff;
font-size: 2.5rem;
}

.wp-block-button.is-style-outline a:hover, .wp-block-button.is-style-outline a:active, .wp-block-button.is-style-outline a:focus, .to-the-top:hover .arrow, .to-the-top:active .arrow, .to-the-top:focus .arrow {
border-color: #02acc3;
background-color: #02acc3 !important;
color: #fff !important;
text-decoration: none;
}

.primary-menu a:hover, .primary-menu a:focus, body:not(.overlay-header) .primary-menu > li > a:hover, body:not(.overlay-header) .primary-menu > li > a:focus {
color: #02acc3 !important;
}

.mobile-hide {
display: none;
}

.site-logo img {
max-width: 207px;
}

.mobile-logo {
display: none;
}

.primary-menu li.current-menu-item > a, .primary-menu li.current-menu-item > .link-icon-wrapper > a, .primary-menu a:hover, .primary-menu a:focus, .primary-menu .current_page_ancestor {
    text-decoration: none;
}

.cc-revoke, .cc-window {
font-family: Manrope, sans-serif !important;
font-weight: 400;
}

#cc-window a.cc-btn {
border-radius: 0;
}

#cc-window.cc-window .cc-compliance .cc-btn:hover, #cc-window.cc-window .cc-compliance .cc-btn:focus, #cc-window.cc-window .cc-compliance .cc-btn:active {
background-color: #02acc3 !important;
border-color: #02acc3 !important;
color: #fff !important;
text-decoration: none !important;
outline: none;
}

.scroll-site-title {
display: none;
}

#cc-window .cc-message {
font-size: 1.5rem;
max-width: 633px;
}

.cc-window.cc-banner {
border-top: 1px solid #ccc;
}

.paoc-popup-modal h1, .paoc-popup-modal h2, .paoc-popup-modal h3, .paoc-popup-modal h4, .paoc-popup-modal h5, .paoc-popup-modal h6 {
margin-top: 2.5rem;
margin-bottom: 1rem;
}

.paoc-popup-modal h1:first-child, .paoc-popup-modal h2:first-child, .paoc-popup-modal h3:first-child, .paoc-popup-modal h4:first-child, .paoc-popup-modal h5:first-child, .paoc-popup-modal h6:first-child {
margin-top: 0;
}

.paoc-popup-modal h5, .paoc-popup-modal h6 {
font-family: Manrope, sans-serif;
font-weight: 700;
font-size: 1.8rem;
}

.paoc-popup-modal-cnt {
padding-bottom: 34px;
}

.popupaoc-link {
font-weight: 700;
text-decoration: underline !important;
}

/* ------------------------------- START RESPONSIVE DESIGN ------------------------------ */


@media ( max-width: 782px ) {

.site-description {
font-size: 3rem;
}

}

@media ( max-width: 999px ) { /*  Toggle Menu endet hier */

button.mobile-nav-toggle, body:not(.overlay-header) #site-header .mobile-nav-toggle {
font-size: 3rem;
color: #efbf24;
}

.mobile-nav-toggle .toggle-inner {
height: 100%;
}

.mobile-nav-toggle .toggle-icon {
height: 100%;
border: 2px solid #efbf24;
padding: 6px 12px;
width: auto;
}

.mobile-nav-toggle .toggle-icon:hover, .mobile-nav-toggle .toggle-icon:focus, .mobile-nav-toggle .toggle-icon:active {
background-color: #02acc3;
border-color: #02acc3;
color: #fff;
}

.showing-menu-modal .header-inner {
border-bottom: none;
}

.modal-menu > li > a, .modal-menu > li > .ancestor-wrapper > a,  .modal-menu .menu-item a {
letter-spacing: normal;
font-family: Manrope, sans-serif;
}

.menu-modal .close-nav-toggle {
color: #efbf24;
box-shadow: none;
padding: 2.1rem 0;
}

.menu-modal .close-nav-toggle:visited, .menu-modal .close-nav-toggle:focus {
box-shadow: none;
outline: unset;
outline-offset: unset;
}

.menu-modal button.close-nav-toggle svg {
height: 4.6rem;
width: 4.6rem;
border: 2px solid #efbf24;
padding: 10px;
}

.menu-modal button.close-nav-toggle svg:hover, .menu-modal button.close-nav-toggle svg:active, .menu-modal button.close-nav-toggle svg:focus {
border-color: #02acc3;
background-color: #02acc3;
color: #fff;
}

.site-logo {
display: none;
}

.mobile-logo {
display: block;
}

button.mobile-nav-toggle:visited, button.mobile-nav-toggle:focus, button.mobile-nav-toggle:active {
border: none;
box-shadow: none;
outline: none;
}

.cc-window.cc-banner {
-ms-flex-direction: column !important;
flex-direction: column !important;
-ms-flex-align: unset !important;
align-items: unset !important;
}

.cc-window.cc-banner .cc-message {
margin-right: 0 !important;
margin-bottom: 1em !important;
}

} /* End max-width: 999px */

@media ( min-width: 600px ) {

.ueber-mich .wp-block-image:first-child, .ueber-mich .wp-block-image:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):not(.aligncenter):first-child {
margin-top: 0;
}

.ueber-mich .zwei-bilder .wp-block-image {
width: 49%;
float: left;
}

.ueber-mich .zwei-bilder .wp-block-image:last-child, .ueber-mich .zwei-bilder .wp-block-image:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):not(.aligncenter):last-child {
float: right;
margin-top: 0;
}

.entry-content .ueber-mich h3 {
margin-bottom: 1rem;
}

} /* End min-width: 600px */

@media ( min-width: 600px ) and ( max-width: 699px ) {

.welcome h2:first-child {
margin-top: 2.1rem;
}

} /* End min-width: 600px and max-width: 699px */

@media ( min-width: 600px ) and ( max-width: 781px ) {

.angebot .wp-block-column {
    flex-basis: calc(100%) !important;
}

.angebot  .wp-block-column:nth-child(2n) {
    margin-left: 0;
}
} /* End min-width: 600px and max-width: 781px */

@media ( min-width: 700px ) {

.entry-content .wp-block-column h3:first-child, .entry-content .wp-block-column h2:first-child, .entry-content .wp-block-column h4:first-child {
margin-top: 0;
}

.header-inner .nav-toggle {
right: 0;
}

.entry-content {
    font-size: 1.8rem;
}

.reduced-spacing.footer-top-visible .footer-nav-widgets-wrapper, .reduced-spacing.footer-top-hidden #site-footer {
text-align: left;
}

.menu-footer-menu-container {
text-align: right;
}

.footer-widgets-outer-wrapper {
    padding: 4rem 0;
}

#site-footer {
    font-size: 1.6rem;
}

.entry-content .wp-block-columns .box h3 {
margin-top: 0.5rem;
}

.box h3 {
font-size: 4rem;
}

.preise h3 {
font-size: 3.5rem;
}

.entry-content .welcome .wp-block-column h2:first-child {
margin-top: 3.5rem;
}

.ueber-mich p:last-child {
margin-bottom: 4rem;
}

} /* End min-width: 700px */

@media ( min-width: 782px ) {

.angebot {
display: block;
}

.angebot .wp-block-column:not(:first-child) {
    margin-left: 0;
}

}

@media ( min-width: 783px ) { /* Logo linksbuendig */

.site-logo {
float: left;
}

.header-inner {
padding-top: 2.5rem;
padding-bottom: 2.2rem;
}

.site-description {
width: 470px;
float: left;
margin-top: 4.9rem;
}

.header-titles-wrapper {
overflow: hidden;
}

.header-inner .nav-toggle {
display: flex;
position: absolute;
width: 5.5rem;
right: 2.3rem;
}

.trennelement, .trennelement:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):not(.aligncenter) {
margin-top: 10rem;
margin-bottom: 10rem;
}

.mobile-nav-toggle .toggle-icon {
height: 54px;
}

.header-inner .mobile-nav-toggle {
padding: 1rem 0 0;
}

.mobile-hide {
display: block;
}

.bild-reihe .wp-block-image, .bild-reihe [class*="__inner-container"] > :not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright) {
    width: 26.4%;
    float: left;
    margin-right: 2%;
}

.bild-reihe .wp-block-image:last-child, .bild-reihe [class*="__inner-container"] > :not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):last-child {
margin-right: 0;
}

.bild-reihe .bild-hoch, .bild-reihe [class*="__inner-container"] > .bild-hoch:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright) {
width: 14.8%;
}

.bild-reihe .wp-block-image:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):not(.aligncenter), .bild-reihe .wp-block-image {
margin-bottom: 6rem;
}

} /* End min-width: 783px */

@media ( min-width: 1000px ) {  /* Main Navigation Menu ist da */

.header-titles .site-description {
margin-left: 2.4rem;
text-align: left;
width: 235px;
}

.header-titles-wrapper {
    margin-right: 0;
   }
   
.header-titles-wrapper {
max-width: 60%;
}

.primary-menu-wrapper {
padding-top: 17px;
}

.header-inner {
padding-bottom: 0.5rem;
}

.header-titles .site-logo {
margin-left: 2.2rem;
}

.angebot {
    display: flex;
}

.angebot .wp-block-column:not(:first-child) {
    margin-left: 32px;
}

.angebot .box {
width: 444px;
}

.entry-content .wp-block-columns .mein-angebot h4 {
margin-top: 4.5rem;
}

.mein-angebot .wp-block-group__inner-container {
padding-bottom: 5.6rem;
}

.sticky-styles {
box-shadow: 0px 0px 8px 0px rgba(0, 0, 0, 0.2);
}

.sticky-styles .header-inner {
padding-top: 1rem;
padding-bottom: 0;
border-bottom: none;
}

.sticky-styles .header-titles {
    padding-bottom: 0.7rem;
}

.sticky-styles .custom-logo {
max-width: 140px;
}

.bild-reihe .wp-block-image, .bild-reihe [class*="__inner-container"] > :not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright) {
    width: 25.28%;
    margin-right: 3.3%;
}

.bild-reihe .wp-block-image:last-child, .bild-reihe [class*="__inner-container"] > :not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):last-child {
margin-right: 0;
}

.bild-reihe .bild-hoch, .bild-reihe [class*="__inner-container"] > .bild-hoch:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright) {
width: 14.25%;
}

.bild-reihe .wp-block-image:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):not(.aligncenter), .bild-reihe .wp-block-image {
margin-bottom: 10rem;
}

.bild-reihe-2, .bild-reihe-2:not(.has-background):not(.alignwide):not(.alignfull) {
margin-top: 12rem;
}

.sticky-styles .site-logo {
display: none;
}

.sticky-styles .scroll-site-title {
display: block;
font-family: Caveat, sans-serif;
font-size: 3rem;
margin-top: 3.7rem;
}

.sticky-styles .scroll-site-title a {
text-decoration: none;
}

.sticky-styles .scroll-site-title a:hover {
text-decoration: none;
}

.sticky-styles .primary-menu-wrapper {
    padding-top: 21px;
}

} /* End min-width: 1000px */

@media ( min-width: 1140px ) {  /* Subline auf einer Zeile im Header */

.header-titles-wrapper {
    max-width: 65%;
}

.header-titles .site-description {
width: 413px;
margin-top: 3.9rem;
}

.header-footer-group .section-inner, body.template-full-width .entry-content > :not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):not(.is-style-wide) {
max-width: 1200px;
}

.entry-content .welcome .wp-block-column:first-child {
flex-basis: 36.33% !important;
margin-left: 20px;
}

.entry-content .welcome .wp-block-column:last-child {
flex-basis: 54.66% !important;
margin-left: 60px;
}

.entry-content .wp-block-columns h1, .entry-content .wp-block-columns h2, .entry-content .wp-block-columns h3, .entry-content .wp-block-columns h4, .entry-content .wp-block-columns h5, .entry-content .wp-block-columns h6 {
margin: 5rem 0 3rem;
}

.wp-block-buttons {
    margin-top: 4rem;
}

.trennelement, .trennelement:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):not(.aligncenter) {
margin-top: 14rem;
margin-bottom: 14rem;
}

.angebot .box {
    width: 504px;
}

.entry-content .wp-block-columns .mein-angebot h4 {
    margin-top: 5.5rem;
}

.mein-angebot .wp-block-group__inner-container {
    padding-bottom: 6.2rem;
}

.ueber-mich .wp-block-column:first-child {
flex-basis: 41.33% !important;
}

.entry-content .ueber-mich h3 {
margin-bottom: 1rem;
}

.page-template-default .header-footer-group .entry-header-inner {
max-width: 58rem;
}

.sticky-styles .header-titles .site-description {
    margin-top: 2.4rem;
}

.sticky-styles .primary-menu-wrapper {
    padding-top: 5px;
}

.sticky-styles .scroll-site-title {
margin-top: 2.3rem;
}

.sticky-styles .header-titles {
    padding-bottom: 0.9rem;
}

} /* End min-width: 1140px */

@media ( min-width: 1220px ) {

.entry-content .wp-block-column p {
text-align: justify;
}

.entry-content .wp-block-column:not(:first-child) {
    margin-left: 62px;
}

.primary-menu > li {
margin-left: 4.5rem;
}

.wp-block-columns:not(.alignwide):not(.alignfull), .wp-block-columns {
margin-top: 6rem;
}

.entry-content .welcome .wp-block-column:first-child {
margin-left: 35px;
}

.entry-content .welcome .wp-block-column:last-child {
flex-basis: 49.66% !important;
margin-left: 98px;
}

.entry-content .wp-block-column .box p {
text-align: center;
}

.ueber-mich-2 .wp-block-column:last-child {
padding-top: 4rem;
}

.bild-reihe + div {
clear: both;
}

}

@media ( min-width: 1800px ) {

.cc-banner.cc-bottom {
max-width: 1800px;
margin-left: auto;
margin-right: auto;
border-right: 1px solid #ccc;
border-left: 1px solid #ccc;
}

}