/* AddiPress Listings — category / location directory. */
.apl-dir__grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
    gap: 14px;
    margin: 10px 0;
}
.apl-dir__card {
    display: flex; flex-direction: column; gap: 4px;
    padding: 18px 18px;
    border: 1px solid var(--apl-line, #e2e8f0);
    border-radius: 14px; background: #fff;
    text-decoration: none; color: inherit;
    transition: transform .12s, box-shadow .12s, border-color .12s;
}
.apl-dir__card:hover { transform: translateY(-3px); box-shadow: 0 14px 30px rgba(15,23,42,.1); border-color: transparent; }
.apl-dir__name { font-size: 16px; font-weight: 800; }
.apl-dir__count { font-size: 13px; color: var(--apl-muted, #64748b); }

/* Content pages — lead, contact form, sitemap (giant-style pages) */
.apl-lead{font-size:18px;color:#334155;line-height:1.6;margin:0 0 20px}
.apl-contact{max-width:620px;margin:8px 0 20px;display:flex;flex-direction:column;gap:14px}
.apl-contact__row{display:flex;gap:14px;flex-wrap:wrap}
.apl-contact__row label{flex:1;min-width:200px}
.apl-contact label{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:600;color:#334155}
.apl-contact input,.apl-contact textarea{padding:11px 13px;border:1px solid #e2e8f0;border-radius:10px;font-size:15px;font-family:inherit}
.apl-contact input:focus,.apl-contact textarea:focus{outline:none;border-color:var(--apl-primary,#4f46e5);box-shadow:0 0 0 3px #eef2ff}
.apl-contact button{align-self:flex-start}
.apl-contact__msg{font-weight:600;font-size:14px}
.apl-sitemap ul{columns:2;column-gap:32px;list-style:none;padding:0}
.apl-sitemap li{padding:6px 0}
.apl-sitemap a{color:#4338ca;font-weight:600}
@media(max-width:560px){.apl-sitemap ul{columns:1}}
