/* ══════════════════════════════════════════════════════════
   ShareWin — Accueil public (import Claude Design "ShareWin Site Public")
   Préfixe : sw2-  |  Police titres : Manrope  |  Police texte : Inter
   ══════════════════════════════════════════════════════════ */
.sw2-ctn{max-width:1400px;margin:0 auto;padding:0 40px}
.sw2-h2{font-family:'Manrope';font-weight:800;font-size:clamp(26px,3vw,32px);letter-spacing:-.02em;color:var(--sw2-ink2);margin:0;text-align:left}
.sw2-section{padding:60px 0}
.sw2-section-soft{background:var(--sw2-bg-soft);padding:56px 0}
.sw2-section-sub{font-size:15.5px;color:var(--sw2-muted);margin:8px 0 0}
.sw2-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-bottom:26px}
.sw2-link-arrow{font-size:14px;font-weight:600;color:var(--sw2-green);white-space:nowrap}

/* ── Boutons (variantes hero/CTA, plus grandes que le header) ── */
.sw2-btn-lg{padding:17px 26px;font-size:15.5px;border-radius:13px}
.sw2-hero-btns .sw2-btn-primary{box-shadow:0 10px 24px rgba(15,107,52,.22)}
.sw2-btn-outline-cream{background:#fff;border-color:#E9DFB8}

/* ══════════════════════════════════════════
   HERO
   ══════════════════════════════════════════ */
.sw2-hero{position:relative;overflow:hidden;background:linear-gradient(180deg,#FBFDFB 0%,#F7FAF8 100%);font-family:'Inter',system-ui,sans-serif}
.sw2-hero-grid{display:grid;grid-template-columns:.88fr 1.12fr;gap:24px;align-items:center;padding:48px 40px 0}
.sw2-hero-text{padding-bottom:36px;animation:swUp .55s ease both}
.sw2-eyebrow{display:inline-flex;align-items:center;gap:9px;background:linear-gradient(135deg,#FFFDF3,#FFF4CE);color:#7A5E00;font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;padding:8px 16px 8px 12px;border-radius:999px;border:1px solid #FBE6A0;box-shadow:0 2px 12px rgba(217,164,0,.14)}
.sw2-eyebrow-dot{width:7px;height:7px;border-radius:50%;background:var(--sw2-green);flex:0 0 7px;animation:sw2PulseDot 2.4s ease-out infinite}
@keyframes sw2PulseDot{0%{box-shadow:0 0 0 0 rgba(21,138,66,.5)}70%{box-shadow:0 0 0 8px rgba(21,138,66,0)}100%{box-shadow:0 0 0 0 rgba(21,138,66,0)}}

.sw2-h1{font-family:'Manrope';font-weight:800;font-size:clamp(34px,4.2vw,58px);line-height:1.06;letter-spacing:-.03em;margin:22px 0 0;color:#14261C;min-height:calc(3 * 1.06em)}
.sw2-type{display:inline}
.sw2-caret{display:inline-block;width:.06em;min-width:3px;height:.92em;background:var(--sw2-green);margin-left:.06em;border-radius:2px;vertical-align:-.09em;animation:sw2Caret 1s step-end infinite}
@keyframes sw2Caret{0%,100%{opacity:1}50%{opacity:0}}
@media(prefers-reduced-motion:reduce){.sw2-eyebrow-dot,.sw2-caret{animation:none}.sw2-caret{opacity:0}}
.sw2-h1 em{color:var(--sw2-green);font-style:normal}
.sw2-brand{color:var(--sw2-green-deep)}
.sw2-brand b{color:var(--sw2-yellow-alt);font-weight:800}
.sw2-hero-p{font-size:16.5px;line-height:1.6;color:var(--sw2-muted);max-width:440px;margin:20px 0 0}
.sw2-hero-checks{display:flex;gap:22px;margin-top:22px;flex-wrap:wrap}
.sw2-hero-checks span{display:flex;align-items:center;gap:8px;font-size:14px;color:#3C4B43;font-weight:500}
.sw2-hero-checks i{width:20px;height:20px;border-radius:50%;background:var(--sw2-tint-green);display:flex;align-items:center;justify-content:center;font-size:13px;color:var(--sw2-green)}
.sw2-hero-btns{display:flex;gap:14px;margin-top:28px;flex-wrap:wrap}
.sw2-hero-social-proof{display:flex;align-items:center;gap:14px;margin-top:26px;font-size:13px;color:var(--sw2-muted);line-height:1.4}
.sw2-hero-social-proof strong{color:#14261C}

.sw2-avatar-stack{display:flex}
.sw2-avatar-stack img{width:34px;height:34px;border-radius:50%;object-fit:cover;background:var(--sw2-yellow);border:2.5px solid #fff;margin-left:-10px;display:block}
.sw2-avatar-stack img:first-child{margin-left:0}
.sw2-avatar-stack-dark img{border-color:var(--sw2-green-deep)}

/* ── Composition visuelle hero — image fournie, avec flottement doux ── */
.sw2-hero-visual{position:relative;width:100%;max-width:640px;margin:0 auto;cursor:pointer}
/* Couche 1 : tilt piloté par JS au survol (transform posé en inline-style) */
.sw2-hero-tilt{transition:transform .15s ease-out;transform-style:preserve-3d}
/* Couche 2 : flottement idle en CSS pur — séparée pour ne pas se battre avec le tilt JS sur la même propriété transform */
.sw2-hero-img-wrap{display:block;animation:swPop .7s ease both,swFloat 6s ease-in-out 1s infinite}
.sw2-hero-img{width:100%;height:auto;display:block;border-radius:24px;filter:drop-shadow(0 20px 40px rgba(13,61,34,.18))}
/* Diaporama : cadre au format de la 1re image (portrait), fond transparent conservé,
   aucune image rognée (object-fit:contain), fondu enchaîné */
.sw2-hero-slides{position:relative;aspect-ratio:1199/1312}
.sw2-hero-slides .sw2-hero-img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;background:transparent;opacity:0;transform:scale(1.03);transition:opacity 1.2s ease,transform 1.2s ease}
.sw2-hero-slides .sw2-hero-img.is-active{opacity:1;transform:scale(1)}
@media(prefers-reduced-motion:reduce){.sw2-hero-slides .sw2-hero-img{transition:none;transform:none}}
/* Halo qui suit la souris (équivalent vanilla du composant Spotlight) */
.sw2-hero-spotlight{position:absolute;inset:0;border-radius:24px;pointer-events:none;opacity:0;transition:opacity .25s ease;mix-blend-mode:overlay}
@media(hover:none){.sw2-hero-spotlight{display:none}}

/* ── Bande 4 rôles ── */
.sw2-roles{background:#fff;border:1px solid var(--sw2-border);border-radius:20px;box-shadow:0 18px 40px rgba(13,61,34,.07);display:grid;grid-template-columns:repeat(4,1fr);margin:40px 0 56px}
.sw2-role{display:flex;gap:14px;padding:24px 22px;border-right:1px solid #F1F4F2}
.sw2-role-last{border-right:none}
.sw2-role-icon{width:48px;height:48px;flex:0 0 48px;border-radius:14px;display:flex;align-items:center;justify-content:center}
.sw2-role-t{font-family:'Manrope';font-weight:700;font-size:15px}
.sw2-role p{font-size:12.5px;color:#6B7B72;line-height:1.5;margin:4px 0 0}
.sw2-role-link{font-size:12.5px;font-weight:600;color:var(--sw2-green);margin-top:8px;display:inline-flex;align-items:center;gap:3px}
.sw2-inline-arrow{font-size:16px;line-height:1;transition:transform .2s ease}
.sw2-role-link:hover .sw2-inline-arrow,.sw2-link-arrow:hover .sw2-inline-arrow{transform:translateX(3px)}

/* ══════════════════════════════════════════
   STATS BAND
   ══════════════════════════════════════════ */
.sw2-stats-wrap{padding:0 40px 56px}
.sw2-stats-band{background:var(--sw2-green-deep);border-radius:22px;padding:30px 36px;display:grid;grid-template-columns:1.15fr repeat(4,.75fr);gap:24px;align-items:center}
.sw2-stats-title{font-family:'Manrope';font-weight:800;font-size:19px;color:#fff;line-height:1.25;margin-top:10px}
.sw2-stats-sub{display:flex;align-items:center;gap:10px;font-size:12.5px;color:#BFE0CD;line-height:1.4;margin-top:12px}
.sw2-stats-sub i{width:32px;height:32px;flex-shrink:0;border-radius:50%;border:1.5px solid rgba(255,255,255,.5);display:flex;align-items:center;justify-content:center;font-size:17px;color:#fff}
.sw2-stat{text-align:center;border-left:1px solid rgba(255,255,255,.14);padding:4px 8px}
.sw2-stat-icon{width:46px;height:46px;margin:0 auto;border-radius:50%;background:rgba(255,255,255,.1);display:flex;align-items:center;justify-content:center;font-size:22px}
.sw2-stat-val{font-family:'Manrope';font-weight:800;font-size:26px;color:#fff;margin-top:10px;letter-spacing:-.02em}
.sw2-stat-lbl{font-size:11.5px;color:#A9C4B5;margin-top:2px}

/* ══════════════════════════════════════════
   OFFRES / PROMOTIONS / FOURNISSEURS — cartes
   ══════════════════════════════════════════ */
.sw2-offres-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.sw2-offer-card{background:#fff;border:1px solid var(--sw2-border);border-radius:18px;overflow:hidden;transition:box-shadow .2s,border-color .2s}
.sw2-offer-card:hover{box-shadow:0 14px 32px rgba(13,61,34,.1);border-color:#DCE5DF}
.sw2-offer-img{position:relative;aspect-ratio:4/3;background:var(--sw2-tint-green)}
.sw2-offer-img img{width:100%;height:100%;object-fit:cover}
.sw2-offer-badge{position:absolute;top:10px;left:10px;background:var(--sw2-yellow);color:#0D3D22;font-size:10px;font-weight:800;padding:5px 9px;border-radius:7px}
.sw2-offer-body{padding:15px}
.sw2-offer-cat{font-size:11px;color:#8A9A91;font-weight:600}
.sw2-offer-nom{font-family:'Manrope';font-weight:700;font-size:15.5px;margin-top:4px;line-height:1.3}
.sw2-offer-price-row{display:flex;align-items:baseline;flex-wrap:wrap;gap:4px 8px;margin-top:8px}
.sw2-offer-price{font-family:'Manrope';font-weight:800;font-size:18px;color:var(--sw2-green);white-space:nowrap}
.sw2-offer-price-old{font-size:12px;color:#98A69E;text-decoration:line-through}
.sw2-offer-remise{display:inline-block;background:var(--sw2-tint-yellow);color:#8A6B00;font-size:11px;font-weight:700;padding:4px 9px;border-radius:7px;margin-top:8px}
.sw2-offer-meta{display:flex;align-items:center;gap:5px;font-size:11.5px;color:#7A8A82;margin-top:8px}
.sw2-offer-meta i{font-size:14px}
.sw2-offer-btn{display:block;margin-top:13px;background:var(--sw2-green-btn);color:#fff;text-align:center;font-size:13.5px;font-weight:700;padding:12px;border-radius:11px}
.sw2-offer-btn:hover{background:var(--sw2-green-dark);color:#fff}

.sw2-nearby-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:20px}
.sw2-nearby-card{display:flex;gap:14px;background:#fff;border:1px solid var(--sw2-border);border-radius:16px;padding:13px}
.sw2-nearby-img{width:90px;height:90px;flex:0 0 90px;border-radius:11px;background:var(--sw2-tint-green);overflow:hidden}
.sw2-nearby-img img{width:100%;height:100%;object-fit:cover}
.sw2-nearby-nom{font-family:'Manrope';font-weight:700;font-size:14.5px;margin-top:3px}
.sw2-nearby-price{font-family:'Manrope';font-weight:800;font-size:15.5px;color:var(--sw2-green);margin-top:5px}

.sw2-promos-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.sw2-promo-card{border-radius:18px;padding:20px}
.sw2-promo-pct{font-family:'Manrope';font-weight:800;font-size:36px;letter-spacing:-.03em}
.sw2-promo-img{height:88px;border-radius:12px;background:rgba(255,255,255,.55);margin:12px 0}
.sw2-promo-nom{font-family:'Manrope';font-weight:700;font-size:14.5px}
.sw2-promo-price{font-family:'Manrope';font-weight:800;font-size:18px;margin-top:6px}
.sw2-promo-old{font-size:11.5px;text-decoration:line-through;opacity:.65}
.sw2-promo-btn{display:block;margin-top:13px;background:rgba(255,255,255,.9);color:#0D3D22;text-align:center;font-size:13px;font-weight:700;padding:11px;border-radius:10px}

.sw2-fournisseurs-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:22px}
.sw2-fournisseur-card{background:#fff;border:1px solid var(--sw2-border);border-radius:16px;padding:18px}
.sw2-fournisseur-top{display:flex;align-items:center;gap:12px}
.sw2-fournisseur-icon{width:46px;height:46px;flex:0 0 46px;border-radius:13px;background:var(--sw2-tint-green);display:flex;align-items:center;justify-content:center;color:var(--sw2-green);font-size:22px}
.sw2-fournisseur-nom{font-family:'Manrope';font-weight:700;font-size:14.5px;display:flex;align-items:center;gap:5px}
.sw2-fournisseur-cat{font-size:11.5px;color:#7A8A82}
.sw2-fournisseur-foot{display:flex;align-items:center;justify-content:space-between;margin-top:14px;padding-top:12px;border-top:1px solid #F1F4F2;font-size:12px;color:#7A8A82}
.sw2-fournisseur-foot span{display:flex;align-items:center;gap:4px}
.sw2-fournisseur-foot i{font-size:14px}
.sw2-fournisseur-offres{font-weight:700;color:var(--sw2-green)}

/* ══════════════════════════════════════════
   COMMENT ÇA MARCHE — étapes
   ══════════════════════════════════════════ */
.sw2-etapes{display:flex;align-items:stretch;justify-content:center;gap:6px;margin-top:30px;flex-wrap:wrap}
.sw2-etape-wrap{display:flex;align-items:center;gap:6px}
.sw2-etape{background:#fff;border:1px solid var(--sw2-border);border-radius:18px;padding:20px 16px;text-align:center;width:168px}
.sw2-etape-icon{width:44px;height:44px;margin:0 auto;border-radius:13px;display:flex;align-items:center;justify-content:center;font-size:22px}
.sw2-etape-t{font-family:'Manrope';font-weight:700;font-size:15px;margin-top:10px}
.sw2-etape-sub{font-size:11.5px;color:#6B7B72;margin-top:4px;line-height:1.4}
.sw2-etape-arrow{font-size:20px;color:#C6D4CC}

/* ── Pourquoi ── */
.sw2-pourquoi-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:22px}
.sw2-pourquoi-card{background:#fff;border:1px solid var(--sw2-border);border-radius:16px;padding:22px}
.sw2-pourquoi-card i{font-size:26px;color:var(--sw2-green)}
.sw2-pourquoi-t{font-family:'Manrope';font-weight:700;font-size:15.5px;margin-top:10px}
.sw2-pourquoi-card p{font-size:12.5px;color:#6B7B72;line-height:1.55;margin:6px 0 0}

/* ══════════════════════════════════════════
   APPLICATION
   ══════════════════════════════════════════ */
.sw2-app-band{background:var(--sw2-green-deep);border-radius:22px;padding:40px;display:grid;grid-template-columns:1.2fr .8fr;gap:28px;align-items:center;overflow:hidden}
.sw2-app-title{font-family:'Manrope';font-weight:800;font-size:30px;color:#fff;margin:0;letter-spacing:-.02em}
.sw2-app-sub{font-size:15px;color:#BFE0CD;line-height:1.6;margin:12px 0 0;max-width:420px}
.sw2-app-cta-row{display:flex;align-items:center;gap:16px;margin-top:22px;flex-wrap:wrap}
.sw2-app-btn{display:flex;align-items:center;gap:9px;background:var(--sw2-yellow);color:#0D3D22;padding:14px 22px;border-radius:12px;font-size:14.5px;font-weight:700}
.sw2-app-btn:hover{background:#F0C400;color:#0D3D22}
.sw2-app-qr{width:78px;height:78px;background:#fff;border-radius:12px;padding:7px;flex-shrink:0;box-shadow:0 6px 18px rgba(0,0,0,.15)}
.sw2-app-qr img{display:block;width:100%;height:100%}
.sw2-app-phone-wrap{display:flex;justify-content:center}
.sw2-app-phone-real{width:200px;max-width:52%;height:auto;display:block;filter:drop-shadow(0 26px 44px rgba(0,0,0,.32))}

/* ══════════════════════════════════════════
   CTA FINAL
   ══════════════════════════════════════════ */
.sw2-cta-final{background:var(--sw2-tint-yellow);border-radius:22px;padding:44px;text-align:center}
.sw2-cta-final-t{font-family:'Manrope';font-weight:800;font-size:28px;margin:0;color:#14261C;letter-spacing:-.02em}
.sw2-cta-final-s{font-size:15px;color:#6B5A2A;margin:10px auto 0;max-width:520px}
.sw2-cta-final-btns{display:flex;gap:14px;justify-content:center;margin-top:24px;flex-wrap:wrap}

/* ══════════════════════════════════════════
   RESPONSIVE
   ══════════════════════════════════════════ */
@media(max-width:1100px){
  .sw2-hero-grid{grid-template-columns:1fr;padding:36px 20px 0}
  .sw2-hero-visual{max-width:460px}
  .sw2-roles{grid-template-columns:1fr 1fr}
  .sw2-role{border-right:none;border-bottom:1px solid #F1F4F2}
  .sw2-stats-band{grid-template-columns:1fr 1fr;padding:26px}
  .sw2-stats-intro{grid-column:1/-1}
  .sw2-offres-grid,.sw2-promos-grid,.sw2-fournisseurs-grid{grid-template-columns:1fr 1fr}
  .sw2-nearby-grid{grid-template-columns:1fr}
  .sw2-pourquoi-grid{grid-template-columns:1fr 1fr}
  .sw2-app-band{grid-template-columns:1fr;text-align:center}
  .sw2-app-phone-wrap{order:-1}
  .sw2-app-cta-row{justify-content:center}
}
@media(max-width:640px){
  .sw2-ctn,.sw2-stats-wrap{padding-left:18px;padding-right:18px}
  .sw2-h1{font-size:32px}
  .sw2-hero-visual{max-width:320px}
  .sw2-hero-btns{flex-direction:column;align-items:stretch}
  .sw2-hero-btns .sw2-btn-primary,.sw2-hero-btns .sw2-btn-outline{justify-content:center}
  .sw2-roles{grid-template-columns:1fr}
  .sw2-stats-band{grid-template-columns:1fr 1fr}
  .sw2-offres-grid,.sw2-promos-grid,.sw2-fournisseurs-grid,.sw2-pourquoi-grid{grid-template-columns:1fr}
  .sw2-etapes{flex-direction:column}
  .sw2-etape{width:100%}
  .sw2-etape-arrow{transform:rotate(90deg);margin:0 auto}
  .sw2-section-head{flex-direction:column;align-items:flex-start}
  .sw2-cta-final-btns{flex-direction:column;align-items:stretch}
}
