
:root{
  --as-woo-green:#184C2E;
  --as-woo-green-2:#2F6B3A;
  --as-woo-accent:#4A8D3B;
  --as-woo-soft:#F5F8EF;
  --as-woo-text:#263C2D;
  --as-woo-muted:#68726A;
  --as-woo-border:#E1E9DC;
  --as-woo-radius:14px;
}

/* Base */
.as-woo-design-kit.woocommerce,
.as-woo-design-kit .woocommerce{
  color:var(--as-woo-text);
}

.as-woo-design-kit .woocommerce a{
  color:var(--as-woo-green);
}

/* Images produit Elementor / WooCommerce */
.as-woo-design-kit .woocommerce-product-gallery,
.as-woo-design-kit .elementor-widget-woocommerce-product-images{
  border-radius:18px;
  overflow:hidden;
}

.as-woo-design-kit .woocommerce-product-gallery img{
  border-radius:14px;
}

.as-woo-design-kit .flex-control-thumbs{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
  margin-top:14px!important;
}

.as-woo-design-kit .flex-control-thumbs li{
  width:100%!important;
  margin:0!important;
}

.as-woo-design-kit .flex-control-thumbs img{
  border:2px solid transparent;
  border-radius:10px;
  transition:.2s ease;
}

.as-woo-design-kit .flex-control-thumbs img.flex-active{
  border-color:var(--as-woo-accent);
}

/* Titres / prix */
.as-woo-design-kit .product_title,
.as-woo-design-kit .elementor-widget-woocommerce-product-title h1{
  color:var(--as-woo-green);
  font-weight:700;
  line-height:1.12;
}

.as-woo-design-kit .price,
.as-woo-design-kit .elementor-widget-woocommerce-product-price{
  color:var(--as-woo-accent)!important;
  font-weight:600;
}

/* Quantité + ajouter au panier */
.as-woo-design-kit form.cart{
  display:flex;
  align-items:stretch;
  gap:14px;
  flex-wrap:wrap;
}

.as-woo-design-kit form.cart .quantity{
  margin:0!important;
}

.as-woo-design-kit form.cart .qty{
  min-height:58px;
  width:82px;
  border:1px solid var(--as-woo-border);
  border-radius:9px;
  background:#fff;
  font-weight:600;
}

.as-woo-design-kit .single_add_to_cart_button,
.as-woo-design-kit .button.alt,
.as-woo-design-kit button.button.alt,
.as-woo-design-kit .wc-block-components-button{
  min-height:58px;
  padding:16px 28px!important;
  border:0!important;
  border-radius:9px!important;
  background:var(--as-woo-green)!important;
  color:#fff!important;
  font-weight:700!important;
  box-shadow:none!important;
  transition:.2s ease!important;
}

.as-woo-design-kit .single_add_to_cart_button:hover,
.as-woo-design-kit .button.alt:hover,
.as-woo-design-kit button.button.alt:hover,
.as-woo-design-kit .wc-block-components-button:hover{
  background:var(--as-woo-green-2)!important;
  transform:translateY(-1px);
}

/* Shortcodes */
.as-woo-benefits{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
  margin:24px 0;
}

.as-woo-benefit{
  display:flex;
  align-items:center;
  gap:11px;
  min-height:58px;
  padding:14px 15px;
  background:var(--as-woo-soft);
  border:1px solid var(--as-woo-border);
  border-radius:10px;
  color:#21452D;
  font-size:14px;
}

.as-woo-benefit span{
  font-size:21px;
  line-height:1;
}

.as-woo-delivery{
  display:flex;
  align-items:center;
  gap:16px;
  margin-top:22px;
  padding:20px 22px;
  background:linear-gradient(135deg,#F3F8ED,#FBFCF8);
  border:1px solid #DFE9D6;
  border-radius:12px;
}

.as-woo-delivery__icon{
  font-size:32px;
  line-height:1;
}

.as-woo-delivery strong{
  display:block;
  color:#214D2F;
  font-size:16px;
  margin-bottom:4px;
}

.as-woo-delivery p{
  margin:0;
  color:var(--as-woo-muted);
  font-size:14px;
  line-height:1.5;
}

.as-woo-trust{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:24px;
  margin-top:22px;
  padding:28px;
  background:#FAFBF8;
  border:1px solid #EDF0E8;
  border-radius:14px;
}

.as-woo-trust>div{
  position:relative;
  padding-left:42px;
}

.as-woo-trust span{
  position:absolute;
  left:0;
  top:0;
  width:28px;
  height:28px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  background:#EAF4DF;
  color:var(--as-woo-green-2);
  font-weight:800;
}

.as-woo-trust strong{
  display:block;
  color:#21452D;
  margin-bottom:6px;
}

.as-woo-trust p{
  margin:0;
  color:#667067;
  font-size:14px;
  line-height:1.6;
}

/* Onglets produit */
.as-woo-design-kit .woocommerce-tabs{
  margin-top:50px;
}

.as-woo-design-kit .woocommerce-tabs ul.tabs{
  display:flex;
  gap:28px;
  padding:0!important;
  margin:0 0 28px!important;
  border-bottom:1px solid var(--as-woo-border);
}

.as-woo-design-kit .woocommerce-tabs ul.tabs::before,
.as-woo-design-kit .woocommerce-tabs ul.tabs li::before,
.as-woo-design-kit .woocommerce-tabs ul.tabs li::after{
  display:none!important;
}

.as-woo-design-kit .woocommerce-tabs ul.tabs li{
  border:0!important;
  background:transparent!important;
  margin:0!important;
  padding:0 0 13px!important;
}

.as-woo-design-kit .woocommerce-tabs ul.tabs li.active{
  border-bottom:2px solid var(--as-woo-green)!important;
}

.as-woo-design-kit .woocommerce-tabs ul.tabs li a{
  padding:0!important;
  color:#586159!important;
  font-weight:600!important;
}

.as-woo-design-kit .woocommerce-tabs ul.tabs li.active a{
  color:var(--as-woo-green)!important;
}

/* Cartes boutique */
.as-woo-design-kit ul.products{
  gap:28px 0;
}

.as-woo-design-kit ul.products li.product{
  padding:0 0 22px;
  border:1px solid #ECF0E9;
  border-radius:14px;
  overflow:hidden;
  background:#fff;
  transition:.25s ease;
}

.as-woo-design-kit ul.products li.product:hover{
  transform:translateY(-4px);
  box-shadow:0 15px 40px rgba(23,62,39,.09);
}

.as-woo-design-kit ul.products li.product img{
  margin:0 0 18px!important;
  aspect-ratio:1/1;
  object-fit:cover;
}

.as-woo-design-kit ul.products li.product .woocommerce-loop-product__title,
.as-woo-design-kit ul.products li.product .price,
.as-woo-design-kit ul.products li.product .button{
  margin-left:18px!important;
  margin-right:18px!important;
}

.as-woo-design-kit ul.products li.product .woocommerce-loop-product__title{
  color:var(--as-woo-green);
  font-size:18px!important;
}

.as-woo-design-kit ul.products li.product .button{
  display:block;
  text-align:center;
  margin-top:15px!important;
  border-radius:8px!important;
  background:var(--as-woo-green)!important;
  color:#fff!important;
}

/* Panier / checkout */
.as-woo-design-kit .woocommerce-cart-form,
.as-woo-design-kit .cart_totals,
.as-woo-design-kit .woocommerce-checkout-review-order,
.as-woo-design-kit .woocommerce-billing-fields,
.as-woo-design-kit .woocommerce-additional-fields{
  background:#fff;
  border:1px solid #E7ECE4;
  border-radius:14px;
  padding:24px;
}

.as-woo-design-kit .woocommerce form .form-row input.input-text,
.as-woo-design-kit .woocommerce form .form-row textarea,
.as-woo-design-kit .select2-container--default .select2-selection--single{
  min-height:48px;
  border:1px solid #DCE5D7;
  border-radius:8px;
  background:#fff;
}

@media(max-width:767px){
  .as-woo-benefits,
  .as-woo-trust{
    grid-template-columns:1fr;
  }

  .as-woo-design-kit form.cart{
    flex-direction:column;
  }

  .as-woo-design-kit form.cart .quantity,
  .as-woo-design-kit form.cart .qty,
  .as-woo-design-kit .single_add_to_cart_button{
    width:100%!important;
  }

  .as-woo-design-kit .woocommerce-tabs ul.tabs{
    gap:15px;
    overflow-x:auto;
    white-space:nowrap;
  }
}
