/* Preserve the original artwork, panel, palette and typography. */
.page-banner { height: auto; }
.dd-dropdown { position: relative; }
.site-nav summary { cursor: pointer; padding: 10px 15px; border-radius: 8px; color: #cfd3d7; font: 500 13px/1.65 Inter, sans-serif; letter-spacing: 1.4px; text-transform: uppercase; list-style: none; }
.site-nav summary::-webkit-details-marker { display: none; }
.site-nav summary::after { content: ''; display: inline-block; width: 6px; height: 6px; border-right: 1px solid currentColor; border-bottom: 1px solid currentColor; transform: rotate(45deg); vertical-align: 3px; margin-left: 10px; }
.site-nav details[open] > summary, .site-nav .current-school summary, .site-nav .current-library summary { color: var(--gold-soft); background: rgba(217,177,90,.14); }
.site-nav .dd-dropdown-links { position: absolute; top: 100%; left: 0; width: 240px; padding: 10px; display: flex; flex-direction: column; gap: 3px; background: #1d1e20; border: 1px solid var(--line); border-radius: 8px; box-shadow: var(--shadow); }
.site-nav details:not([open]) .dd-dropdown-links { display: none; }
.site-nav .dd-dropdown-links a { font-size: 12px; letter-spacing: .7px; }
.site-nav .dd-nav-utility a { color: var(--ink-dim); }
.site-nav summary:focus-visible, .dd-reading-page a:focus-visible { outline: 2px solid var(--gold); outline-offset: 4px; }
.dd-reading-page .page-banner { width: 100%; aspect-ratio: 2048 / 688; object-fit: cover; }
.dd-reading-page .dd-page-deck { font-size: 18px; line-height: 1.7; color: #dedcd5; margin: 0 0 28px; }
.dd-reading-page .entry-content > section { margin-top: 38px; }
.dd-reading-page .entry-content h2 { margin-top: 0; }
.dd-reading-page [id] { scroll-margin-top: calc(var(--header-h) + 24px); }
.dd-reading-page .entry-content p { margin: 0 0 1.15em; }
.dd-reading-page .entry-content a:not(.btn), .dd-related a { color: var(--gold-soft); text-decoration: underline; text-underline-offset: 4px; text-decoration-color: rgba(212,182,120,.45); }
.dd-reading-page .entry-content a:hover, .dd-related a:hover { color: #fff; }
.dd-reading-page .dd-reading-toc { border-block: 1px solid var(--line); padding: 18px 0; margin: 28px 0 36px; }
.dd-reading-toc > p { margin: 0 0 10px; font-size: 12px; color: var(--ink-dim); }
.dd-reading-toc ul { list-style: none; display: flex; flex-wrap: wrap; gap: 8px 22px; padding: 0; margin: 0; }
.dd-reading-toc a { color: var(--gold-soft); font-size: 14px; }
.dd-course-facts { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 24px 32px; padding: 24px 0; border-block: 1px solid var(--line); margin: 0 0 22px; }
.dd-course-facts dt { color: var(--gold-soft); font-weight: 600; margin-bottom: 5px; }
.dd-course-facts dd { margin: 0; }
.dd-course-facts dd span { color: var(--ink-dim); font-size: 14px; }
.dd-reading-page .dd-faq details { padding: 16px 0; }
.dd-reading-page .dd-faq summary { cursor: pointer; color: var(--gold-soft); }
.dd-reading-page .dd-faq details p { margin: 14px 0 0; }
.dd-reading-page .dd-plain-steps { padding-left: 24px; }
.dd-plain-steps li { padding-left: 6px; margin: 0 0 18px; }
.dd-plain-steps strong { display: block; color: var(--gold-soft); margin-bottom: 5px; }
.dd-reading-page .dd-library-group { margin-top: 38px; }
.dd-article-list article { padding: 22px 0; border-bottom: 1px solid var(--line); }
.dd-article-list article:first-child { border-top: 1px solid var(--line); }
.dd-article-list h3 { font-size: 25px; margin: 0 0 8px; }
.dd-reading-page .dd-article-list h3 a { text-decoration: none; }
.dd-reading-page .dd-article-list p { color: #b9bdc0; margin-bottom: 0; font-size: 15px; }
.dd-breadcrumb { display: flex; flex-wrap: wrap; gap: 8px; font-size: 13px; color: var(--ink-dim); margin-bottom: 22px; }
.dd-breadcrumb a { color: var(--gold-soft); }
.dd-related { border-top: 1px solid var(--line); margin-top: 34px; padding-top: 24px; }
.dd-related h2 { font-size: 25px; margin-top: 0; }
.dd-related ul { padding-left: 20px; }
.dd-related li { margin: 9px 0; }
.dd-reading-page .dd-source-note { font-size: 14px; color: var(--ink-dim); border-top: 1px solid var(--line); padding-top: 20px; margin-top: 30px; }
.dd-reading-page .dd-page-invitation h2 { margin-top: 14px; }
.site-footer nav { flex-wrap: wrap; }
@media (min-width: 901px) and (max-width: 1180px) {
  .site-nav summary { font-size: 11px; letter-spacing: 1px; padding-inline: 8px; }
}
@media (max-width: 900px) {
  .site-nav { max-height: calc(100dvh - var(--header-h)); overflow-y: auto; }
  .site-nav summary { min-height: 44px; }
  .site-nav .dd-dropdown-links { position: static; width: auto; margin: 4px 0 8px 16px; background: transparent; box-shadow: none; border: 0; border-left: 1px solid var(--line); border-radius: 0; }
}
@media (max-width: 600px) {
  .dd-reading-page .dd-page-deck { font-size: 17px; }
  .dd-course-facts { gap: 22px 16px; font-size: 15px; }
  .dd-reading-toc ul { display: grid; grid-template-columns: 1fr; gap: 10px; }
  .dd-article-list h3 { font-size: 23px; }
  .dd-reading-page .panel { padding-inline: 24px; }
  .dd-reading-page .entry-content { overflow-wrap: break-word; }
}

.site-nav .dd-browse-all { border-top: 1px solid var(--line); margin-top: 5px; padding-top: 6px; }
.site-nav .dd-browse-all a { color: var(--gold-soft); }
