/* Restaurants industry page (rs-), reworked 2026-10-31 for "restaurant loyalty program": the feature-page hero on a
   dark ground (industry pages hide the top spacer and paint the header links white over the first section), "one
   evening" from table to till with the real stand, the business page's sign-in, the staff scanner and the coupon,
   the starter program from Google Maps with reward ideas, restaurant features on a drawn floor plan, and the plans.
   Logical properties throughout so the RTL build mirrors the layout; the floor plan is dir="ltr" and its pins keep
   their physical places. */

/* hero */
.bqr-feature.rs-hero { padding-top: 112px; padding-bottom: 88px; color: #fff; background: radial-gradient(70% 90% at 0% 0%, rgba(140,125,238,.5), rgba(140,125,238,0) 62%), radial-gradient(55% 75% at 100% 100%, rgba(140,125,238,.3), rgba(140,125,238,0) 60%), #2a1f57; }
.bqr-feature.rs-hero h1 { color: #fff; }
.bqr-feature.rs-hero .geo-swoosh { color: #b9aef3; }
.bqr-feature.rs-hero .feature-lead { color: rgba(255,255,255,.86); }
.bqr-feature.rs-hero .feature-breadcrumb { color: rgba(255,255,255,.78); }
.bqr-feature.rs-hero .feature-breadcrumb li + li::before { color: rgba(255,255,255,.5); }
.bqr-feature.rs-hero a:not(.btn) { color: #fff; }
.bqr-feature.rs-hero a:not(.btn):hover { color: #e4dcfb; }
.bqr-feature.rs-hero a:focus-visible { outline-color: #fff; }
.bqr-feature.rs-hero .feature-actions .btn-primary { background: #fff; border-color: #fff; color: #2a1f57; }
.bqr-feature.rs-hero .feature-actions .btn-primary:hover { background: #ece8fd; border-color: #ece8fd; color: #2a1f57; }
.bqr-feature.rs-hero .geo-trust li { color: var(--feature-ink); }
.bqr-feature.rs-hero .geo-hero-frame { box-shadow: 0 34px 70px -28px rgba(9,5,28,.7); }
.bqr-feature.rs-hero .geo-hero-visual figcaption { color: rgba(255,255,255,.72); }

/* one evening, from table to till */
.bqr-feature .rs-rail { position: relative; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 28px; list-style: none; padding: 0; margin: 0; }
.bqr-feature .rs-rail::before { content: ""; position: absolute; inset-inline: 40px; top: 19px; border-top: 2px dashed #c9c0f2; }
.bqr-feature .rs-stop { position: relative; display: flex; flex-direction: column; align-items: flex-start; min-width: 0; }
.bqr-feature .rs-time { position: relative; z-index: 1; display: inline-flex; align-items: center; gap: 7px; margin-bottom: 18px; padding: 8px 15px 8px 11px; border-radius: 999px; background: var(--feature-accent); color: #fff; font-size: 14px; font-weight: 700; line-height: 1.3; white-space: nowrap; box-shadow: 0 0 0 6px var(--feature-soft); }
.bqr-feature .rs-time svg { flex: none; width: 18px; height: 18px; stroke: currentColor; fill: none; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.bqr-feature .rs-shot { position: relative; width: 100%; aspect-ratio: 4 / 3; margin: 0 0 20px; overflow: hidden; border-radius: 20px; background: #fff; box-shadow: 0 0 0 1px rgba(140,125,238,.12), 0 22px 44px -30px rgba(49,32,85,.55); }
.bqr-feature .rs-shot > img { display: block; width: 100%; height: 100%; object-fit: cover; }
.bqr-feature .rs-shot--scan > img { object-position: 48% 50%; }
.bqr-feature .rs-stop h3 { margin-bottom: 8px; font-size: 19px; }
.bqr-feature .rs-stop p { margin: 0 0 10px; color: var(--feature-muted); font-size: 15.5px; line-height: 1.6; }
.bqr-feature .rs-more { margin-top: auto; font-size: 15px; font-weight: 600; }

/* the business page's sign-in and the earned coupon, drawn from the app's strings */
.bqr-feature .rs-shot--join, .bqr-feature .rs-shot--coupon { display: grid; place-items: center; padding: 14px; background: linear-gradient(160deg, #f7f4fe 0%, #e4dcfb 100%); }
.bqr-feature .rs-join { display: flex; flex-direction: column; gap: 7px; width: 100%; max-width: 252px; padding: 12px; border-radius: 16px; background: #fff; color: var(--feature-ink); text-align: start; box-shadow: 0 18px 36px -22px rgba(49,32,85,.55); }
.bqr-feature .rs-join-venue { display: flex; align-items: center; gap: 8px; font-size: 13px; line-height: 1.3; }
.bqr-feature .rs-join-logo { display: grid; place-items: center; flex: none; width: 26px; height: 26px; border-radius: 8px; background: var(--feature-accent); }
.bqr-feature .rs-join-logo svg { width: 15px; height: 15px; stroke: #fff; fill: none; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.bqr-feature .rs-join-note { display: flex; gap: 6px; align-items: flex-start; padding: 6px 8px; border-radius: 10px; background: var(--feature-soft); color: var(--feature-muted); font-size: 10.5px; line-height: 1.35; }
.bqr-feature .rs-join-note svg { flex: none; width: 13px; height: 13px; margin-top: 1px; stroke: var(--feature-accent); fill: none; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.bqr-feature .rs-join-socials { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 6px; }
.bqr-feature .rs-join-btn { display: flex; align-items: center; justify-content: center; gap: 5px; min-height: 30px; padding: 5px 8px; border-radius: 999px; font-size: 10px; font-weight: 600; line-height: 1.2; text-align: center; }
.bqr-feature .rs-join-btn svg { flex: none; width: 13px; height: 13px; }
.bqr-feature .rs-join-btn--google { background: #fff; color: #1f1f1f; box-shadow: inset 0 0 0 1px #747775; }
.bqr-feature .rs-join-btn--apple { background: #000; color: #fff; }
.bqr-feature .rs-join-btn--mail { color: var(--feature-accent); box-shadow: inset 0 0 0 1.5px #c9c0f2; }
.bqr-feature .rs-join-btn--mail svg { stroke: currentColor; fill: none; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.bqr-feature .rs-coupon { width: 100%; max-width: 252px; text-align: start; }
.bqr-feature .rs-coupon-label { display: block; margin-bottom: 8px; font-size: 13px; font-weight: 700; }
.bqr-feature .rs-ticket { display: flex; align-items: center; gap: 10px; padding: 12px; border-radius: 14px; background: #fff; box-shadow: 0 18px 36px -22px rgba(49,32,85,.55); }
.bqr-feature .rs-ticket > img { flex: none; width: 38px; height: 38px; }
.bqr-feature .rs-ticket-name { display: flex; flex: 1; flex-direction: column; min-width: 0; color: var(--feature-muted); font-size: 12px; line-height: 1.35; }
.bqr-feature .rs-ticket-title { color: var(--feature-ink); font-size: 14px; font-weight: 700; }
.bqr-feature .rs-ticket-qr { flex: none; width: 62px; padding-inline-start: 10px; border-inline-start: 2px dashed #e4dcfb; }
.bqr-feature .rs-ticket-qr img { display: block; width: 100%; height: auto; }
.bqr-feature .rs-scan-ask { position: absolute; inset-inline: 12px; bottom: 12px; display: flex; align-items: center; gap: 8px; padding: 9px 12px; border-radius: 12px; background: rgba(255,255,255,.96); color: var(--feature-ink); font-size: 13px; font-weight: 700; line-height: 1.3; box-shadow: 0 12px 26px -14px rgba(12,7,36,.6); }
.bqr-feature .rs-scan-ask svg { flex: none; width: 18px; height: 18px; stroke: var(--feature-accent); fill: none; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.bqr-feature .rs-rail-note { display: flex; flex-wrap: wrap; align-items: center; gap: 10px 16px; max-width: 980px; margin: 48px auto 0; padding: 18px 22px; border-radius: 18px; background: #fff; box-shadow: 0 14px 30px -24px rgba(49,32,85,.45); }
.bqr-feature .rs-rail-note > svg { flex: none; width: 26px; height: 26px; stroke: var(--feature-accent); fill: none; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.bqr-feature .rs-rail-note p { flex: 1 1 320px; margin: 0; color: var(--feature-muted); font-size: 15px; line-height: 1.6; }
.bqr-feature .rs-rail-note a { font-size: 15px; font-weight: 600; }

/* the starter program from Google Maps, then reward ideas */
.bqr-feature .rs-setup { display: grid; grid-template-columns: minmax(0, .8fr) auto minmax(0, 2fr); gap: 24px; align-items: center; max-width: 1140px; margin: 0 auto; padding: 28px; border-radius: 28px; background: var(--feature-soft); }
.bqr-feature .rs-setup-from { display: flex; flex-direction: column; align-items: flex-start; gap: 12px; padding: 22px; border-radius: 20px; background: #fff; box-shadow: 0 18px 36px -30px rgba(49,32,85,.5); }
.bqr-feature .rs-setup-pin { display: grid; place-items: center; width: 44px; height: 44px; border-radius: 14px; background: var(--feature-accent); }
.bqr-feature .rs-setup-pin svg { width: 22px; height: 22px; stroke: #fff; fill: none; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.bqr-feature .rs-setup-from p { margin: 0; line-height: 1.45; }
.bqr-feature .rs-setup-from p strong { display: block; font-size: 17px; }
.bqr-feature .rs-setup-from p span { color: var(--feature-muted); font-size: 14.5px; }
.bqr-feature .rs-setup-type { display: inline-flex; align-items: center; gap: 7px; padding: 6px 13px 6px 9px; border-radius: 999px; background: #ece8fd; color: var(--feature-accent); font-size: 13.5px; font-weight: 700; line-height: 1.3; }
.bqr-feature .rs-setup-type svg { flex: none; width: 16px; height: 16px; stroke: currentColor; fill: none; stroke-width: 2.6; stroke-linecap: round; stroke-linejoin: round; }
.bqr-feature .rs-setup-arrow { display: grid; place-items: center; width: 44px; height: 44px; border-radius: 50%; background: #fff; box-shadow: 0 10px 22px -14px rgba(49,32,85,.6); }
.bqr-feature .rs-setup-arrow svg { width: 22px; height: 22px; stroke: var(--feature-accent); fill: none; stroke-width: 2.2; stroke-linecap: round; stroke-linejoin: round; }
/*rtl:ignore*/
[dir="rtl"] .bqr-feature .rs-setup-arrow svg { transform: scaleX(-1); }
.bqr-feature .rs-setup-label { margin: 0 0 12px; color: var(--feature-muted); font-size: 13px; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; }
.bqr-feature .rs-modules { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; list-style: none; padding: 0; margin: 0; }
.bqr-feature .rs-module { display: flex; gap: 12px; align-items: flex-start; padding: 16px; border-radius: 18px; background: #fff; line-height: 1.35; box-shadow: 0 18px 36px -30px rgba(49,32,85,.5); }
.bqr-feature .rs-module img { flex: none; width: 40px; height: 40px; }
.bqr-feature .rs-module > div { display: flex; flex-direction: column; min-width: 0; }
.bqr-feature .rs-module-kind { margin-bottom: 4px; color: var(--feature-accent); font-size: 12px; font-weight: 700; }
.bqr-feature .rs-module-name { font-size: 16px; font-weight: 700; }
.bqr-feature .rs-module-sub { margin-top: 4px; color: var(--feature-muted); font-size: 13px; }
.bqr-feature .rs-setup-note { max-width: 860px; margin: 22px auto 0; color: var(--feature-muted); font-size: 15.5px; text-align: center; }
.bqr-feature .rs-ideas { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; list-style: none; padding: 0; margin: 56px 0 0; }
.bqr-feature .rs-idea { display: flex; flex-direction: column; align-items: flex-start; padding: 26px; border-radius: 22px; background: #fff; box-shadow: 0 0 0 1px #ece8fd, 0 18px 40px -32px rgba(49,32,85,.5); }
.bqr-feature .rs-idea-top { display: flex; align-items: center; justify-content: space-between; width: 100%; margin-bottom: 16px; }
.bqr-feature .rs-idea-icon { display: grid; place-items: center; width: 44px; height: 44px; border-radius: 14px; background: #ece8fd; }
.bqr-feature .rs-idea-icon svg { width: 22px; height: 22px; stroke: var(--feature-accent); fill: none; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.bqr-feature .rs-idea h3 { margin-bottom: 8px; font-size: 19px; }
.bqr-feature .rs-idea p { margin: 0 0 14px; color: var(--feature-muted); font-size: 15.5px; line-height: 1.6; }
.bqr-feature .rs-idea a { margin-top: auto; font-size: 15px; font-weight: 600; }
.bqr-feature .rs-more-programs { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 10px 12px; margin-top: 32px; }
.bqr-feature .rs-more-programs p { margin: 0; font-weight: 600; }
.bqr-feature .rs-more-programs ul { display: flex; flex-wrap: wrap; justify-content: center; gap: 10px; list-style: none; padding: 0; margin: 0; }
.bqr-feature .rs-more-programs a { display: inline-flex; padding: 7px 14px; border-radius: 999px; background: var(--feature-soft); font-size: 14.5px; font-weight: 600; line-height: 1.4; text-decoration: none; }
.bqr-feature .rs-more-programs a:hover { background: #ece8fd; }
.bqr-feature .rs-combine { display: flex; gap: 10px; align-items: flex-start; justify-content: center; max-width: 820px; margin: 24px auto 0; color: var(--feature-muted); font-size: 15px; }
.bqr-feature .rs-combine svg { flex: none; width: 22px; height: 22px; margin-top: 2px; stroke: var(--feature-accent); fill: none; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.bqr-feature .rs-cafes { max-width: none; margin: 12px 0 0; color: var(--feature-muted); font-size: 15px; text-align: center; }

/* restaurant features on a floor plan */
.bqr-feature .rs-map-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.05fr); gap: 56px; align-items: start; }
.bqr-feature .rs-floor { position: sticky; top: 104px; margin: 0; }
.bqr-feature .rs-floor-art { --rs-pad: 18px; position: relative; padding: var(--rs-pad); border-radius: 28px; background: #fff; box-shadow: 0 30px 60px -40px rgba(49,32,85,.5); }
.bqr-feature .rs-floor-plan { display: block; width: 100%; height: auto; }
.bqr-feature .rs-pin { position: absolute; display: grid; place-items: center; width: 54px; height: 54px; border-radius: 50%; background: #fff; box-shadow: 0 0 0 4px rgba(140,125,238,.2), 0 12px 24px -10px rgba(49,32,85,.55); }
.bqr-feature .rs-pin img, .bqr-feature .rs-pin svg { display: block; width: 36px; height: 36px; }
/*rtl:begin:ignore*/
.bqr-feature .rs-pin { transform: translate(-50%, -50%); }
.bqr-feature .rs-pin--geo { left: calc(var(--rs-pad) + (100% - 2 * var(--rs-pad)) * .317); top: calc(var(--rs-pad) + (100% - 2 * var(--rs-pad)) * .931); }
.bqr-feature .rs-pin--booking { left: calc(var(--rs-pad) + (100% - 2 * var(--rs-pad)) * .337); top: calc(var(--rs-pad) + (100% - 2 * var(--rs-pad)) * .393); }
.bqr-feature .rs-pin--menu { left: calc(var(--rs-pad) + (100% - 2 * var(--rs-pad)) * .54); top: calc(var(--rs-pad) + (100% - 2 * var(--rs-pad)) * .47); }
.bqr-feature .rs-pin--feedback { left: calc(var(--rs-pad) + (100% - 2 * var(--rs-pad)) * .387); top: calc(var(--rs-pad) + (100% - 2 * var(--rs-pad)) * .215); }
.bqr-feature .rs-pin--reviews { left: calc(var(--rs-pad) + (100% - 2 * var(--rs-pad)) * .6); top: calc(var(--rs-pad) + (100% - 2 * var(--rs-pad)) * .215); }
.bqr-feature .rs-pin--gift { left: calc(var(--rs-pad) + (100% - 2 * var(--rs-pad)) * .783); top: calc(var(--rs-pad) + (100% - 2 * var(--rs-pad)) * .757); }
/*rtl:end:ignore*/
.bqr-feature .rs-features { display: grid; gap: 14px; list-style: none; padding: 0; margin: 0; }
.bqr-feature .rs-feature { display: grid; grid-template-columns: 52px minmax(0, 1fr); gap: 16px; padding: 20px 22px; border-radius: 20px; background: #fff; box-shadow: 0 0 0 1px rgba(140,125,238,.12); }
.bqr-feature .rs-feature-icon { display: grid; place-items: center; width: 52px; height: 52px; border-radius: 16px; background: var(--feature-soft); }
.bqr-feature .rs-feature-icon img, .bqr-feature .rs-feature-icon svg { display: block; width: 38px; height: 38px; }
.bqr-feature .rs-feature-head { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 12px; margin-bottom: 6px; }
.bqr-feature .rs-feature-head h3 { margin: 0; font-size: 19px; }
.bqr-feature .rs-feature p { margin: 0 0 8px; color: var(--feature-muted); font-size: 15.5px; line-height: 1.6; }
.bqr-feature .rs-feature a { font-size: 15px; font-weight: 600; }
.bqr-feature .rs-map-note { display: flex; gap: 10px; align-items: flex-start; max-width: 980px; margin: 36px auto 0; color: var(--feature-muted); font-size: 15.5px; }
.bqr-feature .rs-map-note svg { flex: none; width: 22px; height: 22px; margin-top: 2px; stroke: var(--feature-accent); fill: none; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }

/* plans */
.bqr-feature .rs-plan-notes { display: flex; flex-wrap: wrap; justify-content: center; gap: 12px 36px; max-width: 1080px; list-style: none; padding: 0; margin: 32px auto 0; }
.bqr-feature .rs-plan-notes li { display: flex; gap: 10px; align-items: flex-start; max-width: 520px; color: var(--feature-muted); font-size: 15px; line-height: 1.6; }
.bqr-feature .rs-plan-notes svg { flex: none; width: 22px; height: 22px; margin-top: 1px; stroke: var(--feature-accent); fill: none; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.bqr-feature .rs-actions { justify-content: center; margin-top: 32px; }

@media (max-width: 1199.98px) {
    .bqr-feature .rs-rail { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 44px 32px; max-width: 760px; margin-inline: auto; }
    .bqr-feature .rs-rail::before { display: none; }
    .bqr-feature .rs-setup { grid-template-columns: minmax(0, 1fr); gap: 18px; }
    .bqr-feature .rs-setup-from { flex-direction: row; flex-wrap: wrap; align-items: center; }
    .bqr-feature .rs-setup-arrow { justify-self: center; }
    /*rtl:ignore*/
    .bqr-feature .rs-setup-arrow svg, [dir="rtl"] .bqr-feature .rs-setup-arrow svg { transform: rotate(90deg); }
}
@media (max-width: 991.98px) {
    .bqr-feature .rs-map-grid { grid-template-columns: minmax(0, 1fr); gap: 36px; }
    .bqr-feature .rs-floor { position: static; width: 100%; max-width: 560px; margin-inline: auto; }
    .bqr-feature .rs-ideas { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 767.98px) {
    .bqr-feature .rs-rail { grid-template-columns: minmax(0, 1fr); gap: 36px; max-width: 520px; }
    .bqr-feature .rs-rail::before { display: block; inset-inline: 19px auto; top: 20px; bottom: 20px; border-top: 0; border-inline-start: 2px dashed #c9c0f2; }
    .bqr-feature .rs-stop { padding-inline-start: 44px; }
    .bqr-feature .rs-time { margin-inline-start: -44px; }
    .bqr-feature .rs-modules, .bqr-feature .rs-ideas { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 575.98px) {
    .bqr-feature.rs-hero { padding-top: 96px; padding-bottom: 56px; }
    .bqr-feature .rs-setup { padding: 16px; border-radius: 22px; }
    .bqr-feature .rs-setup-from { padding: 18px; }
    .bqr-feature .rs-idea { padding: 22px; }
    .bqr-feature .rs-floor-art { --rs-pad: 10px; border-radius: 20px; }
    .bqr-feature .rs-pin { width: 36px; height: 36px; }
    .bqr-feature .rs-pin img, .bqr-feature .rs-pin svg { width: 25px; height: 25px; }
    .bqr-feature .rs-feature { grid-template-columns: 44px minmax(0, 1fr); gap: 14px; padding: 18px; }
    .bqr-feature .rs-feature-icon { width: 44px; height: 44px; border-radius: 14px; }
    .bqr-feature .rs-feature-icon img, .bqr-feature .rs-feature-icon svg { width: 32px; height: 32px; }
    .bqr-feature .rs-rail-note { padding: 16px; }
}
