.rv-st__head { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: clamp(1.25rem, 3vw, 2.5rem); padding: clamp(1.5rem, 3vw, 2.5rem); border-radius: var(--rv-r-lg); background-color: var(--rv-wine-2); background-image: var(--rv-g-timber), url('/assets/images/timber.webp'); background-size: cover, 55% auto; background-position: center, center; box-shadow: var(--rv-glow), var(--rv-carve) }
.rv-st__flag { display: flex; align-items: center; gap: 1.1rem }
.rv-st__ring { position: relative; display: block; width: 1.5rem; height: 1.5rem; flex: none; border-radius: 50%; background-color: var(--rv-lichen); box-shadow: 0 0 1rem var(--rv-lichen) }
.rv-st__ring::after { content: ''; position: absolute; inset: -0.45rem; border-radius: 50%; box-shadow: 0 0 0 0.18rem var(--rv-lichen); opacity: 0; animation: rv-ripple 2.6s var(--rv-ease) infinite }
.rv-st__flagt { font-family: 'Archivo', 'Arial Black', sans-serif; font-stretch: 118%; font-size: clamp(1.35rem, 2.6vw, 1.9rem); font-weight: 800; line-height: 1.1; color: var(--rv-text) }
.rv-st__flags { font-family: 'Bitter', Georgia, serif; font-size: 1rem; font-weight: 600; line-height: 1.4; color: var(--rv-text-soft) }
.rv-st__metrics { display: flex; flex-wrap: wrap; gap: clamp(1.25rem, 3vw, 2.5rem) }
.rv-st__metrics div { display: grid; gap: 0.1rem }
.rv-st__metrics dt { font-family: 'Archivo', 'Arial Black', sans-serif; font-stretch: 125%; font-size: clamp(1.6rem, 3vw, 2.2rem); font-weight: 800; line-height: 0.95; color: var(--rv-sulphur) }
.rv-st__metrics dd { margin: 0; font-family: 'Bitter', Georgia, serif; font-size: 1rem; font-weight: 600; line-height: 1.15; color: var(--rv-text-soft) }

.rv-st__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: clamp(0.85rem, 1.8vw, 1.25rem) }
.rv-st__svc { display: flex; align-items: center; gap: 1rem; padding: clamp(1.1rem, 2vw, 1.5rem); border-radius: var(--rv-r-md); background-image: var(--rv-g-wine); box-shadow: var(--rv-carve) }
.rv-st__dot { position: relative; display: block; width: 0.9rem; height: 0.9rem; flex: none; border-radius: 50%; background-color: var(--rv-lichen); box-shadow: 0 0 0.7rem var(--rv-lichen) }
.rv-st__dot::after { content: ''; position: absolute; inset: -0.3rem; border-radius: 50%; box-shadow: 0 0 0 0.13rem var(--rv-lichen); opacity: 0; animation: rv-ripple 2.6s var(--rv-ease) infinite }
.rv-st__svct { flex: 1 1 auto }
.rv-st__svct .rv-h4 { color: var(--rv-text) }
.rv-st__svct .rv-p--sm { color: var(--rv-text-soft) }
.rv-st__ok { flex: none; font-family: 'Archivo', 'Arial Black', sans-serif; font-stretch: 112.5%; font-size: 1rem; font-weight: 700; color: var(--rv-lichen) }

.rv-st__low { display: grid; grid-template-columns: 1.2fr 0.8fr; gap: clamp(1.25rem, 2.5vw, 2rem); align-items: stretch }
.rv-st__log { display: grid; align-content: start; gap: 1rem; padding: clamp(1.5rem, 3vw, 2.25rem); border-radius: var(--rv-r-lg); background-color: var(--rv-wine-2); background-image: var(--rv-g-timber), url('/assets/images/timber-360.webp'); background-size: cover, 70% auto; background-position: center, center; box-shadow: var(--rv-carve) }
.rv-st__logl { display: grid; gap: 0.9rem }
.rv-st__logl li { position: relative; display: grid; gap: 0.1rem; padding-left: 1.7rem }
.rv-st__logl li::before { content: ''; position: absolute; left: 0; top: 0.3em; width: 0.9rem; height: 0.9rem; background-color: var(--rv-ember); -webkit-mask: var(--rv-ring) center / contain no-repeat; mask: var(--rv-ring) center / contain no-repeat }
.rv-st__when { font-family: 'Archivo', 'Arial Black', sans-serif; font-stretch: 112.5%; font-size: 1rem; font-weight: 700; color: var(--rv-sulphur) }
.rv-st__what { font-family: 'Bitter', Georgia, serif; font-size: 1.02rem; font-weight: 600; line-height: 1.4; color: var(--rv-text-soft) }
.rv-st__none { color: var(--rv-text-muted) }
.rv-st__sess { display: grid; align-content: start; gap: 0.85rem; padding: clamp(1.5rem, 3vw, 2.25rem); border-radius: var(--rv-r-lg); background-image: var(--rv-g-ember); box-shadow: var(--rv-glow) }
.rv-st__sess .rv-h3, .rv-st__sess .rv-p, .rv-st__sess .rv-p--sm { color: var(--rv-birch-2) }
.rv-st__name { font-weight: 700; color: var(--rv-sulphur) }
.rv-st__out { display: block }
.rv-in .rv-st__out { display: none }
.rv-st__in { display: none }
.rv-in .rv-st__in { display: block }

.rv-st__cta { max-width: 44rem; margin-inline: auto; justify-items: start; text-align: left }
.rv-st__cta .rv-btn { width: auto }

@media (max-width: 820px) {
  .rv-st__grid { grid-template-columns: minmax(0, 1fr) }
  .rv-st__low { grid-template-columns: minmax(0, 1fr) }
}
