*{box-sizing:border-box}
body{margin:0;min-height:100vh;font-family:Arial,Helvetica,sans-serif;background:var(--bg,#151311);color:var(--text,#fff);overflow-x:hidden}
.bg{position:fixed;top:0;right:0;bottom:0;left:0;background-size:cover;background-position:center;z-index:-2}
.container{width:100%;max-width:900px;margin:auto;padding:28px 16px 60px}

.hero{margin:12px 0 24px;text-align:center;padding:32px 18px;border-radius:30px;background:var(--card,rgba(45,34,27,.82));border:1px solid var(--accent,#b08b62);box-shadow:0 20px 70px rgba(0,0,0,.55)}
.avatar{width:130px;height:130px;border-radius:50%;border:6px solid #111;box-shadow:0 0 0 4px var(--accent,#b08b62)}

h1{font-size:46px;text-transform:uppercase;letter-spacing:1px;margin:18px 0 6px;color:var(--text,#fff)}
.handle{font-weight:900;color:var(--accent,#b08b62);font-size:20px}
p,footer{color:var(--text,#fff)}

.links{display:block}
.card{display:flex;align-items:center;gap:18px;min-height:88px;padding:18px 22px;margin-bottom:14px;border-radius:22px;background:var(--card,rgba(45,34,27,.82));color:var(--text,#fff);text-decoration:none;border:1px solid rgba(255,255,255,.12);box-shadow:0 15px 40px rgba(0,0,0,.4);transition:.2s}
.card:hover{transform:translateY(-4px);border-color:var(--accent,#b08b62)}
.card .icon{width:56px;height:56px;border-radius:16px;background:rgba(255,255,255,.1);display:flex;align-items:center;justify-content:center;font-size:28px;flex:none;}
.card .icon img{
    max-width:34px;
    max-height:34px;
    object-fit:contain;
}
.card span:nth-child(2){flex:1}
.card strong{font-size:21px;display:block;color:var(--text,#fff)}
.card small{display:block;opacity:.8;margin-top:4px;color:var(--text,#fff)}
.card b{font-size:34px;color:var(--accent,#b08b62)}

.join,.btn{display:block;text-align:center;margin-top:22px;padding:16px 22px;border-radius:999px;border:0;background:var(--button,#b08b62);color:#fff;text-decoration:none;font-weight:900;cursor:pointer}
.back{color:var(--accent,#b08b62);font-weight:900;text-decoration:none}

.block{display:block;margin:14px 0}
.grid{display:block}
.product{background:var(--card,rgba(45,34,27,.82));border:1px solid rgba(255,255,255,.12);border-radius:22px;padding:16px;margin-bottom:18px;box-shadow:0 15px 40px rgba(0,0,0,.4)}
.product img{width:100%;border-radius:16px;background:#000}
.product h2{margin-bottom:6px;color:var(--text,#fff)}

@media(min-width:760px){
  .links{display:grid;grid-template-columns:1fr 1fr;gap:14px}
  .card{margin-bottom:0}
  .grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
}

/* DATES - FIX FINAL */
.card.event-card{
    display:block !important;
    align-items:initial !important;
    gap:0 !important;
    min-height:0 !important;
    padding:0 !important;
    margin-bottom:18px !important;
}

.card.event-card:hover{
    transform:none !important;
}

.card.event-card .event-image{
    display:block !important;
    width:100% !important;
    height:auto !important;
    aspect-ratio:16 / 9 !important;
    overflow:hidden !important;
    border-radius:22px 22px 0 0;
}

.card.event-card .event-image img{
    width:100% !important;
    height:100% !important;
    max-width:100% !important;
    object-fit:contain !important;
    object-position:center center !important;
    display:block !important;
}

.card.event-card .event-content{
    display:block !important;
    padding:18px 22px !important;
}

.event-link{
    color:var(--accent);
    font-weight:700;
    text-decoration:none;
    word-break:break-word;
}

.event-link:hover{
    text-decoration:underline;
}


footer{
    position:fixed;

    bottom:0;
    left:0;

    width:100%;

    padding:14px 20px;

    background:rgba(0,0,0,.45);

    backdrop-filter:blur(12px);
    -webkit-backdrop-filter:blur(12px);

    border-top:1px solid rgba(255,255,255,.08);

    z-index:9999;

    text-align:center;

    color:#fff;
}

/* Pour éviter que le contenu passe sous le footer */
body{
    padding-bottom:70px;
}

footer .footer-content{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:12px;
    flex-wrap:wrap;

    font-size:14px;
}

footer .footer-brand{
    font-weight:900;
    color:#fff;
}

footer a{
    color:#fff;
    text-decoration:none;
    opacity:.85;
}

footer a:hover{
    opacity:1;
}

footer .separator{
    opacity:.35;
}

@media(max-width:700px){

    footer{
        padding:12px 14px;
    }

    footer .footer-content{
        font-size:12px;
        gap:8px;
    }

}

.map-link {
    color: var(--button);
    text-decoration: none;
    font-weight: 600;
}

.map-link:hover {
    filter: brightness(1.2);
    text-decoration: underline;
}.language-tools{text-align:center;margin:18px 0}.lang-switch{display:inline-flex;align-items:center;justify-content:center;padding:8px 12px;border-radius:999px;background:var(--card);color:var(--text);text-decoration:none;border:1px solid rgba(255,255,255,.18)}
.page-card{display:block}.page-content{margin-top:16px;line-height:1.6}.page-content a{color:var(--accent)}

/* Webi One V2.5 - bouton langue fixe sur toutes les pages publiques */
.language-tools{
    position:fixed !important;
    top:16px !important;
    right:16px !important;
    z-index:99999 !important;
    margin:0 !important;
    text-align:right !important;
}
.lang-switch{
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    min-width:44px !important;
    min-height:38px !important;
    padding:8px 12px !important;
    border-radius:999px !important;
    background:rgba(255,255,255,.92) !important;
    color:#111 !important;
    text-decoration:none !important;
    border:1px solid rgba(0,0,0,.12) !important;
    box-shadow:0 8px 22px rgba(0,0,0,.22) !important;
    font-weight:800 !important;
    backdrop-filter:blur(12px);
    -webkit-backdrop-filter:blur(12px);
}
.lang-switch:hover{ transform:translateY(-1px); }
@media(max-width:700px){
    .language-tools{ top:10px !important; right:10px !important; }
    .lang-switch{ min-width:40px !important; min-height:34px !important; padding:7px 10px !important; }
}

/* Webi One V2.8 - pages premium médias / carrousel */
.page-media{position:relative;margin:22px 0;border-radius:22px;overflow:hidden;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14)}
.page-media-track{position:relative;min-height:260px}
.page-media-slide{display:none;position:relative}
.page-media-slide.is-active,.page-media.is-single .page-media-slide{display:block}
.page-media-slide img{display:block;width:100%;max-height:520px;object-fit:cover;border-radius:22px}
.page-media.is-single{max-width:860px;margin-left:auto;margin-right:auto}
.page-media-caption{position:absolute;left:18px;right:18px;bottom:18px;display:flex;flex-direction:column;gap:4px;padding:14px 16px;border-radius:16px;background:rgba(0,0,0,.58);color:#fff;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.page-media-caption strong{font-size:18px}.page-media-caption span{opacity:.9;font-size:14px;line-height:1.4}.carousel-btn{position:absolute;top:50%;transform:translateY(-50%);z-index:5;width:44px;height:44px;border-radius:999px;border:0;background:rgba(255,255,255,.92);color:#111;font-size:34px;line-height:1;cursor:pointer;box-shadow:0 8px 24px rgba(0,0,0,.28)}
.carousel-btn.prev{left:14px}.carousel-btn.next{right:14px}.carousel-count{position:absolute;top:14px;right:14px;z-index:6;padding:6px 10px;border-radius:999px;background:rgba(0,0,0,.55);color:#fff;font-size:13px;font-weight:800}
@media(max-width:700px){.page-media-track{min-height:180px}.page-media-slide img{max-height:360px}.carousel-btn{width:38px;height:38px;font-size:28px}.page-media-caption{position:static;border-radius:0;background:rgba(0,0,0,.35)}}

/* V2.9 - pages premium structurées */
.premium-items{display:grid;gap:18px;margin:22px 0}.premium-item-card{display:grid;grid-template-columns:minmax(120px,220px) 1fr;gap:18px;align-items:stretch;padding:18px;border:1px solid rgba(255,255,255,.16);border-radius:22px;background:rgba(255,255,255,.06);backdrop-filter:blur(10px)}.premium-item-card h2{margin:0 0 8px;font-size:1.35rem}.premium-item-card p{margin:10px 0 0}.premium-item-image img{width:100%;height:100%;min-height:150px;object-fit:cover;border-radius:18px;display:block}.premium-item-kicker{display:inline-flex;margin-bottom:8px;padding:5px 10px;border-radius:999px;background:rgba(255,255,255,.12);font-size:.85rem;font-weight:800}.premium-item-subtitle{display:block;opacity:.9;margin-bottom:8px}.premium-item-meta{margin:6px 0;opacity:.9}.premium-item-price{display:inline-flex;margin:10px 0 0;padding:8px 12px;border-radius:12px;background:var(--accent);color:#fff;font-weight:900}.premium-rating{letter-spacing:2px;color:var(--accent);font-size:1.15rem}.premium-item-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}.premium-item-btn{display:inline-flex;align-items:center;justify-content:center;padding:10px 14px;border-radius:12px;background:var(--button);color:#fff;text-decoration:none;font-weight:800}.premium-item-btn.secondary{background:rgba(255,255,255,.12)}.premium-items-gallery{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.premium-items-gallery .premium-item-card{display:block}.premium-items-faq .premium-item-card{display:block}.premium-items-faq h2{font-size:1.1rem}@media(max-width:700px){.premium-item-card{grid-template-columns:1fr}.premium-item-image img{height:auto;max-height:320px}}
