/* TransHimalaya — Deyshal
   The hub and its sub-sections: archive, data, reading and reference. */

.dy{ max-width:1200px; margin:0 auto;
  padding:0 clamp(16px,4vw,40px) clamp(48px,6vw,76px); }

.dy-head{ max-width:46rem; margin:0 auto; text-align:center;
  padding:clamp(34px,5vw,58px) 0 clamp(28px,4vw,42px); }
.dy-head .k{ font-size:12px; letter-spacing:.2em; text-transform:uppercase;
  color:var(--orange); font-weight:700; margin:0; }
.dy-head h1{ font-family:"Iowan Old Style","Palatino Linotype",Palatino,Georgia,serif;
  font-size:clamp(32px,5vw,52px); line-height:1.06; font-weight:600; color:var(--ink);
  margin:12px 0 0; text-wrap:balance; }
.dy-head .lede{ font-size:17.5px; line-height:1.65; color:#4b5a63;
  margin:16px auto 0; max-width:56ch; }
.dy-count{ font-size:12px; letter-spacing:.14em; text-transform:uppercase;
  color:var(--muted); margin:18px 0 0; }

/* ---- hub ---- */
.dy-grid{ list-style:none; margin:0; padding:0; display:grid;
  grid-template-columns:repeat(3,1fr); gap:clamp(16px,2.4vw,24px); }
.dy-card a{ display:flex; flex-direction:column; height:100%; text-decoration:none;
  border:1px solid var(--line); border-radius:8px; background:#fff;
  padding:22px; transition:.18s; }
.dy-card a:hover{ border-color:var(--orange); transform:translateY(-2px);
  box-shadow:0 10px 24px rgba(18,40,55,.09); }
.dy-card .nm{ font-family:"Iowan Old Style",Palatino,Georgia,serif; font-size:21px;
  line-height:1.25; color:var(--ink); font-weight:600; }
.dy-card .ds{ font-size:14px; line-height:1.6; color:#5b6870; margin-top:8px; }
.dy-card .go{ margin-top:auto; padding-top:16px; font-size:11px; letter-spacing:.14em;
  text-transform:uppercase; color:var(--teal); font-weight:700; }
.dy-card.is-soon a{ background:var(--sand); }
.dy-card.is-soon .go{ color:var(--muted); }

/* ---- archive ---- */
.dy-archive{ max-width:52rem; margin:0 auto; }
.dy-month{ font-size:12px; letter-spacing:.16em; text-transform:uppercase;
  color:var(--orange); font-weight:700; margin:30px 0 0;
  padding-bottom:8px; border-bottom:2px solid var(--ink); }
.dy-month:first-child{ margin-top:0; }
.dy-list{ list-style:none; margin:0; padding:0; }
.dy-list li{ border-bottom:1px solid var(--line); }
.dy-list a{ display:grid; grid-template-columns:44px 1fr; gap:2px 14px;
  padding:14px 0; text-decoration:none; align-items:baseline; }
.dy-list .dt{ font-family:"Iowan Old Style",Palatino,Georgia,serif; font-size:20px;
  color:var(--muted); text-align:right; font-variant-numeric:tabular-nums; }
.dy-list .tt{ font-family:"Iowan Old Style",Palatino,Georgia,serif; font-size:18px;
  line-height:1.3; color:var(--ink); }
.dy-list a:hover .tt{ color:var(--orange); }
.dy-list .mt{ grid-column:2; font-size:12.5px; color:var(--muted); }

/* ---- must reads ---- */
.dy-picks{ list-style:none; margin:0; padding:0; max-width:56rem;
  margin-inline:auto; display:flex; flex-direction:column; gap:clamp(20px,3vw,28px); }
.dy-pick{ display:grid; grid-template-columns:220px 1fr; gap:clamp(18px,3vw,28px);
  align-items:center; padding-bottom:clamp(20px,3vw,28px); border-bottom:1px solid var(--line); }
.dy-pick:last-child{ border-bottom:0; padding-bottom:0; }
.dy-pick .ph{ display:block; aspect-ratio:4/3; border-radius:5px;
  background-size:cover; background-position:center; background-color:#e6ebed; }
.dy-pick .k{ font-size:11px; letter-spacing:.15em; text-transform:uppercase;
  color:var(--orange); font-weight:700; margin:0; }
.dy-pick h2{ font-family:"Iowan Old Style",Palatino,Georgia,serif; font-size:24px;
  line-height:1.25; color:var(--ink); font-weight:600; margin:8px 0 0; }
.dy-pick h2 a{ color:inherit; text-decoration:none; }
.dy-pick h2 a:hover{ color:var(--orange); }
.dy-pick .mt{ font-size:13px; color:var(--muted); margin:8px 0 0; }

/* ---- data & visuals ---- */
.dy-figs{ list-style:none; margin:0; padding:0; display:grid;
  grid-template-columns:repeat(4,1fr); gap:clamp(14px,2vw,22px); }
.dy-fig a{ display:block; text-decoration:none; }
.dy-fig .im{ display:block; aspect-ratio:4/3; border-radius:5px; border:1px solid var(--line);
  background-size:cover; background-position:center; background-color:#f4f4f2; }
.dy-fig .cp{ display:block; font-size:13px; color:var(--ink); margin-top:9px; line-height:1.45; }
.dy-fig .src{ display:block; font-size:12px; color:var(--muted); margin-top:3px;
  line-height:1.4; overflow:hidden; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; }
.dy-fig a:hover .cp{ color:var(--orange); }
.dy-fig.is-table .im{ display:grid; place-items:center; background:var(--sand); }
.dy-fig.is-table .lbl{ font-size:11px; letter-spacing:.16em; text-transform:uppercase;
  color:var(--teal); font-weight:700; }

.dy-diagrams{ list-style:none; margin:clamp(28px,4vw,44px) auto 0; padding:0;
  max-width:52rem; display:flex; flex-direction:column; gap:clamp(30px,4vw,40px); }
.dy-diagram{ margin:0; }
.dy-diagram figure{ margin:0; }
.dy-diagram a.im{ display:block; text-decoration:none; }
.dy-diagram img{ display:block; width:100%; height:auto; border:1px solid var(--line);
  border-radius:6px; background:#f4f4f2; }
.dy-diagram figcaption{ font-size:13px; line-height:1.55; color:var(--muted);
  margin-top:10px; }
.dy-diagram figcaption b{ color:var(--ink); }
.dy-diagram figcaption em{ color:var(--ink); font-style:normal; }
.dy-diagram figcaption a{ color:var(--teal); text-decoration:none; }
.dy-diagram figcaption a:hover{ color:var(--orange); }
.dy-diagrams-note{ max-width:52rem; margin:10px auto 0; text-align:right;
  font-size:12px; color:var(--muted); }

/* ---- prose (archive documents, book review, jargon, snippets) ---- */
.dy-prose{ max-width:44rem; margin:0 auto; font-size:17px; line-height:1.75; color:#3a464d; }
.dy-prose > p{ margin:0 0 1.3em; }
.dy-prose h2{ font-family:"Iowan Old Style",Palatino,Georgia,serif; font-size:25px;
  color:var(--ink); margin:1.6em 0 .6em; }
.dy-prose a{ color:var(--teal); }
.dy-prose a:hover{ color:var(--orange); }
.dy-prose strong{ color:var(--ink); }
.dy-prose ul{ margin:0 0 1.3em; padding-left:1.2em; }
.dy-prose li{ margin:0 0 .5em; }
.dy-doc + .dy-doc{ margin-top:clamp(30px,4vw,46px); padding-top:clamp(28px,4vw,42px);
  border-top:1px solid var(--line); }
.dy-doc .k{ font-size:11px; letter-spacing:.15em; text-transform:uppercase;
  color:var(--orange); font-weight:700; margin:0 0 8px; }
.dy-doc h2{ margin-top:0; }
.dy-byline{ font-size:13.5px; color:var(--muted); margin:-.8em 0 1.6em; }
.dy-cover{ float:right; width:180px; margin:0 0 16px 24px; border-radius:5px;
  border:1px solid var(--line); }
@media (max-width:560px){ .dy-cover{ float:none; width:100%; max-width:220px; margin:0 auto 20px; display:block; } }

/* ---- recommended readings (books) ---- */
.dy-books{ list-style:none; margin:0; padding:0; max-width:56rem; margin-inline:auto;
  display:flex; flex-direction:column; gap:clamp(28px,4vw,40px); }
.dy-book{ display:grid; grid-template-columns:160px 1fr; gap:clamp(20px,3vw,30px);
  padding-bottom:clamp(28px,4vw,40px); border-bottom:1px solid var(--line); }
.dy-book:last-child{ border-bottom:0; padding-bottom:0; }
.dy-book .cv{ width:100%; border-radius:5px; border:1px solid var(--line); align-self:start; }
.dy-book h2{ font-family:"Iowan Old Style",Palatino,Georgia,serif; font-size:22px;
  line-height:1.25; color:var(--ink); font-weight:600; margin:0; }
.dy-book .by{ font-size:14px; color:var(--teal); font-weight:600; margin:4px 0 0; }
.dy-book .mt{ font-size:12.5px; color:var(--muted); margin:8px 0 0; line-height:1.6; }
.dy-book .bf{ font-size:15px; line-height:1.65; color:#3a464d; margin:12px 0 0; }
.dy-book .au{ font-size:13.5px; line-height:1.6; color:#5b6870; margin:10px 0 0; }
.dy-book .au b{ color:var(--ink); }
@media (max-width:560px){ .dy-book{ grid-template-columns:110px 1fr; } }
.dy-book h2 a{ color:inherit; text-decoration:none; }
.dy-book h2 a:hover{ color:var(--teal); }

/* "Read the document" / "View the book" link */
.dy-link{ margin:14px 0 0; }
.dy-link a{ display:inline-flex; align-items:center; gap:7px; font-size:13.5px; font-weight:600;
  color:var(--teal); text-decoration:none; padding:7px 14px; border:1px solid var(--line);
  border-radius:999px; }
.dy-link a:hover{ color:var(--orange); border-color:currentColor; }
.dy-link .ic{ width:14px; height:14px; }

/* ---- trans himalaya lexicon ---- */
.dy-terms{ max-width:52rem; margin:0 auto; }
.dy-term-grp{ margin:0 0 clamp(30px,4vw,42px); }
.dy-term-grp > h2{ font-size:13px; letter-spacing:.14em; text-transform:uppercase;
  color:var(--orange); font-weight:700; margin:0 0 4px;
  padding-bottom:8px; border-bottom:2px solid var(--ink); }
.dy-term-grp > p{ font-size:14px; color:var(--muted); margin:10px 0 18px; max-width:60ch; }
.dy-term{ padding:16px 0; border-bottom:1px solid var(--line); }
.dy-term:last-child{ border-bottom:0; }
.dy-term dt{ font-family:"Iowan Old Style",Palatino,Georgia,serif; font-size:17.5px;
  font-weight:600; color:var(--ink); }
.dy-term dd{ margin:6px 0 0; font-size:15px; line-height:1.65; color:#3a464d; }

/* ---- tibet highlights: category cards ---- */
.dy-cat-grid{ list-style:none; margin:0 0 clamp(34px,5vw,50px); padding:0;
  display:grid; grid-template-columns:repeat(2,1fr); gap:clamp(14px,2vw,20px);
  max-width:58rem; margin-inline:auto; }
.dy-cat-card{ display:flex; flex-direction:column; text-decoration:none;
  border:1px solid var(--line); border-radius:8px; background:#fff;
  padding:22px 24px; transition:.18s; }
.dy-cat-card:hover{ border-color:var(--orange); transform:translateY(-2px);
  box-shadow:0 10px 24px rgba(18,40,55,.09); }
.dy-cat-card .nm{ font-family:"Iowan Old Style",Palatino,Georgia,serif; font-size:19px;
  line-height:1.32; color:var(--ink); font-weight:600; }
.dy-cat-card .ct{ font-size:12px; letter-spacing:.08em; text-transform:uppercase;
  color:var(--muted); margin-top:9px; }
.dy-cat-card .go{ margin-top:14px; font-size:11px; letter-spacing:.14em;
  text-transform:uppercase; color:var(--teal); font-weight:700; }
.dy-cat-card:hover .go{ color:var(--orange); }
.dy-cat-grid.is-hidden{ display:none; }
@media (max-width:640px){ .dy-cat-grid{ grid-template-columns:1fr; } }

/* ---- tibet highlights: timeline ---- */
.js-cats .dy-timeline{ display:none; }
.js-cats .dy-timeline.is-active{ display:block; }
.dy-timeline{ scroll-margin-top:96px; }
.dy-timeline + .dy-timeline{ margin-top:clamp(34px,5vw,50px); }

.dy-tl-head{ display:flex; align-items:center; gap:16px; flex-wrap:wrap;
  max-width:64rem; margin:0 auto clamp(22px,3vw,32px); }
.dy-tl-back{ appearance:none; border:1px solid var(--line); background:#fff;
  border-radius:20px; padding:7px 16px; font-size:12.5px; color:var(--teal);
  font-weight:600; cursor:pointer; transition:.15s; }
.dy-tl-back:hover{ border-color:var(--orange); color:var(--orange); }
.dy-tl-head h2{ font-family:"Iowan Old Style",Palatino,Georgia,serif; font-size:22px;
  color:var(--ink); margin:0; }

.dy-tl{ position:relative; max-width:64rem; margin:0 auto; padding-top:6px; }
.dy-tl::before{ content:''; position:absolute; left:50%; top:0; bottom:0; width:2px;
  background:var(--line); transform:translateX(-50%); }
.dy-tl-item{ position:relative; width:50%; padding:0 44px 46px; box-sizing:border-box; }
.dy-tl-item:last-child{ padding-bottom:0; }
.dy-tl-item:nth-child(odd){ left:0; text-align:right; }
.dy-tl-item:nth-child(even){ left:50%; text-align:left; }
.dy-tl-dot{ position:absolute; top:6px; width:13px; height:13px; border-radius:50%;
  background:var(--orange); border:3px solid #fff; box-shadow:0 0 0 1px var(--line); }
.dy-tl-item:nth-child(odd) .dy-tl-dot{ right:-7.5px; }
.dy-tl-item:nth-child(even) .dy-tl-dot{ left:-7.5px; }
.dy-tl-card{ display:inline-block; text-align:left; background:#fff; border:1px solid var(--line);
  border-radius:8px; padding:18px 20px; max-width:100%; }
.dy-tl-date{ font-size:11px; letter-spacing:.1em; text-transform:uppercase;
  color:var(--orange); font-weight:700; margin:0; }
.dy-tl-card h3{ font-family:"Iowan Old Style",Palatino,Georgia,serif; font-size:17.5px;
  line-height:1.32; color:var(--ink); font-weight:600; margin:6px 0 0; }
.dy-tl-card img{ display:block; width:100%; border-radius:5px; border:1px solid var(--line);
  margin-top:12px; }
.dy-tl-card p{ font-size:14.5px; line-height:1.65; color:#3a464d; margin:10px 0 0; }
.dy-tl-card .cr{ display:block; font-size:12px; color:var(--muted); margin-top:6px; }

@media (max-width:720px){
  .dy-tl::before{ left:20px; }
  .dy-tl-item{ width:100%; left:0!important; padding:0 0 40px 50px; text-align:left!important; }
  .dy-tl-item .dy-tl-dot{ left:13.5px!important; right:auto!important; }
  .dy-tl-card{ display:block; }
}

/* ---- photographs then and now ---- */
.dy-gallery{ list-style:none; margin:0; padding:0; max-width:1000px; margin-inline:auto;
  display:grid; grid-template-columns:repeat(2,1fr); gap:clamp(20px,3vw,30px); }
.dy-gitem img{ width:100%; aspect-ratio:3/4; object-fit:cover; border-radius:6px;
  border:1px solid var(--line); }
.dy-gitem .cp{ display:block; font-size:14px; color:var(--ink); margin-top:10px; line-height:1.5; }
.dy-gitem .cr{ display:block; font-size:12px; color:var(--muted); margin-top:3px; }
.dy-gallery + .dy-prose{ max-width:44rem; margin:clamp(34px,5vw,50px) auto 0; }
@media (max-width:560px){ .dy-gallery{ grid-template-columns:1fr; max-width:340px; } }

/* ---- empty state (shared with the section pages) ---- */
.cat-empty{ max-width:46rem; margin:0 auto; text-align:center;
  border:1px dashed var(--line); border-radius:8px; background:var(--sand);
  padding:clamp(34px,5vw,54px) clamp(20px,4vw,40px); }
.cat-empty .ttl{ font-family:"Iowan Old Style",Palatino,Georgia,serif; font-size:23px;
  color:var(--ink); font-weight:600; margin:0 0 10px; }
.cat-empty p{ font-size:15.5px; line-height:1.65; color:#5b6870; margin:0; }
.cat-empty a{ color:var(--teal); }
.cat-empty a:hover{ color:var(--orange); }

@media (max-width:900px){
  .dy-grid{ grid-template-columns:repeat(2,1fr); }
  .dy-figs{ grid-template-columns:repeat(3,1fr); }
}
@media (max-width:620px){
  .dy-grid{ grid-template-columns:1fr; }
  .dy-figs{ grid-template-columns:repeat(2,1fr); }
  .dy-pick{ grid-template-columns:1fr; }
  .dy-pick .ph{ aspect-ratio:16/9; }
}
