/* LB10 2026 (LawBuzz) award badge + certificate lightbox. Used on /reviews, /family-law, /guardianship, /attorneys. */
.lb10-award {
    display: inline-flex;
    align-items: center;
    gap: 14px;
    direction: rtl;
    text-align: right;
    text-decoration: none;
    border-radius: 14px;
    padding: 10px 18px 10px 14px;
    max-width: 100%;
    transition: box-shadow .2s ease, border-color .2s ease;
    cursor: zoom-in;
}
.lb10-award:focus-visible { outline: 3px solid #c9a55c; outline-offset: 3px; }
.lb10-award__seal {
    display: block;
    height: 96px;
    width: auto;
    flex: 0 0 auto;
    filter: drop-shadow(0 2px 4px rgba(0, 0, 0, .25));
}
.lb10-award__text { display: flex; flex-direction: column; gap: 4px; min-width: 0; }
.lb10-award__title { font-weight: 700; font-size: 1rem; line-height: 1.45; margin: 0; }
.lb10-award__cta { font-size: .875rem; font-weight: 600; color: #a8843f; text-decoration: underline; text-underline-offset: 3px; }

/* Light pages */
.lb10-award--light { background: #fffdf7; border: 1px solid #e8d9b5; color: #1a1a2e; }
.lb10-award--light:hover { box-shadow: 0 4px 14px rgba(201, 165, 92, .25); border-color: #c9a55c; }

/* Dark hero (reviews page) */
.lb10-award--dark { background: rgba(255, 255, 255, .05); border: 1px solid rgba(201, 165, 92, .45); color: #fff; }
.lb10-award--dark:hover { border-color: #c9a55c; box-shadow: 0 4px 18px rgba(0, 0, 0, .35); }
.lb10-award--dark .lb10-award__cta { color: #e5c98b; }
.lb10-award--dark .lb10-award__seal { height: 110px; }

/* Small version (attorneys / about) */
.lb10-award--small { padding: 6px 14px 6px 10px; gap: 10px; }
.lb10-award--small .lb10-award__seal { height: 64px; }
.lb10-award--small .lb10-award__title { font-size: .9rem; }

@media (max-width: 640px) {
    .lb10-award { gap: 10px; padding: 8px 12px 8px 10px; }
    .lb10-award__seal, .lb10-award--dark .lb10-award__seal { height: 80px; }
    .lb10-award--small .lb10-award__seal { height: 56px; }
    .lb10-award__title { font-size: .9rem; }
}

/* Certificate lightbox */
.lb10-dialog {
    padding: 0;
    border: 0;
    background: transparent;
    max-width: min(92vw, 640px);
    max-height: 92vh;
    overflow: visible;
}
.lb10-dialog::backdrop { background: rgba(10, 12, 24, .82); }
.lb10-dialog img { display: block; width: 100%; height: auto; max-height: 86vh; object-fit: contain; border-radius: 8px; box-shadow: 0 10px 40px rgba(0, 0, 0, .5); }
.lb10-dialog__close {
    position: absolute;
    top: -14px;
    left: -14px;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    border: 2px solid #c9a55c;
    background: #1a1a2e;
    color: #fff;
    font-size: 22px;
    line-height: 1;
    cursor: pointer;
}
.lb10-dialog__close:focus-visible { outline: 3px solid #c9a55c; outline-offset: 2px; }
@media (max-width: 640px) { .lb10-dialog__close { top: 6px; left: 6px; } }
