/* Reviews and post-content discussion, approved v6 grammar. */
.vlado-world .reviews-collection { margin: 0 5vw; padding: 72px 0 24px; }
.vlado-world .reviews-collection__header { max-width: 760px; margin-bottom: 34px; }
.vlado-world .reviews-collection__header h2 { margin: 12px 0 0; color: #fff; font: 500 clamp(36px, 5vw, 68px)/.95 var(--display); letter-spacing: -.06em; }
.vlado-world .review-grid { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: 24px; }
.vlado-world .review-card { grid-column: span 4; color: #fff; text-decoration: none; }
.vlado-world .review-card:first-child { grid-column: span 7; }
.vlado-world .review-card:nth-child(2) { grid-column: span 5; }
.vlado-world .review-card__media { position: relative; overflow: hidden; aspect-ratio: 16 / 10; border: 1px solid var(--line); background: #11151a; }
.vlado-world .review-card:first-child .review-card__media { aspect-ratio: 16 / 9; }
.vlado-world .review-card__media img { width: 100%; height: 100%; object-fit: cover; transition: transform .3s ease; }
.vlado-world .review-card:hover .review-card__media img { transform: scale(1.02); }
.vlado-world .review-card__media--missing { display: grid; place-items: center; background: linear-gradient(145deg, #15131c, #22202c); }
.vlado-world .review-card__media--missing span { color: #9f98aa; font: 9px var(--mono); letter-spacing: .14em; text-transform: uppercase; }
.vlado-world .review-card__body { padding: 20px 0 30px; border-bottom: 1px solid var(--line); }
.vlado-world .review-card__meta { display: flex; justify-content: space-between; gap: 16px; color: var(--muted); font: 9px var(--mono); letter-spacing: .1em; text-transform: uppercase; }
.vlado-world .review-card__verdict { color: #b99ae8; }
.vlado-world .review-card h3 { margin: 14px 0 8px; font: 500 clamp(27px, 3vw, 42px)/1 var(--display); letter-spacing: -.045em; }
.vlado-world .review-card p { max-width: 52ch; margin: 0; color: #afb6b1; font: 15px/1.65 var(--sans); }
.vlado-world .review-card__context { display: block; margin-top: 16px; color: #8f9692; font: 9px var(--mono); letter-spacing: .1em; text-transform: uppercase; }

.world-detail .review-detail { color: #121516; background: #f0f0ea; }
.world-detail .review-detail__back { display: flex; align-items: center; justify-content: space-between; min-height: 68px; padding: 0 5vw; border-bottom: 1px solid rgb(18 21 22 / 18%); color: #59605c; font: 9px var(--mono); letter-spacing: .1em; text-transform: uppercase; }
.world-detail .review-detail__back a { display: inline-flex; align-items: center; min-height: 44px; gap: 10px; color: #121516; text-decoration: none; }
.world-detail .review-detail__grid { display: grid; grid-template-columns: 150px minmax(0, 760px) minmax(180px, 1fr); gap: clamp(32px, 5vw, 80px); max-width: 1320px; margin: 0 auto; padding: 70px 5vw 110px; }
.world-detail .review-detail__context { display: flex; flex-direction: column; gap: 12px; color: #59605c; font: 9px/1.5 var(--mono); letter-spacing: .1em; text-transform: uppercase; }
.world-detail .review-detail__context div { display: grid; gap: 5px; margin-top: 12px; }
.world-detail .review-detail__context small { font: inherit; }
.world-detail .review-detail__context strong { color: #121516; font: 500 12px/1.4 var(--mono); letter-spacing: .03em; }
.world-detail .review-detail__cover { margin: 0 0 40px; }
.world-detail .review-detail__cover img { display: block; width: 100%; max-height: 480px; object-fit: cover; }
.world-detail .review-detail__missing-media { display: grid; place-items: center; min-height: 240px; margin-bottom: 40px; border: 1px solid rgb(18 21 22 / 22%); background: #e4e4dd; color: #626964; font: 9px var(--mono); letter-spacing: .12em; text-transform: uppercase; }
.world-detail .review-detail__verdict { margin: 0 0 18px; color: #694a8f; font: 10px var(--mono); letter-spacing: .14em; text-transform: uppercase; }
.world-detail .review-detail__content h1 { margin: 0; font: 500 clamp(32px, 4vw, 52px)/1.08 var(--display); letter-spacing: -.075em; }
.world-detail .review-detail__standfirst { max-width: 32ch; margin: 36px 0 54px; color: #3f4542; font: 23px/1.45 Georgia, serif; }
.world-detail .review-detail__content .article__prose { padding: 0; color: #303534; font: 17px/1.85 Georgia, serif; }
.world-detail .review-detail__note { align-self: start; display: grid; gap: 10px; padding-top: 14px; border-top: 2px solid #76569c; color: #59605c; font: 13px/1.6 var(--sans); }
.world-detail .review-detail__note strong { color: #121516; font: 500 16px var(--display); }

.world-detail .discussion-section { max-width: none !important; margin: 0 !important; padding: 72px max(5vw, calc((100vw - 900px) / 2)) 96px; border: 0; background: #e7e7e0; }
.world-detail .discussion-boundary { display: flex; align-items: center; gap: 18px; margin-bottom: 40px; color: #4d5551; font: 9px var(--mono); letter-spacing: .12em; text-transform: uppercase; }
.world-detail .discussion-boundary::before, .world-detail .discussion-boundary::after { content: ""; height: 1px; flex: 1; background: rgb(18 21 22 / 22%); }
.vlado-world .fv1-comment-shell trix-toolbar .trix-button { min-width: 44px !important; min-height: 44px !important; }
.world-detail .discussion-section__header { margin-bottom: 28px; }
.world-detail .discussion-section__header h2 { margin: 10px 0 0; color: #121516; font: 500 clamp(38px, 5vw, 64px)/.95 var(--display); letter-spacing: -.055em; }
.world-detail .discussion-section .fv1-comment-shell { gap: 0; }
.world-detail .discussion-section .comment-form { padding: 22px; border-color: rgb(18 21 22 / 26%); background: transparent; }
.world-detail .discussion-section .comment-form__input:focus-visible,
.world-detail .discussion-section .comment-rich-text:focus-within { border-color: #76569c; outline: 2px solid #76569c; outline-offset: 2px; }
.world-detail .discussion-section [aria-invalid="true"] { border-color: #9a2f22; }
.world-detail .discussion-section trix-toolbar button { min-width: 44px; min-height: 44px; }
.world-detail .comment-form__actions { display: flex; align-items: center; justify-content: space-between; gap: 18px; }
.world-detail .comment-form__actions p { margin: 0; color: #59605c; font: 12px/1.5 var(--sans); }
.world-detail .comment-form__submit:disabled { cursor: wait; opacity: .62; }
.world-detail .comment-section__list { display: flex; flex-direction: column; margin-top: 38px; padding: 0; border-top: 1px solid rgb(18 21 22 / 18%); border-bottom: 0; }
.world-detail .fv1-comment-shell .discussion-comment { display: grid; grid-template-columns: 40px minmax(0, 1fr); gap: 16px; padding: 26px 0; border: 0; border-bottom: 1px solid rgb(18 21 22 / 18%); background: transparent; }
.world-detail .discussion-comment__header { display: flex; justify-content: space-between; gap: 18px; margin-bottom: 12px; }
.world-detail .discussion-comment__header time { color: #666d69; font-size: 9px; letter-spacing: .08em; }
.world-detail .discussion-comment .comment-body { color: #303534; font: 15px/1.7 Georgia, serif; }
.world-detail .discussion-comment__actions { margin-top: 12px; }
.world-detail .discussion-pagination { margin-top: 32px; }
.world-detail .post-detail-return { max-width: 900px; margin: 0 auto; padding: 0 5vw 72px; }

@media (max-width: 900px) {
  .vlado-world .review-card, .vlado-world .review-card:first-child, .vlado-world .review-card:nth-child(2) { grid-column: span 6; }
  .world-detail .review-detail__grid { grid-template-columns: 110px minmax(0, 1fr); }
  .world-detail .review-detail__note { grid-column: 2; }
}

@media (max-width: 640px) {
  .vlado-world .reviews-collection { padding-top: 48px; }
  .vlado-world .review-grid { display: block; }
  .vlado-world .review-card { display: block; margin-bottom: 34px; }
  .world-detail .review-detail__back > span { display: none; }
  .world-detail .review-detail__grid { display: block; padding-top: 42px; padding-bottom: 72px; }
  .world-detail .review-detail__context { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); margin-bottom: 34px; }
  .world-detail .review-detail__context > span, .world-detail .review-detail__context > time { grid-column: span 1; }
  .world-detail .review-detail__context div { margin-top: 4px; }
  .world-detail .review-detail__content h1 { font-size: clamp(30px, 8vw, 38px); }
  .world-detail .review-detail__standfirst { margin: 28px 0 42px; font-size: 20px; }
  .world-detail .review-detail__note { margin-top: 42px; }
  .world-detail .discussion-section { padding: 52px 20px 72px; }
  .world-detail .comment-form__actions, .world-detail .discussion-comment__header { align-items: flex-start; flex-direction: column; }
  .world-detail .comment-form__submit { width: 100%; }
}

@media (prefers-reduced-motion: reduce) {
  .vlado-world .review-card__media img { transition: none; }
}
