/* Self-hosted fonts (SIL OFL 1.1, see /assets/fonts/OFL.txt). Latin subset. */
@font-face{font-family:"Geist";font-style:normal;font-weight:300 800;font-display:swap;src:url(/assets/fonts/geist.woff2) format("woff2")}
@font-face{font-family:"Geist Mono";font-style:normal;font-weight:400 600;font-display:swap;src:url(/assets/fonts/geist-mono.woff2) format("woff2")}
@font-face{font-family:"Instrument Serif";font-style:normal;font-weight:400;font-display:swap;src:url(/assets/fonts/instrument-serif.woff2) format("woff2")}
@font-face{font-family:"Instrument Serif";font-style:italic;font-weight:400;font-display:swap;src:url(/assets/fonts/instrument-serif-italic.woff2) format("woff2")}
/* Wolf Lab — tema scuro minimale.
   Palette: asfalto di notte, superficie, testo, grigio, linea blu. */
:root {
  color-scheme: light;
  --bg: #F3E9D3;
  --surface: #ECEAE3;
  --surface-2: #F3E9D3;
  --text: #0A0A0A;
  --muted: #555f59;
  --faint: #58635d;
  --line: #D6FF35;
  --line-soft: rgba(191,37,27,.1);
  --rule: rgba(21,32,28,.14);
  --rule-strong: rgba(21,32,28,.25);
  --sans: "Geist", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;
  --mono: "Geist Mono", ui-monospace, "SF Mono", Menlo, monospace;
  --wrap: 1120px;
  --measure: 66ch;
}

*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; overflow-x: clip; }
body {
  margin: 0;
  background: var(--bg);
  color: var(--text);
  font-family: var(--sans);
  font-size: 1.0625rem;
  line-height: 1.65;
  overflow-x: clip;
  -webkit-font-smoothing: antialiased;
}
img, svg { max-width: 100%; }
a { color: inherit; text-decoration-color: var(--rule-strong); text-underline-offset: 0.2em; }
a:hover { text-decoration-color: var(--line); }
:focus-visible { outline: 2px solid var(--line); outline-offset: 3px; border-radius: 4px; }
::selection { background: var(--line); color: #ffffff; }
.wrap { width: min(var(--wrap), 100% - 32px); margin-inline: auto; }
.skip { position: absolute; left: -9999px; }
.skip:focus { left: 16px; top: 16px; background: var(--surface); padding: 8px 12px; z-index: 10; }
.num { font-family: var(--mono); font-variant-numeric: tabular-nums; }

/* Testata */
.site-head { position: sticky; top: 0; z-index: 20; background: var(--bg); backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px); border-bottom: 1px solid var(--rule); }
.site-head .wrap { display: flex; align-items: center; gap: 28px; min-height: 64px; flex-wrap: wrap; padding-block: 8px; }
.brand { display: flex; align-items: center; gap: 10px; font-weight: 600; font-size: 1rem; letter-spacing: -0.01em; text-decoration: none; }
.brand-mark { width: 24px; height: 28px; background: var(--text); -webkit-mask: url(/assets/logo.svg) center / contain no-repeat; mask: url(/assets/logo.svg) center / contain no-repeat; }
.nav { display: flex; gap: 4px 24px; flex-wrap: wrap; margin-left: auto; font-size: 0.925rem; }
.nav a { text-decoration: none; color: var(--muted); padding: 4px 0; }
.nav a:hover, .nav a[aria-current="page"] { color: var(--text); }
.lang { font-size: 0.85rem; color: var(--muted); text-decoration: none; border: 1px solid var(--rule-strong); border-radius: 999px; padding: 3px 11px; }
.lang:hover { color: var(--text); border-color: var(--muted); }
@media (max-width: 640px) {
  .site-head .wrap { gap: 6px 16px; }
  .lang { margin-left: auto; }
  .nav { order: 3; width: 100%; margin-left: 0; gap: 4px 20px; }
}

/* Tipografia */
h1, h2, h3 { font-weight: 600; letter-spacing: -0.03em; line-height: 1.05; margin: 0 0 0.5em; text-wrap: balance; }
h1 { font-size: clamp(2.4rem, 6vw, 4.2rem); }
h2 { font-size: clamp(1.5rem, 3vw, 2rem); letter-spacing: -0.025em; }
h3 { font-size: 1.15rem; letter-spacing: -0.015em; line-height: 1.25; }
p { margin: 0 0 1em; }
.lede { font-size: 1.2rem; line-height: 1.55; color: var(--muted); max-width: 44ch; text-wrap: pretty; }
.small { font-size: 0.9rem; color: var(--muted); }

/* Hero di lancio */
.hero { position: relative; padding: clamp(72px, 12vw, 140px) 0 clamp(120px, 14vw, 180px); overflow: hidden; }
.hero-grid { display: grid; grid-template-columns: 1.15fr 0.85fr; gap: 56px; align-items: end; }
.hero h1 { font-size: clamp(3rem, 8.6vw, 7rem); letter-spacing: -0.055em; line-height: 0.95; font-weight: 600; margin-bottom: 28px; }
.hero h1 .dim { color: var(--faint); }
.hero .lede { margin-bottom: 32px; }
.cta-row { display: flex; flex-wrap: wrap; gap: 12px; }
.btn { display: inline-flex; align-items: center; gap: 8px; padding: 11px 20px; border-radius: 999px; font-size: 0.95rem; font-weight: 500; text-decoration: none; border: 1px solid var(--rule-strong); color: var(--text); }
.btn:hover { border-color: var(--muted); }
.btn-primary { background: var(--text); color: var(--bg); border-color: var(--text); }
.btn-primary:hover { background: #fff; }
.route { position: absolute; inset: auto 0 -40px 0; height: 200px; pointer-events: none; z-index: -1; opacity: 0.9; }
.route path { fill: none; stroke: var(--line); stroke-width: 2; stroke-linecap: round; }
.route .glow { stroke: var(--line-soft); stroke-width: 18; }
@media (prefers-reduced-motion: no-preference) {
  .route path { stroke-dasharray: 2400; stroke-dashoffset: 2400; animation: draw 2.4s cubic-bezier(.6, 0, .2, 1) 0.2s forwards; }
}
@keyframes draw { to { stroke-dashoffset: 0; } }
@media (max-width: 860px) { .hero-grid { grid-template-columns: 1fr; gap: 40px; } }

/* Calcolatore del ritmo nella hero e negli strumenti */
.pace-card { background: var(--surface); border: 1px solid var(--rule); border-radius: 16px; padding: 22px 22px 18px; }
.pace-card label { display: block; font-size: 0.875rem; color: var(--muted); margin-bottom: 8px; }
.pace-top { display: flex; align-items: center; justify-content: space-between; gap: 16px; flex-wrap: wrap; }
.time-input { font-family: var(--mono); font-variant-numeric: tabular-nums; font-size: 1.15rem; width: 6.5ch; padding: 6px 10px; border-radius: 10px; border: 1px solid var(--rule-strong); background: var(--bg); color: var(--text); }
.time-input:focus { border-color: var(--line); outline: none; box-shadow: 0 0 0 3px var(--line-soft); }
.pace-big { font-family: var(--sans); font-weight: 500; font-variant-numeric: tabular-nums; font-size: clamp(3.2rem, 7vw, 4.6rem); letter-spacing: -0.04em; line-height: 1; margin: 18px 0 4px; font-weight: 500; }
.pace-big small { font-size: 0.32em; color: var(--muted); letter-spacing: 0; margin-left: 6px; font-weight: 400; }
.band { display: grid; grid-template-columns: repeat(9, 1fr); margin-top: 18px; border-top: 1px solid var(--rule); font-family: var(--mono); font-variant-numeric: tabular-nums; }
.band div { padding: 10px 6px 2px 0; }
.band .km { display: block; font-size: 0.7rem; color: var(--faint); }
.band .t { display: block; font-size: 0.82rem; }
.band div:last-child .t { color: var(--line); }
.band-foot { margin: 12px 0 0; font-size: 0.85rem; color: var(--muted); }
.hero .band { grid-template-columns: repeat(3, 1fr); }
.hero .band div:nth-child(n+4) { border-top: 1px solid var(--rule); }
@media (max-width: 760px) {
  .band { grid-template-columns: repeat(3, 1fr); }
  .band div:nth-child(n+4) { border-top: 1px solid var(--rule); }
}
@media (prefers-reduced-motion: no-preference) {
  .band .t, .pace-big { transition: opacity 0.18s; }
  .updating .t { opacity: 0.4; }
}

/* Sezioni */
section { padding: 64px 0; }
.section-title { display: flex; justify-content: space-between; align-items: baseline; gap: 16px; flex-wrap: wrap; margin-bottom: 8px; }
.section-title a { color: var(--muted); font-size: 0.925rem; text-decoration: none; }
.section-title a:hover { color: var(--text); }

/* Elenco articoli */
.article-list { list-style: none; margin: 0; padding: 0; border-top: 1px solid var(--rule); }
.article-list li { border-bottom: 1px solid var(--rule); }
.article-list a { display: grid; grid-template-columns: 10rem 1fr auto; gap: 6px 28px; padding: 24px 0; text-decoration: none; align-items: baseline; }
.article-list a:hover h3 { color: var(--line); }
.article-list a:hover .topic { color: var(--line); }
.article-list h3 { margin: 0 0 6px; font-size: 1.25rem; font-weight: 550; }
.article-list p { margin: 0; color: var(--muted); font-size: 0.95rem; max-width: 62ch; }
.article-list .topic { font-size: 0.875rem; color: var(--faint); }
@media (max-width: 760px) { .article-list a { grid-template-columns: 1fr; } }

/* Livello di prova */
.evidence { display: inline-flex; align-items: center; gap: 8px; font-size: 0.82rem; color: var(--muted); white-space: nowrap; }
.evidence .bars { display: inline-flex; gap: 2px; }
.evidence .bars i { width: 4px; height: 12px; border-radius: 1px; background: var(--rule-strong); }
.evidence[data-level="1"] .bars i:nth-child(-n+1),
.evidence[data-level="2"] .bars i:nth-child(-n+2),
.evidence[data-level="3"] .bars i:nth-child(-n+3) { background: var(--line); }

/* Principi */
.principles { display: grid; grid-template-columns: repeat(3, 1fr); gap: 40px; }
.principles h3 { margin-bottom: 8px; }
.principles p { font-size: 0.95rem; color: var(--muted); margin: 0; }
@media (max-width: 860px) { .principles { grid-template-columns: 1fr; gap: 24px; } }

/* Invito agli strumenti */
.callout { border: 1px solid var(--rule); border-radius: 20px; padding: clamp(28px, 5vw, 48px); display: flex; flex-wrap: wrap; gap: 24px 48px; align-items: end; justify-content: space-between; background: linear-gradient(180deg, var(--surface), var(--bg)); }
.callout .figure { font-family: var(--sans); font-size: clamp(3rem, 10vw, 6.5rem); letter-spacing: -0.05em; line-height: 0.9; font-weight: 500; }
.callout .figure span { color: var(--line); font-size: 0.35em; letter-spacing: 0; margin-left: 8px; }
.callout p { margin: 0 0 16px; max-width: 38ch; color: var(--muted); }

/* Pagine di testo e articoli */
.page { padding: 64px 0 88px; }
.prose { max-width: var(--measure); }
.prose h1 { font-size: clamp(2.1rem, 5vw, 3.2rem); letter-spacing: -0.04em; }
.prose h2 { margin-top: 2em; font-size: 1.45rem; }
.prose h3 { margin-top: 1.4em; }
.prose p, .prose li { color: #29352f; }
.prose strong { color: var(--text); font-weight: 600; }
.prose ul, .prose ol { padding-left: 1.2em; }
.prose li { margin-bottom: 0.45em; }
.prose sup a { color: var(--line); text-decoration: none; font-family: var(--mono); font-size: 0.75em; }
.prose table { border-collapse: collapse; width: 100%; font-size: 0.95rem; margin: 1em 0 1.5em; }
.prose th, .prose td { text-align: left; padding: 10px 12px 10px 0; border-bottom: 1px solid var(--rule); vertical-align: top; }
.prose th { font-weight: 500; color: var(--muted); font-size: 0.85rem; }
.table-scroll { overflow-x: auto; }
.article-meta { display: flex; flex-wrap: wrap; gap: 8px 20px; align-items: center; font-size: 0.875rem; color: var(--muted); margin-bottom: 32px; }
.brief { background: var(--surface); border: 1px solid var(--rule); border-radius: 14px; padding: 20px 24px; margin: 0 0 36px; }
.brief h2 { font-size: 0.95rem; margin: 0 0 8px; color: var(--line); letter-spacing: -0.01em; }
.brief ul { margin: 0; padding-left: 1.1em; }
.sources { font-size: 0.9rem; }
.sources li { margin-bottom: 0.6em; color: var(--muted); }
.note { font-size: 0.875rem; color: var(--faint); border-top: 1px solid var(--rule); padding-top: 16px; margin-top: 48px; }

/* Strumenti */
.tool { background: var(--surface); border: 1px solid var(--rule); border-radius: 16px; padding: clamp(20px, 4vw, 32px); margin-bottom: 24px; }
.tool .pace-card { background: transparent; border: 0; padding: 0; }
.tool h2 { margin-bottom: 6px; font-size: 1.4rem; }
.fields { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 16px; margin: 22px 0; }
.field label { display: block; font-size: 0.85rem; color: var(--muted); margin-bottom: 6px; }
.field input, .field select { width: 100%; font-family: var(--mono); font-variant-numeric: tabular-nums; font-size: 1rem; padding: 9px 11px; border: 1px solid var(--rule-strong); border-radius: 10px; background: var(--bg); color: var(--text); }
.field input:focus { border-color: var(--line); outline: none; box-shadow: 0 0 0 3px var(--line-soft); }
.field input#target { max-width: 12rem; }
.field .hint { font-size: 0.8rem; color: var(--faint); margin: 6px 0 0; }
.results table { border-collapse: collapse; width: 100%; }
.results th, .results td { text-align: left; padding: 10px 12px 10px 0; border-bottom: 1px solid var(--rule); }
.results th { font-size: 0.8rem; color: var(--faint); font-weight: 500; }
.results td strong { font-family: var(--mono); font-weight: 500; }
.big-figures { display: flex; flex-wrap: wrap; gap: 12px 40px; margin: 12px 0 20px; }
.big-figures div strong { display: block; font-family: var(--mono); font-size: 2rem; font-weight: 500; letter-spacing: -0.03em; line-height: 1.1; }
.big-figures div span { font-size: 0.85rem; color: var(--muted); }
.range { width: 100%; accent-color: var(--line); }
.error { color: #ff8a7a; font-size: 0.9rem; }

/* Piede */
.site-foot { border-top: 1px solid var(--rule); padding: 32px 0 48px; font-size: 0.875rem; color: var(--faint); }
.site-foot .wrap { display: flex; flex-wrap: wrap; gap: 12px 32px; justify-content: space-between; }
.site-foot p { margin: 0; max-width: 60ch; }
.site-foot a { color: var(--muted); text-decoration: none; }
.site-foot a:hover { color: var(--text); }
.foot-links { display: flex; gap: 20px; }
@media (max-width: 640px) { .route { height: 70px; bottom: 10px; } .hero { padding-bottom: 96px; } }
.prose .note { color: var(--faint); }

/* Home minimale */
.hero-min { padding: clamp(96px, 16vw, 200px) 0 clamp(140px, 16vw, 220px); }
.hero-min h1 { font-size: clamp(3.2rem, 10vw, 8.2rem); max-width: none; }
.hero-min .lede { color: var(--muted); max-width: none; }
.latest { padding-top: 24px; }
.title-list { list-style: none; margin: 0; padding: 0; border-top: 1px solid var(--rule); }
.title-list li { border-bottom: 1px solid var(--rule); }
.title-list a { display: grid; grid-template-columns: 10rem 1fr; gap: 4px 28px; padding: 18px 0; text-decoration: none; align-items: baseline; }
.title-list .topic { font-size: 0.875rem; color: var(--faint); }
.title-list .t { font-size: 1.15rem; font-weight: 500; letter-spacing: -0.015em; }
.title-list a:hover .t { color: var(--line); }
.title-list a:hover .topic { color: var(--line); }
@media (max-width: 640px) { .title-list a { grid-template-columns: 1fr; } }

/* Pagina articoli per sezioni */
.topic-nav { display: flex; flex-wrap: wrap; gap: 8px; margin: 8px 0 24px; }
.topic-nav a { text-decoration: none; font-size: 0.9rem; padding: 6px 14px; border: 1px solid var(--rule-strong); border-radius: 999px; color: var(--muted); }
.topic-nav a:hover { color: var(--text); border-color: var(--muted); }
.topic-nav .count { color: var(--faint); margin-left: 4px; }
.topic-section { padding: 32px 0 8px; scroll-margin-top: 80px; }
.topic-section h2 { font-size: 1.3rem; margin-bottom: 12px; }
.topic-section .article-list .topic { display: none; }
.topic-section .article-list a { grid-template-columns: 1fr auto; }
@media (max-width: 760px) { .topic-section .article-list a { grid-template-columns: 1fr; } }

/* Titolo con icone stilizzate */
.headline span { display: flex; align-items: center; gap: 0.18em; }
.glyph { width: 0.78em; height: 0.78em; flex: none; fill: none; stroke: var(--line); stroke-width: 3.2; stroke-linecap: round; stroke-linejoin: round; margin-top: 0.06em; }
.glyph .pulse { stroke: var(--text); stroke-width: 2.8; }
.glyph-run { stroke: #D6FF35; }
.glyph-bike { stroke: #3ecf8e; }
.glyph-heart { stroke: #ff4d5e; }
@media (prefers-reduced-motion: no-preference) {
  .glyph * { stroke-dasharray: 220; stroke-dashoffset: 220; animation: draw 1.4s cubic-bezier(.6, 0, .2, 1) forwards; }
  .headline span:nth-child(2) .glyph * { animation-delay: 0.25s; }
  .headline span:nth-child(3) .glyph * { animation-delay: 0.5s; }
}
.hero-min { padding-bottom: clamp(72px, 10vw, 120px); }

/* Gare */
.filter { display: flex; gap: 8px; margin: 8px 0 28px; flex-wrap: wrap; }
.filter button { font: inherit; font-size: 0.9rem; padding: 6px 14px; border-radius: 999px; border: 1px solid var(--rule-strong); background: transparent; color: var(--muted); cursor: pointer; }
.filter button:hover { color: var(--text); }
.filter button[aria-pressed="true"] { background: var(--text); color: var(--bg); border-color: var(--text); }
.race-head, .race-list a { display: grid; grid-template-columns: 8rem 1fr 9rem 13rem; gap: 6px 24px; align-items: baseline; }
.race-head { font-size: 0.8rem; color: var(--faint); padding: 0 0 8px; border-bottom: 1px solid var(--rule); }
.race-list { list-style: none; margin: 0; padding: 0; }
.race-list li { border-bottom: 1px solid var(--rule); }
.race-list li[hidden] { display: none; }
.race-list a { padding: 18px 0; text-decoration: none; }
.race-list time { font-family: var(--mono); font-size: 0.85rem; color: var(--muted); }
.r-name { font-size: 1.1rem; font-weight: 500; letter-spacing: -0.015em; }
.r-name small { display: block; font-size: 0.85rem; font-weight: 400; color: var(--faint); letter-spacing: 0; }
.r-dist, .r-fee { font-size: 0.9rem; color: var(--muted); }
.r-fee { font-family: var(--mono); font-size: 0.85rem; }
.race-list a:hover .r-name { color: var(--line); }
@media (max-width: 760px) {
  .race-head { display: none; }
  .race-list a { grid-template-columns: 1fr; gap: 2px; }
}

/* Trip */
.trip-list { list-style: none; margin: 0; padding: 0; border-top: 1px solid var(--rule); }
.trip-list li { border-bottom: 1px solid var(--rule); }
.trip-list a { display: grid; grid-template-columns: 1fr 14rem 16rem; gap: 4px 24px; padding: 22px 0; text-decoration: none; align-items: baseline; }
.t-name { font-size: 1.35rem; font-weight: 500; letter-spacing: -0.02em; }
.t-kind, .t-season { font-size: 0.9rem; color: var(--muted); }
.trip-list a:hover .t-name { color: var(--line); }
@media (max-width: 760px) { .trip-list a { grid-template-columns: 1fr; } }

/* Schede */
.crumb { font-size: 0.875rem; margin-bottom: 12px; }
.crumb a { color: var(--muted); text-decoration: none; }
.crumb a:hover { color: var(--text); }
.facts { margin: 0 0 32px; border-top: 1px solid var(--rule); }
.facts div { display: grid; grid-template-columns: 9rem 1fr; gap: 16px; padding: 12px 0; border-bottom: 1px solid var(--rule); }
.facts dt { color: var(--faint); font-size: 0.9rem; }
.facts dd { margin: 0; color: var(--text); }
@media (max-width: 560px) { .facts div { grid-template-columns: 1fr; gap: 2px; } }
.major { display: inline-block; font-size: 0.7rem; font-weight: 500; letter-spacing: 0.02em; color: var(--line); border: 1px solid rgba(76, 125, 255, 0.45); border-radius: 999px; padding: 1px 8px; vertical-align: 2px; margin-left: 6px; }
.article-meta .major { margin-left: 0; }

/* Sport editorial theme, approved 26 October 2026. */
:root{--sans:Arial,Helvetica,sans-serif;--measure:66ch}
.site-head{position:relative;backdrop-filter:none}.site-head .wrap{padding:24px 28px;gap:24px;border-bottom:1px solid var(--text)}
.brand{font-size:32px;font-style:italic;font-weight:900;letter-spacing:-1.6px;gap:6px;line-height:1}.brand-word{color:#D6FF35}.brand-dot{color:#D6FF35}.brand-mark{display:none}
.brand-icons{display:flex;gap:10px;border-left:1px solid #cfcfc4;padding-left:18px;margin-left:16px;color:#D6FF35}.brand-icons svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.brand-icons circle.runner-head{fill:currentColor;stroke:none}
.site-head .nav{order:3;flex-basis:100%;margin:0;padding-top:10px;gap:32px}.nav a{color:var(--text);font-size:13px;font-weight:700;min-height:40px;display:flex;align-items:center}.lang{margin-left:auto;border:0;padding:8px 0;border-radius:0;color:var(--text)}
h1,h2,h3{font-weight:800}.btn{border-radius:0;font-weight:700}.btn-primary{background:#D6FF35;color:#0A0A0A;border-color:#D6FF35}.btn-primary:hover{background:#E6FF7A}.prose{font-size:18px;line-height:1.7}.brief{border-radius:0;border:0;border-left:4px solid #D6FF35;background:#ECEAE3}.tool,.pace-card,.callout{border-radius:4px}.error{color:#aa1d16}.major{border-color:#D6FF35}.article-list a:hover h3,.title-list a:hover .t,.race-list a:hover .r-name,.trip-list a:hover .t-name{color:#D6FF35}
.sport-home .wrap{max-width:1120px}.sport-home{padding:0}.sport-hero{display:grid;grid-template-columns:1fr 1fr;background:#D6FF35;color:white}.sport-copy{padding:40px 28px;display:flex;flex-direction:column;align-items:flex-start}.sport-eyebrow{font-size:10px;font-weight:800;letter-spacing:1.5px}.sport-copy h1{font-size:clamp(44px,5.3vw,68px);font-weight:900;letter-spacing:-3px;line-height:.98;margin:30px 0;text-wrap:initial}.sport-copy h1 span{color:#F5F4EF}.sport-copy h1:after{content:"";display:block;width:70px;height:7px;background:#D6FF35;margin-top:18px}.sport-copy .btn{margin-top:auto;min-height:56px;min-width:174px;justify-content:space-between}.sport-photo{position:relative;min-height:390px;background-size:cover;background-position:57% center;}
.sport-photo small{position:absolute;right:12px;bottom:12px;background:#F5F4EF;color:#0A0A0A;padding:5px 7px;font-size:8px}.sport-strip{background:#D6FF35;color:#0A0A0A;display:flex;justify-content:space-between;gap:14px;padding:16px 28px;font-size:9px;font-weight:800;letter-spacing:.5px}.sport-latest{padding:36px 28px}.sport-latest .section-title{margin-bottom:24px}.sport-stories{display:grid;grid-template-columns:1.35fr 1fr;gap:28px}.sport-stories a{text-decoration:none}.sport-stories h3{font-size:25px;margin:12px 0;line-height:1.1}.sport-symbol{height:180px;display:flex;align-items:center;justify-content:space-between;background:#D6FF35;padding:24px 30px;font-size:90px;font-weight:900;margin-bottom:20px}.sport-symbol span{font-size:32px;line-height:.9;letter-spacing:-2px}.sport-topic{font-size:10px;font-weight:800;letter-spacing:1.2px}.sport-read{font-size:12px;font-weight:700}.sport-support{display:flex;flex-direction:column;gap:24px}.sport-support a{border-top:3px solid #D6FF35;padding-top:16px}.sport-support h3{font-size:21px}.sport-more{display:block;margin-top:25px;font-size:14px}.sport-utility{background:#0A0A0A;color:#F5F4EF;padding:32px 28px;display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:28px;align-items:center}.sport-utility h2{font-size:26px;margin:10px 0 0}.sport-utility a{border-top:1px solid #85918b;padding-top:16px;text-decoration:none}.sport-utility b{display:block;color:#D6FF35;margin-bottom:10px}.sport-utility span{font-size:12px}.site-foot{margin-top:32px;color:#555f59}.filter button[aria-pressed=true]{background:#D6FF35;color:#fff;border-color:#D6FF35}:focus-visible{outline:3px solid #D6FF35;outline-offset:4px}.band .km,.field .hint,.facts dt{color:#58635d}
@media(max-width:760px){.sport-hero{grid-template-columns:1fr}.sport-copy{padding:32px 22px}.sport-copy h1{font-size:50px;letter-spacing:-2.5px}.sport-photo{min-height:260px;background-position:55% 60%}.sport-strip{padding:14px 22px;font-size:8px}.sport-strip span:nth-child(2){display:none}.sport-stories,.sport-utility{grid-template-columns:1fr}.sport-latest{padding:30px 22px}.sport-utility{padding:28px 22px}.sport-utility a{min-height:74px}.site-head .wrap{padding:22px 18px;gap:12px}.brand{font-size:28px}.brand-icons{margin-left:8px;padding-left:10px;gap:7px}.brand-icons svg{width:20px;height:20px}.lang{font-size:11px}.site-head .nav{justify-content:space-between;gap:10px}.sport-symbol{height:150px}.sport-stories h3{font-size:25px}.prose h1{overflow-wrap:break-word}.page{padding-top:36px}}
@media(max-width:360px){.brand{font-size:22px;gap:4px}.brand-icons{margin-left:5px;padding-left:7px;gap:5px}.brand-icons svg{width:17px;height:17px}.site-head .wrap{padding:20px 12px;gap:7px}.lang{font-size:10px}.sport-copy h1{font-size:41px;letter-spacing:-2px}.sport-strip{line-height:1.5}}
.sport-photo{background-image:url(/assets/hero-trail-1600.jpg)}

/* Revised running and cycling pictograms, based on the original site marks. */
.sport-photo small{display:none}
.brand-icons svg:nth-child(-n+2){stroke:transparent;fill:none;background-size:contain;background-repeat:no-repeat;background-position:center}
.brand-icons svg:nth-child(-n+2) *{opacity:0}
.brand-icons svg:nth-child(1){background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2064%2064%22%20fill%3D%22none%22%20stroke%3D%22%23BF251B%22%20stroke-width%3D%224%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%2241%22%20cy%3D%229%22%20r%3D%225%22%2F%3E%3Cpath%20d%3D%22M38%2017%20L31%2034%22%2F%3E%3Cpath%20d%3D%22M37%2021%20L45%2027%20L52%2023%22%2F%3E%3Cpath%20d%3D%22M37%2021%20L28%2023%20L22%2030%22%2F%3E%3Cpath%20d%3D%22M31%2034%20L40%2043%20L37%2056%22%2F%3E%3Cpath%20d%3D%22M31%2034%20L23%2044%20L12%2045%22%2F%3E%3C%2Fsvg%3E")}
.brand-icons svg:nth-child(2){background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2064%2064%22%20fill%3D%22none%22%20stroke%3D%22%23BF251B%22%20stroke-width%3D%224%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%2213%22%20cy%3D%2247%22%20r%3D%2210%22%2F%3E%3Ccircle%20cx%3D%2251%22%20cy%3D%2247%22%20r%3D%2210%22%2F%3E%3Cpath%20d%3D%22M13%2047%20L26%2047%20L40%2032%20L21%2032%22%2F%3E%3Cpath%20d%3D%22M26%2047%20L20%2028%22%2F%3E%3Cpath%20d%3D%22M40%2032%20L51%2047%22%2F%3E%3Ccircle%20cx%3D%2245%22%20cy%3D%2211%22%20r%3D%224%22%2F%3E%3Cpath%20d%3D%22M20%2027%20L38%2019%20L41%2031%22%2F%3E%3Cpath%20d%3D%22M20%2027%20L31%2037%20L26%2047%22%2F%3E%3C%2Fsvg%3E")}

/* ===== WOLFLAB: nero / avorio / un solo accento lime (#D6FF35) ===== */
:root{--accent:#D6FF35;--accent-ink:#5A7300;--ink:#0A0A0A;--ivory:#F5F4EF;--graphite:#1B1B1B;--grey:#777777;--serif:"Instrument Serif",Georgia,serif;--sans:"Geist",ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif}
html.wolf2[data-theme="dark"]{color-scheme:dark;--bg:#0A0A0A;--surface:#1B1B1B;--surface-2:#141414;--text:#F5F4EF;--muted:#A9A8A1;--faint:#8c8b85;--rule:rgba(245,244,239,.16);--rule-strong:rgba(245,244,239,.3);--line-soft:rgba(214,255,53,.2)}
.wolf2 body,body{font-family:var(--sans);background:var(--bg);color:var(--text)}
.site-head{background:var(--bg)}
.site-head .wrap{padding:16px 28px;gap:14px 28px;border-bottom:1px solid var(--rule-strong);flex-wrap:wrap;align-items:center;width:min(1280px,100%)}
.brand{font-size:26px;font-style:normal;font-weight:800;letter-spacing:-1px}
.brand-icons{display:none}
.brand-word{color:var(--accent)}
.site-head .nav{order:0;flex-basis:auto;margin:0 0 0 auto;padding:0;gap:6px 26px;flex-wrap:nowrap;align-items:center}
.nav a{font-size:12px;letter-spacing:.14em;font-weight:700;min-height:40px;color:var(--text)}
.nav a[aria-current="page"]{box-shadow:inset 0 -2px 0 var(--accent)}
.nav .nav-engine{background:var(--accent);color:var(--ink);padding:0 16px;letter-spacing:.14em;transition:transform .2s,background .2s}
.nav .nav-engine:hover{background:#E6FF7A;transform:translateY(-1px)}
.nav .nav-engine[aria-current="page"]{box-shadow:none;outline:2px solid var(--text);outline-offset:2px}
.lang{margin-left:0!important;font-size:12px;letter-spacing:.1em;text-transform:uppercase;font-weight:700}
@media(max-width:900px){.site-head .wrap{padding:14px 16px}.site-head .nav{order:3;flex-basis:100%;margin:0;overflow-x:auto;gap:4px 20px;padding-bottom:4px;scrollbar-width:none}.site-head .nav::-webkit-scrollbar{display:none}.nav a{flex:none}.lang{margin-left:auto!important}}
.theme-toggle{font:inherit;font-size:12px;letter-spacing:.1em;text-transform:uppercase;font-weight:700;background:none;border:1px solid var(--rule-strong);color:var(--text);padding:8px 10px;cursor:pointer}
.site-foot{border-top:1px solid var(--rule-strong);background:var(--bg)}
.foot-links a{color:var(--muted);margin-right:18px;font-size:13px}
/* Titoli interni */
.w-page-hero{background:#0A0A0A;color:#F5F4EF}
.w-page-hero .wrap{width:min(1280px,100% - 32px);padding:72px 0 64px}
.w-kicker{font:600 11px/1 var(--mono);letter-spacing:.2em;text-transform:uppercase;color:var(--accent);margin:0 0 20px}
.w-page-hero h1{font-size:clamp(40px,7vw,96px);line-height:.95;letter-spacing:-.045em;font-weight:800;margin:0 0 24px;max-width:16ch;text-wrap:balance}
.w-lede{font-size:clamp(17px,2vw,21px);line-height:1.5;max-width:60ch;margin:0;color:#c9c8c1}
.w-lede.dim{color:var(--muted)}
.w-body{width:min(1280px,100% - 32px);padding:56px 0 88px}
.w-prose{width:min(820px,100% - 32px);margin-inline:auto;font-size:17px;line-height:1.65}
.w-prose h2,.w-section h2{font-size:clamp(24px,3vw,34px);letter-spacing:-.03em;margin:48px 0 14px;padding-top:14px;border-top:2px solid var(--accent)}
.w-prose a{color:var(--accent-ink);text-underline-offset:3px}
html[data-theme="dark"] .w-prose a{color:var(--accent)}
/* Elenchi hub */
.w-list{list-style:none;margin:0 0 40px;padding:0;border-top:1px solid var(--text)}
.w-item a,.w-item.soon{display:grid;grid-template-columns:64px 1fr auto;gap:8px 16px;align-items:baseline;padding:22px 4px;border-bottom:1px solid var(--rule-strong);color:var(--text);text-decoration:none;transition:padding .2s,background .2s}
.w-item a:hover{padding-left:16px;background:var(--surface)}
.w-num{font:500 12px var(--mono);color:var(--accent)}
.w-txt b{display:block;font-size:clamp(20px,2.4vw,28px);letter-spacing:-.02em;font-weight:700}
.w-txt small{display:block;color:var(--muted);font-size:15px;margin-top:4px;max-width:62ch;line-height:1.45}
.w-go{font-size:22px;color:var(--accent)}
.w-item.soon{opacity:.5}.w-item.soon em{font:500 11px var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.w-section{margin-top:56px}
.w-cta,.w-btn{display:inline-flex;gap:12px;align-items:center;background:var(--accent);color:#0A0A0A;font-weight:800;letter-spacing:.1em;font-size:13px;padding:16px 24px;text-decoration:none;transition:transform .2s,background .2s}
.w-cta:hover,.w-btn:hover{background:#E6FF7A;transform:translateY(-2px)}
.w-foot{margin-top:40px}.w-foot.dim,.dim{color:var(--muted);font-size:14px;max-width:70ch}
.w-levels{list-style:none;margin:0 0 48px;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:0;border-top:1px solid var(--text)}
.w-levels li{padding:22px 16px 22px 0;border-bottom:1px solid var(--rule-strong);display:grid;gap:6px;align-content:start}
.w-levels b{font-size:22px;letter-spacing:.02em}.w-levels small{color:var(--muted)}.w-levels i{font:500 11px var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.w-levels .on i{color:var(--accent-ink)}.w-levels .off{opacity:.55}
.w-ev{grid-template-columns:1fr;margin-bottom:20px}.w-ev li{grid-template-columns:56px 1fr;padding:12px 0}
@media(max-width:700px){.w-levels{grid-template-columns:1fr 1fr}.w-item a,.w-item.soon{grid-template-columns:40px 1fr auto}}
.w-table{width:100%;border-collapse:collapse;margin:12px 0 20px;font-size:16px}.w-table th,.w-table td{text-align:left;padding:12px 10px 12px 0;border-bottom:1px solid var(--rule-strong);vertical-align:top}.w-table th{white-space:nowrap;color:var(--accent-ink)}
.w-src{padding-left:18px}.w-steps{padding-left:20px}.w-steps li{margin-bottom:14px}.w-note{color:var(--muted);font-size:14px}
/* Wolf Score (componente) */
.w-score-demo{display:grid;grid-template-columns:200px 1fr;gap:24px 40px;align-items:center;background:#0A0A0A;color:#F5F4EF;padding:28px;margin:24px 0}
.w-score-demo .w-kicker{grid-column:1/-1;margin:0}
.w-score-ring strong{font:800 96px/1 var(--sans);letter-spacing:-.06em}.w-score-ring span{color:#9a9992}
.w-score-demo ul{list-style:none;margin:0;padding:0;display:grid;gap:14px}.w-score-demo li span{font:600 11px var(--mono);letter-spacing:.14em}.w-score-demo i{display:block;height:6px;background:#2a2a2a;margin-top:6px;position:relative}.w-score-demo i:after{content:"";position:absolute;inset:0 auto 0 0;width:var(--v);background:var(--accent)}
@media(max-width:600px){.w-score-demo{grid-template-columns:1fr}}
/* Home */
.w-hero{background:#0A0A0A;color:#F5F4EF}
.w-hero-grid{width:min(1280px,100%);display:grid;grid-template-columns:1.1fr .9fr;min-height:min(78vh,720px)}
.w-hero-copy{padding:clamp(40px,7vw,96px) 28px;display:flex;flex-direction:column;justify-content:center;gap:0}
.w-hero h1{font-size:clamp(64px,11vw,168px);line-height:.86;letter-spacing:-.06em;font-weight:800;margin:0 0 36px;display:flex;flex-direction:column}
.w-hero h1 .acc{color:var(--accent)}
.w-serif{font-family:var(--serif);font-size:clamp(26px,3.2vw,40px);line-height:1.15;margin:0 0 14px}.w-serif em{color:#c9c8c1}
.w-strip{font:500 12px var(--mono);letter-spacing:.18em;text-transform:uppercase;color:#9a9992;margin:0 0 36px}
.w-hero-img{background-size:cover;background-position:60% 50%;filter:grayscale(1) contrast(1.15) brightness(.8);position:relative;min-height:320px}
.w-hero-img:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#0A0A0A 0,transparent 35%)}
.w-visual{position:absolute;right:16px;bottom:14px;font:500 10px var(--mono);letter-spacing:.2em;color:#F5F4EF;z-index:2;display:block!important}
@media(max-width:800px){.w-hero-grid{grid-template-columns:1fr}.w-hero-img{min-height:240px;order:2}.w-hero-copy{padding:44px 20px}}
.w-band{background:var(--bg);border-bottom:1px solid var(--rule-strong)}.w-band .wrap,.w-latest .wrap,.w-numbers .wrap,.w-score-home .wrap,.w-tiles .wrap{width:min(1280px,100% - 32px)}
.w-band .wrap{padding:88px 0}
.w-big{font-size:clamp(34px,6vw,84px);line-height:.98;letter-spacing:-.05em;font-weight:800;margin:0 0 28px;max-width:18ch}
.w-chips{list-style:none;display:flex;flex-wrap:wrap;gap:10px;margin:0;padding:0}.w-chips a{display:block;border:1px solid var(--text);padding:12px 18px;font:600 12px var(--mono);letter-spacing:.16em;color:var(--text);text-decoration:none;transition:background .2s,color .2s}.w-chips a:hover{background:var(--accent);border-color:var(--accent);color:#0A0A0A}
.w-latest .wrap{padding:72px 0}
.w-feature-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:0;border-top:1px solid var(--text)}
.w-feature{display:grid;gap:14px;padding:32px 32px 32px 0;color:var(--text);text-decoration:none;border-right:1px solid var(--rule-strong)}
.w-feature h3{font-size:clamp(28px,4vw,52px);letter-spacing:-.04em;line-height:1;margin:0;max-width:18ch}
.w-feature-sym{font:800 clamp(56px,9vw,120px)/.85 var(--sans);letter-spacing:-.06em;color:var(--accent)}
.w-meta{font:500 11px var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}
.w-side a{display:grid;gap:10px;padding:32px 0 32px 32px;color:var(--text);text-decoration:none;border-bottom:1px solid var(--rule-strong)}.w-side h3{font-size:24px;letter-spacing:-.02em;margin:0;line-height:1.1}
.w-feature:hover h3,.w-side a:hover h3{color:var(--accent-ink)}
@media(max-width:800px){.w-feature-grid{grid-template-columns:1fr}.w-feature{border-right:0;padding-right:0}.w-side a{padding-left:0}}
.w-numbers{background:#0A0A0A;color:#F5F4EF}.w-numbers .wrap{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;padding:72px 0}
.w-numbers strong{display:block;font:800 clamp(64px,10vw,150px)/.9 var(--sans);letter-spacing:-.06em;color:var(--accent);font-variant-numeric:tabular-nums}.w-numbers span{font:500 12px var(--mono);letter-spacing:.14em;text-transform:uppercase;color:#a9a8a1}
@media(max-width:700px){.w-numbers .wrap{grid-template-columns:1fr}}
.w-score-home .wrap{padding:88px 0;display:grid;gap:8px;justify-items:start}.w-score-home .w-big{max-width:20ch}
.w-tiles{border-top:1px solid var(--text)}.w-tiles ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr)}
.w-tiles a{display:grid;gap:6px;padding:32px 24px 32px 0;border-bottom:1px solid var(--rule-strong);color:var(--text);text-decoration:none;position:relative;transition:background .2s,padding .2s}.w-tiles a:hover{background:var(--surface);padding-left:16px}
.w-tiles b{font-size:clamp(32px,4vw,56px);letter-spacing:-.04em}.w-tiles small{color:var(--muted)}.w-tiles .w-go{position:absolute;right:20px;top:30px}
@media(max-width:800px){.w-tiles ul{grid-template-columns:1fr 1fr}}
/* Engine */
.w-engine{width:min(1280px,100% - 32px);padding:48px 0 88px;display:grid;grid-template-columns:minmax(260px,380px) 1fr;gap:0 56px;align-items:start}
.w-engine .w-foot{grid-column:1/-1}
.eng-form fieldset{border:0;border-top:1px solid var(--rule-strong);margin:0 0 24px;padding:14px 0 0}.eng-form legend{font:600 11px var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--accent);padding:0 12px 0 0}
.eng-form .fields{grid-template-columns:1fr 1fr;margin:10px 0}
.eng-form .field input,.eng-form .field select{border-radius:0;background:var(--surface);color:var(--text);border-color:var(--rule-strong)}
.eng-form .field label{font:500 11px var(--mono);letter-spacing:.06em}
.eng-checks{display:flex;gap:18px;flex-wrap:wrap;font-size:14px}.eng-checks label{display:flex;gap:6px;align-items:center}
.eng-out{min-width:0}
.eng-block{border-top:2px solid var(--accent);padding:18px 0 36px}.eng-block h3{font:800 clamp(34px,5vw,64px)/1 var(--sans);letter-spacing:-.05em;margin:0 0 18px}
.eng-block h4{font:600 11px var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin:24px 0 8px}
.eng-block .big-figures{gap:16px 48px;margin:8px 0 24px}.eng-block .big-figures strong{font:800 clamp(36px,5vw,72px)/1 var(--sans);letter-spacing:-.05em;color:var(--text);font-variant-numeric:tabular-nums}.eng-block .big-figures span{font:500 11px var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.eng-table{overflow-x:auto}.eng-table table{width:100%;border-collapse:collapse;font-size:15px;font-variant-numeric:tabular-nums}.eng-table th,.eng-table td{text-align:left;padding:10px 14px 10px 0;border-bottom:1px solid var(--rule-strong)}.eng-table thead th{font:600 11px var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.eng-table tbody th{font-weight:700}
.eng-note,.eng-empty{color:var(--muted);font-size:14px;max-width:70ch;line-height:1.5}.eng-warn{color:var(--accent);font-weight:600}
.eng-timeline{display:flex;flex-wrap:wrap;gap:6px}.eng-timeline span{font:500 13px var(--mono);border:1px solid var(--rule-strong);padding:6px 10px}
@media(max-width:900px){.w-engine{grid-template-columns:1fr}}
/* Filtri esplora */
.explore{display:grid;gap:10px;margin:0 0 24px;padding:16px 0;border-top:1px solid var(--rule-strong)}.explore label{font:500 11px var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);display:inline-flex;flex-direction:column;gap:4px;margin-right:14px}.explore select{font:inherit;padding:8px 10px;border:1px solid var(--rule-strong);background:var(--bg);color:var(--text);border-radius:0;min-width:140px}
.explore .row{display:flex;flex-wrap:wrap}
.explore-count{font:500 12px var(--mono);color:var(--muted)}
/* Barra laterale Wolf negli articoli */
.wolf-side{border:1px solid var(--text);background:#0A0A0A;color:#F5F4EF;padding:18px;margin:0 0 20px}.wolf-side h2{font:600 11px var(--mono)!important;letter-spacing:.2em;color:var(--accent)!important;border:0!important;margin:0 0 12px!important;padding:0!important}.wolf-side dl{margin:0;display:grid;gap:12px}.wolf-side dt{font:500 10px var(--mono);letter-spacing:.16em;color:#9a9992;text-transform:uppercase}.wolf-side dd{margin:2px 0 0;font-weight:700}
@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
@media(max-width:900px){.site-head .nav{flex-wrap:wrap;overflow:visible;gap:10px 18px}.site-head .nav a.nav-engine{flex:1 0 100%;text-align:center;margin:2px 0 0}}
.eng-my{margin:32px 0 8px;padding:20px;border:1px solid var(--rule-strong);max-width:640px}.eng-my-t{font:700 11px/1 var(--mono,monospace);letter-spacing:.12em;color:var(--accent);margin:0 0 10px}.eng-my-b{display:flex;gap:10px;flex-wrap:wrap;margin:12px 0}.eng-my-b button{font:inherit;font-weight:700;font-size:13px;letter-spacing:.04em;padding:12px 16px;background:var(--accent);color:#0A0A0A;border:0;cursor:pointer}.eng-my-b button#my-del{background:transparent;color:var(--text);border:1px solid var(--rule-strong)}
.foot-links{flex-wrap:wrap;row-gap:8px}

.w-tools{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid var(--text);border-left:1px solid var(--text)}
.w-tools a{display:grid;gap:8px;padding:22px 20px;border-right:1px solid var(--text);border-bottom:1px solid var(--text);color:var(--text);text-decoration:none;height:100%;box-sizing:border-box;transition:background .2s,color .2s}
.w-tools b{font:800 clamp(24px,3vw,36px) var(--sans,inherit);letter-spacing:-.03em}.w-tools span{color:var(--muted);font-size:15px;line-height:1.4}
.w-tools em{font:600 10px var(--mono);letter-spacing:.18em;font-style:normal;color:var(--accent)}.w-tools .dev em{color:var(--muted)}.w-tools .dev{opacity:.85}
.w-tools a:hover{background:var(--text);color:var(--bg)}.w-tools a:hover span{color:var(--bg)}
.w-start{border-top:1px solid var(--text)}.w-start .wrap{width:min(1280px,100% - 32px);padding:48px 0}
.w-start ol{list-style:none;margin:16px 0 0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.w-start a{display:grid;gap:6px;padding:20px 0;border-top:2px solid var(--accent);color:var(--text);text-decoration:none}.w-start b{font-size:clamp(28px,3.4vw,44px);letter-spacing:-.04em}.w-start small{color:var(--muted);font-size:15px}

@media(max-width:800px){.w-tools{grid-template-columns:1fr 1fr}.w-start ol{grid-template-columns:1fr}.w-hero-img{min-height:300px!important;background-position:78% 70%!important}}
@media(max-width:800px){.w-hero-copy{padding:32px 20px 28px!important}.w-hero h1{margin-bottom:20px!important}.w-band .wrap{padding:40px 0!important}.w-latest .wrap{padding:36px 0!important}.w-score-home .wrap{padding:44px 0!important}.w-start .wrap{padding:36px 0!important}.w-numbers .wrap{grid-template-columns:repeat(3,1fr)!important;gap:10px!important;padding:36px 0!important}.w-numbers strong{font-size:clamp(44px,15vw,64px)!important}.w-numbers span{font-size:10px!important;letter-spacing:.08em!important}.w-big{margin-bottom:20px!important}.w-feature,.w-side a{padding-top:20px!important;padding-bottom:20px!important}}
.w-hero,.w-band,.w-latest,.w-numbers,.w-score-home,.w-start{padding:0}
@media(max-width:800px){.w-hero-grid{min-height:0!important}.w-hero-img{margin-bottom:0}}
.w-rules{margin:0 0 16px;padding-left:22px;display:grid;gap:8px}
/* contrast: darker accent ink for small text on light backgrounds, dark text on orange fills */
html:not([data-theme="dark"]) :is(.w-band,.w-latest,.w-score-home,.w-start) .w-kicker,html:not([data-theme="dark"]) .w-tools em,html:not([data-theme="dark"]) .major,html:not([data-theme="dark"]) .prose a:not(.btn),html:not([data-theme="dark"]) .sources a,html:not([data-theme="dark"]) .art-body .brief h2,html:not([data-theme="dark"]) .art-toc-m summary,html:not([data-theme="dark"]) .art-related h2{color:#5A7300}
html:not([data-theme="dark"]) :is(.w-tools .dev span,.w-tools .dev em,.w-meta,.art-related span,.w-tools span){color:#555f59}
.nav .nav-engine,.filter button[aria-pressed="true"]{color:#0A0A0A!important}
.w-numbers .wrap{grid-template-columns:repeat(4,1fr)!important}.w-num-note{grid-column:1/-1;margin:0;font:500 12px var(--mono);letter-spacing:.08em;color:#a9a8a1}
@media(max-width:800px){.w-numbers .wrap{grid-template-columns:1fr 1fr!important}}
.w-tools .dev{opacity:1}
html:not([data-theme="dark"]) .w-feature .w-go,html:not([data-theme="dark"]) .w-side .w-go{color:#5A7300}
html:not([data-theme="dark"]) .w-num{color:#5A7300}
html:not([data-theme="dark"]) .w-numbers .w-num,html:not([data-theme="dark"]) .wolf-side .w-num{color:inherit}
.wolf-side dd small{font-weight:400;font-size:12px;color:#c9c8c0;line-height:1.35;display:block;margin-top:2px}
/* Identità WOLFLAB: logo in header e footer, due fondi */
.brand .brand-img{display:block;height:44px;width:auto}.brand-on-light{display:none!important}
html:not([data-theme="dark"]) .brand-on-light{display:block!important}html:not([data-theme="dark"]) .brand-on-dark{display:none!important}
@media(max-width:900px){.brand .brand-img{height:36px}}
@media(max-width:380px){.brand .brand-img{height:30px}}
html:not([data-theme="dark"]) .w-feature-sym{color:#5A7300}
/* Foto hero con logo WOLFLAB sovrapposto (come da tavola identità). Il filtro sta sullo strato foto, non sul logo. */
.w-hero-img{filter:none!important;background-image:none!important;overflow:hidden}
.w-hero-img:before{content:"";position:absolute;inset:0;background:url(/assets/hero-trail-1600.jpg) 76% 50%/cover no-repeat}
.w-hero-img:after{z-index:1;background:linear-gradient(90deg,#0A0A0A 0,transparent 35%),linear-gradient(180deg,rgba(8,8,8,.7) 0,rgba(8,8,8,0) 48%)}
.w-hero-logo{position:absolute;z-index:2;top:clamp(20px,4vw,44px);right:clamp(20px,3vw,40px);width:min(340px,62%);height:auto;filter:drop-shadow(0 2px 14px rgba(0,0,0,.55))}
@media(max-width:800px){.w-hero-logo{top:18px;right:auto;left:20px;width:min(260px,70%)}}
@media(max-width:800px){.w-hero-img:before{background-image:url(/assets/hero-trail-900.jpg);background-position:76% 50%}.sport-photo{background-image:url(/assets/hero-trail-900.jpg)}}

.w-tools li:last-child:nth-child(3n+1){grid-column:1/-1}
@media(max-width:800px){.w-hero h1{font-size:clamp(40px,12.2vw,64px);white-space:nowrap}}
@media(max-width:600px){.site-head .nav{gap:10px 14px}.site-head .nav a:not(.nav-engine){font-size:11px;letter-spacing:.08em}}
.css-calc{display:grid;gap:12px;margin:16px 0}.css-row{display:grid;grid-template-columns:1fr 1fr;gap:6px 12px}.css-row label{font-size:13px;color:var(--muted)}.css-calc input{font:inherit;padding:12px;border:1px solid var(--text);background:transparent;color:var(--text);min-width:0}.css-calc button{justify-self:start;font:800 13px var(--sans,inherit);letter-spacing:.1em;padding:14px 22px;background:var(--accent);color:#0A0A0A;border:0;cursor:pointer}.css-out{margin:8px 0 24px}.css-out.err{border-left:3px solid #E5484D;padding:4px 14px}.css-out.ok{border-left:3px solid var(--accent);padding:4px 14px}
.w-body{padding-top:28px}.w-section{margin-top:12px}.w-section h2{margin-top:20px!important}.w-list{margin-bottom:16px}
.w-body .w-section{padding-block:0!important}

/* Hero multisport (scena A). Logo in fascia scura sopra l'immagine: non copre i volti. */
.w-hero-img{background:#0A0A0A!important;filter:none!important;min-height:min(78vh,720px)}
.w-hero-img:before{inset:84px 0 0 0!important;background:url(/assets/hero-multisport-a-1200.jpg) 50% 62%/cover no-repeat!important}
.w-hero-img:after{inset:84px 0 0 0!important;background:linear-gradient(90deg,#0A0A0A 0,transparent 14%)!important}
.w-hero-logo{top:22px!important;left:clamp(20px,3vw,40px)!important;right:auto!important;width:min(260px,62%)!important;filter:none!important}
.w-hero-cap-unused{position:absolute;z-index:2;right:14px;bottom:12px;font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:#F5F4EF;opacity:.8;background:rgba(10,10,10,.55);padding:3px 7px}
.sport-photo.w-hero-img{background-image:none!important}
@media(max-width:800px){.w-hero-img{min-height:620px!important}.w-hero-img:before{background:url(/assets/hero-multisport-a-800.jpg) 50% 85%/cover no-repeat!important;inset:84px 0 0 0!important}}
.sport-photo .w-hero-cap-unused{display:block!important}
/*picks-start*/
.pk-chips{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0}.pk-chips span{font:500 12px var(--mono);border:1px solid var(--rule-strong);padding:6px 10px;color:var(--muted)}.pk-chips b{color:var(--text);letter-spacing:.1em;margin-right:6px}
.pk-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin:24px 0}.pk-card{border-top:1px solid var(--text);padding-top:14px}.pk-card h3{margin:0 0 10px;font-size:22px}.pk-card ul{padding:0;margin:0}.pk-card li{list-style:none;padding:8px 0;border-bottom:1px solid var(--rule-strong)}.pk-card a{color:var(--text)}.pk-card small{display:block;color:var(--muted)}
.pk-tbl{width:100%;border-collapse:collapse;margin:12px 0}.pk-tbl th,.pk-tbl td{border-bottom:1px solid var(--rule-strong);padding:12px 10px;text-align:left;vertical-align:top}.pk-tbl thead th{font:600 12px var(--mono);letter-spacing:.1em;text-transform:uppercase}.pk-scroll{overflow-x:auto}
.pk-box{border:1px solid var(--rule-strong);padding:18px;margin:18px 0}.pk-box h3{margin:0 0 8px}.pk-box a{color:var(--text)}.pk-two{display:grid;grid-template-columns:1fr;gap:0}@media(min-width:701px){.pk-two{grid-template-columns:1fr 1fr;gap:18px}}
.pk-note{font-size:13px;color:var(--muted);border-left:3px solid var(--accent);padding-left:12px;margin:14px 0}
@media(max-width:700px){.pk-grid{grid-template-columns:1fr}.pk-tbl{font-size:13px}.pk-scroll .pk-tbl{min-width:640px}.pk-scroll .pk-tbl thead th,.pk-scroll .pk-tbl td{min-width:150px;overflow-wrap:normal;word-break:normal}.pk-scroll .pk-tbl tbody th{min-width:110px}}
.pk-quick{border-bottom:1px solid var(--rule-strong)}.pk-quick .wrap{display:flex;flex-wrap:wrap;gap:8px 28px;padding:16px 0}.pk-quick a{font:500 12px var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--text);text-decoration:none}.pk-quick a:hover{text-decoration:underline}
.w-btns{display:flex;gap:12px;flex-wrap:wrap;margin:0}.w-btn-ghost{background:transparent!important;color:#F5F4EF!important;border:1px solid #F5F4EF}.w-btn-ghost:hover{background:#F5F4EF!important;color:#0A0A0A!important}
@media(min-width:801px){.w-hero-grid{grid-template-columns:minmax(0,1fr) minmax(0,.92fr)!important}.w-hero h1{font-size:clamp(48px,6.3vw,100px)!important}.w-hero-img:before{background-position:50% 62%!important}}
@media(max-width:900px){.site-head .nav a.nav-engine{flex:0 0 auto!important;margin:0!important;padding:4px 10px!important}}
@media(max-width:560px){.site-head .nav{gap:6px 12px!important}.site-head .nav a{font-size:11px!important;letter-spacing:.04em!important}.site-head .nav a.nav-engine{padding:3px 8px!important}}
/*picks-end*/

/* mobile: evidence list and tables must not overflow */
.w-levels.w-ev{grid-template-columns:minmax(0,1fr)}.w-levels.w-ev li{grid-template-columns:48px minmax(0,1fr)}.w-levels.w-ev b{font-size:18px;overflow-wrap:anywhere}
@media(max-width:700px){.w-table{display:table;width:100%;font-size:14px;overflow-wrap:break-word}.w-table td:first-child{min-width:5.5em}.w-table th{white-space:normal}.w-table th,.w-table td{padding-right:8px}}

/* pilastri */
.pl-lead{font:500 clamp(18px,2.4vw,26px)/1.3 var(--sans);margin:0;color:inherit;opacity:.85}
.pl-hero{padding-block:72px 56px}.pl-hero h1{margin-bottom:20px}
.pl-cards-wrap{background:var(--bg)}
.pl-cards{display:grid;grid-template-columns:1fr 1fr;gap:16px;width:min(1280px,100% - 32px);padding:40px 0}
.pl-card{display:flex;flex-direction:column;justify-content:space-between;min-height:220px;padding:28px;background:#0A0A0A;color:#F5F4EF;text-decoration:none;border:1px solid var(--rule-strong);transition:transform .2s,border-color .2s}
.pl-card:hover{border-color:var(--accent);transform:translateY(-2px)}
.pl-card-t{font-weight:800;font-size:clamp(34px,5vw,64px);letter-spacing:-.04em;line-height:1}
.pl-card-s{font:500 13px var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--accent);margin-top:8px}
.pl-card .w-go{align-self:flex-end;font-size:28px;color:var(--accent)}
.pl-engine{width:min(1280px,100% - 32px);padding:64px 0}
.pl-engine .w-big{margin:0 0 12px}
.pl-engine .w-btns{margin-top:28px}
.pl-race{width:min(1280px,100% - 32px);padding:32px 0;display:flex;align-items:center;gap:24px;flex-wrap:wrap}
.pl-race .w-kicker{margin:0}
.pl-blocks{display:grid;grid-template-columns:1fr 1fr;gap:0 48px}
.pl-h{font:600 12px/1 var(--mono);letter-spacing:.2em;color:var(--accent-ink);margin:0 0 14px}
[data-theme="dark"] .pl-h{color:var(--accent)}
.pl-block .w-list{margin-bottom:36px}
.pl-more{margin:8px 0 0;display:flex;gap:24px;flex-wrap:wrap}.pl-more a{font-weight:700;color:var(--text);text-decoration:none;border-bottom:2px solid var(--accent)}
.pl-rows{list-style:none;margin:0;padding:0;border-top:1px solid var(--text)}
.pl-row[hidden]{display:none}
.pl-row a{display:grid;grid-template-columns:190px 1fr auto;gap:12px;align-items:baseline;padding:18px 4px;border-bottom:1px solid var(--rule-strong);color:var(--text);text-decoration:none}
.pl-row a:hover{background:var(--surface)}.pl-row small{color:var(--muted)}
.pl-tag{font:600 11px var(--mono);letter-spacing:.14em;color:var(--accent-ink)}[data-theme="dark"] .pl-tag{color:var(--accent)}
.pl-filters{display:grid;gap:10px;margin:0 0 28px}.pl-filters>div{display:flex;gap:8px;flex-wrap:wrap}
.pl-chip{font:600 12px var(--mono);letter-spacing:.1em;padding:10px 14px;background:transparent;color:var(--text);border:1px solid var(--rule-strong);cursor:pointer}
.pl-chip[aria-pressed="true"]{background:var(--accent);color:#0A0A0A;border-color:var(--accent)}
@media(max-width:700px){.pl-cards{grid-template-columns:1fr 1fr;gap:10px;padding:24px 0}.pl-card{min-height:150px;padding:18px}.pl-blocks{grid-template-columns:1fr}.pl-row a{grid-template-columns:1fr auto}.pl-row .pl-tag{grid-column:1/-1}.pl-hero{padding-block:44px 32px}}
.pl-block,.pl-cards-wrap{padding:0}.pl-cards-wrap .pl-cards{padding:32px 0}
.pl-cards,.pl-engine,.pl-race{margin-inline:auto}
.pl-hero{width:min(1280px,100% - 32px);margin-inline:auto;padding-inline:0}.pl-hero h1{padding:0}
.pl-cards,.pl-engine,.pl-race{box-sizing:border-box;width:calc(100% - 32px);max-width:1280px;margin-inline:auto}

.pl-blocks{align-items:start;gap:16px}
.pl-d{border:1px solid var(--rule-strong);background:var(--surface-2,transparent)}
.pl-d summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;padding:24px 22px;font:800 clamp(22px,3vw,34px)/1 var(--sans);letter-spacing:-.03em}
.pl-d summary::-webkit-details-marker{display:none}
.pl-d summary em{font:600 12px var(--mono);color:var(--accent-ink);font-style:normal;letter-spacing:.1em}
[data-theme="dark"] .pl-d summary em{color:var(--accent)}
.pl-d summary::after{content:'+';font:400 28px var(--sans);margin-left:16px}
.pl-d[open] summary::after{content:'−'}
.pl-d[open]{border-color:var(--accent)}
.pl-d .w-list{margin:0;padding:0 18px 8px}
.pl-d summary span{flex:1}
.pl-ic{color:var(--accent);margin-bottom:auto;display:block}.pl-card{gap:14px}.pl-card-t{margin-top:12px}
.pl-empty{margin:0;padding:14px 0 18px;color:var(--muted);font-size:15px}
/* Desktop gutters: every container aligns to the header (28px inside a 1280px box). */
@media(min-width:901px){body .wrap,body .w-body,body .w-page-hero .wrap,body .w-band .wrap,body .w-latest .wrap,body .w-numbers .wrap,body .w-score-home .wrap,body .w-tiles .wrap,body .w-start .wrap{width:min(1224px,100% - 56px)}}
.page.news { padding-top: 0; }

/* Restore the previously selected multisport image without cropping any discipline. */
.pl-hero-with-image{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center}.pl-hero-picture{display:block;line-height:0;text-align:center}.pl-hero-picture img{display:block;width:100%;height:auto;max-height:600px;object-fit:contain}.pl-hero-text{min-width:0}@media(max-width:800px){.pl-hero-with-image{grid-template-columns:1fr;gap:28px}.pl-hero-picture img{max-height:none;width:100%;height:auto}}

/* Read-only exercise catalogue, grouped by muscle. */
.exercise-groups{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:24px}.exercise-groups a{border:1px solid var(--rule-strong);padding:9px 12px;color:var(--text);text-decoration:none;font-size:14px}.exercise-groups a:hover{border-color:var(--accent)}.exercise-filters{display:flex;align-items:end;gap:16px;flex-wrap:wrap;margin-bottom:30px}.exercise-filters label{display:grid;gap:8px;font-size:14px;flex:1;min-width:180px}.exercise-filters input,.exercise-filters select,.exercise-filters button{font:inherit;padding:12px;background:var(--surface);color:var(--text);border:1px solid var(--rule-strong);min-height:44px}.exercise-filters button{cursor:pointer}.exercise-muscle{scroll-margin-top:24px;padding:20px 0 30px}.exercise-muscle h2{margin-top:0}.exercise-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));list-style:none;padding:0;gap:14px}.exercise-card{border:1px solid var(--rule-strong);padding:20px;min-width:0}.exercise-card h3{font-size:20px;margin:0 0 20px;line-height:1.25}.exercise-card dl{margin:0}.exercise-card dl>div{margin-top:12px}.exercise-card dt{font-size:12px;color:var(--muted)}.exercise-card dd{font-size:15px;margin:3px 0 0}.exercise-card[hidden],.exercise-muscle[hidden]{display:none}@media(max-width:800px){.exercise-cards{grid-template-columns:1fr 1fr}}@media(max-width:500px){.exercise-cards{grid-template-columns:1fr}.exercise-filters{gap:12px}.exercise-filters label{min-width:100%;}.exercise-card{padding:18px}}

/* Compact endurance hubs: title, four disclosures and article link in one panel. */
.discipline-panel{margin-block:28px 64px;padding:30px 28px 24px;border:1px solid var(--rule-strong);border-radius:18px;background:var(--surface-2,transparent)}
.discipline-panel h1{font-size:clamp(32px,4vw,48px);line-height:1.05;letter-spacing:-.035em;margin:12px 0 24px}
.discipline-panel .w-kicker{margin:0}
.discipline-panel .pl-d summary{min-height:96px;padding:24px;font-size:clamp(20px,2.5vw,30px)}
.discipline-panel .pl-more{margin-bottom:0}
@media(max-width:700px){.discipline-panel{padding:24px 16px 22px;margin-block:20px 40px;border-radius:14px}.discipline-panel .pl-d summary{min-height:76px;padding:20px}.discipline-panel .pl-blocks{gap:12px}}
.discipline-panel .w-kicker{color:var(--accent-ink)}
[data-theme="dark"] .discipline-panel .w-kicker{color:var(--accent)}

.exercise-technique{margin-top:18px;border-top:1px solid var(--rule-strong);padding-top:14px}.exercise-technique summary{font-weight:700;cursor:pointer}.exercise-technique h4{font-size:16px;margin:20px 0 10px}.exercise-technique p,.exercise-technique li{font-size:15px;line-height:1.6}.exercise-technique ol,.exercise-technique ul{padding-left:20px}.exercise-technique li{margin-bottom:10px}.exercise-filters{align-items:end}
/* User reference composition: generous 2x2 panels, quiet type, full-width section. */
.discipline-panel{width:calc(100% - 28px)!important;max-width:none;margin:18px 14px 42px;padding:32px;border:0;border-radius:24px;background:var(--bg)}
.discipline-panel header .w-kicker{font:600 24px/1.3 var(--sans);letter-spacing:0;text-transform:uppercase;margin:0 0 16px}
.discipline-panel h1{font:600 clamp(32px,3.2vw,48px)/1.16 var(--sans);letter-spacing:0;max-width:none;margin:0 0 28px;text-wrap:initial}
.discipline-panel .pl-blocks{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.discipline-panel .pl-d{background:transparent;border:2px solid var(--rule-strong)}
.discipline-panel .pl-d summary{min-height:200px;align-items:flex-start;padding:30px 24px;font:600 clamp(24px,2.15vw,34px)/1.25 var(--sans);letter-spacing:0}
.discipline-panel .pl-d summary::after{font:400 36px/1 var(--sans);margin:0 4px 0 18px}
.discipline-panel .pl-d .w-list{padding:0 24px 16px}
.discipline-panel .pl-more{margin:16px 0 0;font:600 clamp(22px,2.1vw,32px)/1.3 var(--sans)}
.discipline-panel .pl-more a{color:var(--accent-ink);text-decoration:none;border:0}
[data-theme="dark"] .discipline-panel{background:#0a0a0a}
[data-theme="dark"] .discipline-panel .pl-d{border-color:#555}
[data-theme="dark"] .discipline-panel .pl-more a{color:var(--accent)}
@media(max-width:700px){.discipline-panel{margin:14px 10px 32px;width:calc(100% - 20px)!important;padding:24px 18px;border-radius:20px}.discipline-panel header .w-kicker{font-size:18px;margin-bottom:14px}.discipline-panel h1{font-size:32px;margin-bottom:24px}.discipline-panel .pl-blocks{grid-template-columns:1fr;gap:14px}.discipline-panel .pl-d summary{min-height:144px;padding:24px 20px;font-size:24px}.discipline-panel .pl-more{font-size:23px}.discipline-panel .pl-d summary::after{font-size:30px}}

/* Reference descriptions restored by explicit owner correction. */
.discipline-panel h1{margin-bottom:18px}
.discipline-panel .discipline-lead{font:400 clamp(22px,2.1vw,30px)/1.4 var(--sans);color:var(--muted);margin:0 0 12px}
.discipline-panel .pl-d summary{display:grid;grid-template-columns:1fr auto;grid-template-rows:min-content min-content;gap:22px 14px;align-content:start;min-height:216px}
.discipline-panel .discipline-summary-title{grid-column:1;grid-row:1;flex:initial}
.discipline-panel .discipline-summary-desc{grid-column:1/-1;grid-row:2;font:400 clamp(18px,1.65vw,26px)/1.4 var(--sans);color:var(--muted);letter-spacing:0}
.discipline-panel .pl-d summary::after{grid-column:2;grid-row:1}
[data-theme="dark"] .discipline-panel .discipline-lead,[data-theme="dark"] .discipline-panel .discipline-summary-desc{color:#bdbdbd}
@media(max-width:700px){.discipline-panel .pl-d summary{min-height:174px;gap:20px 12px}.discipline-panel .discipline-lead{font-size:21px}.discipline-panel .discipline-summary-desc{font-size:19px}}

.discipline-panel{color:#f5f4ef;background:#0a0a0a!important}
.discipline-panel header .w-kicker,.discipline-panel .pl-more a{color:#d6ff35!important}
.discipline-panel .pl-d{border-color:#555!important}
.discipline-panel .discipline-lead,.discipline-panel .discipline-summary-desc{color:#bdbdbd!important}
.discipline-panel .pl-d summary{color:#f5f4ef}
.discipline-panel .pl-d .w-txt,.discipline-panel .pl-d .w-txt b{color:#f5f4ef}
.discipline-panel .pl-d .w-txt small,.discipline-panel .w-go{color:#bdbdbd}
.discipline-panel[data-discipline="STRENGTH"]{margin:38px 42px 42px;width:calc(100% - 84px)!important;outline:2px solid #262626;outline-offset:24px}
.discipline-panel[data-discipline="STRENGTH"] .pl-d summary{min-height:200px}
.discipline-panel[data-discipline="STRENGTH"] .pl-d summary::after{display:none}
@media(max-width:700px){.discipline-panel[data-discipline="STRENGTH"]{margin:24px 18px 32px;width:calc(100% - 36px)!important;outline-offset:10px}.discipline-panel[data-discipline="STRENGTH"] .pl-d summary{min-height:174px}}

/* Fidelity pass against owner reference screenshots (RUN, STRENGTH). */
[data-theme="dark"] body:has(.discipline-panel){background:#000}
.discipline-panel header .w-kicker{font:600 clamp(16px,1.45vw,22px)/1.3 var(--sans)}
.discipline-panel h1{font:500 clamp(32px,3vw,46px)/1.16 var(--sans)}
.discipline-panel[data-discipline="STRENGTH"] h1{font-weight:700;font-size:clamp(30px,2.6vw,40px)}
.discipline-panel .discipline-lead{font:400 clamp(18px,1.85vw,28px)/1.4 var(--sans)}
.discipline-panel .pl-d{border-width:1.5px}
.discipline-panel .pl-d summary{font:500 clamp(20px,1.85vw,28px)/1.25 var(--sans)}
.discipline-panel .discipline-summary-desc{font:400 clamp(16px,1.39vw,21px)/1.4 var(--sans)}
.discipline-panel .pl-more{font:500 clamp(20px,2vw,30px)/1.3 var(--sans)}
@media(max-width:700px){.discipline-panel header .w-kicker{font-size:16px}.discipline-panel h1,.discipline-panel[data-discipline="STRENGTH"] h1{font-size:30px}.discipline-panel .discipline-lead{font-size:19px}.discipline-panel .pl-d summary{font-size:22px}.discipline-panel .discipline-summary-desc{font-size:17px}.discipline-panel .pl-more{font-size:21px}}

/* Home hero cards: icon beside the name, no descriptions. */
.pl-card-h{display:flex;align-items:center;gap:clamp(12px,1.6vw,22px)}
.pl-ico{flex:none;width:clamp(30px,3.6vw,52px);height:auto;color:#F5F4EF}
@media(max-width:700px){.pl-card-h{gap:10px}.pl-ico{width:26px}}
@media(max-width:700px){.pl-card{padding:14px}.pl-card-t{font-size:21px}.pl-card-h{gap:8px;flex-wrap:nowrap}.pl-ico{width:22px}.pl-card-t{min-width:0}}
.pl-ico{width:clamp(36px,4.4vw,62px);stroke-width:1.6}
@media(max-width:700px){.pl-ico{width:24px}}
.pl-ico{width:clamp(30px,3.4vw,48px);height:auto;stroke:none}
@media(max-width:700px){.pl-ico{width:24px}}
/* hub: the panel is always dark, so hover and focus must stay dark in both themes */
.discipline-panel .w-item a:hover,.discipline-panel .w-item a:focus-visible{background:#1d1d1d!important;color:#f5f4ef}
.discipline-panel .w-item a:hover .w-txt,.discipline-panel .w-item a:hover .w-txt b,.discipline-panel .w-item a:focus-visible .w-txt,.discipline-panel .w-item a:focus-visible .w-txt b{color:#f5f4ef!important}
.discipline-panel .w-item a:hover .w-go,.discipline-panel .w-item a:focus-visible .w-go{color:#d6ff35!important}
.discipline-panel .w-item a:focus-visible,.discipline-panel .pl-d summary:focus-visible,.discipline-panel .pl-more a:focus-visible{outline:2px solid #d6ff35;outline-offset:-2px}
.exercise-card .exercise-variant{margin:6px 0 10px;font-size:13px;line-height:1.4;color:var(--muted)}
.pk-hint{display:none;margin:8px 0 0;font:600 12px var(--mono);letter-spacing:.06em;color:var(--mute,#666)}.pk-hint span{color:var(--accent-ink,#4a5a00)}
.pk-scroll:focus-visible{outline:2px solid currentColor;outline-offset:2px}
@media(max-width:700px){.pk-hint{display:block}.pk-scroll{background:linear-gradient(to right,var(--bg) 30%,transparent),linear-gradient(to left,var(--bg) 30%,transparent) 100% 0,radial-gradient(farthest-side at 0 50%,rgba(0,0,0,.28),transparent),radial-gradient(farthest-side at 100% 50%,rgba(0,0,0,.28),transparent) 100% 0;background-repeat:no-repeat;background-size:44px 100%,44px 100%,16px 100%,16px 100%;background-attachment:local,local,scroll,scroll}}

.r-name small.r-elev{color:var(--muted);margin-top:2px}
.r-cov{max-width:60ch;margin:-12px 0 24px}

.r-dist small.r-elev{display:block;font-family:inherit;font-size:.8rem;color:var(--muted);margin-top:2px}
