/* ONGrip Club member card: tier badge, gradient and milestone to the next tier */
.ov-club{position:relative;overflow:hidden;isolation:isolate;background:#0D1733;border-color:#0D1733}
.ov-club::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none}
.ov-club[data-tier="rookie"]::before{background:radial-gradient(70% 85% at 100% 0%,rgba(201,209,220,.55) 0%,rgba(201,209,220,.16) 35%,rgba(201,209,220,0) 65%),radial-gradient(110% 120% at 100% 0%,rgba(31,59,115,.85) 0%,rgba(31,59,115,0) 75%)}
.ov-club[data-tier="rally"]::before{background:radial-gradient(70% 85% at 100% 0%,rgba(220,235,74,.55) 0%,rgba(220,235,74,.18) 35%,rgba(220,235,74,0) 65%),radial-gradient(110% 120% at 100% 0%,rgba(31,59,115,.9) 0%,rgba(31,59,115,0) 75%)}
.ov-club[data-tier="ace"]{border-color:rgba(201,162,74,.75)}
.ov-club[data-tier="ace"]::before{background:radial-gradient(85% 95% at 100% 0%,#F2D58C 0%,#D9B25A 16%,#C9A24A 28%,#8F6B2C 46%,#3A3226 64%,rgba(13,23,51,0) 82%)}

.tier-badge{--c:#8C97AD;display:inline-flex;align-items:center;gap:8px;padding:5px 14px 5px 7px;border-radius:999px;font-size:13px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--c);border:1.5px solid color-mix(in srgb,var(--c) 55%,transparent);background:color-mix(in srgb,var(--c) 12%,transparent)}
.tier-badge:empty{display:none}
.tier-badge svg{width:24px;height:24px;display:block}
.ov-club[data-tier="rookie"] .tier-badge{--c:#C9D1DC}
.ov-club[data-tier="rally"] .tier-badge{--c:#DCEB4A}
.ov-club[data-tier="ace"] .tier-badge{--c:#F0D28A;background:rgba(13,23,51,.82);border-color:#E2C27A}

.tier-ms{padding:14px 16px 14px;border-radius:12px;background:rgba(13,23,51,.72);border:1px solid rgba(255,255,255,.08)}
.tier-ms[hidden]{display:none}
.tier-row{display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:14px;color:rgba(255,255,255,.72)}
.tier-row b{color:#fff;font-weight:600}
.tier-path{display:flex;gap:4px;flex:none}
.tier-path i{width:18px;height:5px;border-radius:9px;background:rgba(255,255,255,.18)}
.tier-path i.on[data-t="warmup"]{background:#8C97AD}
.tier-path i.on[data-t="rookie"]{background:#C9D1DC}
.tier-path i.on[data-t="rally"]{background:#DCEB4A}
.tier-path i.on[data-t="ace"]{background:#E2C27A}
.tier-trk{position:relative;height:7px;border-radius:99px;background:rgba(255,255,255,.14);margin:12px 0 8px;overflow:hidden}
.tier-trk i{position:absolute;left:0;top:0;bottom:0;width:0;border-radius:99px;background:#C9D1DC;transition:width .8s cubic-bezier(.2,.7,.2,1)}
.ov-club[data-tier="rally"] .tier-trk i{background:#DCEB4A}
.ov-club[data-tier="ace"] .tier-trk i{background:#E2C27A}
.tier-ends{display:flex;justify-content:space-between;gap:12px;font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:rgba(255,255,255,.55)}
.tier-ends span:first-child{color:var(--from,rgba(255,255,255,.55))}
.ov-club[data-tier="rookie"] .tier-ends{--from:#C9D1DC}
.ov-club[data-tier="rally"] .tier-ends{--from:#DCEB4A}
.ov-club[data-tier="ace"] .tier-ends{--from:#E2C27A}
.ov-club[data-tier="ace"] .tier-ends span{color:#E2C27A}

.ov-pts-row{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:auto}
.ov-pts-row .ov-pts{margin-top:0}
@media (prefers-reduced-motion:reduce){.tier-trk i{transition:none}}

/* ONGrip Club details page (club/, id/klub/) */
.cl-hero{padding-block:clamp(40px,6vw,88px) 0}
.cl-hero-in{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:clamp(28px,5vw,72px);align-items:center}
.cl-hero-txt{display:grid;gap:18px;justify-items:start}
.cl-hero-txt .body-lg{color:var(--soft);margin:0}
.cl-cta{display:flex;gap:10px;flex-wrap:wrap}
.cl-cta[hidden],.cl-me[hidden]{display:none}
.cl-me{display:grid;gap:6px;justify-items:start}
.cl-me p{margin:0;font-size:19px}
.cl-me .cl-me-sub{font-size:15px;color:var(--soft);margin-bottom:8px}
.cl-card{min-height:300px}
.cl-stage{margin:clamp(28px,4vw,48px) 0 0;padding:14px 18px;border-radius:12px;background:var(--panel);font-size:14px;color:var(--soft)}
.cl-lede{margin:10px 0 24px;max-width:60ch}
.cl-tiers{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.cl-tier{border:1px solid var(--line);border-radius:var(--r);overflow:hidden;background:#fff;display:flex;flex-direction:column}
.cl-tier.is-me{border:2px solid var(--navy)}
.cl-tier-h{position:relative;isolation:isolate;background:#0D1733;color:#fff;padding:18px 18px 16px;display:grid;gap:10px;justify-items:start;min-height:96px}
.cl-tier-h::before{content:"";position:absolute;inset:0;z-index:-1}
.cl-tier[data-tier="rookie"] .cl-tier-h::before{background:radial-gradient(90% 120% at 100% 0%,rgba(201,209,220,.5) 0%,rgba(201,209,220,0) 65%)}
.cl-tier[data-tier="rally"] .cl-tier-h::before{background:radial-gradient(90% 120% at 100% 0%,rgba(220,235,74,.5) 0%,rgba(220,235,74,0) 65%)}
.cl-tier[data-tier="ace"] .cl-tier-h::before{background:radial-gradient(110% 140% at 100% 0%,#F2D58C 0%,#C9A24A 30%,#8F6B2C 50%,rgba(13,23,51,0) 85%)}
.cl-tier .tier-badge{--c:#8C97AD}
.cl-tier[data-tier="rookie"] .tier-badge{--c:#C9D1DC}
.cl-tier[data-tier="rally"] .tier-badge{--c:#DCEB4A}
.cl-tier[data-tier="ace"] .tier-badge{--c:#F0D28A;background:rgba(13,23,51,.82);border-color:#E2C27A}
.cl-req{font-size:15px;font-weight:600}
.cl-you{position:absolute;top:14px;right:14px;font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;background:#fff;color:var(--navy);padding:4px 10px;border-radius:999px}
.cl-you[hidden]{display:none}
.cl-tier ul{margin:0;padding:16px 18px 20px 36px;display:grid;gap:8px;font-size:15px}
.cl-soon{font-style:normal;font-size:11px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--navy);background:#E6ECF7;padding:2px 7px;border-radius:999px;white-space:nowrap;margin-left:4px}
.cl-two{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:clamp(24px,4vw,56px);align-items:start}
.cl-earn{margin:20px 0 12px;border-top:1px solid var(--line)}
.cl-earn-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;padding:14px 0;border-bottom:1px solid var(--line)}
.cl-earn-row b{display:block;font-weight:600}
.cl-earn-row span{display:block;font-size:14px;color:var(--soft);margin-top:2px}
.cl-earn-v{font-weight:600;color:var(--navy)}
.cl-path{background:#0D1733;color:#fff;border-radius:var(--r);padding:var(--pad)}
.cl-path h3{font-size:20px;margin-bottom:16px}
.cl-path ol{list-style:none;margin:0;padding:0;display:grid;gap:10px;counter-reset:s}
.cl-path li{display:flex;justify-content:space-between;gap:12px;padding:12px 14px;border-radius:10px;background:rgba(255,255,255,.07);font-size:15px;counter-increment:s}
.cl-path li span::before{content:counter(s) ". ";color:rgba(255,255,255,.55)}
.cl-path li b{color:#C9D1DC;white-space:nowrap}
.cl-path-end{margin:14px 0 0;font-weight:600;font-size:18px;color:#C9D1DC}
.cl-faqs{margin-top:16px;border-top:1px solid var(--line);max-width:820px}
.cl-faq{border-bottom:1px solid var(--line)}
.cl-faq summary{cursor:pointer;list-style:none;padding:18px 32px 18px 0;font-weight:600;position:relative}
.cl-faq summary::-webkit-details-marker{display:none}
.cl-faq summary::after{content:"+";position:absolute;right:4px;top:16px;font-size:20px;font-weight:400}
.cl-faq[open] summary::after{content:"–"}
.cl-faq p{margin:0 0 18px;color:var(--soft);max-width:70ch}
.cl-end{background:var(--navy);color:#fff;border-radius:var(--r);padding:var(--pad);display:grid;gap:12px;justify-items:start;margin-bottom:clamp(56px,8vw,120px)}
.cl-end p{margin:0;color:rgba(255,255,255,.8)}
.cl-end .btn{border-color:#fff;color:#fff}
.cl-end .btn:hover{background:#fff;color:var(--navy)}
@media (max-width:1000px){.cl-tiers{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:860px){.cl-hero-in,.cl-two{grid-template-columns:1fr}}
@media (max-width:560px){.cl-tiers{grid-template-columns:1fr}.cl-earn-row{grid-template-columns:1fr;gap:4px}}
.tier-more{display:inline-block;margin-top:12px;font-size:13px;font-weight:600;color:#fff;text-decoration:none;opacity:.85}
.tier-more:hover{opacity:1;text-decoration:underline}
