/* =====================================
   1. Layout: Seitenbreite und Grid
   ===================================== */

/* Maximale Breite des Inhaltsbereichs auf großen Bildschirmen */
.site {
  max-width: 1400px;
  margin: 0 auto;
  padding: 0 30px;
}

/* Layout für kleine Bildschirme: Sidebar unter Inhalt */
@media (max-width: 768px) {
  #primary {
    width: 100% !important;
    float: none !important;
  }
  #secondary {
    width: 100% !important;
    float: none !important;
    margin-top: 40px;
  }
}

/* Layout mittlerer Bereich: Inhalt & Sidebar nebeneinander */
@media (min-width: 768px) and (max-width: 959px) {
  #primary {
    width: 72%;
    float: left;
    padding-right: 2%;
  }
  #secondary {
    width: 26%;
    float: right;
  }
}

/* Layout ab 960px: Sidebar schmaler */
@media (min-width: 960px) {
  #primary {
    width: 78%;
    float: left;
    padding-right: 2%;
  }
  #secondary {
    width: 18%;
    float: right;
  }
}
.page-id-4282 #secondary {
    display: none !important;
}
.page-id-4282 #primary {
    width: 100% !important;
    float: none !important;
}
.page-id-4282 .site-content .wrap {
    max-width: 1100px !important;
}

/* =====================================
   2. Sidebar & Widgets
   ===================================== */

/* Allgemeine Widget-Gestaltung */
.widget {
  background: #f4f7f4;
  padding: 20px;
  margin-bottom: 30px;
  border-radius: 12px;
  box-shadow: 0 3px 10px rgba(0, 0, 0, 0.05);
}

/* Widget-Titel */
.widget-title {
  font-size: 1.1rem;
  font-weight: 600;
  color: #2b2b27;
  border-left: 4px solid #3c5a99;
  padding-left: 12px;
  margin-bottom: 1em;
}

/* Menü-Icons in der Sidebar */
.widget_nav_menu ul {
  list-style: none;
  padding-left: 0;
}
.widget_nav_menu li::before {
  content: "📄 ";
  margin-right: 5px;
}

/* Neueste Beiträge – Liste */
.widget_recent_entries ul {
  list-style: none;
  padding-left: 0;
  margin: 0;
}

.widget_recent_entries li {
  padding: 10px 0;
  border-bottom: 1px solid #e0e0e0;
  transition: background-color 0.3s ease;
  color: #2b2b27;
}

.widget_recent_entries li:hover {
  background-color: #e6f1f1;
}

/* Suchfeld */
.widget_search input[type="search"] {
  width: 100%;
  padding: 10px 14px;
  border-radius: 25px;
  border: 1px solid #ccc;
  font-size: 1rem;
  background-color: #ffffff;
  color: #2b2b27;
}
.widget_search input[type="submit"] {
  display: none;
}

/* Hover-Farbe für alle Widget-Links */
.widget a {
  color: #3c5a99;
  text-decoration: none;
  transition: color 0.3s ease;
}
.widget a:hover {
  color: #f4a261;
}

/* =====================================
   3. Bilder & Medien
   ===================================== */

/* Allgemeine Bildformatierung */
.entry-content img {
  max-width: 100%;
  height: auto;
  display: block;
  margin: 1.5em auto;
  border-radius: 4px;
  box-shadow: 0 2px 8px rgba(0,0,0,0.05);
}

/* Bilder in voller Breite */
.alignfull img,
.wp-block-image.alignfull img {
  width: 100%;
  max-width: 100%;
  margin: 2em 0;
}

/* Standard für Gutenberg-Blockbilder */
.wp-block-image img {
  width: 100%;
  height: auto;
}

/* Zentrierte Ausrichtung */
.wp-block-image {
  text-align: center;
}

/* =====================================
   4. Kontaktbereich
   ===================================== */

/* Container */
.contact-section {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  background: #f4f7f4;
  padding: 30px;
  border-radius: 16px;
  box-shadow: 0 5px 15px rgba(0,0,0,0.05);
}

.kontakt-bereich {
  max-width: 800px;
  margin: 4rem auto;
  padding: 2rem;
  background-color: #f4f7f4;
  border-radius: 1rem;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05);
  font-family: 'Open Sans', sans-serif;
  color: #2b2b27;
}

/* Kontaktinformationen */
.kontakt-bereich .kontakt-infos {
  margin-bottom: 2rem;
  font-size: 1.125rem;
  line-height: 1.6;
}

.kontakt-bereich a {
  color: #3c5a99;
  text-decoration: none;
  font-weight: 600;
}
.kontakt-bereich a:hover {
  text-decoration: underline;
}

/* Button-Gruppierung */
.kontakt-bereich .button-group {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
  margin-top: 2rem;
}

/* Allgemeine Buttons */
.kontakt-bereich .button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0.75rem 1.5rem;
  border-radius: 2rem;
  font-weight: 600;
  font-size: 1rem;
  text-decoration: none;
  transition: background-color 0.2s ease;
}

/* Farbvarianten */
.kontakt-bereich .button.coaching {
  background-color: #f4a261;
  color: white;
}
.kontakt-bereich .button.angebote {
  background-color: #3c5a99;
  color: white;
}
.kontakt-bereich .button.whatsapp {
  background-color: #25D366;
  color: white;
}
.kontakt-bereich .button.stil {
  background-color: #a29a88;
  color: white;
}
.kontakt-bereich .button.impuls {
  background-color: #a8dadc;
  color: #2b2b27;
}

/* Mobile Anpassung */
@media (max-width: 600px) {
  .kontakt-bereich .button-group {
    flex-direction: column;
  }
  .kontakt-bereich {
    padding: 1.5rem;
  }
}

/* Burger-Menü permanent sichtbar oben rechts fixieren */
.menu-toggle {
  position: fixed !important;
  top: 20px;
  right: 20px;
  z-index: 9999;
  background-color: #fff; /* Optional für Sichtbarkeit */
  border-radius: 50px;
  padding: 8px 12px;
  box-shadow: 0 2px 8px rgba(0,0,0,0.1);
}

/* Mobilgeräte */
@media (max-width: 768px) {
  .menu-toggle {
    padding: 6px 10px;
    top: 15px;
    right: 15px;
  }
}

/* Hamburger-Menü permanent sichtbar oben rechts fixieren */
.hamburger {
  position: fixed !important;
  top: 20px;
  right: 20px;
  z-index: 9999;
  background-color: #fff; /* Optional: Hintergrund */
  border-radius: 50px;
  padding: 8px 12px;
  box-shadow: 0 2px 8px rgba(0,0,0,0.1);
}

/* Mobilgeräte */
@media (max-width: 768px) {
  .hamburger {
    padding: 6px 10px;
    top: 15px;
    right: 15px;
  }
}

/* === Rowling: Seite ohne Sidebar + volle Breite (Minimal) === */
/* 1) Sidebar auf DIESER Seite ausblenden */
.page-id-123 #secondary,
.page-id-123 .sidebar,
.page-id-123 .widget-area { display: none !important; }

/* 2) Inhaltsbereich auf volle Breite ziehen */
.page-id-123 #primary,
.page-id-123 .content-area,
.page-id-123 .site-main {
  width: 100% !important;
  max-width: none !important;
  float: none !important;
  margin: 0 auto !important;
}

/* 3) Lesebreite für Inhalte (Text) begrenzen */
.page-id-123 .entry-content,
.page-id-123 article {
  max-width: 1200px;      /* bei Bedarf 1280–1360 erhöhen */
  margin-left: auto;
  margin-right: auto;
  padding-left: 20px;
  padding-right: 20px;
}

/* 4) „Full width“ & „Wide“ für Gutenberg sauber darstellen */
.page-id-123 .alignfull {
  width: 100vw;
  max-width: 100vw;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
}
.page-id-123 .alignwide {
  max-width: 1280px;
  margin-left: auto;
  margin-right: auto;
}
.page-id-123 .wp-block-cover__image-background,
.page-id-123 .wp-block-cover img { object-fit: cover; }

/* 5) Drei runde Buttons (Container-Klasse: offer-circles) */
.page-id-123 .offer-circles {
  display: flex; flex-wrap: wrap;
  gap: 32px; justify-content: center; align-items: center;
  margin: 24px auto 8px; max-width: 1200px;
}
.page-id-123 .offer-circles .wp-block-button__link{
  border-radius: 9999px;
  width: 220px; height: 220px;
  display: flex; align-items: center; justify-content: center;
  text-align: center; line-height: 1.25; padding: 0 18px;
}
@media (max-width: 782px){
  .page-id-123 .offer-circles .wp-block-button__link{
    width: 160px; height: 160px; padding: 0 14px;
  }
}

/* 6) Etwas Luft zwischen Sektionen */
.page-id-123 .wp-block-group { padding-top: 48px; padding-bottom: 48px; }

/* ROWLING – Social-Icons wieder klickbar machen */

/* 1) Social-Menü über eventuelle Overlays legen */
.site-header .social-menu,
.site-header .menu-social,
.site-header .menu-social-container,
.site-header .social-links {
  position: relative;
  z-index: 1002;
}

/* 2) Eventuelle Header-Overlays dürfen keine Klicks fangen */
.site-header::before,
.header-image::before,
.header-overlay {
  pointer-events: none !important;
}

/* 3) Tappable Area der Icons vergrößern (barriereärmer) */
.social-links a,
.menu-social a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
}

/* 4) Falls das Branding darüberliegt, leicht darunter einsortieren */
.site-header .site-branding,
.site-header .custom-logo-link { z-index: 1000; }

/* ROWLING – Social-Icons klickbar machen */
.site-header .social-menu,
.site-header .menu-social,
.site-header .menu-social-container,
.site-header .social-links {
  position: relative;
  z-index: 1002; /* über Header-Overlays */
}

.site-header .social-menu a,
.site-header .menu-social a,
.site-header .social-links a {
  position: relative;
  z-index: 1003;
  pointer-events: auto !important;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 40px; height: 40px; /* größere Klickfläche */
}

/* Mögliche, unsichtbare Overlays im Header dürfen keine Klicks „fangen“ */
.site-header::before,
.header-image::before,
.header-overlay,
a.cover-link {          /* falls vorhanden */
  pointer-events: none !important;
}

/* Branding leicht darunter einsortieren (nur für Sicherheit) */
.site-header .site-branding,
.site-header .custom-logo-link { z-index: 1000; position: relative; }

/* ROWLING – Social-Icons im Header klickbar machen */

/* Social-Menü ganz nach oben legen und Klicks erlauben */
.site-header .social-menu,
.site-header .menu-social,
.site-header .menu-social-container,
.site-header .social-links,
.site-header .social-links a {
  position: relative;
  z-index: 9999;
  pointer-events: auto !important;
}

/* Verhindern, dass unsichtbare Header-Overlays Klicks abfangen */
.site-header::before,
.header-image::before,
.header-overlay,
.site-header .site-header-cover,
.site-header .site-header-cover::before {
  pointer-events: none !important;
}

/* Hamburger-/Such-Trigger sollen NICHT über die Icons ragen */
.site-header .menu-toggle,
.site-header .nav-toggle,
.site-header .search-toggle {
  position: relative;
  z-index: 5;                 /* unter den Social-Icons */
  width: 44px; height: 44px;  /* begrenzter Hitbereich */
}

/* Größere, gut treffbare Klickfläche der Social-Icons */
.site-header .social-links a,
.site-header .menu-social a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
}

/* Sicherheitsnetz: keine Pseudo-Overlays auf den Icon-Links */
.site-header .social-links a::before,
.site-header .social-links a::after {
  pointer-events: none !important;
}
/* Sichtbarkeit & Basisshape für Buttons/Links im Inhaltsbereich */
.entry-content a:not(.wp-block-social-link-anchor) {
  text-decoration: underline;
}

/* Gutenberg-Buttons: stets sichtbar und als Button erkennbar */
.wp-block-button__link {
  display: inline-flex; align-items: center; justify-content: center;
  padding: .75rem 1.25rem; border-radius: 9999px;
  background: #3c5a99; color: #fff !important;
  text-decoration: none; font-weight: 600; line-height: 1.2;
}

/* Markenfarben für Buttons */
/* Primäre CTA-Buttons - Anthrazit */
.wp-block-button__link {
    background-color: #2b2b27 !important;
    color: #f4f7f4 !important;
    border: none !important;
}

/* Hover-Effekt */
.wp-block-button__link:hover {
    background-color: #1a1a18 !important;
    opacity: 0.9;
}

/* Orangene Buttons - Warmes Orange statt schrill */
.wp-block-button.is-style-outline .wp-block-button__link,
a.wp-block-button__link[style*="#ff6600"],
a.wp-block-button__link[style*="rgb(255, 102, 0)"] {
    background-color: #f4a261 !important;
    color: #2b2b27 !important;
    border-color: #f4a261 !important;
}

.wp-block-button.is-style-outline .wp-block-button__link:hover {
    background-color: #f28d3c !important;
}
.wp-block-button.is-style-outline .wp-block-button__link {
  background: transparent; color: #3c5a99 !important; border: 2px solid #3c5a99;
}
.wp-block-button__link:hover { filter: brightness(0.95); }


/* ANGEPASSTE Farbhierarchie - Primär/Sekundär */

/* Sekundäre Buttons in warmem Orange (#f4a261) */
/* Diese Buttons linken zu weiterführenden Infos */
a.wp-block-button__link[href*="gamma.app"],
a.wp-block-button__link[href*="chatgpt.com"] {
    background-color: #f4a261 !important;
    color: #2b2b27 !important;
    border: none !important;
}

a.wp-block-button__link[href*="gamma.app"]:hover,
a.wp-block-button__link[href*="chatgpt.com"]:hover {
    background-color: #f28d3c !important;
    opacity: 1 !important;
}

/* ===================================================
   2. PROFESSIONELLES DESIGN: Meine Angebote Seite
   - Luftiges, modernes Layout
   - Markenfarben Orange (#FF6B35) und helle Akzente
   - Mehr Weißraum und bessere Lesbarkeit
   =================================================== */

/* Alle Buttons auf "Meine Angebote" Seite - Luftiges Design */
.page-id-2542 .wp-block-button__link {
    background: linear-gradient(135deg, #FF6B35 0%, #FF8C5A 100%) !important;
    color: white !important;
    padding: 16px 32px !important;
    border-radius: 30px !important;
    font-size: 16px !important;
    font-weight: 600 !important;
    border: none !important;
    box-shadow: 0 4px 15px rgba(255, 107, 53, 0.3) !important;
    transition: all 0.3s ease !important;
    margin: 15px 10px !important;
    display: inline-block !important;
}

/* Button Hover Effekt */
.page-id-2542 .wp-block-button__link:hover {
    transform: translateY(-3px) !important;
    box-shadow: 0 6px 25px rgba(255, 107, 53, 0.4) !important;
    background: linear-gradient(135deg, #FF8C5A 0%, #FF6B35 100%) !important;
}

/* Buttons Container - Mehr Abstand */
.page-id-2542 .wp-block-buttons {
    margin: 40px 0 !important;
    justify-content: center !important;
    flex-wrap: wrap !important;
    gap: 20px !important;
}

/* Überschriften - Luftiger */
.page-id-2542 h2, 
.page-id-2542 h3 {
    margin-top: 60px !important;
    margin-bottom: 30px !important;
    color: #2c3e50 !important;
}

/* Absätze - Bessere Lesbarkeit */
.page-id-2542 p {
    margin-bottom: 25px !important;
    line-height: 1.8 !important;
}

/* Sekundäre/Alternative Buttons (falls vorhanden) */
.page-id-2542 .wp-block-button.is-style-outline .wp-block-button__link {
    background: transparent !important;
    color: #FF6B35 !important;
    border: 2px solid #FF6B35 !important;
    box-shadow: none !important;
}

.page-id-2542 .wp-block-button.is-style-outline .wp-block-button__link:hover {
    background: #FF6B35 !important;
    color: white !important;
}

/* ==========================================
   3. Meine Angebote - Card Layout
   ========================================== */

/* Offer Cards - Professionelles Design */
.offer-card {
    background: #ffffff;
    padding: 40px;
    border-radius: 8px;
    box-shadow: 0 2px 10px rgba(0,0,0,0.05);
    margin-bottom: 30px;
    border-left: 4px solid #f4a261;
    transition: box-shadow 0.3s ease;
}

.offer-card:hover {
    box-shadow: 0 4px 20px rgba(0,0,0,0.1);
}

.offer-card h2 {
    color: #2b2b27;
    font-size: 28px;
    margin-bottom: 20px;
    font-weight: 600;
}

/* Featured Workshop Block */
.featured-workshop {
    background: #f4f7f4;
    padding: 60px 40px;
    border-left: 4px solid #0d6248;
    margin: 40px 0;
    border-radius: 8px;
}

/* Responsive Design */
@media (max-width: 768px) {
    .offer-card {
        padding: 25px;
    }
    
    .featured-workshop {
        padding: 35px 20px;
    }
    
    .offer-card h2 {
        font-size: 24px;
    }
}

/* ========================================
   3. Angebote-Seite: Abstände reduzieren
========================================== */

/* Reduzierte Abstände für alle Blöcke auf der Angebote-Seite */
.page-id-2542 .wp-block-group,
.page-id-2542 .wp-block-heading,
.page-id-2542 .wp-block-buttons,
.page-id-2542 .wp-block-quote,
.page-id-2542 .wp-block-html {
    margin-top: 20px !important;
    margin-bottom: 20px !important;
}

/* Noch kleinere Abstände zwischen direkt aufeinanderfolgenden Überschriften */
.page-id-2542 .wp-block-heading + .wp-block-heading {
    margin-top: 10px !important;
}

/* Reduzierte Abstände für Button-Gruppen */
.page-id-2542 .wp-block-buttons {
    margin-top: 15px !important;
    margin-bottom: 15px !important;
}

/* Padding für die gesamte Seite reduzieren */
.page-id-2542 .entry-content > * {
    margin-top: 15px;
    margin-bottom: 15px;
}
.page-id-XXXXX .sidebar,
.page-id-XXXXX #secondary,
.page-id-XXXXX #sidebar {
    display: none !important;
}
.page-id-XXXXX .content-area,
.page-id-XXXXX #primary {
    width: 100% !important;
    max-width: 100% !important;
}
.page-id-4282 #secondary{display:none!important}
.page-id-4282 #primary{width:100%!important;float:none!important}