/* Shared proof layout for editorial/video roundups. The page keeps the full
   site shell while individual text blocks retain a comfortable reading line. */

.review-roundup-proof .review-article {
  max-width: none;
  padding-top: var(--space-5);
}

.review-roundup-proof .roundup-review-hero {
  align-items: end;
  background:
    radial-gradient(720px 300px at 100% 0, color-mix(in srgb, var(--bf-accent-soft) 84%, transparent), transparent 72%),
    #fff;
  border: 1px solid var(--line);
  border-radius: var(--radius-lg);
  box-shadow: var(--shadow-sm);
  display: grid;
  gap: clamp(28px, 4vw, 58px);
  grid-template-columns: minmax(0, 1.38fr) minmax(300px, .62fr);
  margin: 0 0 var(--space-4);
  overflow: hidden;
  padding: clamp(30px, 3.4vw, 48px);
}

.review-roundup-proof .roundup-review-hero-copy {
  min-width: 0;
}

.review-roundup-proof .roundup-review-hero .r-crumb {
  margin-bottom: var(--space-5);
}

.review-roundup-proof .roundup-review-hero .eyebrow-text {
  display: block;
  margin-bottom: 8px;
}

.review-roundup-proof .roundup-review-hero h1 {
  max-width: 860px;
}

@media (min-width: 761px) {
  .review-roundup-proof .roundup-review-hero h1 > span,
  .review-roundup-proof .roundup-review-hero h1 > strong {
    display: block;
  }
}

.review-roundup-proof .roundup-review-hero .r-meta {
  margin-top: var(--space-4);
}

.review-roundup-proof .roundup-review-hero .lede {
  margin-top: var(--space-5);
  max-width: 850px;
}

.review-roundup-proof .roundup-review-hero-facts {
  align-self: stretch;
  background: rgba(255,255,255,.82);
  border: 1px solid color-mix(in srgb, var(--bf-accent) 22%, var(--line));
  border-radius: var(--radius);
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin: 0;
  overflow: hidden;
}

.review-roundup-proof .roundup-review-hero-facts div {
  align-content: center;
  min-height: 104px;
  padding: 18px;
}

.review-roundup-proof .roundup-review-hero-facts div:nth-child(even) {
  border-left: 1px solid var(--line);
}

.review-roundup-proof .roundup-review-hero-facts div:nth-child(n + 3) {
  border-top: 1px solid var(--line);
}

.review-roundup-proof .roundup-review-hero-facts dt {
  color: var(--bf-accent);
  font-size: var(--type-eyebrow-size);
  font-weight: var(--font-weight-bold);
  letter-spacing: var(--type-eyebrow-tracking);
  line-height: var(--type-eyebrow-line);
  text-transform: uppercase;
}

.review-roundup-proof .roundup-review-hero-facts dd {
  color: var(--ink);
  font-size: 17px;
  font-weight: var(--font-weight-bold);
  line-height: 1.3;
  margin: 7px 0 0;
  overflow-wrap: anywhere;
}

.review-roundup-proof .roundup-disclosure-row {
  align-items: stretch;
  display: grid;
  gap: 12px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin-bottom: var(--space-5);
}

.review-roundup-proof .roundup-disclosure-row .affiliate-note,
.review-roundup-proof .roundup-disclosure-row .article-note {
  height: 100%;
  margin: 0;
}

.review-roundup-proof .roundup-disclosure-row .affiliate-note {
  border-color: color-mix(in srgb, var(--bf-accent) 24%, var(--line));
}

.review-roundup-proof .roundup-disclosure-row .article-note {
  background: #fff;
  padding: 14px 16px;
}

.review-roundup-proof .review-video {
  margin: 0 0 var(--space-5);
}

.review-roundup-proof .roundup-quick-take {
  margin-bottom: var(--space-4);
}

.review-roundup-proof .review-article > .page-actions {
  border-bottom: 1px solid var(--line);
  margin-bottom: var(--space-6);
  padding-bottom: var(--space-5);
}

.review-roundup-proof .r-body {
  padding-top: 0;
}

.review-roundup-proof .roundup-opening-copy {
  background: #fff;
  border: 1px solid var(--line);
  border-radius: var(--radius-lg);
  box-shadow: var(--shadow-sm);
  margin: 0 0 var(--space-6);
  padding: clamp(24px, 3vw, 36px);
}

.review-roundup-proof .roundup-opening-copy .eyebrow-text {
  display: block;
  margin-bottom: 7px;
}

.review-roundup-proof .roundup-opening-copy h2 {
  margin: 0 0 var(--space-4);
}

.review-roundup-proof .roundup-opening-copy p {
  max-width: 1080px;
}

.review-roundup-proof .roundup-opening-media {
  align-items: center;
  display: grid;
  gap: clamp(24px, 4vw, 54px);
  grid-template-columns: minmax(0, 1.2fr) minmax(300px, .8fr);
}

.review-roundup-proof .roundup-opening-media .review-product-photo {
  aspect-ratio: 4 / 3;
  margin: 0;
  min-height: 0;
}

.review-roundup-proof .roundup-opening-media .review-product-photo img {
  height: 100%;
  object-fit: cover;
  width: 100%;
}

.review-roundup-proof .review-detail-section {
  background: #fff;
  border: 1px solid var(--line);
  border-radius: var(--radius-lg);
  box-shadow: var(--shadow-sm);
  margin: 0 0 var(--space-6);
  overflow: hidden;
  padding: clamp(24px, 3vw, 36px);
}

.review-roundup-proof .review-detail-section:first-of-type {
  margin-top: 0;
}

.review-roundup-proof .review-detail-head {
  margin-bottom: var(--space-5);
}

.review-roundup-proof .review-detail-head p {
  background: transparent;
  max-width: 1080px;
}

.review-roundup-proof .review-detail-section > .review-copy,
.review-roundup-proof .review-detail-section > p,
.review-roundup-proof .review-detail-section > .review-clean-list {
  max-width: 1080px;
}

.review-roundup-proof .roundup-featured-picks .review-pick-grid {
  margin-bottom: 0;
}

.review-roundup-proof .roundup-featured-picks .review-pick-grid > .review-pick:last-child:nth-child(odd) {
  grid-column: 1 / -1;
  grid-template-columns: minmax(180px, 260px) minmax(0, 1fr);
}

.review-roundup-proof .review-pick {
  grid-template-columns: minmax(150px, .34fr) minmax(0, .66fr);
  padding: 20px;
}

.review-roundup-proof .review-pick-media {
  aspect-ratio: 4 / 3;
  min-height: 150px;
}

.review-roundup-proof .review-pick-media img {
  height: 100%;
  max-height: 190px;
}

.review-roundup-proof .review-pick-content {
  align-self: center;
}

.review-roundup-proof .review-image-strip {
  margin-top: var(--space-5);
}

.review-roundup-proof .review-image-strip figure {
  grid-template-rows: minmax(250px, 1fr) auto;
}

.review-roundup-proof .review-image-strip img {
  max-height: 390px;
}

.review-roundup-proof .result-stats {
  margin-bottom: var(--space-5);
}

.review-roundup-proof .roundup-support-note {
  background: var(--bf-accent-soft);
  border: 1px solid color-mix(in srgb, var(--bf-accent) 28%, var(--line));
  border-radius: var(--radius);
  margin-top: var(--space-5);
  max-width: 1080px;
  padding: 16px 18px;
}

.review-roundup-proof .roundup-support-note strong {
  display: block;
  margin-bottom: 4px;
}

.review-roundup-proof .roundup-support-note p {
  color: var(--ink-2);
  font-size: var(--type-body-small-size);
  line-height: var(--type-body-small-line);
  margin: 0;
}

.review-roundup-proof .roundup-facts-disclosure {
  background: var(--line-2);
  border: 1px solid var(--line);
  border-radius: var(--radius);
  margin-top: var(--space-5);
  overflow: hidden;
}

.review-roundup-proof .roundup-facts-disclosure > summary {
  align-items: center;
  background: #fff;
  cursor: pointer;
  display: grid;
  gap: 8px 18px;
  grid-template-columns: minmax(0, 1fr) auto auto;
  list-style: none;
  padding: 18px 20px;
}

.review-roundup-proof .roundup-facts-disclosure > summary::-webkit-details-marker {
  display: none;
}

.review-roundup-proof .roundup-facts-disclosure > summary span {
  color: var(--ink-2);
  font-size: var(--type-meta-size);
  font-weight: var(--font-weight-regular);
  line-height: var(--type-meta-line);
  text-align: right;
}

.review-roundup-proof .roundup-facts-disclosure > summary::after {
  align-items: center;
  background: var(--bf-nav-brand);
  border-radius: 50%;
  color: #fff;
  content: "+";
  display: inline-flex;
  font-size: 19px;
  height: 30px;
  justify-content: center;
  line-height: 1;
  width: 30px;
}

.review-roundup-proof .roundup-facts-disclosure[open] > summary::after {
  content: "−";
}

.review-roundup-proof .roundup-facts-disclosure .review-facts-panel {
  border: 0;
  border-radius: 0;
  border-top: 1px solid var(--line);
  margin: 0;
}

.review-roundup-proof .browse-types {
  grid-template-columns: minmax(0, 1fr) minmax(520px, 1.25fr);
  margin-bottom: var(--space-6);
}

@media (max-width: 1040px) {
  .review-roundup-proof .roundup-review-hero {
    align-items: stretch;
    grid-template-columns: 1fr;
  }

  .review-roundup-proof .roundup-review-hero-facts div {
    min-height: 88px;
  }

  .review-roundup-proof .review-pick-grid {
    grid-template-columns: 1fr;
  }

  .review-roundup-proof .roundup-opening-media {
    grid-template-columns: 1fr;
  }

  .review-roundup-proof .browse-types {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 760px) {
  .review-roundup-proof .roundup-disclosure-row {
    grid-template-columns: 1fr;
  }

  .review-roundup-proof .review-article > .page-actions {
    display: grid;
    grid-template-columns: 1fr;
  }

  .review-roundup-proof .review-article > .page-actions .page-action {
    justify-content: center;
    width: 100%;
  }
}

@media (max-width: 600px) {
  .review-roundup-proof .review-article {
    padding-top: var(--space-4);
  }

  .review-roundup-proof .roundup-review-hero {
    gap: var(--space-5);
    padding: 22px;
  }

  .review-roundup-proof .roundup-review-hero-facts {
    grid-template-columns: 1fr;
  }

  .review-roundup-proof .roundup-review-hero-facts div {
    min-height: 0;
    padding: 15px;
  }

  .review-roundup-proof .roundup-review-hero-facts div:nth-child(even) {
    border-left: 0;
  }

  .review-roundup-proof .roundup-review-hero-facts div:nth-child(n + 2) {
    border-top: 1px solid var(--line);
  }

  .review-roundup-proof .review-detail-section,
  .review-roundup-proof .roundup-opening-copy {
    padding: 20px;
  }

  .review-roundup-proof .review-pick {
    grid-template-columns: 1fr;
  }

  .review-roundup-proof .roundup-featured-picks .review-pick-grid > .review-pick:last-child:nth-child(odd) {
    grid-template-columns: 1fr;
  }

  .review-roundup-proof .review-pick-media {
    aspect-ratio: 16 / 9;
  }

  .review-roundup-proof .roundup-facts-disclosure > summary {
    grid-template-columns: minmax(0, 1fr) auto;
    padding: 16px;
  }

  .review-roundup-proof .roundup-facts-disclosure > summary span {
    grid-column: 1;
    grid-row: 2;
    text-align: left;
  }

  .review-roundup-proof .roundup-facts-disclosure > summary::after {
    grid-column: 2;
    grid-row: 1 / span 2;
  }
}
