/* ============================================================
   Agri Péi — habillage « Terroir »
   Feuille de surcharge : chargée EN DERNIER, elle ne remplace
   aucun fichier existant. Retirer son <link> suffit à revenir
   à l'apparence précédente.
   ============================================================ */

body.commerce-public{
  --t-encre:#3B3229;        /* brun chaud : aucune valeur noire dans la page */
  --t-encre-douce:#6E6353;
  --t-vetiver:#31502F;
  --t-vetiver-fonce:#2A4527;
  --t-vetiver-clair:#4A7145;
  --t-vanille:#F7F2E6;
  --t-vanille-2:#F0E8D7;
  --t-papier:#FFFDF7;
  --t-curcuma:#C98A1E;
  --t-curcuma-clair:#E3B04A;
  --t-bois:#8A6238;
  --t-argile:#D8CCB4;
}

/* ---------- fond et échelle générale ---------- */
body.commerce-public{
  background:var(--t-vanille)!important;
  color:var(--t-encre);
  font-size:15px;
  line-height:1.6;
}
body.commerce-public .wrap{max-width:1140px;padding:0 24px 40px}

/* ---------- en-tête ---------- */
body.commerce-public .commerce-header{
  background:rgba(247,242,230,.94);
  border-bottom:1px solid var(--t-argile);
  padding:0 24px;min-height:64px;
}
body.commerce-public .commerce-nav a{color:var(--t-encre-douce);font-size:.92rem;border-bottom:2px solid transparent}
body.commerce-public .commerce-nav a:hover{color:var(--t-encre)}
body.commerce-public .commerce-nav a.active{color:var(--t-vetiver);font-weight:600;border-bottom-color:var(--t-curcuma)}
body.commerce-public .account-link{font-size:.88rem}
body.commerce-public .account-create{color:var(--t-encre-douce);background:none;border:0}
body.commerce-public .account-login{
  background:transparent;color:var(--t-vetiver);
  border:1px solid var(--t-argile);border-radius:10px;padding:7px 13px;font-weight:600;
}
body.commerce-public .account-login:hover{background:var(--t-vanille-2)}

/* ---------- bannière : plus basse, paysage dessiné en fond ---------- */
body.commerce-public .commerce-hero{
  min-height:250px;padding:34px 38px;border-radius:16px;
  grid-template-columns:1fr;align-items:end;
  box-shadow:none;
  background:
    url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1100 250' preserveAspectRatio='xMaxYMax slice'%3E%3Ccircle cx='905' cy='66' r='40' fill='%23E3B04A' opacity='.85'/%3E%3Cpath d='M600 250 L760 96 L860 190 L940 130 L1100 250Z' fill='%232A4527' opacity='.55'/%3E%3Cpath d='M700 250 L840 128 L960 214 L1035 168 L1100 208 L1100 250Z' fill='%2324401F' opacity='.7'/%3E%3Cpath d='M0 250 C220 210 420 236 700 214 C880 200 1000 220 1100 210 L1100 250Z' fill='%2324401F' opacity='.55'/%3E%3Cg stroke='%237FA05F' stroke-width='3' stroke-linecap='round' opacity='.75' fill='none'%3E%3Cpath d='M980 250v-72M980 205l16-13M980 222l-15-12M980 190l14-14'/%3E%3Cpath d='M1024 250v-58M1024 214l13-11M1024 230l-12-10'/%3E%3Cpath d='M1060 250v-80M1060 200l15-12M1060 218l-14-11'/%3E%3C/g%3E%3Cpath d='M0 250c30-14 44-40 40-66 22 16 30 44 22 66z' fill='%237FA05F' opacity='.35'/%3E%3C/svg%3E") right bottom / cover no-repeat,
    linear-gradient(160deg,#4A7145 0%,#31502F 62%,#2A4527 100%);
}
body.commerce-public .commerce-hero-content{max-width:min(600px,68%)}
body.commerce-public .commerce-hero .eyebrow{color:#D7CD9C;font-size:.68rem;letter-spacing:.14em}
body.commerce-public .commerce-hero h1{
  font-family:"Palatino Linotype","Book Antiqua",Palatino,Georgia,serif;
  font-size:clamp(1.9rem,3.1vw,2.6rem);line-height:1.08;margin:8px 0 6px;letter-spacing:-.01em;
}
body.commerce-public .producer-name{font-size:.95rem;color:#DFE7D6;margin:0 0 4px}
body.commerce-public .hero-copy{font-size:1rem;line-height:1.6;color:#EDF1E6;margin:0 0 18px;max-width:46ch}
body.commerce-public .hero-cta{
  background:var(--t-curcuma);color:var(--t-encre);
  padding:9px 16px;border-radius:10px;font-weight:600;font-size:.9rem;box-shadow:none;
}
body.commerce-public .hero-cta:hover{background:var(--t-curcuma-clair)}
/* le logo répété dans la bannière fait doublon avec l'en-tête */
body.commerce-public .commerce-hero-visual{display:none}

/* ---------- engagements : 4 colonnes, titre AU-DESSUS du texte ---------- */
body.commerce-public .trust-strip{
  margin:20px 0 0;grid-template-columns:repeat(4,1fr);gap:14px;
  background:none;border-radius:0;box-shadow:none;overflow:visible;
}
body.commerce-public .trust-strip article{
  flex-direction:row;align-items:center;gap:12px;padding:14px 15px;
  background:var(--t-papier);border:1px solid var(--t-argile);border-radius:12px;
}
body.commerce-public .trust-strip article>div{display:flex;flex-direction:column} /* c'est ici que titre et texte se collaient */
body.commerce-public .trust-strip .trust-icon{flex:none;width:38px;height:38px;display:block}
body.commerce-public .trust-strip .trust-icon svg{width:38px;height:38px;display:block}
body.commerce-public .trust-strip strong{font-size:.88rem;color:var(--t-vetiver);line-height:1.3}
body.commerce-public .trust-strip span{font-size:.79rem;color:var(--t-encre-douce);line-height:1.4}

/* ---------- titres de section ---------- */
body.commerce-public .section-heading h2,
body.commerce-public .producer-intro h2,
body.commerce-public .order-heading h2,
body.commerce-public .agri-catalogue-heading h2{
  font-family:"Palatino Linotype","Book Antiqua",Palatino,Georgia,serif;
  font-size:1.55rem;color:var(--t-vetiver);margin:0 0 6px;
}
body.commerce-public .agri-catalogue-heading{border-bottom:1px solid var(--t-argile);padding-bottom:10px;margin-bottom:20px}

/* ---------- catégories ---------- */
body.commerce-public .agri-category-nav a{
  border:1px solid var(--t-argile);background:var(--t-papier);color:var(--t-encre-douce);
  border-radius:999px;padding:5px 12px;font-size:.84rem;font-weight:500;
}
body.commerce-public .agri-category-nav a:hover{border-color:var(--t-vetiver-clair);color:var(--t-vetiver)}
body.commerce-public .agri-category-nav a.active{background:var(--t-vetiver);border-color:var(--t-vetiver);color:var(--t-papier);font-weight:600}

/* ---------- cartes produit ----------
   Deux corrections décisives : la grille ne s'étire plus quand il y a
   peu de produits, et la photo occupe enfin toute la largeur. */
body.commerce-public .agri-catalogue-grid,
body.commerce-public .catalogue-grid{
  grid-template-columns:repeat(auto-fill,minmax(232px,292px));
  justify-content:center;          /* rangées centrées dans la page */
  column-gap:18px;
  row-gap:56px;                    /* deux lignes de respiration entre chaque rangée */
}
body.commerce-public .agri-catalogue-card{
  padding:0;overflow:hidden;border:1px solid var(--t-argile);border-radius:14px;
  background:var(--t-papier);box-shadow:none;transition:transform .16s,box-shadow .16s;
}
body.commerce-public .agri-catalogue-card:hover{transform:translateY(-2px);box-shadow:0 10px 26px rgba(59,50,41,.12)}
body.commerce-public .agri-card-image{
  height:auto;aspect-ratio:4/3;margin:0;background:var(--t-vanille-2);
  display:block;position:relative;overflow:hidden;
}
body.commerce-public .agri-card-image .agri-image-button{display:block;width:100%!important;height:100%}
body.commerce-public .agri-card-image .agri-thumb,
body.commerce-public .agri-card-image img{
  width:100%!important;height:100%!important;max-width:none!important;
  object-fit:cover;border-radius:0!important;display:block;
}
body.commerce-public .agri-image-placeholder{
  width:100%;height:100%;display:grid;place-items:center;
  background:var(--t-vanille-2);color:#C4B79E;font-size:2rem;
}
body.commerce-public .agri-card-content{padding:13px 14px 15px;display:flex;flex-direction:column;gap:6px;flex:1}
body.commerce-public .agri-category-badge{color:var(--t-vetiver-clair);font-size:.66rem;letter-spacing:.12em}
body.commerce-public .agri-catalogue-card h3{
  font-family:"Palatino Linotype","Book Antiqua",Palatino,Georgia,serif;
  font-size:1.08rem;margin:2px 0 0;line-height:1.25;
}
body.commerce-public .agri-catalogue-card h3 a{color:var(--t-encre)}
body.commerce-public .agri-catalogue-card h3 a:hover{text-decoration:underline;text-decoration-color:var(--t-curcuma);text-underline-offset:3px}
body.commerce-public .agri-catalogue-card p{font-size:.85rem;color:var(--t-encre-douce);margin:0}

/* le prix devient une étiquette de cageot — signature de la boutique */
body.commerce-public .agri-card-price{
  color:var(--t-encre)!important;background:var(--t-curcuma);
  font-size:1rem;font-weight:700;align-self:flex-start;
  padding:5px 11px 5px 16px;border-radius:4px;white-space:nowrap;margin-top:auto;
  clip-path:polygon(9px 0,100% 0,100% 100%,9px 100%,0 50%);
}
body.commerce-public .agri-card-price small,
body.commerce-public .agri-card-price span{color:var(--t-encre);font-weight:500;font-size:.74rem;opacity:.82}
body.commerce-public .agri-detail-price{color:var(--t-vetiver)!important;font-family:"Palatino Linotype",Palatino,Georgia,serif}

/* ---------- boutons ---------- */
body.commerce-public .agri-card-actions{display:flex;gap:8px;align-items:center;margin-top:10px}
body.commerce-public .agri-card-link,
body.commerce-public .agri-primary-button,
body.commerce-public .agri-add-cart,
body.commerce-public .order-card button{
  border-radius:10px;font-size:.88rem;font-weight:600;padding:8px 14px;box-shadow:none;
}
body.commerce-public .agri-card-link{background:transparent;color:var(--t-vetiver);border:1px solid var(--t-argile)}
body.commerce-public .agri-card-link:hover{background:var(--t-vanille-2)}
body.commerce-public .agri-add-cart,
body.commerce-public .agri-primary-button,
body.commerce-public .order-card button{background:var(--t-vetiver);color:var(--t-papier);border:0}
body.commerce-public .agri-add-cart:hover,
body.commerce-public .agri-primary-button:hover,
body.commerce-public .order-card button:hover{background:var(--t-vetiver-fonce)}

/* ---------- présentation du producteur ---------- */
body.commerce-public .producer-intro{
  background:var(--t-papier);border:1px solid var(--t-argile);border-radius:14px;
  padding:22px 24px;box-shadow:none;margin:34px 0;
}
body.commerce-public .producer-intro-mark{
  background:linear-gradient(150deg,#CFDCC2,#7FA05F);color:var(--t-vetiver-fonce);
  height:150px;border-radius:12px;font-size:1.3rem;
}
body.commerce-public .producer-values span{
  background:var(--t-vanille);border:1px solid var(--t-argile);color:var(--t-vetiver);
  font-size:.88rem;font-weight:600;padding:11px 13px;border-radius:10px;
}

/* ---------- panier flottant ---------- */
body.commerce-public .agri-panier-lien{
  background:var(--t-vetiver-fonce);color:var(--t-vanille);
  border-radius:999px;padding:11px 17px;font-size:.9rem;font-weight:600;
  box-shadow:0 8px 24px rgba(42,69,39,.32);
}
body.commerce-public .agri-panier-compte{background:var(--t-curcuma)!important;color:var(--t-encre)!important;font-weight:800}

/* ---------- pied de page : vert profond, jamais noir, aligné au contenu ---------- */
body.commerce-public .commerce-footer{
  margin-top:0;border-radius:0;padding:34px 24px 26px;
  background:var(--t-vetiver-fonce);
  grid-template-columns:1.6fr 1fr 1fr 1fr;gap:30px;
  max-width:1140px;margin-left:auto;margin-right:auto;border-radius:16px 16px 0 0;
}
body.commerce-public .commerce-footer strong{
  font-family:"Palatino Linotype","Book Antiqua",Palatino,Georgia,serif;
  font-size:1rem;color:#FFFDF7;
}
body.commerce-public .commerce-footer a,
body.commerce-public .commerce-footer span{color:#C6CFBD;font-size:.87rem}
body.commerce-public .commerce-footer a:hover{color:#FFFDF7}
body.commerce-public .commerce-footer p{color:#B4BEAA;font-size:.87rem;max-width:34ch}
body.commerce-public .commerce-footer img{width:64px;height:64px}

/* ---------- messages ---------- */
body.commerce-public .flash{
  background:#FBF3DC;border:1px solid #E3CE95;color:#7A5C12;border-radius:10px;
}

/* ---------- confort et accessibilité ---------- */
body.commerce-public a:focus-visible,
body.commerce-public button:focus-visible{outline:2px solid var(--t-curcuma);outline-offset:2px;border-radius:4px}
@media (prefers-reduced-motion:reduce){body.commerce-public *{transition:none!important;animation:none!important}}

@media(max-width:980px){
  body.commerce-public .trust-strip{grid-template-columns:1fr 1fr;margin:16px 0 0}
  body.commerce-public .commerce-hero-content{max-width:100%}
  body.commerce-public .commerce-footer{grid-template-columns:1fr 1fr}
}
@media(max-width:620px){
  body.commerce-public .trust-strip{grid-template-columns:1fr}
  body.commerce-public .agri-catalogue-grid,
  body.commerce-public .catalogue-grid{grid-template-columns:1fr}
  body.commerce-public .commerce-hero{padding:26px 22px;min-height:0}
  body.commerce-public .commerce-footer{grid-template-columns:1fr;border-radius:0}
}
