.fitness-catalog-card { display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:24px;padding:24px;border:1px solid var(--sf-border);border-radius:20px;background:var(--sf-panel);color:var(--sf-text); }
.fitness-catalog-card h3 { margin:0 0 8px;font-size:1.4rem; }
.fitness-catalog-card p { max-width:680px;margin:0 0 8px; }
.fitness-catalog-card .eyebrow { font-size:.7rem; }
.fitness-catalog-card .button { flex:none; }
.fitness-page { padding:50px 0 80px; }
.fitness-hero { max-width:860px;padding:20px 0 50px; }
.fitness-lede { max-width:750px;font-size:1.3rem; }
.fitness-actions { display:flex;flex-wrap:wrap;gap:14px;align-items:center;margin:28px 0 16px; }
.fitness-secondary { display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 20px;border:1px solid var(--sf-border);border-radius:999px;text-decoration:none;color:var(--sf-text);background:var(--sf-surface);font-size:.85rem;font-weight:600; }
.fitness-secondary:hover { background:var(--sf-hover); }
.fitness-note { color:var(--sf-muted);font-size:.875rem;max-width:720px; }
.fitness-grid { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px; }
.fitness-grid article { padding:24px;border:1px solid var(--sf-border);border-radius:20px;background:var(--sf-panel); }
.fitness-grid h2 { font-size:1.35rem;line-height:1.3; }
.fitness-grid p:last-child { margin-bottom:0; }
.fitness-details { display:grid;grid-template-columns:1fr 1.4fr;gap:40px;padding:50px 0; }
.fitness-details h2,.fitness-preview-callout h2 { font-size:1.8rem;line-height:1.2; }
.fitness-preview-callout { display:flex;align-items:center;justify-content:space-between;gap:28px;padding:28px;border:1px solid var(--sf-border);border-radius:20px;background:var(--sf-panel); }
.fitness-preview-callout p { max-width:760px; }
.fitness-preview-callout .button { flex:none; }
.fitness-page [hidden] { display:none!important; }
@media(max-width:700px) { .fitness-catalog-card,.fitness-preview-callout { align-items:flex-start;flex-direction:column; } .fitness-grid,.fitness-details { grid-template-columns:1fr; } .fitness-details { gap:10px; } .fitness-page { padding-top:24px; } .fitness-lede { font-size:1.1rem; } }
