<!DOCTYPE html>
<html lang="fr">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Mamma Mia – La Soirée Immersive</title>
<link href="https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,700;0,900;1,700&family=Libre+Baskerville:ital@0;1&family=Josefin+Sans:wght@300;400;600&display=swap" rel="stylesheet">
<style>
:root {
--blue-deep: #1a3a5c;
--blue-mid: #2561a8;
--blue-sky: #4e9fd4;
--white: #f5f0e8;
--gold: #d4a843;
--terracotta: #c7572a;
--text-dark: #1a2030;
}
* { margin: 0; padding: 0; box-sizing: border-box; }
body {
background-color: #0d2340;
color: var(--white);
font-family: 'Libre Baskerville', serif;
overflow-x: hidden;
}
/* ── HERO ── */
.hero {
position: relative;
min-height: 100vh;
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
text-align: center;
overflow: hidden;
padding: 60px 20px 80px;
}
/* Ciel grec animé */
.hero::before {
content: '';
position: absolute; inset: 0;
background:
radial-gradient(ellipse 80% 50% at 50% 0%, #2561a8 0%, transparent 70%),
radial-gradient(ellipse 60% 40% at 20% 80%, #1a3a5c 0%, transparent 60%),
radial-gradient(ellipse 60% 40% at 80% 90%, #2561a8 0%, transparent 60%),
linear-gradient(180deg, #0d2340 0%, #1a3a5c 40%, #2561a8 70%, #4e9fd4 100%);
z-index: 0;
}
/* Motif de carreaux grecs */
.hero::after {
content: '';
position: absolute; inset: 0;
background-image:
repeating-linear-gradient(
0deg,
transparent, transparent 40px,
rgba(255,255,255,0.03) 40px, rgba(255,255,255,0.03) 41px
),
repeating-linear-gradient(
90deg,
transparent, transparent 40px,
rgba(255,255,255,0.03) 40px, rgba(255,255,255,0.03) 41px
);
z-index: 0;
}
/* Étoiles scintillantes */
.stars {
position: absolute; inset: 0; z-index: 1;
pointer-events: none;
}
.star {
position: absolute;
width: 3px; height: 3px;
background: white;
border-radius: 50%;
animation: twinkle var(--dur, 3s) ease-in-out infinite;
animation-delay: var(--delay, 0s);
opacity: 0;
}
@keyframes twinkle {
0%, 100% { opacity: 0; transform: scale(0.5); }
50% { opacity: 0.9; transform: scale(1.3); }
}
/* Colonnes décoratives */
.columns {
position: absolute;
bottom: 0; left: 0; right: 0;
height: 160px;
z-index: 1;
display: flex;
justify-content: space-around;
align-items: flex-end;
pointer-events: none;
}
.column {
width: 24px;
background: linear-gradient(to bottom, rgba(255,255,255,0.12), rgba(255,255,255,0.04));
border-left: 1px solid rgba(255,255,255,0.15);
border-right: 1px solid rgba(255,255,255,0.15);
position: relative;
}
.column::before {
content: '';
position: absolute; top: -10px; left: -8px; right: -8px;
height: 12px;
background: rgba(255,255,255,0.14);
border-radius: 3px 3px 0 0;
}
.column::after {
content: '';
position: absolute; bottom: 0; left: -12px; right: -12px;
height: 18px;
background: rgba(255,255,255,0.1);
}
/* Contenu hero */
.hero-content {
position: relative; z-index: 2;
animation: fadeUp 1.2s cubic-bezier(0.22, 1, 0.36, 1) both;
}
@keyframes fadeUp {
from { opacity: 0; transform: translateY(40px); }
to { opacity: 1; transform: translateY(0); }
}
.hero-eyebrow {
font-family: 'Josefin Sans', sans-serif;
font-size: 0.75rem;
letter-spacing: 0.4em;
text-transform: uppercase;
color: var(--gold);
margin-bottom: 20px;
animation: fadeUp 1.2s 0.2s both;
}
.hero-title {
font-family: 'Playfair Display', serif;
font-size: clamp(4rem, 12vw, 9rem);
font-weight: 900;
line-height: 0.85;
letter-spacing: -0.02em;
color: var(--white);
text-shadow:
0 0 60px rgba(78, 159, 212, 0.6),
0 0 120px rgba(36, 97, 168, 0.4),
0 4px 20px rgba(0,0,0,0.5);
animation: fadeUp 1.2s 0.35s both;
}
.hero-title em {
display: block;
font-style: italic;
color: #89c9f0;
}
.hero-subtitle {
font-family: 'Playfair Display', serif;
font-style: italic;
font-size: clamp(1rem, 3vw, 1.5rem);
color: var(--gold);
margin-top: 18px;
letter-spacing: 0.08em;
animation: fadeUp 1.2s 0.5s both;
}
.divider {
width: 80px;
height: 2px;
background: linear-gradient(to right, transparent, var(--gold), transparent);
margin: 28px auto;
animation: fadeUp 1.2s 0.65s both;
}
.hero-tags {
display: flex;
gap: 12px;
justify-content: center;
flex-wrap: wrap;
animation: fadeUp 1.2s 0.8s both;
}
.tag {
font-family: 'Josefin Sans', sans-serif;
font-size: 0.68rem;
letter-spacing: 0.25em;
text-transform: uppercase;
padding: 7px 18px;
border: 1px solid rgba(255,255,255,0.3);
border-radius: 2px;
color: rgba(255,255,255,0.85);
backdrop-filter: blur(6px);
background: rgba(255,255,255,0.07);
}
/* ── SECTIONS ── */
.section {
max-width: 780px;
margin: 0 auto;
padding: 70px 24px;
position: relative;
}
.section-label {
font-family: 'Josefin Sans', sans-serif;
font-size: 0.65rem;
letter-spacing: 0.45em;
text-transform: uppercase;
color: var(--gold);
margin-bottom: 16px;
}
.section-title {
font-family: 'Playfair Display', serif;
font-size: clamp(1.6rem, 4vw, 2.4rem);
font-weight: 700;
line-height: 1.2;
color: var(--white);
margin-bottom: 24px;
}
.section-title em {
font-style: italic;
color: #89c9f0;
}
.section-text {
font-size: 1.05rem;
line-height: 1.85;
color: rgba(245, 240, 232, 0.82);
margin-bottom: 20px;
}
.section-text strong {
color: var(--white);
font-style: italic;
}
/* ── PROGRAMME ── */
.programme-bg {
background: linear-gradient(180deg, #0d2340 0%, #112a4a 50%, #0d2340 100%);
position: relative;
overflow: hidden;
}
.programme-bg::before {
content: '';
position: absolute; inset: 0;
background-image: radial-gradient(circle at 80% 20%, rgba(78,159,212,0.08) 0%, transparent 50%);
}
.timeline {
position: relative;
padding-left: 0;
margin-top: 40px;
}
.timeline-item {
display: grid;
grid-template-columns: 80px 1fr;
gap: 24px;
margin-bottom: 40px;
align-items: start;
}
.timeline-time {
font-family: 'Josefin Sans', sans-serif;
font-size: 0.78rem;
letter-spacing: 0.15em;
color: var(--gold);
padding-top: 4px;
text-align: right;
border-right: 1px solid rgba(212, 168, 67, 0.35);
padding-right: 24px;
}
.timeline-body {}
.timeline-name {
font-family: 'Playfair Display', serif;
font-size: 1.25rem;
font-weight: 700;
color: var(--white);
margin-bottom: 6px;
}
.timeline-desc {
font-size: 0.95rem;
line-height: 1.7;
color: rgba(245, 240, 232, 0.7);
}
.timeline-icon {
display: inline-block;
margin-right: 8px;
font-size: 1.1rem;
}
/* ── IMMERSION CARDS ── */
.cards {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
gap: 20px;
margin-top: 40px;
}
.card {
background: linear-gradient(145deg, rgba(255,255,255,0.07), rgba(255,255,255,0.02));
border: 1px solid rgba(255,255,255,0.12);
border-radius: 6px;
padding: 32px 24px;
text-align: center;
transition: transform 0.3s ease, border-color 0.3s ease;
}
.card:hover {
transform: translateY(-4px);
border-color: rgba(212, 168, 67, 0.4);
}
.card-icon {
font-size: 2.2rem;
margin-bottom: 16px;
display: block;
}
.card-title {
font-family: 'Playfair Display', serif;
font-size: 1.1rem;
font-weight: 700;
color: var(--white);
margin-bottom: 10px;
}
.card-text {
font-size: 0.88rem;
line-height: 1.65;
color: rgba(245, 240, 232, 0.65);
}
/* ── QUOTE BLOCK ── */
.quote-block {
border-left: 3px solid var(--gold);
padding: 24px 32px;
background: rgba(255,255,255,0.04);
border-radius: 0 6px 6px 0;
margin: 40px 0;
}
.quote-text {
font-family: 'Playfair Display', serif;
font-style: italic;
font-size: 1.3rem;
line-height: 1.6;
color: var(--white);
}
/* ── CTA ── */
.cta-section {
background: linear-gradient(135deg, #1a3a5c 0%, #2561a8 50%, #1a3a5c 100%);
text-align: center;
padding: 80px 24px;
position: relative;
overflow: hidden;
}
.cta-section::before {
content: 'MAMMA MIA';
position: absolute;
font-family: 'Playfair Display', serif;
font-size: 18vw;
font-weight: 900;
color: rgba(255,255,255,0.03);
left: 50%; top: 50%;
transform: translate(-50%, -50%);
white-space: nowrap;
pointer-events: none;
}
.cta-content { position: relative; z-index: 1; }
.cta-title {
font-family: 'Playfair Display', serif;
font-size: clamp(1.8rem, 5vw, 3rem);
font-weight: 900;
color: var(--white);
margin-bottom: 16px;
}
.cta-sub {
font-family: 'Josefin Sans', sans-serif;
font-size: 0.85rem;
letter-spacing: 0.2em;
color: var(--gold);
text-transform: uppercase;
margin-bottom: 40px;
}
.btn {
display: inline-block;
font-family: 'Josefin Sans', sans-serif;
font-size: 0.85rem;
letter-spacing: 0.3em;
text-transform: uppercase;
text-decoration: none;
padding: 18px 48px;
background: var(--gold);
color: #1a2030;
font-weight: 600;
border-radius: 2px;
transition: background 0.25s, transform 0.25s;
cursor: pointer;
border: none;
}
.btn:hover {
background: #e8bc55;
transform: translateY(-2px);
}
/* ── SEPARATOR ornement ── */
.ornament {
text-align: center;
color: var(--gold);
font-size: 1.2rem;
letter-spacing: 0.5em;
opacity: 0.5;
padding: 10px 0;
}
/* ── FOOTER ── */
footer {
background: #080f1a;
text-align: center;
padding: 30px 24px;
font-family: 'Josefin Sans', sans-serif;
font-size: 0.7rem;
letter-spacing: 0.2em;
color: rgba(255,255,255,0.3);
text-transform: uppercase;
}
/* Responsive */
@media (max-width: 540px) {
.timeline-item { grid-template-columns: 60px 1fr; gap: 16px; }
.timeline-time { font-size: 0.68rem; padding-right: 16px; }
}
</style>
</head>
<body>
<!-- ── ÉTOILES ── -->
<div class="stars" id="stars"></div>
<!-- ══════════════════ HERO ══════════════════ -->
<section class="hero">
<div class="hero-content">
<p class="hero-eyebrow">Une soirée inoubliable vous attend</p>
<h1 class="hero-title">Mamma<em>Mia</em></h1>
<p class="hero-subtitle">La Comédie Musicale · Karaoké Disco · Grèce Immersive</p>
<div class="divider"></div>
<div class="hero-tags">
<span class="tag">1h15 de spectacle</span>
<span class="tag">Soirée karaoké</span>
<span class="tag">Mezze grecs</span>
<span class="tag">Décors Grèce</span>
</div>
</div>
<div class="columns">
<div class="column" style="height:120px"></div>
<div class="column" style="height:150px"></div>
<div class="column" style="height:90px"></div>
<div class="column" style="height:140px"></div>
<div class="column" style="height:110px"></div>
<div class="column" style="height:130px"></div>
<div class="column" style="height:95px"></div>
<div class="column" style="height:145px"></div>
<div class="column" style="height:105px"></div>
</div>
</section>
<!-- ══════════════════ DESCRIPTION ══════════════════ -->
<section class="section">
<p class="section-label">Le Spectacle</p>
<h2 class="section-title">Plongez au cœur<br>d'une <em>aventure grecque</em></h2>
<p class="section-text">
Sous un ciel bleu azur et parmi les pierres blanches d'une île égéenne imaginaire,
<strong>Mamma Mia</strong> prend vie sous vos yeux. Chansons mythiques d'ABBA, costumes colorés,
éclats de rire et émotions à fleur de peau — laissez-vous emporter par l'histoire
universelle et solaire de Sophie et de sa famille si particulière.
</p>
<p class="section-text">
Ce soir, le théâtre disparaît. Vous n'êtes plus spectateur·rice : vous êtes
<strong>invité·e au cœur de la Méditerranée</strong>, entouré·e de décors bleu et blanc
évoquant les maisons cycladiques, les terrasses fleuries et le scintillement de la mer Égée.
</p>
<div class="quote-block">
<p class="quote-text">« Honey, honey — une soirée comme vous n'en avez jamais vécu. »</p>
</div>
</section>
<!-- ══════════════════ PROGRAMME ══════════════════ -->
<div class="programme-bg">
<section class="section">
<p class="section-label">Programme de la soirée</p>
<h2 class="section-title">Une nuit en trois<br><em>actes grecs</em></h2>
<div class="timeline">
<div class="timeline-item">
<div class="timeline-time">Accueil</div>
<div class="timeline-body">
<p class="timeline-name"><span class="timeline-icon">????</span>Les Portes Ouvrent</p>
<p class="timeline-desc">
Installez-vous, commandez vos mezze et laissez l'ambiance grecque vous envelopper.
Mezze dips, pita croustillante, olives marinées et feuilletés à la feta sont servis
directement à votre place tout au long de la soirée.
</p>
</div>
</div>
<div class="timeline-item">
<div class="timeline-time">1h15</div>
<div class="timeline-body">
<p class="timeline-name"><span class="timeline-icon">????</span>Mamma Mia — Le Spectacle</p>
<p class="timeline-desc">
Le rideau se lève sur l'île d'Kalokairi. Entre amours contrariées, retrouvailles
et tubes intemporels — <em>Dancing Queen, Super Trouper, The Winner Takes It All</em> —
laissez la magie d'ABBA vous transporter. Rires, larmes, et envie irrésistible de chanter.
</p>
</div>
</div>
<div class="timeline-item">
<div class="timeline-time">Entracte</div>
<div class="timeline-body">
<p class="timeline-name"><span class="timeline-icon">????</span>Pause Méditerranéenne</p>
<p class="timeline-desc">
Recharge vos verres, grignotez vos mezze et prolongez la magie grecque
le temps d'un souffle entre deux actes.
</p>
</div>
</div>
<div class="timeline-item">
<div class="timeline-time">Après</div>
<div class="timeline-body">
<p class="timeline-name"><span class="timeline-icon">????</span>Karaoké Disco ABBA</p>
<p class="timeline-desc">
La scène est à vous ! Le spectacle terminé, place au karaoké disco : micro en main,
lumières stroboscopiques et setlist 100 % ABBA pour une nuit qui se prolonge
jusqu'au bout de la nuit. Chantez, dansez, vibrez.
</p>
</div>
</div>
</div>
</section>
</div>
<!-- ══════════════════ IMMERSION ══════════════════ -->
<section class="section">
<p class="section-label">L'expérience</p>
<h2 class="section-title">Tout est pensé pour<br><em>votre immersion</em></h2>
<div class="cards">
<div class="card">
<span class="card-icon">????️</span>
<p class="card-title">Décors Cycladiques</p>
<p class="card-text">
Murs bleu et blanc, arches en pierre, bougainvillées en fleurs : dès votre arrivée,
vous êtes en Grèce.
</p>
</div>
<div class="card">
<span class="card-icon">????</span>
<p class="card-title">Mezze Grecs</p>
<p class="card-text">
Houmous, tzatziki, spanakopita, feta marinée — dégustez pendant le spectacle,
les mains libres, l'âme légère.
</p>
</div>
<div class="card">
<span class="card-icon">????</span>
<p class="card-title">Karaoké Disco</p>
<p class="card-text">
Après le final, la fête continue. Chantez les grands classiques d'ABBA
sur une piste disco enflammée.
</p>
</div>
<div class="card">
<span class="card-icon">✨</span>
<p class="card-title">Soirée Complète</p>
<p class="card-text">
Spectacle + karaoké + restauration : une soirée unique, de la première note
à la dernière danse.
</p>
</div>
</div>
</section>
<div class="ornament">· · · ✦ · · ·</div>
<!-- ══════════════════ CTA ══════════════════ -->
<div class="cta-section">
<div class="cta-content">
<h2 class="cta-title">Réservez votre soirée grecque</h2>
<p class="cta-sub">Places limitées — Spectacle + Karaoké + Mezze</p>
<button class="btn">Réserver mes places</button>
</div>
</div>
<!-- ══════════════════ FOOTER ══════════════════ -->
<footer>
<p>Mamma Mia — La Soirée Immersive · Comédie musicale sur les chansons d'ABBA · Tous droits réservés</p>
</footer>
<script>
// Génération des étoiles
const starsEl = document.getElementById('stars');
for (let i = 0; i < 80; i++) {
const s = document.createElement('div');
s.className = 'star';
s.style.left = Math.random() * 100 + '%';
s.style.top = Math.random() * 60 + '%';
s.style.setProperty('--dur', (2 + Math.random() * 4) + 's');
s.style.setProperty('--delay', (Math.random() * 5) + 's');
starsEl.appendChild(s);
}
</script>
</body>
</html>