/* Keep the entry points inside the existing two hero layouts. */
.home-page .hero-poster-copy { z-index: 4; pointer-events: auto; }
.home-page .hero-poster-actions {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  margin: 32px auto 0;
  color: var(--ink);
  font: 600 clamp(18px, 1.6vw, 21px)/1.3 var(--sans);
}
.home-page .hero-poster-actions a,
.home-page .hero-poster-actions button { display:flex;align-items:center;justify-content:center;gap:10px;min-width:0;min-height:64px;padding:14px 12px;border:1px solid var(--steel);border-radius:10px;background:#fff;color:var(--ink);font:inherit;box-shadow:0 3px 10px rgba(12,31,38,.08); }
.home-page .hero-poster-actions svg { width:24px;height:24px;flex-shrink:0; }
.home-page .hero-poster-actions a:hover { background:#fff;border-color:var(--ink);box-shadow:0 5px 16px rgba(12,31,38,.16); }
.home-page .hero-poster-actions .hero-purchase-pending { cursor:not-allowed; }
.home-page .hero-action__status { padding:3px 5px;border:1px solid var(--paper-line);border-radius:4px;background:#fff;color:var(--muted);font:600 11px/1.3 var(--sans); }
.home-page .hero-copy[inert],
.home-page .hero-poster-copy[inert] { pointer-events: none; }
.home-page .hero-research-links {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 28px;
  color: var(--ink);
  font: 600 16px/1.4 var(--sans);
}
.home-page .hero-research-links a { display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:10px 14px;border:1px solid var(--paper-line);border-radius:10px;background:rgba(255,255,255,.94);color:var(--ink);text-decoration:none;white-space:nowrap; }
.home-page .hero-research-links a:hover { background:var(--paper-deep);border-color:var(--steel); }
.home-page .hero-research-links svg { display:block;flex-shrink:0; }
.home-page .hero-research-status { padding:3px 6px;border-radius:5px;background:var(--paper-deep);color:var(--muted);font-size:11px;font-weight:500;line-height:1.2; }
.home-page .hero-links { display:flex;flex-wrap:wrap;gap:12px;margin-top:28px;font-size:16px; }
.home-page .hero-links a { display:flex;align-items:center;justify-content:center;gap:8px;min-height:46px;max-width:100%;padding:10px 14px;border:1px solid var(--steel);border-radius:10px;background:#fff;color:var(--ink);box-shadow:0 4px 14px rgba(12,31,38,.12);font:600 16px/1.4 var(--sans); }
.home-page .hero-links a:hover { background:#fff;color:var(--ink);border-color:var(--ink);box-shadow:0 6px 20px rgba(12,31,38,.2); }
.home-page .hero-links svg { width:18px;height:18px;flex-shrink:0; }
.home-page .hero-links span { margin-left:0; }
.home-page .hero-links .hero-link__arrow { margin-left:auto;color:var(--steel);font-size:18px; }
.home-page .hero-poster-actions a:focus-visible,
.home-page .hero-research-links a:focus-visible,
.home-page .hero-links a:focus-visible,
.home-page .frame-video__caption a:focus-visible { outline: 3px solid var(--steel); outline-offset: 5px; }
.home-page #citation { scroll-margin-top: calc(var(--nav-h) + 24px); }
.home-page .home-entry-section { margin:64px 0;padding:32px 0 0;border-top:1px solid var(--paper-line);scroll-margin-top:calc(var(--nav-h) + 24px); }
.home-page .intro .home-entry-section h2 { margin:0;text-align:center;font:600 clamp(32px,3.5vw,42px)/1.15 var(--sans);letter-spacing:-.025em; }
.home-page .overview-actions { display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:32px; }
.home-page .overview-actions > a,
.home-page .overview-actions > button { display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto 1fr;align-items:start;gap:24px 12px;min-width:0;min-height:190px;padding:22px;border:1px solid rgba(12,31,38,.12);border-radius:12px;background:#fff;color:var(--ink);box-shadow:0 4px 18px rgba(12,31,38,.04);text-align:left;text-decoration:none;transition:border-color .18s ease,box-shadow .18s ease; }
.home-page .overview-actions svg { width:44px;height:44px;padding:9px;border-radius:10px;background:var(--paper-deep);color:var(--steel); }
.home-page .overview-action__label { grid-column:1 / -1;align-self:end;min-height:2.5em;font:600 24px/1.25 "Helvetica Neue",Helvetica,Arial,sans-serif;letter-spacing:-.02em; }
.home-page .overview-action__arrow { justify-self:end;align-self:center;color:var(--steel);font:400 24px/1 var(--sans); }
.home-page .overview-action__status { align-self:start;padding:5px 8px;border:1px solid var(--paper-line);border-radius:6px;color:var(--muted);font:600 13px/1.3 var(--sans); }
.home-page .overview-actions > a:hover { border-color:var(--steel);box-shadow:0 6px 22px rgba(12,31,38,.1); }
.home-page .overview-actions > button:disabled { color:var(--muted);cursor:not-allowed; }
.home-page .overview-actions > a:focus-visible { outline:3px solid var(--steel);outline-offset:2px; }
.home-page .frame-video { margin-top: 64px; scroll-margin-top: calc(var(--nav-h) + 24px); }
.home-page .intro-video .intro-video__title { font-size: clamp(28px, 3vw, 38px); letter-spacing: -.025em; }
.home-page .frame-video__intro { margin:16px auto 28px;line-height:1.65; }
.home-page .frame-video__player { padding: 0; overflow: hidden; border-color: var(--paper-line); }
.home-page .frame-video__caption {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 16px;
  padding: 20px 24px;
  border-top: 1px solid var(--paper-line);
  font-size: 18px;
  line-height: 1.5;
}
.home-page .frame-video__caption a { text-decoration: underline; text-underline-offset: 5px; }
.home-page .intro-copy { font-size: 25px; text-align: center; }
.home-page .core-advantage-grid p { font-size: 20px; }
/* Match the Core feature divider without stacking two sections' padding. */
.home-page .intro { padding-bottom:0; }
.home-page .paper-info { padding-top:42px; }
.home-page .paper-info-grid { padding-top:42px;border-top:1px solid var(--paper-line); }
.home-page .home-qq-group { padding:32px 0 56px;scroll-margin-top:calc(var(--nav-h) + 24px); }
.home-page .home-qq-group__content { padding:40px;border:1px solid var(--paper-line);border-radius:14px;background:#fff;color:var(--ink);text-align:center; }
.home-page .home-qq-group .home-qq-group__intro h2 { margin:0 0 20px;color:var(--muted);font:500 22px/1.3 var(--sans); }
.home-page .home-qq-group__details { display:flex;flex-direction:column;align-items:center;gap:12px; }
.home-page .home-qq-group__identity { display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:8px 20px;margin:0;font:600 26px/1.4 var(--sans); }
.home-page .home-qq-group__number { font:700 clamp(32px,4vw,56px)/1.2 var(--mono);overflow-wrap:anywhere; }
.home-page .home-qq-group__status { color:var(--muted);font:400 16px/1.5 var(--sans); }
@media (max-width: 1100px) {
  .home-page .overview-actions { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .home-page .overview-actions > a,.home-page .overview-actions > button { grid-template-columns:44px minmax(0,1fr) auto;grid-template-rows:auto;align-items:center;gap:16px;min-height:128px; }
  .home-page .overview-actions svg { grid-column:1;grid-row:1; }
  .home-page .overview-action__label { grid-column:2;grid-row:1;align-self:center;min-height:0; }
  .home-page .overview-action__arrow,.home-page .overview-action__status { grid-column:3;grid-row:1;align-self:center; }
}
@media (max-width: 760px) {
  .home-page .home-qq-group__content { padding:32px 24px; }
  .home-page .home-qq-group__identity { font-size:24px; }
  .home-page .home-entry-section { margin:48px 0;padding:28px 0 0; }
  .home-page .overview-actions { grid-template-columns:1fr;gap:12px;margin-top:24px; }
  .home-page .overview-actions > a,.home-page .overview-actions > button { min-height:108px;padding:20px;gap:16px; }
  .home-page .overview-action__label { font-size:22px; }
  .home-page .hero-poster-copy { padding: 28px 16px; }
  .home-page .hero-poster-actions { grid-template-columns:1fr;gap:10px;margin-top:24px;font-size:18px; }
  .home-page .hero-poster-actions a,.home-page .hero-poster-actions button { min-height:54px;padding:12px 14px; }
  .home-page .hero-research-links { gap:8px;margin-top:24px;font-size:16px; }
  .home-page .hero-research-links a { padding:10px 8px; }
  .home-page .hero-links { gap:12px;margin-top:24px; }
  .home-page .hero-links a { padding:10px 8px; }
  .home-page .frame-video { margin-top: 44px; }
  .home-page .frame-video__caption { align-items: flex-start; flex-direction: column; gap: 8px; padding: 16px; font-size: 17px; }
  .home-page .intro-copy { font-size: 22px; }
  .home-page .core-advantage-grid p { font-size: 19px; }
}
@media (max-width: 640px) {
  .home-page .paper-info { padding-top:32px; }
  .home-page .paper-info-grid { padding-top:32px; }
}
