/* Public safeguards for the Lucero site cleanup plugin. */

.review-setup-panel,
.empty-reviews {
  display: none !important;
}

.review-section:has(.empty-reviews) {
  display: none !important;
}

.lsr-clean-shortcode-page {
  display: block;
  width: 100%;
  margin: 0;
  padding: 0;
  overflow: hidden;
}

.lsr-clean-shortcode-page > .lap,
.lsr-clean-shortcode-page > .lrr {
  width: 100%;
  max-width: none;
  margin: 0;
}

@media (max-width: 760px) {
  .lsr-clean-shortcode-page {
    overflow-x: clip;
  }
}

/*
 * Accessibility repairs audited July 30, 2026.
 *
 * The darker bronze is limited to small labels on light surfaces. Existing
 * gold-on-navy treatments are immediately restored so the approved dark hero
 * and CTA presentation is unchanged.
 */
.refined-homepage .refined-eyebrow {
  color: #78572f;
}

.refined-homepage :is(
  .refined-hero,
  .refined-dark,
  .refined-final-cta
) .refined-eyebrow {
  color: #dfbf7d;
}

.lrr-refined .lrr-eyebrow,
.lrr-refined .lrr-topic-card .lrr-category {
  color: #78572f;
}

.lrr-refined :is(
  .lrr-hero,
  .lrr-start,
  .lrr-cta,
  .lrr-guide-hero
) .lrr-eyebrow {
  color: #e3c783;
}

.lucero-refined-contact .lcp-page .lcp-eyebrow {
  color: #78572f;
}

.lucero-refined-contact .lcp-page :is(
  .lcp-hero,
  .lcp-section-dark,
  .lcp-closing,
  .lcp-contact-card-dark
) .lcp-eyebrow {
  color: #e3c783;
}

body.lrev-owned-page .lrev :is(.lrev-eyebrow, .lrev-kicker) {
  color: #78572f !important;
}

body.lrev-owned-page .lrev :is(.lrev-hero, .lrev-cta) .lrev-eyebrow {
  color: #dfbf7d !important;
}

body.lap-owned-page .lap .lap-section-kicker,
body.lap-owned-page .lap .lap-focus-index {
  color: #78572f !important;
}

/*
 * Official-source and long-form prose links need a non-color cue. Button,
 * navigation and whole-card treatments are deliberately outside this scope.
 */
.lrr-sources a:not(.lrr-btn):not([class*="button"]):not([class*="card"]),
.lrr-guide :is(p, li) > a:not(.lrr-btn):not([class*="button"]),
#official-sources .court-source > a:not(.lrr-btn):not([class*="button"]) {
  text-decoration: underline;
  text-decoration-thickness: .08em;
  text-underline-offset: .18em;
}

.lrr-sources a:not(.lrr-btn):focus-visible,
.lrr-guide :is(p, li) > a:not(.lrr-btn):focus-visible,
#official-sources .court-source > a:not(.lrr-btn):focus-visible,
.lsr-pdf-download-link:focus-visible,
.lsr-accessible-html-link:focus-visible {
  border-radius: 2px;
  outline: 3px solid #0b5f8a;
  outline-offset: 3px;
}

/*
 * Accessible alternatives remain adjacent to the original firm-owned PDF.
 * PDF buttons keep their approved treatment; text-style PDF links and the
 * alternative HTML links retain a visible underline.
 */
.lsr-pdf-download-link:not(.lrr-btn):not([class*="button"]) {
  text-decoration: underline;
  text-decoration-thickness: .08em;
  text-underline-offset: .18em;
}

.lsr-pdf-alternative {
  display: flex;
  min-height: 44px;
  margin-top: 10px;
  align-items: center;
  flex-wrap: wrap;
  gap: 5px;
  color: #384b59;
  font-size: .94rem;
  line-height: 1.45;
}

.lsr-pdf-alternative-label {
  font-weight: 700;
}

.lsr-accessible-html-link {
  color: #174f72 !important;
  font-weight: 750;
  text-decoration: underline !important;
  text-decoration-thickness: .08em !important;
  text-underline-offset: .18em;
}

/*
 * Mobile scannability refinement.
 *
 * These rules are intentionally limited to the six longest approved hub and
 * driver-defense pages. They reduce decorative vertical space and card
 * minimum heights without hiding copy, changing source order, or affecting
 * the laptop/desktop attorney portrait layout.
 */
@media (max-width: 780px) {
  :is(
    .ldrp-page,
    .ltrp-page,
    .ldmr-page,
    .lcdlr-page,
    .lshr-page,
    .lucero-resources-main > .lrr-refined
  ) {
    scroll-padding-bottom: 82px;
  }

  :is(
    .ldrp-page,
    .ltrp-page,
    .ldmr-page,
    .lcdlr-page,
    .lshr-page,
    .lucero-resources-main > .lrr-refined
  ) h1 {
    font-size: clamp(42px, 11.5vw, 56px);
    line-height: 1.06;
  }

  :is(
    .ldrp-page,
    .ltrp-page,
    .ldmr-page,
    .lcdlr-page,
    .lshr-page,
    .lucero-resources-main > .lrr-refined
  ) h2 {
    font-size: clamp(33px, 8.8vw, 43px);
    line-height: 1.1;
  }

  :is(
    .ldrp-page,
    .ltrp-page,
    .ldmr-page,
    .lcdlr-page,
    .lshr-page,
    .lucero-resources-main > .lrr-refined
  ) .lrr-hero {
    min-height: 580px;
  }

  :is(
    .ldrp-page,
    .ltrp-page,
    .ldmr-page,
    .lcdlr-page,
    .lshr-page,
    .lucero-resources-main > .lrr-refined
  ) .lrr-hero-inner {
    padding-block: 135px 60px;
  }

  :is(
    .ldrp-page,
    .ltrp-page,
    .ldmr-page,
    .lcdlr-page,
    .lshr-page,
    .lucero-resources-main > .lrr-refined
  ) :is(.lrr-section, .lrr-start) {
    padding-block: 60px;
  }

  :is(
    .ldrp-page,
    .ltrp-page,
    .ldmr-page,
    .lcdlr-page,
    .lshr-page,
    .lucero-resources-main > .lrr-refined
  ) .lrr-section-heading {
    margin-bottom: 31px;
  }

  :is(
    .ldrp-page,
    .ltrp-page,
    .ldmr-page,
    .lcdlr-page,
    .lshr-page,
    .lucero-resources-main > .lrr-refined
  ) .lrr-jump-bar {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
    padding: 18px;
  }

  :is(
    .ldrp-page,
    .ltrp-page,
    .ldmr-page,
    .lcdlr-page,
    .lshr-page,
    .lucero-resources-main > .lrr-refined
  ) .lrr-jump-bar strong {
    grid-column: 1 / -1;
    margin-bottom: 2px;
  }

  :is(
    .ldrp-page,
    .ltrp-page,
    .ldmr-page,
    .lcdlr-page,
    .lshr-page,
    .lucero-resources-main > .lrr-refined
  ) .lrr-jump-bar a {
    display: flex;
    min-height: 44px;
    padding: 9px 10px;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(6, 26, 45, 0.14);
    text-align: center;
  }

  :is(
    .ldrp-page,
    .ltrp-page,
    .ldmr-page,
    .lcdlr-page,
    .lshr-page,
    .lucero-resources-main > .lrr-refined
  ) :is(.lrr-featured-card, .lrr-topic-card, .lrr-related-card) {
    min-height: 0;
  }

  :is(
    .ldrp-page,
    .ltrp-page,
    .ldmr-page,
    .lcdlr-page,
    .lshr-page,
    .lucero-resources-main > .lrr-refined
  ) .lrr-featured-card {
    min-height: 340px;
    padding: 24px;
  }

  :is(
    .ldrp-page,
    .ltrp-page,
    .ldmr-page,
    .lcdlr-page,
    .lshr-page,
    .lucero-resources-main > .lrr-refined
  ) .lrr-topic-card {
    padding: 23px 21px 58px;
  }

  :is(
    .ldrp-page,
    .ltrp-page,
    .ldmr-page,
    .lcdlr-page,
    .lshr-page,
    .lucero-resources-main > .lrr-refined
  ) .lrr-topic-card :is(.lrr-category, p) {
    margin-bottom: 12px;
  }

  :is(
    .ldrp-page,
    .ltrp-page,
    .ldmr-page,
    .lcdlr-page,
    .lshr-page,
    .lucero-resources-main > .lrr-refined
  ) .lrr-topic-card .lrr-read {
    right: 21px;
    bottom: 19px;
    left: 21px;
  }

  :is(
    .ldrp-page,
    .ltrp-page,
    .ldmr-page,
    .lcdlr-page,
    .lshr-page,
    .lucero-resources-main > .lrr-refined
  ) :is(.lrr-download-card, .lrr-bring-card, .lrr-related-card) {
    padding: 23px;
  }

  :is(
    .ldrp-page,
    .ltrp-page,
    .ldmr-page,
    .lcdlr-page,
    .lshr-page,
    .lucero-resources-main > .lrr-refined
  ) .lrr-related-card p {
    margin-bottom: 11px;
  }

  :is(
    .ldrp-page,
    .ltrp-page,
    .ldmr-page,
    .lcdlr-page,
    .lshr-page,
    .lucero-resources-main > .lrr-refined
  ) .lrr-attorney-grid {
    gap: 30px !important;
  }

  :is(
    .ldrp-page,
    .ltrp-page,
    .ldmr-page,
    .lcdlr-page,
    .lshr-page,
    .lucero-resources-main > .lrr-refined
  ) .lrr-portrait img {
    height: min(520px, 116vw) !important;
    min-height: 0;
  }

  :is(
    .ldrp-page,
    .ltrp-page,
    .ldmr-page,
    .lcdlr-page,
    .lshr-page,
    .lucero-resources-main > .lrr-refined
  ) .lrr-faq summary {
    padding-block: 19px;
    font-size: 20px;
  }

  :is(
    .ldrp-page,
    .ltrp-page,
    .ldmr-page,
    .lcdlr-page,
    .lshr-page,
    .lucero-resources-main > .lrr-refined
  ) .lrr-cta-inner {
    padding-block: 62px;
  }

  .lucero-resources-main > :is(
    .lfcg-resource-discovery,
    .lncg-resource-discovery
  ) {
    padding-block: 60px;
  }

  .lucero-resources-main .lfcg-resource-heading {
    margin-bottom: 30px;
  }

  .lucero-resources-main .lfcg-resource-grid a {
    min-height: 0;
    padding: 23px;
  }

  .lucero-resources-main .lfcg-resource-grid strong {
    margin-top: 21px;
  }

  .lucero-resources-main .lncg-resource-discovery .lrr-resource-card {
    min-height: 0;
    grid-template-columns: 64px minmax(0, 1fr);
  }

  .lucero-resources-main .lncg-resource-discovery .lrr-resource-card__copy {
    padding: 22px 20px;
  }
}

@media (max-width: 430px) {
  :is(
    .ldrp-page,
    .ltrp-page,
    .ldmr-page,
    .lcdlr-page,
    .lshr-page,
    .lucero-resources-main > .lrr-refined
  ) .lrr-jump-bar {
    grid-template-columns: 1fr;
  }

  :is(
    .ldrp-page,
    .ltrp-page,
    .ldmr-page,
    .lcdlr-page,
    .lshr-page,
    .lucero-resources-main > .lrr-refined
  ) .lrr-jump-bar strong {
    grid-column: auto;
  }
}
