/* FRIATO — Distribuidores: localizar + contato comercial */
.fr-dist__grid {
    display: grid;
    grid-template-columns: minmax(0, 5fr) minmax(0, 7fr);
    gap: clamp(32px, 5vw, 72px);
    align-items: start;
}
.fr-dist__finder .fr-h2 { max-width: 18ch; }

.fr-dist__locate {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin: 28px 0 10px;
}
.fr-dist__locate .fr-field { flex: 1 1 220px; }
.fr-dist__locate .fr-field select { height: 50px; }
.fr-dist__locate .fr-pill { min-height: 50px; }
.fr-dist__locate .fr-pill:disabled { opacity: .6; cursor: progress; transform: none; }
.fr-dist__geo { min-height: 24px; font-size: 14px; color: var(--fr-muted-text); margin: 0 0 18px; }
.fr-dist__geo strong { color: var(--fr-wine); }

.fr-dist__list { display: grid; gap: 12px; }
.fr-dist-card {
    position: relative;
    display: flex;
    gap: 16px;
    align-items: flex-start;
    padding: 18px 20px;
    margin: 0;
    border: 1px solid var(--fr-sand);
    border-radius: var(--fr-radius-border-card);
    background: var(--fr-white);
    cursor: pointer;
    transition: border-color .2s, box-shadow .25s var(--fr-ease), transform .25s var(--fr-ease);
}
.fr-dist-card[hidden] { display: none; }
.fr-dist-card:hover { transform: translateY(-2px); box-shadow: 0 10px 24px rgba(58, 18, 8, .08); }
.fr-dist-card input { position: absolute; opacity: 0; pointer-events: none; }
.fr-dist-card:has(input:checked) { border-color: var(--fr-red); box-shadow: 0 0 0 3px rgba(212, 38, 31, .12); }
.fr-dist-card:has(input:focus-visible) { outline: 3px solid var(--fr-gold); outline-offset: 3px; }
.fr-dist-card__body { display: grid; gap: 4px; flex: 1; min-width: 0; }
.fr-dist-card__type { font-size: 12px; font-weight: 700; color: var(--fr-red); }
.fr-dist-card__name { font-size: 16px; font-weight: 700; line-height: 1.3; color: var(--fr-ink); }
.fr-dist-card__area { font-size: 14px; color: var(--fr-muted-text); }
.fr-dist-card__links { display: flex; flex-wrap: wrap; gap: 6px 16px; margin-top: 6px; font-size: 14px; }
.fr-dist-card__links a { color: var(--fr-wine) !important; font-weight: 700; text-decoration: underline; text-underline-offset: 3px; text-decoration-color: rgba(154, 42, 18, .3); }
.fr-dist-card__links a:hover { text-decoration-color: currentColor; }
.fr-dist-card__check {
    flex: 0 0 auto;
    width: 22px;
    height: 22px;
    margin-top: 2px;
    border-radius: 50%;
    border: 2px solid var(--fr-sand);
    transition: border-color .2s, background-color .2s, box-shadow .2s;
}
.fr-dist-card:has(input:checked) .fr-dist-card__check {
    border-color: var(--fr-red);
    background: var(--fr-red);
    box-shadow: inset 0 0 0 4px var(--fr-white);
}
.fr-dist-empty {
    display: grid;
    gap: 4px;
    padding: 20px;
    border-radius: var(--fr-radius-border-card);
    background: var(--fr-sand-light);
    color: var(--fr-ink);
    font-size: 15px;
}
.fr-dist-empty[hidden] { display: none; }
.fr-dist-empty strong { color: var(--fr-wine); }

/* Formulário */
.fr-dist__form-wrap { position: sticky; top: calc(var(--fr-header-h) + 20px); }

.fr-dist__map { border-radius: var(--fr-radius-card); overflow: hidden; box-shadow: var(--fr-shadow-soft); background: var(--fr-sand); }
.fr-dist__map iframe { display: block; width: 100%; height: clamp(360px, 55vw, 620px); border: 0; }

@media (max-width: 991.98px) {
    .fr-dist__grid { grid-template-columns: 1fr; }
    .fr-dist__form-wrap { position: static; }
}
