#review-offer {
  --inset: clamp(20px, 4vw, 36px);
  width: min(470px, calc(100% - 28px));
  max-height: calc(100dvh - 28px);
  margin: auto;
  padding: 0;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  color: var(--ink);
  background: white;
  box-shadow: 0 24px 90px rgb(21 46 56 / 24%);
  overscroll-behavior: contain;
}
#review-offer::backdrop { background: rgb(16 35 43 / 57%); }
.review-offer-card { position: relative; isolation: isolate; padding: 0 var(--inset) 24px; }
.review-offer-card img {
  display: block;
  width: calc(100% + 2 * var(--inset));
  max-width: none;
  height: clamp(138px, 25dvh, 218px);
  margin-inline: calc(-1 * var(--inset));
  padding: 14px var(--inset);
  object-fit: contain;
  background: var(--soft);
  border-bottom: 1px solid var(--line);
}
.review-offer-card h2 { margin: 23px 0 15px; font-size: clamp(1.55rem, 4.8vw, 2rem); text-wrap: balance; }
.review-offer-card ul { display: grid; gap: 9px; list-style: none; margin: 0 0 22px; padding: 0; }
.review-offer-card li { display: flex; align-items: baseline; gap: 10px; font-size: .96rem; line-height: 1.45; }
.review-offer-card li::before {
  content: ''; flex: 0 0 16px; height: 16px; align-self: flex-start; margin-top: 3px; border-radius: 50%;
  background: var(--soft) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='m4 8 2.5 2.5 5-5' fill='none' stroke='%23506828' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain;
}
.review-offer-card a { display:flex; align-items:center; justify-content:space-between; gap:12px; min-height:52px; padding:12px 18px; border-radius:12px; background:var(--ink); color:white; font-weight:700; }
.review-offer-card a::after { content:'↗'; color:var(--lime); font-size:1.2em; }
.review-offer-card a:hover { background:#274551; }
.review-offer-card small { display:block; margin-top:10px; font-size:.78rem; line-height:1.45; color:var(--muted); }
.review-offer-card button { position:absolute; z-index:1; top:10px; right:10px; width:44px; height:44px; padding:0; display:grid; place-items:center; border:1px solid var(--line); border-radius:50%; background:white; color:var(--ink); font:400 25px/1 'DM Sans',sans-serif; }
.review-offer-card button:hover { background:var(--lime); }
.review-offer-card img { height:auto; aspect-ratio:16/9; object-fit:contain; padding:0; background:#f1f2ef; }
@media (max-height:540px) { .review-offer-card img { height:120px; } }

.opt-review .article-meta > a.button.ink {
  grid-column: 1 / -1;
  width: 100%;
  max-width: none;
  background: #ff9a51;
  color: var(--ink);
}
.opt-review .article-meta > a.button.ink:hover {
  background: #fa8837;
}
