    :root {
      --brand:      #C8553D;
      --brand-d:    #A8412C;
      --navy:       #0D1B3E;
      --navy-d:     #081229;
      --ink:        #1A1A2E;
      --ink-soft:   #6B7280;
      --bg:         #F8F9FB;
      --card:       #FFFFFF;
      --line:       #E5E7EB;
      --wa:         #25D366;
      --wa-d:       #1aad54;
      --r:          16px;
      --max:        520px;
      --font-head:  'Inter', system-ui, sans-serif;
      --font-body:  'Inter', system-ui, sans-serif;
    }

    /* ─── THÈMES PREMIUM ─── */
    /* moderne = base (aucun override). elegant & vitrine ci-dessous. */

    /* Élégant : éditorial, serif, hairline, beaucoup de blanc */
    html[data-theme="elegant"]{
      --font-head: 'Playfair Display', Georgia, serif;
      --r: 6px;
    }
    html[data-theme="elegant"] .hero-tag{border-radius:2px;letter-spacing:.18em;}
    html[data-theme="elegant"] .hero-title{font-weight:700;letter-spacing:-.2px;}
    html[data-theme="elegant"] .sec-title{font-weight:700;letter-spacing:0;}
    html[data-theme="elegant"] .pcard,
    html[data-theme="elegant"] .dish,
    html[data-theme="elegant"] .info-list,
    html[data-theme="elegant"] .about{box-shadow:none;border-color:var(--line);}
    html[data-theme="elegant"] .pcard-btn,
    html[data-theme="elegant"] .dish-btn{border-radius:4px;}
    html[data-theme="elegant"] .menu-cat-title{font-weight:600;letter-spacing:.14em;}
    html[data-theme="elegant"] .wa-btn{border-radius:6px;}

    /* Vitrine : visuel, grandes photos, type généreuse */
    html[data-theme="vitrine"]{
      --r: 14px;
    }
    html[data-theme="vitrine"] .hero{height:340px;}
    html[data-theme="vitrine"] .hero-title{font-size:32px;font-weight:900;}
    html[data-theme="vitrine"] .sec-title{font-size:22px;font-weight:900;}
    html[data-theme="vitrine"] .pcard{width:200px;}
    html[data-theme="vitrine"] .pcard-img{height:150px;}
    html[data-theme="vitrine"] .pcard-name{font-size:15px;}
    html[data-theme="vitrine"] .dish-img{width:88px;height:88px;}
    html[data-theme="vitrine"] .gph{border-radius:14px;}

    /* ─── Sécurité visuelle des textes longs ─── */
    .dish-desc, .pcard-desc, .xp-card-desc, .ct-desc, .ec-desc, .dr-formule p, .um-desc, .me-desc {
      display: -webkit-box;
      -webkit-line-clamp: 3;
      -webkit-box-orient: vertical;
      overflow: hidden;
      text-overflow: ellipsis;
      overflow-wrap: break-word;
    }

    /* ─── Badge best-seller (thèmes restaurant uniquement) ─── */
    .pcard{position:relative;}
    .pcard-badge{display:none;position:absolute;top:8px;left:8px;z-index:2;
      font-size:10px;font-weight:800;letter-spacing:.02em;padding:4px 9px;border-radius:50px;
      background:var(--brand);color:#fff;box-shadow:0 2px 8px -2px rgba(0,0,0,.4);}
    html[data-theme^="resto-"] .pcard-badge{display:inline-flex;align-items:center;}

    /* ════════════ TEMPLATES RESTAURANT ════════════ */

    /* Gourmet — crème chaleureux, serif, cartes blanches (réf Savoria) */
    html[data-theme="resto-gourmet"]{
      --bg:#FBF7F0; --card:#FFFFFF; --line:#ECE3D6;
      --font-head:'Playfair Display', Georgia, serif; --r:14px;
    }
    html[data-theme="resto-gourmet"] .hd{background:rgba(251,247,240,.96);}
    html[data-theme="resto-gourmet"] .hero-tag{letter-spacing:.14em;}
    html[data-theme="resto-gourmet"] .menu-cat-title{font-family:var(--font-head);text-transform:none;letter-spacing:0;font-size:17px;font-weight:700;color:var(--navy);}
    html[data-theme="resto-gourmet"] .pcard,
    html[data-theme="resto-gourmet"] .dish{box-shadow:0 4px 18px -8px rgba(120,80,40,.18);}
    html[data-theme="resto-gourmet"] .pcard-badge{background:var(--navy);}

    /* ════════════ TEMPLATE EXPRESS — responsive (réf burger) ════════════ */
    html[data-theme="resto-festif"]{
      --bg:#FDF7ED;
      --font-head:'Poppins', system-ui, sans-serif;
      --xred:#C81E1E; --xred-d:#a81818; --xyellow:#FACC15; --xyellow-d:#e3b80f; --xdark:#1f1410;
    }
    /* Express = page pleine largeur responsive (plus la carte 520px) */
    html[data-theme="resto-festif"] body{max-width:none;padding-bottom:0;background:var(--bg);}
    html[data-theme="resto-festif"] .xp-page{background:var(--bg);min-height:100dvh;}
    html[data-theme="resto-festif"] .xp-wrap{max-width:1120px;margin:0 auto;padding:0 22px;width:100%;}

    /* Topbar jaune */
    html[data-theme="resto-festif"] .xp-top{background:var(--xyellow);position:sticky;top:0;z-index:60;}
    html[data-theme="resto-festif"] .xp-top-in{display:flex;align-items:center;justify-content:space-between;padding:12px 22px;gap:16px;}
    html[data-theme="resto-festif"] .xp-brand{font-family:var(--font-head);font-weight:900;font-size:21px;
      color:var(--xred);letter-spacing:-.3px;line-height:1;}
    html[data-theme="resto-festif"] .xp-nav{display:flex;gap:26px;}
    html[data-theme="resto-festif"] .xp-nav a{font-weight:700;font-size:14px;color:var(--xdark);text-decoration:none;}
    html[data-theme="resto-festif"] .xp-nav a:hover{color:var(--xred);}
    html[data-theme="resto-festif"] .xp-cart{font-family:var(--font-head);font-weight:800;font-size:13px;
      background:var(--xred);color:#fff;padding:9px 18px;border-radius:50px;text-decoration:none;white-space:nowrap;}

    /* Hero rouge + séparateur triangle */
    html[data-theme="resto-festif"] .xp-hero{position:relative;background:var(--xred);color:#fff;padding:46px 0 64px;}
    html[data-theme="resto-festif"] .xp-hero::after{content:'';position:absolute;left:50%;bottom:-26px;transform:translateX(-50%);
      width:0;height:0;border-left:30px solid transparent;border-right:30px solid transparent;border-top:28px solid var(--xred);z-index:4;}
    html[data-theme="resto-festif"] .xp-hero-grid{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:30px;}
    html[data-theme="resto-festif"] .xp-hero-tag{display:inline-block;background:var(--xyellow);color:var(--xdark);
      font-weight:800;font-size:12px;letter-spacing:.08em;text-transform:uppercase;padding:6px 14px;border-radius:50px;margin-bottom:16px;}
    html[data-theme="resto-festif"] .xp-hero-title{font-family:var(--font-head);font-weight:900;font-size:52px;
      line-height:1.02;letter-spacing:-1px;margin-bottom:16px;}
    html[data-theme="resto-festif"] .xp-hero-sub{font-size:16px;line-height:1.55;color:rgba(255,255,255,.9);margin-bottom:24px;max-width:440px;}
    html[data-theme="resto-festif"] .xp-btn-yellow{display:inline-block;background:var(--xyellow);color:var(--xred);
      font-family:var(--font-head);font-weight:800;font-size:16px;padding:15px 32px;border-radius:50px;text-decoration:none;
      box-shadow:0 8px 24px rgba(250,204,21,.3);transition:transform .2s, box-shadow .2s;}
    html[data-theme="resto-festif"] .xp-btn-yellow:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(250,204,21,.4);}
    html[data-theme="resto-festif"] .xp-btn-yellow.sm{padding:10px 22px;font-size:13px;}
    html[data-theme="resto-festif"] .xp-hero-media{display:flex;justify-content:center;}
    html[data-theme="resto-festif"] .xp-hero-img{width:100%;max-width:460px;height:auto;border-radius:24px;
      box-shadow:0 24px 50px -16px rgba(0,0,0,.55);}
    html[data-theme="resto-festif"] .xp-hero-emoji{font-size:120px;}

    /* Cartes catégories qui chevauchent */
    html[data-theme="resto-festif"] .xp-cats{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:-44px;position:relative;z-index:5;}
    html[data-theme="resto-festif"] .xp-cat{border-radius:24px;padding:18px;display:flex;flex-direction:column;align-items:center;gap:10px;
      text-decoration:none;box-shadow:0 12px 28px -10px rgba(0,0,0,.12);transition:transform .18s, box-shadow .18s;}
    html[data-theme="resto-festif"] .xp-cat:hover{transform:translateY(-4px);box-shadow:0 16px 32px -10px rgba(0,0,0,.16);}
    html[data-theme="resto-festif"] .xp-cat-red{background:var(--xred);}
    html[data-theme="resto-festif"] .xp-cat-yellow{background:var(--xyellow);}
    html[data-theme="resto-festif"] .xp-cat-media{width:84px;height:84px;border-radius:50%;overflow:hidden;
      background:rgba(255,255,255,.25);display:flex;align-items:center;justify-content:center;}
    html[data-theme="resto-festif"] .xp-cat-media img{width:100%;height:100%;object-fit:cover;}
    html[data-theme="resto-festif"] .xp-cat-emoji{font-size:40px;}
    html[data-theme="resto-festif"] .xp-cat-name{font-family:var(--font-head);font-weight:800;font-size:15px;text-align:center;}
    html[data-theme="resto-festif"] .xp-cat-red .xp-cat-name{color:#fff;}
    html[data-theme="resto-festif"] .xp-cat-yellow .xp-cat-name{color:var(--xred);}

    /* Sections + titres */
    html[data-theme="resto-festif"] .xp-sec{padding:34px 22px 6px;}
    html[data-theme="resto-festif"] .xp-sec-title{font-family:var(--font-head);font-weight:900;font-size:30px;
      color:var(--xdark);text-align:center;margin-bottom:26px;}
    html[data-theme="resto-festif"] .xp-catname{font-family:var(--font-head);font-weight:800;font-size:14px;
      text-transform:uppercase;letter-spacing:.06em;color:var(--xred);margin:20px 0 14px;}

    /* Grille produits */
    html[data-theme="resto-festif"] .xp-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;}
    html[data-theme="resto-festif"] .xp-card{position:relative;background:#fff;border-radius:24px;overflow:hidden;
      box-shadow:0 10px 30px -12px rgba(0,0,0,.1);display:flex;flex-direction:column;transition:transform .2s;}
    html[data-theme="resto-festif"] .xp-card:hover{transform:translateY(-2px);}
    html[data-theme="resto-festif"] .xp-badge{position:absolute;top:12px;left:12px;z-index:2;background:var(--xred);color:#fff;
      font-weight:800;font-size:11px;padding:5px 11px;border-radius:50px;}
    html[data-theme="resto-festif"] .xp-card-img{width:100%;height:180px;object-fit:cover;display:block;}
    html[data-theme="resto-festif"] .xp-ph{display:flex;align-items:center;justify-content:center;font-size:58px;
      background:linear-gradient(145deg,#FFE08A,#FFB347);}
    html[data-theme="resto-festif"] .xp-card-b{padding:16px;display:flex;flex-direction:column;flex:1;}
    html[data-theme="resto-festif"] .xp-card-name{font-family:var(--font-head);font-weight:800;font-size:17px;color:#111;line-height:1.2;}
    html[data-theme="resto-festif"] .xp-card-desc{font-size:13px;color:#8a8079;line-height:1.4;margin-top:4px;
      display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
    html[data-theme="resto-festif"] .xp-card-foot{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;margin-top:auto;padding-top:14px;}
    html[data-theme="resto-festif"] .xp-price{font-family:var(--font-head);font-weight:900;font-size:18px;color:var(--xred);white-space:nowrap;flex-shrink:0;}
    html[data-theme="resto-festif"] .xp-card-btn{background:var(--xyellow);color:var(--xred);font-family:var(--font-head);font-weight:800;
      font-size:13px;padding:8px 16px;border-radius:50px;text-decoration:none;white-space:nowrap;flex-shrink:0;}

    /* Section promo */
    html[data-theme="resto-festif"] .xp-promo{display:grid;grid-template-columns:1.5fr 1fr;gap:20px;padding:34px 22px;align-items:stretch;}
    html[data-theme="resto-festif"] .xp-promo-l{background:#FBEAD0;border-radius:28px;padding:30px;min-width:0;}
    html[data-theme="resto-festif"] .xp-promo-title{font-family:var(--font-head);font-weight:900;font-size:26px;color:var(--xdark);margin-bottom:16px;}
    html[data-theme="resto-festif"] .xp-bullets{list-style:none;padding:0;margin:0 0 20px;}
    html[data-theme="resto-festif"] .xp-bullets li{font-size:14px;color:#5c5048;padding:7px 0 7px 26px;position:relative;}
    html[data-theme="resto-festif"] .xp-bullets li::before{content:'●';position:absolute;left:0;color:var(--xred);}
    html[data-theme="resto-festif"] .xp-btn-red{display:inline-block;background:var(--xred);color:#fff;font-family:var(--font-head);
      font-weight:800;font-size:14px;padding:12px 24px;border-radius:50px;text-decoration:none;}
    html[data-theme="resto-festif"] .xp-promo-r{background:var(--xred);border-radius:28px;padding:26px;text-align:center;min-width:0;
      display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;}
    html[data-theme="resto-festif"] .xp-promo-media{width:120px;height:120px;border-radius:50%;overflow:hidden;
      background:rgba(255,255,255,.18);display:flex;align-items:center;justify-content:center;}
    html[data-theme="resto-festif"] .xp-promo-media img{width:100%;height:100%;object-fit:cover;}
    html[data-theme="resto-festif"] .xp-promo-name{font-family:var(--font-head);font-weight:800;font-size:18px;color:#fff;}

    /* Infos / footer */
    html[data-theme="resto-festif"] .xp-info{background:#fff;border-radius:24px;padding:6px 18px;
      box-shadow:0 12px 30px -12px rgba(0,0,0,.1);max-width:600px;margin:0 auto;}
    html[data-theme="resto-festif"] .xp-info-row{display:flex;align-items:center;gap:10px;padding:15px 0;border-bottom:1px solid #f1e8da;
      font-size:15px;color:var(--xdark);text-decoration:none;}
    html[data-theme="resto-festif"] .xp-info-row:last-child{border-bottom:none;}
    html[data-theme="resto-festif"] .xp-svc{list-style:none;padding:10px 0;margin:0;}
    html[data-theme="resto-festif"] .xp-svc li{font-size:13px;color:#6b5d50;padding:4px 0;}
    html[data-theme="resto-festif"] .xp-foot{text-align:center;padding:40px 18px 30px;font-size:13px;color:#9a8b7d;}
    html[data-theme="resto-festif"] .xp-foot a{color:var(--xred);font-weight:700;text-decoration:none;}

    /* ── Responsive mobile ── */
    @media (max-width:760px){
      html[data-theme="resto-festif"] .xp-wrap{padding:0 16px;}
      html[data-theme="resto-festif"] .xp-nav{display:none;}
      html[data-theme="resto-festif"] .xp-hero{padding:30px 0 48px;}
      html[data-theme="resto-festif"] .xp-hero-grid{grid-template-columns:1fr;gap:22px;}
      html[data-theme="resto-festif"] .xp-hero-title{font-size:36px;line-height:1.15;}
      html[data-theme="resto-festif"] .xp-btn-yellow{display:inline-flex;align-items:center;justify-content:center;width:max-content;font-size:15px;padding:14px 28px;border-radius:50px;}
      html[data-theme="resto-festif"] .xp-hero-img{max-width:320px;margin:0 auto;}
      
      /* Catégories sécurisées */
      html[data-theme="resto-festif"] .xp-cats{gap:10px;margin-top:-32px;}
      html[data-theme="resto-festif"] .xp-cat{padding:10px;}
      html[data-theme="resto-festif"] .xp-cat-media{width:48px;height:48px;}
      html[data-theme="resto-festif"] .xp-cat-emoji{font-size:24px;}
      html[data-theme="resto-festif"] .xp-cat-name{font-size:11px;}
      
      html[data-theme="resto-festif"] .xp-sec{padding:22px 16px 4px;}
      html[data-theme="resto-festif"] .xp-sec-title{font-size:24px;margin-bottom:18px;}
      
      /* Refonte Grille Mobile en 1 colonne (Layout Horizontal Food-Tech) */
      html[data-theme="resto-festif"] .xp-grid{grid-template-columns:1fr;gap:14px;}
      html[data-theme="resto-festif"] .xp-card{flex-direction:row;align-items:stretch;min-height:120px;border-radius:18px;}
      html[data-theme="resto-festif"] .xp-card-img{width:110px;height:100%;flex-shrink:0;}
      html[data-theme="resto-festif"] .xp-card-b{padding:12px;flex-grow:1;display:flex;flex-direction:column;justify-content:space-between;min-width:0;}
      html[data-theme="resto-festif"] .xp-card-name{font-size:15px;margin-bottom:2px;}
      html[data-theme="resto-festif"] .xp-card-desc{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;}
      html[data-theme="resto-festif"] .xp-card-foot{margin-top:auto;padding-top:0;}
      html[data-theme="resto-festif"] .xp-price{font-size:15px;}
      html[data-theme="resto-festif"] .xp-card-btn{font-size:12px;padding:6px 12px;}
      
      /* Promo section */
      html[data-theme="resto-festif"] .xp-promo{grid-template-columns:1fr;padding:22px 16px;gap:16px;}
      html[data-theme="resto-festif"] .xp-promo-l{padding:22px;}
      html[data-theme="resto-festif"] .xp-promo-title{font-size:22px;}
      html[data-theme="resto-festif"] .xp-btn-red{display:inline-flex;align-items:center;justify-content:center;width:max-content;font-size:15px;padding:14px 28px;border-radius:50px;}
    }

    /* ════════════ TEMPLATE GOURMET — responsive premium organique ════════════ */
    html[data-theme="resto-gourmet"]{
      --gcream:#F9F6F0; --gteal:#18453B; --gterra:#D25D4B; --gterra-d:#b94c3b; --gsage:#A3B8A8; --gband:#EFE9DF;
      --font-head:'Playfair Display', Georgia, serif;
    }
    html[data-theme="resto-gourmet"] body{max-width:none;padding-bottom:0;background:var(--gcream);}
    html[data-theme="resto-gourmet"] .gm-page{background:var(--gcream);min-height:100dvh;}
    html[data-theme="resto-gourmet"] .gm-wrap{max-width:1120px;margin:0 auto;padding:0 24px;width:100%;}
    html[data-theme="resto-gourmet"] .gm-tear{position:absolute;left:0;width:100%;height:50px;display:block;z-index:2;}
    html[data-theme="resto-gourmet"] .gm-eyebrow{font-weight:700;font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--gterra);}
    html[data-theme="resto-gourmet"] .gm-eyebrow.light{color:#bcd3c6;}
    html[data-theme="resto-gourmet"] .gm-btn{display:inline-block;background:var(--gterra);color:#fff;font-family:'Inter',sans-serif;font-weight:700;font-size:14px;padding:11px 24px;border-radius:8px;text-decoration:none;transition:all .2s ease;box-shadow:0 4px 12px rgba(210,93,75,.15);}
    html[data-theme="resto-gourmet"] .gm-btn:hover{background:var(--gterra-d);transform:translateY(-2px);box-shadow:0 6px 16px rgba(210,93,75,.25);}
    html[data-theme="resto-gourmet"] .gm-btn.lg{font-size:16px;padding:15px 34px;}

    /* Hero teal */
    html[data-theme="resto-gourmet"] .gm-hero{position:relative;background:var(--gteal);color:#fff;padding:60px 0 84px;}
    html[data-theme="resto-gourmet"] .gm-hero .gm-tear{bottom:-1px;}
    html[data-theme="resto-gourmet"] .gm-hero-grid{display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:34px;}
    html[data-theme="resto-gourmet"] .gm-hero-title{font-family:var(--font-head);font-weight:900;font-size:60px;line-height:1.15;margin:14px 0 16px;}
    html[data-theme="resto-gourmet"] .gm-hero-sub{font-size:16px;line-height:1.6;color:rgba(255,255,255,.82);max-width:430px;margin-bottom:26px;}
    html[data-theme="resto-gourmet"] .gm-hero-media{display:flex;justify-content:center;}
    html[data-theme="resto-gourmet"] .gm-hero-img{width:100%;max-width:460px;border-radius:20px;box-shadow:0 26px 60px -20px rgba(0,0,0,.5);}
    html[data-theme="resto-gourmet"] .gm-hero-emoji{font-size:130px;}

    /* Features */
    html[data-theme="resto-gourmet"] .gm-feats{max-width:1000px;margin:6px auto 0;padding:14px 24px;display:flex;gap:20px;justify-content:center;flex-wrap:wrap;}
    html[data-theme="resto-gourmet"] .gm-feat{display:flex;align-items:center;gap:12px;}
    html[data-theme="resto-gourmet"] .gm-feat-ic{width:44px;height:44px;border-radius:50%;background:#E3EDE6;color:var(--gteal);display:flex;align-items:center;justify-content:center;font-size:18px;flex-shrink:0;}
    html[data-theme="resto-gourmet"] .gm-feat b{display:block;font-size:14px;color:var(--gteal);font-weight:700;}
    html[data-theme="resto-gourmet"] .gm-feat span{font-size:12.5px;color:#8a8077;}

    /* Sections + titres */
    html[data-theme="resto-gourmet"] .gm-sec{padding:44px 24px 10px;text-align:center;}
    html[data-theme="resto-gourmet"] .gm-title{font-family:var(--font-head);font-weight:800;font-size:34px;color:#26201b;margin:8px 0 30px;}

    /* Grilles de cartes */
    html[data-theme="resto-gourmet"] .gm-grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;text-align:left;}
    html[data-theme="resto-gourmet"] .gm-grid4{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;text-align:left;}
    
    html[data-theme="resto-gourmet"] .gm-card{display:flex;flex-direction:column;border-radius:12px;overflow:hidden;transition:transform .2s ease;height:100%;}
    html[data-theme="resto-gourmet"] .gm-card:hover{transform:translateY(-2px);}
    
    html[data-theme="resto-gourmet"] .gm-card-img-wrap{position:relative;width:100%;aspect-ratio:1/1;overflow:hidden;border-radius:12px;}
    html[data-theme="resto-gourmet"] .gm-card-img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s ease;}
    html[data-theme="resto-gourmet"] .gm-card:hover .gm-card-img{transform:scale(1.05);}
    html[data-theme="resto-gourmet"] .gm-ph{display:flex;align-items:center;justify-content:center;font-size:54px;background:#ECE3D6;}
    
    html[data-theme="resto-gourmet"] .gm-card-content{display:flex;flex-direction:column;flex-grow:1;padding-top:12px;}
    html[data-theme="resto-gourmet"] .gm-card-text{flex-grow:1;}
    html[data-theme="resto-gourmet"] .gm-card-name{font-family:var(--font-head);font-weight:700;font-size:18px;color:#26201b;}
    html[data-theme="resto-gourmet"] .gm-card-desc{font-size:13px;color:#8a8077;line-height:1.5;margin-top:5px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
    
    html[data-theme="resto-gourmet"] .gm-card-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:auto;padding-top:16px;}
    html[data-theme="resto-gourmet"] .gm-price{font-family:var(--font-head);font-weight:700;font-size:17px;color:var(--gteal);}
    
    html[data-theme="resto-gourmet"] .gm-grid4 .gm-card-name{font-size:15px;}
    html[data-theme="resto-gourmet"] .gm-grid4 .gm-btn{font-size:12px;padding:8px 16px;}

    /* Bannière highlight */
    html[data-theme="resto-gourmet"] .gm-highlight{background:var(--gband);border-radius:26px;display:grid;grid-template-columns:1fr 1.2fr;gap:28px;align-items:center;padding:24px;margin:30px 0;overflow:hidden;}
    html[data-theme="resto-gourmet"] .gm-hl-media img,html[data-theme="resto-gourmet"] .gm-hl-ph{width:100%;height:240px;object-fit:cover;border-radius:18px;display:block;}
    html[data-theme="resto-gourmet"] .gm-hl-ph{display:flex;align-items:center;justify-content:center;font-size:70px;background:#e2d8c8;}
    html[data-theme="resto-gourmet"] .gm-hl-title{font-family:var(--font-head);font-weight:800;font-size:30px;color:#26201b;margin:8px 0 12px;}
    html[data-theme="resto-gourmet"] .gm-hl-desc{font-size:14.5px;line-height:1.65;color:#6b6258;margin-bottom:20px;}

    /* Footer sauge */
    html[data-theme="resto-gourmet"] .gm-foot{position:relative;background:var(--gsage);margin-top:60px;padding:78px 24px 44px;text-align:center;}
    html[data-theme="resto-gourmet"] .gm-foot .gm-tear{top:-49px;}
    html[data-theme="resto-gourmet"] .gm-foot-name{font-family:var(--font-head);font-weight:800;font-size:26px;color:#1f3a30;}
    html[data-theme="resto-gourmet"] .gm-foot p{font-size:14px;color:#3c5448;margin:8px 0 16px;}
    html[data-theme="resto-gourmet"] .gm-foot-by{margin-top:20px;font-size:12.5px;}
    html[data-theme="resto-gourmet"] .gm-foot-by a{color:#1f3a30;font-weight:700;text-decoration:none;}

    /* Responsive Gourmet */
    @media (max-width:860px){
      html[data-theme="resto-gourmet"] .gm-grid4{grid-template-columns:repeat(2,1fr);}
      html[data-theme="resto-gourmet"] .gm-grid3{grid-template-columns:repeat(2,1fr);}
    }
    @media (max-width:620px){
      html[data-theme="resto-gourmet"] .gm-wrap{padding:0 16px;}
      html[data-theme="resto-gourmet"] .gm-hero{padding:30px 0 50px;}
      html[data-theme="resto-gourmet"] .gm-hero-grid{grid-template-columns:1fr;gap:24px;}
      html[data-theme="resto-gourmet"] .gm-hero-title{font-size:36px;line-height:1.15;}
      html[data-theme="resto-gourmet"] .gm-btn.lg{display:block;width:100%;text-align:center;box-sizing:border-box;font-size:15px;padding:14px 20px;}
      html[data-theme="resto-gourmet"] .gm-title{font-size:26px;}
      html[data-theme="resto-gourmet"] .gm-highlight{grid-template-columns:1fr;}
      
      /* Layout Horizontal Compact Mobile (Style UberEats) */
      html[data-theme="resto-gourmet"] .gm-grid3, html[data-theme="resto-gourmet"] .gm-grid4{grid-template-columns:1fr;gap:16px;}
      html[data-theme="resto-gourmet"] .gm-card{flex-direction:row;align-items:center;min-height:134px;background:#fff;border-radius:12px;box-shadow:0 2px 8px rgba(0,0,0,0.03);transform:none !important;}

      html[data-theme="resto-gourmet"] .gm-card-img-wrap{flex-shrink:0;width:110px;height:110px;margin-left:12px;border-radius:8px;}
      html[data-theme="resto-gourmet"] .gm-card-content{flex-grow:1;min-width:0;display:flex;flex-direction:column;justify-content:space-between;height:100%;padding:12px 16px;padding-left:14px;}

      html[data-theme="resto-gourmet"] .gm-card-name{font-size:16px;margin:0;}
      html[data-theme="resto-gourmet"] .gm-card-desc{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;margin-top:2px;}

      html[data-theme="resto-gourmet"] .gm-card-foot{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;margin-top:auto;padding-top:0;gap:8px;}
      html[data-theme="resto-gourmet"] .gm-price{font-size:15px;white-space:nowrap;flex-shrink:0;}
      html[data-theme="resto-gourmet"] .gm-btn{padding:6px 12px;font-size:13px;border-radius:8px;box-shadow:none;flex-shrink:0;}
    }

    /* ════════════ TEMPLATE AUTHENTIC — chaleureux organique, grille décalée ════════════ */
    html[data-theme="resto-prestige"]{
      --ausand:#EADAC5; --aurust:#D66027; --aurust-d:#bb5320; --aubrown:#4A3525;
      --font-head:'Playfair Display', Georgia, serif;
    }
    html[data-theme="resto-prestige"] body{max-width:none;padding-bottom:0;background:var(--ausand);}
    html[data-theme="resto-prestige"] .au-page{background:linear-gradient(180deg, rgba(214,96,39,.30) 0%, rgba(214,96,39,0) 380px), var(--ausand);min-height:100dvh;color:var(--aubrown);}
    html[data-theme="resto-prestige"] .au-wrap{max-width:1100px;margin:0 auto;padding:0 24px;width:100%;}
    html[data-theme="resto-prestige"] .au-eyebrow{font-weight:700;font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--aurust);}
    html[data-theme="resto-prestige"] .au-btn{display:inline-block;background:var(--aurust);color:#fff;font-family:'Inter',sans-serif;font-weight:700;font-size:15px;padding:13px 28px;border-radius:20px;text-decoration:none;transition:background .18s;}
    html[data-theme="resto-prestige"] .au-btn:hover{background:var(--aurust-d);}
    html[data-theme="resto-prestige"] .au-btn.sm{font-size:13px;padding:9px 20px;}

    /* Topbar minimaliste centrée */
    html[data-theme="resto-prestige"] .au-top{padding:18px 0;}
    html[data-theme="resto-prestige"] .au-top-in{display:flex;align-items:center;justify-content:center;gap:26px;}
    html[data-theme="resto-prestige"] .au-top-brand{font-family:var(--font-head);font-weight:800;font-size:18px;color:#fff;}
    html[data-theme="resto-prestige"] .au-top-link{font-weight:600;font-size:14px;color:rgba(255,255,255,.92);text-decoration:none;}
    html[data-theme="resto-prestige"] .au-top-link.active{border-bottom:2px solid #fff;padding-bottom:3px;}

    /* Hero organique + cercle de profondeur */
    html[data-theme="resto-prestige"] .au-hero{padding:24px 0 56px;}
    html[data-theme="resto-prestige"] .au-hero-grid{display:grid;grid-template-columns:1fr 1.1fr;align-items:center;gap:30px;}
    html[data-theme="resto-prestige"] .au-hero-title{font-family:var(--font-head);font-weight:900;font-size:58px;line-height:1.05;color:var(--aubrown);margin:12px 0 16px;}
    html[data-theme="resto-prestige"] .au-hero-sub{font-size:15.5px;line-height:1.65;color:#6b5847;max-width:400px;margin-bottom:24px;}
    html[data-theme="resto-prestige"] .au-hero-media{position:relative;display:flex;align-items:center;justify-content:center;min-height:380px;}
    html[data-theme="resto-prestige"] .au-hero-media::before{content:'';position:absolute;width:420px;height:420px;max-width:90%;border-radius:50%;background:rgba(74,53,37,.07);z-index:0;}
    html[data-theme="resto-prestige"] .au-hero-img{position:relative;z-index:1;width:100%;max-width:540px;border-radius:18px;box-shadow:0 30px 60px -22px rgba(74,53,37,.45);}
    html[data-theme="resto-prestige"] .au-hero-emoji{position:relative;z-index:1;font-size:150px;}

    /* Section + grille décalée (staggered) */
    html[data-theme="resto-prestige"] .au-sec{padding:30px 24px 24px;text-align:center;}
    html[data-theme="resto-prestige"] .au-title{font-family:var(--font-head);font-weight:800;font-size:34px;color:var(--aubrown);margin:8px 0 44px;}
    html[data-theme="resto-prestige"] .au-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;align-items:start;}
    html[data-theme="resto-prestige"] .au-grid .au-card:nth-child(3n+2){transform:translateY(40px);}

    /* Cartes Authentic */
    html[data-theme="resto-prestige"] .au-card{background:#fff;border-radius:16px;box-shadow:0 18px 40px -20px rgba(74,53,37,.32);padding:14px 14px 18px;text-align:center;display:flex;flex-direction:column;align-items:center;}
    html[data-theme="resto-prestige"] .au-card-img{width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:12px;display:block;}
    html[data-theme="resto-prestige"] .au-ph{display:flex;align-items:center;justify-content:center;font-size:54px;background:#f0e6d8;}
    html[data-theme="resto-prestige"] .au-stars{color:var(--aurust);font-size:14px;letter-spacing:2px;margin-top:14px;}
    html[data-theme="resto-prestige"] .au-price{font-family:var(--font-head);font-weight:900;font-size:26px;color:var(--aurust);margin-top:6px;}
    html[data-theme="resto-prestige"] .au-card-name{font-family:var(--font-head);font-weight:700;font-size:16px;color:var(--aubrown);margin-top:4px;}
    html[data-theme="resto-prestige"] .au-card-desc{font-size:12.5px;color:#9a8a78;line-height:1.45;margin-top:5px;}
    html[data-theme="resto-prestige"] .au-card .au-btn{margin-top:14px;}

    /* Footer */
    html[data-theme="resto-prestige"] .au-foot{text-align:center;padding:54px 24px 40px;}
    html[data-theme="resto-prestige"] .au-foot-name{font-family:var(--font-head);font-weight:800;font-size:24px;color:var(--aubrown);}
    html[data-theme="resto-prestige"] .au-foot p{font-size:14px;color:#6b5847;margin:8px 0 16px;}
    html[data-theme="resto-prestige"] .au-foot-by{margin-top:20px;font-size:12.5px;}
    html[data-theme="resto-prestige"] .au-foot-by a{color:var(--aurust);font-weight:700;text-decoration:none;}

    /* Responsive Authentic */
    @media (max-width:860px){
      html[data-theme="resto-prestige"] .au-grid{grid-template-columns:repeat(2,1fr);gap:18px;}
      html[data-theme="resto-prestige"] .au-grid .au-card:nth-child(3n+2){transform:none;}
    }
    @media (max-width:620px){
      /* Header épuré : nom du resto centré (liens inline masqués, CTA présent dans le hero) */
      html[data-theme="resto-prestige"] .au-top{padding:16px 0;}
      html[data-theme="resto-prestige"] .au-top-in{gap:0;}
      html[data-theme="resto-prestige"] .au-top-link{display:none;}
      html[data-theme="resto-prestige"] .au-top-brand{white-space:nowrap;font-size:20px;letter-spacing:.5px;}
      /* Hero centré pour rester cohérent avec l'esthétique centrée d'Authentic */
      html[data-theme="resto-prestige"] .au-hero-grid{grid-template-columns:1fr;gap:20px;}
      html[data-theme="resto-prestige"] .au-hero-text{text-align:center;}
      html[data-theme="resto-prestige"] .au-hero-sub{margin-left:auto;margin-right:auto;}
      html[data-theme="resto-prestige"] .au-hero-title{font-size:40px;}
      html[data-theme="resto-prestige"] .au-hero-media{min-height:300px;}
      html[data-theme="resto-prestige"] .au-hero-media::before{width:300px;height:300px;}
      html[data-theme="resto-prestige"] .au-grid{grid-template-columns:1fr;gap:16px;max-width:340px;margin:0 auto;}
      html[data-theme="resto-prestige"] .au-grid .au-card{transform:none !important;}
      html[data-theme="resto-prestige"] .au-title{font-size:26px;}
    }

    /* ════════════ TEMPLATE CHIC ÉLÉGANCE — boutique éditorial minimaliste ════════════ */
    html[data-theme="boutique-chic"]{
      --chblush:#EADCD3; --chtaupe:#D3C4BA; --chtext:#1A1A1A; --chwhite:#FFFFFF;
      --font-head:'Playfair Display', Georgia, serif;
      --font-ui:'Montserrat','Inter',sans-serif;
    }
    html[data-theme="boutique-chic"] body{max-width:none;padding-bottom:0;background:var(--chwhite);color:var(--chtext);}
    html[data-theme="boutique-chic"] .ch-page{background:var(--chwhite);min-height:100dvh;}
    html[data-theme="boutique-chic"] .ch-wrap{max-width:1180px;margin:0 auto;padding:0 26px;width:100%;}
    html[data-theme="boutique-chic"] .ch-btn{display:inline-block;background:var(--chtext);color:#fff;font-family:var(--font-ui);font-weight:600;font-size:12px;letter-spacing:.14em;padding:14px 30px;text-decoration:none;border-radius:0;}
    html[data-theme="boutique-chic"] .ch-btn:hover{opacity:.85;}

    /* Header double niveau */
    html[data-theme="boutique-chic"] .ch-topbar{background:var(--chtaupe);font-family:var(--font-ui);font-size:11px;letter-spacing:.08em;color:#5a4f47;}
    html[data-theme="boutique-chic"] .ch-topbar-in{display:flex;justify-content:space-between;align-items:center;padding:7px 26px;}
    html[data-theme="boutique-chic"] .ch-head{background:var(--chblush);}
    html[data-theme="boutique-chic"] .ch-head-in{display:flex;align-items:center;justify-content:space-between;padding:18px 26px;}
    html[data-theme="boutique-chic"] .ch-logo{font-family:var(--font-head);font-weight:800;font-size:26px;letter-spacing:.5px;}
    html[data-theme="boutique-chic"] .ch-nav{display:flex;gap:30px;}
    html[data-theme="boutique-chic"] .ch-nav a{font-family:var(--font-ui);font-weight:600;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--chtext);text-decoration:none;}
    html[data-theme="boutique-chic"] .ch-icons{font-size:15px;letter-spacing:2px;}

    /* Hero éditorial */
    html[data-theme="boutique-chic"] .ch-hero{background:var(--chblush);}
    html[data-theme="boutique-chic"] .ch-hero-grid{display:grid;grid-template-columns:1fr 1.1fr;align-items:center;gap:20px;min-height:520px;}
    html[data-theme="boutique-chic"] .ch-hero-title{font-family:var(--font-head);font-weight:900;font-size:64px;line-height:1.02;margin-bottom:18px;}
    html[data-theme="boutique-chic"] .ch-hero-sub{font-family:var(--font-ui);font-size:14px;line-height:1.7;color:#6b5f56;max-width:360px;margin-bottom:26px;}
    html[data-theme="boutique-chic"] .ch-hero-media{align-self:stretch;display:flex;}
    html[data-theme="boutique-chic"] .ch-hero-img{width:100%;height:100%;min-height:520px;object-fit:cover;border-radius:2px;}
    html[data-theme="boutique-chic"] .ch-hero-emoji{font-size:140px;margin:auto;}

    /* Sections + titres */
    html[data-theme="boutique-chic"] .ch-sec{background:var(--chwhite);padding:54px 0 30px;}
    html[data-theme="boutique-chic"] .ch-sectitle{font-family:var(--font-ui);font-weight:700;font-size:18px;letter-spacing:.22em;text-transform:uppercase;text-align:center;color:var(--chtext);margin-bottom:34px;}

    /* Grilles produits */
    html[data-theme="boutique-chic"] .ch-grid5{display:grid;grid-template-columns:repeat(5,1fr);gap:20px;}
    html[data-theme="boutique-chic"] .ch-grid6{display:grid;grid-template-columns:repeat(6,1fr);gap:18px;}
    html[data-theme="boutique-chic"] .ch-card{text-align:center;}
    html[data-theme="boutique-chic"] .ch-card-imgwrap{overflow:hidden;}
    html[data-theme="boutique-chic"] .ch-card-img{width:100%;aspect-ratio:3/4;object-fit:cover;border-radius:2px;display:block;transition:transform .45s;}
    html[data-theme="boutique-chic"] .ch-card:hover .ch-card-img{transform:scale(1.05);}
    html[data-theme="boutique-chic"] .ch-ph{display:flex;align-items:center;justify-content:center;font-size:44px;background:var(--chblush);}
    html[data-theme="boutique-chic"] .ch-card-name{font-family:var(--font-head);font-weight:600;font-size:15px;margin-top:12px;}
    html[data-theme="boutique-chic"] .ch-sep{width:30px;height:1px;background:#cbbfb5;margin:8px auto;}
    html[data-theme="boutique-chic"] .ch-price{font-family:var(--font-ui);font-size:13px;letter-spacing:.05em;color:#8a7d72;}
    html[data-theme="boutique-chic"] .ch-stars{color:#E8B84B;font-size:12px;letter-spacing:2px;margin:6px 0;}
    html[data-theme="boutique-chic"] .ch-pill{display:inline-block;margin-top:8px;font-family:var(--font-ui);font-size:10px;letter-spacing:.1em;text-transform:uppercase;background:var(--chblush);color:var(--chtext);padding:6px 14px;border-radius:50px;text-decoration:none;}

    /* Bannière promo split-screen */
    html[data-theme="boutique-chic"] .ch-promo{display:grid;grid-template-columns:1fr 1fr;min-height:320px;margin:30px 0;}
    html[data-theme="boutique-chic"] .ch-promo-l{background:var(--chtaupe);display:flex;align-items:flex-end;justify-content:center;overflow:hidden;}
    html[data-theme="boutique-chic"] .ch-promo-l img{max-height:320px;width:auto;object-fit:contain;}
    html[data-theme="boutique-chic"] .ch-promo-ph{font-size:90px;align-self:center;}
    html[data-theme="boutique-chic"] .ch-promo-r{background:var(--chblush);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:40px;}
    html[data-theme="boutique-chic"] .ch-promo-eyebrow{font-family:var(--font-ui);font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:#8a7d72;margin-bottom:10px;}
    html[data-theme="boutique-chic"] .ch-promo-title{font-family:var(--font-head);font-weight:800;font-size:34px;margin-bottom:22px;}
    html[data-theme="boutique-chic"] .ch-btn-white{background:#fff;color:var(--chtext);font-family:var(--font-ui);font-weight:600;font-size:12px;letter-spacing:.14em;padding:14px 30px;text-decoration:none;}

    /* Footer */
    html[data-theme="boutique-chic"] .ch-foot{background:var(--chblush);text-align:center;padding:50px 26px 40px;}
    html[data-theme="boutique-chic"] .ch-foot-logo{font-family:var(--font-head);font-weight:800;font-size:26px;}
    html[data-theme="boutique-chic"] .ch-foot p{font-family:var(--font-ui);font-size:13px;color:#6b5f56;margin:10px 0 18px;}
    html[data-theme="boutique-chic"] .ch-foot-by{margin-top:20px;font-size:12px;}
    html[data-theme="boutique-chic"] .ch-foot-by a{color:var(--chtext);font-weight:700;text-decoration:none;}

    /* Responsive Chic */
    @media (max-width:900px){
      html[data-theme="boutique-chic"] .ch-grid5{grid-template-columns:repeat(3,1fr);}
      html[data-theme="boutique-chic"] .ch-grid6{grid-template-columns:repeat(3,1fr);}
    }
    @media (max-width:620px){
      html[data-theme="boutique-chic"] .ch-nav,html[data-theme="boutique-chic"] .ch-icons{display:none;}
      html[data-theme="boutique-chic"] .ch-head-in{justify-content:center;}
      html[data-theme="boutique-chic"] .ch-hero-grid{grid-template-columns:1fr;min-height:0;}
      html[data-theme="boutique-chic"] .ch-hero-title{font-size:42px;}
      html[data-theme="boutique-chic"] .ch-hero-img{min-height:340px;height:340px;}
      html[data-theme="boutique-chic"] .ch-grid5,html[data-theme="boutique-chic"] .ch-grid6{grid-template-columns:repeat(2,1fr);gap:14px;}
      html[data-theme="boutique-chic"] .ch-promo{grid-template-columns:1fr;}
      html[data-theme="boutique-chic"] .ch-sectitle{font-size:15px;letter-spacing:.16em;}
    }

    /* ════════════ TEMPLATE VIBRANT POP — boutique énergique corail ════════════ */
    html[data-theme="boutique-pop"]{
      --pcoral:#FE4A55; --pcoral-d:#E53E49; --ptext:#333333;
      --font-head:'Poppins', system-ui, sans-serif;
    }
    html[data-theme="boutique-pop"] body{max-width:none;padding-bottom:0;background:#fff;color:var(--ptext);font-family:'Poppins',sans-serif;}
    html[data-theme="boutique-pop"] .pop-page{background:#fff;min-height:100dvh;}
    html[data-theme="boutique-pop"] .pop-wrap{max-width:1160px;margin:0 auto;padding:0 26px;width:100%;}
    html[data-theme="boutique-pop"] .pop-btn{display:inline-block;background:#fff;color:var(--pcoral);font-family:'Poppins';font-weight:700;font-size:14px;padding:13px 30px;border-radius:50px;text-decoration:none;}

    /* Hero blob corail */
    html[data-theme="boutique-pop"] .pop-hero{background:var(--pcoral);color:#fff;border-radius:0 0 40px 40px;padding-bottom:50px;}
    html[data-theme="boutique-pop"] .pop-head{display:flex;align-items:center;justify-content:space-between;padding:20px 26px;}
    html[data-theme="boutique-pop"] .pop-logo{font-weight:800;font-size:22px;}
    html[data-theme="boutique-pop"] .pop-nav{display:flex;gap:28px;}
    html[data-theme="boutique-pop"] .pop-nav a{color:rgba(255,255,255,.92);font-weight:600;font-size:14px;text-decoration:none;position:relative;}
    html[data-theme="boutique-pop"] .pop-nav a.active::after{content:'';position:absolute;left:50%;transform:translateX(-50%);bottom:-7px;width:6px;height:6px;border-radius:50%;background:#fff;}
    html[data-theme="boutique-pop"] .pop-icons{font-size:17px;}
    html[data-theme="boutique-pop"] .pop-hero-grid{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:24px;padding-top:18px;}
    html[data-theme="boutique-pop"] .pop-hero-tag{font-weight:600;font-size:13px;opacity:.9;margin-bottom:12px;}
    html[data-theme="boutique-pop"] .pop-hero-title{font-weight:800;font-size:54px;line-height:1.05;margin-bottom:14px;}
    html[data-theme="boutique-pop"] .pop-hero-sub{font-size:15px;line-height:1.6;color:rgba(255,255,255,.9);max-width:380px;margin-bottom:22px;}
    html[data-theme="boutique-pop"] .pop-hero-btns{display:flex;gap:12px;margin-bottom:26px;}
    html[data-theme="boutique-pop"] .pop-happy{display:flex;align-items:center;gap:12px;}
    html[data-theme="boutique-pop"] .pop-avatars{display:flex;}
    html[data-theme="boutique-pop"] .pop-avatars span{width:40px;height:40px;border-radius:50%;background:#fff;display:flex;align-items:center;justify-content:center;font-size:18px;border:2px solid var(--pcoral);margin-left:-10px;}
    html[data-theme="boutique-pop"] .pop-avatars span:first-child{margin-left:0;}
    html[data-theme="boutique-pop"] .pop-happy-txt b{font-size:13px;font-weight:700;}
    html[data-theme="boutique-pop"] .pop-happy-stars{font-size:12px;color:#FFD84D;}
    html[data-theme="boutique-pop"] .pop-happy-stars span{color:rgba(255,255,255,.8);}
    html[data-theme="boutique-pop"] .pop-hero-media{position:relative;display:flex;align-items:center;justify-content:center;min-height:400px;}
    html[data-theme="boutique-pop"] .pop-hero-circle{position:absolute;width:380px;height:380px;max-width:90%;border-radius:50%;background:var(--pcoral-d);z-index:0;}
    html[data-theme="boutique-pop"] .pop-hero-img{position:relative;z-index:1;width:100%;max-width:440px;border-radius:18px;}
    html[data-theme="boutique-pop"] .pop-hero-emoji{position:relative;z-index:1;font-size:140px;}

    /* Sections */
    html[data-theme="boutique-pop"] .pop-sec{padding:46px 26px 10px;}
    html[data-theme="boutique-pop"] .pop-h2{text-align:center;font-weight:800;font-size:26px;color:var(--pcoral);margin-bottom:34px;}

    /* Premium shades (pilules + pop-out) */
    html[data-theme="boutique-pop"] .pop-shades{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;}
    html[data-theme="boutique-pop"] .pop-shade{position:relative;border-radius:50px;height:120px;padding-left:24px;display:flex;align-items:center;text-decoration:none;}
    html[data-theme="boutique-pop"] .pop-shade-txt b{display:block;font-weight:800;font-size:16px;color:var(--ptext);}
    html[data-theme="boutique-pop"] .pop-shade-txt span{font-size:11px;font-weight:700;color:var(--pcoral);background:#fff;padding:4px 12px;border-radius:50px;display:inline-block;margin-top:8px;}
    html[data-theme="boutique-pop"] .pop-shade-img{position:absolute;right:6px;bottom:0;height:148px;width:auto;object-fit:contain;}
    html[data-theme="boutique-pop"] .pop-shade-emoji{position:absolute;right:18px;bottom:18px;font-size:46px;}

    /* Category row */
    html[data-theme="boutique-pop"] .pop-cats{display:flex;justify-content:center;gap:30px;flex-wrap:wrap;padding:8px 0 4px;}
    html[data-theme="boutique-pop"] .pop-cat{text-align:center;color:#999;font-size:13px;font-weight:600;cursor:pointer;}
    html[data-theme="boutique-pop"] .pop-cat-ic{width:54px;height:54px;border-radius:50%;border:1.5px solid #eee;display:flex;align-items:center;justify-content:center;font-size:22px;margin:0 auto 8px;}
    html[data-theme="boutique-pop"] .pop-cat.active{color:var(--ptext);}
    html[data-theme="boutique-pop"] .pop-cat.active span{border-bottom:2px solid var(--pcoral);padding-bottom:3px;}

    /* Grille produits — cartes corail */
    html[data-theme="boutique-pop"] .pop-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;}
    html[data-theme="boutique-pop"] .pop-card{position:relative;border-radius:24px;overflow:hidden;background:var(--pcoral);aspect-ratio:3/4;}
    html[data-theme="boutique-pop"] .pop-card-img{width:100%;height:100%;object-fit:cover;display:block;}
    html[data-theme="boutique-pop"] .pop-ph{display:flex;align-items:center;justify-content:center;font-size:54px;background:var(--pcoral);color:#fff;}
    html[data-theme="boutique-pop"] .pop-badge{position:absolute;top:12px;right:12px;z-index:2;background:#fff;color:var(--pcoral);font-weight:800;font-size:11px;padding:4px 10px;border-radius:50px;}
    html[data-theme="boutique-pop"] .pop-card-ov{position:absolute;left:0;right:0;bottom:0;padding:32px 14px 14px;background:linear-gradient(to top, rgba(0,0,0,.72), transparent);color:#fff;}
    html[data-theme="boutique-pop"] .pop-card-name{font-weight:700;font-size:14px;margin-bottom:6px;}
    html[data-theme="boutique-pop"] .pop-card-row{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;}
    html[data-theme="boutique-pop"] .pop-price{font-weight:800;font-size:15px;white-space:nowrap;flex-shrink:0;}
    html[data-theme="boutique-pop"] .pop-add{background:#fff;color:var(--pcoral);font-weight:700;font-size:10.5px;padding:6px 12px;border-radius:50px;text-decoration:none;white-space:nowrap;flex-shrink:0;}

    /* Footer */
    html[data-theme="boutique-pop"] .pop-foot{text-align:center;padding:50px 26px 40px;background:#fff;}
    html[data-theme="boutique-pop"] .pop-foot-logo{font-weight:800;font-size:24px;color:var(--pcoral);}
    html[data-theme="boutique-pop"] .pop-foot p{font-size:14px;color:#777;margin:8px 0 16px;}
    html[data-theme="boutique-pop"] .pop-foot .pop-btn{background:var(--pcoral);color:#fff;}
    html[data-theme="boutique-pop"] .pop-foot-by{margin-top:20px;font-size:12px;color:#999;}
    html[data-theme="boutique-pop"] .pop-foot-by a{color:var(--pcoral);font-weight:700;text-decoration:none;}

    /* Responsive Pop */
    @media (max-width:900px){
      html[data-theme="boutique-pop"] .pop-shades{grid-template-columns:repeat(2,1fr);}
      html[data-theme="boutique-pop"] .pop-grid{grid-template-columns:repeat(3,1fr);}
    }
    @media (max-width:620px){
      html[data-theme="boutique-pop"] .pop-nav,html[data-theme="boutique-pop"] .pop-icons{display:none;}
      html[data-theme="boutique-pop"] .pop-head{justify-content:center;}
      html[data-theme="boutique-pop"] .pop-hero-grid{grid-template-columns:1fr;}
      html[data-theme="boutique-pop"] .pop-hero-title{font-size:38px;}
      html[data-theme="boutique-pop"] .pop-hero-media{min-height:320px;}
      html[data-theme="boutique-pop"] .pop-hero-circle{width:280px;height:280px;}
      html[data-theme="boutique-pop"] .pop-grid{grid-template-columns:repeat(2,1fr);gap:12px;}
      html[data-theme="boutique-pop"] .pop-cats{gap:18px;}
    }

    /* ════════════ TEMPLATE CYBER TECH — boutique tech dark mode ════════════ */
    html[data-theme="boutique-cyber"]{
      --tdark:#111111; --tgreen:#359F36; --tgreen-d:#2c8a2d; --tlight:#F8F9FA;
      --font-head:'Inter', system-ui, sans-serif;
    }
    html[data-theme="boutique-cyber"] body{max-width:none;padding-bottom:0;background:var(--tlight);color:#111;font-family:'Inter',sans-serif;}
    html[data-theme="boutique-cyber"] .cy-page{min-height:100dvh;}
    html[data-theme="boutique-cyber"] .cy-wrap{max-width:1160px;margin:0 auto;padding:0 24px;width:100%;}
    html[data-theme="boutique-cyber"] .cy-btn{display:inline-block;background:var(--tgreen);color:#fff;font-weight:600;font-size:14px;padding:11px 24px;border-radius:6px;text-decoration:none;}
    html[data-theme="boutique-cyber"] .cy-btn:hover{background:var(--tgreen-d);}
    html[data-theme="boutique-cyber"] .cy-btn.full{display:block;width:100%;text-align:center;padding:10px;margin-top:12px;}

    /* Hero dark + radial */
    html[data-theme="boutique-cyber"] .cy-hero{background:radial-gradient(circle at 72% 45%, #2c2c2c, #111 60%);color:#fff;}
    html[data-theme="boutique-cyber"] .cy-head{display:flex;align-items:center;justify-content:space-between;padding:18px 24px;}
    html[data-theme="boutique-cyber"] .cy-logo{font-weight:800;font-size:21px;}
    html[data-theme="boutique-cyber"] .cy-nav{display:flex;gap:28px;}
    html[data-theme="boutique-cyber"] .cy-nav a{color:rgba(255,255,255,.86);font-weight:500;font-size:14px;text-decoration:none;}
    html[data-theme="boutique-cyber"] .cy-nav a:hover{color:var(--tgreen);}
    html[data-theme="boutique-cyber"] .cy-icons{font-size:16px;display:flex;align-items:center;gap:10px;}
    html[data-theme="boutique-cyber"] .cy-cart{position:relative;}
    html[data-theme="boutique-cyber"] .cy-cart i{position:absolute;top:-4px;right:-6px;width:9px;height:9px;border-radius:50%;background:var(--tgreen);}
    html[data-theme="boutique-cyber"] .cy-hero-grid{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:24px;padding:30px 24px 56px;}
    html[data-theme="boutique-cyber"] .cy-hero-title{font-weight:800;font-size:50px;line-height:1.08;margin-bottom:16px;}
    html[data-theme="boutique-cyber"] .cy-hero-sub{font-size:15px;color:rgba(255,255,255,.7);margin-bottom:24px;max-width:400px;}
    html[data-theme="boutique-cyber"] .cy-hero-media{display:flex;justify-content:center;}
    html[data-theme="boutique-cyber"] .cy-hero-img{width:100%;max-width:480px;border-radius:6px;}
    html[data-theme="boutique-cyber"] .cy-hero-emoji{font-size:130px;}

    /* Trust bar */
    html[data-theme="boutique-cyber"] .cy-trust{background:#1a1a1a;}
    html[data-theme="boutique-cyber"] .cy-trust-in{display:flex;justify-content:center;}
    html[data-theme="boutique-cyber"] .cy-trust-i{display:flex;align-items:center;gap:10px;color:#fff;font-size:13.5px;font-weight:500;padding:16px 36px;border-right:1px solid rgba(255,255,255,.12);}
    html[data-theme="boutique-cyber"] .cy-trust-i:last-child{border-right:none;}
    html[data-theme="boutique-cyber"] .cy-trust-ic{color:var(--tgreen);font-weight:800;}

    /* Featured products */
    html[data-theme="boutique-cyber"] .cy-light{background:var(--tlight);}
    html[data-theme="boutique-cyber"] .cy-sec{padding:50px 24px 40px;}
    html[data-theme="boutique-cyber"] .cy-h2{text-align:center;font-weight:700;font-size:26px;color:#111;margin-bottom:34px;}
    html[data-theme="boutique-cyber"] .cy-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;}
    html[data-theme="boutique-cyber"] .cy-card{background:#fff;border-radius:6px;box-shadow:0 6px 20px -10px rgba(0,0,0,.18);overflow:hidden;display:flex;flex-direction:column;}
    html[data-theme="boutique-cyber"] .cy-card-imgwrap{position:relative;background:#f0f1f3;}
    html[data-theme="boutique-cyber"] .cy-card-img{width:100%;aspect-ratio:1/1;object-fit:cover;display:block;}
    html[data-theme="boutique-cyber"] .cy-ph{display:flex;align-items:center;justify-content:center;font-size:50px;aspect-ratio:1/1;background:#f0f1f3;}
    html[data-theme="boutique-cyber"] .cy-badge{position:absolute;top:10px;left:10px;z-index:2;font-weight:700;font-size:11px;padding:3px 10px;border-radius:4px;color:#fff;}
    html[data-theme="boutique-cyber"] .cy-badge.new{background:var(--tgreen);}
    html[data-theme="boutique-cyber"] .cy-badge.sale{background:#E1342B;}
    html[data-theme="boutique-cyber"] .cy-card-b{padding:14px;display:flex;flex-direction:column;flex:1;}
    html[data-theme="boutique-cyber"] .cy-card-name{font-weight:600;font-size:14.5px;color:#111;}
    html[data-theme="boutique-cyber"] .cy-card-price{font-weight:700;font-size:15px;color:#111;margin-top:6px;}
    html[data-theme="boutique-cyber"] .cy-card-b .cy-btn{margin-top:auto;}

    /* Promo banner */
    html[data-theme="boutique-cyber"] .cy-promo{background:var(--tdark);background-size:cover;background-position:center;border-radius:8px;padding:46px 40px;margin:14px 0;color:#fff;}
    html[data-theme="boutique-cyber"] .cy-promo-txt h3{font-weight:800;font-size:30px;margin-bottom:10px;}
    html[data-theme="boutique-cyber"] .cy-promo-txt p{color:rgba(255,255,255,.75);font-size:14px;margin-bottom:20px;max-width:420px;}

    /* Split banners */
    html[data-theme="boutique-cyber"] .cy-split{display:grid;grid-template-columns:repeat(2,1fr);gap:24px;margin:30px 0 56px;}
    html[data-theme="boutique-cyber"] .cy-split-card{position:relative;background:#ECEEF0;border-radius:8px;padding:24px 24px 44px;text-align:center;}
    html[data-theme="boutique-cyber"] .cy-split-title{font-weight:700;font-size:18px;margin-bottom:14px;}
    html[data-theme="boutique-cyber"] .cy-split-media{height:160px;display:flex;align-items:center;justify-content:center;overflow:hidden;border-radius:6px;}
    html[data-theme="boutique-cyber"] .cy-split-media img{height:100%;width:100%;object-fit:cover;}
    html[data-theme="boutique-cyber"] .cy-split-ph{font-size:60px;}
    html[data-theme="boutique-cyber"] .cy-split-card .cy-btn{position:absolute;left:50%;bottom:0;transform:translate(-50%,50%);}

    /* Footer dark + newsletter */
    html[data-theme="boutique-cyber"] .cy-foot{background:var(--tdark);color:#fff;padding:40px 0 24px;margin-top:30px;}
    html[data-theme="boutique-cyber"] .cy-news{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:0 24px 26px;border-bottom:1px solid rgba(255,255,255,.12);flex-wrap:wrap;}
    html[data-theme="boutique-cyber"] .cy-news-l b{font-size:18px;font-weight:700;display:block;}
    html[data-theme="boutique-cyber"] .cy-news-l span{font-size:13px;color:rgba(255,255,255,.6);}
    html[data-theme="boutique-cyber"] .cy-news-r{display:flex;gap:8px;}
    html[data-theme="boutique-cyber"] .cy-news-r input{background:#fff;border:none;border-radius:6px;padding:11px 14px;font-size:13px;min-width:220px;}
    html[data-theme="boutique-cyber"] .cy-foot-bottom{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:24px;color:rgba(255,255,255,.7);font-size:13px;flex-wrap:wrap;}
    html[data-theme="boutique-cyber"] .cy-foot-logo{font-weight:800;font-size:18px;color:#fff;}
    html[data-theme="boutique-cyber"] .cy-foot-by{font-size:12px;color:rgba(255,255,255,.5);text-align:center;padding:0 24px;}
    html[data-theme="boutique-cyber"] .cy-foot-by a{color:var(--tgreen);font-weight:600;text-decoration:none;}

    /* Responsive Cyber */
    @media (max-width:900px){
      html[data-theme="boutique-cyber"] .cy-grid{grid-template-columns:repeat(2,1fr);}
    }
    @media (max-width:620px){
      html[data-theme="boutique-cyber"] .cy-nav{display:none;}
      html[data-theme="boutique-cyber"] .cy-hero-grid{grid-template-columns:1fr;padding:20px 24px 40px;}
      html[data-theme="boutique-cyber"] .cy-hero-title{font-size:34px;}
      html[data-theme="boutique-cyber"] .cy-trust-in{flex-direction:column;}
      html[data-theme="boutique-cyber"] .cy-trust-i{border-right:none;border-bottom:1px solid rgba(255,255,255,.12);width:100%;justify-content:center;padding:12px;}
      html[data-theme="boutique-cyber"] .cy-trust-i:last-child{border-bottom:none;}
      html[data-theme="boutique-cyber"] .cy-grid{grid-template-columns:repeat(2,1fr);gap:12px;}
      html[data-theme="boutique-cyber"] .cy-split{grid-template-columns:1fr;}
      html[data-theme="boutique-cyber"] .cy-news{flex-direction:column;align-items:flex-start;}
      html[data-theme="boutique-cyber"] .cy-news-r{width:100%;}
      html[data-theme="boutique-cyber"] .cy-news-r input{flex:1;min-width:0;}
    }

    /* ════════════ TEMPLATE SNEAKER PULSE — boutique sneakers premium ════════════ */
    html[data-theme="boutique-sneaker-pulse"]{
      --sp-dark:#0B0E14; --sp-dark2:#11151F; --sp-orange:#FF5A1F; --sp-orange-d:#e64a12;
      --sp-light:#F4F5F7; --sp-cyan:#22D3EE;
      --font-head:'Oswald', system-ui, sans-serif;
    }
    html[data-theme="boutique-sneaker-pulse"] body{max-width:none;padding-bottom:0;background:var(--sp-light);color:#11151F;font-family:'Inter',sans-serif;}
    html[data-theme="boutique-sneaker-pulse"] .sp-page{min-height:100dvh;}
    html[data-theme="boutique-sneaker-pulse"] .sp-wrap{max-width:1160px;margin:0 auto;padding:0 24px;width:100%;}
    html[data-theme="boutique-sneaker-pulse"] .sp-sec{padding:54px 24px;}
    /* Boutons */
    html[data-theme="boutique-sneaker-pulse"] .sp-btn{display:inline-block;background:var(--sp-orange);color:#fff;font-family:var(--font-head);font-weight:600;letter-spacing:.04em;text-transform:uppercase;font-size:14px;padding:13px 28px;border-radius:8px;text-decoration:none;transition:background .15s,transform .15s;}
    html[data-theme="boutique-sneaker-pulse"] .sp-btn:hover{background:var(--sp-orange-d);transform:translateY(-1px);}
    html[data-theme="boutique-sneaker-pulse"] .sp-btn.ghost{background:transparent;color:#fff;border:1.5px solid rgba(255,255,255,.55);}
    html[data-theme="boutique-sneaker-pulse"] .sp-btn.ghost:hover{border-color:var(--sp-orange);color:var(--sp-orange);}
    html[data-theme="boutique-sneaker-pulse"] .sp-btn-sm{display:block;width:100%;text-align:center;padding:10px;margin-top:12px;font-size:12.5px;}
    /* Hero sombre */
    html[data-theme="boutique-sneaker-pulse"] .sp-hero{background:radial-gradient(circle at 78% 38%, #1c2230, var(--sp-dark) 62%);color:#fff;}
    html[data-theme="boutique-sneaker-pulse"] .sp-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 24px;}
    html[data-theme="boutique-sneaker-pulse"] .sp-logo{font-family:var(--font-head);font-weight:700;font-size:23px;text-transform:uppercase;letter-spacing:.04em;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
    html[data-theme="boutique-sneaker-pulse"] .sp-nav{display:flex;gap:26px;}
    html[data-theme="boutique-sneaker-pulse"] .sp-nav a{color:rgba(255,255,255,.82);font-weight:500;font-size:14px;text-decoration:none;}
    html[data-theme="boutique-sneaker-pulse"] .sp-nav a:hover{color:var(--sp-orange);}
    html[data-theme="boutique-sneaker-pulse"] .sp-wa-ic{font-size:20px;text-decoration:none;flex-shrink:0;}
    html[data-theme="boutique-sneaker-pulse"] .sp-hero-grid{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:24px;padding:34px 24px 64px;}
    html[data-theme="boutique-sneaker-pulse"] .sp-hero-title{font-family:var(--font-head);font-weight:700;text-transform:uppercase;font-size:58px;line-height:1.02;letter-spacing:.01em;margin-bottom:18px;}
    html[data-theme="boutique-sneaker-pulse"] .sp-hero-sub{font-size:15px;color:rgba(255,255,255,.72);margin-bottom:26px;max-width:420px;line-height:1.55;}
    html[data-theme="boutique-sneaker-pulse"] .sp-hero-btns{display:flex;gap:12px;flex-wrap:wrap;}
    html[data-theme="boutique-sneaker-pulse"] .sp-hero-media{display:flex;justify-content:center;}
    html[data-theme="boutique-sneaker-pulse"] .sp-hero-img{width:100%;max-width:460px;border-radius:14px;filter:drop-shadow(0 24px 40px rgba(0,0,0,.45));}
    html[data-theme="boutique-sneaker-pulse"] .sp-hero-emoji{font-size:150px;}
    /* Sections claires */
    html[data-theme="boutique-sneaker-pulse"] .sp-light{background:#fff;}
    html[data-theme="boutique-sneaker-pulse"] .sp-light.alt{background:var(--sp-light);}
    html[data-theme="boutique-sneaker-pulse"] .sp-h2{font-family:var(--font-head);font-weight:700;text-transform:uppercase;font-size:30px;letter-spacing:.02em;margin-bottom:26px;}
    html[data-theme="boutique-sneaker-pulse"] .sp-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;}
    /* Cartes produit */
    html[data-theme="boutique-sneaker-pulse"] .sp-card{background:#fff;border:1px solid #e6e8ec;border-radius:14px;overflow:hidden;display:flex;flex-direction:column;transition:transform .15s,box-shadow .15s;}
    html[data-theme="boutique-sneaker-pulse"] .sp-card:hover{transform:translateY(-3px);box-shadow:0 12px 28px rgba(11,14,20,.12);}
    html[data-theme="boutique-sneaker-pulse"] .sp-card-media{aspect-ratio:1/1;background:var(--sp-light);}
    html[data-theme="boutique-sneaker-pulse"] .sp-card-img{width:100%;height:100%;object-fit:cover;display:block;}
    html[data-theme="boutique-sneaker-pulse"] .sp-ph{display:flex;align-items:center;justify-content:center;font-size:60px;}
    html[data-theme="boutique-sneaker-pulse"] .sp-card-b{padding:14px;display:flex;flex-direction:column;flex:1;}
    html[data-theme="boutique-sneaker-pulse"] .sp-card-name{font-weight:700;font-size:15px;margin-bottom:3px;}
    html[data-theme="boutique-sneaker-pulse"] .sp-card-desc{font-size:12.5px;color:#6b7280;margin-bottom:8px;}
    html[data-theme="boutique-sneaker-pulse"] .sp-card-price{font-family:var(--font-head);font-weight:600;font-size:18px;color:var(--sp-orange);margin-top:auto;}
    /* Bannière promo */
    html[data-theme="boutique-sneaker-pulse"] .sp-promo{display:flex;align-items:center;justify-content:space-between;gap:24px;background:linear-gradient(100deg,var(--sp-dark),#1c2230);color:#fff;border-radius:20px;padding:36px;margin:0 0 6px;overflow:hidden;}
    html[data-theme="boutique-sneaker-pulse"] .sp-promo-kick{display:inline-block;font-family:var(--font-head);text-transform:uppercase;letter-spacing:.14em;font-size:12px;color:var(--sp-cyan);margin-bottom:8px;}
    html[data-theme="boutique-sneaker-pulse"] .sp-promo-txt h3{font-family:var(--font-head);font-weight:700;text-transform:uppercase;font-size:30px;line-height:1.1;margin-bottom:18px;max-width:420px;}
    html[data-theme="boutique-sneaker-pulse"] .sp-promo-imgs{display:flex;gap:12px;flex-shrink:0;}
    html[data-theme="boutique-sneaker-pulse"] .sp-promo-imgs img{width:110px;height:110px;object-fit:cover;border-radius:12px;}
    /* Réassurance */
    html[data-theme="boutique-sneaker-pulse"] .sp-strip{background:var(--sp-dark2);color:#fff;}
    html[data-theme="boutique-sneaker-pulse"] .sp-adv{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;padding:34px 24px;}
    html[data-theme="boutique-sneaker-pulse"] .sp-adv-i{display:flex;flex-direction:column;align-items:flex-start;gap:4px;}
    html[data-theme="boutique-sneaker-pulse"] .sp-adv-ic{font-size:26px;margin-bottom:4px;}
    html[data-theme="boutique-sneaker-pulse"] .sp-adv-i b{font-size:15px;}
    html[data-theme="boutique-sneaker-pulse"] .sp-adv-i span{font-size:13px;color:rgba(255,255,255,.6);}
    /* CTA final */
    html[data-theme="boutique-sneaker-pulse"] .sp-cta{background:radial-gradient(circle at 50% 0%, #1c2230, var(--sp-dark) 70%);color:#fff;text-align:center;padding:64px 24px;}
    html[data-theme="boutique-sneaker-pulse"] .sp-cta h2{font-family:var(--font-head);font-weight:700;text-transform:uppercase;font-size:34px;margin-bottom:12px;}
    html[data-theme="boutique-sneaker-pulse"] .sp-cta p{font-size:15px;color:rgba(255,255,255,.72);max-width:480px;margin:0 auto 26px;line-height:1.55;}
    /* Footer */
    html[data-theme="boutique-sneaker-pulse"] .sp-foot{background:var(--sp-dark);color:rgba(255,255,255,.7);padding:28px 24px;}
    html[data-theme="boutique-sneaker-pulse"] .sp-foot-top{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:14px;}
    html[data-theme="boutique-sneaker-pulse"] .sp-foot-logo{font-family:var(--font-head);font-weight:700;text-transform:uppercase;font-size:20px;color:#fff;}
    html[data-theme="boutique-sneaker-pulse"] .sp-foot-by{font-size:12px;color:rgba(255,255,255,.5);text-align:center;}
    html[data-theme="boutique-sneaker-pulse"] .sp-foot-by a{color:var(--sp-orange);font-weight:600;text-decoration:none;}
    /* Responsive Sneaker Pulse */
    @media (max-width:980px){
      html[data-theme="boutique-sneaker-pulse"] .sp-grid{grid-template-columns:repeat(3,1fr);}
      html[data-theme="boutique-sneaker-pulse"] .sp-adv{grid-template-columns:repeat(2,1fr);}
    }
    @media (max-width:760px){
      html[data-theme="boutique-sneaker-pulse"] .sp-nav{display:none;}
      html[data-theme="boutique-sneaker-pulse"] .sp-hero-grid{grid-template-columns:1fr;padding:24px 24px 44px;}
      html[data-theme="boutique-sneaker-pulse"] .sp-hero-media{order:-1;}
      html[data-theme="boutique-sneaker-pulse"] .sp-hero-title{font-size:40px;}
      html[data-theme="boutique-sneaker-pulse"] .sp-grid{grid-template-columns:repeat(2,1fr);gap:12px;}
      html[data-theme="boutique-sneaker-pulse"] .sp-promo{flex-direction:column;align-items:flex-start;text-align:left;padding:26px;}
      html[data-theme="boutique-sneaker-pulse"] .sp-promo-imgs{width:100%;overflow-x:auto;}
      html[data-theme="boutique-sneaker-pulse"] .sp-sec{padding:40px 24px;}
    }
    @media (max-width:420px){
      html[data-theme="boutique-sneaker-pulse"] .sp-hero-title{font-size:34px;}
      html[data-theme="boutique-sneaker-pulse"] .sp-hero-btns .sp-btn{flex:1;text-align:center;}
    }

    /* ════════════ TEMPLATE SNEAKER BLOOM — concept-store sneakers lavande ════════════ */
    html[data-theme="boutique-sneaker-bloom"]{
      --sb-lav:#8B7CF6; --sb-lav2:#A78BFA; --sb-panel:#F2F1F7; --sb-magenta:#EC4899; --sb-magenta2:#D6336C;
      --sb-violet:#7C5CFC; --sb-dark:#1F2430; --sb-lime:#CBF53F; --sb-ink:#1A1A2E;
      --font-head:'Poppins', system-ui, sans-serif;
    }
    html[data-theme="boutique-sneaker-bloom"] body{max-width:none;padding-bottom:0;background:linear-gradient(160deg,var(--sb-lav),var(--sb-lav2));color:var(--sb-ink);font-family:'Inter',sans-serif;}
    html[data-theme="boutique-sneaker-bloom"] .sb-page{min-height:100dvh;padding:22px 16px 0;}
    html[data-theme="boutique-sneaker-bloom"] .sb-btn{display:inline-block;background:var(--sb-ink);color:#fff;font-family:var(--font-head);font-weight:600;font-size:14px;padding:12px 26px;border-radius:40px;text-decoration:none;transition:transform .15s,opacity .15s;}
    html[data-theme="boutique-sneaker-bloom"] .sb-btn:hover{transform:translateY(-1px);opacity:.92;}
    html[data-theme="boutique-sneaker-bloom"] .sb-btn-sm{display:block;width:100%;text-align:center;padding:9px;font-size:12.5px;margin-top:10px;background:var(--sb-violet);}
    /* Panneau central */
    html[data-theme="boutique-sneaker-bloom"] .sb-panel{max-width:1080px;margin:0 auto;background:var(--sb-panel);border-radius:30px;padding:26px 28px 22px;box-shadow:0 30px 70px rgba(40,20,90,.32);}
    html[data-theme="boutique-sneaker-bloom"] .sb-head{display:flex;align-items:center;gap:18px;margin-bottom:6px;}
    html[data-theme="boutique-sneaker-bloom"] .sb-logo{font-family:var(--font-head);font-weight:700;font-size:21px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
    html[data-theme="boutique-sneaker-bloom"] .sb-nav{display:flex;gap:24px;margin-left:18px;flex:1;}
    html[data-theme="boutique-sneaker-bloom"] .sb-nav a{color:#6b6880;font-weight:500;font-size:14px;text-decoration:none;position:relative;}
    html[data-theme="boutique-sneaker-bloom"] .sb-nav a.on{color:var(--sb-ink);font-weight:600;}
    html[data-theme="boutique-sneaker-bloom"] .sb-nav a:hover{color:var(--sb-magenta);}
    html[data-theme="boutique-sneaker-bloom"] .sb-head-ic a{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;background:#fff;border-radius:50%;font-size:18px;text-decoration:none;box-shadow:0 4px 12px rgba(40,20,90,.12);}
    html[data-theme="boutique-sneaker-bloom"] .sb-kicker{font-family:var(--font-head);font-weight:600;color:var(--sb-magenta2);font-size:14px;margin:10px 2px 16px;}
    /* Hero asymétrique */
    html[data-theme="boutique-sneaker-bloom"] .sb-hero{display:grid;grid-template-columns:1.05fr .95fr;gap:18px;}
    /* Grande carte vedette magenta */
    html[data-theme="boutique-sneaker-bloom"] .sb-feat{display:flex;flex-direction:column;background:linear-gradient(150deg,var(--sb-magenta),var(--sb-magenta2));border-radius:24px;overflow:hidden;color:#fff;}
    html[data-theme="boutique-sneaker-bloom"] .sb-feat-media{height:240px;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.10);}
    html[data-theme="boutique-sneaker-bloom"] .sb-feat-media img{width:100%;height:100%;object-fit:cover;}
    html[data-theme="boutique-sneaker-bloom"] .sb-feat-ph{font-size:90px;}
    html[data-theme="boutique-sneaker-bloom"] .sb-feat-body{padding:20px 22px 22px;display:flex;flex-direction:column;gap:10px;}
    html[data-theme="boutique-sneaker-bloom"] .sb-feat-name{font-family:var(--font-head);font-weight:700;font-size:28px;line-height:1.1;}
    html[data-theme="boutique-sneaker-bloom"] .sb-feat-desc{font-size:13.5px;color:rgba(255,255,255,.85);}
    html[data-theme="boutique-sneaker-bloom"] .sb-sizes-lbl{font-size:12px;color:rgba(255,255,255,.8);display:block;margin-bottom:6px;}
    html[data-theme="boutique-sneaker-bloom"] .sb-size-row{display:flex;gap:6px;flex-wrap:wrap;}
    html[data-theme="boutique-sneaker-bloom"] .sb-size{width:30px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:8px;background:rgba(255,255,255,.18);font-size:12px;font-weight:600;}
    html[data-theme="boutique-sneaker-bloom"] .sb-size.on{background:#fff;color:var(--sb-magenta2);}
    html[data-theme="boutique-sneaker-bloom"] .sb-feat-foot{display:flex;align-items:center;justify-content:space-between;margin-top:6px;}
    html[data-theme="boutique-sneaker-bloom"] .sb-feat-price{font-family:var(--font-head);font-weight:700;font-size:24px;}
    html[data-theme="boutique-sneaker-bloom"] .sb-add{width:46px;height:46px;border-radius:14px;background:var(--sb-lime);color:var(--sb-ink);display:flex;align-items:center;justify-content:center;font-size:26px;font-weight:700;text-decoration:none;line-height:1;}
    /* Cartes latérales */
    html[data-theme="boutique-sneaker-bloom"] .sb-side-col{display:flex;flex-direction:column;gap:18px;}
    html[data-theme="boutique-sneaker-bloom"] .sb-side{flex:1;display:flex;flex-direction:column;border-radius:22px;overflow:hidden;text-decoration:none;transition:transform .15s;}
    html[data-theme="boutique-sneaker-bloom"] .sb-side:hover{transform:translateY(-2px);}
    html[data-theme="boutique-sneaker-bloom"] .sb-side--violet{background:linear-gradient(150deg,#8E7BFB,#6D55E0);color:#fff;}
    html[data-theme="boutique-sneaker-bloom"] .sb-side--dark{background:linear-gradient(150deg,#2A3040,var(--sb-dark));color:#fff;}
    html[data-theme="boutique-sneaker-bloom"] .sb-side-media{height:118px;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.10);}
    html[data-theme="boutique-sneaker-bloom"] .sb-side-media img{width:100%;height:100%;object-fit:cover;}
    html[data-theme="boutique-sneaker-bloom"] .sb-side-ph{font-size:48px;}
    html[data-theme="boutique-sneaker-bloom"] .sb-side-b{padding:13px 15px 15px;display:flex;flex-direction:column;gap:3px;}
    html[data-theme="boutique-sneaker-bloom"] .sb-side-name{font-family:var(--font-head);font-weight:600;font-size:15px;}
    html[data-theme="boutique-sneaker-bloom"] .sb-side-desc{font-size:12px;color:rgba(255,255,255,.72);}
    html[data-theme="boutique-sneaker-bloom"] .sb-side-price{font-family:var(--font-head);font-weight:700;font-size:18px;margin-top:2px;}
    html[data-theme="boutique-sneaker-bloom"] .sb-side-link{font-size:12.5px;color:rgba(255,255,255,.9);margin-top:4px;}
    /* Barre d'onglets */
    html[data-theme="boutique-sneaker-bloom"] .sb-tabs{display:flex;align-items:center;gap:12px;background:var(--sb-dark);border-radius:18px;padding:8px;margin-top:18px;}
    html[data-theme="boutique-sneaker-bloom"] .sb-tab-row{display:flex;gap:4px;flex:1;overflow-x:auto;}
    html[data-theme="boutique-sneaker-bloom"] .sb-tab{background:none;border:none;color:rgba(255,255,255,.6);font-size:13px;font-weight:600;padding:9px 16px;border-radius:12px;cursor:pointer;white-space:nowrap;font-family:inherit;}
    html[data-theme="boutique-sneaker-bloom"] .sb-tab.on{background:rgba(255,255,255,.12);color:#fff;}
    html[data-theme="boutique-sneaker-bloom"] .sb-next{background:var(--sb-lime);color:var(--sb-ink);font-family:var(--font-head);font-weight:600;font-size:13.5px;padding:10px 20px;border-radius:12px;text-decoration:none;white-space:nowrap;flex-shrink:0;}
    /* Sections sous le panneau */
    html[data-theme="boutique-sneaker-bloom"] .sb-sec{max-width:1080px;margin:0 auto;padding:38px 28px 0;}
    html[data-theme="boutique-sneaker-bloom"] .sb-h2{font-family:var(--font-head);font-weight:700;font-size:24px;color:#fff;margin-bottom:18px;}
    html[data-theme="boutique-sneaker-bloom"] .sb-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;}
    html[data-theme="boutique-sneaker-bloom"] .sb-card{background:#fff;border-radius:18px;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 12px 30px rgba(40,20,90,.16);}
    html[data-theme="boutique-sneaker-bloom"] .sb-card-media{aspect-ratio:1/1;background:var(--sb-panel);}
    html[data-theme="boutique-sneaker-bloom"] .sb-card-media img{width:100%;height:100%;object-fit:cover;display:block;}
    html[data-theme="boutique-sneaker-bloom"] .sb-card-ph{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:54px;}
    html[data-theme="boutique-sneaker-bloom"] .sb-card-b{padding:13px 14px 15px;display:flex;flex-direction:column;flex:1;}
    html[data-theme="boutique-sneaker-bloom"] .sb-card-name{font-family:var(--font-head);font-weight:600;font-size:15px;}
    html[data-theme="boutique-sneaker-bloom"] .sb-card-desc{font-size:12px;color:#6b6880;margin:2px 0 6px;}
    html[data-theme="boutique-sneaker-bloom"] .sb-card-price{font-family:var(--font-head);font-weight:700;font-size:18px;color:var(--sb-magenta2);margin-top:auto;}
    /* Catégories */
    html[data-theme="boutique-sneaker-bloom"] .sb-cats{display:flex;gap:14px;flex-wrap:wrap;}
    html[data-theme="boutique-sneaker-bloom"] .sb-cat{display:flex;align-items:center;gap:10px;background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.25);border-radius:16px;padding:8px 16px 8px 8px;text-decoration:none;backdrop-filter:blur(4px);}
    html[data-theme="boutique-sneaker-bloom"] .sb-cat-media{width:44px;height:44px;border-radius:12px;overflow:hidden;background:rgba(255,255,255,.25);flex-shrink:0;}
    html[data-theme="boutique-sneaker-bloom"] .sb-cat-media img{width:100%;height:100%;object-fit:cover;}
    html[data-theme="boutique-sneaker-bloom"] .sb-cat-ph{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:22px;}
    html[data-theme="boutique-sneaker-bloom"] .sb-cat-name{font-family:var(--font-head);font-weight:600;font-size:14px;color:#fff;}
    /* Réassurance */
    html[data-theme="boutique-sneaker-bloom"] .sb-adv{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;}
    html[data-theme="boutique-sneaker-bloom"] .sb-adv-i{display:flex;flex-direction:column;gap:3px;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.22);border-radius:16px;padding:16px;color:#fff;}
    html[data-theme="boutique-sneaker-bloom"] .sb-adv-ic{font-size:24px;margin-bottom:4px;}
    html[data-theme="boutique-sneaker-bloom"] .sb-adv-i b{font-size:14.5px;}
    html[data-theme="boutique-sneaker-bloom"] .sb-adv-i span{font-size:12.5px;color:rgba(255,255,255,.72);}
    /* CTA final */
    html[data-theme="boutique-sneaker-bloom"] .sb-cta{max-width:1080px;margin:40px auto 0;padding:0 28px;}
    html[data-theme="boutique-sneaker-bloom"] .sb-cta-in{background:var(--sb-dark);border-radius:26px;padding:44px 28px;text-align:center;color:#fff;}
    html[data-theme="boutique-sneaker-bloom"] .sb-cta-in h2{font-family:var(--font-head);font-weight:700;font-size:28px;margin-bottom:10px;}
    html[data-theme="boutique-sneaker-bloom"] .sb-cta-in p{font-size:14px;color:rgba(255,255,255,.72);max-width:460px;margin:0 auto 22px;line-height:1.55;}
    html[data-theme="boutique-sneaker-bloom"] .sb-cta-in .sb-btn{background:var(--sb-lime);color:var(--sb-ink);}
    /* Footer */
    html[data-theme="boutique-sneaker-bloom"] .sb-foot{max-width:1080px;margin:34px auto 0;padding:24px 28px 30px;}
    html[data-theme="boutique-sneaker-bloom"] .sb-foot-top{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:12px;}
    html[data-theme="boutique-sneaker-bloom"] .sb-foot-logo{font-family:var(--font-head);font-weight:700;font-size:18px;color:#fff;}
    html[data-theme="boutique-sneaker-bloom"] .sb-foot-addr{color:rgba(255,255,255,.8);font-size:13px;}
    html[data-theme="boutique-sneaker-bloom"] .sb-foot-by{font-size:12px;color:rgba(255,255,255,.65);text-align:center;}
    html[data-theme="boutique-sneaker-bloom"] .sb-foot-by a{color:#fff;font-weight:600;text-decoration:underline;}
    /* Responsive Sneaker Bloom */
    @media (max-width:860px){
      html[data-theme="boutique-sneaker-bloom"] .sb-hero{grid-template-columns:1fr;}
      html[data-theme="boutique-sneaker-bloom"] .sb-side-col{flex-direction:row;}
      html[data-theme="boutique-sneaker-bloom"] .sb-grid{grid-template-columns:repeat(3,1fr);}
      html[data-theme="boutique-sneaker-bloom"] .sb-adv{grid-template-columns:repeat(2,1fr);}
    }
    @media (max-width:620px){
      html[data-theme="boutique-sneaker-bloom"] .sb-nav{display:none;}
      html[data-theme="boutique-sneaker-bloom"] .sb-panel{padding:18px 16px;border-radius:24px;}
      html[data-theme="boutique-sneaker-bloom"] .sb-side-col{flex-direction:column;}
      html[data-theme="boutique-sneaker-bloom"] .sb-grid{grid-template-columns:repeat(2,1fr);gap:12px;}
      html[data-theme="boutique-sneaker-bloom"] .sb-sec{padding:30px 16px 0;}
      html[data-theme="boutique-sneaker-bloom"] .sb-cta,html[data-theme="boutique-sneaker-bloom"] .sb-foot{padding-left:16px;padding-right:16px;}
      html[data-theme="boutique-sneaker-bloom"] .sb-feat-name{font-size:24px;}
    }

    /* ════════════ TEMPLATE SHOE VIBE — boutique chaussures e-commerce ════════════ */
    html[data-theme="boutique-shoe-vibe"]{
      --sv-yellow:#FACC15; --sv-yellow-d:#EAB308; --sv-ink:#111418; --sv-grey:#F4F5F6; --sv-dark:#2D3640;
      --font-head:'Inter', system-ui, sans-serif;
    }
    html[data-theme="boutique-shoe-vibe"] body{max-width:none;padding-bottom:0;background:#fff;color:var(--sv-ink);font-family:'Inter',sans-serif;}
    html[data-theme="boutique-shoe-vibe"] .sv-page{min-height:100dvh;}
    html[data-theme="boutique-shoe-vibe"] .sv-sec{max-width:1180px;margin:0 auto;padding:46px 24px 0;}
    /* Boutons */
    html[data-theme="boutique-shoe-vibe"] .sv-btn{display:inline-block;background:var(--sv-ink);color:#fff;font-weight:700;font-size:14px;padding:13px 26px;border-radius:8px;text-decoration:none;transition:transform .15s,background .15s;}
    html[data-theme="boutique-shoe-vibe"] .sv-btn:hover{transform:translateY(-1px);}
    html[data-theme="boutique-shoe-vibe"] .sv-btn.ghost{background:transparent;color:var(--sv-ink);border:1.5px solid var(--sv-ink);}
    html[data-theme="boutique-shoe-vibe"] .sv-btn.light{background:#fff;color:var(--sv-ink);}
    html[data-theme="boutique-shoe-vibe"] .sv-btn.sm{padding:9px 18px;font-size:13px;}
    /* Top bar noire */
    html[data-theme="boutique-shoe-vibe"] .sv-topbar{background:var(--sv-ink);color:rgba(255,255,255,.82);font-size:12.5px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 24px;}
    html[data-theme="boutique-shoe-vibe"] .sv-topbar a{color:#fff;text-decoration:none;font-weight:600;}
    /* Header blanc */
    html[data-theme="boutique-shoe-vibe"] .sv-head{display:flex;align-items:center;gap:18px;max-width:1180px;margin:0 auto;padding:16px 24px;}
    html[data-theme="boutique-shoe-vibe"] .sv-logo{font-weight:800;font-size:22px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
    html[data-theme="boutique-shoe-vibe"] .sv-nav{display:flex;gap:26px;margin-left:auto;}
    html[data-theme="boutique-shoe-vibe"] .sv-nav a{color:#444;font-weight:500;font-size:14px;text-decoration:none;}
    html[data-theme="boutique-shoe-vibe"] .sv-nav a:hover{color:var(--sv-yellow-d);}
    html[data-theme="boutique-shoe-vibe"] .sv-vibe-btn{background:#fff;border:1.5px solid var(--sv-ink);color:var(--sv-ink);font-weight:700;font-size:13.5px;padding:9px 20px;border-radius:40px;text-decoration:none;white-space:nowrap;flex-shrink:0;}
    html[data-theme="boutique-shoe-vibe"] .sv-vibe-btn:hover{background:var(--sv-yellow);border-color:var(--sv-yellow);}
    /* Hero */
    html[data-theme="boutique-shoe-vibe"] .sv-hero{max-width:1180px;margin:0 auto;padding:20px 24px 30px;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:20px;background:var(--sv-grey);border-radius:0 0 24px 24px;}
    html[data-theme="boutique-shoe-vibe"] .sv-hero-title{font-weight:800;font-size:54px;line-height:1.02;letter-spacing:-.01em;text-transform:uppercase;margin-bottom:16px;}
    html[data-theme="boutique-shoe-vibe"] .sv-hero-sub{font-size:15px;color:#555;margin-bottom:24px;max-width:420px;line-height:1.55;}
    html[data-theme="boutique-shoe-vibe"] .sv-hero-btns{display:flex;gap:12px;flex-wrap:wrap;}
    html[data-theme="boutique-shoe-vibe"] .sv-hero-visual{position:relative;min-height:300px;display:flex;align-items:center;justify-content:center;}
    html[data-theme="boutique-shoe-vibe"] .sv-hero-shape{position:absolute;right:6%;top:12%;width:74%;height:74%;background:var(--sv-yellow);border-radius:46% 54% 60% 40%/50% 42% 58% 50%;transform:rotate(-8deg);}
    html[data-theme="boutique-shoe-vibe"] .sv-hero-circle{position:absolute;left:8%;bottom:10%;width:54px;height:54px;border:3px solid var(--sv-yellow);border-radius:50%;}
    html[data-theme="boutique-shoe-vibe"] .sv-dot{position:absolute;width:8px;height:8px;border-radius:50%;background:var(--sv-yellow);}
    html[data-theme="boutique-shoe-vibe"] .sv-dot1{left:4%;top:18%;box-shadow:14px 0 var(--sv-yellow),28px 0 var(--sv-yellow),14px 14px var(--sv-yellow),0 14px var(--sv-yellow),28px 14px var(--sv-yellow);}
    html[data-theme="boutique-shoe-vibe"] .sv-dot2{right:10%;bottom:16%;box-shadow:14px 0 var(--sv-yellow),0 14px var(--sv-yellow),14px 14px var(--sv-yellow);}
    html[data-theme="boutique-shoe-vibe"] .sv-hero-img{position:relative;z-index:2;width:88%;max-width:440px;object-fit:contain;filter:drop-shadow(0 24px 30px rgba(0,0,0,.28));transform:rotate(-12deg);}
    html[data-theme="boutique-shoe-vibe"] .sv-hero-emoji{position:relative;z-index:2;font-size:130px;}
    /* Titres section */
    html[data-theme="boutique-shoe-vibe"] .sv-h2{font-weight:800;font-size:26px;margin-bottom:20px;}
    html[data-theme="boutique-shoe-vibe"] .sv-h2.center{text-align:center;}
    html[data-theme="boutique-shoe-vibe"] .sv-h2 u{text-decoration:none;border-bottom:4px solid var(--sv-yellow);padding-bottom:2px;}
    /* Carrousel */
    html[data-theme="boutique-shoe-vibe"] .sv-carousel{position:relative;}
    html[data-theme="boutique-shoe-vibe"] .sv-row{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:8px;scrollbar-width:none;}
    html[data-theme="boutique-shoe-vibe"] .sv-row::-webkit-scrollbar{display:none;}
    html[data-theme="boutique-shoe-vibe"] .sv-arrow{position:absolute;top:-46px;width:34px;height:34px;border:1px solid #ddd;background:#fff;border-radius:8px;font-size:18px;cursor:pointer;z-index:3;display:flex;align-items:center;justify-content:center;line-height:1;color:var(--sv-ink);}
    html[data-theme="boutique-shoe-vibe"] .sv-arrow{right:48px;}
    html[data-theme="boutique-shoe-vibe"] .sv-arrow.next{right:8px;}
    html[data-theme="boutique-shoe-vibe"] .sv-arrow:hover{background:var(--sv-yellow);border-color:var(--sv-yellow);}
    /* Carte produit */
    html[data-theme="boutique-shoe-vibe"] .sv-card{flex:0 0 220px;scroll-snap-align:start;background:#fff;}
    html[data-theme="boutique-shoe-vibe"] .sv-card-media{aspect-ratio:1/1;background:var(--sv-grey);border-radius:12px;overflow:hidden;}
    html[data-theme="boutique-shoe-vibe"] .sv-card-media img{width:100%;height:100%;object-fit:cover;display:block;}
    html[data-theme="boutique-shoe-vibe"] .sv-card-ph{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:56px;}
    html[data-theme="boutique-shoe-vibe"] .sv-card-info{padding:10px 2px 0;}
    html[data-theme="boutique-shoe-vibe"] .sv-card-name{font-weight:700;font-size:15px;}
    html[data-theme="boutique-shoe-vibe"] .sv-card-price{font-weight:700;font-size:15px;color:#555;margin:2px 0 8px;}
    html[data-theme="boutique-shoe-vibe"] .sv-card-row{display:flex;align-items:center;gap:8px;}
    html[data-theme="boutique-shoe-vibe"] .sv-buy{background:var(--sv-yellow);color:var(--sv-ink);font-weight:700;font-size:12.5px;padding:7px 16px;border-radius:6px;text-decoration:none;}
    html[data-theme="boutique-shoe-vibe"] .sv-buy:hover{background:var(--sv-yellow-d);}
    html[data-theme="boutique-shoe-vibe"] .sv-ic{font-size:15px;color:#888;}
    /* Bannière promo sombre */
    html[data-theme="boutique-shoe-vibe"] .sv-promo{display:grid;grid-template-columns:1fr 1fr;gap:20px;align-items:center;background:var(--sv-dark);color:#fff;border-radius:22px;padding:36px;overflow:hidden;}
    html[data-theme="boutique-shoe-vibe"] .sv-promo-kick{display:inline-block;font-weight:700;letter-spacing:.16em;text-transform:uppercase;font-size:12px;color:var(--sv-yellow);margin-bottom:10px;}
    html[data-theme="boutique-shoe-vibe"] .sv-promo-txt h3{font-weight:800;font-size:30px;line-height:1.1;margin-bottom:12px;text-transform:uppercase;}
    html[data-theme="boutique-shoe-vibe"] .sv-promo-txt p{font-size:14px;color:rgba(255,255,255,.72);margin-bottom:20px;max-width:380px;}
    html[data-theme="boutique-shoe-vibe"] .sv-promo-media{position:relative;display:flex;justify-content:center;}
    html[data-theme="boutique-shoe-vibe"] .sv-promo-media img{width:100%;max-width:320px;border-radius:14px;}
    html[data-theme="boutique-shoe-vibe"] .sv-promo-ph{font-size:96px;}
    html[data-theme="boutique-shoe-vibe"] .sv-promo-badge{position:absolute;top:-6px;right:6px;width:64px;height:64px;border-radius:50%;background:var(--sv-yellow);color:var(--sv-ink);font-weight:800;font-size:13px;display:flex;align-items:center;justify-content:center;z-index:2;}
    /* Blocs lifestyle */
    html[data-theme="boutique-shoe-vibe"] .sv-life-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;}
    html[data-theme="boutique-shoe-vibe"] .sv-life{position:relative;border-radius:18px;overflow:hidden;min-height:230px;background:var(--sv-dark);}
    html[data-theme="boutique-shoe-vibe"] .sv-life img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0;}
    html[data-theme="boutique-shoe-vibe"] .sv-life-ph{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:80px;}
    html[data-theme="boutique-shoe-vibe"] .sv-life-ov{position:absolute;inset:0;background:linear-gradient(180deg,transparent 40%,rgba(0,0,0,.7));display:flex;flex-direction:column;justify-content:flex-end;align-items:flex-start;gap:10px;padding:22px;}
    html[data-theme="boutique-shoe-vibe"] .sv-life-ov p{color:#fff;font-weight:700;font-size:17px;max-width:80%;}
    /* Shop by Sport */
    html[data-theme="boutique-shoe-vibe"] .sv-sports{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;}
    html[data-theme="boutique-shoe-vibe"] .sv-sport{position:relative;border-radius:16px;overflow:hidden;aspect-ratio:3/4;background:var(--sv-dark);text-decoration:none;display:block;}
    html[data-theme="boutique-shoe-vibe"] .sv-sport img{width:100%;height:100%;object-fit:cover;filter:grayscale(1) contrast(1.05);transition:filter .2s;}
    html[data-theme="boutique-shoe-vibe"] .sv-sport:hover img{filter:grayscale(0);}
    html[data-theme="boutique-shoe-vibe"] .sv-sport-ph{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:54px;}
    html[data-theme="boutique-shoe-vibe"] .sv-sport-name{position:absolute;left:14px;bottom:12px;color:#fff;font-weight:700;font-size:15px;text-shadow:0 2px 8px rgba(0,0,0,.6);}
    /* Réassurance */
    html[data-theme="boutique-shoe-vibe"] .sv-adv{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;}
    html[data-theme="boutique-shoe-vibe"] .sv-adv-i{display:flex;flex-direction:column;gap:3px;background:var(--sv-grey);border-radius:14px;padding:18px;}
    html[data-theme="boutique-shoe-vibe"] .sv-adv-ic{font-size:24px;margin-bottom:4px;}
    html[data-theme="boutique-shoe-vibe"] .sv-adv-i b{font-size:14.5px;}
    html[data-theme="boutique-shoe-vibe"] .sv-adv-i span{font-size:12.5px;color:#666;}
    /* CTA final */
    html[data-theme="boutique-shoe-vibe"] .sv-cta{max-width:1180px;margin:46px auto 0;padding:0 24px;}
    html[data-theme="boutique-shoe-vibe"] .sv-cta-in{background:var(--sv-yellow);border-radius:24px;padding:46px 28px;text-align:center;}
    html[data-theme="boutique-shoe-vibe"] .sv-cta-in h2{font-weight:800;font-size:28px;margin-bottom:10px;}
    html[data-theme="boutique-shoe-vibe"] .sv-cta-in p{font-size:14px;color:#3a3a2a;max-width:460px;margin:0 auto 22px;line-height:1.55;}
    /* Footer */
    html[data-theme="boutique-shoe-vibe"] .sv-foot{background:var(--sv-ink);color:rgba(255,255,255,.7);margin-top:40px;padding:28px 24px;}
    html[data-theme="boutique-shoe-vibe"] .sv-foot-top{max-width:1180px;margin:0 auto 12px;display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;}
    html[data-theme="boutique-shoe-vibe"] .sv-foot-logo{font-weight:800;font-size:18px;color:#fff;}
    html[data-theme="boutique-shoe-vibe"] .sv-foot-by{font-size:12px;color:rgba(255,255,255,.55);text-align:center;}
    html[data-theme="boutique-shoe-vibe"] .sv-foot-by a{color:var(--sv-yellow);font-weight:600;text-decoration:none;}
    /* Responsive Shoe Vibe */
    @media (max-width:900px){
      html[data-theme="boutique-shoe-vibe"] .sv-sports{grid-template-columns:repeat(2,1fr);}
      html[data-theme="boutique-shoe-vibe"] .sv-adv{grid-template-columns:repeat(2,1fr);}
      html[data-theme="boutique-shoe-vibe"] .sv-hero-title{font-size:42px;}
    }
    @media (max-width:680px){
      html[data-theme="boutique-shoe-vibe"] .sv-nav{display:none;}
      html[data-theme="boutique-shoe-vibe"] .sv-hero{grid-template-columns:1fr;}
      html[data-theme="boutique-shoe-vibe"] .sv-hero-visual{order:-1;min-height:240px;}
      html[data-theme="boutique-shoe-vibe"] .sv-hero-title{font-size:38px;}
      html[data-theme="boutique-shoe-vibe"] .sv-promo{grid-template-columns:1fr;text-align:left;}
      html[data-theme="boutique-shoe-vibe"] .sv-life-grid{grid-template-columns:1fr;}
      html[data-theme="boutique-shoe-vibe"] .sv-card{flex-basis:160px;}
    }

    /* ════════════ TEMPLATE FASHION SPRING — boutique mode e-commerce ════════════ */
    html[data-theme="boutique-fashion-spring"]{
      --fs-teal:#3FA9A0; --fs-teal-d:#2F8F88; --fs-ink:#1C2024; --fs-grey:#F3F4F4;
      --font-head:'Playfair Display', Georgia, serif;
    }
    html[data-theme="boutique-fashion-spring"] body{max-width:none;padding-bottom:0;background:#fff;color:var(--fs-ink);font-family:'Inter',sans-serif;}
    html[data-theme="boutique-fashion-spring"] .fs-page{min-height:100dvh;}
    html[data-theme="boutique-fashion-spring"] .fs-sec{max-width:1180px;margin:0 auto;padding:46px 24px 0;}
    /* Boutons */
    html[data-theme="boutique-fashion-spring"] .fs-btn{display:inline-block;background:var(--fs-teal);color:#fff;font-weight:600;font-size:14px;padding:13px 26px;border-radius:6px;text-decoration:none;transition:background .15s,transform .15s;}
    html[data-theme="boutique-fashion-spring"] .fs-btn:hover{background:var(--fs-teal-d);transform:translateY(-1px);}
    html[data-theme="boutique-fashion-spring"] .fs-btn.ghost{background:transparent;color:#fff;border:1.5px solid rgba(255,255,255,.7);}
    html[data-theme="boutique-fashion-spring"] .fs-btn.ghost:hover{background:rgba(255,255,255,.15);}
    html[data-theme="boutique-fashion-spring"] .fs-btn.sm{padding:10px 16px;font-size:13px;}
    /* Top bar */
    html[data-theme="boutique-fashion-spring"] .fs-topbar{background:var(--fs-ink);color:rgba(255,255,255,.78);font-size:12.5px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:7px 24px;}
    html[data-theme="boutique-fashion-spring"] .fs-topbar a{color:#fff;text-decoration:none;}
    /* Header logo centré */
    html[data-theme="boutique-fashion-spring"] .fs-head{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;max-width:1180px;margin:0 auto;padding:16px 24px;border-bottom:1px solid #eee;}
    html[data-theme="boutique-fashion-spring"] .fs-nav-l{display:flex;gap:22px;}
    html[data-theme="boutique-fashion-spring"] .fs-nav a{color:#444;font-weight:500;font-size:14px;text-decoration:none;}
    html[data-theme="boutique-fashion-spring"] .fs-nav a:hover{color:var(--fs-teal);}
    html[data-theme="boutique-fashion-spring"] .fs-logo{font-family:var(--font-head);font-weight:700;font-size:26px;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
    html[data-theme="boutique-fashion-spring"] .fs-head-r{display:flex;align-items:center;justify-content:flex-end;gap:14px;}
    html[data-theme="boutique-fashion-spring"] .fs-ic{font-size:17px;color:#555;}
    html[data-theme="boutique-fashion-spring"] .fs-shop-btn{background:var(--fs-ink);color:#fff;font-weight:600;font-size:13px;padding:9px 18px;border-radius:4px;text-decoration:none;white-space:nowrap;}
    /* Hero */
    html[data-theme="boutique-fashion-spring"] .fs-hero{background:var(--fs-teal);color:#fff;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:20px;padding:0 0 0 max(24px,calc((100vw - 1180px)/2 + 24px));overflow:hidden;position:relative;}
    html[data-theme="boutique-fashion-spring"] .fs-hero-text{padding:48px 24px 48px 0;}
    html[data-theme="boutique-fashion-spring"] .fs-hero-title{font-family:var(--font-head);font-weight:700;font-size:60px;line-height:1.04;margin-bottom:6px;}
    html[data-theme="boutique-fashion-spring"] .fs-hero-tag{font-size:18px;color:rgba(255,255,255,.85);margin-bottom:18px;}
    html[data-theme="boutique-fashion-spring"] .fs-hero-sub{font-size:14.5px;color:rgba(255,255,255,.85);margin-bottom:26px;max-width:400px;line-height:1.55;}
    html[data-theme="boutique-fashion-spring"] .fs-hero-btns{display:flex;gap:12px;flex-wrap:wrap;}
    html[data-theme="boutique-fashion-spring"] .fs-hero-media{align-self:stretch;min-height:360px;position:relative;}
    html[data-theme="boutique-fashion-spring"] .fs-hero-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
    html[data-theme="boutique-fashion-spring"] .fs-hero-emoji{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:120px;background:rgba(255,255,255,.12);}
    /* Bande avantages */
    html[data-theme="boutique-fashion-spring"] .fs-trust{max-width:1180px;margin:-1px auto 0;display:grid;grid-template-columns:repeat(3,1fr);gap:14px;padding:24px;}
    html[data-theme="boutique-fashion-spring"] .fs-trust-i{display:flex;align-items:center;gap:12px;padding:16px 22px;border-radius:8px;color:#fff;}
    html[data-theme="boutique-fashion-spring"] .fs-trust-teal{background:var(--fs-teal);}
    html[data-theme="boutique-fashion-spring"] .fs-trust-dark{background:var(--fs-ink);}
    html[data-theme="boutique-fashion-spring"] .fs-trust-ic{font-size:22px;}
    html[data-theme="boutique-fashion-spring"] .fs-trust-i b{font-size:15px;display:block;}
    html[data-theme="boutique-fashion-spring"] .fs-trust-i span{font-size:12.5px;color:rgba(255,255,255,.75);}
    /* Grille bento */
    html[data-theme="boutique-fashion-spring"] .fs-bento{display:grid;grid-template-columns:1fr 1.4fr 1fr;grid-template-rows:1fr 1fr;gap:14px;grid-template-areas:"a c d" "b c e";min-height:520px;}
    html[data-theme="boutique-fashion-spring"] .fs-bento-c{position:relative;border-radius:12px;overflow:hidden;background:var(--fs-grey);text-decoration:none;display:block;min-height:180px;}
    html[data-theme="boutique-fashion-spring"] .fs-bento-c img{width:100%;height:100%;object-fit:cover;}
    html[data-theme="boutique-fashion-spring"] .fs-bento-ph{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:64px;}
    html[data-theme="boutique-fashion-spring"] .fs-bento-ov{position:absolute;inset:0;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end;gap:5px;padding:18px;background:linear-gradient(180deg,transparent 45%,rgba(0,0,0,.6));}
    html[data-theme="boutique-fashion-spring"] .fs-bento-tag{font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#fff;background:var(--fs-teal);padding:3px 9px;border-radius:20px;}
    html[data-theme="boutique-fashion-spring"] .fs-bento-name{font-family:var(--font-head);font-weight:700;font-size:19px;color:#fff;}
    html[data-theme="boutique-fashion-spring"] .fs-bento-price{font-size:14px;font-weight:600;color:#fff;}
    html[data-theme="boutique-fashion-spring"] .fs-shop{margin-top:6px;background:#fff;color:var(--fs-ink);font-size:12px;font-weight:600;padding:6px 14px;border-radius:4px;}
    /* Carrousel */
    html[data-theme="boutique-fashion-spring"] .fs-h2{font-family:var(--font-head);font-weight:700;font-size:28px;margin-bottom:22px;}
    html[data-theme="boutique-fashion-spring"] .fs-h2.center{text-align:center;}
    html[data-theme="boutique-fashion-spring"] .fs-carousel{position:relative;}
    html[data-theme="boutique-fashion-spring"] .fs-row{display:flex;gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:8px;scrollbar-width:none;}
    html[data-theme="boutique-fashion-spring"] .fs-row::-webkit-scrollbar{display:none;}
    html[data-theme="boutique-fashion-spring"] .fs-arrow{position:absolute;top:50%;transform:translateY(-50%);width:38px;height:38px;border:1px solid #ddd;background:#fff;border-radius:50%;font-size:18px;cursor:pointer;z-index:3;display:flex;align-items:center;justify-content:center;color:var(--fs-ink);}
    html[data-theme="boutique-fashion-spring"] .fs-arrow{left:-6px;}
    html[data-theme="boutique-fashion-spring"] .fs-arrow.next{left:auto;right:-6px;}
    html[data-theme="boutique-fashion-spring"] .fs-arrow:hover{background:var(--fs-teal);color:#fff;border-color:var(--fs-teal);}
    html[data-theme="boutique-fashion-spring"] .fs-card{flex:0 0 230px;scroll-snap-align:start;text-align:center;}
    html[data-theme="boutique-fashion-spring"] .fs-card-media{aspect-ratio:1/1;background:#fff;border-radius:10px;overflow:hidden;}
    html[data-theme="boutique-fashion-spring"] .fs-card-media img{width:100%;height:100%;object-fit:contain;display:block;}
    html[data-theme="boutique-fashion-spring"] .fs-card-ph{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:54px;}
    html[data-theme="boutique-fashion-spring"] .fs-card-b{padding:12px 4px 0;}
    html[data-theme="boutique-fashion-spring"] .fs-card-cat{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--fs-teal);font-weight:600;}
    html[data-theme="boutique-fashion-spring"] .fs-card-name{font-weight:600;font-size:15px;margin:3px 0;}
    html[data-theme="boutique-fashion-spring"] .fs-card-price{font-family:var(--font-head);font-weight:700;font-size:17px;color:var(--fs-ink);margin-bottom:10px;}
    html[data-theme="boutique-fashion-spring"] .fs-buy{display:inline-block;background:var(--fs-ink);color:#fff;font-size:12.5px;font-weight:600;padding:8px 20px;border-radius:4px;text-decoration:none;}
    html[data-theme="boutique-fashion-spring"] .fs-buy:hover{background:var(--fs-teal);}
    /* Catégories */
    html[data-theme="boutique-fashion-spring"] .fs-cats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;}
    html[data-theme="boutique-fashion-spring"] .fs-cat{text-decoration:none;text-align:center;}
    html[data-theme="boutique-fashion-spring"] .fs-cat-media{aspect-ratio:1/1;border-radius:12px;overflow:hidden;background:var(--fs-grey);margin-bottom:8px;}
    html[data-theme="boutique-fashion-spring"] .fs-cat-media img{width:100%;height:100%;object-fit:cover;}
    html[data-theme="boutique-fashion-spring"] .fs-cat-ph{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:42px;}
    html[data-theme="boutique-fashion-spring"] .fs-cat-name{font-weight:600;font-size:14px;color:var(--fs-ink);}
    /* Réassurance */
    html[data-theme="boutique-fashion-spring"] .fs-adv{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;}
    html[data-theme="boutique-fashion-spring"] .fs-adv-i{display:flex;flex-direction:column;gap:3px;background:var(--fs-grey);border-radius:12px;padding:18px;}
    html[data-theme="boutique-fashion-spring"] .fs-adv-ic{font-size:24px;margin-bottom:4px;}
    html[data-theme="boutique-fashion-spring"] .fs-adv-i b{font-size:14.5px;}
    html[data-theme="boutique-fashion-spring"] .fs-adv-i span{font-size:12.5px;color:#666;}
    /* CTA final */
    html[data-theme="boutique-fashion-spring"] .fs-cta{max-width:1180px;margin:46px auto 0;padding:0 24px;}
    html[data-theme="boutique-fashion-spring"] .fs-cta-in{background:var(--fs-teal);border-radius:18px;padding:46px 28px;text-align:center;color:#fff;}
    html[data-theme="boutique-fashion-spring"] .fs-cta-in h2{font-family:var(--font-head);font-weight:700;font-size:28px;margin-bottom:10px;}
    html[data-theme="boutique-fashion-spring"] .fs-cta-in p{font-size:14px;color:rgba(255,255,255,.85);max-width:460px;margin:0 auto 22px;line-height:1.55;}
    html[data-theme="boutique-fashion-spring"] .fs-cta-in .fs-btn{background:#fff;color:var(--fs-teal);}
    /* Footer multi-colonnes */
    html[data-theme="boutique-fashion-spring"] .fs-foot{background:var(--fs-ink);color:rgba(255,255,255,.72);margin-top:46px;padding:40px 24px 26px;}
    html[data-theme="boutique-fashion-spring"] .fs-foot-cols{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:1.4fr 1fr 1fr 1.3fr;gap:26px;}
    html[data-theme="boutique-fashion-spring"] .fs-foot-col{display:flex;flex-direction:column;gap:8px;}
    html[data-theme="boutique-fashion-spring"] .fs-foot-col b{color:#fff;font-size:14px;margin-bottom:4px;}
    html[data-theme="boutique-fashion-spring"] .fs-foot-col a{color:rgba(255,255,255,.7);font-size:13px;text-decoration:none;}
    html[data-theme="boutique-fashion-spring"] .fs-foot-col a:hover{color:var(--fs-teal);}
    html[data-theme="boutique-fashion-spring"] .fs-foot-logo{font-family:var(--font-head);font-weight:700;font-size:20px;color:#fff;}
    html[data-theme="boutique-fashion-spring"] .fs-foot-news span{font-size:12.5px;color:rgba(255,255,255,.6);}
    html[data-theme="boutique-fashion-spring"] .fs-news{display:flex;gap:8px;margin-top:6px;}
    html[data-theme="boutique-fashion-spring"] .fs-news input{flex:1;min-width:0;background:#fff;border:none;border-radius:5px;padding:10px 12px;font-size:13px;}
    html[data-theme="boutique-fashion-spring"] .fs-foot-by{text-align:center;font-size:12px;color:rgba(255,255,255,.5);margin-top:24px;}
    html[data-theme="boutique-fashion-spring"] .fs-foot-by a{color:var(--fs-teal);font-weight:600;text-decoration:none;}
    /* Responsive Fashion Spring */
    @media (max-width:900px){
      html[data-theme="boutique-fashion-spring"] .fs-cats{grid-template-columns:repeat(2,1fr);}
      html[data-theme="boutique-fashion-spring"] .fs-adv{grid-template-columns:repeat(2,1fr);}
      html[data-theme="boutique-fashion-spring"] .fs-foot-cols{grid-template-columns:1fr 1fr;}
      html[data-theme="boutique-fashion-spring"] .fs-hero-title{font-size:46px;}
    }
    @media (max-width:680px){
      html[data-theme="boutique-fashion-spring"] .fs-nav-l{display:none;}
      html[data-theme="boutique-fashion-spring"] .fs-head{grid-template-columns:1fr auto;}
      html[data-theme="boutique-fashion-spring"] .fs-hero{grid-template-columns:1fr;padding-left:0;}
      html[data-theme="boutique-fashion-spring"] .fs-hero-text{padding:34px 24px;}
      html[data-theme="boutique-fashion-spring"] .fs-hero-media{order:-1;min-height:280px;}
      html[data-theme="boutique-fashion-spring"] .fs-hero-title{font-size:42px;}
      html[data-theme="boutique-fashion-spring"] .fs-trust{grid-template-columns:1fr;}
      html[data-theme="boutique-fashion-spring"] .fs-bento{grid-template-columns:1fr 1fr;grid-template-rows:auto;grid-template-areas:"c c" "a b" "d e";min-height:0;}
      html[data-theme="boutique-fashion-spring"] .fs-bento-c{min-height:160px;}
      html[data-theme="boutique-fashion-spring"] .fs-foot-cols{grid-template-columns:1fr;}
    }

    /* ════════════ TEMPLATE VINTAGE GOLD — barber sombre old-school ════════════ */
    html[data-theme="barber-vintage"]{
      --bdark:#121212; --bgold:#C59D5F; --btext:#A0A0A0;
      --font-head:'Oswald', system-ui, sans-serif;
    }
    html[data-theme="barber-vintage"] body{max-width:none;padding-bottom:0;background:var(--bdark);color:var(--btext);font-family:'Inter',sans-serif;}
    html[data-theme="barber-vintage"] .bb-page{background:var(--bdark);min-height:100dvh;}
    html[data-theme="barber-vintage"] .bb-wrap{max-width:1140px;margin:0 auto;padding:0 24px;width:100%;}
    html[data-theme="barber-vintage"] .bb-btn{display:inline-block;font-family:var(--font-head);font-weight:600;font-size:13px;letter-spacing:.14em;text-transform:uppercase;padding:13px 28px;text-decoration:none;border:1px solid;}
    html[data-theme="barber-vintage"] .bb-btn.gold{background:var(--bgold);color:#121212;border-color:var(--bgold);}
    html[data-theme="barber-vintage"] .bb-btn.out{background:transparent;color:#fff;border-color:rgba(255,255,255,.5);}
    html[data-theme="barber-vintage"] .bb-btn.out:hover{border-color:var(--bgold);color:var(--bgold);}
    html[data-theme="barber-vintage"] .bb-eyebrow{font-family:var(--font-head);font-weight:600;font-size:13px;letter-spacing:.2em;text-transform:uppercase;color:var(--bgold);}
    html[data-theme="barber-vintage"] .bb-eyebrow.center{text-align:center;}
    html[data-theme="barber-vintage"] .bb-h2{font-family:var(--font-head);font-weight:700;font-size:40px;letter-spacing:.02em;text-transform:uppercase;color:#fff;margin:10px 0 18px;}
    html[data-theme="barber-vintage"] .bb-h2.center{text-align:center;margin-bottom:40px;}

    /* Hero plein écran */
    html[data-theme="barber-vintage"] .bb-hero{min-height:100vh;background:#0c0c0c;background-size:cover;background-position:center;display:flex;flex-direction:column;}
    html[data-theme="barber-vintage"] .bb-head{display:flex;align-items:center;justify-content:space-between;padding:22px 26px;max-width:1200px;margin:0 auto;width:100%;}
    html[data-theme="barber-vintage"] .bb-logo{font-family:var(--font-head);font-weight:700;font-size:24px;letter-spacing:.1em;text-transform:uppercase;color:#fff;}
    html[data-theme="barber-vintage"] .bb-nav{display:flex;gap:30px;}
    html[data-theme="barber-vintage"] .bb-nav a{font-family:var(--font-head);font-weight:500;font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:#fff;text-decoration:none;}
    html[data-theme="barber-vintage"] .bb-nav a:hover{color:var(--bgold);}
    html[data-theme="barber-vintage"] .bb-hicons{color:#fff;font-size:18px;}
    html[data-theme="barber-vintage"] .bb-hero-center{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:40px 24px 80px;}
    html[data-theme="barber-vintage"] .bb-badge{display:flex;align-items:center;gap:12px;color:var(--bgold);font-family:var(--font-head);letter-spacing:.2em;font-size:14px;margin-bottom:18px;}
    html[data-theme="barber-vintage"] .bb-badge-sc{font-size:22px;}
    html[data-theme="barber-vintage"] .bb-hero-title{font-family:var(--font-head);font-weight:700;font-size:64px;letter-spacing:.03em;text-transform:uppercase;color:#fff;line-height:1;margin-bottom:14px;}
    html[data-theme="barber-vintage"] .bb-hero-sub{color:var(--btext);font-size:15px;max-width:460px;margin-bottom:26px;}
    html[data-theme="barber-vintage"] .bb-hero-btns{display:flex;gap:14px;}

    /* Icônes de services */
    html[data-theme="barber-vintage"] .bb-icons-sec{background:var(--bdark);padding:40px 0;}
    html[data-theme="barber-vintage"] .bb-icons{display:flex;justify-content:center;gap:26px;flex-wrap:wrap;}
    html[data-theme="barber-vintage"] .bb-ic{display:flex;flex-direction:column;align-items:center;gap:10px;text-decoration:none;color:var(--btext);}
    html[data-theme="barber-vintage"] .bb-ic-c{width:80px;height:80px;border-radius:50%;border:1px solid rgba(255,255,255,.18);display:flex;align-items:center;justify-content:center;font-size:30px;}
    html[data-theme="barber-vintage"] .bb-ic.active .bb-ic-c{background:var(--bgold);border-color:var(--bgold);}
    html[data-theme="barber-vintage"] .bb-ic-t{font-family:var(--font-head);font-size:12px;letter-spacing:.1em;text-transform:uppercase;}
    html[data-theme="barber-vintage"] .bb-ic.active .bb-ic-t{color:#fff;}

    /* About split + mosaïque */
    html[data-theme="barber-vintage"] .bb-about{background:var(--bdark);padding:60px 0;}
    html[data-theme="barber-vintage"] .bb-about-grid{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center;}
    html[data-theme="barber-vintage"] .bb-mosaic{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:5px;}
    html[data-theme="barber-vintage"] .bb-mo-cell{aspect-ratio:1;overflow:hidden;background:#1a1a1a;}
    html[data-theme="barber-vintage"] .bb-mo-cell img{width:100%;height:100%;object-fit:cover;}
    html[data-theme="barber-vintage"] .bb-play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:64px;height:64px;border-radius:50%;background:var(--bgold);color:#121212;display:flex;align-items:center;justify-content:center;font-size:20px;text-decoration:none;box-shadow:0 0 0 10px rgba(197,157,95,.18),0 0 0 22px rgba(197,157,95,.08);}
    html[data-theme="barber-vintage"] .bb-p{font-size:14px;line-height:1.8;color:var(--btext);margin-bottom:22px;}
    html[data-theme="barber-vintage"] .bb-quote{display:flex;align-items:center;gap:12px;margin-bottom:24px;}
    html[data-theme="barber-vintage"] .bb-quote-av{width:48px;height:48px;border-radius:50%;background:var(--bgold);color:#121212;display:flex;align-items:center;justify-content:center;font-family:var(--font-head);font-weight:700;font-size:20px;}
    html[data-theme="barber-vintage"] .bb-quote b{color:var(--bgold);font-size:14px;display:block;}
    html[data-theme="barber-vintage"] .bb-quote span{font-size:12px;color:var(--btext);}

    /* Cartes services outlined */
    html[data-theme="barber-vintage"] .bb-services{background:var(--bdark);padding:30px 0 70px;}
    html[data-theme="barber-vintage"] .bb-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;}
    html[data-theme="barber-vintage"] .bb-card{background:#1A1A1A;border:1px solid rgba(197,157,95,.3);padding:28px 22px;}
    html[data-theme="barber-vintage"] .bb-card-ic{font-size:34px;color:var(--bgold);margin-bottom:16px;}
    html[data-theme="barber-vintage"] .bb-card-name{font-family:var(--font-head);font-weight:600;font-size:19px;letter-spacing:.04em;text-transform:uppercase;color:#fff;margin-bottom:10px;}
    html[data-theme="barber-vintage"] .bb-card-desc{font-size:13px;line-height:1.7;color:var(--btext);margin-bottom:18px;}
    html[data-theme="barber-vintage"] .bb-readmore{font-family:var(--font-head);font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--bgold);text-decoration:none;}
    html[data-theme="barber-vintage"] .bb-all{text-align:center;margin-top:40px;}

    /* Footer */
    html[data-theme="barber-vintage"] .bb-foot{background:#0c0c0c;text-align:center;padding:50px 24px 40px;border-top:1px solid rgba(197,157,95,.2);}
    html[data-theme="barber-vintage"] .bb-foot-logo{font-family:var(--font-head);font-weight:700;font-size:24px;letter-spacing:.1em;text-transform:uppercase;color:var(--bgold);}
    html[data-theme="barber-vintage"] .bb-foot p{font-size:13px;color:var(--btext);margin:10px 0;}
    html[data-theme="barber-vintage"] .bb-foot-by a{color:var(--bgold);text-decoration:none;font-weight:600;}

    /* Responsive Vintage */
    @media (max-width:980px){
      html[data-theme="barber-vintage"] .bb-grid{grid-template-columns:repeat(2,1fr);}
      html[data-theme="barber-vintage"] .bb-about-grid{grid-template-columns:1fr;gap:30px;}
    }
    @media (max-width:620px){
      html[data-theme="barber-vintage"] .bb-nav,html[data-theme="barber-vintage"] .bb-hicons{display:none;}
      html[data-theme="barber-vintage"] .bb-head{justify-content:center;}
      html[data-theme="barber-vintage"] .bb-hero-title{font-size:42px;}
      html[data-theme="barber-vintage"] .bb-hero-btns{flex-direction:column;width:100%;max-width:280px;}
      html[data-theme="barber-vintage"] .bb-grid{grid-template-columns:1fr;}
      html[data-theme="barber-vintage"] .bb-icons{gap:16px;}
      html[data-theme="barber-vintage"] .bb-ic-c{width:64px;height:64px;font-size:24px;}
      html[data-theme="barber-vintage"] .bb-h2{font-size:30px;}
    }

    /* ════════════ TEMPLATE PURE ÉCLAT — beauté/cosmétique doux ════════════ */
    html[data-theme="barber-pure"]{
      --pblush:#E8A2A1; --pblushl:#FDF2F2; --ptext:#333333;
      --font-head:'Playfair Display', Georgia, serif; --font-ui:'Montserrat','Inter',sans-serif;
    }
    html[data-theme="barber-pure"] body{max-width:none;padding-bottom:0;background:#fff;color:var(--ptext);font-family:var(--font-ui);}
    html[data-theme="barber-pure"] .pe-page{background:#fff;min-height:100dvh;}
    html[data-theme="barber-pure"] .pe-wrap{max-width:1180px;margin:0 auto;padding:0 26px;width:100%;}
    html[data-theme="barber-pure"] .pe-btn{display:inline-block;background:var(--pblush);color:#fff;font-family:var(--font-ui);font-weight:600;font-size:13px;letter-spacing:.04em;padding:14px 30px;border-radius:50px;text-decoration:none;}
    html[data-theme="barber-pure"] .pe-btn:hover{filter:brightness(.96);}
    html[data-theme="barber-pure"] .pe-link{font-family:var(--font-ui);font-weight:600;font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--ptext);text-decoration:none;}
    html[data-theme="barber-pure"] .pe-eyebrow{font-family:var(--font-ui);font-weight:700;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--pblush);margin-bottom:14px;}
    html[data-theme="barber-pure"] .pe-h2{font-family:var(--font-head);font-weight:700;font-size:34px;color:var(--ptext);text-align:center;margin-bottom:36px;position:relative;}
    html[data-theme="barber-pure"] .pe-h2::after{content:'';display:block;width:48px;height:2px;background:var(--pblush);margin:14px auto 0;}

    /* Header double niveau */
    html[data-theme="barber-pure"] .pe-topbar{background:var(--pblushl);text-align:center;font-size:12px;color:#8a6a6a;padding:8px 12px;letter-spacing:.03em;}
    html[data-theme="barber-pure"] .pe-head{background:#fff;border-bottom:1px solid #f3eaea;}
    html[data-theme="barber-pure"] .pe-head-in{display:flex;align-items:center;justify-content:space-between;padding:18px 26px;}
    html[data-theme="barber-pure"] .pe-logo{font-family:var(--font-head);font-weight:800;font-size:26px;letter-spacing:.04em;}
    html[data-theme="barber-pure"] .pe-nav{display:flex;gap:30px;}
    html[data-theme="barber-pure"] .pe-nav a{font-family:var(--font-ui);font-weight:600;font-size:12.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--ptext);text-decoration:none;}
    html[data-theme="barber-pure"] .pe-nav a:hover{color:var(--pblush);}
    html[data-theme="barber-pure"] .pe-icons{font-size:16px;display:flex;align-items:center;gap:12px;}
    html[data-theme="barber-pure"] .pe-cart-ic{position:relative;}
    html[data-theme="barber-pure"] .pe-cart-ic i{position:absolute;top:-4px;right:-6px;width:9px;height:9px;border-radius:50%;background:var(--pblush);}

    /* Hero split */
    html[data-theme="barber-pure"] .pe-hero{background:linear-gradient(100deg,#fff 45%,var(--pblushl));}
    html[data-theme="barber-pure"] .pe-hero-grid{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:30px;padding:50px 26px 56px;}
    html[data-theme="barber-pure"] .pe-hero-title{font-family:var(--font-head);font-weight:800;font-size:56px;line-height:1.08;margin-bottom:18px;}
    html[data-theme="barber-pure"] .pe-hero-sub{font-size:15px;line-height:1.7;color:#6f6a6a;max-width:380px;margin-bottom:26px;}
    html[data-theme="barber-pure"] .pe-hero-btns{display:flex;align-items:center;gap:22px;margin-bottom:32px;}
    html[data-theme="barber-pure"] .pe-reassure{display:flex;gap:26px;flex-wrap:wrap;}
    html[data-theme="barber-pure"] .pe-re{display:flex;flex-direction:column;align-items:center;gap:6px;font-size:11px;color:#8a8080;text-align:center;max-width:78px;}
    html[data-theme="barber-pure"] .pe-re-ic{width:38px;height:38px;border-radius:50%;background:var(--pblushl);color:var(--pblush);display:flex;align-items:center;justify-content:center;font-size:16px;}
    html[data-theme="barber-pure"] .pe-hero-media{display:flex;justify-content:center;}
    html[data-theme="barber-pure"] .pe-hero-img{width:100%;max-width:460px;border-radius:16px;}
    html[data-theme="barber-pure"] .pe-hero-emoji{font-size:130px;}

    /* Trust bar */
    html[data-theme="barber-pure"] .pe-trust-sec{border-top:1px solid #f3eaea;border-bottom:1px solid #f3eaea;}
    html[data-theme="barber-pure"] .pe-trust{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;padding:24px 26px;}
    html[data-theme="barber-pure"] .pe-trust-i{display:flex;align-items:center;gap:12px;}
    html[data-theme="barber-pure"] .pe-trust-ic{width:34px;height:34px;border-radius:50%;border:1px solid var(--pblush);color:var(--pblush);display:flex;align-items:center;justify-content:center;font-size:15px;flex-shrink:0;}
    html[data-theme="barber-pure"] .pe-trust-i b{display:block;font-size:13.5px;font-weight:700;}
    html[data-theme="barber-pure"] .pe-trust-i span{font-size:12px;color:#9a9090;}

    /* Sections */
    html[data-theme="barber-pure"] .pe-sec{padding:56px 0 20px;}
    html[data-theme="barber-pure"] .pe-best{background:var(--pblushl);padding-bottom:56px;}

    /* Shop by category */
    html[data-theme="barber-pure"] .pe-cats{display:grid;grid-template-columns:repeat(5,1fr);gap:22px;}
    html[data-theme="barber-pure"] .pe-cat{text-align:center;}
    html[data-theme="barber-pure"] .pe-cat-sq{aspect-ratio:1;border-radius:12px;background:var(--pblushl);overflow:hidden;display:flex;align-items:center;justify-content:center;}
    html[data-theme="barber-pure"] .pe-cat-sq img{width:100%;height:100%;object-fit:cover;}
    html[data-theme="barber-pure"] .pe-cat-emoji{font-size:48px;}
    html[data-theme="barber-pure"] .pe-cat-name{font-family:var(--font-ui);font-weight:700;font-size:13px;letter-spacing:.08em;text-transform:uppercase;margin-top:14px;}
    html[data-theme="barber-pure"] .pe-cat-link{font-family:var(--font-ui);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--pblush);text-decoration:none;display:inline-block;margin-top:6px;}

    /* Best sellers */
    html[data-theme="barber-pure"] .pe-prods{display:grid;grid-template-columns:repeat(5,1fr);gap:20px;}
    html[data-theme="barber-pure"] .pe-prod{position:relative;background:#fff;border-radius:14px;padding:16px 16px 18px;}
    html[data-theme="barber-pure"] .pe-badge{position:absolute;top:14px;left:14px;z-index:2;background:var(--pblush);color:#fff;font-family:var(--font-ui);font-weight:700;font-size:10px;letter-spacing:.04em;padding:4px 9px;border-radius:6px;}
    html[data-theme="barber-pure"] .pe-prod-img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:10px;display:block;}
    html[data-theme="barber-pure"] .pe-ph{display:flex;align-items:center;justify-content:center;font-size:50px;background:var(--pblushl);}
    html[data-theme="barber-pure"] .pe-prod-name{font-family:var(--font-ui);font-weight:600;font-size:14px;margin-top:14px;}
    html[data-theme="barber-pure"] .pe-stars{color:#F2B33D;font-size:12px;margin-top:6px;}
    html[data-theme="barber-pure"] .pe-stars span{color:#a99e9e;}
    html[data-theme="barber-pure"] .pe-prod-foot{display:flex;align-items:center;justify-content:space-between;margin-top:10px;}
    html[data-theme="barber-pure"] .pe-price{font-family:var(--font-head);font-weight:700;font-size:18px;color:var(--ptext);}
    html[data-theme="barber-pure"] .pe-cart{width:38px;height:38px;border-radius:50%;background:var(--pblush);color:#fff;display:flex;align-items:center;justify-content:center;font-size:15px;text-decoration:none;}

    /* Footer */
    html[data-theme="barber-pure"] .pe-foot{text-align:center;padding:56px 26px 44px;background:#fff;}
    html[data-theme="barber-pure"] .pe-foot-logo{font-family:var(--font-head);font-weight:800;font-size:26px;}
    html[data-theme="barber-pure"] .pe-foot p{font-size:13px;color:#8a8080;margin:10px 0 18px;}
    html[data-theme="barber-pure"] .pe-foot-by{margin-top:20px;font-size:12px;color:#a99e9e;}
    html[data-theme="barber-pure"] .pe-foot-by a{color:var(--pblush);font-weight:700;text-decoration:none;}

    /* Responsive Pure */
    @media (max-width:900px){
      html[data-theme="barber-pure"] .pe-cats{grid-template-columns:repeat(3,1fr);}
      html[data-theme="barber-pure"] .pe-prods{grid-template-columns:repeat(3,1fr);}
      html[data-theme="barber-pure"] .pe-trust{grid-template-columns:repeat(2,1fr);}
    }
    @media (max-width:620px){
      html[data-theme="barber-pure"] .pe-nav,html[data-theme="barber-pure"] .pe-icons{display:none;}
      html[data-theme="barber-pure"] .pe-head-in{justify-content:center;}
      html[data-theme="barber-pure"] .pe-hero-grid{grid-template-columns:1fr;gap:24px;padding:30px 26px 40px;}
      html[data-theme="barber-pure"] .pe-hero-title{font-size:38px;}
      html[data-theme="barber-pure"] .pe-cats{grid-template-columns:repeat(2,1fr);gap:14px;}
      html[data-theme="barber-pure"] .pe-prods{grid-template-columns:repeat(2,1fr);gap:14px;}
      html[data-theme="barber-pure"] .pe-h2{font-size:26px;}
      html[data-theme="barber-pure"] .pe-hero-btns{flex-direction:column;align-items:flex-start;gap:14px;}
    }

    /* ════════════ TEMPLATE ORGANIC GLOW — beauté naturelle luxe ════════════ */
    html[data-theme="barber-organic"]{
      --ocream:#F4F2EC; --okhaki:#B69D74; --okhaki-d:#a08a63; --otext:#222222; --onude:#EADCD3;
      --font-head:'Playfair Display', Georgia, serif; --font-ui:'Inter',sans-serif;
    }
    html[data-theme="barber-organic"] body{max-width:none;padding-bottom:0;background:var(--ocream);color:var(--otext);font-family:var(--font-ui);}
    html[data-theme="barber-organic"] .og-page{background:var(--ocream);min-height:100dvh;}
    html[data-theme="barber-organic"] .og-wrap{max-width:1180px;margin:0 auto;padding:0 30px;width:100%;}
    html[data-theme="barber-organic"] .og-btn{display:inline-block;background:var(--okhaki);color:#fff;font-family:var(--font-ui);font-weight:600;font-size:12px;letter-spacing:.1em;padding:14px 30px;border-radius:2px;text-decoration:none;}
    html[data-theme="barber-organic"] .og-btn:hover{background:var(--okhaki-d);}
    html[data-theme="barber-organic"] .og-underline{font-family:var(--font-ui);font-weight:600;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--otext);text-decoration:none;border-bottom:1px solid var(--otext);padding-bottom:3px;}
    html[data-theme="barber-organic"] .og-h2{font-family:var(--font-head);font-weight:700;font-size:32px;color:var(--otext);text-align:center;margin-bottom:36px;letter-spacing:.02em;}
    html[data-theme="barber-organic"] .og-h2.left{text-align:left;}
    html[data-theme="barber-organic"] .og-ph{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:50px;background:var(--onude);}

    /* Header */
    html[data-theme="barber-organic"] .og-head{background:var(--ocream);border-bottom:1px solid #E0E0E0;}
    html[data-theme="barber-organic"] .og-head-in{display:flex;align-items:center;justify-content:space-between;padding:18px 30px;}
    html[data-theme="barber-organic"] .og-logo{font-family:var(--font-head);font-weight:800;font-size:24px;letter-spacing:.06em;}
    html[data-theme="barber-organic"] .og-nav{display:flex;gap:28px;}
    html[data-theme="barber-organic"] .og-nav a{font-family:var(--font-ui);font-weight:500;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--otext);text-decoration:none;}
    html[data-theme="barber-organic"] .og-nav a:hover{color:var(--okhaki);}
    html[data-theme="barber-organic"] .og-sale{color:#b5564f;}
    html[data-theme="barber-organic"] .og-icons{font-size:14px;display:flex;align-items:center;gap:12px;letter-spacing:.04em;}

    /* Hero */
    html[data-theme="barber-organic"] .og-hero{border-bottom:1px solid #E0E0E0;}
    html[data-theme="barber-organic"] .og-hero-grid{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:40px;padding:60px 30px;}
    html[data-theme="barber-organic"] .og-hero-title{font-family:var(--font-head);font-weight:800;font-size:58px;line-height:1.06;margin-bottom:18px;letter-spacing:.01em;}
    html[data-theme="barber-organic"] .og-hero-sub{font-size:14.5px;line-height:1.8;color:#6a665f;max-width:380px;margin-bottom:28px;}
    html[data-theme="barber-organic"] .og-hero-media{display:flex;justify-content:center;}
    html[data-theme="barber-organic"] .og-hero-img{width:100%;max-width:520px;border-radius:2px;}
    html[data-theme="barber-organic"] .og-hero-emoji{font-size:140px;}

    /* Catégories 3 col */
    html[data-theme="barber-organic"] .og-sec{padding:56px 0;}
    html[data-theme="barber-organic"] .og-cats{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;}
    html[data-theme="barber-organic"] .og-cat{text-align:center;}
    html[data-theme="barber-organic"] .og-cat-img{aspect-ratio:4/3;overflow:hidden;border-radius:2px;background:var(--onude);}
    html[data-theme="barber-organic"] .og-cat-img img{width:100%;height:100%;object-fit:cover;}
    html[data-theme="barber-organic"] .og-cat-name{font-family:var(--font-head);font-weight:700;font-size:20px;letter-spacing:.04em;text-transform:uppercase;margin:16px 0 8px;}
    html[data-theme="barber-organic"] .og-shop{font-family:var(--font-ui);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--otext);text-decoration:none;border-bottom:1px solid var(--otext);padding-bottom:2px;}

    /* Bestsellers 4 col — bloc plein */
    html[data-theme="barber-organic"] .og-prods{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;}
    html[data-theme="barber-organic"] .og-prod{background:transparent;}
    html[data-theme="barber-organic"] .og-prod-img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:2px;display:block;background:var(--onude);}
    html[data-theme="barber-organic"] .og-prod-r{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:14px;}
    html[data-theme="barber-organic"] .og-prod-name{font-family:var(--font-ui);font-weight:600;font-size:13.5px;}
    html[data-theme="barber-organic"] .og-rate{font-size:12px;color:var(--okhaki);white-space:nowrap;}
    html[data-theme="barber-organic"] .og-price{font-family:var(--font-ui);font-weight:700;font-size:15px;margin:6px 0 12px;}
    html[data-theme="barber-organic"] .og-bag{display:block;width:100%;text-align:center;background:var(--okhaki);color:#fff;font-family:var(--font-ui);font-weight:600;font-size:12px;letter-spacing:.08em;padding:11px;border-radius:0;text-decoration:none;}
    html[data-theme="barber-organic"] .og-bag:hover{background:var(--okhaki-d);}

    /* Trending split */
    html[data-theme="barber-organic"] .og-trend{display:grid;grid-template-columns:1fr 1fr;border-radius:2px;overflow:hidden;margin:10px 0 40px;}
    html[data-theme="barber-organic"] .og-trend-img{min-height:300px;background:var(--onude);}
    html[data-theme="barber-organic"] .og-trend-img img{width:100%;height:100%;object-fit:cover;}
    html[data-theme="barber-organic"] .og-trend-txt{background:var(--onude);display:flex;flex-direction:column;justify-content:center;padding:48px;}
    html[data-theme="barber-organic"] .og-trend-txt p{font-size:14px;line-height:1.7;color:#6a665f;margin:0 0 22px;max-width:360px;}

    /* Blog */
    html[data-theme="barber-organic"] .og-blog-sec{border-top:1px solid #E0E0E0;border-bottom:1px solid #E0E0E0;padding:56px 0;}
    html[data-theme="barber-organic"] .og-blog{display:grid;grid-template-columns:repeat(2,1fr);gap:30px;}
    html[data-theme="barber-organic"] .og-article{display:flex;gap:18px;text-decoration:none;color:var(--otext);align-items:center;}
    html[data-theme="barber-organic"] .og-article-img{width:120px;height:120px;flex-shrink:0;border-radius:2px;overflow:hidden;background:var(--onude);}
    html[data-theme="barber-organic"] .og-article-img img{width:100%;height:100%;object-fit:cover;}
    html[data-theme="barber-organic"] .og-article-txt h4{font-family:var(--font-head);font-weight:700;font-size:18px;margin-bottom:8px;}
    html[data-theme="barber-organic"] .og-article-txt p{font-size:13px;line-height:1.6;color:#6a665f;margin-bottom:10px;}
    html[data-theme="barber-organic"] .og-readmore{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--otext);border-bottom:1px solid var(--otext);padding-bottom:2px;}

    /* Footer */
    html[data-theme="barber-organic"] .og-foot{padding:50px 0 40px;}
    html[data-theme="barber-organic"] .og-foot-grid{display:grid;grid-template-columns:1fr 1fr 1.2fr;gap:30px;align-items:start;}
    html[data-theme="barber-organic"] .og-foot-h{font-family:var(--font-ui);font-weight:700;font-size:12px;letter-spacing:.12em;text-transform:uppercase;margin-bottom:16px;}
    html[data-theme="barber-organic"] .og-foot-ig{display:flex;gap:8px;}
    html[data-theme="barber-organic"] .og-ig{width:54px;height:54px;border-radius:2px;overflow:hidden;background:var(--onude);}
    html[data-theme="barber-organic"] .og-ig img{width:100%;height:100%;object-fit:cover;}
    html[data-theme="barber-organic"] .og-foot-links{display:flex;flex-direction:column;gap:10px;}
    html[data-theme="barber-organic"] .og-foot-links a{font-size:13px;color:#6a665f;text-decoration:none;}
    html[data-theme="barber-organic"] .og-news{display:flex;gap:0;max-width:320px;}
    html[data-theme="barber-organic"] .og-news input{flex:1;border:1px solid #d8d2c6;border-right:none;background:#fff;padding:12px 14px;font-size:13px;border-radius:0;}
    html[data-theme="barber-organic"] .og-news-btn{background:#222;color:#fff;width:48px;display:flex;align-items:center;justify-content:center;text-decoration:none;font-size:18px;}
    html[data-theme="barber-organic"] .og-foot-by{margin-top:18px;font-size:12px;color:#9a9388;}
    html[data-theme="barber-organic"] .og-foot-by a{color:var(--okhaki);font-weight:600;text-decoration:none;}

    /* Responsive Organic */
    @media (max-width:900px){
      html[data-theme="barber-organic"] .og-prods{grid-template-columns:repeat(2,1fr);}
    }
    @media (max-width:620px){
      html[data-theme="barber-organic"] .og-nav,html[data-theme="barber-organic"] .og-icons{display:none;}
      html[data-theme="barber-organic"] .og-head-in{justify-content:center;}
      html[data-theme="barber-organic"] .og-hero-grid{grid-template-columns:1fr;gap:24px;padding:36px 30px;}
      html[data-theme="barber-organic"] .og-hero-title{font-size:40px;}
      html[data-theme="barber-organic"] .og-cats{grid-template-columns:1fr;gap:20px;}
      html[data-theme="barber-organic"] .og-prods{grid-template-columns:repeat(2,1fr);gap:16px;}
      html[data-theme="barber-organic"] .og-trend{grid-template-columns:1fr;}
      html[data-theme="barber-organic"] .og-blog{grid-template-columns:1fr;}
      html[data-theme="barber-organic"] .og-foot-grid{grid-template-columns:1fr;gap:26px;}
      html[data-theme="barber-organic"] .og-h2{font-size:26px;}
    }

    /* ════════════ TEMPLATE MODERN ROSE — beauté DNVB minimaliste ════════════ */
    html[data-theme="barber-modern"]{
      --mrose:#FCDEDC; --mcream:#FDFCF8; --mblack:#111111;
      --font-head:'Poppins', system-ui, sans-serif;
    }
    html[data-theme="barber-modern"] body{max-width:none;padding-bottom:0;background:var(--mcream);color:var(--mblack);font-family:'Poppins',sans-serif;}
    html[data-theme="barber-modern"] .mr-page{background:var(--mcream);min-height:100dvh;}
    html[data-theme="barber-modern"] .mr-wrap{max-width:1200px;margin:0 auto;padding:0 32px;width:100%;}

    /* Topbar + header */
    html[data-theme="barber-modern"] .mr-topbar{background:var(--mrose);text-align:center;font-size:12px;font-weight:500;color:#6b4f4d;padding:7px 12px;}
    html[data-theme="barber-modern"] .mr-head{background:var(--mrose);}
    html[data-theme="barber-modern"] .mr-head-in{display:flex;align-items:center;justify-content:space-between;padding:18px 32px;}
    html[data-theme="barber-modern"] .mr-logo{font-weight:800;font-size:22px;letter-spacing:-.01em;}
    html[data-theme="barber-modern"] .mr-nav{display:flex;gap:30px;}
    html[data-theme="barber-modern"] .mr-nav a{font-weight:500;font-size:14px;color:var(--mblack);text-decoration:none;}
    html[data-theme="barber-modern"] .mr-nav a:hover{opacity:.6;}
    html[data-theme="barber-modern"] .mr-actions{display:flex;align-items:center;gap:18px;}
    html[data-theme="barber-modern"] .mr-icons{font-size:16px;}
    html[data-theme="barber-modern"] .mr-btn-blk{background:var(--mblack);color:#fff;font-weight:600;font-size:13px;padding:11px 22px;border-radius:4px;text-decoration:none;}

    /* Hero rose pleine largeur */
    html[data-theme="barber-modern"] .mr-hero{display:grid;grid-template-columns:1fr 1fr;background:var(--mrose);align-items:stretch;}
    html[data-theme="barber-modern"] .mr-hero-text{display:flex;align-items:center;padding:60px 40px 60px max(40px,calc((100vw - 1200px)/2 + 32px));}
    html[data-theme="barber-modern"] .mr-hero-inner{max-width:480px;}
    html[data-theme="barber-modern"] .mr-hero-title{font-weight:700;font-size:54px;line-height:1.05;letter-spacing:-.02em;margin-bottom:22px;}
    html[data-theme="barber-modern"] .mr-hero-sub{font-size:15px;line-height:1.7;color:#5c4a48;margin-bottom:28px;max-width:360px;}
    html[data-theme="barber-modern"] .mr-btn-out{display:inline-block;background:transparent;color:var(--mblack);border:1px solid var(--mblack);font-weight:600;font-size:14px;padding:13px 32px;border-radius:50px;text-decoration:none;}
    html[data-theme="barber-modern"] .mr-btn-out:hover{background:var(--mblack);color:#fff;}
    html[data-theme="barber-modern"] .mr-hero-media{min-height:480px;}
    html[data-theme="barber-modern"] .mr-hero-img{width:100%;height:100%;object-fit:cover;display:block;}
    html[data-theme="barber-modern"] .mr-hero-emoji{height:100%;display:flex;align-items:center;justify-content:center;font-size:130px;}

    /* Sections */
    html[data-theme="barber-modern"] .mr-sec{background:var(--mcream);padding:64px 0 30px;}
    html[data-theme="barber-modern"] .mr-h2{text-align:center;font-weight:600;font-size:26px;letter-spacing:-.01em;margin-bottom:40px;}

    /* Featured categories — images carrées angles droits */
    html[data-theme="barber-modern"] .mr-cats{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;}
    html[data-theme="barber-modern"] .mr-cat{display:block;aspect-ratio:1;overflow:hidden;background:var(--mrose);border-radius:0;}
    html[data-theme="barber-modern"] .mr-cat img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s;}
    html[data-theme="barber-modern"] .mr-cat:hover img{transform:scale(1.04);}

    /* Best selling */
    html[data-theme="barber-modern"] .mr-best{padding-bottom:64px;}
    html[data-theme="barber-modern"] .mr-prods{display:grid;grid-template-columns:repeat(4,1fr);gap:26px;}
    html[data-theme="barber-modern"] .mr-prod{text-decoration:none;color:var(--mblack);}
    html[data-theme="barber-modern"] .mr-prod-imgwrap{aspect-ratio:1;overflow:hidden;background:var(--mrose);border-radius:0;}
    html[data-theme="barber-modern"] .mr-prod-img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s;}
    html[data-theme="barber-modern"] .mr-prod:hover .mr-prod-img{transform:scale(1.04);}
    html[data-theme="barber-modern"] .mr-ph{display:flex;align-items:center;justify-content:center;font-size:50px;}
    html[data-theme="barber-modern"] .mr-prod-name{font-weight:600;font-size:14px;margin-top:14px;}
    html[data-theme="barber-modern"] .mr-stars{color:var(--mblack);font-size:12px;letter-spacing:2px;margin-top:6px;}
    html[data-theme="barber-modern"] .mr-price{font-weight:500;font-size:13px;color:#666;margin-top:4px;}

    /* Footer */
    html[data-theme="barber-modern"] .mr-foot{background:var(--mrose);text-align:center;padding:54px 32px 44px;}
    html[data-theme="barber-modern"] .mr-foot-logo{font-weight:800;font-size:24px;}
    html[data-theme="barber-modern"] .mr-foot p{font-size:14px;color:#5c4a48;margin:10px 0 18px;}
    html[data-theme="barber-modern"] .mr-foot-by{margin-top:20px;font-size:12px;color:#8a7270;}
    html[data-theme="barber-modern"] .mr-foot-by a{color:var(--mblack);font-weight:600;text-decoration:none;}

    /* Responsive Modern */
    @media (max-width:900px){
      html[data-theme="barber-modern"] .mr-prods{grid-template-columns:repeat(2,1fr);}
    }
    @media (max-width:620px){
      html[data-theme="barber-modern"] .mr-nav,html[data-theme="barber-modern"] .mr-icons{display:none;}
      html[data-theme="barber-modern"] .mr-hero{grid-template-columns:1fr;}
      html[data-theme="barber-modern"] .mr-hero-text{padding:40px 28px;}
      html[data-theme="barber-modern"] .mr-hero-title{font-size:38px;}
      html[data-theme="barber-modern"] .mr-hero-media{min-height:320px;}
      html[data-theme="barber-modern"] .mr-cats{grid-template-columns:1fr;gap:16px;}
      html[data-theme="barber-modern"] .mr-prods{grid-template-columns:repeat(2,1fr);gap:16px;}
      html[data-theme="barber-modern"] .mr-h2{font-size:22px;}
    }

    *,*::before,*::after{margin:0;padding:0;box-sizing:border-box;}
    html{scroll-behavior:smooth;
      /* Aucun défilement horizontal de page : les menus off-canvas et
         éléments larges des templates ne doivent jamais créer de scroll
         latéral (les carrousels internes gardent leur overflow-x:auto). */
      overflow-x:hidden;overflow-x:clip;}
    body{
      font-family:var(--font-body);
      background:var(--bg); color:var(--ink);
      max-width:var(--max); margin:0 auto;
      min-height:100dvh;
      -webkit-font-smoothing:antialiased;
      padding-bottom: 88px;
    }
    img{display:block;max-width:100%;object-fit:cover;}

    /* ─── HEADER ─── */
    .hd{
      position:sticky;top:0;z-index:60;
      background:rgba(255,255,255,0.96);
      backdrop-filter:blur(12px);
      border-bottom:1px solid var(--line);
      display:flex;align-items:center;justify-content:space-between;
      padding:0 18px;height:58px;
    }
    .hd-name{font-family:var(--font-head);font-size:18px;font-weight:800;letter-spacing:-.3px;color:var(--navy);}
    .hd-menu{background:none;border:none;cursor:pointer;padding:6px;display:flex;flex-direction:column;gap:5px;}
    .hd-menu span{display:block;width:22px;height:2px;background:var(--ink);border-radius:2px;}

    /* ─── HERO BANNER ─── */
    .hero{position:relative;height:280px;background:linear-gradient(145deg,#1A0E08,#3A1F10);overflow:hidden;}
    .hero-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
    .hero-overlay{position:absolute;inset:0;background:linear-gradient(to top, rgba(10,6,4,0.85) 0%, rgba(10,6,4,0.35) 55%, rgba(10,6,4,0.2) 100%);}
    .hero-content{position:absolute;bottom:0;left:0;right:0;padding:20px 18px 72px;}
    .hero-tag{display:inline-block;font-size:10.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;background:var(--brand);color:#fff;padding:5px 11px;border-radius:50px;margin-bottom:10px;}
    .hero-title{font-family:var(--font-head);font-size:28px;font-weight:900;line-height:1.08;letter-spacing:-.5px;color:#fff;margin-bottom:6px;}
    .hero-sub{font-size:14px;color:rgba(255,255,255,0.75);font-weight:500;line-height:1.45;}

    /* ─── PROFILE CARD ─── */
    .profile-card{background:var(--card);border-radius:0 0 var(--r) var(--r);padding:0 18px 16px;display:flex;align-items:flex-end;justify-content:space-between;gap:12px;box-shadow:0 4px 20px -8px rgba(0,0,0,0.12);margin-bottom:6px;}
    .profile-left{display:flex;align-items:center;gap:14px;}
    .profile-avatar{width:72px;height:72px;border-radius:50%;border:3px solid #fff;box-shadow:0 4px 14px -4px rgba(0,0,0,0.25);flex-shrink:0;background:linear-gradient(145deg,#EADFD3,#F5EEE5);display:flex;align-items:center;justify-content:center;font-size:28px;font-weight:800;color:var(--brand);margin-top:-32px;object-fit:cover;}
    .profile-name{font-family:var(--font-head);font-size:16px;font-weight:800;color:var(--ink);line-height:1.2;}
    .profile-type{font-size:12.5px;color:var(--ink-soft);font-weight:500;}
    .profile-badge{display:inline-flex;align-items:center;gap:5px;font-size:12px;font-weight:600;background:#ECFDF5;color:#059669;padding:5px 11px;border-radius:50px;border:1px solid rgba(5,150,105,.15);flex-shrink:0;}
    .profile-badge .dot{width:7px;height:7px;border-radius:50%;background:#10B981;}

    /* ─── SECTIONS ─── */
    .sec{padding:20px 18px 0;}
    .sec-title{font-family:var(--font-head);font-size:20px;font-weight:800;letter-spacing:-.3px;color:var(--navy);margin-bottom:16px;}

    /* ─── PRODUITS ─── */
    .products-scroll{display:flex;gap:12px;overflow-x:auto;-webkit-overflow-scrolling:touch;padding-bottom:4px;scrollbar-width:none;}
    .products-scroll::-webkit-scrollbar{display:none;}
    .pcard{flex-shrink:0;width:155px;background:var(--card);border-radius:var(--r);overflow:hidden;box-shadow:0 2px 12px -4px rgba(0,0,0,0.10);border:1px solid var(--line);transition:transform .2s ease, box-shadow .2s ease;}
    .pcard:active{transform:scale(.97);}
    .pcard-img{height:115px;width:100%;background:linear-gradient(145deg,#EADFD3,#F5EEE5);display:flex;align-items:center;justify-content:center;font-size:36px;}
    .pcard-body{padding:11px 12px 12px;}
    .pcard-name{font-size:14px;font-weight:700;color:var(--ink);margin-bottom:2px;line-height:1.25;}
    .pcard-desc{font-size:11.5px;color:var(--ink-soft);margin-bottom:8px;line-height:1.3;height:28px;overflow:hidden;}
    .pcard-foot{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:6px;}
    .pcard-price{font-size:15px;font-weight:800;color:var(--brand);white-space:nowrap;flex-shrink:0;}
    .pcard-btn{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;background:var(--navy);color:#fff;font-size:11.5px;font-weight:700;font-family:inherit;padding:7px 12px;border-radius:50px;border:none;cursor:pointer;text-decoration:none;white-space:nowrap;transition:background .2s ease, transform .15s ease;}
    .pcard-btn:active{background:var(--navy-d);transform:scale(.96);}

    /* ─── MENU COMPLET ─── */
    .menu-cat{margin-bottom:24px;}
    .menu-cat-title{font-size:14px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:10px;padding-bottom:8px;border-bottom:1px solid var(--line);}
    .dish{display:flex;align-items:center;gap:14px;background:var(--card);border-radius:var(--r);padding:12px;margin-bottom:8px;border:1px solid var(--line);}
    .dish-img{width:72px;height:72px;border-radius:12px;flex-shrink:0;object-fit:cover;background:linear-gradient(145deg,#EADFD3,#F5EEE5);display:flex;align-items:center;justify-content:center;font-size:26px;}
    .dish-body{flex:1;min-width:0;}
    .dish-name{font-size:15px;font-weight:700;margin-bottom:2px;}
    .dish-desc{font-size:12.5px;color:var(--ink-soft);margin-bottom:8px;line-height:1.35;}
    .dish-foot{display:flex;align-items:center;justify-content:space-between;}
    .dish-price{font-size:16px;font-weight:800;color:var(--brand);}
    .dish-btn{display:inline-flex;align-items:center;gap:6px;background:var(--navy);color:#fff;font-family:inherit;font-size:12.5px;font-weight:700;padding:8px 14px;border-radius:50px;border:none;cursor:pointer;text-decoration:none;transition:background .2s ease;}
    .dish-btn:active{background:var(--navy-d);}
    .dish-btn svg{width:14px;height:14px;}

    /* ─── INFOS PRATIQUES ─── */
    .info-list{background:var(--card);border-radius:var(--r);border:1px solid var(--line);overflow:hidden;}
    .info-row{display:flex;align-items:center;gap:14px;padding:15px 16px;border-bottom:1px solid var(--line);}
    .info-row:last-child{border-bottom:none;}
    .info-ico{width:40px;height:40px;border-radius:11px;flex-shrink:0;display:flex;align-items:center;justify-content:center;background:var(--bg);}
    .info-ico svg{width:20px;height:20px;color:var(--brand);}
    .info-text{flex:1;}
    .info-title{font-size:14.5px;font-weight:700;color:var(--ink);}
    .info-sub{font-size:12.5px;color:var(--ink-soft);}
    .info-chev{color:var(--line);flex-shrink:0;}
    .info-chev svg{width:16px;height:16px;}

    /* ─── GALERIE ─── */
    .gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;}
    .gph{aspect-ratio:1;border-radius:12px;overflow:hidden;background:linear-gradient(145deg,#EADFD3,#F5EEE5);display:flex;align-items:center;justify-content:center;}
    .gph img{width:100%;height:100%;object-fit:cover;}
    .gph svg{width:28px;height:28px;color:var(--brand);opacity:.5;}

    /* ─── À PROPOS ─── */
    .about{background:var(--card);border-radius:var(--r);border:1px solid var(--line);padding:18px;}
    .about p{font-size:14.5px;line-height:1.65;color:var(--ink-soft);}

    /* ─── FOOTER ─── */
    .foot{padding:30px 18px 20px;text-align:center;font-size:12.5px;color:var(--ink-soft);}
    .foot a{color:var(--brand);font-weight:700;text-decoration:none;}
    .foot-socials{display:flex;justify-content:center;gap:12px;margin-bottom:14px;}
    .social-btn{width:38px;height:38px;border-radius:50%;border:1px solid var(--line);background:var(--card);display:flex;align-items:center;justify-content:center;color:var(--ink-soft);text-decoration:none;transition:border-color .2s,color .2s;}
    .social-btn:hover{border-color:var(--brand);color:var(--brand);}
    .social-btn svg{width:18px;height:18px;}

    /* ─── STICKY CTA WHATSAPP ─── */
    .wa-sticky{position:fixed;bottom:0;left:50%;transform:translateX(-50%);width:100%;max-width:var(--max);background:#fff;border-top:1px solid var(--line);padding:10px 18px 14px;padding-bottom:max(14px, env(safe-area-inset-bottom));z-index:70;}
    .wa-btn{display:flex;align-items:center;justify-content:center;gap:10px;background:var(--wa);color:#fff;font-size:16px;font-weight:800;font-family:inherit;padding:16px;border-radius:14px;border:none;cursor:pointer;text-decoration:none;width:100%;box-shadow:0 6px 20px -6px rgba(37,211,102,.6);transition:background .2s ease, transform .15s ease;}
    .wa-btn:active{background:var(--wa-d);transform:scale(.99);}
    .wa-btn svg{width:22px;height:22px;}
    .wa-note{text-align:center;font-size:12px;color:var(--ink-soft);margin-top:6px;}
    .wa-note span{margin:0 6px;opacity:.4;}

    /* ─── Drawer menu mobile ─── */
    .drawer{position:fixed;top:0;right:-100%;width:80%;max-width:320px;height:100dvh;background:#fff;z-index:90;padding:28px 24px;box-shadow:-8px 0 32px rgba(0,0,0,0.15);transition:right .3s cubic-bezier(.4,0,.2,1);display:flex;flex-direction:column;gap:6px;}
    .drawer.open{right:0;}
    .drawer-close{align-self:flex-end;background:none;border:none;cursor:pointer;width:36px;height:36px;border-radius:50%;border:1px solid var(--line);display:flex;align-items:center;justify-content:center;margin-bottom:12px;}
    .drawer a{display:flex;align-items:center;gap:12px;font-size:16px;font-weight:600;color:var(--ink);text-decoration:none;padding:13px 0;border-bottom:1px solid var(--line);}
    .drawer a:last-of-type{border-bottom:none;}
    .drawer a svg{width:18px;height:18px;color:var(--brand);}
    .drawer-wa{margin-top:auto;display:flex;align-items:center;justify-content:center;gap:10px;background:var(--wa);color:#fff;font-size:15px;font-weight:700;font-family:inherit;padding:14px;border-radius:12px;border:none;cursor:pointer;text-decoration:none;}
    .drawer-wa svg{width:20px;height:20px;}
    .overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,0.4);z-index:80;}
    .overlay.show{display:block;}

    /* ─── ÉCRANS D'ÉTAT (chargement / gate / 404) ─── */
    #app{display:none;}
    .state-screen{
      position:fixed;inset:0;z-index:200;
      display:flex;flex-direction:column;align-items:center;justify-content:center;
      text-align:center;padding:32px 24px;
      background:linear-gradient(150deg,#06101C 0%, #0A1A2E 55%, #07131F 100%);
      color:#fff;max-width:var(--max);margin:0 auto;
    }
    .state-screen.hidden{display:none;}
    .state-spinner{
      width:52px;height:52px;border:3px solid rgba(255,255,255,.14);
      border-top-color:#00C8D6;border-right-color:#ff7200;border-radius:50%;
      animation:spin .85s linear infinite;margin-bottom:22px;
    }
    @keyframes spin{to{transform:rotate(360deg);}}
    .state-emoji{font-size:54px;margin-bottom:18px;}
    .state-screen h1{font-size:22px;font-weight:900;letter-spacing:-.4px;margin-bottom:10px;}
    .state-screen p{font-size:14px;line-height:1.6;color:rgba(255,255,255,.6);max-width:340px;margin-bottom:22px;}
    .state-screen .state-brand{font-size:12px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:#ff7200;margin-bottom:26px;}
    .state-cta{display:inline-flex;align-items:center;gap:8px;background:#25D366;color:#fff;font-weight:700;font-size:14px;padding:13px 22px;border-radius:12px;text-decoration:none;transition:background .2s,transform .15s;}
    .state-cta:hover{background:#1aad54;transform:translateY(-1px);}
    .state-cta svg{width:18px;height:18px;}
    .state-link{margin-top:18px;font-size:13px;color:rgba(255,255,255,.45);text-decoration:none;}
    .state-link:hover{color:#fff;}

    /* ─── Bandeau aperçu (preview) ─── */
    .preview-bar{
      position:fixed;top:0;left:50%;transform:translateX(-50%);
      width:100%;max-width:var(--max);z-index:120;
      background:#ff7200;color:#fff;text-align:center;
      font-size:12.5px;font-weight:700;padding:7px 12px;
      box-shadow:0 2px 12px rgba(0,0,0,.2);
    }
    body.has-preview .hd{top:31px;}
    /* ── PANIER WHATSAPP ── */
    #ftx-cart-btn {
      position: fixed; left: 16px; bottom: 16px; width: 64px; height: 64px;
      background: var(--brand, #25D366); color: #fff; border-radius: 50%;
      display: flex; align-items: center; justify-content: center;
      box-shadow: 0 6px 20px rgba(0,0,0,0.25); z-index: 99990; cursor: pointer;
      transition: transform 0.25s cubic-bezier(0.4,0,0.2,1), opacity 0.3s; opacity: 0; pointer-events: none; transform: scale(0.8) translateY(20px);
    }
    #ftx-cart-btn.show { opacity: 1; pointer-events: auto; transform: scale(1) translateY(0); }
    #ftx-cart-badge {
      position: absolute; top: 0; right: 0; background: #FF3B30;
      color: #fff; font-size: 12px; font-weight: 800; padding: 2px 7px;
      border-radius: 50px; border: 2px solid #fff; box-shadow: 0 2px 6px rgba(255,59,48,0.4);
    }
    #ftx-cart-drawer {
      position: fixed; inset: 0; background: rgba(0,0,0,0.5); backdrop-filter: blur(4px);
      z-index: 99995; display: flex; justify-content: flex-end;
      opacity: 0; pointer-events: none; transition: opacity 0.35s ease;
      /* Clippe le panneau translaté hors écran : sans ça, il étend la zone de
         scroll horizontal de la page sur TOUS les templates. */
      overflow: hidden;
    }
    #ftx-cart-drawer.open { opacity: 1; pointer-events: auto; }
    #ftx-cart-panel {
      width: 100%; max-width: 420px; background: #fff; height: 100%;
      display: flex; flex-direction: column; transform: translateX(100%);
      transition: transform 0.4s cubic-bezier(0.16, 1, 0.3, 1);
      font-family: var(--font-ui, sans-serif); box-shadow: -10px 0 40px rgba(0,0,0,0.15);
    }
    #ftx-cart-drawer.open #ftx-cart-panel { transform: translateX(0); }
    .ftx-cart-head { padding: 20px 26px; border-bottom: 1px solid #f0f0f0; display: flex; align-items: center; justify-content: space-between; background: #fafafa; }
    .ftx-cart-head h2 { margin: 0; font-size: 20px; font-weight: 800; color: #111; letter-spacing: -0.02em; }
    .ftx-cart-close { background: none; border: none; font-size: 28px; cursor: pointer; color: #999; line-height: 1; padding: 0 8px; margin-right: -8px; transition: color 0.2s; }
    .ftx-cart-close:hover { color: #111; }
    .ftx-cart-body { flex: 1; overflow-y: auto; padding: 24px 26px; }
    .ftx-cart-item { display: flex; justify-content: space-between; align-items: center; margin-bottom: 18px; padding-bottom: 18px; border-bottom: 1px solid #f4f4f5; }
    .ftx-cart-item:last-child { border-bottom: none; margin-bottom: 0; padding-bottom: 0; }
    .ftx-cart-item-info { flex: 1; padding-right: 14px; }
    .ftx-cart-item-name { font-weight: 700; font-size: 14.5px; color: #111; margin-bottom: 6px; line-height: 1.3; }
    .ftx-cart-item-price { font-size: 13.5px; color: #64748b; font-weight: 500; }
    .ftx-cart-qty { display: flex; align-items: center; gap: 14px; background: #f1f5f9; border-radius: 50px; padding: 4px 6px; }
    .ftx-cart-qty button { background: #fff; border: 1px solid #e2e8f0; width: 28px; height: 28px; border-radius: 50%; display: flex; align-items: center; justify-content: center; cursor: pointer; font-weight: 700; color: #334155; box-shadow: 0 2px 4px rgba(0,0,0,0.02); transition: all 0.2s; }
    .ftx-cart-qty button:hover { border-color: #cbd5e1; background: #f8fafc; }
    .ftx-cart-foot { padding: 24px 26px; border-top: 1px solid #eee; background: #fff; }
    .ftx-cart-total { display: flex; justify-content: space-between; font-weight: 900; font-size: 20px; color: #111; margin-bottom: 20px; }
    .ftx-cart-btn-buy { width: 100%; padding: 18px; background: #25D366; color: #fff; border: none; border-radius: 14px; font-size: 16px; font-weight: 800; cursor: pointer; display: flex; align-items: center; justify-content: center; gap: 10px; box-shadow: 0 6px 16px rgba(37,211,102,0.25); transition: transform 0.2s, background 0.2s; }
    .ftx-cart-btn-buy:hover { background: #22c55e; }
    .ftx-cart-btn-buy:active { transform: scale(0.98); }
    .ftx-cart-empty { text-align: center; color: #94a3b8; font-size: 15px; padding: 60px 0; display: none; font-weight: 500; }
    .ftx-cart-empty svg { width: 48px; height: 48px; stroke: #cbd5e1; margin-bottom: 16px; }

    /* OUT OF STOCK */
    .oos-btn {
      pointer-events: none !important;
      opacity: 0.6 !important;
      filter: grayscale(100%) !important;
      cursor: not-allowed !important;
      background: #ccc !important;
      color: #555 !important;
      border-color: #ccc !important;
      position: relative;
    }
    .oos-btn::after {
      content: "Épuisé";
      position: absolute; inset: 0;
      background: #e2e8f0; color: #64748b;
      display: flex; align-items: center; justify-content: center;
      font-weight: 700; font-size: 14px; border-radius: inherit;
      z-index: 2;
    }
    
    /* BANDEAU D'ANNONCE */
    #ftx-announcement {
      background: linear-gradient(90deg, var(--brand), var(--brand-d, #111));
      color: #fff; text-align: center; padding: 12px 20px;
      font-weight: 700; font-size: 14px; letter-spacing: 0.02em;
      display: none; animation: slideDown 0.4s ease-out;
    }
    @keyframes slideDown { from { transform: translateY(-100%); } to { transform: translateY(0); } }

/* =========================================================
   CORRECTIONS LOT 3 - STABILISATION DES TEMPLATES (C-01, C-02, C-03)
   ========================================================= */

/* C-01 : Protection des textes trop longs (Line-Clamp) */
[class*="-name"], [class*="-title"], .dr-serif, .gr-offer h3, .nf-why-card h3 {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
}

[class*="-desc"], .is-cat, .dr-formule p, .gr-offer p, .nf-why-card p {
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* Annuler le line-clamp sur les titres hero pour ne pas casser la bannire */
[class*="hero-title"], [class*="hero-name"], .is-h1, .nf-h1, .ct-h1 {
    -webkit-line-clamp: unset !important;
    display: block !important;
    overflow: visible !important;
}

/* C-02 : Protection des images Hero contre les dformations */
[class*="hero-img"], [class*="hero-moto"], [class*="hero-bike"] {
    object-fit: cover !important;
    object-position: center !important;
    max-height: 60vh !important;
    width: 100%;
}
@media (max-width: 768px) {
    [class*="hero-img"], [class*="hero-moto"], [class*="hero-bike"] {
        max-height: 45vh !important;
    }
}

/* C-03 : Alignement des boutons dans les cartes */
/* Les conteneurs info/body reoivent flex-grow pour repousser les boutons/prix vers le bas */
[class*="-info"], [class*="-body"], [class*="-text"] {
    display: flex;
    flex-direction: column;
    flex-grow: 1;
}

/* Pousse le dernier lment (souvent le bouton ou le conteneur prix+bouton) vers le bas */
[class*="-info"] > :last-child, 
[class*="-body"] > :last-child,
.is-act, .dr-btn, .gr-gold {
    margin-top: auto !important;
}

/* Assurer que les cartes elles-mmes prennent toute la hauteur de la grille */
[class$="-card"], [class$="-prod"], .dish, .rz-card, .dr-formule, .gr-offer, .is-card {
    height: 100%;
    display: flex;
    flex-direction: column;
}

/* ── Confort tactile des boutons (WCAG 2.5.8 « Target Size ») ──────────
   Mesure du 19/07/2026 : le CTA principal de plusieurs themes (ex. le
   bouton « Commander » .gm-btn) fait 28-31 px de haut — bien sous le
   seuil tactile de 44 px, sur le bouton qui declenche justement la
   commande WhatsApp du marchand.

   On n'impose PAS une hauteur : cela changerait le rendu des 34 themes
   (leurs boutons sont en inline-block/block avec un padding choisi, et
   leurs styles sont injectes APRES ce fichier, donc une regle globale
   devrait passer en !important). A la place on etend seulement la ZONE
   CLIQUABLE via un pseudo-element absolu, centre sur le bouton :
   aucun pixel visible ne bouge, seule la cible tactile grandit.

   Prealable verifie sur les 34 layouts : aucun ne definit ::after/::before
   ni position: sur une classe *btn* — donc aucun conflit possible. */
#app a[class*="btn"],
#app button[class*="btn"] {
    position: relative;
}
/* IMPORTANT — exclure .oos-btn : son ::after (l.1715) affiche le badge
   « Épuisé » par-dessus le bouton. Comme ce selecteur-ci est plus specifique
   (#app + [attribut] contre une simple classe), il ecrasait `content:"Épuisé"`
   par `content:""` : les produits en rupture affichaient un rectangle gris
   VIDE. Regression introduite le 19/07 (8d8e72d), corrigee le 20/07.
   Verification refaite exhaustivement : .oos-btn est le SEUL selecteur avec
   ::after/::before portant « btn » dans engine.css, les 34 layouts et
   site/index.html. Avant d'elargir cette regle, refaire ce controle. */
#app a[class*="btn"]:not(.oos-btn)::after,
#app button[class*="btn"]:not(.oos-btn)::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    height: 100%;
    min-height: 44px;
    /* invisible : sert uniquement a agrandir la surface de tap */
}

