/* ============================================================
   Atlas Journal — Theme (v7-Design: FAZ × OMR)
   ============================================================ */
:root{
  --ink:#141314;--bg:#fff;--panel:#f3f4f6;--line:#dfe1e5;--muted:#525862;
  --accent:#11A39B;--accent-d:#0c7f78;--gold:#b4801f;
  --serif:'Source Serif 4',Georgia,serif;--sans:'Source Sans 3',system-ui,sans-serif;
  --r:3px;--max:1280px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:var(--sans);color:var(--ink);background:var(--bg);line-height:1.5;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
img{display:block;width:100%;height:100%;object-fit:cover}
h1,h2,h3,h4{font-family:var(--serif);font-weight:600;line-height:1.08;letter-spacing:-.01em}
.wrap{max-width:var(--max);margin:0 auto;padding:0 30px}
.wrap-narrow{max-width:760px;margin:0 auto;padding:0 30px}

.kick{font-family:var(--sans);font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--accent)}
.kick.light{color:#bff0ec}.kick.ink{color:var(--ink)}
.plus{display:inline-block;font-family:var(--serif);font-weight:700;font-size:11px;line-height:1;padding:3px 7px;border-radius:4px;background:var(--ink);color:#fff;vertical-align:middle}
.plus i{color:var(--accent);font-style:normal}
.btn{font-family:var(--sans);font-weight:700;font-size:14px;padding:12px 24px;border-radius:999px;background:var(--ink);color:#fff;cursor:pointer;border:none;display:inline-block;transition:.15s}
.btn:hover{background:var(--accent)}
.btn.teal{background:var(--accent)}.btn.teal:hover{background:var(--ink)}
.btn.white{background:#fff;color:var(--ink)}.btn.white:hover{background:var(--ink);color:#fff}
.btn.line{background:#fff;color:var(--ink);border:2px solid var(--ink)}
.more{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--accent)}
.reveal{opacity:0;transform:translateY(24px);transition:opacity .6s cubic-bezier(.2,.7,.2,1),transform .6s cubic-bezier(.2,.7,.2,1)}
.reveal.in{opacity:1;transform:none}

/* Lesefortschritt */
#prog{position:fixed;top:0;left:0;height:4px;background:var(--accent);width:0;z-index:90}

/* Header */
.topbar{background:var(--ink);color:#cdd0d4}
.topbar .in{display:flex;justify-content:space-between;align-items:center;height:34px;font-size:12px;font-weight:500}
.topbar a{color:#fff;font-weight:600}
.mast .in{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 0}
.brand-wrap{display:flex;align-items:center;gap:13px}
.brand-text{display:flex;flex-direction:column;line-height:1}
.brand{font-family:var(--serif);font-size:30px;font-weight:700;letter-spacing:-.02em}
.brand .jr{color:var(--accent)}
.brand-sub{font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-top:4px}
.btn-mast{background:var(--accent)}
.ressort{border-top:2px solid var(--ink);border-bottom:1px solid var(--line);position:sticky;top:0;background:#fff;z-index:60}
.ressort .in{display:flex;height:46px;align-items:stretch;overflow-x:auto}
.ressort a{display:flex;align-items:center;padding:0 18px;font-size:13.5px;font-weight:700;white-space:nowrap;border-right:1px solid var(--line)}
.ressort a:first-child{padding-left:0;border-left:none}
.ressort a.on{color:var(--accent);box-shadow:inset 0 -3px 0 var(--accent)}
.ressort a:hover{color:var(--accent)}

section{padding:40px 0}

/* Aufmacher */
.lead{display:grid;grid-template-columns:1fr;gap:18px;border-bottom:2px solid var(--ink);padding:34px 0 36px}
.lead .vis{border-radius:var(--r);overflow:hidden;aspect-ratio:16/8}
.lead h1{font-size:clamp(34px,5vw,60px);margin:12px 0;font-weight:700}
.lead h1 a:hover{color:var(--accent)}
.lead .dek{font-family:var(--serif);font-size:20px;color:#33373c;line-height:1.4;max-width:60ch}
.lead .lead-meta{margin-top:14px;font-size:12.5px;color:var(--muted);font-weight:600}

/* Section head */
.rh{display:flex;align-items:baseline;justify-content:space-between;border-bottom:2px solid var(--ink);padding-bottom:10px;margin-bottom:22px}
.rh h2{font-size:24px;font-weight:700}

/* Card-Grid */
.card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}
.card .ph{border-radius:var(--r);overflow:hidden;aspect-ratio:16/10;margin-bottom:13px;background:var(--panel)}
.card .ph img{transition:.4s}
.card:hover .ph img{transform:scale(1.04)}
.card h3{font-size:20px;font-weight:600;line-height:1.2;margin-bottom:7px}
.card h3 a:hover{color:var(--accent)}
.card p{font-family:var(--sans);font-size:13.5px;color:var(--muted)}
.card .mi{margin-top:10px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}
.card .kick{display:inline-block;margin-bottom:4px}

/* Akzentband */
.band{background:var(--accent);color:#fff;border-radius:var(--r);padding:44px;display:grid;grid-template-columns:1fr auto;gap:30px;align-items:center}
.band h2{font-size:clamp(26px,3.2vw,40px);max-width:24ch;color:#fff;font-weight:700}
.band p{font-family:var(--sans);margin-top:10px;color:#d6f1ef;max-width:50ch;font-weight:500}

/* Newsletter */
.news{border:2px solid var(--ink);border-radius:var(--r);padding:46px;text-align:center}
.news h2{font-size:clamp(28px,3.6vw,44px);max-width:20ch;margin:6px auto 0;font-weight:700}
.news p{font-family:var(--sans);margin:12px auto 0;max-width:46ch;color:var(--muted);font-weight:500}
.nform{display:flex;gap:10px;max-width:440px;margin:22px auto 0;flex-wrap:wrap;justify-content:center}
.nform input{flex:1;min-width:210px;padding:13px 17px;border:2px solid var(--ink);border-radius:999px;font-family:var(--sans);font-size:14px}

/* Artikel */
.article{padding:42px 30px 0}
.bc{font-size:13px;font-weight:600;color:var(--muted);margin-bottom:18px}
.art-kick{margin-bottom:6px}
.article h1{font-size:clamp(36px,5vw,58px);margin:6px 0 14px;font-weight:700}
.article .dek{font-family:var(--serif);font-size:21px;color:#33373c;line-height:1.4}
.meta{display:flex;align-items:center;gap:14px;margin-top:24px;flex-wrap:wrap;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:16px 0}
.avatar{width:44px;height:44px;border-radius:50%;background:var(--accent);display:grid;place-items:center;color:#fff;font-weight:800;font-family:var(--sans);font-size:14px;overflow:hidden}
.meta .who b{font-weight:700;display:block;font-size:15px;font-family:var(--sans)}
.meta .who span{font-size:13px;color:var(--muted)}
.meta .mi{font-size:13px;color:var(--muted);font-weight:600;font-family:var(--sans)}
.meta .sep{color:var(--line)}
.hero-img{max-width:1040px;margin:34px auto;padding:0 30px}
.hero-img .vis{border-radius:var(--r);overflow:hidden;aspect-ratio:16/8}

/* Prose */
.prose{max-width:720px;margin:0 auto;padding:0 30px;font-size:19px;font-family:var(--serif);line-height:1.7}
.prose p{margin:0 0 22px}
.prose h2{font-size:30px;margin:38px 0 14px}
.prose h3{font-size:24px;margin:30px 0 12px}
.prose a{color:var(--accent-d);text-decoration:underline}
.prose img{border-radius:var(--r);margin:24px 0}
.prose blockquote{border-left:4px solid var(--accent);padding:6px 0 6px 24px;margin:32px 0;font-size:24px;font-weight:600;line-height:1.3;font-style:normal}
.prose ul,.prose ol{margin:0 0 22px 24px}
.prose figure{margin:24px 0}.prose figcaption{font-family:var(--sans);font-size:13px;color:var(--muted);text-align:center;margin-top:8px}

/* Paywall */
.gate{max-width:720px;margin:10px auto 0;padding:0 30px}
.paywall{border:2px solid var(--ink);border-radius:var(--r);padding:42px;text-align:center}
.paywall .plus{font-size:14px;padding:5px 10px}
.paywall h3{font-size:28px;max-width:22ch;margin:16px auto 0;font-weight:700}
.paywall p{font-family:var(--sans);margin:12px auto 0;max-width:44ch;color:var(--muted);font-weight:500}
.paywall .actions{display:flex;gap:12px;justify-content:center;margin-top:24px;flex-wrap:wrap}
.paywall .perks{display:flex;gap:20px;justify-content:center;margin-top:22px;flex-wrap:wrap;font-size:12.5px;font-weight:700;color:var(--muted);font-family:var(--sans)}

/* Related */
.related{margin:74px auto 0}
.related .rh{margin-bottom:22px}

/* Tag / Themen */
.thero{padding:48px 0 28px;border-bottom:2px solid var(--ink)}
.thero h1{font-size:clamp(46px,7vw,84px);font-weight:700}
.thero p{font-family:var(--serif);font-size:21px;color:#33373c;max-width:62ch;margin-top:14px;line-height:1.4}
.tag-grid{margin-top:30px}

/* Pagination */
.pagination{display:flex;justify-content:center;gap:18px;align-items:center;padding:46px 0;font-weight:700;font-size:14px}
.pagination a{color:var(--accent)}

/* Footer */
.site-footer{border-top:2px solid var(--ink);padding:38px 0 60px;margin-top:46px}
.fcol{display:flex;justify-content:space-between;flex-wrap:wrap;gap:24px;align-items:center}
.partner{display:flex;align-items:center;gap:14px}
.partner .dot2{width:42px;height:42px;border-radius:var(--r);background:var(--ink);color:#fff;display:grid;place-items:center;font-family:var(--serif);font-weight:700;font-size:20px}
.partner small{color:var(--muted);font-size:12px;display:block;font-weight:500}
.partner b{font-size:15px;font-weight:700;font-family:var(--serif)}
.fnav{display:flex;gap:18px;flex-wrap:wrap;font-size:13px;font-weight:600;color:var(--muted)}
.fnav a:hover{color:var(--accent)}
.copy{font-size:12px;color:var(--muted);margin-top:22px;font-weight:500}

@media(max-width:980px){
  .card-grid{grid-template-columns:1fr 1fr}
  .band{grid-template-columns:1fr}
}
@media(max-width:600px){
  .card-grid{grid-template-columns:1fr}
  .ressort .in{gap:0}
  .band,.paywall,.news{padding:28px}
  .brand{font-size:24px}
}

/* ============================================================
   Koenig / Editor-Inhalte (erforderliche kg-* Klassen)
   ============================================================ */
.prose .kg-card{margin:0 0 24px}
.kg-width-wide{position:relative;width:min(1040px,92vw);left:50%;transform:translateX(-50%)}
.kg-width-full{position:relative;width:100vw;left:50%;transform:translateX(-50%)}
.kg-width-full img{border-radius:0}
.kg-image{margin:0 auto;border-radius:var(--r)}
.kg-image-card img{border-radius:var(--r)}
.kg-gallery-card{margin:24px 0}
.kg-gallery-container{display:flex;flex-direction:column;max-width:1040px;margin:0 auto}
.kg-gallery-row{display:flex;flex-direction:row;justify-content:center;gap:10px}
.kg-gallery-row:not(:first-of-type){margin-top:10px}
.kg-gallery-image img{display:block;width:100%;height:100%;border-radius:var(--r)}
.kg-bookmark-card,.kg-bookmark-card *{box-sizing:border-box}
.kg-bookmark-card{width:100%;margin:24px 0}
.kg-bookmark-container{display:flex;min-height:148px;border:2px solid var(--line);border-radius:var(--r);overflow:hidden;text-decoration:none}
.kg-bookmark-content{flex-grow:1;display:flex;flex-direction:column;padding:20px}
.kg-bookmark-title{font-family:var(--sans);font-weight:700;color:var(--ink)}
.kg-bookmark-description{font-family:var(--sans);font-size:14px;color:var(--muted);margin-top:8px;max-height:44px;overflow:hidden}
.kg-bookmark-metadata{font-family:var(--sans);font-size:13px;color:var(--muted);margin-top:auto;display:flex;align-items:center;gap:8px}
.kg-bookmark-icon{width:20px;height:20px}
.kg-bookmark-thumbnail{position:relative;min-width:33%;max-height:100%}
.kg-bookmark-thumbnail img{width:100%;height:100%;object-fit:cover}
.kg-embed-card{display:flex;flex-direction:column;align-items:center;width:100%;margin:24px 0}
.kg-embed-card iframe{max-width:100%}
.kg-callout-card{display:flex;padding:20px;border-radius:var(--r);gap:12px;margin:24px 0}
.kg-callout-card-grey{background:var(--panel)}
.kg-callout-emoji{font-size:20px}
.kg-button-card{display:flex;margin:24px 0}
.kg-button-card.kg-align-center{justify-content:center}
.kg-btn{display:inline-block;font-family:var(--sans);font-weight:700;padding:12px 24px;border-radius:999px;background:var(--accent);color:#fff;text-decoration:none}
.kg-header-card{padding:56px 28px;text-align:center}
.kg-audio-card,.kg-video-card,.kg-file-card,.kg-product-card,.kg-toggle-card{margin:24px 0}
.kg-toggle-card{border:2px solid var(--line);border-radius:var(--r);padding:20px}
.kg-toggle-heading{font-family:var(--serif);font-weight:600;display:flex;justify-content:space-between;cursor:pointer}
.kg-align-center{text-align:center}
.kg-card-hascaption{display:flex;flex-direction:column;align-items:center}

/* Karte ohne Bild */
.card--noimg .card-body{border-left:3px solid var(--accent);padding-left:16px}
.card--noimg h3{font-size:22px}

/* ===== Rubrik: Podcast ===== */
.phero{background:var(--ink);color:#fff;border-bottom:2px solid var(--ink)}
.phero .in{display:grid;grid-template-columns:240px 1fr;gap:34px;align-items:center;padding:44px 0}
.phero .cover{aspect-ratio:1;border-radius:var(--r);overflow:hidden;background:#222}
.phero .kick{color:#6ee0d8}
.phero h1{color:#fff;font-size:clamp(34px,5vw,56px);margin:8px 0;font-weight:700}
.phero p{color:#c4cdde;font-family:var(--serif);font-size:18px;max-width:54ch;line-height:1.45}
.phero .subs{margin-top:20px}
.ep-list{display:flex;flex-direction:column;margin-top:6px}
.ep{display:grid;grid-template-columns:88px 1fr auto;gap:20px;align-items:center;padding:20px 4px;border-bottom:1px solid var(--line)}
.ep:hover{background:var(--panel)}
.ep .cov{aspect-ratio:1;border-radius:var(--r);overflow:hidden;border:1px solid var(--line);background:var(--panel)}
.ep .n{font-family:var(--sans);font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--accent)}
.ep h3{font-size:21px;font-weight:600;margin:3px 0 5px}.ep:hover h3{color:var(--accent)}
.ep p{font-family:var(--sans);font-size:14px;color:var(--muted);max-width:62ch}
.ep .play{width:44px;height:44px;border-radius:50%;background:var(--ink);color:#fff;display:grid;place-items:center}
.ep:hover .play{background:var(--accent)}
@media(max-width:760px){.phero .in{grid-template-columns:1fr}.phero .cover{max-width:200px}.ep{grid-template-columns:64px 1fr}.ep .play{display:none}}

/* ===== Rubrik: Essays ===== */
.ehead{padding:44px 0 8px;border-bottom:2px solid var(--ink)}
.ehead h1{font-size:clamp(40px,6vw,72px);font-weight:700}
.ehead p{font-family:var(--serif);font-size:20px;color:#33373c;margin-top:10px;max-width:60ch}
.efeat{display:block;padding:28px 0;border-bottom:1px solid var(--line)}
.efeat h2{font-size:clamp(28px,3.4vw,44px);margin:8px 0}.efeat:hover h2{color:var(--accent)}
.efeat p{font-family:var(--sans);color:var(--muted);font-size:16px;max-width:60ch}
.efeat .mi{margin-top:10px;font-family:var(--sans);font-size:12px;font-weight:700;text-transform:uppercase;color:var(--muted)}
.erow{display:flex;justify-content:space-between;gap:28px;align-items:baseline;padding:22px 4px;border-bottom:1px solid var(--line)}
.erow-body{flex:1}
.erow h3{font-size:23px;font-weight:600;margin:4px 0 6px}.erow:hover h3{color:var(--accent)}
.erow p{font-family:var(--sans);font-size:14px;color:var(--muted);max-width:72ch}
.erow .mi{flex:0 0 auto;font-family:var(--sans);font-size:11px;font-weight:700;text-transform:uppercase;color:var(--muted);text-align:right}
@media(max-width:680px){.erow{flex-direction:column;gap:8px}.erow .mi{text-align:left}}
