/* --------------------------------- mods-leistungen ----------------------------------- */
.behandlungsplan {
    container-type: inline-size;
    container-name: behandlungsplan_container;
    position: relative;
}

.behandlungsplan>.fusion-builder-row {
    display: grid !important;
    grid-template-columns: repeat(12, minmax(0, 1fr)) !important;
    Xgrid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    grid-template-rows: 1fr 1fr 1fr 1fr 1fr 1fr 1fr;
    grid-auto-flow: dense !important;
    gap: 1rem;
    -webkit-box-align: inherit !important;
    -webkit-align-items: inherit !important;
        -ms-flex-align: inherit !important;
            align-items: inherit !important;
}


.behandlungsplan .behandlungs_schritt {
    padding: 0px;
    margin: 0px;
    xaspect-ratio: 1 !important;
    border-radius: .5rem !important;
    overflow: hidden;
}




.step {
    position: absolute !important;
    right: 2rem;
    top: 0px;
}

.step.extra {
    right: .5rem !important;
    top: .5rem !important;
    margin: 0px !important;
    padding: 0px !important;
    -webkit-align-content: flex-end;
        -ms-flex-line-pack: end;
            align-content: flex-end;
}

.step h1 {
    font-weight: 900 !important;
    color: var(--awb-color4) !important;
}

.step.extra h1 {
    font-weight: 900 !important;
    color: var(--awb-color4) !important;
    color: white !important;
    font-size: 16px !important;
    font-weight: 900 !important;
    z-index: -1;
    //opacity: .3;
    line-height: 1;
}

.headline h3 {
    font-size: clamp() !important;
}

.behandlungsplan .behandlungs_schritt .fusion-column-wrapper {
    _border: 1px solid red !important;
    background-color: var(--awb-color2);
    margin: 0px;
    height: auto;
    position: relative;
    padding-top: 4.5rem;
}

@container behandlungsplan_container (min-width: 200px) {
    .behandlungsplan>.fusion-builder-row {
        grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)) !important;
    }

    .behandlungsplan .behandlungs_schritt {
        grid-column: auto;
        grid-row: auto;
    }
}

@container behandlungsplan_container (min-width: 1000px) {
    .behandlungsplan>.fusion-builder-row {
        grid-template-columns: repeat(12, minmax(0, 1fr)) !important;
    }

    .behandlungs_schritt.schritt_1 {
        grid-column: 1 / span 4;
        grid-row: 2 / span 2;
    }

    .behandlungs_schritt.schritt_2 {
        grid-column: 5 / span 4;
        grid-row: 1 / span 2;
    }

    .behandlungs_schritt.schritt_3 {
        grid-column: 9 / span 4;
        grid-row: 2 / span 2;
    }

    .behandlungs_schritt.schritt_4 {
        grid-column: 1 / span 4;
        grid-row: 4 / span 2;
    }

    .behandlungs_schritt.schritt_5 {
        grid-column: 5 / span 4;
        grid-row: 5 / span 2;
    }

    .behandlungs_schritt.schritt_6 {
        grid-column: 9 / span 4;
        grid-row: 4 / span 2;
    }

    .behandlungs_schritt.schritt_7 {
        grid-column: 5 / span 4;
        grid-row: 3 / span 2;
    }
}




.subnavi_sos {
    container-type: inline-size;
    container-name: subnavi_sos_container;
    position: relative;
    width: 100% !important;
}

.pageNaviBox {
    max-width: 100vw;
}

.pageNaviBox>.fusion-column-wrapper {
    display: grid !important;
    _grid-template-columns: repeat(12, minmax(0, 1fr)) !important;
    grid-template-columns: 1fr 1fr 1fr;
    _grid-auto-flow: dense !important;
    
    width: 100dw;
    Xz-index: 1000;
    gap: 20px!important;
}

.pageNaviBox .fusion-column-wrapper .pageNaviElement {
    width: 100%;
    margin: 0px;
    font-size: smaller;
}

.myCustomStickyNav {
    width: 80vw !important;
    _margin: 0px !important;
    padding: 0px !important;
    margin: 0px auto !important;
    justify-self: anchor-center;
}

.noWrapText a {
    word-wrap: initial;
    -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
    text-wrap-mode: nowrap;
}

@container subnavi_sos_container (min-width: 100px) {
    p {}

    .subnavi_sos>.fusion-column-wrapper {
        grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
    }
}

/* ----------------------------------------------- form ---------------------------------------- */

.fusion-form-field {
    margin: 0px !important;
    margin-bottom: 1rem !important;
    position: relative !important;
}

input,
textarea {
    padding: .5rem !important;
    border: 0px !important;
    border-radius: .5rem !important;
    background-color: rgb(225, 225, 225) !important;
    color: orange !important;
    font-size: 1.3rem !important;
}

input::-webkit-input-placeholder, textarea::-webkit-input-placeholder {
    font-size: 1.1rem !important;
    color: #888;
    opacity: 0.7;
}

input::-moz-placeholder, textarea::-moz-placeholder {
    font-size: 1.1rem !important;
    color: #888;
    opacity: 0.7;
}

input:-ms-input-placeholder, textarea:-ms-input-placeholder {
    font-size: 1.1rem !important;
    color: #888;
    opacity: 0.7;
}

input::-ms-input-placeholder, textarea::-ms-input-placeholder {
    font-size: 1.1rem !important;
    color: #888;
    opacity: 0.7;
}

label,
input::placeholder,
textarea::placeholder {
    font-size: 1.1rem !important;
    color: #888;
    opacity: 0.7;
}

.jetzt_bewerben_form-headline {
    font-size: clamp(2rem, 4vw, 4.5rem) !important;
}

/*
.fusion-form-checkbox input[type="checkbox"] {
  width: 36px!important;
  height: 36px!important;
  appearance: none!important;  /* Standard Checkbox ausblenden 
  background-color: red!important; /* hellgraue Fläche 
  border: 0px!important; /* kein Rand 
  border-radius: 100em!important; /* optional: abgerundete Ecken 
  position: relative!important;
  cursor: pointer!important;
  opacity: 1!important;
}

.fusion-form-checkbox input[type="checkbox"]:checked:before {
  content: "";
  position: absolute!important;
  top: 50%!important;
  left: 50%!important;
  width: 8px!important;  /* Größe des orangen Punkts 
  height: 8px!important;
  background-color: orange!important;
  border-radius: 50%!important;
  transform: translate(-50%, -50%)!important;
}

/* Optional: Label etwas Abstand links vom Checkbox 
.fusion-form-checkbox label {
  margin-left: 8px!important;
  cursor: pointer!important;
}
*/

:root {
    --checkbox-size: 24px;
}

.fusion-form-checkbox input[type="checkbox"] {
    position: absolute !important;
    opacity: 0 !important;
    width: var(--checkbox-size) !important;
    height: var(--checkbox-size) !important;
    margin: 0 !important;
    cursor: pointer !important;
    z-index: 1 !important;
}

.fusion-form-checkbox label {
    position: relative !important;
    padding-left: calc(var(--checkbox-size) + 12px) !important;
    cursor: pointer !important;
    -webkit-user-select: none !important;
       -moz-user-select: none !important;
        -ms-user-select: none !important;
            user-select: none !important;
    line-height: var(--checkbox-size) !important;
}

/* graues Kästchen */
.fusion-form-checkbox label::before {
    content: "" !important;
    position: absolute !important;
    left: 0 !important;
    top: 50% !important;
    -webkit-transform: translateY(-50%) !important;
        -ms-transform: translateY(-50%) !important;
            transform: translateY(-50%) !important;
    width: var(--checkbox-size) !important;
    height: var(--checkbox-size) !important;
    background-color: #ddd !important;
    border-radius: 100em !important;
    -webkit-box-sizing: border-box !important;
            box-sizing: border-box !important;
    border: 0px !important;
}

/* oranger Punkt bei aktiviert */
.fusion-form-checkbox input[type="checkbox"]:checked+label::after {
    content: "" !important;
    position: absolute !important;
    left: calc(var(--checkbox-size) / 4) !important;
    top: 50% !important;
    -webkit-transform: translateY(-50%) !important;
        -ms-transform: translateY(-50%) !important;
            transform: translateY(-50%) !important;
    width: calc(var(--checkbox-size) / 2) !important;
    height: calc(var(--checkbox-size) / 2) !important;
    background-color: orange !important;
    border-radius: 50% !important;
}


root,
body {
    //font-size:22px!important;
    font-size: clamp(.9rem, 4vw, 1.2rem) !important;
    //word-break: break-all;
    word-wrap: break-word;
    --maxWidth: 1600px;
}

.maxWidth {
    max-width: var(--maxWidth)!important;
    margin:0px auto!important;
    padding:0px!important;
}

.reasons_container {
    container-name: reasons_container;
    container-type: inline-size;
    width: 100%;
    margin: 0 auto!important;
    padding: 0px;
}

.reasons_container .fusion-builder-row {
    display: grid !important;
    width: 100%;
    margin: 0 !important;
    padding: 0px;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: .5rem;
    //max-width: var(--maxWidth)!important;

}
.reasons_container .fusion-builder-row:before { display:none!important;}

.reason_element {
    border-radius: .1rem !important;
    overflow: clip;
    margin: 0px !important;
    aspect-ratio: 1 !important;
}
.reasons_container.home_layout .reason_element {
    aspect-ratio: 4 / 3 !important;
}

.reason_element .fusion-column-wrapper {
    -webkit-transition: all .5S ease-in-out;
    transition: all .5S ease-in-out;
    background-color: #efefef !important;
    margin: 0px;
    height: 100%;
    padding: 2rem !important;
    padding-top: 2.5rem !important;
}

.reason_element .fusion-column-wrapper strong {
    font-size: 1.2em;
    line-height: 1;
    width: 100% !important;
}

.reason_element.orange,
.reason_element.kfored {}

.reason_element.orange .fusion-column-wrapper,
.reason_element.orange .fusion-column-wrapper strong {
    background-color: #ff9d00 !important;
    color: white;
    -webkit-transition: all 1.1s ease-in-out;
    transition: all 1.1s ease-in-out;
}

.reason_element.kfored .fusion-column-wrapper,
.reason_element.kfored .fusion-column-wrapper strong {
    background-color: #ff0000 !important;
    color: white;
    -webkit-transition: all 1.5s ease-in-out;
    transition: all 1.5s ease-in-out;
}

.reason_element.kfoyellow .fusion-column-wrapper,
.reason_element.kfoyellow .fusion-column-wrapper strong {
    background-color: #ffd000 !important;
    //color: white;
    -webkit-transition: all 1.7s ease-in-out;
    transition: all 1.7s ease-in-out;
}



sup {
    font-size: .7em !important;
}

h2.blog-shortcode-post-title {
    //font-size: clamp()!important;
    font-size: clamp(1.2rem, 3vw, 1.8rem) !important;
}


.post-content h2,
.post-content h2 a {
    color: orange !important;
    font-weight: 300 !important;
    line-height: 1.2em !important;
    padding-bottom: 1rem;
}


.job_box_module .fusion-posts-container {
    display: grid !important;
    gap: 1rem !important;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    margin: 0px auto !important;
    padding: 0px !important;
    //max-width: var(--maxWidth)!important;

}

.job_box_module .fusion-posts-container article {
    padding: 1rem !important;
    border: 1px solid #eee;
    border-radius: .5rem;
    _width: 100% !important;
    margin: 0px !important;

}

article .post-content {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    height: 100%;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;

    .fusion-post-content-container {
        -webkit-align-content: flex-end;
            -ms-flex-line-pack: end;
                align-content: flex-end;
    }
}


@container reasons_container (min-width: 100px) {
    p {}

    .reasons_container .fusion-builder-row {
        grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    }
}
@container reasons_container (min-width: 1000px) {
    p {}

    .reasons_container .fusion-builder-row {
        grid-template-columns: repeat(4, minmax(280px, 1fr));
    }
}

/* ----------------------------------------------- Listen mod ---------------------------------------- */

ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

ul li:not(.menu-item) {
    border-top: 1px solid #ddd;
    margin: 0;
    margin-top: .5rem;
    padding: 0;
    padding-top: .5rem;
}


.fusion-text.adresse_content p {
    padding: 0px !important;
    margin: 0px !important;
}

i.adresse {
    width: 1rem;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    aspect-ratio: 1;
    margin: 0;
}

.leistungenOverviewX .fusion-builder-row{
    gap:1rem!important;
    display:grid!important;
    grid-template-columns: repeat(auto-fit, minmax(280px,1fr))!important;
}

.leistungs_box {
    -webkit-flex-shrink: 1!important;
        -ms-flex-negative: 1!important;
            flex-shrink: 1!important;
    width:100%!important;
}

.leistungs_box .fusion-column-wrapper {
    margin: 0px !important;
}

.leistungs_image {
    //aspect-ratio: 1 !important;
    max-width: none !important;
    width: 100% !important;
}


.fusion-text h1,
h1 {
    font-size: clamp(1.8rem, 5vw, 3.5rem) !important;
}


.fusion-text h2,
h2 {
    font-size: clamp(1.4rem, 3vw, 2rem) !important;
    margin: 1rem 0 !important;
}

.fusion-text h3,
h3 {
    font-size: clamp(1.1rem, 3vw, 1.6rem) !important;
    margin: 1rem 0 !important;
}

.fusion-text h4,
h4 {
    font-size: clamp(1rem, 3vw, 1.6rem) !important;
}

.textwidget h3,
.textwidget h4.widget-title,
.textwidget .fusion-text h4,
.textwidget h4 {
    font-size: clamp(1rem, 1vw, 1.4rem) !important;
    margin: 1rem 0 !important;
    line-height: 1.1em !important;
}


#main {
    padding: 0rem !important;
}

.fusion-title {
    margin: 0px !important;
}

.hoverMeImg img {
    width: 100% !important;
}



.invisalign_container {
    container-name: invisalign_container;
    container-type: inline-size;
}

.invisalign_container .fusion-builder-row {
    display: grid !important;
    width: 100%;
    margin: 0 !important;
    padding: 0px;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: .5rem;

}

.invisalign_container .fusion-builder-row:before,
.invisalign_container .fusion-builder-row:after {
    display: none;
}


.invisalign_box {
    background-color: #efefef;
    margin: 0px !important;
    position: relative;
    border-radius: .5rem;

}

.invisalign_box .step {
    top: .5rem;
    right: .5rem;
    display: none;
}

.invisalign_box h3 {
    line-height: 1rem;
    margin-bottom: 1rem !important;
}


@container invisalign_container (min-width: 100px) {
    p {}

    .invisalign_container .fusion-builder-row {
        grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
    }
}

@container invisalign_container (min-width: 800px) {
    p {}

    .invisalign_container .fusion-builder-row {
        grid-template-columns: repeat(auto-fill, minmax(340px, 1fr));
    }
}



.fusion-footer .textwidget {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    gap: 5px;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
}

.ti-widget.ti-goog .ti-widget-container {
    text-align: left !important;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    margin: 0px !important;
    line-height: 1important;
}

.ti-disclaimer {
    //display:none!important;
}

.siegel {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    line-height: 1important;
    min-width: 280px;
}

.ti-widget.ti-goog .ti-widget-container {
    line-height: .9em !important;
}

.rate {
    background-color: orange;
    border-radius: .5rem;
    color: #fff !important;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    padding: .3rem 1rem;
    font-weight: 600;
    -webkit-align-content: center;
        -ms-flex-line-pack: center;
            align-content: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    text-align: center;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
}

.rate a {
    color: #fff !important;
    line-height: 1em;
    -webkit-align-content: center;
        -ms-flex-line-pack: center;
            align-content: center;
}




input[type=submit] {
    background-color: orange !important;
    color: white !important;
    padding: 1rem 2rem !important;
}



.big_font,
.big_font .fusion-title-heading {
    font-size: clamp(1rem, 5vw, 3em)!important;
    line-height:1.1em!important;
}


/* ----------------------------------------------- Blog ---------------------------------------- */


.single-post #main,
.single-post #main>.fusion-row,
.single-post #main>.fusion-row {
    max-width: none!important;
    width:100%!important;
    margin:0px!important;
    padding:0!important;
}
.single-post .post-content  .fusion-fullwidth {
    Xpadding-left:0px!important;
    Xpadding-right:0px!important;
}

.single-post .post-content .fusion-fullwidth .fusion-row,
.single-post .post-content .fusion-fullwidth .fusion-builder-row {
    max-width: var(--maxWidth)!important;
    margin-left: auto!important;
    margin-right: auto!important;
}




.width-100 .fusion-fullwidth, 
.width-100 .nonhundred-percent-fullwidth {
    margin:0px!important;
}


/* ----------------------------------------------- Karriere Home ---------------------------------------- */

.karriereBlockHome {
  container-name: karriereBlockHome;
  container-type: inline-size;
}




.homeKarriere .fusion-posts-container {
    display: grid!important;
    grid-template-columns: repeat(auto-fill, minmax(280px,1fr));
    gap:1rem;

}
.homeKarriere .fusion-posts-container article {
    border-radius:.5rem;
    background-color: #ee7203f7;
    padding:1rem 1.5rem;
    margin:0px;
    
    //background-blend-mode: overlay;
    //filter: drop-shadow(0px 0px 5px rgba(0, 0, 0, 0.3));
}
.homeKarriere .fusion-posts-container article h4{
    margin:0px!important;
    line-height:1.2!important;
}

@container karriereBlockHome (min-width: 100px) {
  .homeKarriere .fusion-posts-container article {
    max-width:none!important;
  }
}

@container karriereBlockHome (min-width: 800px) {
  .homeKarriere .fusion-posts-container article {
    //max-width:50%!important;
  }
}




/* ----------------------------------------------- Ende Gelände ---------------------------------------- */



.fusion-modal-text-link {
    padding: 5px 13px;
    background-color: #ee7203;
    color: #fff;
    text-transform: uppercase;
    font-size: 1em;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
}



/*  aber nu wärglich */