/*
  Simple design overrides
  Objectif: rendre les pages Collections / Blog / Produits lisibles et “propres”
  sans dépendre d’un thème spécifique.
*/

:root{
  --simple-bg: #f6f7f9;
  --simple-surface: #ffffff;
  --simple-text: #111827;
  --simple-muted: #6b7280;
  --simple-border: rgba(17,24,39,.12);
  --simple-accent: #f64c65;
  --simple-radius: 14px;
}

html, body{
  background: var(--simple-bg) !important;
  color: var(--simple-text) !important;
}

body{
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

a{ color: inherit; }
a:hover{ color: var(--simple-accent) !important; }

/* Layout: recentrer et ajouter de l’air */
#columns.container,
#columns .container,
.container,
.container-fluid{
  max-width: 1200px !important;
}

#wrapper.columns-container{
  padding-top: 18px !important;
  padding-bottom: 40px !important;
}

#main{
  background: var(--simple-surface) !important;
  border: 1px solid var(--simple-border) !important;
  border-radius: var(--simple-radius) !important;
  padding: 18px !important;
}

@media (min-width: 768px){
  #main{ padding: 26px !important; }
}

/* Titres */
.page_heading,
#main h1,
#main .page-title{
  font-size: 28px !important;
  line-height: 1.2 !important;
  margin: 0 0 16px !important;
  letter-spacing: -.02em;
}

/* Grilles: produits (catégorie) */
.products.product_list{
  margin-top: 14px !important;
}

.product_list_item article.ajax_block_product,
article.ajax_block_product.js-product-miniature{
  background: var(--simple-surface) !important;
  border: 1px solid var(--simple-border) !important;
  border-radius: 16px !important;
  overflow: hidden !important;
  box-shadow: 0 10px 25px rgba(0,0,0,.04) !important;
}

.pro_outer_box{
  border: none !important;
}

/* Image: garde une “carte” même si l’image est manquante */
.product_img_link,
.pro_first_box .product_img_link{
  display: block !important;
  background: linear-gradient(135deg, rgba(246,76,101,.10), rgba(17,24,39,.05)) !important;
}

.product_img_link img,
.pro_first_box img{
  width: 100% !important;
  height: auto !important;
  display: block !important;
}

.product_img_link img[src=""],
.product_img_link img:not([src]){
  min-height: 220px !important;
}

/* Carte produit: typographie */
.s_title_block a{
  text-decoration: none !important;
}

.product_brand{
  font-size: 13px !important;
  font-weight: 600 !important;
  color: var(--simple-muted) !important;
  margin-bottom: 6px !important;
}

.product-desc,
.product-description,
.pro_desc,
.pro_extra_info{
  color: var(--simple-muted) !important;
}

.price{
  font-weight: 700 !important;
}

/* Simplicité: on masque les survols/partages très bruyants */
.hover_fly,
.social_share_button,
.social_share_block,
.act_box_inner,
.top_bar_item.dropdown_wrap.pro_right_item{
  display: none !important;
}

/* Blog (anciens templates): lisibilité de base */
body#module-stblog-article #center_column,
body#module-stblog-category #center_column,
body#module-stblog-default #center_column{
  width: 100% !important;
  float: none !important;
}

#center_column .rte,
#center_column .stblog_desc,
#center_column .stblog_content,
#center_column article{
  font-size: 16px !important;
  line-height: 1.7 !important;
}

#center_column img{
  max-width: 100% !important;
  height: auto !important;
  border-radius: 12px !important;
}

/* Produits: rendre la page plus “fiche” */
body#product #main .row{
  gap: 16px;
}

body#product .product-actions,
body#product .product-prices,
body#product .product-information{
  background: var(--simple-surface) !important;
}

/* Home: tuiles image (simple + responsive) */
.simple-home-tiles{
  margin: 6px 0 18px !important;
}
.simple-home-tiles__grid{
  display: grid;
  grid-template-columns: 1fr;
  gap: 12px;
}
@media (min-width: 768px){
  .simple-home-tiles__grid{
    grid-template-columns: repeat(3, 1fr);
    gap: 16px;
  }
}
.simple-home-tiles__card{
  position: relative;
  display: block;
  border-radius: 18px;
  overflow: hidden;
  border: 1px solid var(--simple-border);
  background: var(--simple-surface);
  box-shadow: 0 16px 40px rgba(0,0,0,.06);
  text-decoration: none !important;
}
.simple-home-tiles__img{
  width: 100%;
  height: 220px;
  object-fit: cover;
  display: block;
}
@media (min-width: 768px){
  .simple-home-tiles__img{ height: 240px; }
}
.simple-home-tiles__label{
  position: absolute;
  left: 14px;
  bottom: 14px;
  padding: 8px 12px;
  border-radius: 999px;
  background: rgba(255,255,255,.92);
  color: var(--simple-text);
  font-weight: 700;
  letter-spacing: -.01em;
  border: 1px solid var(--simple-border);
}
