/* Bella Mobile v5b — même styles que V5 (fond défini inline) */
*{box-sizing:border-box}
html,body{margin:0;padding:0;font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial;color:#222;line-height:1.4}
img{max-width:100%;height:auto;display:block}a{color:inherit}
.skip-link{position:absolute;left:-9999px;top:auto}.skip-link:focus{left:8px;top:8px;background:#000;color:#fff;padding:8px;border-radius:8px;z-index:10000}
/* V6 — drapeau italien en fond du header */
.m-header{background-image:url('assets/italian-flag-banner.png') center/cover no-repeat;}
.brand{display:flex;flex-direction:column;align-items:center;gap:6px}.brand .logo{width:200px;height:auto}.brand .tag{margin:0;color:#333;font-weight:600}
.coords{margin:10px auto 0;text-align:center;font-style:normal}.coords .tel{display:inline-block;margin-top:6px;padding:10px 14px;border-radius:12px;background:#111;color:#fff;text-decoration:none;font-weight:700}
.card{background:#fff;border-radius:16px;padding:10px;margin:14px 16px;box-shadow:0 2px 10px rgba(0,0,0,.15)}
.map iframe{border-radius:12px}
.grid-cta{display:grid;grid-template-columns:1fr;gap:14px;padding:2px 16px 6px}
.tile{position:relative;display:flex;flex-direction:column;justify-content:flex-end;min-height:140px;border-radius:18px;overflow:hidden;text-decoration:none;color:#fff;padding:14px 16px;box-shadow:0 2px 12px rgba(0,0,0,.25);background-size:cover;background-position:center}
.tile::after{content:"";position:absolute;inset:0;background:transparent;z-index:0}
.tile .t1,.tile .t2{position:relative;z-index:1;text-shadow:0 2px 10px rgba(0,0,0,.5)}
.tile .t1{font-weight:800;font-size:18px;line-height:1.15}.tile .t2{font-style:italic;opacity:.95}
.tile:active{filter:brightness(.9)}
.payments{padding:8px 16px 20px;text-align:center;background:transparent;margin:20px;border-radius:12px}
.payments h2{font-size:18px;margin:10px 0}
.payments .logos{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;align-items:center}
.payments .logos img{height:20px;width:auto;opacity:.95}
.payments .note{font-size:12px;color:#666;margin:6px 0 0}
.desktop-link{text-align:center;margin:14px 0 18px}
.desktop-link a{display:inline-block;padding:10px 14px;border-radius:10px;background:#fff;border:1px solid #ddd;box-shadow:0 2px 6px rgba(0,0,0,.15);font-weight:700;text-decoration:none}
.m-footer{padding:18px 16px 28px;text-align:center;color:#555;background:transparent;border-radius:12px;margin:20px}
.m-footer .mini{width:96px;margin:0 auto 8px;opacity:.9}.ml-btn{margin-top:8px;padding:10px 14px;border-radius:10px;border:1px solid #ddd;background:#fff;font-weight:700}
.modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,.55);display:flex;align-items:center;justify-content:center;padding:16px;z-index:9999}
.modal-overlay[hidden]{display:none !important}.modal{background:#fff;width:min(560px,100%);border-radius:16px;box-shadow:0 20px 60px rgba(0,0,0,.25);overflow:hidden;max-height:88vh;display:flex;flex-direction:column}
.modal-header{background:#e74c3c;color:#fff;padding:12px 16px}.modal-header h3{margin:0;font-size:18px}
.modal-content{padding:10px 16px;overflow:auto}.ml-row{display:flex;gap:12px;padding:8px 0;border-bottom:1px solid #eee}.ml-row:last-child{border-bottom:0}
.ml-label{flex:0 0 44%;font-weight:700;color:#444}.ml-value{flex:1;color:#222}
.modal-actions{padding:12px 16px;border-top:1px solid #eee;text-align:center;background:#fafafa}
.btn{display:inline-block;padding:10px 16px;border-radius:10px;background:#111;color:#fff;text-decoration:none;font-weight:700}
