*{
margin:0;
padding:0;
box-sizing:border-box;
}

body{
font-family:Arial, Helvetica, sans-serif;
background:#050505;
color:white;
overflow-x:hidden;
}

/* HEADER */

header{
position:fixed;
top:0;
left:0;
width:100%;
padding:20px 5%;
display:flex;
justify-content:space-between;
align-items:center;
background:rgba(0,0,0,.85);
backdrop-filter:blur(10px);
z-index:1000;
}

.logo{
font-size:42px;
font-weight:900;
color:#E53935;
}

nav{
display:flex;
gap:30px;
}

nav a{
color:white;
text-decoration:none;
font-weight:600;
transition:.3s;
}

nav a:hover{
color:#E53935;
}

/* HERO */

.hero{
height:65vh;
min-height:500px;
background:
linear-gradient(rgba(0,0,0,.55),rgba(0,0,0,.75)),
url("https://images.unsplash.com/photo-1513104890138-7c749659a591");
background-size:cover;
background-position:center;
display:flex;
align-items:center;
padding:0 8%;
}

.hero-content{
max-width:700px;
}

.hero h1{
font-size:80px;
line-height:.95;
margin-bottom:25px;
}

.hero span{
color:#E53935;
}

.hero p{
font-size:24px;
line-height:1.6;
margin-bottom:35px;
max-width:600px;
}

/* BOUTON */

.btn{
display:inline-block;
padding:15px 30px;
background:#E53935;
color:white;
text-decoration:none;
font-weight:700;
border-radius:12px;
transition:.3s;
}

.btn:hover{
transform:translateY(-3px);
background:#ff4f4f;
}

/* STATS */

.stats{
padding:50px 5%;
background:#111;
display:grid;
grid-template-columns:repeat(4,1fr);
gap:20px;
}

.stat{
background:#1a1a1a;
padding:35px;
border-radius:15px;
text-align:center;
border:1px solid #222;
transition:.3s;
}

.stat:hover{
transform:translateY(-5px);
border-color:#E53935;
}

.stat h2{
color:#E53935;
font-size:24px;
font-weight:900;
letter-spacing:2px;
margin-bottom:15px;
}

.stat p{
font-size:16px;
line-height:1.7;
color:#bbb;
}

/* PIZZERIAS */

.stores{
padding:70px 5%;
background:#050505;
text-align:center;
}

.stores h2{
font-size:50px;
margin-bottom:15px;
}

.store-subtitle{
color:#aaa;
margin-bottom:40px;
}

.store-grid{
display:grid;
grid-template-columns:repeat(4,1fr);
gap:20px;
}

.store-card{
background:#111;
border-radius:20px;
overflow:hidden;
border:1px solid #222;
transition:.3s;
}

.store-card:hover{
transform:translateY(-8px);
}

.store-card img{
width:100%;
height:220px;
object-fit:cover;
}

.store-card h3{
padding:20px;
font-size:24px;
}

.stores-button{
margin-top:40px;
}

/* INKONTOURNABLES */

.pizzas{
padding:70px 5%;
background:#050505;
text-align:center;
}

.pizzas h2{
font-size:50px;
margin-bottom:40px;
}

.pizza-grid{
display:grid;
grid-template-columns:repeat(4,1fr);
gap:25px;
}

.pizza-card{
background:#111;
border-radius:20px;
overflow:hidden;
border:1px solid #222;
transition:.3s;
}

.pizza-card:hover{
transform:translateY(-8px);
}

.pizza-card img{
width:100%;
height:220px;
object-fit:cover;
}

.pizza-card h3{
padding:20px;
color:#E53935;
}

/* LITTLE BILL */

.littlebill{
background:linear-gradient(90deg,#8B0000,#E53935);
padding:50px 5%;
display:flex;
justify-content:space-between;
align-items:center;
gap:50px;
}

.littlebill-left{
max-width:600px;
}

.littlebill-left h2{
font-size:42px;
margin-bottom:15px;
}

.littlebill-left p{
font-size:20px;
margin-bottom:20px;
}

.phone{
text-align:center;
}

.phone img{
max-width:280px;
}

.phone p{
margin-top:10px;
}

/* FOOTER */

.footer{
background:#000;
padding:50px 5%;
}

.footer-logo{
font-size:42px;
font-weight:900;
color:#E53935;
margin-bottom:30px;
}

.footer-links{
display:flex;
gap:80px;
margin-bottom:30px;
}

.footer-links div{
display:flex;
flex-direction:column;
}

.footer-links h4{
margin-bottom:15px;
}

.footer-links a{
color:#bbb;
text-decoration:none;
margin-bottom:8px;
}

.footer-links a:hover{
color:#E53935;
}

.footer-copy{
padding-top:20px;
border-top:1px solid #222;
color:#777;
}

/* MOBILE */

@media(max-width:900px){

.hero h1{
font-size:50px;
}

.stats{
grid-template-columns:1fr 1fr;
}

.store-grid{
grid-template-columns:1fr;
}

.pizza-grid{
grid-template-columns:1fr;
}

.littlebill{
flex-direction:column;
text-align:center;
}

.footer-links{
flex-direction:column;
gap:30px;
}

nav{
display:none;
}

}
/* TROUVER MON KPIZZ */

.find-store{

padding:100px 5%;

text-align:center;

background:#080808;
}

.find-store h2{

font-size:54px;

font-weight:900;

color:#E53935;

margin-bottom:20px;
}

.find-store p{

font-size:20px;

color:#bbb;

max-width:800px;

margin:auto;

margin-bottom:40px;
}

.find-store-box{

display:flex;

justify-content:center;

gap:15px;

flex-wrap:wrap;
}

.store-search{

width:420px;

max-width:90%;

padding:18px 25px;

background:#111;

border:1px solid #333;

border-radius:12px;

color:white;

font-size:18px;
}

.btn-location{

display:inline-block;

margin-top:25px;

padding:15px 25px;

background:#111;

border:1px solid #333;

border-radius:12px;

color:white;

text-decoration:none;

font-weight:700;
}
/* VALEURS KPIZZ */

.values{
padding:40px 0;
background:#111;
overflow:hidden;
border-top:1px solid #222;
border-bottom:1px solid #222;
}

.values-track{
display:flex;
gap:80px;
width:max-content;
animation:valuesScroll 40s linear infinite;
}

.values-track:hover{
animation-play-state:paused;
}

.value-item{
font-size:26px;
font-weight:900;
letter-spacing:2px;
color:white;
white-space:nowrap;
}

.value-item::after{
content:"";
display:inline-block;
width:40px;
height:3px;
background:#E53935;
margin-left:40px;
vertical-align:middle;
}

@keyframes valuesScroll{
0%{
transform:translateX(0);
}
100%{
transform:translateX(-50%);
}
}
/* AVIS ACCUEIL */

.reviews-home{

padding:80px 0;

background:#050505;

overflow:hidden;
}

.reviews-home h2{

text-align:center;

font-size:50px;

margin-bottom:15px;
}

.reviews-subtitle{

text-align:center;

color:#bbb;

margin-bottom:40px;
}

.reviews-home-wrapper{

overflow:hidden;
}

.reviews-home-track{

display:flex;

gap:25px;

width:max-content;

animation:avisHome 60s linear infinite;
}

.review-home{

min-width:320px;

background:white;

padding:25px;

border-radius:20px;
}

.review-home p{

color:#222;

margin:15px 0;
}

.review-home strong{

color:#c62828;
}

.stars{

color:#f5b301;

font-size:22px;
}

@keyframes avisHome{

0%{
transform:translateX(0);
}

100%{
transform:translateX(-50%);
}

}

/* VERSION 19 - menu public visible en haut a droite sur mobile */
header nav,
header .public-nav{
  margin-left:auto;
  justify-content:flex-end;
  align-items:center;
}

@media(max-width:900px){
  header{
    padding:12px 4%;
    gap:10px;
    align-items:center;
  }

  .logo{
    font-size:34px;
    line-height:1;
    flex-shrink:0;
  }

  header nav,
  header .public-nav{
    display:flex !important;
    margin-left:auto;
    gap:6px;
    max-width:calc(100vw - 150px);
    overflow-x:auto;
    overflow-y:hidden;
    white-space:nowrap;
    justify-content:flex-start;
    padding:2px 0 4px;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:none;
  }

  header nav::-webkit-scrollbar,
  header .public-nav::-webkit-scrollbar{
    display:none;
  }

  header nav a,
  header .public-nav a{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    flex:0 0 auto;
    color:white;
    text-decoration:none;
    font-size:13px;
    font-weight:900;
    line-height:1;
    padding:9px 10px;
    border:1px solid rgba(255,255,255,.18);
    border-radius:999px;
    background:rgba(15,15,15,.88);
  }

  header nav a:hover,
  header .public-nav a:hover{
    color:white;
    background:#E53935;
    border-color:#E53935;
  }
}

@media(max-width:430px){
  header{
    padding:10px 4%;
  }

  .logo{
    font-size:31px;
  }

  header nav,
  header .public-nav{
    max-width:calc(100vw - 135px);
    gap:5px;
  }

  header nav a,
  header .public-nav a{
    font-size:12px;
    padding:8px 9px;
  }
}

.logo a{color:#E53935;text-decoration:none;}


/* VERSION 21 - accueil plus aeré : recherche KPIZZ remontée et menu raccourci */
.stores{
  padding:25px 5% 55px !important;
}
.find-store{
  padding:45px 5% 55px !important;
  margin-top:0 !important;
}
.find-store h2{
  margin-bottom:14px !important;
}
.find-store p{
  margin-bottom:26px !important;
}
.reviews-home{
  padding-bottom:45px !important;
}
@media(max-width:900px){
  .stores{padding:18px 4% 45px !important;}
  .find-store{padding:34px 4% 42px !important;}
  .find-store h2{font-size:36px !important;}
  .find-store p{font-size:17px !important;}
}


/* GEOLOCALISATION TROUVER MON KPIZZ */
.find-store .btn,
.find-store .btn-location{
  border:0;
  cursor:pointer;
  font-family:inherit;
}
.geo-result{
  max-width:760px;
  margin:25px auto 0;
}
.geo-card{
  background:#111;
  border:1px solid #2a2a2a;
  border-radius:18px;
  padding:22px;
  color:white;
  line-height:1.6;
  box-shadow:0 12px 30px rgba(0,0,0,.25);
}
.geo-card strong{
  color:#E53935;
  font-size:24px;
}
.geo-actions{
  display:flex;
  justify-content:center;
  gap:12px;
  flex-wrap:wrap;
  margin-top:18px;
}
@media(max-width:900px){
  .geo-card{padding:18px;}
  .geo-actions .btn{width:100%; text-align:center;}
}

/* VERSION 24 - ACCUEIL COMPACT ET FLUIDE */
.home-compact-note{display:none;}

/* réduire les hauteurs générales de l'accueil sans changer l'identité KPIZZ */
.hero{
  height:54vh !important;
  min-height:390px !important;
  padding:0 7% !important;
}
.hero h1{
  font-size:68px !important;
  margin-bottom:18px !important;
}
.hero p{
  font-size:22px !important;
  margin-bottom:26px !important;
}

.values{
  padding:24px 0 !important;
}
.values-track{
  gap:58px !important;
}
.value-item{
  font-size:22px !important;
}
.value-item::after{
  width:32px !important;
  margin-left:30px !important;
}

.reviews-home{
  padding:44px 0 32px !important;
}
.reviews-home h2{
  font-size:42px !important;
  margin-bottom:10px !important;
}
.reviews-subtitle{
  margin-bottom:26px !important;
}
.review-home{
  min-width:285px !important;
  padding:20px !important;
  border-radius:16px !important;
}
.review-home p{
  margin:10px 0 !important;
}

.stores{
  padding:12px 5% 36px !important;
}
.find-store{
  padding:34px 5% 38px !important;
}
.find-store h2{
  font-size:46px !important;
  margin-bottom:12px !important;
}
.find-store p{
  font-size:18px !important;
  margin-bottom:24px !important;
}
.find-store-box{
  gap:12px !important;
}
.store-search{
  padding:15px 22px !important;
}
.find-store .btn,
.find-store .btn-location{
  padding:14px 24px !important;
}
.btn-location{
  margin-top:18px !important;
}
.geo-result{
  margin-top:18px !important;
}
.geo-card{
  padding:18px !important;
  border-radius:16px !important;
}
.geo-store-list{
  gap:10px !important;
  margin-top:14px !important;
}
.geo-store-card{
  padding:13px !important;
  border-radius:14px !important;
}
.geo-actions{
  margin-top:12px !important;
  gap:10px !important;
}
.geo-actions .btn{
  padding:12px 18px !important;
}

.littlebill{
  padding:36px 5% !important;
  gap:28px !important;
}
.littlebill-left h2{
  font-size:36px !important;
  margin-bottom:10px !important;
}
.littlebill-left p{
  font-size:18px !important;
  margin-bottom:16px !important;
}
.phone img{
  max-width:220px !important;
}
.footer{
  padding:34px 5% !important;
}
.footer-logo{
  font-size:36px !important;
  margin-bottom:20px !important;
}
.footer-links{
  margin-bottom:20px !important;
}

@media(max-width:900px){
  .hero{
    height:auto !important;
    min-height:390px !important;
    padding:95px 6% 48px !important;
    align-items:center !important;
  }
  .hero h1{
    font-size:46px !important;
    margin-bottom:16px !important;
  }
  .hero p{
    font-size:19px !important;
    line-height:1.45 !important;
    margin-bottom:22px !important;
  }
  .hero .btn{
    padding:13px 22px !important;
  }

  .values{
    padding:20px 0 !important;
  }
  .values-track{
    gap:46px !important;
  }
  .value-item{
    font-size:20px !important;
  }

  .reviews-home{
    padding:34px 0 26px !important;
  }
  .reviews-home h2{
    font-size:31px !important;
    padding:0 4% !important;
  }
  .reviews-subtitle{
    font-size:15px !important;
    margin-bottom:22px !important;
    padding:0 4% !important;
  }
  .review-home{
    min-width:260px !important;
    padding:18px !important;
  }

  .stores{
    padding:6px 4% 28px !important;
  }
  .find-store{
    padding:26px 4% 30px !important;
  }
  .find-store h2{
    font-size:31px !important;
    line-height:1.1 !important;
  }
  .find-store p{
    font-size:15px !important;
    line-height:1.45 !important;
    margin-bottom:20px !important;
  }
  .find-store-box{
    gap:10px !important;
  }
  .store-search{
    width:100% !important;
    max-width:100% !important;
    padding:14px 16px !important;
    font-size:16px !important;
  }
  .find-store .btn,
  .find-store .btn-location{
    width:100% !important;
    text-align:center !important;
    padding:13px 18px !important;
  }
  .btn-location{
    margin-top:14px !important;
  }
  .geo-card{
    padding:14px !important;
  }
  .geo-card strong{
    font-size:20px !important;
  }
  .geo-store-card{
    grid-template-columns:34px 1fr !important;
    gap:10px !important;
    padding:12px !important;
  }
  .geo-rank{
    width:32px !important;
    height:32px !important;
    font-size:16px !important;
  }
  .geo-store-content strong{
    font-size:19px !important;
  }
  .geo-store-content p{
    font-size:14px !important;
    margin-top:7px !important;
  }
  .geo-actions .btn{
    padding:11px 14px !important;
  }

  .littlebill{
    padding:30px 5% !important;
    gap:20px !important;
  }
  .littlebill-left h2{
    font-size:30px !important;
  }
  .littlebill-left p{
    font-size:17px !important;
    line-height:1.45 !important;
  }
  .phone img{
    max-width:185px !important;
  }
  .footer{
    padding:30px 5% !important;
  }
}


/* KPIZZ V27 - menu deroulant compact partout */
header{gap:18px;}
.logo a{color:#E53935;text-decoration:none;}
.public-menu{position:relative;margin-left:auto;z-index:1200;}
.public-menu summary{list-style:none;cursor:pointer;display:inline-flex;align-items:center;gap:8px;padding:13px 20px;border-radius:999px;background:#E53935;color:#fff;font-weight:900;box-shadow:0 10px 25px rgba(0,0,0,.35);}
.public-menu summary::-webkit-details-marker{display:none;}
.public-menu[open] summary{background:#ff4b4b;}
.public-menu .public-nav{position:absolute;right:0;top:calc(100% + 12px);min-width:230px;display:flex!important;flex-direction:column;gap:8px;padding:12px;background:rgba(5,5,5,.97);border:1px solid #2b2b2b;border-radius:18px;box-shadow:0 20px 50px rgba(0,0,0,.55);backdrop-filter:blur(12px);}
.public-menu .public-nav a{display:block;padding:13px 16px;border-radius:12px;color:white;text-decoration:none;font-weight:900;white-space:nowrap;background:#141414;border:1px solid #242424;}
.public-menu .public-nav a:hover{background:#E53935;color:#fff;}
@media(max-width:900px){
  header{padding:16px 5%;align-items:center;}
  .logo{font-size:38px;}
  .public-menu summary{padding:11px 16px;font-size:15px;}
  .public-menu .public-nav{right:0;min-width:210px;}
}


/* KPIZZ V30 - menu public aligne en haut a droite, sans deroulant */
header{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:18px !important;
}
.logo a{color:#E53935;text-decoration:none;}
header nav,
header .public-nav{
  display:flex !important;
  flex-direction:row !important;
  align-items:center !important;
  justify-content:flex-end !important;
  gap:16px !important;
  margin-left:auto !important;
  position:static !important;
  width:auto !important;
  max-width:calc(100vw - 190px) !important;
  overflow-x:auto !important;
  overflow-y:hidden !important;
  padding:0 !important;
  background:transparent !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  backdrop-filter:none !important;
}
header nav::-webkit-scrollbar,
header .public-nav::-webkit-scrollbar{display:none;}
header nav a,
header .public-nav a{
  display:inline-flex !important;
  align-items:center !important;
  white-space:nowrap !important;
  color:#fff !important;
  text-decoration:none !important;
  font-weight:900 !important;
  font-size:15px !important;
  padding:8px 0 !important;
  border:0 !important;
  background:transparent !important;
  border-radius:0 !important;
}
header nav a:hover,
header .public-nav a:hover{color:#E53935 !important;background:transparent !important;}
.public-menu{display:contents !important;}
.public-menu summary{display:none !important;}
.public-menu .public-nav{display:flex !important;}
@media(max-width:900px){
  header{padding:14px 4% !important; gap:10px !important;}
  .logo{font-size:32px !important; flex-shrink:0 !important;}
  header nav,
  header .public-nav{gap:11px !important; max-width:calc(100vw - 116px) !important;}
  header nav a,
  header .public-nav a{font-size:13px !important; padding:6px 0 !important;}
}
@media(max-width:380px){
  .logo{font-size:28px !important;}
  header nav,
  header .public-nav{gap:9px !important; max-width:calc(100vw - 100px) !important;}
  header nav a,
  header .public-nav a{font-size:12px !important;}
}

/* KPIZZ V32 - Footer en 3 colonnes compactes */
.footer{
  padding:30px 5% 24px !important;
}
.footer-logo{
  margin-bottom:18px !important;
}
.footer-links{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:18px !important;
  margin-bottom:20px !important;
  align-items:start !important;
}
.footer-links div{
  min-width:0 !important;
  display:flex !important;
  flex-direction:column !important;
}
.footer-links h4{
  font-size:16px !important;
  margin-bottom:10px !important;
}
.footer-links a{
  font-size:14px !important;
  line-height:1.25 !important;
  margin-bottom:7px !important;
}
.footer-copy{
  font-size:14px !important;
  padding-top:16px !important;
}
@media(max-width:700px){
  .footer{
    padding:24px 4% 18px !important;
  }
  .footer-logo{
    font-size:34px !important;
    margin-bottom:16px !important;
  }
  .footer-links{
    grid-template-columns:repeat(3,1fr) !important;
    gap:10px !important;
  }
  .footer-links h4{
    font-size:13px !important;
    margin-bottom:8px !important;
  }
  .footer-links a{
    font-size:11.5px !important;
    line-height:1.2 !important;
    margin-bottom:6px !important;
  }
  .footer-copy{
    font-size:11.5px !important;
    text-align:center !important;
    padding-top:14px !important;
  }
}


/* KPIZZ V33 - Photos dans les resultats de geolocalisation */
.geo-store-card-photo{
  display:grid !important;
  grid-template-columns:38px 150px 1fr !important;
  gap:14px !important;
  align-items:center !important;
}
.geo-store-photo{
  width:150px !important;
  height:105px !important;
  object-fit:cover !important;
  border-radius:12px !important;
  border:1px solid #333 !important;
  background:#222 !important;
}
.geo-store-content{
  min-width:0 !important;
}
.geo-status{
  display:inline-block !important;
  margin-left:8px !important;
  color:#ddd !important;
  font-size:15px !important;
}
@media(max-width:700px){
  .geo-store-card-photo{
    grid-template-columns:32px 88px 1fr !important;
    gap:10px !important;
    text-align:left !important;
  }
  .geo-store-photo{
    width:88px !important;
    height:72px !important;
    border-radius:10px !important;
  }
  .geo-store-content strong{
    display:block !important;
    font-size:17px !important;
    line-height:1.15 !important;
  }
  .geo-status{
    margin-left:0 !important;
    margin-top:3px !important;
    font-size:13px !important;
  }
  .geo-actions{
    grid-column:1 / -1 !important;
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
    gap:8px !important;
  }
  .geo-actions .btn{
    width:auto !important;
    padding:10px 10px !important;
    font-size:13px !important;
  }
}


/* KPIZZ V34 - Statut ouvert/ferme et photo facade provisoire PDV */
.geo-status{
  padding:4px 9px !important;
  border-radius:999px !important;
  font-weight:800 !important;
  border:1px solid #333 !important;
  background:#161616 !important;
}
.geo-status.is-open{
  color:#53d86a !important;
  border-color:rgba(83,216,106,.35) !important;
  background:rgba(83,216,106,.10) !important;
}
.geo-status.is-closed{
  color:#ff7b7b !important;
  border-color:rgba(229,57,53,.38) !important;
  background:rgba(229,57,53,.12) !important;
}
.geo-status.is-dev{
  color:#f4c45c !important;
  border-color:rgba(244,196,92,.35) !important;
  background:rgba(244,196,92,.10) !important;
}


/* Logo KPIZZ rond en en-tete */
.logo{
  display:flex;
  align-items:center;
  flex-shrink:0;
}
.logo a{
  display:flex;
  align-items:center;
  text-decoration:none;
}
.logo img{
  display:block;
  width:76px;
  height:76px;
  object-fit:contain;
}
@media (max-width: 768px){
  .logo img{
    width:64px;
    height:64px;
  }
}
@media (max-width: 480px){
  .logo img{
    width:58px;
    height:58px;
  }
}

/* V55 - correction en-tete public : logo fond noir + menu reseau */
.brand-lockup{display:flex;align-items:center;gap:10px;text-decoration:none;}
.logo img{width:76px;height:76px;object-fit:contain;background:#000;border-radius:10px;display:block;}
.brand-word{font-size:42px;font-weight:900;color:#e53935;letter-spacing:-1px;line-height:1;}
@media (max-width: 700px){.logo img{width:64px;height:64px}.brand-word{font-size:34px} header{gap:12px} nav{gap:14px}}
@media (max-width: 480px){.logo img{width:54px;height:54px}.brand-word{font-size:28px} nav a{font-size:14px}}

/* ==========================================================
   KPIZZ VERSION 113 - CORRECTION EN-K TOUTES BOUTIKS
   - photo sandwich reduite et centree
   - produits ranges en colonnes lisibles
   - regles volontairement tres specifiques pour passer apres
     les anciens styles integres aux pages PHP/HTML
   ========================================================== */
html body .enk-block{
  display:grid!important;
  grid-template-columns:170px minmax(0,1fr)!important;
  align-items:start!important;
  gap:18px!important;
  width:100%!important;
  max-width:100%!important;
  box-sizing:border-box!important;
  padding:20px!important;
  margin-top:18px!important;
  overflow:hidden!important;
  background:#111!important;
  border:1px solid #262626!important;
  border-radius:20px!important;
}

html body .enk-block > img,
html body .enk-block img{
  display:block!important;
  width:170px!important;
  min-width:0!important;
  max-width:170px!important;
  height:150px!important;
  min-height:0!important;
  max-height:150px!important;
  margin:0 auto!important;
  padding:0!important;
  object-fit:contain!important;
  object-position:center!important;
  border-radius:16px!important;
  background:#0a0a0a!important;
  border:1px solid rgba(255,255,255,.10)!important;
  box-shadow:none!important;
}

html body .enk-block .enk-list{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  align-items:stretch!important;
  gap:9px!important;
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  margin:0!important;
  padding:0!important;
}

html body .enk-block .enk-list .enk-item{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:7px!important;
  width:auto!important;
  min-width:0!important;
  max-width:100%!important;
  min-height:72px!important;
  height:auto!important;
  box-sizing:border-box!important;
  padding:10px 8px!important;
  margin:0!important;
  text-align:center!important;
  font-size:14px!important;
  line-height:1.2!important;
  background:rgba(255,255,255,.035)!important;
  border:1px solid rgba(255,255,255,.10)!important;
  border-radius:12px!important;
}

html body .enk-block .enk-list .enk-item span{
  display:block!important;
  width:100%!important;
  min-width:0!important;
  margin:0!important;
  font-weight:800!important;
  line-height:1.18!important;
  overflow-wrap:anywhere!important;
}

html body .enk-block .enk-list .enk-item strong{
  display:block!important;
  width:100%!important;
  margin:auto 0 0!important;
  color:#fff!important;
  font-size:15px!important;
  font-weight:900!important;
  line-height:1!important;
  text-align:center!important;
  white-space:nowrap!important;
}

@media(max-width:760px){
  html body .enk-block{
    grid-template-columns:1fr!important;
    gap:13px!important;
    padding:16px!important;
  }

  html body .enk-block > img,
  html body .enk-block img{
    width:135px!important;
    max-width:135px!important;
    height:112px!important;
    max-height:112px!important;
    justify-self:center!important;
  }

  html body .enk-block .enk-list{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:8px!important;
  }

  html body .enk-block .enk-list .enk-item{
    min-height:68px!important;
    padding:9px 7px!important;
    font-size:13px!important;
  }

  html body .enk-block .enk-list .enk-item strong{
    font-size:14px!important;
  }
}

@media(max-width:430px){
  html body .enk-block{
    padding:13px!important;
    border-radius:16px!important;
  }

  html body .enk-block > img,
  html body .enk-block img{
    width:120px!important;
    max-width:120px!important;
    height:100px!important;
    max-height:100px!important;
  }

  html body .enk-block .enk-list{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:6px!important;
  }

  html body .enk-block .enk-list .enk-item{
    min-height:64px!important;
    padding:8px 5px!important;
    font-size:12px!important;
    border-radius:10px!important;
  }

  html body .enk-block .enk-list .enk-item strong{
    font-size:13px!important;
  }
}

/* KPIZZ V114 : onglet Pizzeria - titre unique NOS PIZZERIAS */
.stores > .stores-title,
.stores > .stores-subtitle{
  display:none!important;
}

.stores > h2:first-of-type{
  display:block!important;
  font-size:clamp(38px, 8vw, 72px)!important;
  line-height:1.05!important;
  font-weight:900!important;
  letter-spacing:.5px!important;
  margin:0 auto 42px!important;
  text-align:center!important;
}

@media(max-width:600px){
  .stores > h2:first-of-type{
    font-size:38px!important;
    margin-bottom:28px!important;
  }
}

/* V224 - carrousels continus et pleine largeur sur ordinateur */
.values,
.reviews-home{
  width:100%;
  overflow:hidden;
}
.values-track,
.reviews-home-track{
  display:flex;
  width:max-content;
  gap:0 !important;
  will-change:transform;
}
.values-track{animation:kpizzValuesLoop var(--kpizz-loop-duration,36s) linear infinite !important;}
.reviews-home-track{animation:kpizzReviewsLoop var(--kpizz-loop-duration,52s) linear infinite !important;}
.values-track:hover,
.reviews-home-track:hover{animation-play-state:paused !important;}
.kpizz-marquee-set{
  display:flex;
  align-items:stretch;
  flex:0 0 auto;
}
.values-track .kpizz-marquee-set{gap:58px;padding-right:58px;align-items:center;}
.reviews-home-track .kpizz-marquee-set{gap:25px;padding-right:25px;}
.review-home{
  width:clamp(300px,23vw,390px);
  min-width:clamp(300px,23vw,390px) !important;
  min-height:150px;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  box-sizing:border-box;
}
@keyframes kpizzValuesLoop{from{transform:translate3d(0,0,0)}to{transform:translate3d(-50%,0,0)}}
@keyframes kpizzReviewsLoop{from{transform:translate3d(0,0,0)}to{transform:translate3d(-50%,0,0)}}
@media(min-width:1200px){
  .values{padding:30px 0 !important;}
  .value-item{font-size:24px !important;}
  .reviews-home{padding-left:0 !important;padding-right:0 !important;}
  .reviews-home-wrapper{width:100%;max-width:none;margin:0;}
}
@media(max-width:900px){
  .values-track .kpizz-marquee-set{gap:34px;padding-right:34px;}
  .reviews-home-track .kpizz-marquee-set{gap:14px;padding-right:14px;}
  .review-home{width:82vw;min-width:82vw !important;max-width:360px;}
}
@media(prefers-reduced-motion:reduce){
  .values-track,.reviews-home-track{animation-play-state:paused !important;}
}

/* KPIZZ V225 - correctif bandeau horizontal et avis sans colonnes */
.values{
  width:100%!important;
  height:92px!important;
  min-height:92px!important;
  max-height:92px!important;
  padding:0!important;
  overflow:hidden!important;
  display:flex!important;
  align-items:center!important;
}
.values-track,
.reviews-home-track{
  display:flex!important;
  flex-direction:row!important;
  flex-wrap:nowrap!important;
  align-items:center!important;
  width:max-content!important;
  min-width:max-content!important;
  max-width:none!important;
  height:auto!important;
  gap:0!important;
}
.kpizz-marquee-set{
  display:inline-flex!important;
  flex-direction:row!important;
  flex-wrap:nowrap!important;
  align-items:center!important;
  width:max-content!important;
  min-width:max-content!important;
  max-width:none!important;
  flex:0 0 auto!important;
}
.values-track .kpizz-marquee-set{
  height:92px!important;
  gap:58px!important;
  padding-right:58px!important;
}
.value-item{
  display:inline-flex!important;
  align-items:center!important;
  flex:0 0 auto!important;
  width:auto!important;
  min-width:max-content!important;
  white-space:nowrap!important;
}
.reviews-home-wrapper{
  width:100%!important;
  overflow:hidden!important;
}
.reviews-home-track{
  align-items:stretch!important;
}
.reviews-home-track .kpizz-marquee-set{
  align-items:stretch!important;
  gap:25px!important;
  padding-right:25px!important;
}
.review-home{
  flex:0 0 clamp(300px,23vw,390px)!important;
  width:clamp(300px,23vw,390px)!important;
  min-width:clamp(300px,23vw,390px)!important;
  max-width:390px!important;
}
@media(max-width:900px){
  .values{
    height:76px!important;
    min-height:76px!important;
    max-height:76px!important;
  }
  .values-track .kpizz-marquee-set{
    height:76px!important;
    gap:34px!important;
    padding-right:34px!important;
  }
  .value-item{font-size:20px!important;}
  .reviews-home-track .kpizz-marquee-set{
    gap:14px!important;
    padding-right:14px!important;
  }
  .review-home{
    flex-basis:82vw!important;
    width:82vw!important;
    min-width:82vw!important;
    max-width:360px!important;
  }
}

/* KPIZZ V277 : correctif global horaires PDV existants + futurs */
.hours-only .info-grid,
#horaires .info-grid,
section.hours-only .info-grid,
section#horaires .info-grid{
  grid-template-columns:1fr !important;
  gap:0 !important;
}

.hours-only .info-item,
#horaires .info-item,
section.hours-only .info-item,
section#horaires .info-item{
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  padding:0 !important;
  border-radius:0 !important;
  min-height:0 !important;
}

.hours-only .mini-badges,
#horaires .mini-badges,
section.hours-only .mini-badges,
section#horaires .mini-badges{
  display:none !important;
}

.hours-only .info-item strong,
#horaires .info-item strong,
section.hours-only .info-item strong,
section#horaires .info-item strong{
  display:block !important;
  margin:0 0 10px !important;
}

.hours-only .info-item span,
#horaires .info-item span,
section.hours-only .info-item span,
section#horaires .info-item span{
  display:block !important;
  line-height:1.55 !important;
}


/* KPIZZ V287 - footer accueil/pages standard : liens juridiques centres sur toute la largeur, au-dessus de la ligne */
.footer.footer-v287,
.footer.footer-v285{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:flex-start!important;
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:10px 5% 14px!important;
  border-radius:0!important;
  background:#050505!important;
  border:0!important;
  box-shadow:none!important;
}
.footer-v287 .footer-logo,
.footer-v287 .footer-links,
.footer-v287 .footer-legal-link,
.footer-v285 .footer-logo,
.footer-v285 .footer-links,
.footer-v285 .footer-legal-link{
  display:none!important;
}
.footer-v287 .footer-legal-row,
.footer-v285 .footer-legal-row{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  align-self:center!important;
  flex-wrap:wrap!important;
  gap:14px 34px!important;
  width:auto!important;
  max-width:100%!important;
  margin:0 auto 10px!important;
  padding:0!important;
}
.footer-v287 .footer-legal-row a,
.footer-v285 .footer-legal-row a{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  flex:0 0 auto!important;
  min-width:0!important;
  text-align:center!important;
  color:#f1f1f1!important;
  text-decoration:none!important;
  font-size:14px!important;
  font-weight:700!important;
  line-height:1.2!important;
  margin:0!important;
}
.footer-v287 .footer-legal-row a:hover,
.footer-v285 .footer-legal-row a:hover{color:#E53935!important;}
.footer-v287 .footer-copy,
.footer-v285 .footer-copy{
  width:100%!important;
  margin:0!important;
  padding-top:12px!important;
  border-top:1px solid rgba(255,255,255,.22)!important;
  text-align:center!important;
}
@media (max-width: 640px){
  .footer-v287 .footer-legal-row,
  .footer-v285 .footer-legal-row{
    gap:10px 18px!important;
  }
}


/* La grande bulle rouge fidelite est resserree sans retirer son contenu */
section.littlebill.fidelite-v160,
section#fidelite.littlebill{
  padding:22px 24px!important;
  gap:18px!important;
  margin-top:16px!important;
  margin-bottom:0!important;
}
section.littlebill.fidelite-v160 .littlebill-left,
section#fidelite.littlebill .littlebill-left{
  gap:12px!important;
}
section.littlebill.fidelite-v160 .littlebill-kicker,
section.littlebill.fidelite-v160 .littlebill-intro,
section.littlebill.fidelite-v160 .littlebill-note,
section#fidelite.littlebill .littlebill-kicker,
section#fidelite.littlebill .littlebill-intro,
section#fidelite.littlebill .littlebill-note{
  margin-top:8px!important;
  margin-bottom:8px!important;
}
section.littlebill.fidelite-v160 .phone,
section#fidelite.littlebill .phone{
  margin:0 auto!important;
  padding:8px 0!important;
}
@media(max-width:700px){
  .footer.footer-v287,.footer.footer-v285{padding:10px 18px 14px!important;}
  .footer-v287 .footer-legal-row,.footer-v285 .footer-legal-row{flex-wrap:wrap!important;justify-content:center!important;gap:8px 12px!important;margin-bottom:12px!important;}
  .footer-v287 .footer-legal-row a,.footer-v285 .footer-legal-row a{flex:0 1 auto!important;font-size:12.5px!important;}
  section.littlebill.fidelite-v160,
  section#fidelite.littlebill{padding:18px 14px!important;gap:12px!important;}
}


/* KPIZZ V289 - centrage force du footer accueil et des pages standard */
.footer.footer-v289{
  display:block!important;
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:12px 0 14px!important;
  background:#050505!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
}
.footer-v289 .footer-v289-inner{
  display:block!important;
  width:min(100% - 40px,1100px)!important;
  max-width:1100px!important;
  margin:0 auto!important;
  padding:0!important;
}
.footer-v289 .footer-legal-row{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  flex-wrap:wrap!important;
  gap:12px 30px!important;
  width:100%!important;
  margin:0 auto 10px!important;
  padding:0!important;
  text-align:center!important;
}
.footer-v289 .footer-legal-row a{
  display:inline-flex!important;
  flex:0 0 auto!important;
  align-items:center!important;
  justify-content:center!important;
  margin:0!important;
  padding:0!important;
  color:#f1f1f1!important;
  font-size:14px!important;
  font-weight:700!important;
  line-height:1.2!important;
  text-align:center!important;
  text-decoration:none!important;
}
.footer-v289 .footer-copy{
  display:block!important;
  width:100%!important;
  margin:0!important;
  padding:12px 0 0!important;
  border-top:1px solid rgba(255,255,255,.22)!important;
  text-align:center!important;
}
@media(max-width:640px){
  .footer-v289 .footer-v289-inner{width:calc(100% - 28px)!important}
  .footer-v289 .footer-legal-row{gap:9px 16px!important}
  .footer-v289 .footer-legal-row a{font-size:12.5px!important}
}

/* KPIZZ V291 - accueil : remettre les bulles avis a leur largeur compacte precedente */
@media (min-width:521px) and (max-width:900px){
  .reviews-home-track .review-home,
  .reviews-home-track .kpizz-marquee-set .review-home{
    flex:0 0 42vw!important;
    width:42vw!important;
    min-width:42vw!important;
    max-width:320px!important;
  }
}
@media (max-width:520px){
  .reviews-home-track .review-home,
  .reviews-home-track .kpizz-marquee-set .review-home{
    flex:0 0 82vw!important;
    width:82vw!important;
    min-width:82vw!important;
    max-width:360px!important;
  }
}


/* KPIZZ V293 - accueil : plus d'ecart entre les avis + bandeau valeurs sans traits rouges */
.values .value-item::after,
.values-track .value-item::after{
  content:none !important;
  display:none !important;
  width:0 !important;
  margin:0 !important;
}
.values-track .kpizz-marquee-set{
  gap:78px !important;
  padding-right:78px !important;
}
.reviews-home-track .kpizz-marquee-set{
  gap:38px !important;
  padding-right:38px !important;
}
@media(max-width:900px){
  .values-track .kpizz-marquee-set{
    gap:46px !important;
    padding-right:46px !important;
  }
  .reviews-home-track .kpizz-marquee-set{
    gap:22px !important;
    padding-right:22px !important;
  }
}


/* KPIZZ V297 - correction sans deplacer le bandeau */
.values .value-item::after,
.values-track .value-item::after{
  content:"" !important;
  display:inline-block !important;
  width:36px !important;
  height:3px !important;
  background:#E53935 !important;
  margin-left:20px !important;
  margin-right:20px !important;
  vertical-align:middle !important;
}
.reviews-home-track{
  gap:22px !important;
}
@media(max-width:900px){
  .values .value-item::after,
  .values-track .value-item::after{
    width:28px !important;
    margin-left:14px !important;
    margin-right:14px !important;
  }
  .reviews-home-track{
    gap:16px !important;
  }
}


/* KPIZZ V318 - accueil : separateurs rouges centres entre les mots */
body > .values{
  width:100%!important;
  min-height:92px!important;
  height:auto!important;
  max-height:none!important;
  padding:0 24px!important;
  overflow:hidden!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  background:#111!important;
}
body > .values > .values-track{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  flex-wrap:nowrap!important;
  gap:0!important;
  width:min(100%,1500px)!important;
  min-width:0!important;
  max-width:1500px!important;
  height:auto!important;
  padding:0!important;
  margin:0 auto!important;
  transform:none!important;
  animation:none!important;
}
body > .values > .values-track .value-item{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-width:0!important;
  width:auto!important;
  text-align:center!important;
  white-space:nowrap!important;
  font-size:clamp(17px,1.55vw,25px)!important;
  line-height:1.15!important;
  letter-spacing:1.5px!important;
}
body > .values > .values-track .value-separator{
  display:block!important;
  width:34px!important;
  height:3px!important;
  flex:0 0 34px!important;
  margin:0 26px!important;
  background:#E53935!important;
  border-radius:999px!important;
}
body > .values > .values-track .value-item::after{
  display:none!important;
  content:none!important;
}
@media(max-width:900px){
  body > .values{
    min-height:76px!important;
    padding:0 16px!important;
  }
  body > .values > .values-track .value-item{
    font-size:clamp(13px,2.5vw,18px)!important;
    letter-spacing:.8px!important;
  }
  body > .values > .values-track .value-separator{
    width:20px!important;
    flex-basis:20px!important;
    margin:0 14px!important;
  }
}
@media(max-width:620px){
  body > .values{
    min-height:72px!important;
    padding:10px 12px!important;
  }
  body > .values > .values-track{
    justify-content:space-between!important;
    width:100%!important;
  }
  body > .values > .values-track .value-item{
    font-size:13px!important;
    letter-spacing:.6px!important;
  }
  body > .values > .values-track .value-separator{
    width:16px!important;
    flex-basis:16px!important;
    margin:0 8px!important;
  }
}

