/* Reviews round 7 · shared bits for A, B and C */
.r7r { --tint: #f6f4ef; background: var(--tint); transition: background-color .9s ease; }
.r7r .tag { margin-bottom: 20px; }
.r7r .d-xl em, .r7r .d-l em, .r7r .d-m em { color: var(--crimson); }
.r7-links { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.r7-link { position: relative; display: flex; flex-direction: column; justify-content: space-between; gap: 40px; min-height: 230px; padding: 28px; border-radius: 22px; color: #fff; text-decoration: none; overflow: hidden; isolation: isolate; background: var(--c); }
.r7-link::after { content: ""; position: absolute; inset: -10% -6%; z-index: -1; background: rgba(0, 0, 0, .22); -webkit-mask: url(/assets/brush-stroke.svg) no-repeat left center / 0% 100%; mask: url(/assets/brush-stroke.svg) no-repeat left center / 0% 100%; transition: -webkit-mask-size .7s cubic-bezier(.6, 0, .25, 1), mask-size .7s cubic-bezier(.6, 0, .25, 1); }
.r7-link:hover::after { -webkit-mask-size: 130% 100%; mask-size: 130% 100%; }
.r7-link small { font: 700 12px/1 var(--sans); letter-spacing: .16em; text-transform: uppercase; opacity: .75; }
.r7-link b { font: 700 clamp(30px, 3.2vw, 48px)/.95 var(--display); font-variation-settings: "wdth" 86; letter-spacing: -.03em; }
.r7-link span { font-size: 15px; opacity: .85; }
.r7-link i { position: absolute; right: 24px; top: 24px; width: 48px; height: 48px; border-radius: 50%; border: 1.5px solid rgba(255, 255, 255, .5); display: grid; place-items: center; font-style: normal; font-size: 20px; transition: transform .4s var(--ease); }
.r7-link:hover i { transform: rotate(-45deg); }
.r7r mark { background: linear-gradient(transparent 66%, color-mix(in srgb, var(--m, #d6a63c) 38%, transparent) 66%); color: inherit; padding: 0 2px; border-radius: 2px; }
.r7-note { font-size: 12.5px; color: var(--muted); }
@media (max-width: 900px) { .r7-links { grid-template-columns: 1fr; } .r7-link { min-height: 180px; } }
