/* ════════════════════════════════════════════════════════════
   DEEMKEND · article layout (shared by all /journal/*.html)
   ═══════════════════════════════════════════════════════════ */
.art-shell {
  position:relative; z-index:1;
  padding:140px var(--pad) 60px;
  max-width:920px;
  margin:0 auto;
}
.art-eyebrow {
  font-family:var(--fm); font-size:11px;
  letter-spacing:.22em; text-transform:uppercase;
  color:var(--amber); margin-bottom:32px;
  display:inline-block;
  padding:8px 16px;
  border:1px solid rgba(196,138,40,0.35);
  border-radius:100px;
  background:rgba(196,138,40,0.08);
}
.art-title {
  font-family:var(--fd); font-style:italic; font-weight:300;
  font-size:clamp(40px, 7vw, 96px); line-height:.95;
  letter-spacing:-.025em; color:var(--txt);
  padding-bottom:.08em; margin-bottom:24px;
}
.art-title .a { color:var(--amber); }
.art-meta {
  display:flex; gap:24px; flex-wrap:wrap;
  font-family:var(--fm); font-size:10px;
  letter-spacing:.18em; text-transform:uppercase;
  color:var(--muted2); margin-bottom:48px;
  padding-bottom:32px; border-bottom:1px solid var(--glass-b);
}
.art-meta time { color:var(--amber); }

.art-body {
  font-family:var(--fu); font-size:17px; font-weight:400;
  line-height:1.75; color:var(--txt);
}
.art-body p { margin-bottom:24px; color:rgba(240,237,230,0.88); }
.art-body p:first-of-type::first-line {
  font-weight:500; color:var(--txt);
}
.art-body h2 {
  font-family:var(--fd); font-style:italic; font-weight:300;
  font-size:clamp(28px, 3.5vw, 44px); line-height:1.1;
  color:var(--txt); margin:56px 0 20px;
}
.art-body h2 .a { color:var(--amber); }
.art-body h3 {
  font-family:var(--fu); font-weight:500; font-size:18px;
  color:var(--txt); margin:32px 0 12px;
  letter-spacing:.01em;
}
.art-body ul, .art-body ol { margin:0 0 24px 0; padding-left:0; }
.art-body li {
  font-size:16px; line-height:1.7; color:rgba(240,237,230,0.85);
  padding:6px 0 6px 24px; position:relative;
}
.art-body li::before {
  content:'—'; position:absolute; left:0;
  color:var(--amber); opacity:.7;
}
.art-body ol { counter-reset:ol-cnt; }
.art-body ol li::before {
  content:counter(ol-cnt) '.'; counter-increment:ol-cnt;
  color:var(--amber); opacity:.7;
}
.art-body strong { color:var(--txt); font-weight:500; }
.art-body a {
  color:var(--amber);
  border-bottom:1px solid rgba(196,138,40,0.4);
  transition:color .25s, border-color .25s;
}
.art-body a:hover { color:var(--amber-2); border-color:var(--amber-2); }
.art-body blockquote {
  margin:36px 0; padding:28px 32px;
  background:rgba(196,138,40,0.06);
  border-left:3px solid var(--amber);
  border-radius:0 14px 14px 0;
  font-family:var(--fd); font-style:italic;
  font-size:20px; line-height:1.5;
  color:var(--txt);
}
.art-body code {
  font-family:var(--fm); font-size:14px;
  background:rgba(255,255,255,0.05);
  padding:2px 7px;
  border-radius:6px;
  color:var(--amber);
}

.art-price-table {
  margin:36px 0; width:100%;
  border:1px solid var(--glass-b); border-radius:18px; overflow:hidden;
}
.art-pt-row {
  display:grid; grid-template-columns:1.4fr 1fr 1fr;
  padding:22px 26px; border-bottom:1px solid var(--glass-b);
  background:rgba(255,255,255,0.015);
  align-items:center; gap:18px;
}
.art-pt-row:last-child { border-bottom:none; }
.art-pt-row.head {
  background:rgba(196,138,40,0.08);
  font-family:var(--fm); font-size:10px;
  letter-spacing:.16em; text-transform:uppercase; color:var(--amber);
}
.art-pt-name {
  font-family:var(--fd); font-style:italic; font-size:22px; color:var(--txt);
}
.art-pt-price {
  font-family:var(--fm); font-size:13px; color:var(--amber);
  letter-spacing:.04em;
}
.art-pt-hours {
  font-family:var(--fm); font-size:11px; color:var(--muted2);
  letter-spacing:.1em; text-transform:uppercase;
}

.art-cta {
  margin:80px 0 40px; padding:48px 40px;
  background:radial-gradient(ellipse at top left, rgba(196,138,40,0.15) 0%, rgba(8,8,8,0.4) 70%);
  border:1px solid rgba(196,138,40,0.3);
  border-radius:22px;
  text-align:center;
}
.art-cta-t {
  font-family:var(--fd); font-style:italic; font-weight:300;
  font-size:clamp(28px, 4vw, 48px); line-height:1.1;
  color:var(--txt); margin-bottom:18px;
}
.art-cta-t .a { color:var(--amber); }
.art-cta-d {
  font-size:15px; color:var(--muted2);
  margin:0 auto 28px; max-width:560px;
}
.art-cta-btn {
  display:inline-flex; align-items:center; gap:10px;
  padding:14px 28px;
  background:var(--amber); color:#0a0a08;
  border-radius:100px;
  font-family:var(--fm); font-size:11px;
  letter-spacing:.16em; text-transform:uppercase; font-weight:500;
  transition:background .25s;
}
.art-cta-btn:hover { background:var(--amber-2); }

.art-back { margin-top:48px; }
.art-back a {
  font-family:var(--fm); font-size:11px;
  letter-spacing:.18em; text-transform:uppercase;
  color:var(--muted2);
  border-bottom:1px solid var(--glass-b);
  padding-bottom:4px;
  transition:color .25s, border-color .25s;
}
.art-back a:hover { color:var(--amber); border-color:var(--amber); }

/* ─── Mid-article banners ─────────────────────────────── */
.art-banner {
  margin:40px 0;
  padding:28px 32px;
  background:linear-gradient(135deg, rgba(196,138,40,0.10) 0%, rgba(8,8,8,0.4) 100%);
  border:1px solid rgba(196,138,40,0.25);
  border-radius:18px;
  display:flex; align-items:center; justify-content:space-between;
  gap:24px;
  flex-wrap:wrap;
}
.art-banner.brief {
  border-color:rgba(196,138,40,0.45);
  background:linear-gradient(135deg, rgba(196,138,40,0.18) 0%, rgba(8,8,8,0.5) 100%);
}
.art-banner.tg {
  border-color:rgba(80,180,255,0.35);
  background:linear-gradient(135deg, rgba(80,180,255,0.12) 0%, rgba(8,8,8,0.45) 100%);
}
.art-banner.case {
  border-color:rgba(240,237,230,0.15);
  background:linear-gradient(135deg, rgba(255,255,255,0.025) 0%, rgba(8,8,8,0.4) 100%);
}
.art-banner-l { flex:1; min-width:240px; }
.art-banner-t {
  font-family:var(--fd); font-style:italic; font-weight:300;
  font-size:clamp(20px, 2.4vw, 30px); line-height:1.15;
  color:var(--txt); margin-bottom:8px;
}
.art-banner-t .a { color:var(--amber); }
.art-banner-d {
  font-family:var(--fu); font-size:13px; font-weight:400;
  line-height:1.55; color:var(--muted2); margin:0;
}
.art-banner-btn {
  flex-shrink:0;
  display:inline-flex; align-items:center; gap:8px;
  padding:13px 24px;
  background:var(--amber); color:#0a0a08 !important;
  border:none !important; border-radius:100px;
  font-family:var(--fm); font-size:10px;
  letter-spacing:.16em; text-transform:uppercase; font-weight:500;
  transition:background .25s, transform .25s;
  white-space:nowrap;
}
.art-banner-btn:hover { background:var(--amber-2); transform:translateY(-1px); }
.art-banner.tg .art-banner-btn {
  background:rgba(80,180,255,0.92);
  color:#000 !important;
}
.art-banner.tg .art-banner-btn:hover { background:rgba(110,200,255,1); }
.art-banner.case .art-banner-btn {
  background:transparent;
  border:1px solid rgba(240,237,230,0.25) !important;
  color:var(--txt) !important;
}
.art-banner.case .art-banner-btn:hover {
  border-color:rgba(196,138,40,0.6) !important;
  color:var(--amber) !important;
}

/* ─── Pricing pill ─────────────────────────────────────── */
.art-pricing-pill {
  display:flex; align-items:center; gap:16px;
  margin:32px 0;
  padding:14px 20px;
  background:rgba(196,138,40,0.08);
  border:1px solid rgba(196,138,40,0.3);
  border-radius:14px;
  font-family:var(--fm); font-size:11px;
  letter-spacing:.12em; text-transform:uppercase;
  color:var(--muted2);
}
.art-pricing-pill .price {
  color:var(--amber); font-weight:500;
  letter-spacing:.05em;
}
.art-pricing-pill::before {
  content:'●'; color:var(--amber); font-size:14px;
}

/* ─── Inline TOC for long articles ─────────────────────── */
.art-toc {
  margin:32px 0 48px;
  padding:24px 28px;
  background:rgba(255,255,255,0.018);
  border:1px solid var(--glass-b);
  border-radius:14px;
}
.art-toc-label {
  font-family:var(--fm); font-size:10px;
  letter-spacing:.18em; text-transform:uppercase;
  color:var(--muted2); margin-bottom:14px;
}
.art-toc ul { margin:0; padding:0; }
.art-toc li {
  padding:6px 0 6px 22px;
  font-size:14px; line-height:1.55;
}
.art-toc li a { color:var(--txt); border-bottom:none; }
.art-toc li a:hover { color:var(--amber); }
.art-toc li::before { content:'→'; color:var(--amber); opacity:.7; }

/* ─── Quote-callout for emphasis ───────────────────────── */
.art-callout {
  margin:36px 0;
  padding:24px 28px;
  background:rgba(255,255,255,0.025);
  border-left:2px solid var(--amber);
  border-radius:0 12px 12px 0;
  font-size:15px; line-height:1.65; color:var(--txt);
}
.art-callout strong { color:var(--amber); }

@media (max-width:780px) {
  .art-shell { padding:96px var(--pad) 48px; }
  .art-body { font-size:15px; }
  .art-body p { margin-bottom:20px; }
  .art-body h2 { margin:40px 0 16px; }
  .art-pt-row { grid-template-columns:1fr; gap:6px; }
  .art-pt-row.head { display:none; }
  .art-cta { padding:32px 22px; }
  .art-banner { padding:22px 20px; flex-direction:column; align-items:stretch; gap:16px; }
  .art-banner-btn { width:100%; justify-content:center; }
}
