/* ============================================================
   FOUNDER COCKPIT — Fussbereich
   Eigener Namensraum `fc-foot__*`. Die alten `.site-footer`-
   Regeln in premium.css sind minifiziert und werden von sieben
   Seiten geteilt; ein neuer Namensraum kann sie nicht brechen.

   Lichtmodell aus DESIGN-DIRECTION-SERVICES.md, Punkt 4:
   Fuehrungslicht oben links (~20°, Gold .13), Aufheller unten
   rechts (.05), Schattenwurf konsequent nach unten rechts.
   Kein Element bekommt einen Schatten nach links oben.
   ============================================================ */

.fc-foot {
  position: relative;
  isolation: isolate;
  background: #0C1233;
  color: rgba(255, 255, 255, .74);
  padding: clamp(56px, 7vw, 96px) 0 0;
  overflow: hidden;
  font-family: var(--font-sans, 'Inter', system-ui, sans-serif);
}

/* Haarlinie in Gold als obere Kante — laeuft an beiden Raendern aus,
   damit sie als Lichtkante gelesen wird und nicht als Rahmen. */
.fc-foot::before {
  content: '';
  position: absolute;
  inset: 0 0 auto;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(233, 203, 161, .5) 16%,
              rgba(233, 203, 161, .5) 84%, transparent);
}

/* Fuehrungslicht + Aufheller + Korn in einer Ebene, hinter dem Inhalt. */
.fc-foot::after {
  content: '';
  position: absolute;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  background:
    radial-gradient(120% 90% at 12% -12%, rgba(233, 203, 161, .13), transparent 58%),
    radial-gradient(90% 70% at 92% 108%, rgba(233, 203, 161, .05), transparent 62%);
}

/* Korn: als Kachel aus zwei Verlaeufen, keine Bilddatei (Punkt 9). */
.fc-foot-grain {
  position: absolute;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  opacity: .05;
  background-image:
    radial-gradient(rgba(255, 255, 255, .9) .5px, transparent .5px),
    radial-gradient(rgba(255, 255, 255, .6) .5px, transparent .5px);
  background-size: 3px 3px, 5px 5px;
  background-position: 0 0, 2px 1px;
}

/* ── Raster ─────────────────────────────────────────────── */

/* Vier Spalten statt zwei Bloecken: die Anschrift als eigene Spalte nimmt
   der Markenspalte rund 200 px Hoehe ab. Vorher stand rechts neben den
   Kontaktdaten eine leere Flaeche derselben Groesse. */
.fc-foot__top {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(0, .85fr) minmax(0, .8fr) minmax(0, 1.1fr);
  gap: clamp(24px, 3.2vw, 52px);
  padding-bottom: clamp(32px, 3.6vw, 48px);
  align-items: start;
}

/* Die dreizehn Leistungen bekommen ein eigenes Band ueber die volle Breite.
   In einer Spalte des oberen Rasters blieben je Saeule rund 120 px — zu wenig
   fuer "Unternehmensberatung", jede zweite Zeile waere umbrochen. */
.fc-foot__svc {
  padding: clamp(28px, 3vw, 40px) 0 clamp(30px, 3.5vw, 44px);
  border-top: 1px solid rgba(255, 255, 255, .09);
}

.fc-foot__svc-head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 16px;
  flex-wrap: wrap;
  margin-bottom: 18px;
}

.fc-foot__svc-head .fc-foot__h { margin: 0; }

/* ── Markenspalte ───────────────────────────────────────── */

.fc-foot__logo {
  display: inline-block;
  margin-bottom: 22px;
}

/* Hier liegt die helle Fassung derselben Zeichnung — Medaillon unveraendert,
   Wortmarke weiss. Kein brightness(0) invert(1) mehr: das Medaillon ist eine
   geschlossene Scheibe und wurde davon zu einem weissen Fleck. */
.fc-foot__logo img {
  display: block;
  width: clamp(190px, 16vw, 248px);
  height: auto;
}

.fc-foot__claim {
  font-size: .9rem;
  line-height: 1.7;
  max-width: 34ch;
  color: rgba(255, 255, 255, .66);
  margin-bottom: 26px;
}

.fc-foot__nap {
  font-size: .875rem;
  line-height: 1.75;
  font-style: normal;
  color: rgba(255, 255, 255, .72);
}

.fc-foot__nap a {
  color: rgba(255, 255, 255, .72);
  text-decoration: none;
  border-bottom: 1px solid rgba(233, 203, 161, .28);
  transition: color .18s var(--ease-hover, cubic-bezier(.22, 1, .36, 1)),
              border-color .18s var(--ease-hover, cubic-bezier(.22, 1, .36, 1));
}

.fc-foot__nap a:hover { color: #fff; border-bottom-color: rgba(233, 203, 161, .8); }
.fc-foot__nap .fc-foot__tel { font-variant-numeric: tabular-nums; }

.fc-foot__nap-label {
  display: block;
  font-size: .68rem;
  font-weight: 700;
  letter-spacing: .16em;
  text-transform: uppercase;
  color: rgba(233, 203, 161, .78);
  margin: 20px 0 6px;
}

.fc-foot__nap-label:first-child { margin-top: 0; }

.fc-foot__social {
  display: flex;
  gap: 10px;
  margin-top: 22px;
}

.fc-foot__social a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  border-radius: 10px;
  color: rgba(255, 255, 255, .7);
  border: 1px solid rgba(255, 255, 255, .14);
  background: rgba(255, 255, 255, .03);
  transition: color .18s var(--ease-hover, cubic-bezier(.22, 1, .36, 1)),
              border-color .18s var(--ease-hover, cubic-bezier(.22, 1, .36, 1)),
              transform .18s var(--ease-hover, cubic-bezier(.22, 1, .36, 1));
}

.fc-foot__social a svg { width: 17px; height: 17px; }

.fc-foot__social a:hover {
  color: #0C1233;
  background: #E9CBA1;
  border-color: #E9CBA1;
  transform: translateY(-2px);
}

/* ── Spaltenkoepfe und Verknuepfungen ───────────────────── */

.fc-foot__h {
  /* premium.css setzt h2 global auf Playfair. Eine Serife auf 11 px in
     Versalien wirkt duenn und zufaellig; die Direction Sheet schreibt fuer
     Eyebrows Inter 700 vor. */
  font-family: var(--font-sans, 'Inter', system-ui, sans-serif);
  font-size: .7rem;
  font-weight: 700;
  letter-spacing: .16em;
  text-transform: uppercase;
  color: #E9CBA1;
  margin: 0 0 16px;
}

.fc-foot__list { list-style: none; margin: 0; padding: 0; }
.fc-foot__list li { margin: 0 0 9px; }

.fc-foot__list a,
.fc-foot__more {
  display: inline-block;
  font-size: .875rem;
  line-height: 1.5;
  color: rgba(255, 255, 255, .68);
  text-decoration: none;
  transition: color .18s var(--ease-hover, cubic-bezier(.22, 1, .36, 1)),
              transform .18s var(--ease-hover, cubic-bezier(.22, 1, .36, 1));
}

.fc-foot__list a:hover,
.fc-foot__more:hover { color: #fff; transform: translateX(3px); }

/* Vier Saeulen bei voller Breite, weniger sobald der Platz fehlt —
   die Zahl regelt die Mindestbreite, nicht eine Bruchpunkt-Tabelle. */
.fc-foot__list--split {
  columns: 200px 4;
  column-gap: clamp(20px, 2.5vw, 40px);
}

.fc-foot__list--split li { break-inside: avoid; margin-bottom: 11px; }

.fc-foot__more {
  color: #E9CBA1;
  font-weight: 600;
  white-space: nowrap;
}

.fc-foot__more::after { content: ' →'; }

/* ── Fremde Ziele: Werkstatt und Plattform ──────────────── */

.fc-foot__ext {
  display: block;
  padding: 12px 14px;
  margin-bottom: 10px;
  border: 1px solid rgba(233, 203, 161, .22);
  border-radius: 10px;
  background: rgba(255, 255, 255, .025);
  text-decoration: none;
  transition: border-color .18s var(--ease-hover, cubic-bezier(.22, 1, .36, 1)),
              background .18s var(--ease-hover, cubic-bezier(.22, 1, .36, 1)),
              transform .18s var(--ease-hover, cubic-bezier(.22, 1, .36, 1));
}

.fc-foot__ext:hover {
  border-color: rgba(233, 203, 161, .55);
  background: rgba(233, 203, 161, .07);
  transform: translateY(-2px);
  box-shadow: 0 18px 40px -26px rgba(0, 0, 0, .8);
}

.fc-foot__ext-t {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: .875rem;
  font-weight: 600;
  color: #fff;
}

.fc-foot__ext-t svg { width: 12px; height: 12px; flex: none; opacity: .7; }

.fc-foot__ext-s {
  display: block;
  font-size: .76rem;
  line-height: 1.5;
  color: rgba(255, 255, 255, .55);
  margin-top: 3px;
}

/* ── Abschluss ──────────────────────────────────────────── */

.fc-foot__bottom {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  flex-wrap: wrap;
  padding: 22px 0 26px;
  border-top: 1px solid rgba(255, 255, 255, .1);
  font-size: .78rem;
  color: rgba(255, 255, 255, .46);
}

.fc-foot__bottom nav { display: flex; gap: 20px; flex-wrap: wrap; }

.fc-foot__bottom a {
  color: rgba(255, 255, 255, .46);
  text-decoration: none;
  transition: color .18s var(--ease-hover, cubic-bezier(.22, 1, .36, 1));
}

.fc-foot__bottom a:hover { color: #E9CBA1; }

/* ── Schmalere Fenster ──────────────────────────────────── */

@media (max-width: 1000px) {
  .fc-foot__top { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 32px 28px; }
}

@media (max-width: 560px) {
  .fc-foot__top { grid-template-columns: minmax(0, 1fr); gap: 30px; }
  .fc-foot__list--split { columns: 150px 2; }
  .fc-foot__bottom { flex-direction: column; align-items: flex-start; gap: 12px; }
  .fc-foot__svc-head { margin-bottom: 14px; }
}

@media (prefers-reduced-motion: reduce) {
  .fc-foot__social a,
  .fc-foot__list a,
  .fc-foot__more,
  .fc-foot__ext { transition: color .01ms linear; }
  .fc-foot__social a:hover,
  .fc-foot__list a:hover,
  .fc-foot__more:hover,
  .fc-foot__ext:hover { transform: none; }
}
