/* «¿Dónde hay Bier Karten?»: usa la base de la carta (carta.css) y suma lo propio. */
.d-marca { flex-grow: 1; min-width: 0; display: flex; flex-direction: column; align-items: flex-start; gap: 3px; color: var(--acento); text-decoration: none; }
.d-marca .gotica { font-family: var(--f-gotica); font-weight: 700; font-size: 28px; line-height: 1; color: var(--oro); white-space: nowrap; }
.d-marca .by { padding-left: 2px; font-size: 10px; font-weight: 700; letter-spacing: 0.24em; text-transform: uppercase; color: var(--banda-txt-2); white-space: nowrap; }
.d-marca:focus-visible { outline: 2px solid var(--oro); outline-offset: 3px; border-radius: 4px; }

.d-carta { margin-top: 6px; }
.d-in { padding: 16px 12px 22px; display: flex; flex-direction: column; gap: 12px; }
.d-t { margin: 0; font-family: var(--f-display); font-size: 27px; font-weight: 700; line-height: 1.12; text-wrap: balance; }
.d-s { margin: -4px 0 0; font-size: 15.5px; line-height: 1.45; color: var(--texto-2); }

.d-buscar { display: flex; gap: 8px; }
.d-buscar input { flex-grow: 1; min-width: 0; height: 48px; padding: 0 14px; border-radius: 12px; border: 1.5px solid var(--carta-borde); background: transparent; color: var(--texto); font: 500 16px var(--f-body); }
.d-buscar input::placeholder { color: var(--texto-2); }
.d-buscar input:focus { outline: none; border-color: var(--acento); }
.d-cerca { flex-shrink: 0; height: 48px; padding: 0 14px; border-radius: 12px; border: 1.5px solid var(--acento); background: transparent; color: var(--acento); font: 700 15px var(--f-body); display: inline-flex; align-items: center; gap: 6px; cursor: pointer; white-space: nowrap; }
.d-cerca[aria-pressed="true"] { background: var(--acento); color: var(--sobre-acento); }
.d-cerca:focus-visible, .d-mapa:focus-visible, .d-fui:focus-visible, .d-ig:focus-visible { outline: 2px solid var(--acento); outline-offset: 2px; }
.d-estado { margin: -4px 0 0; font-size: 14px; line-height: 1.4; color: var(--texto-2); }
.d-estado:empty { display: none; }

.d-lista { display: flex; flex-direction: column; gap: 6px; }
.d-zona { margin-top: 8px; }
.d-zona .fam-h { margin-bottom: 6px; }
.d-cant { flex-shrink: 0; order: 3; font-size: 12.5px; font-weight: 600; color: var(--texto-2); letter-spacing: 0.04em; }
.d-zona-l { display: flex; flex-direction: column; }

.d-bar { padding: 12px 2px 12px; border-bottom: 1px dotted var(--filete); display: flex; flex-direction: column; gap: 10px; }
.d-zona-l .d-bar:last-child { border-bottom: 0; }
.d-bar-cab { display: flex; align-items: flex-start; gap: 12px; }
.d-logo { flex-shrink: 0; width: 48px; height: 48px; border-radius: 12px; background: var(--logo); color: #FFFFFF; display: grid; place-items: center; overflow: hidden; font: 700 17px var(--f-display); }
.d-logo.con-foto { background: #FFFFFF; }
.d-logo img { width: 100%; height: 100%; object-fit: cover; display: block; }
.d-bar-txt { flex-grow: 1; min-width: 0; }
.d-bar-txt h3 { margin: 2px 0 0; font-family: var(--f-display); font-size: 19px; font-weight: 700; line-height: 1.2; color: var(--texto); overflow-wrap: anywhere; }
.d-bar-txt p { margin: 3px 0 0; font-size: 14.5px; line-height: 1.35; color: var(--texto-2); overflow-wrap: anywhere; }
.d-bar-txt .d-dist { display: flex; align-items: center; gap: 4px; font-weight: 700; color: var(--acento); }
.d-bar-txt .d-dist.sin { font-weight: 600; color: var(--texto-2); }
.d-ig { flex-shrink: 0; width: 44px; height: 44px; border-radius: 999px; border: 1.5px solid var(--carta-borde); color: var(--texto); display: grid; place-items: center; }

.d-ir { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
.d-ir-t { flex-basis: 100%; font-size: 12.5px; font-weight: 700; letter-spacing: 0.12em; text-transform: uppercase; color: var(--texto-2); }
.d-mapa { flex: 1 1 0; min-width: 0; height: 44px; padding: 0 10px; border-radius: 12px; background: var(--texto); color: var(--carta); font: 700 15px var(--f-body); display: inline-flex; align-items: center; justify-content: center; text-decoration: none; white-space: nowrap; }
.d-fui { align-self: flex-start; min-height: 40px; padding: 0 2px; border: 0; background: transparent; color: var(--texto-2); font: 600 14px var(--f-body); text-decoration: underline; text-underline-offset: 3px; cursor: pointer; }

.d-hoja .ficha-in { gap: 14px; }
.d-hoja-cab { display: flex; align-items: flex-start; gap: 12px; }
.d-hoja-cab h2 { flex-grow: 1; margin: 4px 0 0; font-family: var(--f-display); font-size: 21px; font-weight: 700; line-height: 1.2; }
.d-hoja-s { margin: -6px 0 0; font-size: 15px; line-height: 1.4; color: var(--texto-2); }
.d-motivos { margin: 0; padding: 0; border: 0; display: flex; flex-direction: column; gap: 8px; }
.d-motivo { display: flex; align-items: center; gap: 12px; min-height: 52px; padding: 0 14px; border-radius: 12px; border: 1.5px solid var(--carta-borde); font-size: 16px; font-weight: 600; cursor: pointer; }
.d-motivo:has(input:checked) { border-color: var(--acento); }
.d-motivo input { width: 20px; height: 20px; accent-color: var(--acento); flex-shrink: 0; }
.d-com { display: flex; flex-direction: column; gap: 6px; font-size: 15px; color: var(--texto-2); }
.d-com textarea { min-height: 76px; padding: 10px 12px; border-radius: 12px; border: 1.5px solid var(--carta-borde); background: transparent; color: var(--texto); font: 500 16px var(--f-body); resize: vertical; }
.d-com textarea:focus { outline: none; border-color: var(--acento); }
.d-captcha:empty { display: none; }
.d-err { margin: 0; font-size: 14.5px; font-weight: 600; color: var(--acento); }
.d-enviar { margin-top: 0; width: 100%; }
.d-enviar[disabled] { opacity: 0.6; }

@media (max-width: 359px) {
  .d-cerca span { display: none; }
}
