:root{
  color-scheme: light dark;

  --bg:linear-gradient(180deg,#f3f7ff 0%,#f7f9ff 50%,#faf8f3 100%);
  --text:#111827;
  --muted:#6b7686;
}

@media (prefers-color-scheme: dark){

  :root{
    color-scheme: dark;

    --bg:radial-gradient(circle at 20% 20%, #0e1a2a 0%, #0a111a 70%) fixed;
    --text:#e6ecf5;
    --muted:#9aa6b2;
    --primary:#4f8cff;
    --border:rgba(255,255,255,0.08);
  }

}

html{
  background:#fff;
}

@media (prefers-color-scheme: dark){

  html{
    background:#0a111a;
  }

}

body{
  margin:0;

  background:var(--bg);
  background-attachment:fixed;

  color:var(--text);

  display:flex;
  flex-direction:column;
  min-height:100vh;
}
body{
  font-family:-apple-system, BlinkMacSystemFont,
  "SF Pro Display",
  "SF Pro Text",
  "Helvetica Neue",
  sans-serif;

  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;

  text-rendering:optimizeLegibility;
}

.card{
  margin:auto;   /* 👈 zentriert die Card sauber */
}



button{
  width:100%;
  padding:14px;
  margin-top:10px;
  border-radius:12px;
  border:none;
  font-weight:700;
  background:#2f6df6;
  color:white;
}

.card-grid{
  display:flex;
  gap:20px;
  align-items:center;
}


.card{
  background:white;
  padding:50px;
  border-radius:24px;
  max-width:800px;
  box-shadow:0 30px 60px rgba(0,0,0,0.12);
}

/* Layout bleibt gleich */
.card-grid{
  display:flex;
  gap:32px;
  align-items:center;
}

/* Bild größer & moderner */
.card-img{
  width:45%;
  border-radius:20px;
  object-fit:cover;
  box-shadow:0 15px 40px rgba(0,0,0,0.15);
}

/* Textbereich */
.card-content{
  width:55%;
}

/* 👇 Eyebrow (jetzt dezent) */
.eyebrow{
  font-size:0.9rem;
  color:#6b7686;
  margin-bottom:8px;
  font-weight:500;
}

/* 👇 Haupttitel (größer + stärker) */
.title{
  font-size:2.8rem;
  line-height:1.05;
  letter-spacing:-0.04em;
  font-weight:700;

  margin:0 0 14px;
}

.subtitle{
  font-size:1.08rem;
  line-height:1.65;
  color:var(--muted);

  margin-bottom:24px;
  max-width:42ch;
}
/* Buttons größer */
button{
  width:100%;
  padding:16px;
  margin-top:12px;
  border-radius:14px;
  border:none;
  font-weight:700;
  font-size:1rem;
  background:#2f6df6;
  color:white;
}

button{
  transition: all 0.2s ease;
}

button:hover{
  transform: translateY(-2px);
  box-shadow: 0 10px 20px rgba(47,109,246,0.2);
}

@media (max-width:700px){

.card{
  padding:24px;
  text-align:center;
}

.card-grid{
  flex-direction:column;
}

.card-img{
  width:100%;
}

.card-content{
  width:100%;
}

.title{
  font-size:2rem;
}

.subtitle{
  font-size:1rem;
}

}

@media (prefers-color-scheme: dark){



  body{
    background:var(--bg);
    color:var(--text);
  }

  /* Card */
  .card{
    background:rgba(255,255,255,0.04);
    backdrop-filter:blur(20px);
    -webkit-backdrop-filter:blur(20px);

    box-shadow:
      0 20px 60px rgba(0,0,0,0.6),
      inset 0 1px 0 rgba(255,255,255,0.05);
  }

  /* Text */
  .eyebrow{
    color:var(--muted);
  }

  .subtitle{
    color:var(--muted);
  }

  /* Button */
  button{
    background:linear-gradient(135deg,#4f8cff,#2f6df6);

    box-shadow:
      0 6px 14px rgba(0,0,0,0.4),
      0 0 0 1px rgba(255,255,255,0.04),
      0 4px 12px rgba(79,140,255,0.18);
  }

  button:hover{
    transform:translateY(-2px);

    box-shadow:
      0 10px 20px rgba(0,0,0,0.5),
      0 0 0 1px rgba(255,255,255,0.06),
      0 6px 16px rgba(79,140,255,0.22);
  }

}

.footer-global{
  text-align:center;
  padding:30px 16px 20px;
  font-size:0.75rem;
  color:#6b7686;
  opacity:0.6;
}

.footer-global a{
  color:#6b7686;
  text-decoration:none;
  margin:0 6px;
}

.footer-global a:hover{
  color:#2f6df6;
}

/* Dark Mode */
@media (prefers-color-scheme: dark){

  .footer-global{
    color:#9aa6b2;
    opacity:0.7;
  }

  .footer-global a{
    color:#9aa6b2;
  }

  .footer-global a:hover{
    color:#4f8cff;
  }

}

@media (max-width:700px){

  /* 🔥 Card insgesamt kompakter */
  body .card{
        transform:scale(0.94);   /* 👈 KEY: alles etwas kleiner */
    transform-origin:top center;
    padding:24px;                 /* 👈 weniger Innenabstand */
  }

  /* 🔥 Layout sauber untereinander */
  body .card-grid{
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;   /* 👈 linksbündig */
    gap:16px;
  }

  /* 🔥 Bild kleiner + ruhiger */
  body .card-grid .card-img{
    order:-1 !important;
    width:72% !important;          /* 👈 etwas kleiner */
    margin:0 0 12px 0 !important;  /* 👈 NICHT zentriert */
    
    aspect-ratio:4/5;
    object-fit:cover;
    border-radius:18px;

    box-shadow:0 10px 25px rgba(0,0,0,0.12);
  }

  /* 🔥 Text komplett links */
  body .card-grid .card-content{
    width:100% !important;
    text-align:left !important;    /* 👈 KEY */
  }

  /* 🔥 Typo feiner */
  body .title{
    font-size:1.9rem;
    line-height:1.25;
  }

  body .subtitle{
    font-size:0.95rem;
    line-height:1.4;
  }

  body .eyebrow{
    font-size:0.8rem;
  }

  /* 🔥 Buttons kompakter */
  body button{
    padding:14px;
    font-size:0.95rem;
    margin-top:8px;   /* 👈 tighter */

  }

}
/* =========================
COOKIE BANNER
========================= */

.cookie-banner{
  position: fixed;
  bottom: 20px;
  left: 50%;
  transform: translateX(-50%);
  width: min(92%, 760px);

  padding: 1.2rem 1.4rem;
  border-radius: 24px;

  background: rgba(255,255,255,0.78);
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);

  border: 1px solid rgba(255,255,255,0.6);

  box-shadow:
    0 12px 40px rgba(0,0,0,0.12),
    0 2px 10px rgba(0,0,0,0.06);

  z-index: 9999;

  display: flex;
  flex-direction: column;
  gap: 1rem;
}

.cookie-banner p{
  margin: 0;
  font-size: 0.95rem;
  line-height: 1.6;
  color: #1d1d1f;
}

.cookie-banner a{
  color: #0071e3;
  text-decoration: none;
  font-weight: 500;
}

.cookie-banner a:hover{
  text-decoration: underline;
}

.cookie-buttons{
  display: flex;
  gap: 0.8rem;
  flex-wrap: wrap;
}

.cookie-buttons button{
  border: none;
  border-radius: 14px;

  padding: 0.8rem 1.3rem;

  font-size: 0.95rem;
  font-weight: 600;

  cursor: pointer;

  transition:
    transform 0.18s ease,
    opacity 0.18s ease,
    background 0.18s ease;
}

.cookie-buttons button:hover{
  transform: translateY(-1px);
}

#accept-cookies{
  background: #0071e3;
  color: white;

  box-shadow:
    0 8px 20px rgba(0,113,227,0.25);
}

#accept-cookies:hover{
  background: #0062c4;
}

#decline-cookies{
  background: rgba(0,0,0,0.06);
  color: #1d1d1f;
}

#decline-cookies:hover{
  background: rgba(0,0,0,0.1);
}

/* =========================
MOBILE
========================= */

@media (max-width: 600px){

  .cookie-banner{
    bottom: 12px;
    padding: 1rem;
    border-radius: 20px;
  }

  .cookie-buttons{
    flex-direction: column;
  }

  .cookie-buttons button{
    width: 100%;
  }

}

/* =========================
DARK MODE
========================= */

@media (prefers-color-scheme: dark){

  .cookie-banner{
    background: rgba(18,18,22,0.82);

    border: 1px solid rgba(255,255,255,0.08);

    box-shadow:
      0 14px 40px rgba(0,0,0,0.45),
      0 2px 12px rgba(0,0,0,0.25);
  }

  .cookie-banner p{
    color: rgba(255,255,255,0.9);
  }

  .cookie-banner a{
    color: #4da3ff;
  }

  #decline-cookies{
    background: rgba(255,255,255,0.08);
    color: rgba(255,255,255,0.92);
  }

  #decline-cookies:hover{
    background: rgba(255,255,255,0.12);
  }

  #accept-cookies{
    background: #0a84ff;
  }

  #accept-cookies:hover{
    background: #2997ff;
  }

}

