/* Gemeinsamer Footer aller Hauptseiten (Start, Über mich, Impressum, Datenschutz — DE + EN).
   Vanilla-Umsetzung der 4-Spalten-Footer-Vorlage; Verlauf nur als Akzent (Brand Cookbook:
   Linie 3 px und Glow; keine Verlaufs-Buttons, kein Verlaufstext). Ohne Newsletter-Formular (kein Versanddienst/Double-Opt-in) und ohne
   Hell/Dunkel-Umschalter (Website ist bewusst nur dunkel). */
.site-foot{position:relative;isolation:isolate;overflow:hidden;background:var(--ink,#08070C);color:var(--bone,#EDECEA);
  padding:clamp(56px,8vw,96px) var(--edge,clamp(20px,6vw,96px)) 28px;font-family:var(--font-body,'Inter',sans-serif);}
.site-foot::before{content:"";position:absolute;top:0;left:0;right:0;height:3px;
  background:linear-gradient(90deg,#F72585,#7209B7 50%,#4361EE);}
.site-foot::after{content:"";position:absolute;z-index:-1;width:520px;height:520px;right:-160px;top:-220px;border-radius:50%;
  background:radial-gradient(circle,rgba(114,9,183,.30),rgba(114,9,183,0) 70%);pointer-events:none;}
.sf-grid{display:grid;grid-template-columns:minmax(0,1.4fr) repeat(3,minmax(0,1fr));gap:clamp(32px,4vw,56px);}
@media (max-width:980px){ .sf-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);} }
@media (max-width:560px){ .sf-grid{grid-template-columns:minmax(0,1fr);} }
.sf-brand img{width:150px;height:auto;display:block;}
.sf-claim{margin-top:14px;font-family:var(--font-display,'Encode Sans',sans-serif);font-weight:900;text-transform:uppercase;
  letter-spacing:0.02em;font-size:13px;color:#EDECEA;display:inline-block;}
.sf-text{margin-top:12px;font-size:14px;line-height:1.6;color:#B9B6BF;max-width:36ch;}
.sf-cta{display:inline-flex;align-items:center;gap:8px;margin-top:22px;padding:12px 22px;border-radius:999px;
  border:1px solid #EDECEA;background:transparent;color:#EDECEA;font-weight:600;font-size:12px;
  letter-spacing:0.08em;text-transform:uppercase;text-decoration:none;transition:background .2s ease,color .2s ease;}
.sf-cta:hover{background:#EDECEA;color:#08070C;}
.sf-col h3{font-family:var(--font-body,'Inter',sans-serif);font-size:11px;font-weight:600;letter-spacing:0.16em;
  text-transform:uppercase;color:#EDECEA;margin-bottom:16px;}
.sf-col nav,.sf-col address{display:grid;gap:10px;font-style:normal;font-size:14px;line-height:1.5;color:#B9B6BF;}
.sf-col a{color:#D9D7DC;text-decoration:none;transition:color .2s ease;}
.sf-col a:hover{color:#fff;text-decoration:underline;text-underline-offset:3px;}
.sf-social{display:flex;gap:12px;}
.sf-icon{width:42px;height:42px;border-radius:50%;border:1px solid rgba(237,236,234,.28);display:inline-flex;align-items:center;
  justify-content:center;color:#EDECEA;transition:border-color .2s ease,background .2s ease;}
.sf-icon:hover{border-color:#fff;background:rgba(114,9,183,.35);}
.sf-icon svg{width:18px;height:18px;fill:currentColor;}
.sf-bottom{margin-top:clamp(40px,6vw,64px);padding-top:22px;border-top:1px solid rgba(237,236,234,.14);display:flex;flex-wrap:wrap;
  justify-content:space-between;align-items:center;gap:12px 24px;font-size:13px;color:#A9A6AF;}
.sf-bottom nav{display:flex;flex-wrap:wrap;gap:8px 20px;}
.sf-bottom a{color:#D9D7DC;text-decoration:none;}
.sf-bottom a:hover{color:#fff;text-decoration:underline;text-underline-offset:3px;}
:where(.site-foot a):focus-visible{outline:2px solid #4CC9F0;outline-offset:3px;}
