/*
Theme Name: saninord
Text Domain: saninord
Author: Sanitätsschule Nord
Description: Das Theme für die SanitaetsschuleNord-Homepage
Version: 1.0
*/

:root {

    /* Colors: */
    /* rot leuchtend #eb2231 */
    --unnamed-color-ef4854: #EF4854;
    --unnamed-color-2b231c: #2B231C;
    --unnamed-color-2b231cd9: #2B231CD9;
    --sn-color-red-inverse: #F4EEE9;
    --sn-color-button-red-inverse: #2b231c;
    --sn-bg-color-button-red-inverse: #F4EEE9;

    --sn-bg-color-button-brown: #2b231c;
    --sn-color-button-brown: #F4EEE9;
    --sn-color-footer: #2b231c;

    --sn-bg-color-blue: #D5E4F8;

    --sn-signalrot: #ef4854;
    --sn-bg-hellblau: #d5e4f8;
    --sn-bg-perlweiss: #f4eee9;
    --sn-bg-dunkelbraun: #2b231c;
    --sn-bg-pastellorange: #ffc3a6;
    --sn-bg-pastellgruen: #c2efc2;
    --sn-bg-pastellrosa: #fadce4;

    /* Font/text values */
    --sn-font-style-normal: normal;
    --sn-font-size-txt-block: 18px;
    --sn-line-spacing-txt-block: 25px;
    --sn-font-size-txt-block-head: 1.5em;
    --sn-font-size-txt-block-subhead: 1.5em;

    --font-family-epilogue: Epilogue;
    --unnamed-font-style-normal: normal;
    --unnamed-font-weight-normal: normal;
    --unnamed-font-weight-bold: bold;
    --font-size-body: 14px;
    --font-size-main-motto: 139%; /*21px;*/ /* 25 * */
    --font-size-h4: 130%; /*139%;*/
    --font-size-h3: 150%; /*166.66%;*/ /*25px;*/ /*30px; * */
    --font-size-lead-text: 222.22%; /*33px;*/ /*40px; * */
    --font-size-subtitle: 310%; /*50px;*/ /*60px; * */
    --font-size-main-title: 500%; /*555%;*/ /*83px;*/ /*100px; * */
    --unnamed-font-size-main: 4.5em;
    --unnamed-character-spacing-0: 0px;
    --line-spacing-body: 21px; /*25px; **/
    --line-spacing-h4: 128%; /*32px * */;
    --line-spacing-main-motto: 135%; /*35px; * */
    --line-spacing-lead-text: 150%; /*50px; * */
    --line-spacing-subtitle: 116%; /*70px * */;
    --line-spacing-main-title: 103%; /*103px; * */
    --unnamed-line-spacing-main: 10px;

    --mobile-side-padding: 30px;
    --mobile-font-size-body: 13px;
}

/* ===================================
   RESPONSIVE BASE STYLES
   =================================== */

/* Ensure images and videos are fluid */
img, video, iframe {
    max-width: 100%;
    height: auto;
}

/* Prevent horizontal scroll */
body {
    overflow-x: hidden;
}

body.popup-active {
    overflow: hidden;
    padding-right: var(--scrollbar-width, 0);
}

/* Make containers fluid */
/*.container, .wrapper, .content-area {
    width: 100%;
    padding-left: 15px;
    padding-right: 15px;
    margin-left: auto;
    margin-right: auto;
}*/

/* Box-sizing for all elements */
*, *::before, *::after {
    box-sizing: border-box;
}
/* ENDE RESPONSIVE BASE STYLES */

img.sn-logo {
    width: 300px;
    z-index: 9998;
    position: relative;
}


.vp-fi {
    opacity: 0;
    transform: translateY(10px);
    transition: opacity 0.6s ease, transform 0.6s ease;
}

.vp-fi.visible {
    opacity: 1;
    transform: translateY(0);
}


.full-width, .full-w {
    width: 100%;
}



div.sn-header-menu {
    width: 70%;
    float: right;
    text-align: right;
}

/* Character Styles */
h1.main-title,
h2.main-title {
    font-family: var(--font-family-epilogue);
    font-style: var(--unnamed-font-style-normal);
    font-weight: var(--unnamed-font-weight-bold);
    font-size: var(--font-size-main-title);
    line-height: var(--line-spacing-main-title);
    letter-spacing: var(--unnamed-character-spacing-0);
    color: var(--unnamed-color-ef4854);
}
h1.main-title-dark {
    font-family: var(--font-family-epilogue);
    font-style: var(--unnamed-font-style-normal);
    font-weight: var(--unnamed-font-weight-bold);
    font-size: var(--font-size-subtitle);
    line-height: var(--line-spacing-main-title);
    letter-spacing: var(--unnamed-character-spacing-0);
    color: var(--unnamed-color-2b231cd9);
}

h1 span,
h2.main-subtitle,
p.main-subtitle {
    font-family: var(--font-family-epilogue);
    font-style: var(--unnamed-font-style-normal);
    font-weight: var(--unnamed-font-weight-normal);
    line-height: var(--line-spacing-main-title);
    letter-spacing: var(--unnamed-character-spacing-0);
    color: var(--unnamed-color-ef4854);
}
section > h2.main-subtitle {
    font-size: var(--font-size-main-title);
}
p.main-subtitle {
    font-size: var(--font-size-main-title);
}

div.main-motto {
    font-family: var(--font-family-epilogue);
    font-style: var(--unnamed-font-style-normal);
    font-weight: var(--unnamed-font-weight-normal);
    font-size: var(--font-size-main-motto);
    line-height: var(--line-spacing-main-motto);
    letter-spacing: var(--unnamed-character-spacing-0);
    color: var(--unnamed-color-ef4854);
}
div.wp-block-sn-schwarzer-header-block h2,
.sn-txt-block-red h3 {
    font-family: var(--font-family-epilogue);
    font-style: var(--unnamed-font-style-normal);
    font-weight: var(--unnamed-font-weight-normal);
    font-size: var(--font-size-subtitle);
    line-height: var(--line-spacing-subtitle);
    letter-spacing: var(--unnamed-character-spacing-0);
    color: var(--unnamed-color-2b231c);
}
h2.main-title,
div.wp-block-sn-schwarzer-header-block h2,
.sn-txt-block-red h3 {
    font-weight: var(--unnamed-font-weight-bold);
}
div.wp-block-sn-schwarzer-header-block h2 span {
    font-weight: var(--unnamed-font-weight-normal);
}


h3, footer, .sn-txt-block-red p {
    font-family: var(--font-family-epilogue);
    font-style: var(--unnamed-font-style-normal);
    font-weight: var(--unnamed-font-weight-normal);
    font-size: var(--font-size-h3);
    line-height: var(--line-spacing-main-motto);
    letter-spacing: var(--unnamed-character-spacing-0);
    color: var(--unnamed-color-2b231c);
}
h4, h5, .lehrgang_titel, .lehrgang_details_gr p.val,
.neuigkeit_titel, .review-author,
.sn-lehrgangstermin span.val {
    font-family: var(--font-family-epilogue);
    font-style: var(--unnamed-font-style-normal);
    font-weight: var(--unnamed-font-weight-normal);
    font-size: var(--font-size-h4);
    line-height: var(--line-spacing-h4);
    letter-spacing: var(--unnamed-character-spacing-0);
    color: var(--unnamed-color-2b231c);
}
.sn-lehrgangstermine .val, .sn-lehrgangstermin span.val {
    font-weight: var(--unnamed-font-weight-bold);
}
.sn-lehrgangstermin span.val {
    color: var(--sn-color-red-inverse);
}

a {
    text-decoration: none;
    color: var(--sn-signalrot);
    border-radius: 0 !important;
}
a:hover, a:focus {
    text-decoration: none;
    color: var(--sn-signalrot);
    outline: none;
    border-radius: 0 !important;
}

.lead-text, .sn-schwarzes-motto {
    font-family: var(--font-family-epilogue);
    font-style: var(--unnamed-font-style-normal);
    font-weight: var(--unnamed-font-weight-normal);
    font-size: var(--font-size-lead-text);
    line-height: var(--line-spacing-lead-text);
    letter-spacing: var(--unnamed-character-spacing-0);
    color: var(--unnamed-color-2b231c);
}
body {
    font-family: var(--font-family-epilogue);
    font-style: var(--unnamed-font-style-normal);
    font-weight: var(--unnamed-font-weight-normal);
    font-size: var(--font-size-body);
    line-height: var(--line-spacing-body);
    letter-spacing: var(--unnamed-character-spacing-0);
    color: var(--unnamed-color-2b231cd9);
}

h1, h2, h3, h4, h5 {
    font-weight: var(--unnamed-font-weight-bold);
}

.epilogue-uniquifier {
   font-family: "Epilogue", sans-serif;
   font-optical-sizing: auto;
   font-weight: weight;
   font-style: normal;
}

html {
    scroll-behavior: smooth;
}

@media (max-width: 768px) {
    div#content {
        padding: var(--mobile-side-padding);
    }
}

.btabs {
    padding: 0 !important;
}

.btabs .tab-main-container {
    font-family: "Epilogue", "Helvetica", "Arial", sans-serif !important;
}

h1 span, h2 span, h3 span, h4 span, h5 span {
    font-weight: normal;
}

h3 span {
    font-weight: normal;
}

h6 {
    margin: 25px 0 0 0;
    font-size: 105%;
}

.sn-schmaler-1 {
    width: 80%;
}

.sn-schmaler-2 {
    width: 70%;
}

.sn-schmaler-3 {
    width: 60%;
}

.sn-schmaler-4 {
    width: 50%;
}

div.sn-ab-main-h-form {
    height: 50px;
}

.img-placeholder-big {
    height: 400px;
    background-color: #F1F1F1;
    margin: 3em 0 3em 0;
}
.no-margin,
.no-margin figure,
li.no-margin p {
    margin: 0 !important;
}

.sn-txt-block h3 {
    margin-bottom: 0;
}

h3.wp-block-heading {
    margin: 2em 0 0.7em 0;
}

.content-motto-50 {
    width: 50%;
}

div#content {
    width: 1300px;
    margin: 0 auto;
    padding-top: 2.5em;
    max-width: 100%;
    min-width: 1024px;
    display: flex;
    flex-direction: column;
    min-height: 95vh;
}

div.error-404 {
    text-align: center;
    padding: 80px;
}

div.top-bar {
    position:sticky;
    background: #F4EEE9 0% 0% no-repeat padding-box;
    top: 0px;
    left: 0px;
    width: 100%;
    opacity: 1;
    color: #2b231c;
    height: 40px;
    display: flex;
    align-items: center;
    z-index: 1000;
}

div.top-bar div {
    width: 1100px;
    margin: 0 auto;
}

div.top-bar span {
    display: inline-block;
    padding-top: 2px;
    margin-left: 0.3em;
    margin-right: 0.2em;
}

div.top-bar span.info {
    float: right;
}

div.top-bar svg {
    float: right;
    width: 22px;
    height: 22px;
    margin-left: 1.5em;
}

div.top-bar svg.left {
    float: left;
    margin-left: 0;
    margin-right: 0.2em;
}

#mega-menu-wrap-header-menu #mega-menu-header-menu > li.mega-menu-item.mega-sn-circle-link {
    height: 45px;
    margin-left: 30px;
}
#mega-menu-wrap-header-menu #mega-menu-header-menu > li.mega-menu-item.mega-sn-circle-link.sn-warenkorb-link {
    margin-left: 20px;
    margin-top: -19px;
}

#mega-menu-wrap-header-menu #mega-menu-header-menu > li.mega-menu-item.mega-sn-circle-link > a.mega-menu-link {
    display: inline-block !important;
    width: 45px;
    height: 45px;
    background-color: transparent;
    background-position: center !important;
    background-repeat: no-repeat  !important;
    background-size: 25px !important;
    border-radius: 50% !important;
    transition: background-color 0.2s ease;
}

#mega-menu-wrap-header-menu #mega-menu-header-menu > li.mega-menu-item.mega-sn-circle-link:hover > a.mega-menu-link {
    border-bottom: none !important;
    background-color: var(--sn-bg-perlweiss) !important;
}

div.menu-link-icons > div {
    display: inline-block;
}

li.sn-kundenbereich-link a,
div.sn-kundenbereich-link a {
    background-image: url("assets/images/menu/user.svg") !important;
    color: transparent !important;
    text-decoration: none !important;
}

li.sn-warenkorb-link a,
div.sn-warenkorb-link a {
    background-image: url("assets/images/menu/shopping-bag.svg") !important;
    color: transparent !important;
    text-decoration: none !important;
    background-repeat: no-repeat !important;
    background-size: contain;
    width: 20px;
    height: 20px;
    display: inline-block;
}
li.sn-warenkorb-link {
    padding-top: 11px !important;
}
li.sn-warenkorb-link a.mega-menu-link {
    display: none !important;
}
#mega-menu-wrap-header-menu #mega-menu-header-menu a.custom-cart-icon {
    margin-right: 10px;
}
li.sn-warenkorb-link a.custom-cart-icon img,
#mega-menu-wrap-header-menu #mega-menu-header-menu a.custom-cart-icon img {
    height: 22px;
}
#mega-menu-wrap-header-menu #mega-menu-header-menu > li.mega-menu-item.mega-sn-circle-link.sn-warenkorb-link > a.mega-menu-link {
    background-size: 20px !important;
}

.sn-header {
    background-color: white;
    z-index: 9997;
    position: relative;
}

.sn-header .sn-header-c-wrapper {
    width: 1300px;
    margin: 0 auto;
    padding-top: 2.5em;
    max-width: 100%;
    min-width: 1024px;
}

.sn-header a {
    text-decoration: none;
    color: #2b231c;
}

.sn-header ul {

}

#mega-menu-wrap-header-menu {
    margin-top: 5px;
    z-index: 9997;
}

#mega-menu-wrap-header-menu #mega-menu-header-menu > li.mega-menu-item {
    margin-left: 40px;
}

#mega-menu-wrap-header-menu #mega-menu-header-menu > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-column-standard > a.mega-menu-link, #mega-menu-wrap-header-menu #mega-menu-header-menu > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-column > ul.mega-sub-menu > li.mega-menu-item > a.mega-menu-link {
    color: var(--unnamed-color-2b231cd9) !important;
    transition: color 0.5s ease;
}

#mega-menu-wrap-header-menu #mega-menu-header-menu > li.mega-menu-item > a.mega-menu-link:hover,
#mega-menu-wrap-header-menu #mega-menu-header-menu > li.mega-menu-item > a.mega-menu-link:focus
{

}

#mega-menu-wrap-header-menu, #mega-menu-wrap-header-menu #mega-menu-header-menu, #mega-menu-wrap-header-menu #mega-menu-header-menu ul.mega-sub-menu, #mega-menu-wrap-header-menu #mega-menu-header-menu li.mega-menu-item, #mega-menu-wrap-header-menu #mega-menu-header-menu li.mega-menu-row, #mega-menu-wrap-header-menu #mega-menu-header-menu li.mega-menu-column, #mega-menu-wrap-header-menu #mega-menu-header-menu a.mega-menu-link, #mega-menu-wrap-header-menu #mega-menu-header-menu span.mega-menu-badge, #mega-menu-wrap-header-menu button.mega-close, #mega-menu-wrap-header-menu button.mega-toggle-standard {
    font-size: 15px !important;
}

#mega-menu-wrap-header-menu #mega-menu-header-menu li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row .mega-menu-column > ul.mega-sub-menu > li.mega-menu-item {
    padding: 0 !important;
    color: var(--unnamed-color-2b231cd9) !important;
}

#mega-menu-wrap-header-menu #mega-menu-header-menu li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row .mega-menu-column > ul.mega-sub-menu > li.mega-menu-item .sn-menu-header {
    color: var(--sn-bg-dunkelbraun) !important;
}

#mega-menu-wrap-header-menu #mega-menu-header-menu > li.mega-menu-megamenu > ul.mega-sub-menu {
    padding: 30px 0 50px 0 !important;
}

#mega-menu-wrap-header-menu #mega-menu-header-menu > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-column > ul.mega-sub-menu > li.mega-menu-item > a.mega-menu-link:hover {
    color: var(--sn-signalrot) !important;
}


#mega-menu-wrap-header-menu #mega-menu-header-menu li.mega-menu-item-has-children > a.mega-menu-link > span.mega-indicator:after {
    content: none;
}

#mega-menu-wrap-header-menu #mega-menu-header-menu li.mega-menu-item-has-children > a.mega-menu-link > span.mega-indicator {
    content: none;
    background-image: url(assets/images/menu/feather-chevron-down.svg);
    width: 15px;
    height: 15px;
    background-position: center bottom;
    background-size: 15px 15px !important;
    background-repeat: no-repeat !important;
    top: 2px;
    display: inline-block;
    transition: transform 0.5s ease !important;
    transform-origin: center;
}

ul.mega-sub-menu {

}
#mega-menu-wrap-header-menu #mega-menu-header-menu > li.mega-menu-item a.mega-menu-link {
    text-decoration: none;
    padding: 0 0 0 0;
    border-bottom: 1px solid #fff;
    height: 35px;
    display: inline-block;
}

#mega-menu-wrap-header-menu #mega-menu-header-menu > li.mega-menu-item:hover a.mega-menu-link {
    border-bottom: 1px solid #2b231c;
}

div.menu-hauptmenue-container {
    vertical-align: 0.7em;
}

#menu-dim-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.5);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    z-index: 9995;
    transition: opacity 0.5s ease;
}

.mega-no-js li.mega-menu-item:hover > ul.mega-sub-menu ~ #menu-dim-overlay,
.mega-no-js li.mega-menu-item:focus > ul.mega-sub-menu ~ #menu-dim-overlay ,
li.mega-menu-item.mega-toggle-on > ul.mega-sub-menu ~ #menu-dim-overlay,
li.mega-menu-item.mega-menu-megamenu.mega-toggle-on ul.mega-sub-menu ~ #menu-dim-overlay,
#menu-dim-overlay.active {
    opacity: 1;
    visibility: visible;
    transform: translate(0, 0);
}

#mega-menu-wrap-header-menu #mega-menu-header-menu .mega-sub-menu li.mega-menu-item:first-child {
    font-size: 1.2em !important;
    margin-bottom: 25px !important;
}

#mega-menu-wrap-header-menu #mega-menu-header-menu p.topmenu-txt-action {
    text-align: center;
    margin-bottom: 20px !important;
}

div.topmenu_action_box {
    text-align: center;
    position: relative;
    margin-left: -60px;
    background-color: #F4EEE9;
    padding: 30px 0 20px 0;
}

div.topmenu_action_box img {
    width: 70px;
}

main,
main.wrap {
    clear: both;
    padding-top: 5px;
    flex: 1;
}

.main-title {
    text-align: left;
    opacity: 1;
    hyphens: auto;
    -webkit-hyphens: auto;
    -ms-hyphens: auto;
    overflow-wrap: break-word;
}

.main-title span {
    display: block;
}

.main-title span.subheader.last,
p.main-subtitle.last,
.article-full .main-subtitle, .content-area p.main-subtitle.last {
    margin-bottom: 38px !important;
}

.main-subtitle {
    text-align: left;
    opacity: 1;
}

.main-motto {
    min-width: 600px;
    width: 50%;
    margin-bottom: 10px;
    padding-top: 28px;
}
.main-motto p {
    margin: 0; padding: 2px 0;
}

.kachel_1, .kachel_2, .kachel_3, .kachel_4 {
}

.kachel_1 h4, .kachel_2 h4, .kachel_3 h4, .kachel_4 h4 {
    padding: 2em 2em 0 2em;
}
div.c-frontpage-kacheln div.kachel p {
    padding: 0 2em 0 2em;
    margin-top: -20px;
}

.sn-eh-zert-ab-btn-anm {
    height: 20px;
}

.sn-kontakt-ab-h {
    height: 100px;
}

div.c-frontpage-kacheln div.kachel div.kachel-blau p {
    padding: 0;
    margin: 40px 40px 0 40px;
}

div.scroll-kachel .c-a {
    overflow: clip;
}

div.scroll-kachel .c-a img {
    margin-left: -20px;
    height: 13px;
    transition: margin-left 0.3s ease;
}

div.scroll-kachel .c-img img {
    transition: transform 0.3s cubic-bezier(0.34, 1.56, 0.64, 1);
}

div.scroll-kachel:hover .c-img img {
    transform: scale(1.087);
}

div.scroll-kachel:hover .c-a img {
    margin-left: 0;
}

div.c-frontpage-kacheln div.scroll-kachel div.kachel .c-img {
    display: flex;
    overflow: hidden;
    height: 200px;
}

div.c-frontpage-kacheln div.scroll-kachel div.kachel .c-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

div.c-scroll-nav {
    float: inline-start;
    width: 100%;
    margin-top: -50px;
    min-height: 55px;
}

div.tab-main-container div.c-scroll-nav,
div.tab-main-container div.c-scroll-nav div.c-scroll-pfeile {
    margin-top: 0;
}

.kachel_1 a, .kachel_2 a, .kachel_3 a, .kachel_4 a {
    padding: 1em 2em 2em 2em;
}

.kachel_1 {
    color: white;
    background-color: #EF4854;
}

.kachel_2 {
    background-color: #00000029;
}
.kachel_3 {
    background-color: #D5E4F8;
}
.kachel_4 {
    color: white;
    background-color: #2B231C;
}

.sn-eh-filiale-badsegeberg div.c-img {
    background-image: url("assets/images/eh_kachel_dummy.png");
}

div.c-frontpage-kacheln {
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: minmax(300px, max-content);
    gap: 20px;
    overflow-x: hidden;
    justify-content: start;
}

div.c-frontpage-kacheln div.kachel {
    flex-grow: 0 !important;
    min-width: 308px;
}

div.c-frontpage-kacheln figure {
    margin: 0;
}

.sn-txt-block {
    letter-spacing: var(--unnamed-character-spacing-0);
    color: var(--unnamed-color-2b231c);
    text-align: left;
    letter-spacing: 0px;
    opacity: 1;
}

.sn-txt-block p {
    text-align: left;
    opacity: 1;
}

.sn-txt-block p.subhead {
    margin-bottom: 1em;
}

.sn-txt-block-red {
    background-image: url("assets/images/lebenslinie_weiss_rot.png");
    background-position: right bottom 30px;
    background-repeat: no-repeat;
    padding-bottom: 9em !important;
    padding-top: 4.5em;
    color: var(--sn-color-red-inverse);
}

.sn-txt-block-red , .sn-txt-block-red p {
    background-color: var(--unnamed-color-ef4854);
    color: var(--sn-color-red-inverse);
    text-align: center;
}
.sn-txt-block-red h3, .sn-txt-block-red p.rote-box-subtitle {
    color: var(--sn-color-red-inverse);
}

.sn-txt-block-red a img.arrow {
    margin-left: 15px;
    margin-bottom: -2px;
}

.sn-txt-block-centered {
    padding: 1.3em 15em;
    text-align: center;
    background-color: var(--unnamed-color-ef4854);
    color: var(--sn-color-red-inverse);
}

.sn-txt-block-centered h3 {
    width: 100%;
}

.sn-txt-block-centered .wp-block-buttons {
    width: 100%;
    text-align: center;
    margin-top: 2em;
    margin-bottom: 1.5em;
}

.wp-block-buttons .wp-block-button a.wp-block-button__link {
    border-radius: 0;
    font-size: 1em;
}

.sn-txt-block-red .wp-block-buttons {
    margin-top: 4em;
    margin-bottom: 5em;
}

.sn-txt-block-red .wp-block-buttons .wp-block-button a.wp-block-button__link {
    background-color: var(--sn-bg-color-button-red-inverse);
    color: var(--sn-color-button-red-inverse);
}

.bildungstraeger {
    overflow: visible;
    margin-top: 80px;
    margin-bottom: 80px;
    width: 100%;
}

.bildungstraeger > div {
    display: flex;
    gap: 3%;
    animation: none;
}

.bildungstraeger p {
    margin-right: 50px;
    font-size: 1.28em;
}

.bildungstraeger img {
    height: 80px;
    width: auto;
}

.copyright-footer {
    margin-bottom: 1em;
}

footer {
    margin-bottom: 3em;
}
footer .motto {
    margin: 0;
    padding: 15px 0;
    color: var(--unnamed-color-ef4854);
    font-weight: bold;
}

div.kommende_lehrgaenge > a {
    width: 100%;
}

div.kommende_lehrgaenge, div.offene_stellen {
}

div.kommende_lehrgaenge div.lehrgang, div.offene_stellen div.offene_stelle {
    background-color: #F4EEE9;
    margin-bottom: 1.5em;
    width: 100%;
}

.lehrgang {
    display: flex;
    min-height: 263px;
}

.c_lehrgang_bild, .c_lehrgang_info {
    float: left;
}

.c_lehrgang_bild {
    width: 20%;
    display: flex;
    overflow: hidden;
}

.c_lehrgang_bild img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.with-bg-image {
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

div.c_lehrgang_bild_gr.with-bg-image {
    width: 100%;
    height: 100%;
}


.c_lehrgang_info {
    width: 55%;
    padding-top: 1.1em;
    padding-bottom: 1.3em;
    padding-left: 1.3em;
}

.c_lehrgang_info_gr {
    box-sizing: border-box;
    padding: 40px 10px 35px 60px;
    color: var(--unnamed-color-2b231c);
    flex: 0 0 50%;
}

div.lehrgang div.c-img {
    overflow: clip;
}
div.lehrgang div.c-img div.c_lehrgang_bild_gr {
    transition: transform 0.3s cubic-bezier(0.34, 1.56, 0.64, 1);
}
div.lehrgang:hover div.c-img  div.c_lehrgang_bild_gr {
    transform: scale(1.087);
}

p.lehrgang_titel {
    margin-bottom: 20px;
    margin-top: 0;
    font-weight: var(--unnamed-font-weight-bold);
}

p.lehrgang_typ {
    margin-top: 0;
    margin-bottom: 20px;
}

div.lehrgang_details span {
    width: 33%;
    display: inline-block;
}

div.lehrgang_details_gr {
    margin-top: 15px;
}
div.lehrgang_details_gr span {
    width: 30%;
    display: inline-block;
}

div.lehrgang_details_gr span:nth-child(2) {
    width: 40%;
}

div.lehrgang_details p.val,
div.lehrgang_details_gr p.val {
    margin-bottom: 0.15em;
}

div.lehrgang_details p.lbl,
div.lehrgang_details_gr p.lbl {
    margin-top: -5px;
    margin-bottom: 0;
}

.val-with-left-space {
    padding-left: 30px;
}

div.lehrgang_details span.btn_c {
    position: relative;
    top: -16px;
}

div.lehrgang div.btn_c_gr {
    flex: 0 0 30%;
    text-align: right;
}

div.lehrgang div.c-img {
    flex: 0 0 20%;
    text-align: right;
}

div.lehrgang a.action-button-dark.card-button,
div.lehrgang div.action-button-dark.card-button {
    margin-top: 40px;
    margin-right: 40px;
}

div.offene_stellen {
    gap: 0;
}

div.offene_stellen div.offene_stelle {
    display: flex;
    padding: 50px 50px 45px 50px;
}

div.offene_stellen div.offene_stelle .offene_stelle-l {
    flex: 0 0 70%;
}

div.offene_stellen div.offene_stelle .offene_stelle-r {
    flex: 0 0 30%;
    text-align: right;
}

div.offene_stellen div.offene_stelle h4 {
    margin: 0;
    margin-top: 3px;
}

div.offene_stellen div.offene_stelle p {
    margin-top: 0.3em;
    margin-bottom: 0;
}

div.offene_stellen div.offene_stelle span.c-action-button {
    display: inline-block;
    min-width: 233px;
}

div.c_neuigkeiten {
    background-color: var(--sn-bg-color-blue);
    padding: 60px;
}

div.c_neuigkeiten .c_neuigkeit {
    width: 100%;
    display: flex;
}

div.c_neuigkeiten .neuigkeit_bild {
    float: left;
    width: 50%;
    height: 100%;
    display: flex;
    overflow: hidden;
}
div.c_neuigkeiten .neuigkeit_bild img {
    width: 100%;
}
div.c_neuigkeiten .neuigkeit_info {
    width: 50%;
    padding-left: 125px;
    padding-right: 80px;
    align-self: center;
}

div.c_neuigkeiten .neuigkeit_info .neuigkeit_titel {
    font-weight: var(--unnamed-font-weight-bold);
    margin: 0;
}

div.c_neuigkeiten .neuigkeit_info .neuigkeit_text {
    padding: 0.6em 0 2em 0;
}

div.c_neuigkeiten .neuigkeit_info .neuigkeit_titel span.sub {
    display: block;
}

button.sn-bt-brown {
    margin-top: 1em;
    background-color: var(--sn-bg-color-button-brown);
    padding: 1em 1.5em 1em 1.5em;
    border-radius: 0;
}
button.sn-bt-brown a {
    color: var(--sn-color-button-brown);
    text-decoration: none;
}

footer {
    margin-top: 120px;
}

footer ul {
    list-style: none;
    margin-top: 0;
}
footer ul li {
    padding: 0.2em 0;
}

footer a,
footer ul li a {
    text-decoration: none;
    color: var(--sn-color-footer);
    transition: color 0.5s ease;
}

footer a:hover,
footer ul li a:hover {
    color: var(--sn-signalrot);
}

footer div.menu-footer_menu_2-container,
footer div.menu-footer_menu_rechtliches-container {
    padding-right: 15px;
}


footer div.is-layout-flex {
    align-items: flex-start;
    justify-content: space-between;
    gap: 8px;
}

footer p {
    margin: 0;
    padding: 0.2em 0;
}

footer div.adresse {
    margin-bottom: 1.5em;
}

footer div.logo img {
    width: 80px;
}

footer div.social {
    margin-top: 0.4em;
}

footer div.social img {
    margin-right: 0.6em;
    width: 15px;
}

footer div.social img.facebook {
    width: 10px;
}

footer div.social img.instagram {
    width: 19px;
}

footer div.social img.youtube {
    width: 24px;
}
footer div.c-kontakt {
    margin-top: 20px;
}
footer div.c-kontakt ul {
    padding-left: 0;
}
footer p.lbl {
    font-weight: bold;
    padding-left: 40px;

}

p.c_ticker {
    display: inline-block;
    padding: 0; margin: 0;
}

hr.spacer-line {
    border: none;
    border-top: 1px solid #F4EEE9;
    margin: 50px 0 40px 0;
}

button.scroll-next, button.scroll-next-2,
button.scroll-prev, button.scroll-prev-2 {
    height: 55px;
    border: none;
    cursor: pointer;
    background-color: var(--sn-bg-perlweiss);
    padding: 0 20px 0 5px;
    position: relative;
    overflow: hidden;
    z-index: 1;
    transition: none;
}

button.scroll-next::before, button.scroll-next-2::before,
button.scroll-prev::before, button.scroll-prev-2::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #D1C2B5;
    transform: scaleX(0);
    transform-origin: left;
    transition: transform 0.5s ease;
    z-index: -1;
}

button.scroll-next:hover::before, button.scroll-next-2:hover::before,
button.scroll-prev:hover::before, button.scroll-prev-2:hover::before {
    transform: scaleX(1);
}

button.scroll-prev, button.scroll-prev-2 {
    height: 55px;
    border: none;
    cursor: pointer;
    margin-right: 10px;
    transform: rotate(180deg);
}

button.scroll-next.inactive span, button.scroll-next-2.inactive span,
button.scroll-prev.inactive span, button.scroll-prev-2.inactive span {
    opacity: 0.4;
}

button.scroll-next span, button.scroll-next-2 span,
button.scroll-prev span, button.scroll-prev-2 span {
    pointer-events: none;
}

button.scroll-next.inactive::before, button.scroll-next-2.inactive::before,
button.scroll-prev.inactive::before, button.scroll-prev-2.inactive::before,
button.scroll-next.inactive:hover::before, button.scroll-next-2.inactive:hover::before,
button.scroll-prev.inactive:hover::before, button.scroll-prev-2.inactive:hover::before {
    transform: none !important;
    transform-origin: none !important;
    transition: none !important;
    background-color: var(--sn-bg-perlweiss);
    content: none;
}

span.action a,
div.action a,
.btabs .tab-main-container a,
.btabs .tab-main-container a:focus,
.btabs .tab-main-container a:hover {
    text-decoration: none !important;
}

a.action-button-dark,
div.action-button-dark a,
div.action-button-dark button,
div.lehrgang div.action-button-dark {
    cursor: pointer;
    align-content: center;
    padding: 0 35px 0 35px;
    color: #F4EEE9;
    min-height: 85px;
    display: inline-block;
    border: none;
    background-color: var(--unnamed-color-2b231c);
    text-decoration: none;
    position: relative;
    overflow: hidden;
    z-index: 1;
}

div.lehrgang div.action-button-dark {
    min-height: 49px;
    padding: 1px 35px 0 35px;
}

.card-button,
a.action-button-dark.card-button,
div.action-button-dark.card-button a {
    min-height: 50px;
}

.action-button-dark-disabled {
    background-color: gray;
    opacity: 0.5 !important;
    cursor: not-allowed;
}

.action-button-dark p {
    margin: 0;
}

a.action-button-dark,
div.action-button-dark a {
    text-decoration: none;
    color: #F4EEE9;
    background-color: var(--unnamed-color-2b231c);
}

div.action-button-dark a::before,
a.action-button-dark::before,
div.lehrgang div.action-button-dark::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: var(--sn-signalrot);
    transform: scaleX(0);
    transform-origin: left;
    transition: transform 0.5s ease;
    z-index: -1;
}

div.sn-eh-teaser div.action-button-dark a,
div.sn-eh-teaser a.action-button-dark {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding-right: 50px !important;
    transition: color 0.5s ease;
}

div.sn-lehrgangstermine div.action-button-dark a,
div.sn-lehrgangstermine a.action-button-dark {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding-right: 95px !important;
    transition: color 0.5s ease;
}

div.sn-eh-teaser div.action-button-dark a::before,
div.sn-eh-teaser a.action-button-dark::before {
    transition: transform 0.5s ease;
    background: var(--sn-bg-perlweiss);
}

div.sn-lehrgangstermine div.action-button-dark a::before,
div.sn-lehrgangstermine a.action-button-dark::before {
    transition: transform 0.5s ease;
    background: var(--sn-bg-perlweiss);
}

div.action-button-dark a:hover::before,
a.action-button-dark:hover::before,
div.lehrgang div.action-button-dark:hover::before {
    transform: scaleX(1);
}

div.sn-eh-teaser div.action-button-dark a:hover,
div.sn-eh-teaser a.action-button-dark:hover,
div.sn-lehrgangstermine div.action-button-dark a:hover,
div.sn-lehrgangstermine a.action-button-dark:hover {
    color: var(--sn-bg-dunkelbraun);
}

div.sn-eh-teaser div.action-button-dark a span.arrow-left-white,
div.sn-eh-teaser a.action-button-dark span.arrow-left-white,
div.sn-eh-teaser div.action-button-dark a span.arrow-left-black,
div.sn-eh-teaser a.action-button-dark span.arrow-left-black {
    transition: opacity 0.5s ease;
    position: absolute;
    pointer-events: none;
    top: 41%;
}

div.sn-lehrgangstermine div.action-button-dark a span.arrow-left-white,
div.sn-lehrgangstermine a.action-button-dark span.arrow-left-white,
div.sn-lehrgangstermine div.action-button-dark a span.arrow-left-black,
div.sn-lehrgangstermine a.action-button-dark span.arrow-left-black {
    transition: opacity 0.5s ease;
    position: absolute;
    pointer-events: none;
    top: 35%;
}

div.sn-eh-teaser div.action-button-dark a span.arrow-left-white,
div.sn-eh-teaser a.action-button-dark span.arrow-left-white {
    opacity: 1;
}

div.sn-eh-teaser div.action-button-dark a span.arrow-left-black,
div.sn-eh-teaser a.action-button-dark span.arrow-left-black {
    opacity: 0;
}

div.sn-eh-teaser div.action-button-dark a:hover span.arrow-left-white,
div.sn-eh-teaser a.action-button-dark:hover span.arrow-left-white {
    opacity: 0;
}

div.sn-eh-teaser div.action-button-dark a:hover span.arrow-left-black,
div.sn-eh-teaser a.action-button-dark:hover span.arrow-left-black {
    opacity: 1;
}

div.sn-lehrgangstermine div.action-button-dark a span.arrow-left-white,
div.sn-lehrgangstermine a.action-button-dark span.arrow-left-white {
    opacity: 1;
}

div.sn-lehrgangstermine div.action-button-dark a span.arrow-left-black,
div.sn-lehrgangstermine a.action-button-dark span.arrow-left-black {
    opacity: 0;
}

div.sn-lehrgangstermine div.action-button-dark a:hover span.arrow-left-white,
div.sn-lehrgangstermine a.action-button-dark:hover span.arrow-left-white {
    opacity: 0;
}

div.sn-lehrgangstermine div.action-button-dark a:hover span.arrow-left-black,
div.sn-lehrgangstermine a.action-button-dark:hover span.arrow-left-black {
    opacity: 1;
}

.action-button-dark-disabled a {
    background-color: gray;
    cursor: not-allowed !important;
}
a.action-button-dark-disabled {
    cursor: not-allowed !important;
}


a.action-button-light,
button.action-button-light,
div.action-button-light a,
div.thwmscf-buttons input.button-prev {
    cursor: pointer;
    display: inline-block;
    align-content: center;
    padding: 0 35px 0 35px;
    color: #2B231C;
    min-height: 85px;
    border: none;
    text-decoration: none;
    position: relative;
    overflow: hidden;
    z-index: 1;
    border-radius: 0 !important;
}

div.action-button-light a::before,
button.action-button-light::before,
a.action-button-light::before,
div.thwmscf-buttons input.button-prev::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #D1C2B5;
    transform: scaleX(0);
    transform-origin: left;
    transition: transform 0.5s ease;
    z-index: -1;
}

button.action-button-light[disabled],
div.thwmscf-buttons .button-prev[disabled],
div.thwmscf-buttons .button-next[disabled] {
    color: #ddd;
}
div.thwmscf-buttons .button-next[disabled] {
    background-color: #eb223120;
    color: #bbb;
}

div.thwmscf-buttons .button-prev[disabled]::before,
div.thwmscf-buttons .button-next[disabled]::before {
    content: none;
}

div.action-button-light a:hover::before,
a.action-button-light:hover::before,
button.action-button-light:hover::before,
div.thwmscf-buttons input.button-prev:hover::before {
    transform: scaleX(1);
}

span.arrow-left-white {
    width: 50px;
    background-image: url("assets/images/buttons/feather-arrow-left-white.svg");
    background-size: 50px;
    background-repeat: no-repeat;
    background-position: top left;
    display: inline-block;
    height: 13px;
    margin-left: 15px;
    top: 2px;
    position: relative;
    z-index: 1;
}

span.arrow-left-black {
    width: 50px;
    background-image: url("assets/images/buttons/feather-arrow-left-black.svg");
    background-size: 50px;
    background-repeat: no-repeat;
    background-position: top left;
    display: inline-block;
    height: 13px;
    margin-left: 15px;
    top: 2px;
    position: relative;
    z-index: 1;
}

span.arrow-right-black {
    width: 50px;
    background-image: url("assets/images/buttons/feather-arrow-left-black.svg");
    background-size: 50px;
    background-repeat: no-repeat;
    background-position: top left;
    display: inline-block;
    height: 13px;
    margin-left: 15px;
    top: 2px;
    position: relative;
    z-index: 1;
}

a.action-button-light.card-button,
button.action-button-light.card-button,
div.action-button-light.card-button a {
    min-height: 62px;
}

a.action-button-light,
div.action-button-light a {
    text-decoration: none;
    color: #2B231C;
    background-color: #F4EEE9;
}

a.action-link-arrow {
    margin-top: 25px;
    display: inline-block;
    text-decoration: none;
    color: var(--unnamed-color-2b231c);
    opacity: 0.5;
    transition: opacity 0.5s ease;
}

span.arrow-left-gray {
    width: 50px;
    background-image: url("assets/images/buttons/feather-arrow-left-white.svg"); /* gray */
    background-size: 50px;
    background-repeat: no-repeat;
    background-position: top left;
    display: inline-block;
    height: 13px;
    margin-left: 15px;
    top: 2px;
    position: relative;
    z-index: 1;
}

a.action-link-arrow span.arrow-left-black {
    opacity: 0.5;
    transition: opacity 0.5s ease;
}
a.action-link-arrow:hover,
a.action-link-arrow:hover span.arrow-left-black {
    opacity: 1;
}

.c_leistungen {
    width: 100%;
}

.c_leistung {
    width: 100%;
    display: flex;
    margin-top: 6em;
    align-items: center;
}

.leistung_bild {
    width: 60%;
}
.leistung_bild_odd {
    text-align: right;
}
.leistung_info {
    width: 39%;
    vertical-align: top;
}
 .leistung_info h2 {
     margin-top: 0;
 }
.leistung_info_odd {
    padding-left: 3em;
}

.leistung_bild, .leistung_info {
    display: inline-block;
}

.leistung_text {
    width: 100%;
    margin-bottom: 50px;
}

div.c-scroll-kacheln {
    width: 100%;
    margin: auto;
    overflow-x: hidden;
    overflow-y: hidden;
    white-space: nowrap;
}

div.c-lehrgangsinhalte {
    white-space: nowrap;
}

div.c-scroll-kacheln div.scroll-kachel {
    display: inline-block;
    width: 25%;
    max-width: 278px;
}

div.kachel-rot,
div.kachel-blau,
div.kachel-grau,
div.scroll-kachel div.kachel {
    padding: 0;
    display: inline-block;
}

div.kachel-rot {
    background-color: var(--unnamed-color-ef4854);
    color: white;
}

div.kachel-blau {
    background-color: var(--sn-bg-color-blue);
    color: #2B231C;
}

div.sn-flex-umbruch {
    /*display: flex;
    flex-wrap: wrap;
    column-gap: 35px;
    row-gap: 60px;*/
    display: grid;
    column-gap: 35px;
    row-gap: 60px;
    overflow-x: hidden;
    justify-content: start;
    width: 100%;
    grid-template-columns: repeat(3, minmax(400px, 1fr));
}

div.kachel-blau-in-flex {
    min-width: 400px;
}

div.kachel-blau-in-flex div.c-img {
    display: flex;
}

div.kachel-blau-in-flex div.c-img img {
    display: block;
    object-fit: cover;
    width: 100%;
    height: 100%;
}

div.kachel-grau {
    background-color: #F4EEE9;
    color: #2B231C;
}

div.kachel-rot p,
div.kachel-blau p,
div.kachel-grau p,
div.scroll-kachel div.kachel p.first {
    margin: 0;
    padding: 0 0 10px 0;
}

div.scroll-kachel div.kachel p.second {
    margin: 0;
    padding: 15px 0 0 0;
    min-height: 80px;
    white-space: wrap !important;
}

div.kachel-rot h4,
div.kachel-blau h4,
div.kachel-grau h4,
div.scroll-kachel div.kachel h4.second {
    margin: 0 0 15px 0;
    padding: 0;
}

div.kachel {
    cursor: pointer;
}

div.kachel-header {
    padding: 40px 40px 20px 40px;
}

div.kachel-header h4.first,
div.kachel-header h3.first {
    margin: 0;
    padding: 0;
}

div.kachel-blau.kachel-blau-standort div.kachel-header {
    padding-bottom: 35px;
}

div.kachel-blau.kachel-blau-standort h4 {
    padding: 0;
    margin: 0;
}

div.kachel-blau.kachel-blau-standort p {
    margin: 0;
    padding: 0;
}

div.kachel-blau.kachel-blau-standort p.termin {
    margin: 0 0 25px 0;
    padding: 15px 0 0 0;
}

div.kachel-blau.kachel-blau-standort c-img {
    display: block;
}

div.kachel-blau.kachel-blau-standort a.action-button-full-w {
    height: 50px;
    margin-top: 0;
    text-align: center;
}

.sn-bildergallerie {
    display: grid !important;
    width: 100%;
    gap: 35px !important;
    grid-template-columns: repeat(4, minmax(300px, 1fr));
    margin: 50px 0 60px 0;
    overflow: hidden;
}
.sn-bildergallerie figure {
    width: 100% !important;
}

.sn-eh-klassisch div.c-img,
.sn-eh-kind div.c-img,
.sn-eh-hund div.c-img,
.sn-fortbildung-kachel div.c-img,
.sn-eh-filiale-kachel div.c-img {
    height: 170px;
    width: 100%;
    background-repeat: no-repeat;
    background-size: 100% auto;
    background-position: center bottom;
}

.sn-eh-klassisch div.c-img {
    background-image: url("assets/images/eh_kachel_dummy.png");
    background-repeat: no-repeat;
}

.sn-eh-kind div.c-img {
    background-image: url("assets/images/eh_kachel_dummy.png");
    background-repeat: no-repeat;
}

.sn-eh-hund div.c-img {
    background-image: url("assets/images/eh_kachel_dummy.png");
    background-repeat: no-repeat;
}

.sn-fortbildung-kachel div.c-img {
    background-image: url("assets/images/eh_kachel_dummy.png");
    background-repeat: no-repeat;
}

.c-team {
    margin-bottom: 30px;
}

.c-team-abteilungen {
    margin-top: 20px;
    margin-bottom: 40px;
    display: inline-block;
}

.sn_team_mitglied h4 {
    margin: 20px 0 3px 0;
}

.sn_team_mitglied p {
    margin: 0 0 0 0;
}

.c-team-mitglieder {
    width: 100%;
    margin-top: 40px;
    display: grid;
    grid-template-columns: repeat(4, minmax(278px, 1fr));
    row-gap: 55px;
    column-gap: 29px;
}

.sn_team_mitglied img {
    width: 100%;
}

.c-sn-icon-img {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    width: 70px;
    height: 70px;
    background-color: #F4EEE9;
}

.c-icon-texte-vertical .icon-text {
    margin-top: 25px;
    text-align: center;
    width: 80%;
}

.c-icon-texte-vertical .icon-text:not(:first-child) {
    margin-top: 4em;
}

.c-icon-texte-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    row-gap: 60px;
    column-gap: 75px;
}

.wp-block-columns.c-icon-texte-auto,
.wp-block-columns.c-icon-texte-float,
.wp-block-column.c-icon-texte-float,
.wp-block-columns.c-icon-texte-float-eh-kurse {
    display: flex;
    flex-wrap: wrap !important;
    gap: 80px;
    row-gap: 40px;
    margin: 0 auto;
    max-width: 1300px;
    min-width: 1024px;
}

.wp-block-columns.c-icon-texte-float > .wp-block-column.icon-text {
    flex: 1 1 calc(50% - 45px) !important;
    flex-basis: calc(50% - 45px) !important;
    flex-grow: 0 !important;
}

.wp-block-columns.c-icon-texte-float-eh-kurse > .wp-block-column.icon-text {
    flex: 1 1 calc(30% - 25px) !important;
    flex-basis: calc(30% - 25px) !important;
    flex-grow: 0 !important;
}

.wp-block-column.icon-text {
    flex: 1 1 calc(50% - 45px);
    min-width: 0;
}

.wp-block-columns.c-icon-texte-auto > .wp-block-column.icon-text {

}

figure.wp-block-table {
    margin: 0;
}
.table-bigger-text {
    font-size: var(--font-size-main-motto);
    line-height: var(--line-spacing-main-motto);
}

.c-icon-texte-ablauf-float {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(0, 1fr));
    gap: 20px;
    width: 100%;
    margin: auto;
    margin-top: 30px;
    margin-bottom: 20px;
}

@media (max-width: 768px) {
    .wp-block-columns.c-icon-texte-float > .wp-block-column.icon-text {
        flex: 1 1 100% !important;
    }
}

@media (min-width: 1200px) {
    .wp-block-column.icon-text {
        flex: 1 1 calc(33.333% - 20px);
    }
}

div.bordered-tab-contents div.c-icon-texte-float {
    margin-top: 60px;
}

div.c-schulungsraeume-kacheln h4, div.c-unterkuenfte-kacheln h4 {
    margin-top: 1em;
    padding: 0 2em 0 1.6em;
}

div.c-schulungsraeume-kacheln div.kachel p, div.c-unterkuenfte-kacheln div.kachel p {
    margin-top: 3em;
}

.c-scroll-img {
    overflow: hidden;
    width: 100%;
    height: 170px;
}

div.c-unterkuenfte-kacheln {
    margin-top: 2.5em;
}

div.c-unterkuenfte-kacheln div.kachel {
    width: 50%;
}

p.rote-box-subtitle {
    margin-top: -35px;
    margin-bottom: 40px;
    text-align: center;
    width: 100%;
}

.article-full .main-title, .content-area .main-title {
    margin-bottom: 0.05em;
    margin-top: 20px;
}

.article-full .main-subtitle, .content-area .main-subtitle, p.main-subtitle {
    margin-top: 0;
    margin-bottom: 0.5em;
}

.article-full .main-subtitle, .content-area p.main-subtitle {
    margin-top: 0;
    margin-bottom: 0.05em;
    hyphens: auto;
    -webkit-hyphens: auto;
    -ms-hyphens: auto;
    overflow-wrap: break-word;
}

.backlink {
    margin-bottom: -20px;
    position: relative;
    display: inline-block;
}
.backlink a {
    text-decoration: none;
    padding-left: 55px;
    color: #2B231C;
    background-image: url(assets/images/feather-arrow-right.png);
    background-size: 40px;
    background-repeat: no-repeat;
    background-position: center left;
}

.kontakt_und_map {
    margin-top: 5em;
    background-color: #D5E4F8;
    padding: 60px;
}
.kontakt_und_map p {
    font-size: var(--font-size-h3);
    line-height: var(--line-spacing-main-motto);
}
.c-kontakt-map {
    height: 350px;
}

.sn-eh-anmeldung .c-kontakt-map {
    height: 180px;
}
.kontakt_und_map iframe,
.c-kontakt-map iframe {
    height: 100%;
}

hr.wp-block-separator {
    border: none;
    border-top: 1px solid #F4EEE9;
    margin: 80px 0 80px 0;
}

hr.wp-block-separator.sn-footer {
    border: none;
    border-top: 1px solid #F4EEE9;
    margin: 40px 0 30px 0;
}

.move-top {
    margin-top: -20px !important;
}

div.c-lehrgangsinhalte div.scroll-kachel {
    width: auto;
    display: table-cell;
    max-width: unset;
}

.sn_lehrgangsinhalt {
    margin-right: 20px;
}
.sn_lehrgangsinhalt .sn-popup-title {
    background-color: var(--unnamed-color-2b231c);
    padding: 25px 25px;
    color: #F4EEE9;
    text-align: center;
    cursor: pointer;
}

.sn_lehrgangsinhalt .sn-popup-content {
    display: none;
    position: absolute;
    z-index: 1000;
    background-color: var(--unnamed-color-2b231c);
    color: #F4EEE9;
    padding: 6px 12px;
    white-space: normal;
    width: 380px;
}

.sn_lehrgangsinhalt .sn-popup-content p {
    width: 300px;
}

ul.sn-link-liste {
    list-style: none;
    padding: 0 !important;
    margin: 0 !important;
}

ul.sn-link-liste li {
    padding: 15px 50px 15px 0;
    /*background-color: var(--unnamed-color-2b231c);*/
    background-image: url("assets/images/feather-arrow-left.svg");
    background-size: 40px;
    background-repeat: no-repeat;
    background-position: center right;
    /*border-bottom: 1px solid #F4EEE940;*/
    border-bottom: 1px solid #2b231c40;
    cursor: pointer;
}
ul.sn-link-liste li:first-child {
    padding-top: 10px;
}
ul.sn-link-liste li:last-child {
    padding-bottom: 10px;
}


ul.sn-link-liste li:last-child {
    border-bottom: none;
}

ul.sn-link-liste li a {
    /*color: #F4EEE9AA;*/
    color: var(--sn-bg-dunkelbraun);
    text-decoration: none;
}

ul.sn-link-liste:hover li a {
    /*color: #F4EEE960;*/
    color: #2b231c60;
}

ul.sn-link-liste li:hover a {
    /*color: #F4EEE9;*/
    color: #2b231c;
}

.sn-nummerierung {
    background-color: #F4EEE9;
    width: 50px;
    height: 50px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #2B231C;
    margin: 0;
}

.sn_ablauf_weiter {
    background-image: url("assets/images/feather-arrow-left.png");
    background-position: right top 15px;
    background-repeat: no-repeat;
}

.sn-blaue-box {
    width: 90%;
    padding: 60px;
    background-color: #D5E4F8;
    align-self: flex-start;
}

.sn-blaue-box h2,
.sn-blaue-box h3 {
    margin-top: 20px;
}

.sn-blaue-box h2:first-child,
.sn-blaue-box h3:first-child {
    margin-top: 0;
}

.sn-blaue-box-breit {
    width: 100%;
}

div.sn-blaue-box.sn-motto {
    padding: 60px;
    margin-bottom: 0;
}

div.sn-blaue-box.sn-motto p.sn-motto:last-child {
    margin-bottom: 0;
}

.sn-blaue-box-breit .wp-block-column {
    padding: 20px;
}

.sn-blaue-box-breit .wp-block-table {
    margin: 0;
}

.sn-blaue-box-breit .sn-h-blaue-box-bewertungen {
    padding-top: 0px;
}

.sn-no-paddings .wp-block-column {
    padding: 0 !important;
}

.sn-eh-anmeldung {
    margin-bottom: 0;
}

.sn-eh-anmeldung .sn-blaue-box {
    margin-top: 40px;
    padding: 30px;
}
.sn-eh-anmeldung .sn-blaue-box h5:first-child {
    margin-top: 0;
}

div.sn-unterkunft-info {
    margin-top: 40px;
    margin-bottom: 60px;
}

/* sn-unterkunft-info sn-blaue-box sn-blaue-box-breit sn-no-paddings c-full-width-out */

div.sn-unterkunft-info div.wp-block-columns {
    width: 100%;
}

div.sn-unterkunft-info ul {
    margin-top: 40px;
    margin-bottom: 0;
}
div.sn-unterkunft-info ul li:last-child {
    margin-bottom: 0;
}
div.sn-unterkunft-info .wp-block-buttons,
div.sn-unterkunft-info div.action-button-dark {
    width: 100%;
}
div.sn-unterkunft-info .wp-block-buttons {
    margin-top: 60px;
    height: 85px;
    overflow: clip;
}


.table-no-border, .table-no-border tr, .table-no-border tr td {
    border: none;
}

.table-no-border tr, .table-no-border tr td {
    padding-bottom: 0;
    padding: 20px 10px 20px 0;
}

.table-no-border tr:first-child td {
    padding-top: 0;
}

.table-70-30 tr td:first-child {
    padding-left: 0;
    width: 70%;
    font-weight: bold;
}

.table-30-70 tr td:first-child {
    padding-left: 0;
    width: 30%;
    font-weight: bold;
}

.table-dotted-bottom-border tr {
    border-bottom: 1px solid #F4EEE9;
}
.table-dotted-bottom-border tr:last-child {
    border-bottom: none;
}

.resptabs li.active {
    border-bottom: 5px solid var(--unnamed-color-ef4854);
}

.btabs .tab-main-container {
    font-size: 1em !important;
}

.btabs .tab-main-container li a {
    padding: 0;
    margin: 0;
}

.btabs .tab-main-container a:focus {
    outline: none !important;
}

.tab_set1  .nav-tabs >li.LiTab a:hover {

}

.btabs .nav > li {
    margin-right: 25px !important;
}

.btabs .nav > li > a:hover {
    margin-left: -1px;
}

.btabs .nav-tabs {
    border-bottom: 1px solid var(--unnamed-color-ef4854) !important;
}

.btabs .nav > li > a {
    top: 4px;
    padding: 0 0 14px 0 !important;
    color: #2B231C80;
    font-size: var(--font-size-h3);
}

.btabs  .bordered-tab-contents > .tab-content > .tab-pane {
    padding: 0 !important;
}

.btab .nav-tabs > li.active > a, .btab .nav-tabs > li.active > a:hover, .btab .nav-tabs > li.active > a:focus{
    margin-top: 2px;
    border-bottom: 0px;
}

.btab .nav-tabs > li > a, .btab .nav-tabs > li > a:hover, .btab .nav-tabs > li > a:focus{
    margin-top: 2px;
}

.achtung-box {
    background-color: var(--sn-bg-hellblau);
    color: var(--sn-bg-dunkelbraun);
    padding: 90px 60px 50px 60px;
    background-image: url("assets/images/feather/alert-circle.svg");
    background-position: left 60px top 50px;
    background-repeat: no-repeat;
}

.resp-easy-accordion .resp-tab-content {
    border: none !important;
    padding-top: 0 !important;
}

.resp-arrow {
    display: none;
}

.resp-accordion {

}

h2.resp-accordion,
h2heading.resp-accordion
{
    border-top: 1px solid var(--sn-bg-perlweiss) !important;
    padding: 30px 30px 30px 0 !important;
    margin: 0;
    cursor: pointer;
}
h2.resp-accordion:first-child,
h2heading.resp-accordion:first-child {
    border-top: none !important;
}

div.resp-tabs-container:last-child {
    border-bottom: 1px solid var(--sn-bg-perlweiss) !important;
}

div.sn-accordion-blue h2.resp-accordion,
div.sn-accordion-blue h2heading.resp-accordion
{
    padding: 30px 60px;
    margin-bottom: 10px;
    font-weight: normal;
}

h2.resp-tab-active,
h2heading.resp-tab-active
{
    font-weight: bold;
}

span.resp-arrow {
    border: none !important;
    background-image: url(assets/images/feather-arrow-down.svg) !important;
    background-position: center center !important;
    background-repeat: no-repeat !important;
    background-size: 22px 22px !important;
    width: 40px;
    height: 40px;
    display: inline-block;
    margin-top: -10px;
    transform: rotate(0deg);
    transition: transform 0.5s ease !important;
    transform-origin: center;
    margin-right: -40px !important;
}

h2.resp-tab-active span.resp-arrow,
h2heading.resp-tab-active span.resp-arrow {
    transform: rotate(-180deg);
    border: none !important;
}

.c-faq > div {
    flex-grow: 1;
}

div.sn-accordion-faq h2.resp-accordion,
div.sn-accordion-faq h2heading.resp-accordion
{
    font-weight: normal;
    padding-left: 0;
}

div.sn-accordion-blue h2.resp-accordion,
div.sn-accordion-blue h2heading.resp-accordion {
    padding-left: 15px !important;
}

div.sn-accordion-blue h2.resp-tab-active,
div.sn-accordion-blue h2heading.resp-tab-active
{
    padding: 30px 40px;
    color: var(--sn-bg-dunkelbraun);
    font-weight: bold;
}

div.sn-accordion-blue h2,
div.sn-accordion-blue h2heading {
    background-color: #d5e4f8;
}

div.sn-accordion-blue .resp-tab-content {
    padding: 30px 40px;
    margin-bottom: 25px;
    background-color: #d5e4f8;
}

div.sn-accordion-blue div.resp-tabs-container:last-child {
    border-bottom: none !important;
}

div.sn-accordion-blue span.resp-arrow {
    margin-right: -30px !important;
}

div.sn-accordion-faq .resp-tab-content {
    font-weight: normal;
}

.sn-right-space-30 {
    padding-right: 30px;
}

ul.sn-liste-pfeil-rot {
    list-style: none;
    padding-left: 0;
}

ul.sn-liste-pfeil-rot li {
    background-image: url("assets/images/feather-red/arrow-right-long.svg");
    background-repeat: no-repeat;
    background-position: -10px 0;
    background-size: 44px 16px;
    padding-left: 40px;
    margin-bottom: 8px;
}

.sn-ul-small-padding {
    padding-left: 15px;
}

.scroll-arrow-right {
    text-align: right;
    margin-bottom: 10px;
    min-height: 55px;
}

.move-up-40 {
    position: relative;
    margin-bottom: -30px;
    top: -40px;
}

.move-up-15 {
    position: relative;
    margin-bottom: -5px;
    top: -15px;
}

.form-row,
.woocommerce form .form-row {
    margin-bottom: 10px;
    margin-top: 10px;
    padding: 0;
}

.form-row.one-column > p,
.form-row.two-columns > p,
.form-row.three-columns > p,
.form-row.four-columns > p,
.form-row.five-columns > p {
    display: flex;
    gap: 5px;
    margin: 0;
}

.form-row.one-column > div,
.form-row.two-columns > div,
.form-row.three-columns > div,
.form-row.four-columns > div,
.form-row.five-columns > div {
    display: flex;
    gap: 10px;
    margin: 0;
}

.form-row.one-column > div.sn-file-upload-multiple,
.form-row.two-columns > div.sn-file-upload-multiple,
.form-row.three-columns > div.sn-file-upload-multiple,
.form-row.four-columns > div.sn-file-upload-multiple,
.form-row.five-columns > div.sn-file-upload-multiple,
.form-row.one-column > div.sn-file-upload,
.form-row.two-columns > div.sn-file-upload,
.form-row.three-columns > div.sn-file-upload,
.form-row.four-columns > div.sn-file-upload,
.form-row.five-columns > div.sn-file-upload {
    display: inline-block;
}

.sn-filter-reset {
    width: 100%;
    padding-left: 35px;
    padding-top: 15px;
}
.filter-toggler {
    display: none;
}

.sn-formular input.submit-refresh {
    cursor: pointer;
    border: none;
    background-color: white;
    width: 24px;
    height: 24px;
    background-image: url("assets/images/feather/refresh-ccw.svg");
    background-repeat: no-repeat;
    background-position: center center;
    margin-right: 20px;
}

.form-row.one-column .wpcf7-form-control-wrap {
    flex: 1 1 100%;
}

.form-row.two-columns .wpcf7-form-control-wrap {
    flex: 1 1 calc(50% - 16px);
}

.form-row.three-columns .wpcf7-form-control-wrap {
    flex: 1 1 calc(33.333% - 16px);
    margin: 0 !important;
    gap: 14px;
}

.form-row.four-columns .wpcf7-form-control-wrap,
.form-row.four-columns p.wrap {
    flex: 1 1 calc(25% - 16px);
    margin: 0 !important;
    gap: 14px;
}

.form-row.five-columns .wpcf7-form-control-wrap,
.form-row.five-columns p.wrap {
    flex: 1 1 calc(20% - 16px);
    margin: 0 !important;
    gap: 14px;
}

.woocommerce form .form-row .input-text,
.sn-formular select,
.sn-formular input[type="text"],
.sn-formular input[type="tel"],
.sn-formular input[type="email"],
.sn-formular input[type="date"],
.sn-formular textarea {
    width: 100% !important;
    padding: 12px !important;
    box-sizing: border-box !important;
    height: 3.5em !important;
    background-color: var(--sn-bg-perlweiss) !important;
    color: var(--sn-bg-dunkelbraun) !important;
    border: none !important;
    border-radius: 0;
}
.form-row, .woocommerce form .form-row {
    margin-top: 0;
}

#billing_country_field,
#shipping_country_field {
    visibility: hidden;
    position: absolute;
}
#order_comments {
    height: 120px !important;
}

.sn-formular select:focus,
.sn-formular input[type="text"]:focus,
.sn-formular input[type="text"]:focus-visible,
.sn-formular input[type="text"]:focus-within,
.sn-formular input[type="tel"]:focus,
.sn-formular input[type="tel"]:focus-visible,
.sn-formular input[type="tel"]:focus-within,
.sn-formular input[type="email"]:focus,
.sn-formular input[type="date"]:focus,
.sn-formular input[type="password"]:focus,
.sn-formular textarea:focus,
.woocommerce form .form-row select:focus,
.woocommerce form .form-row input[type="text"]:focus,
.woocommerce form .form-row input[type="password"]:focus {
    border: 1px solid #00000040 !important;
    background-color: white !important;
    color: #2B231C !important;
    border-radius: 0 !important;
    outline: none !important;
    box-shadow: none !important;
}

.sn-formular .sn-form-elem-label {
    padding-left: 10px;
    padding-right: 10px;
    align-content: center;
    border: 1px dashed #2b231c20;
    color: #888787;
    background-color: #ffffff;
    padding-top: 3px;
}

.sn-v-centered-content {
    align-content: center;
}

.sn-formular textarea {
    height: auto;
}

.sn-formular input.wpcf7-quiz {
    width: 150px;
}

.sn-formular .quiz-antwort {
    width: 150px;
}

.form-row select,
.form-row .wpcf7-select {
    min-width: 0;
    width: 100%;
    box-sizing: border-box;
}

@media (max-width: 800px) {
    .form-row {
        grid-template-columns: 1fr !important;
    }
}

.c-sn-submit button {
    margin-top: 30px;
}

.form-row .wpcf7-form-control-wrap br,
.sn-formular .c-sn-submit br {
    display: none;
}

.form-row .wpcf7-form-control {
    width: 100%;
    box-sizing: border-box;
}

.sn-formular #sn-suchbegriff {
    padding-left: 50px !important;
    background-image: url("assets/images/feather/search.svg");
    background-repeat: no-repeat;
    background-position: center left 15px;
}

.sn-formular select:invalid {
    color: #878584;
    font-weight: 400;
}

.sn-formular select:invalid:focus {
    color: #878584;
    font-weight: 400;
}

.c-sn-quiz {
    display: flex;
    margin: 0 !important;
}
.sn-quiz {
    background-color: var(--sn-bg-hellblau);
    padding: 30px 45px;
    align-self: flex-start;
}
.sn-quiz .wpcf7-not-valid-tip {
    margin-top: 3px;
}

.sn-quiz p {
    margin-bottom: 1em;
}
.sn-quiz br {
    /*display: none;*/
}

.sn-formular input.action-button-red {
    cursor: pointer;
    min-height: 85px;
    color: var(--sn-bg-perlweiss);
    height: 85px;
    border: none;
    position: relative;
    overflow: hidden;
    z-index: 1;
}

.sn-formular button.action-button-red,
button.action-button-red,
a.action-button-red,
div.thwmscf-buttons input.button-next {
    cursor: pointer;
    color: var(--sn-bg-perlweiss);
    min-height: 85px;
    border: none;
    background-color: var(--unnamed-color-ef4854);
    position: relative;
    overflow: hidden;
    z-index: 1;
    border-radius: 0 !important;
}

div.thwmscf-buttons button.button-next {
    padding: 0 35px 0 35px;
    margin-left: 10px;
}

.sn-formular button.action-button-red::before,
button.action-button-red::before,
a.action-button-red::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #eb2231;
    transform: scaleX(0);
    transform-origin: left;
    transition: transform 0.5s ease;
    z-index: -1;
}

.sn-formular button.action-button-red:hover::before,
a.action-button-red:hover::before,
button.action-button-red:hover::before {
    transform: scaleX(1);
}

.c-sn-submit {
    flex: 1 1 calc(50% - 16px);
    margin-left: 25px;
}

.c-sn-submit input[type="submit"] {
    margin-top: 15px;
    width: 100%;
}

.sn-formular input[type="checkbox"] {
    width: 20px;
    height: 20px;
}

.sn-formular a.sn-legal {
    /*text-decoration: none;*/
    color: var(--unnamed-color-ef4854);
}

.sn-formular span.wpcf7-checkbox span.wpcf7-list-item,
.sn-formular .wpcf7-acceptance span.wpcf7-list-item {
    margin: 0 0 15px 0;
}

.sn-formular .sn-file-upload,
.sn-formular .sn-file-upload-multiple {
    display: inline-block;
    cursor: pointer;
    position: relative;
}

.sn-formular .sn-file-upload {
    height: 150px;
    background-color: #F4EEE9;
    border: 1px dashed #000000A6;
    margin-top: -9px !important;
    width: 100%;
}

.sn-formular .sn-file-upload-multiple {
    min-height: 120px;
    background-color: #F4EEE9;
    border: 1px dashed #000000A6;
    margin-top: -9px !important;
    width: 100%;
    padding-bottom: 40px;
}

.sn-formular .sn-file-upload input[type="file"] {
    position: absolute;
    width: 100%;
    height: 100%;
    opacity: 0;
    z-index: 2;
    cursor: pointer;
}

.sn-formular .sn-file-upload p {
    height: inherit;
}

.sn-file-upload .sn-file-upload-label {
    position: absolute;
    width: 100%;
    text-align: center;
    padding-top: 80px;

    background-image: url("assets/images/feather/upload-cloud.svg");
    background-repeat: no-repeat;
    background-position: center bottom 35%;
}

.sn-file-upload-multiple .sn-file-upload-label {
    display: block;
    width: 100%;
    text-align: center;
    padding-top: 50px;
    background-image: url("assets/images/feather/upload-cloud.svg");
    background-repeat: no-repeat;
    background-position: center bottom 55%;
}

div#mfcf7_zl_multifilecontainer p {
    display: block !important;
    text-align: center;
}

#mfcf7_zl_add_file,
label[for="mfcf7_zl_add_file"] {
    display: none !important;
}

.checkbox-label {
    display: block;
}

.checkbox-label label {
    display: block;
    padding-right: 10px;
    padding-left: 31px;
}

.c-team-abteilungen,
.c-sn-tabs {
    position: relative;
    z-index: 1000;
}

.c-sn-tabs {
    margin-top: 65px;
    margin-bottom: 50px;
}

.wp-block-buttons .sn-sprungbutton a.wp-block-button__link,
.c-team-abteilungen .team-abteilung,
.sn-tab {
    background-color: #F4EEE9;
    color: #2B231CD9;
    border-radius: 25px !important;
    cursor: pointer;
}

.c-team-abteilungen .team-abteilung,
.sn-tab {
    padding: 17px 25px;
    margin-right: 15px;
}

.c-team-abteilungen .team-abteilung:hover,
.sn-tab:hover {
    background-color: #D1C2B5;
}

.c-team-abteilungen .team-abteilung.active,
.sn-tab.active {
    background-color: var(--sn-signalrot);
    color: var(--sn-bg-perlweiss);
}

div.sn_team_mitglied-img-wrapper {
    height: 400px;
    max-height: 400px;
    overflow: hidden;
}

.sn-star-rating-off {
    display: inline-block;
    width: 20px;
    height: 20px;
    margin-right: 3px;
    background-size: contain;
    background-image: url("assets/images/feather/star.svg");
    background-repeat: no-repeat;
    background-position: center center;
}

.sn-star-rating-on, .sn-star-rating-on-klein {
    display: inline-block;
    margin-right: 3px;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center center;
}

.sn-star-rating-on {
    width: 20px;
    height: 20px;
    background-image: url("assets/images/sterne/feather-star.svg");
}

.sn-star-rating-on-klein {
    background-image: url("assets/images/sterne/ionic-ios-star.svg");
}

.sn-h-blaue-box-bewertungen {
    margin-top: 40px;
    background-image: url("assets/images/g.png");
    background-repeat: no-repeat;
    background-position: right center;
    font-size: 1.3em;
}

.sn-lehrgangstermine {
    margin-top: 40px;
    margin-bottom: 20px;
    max-height: 490px;
    overflow-y: scroll;
}

.sn-lehrgangstermine .sn-lehrgangstermin {
    background-color: #EF4854;
    color: #F4EEE9;
    padding: 20px 30px;
    contain: content;
    display: flex;
    align-items: end;
    gap: 80px;
}
.sn-lehrgangstermine .sn-lehrgangstermin:not(:first-child) {
    margin-top: 10px;
}
.sn-lehrgangstermine .sn-lehrgangstermin span.container {
    float: left;
}

.sn-lehrgangstermine .sn-lehrgangstermin span.container:nth-child(1) {
    width: 15%;
}

.sn-lehrgangstermine .sn-lehrgangstermin span.container:nth-child(2) {
    width: 30%;
}

.sn-right-space-30 .sn-lehrgangstermine .sn-lehrgangstermin span.container:nth-child(2) {
    width: 15%;
}

.sn-lehrgangstermine .sn-lehrgangstermin span.action,
.sn-lehrgangstermine .sn-lehrgangstermin div.action {
    margin-left: auto;
    align-self: center;
}

.sn-lehrgangstermine .sn-lehrgangstermin span.val,
.sn-lehrgangstermine .sn-lehrgangstermin span.lbl {
    display: block;
}
.sn-lehrgangstermine .sn-lehrgangstermin span.val {
    margin-top: 0.3em;
    margin-bottom: 0.15em;
}
.sn-lehrgangstermine .sn-lehrgangstermin span.lbl {
    margin-bottom: 0;
    margin-top: -5px;
}

div.sent-check-ok {
    padding-right: 30%;
    background-image: url("assets/images/feather-lightgreen/check-circle.svg");
    background-repeat: no-repeat;
    background-position: top 20px right;
    background-size: 30%;
    min-height: 400px;
}

#quittung_anfordern_iframe {
    height: 570px;
}

@media (max-width: 992px) {
    #quittung_anfordern_iframe {
        height: 870px;
    }
}

div.sn-no-margin,
p.sn-no-margin,
hr.sn-no-margin{
    margin: 0 !important;
}

article.sn-lg div.bildungstraeger {
    margin-top: 100px;
}

div.bildungstraeger-short > div {
    justify-content: flex-end;
    gap: 9%;
}

article.sn-lg div.sn-blaue-box {
    margin-top: 30px;
}

article.sn-lg div.sn-blaue-box li,
.sn-liste-einrueckung-links li {
    margin-left: 35px;
}

div.sn-lg-teaser {
    background-color: #F4EEE9;
    padding: 35px 60px 30px 60px;
    margin-bottom: 30px;
}

div.sn-lg-teaser figure {
    margin-right: -110px;
    margin-bottom: 0;
    overflow: hidden;
    max-height: 448px;
}

div.sn-lg-teaser figure img {
    width: 100%;
}

div.sn-lg-teaser ul {
    margin-top: 50px;
    margin-bottom: 50px;
}

div.sn-lg-teaser div.sn-lg-teaser-text {
    position: relative;
    top: -15px;
    width: 100%;
    margin-bottom: 15px;
}

div.sn-lg-teaser div.sn-lg-teaser-text div.wp-block-column {
    height: fit-content;
}

div.sn-lg-teaser div.sn-lg-teaser-text p {
    margin-bottom: 40px;
}

div.sn-eh-teaser {
    background-color: var(--sn-signalrot);
    color: var(--sn-bg-perlweiss);
    padding: 35px 60px 30px 60px;
}

div.sn-eh-teaser div.wp-block-sn-roter-header-block * {
    color: var(--sn-bg-perlweiss);
}

div.sn-eh-teaser figure {
    margin-right: -110px;
    max-height: 448px; /* 396 */
    overflow: hidden;
}

div.sn-eh-teaser figure img {
    width: 100%;
}

div.sn-eh-teaser ul {
    margin-bottom: 40px;
}

div.sn-eh-teaser div.sn-eh-teaser-text {
    position: relative;
    top: -20px;
    width: 100%;
}

div.sn-eh-teaser div.sn-eh-teaser-text p {
    margin-bottom: 40px;
}

div.sn-eh-teaser wp-block-buttons {
    margin-bottom: 30px;
}

div.sn-eh-teaser ul.sn-liste-pfeil-rot {
    margin-top: 50px;
    margin-bottom: 50px;
}
div.sn-eh-teaser ul.sn-liste-pfeil-rot li {
    background-image: url("assets/images/feather-white/arrow-right-long.svg");
}

div.sn-eh-vorteile {
    display: flex;
    gap: 10%;
}

div.sn-eh-vorteile figure {
    display: flex;
    margin: 0;
    padding: 0;
}

div.sn-eh-vorteile figure img {
    object-fit: cover;
    display: block;
    width: 100%;
    height: 100%;
}

div.sn-vert-space {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

div.sn-lg-gray-c {
    background-color: #F4EEE9;
    padding: 20px 35px;
}

div.sn-lg-gray-c div.wp-block-columns {
    margin-bottom: 0;
}

.bg-grau {
    background-color: #F4EEE9;
}

div.action-button-dark.action-button-full-w,
div.action-button-dark.action-button-full-w button,
a.action-button-dark.action-button-full-w {
    width: 100%;
    margin-top: 20px;
    padding-left: 0;
    padding-right: 0;
    height: 85px;
}
div.action-button-dark.action-button-full-w a {
    background-image: none;
    padding-left: 0; padding-right: 0;
}

div.topmenu_action_box a.action-button-dark.action-button-full-w {
    width: 85%;
}

div.action-button-dark.action-button-full-w a img {
    vertical-align: middle;
    margin-left: 10px;
    height: 1.2em;
}

a.action-button-dark.card-button.action-button-full-w {
    height: 50px;
}

div.topmenu_action_box a.action-button-dark.card-button.action-button-full-w {
    font-size: var(--font-size-body);
    margin-top: 10px;
}

i.ph {
    font-size: 2.5em;
}

i.ph.icon-red {
    color: var(--unnamed-color-ef4854);
}
.sn-vorteile-registrierung .bg-grau {
    padding-bottom: 60px;
}
.sn-vorteile-registrierung * {
    margin-left: 20px;
    margin-right: 20px;
}

.sn-vorteile-registrierung img,
.sn-vorteile-registrierung h2 span,
.sn-vorteile-registrierung h3 span,
.sn-vorteile-registrierung h4 span,
.sn-vorteile-registrierung h5 span,
.sn-vorteile-registrierung div.wp-block-image {
    margin-left: 0;
    margin-right: 0;
}

ul.sn-liste-check {
    list-style: none;
    padding-left: 0;
}

ul.sn-liste-check li {
    background-image: url("assets/images/phosphor/check.svg");
    background-repeat: no-repeat;
    background-position: -10px -5px;
    background-size: 40px 24px;
    padding-left: 40px;
    margin-bottom: 8px;
}

div.sn-sticky {
    position: -webkit-sticky;
    position: sticky;
    top: 20px;
    align-self: flex-start;
    background-color: white;
}

.sn-trenner-vertikal {
    height: 70px;
    width: 1px;
    border-left: 1px solid #f4eee9;
}

ul.sn-m-minus-30 {
    margin-left: -30px;
}

.page-agb ol,
.page-agb ol ul {
    padding-left: 0;
    list-style: none;
}

.page-agb ol ul {
    margin-top: 2px;
}

.page-agb ol > li > ul {
    margin-left: -2px;
}

.page-agb ol {
    counter-reset: level1;
}

.page-agb ol li {
    position: relative;
    margin-left: 2em;
    margin-bottom: 0.3em;
}

.page-agb ol > li {
    counter-increment: level1;
}

.page-agb ol > li::before {
    display: inline-block;
    content: "(" counter(level1) ") ";
    position: absolute;
    left: -2em;
    width: 0.9em;
}

.page-agb ol ul > li {
    counter-increment: level2;
    margin-left: 2em;
    margin-bottom: 0.3em;

}
.page-agb ol > li > ul > li {
    text-indent: -0.9em;
}

.page-agb ol ul > li::before {
    display: inline-block;
    content: counter(level2, lower-alpha) ". ";
    width: 0.9em;
}

.page-agb ol > li > ul > li > ul {
    margin-left: -2px;
}

.page-agb ol ul ul > li {
    counter-increment: level3;
    text-indent: -0.9em;
}

.page-agb ol ul ul > li::before {
    display: inline-block;
    content: counter(level3, lower-roman) ". ";
    width: 0.8em;
}

.page-agb ol > li > ul > li > ul > li ul > li {
    content: none;
    counter-increment: none;
    counter-reset: none;
    text-indent: -0.98em;
}

.page-agb ol > li > ul > li > ul > li ul > li::before {
    display: inline-block;
    content: "• ";
    width: 0.3em;
}

.page-agb p.listenabsatz {
    text-indent: 0;
    margin-top: 0;
    margin-bottom: 0;
}

.page-agb ul.listenstil-disc > li::before {
    display: inline-block;
    content: "• ";
    width: 0.3em;
}

.icon-add-left-margin {
    margin-left: 3px;
}

button, input, optgroup, select, textarea {
    font-family: "Epilogue", "Helvetica", "Arial", sans-serif;
}

.sn-vorteile-eh {
    margin-top: 20px;
    gap: 100px;
}

.sn-vorteile-eh > div {
    min-width: 300px;
}

.sn-box-grau {
    background-color: var(--sn-bg-perlweiss);
    padding: 20px 50px 50px 50px;
}

.sn-box-weiss {
    background-color: #fff;
    padding: 20px 50px 50px 50px;
}

.eh-buchung-kacheln {
    display: flex;
    flex-wrap: wrap;
    gap: 50px;
    justify-content: center;
    margin-bottom: 0;
}

.eh-buchung-kacheln > div,
.eh-buchung-kacheln > div > div {
    margin-bottom: 0;
}

.eh-buchung-kacheln .sn-box-weiss {
    padding-top: 50px;
}

.eh-buchung-kacheln p {
    max-width: 300px;
    margin: 0 0 40px 0;
}

.sn-teaser-fakt {
    font-size: 3em;
    margin-bottom: 0.5em;

}

p.sn-header-schwarz-motto {
    margin-top: -20px;
    max-width: 55%;
}

div.sn-lehrgangslegende {
    gap: 20px;
    align-items: self-start;
}
div.sn-lehrgangslegende > * {
    flex: 1;
}
div.sn-lehrgangslegende figure {
    display: inline-block;
    margin: 0;
}
div.sn-lehrgangslegende p {
    margin-top: 5px;
    color: var(--unnamed-color-2b231c);
}

.scrollable-div {
    overflow-y: auto;
}

.scrollable-div::-webkit-scrollbar {
    width: 12px;
}

.scrollable-div::-webkit-scrollbar-track {
    background: transparent;
    margin-left: 15px;
}

.scrollable-div::-webkit-scrollbar-thumb {
    background: #aaa;
    border-radius: 6px;
}

@supports (-moz-appearance: none) {
    .scrollable-div {
        scrollbar-width: thin;
        scrollbar-color: #aaa transparent;
    }
}

div.sn-lg-zielgruppe-c,
div.sn-lg-vorteile-c {
    gap: 7em;
}

article.sn-lg div.sn-blaue-box.sn-lg-vorteile,
div.sn-blaue-box-vorteile {
    margin-top: 70px;
}
article.sn-lg div.sn-blaue-box.sn-lg-vorteile > div.wp-block-columns:last-child,
div.sn-blaue-box-vorteile  > div.wp-block-columns:last-child{
    margin-bottom: 0;
}

/* Anstände */

div.sn-lg-ab-organisation,
div.sn-lg-ab-ablauf,
div.sn-lg-ab-anmeldung,
div.sn-lg-ab-verwandte{
    height: 80px;
}
div.sn-lg-ab-faq {
    height: 100px;
}

div.sn-eh-ab-vor-logos,
div.sn-lg-ab-vor-logos {
    height: 50px;
}
div.sn-eh-ab-nach-logos,
div.sn-lg-ab-nach-logos {
    height: 40px;
}
div.sn-eh-ab-ehkurs {
    height: 80px;
}
div.sn-eh-ab-details {
    height: 100px;
}
div.sn-eh-ab-faq {
    height: 100px;
}
div.sn-eh-ab-faq-beh {
    height: 80px;
}
div.sn-eh-ab-anmeldung {
    height: 80px;
}
div.sn-eh-ab-verwandte {
    height: 80px;
}

div.sn-start-ab-h2 {
    height: 80px;
}

.sn-ab-1 {
    height: 10px;
}
.sn-ab-2 {
    height: 20px;
}
.sn-ab-3 {
    height: 30px;
}
.sn-ab-4 {
    height: 40px;
    clear: both;
}
.sn-ab-6 {
    height: 60px;
    clear: both;
}
.sn-ab-8 {
    height: 80px;
}
.sn-ab-10 {
    height: 100px;
}

.sn-formular select,
.woocommerce form .form-row select {
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    width: 100%;
    padding: 12px;
    padding-right: 30px;
    border: none;
    background-color: var(--sn-bg-perlweiss);
    cursor: pointer;
    outline: none;
    background-image: none;
    padding-top: 12px;
    padding-bottom: 12px;
    height: 3.5em;
    border-radius: 0;
}

.select-wrapper {
    position: relative;
    display: inline-block;
    width: 100%;
}


.select-wrapper::after,
.sn-formular .wpcf7-form-control-wrap-select::after {
    content: '';
    position: absolute;
    display: inline-block;
    right: 10px;
    width: 20px;
    height: 20px;
    background-image: url("assets/images/feather-arrow-down.svg");
    background-size: contain;
    background-repeat: no-repeat;
    pointer-events: none;
    top: 0;
    margin-top: 14px;
    opacity: 0.8;
}

.sn-content-sticky-image {
    gap: 100px;
}

.woocommerce form .form-row label.checkbox, .woocommerce-page form .form-row label.checkbox {
    display: inline-block;
    padding-top: 0;
}


.wpcf7-list-item input[type="checkbox"],
.input-checkbox {
    position: absolute;
    left: 0;
    top: 2px;
    width: 24px;
    height: 24px;
    opacity: 0;
    cursor: pointer;
    z-index: 2;
    margin: 0;
    padding: 0;
}
.wpcf7-list-item label,
label.woocommerce-form__label-for-checkbox {
    position: relative;
    display: inline-flex;
    align-items: flex-start;
    padding-left: 34px;
    cursor: pointer;
    user-select: none;
    padding-top: 5px;
}
.wpcf7-list-item label::before,
label.woocommerce-form__label-for-checkbox::before {
    content: '';
    position: absolute;
    left: 0;
    top: 2px;
    width: 24px;
    height: 24px;
    background: url('assets/images/chk-gray.svg') center/contain no-repeat;
    pointer-events: none;
}
/*div.sn-warenkorb-summen label.woocommerce-form__label-for-checkbox::before {
    background: url('assets/images/chk-brown-small.svg') center/contain no-repeat;
}*/
.wpcf7-list-item label::after,
label.woocommerce-form__label-for-checkbox::after {
    content: '';
    position: absolute;
    left: 0;
    top: 2px;
    width: 24px;
    height: 24px;
    background: url('assets/images/check.svg') center/contain no-repeat;
    background-size: 15px;
    opacity: 0; /* Hidden by default */
    transition: opacity 0.2s ease;
    pointer-events: none;
}
/*
div.sn-warenkorb-summen label.woocommerce-form__label-for-checkbox::after {
    background: url('assets/images/check-hell.svg') center/contain no-repeat;
    background-size: 15px;
}*/
@media screen and (min-width: 480px) {
    .wpcf7-list-item label:has(input:hover):not(:has(input:checked))::after,
    label.woocommerce-form__label-for-checkbox:has(input:hover):not(:has(input:checked))::after {
        opacity: 0.5;
    }
}
.wpcf7-list-item label:has(input:checked)::after,
label.woocommerce-form__label-for-checkbox:has(input:checked)::after {
    opacity: 1;
}
.woocommerce-checkout .checkout .checkout-inline-error-message {
    display: none;
}

.woocommerce form .form-row.woocommerce-invalid label {
    color: var(--unnamed-color-2b231cd9);
}

.wc_payment_method input[type="radio"].input-radio {
    position: absolute;
    opacity: 0;
    width: 0;
    height: 0;
    margin: 0;
    padding: 0;
    pointer-events: none;
}
.wc_payment_method label {
    position: relative;
    display: flex;
    align-items: center;
    padding-left: 36px;
    cursor: pointer;
    user-select: none;
    width: 100%;
    padding-top: 10px;
    padding-bottom: 10px;
}
.wc_payment_method label::before {
    content: '';
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 24px;
    height: 24px;
    background: url("assets/images/radio-light.svg") center/contain no-repeat;
    pointer-events: none;
    transition: background-image 0.2s ease;
}
.wc_payment_method input[type="radio"]:not(:checked) + label:hover::before {
    background-image: url('assets/images/radio-light-hover.svg');
}
.wc_payment_method input[type="radio"]:checked + label:hover::before {
    background-image: url('assets/images/radio-light-checked.svg');
}
.wc_payment_method input[type="radio"]:checked + label::before {
    background-image: url('assets/images/radio-light-checked.svg');
}


.thwmscf-wrapper #payment div.payment_box {
    padding: 0px 0px 5px 0;
}
.thwmscf-wrapper #payment div.payment_box::before {
    content: none;
}

.wc_payment_method label {
    font-size: 1.2em;
    font-weight: bold;
}


#mega-menu-wrap-header-menu .mega-menu-toggle .mega-toggle-block-0 .mega-toggle-animated-inner, #mega-menu-wrap-header-menu .mega-menu-toggle .mega-toggle-block-0 .mega-toggle-animated-inner::before, #mega-menu-wrap-header-menu .mega-menu-toggle .mega-toggle-block-0 .mega-toggle-animated-inner::after {
    background-color: var(--sn-bg-dunkelbraun);
}

#mega-menu-wrap-header-menu .mega-menu-toggle .mega-toggle-block-0 .mega-toggle-animated-slider .mega-toggle-animated-inner,
#mega-menu-wrap-header-menu .mega-menu-toggle .mega-toggle-block-0 .mega-toggle-animated-slider .mega-toggle-animated-inner::before,
#mega-menu-wrap-header-menu .mega-menu-toggle .mega-toggle-block-0 .mega-toggle-animated-slider .mega-toggle-animated-inner::after {
    width: 30px;
    height: 2px;
}
#mega-menu-wrap-header-menu .mega-menu-toggle .mega-toggle-block-0 .mega-toggle-animated-slider .mega-toggle-animated-inner::before {
    top: 8px;
}
#mega-menu-wrap-header-menu .mega-menu-toggle .mega-toggle-block-0 .mega-toggle-animated-slider .mega-toggle-animated-inner::after {
    top: 16px;
}
#mega-menu-wrap-header-menu .mega-menu-toggle.mega-menu-open .mega-toggle-block-0 .mega-toggle-animated-slider .mega-toggle-animated-inner::after {
    transform: translate3d(0, -15px, 0) rotate(-90deg);
}
#mega-menu-wrap-header-menu .mega-menu-toggle .mega-toggle-block-0 .mega-toggle-animated-box {
    width: 35px;
    margin-right: -10px;
}
#mega-menu-wrap-header-menu .mega-menu-toggle .mega-toggle-block-0 .mega-toggle-animated {
    display: inherit;
    min-height: 46px;
}
#mega-menu-wrap-header-menu .mega-menu-toggle .mega-toggle-blocks-right .mega-toggle-block {
    margin-right: 0;
}

.ueber-uns-fakten {
    padding: 40px 0 70px 0;
    margin: 0;
}

.kunden-menue, .ausbilder-menue {
    display: none !important;
}

.sn-icon-intro {
    font-size: var(--font-size-main-motto);
    max-width: 50%;
    line-height: var(--line-spacing-main-motto);
    margin-bottom: 60px;
}


/* ===================================
   TABLET STYLES (768px - 1024px)
   =================================== */
@media screen and (max-width: 1024px) {
    /* Adjust container width */
    .container {
        max-width: 100%;
        padding: 0 20px;
    }

    /* Stack columns */
    .row, .flex-row {
        flex-direction: column;
    }

    /* Reduce font sizes slightly */
    h1 { font-size: 2.2rem; }
    h2 { font-size: 1.8rem; }
    h3 { font-size: 1.4rem; }

    /* Adjust navigation */
    .main-navigation ul {
        flex-direction: column;
    }
}

/* ===================================
   MOBILE STYLES (481px - 767px)
   =================================== */
@media screen and (max-width: 768px) {
    /* Container adjustments */
    .container {
        padding: 0 15px;
    }

    /* Typography */
    h1 { font-size: 1.8rem; }
    h2 { font-size: 1.5rem; }
    h3 { font-size: 1.2rem; }
    /*p { font-size: 1rem; line-height: 1.6; }*/

    /* Stack all flex containers */
    .flex, .flex-row, .row {
        flex-direction: column !important;
    }

    /* Full width elements */
    .col-1-2, .col-1-3, .col-1-4,
    .span-6, .span-4, .span-3 {
        width: 100% !important;
        margin-bottom: 20px;
    }

    /* Buttons and forms */
    button, .button, input, select, textarea {
        width: 100%;
        font-size: 16px; /* Prevents zoom on iOS */
        padding: 12px 16px;
    }

    /* Navigation - Hamburger Menu */
    .main-navigation ul {
        display: none; /* Hide by default */
        position: absolute;
        top: 100%;
        left: 0;
        right: 0;
        background: #fff;
        flex-direction: column;
        padding: 20px;
        box-shadow: 0 4px 6px rgba(0,0,0,0.1);
    }

    .main-navigation.active ul {
        display: flex;
    }

    /* Mobile menu toggle button */
    .menu-toggle {
        display: block !important;
        background: none;
        border: none;
        padding: 10px;
        cursor: pointer;
    }

    /* Hide desktop-only elements */
    .desktop-only {
        display: none !important;
    }

    /* Show mobile-only elements */
    .mobile-only {
        display: block !important;
    }

    /* Adjust spacing */
    section, .section {
        padding: 40px 0;
    }

    /* Hero sections */
    .hero {
        padding: 60px 0;
        text-align: center;
    }

    .woocommerce ul.products[class*=columns-] li.product, .woocommerce-page ul.products[class*=columns-] li.product {
        max-width: 98%;
    }

    .woocommerce table.shop_table_responsive tr:nth-child(2n) td, .woocommerce-page table.shop_table_responsive tr:nth-child(2n) td.actions {
        background-color: transparent;
    }

}

/* ===================================
   SMALL MOBILE (up to 480px)
   =================================== */
@media screen and (max-width: 480px) {

    body {
        font-size: var(--mobile-font-size-body);
    }



    div.c-scroll-nav,
    div.scroll-arrow-right,
    div.c-scroll-pfeile {
        max-height: 35px;
        min-height: 35px;
        overflow: clip;
    }

    div.sn-eh-teaser figure img {
        margin-top: 35px;
    }

    div.scroll-arrow-right button,
    div.c-scroll-pfeile button {
        visibility: hidden;
    }

    main.wrap {
        padding-top: 0;
    }
    .content-area {
        padding: 0;
    }
    div#content {
        padding-top: 30px;
    }

    div.wp-block-sn-schwarzer-header-block h2, .sn-txt-block-red h3 {
        font-size: 200%;
        margin: 40px 0;
    }

    .lead-text, .sn-schwarzes-motto {
        font-size: 115%;
    }

    div.bildungstraeger {
        margin-left: auto;
        margin-right: auto;
        width: 100%;
        max-width: 100%;
        overflow: hidden;
        text-align: left;
        margin-top: 50px;
        /*margin-bottom: 40px;*/
        margin-bottom: 80px;
    }

    article.sn-lg div.bildungstraeger {
        margin-top: 50px;
        margin-bottom: 80px;
    }

    p.logos-label {
        font-size: 1.28em;
    }
    div.bildungstraeger > div {
        display: flex;
        flex-wrap: nowrap;
        width: max-content;
        gap: 100px;
        will-change: transform;
        /*visibility: hidden;*/
        transform: translateX(0);
        -webkit-transform: translateX(0); /* TODO TC */
        transform: translateZ(0); /* TODO TC */
        -webkit-transform: translateZ(0); /* TODO TC */
    }
    div.bildungstraeger > div.animate-ready {
        visibility: visible;
        animation: steady-scroll var(--animate-duration, 25s) linear infinite;
        -webkit-animation: steady-scroll var(--animate-duration, 25s) linear infinite;
    }
    div.bildungstraeger > div:hover {
        animation-play-state: paused;
    }
    @keyframes steady-scroll {
        0%   { transform: translateX(0); }
        100% { transform: translateX(var(--animate-distance)); }
    }
    @-webkit-keyframes steady-scroll {
        0%   { transform: translateX(0); }
        100% { transform: translateX(var(--animate-distance)); }

    }

    div.bildungstraeger > div > figure {
        flex: 0 0 auto;
        margin: 0;
    }
    div.bildungstraeger > div > figure img {
        display: block;
        width: auto;
        height: auto;
        max-width: none;
    }
    div.bildungstraeger-short > div {
        justify-content: flex-start;
    }

    div.topmenu_action_box {
        margin-left: 0;
        padding: 0 !important;
        margin-top: 10px;
    }

    div.topmenu_action_box a.action-button-dark.card-button.action-button-full-w {
        width: 100%;
        overflow: clip;
        margin-top: 15px;
    }

    div.sn-start-ab-h2 {
        height: 40px;
    }

    .reviews-container,
    .sn-blaue-box {
        /*margin-left: -30px !important;
        margin-right: -30px !important;*/
    }
    .sn-blaue-box {
        padding: var(--mobile-side-padding);
    }

    .sn-sticky div.wp-block-columns {
        margin-bottom: 0;
    }
    div.sn-sticky {
        top: 0;
    }

    #mega-menu-wrap-header-menu {
        width: 30px !important;
        float: right;
    }
    #mega-menu-wrap-header-menu .mega-menu-toggle {
        /*background: transparent;*/
    }

    #mega-menu-wrap-header-menu .mega-menu-toggle + #mega-menu-header-menu
    /*ul.mega-menu.max-mega-menu.mega-menu-horizontal*/ {
        /*margin-top: 100px;*/
        max-height: 84vh;
        height: 84vh;
        overflow-y: auto;
    }
    #mega-menu-wrap-header-menu .mega-menu-toggle.mega-menu-open:after {
        background: transparent !important;
    }

    #mega-menu-wrap-header-menu #mega-menu-header-menu > li.mega-menu-item {
        margin-left: var(--mobile-side-padding);
    }
    #mega-menu-wrap-header-menu #mega-menu-header-menu > li.mega-menu-item {
        border-bottom: 1px solid #00000029;
        margin-right: var(--mobile-side-padding);
        padding: 10px 0;
    }
    #mega-menu-wrap-header-menu #mega-menu-header-menu > li.mega-menu-item.mega-current-menu-item > a.mega-menu-link,
    #mega-menu-wrap-header-menu #mega-menu-header-menu > li.mega-menu-item.mega-current-menu-ancestor > a.mega-menu-link,
    #mega-menu-wrap-header-menu #mega-menu-header-menu > li.mega-menu-item.mega-current-page-ancestor > a.mega-menu-link,
    #mega-menu-wrap-header-menu #mega-menu-header-menu > li.mega-menu-item a.mega-menu-link{
        width: 100%;
        display: flow;
    }
    #mega-menu-wrap-header-menu #mega-menu-header-menu li.mega-menu-item-has-children > a.mega-menu-link > span.mega-indicator {
        top: 10px;
    }
    #mega-menu-wrap-header-menu #mega-menu-header-menu > li.mega-menu-item a.mega-menu-link,
    #mega-menu-wrap-header-menu #mega-menu-header-menu > li.mega-menu-item:hover a.mega-menu-link {
        border-bottom: 0;
    }
    #mega-menu-wrap-header-menu #mega-menu-header-menu > li.mega-menu-item a.mega-menu-link {
        transition: color 0.5s ease;
    }
    #mega-menu-wrap-header-menu #mega-menu-header-menu > li.mega-menu-item:hover a.mega-menu-link,
    #mega-menu-wrap-header-menu #mega-menu-header-menu > li.mega-menu-item-has-children.mega-toggle-on > a.mega-menu-link:hover {
        color: var(--sn-signalrot) !important;
    }
    #mega-menu-wrap-header-menu #mega-menu-header-menu > li.mega-menu-item:hover {
        /*border-bottom: 1px solid rgb(43, 35, 28);*/
    }
    #mega-menu-wrap-header-menu #mega-menu-header-menu li.mega-menu-item-has-children.mega-toggle-on > a.mega-menu-link > span.mega-indicator:after {
        content: "";
    }
    #mega-menu-wrap-header-menu #mega-menu-header-menu > li.mega-menu-item-has-children.mega-toggle-on > a.mega-menu-link {
        border-bottom: 1px solid #2B231C1A;
        color: var(--sn-bg-dunkelbraun) !important;
        padding-bottom: 45px;
    }
    div#menu-dim-overlay {
        top: 150px;
    }
    #mega-menu-wrap-header-menu #mega-menu-header-menu li.mega-menu-item.mega-toggle-on > ul.mega-sub-menu, #mega-menu-wrap-header-menu #mega-menu-header-menu li.mega-menu-megamenu.mega-menu-item.mega-toggle-on ul.mega-sub-menu {
        background-color: var(--sn-bg-perlweiss);
        padding-top: 0 !important;
    }
    #mega-menu-wrap-header-menu #mega-menu-header-menu > li.mega-menu-item > ul.mega-sub-menu
    /*,
    #mega-menu-wrap-header-menu #mega-menu-header-menu li.mega-menu-megamenu.mega-menu-item.mega-toggle-on ul.mega-sub-menu:first-child*/ {
        /*margin-top: 15px;*/
    }

    /*#mega-menu-wrap-header-menu #mega-menu-header-menu li.mega-menu-item.mega-toggle-on > ul.mega-sub-menu,
    #mega-menu-wrap-header-menu #mega-menu-header-menu li.mega-menu-megamenu.mega-menu-item.mega-toggle-on ul.mega-sub-menu:first-child {
        margin-top: 15px;
    }*/

    #mega-menu-wrap-header-menu #mega-menu-header-menu > li.mega-menu-megamenu > ul.mega-sub-menu {
        /*padding: 30px !important;*/
    }
    #mega-menu-wrap-header-menu #mega-menu-header-menu > li.mega-menu-megamenu > ul.mega-sub-menu:not(:first-child) {
        /*padding-top: 40px !important;*/
    }
    #mega-menu-wrap-header-menu #mega-menu-header-menu > li.mega-menu-megamenu > ul.mega-sub-menu .mega-menu-row:first-child {
        display: none;
    }
    #mega-menu-wrap-header-menu #mega-menu-header-menu > li.mega-menu-megamenu > ul.mega-sub-menu .mega-menu-row .mega-menu-column:first-child {

    }

    #mega-menu-wrap-header-menu #mega-menu-header-menu > li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row > ul.mega-sub-menu > li.mega-menu-column {
        padding: 35px 30px 5px 30px !important;
        /*border-bottom: 1px solid red;*/

    }

    #mega-menu-wrap-header-menu #mega-menu-header-menu li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row .mega-menu-column > ul.mega-sub-menu > li.mega-menu-item:last-child {
        padding-bottom: 30px !important;
        border-bottom: 1px solid #2B231C1A;
    }

    #mega-menu-wrap-header-menu #mega-menu-header-menu li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row .mega-menu-column:last-child > ul.mega-sub-menu > li.mega-menu-item:last-child {
        border-bottom: none;
        padding-bottom: 0 !important;
    }

    #mega-menu-wrap-header-menu #mega-menu-header-menu > li.mega-menu-item.mega-toggle-on:first-child > ul.mega-sub-menu,
    #mega-menu-wrap-header-menu #mega-menu-header-menu > li.mega-menu-megamenu.mega-menu-item.mega-toggle-on:first-child > ul.mega-sub-menu {
        margin-top: 15px !important;
        margin-bottom: 5px !important;
    }

    #mega-menu-wrap-header-menu #mega-menu-header-menu > li.mega-menu-megamenu > ul.mega-sub-menu > .mega-menu-row:nth-child(2) > ul.mega-sub-menu > li.mega-menu-column:first-child {
        padding-top: 25px !important;
    }

    #mega-menu-wrap-header-menu #mega-menu-header-menu > li.mega-menu-megamenu > ul.mega-sub-menu {
        padding: 30px 0 0 0 !important;
    }

    h1.main-title, h2.main-title, p.main-subtitle {
        font-size: 350%;
    }

    .main-motto {
        width: 100%;
        margin-bottom: 40px;
    }

    h2.main-title, div.wp-block-sn-schwarzer-header-block h2, .sn-txt-block-red h3 {
        hyphens: auto;
        -webkit-hyphens: auto;
        -ms-hyphens: auto;
        overflow-wrap: break-word;
    }

    h5 {
        margin: 15px 0;
    }

    h6 {
        font-size: 105%;
        margin: 13px 0;
    }


    img.sn-logo {
        width: 53%;
    }
    .sn-header .sn-header-c-wrapper {
        padding-left: var(--mobile-side-padding);
        padding-right: var(--mobile-side-padding);
    }

    article.sn-lg .wp-block-columns.c-icon-texte-float,
    div.wp-block-columns.c-icon-texte-float,
    div.wp-block-column.c-icon-texte-float {
        /*margin-top: 60px;*/
        margin-top: 30px;
    }

    .wp-block-columns.c-icon-texte-float, .wp-block-columns.c-icon-texte-float-eh-kurse {
        row-gap: 30px;
    }

    div.c-icon-texte-vertical {
        margin-top: 10px;
        display: flex;
        flex-direction: column;
        row-gap: 30px;
    }

    div.sn-lg-teaser,
    div.sn-eh-teaser {
        padding: var(--mobile-side-padding);
        margin-left: -30px;
        margin-right: -30px;
        margin-bottom: 123px;
        padding-bottom: 160px;
    }
    div.sn-lg-teaser .main-title,
    div.sn-eh-teaser .main-title {
        margin-top: 0;
    }
    div.sn-lg-teaser div.sn-lg-teaser-text,
    div.sn-eh-teaser div.sn-eh-teaser-text {
        top: 0;
        margin-top: -20px;
        margin-bottom: 0;
    }
    div.sn-lg-teaser figure,
    div.sn-eh-teaser figure {
        margin: 0;
        position: absolute;
    }
    div.sn-eh-teaser figure img,
    div.sn-lg-teaser figure img {
        margin-top: 35px;
    }

    .sn-eh-anmeldung .sn-right-space-30 {
        padding-right: 0;
    }

    .sn-lehrgangstermine .sn-lehrgangstermin {
        flex-direction: column;
        padding: 30px;
        gap: 0;
    }
    .sn-lehrgangstermine .sn-lehrgangstermin span.container,
    .sn-lehrgangstermine .sn-lehrgangstermin span.container:nth-child(1),
    .sn-right-space-30 .sn-lehrgangstermine .sn-lehrgangstermin span.container:nth-child(2),
    .sn-lehrgangstermine .sn-lehrgangstermin span.container:nth-child(2) {
        width: 100%;
        padding: 0;
    }
    .sn-lehrgangstermine .sn-lehrgangstermin span.container {
        padding: 15px 0 !important;
        border-bottom: 1px solid #F4EEE920;
    }
    .sn-lehrgangstermine .sn-lehrgangstermin span.container .val,
    .sn-lehrgangstermine .sn-lehrgangstermin span.container .lbl {
        padding-left: 0;
    }
    .sn-lehrgangstermine .sn-lehrgangstermin span.container:nth-child(3) {
        border-bottom: none !important;
    }
    .sn-lehrgangstermine .sn-lehrgangstermin span.container:first-child,
    .sn-lehrgangstermine .sn-lehrgangstermin span.container:first-child span.val {
        padding-top: 0 !important;
        margin-top: 0 !important;
    }
    .sn-lehrgangstermine .sn-lehrgangstermin div.action {
        margin-top: 15px;
    }
    .sn-lehrgangstermine .sn-lehrgangstermin div.action,
    .sn-lehrgangstermine .sn-lehrgangstermin span.action a.action-button-dark,
    .sn-lehrgangstermine .sn-lehrgangstermin div.action a.action-button-dark {
        width: 100%;
    }



    .achtung-box {
        padding: 60px 30px 30px 30px;
        background-position: left 30px top 23px;
    }

    div.sn-header-menu {
        width: unset;
        min-width: 70px;
    }

    div#content,
    .main-motto,
    .sn-header .sn-header-c-wrapper {
        min-width: unset;
    }

    /* Reduce padding */
    .container {
        padding: 0 10px;
    }

    section, .section {
        padding: 30px 0;
    }

    /* Stack all grid items */
    .grid-item, .card, .tile {
        width: 100% !important;
    }

    /* Adjust images */
    img {
        max-width: 100%;
    }

    /* Forms */
    input, textarea, select {
        font-size: 16px;
        padding: 10px 12px;
    }

    /* Buttons */
    button, .button {
        padding: 12px 20px;
        font-size: 16px;
    }

    div.c_neuigkeiten {
        padding: var(--mobile-side-padding);
    }
    div.c_neuigkeiten .c_neuigkeit {
        flex-direction: column;
    }
    div.c_neuigkeiten .neuigkeit_bild, div.c_neuigkeiten .neuigkeit_info {
        width: 100%;
    }
    div.c_neuigkeiten .neuigkeit_info {
        padding: 35px 0 0 0;
    }

    div.c_neuigkeiten .neuigkeit_info a.action-button-dark {
        width: 100%;
    }

    a.action-button-dark, div.action-button-dark a, div.lehrgang div.action-button-dark {
        text-align: center;
        overflow: clip;
    }
    /*hr.spacer-line {
        margin: 25px 0 50px 0 !important;
    }*/

    div.reviews-container {
        padding: var(--mobile-side-padding);
        max-width: 100%;
    }

    div.reviews-container div.scroll-arrow-right,
    div.scroll-arrow-right {
        display: none;
    }

    div.reviews-container .rating-summary {
        width: 100%;
    }

    div.reviews-container .wp-block-sn-schwarzer-header-block h2 {
        margin-top: 15px;
    }
    div.reviews-container .star-rating span.sn-star-rating:not(:first-child),
    div.reviews-container .star-rating > span:last-child > span.sn-star-rating,
    div.reviews-container .star-rating div {
        display: none;
    }

    div.sn-txt-block-red {
        padding: 30px;
    }
    .sn-txt-block-red p {
        font-size: 100%;
        line-height: 170%;
    }

    footer {
        font-size: 115%;
    }
    footer > div {
        flex-wrap: wrap !important;
    }
    footer > div > :nth-child(-n+2) {
        flex: 0 0 100%;
    }
    footer > div > :nth-child(1),
    footer > div > :nth-child(2) {
        flex: 0 0 100% !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0;
    }
    footer > div > :nth-child(n+3) {
        flex: 0 0 calc(50% - 4px); /* 4px Haelfte des Gap */
    }
    footer > div > :nth-child(3),
    footer > div > :nth-child(4) {
        flex: 0 0 calc(50% - 10px) !important;
        width: calc(50% - 10px) !important;
        max-width: calc(50% - 10px) !important;
        min-width: 0;
    }
    footer ul {
        padding-left: 0;
        margin-top: 60px;
    }
    footer div.c-kontakt ul {
        padding-left: 0;
        margin-top: 20px;
    }
    footer div.social {
        display: grid;
        gap: 10px;
        justify-items: center;
    }

    footer div.social img {
        margin-right: 0;
    }

    footer > div > div.f_1 {
        display: flex;
        gap: 0;
    }

    footer > div > div.f_1 .footer-left {
        display: flex;
        flex-direction: column;
        gap: 0; /* Spacing between Element 1 & 2 */
        flex: 1;   /* Takes available left space */

        /*flex: 0 0 calc(70% - 10px) !important;
        width: calc(70% - 10px) !important;
        max-width: calc(70% - 10px) !important;*/
        min-width: 0;
    }

    footer > div > div.f_1 .footer-right {
        flex: 0 0 24px;
        text-align: center;
    }

    footer > div > div.f_3,
    footer > div > div.f_4 {
        margin-top: 40px;
    }

    footer > div > div.f_3 p.lbl,
    footer > div > div.f_4 p.lbl {
        padding-left: 0;
    }
    footer > div > div.f_3 ul,
    footer > div > div.f_4 ul {
        margin-top: 0;
        margin-bottom: 30px;
    }

    footer div.menu-footer_menu_rechtliches-container {
        padding-right: 0;
    }


    .sn-vorteile-eh {
        flex-direction: column;
        align-items: flex-start;
        gap: 0;
    }
    .sn-vorteile-eh div.action-button-dark {
        width: 100%;
    }
    .sn-vorteile-eh .c-sn-icon-img {
        margin-bottom: 10px;
    }
    .sn-vorteile-eh  div.wp-block-sn-schwarzer-header-block h2 {
        margin: 20px 0 30px;
    }
    hr.spacer-line {
        margin: 60px 0 60px 0 !important;
    }
    hr.spacer-line-b-h {
        margin-bottom: 40px;
    }

    /*
    spacer-line
        padding: 0 0 60px 0px !important;
    margin: 60px 0 0 0 !important;
     */

    .sn-box-grau {
        padding: var(--mobile-side-padding);
    }

    .sn-box-grau div.wp-block-sn-schwarzer-header-block:first-child h2 {
        margin-top: 0;
    }

    .eh-buchung-kacheln .sn-box-weiss {
        padding: var(--mobile-side-padding);
    }

    .c_leistung {
        flex-direction: column;
    }
    .c_leistung .leistung_bild,
    .c_leistung .leistung_info {
        width: 100%;
    }
    .c_leistung .action-button-light,
    .c_leistung .action-button-light a {
        width: 100%;
    }
    .c_leistung .action-button-light a {
        text-align: center;
    }

    .leistung_info {
        margin-top: 25px;
    }

    .leistung_info_odd {
        padding-left: 0;
    }

    .c_leistung_odd {
        flex-direction: column-reverse;
    }

    .c_leistungen .c_leistung:first-child {
        margin-top: 40px;
    }
    .c_leistungen .c_leistung:not(:first-child) {
        margin-top: 100px;
    }


    .sn-ab-3 {
        height: 15px;
    }
    .sn-ab-4 {
        height: 20px;
    }
    .sn-ab-6 {
        height: 30px;
    }
    .sn-ab-8 {
        height: 40px;
    }
    .sn-ab-10 {
        height: 50px;
    }

    .copyright-footer {
        font-size: 0.9em;
    }

    div.sn-lg-zielgruppe-c, div.sn-lg-vorteile-c {
        gap: 18px; /* 30 */
    }

    .sn-blaue-box.sn-lg-vorteile {
        margin-top: 40px;
    }
    article.sn-lg div.sn-blaue-box.sn-lg-vorteile {
        margin-top: 17px;
    }
    .sn-blaue-box.sn-lg-vorteile .sn-liste-pfeil-rot li {
        margin-left: 0;
    }
    div.sn-lg-zielgruppe-c div.sn-lg-gray-c,
    div.sn-lg-gray-c {
        padding-left: 0;
    }
    div.c-icon-texte-float {
        flex-direction: column;
    }
    .wp-block-columns.c-icon-texte-float {
        min-width: unset;
    }

    .c-icon-texte-vertical .icon-text,
    .c-icon-texte-vertical .icon-text:not(:first-child) {
        width: 100%;
        text-align: left;
        margin: 0;
    }
    .c-icon-texte-vertical .icon-text p {
        margin: 0;
    }
    /*.c-icon-texte-vertical .icon-text,
    .c-icon-texte-vertical .icon-text:last-child p:last-child {
        margin-bottom: 0;
    }*/

    h2, h2.wp-block-heading {
        line-height: 1.2em;
        hyphens: auto;
        -webkit-hyphens: auto;
        -ms-hyphens: auto;
        overflow-wrap: break-word;
    }
    div.wp-block-column.bg-grau {
        padding-bottom: 30px;
    }
    div.sn-vorteile-registrierung ul li {
        margin-left: 0;
        margin-right: 0;
    }
    div.sn-eh-vorteile figure {
        margin-bottom: 30px;
    }
    div.wp-block-sn-schwarzer-header-block h2, .sn-txt-block-red h3 {
        margin: 20px 0;
    }
    .form-row.one-column p,
    .form-row.two-columns p,
    .form-row.three-columns p {
        flex-direction: column;
        gap: 10px;
    }
    .form-row.one-column p br,
    .form-row.two-columns p br,
    .form-row.three-columns p br {
        display: none;
    }
    .form-row.one-column .wpcf7-form-control-wrap,
    .form-row.two-columns .wpcf7-form-control-wrap,
    .form-row.three-columns .wpcf7-form-control-wrap {
        flex: 1 1 100%;
    }
    .sn-formular {
        margin-top: 40px;
    }
    .select-wrapper::after, .sn-formular .wpcf7-form-control-wrap-select::after {
        margin-top: 18px;
    }
    .c-sn-quiz {
        flex-direction: column;
    }
    .sn-quiz {
        width: 100%;
    }
    .c-sn-submit {
        margin-left: 0;
    }
    button, .button {
        font-size: 100%;
    }


    div.sn-flex-umbruch {
        row-gap: 60px;
        overflow-x: hidden;
        justify-content: start;
        width: 100%;
        grid-template-columns: 1fr;
    }

    div.grid-2-mobile {
        display: grid;
        row-gap: 30px;
        overflow-x: hidden;
        justify-content: start;
        width: 100%;
        grid-template-columns: repeat(2, minmax(40%, 1fr));
    }

    div.kachel-blau-in-flex {
        max-width: 100%;
        min-width: unset;
    }

    div.kachel-header {
        padding: var(--mobile-side-padding);
    }

    .btabs .nav > li > a {
        font-size: 100%;
        padding: 0px 0px 12px !important;
        min-height: 25px;
    }
    div.sent-check-ok {
        margin-top: 15px;
        padding-right: 0;
        background-size: 100px;
        background-position: top left;
        min-height: unset;
    }

    div.sent-check-ok .main-title {
        /*margin-top: 140px;*/
    }

    div.sent-check-ok div.wp-block-sn-roter-header-block {
        padding-top: 140px;
    }

    div.sent-check-ok .action-button-light {
        width: 100%;
    }

    .eh-buchung-kacheln .sn-box-weiss {
        margin-top: 15px;
    }

    div.g-rezensionen-mobile {
        margin-top: -25px;
        margin-bottom: 50px;
        display: block;
        width: 100%;
        text-align: center;
        border-top: 1px solid #F4EEE9;
        border-bottom: 1px solid #F4EEE9;
        padding: 40px 0;
    }

    div.action-button-dark.action-button-full-w, a.action-button-dark.action-button-full-w {
        margin-top: 5px;
    }

    div.sn-eh-ab-ehkurs {
        height: 30px;
    }
    div.sn-eh-ab-details,
    div.sn-eh-ab-verwandte {
        height: 0;
    }
    .c-sn-icon-img {
        margin-bottom: 10px;
    }

    .sn-eh-zert-ab-btn-anm {
        height: 5px;
    }

    .sn-weg h5 {
        font-size: 140%;
    }

    .c-sn-submit {
        margin-top: 25px;
    }

    .c-sn-submit button {
        margin-top: 30px;
    }

    .c-sn-submit > p {
        margin: 0;
    }

    .sn-file-upload-multiple .sn-file-upload-label {
        background-position: center bottom 65%;
    }

    div.sn-blaue-box-vorteile {
        margin-top: 40px;
    }

    .sn-liste-einrueckung-links li {
        margin-left: 0;
    }

    .kontakt_und_map {
        margin-top: 40px;
        padding: 30px 30px 30px 30px;
    }

    .sn-kontakt-ab-h {
        height: 40px;
    }

    .kontakt_und_map p {
        font-size: 120%;
    }

    .sn-eh-anmeldung .c-kontakt-map {
        height: 180px;
    }

    div.sn-lg-ab-organisation {
        height: 30px;
    }
    div.sn-lg-ab-faq, div.sn-lg-ab-anmeldung {
        height: 60px;
    }
    div.sn-lg-ab-ablauf, div.sn-lg-ab-verwandte {
        height: 0;
    }

    div.tab-content .c-icon-texte-ablauf-float {
        grid-template-columns: 1fr;
    }
    .sn_ablauf_weiter {
        background: none;
    }

    .sn-lehrgangslegende {
        flex-direction: column;
    }

    .form-row.five-columns > div {
        flex-direction: column;
    }

    .sn-filter-reset {
        padding-left: 0;
    }

    div.kommende_lehrgaenge {
        gap: 40px;
    }

    div.kommende_lehrgaenge div.lehrgang {
        flex-direction: column;
        padding-bottom: 30px;
    }
    div.kommende_lehrgaenge div.lehrgang .c-img,
    div.kommende_lehrgaenge div.lehrgang .c_lehrgang_info_gr,
    div.kommende_lehrgaenge div.lehrgang .btn_c_gr {
        flex: 0 0 100%;
    }

    div.kommende_lehrgaenge div.lehrgang .c-img {
        margin-bottom: 30px;
    }

    div.kommende_lehrgaenge div.lehrgang .btn_c_gr {
        width: 100%;
        padding: 0 30px;
    }
    div.kommende_lehrgaenge div.lehrgang .c_lehrgang_info_gr {
        padding: 0 30px;
    }

    div.kommende_lehrgaenge div.lehrgang .lehrgang_details_gr {
        display: flex;
        flex-direction: column;
    }
    div.kommende_lehrgaenge div.lehrgang .lehrgang_details_gr > span {
        width: 100%;
        border-bottom: 1px solid #2B231C20;
        padding-bottom: 15px;
        padding-top: 15px;
    }
    div.kommende_lehrgaenge div.lehrgang .lehrgang_details_gr > span:last-child {
        border-bottom: none;
    }
    div.kommende_lehrgaenge div.lehrgang .lehrgang_details_gr > span p.val {
        margin-top: 0;
    }
    div.kommende_lehrgaenge div.lehrgang .c_lehrgang_bild_gr {
        height: 200px;
    }

    div.lehrgang .val-with-left-space {
        padding-left: 0;
    }

    div.kommende_lehrgaenge div.lehrgang .btn_c_gr div.action-button-dark.card-button {
        width: 100%;
        margin: 30px 0 0 0;
    }

    .c-filter {
        border: 1.5pt solid #2B231C;
        margin-top: 10px;
    }
    .filter-toggler {
        display: block;
        padding: 20px 30px;
    }
    .filter-toggler .filter-toggler-text {
        font-size: 16px;
    }

    .c-filter > .form-row {
        display: block;
        max-height: 0;
        overflow: hidden;
        opacity: 0;
        transition: max-height 0.3s ease, opacity 0.3s ease;
        margin: 0;
    }

    .c-filter.active > .form-row {
        max-height: 500px; /* Set to estimated max content height */
        opacity: 1;
    }

    .c-filter .wrap.sn-smaller {
        margin: 0 30px 30px 30px;
    }
    .c-filter .filter-toggler-icon {
        background-image: url("assets/images/phosphor/faders.svg");
        background-repeat: no-repeat;
        background-position: center;
        width: 20px;
        height: 20px;
        display: inline-block;
        float: right;
        cursor: pointer;
    }
    .c-filter.active .filter-toggler-icon {
        background-image: url("assets/images/phosphor/x.svg");
    }

    .action-button-full-w-mob {
        width: 100%;
    }

    .one-on-mob {
        grid-template-columns: 1fr;
        row-gap: 40px;
    }

    .c-icon-texte-grid.one-on-mob {
        margin-top: 45px;
    }

    .c-icon-texte-grid.one-on-mob div.icon-text p {
        margin-top: 5px;
        margin-bottom: 0;
    }

    div.offene_stellen div.offene_stelle {
        padding: 30px;
        flex-direction: column;
        gap: 30px;
        margin-bottom: 30px
    }

    div.offene_stellen div.offene_stelle .offene_stelle-r,
    div.offene_stellen div.offene_stelle .offene_stelle-r .c-action-button,
    div.offene_stellen div.offene_stelle .offene_stelle-r .c-action-button a {
        width: 100%;
    }

    div.action-button-light a {
        padding: 0 15px 0 15px;
    }

    div.sn-content-sticky-image {
        gap: 40px;
    }
    div.sn-content-sticky-image figure {
        margin: 0;
    }
    div.wp-block-buttons {
        width: 100%;
    }
    div.sn-ab-main-h-form {
        height: 5px;
    }
    div.sn-eh-ab-faq-beh {
        height: 40px;
    }

    .ueber-uns-fakten {
        padding: 0 0 60px 0;
    }

    div.sn-blaue-box.sn-motto {
        padding: 30px;
    }

    div.c-full-width-out {
        margin-left: -30px !important;
        margin-right: -30px !important;
    }


    div.sn-sticky-l-r {
        gap: 0;
    }

    .c-team-abteilungen, .c-sn-tabs {
        display: flex;
        flex-wrap: wrap;
        column-gap: 10px;
        row-gap: 10px;
    }
    .c-team-abteilungen .team-abteilung, .sn-tab {
        padding: 9px 17px;
        margin: 0;
    }

    .c-team-mitglieder {
        row-gap: 40px;
        column-gap: 30px;
        grid-template-columns: repeat(2, minmax(calc(50% - 30px), 1fr));
    }
    div.sn_team_mitglied-img-wrapper {
        height: unset;
    }
    .sn_team_mitglied h4 {
        margin: 10px 0 3px 0;
    }
    .c-sn-tabs {
        margin-top: 20px;
        margin-bottom: 40px;
    }
    .move-up-40 {
        top: 0px;
    }

    .sn-ab-scroller-images {
        height: 10px;
    }

    .sn-ab-lehrgangsliste {
        height: 10px;
    }

    dvi.sn-lg-ab-vor-logos {
        height: 0;
    }
    .single-sn_lehrgang p.logos-label {
        margin-top: 60px;
    }

    .menu-link-icons {
        /*
        display: inline-block;
        float: left;
        height: 1px;
        margin: 0;
        padding: 0;
        z-index: 9998;
        */
        position: relative;
        display: flex;
        float: left;
        height: 1px;
        margin: 0;
        padding: 0;
        z-index: 9998;
        column-gap: 13px;
        margin-right: 36px;
    }

    div.sn-kundenbereich-link a {
        width: 23px;
        height: 23px;
        background-size: contain;
        margin-top: 3px;
        display: inline-block;
        background-repeat: no-repeat;
    }

    div.sn-unterkunft-info {
        margin-top: 20px;
    }
    div.sn-unterkunft-info .wp-block-buttons {
        margin-top: 30px;
    }

    .sn-bildergallerie {
        display: grid !important;
        width: 100%;
        gap: 35px !important;
        grid-template-columns: 1fr;
        margin: 40px 0 35px 0;
        overflow: hidden;
        justify-content: start;
    }

    .sn-bildergallerie figure {
        width: 100% !important;
    }

    .sn-icon-intro,
    .wp-block-table {
        font-size: var(--font-size-h4);
        max-width: 100%;
    }
}

/* ===================================
   UTILITY CLASSES
   =================================== */
.hide-mobile {
    display: none;
}

@media screen and (min-width: 769px) {
    .hide-mobile {
        display: block;
    }
    .hide-desktop {
        display: none !important;
    }
}

/* Touch-friendly elements */
@media screen and (max-width: 768px) {
    a, button, .clickable {
        /*min-height: 44px;*/
        /*min-width: 44px;*/
    }
    footer div.social a {
        min-height: unset;
    }
}

@media (min-width: 481px) {
    .bildungstraeger div figure.clone {
        display: none !important;
    }
}


/* ===== Dot Navigation (Mobile) ===== */
.scroller-dots {
    display: flex;
    justify-content: left;
    gap: 8px;
    padding: 12px 0;
    margin-top: 10px;
    list-style: none;
}

.scroller-dot {
    width: 15px;
    height: 15px;
    border-radius: 50%;
    border: 2px solid var(--sn-bg-perlweiss);
    background-color: var(--sn-bg-perlweiss);
    padding: 0;
    cursor: pointer;
    transition: all 0.2s ease;
    min-height: unset;
}

.scroller-dot.active {
    background: var(--sn-signalrot);
    border-color: var(--sn-signalrot);
}


/* Hide dots on desktop */
@media (min-width: 769px) {
    .scroller-dots {
        display: none !important;
    }
}

/* Hide arrows on mobile */
@media (max-width: 768px) {
    .scroll-arrow-right,
    .c-scroll-nav {
        display: none !important;
    }
}

/* ===== Card Clickability ===== */
.c-scroll-kacheln .scroll-kachel,
.c-scroll-kacheln .review-card {
    cursor: pointer;
    /* Ensure cards are interactive but don't block drag */
    touch-action: pan-y; /* Allow vertical scroll, horizontal handled by JS */
}

.c-scroll-kacheln .scroll-kachel a,
.c-scroll-kacheln .review-card a,
.c-scroll-kacheln .scroll-kachel button,
.c-scroll-kacheln .review-card button {
    cursor: pointer;
    /* Prevent drag when clicking interactive elements */
    touch-action: manipulation;
}

/* Visual feedback for clickable cards */
/*.c-scroll-kacheln .scroll-kachel:hover,
.c-scroll-kacheln .review-card:hover {
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(0,0,0,0.15);
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}*/

/* Drag state visual */
.c-scroll-kacheln.dragging {
    cursor: grabbing;
    scroll-behavior: auto !important; /* Disable smooth scroll during drag */
}

/* ===== Zoom-Safe Layout ===== */
.c-scroller-wrapper {
    /* Ensure wrapper respects zoom */
    contain: layout style;
}

.c-scroll-kacheln {
    /* Prevent browser from optimizing away scroll calculations */
    will-change: scroll-position;
}

/* Allow clicks on cards when not dragging */
.c-scroll-kacheln:not(.dragging) .scroll-kachel,
.c-scroll-kacheln:not(.dragging) .review-card {
    pointer-events: auto !important;
    cursor: pointer;
}

/* Disable clicks during drag to prevent accidental navigation */
.c-scroll-kacheln.dragging .scroll-kachel,
.c-scroll-kacheln.dragging .review-card {
 /*   pointer-events: none !important;*/
}

/* But always allow clicks on interactive elements inside cards */
.c-scroll-kacheln .scroll-kachel a,
.c-scroll-kacheln .scroll-kachel button,
.c-scroll-kacheln .review-card a,
.c-scroll-kacheln .review-card button {
    pointer-events: auto !important;
    cursor: pointer;
}

/* Safe: Only block clicks DURING drag animation, restore after */
.c-scroll-kacheln.dragging {
    /* Allow clicks on cards even during drag — JS flag handles logic */
    pointer-events: auto !important;
}

/* Ensure cards are always clickable */
.scroll-kachel,
.review-card {
    pointer-events: auto !important;
    cursor: pointer;
}

/* Ensure dot taps are recognized as clicks, not scrolls */
.scroller-dot {
    touch-action: manipulation; /* Allows click but disables pinch-zoom/pan on the dot itself */
    -webkit-tap-highlight-color: transparent; /* Remove blue tap highlight on iOS */
}

/* Ensure dots container doesn't interfere with scroller drag */
.scroller-dots {
    touch-action: pan-y; /* Allow vertical page scroll, but horizontal is handled by scroller */
    user-select: none;
    -webkit-user-select: none;
}
/*
.wc-block-checkout__billing-fields .wc-block-components-checkout-step__heading-container {
    display: none;
}

.wc-block-components-form .wc-block-components-checkout-step.wp-block-woocommerce-checkout-billing-address-block {
    margin-top: -22px;
}
.wc-block-checkout__additional-fields__field input#firmenname {
    margin-bottom: 10px;
}
.wc-block-components-form .wc-block-components-checkout-step .wc-block-components-country-input {
    margin-top: 12px;
}*/

.wc-block-checkout__form .wc-blocks-components-select {
    margin-top: 0;
}

.wc-block-components-form .wc-block-components-checkout-step .wc-block-components-country-input {
    margin-top: 12px;
}

.wc-advanced-search-form{
    margin-bottom: 80px;
    padding-top: 15px;
}

.wc-search-field {
    display: flex;
    flex: 1;
    min-width: 150px;
}
.woocommerce-notices-wrapper,
.woocommerce-notices-wrapper:focus,
.woocommerce-notices-wrapper:focus-visible,
.woocommerce-message,
.woocommerce-message:focus,
.woocommerce-message:focus-visible {
    border: none !important;
    outline: none !important;
}
.woocommerce-info, .woocommerce-message {
    border: none !important;
    background-color: var(--sn-bg-hellblau);
    color: var(--sn-bg-dunkelbraun);
    padding: 90px 60px 50px 60px;
    background-image: url("assets/images/feather/alert-circle.svg");
    background-position: left 60px top 50px;
    background-repeat: no-repeat;
}
.woocommerce-message::before,
.woocommerce-info::before {
    content: none;
}
.woocommerce-message a.button.wc-forward {
    width: 100%;
    margin-top: 10px;
    padding: 0;
}

ul.products.columns-3 {
    display: grid;
    grid-template-columns: repeat(3, minmax(400px, 1fr));
    column-gap: 35px;
    row-gap: 60px;
}

ul.products.columns-3 li,
.woocommerce ul.products li.product, .woocommerce-page ul.products li.product ,
.woocommerce ul.products.columns-3 li.product, .woocommerce-page ul.products.columns-3 li.product {
    width: auto;
    margin: 0;
}
.woocommerce ul.products::before {
    content: none;
}

.sn-product-image-wrapper {
    /*max-height: 424px;*/
    max-height: 550px;
    /*height: 565px;*/
    overflow: hidden;
}
.scroll-kachel .sn-product-image-wrapper {
    max-height: 424px;
}
.sn-product-image-wrapper img {
    object-fit: cover;
}
.woocommerce ul.products li.product a img {
    margin: 0 !important;
}
.woocommerce ul.products li.product a img.arrow {
    margin-left: 10px !important;
}

.sn-product-description-wrapper {
    background-color: var(--sn-bg-dunkelbraun);
    padding: 40px 50px 50px 50px;
    color: var(--sn-bg-perlweiss);
    display: flex;
    flex-direction: column;
    height: 100%;
}
.sn-product-description-wrapper .sn-product-title-wrapper {
    font-size: 1.2em !important;
    font-weight: bold;
}
.sn-product-title-wrapper h2 {
    color: var(--sn-bg-perlweiss) !important;
}
.sn-product-price-wrapper {
    margin-top: 15px;
    margin-bottom: 0;
}

.woocommerce:where(body:not(.woocommerce-uses-block-theme)) ul.products li.product {
    display: flex !important;
    flex-direction: column !important;
    float: none !important;
    margin: 0 !important;
}

.woocommerce:where(body:not(.woocommerce-uses-block-theme)) ul.products li.product .price,
.woocommerce ul.products li.product .price {
    font-size: 1.2em !important;
    color: var(--sn-bg-perlweiss) !important;
    font-weight: bold;
    margin-bottom: 0;
}

.sn-product-cart-wrapper {
    display: flex;
    flex-direction: column;
    height: 100%;
}

.sn-product-cart-wrapper p {
    display: inline;
    margin-right: 15px;
}

.sn-product-cart-wrapper a.add_to_cart_button,
.woocommerce ul.products li.product .button {
    display: block;
    background-color: transparent;
    border: none;
    padding: 0;
    font-weight: normal;
    color: var(--sn-bg-perlweiss) !important;
    margin-top: auto !important;
    padding-top: 15px;
}

.sn-tax-shipping-wrapper {
    margin-bottom: 5px;
}

.woocommerce ul.products li.product .sn-product-cart-wrapper a.add_to_cart_button img {
    margin: 0 0 0 14px;
    width: 50px;
    display: inline;
    top: 2px;
}

.woocommerce #content div.product div.images,
.woocommerce div.product div.images,
.woocommerce-page #content div.product div.images,
.woocommerce-page div.product div.images {
    /*max-height: 600px;
    overflow: hidden;*/
}

.woocommerce #content div.product div.summary, .woocommerce div.product div.summary, .woocommerce-page #content div.product div.summary, .woocommerce-page div.product div.summary  {

}

.woocommerce div.product p.price {
    font-size: 1.6em;
    color: var(--unnamed-color-2b231cd9);
    margin-bottom: 0;
    font-weight: bold;
}

.woocommerce div.product,
.wp-block-woocommerce-cart {
    margin-top: 20px;
}

.entry-summary {
    padding-top: 40px;
}
.entry-summary hr.spacer-line {
    margin: 30px 0 30px 0;
}
.woocommerce div.product .product_title {
    line-height: 1.2;
    font-size: 1.6em;
    /*margin-bottom: 30px;*/
}

.woocommerce div.product .wc-gzd-additional-info {
    margin-top: 0;
}

.woocommerce-product-details__short-description {
    margin: 30px 0 35px 0;
}

.sn-product-details-zahlung {
    float: left;
}

.sn-product-details-zum-warenkorb {
    float: left;
}

.sn-product-details-anzahl-input {
    display: inline;
}
.woocommerce .sn-product-details-anzahl-input .quantity .qty,
.sn-product-details-zahlung .quantity input {
    height: 100%;
    border-radius: 0;
    height: 85px;
    width: 85px;
    border-right: none;
    padding: 0 0 0 10px;
    border-color: var(--unnamed-color-2b231c);
}

.woocommerce div.product form.cart .sn-product-details-zahlung div.quantity {
    margin: 0;
}

.sn-product-details-button {
    float: left;
    width: 300px;
}
.sn-product-details-button div.action-button-dark,
.sn-product-details-button div.action-button-dark button {
    margin-top: 0;
}

p.sn-product-details-zahlungsarten {
    float: left;
    width: 100%;
    margin-top: 20px;
    font-size: 0.8em;
    clear: left;
}
p.sn-product-details-zahlungsarten .lbl {
    float: left;
}
p.sn-product-details-zahlungsarten .icons {
    float: right;
}

p.sn-product-details-zahlungsarten .icons img {
    width: 35px;
    margin-left: 10px;
    margin-top: -5px;
}


.accordion-item summary {
    list-style: none;
    cursor: pointer;
}
.accordion-item summary::-webkit-details-marker {
    display: none;
}
.accordion-content {
    overflow: clip;
}
.custom-accordion summary span.resp-arrow {
    margin-right: 0 !important;
    margin-left: auto !important;
    flex-shrink: 0 !important;
}
.accordion-item .resp-arrow {
    transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}
.accordion-item[open] .resp-arrow {
    transform: rotate(180deg);
}
.custom-accordion {
    clear: both;
}
.custom-accordion details summary::marker {
    content: none;
}
.custom-accordion summary {
    padding: 40px 30px 40px 50px;
    display: flex;
    margin-bottom: 10px;
}
.custom-product-accordion summary {
    background-color: #B5CCED;
}
.custom-lehrgangsinhalte-accordion summary {
    background-color: var(--sn-bg-dunkelbraun);
    color: var(--sn-bg-perlweiss);
}
.custom-accordion summary h2 {
    font-weight: normal;
    margin: 0;
    padding: 0;
    user-select: none;
    padding-right: 15px;
    align-self: center;
    line-height: 120%;
}
.custom-accordion details:focus,
.custom-accordion summary:focus,
.custom-accordion summary:hover {
    border: none !important;
}
.custom-accordion .accordion-content {
    margin-top: 10px;
    margin-bottom: 20px;
}
.custom-product-accordion .accordion-content {
    background-color: #d5e4f8;
}
.custom-lehrgangsinhalte-accordion .accordion-content {
    background-color: var(--sn-bg-perlweiss);
    color: var(--sn-bg-dunkelbraun);
}
.custom-lehrgangsinhalte-accordion span.resp-arrow {
    background-image: url(assets/images/feather-arrow-down-white.svg) !important;
    height: 30px;
    margin-top: 0;
}
.custom-accordion .accordion-content .accordion-content-body {
    padding: 35px 50px;
}

.accordion-hidden-items {
    display: grid;
    grid-template-rows: 0fr;
    transition: grid-template-rows 0.5s cubic-bezier(0.4, 0, 0.2, 1);
    padding: 0 !important;
    margin: 0 !important;
}
.accordion-hidden-inner {
    overflow: hidden;
    min-height: 0;
    opacity: 0;
    transform: translateY(-10px);
    transition: opacity 0.4s ease, transform 0.4s ease;
}
.accordion-hidden-inner > details {
    margin: 0;
    padding: 0;
}
.accordion-hidden-inner > details > summary > h2 {
    margin: 0;
}
.custom-lehrgangsinhalte-accordion.is-expanded .accordion-hidden-items {
    grid-template-rows: 1fr;
}
.custom-lehrgangsinhalte-accordion.is-expanded .accordion-hidden-items > * {
    opacity: 1;
    transform: translateY(0);
    transition-delay: 0.15s;
}
.accordion-show-more {
    display: inline-block;
    margin-top: 20px;
    padding: 10px 0;
    cursor: pointer;
    user-select: none;
    opacity: 0.5;
    transition: opacity 0.5s ease;
}
.accordion-show-more:hover {
    opacity: 1;
}
.custom-lehrgangsinhalte-accordion.is-expanded .accordion-show-more::before {
    content: '− ';
}
.custom-lehrgangsinhalte-accordion:not(.is-expanded) .accordion-show-more::before {
    content: '+ ';
}

section.related.products div.c-scroll-kacheln div.scroll-kachel {
    width: unset;
    min-width: 308px;
    max-width: 308px;
}
section.related.products .sn-product-description-wrapper {
    padding: 20px 30px 30px 30px;
    overflow: hidden;
}

section.related.products div.c-frontpage-kacheln div.kachel p {
    padding: 0;
}

section.related.products li {
    height: 100%;
}

section.related.products div.c-frontpage-kacheln h2.woocommerce-loop-product__title {
    white-space: normal !important;
    overflow-wrap: break-word !important;
    word-wrap: break-word !important;
    word-break: break-word !important;
    -webkit-hyphens: auto;
    -moz-hyphens: auto;
    hyphens: auto;
    line-height: 1.4;
    text-overflow: unset !important;
    display: block !important;
    height: auto !important;
    min-height: auto !important;
}

.woocommerce ul.products[class*=columns-] li.product, .woocommerce-page ul.products[class*=columns-] li.product {
    min-width: 308px;
}


.woocommerce table.shop_table {
    border: none;
    font-size: 1.2em;
}
.woocommerce table.shop_table.account-orders-table,
.woocommerce table.shop_table.order_details {
    font-size: 1.0em;
}

.woocommerce table.shop_table tr th,
.woocommerce table.shop_table tr td {
    border-color: #F4EEE9;
    padding: 20px 20px 20px 0;
}
.woocommerce div.sn-checkout-abschluss table.shop_table tr th,
.woocommerce div.sn-checkout-abschluss table.shop_table tr td {
    border: none;
}

.woocommerce table.shop_table tr th {
    border-top: none;
    font-weight: normal;
}
.woocommerce table.shop_table tbody tr th,
.woocommerce table.shop_table tfoot tr th {
    border-top: 1px solid #F4EEE9;
}
.woocommerce table.shop_table.account-orders-table thead th {
    border-top: none;
}

.woocommerce table.shop_table tr td.product-name a {
    color: var(--unnamed-color-2b231cd9);
}

.woocommerce table.shop_table td.product-quantity input {
    height: 55px;
    width: 55px;
    border: none;
    border-radius: 0;
    background-color: var(--sn-bg-perlweiss);
}

.woocommerce table.shop_table .product-price,
.woocommerce table.shop_table .product-subtotal {
    text-align: right;
}
.woocommerce table.shop_table .product-subtotal,
.woocommerce table.shop_table .actions {
    padding-right: 0;
}
.woocommerce table.shop_table .product-quantity {
    text-align: center;
}

.woocommerce table.shop_table input[type=number]::-webkit-inner-spin-button,
.woocommerce table.shop_table input[type=number]::-webkit-outer-spin-button {
    -webkit-appearance: none !important;
    margin: 0 !important;
}

/* 2. Hide default arrows (Firefox) */
.woocommerce table.shop_table input[type=number] {
    -moz-appearance: textfield !important;
    appearance: textfield !important;
}

.quantity {
    display: inline-flex !important;
    align-items: center;
    overflow: hidden;
    width: fit-content;
}

.qty-minus,
.qty-plus {
    background: none;
    border: none;
    font-size: 1.2em;
    width: 25px;
    height: 40px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background 0.2s ease, color 0.2s ease;
    padding: 0;
    line-height: 1;
}

.woocommerce .cart-collaterals .cart_totals, .woocommerce-page .cart-collaterals .cart_totals {
    width: 100%;
    clear: both;
    float: left;
}

.sn-warenkorb-summen {
    padding: 25px 45px 40px 45px;
    background-color: var(--sn-bg-hellblau);
}

.sn-warenkorb-summen .sn-summen {
    margin-top: 30px;
}

.sn-warenkorb-summen .sn-summe {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    font-weight: normal;
    font-size: 1.2em;
    margin-bottom: 15px;
}
.sn-warenkorb-summen .woocommerce ul#shipping_method .amount,
.woocommerce ul#shipping_method .amount {
    font-weight: normal !important;
}
.sn-warenkorb-summen .sn-summe-totals {
    font-weight: bold;
}
.sn-warenkorb-summen .sn-summe .sn-summe-bezeichnung {
    padding-right: 5px;
}
.sn-warenkorb-summen .sn-summe .sn-summe-wert {
    padding-left: 5px;
}
.woocommerce ul#shipping_method li:last-child {
    margin-bottom: 0;
}

.sn-warenkorb-summen .sn-summe-space {
    flex-grow: 1;
    border-bottom: 1px dotted #2B231C;
}

.woocommerce-cart .sn-warenkorb-summen .wc-proceed-to-checkout {
    padding-bottom: 0;
    padding-top: 17px;
}

.woocommerce-cart .sn-warenkorb-summen .wc-proceed-to-checkout a.checkout-button {
    display: inline-block;
    text-align: center;
    font-size: 1em;
    padding: 30px;
    float: right;
    margin: 0;
}


.lbl-hidden,
.lbl-hidden span,
.woocommerce form .form-row label.lbl-hidden, .woocommerce-page form .form-row label.lbl-hidden {
    visibility: hidden;
    display: none;
}

.woocommerce form .form-row-first, .woocommerce form .form-row-last, .woocommerce-page form .form-row-first, .woocommerce-page form .form-row-last {
    width: calc(50% - 5px);
}

ul.woocommerce-error,
div.woocommerce-error {
    border: none;
    padding: 30px;
    background-color: var(--sn-bg-pastellrosa);
}
ul.woocommerce-error:focus,
div.woocommerce-error:focus,
ul.woocommerce-error:focus-visible,
div.woocommerce-error:focus-visible {
    border: none !important;
    outline: none !important;
}
ul.woocommerce-error::before,
div.woocommerce-error::before {
    content: none;
}
.thwmscf_time_line_step ul.thwmscf-tabs span.thwmscf-tab-label {
    hyphens: auto;
    -webkit-hyphens: auto;
    -ms-hyphens: auto;
    overflow-wrap: break-word;
}
.thwmscf-tab-icon {
    line-height: 30px !important;
    color: var(--sn-bg-dunkelbraun) !important;
}

div#payment {
    width: 35%;
    float: left;
}

div.sn-checkout-abschluss {
    float: left;
    width: 65%;
    padding-left: 120px;
}

div.wc-gzd-order-submit {
    clear: both;
}

.woocommerce .woocommerce-checkout-review-order-table .product-name img,
.woocommerce-page .woocommerce-checkout-review-order-table .product-name img {
    height: 50px;
    max-height: 50px;
    width: auto;
}

.thwmscf-wrapper table.woocommerce-checkout-review-order-table.shop_table,
.thwmscf-wrapper table.woocommerce-checkout-review-order-table.shop_table th,
.thwmscf-wrapper table.woocommerce-checkout-review-order-table.shop_table td {
    background-color: var(--sn-bg-hellblau) !important;
    padding: 0 0 15px 0;
}

.thwmscf-tab-panels {
    padding: 0 !important;
    margin-top: 20px;
}

table.woocommerce-checkout-review-order-table.shop_table td.product-name {
    hyphens: auto;
    -webkit-hyphens: auto;
    -ms-hyphens: auto;
    overflow-wrap: break-word;
}

table.woocommerce-checkout-review-order-table.shop_table td.product-name .sn-product-name-wrapper {
    display: flex;
    align-items: center;
    margin-bottom: 15px;
}
table.woocommerce-checkout-review-order-table.shop_table td.product-name .wc-gzd-product-name-left {
    min-width: 55px;
    max-width: 55px;
    overflow: hidden;
    margin-right: 0;
}
table.woocommerce-checkout-review-order-table.shop_table td.product-name .wc-gzd-product-name-right {
    padding-left: 15px;
}
table.woocommerce-checkout-review-order-table.shop_table td.product-total {
    padding-left: 5px !important;
    text-align: right;
}
table.woocommerce-checkout-review-order-table.shop_table tfoot tr:first-child th,
table.woocommerce-checkout-review-order-table.shop_table tfoot tr:first-child td {
    padding-top: 40px;
}
.thwmscf_time_line_step ul.thwmscf-tabs {
    margin-top: 80px !important;
    margin-bottom: 50px;
}
.sn-checkout-abschluss .sn-warenkorb-summen h2:first-child {
    margin-bottom: 30px;
}

.sn-checkout-abschluss table.woocommerce-checkout-review-order-table.shop_table td {
    padding: 0;
}

.sn-checkout-abschluss .sn-warenkorb-summen .sn-summe {
    font-size: 1.0em;
}
.sn-checkout-abschluss tr.order-total .sn-summe {
    font-weight: bold;
}

.action-button-red.add-arrow-left-white::after {
    content: url(/wp-content/themes/saninord/assets/images/buttons/feather-arrow-left-white-smaller.svg);
    width: 80px;
    height: 16px;
    display: inline-block;
}

.thwmscf-content.tc3 .thwmscf-buttons {
    display: none;
}

div.sn-checkout-legal {
    margin-bottom: 50px;
}

.thwmscf_time_line_step ul.thwmscf-tabs li a {
    /*border: none !important;*/
}

.thwmscf_time_line_step ul.thwmscf-tabs li a {
    border-top: 1px solid var(--sn-bg-perlweiss) !important;
    padding-top: 30px;
}

.thwmscf_time_line_step ul.thwmscf-tabs li a .thwmscf-tab-icon {
    color: var(--sn-bg-dunkelbraun) !important;
    background-color: var(--sn-bg-perlweiss) !important;
    width: 55px;
    height: 55px;
    padding-top: 14px;
    font-size: 1.2em;
}

.thwmscf_time_line_step ul.thwmscf-tabs li a.active {
    border-top: 1px solid var(--sn-signalrot) !important;
}

.thwmscf_time_line_step ul.thwmscf-tabs li a.active .thwmscf-tab-icon {
    background-color: var(--sn-signalrot) !important;
    color: var(--sn-bg-perlweiss) !important;
}

.thwmscf_time_line_step .thwmscf-index {
    border: none !important;
    margin-top: -58px !important;
}

.thwmscf_time_line_step ul.thwmscf-tabs span.thwmscf-tab-label {
    padding: 13px 0 0 0;
}

.sn-woocommerce-order-details {
    padding: 20px 0;
}
.sn-woocommerce-order-details,
.sn-woocommerce-order-details a {
    color: var(--sn-bg-dunkelbraun);
    text-decoration: none;
    font-size: 1.2em;
}

.woocommerce-checkout #payment ul.payment_methods {
    border-bottom: none !important;
}

.cart-count-badge {
    position: absolute;
    top: 3px;
    right: 5px;
    background: var(--sn-signalrot);
    color: var(--sn-bg-perlweiss);
    font-size: 10px;
    font-weight: normal;
    min-width: 16px;
    line-height: 14px;
    text-align: center;
    border-radius: 50%;
    padding: 2px 0 0 0;
    transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}
.cart-count-badge:not(.has-items) {
    display: none;
}
.cart-count-badge.has-items {
    animation: badge-pop 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}
@keyframes badge-pop {
    0% {
        transform: scale(1);
    }
    50% {
        transform: scale(1.2);
    }
    100% {
        transform: scale(1);
    }
}

.woocommerce form.login {
    border: none;
    padding: 0;
    margin: 0;
}

.woocommerce form .show-password-input::before, .woocommerce-page form .show-password-input::before {
    content: none;
    background: none;
}

.woocommerce-orders-table__cell-order-actions a {
    margin-right: 15px;
}

.woocommerce .woocommerce-customer-details address {
    border-radius: 0;
    border-bottom-width: 1px;
    border-right-width: 1px;
}

.woocommerce-account nav.woocommerce-MyAccount-navigation {
    width: 21.5%;
    font-size: 1.3em;
    padding: 40px 20px 40px 40px;
    background-color: #F4EEE9;
    margin-right: 40px;
}
.woocommerce-account nav.woocommerce-MyAccount-navigation ul {
    padding-left: 0;
}
.woocommerce-account nav.woocommerce-MyAccount-navigation li {
    list-style: none;
    padding: 10px 0;
}
.woocommerce-account nav.woocommerce-MyAccount-navigation li a {
    color: #2B231CA6;
}
.woocommerce-account nav.woocommerce-MyAccount-navigation li.is-active {
    padding-left: 40px;
    background-image: url(assets/images/feather-red/arrow-right-long.svg);
    background-repeat: no-repeat;
    background-position: left center;
    background-size: 30px;
}
.woocommerce-account nav.woocommerce-MyAccount-navigation p.header {
    font-weight: bold;
    margin-bottom: 40px;
    text-align: left;
    /*padding-right: 20px;
    font-size: 1.2em;*/
}
.woocommerce-account .woocommerce-MyAccount-content {
    width: 74.5%;
}
.woocommerce-MyAccount-navigation-link--customer-logout {
    margin-top: 40px;
}

@media (max-width: 768px) {
    /*.custom-cart-icon svg {
        width: 24px;
        height: 24px;
    }*/

    .cart-count-badge {
        font-size: 10px;
        min-width: 15px;
        height: 15px;
        line-height: 13px;
    }
}

@media screen and (max-width: 480px) {
    ul.products.columns-3 {
        grid-template-columns: repeat(1, minmax(auto, 1fr));
    }
    .form-row.three-columns > div {
        flex-direction: column;
    }

    .entry-summary {
        padding-top: 20px;
    }

    .woocommerce-message,
    .custom-product-accordion summary {
        -webkit-tap-highlight-color: transparent !important;
        outline: none !important;
        -webkit-appearance: none !important;
        appearance: none !important;
    }

    .woocommerce-message:focus,
    .woocommerce-message:focus-visible,
    .custom-product-accordion summary:focus,
    .custom-product-accordion summary:focus-visible {
        outline: none !important;
        box-shadow: none !important;
        border: none !important;
    }

    .custom-product-accordion summary {
        padding: 25px 35px 22px 20px;
        /*float: left;*/
        width: 100%;
    }
    .custom-product-accordion summary h2 {
        font-size: 1.2em;
        float: left;
        padding-top: 2px;
    }
    .custom-product-accordion .accordion-content .accordion-content-body {
        padding: 9px 22px;
    }
    .woocommerce-info, .woocommerce-message {
        padding: 65px 30px 30px 30px;
        background-position: left 30px top 25px;
    }

    .custom-product-accordion summary span.resp-arrow {
        /*margin-right: -30px !important;*/
        float: right;
        height: 23px;
        margin-top: 0;
    }

    .sn-product-details-zahlung {
        width: 100%;
    }

    .sn-product-details-zum-warenkorb {
        display: flex;
        width: 100%;
    }

    .woocommerce .sn-product-details-anzahl-input .quantity .qty, .sn-product-details-zahlung .quantity input {
        padding-left: 0;
    }

    .woocommerce form .form-row-first, .woocommerce form .form-row-last, .woocommerce-page form .form-row-first, .woocommerce-page form .form-row-last {
        width: 100%;
    }

    .thwmscf-tab-panels {
        padding: 0 !important;
    }

    ul.thwmscf-tabs li a {
        padding: 29px 1px 10px 1px !important;
        font-size: 0.9em !important;
    }

    .thwmscf-buttons {
        margin-top: 40px !important;
    }

    div.thwmscf-buttons input.button-next {
        margin-top: 20px;
    }

    .sn-product-image-wrapper {
        max-height: 550px;
    }

    .sn-product-cart-wrapper .arrow {
        margin-left: 10px;
    }

    .woocommerce table.shop_table .product-name,
    .woocommerce table.shop_table .product-price,
    .woocommerce table.shop_table .product-quantity,
    .woocommerce table.shop_table .product-subtotal,
    .woocommerce table.shop_table .product-subtotal {
        padding-right: 0;
    }

    div.thwmscf-buttons button.button-next {
        margin-top: 10px;
        margin-left: 0px;
    }

    .woocommerce-checkout-payment,
    .sn-checkout-abschluss {
        width: 100% !important;
        padding-left: 0px !important;
    }
    .sn-checkout-abschluss {
        margin-top: 40px; !important;
    }

    .sn-warenkorb-summen {
        padding: 15px 35px 30px 35px !important;
    }

    .thwmscf_time_line_step ul.thwmscf-tabs {
        margin-bottom: 10px !important;
    }

    .custom-lehrgangsinhalte-accordion h2 {
        font-size: 1.2em;
    }
    .custom-accordion summary {
        padding: 30px 10px 30px 35px;
    }
    .custom-accordion summary h2 {
        padding: 0 15px 0 0;
        margin: 0;
    }
    .custom-accordion .accordion-content .accordion-content-body {
        padding: 15px 30px;
    }

    .custom-accordion .accordion-content .accordion-content-body > ul {
        padding-left: 15px;
    }

    .custom-accordion summary span.resp-arrow {
        float: right;
        /*margin-top: -35px;
        margin-right: -30px !important;*/
    }

    a.custom-cart-icon img {
        height: 19px;
    }

    div.sn-warenkorb-link {
        padding: 5px 0 0 0;
    }
    div.sn-warenkorb-link a.custom-cart-icon {
        position: relative;
        top: -2px;
    }

    .cart-count-badge {
        top: -2px;
        right: -5px;
    }

}

