-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathindex.html
More file actions
257 lines (248 loc) · 10.7 KB
/
index.html
File metadata and controls
257 lines (248 loc) · 10.7 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
<!doctype html>
<html lang="fr">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<meta
name="description"
content="TimeTravel Agency, webapp interactive pour reserver un voyage temporel vers Paris 1889, le Cretace ou Florence 1504."
/>
<title>TimeTravel Agency</title>
<link
rel="icon"
href="data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64'%3E%3Crect width='64' height='64' rx='8' fill='%2310100f'/%3E%3Ccircle cx='32' cy='32' r='21' fill='none' stroke='%23d8ac62' stroke-width='4'/%3E%3Cpath d='M32 15v18l12 8' stroke='%23f6efe4' stroke-width='4' fill='none' stroke-linecap='round'/%3E%3C/svg%3E"
/>
<link rel="preload" as="image" href="assets/timetravel-hero.webp" />
<link rel="stylesheet" href="styles.css" />
</head>
<body>
<header class="site-header" data-header>
<a class="brand" href="#home" aria-label="TimeTravel Agency - accueil">
<span class="brand-mark" aria-hidden="true">TA</span>
<span>TimeTravel Agency</span>
</a>
<nav class="site-nav" aria-label="Navigation principale">
<a href="#destinations">Destinations</a>
<a href="#planner">Planifier</a>
<a href="#quiz">Quiz</a>
<a href="#contact">Contact</a>
</nav>
</header>
<main>
<section class="hero" id="home" aria-labelledby="hero-title">
<picture class="hero-art">
<source srcset="assets/timetravel-hero.webp" type="image/webp" />
<img
src="assets/timetravel-hero.png"
alt="Triptyque montrant Paris 1889, le Cretace et Florence 1504"
/>
</picture>
<div class="hero-overlay" aria-hidden="true"></div>
<div class="time-grid" aria-hidden="true"></div>
<div class="hero-content reveal">
<p class="eyebrow">Agence temporelle privee</p>
<h1 id="hero-title">TimeTravel Agency</h1>
<p class="hero-copy">
Trois epoques exceptionnelles, un accompagnement sur mesure et des
itineraires calibres pour voyager dans le temps avec elegance.
</p>
<div class="hero-actions">
<a class="button button-primary" href="#destinations">Explorer</a>
<a class="button button-secondary" href="#planner">Reserver</a>
</div>
<dl class="hero-stats" aria-label="Indicateurs de l'agence">
<div>
<dt>3</dt>
<dd>epoques</dd>
</div>
<div>
<dt>24h</dt>
<dd>preparation</dd>
</div>
<div>
<dt>98%</dt>
<dd>satisfaction</dd>
</div>
</dl>
</div>
</section>
<section class="section agency" aria-labelledby="agency-title">
<div class="section-heading reveal">
<p class="eyebrow">L'agence</p>
<h2 id="agency-title">Voyage temporel premium, narration historique et securite d'abord.</h2>
<p>
Chaque depart inclut un briefing culturel, une tenue adaptee a
l'epoque, un itineraire discret et un accompagnement par agent
specialise.
</p>
</div>
<div class="promise-grid">
<article class="promise reveal">
<span class="promise-icon" aria-hidden="true">⌁</span>
<h3>Immersion controlee</h3>
<p>Parcours limites aux zones observees et aux interactions autorisees.</p>
</article>
<article class="promise reveal">
<span class="promise-icon" aria-hidden="true">◷</span>
<h3>Fenetre precise</h3>
<p>Arrivee synchronisee sur les moments les plus marquants.</p>
</article>
<article class="promise reveal">
<span class="promise-icon" aria-hidden="true">✦</span>
<h3>Conciergerie historique</h3>
<p>Conseils personnalises selon vos centres d'interet.</p>
</article>
</div>
</section>
<section class="section destinations" id="destinations" aria-labelledby="destinations-title">
<div class="section-heading reveal">
<p class="eyebrow">Destinations</p>
<h2 id="destinations-title">Choisissez votre prochaine epoque.</h2>
<p>
Trois signatures de voyage: raffinement Belle Epoque, expedition
prehistorique et atelier Renaissance.
</p>
</div>
<div class="destination-grid" data-destination-grid></div>
</section>
<section class="section planner" id="planner" aria-labelledby="planner-title">
<div class="planner-layout">
<div class="section-heading reveal">
<p class="eyebrow">Reservation</p>
<h2 id="planner-title">Planifiez un depart temporel.</h2>
<p>
Le formulaire valide la coherence de la demande et calcule une
estimation immediate selon la destination et le nombre de voyageurs.
</p>
</div>
<form class="booking-form reveal" data-booking-form>
<label>
Destination
<select name="destination" required>
<option value="">Selectionner</option>
<option value="paris">Paris 1889</option>
<option value="cretace">Cretace -65M</option>
<option value="florence">Florence 1504</option>
</select>
</label>
<label>
Date de depart
<input name="date" type="date" required />
</label>
<label>
Voyageurs
<input name="travelers" type="number" min="1" max="8" value="2" required />
</label>
<label>
Preference principale
<select name="interest" required>
<option value="">Selectionner</option>
<option value="art">Art et architecture</option>
<option value="nature">Nature et aventure</option>
<option value="elegance">Elegance urbaine</option>
<option value="science">Observation scientifique</option>
</select>
</label>
<label class="full-field">
Email de contact
<input name="email" type="email" placeholder="prenom.nom@email.com" required />
</label>
<button class="button button-primary full-field" type="submit">Valider la demande</button>
<output class="booking-result full-field" data-booking-result></output>
</form>
</div>
</section>
<section class="section quiz" id="quiz" aria-labelledby="quiz-title">
<div class="quiz-layout">
<div class="section-heading reveal">
<p class="eyebrow">Recommandation</p>
<h2 id="quiz-title">Trouvez l'epoque qui vous correspond.</h2>
<p>
Repondez aux quatre questions pour obtenir une proposition
personnalisee.
</p>
</div>
<div class="quiz-panel reveal" data-quiz>
<fieldset>
<legend>Quel type d'experience recherchez-vous ?</legend>
<div class="choice-row">
<button type="button" data-score="florence">Culturelle et artistique</button>
<button type="button" data-score="cretace">Aventure et nature</button>
<button type="button" data-score="paris">Elegance et raffinement</button>
</div>
</fieldset>
<fieldset>
<legend>Votre periode preferee ?</legend>
<div class="choice-row">
<button type="button" data-score="paris">Histoire moderne</button>
<button type="button" data-score="cretace">Temps anciens</button>
<button type="button" data-score="florence">Renaissance</button>
</div>
</fieldset>
<fieldset>
<legend>Vous preferez :</legend>
<div class="choice-row">
<button type="button" data-score="paris">L'effervescence urbaine</button>
<button type="button" data-score="cretace">La nature sauvage</button>
<button type="button" data-score="florence">L'art et l'architecture</button>
</div>
</fieldset>
<fieldset>
<legend>Votre activite ideale :</legend>
<div class="choice-row">
<button type="button" data-score="paris">Visiter des monuments</button>
<button type="button" data-score="cretace">Observer la faune</button>
<button type="button" data-score="florence">Explorer des ateliers</button>
</div>
</fieldset>
<output class="quiz-result" data-quiz-result></output>
</div>
</div>
</section>
</main>
<footer class="site-footer" id="contact">
<div>
<strong>TimeTravel Agency</strong>
<p>Projet pedagogique - Webapp interactive.</p>
</div>
<p>Equipe: Romain</p>
</footer>
<dialog class="destination-dialog" data-destination-dialog>
<button class="icon-button dialog-close" type="button" data-dialog-close aria-label="Fermer">
×
</button>
<div data-dialog-content></div>
</dialog>
<aside class="chatbot" data-chatbot aria-label="Assistant TimeTravel">
<button class="chat-toggle" type="button" data-chat-toggle aria-label="Ouvrir le chat">
<span aria-hidden="true">◌</span>
</button>
<section class="chat-window" data-chat-window aria-labelledby="chat-title" hidden>
<header>
<div>
<p class="eyebrow">Assistant</p>
<h2 id="chat-title">Agent temporel</h2>
</div>
<button class="icon-button" type="button" data-chat-close aria-label="Fermer le chat">×</button>
</header>
<div class="chat-messages" data-chat-messages></div>
<div class="quick-prompts" aria-label="Questions rapides">
<button type="button">Quel voyage pour l'art ?</button>
<button type="button">Quels sont les prix ?</button>
<button type="button">Le Cretace est-il dangereux ?</button>
</div>
<form class="chat-form" data-chat-form>
<input
name="message"
type="text"
autocomplete="off"
placeholder="Posez-moi vos questions sur les voyages temporels..."
required
/>
<button type="submit" aria-label="Envoyer">➜</button>
</form>
</section>
</aside>
<script src="app.js" defer></script>
</body>
</html>