/* Shared hero: the training-page composition, used by every public content page. */
html body.site-root .page-hero {
  --hero-bottom-space:40px;
  position:relative;
  isolation:isolate;
  background:var(--lime);
  border-radius:0 0 50% 50% / 0 0 24px 24px;
  margin-top:-82px;
  padding:162px 0 var(--hero-bottom-space);
  text-align:left;
}
html body.site-root .page-hero__grid {display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,1fr);gap:24px;align-items:center}
html body.site-root .page-hero__copy {min-width:0}
html body.site-root .page-hero h1 {margin:0;max-width:none;text-wrap:balance}
html body.site-root .page-hero__intro {max-width:43ch;margin:28px 0 0;font-size:1rem;line-height:var(--intro-leading)}
html body.site-root .page-hero__intro p {margin:0;color:var(--ink);font-size:inherit;line-height:inherit}
html body.site-root .page-hero__intro p+p {margin-top:1em}
html body.site-root .page-hero .button {margin-top:30px;background:hsl(240 27% 25%);border-color:hsl(240 27% 25%);color:#fff;box-shadow:none;border-radius:6px;font-size:1rem;line-height:1.3;padding:16px 22px;min-height:48px}
html body.site-root .page-hero .button:hover {box-shadow:none;transform:translateY(-2px)}
html body.site-root .page-hero .button:active {transform:translateY(0)}
html body.site-root .page-hero__actions {display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}
html body.site-root .page-hero__actions .button {margin-top:0}
html body.site-root .page-hero .button--secondary {background:transparent;border-color:var(--ink);color:var(--ink)}
html body.site-root .page-hero .button--secondary:hover {background:color-mix(in srgb,var(--ink) 7%,transparent)}
html body.site-root .page-hero__art {width:90%;margin:0;justify-self:center}
html body.site-root .page-hero__art img {display:block;width:100%;height:auto}
html body.site-root .page-hero__art--portrait {position:relative;max-width:390px;transform:rotate(2deg);border-radius:43% 57% 47% 53% / 49% 42% 58% 51%}
html body.site-root .page-hero__art--portrait::before {content:"";position:absolute;inset:-12px -10px;border:1px solid #193a2b40;border-radius:48% 52% 43% 57% / 44% 47% 53% 56%;transform:rotate(-7deg);pointer-events:none}
html body.site-root .page-hero__art--portrait img {aspect-ratio:1/1.05;object-fit:cover;border-radius:inherit}
html body.site-root .page-hero__stats {margin-top:55px}
html body.site-root .page-hero--centered {text-align:center}
html body.site-root .page-hero--centered .page-hero__grid {grid-template-columns:minmax(0,1fr)}
html body.site-root .page-hero--centered h1 {max-width:1100px;margin-inline:auto}
html body.site-root .page-hero--centered .page-hero__intro {max-width:65ch;margin-inline:auto}
@media(max-width:1100px) {html body.site-root .page-hero__grid {gap:10px}}
@media(max-width:800px) {
  html body.site-root .page-hero {--hero-bottom-space:32px;margin-top:-88px;padding:135px 0 var(--hero-bottom-space);border-radius:0 0 50% 50% / 0 0 16px 16px;text-align:center}
  html body.site-root .page-hero__grid {grid-template-columns:minmax(0,1fr);gap:20px}
  html body.site-root .page-hero__intro {max-width:45ch;margin:22px auto 0}
  html body.site-root .page-hero .button {margin-top:23px}
  html body.site-root .page-hero__actions {justify-content:center;margin-top:23px}
  html body.site-root .page-hero__actions .button {margin-top:0}
  html body.site-root .page-hero__art {max-width:430px;margin:0 auto}
  html body.site-root .page-hero__art--portrait {max-width:330px;margin-top:26px}
  html body.site-root .page-hero__stats {margin-top:38px}
}
@media(scripting:none) {html body.site-root .page-hero {margin-top:0;padding-top:50px}}
@media screen {
  html body.site-root .page-hero:not(:has(.page-hero__stats)) {padding-bottom:calc(var(--hero-bottom-space) + 30px)}
}
@media print {
  html body.site-root .page-hero {background:white;border-radius:0;margin:0;padding:20px 0}
}
