:root{
  --bg:#fbfaf7; --paper:#fff; --ink:#16130f; --muted:#6b6459; --line:#e6e1d8; --soft:#f2eee7;
  --serif:"Newsreader",Georgia,"Times New Roman",serif; --sans:"Inter",system-ui,-apple-system,"Segoe UI",sans-serif;
  --c:#c0392b;
}
@media (prefers-color-scheme:dark){
  :root:not([data-theme="light"]){--bg:#121110;--paper:#1a1917;--ink:#ece8e1;--muted:#a19a8f;--line:#2e2b27;--soft:#24221f;color-scheme:dark}
}
:root[data-theme="dark"]{--bg:#121110;--paper:#1a1917;--ink:#ece8e1;--muted:#a19a8f;--line:#2e2b27;--soft:#24221f;color-scheme:dark}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.55 var(--sans)}
a{color:inherit;text-decoration:none}
a:hover h2,a:hover h3,h2 a:hover,h3 a:hover,.latest a:hover{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
img{display:block;max-width:100%}
.wrap{max-width:1240px;margin:0 auto;padding:0 20px}

/* Capçalera */
.masthead{background:var(--paper);border-bottom:1px solid var(--line)}
.top{display:flex;justify-content:space-between;gap:12px;font-size:12.5px;color:var(--muted);padding-top:10px;padding-bottom:6px;border-bottom:1px solid var(--line)}
.brand{text-align:center;padding-top:18px;padding-bottom:12px}
.logo{font:700 clamp(34px,6vw,58px)/1 var(--serif);letter-spacing:-.02em}
.tagline{margin:6px 0 0;color:var(--muted);font-style:italic;font-family:var(--serif);font-size:17px}
.nav{border-top:3px double var(--line);position:sticky;top:env(safe-area-inset-top,0px);background:var(--paper);z-index:5}
.nav .wrap{display:flex;gap:4px;overflow-x:auto;scrollbar-width:none;justify-content:center}
.nav a{padding:12px 14px;font-weight:600;font-size:14px;white-space:nowrap;border-bottom:3px solid transparent}
.nav a:hover{color:var(--c,var(--ink))}
.nav a[aria-current]{border-bottom-color:var(--c,var(--ink));color:var(--c,var(--ink))}

main{padding-top:26px;padding-bottom:40px}

/* Mitjans (imatges) */
.media{position:relative;display:block;aspect-ratio:16/10;overflow:hidden;background:var(--soft);border-radius:4px}
.media img{width:100%;height:100%;object-fit:cover;transition:transform .4s}
.card:hover .media img,.lead:hover .media img{transform:scale(1.03)}
.media .ph{display:none}
.media.noimg{background:linear-gradient(135deg,color-mix(in srgb,var(--c) 22%,var(--soft)),var(--soft));display:grid;place-items:center}
.media.noimg .ph{display:block;font:700 22px var(--serif);color:var(--c);opacity:.8}
.play{position:absolute;left:10px;bottom:10px;width:38px;height:38px;border-radius:50%;background:rgba(0,0,0,.72);color:#fff;display:grid;place-items:center;font-size:14px;padding-left:3px}

/* Metadades */
.meta{margin:0 0 6px;font-size:12.5px;color:var(--muted);display:flex;flex-wrap:wrap;gap:4px 6px;align-items:center}
.cat{color:var(--c);font-weight:700;text-transform:uppercase;letter-spacing:.06em;font-size:11.5px;margin-right:4px}

/* Targetes */
.card h3{font:600 19px/1.22 var(--serif);margin:0}
.card .body{padding-top:10px}
.sum{color:var(--muted);margin:8px 0 0;font-size:14.5px}

/* Portada */
.front{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr) minmax(0,1fr);gap:28px;padding-bottom:28px;border-bottom:1px solid var(--line)}
.lead{grid-column:1;grid-row:1 / span 2}
.lead .media{aspect-ratio:16/9}
.lead h2{font:700 clamp(26px,3.2vw,38px)/1.12 var(--serif);margin:4px 0 0;letter-spacing:-.01em}
.lead .body{padding-top:14px}
.lead .sum{font-size:17px;color:var(--ink);opacity:.85}
.secondary{grid-column:2;grid-row:1 / span 2;display:flex;flex-direction:column;gap:22px}
.secondary .card h3{font-size:17px}
.latest{grid-column:3;grid-row:1 / span 2;border-left:1px solid var(--line);padding-left:24px}
.kicker{font:700 13px var(--sans);text-transform:uppercase;letter-spacing:.08em;color:#c0392b;margin:0 0 10px}
.latest ol{list-style:none;margin:0;padding:0}
.latest li{padding:10px 0;border-bottom:1px solid var(--line);font:500 15.5px/1.3 var(--serif)}
.latest li:first-child{padding-top:0}
.latest time{display:block;font:600 11.5px var(--sans);color:#c0392b;margin-bottom:2px}
.latest .src{display:block;font:12px var(--sans);color:var(--muted);margin-top:3px}

/* Seccions */
.section{padding-top:30px}
.section>header{display:flex;align-items:baseline;justify-content:space-between;gap:12px;border-top:3px solid var(--c);padding-top:10px;margin-bottom:18px}
.section h2,.section h1{font:700 24px var(--serif);margin:0;color:var(--c)}
.listing h1{font-size:36px}
.more,.count{font-size:13.5px;font-weight:600;color:var(--muted)}
.more:hover{color:var(--c)}
.grid{display:grid;gap:26px 24px}
.grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}
.grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}
.grid.five{grid-template-columns:repeat(4,minmax(0,1fr))}
.grid.five .card:first-child{grid-column:span 2;grid-row:span 2}
.grid.five .card:first-child h3{font-size:26px}
.videos{background:transparent}

/* Article */
.story{max-width:780px;margin:0 auto}
.crumbs{margin:0 0 10px}
.story h1{font:700 clamp(30px,4.4vw,46px)/1.1 var(--serif);margin:0 0 14px;letter-spacing:-.015em}
.byline{color:var(--muted);font-size:14px;margin:0 0 22px;padding-bottom:16px;border-bottom:1px solid var(--line)}
.hero,.player{margin:0 0 24px}
.hero img{width:100%;border-radius:4px}
.player iframe,.player video{width:100%;aspect-ratio:16/9;border:0;border-radius:4px;background:#000}
figcaption{font-size:12.5px;color:var(--muted);margin-top:6px}
.text p{font:400 20px/1.6 var(--serif);margin:0 0 18px}
.cta a{display:inline-block;background:var(--c);color:#fff;font-weight:600;padding:12px 18px;border-radius:4px;margin:6px 0 4px}
.cta a:hover{filter:brightness(1.1)}
.share{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:18px 0 6px;font-size:14px;color:var(--muted)}
.share span{font-weight:600;margin-right:2px}
.sh{display:inline-block;padding:8px 14px;border-radius:999px;font:600 14px/1 var(--sans);color:#fff;border:0;cursor:pointer}
.sh:hover{filter:brightness(1.1)}
.sh.wa{background:#128c7e}.sh.tg{background:#1e88c7}.sh.xx{background:#111}.sh.fb{background:#1877f2}
.sh.cp{background:var(--soft);color:var(--ink);border:1px solid var(--line)}
.note{font-size:13px;color:var(--muted);border-top:1px solid var(--line);padding-top:12px;margin-top:22px}
.empty{padding:60px 0;text-align:center;color:var(--muted)}

/* Peu */
.foot{border-top:1px solid var(--line);background:var(--paper);color:var(--muted);font-size:13.5px;padding:26px 0}
.foot a{text-decoration:underline}

/* Responsiu */
@media (max-width:1020px){
  .front{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  .lead{grid-column:1 / -1;grid-row:auto}
  .secondary{grid-column:1;grid-row:auto}
  .latest{grid-column:2;grid-row:auto}
  .grid.four,.grid.five{grid-template-columns:repeat(2,minmax(0,1fr))}
  .grid.three{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:640px){
  .wrap{padding:0 16px}
  .front{grid-template-columns:1fr}
  .secondary,.latest{grid-column:1}
  .latest{border-left:0;padding-left:0}
  .grid.three,.grid.four,.grid.five{grid-template-columns:1fr}
  .grid.five .card:first-child{grid-column:auto;grid-row:auto}
  .nav .wrap{justify-content:flex-start}
  .top .upd{display:none}
  .text p{font-size:18px}
}

/* Pàgines legals */
.legal .prose{font-size:16.5px;line-height:1.7}
.legal .prose h2{font:700 22px var(--serif);margin:28px 0 8px}
.legal .prose p,.legal .prose li{max-width:68ch}
.legal .prose a{text-decoration:underline;color:var(--c)}
.legal .dades{list-style:none;padding:14px 18px;background:var(--soft);border-radius:4px}
.legal .dades li{padding:3px 0}
.taula{overflow-x:auto}
.taula table{border-collapse:collapse;width:100%;font-size:14.5px}
.taula th,.taula td{border-bottom:1px solid var(--line);padding:8px 10px;text-align:left;vertical-align:top}
.legal-links{margin-top:8px}

/* Logo */
.logo{display:inline-block;line-height:0}
.logo img{height:clamp(42px,7vw,72px);width:auto;max-width:100%}
