/* WordPress adaptations. The original v4 stylesheet remains byte-for-byte intact. */
.footer-intro { display:grid; align-content:start; gap:16px; }
.cv-author-credit { width:100%; margin:0; font:400 .82rem/1.5 Arial,sans-serif; text-transform:none; }
.cv-author-credit a { color:inherit; text-decoration:underline; text-underline-offset:3px; }
.cv-source-note { font-size:.85rem !important; opacity:.8; }
[hidden] { display: none !important; }
.cv-skip { position: fixed; top: -100px; left: 12px; z-index: 100000; padding: 14px; background: var(--white); color: var(--black); }
.cv-skip:focus { top: 12px; }
.cv-account-nav { position: absolute; top: 5px; right: var(--page-gutter); z-index: 3; display:flex; gap:16px; font-size:.65rem; font-weight:700; }
.cv-account-nav a { text-underline-offset: 3px; }
.admin-bar .cv-account-nav { top:37px; }
.admin-bar .toolbar { top:32px; }
a.more,a.bio,a.archive-open { display:inline-block; text-decoration:none; cursor:pointer; }
.more,.bio { background:transparent; }
.card .more { align-self:flex-start; }
.cv-private-link::before { content:'\f023'; font-family:'Font Awesome 6 Free'; font-weight:900; font-size:.8em; }
.cv-private-link:has(.resource-badge)::before { display:none; }
.links:before { content:attr(data-label); }
html[lang="en"] .legend:before { content:'Choose a movement or tool to jump to it'; }
html[lang="en"] .wheel:after { content:'6\A MOVEMENTS'; }
html[lang="en"] .operational-head .cross-label:after { content:'Tools for different areas of teaching and learning'; }
.operational-head h2::after { content:attr(data-title) !important; }
.cv-page-nav { display:flex; align-items:center; justify-content:space-between; padding:48px var(--page-gutter) 20px; border-bottom:1px solid var(--black); }
.cv-reading { min-width:42px; min-height:42px; }
.cv-document { max-width:1100px; min-height:65vh; margin:auto; padding:50px max(28px,5vw) 80px; }
.cv-document h1 { font-size:clamp(2rem,5vw,4rem); line-height:1.1; letter-spacing:-.03em; margin:0 0 32px; overflow-wrap:anywhere; }
.cv-document h2 { font-size:2rem; line-height:1.2; margin-top:36px; }
.cv-document h3 { font-size:1.4rem; margin-top:28px; }
.cv-document p,.cv-document li { font-size:1.1rem; line-height:1.6; }
.cv-document a { text-decoration-color:var(--red); text-underline-offset:3px; overflow-wrap:anywhere; }
.cv-single-image { margin:0 0 36px; }
.cv-single-image img { max-width:100%; height:auto; max-height:400px; object-fit:contain; }
.cv-single-image figcaption { font-size:.8rem; }
.cv-linkroll { list-style:none; padding:0; }
.cv-linkroll li { border-top:1px solid var(--black); padding:20px 0; scroll-margin-top:60px; }
.cv-linkroll li a { font-weight:800; }
.cv-linkroll li p { margin:8px 0 0; font-size:.9rem; color:var(--mid); }
#loginform { max-width:440px; }
#loginform label { display:block; font-weight:700; margin-bottom:6px; }
#loginform .input { width:100%; padding:12px; border:1px solid var(--black); background:var(--white); color:var(--black); font-size:16px; }
#loginform .login-remember label { display:flex; gap:8px; align-items:center; font-weight:400; }
#loginform .button,.cv-button { display:inline-block; padding:12px 24px; background:var(--red); color:#fff; border:0; font:inherit; cursor:pointer; }
@media(max-width:782px) { .admin-bar .toolbar { top:46px; } .admin-bar .cv-account-nav { top:51px; } }
@media(max-width:580px) { .cv-account-nav { top:7px; font-size:.6rem; } .cv-document { padding:42px 24px 80px; } .cv-document h1 { white-space:normal; } .cv-page-nav { padding:38px 24px 20px; } .admin-bar .toolbar { top:0; } }
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } }

/* v5.0.1: archive navigation and distinct links to full pages. */
footer .archive-open {
  padding:12px 18px;
  min-height:44px;
  border:1px solid var(--red);
  border-radius:10px;
  font:700 .76rem/1.5 Arial,sans-serif;
  text-transform:uppercase;
  background:var(--red);
  color:var(--white);
}
footer .archive-open:hover,footer .archive-open:focus-visible {
  background:var(--red-dark);
  border-color:var(--red-dark);
}
.detail-content .archive-index-item { display:inline; white-space:normal; }
.detail-content .archive-index-separator { padding:0 .18em; }
.detail-content .cv-detail-action { margin:28px 0 12px; }
.detail-content a.cv-page-button {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  min-height:44px;
  max-width:100%;
  padding:12px 18px;
  border:1.5px solid var(--red);
  border-radius:10px;
  background:transparent;
  color:var(--black);
  font:700 .76rem/1.5 Arial,sans-serif;
  text-transform:uppercase;
  text-decoration:none;
  text-align:center;
}
.detail-content a.cv-page-button:hover,.detail-content a.cv-page-button:focus-visible {
  background:var(--red-dark);
  border-color:var(--red-dark);
  color:var(--white);
}
.detail-content a.cv-page-button:focus-visible,footer .archive-open:focus-visible {
  outline:2px solid var(--black);
  outline-offset:3px;
}
