/*
Theme Name: BAG Webshop
Theme URI: 
Author: Datenhaus AG
Author URI: https://datenhaus.ch
Description: Webshop Projekt für BAG 2023
Requires at least: 6.0
Tested up to: 6.3.1
Requires PHP: 5.7
Version: 1.0.41
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: bagwebshop
Tags: grid-layout, one-column, two-columns, three-columns, four-columns, wide-blocks, blog, portfolio, entertainment, accessibility-ready, block-patterns, block-styles, custom-logo, custom-menu, editor-style, featured-images, full-site-editing, full-width-template, rtl-language-support, style-variations, template-editing, theme-options, translation-ready
*/

/* CSS Reset
---------------------------------------------------------------------------- */



*,
*::before,
*::after {
  box-sizing: inherit;
}

html {
  scroll-behavior: smooth;
  box-sizing: border-box;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
}

a {
  text-decoration: none;
}
a:focus,
a:hover {
  text-decoration: underline;
}

b,
strong {
  font-weight: var(--wp--custom--font-weight--semi-bold);
}

blockquote {
  margin: 0;
}

ol,
ul {
  padding: 0;
}

ol:where(:not([class*="wp-block"])),
ol:where(.wp-block-list),
ul:where(:not([class*="wp-block"])),
ul:where(.wp-block-list) {
  padding-inline-start: var(--wp--preset--spacing--medium);
}

div[class*="wp-block-"] figcaption {
  color: var(--wp--preset--color--secondary);
  font-size: var(--wp--preset--font-size--x-small);
  margin-bottom: 0;
  margin-top: 20px;
  text-align: center;
}

img,
video {
  /* border-radius: 5px; */
}

/* Standardize form styling
--------------------------------------------- */

input,
button,
textarea,
select {
  font: inherit;
}

input[type="button"],
input[type="email"],
input[type="search"],
input[type="submit"],
input[type="text"],
textarea {
  -webkit-appearance: none;
}

input:not([type="submit"]),
select,
textarea,
.wp-block-post-comments-form input:not([type="submit"]):not([type="checkbox"]),
.wp-block-post-comments-form textarea {
  color: var(--wp--preset--color--main);
  border-radius: 1rem;
  border: solid 1px var(--wp--preset--color--main);
  padding: 0.5em 1em;
  font-size: var(--wp--preset--font-size--small);
  width: 100%;
}

input:focus-visible,
textarea:focus-visible {
  outline-color: var(--wp--preset--color--primary);
}

input[type="checkbox"],
input[type="image"],
input[type="radio"] {
  width: auto;
}

label {
  width: 100%;
  display: block;
}

::placeholder {
  color: var(--wp--preset--color--main);
  font-size: var(--wp--preset--font-size--small);
  opacity: 0.35;
}

:root :where(.wp-element-button, .wp-block-button__link) {
    border: lightgray .5px solid !important;
    color: #000 !important;
    text-decoration: none;
    border-radius: 1rem;
    background: unset;
    position: relative;
    padding-right: 70px; /* Add space for arrow */
    display: inline-flex;
    align-items: center;
    justify-content: space-between;
    padding-left: .8rem;
    padding-top: .8rem;
    padding-bottom: .8rem;
}
:root :where(.wp-element-button, .wp-block-button__link):not(.wc-block-components-drawer__close)::after {
    content: '→';
    color: #FFFFFF; /* White arrow */
    background-color: #1D0C18; /* Black square background */
    font-size: 16px;
    width: 32px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 10px; /* Slightly rounded corners for the square */
    position: absolute;
    right: 8px;
    top: 50%;
    transform: translateY(-50%);
    transition: transform 0.3s ease;
}
.wc-block-components-button:not(.is-link).is-style-outline:active, .wc-block-components-button:not(.is-link).is-style-outline:disabled, .wc-block-components-button:not(.is-link).is-style-outline:focus, .wc-block-components-button:not(.is-link).is-style-outline:hover, .wc-block-components-button:not(.is-link).outlined:active, .wc-block-components-button:not(.is-link).outlined:disabled, .wc-block-components-button:not(.is-link).outlined:focus, .wc-block-components-button:not(.is-link).outlined:hover {
  color: #fff !important;
}
/* Hover effect */
:root :where(.wp-element-button, .wp-block-button__link):hover::after {
    transform: translateY(-50%) translateX(3px);
}
.wc-block-components-notice-banner>.wc-block-components-notice-banner__content .wc-forward {
  padding-left: .8rem !important;
  padding-top: .8rem !important;
  padding-bottom: .8rem !important;
  padding-right: 70px !important;
  text-decoration: none !important;
  border-radius: 1rem !important;
}
.woocommerce-MyAccount-downloads-file.button {
  text-decoration: underline;
}

.add-to-cart-wrapper {
    padding: 16px;
}

.add-to-cart-button {
    display: flex;
    gap: 12px;
    align-items: center;
    margin-top: 12px;
}

/* Language dropdown - full width */
.variations select {
        height: 48px !important;
    border-radius: 8px;
    border: 1px solid #ddd;
    padding: 12px 16px;
    margin-bottom: 12px !important;
}
/* Put language selection and quantity on same row */
.add-to-cart-wrapper .variations,
.add-to-cart-wrapper .add-to-cart-button {
    margin-bottom: 12px;
}

/* First row: Language dropdown + Quantity */
.variations {
    display: flex;
    gap: 12px;
    align-items: center;
    margin-bottom: 12px;
}

.variations .select-parent {
    flex: 1; /* Language dropdown takes most space */
}

/* Move quantity to first row */
.quantity {
    order: -1; /* Move before add to cart button */
    flex-shrink: 0;
}

/* Second row: Add to cart button full width */
.add-to-cart-button {
    display: flex;
    margin-top: 0;
}

.single_add_to_cart_button {
    width: 15rem;
    height: 48px !important;
    border-radius: 8px;
}

/* Style adjustments */
.variations select {
    height: 48px;
    border-radius: 8px;
    border: 1px solid #ddd;
    padding: 12px 16px;
}

.quantity input {
    width: 60px;
    height: 48px;
    text-align: center;
    border-radius: 8px;
    border: 1px solid #ddd;
}
.quantity .qty {
  width: 5rem;
}
.add-to-cart-wrapper .wp-element-button.product_type_simple {
  float: right;
}
/* Helper styles that can't be done via theme.json
---------------------------------------------------------------------------- */

a.more-link {
  display: block;
}

/* Inline code */
*:not(.wp-block-code) > code {
  background-color: var(--wp--preset--color--tertiary);
  font-weight: var(--wp--custom--font-weight--medium);
  padding: 3px 5px;
  position: relative;
  border-radius: 3px;
}

/* Adjust terms at bottom of posts */
.single .wp-block-group .wp-block-post-terms,
.blog .wp-block-group .wp-block-post-terms {
  margin-bottom: -8px !important;
}

/* Remove margin on term description on archive pages */
.wp-block-term-description p:last-child {
  margin-bottom: 0;
}

/* Remove last separator on post list */
.remove-border-and-padding .wp-block-post-template li:last-child .wp-block-separator {
  display: none;
}

/* Hide post meta div if no tags assigned */
.single .wp-block-group:has(> .post-meta:empty) {
  display: none;
}

/*### Custom BAG Sytyles ###*/

/* WPML hide Test banner */
.otgs-development-site-front-end {
  display: none;
}

.product.product-row .product-thumbnail-wrapper {
  width: 80%;
  border-radius: 1rem;
}
.product-row td:first-child {
  max-width: 240px;
}

/* Breakpoint for Navblock */
/* copy of wp default css to a 1000px media query */
@media (min-width: 781px) {
  .wp-block-navigation__responsive-container-open:not(.always-shown) {
    display: none !important;
  }

  .wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open) {
    display: block !important;
    width: 100%;
    position: relative;
    z-index: auto;
    background-color: inherit;
  }
}

/* neutralize the wp default for 600px */
@media (min-width: 600px) {
  .wp-block-navigation__responsive-container-open:not(.always-shown) {
    display: flex;
  }
  .wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open) {
    display: none;
  }
}

@media (max-width: 781px) {
  .bag-mobile-padding {
    padding-right: var(--wp--preset--spacing--x-small) !important;
  }
}

/* Lang Switcher mobile */
.bag-lang-mobile {
  text-transform: uppercase;
  font-size: var(--wp--preset--font-size--x-small);
  padding-top: 1rem;
}
@media (min-width: 781px) {
  .bag-show-mobile {
    display: none !important;
  }
}

@media (max-width: 781px) {
  .bag-show-desk {
    display: none !important;
  }
}

[data-wpml="language-item"]:first-of-type {
  margin-top: 0 !important;
}

/* Custom BAG Transparent Header */
.bag-header {
  /* position: fixed;
  z-index: 999;
  width: 100%; */
  background-color: var(--wp--preset--color--base);
}
.bag-header {
    background: unset;
    border: none;
}
@media (min-width: 768px){
  .home header.site-header,
  .archive header {
  z-index: 2;
  position: fixed;
  transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}
.home header, .home .bag-header,
.archive header, .archive .bag-header {
    display: block;
    justify-content: space-between;
    align-items: center;
    width: 100%;
}

.home.scrolled header,
.archive.scrolled header {
    background-color: rgba(255, 255, 255, 0.95);
    backdrop-filter: blur(10px);
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
}
.home .space-between-fixed,
.archive .space-between-fixed {
  flex: 1; /* Equal width distribution */
  text-align: center; /* Center content within each element */
}
.home .wp-block-cover,
.archive .wp-block-cover {
  padding-top: 96px;
}
}

.wp-block-site-logo {
  padding: 10px;
}

.wc-block-components-button.wc-block-components-drawer__close {
  border-radius: 1rem;
}
/*** Woocommerce custom styles ***/
/* Hide price from cart and checkout */
.woocommerce table.cart td:nth-of-type(6),
.woocommerce table.cart th:nth-of-type(6),
.woocommerce table.cart td:nth-of-type(4),
.woocommerce table.cart th:nth-of-type(4),
.woocommerce table.shop_table tr.cart-subtotal,
.woocommerce table.shop_table tr.order-total,
.woocommerce table.shop_table th.product-total,
.woocommerce table.shop_table td.product-total,
.woocommerce table.shop_table .woocommerce-shipping-destination,
.woocommerce .cart_totals h2,
.wc-block-components-totals-item.wc-block-mini-cart__footer-subtotal,
.woocommerce-order-overview__total.total,
.woocommerce-table__product-table.product-total,
.woocommerce-table__product-total.product-total,
.woocommerce-table.woocommerce-table--order-details.shop_table.order_details tfoot tr:nth-of-type(1),
.woocommerce-table.woocommerce-table--order-details.shop_table.order_details tfoot tr:nth-of-type(3),
.woocommerce-customer-details h2,
.col-buy.col-add-to-cart.sorting_disabled,
.wc-block-cart-item__total-price-and-sale-badge-wrapper,.price.wc-block-components-product-price {
  display: none;
}

.woocommerce-order-overview.woocommerce-thankyou-order-details.order_details {
  list-style-type: none;
}

.woocommerce table.cart td:nth-of-type(4),
.woocommerce table.cart th:nth-of-type(4) {
  display: none;
}

.woocommerce .quantity .qty {
  width: 7rem;
}

.woocommerce-billing-fields h3 {
  visibility: hidden;
}

.wc-block-mini-cart-items .wc-block-components-quantity-selector__button {
  display: none;
}

.wc-block-mini-cart-items .wc-block-components-quantity-selector__input {
  pointer-events: none;
}

.bag-shoppage {
  display: flex;
  gap: 1rem;
}

/* Product Tabelle */
.wc-product-table-controls .dataTables_filter:first-child {
  margin-right: 0 !important;
}

/* Woo Button */
.wp-element-button {color: #000;}
.wp-element-button:hover {color: var(--wp--preset--color--primary);}
/* Table alignment */
.wc-product-table td {
  vertical-align: inherit !important;
}

/* hide Stock info */
.stock.in-stock,
.woocommerce-variation.single_variation .woocommerce-variation-description {
  display: none !important;
}


.woocommerce-product-gallery__image {
  border-radius: 1rem;
}

.wc-product-table thead th,
.woocommerce-table thead th{
  text-align: left;
}

/* Hide Tabs */
.woocommerce-tabs.wc-tabs-wrapper ul.wc-tabs,
.woocommerce-tabs.wc-tabs-wrapper .woocommerce-Tabs-panel--description h2 {
  display: none !important;
}

.bag-mail-link-head a {
  color: #000;
}
.bag-mail-link-head a:hover {
  color: #fff;
  text-decoration: underline;
}

.aiowps-site-lockout-body {
  width: 100vmax;
  height: 100vh;
  background-color: #fff;
}

.aiowps-site-lockout-box {
  border: none !important;
  margin-top: 0px;
  padding-top: 100px;
}



.woocommerce table.variations tr td select {
  padding: 0px 10px;
}

.woocommerce-cart .wc-proceed-to-checkout a.checkout-button {
    padding: .5em 1em;
}

/* style login page*/


.cmp-login {
	max-width: 580px;
}

/*toggle transition on login page*/
.cmp-login-non-switch {
    opacity: 1; /* Start fully hidden */
    max-height: 700px; /* Start with zero height */
    overflow: hidden; /* Prevent content from spilling out during transition */
}

.woocommerce-ResetPassword.lost_reset_password {
  margin: 100px auto 150px auto;
  max-width: 700px;
}

/* hide account details for PW reset and email change */
.woocommerce-MyAccount-content label[for="account_email"],
.woocommerce-MyAccount-content input.woocommerce-Input--email,
.woocommerce-MyAccount-content label[for="password_current"],
.woocommerce-MyAccount-content label[for="password_1"],
.woocommerce-MyAccount-content label[for="password_2"],
.woocommerce-MyAccount-content span.password-input,
.woocommerce-MyAccount-content .woocommerce-EditAccountForm fieldset {display: none !important;}

table.wc-product-table tbody td .button.alt {
  border-radius: unset;
}

.col-buy.col-add-to-cart.sorting_disabled {
  display: block; 
}

table.wc-product-table.woocommerce tbody td{
  background-color: transparent !important;
}
.woocommerce div.product div.images .flex-control-thumbs li {
  padding-right: 5px;
  padding-bottom: 5px;
}
.woocommerce div.product div.images .flex-control-thumbs li img {
  border-radius: 1rem;
}
.woocommerce div.product div.images .flex-control-thumbs {
   margin-top: 2rem;
}

table.wc-product-table.woocommerce tbody tr:first-child td {
    padding-top: 4rem;
}
.woocommerce div.product form.cart .variations th {
    vertical-align: baseline !important;
}

.wc-product-table .product .quantity input.qty {
  height: 48px !important;
}

table.wc-product-table .cart {
  display: inline-flex !important;
}
.d-none {
  display: none !important;
}
.col-add-to-cart .product_type_variable {
    width: 15rem;
    height: 48px !important;
    justify-content: center !important;
    display: inline-flex !important;
}
.wpml-language-switcher-block {
  margin-block-start: 0;
}

.wc-block-components-totals-wrapper .wc-block-components-totals-item.wc-block-components-totals-footer-item,
.wc-block-cart-items__header-total,
.wp-block-woocommerce-cart-order-summary-coupon-form-block {
  display: none;
}
.product-thumbnail-wrapper {
  width: 160px !important;
}

.wp-block-query-pagination .wp-block-query-pagination-numbers {
  color: #fff;
  border-radius: 5px !important;
}

:root :where(.wp-block-query-pagination a:where(:not(.wp-element-button))){
  background-color: #9de4e0;
  border-radius: 0;
}
 
.wp-block-query-pagination .wp-block-query-pagination-previous, 
.wp-block-query-pagination .wp-block-query-pagination-next {
  border-radius: 10px;
}

.woocommerce-store-notice {
	    background: linear-gradient(150deg, rgb(254, 218, 247) 0%, rgb(199, 247, 242) 49%, rgb(165, 222, 255) 100%);
color: #000;
}

.woocommerce-order-overview__total.total {
  display: none !important; 
}