/* Scoped fitness editorial layout; shared CTA geometry stays unchanged. */
.fitness-page{--fitness-ink:#102e49;--fitness-lime:#b9e36d}
.fitness-page .ins-hero{background:radial-gradient(circle at 92% 12%,#b9e36d55 0,transparent 34%),#e4f2eb;color:#102e49}
.fitness-page .ins-hero h1{max-width:900px;color:#102e49}
.fitness-page .ins-hero p,.fitness-page .ins-hero .crumb{color:#405a6b}
.fitness-page .fitness-intro{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:44px;align-items:center}
.fitness-page .fitness-intro img{display:block;width:100%;height:245px;object-fit:contain;border:0;border-radius:28px;mix-blend-mode:multiply}
.fitness-page .activity-grid,.fitness-page .fitness-cover-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:28px 0}
.fitness-page .activity-tile{display:flex;gap:16px;align-items:center;padding:22px;border-radius:18px;background:#fff;box-shadow:0 8px 22px #102e4913;border:1px solid #102e490d;min-width:0}
.fitness-page .activity-tile p{margin:0;color:#102e49;font-weight:700;line-height:1.45}
.fitness-page .activity-icon{display:grid;place-items:center;flex:0 0 48px;height:48px;background:#b9e36d;border-radius:50%;color:#102e49}
.fitness-page .activity-icon svg{width:29px;height:29px}
.fitness-page .fitness-pullquote{border-left:5px solid #b9e36d;padding:20px 26px;background:#102e49;color:#fff!important;font-size:clamp(21px,2.6vw,29px);line-height:1.35;font-weight:700;border-radius:0 18px 18px 0;margin:28px 0}
.fitness-page .fitness-cover-grid>.ins-item{display:block;padding:16px 18px;background:#ffffffa6;border:0;border-left:3px solid #74a43f;border-radius:0 12px 12px 0;box-shadow:none}
.fitness-page .fitness-cover-grid .ins-icon{display:none}
.fitness-page .fitness-cover-grid p{margin:0}
.fitness-page .fitness-score-wrap{display:block}
.fitness-page .fitness-score,.fitness-page .fitness-rewards{width:100%;max-width:none;padding:0;border:0;box-shadow:none;background:transparent}
.fitness-page .fitness-score>h3,.fitness-page .fitness-rewards>h3{font-size:clamp(28px,3vw,38px);letter-spacing:-.035em;margin:0 0 26px}
.fitness-page .fitness-points{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;align-items:start}
.fitness-page .fitness-point-card{padding:26px;background:#fff;border-radius:22px;box-shadow:0 12px 28px #102e4919;border-top:5px solid #b9e36d;min-width:0}
.fitness-page .fitness-point-card:nth-child(2){background:#e4f2eb;border-color:#6b9b7d}
.fitness-page .fitness-point-card:nth-child(3){background:#102e49;border-color:#b9e36d;--aligned-heading:#fff;--aligned-copy:#edf5f1}
.fitness-page .point-number{display:grid;place-items:center;width:68px;height:68px;border-radius:50%;background:#b9e36d;color:#102e49;font-size:40px;font-weight:800;margin-bottom:18px;line-height:1}
.fitness-page .fitness-point-card h3{font-size:22px;line-height:1.25;margin:0 0 18px}
.fitness-page .fitness-point-card .ins-icon{display:none}
.fitness-page .point-list{display:block}
.fitness-page .fitness-point-card .ins-item{display:block;border:0;border-bottom:1px solid #889f9a45;border-radius:0;box-shadow:none;background:none;padding:11px 0;margin:0}
.fitness-page .fitness-point-card p{margin:0;font-size:16px;line-height:1.6}
.fitness-page .fitness-rewards{margin-top:48px}
.fitness-page .reward-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;align-items:start}
.fitness-page .reward-group{padding:25px 28px;background:#fff;box-shadow:0 10px 26px #102e4914;border-radius:20px;border:1px solid #102e4912}
.fitness-page .reward-group h4{font-size:23px;margin:0 0 16px;border-bottom:3px solid #b9e36d;padding-bottom:15px}
.fitness-page .reward-group .ins-item{display:block;background:none;border:0;border-radius:0;box-shadow:none;padding:10px 0 10px 20px;position:relative}
.fitness-page .reward-group .ins-item:before{content:'';position:absolute;left:0;top:20px;width:7px;height:7px;border-radius:50%;background:#6c963a}
.fitness-page .reward-group p{margin:0;line-height:1.6}
.fitness-page .fitness-provider-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:start;margin-top:26px}
.fitness-page .fitness-provider{background:#fff;border-radius:22px;box-shadow:0 12px 28px #102e4919;padding:28px;min-width:0}
.fitness-page .fitness-provider:nth-child(3n+2){background:#102e49;--aligned-heading:#fff;--aligned-copy:#edf5f1}
.fitness-page .fitness-provider:nth-child(3n){background:#d7edb7}
.fitness-page .fitness-provider h3{font-size:26px;line-height:1.2;margin:0 0 20px;padding-bottom:18px;border-bottom:1px solid #839b8f66}
.fitness-page .provider-benefits{display:block}
.fitness-page .provider-benefits .ins-item{display:block;border:0;border-radius:0;background:none;box-shadow:none;padding:10px 0}
.fitness-page .provider-benefits p{margin:0;line-height:1.65}
.fitness-page .provider-benefits a{color:inherit;text-decoration:underline;text-underline-offset:3px}
.fitness-page .fitness-summary{margin-top:32px;padding:28px;border:1px solid #102e4920;border-radius:18px;background:#ffffff88}
.fitness-page .fitness-summary h3{font-size:28px}
.fitness-page .fitness-summary p{max-width:850px}
@media(max-width:900px){.fitness-page .activity-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.fitness-page .fitness-intro{grid-template-columns:minmax(0,1fr) 220px;gap:24px}.fitness-page .fitness-points{grid-template-columns:1fr}.fitness-page .fitness-point-card{padding:24px}.fitness-page .fitness-point-card .point-number{float:right;margin:0 0 18px 18px}}
@media(max-width:600px){.fitness-page .fitness-intro,.fitness-page .fitness-provider-grid,.fitness-page .reward-groups,.fitness-page .fitness-cover-grid{grid-template-columns:1fr}.fitness-page .fitness-intro img{height:210px;max-width:280px;margin:auto}.fitness-page .activity-grid{gap:10px}.fitness-page .activity-tile{flex-direction:column;align-items:flex-start;padding:18px 14px;gap:12px}.fitness-page .activity-tile p{font-size:15px}.fitness-page .fitness-provider,.fitness-page .reward-group{padding:24px}.fitness-page .fitness-provider-grid{gap:18px}}
.fitness-page .fitness-provider .provider-benefits,.fitness-page .fitness-provider .provider-benefits .ins-item{color:var(--aligned-copy,#405a6b)}
/* Override the legacy dark-hero description rule at its full specificity. */
.fitness-page .advice-hero .wrap>p:not(.eyebrow){color:#294858}
.fitness-page .advice-hero .crumb,.fitness-page .advice-hero .crumb a,.fitness-page .advice-hero .ins-jump a{color:#102e49}
.fitness-page .advice-hero .ins-jump{border-top-color:#102e4930}
.fitness-page .advice-hero .ins-jump a:hover{color:#315c25;text-decoration:underline}
/* Keep circular activity badges square when mobile tiles change flex direction. */
@media(max-width:600px){.fitness-page .activity-icon{width:48px;min-width:48px;max-width:48px;height:48px;min-height:48px;max-height:48px;aspect-ratio:1;flex:0 0 48px}.fitness-page .activity-icon svg{width:29px;height:29px;flex:none}}
