:root{--navy:#071d3c;--navy2:#031125;--gold:#c8a64a;--cream:#f7f3eb;--paper:#fffdf8;--text:#17243a;--muted:#697181;--line:#e3d8c4;--shadow:0 24px 70px rgba(0,0,0,.16)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,Segoe UI,Arial,sans-serif;color:var(--text);background:radial-gradient(circle at top left,#fff 0,#f7f3eb 42%,#efe6d6 100%)}h1,h2,h3{font-family:Georgia,'Times New Roman',serif;font-weight:400;margin:0}a{text-decoration:none;color:inherit}.site-header{height:92px;background:rgba(255,253,248,.88);backdrop-filter:blur(16px);display:flex;align-items:center;justify-content:space-between;padding:0 6vw;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:50}.brand{display:flex;gap:14px;align-items:center;min-width:260px}.brand img{width:62px;height:62px;object-fit:contain}.brand strong{font-family:Georgia,serif;font-size:27px;letter-spacing:.08em}.brand small{display:block;font-size:11px;color:var(--muted);letter-spacing:.05em}.nav{display:flex;align-items:center;gap:18px}.nav>a:not(.btn),.join-toggle{font-weight:650;font-size:14px;color:#17243a;position:relative;background:none;border:0;cursor:pointer;padding:10px 0}.nav>a:not(.btn)::after,.join-toggle::after{content:"";position:absolute;left:0;bottom:4px;width:0;height:2px;background:var(--gold);transition:.28s}.nav>a:hover::after,.join-toggle:hover::after{width:100%}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 22px;border-radius:999px;font-weight:800;letter-spacing:.02em;position:relative;overflow:hidden;isolation:isolate}.btn::before{content:"";position:absolute;inset:0;border-radius:inherit;padding:2px;background:conic-gradient(from var(--angle,0deg),transparent 0 23%,var(--gold) 30%,transparent 40% 100%);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:0;transition:.25s}.btn:hover::before{opacity:1;animation:spin 1.4s linear infinite}.btn-primary{background:linear-gradient(135deg,var(--navy),#0e356b);color:white;box-shadow:0 12px 30px rgba(7,29,60,.22)}.btn-outline{border:1px solid var(--gold);color:var(--navy);background:rgba(255,255,255,.62)}@property --angle{syntax:'<angle>';inherits:false;initial-value:0deg}@keyframes spin{to{--angle:360deg}}.join-menu{position:relative}.join-toggle span{color:var(--gold);font-size:18px;margin-left:4px}.join-panel{position:absolute;right:0;top:46px;width:330px;background:rgba(255,253,248,.97);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:24px;padding:10px;display:grid;gap:6px;opacity:0;visibility:hidden;transform:translateY(8px);transition:.22s}.join-menu.open .join-panel{opacity:1;visibility:visible;transform:translateY(0)}.join-panel a{padding:14px;border-radius:16px;display:block}.join-panel a:hover{background:#f2eadc;transform:translateX(3px)}.join-panel small{display:block;color:var(--muted);margin-top:4px}.menu-btn{display:none;background:var(--navy);color:white;border:0;border-radius:12px;padding:10px 12px;font-size:20px}.hero{min-height:720px;display:grid;grid-template-columns:1.02fr .98fr;align-items:center;gap:5vw;padding:6vw}.hero h1{font-size:clamp(48px,7vw,92px);line-height:.92;color:var(--navy)}.lead{font-size:clamp(18px,2vw,24px);line-height:1.55;color:#465064;max-width:760px}.eyebrow{color:var(--gold);font-weight:900;letter-spacing:.22em;font-size:12px;text-transform:uppercase}.motto-block{margin-top:24px;display:inline-grid;gap:5px;border-left:4px solid var(--gold);padding:16px 20px;background:rgba(255,253,248,.72);border-radius:0 20px 20px 0;box-shadow:0 10px 30px rgba(7,29,60,.08)}.motto-block span{color:var(--gold);font-weight:900;letter-spacing:.18em;text-transform:uppercase;font-size:11px}.motto-block strong{font-family:Georgia,'Times New Roman',serif;color:var(--navy);font-size:clamp(26px,3vw,42px);font-weight:400}.motto-block small{color:var(--muted);font-weight:700}.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:30px}.hero-visual{position:relative}.hero-card,.photo{min-height:560px;border-radius:44px;background-image:linear-gradient(180deg,rgba(3,17,37,.08),rgba(3,17,37,.35)),var(--img);background-size:cover;background-position:center;box-shadow:var(--shadow);transition:.45s}.hero-card:hover,.photo:hover,.card:hover{transform:translateY(-8px)}.float-badge{position:absolute;left:-28px;bottom:34px;background:var(--paper);border:1px solid var(--line);border-radius:22px;padding:18px 22px;box-shadow:var(--shadow);max-width:240px}.float-badge strong{display:block;color:var(--navy);font-size:24px}.section{padding:90px 6vw}.alt{background:linear-gradient(135deg,#071d3c,#031125);color:white}.section-head{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:32px}.section h2{font-size:clamp(34px,4vw,58px);color:inherit}.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.feature,.card,.contact-box,.timeline>div{background:rgba(255,253,248,.88);border:1px solid var(--line);border-radius:30px;padding:28px;box-shadow:0 12px 38px rgba(0,0,0,.08);transition:.28s}.feature:hover{transform:translateY(-8px);border-color:var(--gold)}.feature span{font-size:34px;color:var(--gold)}.feature h3,.card h3{font-size:28px;margin:14px 0 8px;color:var(--navy)}.feature p,.card p,.legal p{color:var(--muted);line-height:1.7}.split{display:grid;grid-template-columns:1fr 1fr;gap:5vw;align-items:center}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:28px}.stats div{border:1px solid rgba(200,166,74,.45);border-radius:18px;padding:16px;background:rgba(255,255,255,.08)}.stats strong{display:block;font-size:30px;color:var(--gold)}.map-card{background:white;border-radius:30px;padding:18px;box-shadow:var(--shadow);overflow:hidden}.map-card img{width:100%;display:block;border-radius:20px;filter:contrast(1.03)}.card{padding:0;overflow:hidden}.card-img{height:250px;background-image:linear-gradient(180deg,transparent,rgba(3,17,37,.35)),var(--img);background-size:cover;background-position:center}.card-body{padding:26px}.page-hero{min-height:430px;margin:34px 6vw 0;border-radius:42px;padding:70px;display:flex;align-items:end;color:white;background-image:linear-gradient(90deg,rgba(3,17,37,.82),rgba(3,17,37,.24)),var(--img);background-size:cover;background-position:center;box-shadow:var(--shadow)}.page-hero h1{font-size:clamp(46px,7vw,88px)}.page-hero .lead{color:#f4efe6}.legal{max-width:980px;margin:auto}.legal h2{font-size:34px;margin:30px 0 10px;color:var(--navy)}.contact-box{max-width:820px;margin:auto}form{display:grid;gap:14px}input,textarea{width:100%;border:1px solid var(--line);border-radius:16px;padding:16px 18px;font:inherit;background:white}textarea{min-height:140px;resize:vertical}.timeline{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.timeline strong{width:46px;height:46px;border-radius:50%;display:grid;place-items:center;background:var(--navy);color:white}footer{background:var(--navy2);color:white;display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:34px;padding:58px 6vw}footer img{width:70px}footer a{display:block;color:#ddd5c4;margin:10px 0}footer p{color:#c7cfda;line-height:1.7}@media(max-width:1000px){.menu-btn{display:block}.site-header{height:auto;min-height:84px;align-items:flex-start;padding:14px 5vw}.nav{display:none;position:absolute;left:5vw;right:5vw;top:88px;background:var(--paper);border:1px solid var(--line);border-radius:24px;padding:18px;box-shadow:var(--shadow);align-items:stretch;flex-direction:column}.nav.open{display:flex}.join-panel{position:static;width:auto;opacity:1;visibility:visible;transform:none;box-shadow:none;margin-top:8px;display:none}.join-menu.open .join-panel{display:grid}.hero,.split{grid-template-columns:1fr}.grid-4,.grid-3,.timeline,footer{grid-template-columns:1fr 1fr}.hero{padding-top:40px}.hero-card{min-height:380px}.float-badge{left:20px}.stats{grid-template-columns:1fr 1fr}}@media(max-width:640px){.brand small{display:none}.brand{min-width:auto}.brand strong{font-size:22px}.hero{min-height:auto;padding:44px 5vw}.section{padding:58px 5vw}.grid-4,.grid-3,.timeline,footer,.stats{grid-template-columns:1fr}.page-hero{margin:18px 5vw 0;padding:34px;min-height:360px}.section-head{display:block}.hero-actions{flex-direction:column}.btn{width:100%}}
select{width:100%;border:1px solid var(--line);border-radius:16px;padding:16px 18px;font:inherit;background:white;color:var(--text)}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.form-grid .full{grid-column:1/-1}.check-row{display:flex;gap:12px;align-items:flex-start;color:var(--muted);line-height:1.55}.check-row input{width:auto;margin-top:4px}.form-status{min-height:24px;font-weight:800}.form-status.success{color:#1d7a3a}.form-status.error{color:#b42318}button:disabled{opacity:.65;cursor:not-allowed}@media(max-width:700px){.form-grid{grid-template-columns:1fr}}


/* Sichere Bild-Einbindung: echte <img src="..."> statt CSS-Variablen */
.hero-card,
.card-img,
.page-hero {
  position: relative;
  overflow: hidden;
  background-image: none !important;
}
.hero-card > img,
.card-img > img,
.page-hero-bg {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
}
.hero-card > img {
  min-height: 560px;
  border-radius: 44px;
}
.card-img > img {
  height: 250px;
}
.page-hero-bg {
  position: absolute;
  inset: 0;
  z-index: 0;
}
.page-hero::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg,rgba(3,17,37,.82),rgba(3,17,37,.24));
  z-index: 1;
}
.page-hero > div {
  position: relative;
  z-index: 2;
}
.map-card img,
footer img,
.brand img {
  display: block;
}
@media(max-width:1000px){.hero-card > img{min-height:380px}}


/* Fix: normale Bildflächen auf Unterseiten wieder über CSS-Variable anzeigen */
.photo{
  background-image:linear-gradient(180deg,rgba(3,17,37,.08),rgba(3,17,37,.35)),var(--img) !important;
  background-size:cover;
  background-position:center;
  min-height:560px;
}
@media(max-width:1000px){.photo{min-height:380px}}


/* Fix Über-uns: Bild als echtes IMG, damit es sicher lädt */
.photo-with-img{
  background-image:none !important;
  overflow:hidden;
}
.photo-with-img img{
  width:100%;
  height:100%;
  min-height:560px;
  object-fit:cover;
  object-position:center;
  display:block;
}
@media(max-width:1000px){.photo-with-img img{min-height:380px}}
