/* Independent viewport control: never constrained by the footer or side rail. */
.mm-presentation .mm-back-top {
  position:fixed;right:max(20px,env(safe-area-inset-right));
  bottom:max(20px,env(safe-area-inset-bottom));z-index:1100;
  box-shadow:0 3px 12px #052c5140;
}
.mm-presentation .mm-back-top[hidden] {display:none;}
.mm-presentation .home-journal-right>.rv-home-account {margin-bottom:20px;}
/* Homepage depth is applied to the existing surfaces, never to their controls.
   The CTA keeps the same shadow when the existing sticky rail moves it. */
.mm-presentation.path-frontpage .mm-historical-cover .issue-cover {box-shadow:var(--mm-home-historical-shadow);}
.mm-presentation.path-frontpage .home-current-compact .home-current-image .issue-cover {box-shadow:var(--mm-home-current-shadow);}
.mm-presentation.path-frontpage :is(.hero-submission,[data-rv-home-cta]) .journal-cta {box-shadow:var(--mm-home-submit-shadow);}
.mm-presentation.path-frontpage .home-journal-right>.rv-home-account {box-shadow:var(--mm-home-account-shadow);}
.mm-presentation .rv-home-sticky {height:auto;}
.mm-presentation .rv-home-sticky>[data-rv-home-cta]:empty {display:none;}
.mm-presentation .rv-internal-rail>:is([data-rv-action-rail],[data-mm-compact-rail]):not(:empty) {margin-bottom:20px;}
@media(min-width:1101px) {
  .mm-presentation .rv-home-sticky {display:flex;flex-direction:column;gap:20px;}
}
/* The chief editor uses the same round portrait shape at a larger size. */
.mm-presentation .mm-home-editorial .mm-editor-portrait {display:block;}
.mm-presentation .mm-home-editorial .mm-editor-featured .mm-editor-portrait {
  width:120px;max-width:100%;flex:0 0 120px;
}
.mm-presentation .mm-home-editorial .mm-editor-featured .mm-editor-portrait img {
  width:120px;height:120px;max-width:100%;aspect-ratio:1;object-fit:cover;object-position:center top;border-radius:50%;
  border:1px solid #fff;box-shadow:none;
}
/* A homepage preview, not a second archive or a horizontal scroll region. */
.mm-presentation .home-archive .home-issue-track {
  display:grid;grid-template-columns:repeat(var(--mm-issue-columns,2),minmax(0,1fr));
  gap:20px;overflow:visible;min-width:0;
}
.mm-presentation .home-archive .home-issue-track>[hidden] {display:none;}
/* Excluding the self-link must also release its empty Views grid cell. */
.mm-presentation .home-publisher .views-row:not(:has(.directory-item--journal)) {display:none;}
@media(max-width:600px) {
  .mm-presentation .mm-back-top {right:max(16px,env(safe-area-inset-right));bottom:max(16px,env(safe-area-inset-bottom));}
}
/* The existing bottom strip hosts exactly one portable copyright component. */
.journal-footer .rv-copyright{margin:0;font:400 14px/1.5 var(--rv-font-interface);color:var(--rv-text);padding-right:64px;text-align:left}
@media(max-width:600px){.journal-footer .mm-footer-bottom{justify-content:center}.journal-footer .rv-copyright{text-align:center;padding:0 40px}}

/* Keep complete article titles readable in narrow cards, including tablet columns.
   Prefer language-aware hyphenation; break an unrecognised long word only if needed. */
@media(max-width:1100px) {
  .mm-presentation :is(.article-card h3, .article-card h3 a, .rv-internal-hero--article h1, .article-detail h1) {
    white-space:normal;
    word-break:normal;
    overflow-wrap:anywhere;
    -webkit-hyphens:auto;
    hyphens:auto;
  }
}
.mm-presentation .journal-identity .journal-facts>.journal-fact {
  border-color:var(--mm-hero-mobile-border);
}
/* A close action is distinct from the search field and its magnifying glass. */
/* The existing facts and submission card share the full row on smaller screens. */
@media(max-width:1100px) {
  .mm-presentation .journal-identity .identity-facts {display:flex;flex-direction:column;gap:var(--mm-responsive-stack-gap);min-width:0;}
  .mm-presentation .journal-identity .identity-facts>.journal-facts {width:100%;grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;}
  .mm-presentation .journal-identity .journal-facts>.journal-fact {
    min-width:0;min-height:var(--mm-responsive-card-height);height:auto;
    background:var(--mm-responsive-fact-bg);color:var(--mm-responsive-fact-text);
    padding-left:calc(10px + var(--mm-responsive-icon-size) + var(--mm-fact-text-gap));
    --rv-fact-icon-size:var(--mm-responsive-icon-size);
  }
  .mm-presentation .journal-identity .journal-fact :is(dt,dd,small,.fact-symbol) {color:inherit;}
  .mm-presentation .journal-identity .journal-fact dd small {margin-left:0;width:auto;}
  .mm-presentation .journal-identity .journal-fact .fact-symbol {background:transparent;width:var(--mm-responsive-icon-size);height:var(--mm-responsive-icon-size);}
  .mm-presentation .journal-identity :is([data-rv-hero-cta-home],.hero-submission,.hero-submission .journal-cta) {width:100%;max-width:none;}
}
.mm-presentation .hero-metrics>div {min-width:0;overflow-wrap:anywhere;}
.mm-presentation .hero-metrics .metric-unit {display:block;font-size:12px;line-height:1.3;margin:2px 0 0;}

/* Homepage identity: one heading, led by the journal's editable descriptor.
   Container-relative sizes keep both lines balanced as the Hero grid changes. */
.mm-presentation .journal-identity .identity-heading {container-type:inline-size;min-width:0;}
.mm-presentation .journal-identity .identity-copy .identity-heading h1 {
  margin:0;font-size:38px;font-weight:600;line-height:1.2;
  white-space:normal;overflow-wrap:break-word;word-break:normal;
}
.mm-presentation .journal-identity .identity-heading-kind {
  display:block;font-size:clamp(18px,3.5cqi,24px);line-height:1.3;font-style:normal;
  margin-bottom:8px;
}
.mm-presentation .journal-identity .identity-heading-name {
  display:block;font-size:clamp(28px,6cqi,38px);line-height:1.2;
}

.mm-presentation #rv-search .palette-top [data-search-close] {
  display:inline-flex;align-items:center;justify-content:center;
  flex:0 0 36px;width:36px;height:36px;min-width:36px;min-height:36px;padding:0;
  border:1px solid var(--rv-line-strong);border-radius:50%;
  background:var(--rv-white);color:var(--rv-accent);box-shadow:none;
}
.mm-presentation #rv-search [data-search-close] .mm-close-icon {width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;}
.mm-presentation #rv-search [data-search-close]:is(:hover,:active) {background:var(--rv-white);color:var(--rv-accent);border-color:currentColor;filter:none;box-shadow:none;}
.mm-presentation #rv-search [data-search-close]:focus-visible {outline:2px solid var(--rv-accent);outline-offset:3px;}
@media(max-width:600px),(pointer:coarse) {
  .mm-presentation #rv-search .palette-top [data-search-close] {flex-basis:44px;width:44px;height:44px;min-width:44px;min-height:44px;}
}
