<?php define('DB_ACCESS', true); require_once __DIR__ . '/db.php';
$_cities = array_values(array_map(fn($n) => str_starts_with($n,'De Fitclub ') ? substr($n,11) : $n, CLUBS));
$_nc = count($_cities);
$_cityStr = $_nc === 0 ? '' : ($_nc === 1 ? $_cities[0] : implode(', ', array_slice($_cities,0,-1)) . ' en ' . end($_cities));
?><!DOCTYPE html>
<html lang="nl">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>De Fitclub Leiden — Sportschool & Circuittraining 24/7 | Virtual Coach</title>
<meta name="description" content="De Fitclub Leiden: 30 minuten circuittraining met jouw eigen Virtual Coach. Onbemand, 24/7 open, geen inschrijfkosten. Binnenkort geopend in Leiden.">
<meta name="keywords" content="sportschool Leiden, fitness Leiden, circuittraining Leiden, 24/7 sportschool Leiden, sportschool Leidse regio, onbemand sportschool Leiden, Virtual Coach Leiden">
<meta name="robots" content="index, follow">
<link rel="canonical" href="https://www.defitclub.nl/leiden">

<!-- Open Graph -->
<meta property="og:type"        content="website">
<meta property="og:url"         content="https://www.defitclub.nl/leiden">
<meta property="og:title"       content="De Fitclub Leiden — Sportschool met Virtual Coach, 24/7 Open">
<meta property="og:description" content="30 minuten circuittraining met jouw eigen Virtual Coach in Leiden. Onbemand, altijd open, geen inschrijfkosten.">
<meta property="og:image"       content="https://www.defitclub.nl/images/og-leiden.jpg">
<meta property="og:locale"      content="nl_NL">
<meta property="og:site_name"   content="De Fitclub">

<!-- Twitter Card -->
<meta name="twitter:card"        content="summary_large_image">
<meta name="twitter:title"       content="De Fitclub Leiden — Sportschool met Virtual Coach">
<meta name="twitter:description" content="30 minuten circuittraining met jouw eigen Virtual Coach in Leiden. Onbemand, 24/7 open.">
<meta name="twitter:image"       content="https://www.defitclub.nl/images/og-leiden.jpg">

<!-- Schema.org: ExerciseGym (Leiden) -->
<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "ExerciseGym",
  "name": "De Fitclub Leiden",
  "description": "30 minuten circuittraining met Virtual Coach. Onbemand, 24/7 open, geen inschrijfkosten.",
  "url": "https://www.defitclub.nl/leiden",
  "telephone": "",
  "email": "info@defitclub.nl",
  "image": "https://www.defitclub.nl/images/leiden-hero.jpg",
  "address": {
    "@type": "PostalAddress",
    "addressLocality": "Leiden",
    "addressRegion": "Zuid-Holland",
    "addressCountry": "NL"
  },
  "geo": {
    "@type": "GeoCoordinates",
    "latitude": "52.1601",
    "longitude": "4.4970"
  },
  "openingHoursSpecification": [
    {"@type":"OpeningHoursSpecification","dayOfWeek":["Monday","Tuesday","Wednesday","Thursday","Friday"],"opens":"00:00","closes":"23:59"},
    {"@type":"OpeningHoursSpecification","dayOfWeek":["Saturday","Sunday"],"opens":"00:00","closes":"23:59"}
  ],
  "amenityFeature": [
    {"@type":"LocationFeatureSpecification","name":"Virtual Coach","value":true},
    {"@type":"LocationFeatureSpecification","name":"24/7 toegang","value":true},
    {"@type":"LocationFeatureSpecification","name":"Circuittraining","value":true},
    {"@type":"LocationFeatureSpecification","name":"Onbemand","value":true}
  ],
  "priceRange": "€",
  "currenciesAccepted": "EUR",
  "paymentAccepted": "iDEAL, creditcard, incasso",
  "parentOrganization": {
    "@type": "Organization",
    "name": "De Fitclub",
    "url": "https://www.defitclub.nl"
  }
}
</script>

<!-- BreadcrumbList -->
<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "BreadcrumbList",
  "itemListElement": [
    {"@type":"ListItem","position":1,"name":"Home","item":"https://www.defitclub.nl/"},
    {"@type":"ListItem","position":2,"name":"Onze Clubs","item":"https://www.defitclub.nl/clubs"},
    {"@type":"ListItem","position":3,"name":"Leiden","item":"https://www.defitclub.nl/leiden"}
  ]
}
</script>

<link rel="stylesheet" href="style.css">
<script>
(function(){var t=localStorage.getItem('theme');if(t==='light')document.documentElement.setAttribute('data-theme','light');})();
function toggleTheme(){var h=document.documentElement,isDark=h.getAttribute('data-theme')!=='light';h.setAttribute('data-theme',isDark?'light':'dark');localStorage.setItem('theme',isDark?'light':'dark');_syncBtn();}
function _syncBtn(){var b=document.getElementById('themeBtn');if(!b)return;var d=document.documentElement.getAttribute('data-theme')!=='light';b.textContent=d?'☀':'☾';b.title=d?'Licht thema':'Donker thema';}
document.addEventListener('DOMContentLoaded',_syncBtn);
</script>
</head>
<body>

<!-- NAV -->
<nav id="nav">
  <a href="index.html" class="nav-logo">
    <div class="nav-logo-main">DE FITCLUB</div>
    <span class="nav-logo-sub">— Sterk in 30 Minuten —</span>
  </a>
  <ul class="nav-links">
    <li><a href="index.html">Home</a></li>
    <li><a href="clubs.php" class="active">Onze Clubs</a></li>
    <li><a href="prijzen.html">Prijzen</a></li>
    <li><a href="contact.php">Contact</a></li>
    <li><a href="https://leden.defitclub.nl" target="_blank" class="nav-cta">Word Lid</a></li>
  </ul>
  <div class="nav-hamburger" onclick="openMenu()">
    <span></span><span></span><span></span>
  </div>
</nav>

<!-- MOBILE MENU -->
<div class="mobile-menu" id="mobileMenu">
  <button class="mobile-close" onclick="closeMenu()">✕</button>
  <a href="index.html" onclick="closeMenu()">Home</a>
  <a href="clubs.php" class="active" onclick="closeMenu()">Onze Clubs</a>
  <a href="prijzen.html" onclick="closeMenu()">Prijzen</a>
  <a href="contact.php" onclick="closeMenu()">Contact</a>
  <a href="https://leden.defitclub.nl" target="_blank" class="nav-cta" onclick="closeMenu()">Word Lid</a>
</div>

<!-- HERO -->
<div class="loc-hero">
  <!-- Foto: vervang src door echte foto zodra beschikbaar -->
  <div class="loc-hero-bg photo-wrap">
    <img src="images/leiden-hero.jpg" alt="De Fitclub Leiden — interieur sportschool" class="club-photo" onerror="this.style.display='none'">
    <div class="photo-overlay"></div>
  </div>
  <div class="loc-hero-overlay"></div>
  <div class="lamp lamp-1"></div>
  <div class="lamp lamp-3" style="top:10%;left:65%;"></div>
  <div class="loc-hero-content">
    <span class="loc-status-badge">Opening mei/juni 2026</span>
    <a href="clubs.php" class="back-link">← Alle vestigingen</a>
    <h1 class="loc-city">LEIDEN</h1>
    <p class="loc-city-sub">De Fitclub Leiden</p>
    <p class="loc-hero-desc">Jouw sportschool in Leiden. 30 minuten circuit, volledig begeleid door jouw Virtual Coach. Onbemand, altijd open — train wanneer jij wilt.</p>
    <div class="loc-hero-btns">
      <a href="proefles.php?club=leiden" class="btn-gold">Boek nu je gratis proefles</a>
      <a href="prijzen.html" class="btn-outline">Bekijk abonnementen</a>
    </div>
  </div>
</div>

<div class="gold-rule"></div>

<!-- CLUB INFO + KAART -->
<section class="loc-info-sec">
  <div>
    <p class="sec-label reveal">Locatie</p>
    <h2 class="sec-title reveal" style="font-size:clamp(1.8rem,3vw,2.4rem);margin-bottom:36px;">De Fitclub Leiden</h2>
    <div class="loc-detail reveal">
      <div class="loc-lbl">Adres</div>
      <div class="loc-val">Adres volgt — Leiden</div>
    </div>
    <div class="loc-detail reveal">
      <div class="loc-lbl">Telefoon</div>
      <div class="loc-val">info@defitclub.nl</div>
    </div>
    <div class="loc-detail reveal">
      <div class="loc-lbl">Toegang</div>
      <div class="loc-val">24/7 via je telefoon</div>
    </div>
    <div class="loc-detail reveal">
      <div class="loc-lbl">Openingstijden balie</div>
      <table class="hours-tbl">
        <tr><td>Maandag – Vrijdag</td><td>volgt</td></tr>
        <tr><td>Zaterdag – Zondag</td><td>volgt</td></tr>
        <tr><td>24/7 trainen</td><td>altijd open</td></tr>
      </table>
    </div>
    <div class="loc-detail reveal" style="border:none; margin-top:32px;">
      <a href="https://leden.defitclub.nl" target="_blank" class="btn-gold">Word nu lid</a>
    </div>
  </div>
  <div class="reveal">
    <div class="map-embed">
      <iframe
        src="https://maps.google.com/maps?q=Leiden,+Zuid-Holland,+Nederland&output=embed&z=14"
        width="100%" height="380" style="border:0;border-radius:4px;display:block;"
        allowfullscreen="" loading="lazy" referrerpolicy="no-referrer-when-downgrade"
        title="De Fitclub Leiden — locatie op de kaart">
      </iframe>
    </div>
  </div>
</section>

<div class="gold-rule"></div>

<!-- FEATURES -->
<section class="loc-features-sec">
  <p class="sec-label reveal text-center">Wat je vindt in Leiden</p>
  <h2 class="sec-title reveal text-center" style="max-width:520px;margin:0 auto 0;">Alles wat je nodig hebt. Niets meer.</h2>
  <div class="loc-features-grid">
    <div class="how-card reveal">
      <div class="how-num">🤖</div>
      <h3>Virtual Coach</h3>
      <p>Bij binnenkomst herkent het systeem jou direct. Jouw Virtual Coach stelt het circuit in op basis van jouw doelen, progressie en niveau — zonder dat je iets hoeft te doen.</p>
    </div>
    <div class="how-card reveal">
      <div class="how-num">⚡</div>
      <h3>30 min circuit</h3>
      <p>Volledige full-body workout in 30 minuten. De apparatuur stelt automatisch gewichten en weerstand in. Effectiever dan een uur traditioneel trainen.</p>
    </div>
    <div class="how-card reveal">
      <div class="how-num">🔓</div>
      <h3>24/7 onbemand</h3>
      <p>Geen personeel op de vloer. Dat is bewust. Geen afleiding, geen wachtrijen, geen reserveringen. Open je app, scan de QR code en train. Op elk uur van de dag.</p>
    </div>
  </div>
</section>

<div class="gold-rule"></div>

<!-- FOTO SECTIE -->
<section style="padding:80px 60px; background:var(--black);">
  <p class="sec-label reveal">De club</p>
  <h2 class="sec-title reveal">Bekijk de ruimte</h2>
  <p class="sec-sub reveal">Foto's volgen zodra de vestiging geopend is.</p>
  <!--
    FOTO INTEGRATIE:
    Vervang de placeholders hieronder door echte <img> tags wanneer foto's beschikbaar zijn.
    Gebruik: <img src="images/leiden-1.jpg" alt="De Fitclub Leiden — circuitruimte" loading="lazy">
    Aanbevolen formaten: JPG, WebP | Minimaal 1400px breed voor hero's, 800px voor thumbnails.
  -->
  <div class="photo-grid-3" style="display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:44px;">
    <div style="height:220px;background:var(--surface);border:1px solid rgba(201,168,76,0.07);border-radius:3px;display:flex;align-items:center;justify-content:center;color:var(--text-dim);font-size:0.8rem;letter-spacing:0.1em;">
      Foto 1 — interieur
    </div>
    <div style="height:220px;background:var(--surface);border:1px solid rgba(201,168,76,0.07);border-radius:3px;display:flex;align-items:center;justify-content:center;color:var(--text-dim);font-size:0.8rem;letter-spacing:0.1em;">
      Foto 2 — circuit
    </div>
    <div style="height:220px;background:var(--surface);border:1px solid rgba(201,168,76,0.07);border-radius:3px;display:flex;align-items:center;justify-content:center;color:var(--text-dim);font-size:0.8rem;letter-spacing:0.1em;">
      Foto 3 — entree
    </div>
  </div>
</section>

<div class="gold-rule"></div>

<!-- CTA -->
<section class="cta-band">
  <p class="sec-label reveal">Klaar voor Leiden?</p>
  <h2 class="sec-title reveal" style="max-width:520px;margin:0 auto 18px;">Meld je aan, wij laten je weten wanneer we openen</h2>
  <p class="sec-sub reveal" style="margin:0 auto 40px;">Geen inschrijfkosten. Sluit je abonnement nu af en activeer het zodra de deuren opengaan.</p>
  <div class="cta-btns reveal">
    <a href="proefles.php?club=leiden" class="btn-gold">Boek nu je gratis proefles</a>
    <a href="prijzen.html" class="btn-outline">Bekijk abonnementen</a>
  </div>
</section>

<div class="gold-rule"></div>

<!-- FOOTER -->
<footer>
  <div class="footer-grid">
    <div class="ft-brand">
      <div class="ft-brand-main">DE FITCLUB</div>
      <span class="ft-brand-sub">— Sterk in 30 Minuten —</span>
      <p>Sportschool in <?= htmlspecialchars($_cityStr) ?>. 30 minuten circuit, Virtual Coach, 24/7 open.</p>
    </div>
    <div class="ft-col">
      <h5>Navigatie</h5>
      <ul>
        <li><a href="index.html">Home</a></li>
        <li><a href="clubs.php">Onze Clubs</a></li>
        <li><a href="prijzen.html">Prijzen</a></li>
      </ul>
    </div>
    <div class="ft-col">
      <h5>Vestigingen</h5>
      <ul>
        <?php foreach (CLUBS as $_slug => $_naam):
            $_lbl = str_starts_with($_naam, 'De Fitclub ') ? substr($_naam, 11) : $_naam;
            $_url = file_exists(__DIR__ . '/' . $_slug . '.php') ? $_slug . '.php' : 'clubs.php#' . $_slug;
        ?>
          <li><a href="<?= htmlspecialchars($_url) ?>"><?= htmlspecialchars($_lbl) ?></a></li>
        <?php endforeach; ?>
      </ul>
    </div>
  </div>
  <div class="footer-bottom">
    <p>© <?= date('Y') ?> De Fitclub. Alle rechten voorbehouden.</p>
    <p>Privacy · Algemene voorwaarden · KVK: xxxxxxxx</p>
  </div>
</footer>

<script>
window.addEventListener('scroll', () => {
  document.getElementById('nav').classList.toggle('scrolled', window.scrollY > 50);
  reveal();
});
function reveal() {
  document.querySelectorAll('.reveal:not(.visible)').forEach(el => {
    if (el.getBoundingClientRect().top < window.innerHeight - 60)
      el.classList.add('visible');
  });
}
function openMenu()  { document.getElementById('mobileMenu').classList.add('open'); }
function closeMenu() { document.getElementById('mobileMenu').classList.remove('open'); }
setTimeout(reveal, 300);
</script>
</body>
</html>
