Files
2026-01-17 11:40:17 +01:00

563 lines
18 KiB
HTML

<!DOCTYPE html>
<html lang="es">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>{{ site_name or 'Restaurante' }}</title>
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link href="https://fonts.googleapis.com/css2?family=Roboto:wght@300;400;500;700&family=Playfair+Display:wght@400;600;700&display=swap" rel="stylesheet">
<style>
* {
margin: 0;
padding: 0;
box-sizing: border-box;
}
:root {
--primary: #d32f2f;
--secondary: #ff6f00;
--accent: #ff8f00;
--text-dark: #2c2c2c;
--text-light: #666;
--bg-light: #f9f9f9;
--white: #ffffff;
}
body {
font-family: 'Roboto', sans-serif;
color: var(--text-dark);
line-height: 1.6;
overflow-x: hidden;
}
h1, h2, h3, h4, h5, h6 {
font-family: 'Playfair Display', serif;
font-weight: 600;
line-height: 1.2;
}
.section {
padding: 80px 20px;
position: relative;
}
.container {
max-width: 1200px;
margin: 0 auto;
}
/* Header / Navigation */
header {
background: var(--white);
box-shadow: 0 2px 10px rgba(0,0,0,0.1);
position: fixed;
width: 100%;
top: 0;
z-index: 1000;
}
nav {
display: flex;
justify-content: space-between;
align-items: center;
padding: 20px 40px;
}
.logo {
font-family: 'Playfair Display', serif;
font-size: 28px;
color: var(--primary);
font-weight: 700;
}
.nav-links {
display: flex;
list-style: none;
gap: 30px;
}
.nav-links a {
text-decoration: none;
color: var(--text-dark);
font-weight: 500;
transition: color 0.3s;
}
.nav-links a:hover {
color: var(--primary);
}
/* Hero Section */
.hero {
background: linear-gradient(135deg, var(--primary) 0%, var(--secondary) 100%);
color: var(--white);
text-align: center;
padding: 150px 20px 100px;
margin-top: 80px;
}
.hero h1 {
font-size: 64px;
margin-bottom: 20px;
color: var(--white);
}
.hero p {
font-size: 20px;
margin-bottom: 30px;
opacity: 0.95;
}
.btn {
display: inline-block;
padding: 15px 40px;
background: var(--accent);
color: var(--white);
text-decoration: none;
border-radius: 5px;
font-weight: 500;
transition: transform 0.3s, box-shadow 0.3s;
}
.btn:hover {
transform: translateY(-2px);
box-shadow: 0 5px 20px rgba(0,0,0,0.2);
}
/* Menu Section */
.menu {
background: var(--white);
}
.section-title {
text-align: center;
font-size: 42px;
color: var(--primary);
margin-bottom: 60px;
}
.menu-grid {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
gap: 30px;
margin-top: 40px;
}
.menu-item {
background: var(--bg-light);
padding: 30px;
border-radius: 10px;
transition: transform 0.3s;
}
.menu-item:hover {
transform: translateY(-5px);
box-shadow: 0 5px 20px rgba(0,0,0,0.1);
}
.menu-item h3 {
color: var(--primary);
margin-bottom: 10px;
font-size: 24px;
}
.menu-item p {
color: var(--text-light);
margin-bottom: 15px;
}
.menu-price {
font-size: 22px;
font-weight: 700;
color: var(--secondary);
}
/* Horarios Section */
.horarios {
background: var(--bg-light);
}
.horarios-content {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
gap: 30px;
text-align: center;
}
.horario-item {
background: var(--white);
padding: 30px;
border-radius: 10px;
box-shadow: 0 2px 10px rgba(0,0,0,0.05);
}
.horario-item h3 {
color: var(--primary);
margin-bottom: 15px;
}
.horario-item p {
color: var(--text-light);
font-size: 18px;
}
/* Reservas Section */
.reservas {
background: var(--white);
}
.reservas-content {
max-width: 600px;
margin: 0 auto;
text-align: center;
}
.reservas-form {
display: grid;
gap: 20px;
margin-top: 40px;
}
.form-group {
text-align: left;
}
.form-group label {
display: block;
margin-bottom: 8px;
color: var(--text-dark);
font-weight: 500;
}
.form-group input,
.form-group textarea,
.form-group select {
width: 100%;
padding: 12px;
border: 2px solid #e0e0e0;
border-radius: 5px;
font-family: 'Roboto', sans-serif;
font-size: 16px;
transition: border-color 0.3s;
}
.form-group input:focus,
.form-group textarea:focus,
.form-group select:focus {
outline: none;
border-color: var(--primary);
}
.btn-primary {
background: var(--primary);
color: var(--white);
border: none;
padding: 15px 40px;
font-size: 18px;
cursor: pointer;
border-radius: 5px;
transition: background 0.3s;
}
.btn-primary:hover {
background: var(--secondary);
}
/* Especialidad Culinaria Section */
.especialidad {
background: linear-gradient(135deg, var(--primary) 0%, var(--secondary) 100%);
color: var(--white);
}
.especialidad-content {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 50px;
align-items: center;
}
.especialidad-text h2 {
color: var(--white);
margin-bottom: 20px;
}
.especialidad-text p {
font-size: 18px;
opacity: 0.95;
line-height: 1.8;
}
.especialidad-image {
text-align: center;
}
.especialidad-image img {
max-width: 100%;
border-radius: 10px;
box-shadow: 0 10px 30px rgba(0,0,0,0.3);
}
/* Contacto Section */
.contacto {
background: var(--bg-light);
}
.contacto-content {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 50px;
}
.contacto-info h3 {
color: var(--primary);
margin-bottom: 20px;
}
.contacto-info p {
color: var(--text-light);
margin-bottom: 15px;
font-size: 16px;
}
.contacto-info strong {
color: var(--text-dark);
}
.redes-sociales {
margin-top: 30px;
}
.redes-sociales a {
display: inline-block;
margin-right: 15px;
color: var(--primary);
font-size: 24px;
transition: transform 0.3s;
}
.redes-sociales a:hover {
transform: scale(1.2);
}
/* Footer */
footer {
background: var(--text-dark);
color: var(--white);
text-align: center;
padding: 40px 20px;
}
/* Responsive */
@media (max-width: 768px) {
.hero h1 {
font-size: 42px;
}
.nav-links {
display: none;
}
.especialidad-content,
.contacto-content {
grid-template-columns: 1fr;
}
.section {
padding: 60px 20px;
}
}
</style>
</head>
<body>
<!-- Header -->
<header>
<nav>
<div class="logo">{{ site_name or 'Restaurante' }}</div>
<ul class="nav-links">
<li><a href="#inicio">Inicio</a></li>
<li><a href="#menu">Menú</a></li>
<li><a href="#horarios">Horarios</a></li>
<li><a href="#reservas">Reservas</a></li>
<li><a href="#contacto">Contacto</a></li>
</ul>
</nav>
</header>
<!-- Hero Section -->
<section id="inicio" class="section hero">
<div class="container">
<h1>{{ hero_title or 'Bienvenido a Nuestro Restaurante' }}</h1>
<p>{{ hero_description or 'Sabores auténticos que despiertan tus sentidos' }}</p>
<a href="#reservas" class="btn">Reservar Mesa</a>
</div>
</section>
<!-- Menu Section -->
<section id="menu" class="section menu">
<div class="container">
<h2 class="section-title">Nuestro Menú</h2>
<div class="menu-grid">
<div class="menu-item">
<h3>Plato Especial 1</h3>
<p>Descripción del plato con ingredientes frescos y sabores únicos.</p>
<div class="menu-price">$25.00</div>
</div>
<div class="menu-item">
<h3>Plato Especial 2</h3>
<p>Descripción del plato con ingredientes frescos y sabores únicos.</p>
<div class="menu-price">$28.00</div>
</div>
<div class="menu-item">
<h3>Plato Especial 3</h3>
<p>Descripción del plato con ingredientes frescos y sabores únicos.</p>
<div class="menu-price">$30.00</div>
</div>
<div class="menu-item">
<h3>Plato Especial 4</h3>
<p>Descripción del plato con ingredientes frescos y sabores únicos.</p>
<div class="menu-price">$32.00</div>
</div>
</div>
{% if menu_url %}
<div style="text-align: center; margin-top: 40px;">
<a href="{{ menu_url }}" class="btn" target="_blank">Ver Menú Completo</a>
</div>
{% endif %}
</div>
</section>
<!-- Horarios Section -->
<section id="horarios" class="section horarios">
<div class="container">
<h2 class="section-title">Horarios de Atención</h2>
<div class="horarios-content">
<div class="horario-item">
<h3>Lunes - Viernes</h3>
<p>{{ horarios.lunes_viernes or '12:00 PM - 10:00 PM' }}</p>
</div>
<div class="horario-item">
<h3>Sábados</h3>
<p>{{ horarios.sabados or '12:00 PM - 11:00 PM' }}</p>
</div>
<div class="horario-item">
<h3>Domingos</h3>
<p>{{ horarios.domingos or '12:00 PM - 9:00 PM' }}</p>
</div>
</div>
</div>
</section>
<!-- Reservas Section -->
<section id="reservas" class="section reservas">
<div class="container">
<h2 class="section-title">Reserva tu Mesa</h2>
<div class="reservas-content">
<p style="color: var(--text-light); margin-bottom: 30px;">
Completa el formulario y nos pondremos en contacto contigo para confirmar tu reserva.
</p>
<form class="reservas-form">
<div class="form-group">
<label>Nombre Completo</label>
<input type="text" name="nombre" required>
</div>
<div class="form-group">
<label>Teléfono</label>
<input type="tel" name="telefono" required>
</div>
<div class="form-group">
<label>Email</label>
<input type="email" name="email" required>
</div>
<div class="form-group">
<label>Fecha</label>
<input type="date" name="fecha" required>
</div>
<div class="form-group">
<label>Hora</label>
<input type="time" name="hora" required>
</div>
<div class="form-group">
<label>Número de Personas</label>
<select name="personas" required>
<option value="1">1 persona</option>
<option value="2">2 personas</option>
<option value="3">3 personas</option>
<option value="4">4 personas</option>
<option value="5+">5 o más personas</option>
</select>
</div>
<div class="form-group">
<label>Mensaje (opcional)</label>
<textarea name="mensaje" rows="4"></textarea>
</div>
<button type="submit" class="btn-primary">Enviar Reserva</button>
</form>
</div>
</div>
</section>
<!-- Especialidad Culinaria Section -->
<section class="section especialidad">
<div class="container">
<div class="especialidad-content">
<div class="especialidad-text">
<h2>{{ especialidad_culinaria.titulo or 'Nuestra Especialidad' }}</h2>
<p>{{ especialidad_culinaria.descripcion or 'Cada plato es una obra de arte culinaria, preparado con ingredientes frescos y técnicas tradicionales que honran la autenticidad de nuestros sabores.' }}</p>
</div>
<div class="especialidad-image">
<img src="{{ especialidad_culinaria.imagen or 'https://via.placeholder.com/500x400?text=Especialidad' }}" alt="Especialidad Culinaria">
</div>
</div>
</div>
</section>
<!-- Contacto Section -->
<section id="contacto" class="section contacto">
<div class="container">
<h2 class="section-title">Contacto</h2>
<div class="contacto-content">
<div class="contacto-info">
<h3>Información de Contacto</h3>
<p><strong>Dirección:</strong> {{ direccion or 'Calle Principal 123, Ciudad' }}</p>
<p><strong>Teléfono:</strong> {{ telefono or '+34 123 456 789' }}</p>
<p><strong>Email:</strong> {{ email or 'contacto@restaurante.com' }}</p>
{% if capacidad %}
<p><strong>Capacidad:</strong> {{ capacidad }} personas</p>
{% endif %}
<div class="redes-sociales">
{% if redes_sociales.facebook %}
<a href="{{ redes_sociales.facebook }}" target="_blank">📘</a>
{% endif %}
{% if redes_sociales.instagram %}
<a href="{{ redes_sociales.instagram }}" target="_blank">📷</a>
{% endif %}
{% if redes_sociales.twitter %}
<a href="{{ redes_sociales.twitter }}" target="_blank">🐦</a>
{% endif %}
{% if redes_sociales.whatsapp %}
<a href="https://wa.me/{{ redes_sociales.whatsapp }}" target="_blank">💬</a>
{% endif %}
</div>
</div>
<div class="contacto-info">
<h3>Ubicación</h3>
{% if mapa_url %}
<iframe src="{{ mapa_url }}" width="100%" height="300" style="border:0; border-radius: 10px;" allowfullscreen="" loading="lazy"></iframe>
{% else %}
<p style="color: var(--text-light);">Mapa de ubicación disponible próximamente</p>
{% endif %}
</div>
</div>
</div>
</section>
<!-- Footer -->
<footer>
<div class="container">
<p>&copy; 2025 {{ site_name or 'Restaurante' }}. Todos los derechos reservados.</p>
</div>
</footer>
</body>
</html>