:root{--green:#185d38;--green-2:#267548;--green-dark:#103d28;--cream:#fbf8ee;--sand:#eee6d2;--gold:#d2a54b;--ink:#173428;--muted:#64736b;--white:#fff;--shadow:0 18px 50px rgba(26,63,44,.12)}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body.commerce-public{margin:0;background:linear-gradient(180deg,#f7f4ea 0,#fff 32%,#f6f5ed 100%);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
body.commerce-public .wrap{max-width:1280px;margin:0 auto;padding:0 28px 42px}
.commerce-header{min-height:92px;display:flex;align-items:center;gap:34px;padding:10px 0;position:relative;z-index:3}
.commerce-brand{display:flex;align-items:center;margin-right:auto}.commerce-brand img{width:92px;height:92px;object-fit:contain;filter:drop-shadow(0 8px 16px rgba(0,0,0,.12))}
.commerce-nav{display:flex;align-items:center;gap:30px}.commerce-nav a,.commerce-actions a{color:var(--ink);text-decoration:none;font-weight:700;font-size:.96rem}.commerce-nav a{padding:32px 0 12px;border-bottom:3px solid transparent}.commerce-nav a.active,.commerce-nav a:hover{color:var(--green);border-color:var(--green)}
.commerce-actions{display:flex;gap:10px;align-items:center}.commerce-actions a{padding:12px 17px;border-radius:13px;border:1px solid rgba(24,93,56,.18);background:#fff}.commerce-actions .producer-link{background:var(--green);color:#fff;border-color:var(--green)}
.commerce-hero{min-height:460px;border-radius:34px;overflow:hidden;display:grid;grid-template-columns:1.25fr .75fr;align-items:center;padding:58px 66px;position:relative;background:radial-gradient(circle at 82% 20%,rgba(255,255,255,.5),transparent 24%),linear-gradient(120deg,rgba(15,61,39,.96),rgba(42,117,71,.82)),linear-gradient(25deg,#6a9a62,#c6d39f);box-shadow:var(--shadow)}
.commerce-hero:before,.commerce-hero:after{content:"";position:absolute;border-radius:50%;background:rgba(255,255,255,.08)}.commerce-hero:before{width:390px;height:390px;right:-120px;top:-170px}.commerce-hero:after{width:280px;height:280px;right:160px;bottom:-190px}
.commerce-hero-content{position:relative;z-index:2;max-width:710px}.eyebrow{display:block;color:#79a97f;text-transform:uppercase;letter-spacing:.16em;font-size:.74rem;font-weight:900;margin-bottom:12px}.commerce-hero .eyebrow{color:#d9efc9}.commerce-hero h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(3rem,5vw,5.1rem);line-height:.98;color:#fff;margin:0 0 15px;letter-spacing:-.045em}.producer-name{font-size:1.18rem;color:#e6f1e8;margin:0 0 15px}.hero-copy{max-width:590px;color:#f2f6f0;font-size:1.14rem;line-height:1.7;margin:0 0 28px}.hero-cta{display:inline-flex;align-items:center;background:#fff;color:var(--green-dark);text-decoration:none;font-weight:900;padding:15px 22px;border-radius:14px;box-shadow:0 12px 25px rgba(0,0,0,.15)}
.commerce-hero-logo{position:relative;z-index:2;display:flex;justify-content:center}.commerce-hero-logo img{width:min(320px,90%);max-height:330px;object-fit:contain;filter:drop-shadow(0 22px 30px rgba(0,0,0,.28))}
.commerce-hero-visual{display:flex;justify-content:center;align-items:center;min-width:0}.commerce-hero-visual img{display:block;width:100%;max-width:300px;max-height:300px;object-fit:contain}
.trust-strip{margin:-34px 42px 28px;position:relative;z-index:4;display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:#dfe5dc;border-radius:20px;overflow:hidden;box-shadow:0 12px 36px rgba(21,69,43,.14)}.trust-strip article{background:rgba(255,255,255,.96);padding:20px 22px;display:flex;flex-direction:column;gap:5px}.trust-strip strong{color:var(--green-dark)}.trust-strip span{font-size:.86rem;color:var(--muted)}
.producer-intro{margin:34px 0;display:grid;grid-template-columns:230px 1fr 280px;gap:34px;align-items:center;background:#f2efe3;border:1px solid #e9e3d3;border-radius:26px;padding:32px;box-shadow:0 14px 35px rgba(31,70,47,.08)}.producer-intro-mark{height:180px;border-radius:20px;display:grid;place-items:center;text-align:center;padding:24px;background:linear-gradient(145deg,#d4e2c5,#8eaf78);color:var(--green-dark);font-family:Georgia,serif;font-size:1.6rem;font-weight:700}.producer-intro h2,.section-heading h2,.order-heading h2{font-family:Georgia,"Times New Roman",serif;color:var(--green-dark);font-size:2.2rem;line-height:1.12;margin:0 0 12px}.producer-intro p{color:var(--muted);line-height:1.7;margin:0}.producer-values{display:grid;gap:12px}.producer-values span{padding:13px 15px;border-radius:12px;background:#fff;border:1px solid #dde4d7;font-weight:800;color:var(--green)}
.section-heading{text-align:center;padding:22px 0 6px}.section-heading h2{font-size:2.6rem;margin:0}
body.commerce-public .catalogue-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:20px;margin:22px 0 38px}
body.commerce-public .catalogue-grid>.card{margin:0;padding:12px 12px 18px;border-radius:20px;border:1px solid #e2e6dc;box-shadow:0 12px 28px rgba(24,74,47,.09);transition:transform .2s ease,box-shadow .2s ease;overflow:hidden;background:#fff}.catalogue-grid>.card:hover{transform:translateY(-5px);box-shadow:0 20px 38px rgba(24,74,47,.15)}.catalogue-grid img{width:100%;height:190px;object-fit:cover;border-radius:14px!important;background:#eef0e7}.catalogue-grid h2{font-size:1.25rem;margin:14px 4px 8px;color:var(--green-dark)}.catalogue-grid p{margin:7px 4px;color:var(--muted);line-height:1.5}.catalogue-grid .price{color:var(--green);font-size:1.2rem}.catalogue-grid .pill{background:#e5f1e4;color:var(--green);font-weight:800}
body.commerce-public .order-card{margin:30px 0 0!important;padding:34px!important;border:0!important;border-radius:28px!important;background:#fff!important;box-shadow:var(--shadow)!important}.order-heading{display:grid;grid-template-columns:1fr;max-width:760px;margin-bottom:25px}.order-heading p{color:var(--muted);margin:0;line-height:1.6}.order-card form>label,.order-card form>.grid label{display:grid;gap:7px;color:var(--green-dark);font-weight:800}.order-card h3{font-family:Georgia,serif;color:var(--green-dark);font-size:1.45rem;margin:30px 0 12px}.order-card input,.order-card select,.order-card textarea{border:1px solid #cedbd1;background:#fbfcfa;border-radius:12px;padding:13px 14px;outline:none;transition:.2s}.order-card input:focus,.order-card select:focus{border-color:var(--green);box-shadow:0 0 0 4px rgba(38,117,72,.1)}.order-card button{margin-top:20px;background:linear-gradient(135deg,var(--green),var(--green-2));padding:15px 22px;border-radius:13px;font-weight:900;box-shadow:0 10px 22px rgba(24,93,56,.2)}
.commerce-footer{margin-top:34px;background:linear-gradient(135deg,#103d28,#185d38);color:#fff;border-radius:28px;padding:34px;display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:40px}.commerce-footer img{width:90px;height:90px;object-fit:contain}.commerce-footer p{color:#d7e8dc;max-width:280px}.commerce-footer>div{display:flex;flex-direction:column;gap:9px}.commerce-footer strong{font-family:Georgia,serif;font-size:1.16rem;margin-bottom:6px}.commerce-footer a{color:#e6f1e9;text-decoration:none}
body.commerce-public .flash{margin:12px 0 20px;border:1px solid #ecd89a;background:#fff8db;color:#765b10}
@media(max-width:960px){body.commerce-public .wrap{padding:0 16px 28px}.commerce-header{flex-wrap:wrap}.commerce-nav{order:3;width:100%;justify-content:center;gap:18px}.commerce-actions{margin-left:auto}.commerce-hero{grid-template-columns:1fr;padding:44px 30px}.commerce-hero-logo,.commerce-hero-visual{display:none}.trust-strip{margin:-20px 15px 24px;grid-template-columns:1fr 1fr}.producer-intro{grid-template-columns:1fr}.producer-intro-mark{height:130px}.commerce-footer{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.commerce-header{justify-content:center}.commerce-brand{margin:0}.commerce-brand img{width:76px;height:76px}.commerce-actions{width:100%;justify-content:center}.commerce-nav{overflow-x:auto;justify-content:flex-start}.commerce-hero{min-height:400px;border-radius:22px;padding:38px 24px}.commerce-hero h1{font-size:2.75rem}.trust-strip{grid-template-columns:1fr;margin:14px 0}.producer-intro{padding:22px}.commerce-footer{grid-template-columns:1fr}.order-card{padding:22px!important}}

/* Correctif v1.1 — densité desktop plus compacte */
@media (min-width:961px){
  body.commerce-public .wrap{max-width:1160px;padding:0 22px 30px}
  .commerce-header{min-height:68px;gap:24px;padding:6px 0}
  .commerce-brand img{width:62px;height:62px}
  .commerce-nav{gap:22px}
  .commerce-nav a{padding:20px 0 9px;font-size:.9rem}
  .commerce-actions a{padding:9px 13px;border-radius:10px;font-size:.88rem}

  .commerce-hero{min-height:315px;border-radius:24px;padding:34px 42px;grid-template-columns:1.35fr .65fr}
  .commerce-hero h1{font-size:clamp(2.5rem,4vw,3.8rem);line-height:1.02;margin-bottom:10px}
  .producer-name{font-size:1rem;margin-bottom:10px}
  .hero-copy{font-size:1rem;line-height:1.55;margin-bottom:20px;max-width:540px}
  .hero-cta{padding:11px 17px;border-radius:11px;font-size:.93rem}
  .commerce-hero-logo img{width:min(210px,82%);max-height:220px}

  .trust-strip{margin:-22px 28px 20px;border-radius:16px}
  .trust-strip article{padding:14px 16px}
  .trust-strip strong{font-size:.92rem}
  .trust-strip span{font-size:.78rem}

  .producer-intro{margin:24px 0;grid-template-columns:170px 1fr 230px;gap:24px;border-radius:20px;padding:22px}
  .producer-intro-mark{height:130px;border-radius:16px;padding:18px;font-size:1.25rem}
  .producer-intro h2,.section-heading h2,.order-heading h2{font-size:1.75rem}
  .producer-intro p{font-size:.93rem;line-height:1.55}
  .producer-values{gap:8px}
  .producer-values span{padding:9px 11px;border-radius:10px;font-size:.86rem}

  .section-heading{padding:12px 0 2px}
  .section-heading h2{font-size:2rem}
  body.commerce-public .catalogue-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;margin:16px 0 26px}
  body.commerce-public .catalogue-grid>.card{padding:9px 9px 13px;border-radius:16px}
  .catalogue-grid img{height:145px;border-radius:11px!important}
  .catalogue-grid h2{font-size:1.05rem;margin:10px 3px 5px}
  .catalogue-grid p{font-size:.86rem;margin:5px 3px;line-height:1.35}
  .catalogue-grid .price{font-size:1.05rem}
  .catalogue-grid button{padding:9px 12px;font-size:.88rem}

  body.commerce-public .order-card{margin-top:22px!important;padding:24px!important;border-radius:20px!important}
  .order-heading{margin-bottom:18px}
  .order-heading p{font-size:.92rem;line-height:1.5}
  .order-card h3{font-size:1.2rem;margin:22px 0 9px}
  .order-card input,.order-card select,.order-card textarea{padding:10px 11px;border-radius:10px}
  .order-card button{margin-top:14px;padding:11px 17px;border-radius:10px}

  .commerce-footer{margin-top:24px;border-radius:20px;padding:24px;gap:28px}
  .commerce-footer img{width:64px;height:64px}
  .commerce-footer p,.commerce-footer a{font-size:.86rem}
  .commerce-footer strong{font-size:1rem}
}

/* v1.2 — véritable parcours catalogue puis commande */
.catalogue-grid{align-items:stretch}
.catalogue-grid>.product-card{display:flex;flex-direction:column;position:relative}
.catalogue-grid>.product-card .product-card-actions{margin-top:auto;padding-top:12px;display:grid;grid-template-columns:42px 46px 1fr;gap:8px;align-items:center}
.product-card-actions button{margin:0!important;width:100%!important;min-height:40px;border-radius:10px!important;font-weight:900}
.product-minus{background:#edf3ee!important;color:var(--green)!important;border:1px solid #d0ded3!important}
.product-plus{background:var(--green)!important;color:#fff!important}
.product-quantity{display:grid;place-items:center;min-height:40px;border-radius:10px;background:#f7f8f4;border:1px solid #dce4dc;font-weight:900;color:var(--green-dark)}
.product-selected{outline:3px solid rgba(38,117,72,.18);box-shadow:0 18px 38px rgba(24,74,47,.17)!important}
.catalogue-empty{grid-column:1/-1;text-align:center;padding:42px;border:2px dashed #c9d7ca;border-radius:18px;background:#f8faf6;color:var(--muted)}
.catalogue-empty h3{margin:0 0 8px;color:var(--green-dark);font-family:Georgia,serif;font-size:1.45rem}
.cart-summary{display:flex;align-items:center;gap:18px;padding:15px 18px;margin:-12px 0 26px;border:1px solid #dbe5dc;border-radius:15px;background:#fff;box-shadow:0 9px 24px rgba(24,74,47,.08)}
.cart-summary strong{color:var(--green-dark)}
.cart-count{color:var(--muted)}
.cart-next{margin-left:auto;text-decoration:none;background:#dfe9e1;color:#6f7b73;pointer-events:none;padding:10px 15px;border-radius:10px;font-weight:900}
.cart-summary.has-items .cart-next{background:var(--green);color:#fff;pointer-events:auto}
.order-card:before{content:'2';display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:var(--green);color:#fff;font-weight:900;margin-bottom:13px}
.section-heading:before{content:'1';display:grid;place-items:center;width:36px;height:36px;margin:0 auto 10px;border-radius:50%;background:var(--green);color:#fff;font-weight:900}
.order-heading h2{margin-bottom:8px}
.order-card form>.grid:first-of-type{margin-bottom:6px}
@media(max-width:640px){.cart-summary{align-items:stretch;flex-direction:column;gap:9px}.cart-next{margin-left:0;text-align:center}.catalogue-grid>.product-card .product-card-actions{grid-template-columns:40px 42px 1fr}}

/* Lot interface Agri Péi — comptes clients et footer public */
.commerce-actions .account-create{background:var(--green);color:#fff;border-color:var(--green)}
.commerce-actions .account-login{background:#fff;color:var(--green-dark);border:1px solid #b9cbbb}
.commerce-footer{grid-template-columns:1.4fr repeat(3,1fr)}
.commerce-footer span{color:#d7e8dc;font-size:.9rem}
.commerce-footer a:hover{text-decoration:underline}
@media(max-width:960px){.commerce-footer{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.commerce-footer{grid-template-columns:1fr}.commerce-actions .account-link{flex:1;text-align:center}}
