/*
Theme Name: Épices Studio
Theme URI: https://example.com/
Author: Épices Studio
Description: Thème WooCommerce minimaliste pour la boutique Épices Studio.
Version: 6.0
Requires at least: 6.2
Requires PHP: 7.4
Text Domain: epices-studio
*/
:root{--ink:#111619;--muted:#626665;--line:#e9e7e1;--cream:#f7f5ef}*{box-sizing:border-box}body{margin:0;color:var(--ink);background:white;font-family:Arial,Helvetica,sans-serif;font-size:14px}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}.wrap{max-width:1450px;margin:auto;padding:0 4.5%}.site-header{height:65px;background:white;position:sticky;top:0;z-index:50;border-bottom:1px solid #eee}.header-inner{height:100%;display:flex;align-items:center;justify-content:space-between;gap:25px}.brand{font-size:21px;font-weight:800;letter-spacing:.07em;white-space:nowrap}.main-nav{display:flex;align-items:center;gap:32px;font-size:13px;font-weight:600}.main-nav a{padding:23px 0;display:inline-flex;align-items:center;gap:5px}.main-nav a:hover,.main-nav .current-menu-item>a{border-bottom:2px solid}
/* Sous-menus (arborescence à 2 niveaux : Boutique, Univers, Inspirations) */
.main-nav li{position:relative}
.main-nav .menu-item-has-children>a:after{content:'';width:6px;height:6px;border-right:1.4px solid currentColor;border-bottom:1.4px solid currentColor;transform:rotate(45deg);margin-top:-3px}
.main-nav .sub-menu{list-style:none;margin:0;padding:8px 0;position:absolute;top:100%;left:0;min-width:230px;background:#fff;border:1px solid var(--line);border-radius:6px;box-shadow:0 12px 30px rgba(0,0,0,.08);opacity:0;pointer-events:none;transform:translateY(4px);transition:opacity .15s ease,transform .15s ease;z-index:70}
.main-nav .menu-item-has-children:hover>.sub-menu,.main-nav .menu-item-has-children:focus-within>.sub-menu{opacity:1;pointer-events:auto;transform:translateY(0)}
.main-nav .sub-menu a{display:block;padding:10px 18px;font-weight:500}
.main-nav .sub-menu a:hover{background:var(--cream);border-bottom:none}
.main-nav .sub-menu .sub-menu{display:none} /* on limite volontairement l'arborescence à 2 niveaux, pas de 3e niveau imbriqué */.header-actions{display:flex;gap:18px;align-items:center}.icon-button{border:0;background:transparent;padding:5px;font-size:20px;line-height:1;display:inline-flex;align-items:center;justify-content:center;color:var(--ink)}.lang-switch{font-size:11px;font-weight:700;display:flex;gap:12px}.cart-count{background:#111;color:white;border-radius:50%;font-size:10px;padding:3px 6px;position:relative;top:-9px;left:-8px}.mobile-menu{display:none}.hero{min-height:510px;display:flex;align-items:center;background:#f7f5ef;position:relative;overflow:hidden}.hero-bg{position:absolute;inset:0 0 0 40%;background-position:center;background-size:cover}.hero-bg:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#f7f5ef 0%,rgba(247,245,239,.65) 15%,transparent 48%)}.hero-content{position:relative;z-index:1;width:50%;padding:65px 0}.eyebrow{text-transform:uppercase;letter-spacing:.22em;font-size:11px;font-weight:700;color:#777}.serif,h1,h2,h3,.woocommerce div.product .product_title{font-family:Georgia,'Times New Roman',serif;font-weight:400}h1{font-size:clamp(44px,5vw,78px);line-height:1.02;letter-spacing:-.045em;margin:20px 0 18px}h2{font-size:clamp(32px,3.3vw,52px);line-height:1.1;letter-spacing:-.035em;margin:10px 0 25px}h3{font-size:25px}.hero p{max-width:480px;font-size:17px;line-height:1.5}.btn,.button,.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.wp-element-button{display:inline-flex!important;align-items:center;justify-content:center;border-radius:100px!important;background:#101518!important;color:#fff!important;border:1px solid #101518!important;padding:14px 26px!important;font-size:13px!important;font-weight:600!important;line-height:1.2!important;min-height:43px}.btn-outline{background:transparent!important;color:#101518!important}.btn-row{display:flex;gap:16px;flex-wrap:wrap;margin-top:26px}.section{padding:55px 0}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:20px}.section-heading h2{margin-bottom:22px}.text-link{font-size:12px;font-weight:600}.products-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}.product-card{border:1px solid var(--line);border-radius:5px;overflow:hidden;position:relative}.product-card img{width:100%!important;height:auto!important;max-height:230px!important;aspect-ratio:1/1!important;object-fit:cover!important;object-position:center;background:#f6f4ee;display:block}.product-info{padding:11px 10px 15px;position:relative}.product-info h3{font-size:15px;margin:0 0 5px}.product-info .origin{font-size:11px;color:var(--muted);margin:0 0 9px}.product-info .price{font-size:12px;font-weight:700}.add-circle{position:absolute;right:9px;bottom:9px;background:#111619;color:white;border:0;border-radius:50%;width:31px;height:31px;font-size:21px;display:grid;place-items:center}.benefits{display:grid;grid-template-columns:repeat(4,1fr);padding:40px 0 45px;text-align:center}.benefit{padding:0 12px;border-right:1px solid var(--line)}.benefit:last-child{border:0}.benefit-icon{font-size:31px;display:block;margin-bottom:8px}.benefit h3{font-size:22px;margin:5px 0}.benefit p{margin:0;color:var(--muted)}.story-banner{min-height:350px;background-position:center;background-size:cover;color:white;display:flex;align-items:center;position:relative}.story-banner:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.67),rgba(0,0,0,.12))}.story-banner .wrap{position:relative;width:100%}.story-banner h2{margin-bottom:12px}.story-banner p{max-width:420px;line-height:1.6}.story-banner .btn{background:white!important;color:#111!important;border-color:white!important}.category-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.category-tile{background:#f8f6f1;display:block}.category-tile img{width:100%;aspect-ratio:1.4;object-fit:cover}.category-tile strong{display:block;padding:17px;font-family:Georgia,serif;font-size:24px;font-weight:400}.page-top{padding:42px 0 22px}.page-top h1{font-size:56px}.page-top p{color:var(--muted)}.shop-layout{display:grid;grid-template-columns:210px minmax(0,1fr);gap:32px;padding-bottom:70px}.shop-sidebar{font-size:13px}.shop-sidebar h3{font:700 13px Arial;margin:22px 0 12px}.shop-sidebar a{display:block;padding:7px 0}.shop-sidebar a:hover{text-decoration:underline}.shop-main .products-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.category-pills{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:25px}.category-pills a{border:1px solid #ddd;border-radius:40px;padding:9px 14px;font-size:12px}.category-pills a.active,.category-pills a:hover{background:#111;color:#fff}.shop-main .woocommerce-result-count,.shop-main .woocommerce-ordering{float:none;display:inline-block;margin-bottom:20px}.shop-main .woocommerce-ordering{float:right}.woocommerce ul.products{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;clear:both}.woocommerce ul.products:before,.woocommerce ul.products:after{display:none!important}.woocommerce ul.products li.product{width:auto!important;float:none!important;margin:0!important;border:1px solid var(--line);padding-bottom:12px!important}.woocommerce ul.products li.product img{width:100%!important;height:auto!important;max-height:260px!important;aspect-ratio:1/1!important;object-fit:cover!important;object-position:center;background:var(--cream)}.woocommerce ul.products li.product .woocommerce-loop-product__title,.woocommerce ul.products li.product .price,.woocommerce ul.products li.product .button{margin-left:10px!important;margin-right:10px!important}.woocommerce ul.products li.product .woocommerce-loop-product__title{font-family:Georgia,serif;font-size:17px!important;color:#111}.woocommerce ul.products li.product .price{color:#111!important}.woocommerce ul.products li.product .button{padding:10px 15px!important}.woocommerce div.product{padding:55px 0}.woocommerce div.product .product_title{font-size:50px}.woocommerce div.product p.price{color:#111;font-weight:700}.woocommerce div.product form.cart .variations select{padding:10px;border:1px solid #ddd;border-radius:5px}.woocommerce div.product .woocommerce-tabs{padding-top:30px}.woocommerce div.product .woocommerce-tabs ul.tabs li.active{background:#fff}.woocommerce-message,.woocommerce-info{border-top-color:#111}.woocommerce-message:before,.woocommerce-info:before{color:#111}.content-page{max-width:900px;margin:55px auto 80px;padding:0 25px;line-height:1.7}.content-page h1{font-size:56px}.editorial-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.editorial-card img{width:100%;aspect-ratio:1.35;object-fit:cover}.editorial-card h3{margin:12px 0}.site-footer{background:#f7f5ef;padding:55px 0 25px;margin-top:30px;position:relative;z-index:1}.footer-grid{display:grid;grid-template-columns:1.6fr repeat(4,1fr);gap:26px}.footer-grid h4{font-size:13px}.footer-grid a{display:block;color:#4c4c4c;padding:5px 0;font-size:12px;position:relative;z-index:2;pointer-events:auto;cursor:pointer}.footer-bottom{border-top:1px solid #ddd;margin-top:45px;padding-top:20px;color:#777;font-size:11px}.cart-backdrop{display:none;position:fixed;inset:0;background:#0005;z-index:90}.cart-backdrop.open{display:block}.cart-drawer{position:fixed;right:0;top:0;height:100dvh;width:min(410px,100%);background:white;z-index:100;transform:translateX(102%);transition:transform .25s;box-shadow:-8px 0 30px #0001;padding:25px;overflow-y:auto}.cart-drawer.open{transform:translateX(0)}.drawer-head{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #eee;padding-bottom:20px;margin-bottom:20px}.drawer-head h3{font:600 19px Arial;margin:0}.cart-drawer .woocommerce-mini-cart-item{display:grid;grid-template-columns:65px 1fr;gap:12px;padding:15px 0!important;border-bottom:1px solid #eee;min-height:100px}.cart-drawer .woocommerce-mini-cart-item img{float:none!important;width:65px!important;height:65px!important;object-fit:cover;grid-row:span 2}.cart-drawer .woocommerce-mini-cart-item a.remove{position:absolute;right:0;left:auto!important;font-size:18px}.cart-drawer .woocommerce-mini-cart-item a:not(.remove){font-size:13px;font-weight:600;padding-right:18px}.cart-drawer .woocommerce-mini-cart-item .quantity{grid-column:2;font-size:12px}.cart-drawer .woocommerce-mini-cart__total{padding:20px 0}.cart-drawer .woocommerce-mini-cart__buttons a{width:100%;margin:0 0 10px!important}.cart-drawer .woocommerce-mini-cart__buttons a:first-child{background:white!important;color:#111!important}.screen-reader-text{position:absolute;clip:rect(1px,1px,1px,1px);overflow:hidden;height:1px;width:1px}.woocommerce .quantity .qty{min-height:40px;border:1px solid #ddd;border-radius:6px}.woocommerce-cart .woocommerce,.woocommerce-checkout .woocommerce,.woocommerce-account .woocommerce{padding:35px 0 70px}.woocommerce table.shop_table{border-color:#eee}.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea{padding:12px;border:1px solid #ddd;border-radius:5px}.woocommerce-checkout #payment{background:#f7f5ef}.search-form{display:flex;gap:8px}.search-form input{border:1px solid #ddd;padding:10px;min-width:0}.search-form button{border:0;background:#111;color:#fff;padding:10px}.empty-state{padding:40px 0;color:#666}@media(max-width:1050px){.products-grid{grid-template-columns:repeat(3,1fr)}.main-nav{gap:14px}.hero-content{width:60%}.footer-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:700px){.wrap{padding:0 5%}.site-header{height:60px}.brand{font-size:16px}.mobile-menu{display:block}.main-nav{display:none;position:absolute;top:60px;left:0;right:0;background:white;padding:15px 5%;box-shadow:0 8px 15px #0001}.main-nav.open{display:flex;flex-direction:column;align-items:stretch;gap:0}.main-nav a{padding:12px}.main-nav .menu-item-has-children>a:after{margin-left:auto;margin-right:4px}.main-nav .sub-menu{position:static;opacity:1;pointer-events:auto;transform:none;box-shadow:none;border:0;border-radius:0;background:var(--cream);display:none;padding:4px 0 4px 14px;min-width:0}.main-nav li.submenu-open>.sub-menu{display:block}.main-nav .sub-menu a{padding:10px 0}.header-actions{gap:8px}.lang-switch{gap:6px}.hero{min-height:650px;align-items:end}.hero-bg{inset:0 0 35% 0}.hero-bg:before{background:linear-gradient(0deg,#f7f5ef,transparent 65%)}.hero-content{width:100%;padding:260px 0 35px}.hero h1{font-size:47px}.hero p{font-size:14px}.section{padding:35px 0}.products-grid,.shop-main .products-grid,.woocommerce ul.products{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:9px}.benefits{grid-template-columns:repeat(2,1fr);gap:25px}.benefit:nth-child(2){border:0}.benefit h3{font-size:18px}.shop-layout{display:block}.shop-sidebar{display:none}.category-grid,.editorial-grid{grid-template-columns:1fr}.page-top h1,.content-page h1{font-size:42px}.footer-grid{grid-template-columns:repeat(2,1fr);gap:20px}.site-footer{padding-top:35px}.woocommerce div.product .product_title{font-size:38px}.section-heading{align-items:start}.section-heading h2{font-size:34px}}

/* Épices Studio — variable product format buttons and single live price */
.woocommerce div.product form.cart .variations{margin:24px 0 12px!important;border:0!important}
.woocommerce div.product form.cart .variations td,.woocommerce div.product form.cart .variations th{display:block;text-align:left;padding:0!important;border:0!important}
.woocommerce div.product form.cart .variations label{font-family:Arial,Helvetica,sans-serif;font-size:13px;font-weight:700;margin-bottom:10px;display:block}
.woocommerce div.product form.cart .variations .value{width:100%}
.woocommerce div.product form.cart .variations select.es-native-variation-select{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important}
.es-weight-options{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;width:min(100%,430px)}
.es-weight-option{background:#fff;color:#15191b;border:1px solid #dedede;border-radius:6px;min-height:47px;padding:10px 4px;font:600 13px Arial,Helvetica,sans-serif;cursor:pointer}
.es-weight-option:hover,.es-weight-option:focus-visible{border-color:#111;outline-offset:2px}
.es-weight-option.is-active{border:2px solid #111;background:#f7f5ef}
.woocommerce div.product form.cart .reset_variations{display:inline-block!important;margin:12px 0 0!important;font:12px Arial,Helvetica,sans-serif;color:#666}
.woocommerce div.product .summary>p.price{font:700 23px Arial,Helvetica,sans-serif!important;color:#111!important;margin:15px 0 20px}
.woocommerce div.product .single_variation .price{display:none!important}
.woocommerce div.product form.cart .woocommerce-variation{min-height:0!important;margin:0!important}
.woocommerce div.product form.cart .woocommerce-variation-add-to-cart{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:16px}
.woocommerce div.product form.cart .quantity{margin:0!important}
.woocommerce ul.products li.product .woocommerce-loop-product__title{font-family:Arial,Helvetica,sans-serif!important;font-size:14px!important;font-weight:600!important}
@media(max-width:480px){.es-weight-options{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* V4 — Square product imagery on the homepage, regardless of original dimensions. */
.home .products-grid .product-card > a:first-child {
  display: block;
  width: 100%;
  aspect-ratio: 1 / 1;
  overflow: hidden;
  background: #f6f4ee;
}
.home .products-grid .product-card > a:first-child img {
  display: block;
  width: 100% !important;
  height: 100% !important;
  max-width: none;
  aspect-ratio: auto;
  object-fit: cover;
  object-position: center;
}

/* V6: constrain the homepage card image at the container level, not just img.
   Applies to static front pages and Customizer previews alike. */
.products-grid { align-items: start; }
.products-grid > .product-card { min-width: 0; align-self: start; }
.products-grid > .product-card > a.es-product-image {
  position: relative; display: block; width: 100%; height: auto;
  aspect-ratio: 1 / 1; overflow: hidden; background: #f6f4ee;
}
.products-grid > .product-card > a.es-product-image > img {
  position: absolute !important; inset: 0 !important; display: block !important;
  width: 100% !important; height: 100% !important; max-width: none !important;
  max-height: none !important; aspect-ratio: auto !important;
  object-fit: cover !important; object-position: center !important; margin: 0 !important;
}
.products-grid > .product-card .product-info h3 {font-family: Arial,Helvetica,sans-serif!important;font-weight:600!important;font-size:14px!important;}
