 :root {
  --ff-bg: #010138;
  --ff-surface: #1e1e1e;
  --ff-surface-2: #2b2b2b;
  --ff-card: #242424;
  --ff-text: #f5f5f5;
  --ff-muted: #c8c8c8;
  --ff-accent: #e11d1d;
  --ff-accent-dark: #a70f0f;
  --ff-border: rgba(255, 255, 255, 0.08);
  --ff-shadow: 0 10px 30px rgba(0, 0, 0, 0.25);
  --ff-radius: 18px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:radial-gradient(circle at top, rgba(255,255,255,.03), transparent 30%),var(--ff-bg);color:var(--ff-text);font-family:Roboto,Arial,sans-serif;line-height:1.6}
a{color:var(--ff-text)} a:hover{color:#fff}
.site-main{background:linear-gradient(180deg, rgba(255,255,255,.02), rgba(255,255,255,0))}
.hero{position:relative;min-height:58vh;display:flex;align-items:center;overflow:hidden}.hero-slides,.hero-slide,.hero-overlay{position:absolute;inset:0}.hero-slide{background-size:cover;background-position:center;opacity:0;transition:opacity 1.2s ease;transform:scale(1.02)}.hero-slide.is-active{opacity:1}.hero-overlay{background:linear-gradient(180deg,rgba(0,0,0,.35),rgba(0,0,0,.6)),linear-gradient(90deg,rgba(1,1,56,.88),rgba(1,1,56,.45))}.hero-content{position:relative;z-index:2;display:grid;grid-template-columns:clamp(120px, 14vw, 220px) 1fr;gap:clamp(1rem, 2vw, 2rem);align-items:center;padding-top:4rem;padding-bottom:4rem}.hero-brand {
  display: flex;
  align-items: center;
  justify-content: center;
}
.hero-brand img{width:100%;max-width:clamp(110px, 12vw, 190px);height:auto;filter:drop-shadow(0 8px 18px rgba(0,0,0,.35))}.hero-kicker,.section-kicker{margin-bottom:.5rem;color:#fff;font-weight:700;letter-spacing:.08em;text-transform:uppercase;font-size:.9rem}.hero h1{font-size:clamp(2rem,4vw,4rem);line-height:1.05;margin-bottom:1rem}.hero p{max-width:60ch;color:#f0f0f0}.hero-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.25rem}
.ff-navbar{background:rgba(30,30,30,.96);backdrop-filter:blur(10px);border-top:1px solid rgba(255,255,255,.08);border-bottom:3px solid var(--ff-accent)}.ff-navbar .navbar-brand,.ff-navbar .nav-link,.ff-navbar a{color:var(--ff-text)}.ff-navbar .nav-link.active,.ff-navbar .nav-link:hover,.ff-navbar .nav-link:focus,.ff-navbar .navbar-brand:hover{color:#fff}.ff-navbar .dropdown-menu{background:#1f1f1f;border-color:var(--ff-border)}.ff-navbar .dropdown-item{color:var(--ff-text)}.ff-navbar .dropdown-item:hover,.ff-navbar .dropdown-item:focus{background:rgba(225,29,29,.18);color:#fff}.ff-navbar .navbar-toggler{border-color:rgba(255,255,255,.2)}.ff-navbar .navbar-toggler:focus{box-shadow:0 0 0 .2rem rgba(225,29,29,.25)}.ff-navbar .navbar-toggler-icon{filter:invert(1)}
.nav-social a{display:inline-flex;align-items:center;justify-content:center;width:2.25rem;height:2.25rem;border-radius:999px;background:rgba(255,255,255,.08);text-decoration:none}.nav-social a:hover,.nav-social a:focus{background:rgba(225,29,29,.25)}
.section-head p,.page-intro,.page-muted{color:var(--ff-muted)}
.feed-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem}.feed-card,.feed-empty-card,.content-panel,.info-card,.vehicle-card,.member-card,.florian-card,.event-card{background:linear-gradient(180deg,#2a2a2a,#202020);border:1px solid var(--ff-border);border-radius:var(--ff-radius);overflow:hidden;box-shadow:var(--ff-shadow)}.feed-empty-card,.content-panel,.info-card{padding:1.5rem}.feed-card{display:flex;flex-direction:column;min-height:100%}.feed-card-important{border-color:rgba(225,29,29,.5);box-shadow:0 12px 32px rgba(225,29,29,.12)}.feed-card-important .feed-card-body{border-top:4px solid var(--ff-accent)}.feed-card-image{width:100%;aspect-ratio:16/10;object-fit:cover;display:block}.feed-card-body{padding:1rem;display:flex;flex-direction:column;gap:.85rem;flex:1}.feed-card-meta{display:flex;flex-wrap:wrap;gap:.5rem}.feed-card-badge{display:inline-flex;align-items:center;gap:.4rem;padding:.3rem .65rem;border-radius:999px;font-size:.78rem;font-weight:700;letter-spacing:.02em}.feed-card-badge-website,.feed-card-badge-notice,.feed-card-badge-special{background:rgba(255,255,255,.08);color:#fff}.feed-card-badge-facebook{background:rgba(24,119,242,.18);color:#dbe9ff}.feed-card-badge-instagram{background:rgba(225,48,108,.16);color:#ffd7e6}.feed-card-badge-important{background:rgba(225,29,29,.18);color:#ffd6d6}.feed-card-title{font-size:1.15rem;margin:0}.feed-card-title a,.feed-card-link,.side-card a{text-decoration:none}.feed-card-text{color:var(--ff-muted);margin:0}.feed-card-footer{display:flex;justify-content:space-between;align-items:center;margin-top:auto;font-size:.92rem;color:var(--ff-muted)}
.highlight-grid,.info-grid,.stats-grid,.contact-grid,.list-grid,.vehicle-grid,.florian-grid,.events-grid,.member-grid{display:grid;gap:1rem}.highlight-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.info-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.stats-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.contact-grid{grid-template-columns:1.1fr .9fr}.vehicle-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.florian-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.events-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
}

.member-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1rem;
}
.info-card h3,.content-panel h1,.content-panel h2,.content-panel h3{margin-top:0}
.table-clean{width:100%;border-collapse:collapse}.table-clean td,.table-clean th{padding:.9rem 1rem;border-bottom:1px solid rgba(255,255,255,.08);vertical-align:top}.table-clean tr:last-child td{border-bottom:none}
.number-list,.plain-list{padding-left:1.2rem}.number-list li,.plain-list li{margin-bottom:.45rem}
.vehicle-card button{background:none;border:none;color:inherit;width:100%;padding:0;cursor:pointer}.vehicle-card img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block}.vehicle-card .card-body,.florian-card .card-body,.event-card .card-body,.member-card .card-body{padding:1rem}.vehicle-frame{width:100%;min-height:800px;border:none;background:#2b2b2b;border-radius:var(--ff-radius);box-shadow:var(--ff-shadow)}

.member-overview{
  display:grid;
  grid-template-columns:minmax(260px,430px) 1fr;
  gap:2rem;
  align-items:start;
}

.member-overview-left{
  display:flex;
  flex-direction:column;
  gap:1rem;
}

.member-page-title{
  margin:0;
  color:var(--ff-text);
  font-size:clamp(2rem,4vw,3.5rem);
  line-height:1.05;
}

.member-photo-wrap{
  width:100%;
}

.member-hero-image{
  width:100%;
  border-radius:var(--ff-radius);
  display:block;
}

.member-photo-caption{
  margin:0;
  color:var(--ff-muted);
}

.member-overview-right{
  display:flex;
  flex-direction:column;
  gap:1rem;
  padding-top:4.5rem;
}

.member-stats-title{
  margin:0;
  color:var(--ff-text);
  font-size:1.05rem;
}

.member-filter-bar{
  display:flex;
  flex-wrap:wrap;
  gap:.75rem;
  margin:1.5rem 0 1.25rem;
}

.member-filter-bar .btn{
  border-radius:999px;
}

.filterDiv.hide{
  display:none;
}

.member-card .member-images{display:flex;justify-content:center;gap:.75rem;align-items:center;flex-wrap:wrap}.member-card img{max-height:140px;width:auto}.member-card p{margin:.3rem 0;text-align:center}.member-role{color:var(--ff-muted)}
.florian-card img{width:140px;max-width:100%;display:block;margin:0 auto 1rem}.florian-card{text-align:center}
.timeline {
  position: relative;
  margin: 20px auto 10px auto;
  padding: 20px 0;
  width: 100%;
}

.timeline::before {
  content: "";
  position: absolute;
  left: 55px;
  top: 0;
  bottom: 0;
  width: 4px;
  background: var(--ff-accent);
}

.timeline-item {
  position: relative;
  margin: 24px 0 34px 95px;
  padding: 22px 24px;
  background: #1e1e1e;
  border-left: 4px solid var(--ff-accent);
  border-radius: 18px;
  box-shadow: var(--ff-shadow);
  overflow: visible;
}

.timeline-year {
  position: absolute;
  left: -115px;
  top: 7px;
  font-size: 22px;
  font-weight: bold;
  color: var(--ff-accent);
  text-align: right;
  width: 60px;
}

.timeline-item::before {
  content: "";
  position: absolute;
  left: -51px;
  top: 18px;
  width: 15px;
  height: 14px;
  background: var(--ff-accent);
  border-radius: 50%;
  border: 2px solid #F5F5F5;
}

.timeline-content {
  overflow: auto;
}

.timeline-content img {
  max-width: 250px;
  height: auto;
  border-radius: 10px;
  margin: 10px 20px 10px 0;
  float: left;
  display: block;
}
.site-footer{background:#1a1a1a;border-top:3px solid var(--ff-accent);margin-top:3rem}.footer-title{font-size:1.1rem}.footer-text,.footer-links a{color:var(--ff-muted)}.footer-links{margin:0;padding-left:1.2rem}.site-footer-bottom{border-top:1px solid rgba(255,255,255,.08);color:var(--ff-muted)}
.timeline-source {
  margin-top: 1.5rem;
  margin-left: 95px;
  color: var(--ff-muted);
  font-size: 0.95rem;
  line-height: 1.5;
}
@media (max-width: 991.98px){
  .hero-content {
    grid-template-columns: 1fr;
    gap: 1rem;
    text-align: left;
  }

  .hero-brand {
    justify-content: flex-start;
  }

  .hero-brand img {
    max-width: clamp(90px, 24vw, 140px);
  }
  .feed-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .member-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .highlight-grid,.info-grid,.contact-grid,.stats-grid,.vehicle-grid,.florian-grid,.events-grid{grid-template-columns:1fr 1fr}.sidebar-stack{position:static}.member-overview{grid-template-columns:1fr}.timeline::before{left:20px}.timeline-year{top:4px;left:-110px;font-size:18px}.timeline-item{margin-left:50px;margin-right:0}.timeline-item::before{left:-42px}}
@media (max-width: 767.98px){.hero{min-height:48vh}
.hero-content {
    padding-top: 2.5rem;
    padding-bottom: 2.5rem;
  }

  .hero-brand img {
    max-width: clamp(85px, 28vw, 125px);
  }

  .hero h1 {
    font-size: clamp(1.9rem, 9vw, 3rem);
    line-height: 1.08;
  }
  .feed-grid,.highlight-grid,.info-grid,.contact-grid,.stats-grid,.vehicle-grid,.florian-grid,.events-grid,.member-grid{grid-template-columns:1fr}.vehicle-frame{min-height:560px}.timeline-content img{max-width:100%;display:block;margin:10px auto;float:none}}
