.dhf-standorte{margin:0 0 var(--dh-space-8,32px);padding:var(--dh-space-6,24px);border-radius:var(--dh-radius-xl,22px);background:radial-gradient(1200px 320px at 10% -10%,rgba(132,25,29,.06),transparent 60%),radial-gradient(900px 300px at 110% 0%,rgba(201,163,92,.10),transparent 55%),var(--dh-cream-50,#faf7f1)}.dhf-standorte__grid{display:grid;gap:var(--dh-space-5,20px);grid-template-columns:var(--dhf-cols,repeat(auto-fill,minmax(290px,1fr)))}.dhf-store{position:relative;display:flex;flex-direction:column;overflow:hidden;border-radius:var(--dh-radius-lg,16px);border:1px solid rgba(255,255,255,.55);background:rgba(255,255,255,.72);-webkit-backdrop-filter:blur(16px) saturate(1.3);backdrop-filter:blur(16px) saturate(1.3);box-shadow:var(--dh-shadow-2,0 8px 24px rgba(29,24,22,.10));transition:transform var(--dh-dur-2,220ms) var(--dh-ease-out,cubic-bezier(.16,1,.3,1)),box-shadow var(--dh-dur-2,220ms) var(--dh-ease-out,cubic-bezier(.16,1,.3,1)),border-color var(--dh-dur-2,220ms) var(--dh-ease,cubic-bezier(.2,.8,.2,1))}.dhf-store::before{content:"";position:absolute;inset:0 0 auto 0;height:3px;background:linear-gradient(90deg,var(--dh-accent,#6a1417),var(--dh-highlight,#c9a35c));opacity:0;transition:opacity var(--dh-dur-2,220ms) var(--dh-ease,cubic-bezier(.2,.8,.2,1));z-index:2}@media (hover:hover){.dhf-store:hover{transform:translateY(-6px);box-shadow:var(--dh-shadow-3,0 24px 64px rgba(29,24,22,.24));border-color:rgba(132,25,29,.30)}.dhf-store:hover::before{opacity:1}.dhf-store:hover .dhf-store__map{transform:scale(1.06)}}@supports not ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.dhf-store{background:var(--dh-surface,#fff);border-color:var(--dh-border,#ddd6ce)}}.dhf-store__media{position:relative;aspect-ratio:16 / 10;overflow:hidden;background:var(--dh-surface-3,#efe9df)}.dhf-store__media--empty{display:flex;align-items:center;justify-content:center;background:radial-gradient(600px 200px at 50% -20%,rgba(132,25,29,.10),transparent 60%),var(--dh-surface-2,#f7f4ee);min-height:120px}.dhf-store__map{position:absolute;inset:0;width:100%;height:100%;border:0;display:block;transition:transform var(--dh-dur-3,320ms) var(--dh-ease-out,cubic-bezier(.16,1,.3,1))}.dhf-store__flag{position:absolute;top:var(--dh-space-3,12px);left:var(--dh-space-3,12px);z-index:2;display:inline-flex;align-items:center;gap:6px;padding:5px 12px;font-size:var(--dh-text-xs,.8125rem);font-weight:700;letter-spacing:.02em;color:#fff;background:rgba(106,20,23,.94);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.25);border-radius:var(--dh-radius-pill,999px);box-shadow:0 2px 8px rgba(29,24,22,.35)}.dhf-store__body{display:flex;flex-direction:column;gap:var(--dh-space-3,12px);padding:var(--dh-space-5,20px)}.dhf-store__head{display:flex;flex-direction:column;align-items:flex-start;gap:var(--dh-space-2,8px)}.dhf-store__name{margin:0;font-family:inherit;font-weight:700;font-size:var(--dh-text-xl,1.375rem);line-height:1.15;color:var(--dh-text,#1d1816)}.dhf-store__addr{margin:0;color:var(--dh-text-2,#433a35);font-size:var(--dh-text-sm,.9375rem);line-height:1.45}.dhf-store__status{display:inline-flex;align-items:center;gap:6px;padding:3px 11px;border-radius:var(--dh-radius-pill,999px);font-size:var(--dh-text-xs,.8125rem);font-weight:600;white-space:nowrap}.dhf-store__status::before{content:"";width:8px;height:8px;border-radius:50%;background:currentColor}.dhf-store__status.is-open{background:var(--dh-success-soft,#e7f3ec);color:var(--dh-success,#1f7a4d)}.dhf-store__status.is-closed{background:var(--dh-surface-3,#efe9df);color:var(--dh-text-muted,#6b625c)}.dhf-store__coming{display:inline-flex;align-items:center;gap:8px;align-self:flex-start;margin:0;padding:8px 14px;border-radius:var(--dh-radius,12px);background:var(--dh-accent-soft,#fbf3f3);border:1px solid rgba(132,25,29,.18);color:var(--dh-accent,#6a1417);font-weight:600;font-size:var(--dh-text-sm,.9375rem)}.dhf-store__coming .dhf-icon{flex:none}.dhf-store__special{display:inline-flex;align-items:center;gap:6px;align-self:flex-start;margin:0;padding:6px 12px;border-radius:var(--dh-radius,12px);background:var(--dh-warning-soft,#fbf0dd);border:1px solid rgba(143,85,0,.20);color:var(--dh-warning,#8f5500);font-size:var(--dh-text-sm,.9375rem);font-weight:600}.dhf-store__hours{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}.dhf-store__hrow{display:flex;align-items:baseline;justify-content:space-between;gap:var(--dh-space-4,16px);padding:6px 8px;border-radius:var(--dh-radius-sm,8px);font-size:var(--dh-text-sm,.9375rem);color:var(--dh-text-2,#433a35)}.dhf-store__hrow+.dhf-store__hrow{border-top:1px solid var(--dh-border,#ece6de)}.dhf-store__hday{color:var(--dh-text-muted,#6b625c)}.dhf-store__htime{font-variant-numeric:tabular-nums}.dhf-store__hrow--closed .dhf-store__htime{color:var(--dh-text-muted,#958c85)}.dhf-store__hrow.is-today{background:var(--dh-accent-soft,#fbf3f3);border-top-color:transparent}.dhf-store__hrow.is-today .dhf-store__hday,.dhf-store__hrow.is-today .dhf-store__htime{color:var(--dh-accent,#6a1417);font-weight:700}.dhf-store__actions{margin-top:var(--dh-space-1,4px);display:flex;flex-wrap:wrap;gap:var(--dh-space-2,8px)}.dhf-store__actions .dhf-btn{gap:6px}.dhf-store__events{margin-top:var(--dh-space-1,4px);padding:var(--dh-space-3,12px) var(--dh-space-4,16px);border-radius:var(--dh-radius,12px);background:var(--dh-accent-soft,#fbf3f3);border:1px solid rgba(132,25,29,.14)}.dhf-store__events-head{display:flex;align-items:center;gap:6px;margin:0 0 var(--dh-space-2,8px);font-weight:700;color:var(--dh-accent,#6a1417);font-size:var(--dh-text-sm,.9375rem)}.dhf-store__event-list{list-style:none;margin:0 0 var(--dh-space-2,8px);padding:0;display:flex;flex-direction:column;gap:6px}.dhf-store__event{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px;font-size:var(--dh-text-sm,.9375rem);color:var(--dh-text-2,#433a35)}.dhf-store__event-date{font-weight:700;color:var(--dh-text,#1d1816);min-width:92px}.dhf-store__event-title{flex:1 1 auto}.dhf-store__event-meta{color:var(--dh-text-muted,#6b625c);font-size:var(--dh-text-xs,.8125rem)}.dhf-store__events-link{font-weight:600;color:var(--dh-accent,#6a1417);font-size:var(--dh-text-sm,.9375rem);text-decoration:none}.dhf-store__events-link:hover{text-decoration:underline}.dhf-store__optin{display:flex;flex-direction:column;gap:var(--dh-space-2,8px);padding:var(--dh-space-3,12px) var(--dh-space-4,16px);border-radius:var(--dh-radius,12px);background:var(--dh-surface-2,#f7f4ee);border:1px solid var(--dh-border,#ddd6ce)}.dhf-store__optin-intro{margin:0;font-weight:600;color:var(--dh-text,#1d1816);font-size:var(--dh-text-sm,.9375rem)}.dhf-store__optin-row{display:flex;gap:var(--dh-space-2,8px);flex-wrap:wrap}.dhf-store__optin-email{flex:1 1 160px;min-width:0;padding:9px 12px;border:1px solid var(--dh-border-strong,#bdb5ae);border-radius:10px;font:inherit;color:var(--dh-text,#1d1816);background:var(--dh-surface,#fff)}.dhf-store__optin-consent{display:flex;gap:8px;align-items:flex-start;font-size:var(--dh-text-xs,.8125rem);color:var(--dh-text-2,#433a35);line-height:1.4}.dhf-store__optin-consent input{margin-top:2px;flex:none}.dhf-store__optin-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;opacity:0}.dhf-store__optin-msg{margin:0;font-size:var(--dh-text-xs,.8125rem);font-weight:600}.dhf-store__optin-msg.is-ok{color:var(--dh-success,#1f7a4d)}.dhf-store__optin-msg.is-err{color:var(--dh-danger,#b3261e)}.dhf-standorte__notice{margin:0 0 var(--dh-space-4,16px);padding:var(--dh-space-3,12px) var(--dh-space-4,16px);border-radius:var(--dh-radius,12px);font-weight:600}.dhf-standorte__notice.is-ok{background:var(--dh-success-soft,#e7f3ec);color:var(--dh-success,#1f7a4d)}.dhf-standorte__notice.is-err{background:var(--dh-danger-soft,#fbe9e7);color:var(--dh-danger,#b3261e)}.dhf-store:not(.dhf-store--coming) .dhf-store__coming{display:none}.dhf-store:not(.dhf-store--coming) .dhf-store__flag{display:none}.dhf-store:not(.dhf-store--coming) .dhf-store__media--empty{display:none}.dhf-store:not(.dhf-store--coming) .dhf-store__optin{display:none}.dhf-store--coming .dhf-store__hours,.dhf-store--coming .dhf-store__status{display:none}@media (max-width:420px){.dhf-standorte{padding:var(--dh-space-4,16px)}.dhf-standorte__grid{grid-template-columns:1fr}}