html:has(.journal-page){background:#171717}.journal-page{background:#171717;color:#f7f7f5;font-family:Montserrat,sans-serif;overflow-x:hidden}.journal-page main{padding-top:110px}.journal-page a{color:inherit}.journal-hero{margin:24px 4vw 0;padding:72px 5vw 80px;border-radius:18px;background:radial-gradient(ellipse at 100% 0,rgba(251,153,51,.26),transparent 65%),#202020}.journal-eyebrow{text-transform:uppercase;letter-spacing:.18em;font:400 1rem monospace;color:#b8b8b8;margin:0 0 24px}.journal-hero h1,.journal-detail h1{font-size:clamp(2.8rem,6.5vw,6.5rem);font-weight:500;line-height:1.04;letter-spacing:-.055em;max-width:1100px;margin:0}.journal-intro{max-width:690px;color:#bcbcbc;line-height:1.8;font-size:1rem;margin-top:30px}.journal-feed{max-width:1440px;margin:auto;padding:64px 5vw 120px}.journal-filters{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:64px}.journal-filters button{font:inherit;font-size:.9rem;border:1px solid #505050;border-radius:100px;color:#c5c5c5;padding:10px 20px;background:transparent;cursor:pointer}.journal-filters button[aria-pressed=true]{background:#f5f5f3;color:#191919;border-color:#f5f5f3}.journal-card{display:grid;grid-template-columns:7fr 5fr;gap:clamp(28px,5vw,80px);align-items:center;padding-top:70px;margin-top:70px;border-top:1px solid #393939}.journal-card[hidden]{display:none}.journal-card:nth-child(odd):not(.journal-featured){grid-template-columns:5fr 7fr}.journal-card:nth-child(odd):not(.journal-featured) .journal-image{order:2}.journal-featured{padding:0;margin:0;gap:0;background:#222;border:1px solid #383838;border-radius:10px;overflow:hidden}.journal-featured .journal-copy{padding:clamp(24px,3vw,48px)}.journal-image{display:block;overflow:hidden;border-radius:12px;aspect-ratio:16/10}.journal-featured .journal-image{aspect-ratio:4/3;border-radius:0}.journal-image img{width:100%;height:100%;object-fit:cover;transition:transform .6s}.journal-image:hover img{transform:scale(1.035)}.journal-meta{display:flex;align-items:center;gap:22px;color:#fb9933;text-transform:uppercase;letter-spacing:.1em;font-size:.875rem;margin-bottom:22px}.journal-number{font-size:3.8rem;letter-spacing:-.06em;color:#777;line-height:1}.journal-featured .journal-number{display:none}.journal-copy h2{font-size:clamp(1.65rem,2.7vw,2.5rem);font-weight:500;line-height:1.2;letter-spacing:-.035em;margin:0 0 20px}.journal-copy h2 a{text-decoration:none}.journal-copy p{font-size:1rem;line-height:1.85;color:#bcbcbc}.journal-read{display:inline-flex;gap:18px;align-items:center;text-decoration:none;margin-top:24px;font-size:.95rem}.journal-read:hover,.journal-copy h2 a:hover{color:#fb9933}.journal-page :focus-visible{outline:2px solid #fb9933;outline-offset:5px}.journal-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.journal-detail{max-width:1280px;margin:auto;padding:160px 5vw 100px!important}.journal-detail h1{font-size:clamp(2.5rem,5.5vw,5rem)}.journal-back{display:inline-block;margin:15px 0 60px;text-decoration:none}.journal-detail-image{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;margin:50px 0;border-radius:12px}.journal-text{max-width:760px;margin:0 auto 40px;font-size:1.125rem;line-height:1.9;color:#ccc}.journal-text p+p{margin-top:24px}@media(max-width:700px){.journal-hero{margin:10px 16px 0;padding:46px 24px}.journal-feed{padding:40px 24px 72px}.journal-filters{margin-bottom:32px}.journal-card,.journal-card:nth-child(odd):not(.journal-featured){grid-template-columns:1fr;gap:24px;margin-top:44px;padding-top:44px}.journal-featured{padding:0;margin:0;gap:0}.journal-card:nth-child(odd):not(.journal-featured) .journal-image{order:0}.journal-featured .journal-image{aspect-ratio:3/2}.journal-number{font-size:3rem}.journal-detail{padding-top:125px!important}}@media(prefers-reduced-motion:reduce){.journal-image img{transition:none}}

.journal-single .journal-image{aspect-ratio:auto;background:#222}.journal-single .journal-image img{display:block;width:100%;height:auto;object-fit:contain}.journal-single .journal-image:hover img{transform:none}

/* Match the homepage header typography without changing the editorial content. */
.journal-page .modern-header {
  --font-primary: "Montserrat", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
  font-family: var(--font-primary);
  font-weight: 400;
  line-height: 1.6;
}
.journal-page .modern-header :where(a, span, button) {
  font-family: var(--font-primary) !important;
  font-weight: 400 !important;
}

/* Use the homepage footer typography and container spacing. */
.journal-page .site-footer {
  --font-primary: "Montserrat", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
  font-family: var(--font-primary);
  font-weight: 400;
}
.journal-page .site-footer :where(h4, p, a, li, span, button) {
  font-family: var(--font-primary) !important;
  font-weight: 400 !important;
}
.journal-page .site-footer .container {
  padding-left: clamp(20px, 4vw, 46px);
  padding-right: clamp(20px, 4vw, 46px);
}

/* Journal index — supplied editorial mockup. */
.journal-page { background: #121212; }
.journal-page main.journal-index { padding-top: 0; }
.journal-index { max-width: 1600px; margin: 0 auto; }
.journal-index .journal-hero {
  position: relative; isolation: isolate; overflow: hidden;
  min-height: 380px; margin: 8px 4vw 0; padding: 58px 4.4vw 64px;
  border-radius: 13px; background: #202020;
}
.journal-hero-photo {
  position: absolute; z-index: 0; top: 0; right: 0;
  width: auto; max-width: none; height: 100%; object-fit: contain;
  -webkit-mask-image: linear-gradient(90deg, transparent 0%, rgba(0,0,0,.15) 10%, rgba(0,0,0,.6) 25%, #000 44%);
  mask-image: linear-gradient(90deg, transparent 0%, rgba(0,0,0,.15) 10%, rgba(0,0,0,.6) 25%, #000 44%);
}
.journal-index .journal-hero::before {
  content: ''; position: absolute; inset: 0; z-index: 1; pointer-events: none;
  background: linear-gradient(90deg, #202020 0%, rgba(32,32,32,.92) 33%, rgba(32,32,32,.28) 55%, transparent 73%);
}
.journal-hero-content { position: relative; z-index: 2; max-width: 780px; }
.journal-index .journal-eyebrow { font-family: inherit; font-size: .875rem; margin-bottom: 20px; }
.journal-index .journal-hero h1 { font-size: clamp(2.6rem,5.2vw,5rem); letter-spacing: -.045em; line-height: 1.1; font-weight: 400; }
.journal-index .journal-intro { max-width: 610px; margin-top: 28px; line-height: 1.5; color: #d0cecb; }
.journal-signature { position: absolute; z-index: 2; right: 24px; bottom: 23px; padding: 12px 14px; background: #1a1a1ae8; text-transform: uppercase; letter-spacing: .18em; font-size: .65rem; line-height: 1.45; border-bottom: 1px solid #777; }
.journal-index .journal-feed { max-width: none; padding: 32px 4vw 96px; }
.journal-index .journal-filters { justify-content: flex-end; gap: 20px; margin-bottom: 26px; }
.journal-index .journal-filters button { border: 0; border-bottom: 2px solid transparent; border-radius: 0; padding: 12px 20px; font-size: .9rem; color: #ccc; background: none; }
.journal-index .journal-filters button[aria-pressed=true] { border-bottom-color: #fb9933; color: #fff; }
.journal-index .journal-single { grid-template-columns: 58fr 42fr; border: 1px solid #343434; border-radius: 9px; background: linear-gradient(110deg,#222,#1c1c1c); margin: 0; padding: 0; gap: 0; }
.journal-index .journal-single .journal-image { height: 470px; aspect-ratio: auto; border-radius: 0; background: #292622; }
.journal-index .journal-single .journal-image img { width: 100%; height: 100%; object-fit: contain; }
.journal-index .journal-single .journal-copy { padding: clamp(26px,3vw,48px); }
.journal-index .journal-meta { font-size: .75rem; letter-spacing: .16em; margin-bottom: 12px; }
.journal-index .journal-copy h2 { font-size: clamp(1.7rem,2.6vw,2.8rem); font-weight: 400; letter-spacing: -.035em; }
.journal-index .journal-copy p { line-height: 1.6; color: #ccc; }
.journal-pending { display: inline-flex; align-items: center; gap: 20px; margin-top: 30px; padding: 12px 24px; border: 1px solid #fb9933; border-radius: 999px; font-size: .875rem; color: #ccc; }
.journal-pending span { color: #fb9933; font-size: 1.2rem; }
@media (max-width: 700px) {
  .journal-index .journal-hero { margin: 8px 20px 0; padding: 42px 26px 64px; min-height: 360px; }
  .journal-hero-photo { width: auto; opacity: .48; }
  .journal-index .journal-hero::before { background: linear-gradient(90deg,rgba(35,33,31,.92),rgba(35,33,31,.45)); }
  .journal-index .journal-hero h1 { font-size: clamp(2rem,7.6vw,3.2rem); }
  .journal-index .journal-intro { font-size: .95rem; }
  .journal-index .journal-feed { padding: 24px 20px 64px; }
  .journal-index .journal-filters { gap: 8px; }
  .journal-index .journal-single { grid-template-columns: 1fr; }
  .journal-index .journal-single .journal-image { height: auto; }
  .journal-index .journal-single .journal-image img { height: auto; max-height: 500px; object-fit: contain; }
  .journal-index .journal-copy h2 br { display: none; }
  .journal-index .journal-copy h2 { max-width: 340px; }
}

.journal-index .journal-filters { justify-content: flex-start; }
.journal-empty { color: #ccc; padding: 40px 0; font-size: 1rem; }
.journal-index .journal-card[hidden], .journal-empty[hidden] { display: none; }

/* Landscape article cover at every screen size. */
.journal-index .journal-single .journal-image {
  width: 100%;
  height: auto;
  aspect-ratio: 16 / 9;
  align-self: center;
  overflow: hidden;
}
.journal-index .journal-single .journal-image img {
  display: block;
  width: 100%;
  height: 100%;
  max-height: none;
  object-fit: cover;
  object-position: center 48%;
}

.journal-article-link { position: relative; z-index: 1; pointer-events: auto; text-decoration: none; cursor: pointer; }
.journal-article-link:hover { background: rgba(251,153,51,.12); }

.journal-index .journal-copy .journal-article-date { font-size: .8125rem; line-height: 1.5; color: #aaa; margin-top: 20px; margin-bottom: 0; }
