/* The 2026 club collection: one material language, clear reading, no distorted silhouettes. */
.ff-badge-object.ff-badge-v21{display:block;position:relative;width:min(100%,224px);height:auto;aspect-ratio:240/260;max-width:100%;transform:none;filter:drop-shadow(0 8px 7px #152b2229);transition:filter .3s,translate .3s;flex:none;margin:0 auto}.ff-badge-v21 .ff-badge-art{width:100%;height:100%;overflow:visible}.ff-badge-object.ff-badge-v21.ff-badge--locked{filter:saturate(.32) opacity(.75) drop-shadow(0 6px 6px #20362a1a)}.ff-badge-object.ff-badge-v21.ff-badge--compact{width:88px;flex:0 0 88px}.ff-badge-v21 .ff-badge-glint{opacity:0;pointer-events:none;transform-box:view-box;transform-origin:0 0}.ff-badge-v21.ff-badge--earned .ff-badge-glint{animation:ff-pin-shine 7s 1s ease-in-out infinite}.ff-badge-object.ff-badge-v21:hover,.training-badge-card:hover .ff-badge-v21{transform:none;translate:0 -3px}.ff-badge-object.ff-badge-v21.ff-badge--earned:hover{filter:drop-shadow(0 13px 9px #152b2236)}
@keyframes ff-pin-shine{0%,65%{opacity:0;transform:translateX(0) rotate(20deg)}68%{opacity:.7}83%{opacity:.7}86%,100%{opacity:0;transform:translateX(480px) rotate(20deg)}}
.training-collection-v21 .badge-collection-intro{margin:30px 0}.training-collection-v21 .badge-collection-intro h3{font:600 32px/1.12 var(--sans);letter-spacing:-.04em;color:#263b30;margin:0 0 12px}.training-collection-v21 .badge-collection-intro p{font:16px/1.6 var(--sans);color:#657167;margin:0;max-width:620px}.training-collection-v21 .training-badge-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.training-collection-v21 .training-badge-card{padding:0;display:flex;flex-direction:column;align-items:stretch;min-width:0;min-height:0;background:#fbfaf5;border:1px solid #233c2912;border-radius:18px;box-shadow:0 6px 18px #233b2506;overflow:hidden;transition:box-shadow .25s,transform .25s;text-align:left}.training-collection-v21 .training-badge-card.earned{background:#fbfaf5;border:1px solid #233c2912;box-shadow:0 8px 22px #233b250a}.training-collection-v21 .training-badge-card:hover{transform:translateY(-3px);box-shadow:0 13px 30px #1d37210f}.training-collection-v21 .badge-card-heading{min-height:48px;padding:17px 20px 12px;background:transparent;gap:12px}.training-collection-v21 .badge-edition{color:#657466;font:10px/1.4 var(--sans);letter-spacing:.06em}.training-collection-v21 .training-badge-card .badge-state{color:#6e7b70;font:600 10px/1.5 var(--sans);position:static}.training-collection-v21 .training-badge-card.earned .badge-state{color:#2e7357}.training-collection-v21 .training-badge-card .badge-showcase{display:grid;place-items:center;position:relative;height:230px;min-height:230px;overflow:hidden;background:radial-gradient(ellipse at 50% 35%,#fffef8 0%,#eeeee4 60%,#e4e7dc 100%);margin:0 12px;border-radius:12px;width:calc(100% - 24px)}.training-collection-v21 .training-badge-card.earned .badge-showcase{background:radial-gradient(ellipse at 50% 35%,#f2f7e9,#dce5d5 70%,#cfdcca)}.training-collection-v21 .badge-showcase:before{display:none}.training-collection-v21 .badge-showcase>.ff-badge-object.ff-badge-v21{width:204px!important;max-width:85%;height:auto!important;filter:drop-shadow(0 6px 5px #2b452225)}.training-collection-v21 .training-badge-card .badge-card-copy{display:block;text-align:left;padding:22px 22px 19px;min-height:145px;flex:1}.training-collection-v21 .training-badge-card .badge-card-copy h4{display:block;min-height:0;max-width:none;font:600 24px/1.12 var(--sans);letter-spacing:-.035em;color:#243d30;margin:0 0 10px!important;text-wrap:balance}.training-collection-v21 .badge-card-description{font:15px/1.55 var(--sans);color:#657365;min-height:0;max-width:none;text-wrap:pretty}.training-collection-v21 .badge-card-footer{margin:0;padding:0 22px 22px;text-align:left}.training-collection-v21 .badge-progress-meta{font:10px/1.4 var(--sans);color:#6d7c6b;letter-spacing:.03em;display:flex;justify-content:space-between;gap:15px}.training-collection-v21 .badge-progress-label{font:600 12px/1.4 var(--sans);color:#3b5841}.training-collection-v21 .badge-progress-track{height:4px;margin:10px 0 13px;background:#e0e6d9}.training-collection-v21 .badge-progress-track>span{background:#5f9779}.training-collection-v21 .badge-material-label{font:11px/1.4 var(--sans);color:#7a8475;text-align:left;min-height:0}.badge-detail:has(.ff-badge-v21){padding:18px 0 10px}.badge-detail>.ff-badge-v21{width:240px;margin:0 auto 20px}.badge-detail:has(.ff-badge-v21) h3{font-size:34px;line-height:1.12;letter-spacing:-.035em;margin-top:14px}.badge-detail:has(.ff-badge-v21) p{font-size:16px;line-height:1.6;max-width:430px}.reward-object>.ff-badge-v21{filter:drop-shadow(0 18px 13px #0005)}.ff-reward-reveal[data-kind=badge]{background:radial-gradient(ellipse at 50% 35%,#4b6355,#1a2c22 65%)}.ff-reward-reveal[data-kind=badge] .reward-object .ff-badge-glint{animation:ff-pin-shine 4s -.8s ease-out infinite}.ff-reward-reveal[data-kind=badge] .reward-ambient{opacity:.5}
/* The level pin follows the same smoother metal and enamel treatment. */
.ff-level-object{border-radius:27px 27px 19px 19px;border:5px solid #d9e2d6;background:linear-gradient(145deg,#4c6254,#20392b 50%,#304c3a);box-shadow:inset 0 1px 1px #fbfff59c,inset 0 0 0 1px #122b1f,0 3px 0 #90a58e,0 7px 0 #536b52,0 13px 18px #0e261c36;transform:none!important;padding-top:32px}.ff-level-object>img{margin:15px 0 10px;filter:brightness(0) invert(1);opacity:.95}.ff-level-number{font-style:normal;letter-spacing:-.045em;color:#f6f5df;text-shadow:0 1px #fff2,0 2px #0f251b80}.ff-level-edition{font:600 7px/1.5 var(--sans);letter-spacing:1.2px;color:#d9e7d1}.ff-level-engraving{font:6px/1.6 var(--sans);letter-spacing:.03em;color:#bcd0b7;border-color:#c9e2be2e;margin-top:12px}.ff-level-rivet{background:#11271c;box-shadow:0 1px #f4f5d8a1,inset 0 2px 1px #0005}.ff-level-tag:hover .ff-level-object{box-shadow:inset 0 1px 1px #fbfff59c,inset 0 0 0 1px #122b1f,0 3px 0 #90a58e,0 7px 0 #536b52,0 15px 23px #0e261c4d}
@media(max-width:1000px){.training-collection-v21 .training-badge-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.training-collection-v21 .training-badge-grid{grid-template-columns:1fr;gap:18px}.training-collection-v21 .training-badge-card .badge-showcase{height:240px;min-height:240px}.training-collection-v21 .badge-showcase>.ff-badge-v21{width:214px!important}.training-collection-v21 .training-badge-card .badge-card-copy{min-height:0;padding:23px 24px 20px}.training-collection-v21 .training-badge-card .badge-card-copy h4{font-size:27px}.training-collection-v21 .badge-card-description{font-size:16px}.training-collection-v21 .badge-card-footer{padding:0 24px 25px}.ff-badge-object.ff-badge-v21.ff-badge--compact{width:82px;flex-basis:82px}.ff-level-object{border-width:4px;border-radius:19px 19px 13px 13px}}
@media(prefers-reduced-motion:reduce){.ff-badge-v21 .ff-badge-glint,.training-badge-card:hover .ff-badge-v21 .ff-badge-glint,.ff-reward-reveal .ff-badge-v21 .ff-badge-glint{animation:none!important;opacity:0}.ff-badge-object.ff-badge-v21,.training-collection-v21 .training-badge-card{transition:none;translate:none}.training-collection-v21 .training-badge-card:hover{transform:none}}
@media(hover:none){.ff-badge-v21.ff-badge--earned .ff-badge-glint{animation:ff-pin-shine 7s 1s ease-in-out infinite!important}}
@media(prefers-reduced-motion:reduce){.ff-badge-v21.ff-badge--earned .ff-badge-glint,.ff-reward-reveal .ff-badge-v21 .ff-badge-glint{animation:none!important;opacity:0}}
