/* Editorial extension of the selected design-labor combination. */
.header nav { gap: clamp(18px, 2.5vw, 34px); }
.hero-content { width: min(700px, 63%); }
html[data-type="c"] .hero h1 { font-size: clamp(42px, 4.7vw, 66px); line-height: 1.08; }
.hero-text { max-width: 510px; }
.editorial-section { padding-top: 25px !important; }
.topic-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 18px; }
.topic-card { overflow: hidden; border: 1px solid var(--line); border-radius: 18px; background: var(--surface); transition: transform .2s, box-shadow .2s; }
.topic-card:hover { transform: translateY(-4px); box-shadow: 0 16px 36px #173b3020; }
.topic-card img { width: 100%; aspect-ratio: 10 / 7; object-fit: cover; }
.topic-card > div { padding: 24px; }
.topic-card h3 { margin: 0 0 12px; font-size: 22px; line-height: 1.25; }
.topic-card p, .source-card p, .cosmos-card p, .media-card p { color: #465b57; font-size: 16px; line-height: 1.6; }
.topic-card > div > span { display: block; margin-top: 22px; color: var(--teal); font-size: 16px; font-weight: 700; }
.feature-layout { display: grid; grid-template-columns: 1.45fr .75fr; gap: 18px; }
.feature-layout .post-item:first-child { padding-top: 0; }
.feature-layout .post-item:last-child { border-bottom: 0; padding-bottom: 0; }
.post-item time { font-size: 15px; }
.post-item > span { font-size: 16px; }
.live-panel { display: grid; grid-template-columns: .8fr 1.2fr; gap: clamp(30px, 7vw, 90px); padding: clamp(28px, 4vw, 52px); background: linear-gradient(135deg,#e6eee5,#f3e8db); border: 1px solid #d5dfd5; border-radius: 20px; }
.live-panel h3 { max-width: 360px; margin: 0 0 16px; font-size: clamp(26px, 2.6vw, 36px); line-height: 1.2; }
.live-panel p { max-width: 460px; font-size: 17px; line-height: 1.6; color: #435a53; }
.widget-status, .widget-consent, .archive-count, .media-note { font-size: 15px !important; line-height: 1.55; color: #4d615a !important; }
.widget-feed { display: grid; }
.widget-feed a { display: block; padding: 16px 0; border-bottom: 1px solid #c7d6c9; font-size: 17px; line-height: 1.4; font-weight: 700; }
.widget-feed a:first-child { padding-top: 0; }
.widget-feed time { display: block; margin-bottom: 5px; color: #50645d; font-size: 15px; font-weight: 400; }
.widget-feed a:hover, .source-card a:hover, .cosmos-card a:hover, .media-card a:hover { text-decoration: underline; text-underline-offset: 4px; }
.widget-consent a, .media-note a { text-decoration: underline; }
.widget-refresh, .pagination button { cursor: pointer; }
.topic-detail { display: grid; grid-template-columns: 1.05fr .8fr; gap: clamp(35px, 8vw, 110px); align-items: start; }
.topic-prose { max-width: 700px; }
.topic-prose p, .question-list { font-size: 18px; line-height: 1.75; color: #465b57; }
.topic-prose p.lead { font-size: 21px; line-height: 1.6; color: var(--ink); }
.topic-prose h2, .next-section h2, .archive-intro h2 { margin: 35px 0 16px; font-size: clamp(27px, 3vw, 38px); line-height: 1.2; }
.question-list { padding-left: 24px; }
.question-list li { margin: 10px 0; }
.topic-illustration { width: 100%; border-radius: 20px; }
.source-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.source-card { padding: 24px; border: 1px solid var(--line); border-radius: 16px; background: var(--surface); }
.source-card .source-name { margin: 0 0 14px; color: #4a6860; font-size: 15px; font-weight: 700; }
.source-card h3 { margin: 0; font-size: 20px; line-height: 1.35; }
.source-card p:last-child { margin-bottom: 0; }
.next-section { display: flex; justify-content: space-between; align-items: end; gap: 30px; margin-bottom: 100px; padding: 38px; border-radius: 18px; background: #e7eee7; }
.next-section h2 { margin-top: 0; }
.next-section p { max-width: 660px; margin-bottom: 0; color: #465b57; font-size: 17px; line-height: 1.6; }
.next-section .text-link { flex-shrink: 0; }
.dossier-layout { display: grid; grid-template-columns: minmax(0, 2fr) minmax(260px, .8fr); gap: clamp(40px, 8vw, 110px); align-items: start; }
.longform h2 { margin-top: 45px; }
.longform > p { font-size: 18px; line-height: 1.8; }
.longform > p.lead { color: var(--ink); font-size: 22px; }
.longform blockquote { margin: 40px 0; padding: 14px 0 14px 25px; border-left: 4px solid #b68259; color: #1d5c55; font-size: 23px; font-weight: 600; line-height: 1.5; }
.dossier-aside > img { width: 100%; border-radius: 16px; }
.dossier-aside > h3 { margin: 30px 0 15px; font-size: 22px; }
.dossier-aside .source-card { margin-top: 12px; }
.archive-intro { display: flex; justify-content: space-between; gap: 30px; align-items: end; }
.archive-intro h2 { margin-top: 0; }
.archive-intro p { max-width: 690px; color: #465b57; font-size: 17px; line-height: 1.6; }
.archive-filters { display: grid; grid-template-columns: minmax(0, 1fr) minmax(220px, .65fr) 140px auto; gap: 16px; align-items: end; padding: 28px 0; }
.archive-filters label { display: grid; gap: 9px; font-size: 16px; font-weight: 650; }
.archive-filters input, .archive-filters select { width: 100%; min-height: 50px; padding: 10px 14px; border: 1px solid #9aafa3; border-radius: 9px; background: #fffefa; color: var(--ink); font: inherit; }
.archive-filters button { cursor: pointer; }
.archive-result { display: grid; grid-template-columns: 145px minmax(0, 1fr) 28px; gap: 20px; align-items: start; padding: 24px 0; border-top: 1px solid var(--line); }
.archive-result time { font-size: 15px; color: #4d615a; }
.archive-result h3 { margin: 0 0 8px; font-size: 20px; line-height: 1.35; }
.archive-result p { margin: 0; max-width: 750px; font-size: 16px; line-height: 1.55; color: #4d615a; }
.archive-result:hover h3 { color: var(--teal); }
.pagination { display: flex; align-items: center; gap: 20px; margin-top: 30px; }
.pagination[hidden] { display: none; }
.pagination button:disabled { opacity: .4; cursor: not-allowed; transform: none; }
.article-content { max-width: 860px; overflow-wrap: anywhere; }
.article-content img, .article-content video, .article-content iframe { max-width: 100%; }
.article-content iframe { display: block; width: 100%; min-height: 360px; border: 0; }
.article-content figure { margin-inline: 0; }
.article-content [style] { max-width: 100% !important; }
.article-content h1, .article-content h2 { font-size: clamp(28px, 3.3vw, 42px) !important; line-height: 1.18 !important; }
.article-content h3 { font-size: clamp(23px, 2.4vw, 30px) !important; line-height: 1.25 !important; }
.article-content small, .article-content figcaption { font-size: 16px !important; line-height: 1.5 !important; }
.article-content .article-source { font-size: 16px !important; }
.external-media { display: block; width: 100%; padding: 22px; margin: 18px 0; border: 1px solid #bdd0c2; border-radius: 12px; background: #ecf1e9; color: #1c3835; font-size: 16px; line-height: 1.55; }
.external-media p { margin: 0 0 12px; color: inherit; font-size: 16px; line-height: 1.55; }
.external-media button { min-height: 44px; padding: 9px 16px; border: 1px solid #286c62; border-radius: 999px; background: transparent; color: #174d46; cursor: pointer; }
.external-media a { display: inline-block; margin: 8px 0 0 12px; }
.external-media .media-inner { margin-top: 16px; }
.media-grid, .cosmos-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 18px; }
.media-card, .cosmos-card { min-height: 240px; padding: 32px; border: 1px solid var(--line); border-radius: 18px; background: var(--surface); }
.media-card h2, .cosmos-card h2 { margin: 0 0 15px; font-size: 27px; line-height: 1.2; }
.media-card a, .cosmos-card a { display: inline-block; margin-top: 12px; font-size: 16px; font-weight: 700; color: var(--teal); }
.media-dark { color: #fff; border: 0; background: linear-gradient(135deg,#143b39,#2c6c61); }
.media-dark p, .media-dark a { color: #e5f3e9; }
.media-note { margin-top: 25px; }
.legal-content { max-width: 820px; }
.legal-content > p { font-size: 17px; }
.legal-content h3 { margin-top: 40px; }
.concept-diagram { margin: 38px 0; padding: 24px; border-radius: 16px; background: #e4eee5; }
.concept-diagram figcaption { margin-bottom: 18px; color: #174d46; font-size: 18px; font-weight: 700; }
.concept-diagram > div { display: flex; align-items: stretch; gap: 10px; }
.concept-diagram span { flex: 1; padding: 16px; border: 1px solid #bbd4c4; border-radius: 10px; background: #f9fbf6; color: #24443b; font-size: 16px; font-weight: 600; line-height: 1.4; }
.concept-diagram b { align-self: center; color: #397667; font-size: 21px; }
.concept-diagram p { margin-bottom: 0; color: #51675d; font-size: 15px; }
@media(max-width:1100px) { .topic-grid { grid-template-columns: repeat(2,minmax(0,1fr)); } }
@media(max-width:850px) {
 .hero-content { width: 100%; }
 html[data-type="c"] .hero h1 { font-size: clamp(37px, 7.6vw, 58px); }
 html[data-type="c"] .hero-text { font-size: 18px; }
 .feature-layout, .live-panel, .topic-detail, .dossier-layout { grid-template-columns: 1fr; }
 .topic-detail .topic-illustration { max-width: 560px; }
 .dossier-aside { max-width: 560px; }
 .source-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
 .archive-intro, .next-section { display: block; }
 .next-section { margin-bottom: 65px; }
 .archive-filters { grid-template-columns: minmax(0,1fr) 140px; }
 .archive-filters button { justify-self: start; }
}
@media(max-width:560px) {
 .topic-grid, .source-grid, .media-grid, .cosmos-grid { grid-template-columns: 1fr; }
 .topic-card { display: grid; grid-template-columns: 38% 1fr; }
 .topic-card img { height: 100%; aspect-ratio: auto; object-fit: cover; }
 .topic-card > div { padding: 20px; }
 .topic-card h3 { font-size: 20px; }
 .topic-card p { font-size: 16px; }
 .archive-filters { grid-template-columns: 1fr; }
 .archive-result { grid-template-columns: 1fr 22px; gap: 8px 12px; }
 .archive-result time { grid-column: 1 / -1; }
 .archive-result p { grid-column: 1; }
 .next-section { padding: 28px; }
 .media-card, .cosmos-card { padding: 25px; min-height: auto; }
 .external-media a { display: block; margin-left: 0; }
 .concept-diagram > div { flex-direction: column; }
 .concept-diagram b { transform: rotate(90deg); }
}
