/* Gemeindejournal Suite Pro 1.2.108.420
   Optischer Feinschliff ohne Änderung an OFFEN-, Statistik-, Such- oder Cache-Logik. */
:root{
  --gj-ui-red:#b53832;
  --gj-ui-red-dark:#912b27;
  --gj-ui-ink:#172033;
  --gj-ui-muted:#667085;
  --gj-ui-border:#eadbd7;
  --gj-ui-soft:#fff6f3;
  --gj-ui-soft-2:#fffaf8;
  --gj-ui-shadow:0 18px 45px rgba(34,18,16,.075);
  --gj-ui-shadow-sm:0 10px 28px rgba(34,18,16,.055);
  --gj-ui-radius:20px;
}

/* Gemeinsamer Portal-/Modul-Rhythmus */
html body .gjdt-wrap,
html body .gjlr,
html body .gj-package-compare-v2,
html body .gj-sales-packages-public{
  color:var(--gj-ui-ink);
}
html body .gjdt-wrap a,
html body .gjlr a,
html body .gj-package-compare-v2 a{
  text-underline-offset:3px;
}

/* Karten wirken auf allen Suite-Modulen gleichwertiger. */
html body .gjdt-block,
html body .gjdt-card,
html body .gjdt-business-card,
html body .gjdt-custom-card,
html body .gjdt-dir-card,
html body .gjlr-panel,
html body .gjlr-tile,
html body .gjlr-business-card,
html body .gj-package-card,
html body .gj-package-compare-card,
html body .gj-package-form-card{
  border-color:var(--gj-ui-border) !important;
  border-radius:var(--gj-ui-radius) !important;
  box-shadow:var(--gj-ui-shadow-sm) !important;
}
html body .gjdt-business-card,
html body .gjdt-custom-card,
html body .gjdt-dir-card,
html body .gjlr-business-card,
html body .gjlr-tile{
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
@media (hover:hover){
  html body .gjdt-business-card:hover,
  html body .gjdt-custom-card:hover,
  html body .gjdt-dir-card:hover,
  html body .gjlr-business-card:hover,
  html body .gjlr-tile:hover{
    transform:translateY(-2px);
    box-shadow:var(--gj-ui-shadow) !important;
    border-color:#e5c5bf !important;
  }
}

/* Bilder und Logos ruhiger ausrichten. */
html body .gjdt-business-card img,
html body .gjdt-custom-card img,
html body .gjdt-dir-card img,
html body .gjlr-business-card img,
html body .gjlr-tile img{
  border-radius:14px;
}
html body .gjdt-custom-img,
html body .gjdt-business-img,
html body .gjdt-dir-card__image,
html body .gjlr-business-logo,
html body .gjlr-tile-image{
  background:linear-gradient(135deg,#fff,#fff7f5) !important;
}

/* Einheitliche Badge-Sprache. */
html body .gjdt-card-value-badge,
html body .gjdt-custom-status,
html body .gjlr-status,
html body .gjlr-badge,
html body .gjdt-badge,
html body .gjdt-custom-badge,
html body .gj-business-badge,
html body .directorist-badge,
html body .directorist-badge-open,
html body .gj-package-badge{
  border-radius:999px !important;
  font-weight:850 !important;
  letter-spacing:.005em;
  box-shadow:none !important;
}
html body .gjdt-custom-status--open,
html body .gjdt-card-value-badge--open,
html body .gjlr-status--offen{
  background:#16a34a !important;
  border-color:#16a34a !important;
  color:#fff !important;
}
html body [class*="gutschein" i],
html body [class*="coupon" i]{
  font-weight:800;
}

/* Such- und Filterleisten als wertige Portal-Elemente. */
html body .gjlr-search,
html body .gjlr-community-search,
html body .gjdt-search,
html body .gjdt-filterbar,
html body .gjdt-main-tabs,
html body .gjdt-location-tabs,
html body .gjlr-filterbar,
html body .gjlr-community-actions{
  border-color:var(--gj-ui-border) !important;
}
html body .gjlr-search input,
html body .gjlr-community-search input,
html body .gjdt-search input,
html body input.gjdt-search-input,
html body input.gjlr-search-input{
  border-radius:16px !important;
  border-color:#ead7d3 !important;
  box-shadow:0 8px 22px rgba(34,18,16,.035) !important;
}
html body .gjlr-search button,
html body .gjlr-community-search button,
html body .gjdt-search button,
html body .gjdt-tab,
html body .gjlr-tab,
html body .gjdt-filter,
html body .gjlr-filter,
html body .gjdt-button,
html body .gjlr-button{
  border-radius:999px !important;
  font-weight:800 !important;
}
html body .gjdt-tab.is-active,
html body .gjlr-tab.is-active,
html body .gjdt-filter.is-active,
html body .gjlr-filter.is-active,
html body .gjdt-button.is-active,
html body .gjlr-button.is-active{
  box-shadow:0 10px 22px rgba(181,56,50,.16) !important;
}

/* Startseite: Portalmodule optisch stärker zusammenführen, ohne Layoutlogik zu ändern. */
html body.home .gjdt-portal-home,
html body.front-page .gjdt-portal-home{
  isolation:isolate;
}
html body.home .gjdt-portal-hero,
html body.front-page .gjdt-portal-hero{
  border-radius:24px !important;
  box-shadow:0 22px 54px rgba(34,18,16,.08) !important;
}
html body.home .gjdt-module-intro,
html body.front-page .gjdt-module-intro{
  border-radius:18px !important;
}

/* Gemeinde-Seiten: rechter Betriebe-Block und Listen optisch ruhiger. */
html body .gjlr-community .gjlr-panel-head h2,
html body .gjlr-community h2,
html body .gjdt-wrap h2{
  letter-spacing:-.025em;
}
html body .gjlr-community [data-gjlr-business-id],
html body .gjlr-community .gjlr-business-card{
  overflow:hidden;
}
html body .gjlr-community .gjlr-business-title,
html body .gjdt-custom-title,
html body .gjdt-business-title{
  letter-spacing:-.015em;
}

/* Detailseiten: Kontakt-Buttons klarer, ohne Verhalten zu ändern. */
html body.single-at_biz_dir .gjdt-detail-action,
html body.single-at_biz_dir .gjdt-detail-actions a,
html body.single-at_biz_dir .gjdt-detail-actions button,
html body.single-at_biz_dir a[href^="tel:"],
html body.single-at_biz_dir a[href^="mailto:"]{
  border-radius:999px;
}
html body.single-at_biz_dir .gjdt-detail-hero,
html body.single-at_biz_dir .gjdt-detail-section,
html body.single-at_biz_dir .gjdt-detail-card{
  border-color:var(--gj-ui-border) !important;
  box-shadow:var(--gj-ui-shadow-sm) !important;
}

/* Paket-/Angebotsseiten verkaufsstärker, aber ohne Formular-/Mail-Logik anzufassen. */
html body .gj-sales-packages-public .gj-package-card,
html body .gj-package-compare-v2 .gj-package-card,
html body .gj-package-compare-v2 .gj-package-compare-card{
  overflow:hidden;
}
html body .gj-sales-packages-public .gj-package-card:nth-of-type(3),
html body .gj-package-compare-v2 .gj-package-card:nth-of-type(3),
html body .gj-package-compare-v2 .gj-package-compare-card:nth-of-type(3){
  border-color:#d7b2a9 !important;
}
html body .gj-package-compare-v2 .gj-package-submit button,
html body .gj-sales-packages-public button,
html body .gj-package-compare-v2 button[type="submit"]{
  border-radius:999px !important;
  font-weight:850 !important;
}

/* Kleinere Viewports: Karten sauberer stapeln und Buttons nicht gequetscht wirken lassen. */
@media (max-width:780px){
  html body .gjdt-business-card,
  html body .gjdt-custom-card,
  html body .gjdt-dir-card,
  html body .gjlr-business-card{
    border-radius:18px !important;
  }
  html body .gjdt-main-tabs,
  html body .gjdt-location-tabs,
  html body .gjlr-filterbar,
  html body .gjlr-community-actions{
    gap:8px !important;
  }
  html body .gjdt-tab,
  html body .gjlr-tab,
  html body .gjdt-filter,
  html body .gjlr-filter{
    min-height:34px;
  }
}
