:root {
  --bg: #0f172a;
  --bg-soft: #111827;
  --card: rgba(255, 255, 255, 0.08);
  --card-border: rgba(255, 255, 255, 0.12);
  --text: #f8fafc;
  --muted: #cbd5e1;
  --accent: #38bdf8;
  --accent-2: #22c55e;
  --shadow: 0 20px 50px rgba(0, 0, 0, 0.3);
  --radius: 22px;
  --max: 1180px;
}

html {
  scroll-behavior: smooth;
}

body {
  background: linear-gradient(135deg, #020617 0%, #0f172a 45%, #111827 100%);
  color: var(--text);
}

.wp-site-blocks,
.site,
.site-content,
.entry-content,
.post-content {
  background: transparent !important;
}

.alex-landing,
.alex-landing * {
  box-sizing: border-box;
}

.alex-landing {
  color: var(--text);
  line-height: 1.65;
  font-family: Arial, Helvetica, sans-serif;
}

.alex-landing a {
  color: inherit;
  text-decoration: none;
}

.alex-landing img {
  max-width: 100%;
  display: block;
}

.alex-landing .container {
  width: min(100% - 32px, var(--max));
  margin: 0 auto;
}

.alex-landing .hero {
  padding: 86px 0 60px;
}

.alex-landing .hero-grid {
  display: grid;
  grid-template-columns: 1.2fr 0.8fr;
  gap: 34px;
  align-items: center;
}

.alex-landing .tag {
  display: inline-block;
  padding: 8px 14px;
  border-radius: 999px;
  background: rgba(56, 189, 248, 0.12);
  border: 1px solid rgba(56, 189, 248, 0.24);
  color: #a5f3fc;
  font-size: 0.9rem;
  margin-bottom: 16px;
}

.alex-landing h1,
.alex-landing h2,
.alex-landing h3 {
  line-height: 1.15;
  margin-top: 0;
  color: #fff;
}

.alex-landing h1 {
  font-size: clamp(2.2rem, 5vw, 4.1rem);
  margin-bottom: 18px;
}

.alex-landing h2 {
  font-size: clamp(1.7rem, 3vw, 2.6rem);
  margin-bottom: 16px;
}

.alex-landing p.lead {
  color: var(--muted);
  font-size: 1.07rem;
  max-width: 760px;
  margin-bottom: 28px;
}

.alex-landing .hero-actions {
  display: flex;
  gap: 14px;
  flex-wrap: wrap;
  margin-bottom: 26px;
}

.alex-landing .hero-stats,
.alex-landing .card-grid,
.alex-landing .process-grid,
.alex-landing .faq-grid {
  display: grid;
  gap: 18px;
}

.alex-landing .hero-stats {
  grid-template-columns: repeat(3, 1fr);
}

.alex-landing .card-grid {
  grid-template-columns: repeat(3, 1fr);
}

.alex-landing .process-grid {
  grid-template-columns: repeat(4, 1fr);
}

.alex-landing .faq-grid {
  grid-template-columns: 1fr 1fr;
}

.alex-landing .stat,
.alex-landing .card,
.alex-landing .profile-box,
.alex-landing .contact-box,
.alex-landing .process-step,
.alex-landing .seo-box,
.alex-landing .faq-item,
.alex-landing .region-box {
  background: var(--card);
  border: 1px solid var(--card-border);
  border-radius: var(--radius);
  box-shadow: var(--shadow);
  backdrop-filter: blur(8px);
}

.alex-landing .stat,
.alex-landing .card,
.alex-landing .process-step,
.alex-landing .seo-box,
.alex-landing .contact-box,
.alex-landing .profile-box,
.alex-landing .faq-item,
.alex-landing .region-box {
  padding: 24px;
}

.alex-landing .stat strong {
  display: block;
  font-size: 1.4rem;
  color: var(--accent);
  margin-bottom: 6px;
}

.alex-landing .profile-box {
  text-align: center;
}

.alex-landing .profile-image {
  width: 220px;
  height: 220px;
  margin: 0 auto 18px;
  border-radius: 50%;
  background: linear-gradient(145deg, rgba(56,189,248,0.18), rgba(34,197,94,0.12));
  border: 2px dashed rgba(255,255,255,0.18);
  display: grid;
  place-items: center;
  overflow: hidden;
  color: var(--muted);
  font-size: 0.95rem;
  text-align: center;
  padding: 20px;
}

.alex-landing section {
  padding: 36px 0;
}

.alex-landing .section-top {
  display: flex;
  justify-content: space-between;
  align-items: end;
  gap: 20px;
  margin-bottom: 24px;
  flex-wrap: wrap;
}

.alex-landing .muted {
  color: var(--muted);
}

.alex-landing .seo-text-wrap,
.alex-landing .contact-area,
.alex-landing .region-grid {
  display: grid;
  gap: 20px;
}

.alex-landing .seo-text-wrap {
  grid-template-columns: 1fr 1fr;
}

.alex-landing .contact-area {
  grid-template-columns: 0.95fr 1.05fr;
}

.alex-landing .region-grid {
  grid-template-columns: 1fr 1fr 1fr;
}

.alex-landing .table-wrap {
  overflow-x: auto;
  background: var(--card);
  border: 1px solid var(--card-border);
  border-radius: var(--radius);
  box-shadow: var(--shadow);
}

.alex-landing table {
  width: 100%;
  border-collapse: collapse;
  min-width: 760px;
}

.alex-landing th,
.alex-landing td {
  padding: 16px 18px;
  text-align: left;
  border-bottom: 1px solid rgba(255,255,255,0.08);
  color: #fff;
}

.alex-landing th {
  background: rgba(255,255,255,0.05);
  color: #e0f2fe;
  font-size: 0.95rem;
}

.alex-landing tr:hover td {
  background: rgba(255,255,255,0.03);
}

.alex-landing .step-number {
  width: 42px;
  height: 42px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  background: rgba(56,189,248,0.15);
  color: var(--accent);
  font-weight: 700;
  margin-bottom: 14px;
}

.alex-landing form {
  display: grid;
  gap: 14px;
}

.alex-landing input,
.alex-landing textarea {
  width: 100%;
  padding: 14px 16px;
  border-radius: 14px;
  border: 1px solid rgba(255,255,255,0.14);
  background: rgba(255,255,255,0.05);
  color: var(--text);
  font: inherit;
  outline: none;
}

.alex-landing input::placeholder,
.alex-landing textarea::placeholder {
  color: #94a3b8;
}

.alex-landing textarea {
  min-height: 150px;
  resize: vertical;
}

.alex-landing .small-note {
  font-size: 0.9rem;
  color: #94a3b8;
  margin-top: 10px;
}

.alex-landing .faq-item h3 {
  font-size: 1.1rem;
  margin-bottom: 10px;
}

.alex-landing .btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 14px 22px;
  border-radius: 999px;
  font-weight: 700;
  transition: 0.25s ease;
  border: 1px solid transparent;
  cursor: pointer;
}

.alex-landing .btn-primary {
  background: linear-gradient(90deg, var(--accent), #60a5fa);
  color: #02131e;
  box-shadow: var(--shadow);
}

.alex-landing .btn-primary:hover {
  transform: translateY(-2px);
}

.alex-landing .btn-secondary {
  border: 1px solid rgba(255,255,255,0.16);
  background: rgba(255,255,255,0.04);
  color: var(--text);
}

.alex-landing .footer-note {
  padding: 30px 0 50px;
  color: #94a3b8;
}

@media (max-width: 980px) {
  .alex-landing .hero-grid,
  .alex-landing .contact-area,
  .alex-landing .seo-text-wrap,
  .alex-landing .card-grid,
  .alex-landing .process-grid,
  .alex-landing .faq-grid,
  .alex-landing .region-grid {
    grid-template-columns: 1fr;
  }

  .alex-landing .hero-stats {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 720px) {
  .alex-landing .profile-image {
    width: 180px;
    height: 180px;
  }

  .alex-landing h1 {
    font-size: 2.2rem;
  }

  .alex-landing section {
    padding: 28px 0;
  }
}

.aef-consent {
  display: flex !important;
  align-items: flex-start !important;
  gap: 12px !important;
  margin-top: 8px !important;
}

.aef-consent input[type="checkbox"] {
  width: 18px !important;
  min-width: 18px !important;
  height: 18px !important;
  margin: 3px 0 0 0 !important;
  flex: 0 0 18px !important;
}

.aef-consent label {
  display: block !important;
  flex: 1 1 auto !important;
  width: auto !important;
  max-width: none !important;
  white-space: normal !important;
  word-break: normal !important;
  overflow-wrap: break-word !important;
  line-height: 1.6 !important;
  font-size: 15px !important;
}

.page-title,
.entry-title,
h1.wp-block-post-title {
display:none;
}

.mobile-contact-bar{
position:fixed;
left:12px;
right:12px;
bottom:14px;
display:flex;
gap:10px;
z-index:99999;
}

.mobile-contact-btn{
flex:1;
display:flex;
align-items:center;
justify-content:center;
gap:8px;
padding:14px 12px;
border-radius:16px;
text-decoration:none;
font-weight:700;
font-size:15px;
box-shadow:0 10px 30px rgba(0,0,0,0.25);
backdrop-filter:blur(10px);
}

.mobile-contact-btn svg{
width:20px;
height:20px;
flex:0 0 20px;
}

.mobile-contact-btn.whatsapp{
background:#25D366;
color:#fff;
}

.mobile-contact-btn.phone{
background:#111827;
color:#fff;
}

.mobile-contact-btn.mail{
background:#2563eb;
color:#fff;
}

@media (min-width: 769px){
.mobile-contact-bar{
display:none !important;
}
}

@media (max-width: 420px){
.mobile-contact-btn span{
display:none;
}
.mobile-contact-btn{
padding:14px 0;
}
}

.header-cta{
display:none !important;
}

.site-header{
display:flex;
align-items:center;
justify-content:space-between;
padding:14px 0;
}

.site-branding{
display:flex;
align-items:center;
gap:10px;
}

.site-title,
.site-branding a{
font-size:28px;
font-weight:800;
color:#ffffff !important;
text-decoration:none;
line-height:1.1;
}

.site-description{
display:none;
}

.main-navigation{
margin-left:auto;
}

.main-navigation ul{
display:flex;
align-items:center;
gap:18px;
list-style:none;
margin:0;
padding:0;
}

.main-navigation a{
color:#dbeafe !important;
text-decoration:none;
font-weight:600;
font-size:15px;
}

.main-navigation a:hover{
color:#ffffff !important;
}

.site-header-wrap{
position:sticky;
top:0;
z-index:999;
backdrop-filter:blur(10px);
background:rgba(2,6,23,0.82);
border-bottom:1px solid rgba(255,255,255,0.08);
}

@media (max-width:768px){
.site-header{
padding:12px 0;
}

.site-title,
.site-branding a{
font-size:22px;
}

.main-navigation ul{
gap:12px;
flex-wrap:wrap;
}

.main-navigation a{
font-size:14px;
}
}

@media (max-width: 768px){
  .main-navigation{
    width:100%;
  }

  
  }

  .menu-toggle{
    display:flex !important;
    align-items:center;
    justify-content:center;
    width:48px;
    height:48px;
    border-radius:12px;
    border:1px solid rgba(255,255,255,0.12);
    background:rgba(255,255,255,0.06);
    color:#fff;
    font-size:24px;
    cursor:pointer;
    margin-left:auto;
  }

  .site-header{
    position:relative;
  }

  .main-navigation.is-open ul{
    display:flex !important;
    flex-direction:column;
    align-items:flex-start;
    gap:14px;
    width:100%;
    margin-top:14px;
    padding:16px;
    border-radius:16px;
    background:rgba(2,6,23,0.96);
    border:1px solid rgba(255,255,255,0.08);
  }
}



/* Kontakt-Button standardmäßig ausblenden */
body .header-cta,
body .header-cta a{
  display:none !important;
}

/* Nur auf der echten Startseite anzeigen */
body.home .header-cta,
body.home .header-cta a,
body.front-page .header-cta,
body.front-page .header-cta a{
  display:inline-flex !important;
}

body.home .header-cta,
body.front-page .header-cta{
  display:block !important;
}

body.home .header-cta a,
body.front-page .header-cta a{
  align-items:center !important;
  justify-content:center !important;
  background:#d7d11a !important;
  color:#111 !important;
  padding:12px 20px !important;
  border-radius:12px !important;
  font-weight:700 !important;
  text-decoration:none !important;
}