/* Reading surfaces extend the masthead without bringing continuous motion into prose. */
.rm-hub-page,.rm-profile-page { margin-block-start:0!important; }
.rm-brand-name { font-weight:800; font-size:25px; letter-spacing:-.035em; }
.rm-brand-accent { color:var(--rm-gold); }
.rm-footer .rm-brand-accent { color:var(--rm-light-gold); }
.rm-brand:focus-visible { outline:3px solid var(--rm-gold); outline-offset:6px; }

.rm-interior-header { position:relative; overflow:hidden; background:var(--rm-forest); color:var(--rm-ivory); padding-block:56px; }
.rm-interior-header>.rm-shell { position:relative; }
.rm-interior-copy { position:relative; z-index:2; max-width:720px; margin:0; }
.rm-interior-header h1 { margin:0; max-width:18ch; color:var(--rm-ivory); font-family:Manrope,system-ui,sans-serif; font-size:58px; line-height:1.12; font-weight:750; letter-spacing:-.03em; }
.rm-interior-header p { max-width:60ch; margin:22px 0 0; color:#e7e8dd; font-size:18px; line-height:1.7; }
.rm-hub-jumps { display:flex; flex-wrap:wrap; gap:10px; margin:26px 0 0; }
.rm-hub-jumps a { display:inline-flex; align-items:center; min-height:46px; padding:10px 16px; border:1px solid #829d8d; border-radius:6px; color:var(--rm-ivory); font-size:15px; line-height:1.4; font-weight:700; text-decoration:none; transition:background-color 180ms ease-out,border-color 180ms ease-out; }
.rm-hub-jumps a:hover { background:#28543f; border-color:var(--rm-light-gold); }
.rm-hub-jumps a:focus-visible { outline:3px solid var(--rm-light-gold); outline-offset:4px; }
.rm-interior-header:has(.rm-interior-art) { padding-bottom:74px; }
.rm-interior-art { position:absolute; z-index:1; width:360px; height:360px; right:-30px; bottom:-58px; margin:0; }
.rm-interior-art .rm-hero-art { position:relative; width:100%; height:100%; min-height:0; max-width:none; margin:0; pointer-events:none; }
.rm-interior-art .rm-space-field { position:relative; width:100%; top:auto; right:auto; opacity:.46; }
.rm-interior-art .rm-motion-toggle { pointer-events:auto; bottom:4px; right:20px; background:var(--rm-forest); }
.rm-hub-body { padding-block:52px 64px; }
.rm-hub-body>* { margin-block-start:0; }
.rm-hub-body>section+section,.rm-hub-body>.wp-block-group+.wp-block-group { margin-top:52px; }
.rm-hub-body h2 { margin:0 0 16px; font-family:Manrope,system-ui,sans-serif; font-size:34px; line-height:1.22; font-weight:750; letter-spacing:-.025em; }
.rm-hub-body h3 { margin:0 0 12px; font-family:Manrope,system-ui,sans-serif; font-size:23px; line-height:1.3; font-weight:750; letter-spacing:-.02em; }
.rm-hub-body p { max-width:72ch; margin:0 0 18px; font-size:17px; line-height:1.8; color:var(--rm-support); }
.rm-hub-body a:not(.rm-card-action) { text-decoration-thickness:1px; }
.rm-hub-body a:focus-visible,.rm-profile-reading a:focus-visible,.rm-related-peptide:focus-visible { outline:3px solid var(--rm-gold); outline-offset:4px; }

/* Topics are readable indexes: the peptide names are part of each entry. */
.rm-topic-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; margin:0; }
.rm-topic-card { display:flex; flex-direction:column; min-width:0; margin:0; padding:30px; background:var(--rm-card); border:1px solid var(--rm-line); border-radius:14px; transition:background-color 180ms ease-out,border-color 180ms ease-out; }
.rm-topic-card h2 { max-width:23ch; margin:0 0 14px; font-size:27px; line-height:1.25; }
.rm-topic-card>p { margin:0 0 20px; font-size:16px; line-height:1.75; }
.rm-topic-card:hover,.rm-topic-card:focus-within { border-color:var(--rm-forest); background:#f7f3e9; }
.rm-topic-examples { display:flex; flex-wrap:wrap; gap:8px; padding:0; margin:0 0 18px; list-style:none; }
.rm-topic-examples li { margin:0; }
.rm-topic-examples a { display:inline-flex; align-items:center; min-height:44px; padding:8px 12px; border-radius:6px; background:#e9eee6; color:var(--rm-forest); font-size:14px; line-height:1.4; font-weight:700; text-decoration:none; }
.rm-topic-examples a:hover { background:#dae4d6; text-decoration:underline; }
.rm-topic-card>.rm-card-action { margin-top:auto; }
.rm-topic-card>.wp-block-paragraph:has(.rm-card-action) { margin-top:auto; margin-bottom:0; }
.rm-topic-card .rm-card-action svg { transition:transform 200ms cubic-bezier(.16,1,.3,1); }
.rm-topic-card:is(:hover,:focus-within) .rm-card-action svg { transform:translateX(5px); }

/* The numbers convey a real learning order, rather than decoration. */
.rm-learning-path { margin:0; padding:0 0 0 44px; counter-reset:rm-learning; list-style:decimal; }
.rm-learning-step { min-width:0; margin:0; padding:26px 0 28px 18px; border-top:1px solid var(--rm-line); }
.rm-learning-step:first-child { padding-top:0; border-top:0; }
.rm-learning-step::marker { color:var(--rm-forest); font-family:Manrope,system-ui,sans-serif; font-size:24px; font-weight:750; font-variant-numeric:tabular-nums; }
.rm-learning-step h2 { margin:0 0 12px; font-size:29px; }
.rm-learning-step p { margin:0 0 10px; max-width:67ch; }
.rm-learning-step .rm-card-action { margin-top:2px; }
.rm-learning-actions { display:flex; flex-wrap:wrap; gap:10px 24px; margin-top:12px; }
.rm-learning-actions>.rm-card-action { margin:0; }

.rm-about-intro { display:grid; grid-template-columns:minmax(0,.85fr) minmax(0,1.25fr); gap:64px; margin:0; }
.rm-about-intro>div { min-width:0; margin:0; }
.rm-about-intro h2 { max-width:15ch; font-size:40px; line-height:1.17; }
.rm-about-intro p { margin-bottom:20px; }
.rm-about-columns { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:44px; }
.rm-about-columns>section,.rm-about-columns>.wp-block-group { margin:0; padding-top:28px; border-top:1px solid var(--rm-line); min-width:0; }
.rm-about-columns h2 { font-size:27px; }
.rm-about-purpose { padding:36px; background:var(--rm-forest); border-radius:14px; color:var(--rm-ivory); }
.rm-about-purpose h2 { color:var(--rm-ivory); max-width:24ch; }
.rm-about-purpose p { color:#e7e8dd; }
.rm-about-purpose a { color:var(--rm-light-gold); }
.rm-about-purpose a:focus-visible { outline-color:var(--rm-light-gold); }

/* A compact explanation precedes source-specific findings. */
.rm-header-actions { display:flex; align-items:center; gap:14px; margin:0; }
.rm-header-actions>* { margin-block:0; }
.rm-study-controls { display:grid; gap:14px; margin:24px 0; }
.rm-study-controls[hidden],.rm-study-card[hidden],.rm-directory-empty[hidden] { display:none!important; }
.rm-study-controls label { font-size:15px; font-weight:750; color:var(--rm-forest); }
.rm-study-controls input { width:100%; min-height:48px; border:1px solid var(--rm-line); border-radius:6px; background:var(--rm-card); color:var(--rm-body); padding:12px 16px; font-size:16px; }
.rm-study-controls input::placeholder { color:var(--rm-support); opacity:1; }
.rm-study-count { font-size:14px; color:var(--rm-support); }
.rm-hub-body .rm-study-list { display:grid; gap:22px; }
.rm-hub-body .rm-study-card { padding:28px; background:var(--rm-card); border:1px solid var(--rm-line); border-radius:14px; }
.rm-hub-body .rm-study-card>p { font-size:16px; }
.rm-profile-reading .rm-profile-summary { padding:24px; margin:0 0 28px; background:var(--rm-paper); border-radius:12px; }
.rm-profile-summary>p { margin:0; }
.rm-profile-facts { display:grid; grid-template-columns:minmax(120px,.75fr) minmax(0,1.5fr); margin:24px 0 32px; gap:0; font-size:15px; line-height:1.65; }
.rm-profile-facts dt,.rm-profile-facts dd { min-width:0; margin:0; padding:13px 0; border-bottom:1px solid var(--rm-line); }
.rm-profile-facts dt { padding-right:18px; color:var(--rm-forest); font-weight:750; }
.rm-profile-facts dd { color:var(--rm-support); overflow-wrap:anywhere; }
.rm-profile-reading .rm-study-list { display:grid; gap:20px; margin:24px 0 36px; }
.rm-profile-reading .rm-study-card { min-width:0; margin:0; padding:24px; background:var(--rm-card); border:1px solid var(--rm-line); border-radius:14px; }
.rm-study-meta { display:flex; flex-wrap:wrap; gap:8px 12px; margin:0 0 14px; color:var(--rm-support); font-size:13px; line-height:1.5; font-weight:650; }
.rm-study-meta span { padding:4px 8px; background:var(--rm-paper); border-radius:4px; }
.rm-profile-reading .rm-study-card h3,.rm-profile-reading .rm-study-card h4 { margin:0 0 14px; color:var(--rm-forest); font-family:Manrope,system-ui,sans-serif; font-size:22px; line-height:1.35; font-weight:750; letter-spacing:-.015em; }
.rm-profile-reading .rm-study-card>p { margin:0 0 16px; font-size:16px; line-height:1.8; }
.rm-profile-reading .rm-study-card>p:last-child { margin-bottom:0; }
.rm-study-source { display:inline-flex; align-items:center; min-height:44px; color:var(--rm-forest); font-size:15px; line-height:1.5; font-weight:750; overflow-wrap:anywhere; }
.rm-study-details { margin-top:18px; border-top:1px solid var(--rm-line); }
.rm-study-details summary { padding:15px 0; color:var(--rm-forest); font-size:15px; line-height:1.5; font-weight:750; cursor:pointer; }
.rm-study-details summary::marker,.rm-profile-faq summary::marker { color:var(--rm-gold); }
.rm-study-details summary:hover,.rm-profile-faq summary:hover { color:var(--rm-deep-forest); text-decoration:underline; text-underline-offset:.24em; }
.rm-study-details summary:focus-visible,.rm-profile-faq summary:focus-visible { outline:3px solid var(--rm-gold); outline-offset:3px; border-radius:3px; }
.rm-study-details[open] summary { margin-bottom:4px; }
.rm-study-details p,.rm-study-details li { font-size:15px; line-height:1.8; }
.rm-study-details p:last-child { margin-bottom:4px; }
.rm-profile-faq { margin:22px 0 36px; }
.rm-profile-faq details { margin:0; border-top:1px solid var(--rm-line); }
.rm-profile-faq details:last-child { border-bottom:1px solid var(--rm-line); }
.rm-profile-faq summary { min-height:48px; padding:17px 0; font-size:17px; font-weight:750; line-height:1.5; color:var(--rm-forest); cursor:pointer; }
.rm-profile-faq details>p { padding-bottom:8px; font-size:16px; }
.rm-coverage-note { margin:28px 0; padding:22px; background:#e9eee6; border-radius:12px; }
.rm-profile-reading .rm-coverage-note p { margin:0; font-size:15px; line-height:1.8; }
.rm-coverage-note strong { color:var(--rm-forest); }

.rm-related-links { display:flex; flex-wrap:wrap; align-items:stretch; gap:12px; margin:20px 0 0; }
.rm-profile-next .rm-related-peptide { display:flex; flex-direction:column; justify-content:center; gap:5px; min-height:68px; min-width:145px; max-width:270px; margin:0; padding:13px 18px; border:1px solid var(--rm-line); border-radius:10px; background:var(--rm-paper); color:var(--rm-forest); font-size:17px; line-height:1.4; font-weight:750; text-decoration:none; transition:background-color 180ms ease-out,border-color 180ms ease-out; }
.rm-related-peptide small { display:block; max-width:28ch; color:var(--rm-support); font-size:13px; line-height:1.5; font-weight:500; }
.rm-profile-next .rm-related-peptide:hover { border-color:var(--rm-forest); background:#e9eee6; text-decoration:underline; }
.rm-profile-next .rm-related-peptide:active { background:#dae4d6; }

/* Let WordPress own the submenu's opening, focus and mobile behavior. */
.rm-nav .wp-block-navigation__submenu-container { border:1px solid var(--rm-line); border-radius:12px; background:var(--rm-card); padding:8px; min-width:245px; color:var(--rm-forest); }
.rm-site-header .rm-nav .wp-block-navigation__submenu-container .wp-block-navigation-item__content { width:100%; box-sizing:border-box; min-height:46px; padding:12px 14px; font-size:15px; line-height:1.45; white-space:normal; }
.rm-nav .wp-block-navigation__submenu-container .wp-block-navigation-item__content:hover { background:var(--rm-paper); }
.rm-nav .wp-block-navigation-submenu__toggle { min-height:46px; border-radius:6px; font:inherit; color:inherit; }
.rm-nav .wp-block-navigation-submenu__toggle:focus-visible { outline:3px solid var(--rm-gold); outline-offset:3px; }

@media(max-width:1100px) {
  .rm-interior-copy { max-width:640px; }
  .rm-interior-art { right:-110px; opacity:.7; }
  .rm-site-header .rm-nav .is-menu-open .wp-block-navigation__submenu-container { min-width:0; width:100%; margin:0; padding:4px 0 12px; border:0; background:transparent; }
  .rm-site-header .rm-nav .is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item { border-bottom:0; }
  .rm-site-header .rm-nav .is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item__content { font-size:18px; padding:12px 18px; min-height:48px; }
}
@media(max-width:900px) {
  .rm-interior-header h1 { font-size:48px; }
  .rm-interior-copy { max-width:560px; }
  .rm-topic-card { padding:24px; }
  .rm-topic-card h2 { font-size:24px; }
  .rm-about-intro { gap:32px; }
  .rm-about-intro h2 { font-size:34px; }
  .rm-about-columns { gap:28px; }
}
@media(max-width:650px) {
  .rm-brand-name { font-size:23px; }
  .rm-interior-header { padding-block:36px 38px; }
  .rm-interior-header h1 { font-size:40px; line-height:1.13; }
  .rm-interior-header p { font-size:17px; margin-top:18px; }
  .rm-hub-jumps { gap:8px; margin-top:22px; }
  .rm-hub-jumps a { padding:10px 13px; font-size:14px; }
  .rm-interior-art { width:320px; height:320px; right:-230px; bottom:-58px; opacity:.5; }
  .rm-interior-art .rm-motion-toggle { right:235px; bottom:6px; }
  .rm-hub-body { padding-block:34px 44px; }
  .rm-hub-body>section+section,.rm-hub-body>.wp-block-group+.wp-block-group { margin-top:36px; }
  .rm-hub-body h2 { font-size:29px; }
  .rm-hub-body p { font-size:16px; }
  .rm-topic-grid { grid-template-columns:minmax(0,1fr); gap:18px; }
  .rm-topic-card { padding:22px; }
  .rm-topic-card h2 { font-size:25px; }
  .rm-learning-path { padding-left:30px; }
  .rm-learning-step { padding:22px 0 24px 8px; }
  .rm-learning-step::marker { font-size:21px; }
  .rm-learning-step h2 { font-size:25px; }
  .rm-about-intro,.rm-about-columns { grid-template-columns:minmax(0,1fr); gap:20px; }
  .rm-about-intro h2 { max-width:21ch; font-size:32px; }
  .rm-about-purpose { padding:26px 22px; }
  .rm-profile-facts { grid-template-columns:minmax(0,1fr); margin-block:22px 28px; }
  .rm-profile-facts dt { padding:12px 0 2px; border-bottom:0; }
  .rm-profile-facts dd { padding:0 0 12px; }
  .rm-profile-reading .rm-study-card { padding:20px; }
  .rm-profile-reading .rm-study-card h3,.rm-profile-reading .rm-study-card h4 { font-size:21px; }
  .rm-profile-faq summary { font-size:16px; }
  .rm-related-links { gap:10px; }
  .rm-profile-next .rm-related-peptide { flex:1 1 145px; min-width:0; max-width:none; padding:13px 15px; font-size:16px; }
}
@media(max-width:360px) {
  .rm-brand-name { font-size:20px; }
  .rm-interior-header h1 { font-size:36px; }
  .rm-related-links { flex-direction:column; }
  .rm-profile-next .rm-related-peptide { flex-basis:auto; }
}
@media(prefers-reduced-motion:reduce) {
  .rm-hub-jumps a,.rm-topic-card,.rm-topic-card .rm-card-action svg,.rm-related-peptide { transition:none; }
  .rm-topic-card:is(:hover,:focus-within) .rm-card-action svg { transform:none; }
}
