/* ListRiver theme — loaded after Bootstrap 5.3.8 */
:root {
    --lr-navy: #102B63;
    --lr-navy-dark: #0B1E47;
    --lr-teal: #069696;
    --lr-teal-dark: #057F7F;
    --lr-aqua: #7FDBDA;

    --bs-body-font-family: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
    --bs-body-color: #1B2433;
    --bs-secondary-color: #5B6679;
    --bs-border-color: #E3E8EF;
    --bs-link-color: #069696;
    --bs-link-color-rgb: 6, 150, 150;
    --bs-link-hover-color: #057F7F;
    --bs-link-hover-color-rgb: 5, 127, 127;
    --bs-primary: #069696;
    --bs-primary-rgb: 6, 150, 150;
    --bs-dark: #102B63;
    --bs-dark-rgb: 16, 43, 99;
    --bs-border-radius: .6rem;
}

h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6 {
    color: var(--lr-navy);
    font-weight: 700;
    letter-spacing: -0.01em;
}

.text-lr-navy { color: var(--lr-navy) !important; }
.text-lr-teal { color: var(--lr-teal) !important; }
.bg-lr-navy { background-color: var(--lr-navy) !important; }
.bg-lr-soft { background-color: #F5F8FB !important; }

/* Buttons */
.btn { font-weight: 600; }
.btn-primary {
    --bs-btn-bg: var(--lr-teal);
    --bs-btn-border-color: var(--lr-teal);
    --bs-btn-hover-bg: var(--lr-teal-dark);
    --bs-btn-hover-border-color: var(--lr-teal-dark);
    --bs-btn-active-bg: var(--lr-teal-dark);
    --bs-btn-active-border-color: var(--lr-teal-dark);
    --bs-btn-disabled-bg: var(--lr-teal);
    --bs-btn-disabled-border-color: var(--lr-teal);
    --bs-btn-focus-shadow-rgb: 6, 150, 150;
}
.btn-outline-dark {
    --bs-btn-color: var(--lr-navy);
    --bs-btn-border-color: var(--lr-navy);
    --bs-btn-hover-bg: var(--lr-navy);
    --bs-btn-hover-border-color: var(--lr-navy);
    --bs-btn-active-bg: var(--lr-navy-dark);
}

/* Touch-friendly form controls: 16px+ text stops iOS zoom-on-focus */
.form-control, .form-select { font-size: 1rem; min-height: 44px; }
.form-control:focus, .form-select:focus {
    border-color: var(--lr-teal);
    box-shadow: 0 0 0 .2rem rgba(6, 150, 150, .2);
}

/* Header */
.lr-header {
    background: #fff; /* no backdrop-filter: it would trap the fixed offcanvas menu inside the header */
    border-bottom: 1px solid var(--bs-border-color);
}
.lr-header .navbar { min-height: 68px; }
.lr-logo { width: 180px; height: auto; }
.lr-header .nav-link { color: var(--bs-body-color); font-weight: 500; }
.lr-header .nav-link:hover,
.lr-header .nav-link.active { color: var(--lr-teal); }

@media (max-width: 991.98px) {
    .lr-logo { width: 150px; }
    .lr-header .offcanvas { max-width: 85vw; }
    .lr-header .nav-link { padding: .85rem 0; font-size: 1.05rem; border-bottom: 1px solid var(--bs-border-color); }
    .lr-header .btn { padding-top: .75rem; padding-bottom: .75rem; }
}

/* Footer */
.lr-footer { background: var(--lr-navy); color: #C9D4E8; }
.lr-footer-text { color: #C9D4E8; max-width: 360px; }
.lr-footer-head {
    color: #fff;
    font-size: .78rem;
    text-transform: uppercase;
    letter-spacing: .1em;
    margin-bottom: .9rem;
}
.lr-footer a { color: #C9D4E8; text-decoration: none; display: inline-block; padding: .3rem 0; }
.lr-footer a:hover { color: var(--lr-aqua); }
.lr-footer-bottom { border-top: 1px solid rgba(255, 255, 255, .12); color: #9FB0CF; padding-bottom: env(safe-area-inset-bottom); }

/* Numbered step badge (How It Works) */
.lr-step {
    width: 44px; height: 44px; border-radius: 50%;
    display: flex; align-items: center; justify-content: center;
    background: var(--lr-teal); color: #fff; font-weight: 700; font-size: 1.1rem;
}

/* Legal pages */
.lr-legal h2 { font-size: 1.2rem; margin-top: 2rem; }
.lr-legal h3 { font-size: 1.05rem; margin-top: 1.25rem; }
.lr-legal p, .lr-legal li { line-height: 1.7; }

/* List builder */
.lr-check { padding-top: .45rem; padding-bottom: .45rem; min-height: 44px; display: flex; align-items: center; gap: .5rem; }
.lr-check .form-check-input { width: 1.25em; height: 1.25em; margin-top: 0; flex-shrink: 0; }
.lr-check .form-check-label { cursor: pointer; }
.lr-scroll-list { max-height: 260px; overflow-y: auto; }
.lr-tier-card { border-width: 2px; }
.lr-tier-card .lr-tier-desc { opacity: .8; }
.btn-check:checked + .lr-tier-card { background: var(--lr-navy); color: #fff; }
@media (min-width: 992px) {
    .lr-sticky { position: sticky; top: 88px; }
}
.lr-mobilebar {
    position: fixed; left: 0; right: 0; bottom: 0; z-index: 1030;
    background: #fff; border-top: 1px solid var(--bs-border-color);
    box-shadow: 0 -4px 16px rgba(16, 43, 99, .08);
    padding-bottom: env(safe-area-inset-bottom);
}
@media (max-width: 991.98px) {
    .lr-builder-pad { padding-bottom: 96px !important; }
}

/* Checkout */
.lr-pay-element { min-height: 220px; }
.min-w-0 { min-width: 0; }

/* "Why we ask" explainer box (sign-up) */
.lr-why { background: #EEF8F8; border: 1px solid #CDEBEB; color: var(--bs-body-color); }

/* ---------- Admin ---------- */
.lr-admin-nav { display: flex; gap: .25rem; overflow-x: auto; -webkit-overflow-scrolling: touch; padding-bottom: .25rem; }
.lr-admin-link {
    display: flex; align-items: center; gap: .55rem; padding: .55rem .8rem; min-height: 44px; border-radius: .5rem;
    color: var(--bs-body-color); text-decoration: none; font-weight: 500; white-space: nowrap;
}
.lr-admin-link:hover { background: #EEF3F8; color: var(--lr-navy); }
.lr-admin-link.active { background: var(--lr-navy); color: #fff; }
@media (min-width: 992px) {
    .lr-admin-nav { flex-direction: column; overflow: visible; position: sticky; top: 88px; }
}
.lr-kpi-value { font-size: 1.6rem; font-weight: 700; color: var(--lr-navy); line-height: 1.2; margin: .15rem 0; }
.lr-alert-card {
    display: flex; align-items: center; gap: .75rem; padding: .8rem 1rem; min-height: 52px; border-radius: .6rem;
    background: #FFF8E6; border: 1px solid #F5DDA0; color: var(--bs-body-color); text-decoration: none;
}
.lr-alert-card:hover { border-color: #E0B94A; color: var(--lr-navy); }
.lr-alert-card > .bi:first-child { font-size: 1.2rem; color: #9A6B00; }
.lr-chart-wrap { width: 100%; }
.lr-chart { display: block; width: 100%; height: auto; max-height: 260px; }
.lr-chart-bar { fill: var(--lr-teal); }
.lr-chart-col:hover .lr-chart-bar { fill: var(--lr-teal-dark); }
.lr-chart-hit { fill: transparent; }
.lr-chart-col:hover .lr-chart-hit { fill: rgba(16, 43, 99, .04); }
.lr-chart-grid { stroke: #E3E8EF; stroke-width: 1; }
.lr-chart-axis { fill: #5B6679; font-size: 15px; }
.lr-funnel-row { display: grid; grid-template-columns: minmax(120px, 1.2fr) 3fr minmax(110px, 1fr); gap: .75rem; align-items: center; margin-bottom: .45rem; }
.lr-funnel-label { font-size: .9rem; }
.lr-funnel-track { background: #EEF3F8; border-radius: 4px; height: 22px; overflow: hidden; }
.lr-funnel-bar { background: var(--lr-teal); height: 100%; border-radius: 0 4px 4px 0; min-width: 2px; }
.lr-funnel-num { font-size: .9rem; }
@media (max-width: 575.98px) {
    .lr-funnel-row { grid-template-columns: 1fr auto; }
    .lr-funnel-track { grid-column: 1 / -1; order: 3; }
}
.lr-scroll-table { max-height: 520px; overflow-y: auto; }
.lr-json { max-height: 360px; overflow: auto; font-size: .75rem; background: #F5F8FB; padding: .5rem; border-radius: .4rem; white-space: pre-wrap; word-break: break-all; }
.lr-prewrap { white-space: pre-wrap; }

/* ---------- Payment plan chooser (Checkout) ---------- */
.lr-plan {
    display: block; padding: 1rem 1.1rem; border: 2px solid #E3E8EF; border-radius: .75rem; background: #fff;
    color: var(--bs-body-color); text-decoration: none; min-height: 56px; transition: border-color .15s, box-shadow .15s;
}
.lr-plan:hover { border-color: var(--lr-teal); color: var(--bs-body-color); }
.lr-plan.active { border-color: var(--lr-teal); box-shadow: 0 0 0 3px rgba(6, 150, 150, .15); background: #F2FBFB; }
.lr-plan.active .bi-record-circle-fill { color: var(--lr-teal); }
.lr-plan-off { opacity: .7; cursor: not-allowed; background: #F8FAFC; }
.lr-plan-sub { color: #5B6679; }

/* ---------- Verification ---------- */
.lr-match { padding: .9rem 0; border-bottom: 1px solid #E3E8EF; }
.lr-match:last-child { border-bottom: 0; }
.lr-verify-card { border-left: 4px solid var(--lr-teal) !important; }
.lr-finance-note { background: #F2FBFB; border: 1px solid #CDEDED; border-radius: .6rem; padding: .6rem .75rem; }

/* ---------- Marketing ---------- */
.lr-hero { background: linear-gradient(180deg, #F5F8FB 0%, #FFFFFF 100%); }
.lr-example { border-radius: 1rem; }
.lr-example-row { display: flex; justify-content: space-between; align-items: baseline; gap: .75rem; padding: .6rem 0; border-top: 1px solid #E3E8EF; }
.lr-example-today { color: var(--lr-navy); }
.lr-feature-accent { border-top: 4px solid #F5B400; }
.lr-on-navy { color: #C9D4E8; }
.lr-steps-dark li { display: flex; gap: .85rem; margin-bottom: 1rem; color: #C9D4E8; }
.lr-steps-dark li strong { color: #fff; }
.lr-steps-dark li > span {
    flex: 0 0 2rem; width: 2rem; height: 2rem; border-radius: 50%; background: #F5B400; color: #102B63;
    display: inline-flex; align-items: center; justify-content: center; font-weight: 700;
}
.lr-compare th, .lr-compare td { padding: .6rem .5rem; }
.lr-compare td:first-child { font-size: .9rem; color: #5B6679; }
@media (max-width: 575.98px) {
    .lr-compare { font-size: .85rem; }
    .lr-compare th, .lr-compare td { padding: .5rem .35rem; }
}

/* ---------- Local pages + reports ---------- */
.lr-place .breadcrumb a { text-decoration: none; }
.lr-place-kpi { font-size: 1.6rem; font-weight: 700; color: var(--lr-navy); line-height: 1.2; margin: .15rem 0; }
.lr-place-card { color: var(--bs-body-color); min-height: 56px; }
.lr-place-card:hover { box-shadow: 0 .25rem .75rem rgba(16, 43, 99, .12) !important; }
.lr-bars li { margin-bottom: .55rem; }
.lr-bar-track { background: #EEF3F8; border-radius: 4px; height: 8px; overflow: hidden; margin-top: .2rem; }
.lr-bar { background: var(--lr-teal); height: 100%; border-radius: 4px; min-width: 2px; }
.lr-chart-bar-hi { fill: #F5B400; }
.lr-place-links { display: flex; flex-wrap: wrap; gap: .4rem .5rem; }
.lr-place-links a { display: inline-block; padding: .35rem .7rem; border: 1px solid #E3E8EF; border-radius: 999px; font-size: .875rem; text-decoration: none; background: #fff; }
.lr-place-links a:hover { border-color: var(--lr-teal); }

/* ---------- List builder: start state, chips, presets ---------- */
.lr-need-state-box { border: 2px dashed #CDEDED; border-radius: .75rem; background: #F2FBFB; }
.lr-state-hint { color: var(--lr-teal); font-weight: 600; }
.lr-chips { display: flex; flex-wrap: wrap; gap: .35rem; }
.lr-chip { display: inline-flex; align-items: center; gap: .15rem; padding: .2rem .25rem .2rem .6rem; border-radius: 999px; background: #EEF3F8; font-size: .8125rem; line-height: 1.3; max-width: 100%; }
.lr-chip-x { border: 0; background: transparent; color: #5B6679; font-size: 1.05rem; line-height: 1; width: 28px; height: 28px; border-radius: 50%; display: inline-flex; align-items: center; justify-content: center; }
.lr-chip-x:hover, .lr-chip-x:focus-visible { background: #DDE6F0; color: var(--lr-navy); }
.lr-preset { min-height: 40px; }
.lr-agree-box { background: #FFF8E6; border: 1px solid #F5DDA0; border-radius: .5rem; padding-left: 2.25rem; padding-right: .75rem; }

/* "Fetching records" overlay for local list pages + reports (js/site.js) */
.lr-fetching { position: fixed; inset: 0; z-index: 2000; display: flex; align-items: center; justify-content: center; padding: 16px;
    background: rgba(245, 248, 251, .72); opacity: 0; visibility: hidden; transition: opacity .2s ease, visibility .2s; }
.lr-fetching.show { opacity: 1; visibility: visible; }
.lr-fetching-box { background: #fff; border-radius: 14px; box-shadow: 0 10px 30px rgba(16, 43, 99, .15); padding: 22px 28px;
    display: flex; align-items: center; gap: 14px; max-width: 100%; }
.lr-fetching-text { font-weight: 600; color: var(--lr-navy, #102B63); }
.lr-place-card.lr-loading { opacity: .75; pointer-events: none; }
.lr-place-card.lr-loading .bi-chevron-right { display: none; }

/* Home: prominent "browse by state" band */
.lr-browse-band { background: linear-gradient(135deg, #0B7F82 0%, #069696 55%, #22B3B1 100%); color: #fff; }
.lr-browse-band .lr-browse-stat { font-size: 1.6rem; font-weight: 800; line-height: 1.1; }
.lr-browse-band .lr-browse-label { font-size: .85rem; opacity: .9; }
.lr-browse-band .btn-light { color: var(--lr-navy, #102B63); font-weight: 700; }

/* ---------- Home: full-database offer (bar + modal, js/offer.js) ---------- */
.lr-offer-bar {
    display: flex; align-items: center; justify-content: center; flex-wrap: wrap; gap: .35rem .85rem;
    width: 100%; border: 0; padding: .7rem 1rem; text-align: center; cursor: pointer;
    background: linear-gradient(90deg, #0B1E47 0%, #102B63 50%, #0B1E47 100%); color: #E7EEFB; font-size: .95rem; line-height: 1.35;
}
.lr-offer-bar strong { color: #fff; font-weight: 700; }
.lr-offer-bar-tag {
    background: #FFC107; color: #1B2433; font-size: .7rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase;
    padding: .2rem .55rem; border-radius: 999px; white-space: nowrap;
}
.lr-offer-bar-go { color: var(--lr-aqua); font-weight: 700; white-space: nowrap; }
.lr-offer-bar-go i { transition: transform .15s ease; display: inline-block; }
.lr-offer-bar:hover .lr-offer-bar-go i, .lr-offer-bar:focus-visible .lr-offer-bar-go i { transform: translateX(3px); }
.lr-offer-bar:focus-visible { outline: 3px solid var(--lr-aqua); outline-offset: -3px; }

.lr-offer .modal-dialog { max-width: 1080px; }
.lr-offer .modal-content { border: 0; border-radius: 1.1rem; overflow: hidden; box-shadow: 0 30px 80px rgba(6, 16, 40, .45); }
.lr-offer-close {
    position: absolute; top: .75rem; right: .75rem; z-index: 5; width: 40px; height: 40px; border-radius: 50%; border: 0;
    display: flex; align-items: center; justify-content: center; background: rgba(16, 43, 99, .08); color: var(--lr-navy); font-size: 1rem;
    transition: background .15s ease;
}
.lr-offer-close:hover, .lr-offer-close:focus-visible { background: rgba(16, 43, 99, .18); }

.lr-offer-grid {
    display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr);
    grid-template-areas: "head form" "more form"; grid-template-rows: auto 1fr;
}
.lr-offer-head, .lr-offer-more { background: #0E2658; color: #D5DFF2; padding-left: 2.25rem; padding-right: 2.25rem; }
.lr-offer-head {
    grid-area: head; padding-top: 2.25rem; padding-bottom: 1.5rem;
    background: radial-gradient(120% 90% at 0% 0%, rgba(6, 150, 150, .55) 0%, rgba(6, 150, 150, 0) 60%), #0E2658;
}
.lr-offer-more { grid-area: more; padding-top: .25rem; padding-bottom: 2.25rem; }
.lr-offer-form { grid-area: form; background: #fff; padding: 2.25rem 2.25rem 1.75rem; display: flex; flex-direction: column; }

.lr-offer-eyebrow {
    display: inline-flex; align-items: center; gap: .5rem; background: rgba(255, 193, 7, .16); color: #FFD65A; border: 1px solid rgba(255, 193, 7, .45);
    font-size: .72rem; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; padding: .32rem .75rem; border-radius: 999px;
}
.lr-offer-pulse { width: 8px; height: 8px; border-radius: 50%; background: #FFC107; box-shadow: 0 0 0 0 rgba(255, 193, 7, .7); animation: lr-offer-pulse 1.8s infinite; }
@keyframes lr-offer-pulse { 70% { box-shadow: 0 0 0 9px rgba(255, 193, 7, 0); } 100% { box-shadow: 0 0 0 0 rgba(255, 193, 7, 0); } }
.lr-offer-title { color: #fff; font-size: clamp(1.7rem, 1.1rem + 1.9vw, 2.5rem); font-weight: 800; line-height: 1.1; letter-spacing: -.02em; margin: 1rem 0 .85rem; }
.lr-offer-title span { color: var(--lr-aqua); display: block; }
.lr-offer-lead { font-size: 1.05rem; line-height: 1.55; margin-bottom: 1.4rem; }
.lr-offer-lead strong { color: #fff; }

.lr-offer-stats { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: .6rem; margin-bottom: 0; }
.lr-offer-stats > div { background: rgba(255, 255, 255, .07); border: 1px solid rgba(255, 255, 255, .12); border-radius: .75rem; padding: .7rem .5rem; text-align: center; }
.lr-offer-stats b { display: block; color: #fff; font-size: 1.3rem; font-weight: 800; line-height: 1.15; letter-spacing: -.01em; white-space: nowrap; }
.lr-offer-stats span { display: block; font-size: .72rem; color: #AFC0E0; margin-top: .15rem; line-height: 1.25; }

.lr-offer-bonus {
    position: relative; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .5rem 1rem; margin: 1.1rem 0 1.1rem;
    padding: 1rem .9rem .8rem; border-radius: .75rem; background: rgba(255, 193, 7, .1); border: 1px solid rgba(255, 193, 7, .5);
}
.lr-offer-bonus-tag {
    position: absolute; top: -.6rem; left: .8rem; background: #FFC107; color: #1B2433; font-size: .64rem; font-weight: 800;
    letter-spacing: .1em; text-transform: uppercase; padding: .12rem .5rem; border-radius: 999px;
}
.lr-offer-bonus > div { display: flex; gap: .55rem; align-items: flex-start; font-size: .9rem; line-height: 1.35; color: #E7EEFB; }
.lr-offer-bonus i { color: #FFD65A; font-size: 1.15rem; line-height: 1.2; flex-shrink: 0; }
.lr-offer-bonus b { color: #fff; }
.lr-offer-states { display: flex; flex-wrap: wrap; gap: .35rem; margin-top: 1.1rem; }
.lr-offer-states abbr {
    text-decoration: none; cursor: help; font-size: .78rem; font-weight: 700; letter-spacing: .04em; color: #fff;
    border: 1px solid rgba(127, 219, 218, .55); background: rgba(127, 219, 218, .12); border-radius: .4rem; padding: .18rem .45rem; min-width: 2.2rem; text-align: center;
}

.lr-offer-h { color: var(--lr-aqua); font-size: .74rem; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; margin: 1.35rem 0 .7rem; }
.lr-offer-list { list-style: none; padding: 0; margin: 0; display: grid; gap: .8rem; }
.lr-offer-list li { display: flex; gap: .75rem; font-size: .93rem; line-height: 1.5; }
.lr-offer-list li > i { color: var(--lr-aqua); font-size: 1.1rem; line-height: 1.4; flex-shrink: 0; }
.lr-offer-list strong { color: #fff; }
.lr-offer-fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .4rem .9rem; font-size: .9rem; color: #E7EEFB; }
.lr-offer-fields i { color: var(--lr-aqua); margin-right: .4rem; }
.lr-offer-fields em { color: #AFC0E0; font-style: normal; font-size: .82rem; }

.lr-offer-price { padding-right: 2.5rem; }
.lr-offer-was { font-size: .85rem; color: var(--bs-secondary-color); }
.lr-offer-was s { text-decoration-thickness: 2px; text-decoration-color: #DC3545; font-weight: 600; }
.lr-offer-now { display: flex; align-items: center; gap: .85rem; margin: .1rem 0 .2rem; }
.lr-offer-amt { font-size: clamp(2.6rem, 2rem + 2vw, 3.4rem); font-weight: 800; letter-spacing: -.03em; line-height: 1; color: var(--lr-navy); }
.lr-offer-unit { font-size: .82rem; line-height: 1.3; color: var(--bs-secondary-color); font-weight: 600; text-transform: uppercase; letter-spacing: .05em; }
.lr-offer-per { font-size: .92rem; color: var(--bs-body-color); }
.lr-offer-per strong { color: var(--lr-teal-dark); }

.lr-offer-incl { list-style: none; padding: .9rem 0; margin: .9rem 0 0; border-top: 1px solid var(--bs-border-color); border-bottom: 1px solid var(--bs-border-color); display: grid; gap: .45rem; font-size: .92rem; }
.lr-offer-incl li { display: flex; gap: .6rem; align-items: baseline; }
.lr-offer-incl i { color: var(--lr-teal); flex-shrink: 0; }

.lr-offer-formhead { font-weight: 700; color: var(--lr-navy); margin: 1rem 0 .6rem; }
.lr-offer-fieldset .form-label { font-size: .82rem; font-weight: 600; margin-bottom: .2rem; color: var(--bs-body-color); }
.lr-offer-fieldset .form-control.is-invalid { background-image: none; }
.lr-offer-agree { background: #FFF8E6; border: 1px solid #F5DDA0; border-radius: .5rem; padding: .6rem .75rem .6rem 2.4rem; font-size: .85rem; line-height: 1.4; margin-top: .25rem; }
.lr-offer-agree .form-check-input { width: 1.2em; height: 1.2em; margin-left: -1.75rem; margin-top: .1em; }
.lr-offer-agree.is-invalid { border-color: #DC3545; box-shadow: 0 0 0 .2rem rgba(220, 53, 69, .15); }
.lr-offer-agree label { cursor: pointer; }
#lrOfferTurnstile:empty { display: none; }
.lr-offer-cta { font-weight: 800; padding-top: .8rem; padding-bottom: .8rem; box-shadow: 0 8px 20px rgba(255, 193, 7, .35); }
.lr-offer-cta:disabled { opacity: .85; }
.lr-offer-reassure { font-size: .8rem; color: var(--bs-secondary-color); margin: .7rem 0 0; }
.lr-offer-fine { font-size: .72rem; line-height: 1.5; color: #6B7689; margin-top: 1.25rem; padding-top: 1rem; border-top: 1px solid var(--bs-border-color); }
.lr-offer-fine strong { color: var(--bs-body-color); }
.lr-offer-fine a { color: inherit; text-decoration: underline; }

.lr-offer-done { padding: 1rem 0 .5rem; outline: 0; }
.lr-offer-done-icon { width: 60px; height: 60px; border-radius: 50%; background: #E3F6F1; color: #0A8F6B; display: flex; align-items: center; justify-content: center; font-size: 1.9rem; margin-bottom: 1rem; }
.lr-offer-next { list-style: none; padding: 0; margin: 0 0 1.5rem; display: grid; gap: .85rem; }
/* Two offers side by side (shown first while New Business Monthly is on sale), and the alternate pitch panes */
.lr-offer-pick { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
.lr-pick-card { padding: 2.5rem 2.25rem 2.25rem; display: flex; flex-direction: column; }
.lr-pick-full { background: radial-gradient(120% 90% at 0% 0%, rgba(6, 150, 150, .55) 0%, rgba(6, 150, 150, 0) 60%), #0E2658; color: #D5DFF2; padding-right: 3.5rem; }
.lr-pick-monthly { background: #fff; color: var(--bs-body-color); }
/* Picker: the full-database card (dark) sits on the right, under the close button, so the button goes light there. */
.lr-offer:has(.lr-offer-pick:not(.d-none)) .lr-offer-close { background: rgba(255, 255, 255, .16); color: #fff; }
.lr-offer:has(.lr-offer-pick:not(.d-none)) .lr-offer-close:hover, .lr-offer:has(.lr-offer-pick:not(.d-none)) .lr-offer-close:focus-visible { background: rgba(255, 255, 255, .3); }
.lr-pick-card .lr-offer-eyebrow { align-self: flex-start; }
.lr-pick-eyebrow-new { color: var(--lr-teal-dark); background: #E3F6F1; border-color: #BFE9DF; }
.lr-pick-title { font-size: clamp(1.5rem, 1.05rem + 1.5vw, 2.1rem); font-weight: 800; line-height: 1.12; letter-spacing: -.02em; margin: 1rem 0 .75rem; }
.lr-pick-title span { display: block; }
.lr-pick-full .lr-pick-title { color: #fff; }
.lr-pick-full .lr-pick-title span { color: var(--lr-aqua); }
.lr-pick-monthly .lr-pick-title { color: var(--lr-navy); }
.lr-pick-monthly .lr-pick-title span { color: var(--lr-teal-dark); }
.lr-pick-lead { font-size: 1rem; line-height: 1.55; margin-bottom: 1.1rem; }
.lr-pick-full .lr-pick-lead strong { color: #fff; }
.lr-pick-price { display: flex; align-items: baseline; gap: .6rem; margin-bottom: 1rem; }
.lr-pick-amt { font-size: clamp(2.3rem, 1.8rem + 1.8vw, 3rem); font-weight: 800; letter-spacing: -.03em; line-height: 1; }
.lr-pick-full .lr-pick-amt { color: #fff; }
.lr-pick-monthly .lr-pick-amt { color: var(--lr-navy); }
.lr-pick-unit { font-size: .82rem; font-weight: 700; text-transform: uppercase; letter-spacing: .06em; opacity: .8; }
.lr-pick-list { list-style: none; padding: 0; margin: 0 0 1.5rem; display: grid; gap: .5rem; font-size: .95rem; line-height: 1.4; }
.lr-pick-list li { display: flex; gap: .6rem; align-items: baseline; }
.lr-pick-full .lr-pick-list i { color: var(--lr-aqua); }
.lr-pick-monthly .lr-pick-list i { color: var(--lr-teal); }
.lr-pick-btn { margin-top: auto; font-weight: 800; padding-top: .8rem; padding-bottom: .8rem; }
.lr-pick-also { font-size: .85rem; line-height: 1.45; color: var(--bs-secondary-color); margin: 1rem 0 0; }
/* New Business Monthly: the "new in the last 30 days" figure (NewBizRecent) */
.lr-pick-recent { background: #E3F6F1; border: 1px solid #BFE9DF; border-radius: .75rem; padding: .75rem 1rem; margin: 0 0 1.1rem; font-size: .95rem; line-height: 1.35; color: var(--lr-navy); }
.lr-pick-recent strong { display: block; font-size: 1.6rem; font-weight: 800; letter-spacing: -.02em; color: var(--lr-teal-dark); line-height: 1.1; }
.lr-pick-recent span { display: block; font-size: .8rem; color: var(--bs-secondary-color); margin-top: .25rem; }
/* Free sample: the link under the monthly card, and its pane (pitch left, form right) */
.lr-pick-sample { font-size: .9rem; text-align: center; color: var(--bs-secondary-color); margin: .85rem 0 0; }
.lr-pick-sample i { color: var(--lr-teal); margin-right: .35rem; }
.lr-pick-sample a { font-weight: 700; color: var(--lr-teal-dark); }
.lr-offer-sample { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
.lr-sample-pitch { padding: 2.25rem 2.25rem 2.25rem; background: #F2FAF8; display: flex; flex-direction: column; }
.lr-sample-pitch .lr-offer-eyebrow { align-self: flex-start; }
.lr-sample-pitch .lr-pick-title { color: var(--lr-navy); }
.lr-sample-pitch .lr-pick-title span { color: var(--lr-teal-dark); }
.lr-sample-pitch .lr-pick-list { margin-bottom: 0; }
.lr-sample-pitch .lr-pick-list i { color: var(--lr-teal); }
.lr-sample-form { padding: 3.25rem 3.5rem 2.25rem 2.25rem; background: #fff; display: flex; flex-direction: column; justify-content: center; }
.lr-sample-form .form-label { font-size: .82rem; font-weight: 600; margin-bottom: .2rem; color: var(--bs-body-color); }
.lr-sample-form .lr-pick-btn { margin-top: .25rem; }
#lrSampleTurnstile:empty { display: none; }
.lr-offer-back { font-size: .85rem; margin: 0 0 .9rem; }
.lr-offer-back a { color: var(--bs-secondary-color); text-decoration: none; font-weight: 600; }
.lr-offer-back a:hover, .lr-offer-back a:focus-visible { color: var(--lr-navy); text-decoration: underline; }
.lr-offer-alt { grid-area: auto; grid-column: 1; grid-row: 1 / span 2; padding-bottom: 2.25rem; }
.lr-offer-alt .link-light { color: #fff; }

.lr-offer-next li { display: flex; gap: .75rem; align-items: flex-start; }
.lr-offer-next li > span { width: 28px; height: 28px; border-radius: 50%; background: var(--lr-navy); color: #fff; font-weight: 700; font-size: .85rem; display: flex; align-items: center; justify-content: center; flex-shrink: 0; }

@media (max-width: 991.98px) {
    .lr-offer .modal-content { border-radius: 0; }
    .lr-offer-grid { grid-template-columns: minmax(0, 1fr); grid-template-areas: "head" "form" "more"; grid-template-rows: none; }
    .lr-offer-head, .lr-offer-more, .lr-offer-form { padding-left: 1.25rem; padding-right: 1.25rem; }
    .lr-offer-head { padding-top: 1.5rem; padding-bottom: 1.4rem; }
    .lr-offer-alt { grid-area: head; }
    .lr-offer-pick { grid-template-columns: minmax(0, 1fr); }
    .lr-pick-card { padding: 1.5rem 1.25rem; }
    .lr-pick-full { padding-right: 1.25rem; padding-bottom: calc(1.75rem + env(safe-area-inset-bottom)); }
    .lr-pick-monthly .lr-offer-eyebrow { margin-right: 3rem; }
    .lr-pick-btn { margin-top: 0; }
    .lr-offer-sample { grid-template-columns: minmax(0, 1fr); }
    .lr-sample-pitch { padding: 1.5rem 1.25rem; }
    .lr-sample-pitch .lr-offer-back { margin-right: 3rem; }
    .lr-sample-form { padding: 1.5rem 1.25rem calc(1.75rem + env(safe-area-inset-bottom)); }
    .lr-offer-form { padding-top: 1.5rem; padding-bottom: 1.5rem; }
    .lr-offer-more { padding-top: .5rem; padding-bottom: calc(1.75rem + env(safe-area-inset-bottom)); }
    .lr-offer-price { padding-right: 0; }
    .lr-offer-close { background: rgba(255, 255, 255, .16); color: #fff; }
    .lr-offer-close:hover, .lr-offer-close:focus-visible { background: rgba(255, 255, 255, .3); }
    .lr-offer-eyebrow { margin-right: 3rem; }
    /* Picker on small screens: the monthly card (white) is on top, under the close button, so the button goes dark there. */
    .lr-offer:has(.lr-offer-pick:not(.d-none)) .lr-offer-close, .lr-offer:has(.lr-offer-sample:not(.d-none)) .lr-offer-close { background: rgba(16, 43, 99, .08); color: var(--lr-navy); }
    .lr-offer:has(.lr-offer-pick:not(.d-none)) .lr-offer-close:hover, .lr-offer:has(.lr-offer-pick:not(.d-none)) .lr-offer-close:focus-visible,
    .lr-offer:has(.lr-offer-sample:not(.d-none)) .lr-offer-close:hover, .lr-offer:has(.lr-offer-sample:not(.d-none)) .lr-offer-close:focus-visible { background: rgba(16, 43, 99, .18); }
}
@media (max-width: 575.98px) {
    .lr-offer-stats { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .lr-offer-fields { grid-template-columns: minmax(0, 1fr); }
    .lr-offer-bonus { grid-template-columns: minmax(0, 1fr); }
    .lr-offer-bar { font-size: .88rem; }
}
@media (prefers-reduced-motion: reduce) {
    .lr-offer-pulse { animation: none; }
}

/* Business names hidden until the visitor unlocks them (Seo/NameGate.cs, js/names.js) */
.lr-name-gate { padding: 1rem; border: 1px solid #E3E8EF; border-radius: .75rem; background: #F5F8FB; }
.lr-name-hidden { filter: blur(5px); user-select: none; color: var(--bs-secondary-color); white-space: nowrap; }
.lr-name-code { letter-spacing: .35em; text-align: center; font-weight: 600; font-variant-numeric: tabular-nums; }
