/* =================================================================
   BOS-Akademie – Custom Styles
   ================================================================= */

/* ausblenden von komischen Preis bei manchen Produkten */
.wc-gzd-additional-info.price-unit[aria-hidden="true"] {
    display: none !important;
}
body.page-id-63 .hestia-title{
  color:#FF2D21 !important;
  text-shadow: 0 2px 10px rgba(0,0,0,.18);
}

/* Overlay darf Klicks nicht abfangen */
.home .header-filter:before,
.home .header-filter:after{
  pointer-events: none !important;
}

/* Slider nach vorne holen, OHNE header-filter zu verschieben */
.home .header-filter .n2-ss-slider,
.home .header-filter .metaslider{
  position: relative;
  z-index: 5;
}

/* Slider im Hestia-Hero wie Hintergrund behandeln */
.header-filter.hestia-hero-slider{
  padding: 0;
  overflow: hidden;
}

/* Smart Slider 3: auf volle Hero-Höhe ziehen */
.header-filter.hestia-hero-slider .n2-ss-slider{
  height: 100% !important;
}
.header-filter.hestia-hero-slider .n2-ss-slider .n2-ss-slide-background{
  background-size: cover !important;
  background-position: center !important;
}

.sub-title {
    font-size: 2rem !important;
}
.category{
    visibility: hidden;
}

/* =========================================================
   BOS: SmartSlider Switch (cache-sicher)
   ========================================================= */
.home .bos-hero-slider--mobile { display: none !important; }
.home .bos-hero-slider--desktop { display: block !important; }

@media (max-width: 768px) {
  .home .bos-hero-slider--desktop { display: none !important; }
  .home .bos-hero-slider--mobile  { display: block !important; }
}

@media (max-width: 768px) {
    a.wc-block-checkout__login-prompt {
        margin-top: -70px !important;
    }
    .home .header-filter.hestia-hero-slider .n2-ss-layer h1,
    .home .header-filter.hestia-hero-slider .n2-ss-layer h2,
    .home .header-filter.hestia-hero-slider .n2-ss-layer p{
        padding: 2px 4px;
        border-radius: 1px;
        display: inline-block;
    }

    #carousel-hestia-generic{
        height: 100dvh !important;
        height: 100svh !important;
        overflow: hidden !important;
        padding-top: 70px !important;
        padding-bottom: env(safe-area-inset-bottom);
        box-sizing: border-box !important;
    }

    .home #carousel-hestia-generic .page-header,
    .home #carousel-hestia-generic .header-filter,
    .home #carousel-hestia-generic .header-filter.hestia-hero-slider,
    .home #carousel-hestia-generic .n2-ss-slider{
        height: 100% !important;
    }

    .user-greeting {
        color: #555 !important;
    }
    #carousel-hestia-generic .header-filter,
    #carousel-hestia-generic .header-filter.hestia-hero-slider{
        height: 100% !important;
        max-height: none !important;
        overflow: hidden !important;
        background-position: calc(100% + 80px) calc(100% + 30px);
        background-size: cover;
    }

    .hestia-big-title-content{
        font-weight:100;
        line-height: 1.3;
        padding-left:0px;
        justify-content: unset !important;
    }
    .hestia-big-title-content.h1{
        justify-content: left;
        font-size: 10px !important;
    }
    .big-title-slider-content .hestia-title{
        font-size: 22px !important;
    }
    .home .header-filter.hestia-hero-slider{
        margin-top: 0!important;
    }
    .big-title-slider-content{
        padding-left:0px;
        padding-top: 0px;
        align-items: top !important;
    }
    .home .big-title-slider-content{
        max-height: none !important;
    }

    .sub-title{
        font-size:12px !important;
        text-align: left;
        max-width: 140px;
    }
    .page-header .container{
        padding-top: 100px !important;
        margin-left: 0px;
    }
    .buttons{
        margin-top: 10px !important;
        width: 25%;
        padding-left: 0px;
    }
    .hestia-big-title-content .btn{
        width: 160px;
        font-size:10px !important;
        padding-left: 0px !important;
        padding-right: 0px !important;
        padding-top: 14px !important;
    }
    h1{ font-size: 20px; }
    h2{ font-size:18px; }
    h3{ font-size:16px; }
    h4{ font-size:14px; }
    p{ font-size:14px !important; }
    .wp-block-group{
        padding-left:4% !important;
        padding-right:4% !important;
    }
    .description{
        font-size: 14px !important;
    }
    .hestia-contact-form-col{
        margin-top: 20px;
    }
    #post-1165 .wp-block-columns {
        flex-direction: row;
        display: flex !important;
        flex-wrap: nowrap !important;
        justify-content: center;
    }
    #post-1165 .wp-block-column {
        width: 30% !important;
        min-width: 30%;
        max-width: 30%;
        flex: unset;
        white-space: nowrap;
        padding: 2px !important;
        box-sizing: border-box;
    }
    #post-1165 .wp-block-column p {
        font-size: 9px !important;
        word-wrap: break-word;
        white-space: normal;
        text-align: left;
        overflow-wrap: break-word;
        hyphens: auto;
    }
}

/* Tablet normal */
@media (min-width: 769px) and (max-width: 900px) {
    .home #carousel-hestia-generic {
        height: 72vw !important;
        max-height: 640px !important;
        overflow: hidden !important;
    }
}

/* Große Tablets */
@media (min-width: 901px) and (max-width: 1100px) {
    .home #carousel-hestia-generic {
        height: 64vw !important;
        max-height: 720px !important;
        overflow: hidden !important;
    }
}

@media (min-width: 769px) {
    .home #carousel-hestia-generic .header-filter.hestia-hero-slider,
    .home #carousel-hestia-generic .n2-ss-slider {
        height: 100% !important;
    }
}

.home #carousel-hestia-generic .header-filter.hestia-hero-slider {
    height: 100% !important;
}
.home #carousel-hestia-generic .n2-ss-slider {
    height: 100% !important;
}

@media (min-width: 1025px) and (max-width: 1366px) {
    .home #carousel-hestia-generic {
        height: 600px !important;
        max-height: 600px !important;
        overflow: hidden !important;
    }
}

.woocommerce-shop .woocommerce-breadcrumb {
    display: none !important;
}
.woocommerce-breadcrumb {
    font-size: 16px !important;
    color: #ff2d21 !important;
}

.header-filter::before {
    background-color: rgba(0,0,0,0);
}

.card-title {
    text-align: left !important;
    font-size: 18px !important;
}

footer .copyright.pull-right {
    display: none !important;
}

.blog-post-wrapper .col-md-6,
.blog-post-wrapper .col-md-12 {
    display: none !important;
}
.post-template-default .col-md-6,
.post-template-default .col-md-12 {
    display: none !important;
}

.wc-gzd-additional-info-loop { display: none; }
.posted-by { display:none; }
.author { display:none; }
.product_meta{ display:none; }

/* Registrieren PopUP */
.xoo-el-sidebar {
    background-image: url(https://bos-akademie.de/wp-content/uploads/2025/03/titelbild_bos.png) !important;
    transform: scaleX(1);
    background-position: calc(100% + 220px);
}

.wpforms-form{
    background-image: linear-gradient(#FF2D21, #FF2D21), linear-gradient(#d2d2d2);
}

.section-image::after{
    background-color: rgba(0,0,0,0);
}

.a{color: #FF2D21}
.text-primary{color: #FF2D21}

/* Produktinformationen Schriftgrößen */
.wc-block-cart-item__product .wc-block-components-product-details__value,
.wc-block-components-product-details__name {
    font-size: 14px !important;
}
.wc-block-components-order-summary-item__description .wc-block-components-product-name,
.wc-block-components-product-details__value,
.wc-block-components-product-details__name {
    font-size: 12px !important;
}
.wc-block-components-product-details__gzd-delivery-time span,
.wc-block-components-product-details__gzd-item-desc span {
    font-size: 12px !important;
}

.page-id-1431 .blog-post,
.page-id-1436 .blog-post,
.page-id-1451 .blog-post {
    background-color: rgba(0, 0, 0, 0.05);
}

.before-shop-main .woocommerce-result-count,
.before-shop-main .woocommerce-ordering{
    display: none !important;
}

.custom-search-sort-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 15px;
    gap: 15px;
}

.woocommerce-product-search,
.woocommerce-ordering {
    display: flex;
    align-items: center;
}

.woocommerce-product-search {
    display: flex;
    align-items: center;
    max-width: 35%;
}

.woocommerce-product-search label {
    font-size: 16px !important;
    margin-top: 25px !important;
    color: #666;
    margin-right: 10px;
    transition: all 0.2s ease-in-out;
    padding-left: 5px;
}

.woocommerce-ordering::before { display:none; }
.woocommerce-ordering::after {
    content: "\25BC";
    position: absolute;
    right: 10px;
    top: 50%;
    transform: translateY(-45%);
    font-size: 8px;
    pointer-events: none;
}

.woocommerce-product-search input.search-field {
    border: none;
    outline: none;
    width: 100%;
    font-size: 16px;
    background-color: white;
    padding-left: 5px !important;
}

.woocommerce-product-search button {
    top: -5px !important;
    right: 35px !important;
    background: none;
    border: none;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    box-shadow: none !important;
}
.woocommerce-product-search button:hover { transform: none; }
.woocommerce-product-search button svg {
    width: 25px;
    height: 25px;
    fill: #313131;
}

.woocommerce-ordering select,
.woocommerce-ordering select option {
    text-transform: none !important;
    font-size: 14px;
    font-family: Arial, sans-serif;
}

.product-navigation a {
    color: #313131;
    text-decoration: none;
}
.product-navigation a.active-menu-item {
    color: #ff2d21;
    font-weight: bold;
}

.page-id-1431 .custom-search-sort-row,
.page-id-1436 .custom-search-sort-row,
.page-id-1451 .custom-search-sort-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 0px;
    margin-bottom: -80px !important;
}

.orderby {
    background-color: white !important;
    padding: 5px !important;
}

.custom-sorting-wrapper {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    margin-bottom: -40px !important;
}

.custom-orderby {
    font-family: Arial, sans-serif;
    font-size: 14px;
    background-color: white;
    color: #313131;
    border: none;
    border-bottom: 1px solid #ccc;
    cursor: pointer;
    bottom: 40px !important;
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    padding-right: 20px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 24 24%27 width=%2716%27 height=%2716%27 fill=%27%23313131%27%3E%3Cpath d=%27M7 10l5 5 5-5z%27/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 5px center;
    background-size: 16px;
}
.custom-orderby option {
    background: white !important;
    color: white !important;
    font-size: 14px !important;
}
.custom-orderby:focus { outline: none; }
.custom-orderby::-ms-expand { display: none; }

@media screen and (max-width: 768px) {
    .custom-search-sort-row {
        flex-direction: column;
        align-items: flex-start;
    }
    .woocommerce-product-search {
        width: 100% !important;
        margin-bottom: 10px;
    }
    .woocommerce-ordering { width: 100%; }
    .woocommerce-ordering select { width: 100%; }
    .woocommerce-product-search input.search-field {
        width: 100% !important;
        min-width: 250px;
        max-width: 100%;
        flex-grow: 1;
    }
    .woocommerce-ordering {
        width: 100% !important;
        max-width: 250px !important;
    }
    .woocommerce-ordering select { width: 100% !important; }
    .woocommerce-product-search label{ font-size: 12px !important; }
}

.mailpoet_form{ left: -2.5%; }
@media (max-width: 768px) {
    .mailpoet_form { padding: 10px 5%; }
    .mailpoet_form input[type="submit"] { max-width: 100%; }
}

div.wpforms-container .wpforms-form input[type=date], div.wpforms-container .wpforms-form input[type=datetime], div.wpforms-container .wpforms-form input[type=datetime-local], div.wpforms-container .wpforms-form input[type=email], div.wpforms-container .wpforms-form input[type=month], div.wpforms-container .wpforms-form input[type=number], div.wpforms-container .wpforms-form input[type=password], div.wpforms-container .wpforms-form input[type=range], div.wpforms-container .wpforms-form input[type=search], div.wpforms-container .wpforms-form input[type=tel], div.wpforms-container .wpforms-form input[type=text], div.wpforms-container .wpforms-form input[type=time], div.wpforms-container .wpforms-form input[type=url], div.wpforms-container .wpforms-form input[type=week], div.wpforms-container .wpforms-form select, div.wpforms-container .wpforms-form textarea, .nf-form-cont input:not([type=button]){background-image:linear-gradient(#FF2D21,#FF2D21),linear-gradient(#d2d2d2,#d2d2d2) !important}

.woocommerce-MyAccount-navigation ul li a { color: #313131; }

.stock.available-on-backorder::after {
    content: "Wird nach Bestellung gefertigt \2013  Lieferzeit ca. 7\2013 14 Werktage";
    color: #ff6600;
    font-weight: bold;
}
.stock.available-on-backorder { display: none; }

#contact h5.description { color: #ff2d21; }
#contact .icon-primary { position: relative; top: 2px; }

.wpforms-submit {
    font-size: 14px !important;
    padding: 8px 10px !important;
    width: auto !important;
    background-color: #ff2d21 !important;
}

footer .wp-block-social-link {
    background-color: transparent;
    width: 40px;
    height: 40px;
}

.floating-newsletter-button:hover,
.wp-block-button__link:hover {
    color: white !important;
    background-color: #ff2d21 !important;
}

/* Complianz Buttons */
.cmplz-btn {
    box-shadow: 2px 2px 5px rgba(37, 55, 68, 0.2) !important;
    transition: box-shadow 0.3s ease, transform 0.2s ease;
}
.cmplz-btn:hover {
    box-shadow: 2px 2px 15px rgba(37, 55, 68, 0.8) !important;
    transform: translateY(-2px);
}
.cmplz-deny:hover,
.cmplz-view-preferences:hover {
    color: inherit !important;
    background-color: inherit !important;
}
.cmplz-btn:active {
    box-shadow: 1px 1px 3px rgba(37, 55, 68, 0.5) !important;
    transform: translateY(1px);
}

/* Globale Button-Styles */
button,
.wp-block-button__link,
.floating-newsletter-button,
.btn,
a.button,
input[type="submit"],
a.wc-block-cart__submit-button,
a.add_to_cart_button,
a.wp-block-components-product-button__button {
    font-size: 14px !important;
    background-color: #ff2d21;
    border-radius: 5px;
    font-family: Arial, Helvetica, sans-serif !important;
    text-transform: none !important;
    font-weight: 500 !important;
}

button:hover,
.wp-block-button__link:hover,
.floating-newsletter-button:hover,
.btn:hover,
a.button:hover,
input[type="submit"]:hover {
    box-shadow: 2px 2px 15px rgba(255, 0, 0, 0.6);
    transform: translateY(-2px);
}

button:active,
.wp-block-button__link:active,
.floating-newsletter-button:active,
.btn:active,
a.button:active,
input[type="submit"]:active {
    box-shadow: 1px 1px 3px rgba(0, 0, 0, 0.2);
    transform: translateY(1px);
}

.wc-block-cart-item__remove-link {
    font-size: 12px !important;
    padding: 5px 10px;
    color: #ff4d4d;
    background: none;
    border: none;
    cursor: pointer;
    transition: color 0.3s;
}

.woocommerce-button.button.view {
    padding: 10px !important;
    margin-right: 15px;
    margin-bottom: 5px;
}
.woocommerce-button.button.invoice { padding: 10px !important; }

.hestia-transparent-logo {
    width: 60% !important;
    max-width: none !important;
    max-height: none !important;
}

.video-buttons {
    margin-top: 25px !important;
    display: flex;
    justify-content: left !important;
}

@media (max-width: 768px) {
    .video-buttons {
        flex-direction: column;
        align-items: center;
    }
    .video-buttons a { margin: 5px 0; }
}

/* WPForms 233 */
#wpforms-form-233 input[type="text"],
#wpforms-form-233 input[type="email"],
#wpforms-form-233 input[type="tel"],
#wpforms-form-233 input[type="url"],
#wpforms-form-233 input[type="password"],
#wpforms-form-233 input[type="number"],
#wpforms-form-233 input[type="date"],
#wpforms-form-233 input[type="search"],
#wpforms-form-233 textarea,
#wpforms-form-233 select {
    border-top: 1px solid #ccc;
    border-left: 1px solid #ccc;
    border-right: 1px solid #ccc;
    border-bottom: none;
    box-shadow: none;
    outline: none;
    padding-left: 4px;
    font-size: 14px;
    background-color: white !important;
}

#wpforms-233-field_3 {
    border-top: 1px solid #ccc !important;
    border-left: 1px solid #ccc !important;
    border-right: 1px solid #ccc !important;
    border-bottom: none !important;
    box-shadow: none !important;
    outline: none !important;
    background-color: transparent !important;
}

/* Newsletter */
.widget_block.widget_text a[href*="/newsletter"] {
    display: block;
    margin-top: 14px;
    color: #ff2d21;
}

#newsletter-button {
    position: fixed;
    bottom: 30px;
    left: 40px;
    background: #ff2d21;
    color: white;
    padding: 2px 10px;
    border-radius: 5px;
    box-shadow: 2px 2px 10px rgba(0, 0, 0, 0.3);
    align-items: center;
    z-index: 10;
    display:none;
}
.floating-newsletter-button { color: white; }
#close-newsletter {
    background: none;
    border: none;
    color: white !important;
    font-size: 14px;
    cursor: pointer;
    padding: 0 5px;
}
#close-newsletter:hover { color: #ffcccc; }
#close-newsletter img.emoji {
    width: 14px;
    height: 14px;
    display: block;
    filter: invert(1) brightness(2);
}

@media (max-width: 768px) {
    #newsletter-button {
        position: relative !important;
        margin: 20px;
        display: block;
        bottom: 5px !important;
        left: 5px !important;
        width: 150px;
        z-index: 10 !important;
    }
}

/* Produktkarten */
ul.products li.product {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    height: 100%;
    align-items: center;
    transform: none !important;
    transition: none !important;
}

ul.products li.product .card-product {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    height: 100%;
    padding: 15px;
    position: relative;
}

ul.products li.product .card-image {
    position: relative;
    top: -10px;
    width: fit-content !important;
    max-width: 100% !important;
    height: auto;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    overflow: hidden !important;
    margin: 0 auto !important;
    flex-grow: 1;
    max-height: 230px;
}

ul.products li.product .card-image::before {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    background: none;
}

ul.products li.product .content {
    flex-grow: 1;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    text-align: center;
    padding: 10px 15px;
    overflow: hidden;
    word-wrap: break-word;
}

ul.products li.product .woocommerce-Price-amount { margin-top: auto; }

ul.products li.product .card-image img {
    max-width: 100% !important;
    max-height: 230px;
    height: auto !important;
    object-fit: cover;
    width: 100%;
    display: block;
    margin: 0 auto;
    transition: transform 0.3s ease-in-out;
}

ul.products li.product .card-image:hover img {
    transform: scale(1.00);
}

ul.products li.product h4.card-title { min-height: 30px; }

ul.products li.product .footer {
    margin-top: auto;
    font-weight: bold;
    font-size: 1.2em;
    text-align: center;
}

.wc-block-components-product-metadata__description { display: none !important; }

/* Coming Soon Label */
.single-product .product_cat-coming-soon .images {
    position: relative;
    overflow: hidden;
}
.single-product .product_cat-coming-soon .images::before {
    content: "COMING SOON";
    position: absolute;
    top: 0%;
    left: -5px;
    background-color: #ff2d21;
    color: white;
    font-weight: bold;
    padding: 5px 15px;
    border-radius: 5px;
    z-index: 10;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
    white-space: nowrap;
    font-size: clamp(12px, 2vw, 28px);
}

@media (max-width: 768px) {
    .single-product .product_cat-coming-soon .images::before {
        top: 0!important;
        left: -5px !important;
        padding: 5px 10px !important;
        font-size: clamp(30px, 2vw, 24px) !important;
    }
}
@media (max-width: 480px) {
    .single-product .product_cat-coming-soon .images::before {
        top: 0!important;
        left: -5px !important;
        padding: 5px 8px !important;
        font-size: clamp(16px, 1.5vw, 20px) !important;
    }
}

.mailpoet_page .section.section-blog-info,
.mailpoet_page .section.related-posts {
    display: none !important;
    font-size: 30 !important;
}

/* Konto Loeschen */
.delete-account-container { text-align: right; margin-top: 20px; }
.delete-account-btn { background-color: #ff2d21; color: white; cursor: pointer; }

.delete-modal {
    display: none;
    position: fixed;
    z-index: 1000;
    left: 0; top: 0;
    width: 100%; height: 100%;
    background-color: rgba(0, 0, 0, 0.5);
    justify-content: center;
    align-items: center;
}
.delete-modal-content {
    background-color: white;
    padding: 20px;
    border-radius: 10px;
    width: 400px;
    text-align: center;
    box-shadow: 0px 4px 6px rgba(0, 0, 0, 0.2);
}
.close-modal { float: right; font-size: 24px; cursor: pointer; }
#delete-confirmation {
    width: 100%; padding: 10px; margin-top: 10px;
    border-radius: 5px; background-color: #31313110;
}
.confirm-delete-btn { cursor: pointer; }

/* Registrierung */
.custom_datenschutz_style_registrieren,
.custom_newsletter_style_registrieren { font-size: 14px !important; }
.custom_datenschutz_style_registrieren input[type="checkbox"],
.custom_newsletter_style_registrieren input[type="checkbox"] {
    margin-right: 10px !important;
    transform: translateY(-1px);
}

.xoo-aff-group.xoo-el-login-btm-fields .xoo-el-form-label span { font-size: 14px !important; }
.xoo-aff-group.xoo-el-login-btm-fields .xoo-el-form-label input[type="checkbox"] { transform: translateY(-1px); }
.xoo-el-lostpw-tgr { font-size: 14px !important; }

/* Checkout Login */
.wc-block-checkout__login-prompt {
    display: inline-block;
    text-align: center;
    font-size: 18px;
    font-weight: bold;
    background-color: #ff2d21;
    color: white !important;
    padding: 12px 20px;
    border-radius: 6px;
    text-decoration: none;
    width: auto;
    transition: background-color 0.3s ease;
}
.custom-login-hint { font-size: 20px !important; }
.wc-block-checkout__login-prompt + .custom-login-hint { font-size: 20px !important; }

/* Cross-Sells Preise */
.cross-sells-product .wc-block-components-product-price { font-size: 0px !important; }
.cross-sells-product .wc-block-components-product-price ins { font-size: 14px !important; color: #000 !important; }
.cross-sells-product .wc-block-components-product-price[data-is-variable="true"]::after {
    content: "Ab " attr(data-min-price); font-size: 14px; color: #000;
}
.cross-sells-product .wc-block-components-product-price[data-is-variable="false"]::after {
    content: attr(data-min-price); font-size: 14px; color: #000;
}

.woocommerce-message a.button.wc-forward {
    text-decoration: underline !important;
    color: #ff2d21 !important;
    font-size: 16px !important;
    text-decoration-color: #ff2d21 !important;
}

.reset_variations{ color: #31313190; }
.reset_variations::after { background-color: #31313190 !important; }

@media (max-width: 768px) {
    .wp-block-woocommerce-cart-cross-sells-block { display:none; }
    .widget_block.widget_text a[href*="newsletter"] { display:none !important; }
}

.woocommerce-customer-details h2.woocommerce-column__title {
    white-space: nowrap;
    font-size: 3rem;
}
.order-again{ display:none; }
.wc-gzd-cart-info.item-desc:nth-of-type(2) { display: none !important; }
.wc-item-meta{ padding-left: 0px !important; }

body.single-post .section.related-posts { display: none !important; }
body.single-post .section-blog-info { display: none !important; }

/* Adresse aendern */
.edit {
    display: block;
    text-align: left;
    margin-top: 10px;
    color: #fff !important;
    background-color: #ff2d21;
    padding: 5px;
    border-radius: 5px;
    font-size: 20px;
    margin-bottom: 30px;
}
.u-column1 .edit { margin-right: 20px; }
@media (max-width: 768px) {
    .u-column1 .edit { margin-right: 0px; }
}
.u-column2 .edit { margin-right: 0px; }

.woocommerce .woocommerce-MyAccount-content > p:first-of-type { display: none; }
.u-columns.woocommerce-Addresses.col2-set.addresses{
    background-color: #31313110;
    border-radius: 5px;
}
.woocommerce-Address {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
}

/* Leerer Warenkorb */
.wp-block-woocommerce-empty-cart-block .wc-block-product-new { display: none !important; }
.wp-block-woocommerce-empty-cart-block .wp-block-heading.has-text-align-center { display: none; }

/* Mobil: Benutzername */
@media (max-width: 768px) {
    .account-icon {
        display: flex;
        flex-direction: row-reverse;
        align-items: center;
    }
    .user-greeting { margin-left: 8px; margin-right: 0; }
    .existing-cart-icon {
        position: relative;
        display: inline-flex;
        align-items: center;
    }
    .existing-cart-icon .cart-count {
        position: absolute;
        top: -4px; left: 18px;
        background-color: #ff2d21;
        color: white;
        border-radius: 50%;
        padding: 2px 6px;
        font-size: 12px;
        font-weight: bold;
        line-height: 1;
        min-width: 20px; max-width: 30px; height: 20px;
        overflow: hidden; white-space: nowrap;
        text-align: center;
        display: inline-flex;
        z-index: 10;
    }
    .cart-count { top: 2px !important; left: 30px !important; }
}

.woocommerce.single-product .summary .price { margin-bottom: 0px; }
.custom-tooltip-icon {
    margin-left: 6px;
    vertical-align: middle;
    cursor: help;
    border: none !important;
    text-decoration: none !important;
}

/* TranslatePress */
#trp-floater-ls {
    right: 5px !important;
    top: 5px !important;
    background-color: transparent !important;
    border: none !important;
    box-shadow: none !important;
    position: fixed !important;
    z-index: 5000 !important;
}
#trp-floater-ls .trp-language-wrap-top {
    transform: none !important;
    transition: none !important;
    justify-content: center !important;
    align-items: center !important;
}

@media (max-width: 768px) {
    #trp-floater-ls {
        position: fixed !important;
        left: 50% !important;
        transform: translateX(-50%) !important;
        background-color: transparent !important;
        border: none !important;
        box-shadow: none !important;
        z-index: 9998 !important;
    }
}

/* Startseite Aktuelles */
.Startseite_Aktuelles_Bilder img {
    max-width: 250px;
    max-height: 250px;
    object-fit: cover;
    display: block;
    margin: 0 auto;
    margin-bottom: 0 !important;
}
.Startseite_Aktuelles_Bilder {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}

/* bbpress Voting */
#bbpress-forums .bbp-voting a.vote,
.bbp-voting a.vote {
    border: 0 !important;
    background: none !important;
    line-height: 0;
}

#bbpress-forums .bbp-reply-content .bbp-voting a.vote.up,
.bbp-voting a.vote.up {
    border-top: 0 !important;
    border-left: 8px solid transparent !important;
    border-right: 8px solid transparent !important;
    border-bottom: 8px solid #858c93 !important;
}
#bbpress-forums .bbp-reply-content .bbp-voting a.vote.up:hover,
.bbp-voting a.vote.up:hover { border-bottom-color: #6e757c !important; }

#bbpress-forums .bbp-reply-content .bbp-voting a.vote.down,
.bbp-voting a.vote.down {
    border-bottom: 0 !important;
    border-left: 8px solid transparent !important;
    border-right: 8px solid transparent !important;
    border-top: 8px solid #858c93 !important;
}
#bbpress-forums .bbp-reply-content .bbp-voting a.vote.down:hover,
.bbp-voting a.vote.down:hover { border-top-color: #6e757c !important; }

/* Active states */
#bbpress-forums .bbp-reply-content .bbp-voting a.vote.up.active,
#bbpress-forums .bbp-reply-content .bbp-voting a.vote.up.selected,
#bbpress-forums .bbp-reply-content .bbp-voting a.vote.up.on,
#bbpress-forums .bbp-reply-content .bbp-voting a.vote.up.is-active,
#bbpress-forums .bbp-reply-content .bbp-voting a.vote.up.voted,
#bbpress-forums .bbp-reply-content .bbp-voting a.vote.up.voted-up,
#bbpress-forums .bbp-reply-content .bbp-voting a.vote.up.bbp-voted,
#bbpress-forums .bbp-reply-content .bbp-voting a.vote.up.bbp-upvoted,
#bbpress-forums .bbp-reply-content .bbp-voting a.vote.up[aria-pressed="true"],
.bbp-voting a.vote.up.active,
.bbp-voting a.vote.up.selected,
.bbp-voting a.vote.up.on,
.bbp-voting a.vote.up.is-active,
.bbp-voting a.vote.up.voted,
.bbp-voting a.vote.up.voted-up,
.bbp-voting a.vote.up.bbp-voted,
.bbp-voting a.vote.up.bbp-upvoted,
.bbp-voting a.vote.up[aria-pressed="true"],
.bbp-voting.voted-up a.vote.up,
.bbp-voting[data-voted="1"] a.vote.up {
    border-bottom-color: #ff2d21 !important;
}

#bbpress-forums .bbp-reply-content .bbp-voting a.vote.down.active,
#bbpress-forums .bbp-reply-content .bbp-voting a.vote.down.selected,
#bbpress-forums .bbp-reply-content .bbp-voting a.vote.down.on,
#bbpress-forums .bbp-reply-content .bbp-voting a.vote.down.is-active,
#bbpress-forums .bbp-reply-content .bbp-voting a.vote.down.voted,
#bbpress-forums .bbp-reply-content .bbp-voting a.vote.down.voted-down,
#bbpress-forums .bbp-reply-content .bbp-voting a.vote.down.bbp-voted,
#bbpress-forums .bbp-reply-content .bbp-voting a.vote.down.bbp-downvoted,
#bbpress-forums .bbp-reply-content .bbp-voting a.vote.down[aria-pressed="true"],
.bbp-voting a.vote.down.active,
.bbp-voting a.vote.down.selected,
.bbp-voting a.vote.down.on,
.bbp-voting a.vote.down.is-active,
.bbp-voting a.vote.down.voted,
.bbp-voting a.vote.down.voted-down,
.bbp-voting a.vote.down.bbp-voted,
.bbp-voting a.vote.down.bbp-downvoted,
.bbp-voting a.vote.down[aria-pressed="true"],
.bbp-voting.voted-down a.vote.down,
.bbp-voting[data-voted="-1"] a.vote.down {
    border-top-color: #ff2d21 !important;
}

#bbpress-forums .bbp-voting a.vote.active,
#bbpress-forums .bbp-voting a.vote.selected,
#bbpress-forums .bbp-voting a.vote.voted,
#bbpress-forums .bbp-voting a.vote[aria-pressed="true"],
.bbp-voting a.vote.active,
.bbp-voting a.vote.selected,
.bbp-voting a.vote.voted,
.bbp-voting a.vote[aria-pressed="true"] {
    color: #ff2d21 !important;
}

#bbpress-forums .bbp-voting a.vote[aria-disabled="true"],
#bbpress-forums .bbp-voting a.vote.disabled,
.bbp-voting a.vote[aria-disabled="true"],
.bbp-voting a.vote.disabled {
    opacity: .45;
    pointer-events: none;
}

.bbp-attachments { border-top: 0px !important; }

/* Angebot-Button */
.bos-angebot-button {
    display: block;
    margin-left: -0.0rem !important;
    margin-top: 1.75rem !important;
    width: 100%;
}

/* WAPF Preistabelle */
.wapf-product-totals .wapf--inner > div {
    display: flex;
    align-items: baseline;
    padding: 0.25rem 0;
}
.wapf-product-totals .wapf--inner > div > span:first-child { flex: 0 0 230px; }
.wapf-product-totals .price.amount { display: inline-block; font-size: 1.8rem !important; }
.wapf-product-totals .wapf--inner > div:not(:last-child) { border-bottom: 1px solid #e3e6ee; }
.wapf-product-totals .wapf--inner > div:last-child span { font-weight: 600; }

.wapf-field-container.bos-service-zone { position: relative; }

/* Distanz Overlay */
.bos-distance-overlay {
    position: fixed; inset: 0; z-index: 9999;
    background: rgba(255, 255, 255, 0.7);
    display: none;
    align-items: center; justify-content: center;
    flex-direction: column; font-family: inherit;
}
.bos-distance-overlay.is-active { display: flex; }
.bos-distance-spinner {
    width: 32px; height: 32px; border-radius: 50%;
    border: 3px solid #ccd3e0; border-top-color: #0073aa;
    animation: bos-spin 0.8s linear infinite;
    margin-bottom: 0.75rem;
}
.bos-distance-text { font-size: 0.9rem; color: #333; }
@keyframes bos-spin { to { transform: rotate(360deg); } }

/* PLZ Block */
.bos-plz-auslieferung { margin-top: 1.25rem; padding: 0; border: none; background: transparent; }
.bos-plz-auslieferung .wapf-field-label label { font-weight: 600; color: #1f2937; }
.bos-plz-auslieferung .wapf-field-input { position: relative; }
.bos-plz-auslieferung .wapf-field-input::before {
    content: "\1F4CD"; position: absolute; left: 0.8rem; top: 30%;
    transform: translateY(-50%); font-size: 1.1rem; opacity: 0.7; pointer-events: none;
}
.bos-plz-auslieferung .wapf-input.form-control:focus {
    outline: none; box-shadow: none; background-color: #ffffff;
}
.bos-plz-auslieferung .wapf-input.form-control {
    width: 100%; font-size: 1.05rem;
    padding: 0.9rem 1rem 0.9rem 2.6rem;
    border-radius: 8px; border: 1px solid #cbd5e1;
    background: #ffffff; box-shadow: none;
}
.bos-plz-auslieferung .wapf-input.form-control::placeholder { color: #9ca3af; }

/* Aufbau-Paket Versand */
.bos-aufbau-versand-inklusive .wc-block-components-totals-shipping .wc-block-components-totals-item__value { position: relative; }
.bos-aufbau-versand-inklusive .wc-block-components-totals-shipping .wc-block-components-totals-item__value > * { visibility: hidden; }
.bos-aufbau-versand-inklusive .wc-block-components-totals-shipping .wc-block-components-totals-item__value::after {
    content: ""; visibility: visible; position: absolute; left: 0; top: 0;
}

/* Taktik-Trainer (3362) */
.postid-3362 .wapf-field-container.bos-service-zone { display: none !important; }
.postid-3362 .wapf-product-totals .wapf--inner > div:nth-child(1),
.postid-3362 .wapf-product-totals .wapf--inner > div:nth-child(2) { display: none !important; }
.postid-3362 .bos-service-price-note { margin-top: 0.35rem; font-size: 0.9rem; color: #111827; font-weight: 500; }

/* BMA-Trainer (7262) */
.postid-7262 .wapf-product-totals .wapf--inner > div:nth-child(1),
.postid-7262 .wapf-product-totals .wapf--inner > div:nth-child(2) { display: none !important; }

/* PLZ Error-Highlight entfernen */
body .wapf-field-container.bos-plz-auslieferung .wapf-field-input.form-group,
body .wapf-field-container.bos-plz-auslieferung .wapf-field-input.form-group.has-error,
body .wapf-field-container.bos-plz-auslieferung .wapf-field-input.form-group.is-focused,
body .wapf-field-container.bos-plz-auslieferung .wapf-field-input.form-group.is-empty.has-error,
body .wapf-field-container.bos-plz-auslieferung .wapf-field-input.form-group.is-empty.has-error.is-focused {
    background: transparent !important;
    background-color: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
}
body .wapf-field-container.bos-plz-auslieferung input.wapf-input.form-control,
body .wapf-field-container.bos-plz-auslieferung input.wapf-input.form-control:focus,
body .wapf-field-container.bos-plz-auslieferung input.wapf-input.form-control:focus-visible,
body .wapf-field-container.bos-plz-auslieferung input.wapf-input.form-control:active,
body .wapf-field-container.bos-plz-auslieferung input.wapf-input.form-control:invalid,
body .wapf-field-container.bos-plz-auslieferung .wapf-field-input.form-group.has-error input.wapf-input.form-control,
body .wapf-field-container.bos-plz-auslieferung .wapf-field-input.form-group.is-empty.has-error input.wapf-input.form-control {
    background: #fff !important;
    background-color: #fff !important;
    border: 1px solid #cbd5e1 !important;
    box-shadow: none !important;
}

body .bos-service-price-note{ font-size: 1.3rem !important; line-height: 1.3; }

/* Landscape */
@media (max-width: 768px) and (orientation: landscape) {
    .home #carousel-hestia-generic{
        max-height: none !important;
        height: calc(100vh - 70px) !important;
        overflow: hidden !important;
    }
    .home #carousel-hestia-generic .header-filter,
    .home #carousel-hestia-generic .header-filter.hestia-hero-slider{
        max-height: none !important;
        height: 100% !important;
    }
    .home #carousel-hestia-generic .n2-ss-slider{ height: 100% !important; }
    .home .big-title-slider-content{ max-height: none !important; }
    .home .header-filter.hestia-hero-slider{ margin-top: 40px !important; }
}