﻿/*
Theme Name: OceanWP Child
Theme URI: https://oceanwp.org/
Template: oceanwp
Author: OceanWP
Author URI: https://oceanwp.org/about-oceanwp/
Description: OceanWP is the perfect theme for your project. Lightweight and highly extendable, it will enable you to create almost any type of website such a blog, portfolio, business website and WooCommerce storefront with a beautiful & professional design. Very fast, responsive, RTL & translation ready, best SEO practices, unique WooCommerce features to increase conversion and much more. You can even edit the settings on tablet & mobile so your site looks good on every device. Work with the most popular page builders as Elementor, Beaver Builder, Brizy, Visual Composer, Divi, SiteOrigin, etc... Developers will love his extensible codebase making it a joy to customize and extend. Best friend of Elementor & WooCommerce. Looking for a Multi-Purpose theme? Look no further! Check the demos to realize that it's the only theme you will ever need: https://oceanwp.org/demos/
Tags: two-columns,right-sidebar,footer-widgets,blog,news,custom-background,custom-menu,post-formats,rtl-language-support,sticky-post,editor-style,threaded-comments,translation-ready,buddypress,custom-colors,featured-images,full-width-template,theme-options,e-commerce,block-styles,wide-blocks,accessibility-ready
Version: 4.1.1.1754716497
Updated: 2025-08-09 05:14:57
*/

/*
Theme Name: OceanWP Child
Theme URI: https://oceanwp.org/
Template: oceanwp
Author: OceanWP
Description: Child Theme für WiMaBi
Version: 1.0.0
Updated: 2025-08-10
*/

/* =========================
   WiMaBi – Karten & Liste
   ========================= */

/* Karten-Grid – zentriert & ohne „Geisterspalten“ */
.adverts-list {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); /* auto-fit statt auto-fill */
    gap: 22px;
    max-width: 1280px;            /* Containerbreite begrenzen */
    margin: 0 auto;               /* Container zentrieren */
    align-content: start;         /* kein Stretch nach unten */
}

/* Karte */
.wimabi-card {
    background: #fff;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 2px 6px rgba(0,0,0,0.08);
    display: flex;
    flex-direction: column;
    width: 100%;
}

/* Titel oben – groß, Marke #4EB1A1 */
.wimabi-card__title {
    font-size: 1.9rem;       /* größer wie gewünscht */
    font-weight: 800;
    margin: 0;
    line-height: 1.4;
    text-align:center
}

.wimabi-card__title--top { padding: 14px 16px 8px; }
.wimabi-card__title a { color: #4EB1A1; text-decoration: none; }
.wimabi-card__title a:hover { color: #CF584D; }

/* Bildbereich – angepasst: Logos vollständig, nie beschnitten */
.wimabi-card__media {
    display: flex;                /* zentrieren von Bildern */
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 180px;                /* behält die Kartenhöhe bei */
    overflow: hidden;
    background: #fff;             /* neutraler Hintergrund für Logos */
}

.wimabi-card__img {
    object-fit: contain;          /* Bild vollständig anzeigen */
    object-position: center;      /* mittig ausrichten */
    width: auto;                  /* natürliche Breite */
    height: auto;                 /* natürliche Höhe */
    max-width: 100%;              /* nicht breiter als Container */
    max-height: 100%;             /* nicht höher als Container */
    display: block;               /* saubere Inline-Grafik */
}

/* Optionaler Platzhalter */
.wimabi-card__img--ph { 
    object-fit: contain; 
    background:#fff; 
}

/* Body */
.wimabi-card__body {
    padding: 12px 16px 16px;
    display: flex;
    flex-direction: column;
    gap: 8px;
}

/* Ort/Adresse – sehr präsent */
.wimabi-card__locationline {
    display: flex;
    align-items: center;
    gap: 8px;
    color: #CF584D;
}
.wimabi-card__loc { font-size: 1.8rem; font-weight: 800; }
.wimabi-card__sep { color: #bbb; }
.wimabi-card__addr { color: #444; }

/* Meta-Zeile: "Gültig bis …" und optional Preis */
.wimabi-card__meta {
    font-size: 1.00rem;
    color: #555;
    display: flex;
    gap: 8px;
    align-items: center;
    flex-wrap: wrap;
}
.wimabi-card__meta-sep { color: #ccc; }
.wimabi-card__valid-label { font-weight: 700; color: #444; }
.wimabi-card__valid-value { color: #222; }
.wimabi-card__price { font-weight: 600; color: #222; }

/* CTA als Balken (Basisstil) */
.wimabi-card__btn {
    display: block;
    width: 100%;
    background: #e74c3c;      /* Default-Farbe (falls keine Kategorie greift) */
    color: #fff;
    font-weight: 800;
    font-size: 1.1rem;
    padding: 14px 18px;
    border-radius: 6px;
    text-align: center;
    text-decoration: none;
    transition: background .2s ease, transform .05s ease-in-out;
    margin-top: 6px;
}
.wimabi-card__btn:hover { background: #c0392b; }
.wimabi-card__btn:active { transform: translateY(1px); }

/* ===== Button-Farben je Hauptkategorie (per Klasse .wimabi-cat-<slug>) ===== */
/* Ersetze die Slugs bei Bedarf durch eure echten Top-Level-Slugs */

/* Dienstleistungen */
.wimabi-cat-dienstleistungen .wimabi-card__btn { background: #4EB1A1; }
.wimabi-cat-dienstleistungen .wimabi-card__btn:hover { background: #3a8f85; }

/* Einzelhandel */
.wimabi-cat-einzelhandel .wimabi-card__btn { background: #FF8A00; }
.wimabi-cat-einzelhandel .wimabi-card__btn:hover { background: #cc6e00; }

/* Freizeit-Unterhaltung */
.wimabi-cat-freizeit-unterhaltung .wimabi-card__btn { background: #7B61FF; }
.wimabi-cat-freizeit-unterhaltung .wimabi-card__btn:hover { background: #6249e6; }

/* Gesundheit */
.wimabi-cat-gesundheit .wimabi-card__btn { background: #2ECC71; }
.wimabi-cat-gesundheit .wimabi-card__btn:hover { background: #25a85b; }

/* Gastronomie */
.wimabi-cat-gastronomie .wimabi-card__btn { background: #6D94FF; }
.wimabi-cat-gastronomie .wimabi-card__btn:hover { background: #3368FD; }

/* Network Marketing */
.wimabi-cat-network-marketing .wimabi-card__btn { background: #9B59B6; }
.wimabi-cat-network-marketing .wimabi-card__btn:hover { background: #7D3C98; }

/* Hover-Effekt (dezent) */
.wimabi-card:hover {
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(0,0,0,0.12);
}

/* Responsive Feinschliff */
@media (max-width: 480px) {
    .wimabi-card__title { font-size: 1.3rem; }
    .wimabi-card__media { height: 160px; }
    .wimabi-card__btn { font-size: 1.05rem; padding: 12px 16px; }
}
/* ===========================
   WiMaBi – Adverts Listing UI
   Update-fest im Child-Theme
   =========================== */

:root {
  --wimabi-green: #4EB1A1;
  --wimabi-yellow: #FAC352;
  --wimabi-red: #CF584D;
  --wimabi-bg: #ffffff;
  --wimabi-border: #e5e7eb;
  --wimabi-text: #111827;
  --wimabi-muted: #6b7280;
}

.wimabi-btn {
  display:inline-flex;align-items:center;justify-content:center;
  padding:.6rem 1rem;border-radius:10px;border:1px solid transparent;
  font-weight:600;text-decoration:none;cursor:pointer;transition:transform .08s ease, box-shadow .2s ease;
}
.wimabi-btn--primary { background: var(--wimabi-green); color:#fff; }
.wimabi-btn--primary:hover { transform: translateY(-1px); box-shadow:0 8px 20px rgba(78,177,161,.25); }
.wimabi-btn--accent  { background: var(--wimabi-red); color:#fff; }
.wimabi-btn--accent:hover { transform: translateY(-1px); box-shadow:0 8px 20px rgba(207,88,77,.25); }

/* Suche */
.wimabi-list-search { margin-bottom: 1rem; }
.wimabi-search-actions { margin-top:.5rem; }

/* Grid */
.wimabi-list-grid {
  display:grid;
  grid-template-columns: repeat(1, minmax(0, 1fr));
  gap: 14px;
}
@media (min-width: 640px) { .wimabi-list-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 1024px){ .wimabi-list-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (min-width: 1280px){ .wimabi-list-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); } }

/* Card */
.wimabi-card {
  background: var(--wimabi-bg);
  border:1px solid var(--wimabi-border);
  border-radius:14px; overflow:hidden;
  display:flex; flex-direction:column; min-height:100%;
  transition:box-shadow .2s ease, transform .06s ease;
}
.wimabi-card:hover { box-shadow:0 6px 24px rgba(0,0,0,.08); transform:translateY(-1px); }

.wimabi-card__media { position:relative; display:block; aspect-ratio:310/206; background:#f3f4f6; }
.wimabi-card__img { width:100%; height:100%; object-fit:cover; display:block; }
.wimabi-card__img.is-placeholder { filter:saturate(.85) contrast(.95); }
.wimabi-card__ph { width:100%; height:100%; background:linear-gradient(180deg,#f9fafb,#f3f4f6); }

.wimabi-card__badge {
  position:absolute; left:10px; top:10px;
  background: var(--wimabi-yellow); color:#111;
  font-weight:700; font-size:.78rem; padding:.25rem .5rem;
  border-radius:999px; border:1px solid rgba(0,0,0,.06);
  box-shadow:0 4px 10px rgba(0,0,0,.08);
}

.wimabi-card__body { padding:.8rem .9rem 1rem; display:flex; flex-direction:column; gap:.35rem; }
.wimabi-card__title { font-size:1rem; line-height:1.25; margin:0; }
.wimabi-card__title a { color:var(--wimabi-text); text-decoration:none; }
.wimabi-card__title a:hover { text-decoration:underline; }

.wimabi-card__meta { display:flex; gap:.5rem; flex-wrap:wrap; color:var(--wimabi-muted); font-size:.9rem; }
.wimabi-card__price { font-weight:700; color:var(--wimabi-red); }

/* Empty state */
.wimabi-empty { text-align:center; padding:1.25rem; border:1px dashed var(--wimabi-border); border-radius:12px; background:#fafafa; }
.wimabi-empty__title { font-weight:800; margin-bottom:.25rem; }
.wimabi-empty__hint  { color:var(--wimabi-muted); }

/* Pagination */
.wimabi-pagination { margin-top:16px; display:flex; justify-content:center; }
.wimabi-pagination .page-numbers { display:inline-block; margin:0 4px; padding:.4rem .7rem; border-radius:8px; border:1px solid var(--wimabi-border); text-decoration:none; color:#111; }
.wimabi-pagination .current { background:var(--wimabi-green); border-color:var(--wimabi-green); color:#fff; }

/* Platzhalter-Komponente */
.wimabi-ph { margin-top:16px; }
.wimabi-ph__inner { display:grid; gap:14px; grid-template-columns:1fr; align-items:center; }
@media (min-width: 1024px){ .wimabi-ph__inner { grid-template-columns: 620px 1fr; } }
.wimabi-ph__media img { width:100%; height:auto; border-radius:14px; border:1px solid var(--wimabi-border); }
.wimabi-ph__title { margin:0 0 .25rem; font-size:1.15rem; }
.wimabi-ph__text { margin:0 0 .6rem; color:var(--wimabi-muted); }

/* Kategorie-Farben (Beispiele; bei Bedarf erweitern) */
.wimabi-card.term-friseur   .wimabi-card__badge { background:#ffd166; }
.wimabi-card.term-restaurant .wimabi-card__badge { background:#a0e7e5; }
.wimabi-card.term-elektronik .wimabi-card__badge { background:#bdb2ff; }
.wimabi-card.term-gesundheit .wimabi-card__badge { background:#caffbf; }
