/* Club FestejaMe 1.112.2 — cuerpo de la página con el estilo de la marca */
.cl{--ink:#1b1033;--paper:#fff8ec;--paper-deep:#f8ebd8;--pink:#e8368f;--pink-deep:#b51b68;--yellow:#ffb627;--teal:#0f8b8d;--grape:#5a3480}
.cl-wrap{width:min(1160px,calc(100% - 40px));margin-inline:auto}
.cl section.cl-sec{padding:84px 0;border:0;margin:0}
.cl section.cl-alt{background:var(--paper-deep)}
.cl .kicker{display:inline-flex;align-items:center;gap:8px;color:var(--pink-deep);font:700 .7rem/1.4 'Space Mono',monospace;letter-spacing:.09em;text-transform:uppercase}
.cl .kicker::before{content:"";width:24px;height:3px;border-radius:3px;background:currentColor}
.cl h2{margin:14px 0 0;font-family:FJMUnbounded,Unbounded,sans-serif;font-weight:700;font-size:clamp(1.85rem,3.6vw,3rem);line-height:1.12;letter-spacing:-.045em;color:var(--ink)}
.cl h2 span{color:var(--pink)}
.cl h3{margin:0;font:800 1.15rem/1.25 Nunito,sans-serif;color:var(--ink)}
.cl p{margin:0;color:rgba(27,16,51,.68)}
.cl-head{display:grid;grid-template-columns:1fr minmax(280px,470px);gap:44px;align-items:end;margin-bottom:36px}
.cl-head>p{font-size:.98rem;line-height:1.65}

/* Ganar puntos */
.cl-earn{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}
.cl-earn-card{position:relative;display:flex;flex-direction:column;padding:26px 24px;border-radius:24px;background:#fff;box-shadow:0 12px 34px rgba(27,16,51,.07);transition:transform .2s,box-shadow .2s}
.cl-earn-card:hover{transform:translateY(-4px);box-shadow:0 20px 44px rgba(27,16,51,.12)}
.cl-ico{display:grid;place-items:center;width:52px;height:52px;margin-bottom:20px;border-radius:16px;font-size:1.5rem;background:#fde3ef}
.cl-earn-card:nth-child(3n+2) .cl-ico{background:#d9f0ef}
.cl-earn-card:nth-child(3n+3) .cl-ico{background:#fff0cf}
.cl-earn-card b{font:700 2.1rem/1 FJMUnbounded,Unbounded,sans-serif;letter-spacing:-.05em;color:var(--pink)}
.cl-earn-card strong{display:block;margin:10px 0 6px;font-size:1.05rem;font-weight:900;color:var(--ink)}
.cl-earn-card p{font-size:.86rem;line-height:1.55}
.cl-earn-card.is-main{background:var(--ink);color:var(--paper);box-shadow:0 22px 50px rgba(27,16,51,.25)}
.cl-earn-card.is-main .cl-ico{background:#ffffff18}
.cl-earn-card.is-main b{color:var(--yellow)}
.cl-earn-card.is-main strong{color:var(--paper)}
.cl-earn-card.is-main p{color:rgba(255,248,236,.75)}

/* Usar puntos: calculadora y dónde */
.cl-use{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:22px;align-items:stretch}
.cl-calc{padding:30px;border-radius:26px;background:var(--ink);color:var(--paper);box-shadow:0 24px 55px rgba(27,16,51,.22);position:relative;overflow:hidden;isolation:isolate}
.cl-calc::after{content:"";position:absolute;z-index:-1;width:260px;height:260px;right:-120px;top:-120px;border-radius:45%;background:#5a348088;transform:rotate(20deg)}
.cl-calc .kicker{color:var(--yellow)}
.cl-calc h3{margin:12px 0 6px;color:var(--paper);font-size:1.3rem}
.cl-calc-amount output{display:block;font:700 clamp(2.4rem,5vw,3.4rem)/1.1 FJMUnbounded,Unbounded,sans-serif;letter-spacing:-.05em;color:var(--paper);margin:6px 0 14px}
.cl-calc input[type=range]{--fill:25%;width:100%;height:10px;border-radius:999px;appearance:none;-webkit-appearance:none;background:linear-gradient(90deg,var(--pink) var(--fill),#ffffff26 var(--fill));outline:none;cursor:pointer}
.cl-calc input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:28px;height:28px;border-radius:50%;background:var(--yellow);border:4px solid var(--ink);box-shadow:0 0 0 2px var(--yellow)}
.cl-calc input[type=range]::-moz-range-thumb{width:22px;height:22px;border-radius:50%;background:var(--yellow);border:4px solid var(--ink);box-shadow:0 0 0 2px var(--yellow)}
.cl-calc input[type=range]:focus-visible{outline:2px solid var(--yellow);outline-offset:6px}
.cl-calc-scale{display:flex;justify-content:space-between;margin-top:8px;font-size:.75rem;font-weight:800;color:rgba(255,248,236,.55)}
.cl-calc-result{display:grid;grid-template-columns:1fr auto 1fr;gap:12px;align-items:center;margin-top:22px}
.cl-calc-result>div:not(.cl-calc-eq){padding:16px 18px;border-radius:18px;background:#ffffff12;border:1px solid #ffffff22}
.cl-calc-result small{display:block;font-size:.72rem;font-weight:800;color:rgba(255,248,236,.65);text-transform:uppercase;letter-spacing:.06em}
.cl-calc-result b{display:block;margin:4px 0 2px;font:700 2rem/1.05 FJMUnbounded,Unbounded,sans-serif;letter-spacing:-.05em;color:var(--yellow)}
.cl-calc-result span{font-size:.82rem;font-weight:700;color:rgba(255,248,236,.8)}
.cl-calc-eq{font:700 1.6rem FJMUnbounded,Unbounded,sans-serif;color:var(--pink)}
.cl-calc-note{margin-top:16px!important;padding:12px 14px;border-radius:14px;background:var(--yellow);color:var(--ink)!important;font-size:.85rem;font-weight:800}
.cl-where{display:grid;gap:16px}
.cl-where-card{display:grid;grid-template-columns:180px minmax(0,1fr);overflow:hidden;border-radius:22px;background:#fff;box-shadow:0 12px 34px rgba(27,16,51,.07)}
.cl-where-card img{width:100%;height:100%;min-height:170px;object-fit:cover;display:block}
.cl-where-card>div{padding:20px 22px;display:flex;flex-direction:column;gap:6px;align-items:flex-start}
.cl-where-card p{font-size:.86rem;line-height:1.55}
.cl-where-card a{margin-top:4px;color:var(--pink-deep);font-weight:900;font-size:.85rem;text-decoration:none}
.cl-tag{display:inline-block;padding:4px 10px;border-radius:999px;background:#fff0cf;color:#8a5a00;font-size:.7rem;font-weight:900;letter-spacing:.03em}
.cl-tag.is-on{background:#d9f0ef;color:#08665e}

/* Por qué */
.cl-why{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.cl-why article{padding:26px 24px;border:1px solid rgba(27,16,51,.1);border-radius:22px;background:var(--paper)}
.cl-num{display:grid;place-items:center;width:38px;height:38px;margin-bottom:20px;border-radius:50%;background:var(--pink);color:var(--paper);font:700 .8rem 'Space Mono',monospace}
.cl-why article:nth-child(2) .cl-num{background:var(--teal)}.cl-why article:nth-child(3) .cl-num{background:var(--grape)}.cl-why article:nth-child(4) .cl-num{background:var(--ink)}
.cl-why h3{margin-bottom:8px}
.cl-why p{font-size:.86rem;line-height:1.6}
.cl-cta{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:22px;padding:28px 32px;border-radius:26px;background:var(--pink);color:var(--ink)}
.cl-cta h3{font-size:1.35rem;color:var(--ink)}
.cl-cta p{color:rgba(27,16,51,.8);margin-top:4px}
.cl-cta a{flex:none;display:inline-flex;align-items:center;min-height:48px;padding:0 24px;border-radius:999px;background:var(--yellow);color:var(--ink)!important;font-weight:900;text-decoration:none;transition:transform .18s}
.cl-cta a:hover{transform:translateY(-2px)}

/* Consulta */
.cl-check-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:40px;align-items:center}
.cl-check-copy>p{margin-top:14px;max-width:470px}
.cl-member{position:relative;margin-top:26px;max-width:380px;padding:22px 24px;border-radius:22px;color:#fff;background:linear-gradient(135deg,var(--grape),var(--pink));box-shadow:0 24px 50px rgba(232,54,143,.25);transform:rotate(-2deg)}
.cl-member-top{display:flex;justify-content:space-between;font:700 .7rem 'Space Mono',monospace;letter-spacing:.1em;color:var(--yellow)}
.cl-member b{display:block;margin-top:18px;font:700 2.6rem/1 FJMUnbounded,Unbounded,sans-serif;letter-spacing:-.05em}
.cl-member small{display:block;margin-top:4px;font-weight:700;color:rgba(255,255,255,.85)}
.cl-member-bar{height:8px;margin-top:16px;border-radius:999px;background:#ffffff33}.cl-member-bar i{display:block;width:100%;height:100%;border-radius:inherit;background:var(--yellow)}
.cl .club-check{padding:28px;border-radius:26px;background:var(--ink);color:var(--paper);box-shadow:0 24px 55px rgba(27,16,51,.22)}
.cl .club-check form{display:grid;grid-template-columns:1fr 1fr;gap:12px;align-items:end}
.cl .club-check label{display:grid;gap:6px;font-size:.78rem;font-weight:800;color:var(--yellow)}
.cl .club-check input{min-height:48px;border-radius:14px;border:1px solid #5a3480;background:#2a1a45;color:#fff;padding:10px 14px;font:600 16px Nunito,system-ui,sans-serif}
.cl .club-check input:focus{outline:3px solid #e8368f66;border-color:var(--pink)}
.cl .club-check button{grid-column:1/-1;min-height:50px;border:0;border-radius:999px;background:var(--pink);color:var(--paper);font:900 .95rem Nunito,system-ui,sans-serif;cursor:pointer;transition:transform .18s}
.cl .club-check button:hover{transform:translateY(-2px)}
.cl .club-check button:disabled{opacity:.6;transform:none}
.cl .club-result{margin-top:18px;padding-top:16px;border-top:1px solid #ffffff1f}
.cl .club-result p{color:#e1d4e9}
.cl .cl-check-hint{color:rgba(255,248,236,.55)!important;font-size:.88rem}
.cl .club-result .msg{color:var(--yellow)}
.cl .club-points{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 14px;margin:0 0 10px}
.cl .club-points b{font:700 2.6rem/1 FJMUnbounded,Unbounded,sans-serif;letter-spacing:-.05em;color:#fff}
.cl .club-points span{color:var(--yellow);font-weight:800}
.cl .club-moves{list-style:none;padding:0;margin:12px 0 0;display:grid;gap:6px}
.cl .club-moves li{display:flex;justify-content:space-between;gap:10px;padding:10px 12px;border-radius:12px;background:#2a1a45;font-size:.86rem;line-height:1.5;color:#e1d4e9}
.cl .club-moves li b{color:#fff}.cl .club-moves li b.neg{color:#ff9cc9}

/* Reglas */
.cl-rules{border-radius:24px;background:#fff;box-shadow:0 12px 34px rgba(27,16,51,.07);overflow:hidden}
.cl-rules summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:24px 28px;cursor:pointer;list-style:none}
.cl-rules summary::-webkit-details-marker{display:none}
.cl-rules summary>span{display:grid;gap:8px}
.cl-rules summary b{font:700 1.5rem/1.15 FJMUnbounded,Unbounded,sans-serif;letter-spacing:-.04em;color:var(--ink)}
.cl-rules summary i{display:grid;place-items:center;width:42px;height:42px;flex:none;border-radius:50%;background:var(--paper-deep);color:var(--ink);font-style:normal;font-weight:900;transition:transform .2s}
.cl-rules[open] summary i{transform:rotate(45deg);background:var(--pink);color:#fff}
.cl-rules-body{padding:0 28px 26px}
.cl-rules-body ul{margin:0;padding:0;list-style:none;display:grid;gap:10px;counter-reset:r}
.cl-rules-body li{position:relative;padding:12px 14px 12px 48px;border-radius:14px;background:var(--paper);color:rgba(27,16,51,.78);font-size:.9rem;line-height:1.6;counter-increment:r}
.cl-rules-body li::before{content:counter(r);position:absolute;left:12px;top:11px;display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:var(--ink);color:var(--paper);font:700 .7rem 'Space Mono',monospace}
.cl-rules-body .contact-box{margin-top:16px}

@media(max-width:1000px){.cl-why{grid-template-columns:repeat(2,minmax(0,1fr))}.cl-use,.cl-check-grid{grid-template-columns:1fr}.cl-check-grid{gap:28px}}
@media(max-width:750px){.cl section.cl-sec{padding:60px 0}.cl-head{grid-template-columns:1fr;gap:12px;margin-bottom:26px}.cl-where-card{grid-template-columns:120px minmax(0,1fr)}.cl-cta{flex-direction:column;align-items:flex-start;padding:24px}.cl-cta a{width:100%;justify-content:center}.cl-member{transform:none}}
@media(max-width:520px){.cl-wrap{width:calc(100% - 28px)}.cl-earn,.cl-why{grid-template-columns:1fr}.cl-calc,.cl .club-check{padding:22px}.cl-calc-result{grid-template-columns:1fr;gap:8px}.cl-calc-eq{display:none}.cl .club-check form{grid-template-columns:1fr}.cl-where-card{grid-template-columns:1fr}.cl-where-card img{min-height:0;height:150px}.cl-rules summary{padding:20px}.cl-rules-body{padding:0 18px 20px}}
@media(max-width:520px){.cl-why article,.cl-earn-card{display:grid;grid-template-columns:44px minmax(0,1fr);gap:2px 14px;padding:18px;align-items:start}.cl-why .cl-num,.cl-earn-card .cl-ico{grid-row:1/4;margin:0}.cl-earn-card .cl-ico{width:44px;height:44px;font-size:1.25rem}.cl-earn-card b{font-size:1.6rem}.cl-earn-card strong{margin:4px 0 2px}.cl-why h3{margin-bottom:4px}}
@media(prefers-reduced-motion:reduce){.cl-earn-card,.cl-cta a,.cl .club-check button{transition:none}}
@media print{.cl-calc,.cl-where,.cl-cta,.cl-member{display:none}.cl-rules-body{display:block}}
