/* Tonton Smoke - identite boutique
   charbon #141210 | braise #E8622A | laiton #C8963E | papier #F7F4EE | fumee #7C7772 */
:root{
  --ts-charbon:#141210; --ts-encre:#1B1714; --ts-braise:#E8622A; --ts-braise-fonce:#C2481C;
  --ts-laiton:#C8963E; --ts-laiton-clair:#EBCB8B; --ts-papier:#F7F4EE; --ts-carte:#FDFBF7;
  --ts-fumee:#7C7772; --ts-trait:#E3DCCE; --ts-vert:#3F7A52;
  --ts-serif:Georgia,"Iowan Old Style","Times New Roman",serif;
}

/* ---------- typographie ---------- */
body{background:var(--ts-papier);color:#3A3531}
h1,h2,h3,h4,.site-title,.widget h3,.entry-title,
.woocommerce-loop-product__title,.product_title{font-family:var(--ts-serif);letter-spacing:-.01em}
h1,h2{text-wrap:balance}
.price,.amount,.quantity input,.woocommerce-Price-amount{font-variant-numeric:tabular-nums}

/* ---------- en-tete ---------- */
.site-header{border-bottom:3px solid var(--ts-laiton);padding-bottom:0}
.site-header .custom-logo-link img{max-width:260px;height:auto}
.storefront-primary-navigation{background:var(--ts-encre)}
.main-navigation ul.menu>li>a,.main-navigation ul.nav-menu>li>a{
  font-family:var(--ts-serif);font-size:.98em;letter-spacing:.02em}
.main-navigation ul.menu>li>a:hover{color:var(--ts-laiton-clair)}
.main-navigation ul.menu>li.current-menu-item>a{box-shadow:inset 0 -3px 0 var(--ts-braise)}
.site-header-cart .cart-contents{color:#F5F1E8}
.site-header-cart .cart-contents .count{color:var(--ts-laiton)}

/* ---------- bandeau age ---------- */
.ts-bandeau{background:var(--ts-encre);color:#C9C2B6;font-size:.82em;letter-spacing:.06em;
  text-align:center;padding:.5em 1em;border-bottom:1px solid #2A2420}
.ts-bandeau strong{color:var(--ts-laiton-clair);font-weight:600}

/* ---------- cartes produit ---------- */
ul.products li.product{background:var(--ts-carte);border:1px solid var(--ts-trait);
  border-radius:4px;padding:1em 1em 1.4em;transition:box-shadow .18s ease,transform .18s ease;position:relative}
ul.products li.product:hover{box-shadow:0 6px 22px rgba(20,18,16,.13);transform:translateY(-2px)}
ul.products li.product .woocommerce-loop-product__title{font-size:1.02em;line-height:1.35;min-height:2.7em}
ul.products li.product .price{color:var(--ts-braise-fonce);font-weight:700;font-size:1.12em}
ul.products li.product .price del{color:var(--ts-fumee);font-weight:400;font-size:.85em}
ul.products li.product img{background:#fff;border-radius:3px}
ul.products li.product .button{background:var(--ts-encre);color:#F5F1E8}
ul.products li.product .button:hover{background:var(--ts-braise);color:#fff}
ul.products li.product .added_to_cart{color:var(--ts-braise-fonce)}

/* etiquettes */
.onsale{background:var(--ts-braise);color:#fff;border-radius:2px;font-family:var(--ts-serif);
  letter-spacing:.04em;padding:.3em .7em}
.ts-epuise{position:absolute;top:.8em;left:.8em;z-index:3;background:#6E6862;color:#fff;
  font-size:.72em;letter-spacing:.07em;text-transform:uppercase;padding:.28em .6em;border-radius:2px}
ul.products li.product.outofstock img{opacity:.55;filter:saturate(.45)}
ul.products li.product.outofstock .price{color:var(--ts-fumee)}

/* ---------- boutons ---------- */
.button,button,input[type=submit],.added_to_cart{border-radius:3px;font-weight:600;letter-spacing:.01em}
.button.alt,button.alt,.single_add_to_cart_button{background:var(--ts-braise)!important;color:#fff!important}
.button.alt:hover,button.alt:hover,.single_add_to_cart_button:hover{background:var(--ts-braise-fonce)!important}

/* ---------- fiche produit ---------- */
.single-product div.product .product_title{font-size:2.1em;line-height:1.15}
.single-product div.product p.price{color:var(--ts-braise-fonce);font-size:1.7em;font-weight:700}
.single-product .woocommerce-product-details__short-description{font-size:1.06em;color:#4A443F}
.woocommerce-tabs ul.tabs li.active a{box-shadow:inset 0 -3px 0 var(--ts-braise)}
.single-product div.product .stock.in-stock{color:var(--ts-vert);font-weight:600}
.single-product div.product .stock.out-of-stock{color:#A2453A;font-weight:600}
.entry-content h2{font-size:1.5em;margin-top:1.6em;padding-bottom:.25em;border-bottom:1px solid var(--ts-trait)}
.entry-content h3{font-size:1.18em;margin-top:1.3em;color:var(--ts-encre)}
.entry-content table{font-size:.95em}
.entry-content table th{background:#EFEADF;font-family:var(--ts-serif);text-align:left}
.entry-content table td,.entry-content table th{border:1px solid var(--ts-trait);padding:.55em .8em}

/* ---------- archives de categorie ---------- */
.woocommerce-products-header{border-bottom:1px solid var(--ts-trait);padding-bottom:.6em}
.woocommerce-products-header__title{font-size:2.2em}
.term-description{background:var(--ts-carte);border-left:3px solid var(--ts-laiton);
  padding:1em 1.3em;border-radius:0 4px 4px 0;font-size:1.02em}
.ts-archive-bas{margin-top:3em;padding-top:1.6em;border-top:1px solid var(--ts-trait);color:#4A443F}
.ts-archive-bas h2{font-size:1.35em}
ul.products li.product-category a{background:var(--ts-encre);border-radius:4px;display:block;overflow:hidden}
ul.products li.product-category h2.woocommerce-loop-category__title{color:#F5F1E8;font-size:1.05em;padding:.85em}
ul.products li.product-category mark{background:none;color:var(--ts-laiton)}

/* ---------- maillage interne ---------- */
.ts-liens{background:var(--ts-carte);border:1px solid var(--ts-trait);border-radius:4px;
  padding:1.1em 1.3em;margin:1.8em 0}
.ts-liens h3{margin:0 0 .5em;font-size:1.05em;color:var(--ts-encre)}
.ts-liens ul{margin:0;padding-left:1.1em}
.ts-liens li{margin:.28em 0}
.ts-liens a{color:var(--ts-braise-fonce);text-decoration:none;border-bottom:1px solid rgba(194,72,28,.3)}
.ts-liens a:hover{border-bottom-color:var(--ts-braise)}

/* ---------- pied de page ---------- */
.site-footer{border-top:3px solid var(--ts-laiton)}
.site-footer .widget h3,.site-footer h2{font-family:var(--ts-serif);color:var(--ts-laiton)}
.site-info{color:#8A847B;font-size:.88em}

/* ---------- accueil ---------- */
.ts-hero{background:linear-gradient(160deg,#1B1714 0%,#241D18 55%,#141210 100%);
  color:#F5F1E8;border-radius:6px;padding:3.2em 2.2em;margin-bottom:2.4em;position:relative;overflow:hidden}
.ts-hero:after{content:"";position:absolute;right:-90px;top:-90px;width:320px;height:320px;border-radius:50%;
  background:radial-gradient(circle,rgba(232,98,42,.26),transparent 68%)}
.ts-hero h1{color:#F5F1E8;font-size:2.7em;line-height:1.1;margin:0 0 .4em;max-width:16em}
.ts-hero p{color:#CFC8BC;font-size:1.12em;max-width:44em;margin:0 0 1.4em}
.ts-hero .ts-cta{display:inline-block;background:var(--ts-braise);color:#fff;font-weight:600;
  padding:.8em 1.7em;border-radius:3px;text-decoration:none;margin-right:.6em}
.ts-hero .ts-cta:hover{background:#F0752F;color:#fff}
.ts-hero .ts-cta--fant{background:transparent;border:1px solid var(--ts-laiton);color:var(--ts-laiton-clair)}
.ts-hero .ts-cta--fant:hover{background:rgba(200,150,62,.14);color:var(--ts-laiton-clair)}

.ts-atouts{display:grid;grid-template-columns:repeat(auto-fit,minmax(215px,1fr));gap:1em;margin:0 0 2.6em}
.ts-atout{background:var(--ts-carte);border:1px solid var(--ts-trait);border-radius:4px;padding:1.1em 1.2em}
.ts-atout strong{display:block;font-family:var(--ts-serif);font-size:1.06em;color:var(--ts-encre);margin-bottom:.22em}
.ts-atout span{font-size:.92em;color:#5A544E;line-height:1.5}

.ts-rayons{display:grid;grid-template-columns:repeat(auto-fit,minmax(215px,1fr));gap:1em;margin:0 0 2.8em}
.ts-rayon{display:block;background:var(--ts-encre);color:#F5F1E8;border-radius:4px;padding:1.3em 1.3em 1.4em;
  text-decoration:none;border:1px solid #2C2520;transition:border-color .18s ease,transform .18s ease}
.ts-rayon:hover{border-color:var(--ts-laiton);transform:translateY(-2px);color:#F5F1E8}
.ts-rayon b{display:block;font-family:var(--ts-serif);font-size:1.22em;margin-bottom:.3em;color:#F5F1E8}
.ts-rayon i{display:block;font-style:normal;font-size:.9em;color:#A8A199;line-height:1.5}
.ts-rayon em{display:block;font-style:normal;font-size:.8em;color:var(--ts-laiton);margin-top:.6em;letter-spacing:.04em}

.ts-section-titre{font-family:var(--ts-serif);font-size:1.7em;margin:0 0 .2em}
.ts-section-chapo{color:#5A544E;margin:0 0 1.2em;max-width:52em}

@media (max-width:768px){
  .ts-hero{padding:2.2em 1.4em}
  .ts-hero h1{font-size:1.95em}
  .site-header .custom-logo-link img{max-width:190px}
}

/* note discrete dans les blocs de maillage */
.ts-liens .ts-note{color:var(--ts-fumee);font-size:.88em}
.ts-legal{font-size:.9em;color:#5A544E;background:#F0EAE0;border-left:3px solid var(--ts-laiton);
  padding:.7em 1em;border-radius:0 3px 3px 0}

/* ---------- pied de page ---------- */
.ts-pied-liste{list-style:none;margin:0;padding:0}
.ts-pied-liste li{margin:.3em 0;padding-left:.9em;position:relative}
.ts-pied-liste li:before{content:"›";position:absolute;left:0;color:var(--ts-laiton)}
.ts-pied-liste a{color:#C9C2B6;text-decoration:none}
.ts-pied-liste a:hover{color:var(--ts-braise)}
.site-footer p{font-size:.92em;line-height:1.55}
.site-footer strong{color:#E0D8C9}

/* ---------- chapo des guides ---------- */
.ts-chapo{font-size:1.14em;line-height:1.55;color:#4A443F;border-left:3px solid var(--ts-braise);
  padding-left:1em;margin-bottom:1.6em}
