/* Farben über Elementor-Globals überschreibbar */
.dv-details,.dv-grid,.dv-gallery{--dv-accent:var(--e-global-color-primary,#3d6b35);--dv-border:#e5e5e5}
.dv-details{display:grid;grid-template-columns:1fr 1fr;gap:2rem;margin:2rem 0}
@media(max-width:767px){.dv-details{grid-template-columns:1fr}}
.dv-section{margin-bottom:1.5rem}
.dv-section h3{font-size:1.1em;margin:0 0 .6em;padding-bottom:.4em;border-bottom:2px solid var(--dv-accent)}
.dv-list{list-style:none;margin:0;padding:0}
.dv-list li{display:flex;gap:.7em;align-items:flex-start;padding:.35em 0}
.dv-icon{color:var(--dv-accent);width:1.25em;flex:0 0 1.25em;text-align:center;margin-top:.15em}
.dv-social{list-style:none;display:flex;gap:.5em;margin:.8em 0 0;padding:0}
.dv-social a{display:inline-flex;align-items:center;justify-content:center;width:2.2em;height:2.2em;border-radius:50%;background:var(--dv-accent);color:#fff;text-decoration:none}
.dv-social .dv-icon{color:inherit;margin:0}
.dv-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.dv-hours-table{width:100%;border-collapse:collapse}
.dv-hours-table th,.dv-hours-table td{text-align:left;padding:.35em 0;border-bottom:1px solid var(--dv-border);font-weight:normal}
.dv-hours-table .dv-today{font-weight:bold;color:var(--dv-accent)}
.dv-hours-note{font-size:.9em;opacity:.8}
.dv-map{width:100%;border-radius:6px;z-index:0}
.dv-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:.6rem}
.dv-gallery img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:4px;display:block}
.dv-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1.5rem}
.dv-card{border:1px solid var(--dv-border);border-radius:6px;overflow:hidden}
.dv-card-img img{width:100%;aspect-ratio:16/9;object-fit:cover;display:block}
.dv-card-body{padding:1rem}
.dv-card-body h3{margin:0 0 .5em;font-size:1.15em}
