/* Guests' reviews written out in full (js/recensioni.js). Shared by the Pilella sites: colours come from each site's variables.
   On the card the text is cut after a few lines with "Leggi tutta"; the full review opens as a card that lifts off the deck. */
.rev-face { gap: 12px; }
.rev-text { position: relative; flex: 1 1 auto; min-height: 0; margin: 0; overflow: hidden; font: 400 15px/1.62 var(--sans); color: var(--ink); opacity: .86; }
.rev-text::before { content: "“"; display: block; height: 30px; margin: -4px 0 2px; font: 700 64px/1 var(--serif); color: var(--gold); opacity: .55; }
.rev-text p { margin: 0 0 .6em; }
.rev-text.cut::after { content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 3.2em; background: linear-gradient(180deg, transparent, var(--rev-bg, #f3ebdf) 85%); pointer-events: none; }
.rev-more { align-self: flex-start; margin: -2px 0 0; padding: 7px 14px; border: 0; border-radius: 999px; background: none; font: 500 12px/1 var(--sans); letter-spacing: .12em; text-transform: uppercase; color: var(--gold-hi);
  box-shadow: inset 0 0 0 1px currentColor; cursor: pointer; transition: background .3s, color .3s, transform .3s var(--spring); }
.rev-more:hover { background: var(--gold-hi); color: var(--surface, #fff); transform: translateY(-1px); }
.rev-more[hidden] { display: none; }

/* the full review */
.rev-read { position: fixed; z-index: 260; inset: 0; display: grid; place-items: center; padding: 24px; }
.rev-read[hidden] { display: none; }
.rev-read-back { position: absolute; inset: 0; background: rgba(20, 15, 10, .55); -webkit-backdrop-filter: blur(10px) saturate(1.1); backdrop-filter: blur(10px) saturate(1.1); }
.rev-read-card { position: relative; display: flex; flex-direction: column; gap: 14px; width: min(620px, 100%); max-height: min(84vh, 760px); padding: clamp(28px, 4vw, 44px); border-radius: 34px; overflow: auto;
  background: var(--rev-bg-full, linear-gradient(160deg, #f5ede0, #f3ebdf 72%)); box-shadow: 0 60px 120px -30px rgba(0, 0, 0, .55), inset 0 1px 0 rgba(255, 255, 255, .7); }
.rev-read-card .rev-text { overflow: visible; font-size: 16.5px; opacity: .92; }
.rev-read-card .rev-text::after { display: none; }
.rev-read-x { position: absolute; top: 16px; right: 16px; width: 40px; height: 40px; padding: 0; border: 0; border-radius: 50%; background: var(--surface, #fff); color: var(--ink); font-size: 16px; box-shadow: var(--sh-soft); cursor: pointer; }
.rev-open { overflow: hidden; }
/* in the reading column (phones) and in the plain layout the card grows with its content, so the text has its own limit */
.rev-text { max-height: var(--rev-lines, 11.4em); }
.deck-fan .rev-text { max-height: none; }
.rev-read-card .rev-text { max-height: none; }
