/*
Theme Name:   Hello Elementor Child
Template:     hello-elementor
Version:      1.0.0
*/

h1,
h2,
h3,
h4 {
    font-family: "BanksMiles", Sans-serif !important;
}

/* WPClever Bundle: saubere Artikelzeilen */
.product .woosb-products {
  /*border: 1px solid #e5e5e5;
  border-radius: 12px;*/
  overflow: hidden;
  background: #fff;
  padding: 0;
}

.product .woosb-product > div {
  padding: 0;
}

.product .woosb-product {
  display: grid !important;
  grid-template-columns: 24px 54px minmax(0, 1fr);
  grid-template-rows: auto auto auto auto;
  column-gap: 12px;
  row-gap: 6px;
  align-items: start;
  padding: 10px 5px;
  border-bottom: 1px solid #eee;
  background: #fff;
}

.product .woosb-product:last-child {
  border-bottom: 0;
}

/* wichtig: Kinder der Titelbox ins Grid holen */
.product .woosb-title {
  display: contents;
}

/* Checkbox ganz links */
.product .woosb_item_checkbox {
  grid-column: 1;
  grid-row: 1 / 5;
  margin: 4px 0 0 0;
  align-self: start;
  justify-self: center;
}

/* Bild zweite Spalte */
.product .woosb-thumb {
  grid-column: 2;
  grid-row: 1 / 5;
  width: 54px;
  min-width: 54px;
}

.product .woosb-thumb img {
  width: 54px;
  height: 54px;
  object-fit: contain;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  padding: 0 !important;
}

/* Produktname: rechts, darf sauber umbrechen */
.product .woosb-name {
  grid-column: 3;
  grid-row: 1;
  min-width: 0; 
  font-size: 14px;
  font-weight: 700;
  color: #222;
  text-decoration: none;
  display: block;
  max-width: 100%;
  line-height: 1.35;
}

.product .woosb-name a:hover {
  text-decoration: underline;
}

.product .woosb-products .woosb-thumb a,
.product .woosb-products .woosb-name a {
  pointer-events: none;
  cursor: default;
  color: inherit;
  text-decoration: none;
}

.product .woosb-products .woosb-name a:hover {
  text-decoration: none;
}

/* Varianten / Select unter den Namen */
.product .woosb-product select,
.product .woosb-product .variations,
.product .woosb-product .woosb-variations,
.product .woosb-product .woosb-attributes,
.product .woosb-product .woosb-variation,
.product .woosb-availability {
  grid-column: 3;
  grid-row: 3;
}

.product .woosb-product select {
  max-width: 220px;
  min-height: 34px;
  font-size: 14px;
  margin-top: 2px;
}

/* letzte Zeile: Anzahl links, Preis rechts */
.product .woosb-quantity {
  grid-column: 3;
  grid-row: 4;
  justify-self: start;
  align-self: center;
  margin-top: 4px;
}

.product .woosb-price {
  grid-column: 3;
  grid-row: 4;
  justify-self: end;
  align-self: center;
  margin-top: 4px;
  font-weight: 700;
  white-space: nowrap;
}

.product .woosb-quantity .quantity {
  display: inline-flex;
}

.product .woosb-quantity input.qty {
  width: 72px !important;
  height: 36px !important;
  text-align: center;
  border: 1px solid #ccc;
  border-radius: 6px;
}

/* "löschen" etwas entschärfen, falls vorhanden */
.product .woosb-product .reset_variations {
  grid-column: 3;
  grid-row: 3;
  margin-left: 0;
  font-size: 13px;
}

.product .elementor-heading-title {
    font-family: "BanksMiles", Sans-serif !important;
    font-size: 26px !important;
    font-weight: 400 !important;
    text-transform: uppercase !important;
    line-height: 34px !important;
    color: var(--e-global-color-accent) !important;
    margin-bottom: 36px !important;
}

.loopm {
  display: none;
}

.woosb-cart-parent,
.woosb-item-parent {
    background: #fffffff5
}

.woosb-cart-child,
.woosb-item-child {
    background: #FEF7FA;
}

.woocommerce table.shop_table_responsive tr td.product-thumbnail::before,
.woocommerce-page table.shop_table_responsive tr td.product-thumbnail::before {
  content: none !important;
  display: none !important;
}

/* Bundle-Kindprodukte standardmäßig verstecken */
.woocommerce-cart tr.woosb-cart-child {
  display: none !important;
}

/* Wenn geöffnet */
.woocommerce-cart tr.woosb-cart-child.is-visible {
  display: table-row !important;
}

/* Toggle Button */
.woosb-toggle-children {
  display: inline-block;
  margin-top: 8px;
  padding: 4px 10px;
  font-size: 13px;
  line-height: 1.3;
  border: 1px solid #ddd;
  border-radius: 4px;
  background: #f7f7f7;
  cursor: pointer;
}



.woocommerce table.cart tr {
    border-color: #ff784b80 !important;
}

@media (max-width: 767px) {
    .woocommerce table.shop_table_responsive tr td::before, 
    .woocommerce-page table.shop_table_responsive tr td::before {
        display: block;
        text-align: right !important;    
        
        &::before {
            float: left;
        }
    }

    .woocommerce-cart-form .woosb-cart-parent,
    .woocommerce-cart-form .woosb-cart-child {

        .product-thumbnail {
            padding-top: 0 !important;
        }

        .product-name{
            text-align: left !important;
            padding-top: 0 !important;

            &::before {
                content: none !important;
            }
        }
    }
     
    .woocommerce-cart tr.woosb-cart-child.is-visible {
        display: block !important;
    }
}

@media (min-width: 768px) and (max-width: 1024px) {
  .bogi-product-scroller .swiper-slide {
    width: 72% !important;
    flex: 0 0 72% !important;
  }

  .bogi-product-scroller .swiper-wrapper {
    align-items: stretch;
  }

  .bogi-product-scroller img {
    display: block !important;
    width: 100%;
    height: auto;
    opacity: 1 !important;
    visibility: visible !important;
    object-fit: cover;
  }
}

@media (min-width: 768px) and (max-width: 1024px) {
  .bogi-product-scroller .swiper-slide,
  .bogi-product-scroller .elementor-swiper .swiper-slide {
    width: 72% !important;
  }
}

.woosb-products .woosb-product.needs-selection {
  background: #dff1f5;
  border-left: 5px solid #b9d3e8;
}

.woosb-products .woosb-product.needs-selection select {
  border: 2px solid #b9d3e8;;
}

h2.woocommerce-order-details__title {
    font-family: "BanksMiles", Sans-serif;
}


.checkout-info-text-abholung {
    font-weight: 700;
    display: block; 
    margin-bottom: 22px !important;
}

.woocommerce-terms-and-conditions-wrapper {
    h1 {
        font-family: "BanksMiles", Sans-serif;
        font-size: 34px !important;
        color: var(--e-global-color-accent);
    }
}
.woocommerce-order {
    .woocommerce-thankyou-order-received {
    
    }

    .woocommerce-customer-details {
        .addresses > div:first-child{
            margin-bottom: 32px !important;
        }

        .woocommerce-column__title {
            font-family: "BanksMiles", Sans-serif;
            font-size: 34px !important;
        }
    }
    
    .woocommerce-thankyou-order-details {
        margin: 16px 0 32px !important;
        background-color: #ff784b80 !important;
        padding: 15px 20px;
        color: #fff;

        display: flex;
        flex-direction: column;
        gap: 0;        

            li {
                font-size: 16px !important;
                font-family: "ArialNova", ArialNova, sans-serif;
                text-transform: none !important;

                float: none !important;
                width: 100% !important;
                flex: none;

                display: flex;
                flex-direction: row;
                align-items: baseline;
                justify-content: space-between;
                gap: 16px;

                margin: 0 !important;
                padding: 10px 0 !important;

                strong {
                    font-size: 16px !important;
                }
            }
        
    }
}

@media (min-width: 1024px) {
    .woocommerce-order {
        .woocommerce-thankyou-order-received {
        
        }
        
        .woocommerce-thankyou-order-details {
            flex-direction: row;
            align-items: stretch;

                li {
                    flex: 1 1 0;
                    width: auto !important;

                    flex-direction: column;
                    align-items: flex-start;
                    justify-content: flex-start;
                    gap: 5px;

                    padding: 0 20px !important;

                    border-right: 1px solid rgb(255 255 255 / 35%) !important;
                    border-bottom: 0;

                    strong {
                        text-align: left;
                    }

                    &:first-child {
                        padding: 0 20px 0 0 !important;
                    }

                    &:last-child {
                        padding: 0 0 0 20px !important;
                        border-right: 0 !important;
                    }
                }
        }
    }
}

.faq-css .e-n-accordion-item-title .f-number {
    font-family: 'BanksMiles', Sans-serif !important;
}

.schullisten-upload-form {
    .elementor-field-group-schullistefile {
        background-color: #FF774B;
        padding: 10px 10px !important;
        
        @media (min-width: 1024px) {
            padding: 16px 25% !important;
        }
        
        color: #fff;

        label {
            color: #fff !important;
        }

        #form-field-schullistefile {
            min-height: 56px;
            padding: 12px;
            background-color: rgb(245, 245, 245);
            border: 1px solid rgba(51, 51, 51, 0.6);
            border-radius: 3px;
        }
    }
}