{"id":6795,"date":"2025-07-28T03:53:07","date_gmt":"2025-07-28T01:53:07","guid":{"rendered":"https:\/\/fvbadsaulgau.de\/jobs\/"},"modified":"2025-11-18T15:58:08","modified_gmt":"2025-11-18T14:58:08","slug":"social-partner","status":"publish","type":"page","link":"https:\/\/fvbadsaulgau.de\/index.php\/social-partner\/","title":{"rendered":"Social Partner"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"6795\" class=\"elementor elementor-6795\" data-elementor-post-type=\"page\">\n\t\t\t\t<div class=\"elementor-element elementor-element-1eae967 e-flex e-con-boxed e-con e-parent\" data-id=\"1eae967\" data-element_type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-76283f8 elementor-widget elementor-widget-html\" data-id=\"76283f8\" data-element_type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<!doctype html>\n<html lang=\"de\">\n<head>\n<meta charset=\"utf-8\" \/>\n<meta name=\"viewport\" content=\"width=device-width, initial-scale=1\" \/>\n<title>Social Partner \u2013 FV Bad Saulgau 04<\/title>\n<style>\n:root{\n  --fvs-red:#E00000;\n  --fvs-dark:#101218;\n  --fvs-mid:#6b7280;\n  --fvs-line:#e2e4ec;\n  --fvs-bg:#f5f6fb;\n  --fvs-card:#ffffff;\n  --max:1200px;\n  --r-lg:18px;\n  --r-sm:10px;\n  --shadow-sm:0 4px 16px rgba(15,17,21,.06);\n  --shadow-md:0 10px 30px rgba(15,17,21,.09);\n}\n*{box-sizing:border-box}\nhtml,body{margin:0;padding:0}\nbody{\n  font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;\n  color:var(--fvs-dark);\n  background:radial-gradient(900px 500px at 0 -10%,#ffffff 0,#f5f6fb 60%,#eef0f7 100%);\n  -webkit-font-smoothing:antialiased;\n}\n.section{padding:20px 16px}\n.wrap{max-width:var(--max);margin:0 auto}\nh1,h2,h3{margin:0}\np{margin:0 0 8px}\na{text-decoration:none;color:inherit}\n\n\/* ===== HERO ===== *\/\n.hero{padding:22px 16px 10px}\n.hero-inner{\n  max-width:var(--max);\n  margin:0 auto;\n  display:flex;\n  flex-direction:column;\n  gap:6px;\n}\n.hero-kicker{\n  font-size:11px;\n  letter-spacing:.22em;\n  text-transform:uppercase;\n  color:var(--fvs-red);\n  font-weight:800;\n}\n.hero-title{\n  font-size:clamp(19px,3.1vw,24px);\n  line-height:1.3;\n  font-weight:800;\n}\n.hero-sub{\n  font-size:13px;\n  color:var(--fvs-mid);\n  max-width:460px;\n}\n.hero-badge-row{\n  display:flex;\n  flex-wrap:wrap;\n  gap:8px;\n  margin-top:4px;\n}\n.hero-badge{\n  background:#111;\n  color:#fff;\n  border-radius:999px;\n  padding:6px 12px;\n  font-size:11px;\n  display:inline-flex;\n  align-items:center;\n  gap:6px;\n  box-shadow:var(--shadow-sm);\n}\n.hero-badge span{\n  padding:2px 7px;\n  border-radius:999px;\n  background:#fff;\n  color:var(--fvs-red);\n  font-weight:800;\n  font-size:10px;\n}\n\n\/* ===== PARTNER GRID ===== *\/\n.partner-section{padding-top:6px}\n.partner-grid{\n  display:grid;\n  grid-template-columns:repeat(2,minmax(0,1fr));\n  gap:12px;\n  align-items:stretch;\n}\n@media(min-width:900px){\n  .partner-grid{grid-template-columns:repeat(4,minmax(0,1fr))}\n}\n.partner-error{\n  margin-top:10px;\n  font-size:12px;\n  color:var(--fvs-mid);\n}\n\n\/* ===== PARTNER CARD ===== *\/\n.partner-card{\n  background:var(--fvs-card);\n  border-radius:var(--r-lg);\n  border:1px solid var(--fvs-line);\n  box-shadow:var(--shadow-sm);\n  padding:12px 12px 14px;\n  display:flex;\n  flex-direction:column;\n  align-items:center;\n  text-align:center;\n  gap:8px;\n  height:100%;\n}\n.partner-tag{\n  display:inline-flex;\n  align-items:center;\n  gap:6px;\n  padding:4px 10px;\n  border-radius:999px;\n  font-size:11px;\n  font-weight:700;\n  background:rgba(224,0,0,.06);\n  color:var(--fvs-red);\n  border:1px solid rgba(224,0,0,.32);\n}\n.partner-tag::before{\n  content:\"\";\n  width:12px;height:12px;\n  border-radius:50%;\n  border:2px solid #0bbf4b;\n  background:#0bbf4b;\n  box-shadow:0 0 0 2px rgba(11,191,75,.25);\n}\n.partner-logo{\n  width:56px;height:56px;\n  border-radius:16px;\n  background:#fff;\n  border:1px solid var(--fvs-line);\n  display:grid;\n  place-items:center;\n  overflow:hidden;\n}\n.partner-logo img{\n  max-width:100%;\n  max-height:100%;\n  display:block;\n}\n.partner-name{\n  font-size:14px;\n  font-weight:700;\n}\n.partner-industry{\n  font-size:11px;\n  color:var(--fvs-mid);\n}\n.partner-role{\n  font-size:10px;\n  letter-spacing:.18em;\n  text-transform:uppercase;\n  color:var(--fvs-mid);\n  margin-top:2px;\n}\n.partner-text{\n  font-size:12px;\n  color:#191d25;\n}\n\n\/* Buttons *\/\n.partner-actions{\n  margin-top:4px;\n  display:flex;\n  flex-wrap:wrap;\n  justify-content:center;\n  gap:6px;\n}\n.btn{\n  --btn-bg:#fff;\n  --btn-fg:#111;\n  --btn-bd:#e0e1ea;\n  --btn-shadow:0 3px 10px rgba(15,17,21,.05);\n  appearance:none;\n  border:1px solid var(--btn-bd);\n  background:var(--btn-bg);\n  color:var(--btn-fg);\n  border-radius:999px;\n  padding:6px 10px;\n  font-weight:700;\n  font-size:11px;\n  display:inline-flex;\n  align-items:center;\n  gap:6px;\n  cursor:pointer;\n  transition:transform .12s ease, box-shadow .12s ease, border-color .12s ease, background .12s ease, color .12s ease;\n  box-shadow:var(--btn-shadow);\n}\n.btn:hover{\n  transform:translateY(-1px);\n  box-shadow:0 6px 14px rgba(15,17,21,.10);\n}\n.btn.primary{\n  --btn-bg:linear-gradient(180deg,#ff3b3b 0%,#e00000 100%);\n  --btn-fg:#fff;\n  --btn-bd:#d70000;\n  --btn-shadow:0 6px 16px rgba(224,0,0,.30);\n}\n.btn.highlight{\n  --btn-bg:rgba(7,63,160,.05);\n  --btn-fg:#073fa0;\n  --btn-bd:rgba(7,63,160,.32);\n}\n.btn span.bullet{\n  width:6px;height:6px;border-radius:50%;background:currentColor;opacity:.9;\n}\n\n\/* ===== EVENT: SULGEMER ADVENT ===== *\/\n.event-section{padding-top:12px}\n.event-card{\n  background:radial-gradient(circle at 0 0,#fff6ed 0,#fff 45%,#f5f6fb 100%);\n  border-radius:var(--r-lg);\n  border:1px solid #f2d3b2;\n  box-shadow:var(--shadow-md);\n  padding:16px 14px 16px;\n  display:grid;\n  gap:10px;\n}\n@media(min-width:880px){\n  .event-card{\n    grid-template-columns:2fr 3fr;\n    align-items:center;\n  }\n}\n.event-label{\n  font-size:11px;\n  letter-spacing:.18em;\n  text-transform:uppercase;\n  color:#b45309;\n  font-weight:800;\n}\n.event-title{\n  font-size:17px;\n  font-weight:800;\n  margin-top:2px;\n}\n.event-sub{\n  font-size:13px;\n  color:#7c2d12;\n}\n.event-list{\n  font-size:13px;\n  color:#262b35;\n}\n.event-list p{margin-bottom:4px}\n.event-times{\n  font-size:12px;\n  color:#7c2d12;\n  margin-top:4px;\n}\n.event-chip-row{\n  display:flex;\n  flex-wrap:wrap;\n  gap:6px;\n  margin-top:6px;\n}\n.event-chip{\n  font-size:11px;\n  padding:4px 8px;\n  border-radius:999px;\n  background:rgba(220,38,38,.05);\n  border:1px solid rgba(220,38,38,.25);\n  color:#b91c1c;\n}\n.event-actions{\n  display:flex;\n  flex-wrap:wrap;\n  gap:6px;\n  margin-top:8px;\n}\n\n\/* ===== ERKL\u00c4R-BLOCK ===== *\/\n.deeptxt{padding-top:10px}\n.deeptxt-card{\n  background:#fff;\n  border-radius:var(--r-lg);\n  border:1px solid var(--fvs-line);\n  box-shadow:var(--shadow-sm);\n  padding:16px 14px 18px;\n}\n.deeptxt h2{\n  font-size:15px;\n  margin-bottom:4px;\n}\n.deeptxt p{\n  font-size:13px;\n  margin-bottom:6px;\n  color:#20242e;\n}\n.deeptxt-strong{font-weight:700;}\n\n@media(min-width:780px){\n  .section{padding:22px}\n  .deeptxt-card{padding:18px 18px 20px;}\n}\n\n\/* Focus *\/\na:focus-visible,.btn:focus-visible{\n  outline:2px solid var(--fvs-red);\n  outline-offset:2px;\n  border-radius:12px;\n}\n<\/style>\n<\/head>\n<body>\n\n<!-- HERO -->\n<section class=\"hero\">\n  <div class=\"hero-inner\">\n    <div class=\"hero-kicker\">Social Partner \u00b7 FV Bad Saulgau 04<\/div>\n    <h1 class=\"hero-title\">SOZIAL. REGIONAL. ZUKUNFT. \u2013 UNSERE SOCIAL PARTNER \ud83d\udd34\u26aa<\/h1>\n    <p class=\"hero-sub\">\n      Unternehmen mit eigener Social-Partner-Profilseite \u2013 sichtbar in Jobs, Content und regionaler Kommunikation.\n    <\/p>\n    <div class=\"hero-badge-row\">\n      <div class=\"hero-badge\">\n        <span>1904%<\/span> Oberschwaben \u00b7 Verein \u00d7 Unternehmen\n      <\/div>\n    <\/div>\n  <\/div>\n<\/section>\n\n<!-- SOCIAL PARTNER GRID -->\n<section class=\"section partner-section\">\n  <div class=\"wrap\">\n    <div id=\"partner-grid\" class=\"partner-grid\"><\/div>\n    <div id=\"partner-error\" class=\"partner-error\" style=\"display:none\"><\/div>\n  <\/div>\n<\/section>\n\n<!-- EVENT: SULGEMER ADVENT -->\n<section class=\"section event-section\">\n  <div class=\"wrap\">\n    <article class=\"event-card\">\n      <div>\n        <div class=\"event-label\">Veranstaltung \u00b7 Bad Saulgau<\/div>\n        <h2 class=\"event-title\">Sulgemer Advent \u2013 FVS-H\u00fctte mit Herz &amp; Feuerwurst.<\/h2>\n        <p class=\"event-sub\">\n          Festlich geschm\u00fcckter Oberamteihof, regionale H\u00fctten, Musik &amp; Lichterglanz \u2013 mittendrin der FV Bad Saulgau 04.\n        <\/p>\n      <\/div>\n      <div>\n        <div class=\"event-list\">\n          <p><strong>Wann?<\/strong> An allen vier Adventswochenenden ab 30.&nbsp;November.<\/p>\n          <p><strong>Wo?<\/strong> Oberamteihof beim Rathaus \u00b7 88348 Bad Saulgau.<\/p>\n          <p><strong>Zeiten:<\/strong> Freitag 14\u201320 Uhr \u00b7 Samstag &amp; Sonntag 11\u201320 Uhr.<\/p>\n        <\/div>\n        <div class=\"event-times\">\n          Unsere H\u00fctte: Gl\u00fchwein, Hot-Aperol, Punsch, FVS-Burger und die FVS-Feuerwurst \u2013 die beste Wurst der Bezirksliga.\n        <\/div>\n        <div class=\"event-chip-row\">\n          <span class=\"event-chip\">Gemeinschaft erleben<\/span>\n          <span class=\"event-chip\">Region schmecken<\/span>\n          <span class=\"event-chip\">FVS hautnah<\/span>\n        <\/div>\n        <div class=\"event-actions\">\n          <a class=\"btn primary\" href=\"https:\/\/fvbadsaulgau.de\/sulgemer-advent\/\" target=\"_blank\" rel=\"noopener\">\n            <span class=\"bullet\"><\/span> Zur FVS-Adventseite\n          <\/a>\n          <a class=\"btn highlight\" href=\"https:\/\/www.bad-saulgau-erleben.de\/sulgemer-advent\/\" target=\"_blank\" rel=\"noopener\">\n            <span class=\"bullet\"><\/span> Zur Veranstalterseite\n          <\/a>\n        <\/div>\n      <\/div>\n    <\/article>\n  <\/div>\n<\/section>\n\n<!-- ERKL\u00c4R-BLOCK -->\n<section class=\"section deeptxt\">\n  <div class=\"wrap\">\n    <article class=\"deeptxt-card\">\n      <h2>Was Social Partner bei uns bedeutet.<\/h2>\n      <p>\n        Social Partner sind ein neues, deutschlandweit einmaliges Konzept, das Sponsoring weiter denkt:\n        weg von reiner Werbefl\u00e4che \u2013 hin zu echter Partnerschaft, gemeinsamer Sichtbarkeit und moderner regionaler Vernetzung.\n      <\/p>\n      <p>Es geht nicht um Logos. Nicht um klassische Werbung. Es geht um Menschen, um Region, um gemeinsame Ziele.<\/p>\n      <p>\n        Unternehmen, die Social Partner werden, stehen nicht am Rand \u2013 sie werden aktiver Teil unserer Geschichte,\n        unserer Mission und unseres digitalen Wachstums.\n      <\/p>\n      <p>\n        Jeder Social Partner erh\u00e4lt eine eigene Pr\u00e4senz, eine eigene Job- und Karriereseite und wird sichtbar in unserer\n        gesamten digitalen Kommunikation eingebunden \u2013 authentisch, nachhaltig, partnerschaftlich.\n      <\/p>\n      <p>\n        Verein + Unternehmen + Region bilden hier ein Netzwerk, das deutlich \u00fcber gew\u00f6hnliches Sponsoring hinausgeht.\n      <\/p>\n      <p class=\"deeptxt-strong\">\n        Zusammen wachsen. Zusammen sichtbar. Zusammen 1904% Oberschwaben.\n      <\/p>\n      <p>Willkommen im st\u00e4rksten regionalen Partnerschaftsmodell des Amateurfu\u00dfballs.<\/p>\n    <\/article>\n  <\/div>\n<\/section>\n\n<script>\n(function(){\n  const API = '\/wp-json\/fvs\/v1';\n  const grid = document.getElementById('partner-grid');\n  const err  = document.getElementById('partner-error');\n\n  const SOCIAL_SLUGS_FALLBACK = ['knoll','claas','spaeh'];\n\n  async function fetchJSON(url){\n    const res = await fetch(url,{credentials:'same-origin'});\n    if(!res.ok) throw new Error(res.status+' '+res.statusText);\n    return res.json();\n  }\n\n  function normArray(v){\n    return Array.isArray(v) ? v.map(x => String(x).toLowerCase()) : [];\n  }\n\n  function isSocialPartner(s){\n    const slug = (s.slug || '').toLowerCase();\n\n    \/\/ harte Ausnahme: Sulgemer Advent ist Event, kein Social Partner\n    if(slug === 'sulgemer-advent' || slug === 'sulgemer-advent-2') return false;\n\n    const tags  = normArray(s.tags);\n    const roles = normArray(s.roles);\n\n    if(typeof s.social_partner === 'boolean' && s.social_partner) return true;\n    if(tags.includes('social-partner')) return true;\n    if(roles.includes('social-partner')) return true;\n\n    if(SOCIAL_SLUGS_FALLBACK.includes(slug)) return true;\n\n    return false;\n  }\n\n  function roleLine(s){\n    const parts=[];\n    const lower=(Array.isArray(s.roles)?s.roles:[]).map(r=>String(r).toLowerCase());\n    const add=(cond,label)=>{ if(cond) parts.push(label); };\n    add(lower.includes('bande')||s.bande,'BANDEN-PARTNER');\n    add(lower.includes('jugend')||s.jugend,'JUGENDF\u00d6RDERER');\n    add(lower.includes('jobs')||s.jobs,'FVS-JOBS');\n    add(lower.includes('social-media')||lower.includes('social')||s.social,'SOCIAL-MEDIA');\n    return parts.length?parts.join(' \u00b7 '):'SOCIAL PARTNER';\n  }\n\n  function industryText(s){\n    if(s.industry) return s.industry;\n    if(s.sector) return s.sector;\n    return '';\n  }\n\n  function textExcerpt(s){\n    let txt = s.excerpt || s.kicker || s.description ||\n      'Social Partner mit eigener Profilseite beim FV Bad Saulgau 04.';\n    txt = String(txt).replace(\/\\s+\/g,' ').trim();\n    if(txt.length>160) txt = txt.slice(0,157)+'\u2026';\n    return txt;\n  }\n\n  function createCard(s){\n    const slug=(s.slug||'').toLowerCase();\n    const card=document.createElement('article');\n    card.className='partner-card';\n    card.dataset.slug=slug;\n\n    const logoUrl = s.logo || 'http:\/\/fvbadsaulgau.de\/wp-content\/uploads\/2024\/01\/Design-ohne-Titel4.png';\n    const profileUrl = s.profile || s.link || s.url || '#';\n    const shortName = s.short_name || s.name || 'diesem Partner';\n\n    card.innerHTML = `\n      <div class=\"partner-tag\">Social Partner<\/div>\n      <div class=\"partner-logo\">\n        <img decoding=\"async\" src=\"${logoUrl}\" alt=\"${s.name || ''}\">\n      <\/div>\n      <div class=\"partner-name\">${s.name || slug.toUpperCase()}<\/div>\n      <div class=\"partner-industry\">${industryText(s)}<\/div>\n      <div class=\"partner-role\">${roleLine(s)}<\/div>\n      <p class=\"partner-text\">${textExcerpt(s)}<\/p>\n      <div class=\"partner-actions\">\n        <a class=\"btn primary\" href=\"${profileUrl}\" target=\"_blank\" rel=\"noopener\">\n          <span class=\"bullet\"><\/span> Profil ansehen\n        <\/a>\n        <a class=\"btn highlight jobs-btn\" data-slug=\"${slug}\" href=\"#\" target=\"_blank\" rel=\"noopener\" style=\"display:none\">\n          <span class=\"bullet\"><\/span> Jobs bei ${shortName}\n        <\/a>\n      <\/div>\n    `;\n    return card;\n  }\n\n  async function checkJobsForPartner(slug){\n    try{\n      const jobs = await fetchJSON(`${API}\/jobs?sponsor=${encodeURIComponent(slug)}`);\n      const hasJobs = Array.isArray(jobs) && jobs.length>0;\n      const btn = grid.querySelector(`.jobs-btn[data-slug=\"${slug}\"]`);\n      if(!btn) return;\n      if(hasJobs){\n        btn.href = `\/fvs-jobs\/?sponsor=${encodeURIComponent(slug)}`;\n        btn.style.display = 'inline-flex';\n      }else{\n        btn.remove();\n      }\n    }catch{\n      const btn = grid.querySelector(`.jobs-btn[data-slug=\"${slug}\"]`);\n      if(btn) btn.remove();\n    }\n  }\n\n  async function init(){\n    try{\n      const sponsors = await fetchJSON(`${API}\/sponsors`);\n      const bySlug={};\n\n      sponsors.forEach(s=>{\n        const slug=(s.slug||'').toLowerCase();\n        if(!slug || bySlug[slug]) return;\n        if(!isSocialPartner(s)) return;\n        bySlug[slug]=s;\n      });\n\n      const list = Object.values(bySlug);\n      if(!list.length){\n        err.textContent='Derzeit sind noch keine Social Partner hinterlegt.';\n        err.style.display='block';\n        return;\n      }\n\n      grid.innerHTML='';\n      list.forEach(s=>grid.appendChild(createCard(s)));\n      await Promise.all(list.map(s=>checkJobsForPartner((s.slug||'').toLowerCase())));\n    }catch(e){\n      err.textContent='Fehler beim Laden der Social Partner. Pr\u00fcfe den fvs\/v1\/sponsors Endpunkt.';\n      err.style.display='block';\n    }\n  }\n\n  if(grid) init();\n})();\n<\/script>\n\n<\/body>\n<\/html>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>Social Partner \u2013 FV Bad Saulgau 04 Social Partner \u00b7 FV Bad Saulgau 04 SOZIAL. REGIONAL. ZUKUNFT. \u2013 UNSERE SOCIAL PARTNER \ud83d\udd34\u26aa Unternehmen mit eigener Social-Partner-Profilseite \u2013 sichtbar in Jobs, Content und regionaler Kommunikation. 1904% Oberschwaben \u00b7 Verein \u00d7 Unternehmen Veranstaltung \u00b7 Bad Saulgau Sulgemer Advent \u2013 FVS-H\u00fctte mit Herz &amp; Feuerwurst. Festlich geschm\u00fcckter Oberamteihof, [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_acf_changed":false,"footnotes":""},"sponsor":[],"class_list":["post-6795","page","type-page","status-publish","hentry"],"acf":[],"_links":{"self":[{"href":"https:\/\/fvbadsaulgau.de\/index.php\/wp-json\/wp\/v2\/pages\/6795","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/fvbadsaulgau.de\/index.php\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/fvbadsaulgau.de\/index.php\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/fvbadsaulgau.de\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/fvbadsaulgau.de\/index.php\/wp-json\/wp\/v2\/comments?post=6795"}],"version-history":[{"count":10,"href":"https:\/\/fvbadsaulgau.de\/index.php\/wp-json\/wp\/v2\/pages\/6795\/revisions"}],"predecessor-version":[{"id":7233,"href":"https:\/\/fvbadsaulgau.de\/index.php\/wp-json\/wp\/v2\/pages\/6795\/revisions\/7233"}],"wp:attachment":[{"href":"https:\/\/fvbadsaulgau.de\/index.php\/wp-json\/wp\/v2\/media?parent=6795"}],"wp:term":[{"taxonomy":"sponsor","embeddable":true,"href":"https:\/\/fvbadsaulgau.de\/index.php\/wp-json\/wp\/v2\/sponsor?post=6795"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}