*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Arial,Helvetica,sans-serif;color:#222;background:#fff;line-height:1.45;font-size:15px}
.container{width:min(1040px,94%);margin:0 auto}
.hero{display:grid;grid-template-columns:1.05fr .95fr;gap:1.2rem;align-items:center;padding:1.1rem 0}
.hero-text h1{font-size:clamp(1.55rem,2.4vw,2.25rem);line-height:1.15;margin:.25rem 0 .55rem}
.hero-text p{margin:.45rem 0}
.eyebrow{color:var(--couleur-accent);font-weight:bold;font-size:.88rem;margin:0}
.hero-image img{display:block;width:100%;height:auto;border-radius:8px}
.button{display:inline-block;padding:.55rem .9rem;background:var(--couleur-secondaire);color:var(--couleur-principale);text-decoration:none;font-weight:bold;border-radius:5px}
.intro{text-align:center;padding:.65rem 0 1rem}
.logo{max-width:125px;max-height:75px;object-fit:contain}
.site-footer{text-align:center;padding:.7rem;background:#f2f2f2}
.demo-site h2{font-size:1.35rem;margin:.35rem 0;color:var(--couleur-principale)}
.demo-services,.demo-agenda{text-align:center;padding:.85rem 0}
.demo-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;margin:.8rem 0}
.demo-cards article{padding:.8rem;border:1px solid #ddd;border-radius:7px;background:#fff}
.demo-cards h3{font-size:1.05rem;margin:0 0 .35rem}
.demo-cards p{margin:.3rem 0}
.demo-note{font-size:.85rem;color:#666;margin:.5rem 0}
.demo-agenda{background:#f7f7f7;border-radius:8px;margin:.7rem auto 1rem;padding:1rem}
@media(max-width:768px){.hero{grid-template-columns:1fr;padding:.75rem 0;gap:.7rem}.hero-image{order:-1}.hero-text h1{font-size:1.7rem}.demo-cards{grid-template-columns:1fr}}
@media(max-width:480px){.container{width:94%}.button{width:auto;text-align:center}}

/* Démonstration Maison Pölöskei */
.demo .hero{padding:1rem 0;gap:1.25rem}
.demo .hero-text h1{font-size:clamp(1.8rem,3vw,2.55rem);line-height:1.12}
.demo .hero-image img{max-height:290px;object-fit:cover}
.demo-intro{padding:.7rem 0 .8rem}
.demo-intro h2,.demo-gallery h2,.demo-delivery h2,.demo-contact h2{margin:.25rem 0 .45rem;font-size:1.45rem}
.demo-gallery{padding:.4rem 0 1rem}
.demo-gallery>h2{text-align:center;margin-bottom:.8rem}
.demo-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem}
.demo-grid figure{margin:0;border:1px solid #e3dddd;border-radius:7px;overflow:hidden;background:#fff}
.demo-grid img{display:block;width:100%;height:190px;object-fit:cover}
.demo-grid figcaption{padding:.45rem .55rem;font-weight:bold;font-size:.9rem}
.demo-delivery{display:flex;justify-content:space-between;align-items:center;gap:1rem;background:#f7f3f2;border-left:4px solid var(--couleur-accent);border-radius:7px;padding:.85rem 1rem;margin:.5rem 0 1rem}
.demo-delivery p{margin:.3rem 0}
.delivery-call{display:flex;flex-direction:column;align-items:center;gap:.2rem;white-space:nowrap}
.delivery-call a{font-size:1.35rem;font-weight:bold;color:var(--couleur-accent);text-decoration:none}
.demo-contact{text-align:center;padding:.5rem 0 1rem}
@media(max-width:900px){.demo-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.demo-grid img{height:170px}}
@media(max-width:650px){.demo .hero{grid-template-columns:1fr}.demo .hero-image{order:-1}.demo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.demo-grid img{height:160px}.demo-delivery{display:block}.delivery-call{align-items:flex-start;margin-top:.7rem}}

/* v1.2 — corrections bannière et accès AGENDA */
.demo .hero{grid-template-columns:minmax(0,1fr) minmax(0,.9fr);gap:1rem;padding:.7rem 0}
.demo .hero-text{min-width:0;max-width:100%;overflow-wrap:anywhere}
.demo .hero-text h1{font-size:clamp(1.65rem,2.2vw,2.1rem);line-height:1.12;margin:.2rem 0 .45rem;overflow-wrap:normal}
.demo .hero-text p{max-width:100%;margin:.35rem 0;overflow-wrap:anywhere}
.demo .hero-image{min-width:0}
.demo .hero-image img{width:100%;max-height:245px;object-fit:cover;object-position:center;border-radius:7px}
.demo .hero .button{padding:.45rem .75rem;font-size:.92rem;border-radius:5px}
.demo-agenda{display:flex;align-items:center;justify-content:space-between;gap:.8rem;margin:.65rem 0 1rem;padding:.75rem 1rem;background:#f5f5f5;border:1px solid #e5e5e5;border-radius:7px}
.demo-agenda h2{font-size:1.15rem!important;margin:0!important}
.demo-agenda p{margin:.2rem 0;font-size:.92rem}
.demo-agenda .button{white-space:nowrap;padding:.45rem .75rem}
@media(max-width:768px){
 .demo .hero{grid-template-columns:1fr}
 .demo .hero-image{order:-1}
 .demo .hero-image img{max-height:220px}
 .demo-agenda{display:block}
 .demo-agenda .button{display:inline-block;margin-top:.45rem}
}

/* v1.3 — bouton spécialités plus compact et contrasté */
.demo .hero .button{
  display:inline-block;
  padding:.38rem .68rem;
  min-height:0;
  font-size:.88rem;
  line-height:1.25;
  font-weight:600;
  color:#fff;
  background:#b5121b;
  border:1px solid #a20f17;
  border-radius:5px;
  box-shadow:none;
}
.demo .hero .button:hover,
.demo .hero .button:focus-visible{
  background:#970d15;
  border-color:#870b12;
}

/* v1.4 — uniformisation générale des boutons et encadrés */
.demo .button,
.demo a.button,
.demo-agenda .button,
.demo-contact .button,
.demo a[href*="facebook"]{
  display:inline-block;
  box-sizing:border-box;
  padding:.48rem .85rem;
  min-height:0;
  font-family:inherit;
  font-size:.9rem;
  line-height:1.25;
  font-weight:600;
  color:#fff;
  background:#b5121b;
  border:1px solid #a20f17;
  border-radius:5px;
  text-decoration:none;
  box-shadow:none;
  transition:background-color .15s ease;
}
.demo .button:hover,
.demo a.button:hover,
.demo-agenda .button:hover,
.demo-contact .button:hover,
.demo a[href*="facebook"]:hover,
.demo .button:focus-visible,
.demo a.button:focus-visible,
.demo-agenda .button:focus-visible,
.demo-contact .button:focus-visible,
.demo a[href*="facebook"]:focus-visible{
  color:#fff;
  background:#970d15;
  border-color:#870b12;
}
.demo-agenda,
.demo-contact,
.demo .service-card{
  box-sizing:border-box;
  border:1px solid #e2e2e2;
  border-radius:7px;
  background:#f6f4f4;
  padding:1rem;
}
.demo-agenda{
  margin:.75rem 0 1rem;
}
.demo-contact{
  border-left:4px solid #b5121b;
}
.demo-agenda h2,
.demo-contact h2,
.demo .service-card h2{
  margin:0 0 .45rem;
  font-size:1.15rem;
  line-height:1.3;
}
.demo-agenda p,
.demo-contact p,
.demo .service-card p{
  margin:.35rem 0;
  line-height:1.45;
}
@media(max-width:600px){
  .demo-agenda,
  .demo-contact{
    padding:.8rem;
  }
  .demo .button,
  .demo a.button,
  .demo-agenda .button,
  .demo-contact .button,
  .demo a[href*="facebook"]{
    padding:.45rem .7rem;
    font-size:.88rem;
  }
}

.demo-order-cta{text-align:center;padding:.75rem;margin:.65rem 0;background:#f6f4f4;border:1px solid #e2e2e2;border-radius:7px}
.demo-order-cta p{margin:.1rem 0 .45rem}

/* Footer Maison Pölöskei — v1.6 */
.site-footer{margin-top:1.2rem;background:#292323;color:#fff;padding:1rem 3%;text-align:center}
.footer-inner{max-width:1040px;margin:0 auto;display:grid;gap:.65rem}
.footer-brand{display:grid;gap:.12rem}
.footer-brand strong{letter-spacing:.06em}
.footer-brand span{font-size:.9rem;color:#eee}
.footer-links{display:flex;justify-content:center;gap:1.15rem;flex-wrap:wrap}
.footer-links a{color:#fff;text-decoration:none;font-weight:bold;border-bottom:1px solid #b5121b;padding-bottom:2px}
.footer-links a:hover{color:#ffd9dc}
.footer-bottom{display:flex;justify-content:center;gap:.7rem;flex-wrap:wrap;font-size:.82rem;color:#ddd}
.footer-demo{opacity:.85}
@media(max-width:520px){.footer-links{gap:.65rem}.footer-bottom{flex-direction:column;gap:.15rem}}


/* En-tête neutre JPWEB — v1.1 */
.jpweb-header{background:#292323;color:#fff;padding:.65rem 3%;border-bottom:4px solid var(--couleur-accent)}
.jpweb-header-inner{max-width:1040px;margin:0 auto;display:flex;align-items:center;gap:.85rem}
.jpweb-brand{display:flex;align-items:center;flex:0 0 auto}
.jpweb-brand img{display:block;max-width:68px;max-height:58px;object-fit:contain}
.jpweb-header-title{display:grid;gap:.15rem;min-width:0}
.jpweb-header-title strong{font-size:1.05rem;overflow-wrap:anywhere}
.jpweb-header-title span{font-size:.82rem;color:#e8e8e8;overflow-wrap:anywhere}
.jpweb-demo-tag{margin-left:auto;flex:0 0 auto;padding:.25rem .5rem;border:1px solid #ffcc00;border-radius:4px;color:#ffcc00;font-size:.75rem;font-weight:bold;letter-spacing:.04em}
.demo-gallery{padding:.6rem 0 1.1rem}
.demo-gallery>h2{text-align:center;margin-bottom:.35rem}
.demo-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem}
.demo-grid figure{position:relative;margin:0;overflow:hidden;border:1px solid #ddd;border-radius:7px;background:#fff}
.demo-grid img{display:block;width:100%;height:155px;object-fit:cover}
.demo-grid figcaption{padding:.5rem .55rem;font-weight:bold;font-size:.9rem}
.demo-label{display:inline-block;margin-right:.35rem;padding:.12rem .35rem;background:#b5121b;color:#fff;border-radius:3px;font-size:.7rem;letter-spacing:.03em}
.demo-contact{text-align:center;padding:.85rem 0 1rem}
@media(max-width:800px){.demo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.jpweb-header-inner{gap:.55rem}.jpweb-brand img{max-width:48px;max-height:45px}.jpweb-header-title strong{font-size:.92rem}.jpweb-header-title span{font-size:.75rem}.jpweb-demo-tag{font-size:.68rem;padding:.2rem .35rem}.demo-grid img{height:135px}}

/* Module JPWEB — Livre d’or */
.livre-or { max-width: 850px; margin: 30px auto; padding: 24px; }
.avis { background: #fff; border: 1px solid #e4e4e4; border-radius: 12px; padding: 18px; margin: 16px 0; }
.avis-entete { display: flex; justify-content: space-between; align-items: center; gap: 12px; }
.avis-etoiles { color: #d49a00; letter-spacing: 2px; }
.avis-vide { padding: 18px; background: #fff; border-radius: 10px; }
