/* SESPIN LAB / Cortocircuito. Page-local editorial composition. */
.cc-article { --cc-ink:#12323b; --cc-night:#071a24; --cc-gold:#eac27c; --cc-paper:#f2f3ee; }
.cc-article .cc-story { background:var(--cc-paper); color:var(--cc-ink); }
.cc-story .cc-wrap { width:min(1280px,90%); margin-inline:auto; }
.cc-story p { margin:0 0 1.2em; }
.cc-story a { text-underline-offset:.25em; }
.cc-story .cc-kicker { font-size:.7rem; letter-spacing:.16em; font-weight:800; text-transform:uppercase; line-height:1.5; }
.cc-story .cc-hero { background:var(--cc-night); color:#fff; padding:clamp(56px,7vw,110px) 0 0; }
.cc-story .cc-hero-grid { display:grid; grid-template-columns:1fr 1.05fr; gap:clamp(32px,4.5vw,72px); align-items:center; }
.cc-story .cc-hero .cc-kicker { color:var(--cc-gold); margin-bottom:28px; }
body.cc-article .cc-story h1 { font-size:clamp(2.65rem,4.5vw,4.8rem)!important; line-height:1.04!important; letter-spacing:-.055em!important; max-width:17ch; margin:0 0 30px; }
.cc-story .cc-question { font-size:clamp(1.1rem,1.6vw,1.4rem); max-width:37ch; color:#d9e8e8; line-height:1.5; }
.cc-story .cc-text-link { display:inline-flex; gap:16px; align-items:center; font-weight:700; font-size:.9rem; color:inherit; }
.cc-story .cc-hero .cc-text-link { color:var(--cc-gold); margin-top:8px; }
.cc-story .cc-media { min-width:0; margin:0; background:#102d36; border:1px solid #d3e0dc30; box-shadow:14px 14px 0 #eac27c21; }
.cc-story .cc-media-label { padding:16px 20px; display:flex; align-items:center; justify-content:space-between; gap:16px; font-size:.65rem; line-height:1.45; letter-spacing:.08em; text-transform:uppercase; color:#dce9e6; }
.cc-story .cc-media-label span:last-child { color:var(--cc-gold); white-space:nowrap; }
.cc-story .cc-media video { display:block; width:100%; height:auto; aspect-ratio:768/426; background:#0b2029; }
.cc-story .cc-media figcaption { padding:18px 20px; color:#c4d6d5; font-size:.75rem; line-height:1.6; }
.cc-story .cc-media figcaption a { color:var(--cc-gold); white-space:nowrap; }
.cc-story .cc-reading-nav { display:grid; grid-template-columns:repeat(5,1fr); margin-top:clamp(56px,7vw,100px); border-top:1px solid #ffffff2d; }
.cc-story .cc-reading-nav a { display:flex; padding:22px 10px 24px 0; gap:12px; color:var(--cc-gold); font-size:.7rem; text-decoration:none; }
.cc-story .cc-reading-nav span { color:#dce7e5; font-size:.78rem; }
.cc-story .cc-reading-nav a:hover span { text-decoration:underline; text-underline-offset:4px; }
.cc-story .cc-intro,.cc-story .cc-chapter,.cc-story .cc-chapter-grid { display:grid; grid-template-columns:1fr 2fr; gap:clamp(28px,7vw,120px); }
.cc-story .cc-intro { padding-block:clamp(60px,7vw,100px); border-bottom:1px solid #bac9c4; }
.cc-story .cc-intro .cc-prose p { font-size:clamp(1.1rem,1.6vw,1.35rem); line-height:1.7; }
.cc-story .cc-chapter { padding-block:clamp(64px,7vw,110px); }
.cc-story .cc-side .cc-kicker { color:#795821; }
.cc-story .cc-aside { font-size:1.1rem; max-width:23ch; line-height:1.5; color:#527068; }
.cc-story .cc-prose { max-width:48rem; }
body.cc-article .cc-story h2 { font-size:clamp(2rem,3.2vw,3.5rem)!important; line-height:1.09!important; letter-spacing:-.045em!important; margin:0 0 32px; max-width:23ch; }
.cc-story .cc-prose p,.cc-story .cc-prose li { font-size:1.06rem; line-height:1.8; }
.cc-story .cc-prose p:last-child { margin-bottom:0; }
.cc-story .cc-prose ul { margin:26px 0 32px; padding:0; list-style:none; }
.cc-story .cc-prose li { position:relative; padding:18px 0 18px 24px; border-top:1px solid #b9c9c3; }
.cc-story .cc-prose li::before { content:''; width:5px; height:5px; background:#99733b; position:absolute; top:30px; left:0; }
.cc-story .cc-comparison { background:#dfe8e2; padding-block:clamp(48px,6vw,84px); border-block:1px solid #b6c9c0; }
.cc-story .cc-comparison .cc-kicker { color:#795821; }
.cc-story .cc-compare-grid { display:grid; grid-template-columns:1fr 90px 1fr; gap:40px; align-items:center; padding-block:20px 26px; }
.cc-story .cc-index { font-size:.65rem; letter-spacing:.16em; font-weight:800; color:#4b6a61; }
body.cc-article .cc-story .cc-compare-grid h3 { font-size:clamp(1.5rem,2.5vw,2.7rem); letter-spacing:-.04em!important; line-height:1.15; margin:16px 0; }
.cc-story .cc-compare-grid p { color:#426057; max-width:35ch; margin:0; }
.cc-story .cc-compare-symbol { font-size:5rem; font-weight:400; text-align:center; color:#82622e; }
.cc-story .cc-compare-note { margin:0; padding-top:24px; border-top:1px solid #b4c5ba; max-width:75ch; font-size:.9rem; color:#426057; }
.cc-story .cc-risk-band { padding-block:clamp(64px,7vw,110px); background:#11343c; color:#e7eeea; }
.cc-story .cc-risk-band .cc-kicker { color:var(--cc-gold); }
.cc-story .cc-risk-band h2 { color:#fff; }
.cc-story .cc-risk-band .cc-prose li { border-color:#ffffff28; }
.cc-story .cc-risk-band .cc-prose li::before { background:var(--cc-gold); }
.cc-story .cc-risk-band .cc-prose p:last-child { border-left:2px solid var(--cc-gold); padding-left:22px; font-size:.95rem; color:#c6d8d4; }
.cc-story .cc-small-rule { width:72px; height:3px; margin-top:26px; background:var(--cc-gold); }
.cc-story .cc-norm-band { padding-block:clamp(64px,7vw,110px); background:#e4eae4; }
.cc-story .cc-sources { margin-top:40px; padding:24px 0 0; border-top:1px solid #b7c6bc; }
.cc-story .cc-sources h3 { font-size:.75rem; font-family:var(--sans); letter-spacing:.12em!important; text-transform:uppercase; margin:0 0 14px; }
.cc-story .cc-sources a { display:flex; gap:16px; justify-content:space-between; color:var(--cc-ink); font-size:.85rem; padding:12px 0; border-bottom:1px solid #c6d0c9; text-decoration:none; }
.cc-story .cc-sources a:hover { text-decoration:underline; }
.cc-story .cc-close { padding-block:clamp(64px,8vw,120px) 32px; }
.cc-story .cc-close .cc-kicker { color:#795821; }
body.cc-article .cc-story .cc-close h2 { font-size:clamp(2.4rem,4.8vw,5rem)!important; max-width:23ch; }
.cc-story .cc-close-grid { display:grid; grid-template-columns:1fr 1fr; gap:40px; margin-top:32px; }
.cc-story .cc-close-grid p { max-width:39ch; font-size:1.15rem; }
.cc-story .cc-close-grid>div { display:flex; flex-direction:column; align-items:flex-start; gap:22px; }
.cc-story .cc-button { display:inline-flex; justify-content:space-between; gap:40px; align-items:center; background:var(--cc-night); color:#fff; padding:18px 24px; text-decoration:none; font-size:.9rem; font-weight:800; }
.cc-story .cc-button:hover { background:#17434a; color:#fff; }
.cc-story .cc-next { border-top:1px solid #b7c6bd; display:flex; gap:20px; align-items:center; justify-content:space-between; margin-top:80px; padding-top:26px; font-size:.8rem; }
.cc-story .cc-next a { color:var(--cc-ink); font-weight:700; }
.cc-story section[id] { scroll-margin-top:100px; }
@media(max-width:1000px){ .cc-story .cc-hero-grid{grid-template-columns:1fr;gap:44px}.cc-story .cc-hero-copy{max-width:760px}body.cc-article .cc-story h1{max-width:20ch;font-size:clamp(2.8rem,7vw,4.8rem)!important}.cc-story .cc-question{max-width:48ch}.cc-story .cc-media{max-width:768px}.cc-story .cc-reading-nav{margin-top:60px}.cc-story .cc-intro,.cc-story .cc-chapter,.cc-story .cc-chapter-grid{grid-template-columns:1fr 2.25fr;gap:30px} }
@media(max-width:680px){ .cc-story .cc-wrap{width:calc(100% - 40px)}.cc-story .cc-hero{padding-top:45px}.cc-story .cc-hero .cc-kicker{margin-bottom:22px}body.cc-article .cc-story h1{font-size:2.75rem!important;max-width:15ch;margin-bottom:24px}.cc-story .cc-media{box-shadow:8px 8px 0 #eac27c21}.cc-story .cc-media-label{padding:12px;font-size:.58rem;gap:12px}.cc-story .cc-media-label span:last-child{display:none}.cc-story .cc-media figcaption{padding:14px;font-size:.72rem}.cc-story .cc-reading-nav{display:flex;flex-wrap:wrap;column-gap:20px;margin-top:42px;padding-block:12px}.cc-story .cc-reading-nav a{padding:10px 0}.cc-story .cc-reading-nav span{font-size:.72rem}.cc-story .cc-intro,.cc-story .cc-chapter,.cc-story .cc-chapter-grid{display:block}.cc-story .cc-side{margin-bottom:24px}.cc-story .cc-aside{display:none}.cc-story .cc-prose p,.cc-story .cc-prose li{font-size:1rem;line-height:1.8}.cc-story .cc-intro .cc-prose p{font-size:1.1rem}body.cc-article .cc-story h2{font-size:2.15rem!important}.cc-story .cc-compare-grid{grid-template-columns:1fr;gap:14px}.cc-story .cc-compare-symbol{text-align:left;font-size:2.7rem;line-height:1}.cc-story .cc-compare-grid h3 br{display:none}.cc-story .cc-compare-grid p{max-width:40ch}.cc-story .cc-close-grid{display:block}.cc-story .cc-close-grid>div{margin-top:28px}.cc-story .cc-next{display:block;margin-top:56px}.cc-story .cc-next span{display:block;margin-bottom:14px}.cc-story .cc-next a span{display:inline}.cc-story .cc-button{gap:24px;padding:17px 20px} }
@media(prefers-reduced-motion:reduce){.cc-story *{scroll-behavior:auto!important;transition:none!important}}
/* Isolate this light/dark composition from the inherited all-dark editorial layer. */
body.cc-article #contenido.cc-story { --tinta-media:#3e5c54; --tinta:#12323b; }
body.cc-article #contenido.cc-story>section { box-shadow:none; clip-path:none; --band:transparent; }
body.cc-article #contenido.cc-story>section.cc-hero { padding-top:clamp(56px,7vw,110px)!important; padding-bottom:0!important; }
body.cc-article #contenido.cc-story>section.cc-intro,
body.cc-article #contenido.cc-story>section.cc-chapter,
body.cc-article #contenido.cc-story>section.cc-risk-band,
body.cc-article #contenido.cc-story>section.cc-norm-band { padding-block:clamp(64px,7vw,110px)!important; }
body.cc-article #contenido.cc-story>section.cc-comparison { padding-block:clamp(48px,6vw,84px)!important; }
body.cc-article #contenido.cc-story>section.cc-close { padding-top:clamp(64px,8vw,120px)!important; padding-bottom:32px!important; }
body.cc-article .cc-story :is(h2,h3) { color:#12323b; }
body.cc-article .cc-story .cc-compare-grid h3 { font-size:clamp(1.5rem,2.5vw,2.7rem)!important; }
body.cc-article .cc-story .cc-hero h1 { color:#fff; }
body.cc-article .cc-story .cc-hero .cc-question { color:#d9e8e8; }
body.cc-article .cc-story .cc-prose :is(p,li) { color:#3e5c54; }
body.cc-article .cc-story .cc-risk-band :is(h2,h3) { color:#fff; }
body.cc-article .cc-story .cc-risk-band .cc-prose :is(p,li) { color:#dce8e3; }
body.cc-article .cc-story .cc-risk-band .cc-prose p:last-child { color:#c6d8d4; }
body.cc-article .cc-story :is(.cc-side,.cc-comparison,.cc-close) .cc-kicker { color:#795821!important; }
body.cc-article .cc-story .cc-risk-band .cc-kicker { color:#eac27c!important; }
@media(max-width:680px){body.cc-article #contenido.cc-story>section.cc-hero{padding-top:45px!important}}
/* Preserve the original campaign artwork as a complete, uncropped figure. */
body.cc-article #contenido.cc-story>section.cc-poster-band { background:var(--cc-night); padding-block:clamp(40px,5vw,72px)!important; }
.cc-story .cc-poster { max-width:900px; margin-block:0; border:1px solid #d3e0dc30; background:#102d36; }
.cc-story .cc-poster-view { display:block; }
.cc-story .cc-poster img { display:block; width:100%; height:auto; aspect-ratio:1402/1122; object-fit:contain; }
.cc-story .cc-poster figcaption { padding:18px 20px; color:#c4d6d5; font-size:.8rem; line-height:1.6; }
.cc-story .cc-poster figcaption a { color:var(--cc-gold); }
.cc-story .cc-poster-view:focus-visible { outline:3px solid var(--cc-gold); outline-offset:5px; }

/* A new explanatory drawing links the article to the commercial entry points. */
body.cc-article #contenido.cc-story>section.cc-system-band{padding-block:clamp(44px,6vw,80px)!important;background:#d8e2dc;border-block:1px solid #b6c9c0}
.cc-story .cc-system-grid{display:grid;grid-template-columns:.7fr 1.3fr;gap:clamp(28px,4.5vw,72px);align-items:center}
.cc-story .cc-system-copy .cc-kicker{color:#795821}
body.cc-article .cc-story .cc-system-copy h2{font-size:clamp(2rem,3vw,3.1rem)!important;max-width:17ch}
.cc-story .cc-system-copy p{color:#3e5c54;line-height:1.8;font-size:1rem}
.cc-story .cc-system-copy .cc-text-link{color:#12323b;margin-top:12px}
.cc-story .cc-system-grid figure{margin:0;background:#102d36;border:1px solid #6f8c88;min-width:0;box-shadow:10px 10px 0 #b0c4b8}
.cc-story .cc-system-grid figure>a{display:block}
.cc-story .cc-system-grid img{display:block;width:100%;height:auto;aspect-ratio:1100/760;object-fit:contain}
.cc-story .cc-system-grid figcaption{padding:16px 20px;color:#c4d6d5;font-size:.75rem;line-height:1.7;border-top:1px solid #a8c3b92b}
.cc-story .cc-system-grid figcaption a{color:#eac27c;white-space:nowrap}
.cc-story .cc-system-grid a:focus-visible{outline:3px solid #a07835;outline-offset:4px}
@media(max-width:1000px){.cc-story .cc-system-grid{grid-template-columns:1fr}.cc-story .cc-system-copy{max-width:42rem}body.cc-article .cc-story .cc-system-copy h2{max-width:24ch}.cc-story .cc-system-copy h2 br{display:none}.cc-story .cc-system-grid figure{max-width:850px}}
@media(max-width:680px){.cc-story .cc-system-grid{gap:28px}.cc-story .cc-system-grid figure{box-shadow:6px 6px 0 #b0c4b8}.cc-story .cc-system-grid figcaption{padding:14px;font-size:.72rem}}

.cc-story .cc-system-grid picture{display:block}
@media(max-width:680px){.cc-story .cc-system-grid img{aspect-ratio:600/770}}

.cc-story .cc-poster-view { position:relative; }
.cc-poster-headline { position:absolute; left:5%; right:5%; bottom:6%; padding:.55em .7em; background:rgba(12,35,43,.88); color:white; font-size:clamp(1.2rem,3vw,2.5rem); font-weight:700; }

/* T12: hero starts right under the header (no light strip). */
body.cc-article main.cc-story{padding-top:0!important}

/* Poster figure: balanced proportions, aligned to the article container. */
.cc-story .cc-poster{max-width:none;width:min(1280px,90%)}
.cc-story .cc-poster-view{aspect-ratio:16/8.4;max-height:70vh;max-height:70svh;overflow:hidden;background:#0c1520}
.cc-story .cc-poster img{width:100%;height:100%;aspect-ratio:auto;object-fit:cover;object-position:72% 52%}
.cc-poster-headline{font-size:clamp(1rem,2.1vw,1.85rem)!important;max-width:34ch;left:4%!important;right:auto!important;bottom:5%!important}
@media(max-width:680px){.cc-story .cc-poster{width:calc(100% - 40px)}.cc-story .cc-poster-view{aspect-ratio:4/4.4;max-height:70svh}.cc-story .cc-poster img{object-position:78% 52%}.cc-poster-headline{font-size:1.05rem!important;max-width:none;left:4%!important;right:4%!important}}
.cc-story .cc-poster .cc-poster-view img[src*="cartel"]{object-fit:cover!important;object-position:72% 52%!important}
@media(max-width:680px){.cc-story .cc-poster .cc-poster-view img[src*="cartel"]{object-position:78% 52%!important}}
