/**
 * Theme Name:     Divi Child
 * Author:         Elegant Themes
 * Template:       Divi
 * Text Domain:	   divi-child
 * Description:    Smart. Flexible. Beautiful. Divi is the most powerful theme in our collection.
 */

/* ============================================================
   IVONNE CADAVID — desde la semilla
   Child Theme CSS — strukturiert & optimiert
   
   ÄNDERUNGEN:
   1. Alle Farben als CSS-Variablen in :root definiert
   2. Alle Schriften als Variablen
   3. Duplizierte Regeln zusammengeführt
   4. Sektionen klar kommentiert
   5. Redundante !important reduziert wo möglich
   6. Einheitliche Benennung
   ============================================================ */

/* ============================================================
   1. CSS VARIABLEN (Design Tokens)
   ============================================================ */

:root {
--ic-braun: #3e2712;
--ic-gruen: #5a7a3a;
--ic-gruen-hell: #8faf5e;
--ic-magenta: #a02360;
--ic-rose: #d4687a;
--ic-cream: #f5f0e8;
--ic-sand: #e8dfc8;
--ic-sand-hell: #ede8de;
--ic-sand-dunkel: #c8b99a;
--ic-braun-hell: #5a4535;
--ic-braun-mittel: #7a6350;
--ic-grau: #a09080;
--ic-braun-10: rgba(62, 39, 18, 0.1);
--ic-braun-18: rgba(62, 39, 18, 0.18);
--ic-braun-28: rgba(62, 39, 18, 0.28);
--ic-gruen-10: rgba(90, 122, 58, 0.1);
--ic-gruen-40: rgba(90, 122, 58, 0.4);
--ic-cream-65: rgba(245, 240, 232, 0.65);
--ic-cream-75: rgba(245, 240, 232, 0.75);
--ic-cream-35: rgba(245, 240, 232, 0.35);
--ic-cream-45: rgba(245, 240, 232, 0.45);
--ic-cream-20: rgba(245, 240, 232, 0.2);
--font-serif: 'Cormorant Garamond', Georgia, serif;
--font-sans: 'Jost', sans-serif;
--ic-radius: 6px;
--ic-radius-sm: 2px;
--ic-border: 1px solid #e8dfc8;
--ic-transition: 0.25s ease;
--ic-transition-slow: 0.3s ease;
}

/* ============================================================
   2. Fonts
   ============================================================ */
/* ── Cormorant Garamond lokal ── */
@font-face {
  font-family: 'Cormorant Garamond';
  src: url('https://cadavid.de/wp-content/themes/divi-child/fonts/cormorant-garamond-v21-latin-300.woff2') format('woff2');
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Cormorant Garamond';
  src: url('https://cadavid.de/wp-content/themes/divi-child/fonts/cormorant-garamond-v21-latin-300italic.woff2') format('woff2');
  font-weight: 300;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: 'Cormorant Garamond';
  src: url('https://cadavid.de/wp-content/themes/divi-child/fonts/cormorant-garamond-v21-latin-regular.woff2') format('woff2');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Cormorant Garamond';
  src: url('https://cadavid.de/wp-content/themes/divi-child/fonts/cormorant-garamond-v21-latin-italic.woff2') format('woff2');
  font-weight: 400;
  font-style: italic;
  font-display: swap;
}

/* ── Jost lokal ── */
@font-face {
  font-family: 'Jost';
  src: url('https://cadavid.de/wp-content/themes/divi-child/fonts/jost-v20-latin-300.woff2') format('woff2');
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Jost';
  src: url('https://cadavid.de/wp-content/themes/divi-child/fonts/jost-v20-latin-regular.woff2') format('woff2');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

/* ============================================================
   3. BUTTONS (gemeinsame Basis)
   ============================================================ */
.ic-btn-primary,
.ic-btn-outline,
.ic-btn-info,
.ic-conoceme-btn,
.ic-woo-anfragen-btn,
.pa-btn-contacto,
.ic-footer-btn {
  display: inline-block;
  font-family: var(--font-sans);
  font-weight: 400;
  font-size: 0.85rem;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  text-decoration: none;
  cursor: pointer;
  transition: background var(--ic-transition), color var(--ic-transition), border-color var(--ic-transition);
}

/* Primary Button */
.ic-btn-primary,
.ic-conoceme-btn {
  padding: 0.9rem 2.4rem;
  background: var(--ic-gruen);
  color: #ffffff !important;
  border: 2px solid var(--ic-gruen);
}
.ic-btn-primary:hover,
.ic-conoceme-btn:hover {
  background: transparent;
  color: var(--ic-gruen) !important;
}

/* Outline Button (Magenta) */
.ic-btn-outline,
.pa-btn-contacto {
  padding: 0.9rem 2.4rem;
  background: transparent;
  color: var(--ic-magenta) !important;
  border: 2px solid var(--ic-magenta);
}
.ic-btn-outline:hover,
.pa-btn-contacto:hover {
  background: var(--ic-magenta);
  color: #ffffff !important;
}

/* Anfragen Button (Produktseite) */
.ic-woo-anfragen-btn {
  display: block;
  padding: 14px 32px;
  background: var(--ic-gruen);
  color: #ffffff !important;
  border: 2px solid var(--ic-gruen);
  border-radius: var(--ic-radius-sm);
  text-align: center;
  margin-top: 8px;
  box-sizing: border-box;
  font-size: 0.78rem;
  letter-spacing: 0.12em;
}
.ic-woo-anfragen-btn:hover {
  background: transparent;
  color: var(--ic-gruen) !important;
}

/* Info Button */
.ic-btn-info {
  padding: 0.8rem 2rem;
  background: var(--ic-magenta);
  color: #ffffff !important;
  border: none;
}
.ic-btn-info:hover {
  background: var(--ic-braun);
}

/* Footer Button */
.ic-footer-btn {
  font-size: 0.75rem;
  font-weight: 300;
  color: var(--ic-cream) !important;
  border: 0.5px solid var(--ic-magenta);
  padding: 0.45rem 1.1rem;
  background: transparent;
}
.ic-footer-btn:hover {
  background: var(--ic-magenta);
  color: var(--ic-cream) !important;
}

/* Hinweistext unter Anfragen-Button */
.ic-woo-anfragen-note {
  display: block;
  font-family: var(--font-sans);
  font-size: 0.78rem;
  color: var(--ic-grau);
  text-align: center;
  margin-top: 10px;
  letter-spacing: 0.04em;
}

/* ============================================================
   4. HERO (Startseite)
   ============================================================ */
#ic-hero {
  position: relative;
  overflow: hidden;
  min-height: 100vh;
}

#ic-flower-canvas {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 0;
}

.ic-hola-soy {
  font-family: var(--font-serif);
  font-size: 3rem;
  font-weight: 300;
  color: var(--ic-gruen);
  line-height: 1.1;
  letter-spacing: 0.02em;
  position: relative;
  z-index: 1;
}

.ic-logo-wrapper {
  background: var(--ic-sand);
  border-radius: 50%;
  padding: 1.2rem;
  width: 220px;
  height: 220px;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 4px 24px var(--ic-braun-10);
  position: relative;
  z-index: 1;
}

.ic-logo-wrapper img {
  width: 190px;
  height: 190px;
  object-fit: contain;
}

.ic-hero-buttons {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  position: relative;
  z-index: 1;
}

.ic-hero-tagline {
  font-family: var(--font-serif);
  font-size: 2rem;
  font-weight: 300;
  font-style: italic;
  line-height: 1.6;
  color: var(--ic-braun);
  max-width: 380px;
  text-align: center;
  position: relative;
  z-index: 1;
}

.ic-hero-tagline::before,
.ic-hero-tagline::after {
  content: '';
  display: block;
  width: 60px;
  height: 1px;
  background: var(--ic-gruen);
  margin: 1.2rem auto;
}

/* ============================================================
   5. SOBRE MÍ
   ============================================================ */

/* Labels (gemeinsame Basis) */
.ic-sobre-subtitle,
.ic-album-label,
.ic-timeline-subtitle,
.ic-flores-subtitle,
.ic-contact-label,
.pa-hero-label,
.pa-grid-section-label,
.pa-semillas-label {
  font-family: var(--font-sans);
  font-size: 0.75rem;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  color: var(--ic-gruen);
  margin-bottom: 0.5rem;
}

.ic-album-label { margin-bottom: 1rem; }
.pa-grid-section-label { text-align: center; margin-bottom: 3rem; }
.pa-semillas-label { letter-spacing: 0.18em; }

/* Titel (gemeinsame Basis) */
.ic-sobre-title,
.ic-timeline-title,
.ic-flores-title,
.ic-contact-title,
.pa-hero-title,
.pa-semillas-title {
  font-family: var(--font-serif);
  font-weight: 300;
  color: var(--ic-braun);
  line-height: 1.2;
}

.ic-sobre-title  { font-size: 3rem; }
.ic-flores-title { font-size: 2.8rem; margin-bottom: 0.5rem; }
.ic-contact-title { font-size: 3rem; margin-bottom: 1.5rem; }
.pa-hero-title   { font-size: 3.5rem; line-height: 1.15; margin-bottom: 1.5rem; }
.pa-semillas-title {
  font-size: 2.2rem;
  font-style: italic;
  line-height: 1.4;
  margin: 0 auto 1rem;
  max-width: 600px;
}

/* Span-Akzente in Titeln */
.ic-timeline-title span,
.ic-contact-title span,
.pa-hero-title span {
  color: var(--ic-gruen);
  font-style: italic;
}

/* Beschreibungen */
.ic-flores-tagline,
.ic-contact-desc,
.pa-hero-desc,
.pa-semillas-desc {
  font-family: var(--font-sans);
  font-size: 0.9rem;
  line-height: 1.8;
  color: var(--ic-braun);
  opacity: 0.7;
}

.ic-flores-tagline span { color: var(--ic-gruen); font-style: italic; }
.pa-hero-desc { font-size: 0.95rem; max-width: 520px; margin: 0 auto; }
.pa-semillas-desc { max-width: 480px; margin: 0 auto 2rem; }

/* Sobre mí Beschreibungstext */
.ic-sobre-desc {
  max-width: 680px;
  margin: 0 auto;
  padding: 32px 0 40px;
}
.ic-sobre-desc-text {
  font-family: var(--font-sans);
  font-size: 1rem;
  font-weight: 300;
  color: var(--ic-braun-hell);
  line-height: 1.85;
  margin-bottom: 18px;
}
.ic-sobre-desc-highlight {
  font-family: var(--font-serif);
  font-size: 1.4rem;
  font-weight: 300;
  color: var(--ic-gruen);
  font-style: italic;
  margin-top: 24px;
  line-height: 1.5;
}

/* Fotoalbum */
.ic-photo-strip {
  display: flex;
  gap: 1rem;
  overflow-x: auto;
  padding-bottom: 0.5rem;
  scrollbar-width: thin;
  scrollbar-color: var(--ic-gruen) var(--ic-sand);
}
.ic-photo-strip::-webkit-scrollbar { height: 4px; }
.ic-photo-strip::-webkit-scrollbar-track { background: var(--ic-sand); }
.ic-photo-strip::-webkit-scrollbar-thumb { background: var(--ic-gruen); border-radius: 2px; }

.ic-photo-card {
  flex-shrink: 0;
  width: 220px;
  height: 280px;
  background: var(--ic-sand);
  border: 1px solid var(--ic-gruen-10);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.8rem;
  transition: transform var(--ic-transition-slow);
  overflow: hidden;
}
.ic-photo-card:hover { transform: translateY(-4px); }
.ic-photo-card:nth-child(2) { transform: rotate(1deg); }
.ic-photo-card:nth-child(2):hover { transform: rotate(1deg) translateY(-4px); }
.ic-photo-card:nth-child(4) { transform: rotate(-1.5deg); }
.ic-photo-card:nth-child(4):hover { transform: rotate(-1.5deg) translateY(-4px); }
.ic-photo-card img { width: 100%; height: 100%; object-fit: cover; }

.ic-photo-placeholder-icon { font-size: 2.5rem; opacity: 0.25; }
.ic-photo-placeholder-text {
  font-family: var(--font-sans);
  font-size: 0.72rem;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--ic-braun);
  opacity: 0.4;
  text-align: center;
  padding: 0 1rem;
}

/* Zeitstrahl */
.ic-timeline-title { font-size: 2.8rem; }

.ic-timeline-wrapper {
  display: none;
  animation: icFadeIn 0.6s ease forwards;
}
.ic-timeline-wrapper.visible { display: block; }

.ic-timeline {
  position: relative;
  padding-left: 3rem;
  z-index: 1;
}
.ic-timeline::before {
  content: '';
  position: absolute;
  left: 8px;
  top: 8px;
  bottom: 8px;
  width: 2px;
  background: linear-gradient(to bottom, var(--ic-gruen), var(--ic-rose), var(--ic-gruen));
  opacity: 0.5;
}

.ic-timeline-item { position: relative; display: flex; flex-direction: column; }
.ic-timeline-item-inner {
  display: flex;
  align-items: flex-start;
  gap: 1.5rem;
  padding: 1.2rem 0;
}

.ic-timeline-dot {
  position: absolute;
  left: -3rem;
  top: 1.6rem;
  width: 14px;
  height: 14px;
  border-radius: 50%;
  background: var(--ic-cream);
  border: 2px solid var(--ic-gruen);
  z-index: 1;
  transition: background var(--ic-transition-slow), transform var(--ic-transition-slow);
}
.ic-timeline-item:hover .ic-timeline-dot {
  background: var(--ic-gruen);
  transform: scale(1.3);
}
.ic-timeline-item.highlight .ic-timeline-dot {
  background: var(--ic-magenta);
  border-color: var(--ic-magenta);
  width: 18px;
  height: 18px;
  left: calc(-3rem - 2px);
  top: 1.4rem;
}

.ic-timeline-text {
  font-family: var(--font-sans);
  font-size: 0.95rem;
  line-height: 1.6;
  color: var(--ic-braun);
  flex: 1;
}
.ic-timeline-item.highlight .ic-timeline-text {
  font-weight: 500;
  color: var(--ic-magenta);
  font-size: 1rem;
}

.ic-timeline-flower {
  width: 48px;
  height: 48px;
  object-fit: contain;
  opacity: 0.75;
  flex-shrink: 0;
  filter: drop-shadow(0 2px 6px var(--ic-braun-10));
}

/* ============================================================
   6. FLORES
   ============================================================ */
.ic-flores-header {
  text-align: center;
  margin-bottom: 3rem;
  position: relative;
  z-index: 1;
}

.ic-flores-grid {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 2.5rem;
  max-width: 1100px;
  margin: 0 auto;
  position: relative;
  z-index: 1;
}

.ic-flor-card {
  display: flex;
  flex-direction: column;
  align-items: center;
  cursor: pointer;
  transition: transform 0.4s ease;
  width: 210px;
}
.ic-flor-card:hover { transform: translateY(-10px) scale(1.05); }

.ic-flor-img-wrap {
  width: 210px;
  height: 210px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.ic-flor-img-wrap img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  filter: drop-shadow(0 4px 16px var(--ic-braun-18));
  transition: filter var(--ic-transition-slow);
}
.ic-flor-card:hover .ic-flor-img-wrap img {
  filter: drop-shadow(0 8px 24px var(--ic-braun-28));
}

.ic-flor-label { margin-top: 1rem; text-align: center; }
.ic-flor-numero {
  font-family: var(--font-sans);
  font-size: 0.68rem;
  letter-spacing: 0.2em;
  color: var(--ic-gruen);
  text-transform: uppercase;
  margin-bottom: 0.3rem;
}
.ic-flor-titulo {
  font-family: var(--font-serif);
  font-size: 1.1rem;
  font-weight: 600;
  color: var(--ic-braun);
  line-height: 1.3;
}

/* Modal */
.ic-modal {
  display: none;
  position: fixed;
  inset: 0;
  z-index: 9999;
  background: rgba(62,39,18,0.6);
  backdrop-filter: blur(6px);
  align-items: center;
  justify-content: center;
}
.ic-modal.open { display: flex; }

.ic-modal-inner {
  background: var(--ic-cream);
  max-width: 700px;
  width: 90%;
  padding: 3rem;
  position: relative;
  max-height: 85vh;
  overflow-y: auto;
  display: grid;
  grid-template-columns: 180px auto;
  gap: 2.5rem;
  align-items: start;
}

.ic-modal-close {
  position: absolute;
  top: 1rem;
  right: 1.2rem;
  font-size: 1.5rem;
  cursor: pointer;
  color: var(--ic-braun);
  opacity: 0.5;
  background: none;
  border: none;
  transition: opacity var(--ic-transition);
}
.ic-modal-close:hover { opacity: 1; }

.ic-modal-flower img { width: 100%; object-fit: contain; }

.ic-modal-content h2 {
  font-family: var(--font-serif);
  font-size: 2rem;
  font-weight: 300;
  color: var(--ic-braun);
  margin-bottom: 1rem;
}
.ic-modal-content p {
  font-family: var(--font-sans);
  font-size: 0.9rem;
  line-height: 1.8;
  color: var(--ic-braun);
  opacity: 0.8;
  margin-bottom: 1.5rem;
}

.ic-modal-products {
  display: flex;
  flex-direction: column;
  gap: 0.8rem;
  margin-bottom: 1.5rem;
}
.ic-modal-product {
  padding: 0.9rem 1.2rem;
  border: 1px solid rgba(90,122,58,0.25);
  cursor: pointer;
  transition: background var(--ic-transition-slow);
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-family: var(--font-sans);
  font-size: 0.85rem;
  color: var(--ic-braun);
}
.ic-modal-product:hover { background: var(--ic-sand); }
.ic-modal-arrow { color: var(--ic-gruen); }

/* ============================================================
   7. BLOG (Startseite)
   ============================================================ */
.ic-blog-left p {
  font-family: var(--font-serif);
  font-size: 1.4rem;
  font-weight: 300;
  font-style: italic;
  line-height: 1.8;
  color: var(--ic-braun);
}

.ic-blog-right {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}

.ic-blog-category {
  border: 1px solid rgba(90,122,58,0.3);
  padding: 1.5rem 2rem;
  cursor: pointer;
  transition: all var(--ic-transition-slow);
}
.ic-blog-category:hover {
  background: var(--ic-sand);
  border-color: var(--ic-gruen);
}
.ic-blog-category h3 {
  font-family: var(--font-serif);
  font-size: 1.3rem;
  font-weight: 600;
  color: var(--ic-braun);
  margin-bottom: 0.4rem;
}
.ic-blog-category p {
  font-family: var(--font-sans);
  font-size: 0.82rem;
  color: var(--ic-braun);
  opacity: 0.7;
  line-height: 1.5;
}

/* ============================================================
   8. KONTAKT
   ============================================================ */
.ic-contact-form {
  display: flex;
  flex-direction: column;
  gap: 1.2rem;
}

.ic-contact-form input,
.ic-contact-form textarea {
  width: 100%;
  padding: 1rem 1.2rem;
  background: #ffffff;
  border: 1px solid rgba(62,39,18,0.2);
  font-family: var(--font-sans);
  font-size: 0.9rem;
  color: var(--ic-braun);
  outline: none;
  transition: border-color var(--ic-transition-slow);
}
.ic-contact-form input:focus,
.ic-contact-form textarea:focus { border-color: var(--ic-gruen); }
.ic-contact-form textarea { height: 150px; resize: vertical; }

/* ============================================================
   9. FOOTER
   ============================================================ */
.ic-footer-col {
  font-family: var(--font-sans);
  font-weight: 300;
  color: var(--ic-cream);
  padding: 3rem 1.5rem;
}

.ic-footer-col h4 {
  font-family: var(--font-sans);
  font-size: 0.72rem;
  font-weight: 400;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--ic-gruen-hell);
  margin: 0 0 1rem;
}

.ic-footer-col ul {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 0.55rem;
}
.ic-footer-col ul li a {
  font-size: 0.85rem;
  color: var(--ic-cream-75);
  text-decoration: none;
  letter-spacing: 0.04em;
  display: flex;
  align-items: center;
  gap: 6px;
  transition: color var(--ic-transition);
}
.ic-footer-col ul li a:hover { color: var(--ic-rose); }

.ic-footer-dot {
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background: var(--ic-gruen-hell);
  flex-shrink: 0;
  display: inline-block;
}

.ic-footer-col p {
  font-size: 0.83rem;
  color: var(--ic-cream-65);
  line-height: 1.7;
  margin: 0 0 0.75rem;
}

.ic-footer-logo-circle {
  width: 72px;
  height: 72px;
  background: var(--ic-sand);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  margin-bottom: 0.75rem;
}
.ic-footer-logo-circle img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 50%;
  display: block;
}
.ic-footer-logo-circle .ic-logo-placeholder {
  font-size: 0.6rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--ic-braun);
  text-align: center;
  padding: 0 6px;
  line-height: 1.4;
  font-family: var(--font-sans);
  font-weight: 400;
}

.ic-footer-brand {
  font-family: var(--font-serif);
  font-style: italic;
  font-weight: 300;
  font-size: 1.1rem;
  color: var(--ic-sand);
  line-height: 1.4;
  letter-spacing: 0.04em;
  margin-bottom: 0.4rem;
}
.ic-footer-tagline {
  font-size: 0.72rem;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--ic-cream-45);
}

.ic-footer-copy {
  font-family: var(--font-sans);
  font-size: 0.73rem;
  color: var(--ic-cream-35);
  letter-spacing: 0.06em;
}

.ic-footer-legal {
  display: flex;
  gap: 1.5rem;
  flex-wrap: wrap;
  align-items: center;
}
.ic-footer-legal a {
  font-family: var(--font-sans);
  font-size: 0.73rem;
  color: var(--ic-cream-45);
  text-decoration: none;
  letter-spacing: 0.08em;
  transition: color var(--ic-transition);
}
.ic-footer-legal a:hover { color: var(--ic-rose); }

.ic-footer-divider { color: var(--ic-cream-20); }

/* ============================================================
   10. PRODUCTOS ACTUALES — Hero
   ============================================================ */
#pa-hero {
  padding: 5rem 2rem 3rem;
  text-align: center;
  position: relative;
  overflow: hidden;
  min-height: 320px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
.pa-hero-inner { position: relative; z-index: 1; }

.pa-hero-line {
  width: 60px;
  height: 1px;
  background: var(--ic-gruen);
  margin: 0 auto 1.5rem;
}

/* Próximamente / Semillas Block */
.pa-semillas { text-align: center; }

/* ============================================================
   11. LEGAL (Datenschutz & AGB)
   ============================================================ */
.ic-legal-wrap {
  max-width: 860px;
  margin: 0 auto;
  padding: 60px 40px 80px;
  color: var(--ic-braun);
  font-family: var(--font-sans);
  font-weight: 300;
  font-size: 1rem;
  line-height: 1.85;
}

.ic-legal-header {
  margin-bottom: 56px;
  padding-bottom: 32px;
  border-bottom: 2px solid var(--ic-sand);
}

.ic-legal-title {
  font-family: var(--font-serif) !important;
  font-weight: 300 !important;
  font-size: 2.8rem !important;
  color: var(--ic-braun) !important;
  letter-spacing: 0.02em;
  margin-bottom: 10px !important;
  line-height: 1.2 !important;
}

.ic-legal-meta {
  font-family: var(--font-sans);
  font-size: 0.85rem;
  color: var(--ic-braun-mittel);
  letter-spacing: 0.08em;
  margin: 0 !important;
}

.ic-legal-section {
  margin-bottom: 48px;
  padding-bottom: 40px;
  border-bottom: 1px solid var(--ic-sand-hell);
}
.ic-legal-section:last-of-type { border-bottom: none; }

.ic-legal-h2 {
  font-family: var(--font-serif) !important;
  font-weight: 400 !important;
  font-size: 1.55rem !important;
  color: var(--ic-gruen) !important;
  margin-bottom: 16px !important;
  margin-top: 0 !important;
  line-height: 1.3 !important;
  display: flex;
  align-items: baseline;
  gap: 10px;
}

.ic-legal-num {
  font-family: var(--font-sans);
  font-weight: 400;
  font-size: 0.95rem;
  color: var(--ic-magenta);
  min-width: 28px;
}

.ic-legal-h3 {
  font-family: var(--font-sans) !important;
  font-weight: 400 !important;
  font-size: 1rem !important;
  color: var(--ic-braun) !important;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  margin-top: 28px !important;
  margin-bottom: 10px !important;
}

.ic-legal-wrap p { margin-bottom: 14px; color: var(--ic-braun); }

.ic-legal-wrap a {
  color: var(--ic-gruen);
  text-decoration: underline;
  text-underline-offset: 3px;
  transition: color var(--ic-transition);
}
.ic-legal-wrap a:hover { color: var(--ic-magenta); }

.ic-legal-contact-box {
  background: var(--ic-cream);
  border-left: 3px solid var(--ic-gruen);
  border-radius: 0 var(--ic-radius) var(--ic-radius) 0;
  padding: 20px 24px;
  margin: 20px 0;
}
.ic-legal-contact-box p { margin-bottom: 6px !important; line-height: 1.7; }
.ic-legal-contact-box p:last-child { margin-bottom: 0 !important; }

.ic-legal-list { padding-left: 0; list-style: none; margin: 16px 0 20px; }
.ic-legal-list li {
  position: relative;
  padding-left: 22px;
  margin-bottom: 8px;
  color: var(--ic-braun);
  line-height: 1.7;
}
.ic-legal-list li::before {
  content: '';
  position: absolute;
  left: 0;
  top: 10px;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background-color: var(--ic-gruen);
}

.ic-legal-stand {
  font-size: 0.82rem;
  color: var(--ic-grau);
  letter-spacing: 0.06em;
  margin-top: 48px !important;
  font-style: italic;
}

/* AGB Widerrufsformular */
.ic-legal-widerruf-box {
  background: #fdf9f4;
  border: 1px dashed var(--ic-sand-dunkel);
  border-radius: var(--ic-radius);
  padding: 22px 26px;
  margin: 16px 0 20px;
  font-size: 0.92rem;
  color: var(--ic-braun-hell);
}
.ic-legal-widerruf-box p { margin-bottom: 10px !important; color: var(--ic-braun-hell); }
.ic-legal-widerruf-box p:last-child { margin-bottom: 0 !important; }
.ic-legal-widerruf-hint { font-style: italic; font-size: 0.85rem !important; color: #9a8878 !important; }

/* ============================================================
   12. WOOCOMMERCE PRODUKTSEITE (Divi Theme Builder)
   ============================================================ */

/* Breadcrumb */
.et-db #et-boc .et-l .et_pb_wc_breadcrumb_0_tb_body,
.et-db #et-boc .et-l .et_pb_wc_breadcrumb_0_tb_body .woocommerce-breadcrumb,
.et-db #et-boc .et-l .et_pb_wc_breadcrumb_0_tb_body .woocommerce-breadcrumb a {
  font-family: var(--font-sans) !important;
  font-size: 0.82rem !important;
  font-weight: 300 !important;
  letter-spacing: 0.08em !important;
  color: var(--ic-grau) !important;
  text-decoration: none !important;
}
.et-db #et-boc .et-l .et_pb_wc_breadcrumb_0_tb_body .woocommerce-breadcrumb a:hover {
  color: var(--ic-magenta) !important;
}

/* Produktbild */
.et-db #et-boc .et-l .et_pb_wc_images_0_tb_body .woocommerce-product-gallery {
  border-radius: 8px !important;
  overflow: hidden !important;
  padding: 20px !important;
}
.et-db #et-boc .et-l .et_pb_wc_images_0_tb_body .woocommerce-product-gallery__image img {
  border-radius: var(--ic-radius) !important;
  transition: transform 0.4s ease !important;
}
.et-db #et-boc .et-l .et_pb_wc_images_0_tb_body .woocommerce-product-gallery__image img:hover {
  transform: scale(1.02) !important;
}
.et-db #et-boc .et-l .et_pb_wc_images_0_tb_body .flex-control-thumbs li img {
  border-radius: 4px !important;
  border: 2px solid transparent !important;
  opacity: 0.7 !important;
  transition: border-color var(--ic-transition), opacity var(--ic-transition) !important;
}
.et-db #et-boc .et-l .et_pb_wc_images_0_tb_body .flex-control-thumbs li img:hover,
.et-db #et-boc .et-l .et_pb_wc_images_0_tb_body .flex-control-thumbs li img.flex-active {
  border-color: var(--ic-gruen) !important;
  opacity: 1 !important;
}

/* Produkttitel */
.et-db #et-boc .et-l .et_pb_wc_title_0_tb_body h1,
.et-db #et-boc .et-l .et_pb_wc_title_0_tb_body h1.product_title {
  font-family: var(--font-serif) !important;
  font-weight: 300 !important;
  font-size: 2.4rem !important;
  color: var(--ic-braun) !important;
  line-height: 1.2 !important;
  letter-spacing: 0.02em !important;
}

/* Kurzbeschreibung */
.et-db #et-boc .et-l .et_pb_wc_description_0_tb_body,
.et-db #et-boc .et-l .et_pb_wc_description_0_tb_body p {
  font-family: var(--font-sans) !important;
  font-size: 0.95rem !important;
  font-weight: 300 !important;
  line-height: 1.85 !important;
  color: var(--ic-braun-hell) !important;
}
.et-db #et-boc .et-l .et_pb_wc_description_0_tb_body {
  border-left: 3px solid var(--ic-gruen) !important;
  padding-left: 16px !important;
}

/* Grouped Product Table */
.et-db #et-boc .et-l .et_pb_wc_add_to_cart_0_tb_body table.woocommerce-grouped-product-list {
  width: 100% !important;
  border-collapse: collapse !important;
  margin-bottom: 24px !important;
}
.et-db #et-boc .et-l .et_pb_wc_add_to_cart_0_tb_body table.woocommerce-grouped-product-list tr {
  border-bottom: var(--ic-border) !important;
  transition: background var(--ic-transition) !important;
}
.et-db #et-boc .et-l .et_pb_wc_add_to_cart_0_tb_body table.woocommerce-grouped-product-list tr:last-child {
  border-bottom: none !important;
}
.et-db #et-boc .et-l .et_pb_wc_add_to_cart_0_tb_body table.woocommerce-grouped-product-list tr:hover {
  background: var(--ic-cream) !important;
}
.et-db #et-boc .et-l .et_pb_wc_add_to_cart_0_tb_body table.woocommerce-grouped-product-list td {
  padding: 13px 10px !important;
  vertical-align: middle !important;
}
.et-db #et-boc .et-l .et_pb_wc_add_to_cart_0_tb_body .woocommerce-grouped-product-list-item__quantity,
.et-db #et-boc .et-l .et_pb_wc_add_to_cart_0_tb_body .woocommerce-grouped-product-list-item__price,
.et-db #et-boc .et-l .et_pb_wc_add_to_cart_0_tb_body .single_add_to_cart_button,
.et-db #et-boc .et-l .et_pb_wc_add_to_cart_0_tb_body button[type="submit"],
.et-db #et-boc .et-l .et_pb_wc_rating_0_tb_body {
  display: none !important;
}
.et-db #et-boc .et-l .et_pb_wc_add_to_cart_0_tb_body .woocommerce-grouped-product-list-item__label a {
  font-family: var(--font-sans) !important;
  font-size: 0.95rem !important;
  font-weight: 400 !important;
  color: var(--ic-braun) !important;
  text-decoration: none !important;
  transition: color var(--ic-transition) !important;
}
.et-db #et-boc .et-l .et_pb_wc_add_to_cart_0_tb_body .woocommerce-grouped-product-list-item__label a:hover {
  color: var(--ic-gruen) !important;
}

/* Tabs */
.et-db #et-boc .et-l .et_pb_wc_tabs_0_tb_body.et_pb_tabs .et_pb_tabs_controls {
  border-bottom: 2px solid var(--ic-sand) !important;
  background: transparent !important;
  padding: 0 !important;
}
.et-db #et-boc .et-l .et_pb_wc_tabs_0_tb_body.et_pb_tabs .et_pb_tabs_controls li {
  background: transparent !important;
  border: none !important;
  border-bottom: 2px solid transparent !important;
  margin-bottom: -2px !important;
}
.et-db #et-boc .et-l .et_pb_wc_tabs_0_tb_body.et_pb_tabs .et_pb_tabs_controls li a {
  font-family: var(--font-sans) !important;
  font-size: 0.78rem !important;
  font-weight: 400 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  color: var(--ic-braun-mittel) !important;
  padding: 10px 20px !important;
}
.et-db #et-boc .et-l .et_pb_wc_tabs_0_tb_body.et_pb_tabs .et_pb_tabs_controls li.et_pb_tab_active {
  border-bottom: 2px solid var(--ic-gruen) !important;
}
.et-db #et-boc .et-l .et_pb_wc_tabs_0_tb_body.et_pb_tabs .et_pb_tabs_controls li.et_pb_tab_active a {
  color: var(--ic-gruen) !important;
}
.et-db #et-boc .et-l .et_pb_wc_tabs_0_tb_body .et_pb_all_tabs {
  background: #fdf9f4 !important;
  border: var(--ic-border) !important;
  border-top: none !important;
  border-radius: 0 0 var(--ic-radius) var(--ic-radius) !important;
}
.et-db #et-boc .et-l .et_pb_wc_tabs_0_tb_body .et_pb_tab_content {
  font-family: var(--font-sans) !important;
  font-size: 0.95rem !important;
  font-weight: 300 !important;
  line-height: 1.85 !important;
  color: var(--ic-braun) !important;
  padding: 28px 32px !important;
}
.et-db #et-boc .et-l .et_pb_wc_tabs_0_tb_body .et_pb_tab_content h2 {
  font-family: var(--font-serif) !important;
  font-weight: 400 !important;
  color: var(--ic-gruen) !important;
  font-size: 1.4rem !important;
}
.et-db #et-boc .et-l .et_pb_wc_tabs_0_tb_body .et_pb_tab_content ul {
  list-style: none !important;
  padding-left: 0 !important;
}
.et-db #et-boc .et-l .et_pb_wc_tabs_0_tb_body .et_pb_tab_content ul li {
  padding-left: 18px !important;
  position: relative !important;
  margin-bottom: 6px !important;
  font-family: var(--font-sans) !important;
  font-weight: 300 !important;
  color: var(--ic-braun) !important;
}
.et-db #et-boc .et-l .et_pb_wc_tabs_0_tb_body .et_pb_tab_content ul li::before {
  content: '' !important;
  position: absolute !important;
  left: 0 !important;
  top: 9px !important;
  width: 7px !important;
  height: 7px !important;
  border-radius: 50% !important;
  background-color: var(--ic-gruen) !important;
}

/* Related Products */
.et-db #et-boc .et-l .et_pb_wc_related_products_0_tb_body h2 {
  font-family: var(--font-serif) !important;
  font-weight: 300 !important;
  font-size: 1.8rem !important;
  color: var(--ic-braun) !important;
  margin-bottom: 1.5rem !important;
  border-top: 2px solid var(--ic-sand) !important;
  padding-top: 2rem !important;
}
.et-db #et-boc .et-l .et_pb_wc_related_products_0_tb_body ul.products li.product {
  border-radius: var(--ic-radius) !important;
  overflow: hidden !important;
  transition: transform var(--ic-transition) !important;
  padding-bottom: 12px !important;
}
.et-db #et-boc .et-l .et_pb_wc_related_products_0_tb_body ul.products li.product:hover {
  transform: translateY(-4px) !important;
}
.et-db #et-boc .et-l .et_pb_wc_related_products_0_tb_body ul.products li.product img {
  border-radius: var(--ic-radius) var(--ic-radius) 0 0 !important;
}
.et-db #et-boc .et-l .et_pb_wc_related_products_0_tb_body ul.products li.product h2.woocommerce-loop-product__title {
  font-family: var(--font-sans) !important;
  font-size: 0.88rem !important;
  font-weight: 400 !important;
  color: var(--ic-braun) !important;
  padding: 8px 12px 4px !important;
}
.et-db #et-boc .et-l .et_pb_wc_related_products_0_tb_body ul.products li.product .price,
.et-db #et-boc .et-l .et_pb_wc_related_products_0_tb_body ul.products li.product .star-rating,
.woocommerce ul.products li.product .price {
  display: none !important;
}

/* Blog Sidebar auf Produktseite */
.et-db #et-boc .et-l .et_pb_blog_0_tb_body {
  background: #fdf9f4 !important;
  border-radius: var(--ic-radius) !important;
  padding: 20px !important;
}
.et-db #et-boc .et-l .et_pb_blog_0_tb_body h2.entry-title a {
  font-family: var(--font-serif) !important;
  font-weight: 400 !important;
  font-size: 1.1rem !important;
  color: var(--ic-braun) !important;
  text-decoration: none !important;
}
.et-db #et-boc .et-l .et_pb_blog_0_tb_body h2.entry-title a:hover {
  color: var(--ic-gruen) !important;
}
.et-db #et-boc .et-l .et_pb_blog_0_tb_body .post-meta,
.et-db #et-boc .et-l .et_pb_blog_0_tb_body .post-meta a {
  font-family: var(--font-sans) !important;
  font-size: 0.78rem !important;
  color: var(--ic-grau) !important;
}
.et-db #et-boc .et-l .et_pb_blog_0_tb_body .post-content {
  font-family: var(--font-sans) !important;
  font-size: 0.88rem !important;
  font-weight: 300 !important;
  color: var(--ic-braun-hell) !important;
  line-height: 1.7 !important;
}

/* ============================================================
   13. BLOG SEITEN
   ============================================================ */

/* Sidebar Widgets */
.et_pb_widget_area { display: flex; flex-direction: column; gap: 20px; }
.et_pb_widget {
  background: #ffffff;
  padding: 0 !important;
  overflow: hidden;
  border-radius: var(--ic-radius);
  border: var(--ic-border);
}
.et_pb_widget h2.wp-block-heading {
  font-family: var(--font-sans) !important;
  font-size: 10px !important;
  font-weight: 400 !important;
  letter-spacing: 0.18em !important;
  text-transform: uppercase !important;
  color: var(--ic-cream) !important;
  background: var(--ic-gruen);
  padding: 14px 18px !important;
  margin: 0 !important;
  border: none !important;
}
.et_pb_widget .wp-block-search { padding: 16px 18px; }
.et_pb_widget .wp-block-search__label {
  font-family: var(--font-sans) !important;
  font-size: 10px !important;
  font-weight: 400 !important;
  letter-spacing: 0.18em !important;
  text-transform: uppercase !important;
  color: var(--ic-cream) !important;
  background: var(--ic-gruen);
  display: block;
  padding: 14px 18px;
  margin: -16px -18px 14px -18px;
}
.et_pb_widget .wp-block-search__inside-wrapper { display: flex; gap: 0; }
.et_pb_widget .wp-block-search__input {
  font-family: var(--font-sans) !important;
  font-size: 13px !important;
  color: var(--ic-braun) !important;
  background: var(--ic-cream) !important;
  border: var(--ic-border) !important;
  border-right: none !important;
  border-radius: 0 !important;
  padding: 10px 14px !important;
  flex: 1;
  outline: none !important;
  box-shadow: none !important;
  transition: border-color var(--ic-transition);
}
.et_pb_widget .wp-block-search__input:focus { border-color: var(--ic-gruen) !important; }
.et_pb_widget .wp-block-search__button {
  font-family: var(--font-sans) !important;
  font-size: 10px !important;
  font-weight: 400 !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  background: var(--ic-gruen) !important;
  color: #ffffff !important;
  border: none !important;
  border-radius: 0 !important;
  padding: 10px 16px !important;
  cursor: pointer !important;
  transition: background var(--ic-transition) !important;
}
.et_pb_widget .wp-block-search__button:hover {
  background: var(--ic-braun) !important;
  color: var(--ic-cream) !important;
}
.et_pb_widget .wp-block-latest-posts__list,
.et_pb_widget .wp-block-archives-list,
.et_pb_widget .wp-block-categories-list { list-style: none !important; padding: 0 !important; margin: 0 !important; }
.et_pb_widget .wp-block-latest-posts__list li,
.et_pb_widget .wp-block-archives-list li,
.et_pb_widget .wp-block-categories-list li { border-bottom: var(--ic-border); }
.et_pb_widget .wp-block-latest-posts__list li:last-child,
.et_pb_widget .wp-block-archives-list li:last-child,
.et_pb_widget .wp-block-categories-list li:last-child { border-bottom: none; }
.et_pb_widget .wp-block-latest-posts__post-title,
.et_pb_widget .wp-block-archives-list a,
.et_pb_widget .wp-block-categories-list a {
  font-family: var(--font-sans) !important;
  font-size: 13px !important;
  font-weight: 400 !important;
  color: var(--ic-braun) !important;
  text-decoration: none !important;
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  padding: 11px 18px !important;
  transition: color var(--ic-transition), padding-left var(--ic-transition) !important;
}
.et_pb_widget .wp-block-latest-posts__post-title::before,
.et_pb_widget .wp-block-archives-list a::before,
.et_pb_widget .wp-block-categories-list a::before {
  content: '→';
  color: var(--ic-gruen);
  font-size: 13px;
  flex-shrink: 0;
}
.et_pb_widget .wp-block-latest-posts__post-title:hover,
.et_pb_widget .wp-block-archives-list a:hover,
.et_pb_widget .wp-block-categories-list a:hover {
  color: var(--ic-gruen) !important;
  padding-left: 22px !important;
}
.et_pb_widget .no-comments {
  font-family: var(--font-sans) !important;
  font-size: 12px !important;
  color: var(--ic-grau) !important;
  font-style: italic !important;
  padding: 14px 18px !important;
}

/* Post Content */
.et_pb_post_content_0.et_pb_post_content { background: #ffffff !important; }

.et_pb_post_content .et_pb_text_inner h1,
.et_pb_post_content h1 {
  font-family: var(--font-serif) !important;
  font-size: clamp(28px, 4vw, 46px) !important;
  font-weight: 300 !important;
  color: var(--ic-braun) !important;
  line-height: 1.15 !important;
  margin: 0 0 28px 0 !important;
  letter-spacing: 0.02em !important;
}
.et_pb_post_content .et_pb_text_inner h2,
.et_pb_post_content h2 {
  font-family: var(--font-serif) !important;
  font-size: 26px !important;
  font-weight: 400 !important;
  color: var(--ic-gruen) !important;
  line-height: 1.3 !important;
  margin: 52px 0 16px 0 !important;
  padding-bottom: 12px !important;
  border-bottom: var(--ic-border) !important;
}
.et_pb_post_content .et_pb_text_inner h3,
.et_pb_post_content h3 {
  font-family: var(--font-serif) !important;
  font-size: 20px !important;
  font-weight: 400 !important;
  color: var(--ic-braun) !important;
  line-height: 1.4 !important;
  margin: 36px 0 12px 0 !important;
}
.et_pb_post_content .et_pb_text_inner h4,
.et_pb_post_content h4 {
  font-family: var(--font-sans) !important;
  font-size: 15px !important;
  font-weight: 400 !important;
  color: var(--ic-braun) !important;
  line-height: 1.4 !important;
  margin: 28px 0 10px 0 !important;
  letter-spacing: 0.06em !important;
  text-transform: uppercase !important;
}
.et_pb_post_content .et_pb_text_inner h5,
.et_pb_post_content h5 {
  font-family: var(--font-sans) !important;
  font-size: 12px !important;
  font-weight: 400 !important;
  color: var(--ic-magenta) !important;
  text-transform: uppercase !important;
  letter-spacing: 0.14em !important;
  margin: 28px 0 10px 0 !important;
}
.et_pb_post_content .et_pb_text_inner h6,
.et_pb_post_content h6 {
  font-family: var(--font-sans) !important;
  font-size: 11px !important;
  font-weight: 400 !important;
  color: var(--ic-grau) !important;
  text-transform: uppercase !important;
  letter-spacing: 0.18em !important;
  margin: 24px 0 8px 0 !important;
}
.et_pb_post_content .et_pb_text_0 .et_pb_text_inner > p:first-child {
  font-family: var(--font-sans) !important;
  font-size: 1.05rem !important;
  font-weight: 300 !important;
  color: var(--ic-braun) !important;
  line-height: 1.85 !important;
  border-left: 3px solid var(--ic-gruen) !important;
  padding-left: 20px !important;
  margin-bottom: 36px !important;
}
.et_pb_post_content .et_pb_text_inner p,
.et_pb_post_content p {
  font-family: var(--font-sans) !important;
  font-size: 0.95rem !important;
  font-weight: 300 !important;
  color: var(--ic-braun-hell) !important;
  line-height: 1.9 !important;
  margin-bottom: 20px !important;
  border-left: none !important;
  padding-left: 0 !important;
}
.et_pb_post_content .et_pb_text_inner a,
.et_pb_post_content a {
  color: var(--ic-gruen) !important;
  text-decoration: none !important;
  border-bottom: 1px solid var(--ic-gruen-40) !important;
  transition: border-color var(--ic-transition), color var(--ic-transition) !important;
}
.et_pb_post_content .et_pb_text_inner a:hover,
.et_pb_post_content a:hover {
  color: var(--ic-magenta) !important;
  border-bottom-color: var(--ic-magenta) !important;
}
.et_pb_post_content .et_pb_text_inner blockquote,
.et_pb_post_content blockquote {
  background: var(--ic-cream) !important;
  border-left: 4px solid var(--ic-magenta) !important;
  border-top: none !important;
  border-right: none !important;
  border-bottom: none !important;
  padding: 28px 32px !important;
  margin: 40px 0 !important;
  border-radius: 0 var(--ic-radius) var(--ic-radius) 0 !important;
}
.et_pb_post_content blockquote::before { display: none !important; }
.et_pb_post_content .et_pb_text_inner blockquote p,
.et_pb_post_content blockquote p {
  font-family: var(--font-serif) !important;
  font-style: italic !important;
  font-size: 1.2rem !important;
  color: var(--ic-braun) !important;
  line-height: 1.75 !important;
  margin-bottom: 0 !important;
  border-left: none !important;
  padding-left: 0 !important;
}
.et_pb_post_content .et_pb_text_inner ul,
.et_pb_post_content ul { list-style: none !important; padding: 0 !important; margin: 0 0 28px !important; }
.et_pb_post_content .et_pb_text_inner ul li,
.et_pb_post_content ul li {
  font-family: var(--font-sans) !important;
  font-size: 0.95rem !important;
  font-weight: 300 !important;
  color: var(--ic-braun-hell) !important;
  line-height: 1.75 !important;
  padding: 10px 0 10px 24px !important;
  border-bottom: var(--ic-border) !important;
  position: relative !important;
  margin: 0 !important;
}
.et_pb_post_content ul li:last-child { border-bottom: none !important; }
.et_pb_post_content ul li::before {
  content: '' !important;
  position: absolute !important;
  left: 0 !important;
  top: 18px !important;
  width: 7px !important;
  height: 7px !important;
  border-radius: 50% !important;
  background: var(--ic-gruen) !important;
}
.et_pb_post_content .et_pb_text_inner ol,
.et_pb_post_content ol {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 0 28px !important;
  counter-reset: ic-counter !important;
}
.et_pb_post_content .et_pb_text_inner ol li,
.et_pb_post_content ol li {
  font-family: var(--font-sans) !important;
  font-size: 0.95rem !important;
  font-weight: 300 !important;
  color: var(--ic-braun-hell) !important;
  line-height: 1.75 !important;
  padding: 10px 0 10px 46px !important;
  border-bottom: var(--ic-border) !important;
  position: relative !important;
  margin: 0 !important;
  counter-increment: ic-counter !important;
}
.et_pb_post_content ol li:last-child { border-bottom: none !important; }
.et_pb_post_content ol li::before {
  content: counter(ic-counter) !important;
  position: absolute !important;
  left: 0 !important;
  top: 10px !important;
  width: 26px !important;
  height: 26px !important;
  background: var(--ic-gruen) !important;
  color: #ffffff !important;
  font-family: var(--font-sans) !important;
  font-size: 11px !important;
  font-weight: 400 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  border-radius: 50% !important;
}
.et_pb_post_content .et_pb_text_inner img,
.et_pb_post_content img {
  max-width: 100% !important;
  height: auto !important;
  border-bottom: 3px solid var(--ic-gruen) !important;
  border-radius: var(--ic-radius) var(--ic-radius) 0 0 !important;
  display: block !important;
  margin: 36px 0 !important;
}
.et_pb_post_content hr {
  border: none !important;
  border-top: var(--ic-border) !important;
  margin: 52px 0 !important;
}

/* Kommentare */
.et_pb_comments_module { background: #ffffff !important; padding: 32px !important; }
.et_pb_comments_module h2.comments-title,
#comments .comments-title,
#comments-title {
  font-family: var(--font-serif) !important;
  font-size: 24px !important;
  font-weight: 400 !important;
  color: var(--ic-braun) !important;
  margin: 0 0 24px 0 !important;
  padding-bottom: 12px !important;
  border-bottom: 2px solid var(--ic-gruen) !important;
}
.et_pb_comments_module .commentlist,
ol.commentlist { list-style: none !important; padding: 0 !important; margin: 0 0 36px 0 !important; }
.et_pb_comments_module .commentlist li.comment,
ol.commentlist li.comment {
  background: var(--ic-cream) !important;
  border-left: 3px solid var(--ic-gruen) !important;
  border-bottom: none !important;
  padding: 20px 24px !important;
  margin: 0 0 16px 0 !important;
  list-style: none !important;
  border-radius: 0 var(--ic-radius) var(--ic-radius) 0 !important;
}
.et_pb_comments_module .commentlist .children {
  list-style: none !important;
  padding: 0 0 0 32px !important;
  margin: 16px 0 0 0 !important;
}
.et_pb_comments_module .commentlist .children li.comment {
  background: #ffffff !important;
  border-left: 3px solid var(--ic-magenta) !important;
  border-top: var(--ic-border) !important;
}
.et_pb_comments_module .comment-author {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  margin-bottom: 10px !important;
}
.et_pb_comments_module .comment-author .avatar,
.et_pb_comments_module img.avatar {
  width: 44px !important;
  height: 44px !important;
  border-radius: 50% !important;
  border: 2px solid var(--ic-gruen) !important;
  margin: 0 !important;
}
.et_pb_comments_module .comment-author .fn,
.et_pb_comments_module cite.fn {
  font-family: var(--font-sans) !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  color: var(--ic-braun) !important;
  font-style: normal !important;
  display: block !important;
}
.et_pb_comments_module .comment-meta,
.et_pb_comments_module .comment-meta a {
  font-family: var(--font-sans) !important;
  font-size: 11px !important;
  color: var(--ic-grau) !important;
  font-weight: 300 !important;
  letter-spacing: 0.06em !important;
  text-decoration: none !important;
  display: block !important;
  margin-top: 2px !important;
}
.et_pb_comments_module .comment-content p,
.et_pb_comments_module .comment-body p {
  font-family: var(--font-sans) !important;
  font-size: 0.9rem !important;
  font-weight: 300 !important;
  color: var(--ic-braun-hell) !important;
  line-height: 1.75 !important;
  margin: 12px 0 !important;
}
.et_pb_comments_module .comment-reply-link {
  font-family: var(--font-sans) !important;
  font-size: 10px !important;
  font-weight: 400 !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  color: var(--ic-gruen) !important;
  border-bottom: 1px solid var(--ic-gruen) !important;
  padding: 0 0 2px 0 !important;
  text-decoration: none !important;
  margin-top: 8px !important;
  display: inline-block !important;
  transition: color var(--ic-transition), border-color var(--ic-transition) !important;
}
.et_pb_comments_module .comment-reply-link:hover {
  color: var(--ic-magenta) !important;
  border-bottom-color: var(--ic-magenta) !important;
}
.et_pb_comments_module #respond,
.et_pb_comments_module .comment-respond {
  background: var(--ic-cream) !important;
  padding: 32px !important;
  margin-top: 36px !important;
  border-top: 3px solid var(--ic-gruen) !important;
  border-radius: 0 var(--ic-radius) var(--ic-radius) 0 !important;
}
.et_pb_comments_module #reply-title,
.et_pb_comments_module .comment-reply-title {
  font-family: var(--font-serif) !important;
  font-size: 1.4rem !important;
  font-weight: 400 !important;
  color: var(--ic-braun) !important;
  margin: 0 0 8px 0 !important;
}
.et_pb_comments_module .comment-notes,
.et_pb_comments_module .logged-in-as {
  font-family: var(--font-sans) !important;
  font-size: 12px !important;
  color: var(--ic-grau) !important;
  font-style: italic !important;
  margin: 0 0 20px 0 !important;
}
.et_pb_comments_module .logged-in-as a { color: var(--ic-gruen) !important; text-decoration: none !important; }
.et_pb_comments_module .comment-form label {
  font-family: var(--font-sans) !important;
  font-size: 10px !important;
  font-weight: 400 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  color: var(--ic-braun) !important;
  display: block !important;
  margin-bottom: 6px !important;
}
.et_pb_comments_module .comment-form input[type="text"],
.et_pb_comments_module .comment-form input[type="email"],
.et_pb_comments_module .comment-form input[type="url"],
.et_pb_comments_module .comment-form textarea,
.et_pb_comments_module #commentform input[type="text"],
.et_pb_comments_module #commentform input[type="email"],
.et_pb_comments_module #commentform textarea {
  font-family: var(--font-sans) !important;
  font-size: 0.9rem !important;
  font-weight: 300 !important;
  color: var(--ic-braun) !important;
  background: #ffffff !important;
  border: var(--ic-border) !important;
  border-radius: var(--ic-radius-sm) !important;
  padding: 12px 16px !important;
  width: 100% !important;
  outline: none !important;
  box-shadow: none !important;
  transition: border-color var(--ic-transition) !important;
}
.et_pb_comments_module .comment-form input:focus,
.et_pb_comments_module .comment-form textarea:focus {
  border-color: var(--ic-gruen) !important;
  box-shadow: 0 0 0 3px var(--ic-gruen-10) !important;
}
.et_pb_comments_module .comment-form textarea { min-height: 140px !important; resize: vertical !important; }
.et_pb_comments_module input[type="submit"],
.et_pb_comments_module .form-submit input[type="submit"] {
  font-family: var(--font-sans) !important;
  font-size: 0.78rem !important;
  font-weight: 400 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  background-color: var(--ic-gruen) !important;
  border: 2px solid var(--ic-gruen) !important;
  color: #ffffff !important;
  border-radius: var(--ic-radius-sm) !important;
  padding: 14px 32px !important;
  cursor: pointer !important;
  transition: background var(--ic-transition), color var(--ic-transition) !important;
  margin-top: 8px !important;
  box-shadow: none !important;
  text-shadow: none !important;
}
.et_pb_comments_module input[type="submit"]:hover {
  background-color: transparent !important;
  color: var(--ic-gruen) !important;
}
.et_pb_comments_module .comment-form-cookies-consent {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  margin-bottom: 16px !important;
}
.et_pb_comments_module .comment-form-cookies-consent label {
  font-family: var(--font-sans) !important;
  font-size: 12px !important;
  font-weight: 300 !important;
  color: var(--ic-braun-mittel) !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  margin: 0 !important;
  cursor: pointer !important;
}
.et_pb_comments_module .comment-form-cookies-consent input[type="checkbox"] {
  accent-color: var(--ic-gruen) !important;
  width: 16px !important;
  height: 16px !important;
}
.et_pb_comments_module .nocomments {
  font-family: var(--font-sans) !important;
  font-size: 13px !important;
  color: var(--ic-grau) !important;
  font-style: italic !important;
  text-align: center !important;
  padding: 24px !important;
  background: var(--ic-cream) !important;
}
body.et-db #page-container #et-boc .et-l .et_pb_comments_0.et_pb_comments_module .et_pb_button {
  color: #ffffff !important;
  background-color: var(--ic-gruen) !important;
  padding-left: 1em;
  padding-right: 1em;
  border-radius: var(--ic-radius-sm) !important;
}

/* Blog Grid Karten */
.et-db #et-boc .et-l .et_pb_blog_1 .et_pb_blog_grid .et_pb_post {
  background-color: #ffffff !important;
  border: var(--ic-border) !important;
  border-radius: var(--ic-radius) !important;
  padding: 20px !important;
  transition: transform var(--ic-transition), box-shadow var(--ic-transition) !important;
}
.et-db #et-boc .et-l .et_pb_blog_1 .et_pb_blog_grid .et_pb_post:hover {
  transform: translateY(-4px) !important;
  box-shadow: 0 8px 24px var(--ic-braun-10) !important;
}
.et-db #et-boc .et-l .et_pb_blog_1 .et_pb_post .entry-title a {
  font-family: var(--font-serif) !important;
  font-weight: 400 !important;
  font-size: 1.2rem !important;
  color: var(--ic-braun) !important;
  line-height: 1.3 !important;
  text-decoration: none !important;
  transition: color var(--ic-transition) !important;
}
.et-db #et-boc .et-l .et_pb_blog_1 .et_pb_post .entry-title a:hover { color: var(--ic-gruen) !important; }
.et-db #et-boc .et-l .et_pb_blog_1 .et_pb_post .post-meta {
  font-family: var(--font-sans) !important;
  font-size: 0.75rem !important;
  font-weight: 300 !important;
  color: var(--ic-grau) !important;
  letter-spacing: 0.04em !important;
  margin-bottom: 10px !important;
}
.et-db #et-boc .et-l .et_pb_blog_1 .et_pb_post .post-meta a {
  color: var(--ic-grau) !important;
  text-decoration: none !important;
  transition: color var(--ic-transition) !important;
}
.et-db #et-boc .et-l .et_pb_blog_1 .et_pb_post .post-meta a:hover { color: var(--ic-gruen) !important; }
.et-db #et-boc .et-l .et_pb_blog_1 .et_pb_post .post-content p {
  font-family: var(--font-sans) !important;
  font-size: 0.88rem !important;
  font-weight: 300 !important;
  color: var(--ic-braun-hell) !important;
  line-height: 1.75 !important;
  margin: 0 !important;
}

/* Kategorie Seitentitel */
.et-db #et-boc .et-l .et_pb_post_title_0 .et_pb_title_container {
  padding: 48px 0 32px !important;
  border-bottom: 2px solid var(--ic-sand) !important;
  margin-bottom: 32px !important;
}
.et-db #et-boc .et-l .et_pb_post_title_0 h1.entry-title {
  font-family: var(--font-serif) !important;
  font-weight: 300 !important;
  font-size: 2.8rem !important;
  color: var(--ic-braun) !important;
  line-height: 1.2 !important;
  letter-spacing: 0.02em !important;
  font-style: italic !important;
  margin: 0 !important;
}
.et-db #et-boc .et-l .et_pb_post_title_0 h1.entry-title::before {
  content: '';
  display: block;
  width: 40px;
  height: 2px;
  background: var(--ic-magenta);
  margin-bottom: 14px;
}

/* Blog Hero */
.ic-blog-hero-banner {
  background: #ffffff;
  border-bottom: 2px solid var(--ic-sand);
  position: relative;
  overflow: hidden;
  text-align: center;
  width: 100vw;
  left: 50%;
  margin-left: -50vw;
  margin-right: -50vw;
  padding: 90px 20px 72px;
}
.ic-blog-hero-content { position: relative; z-index: 2; max-width: 760px; margin: 0 auto; }
.ic-blog-hero-deco { pointer-events: none; }
.ic-blog-hero-circle { position: absolute; border-radius: 50%; }
.ic-bc1 { width: 400px; height: 400px; top: -130px; right: -80px; border: 1px solid var(--ic-gruen-10); }
.ic-bc2 { width: 220px; height: 220px; bottom: -100px; left: 80px; border: 1px solid rgba(160,35,96,0.08); }
.ic-blog-hero-vline {
  position: absolute;
  top: 0; left: 50%;
  width: 1px; height: 100%;
  background: linear-gradient(to bottom, transparent, var(--ic-gruen-10), transparent);
}
.ic-blog-hero-eyebrow {
  font-family: var(--font-sans);
  font-size: 11px;
  font-weight: 400;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--ic-magenta);
  margin-bottom: 18px;
  animation: icFadeUp 0.5s ease both;
}
.ic-blog-hero-title {
  font-family: var(--font-serif);
  font-size: 6rem;
  font-weight: 300;
  color: var(--ic-braun);
  line-height: 1.05;
  margin: 0 0 24px 0;
  letter-spacing: 0.02em;
  font-style: italic;
  animation: icFadeUp 0.5s 0.1s ease both;
}
.ic-blog-hero-desc {
  font-family: var(--font-sans);
  font-size: 1.1rem;
  font-weight: 300;
  color: var(--ic-braun-hell);
  line-height: 1.85;
  margin: 0 auto;
  max-width: 580px;
  animation: icFadeUp 0.5s 0.2s ease both;
}

/* Post Slider */
.et_pb_post_slider_0.et_pb_slider,
.et_pb_post_slider_0.et_pb_slider.et_pb_bg_layout_dark {
  background-color: var(--ic-cream) !important;
  border-radius: 8px !important;
  overflow: hidden !important;
}
.et_pb_post_slider_0 .et_pb_slide_overlay_container { background: none !important; }
.et_pb_post_slider_0 .et_pb_slide_title {
  font-family: var(--font-serif) !important;
  font-weight: 300 !important;
  font-size: 2.4rem !important;
  color: var(--ic-braun) !important;
  line-height: 1.2 !important;
  letter-spacing: 0.02em !important;
  font-style: italic !important;
  margin-bottom: 16px !important;
}
.et_pb_post_slider_0 .et_pb_slide_content .post-meta {
  font-family: var(--font-sans) !important;
  font-size: 0.78rem !important;
  font-weight: 300 !important;
  color: var(--ic-grau) !important;
  letter-spacing: 0.06em !important;
  margin-bottom: 12px !important;
}
.et_pb_post_slider_0 .et_pb_slide_content .post-meta a {
  color: var(--ic-grau) !important;
  text-decoration: none !important;
  transition: color var(--ic-transition) !important;
}
.et_pb_post_slider_0 .et_pb_slide_content .post-meta a:hover { color: var(--ic-gruen) !important; }
.et_pb_post_slider_0 .et_pb_slide_content div {
  font-family: var(--font-sans) !important;
  font-size: 0.95rem !important;
  font-weight: 300 !important;
  color: var(--ic-braun-hell) !important;
  line-height: 1.85 !important;
}
.et_pb_post_slider_0 .et_pb_more_button.et_pb_button {
  font-family: var(--font-sans) !important;
  font-size: 0.78rem !important;
  font-weight: 400 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  background-color: transparent !important;
  border: 2px solid var(--ic-gruen) !important;
  color: var(--ic-gruen) !important;
  padding: 12px 28px !important;
  border-radius: var(--ic-radius-sm) !important;
  text-decoration: none !important;
  transition: background-color var(--ic-transition), color var(--ic-transition) !important;
}
.et_pb_post_slider_0 .et_pb_more_button.et_pb_button:hover {
  background-color: var(--ic-gruen) !important;
  color: #ffffff !important;
}
.et_pb_post_slider_0 .et_pb_more_button.et_pb_button::after { display: none !important; }
.et_pb_post_slider_0 .et-pb-arrow-prev,
.et_pb_post_slider_0 .et-pb-arrow-next {
  color: var(--ic-braun-hell) !important;
  opacity: 0.5 !important;
  transition: opacity var(--ic-transition) !important;
}
.et_pb_post_slider_0 .et-pb-arrow-prev:hover,
.et_pb_post_slider_0 .et-pb-arrow-next:hover { opacity: 1 !important; color: var(--ic-gruen) !important; }
.et_pb_post_slider_0 .et-pb-controllers a {
  border-color: var(--ic-sand-dunkel) !important;
  transition: border-color var(--ic-transition), background-color var(--ic-transition) !important;
}
.et_pb_post_slider_0 .et-pb-controllers a.et-pb-active-control {
  background-color: var(--ic-gruen) !important;
  border-color: var(--ic-gruen) !important;
}

/* ic-heading */
.ic-heading,
.ic-heading-block { padding: 56px 0 28px; width: 100%; }
.ic-heading-inner,
.ic-heading-block-inner { display: flex; align-items: center; gap: 24px; }
.ic-heading-label,
.ic-heading-block-label {
  font-family: var(--font-sans);
  font-size: 11px;
  font-weight: 400;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--ic-magenta);
  white-space: nowrap;
}
.ic-heading-title,
.ic-heading-block-title {
  font-family: var(--font-serif);
  font-weight: 300;
  color: var(--ic-braun);
  letter-spacing: 0.02em;
  margin: 0;
  white-space: nowrap;
  font-style: italic;
}
.ic-heading-title { font-size: 3rem; }
.ic-heading-block-title { font-size: 2.8rem; }
.ic-heading-title::after,
.ic-heading-block-title::after {
  content: '';
  display: block;
  width: 48px;
  height: 2px;
  background: var(--ic-gruen);
  margin-top: 8px;
}
.ic-heading-line,
.ic-heading-block-line { flex: 1; height: 1px; background: var(--ic-sand); }

/* ============================================================
   14. DIVI SEKTION FIXES
   ============================================================ */
.et_pb_section_1.et_pb_section { padding-bottom: 0px !important; }

/* ============================================================
   15. ANIMATIONEN
   ============================================================ */
@keyframes icFadeIn {
  from { opacity: 0; transform: translateY(20px); }
  to   { opacity: 1; transform: translateY(0); }
}
@keyframes icFadeUp {
  from { opacity: 0; transform: translateY(14px); }
  to   { opacity: 1; transform: translateY(0); }
}

/* ============================================================
   16. RESPONSIVE
   ============================================================ */
@media (max-width: 980px) {
  .ic-hola-soy { font-size: 2.2rem; }
  .ic-hero-tagline { font-size: 1.5rem; }
  .ic-flores-title { font-size: 2rem; }
  .ic-contact-title { font-size: 2rem; }
  .ic-modal-inner { grid-template-columns: auto; padding: 2rem; }
  .ic-modal-flower { text-align: center; }
  .ic-modal-flower img { width: 140px; }
  .pa-hero-title { font-size: 2.4rem; }
  .pa-semillas-title { font-size: 1.7rem; }
  .ic-blog-hero-banner { padding: 70px 30px 56px; }
  .ic-blog-hero-title { font-size: 4.5rem; }
  .ic-blog-hero-desc { font-size: 1rem; max-width: 500px; }
  .ic-bc1 { width: 300px; height: 300px; top: -100px; right: -50px; }
  .ic-heading { padding: 44px 0 22px; }
  .ic-heading-title { font-size: 2.4rem; }
  .ic-heading-block { padding: 44px 0 22px; }
  .ic-heading-block-title { font-size: 2.2rem; }
  .et_pb_post_slider_0 .et_pb_slide_title { font-size: 1.9rem !important; }
  .et-db #et-boc .et-l .et_pb_wc_title_0_tb_body h1 { font-size: 1.8rem !important; }
  .et-db #et-boc .et-l .et_pb_wc_add_to_cart_0_tb_body .single_add_to_cart_button { width: 100% !important; }
  .et_pb_post_content h2 { font-size: 22px !important; margin-top: 40px !important; }
  .et_pb_post_content h3 { font-size: 18px !important; }
  .et_pb_post_content p  { font-size: 0.9rem !important; }
  .et_pb_post_content blockquote { padding: 24px 26px !important; }
  .et_pb_post_content blockquote p { font-size: 1.05rem !important; }
  .et_pb_comments_module { padding: 24px !important; }
  .et_pb_comments_module #respond,
  .et_pb_comments_module .comment-respond { padding: 24px !important; }
  .et_pb_comments_module h2.comments-title { font-size: 20px !important; }
  .et-db #et-boc .et-l .et_pb_post_title_0 h1.entry-title { font-size: 2.2rem !important; }
}

@media (max-width: 768px) {
  .ic-hero-tagline { text-align: center; margin: 0 auto; }
  .ic-footer { padding: 2rem; flex-direction: column; align-items: center; text-align: center; }
  .ic-footer-nav { flex-wrap: wrap; justify-content: center; }
  .ic-footer-legal { justify-content: center; }
  .ic-sobre-desc { padding: 24px 0 32px; }
  .ic-sobre-desc-text { font-size: 0.92rem; }
  .ic-sobre-desc-highlight { font-size: 1.2rem; }
  .ic-legal-wrap { padding: 40px 20px 60px; }
  .ic-legal-title { font-size: 2rem !important; }
  .ic-legal-h2 { font-size: 1.3rem !important; }
}

@media (max-width: 767px) {
  .ic-blog-hero-banner { padding: 52px 24px 44px; }
  .ic-blog-hero-title { font-size: 3.2rem; margin-bottom: 16px; }
  .ic-blog-hero-eyebrow { font-size: 10px; margin-bottom: 12px; }
  .ic-blog-hero-desc { font-size: 0.92rem; line-height: 1.75; max-width: 100%; }
  .ic-bc1 { width: 200px; height: 200px; top: -60px; right: -40px; }
  .ic-bc2 { display: none; }
  .ic-heading { padding: 32px 0 16px; }
  .ic-heading-title { font-size: 1.9rem; white-space: normal; }
  .ic-heading-label { font-size: 9px; letter-spacing: 0.14em; }
  .ic-heading-line { display: none; }
  .ic-heading-block { padding: 32px 0 16px; }
  .ic-heading-block-title { font-size: 1.8rem; white-space: normal; }
  .ic-heading-block-line { display: none; }
  .et_pb_post_slider_0 .et_pb_slide_title { font-size: 1.5rem !important; }
  .et_pb_post_slider_0 .et_pb_more_button.et_pb_button { width: 100% !important; text-align: center !important; }
  .et_pb_post_content h1 { font-size: 2rem !important; }
  .et_pb_post_content h2 { font-size: 1.4rem !important; margin-top: 32px !important; }
  .et_pb_post_content h3 { font-size: 1.2rem !important; }
  .et_pb_post_content .et_pb_text_0 .et_pb_text_inner > p:first-child { font-size: 0.95rem !important; padding-left: 14px !important; }
  .et_pb_post_content p  { font-size: 0.88rem !important; }
  .et_pb_post_content ul li,
  .et_pb_post_content ol li { font-size: 0.88rem !important; }
  .et_pb_post_content blockquote { padding: 20px 18px !important; }
  .et_pb_post_content blockquote p { font-size: 1rem !important; }
  .et_pb_comments_module { padding: 18px !important; }
  .et_pb_comments_module .commentlist li.comment { padding: 16px 18px !important; }
  .et_pb_comments_module .commentlist .children { padding-left: 16px !important; }
  .et_pb_comments_module #respond,
  .et_pb_comments_module .comment-respond { padding: 20px !important; }
  .et_pb_comments_module h2.comments-title { font-size: 1.3rem !important; }
  .et_pb_comments_module .comment-author .avatar { width: 36px !important; height: 36px !important; }
  .et_pb_comments_module .comment-form input,
  .et_pb_comments_module .comment-form textarea { font-size: 0.88rem !important; padding: 10px 14px !important; }
  .et_pb_comments_module input[type="submit"] { width: 100% !important; padding: 12px !important; }
  .et-db #et-boc .et-l .et_pb_wc_tabs_0_tb_body .et_pb_tab_content { padding: 20px 16px !important; }
  .et-db #et-boc .et-l .et_pb_post_title_0 .et_pb_title_container { padding: 32px 0 20px !important; }
  .et-db #et-boc .et-l .et_pb_post_title_0 h1.entry-title { font-size: 1.8rem !important; }
}

@media (max-width: 480px) {
  .ic-blog-hero-banner { padding: 44px 20px 36px; }
  .ic-blog-hero-title { font-size: 2.6rem; }
  .ic-blog-hero-desc { font-size: 0.85rem; }
  .ic-heading { padding: 24px 0 12px; }
  .ic-heading-title { font-size: 1.6rem; }
  .ic-heading-block { padding: 24px 0 12px; }
  .ic-heading-block-title { font-size: 1.5rem; }
}

.et_pb_menu_0_tb_header.et_pb_menu .et_mobile_menu,
.et_pb_menu_0_tb_header.et_pb_menu .et_mobile_menu ul {
  background-color: #f5f0e8 !important;
}

/* ── Kontaktseite: Enviar Button ─────────────────────── */
.ic-btn-send {
  display: inline-block;
  width: 100%;
  padding: 0.85rem 2rem;
  background-color: var(--ic-gruen);
  color: var(--ic-cream);
  font-family: 'Jost', sans-serif;
  font-size: 0.95rem;
  font-weight: 400;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  border: none;
  border-radius: 0;
  cursor: pointer;
  transition: background-color 0.25s ease, color 0.25s ease;
}
.ic-btn-send:hover {
  background-color: var(--ic-braun);
  color: var(--ic-cream);
}
.ic-btn-send:active {
  background-color: var(--ic-magenta);
}
.ic-btn-send:focus-visible {
  outline: 2px solid var(--ic-magenta);
  outline-offset: 3px;
}

.woocommerce-Reviews,
.woocommerce-tabs .reviews_tab,
.star-rating { display: none !important; }

/* ── Productos: Más información Akkordeon (automatisch, pro Produkt) ─── */
.pa-info-btn {
  display: inline-block;
  font-family: var(--font-sans);
  font-weight: 400;
  font-size: 0.78rem;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  text-decoration: none;
  cursor: pointer;
  padding: 14px 32px;
  background: var(--ic-gruen);
  color: #ffffff;
  border: 2px solid var(--ic-gruen);
  border-radius: var(--ic-radius-sm);
  margin-top: 8px;
  transition: background var(--ic-transition), color var(--ic-transition);
}
.pa-info-btn:hover {
  background: transparent;
  color: var(--ic-gruen);
}

.pa-info-wrapper {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.4s ease;
}
.pa-info-wrapper.visible {
  max-height: 2000px;
}

.pa-info-content {
  background: #fdf9f4;
  border: var(--ic-border);
  border-radius: 0 0 var(--ic-radius) var(--ic-radius);
  padding: 28px 32px;
  margin-top: 1rem;
  font-family: var(--font-sans);
  font-weight: 300;
  font-size: 0.95rem;
  line-height: 1.85;
  color: var(--ic-braun);
}
.pa-info-content p { margin-bottom: 14px; }
.pa-info-content ul {
  list-style: none;
  padding-left: 0;
  margin: 0 0 20px;
}
.pa-info-content ul li {
  padding-left: 18px;
  position: relative;
  margin-bottom: 6px;
  font-family: var(--font-sans);
  font-weight: 300;
  color: var(--ic-braun);
}
.pa-info-content ul li::before {
  content: '';
  position: absolute;
  left: 0;
  top: 9px;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background-color: var(--ic-gruen);
}
.pa-info-content strong {
  font-family: var(--font-sans);
  font-weight: 400;
  color: var(--ic-braun);
}

/* ── Related Products Titel ausblenden ── */
.related.products > h2 {
  display: none !important;
}

/* ── Sobre mí: Divi Gallery im ic-photo-strip Look ── */
.ic-fotoalbum .et_pb_gallery_image img {
  aspect-ratio: 1 / 1;
  object-fit: cover;
  border-radius: 0;
  filter: none;
  transition: transform 0.3s ease;
}
.ic-fotoalbum .et_pb_gallery_image img:hover {
  transform: scale(1.03);
}
.ic-fotoalbum .et_pb_gallery_item {
  border: 1px solid var(--ic-sand);
}