/*
Theme Name: RESET
Version: 999.0.4
*/

/* Montserrat — self-hosted, no Google Fonts dependency */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 300 600;
  font-display: swap;
  src: url('fonts/montserrat/montserrat-cyrillic-ext.woff2') format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 300 600;
  font-display: swap;
  src: url('fonts/montserrat/montserrat-cyrillic.woff2') format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 300 600;
  font-display: swap;
  src: url('fonts/montserrat/montserrat-vietnamese.woff2') format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 300 600;
  font-display: swap;
  src: url('fonts/montserrat/montserrat-latin-ext.woff2') format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 300 600;
  font-display: swap;
  src: url('fonts/montserrat/montserrat-latin.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
    font-size: 100%;
    font: inherit;
    padding: 0;
    border: 0;
    margin: 0px;
}

body {
    line-height: 1;
}

body .contentpartPage .entry-content p,
body .contentpartPage .entry-content li,
body .contentpartPage .entry-content h1,
body .contentpartPage .entry-content h2,
body .contentpartPage .entry-content h3,
body .contentpartPage .entry-content h4,
body .contentpartPage .entry-content h5,
body .contentpartPage .entry-content h6 {
    font-weight: 350 !important;
    font-family: 'Montserrat', sans-serif !important;
}

ol,
ul {
    list-style: none
}

blockquote,
q {
    quotes: none
}

blockquote:before,
blockquote:after,
q:before,
q:after {
    content: '';
    content: none
}

table {
    border-collapse: collapse;
    border-spacing: 0
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
    display: block;  
    margin-top: 50px;
}

.clear {
    clear: both
}

/* Block-Editor-Farbpalette (Frontend) – zu functions.php editor-color-palette */
.has-dark-gray-color { color: #222831 !important; }
.has-dark-gray-background-color { background-color: #222831 !important; }
.has-gold-color { color: #C1A57B !important; }
.has-gold-background-color { background-color: #C1A57B !important; }
.has-light-gray-color { color: #ECECEC !important; }
.has-light-gray-background-color { background-color: #ECECEC !important; }
.has-white-color { color: #FFFFFF !important; }
.has-white-background-color { background-color: #FFFFFF !important; }

.screen-reader-text {
    clip: rect(1px, 1px, 1px, 1px);
    position: absolute !important
}

img {
    border: 0px;
    max-width: 100%;
    height: auto;
}

.page-template-konfigurator_tc_step1 .infoBTNBikeart {
    display: none;
}

.trans {
    opacity: 0
}


.summaryPartRowLieferzeit .shippingtimeAlt {
    display: none;
    position: relative;
    z-index: 2;
    margin: 0;
    line-height: 22px;
    min-height: 25px;
    font-size: 16px;
}

.woocommerce-product-details__short-description a {
    text-decoration: underline;
}

.ausverkauft {
    display: block;
    position: absolute;
    inline-size: 0px;
    z-index: 99999;
    margin: -100px 0 0 0;
    background: orange;
    width: 150px;
    text-align: center;
    color: #222831;
}

html,
body {
    font-size: 18px;
    line-height: 30px;
    color: #222831;
    background-color: #ececec;
    -moz-osx-font-smoothing: grayscale;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    font-style: normal;
    overflow-x: hidden;
    height: 100%;
}

.pagewrapper {
    display: flex;
    flex-direction: column;
    min-height: 100vh;
}


.preisinfolineHide {
    opacity: 0;
    pointer-events: none;
    position: absolute !important;
    top: -999999px;
}

.grecaptcha-badge {
    bottom: -300px !important;
    z-index: 9999999999;
    border-radius: 100px 100px 100px 100px !important;
    -moz-border-radius: 100px 100px 100px 100px !important;
    -webkit-border-radius: 100px 100px 100px 100px !important;
}

.showcaptcha .grecaptcha-badge {
    bottom: 7px !important;
    left: 7px;
    top: inherit;
    width: 50px !important;
    height: 50px !important;
    box-shadow: none !important;
    border: 1px solid #eee;
    transition: all 0.3s ease 0s !important;
}

.showcaptcha .grecaptcha-badge:hover {
    width: 256px !important;
    border: 1px solid #eee;
    height: 60px !important;
    border-radius: 0px 0px 0px 0px !important;
    -moz-border-radius: 0px 0px 0px 0px !important;
    -webkit-border-radius: 0px 0px 0px 0px !important;
}

.displaynone {
    display: none;
}

.hideContent {
    display: none !important;
}

.IsidoraSansBlack {
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
}

.IsidoraSansBold {
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
}

.IsidoraSansMedium {
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
}

.IsidoraSansSemiBold {
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
}

.IsidoraSansThin {
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
}

strong,
b {
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
}


p {
    margin: 0 0 10px 0;
    max-width: 100%;
    word-wrap: break-word;
    overflow-wrap: break-word;
    box-sizing: border-box;
}

span {
    white-space: normal;
}

.transAll {
    -webkit-transition: all 350ms;
    -moz-transition: all 350ms;
    -o-transition: all 350ms;
    transition: all 350ms;
}

a img {
    border: 0px !important;
    opacity: 1;
    -webkit-transition: opacity 350ms;
    -moz-transition: opacity 350ms;
    -o-transition: opacity 350ms;
    transition: opacity 350ms;
}

a img:hover {
    opacity: 0.75;
    size: 0px;
}

.text-input a,
.textinput a {
    border-bottom: 1px solid #cccccc;
}

a {
    color: #222831;
    border-bottom: 0px solid #cccccc;
    text-decoration: none;
}

.mobnavbtn,
.mobnavbtnClose,
.footermobBTN {
    display: none;
}

/* Ensure mobile menu is hidden on desktop and desktop menu is always horizontal */
@media screen and (min-width: 1024px) {
    .mobnavbtn,
    .mobnavbtnClose {
        display: none !important;
    }
    .navipart {
        display: flex !important;
        flex-direction: row !important;
        align-items: center !important;
    }
    .metaenuTop {
        display: flex !important;
        flex-direction: row !important;
        align-items: center !important;
    }
    .mainmenuTop {
        display: flex !important;
        flex-direction: row !important;
        align-items: center !important;
    }
}

.search .product-type-simple {
    display: none;
}

.post-edit-link {
    display: none
}

.search article {
    float: left;
    width: 100%;
    margin: 0 0 22px 0;
    border-bottom: 1px solid #eee;
}

.search article:last-child {
    border-bottom: 0px solid #eee;
}

.suchlogo {
    display: block;
    margin: 0 auto;
    width: 150px;
    position: relative;
    top: 40px;
}

/* Search functionality removed */

#cookie-notice {
    z-index: 999999999999999999 !important;
    background: #ececec !important;
    border-top: 1px solid #ddd;
    color: #222831 !important;
}

#cookie-notice * {
    color: #222831 !important;
}

#cookie-notice a {
    color: #222831 !important;
    text-decoration: underline;
}

#cookie-notice a:hover {
    color: #222831 !important;
    text-decoration: none;
}

.cn-button.wp-default {
    border-radius: 0px !important;
    border: 0px solid #ffffff !important;
    font-family: azo-sans-web, sans-serif !important;
}

.text-input a:hover,
.textinput a:hover,
.inputext a,
.inputexta:hover {
    border-bottom: 1px solid #000000;
}

a.btn:hover,
a.btn {
    border-bottom: 0px solid #000000;
}

.menu-item a {
    border: 0px;
}

.bglightgrey {
    background: #222831;
}

.bgorange {
    background: #F59B0A;
    color: #ffffff;
}

.hintergrund_verlauf {
    background: rgba(247, 247, 247, 1);
    background: -moz-linear-gradient(top, rgba(247, 247, 247, 1) 0%, rgba(255, 255, 255, 1) 100%);
    background: -webkit-gradient(left top, left bottom, color-stop(0%, rgba(247, 247, 247, 1)), color-stop(100%, rgba(255, 255, 255, 1)));
    background: -webkit-linear-gradient(top, rgba(247, 247, 247, 1) 0%, rgba(255, 255, 255, 1) 100%);
    background: -o-linear-gradient(top, rgba(247, 247, 247, 1) 0%, rgba(255, 255, 255, 1) 100%);
    background: -ms-linear-gradient(top, rgba(247, 247, 247, 1) 0%, rgba(255, 255, 255, 1) 100%);
    background: linear-gradient(to bottom, rgba(247, 247, 247, 1) 0%, rgba(255, 255, 255, 1) 100%);
    filter: progid: DXImageTransform.Microsoft.gradient(startColorstr='#f7f7f7', endColorstr='#ffffff', GradientType=0);
}

h1 {
    font-family: 'Montserrat', sans-serif;
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

h2 {
    font-size: 30px;
    line-height: 36px;
    font-family: 'Montserrat', sans-serif;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    float: left;
    width: 100%;
    margin: 0 0 20px 0;
}

h3 {
    font-size: 30px;
    line-height: 36px;
    float: left;
    width: 100%;
    margin: 0 0 20px 0;
}

h4 {
    font-size: 24px;
    line-height: 32px;
    float: left;
    width: 100%;
    margin: 0 0 18px 0;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
}

h5 {
    font-size: 20px;
    line-height: 28px;
    float: left;
    width: 100%;
    margin: 0 0 15px 0;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
}

h6 {
    font-size: 18px;
    line-height: 26px;
    float: left;
    width: 100%;
    margin: 0 0 12px 0;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
}

.inputext ul {
    margin: 7px 0 104px 0;
    width: 100%;
    float: left;
}

.inputext ul li {
    position: relative;
    float: left;
    width: 90%;
    margin: 8px 0 8px 46px;
}

.inputext ul li::before {
    background-image: url("img/li.svg");
    content: "";
    position: absolute;
    left: -50px;
    width: 30px;
    height: 30px;
    background-repeat: no-repeat;
    background-size: 100%;
}

.inputextstandardli ul li {
    position: relative;
    float: left;
    width: 90%;
    margin: 8px 0 8px 26px;
}

.inputextstandardli ul li::before {
    background-image: none;
    content: "-";
    position: absolute;
    left: -23px;
    width: 0px;
    height: 2px;
    background-size: 100%;
    font-size: 25px;
}

.inputext p {
    margin: 0 0 10px 0;
}

.clear {
    width: 100%;
    clear: both
}

.contentpart {
    width: 100%;
    margin: 0 auto;
    height: auto;
    max-width: 100%;
}

#product-page .contentpart {
    padding-top: 50px;
}

.contentpartwrapper {
    width: 100%;
    float: left;
    position: relative;
    max-width: 100%;
    box-sizing: border-box;
    overflow-x: visible; /* Allow full-width blocks to break out */
}

.contentpartCenter {
    width: 100%;
    max-width: 100%;
    margin: 0 auto;
    height: auto;
    position: relative;
    padding: 0 60px;
    box-sizing: border-box;
    overflow-x: visible; /* Allow full-width blocks to break out */
}

@media screen and (max-width: 1023px) {
    .contentpartCenter {
        padding: 0 30px;
    }
}

@media screen and (max-width: 600px) {
    .contentpartCenter {
        padding: 0 20px;
    }
}

.contentpartInner {
    width: 100%;
    float: left;
    height: auto;
    position: relative;
    padding: 0;
    margin: 0;
    box-sizing: border-box;
    overflow-x: visible; /* Allow full-width blocks to break out */
    max-width: 100%;
}

/* Ensure full-width blocks can break out of contentpartInner */
.contentpartInner > .alignfull,
.contentpartInner > .alignwide {
    overflow-x: visible;
}

/* Ensure configurator inner doesn't interfere with flexbox layout */
.contentpartKonfigurator .contentpartInner {
    display: block;
    overflow: visible;
}

.contentpartPage,
.contentpartHome {
    background: #ececec;
    min-height: 400px;
}

/* Produktdetailseiten: wie restliche Website – kein „Seite in der Seite“, normales Fenster-Scroll, volle Breite */
body.single-product {
    height: auto !important;
    min-height: 100%;
    overflow-x: hidden;
    overflow-y: visible !important;
}
body.single-product .pagewrapper {
    min-height: 100vh;
    height: auto !important;
    overflow: visible !important;
    max-width: none !important;
    width: 100% !important;
}
/* Single Product: kein sichtbarer „Rahmen“ – wie restliche Seite, kein eigener Kasten */
.contentpart-singleproduct {
    background: transparent;
    min-height: 400px;
}
.contentpart-singleproduct .contentpartwrapper {
    overflow: visible;
    max-width: 100%;
    width: 100% !important;
    margin: 0;
    margin-top: 30px;
}
.contentpart-singleproduct .contentpartCenter {
    overflow: visible;
    max-width: 82%;
    width: 82% !important;
    padding: 0;
    margin: 0 auto 0 9%;
}
.contentpart-singleproduct .contentpartInner {
    overflow: visible;
    max-width: 100%;
    width: 100% !important;
}
/* Produktdetail: volle nutzbare Breite */
.contentpart-singleproduct .woocommerce {
    max-width: none !important;
    width: 100% !important;
}

/* FormComplete & Co: Inhalt über festem Konfigurator-Button (rechts unten),
   damit YouTube-Button etc. von allen Seiten klickbar sind */
body.page-formcomplete .contentpartPage,
body.page-form-complete .contentpartPage {
    position: relative;
    z-index: 100;
}

.contentpartPage .entry-content,
.contentpartHome .entry-content {
    color: #222831;
    font-size: 18px;
    line-height: 30px;
    max-width: 100%;
    margin: 0 auto;
    width: 100%;
    box-sizing: border-box;
    overflow-wrap: break-word;
    word-wrap: break-word;
}

.contentpartPage .entry-header,
.contentpartHome .entry-header {
    margin-bottom: 40px;
}

.contentpartPage .entry-title,
.contentpartHome .entry-title {
    display: none;
}

.contentpartPage .entry-header,
.contentpartHome .entry-header {
    display: none;
}

.contentpartPage .entry-content h1,
.contentpartHome .entry-content h1 {
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    font-size: 52px;
    line-height: 1.2;
    color: #222831;
    margin: 40px 0 20px 0;
    overflow-wrap: break-word;
    word-wrap: break-word;
}

.contentpartPage .entry-content h2,
.contentpartHome .entry-content h2 {
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    font-size: 36px;
    line-height: 44px;
    color: #222831;
    margin: 35px 0 18px 0;
    overflow-wrap: break-word;
    word-wrap: break-word;
}

.contentpartPage .entry-content h3,
.contentpartHome .entry-content h3 {
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    font-size: 28px;
    line-height: 36px;
    color: #222831;
    margin: 30px 0 15px 0;
    overflow-wrap: break-word;
    word-wrap: break-word;
}

.contentpartPage .entry-content h4,
.contentpartHome .entry-content h4 {
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    font-size: 24px;
    line-height: 32px;
    color: #222831;
    margin: 25px 0 12px 0;
    overflow-wrap: break-word;
    word-wrap: break-word;
}

.contentpartPage .entry-content h5,
.contentpartHome .entry-content h5 {
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    font-size: 20px;
    line-height: 28px;
    color: #222831;
    margin: 20px 0 10px 0;
    overflow-wrap: break-word;
    word-wrap: break-word;
}

.contentpartPage .entry-content h6,
.contentpartHome .entry-content h6 {
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    font-size: 18px;
    line-height: 26px;
    color: #222831;
    margin: 18px 0 8px 0;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    overflow-wrap: break-word;
    word-wrap: break-word;
}

.contentpartPage .entry-content p,
.contentpartHome .entry-content p {
    margin: 0 0 20px 0;
    color: #222831;
    max-width: 100%;
    word-wrap: break-word;
    overflow-wrap: break-word;
    box-sizing: border-box;
}

.contentpartPage .entry-content a,
.contentpartHome .entry-content a {
    color: #222831;
    text-decoration: underline;
}

.contentpartPage .entry-content a:hover,
.contentpartHome .entry-content a:hover {
    text-decoration: none;
}

.contentpartPage .entry-content img,
.contentpartHome .entry-content img {
    max-width: 100%;
    margin-top: 30px;
}

.contentpartPage .entry-content ul,
.contentpartPage .entry-content ol,
.contentpartHome .entry-content ul,
.contentpartHome .entry-content ol {
    margin: 20px 0;
    padding-left: 30px;
}

.contentpartPage .entry-content li,
.contentpartHome .entry-content li {
    margin: 10px 0;
    color: #222831;
}

/* General list styling */
ul,
ol {
    margin: 20px 0;
    padding-left: 30px;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
}

ul {
    list-style-type: disc;
}

ol {
    list-style-type: decimal;
}

li {
    margin: 8px 0;
    line-height: 1.6;
    color: #222831;
}

/* Nested lists */
ul ul,
ol ol,
ul ol,
ol ul {
    margin: 8px 0;
    padding-left: 25px;
}

ul ul {
    list-style-type: circle;
}

ul ul ul {
    list-style-type: square;
}

ol ol {
    list-style-type: lower-alpha;
}

ol ol ol {
    list-style-type: lower-roman;
}

/* List items with better spacing */
ul li,
ol li {
    padding-left: 5px;
}

/* Definition lists */
dl {
    margin: 20px 0;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
}

dt {
    margin: 15px 0 5px 0;
    color: #222831;
    font-size: 18px;
}

dd {
    margin: 0 0 15px 20px;
    color: #222831;
    line-height: 1.6;
}

.contentpartPage .post-thumbnail,
.contentpartHome .post-thumbnail {
    margin: 0 0 30px 0;
    text-align: center;
}

.contentpartPage .post-thumbnail img,
.contentpartHome .post-thumbnail img {
    max-width: 100%;
    height: auto;
    border-radius: 8px;
}

.contentpartPage .entry-meta,
.contentpartHome .entry-meta {
    font-size: 16px;
    color: #666;
    margin: 0 0 20px 0;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
}

.contentpartHeader {
    background: #ececec;
    padding-top: 20px;
    margin-bottom: -30px;
    position: relative;
    z-index: 99999;
}
.contentpartPage .entry-content .less_distance_to_bottom{
    margin-bottom: -45px;
}
.contentpartHeader .contentpartwrapper {
    height: auto;
    padding: 0;
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    box-shadow: none;
    position: relative;
}

.contentpartHeader .contentpartInner {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-wrap: nowrap;
    width: 100%;
    height: auto;
    position: relative;
    overflow: visible;
    gap: 20px;
    padding-right: 360px;
    box-sizing: border-box;
}

.contentpartHeader .headerActions {
    position: absolute;
    top: 50%;
    right: 60px;
    transform: translateY(-50%);
    display: flex;
    align-items: center;
    gap: 12px;
    z-index: 10;
}

.contentpartHeader .headerActions .headerLanguageSwitcher,
.contentpartHeader .headerActions .headerCart {
    position: static;
    top: auto;
    right: auto;
    transform: none;
    margin: 0;
    min-width: 0;
}

.contentpartHeader .headerCustomerType {
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

.contentpartHeader .pk-customer-toggle {
    display: inline-flex;
    flex-direction: column;
    border: 2px solid #16242F;
    border-radius: 6px;
    overflow: hidden;
    background: #ececec;
}

.contentpartHeader .pk-customer-toggle-btn {
    appearance: none;
    border: 0;
    margin: 0;
    padding: 6px 10px;
    font-size: 12px;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    font-family: 'Montserrat', sans-serif !important;
    cursor: pointer;
    background: #ececec;
    color: #16242F;
    line-height: 1;
    flex: 1 1 0;
    min-width: 0;
    text-align: center;
}

.contentpartHeader .pk-customer-toggle-btn + .pk-customer-toggle-btn {
    border-left: 0;
    border-top: 2px solid #16242F;
}

.contentpartHeader .pk-customer-toggle-btn.is-active,
.contentpartHeader .pk-customer-toggle-btn[aria-pressed="true"] {
    background: #16242F;
    color: #ffffff;
}

.contentpartHeader .pk-info-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 20px;
    height: 20px;
    line-height: 1;
    text-align: center;
    border-radius: 50%;
    background-color: #16242F;
    color: #ffffff;
    font-size: 14px;
    cursor: pointer;
    vertical-align: middle;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    transition: background-color 0.2s ease;
    user-select: none;
    flex-shrink: 0;
    border: 0;
}

.contentpartHeader .pk-info-icon:hover {
    background-color: #0f1a22;
}

.contentpartHeader .pk-info-icon:focus {
    outline: 2px solid #16242F;
    outline-offset: 2px;
}

/* Configurator: show customer toggle above step buttons on mobile only */
.pk-config-customer-toggle-mobile {
    display: none;
}
@media screen and (max-width: 1190px) {
    .pk-config-customer-toggle-mobile {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 10px;
        margin: 0 0 10px 0;
    }
    .pk-config-customer-toggle-mobile .pk-customer-toggle {
        display: inline-flex;
        flex-direction: column;
        border: 2px solid #16242F;
        border-radius: 6px;
        overflow: hidden;
        background: #ececec;
        width: auto;
        max-width: 520px;
        margin: 0 auto;
    }
    .pk-config-customer-toggle-mobile .pk-customer-toggle-btn + .pk-customer-toggle-btn {
        border-left: 0;
        border-top: 2px solid #16242F;
    }
}

/* Mobile hamburger: customer toggle under last menu item */
.pk-customer-toggle-mobile {
    display: none;
}
@media screen and (max-width: 1190px) {
    .mobnavOn .pk-mobile-customer-type-menuitem {
        display: block !important;
    }
    .pk-mobile-customer-type-menuitem {
        display: none;
    }
    .mobnavOn .pk-customer-toggle-mobile {
        display: flex !important;
        align-items: center;
        justify-content: center;
        gap: 10px;
        padding: 14px 0;
    }
    .mobnavOn .pk-customer-toggle-mobile .pk-customer-toggle {
        flex: 0 0 auto;
        max-width: 420px;
        width: 100%;
        margin: 0 auto;
        flex-direction: column;
    }
    .mobnavOn .pk-customer-toggle-mobile .pk-customer-toggle-btn {
        text-align: center;
    }
    .mobnavOn .pk-customer-toggle-mobile .pk-customer-toggle-btn + .pk-customer-toggle-btn {
        border-left: 0;
        border-top: 2px solid #16242F;
    }
    .mobnavOn .pk-mobile-customer-type-item {
        border-bottom: 1px solid #ddd !important;
    }
}

.contentpartHeader .headerLanguageSwitcher {
    position: absolute;
    top: 50%;
    right: 110px;
    transform: translateY(-50%);
    float: none;
    margin-left: 0;
    display: flex;
    align-items: center;
    flex-shrink: 0;
    z-index: 10;
    min-width: 40px;
    height: auto;
    line-height: 1;
}

.languageSwitchLink {
    display: block;
    text-decoration: none;
    color: #222831;
    transition: opacity 0.3s ease;
    cursor: pointer;
    padding: 4px 8px;
    border: 1px solid #222831;
    border-radius: 4px;
    font-size: 14px;
}

.languageSwitchLink:hover {
    opacity: 0.7;
    background-color: #f5f5f5;
}

.languageCode {
    display: block;
    text-transform: uppercase;
}

.contentpartHeader .headerCart {
    position: absolute;
    top: 50%;
    right: 60px;
    transform: translateY(-50%);
    float: none;
    margin-left: 0;
    display: flex;
    align-items: center;
    flex-shrink: 0;
    z-index: 10;
    min-width: 40px;
    height: auto;
    line-height: 1;
}

.cartIconLink {
    display: block;
    position: relative;
    text-decoration: none;
    color: #222831;
    transition: opacity 0.3s ease;
    cursor: pointer;
}

.cartIconLink svg {
    width: 24px;
    height: 24px;
    stroke: #222831;
    display: block;
    margin: 0;
}

.cartIconLink:hover {
    opacity: 0.7;
}

.cartCount {
    position: absolute;
    top: -8px;
    right: -8px;
    background: #222831;
    color: #ececec;
    border-radius: 50%;
    width: 20px;
    height: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 12px;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    line-height: 1;
    padding: 0;
}

@media screen and (max-width: 1023px) {
    .contentpartHeader .headerLanguageSwitcher {
        position: absolute;
        top: 50%;
        right: 70px;
        transform: translateY(-50%);
        margin-left: 0;
        z-index: 10;
    }
    
    .contentpartHeader .headerCart {
        position: absolute;
        top: 50%;
        right: 30px;
        transform: translateY(-50%);
        margin-left: 0;
        z-index: 10;
    }
    
    .contentpartHeader .contentpartInner {
        padding-right: 120px;
    }
}

.contentpartHeader .logo {
    width: 200px;
    float: none;
    flex-shrink: 0;
    margin-right: 20px;
}

.contentpartHeader .navipart {
    float: none;
    display: flex !important;
    align-items: center;
    justify-content: flex-start;
    flex-direction: row !important;
    gap: 20px;
    flex-wrap: nowrap;
    min-width: 0;
    white-space: nowrap;
    margin-left: 20px;
    flex: 1 1 0;
    overflow: visible;
    max-width: calc(100% - 300px);
}

/* On desktop, show meta menu and main menu in a single row */
@media screen and (min-width: 1024px) {
    .contentpartHeader .navipart {
        flex-direction: row !important;
        align-items: center !important;
        justify-content: flex-start !important;
        gap: 25px;
        white-space: nowrap;
    }
    
    .metaenuTop {
        margin-bottom: 0;
        margin-right: 0;
        margin-top: 0;
        white-space: nowrap;
        display: flex !important;
        flex-direction: row !important;
    }

    .metaenuTop ul {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: nowrap !important;
    }
    
    .mainmenuTop {
        margin-top: 0;
        margin-left: 20px;
        white-space: nowrap;
        display: flex !important;
        flex-direction: row !important;
    }

    /* Only top-level menu uls (not .sub-menu) as horizontal row */
    .mainmenuTop > ul,
    .mainmenuTop > .combined-menu {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        gap: 20px;
        align-items: center;
        list-style: none;
        margin: 0;
        padding: 0;
    }
    
    /* Sub-menus: dropdown, not inline */
    .navipart .mainmenuTop .sub-menu {
        display: block !important;
        flex-direction: column !important;
    }
    
    /* Combine multiple menu lists into one visual menu */
    .combined-menu-wrapper .combined-menu {
        display: inline-flex !important;
    }
    
    .combined-menu-wrapper .combined-menu:first-of-type {
        margin-right: 0;
    }
    
    /* Only top-level menu items in a row; sub-menu items stay block */
    .navipart .mainmenuTop > .combined-menu > li,
    .navipart .mainmenuTop > ul > li,
    .combined-menu-wrapper .combined-menu > li {
        display: flex !important;
        flex-direction: row !important;
        float: none !important;
        margin: 0;
        font-family: 'Montserrat', sans-serif;
        font-size: 18px;
    }
}

.navipart .mainmenuTop {
    margin: 0;
    display: flex !important;
    flex-direction: row !important;
    align-items: center;
    list-style: none;
    gap: 20px;
    flex-wrap: nowrap !important;
    white-space: nowrap;
    overflow: visible;
}

.navipart .mainmenuTop li {
    position: relative;
    float: none;
    font-family: 'Montserrat', sans-serif;
    font-size: 18px;
    white-space: nowrap;
    margin: 0;
    border: none;
    padding: 8px 0;
    border-radius: 0;
    -moz-border-radius: 0;
    -webkit-border-radius: 0;
    white-space: nowrap;
    -webkit-transition: all 350ms;
    -moz-transition: all 350ms;
    -o-transition: all 350ms;
    transition: all 350ms;
}

.lang_en .navipart .mainmenuTop li {
    margin: 0;
    padding: 8px 0;
}

.navipart .mainmenuTop li:hover,
.navipart .mainmenuTop li.current-menu-item,
.navipart .mainmenuTop li.current-page-parent,
.navipart .mainmenuTop li.current-page-ancestor {
    border: none;
}

.navipart .mainmenuTop li a {
    color: #222831;
    text-decoration: none;
    border-bottom: 2px solid transparent;
    padding-bottom: 5px;
    white-space: nowrap;
    -webkit-transition: all 350ms;
    -moz-transition: all 350ms;
    -o-transition: all 350ms;
    transition: all 350ms;
}

.navipart .mainmenuTop li:hover a,
.navipart .mainmenuTop li.current-menu-item a,
.navipart .mainmenuTop li.current-page-parent a,
.navipart .mainmenuTop li.current-page-ancestor a {
    border-bottom: 2px solid #222831;
}

.navipart .mainmenuTop li:first-child {
    margin-left: 0;
}

/* Hide menu item descriptions in navigation - prevents page content from showing */
.navipart .description,
.navipart .menu-item-description,
.combined-menu .description,
.combined-menu-wrapper .description {
    display: none !important;
}

.navipart .mainmenuTop .sub-menu,
.combined-menu-wrapper .sub-menu {
    top: -9999px;
    position: absolute;
    left: -20px;
    display: block !important;
    background: #ececec;
    text-align: left;
    padding: 20px 30px;
    margin: 0;
    box-shadow: 0px 3px 10px 0px rgba(0, 0, 0, 0.1);
    border-radius: 8px;
    min-height: 0;
    height: 0;
    overflow: hidden;
    opacity: 0;
    min-width: 200px;
    list-style: none;
    -webkit-transition: opacity 350ms;
    -moz-transition: opacity 350ms;
    -o-transition: opacity 350ms;
    transition: opacity 350ms;
}



.select2-selection__clear {
    display: none;
}
/* Untermenü sichtbar: leicht überlappend, damit Maus ohne Lücke vom Elternpunkt ins Dropdown kommt */
.navipart .mainmenuTop li:hover .sub-menu,
.navipart .mainmenuTop li .sub-menu:hover {
    top: 100%;
    position: absolute;
    background: #ececec;
    padding: 20px 30px;
    margin: -4px 0 0 0;
    box-shadow: 0px 3px 10px 0px rgba(0, 0, 0, 0.1);
    border-radius: 8px;
    height: auto;
    min-height: auto;
    overflow: visible;
    opacity: 1;
}

.navipart .mainmenuTop li .sub-menu li {
    position: relative;
    float: left;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    font-size: 16px;
    margin: 0px 0px 8px 0px;
    border: none;
    padding: 8px 0;
    border-radius: 0px;
    -moz-border-radius: 0px;
    -webkit-border-radius: 0px;
    width: 100%;
    line-height: 24px;
    -webkit-transition: all 350ms;
    -moz-transition: all 350ms;
    -o-transition: all 350ms;
    transition: all 350ms;
}

.navipart .mainmenuTop li .sub-menu li a {
    display: block;
    width: 100%;
    float: left;
    color: #222831;
    text-decoration: none;
    border-bottom: 2px solid transparent;
    padding-bottom: 5px;
    -webkit-transition: all 350ms;
    -moz-transition: all 350ms;
    -o-transition: all 350ms;
    transition: all 350ms;
}

.navipart .mainmenuTop li .sub-menu li a:hover,
.navipart .mainmenuTop li .sub-menu li.current_page_item a {
    background-color: transparent;
    color: #222831;
    border: none;
    border-bottom: 2px solid #222831;
    border-radius: 0;
    padding-bottom: 5px;
}

.metaenuTop {
    float: none;
    display: flex !important;
    align-items: center;
    flex-direction: row !important;
    width: auto;
    text-align: right;
    margin-bottom: 0;
    gap: 15px;
    white-space: nowrap;
    flex-wrap: nowrap !important;
    overflow: visible;
}

.metaenuTop ul,
.metaenuTop > ul,
.mainmenuTop > ul,
.mainmenuTop > .combined-menu {
    display: flex !important;
    flex-direction: row !important;
    align-items: center;
    list-style: none;
    margin: 0;
    padding: 0;
    gap: 20px;
    flex-wrap: nowrap !important;
    white-space: nowrap;
}

/* On desktop, ensure meta menu doesn't duplicate main menu */
@media screen and (min-width: 1024px) {
    .metaenuTop {
        display: flex;
        width: auto;
    }
    
    /* Hide WooCommerce items from meta menu if they appear in main menu */
    .metaenuTop .menu-item-type-woocommerce-endpoint,
    .metaenuTop a[href*="/cart/"],
    .metaenuTop a[href*="/checkout/"],
    .metaenuTop a[href*="/my-account/"],
    .metaenuTop a[href*="/shop/"] {
        display: none !important;
    }
}

.navipart .metaenuTop li {
    float: none;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    font-size: 18px;
    white-space: nowrap;
    margin: 0;
    display: flex;
    align-items: center;
}

/*.page-template-konfigurator_tc_step1 #menu-item-wpml-ls-25-de,
.page-template-konfigurator_tc_step1 #menu-item-wpml-ls-25-en {
    display: none;
}*/

.navipart .metaenuTop li a {
    color: #222831;
    background-color: transparent;
    border: none;
    border-bottom: 2px solid transparent;
    border-radius: 0;
    padding: 8px 12px;
    padding-bottom: 5px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    opacity: 1;
    -webkit-transition: all 350ms;
    -moz-transition: all 350ms;
    -o-transition: all 350ms;
    transition: all 350ms;
}

.navipart .metaenuTop li.current-menu-item a,
.navipart .metaenuTop li a:hover {
    color: #222831;
    background-color: transparent;
    opacity: 1;
    border-bottom: 2px solid #222831;
    text-decoration: none;
}
a[title="Switch to EN"],
a[title="Switch to DE"] {
    position: absolute;
    margin: 3px auto auto 117px;
}
.navipart .metaenuTop li.current-menu-item a,
.navipart .metaenuTop li a:enabled {
    background-color: transparent;
    color: #222831;
}
.navipart .metaenuTop li:first-child {
    margin: 0 0px 0 0;
}

.navipart .metaenuTop li.wpml-ls-item-en {
    margin: 0 0px 0 5px;
}

.wpml-ls-menu-item {
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;

}

.wpml-ls-current-language a {
    color: #222831;
    background-color: transparent;
    text-decoration: underline;
}

.menu-main-container {
    float: left;
}

/* Search functionality removed */

.headerimage {
    display: block;
    width: 100%;
}

.contentpartScriptenlist .inputext {
    margin: 10px 0 0 0;
    width: 100%;
    float: left;
}

.headerTxt {
    position: absolute;
    top: 90px;
    width: 70%;
    z-index: 99
}

.noHeaderimage .headerTxt {
    position: relative;
    top: inherit;
    width: 70%;
    z-index: 99;
    margin: 50px 0 0 0;
}

.contentpartTextbox .contentpartwrapper {
    margin: 30px 0 30px 0;
}

.mainHL {
    display: block;
    font-size: 93px;
    line-height: 100px;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    margin: 0 0 30px 0;
}

.teasertext {
    font-size: 20px;
    line-height: 35px;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    width: 60%;
}

.teasertext100 .teasertext {
    width: 100%;
}

.btnBox {
    margin: 50px 0 0 0;
    float: left;
}

.btnBox a {
    cursor: pointer;
}

.contentpartTextImage .btnBox {
    margin: 50px 2% 0 0;
    float: left;
    max-width: 45%;
    line-height: 23px;
}

.btnBox2 {
    margin-left: 50px;
}

.BTN {
    font-size: 18px;
    display: inline-block;
    text-align: center;
    border: 2px solid #222831;
    background: #F59B0A;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    border-radius: 24px 24px 24px 24px;
    -moz-border-radius: 24px 24px 24px 24px;
    -webkit-border-radius: 24px 24px 24px 24px;
    color: #222831;
    padding: 15px 50px;
}

.BTN:hover {
    border: 2px solid #222831;
    background: #222831;
    color: #ffffff;
}

.headericon {
    opacity: 0;
    display: block;
    position: absolute;
    top: 10%;
    left: 50%;
    margin: 0 0 0 220px;
}

.headericon.headericon1 {
    opacity: 1;
    top: 10%;
    margin: 0 0 0 220px;
}

.headericon.headericon2 {
    opacity: 1;
    top: 40%;
    margin: 0 0 0 -890px;
}

.headericon.headericon3 {
    opacity: 1;
    top: 50%;
    margin: 0 0 0 120px;
}

.headericonOff.headericon1 {
    opacity: 0;
    top: 5%;
    margin: 0 0 0 290px;
}

.headericonOff.headericon2 {
    opacity: 0;
    top: 45%;
    margin: 0 0 0 -930px;
}

.headericonOff.headericon3 {
    opacity: 0;
    top: 60%;
    margin: 0 0 0 120px;
}

.configBTN {
    opacity: 0;
    position: fixed;
    bottom: 3%;
    right: 2%;
    z-index: 99;
}

.configBTNOn {
    opacity: 1;
    bottom: 4%;
}

.configorOff .configBTNOn {
    display: none !important;
}

.page-template-konfigurator_step1 .configBTNOn,
.page-template-konfigurator_step2 .configBTNOn,
.page-template-konfigurator_step3 .configBTNOn,
.page-template-konfigurator_step4 .configBTNOn,
.page-template-konfigurator_step2_praegung .configBTNOn,
.page-template-konfigurator_checkout .configBTNOn {
    display: none !important
}

.configBTN .BTN {
    padding: 15px 30px;
}

.bookIcon_white {
    display: none;
}

.configBTN .BTN:hover .bookIcon {
    color: #ffffff;
    display: none;
}


.bookIcon {
    display: block;
    float: right;
    }

.configBTNTxt {
    display: block;
    float: left;
    font-size: 16px;
    text-align: left;
    line-height: 19px;
    margin: 5px 20px 0 0;
}

.configBTN .BTN:hover .bookIcon_white {
    color: #ffffff;
    display: block;
}

.includes_tax {
    display: block;
}

footer {
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    font-size: 14px;
    line-height: 20px;
    background-color: #222831;
    color: #ececec;
}

.contentpartFooter {
    background: #222831 !important;
    background-color: #222831 !important;
    color: #ececec;
    margin-top: auto;
}

/* Ensure footer background is dark on configurator pages - target all possible selectors */
body.page-template-konfigurator-bike footer,
body.page-template-konfigurator-bike .contentpartFooter,
body.page-template-konfigurator-bike footer.contentpart,
.page-template-konfigurator-bike footer,
.page-template-konfigurator-bike .contentpartFooter,
.page-template-konfigurator-bike footer.contentpart,
body.page-template-konfigurator_step1 footer,
body.page-template-konfigurator_step1 .contentpartFooter,
body.page-template-konfigurator_step1 footer.contentpart,
.page-template-konfigurator_step1 footer,
.page-template-konfigurator_step1 .contentpartFooter,
.page-template-konfigurator_step1 footer.contentpart,
body.page-template-konfigurator_step2 footer,
body.page-template-konfigurator_step2 .contentpartFooter,
body.page-template-konfigurator_step2 footer.contentpart,
.page-template-konfigurator_step2 footer,
.page-template-konfigurator_step2 .contentpartFooter,
.page-template-konfigurator_step2 footer.contentpart,
body.page-template-konfigurator_step3 footer,
body.page-template-konfigurator_step3 .contentpartFooter,
body.page-template-konfigurator_step3 footer.contentpart,
.page-template-konfigurator_step3 footer,
.page-template-konfigurator_step3 .contentpartFooter,
.page-template-konfigurator_step3 footer.contentpart,
body.page-template-konfigurator_step4 footer,
body.page-template-konfigurator_step4 .contentpartFooter,
body.page-template-konfigurator_step4 footer.contentpart,
.page-template-konfigurator_step4 footer,
.page-template-konfigurator_step4 .contentpartFooter,
.page-template-konfigurator_step4 footer.contentpart,
body.page-template-konfigurator_step2_praegung footer,
body.page-template-konfigurator_step2_praegung .contentpartFooter,
body.page-template-konfigurator_step2_praegung footer.contentpart,
.page-template-konfigurator_step2_praegung footer,
.page-template-konfigurator_step2_praegung .contentpartFooter,
.page-template-konfigurator_step2_praegung footer.contentpart,
body.page-template-konfigurator_checkout footer,
body.page-template-konfigurator_checkout .contentpartFooter,
body.page-template-konfigurator_checkout footer.contentpart,
.page-template-konfigurator_checkout footer,
.page-template-konfigurator_checkout .contentpartFooter,
.page-template-konfigurator_checkout footer.contentpart {
    background: #222831 !important;
    background-color: #222831 !important;
}

.page-template-konfigurator-bike .contentpartFooter .contentpartwrapper,
.page-template-konfigurator_step1 .contentpartFooter .contentpartwrapper,
.page-template-konfigurator_step2 .contentpartFooter .contentpartwrapper,
.page-template-konfigurator_step3 .contentpartFooter .contentpartwrapper,
.page-template-konfigurator_step4 .contentpartFooter .contentpartwrapper,
.page-template-konfigurator_step2_praegung .contentpartFooter .contentpartwrapper,
.page-template-konfigurator_checkout .contentpartFooter .contentpartwrapper {
    background: transparent !important;
    background-color: transparent !important;
}

.page-template-konfigurator-bike .contentpartFooter .contentpartCenter,
.page-template-konfigurator_step1 .contentpartFooter .contentpartCenter,
.page-template-konfigurator_step2 .contentpartFooter .contentpartCenter,
.page-template-konfigurator_step3 .contentpartFooter .contentpartCenter,
.page-template-konfigurator_step4 .contentpartFooter .contentpartCenter,
.page-template-konfigurator_step2_praegung .contentpartFooter .contentpartCenter,
.page-template-konfigurator_checkout .contentpartFooter .contentpartCenter {
    background: transparent !important;
    background-color: transparent !important;
}

.page-template-konfigurator-bike .contentpartFooter .contentpartInner,
.page-template-konfigurator_step1 .contentpartFooter .contentpartInner,
.page-template-konfigurator_step2 .contentpartFooter .contentpartInner,
.page-template-konfigurator_step3 .contentpartFooter .contentpartInner,
.page-template-konfigurator_step4 .contentpartFooter .contentpartInner,
.page-template-konfigurator_step2_praegung .contentpartFooter .contentpartInner,
.page-template-konfigurator_checkout .contentpartFooter .contentpartInner {
    background: transparent !important;
    background-color: transparent !important;
}

/* Footer 4-column menu */
.footerMenuColumns {
    width: 100%;
    margin: 40px 0 30px 0;
}

/* Footer 4-column layout with titles */
.footerMenuColumns {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 30px;
    margin-bottom: 40px;
    max-width: 1000px;
    margin-left: auto;
    margin-right: auto;
}

.footerMenuColumn {
    display: flex;
    flex-direction: column;
}

.footerMenuColumn {
    text-align: center;
}



.footerMenuTitle {
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    font-size: 18px;
    color: #ececec;
    margin: 0 0 15px 0;
    padding: 0;
}

.footerMenu {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
}

.footerMenu li {
    margin: 0;
    padding: 0;
}

.footerMenu li a {
    color: #ececec;
    text-decoration: none;
    font-size: 13px;
    line-height: 20px;
    display: block;
    margin-bottom: 10px;
    transition: color 0.3s ease;
}

.footerMenu li a:hover {
    color: #ffffff;
    text-decoration: underline;
}

.footerMenu > li > a {
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    margin-bottom: 15px;
    font-size: 14px;
}

.footerMenu .sub-menu {
    list-style: none;
    padding: 0;
    margin: 0;
}

.footerMenu .sub-menu li a {
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    font-size: 12px;
    padding-left: 0;
}

@media screen and (max-width: 1023px) {
    .footerMenuColumns {
        grid-template-columns: repeat(2, 1fr);
        gap: 20px;
    }
}

@media screen and (max-width: 600px) {
    .footerMenuColumns {
        grid-template-columns: 1fr;
        gap: 15px;
    }
}

footer * {
    color: #ececec;
}

footer a {
    color: #ececec;
    text-decoration: none;
}

footer a:hover {
    color: #ffffff;
    text-decoration: underline;
}

footer .inputext a {
    border: 0px
}

footer .logo {
    width: auto;
    float: none;
    clear: both;
    margin: 40px auto 15px auto;
    text-align: center;
    order: 1;
}

.footerlogo {
    width: 120px;
    height: auto;
    display: block;
    margin: 0 auto;
}

.footerBox {
    float: left;
    width: auto;
    margin: -57px 4% 0 0;
}

.footerBox a:hover {
    text-decoration: underline
}

.footerBoxLast {
    float: right;
    margin-right: 0;
    text-align: right;
}

.metalinks {
    margin: 40px 0 0 0;
}

.contentpartFooter .contentpartInner {
    display: flex;
    flex-direction: column;
}

.lastline {
    width: 100%;
    float: left;
    margin: 0 0 20px 0;
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 15px;
    order: 2;
}

.copy {
    float: none;
    width: 100%;
    text-align: center;
    order: 3;
}

.social {
    float: none;
    width: auto;
    text-align: center;
    order: 2;
    margin: 0 auto;
}

.credit {
    order: 4;
    width: 100%;
    text-align: center;
    margin-top: 10px;
}

.social img {
    margin: 0 8px;
    width: 24px;
    height: 24px;
    transition: all 0.3s ease;
    opacity: 0.85;
    filter: brightness(0) invert(1);
}

.social img:hover {
    opacity: 1;
    transform: scale(1.15);
    filter: brightness(0) invert(1);
}


.contentpart3boxen .sectionHL h2 {
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    font-size: 158px;
    line-height: 152px;
    display: block;
    margin: 0 0 50px 0;
}

.contentparticonboxen .sectionHL h2,
.contentpartLogos h2 {
    font-size: 37px;
    line-height: 40px;
    display: block;
    margin: 0 0 50px 0;
    width: 100%;
    text-align: center;
}

.contentpart4Photoboxen .sectionHL h2 {
    font-size: 80px;
    line-height: 80px;
    display: block;
    margin: 50px 0 0px 0;
    width: 100%;
    text-align: left;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
}

.page-id-5435 .contentpart4Photoboxen .sectionHL h2 {
    margin: 20px 0 0px 0;
}

.page-id-5435 .contentparticonboxen .contentpartwrapper {
    padding: 10px 0 70px 0;
}

.contentpart4Photoboxen .bglightgrey {
    background: #ffffff;
}

.contentparticonboxen3er.contentpart4Photoboxen .featuredBox {
    border: 0px;
    border-radius: 0;
    -moz-border-radius: 0;
    -webkit-border-radius: 0;
}

.contentparticonboxen3er.contentpart4Photoboxen .iconbox {
    height: auto;
    width: 100%;
}

.contentparticonboxen3er.contentpart4Photoboxen .iconbox .icon {
    height: auto;
    width: 100%;
}

.contentparticonboxen3er.contentpart4Photoboxen .featuredBox .boxHL {
    margin: 10px 0 0px 0;
}

.contentparticonboxen3er.contentpart4Photoboxen .featuredBox .boxtext {
    min-height: 152px;
}

#shipping_method_0_flat_rate10 {
    display: none;
}

.woocommerce ul#shipping_method li label[for="shipping_method_0_flat_rate10"] {
    display: none;
}

#shipping_method_0_flat_rate11 {
    display: none;
}

.woocommerce ul#shipping_method li label[for="shipping_method_0_flat_rate11"] {
    display: none;
}

.moebelversand #shipping_method_0_flat_rate10,
.moebelversand .woocommerce ul#shipping_method li label[for="shipping_method_0_flat_rate10"] {
    display: inline;
}

.moebelversand #shipping_method_0_wbs1b472f586_sterreich,
.moebelversand ul#shipping_method li label[for="shipping_method_0_wbs1b472f586_sterreich"],
.ornamentversand #shipping_method_0_wbs113f59eae_sterreich_inkl_mwst,
.ornamentversand ul#shipping_method li label[for="shipping_method_0_wbs113f59eae_sterreich_inkl_mwst"],
.ornamentversand #shipping_method_0_wbs1b472f586_sterreich,
.ornamentversand ul#shipping_method li label[for="shipping_method_0_wbs1b472f586_sterreich"],
.moebelversand #shipping_method_0_flat_rate11,
.moebelversand ul#shipping_method li label[for="shipping_method_0_flat_rate11"] {
    display: none !important;
}

.productitemcats {
    display: none;
}

.contentpart4Photoboxen .contentpartwrapper {
    margin-top: 0px;
    padding-top: 0px;
}

.contentpart4iconboxen.contentpart4Photoboxen .iconbox {
    height: auto;
    width: 100%;
}

.contentpart4iconboxen.contentpart4Photoboxen .iconbox .icon {
    height: auto;
    width: 100%;
}

.copyrightline {
    position: relative;
    bottom: 10px;
    background-color: rgba(255, 255, 255, 0.6);
    width: 100%;
    font-size: 14px;
    padding: 0px;
    line-height: 26px;
    margin: 0px;
    opacity: 0.5;
}

.contentpart4iconboxen.contentpart4Photoboxen .featuredBox .boxHL {
    margin: 20px 0 0px 0;
}

.contentpartLogos {
    text-align: center;
}

.contentpartLogos .contentpartwrapper {
    padding: 80px 0;
}

.logoItem {
    margin: 0 12px;
    height: 96px;
}

.agbcheckboxinfotext {
    font-size: 16px;
    line-height: 24px;
    display: block;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    width: 92%;
    float: right;
    margin: 0 3% 0 0;
}

.agbsubtext {
    display: block;
    font-size: 14px;
    margin: 3px 0 0 0;
}

.requiredcheckbox {
    position: absolute;
    color: #c0260b;
}

#wirecard-integrated-payment-page-frame {
    height: 380px !important;
}

a.intextlink {
    text-decoration: underline;
}

.woocommerce form .datenschutzpart .input-checkbox,
.woocommerce form .agbpart .input-checkbox {
    display: inline;
    margin: -2px 8px 0 0;
    text-align: center;
    vertical-align: middle;
    width: 25px;
}

.woocommerce form .agbpart .input-checkbox {
    margin: -15px 8px 0 0 !important;
}

.contentpart3boxen .contentpartwrapper {
    padding: 50px 0 70px 0;
    margin: 0;
}

.contentparticonboxen .contentpartwrapper {
    padding: 50px 0 70px 0;
    margin: 0;
}

.contentparticonboxenfreisteller .contentpartwrapper {
    padding: 50px 0 0px 0;
    margin: 0;
}

.featuredBox {
    background: #ffffff;
    cursor: default;
    text-align: center;
    position: relative;
    float: left;
    width: calc(33.333% - 2%);
    margin: 0 3% 0 0;
    border: 1px solid #D9D9D9;
    border-radius: 24px 24px 24px 24px;
    -moz-border-radius: 24px 24px 24px 24px;
    -webkit-border-radius: 24px 24px 24px 24px;
    -webkit-box-shadow: 14px 17px 6px 0px rgba(50, 50, 50, 0.03);
    -moz-box-shadow: 14px 17px 6px 0px rgba(50, 50, 50, 0.03);
    box-shadow: 14px 17px 6px 0px rgba(50, 50, 50, 0.03);
    -webkit-transition: padding 0.7s;
    -moz-transition: padding 0.7s;
    -o-transition: padding 0.7s;
    transition: padding 0.7s;
    box-sizing: border-box;
    max-width: 100%;
}

.contentpartNewsrow .featuredBox:nth-child(odd) {
    clear: left;
}

.contentparticonboxen .featuredBox {
    background: #ffffff;
    cursor: default;
    text-align: center;
    position: relative;
    float: left;
    width: calc(33.333% - 2%);
    margin: 0 3% 0 0;
    border: 1px solid #D9D9D9;
    border-radius: 24px 24px 24px 24px;
    -moz-border-radius: 24px 24px 24px 24px;
    -webkit-border-radius: 24px 24px 24px 24px;
    -webkit-box-shadow: 14px 17px 6px 0px rgba(50, 50, 50, 0.0);
    -moz-box-shadow: 14px 17px 6px 0px rgba(50, 50, 50, 0.0);
    box-shadow: 14px 17px 6px 0px rgba(50, 50, 50, 0.0);
    box-sizing: border-box;
    max-width: 100%;
}

.contentpart4iconboxen .featuredBox {
    background: inherit;
    cursor: default;
    text-align: center;
    position: relative;
    float: left;
    width: calc(25% - 2.25%);
    margin: 0 3% 0 0;
    border: 0px solid #D9D9D9;
    box-sizing: border-box;
    max-width: 100%;
}

.contentpart5iconboxen .featuredBox {
    width: calc(20% - 1.28%);
    margin: 0 1.6% 0 0;
    box-sizing: border-box;
    max-width: 100%;
}

/* Ensure last child in any box container has no right margin for proper alignment */
.featuredBox:last-child,
.contentparticonboxen .featuredBox:last-child,
.contentpart4iconboxen .featuredBox:last-child,
.contentpart5iconboxen .featuredBox:last-child {
    margin-right: 0;
}

/* Ensure box containers properly contain their children */
.contentpart3boxen .contentpartInner,
.contentparticonboxen .contentpartInner,
.contentpart4iconboxen .contentpartInner,
.contentpart5iconboxen .contentpartInner {
    overflow-x: hidden;
    max-width: 100%;
    box-sizing: border-box;
}

/* Remove left positioning to ensure boxes align properly */
.featuredBox_0,
.featuredBox_1,
.featuredBox_2 {
    left: auto;
    position: relative;
}

.featuredBoxOn.featuredBox_0 {
    width: 38%;
    margin-right: -7%;
    left: -2%;
    margin-top: -20px;
    padding: 20px 0 20px 0;
}

.featuredBoxOn.featuredBox_1 {
    width: 38%;
    margin-right: -7%;
    left: -0.5%;
    margin-top: -20px;
    padding: 20px 0 20px 0;
}

.featuredBoxOn.featuredBox_2 {
    width: 38%;
    margin-right: -7%;
    left: 2%;
    margin-top: -20px;
    padding: 20px 0 20px 0;
}

.featuredBoxOn {
    z-index: 10
}

.featuredBoxInner {
    width: 90%;
    margin: 20px auto;
}

.featuredBoxInner .btnBox {
    position: absolute;
    bottom: 50px;
    width: 90%;
    text-align: center;
}


.contentpart3boxen .featuredBox .boxHL {
    font-size: 30px;
    color: #222831;
    margin: 50px 0 50px 0;
}

.contentparticonboxen .featuredBox .boxHL {
    font-size: 26px;
    margin: 40px 0 0px 0;
}

.contentparticonboxen .featuredBox .boxHL {
    font-size: 18px;
    margin: 40px 0 0px 0;
    line-height: 22px;
    min-height: 40px;
}

.contentpartNewsrow .featuredBox .boxHL strong br {
    display: none;
}

.contentparticonboxen .featuredBox .boxtext {
    font-size: 16px;
    line-height: 30px;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
}

.boxtext.inputext {
    min-height: 1px;
    margin: 0 0 20px 0;
    float: left;
    width: 100%;
}

.contentpart5iconboxen .featuredBox .boxtext {
    min-height: 152px;
}

.contentpartTextbox .boxtext.inputext {
    min-height: 1px;
    margin: 0 4% 20px 0;
    float: left;
    width: 48%;
}

.contentpartTextbox .boxtext2.inputext {
    margin: 0 0% 20px 0;
}

.onecolumtext .boxtext1.inputext {
    width: 80%;
}

.onecolumtext .boxtext2.inputext {
    display: none;
}

.scriptrowbox {
    width: 100%;
    float: left;
    margin: 50px 0 50px 0;
}

.scriptrow {
    border: 1px solid #D9D9D9;
    width: 47%;
    float: left;
    margin: 10px 4% 10px 0;
    border-radius: 24px 24px 24px 24px;
    -moz-border-radius: 24px 24px 24px 24px;
    -webkit-border-radius: 24px 24px 24px 24px;
}

.scriptrow:nth-child(even) {
    margin-right: 0;
}

.scriptrowTitel {
    width: 84%;
    float: left;
    margin: 15px 0 15px 3%;
    height: 20px;
    line-height: 16px;
    overflow: hidden;
    font-size: 16px;
}

.scriptrowPrice {
    font-size: 16px;
    float: right;
    margin: 10px 3% 0 0;
}

.iconbox {
    height: 70px;
    position: relative;
    margin: 10px 0 0 0;
    float: left;
    width: 100%;
}

.contentparticonboxen3er .iconbox,
.contentpart4iconboxen .iconbox,
.contentpart5iconboxen .iconbox {
    height: 70px;
}

.contentparticonboxen3er .iconbox .icon,
.contentpart4iconboxen .iconbox .icon,
.contentpart5iconboxen .iconbox .icon {
    height: 65px;
}

.trennline .trennline {
    width: 100%;
    height: 1px;
    background: #F59B0A;
    margin: 50px 0 50px 0;
}

.Infotextpart {
    float: left;
    width: 48%;
    margin: 100px 0 50px 0;
}

.contentpartproductlist .Infotextpart.noinfotext {
    margin: 0px;
    height: 10px;
}

.Infotextpart .boxtext {
    width: 85%;
    margin: 0 0 30px 0;
}

.Infotextpart h3 {
    color: #222831;
}

.freistellerpart {
    float: right;
    width: 48%;
}

.freisteller {
    top: 90px;
    display: block;
    float: right;
    width: 100%;
    position: relative;
    margin: 0px -100px -100px 0;
}

.endlesspaperIcon {
    display: block;
    position: absolute;
    margin: 20% 0 0 -110px;
}

.contenbildrightPart.trans {
    width: auto;
    position: absolute;
    right: 0px;
    bottom: -10px;
    z-index: -1;
}

.contenbildrightPart.trans {
    width: 50%;
    position: relative;
    right: inherit;
    bottom: inherit;
    z-index: -1;
    float: right;
    margin: 104px 0 0 0;
}

.contenbildrightPart.contenbildrightPart {
    width: 50%;
    position: relative;
    right: inherit;
    bottom: inherit;
    z-index: -1;
    float: right;
    margin: 104px 0 0 0;
}

.contenbildrightPart.contenbildrightPart .contenbildright {
    display: block;
    max-width: inherit;
}

.contenbildrightPart.produktteaserpart {
    z-index: 5;
    width: 48%;
}

.teaserproduktbox {
    margin: 30px 0 30px 0;
    margin-right: 0px;
    width: 31.3%;
    float: left;
    min-height: 400px;
}

.contentpartInnerProducts {
    margin-bottom: 50px
}

.shopprouctlist .produktbild {
    display: none;
}

.shopprouctlist .teaserproduktbox,
.shopprouctlist .teaserproduktbox:nth-child(2n),
.shopprouctlist .teaserproduktbox:nth-child(3n) {
    height: 60px;
    min-height: 60px;
    max-height: 60px;
    opacity: 1;
    border: 1px solid #D9D9D9;
    width: 47%;
    float: left;
    margin: 10px 2% 10px 0 !important;
    position: relative;
    overflow: hidden;
    border-radius: 24px 24px 24px 24px;
    -moz-border-radius: 24px 24px 24px 24px;
    -webkit-border-radius: 24px 24px 24px 24px;
    -webkit-transition: background 350ms;
    -moz-transition: background 350ms;
    -o-transition: background 350ms;
    transition: background 350ms;
}

.contentpartproductlist .addtocartlink,
.contentpart4iconboxen .addtocartlink,
.contentparticonboxen3er .addtocartlink {
    display: block;
    float: left;
    margin: 10px 0 0 -2px;
    font-size: 16px;
    font-family: IsidoraSans-Bold !important;
    text-align: center !important;
    border-radius: 10px !important;
    width: auto;
    font-size: 15px;
    padding: 6px 10px 5px 10px;
    line-height: 16px;
    border: 2px solid #222831 !important;
    -moz-transition: all 350ms;
    -o-transition: all 350ms;
    transition: all 350ms;
}

.contentpart4iconboxen .addtocartlink,
.contentparticonboxen3er .addtocartlink {
    display: inline-block;
    float: none;
    margin: 0px auto;
}

.shopprouctlist .addtocartlink {
    display: block;
    float: left;
    width: 100%;
    margin: 0px 0 0 18px;
    font-size: 16px;
    position: absolute;
    bottom: -30px;
    font-family: IsidoraSans-Bold !important;
    text-align: center !important;
    border-radius: 10px !important;
    width: auto;
    font-size: 13px;
    padding: 0 10px 0 10px;
    line-height: 16px;
    border: 2px solid #222831 !important;
    -moz-transition: all 350ms;
    -o-transition: all 350ms;
    transition: all 350ms;
}

.woocommerce div.product .woocommerce-tabs .panel {
    line-height: 22px;
}

.shopprouctlist .teaserproduktbox:hover .addtocartlink {
    bottom: 2px;
    left: 8px;
}

.shopprouctlist .teaserproduktbox .addtocartlink:hover,
.contentpartproductlist .addtocartlink:hover,
.contentpart4iconboxen .addtocartlink:hover,
.contentparticonboxen3er .addtocartlink:hover {
    color: #ffffff !important;
    background: #222831;
}

.shopprouctlist .teaserproduktbox .addtocartlink:hover a,
.contentpartproductlist .addtocartlink:hover a,
.contentpart4iconboxen .addtocartlink:hover a,
.contentparticonboxen3er .addtocartlink:hover a {
    color: #ffffff !important;
}

.addtocartlink .wc-forward {
    margin: 0 0 0 20px;
}

.addtocartlink .wc-forward:before {
    content: "✓";
    color: #F59B0A;
    position: absolute;
    font-size: 29px;
    margin: 0 0 0 -23px;
}

.shopprouctlist .teaserproduktbox:hover {
    background: #efefef;
}

.shopprouctlist .produktname {
    width: 84%;
    float: left;
    margin: 24px 0 15px 3%;
    height: 30px;
    line-height: 16px;
    overflow: hidden;
    font-size: 15px;
    -moz-transition: all 350ms;
    -o-transition: all 350ms;
    transition: all 350ms;
}

.shopprouctlist .teaserproduktbox:hover .produktname {
    margin: 16px 0 15px 3%;
}

.shopprouctlist .Productpreis {
    -moz-osx-font-smoothing: grayscale;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    font-style: normal;
    float: right;
    width: 13%;
    font-size: 16px;
    margin: 16px 0 0 0;
}

.shopprouctlist .Productpreis strong,
.shopprouctlist .Productpreis b {
    -moz-osx-font-smoothing: grayscale;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    font-style: normal;
}

.teaserproduktbox1 {
    margin-right: 3%;
}

.contentpartproductlist .teaserproduktbox1:nth-child(3n) {
    margin-right: 0%;
}

.teaserproduktbox2 {
    margin-right: 3%;
}

.produktbild {
    display: block;
    width: 100%;
}

.produktname {
    font-size: 25px;
    line-height: 30px;
    width: 100%;
    float: left;
    margin: 10px 0 0 0;
}

.contentpart .sectionHLsub h2 {
    font-size: 80px;
    line-height: 80px;
    display: block;
    margin: 50px 0 0px 0;
    width: 100%;
    text-align: left;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
}

.contentpartTextImage .Infotextpart {
    margin: 30px 0 0 0;
}

.contentpart .Infotextpart h3.boxtitel,
.boxtitel {
    font-size: 37px;
    line-height: 50px;
    color: #222831;
}

.contentpart2iconboxen .featuredBox {
    background: none;
    width: 47%;
    margin: 0 0% 0 0;
    border: 0px solid #D9D9D9;
}

.contentpart2iconboxen .contentparticonboxen .featuredBox:last-child {
    margin-right: 0px;
    float: right;
}

.contentpart2iconboxen .featuredBox .boxHL {
    font-size: 37px;
    line-height: 50px;
    margin: 20px 0 20px 0;
    float: left;
    text-align: center;
    width: 100%;
    display: block;
}

.contentpart2iconboxen .iconbox {
    height: 115px;
}

.contentpart2iconboxen .featuredBoxInner .btnBox {
    position: relative;
    bottom: inherit;
    width: 100%;
    text-align: center;
    margin: 30px auto 0 auto;
}

.contentpart2spalten .Infotextpart {
    float: left;
    width: 40%;
    margin: 50px 0 0 0;
}

.contentpart2spalten .iconbox {
    min-height: 100px;
    height: auto;
}

.contentpart2spalten .Infotextpart .boxtext {
    width: 100%;
    margin: 0 0 30px 0;
}

.contentpart2spalten.contentpart2spalten-2nd .Infotextpart {
    float: right;
}

.contentpart2spalten.contentpart2spalten-2nd .Infotextboxenright {
    float: left;
}

.contentpart2spalten.contentpart2spalten-2nd .image_links_unten {
    left: inherit;
    right: 0px;
}

.Infotextboxenright {
    float: right;
    width: 57%;
    margin: 130px 0 0 0;
}

.infotextboxItem {
    float: right;
    width: 100%;
    border: 1px solid #D9D9D9;
    margin: 0 0 -1px 0;
    padding: 20px 0 20px 0;
}

.infotextboxItem:first-child {
    border-top-left-radius: 24px;
    border-top-right-radius: 24px;
    -moz-border-top-right-radius: 24px;
    -moz-border-top-right-radius: 24px;
    -webkit-border-top-right-radius: 24px;
    -webkit-border-top-right-radius: 24px;
}

.infotextboxItem:last-child {
    border-bottom-left-radius: 24px;
    border-bottom-right-radius: 24px;
    -moz-border-bottom-left-radius: 24px;
    -moz-border-bottom-right-radius: 24px;
    -webkit-border-bottom-left-radius: 24px;
    -webkit-border-bottom-right-radius: 24px;
}

.infotextboxItemInner {
    width: 90%;
    margin: 0 auto;
    padding: 20px 0;
}

.image_links_unten {
    display: block;
    position: absolute;
    bottom: 0px;
    left: 0px;
    z-index: -1;
}

.contentpartHinweis .bgorange {
    background: #F59B0A;
    color: #222831;
    padding: 53px 0 55px 0;
}

.contentpartHinweis .bgorange .boxtitel {
    color: #222831;
}

.contentpartPreisboxen .featuredBox {
    text-align: left;
    padding: 0 0 40px 0;
}

.contentpartPreisboxen .featuredBoxInner {
    width: 65%;
}

.preislabel {
    float: left;
    width: 48%;
}

.preisvalue {
    float: right;
    width: 48%;
    text-align: right;
}

.contentpartPreisboxen .featuredBox {
    background: none;
    margin-top: 50px;
}

.contentpartPreisboxen .featuredBox .boxHL {
    font-size: 26px;
    margin: 40px 0 40px 0;
}

.contentpartPreisboxen .endlesspaperIcon {
    display: block;
    position: absolute;
    margin: 0 0 0 0;
    right: 8%;
    bottom: 150px;
}

.contentpart2BildText .iconbox {
    height: auto;
    float: left;
    width: 100%;
}

.contentpart2BildText .iconbox img {
    border-radius: 24px 24px 24px 24px;
    -moz-border-radius: 24px 24px 24px 24px;
    -webkit-border-radius: 24px 24px 24px 24px;
    overflow: hidden;
}

.contentpart2BildText .featuredBox,
.contentpart2BildText .featuredBox .boxHL,
.contentpart2BildText .featuredBoxInner .btnBox {
    text-align: left;
}

.contentpart2BildText .featuredBox:last-child,
.contentpart2BildText .featuredBox:last-child .boxHL,
.contentpart2BildText .featuredBox:last-child .featuredBoxInner .btnBox {
    text-align: right;
}

.contentpart2BildText .featuredBox .boxtext {
    font-size: 18px;
    line-height: 30px;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
}

.contentpart2BildText .featuredBox {
    width: 44%;
    margin: 0 0% 0 0;
}

.contentpart2BildText .featuredBox:last-child {
    float: right
}

.contentpartNewsrow .featuredBox {
    margin: 0 0% 60px 0;
}

.contentpartNewsrow .featuredBox:nth-child(even) {
    float: right
}

.contentpart2BildText .headericon.headericon3 {
    top: 80%;
    margin: 640px 0 0 -160px;
    width: 120px;
    z-index: -1;
}

.contentpart2BildText .headericon.headericon1 {
    top: 10%;
    margin: 401px 0 0 -40px;
    width: 130px;
}

.teamitem {
    float: left;
    width: 30.6%;
    margin: 100px 4% 0px 0;
}

.teamitem:nth-child(3n) {
    margin-right: 0px;
}

.contentpartteam .contentpartwrapper {
    padding-bottom: 100px;
}

.team_name {
    font-size: 20px;
}

.team_position {
    font-size: 16px;
    float: left;
    width: 100%;
    margin: -6px 0 20px 0;
}

.team_mail a:hover {
    text-decoration: underline
}

.popupInfowrapper {
    z-index: 9999999999;
    position: fixed;
    top: 0px;
    width: 100%;
    height: 100%;
    background-color: rgba(255, 255, 255, 0.95);
}

.popupwindow.featuredBox {
    width: 80%;
    margin: 0px auto 0 auto;
    margin-top: 50px;
    margin-right: auto;
    margin-bottom: 0px;
    margin-left: auto;
    float: none;
}

.popupwindowInner.featuredBox {
    margin: 50px auto 0 auto;
    padding: 60px;
    float: left;
    width: 100%;
}

.featuredBoxPopup {
    float: left;
    width: 46%;
    border-radius: 24px 24px 24px 24px;
    -moz-border-radius: 24px 24px 24px 24px;
    -webkit-border-radius: 24px 24px 24px 24px;
    border: 3px solid #222831;
    padding: 20px 0 20px 0;
    margin-bottom: 20px;
}

.featuredBoxPopup:last-child {
    float: right
}

.featuredBoxPopup1box .infoboxen {
    width: 100%;
    float: left;
}

.featuredBoxPopup1box .featuredBoxPopup:last-child {
    float: none;
    margin: 20px auto 0 auto;
    padding: 20px 80px 20px 80px;
}

.popupinfo .teaser {
    width: 100%;
    float: left;
    margin: 30px 0 30px 0;
}

.popupHL {
    font-size: 30px;
}

.popupinfo .contentpartCenter {
    max-width: 1024px;
}

.closepopup {
    display: block;
    right: 30px;
    top: 30px;
    cursor: pointer;
    position: absolute;
}

.closeconfiglayer {
    display: block;
    right: 0px;
    top: 0px;
    cursor: pointer;
    position: absolute;
}

.closepopup:hover,
.closeconfiglayer:hover {
    opacity: 0.8
}

.configanfrage-layer {
    z-index: -1;
    position: absolute;
    top: -99999999px;
    height: 0px;
    opacity: 0;
    -webkit-transition: opacity 350ms;
    -moz-transition: opacity 350ms;
    -o-transition: opacity 350ms;
    transition: opacity 350ms;
    background: none;
}

.bikeconfigactive .configanfrage-layer {
    top: 623px;
    height: auto;
    opacity: 1;
    z-index: 99999999999;
}

.bikeconfigactive .configBTN {
    display: none
}

.bikeconfigactive .trans {
    opacity: 1;
}

.configanfrage-layer .contentpartCenter .contentpartInner {
    background: #ffffff;
    border: 3px solid #222831;
    border-radius: 24px 24px 24px 24px;
    -moz-border-radius: 24px 24px 24px 24px;
    -webkit-border-radius: 24px 24px 24px 24px;
    -webkit-box-shadow: 0 0px 31px 0px rgba(50, 50, 50, 0.15);
    -moz-box-shadow: 0 0px 31px 0px rgba(50, 50, 50, 0.15);
    box-shadow: 0 0px 31px 0px rgba(50, 50, 50, 0.15);
    padding: 20px 0 20px 0;
}

.configanfrageContent {
    position: relative;
    width: 90%;
    margin: 17px auto;
}

.configanfrageContent h2 {
    font-size: 40px;
    line-height: 40px;
}

.configset {
    float: left;
    width: 100%;
    position: relative;
    margin: 30px 0;
}

.contentpartImageRow img {
    display: block;
}

.radius-l {
    border-radius: 16px 0px 0px 16px;
}

.radius-r {
    border-radius: 0px 16px 16px 0px;
}

.radius-l.radius-r {
    border-radius: 16px 16px 16px 16px;
}

.subselector {
    display: none;
}

.subselectorOn {
    display: block;
}

.configset .countselect .smaller,
.smallerFileinfo {
    font-size: 12px;
    display: block;
    position: absolute;
    width: 100%;
    text-align: center;
    margin: 0 0 0 0;
    line-height: 13px;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
}

.smallerFileinfo {
    text-align: left;
    float: left;
    width: 100%;
    position: relative;
}

.countselectorfileupload .fileuploadBTN {
    font-size: 16px;
}

.countselector {
    float: left;
    width: 100%;
    word-break: break-word;
    display: flex;
    align-items: stretch;
    overflow: visible;
}

/* Allow explanation text to be visible below buttons */
.bike-BaseTube .countselector,
.bike-Motor .countselector,
.bike-Battery .countselector,
.bike-Display .countselector,
.bike-Seat .countselector,
.bike-Charger .countselector,
.bike-Wheelset .countselector,
.bike-Cranks .countselector,
.bike-Tires .countselector,
.bike-BrakeSet .countselector,
.bike-BrakeDisks .countselector,
.bike-Shocks .countselector,
.bike-Transmission .countselector,
.bike-Seatpost .countselector,
.bike-Addons .countselector {
    overflow: visible !important;
    margin-bottom: 40px !important;
}

.counttrenner {
    float: left;
    width: 100%;
}

.countselectw50 {
    width: 50% !important;
    flex: 0 0 50% !important;
}

.countselectw33 {
    width: 33.333% !important;
    flex: 0 0 33.333% !important;
}

.countselectw25 {
    width: 25% !important;
    flex: 0 0 25% !important;
}

.countselectw20 {
    width: 20% !important;
    flex: 0 0 20% !important;
}

.configanfrageContent .selectRow {
    margin: 0px 0 60px 0;
}

.fileuploadSelect .configanfrageContent .selectRow.bike-details {
    opacity: 0.2;
    pointer-events: none;
}

.bike-Info-uploadklick {
    display: none
}

.fileuploadSelect .bike-Info-uploadklick {
    display: block
}

.mt-25 {
    margin-top: 25px;
}

.mt-50 {
    margin-top: 50px;
}


.uploadbtn {
    cursor: pointer;
    font-size: 16px;
    color: #ffffff;
    background: #222831;
    ;
    border: 3px solid #222831;
    ;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    width: auto;
    text-align: center;
    border-radius: 24px;
    height: auto;
    float: left;
    padding: 4px 15px 4px 15px;
    -webkit-transition: all 350ms;
    -moz-transition: all 350ms;
    -o-transition: all 350ms;
    transition: all 350ms;
    position: relative;
    left: 0px;
    margin: 7px 0% 0 0;
}

.uploadbtn:hover {
    background: #222831;
    border: 3px solid #222831;
}

.uploadinganni {
    display: none;
    float: left;
    margin: 18px 0 0 10px;
    opacity: 0.5;
}

.uploading .uploadinganni {
    display: block;
}

.uploading .uploadbtn {
    opacity: 0.2;
}

.configanfrageContent .screen-reader-response {
    display: none !important;
}

.configanfrageContent .wpcf7-response-output.wpcf7-mail-sent-ok {
    color: #222831;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
}

.configsetDONE .configset {
    display: none;
}

.uploadinfodone {
    display: none;
}

.uploading-done .uploadinfodone {
    color: #222831;
    display: block;
    margin: 10px 0 0 10px;
    float: left;
}

.confiformsent .RowBike {
    display: none
}

.subselector .inputlabel {
    float: left;
    width: auto;
    margin: 3px 5px 0 0;
    font-size: 16px;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
}

.subselector .inputitem {
    margin: 20px 10px 0 0;
}

.subselector .inputitem .countselect_manuell {
    float: left;
    height: 33px;
    width: 18%;
    text-align: center;
    border-radius: 16px;
    border: 1px solid #222831;
    font-size: 16px;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    margin: 0 20px 0 0%;
    padding: 2px 0px 0px 0;
}

.smallerSonderformatInfo {
    font-size: 12px;
    display: block;
    position: relative;
    width: auto;
    text-align: center;
    margin: 2px 0 0 0;
    line-height: 13px;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    right: 0px;
    float: right;
}

*:focus {
    outline: none;
}

.w-30 {
    width: 33% !important;
    float: left;
}

/* Override w-30 for personal details to match bike config label alignment */
.person-details .w-30,
.versand-details .w-30 {
    width: 20% !important;
}

.w-70 {
    width: 65% !important;
    text-align: left !important;
    padding-left: 2% !important;
    margin: 0px !important;
    float: right;
}

.bike-Anmerkungen .anmerkungInput {
    width: 100%;
    height: 150px;
    text-align: left;
    padding: 10px 0 0 2%;
    background: #ececec;
}

/* Make all input fields in bike configurator have light gray background */
.bikeconfig input[type="text"],
.bikeconfig input[type="email"],
.bikeconfig input[type="tel"],
.bikeconfig textarea,
.bikeconfig select,
.bikeconfig .countselect_manuell {
    background: #ececec !important;
}

/* Align order notes field to the right */
.bike-Anmerkungen .selectRowInputs {
    display: flex !important;
    justify-content: flex-end !important;
}

.bike-Anmerkungen .countselector {
    width: 80% !important;
}

/* Konfigurator Schritt 3: Pflichtfeld-Kennzeichnung */
.configStep3 .config-required {
    color: #222831;
}
.configStep3 .config-required-hint {
    font-size: 0.85em;
    color: #222831;
    margin-left: 0.25em;
}
.configStep3 .config-required-hint::before {
    content: "(";
}
.configStep3 .config-required-hint::after {
    content: ")";
}
.configStep3 .config-required-legend {
    font-size: 14px;
    color: #222831;
    font-family: 'Montserrat', sans-serif !important;
    margin-top: 1em;
    margin-bottom: 0;
    padding-left: 16px;
    padding-right: 16px;
    box-sizing: border-box;
}
.configStep3 .config-required-legend .config-required {
    color: #222831;
}

/* Personal data and shipping fields - each field has its own selectRow with label in selectRowLabel */
.person-details .countselector,
.versand-details .countselector {
    width: 100% !important;
}

.person-details .countselect_manuell,
.versand-details .countselect_manuell {
    width: 100% !important;
}

/* Schritt 3: Eingabetexte in allen Feldern nicht fett, Schriftart Montserrat */
.configStep3 input[type="text"],
.configStep3 input[type="email"],
.configStep3 input[type="tel"],
.configStep3 select,
.configStep3 textarea {
    font-family: 'Montserrat', sans-serif !important;
}

.bike-request-sales-call .bike-checkbox-label {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    cursor: pointer;
    font-size: 18px;
}
.bike-request-sales-call .bike-checkbox-label input[type="checkbox"] {
    width: auto;
    margin: 0;
    cursor: pointer;
}

/* Finanzierungs-Hinweis: gleiches Erscheinungsbild wie „Individueller Beratungstermin“ */
.contentpartKonfigurator .bike-financing-note .bike-checkbox-label {
    display: block;
    font-size: 18px;
    font-family: 'Montserrat', sans-serif !important;
    color: #222831;
}

.hiddenform {
    display: none
}

.anfragesendenbtn {
    opacity: 1;
    position: relative;
    margin: 30px 3% 0 0;
    float: right !important;
    cursor: pointer;
    font-size: 18px;
    display: block;
    text-align: center;
    border: 2px solid #222831;
    background: #222831;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    border-radius: 24px 24px 24px 24px;
    -moz-border-radius: 24px 24px 24px 24px;
    -webkit-border-radius: 24px 24px 24px 24px;
    color: #ececec;
    padding: 12px 0px;
    width: 42%;
    height: auto;
    -webkit-appearance: none;
    -webkit-transition: all 350ms;
    -moz-transition: all 350ms;
    -o-transition: all 350ms;
    transition: all 350ms;
}

.anfragesendenbtn.buttonoff {
    opacity: 0.2;
    pointer-events: none;
}

.anfragesendenbtn.loading {
    opacity: 0.6;
    cursor: wait;
    pointer-events: none;
}

.sendinfo {
    display: block;
    float: left;
    width: 100%;
    text-align: right;
    font-size: 15px;
    margin: 8px 0px 0 -15px;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    opacity: 1;
    -webkit-appearance: none;
    -webkit-transition: all 350ms;
    -moz-transition: all 350ms;
    -o-transition: all 350ms;
    transition: all 350ms;
}

.sendinfoOff {
    opacity: 0;
}

.anfragesendenbtn:hover {
    background: #d0d0d0;
    border-color: #b0b0b0;
    color: #222831;
}

.anfragesendenbtncancel {
    border: 2px solid #cccccc;
    background: #cccccc;
    opacity: 0.6;
    width: 20%;
    pointer-events: all;
}

.anfragesendenbtncancel:hover {
    opacity: 0.8;
    border: 2px solid #cccccc;
    background: #cccccc;
}

.dsvgotextanfrage {
    margin: -40px 0 40px 0;
    width: 100%;
    float: left;
}

.selectRowLabel {
    min-height: 1px;
}

.imagepart1 {
    width: 30%;
    float: left;
}

.imagepart2 {
    float: right;
    width: 68%;
}

.bildtextline {
    width: 100%;
    float: right;
    text-align: right;
    font-size: 16px;
    background: #fff;
    margin: -20px 0 0 0;
    padding: 1px 0 20px 0;
}

.contentpartImageRow {
    margin: 50px 0 0 0;
    float: left;
}

.contentpartKonfigurator .contentpartwrapper {
    margin: 50px 0 180px 0;
}

/* Konfigurator Typografie: durchgängig Montserrat Light, weniger Schriftgrößen (14px / 16px / Überschriften) */
.contentpartKonfigurator .configPart,
.contentpartKonfigurator .selectPart,
.contentpartKonfigurator .summaryPart,
.contentpartKonfigurator .bikeconfig,
.contentpartKonfigurator .configStepNav,
.contentpartKonfigurator .konfigurator-step-bar-wrap {
    font-family: 'Montserrat', sans-serif !important;
    font-size: 16px;
}

/* Ensure footer breaks out of contentpartKonfigurator container */
.contentpartKonfigurator .contentpartFooter,
.contentpartKonfigurator footer {
    position: relative;
    z-index: 1;
    background: #222831 !important;
    background-color: #222831 !important;
}

/* Ensure contentpartKonfigurator doesn't override footer background */
.contentpartKonfigurator .contentpartFooter .contentpartwrapper,
.contentpartKonfigurator footer .contentpartwrapper {
    background: transparent !important;
    background-color: transparent !important;
}

.contentpartKonfigurator .contentpartFooter .contentpartCenter,
.contentpartKonfigurator footer .contentpartCenter {
    background: transparent !important;
    background-color: transparent !important;
}

.contentpartKonfigurator .contentpartFooter .contentpartInner,
.contentpartKonfigurator footer .contentpartInner {
    background: transparent !important;
    background-color: transparent !important;
}

/* Constrain configurator content width – breiter für ausreichend Platz der Texte */
.contentpartKonfigurator .contentpartCenter {
    max-width: 1680px;
    margin: 0 auto;
    padding-left: 40px;
    padding-right: 40px;
    box-sizing: border-box;
}

/* Ensure header stays full width on configurator pages */
.contentpartHeader .contentpartCenter {
    max-width: 100%;
}

.configPart {
    max-width: 1680px;
    width: 100%;
    margin: 30px auto 0 auto;
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    gap: 4%;
    position: relative;
    min-height: 100vh;
}

/* Bike configurator: price box visible on every step – form left, price right on desktop; breiterer Konfigurationsbereich */
.contentpartKonfigurator .configPart .selectPart {
    order: 1;
    width: 68%;
}
.contentpartKonfigurator .configPart .summaryPart {
    order: 2;
    display: block !important;
    width: 28%;
}

.summaryPart {
    z-index: 9999;
    width: 30%;
    position: sticky;
    top: 20px;
    margin-top: 0px;
    -webkit-transition: margin-top 350ms, opacity 0.2s ease;
    -webkit-transition: all 350ms, opacity 0.2s ease;
    -moz-transition: all 350ms, opacity 0.2s ease;
    -o-transition: all 350ms, opacity 0.2s ease;
    transition: all 350ms, opacity 0.2s ease;
    flex-shrink: 0;
    align-self: flex-start;
    overflow: visible;
}

.woocommerce-checkout .summaryPart {
    display: none;
}

.showsummery .woocommerce-checkout .summaryPart {
    display: block;
}

.showsummery .woocommerce-shipping-fields {
    display: none;
}

.woocommerce-page #customer_details .col-2 {
    float: left;
    margin: 20px 0 0 0;
    width: 100%;
}

.fixedpricebox .summaryPart {
    position: fixed;
    margin-top: 5px;
    right: 0px;
    width: 290px;
}

.summaryPartTop {
    padding: 20px 0;
    font-size: 20px;
    color: #ececec;
    background: #222831;
    float: left;
    width: 100%;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    border: 1px solid #222831;
    border-radius: 23px 23px 0 0;
}
.contentpartKonfigurator .Preisbox .summaryPartTop {
    font-family: 'Montserrat', sans-serif !important;
    font-size: 18px;
}

/* Konfigurator: Überschriften „Konfiguration & Anfrage - SCOUT“ und „Preisrechner“ – Montserrat Light, Uppercase, Letter-Spacing */
.contentpartKonfigurator .selectPartHeading h3,
.contentpartKonfigurator .Preisbox .summaryPartTop .summaryPartInner {
    font-family: 'Montserrat', sans-serif !important;
    font-size: 18px !important;
    text-transform: uppercase;
    letter-spacing: 0.12em;
}

/* Konfigurator: Auswahlüberschriften (Länge, Sitzbreite, Sitzhöhe, Motor, …) – Montserrat Light, Uppercase */
.contentpartKonfigurator .bikeconfig .selectRowLabel strong {
    font-family: 'Montserrat', sans-serif !important;
    font-size: 16px !important;
    text-transform: uppercase;
    letter-spacing: 0.06em;
}

/* Konfigurator Schritt 2: Shop-ähnliche Produktkarten (Erweiterungen + Zubehör) – nur Bild + Titel, ohne Preis/Button */
.configStep2-shop-products {
    margin-top: 2.5rem;
    margin-left: 0;
    padding-left: 0;
    width: 100%;
    max-width: 100%;
    clear: both;
    box-sizing: border-box;
    min-width: 0;
}
.configStep2-shop-products:first-of-type {
    margin-top: 2.5rem;
}
.configStep2-shop-products ~ .configStep2-shop-products {
    margin-top: 2rem;
}
.configStep2-shop-products-heading {
    font-family: 'Montserrat', sans-serif !important;
    font-size: 1.25rem;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: #222831;
    margin: 0 0 1rem 0;
    padding-bottom: 0.5rem;
    border-bottom: 1px solid #B69D78;
    padding-left: 0;
}
.configStep2-products-list {
    list-style: none;
    margin: 0;
    padding: 0;
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
    gap: 1.25rem;
    box-sizing: border-box;
    width: 100%;
    max-width: 100%;
    min-width: 0;
}
.configStep2-product-card {
    margin: 0;
    padding: 0;
    min-width: 0;
    display: block;
    position: relative;
}
/* Tooltip-Icon auf Produktkarten (gleicher Stil wie Schritt 1) */
.configStep2-product-card .info-question-mark {
    position: absolute;
    top: 10px;
    right: 10px;
    z-index: 2;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 20px;
    height: 20px;
    line-height: 1;
    text-align: center;
    border-radius: 50%;
    background-color: #222831;
    color: #ececec;
    font-size: 14px;
    cursor: pointer;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    transition: background-color 0.2s ease;
    user-select: none;
}
.configStep2-product-card .info-question-mark:hover {
    background-color: #1a1e24;
}
.configStep2-product-card .info-question-mark:focus {
    outline: 2px solid #222831;
    outline-offset: 2px;
}
.configStep2-product-link {
    display: flex;
    flex-direction: column;
    text-decoration: none;
    color: #222831;
    background: #ffffff;
    border: 1px solid #16242F;
    border-radius: 10px;
    overflow: hidden;
    height: 100%;
    box-sizing: border-box;
    cursor: pointer;
    width: 100%;
    min-width: 0;
    max-width: 100%;
    padding: 0;
    font: inherit;
    text-align: left;
    transition: background-color 0.2s ease, filter 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease;
}
.configStep2-product-link:hover {
    color: #16242F;
    border-color: #16242F;
    filter: brightness(1.06);
    background-color: #f8f8f8;
    box-shadow: 0 4px 16px rgba(22, 36, 47, 0.12), 0 0 20px rgba(182, 157, 120, 0.15);
}
.configStep2-product-card.configStep2-product-selected .configStep2-product-link {
    border: 3px solid #B69D78;
    box-shadow: 0 0 0 1px #B69D78, 0 4px 20px rgba(182, 157, 120, 0.35), 0 0 28px rgba(182, 157, 120, 0.25);
}
.configStep2-product-card.configStep2-product-selected .configStep2-product-link:hover {
    filter: brightness(1.04);
    background-color: #fafafa;
    box-shadow: 0 0 0 1px #B69D78, 0 6px 24px rgba(182, 157, 120, 0.4), 0 0 32px rgba(182, 157, 120, 0.3);
}
.configStep2-product-image-wrap {
    display: block;
    width: 100%;
    min-width: 0;
    aspect-ratio: 1 / 1;
    background: #ffffff;
    overflow: hidden;
    flex-shrink: 0;
}
.configStep2-product-image {
    width: 100%;
    height: 100%;
    object-fit: contain;
    object-position: center;
    display: block;
}
.configStep2-product-title {
    display: block;
    padding: 0.75em;
    font-family: 'Montserrat', sans-serif !important;
    font-size: 0.9rem;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    line-height: 1.3;
}

/* Tooltip-Modal: Optionen-Überschriften (z. B. „Kein Motor”, „CYC Photon”) – Montserrat Light, Uppercase, kein Zeichenabstand */
.bike-info-modal .bike-info-option-name,
.bike-info-box .bike-info-option-name {
    font-family: 'Montserrat', sans-serif !important;
    text-transform: uppercase;
}

.summaryPartContent {
    padding: 20px 0;
    background: #ffffff;
    float: left;
    width: 100%;
    border: 1px solid #D9D9D9;
    border-radius: 0px 0px 23px 23px;
}

.selectPart {
    padding: 0;
    width: 65%;
    border: 1px solid #D9D9D9;
    border-radius: 23px;
    background: #ffffff;
    min-height: 125px;
    flex-shrink: 0;
}

/* Style bike config selectPart to match preisrechner content area */
.bikeconfig .selectPart {
    border-radius: 0px 0px 23px 23px;
    border-top: none;
}

.summaryPartInner {
    width: 90%;
    margin: 0 0 0 5%;
    position: relative;
}

.contentpartKonfigurator .product_meta,
.contentpartKonfigurator .product_title,
.contentpartKonfigurator .woocommerce-product-gallery,
.contentpartKonfigurator .quantity,
.contentpartKonfigurator .entry-summary .price,
.contentpartKonfigurator .summaryPart .actions,
.contentpartKonfigurator .summaryPart .wc-proceed-to-checkout,
.contentpartKonfigurator .summaryPart .cart_totals h2,
.contentpartKonfigurator .summaryPart .shop_table th,
.contentpartKonfigurator .summaryPart .product-remove,
.contentpartKonfigurator .summaryPart .product-thumbnail,
.contentpartKonfigurator .summaryPart .cart-subtotal,
.contentpartKonfigurator .summaryPart .woocommerce-notices-wrapper,
.contentpartKonfigurator .summaryPart .woocommerce-info,
.contentpartKonfigurator .summaryPart .return-to-shop,
.contentpartKonfigurator .configPart .woocommerce-notices-wrapper {
    display: none !important;
}

.contentpartKonfigurator .woocommerce table.shop_table td {
    border-top: 0px solid rgba(0, 0, 0, .1);
    padding: 0px;
    vertical-align: middle;
    line-height: auto;
}

.contentpartKonfigurator .woocommerce table.shop_table {
    border: 0px solid rgba(0, 0, 0, .1);
    margin: 0;
    text-align: left;
    width: 100%;
    border-collapse: separate;
    border-radius: 0;
    padding: 10px;
}

.contentpartKonfigurator .woocommerce .cart-collaterals .cart_totals {
    float: left;
    width: 100%;
}

.contentpartKonfigurator .summary.entry-summary {
    width: 100% !important;
    float: left !important;
}


.contentpartKonfigurator .woocommerce button.button.alt {
    background-color: #222831 !important;
    color: #ececec !important;
    -webkit-font-smoothing: antialiased;
    width: 100%;
    margin: 50px 0 0 0;
    height: 91px;
    -webkit-transition: all 350ms;
    -moz-transition: all 350ms;
    -o-transition: all 350ms;
    transition: all 350ms;
}

.contentpartKonfigurator .woocommerce button.button.alt:hover {
    background: #222831 !important;
    border-color: #222831 !important;
    color: #ffffff !important;
}

.contentpartKonfigurator .woocommerce button.button {
    font-family: 'Montserrat', sans-serif !important;
    font-size: 16px;
    margin: 0;
    line-height: 1;
    cursor: pointer;
    position: relative;
    text-decoration: none;
    overflow: visible;
    padding: .618em 1em;
    border-radius: 10px;
    left: auto;
    color: #ffffff;
    background-color: #F59B0A;
    border: 0;
    display: inline-block;
    background-image: none;
    box-shadow: none;
    text-shadow: none;
}

.woocommerce .blockUI.blockOverlay:before,
.woocommerce .loader:before {
    height: 150px !important;
    width: 150px !important;
    position: absolute;
    top: 50%;
    left: 50%;
    margin-left: -75px !important;
    margin-top: -75px !important;
    display: block;
    content: "";
    -webkit-animation: none;
    -moz-animation: none;
    animation: none;
    background-image: url("img/loading.gif") !important;
    background-size: 200px;
    line-height: 1;
    text-align: center;
    font-size: 2em;
}

.woocommerce .blockUI.blockOverlay {
    background: none !important
}

.woocommerce-error::before {
    color: #F59B0A !important;
}

.woocommerce-error {
    border-top-color: #F59B0A !important;
}

.woocommerce-error {
    border-top-color: #F59B0A !important;
}

.woocommerce form .form-row.woocommerce-validated .select2-container,
.woocommerce form .form-row.woocommerce-validated input.input-text,
.woocommerce form .form-row.woocommerce-validated select {
    border-color: #222831 !important;
    border-radius: 16px 16px 16px 16px;
}

.summaryPartRow {
    position: relative;
    float: left;
    width: 100%;
}

#gesamtpreis.anfrage {
    font-size: 16px;
}
.contentpartKonfigurator #gesamtpreis.anfrage {
    font-family: 'Montserrat', sans-serif !important;
}

.summaryPartRow.summaryPartRowTotal.GesamtpreisRow {
    margin: 15px 0 0 0;
}
#preisbox .GesamtpreisRow .summaryPartlable {
    text-transform: uppercase;
}

.summaryPartlable {
    float: left;
    width: 70%;
}

.summaryPartValue {
    float: right;
    width: 30%;
    text-align: right;
}

.stepInfobox {
    float: left;
    width: 25%;
    position: relative;
    z-index: 999;
}

/* Bike configurator: 3 steps (Grundausstattung, Zubehör, Persönliche Daten inkl. Abschluss) */
.contentpartKonfigurator .Stepinfosbox .stepInfobox {
    width: 33.33%;
}

.contentpartKonfigurator .bike-config-error-wrap {
    margin-top: 20px;
    margin-bottom: 0;
    padding-left: 0;
    padding-right: 0;
    box-sizing: border-box;
}
.contentpartKonfigurator .bike-config-error {
    margin: 0;
    padding: 12px 16px;
    background: transparent;
    color: #721c24;
    box-sizing: border-box;
    font-size: 14px;
    line-height: 1.4;
    font-family: 'Montserrat', sans-serif !important;
}
/* Rote Umrandung nur am fehlerhaften Feld (Zeile), nicht an der Fehlermeldung */
.contentpartKonfigurator .selectRow.bike-config-field-error {
    outline: 2px solid #721c24;
    outline-offset: 2px;
    border-radius: 6px;
}
.contentpartKonfigurator .configStepNav {
    margin-top: 16px;
    margin-bottom: 16px;
    clear: both;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    gap: 12px;
}
.contentpartKonfigurator .configStepNav .bike-step-btn {
    padding: 12px 24px;
    margin: 0;
    font-size: 16px;
    font-family: 'Montserrat', sans-serif !important;
    cursor: pointer;
    background: #222831;
    color: #fff;
    border: none;
    border-radius: 4px;
}
/* Step 1: only Next button – align right */
.contentpartKonfigurator .configStepNav1 .bike-step-next {
    margin-left: auto;
}
.contentpartKonfigurator .bike-step-btn:hover {
    background: #393e46;
}
.contentpartKonfigurator .bike-step-back {
    background: #555;
}
.contentpartKonfigurator .bike-step-back:hover {
    background: #666;
}
.contentpartKonfigurator .configStep2 .addonYesNo .countselect {
    min-height: 48px;
}

.steptext {
    font-size: 14px;
    width: 100%;
    text-align: center;
}
.contentpartKonfigurator .steptext {
    font-family: 'Montserrat', sans-serif !important;
    font-size: 14px;
}

.stepbulltet {
    width: 25px;
    height: 25px;
    margin: -1px auto;
    border: 3px solid #ffe1b0;
    position: relative;
    background: #ffffff;
    -webkit-border-radius: 300px;
    -moz-border-radius: 300px;
    border-radius: 300px;
}

.page-template-konfigurator_step1 .stepInfobox1 .stepbulltet,
.page-template-konfigurator-bike .stepInfobox1 .stepbulltet {
    border: 3px solid #222831;
}

.page-template-konfigurator_step2 .stepInfobox1 .stepbulltet,
.page-template-konfigurator_step2_praegung .stepInfobox1 .stepbulltet,
.page-template-konfigurator_step3 .stepInfobox1 .stepbulltet,
.page-template-konfigurator_step3 .stepInfobox2 .stepbulltet,
.page-template-konfigurator_checkout .stepInfobox1 .stepbulltet,
.page-template-konfigurator_checkout .stepInfobox2 .stepbulltet,
.page-template-konfigurator_checkout .stepInfobox3 .stepbulltet {
    background: #222831;
    border: 3px solid #222831;
}

.page-template-konfigurator_step2 .stepInfobox2 .stepbulltet,
.page-template-konfigurator_step2_praegung .stepInfobox2 .stepbulltet,
.page-template-konfigurator_step3 .stepInfobox3 .stepbulltet .page-template-konfigurator_checkout .stepInfobox1 .stepbulltet,
.page-template-konfigurator_checkout .stepInfobox2 .stepbulltet,
.page-template-konfigurator_checkout .stepInfobox3 .stepbulltet {
    border: 3px solid #222831;
}

.bulleticonImg {
    position: absolute;
    display: block;
    top: 7px;
    left: 6px;
}

.bulleticoncheckImg {
    position: absolute;
    display: block;
    top: 6px;
    left: 6.5px;
}

.bulleticonDotImg {
    position: absolute;
    display: block;
    top: 9px;
    left: 8.5px;
}

.stepline {
    width: 76%;
    height: 3px;
    background: #ffe1b0;
    float: left;
    margin: -46px 0 0 12%;
    z-index: 0;
}

.page-template-konfigurator_step2 .stepInfobox1::after,
.page-template-konfigurator_step2_praegung .stepInfobox1::after,
.page-template-konfigurator_step3 .stepInfobox1::after,
.page-template-konfigurator_step3 .stepInfobox2::after,
.page-template-konfigurator_step2 .stepInfobox1::after,
.page-template-konfigurator_step3 .stepInfobox1::after,
.page-template-konfigurator_step3 .stepInfobox2::after,
.page-template-konfigurator_checkout .stepInfobox1::after,
.page-template-konfigurator_checkout .stepInfobox2::after,
.page-template-konfigurator_checkout .stepInfobox3::after {
    content: "";
    width: 100%;
    height: 3px;
    background: #222831;
    position: absolute;
    top: 15px;
    left: 54%;
}

.Stepinfosbox {
    margin: 80px 0 0 0;
}

/* Übersichtsleiste Konfigurator: 4 Buttons mit Pfeilen dazwischen (Schritte), kleinere Buttons */
.konfigurator-step-bar {
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    gap: 0;
    margin: 24px 0 0 0;
    width: 100%;
}
.konfigurator-step-bar .stepline {
    display: none;
}
/* Pfeil zwischen den Schritt-Buttons (rechts zeigender Chevron) */
.konfigurator-step-bar .step-bar-arrow {
    flex-shrink: 0;
    width: 20px;
    height: 20px;
    margin: 0 6px;
    position: relative;
    box-sizing: border-box;
}
.konfigurator-step-bar .step-bar-arrow::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 8px;
    height: 8px;
    margin: -5px 0 0 -6px;
    border-right: 2px solid #222831;
    border-bottom: 2px solid #222831;
    transform: rotate(-45deg);
    box-sizing: border-box;
}
.konfigurator-step-bar .step-bar-btn {
    float: none;
    width: auto;
    flex: 1 1 0;
    min-width: 0;
    padding: 10px 14px;
    border: 2px solid #222831;
    background: transparent;
    border-radius: 8px;
    cursor: default;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    box-sizing: border-box;
}
.konfigurator-step-bar .step-bar-btn .stepbulltet {
    display: none;
}
.konfigurator-step-bar .step-bar-label {
    font-family: 'Montserrat', sans-serif !important;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    font-size: 14px;
    color: #222831;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.konfigurator-step-bar .step-bar-btn.stepActive .step-bar-label {
    color: #ffffff;
}
.konfigurator-step-bar .step-bar-btn.stepActive {
    border-color: #222831;
    background: #222831;
}

/* Schrittleiste auf weißem Hintergrund – gleiche Randabstände wie selectPartContent (5% links, 90% Breite) */
.contentpartKonfigurator .konfigurator-step-bar-wrap {
    margin: 0 0 0 5%;
    width: 90%;
    float: left;
    background: #ffffff;
    padding: 14px 0 14px 0;
    box-sizing: border-box;
}
.konfigurator-step-bar-above-options {
    margin: 0;
    width: 100%;
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    gap: 0;
    box-sizing: border-box;
}
.konfigurator-step-bar-above-options .stepline {
    display: none;
}
.konfigurator-step-bar-above-options .step-bar-arrow {
    flex-shrink: 0;
    width: 24px;
    height: 24px;
    margin: 0 8px;
    position: relative;
    box-sizing: border-box;
}
.konfigurator-step-bar-above-options .step-bar-arrow::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 8px;
    height: 8px;
    margin: -5px 0 0 -6px;
    border-right: 2px solid #222831;
    border-bottom: 2px solid #222831;
    transform: rotate(-45deg);
    box-sizing: border-box;
}
.konfigurator-step-bar-above-options .step-bar-btn {
    flex: 1 1 0;
    min-width: 0;
    padding: 12px 16px;
    border: 2px solid #222831;
    background: transparent;
    border-radius: 8px;
}
.konfigurator-step-bar-above-options .step-bar-btn .stepbulltet {
    display: none;
}
.konfigurator-step-bar-above-options .step-bar-label {
    font-family: 'Montserrat', sans-serif !important;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    font-size: 14px;
    color: #222831;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.konfigurator-step-bar-above-options .step-bar-btn.stepActive {
    border-color: #222831;
    background: #222831;
}
.konfigurator-step-bar-above-options .step-bar-btn.stepActive .step-bar-label {
    color: #ffffff;
}
/* Schritt-Buttons als Links: gleiches Aussehen, klickbar */
a.step-bar-btn {
    text-decoration: none;
    cursor: pointer;
    color: inherit;
}
a.step-bar-btn:hover .step-bar-label {
    opacity: 0.9;
}
.contentpartKonfigurator .konfigurator-step-bar .step-bar-btn {
    width: auto;
}

.contentpartKonfiguratorHeading {
    font-family: 'Montserrat', sans-serif !important;
    font-size: 40px;
    display: block;
    float: left;
    width: 100%;
    margin: 80px 0;
}

/* Shop Typografie: Montserrat Light */
body.woocommerce-shop .woocommerce,
body.post-type-archive-product .woocommerce,
body.tax-product_cat .woocommerce,
body.tax-product_tag .woocommerce,
body.single-product .woocommerce,
body.woocommerce-cart .woocommerce,
body.woocommerce-checkout .woocommerce,
body.woocommerce-account .woocommerce {
    font-family: 'Montserrat', sans-serif !important;
}

/* Shop: Preise in derselben Farbe wie Fließtext (#222831), Montserrat Light */
body.woocommerce-shop .woocommerce .price,
body.post-type-archive-product .woocommerce .price,
body.tax-product_cat .woocommerce .price,
body.tax-product_tag .woocommerce .price,
body.single-product .woocommerce .price,
body.woocommerce-cart .woocommerce .price,
body.woocommerce-checkout .woocommerce .price,
body.woocommerce-account .woocommerce .price,
body.woocommerce-shop .woocommerce .woocommerce-Price-amount.amount,
body.post-type-archive-product .woocommerce .woocommerce-Price-amount.amount,
body.tax-product_cat .woocommerce .woocommerce-Price-amount.amount,
body.tax-product_tag .woocommerce .woocommerce-Price-amount.amount,
body.single-product .woocommerce .woocommerce-Price-amount.amount,
body.woocommerce-cart .woocommerce .woocommerce-Price-amount.amount,
body.woocommerce-checkout .woocommerce .woocommerce-Price-amount.amount,
body.woocommerce-account .woocommerce .woocommerce-Price-amount.amount,
.woocommerce ul.products li.product .price {
    color: #222831 !important;
    font-family: 'Montserrat', sans-serif !important;
}
body.woocommerce-shop .woocommerce .price ins,
body.post-type-archive-product .woocommerce .price ins,
body.tax-product_cat .woocommerce .price ins,
body.tax-product_tag .woocommerce .price ins,
body.single-product .woocommerce .price ins {
    color: #222831 !important;
}

/* Shop: Buttons – nur dunkelblaue Kontur (#16242F), dunkler Text (#222831), Montserrat Light */
body.woocommerce-shop .woocommerce a.button,
body.post-type-archive-product .woocommerce a.button,
body.tax-product_cat .woocommerce a.button,
body.tax-product_tag .woocommerce a.button,
body.woocommerce-cart .woocommerce a.button,
body.woocommerce-checkout .woocommerce a.button,
body.woocommerce-account .woocommerce a.button,
body.woocommerce-shop .woocommerce a.button,
body.post-type-archive-product .woocommerce a.button,
body.tax-product_cat .woocommerce a.button,
body.tax-product_tag .woocommerce a.button,
body.single-product .woocommerce a.button,
body.single-product .woocommerce button.single_add_to_cart_button,
body.single-product .woocommerce button.button.alt {
    background: transparent !important;
    border: 2px solid #16242F !important;
    color: #222831 !important;
    font-family: 'Montserrat', sans-serif !important;
    text-transform: none;
    letter-spacing: 0.02em;
    border-radius: 10px;
    box-shadow: none !important;
}
/* Produktdetailseite: Buttons gleiche Linienstärke wie goldene Trennlinie (1px) */
body.single-product .woocommerce a.button,
body.single-product .woocommerce button.single_add_to_cart_button,
body.single-product .woocommerce button.button.alt {
    border-width: 1px !important;
    font-weight: 400 !important;
    transition: box-shadow 0.3s ease, background 0.3s ease;
}
body.woocommerce-shop .woocommerce a.button:hover,
body.post-type-archive-product .woocommerce a.button:hover,
body.tax-product_cat .woocommerce a.button:hover,
body.tax-product_tag .woocommerce a.button:hover,
body.single-product .woocommerce a.button:hover,
body.single-product .woocommerce button.single_add_to_cart_button:hover,
body.single-product .woocommerce button.button.alt:hover,
body.woocommerce-cart .woocommerce a.button:hover,
body.woocommerce-checkout .woocommerce a.button:hover,
body.woocommerce-account .woocommerce a.button:hover,
body.woocommerce-shop .woocommerce button.button:hover,
body.post-type-archive-product .woocommerce button.button:hover,
body.tax-product_cat .woocommerce button.button:hover,
body.tax-product_tag .woocommerce button.button:hover {
    background: #ECECEC !important;
    border-color: #16242F !important;
    color: #222831 !important;
}
/* Produktdetailseite: Buttons leuchten beim Hover hell auf */
body.single-product .woocommerce a.button:hover,
body.single-product .woocommerce button.single_add_to_cart_button:hover,
body.single-product .woocommerce button.button.alt:hover {
    box-shadow: 0 0 18px rgba(255, 255, 255, 0.6), 0 0 30px rgba(182, 157, 120, 0.25) !important;
    background: #f9f9f9 !important;
    transition: box-shadow 0.3s ease, background 0.3s ease;
}
/* Produktdetailseite: "Im Warenkorb"-Button – goldener Rahmen & Schatten */
body.single-product .woocommerce button.single_add_to_cart_button.in-cart {
    border-color: #B69D78 !important;
    box-shadow: 0 4px 20px rgba(182, 157, 120, 0.35), 0 0 28px rgba(182, 157, 120, 0.25) !important;
    color: #16242F !important;
    cursor: pointer !important;
}
body.single-product .woocommerce button.single_add_to_cart_button.in-cart:hover {
    background: #f8f6f2 !important;
    box-shadow: 0 6px 24px rgba(182, 157, 120, 0.4), 0 0 32px rgba(182, 157, 120, 0.3) !important;
}

/* Shop: Produktkarte – weißer Hintergrund, blaue Kontur; oberer Teil quadratisch für Produktfotos, Karten schmaler */
.woocommerce ul.products li.product {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    width: 100%;
    max-width: 280px;
    margin-left: auto;
    margin-right: auto;
    background: #ffffff;
    border: 2px solid #16242F;
    border-radius: 10px;
    overflow: hidden;
    box-sizing: border-box;
    padding: 0;
}
.woocommerce ul.products li.product > a:first-of-type {
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: auto auto auto;
    text-decoration: none;
    color: #222831;
    width: 100%;
    box-sizing: border-box;
    flex: 1;
}
/* Oberer Bereich: quadratisch (1:1) für quadratische Produktfotos, Bild zentriert */
.woocommerce ul.products li.product > a:first-of-type img {
    grid-column: 1;
    grid-row: 1;
    width: 100%;
    aspect-ratio: 1 / 1;
    object-fit: contain;
    object-position: center;
    display: block;
    background: #ffffff;
}
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce ul.products li.product h2.woocommerce-loop-product__title,
.woocommerce ul.products li.product h3.woocommerce-loop-product__title {
    grid-column: 1;
    grid-row: 2;
    margin: 0.75em 0.75em 0 0.75em;
    padding: 0;
    font-family: 'Montserrat', sans-serif !important;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    line-height: 1.3;
}
.woocommerce ul.products li.product > a:first-of-type .price {
    grid-column: 1;
    grid-row: 3;
    margin: 0 0.75em 0.75em 0.75em;
    padding: 0;
    color: #222831 !important;
    font-family: 'Montserrat', sans-serif !important;
}
/* Trennstrich zwischen Preis und Button (dunkelblau wie Kartenkontur), Button ohne Kontur */
.woocommerce ul.products li.product .button {
    width: 100%;
    margin: 0;
    padding: 0.75em 1em;
    box-sizing: border-box;
    background: transparent !important;
    border: none !important;
    border-top: 1px solid #16242F !important;
    border-radius: 0;
    color: #16242F !important;
    font-family: 'Montserrat', sans-serif !important;
    font-weight: 400 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.06em;
}
.woocommerce ul.products li.product .button:hover {
    background: #ECECEC !important;
    border-top-color: #16242F !important;
    color: #16242F !important;
}
/* Produkt im Warenkorb: Button „Im Warenkorb“ mit goldenem Schatten, Klick entfernt Produkt wieder */
.woocommerce ul.products li.product .button.in-cart {
    cursor: pointer !important;
    box-shadow: 0 4px 20px rgba(182, 157, 120, 0.35), 0 0 28px rgba(182, 157, 120, 0.25);
    border-top-color: #B69D78 !important;
    color: #16242F !important;
}
.woocommerce ul.products li.product .button.in-cart:hover {
    background: #f8f6f2 !important;
    box-shadow: 0 6px 24px rgba(182, 157, 120, 0.4), 0 0 32px rgba(182, 157, 120, 0.3);
}
/* Shop: Produktkarte mit goldenem Rand wenn Produkt im Warenkorb (wie Konfigurator Schritt 2 Auswahl) */
.woocommerce ul.products li.product:has(.button.in-cart) {
    border: 3px solid #B69D78;
    box-shadow: 0 0 0 1px #B69D78, 0 4px 20px rgba(182, 157, 120, 0.35), 0 0 28px rgba(182, 157, 120, 0.25);
    border-radius: 10px;
    box-sizing: border-box;
}
.woocommerce ul.products li.product:has(.button.in-cart):hover {
    box-shadow: 0 0 0 1px #B69D78, 0 6px 24px rgba(182, 157, 120, 0.4), 0 0 32px rgba(182, 157, 120, 0.3);
}

/* Produkttitel: Uppercase (Shop + Produktdetail) */
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce ul.products li.product h2.woocommerce-loop-product__title,
.woocommerce ul.products li.product h3.woocommerce-loop-product__title {
    font-family: 'Montserrat', sans-serif !important;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    hyphens: auto;
    -webkit-hyphens: auto;
    overflow-wrap: break-word;
    word-break: break-word;
}

.woocommerce div.product .product_title {
    font-size: 40px;
    font-family: 'Montserrat', sans-serif !important;
    text-transform: uppercase;
    letter-spacing: 0.06em;
}

/* Produktdetail: Bildbereich vergrößern, unten mit Button „Weiter einkaufen“ abschließen */
.single-product .woocommerce div.product {
    display: flex;
    flex-wrap: wrap;
    gap: 2.5rem;
    align-items: flex-start;
}
.single-product .woocommerce div.product .woocommerce-product-gallery,
.single-product .woocommerce div.product .summary.entry-summary {
    float: none;
}
.single-product .woocommerce div.product .woocommerce-product-gallery {
    width: 35% !important;
    max-width: 35% !important;
    flex: 0 0 35%;
    display: flex;
    flex-direction: column;
    min-height: 0;
}
.single-product .woocommerce div.product .summary.entry-summary {
    flex: 1 1 0;
    min-width: 0;
}
/* FlexSlider viewport: nimmt Platz, damit Galerie-Höhe stimmt – kein Flex auf __wrapper/__image, sonst funktioniert der Slider nicht */
.single-product .woocommerce div.product .woocommerce-product-gallery .flex-viewport {
    flex: 1;
    min-height: 200px;
}
.single-product .woocommerce div.product .woocommerce-product-gallery__wrapper {
    min-height: 0;
}
/* Einzelbild-Ansicht: Bild füllt sauber; Slider-Slides nicht mit flex:1 überschreiben (FlexSlider setzt eigene Breiten) */
.single-product .woocommerce div.product .woocommerce-product-gallery__image {
    display: block;
}
.single-product .woocommerce div.product .woocommerce-product-gallery__image img {
    width: 100%;
    height: auto;
    object-fit: contain;
    object-position: left top;
}

/* Galerie-Thumbnails: fortlaufend nebeneinander, so viele wie Platz – kein fester Umbruch nach 4 */
.single-product .woocommerce div.product .woocommerce-product-gallery .flex-control-thumbs {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 0.5em 0 0 0;
    padding: 0;
    list-style: none;
    clear: none;
}
.single-product .woocommerce div.product .woocommerce-product-gallery .flex-control-thumbs li {
    clear: none !important;
    float: none;
    width: auto;
    min-width: 52px;
    max-width: 80px;
    flex: 0 0 auto;
    margin: 0 !important;
}
.single-product .woocommerce div.product .woocommerce-product-gallery .flex-control-thumbs li img {
    width: 100%;
    height: auto;
    display: block;
}

.woocommerce h2 {
    font-size: 30px;
    line-height: 36px;
    float: left;
    width: 100%;
    margin: 0 0 20px 0;
    font-family: 'Montserrat', sans-serif !important;
}

.Heading-Shopcheckout {
    margin: 80px 0 0 0;
}

.related.products {
    margin: 70px 0 0 0;
    float: left;
    width: 100%;
}
.related.products > h2,
.related.products ul.products {
    margin-left: 0;
    padding-left: 0;
}

/* Überschrift „Ähnliche Produkte“: wie Beschreibung – Uppercase, Montserrat Light, goldene Trennlinie */
.related.products h2,
.woocommerce .related.products h2 {
    display: block !important;
    font-family: 'Montserrat', sans-serif !important;
    font-size: 1.5rem;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    text-decoration: none !important;
    margin: 0 0 0.5em 0;
    padding-bottom: 0.5em;
    border-bottom: 1px solid #B69D78;
    color: #222831;
}

/* Ähnliche Produkte: kleinere Karten, Kontur gleiche Stärke wie goldene Trennlinie (1px) */
.related.products ul.products li.product {
    max-width: 200px;
    border-width: 1px;
    transition: box-shadow 0.3s ease;
}
.related.products ul.products li.product:hover {
    box-shadow: 0 0 18px rgba(255, 255, 255, 0.6), 0 0 30px rgba(182, 157, 120, 0.25);
}
/* Gleicher Abstand links/rechts, goldene Trennlinie zwischen Titel und Preis, zentriert */
.related.products ul.products li.product > a:first-of-type {
    padding-left: 0.5em;
    padding-right: 0.5em;
    box-sizing: border-box;
}
/* Goldene Linie unter dem Titel (zwischen Titel und Preis), symmetrisch zentriert */
.related.products ul.products li.product .woocommerce-loop-product__title,
.related.products ul.products li.product h2.woocommerce-loop-product__title,
.related.products ul.products li.product h3.woocommerce-loop-product__title {
    font-size: 0.85rem;
    margin: 0.5em 0 0 0;
    padding: 0 0.5em 0.4em 0.5em;
    border-bottom: 1px solid #B69D78;
    box-sizing: border-box;
}
.related.products ul.products li.product > a:first-of-type .price {
    font-size: 0.9rem;
    margin: 0 0.5em 0.5em 0.5em;
    padding-top: 0.4em;
    box-sizing: border-box;
}
/* Button/Link „In den Warenkorb“ / „Weiterlesen“ in Ähnliche Produkte ausblenden */
.related.products .button,
.related.products a.button,
.related.products .add_to_cart_button,
.related.products ul.products li.product .button,
.related.products ul.products li.product a.button,
.related.products ul.products li.product .add_to_cart_button,
.related.products ul.products li.product a[href*="add-to-cart"] {
    display: none !important;
}

/* Shop: Category dividers between fixed groups */
/* Shop: Kategorie-Überschriften vor jeder Gruppe (außer Handbikes) – 9 % links, 82 % Breite (wie Produktliste) */
.woocommerce .shop-category-heading {
    font-family: 'Montserrat', sans-serif;
    font-size: 1.5rem;
    margin: 2rem 0 0 9%;
    width: 82%;
    max-width: 82%;
    float: left;
    clear: both;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: #222831;
    box-sizing: border-box;
}
.woocommerce hr.shop-category-divider {
    border: 0;
    border-top: 1px solid #D9D9D9;
    width: 82%;
    margin: 28px 0 28px 9%;
    box-sizing: border-box;
}
.woocommerce hr.shop-category-divider.shop-category-divider--gold {
    border-top-color: #B69D78;
}

/* Shop: Produktliste (ul.products.columns-4) – exakt gleiche Breite und Ausrichtung wie .shop-category-heading */
body.shop-main-page .woocommerce ul.products,
body.shop-main-page .woocommerce ul.products.columns-4,
body.woocommerce-shop .woocommerce ul.products,
body.woocommerce-shop .woocommerce ul.products.columns-4,
body.post-type-archive-product .woocommerce ul.products,
body.post-type-archive-product .woocommerce ul.products.columns-4 {
    margin-left: 9% !important;
    width: 82% !important;
    max-width: 82% !important;
    box-sizing: border-box;
}

/* Shop: Tablet-Ansicht (iPad 820px, iPad Pro 834px) – 3-spaltig, breiteres Grid */
@media screen and (min-width: 768px) and (max-width: 1023px) {
    body.shop-main-page .woocommerce ul.products,
    body.shop-main-page .woocommerce ul.products.columns-4,
    body.woocommerce-shop .woocommerce ul.products,
    body.woocommerce-shop .woocommerce ul.products.columns-4,
    body.post-type-archive-product .woocommerce ul.products,
    body.post-type-archive-product .woocommerce ul.products.columns-4 {
        margin-left: 2% !important;
        width: 96% !important;
        max-width: 96% !important;
        display: flex !important;
        flex-wrap: wrap !important;
        gap: 1rem !important;
    }
    .woocommerce ul.products li.product {
        width: calc(33.333% - 0.67rem) !important;
        max-width: none !important;
        flex: 0 0 calc(33.333% - 0.67rem) !important;
    }
    .woocommerce ul.products li.product .button {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
    }
}

html.pk-theme.konfiguratorOn.configorOff.druckkonfigurator_anfragepart.lang_de.js.flexbox.canvas.canvastext.webgl.no-touch.geolocation.postmessage.no-websqldatabase.indexeddb.hashchange.history.draganddrop.websockets.rgba.hsla.multiplebgs.backgroundsize.borderimage.borderradius.boxshadow.textshadow.opacity.cssanimations.csscolumns.cssgradients.no-cssreflections.csstransforms.csstransforms3d.csstransitions.fontface.generatedcontent.video.audio.localstorage.sessionstorage.webworkers.no-applicationcache.svg.inlinesvg.smil.svgclippaths.no-hires body.wp-singular.page-template-default.page.page-id-3212.logged-in.wp-theme-wordpress-template.theme-wordpress-template.woocommerce-shop.woocommerce.woocommerce-page.woocommerce-js.shop-main-page.gecko.windows div.pagewrapper.eco_it_gmbh div#primary.content-area main#main.site-main ul.products.columns-4
{
    margin: 2rem 0 0 9%;
}

/* WooCommerce theme wrapper (contentpart – Shop, Cart, Checkout, My Account, Thankyou) */
.contentpartWooCommerce .contentpartInner {
    font-family: 'Montserrat', sans-serif;
    color: #222831;
}
.contentpartWooCommerce .contentpartwrapper {
    margin: 2rem 0 4rem 0;
}

/* Cart page (standalone or inside contentpartCart) */
.contentpartCart .woocommerce,
.contentpartWooCommerce .woocommerce-cart-form,
.contentpartWooCommerce .cart-collaterals {
    font-family: 'Montserrat', sans-serif !important;
}
.contentpartCart .woocommerce table.shop_table,
.contentpartWooCommerce .woocommerce table.shop_table.cart {
    border: 1px solid #D9D9D9;
    border-radius: 10px;
}
.contentpartCart .woocommerce a.button,
.contentpartCart .woocommerce button.button,
.contentpartWooCommerce .woocommerce a.button,
.contentpartWooCommerce .woocommerce button.button {
    font-family: 'Montserrat', sans-serif !important;
    border: 1px solid #16242F;
    color: #222831;
}
.contentpartCart .woocommerce a.button.checkout-button,
.contentpartWooCommerce .woocommerce a.checkout-button,
.contentpartWooCommerce .woocommerce .cart_totals .checkout-button {
    border-color: #B69D78;
    background: #B69D78;
    color: #fff;
}
.contentpartCart .cart-continue-shopping,
.contentpartCart .woocommerce + .cart-continue-shopping {
    margin-top: 1.5em;
    clear: both;
}
.contentpartCart .cart-continue-shopping .button {
    font-family: 'Montserrat', sans-serif !important;
    border: 1px solid #16242F;
    color: #222831;
    border-radius: 10px;
    padding: 0.65em 1.25em;
    text-decoration: none;
    display: inline-block;
    transition: box-shadow 0.3s ease, background 0.3s ease;
}
.contentpartCart .cart-continue-shopping .button:hover {
    box-shadow: 0 0 18px rgba(255, 255, 255, 0.6), 0 0 30px rgba(182, 157, 120, 0.25);
    background: #f9f9f9;
}
.contentpartCart .woocommerce a.button:hover,
.contentpartCart .woocommerce button.button:hover,
.contentpartWooCommerce .woocommerce a.button:hover,
.contentpartWooCommerce .woocommerce button.button:hover {
    border-color: #16242F;
    background: #16242F;
    color: #ececec;
}

/* Warenkorb: Länderauswahl (Rechnungsland / Lieferland) für Steuerberechnung */
.theme-cart-country-selector,
.cart-country-selector {
    margin-bottom: 1.5em;
    padding: 1em 0;
    border: 1px solid #D9D9D9;
    border-radius: 10px;
    background: #f9f9f9;
}
.cart-country-form {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.75em 1.5em;
}
.cart-country-form label {
    font-family: 'Montserrat', sans-serif;
    font-size: 14px;
    font-weight: 500;
    margin: 0;
}
.cart-country-form .cart-country-select {
    min-width: 180px;
    padding: 8px 12px;
    border: 1px solid #D9D9D9;
    border-radius: 6px;
    font-size: 14px;
}
.cart-country-form .cart-country-update-btn {
    margin: 0;
}

/* Checkout: gleiche Schriftarten und -größen wie Konfigurator Schritt 3 */
.contentpartWooCommerce .theme-checkout,
.contentpartWooCommerce form.checkout,
.checkoutpart form.checkout,
.woocommerce-checkout form.checkout {
    font-family: 'Montserrat', sans-serif !important;
    font-size: 16px;
}
/* Rechnungsadresse, Lieferadresse: Montserrat Light */
.woocommerce-checkout .woocommerce-billing-fields h3,
.woocommerce-checkout .woocommerce-shipping-fields h3,
.checkoutpart .woocommerce-billing-fields h3,
.checkoutpart .woocommerce-shipping-fields h3,
.contentpartWooCommerce .woocommerce-billing-fields h3,
.contentpartWooCommerce .woocommerce-shipping-fields h3 {
    font-family: 'Montserrat', sans-serif !important;
    font-size: 16px !important;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: #222831;
}
/* Zahlungsoptionen: Montserrat Light */
.woocommerce-checkout #payment .woocommerce-checkout-payment,
.woocommerce-checkout #payment .wc_payment_methods > li label,
.checkoutpart #payment .wc_payment_methods > li label,
.woocommerce-checkout #payment .payment_methods label,
.checkoutpart #payment .payment_methods label {
    font-family: 'Montserrat', sans-serif !important;
    font-size: 16px !important;
    color: #222831;
}
.woocommerce-checkout #payment .payment_box,
.checkoutpart #payment .payment_box {
    font-family: 'Montserrat', sans-serif !important;
    font-size: 16px !important;
}
.contentpartWooCommerce .theme-order-review-heading,
.contentpartWooCommerce #order_review_heading,
.checkoutpart #order_review_heading {
    font-family: 'Montserrat', sans-serif !important;
    font-size: 16px !important;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: #222831;
    border-bottom: 1px solid #B69D78;
    padding-bottom: 0.5rem;
}
/* Checkout-Labels wie Konfigurator Schritt 3: 16px, Montserrat Light, Uppercase */
.contentpartWooCommerce .woocommerce form.checkout .form-row label,
.contentpartWooCommerce form.checkout .form-row label,
.checkoutpart .woocommerce form .form-row label,
.woocommerce-checkout form.checkout .form-row label {
    font-family: 'Montserrat', sans-serif !important;
    font-size: 16px !important;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: #222831;
}
.checkoutpart .woocommerce form .form-row .wc-gzd-checkbox-placeholder-legal label {
    font-family: 'Montserrat', sans-serif !important;
    font-size: 16px !important;
    text-transform: uppercase;
    letter-spacing: 0.06em;
}
/* Checkout-Eingabefelder wie Konfigurator Schritt 3: 16px, Montserrat Light */
.contentpartWooCommerce .woocommerce form.checkout .form-row input.input-text,
.contentpartWooCommerce form.checkout .form-row select,
.contentpartWooCommerce form.checkout .form-row textarea,
.checkoutpart .woocommerce form .form-row input,
.checkoutpart .woocommerce form .form-row select,
.checkoutpart .woocommerce form .form-row textarea,
.checkoutpart input,
.checkoutpart select,
.checkoutpart .select2-container--default .select2-selection--single,
.woocommerce-checkout form.checkout .form-row input.input-text,
.woocommerce-checkout form.checkout .form-row select,
.woocommerce-checkout form.checkout .form-row textarea {
    font-family: 'Montserrat', sans-serif !important;
    font-size: 16px !important;
}
.contentpartWooCommerce .woocommerce-checkout-review-order .button,
.contentpartWooCommerce #place_order {
    font-family: 'Montserrat', sans-serif !important;
    border: 1px solid #B69D78;
    background: #B69D78;
    color: #fff;
}
.contentpartWooCommerce .woocommerce-checkout-review-order .button:hover,
.contentpartWooCommerce #place_order:hover {
    background: #16242F;
    border-color: #16242F;
}
/* Checkout Bestellübersicht-Tabelle: gleiche Schrift wie Konfigurator Schritt 3 */
.woocommerce-checkout .woocommerce-checkout-review-order-table,
.checkoutpart .woocommerce-checkout-review-order-table,
#order_review .woocommerce-checkout-review-order-table {
    font-family: 'Montserrat', sans-serif !important;
    font-size: 16px !important;
    color: #222831;
}
.woocommerce-checkout .woocommerce-checkout-review-order-table th,
.woocommerce-checkout .woocommerce-checkout-review-order-table td,
.checkoutpart .woocommerce-checkout-review-order-table th,
.checkoutpart .woocommerce-checkout-review-order-table td,
#order_review .woocommerce-checkout-review-order-table th,
#order_review .woocommerce-checkout-review-order-table td {
    font-family: 'Montserrat', sans-serif !important;
    font-size: 16px !important;
}
/* Gesamtsumme (order-total) in Uppercase */
.woocommerce-checkout .woocommerce-checkout-review-order-table .order-total th,
.checkoutpart .woocommerce-checkout-review-order-table .order-total th,
#order_review .woocommerce-checkout-review-order-table .order-total th {
    text-transform: uppercase;
    letter-spacing: 0.06em;
}
/* Produkttitel in Bestellübersicht nicht fett */
.woocommerce-checkout .woocommerce-checkout-review-order-table td.product-name,
.checkoutpart .woocommerce-checkout-review-order-table td.product-name,
#order_review .woocommerce-checkout-review-order-table td.product-name {
}
.woocommerce-checkout .woocommerce-checkout-review-order-table td.product-name .product-quantity,
.checkoutpart .woocommerce-checkout-review-order-table td.product-name .product-quantity,
#order_review .woocommerce-checkout-review-order-table td.product-name .product-quantity {
}

/* Checkout: Tablet-Ansicht – Bestellübersicht über Kontaktinfo gestapelt, kleinere Titel, Kurzbeschreibungen ausblenden */
@media screen and (min-width: 768px) and (max-width: 1023px) {
    /* Gestapeltes Layout: Bestellübersicht oben, Kontaktinfo darunter */
    .woocommerce-checkout form.checkout,
    .checkoutpart form.checkout {
        display: flex !important;
        flex-direction: column !important;
    }
    .woocommerce-checkout form.checkout #order_review_heading,
    .checkoutpart form.checkout #order_review_heading,
    .woocommerce-checkout form.checkout #order_review,
    .checkoutpart form.checkout #order_review {
        order: -1 !important;
        float: none !important;
        width: 100% !important;
    }
    .woocommerce-checkout form.checkout #customer_details,
    .checkoutpart form.checkout #customer_details {
        order: 0 !important;
        float: none !important;
        width: 100% !important;
    }

    .contentpartWooCommerce .theme-order-review-heading,
    .contentpartWooCommerce #order_review_heading,
    .checkoutpart #order_review_heading {
        font-size: 13px !important;
    }
    .woocommerce-checkout .woocommerce-checkout-review-order-table td,
    .checkoutpart .woocommerce-checkout-review-order-table td,
    #order_review .woocommerce-checkout-review-order-table td {
        font-size: 13px !important;
    }
    .woocommerce-checkout .woocommerce-checkout-review-order-table td.product-name .woocommerce-product-details__short-description,
    .checkoutpart .woocommerce-checkout-review-order-table td.product-name .woocommerce-product-details__short-description,
    #order_review .woocommerce-checkout-review-order-table td.product-name .woocommerce-product-details__short-description,
    .woocommerce-checkout .woocommerce-checkout-review-order-table td.product-name dl,
    .checkoutpart .woocommerce-checkout-review-order-table td.product-name dl,
    #order_review .woocommerce-checkout-review-order-table td.product-name dl,
    .woocommerce-checkout .woocommerce-checkout-review-order-table td.product-name p:not(.product-quantity),
    .checkoutpart .woocommerce-checkout-review-order-table td.product-name p:not(.product-quantity),
    #order_review .woocommerce-checkout-review-order-table td.product-name p:not(.product-quantity) {
        display: none !important;
    }
}

/* Checkout-/Warenkorb-Bestellübersicht: Produktbilder nicht verzerren */
.woocommerce .product-thumbnail,
.woocommerce-cart-form .product-thumbnail,
.contentpartWooCommerce .woocommerce .product-thumbnail,
#order_review .product-thumbnail,
.woocommerce-checkout .woocommerce .product-thumbnail {
    width: 70px !important;
    min-width: 70px !important;
    vertical-align: top;
}
.woocommerce .product-thumbnail img,
.woocommerce-cart-form .product-thumbnail img,
.contentpartWooCommerce .woocommerce .product-thumbnail img,
#order_review .product-thumbnail img,
#order_review .woocommerce-checkout-review-order-table img,
.woocommerce-checkout-review-order-table .product-thumbnail img,
.woocommerce-checkout .woocommerce .product-thumbnail img {
    display: block;
    width: 70px !important;
    height: 70px !important;
    object-fit: contain;
}
.wc-block-checkout .wc-block-components-order-summary-item__image img,
.wc-block-cart .wc-block-components-order-summary-item__image img {
    width: 100% !important;
    height: 100% !important;
    max-width: 60px;
    max-height: 60px;
    object-fit: contain;
    aspect-ratio: 1 / 1;
}

/* Warenkorb Mobile: Produktbild quadratisch neben Produktname, nicht gestreckt */
@media screen and (max-width: 767px) {
    .woocommerce table.cart.woocommerce-cart-form__contents tr.cart_item,
    .woocommerce-cart-form table.cart tr.woocommerce-cart-form__cart-item {
        display: flex !important;
        flex-wrap: wrap;
        align-items: flex-start;
        padding: 12px 0;
        border-bottom: 1px solid #e0e0e0;
    }
    .woocommerce table.cart .product-thumbnail,
    .woocommerce-page table.cart .product-thumbnail,
    .woocommerce #content table.cart .product-thumbnail {
        display: block !important;
        width: 70px !important;
        min-width: 70px !important;
        flex: 0 0 70px;
        padding: 0 !important;
    }
    .woocommerce table.cart .product-thumbnail a,
    .woocommerce-page table.cart .product-thumbnail a {
        display: block !important;
        width: 70px !important;
        height: 70px !important;
        overflow: hidden;
        flex-shrink: 0;
    }
    .woocommerce table.cart .product-thumbnail img,
    .woocommerce-page table.cart .product-thumbnail img {
        width: 70px !important;
        height: 70px !important;
        max-width: 70px !important;
        object-fit: contain !important;
        display: block !important;
    }
    .woocommerce table.cart td.product-name,
    .woocommerce-page table.cart td.product-name {
        flex: 1 1 auto;
        padding-left: 12px !important;
        width: auto !important;
    }
    .woocommerce table.cart td.product-remove,
    .woocommerce-page table.cart td.product-remove {
        order: -1;
        flex: 0 0 auto;
    }
    .woocommerce table.cart td.product-price,
    .woocommerce table.cart td.product-quantity,
    .woocommerce table.cart td.product-subtotal,
    .woocommerce-page table.cart td.product-price,
    .woocommerce-page table.cart td.product-quantity,
    .woocommerce-page table.cart td.product-subtotal {
        flex: 1 1 auto;
        display: block !important;
    }
}

/* Thankyou page */
.contentpartWooCommerce .woocommerce-order.theme-thankyou,
.contentpartWooCommerce .woocommerce-order {
    font-family: 'Montserrat', sans-serif !important;
    color: #222831;
}
.contentpartWooCommerce .woocommerce-order-overview {
    border: 1px solid #D9D9D9;
    border-radius: 10px;
    padding: 1rem 1.5rem;
}
.contentpartWooCommerce .woocommerce-order .button {
    font-family: 'Montserrat', sans-serif !important;
    border: 1px solid #16242F;
    color: #222831;
}
.contentpartWooCommerce .woocommerce-order .button:hover {
    background: #16242F;
    color: #ececec;
}

/* My Account */
.contentpartWooCommerce .woocommerce-MyAccount-navigation,
.contentpartWooCommerce .woocommerce-MyAccount-content {
    font-family: 'Montserrat', sans-serif !important;
    color: #222831;
}
.contentpartWooCommerce .woocommerce-MyAccount-navigation a {
    color: #222831;
}
.contentpartWooCommerce .woocommerce-MyAccount-navigation a:hover {
    color: #B69D78;
}
.contentpartWooCommerce .theme-myaccount-dashboard p,
.contentpartWooCommerce .theme-myaccount-login h2 {
    font-family: 'Montserrat', sans-serif !important;
}
.contentpartWooCommerce .theme-myaccount-login .woocommerce-Button,
.contentpartWooCommerce .theme-myaccount-login .button {
    font-family: 'Montserrat', sans-serif !important;
    border: 1px solid #16242F;
    color: #222831;
}
.contentpartWooCommerce .theme-myaccount-login .woocommerce-Button:hover,
.contentpartWooCommerce .theme-myaccount-login .button:hover {
    background: #16242F;
    color: #ececec;
}

/* WooCommerce global: buttons and notices (outside Konfigurator) */
.contentpartWooCommerce .woocommerce-message,
.contentpartWooCommerce .woocommerce-info,
.contentpartWooCommerce .woocommerce-error {
    font-family: 'Montserrat', sans-serif !important;
    border-left-color: #B69D78;
}
.contentpartWooCommerce .woocommerce form .form-row label,
.contentpartWooCommerce .woocommerce form .form-row .input-text {
    font-family: 'Montserrat', sans-serif !important;
}

/* WooCommerce Block Checkout & Cart – Seiten laden über page.php (contentpartPage, entry-content) */
/* Verhindere, dass alignwide die WC-Blöcke aus dem Container verschiebt */
.contentpartPage .entry-content .wp-block-woocommerce-checkout.alignwide,
.contentpartPage .entry-content .wp-block-woocommerce-cart.alignwide {
    position: static;
    left: auto;
    transform: none;
    width: 100%;
    max-width: 100%;
    margin-left: 0;
    margin-right: 0;
}

/* Block Checkout: Typografie */
.wc-block-checkout,
.wc-block-cart,
.wp-block-woocommerce-checkout,
.wp-block-woocommerce-cart {
    font-family: 'Montserrat', sans-serif !important;
    color: #222831;
}

/* Block Checkout: Überschriften */
.wc-block-checkout .wc-block-components-checkout-step__heading,
.wc-block-checkout .wc-block-components-title,
.wc-block-cart .wc-block-components-title {
    font-family: 'Montserrat', sans-serif !important;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: #222831;
}

/* Block Checkout: Formularfelder */
.wc-block-checkout .wc-block-components-text-input input,
.wc-block-checkout .wc-block-components-text-input textarea,
.wc-block-checkout .wc-block-components-text-input select,
.wc-block-checkout .wc-block-components-text-input label,
.wc-block-checkout .wc-block-components-combobox .components-combobox-control input,
.wc-block-checkout .wc-block-components-select .components-select-control select {
    font-family: 'Montserrat', sans-serif !important;
    color: #222831;
}
.wc-block-checkout .wc-block-components-text-input input:focus,
.wc-block-checkout .wc-block-components-text-input textarea:focus {
    border-color: #B69D78;
    box-shadow: 0 0 0 1px #B69D78;
}

/* Block Checkout: Buttons */
.wc-block-checkout .wc-block-components-button,
.wc-block-checkout .wc-block-components-checkout-place-order-button,
.wc-block-cart .wc-block-cart__submit-button,
.wc-block-cart .wc-block-components-button {
    font-family: 'Montserrat', sans-serif !important;
    background: #B69D78 !important;
    color: #fff !important;
    border: 1px solid #B69D78 !important;
    border-radius: 10px;
    text-transform: none;
    letter-spacing: 0.02em;
    box-shadow: none;
}
.wc-block-checkout .wc-block-components-button:hover,
.wc-block-checkout .wc-block-components-checkout-place-order-button:hover,
.wc-block-cart .wc-block-cart__submit-button:hover,
.wc-block-cart .wc-block-components-button:hover {
    background: #16242F !important;
    border-color: #16242F !important;
    color: #ececec !important;
}

/* Block Checkout: Bestellzusammenfassung / Totals */
.wc-block-checkout .wc-block-components-order-summary,
.wc-block-checkout .wc-block-components-totals-wrapper,
.wc-block-checkout .wc-block-components-totals-footer-item {
    font-family: 'Montserrat', sans-serif !important;
    color: #222831;
}

/* Block Checkout: Trennlinien */
.wc-block-checkout .wc-block-components-checkout-step::after {
    border-color: #D9D9D9;
}

/* Block Checkout: Infos/Fehler */
.wc-block-components-notice-banner.is-error {
    border-left-color: #dc3545;
}
.wc-block-components-notice-banner.is-success {
    border-left-color: #B69D78;
}
.wc-block-components-notice-banner.is-info {
    border-left-color: #B69D78;
}
.wc-block-components-notice-banner {
    font-family: 'Montserrat', sans-serif !important;
}

/* Block Checkout: Links */
.wc-block-checkout a,
.wc-block-cart a {
    color: #222831;
}
.wc-block-checkout a:hover,
.wc-block-cart a:hover {
    color: #B69D78;
}

/* Block Checkout: Radiobuttons und Checkboxen */
.wc-block-checkout .wc-block-components-radio-control__input:checked,
.wc-block-checkout .wc-block-components-checkbox__input:checked {
    border-color: #B69D78;
    background-color: #B69D78;
}

/* Block Cart: Tabelle */
.wc-block-cart .wc-block-cart-items {
    font-family: 'Montserrat', sans-serif !important;
}

/* Checkout / Cart page heading (contentpartPage) */
body.woocommerce-checkout .contentpartPage .entry-title,
body.woocommerce-cart .contentpartPage .entry-title {
    font-family: 'Montserrat', sans-serif !important;
    text-transform: uppercase;
    letter-spacing: 0.06em;
}

/* Single Product: sicherstellen, dass Produktseite korrekt dargestellt wird */
body.single-product .contentpart-singleproduct .contentpartInner {
    font-family: 'Montserrat', sans-serif;
    color: #222831;
}
/* Produkttitel auf Produktdetailseiten immer sichtbar (überschreibt ggf. display:none aus anderem Kontext) */
body.single-product .contentpart-singleproduct .woocommerce div.product .product_title,
body.single-product .woocommerce div.product .product_title {
    display: block !important;
    visibility: visible !important;
    font-family: 'Montserrat', sans-serif !important;
    font-size: 40px;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: #222831 !important;
    margin-bottom: 0.75em;
}
body.single-product .contentpart-singleproduct .woocommerce div.product .summary .price,
body.single-product .contentpart-singleproduct .woocommerce div.product form.cart .price-in-form {
    font-family: 'Montserrat', sans-serif !important;
    color: #222831;
    margin-top: 0;
}
body.single-product .contentpart-singleproduct .woocommerce div.product .woocommerce-product-details__short-description,
body.single-product .contentpart-singleproduct .woocommerce div.product .woocommerce-product-details__short-description p {
    font-family: 'Montserrat', sans-serif !important;
    color: #222831;
}
body.single-product .contentpart-singleproduct .woocommerce div.product .summary.entry-summary {
    font-family: 'Montserrat', sans-serif;
}

.product_meta {
    display: none;
}

.single .woocommerce ul.products li.product a {
    padding: 10px 10px 0px 10px;
}

.single .woocommerce-Price-amount.amount {
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    color: #222831;
}

.contentpartKonfiguratorHeading h1 {
    font-family: 'Montserrat', sans-serif !important;
    font-size: 40px;
}

.StepinfoHL {
    float: left;
    width: 100%;
}

.StepinfoCount {
    width: 100px;
    height: 100px;
    border: 5px solid #222831;
    float: left;
    overflow: hidden;
    -webkit-border-radius: 300px;
    -moz-border-radius: 300px;
    border-radius: 300px;
}

.StepinfoCountInner {
    font-size: 52px;
    color: #222831;
    width: 100%;
    text-align: center;
    position: initial;
    margin: 40px 0 0 0;
}

.StepinfoTxt {
    font-size: 80px;
    margin: 39px 0 0 50px;
    float: left;
    display: block;
}

.selectPartContent {
    float: left;
    width: 90%;
    margin: 40px 0 0 5%;
    background: #ffffff;
    position: relative;
}

/* Personal Data Block - separate block inside selectPart */
.personalDataBlock {
    float: left;
    width: 100%;
    margin: 30px 0 0 0;
    border: 1px solid #D9D9D9;
    border-radius: 23px;
    background: #ffffff;
    overflow: hidden;
}

.personalDataBlock .selectPartContent {
    margin: 0;
    width: 90%;
    padding: 0 0 20px 0;
}

/* Personal Details Block - smaller separate block inside personalDataBlock */
.personalDetailsBlock {
    float: left;
    width: 100%;
    margin: 20px 1% 0 0;
    border: 1px solid #D9D9D9;
    border-radius: 23px;
    background: #ffffff;
    overflow: hidden;
}

.personalDetailsBlock .personalDetailsContent {
    margin: 0;
    width: 90%;
    padding: 0 0 20px 0;
    margin-left: 5%;
}

/* Style selectPartHeading to match preisrechner header */
.selectPartHeading {
    padding: 20px 0;
    font-size: 20px;
    color: #ececec;
    background: #222831;
    float: left;
    width: 100%;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    border: 1px solid #222831;
    border-radius: 23px 23px 0 0;
}
.contentpartKonfigurator .selectPartHeading {
    font-family: 'Montserrat', sans-serif !important;
    font-size: 18px;
}

.selectPartHeading {
    position: relative;
}

.selectPartHeading h2,
.selectPartHeading h3 {
    margin: 0;
    padding: 0;
    font-size: 20px;
    margin-left: 5%;
    color: #ececec;
}
.contentpartKonfigurator .selectPartHeading h2,
.contentpartKonfigurator .selectPartHeading h3 {
    font-size: 18px;
}

/* SCOUT Model Badge in Configuration Section */
.scout-model-badge {
    display: inline-block;
    position: absolute;
    right: 5%;
    top: 50%;
    transform: translateY(-50%);
    background: #222831;
    color: #ececec;
    padding: 8px 16px;
    border-radius: 20px;
    font-size: 14px;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    letter-spacing: 0.5px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
}
.contentpartKonfigurator .scout-model-badge {
    font-family: 'Montserrat', sans-serif !important;
    font-size: 14px;
    text-transform: uppercase;
    letter-spacing: 0.06em;
}

@media screen and (max-width: 1023px) {
    .scout-model-badge {
        position: static;
        transform: none;
        display: inline-block;
        margin-left: 15px;
        margin-top: 10px;
    }
    
    .selectPartHeading {
        padding-bottom: 15px;
    }
}

.selectRow {
    width: 100%;
    float: left;
    position: relative;
    margin: 0px 0 50px 0;
}

.selectRowLabel {
    font-size: 18px;
    line-height: 37px;
    float: left;
    box-sizing: border-box;
}
.contentpartKonfigurator .bikeconfig .selectRowLabel {
    font-size: 16px;
    font-family: 'Montserrat', sans-serif !important;
}

/* Make bike config rows display in one horizontal row with label on left, buttons on right, ? on same line */
.selectRow.bikeconfig {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    float: none !important;
}

/* Conditional rows (battery, charger, display without motor) – hide overrides flex so they stay hidden */
.selectRow.bikeconfig.bike-config-row-hidden {
    display: none !important;
}

/* Ensure all bike config button rows have consistent width and left alignment */
.bikeconfig .selectRowLabel {
    width: 20% !important;
    flex: 0 0 20% !important;
    margin-top: 20px;
    box-sizing: border-box;
    flex-shrink: 0 !important;
    display: flex !important;
    align-items: center !important;
    line-height: 1 !important;
}

.bindungsrow .selectRowInputs {
    width: 75%;
    margin: 20px 0 0 0;
} 

.plotconfig .selectRowInputs,
.bikeconfig .selectRowInputs {
    width: 74%;
}
.mobile-only {
    display: none;
}

.plot-disabled {
    opacity: 0.5;
    pointer-events: none;
    /* other styling as needed */
}

.plot-disabled a {
    pointer-events: auto; /* Allow pointer events on links only */
    text-decoration: underline; /* Optional: underline to indicate it's clickable */
    color: inherit; /* Optional: inherit color from the parent */
}

.plot-inffeld-disabled {
    opacity: 0.5;
    pointer-events: none;
    /* other styling as needed */
}

.bike-disabled {
    opacity: 0.5;
    pointer-events: none;
    cursor: not-allowed;
}

.bike-disabled .countselect {
    cursor: not-allowed;
    pointer-events: none;
}

.selectRowInputs {
    float: left;
    width: 57%;
    margin: 0 0 0 0;
    box-sizing: border-box;
}

/* Ensure all button rows have consistent width (80%) and are aligned to the right */
.bikeconfig .selectRowInputs {
    width: 75% !important;
    box-sizing: border-box !important;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
    display: flex !important;
    justify-content: flex-end !important;
}

.bikeconfig .countselector {
    width: 100% !important;
    box-sizing: border-box !important;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
    display: flex !important;
    justify-content: flex-end !important;
}

/* Ensure all countselect buttons fill their container properly */
.bikeconfig .countselect {
    box-sizing: border-box !important;
}

/* Auswahlmöglichkeiten (Kurz, Mittel, Lang, …) – Montserrat Light, einheitliche Größe */
.contentpartKonfigurator .bikeconfig .countselect {
    font-family: 'Montserrat', sans-serif !important;
    font-size: 16px !important;
}

.hide-versand-details{
    display: none;
}


.countselect {
    position: relative;
    font-size: 18px;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    cursor: pointer;
    float: none;
    flex: 1;
    width: 14%;
    border: 1px solid #222831;
    text-align: center;
    cursor: pointer;
    min-height: 50px;
    height: 100%;
    margin: 0 -1px 0 0;
    padding: 6px 4px;
    overflow: hidden;
    word-wrap: break-word;
    overflow-wrap: break-word;
    white-space: normal;
    line-height: 1.3;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
}

/* Ensure main text content wraps properly */
.countselect > *:not(.smaller) {
    flex-shrink: 1;
    width: 100%;
    word-wrap: break-word;
    overflow-wrap: break-word;
}

/* Ensure main text is centered and doesn't include smaller text in flex layout - single line */
.bike-BaseTube .countselect > *:not(.smaller),
.bike-Motor .countselect > *:not(.smaller),
.bike-Battery .countselect > *:not(.smaller),
.bike-Display .countselect > *:not(.smaller),
.bike-Seat .countselect > *:not(.smaller),
.bike-Charger .countselect > *:not(.smaller),
.bike-Wheelset .countselect > *:not(.smaller),
.bike-Cranks .countselect > *:not(.smaller),
.bike-Tires .countselect > *:not(.smaller),
.bike-BrakeSet .countselect > *:not(.smaller),
.bike-BrakeDisks .countselect > *:not(.smaller),
.bike-Shocks .countselect > *:not(.smaller),
.bike-Transmission .countselect > *:not(.smaller),
.bike-Seatpost .countselect > *:not(.smaller),
.bike-Addons .countselect > *:not(.smaller) {
    text-align: center !important;
    width: 100% !important;
    white-space: normal !important;
    word-wrap: break-word !important;
    overflow-wrap: break-word !important;
}

#exemplare_1,
#format_A5,
#SoftSpiral_Drahtkamm_schwarz {
    border-radius: 16px 0px 0px 16px;
}

#exemplare_5,
#format_A3,
#SoftSpiral_Drahtkamm {
    border-radius: 0px 16px 16px 0px;
}

.spiralcolorselect {
    width: 100%;
    float: left;
    margin: 20px 0 20px 0;
}

.spiralcolorselect .spiralcolorselectKunststoff,
.spiralcolorselect .spiralcolorselectDrahtkamm {
    display: none;
}

.spiralcolorselect .selectPartContentLeft .selectRowLabel {
    width: 18%;
}

#SoftSpiral_Kunststoff_schwarz {
    border-radius: 16px 16px 16px 16px;
}

.countselector50 .spiralcolorselect .countselect {
    width: 33%;
}

.RowBike .countselect {
    width: 32.333%;
}

.countselector50 .countselect {
    width: 49%;
}

.radioItem {
    float: left;
    width: 37%;
    margin: 25px 20px 0px 0;
    cursor: pointer;
}

.locationRadioItem {
    width: 100%;
}

.locationRadioItem > .radiolabel {
    width: 100%;
    margin-top: -25px;
    margin-left: 40px;
}
.logoposition .radioItem {
    width: 31%;
    margin: 25px 3% 0px 0;
}

.radioItem:hover .countradio {
    background: #eeeeee
}

.radioItemOn .countradio {
    background: #F59B0A !important
}

.radioItem:last-child {
    margin-right: 0px;
}

.radiosetTitel {
    display: block;
    width: 15%;
    float: left;
    margin: 25px 0 0px 0;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    font-size: 11px;
    line-height: 16px;
}

.radiolabel {
    font-size: 15px;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    margin: -5px 0 0 0;
    width: 71%;
    float: left;
    line-height: 20px;
}

.countradio {
    border-radius: 300px;
    border: 1px solid #D9D9D9;
    height: 26px;
    width: 26px;
    float: left;
    margin: 0 7px 0 0px;
}

.countselector50 .countselect:first-child {
    border-radius: 16px 0px 0px 16px;
}

.countselector50 .countselect:last-child {
    border-radius: 0px 16px 16px 0px;
}

#lieferung_versand {
    border-radius: 0px 16px 16px 0px;
}

#lieferung_abholung,

#Soft_Thermoleinen_schwarz {
    border-radius: 0px 16px 16px 0px;
}

.countselect .smaller {
    font-size: 10px;
    display: block;
    position: relative;
    width: 100%;
    text-align: center;
    margin: 4px 0 0 0;
    word-wrap: break-word;
    overflow-wrap: break-word;
    line-height: 1.2;
    flex-shrink: 0;
}

/* Ensure text in countselect boxes wraps properly and all boxes in row have same height - all same font size as SCOUT */
.countselectw20 {
    min-height: 50px;
    height: 100%;
    padding: 6px 4px !important;
    font-size: 18px !important;
    line-height: 1.3;
}

.countselectw25 {
    min-height: 50px;
    height: 100%;
    padding: 6px 4px !important;
    font-size: 18px !important;
    line-height: 1.3;
}

.countselectw33 {
    min-height: 50px;
    height: 100%;
    padding: 6px 4px !important;
    font-size: 18px !important;
    line-height: 1.3;
}

.countselectw50 {
    min-height: 50px;
    height: 100%;
    padding: 6px 4px !important;
    font-size: 18px !important;
    line-height: 1.3;
}

/* Allow addon boxes to grow if text is long - removed duplicate rule, using unified rule below */

/* From Base Tube Length and below: consistent font size and text wrapping */
.bike-BaseTube .countselect,
.bike-Motor .countselect,
.bike-Battery .countselect,
.bike-Display .countselect,
.bike-Seat .countselect,
.bike-Charger .countselect,
.bike-Wheelset .countselect,
.bike-Cranks .countselect,
.bike-Tires .countselect,
.bike-BrakeSet .countselect,
.bike-BrakeDisks .countselect,
.bike-Shocks .countselect,
.bike-Transmission .countselect,
.bike-Seatpost .countselect,
.bike-Addons .countselect {
    font-size: 18px !important;
    min-height: 60px !important;
    line-height: 1.4 !important;
    padding: 8px 4px !important;
    justify-content: center !important;
    align-items: center !important;
    overflow: visible !important;
    position: relative !important;
    white-space: normal !important;
    word-wrap: break-word !important;
    overflow-wrap: break-word !important;
}

/* Buttons can grow on hover or when selected if text wraps */
.bike-BaseTube .countselect:hover,
.bike-Motor .countselect:hover,
.bike-Battery .countselect:hover,
.bike-Display .countselect:hover,
.bike-Seat .countselect:hover,
.bike-Charger .countselect:hover,
.bike-Wheelset .countselect:hover,
.bike-Cranks .countselect:hover,
.bike-Tires .countselect:hover,
.bike-BrakeSet .countselect:hover,
.bike-BrakeDisks .countselect:hover,
.bike-Shocks .countselect:hover,
.bike-Transmission .countselect:hover,
.bike-Seatpost .countselect:hover,
.bike-Addons .countselect:hover,
.bike-BaseTube .countselect.InputActive,
.bike-Motor .countselect.InputActive,
.bike-Battery .countselect.InputActive,
.bike-Display .countselect.InputActive,
.bike-Seat .countselect.InputActive,
.bike-Charger .countselect.InputActive,
.bike-Wheelset .countselect.InputActive,
.bike-Cranks .countselect.InputActive,
.bike-Tires .countselect.InputActive,
.bike-BrakeSet .countselect.InputActive,
.bike-BrakeDisks .countselect.InputActive,
.bike-Shocks .countselect.InputActive,
.bike-Transmission .countselect.InputActive,
.bike-Seatpost .countselect.InputActive,
.bike-Addons .countselect.InputActive {
    min-height: 60px !important;
}

/* Hide availability text next to row – shown in ? box only */
.bikeconfig .selectRowInfostxt.bike-availability-note {
    position: absolute !important;
    left: -9999px !important;
    width: 1px !important;
    height: 1px !important;
    overflow: hidden !important;
    visibility: hidden !important;
}

/* Hide smaller text - information is now shown in question mark boxes only */
.bikeconfig .countselect .smaller {
    display: none !important;
    visibility: hidden !important;
    /* Keep the element in DOM for JavaScript to read, but make it invisible */
    position: absolute !important;
    left: -9999px !important;
    width: 1px !important;
    height: 1px !important;
    overflow: hidden !important;
}

/* Color submenu styling – nimmt eine eigene volle Zeile im flex-Elternelement */
.colorSubmenu {
    width: 100%;
    flex: 0 0 100%;
    float: none;
    margin: 15px 0 0 0;
    padding: 15px 0;
    border-top: 1px solid #222831;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
}
.colorSubmenu > .selectRowLabel {
    width: 20% !important;
    flex: 0 0 20% !important;
    margin-top: 20px;
    box-sizing: border-box;
    flex-shrink: 0 !important;
    display: flex !important;
    align-items: center !important;
    line-height: 1 !important;
}
.colorSubmenu > .selectRowInputs {
    width: 75% !important;
    box-sizing: border-box !important;
    margin: 0 !important;
    padding: 10px 0 0 0 !important;
    float: none !important;
    display: flex !important;
    justify-content: flex-end !important;
}
.colorSubmenu > .selectRowInfos {
    width: 40px !important;
    flex: 0 0 40px !important;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    padding-top: 10px !important;
    align-self: center;
}

.colorSubmenu .colorSelector {
    width: 100%;
    float: left;
}

.colorSubmenu .ColorSelect {
    font-size: 12px !important;
    min-height: 50px !important;
    max-height: 50px !important;
    padding: 8px 4px !important;
    overflow: hidden !important;
}

/* Color buttons should NOT grow when clicked/selected */
.colorSubmenu .ColorSelect.InputActive,
.colorSubmenu .ColorSelect:hover {
    min-height: 50px !important;
    max-height: 50px !important;
}

/* Adjust width for 7 color options */
.colorSubmenu .colorSelector .ColorSelect.countselectw20 {
    width: 14% !important;
    flex: 0 0 14% !important;
}

.colorSubmenu > div:nth-child(4){
    order: 4 !important;
}

.colorSubmenu > div:nth-child(5){
    order: 5 !important;
}

.colorSubmenu > div:nth-child(6){
    order: 6 !important;
}

.infoBTN {
    border: 1px solid #D9D9D9;
    width: 35px;
    font-size: 21px;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    border-radius: 300px;
    height: 26px;
    display: block;
    text-align: center;
    overflow: hidden;
    padding: 8px 0 0 0;
    float: left;
    margin: 2px 0 0 0;
    position: relative;
    top: 0;
    cursor: pointer;
}

.infoBTN:hover {
    background: #D9D9D9;
}

.infoBTNOn {
    background: #F59B0A !important;
    color: #222831;
    border: 1px solid #F59B0A;
}

.countselect:hover {
    background: #eeeeee;
    color: #000000;
}

.InputActive,
.pk-customer-type-row .pk-customer-toggle-btn.is-active {
    background: #222831 !important;
    color: #ececec !important;
}

.InputActive .smaller {
    color: #ececec !important;
}
.smaller {
    margin: 4px 0 0 0 !important;
}

.countselect_manuell {
    float: left;
    height: 33px;
    width: 20%;
    text-align: center;
    border-radius: 16px;
    border: 1px solid #222831;
    font-size: 19px;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    margin: 0 0 0 0%;
    padding: 4px 0 0 0;
}

#exemplare_manuell {
    margin: 0 0 0 5%;
}

.selectRowInfos {
    float: left;
    width: 15%;
    font-size: 16px;
    line-height: 18px;
    margin: 0 0 0 2%;
}

/* Bike config rows – Desktop: Tooltip-Icon (i) rechts neben den Auswahlbuttons */
.bikeconfig .selectRowLabel {
    order: 1;
    display: flex;
    align-items: center;
    flex-wrap: nowrap;
    gap: 6px;
}
.bikeconfig .selectRowInfos {
    order: 3;
    float: none !important;
    width: auto !important;
    flex: 0 0 auto !important;
    min-width: 0 !important;
    margin: 0 12px 0 8px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    flex-shrink: 0 !important;
    align-self: center !important;
    box-sizing: border-box;
}
.bikeconfig .selectRowInputs {
    order: 2;
}

/* Color submenus should appear below the main selection row */
.bikeconfig .colorSubmenu {
    order: 4;
}

.selectRowInfostxt {
    display: block;
    float: left;
    margin: 0 0 0 0;
}

/* Question mark info icon with hover tooltip */
.selectRowLabel .infoIcon {
    display: inline-block;
    width: 20px;
    height: 20px;
    line-height: 18px;
    text-align: center;
    border-radius: 50%;
    background-color: #222831;
    color: #ececec;
    font-size: 14px;
    cursor: help;
    margin-left: 8px;
    position: relative;
    vertical-align: middle;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
}

.selectRowLabel .infoIcon:hover {
    background-color: #222831;
}

.selectRowLabel .infoIcon::after {
    content: attr(data-description);
    position: absolute;
    bottom: 100%;
    left: 50%;
    transform: translateX(-50%);
    margin-bottom: 8px;
    padding: 10px 15px;
    background-color: #222831;
    color: #ececec;
    font-size: 14px;
    line-height: 1.4;
    white-space: normal;
    width: 250px;
    border-radius: 8px;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease, visibility 0.3s ease;
    pointer-events: none;
    z-index: 1000;
    text-align: left;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
}

.selectRowLabel .infoIcon::before {
    content: '';
    position: absolute;
    bottom: 100%;
    left: 50%;
    transform: translateX(-50%);
    margin-bottom: 2px;
    border: 6px solid transparent;
    border-top-color: #222831;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease, visibility 0.3s ease;
    pointer-events: none;
    z-index: 1001;
}

.selectRowLabel .infoIcon:hover::after,
.selectRowLabel .infoIcon:hover::before {
    opacity: 1;
    visibility: visible;
}

/* Responsive tooltip positioning */
@media screen and (max-width: 1023px) {
    .selectRowLabel .infoIcon::after {
        width: 200px;
        left: auto;
        right: 0;
        transform: none;
    }
    
    .selectRowLabel .infoIcon::before {
        left: auto;
        right: 20px;
        transform: none;
    }
}

@media screen and (max-width: 600px) {
    .selectRowLabel .infoIcon::after {
        width: 180px;
        font-size: 12px;
        padding: 8px 12px;
    }
}

/* Question Mark Info Icons for Bike Configurator - Right Side */
.bikeconfig .selectRowInfos .info-question-mark {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 20px;
    height: 20px;
    line-height: 1;
    text-align: center;
    border-radius: 50%;
    background-color: #222831;
    color: #ececec;
    font-size: 14px;
    cursor: pointer;
    vertical-align: middle;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    transition: background-color 0.2s ease;
    user-select: none;
    flex-shrink: 0;
}

.bikeconfig .selectRowInfos .info-question-mark:hover {
    background-color: #1a1e24;
}

.bikeconfig .selectRowInfos .info-question-mark:focus {
    outline: 2px solid #222831;
    outline-offset: 2px;
}

/* Farbe-Submenü-Icon nutzt .bikeconfig .selectRowInfos .info-question-mark (rechts neben Auswahl) */

/* (selectRowInfos styling merged in block above) */

/* Desktop Info Box (Inside Preisbox) - Matching Preisbox Design */
.bike-info-box {
    position: absolute;
    background: #ffffff;
    border: 1px solid #D9D9D9;
    border-radius: 23px;
    z-index: 10000;
    display: none;
    flex-direction: column;
    overflow: hidden;
    transition: opacity 0.15s ease;
}

.bike-info-box.active {
    display: flex;
}

.bike-info-box-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 20px 0;
    font-size: 18px;
    color: #ececec;
    background: #222831 !important;
    border: 1px solid #222831 !important;
    border-radius: 23px 23px 0 0;
    flex-shrink: 0;
    font-family: 'Montserrat', sans-serif !important;
}

.bike-info-box-title {
    font-family: 'Montserrat', sans-serif !important;
    font-size: 18px;
    padding: 0 5%;
    text-transform: uppercase;
    letter-spacing: 0.12em;
}

.bike-info-box-close {
    background: transparent;
    border: none;
    color: #ececec;
    font-size: 24px;
    line-height: 1;
    cursor: pointer;
    padding: 0;
    width: 30px;
    height: 30px;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: color 0.2s ease;
    margin-right: 5%;
}

.bike-info-box-close:hover {
    color: #ffffff;
}

.bike-info-box-content {
    padding: 20px 0;
    background: #ffffff;
    border: 1px solid #D9D9D9;
    border-radius: 0px 0px 23px 23px;
    overflow-y: auto;
    overflow-x: hidden;
    min-height: 0;
    box-sizing: border-box;
}

.bike-info-box-content-inner {
    width: 90%;
    margin: 0 0 0 5%;
    position: relative;
}

.bike-info-options {
    display: flex;
    flex-direction: column;
    gap: 0;
}

.bike-info-option {
    padding-bottom: 15px;
    border-bottom: 1px solid #D9D9D9;
    margin-bottom: 15px;
}

.bike-info-option:last-child {
    border-bottom: none;
    padding-bottom: 0;
    margin-bottom: 0;
}

.bike-info-option-name {
    display: block;
    color: #222831;
    margin-bottom: 8px;
    font-size: 16px;
    font-family: 'Montserrat', sans-serif !important;
    text-transform: uppercase;
    letter-spacing: 0.06em;
}

.bike-info-option-desc {
    color: #222831;
    font-size: 14px;
    line-height: 1.6;
    font-family: 'Montserrat', sans-serif !important;
}

.bike-info-option-desc br {
    margin-bottom: 8px;
}

.bike-info-box-content-inner .bike-info-availability {
    margin-top: 14px;
    padding-top: 12px;
    border-top: 1px solid #eee;
    font-size: 14px;
    color: #222831;
    font-family: 'Montserrat', sans-serif !important;
}

/* Full-page modal for ? info (all viewports) */
.bike-info-modal {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 10000;
    display: none;
    align-items: center;
    justify-content: center;
    padding: 24px;
    box-sizing: border-box;
}

.bike-info-modal.active {
    display: flex;
}

.bike-info-modal-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.65);
    z-index: 10001;
}

.bike-info-modal-content {
    position: relative;
    z-index: 10002;
    background: #ffffff;
    border-radius: 16px;
    width: 100%;
    max-width: min(640px, 92vw);
    max-height: 88vh;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    box-shadow: 0 12px 48px rgba(0, 0, 0, 0.35);
}

.bike-info-modal-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 20px;
    background: #222831 !important;
    color: #ececec;
    border-bottom: 2px solid #222831 !important;
}

.bike-info-modal-title {
    font-family: 'Montserrat', sans-serif !important;
    font-size: 18px;
    text-transform: uppercase;
    letter-spacing: 0.12em;
}

.bike-info-modal-close {
    background: transparent;
    border: none;
    color: #ececec;
    font-size: 32px;
    line-height: 1;
    cursor: pointer;
    padding: 0;
    width: 36px;
    height: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: color 0.2s ease;
}

.bike-info-modal-close:hover {
    color: #ffffff;
}

.bike-info-modal-body {
    padding: 24px;
    overflow-y: auto;
    flex: 1;
    -webkit-overflow-scrolling: touch;
}

/* Eingebetteter Seiteninhalt im Konfigurator-Tooltip */
.bike-info-modal-body .bike-tooltip-page-content {
    max-height: 70vh;
    overflow-y: auto;
    font-family: 'Montserrat', sans-serif;
    font-weight: 300;
    font-size: 15px;
    line-height: 1.5;
    color: #222831;
}
.bike-info-modal-body .bike-tooltip-page-content.bike-tooltip-loading {
    color: #666;
    font-style: italic;
}
.bike-info-modal-body .bike-tooltip-page-content p {
    margin: 0 0 1em 0;
}
.bike-info-modal-body .bike-tooltip-page-content p:last-child {
    margin-bottom: 0;
}

body.modal-open {
    overflow: hidden;
}

/* Business UID (VIES) validation states */
.pk-field-valid {
    border: 2px solid #C1A57B !important;
    box-shadow: 0 0 0 2px rgba(193, 165, 123, 0.25) !important;
}
.pk-field-invalid {
    border: 2px solid #b00020 !important;
    box-shadow: 0 0 0 2px rgba(176, 0, 32, 0.15) !important;
}
.bike-uid-status {
    font-size: 12px;
    line-height: 1.3;
    margin-top: 6px;
    color: #222831;
    font-family: 'Montserrat', sans-serif !important;
}
.bike-uid-status.is-error {
    color: #b00020;
}
.bike-uid-status.is-loading {
    color: #666;
    font-style: italic;
}

/* Desktop: hide the small infobox (we use full-page modal only) */
.bike-info-box {
    display: none !important;
}

#anmerkung {
    font-size: 16px;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    width: 92.1%;
    height: 130px;
    text-align: left;
    font-size: 16px;
    padding: 3%;
}

a.confignextBTN,
#place_order,
.checkout-button {
    font-size: 20px;
    color: #222831;
    background: #F59B0A;
    border: 3px solid #222831;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    width: 34%;
    text-align: center;
    border-radius: 10px;
    display: block;
    height: 45px;
    float: right;
    padding: 15px 0 0 0;
    margin: 58px -40px -150px 0;
    -webkit-transition: all 350ms;
    -moz-transition: all 350ms;
    -o-transition: all 350ms;
    transition: all 350ms;
}

.checkout-button {
    background: #222831 !important;
    color: #ffffff !important;
    height: 45px !important;
    padding: 25px 0 0 0 !important;
    border-radius: 10px !important;
    font-size: 20px !important;
}

.checkout-button:hover {
    background: #F59B0A !important;
    color: #222831 !important;
}

.woocommerce #payment #place_order,
.woocommerce-page #payment #place_order {
    float: right;
    margin-right: -20px;
}

#place_order {
    width: 350px;
    height: 66px;
    padding: 0 0px;
    position: relative;
    top: 24px;
}

a.confignextBTN:hover {
    color: #ffffff;
    background: #222831;
    border-color: #222831;
}

a.configprevBTN,
.woocommerce .button {
    font-size: 20px;
    color: #222831;
    background: #ffffff;
    border: 3px solid #222831;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    width: 34%;
    text-align: center;
    border-radius: 10px;
    display: block;
    height: 45px;
    float: left;
    padding: 15px 0 0 0;
    margin: 58px 0px -150px -40px;
    -webkit-transition: all 350ms;
    -moz-transition: all 350ms;
    -o-transition: all 350ms;
    transition: all 350ms;
}

/*.wpml-ls-display:active {
color: #ffffff;
background-color: #222831;
}*/

.woocommerce-checkout .woocommerce ul#shipping_method li input,
.page-template-konfigurator_checkout .woocommerce ul#shipping_method li input {
    margin: -4px .4375em 0 0;
    vertical-align: middle;
}

.woocommerce-cart .woocommerce ul#shipping_method li input {
    margin: -3px .4375em 0 0;
    vertical-align: middle;
}

.wc-block-components-product-metadata {
    display: none;
}

.wc-block-components-order-summary-item__description {
    padding-top: 40px !important;
}
.wc-block-cart-item__prices {
    padding-top: 25px !important;
    position: absolute;
}
.wc-block-components-order-summary .wc-block-components-order-summary-item__total-price {
    padding-top: 57px !important;
}


.woocommerce .shipping-calculator-form .button {
    width: auto;
}

.woocommerce .button.cn-button {
    width: auto;
    height: auto;
    float: none;
    padding: inherit;
    font-family: sans-serif;
    line-height: 18px;
    padding: 2px 12px;
    background: linear-gradient(to bottom, #FEFEFE, #F4F4F4) repeat scroll 0 0 #F3F3F3;
    border-color: #BBB;
    color: #333;
    text-shadow: 0 1px 0 #FFF;
    -moz-box-sizing: border-box;
    border-radius: 10px;
    border-style: solid;
    border-width: 1px;
    cursor: pointer;
    display: inline-block;
    font-size: 12px;
    font-style: normal;
    text-decoration: none;
    white-space: nowrap;
    outline: none;
}

.checkout #customer_details .col-2 {
    display: none
}

.checkout #customer_details .col-1 {
    width: 100%;
}

a.configprevBTN:hover,
.single .woocommerce .button:hover {
    background: #222831;
    color: #ffffff;
}

.single .woocommerce .button {
    font-size: 17px !important;
    font-weight: 400 !important;
    color: #222831 !important;
    background: #ffffff !important;
    border: 3px solid #222831 !important;
    font-family: IsidoraSans-Bold !important;
    text-align: center !important;
    border-radius: 10px !important;
    display: block !important;
}

.single .woocommerce .products .button {
    font-size: 15px !important;
    width: auto;
    height: 24px;
}

.single .woocommerce .woocommerce-message .button.wc-forward {
    padding: .618em 1em;
    height: auto;
    width: auto;
    background: none !important;
    border-color: #B69D78 !important;
    color: #B69D78 !important;
}

.single .woocommerce .woocommerce-message .button.wc-forward:hover {
    background: #B69D78 !important;
    color: #ffffff !important;
}

.woocommerce-message::before {
    color: #B69D78 !important;
}

.woocommerce-info::before {
    color: #B69D78 !important;
}

.woocommerce-info {
    border-top-color: #B69D78 !important;
}

.woocommerce-message {
    background: #ffffff !important;
    border-top-color: #B69D78 !important;
}

.bike-delivery-hint {
    background: #ffffff;
    border-top: 3px solid #B69D78;
    padding: 1em 1.5em;
    margin: 0 0 1em 0;
    font-family: 'Montserrat', sans-serif;
    font-size: 14px;
    color: #222831;
    box-shadow: 0 1px 4px rgba(0,0,0,0.08);
}

.woocommerce .return-to-shop .button,
.woocommerce .return-to-shop .button:hover {
    margin: 0px;
    padding: 0px;
    background: none;
    text-align: left;
}

.single .woocommerce .button:hover {
    background: #222831 !important;
    color: #ffffff !important;
}

.single .woocommerce .quantity .qty {
    width: 3.631em;
    text-align: center;
    padding: 13px 10px 13px 10px;
    margin: 0 10px 0 0;
}

.single .woocommerce div.product .woocommerce-tabs ul.tabs::before,
.single .woocommerce div.product .woocommerce-tabs ul.tabs li::after,
.single .woocommerce div.product .woocommerce-tabs ul.tabs li::after,
.single .woocommerce div.product .woocommerce-tabs ul.tabs li::before {
    display: none;
}

/* Tab-Navigation ausblenden (alte „Beschreibung“-Überschrift in Kleinbuchstaben, fett, grau unterstrichen) */
.single .woocommerce div.product .woocommerce-tabs ul.tabs {
    display: none !important;
    padding: 0;
    margin: 0;
}

.single .woocommerce div.product .woocommerce-tabs ul.tabs li {
    background-color: transparent !important;
    border: 0px !important;
    border-bottom: 3px solid #eeeeee !important;
    padding: 0px;
    margin: 0px 20px 20px 0;
    font-size: 22px;
}

.single .woocommerce div.product .woocommerce-tabs ul.tabs li:hover {
    border-bottom: 3px solid #222831 !important;
}

.single .woocommerce div.product .woocommerce-tabs ul.tabs li.active {
    border-bottom: 3px solid #222831 !important;
}

.single .woocommerce div.product .woocommerce-tabs ul.tabs li.active a {
    cursor: default;
}

/* Überschrift „Beschreibung“: Uppercase, Montserrat Light, goldene Trennlinie darunter */
.woocommerce .woocommerce-tabs h2, 
div.wc-block-components-checkout-step__heading-container div.wc-block-components-checkout-step__heading h2,
div.wp-block-woocommerce-checkout.alignwide.wc-block-checkout div.wc-block-components-sidebar-layout.wc-block-checkout.is-large div.wc-block-components-sidebar.wc-block-checkout__sidebar.wp-block-woocommerce-checkout-totals-block.is-large div.wp-block-woocommerce-checkout-order-summary-block div.wc-block-components-checkout-order-summary__title p.wc-block-components-checkout-order-summary__title-text,
div.wp-block-woocommerce-cart.alignwide div.wc-block-components-sidebar-layout.wc-block-cart.wp-block-woocommerce-filled-cart-block.is-large div.wc-block-components-sidebar.wc-block-cart__sidebar.wp-block-woocommerce-cart-totals-block div.wp-block-woocommerce-cart-order-summary-block h2 
{
    display: block !important;
    font-family: 'Montserrat', sans-serif !important;
    font-size: 1.5rem;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    text-decoration: none !important;
    margin: 0 0 0.5em 0;
    padding-bottom: 0.5em;
    border-bottom: 1px solid #B69D78;
    color: #222831;
}

.wp-block-woocommerce-checkout-order-summary-block {
background-color: white;
  margin: -15px;
  padding: 15px;
}

@media (max-width: 1499px) {
    .wc-block-checkout .wc-block-components-sidebar-layout.wc-block-checkout,
    .wp-block-woocommerce-checkout .wc-block-components-sidebar-layout.wc-block-checkout {
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
    }

    .wc-block-checkout .wc-block-components-sidebar-layout.wc-block-checkout > .wc-block-components-sidebar.wc-block-checkout__sidebar.wp-block-woocommerce-checkout-totals-block{
        order: -1 !important;
        width: 100% !important;
        max-width: 100% !important;
        margin-bottom: 2rem !important;
        position: static !important;
        top: auto !important;
        bottom: auto !important;
        padding-left: 15px;
        padding-right: 15px;
    }

    .wc-block-components-sidebar-layout .wc-block-components-main {

        padding-right: 0 !important;
    }

    .wc-block-checkout .wc-block-components-sidebar-layout.wc-block-checkout > .wc-block-components-main.wc-block-checkout__main,
    .wp-block-woocommerce-checkout .wc-block-components-sidebar-layout.wc-block-checkout > .wc-block-components-main.wc-block-checkout__main {
        width: 100% !important;
        max-width: 100% !important;
    }
}

div.contentpart.contentpartPage div.contentpartwrapper div.contentpartCenter div.contentpartInner h3,
div.entry-content div.wp-block-woocommerce-checkout.alignwide.wc-block-checkout div.wc-block-components-sidebar-layout.wc-block-checkout.is-large div.wc-block-components-sidebar.wc-block-checkout__sidebar.wp-block-woocommerce-checkout-totals-block.is-large div.wp-block-woocommerce-checkout-order-summary-block div.wc-block-components-totals-wrapper div.wc-block-components-totals-item.wc-block-components-totals-footer-item span.wc-block-components-totals-item__label {
    display: block !important;
    font-family: 'Montserrat', sans-serif !important;
    font-size: 1rem;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    text-decoration: none !important;
    margin: 0 0 0.5em 0;
    padding-bottom: -0.5em;
    color: #222831;
}

div.pagewrapper.eco_it_gmbh div.contentpart.contentpartPage div.contentpartwrapper div.contentpartCenter div.contentpartInner article#post-3214.post-3214.page.type-page.status-publish.hentry div.entry-content div.wp-block-woocommerce-checkout.alignwide.wc-block-checkout div.wc-block-components-sidebar-layout.wc-block-checkout.is-large div.wc-block-components-sidebar.wc-block-checkout__sidebar.wp-block-woocommerce-checkout-totals-block.is-large div.wp-block-woocommerce-checkout-order-summary-block div.wc-block-components-totals-wrapper div.wc-block-components-totals-item.wc-block-components-totals-footer-item span.wc-block-components-totals-item__label{
}

article#post-3214.post-3214.page.type-page.status-publish.hentry div.entry-content div.wp-block-woocommerce-checkout.alignwide.wc-block-checkout div.wc-block-components-sidebar-layout.wc-block-checkout.is-large div.wc-block-components-sidebar.wc-block-checkout__sidebar.wp-block-woocommerce-checkout-totals-block.is-large div.wp-block-woocommerce-checkout-order-summary-block div.wp-block-woocommerce-checkout-order-summary-cart-items-block.wc-block-components-totals-wrapper div.wc-block-components-order-summary.is-large div.wc-block-components-order-summary__content div.wc-block-components-order-summary-item div.wc-block-components-order-summary-item__image div.wc-block-components-order-summary-item__quantity{
    transform: translate(-50%,100%);
}

.woocommerce .woocommerce-tabs .panel {
    margin-top: 0;
}

.single .woocommerce table.shop_attributes {
    border: 0px !important;
    font-size: 15px;
}

.single .woocommerce table.shop_attributes tr:nth-child(2n) td,
.single .woocommerce table.shop_attributes tr:nth-child(2n) th {
    background: none;
    margin: 0px;
    padding: 0px;
}

.single .woocommerce table.shop_attributes th {
    text-align: left;
    padding: 0;
}

.woocommerce .woocommerce-tabs {
    font-size: 17px;
}

.single .woocommerce div.product .woocommerce-tabs ul.tabs li a {
    padding: 0px !important;
}

.woocommerce-product-gallery__trigger {
    display: none;
}

.product_meta {
    font-size: 14px;
}

.page-template-konfigurator_step2_praegung a.configprevBTN {
    margin: 58px 0px -150px 0px;
}

.page-template-konfigurator_step2_praegung a.confignextBTN {
    margin: 58px -0px -150px 0
}

.summaryPartRowGesamtpreis {
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    border-top: 2px solid #222831;
    margin: 10px 0 0 0;
    padding: 10px 0 0 0;
}
.contentpartKonfigurator .summaryPartRowGesamtpreis {
    font-family: 'Montserrat', sans-serif !important;
    font-size: 16px;
}

.mwstinfo {
    display: block;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    font-size: 13px;
}
.contentpartKonfigurator .mwstinfo {
    font-family: 'Montserrat', sans-serif !important;
    font-size: 14px;
}

.summeryRow {
    padding-left: 15px;
    font-size: 16px;
}

.summeryRow::before {
    content: "-";
    position: absolute;
    left: 0px;
}

.summaryPartRowLieferzeit .summeryRow {
    padding-left: 0px;
}

.summaryPartRowLieferzeit .summeryRow::before {
    display: none;
}

.summaryPartRowHL {
    font-size: 18px;
}
.contentpartKonfigurator .summaryPartRowHL {
    font-family: 'Montserrat', sans-serif !important;
    font-size: 16px;
}

.summaryPartRowTrenner {
    position: absolute;
    width: 112%;
    height: 1px;
    background: #D9D9D9;
    margin: -20px 0 0 0;
    left: -6%;
}

.summaryPartRowZusammenfassung {
    margin: 40px 0 0 0;
}
#preisbox .summaryPartRowZusammenfassung .summaryPartRowHL {
    text-transform: uppercase;
}

/* Lieferkosten-Zeile innerhalb der Zusammenfassung */
.summaryPartRowZusammenfassung .summaryPartRowShipment {
    margin-top: 12px;
    clear: both;
}

.summaryPartRowLieferzeit {
    margin: 40px 0 0 0;
}

/* Always show lieferzeit_alt for bike configurator */
.contentpartKonfigurator .summaryPartRowLieferzeit .shippingtimeAlt,
.page-template-konfigurator-bike .summaryPartRowLieferzeit .shippingtimeAlt,
.bikeconfig .summaryPartRowLieferzeit .shippingtimeAlt {
    display: block !important;
}

.Preisinfobox {
    position: absolute;
    top: -9999999999px;
    z-index: -1;
    opacity: 0;
    -webkit-transition: opacity 350ms;
    -moz-transition: opacity 350ms;
    -o-transition: opacity 350ms;
    transition: opacity 350ms;
}

.preisinfoboxOn .Preisbox {
    display: none;
}

.preisinfoboxOn .Preisinfobox {
    position: relative;
    top: inherit;
    z-index: 2;
    opacity: 1;
}

.Preisinfobox .summaryPartTop {
    background: #ffffff;
    border: 1px solid #D9D9D9;
    border-bottom: 1px solid #ffffff;
}

.Preisinfobox .summaryPartContent {
    padding: 20px 0;
    background: #ffffff;
    float: left;
    width: 100%;
    border: 1px solid #D9D9D9;
    border-top: 1px solid #ffffff;
    border-radius: 0px 0px 23px 23px;
}

.closeInfoboxBTN {
    color: #222831;
    font-size: 14px;
    display: block;
    text-align: right;
    cursor: pointer;
}

.closeInfoboxBTN:hover .imgx {
    opacity: 0.6;
}

.imgx {
    display: block;
    float: right;
    margin: 0 0 0 10px;
}

.Preisinfobox .Infotextbox {
    position: relative;
    width: 100%;
    float: left;
    height: 30px;
    min-height: 0px;
    overflow: hidden;
}

.preisinfoboxOn .Preisinfobox .Infotextbox {
    position: relative;
    width: 100%;
    float: left;
    min-height: 450px;
    height: auto;
    -webkit-transition: all 350ms;
    -moz-transition: all 350ms;
    -o-transition: all 350ms;
    transition: all 350ms;
}

.infotext {
    display: none;
}

.contentpartHinweis .infotext {
    display: block;
}

.infohl {
    font-size: 20px;
    line-height: 25px;
}

.infodesc {
    font-size: 16px;
    line-height: 26px;
}

.selectRowInputs.selectRowFile {
    width: 100%;
    float: left;
    margin: 0 0 20px 0;
    position: relative;
}

.fileinfo {
    display: block;
    width: 80%;
    float: left;
    font-size: 16px;
    line-height: 22px;
}

.selectRowInfosUpload {
    float: right;
    width: auto;
    margin: 0 0 0 2%;
}

.fileinput {
    width: 100%;
    float: left;
    height: 21px;
    text-align: center;
    font-size: 15px;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    text-align: left;
    font-style: italic;
    position: absolute;
    top: 9px;
    appearance: none;
    -webkit-appearance: none;
}

.fileuploadinput {
    position: relative;
    overflow: hidden;
    border: 1px solid #D9D9D9;
    width: 65%;
    float: left;
    height: 37px;
    border-radius: 16px;
}

.fileuploadBTN {
    cursor: pointer;
    font-size: 20px;
    color: #222831;
    background: #F59B0A;
    border: 3px solid #222831;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    width: 22%;
    text-align: center;
    border-radius: 24px;
    height: 31px;
    float: left;
    padding: 2px 0px 0 0;
    -webkit-transition: all 350ms;
    -moz-transition: all 350ms;
    -o-transition: all 350ms;
    transition: all 350ms;
    position: relative;
    left: 0px;
    margin: 0 2% 0 0;
}

.countselect_manuell {
    float: left;
    height: 33px;
    width: 20%;
    text-align: center;
    border-radius: 16px;
    border: 1px solid #222831;
    font-size: 19px;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    margin: 0 0 0 0%;
    padding: 4px 0 0 0;
}

.bike_cbSites {
    display: none;
    float: left;
    width: 100%;
    margin: 30px 0 0 0;
}

.bikecolor_cb .bike_cbSites {
    display: block;
}

.farbsitelabel {
    max-width: 40%;
    display: block;
    float: left;
    margin: 4px 5% 0 0;
    font-size: 15px;
}

#farbikesites {
    text-align: left;
    width: 55.5%;
    padding: 0 0 0 2%;
}

::placeholder {
    font-size: 15px;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
}

:-ms-input-placeholder {
    font-size: 15px;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
}

::-ms-input-placeholder {
    font-size: 15px;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
}

.selectPartContentLeft {
    float: left;
    width: 57%;
    padding: 20px 3% 0 5%;
}

.selectPartContentRight {
    float: left;
    width: 35%
}

.selectPartContentLeft .selectRowLabel {
    width: 100%;
}

.contentpartKonfiguratorImageparts .selectPartContent {
    float: left;
    width: 100%;
    margin: 0px 0 0 0;
    position: relative;
}

.contentpartKonfiguratorImageparts .selectPart {
    padding: 0px 0;
}

.bindungsrow {
    width: 100%;
    float: left;
    margin: 0px;
    padding: 0px;
    border-bottom: 1px solid #D9D9D9;
    position: relative;
}

.bindungsrow3 {
    border-bottom: 0px solid #D9D9D9;
}

.bindungsrow .selectPartContentRight {
    overflow: hidden;
    position: relative;
}

.bindungsrow1 .selectPartContentRight {
    border-top-right-radius: 23px
}

.bindungsrow3 .selectPartContentRight {
    border-bottom-right-radius: 23px
}

.configorimage {
    height: 380px;
    display: block;
    width: auto;
    float: left;
    max-width: inherit;
}

.rowlabletextsubtext {
    float: left;
    font-size: 16px;
    line-height: 20px;
    margin: 20px 0 30px 0;
}

.page-template-konfigurator_step2 a.configprevBTN {
    margin: 58px 0px -150px 0px;
}

.page-template-konfigurator_step2 a.confignextBTN {
    margin: 58px 0px -150px 0;
}

.bindungsrow .selectRowInfos {
    float: right;
    width: 20px;
    font-size: 16px;
    line-height: 18px;
    margin: 20px 30px 0 0;
}

.activelayerRight {
    opacity: 0;
    position: absolute;
    z-index: -1;
    background: #ffffff;
    left: 0px;
    top: 0px;
    width: 0%;
    height: 0%;
    -webkit-transition: opacity 350ms;
    -moz-transition: opacity 350ms;
    -o-transition: opacity 350ms;
    transition: opacity 350ms;
}

.bindungsrowActive .activelayerRight {
    opacity: 1;
    width: 100%;
    height: 100%;
    z-index: 10;
}

.btnhardcovernext {
    text-decoration: underline;
    cursor: pointer
}

.roundCheckicon {
    display: block;
    position: relative;
    top: 50%;
    left: 50%;
    width: 60px;
    margin: -30px 0 0 -30px;
    -webkit-transition: all 450ms;
    -moz-transition: all 450ms;
    -o-transition: all 450ms;
    transition: all 450ms;
}

.bindungsrowActive .roundCheckicon {
    width: 100px;
    margin: -50px 0 0 -50px;
}

.bindungsrowActive {
    border: 4px solid #F59B0A;
    margin-left: -4px;
    margin-top: -4px;
    -webkit-box-shadow: 0px 0px 23px 0px rgba(50, 50, 50, 0.15);
    -moz-box-shadow: 0px 0px 23px 0px rgba(50, 50, 50, 0.15);
    box-shadow: 0px 0px 23px 0px rgba(50, 50, 50, 0.15);
    z-index: 10;
}

.bindungsrowActive {
    border: 4px solid #F59B0A;
    margin-left: -4px;
}

.bindungsrow1.bindungsrowActive {
    border-top-left-radius: 23px;
    border-top-right-radius: 23px;
}

.bindungsrow3.bindungsrowActive {
    border-bottom-left-radius: 23px;
    border-bottom-right-radius: 23px;
}

.roundnextstepInfo {
    color: #F59B0A;
    display: block;
    text-align: center;
    line-height: 20px;
    cursor: pointer;
    position: relative;
    top: 60%;
}

.roundCheckicon.roundnextstep {
    cursor: pointer;
    margin-top: -60px;
}

.safari .roundCheckicon.roundnextstep,
.chrome .roundCheckicon.roundnextstep {
    margin-top: 69px;
}

.safari .bindungsrowActive .roundCheckicon,
.chrome .bindungsrowActive .roundCheckicon {
    margin-bottom: 10px;
}

.roundCheckicon.roundnextstep:hover {
    opacity: 0.6;
}

.bindungsrow1 .configorimage {
    cursor: pointer;
}

.praegungsrow {
    padding-bottom: 50px;
}

.praegungsrow .selectPartContentLeft {
    width: 90%;
}

.praegungsrow .selectRowInputs {
    width: 90%;
}

.praegungsrow .countselector50 .countselect {
    width: 18%;
    margin-bottom: -1px;
}

.praegungsrow .countselector50 #EinbandTyp_Elefantenpapier {
    width: 22.5%;
}

.lang_en .praegungsrow .countselector50 #EinbandTyp_Elefantenpapier {
    width: 33%;
}

.praegungsrow .countselector50 #EinbandTyp_Kunstleder {
    width: 16%;
}

.lang_en .praegungsrow .countselector50 #EinbandTyp_Kunstleder {
    width: 35%;
    border-radius: 0px 16px 16px 0px;
}

.praegungsrow .countselector50 #EinbandTyp_Bibliotheksgewebe {
    width: 25%;
}

.lang_en .praegungsrow .countselector50 #EinbandTyp_Bibliotheksgewebe {
    border-radius: 16px 0px 0px 16px;
    width: 33%;
}

.praegungsrow .countselector50 #EinbandTyp_Specials {
    width: 13%;
}

.lang_en .praegungsrow .countselector50 #EinbandTyp_Specials {
    width: 33%;
}

.praegungsrow .countselector50 .PraegungsTypSelect {
    width: 32%;
}

.coloritem {
    border: 4px solid #ffffff;
    width: 20%;
    float: left;
    height: 80px;
    overflow: hidden;
    margin: 20px 0 -20px 0;
    cursor: pointer;
    position: relative;
}


.coloritemOn,
.transALL .colorname:hover,
.coloritem:hover {
    border: 4px solid #F59B0A;
    background-color: #F59B0A;
    color: #222831;
}
 

.colorbox {
    display: none;
}

.colorbox {
    -webkit-transition: height 350ms;
    -moz-transition: height 350ms;
    -o-transition: height 350ms;
    transition: height 350ms;
}

.colorname {
    display: block;
    position: absolute;
    left: 0px;
    bottom: 0px;
    background: #222831;
    color: #ffffff;
    font-size: 12px;
    text-align: center;
    width: 100%;
    line-height: 19px;
    -webkit-transition: opacity 350ms;
    -moz-transition: opacity 350ms;
    -o-transition: opacity 350ms;
    transition: opacity 350ms;
}

.bindungsrow .rowlabletext {
    width: 100%;
    float: left;
    margin: 20px 0 20px 0;
}

.bookprev {
    position: relative;
    width: 500px;
    float: left;
    min-height: 310px;
}

.bookprevimg {
    position: relative;
    left: 0px;
    top: 0px;
    width: 100%;
    height: auto;
    display: block;
    float: left;
}

.booktext {
    position: absolute;
    color: #000000;
    z-index: 99;
    font-family: isidoraSans-Medium, sans-serif;
    font-size: 14px;
}

.booktext.titel-bookfront {
    width: 214px;
    text-align: center;
    left: 50%;
    margin: -90px 0 0 27px;
    top: 50%;
    font-size: 16px;
}

.name-bookback {
    left: 50%;
    margin: 0 0 0 -84px;
    top: inherit;
    width: 166px;
    height: 30px;
    -moz-transform: rotate(270deg);
    -webkit-transform: rotate(270deg);
    -o-transform: rotate(270deg);
    -ms-transform: rotate(270deg);
    transform: rotate(270deg);
    font-size: 11px;
    text-align: left;
    bottom: 78px;
}

.titel-bookback {
    left: 50%;
    margin: 0 0 0 -70px;
    top: 65px;
    width: 180px;
    height: 69px;
    -moz-transform: rotate(270deg);
    -webkit-transform: rotate(270deg);
    -o-transform: rotate(270deg);
    -ms-transform: rotate(270deg);
    transform: rotate(270deg);
    font-size: 11px;
    text-align: right;
}

.praegungsbox .selectRow {
    width: 100%;
    float: left;
    position: relative;
    margin: 20px 0 0px 0;
}

.selectPartContentLeft .praegungsbox .selectRowLabel {
    width: 20%;
    float: left;
}

.selectRowLabel.selectRowLabelLogoposition {
    margin: 19px 3% 0px 0;
}

.person-details .selectRowLabel, .versand-details .selectRowLabel{
    margin-top: 10px;
}
/* Schritt 3: Land-Label in Großbuchstaben, Länderauswahl nicht fett */
.bike-country-row .selectRowLabel {
    text-transform: uppercase;
}
#land,
#land option {
}

/* Add space above the first personal details field (Vorname) */
.personalDetailsContent .person-details:first-child {
    margin-top: 30px !important;
}

.radiolabel.Logopositionradiolabel {
    margin: 5px 0 0 0;
}

.praegungsrow .praegungsbox .selectRowInputs {
    margin: 0px 0 0 0;
    width: 65%;
}

.praegungsrow .praegungsbox .selectRowInputs input,
.praegungsrow .praegungsbox .selectRowInputs select {
    float: left;
    height: 33px;
    width: 95%;
    text-align: left;
    border-radius: 16px;
    border: 1px solid #D9D9D9;
    font-size: 15px;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    margin: 0 0 0 0%;
    padding: 4px 0 0 5%;
}

.praegungsrow .praegungsbox .selectRowInputs select {
    -webkit-appearance: none;
    -moz-appearance: none;
    text-indent: 1px;
    text-overflow: '';
    height: 37px;
    width: 100%;
}

.praegungsrow .countselector.countselector50 {
    width: 100%;
    position: relative;
}

.selctinputicon {
    display: block;
    position: absolute;
    right: 3%;
    cursor: pointer;
    z-index: 10;
    padding: 11px;
    text-align: center;
    display: block;
    top: 5px;
    pointer-events: none;
}

.praegungsrow .praegungsbox .selectRowInfos {
    margin: 0px 30px 0 0;
}

.selectRowInfos.selectRowInfosLogo {
    position: relative;
    top: -33px;
}

input[type="text"]:disabled {
    background: #ffffff;
    background-color: #ffffff;
    color: #cccccc;
    cursor: not-allowed;
}

.praegungsbox {
    display: none
}

.booktext.titel-bookfront.zeile2 {
    margin-top: -70px;
}

.booktext.titel-bookfront.zeile3 {
    margin-top: -50px;
}

.booktext.titel-bookfront.zeile4 {
    margin-top: -30px;
}

.booktext.titel-bookfront.zeile5 {
    margin-top: -10px;
}

.booktext.titel-bookfront.zeile6 {
    margin-top: 10px;
}

.booktext.titel-bookfront.zeile7 {
    margin-top: 30px;
}

.booktext.name-bookback.name-bookback-Center {
    bottom: 193px;
}

.booklogoicon {
    display: none;
    position: absolute;
    z-index: 99;
    right: 0px;
    width: 50px;
    top: 10px;
    right: 10px;
}

#sonderLogo-fh-joanneum .fh-joanneum {
    display: block;
}

#sonderLogo-uni-graz .uni-graz {
    display: block;
}

#sonderLogo-tu-graz .tu-graz {
    display: block;
}

#sonderLogo-NAWI-graz .NAWI-graz {
    display: block;
}

img.booklogoicon2 {
    left: 50%;
    margin: 0 0 0 35px;
}

img.booklogoicon1.booklogoicon1-topleft,
img.booklogoicon2.booklogoicon2-topleft {
    left: 50%;
    margin: 0 0 0 35px;
}

img.booklogoicon1.booklogoicon1-topright,
img.booklogoicon2.booklogoicon2-topright {
    right: 10px;
    left: inherit;
}

img.booklogoicon1-bottomcenter,
img.booklogoicon2-bottomcenter {
    left: 50%;
    margin: 0 0 0 105px;
    bottom: 11px;
    top: inherit;
}

img.sonderLogo2-fh-joanneum,
img.sonderLogo2-NAWI-graz,
img.sonderLogo2-uni-graz,
img.sonderLogo2-tu-graz,
img.sonderLogo2-kein {
    display: none !important;
}

.sonderLogo2-uni-graz img.uni-graz2,
.sonderLogo2-tu-graz img.tu-graz2,
.sonderLogo2-fh-joanneum img.fh-joanneum2,
.sonderLogo2-NAWI-graz img.NAWI-graz2 {
    display: block !important;
}

.InputDeActive {
    cursor: not-allowed;
    opacity: 0.3;
    pointer-events: none;
}

.nextBTNdeactive {
    opacity: 0.6;
    pointer-events: none;
    cursor: default;
}

.checkoutpart h3 {
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    font-size: 25px;
}
/* Checkout: Rechnungsadresse/Lieferadresse – Montserrat Light (überschreibt .checkoutpart h3) */
.checkoutpart .woocommerce-billing-fields h3,
.checkoutpart .woocommerce-shipping-fields h3 {
    font-family: 'Montserrat', sans-serif !important;
    font-size: 16px !important;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: #222831;
}
/* Bestellübersicht-Überschrift: Uppercase, Montserrat Light (überschreibt .checkoutpart h3) */
.checkoutpart #order_review_heading {
    font-family: 'Montserrat', sans-serif !important;
    font-size: 16px !important;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: #222831;
}

.checkoutpart .woocommerce form .form-row label,
.woocommerce-page form .form-row label {
    font-family: 'Montserrat', sans-serif !important;
    font-size: 16px !important;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: #222831;
    display: block;
    float: left;
    width: 30%;
    line-height: 37px;
}

.checkoutpart .woocommerce form .form-row .wc-gzd-checkbox-placeholder-legal label {
    font-family: 'Montserrat', sans-serif !important;
    font-size: 16px !important;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    display: block;
    float: left;
    width: 100% !important;
    line-height: 25px;
}
/* Zahlungsoptionen: Montserrat Light */
.checkoutpart #payment .wc_payment_methods label,
.checkoutpart #payment .payment_methods label,
.checkoutpart #payment .wc_payment_methods > li > label,
.checkoutpart #payment .payment_box {
    font-family: 'Montserrat', sans-serif !important;
    font-size: 16px !important;
    color: #222831;
}

.woocommerce-invalid #terms {
    outline: 0px solid red !important;
    outline-offset: 0 !important;
    outline-bottom: 2px solid red !important;
}

.woocommerce-terms-and-conditions-link {
    text-decoration: underline !important;
}

.checkoutpart .woocommerce-input-wrapper {
    width: 65%;
    float: left;
    display: block;
}

.checkoutpart .woocommerce form .form-row {
    padding: 3px;
    margin: 0 0 6px;
    width: 100%;
    float: left;
    position: relative;
}

.checkoutpart .optional {
    display: none
}

.checkoutpart #order_review_heading {
    display: block;
    float: left;
    width: 100%;
    margin: 30px 0 10px 0;
}

.checkoutpart select {
    -webkit-appearance: none;
    -moz-appearance: none;
    float: left;
    height: 33px;
    width: 95%;
    text-align: left;
    border-radius: 16px;
    border: 1px solid #D9D9D9;
    font-size: 16px;
    font-family: 'Montserrat', sans-serif !important;
    margin: 0 0 0 0%;
    padding: 4px 0 0 5%;
}

.checkoutpart input,
.checkoutpart .select2-container--default .select2-selection--single {
    height: 33px;
    text-align: left;
    border-radius: 16px;
    border: 1px solid #D9D9D9;
    font-size: 16px;
    font-family: 'Montserrat', sans-serif !important;
    margin: 0 0 0 0%;
    padding: 0 0 0 5%;
}

.checkoutpart .woocommerce-billing-fields input {
    float: left;
    width: 95%;
}

.checkoutpart .woocommerce form .form-row .required {
    color: #c0260b;
}

/* Variable-Auswahl: als Dropdown erkennbar – Pfeil, Hover, Klick-Hinweis */
.single-product .woocommerce div.product form.cart .variations select {
    -moz-appearance: none;
    -webkit-appearance: none;
    appearance: none;
    float: left !important;
    height: 33px;
    min-width: inherit !important;
    border: 1px solid #222831 !important;
    text-align: center !important;
    text-align-last: center;
    border-radius: 10px !important;
    font-size: 19px;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    margin: 0 !important;
    padding: 5px 36px 5px 12px;
    width: auto;
    min-width: 140px;
    background-color: #ffffff !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23222831' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 10px center;
    background-size: 16px;
    color: #222831 !important;
    cursor: pointer;
    transition: border-color 0.2s ease, box-shadow 0.2s ease;
}
.single-product .woocommerce div.product form.cart .variations select:hover {
    border-color: #16242F !important;
    box-shadow: 0 0 0 1px #16242F;
}
.single-product .woocommerce div.product form.cart .variations select:focus {
    outline: none;
    border-color: #B69D78 !important;
    box-shadow: 0 0 0 2px rgba(182, 157, 120, 0.35);
}

/* Variable Produkte: Optionen im nativen Dropdown (S, M, L …) – Montserrat Light */
.single-product .woocommerce div.product form.cart .variations select option {
    font-family: 'Montserrat', sans-serif !important;
}

/* Variable Produkte: Select2 – geschlossenes Feld und angezeigter Text (Montserrat Light) */
.single-product .woocommerce div.product form.cart .variations .select2-container--default .select2-selection--single,
.single-product .woocommerce div.product form.cart .variations .select2-container .select2-selection__rendered {
    font-family: 'Montserrat', sans-serif !important;
    font-size: 16px !important;
    color: #222831 !important;
    text-align: center !important;
}
.single-product .woocommerce div.product form.cart .variations .select2-container--default .select2-selection--single {
    border: 1px solid #222831 !important;
    border-radius: 10px !important;
}

/* Select2 geöffnete Liste: Optionen (z. B. S, M, L) – Montserrat Light, zentriert */
.select2-container--default .select2-results__option,
.select2-results__option {
    font-family: 'Montserrat', sans-serif !important;
    font-size: 16px !important;
    color: #222831 !important;
    text-align: center !important;
}
.select2-container--default .select2-results__option--highlighted[aria-selected] {
}
.select2-results {
    text-align: center !important;
}

.single-product .woocommerce div.product .quantity .qty {
    font-size: 16px;
    font-family: 'Montserrat', sans-serif !important;
    height: 33px;
    padding: 5px 0 1px 12px;
    color: #222831 !important;
    background: #ffffff !important;
    border: 1px solid #222831 !important;
    text-align: center !important;
    border-radius: 10px !important;
}

.single-product .woocommerce div.product form.cart .variations td.label {
    padding: 5px 10px 5px 0;
}
/* Variable Produkte: Preis oben links, darunter Menge rechtsbündig, darunter Variablenauswahl rechtsbündig (Label z. B. „Farbe“ links, Dropdown rechts), Buttons volle Breite */
.single-product .woocommerce div.product form.variations_form.cart .variations,
.single-product .woocommerce div.product form.variations_form.cart .single_variation_wrap {
    flex: 0 0 100%;
    width: 100%;
}
.single-product .woocommerce div.product form.variations_form.cart .single_variation_wrap {
    display: contents;
}
/* Preis linksbündig unter Kurzbeschreibung */
.single-product .woocommerce div.product form.variations_form.cart .woocommerce-variation {
    order: -6;
    flex: 0 0 100%;
    width: 100%;
    margin-bottom: 0.75em;
    text-align: left;
}
/* Add-to-cart-Bereich auflösen, damit Menge, Variablen und Buttons im Form-Flex einzeln angeordnet werden */
.single-product .woocommerce div.product form.variations_form.cart .woocommerce-variation-add-to-cart {
    display: contents;
}
/* Menge unter Preis, rechtsbündig */
.single-product .woocommerce div.product form.variations_form.cart div.quantity {
    order: -5;
    flex: 0 0 100%;
    width: 100%;
    margin: 0 0 0.5em 0;
    justify-content: flex-end;
}
/* Variablenauswahl unter Menge, rechtsbündig: ganz rechts z. B. Farbauswahl-Dropdown, direkt links daneben „Farbe“ */
.single-product .woocommerce div.product form.variations_form.cart .variations {
    order: -4;
    margin-bottom: 0.5em;
    margin-top: 0;
}
/* Buttons unter Menge und Variablenauswahl */
.single-product .woocommerce div.product form.variations_form.cart .single_add_to_cart_button {
    order: -3;
    flex: 0 0 100%;
    width: 100%;
    margin: 0.75em 0 0 0;
}
.single-product .woocommerce div.product form.variations_form.cart .view-cart-wrap {
    order: -2;
}
.single-product .woocommerce div.product form.variations_form.cart .continue-shopping-wrap {
    order: -1;
}
.single-product .woocommerce div.product form.variations_form.cart .variations table {
    display: block;
    margin-left: auto;
    margin-right: 0;
}
.single-product .woocommerce div.product form.variations_form.cart .variations tbody {
    display: block;
}
.single-product .woocommerce div.product form.variations_form.cart .variations td.value {
    text-align: right;
}
/* Pro Zeile: Label „Farbe“ links neben Dropdown „Farbauswahl“, Zeile rechtsbündig */
.single-product .woocommerce div.product form.variations_form.cart .variations tr {
    display: flex;
    align-items: center;
    gap: 12px;
    flex-direction: row;
    justify-content: flex-end;
    margin-bottom: 0.5em;
}
.single-product .woocommerce div.product form.variations_form.cart .variations tr:last-child {
    margin-bottom: 0;
}
.single-product .woocommerce div.product form.variations_form.cart .variations td.label {
    font-size: 16px;
    letter-spacing: 0.06em;
    padding: 0;
}
.single-product .woocommerce div.product form.variations_form.cart .variations td.value {
    padding: 0;
}
/* Doppelten Preis ausblenden (Theme gibt price-in-form aus, WooCommerce füllt .woocommerce-variation) */
.single-product .woocommerce div.product form.variations_form.cart .woocommerce-variation-add-to-cart .price-in-form {
    display: none !important;
}
.single-product .woocommerce div.product form.cart .woocommerce-variation .price,
.single-product .woocommerce div.product form.cart .woocommerce-variation-price,
.single-product .woocommerce div.product form.cart .woocommerce-variation .woocommerce-variation-price {
    font-family: 'Montserrat', sans-serif !important;
    color: #222831;
    margin: 0;
}
.single-product .woocommerce div.product form.cart .variations td.label,
.single-product .woocommerce div.product form.cart .variations .label label {
    font-family: 'Montserrat', sans-serif !important;
    color: #222831;
}
.single-product .woocommerce div.product form.cart .woocommerce-variation-add-to-cart {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    width: 100%;
    flex: 0 0 100%;
}
.single-product .woocommerce div.product form.cart .woocommerce-variation-add-to-cart .single_add_to_cart_button {
    margin-top: 0.75em;
}
.single-product .woocommerce div.product form.variations_form.cart .view-cart-wrap,
.single-product .woocommerce div.product form.variations_form.cart .continue-shopping-wrap {
    flex: 0 0 100%;
    width: 100%;
    margin: 1em 0 0 0;
}

.single-product .woocommerce div.product form.cart div.quantity {
    float: left;
    margin: 0 67px 0 0;
}

div.pagewrapper.eco_it_gmbh div.contentpart.contentpartPage div.contentpartwrapper div.contentpartCenter div.contentpartInner button.wc-block-components-button,
html.pk-theme.konfiguratorOn.configorOff.druckkonfigurator_anfragepart.lang_de.js.flexbox.canvas.canvastext.webgl.no-touch.geolocation.postmessage.no-websqldatabase.indexeddb.hashchange.history.draganddrop.websockets.rgba.hsla.multiplebgs.backgroundsize.borderimage.borderradius.boxshadow.textshadow.opacity.cssanimations.csscolumns.cssgradients.no-cssreflections.csstransforms.csstransforms3d.csstransitions.fontface.generatedcontent.video.audio.localstorage.sessionstorage.webworkers.no-applicationcache.svg.inlinesvg.smil.svgclippaths.no-hires body.wp-singular.page-template-default.page.page-id-3214.logged-in.wp-theme-wordpress-template.theme-wordpress-template.woocommerce-checkout.woocommerce-page.woocommerce-js.gecko.windows div.pagewrapper.eco_it_gmbh div.contentpart.contentpartPage div.contentpartwrapper div.contentpartCenter div.contentpartInner article#post-3214.post-3214.page.type-page.status-publish.hentry div.entry-content div.wp-block-woocommerce-checkout.alignwide.wc-block-checkout div.wc-block-components-sidebar-layout.wc-block-checkout.is-large div.wc-block-components-main.wc-block-checkout__main.wp-block-woocommerce-checkout-fields-block form.wc-block-components-form.wc-block-checkout__form div.wc-block-checkout__actions.wp-block-woocommerce-checkout-actions-block div.wc-block-checkout__actions_row a.wc-block-components-checkout-return-to-cart-button{
    border-top-right-radius: 10px;
    border-bottom-left-radius: 10px;
    border-bottom-right-radius: 10px;
    background-color: #16242f !important;
    font-style: normal;
    letter-spacing: 5px;
    text-transform: uppercase;
}

html.pk-theme.konfiguratorOn.configorOff.druckkonfigurator_anfragepart.lang_de.js.flexbox.canvas.canvastext.webgl.no-touch.geolocation.postmessage.no-websqldatabase.indexeddb.hashchange.history.draganddrop.websockets.rgba.hsla.multiplebgs.backgroundsize.borderimage.borderradius.boxshadow.textshadow.opacity.cssanimations.csscolumns.cssgradients.no-cssreflections.csstransforms.csstransforms3d.csstransitions.fontface.generatedcontent.video.audio.localstorage.sessionstorage.webworkers.no-applicationcache.svg.inlinesvg.smil.svgclippaths.no-hires body.wp-singular.page-template-default.page.page-id-3214.logged-in.wp-theme-wordpress-template.theme-wordpress-template.woocommerce-checkout.woocommerce-page.woocommerce-js.gecko.windows div.pagewrapper.eco_it_gmbh div.contentpart.contentpartPage div.contentpartwrapper div.contentpartCenter div.contentpartInner article#post-3214.post-3214.page.type-page.status-publish.hentry div.entry-content div.wp-block-woocommerce-checkout.alignwide.wc-block-checkout div.wc-block-components-sidebar-layout.wc-block-checkout.is-large div.wc-block-components-main.wc-block-checkout__main.wp-block-woocommerce-checkout-fields-block form.wc-block-components-form.wc-block-checkout__form div.wc-block-checkout__actions.wp-block-woocommerce-checkout-actions-block div.wc-block-checkout__actions_row a.wc-block-components-checkout-return-to-cart-button{
    min-height: 3em;
    align-items: center;
  display: inline-flex;
  height: auto;
  justify-content: center;
  position: relative;
  text-align: center;
  transition: box-shadow .1s linear;
  color: #fff !important;
  border-radius: 10px;
  box-shadow: none;
  text-decoration: none;
  padding: 7px;
  width: 350px;
}

/* Block-Checkout: Button-Hover wie restliche Seite (heller Glow) */
div.pagewrapper.eco_it_gmbh div.contentpart.contentpartPage div.contentpartwrapper div.contentpartCenter div.contentpartInner button.wc-block-components-button:hover,
html.pk-theme.konfiguratorOn.configorOff.druckkonfigurator_anfragepart.lang_de.js.flexbox.canvas.canvastext.webgl.no-touch.geolocation.postmessage.no-websqldatabase.indexeddb.hashchange.history.draganddrop.websockets.rgba.hsla.multiplebgs.backgroundsize.borderimage.borderradius.boxshadow.textshadow.opacity.cssanimations.csscolumns.cssgradients.no-cssreflections.csstransforms.csstransforms3d.csstransitions.fontface.generatedcontent.video.audio.localstorage.sessionstorage.webworkers.no-applicationcache.svg.inlinesvg.smil.svgclippaths.no-hires body.wp-singular.page-template-default.page.page-id-3214.logged-in.wp-theme-wordpress-template.theme-wordpress-template.woocommerce-checkout.woocommerce-page.woocommerce-js.gecko.windows div.pagewrapper.eco_it_gmbh div.contentpart.contentpartPage div.contentpartwrapper div.contentpartCenter div.contentpartInner article#post-3214.post-3214.page.type-page.status-publish.hentry div.entry-content div.wp-block-woocommerce-checkout.alignwide.wc-block-checkout div.wc-block-components-sidebar-layout.wc-block-checkout.is-large div.wc-block-components-main.wc-block-checkout__main.wp-block-woocommerce-checkout-fields-block form.wc-block-components-form.wc-block-checkout__form div.wc-block-checkout__actions.wp-block-woocommerce-checkout-actions-block div.wc-block-checkout__actions_row a.wc-block-components-checkout-return-to-cart-button:hover {
  box-shadow: 0 0 18px rgba(255, 255, 255, 0.6), 0 0 30px rgba(182, 157, 120, 0.25) !important;
  transition: box-shadow 0.3s ease, background 0.3s ease;
  background: #1e2d38 !important;
}

/* Produktdetail: Preis + Menge in einer Zeile, Buttons darunter volle Breite */
.single-product .woocommerce div.product form.cart {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
}
.single-product .woocommerce div.product form.cart .price-in-form {
    order: -2;
    flex: 1 1 auto;
    font-family: 'Montserrat', sans-serif !important;
    color: #222831;
    margin: 0;
}
.single-product .woocommerce div.product form.cart div.quantity {
    order: -1;
    flex: 0 0 auto;
    float: none;
    margin: 0;
    display: flex;
    align-items: center;
    gap: 12px;
    flex-direction: row-reverse;
    justify-content: flex-start;
}
.single-product .woocommerce div.product form.cart div.quantity::after {
    content: 'MENGE';
    font-family: 'Montserrat', sans-serif;
    font-size: 16px;
    letter-spacing: 0.06em;
    color: #222831;
    order: 1;
}
.single-product .woocommerce div.product form.cart .single_add_to_cart_button {
    flex: 0 0 100%;
    width: 100%;
    max-width: 100%;
    display: block;
    margin: 0.75em 0 0 0;
    padding: 0.65em 1.25em;
    box-sizing: border-box;
    text-align: center;
}
.single-product .woocommerce div.product form.cart .view-cart-wrap,
.single-product .woocommerce div.product form.cart .continue-shopping-wrap {
    flex: 0 0 100%;
    width: 100%;
    margin: 1em 0 0 0;
    padding: 0;
}
.single-product .woocommerce div.product form.cart .view-cart-wrap .button,
.single-product .woocommerce div.product form.cart .continue-shopping-wrap .button {
    width: 100%;
    max-width: 100%;
    display: block;
    padding: 0.65em 1.25em;
    box-sizing: border-box;
    text-align: center;
    text-align: center;
}

/* Bike Scout/Ranger Produktdetail: nur 3 Buttons (Konfigurieren/Anfragen, Warenkorb anzeigen, Weiter einkaufen) */
body.product_scout.single-product .woocommerce div.product form.cart .price-in-form,
body.product_scout.single-product .woocommerce div.product form.cart div.quantity,
body.product_scout.single-product .woocommerce div.product form.cart .single_add_to_cart_button,
body.product_ranger.single-product .woocommerce div.product form.cart .price-in-form,
body.product_ranger.single-product .woocommerce div.product form.cart div.quantity,
body.product_ranger.single-product .woocommerce div.product form.cart .single_add_to_cart_button {
    display: none !important;
}
body.product_scout.single-product .woocommerce div.product form.cart .bike-first-action-wrap,
body.product_ranger.single-product .woocommerce div.product form.cart .bike-first-action-wrap {
    flex: 0 0 100%;
    width: 100%;
    margin: 0 0 1.25em 0;
    padding: 0;
}
body.product_scout.single-product .woocommerce div.product form.cart .view-cart-wrap,
body.product_scout.single-product .woocommerce div.product form.cart .continue-shopping-wrap,
body.product_ranger.single-product .woocommerce div.product form.cart .view-cart-wrap,
body.product_ranger.single-product .woocommerce div.product form.cart .continue-shopping-wrap {
    margin: 1.25em 0 0 0;
    padding: 0;
}
body.product_scout.single-product .woocommerce div.product form.cart .bike-first-action-button,
body.product_ranger.single-product .woocommerce div.product form.cart .bike-first-action-button {
    width: 100%;
    max-width: 100%;
    display: block;
    padding: 0.75em 1.25em;
    box-sizing: border-box;
    text-align: center;
    font-family: 'Montserrat', sans-serif !important;
    font-weight: 400 !important;
    letter-spacing: 0.02em;
    text-transform: none;
    background: transparent;
    border: 1px solid #16242F;
    color: #222831;
    text-decoration: none;
    border-radius: 10px;
    box-shadow: none !important;
    transition: box-shadow 0.3s ease, background 0.3s ease;
}
body.product_scout.single-product .woocommerce div.product form.cart .bike-first-action-button:hover,
body.product_ranger.single-product .woocommerce div.product form.cart .bike-first-action-button:hover {
    background: #f9f9f9;
    box-shadow: 0 0 18px rgba(255, 255, 255, 0.6), 0 0 30px rgba(182, 157, 120, 0.25);
}
body.product_scout.single-product .woocommerce div.product form.cart .bike-first-action-button.bike-configurator-button,
body.product_ranger.single-product .woocommerce div.product form.cart .bike-first-action-button.bike-configurator-button {
    text-transform: uppercase;
}

/* Bike Scout/Ranger ohne Preis (Preis auf Anfrage): Buttons außerhalb des Formulars – gleicher Abstand und Optik wie andere Produkte */
body.product_scout.single-product .woocommerce div.product .bike-buttons-wrap .bike-first-action-wrap,
body.product_ranger.single-product .woocommerce div.product .bike-buttons-wrap .bike-first-action-wrap {
    width: 100%;
    margin: 0 0 1.25em 0;
    padding: 0;
}
body.product_scout.single-product .woocommerce div.product .bike-buttons-wrap .view-cart-wrap,
body.product_scout.single-product .woocommerce div.product .bike-buttons-wrap .continue-shopping-wrap,
body.product_ranger.single-product .woocommerce div.product .bike-buttons-wrap .view-cart-wrap,
body.product_ranger.single-product .woocommerce div.product .bike-buttons-wrap .continue-shopping-wrap {
    margin: 1.25em 0 0 0;
    padding: 0;
}
body.product_scout.single-product .woocommerce div.product .bike-buttons-wrap .bike-first-action-button,
body.product_ranger.single-product .woocommerce div.product .bike-buttons-wrap .bike-first-action-button {
    width: 100%;
    max-width: 100%;
    display: block;
    padding: 0.75em 1.25em;
    box-sizing: border-box;
    text-align: center;
    font-family: 'Montserrat', sans-serif !important;
    font-weight: 400 !important;
    letter-spacing: 0.02em;
    text-transform: none;
    background: transparent !important;
    border: 1px solid #16242F !important;
    color: #222831 !important;
    text-decoration: none;
    border-radius: 10px;
    box-shadow: none !important;
    transition: box-shadow 0.3s ease, background 0.3s ease;
}
body.product_scout.single-product .woocommerce div.product .bike-buttons-wrap .bike-first-action-button:hover,
body.product_ranger.single-product .woocommerce div.product .bike-buttons-wrap .bike-first-action-button:hover {
    background: #f9f9f9;
    box-shadow: 0 0 18px rgba(255, 255, 255, 0.6), 0 0 30px rgba(182, 157, 120, 0.25);
}
body.product_scout.single-product .woocommerce div.product .bike-buttons-wrap .bike-first-action-button.bike-configurator-button,
body.product_ranger.single-product .woocommerce div.product .bike-buttons-wrap .bike-first-action-button.bike-configurator-button {
    text-transform: uppercase;
}
body.product_scout.single-product .woocommerce div.product .bike-buttons-wrap .view-cart-wrap .button,
body.product_scout.single-product .woocommerce div.product .bike-buttons-wrap .continue-shopping-wrap .button,
body.product_ranger.single-product .woocommerce div.product .bike-buttons-wrap .view-cart-wrap .button,
body.product_ranger.single-product .woocommerce div.product .bike-buttons-wrap .continue-shopping-wrap .button {
    width: 100%;
    max-width: 100%;
    display: block;
    padding: 0.75em 1.25em;
    box-sizing: border-box;
    text-align: center;
}

/* Abstand zwischen p-Elementen in .bike-buttons-wrap.single-product-buttons */
.bike-buttons-wrap.single-product-buttons p {
    margin-top: 1em;
    margin-bottom: 1em;
}
.bike-buttons-wrap.single-product-buttons p:first-child {
    margin-top: 0;
}
.bike-buttons-wrap.single-product-buttons p:last-child {
    margin-bottom: 0;
}

.reset_variations {
    display: none !important;
}

.checkoutpart .woocommerce table.shop_table th {
    padding: 9px 0;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    font-size: 18px;
    line-height: 37px;
}
/* Bestellübersicht-Tabelle: Montserrat Light, Gesamtsumme Uppercase (überschreibt obige shop_table th) */
.checkoutpart .woocommerce-checkout-review-order-table th,
.checkoutpart .woocommerce-checkout-review-order-table td,
.checkoutpart .woocommerce table.woocommerce-checkout-review-order-table th,
.checkoutpart .woocommerce table.woocommerce-checkout-review-order-table td {
    font-family: 'Montserrat', sans-serif !important;
    font-size: 16px !important;
    color: #222831;
}
.checkoutpart .woocommerce-checkout-review-order-table .order-total th,
.checkoutpart .woocommerce table.woocommerce-checkout-review-order-table .order-total th {
    text-transform: uppercase;
    letter-spacing: 0.06em;
}
.checkoutpart .woocommerce-checkout-review-order-table td.product-name,
.checkoutpart .woocommerce table.woocommerce-checkout-review-order-table td.product-name {
}
.checkoutpart .woocommerce-checkout-review-order-table td.product-name .product-quantity,
.checkoutpart .woocommerce table.woocommerce-checkout-review-order-table td.product-name .product-quantity {
}

.checkoutpart .woocommerce table.shop_table tfoot tr {
    border-top: 1px solid #000000;
}

.checkoutpart .woocommerce table.shop_table tfoot th {
    border-top: 0px solid rgba(0, 0, 0, .1);
    padding: 10px 0;
}

.order-total .woocommerce-Price-amount.amount::after {
    content: "Preise inkl. MwSt.";
    font-size: 12px;
    display: none;
    margin: 0 0 0 3px;
    -moz-osx-font-smoothing: grayscale;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
}

.includes_tax {
    font-size: 14px;
}

.page-template-page_shopcheckout .agbsubtext {
    display: none;
}

.checkoutpart .woocommerce table.shop_table .cart_item td {
    border-bottom: 1px solid #cccccc;
    padding: 10px 0 9px 0;
}

.loadinglayer {
    position: fixed;
    top: 0px;
    left: -999999990px;
    width: 0%;
    height: 0%;
    z-index: -1;
    overflow: hidden;
    opacity: 0;
    background-color: rgba(255, 255, 255, 0.9);
    -webkit-transition: all 350ms;
    -moz-transition: opacity 350ms;
    -o-transition: opacity 350ms;
    transition: opacity 350ms;
}

.uploading .loadinglayer {
    width: 100%;
    height: 100%;
    left: 0px;
    z-index: 99999999;
    opacity: 1;
}

.page-template-konfigurator_checkout .product-quantity {
    display: none;
}

.bike_caSites {
    margin: 26px 0 0 0;
    width: 100%;
    float: left;
    display: none;
}

.bikecolor_ca .bike_caSites {
    display: block;
}

.bike_caSites .farbsitelabel {
    max-width: 40%;
    margin: 7px 9% 0 0;
}

.standortmap iframe {
    width: 100%;
    height: 400px;
}

.formrow {
    width: 100%;
    float: left;
    position: relative;
    margin: 0 0 15px 0;
}

.formlabel {
    display: block;
    width: 100%;
    float: left;
}

.forminput50 {
    position: relative;
    width: 48%;
    float: left
}

.forminput50right {
    float: right
}

.forminput100 {
    position: relative;
    width: 100%;
    float: left
}

.anfrageformbox input,
.anfrageformbox textarea {
    float: left;
    height: 34px;
    border-radius: 16px;
    border: 1px solid #D9D9D9;
    font-size: 19px;
    padding: 4px 0 3px 3%;
    width: 97%;
    float: left;
    margin: 5px 0 0 0;
    font-size: 16px;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
}

.anfrageformbox .anfrage {
    width: 100%;
    margin: 0px;
}

.anfrageformbox textarea {
    height: 150px;
    padding-top: 20px;
}

.senden.btn {
    cursor: pointer;
    font-size: 18px;
    display: inline-block;
    text-align: center;
    border: 2px solid #222831;
    background: #F59B0A;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    border-radius: 24px 24px 24px 24px;
    -moz-border-radius: 24px 24px 24px 24px;
    -webkit-border-radius: 24px 24px 24px 24px;
    color: #222831;
    padding: 12px 0px;
    width: 48%;
    height: 50px;
    -webkit-appearance: none;
    -webkit-transition: all 350ms;
    -moz-transition: all 350ms;
    -o-transition: all 350ms;
    transition: all 350ms;
}

.senden.btn:hover {
    background: #222831;
    border: 2px solid #222831;
    color: #ffffff;
}

.anfrageformbox .screen-reader-response {
    display: none;
}

.wpcf7-not-valid-tip {
    display: none !important;
}

.wpcf7-not-valid {
    border-color: #F59B0A;
}

.wpcf7-response-output.wpcf7-validation-errors {
    float: left;
    width: 80%;
    color: red;
    line-height: 20px;
    font-size: 15px;
}

.wpcf7-response-output.wpcf7-mail-sent-ok {
    color: #F59B0A;
}

.anfrageformbox::placeholder {
    font-size: 15px;
    color: #000000;
}

.woocommerce-checkout #payment ul.payment_methods li input {
    cursor: pointer;
    margin: 0px 1em 0px 0;
    width: 30px;
    float: left;
}

.dsvgo {
    width: 32px !important;
    float: left !important;
    margin: 3px 10px 0 0;
    display: block;
}

.dsvgo .wpcf7-not-valid {
    border: 2px solid #F59B0A;
    display: block;
    height: 40px;
    width: 33px;
    margin: 0px 0 0 0;
    float: left;
}

.dsvgotext {
    float: left;
    width: 90%;
    font-size: 15px;
    line-height: 23px;
    margin-left: 8px;
}

.anfrage {
    line-height: 20px !important;
    text-align: left !important;
    display: block;
    margin: 5px 0 10px 11px;
    font-size: 15px;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    width: 72px;
}

.menu-meta-container,
.menu-meta-en-container {
    float: left;
    margin: 0 0 0 0;
}

.fontsizer {
    margin: 0;
    float: none;
    color: #222831;
    border: 2px solid #222831;
    border-radius: 10px 10px 10px 10px;
    padding: 6px;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    display: inline-flex;
    align-items: center;
    gap: 5px;
}

.fontsizer span {
    opacity: 1;
    cursor: pointer;

}

 /*.wpml-ls-display {
    opacity: 1;
    background-color: #222831;
    color: #ffffff;
    padding: 2px;
}*/

.fontsmall {
    font-size: 22px;
    border: 2px solid #222831;
    border-radius: 8px 8px 8px 8px;
    padding: 1px;
}

.fontmedium {
    font-size: 25px;
    border: 2px solid #222831;
    border-radius: 8px 8px 8px 8px;
    padding: 1px;
}

.fontbig {
    font-size: 28px;
    border: 2px solid #222831;
    border-radius: 10px 10px 10px 10px;
    padding: 1px;
}

.fontsizer span.fontsizeactive {
    opacity: 1;
}

.preisanfragelayer {
    position: absolute;
    left: 0px;
    top: -9999999999999999px;
    background: #fff;
    z-index: 9999999;
    padding: 50px 0 50px 0;
    width: 100%;
    height: 0%;
    opacity: 0;
    overflow: hidden;
    -webkit-transition: opacity 350ms;
    -moz-transition: opacity 350ms;
    -o-transition: opacity 350ms;
    transition: opacity 350ms;
}

.configanfrage .preisanfragelayer {
    opacity: 1;
    top: 184px;
    height: auto;
    min-height: 100%;
    -webkit-box-shadow: 0px 18px 15px 0px rgba(50, 50, 50, 0.08);
    -moz-box-shadow: 0px 18px 15px 0px rgba(50, 50, 50, 0.08);
    box-shadow: 0px 18px 15px 0px rgba(50, 50, 50, 0.08);
}

.preisanfragelayerInner {
    width: 50%;
    margin: 40px auto;
    position: relative;
}

.closeanfragepreis {
    cursor: pointer;
    display: block;
    position: absolute;
    right: 0px;
    opacity: 1;
    -webkit-transition: opacity 350ms;
    -moz-transition: opacity 350ms;
    -o-transition: opacity 350ms;
    transition: opacity 350ms;
}

.closeanfragepreis:hover {
    opacity: 0.7
}

.preisanfragelayerInner h2 {
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    font-size: 40px;
}

html.contentfontmedium body {
    font-size: 20px;
    line-height: 32px;
}

html.contentfontbig body {
    font-size: 22px;
    line-height: 34px;
}

.contentfontmedium .teasertext {
    font-size: 22px;
    line-height: 37px;
}

.contentfontbig .teasertext {
    font-size: 24px !important;
    line-height: 39px !important;
}

.contentfontmedium .inputext {
    font-size: 20px !important;
    line-height: 32px !important;
}

.contentfontbig .inputext {
    font-size: 22px !important;
    line-height: 34px !important;
}

.contentfontmedium .contentparticonboxen .featuredBox .boxHL {
    font-size: 20px;
    line-height: 24px;
}

.contentfontbig .contentparticonboxen .featuredBox .boxHL {
    font-size: 22px;
    line-height: 26px;
}

.contentfontbig .footerBox {
    margin: 0px 2% 0 0;
}

.pk-theme .wmc-cart-wrapper .wmc-content .printitem {
    display: none !important;
}

.wmc-cart-wrapper {
    display: none !important;
}

.wmc-cart-wrapper {
    display: block !important;
}

.page-template-konfigurator_step2 .wmc-cart-wrapper,
.page-template-konfigurator_step3 .wmc-cart-wrapper,
.page-template-konfigurator_step2_praegung .wmc-cart-wrapper {
    display: none !important;
}

.page-template-konfigurator_checkout .wmc-cart-wrapper,
.page-template-konfigurator_checkout .logged-in .wmc-cart-wrapper {
    display: none !important;
}

.pk-theme .wmc-cart-wrapper {
    right: 50px;
    top: 92px;
    position: absolute;
}

.pk-theme .wmc-content {
    font-size: 15px;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    height: auto;
    border: 0px solid #ccc;
    border-radius: 24px 24px 24px 24px;
    -moz-border-radius: 24px 24px 24px 24px;
    -webkit-border-radius: 24px 24px 24px 24px;
    -webkit-box-shadow: 0px 0px 15px 0px rgba(50, 50, 50, 0.11);
    -moz-box-shadow: 0px 0px 15px 0px rgba(50, 50, 50, 0.11);
    box-shadow: 0px 0px 15px 0px rgba(50, 50, 50, 0.11);
}

.pk-theme .wmc-products {
    height: auto;
    overflow-y: inherit;
    list-style-type: none;
    margin: 0 !important;
    padding-left: 0;
    display: block;
    float: left;
    width: 100%;
}

.pk-theme .wmc-content h3 {
    display: none !important;
}

.pk-theme .wmc-image {
    width: 66px;
    float: left;
    margin: 0 10px 0 0;
}

.pk-theme .wmc-price {
    font-size: 14px;
}

.pk-theme .wmc-subtotal {
    display: none
}

.pk-theme .wmc-content {
    width: 400px;
}

.pk-theme .wmc-cart-wrapper {
    width: 356px;
}

.pk-theme .wmc-subtotal {
    height: auto;
    float: left;
    width: 100%;
    font-size: 14px !important;
}

.pk-theme .wmc-remove {
    width: 30px;
    float: left;
    margin: 20px 0 0 0;
}

.pk-theme .wmc-details {
    width: 200px;
    text-align: left;
    float: left;
}

.pk-theme .woocommerce a.remove {
    color: #222831 !important;
}

.pk-theme .wmc-products li {
    padding: 15px 0 15px 0;
    display: block;
    float: left;
    width: 90%;
    align-content: center;
    border-bottom: 1px solid #ccc;
    margin: 0 0 0 30px;
}

.pk-theme .wmc-content h5 {
    font-size: 15px;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    padding: 0;
    border-top: 1px solid #ccc;
    margin: 0 !important;
    display: flex;
    height: 100%;
    justify-content: center;
    align-items: center;
}

.pk-theme .wmc-details h4 {
    font-size: 14px;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    display: block;
    float: left;
    width: 100%;
    margin: 0 0 0 0px;
    line-height: 14px;
    text-align: left;
}

.pk-theme .wmc-bottom-buttons a {
    width: 50%;
    background-color: #222831;
    display: flex;
    float: left;
    justify-content: center;
    align-items: center;
    height: 100%;
    font-size: 15px;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    color: #fff !important;
    text-decoration: none !important;
}

.woocommerce-shipping-calculator,
.woocommerce-shipping-destination {
    display: none;
}

.checkoutpart .woocommerce form .woocommerce-terms-and-conditions-wrapper label {
    width: 100%;
}

.wc-gzd-checkbox-placeholder-legal .woocommerce-form__label.woocommerce-form__label-for-checkbox.checkbox {
    width: 100% !important;
}

.wc-gzd-product-name-left .woocommerce-placeholder {
    display: none;
}

.gutgemachtbox iframe {
    width: 138px;
    height: 350px;
    float: left;
}

.gutgemachtbox {
    position: relative;
    width: 100%;
    height: 193px;
    overflow: hidden;
    background: #f8f8f8;
    border: 1px solid #D9D9D9;
    border-radius: 23px 23px 23px 23px;
    margin: 10px 0 0 0;
    float: left;
}

.gutgemachtboxFramebox {
    margin: 0 auto;
    width: 138px;
    height: 192px;
}

.footerBoxLast .topunternehmen {
    display: none;
}

.footerBoxLast .metalinks {
    margin: 0px 0 0 0;
}

.teaserproduktbox {
    position: relative;
}

.soldbanner {
    display: none;
}

.stockcount-0 .soldbanner,
.infobanner {
    display: block;
    position: absolute;
    z-index: 10;
    background: #222831;
    color: #fff;
    font-size: 16px;
    width: 200px;
    text-align: center;
    padding: 0 4px 0 4px;
    right: -44px;
    top: 47px;
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
}

.infobanner {
    z-index: 9 !important;
    background: #F59B0A !important;
    color: #222831;
}

.stockcount-0 .infobanner {
    display: none !important;
}

.contentpartproductlist .teaserproduktbox {
    overflow: hidden;
}

.contentpartproductlist .addtocartlink {
    margin: 10px 0 0 0px;
    background-color: #ffffff;
}

.hide_selectrow,
.displaynone {
    display: none;
}

.page-template-page_shopcheckout .configBTN {
    display: none;
}

.TCitem_1 .CombineSelectTC_1,
.TCitem_2 .CombineSelectTC_2,
.TCitem_3 .CombineSelectTC_3,
.TCitem_4 .CombineSelectTC_4,
.TCitem_5 .CombineSelectTC_5,
.TCitem_6 .CombineSelectTC_6,
.TCitem_7 .CombineSelectTC_7,
.TCitem_8 .CombineSelectTC_8,
.TCitem_9 .CombineSelectTC_9,
.TCitem_10 .CombineSelectTC_10,
.TCitem_11 .CombineSelectTC_11,
.TCitem_12 .CombineSelectTC_12,
.TCitem_13 .CombineSelectTC_13,
.TCitem_14 .CombineSelectTC_14,
.TCitem_15 .CombineSelectTC_15 {
    display: none;
    opacity: 0.5;
    pointer-events: none;
}

.CombineSelectTC:first-child {
    border-radius: 16px 0px 0px 16px;
}

.CombineSelectTC:last-child {
    border-radius: 0px 16px 16px 0px;
}

.CombineSelectTC-single:last-child {
    border-radius: 16px 16px 16px 16px;
}

.combinelabel {
    font-size: 12px;
    margin: 0 4px 0 0;
    opacity: 0.4;
    display: block;
    position: absolute;
    top: -24px;
    width: 100%;
    text-align: center;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    font-style: normal;
    color: #222831 !important;
}

.combindefile .selectRow {
    display: none;
}

.combindefile .selectRow.selectRow-fileitem {
    display: block;
}

.filecombinded .selectCombine {
    display: none;
}

.filecombinded .combinesettings .selectCombine {
    display: block;
}

.combinedInfo {
    display: none;
}

.combindefile .combinedInfo {
    display: inline;
    font-size: 13px;
    color: #F59B0A;
    float: left;
    position: absolute;
    left: 56px;
    top: -16px;
}

.combindefile {
    opacity: 0.5;
}

.inputgroup {
    float: left;
    width: 100%;
    background: none;
    padding: 0px;
    margin: 0 0 0px 0;
}

.inputgroup.inputgroupactive {
    width: 100%;
    background: #f1f1f1;
    padding: 18px 2% 0 2%;
    margin: 0 0 20px 0;
}

.inputgroup.inputgroupactive .countselect_manuell {
    background: #f1f1f1;
}

.page-template-konfigurator_tc_step1 .contentpartKonfiguratorHeading {
    margin: 80px 0 0 0;
}

.page-template-konfigurator_tc_step1 .StepinfoCount {
    width: 30px;
    height: 30px;
}

.page-template-konfigurator_tc_step1 .StepinfoCount .StepinfoCountInner {
    font-size: 24px;
    top: 0px;
}

.page-template-konfigurator_tc_step1 .StepinfoTxt {
    font-size: 25px;
    margin: 6px 0 0 15px;
}

.page-template-konfigurator_tc_step1 .StepinfoTxt strong {
    float: left;
}

.page-template-konfigurator_tc_step1 .filename {
    border: 0px;
    font-size: 20px;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    font-style: italic;
    width: 422px;
    margin: 3px 0 0 10px;
    float: left;
    pointer-events: none;
    color: #222831;
    opacity: 0.5;
}

.page-template-konfigurator_tc_step1 a.confignextBTN {
    margin: 8px 20px 0px 0;
}

.page-template-konfigurator_tc_step1 .selectPartContent {
    border-top: 1px solid #ccc;
    padding: 30px 0 0 0;
    margin: 0px 0 0 5%;
}

.page-template-konfigurator_tc_step1 .selectPartContent:first-child {
    border-top: 0px solid #ccc;
}

.page-template-konfigurator_tc_step1.selectPartContent-off .selectPartContent {
    opacity: 0.5;
}

.page-template-konfigurator_tc_step1 .RowDatencheck,
.page-template-konfigurator_tc_step1 .RowProbeBike,
.page-template-konfigurator_tc_step1 .summaryPartRowTest,
.page-template-konfigurator_tc_step1 .summaryPartRowCheck {
    display: none;
}

.page-template-konfigurator_tc_step1 .selectRow {
    margin: 0px 0 25px 0;
}

.selectPartContent-off {
    opacity: 0.5;
}

.selectPartContent-off .selectRow {
    display: none;
}

.selectPartContent-off .selectRow.selectRowexemplare,
.selectPartContent-off .selectRow-fileitem {
    display: block;
}

.page-template-konfigurator_tc_step1 #ruck_cb {
    display: none;
}

.page-template-konfigurator_tc_step1 .countselect_manuell {
    width: 16%;
}

.page-template-konfigurator_tc_step1 .selectRowexemplare .countselect {
    width: 12%;
}

a.confignextTCBTN {
    font-size: 20px;
    color: #222831;
    background: #F59B0A;
    border: 3px solid #222831;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    width: 34%;
    text-align: center;
    border-radius: 10px;
    display: block;
    height: 45px;
    float: right;
    padding: 15px 0 0 0;
    margin: 58px 0px -150px 0;
    -webkit-transition: all 350ms;
    -moz-transition: all 350ms;
    -o-transition: all 350ms;
    transition: all 350ms;
}

a.confignextTCBTN:hover {
    color: #ffffff;
    background-color: #222831;
    border-color: #222831;
}

.ExemplareSelectTC_input {
    margin-left: 32px;
}

.summaryPartInner {
    counter-reset: section;
}

.preisinfoline::before {
    counter-increment: section;
    content: counter(section);
    width: 15px;
    height: 7px;
    padding: 8px 0 0 0;
    border: 2px solid #F59B0A;
    float: left;
    overflow: hidden;
    -webkit-border-radius: 300px;
    -moz-border-radius: 300px;
    border-radius: 300px;
    position: absolute;
    left: -7px;
    background: #fff;
    top: 4px;
    text-align: center;
    line-height: 0px;
    font-size: 12px;
    color: #F59B0A;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
}

.preisinfoline {
    padding: 0 0 0 5%;
    width: 95%;
}

.summeryItem {
    height: auto;
    position: relative;
    float: left;
    width: 100%;
}

.summeryRowdetail {
    display: none;
    border-bottom: 1px solid #ccc;
    margin: 0 0 4px 0;
    font-size: 14px;
    line-height: 16px;
    padding: 0 0 7px 5%;
}

.summeryItemOpen .summeryRowdetail {
    display: block;
}

.woocommerce form .form-row .input-text, .woocommerce form .form-row select {
    border: 1px solid #D9D9D9 !important;
    border-radius: 16px 16px 16px 16px !important;
    text-align: left !important;
      font-family: sans-serif IsidoraSans-Medium, !important;
    padding: 0 0 0 7% !important;
    height: 33px !important;
    font-size: 15px !important;
      margin: 0 0 0 0% !important;
}

.summeryItems {
    counter-reset: summeryItemsection;
}

.summeryItems .summeryItem:before {
    counter-increment: summeryItemsection;
    content: counter(summeryItemsection);
    width: 15px;
    height: 7px;
    border: 2px solid #F59B0A;
    float: left;
    overflow: hidden;
    -webkit-border-radius: 300px;
    -moz-border-radius: 300px;
    border-radius: 300px;
    position: absolute;
    left: -7px;
    background: #fff;
    top: 5px;
    text-align: center;
    line-height: 0;
    font-size: 12px;
    color: #F59B0A;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    -webkit-transition: all 350ms;
    -moz-transition: all 350ms;
    -o-transition: all 350ms;
    transition: all 350ms;
    padding: 8px 0 0 0;
}

.summeryItems .summeryItemOpen:before {
    background: #F59B0A;
    color: #ffffff;
}

.summeryItems .summeryItem::after {
    content: "+";
    cursor: pointer;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    color: #F59B0A;
    position: absolute;
    right: 0;
    top: 0px;
    width: 15px;
    height: 7px;
    padding: 8px 0 0 0;
    border: 2px solid #F59B0A;
    float: left;
    overflow: hidden;
    -webkit-border-radius: 300px;
    -moz-border-radius: 300px;
    border-radius: 300px;
    font-size: 17px;
    line-height: 0px;
    text-align: center;
    background: #fff;
    -webkit-transition: all 350ms;
    -moz-transition: all 350ms;
    -o-transition: all 350ms;
    transition: all 350ms;
}

.summeryItems .summeryItem:hover:after,
.summeryItems .summeryItemOpen:after {
    background: #F59B0A;
    color: #ffffff;
}

.summeryItems .summeryItemOpen:after {
    content: "-";
}

.summeryItem .summeryRow::before {
    display: none;
}

.Preisbox_tc .summaryPartRowZusammenfassung {
    margin: 40px 0 40px 0;
}

.summeryRow.summeryRowtitel {
    width: 95%;
    margin: 0 0 0 1%;
}

.checkout-TeachCenter .product-quantity {
    display: none;
}

.checkout-TeachCenter #shipping_method_0_wbs1b472f586_sterreich {
    display: none !important;
}

.checkout-TeachCenter label[for="shipping_method_0_wbs1b472f586_sterreich"] {
    display: none !important;
}

.RowLieferung_abholung .lieferung_abholugnslocation {
    display: block;
}

.printTUgo {
    display: block;
    float: right;
    width: 378px;
    position: absolute;
    right: 0px;
    top: -32px;
    pointer-events: none;
}

.page-template-page_cart-php #shipping_method_0_flat_rate12,
.page-template-page_cart-php .woocommerce ul#shipping_method li label[for="shipping_method_0_flat_rate12"],
.page-template-page_cart-php #shipping_method_0_flat_rate14,
.page-template-page_cart-php .woocommerce ul#shipping_method li label[for="shipping_method_0_flat_rate14"],
.page-template-page_cart-php #shipping_method_0_flat_rate15,
.page-template-page_cart-php .woocommerce ul#shipping_method li label[for="shipping_method_0_flat_rate15"],
.page-template-page_cart-php #shipping_method_0_flat_rate16,
.page-template-page_cart-php .woocommerce ul#shipping_method li label[for="shipping_method_0_flat_rate16"],
.ornamentversand #shipping_method_0_flat_rate12,
.ornamentversand .woocommerce ul#shipping_method li label[for="shipping_method_0_flat_rate12"],
.ornamentversand #shipping_method_0_flat_rate14,
.ornamentversand .woocommerce ul#shipping_method li label[for="shipping_method_0_flat_rate14"],
.ornamentversand #shipping_method_0_flat_rate15,
.ornamentversand .woocommerce ul#shipping_method li label[for="shipping_method_0_flat_rate15"],
.ornamentversand #shipping_method_0_flat_rate16,
.ornamentversand .woocommerce ul#shipping_method li label[for="shipping_method_0_flat_rate16"],
.moebelversand #shipping_method_0_flat_rate12,
.moebelversand .woocommerce ul#shipping_method li label[for="shipping_method_0_flat_rate12"],
.moebelversand #shipping_method_0_flat_rate14,
.moebelversand .woocommerce ul#shipping_method li label[for="shipping_method_0_flat_rate14"],
.moebelversand #shipping_method_0_flat_rate15,
.moebelversand .woocommerce ul#shipping_method li label[for="shipping_method_0_flat_rate15"],
.moebelversand #shipping_method_0_flat_rate16,
.moebelversand .woocommerce ul#shipping_method li label[for="shipping_method_0_flat_rate16"],
.akustikversand #shipping_method_0_flat_rate12,
.akustikversand .woocommerce ul#shipping_method li label[for="shipping_method_0_flat_rate12"],
.akustikversand #shipping_method_0_flat_rate14,
.akustikversand .woocommerce ul#shipping_method li label[for="shipping_method_0_flat_rate14"],
.akustikversand #shipping_method_0_flat_rate15,
.akustikversand .woocommerce ul#shipping_method li label[for="shipping_method_0_flat_rate15"],
.akustikversand #shipping_method_0_flat_rate16,
.akustikversand .woocommerce ul#shipping_method li label[for="shipping_method_0_flat_rate16"] {
    display: none;
}


/* --------------------------------------------- H 820 */

@media screen and (max-height: 820px) {
    .fixedpricebox .summaryPart {
        position: absolute;
    }
}


/* --------------------------------------------- 1500 */

@media screen and (max-width: 1500px) {
    .pk-theme .wmc-cart {
        right: -20px;
        top: 3px;
        width: 36px;
    }
}


/* --------------------------------------------- 1490 */

@media screen and (max-width: 1490px) {
    .pk-theme .wmc-cart {
        right: -20px;
        top: 49px;
        width: 36px;
    }
}


/* --------------------------------------------- 1421 */

@media screen and (max-width: 1421px) {
    .showcaptcha .grecaptcha-badge {
        bottom: 40px !important;
    }
}

@media screen and (max-width: 1386px) {
    .contentpartKonfigurator .configPart {
        flex-direction: column;
        width: 100%;
        max-width: 100%;
        margin-top: 50px;
    }
    .contentpartKonfigurator .configPart .selectPart {
        order: 1;
        width: 100% !important;
    }
    .contentpartKonfigurator .configPart .summaryPart {
        order: 2;
        width: 100% !important;
        position: relative;
        top: 0;
        margin-top: 24px;
    }
}



/* --------------------------------------------- 1310 */

@media screen and (max-width: 1310px) {
    .popupinfo .contentpartCenter {
        max-width: 100%;
    }
    .popupwindowInner.featuredBox {
        margin: 50px auto 0 auto;
        padding: 5%;
        float: left;
        width: 90%;
    }
}


/* --------------------------------------------- 1284 */

@media screen and (max-width: 1284px) {
    .contentpartCenter {
        width: 95%;
    }
    .contentpart-singleproduct .contentpartCenter {
        width: 90% !important;
        max-width: 90% !important;
        margin: 0 auto 0 5% !important;
    }
}


/* --------------------------------------------- 1265 */

@media screen and (max-width: 1265px) {
    .selectRowLabel {
        font-size: 16px;
    }
}

/* --------------------------------------------- 1235 */

@media screen and (max-width: 1235px) {
    .woocommerce .button {
        width: auto;
    }
}


/* --------------------------------------------- 1190 */

@media screen and (max-width: 1190px) {
    .agbcheckboxinfotext {
        width: 90%;
    }

    /* Start collapsing the header navigation earlier */
    .contentpartHeader {
        padding-top: 15px;
        margin-bottom: -60px;
    }
    .contentpartHeader .contentpartwrapper {
        height: auto;
        min-height: 60px;
    }
    .contentpartHeader .contentpartInner {
        align-items: flex-start;
        padding-top: 12px;
        padding-left: 0;
        padding-right: 0;
        min-height: 56px;
    }
    .contentpartHeader .logo {
        margin: 0;
        margin-right: auto;
        align-self: flex-start;
        width: 120px;
        max-width: 120px;
        flex-shrink: 0;
    }
    .contentpartHeader .logo img {
        display: block;
        width: 100%;
        height: auto;
    }
    .contentpartHeader .headerLanguageSwitcher {
        display: none !important;
    }
    .contentpartHeader .headerActions {
        top: 25px;
        right: 52px;
        transform: none;
        gap: 10px;
    }
    .contentpartHeader .headerCustomerType {
        display: none !important;
    }
    .contentpartHeader .headerCart {
        display: flex !important;
        align-items: center;
        margin-top: -12px !important;
    }
    .contentpartHeader .pk-customer-toggle-btn {
        padding: 6px 8px;
        font-size: 11px;
    }
    /* Konfigurator: Toggle wie Desktop-Header (nicht extra verkleinern) */
    .pk-config-customer-toggle-mobile .pk-customer-toggle-btn {
        padding: 6px 10px;
        font-size: 12px;
    }
    .mobnavbtn {
        display: block !important;
        position: absolute;
        top: 50%;
        right: 0;
        width: 35px;
        cursor: pointer;
        transform: translateY(-50%);
    }
    .mobnavbtn span {
        display: block;
        float: left;
        height: 4px;
        width: 100%;
        margin: 0 0 6px 0;
        background: #222831;
    }
    .mobnavbtnClose {
        display: none !important;
    }
    .mobnavOn .mobnavbtn {
        display: none !important;
    }
    .mobnavOn .mobnavbtnClose {
        display: block !important;
        position: absolute;
        top: 50%;
        right: 0;
        width: 35px;
        cursor: pointer;
        transform: translateY(-50%);
    }
    .mobnavOn .mobnavbtnClose img,
    .mobnavOn .navcloseimg {
        filter: brightness(0) saturate(100%);
    }
    .contentpartHeader .navipart {
        display: none !important;
    }
    .mobnavOn .navipart {
        display: block !important;
        background: #ececec;
        position: fixed !important;
        left: 0 !important;
        right: 0 !important;
        top: 72px !important;
        width: 100vw !important;
        max-width: 100% !important;
        margin: 0 !important;
        padding: 1rem 5% 1.5rem !important;
        max-height: calc(100vh - 72px);
        overflow-y: auto;
        float: none;
        box-sizing: border-box;
        -webkit-box-shadow: 0 6px 14px rgba(50, 50, 50, 0.15);
        -moz-box-shadow: 0 6px 14px rgba(50, 50, 50, 0.15);
        box-shadow: 0 6px 14px rgba(50, 50, 50, 0.15);
        z-index: 999998;
    }
    .mobnavOn .navipart .combined-menu-wrapper,
    .mobnavOn .navipart .mainmenuTop {
        display: block !important;
        width: 100% !important;
        max-width: none !important;
        margin: 0 !important;
        padding: 0 !important;
        border: none;
        box-sizing: border-box;
    }
    .mobnavOn .navipart .mainmenuTop > .combined-menu,
    .mobnavOn .navipart .combined-menu-wrapper .combined-menu {
        display: block !important;
        flex-direction: column !important;
        width: 100%;
        margin: 0;
        padding: 0;
        list-style: none;
        gap: 0;
    }
    .mobnavOn .navipart .mainmenuTop li,
    .mobnavOn .navipart .combined-menu li {
        display: block !important;
        float: none !important;
        width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        border: none !important;
        font-size: 18px !important;
        line-height: 1.4;
        list-style: none;
        border-bottom: 1px solid #ddd !important;
    }
    .mobnavOn .navipart .mainmenuTop li:last-child {
        border-bottom: none !important;
    }
    .mobnavOn .navipart .mainmenuTop li a,
    .mobnavOn .navipart .combined-menu li a {
        display: block !important;
        padding: 14px 0 !important;
        color: #222831 !important;
        font-family: 'Montserrat', sans-serif !important;
        font-size: 18px !important;
        text-decoration: none;
        border: none !important;
        white-space: normal;
        line-height: 1.4;
    }
    .mobnavOn .navipart .mainmenuTop li a:hover,
    .mobnavOn .navipart .mainmenuTop li.current-menu-item a {
        color: #222831 !important;
        border-bottom: none !important;
    }
    .mobnavOn .navipart .mainmenuTop li .sub-menu,
    .mobnavOn .navipart .combined-menu li .sub-menu {
        display: block !important;
        position: relative !important;
        top: auto !important;
        left: auto !important;
        height: auto !important;
        min-height: 0 !important;
        overflow: visible !important;
        opacity: 1 !important; /* iPad Touch: ohne explizites opacity bleiben Submenus ggf. nicht klickbar */
        pointer-events: auto !important;
        z-index: 10000 !important; /* iOS/iPad: vermeidet Klick-Through auf darunterliegende Menüeinträge */
        padding: 0 0 0 1rem !important;
        margin: 0 0 8px 0 !important;
        box-shadow: none !important;
        background: rgba(0, 0, 0, 0.04) !important;
        border-radius: 6px;
    }
    .mobnavOn .navipart .mainmenuTop li .sub-menu li,
    .mobnavOn .navipart .combined-menu li .sub-menu li {
        border-bottom: none !important;
        padding: 0 !important;
    }
    .mobnavOn .navipart .mainmenuTop li .sub-menu li a,
    .mobnavOn .navipart .combined-menu li .sub-menu li a {
        padding: 10px 0 !important;
        font-size: 16px !important;
        position: relative; /* iOS: fix stacked click areas */
        z-index: 10001; /* iOS: ensure tap targets win */
        pointer-events: auto !important;
    }
    .metaenuTop {
        position: relative;
        right: 0px;
        top: 0;
        width: 100%;
        margin-bottom: 15px;
        display: none !important;
    }
    .mobnavOn .navipart .metaenuTop {
        width: 100%;
        margin-bottom: 12px;
    }
    .mobnavOn .metaenuTop {
        display: block !important;
    }
    .mobnavOn .navipart .metaenuTop ul {
        display: block !important;
    }
    .mobnavOn .navipart .metaenuTop li {
        width: 100% !important;
        height: auto !important;
        display: block !important;
        margin: 0 0 4px 0 !important;
        padding: 0 !important;
    }
    .mobnavOn .navipart .metaenuTop li a {
        display: block !important;
        padding: 10px 0 !important;
        color: #222831 !important;
        font-size: 17px !important;
    }
    html.mobnavOn,
    html.mobnavOn body {
        height: 100%;
        overflow: hidden !important;
    }
    html.mobnavOn .contentpartHeader {
        position: fixed;
        top: 0;
        left: 0;
        right: 0;
        width: 100%;
        margin-bottom: 0;
        z-index: 9999999999;
    }
    .mobnavOn .metaenuTop .menu-item-type-woocommerce-endpoint,
    .mobnavOn .metaenuTop a[href*="/cart/"],
    .mobnavOn .metaenuTop a[href*="/checkout/"],
    .mobnavOn .metaenuTop a[href*="/my-account/"],
    .mobnavOn .metaenuTop a[href*="/shop/"] {
        display: none !important;
    }
    .mobnavOn .metaenuTop ul:empty,
    .mobnavOn .metaenuTop:not(:has(li:not(.menu-item-type-woocommerce-endpoint):not([href*="/cart/"]):not([href*="/checkout/"]):not([href*="/my-account/"]):not([href*="/shop/"]))) {
        display: none !important;
    }
    .navipart .metaenuTop li {
        float: left;
        font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
        font-size: 17px;
        margin: 0 0px 7px 0px;
        width: 46%;
        height: 32px;
        display: grid;
    }
    .navipart .mainmenuTop {
        margin: 15px 0px 0 0px;
        border-top: 1px solid #eee;
        float: left;
        padding: 10px 0 0 0;
        width: 93%;
    }
    .navipart .mainmenuTop li {
        border: 0px solid #ffffff !important;
        font-size: 18px;
        margin: 0px 0px 5px 0px;
        margin-left: 0px;
        margin-left: 0px;
        padding: 5px 0px;
        width: 100%;
        list-style: none;
        border-radius: 0px 0px 0px 0px;
        -moz-border-radius: 0px 0px 0px 0px;
        -webkit-border-radius: 0px 0px 0px 0px;
        border: 0px solid #ffffff;
    }
    .navipart .mainmenuTop li:hover {
        border: 0px solid #ffffff;
    }
    .navipart .mainmenuTop li:hover .sub-menu,
    .navipart .mainmenuTop li .sub-menu {
        top: inherit;
        position: relative;
        background: #ececec;
        left: inherit;
        margin: 8px 0 0 0;
        box-shadow: 0px 50px 10px 0px rgba(21, 72, 83, 0.0) !important;
        border-radius: 0px 0px 0px 0px;
        height: auto;
        overflow: hidden;
        opacity: 1;
        padding: 0 0 0px 0;
    }
    .navipart .mainmenuTop li,
    .navipart .mainmenuTop li:hover {
        border-bottom: 1px solid #eee !important;
        padding: 5px 0 9px 0;
    }
    .navipart .mainmenuTop li .sub-menu li,
    .navipart .mainmenuTop li:hover .sub-menu li {
        border-bottom: 0px solid #eee !important;
    }
    .navipart .mainmenuTop li:last-child {
        border-bottom: 0px solid #eee;
    }
    .navipart .mainmenuTop li .sub-menu li::before {
        content: "- ";
        margin: 0;
        float: left;
        position: absolute;
        left: 0px;
    }
}


/* --------------------------------------------- 1165 */

@media screen and (max-width: 1165px) {
    .trans {
        opacity: 1
    }
    .logo {
        width: 130px;
        floaT: left;
        margin: -10px 0 0 0;
    }
    .metaenuTop {
        position: absolute;
        right: 0px;
        top: -20px;
    }
    .navipart .mainmenuTop li {
        font-size: 18px;
        margin: -10px 0px 0 45px;
        margin-left: 25px;
        padding: 5px 5px;
    }
    .contentpartHeader .contentpartwrapper {
        height: 80px;
    }
    .contentpart3boxen .sectionHL h2 {
        font-size: 108px;
        line-height: 102px;
    }
    .headerTxt {
        top: 40px;
    }
    .mainHL {
        font-size: 83px;
        line-height: 90px;
        margin: 0 0 10px 0;
    }
    .selectRowLabel {
        font-size: 14px;
    }
    .countselect {
        font-size: 14px;
    }
    .radiosetTitel {
        width: 100%;
    }
    .radioItem {
        width: 46%;
        margin: 5px 20px 0px 0;
    }
    .colorSubmenu > div:nth-child(5){
        order: 6 !important;
    }
    
    .colorSubmenu > div:nth-child(6){
        order: 5 !important;
    }
}


/* --------------------------------------------- 1023 */

@media screen and (max-width: 1023px) {
    .checkout-order-summary-block-fill-wrapper {
        display: none;
    }
    .configanfrage .preisanfragelayer {
        top: 144px;
    }
    .closeanfragepreis {
        top: -60px;
    }
    /* Konfigurator: Tablet/Mobile volle Breite, Preisrechner unter Konfigurationsblock */
    .contentpartKonfigurator .contentpartCenter {
        width: 100% !important;
        max-width: 100% !important;
        padding-left: 20px !important;
        padding-right: 20px !important;
        box-sizing: border-box;
    }
    .contentpartKonfigurator .contentpartInner {
        width: 100% !important;
        max-width: 100% !important;
    }
    .contentpartKonfigurator .configPart {
        flex-direction: column;
        width: 100%;
        max-width: 100%;
        margin-top: 50px;
    }
    .contentpartKonfigurator .configPart .selectPart {
        order: 1;
        width: 100% !important;
    }
    .contentpartKonfigurator .configPart .summaryPart {
        order: 2;
        width: 100% !important;
        position: relative;
        top: 0;
        margin-top: 24px;
    }
    /* Oberer Konfigurator-Bereich (Überschrift + Schrittleiste) volle Breite auf Tablet */
    .configanfrage-layer .contentpartCenter {
        width: 100% !important;
        max-width: 100% !important;
        padding-left: 20px !important;
        padding-right: 20px !important;
    }
    .configanfrage-layer .contentpartInner {
        width: 100% !important;
        max-width: 100% !important;
    }
    .contentpartKonfiguratorHeading {
        margin: 32px 0;
        font-size: 32px !important;
    }
    .contentpartKonfiguratorHeading h1 {
        font-size: 32px !important;
    }
    /* Überschriften auf Tablet kleiner, lange Wörter passen in eine Zeile, H1 halbfett */
    .contentpartPage .entry-content h1,
    .contentpartHome .entry-content h1,
    body .contentpartPage .entry-content h1,
    body .contentpartHome .entry-content h1 {
        font-size: 38px !important;
        line-height: 1.25 !important;
        font-weight: 600 !important;
        overflow-wrap: break-word;
        word-wrap: break-word;
    }
    .contentpartPage .entry-content h2,
    .contentpartHome .entry-content h2 {
        font-size: 28px !important;
        line-height: 36px !important;
        overflow-wrap: break-word;
        word-wrap: break-word;
    }
    .contentpartPage .entry-content h3,
    .contentpartHome .entry-content h3 {
        font-size: 24px !important;
        line-height: 32px !important;
        overflow-wrap: break-word;
        word-wrap: break-word;
    }
    .contentpartPage .entry-content h4,
    .contentpartHome .entry-content h4 {
        font-size: 20px !important;
        line-height: 28px !important;
        overflow-wrap: break-word;
        word-wrap: break-word;
    }
    .contentpartPage .entry-content h5,
    .contentpartHome .entry-content h5 {
        font-size: 18px !important;
        line-height: 26px !important;
        overflow-wrap: break-word;
        word-wrap: break-word;
    }
    .contentpartPage .entry-content h6,
    .contentpartHome .entry-content h6 {
        font-size: 16px !important;
        line-height: 24px !important;
        overflow-wrap: break-word;
        word-wrap: break-word;
    }
    .produktname {
        font-size: 20px;
        line-height: 27px;
    }
    .StepinfoCount {
        width: 60px;
        height: 60px;
    }
    .StepinfoCountInner {
        font-size: 39px;
        top: 19px;
        margin: 6px 0 0 0;
    }
    .StepinfoTxt {
        font-size: 25px;
        margin: 24px 0 0 8px;
        float: left;
        display: block;
    }
    .steptext {
        font-size: 12px;
        width: 100%;
        text-align: center;
        line-height: 15px;
    }
    .contentpartKonfigurator .contentpartwrapper {
        margin: 20px 0 20px 0;
    }
    /* Konfigurator auf Mobile: volle Breite nutzen */
    .contentpartKonfigurator .contentpartCenter {
        width: 100% !important;
        max-width: 100% !important;
        padding-left: 15px !important;
        padding-right: 15px !important;
        box-sizing: border-box;
    }
    .contentpartKonfigurator .contentpartInner {
        width: 100% !important;
        max-width: 100% !important;
    }
    /* Bike configurator: Konfigurationsblock zuerst, Preisrechner darunter gestapelt */
    .contentpartKonfigurator .configPart {
        flex-direction: column;
        width: 100%;
        max-width: 100%;
    }
    .contentpartKonfigurator .configPart .selectPart {
        order: 1;
        width: 100% !important;
    }
    .contentpartKonfigurator .configPart .summaryPart {
        order: 2;
        margin-top: 20px;
        margin-bottom: 20px;
        position: relative;
        top: 0;
        width: 100% !important;
    }
    .contentpartKonfigurator .konfigurator-step-bar-wrap {
        width: 97% !important;
        margin-left: 10px;
    }
    .contentpartKonfigurator .selectPartContent {
        width: 97% !important;
        padding: 0;
        margin-left: 10px;
    }
    /* Konfigurator-Zeilen auf Mobile: Überschrift + (i) in einer Zeile, Buttons darunter */
    .contentpartKonfigurator .bikeconfig .selectRow.bikeconfig {
        flex-direction: row;
        flex-wrap: wrap;
        align-items: flex-start;
    }
    .contentpartKonfigurator .bikeconfig .selectRowLabel {
        width: auto !important;
        flex: 0 0 auto !important;
        margin-top: 12px;
        margin-bottom: 4px;
        order: 1;
    }
    .contentpartKonfigurator .bikeconfig .selectRowInfos {
        order: 2;
    }
    .contentpartKonfigurator .bikeconfig .selectRowInputs {
        width: 100% !important;
        order: 3;
    }
    .contentpartKonfigurator .summaryPartInner {
        width: calc(100% - 30px) !important;
        margin-left: 0 !important;
        padding-left: 15px !important;
        padding-right: 15px !important;
    }
    /* Oberer Konfigurator-Bereich (Überschrift + Schrittleiste) volle Breite */
    .configanfrage-layer .contentpartCenter {
        width: 100% !important;
        max-width: 100% !important;
        padding-left: 15px !important;
        padding-right: 15px !important;
    }
    .configanfrage-layer .contentpartInner {
        width: 100% !important;
        max-width: 100% !important;
    }
    /* Schrittleiste: Labels umbrechen auf sehr schmalen Screens, alle Buttons gleich hoch */
    .konfigurator-step-bar-above-options {
        align-items: stretch;
    }
    .konfigurator-step-bar-above-options .step-bar-arrow {
        display: flex;
        align-items: center;
        align-self: center;
    }
    .konfigurator-step-bar-above-options .step-bar-label {
        white-space: normal;
        font-size: 12px;
        line-height: 1.3;
    }
    .konfigurator-step-bar-above-options .step-bar-btn {
        flex: 1 1 0;
        min-width: 60px;
        padding: 10px 8px;
        display: flex;
        align-items: center;
        justify-content: center;
        text-align: center;
    }
    .contentpartKonfiguratorHeading {
        margin: 24px 0;
        font-size: 28px !important;
    }
    .contentpartKonfiguratorHeading h1 {
        font-size: 28px !important;
    }
    .Stepinfosbox {
        margin: 50px 0 0 0;
    }
    .contentpartKonfiguratorHeading h1 {
        line-height: 1.25;
        margin: 0;
    }
    .contentpartKonfiguratorHeading {
        display: block;
        float: left;
        width: 100%;
    }
    .summaryPart {
        z-index: 9999;
        width: 100%;
        float: left;
        position: relative;
        top: 0;
        right: inherit;
        margin-top: 0;
    }
    a.confignextBTN,
    #place_order {
        font-size: 20px;
        width: 100%;
        height: 38px;
        float: left;
        padding: 15px 0 0 0;
        margin: 58px 0px -150px 0;
    }
    .selectRowLabel {
        font-size: 16px;
        line-height: 34px;
        float: left;
        width: 100%;
        margin: 0 0 0 0;
    }
    .selectRowInputs {
        width: 100%;
    }
    .countselect_manuell {
        margin: 10px 0;
        float: left;
        height: 33px;
        width: 95%;
        padding-left: 5%;
        text-align: left;
    }
    #exemplare_manuell {
        margin: 10px 0 0 0%;
    }
    .countselect {
        width: 19.5%;
    }
    .selectRowInfos {
        width: 100%;
        margin: 0 0 0 0;
    }
    .infoBTN {
        margin: 12px 0 0 4px;
    }
    .countselect .smaller {
        text-align: center;
        margin: 5px 0 0 -6px;
    }
    .page-template-konfigurator_step2 a.configprevBTN,
    .page-template-konfigurator_step2_praegung a.configprevBTN,
    a.configprevBTN {
        margin: 138px 0px -200px 0px;
        width: 98%;
        height: 37px;
    }
    .selectPartContentLeft {
        float: left;
        width: 65%;
        padding: 20px 3% 20px 5%;
    }
    .roundCheckicon.roundnextstep {
        cursor: pointer;
        margin: 0 0 0 -38px;
        width: 70px;
    }
    .bindungsrow .rowlabletext {
        width: 97%;
    }
    .configorimage {
        height: auto;
        display: block;
        width: 100%;
        float: left;
        max-width: inherit;
    }
    .countselect {
        font-size: 18px;
    }
    .selectPartContentRight {
        float: right;
        width: 21%;
        margin: 10px 0 0 0;
    }
    .bindungsrow .selectRowInfos {
        margin: 9px 42px 0 0;
    }
    .bookprev {
        position: relative;
        width: 100%;
        float: left;
        min-height: 310px;
    }
    .headerTxt {
        top: 90px;
        width: 100%;
        position: relative;
    }
    .mainHL {
        font-size: 63px;
        line-height: 70px;
    }
    .teasertext {
        width: 90%;
    }
    .contentpart .sectionHLsub h2 {
        font-size: 60px;
        line-height: 60px;
        display: block;
        margin: 20px 0 0px 0;
    }
    contentpart .Infotextpart h3.boxtitel,
    .boxtitel {
        font-size: 24px;
        line-height: 33px;
    }
    .footerBox {
        margin: 0 4% 0 0;
    }
    .footerBoxLast {
        float: left;
        margin-right: 0;
        text-align: left;
        margin: -70px 0 0 0;
    }
    .stepline {
        margin: -32px 0 0 12%;
    }
    input[type=text],
    textarea {
        -webkit-appearance: none;
        -moz-appearance: none;
        appearance: none;
    }
    .lieferung_abholugnslocation {
        position: relative;
        top: 5px;
    }
    .bindungsrow1 .selectPartContentRight {
        border-top-right-radius: 0;
    }
    .teaserproduktbox {
        min-height: 220px;
    }
    .preisanfragelayerInner {
        width: 90%;
    }
    .senden.btn {
        width: 60%;
    }
    body.single-product .woocommerce div.product h1.product_title {
        font-size: 35px !important;
    }
    .wc-block-components-order-summary-item__quantity{
        transform: translate(50%,50%);
    }
}


/* --------------------------------------------- 767 */

@media screen and (max-width: 767px) {
    .showcaptcha .grecaptcha-badge {
        bottom: 7px !important;
        left: 8px;
    }
    .contentpartCenter {
        width: 85%;
    }
    .contentpart-singleproduct .contentpartCenter {
        width: 92% !important;
        max-width: 92% !important;
        margin: 0 auto 0 4% !important;
    }
    .single-product .woocommerce div.product .woocommerce-product-gallery {
        width: 100% !important;
        max-width: 100% !important;
        flex: 0 0 100%;
    }
    .single-product .woocommerce div.product .summary.entry-summary {
        flex: 0 0 100%;
    }
    .selectPartContentRight {
        float: left;
        width: 100%;
        margin: 10px 0 0 0;
    }
    .selectPartContentLeft {
        float: left;
        width: 97%;
        padding: 20px 3% 0 5%;
    }
    .radioItem {
        float: left;
        width: 97%;
        margin: 25px 20px 0px 0;
        cursor: pointer;
    }
    .stepline {
        margin: -44px 0 0 12%;
    }
    .popupInfowrapper {
        position: absolute;
    }
    .popupHL {
        font-size: 25px;
        margin: 70px 0 0 0;
    }
    .featuredBoxPopup {
        float: left;
        width: 100%;
        padding: 10px 0 10px 0;
        margin-bottom: 20px;
    }
    .headericon.headericon3 {
        top: 50%;
        margin: 0 0 0 -9px;
        width: 20%;
    }
    .mainHL {
        width: 80%;
        font-size: 35px;
        line-height: 46px;
        margin: 20px 0 20px 0;
    }
    .contentpart3boxen .sectionHL h2 {
        font-size: 48px;
        line-height: 55px;
        margin: 20px 0 50px 0;
    }
    .headerTxt {
        position: relative;
        top: inherit;
        margin: 20px 0 0 0;
        z-index: 99;
        width: 100%;
        float: left;
    }
    .teasertext {
        font-size: 18px;
        line-height: 30px;
        width: 100%;
        margin: 80px 0 20px 0;
        float: left;
    }
    .BTN {
        margin: 0 0 20px 0;
    }
    .headerimage {
        position: absolute;
        top: 0px;
    }
    .trans {
        opacity: 1;
    }
    .featuredBox,
    .featuredBoxOn {
        width: 100% !important;
        margin-right: 0 !important;
        left: 0 !important;
        padding: 20px 0 20px 0 !important;
        min-height: auto !important;
        margin: 0 0 20px 0 !important;
    }
    .contentpart3boxen .featuredBoxOn.featuredBox_0,
    .contentpart3boxen .featuredBoxOn.featuredBox_1,
    .contentpart3boxen .featuredBoxOn.featuredBox_2 {
        left: 0 !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }
    .contentpart3boxen .featuredBox .boxHL {
        font-size: 25px;
        color: #222831;
        margin: 10px 0 10px 0;
        line-height: 30px;
    }
    .featuredBoxInner .btnBox {
        position: relative;
        bottom: inherit;
        width: 100%;
        text-align: center;
    }
    .BTN {
        font-size: 14px !important;
        padding: 12px 16px;
    }
    .contentpartPage .entry-content .wp-block-button__link,
    .contentpartPage .entry-content a.BTN {
        font-size: 14px !important;
    }
    .contentparticonboxen .sectionHL h2,
    .contentpartLogos h2 {
        font-size: 25px;
        line-height: 30px;
        margin: 0 0 20px 0;
    }
    .contentpart3boxen .contentpartwrapper {
        padding: 20px 0 20px 0;
    }
    .iconbox {
        height: auto;
        margin: 5px 0 0 0;
        float: left;
        width: 100%;
    }
    .contenbildrightPart.contenbildrightPart .contenbildright {
        display: block;
        max-width: 100%;
    }
    .contentpart3boxen .sectionHL h2 {
        width: 100%;
        text-align: center;
        font-size: 48px;
        line-height: 55px;
        margin: 20px 0 20px 0;
    }
    .trennline .trennline {
        margin: 0px 0 0px 0;
    }
    .contentparticonboxen .contentpartwrapper {
        padding: 20px 0 20px 0;
    }
    .freisteller {
        top: inherit;
        display: block;
        float: right;
        width: 100%;
        position: relative;
        margin: 0px !important;
    }
    .freistellerpart {
        float: left;
        width: 100%;
    }
    .Infotextpart .boxtext {
        width: 100%;
        margin: 0 0 20px 0;
    }
    .Infotextpart {
        float: left;
        width: 100%;
        margin: 20px 0 20px 0;
    }
    .contenbildrightPart.produktteaserpart {
        width: 100%;
    }
    .contenbildrightPart.contenbildrightPart {
        width: 50%;
        position: relative;
        right: inherit;
        bottom: inherit;
        z-index: -1;
        float: left;
        margin: 0px 0 0 0;
        width: 100%;
    }
    .teaserproduktbox {
        margin: 20px 0 20px 0 !important;
        width: 100%;
        float: left;
    }
    .contentpartLogos .contentpartwrapper {
        padding: 20px 0;
    }
    .footerBox {
        text-align: center;
        float: left;
        width: 100%;
        margin: 0px 0 10px 0;
    }
    .footerlogo {
        width: 157px;
    }
    .footerBoxLast {
        float: right;
        margin-right: 0;
        text-align: center;
    }
    footer .logo {
        width: 170px;
        floaT: none;
        clear: both;
        margin: 20px auto 20px auto;
    }
    .credit {
        float: right;
        width: auto;
        padding-bottom: 160px;
    }
    .configBTNOn {
        opacity: 1;
        bottom: -20px;
        width: 90%;
        left: 3%;
    }
    .configBTN .BTN {
        padding: 0px;
        width: 50px;
        height: 50px;
        overflow: hidden;
    }
    .configBTN {
        z-index: 99999999;
        opacity: 1;
        bottom: -20px;
        width: auto;
        right: 3%;
        left: inherit;
    }
    .configBTNOn {
        width: auto;
    }
    .configBTN .bookIcon {
        display: block;
        float: none;
        height: 27px;
        margin: 12px auto;
        width: 43px;
        padding: 0px;
    }

    .BTN {
        border-radius: 100px 100px 100px 100px;
        -moz-border-radius: 100px 100px 100px 100px;
        -webkit-border-radius: 100px 100px 100px 100px;
    }
    .configBTNTxt {
        display: none
    }
    .copy,
    .social,
    .credit {
        float: left;
        width: 100%;
        text-align: center;
        margin: 0 0 10px 0;
    }
    .lastline {
        width: 100%;
        float: left;
        margin: 30px 0 10px 0;
    }
    .contentpart2spalten .Infotextpart {
        float: left;
        width: 100%;
        margin: 20px 0 0 0;
    }
    .contentpart .Infotextpart h3.boxtitel,
    .boxtitel {
        font-size: 25px;
        line-height: 30px;
    }
    .Infotextboxenright {
        float: LEFT;
        width: 100%;
        margin: 20px 0 0 0;
    }
    .contentpartHinweis .boxtitel {
        text-align: center;
    }
    .contentpartHinweis .bgorange {
        padding: 34px 0 15px 0;
    }
    html,
    body {
        font-size: 16px;
        line-height: 26px;
    }
    .contentpart .sectionHLsub h2 {
        font-size: 30px;
        line-height: 40px;
        margin: 20px 0 0px 0;
    }
    .teamitem {
        float: left;
        width: 100%;
        margin: 20px 0% 0px 0;
    }
    .scriptrow {
        width: 100%;
        float: left;
        margin: 10px 0 10px 0;
    }
    .scriptrowTitel {
        width: 100%;
        margin: 15px 0 15px 0;
        height: auto;
        text-align: center;
    }
    .scriptrowPrice {
        font-size: 16px;
        float: none;
        margin: 0px 0 10px 0;
        text-align: center;
    }
    h2,
    h3,
    h4,
    h5 {
        font-size: 20px;
        line-height: 22px;
    }
    /* Überschriften auf kleinen Bildschirmen weiter verkleinern, H1 halbfett */
    .contentpartPage .entry-content h1,
    .contentpartHome .entry-content h1,
    body .contentpartPage .entry-content h1,
    body .contentpartHome .entry-content h1 {
        font-size: 36px !important;
        line-height: 1.25 !important;
        font-weight: 600 !important;
    }
    .contentpartPage .entry-content h2,
    .contentpartHome .entry-content h2 {
        font-size: 22px !important;
        line-height: 30px !important;
    }
    .contentpartPage .entry-content h3,
    .contentpartHome .entry-content h3 {
        font-size: 20px !important;
        line-height: 28px !important;
    }
    .contentpartPage .entry-content h4,
    .contentpartHome .entry-content h4 {
        font-size: 18px !important;
        line-height: 26px !important;
    }
    .contentpartPage .entry-content h5,
    .contentpartHome .entry-content h5 {
        font-size: 17px !important;
        line-height: 24px !important;
    }
    .contentpartPage .entry-content h6,
    .contentpartHome .entry-content h6 {
        font-size: 15px !important;
        line-height: 22px !important;
    }
    .scriptrowbox {
        width: 100%;
        float: left;
        margin: 20px 0 20px 0;
    }
    .btnBox2 {
        margin-left: 0px;
    }
    .contentpartTextbox .boxtext.inputext {
        min-height: 1px;
        margin: 0 0% 20px 0;
        float: left;
        width: 100%;
    }
    .topunternehmen {
        width: 80px;
    }
    .imagepart1 {
        width: 100%;
        float: left;
    }
    .imagepart2 {
        float: left;
        width: 100%;
        margin: 15px 0 0 0;
    }
    .countselect {
        /*font-size: larger;
        text-align: center;
        height: 48px; */

        display: flex;
        align-items: center;
        justify-content: center;
        height: 50px;
    }
    .bindungsrow .selectRowInputs {
        width: 94%;
    }
    .praegungsrow .countselector50 .countselect,
    .praegungsrow .countselector50 #EinbandTyp_Elefantenpapier,
    .praegungsrow .countselector50 #EinbandTyp_Kunstleder,
    .praegungsrow .countselector50 #EinbandTyp_Bibliotheksgewebe,
    .praegungsrow .countselector50 #EinbandTyp_Specials {
        border-radius: 16px 16px 16px 16px;
        width: 100%;
        margin-bottom: 9px;
    }
    .coloritem {
        width: 24%;
        height: 80px;
        margin: 20px 22 -7px 0;
    }
    .selectPartContentLeft .praegungsbox .selectRowLabel {
        width: 100%;
        float: left;
    }
    .praegungsrow .praegungsbox .selectRowInputs {
        margin: 0px 0 0 0;
        width: 100%;
    }
    .bookprevimg {
        position: relative;
        left: 0px;
        top: 0px;
        width: 100%;
        height: 307px;
        display: block;
        float: left;
    }
    .booktext.titel-bookfront {
        width: 214px;
        text-align: center;
        left: 50%;
        margin: -90px 0 0 -28px;
        top: 50%;
        font-size: 10px;
    }
    .fileuploadBTN {
        width: 98%;
        height: 27px;
        padding: 2px 0px 0 0;
        margin: 0 0% 0 0;
    }
    .fileuploadinput {
        width: 89% !important;
        margin: 20px 0 0 0;
        height: 46px !important;
    }
    .fileinfo {
        width: 100%;
    }
    .checkoutpart .woocommerce form .form-row label,
    .woocommerce-page form .form-row label {
        width: 100%;
    }
    #place_order {
        font-size: 20px;
        width: 100%;
        height: 68px;
        float: left;
        padding: 5px 0 0 0;
        margin: 58px 0px -150px -17px;
        margin-bottom: -150px;
    }
    .contentpart2BildText .featuredBox:last-child,
    .contentpart2BildText .featuredBox:last-child .boxHL,
    .contentpart2BildText .featuredBox:last-child .featuredBoxInner .btnBox {
        text-align: left;
    }
    .contentpart2iconboxen .featuredBox .boxHL {
        font-size: 25px;
        line-height: 30px;
    }
    .contentpartTextImage .btnBox {
        margin: 7px 2% 0 0;
        max-width: 98%;
    }
    .bildtextline {
        text-align: left;
    }
    .contentpartNewsrow .BTN {
        padding: 11px 30px;
    }
    .footerBox_1,
    .footerBox_2,
    .footerBox_4 {
        display: block
    }
    .footermobBTN {
        display: none;
        position: relative;
        top: 15px;
        margin: 10px auto 20px auto;
        width: 35px;
        cursor: pointer;
    }
    .footermobBTN span {
        display: block;
        float: left;
        height: 4px;
        width: 100%;
        margin: 0 0 6px 0;
        background: #222831;
    }
    .footermobnavOn .footermobBTN {
        display: none;
    }
    .footermobnavOn .footerBox_1,
    .footermobnavOn .footerBox_2,
    .footermobnavOn .footerBox_4 {
        display: block;
    }
    .woocommerce ul.products[class*="columns-"] li.product,
    .woocommerce-page ul.products[class*="columns-"] li.product {
        width: 100% !important;
        float: none !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }
    .contentpartInner ul.products.columns-4,
    div.contentpartCenter div.contentpartInner ul.products.columns-4,
    body.shop-main-page .woocommerce ul.products,
    body.woocommerce-shop .woocommerce ul.products,
    body.post-type-archive-product .woocommerce ul.products {
        display: flex !important;
        flex-direction: column !important;
        margin-left: 0 !important;
        width: 100% !important;
    }
    .dsvgotext {
        font-size: 14px;
        line-height: 20px;
    }
    .anfragesendenbtncancel,
    .anfragesendenbtn {
        width: 100%;
        margin: 0 0 20px 0;
    }
    .sendinfo {
        text-align: center;
        font-size: 15px;
        margin: 8px 0px 0 0px;
    }
    .bikeconfigactive .configanfrage-layer {
        top: 353px;
    }
    .bike-Anmerkungen .anmerkungInput {
        width: 100%;
        height: 50px;
        text-align: left;
        padding: 10px 0 0 2%;
    }
    .woocommerce form .form-row .select2-container {
        width: 100%;
        line-height: 02em;
        max-width: 100%;
    }
    .shopprouctlist .teaserproduktbox,
    .shopprouctlist .teaserproduktbox:nth-child(2n),
    .shopprouctlist .teaserproduktbox:nth-child(3n) {
        width: 100%;
    }
    .shopprouctlist .Productpreis strong,
    .shopprouctlist .Productpreis b {
        line-height: 14px;
        display: block;
        margin: 10px 0 0 0;
        font-size: 14px;
    }
    .noHeaderimage .headerTxt {
        width: 100%;
    }
    .single-product .woocommerce div.product form.cart div.quantity {
        float: left;
        margin: 0 0px 0 0;
    }
    .woocommerce .button {
        width: 100%;
    }
    .checkoutpart .woocommerce-input-wrapper {
        width: 95%;
    }
    .gutgemachtbox {
        height: 190px;
    }
    .agbcheckboxinfotext {
        width: 83%;
    }
    #order_review {
        float: left;
        width: 100%;
        overflow: scroll;
    }
    .woocommerce table.shop_table td,
    .woocommerce table.shop_table th {
        max-width: 200px;
        margin: 0 10px 0 0;
    }
    .product-name {
        overflow: hidden;
        display: block;
        border-right: 1px solid #cccccc;
    }
    .bike-Papier{
        margin: 0px 0 120px 0;
    }
    .plotconfig .selectRowInputs,
    .bikeconfig .selectRowInputs {
        width: 100%;
    }
    .countselectorAussenbereich , .countselectorAussenbereich .countselect ,.countselectorBeschichtet, .countselectorBeschichtet .countselect, .bikeAbholung , .bikeAbholung .countselect, .bikePapier , .bikebike, .bikebike .countselect, .bike-Format {
        /*padding-top: 20px;*/ /*----------------kann kaputt machen--------*/
        height: 50px;
    }
    .countselect .breakText {
        margin-bottom : 0px;
    }
    .countselector .countselect .smaller {
        margin: 102px 0 0 0 !important;
        font-size: 50%;
    }
    .mobile-only {
        display: block;
    }

    html,
    body,
    div,
    span,
    applet,
    object,
    iframe,
    h1,
    h2,
    h3,
    h4,
    h5,
    h6,
    p,
    blockquote,
    pre,
    a,
    abbr,
    acronym,
    address,
    big,
    cite,
    code,
    del,
    dfn,
    em,
    img,
    ins,
    kbd,
    q,
    s,
    samp,
    small,
    strike,
    strong,
    sub,
    sup,
    tt,
    var,
    b,
    u,
    i,
    center,
    dl,
    dt,
    dd,
    ol,
    ul,
    li,
    fieldset,
    form,
    label,
    legend,
    table,
    caption,
    tbody,
    tfoot,
    thead,
    tr,
    th,
    td,
    article,
    aside,
    canvas,
    details,
    embed,
    figure,
    figcaption,
    footer,
    header,
    hgroup,
    menu,
    nav,
    output,
    ruby,
    section,
    summary,
    time,
    mark,
    audio,
    video {
        font-size: 100%;
        font: inherit;
        padding: 0;
        border: 0;
        /*margin-top: 10px;*/
        vertical-align: baseline
    }
    .menu-item, .menu-item-object-pa {
        color: #ffffff !important;
    }
    .navipart .mainmenuTop li .sub-menu li a {
        display: block;
        width: 90%;
        float: none;
        -webkit-transition: all 350ms;
        -moz-transition: all 350ms;
        -o-transition: all 350ms;
        transition: all 350ms;
    }

    .bikecolor_cb .bike_cbSites {
        display: block;
        margin-top: 40px !important;
    }
    .bikecolor_ca .bike_caSites {
        display: block;
        margin-top: 40px !important;
    }


    /*KonfigBTN*/

    .configBTN .BTN:hover .bookIcon_white {
        display: block;
        float: none;
        height: 27px;
        margin: 12px auto;
        width: 43px;
        padding: 0px;
    }


    
     .wmc-content {
        width: 400px;
        margin: 20% !important;
    }
    .wmc-cart-wrapper:hover .wmc-content {
        margin: 20% !important;
    }

    .countselector50 .spiralcolorselect .countselect {
        width: 30% !important;
    }
    .mt-50 {
        margin: 65px !important;
    }

    #Konfigurator-Menge {
        margin: 14% 0 0 0 !important;
    }
    #sonderformat {
        text-align: left !important;
    }
    .selectRow.RowBike.bike-FrameSize {
        margin: 10% 0 0 0 !important;
    }
    #mobile-br {
        margin-bottom: 66px !important;
    }
    .countselector.countselectorUnbeschichtet.subselector.mt-50.subselectorOn,
    .countselector.countselectorBeschichtet.subselector.mt-50.subselectorOn,
    .countselector.countselectorAussenbereich.subselector.mt-50.subselectorOn {
        margin: 0 0 0 0 !important;
    }
    .countselector.countselectorfileupload.subselector.mt-50.subselectorOn {
        margin: 10px 0 0 0 !important;
    }
    .fileinput {
    width: 100%;
    float: left;
    height: 21px;
    text-align: center;
    font-size: 9px;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    margin: 8px 0 0 3px;
    padding: 0 0 0 0;
    text-align: left;
    font-style: italic;
    position: absolute;
    top: 9px;
    appearance: none;
    -webkit-appearance: none;
    }
    /*Phone UI en*/
    .lang_en .navipart .mainmenuTop li {
    margin: -10px 0px 0 0px;
    padding: 5px 8px;
}
    /*search*/
    /* Search functionality removed */
    .menu-item a {
        text-align: center;
    }
    .navipart .mainmenuTop li, .navipart .mainmenuTop li:hover {
        text-align: center;
    }
    .menu-meta-container, .menu-meta-en-container {
        margin: 0 52px 0 -7px;
        width: inherit;
    }
    .navipart .metaenuTop li a {
        margin: 0 2px 0 0;
        font-size: 11px;

    }
    .contentpartKonfigurator .selectPartContent {
        float: left;
        width: 95% !important;
        margin-left: 2% !important;
        position: unset;
    }

    .contentpartKonfigurator .konfigurator-step-bar-wrap {
        width: 95% !important;
        margin-left: 2%;
    }
    .team_position {
    font-size: 16px;
    float: left;
    width: 100%;
    margin: 6px 0 20px 0;
    }
    .contentpartproductlist .addtocartlink {
    margin: 10px 0 0 8px;
    background-color: #ffffff;
    font-size: 8px;
    display: block;
    }
    .shopprouctlist .teaserproduktbox:hover .addtocartlink:hover .addtocartlink:hover a {
    bottom: 0px;
    display: grid;
    }
    .contentpart5iconboxen .featuredBox .boxtext {
    /*Fois des wos hinn mocht zerstör I den*/
        min-height: 0px;
    }
    .Infotextpart.trans, .iconbox {
        text-align: center;
    }
    .boxtext.inputext {
        margin-top: 10px !important;
    }
    .bindungsrowActive .activelayerRight {
        display: contents;
    }
    .single_add_to_cart_button.button.alt {
        margin: 4px 0 0 0 !important;
    }
    .single-product .woocommerce div.product form.cart .variations select {
    -moz-appearance: none;
    -webkit-appearance: none;
    appearance: none;
    float: left !important;
    height: 33px;
    min-width: inherit !important;
    border: 1px solid #222831 !important;
    text-align: left !important;
    text-align-last: left;
    border-radius: 10px !important;
    font-size: 16px;
    font-family: 'Montserrat', sans-serif !important;
    margin: 0 !important;
    padding: 5px 36px 5px 12px;
    width: auto;
    min-width: 100px;
    background-color: #ffffff !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23222831' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 10px center;
    background-size: 16px;
    color: #222831 !important;
    cursor: pointer;
    }
/*    .ExemplareSelect.countselect.transAll,
    .FormatSelect.countselect.transAll.InputDeActive,
    .BikeSelect.countselect.transAll,
    .AusrichtungSelect.countselect.countselectw50.transAll.radius-l,
    .PapiertypSelect.countselect.transAll,
    .selectrowlabel {
        display: inline-block !important;
        text-align: center;
        margin: 1 0 0 0 !important;
    }*/
    /*----------konfigurator----------*/

    /*----------konfigurator end------*/
    .RowBike .countselect,
    .PapierSelect.countselect.transAll {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: center !important;
        min-height: 50px !important;
        height: 100% !important;
    }
    
    .countselector {
        display: flex !important;
        align-items: stretch !important;
    }
    .product-price, .product-name, .product-quantity, .product-subtotal {
        border: solid 1px #cccccc;
    }
    .infotextboxItem.inputext.trans {
        padding: 8px !important;
    }
    #exemplare_manuell,
    #seitenanzahl,
    #Menge,
    #farbikesitesanzahl {
        padding: 0 0 0 0;
    }
}

/* Gutenberg Full-Width and Wide Block Support */
/* Full-width blocks break out of content container to viewport width */
.contentpartInner .alignfull,
.entry-content .alignfull,
.wp-block-group.alignfull,
.wp-block-cover.alignfull,
.wp-block-image.alignfull,
.wp-block-gallery.alignfull,
.wp-block-columns.alignfull,
.alignfull {
    width: 100vw;
    max-width: 100vw;
    position: relative;
    left: 50%;
    right: 50%;
    margin-left: -50vw;
    margin-right: -50vw;
}

/* Columns block: child columns must not inherit full width of parent */
.wp-block-columns.alignfull .wp-block-column,
.wp-block-columns.alignwide .wp-block-column {
    width: auto;
    max-width: none;
}

/* Wide blocks are wider than content but not full viewport */
.contentpartInner .alignwide,
.entry-content .alignwide,
.wp-block-group.alignwide,
.wp-block-cover.alignwide,
.wp-block-image.alignwide,
.wp-block-gallery.alignwide,
.wp-block-columns.alignwide {
    max-width: 1400px;
    width: min(1400px, calc(100vw - 120px));
    position: relative;
    left: 50%;
    transform: translateX(-50%);
    overflow: visible;
}
/* WooCommerce Blocks (checkout/cart) sollen NICHT per alignwide verschoben werden */
.entry-content .wp-block-woocommerce-checkout.alignwide,
.entry-content .wp-block-woocommerce-cart.alignwide,
.contentpartInner .wp-block-woocommerce-checkout.alignwide,
.contentpartInner .wp-block-woocommerce-cart.alignwide {
    position: static !important;
    left: auto !important;
    transform: none !important;
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}

.main_header_columns {
    transform: none !important;
    left: 0% !important;
}

/* Header image text should match alignwide horizontal position */
.header-image-text {
    max-width: 1400px;
    width: min(1400px, calc(100vw - 120px));
    position: relative;
    left: 50%;
    transform: translateX(-50%);
    margin-left: auto;
    margin-right: auto;
}

/* Full-width background for alignwide blocks */
.contentpartInner .alignwide::before,
.entry-content .alignwide::before,
.wp-block-group.alignwide::before,
.wp-block-cover.alignwide::before,
.wp-block-image.alignwide::before,
.wp-block-gallery.alignwide::before,
.wp-block-columns.alignwide::before {
    content: '';
    position: absolute;
    top: 0;
    left: 50%;
    width: 100vw;
    margin-left: -50vw;
    height: 100%;
    z-index: -1;
    background: inherit;
}

/* Responsive adjustments for full-width blocks */
@media screen and (max-width: 1023px) {
    .contentpartInner .alignfull,
    .entry-content .alignfull,
    .wp-block-group.alignfull,
    .wp-block-cover.alignfull,
    .wp-block-image.alignfull,
    .wp-block-gallery.alignfull,
    .wp-block-columns.alignfull {
        margin-left: -50vw;
        margin-right: -50vw;
        width: 100vw;
        max-width: 100vw;
        left: 50%;
        right: 50%;
    }
    
    .contentpartInner .alignwide,
    .entry-content .alignwide,
    .wp-block-group.alignwide,
    .wp-block-cover.alignwide,
    .wp-block-image.alignwide,
    .wp-block-gallery.alignwide,
    .wp-block-columns.alignwide {
        max-width: 1400px;
        width: min(1400px, calc(100vw - 60px));
        position: relative;
        left: 50%;
        transform: translateX(-50%);
    }
    .entry-content .wp-block-woocommerce-checkout.alignwide,
    .entry-content .wp-block-woocommerce-cart.alignwide,
    .contentpartInner .wp-block-woocommerce-checkout.alignwide,
    .contentpartInner .wp-block-woocommerce-cart.alignwide {
        position: static !important;
        left: auto !important;
        transform: none !important;
        width: 100% !important;
        max-width: 100% !important;
    }
    
    .header-image-text {
        max-width: 1400px;
        width: min(1400px, calc(100vw - 60px));
        position: relative;
        left: 50%;
        transform: translateX(-50%);
    }
    
    /* Full-width background for alignwide blocks on tablet */
    .contentpartInner .alignwide::before,
    .entry-content .alignwide::before,
    .wp-block-group.alignwide::before,
    .wp-block-cover.alignwide::before,
    .wp-block-image.alignwide::before,
    .wp-block-gallery.alignwide::before,
    .wp-block-columns.alignwide::before {
        width: 100vw;
        margin-left: -50vw;
    }
    /* Spalten auf Tablet/Mobile untereinander stapeln */
    .entry-content .wp-block-columns,
    .contentpartInner .wp-block-columns {
        flex-wrap: wrap;
    }
    .entry-content .wp-block-columns .wp-block-column,
    .contentpartInner .wp-block-columns .wp-block-column {
        flex: 1 1 100% !important;
        width: 100% !important;
        max-width: 100% !important;
    }
}

@media screen and (max-width: 600px) {
    .contentpartInner .alignfull,
    .entry-content .alignfull,
    .wp-block-group.alignfull,
    .wp-block-cover.alignfull,
    .wp-block-image.alignfull,
    .wp-block-gallery.alignfull,
    .wp-block-columns.alignfull {
        margin-left: -50vw;
        margin-right: -50vw;
        width: 100vw;
        max-width: 100vw;
        left: 50%;
        right: 50%;
    }
    
    .contentpartInner .alignwide,
    .entry-content .alignwide,
    .wp-block-group.alignwide,
    .wp-block-cover.alignwide,
    .wp-block-image.alignwide,
    .wp-block-gallery.alignwide,
    .wp-block-columns.alignwide {
        max-width: 100%;
        width: calc(100vw - 40px);
        position: relative;
        left: 50%;
        transform: translateX(-50%);
    }
    .entry-content .wp-block-woocommerce-checkout.alignwide,
    .entry-content .wp-block-woocommerce-cart.alignwide,
    .contentpartInner .wp-block-woocommerce-checkout.alignwide,
    .contentpartInner .wp-block-woocommerce-cart.alignwide {
        position: static !important;
        left: auto !important;
        transform: none !important;
        width: 100% !important;
        max-width: 100% !important;
    }
    
    .header-image-text {
        max-width: 100%;
        width: calc(100vw - 40px);
        position: relative;
        left: 50%;
        transform: translateX(-50%);
    }
    
    /* Full-width background for alignwide blocks on mobile */
    .contentpartInner .alignwide::before,
    .entry-content .alignwide::before,
    .wp-block-group.alignwide::before,
    .wp-block-cover.alignwide::before,
    .wp-block-image.alignwide::before,
    .wp-block-gallery.alignwide::before,
    .wp-block-columns.alignwide::before {
        width: 100vw;
        margin-left: -50vw;
    }

    .wc-block-components-order-summary-item__description {
        padding-top: 15px !important;
    }
    .wc-block-cart-item__prices {
        padding-top: 55px !important;
    }
}
/* Sehr kleine Bildschirme: Überschriften noch etwas kleiner */
@media screen and (max-width: 480px) {
    .contentpartPage .entry-content h1,
    .contentpartHome .entry-content h1,
    body .contentpartPage .entry-content h1,
    body .contentpartHome .entry-content h1 {
        font-size: 30px !important;
        line-height: 1.3 !important;
        font-weight: 600 !important;
    }
    .contentpartPage .entry-content h2,
    .contentpartHome .entry-content h2 {
        font-size: 20px !important;
        line-height: 28px !important;
    }
    .contentpartPage .entry-content h3,
    .contentpartHome .entry-content h3 {
        font-size: 18px !important;
        line-height: 26px !important;
    }
    .contentpartPage .entry-content h4,
    .contentpartHome .entry-content h4 {
        font-size: 17px !important;
        line-height: 24px !important;
    }
    .contentpartPage .entry-content h5,
    .contentpartHome .entry-content h5 {
        font-size: 16px !important;
        line-height: 22px !important;
    }
    .contentpartPage .entry-content h6,
    .contentpartHome .entry-content h6 {
        font-size: 14px !important;
        line-height: 20px !important;
    }
}

/* Ensure Gutenberg paragraph blocks are constrained */
.wp-block-paragraph,
.entry-content .wp-block-paragraph,
.contentpartInner .wp-block-paragraph {
    max-width: 100%;
    word-wrap: break-word;
    overflow-wrap: break-word;
    box-sizing: border-box;
}

/* Ensure blocks maintain proper spacing */
.entry-content > .alignwide + *,
.entry-content > .alignfull + * {
    margin-top: 2em;
}

* + .entry-content > .alignwide,
* + .entry-content > .alignfull {
    margin-top: 2em;
}

/* Home main image: full-width cover block – larger height */
.wp-block-cover.home-mainimage,
.home .entry-content > .wp-block-cover.alignfull:first-of-type {
    min-height: 600px !important;
}

@media screen and (max-width: 1023px) {
    .wp-block-cover.home-mainimage,
    .home .entry-content > .wp-block-cover.alignfull:first-of-type {
        min-height: 50vh !important;
        min-height: min(50vh, 480px) !important;
    }
    .home .entry-content > .wp-block-cover.alignfull:first-of-type .wp-block-cover__inner-container {
        padding: 1.5rem 5%;
    }
}

@media screen and (max-width: 767px) {
    .wp-block-cover.home-mainimage,
    .home .entry-content > .wp-block-cover.alignfull:first-of-type {
        min-height: 45vh !important;
        min-height: min(45vh, 380px) !important;
    }
    .home .entry-content > .wp-block-cover.alignfull:first-of-type .wp-block-cover__inner-container {
        padding: 1rem 5%;
    }
}

/* Cover-Bereich auf Produktseiten (Scout/Ranger): Text auf Tablet kleiner */
@media screen and (max-width: 1023px) {
    .single-product .wp-block-cover .wp-block-cover__inner-container h1,
    .single-product .wp-block-cover .wp-block-cover__inner-container h2,
    .single-product .wp-block-cover .wp-block-cover__inner-container .has-large-font-size,
    .single-product .wp-block-cover .wp-block-cover__inner-container p {
        font-size: 1.5rem !important;
        line-height: 1.35 !important;
    }
    .single-product .wp-block-cover .wp-block-cover__inner-container h1 {
        font-size: 1.75rem !important;
    }
    .BTN {
        font-size: 16px !important;
    }
}

@media screen and (max-width: 767px) {
    .single-product .wp-block-cover .wp-block-cover__inner-container h1,
    .single-product .wp-block-cover .wp-block-cover__inner-container h2,
    .single-product .wp-block-cover .wp-block-cover__inner-container .has-large-font-size,
    .single-product .wp-block-cover .wp-block-cover__inner-container p {
        font-size: 1.25rem !important;
        line-height: 1.35 !important;
    }
    .single-product .wp-block-cover .wp-block-cover__inner-container h1 {
        font-size: 1.4rem !important;
    }
}

@media screen and (max-width: 480px) {
    .single-product .wp-block-cover .wp-block-cover__inner-container h1 {
        font-size: 1.2rem !important;
    }
    .single-product .wp-block-cover .wp-block-cover__inner-container h2,
    .single-product .wp-block-cover .wp-block-cover__inner-container .has-large-font-size,
    .single-product .wp-block-cover .wp-block-cover__inner-container p {
        font-size: 1.1rem !important;
    }
    .BTN,
    .contentpartPage .entry-content .wp-block-button__link,
    .contentpartPage .entry-content a.BTN {
        font-size: 13px !important;
        padding: 10px 12px !important;
    }
}

@media screen and (max-width: 380px) {
    .single-product .woocommerce div.product form.cart div.quantity {
        display: block;
        margin: 15px 0px;
        width: 100%;
    }
}

/* Gutenberg Gallery Block - Single Row with Horizontal Scroll */
.wp-block-gallery,
.blocks-gallery-grid {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    gap: 1em !important;
    padding: 1em 0 !important;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none; /* Hide scrollbar in Firefox */
    -ms-overflow-style: none; /* Hide scrollbar in IE and Edge */
    position: relative;
    cursor: grab;
    user-select: none;
    flex: 1 1 auto;
}

.wp-block-gallery:active,
.blocks-gallery-grid:active {
    cursor: grabbing;
}

/* Gallery wrapper for arrows positioning */
.gallery-wrapper {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 15px;
    max-width: 1100px;
    margin: 0 auto;
    padding: 0 20px;
}

/* Hide scrollbar in Chrome, Safari, and Opera */
.wp-block-gallery::-webkit-scrollbar,
.blocks-gallery-grid::-webkit-scrollbar {
    display: none;
}

/* Gallery Navigation Arrows - positioned on sides */
.gallery-nav-arrow {
    position: relative;
    width: 44px;
    height: 44px;
    min-width: 44px;
    background-color: #222831;
    border: none;
    border-radius: 50%;
    cursor: pointer;
    z-index: 10;
    opacity: 1;
    transition: opacity 0.3s ease, transform 0.2s ease;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    pointer-events: auto;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
    flex-shrink: 0;
}

.gallery-nav-arrow.visible {
    opacity: 1;
    pointer-events: auto;
}

.gallery-nav-arrow:hover {
    opacity: 1;
    transform: scale(1.1);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
}

.gallery-nav-arrow:active {
    transform: scale(0.95);
}

.gallery-nav-arrow.disabled {
    opacity: 0.4;
    cursor: not-allowed;
    pointer-events: none;
}

.gallery-nav-arrow.disabled:hover {
    transform: scale(1);
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
}

.gallery-nav-arrow svg {
    width: 22px;
    height: 22px;
}

/* Ranger/Galerie und andere Galerien auf schmalen Screens: Bilder kleiner, Pfeile IM Bild */
@media screen and (max-width: 767px) {
    .gallery-wrapper {
        position: relative;
        max-width: 100%;
        width: 100%;
        padding: 0;
        margin: 0 auto;
        justify-content: center;
        gap: 0;
    }
    .wp-block-gallery,
    .blocks-gallery-grid {
        padding: 1em 0 !important;
    }
    /* Galerie-Bilder auf Mobile kleiner darstellen, damit mehr vom Bild sichtbar ist */
    .wp-block-gallery .blocks-gallery-item,
    .wp-block-gallery .wp-block-image,
    .blocks-gallery-grid .blocks-gallery-item {
        min-width: 65vw !important;
        max-width: 75vw !important;
    }
    .gallery-nav-arrow {
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        width: 32px;
        height: 32px;
        background-color: rgba(34, 40, 49, 0.85);
    }
    .gallery-nav-left {
        left: 8px;
    }
    .gallery-nav-right {
        right: 8px;
    }
}

/* Gallery images - clickable */
.wp-block-gallery img,
.blocks-gallery-grid img {
    cursor: pointer;
    transition: transform 0.2s ease;
}

.wp-block-gallery img:hover,
.blocks-gallery-grid img:hover {
    transform: scale(1.02);
}

/* Image Lightbox Modal */
body.lightbox-open {
    overflow: hidden;
}

.gallery-lightbox {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.95);
    z-index: 9999;
    align-items: center;
    justify-content: center;
    cursor: pointer;
}

.gallery-lightbox.active {
    display: flex;
}

.gallery-lightbox img {
    max-width: 90%;
    max-height: 90%;
    object-fit: contain;
    cursor: default;
    pointer-events: none;
}

.gallery-lightbox-close {
    position: absolute;
    top: 20px;
    right: 20px;
    width: 40px;
    height: 40px;
    background-color: #222831;
    color: white;
    border: none;
    border-radius: 50%;
    font-size: 24px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 10000;
    transition: transform 0.2s ease;
    line-height: 1;
}

.gallery-lightbox-close:hover {
    transform: scale(1.1);
}

.wp-block-gallery .blocks-gallery-item,
.wp-block-gallery .wp-block-image,
.blocks-gallery-grid .blocks-gallery-item {
    flex: 0 0 auto !important;
    min-width: 200px !important;
    max-width: 300px !important;
    width: auto !important;
}

.wp-block-gallery .blocks-gallery-item figure,
.wp-block-gallery .wp-block-image figure,
.blocks-gallery-grid .blocks-gallery-item figure {
    margin: 0 !important;
    width: 100% !important;
    height: auto !important;
}

.wp-block-gallery .blocks-gallery-item img,
.wp-block-gallery .wp-block-image img,
.blocks-gallery-grid .blocks-gallery-item img {
    width: 100% !important;
    height: auto !important;
    object-fit: cover !important;
    display: block !important;
}

/* Single image block: img inside figure full width */
.wp-block-image figure img {
    width: 100%;
    max-width: 100%;
    height: auto;
    display: block;
}

.handbikes-home-center {
    text-align: center;
}

/* YouTube/embed blocks: 100% width inside block */
.wp-block-embed,
.wp-block-embed-youtube,
.wp-embed-aspect-16-9,
.wp-embed-aspect-21-9,
.wp-embed-aspect-4-3,
.wp-embed-aspect-1-1 {
    width: 100%;
    max-width: 100%;
}

.wp-block-embed iframe,
.wp-block-embed-youtube iframe,
.wp-embed-aspect-16-9 iframe,
.wp-embed-aspect-21-9 iframe,
.wp-embed-aspect-4-3 iframe,
.wp-embed-aspect-1-1 iframe {
    width: 100%;
    max-width: 100%;
    display: block;
}

.wp-block-embed .wp-block-embed__wrapper,
.wp-block-embed-youtube .wp-block-embed__wrapper {
    width: 100%;
}

/* Contact Form 7 Styling */
.wpcf7-form {
    max-width: 800px;
    margin: 0 auto;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
}

.wpcf7-form p {
    margin: 0 0 20px 0;
}

.wpcf7-form label {
    display: block;
    margin-bottom: 8px;
    font-size: 14px;
    color: #222831;
}

.wpcf7-form .wpcf7-form-control-wrap {
    display: block;
    width: 100%;
}

.wpcf7-form input[type="text"],
.wpcf7-form input[type="email"],
.wpcf7-form input[type="tel"],
.wpcf7-form input[type="url"],
.wpcf7-form input[type="number"],
.wpcf7-form select {
    width: 100%;
    padding: 12px 15px;
    border: 1px solid #D9D9D9;
    border-radius: 8px;
    font-size: 16px;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    background-color: #ffffff;
    color: #222831;
    box-sizing: border-box;
    transition: border-color 0.3s ease, box-shadow 0.3s ease;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

.wpcf7-form input[type="text"]:focus,
.wpcf7-form input[type="email"]:focus,
.wpcf7-form input[type="tel"]:focus,
.wpcf7-form input[type="url"]:focus,
.wpcf7-form input[type="number"]:focus,
.wpcf7-form select:focus {
    outline: none;
    border-color: #222831;
    box-shadow: 0 0 0 3px rgba(30, 64, 62, 0.1);
}

.wpcf7-form select {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23222831' d='M6 9L1 4h10z'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 15px center;
    background-size: 12px;
    padding-right: 40px;
    cursor: pointer;
}

.wpcf7-form textarea {
    width: 100%;
    padding: 12px 15px;
    border: 1px solid #D9D9D9;
    border-radius: 8px;
    font-size: 16px;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    background-color: #ffffff;
    color: #222831;
    box-sizing: border-box;
    min-height: 150px;
    resize: vertical;
    transition: border-color 0.3s ease, box-shadow 0.3s ease;
}

.wpcf7-form textarea:focus {
    outline: none;
    border-color: #222831;
    box-shadow: 0 0 0 3px rgba(30, 64, 62, 0.1);
}

.wpcf7-form input[type="checkbox"] {
    width: 20px;
    height: 20px;
    margin: 0 10px 0 0;
    cursor: pointer;
    flex-shrink: 0;
    accent-color: #222831;
}

/* Custom styled radio buttons */
.wpcf7-form input[type="radio"] {
    width: 20px;
    height: 20px;
    margin: 0 10px 0 0;
    cursor: pointer;
    flex-shrink: 0;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border: 2px solid #D9D9D9;
    border-radius: 50%;
    background-color: #ffffff;
    position: relative;
    transition: all 0.3s ease;
    flex-shrink: 0;
}

.wpcf7-form input[type="radio"]:checked {
    border-color: #222831;
    background-color: #ffffff;
}

.wpcf7-form input[type="radio"]:checked::after {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background-color: #222831;
}

.wpcf7-form input[type="radio"]:hover {
    border-color: #222831;
}

.wpcf7-form input[type="radio"]:focus {
    outline: none;
    box-shadow: 0 0 0 3px rgba(30, 64, 62, 0.1);
}

.wpcf7-form .wpcf7-checkbox {
    display: flex;
    align-items: flex-start;
    margin: 10px 0;
}

.wpcf7-form .wpcf7-radio {
    display: flex;
    align-items: flex-start;
    margin: 25px 0 25px 0;
}

.wpcf7-form .wpcf7-list-item {
    display: flex;
    align-items: center;
    margin: 8px 0;
}

.wpcf7-form .wpcf7-list-item label {
    margin: 0;
    cursor: pointer;
    display: flex;
    align-items: center;
}

.wpcf7-form input[type="submit"],
.wpcf7-form .wpcf7-submit {
    background-color: #222831;
    color: #ffffff;
    border: 2px solid #222831;
    border-radius: 24px;
    padding: 12px 40px;
    font-size: 18px;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    cursor: pointer;
    transition: all 0.3s ease;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    display: inline-block;
    text-align: center;
    margin-top: 10px;
}

.wpcf7-form input[type="submit"]:hover,
.wpcf7-form .wpcf7-submit:hover {
    background-color: #1a1e24;
    color: #ffffff;
    border-color: #1a1e24;
    transform: translateY(-2px);
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.15);
}

.wpcf7-form input[type="submit"]:active,
.wpcf7-form .wpcf7-submit:active {
    transform: translateY(0);
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

.wpcf7-form input[type="submit"]:focus,
.wpcf7-form .wpcf7-submit:focus {
    outline: none;
    box-shadow: 0 0 0 3px rgba(34, 40, 49, 0.3);
}

.wpcf7-form .wpcf7-response-output {
    margin: 20px 0;
    padding: 15px;
    border-radius: 8px;
    font-size: 14px;
    line-height: 1.5;
}

.wpcf7-form .wpcf7-response-output.wpcf7-validation-errors {
    background-color: #fff3cd;
    border: 1px solid #ffc107;
    color: #856404;
}

.wpcf7-form .wpcf7-response-output.wpcf7-mail-sent-ok {
    background-color: #d4edda;
    border: 1px solid #222831;
    color: #222831;
}

.wpcf7-form .wpcf7-response-output.wpcf7-mail-sent-ng {
    background-color: #f8d7da;
    border: 1px solid #dc3545;
    color: #721c24;
}

.wpcf7-form .wpcf7-spinner {
    display: inline-block;
    margin-left: 10px;
}

/* Required field indicator */
.wpcf7-form .required {
    color: #F59B0A;
}

/* Responsive form styling */
@media screen and (max-width: 768px) {
    .wpcf7-form {
        padding: 0 15px;
    }
    
    .wpcf7-form input[type="text"],
    .wpcf7-form input[type="email"],
    .wpcf7-form input[type="tel"],
    .wpcf7-form input[type="url"],
    .wpcf7-form input[type="number"],
    .wpcf7-form select,
    .wpcf7-form textarea {
        font-size: 16px; /* Prevents zoom on iOS */
    }
    
    .wpcf7-form input[type="submit"],
    .wpcf7-form .wpcf7-submit {
        width: 100%;
        padding: 14px 20px;
    }
}

.wpcf7-list-item-label {
    padding-right: 25px;
}

/* Gutenberg Button Block Styling */
.wp-block-button__link,
.wp-block-button .wp-block-button__link,
.contentpartPage .entry-content .wp-block-button__link,
.contentpartHome .entry-content .wp-block-button__link,
.entry-content .wp-block-button__link {
    text-transform: uppercase;
    text-decoration: none !important;
    transition: all 0.3s ease;
}

.wp-block-button__link:hover,
.wp-block-button .wp-block-button__link:hover,
.contentpartPage .entry-content .wp-block-button__link:hover,
.contentpartHome .entry-content .wp-block-button__link:hover,
.entry-content .wp-block-button__link:hover {
    text-decoration: none !important;
    opacity: 0.85;
    transform: translateY(-2px);
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.15);
}

.wp-block-button__link:focus,
.wp-block-button .wp-block-button__link:focus,
.contentpartPage .entry-content .wp-block-button__link:focus,
.contentpartHome .entry-content .wp-block-button__link:focus,
.entry-content .wp-block-button__link:focus {
    text-decoration: none !important;
}

/* Pattern Kontakt: Text und Button zum Kontaktformular an Oberkante horizontal ausgerichtet */
.contact-block {
    padding-top: 20px;
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    gap: 1em 2em;
}
.contact-block .wp-block-group__inner-container {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    gap: 1em 2em;
    width: 100%;
}
.contact-block > * {
    flex-shrink: 0;
}

.contentpartPage .entry-content .technical-details p {
    margin: 0px;
}

.contentpartPage .entry-content .technical-details ul {
    list-style: none;
    margin: 0px;
    padding-left: 20px;
}

.technical-details .wp-block-list li {
    margin: 0px;
}

.technical-details {
    padding-bottom: 20px;   
}

.wp-block-image figure, .wp-block-image a{
    width: 100%;
}

.wp-block-image figure img {
    width: 100%;
    max-width: 100%;
    height: auto;
    display: block;
}

/* Center aligncenter figure / image block inside columns */
.wp-block-column figure.aligncenter,
.wp-block-column figure.wp-block-image.aligncenter,
.wp-block-column .wp-block-image.aligncenter,
.wp-block-column .wp-block-image.has-text-align-center,
.wp-block-column .aligncenter figure,
.wp-block-column .has-text-align-center figure {
    width: fit-content;
    max-width: 100%;
    margin-left: auto;
    margin-right: auto;
    display: block;
}

.wp-block-column .wp-block-image.aligncenter figure,
.wp-block-column .wp-block-image.has-text-align-center figure {
    width: 100%;
    max-width: 100%;
}

/* GDPR cookie banner */
.pk-cookie-banner {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 999999;
  background: #1a1a1a;
  color: #eee;
  padding: 1rem 1.5rem;
  box-shadow: 0 -2px 12px rgba(0, 0, 0, 0.2);
  font-size: 0.95rem;
}
.pk-cookie-banner-inner {
  max-width: 1200px;
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 1rem;
  justify-content: space-between;
}
.pk-cookie-banner-text {
  margin: 0;
  flex: 1 1 280px;
}
.pk-cookie-banner-text a.pk-cookie-privacy-link {
  color: #8fc9e8;
  text-decoration: underline;
}
.pk-cookie-banner-buttons {
  display: flex;
  gap: 0.75rem;
  flex-shrink: 0;
}
.pk-cookie-banner .pk-cookie-accept-all,
.pk-cookie-banner .pk-cookie-essential-only {
  padding: 0.5rem 1rem;
  cursor: pointer;
  border: 1px solid #555;
  background: #333;
  color: #fff;
  border-radius: 4px;
  font-size: 0.9rem;
}
.pk-cookie-banner .pk-cookie-accept-all:hover,
.pk-cookie-banner .pk-cookie-essential-only:hover {
  background: #444;
}
.pk-cookie-banner .pk-cookie-accept-all {
  background: #2d6a2d;
  border-color: #2d6a2d;
}
.pk-cookie-banner .pk-cookie-accept-all:hover {
  background: #3a7a3a;
}

/* GDPR embed placeholder (blocked external content until consent) */
.pk-embed-placeholder {
  background: #f0f0f0;
  border: 1px solid #ddd;
  border-radius: 4px;
  padding: 2rem;
  text-align: center;
  min-height: 120px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.pk-embed-placeholder-inner {
  color: #555;
  font-size: 0.95rem;
}
.pk-embed-placeholder .pk-cookie-load-embed {
  margin-left: 0.5rem;
  padding: 0.4rem 0.8rem;
  cursor: pointer;
  background: #333;
  color: #fff;
  border: none;
  border-radius: 4px;
  font-size: 0.9rem;
}
.pk-embed-placeholder .pk-cookie-load-embed:hover {
  background: #555;
}

/* Instagram feed placeholder (blocked until consent) – slightly taller to suggest feed layout */
.pk-instagram-feed-placeholder {
  min-height: 200px;
}

/* Reverse column order on mobile */
@media only screen and (max-width: 767px) {
    .wp-block-columns.mobile-reverse,
    .mobile-reverse .wp-block-columns {
        display: flex;
        flex-direction: column-reverse;
    }
}

/* Global hyphenation for small screens */
@media screen and (max-width: 767px) {
    body, p, h1, h2, h3, h4, h5, h6, li, td, th, a, span, label, blockquote, figcaption {
        -webkit-hyphens: auto;
        -ms-hyphens: auto;
        hyphens: auto;
        overflow-wrap: break-word;
    }
}

div.contentpartCenter div.contentpartInner ul.products.columns-4 {
    margin: 2rem 0 0 9% !important;
}
/* CONFIGURATOR TEMPORARILY HIDDEN */
.bike-configurator-button { display: none !important; }
