/* Opinions and press coverage: approved local proposal, 28 October 2026. */
.press-strip { max-width:calc(var(--max) + var(--gutter)*2); margin:0 auto; padding:0 var(--gutter) 48px; }
.press-strip-heading { display:flex; align-items:baseline; gap:22px; border-top:1px solid var(--line); padding-top:26px; }
.press-strip-heading .section-label { margin:0; }
.press-strip-heading>span { color:var(--muted); font-size:14px; }
.press-logos { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:24px; margin-top:20px; }
.press-logos a { display:flex; flex-direction:column; align-items:center; justify-content:center; gap:12px; min-width:0; padding:15px 0; text-decoration:none; }
.press-logos img { width:auto; height:37px; max-width:150px; object-fit:contain; filter:grayscale(1); opacity:.8; transition:opacity .2s; }
.press-logos a:hover img { opacity:1; }
.press-logos span { color:var(--muted); font-size:12px; text-align:center; }
.voices { background:#ece5d5; padding:clamp(64px,8vw,108px) max(var(--gutter),calc((100% - var(--max))/2)); }
.voices-heading { max-width:none; margin-bottom:52px; }
.voices-heading h2 { font-size:clamp(38px,4.8vw,62px); max-width:none; text-wrap:pretty; }
.voices-heading>p:last-child { color:var(--muted); margin-top:18px; }
.editorial-quotes { display:grid; grid-template-columns:1.15fr .85fr; gap:60px; align-items:center; padding-bottom:56px; }
.voices blockquote { margin:0; }
.editorial-quote blockquote p { font-family:Alegreya,Georgia,serif; font-size:clamp(30px,3.2vw,44px); line-height:1.18; letter-spacing:-.02em; text-wrap:pretty; }
.editorial-quote em { font-style:normal; color:var(--moss); }
.editorial-quote--lead blockquote p { font-size:clamp(36px,4.3vw,58px); }
.editorial-quote--simmer { padding-left:40px; border-left:1px solid #c9bea7; }
.quote-medium { display:block; margin-bottom:18px; font-size:12px; color:var(--muted); }
.editorial-quote figcaption { margin-top:26px; display:flex; gap:16px; align-items:center; }
.editorial-quote figcaption img { width:56px; height:auto; }
.editorial-quote figcaption div { display:flex; flex-direction:column; gap:4px; }
.editorial-quote figcaption strong { font-size:15px; }
.editorial-quote figcaption a,.editorial-quote figcaption span { font-size:13px; color:var(--muted); }
.editorial-quote figcaption .pending-link { color:#7b5736; font-size:11px; }
.reader-heading { display:flex; align-items:baseline; justify-content:space-between; flex-wrap:wrap; gap:12px 30px; border-top:1px solid #c9bea7; padding-top:36px; margin-bottom:30px; }
.reader-heading h3 { font-size:30px; letter-spacing:-.02em; }
.reader-heading p { font-size:13px; color:var(--muted); }
.reader-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:36px; align-items:start; }
.reader-quote { margin:0; display:flex; flex-direction:column; min-width:0; }
.reader-quote blockquote { font-size:16px; line-height:1.8; }
.reader-quote blockquote strong { font-weight:800; }
.reader-quote figcaption { display:flex; flex-direction:column; margin-top:24px; gap:4px; font-size:13px; }
.reader-quote figcaption>span { font-size:12px; color:var(--muted); }
.reader-quote figcaption a { font-size:12px; margin-top:6px; text-decoration-thickness:1px; }
.review-rating { color:var(--moss); letter-spacing:3px; font-size:14px; margin:0 0 12px; }
.more-voices { margin-top:36px; border-top:1px solid #c9bea7; }
.more-voices summary { width:fit-content; display:flex; gap:20px; align-items:center; font-size:14px; font-weight:800; color:var(--moss); padding:22px 0; cursor:pointer; list-style:none; }
.more-voices summary::-webkit-details-marker { display:none; }
.more-voices .open-label { display:none; }
.more-voices[open] .open-label { display:inline; }
.more-voices[open] .closed-label { display:none; }
.toggle-mark { width:14px; height:14px; position:relative; }
.toggle-mark::before,.toggle-mark::after { content:''; position:absolute; background:currentColor; left:0; top:6px; width:14px; height:1.5px; }
.toggle-mark::after { transform:rotate(90deg); }
.more-voices[open] .toggle-mark::after { transform:rotate(0); }
.reader-grid--more { padding:16px 0 24px; }
.voices-disclaimer { color:var(--muted); font-size:12px; max-width:85ch; margin-top:24px; }
@media(max-width:950px) { .editorial-quotes { gap:32px; } .editorial-quote--simmer { padding-left:28px; } .reader-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:36px; } .reader-grid>.reader-quote:last-child { grid-column:1/-1; max-width:70ch; } }
@media(max-width:600px) {
 .proposal-bar { flex-wrap:wrap; gap:3px 14px; font-size:10px; } .proposal-bar>span { display:none; }
 .press-strip { padding-bottom:28px; } .press-strip-heading { gap:12px; flex-wrap:wrap; } .press-strip-heading>span { font-size:12px; }
 .press-logos { display:flex; overflow-x:auto; scroll-snap-type:x mandatory; gap:26px; padding:8px 0 12px; scrollbar-width:thin; }
 .press-logos a { flex:0 0 155px; scroll-snap-align:start; } .press-logos img { height:30px; max-width:130px; }
 .voices-heading { margin-bottom:36px; } .voices-heading h2 { font-size:38px; }
 .editorial-quotes { grid-template-columns:1fr; gap:32px; padding-bottom:36px; }
 .editorial-quote--lead blockquote p { font-size:40px; } .editorial-quote--simmer { border-left:none; border-top:1px solid #c9bea7; padding:28px 0 0; }
 .editorial-quote--simmer blockquote p { font-size:32px; } .reader-heading { padding-top:28px; } .reader-heading h3 { font-size:29px; }
 .reader-grid { grid-template-columns:1fr; gap:28px; } .reader-grid>.reader-quote:last-child { grid-column:auto; }
 .reader-quote+.reader-quote { border-top:1px solid #cfc4af; padding-top:28px; } .reader-quote figcaption { margin-top:16px; }
}
@media(prefers-reduced-motion:reduce) { .press-logos img { transition:none; } }
@media(max-width:600px) {
 .press-logos a { flex-basis:140px; }
 .press-strip-heading::after { content:'Desplaça per veure’ls tots'; font-size:11px; color:var(--muted); flex-basis:100%; }
}

/* All reviews remain visible: no disclosure or carousel hides the content. */
.reader-grid { row-gap:44px; }
.reader-grid>.reader-quote:nth-child(n+4) { border-top:1px solid #c9bea7; padding-top:28px; }
@media(min-width:601px) and (max-width:950px) { .reader-grid>.reader-quote:last-child { grid-column:auto; max-width:none; } .reader-grid>.reader-quote:nth-child(n+3) { border-top:1px solid #c9bea7; padding-top:28px; } }

.coverage-links { margin-bottom:36px; display:flex; align-items:baseline; flex-wrap:wrap; gap:10px 24px; font-size:14px; }
.coverage-links>p { color:var(--muted); }
.coverage-links ul { list-style:none; margin:0; padding:0; display:flex; align-items:baseline; flex-wrap:wrap; gap:12px 24px; }
.coverage-links small { font-size:10px; color:var(--muted); margin-left:4px; }

/* Section transitions: background changes provide separation; no extra rules. */
.gallery header { border-top:0; }
.devices-section { border-bottom:0; margin-bottom:0; padding-bottom:var(--section); }
.voices + .faq { padding-top:var(--section); }

/* A/B local: actual publication logos, no reconstructed wordmarks. */
.coverage-links--logos { display:block; margin-top:4px; margin-bottom:42px; }
.coverage-links--logos>p { margin-bottom:22px; }
.coverage-links--logos ul { display:flex; flex-wrap:wrap; align-items:center; gap:22px 30px; }
.coverage-links--logos li { flex:0 0 130px; }
.coverage-links--logos a { min-height:70px; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:8px; text-decoration:none; border-radius:3px; }
.coverage-links--logos img { width:auto; height:auto; max-height:32px; max-width:130px; object-fit:contain; transition:opacity .15s; }
.coverage-links--logos a:hover img { opacity:.7; }
.coverage-links--logos a span { font-size:10px; line-height:1.3; text-align:center; color:var(--muted); }
.coverage-links--logos a[aria-label^="Un restaurant"] img { max-height:24px; }
@media(max-width:600px) { .coverage-links--logos ul { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px 24px; } .coverage-links--logos img { max-width:115px; max-height:29px; } }
@media(prefers-reduced-motion:reduce) { .coverage-links--logos img { transition:none; } }
/* White master logos need a dark rendering on the light paper background. */
.coverage-links--logos img[src$="timeout.png"],
.coverage-links--logos img[src$="votv.png"],
.coverage-links--logos img[src$="elperiodico.svg"] { filter:brightness(0); opacity:.82; }

/* Consistent editorial links: logo, programme (when relevant), action. */
.coverage-links--logos ul { align-items:stretch; gap:24px; }
.coverage-links--logos li { flex-basis:140px; }
.coverage-links--logos a { height:100%; min-height:126px; justify-content:flex-start; gap:8px; }
.coverage-links--logos a .coverage-logo { height:44px; display:flex; align-items:center; justify-content:center; }
.coverage-links--logos a .coverage-program { display:block; min-height:32px; font-size:12px; line-height:1.35; text-align:center; font-weight:800; color:var(--ink); }
.coverage-links--logos a .coverage-action { margin-top:auto; color:var(--ink); font-size:12px; line-height:1.4; text-decoration:underline; text-underline-offset:4px; }
.coverage-links--logos a[aria-label^="Un restaurant"] img { max-height:32px; }

/* Each publication is compact; actions follow their own content, not a shared baseline. */
.coverage-links--logos ul { align-items:flex-start; row-gap:28px; }
.coverage-links--logos a { height:auto; min-height:0; gap:10px; }
.coverage-links--logos a .coverage-logo { height:auto; min-height:32px; }
.coverage-links--logos a .coverage-program { min-height:0; }
.coverage-links--logos a .coverage-program[aria-hidden="true"] { display:none; }
.coverage-links--logos a .coverage-action { margin-top:0; }
