:root{
  --green:#0b3b2d;--green-2:#145841;--green-3:#082b22;--gold:#d6aa4f;--gold-2:#f0d48b;
  --cream:#fbf7ee;--cream-2:#f3ead8;--ink:#14221d;--muted:#66736d;--white:#fff;
  --line:#e7dfcf;--danger:#b42318;--success:#18794e;--shadow:0 24px 70px rgba(11,59,45,.14);
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:#fff;line-height:1.6}img{max-width:100%;display:block}a{color:inherit}button,input,textarea,select{font:inherit}.container{width:min(1160px,calc(100% - 40px));margin-inline:auto}.narrow{width:min(800px,100%)}
.store-header{position:sticky;top:0;z-index:40;background:rgba(255,255,255,.96);backdrop-filter:blur(16px);border-bottom:1px solid rgba(11,59,45,.1)}.store-nav{min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:28px}.store-brand{display:flex;align-items:center;gap:12px;text-decoration:none;min-width:max-content}.store-brand img{width:58px;height:58px;border-radius:50%;object-fit:cover}.store-brand span{display:grid;line-height:1.02}.store-brand strong{font-family:Georgia,serif;color:var(--green);font-size:1.25rem}.store-brand em{font-family:Georgia,serif;font-style:normal;color:#a87924;font-size:1rem}.main-nav{display:flex;align-items:center;gap:28px}.main-nav a{text-decoration:none;font-weight:750;color:#33473f}.main-nav a:hover{color:var(--green)}.nav-support{padding:10px 16px;border:1px solid #d7bc80;border-radius:999px}.nav-toggle{display:none;border:0;background:transparent;font-size:1.6rem;color:var(--green)}.product-nav-actions{display:flex;align-items:center;gap:22px;color:#56655f;font-size:.92rem}.product-nav-actions a{text-decoration:none;font-weight:800;color:var(--green)}
.store-hero{position:relative;min-height:650px;display:grid;align-items:center;background-image:var(--store-hero, url('../images/banniere-boutique.webp'));background-position:center;background-size:cover;background-repeat:no-repeat;color:#fff}.store-hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,30,22,.9) 0%,rgba(5,38,28,.58) 48%,rgba(5,38,28,.08) 85%)}.store-hero-content{position:relative;z-index:1;padding:90px 0}.store-hero-copy{max-width:700px}.eyebrow,.section-kicker{display:inline-block;font-size:.76rem;letter-spacing:.16em;font-weight:900;color:#9d7426}.eyebrow.light{color:var(--gold-2)}.store-hero h1,.product-hero h1{font-family:Georgia,serif;font-size:clamp(3rem,6vw,5.5rem);line-height:1.02;letter-spacing:-.035em;margin:18px 0 20px}.store-hero p,.product-hero p{font-size:1.18rem;max-width:660px;color:#f6f1e6}.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:32px}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:14px 24px;border:0;border-radius:12px;text-decoration:none;font-weight:900;cursor:pointer;transition:.2s ease}.btn:hover{transform:translateY(-2px)}.btn:disabled{cursor:not-allowed;opacity:.58;transform:none}.btn-gold{background:linear-gradient(135deg,var(--gold-2),var(--gold));color:#173127;box-shadow:0 12px 30px rgba(214,170,79,.24)}.btn-dark{background:var(--green);color:#fff}.btn-outline-light{border:1px solid rgba(255,255,255,.55);color:#fff;background:rgba(255,255,255,.07)}.btn-light{background:#fff;color:var(--green)}.btn-small{min-height:42px;padding:10px 15px;font-size:.9rem}.btn-full{width:100%}
.benefit-strip{background:var(--green);color:#fff;border-top:1px solid rgba(255,255,255,.1)}.benefit-grid{display:grid;grid-template-columns:repeat(4,1fr)}.benefit-grid>div{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;column-gap:12px;padding:25px;border-right:1px solid rgba(255,255,255,.12)}.benefit-grid>div:last-child{border-right:0}.benefit-grid span{grid-row:1/3;font-size:1.55rem}.benefit-grid strong{font-size:.94rem}.benefit-grid small{color:#cbded6}
.section{padding:92px 0}.section-heading{text-align:center;max-width:760px;margin:0 auto 46px}.section-heading h2,.section h2{font-family:Georgia,serif;font-size:clamp(2.2rem,4vw,3.7rem);line-height:1.1;letter-spacing:-.025em;margin:10px 0 14px}.section-heading p,.section p{color:var(--muted)}.store-products{background:var(--cream)}.product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}.store-product-card{position:relative;background:#fff;border:1px solid var(--line);border-radius:24px;overflow:hidden;box-shadow:0 16px 48px rgba(11,59,45,.08);transition:.25s ease}.store-product-card:hover{transform:translateY(-7px);box-shadow:var(--shadow)}.featured-card{border-color:#d9bb76}.featured-label{position:absolute;z-index:2;top:18px;left:18px;padding:7px 10px;border-radius:999px;background:var(--gold-2);color:#3c2d0b;font-size:.72rem;font-weight:950;letter-spacing:.08em}.product-cover-link{display:block;aspect-ratio:1/1;overflow:hidden;background:#eee7d7}.product-cover-link img{width:100%;height:100%;object-fit:cover;transition:.35s ease}.store-product-card:hover .product-cover-link img{transform:scale(1.025)}.product-card-body{padding:24px}.product-tag{font-size:.7rem;letter-spacing:.08em;font-weight:900;color:#9d7426}.product-card-body h3{font-family:Georgia,serif;font-size:1.55rem;line-height:1.18;margin:9px 0}.product-card-body h3 a{text-decoration:none}.product-card-body p{color:var(--muted);min-height:76px}.product-card-footer{display:flex;align-items:center;justify-content:space-between;gap:14px;border-top:1px solid var(--line);padding-top:18px}.product-card-footer>div{display:grid}.product-card-footer strong{font-size:1.3rem;color:var(--green)}.product-card-footer small{color:var(--muted)}.empty-products{text-align:center;padding:60px;border:1px dashed #cbbd9e;border-radius:24px;background:#fff}.empty-products h3{font-family:Georgia,serif;font-size:2rem;margin:0}
.commitments{background:#fff}.commitments-layout{display:grid;grid-template-columns:1.15fr .85fr;gap:70px;align-items:center}.check-list{list-style:none;padding:0;margin:28px 0}.check-list li{position:relative;padding:9px 0 9px 36px}.check-list li:before{content:"✓";position:absolute;left:0;top:8px;width:24px;height:24px;border-radius:50%;display:grid;place-items:center;background:#e8f4ee;color:var(--green);font-weight:950}.compact li{padding-top:5px;padding-bottom:5px}.commitments-card{background:linear-gradient(145deg,#f9f2e4,#fff);border:1px solid #e9d9b7;border-radius:32px;padding:34px;text-align:center;box-shadow:var(--shadow)}.commitments-card img{width:min(290px,80%);margin:auto;border-radius:50%}.commitments-card blockquote{font-family:Georgia,serif;font-size:1.45rem;color:var(--green);margin:25px 0 4px}
.reviews-section{overflow:hidden;background:#fff}.reviews-marquee{width:100%;overflow:hidden;padding:10px 0 22px}.reviews-track{display:flex;gap:18px;width:max-content;animation:reviews-ltr 42s linear infinite}.reviews-marquee:hover .reviews-track{animation-play-state:paused}.review-card{width:350px;flex:0 0 auto;background:#fff;border:1px solid var(--line);border-radius:22px;padding:25px;box-shadow:0 12px 34px rgba(11,59,45,.08)}.review-card p{min-height:84px;color:#3f4f49}.review-card footer{display:grid;gap:2px}.review-card footer span{font-size:.86rem;color:var(--muted)}.review-card em{font-size:.8rem;color:var(--success);font-style:normal;font-weight:850}.stars{color:#d7a428;letter-spacing:2px}@keyframes reviews-ltr{from{transform:translateX(-50%)}to{transform:translateX(0)}}
.store-final-cta{padding:70px 0;background:linear-gradient(125deg,var(--green-3),var(--green));color:#fff}.final-cta-inner{display:flex;align-items:center;justify-content:space-between;gap:35px}.store-final-cta h2{font-family:Georgia,serif;font-size:clamp(2rem,4vw,3.3rem);line-height:1.1;margin:8px 0}.store-footer{background:#061b15;color:#d9e6e0;padding:62px 0 20px}.footer-grid{display:grid;grid-template-columns:1.4fr .7fr .7fr;gap:50px}.footer-grid>div{display:grid;align-content:start;gap:8px}.footer-grid a{text-decoration:none;color:#c3d4cd}.footer-grid a:hover{color:#fff}.footer-brand{display:flex!important;align-items:center;gap:15px}.footer-brand img{width:72px;height:72px;border-radius:50%}.footer-brand div{display:grid}.footer-brand strong{font-family:Georgia,serif;font-size:1.35rem}.footer-brand span{font-size:.87rem;color:#aabdb5}.footer-bottom{border-top:1px solid rgba(255,255,255,.12);margin-top:40px;padding-top:20px;color:#92a69e;font-size:.85rem}
.product-hero{position:relative;min-height:620px;display:grid;align-items:center;background-image:var(--product-hero);background-position:center;background-size:cover;color:#fff}.product-hero-mobile-banner{display:none}.product-hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,22,20,.95),rgba(5,31,26,.72) 54%,rgba(5,31,26,.22))}.product-hero-content{position:relative;z-index:1;padding:80px 0}.product-hero-copy{max-width:760px}.product-hero-copy .hero-pills{display:flex;flex-wrap:wrap;gap:9px;margin:24px 0}.hero-pills span{padding:8px 12px;border:1px solid rgba(255,255,255,.34);border-radius:999px;background:rgba(255,255,255,.08);font-size:.82rem}.product-microcopy{display:block;margin-top:13px;color:#d7e4df}.product-summary-strip{background:#f8f8f8;padding:14px 0 6px}.summary-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:12px;display:grid;grid-template-columns:repeat(2,1fr);gap:10px;min-height:166px;box-shadow:0 10px 30px rgba(11,59,45,.06)}.summary-item{display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;gap:5px;min-height:66px;padding:8px 6px;border:1px solid #eef1ee;border-radius:12px}.summary-item span{font-size:1.2rem;line-height:1}.summary-item strong{font-size:.82rem;line-height:1.22;color:#4d5f58}.payment-methods-section{background:#f8f8f8;padding:22px 0 8px}.payment-methods-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:14px 12px 10px;text-align:center;min-height:166px;display:flex;flex-direction:column;justify-content:center;box-shadow:0 10px 30px rgba(11,59,45,.06)}.payment-methods-card strong{display:block;font-size:1.05rem;color:#61656f;margin-bottom:12px}.payment-methods-card img{display:block;width:min(760px,100%);height:auto;margin:0 auto;border-radius:10px}.two-columns{display:grid;grid-template-columns:.9fr 1.1fr;gap:72px;align-items:center}.product-visual{border-radius:30px;padding:14px;background:#fff;box-shadow:var(--shadow);border:1px solid var(--line)}.product-visual img{width:100%;border-radius:22px}.product-copy>p{font-size:1.05rem}.product-included{background:var(--cream)}.included-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.included-grid article{background:#fff;border:1px solid var(--line);border-radius:20px;padding:18px 16px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;min-height:128px;gap:12px}.included-grid article span{display:inline-grid;place-items:center;width:50px;height:50px;border-radius:50%;background:var(--green);color:#fff;font-weight:900;font-size:1.2rem}.included-grid h3{font-size:1rem;margin:0;line-height:1.35}.proof-section{padding-top:36px;padding-bottom:36px;background:#f8faf8}.proof-box{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:40px;background:#fff;border:1px solid var(--line);border-radius:22px;padding:28px 34px}.sales-count{display:flex;align-items:baseline;gap:10px;white-space:nowrap}.sales-number{font-size:2.6rem;font-weight:950;color:var(--green)}.gauge-text{display:flex;justify-content:space-between;gap:18px;margin-bottom:10px}.gauge{height:13px;border-radius:999px;background:#e5ece8;overflow:hidden}.gauge span{display:block;height:100%;background:linear-gradient(90deg,var(--gold),var(--gold-2));border-radius:inherit}.pricing-section{background:var(--green);color:#fff}.pricing-card{display:grid;grid-template-columns:1.15fr .85fr;gap:40px;align-items:center;background:linear-gradient(135deg,#0f4a38,#072c22);border:1px solid rgba(240,212,139,.35);border-radius:30px;padding:38px}.pricing-section .check-list li{color:#dfece7}.price-side{background:#fff;color:var(--ink);border-radius:22px;padding:24px 22px;text-align:center;box-shadow:var(--shadow)}.price{display:block;font-size:2.75rem;font-weight:950;line-height:1;color:var(--green)}.price-note{display:block;color:var(--muted);margin:8px 0 18px}.price-side small{display:block;color:var(--muted);margin-top:10px;font-size:.92rem;line-height:1.5}.faq-section details{border-bottom:1px solid var(--line);padding:19px 0}.faq-section summary{font-weight:850;cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:15px}.faq-section summary:after{content:"+";font-size:1.5rem;color:var(--gold)}.faq-section details[open] summary:after{content:"–"}.product-final{background:linear-gradient(120deg,#f4e1ae,#d7aa4f);color:#22362d}.product-final .section-kicker{color:#6f5115}.product-final .final-buy-button{background:var(--green)!important;color:#fff!important;box-shadow:0 12px 30px rgba(11,59,45,.24)}
.modal{position:fixed;inset:0;z-index:99;display:none}.modal.is-open{display:grid;place-items:center}.modal-backdrop{position:absolute;inset:0;background:rgba(3,20,16,.8);backdrop-filter:blur(4px)}.modal-dialog{position:relative;z-index:1;width:min(520px,calc(100% - 28px));max-height:calc(100vh - 32px);overflow:auto;background:#fff;border-radius:24px;padding:32px;box-shadow:0 30px 90px rgba(0,0,0,.38)}.modal-close{position:absolute;right:18px;top:14px;border:0;background:transparent;font-size:2rem;color:#667085}.modal-dialog h2{font-family:Georgia,serif;font-size:1.75rem;line-height:1.2;margin:8px 35px 0 0}.modal-price{font-size:1.35rem;font-weight:900;color:#9a6e14}.modal-dialog label{display:grid;gap:7px;font-weight:800;margin:18px 0}.modal-dialog input[type=text],.modal-dialog input[type=tel],.modal-dialog input[type=email]{width:100%;padding:14px;border:1px solid #ccd3df;border-radius:11px;outline:none;font-size:16px}.modal-dialog input:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(215,168,62,.18)}.consent{grid-template-columns:auto 1fr!important;align-items:start;font-weight:500!important;font-size:.87rem;color:#566176}.consent input{margin-top:4px}.form-message{font-size:.9rem;min-height:22px;margin-bottom:0}.form-message.error{color:var(--danger)}.form-message.success{color:var(--success)}.honeypot{position:absolute!important;left:-9999px!important}body.modal-open{overflow:hidden}.not-found{min-height:100vh;display:grid;place-items:center;background:var(--cream);padding:20px}.not-found main{text-align:center;max-width:620px}.not-found img{width:210px;margin:auto;border-radius:50%}.not-found h1{font-family:Georgia,serif;font-size:3rem;color:var(--green)}
@media(max-width:960px){.main-nav{position:absolute;top:82px;left:20px;right:20px;display:none;padding:18px;background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow);flex-direction:column;align-items:stretch}.main-nav.is-open{display:flex}.nav-toggle{display:block}.product-grid{grid-template-columns:repeat(2,1fr)}.benefit-grid{grid-template-columns:repeat(2,1fr)}.benefit-grid>div:nth-child(2){border-right:0}.benefit-grid>div:nth-child(-n+2){border-bottom:1px solid rgba(255,255,255,.12)}.commitments-layout,.two-columns,.pricing-card{grid-template-columns:1fr}.product-visual{max-width:600px;margin:auto}.included-grid{grid-template-columns:repeat(2,1fr)}.product-summary-strip .container{grid-template-columns:repeat(2,1fr)}.product-nav-actions span{display:none}}
@media(max-width:650px){.container{width:min(100% - 24px,1160px)}.store-nav{min-height:70px}.store-brand img{width:48px;height:48px}.store-brand strong{font-size:1.05rem}.main-nav{top:70px;left:12px;right:12px}.store-hero{min-height:610px;background-position:62% center}.store-hero-overlay{background:linear-gradient(90deg,rgba(4,30,22,.94),rgba(5,38,28,.78))}.store-hero-content,.product-hero-content{padding:70px 0}.store-hero h1,.product-hero h1{font-size:2.75rem}.hero-actions,.final-cta-inner{display:grid}.btn{width:100%}.section{padding:54px 0}.product-grid{grid-template-columns:1fr}.included-grid{grid-template-columns:1fr;gap:14px}.benefit-grid{grid-template-columns:1fr}.summary-card{grid-template-columns:1fr 1fr}.benefit-grid>div{border-right:0!important;border-bottom:1px solid rgba(255,255,255,.12);grid-template-columns:1fr;grid-template-rows:auto auto auto;row-gap:6px;justify-items:center;text-align:center;padding:18px 12px;min-height:auto}.benefit-grid span{grid-row:auto;font-size:1.5rem}.benefit-grid strong,.benefit-grid small{text-align:center}.product-card-body p{min-height:auto}.product-card-footer{align-items:flex-start;flex-direction:column}.product-card-footer .btn{width:100%}.commitments-layout{gap:42px}.footer-grid{grid-template-columns:1fr;gap:30px}.footer-grid>div{justify-items:center;text-align:center}.footer-brand{justify-content:center!important;align-items:center!important}.footer-brand div{text-align:left}.product-hero{display:block;min-height:0;background:var(--green-3)}.product-hero-mobile-banner{display:block;width:100%;height:auto;aspect-ratio:8/3;object-fit:cover;object-position:center;border-radius:14px;margin:16px 0 24px;box-shadow:0 14px 34px rgba(0,0,0,.22)}.product-hero-overlay{display:none}.product-hero-content{padding:42px 0 50px}.summary-card{grid-template-columns:repeat(2,1fr);gap:10px;padding:12px;min-height:166px}.summary-item{min-height:66px;padding:8px 6px}.summary-item span{font-size:1.2rem}.summary-item strong{font-size:.82rem;line-height:1.22}.two-columns{gap:42px}.proof-box{grid-template-columns:1fr;gap:18px;padding:20px}.gauge-text{font-size:.88rem}.review-card{width:300px}.pricing-card{padding:22px 16px;gap:18px;border-radius:22px}.pricing-card .section-kicker{margin-bottom:6px}.pricing-card h2{font-size:2rem;line-height:1.05;margin-bottom:8px}.pricing-section .check-list{margin:12px 0 0}.pricing-section .check-list li{padding:4px 0 4px 30px;font-size:.95rem}.price-side{padding:16px 14px;border-radius:18px}.price{font-size:2.05rem}.price-note{margin:5px 0 10px}.price-side small{font-size:.84rem;margin-top:8px}.product-nav-actions a{font-size:.85rem}.product-header .store-brand span{display:none}.payment-methods-section{padding:14px 0 6px}.payment-methods-card{padding:12px 10px 10px}.payment-methods-card strong{font-size:.95rem;margin-bottom:8px}.payment-methods-card img{width:100%;max-width:520px}.included-grid article{padding:16px 14px;min-height:110px;gap:10px;border-radius:18px}.included-grid article span{width:44px;height:44px;font-size:1.1rem}.included-grid h3{font-size:.95rem;line-height:1.3}.modal-dialog{padding:27px 20px}.modal-dialog h2{font-size:clamp(1.8rem,8vw,2.5rem)}.not-found h1{font-size:2.2rem}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}.reviews-track{animation:none}.btn,.store-product-card,.product-cover-link img{transition:none}}
.product-grid.single-product{grid-template-columns:minmax(0,430px);justify-content:center}.product-grid.two-products{grid-template-columns:repeat(2,minmax(0,430px));justify-content:center}
@media(max-width:960px){.product-grid.single-product{grid-template-columns:minmax(0,430px)}}
@media(max-width:650px){.product-grid.single-product,.product-grid.two-products{grid-template-columns:1fr}}


/* Compteur d’achats réel et footer — mise à jour cumulative */
.hero-sales-proof{display:flex;align-items:center;justify-content:center;gap:7px;width:max-content;max-width:100%;margin:12px 0 0;padding:8px 13px;border:1px solid rgba(255,255,255,.28);border-radius:999px;background:rgba(255,255,255,.09);color:#f7f4ea;font-size:.9rem;line-height:1.3}
.hero-sales-proof strong{color:var(--gold-2);font-size:1rem}
.footer-bottom{text-align:center}
@media(max-width:650px){.hero-sales-proof{width:100%;font-size:.86rem;padding:8px 10px;text-align:center}.hero-sales-proof strong{font-size:.95rem}.footer-bottom{text-align:center}}


/* V9 — optimisation conversion mobile, aperçu réel et footer produit simplifié */
.product-preview-section{background:#fff;padding-top:58px;padding-bottom:58px}
.product-preview-section .store-heading{max-width:760px;margin-left:auto;margin-right:auto}
.product-preview-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:30px}
.product-preview-card{display:grid;gap:12px;padding:12px;background:var(--cream);border:1px solid var(--line);border-radius:22px;text-decoration:none;color:var(--green);font-weight:850;box-shadow:0 12px 34px rgba(11,59,45,.08);transition:transform .2s ease,box-shadow .2s ease}
.product-preview-card:hover{transform:translateY(-3px);box-shadow:0 18px 42px rgba(11,59,45,.13)}
.product-preview-card img{width:100%;aspect-ratio:4/5;object-fit:cover;object-position:top;border-radius:15px;background:#fff}
.product-preview-card span{text-align:center;padding:2px 6px 7px}
.product-simple-footer{padding-top:38px}
.product-footer-inner{display:flex;align-items:center;justify-content:space-between;gap:32px}
.product-footer-links{display:flex;align-items:center;justify-content:flex-end;gap:20px;flex-wrap:wrap}
.product-footer-links a{color:#c3d4cd;text-decoration:none;font-weight:750}
.product-footer-links a:hover{color:#fff}
.product-simple-footer .footer-bottom{text-align:center}
.mobile-sticky-cta{display:none}

@media(max-width:960px){
.product-preview-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media(max-width:650px){
.product-preview-section{padding:48px 0}
.product-preview-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:22px}
.product-preview-card{padding:8px;border-radius:17px;gap:8px}
.product-preview-card img{border-radius:12px}
.product-preview-card span{font-size:.82rem;line-height:1.25}
.product-footer-inner{display:grid;justify-items:center;text-align:center;gap:24px}
.product-simple-footer .footer-brand{justify-content:center!important}
.product-simple-footer .footer-brand div{text-align:left}
.product-footer-links{justify-content:center;gap:12px 18px}
.mobile-sticky-cta{position:fixed;left:0;right:0;bottom:0;z-index:85;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px max(10px,env(safe-area-inset-bottom));background:rgba(255,255,255,.98);border-top:1px solid var(--line);box-shadow:0 -12px 35px rgba(3,20,16,.18);transform:translateY(120%);opacity:0;pointer-events:none;transition:transform .25s ease,opacity .25s ease}
.mobile-sticky-cta.is-visible{transform:translateY(0);opacity:1;pointer-events:auto}
.mobile-sticky-price{display:grid;min-width:112px;line-height:1.1;color:var(--green)}
.mobile-sticky-price strong{font-size:1.05rem}
.mobile-sticky-price small{font-size:.7rem;color:var(--muted);margin-top:4px}
.mobile-sticky-cta .btn{width:auto;min-height:48px;padding:11px 16px;white-space:nowrap;font-size:.9rem}
body.has-mobile-sticky-cta{padding-bottom:82px}
body.modal-open .mobile-sticky-cta{display:none}
}


/* V10 — barre d’achat mobile réellement fixe et footer produit aéré */
.product-footer-links{margin-top:8px}
.product-footer-links a{display:inline-flex;align-items:center;justify-content:center;padding:8px 12px;border:1px solid rgba(255,255,255,.16);border-radius:999px;line-height:1.15}
.product-simple-footer .footer-bottom{margin-top:34px}
.mobile-sticky-inner{width:min(100%,720px);margin:0 auto;display:grid;grid-template-columns:minmax(100px,auto) minmax(0,1fr);align-items:center;gap:12px}

@media(max-width:650px){
  .product-simple-footer{padding-top:46px}
  .product-footer-inner{gap:32px}
  .product-footer-links{width:100%;margin-top:2px;gap:10px 12px;padding-top:4px}
  .product-footer-links a{padding:9px 13px;min-height:40px}
  .product-simple-footer .footer-bottom{margin-top:32px}
  .mobile-sticky-cta{box-sizing:border-box;display:block;left:0;right:0;bottom:0;width:100%;padding:8px 10px calc(8px + env(safe-area-inset-bottom));overflow:hidden}
  .mobile-sticky-inner{grid-template-columns:minmax(98px,auto) minmax(0,1fr);gap:10px}
  .mobile-sticky-price{min-width:0;line-height:1.05}
  .mobile-sticky-price strong{display:block;font-size:1rem;white-space:nowrap}
  .mobile-sticky-price small{display:block;font-size:.68rem;white-space:nowrap}
  .mobile-sticky-cta .btn{width:100%;min-width:0;min-height:50px;padding:11px 12px;font-size:.9rem;border-radius:12px}
  body.has-mobile-sticky-cta{padding-bottom:82px}
}

@media(max-width:380px){
  .mobile-sticky-inner{grid-template-columns:92px minmax(0,1fr);gap:8px}
  .mobile-sticky-price strong{font-size:.92rem}
  .mobile-sticky-price small{display:none}
  .mobile-sticky-cta .btn{font-size:.82rem;padding-inline:9px}
}

/* V11 — sticky unifié, CTA final contrasté et réassurance sous « Ce que vous recevez » */
.product-final .final-buy-button{
  background:var(--green)!important;
  color:#fff!important;
  border:1px solid rgba(255,255,255,.14);
  box-shadow:0 12px 30px rgba(11,59,45,.25);
}
.product-final .final-buy-button:hover{
  background:#0e5a47!important;
}

@media(max-width:650px){
  .product-summary-strip{
    padding-top:12px;
    padding-bottom:18px;
    background:var(--cream);
  }
  .product-included + .product-summary-strip{
    margin-top:0;
  }
  .mobile-sticky-cta{
    background:transparent;
    border-top:0;
    box-shadow:none;
    padding:8px 10px calc(8px + env(safe-area-inset-bottom));
  }
  .mobile-sticky-inner{
    background:#fffdf8;
    border:1px solid rgba(215,168,62,.28);
    border-radius:18px;
    padding:8px;
    box-shadow:0 -10px 30px rgba(3,20,16,.16);
  }
  .mobile-sticky-price{
    padding-left:4px;
  }
  .mobile-sticky-price strong{
    color:var(--green);
  }
  .mobile-sticky-cta .btn{
    border-radius:13px;
    box-shadow:none;
  }
}



/* V12 — sticky CTA mobile plus propre, plus cohérent et mieux contrasté */
@media(max-width:650px){
  .mobile-sticky-cta{
    padding:10px 10px calc(10px + env(safe-area-inset-bottom));
  }
  .mobile-sticky-inner{
    width:100%;
    grid-template-columns:minmax(112px,122px) minmax(0,1fr);
    align-items:stretch;
    gap:10px;
    padding:10px;
    border-radius:20px;
    background:#fffefa;
    border:1px solid rgba(215,168,62,.30);
    box-shadow:0 -12px 28px rgba(3,20,16,.14);
  }
  .mobile-sticky-price{
    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:flex-start;
    min-width:0;
    padding:10px 8px 10px 10px;
    border-radius:14px;
    background:#f7f2e5;
    border:1px solid rgba(215,168,62,.18);
  }
  .mobile-sticky-price strong{
    font-size:1.1rem;
    line-height:1;
    letter-spacing:-.02em;
    color:var(--green);
  }
  .mobile-sticky-price small{
    display:block;
    margin-top:5px;
    font-size:.74rem;
    line-height:1.15;
    color:#66736d;
    white-space:normal;
  }
  .mobile-sticky-cta .btn{
    width:100%;
    min-height:56px;
    padding:12px 14px;
    border-radius:14px;
    border:1px solid rgba(183,136,28,.28);
    background:linear-gradient(180deg,#e7c46f 0%, #d9ab44 100%) !important;
    color:var(--green) !important;
    box-shadow:0 8px 18px rgba(215,168,62,.22);
    font-size:1rem;
    font-weight:900;
    letter-spacing:-.01em;
  }
  .mobile-sticky-cta .btn:hover,
  .mobile-sticky-cta .btn:focus-visible{
    background:linear-gradient(180deg,#eccf84 0%, #ddb45a 100%) !important;
  }
  body.has-mobile-sticky-cta{
    padding-bottom:96px;
  }
}

@media(max-width:380px){
  .mobile-sticky-inner{
    grid-template-columns:104px minmax(0,1fr);
    gap:8px;
    padding:8px;
  }
  .mobile-sticky-price{
    padding:8px 6px 8px 8px;
  }
  .mobile-sticky-price strong{
    font-size:1rem;
  }
  .mobile-sticky-price small{
    display:block;
    font-size:.68rem;
    margin-top:4px;
  }
  .mobile-sticky-cta .btn{
    min-height:52px;
    font-size:.95rem;
    padding:10px 12px;
  }
}


/* V13 — sticky CTA collé au bas, bloc unifié avec séparateur vertical */
@media(max-width:650px){
  .mobile-sticky-cta{
    position:fixed;
    left:0;
    right:0;
    bottom:0;
    width:100%;
    padding:0 0 env(safe-area-inset-bottom);
    background:linear-gradient(180deg,#e8c66f 0%,#ddb252 100%);
    border-top:1px solid rgba(11,59,45,.16);
    box-shadow:0 -10px 28px rgba(3,20,16,.18);
    overflow:visible;
  }
  .mobile-sticky-inner{
    position:relative;
    width:min(100%,720px);
    margin:0 auto;
    display:grid;
    grid-template-columns:36% 64%;
    align-items:stretch;
    gap:0;
    padding:0;
    border:0;
    border-radius:0;
    background:transparent;
    box-shadow:none;
  }
  .mobile-sticky-price{
    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:flex-start;
    min-width:0;
    padding:12px 14px;
    border:0;
    border-radius:0;
    background:transparent;
  }
  .mobile-sticky-price strong{
    color:var(--green);
    font-size:1.08rem;
    line-height:1.05;
    font-weight:950;
    white-space:nowrap;
  }
  .mobile-sticky-price small{
    display:block;
    margin-top:4px;
    color:rgba(11,59,45,.72);
    font-size:.72rem;
    line-height:1.1;
    white-space:nowrap;
  }
  .mobile-sticky-cta .btn{
    position:relative;
    width:100%;
    min-height:64px;
    margin:0;
    padding:12px 14px;
    border:0;
    border-left:1px solid rgba(11,59,45,.22);
    border-radius:0;
    background:transparent!important;
    color:var(--green)!important;
    box-shadow:none;
    font-size:1rem;
    font-weight:950;
    letter-spacing:-.01em;
  }
  .mobile-sticky-cta .btn:hover,
  .mobile-sticky-cta .btn:focus-visible{
    background:rgba(255,255,255,.10)!important;
  }
  body.has-mobile-sticky-cta{
    padding-bottom:calc(64px + env(safe-area-inset-bottom));
  }
}

@media(max-width:380px){
  .mobile-sticky-inner{
    grid-template-columns:38% 62%;
  }
  .mobile-sticky-price{
    padding:10px 10px;
  }
  .mobile-sticky-price strong{
    font-size:.98rem;
  }
  .mobile-sticky-price small{
    font-size:.65rem;
  }
  .mobile-sticky-cta .btn{
    min-height:60px;
    padding:10px 10px;
    font-size:.9rem;
  }
}


/* V15 — sticky CTA harmonisé : éléments rapprochés du séparateur, séparateur 2 %, arrondis haut et bas */
@media(max-width:650px){
  .mobile-sticky-cta{
    border-radius:18px;
    overflow:hidden;
  }
  .mobile-sticky-inner{
    border-radius:18px;
    overflow:hidden;
    grid-template-columns:34% 66%;
  }
  .mobile-sticky-price{
    border-radius:18px 0 0 18px;
    align-items:flex-end;
    text-align:right;
    padding:12px 10px 12px 14px;
  }
  .mobile-sticky-price strong,
  .mobile-sticky-price small{
    width:100%;
    text-align:right;
  }
  .mobile-sticky-cta .btn{
    border-left:1px solid rgba(11,59,45,.02);
    border-radius:0 18px 18px 0;
    padding-left:12px;
    padding-right:12px;
    -webkit-tap-highlight-color:transparent;
  }
  .mobile-sticky-cta .btn:hover,
  .mobile-sticky-cta .btn:focus-visible,
  .mobile-sticky-cta .btn:active{
    background:rgba(255,255,255,.07)!important;
  }
}

@media(max-width:380px){
  .mobile-sticky-price{padding:10px 8px 10px 10px;}
  .mobile-sticky-cta .btn{padding-left:10px;padding-right:10px;}
}


/* V16 — finition ultra-fine du sticky CTA mobile */
@media(max-width:650px){
  .mobile-sticky-cta{
    left:0;
    right:0;
    bottom:0;
    padding:0 4px calc(4px + env(safe-area-inset-bottom));
    background:transparent;
    border-top:0;
    box-shadow:none;
    overflow:visible;
  }
  .mobile-sticky-inner{
    width:100%;
    grid-template-columns:35% 65%;
    min-height:58px;
    border-radius:16px;
    overflow:hidden;
    background:linear-gradient(180deg,#edcf7d 0%,#dfb655 100%);
    border:1px solid rgba(126,91,17,.14);
    box-shadow:0 -8px 24px rgba(3,20,16,.13), inset 0 1px 0 rgba(255,255,255,.28);
  }
  .mobile-sticky-price{
    min-height:58px;
    padding:8px 9px 8px 12px;
    border-radius:16px 0 0 16px;
    align-items:flex-end;
    justify-content:center;
    background:transparent;
  }
  .mobile-sticky-price strong{
    font-size:1.02rem;
    line-height:1;
    letter-spacing:-.025em;
  }
  .mobile-sticky-price small{
    margin-top:4px;
    font-size:.66rem;
    line-height:1.05;
    color:rgba(11,59,45,.68);
  }
  .mobile-sticky-cta .btn{
    min-height:58px;
    border-left:1px solid rgba(11,59,45,.02);
    border-radius:0 16px 16px 0;
    padding:8px 12px;
    background:transparent!important;
    color:var(--green)!important;
    box-shadow:none;
    font-size:.96rem;
    font-weight:950;
    letter-spacing:-.012em;
  }
  .mobile-sticky-cta .btn:hover,
  .mobile-sticky-cta .btn:focus-visible{
    background:rgba(255,255,255,.055)!important;
  }
  .mobile-sticky-cta .btn:active{
    background:rgba(11,59,45,.045)!important;
    transform:scale(.995);
  }
  body.has-mobile-sticky-cta{
    padding-bottom:calc(66px + env(safe-area-inset-bottom));
  }
}

@media(max-width:380px){
  .mobile-sticky-inner{
    grid-template-columns:36% 64%;
    min-height:56px;
  }
  .mobile-sticky-price,
  .mobile-sticky-cta .btn{
    min-height:56px;
  }
  .mobile-sticky-price{
    padding:7px 7px 7px 9px;
  }
  .mobile-sticky-price strong{
    font-size:.94rem;
  }
  .mobile-sticky-price small{
    font-size:.62rem;
  }
  .mobile-sticky-cta .btn{
    font-size:.9rem;
    padding:8px 9px;
  }
}


/* V17 — le fond du sticky touche le bas, le bloc CTA reste arrondi et légèrement décollé */
@media(max-width:650px){
  .mobile-sticky-cta{
    left:0;
    right:0;
    bottom:0;
    width:100%;
    padding:8px 10px calc(8px + env(safe-area-inset-bottom));
    background:rgba(255,253,248,.98);
    border-top:1px solid rgba(11,59,45,.08);
    box-shadow:0 -8px 24px rgba(3,20,16,.10);
    overflow:visible;
  }
  .mobile-sticky-inner{
    width:100%;
    min-height:58px;
    border-radius:16px;
    overflow:hidden;
    background:linear-gradient(180deg,#edcf7d 0%,#dfb655 100%);
    border:1px solid rgba(126,91,17,.14);
    box-shadow:0 5px 16px rgba(3,20,16,.10), inset 0 1px 0 rgba(255,255,255,.28);
  }
  .mobile-sticky-cta .btn{
    border-left:1px solid rgba(11,59,45,.05);
  }
  body.has-mobile-sticky-cta{
    padding-bottom:calc(82px + env(safe-area-inset-bottom));
  }
}

@media(max-width:380px){
  .mobile-sticky-cta{
    padding:7px 8px calc(7px + env(safe-area-inset-bottom));
  }
  body.has-mobile-sticky-cta{
    padding-bottom:calc(78px + env(safe-area-inset-bottom));
  }
}


/* V18 — CTA doré plus généreux, fond arrière plus fin et sans arrondi inférieur */
@media(max-width:650px){
  .mobile-sticky-cta{
    padding:4px 6px calc(2px + env(safe-area-inset-bottom));
    border-radius:18px 18px 0 0;
    overflow:visible;
  }
  .mobile-sticky-inner{
    min-height:64px;
    border-radius:17px;
  }
  .mobile-sticky-price,
  .mobile-sticky-cta .btn{
    min-height:64px;
  }
  .mobile-sticky-price{
    padding:9px 9px 9px 12px;
  }
  .mobile-sticky-price strong{
    font-size:1.05rem;
  }
  .mobile-sticky-price small{
    font-size:.68rem;
  }
  .mobile-sticky-cta .btn{
    padding:10px 13px;
    font-size:1rem;
    border-left:1px solid rgba(11,59,45,.05);
  }
  body.has-mobile-sticky-cta{
    padding-bottom:calc(72px + env(safe-area-inset-bottom));
  }
}

@media(max-width:380px){
  .mobile-sticky-cta{
    padding:4px 5px calc(2px + env(safe-area-inset-bottom));
  }
  .mobile-sticky-inner,
  .mobile-sticky-price,
  .mobile-sticky-cta .btn{
    min-height:60px;
  }
  .mobile-sticky-price strong{
    font-size:.96rem;
  }
  .mobile-sticky-cta .btn{
    font-size:.92rem;
  }
  body.has-mobile-sticky-cta{
    padding-bottom:calc(68px + env(safe-area-inset-bottom));
  }
}

/* V19 — fond arrière sans arrondi haut, marges homogènes autour du bloc sticky */
@media(max-width:650px){
  .mobile-sticky-cta{
    border-radius:0;
    padding:6px 6px calc(6px + env(safe-area-inset-bottom));
    background:rgba(255,253,248,.98);
  }
  .mobile-sticky-inner{
    min-height:64px;
    border-radius:17px;
  }
  .mobile-sticky-price,
  .mobile-sticky-cta .btn{
    min-height:64px;
  }
  .mobile-sticky-price{
    padding:9px 10px 9px 12px;
  }
  .mobile-sticky-cta .btn{
    padding:10px 13px;
    border-left:1px solid rgba(11,59,45,.035);
  }
  body.has-mobile-sticky-cta{
    padding-bottom:calc(76px + env(safe-area-inset-bottom));
  }
}

@media(max-width:380px){
  .mobile-sticky-cta{
    border-radius:0;
    padding:5px 5px calc(5px + env(safe-area-inset-bottom));
  }
  .mobile-sticky-inner,
  .mobile-sticky-price,
  .mobile-sticky-cta .btn{
    min-height:60px;
  }
  body.has-mobile-sticky-cta{
    padding-bottom:calc(70px + env(safe-area-inset-bottom));
  }
}

/* V20 — avis clients défilant continuellement de droite vers la gauche */
.reviews-section{
  position:relative;
  overflow:hidden;
  background:linear-gradient(180deg,#fff 0%,#fbf8f1 100%);
}
.reviews-marquee{
  position:relative;
  width:100%;
  overflow:hidden;
  padding:10px 0 28px;
  touch-action:pan-y;
  -webkit-mask-image:linear-gradient(90deg,transparent 0,#000 5%,#000 95%,transparent 100%);
  mask-image:linear-gradient(90deg,transparent 0,#000 5%,#000 95%,transparent 100%);
}
.reviews-track{
  display:flex;
  width:max-content;
  gap:0;
  animation:reviews-rtl 44s linear infinite;
  will-change:transform;
}
.reviews-set{
  display:flex;
  flex:0 0 auto;
  gap:18px;
  padding-right:18px;
}
.reviews-marquee:hover .reviews-track,
.reviews-marquee:focus-within .reviews-track,
.reviews-marquee:active .reviews-track{
  animation-play-state:paused;
}
.review-card{
  width:350px;
  min-height:220px;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  flex:0 0 auto;
  background:#fff;
  border:1px solid var(--line);
  border-radius:22px;
  padding:25px;
  box-shadow:0 12px 34px rgba(11,59,45,.08);
}
.review-card p{
  min-height:0;
  margin:15px 0 22px;
  color:#3f4f49;
  line-height:1.65;
}
.review-card footer{
  display:grid;
  gap:2px;
}
.review-card footer span{
  font-size:.86rem;
  color:var(--muted);
}
.review-card em{
  width:max-content;
  margin-top:5px;
  padding:3px 8px;
  border-radius:999px;
  background:#e9f5ef;
  color:var(--success);
  font-size:.76rem;
  font-style:normal;
  font-weight:850;
}
.stars{
  color:#d7a428;
  letter-spacing:2px;
}
@keyframes reviews-rtl{
  from{transform:translate3d(0,0,0)}
  to{transform:translate3d(-50%,0,0)}
}

@media(max-width:650px){
  .reviews-section{
    padding-top:58px;
    padding-bottom:48px;
  }
  .reviews-section .section-heading{
    margin-bottom:26px;
  }
  .reviews-marquee{
    -webkit-mask-image:linear-gradient(90deg,transparent 0,#000 3%,#000 97%,transparent 100%);
    mask-image:linear-gradient(90deg,transparent 0,#000 3%,#000 97%,transparent 100%);
  }
  .reviews-track{
    animation-duration:38s;
  }
  .reviews-set{
    gap:12px;
    padding-right:12px;
  }
  .review-card{
    width:min(82vw,310px);
    min-height:205px;
    padding:21px;
    border-radius:19px;
  }
}

@media(prefers-reduced-motion:reduce){
  .reviews-track{
    animation:none!important;
    transform:none!important;
  }
  .reviews-marquee{
    overflow-x:auto;
    -webkit-mask-image:none;
    mask-image:none;
  }
}


/* V21 — cartes d’avis plus compactes, sans modification des témoignages enregistrés */
.review-card{
  width:320px;
  min-height:190px;
  padding:20px;
  border-radius:19px;
}
.review-card p{
  margin:12px 0 17px;
  font-size:.94rem;
  line-height:1.52;
}
.review-card footer strong{
  font-size:.96rem;
  line-height:1.25;
}
.review-card footer span{
  font-size:.79rem;
}
.review-card em{
  margin-top:4px;
  padding:3px 7px;
  font-size:.7rem;
}
.review-card .stars,
.review-card > .stars{
  font-size:.94rem;
  letter-spacing:1.5px;
}

@media(max-width:650px){
  .reviews-section{
    padding-top:50px;
    padding-bottom:40px;
  }
  .reviews-section .section-heading{
    margin-bottom:20px;
  }
  .reviews-set{
    gap:10px;
    padding-right:10px;
  }
  .review-card{
    width:min(74vw,286px);
    min-height:178px;
    padding:17px;
    border-radius:17px;
  }
  .review-card p{
    margin:10px 0 15px;
    font-size:.88rem;
    line-height:1.48;
  }
  .review-card footer strong{
    font-size:.91rem;
  }
  .review-card footer span{
    font-size:.75rem;
  }
  .review-card em{
    padding:3px 7px;
    font-size:.67rem;
  }
  .review-card .stars,
  .review-card > .stars{
    font-size:.9rem;
  }
}


/* V22 — notes par demi-étoile (3,5 / 4,5) */
.rating-stars{
  display:flex;
  align-items:center;
  gap:3px;
  width:max-content;
  color:#d9dedb;
  letter-spacing:0!important;
}
.rating-star{
  position:relative;
  display:inline-block;
  flex:0 0 auto;
  color:#d9dedb;
  line-height:1;
}
.rating-star.is-full{
  color:#d7a428;
}
.rating-star.is-half::before{
  content:"★";
  position:absolute;
  inset:0;
  width:50%;
  overflow:hidden;
  color:#d7a428;
  white-space:nowrap;
}
.review-card .rating-stars{
  font-size:.94rem;
}
@media(max-width:650px){
  .review-card .rating-stars{
    font-size:.9rem;
  }
}

/* V29 — toute la barre sticky est cliquable */
@media(max-width:650px){
  .mobile-sticky-link{
    color:var(--green);
    text-decoration:none;
    cursor:pointer;
    -webkit-tap-highlight-color:transparent;
  }
  .mobile-sticky-link:focus-visible{
    outline:3px solid rgba(11,59,45,.35);
    outline-offset:2px;
  }
  .mobile-sticky-link .btn{
    display:flex;
    align-items:center;
    justify-content:center;
  }
  .mobile-sticky-link:active{
    transform:scale(.996);
  }
}
