.qvr { --qvr-accent: #333; --qvr-accent-hover: #000; --qvr-border: #e5e5e5; --qvr-surface: #fff; --qvr-tint: #f5f5f5; --qvr-muted: #777; --qvr-columns: 3; --qvr-gap: 20px; color: inherit; width: 100%; min-width: 0; margin: 0; }
/* The theme assigns fonts to individual tags with !important. Inherit through
   the entire block so headings, buttons and review text follow their host. */
.qvr, .qvr * { font-family: inherit !important; }
.qvr *, .qvr *::before, .qvr *::after { box-sizing: border-box; }
.qvr .qvr-grid { display: grid; grid-template-columns: repeat(var(--qvr-columns), minmax(0, 1fr)); gap: var(--qvr-gap); align-items: stretch; }
.qvr .qvr-carousel { position: relative; min-width: 0; padding-top: 20px; border-top: 1px solid var(--qvr-border); }
.qvr .qvr-carousel-ready .qvr-viewport { overflow: hidden; touch-action: pan-y pinch-zoom; }
.qvr .qvr-carousel-ready .qvr-grid { position: relative; grid-template-columns: none; grid-auto-flow: column; grid-auto-columns: calc((100% - (var(--qvr-columns) - 1) * var(--qvr-gap)) / var(--qvr-columns)); }
.qvr .qvr-is-animating .qvr-grid { will-change: transform; }
/* A single review follows its own text height. Multi-card rows size to all
   slides, so their borders stay level and the height stays steady when paging. */
.qvr .qvr-carousel-ready:not(.qvr-multiple) .qvr-card[inert] { content-visibility: hidden; }
.qvr .qvr-controls { position: absolute; inset: 20px 0 0; pointer-events: none; }
.qvr .qvr-controls[hidden] { display: none !important; }
.qvr button.qvr-arrow { appearance: none; position: absolute; top: 0; z-index: 2; display: grid; place-items: center; width: 36px; height: 36px; min-width: 36px; padding: 0; margin: 0; border: 0; border-radius: 0; color: var(--qvr-accent); background: var(--qvr-tint); font: inherit; box-shadow: none; cursor: pointer; pointer-events: auto; transition: background-color .15s, color .15s; }
.qvr [data-qvr-prev] { left: auto; right: 44px; }
.qvr [data-qvr-next] { right: 0; }
.qvr button.qvr-arrow:hover, .qvr button.qvr-arrow:focus-visible { background: #e9e9e9; color: var(--qvr-accent-hover); }
.qvr button.qvr-arrow svg { display: block; width: 20px; height: 20px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.qvr .qvr-card { display: flex; flex-direction: column; min-width: 0; margin: 0; padding: 0; color: inherit; background: transparent; border: 0; border-radius: 0; box-shadow: none; }
.qvr .qvr-multiple { padding-top: 0; border-top: 0; }
.qvr .qvr-multiple .qvr-card { padding: 20px; border: 1px solid var(--qvr-border); }
.qvr .qvr-multiple .qvr-controls { inset: 21px 21px 0; }
.qvr .qvr-card-top { display: flex; gap: 12px; align-items: center; margin-bottom: 12px; }
.qvr .qvr-card-controls .qvr-card-top { padding-right: 96px; }
.qvr .qvr-avatar { display: none; }
.qvr .qvr-person { min-width: 0; }
.qvr .qvr-person h3 { color: inherit; font: inherit; font-size: 14px; font-weight: 700; line-height: 1.4; margin: 0 0 3px; overflow-wrap: anywhere; }
.qvr time { font-size: 12px; color: var(--qvr-muted); }
.qvr .qvr-meta { display: flex; align-items: center; flex-wrap: wrap; gap: 14px; margin-bottom: 12px; }
.qvr .qvr-stars { color: var(--qvr-accent); font-size: 16px; letter-spacing: 1px; line-height: 1.4; }
.qvr a.qvr-source { padding: 0; background: transparent; color: var(--qvr-muted); text-decoration: none; font-size: 12px; font-weight: 400; line-height: 1.5; }
.qvr .qvr-text, .qvr .qvr-preview { color: inherit; font-size: 14px; line-height: 1.65; white-space: pre-wrap; overflow-wrap: anywhere; margin: 0; }
.qvr .qvr-details { margin: 0; padding: 0; border: 0; }
.qvr .qvr-details summary { display: block; list-style: none; cursor: pointer; }
.qvr .qvr-details summary::-webkit-details-marker { display: none; }
.qvr .qvr-preview { display: block; }
.qvr .qvr-expand, .qvr .qvr-collapse { color: var(--qvr-accent); font-size: 13px; font-weight: 600; margin: 8px 0; }
.qvr .qvr-expand { display: block; }
.qvr .qvr-collapse, .qvr .qvr-details[open] .qvr-preview, .qvr .qvr-details[open] .qvr-expand { display: none; }
.qvr .qvr-details[open] .qvr-collapse { display: block; }
/* Old page-cache markup may still contain this now-removed duplicate link. */
.qvr .qvr-original { display: none; }
.qvr .qvr-links { display: flex; flex-wrap: wrap; gap: 8px 18px; margin-top: 20px; }
.qvr .qvr-links a { display: inline-block; padding: 2px 0; border: 0; border-radius: 0; font-size: 12px; color: var(--qvr-muted); text-decoration: none; background: transparent; }
.qvr a:hover { color: var(--qvr-accent-hover); text-decoration: underline; text-underline-offset: 3px; }
.qvr a:focus-visible, .qvr summary:focus-visible, .qvr button:focus-visible { outline: 2px solid var(--qvr-accent); outline-offset: 3px; }
.qvr [data-qvr-track]:focus-visible { outline: 2px solid var(--qvr-accent); outline-offset: -2px; }
@media (max-width: 900px) { .qvr { --qvr-columns: 2; } }
@media (max-width: 600px) { .qvr { --qvr-columns: 1; --qvr-gap: 14px; } }
@media (prefers-reduced-motion: reduce) { .qvr button.qvr-arrow { transition: none; } }

/* Homepage presentation. Product and ordinary shortcodes keep the base styles. */
.qvr.qvr-home { --qvr-accent: #68482e; --qvr-accent-hover: #46301f; --qvr-muted: #786b60; --qvr-gap: 16px; box-sizing: border-box; padding: 40px 48px; border-radius: 32px; background: #68482e; color: #3e3329; }
.qvr-home .qvr-home-header { display: flex; flex-wrap: wrap; align-items: flex-end; justify-content: space-between; gap: 24px; margin-bottom: 32px; }
.qvr-home .qvr-home-intro { flex: 1 1 460px; min-width: 0; }
.qvr-home .qvr-home-eyebrow { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; color: #eee3d9; font-size: 14px; font-weight: 700; line-height: 1.5; }
.qvr-home .qvr-home-icons { display: flex; flex: 0 0 auto; }
.qvr-home .qvr-source-icon { display: inline-flex; flex: 0 0 auto; width: 32px; height: 32px; border-radius: 50%; vertical-align: middle; }
.qvr-home .qvr-home-icons .qvr-source-icon { box-shadow: 0 0 0 2px #68482e; }
.qvr-home .qvr-home-icons .qvr-source-icon + .qvr-source-icon { margin-left: -4px; }
.qvr-home .qvr-source-mark-2gis { align-items: center; justify-content: center; background: #19aa1e; color: #fff; font-size: 9px; font-weight: 700; letter-spacing: -.3px; line-height: 1; }
.qvr.qvr-home h2.qvr-home-title { color: #fff; font-size: clamp(30px, 3.2vw, 48px); font-weight: 700; line-height: 1.16; letter-spacing: -.025em; margin: 16px 0 0; text-transform: none; }
.qvr-home .qvr-home-sources { display: flex; flex-wrap: wrap; gap: 8px; }
.qvr-home .qvr-home-sources a { display: flex; align-items: center; gap: 10px; min-width: 132px; padding: 12px 14px; border: 1px solid #ffffff26; border-radius: 16px; background: #ffffff14; color: #fff; text-decoration: none; font-size: 14px; line-height: 1.4; transition: background-color .15s; }
.qvr-home .qvr-home-sources a:hover { background: #ffffff24; }
.qvr-home .qvr-home-sources strong { display: block; font-weight: 700; color: inherit; }
.qvr-home .qvr-home-sources .qvr-home-rating { display: flex; align-items: center; gap: 6px; font-size: 16px; line-height: 1.4; white-space: nowrap; }
.qvr-home .qvr-home-rating-stars { color: #ff982f; font-size: 16px; letter-spacing: 0; }
.qvr-home .qvr-home-source-caption { display: block; font-size: 12px; color: #eee3d9; }
.qvr-home .qvr-external { margin-left: auto; color: #ddc8b6; }
.qvr-home .qvr-carousel { padding-top: 0; border-top: 0; }
.qvr-home .qvr-card, .qvr-home .qvr-multiple .qvr-card { padding: 28px; min-height: 332px; border: 0; border-radius: 24px; background: #fff; color: #3e3329; }
.qvr-home .qvr-carousel-ready:not(.qvr-multiple) .qvr-card[inert] { content-visibility: visible; }
.qvr-home .qvr-card-top, .qvr-home .qvr-card-controls .qvr-card-top { order: 3; flex-shrink: 0; padding: 20px 0 0; margin: 24px 0 0; border-top: 1px solid #e9e2dc; }
.qvr-home .qvr-avatar { display: flex; flex-shrink: 0; align-items: center; justify-content: center; width: 40px; height: 40px; border-radius: 50%; background: #f1e7de; color: #68482e; font-size: 16px; font-weight: 700; }
.qvr-home .qvr-person h3 { font-size: 14px; }
.qvr-home time { display: block; line-height: 1.5; }
.qvr-home .qvr-meta { justify-content: space-between; gap: 10px; margin-bottom: 20px; }
.qvr-home .qvr-stars { color: #f58220; font-size: 16px; letter-spacing: 1.6px; }
.qvr-home a.qvr-source { display: inline-flex; align-items: center; gap: 5px; color: #786b60; }
.qvr-home .qvr-source .qvr-source-icon { width: 20px; height: 20px; }
.qvr-home .qvr-source .qvr-source-mark-2gis { font-size: 6px; letter-spacing: -.2px; }
.qvr-home .qvr-text, .qvr-home .qvr-preview { font-size: 15px; line-height: 1.65; }
.qvr-home .qvr-card > .qvr-text, .qvr-home .qvr-details { flex: 1 0 auto; }
.qvr-home .qvr-controls, .qvr-home .qvr-multiple .qvr-controls { position: static; display: grid; grid-template-columns: minmax(0, 1fr) 44px 44px; align-items: center; gap: 8px; margin-top: 24px; }
.qvr-home button.qvr-arrow { position: static; width: 44px; height: 44px; min-width: 44px; border-radius: 50%; border: 1px solid #ffffff26; color: #fff; background: #ffffff14; }
.qvr-home button.qvr-arrow[data-qvr-next] { background: #ead3be; border-color: #ead3be; color: #4b321e; }
.qvr-home button.qvr-arrow:hover, .qvr-home button.qvr-arrow:focus-visible { background: #ffffff2b; color: #fff; }
.qvr-home button.qvr-arrow[data-qvr-next]:hover, .qvr-home button.qvr-arrow[data-qvr-next]:focus-visible { background: #f5e5d6; color: #4b321e; }
.qvr-home .qvr-dots { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; padding-right: 12px; }
.qvr-home .qvr-dot { display: block; width: 6px; height: 6px; border-radius: 9px; background: #ffffff40; transition: width .26s, background-color .26s; }
.qvr-home .qvr-dot.is-active { width: 32px; background: #ead3be; }
.qvr-home .qvr-home-sources a:focus-visible, .qvr-home button.qvr-arrow:focus-visible { outline-color: #fff; }
@media (max-width: 1100px) { .qvr.qvr-home { padding: 36px; } }
@media (max-width: 600px) {
    .qvr.qvr-home { padding: 28px 20px; border-radius: 24px; }
    .qvr-home .qvr-home-header { gap: 20px; margin-bottom: 24px; }
    .qvr-home .qvr-home-intro { flex-basis: 100%; }
    .qvr-home .qvr-home-eyebrow { font-size: 12px; }
    .qvr-home .qvr-home-sources { width: 100%; gap: 6px; }
    .qvr-home .qvr-home-sources a { flex: 1 1 0; min-width: 0; padding: 10px 6px; gap: 6px; flex-direction: column; text-align: center; border-radius: 12px; font-size: 12px; }
    .qvr-home .qvr-home-source-caption { font-size: 10px; }
    .qvr-home .qvr-home-sources .qvr-home-rating { justify-content: center; gap: 4px; font-size: 14px; }
    .qvr-home .qvr-home-rating-stars { font-size: 12px; }
    .qvr-home .qvr-external { display: none; }
    .qvr-home .qvr-card, .qvr-home .qvr-multiple .qvr-card { padding: 24px; border-radius: 20px; }
    .qvr-home .qvr-text, .qvr-home .qvr-preview { font-size: 14px; }
    .qvr-home .qvr-controls { margin-top: 20px; }
}
@media (prefers-reduced-motion: reduce) { .qvr-home .qvr-dot, .qvr-home .qvr-home-sources a { transition: none; } }
