/* Gæstebrief 02 · Shawn Kernon – bar-tema. Bygger på samme opbygning som Marks gæstebrief. */
.bar-theme { --amber: #d99a4e; --amber-light: #f2c58a; --espresso: #120c07; }

/* Mørk top med varmt barlys */
.bar-theme .article-hero { color: var(--cream); background: radial-gradient(ellipse 70% 90% at 80% 0%, rgba(217,154,78,.2), rgba(217,154,78,0) 62%), radial-gradient(ellipse 50% 60% at 0% 100%, rgba(213,180,111,.08), transparent 70%), var(--espresso); border-bottom: 0; }
.bar-theme .article-hero .breadcrumbs, .bar-theme .article-hero .breadcrumbs a { color: rgba(242,238,227,.62); }
.bar-theme .article-hero .article-label { color: var(--amber-light); }
.bar-theme .article-hero .article-title { color: var(--cream); }
.bar-theme .article-hero .article-lead { color: rgba(242,238,227,.8); }
.bar-theme .article-hero .article-byline { border-color: rgba(242,238,227,.18); }
.bar-theme .article-hero .author-mini .editorial-author-copy strong { color: var(--cream); }
.bar-theme .article-hero .editorial-author-copy .author-kicker { color: var(--amber-light); }
.bar-theme .article-hero .author-mini span, .bar-theme .article-hero .article-data { color: rgba(242,238,227,.66); }
.bar-theme .article-hero .mobile-toc { border-color: rgba(242,238,227,.2); color: var(--cream); }
.bar-theme .article-hero .mobile-toc a { color: var(--cream); }


/* Barkort (indholdsfortegnelse) */
.bar-theme .toc-list a span { font-family: var(--sans); font-size: 11px; font-weight: 700; letter-spacing: .08em; color: var(--brass); }
.bar-theme .toc-list a { position: relative; }
.bar-theme .toc-list a.active { color: var(--ink); font-weight: 600; }
.bar-theme .toc-list a.active::after { content: ''; position: absolute; left: 30px; right: 0; bottom: -1px; height: 2px; background: linear-gradient(90deg, var(--amber) 0 42%, rgba(217,154,78,.22) 42% 100%); }

/* Forsiden af briefen: Shawn med shakeren + kø-regnestykket */
.shawn-cover { position: relative; height: 560px; overflow: hidden; background: var(--espresso); }
.shawn-cover.article-cover-image > img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: 60% 72%; }
.shawn-cover::after { content: ''; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(18,12,7,.55), rgba(18,12,7,0) 55%), linear-gradient(0deg, rgba(18,12,7,.55), rgba(18,12,7,0) 40%); pointer-events: none; }
.shawn-coverquote { position: absolute; z-index: 2; bottom: 70px; left: max(24px, calc((100% - 1400px) / 2)); width: min(540px, calc(100% - 48px)); margin: 0; padding: 22px; color: var(--cream); background: rgba(18,12,7,.94); border: 1px solid var(--amber); box-sizing: border-box; }
.shawn-cover .cover-caption { z-index: 2; color: rgba(242,238,227,.82); }

/* "Shawn har ordet"-skillelinje */
.shawn-handover { display: flex; align-items: center; gap: 16px; margin: 56px 0 8px; color: var(--brass); font: 700 11px/1 var(--sans); letter-spacing: .16em; text-transform: uppercase; }
.shawn-handover::before, .shawn-handover::after { content: ''; flex: 1; height: 1px; background: var(--rule); }

/* Store citater */
.article-body .shawn-pull { margin: 44px 0; padding: 0; border: 0; font-family: var(--serif); font-size: clamp(32px, 4.2vw, 50px); line-height: 1.08; color: var(--ink); }
.article-body .shawn-pull::before { content: ''; display: block; width: 56px; height: 2px; margin-bottom: 22px; background: var(--amber); }
.shawn-pull cite { display: block; margin-top: 16px; color: var(--muted); font: 700 9px/1.4 var(--sans); font-style: normal; letter-spacing: .12em; text-transform: uppercase; }

/* Kø-beregner */
.shawn-calc { margin: 44px 0; padding: 28px; color: var(--cream); background: var(--espresso); border-top: 2px solid var(--amber); }
.shawn-calc small { color: var(--amber-light); font: 700 10px/1.4 var(--sans); letter-spacing: .14em; text-transform: uppercase; }
.article-body .shawn-calc h3 { margin: 10px 0 18px; color: var(--cream); font-family: var(--serif); font-size: clamp(26px, 3vw, 34px); font-weight: 500; line-height: 1.1; }
.shawn-calc label { display: block; margin-bottom: 8px; color: rgba(242,238,227,.78); font-size: 14px; }
.shawn-calc input[type=range] { width: 100%; accent-color: var(--amber); }
.shawn-calc-out { display: grid; grid-template-columns: auto 1fr; gap: 6px 18px; align-items: baseline; margin-top: 18px; }
.shawn-calc-num { font-family: var(--serif); font-size: clamp(54px, 7vw, 76px); line-height: .9; color: var(--amber-light); }
.article-body .shawn-calc-out p { margin: 0; color: var(--cream); font-size: 15px; line-height: 1.5; }
.shawn-calc-bar { display: flex; flex-wrap: wrap; gap: 5px; margin-top: 18px; }
.shawn-calc-bar i { width: 18px; height: 26px; border-radius: 3px 3px 6px 6px; background: var(--amber); opacity: .9; }
.article-body .shawn-calc-note { margin: 16px 0 0; color: rgba(242,238,227,.64); font-size: 13px; line-height: 1.55; }
.article-body .shawn-calc-note a { color: var(--amber-light); }

/* Tjekliste */
.article-body .shawn-checklist { margin: 26px 0 30px; padding: 0; list-style: none; border-top: 1px solid var(--rule); }
.article-body .shawn-checklist li { position: relative; margin: 0; padding: 16px 0 16px 40px; border-bottom: 1px solid var(--rule); font-family: var(--serif); font-size: 23px; line-height: 1.25; }
.article-body .shawn-checklist li::before { content: ''; position: absolute; left: 4px; top: 21px; width: 16px; height: 16px; border: 1.5px solid var(--amber); border-radius: 50%; }

/* Billeder i teksten */
.shawn-photo { margin: 40px 0; }
.shawn-photo img { display: block; width: 100%; height: auto; }
.shawn-photo figcaption, .shawn-duo figcaption { margin-top: 12px; color: var(--muted); font-size: 13px; line-height: 1.5; }
.shawn-duo { margin: 40px 0; }
.shawn-duo-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.shawn-duo-grid img { display: block; width: 100%; height: 100%; aspect-ratio: 4 / 5; object-fit: cover; }

/* Festivalen: mørkt bånd */
.shawn-festival { position: relative; margin: 70px 0 0; padding: clamp(48px, 7vw, 96px) 0; color: var(--cream); background: var(--espresso); box-shadow: 0 0 0 100vmax var(--espresso); clip-path: inset(0 -100vmax); }
.shawn-festival .article-label { color: var(--amber-light); }
.article-body .shawn-festival h2 { margin: 14px 0 26px; color: var(--cream); }
.article-body .shawn-festival h3 { margin: 40px 0 14px; color: var(--amber-light); font-family: var(--serif); font-size: clamp(26px, 3vw, 34px); font-weight: 500; }
.article-body .shawn-festival p { color: rgba(242,238,227,.86); }
.article-body .shawn-festival .shawn-pull { color: var(--cream); }
.shawn-festival .shawn-pull cite { color: rgba(242,238,227,.6); }
.shawn-festival .shawn-photo figcaption { color: rgba(242,238,227,.6); }

/* Datoen er en teaser: den rigtige dato står ikke i koden */
.shawn-date { display: inline-flex; align-items: baseline; gap: 6px; }
.shawn-date-blur { display: inline-block; padding: 0 2px; filter: blur(6px); user-select: none; -webkit-user-select: none; pointer-events: none; }
.shawn-date-tag { display: inline-block; padding: 3px 8px; border: 1px solid var(--amber); border-radius: 999px; color: var(--brass); font: 700 10px/1.3 var(--sans); letter-spacing: .1em; text-transform: uppercase; white-space: nowrap; transform: translateY(-2px); }

/* Festivalplakaten */
.shawn-poster { margin: 34px 0 0; }
.shawn-poster img { display: block; width: 100%; height: auto; }
.shawn-poster figcaption { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px; margin-top: 14px; color: var(--muted); font-size: 13px; }
.shawn-poster-links { display: flex; gap: 10px; }
.shawn-poster-links a { display: inline-flex; align-items: center; justify-content: center; width: 40px; height: 40px; border: 1px solid #858b7f; border-radius: 50%; color: var(--ink); }
.shawn-poster-links a:hover { border-color: var(--amber); color: var(--brass); }


@media (max-width: 720px) {
  .shawn-cover { height: auto; }
  .shawn-cover.article-cover-image > img { height: 460px; }
  .shawn-cover::after { display: none; }
  .shawn-coverquote { position: static; width: auto; margin: 0; padding: 26px 16px 24px; background: var(--espresso); border-width: 1px 0 0; }
  .shawn-cover .cover-caption { position: static; display: block; padding: 0 16px 18px; background: var(--espresso); }
  .shawn-calc { margin-inline: -16px; padding: 24px 18px; }
  .article-body .shawn-checklist li { font-size: 20px; }
}
@media print { .shawn-calc input { display: none; } }
.article-body .shawn-calc h3, .article-body .shawn-festival h3 { text-transform: none; letter-spacing: -.01em; }
@media (max-width: 760px) { .shawn-pull cite, .shawn-calc small, .shawn-date-tag, .shawn-coverquote-top, .shawn-coverquote cite { font-size: 11px !important; } }
/* Portræt: samme format og størrelse som Marks */
.contributor-card .shawn-contributor-photo { width: 104px; height: 104px; border-radius: 50%; object-fit: cover; align-self: start; }
.article-hero .author-mini img { filter: none; width: 72px; height: 72px; border-radius: 50%; object-fit: cover; }
@media (max-width: 720px) { .contributor-card .shawn-contributor-photo { width: 78px; height: 78px; } }
.shawn-sr { position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; }




/* Forsiden: Shawns citat i en boks, samme opbygning som Marks forside */
.shawn-coverquote-top { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 6px 18px; margin-bottom: 16px; color: var(--amber-light); font: 700 11px/1.5 var(--sans); letter-spacing: .1em; text-transform: uppercase; }
.shawn-coverquote p { margin: 0; font-family: var(--serif); font-size: clamp(24px, 2.4vw, 31px); font-weight: 500; line-height: 1.14; color: var(--cream); }
.shawn-coverquote cite { display: block; margin-top: 14px; color: rgba(242,238,227,.66); font: 700 11px/1.4 var(--sans); font-style: normal; letter-spacing: .12em; text-transform: uppercase; }
.shawn-cover .cover-caption { z-index: 2; }
@media (max-width: 720px) {
  .shawn-cover.article-cover-image > img { height: 300px; object-position: 62% 40%; }
  .shawn-coverquote p { font-size: 25px; }
  .shawn-coverquote-top span:last-child { display: none; }
}

/* Daniels note fra festivalen */
.shawn-danielnote { margin: 36px 0 8px; padding: 22px 24px; border-left: 2px solid var(--gold); background: rgba(242,238,227,.05); }
.shawn-danielnote small { display: block; margin-bottom: 10px; color: var(--gold-light); font: 700 11px/1.4 var(--sans); letter-spacing: .14em; text-transform: uppercase; }
.article-body .shawn-festival .shawn-danielnote p { margin: 0 0 12px; color: rgba(242,238,227,.86); font-size: 16px; line-height: 1.65; }
.article-body .shawn-festival .shawn-danielnote p:last-child { margin-bottom: 0; }
@media (max-width: 720px) { .shawn-danielnote { padding: 18px 16px; } }

/* Den mørke festivalsektion lægger sig over sidenoten i højre spalte, så den svage tekst ikke ses oven på den mørke baggrund */
.shawn-festival { z-index: 2; }
.article-margin-note { transition: opacity .35s ease; }
.article-margin-note.is-over-dark { opacity: 0; pointer-events: none; }
