/* sections/app-blocks.liquid */
.rv-app-blocks { display: grid; gap: 2rem; }
.rv-app-blocks__intro { margin-top: .75rem; max-width: 60ch; }
/* sections/condition-passport.liquid */
.rv-passport { border: var(--rv-hairline); background: var(--color-surface); }
.rv-passport__head { display: flex; align-items: center; flex-wrap: wrap; gap: 14px; padding: 18px 24px; border-bottom: var(--rv-hairline); }
.rv-passport__icon { flex: none; color: var(--rv-brass, var(--color-emphasis)); }
.rv-passport__guide { margin-inline-start: auto; }
.rv-passport__body { padding: 24px; }
.rv-passport__columns { display: grid; gap: 40px; grid-template-columns: repeat(auto-fit, minmax(min(100%, 22rem), 1fr)); }
.rv-passport__sub { margin-bottom: 12px; }
.rv-passport__sub--points { margin-top: 36px; }
.rv-passport__note { padding: 12px 24px; border-top: var(--rv-hairline); font-size: .75rem; color: var(--color-muted); }
.rv-pins { position: relative; margin: 0; border: var(--rv-hairline); }
.rv-pin { position: absolute; left: var(--x, 50%); top: var(--y, 50%); z-index: 2; display: grid; place-items: center; width: 28px; height: 28px; transform: translate(-50%, -50%); border: 1px solid var(--color-text); border-radius: 50%; background: var(--color-background); color: var(--color-text); font-size: .6875rem; font-weight: 600; font-variant-numeric: tabular-nums; transition: background-color .2s ease, color .2s ease; }
.rv-pin:hover, .rv-pin:focus-visible { background: var(--color-text); color: var(--color-background); }
.rv-pin-notes { display: grid; gap: 6px; margin-top: 8px; list-style: none; }
.rv-pin-note { padding: 10px 14px; border: var(--rv-hairline); border-inline-start: 2px solid var(--rv-brass, var(--color-emphasis)); background: var(--color-background); font-size: .875rem; line-height: 1.55; scroll-margin-top: 120px; }
.rv-pin-note strong { display: block; margin-bottom: 2px; font-size: .6875rem; font-weight: 500; letter-spacing: var(--rv-label-tracking, .14em); text-transform: uppercase; }
.rv-pin-note:target { border-inline-start-color: var(--color-text); background: var(--color-surface); }
/* sections/entry-body.liquid */
.rv-entry { display: grid; gap: 28px; }
.rv-entry__head { display: grid; gap: 12px; padding-bottom: 24px; border-bottom: var(--rv-hairline); }
.rv-entry__media { margin: 0; border: var(--rv-hairline); }
.rv-entry__body { font-size: 1.125rem; }
.rv-entry__back { margin-top: 12px; }
/* sections/find-another.liquid */
.rv-find__inner { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.4fr); gap: 48px; padding: 40px; border: var(--rv-hairline); background: var(--color-surface); }
.rv-find__head { display: grid; gap: 12px; align-content: start; }
.rv-find__piece { color: var(--color-text); }
@media (max-width: 749px) { .rv-find__inner { grid-template-columns: minmax(0, 1fr); gap: 24px; padding: 24px; } }
/* sections/header.liquid */
.rv-header__search { position: relative; }
.rv-header__search > summary { list-style: none; cursor: pointer; }
.rv-header__search > summary::-webkit-details-marker { display: none; }
.rv-header__search-form { position: absolute; z-index: 30; inset-inline-end: 0; top: calc(100% + 8px); width: min(26rem, calc(100vw - 2 * var(--rv-gutter, 16px))); flex-wrap: wrap; padding: 14px; border: var(--rv-hairline); background: var(--color-background); box-shadow: 0 14px 32px rgba(23, 23, 22, .1); }
.rv-header__search-form .rv-input { flex: 1 1 0; min-width: 0; }
.rv-header__predictive { flex: 1 1 100%; }
/* sections/main-cart.liquid */
.rv-cart-page__problem { margin-bottom: 24px; }
.rv-cart-page__notice { border: var(--rv-hairline); margin-bottom: 24px; }
.rv-cart-page__grid { display: grid; gap: 36px; align-items: start; }
@media (min-width: 990px) { .rv-cart-page__grid { grid-template-columns: minmax(0, 1fr) minmax(280px, 380px); gap: 56px; } }
.rv-cart-page__lines { border-top: var(--rv-hairline); }
.rv-cart-page__lines .rv-cart-line { padding-inline: 0; }
@media (min-width: 990px) { .rv-cart-page__summary { position: sticky; top: calc(76px + 24px); } }
.rv-cart-summary__note { margin-bottom: 16px; }
.rv-cart-summary__actions { display: grid; gap: 8px; }
.rv-empty__hint { margin-top: 8px; }
.rv-empty__action { margin-top: 24px; }
.rv-cart-page__extras { margin-top: 64px; padding-top: 36px; border-top: var(--rv-hairline); }
/* sections/main-collection.liquid */
.rv-collection { padding-bottom: 80px; }
.rv-collection-head { padding-block: 56px 36px; }
.rv-collection-head__description { max-width: 62ch; margin-top: 16px; }
.rv-toolbar { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 16px; padding-block: 12px; border-block: var(--rv-hairline); margin-bottom: 36px; }
.rv-toolbar__count { font-variant-numeric: tabular-nums; margin-inline-end: auto; }
.rv-views { display: inline-flex; border: var(--rv-hairline); }
.rv-views__option { padding: 10px 18px; font-size: .6875rem; letter-spacing: var(--rv-label-tracking, .14em); text-transform: uppercase; color: var(--color-muted); cursor: pointer; }
.rv-views__option:hover { color: var(--color-text); }
.rv-view-input:nth-of-type(1):checked ~ .rv-toolbar .rv-views__option:nth-child(1), .rv-view-input:nth-of-type(2):checked ~ .rv-toolbar .rv-views__option:nth-child(2) { background: var(--color-text); color: var(--color-background); }
.rv-view-input:nth-of-type(1):focus-visible ~ .rv-toolbar .rv-views__option:nth-child(1), .rv-view-input:nth-of-type(2):focus-visible ~ .rv-toolbar .rv-views__option:nth-child(2) { outline: 2px solid var(--color-text); outline-offset: 2px; }
.rv-ledger-wrap { display: none; overflow-x: auto; }
.rv-view-input:nth-of-type(2):checked ~ .rv-collection__grid { display: none; }
.rv-view-input:nth-of-type(2):checked ~ .rv-ledger-wrap { display: block; }
.rv-ledger { width: 100%; border-collapse: collapse; font-size: .9375rem; }
.rv-ledger th { padding: 0 16px 18px; text-align: start; font-size: .6875rem; font-weight: 400; letter-spacing: var(--rv-label-tracking, .14em); text-transform: uppercase; color: var(--color-muted); border-bottom: 1px solid var(--color-border); white-space: nowrap; }
.rv-ledger td { padding: 22px 16px; border-bottom: var(--rv-hairline); vertical-align: middle; }
.rv-ledger__thumb { width: 136px; }
.rv-ledger__thumb img { width: 104px; height: 128px; object-fit: contain; background: var(--color-surface); }
.rv-ledger__piece a:hover { color: var(--color-emphasis); }
.rv-ledger__number { font-variant-numeric: tabular-nums; white-space: nowrap; }
.rv-ledger__row--sold td { color: var(--color-muted); }
@media (max-width: 749px) { .rv-views__option { padding: 9px 12px; } .rv-ledger__thumb { width: 72px; } .rv-ledger__thumb img { width: 56px; height: 70px; } .rv-ledger td, .rv-ledger th { padding-inline: 10px; } }
/* sections/main-list-collections.liquid */
.rv-lcol { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 260px), 1fr)); gap: 32px 24px; margin: 0; padding: 0; list-style: none; }
.rv-lcol__link { display: grid; gap: 10px; }
.rv-lcol__link .rv-media { border: var(--rv-hairline); }
.rv-lcol__link:hover .rv-lcol__title { color: var(--color-emphasis); }
.rv-lcol__all { margin-top: 48px; }
/* sections/main-product.liquid */
.rv-product { display: grid; grid-template-columns: minmax(0, 62fr) minmax(340px, 38fr); gap: 80px; padding-block: 36px 80px; align-items: start; }
.rv-gallery { display: grid; gap: 8px; }
.rv-gallery__item { position: relative; margin: 0; border: var(--rv-hairline); background: var(--color-surface); }
.rv-gallery__item img { width: 100%; height: auto; }
.rv-gallery__item--empty { aspect-ratio: 3 / 4; }
.rv-product__info { position: sticky; top: 100px; display: flex; flex-direction: column; gap: 16px; }
.rv-product__designer { font-size: .8125rem; }
.rv-product__title { font-family: var(--font-heading-font, Georgia, serif); font-size: 2.5rem; line-height: 1.12; font-weight: 400; }
.rv-product__archive { color: var(--color-muted); font-variant-numeric: tabular-nums; }
.rv-designer__link:hover { color: var(--color-emphasis); }
.rv-product__badges { display: flex; flex-wrap: wrap; gap: 4px; margin-top: 2px; }
.rv-product__price { display: flex; align-items: baseline; flex-wrap: wrap; gap: 8px; }
.rv-product--sold .rv-product__title { color: var(--color-muted); }
.rv-buy { display: flex; flex-direction: column; gap: 8px; }
.rv-buy__row { display: flex; gap: 8px; }
.rv-pdp__add { display: grid; gap: 8px; }
.rv-pdp__qty { width: 6rem; text-align: center; }
.rv-pdp__cart { align-self: flex-start; }
.rv-pdp__sold-note { font-family: var(--font-heading-font, Georgia, serif); font-style: italic; font-size: 1.125rem; }
.rv-availability-line { display: flex; align-items: center; gap: 8px; font-size: .6875rem; letter-spacing: var(--rv-label-tracking, .14em); text-transform: uppercase; color: color-mix(in srgb, #465347 62%, var(--color-text)); }
.rv-availability-line__dot { width: 6px; height: 6px; border-radius: 50%; background: currentColor; flex: none; }
.rv-product__accordion .rv-accordion__summary { min-height: 56px; padding-block: 16px; font-size: .6875rem; font-weight: 500; letter-spacing: var(--rv-label-tracking, .14em); text-transform: uppercase; }
.rv-product__accordion .rv-accordion__summary:hover { color: var(--color-emphasis); }
.rv-product__accordion .rv-accordion__icon { width: 12px; height: 12px; }
.rv-product__accordion .rv-accordion__content { padding-bottom: 24px; font-size: .8125rem; }
.rv-gallery__zoom { display: block; cursor: zoom-in; }
.rv-gallery__zoom:focus-visible { outline: 1px solid var(--color-text); outline-offset: -4px; }
.rv-share { display: flex; flex-wrap: wrap; align-items: baseline; gap: 8px 16px; padding-top: 16px; border-top: var(--rv-hairline); }
.rv-share__list { display: flex; flex-wrap: wrap; gap: 8px 16px; margin: 0; padding: 0; list-style: none; }
.rv-share__link { font-size: .75rem; letter-spacing: .08em; text-decoration: underline; text-underline-offset: .25em; text-decoration-thickness: 1px; }
.rv-share__link:hover { color: var(--color-emphasis); }
.rv-size-guide .rv-rte table { width: 100%; border-collapse: collapse; }
.rv-size-guide .rv-rte th, .rv-size-guide .rv-rte td { padding: 6px 8px; border-bottom: var(--rv-hairline); text-align: start; }
.rv-sticky-buy { display: none; }
@media (max-width: 749px) {
  .rv-sticky-buy { position: sticky; bottom: 0; z-index: 5; display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-top: 24px; padding: 10px var(--rv-gutter, 16px); background: var(--color-surface); border-top: var(--rv-hairline); box-shadow: 0 -6px 18px rgba(23, 23, 22, .06); }
  .rv-sticky-buy__info { display: grid; gap: 2px; min-width: 0; }
  .rv-sticky-buy__title { overflow: hidden; white-space: nowrap; text-overflow: ellipsis; font-family: var(--font-heading-font, Georgia, serif); font-size: 1rem; }
  .rv-sticky-buy .rv-btn { flex: none; }
}
@media (max-width: 989px) {
  .rv-product { grid-template-columns: minmax(0, 1fr); gap: 36px; }
  .rv-product__info { position: static; }
  .rv-gallery { grid-auto-flow: column; grid-auto-columns: 86%; overflow-x: auto; scroll-snap-type: x mandatory; margin-inline: calc(-1 * var(--rv-gutter, 16px)); padding-inline: var(--rv-gutter, 16px); }
  .rv-gallery__item { scroll-snap-align: center; }
}
/* sections/main-product-collection.liquid */
.rv-pcol { padding-bottom: 80px; }
.rv-ledger-wrap--only { display: block; }
.rv-listing { display: grid; gap: 14px; margin-bottom: 20px; }
.rv-listing__bar { display: flex; flex-wrap: wrap; align-items: end; gap: 12px 16px; }
.rv-listing__filters { flex: 1 1 100%; }
.rv-listing__filters > summary { list-style: none; cursor: pointer; display: inline-flex; }
.rv-listing__filters > summary::-webkit-details-marker { display: none; }
.rv-listing__panel { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 200px), 1fr)); gap: 24px; margin-top: 14px; padding: 24px; border: var(--rv-hairline); background: var(--color-surface); }
.rv-listing__group { border: 0; margin: 0; padding: 0; min-width: 0; }
.rv-listing__group legend { margin-bottom: 10px; }
.rv-listing__values { display: grid; gap: 6px; max-height: 15rem; overflow: auto; margin: 0; padding: 0; list-style: none; font-size: .875rem; }
.rv-listing__values label { display: flex; gap: 8px; align-items: center; cursor: pointer; }
.rv-listing__price { display: flex; gap: 10px; }
.rv-listing__price label { display: grid; gap: 4px; }
.rv-listing__price .rv-input { width: 7rem; }
.rv-listing__sort { display: grid; gap: 4px; margin-inline-start: auto; }
.rv-listing__active { display: flex; flex-wrap: wrap; gap: 8px; margin: 0; padding: 0; list-style: none; }
.rv-listing__chip { display: inline-flex; gap: 6px; padding: 6px 12px; border: var(--rv-hairline); font-size: .75rem; letter-spacing: .06em; }
.rv-listing__chip:hover { border-color: var(--color-text); }
.rv-listing__chip--clear { border-color: transparent; text-decoration: underline; text-underline-offset: .2em; }
.rv-pagination { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; margin-top: 48px; font-variant-numeric: tabular-nums; }
.rv-pagination a, .rv-pagination .current { display: inline-block; min-width: 40px; padding: 8px 12px; text-align: center; border: var(--rv-hairline); }
.rv-pagination .current { border-color: var(--color-text); }
.rv-pagination a:hover { color: var(--color-emphasis); }
/* sections/main-search.liquid */
.rv-search__form { max-width: 36rem; margin-top: 24px; }
.rv-search__page { display: grid; gap: 8px; align-content: start; padding: 24px; border: var(--rv-hairline); background: var(--color-surface); }
.rv-search__page a:hover { color: var(--color-emphasis); }
/* sections/piece-record.liquid */
.rv-piece__view .rv-piece__label { position: absolute; top: 12px; left: 12px; z-index: 1; padding: 4px 10px; background: var(--color-background); border: var(--rv-hairline); font-size: .625rem; letter-spacing: var(--rv-label-tracking, .14em); text-transform: uppercase; color: var(--color-muted); }
.rv-piece__record { color: var(--color-muted); font-variant-numeric: tabular-nums; }
.rv-piece__quote { font-family: var(--font-heading-font, Georgia, serif); font-style: italic; font-size: 1.125rem; color: var(--color-text); }
/* sections/predictive-search.liquid */
.rv-predictive { display: grid; gap: 12px; padding-top: 12px; }
.rv-predictive__list { display: grid; margin: 0; padding: 0; list-style: none; }
.rv-predictive__item { display: grid; grid-template-columns: 44px minmax(0, 1fr) auto; gap: 12px; align-items: center; padding: 8px 0; border-bottom: var(--rv-hairline); font-size: .875rem; }
.rv-predictive__item img, .rv-predictive__blank { display: block; width: 44px; height: 54px; object-fit: contain; background: var(--color-surface); }
.rv-predictive__text { display: grid; gap: 2px; min-width: 0; }
.rv-predictive__item:hover { color: var(--color-emphasis); }
.rv-predictive__all { font-size: .8125rem; }
/* sections/product-passport.liquid */
.rv-pp__grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 300px), 1fr)); gap: 16px; align-items: start; }
.rv-pp__panel .rv-passport__body { display: grid; gap: 14px; }
.rv-pp__grade { margin: 0; }
.rv-pp__mono { font-variant-numeric: tabular-nums; letter-spacing: .04em; }
.rv-pp__text p + p, .rv-pp__quote p + p { margin-top: .6em; }
.rv-pp__quote { margin: 0; font-family: var(--font-heading-font, Georgia, serif); font-style: italic; font-size: 1.125rem; line-height: 1.5; }
.rv-pp__subhead { margin-top: 10px; }
.rv-pp__lines { margin: 0; padding: 0; list-style: none; }
.rv-pp__certificate { margin: 0; display: grid; gap: 6px; }
.rv-pp__certificate img { width: 100%; height: auto; border: var(--rv-hairline); }
.rv-pp__timeline { margin: 0; padding: 0 0 0 18px; list-style: none; border-inline-start: 1px solid var(--color-border); display: grid; gap: 14px; }
.rv-pp__timeline li { position: relative; font-size: .9375rem; line-height: 1.5; }
.rv-pp__timeline li::before { content: ""; position: absolute; inset-inline-start: -22px; top: .5em; width: 7px; height: 7px; border-radius: 50%; background: var(--color-surface); border: 1px solid var(--color-text); }
.rv-pp__timeline li:last-child::before { background: var(--color-text); }
.rv-pp__timeline--prices li { font-variant-numeric: tabular-nums; }
/* sections/product-reviews.liquid */
.rv-previews__average { display: flex; align-items: center; gap: 8px; margin-top: 10px; }
.rv-previews__list { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 300px), 1fr)); gap: 16px; margin: 0 0 24px; padding: 0; list-style: none; }
.rv-previews__item { display: grid; gap: 12px; align-content: start; }
.rv-previews__body p + p { margin-top: .5em; }
.rv-previews__photos { display: flex; flex-wrap: wrap; gap: 6px; margin: 0; padding: 0; list-style: none; }
.rv-previews__photos img { width: 72px; height: 72px; object-fit: cover; border: var(--rv-hairline); }
.rv-previews__write { max-width: 40rem; }
.rv-previews__form { display: grid; gap: 16px; padding-bottom: 24px; }
.rv-previews__rating { display: flex; flex-wrap: wrap; gap: 8px 16px; border: 0; margin: 0; padding: 0; }
.rv-previews__rating legend { width: 100%; margin-bottom: 6px; }
/* sections/reviews.liquid */
.rv-reviews__average { margin-bottom: 16px; }
.rv-review-card__response { margin-top: 12px; }
/* sections/showrooms.liquid */
.rv-showrooms { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 300px), 1fr)); gap: 16px; margin: 0; padding: 0; list-style: none; }
.rv-showroom .rv-passport__body { display: grid; gap: 10px; align-content: start; }
.rv-showroom__address span { display: block; }
.rv-showrooms__consign { margin-top: 40px; }
.rv-showroom__hours .rv-spec__row { grid-template-columns: minmax(0, 7rem) minmax(0, 1fr); padding-block: .5rem; }
/* blocks/specialist.liquid */
.rv-specialist { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px 24px; padding-block: 20px; border-bottom: var(--rv-hairline); }
.rv-specialist__text { display: grid; gap: 4px; }
