.reviews-page { background: var(--color-projector-cream); }
.reviews-page a:focus-visible { outline: 2px solid var(--color-warm-gold); outline-offset: 2px; }
.reviews-page section { padding-block: var(--space-9); }
.reviews-hero { position: relative; overflow: hidden; padding-block: var(--space-10) var(--space-9) !important; }
.reviews-hero::after { position: absolute; right: 0; bottom: 0; left: 0; height: 14px; background: radial-gradient(circle at 8px 0, transparent 5px, var(--color-projector-cream) 5.5px) 0 0 / 16px 14px repeat-x; content: ""; }
.reviews-hero__grid, .reviews-lens__grid, .reviews-motifs__grid, .reviews-method__grid, .reviews-dossier__grid, .reviews-editorial__grid, .reviews-closing__grid { display: grid; min-width: 0; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: var(--space-5); }
.reviews-hero__copy { grid-column: 1 / span 5; min-width: 0; align-self: start; padding-block-start: var(--space-5); }
.reviews-hero__copy h1 { max-width: 8ch; color: var(--color-paper-white); }
.reviews-hero__intro { width: min(100%, 29rem); color: var(--color-projector-cream); font-size: var(--text-lead); line-height: var(--leading-lead); }
.reviews-feature { position: relative; grid-column: 6 / span 7; min-width: 0; padding-block-end: var(--space-8); }
.reviews-feature__image { display: block; width: 100%; aspect-ratio: 16 / 9; border-radius: 0; }
.reviews-feature__image img { transition: transform var(--transition-media); object-position: center; }
.reviews-feature__caption { position: absolute; z-index: 1; bottom: 0; left: 0; width: min(70%, 31rem); min-width: 0; padding: var(--space-5); background: var(--color-projector-cream); color: var(--color-ink); box-shadow: var(--shadow-elevation); }
.reviews-feature__caption > :last-child { margin-block-end: 0; }
.reviews-feature__caption h2 { font-size: clamp(2rem, 3vw, 2.75rem); }
.reviews-feature__motif { margin-block-end: var(--space-2); color: var(--color-muted-ruby); font-size: var(--text-meta); font-weight: 700; letter-spacing: var(--tracking-meta); text-transform: uppercase; }
.reviews-feature__premise { font-family: var(--font-heading); font-size: var(--text-lead); line-height: 1.2; }
.reviews-feature__verdict { display: flex; min-width: 0; flex-direction: column; gap: var(--space-2); margin-block-start: var(--space-4); padding-block-start: var(--space-4); border-block-start: 1px solid var(--color-warm-gold); }
.reviews-feature__verdict p { margin: 0; }
.reviews-feature__verdict .eyebrow { color: var(--color-muted-ruby); }
.reviews-feature__verdict a, .reviews-text-link, .reviews-dispatches__archive-link, .reviews-closing__collection { display: inline-flex; min-height: 2.75rem; align-items: center; gap: var(--space-2); font-weight: 700; }
.reviews-feature__verdict a { color: var(--color-deep-green); }
@media (hover: hover) and (pointer: fine) { .reviews-feature__image:hover img, .reviews-dispatch__media:hover img, .reviews-pathway__media:hover img { transform: scale(1.02); } }
.reviews-lens__heading { grid-column: 1 / span 4; min-width: 0; }
.reviews-lens__heading h2 { max-width: 9ch; }
.reviews-lens__principles { display: grid; grid-column: 5 / span 8; min-width: 0; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.reviews-principle { min-width: 0; padding-inline: var(--space-4); border-inline-start: 1px solid var(--color-border); }
.reviews-principle span, .reviews-method__criteria span { color: var(--color-warm-gold); font-size: var(--text-meta); font-weight: 700; letter-spacing: var(--tracking-meta); }
.reviews-principle h3 { font-size: var(--text-section); }
.reviews-principle p { width: min(100%, 21.25rem); }
.reviews-dispatches__heading { width: min(100%, 34rem); }
.reviews-dispatches__heading h2 { color: var(--color-paper-white); }
.reviews-dispatches__list { display: flex; min-width: 0; flex-direction: column; gap: var(--space-6); }
.reviews-dispatch { display: grid; min-width: 0; grid-template-columns: minmax(0, 4fr) minmax(0, 8fr); gap: var(--space-5); padding-block: var(--space-6); border-block-start: 1px solid var(--color-border-dark); }
.reviews-dispatch--reverse .reviews-dispatch__media { grid-column: 2; grid-row: 1; }
.reviews-dispatch--reverse .reviews-dispatch__copy { grid-column: 1; grid-row: 1; }
.reviews-dispatch__media { width: 100%; min-width: 0; aspect-ratio: 16 / 9; border-radius: 0; }
.reviews-dispatch__media img { transition: transform var(--transition-media); }
.reviews-dispatch__copy { min-width: 0; }
.reviews-dispatch__copy h3 { color: var(--color-paper-white); }
.reviews-dispatch__copy > p:not(.meta):not(.reviews-dispatch__verdict) { width: min(100%, 28.75rem); color: var(--color-projector-cream); }
.reviews-dispatch__copy .meta span { color: var(--color-warm-gold); }
.reviews-dispatch__verdict { margin-block-end: var(--space-2); color: var(--color-warm-gold); font-family: var(--font-heading); font-size: var(--text-lead); font-style: italic; }
.reviews-dispatches__archive-link { margin-block-start: var(--space-5); color: var(--color-projector-cream); }
.reviews-motifs__context { grid-column: 1 / span 4; min-width: 0; }
.reviews-motifs__context p { width: min(100%, 36.25rem); }
.reviews-motifs__rail { display: grid; grid-column: 5 / span 8; min-width: 0; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--space-3); }
.reviews-motif { display: flex; min-width: 0; min-height: 13rem; flex-direction: column; justify-content: flex-start; gap: var(--space-3); padding: var(--space-4); border: 1px solid var(--color-border); color: var(--color-ink); text-decoration: none; }
.reviews-motif:nth-child(odd) { background: var(--color-deep-green); color: var(--color-projector-cream); border-color: var(--color-deep-green); }
.reviews-motif:last-child { grid-column: 2 / span 2; }
.reviews-motif .meta { margin: 0; color: var(--color-muted-ruby); }
.reviews-motif:nth-child(odd) .meta { color: var(--color-warm-gold); }
.reviews-motif h3, .reviews-motif p { margin: 0; }
.reviews-motif h3 { font-size: var(--text-section); }
.reviews-motif p { width: min(100%, 16.25rem); }
.reviews-motif[aria-current="true"] { border-block-end: 4px solid var(--color-muted-ruby); }
.reviews-index { padding-block-start: var(--space-8) !important; }
.reviews-index__heading { width: min(100%, 34rem); }
.reviews-filters { display: grid; min-width: 0; grid-template-columns: minmax(20rem, 4fr) minmax(0, 8fr); gap: var(--space-4); padding: var(--space-5); }
.reviews-filters label { color: var(--color-projector-cream); }
.reviews-filters__search, .reviews-filters__fields, .reviews-filters__fields > div { min-width: 0; }
.reviews-filters__search { position: relative; grid-column: 1; }
.reviews-filters__fields { display: grid; grid-column: 2; min-width: 0; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--space-3); align-items: end; }
.reviews-filters__clear { align-self: end; background: transparent; color: var(--color-projector-cream); border-color: var(--color-projector-cream); }
.reviews-filters__clear:hover { background: var(--color-projector-cream); color: var(--color-ink); }
.reviews-filters__toggle { display: none; }
.reviews-suggestions { position: absolute; z-index: 3; top: calc(100% + var(--space-1)); left: 0; width: 100%; border: 1px solid var(--color-warm-gold); background: var(--color-paper-white); color: var(--color-ink); }
.reviews-suggestion { display: block; width: 100%; border: 0; border-block-end: 1px solid var(--color-border); background: transparent; color: var(--color-ink); padding: var(--space-3); text-align: left; }
.reviews-suggestion:last-child { border-block-end: 0; }
.reviews-suggestion[aria-selected="true"] { background: var(--color-warm-gold); }
.reviews-results-context { margin-block: var(--space-5); color: var(--color-steel-gray); font-variant-numeric: tabular-nums; }
.reviews-results { display: flex; min-width: 0; flex-direction: column; }
.reviews-result { display: grid; min-width: 0; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: var(--space-5); padding-block: var(--space-6); border-block-start: 1px solid var(--color-border); }
.reviews-result__poster { grid-column: 1 / span 2; width: 100%; min-width: 0; aspect-ratio: 2 / 3; max-height: 16rem; border-color: var(--color-border); }
.reviews-result__poster img { object-position: center; }
.reviews-result__facts { grid-column: 3 / span 2; min-width: 0; }
.reviews-result__facts p { margin-block-end: var(--space-2); }
.reviews-result__facts > p:not(.meta) { font-size: var(--text-utility); font-weight: 700; line-height: var(--leading-utility); }
.reviews-result__verdict { color: var(--color-muted-ruby); font-family: var(--font-heading); font-size: var(--text-lead) !important; font-style: italic; }
.reviews-result__copy { grid-column: 5 / span 8; min-width: 0; }
.reviews-result__copy h3 { font-size: var(--text-subheading); }
.reviews-result__copy > p:not(.reviews-result__excerpt) { width: min(100%, 31.25rem); }
.reviews-result__excerpt { margin-block-end: var(--space-2); color: var(--color-deep-green); font-family: var(--font-heading); font-size: var(--text-lead); }
.reviews-empty { padding: var(--space-5); border: 1px solid var(--color-border); }
.reviews-method__heading { grid-column: 1 / span 3; min-width: 0; }
.reviews-method__heading h2 { max-width: 10ch; }
.reviews-method__criteria { display: grid; grid-column: 4 / span 9; min-width: 0; grid-template-columns: repeat(4, minmax(0, 1fr)); }
.reviews-method__criteria article { min-width: 0; padding-inline: var(--space-4); border-inline-start: 1px solid var(--color-border-dark); }
.reviews-method__criteria h3 { margin-block-start: var(--space-3); font-size: var(--text-section); }
.reviews-method__criteria p { width: min(100%, 18.125rem); color: var(--color-projector-cream); }
.reviews-method__note { grid-column: 4 / span 9; width: min(100%, 40rem); margin: 0; padding-block-start: var(--space-4); border-block-start: 1px solid var(--color-warm-gold); color: var(--color-projector-cream); font-family: var(--font-heading); font-size: var(--text-lead); font-style: italic; }
.reviews-pathways__heading { width: min(100%, 28rem); }
.reviews-pathways__grid { display: grid; min-width: 0; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--space-5); }
.reviews-pathway { display: flex; min-width: 0; flex-direction: column; gap: var(--space-4); }
.reviews-pathway--offset { margin-block-start: var(--space-7); }
.reviews-pathway__media { width: 100%; aspect-ratio: 3 / 4; border-color: var(--color-border); border-radius: 0; }
.reviews-pathway:nth-child(2) .reviews-pathway__media { aspect-ratio: 4 / 3; }
.reviews-pathway__media img { transition: transform var(--transition-media); }
.reviews-pathway > div { display: flex; min-width: 0; flex-direction: column; gap: var(--space-3); }
.reviews-pathway p, .reviews-pathway h3 { margin: 0; }
.reviews-pathway > div > p:not(.eyebrow) { width: min(100%, 18.75rem); }
.reviews-pathway h3 { font-size: var(--text-section); }
.reviews-pathway:hover { border-block-end: 2px solid var(--color-warm-gold); }
.reviews-dossier__heading { grid-column: 1 / span 4; min-width: 0; }
.reviews-dossier__heading h2 { max-width: 11ch; }
.reviews-dossier__resources { display: grid; grid-column: 5 / span 8; min-width: 0; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.reviews-dossier__resources article { min-width: 0; padding-inline: var(--space-4); border-inline-start: 1px solid var(--color-border); }
.reviews-dossier__resources p { width: min(100%, 20.625rem); }
.reviews-dossier__resources h3 { font-size: var(--text-section); }
.reviews-editorial { padding-block: var(--space-8) !important; }
.reviews-editorial__visual { position: relative; grid-column: 1 / span 5; width: 100%; min-width: 0; aspect-ratio: 4 / 3; border-radius: 0; }
.reviews-editorial__visual::after { position: absolute; inset: 0; background: linear-gradient(90deg, var(--color-soft-black), transparent 70%); content: ""; }
.reviews-editorial__quote { position: absolute; z-index: 1; bottom: var(--space-5); left: var(--space-5); width: min(80%, 25.625rem); color: var(--color-projector-cream); }
.reviews-editorial__quote p { margin: 0; font-family: var(--font-heading); font-size: clamp(1.875rem, 3vw, 2.5rem); font-style: italic; line-height: 1.05; }
.reviews-editorial__panel { grid-column: 6 / span 7; min-width: 0; align-self: stretch; padding: var(--space-7); background: var(--color-projector-cream); color: var(--color-ink); }
.reviews-editorial__panel > :last-child { margin-block-end: 0; }
.reviews-editorial__panel p { width: min(100%, 38.75rem); }
.reviews-closing { padding-block: var(--space-7) !important; }
.reviews-closing__grid { align-items: center; border-block-start: 1px solid var(--color-warm-gold); padding-block-start: var(--space-6); }
.reviews-closing__copy { grid-column: 1 / span 6; min-width: 0; }
.reviews-closing__copy h2 { margin-block-end: var(--space-3); }
.reviews-closing__copy p { width: min(100%, 31.25rem); margin: 0; }
.reviews-closing__actions { display: flex; grid-column: 8 / span 5; min-width: 0; flex-wrap: wrap; align-items: center; gap: var(--space-4); }
.reviews-closing__collection { color: var(--color-projector-cream); }
@media (max-width: 68.74rem) { .reviews-hero__copy { grid-column: 1 / span 4; } .reviews-feature { grid-column: 5 / span 8; } .reviews-method__heading { grid-column: 1 / -1; } .reviews-method__criteria { grid-column: 1 / -1; grid-template-columns: repeat(2, minmax(0, 1fr)); } .reviews-method__note { grid-column: 1 / -1; } }
@media (max-width: 63.74rem) { .reviews-motifs__context { grid-column: 1 / -1; } .reviews-motifs__rail { grid-column: 1 / -1; } .reviews-lens__heading { grid-column: 1 / -1; } .reviews-lens__principles { grid-column: 1 / -1; grid-template-columns: repeat(2, minmax(0, 1fr)); } .reviews-principle:last-child { grid-column: 1 / span 2; } .reviews-dossier__heading { grid-column: 1 / -1; } .reviews-dossier__resources { grid-column: 1 / -1; } }
@media (max-width: 56.24rem) { .reviews-dispatch, .reviews-dispatch--reverse { grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); } .reviews-dispatch--reverse .reviews-dispatch__media, .reviews-dispatch--reverse .reviews-dispatch__copy { grid-column: auto; grid-row: auto; } .reviews-editorial__grid { grid-template-columns: 1fr; } .reviews-editorial__visual, .reviews-editorial__panel { grid-column: 1; } .reviews-editorial__panel { padding: var(--space-6); } .reviews-pathways__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--space-4); } .reviews-pathway--offset { margin-block-start: 0; } .reviews-pathway__media, .reviews-pathway:nth-child(2) .reviews-pathway__media { aspect-ratio: 4 / 3; } }
@media (max-width: 63.99rem) { .reviews-result { grid-template-columns: repeat(10, minmax(0, 1fr)); } .reviews-result__poster { grid-column: 1 / span 3; } .reviews-result__facts { display: flex; grid-column: 4 / span 7; gap: var(--space-3); align-items: baseline; } .reviews-result__copy { grid-column: 4 / span 7; } }
@media (max-width: 47.99rem) { .reviews-page section { padding-block: var(--space-7); } .reviews-hero { padding-block-start: var(--space-5) !important; } .reviews-hero__grid, .reviews-lens__grid, .reviews-motifs__grid, .reviews-method__grid, .reviews-dossier__grid, .reviews-closing__grid { grid-template-columns: 1fr; gap: var(--space-5); } .reviews-hero__copy { grid-column: 1; order: 2; padding: 0; } .reviews-feature { grid-column: 1; order: 1; padding-block-end: 0; } .reviews-feature__image { aspect-ratio: 4 / 3; } .reviews-feature__caption { position: static; width: 100%; padding: var(--space-4); box-shadow: none; } .reviews-hero__copy h1 { max-width: none; font-size: clamp(2.75rem, 12vw, 3.25rem); } .reviews-hero__intro { width: 100%; } .reviews-lens__principles, .reviews-method__criteria, .reviews-dossier__resources { grid-column: 1; grid-template-columns: 1fr; } .reviews-principle, .reviews-principle:last-child, .reviews-method__criteria article, .reviews-dossier__resources article { grid-column: 1; padding: var(--space-4) 0; border-inline-start: 0; border-block-start: 1px solid var(--color-border); } .reviews-method__criteria article { border-color: var(--color-border-dark); } .reviews-dispatch { grid-template-columns: 1fr; gap: var(--space-4); } .reviews-dispatch__media { grid-column: 1 !important; grid-row: auto !important; } .reviews-dispatch__copy { grid-column: 1 !important; grid-row: auto !important; } .reviews-dispatch__copy > p:not(.meta):not(.reviews-dispatch__verdict) { width: 100%; } .reviews-motifs__rail { display: flex; overflow-x: auto; grid-column: 1; gap: var(--space-2); padding-block-end: var(--space-2); scroll-snap-type: x mandatory; } .reviews-motif { flex: 0 0 84%; width: 84%; scroll-snap-align: start; } .reviews-motif:last-child { grid-column: auto; } .reviews-filters { grid-template-columns: 1fr; padding: var(--space-4); } .reviews-filters__search { grid-column: 1; } .reviews-filters__toggle { display: block; grid-column: 1; width: 100%; background: transparent; border-color: var(--color-projector-cream); } .reviews-filters__fields { display: none; grid-column: 1; grid-template-columns: 1fr; } .reviews-filters__fields.is-open { display: grid; } .reviews-filters__clear { width: 100%; } .reviews-result { grid-template-columns: 1fr; gap: var(--space-3); } .reviews-result__poster { grid-column: 1; width: min(100%, 13.75rem); max-height: 13.75rem; aspect-ratio: 3 / 4; } .reviews-result__facts, .reviews-result__copy { grid-column: 1; } .reviews-result__facts { flex-wrap: wrap; margin: 0; } .reviews-result__copy > p:not(.reviews-result__excerpt) { width: 100%; } .reviews-method__heading, .reviews-method__note, .reviews-dossier__heading, .reviews-closing__copy, .reviews-closing__actions { grid-column: 1; } .reviews-method__note { width: 90%; } .reviews-pathways__grid { grid-template-columns: 1fr; } .reviews-pathway { gap: var(--space-3); } .reviews-pathway__media, .reviews-pathway:nth-child(2) .reviews-pathway__media { aspect-ratio: 4 / 3; } .reviews-pathway > div > p:not(.eyebrow) { width: 100%; } .reviews-editorial__visual { aspect-ratio: 4 / 3; } .reviews-editorial__panel { padding: var(--space-4); } .reviews-editorial__panel p { width: 100%; } .reviews-closing__actions { flex-direction: column; align-items: stretch; } .reviews-closing__actions .button, .reviews-closing__collection { width: 100%; } }
@media (prefers-reduced-motion: reduce) { .reviews-feature__image img, .reviews-dispatch__media img, .reviews-pathway__media img { transition: none; } }
