/*
 Theme Name:     DWR
 Theme URI:      https://dankwart-rauscher.de/
 Description:    DWR Child Theme
 Author:         FRazil
 Author URI:     https://kreativkombinat.de/
 Template:       Divi
 Version:        1.0.0
*/



/* =Theme customization starts here
------------------------------------------------------- */

/* Fonts */

/* montserrat-100 - latin */
@font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 100;
    src: url('fonts/montserrat-v26-latin-100.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
  }
  
  /* montserrat-100italic - latin */
  @font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Montserrat';
    font-style: italic;
    font-weight: 100;
    src: url('fonts/montserrat-v26-latin-100italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
  }
  
  /* montserrat-200 - latin */
  @font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 200;
    src: url('fonts/montserrat-v26-latin-200.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
  }
  
  /* montserrat-200italic - latin */
  @font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Montserrat';
    font-style: italic;
    font-weight: 200;
    src: url('fonts/montserrat-v26-latin-200italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
  }
  
  /* montserrat-300 - latin */
  @font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 300;
    src: url('fonts/montserrat-v26-latin-300.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
  }
  
  /* montserrat-300italic - latin */
  @font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Montserrat';
    font-style: italic;
    font-weight: 300;
    src: url('fonts/montserrat-v26-latin-300italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
  }
  
  /* montserrat-regular - latin */
  @font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 400;
    src: url('fonts/montserrat-v26-latin-regular.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
  }
  
  /* montserrat-italic - latin */
  @font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Montserrat';
    font-style: italic;
    font-weight: 400;
    src: url('fonts/montserrat-v26-latin-italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
  }
  
  /* montserrat-500 - latin */
  @font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 500;
    src: url('fonts/montserrat-v26-latin-500.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
  }
  
  /* montserrat-500italic - latin */
  @font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Montserrat';
    font-style: italic;
    font-weight: 500;
    src: url('fonts/montserrat-v26-latin-500italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
  }
  
  /* montserrat-600 - latin */
  @font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 600;
    src: url('fonts/montserrat-v26-latin-600.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
  }
  
  /* montserrat-600italic - latin */
  @font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Montserrat';
    font-style: italic;
    font-weight: 600;
    src: url('fonts/montserrat-v26-latin-600italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
  }
  
  /* montserrat-700 - latin */
  @font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 700;
    src: url('fonts/montserrat-v26-latin-700.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
  }
  
  /* montserrat-700italic - latin */
  @font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Montserrat';
    font-style: italic;
    font-weight: 700;
    src: url('fonts/montserrat-v26-latin-700italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
  }
  
  /* montserrat-800 - latin */
  @font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 800;
    src: url('fonts/montserrat-v26-latin-800.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
  }
  
  /* montserrat-800italic - latin */
  @font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Montserrat';
    font-style: italic;
    font-weight: 800;
    src: url('fonts/montserrat-v26-latin-800italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
  }
  
  /* montserrat-900 - latin */
  @font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 900;
    src: url('fonts/montserrat-v26-latin-900.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
  }
  
  /* montserrat-900italic - latin */
  @font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Montserrat';
    font-style: italic;
    font-weight: 900;
    src: url('fonts/montserrat-v26-latin-900italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
  }
  

body {
    font-family: 'Montserrat';
	background-color: #ffffff;
	font-size: 16px !important;
	color: #000000;
    line-height: 1.5rem !important;
}

a {
    color: #e99d3a;
}

h1, h2, h3, h4, h5, h6 {
    line-height: normal !important;
    font-weight: 700;
    color: #2c4493 !important;
}

p {
    font-size: 17px !important;
}

.app-primary {
    background-color: #e99d3a !important;
}

@media (min-width: 1080px) {
    .et_pb_row {
        width: 100%;
        max-width: 100%;
    }
}

.container {
    width: 100%;
    max-width: 100%;
    margin: auto;
    position: relative;
}

.et_pb_section {
    background-color: #ffffff;
}

.app-row {
    width: 100% !important;
}

@media (min-width: 1080px) {
    .app-row {
        width: 70% !important;
    }
}



/* Header */

.app-logo {
    margin-top: .5rem !important;
}

.brand {
    width: 100%;
    margin: 0 auto;
    text-align: center;
    overflow: hidden;
}

/* Name bleibt in einer Zeile */

.brand h1 {
    margin: 0;
    color: var(--logo-blue);
    font-family: Georgia, 'Times New Roman', Times, serif;
    font-size: 41px;
    font-weight: 700;
    line-height: 1;
    letter-spacing: clamp(0.015em, 0.35vw, 0.055em);
    white-space: nowrap;
}

/* Leistungsbereiche bleiben ebenfalls in einer Zeile */

.services {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: clamp(0.55rem, 1.95vw, 2.1rem);
    margin-top: clamp(1.6rem, 3.5vw, 3.4rem);
    margin-bottom: 1rem;
    margin-top: 1rem !important;
    color: var(--text-color);
    font-family: "Oswald", "Arial Narrow", Arial, sans-serif;
    font-size: 2rem;
    font-weight: 500;
    line-height: 1;
    letter-spacing: clamp(0.035em, 0.5vw, 0.1em);
    white-space: nowrap;
}

.divider {
    font-family: Arial, Helvetica, sans-serif;
    font-weight: 300;
    etter-spacing: 0;
}

/* Kleine Smartphones */

@media (max-width: 480px) {

body {
    padding-inline: 8px;
}
.brand h1 {
    font-size: 18px;
    letter-spacing: 0.005em;
}

.services {
    gap: 0.28rem;
    margin-top: 0 !important;
    font-size: clamp(1.15rem, 3.15vw, 0.78rem);
    letter-spacing: 0.015em;
    }
}

/* Menu */

/* ===================================================
   Hauptnavigation
=================================================== */


.et_pb_menu .et_pb_menu__menu {
    width: 100% !important;
}

.et-menu-nav {
    width: 100% !important;
    padding: 0;
    border-top: 2px solid #444;
    border-bottom: 2px solid #444;
}

/* Standard-Divi überschreiben */
.et-menu-nav ul.et-menu {
    display: flex !important;
    justify-content: space-evenly !important;
    align-items: center;
    width: 100% !important;
    margin: 0;
    padding: 0;
    list-style: none;
}

.et-menu-nav ul.et-menu li {
    float: none !important;
    margin: 0;
    padding: 0;
}

.et-menu-nav ul.et-menu li a {
    font-family: "Oswald", "Arial Narrow", Arial, sans-serif !important;
    display: block;
    color: #666 !important;
    text-decoration: none;
    font-size: 1.3rem;
    font-weight: 600;

    letter-spacing: .03em;
    line-height: 1;

    transition: color .25s ease;
}

/* Hover & aktiver Menüpunkt */
.et-menu-nav ul.et-menu li a:hover,
.et-menu-nav ul.et-menu li.current-menu-item > a,
.et-menu-nav ul.et-menu li.current_page_item > a {
    color: #222;
}


/* ===================================================
   Tablet
=================================================== */

@media (max-width:1200px){

    .et-menu-nav ul.et-menu li a{
        font-size:2.2rem;
    }

}


/* ===================================================
   Kleines Tablet
=================================================== */

@media (max-width:900px){

    .et-menu-nav ul.et-menu{
        flex-wrap:wrap;
        gap:20px;
    }

    .et-menu-nav ul.et-menu li{
        width:45%;
        text-align:center;
    }

    .et-menu-nav ul.et-menu li a{
        font-size:1.8rem;
    }

}


/* ===================================================
   Smartphone
=================================================== */

@media (max-width:600px){

    .et-menu-nav{
        padding:15px 0;
    }

    .et-menu-nav ul.et-menu{
        flex-direction:column;
        gap:16px;
    }

    .et-menu-nav ul.et-menu li{
        width:100%;
        text-align:center;
    }

    .et-menu-nav ul.et-menu li a{
        font-size:1.5rem;
    }

}


/* style mobile fixed header */

.home .mobile_menu_bar::before {
    color: #8b7954 !important;
}

.mobile_menu_bar::before {
    color: #e99d3a !important;
}

.et_pb_menu_0_tb_header.et_pb_menu ul li.current-menu-item a {
    color: #444 !important;
}

.et_pb_menu_0_tb_header.et_pb_menu ul li.current-menu-item a:hover {
    color: #e99d3a !important;
}

/*@media (min-width: 1080px) {
    .et_pb_menu_0_tb_header.et_pb_menu ul li.current-menu-item a {
        color: #ffffff !important;
    }
}*/

/* Content */

.et_pb_slide_content {
    margin-top: 1rem !important;
}

@media (max-width: 767px) {
  .et_pb_slide_image, .et_pb_slide_video {
    display: block !important;
  }
}

p:not(.has-background):last-of-type {
  padding-bottom: 1rem !important;
}


.et_pb_module_header {
    padding-top: 3rem !important
}

.et_pb_module_header::before {
    content:"";
    position:absolute;
    top:0;
    left:0;

    width:60px;
    height:7px;

    background:currentColor;
}

#main-content .et_pb_image a:hover {
    opacity: .6;
}

#main-content {
    margin-top: 0 !important;
}

.et_pb_fullwidth_section .et_pb_title_featured_container {
    width: 100%;
    max-width: 100%;
    margin: auto;
    display: block;
}

.et_pb_fullwidth_section .et_pb_post_title {
    padding: 0 !important;
    margin-top: 10rem;
    background-position: bottom center !important;
}

@media (min-width: 1080px) {
    .et_pb_fullwidth_section .et_pb_post_title {
        padding: 0 !important;
        margin-top: -7rem;
    }
}

.app-site-hero {
    /*background-image: linear-gradient(180deg,rgba(0,0,0,0),#000000 0% 100%) !important;*/
    background-color: #8b7954;
    min-height: 100vh;
}

.app-breadcrumbs {
    display: none;
}

@media (min-width: 768px) {
    .app-breadcrumbs {
        display: block;
        color: #ffffff;
    }
}

.app-breadcrumbs a {
    color: #ffffff;
}

h1.entry-title {
    color: #ffffff;
    font-weight: 700;
    font-size: 2rem;
}

@media (min-width: 768px) {
    h1.entry-title {
        font-size: 3rem;
    }
}

.app-heading {
    margin-top: -40rem !important;
    padding-left: 1rem !important;
    padding-right: 1rem !important;
}

@media (min-width: 810px) {
    .app-heading {
        margin-top: -56% !important;
        padding-top: 2rem !important;
        /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#000000+0,000000+100&0.65+0,0+100;Neutral+Density */
        background: -moz-linear-gradient(top,  rgba(0,0,0,0.65) 0%, rgba(0,0,0,0) 100%); /* FF3.6-15 */
        background: -webkit-linear-gradient(top,  rgba(0,0,0,0.65) 0%,rgba(0,0,0,0) 100%); /* Chrome10-25,Safari5.1-6 */
        background: linear-gradient(to bottom,  rgba(0,0,0,0.65) 0%,rgba(0,0,0,0) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
        filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#a6000000', endColorstr='#00000000',GradientType=0 ); /* IE6-9 */
    }
}

@media (min-width: 1080px) {
    .app-heading {
        margin-top: -56% !important;
        padding-top: 25rem !important;
        min-height: 652px !important;
    }
}

.app-excerpt {
    display: block;
    color: #ffffff;
    font-size: 1rem !important;
    line-height: normal !important;
}

@media (min-width: 810px) {
    .app-excerpt {
        display: block;
        color: #ffffff;
        font-size: 1.3rem !important;
        line-height: normal !important;
    }
}

.et_pb_team_member img {
    width: 100%;
}

.et_pb_team_member_description {
    padding: 2rem;
}

.et_pb_member_social_links {
    padding-left: 0 !important;
    margin-top: 2rem !important;
}

.et_pb_text_1 ul {
    padding: 0 !important;
}

/* Frontpage Extras */

.app-frontpage-link h3 {
    font-size: small !important;
}

.divi-image-hover {
    min-width: 100% !important;
}

@media (min-width: 810px) {
    .divi-image-hover {
        min-width: 270px !important;
    }
}

.image-hover-img {
    width: 100% !important;
}


/* Footer */

.app-footer {
    padding: 2rem 0 !important;
    background-color: #c9c0ad;
}

.app-copyright {
    padding: 2rem 0 !important;
}

address {
    display: block;
    font-style: normal !important;
}

@media only screen and (min-width: 1200px) {
    .wp-image-2063 {
        padding-top: 3rem !important;
    }
    
    .wp-image-1802 {
        padding-top: 2rem !important;
    }
  }


/* Buttons */

.et_pb_button {
    font-size: 18px;
    font-weight: 600;
    line-height: 1rem !important;
    padding: .5em 1.2em !important;
    background-color: #2c4493;
    background-size: cover;
    background-position: 50%;
    background-repeat: no-repeat;
    border: 2px solid #2c4493;
    border-radius: 5px;
    -webkit-transition-duration: .2s;
    transition-duration: .2s;
    -webkit-transition-property: all !important;
    transition-property: all !important;
    color: #ffffff;
  }

  .et_pb_button:hover {
    font-size: 18px;
    font-weight: 600;
    line-height: 1rem !important;
    padding: .5em 1.2em !important;
    background-color: #2c4493 !important;
    background-size: cover;
    background-position: 50%;
    background-repeat: no-repeat;
    border: 2px solid #2c4493!important;
    border-radius: 5px;
    -webkit-transition-duration: .2s;
    transition-duration: .2s;
    -webkit-transition-property: all !important;
    transition-property: all !important;
  }

  .et_pb_button::after, .et_pb_button::before {
    font-size: 18px;
    line-height: 1rem !important;
    content: "\35";
    opacity: 0;
    position: absolute;
    margin-left: -1em;
    -webkit-transition: all .2s;
    transition: all .2s;
    text-transform: none;
    -webkit-font-feature-settings: "kern" off;
    font-feature-settings: "kern" off;
    font-variant: none;
    font-style: normal;
    font-weight: 400;
    text-shadow: none;
  }