/*
Theme Name: Z-Konzept Sports Nutrition
Description: Child theme for Avada theme
Author: P1XEL
Author URI: https://p1xel.net
Template: Avada
Version: 1.0.0
Text Domain:  Avada
*/

:root {
    --form_input_height: 41px !important;
    /* Max. Site-/Container-Breite aus Avada (Beispielwert!) */
    --container-max: 1200px;
    /* Optional: seitliches Seitenpadding, falls vorhanden */
    --page-padding: 0px;
}

sup {
  font-size: 0.6em;
  vertical-align: baseline;
  position: relative;
  top: -0.5em; /* nach oben schieben */
}

@media only screen and (max-device-width: 640px){
#content {
        margin-bottom: 0px !important;
    }
}
/*
*   TYPO
*/

.header-text{
    text-shadow: 0px 0px 5px var(--awb-custom_color_1);
}

strong, b{
    font-weight: 800 !important;
}

 .hyphenate, 
 .hyphenate p,
 .hyphenate h5,
 .hyphenate h4,
 .hyphenate h3, 
 .hyphenate h2, 
 .hyphenate h1  {
    -webkit-hyphens: auto;
    -webkit-hyphenate-limit-before: 2;
    -webkit-hyphenate-limit-after: 2;
    -webkit-hyphenate-limit-chars: 6 2 2;
    -webkit-hyphenate-limit-lines: 2;
    -webkit-hyphenate-limit-last: always;
    -webkit-hyphenate-limit-zone: 8%;
    -moz-hyphens: auto;
    -moz-hyphenate-limit-chars: 6 2 2;
    -moz-hyphenate-limit-lines: 2;
    -moz-hyphenate-limit-last: always;
    -moz-hyphenate-limit-zone: 8%;
    -ms-hyphens: auto;
    -ms-hyphenate-limit-chars: 6 2 2;
    -ms-hyphenate-limit-lines: 2;
    -ms-hyphenate-limit-last: always;
    -ms-hyphenate-limit-zone: 8%;
    hyphens: auto;
    hyphenate-limit-chars: 6 3 3;
    hyphenate-limit-lines: 2;
    hyphenate-limit-last: always;
    hyphenate-limit-zone: 8%;
}

/*
 *  BUTTONS
 */


.transparent-button{
    padding: 0 !important;
    background: none !important;
}



/*
*   HEADER
*/

.p1x-main-header.fusion-container-stuck{
    border-bottom: 1px solid var(--awb-color2) !important;
}

#menu-item-2092{
    overflow: hidden !important;
    max-height: 0 !important;
    opacity: 0 !important;
    transition: max-height 0.4s ease, opacity 0.4s ease;
}

.fusion-container-stuck #menu-item-2092{
    max-height: 50px !important;
    opacity: 1 !important;
}

.p1x-header-logo-colum {
  transition: transform 0.6s ease,max-width 0.6 ease;
}

.fusion-container-stuck .p1x-header-logo-colum {
    max-width: 90px;
    transform: translateX(calc(-49.26666666667vw + 45px));
}

.awb-menu__search-overlay{
    padding-right: 30px !important;
}

.mobile-submenu a{
    padding-right: 0px !important;
}

.mobile-submenu button{
    margin-left: -12px !important;
}

#menu-header-mobile-hauptmenue .awb-menu__main-li_regular.expanded .awb-menu__main-a_regular,
#menu-header-mobile-hauptmenue .awb-menu__main-li_regular:hover .awb-menu__main-a_regular{
    color: var(--awb-color9) !important;
}

.oc-trigger-mobile-account.logged-in { display: none; }
.oc-trigger-mobile-account.logged-out { display: none; }

body.logged-in .oc-trigger-mobile-account.logged-in { display: block; }
body:not(.logged-in) .oc-trigger-mobile-account.logged-out { display: block; }
/*
*   RANK MATH
*/
#rank-math-rich-snippet-wrapper{
    display: none !important;
}

/*
*   GRID / PRODUKTE 
*/
.p1x-produkt-postcard .german-market-from-price-prefix{
    font-size:  var(--awb-custom_typography_3-font-size);
}

.p1x-produkt-postcard .fusion-builder-row:has(.p1x-add-to-cart-button-column){
    height: 100%;
}



/*
 *   ATHLETEN
 */
.athlet-postcard-textcolumn{
    height: 100% !important;
}


.athlete-hero-container-mobile{
    aspect-ratio: 4 / 5 !important;
}

/*
*   Produkt Single
*/
.p1x-produkt-layout-add-to-cart .fusion-woo-cart-1 table.variations .avada-button-select:hover{
    background-color: var(--awb-color5);
    color: var(--awb-color1);
    border-color: var(--awb-color5);
    
}

.p1x-produkt-layout-add-to-cart .fusion-woo-cart-1 table.variations .avada-button-select[data-checked="true"]{
    background-color: var(--awb-color4);
    color: var(--awb-color1);
    border-color: var(--awb-color4);
    pointer-events: none;
}

.p1x-produkt-layout-add-to-cart .woocommerce-variation-availability{
    margin-top: 2px;
    align-self: flex-start;
}

.p1x-produkt-layout-add-to-cart .out-of-stock{
    padding: 7px;
    background: var(--awb-custom_color_2) !important; 
}

.p1x-produkt-inhalt h2{
    font-size: 24px !important;
    margin-bottom: 15px !important;
}

.p1x-naehrstofftabelle .fusion-separator .fusion-separator-border{
    border-top-width: 0.5px !important;
}

.p1x-produkt-layout-add-to-cart.desktop .single_variation_wrap{
    margin-bottom: 0px;
    margin-top: 30px;
    display: flex;
    align-items: center;
    padding: 5px;
    padding-right: 15px;
    background-color: #fff;
    justify-content: space-between;
}
.p1x-produkt-layout-add-to-cart .woocommerce-variation.single_variation {
	margin-bottom: 0 !important;
}

.p1x-produkt-layout-add-to-cart .woocommerce-variation.single_variation .wgm-info {
	margin-bottom: 0 !important;
}

.p1x-wcvf-frontend > p:empty {
	display: none;
	margin: 0;
}

.p1x-wcvf-frontend .p1x-wcvf-title {
    font-size: var(--awb-typography4-font-size);
	color: var(--awb-color1);
}

.p1x-wcvf-frontend .p1x-wcvf-serving-text{
    font-size: var(--awb-custom_typography_2-font-size);
    font-weight: 300;
    margin-bottom: 10px;
}

.p1x-wcvf-frontend .p1x-wcvf-ingredients-output {
	/* font-size: var(--awb-custom_typography_4-font-size); */ 
    font-size: var(--awb-typography5-font-size);
    font-weight: 300;
}

.p1x-wcvf-frontend .p1x-wcvf-table .p1x-wcvf-heading-1,
.p1x-wcvf-frontend .p1x-wcvf-table .p1x-wcvf-heading-2,
.p1x-wcvf-frontend .p1x-wcvf-table .p1x-wcvf-heading-3,
.p1x-wcvf-frontend .p1x-wcvf-table th,
.p1x-wcvf-frontend .p1x-wcvf-table td {
	/* font-size: var(--awb-custom_typography_4-font-size); */
    font-size: var(--awb-custom_typography_4-font-size);
    font-weight: 300;
	border-bottom: 0.5px solid var(--awb-color2);
}

.p1x-wcvf-footnote{
    margin-top: 10px !important;
    margin-bottom: 0px !important;
    font-size: var(--awb-custom_typography_4-font-size) !important;
}

.p1x-wcvf-frontend .p1x-wcvf-table th,
.p1x-wcvf-frontend .p1x-wcvf-table td {
	padding: 2px 5px;
}

.p1x-wcvf-frontend .p1x-wcvf-table th:first-child,
.p1x-wcvf-frontend .p1x-wcvf-table td:first-child {
	padding-left: 0;
}

.p1x-wcvf-frontend .p1x-wcvf-table th:last-child,
.p1x-wcvf-frontend .p1x-wcvf-table td:last-child {
	padding-right: 0;
}

/* Den NRV-Spalten etwas mehr Luft nach links geben */
.p1x-wcvf-frontend .p1x-wcvf-table th:nth-child(3),
.p1x-wcvf-frontend .p1x-wcvf-table td:nth-child(3),
.p1x-wcvf-frontend .p1x-wcvf-table th:nth-child(5),
.p1x-wcvf-frontend .p1x-wcvf-table td:nth-child(5) {
	padding-left: 5px;
}

.p1x-wcvf-frontend .p1x-wcvf-table th:first-child,
.p1x-wcvf-frontend .p1x-wcvf-table td:first-child {
	width: 25% !important;
}

/*
*   Avada QuickView
*/
#main .fusion-woocommerce-quick-view-container .product_title{
    font-size: 24px !important;
}

#main .fusion-woocommerce-quick-view-container .price{
    font-size: 20px !important;
    font-weight: 700;
}

#main .fusion-woocommerce-quick-view-container .fusion-separator{
        margin-top: 0px !important;
        margin-bottom: 5px !important;
        display: none !important;
}

#main .fusion-woocommerce-quick-view-container .avada-button-select:hover{
    background-color: var(--awb-color5);
    color: var(--awb-color1);
    border-color: var(--awb-color5);
    
}

#main .fusion-woocommerce-quick-view-container .avada-button-select[data-checked="true"]{
    background-color: var(--awb-color4);
    color: var(--awb-color1);
    border-color: var(--awb-color4);
    pointer-events: none;
}

#main .fusion-woocommerce-quick-view-container .avada-button-select{
    padding: 5px;
    border-radius: 0px !important;
    line-height: 1;
    height: auto !important;
    font-size: var(--awb-typography5-font-size) !important;
}

#main .fusion-woocommerce-quick-view-container .label,
#main .fusion-woocommerce-quick-view-container th{
    display: none !important;
}

#main .fusion-woocommerce-quick-view-container .quantity{
    margin: 0px !important;
    margin-top: 8px !important;
    margin-right: 30px !important;
}
#main .fusion-woocommerce-quick-view-container .post-content p{
    margin-bottom: 5px;
}
#main .fusion-woocommerce-quick-view-container .post-content{
    margin-top: 15px;
    margin-bottom: 15px;
    font-size: 12px;
}

#main .fusion-woocommerce-quick-view-container .cart{
    margin-top: 0px !important;
}
#main .fusion-woocommerce-quick-view-container .fusion-button-view-details,
#main .fusion-woocommerce-quick-view-container .woocommerce-variation-description,
#main .fusion-woocommerce-quick-view-container .reset_variations{
    display: none;
}

#main .fusion-woocommerce-quick-view-container .product-type-variable .price{
  display: none;
} 

#main .fusion-woocommerce-quick-view-container .variations .price{
    display: flex;
}

.fusion-woocommerce-quick-view-container .woocommerce-product-details__short-description{
    line-height: 1.2 !important;
}

.fusion-woocommerce-quick-view-container .product .fusion-wqv-content-inner{
    background-color: var(--awb-color2) !important;
}

.fusion-woocommerce-quick-view-container .woocommerce-variation-price{
    line-height: 1 !important;
}

/*
*   German MArket
*/

.wgm-info,
.wgm-info small{
    
    font-size: var(--awb-custom_typography_4-font-size) !important;
}

/*
 *  WOO Filter
 */

.awb-woo-filters .avada-select-parent{
    margin-bottom: 15px !important;
}

/*
*   Sportarten
*/

.background-title:not(.unskewed){
    transform: skew(-6deg);
}

.background-title .background-span{

    padding-left: 13px;
    padding-right: 10px;
    padding-top: 5px;
    padding-bottom: 5px;
    background-color: var(--awb-custom_color_1);
}

.background-title .title-sep.sep-single{
    border-bottom-width: 5px !important;
}

.background-title .background-span-small{
    padding-left: 5px;
    padding-right: 5px;
    padding-top: 2px;
    padding-bottom: 2px;
    background-color: var(--awb-color1);
}

/* SKEWD COMPONENTS DESKTOP */
:root {
  --frame-border: 12px;
  --frame-color: var(--awb-color4);
}
.skewd-component:first-child {
    position: relative;
}

.skewd-component:first-child::before {
    content: "";
    position: absolute;
    inset: 0;
    background: var(--awb-bg-color);
    transform: skewX(-30deg);
    transform-origin: left center;
    z-index: 0;
    backdrop-filter: blur(8px) brightness(77%) contrast(148%) saturate(119%);
    -webkit-backdrop-filter: blur(8px) brightness(77%) contrast(148%) saturate(119%);
}

.skewd-component:first-child::after {
    content: "";
    position: absolute;
    border: none !important;
    transform: skewX(-30deg);
    
    inset: calc(var(--awb-border-top) * -1);
    pointer-events: none;

    background-image:
        linear-gradient(var(--awb-border-color), var(--awb-border-color)),
        linear-gradient(var(--awb-border-color), var(--awb-border-color)),
        linear-gradient(var(--awb-border-color), var(--awb-border-color)),
        linear-gradient(var(--awb-border-color), var(--awb-border-color)),
        linear-gradient(var(--awb-border-color), var(--awb-border-color)),
        linear-gradient(var(--awb-border-color), var(--awb-border-color)),
        linear-gradient(var(--awb-border-color), var(--awb-border-color));


    background-repeat: no-repeat;

    background-size:
        var(--awb-border-left) 100%,   /* links */
        10% var(--awb-border-top),    /* oben links */
        60% var(--awb-border-bottom),    /* unten rechts */
        60% var(--awb-border-right),    /* oben rechts */
        10% var(--awb-border-bottom),    /* unten links */
        5% var(--awb-border-top),     /* oben Mitte */
        5% var(--awb-border-bottom);     /* unten Mitte */

    background-position:
        left top,
        left top,
        58% bottom,
        58% top,
        left bottom,
        17% top,
        17% bottom;
}
.skewd-component .fusion-column-wrapper{
    border: none !important;
    background: none !important;
}

.skewd-component .fusion-column-wrapper > * {
    z-index: 1;
}



.skewd-component-mobile:first-child {
    position: relative;
}

.skewd-component-mobile:first-child::before {
    content: "";
    position: absolute;
    inset: 0;
    background: var(--awb-bg-color);
    transform: skewX(-30deg);
    transform-origin: left center;
    z-index: 0;
    backdrop-filter: blur(8px) brightness(77%) contrast(148%) saturate(119%);
    -webkit-backdrop-filter: blur(8px) brightness(77%) contrast(148%) saturate(119%);
}

.skewd-component-mobile:first-child::after {
    content: "";
    position: absolute;
    border: none !important;
    transform: skewX(-30deg);
    
    inset: calc(var(--awb-border-top) * -1);
    pointer-events: none;

    background-image:
        linear-gradient(var(--awb-border-color), var(--awb-border-color)),
        linear-gradient(var(--awb-border-color), var(--awb-border-color)),
        linear-gradient(var(--awb-border-color), var(--awb-border-color)),
        linear-gradient(var(--awb-border-color), var(--awb-border-color)),
        linear-gradient(var(--awb-border-color), var(--awb-border-color)),
        linear-gradient(var(--awb-border-color), var(--awb-border-color)),
        linear-gradient(var(--awb-border-color), var(--awb-border-color));


    background-repeat: no-repeat;

    background-size:
        var(--awb-border-left) 100%,   /* links */
        10% var(--awb-border-top),    /* oben links */
        60% var(--awb-border-bottom),    /* unten rechts */
        60% var(--awb-border-right),    /* oben rechts */
        10% var(--awb-border-bottom),    /* unten links */
        5% var(--awb-border-top),     /* oben Mitte */
        5% var(--awb-border-bottom);     /* unten Mitte */

    background-position:
        left top,
        left top,
        58% bottom,
        58% top,
        left bottom,
        17% top,
        17% bottom;
}
.skewd-component .fusion-column-wrapper{
    border: none !important;
    background: none !important;
}

.skewd-component .fusion-column-wrapper > * {
    z-index: 1;
}

.postcard-hero-slider .textblock-hero-slider{
    max-width: 500px;
}

/* Keep Avada dynamic border color, but stabilize border widths in Swiper */
.postcard-hero-slider .skewd-component{
  --skew-border-top:    var(--awb-border-top, 6px);
  --skew-border-right:  var(--awb-border-right, 6px);
  --skew-border-bottom: var(--awb-border-bottom, 6px);
  --skew-border-left:   var(--awb-border-left, 6px);
}

/* Patterned border (same technique as before) */
.postcard-hero-slider .skewd-component .fusion-column-wrapper::after{
  content: "" !important;
  position: absolute !important;
  inset: calc(var(--skew-border-top) * -1) !important;
  transform: skewX(-30deg);
  transform-origin: left center;
  pointer-events: none !important;
  z-index: 1 !important;

  /* IMPORTANT: no flat background here */
  background-color: transparent !important;

  background-image:
    linear-gradient(var(--awb-border-color), var(--awb-border-color)),
    linear-gradient(var(--awb-border-color), var(--awb-border-color)),
    linear-gradient(var(--awb-border-color), var(--awb-border-color)),
    linear-gradient(var(--awb-border-color), var(--awb-border-color)),
    linear-gradient(var(--awb-border-color), var(--awb-border-color)),
    linear-gradient(var(--awb-border-color), var(--awb-border-color)),
    linear-gradient(var(--awb-border-color), var(--awb-border-color));

  background-repeat: no-repeat;

  /* Your segmented pattern sizes */
  background-size:
    var(--skew-border-left) 100%,         /* left full */
    10% var(--skew-border-top),           /* top left segment */
    60% var(--skew-border-bottom),        /* bottom right segment */
    60% var(--skew-border-right),         /* top right segment */
    10% var(--skew-border-bottom),        /* bottom left segment */
    5% var(--skew-border-top),            /* top middle small */
    5% var(--skew-border-bottom);         /* bottom middle small */

  background-position:
    left top,
    left top,
    58% bottom,
    58% top,
    left bottom,
    17% top,
    17% bottom;
}

/* Swiper: Background must also be on the wrapper (not :first-child) */
.postcard-hero-slider .skewd-component .fusion-column-wrapper::before{
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;

  background: var(--awb-bg-color) !important;

  transform: skewX(-30deg);
  transform-origin: left center;

  z-index: 0 !important;
  pointer-events: none !important;

  backdrop-filter: blur(8px) brightness(77%) contrast(148%) saturate(119%);
  -webkit-backdrop-filter: blur(8px) brightness(77%) contrast(148%) saturate(119%);
}

/* Ensure wrapper is the positioning context and content sits above */
.postcard-hero-slider .skewd-component .fusion-column-wrapper{
  position: relative !important;
}

.postcard-hero-slider .skewd-component .fusion-column-wrapper > *{
  position: relative !important;
  z-index: 2 !important;
}



/* Force stable compositing for text inside skew block during Swiper transforms */
.skewd-component .fusion-button,
.skewd-component .fusion-button *, 
.skewd-component .fusion-text,
.skewd-component .fusion-text *, 
.skewd-component .fusion-title,
.skewd-component .fusion-title * {
  transform: translateZ(0) !important;
  backface-visibility: hidden;
  -webkit-font-smoothing: antialiased;
}



/* SKEWD COMPONENTS DESKTOP */
:root {
  --frame-border: 12px;
  --frame-color: var(--awb-color4);
}
.skewd-component-mobile:first-child {
    position: relative;
}

.skewd-component-mobile:first-child::before {
    content: "";
    position: absolute;
    inset: 0;
    background: var(--awb-bg-color);
    transform: skewX(-15deg);
    transform-origin: left center;
    z-index: 0;
    backdrop-filter: blur(8px) brightness(77%) contrast(148%) saturate(119%);
    -webkit-backdrop-filter: blur(8px) brightness(77%) contrast(148%) saturate(119%);
}

.skewd-component-mobile:first-child::after {
    content: "";
    position: absolute;
    border: none !important;
    transform: skewX(-15deg);
    
    inset: calc(var(--awb-border-top) * -1);
    pointer-events: none;

    background-image:
        linear-gradient(var(--awb-border-color), var(--awb-border-color)),
        linear-gradient(var(--awb-border-color), var(--awb-border-color)),
        linear-gradient(var(--awb-border-color), var(--awb-border-color)),
        linear-gradient(var(--awb-border-color), var(--awb-border-color)),
        linear-gradient(var(--awb-border-color), var(--awb-border-color)),
        linear-gradient(var(--awb-border-color), var(--awb-border-color)),
        linear-gradient(var(--awb-border-color), var(--awb-border-color));


    background-repeat: no-repeat;

    background-size:
        var(--awb-border-left) 100%,   /* links */
        10% var(--awb-border-top),    /* oben links */
        60% var(--awb-border-bottom),    /* unten rechts */
        60% var(--awb-border-right),    /* oben rechts */
        10% var(--awb-border-bottom),    /* unten links */
        5% var(--awb-border-top),     /* oben Mitte */
        5% var(--awb-border-bottom);     /* unten Mitte */

    background-position:
        left top,
        left top,
        58% bottom,
        58% top,
        left bottom,
        17% top,
        17% bottom;
}
.skewd-component-mobile .fusion-column-wrapper{
    border: none !important;
    background: none !important;
}

.skewd-component-mobile .fusion-column-wrapper > * {
    z-index: 1;
}



.skewd-component-mobile-mobile:first-child {
    position: relative;
}

.skewd-component-mobile-mobile:first-child::before {
    content: "";
    position: absolute;
    inset: 0;
    background: var(--awb-bg-color);
    transform: skewX(-15deg);
    transform-origin: left center;
    z-index: 0;
    backdrop-filter: blur(8px) brightness(77%) contrast(148%) saturate(119%);
    -webkit-backdrop-filter: blur(8px) brightness(77%) contrast(148%) saturate(119%);
}

.skewd-component-mobile-mobile:first-child::after {
    content: "";
    position: absolute;
    border: none !important;
    transform: skewX(-15deg);
    
    inset: calc(var(--awb-border-top) * -1);
    pointer-events: none;

    background-image:
        linear-gradient(var(--awb-border-color), var(--awb-border-color)),
        linear-gradient(var(--awb-border-color), var(--awb-border-color)),
        linear-gradient(var(--awb-border-color), var(--awb-border-color)),
        linear-gradient(var(--awb-border-color), var(--awb-border-color)),
        linear-gradient(var(--awb-border-color), var(--awb-border-color)),
        linear-gradient(var(--awb-border-color), var(--awb-border-color)),
        linear-gradient(var(--awb-border-color), var(--awb-border-color));


    background-repeat: no-repeat;

    background-size:
        var(--awb-border-left) 100%,   /* links */
        10% var(--awb-border-top),    /* oben links */
        60% var(--awb-border-bottom),    /* unten rechts */
        60% var(--awb-border-right),    /* oben rechts */
        10% var(--awb-border-bottom),    /* unten links */
        5% var(--awb-border-top),     /* oben Mitte */
        5% var(--awb-border-bottom);     /* unten Mitte */

    background-position:
        left top,
        left top,
        58% bottom,
        58% top,
        left bottom,
        17% top,
        17% bottom;
}
.skewd-component-mobile .fusion-column-wrapper{
    border: none !important;
    background: none !important;
}

.skewd-component-mobile .fusion-column-wrapper > * {
    z-index: 1;
}

.postcard-hero-slider .textblock-hero-slider{
    max-width: 500px;
}

/* Keep Avada dynamic border color, but stabilize border widths in Swiper */
.postcard-hero-slider .skewd-component-mobile{
  --skew-border-top:    var(--awb-border-top, 6px);
  --skew-border-right:  var(--awb-border-right, 6px);
  --skew-border-bottom: var(--awb-border-bottom, 6px);
  --skew-border-left:   var(--awb-border-left, 6px);
}

/* Patterned border (same technique as before) */
.postcard-hero-slider .skewd-component-mobile .fusion-column-wrapper::after{
  content: "" !important;
  position: absolute !important;
  inset: calc(var(--skew-border-top) * -1) !important;
  transform: skewX(-15deg);
  transform-origin: left center;
  pointer-events: none !important;
  z-index: 1 !important;

  /* IMPORTANT: no flat background here */
  background-color: transparent !important;

  background-image:
    linear-gradient(var(--awb-border-color), var(--awb-border-color)),
    linear-gradient(var(--awb-border-color), var(--awb-border-color)),
    linear-gradient(var(--awb-border-color), var(--awb-border-color)),
    linear-gradient(var(--awb-border-color), var(--awb-border-color)),
    linear-gradient(var(--awb-border-color), var(--awb-border-color)),
    linear-gradient(var(--awb-border-color), var(--awb-border-color)),
    linear-gradient(var(--awb-border-color), var(--awb-border-color));

  background-repeat: no-repeat;

  /* Your segmented pattern sizes */
  background-size:
    var(--skew-border-left) 100%,         /* left full */
    10% var(--skew-border-top),           /* top left segment */
    60% var(--skew-border-bottom),        /* bottom right segment */
    60% var(--skew-border-right),         /* top right segment */
    10% var(--skew-border-bottom),        /* bottom left segment */
    5% var(--skew-border-top),            /* top middle small */
    5% var(--skew-border-bottom);         /* bottom middle small */

  background-position:
    left top,
    left top,
    58% bottom,
    58% top,
    left bottom,
    17% top,
    17% bottom;
}

/* Swiper: Background must also be on the wrapper (not :first-child) */
.postcard-hero-slider .skewd-component-mobile .fusion-column-wrapper::before{
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;

  background: var(--awb-bg-color) !important;

  transform: skewX(-15deg);
  transform-origin: left center;

  z-index: 0 !important;
  pointer-events: none !important;

  backdrop-filter: blur(8px) brightness(77%) contrast(148%) saturate(119%);
  -webkit-backdrop-filter: blur(8px) brightness(77%) contrast(148%) saturate(119%);
}

/* Ensure wrapper is the positioning context and content sits above */
.postcard-hero-slider .skewd-component-mobile .fusion-column-wrapper{
  position: relative !important;
}

.postcard-hero-slider .skewd-component-mobile .fusion-column-wrapper > *{
  position: relative !important;
  z-index: 2 !important;
}



/* Force stable compositing for text inside skew block during Swiper transforms */
.skewd-component-mobile .fusion-button,
.skewd-component-mobile .fusion-button *, 
.skewd-component-mobile .fusion-text,
.skewd-component-mobile .fusion-text *, 
.skewd-component-mobile .fusion-title,
.skewd-component-mobile .fusion-title * {
  transform: translateZ(0) !important;
  backface-visibility: hidden;
  -webkit-font-smoothing: antialiased;
}



/* FORMS */
.fusion-form-consent-field .fusion-form-checkbox label{
    padding-left: 30px !important;
    font-size: var(--awb-custom_typography_4-font-size) !important;
}
.fusion-form-consent-field .fusion-form-checkbox label a{
    text-decoration: underline !important;
}

#sponsoring-form .fusion-form-field.error label{
    color: var(--awb-color3) !important;
}

/* ALERTS */
.fusion-alert.awb-alert-close-boxed .close{
    border: none !important;
}


.skewd-component.home-product-label{
    margin-left: 26px !important;
}

/* HOME */
#injury-regeneration.home-product-label{
    max-width: 260px !important;
}
#mental-recovery.home-product-label{
    max-width: 260px !important;
}

.mask-container {
    margin-top: -150px !important;
}

.mask-container svg{
    fill: var(--awb-border-color) !important;
    height: 150px;
}

.sponsoring-registration-uploadfield i,
.sponsoring-registration-uploadfield{
    color: var(--awb-color1) !important;
}



/* MEGA MENU */
.fusion-tb-header .fusion-sticky-transition .awb-menu__mega-wrap{
    margin-top: 15px;
}


/* VEREINE */
.club-hero-desktop{
    aspect-ratio: 12 / 5;
}

.club-postcard-home .fusion-image-element{
  width: 100%;
  aspect-ratio: 1 / 1;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* 2) Avada's Imageframe (span) muss den Platz auch wirklich ausfüllen */
.club-postcard-home .fusion-imageframe{
  display: flex;
  width: 100%;
  height: 100%;
  align-items: center;
  justify-content: center;
}

#club-invite-link{
    overflow-wrap: break-word;
    word-break: break-word;
}

/* 3) Das IMG füllt den Rahmen maximal – ohne Verzerrung, ohne Beschnitt */
.club-postcard-home .fusion-imageframe img{
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
}

/* PRODUCT CATEGORIES*/
.product-category-header{
    aspect-ratio: 4 / 1;
}

.product-category-header-mobile{
    align-items: flex-end;
    aspect-ratio: 5 / 5;
}

.flyout-submenu-expanded .awb-menu__flyout-close{
    top: 130px !important;
}

.awb-menu_desktop.awb-menu_flyout .awb-menu__sub-ul{
    top: 60px !important;
}

/* Geschmack Filter horizontal darstellen */
.woocommerce-widget-layered-nav-list {
    display: flex;
    flex-wrap: wrap;   /* erlaubt Umbruch wenn Platz fehlt */
    gap: 5px;          /* Abstand zwischen den Items */
    list-style: none;
    padding: 0;
    margin: 0;
}

.woocommerce-widget-layered-nav-list__item {
    display: inline-flex;
}

.woocommerce-widget-layered-nav-list__item a {
    display: inline-flex;
    align-items: center;
}

.product-category-grid .pagination{
    margin-top: 0px !important;
}

.product-category-seo-text h1,
.product-category-seo-text h2,
.product-category-seo-text h3,
.product-category-seo-text h4,
.product-category-seo-text h5,
.product-category-seo-text h6{
    margin-bottom: 10px !important;
}

.product-category-seo-text h1{
    font-size: 24px !important;
}

.product-category-seo-text h2{
    font-size: 20px !important;
}

.product-category-seo-text h3{
    font-size: 16px !important;
}

.product-category-seo-text p{
    line-height: 1.2 !important;
    margin-bottom: 5px !important;
}
.product-category-seo-text p,
.product-category-seo-text li{
    font-size:  var(--awb-custom_typography_3-font-size) !important;
}

.p1x-quad-container,
.p1x-product-term-postcard{
    aspect-ratio: 1 / 1 !important;
}

.rainers-tipp-container-mobile{
    background-position: left 30px !important;
}

/* FAQ */
.fusion-faq-shortcode .fusion-filters{
    font-size: 14px !important;
    text-transform: uppercase !important;
}

.fusion-faq-shortcode .fusion-filter{
    margin-right: 15px !important;
}

.fusion-faq-shortcode .fusion-filter.fusion-active a{
    border: none !important;
    color: var(--awb-color1) !important;
    font-weight: normal !important;
}

.fusion-faq-shortcode .fusion-filters .presentation{
    
}

.fusion-faq-shortcode .fusion-filters{
    border: none !important;
}

@media only screen and (max-width: 800px){
    .fusion-filter{
        border: none !important;
        float: left !important;
    }
    .fusion-filters{
        margin-bottom: 30px !important;
    }
}


/* KONTAKT */
.form-submission-notices .messages-wrap{
    display: none !important;
}

/*  CHECKOUT  */
.german-market-block-checkout-checkboxes{
    margin-bottom: 30px;
}

.wc-block-components-button:not(.is-link){
    background-color: var(--awb-color5) !important;
    border: none;
    box-shadow: none;
    color: var(--awb-color1) !important;
    font-size: var(--awb-typography4-font-size);
    text-transform: uppercase;
    font-weight: 900;
}

.wc-block-components-button:not(.is-link):hover,
.wc-block-components-button:not(.is-link):focus {
    background-color: var(--awb-color7) !important;
}

/* FLAGGEN */
/* Nur diese eine Galerie auf 7 Spalten umstellen */
.awb-gallery-wrapper-1 .fusion-gallery.flag-gallery {
	display: grid !important;
	grid-template-columns: repeat(7, minmax(0, 1fr)) !important;
	gap: 10px !important;
	height: auto !important;
	position: static !important;
}
@media (min-width: 1100px) {
    /* Avadas absolute Positionierung neutralisieren */
    .awb-gallery-wrapper-1 .fusion-gallery.flag-gallery .fusion-gallery-column {
        position: static !important;
        left: auto !important;
        top: auto !important;
        width: auto !important;
        padding: 0 !important;
        display: block !important;
    }

    /* Clearfix-Reste ausblenden */
    .awb-gallery-wrapper-1 .fusion-gallery.flag-gallery .clearfix {
        display: none !important;
    }

    /* Bilder sauber skalieren */
    .awb-gallery-wrapper-1 .fusion-gallery.flag-gallery .fusion-gallery-image,
    .awb-gallery-wrapper-1 .fusion-gallery.flag-gallery .fusion-gallery-image img {
        display: block;
        width: 100%;
        height: auto;
    }
}
