/* Editorial finish: the existing identity, with readable and compact chapters. */
.story-shell > section.editorial-section {
  display:flex !important;
  align-items:center;
  min-height:calc(100svh - 72px);
  height:auto;
  padding:clamp(24px,4vh,48px) clamp(24px,6vw,96px) !important;
  overflow:visible !important;
}
section.editorial-section > .e-shell {
  display:flex !important;
  flex-direction:column;
  width:100%;
  max-width:1180px !important;
  margin:0 auto;
  gap:clamp(16px,2.4vh,26px) !important;
}
/* Replace the previous cast chapter's top-level grid, not its inner media grid. */
#elenco.editorial-section > .e-shell { display:flex !important; }
.e-tag { align-self:flex-start; padding:7px 20px; border:2px solid #0e1a36; border-radius:999px; background:#fedd70; box-shadow:4px 4px 0 #cb1316; color:#0e1a36; font:700 1rem/1.3 Rubik,sans-serif; }
section.editorial-section h2 {
  display:block !important; margin:0; max-width:1050px;
  font:400 clamp(28px,3.4vw,46px)/1.15 'DM Serif Display',serif;
  text-wrap:balance;
}
section.editorial-section h2 span.display-font { display:inline; font:400 clamp(29px,3.6vw,48px)/1.25 Frijole,cursive !important; }
#reto.editorial-section h2 { max-width:none; font-size:clamp(26px,3vw,40px); text-wrap:wrap; }
#reto.editorial-section h2 span.display-font { display:block; max-width:none; margin:18px 0 0; color:#fedd70; font-size:clamp(28px,3vw,38px) !important; }
:is(#decoracion,#recorrido-2).editorial-section h2 { max-width:none; text-wrap:wrap; }
section.editorial-section p, section.editorial-section li { margin:0; max-width:none; font:500 clamp(16px,1.3vw,19px)/1.5 Rubik,sans-serif !important; text-wrap:pretty; }
section.editorial-section p.e-note { font-size:14px !important; line-height:1.5 !important; color:#b8bac0; }
section.editorial-section p.e-slogan { font:italic 400 clamp(22px,2.4vw,30px)/1.4 'DM Serif Display',serif !important; color:#fedd70; }
.e-grid { display:grid; gap:clamp(18px,2vw,28px); align-items:stretch; min-width:0; }
.e-cols-2 { grid-template-columns:repeat(2,minmax(0,1fr)); }
.e-cols-3 { grid-template-columns:repeat(3,minmax(0,1fr)); }
.e-grid > div { display:flex; flex-direction:column; gap:18px; min-width:0; }
.e-card { display:flex; flex-direction:column; gap:12px; min-width:0; padding:clamp(20px,2vw,28px); border:2px solid #0e1a36; border-radius:20px; background:#fff; color:#0e1a36; box-shadow:7px 7px 0 #cb1316; }
section.editorial-section .e-card h3 { margin:0; font:400 clamp(20px,2vw,28px)/1.2 'Bowlby One',sans-serif; color:#cb1316; overflow-wrap:normal; hyphens:none; }
section.editorial-section .e-card p.e-note { color:#465168; }
.e-card strong { color:#0e1a36; }
section.editorial-section .e-card-red { background:#cb1316; color:#fff; border-color:#fff; box-shadow:7px 7px 0 #fedd70; }
section.editorial-section .e-card-red h3 { color:#fedd70; }
section.editorial-section .e-card-red p.e-note { color:#fff; }
section.editorial-section .e-stat h3 { font-size:clamp(36px,4vw,54px); }
.e-card a { margin-top:auto; padding-top:8px; font:500 14px/1.45 Rubik,sans-serif; color:#0e1a36; text-decoration:underline; text-underline-offset:3px; }
.e-card a:hover { color:#b10d13; }
.e-note a, .e-details a { color:#fedd70; text-underline-offset:3px; }
.note-ref { margin-left:.15em; font:700 .65em/0 Rubik,sans-serif; vertical-align:super; white-space:nowrap; }
.note-marker { font-weight:700; white-space:nowrap; }
.e-audience { display:grid; grid-template-columns:1fr 1fr; gap:24px; }
.e-audience strong { display:inline-block; color:#fedd70; margin-bottom:5px; }
.e-list { margin:0; padding-left:1.15em; display:flex; flex-direction:column; gap:12px !important; }
.e-list li::marker { color:#cb1316; }
.e-media { margin:0; min-width:0; align-self:center; width:100%; }
.e-media img, .e-media video { display:block; width:100%; height:auto; max-height:clamp(220px,calc(100svh - 250px),500px); object-fit:contain; border:4px solid #fff; border-radius:18px; background:#000; box-sizing:border-box; }
.e-media video { aspect-ratio:1600 / 905; }
.video-actions { display:flex; align-items:center; flex-wrap:wrap; gap:8px 12px; padding-top:10px; }
.video-play { border:0; border-radius:999px; padding:10px 16px; background:#fedd70; color:#0e1a36; font:600 14px/1.3 Rubik,sans-serif; cursor:pointer; }
.video-play:disabled { cursor:wait; opacity:.65; }
.video-status { font:500 14px/1.4 Rubik,sans-serif; color:#fedd70; }
.e-chips { display:flex; flex-wrap:wrap; gap:12px; }
.e-chips span { font:600 16px/1.2 Rubik,sans-serif; padding:9px 15px; color:#0e1a36; background:#fedd70; border-radius:999px; }
.e-details { border:1px solid #ffffff30; border-radius:14px; padding:14px 18px; }
.e-details summary { cursor:pointer; font:600 16px/1.4 Rubik,sans-serif; color:#fedd70; }
.e-details > div { display:flex; flex-direction:column; gap:18px; padding-top:18px; }
.e-screen-gallery { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:18px; }
.e-screen-gallery > figure { grid-column:span 2; }
.e-screen-gallery > figure:nth-child(4) { grid-column:2 / span 2; }
#pantalla.editorial-section :is(img,video) { width:100%; height:clamp(120px,calc((100svh - 290px)/2),205px) !important; object-fit:contain; }
.e-dynamic-images { display:grid; grid-template-columns:1fr 1fr; gap:24px; }
.e-dynamic-images img { max-height:180px; }
:is(#recorrido-1,#recorrido-2).editorial-section .e-media img { max-height:clamp(140px,calc(100svh - 410px),260px); }
.e-distribution { display:grid; grid-template-columns:1fr 1fr; gap:12px; margin:0; font:500 16px/1.4 Rubik,sans-serif; }
.e-distribution div { padding:10px 0; }
.e-distribution dd { margin:5px 0 0; color:#fedd70; font-weight:700; }
#digital.editorial-section .e-phones { display:grid !important; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px !important; align-items:center; padding:15px 10px 24px; }
#digital.editorial-section .digital-phone { width:100%; background:#0e1a36; border:7px solid #0e1a36; border-radius:26px; overflow:hidden; }
#digital.editorial-section .digital-phone img { display:block; width:100%; height:clamp(220px,38vh,330px); object-fit:contain; }
.e-partner-logo { display:block; max-width:165px; max-height:48px; width:auto; height:48px; align-self:flex-start; object-fit:contain; }
section.editorial-cover { padding:0 !important; }
section.editorial-cover > img { width:100%; height:auto; min-height:0; max-height:calc(100svh - 154px) !important; object-fit:contain; }
section.editorial-cover .cover-caption { display:flex; flex-wrap:wrap; justify-content:center; gap:6px 18px; padding:18px 60px; margin:0; max-width:none; text-align:center; font:600 17px/1.45 Rubik,sans-serif !important; color:#fff; }
.cover-caption span { color:#fedd70; }
section.editorial-cover .cover-decision { color:#fedd70; max-width:900px; margin:auto; }
.editorial-cover .scroll-cue { display:none; }

@media (max-width:1000px) {
  .e-cols-3 { grid-template-columns:repeat(2,minmax(0,1fr)); }
  #estrategia.editorial-section .e-cols-3 { grid-template-columns:1fr; }
}
@media (max-width:760px) {
  .story-shell > section.editorial-section { min-height:0; padding:44px 24px !important; }
  .e-cols-2, .e-cols-3, .e-audience { grid-template-columns:1fr; }
  section.editorial-section h2 { font-size:28px; }
  section.editorial-section h2 span.display-font { display:block; font-size:29px !important; margin-top:5px; }
  .e-card { padding:22px; }
  .e-screen-gallery { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .e-screen-gallery > figure, .e-screen-gallery > figure:nth-child(4) { grid-column:auto; }
  #pantalla.editorial-section :is(img,video) { height:auto !important; aspect-ratio:1600 / 905; }
  .e-dynamic-images { grid-template-columns:1fr; }
  .e-media img { max-height:420px; }
  :is(#recorrido-1,#recorrido-2).editorial-section .e-media img { max-height:300px; }
  section.editorial-cover .cover-caption { padding:16px 24px; font-size:16px !important; }
  section.editorial-cover > img { max-height:calc(100svh - 205px) !important; }
  #digital.editorial-section .digital-phone img { height:240px; }
}
@media (max-width:440px) { .e-screen-gallery { grid-template-columns:1fr; } }
@media (max-height:720px) and (min-width:1024px) {
  .story-shell > section.editorial-section { padding-top:24px !important; padding-bottom:24px !important; }
  section.editorial-section > .e-shell { gap:16px !important; }
  section.editorial-section h2, section.editorial-section h2 span.display-font { font-size:32px !important; }
  .e-card { padding:18px; gap:10px; }
  section.editorial-section .e-card h3 { font-size:22px; }
  section.editorial-section p, section.editorial-section li { font-size:16px !important; }
}

/* Fit only these two long headlines to their real content width. Keep natural
   wrapping as a fallback for enlarged text and smaller screens. */
@media (min-width:1024px) {
  :is(#reto,#decoracion,#recorrido-2).editorial-section > .e-shell { container-type:inline-size; }
  #reto.editorial-section h2 span.display-font {
    font-size:min(38px,3.1cqw) !important;
  }
  #decoracion.editorial-section h2,
  #decoracion.editorial-section h2 span.display-font {
    font-size:min(40px,3.35cqw) !important;
  }
  #recorrido-2.editorial-section h2,
  #recorrido-2.editorial-section h2 span.display-font {
    font-size:min(44px,3.7cqw) !important;
  }
}
