/* SGA · Socias del centro de Griñón — mismo estilo que Tus logros: negro, blanco y Rubine #CE0058. Sin degradados ni sombras. */
.sgl .hero.roja{background:var(--r)}
.sgc .hero h1.h{font-size:56px;line-height:.95;margin-top:14px}
.sgc .hero p{font-size:14px;line-height:1.55;margin-top:14px}
.sgc .sgc-mes{font-size:22px;color:var(--r);margin-top:12px}
.sgc .hero.on-dark .sgc-mes+h1.h{font-size:56px;line-height:.92;margin-top:10px}
.sgc a{color:inherit}
.sgc .sgc-msg{margin-bottom:14px}

/* formularios */
.sgc .sgc-form{margin-top:26px;display:flex;flex-direction:column;gap:20px}
.sgc .sgc-f{display:flex;flex-direction:column;gap:8px}
.sgc .sgc-f .tag{color:#000}
.sgc .sgc-in{width:100%;height:56px;border:2px solid #000;border-radius:12px;background:#fff;color:#000;font-family:'Open Sans',sans-serif;font-size:16px;padding:0 16px;box-shadow:none;margin:0}
.sgc .sgc-in:focus{outline:0;border-color:var(--r)}
.sgc .sgc-trampa{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.sgc .sgc-chk{display:flex;gap:12px;align-items:flex-start;cursor:pointer;font-size:14px;line-height:1.45;margin-top:4px}
.sgc .sgc-chk input{position:absolute;opacity:0;width:28px;height:28px;margin:0}
.sgc .sgc-chk .cb{flex:0 0 28px;width:28px;height:28px;border:2px solid #000;background:#fff;display:flex;align-items:center;justify-content:center}
.sgc .sgc-chk .cb svg{opacity:0}
.sgc .sgc-chk input:checked+.cb{background:#000}
.sgc .sgc-chk input:checked+.cb svg{opacity:1}
.sgc .sgc-chk input:focus-visible+.cb{outline:3px solid var(--r);outline-offset:2px}
.sgc .sgc-chk a{text-decoration:underline}
.sgc .sgc-aviso{display:flex;gap:12px;align-items:center;background:#F2F2F2;border-radius:14px;padding:16px;font-size:13px;line-height:1.45}
.sgc .sgc-aviso svg{flex-shrink:0}
.sgc .sgc-ya{min-height:48px;display:flex;align-items:center;justify-content:center;font-size:14px;text-decoration:none}
.sgc .sgc-ya b{text-decoration:underline}

/* mira tu correo */
.sgc .sgc-correo{margin-top:26px;display:flex;flex-direction:column;gap:14px}
.sgc .sgc-correo .pasos{display:flex;gap:14px;align-items:flex-start;font-size:14px;line-height:1.5}
.sgc .sgc-correo .pasos .h{font-size:30px;color:var(--r);min-width:22px}
.sgc .sgc-correo .dir{font-size:19px;font-weight:700;word-break:break-all}

/* primera vez */
.sgc .sgc-pasos{margin-top:12px;border-bottom:2px solid #000}
.sgc .sgc-paso{display:flex;gap:14px;padding:20px 0;border-top:2px solid #000}
.sgc .sgc-paso>.h{font-size:40px;color:var(--r);min-width:26px;line-height:.9}
.sgc .sgc-paso>div{flex:1;display:flex;flex-direction:column;gap:10px}
.sgc .sgc-paso .h.t{font-size:24px;line-height:1.05}
.sgc .sgc-paso p{font-size:14px;line-height:1.5;color:rgba(0,0,0,.8)}
.sgc .sgc-sub{display:flex;align-items:center;min-height:44px;font-weight:700;font-size:14px;text-decoration:underline}
.sgc .sgc-espera{margin-top:26px;gap:6px}
.sgc .sgc-espera .h.t{font-size:24px}
.sgc .sgc-cuenta{margin-top:12px;border-top:2px solid #000;border-bottom:2px solid #000;padding:14px 0;font-size:13px;line-height:1.5}
.sgc .sgc-cuenta span{color:rgba(0,0,0,.68)}
.sgc .sgc-cuenta+.note{margin-top:12px}

/* inicio */
.sgc .sgc-tit{display:flex;justify-content:space-between;align-items:baseline;gap:10px}
.sgc .sgc-tit h2{font-size:32px}
.sgc .sgc-ent{display:flex;flex-direction:column;gap:10px;margin-top:14px}
.sgc .sgc-dia{display:flex;align-items:center;gap:14px;border-radius:16px;padding:16px 18px;min-height:84px;background:#fff;color:#000;border:2px solid #000;text-decoration:none}
.sgc .sgc-dia.neg{background:#000;color:#fff}
.sgc .sgc-dia>.h{font-size:40px;min-width:44px;color:var(--r)}
.sgc .sgc-dia>div{flex:1;min-width:0}
.sgc .sgc-dia .h.t{font-size:20px;line-height:1.1}
.sgc .sgc-dia .note{margin-top:4px;color:inherit;opacity:.75}
.sgc .sgc-ext{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:10px}
.sgc .sgc-x{background:#F2F2F2;border-radius:16px;padding:16px;display:flex;flex-direction:column;gap:6px;min-height:96px;text-decoration:none;color:#000}
.sgc .sgc-x .h.t{font-size:18px;line-height:1.1}
.sgc .sgc-dos{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:30px}
.sgc .sgc-c{border-radius:16px;padding:18px;min-height:150px;display:flex;flex-direction:column;justify-content:space-between;text-decoration:none;color:#fff}
.sgc .sgc-c.roja{background:var(--r)}
.sgc .sgc-c.negra{background:#000}
.sgc .sgc-c .tag{color:#fff}
.sgc .sgc-c .h.n{font-size:54px;line-height:.9}
.sgc .sgc-c .h{font-size:16px;margin-top:4px}
.sgc .sgc-c.negra .h.t{font-size:28px;line-height:1;margin:0}
.sgc .sgc-avisos{margin-top:14px;border-top:2px solid #000;border-bottom:2px solid #000}
.sgc .sgc-aviso-i{padding:16px 0;display:flex;gap:14px;align-items:flex-start}
.sgc .sgc-aviso-i+.sgc-aviso-i{border-top:1px solid rgba(0,0,0,.18)}
.sgc .sgc-aviso-i i{width:10px;height:10px;border-radius:50%;background:var(--r);margin-top:7px;flex-shrink:0}
.sgc .sgc-aviso-i b{font-size:15px}
.sgc .sgc-aviso-i .note{font-size:13px;margin-top:3px}
.sgc .sgc-pdf{margin-top:12px;border-bottom:2px solid #000}
.sgc .sgc-pdf a{display:flex;align-items:center;justify-content:space-between;min-height:56px;border-top:2px solid #000;font-weight:700;font-size:15px;text-decoration:none;color:#000}
.sgc .sgc-up{margin-top:14px;padding:24px 20px;display:flex;flex-direction:column;gap:12px}
.sgc .sgc-up .gl{font-size:46px;line-height:.95}
.sgc .sgc-up .doce{font-size:24px;color:var(--r)}
.sgc .sgc-up .btn{margin-top:6px}
.sgc .hero h1.h,.sgc .hero.on-dark .sgc-mes+h1.h{font-size:clamp(38px,12vw,56px);overflow-wrap:break-word}
.sgc .hero h1.h{margin-top:22px}
/* Alta premium (1.4.3) */
.sgc .sgc-vip{list-style:none;margin:18px 0 0;padding:0;border-top:2px solid #000}
.sgc .sgc-vip li{display:flex;gap:12px;align-items:flex-start;padding:12px 0;border-bottom:1px solid rgba(0,0,0,.14)}
.sgc .sgc-vip .ic{flex:0 0 24px;width:24px;height:24px;border-radius:50%;background:var(--r);display:flex;align-items:center;justify-content:center;margin-top:1px}
.sgc .sgc-vip b{display:block;font-family:'Oswald',sans-serif;font-weight:600;text-transform:uppercase;letter-spacing:.04em;font-size:15px;line-height:1.2}
.sgc .sgc-vip span:not(.ic){display:block;font-size:13px;line-height:1.45;color:rgba(0,0,0,.66);margin-top:2px}
.sgc .sgc-form-tit{margin-top:26px;color:var(--r)}
.sgc .sgc-firma{margin-top:22px;text-align:center;font-family:'Oswald',sans-serif;font-weight:500;text-transform:uppercase;letter-spacing:.2em;font-size:11px;color:rgba(0,0,0,.5)}
/* Inicio Griñón (1.5.1) */
.sgl .hero>.tag.sgc-hola{font-size:22px;letter-spacing:.06em;font-weight:600;color:#fff;line-height:1.15;opacity:1}
.sgc .sgc-espera{display:flex;flex-direction:row;gap:14px;align-items:center;text-decoration:none;color:#000}
.sgc .sgc-espera>div{flex:1;display:flex;flex-direction:column;gap:4px}
.sgc .sgc-ins-ic{flex:0 0 72px;width:72px;height:72px;display:block}
.sgc .sgc-ins-ic svg{display:block}
.sgc .sgc-c.negra .h.t{text-align:center;margin:auto 0}
.sgc .sgc-ico{display:flex;align-items:center;gap:10px}
.sgc .sgc-ico svg{flex:0 0 30px}
/* Glúteos UP: el melocotón en el centro de los anillos, como el sello en las otras cabeceras (2.1.0) */
.sgc .sgc-up::after{display:none}
.sgc .hero.sgc-up>.sga-melocoton{position:absolute;top:22px;right:22px;pointer-events:none}
.sgc .sgc-up>.tag+.gl{margin-top:44px}
/* Alta: pase de socia (2.2.0). Se rellena con su nombre mientras escribe y recibe el sello al activarse. */
.sgc-alta .sgc-alta-cab .tag{color:var(--r)}
.sgc-alta .sgc-alta-cab h1.h{font-size:clamp(46px,14vw,64px);line-height:.9;margin-top:12px}
.sgc-alta .sgc-alta-cab p{font-size:15px;line-height:1.55;margin-top:14px;color:rgba(0,0,0,.72);max-width:34em}
.sgc .sgc-pase{position:relative;overflow:hidden;margin-top:26px;aspect-ratio:1.586/1;min-height:210px;background:#000;color:#fff;border-radius:18px;padding:20px 22px;display:flex;flex-direction:column;animation:sgc-reparte .7s cubic-bezier(.2,.8,.2,1) .15s both}
.sgc .sgc-pase .rings{position:absolute;right:-70px;top:-70px;pointer-events:none}
.sgc .sgc-pase-sg{position:absolute;top:28px;right:28px;width:64px;height:64px;pointer-events:none}
.sgc .sgc-pase>.tag{position:relative;color:var(--r)}
.sgc .sgc-pase-nombre{position:relative;margin-top:auto;font-size:clamp(28px,9vw,40px);line-height:.95;display:flex;flex-direction:column;overflow-wrap:anywhere;padding-right:96px}
.sgc .sgc-pase-nombre span:empty{display:none}
.sgc .sgc-pase-nombre .vacio{color:rgba(255,255,255,.32)}
.sgc .sgc-pase-pie{position:relative;margin-top:12px;padding-top:10px;border-top:2px solid var(--r);align-self:flex-start;font-family:'Oswald',sans-serif;font-weight:500;text-transform:uppercase;letter-spacing:.14em;font-size:11px;color:rgba(255,255,255,.72)}
.sgc .sgc-pase-sello{position:absolute;right:4px;top:4px;width:112px;height:112px;opacity:0;transform:scale(2.4) rotate(-40deg);pointer-events:none}
.sgc .sgc-pase.activado .sgc-pase-sello{opacity:1;transform:scale(1) rotate(-12deg);transition:transform .42s cubic-bezier(.2,1.5,.4,1),opacity .18s linear}
.sgc .sgc-pase.activado{animation:sgc-golpe .3s .3s ease-out}
.sgc .sgc-pase-sg{transition:opacity .2s linear}
.sgc .sgc-pase.activado .sgc-pase-sg{opacity:0}
.sgc-alta .sgc-form-tit{margin-top:34px}
@keyframes sgc-reparte{from{opacity:0;transform:translateY(22px) rotate(-3deg)}}
@keyframes sgc-golpe{40%{transform:translateY(3px) scale(.99)}}
@media (prefers-reduced-motion:reduce){.sgc .sgc-pase,.sgc .sgc-pase.activado{animation:none}.sgc .sgc-pase.activado .sgc-pase-sello{transition:none}}
/* Alta: lo que incluye tu acceso (2.3.0) */
.sgc .sgc-incluye{margin-top:30px}
.sgc .sgc-incluye h2.h{font-size:26px;line-height:1;margin:0}
.sgc .sgc-incluye ul{list-style:none;margin:14px 0 0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:10px}
.sgc .sgc-incluye li{background:#F2F2F2;border-radius:14px;padding:16px 14px 18px;display:flex;flex-direction:column;gap:6px;margin:0}
.sgc .sgc-incluye li svg{margin-bottom:6px}
.sgc .sgc-incluye b{font-family:'Oswald',sans-serif;font-weight:600;text-transform:uppercase;letter-spacing:.03em;font-size:16px;line-height:1.1}
.sgc .sgc-incluye span{font-size:13px;line-height:1.45;color:rgba(0,0,0,.7)}
@media (max-width:340px){.sgc .sgc-incluye ul{grid-template-columns:1fr}}
.sgc .sgc-legal{margin-top:28px;padding-top:16px;border-top:1px solid rgba(0,0,0,.14);font-size:12px;line-height:1.5}
/* Lienzo limpio del alta y la entrada: sin cabecera ni pie del tema */
body.sga-lienzo{margin:0;background:#fff}
.sga-lienzo-pag{max-width:520px;margin:0 auto;padding:0 20px calc(40px + env(safe-area-inset-bottom))}
.sga-lienzo-cab{display:flex;justify-content:center;padding:22px 0 8px}
.sga-lienzo-cab img{display:block;height:34px;width:auto}
.sga-lienzo-cab span{font-family:'Oswald',sans-serif;font-weight:700;text-transform:uppercase;font-size:20px}
.sga-lienzo-main{padding-top:18px}
.sgc-alta .sgc-form-tit+.sgc-pase{margin-top:12px}
/* App instalable (2.5.0) */
.sgc .sgc-in-codigo{font-family:'Oswald',sans-serif;font-weight:700;font-size:30px;letter-spacing:.3em;text-align:center;height:64px}
.sgc .sgc-codigo{margin-top:22px}
.sgc .sgc-ya-codigo{margin-top:8px}
.sgc .sgc-ya-codigo>summary{list-style:none;cursor:pointer}
.sgc .sgc-ya-codigo>summary::-webkit-details-marker{display:none}
.sgc .sgc-ya-codigo>summary b{text-decoration:underline}
.sgc .sgc-app{display:flex;flex-direction:row;gap:16px;align-items:flex-start;text-decoration:none;margin-top:22px}
.sgc .sgc-app .h.t{font-size:26px;line-height:1.08}
.sgc .sgc-app img{flex:0 0 56px;border-radius:14px}
.sgc .sgc-app>div{display:flex;flex-direction:column;gap:6px;align-items:flex-start}
.sgc .sgc-app .btn{margin-top:8px;width:auto;padding:0 18px}
@media (display-mode:standalone){.sgc .sgc-app{display:none}}
.sgc .sgc-inst-ic{margin:26px 0 6px;display:flex;flex-direction:column;align-items:center;gap:8px;padding:26px 0 22px;background:#F2F2F2;border-radius:18px}
.sgc .sgc-inst-ic img{border-radius:20px}
.sgc .sgc-inst-ic span{font-size:14px;font-weight:600;color:#000}
.sgc.sgc-inst section{margin-top:26px}
.sgc.sgc-inst section h2.h{font-size:24px;line-height:1.05;margin:0 0 14px}
.sgc.sgc-inst .sgc-alta-cab h1.h{line-height:1.2}
.sgc.sgc-inst section>p{font-size:15px;line-height:1.55}
.sgc .sgc-inst-pasos{list-style:none;margin:0;padding:0;border-top:2px solid #000}
.sgc .sgc-inst-pasos li{display:flex;gap:14px;align-items:flex-start;padding:14px 0;border-bottom:1px solid rgba(0,0,0,.14);font-size:15px;line-height:1.5;margin:0}
.sgc .sgc-inst-pasos .ic{flex:0 0 44px;width:44px;height:44px;border-radius:12px;background:#F2F2F2;display:flex;align-items:center;justify-content:center}
.sgc .sgc-inst-pasos .n{display:block;font-size:13px;color:var(--r);letter-spacing:.1em;margin-bottom:2px}
.sgc .sgc-inst-pc{background:#F2F2F2;border-radius:14px;padding:16px;font-size:15px;line-height:1.5}
.sgc .sgc-inst-nota{margin-top:26px}

/* «Tu primera insignia»: el premio en Rubine Red, con el sello grande, brillo y las semanas que lleva (2.6.0) */
.sgc .sgc-meta{position:relative;overflow:hidden;display:grid;grid-template-columns:96px 1fr;column-gap:16px;align-items:center;margin-top:26px;padding:22px 20px 20px;border-radius:20px;background:var(--r);color:#fff;text-decoration:none}
.sgc .sgc-meta .rings{position:absolute;right:-110px;top:-100px;width:260px;height:260px;pointer-events:none}
.sgc .sgc-meta>*{position:relative}
.sgc .sgc-meta .rings{position:absolute}
.sgc .sgc-meta-sello{grid-row:1;grid-column:1;width:96px;height:96px;border-radius:50%;overflow:hidden;box-shadow:0 10px 24px rgba(0,0,0,.28)}
.sgc .sgc-meta-sello svg{display:block}
.sgc .sgc-meta-sello::after{content:"";position:absolute;inset:0;background:linear-gradient(105deg,transparent 38%,rgba(255,255,255,.55) 50%,transparent 62%);transform:translateX(-120%);animation:sgc-brillo 4.2s ease-in-out 1.2s infinite}
@keyframes sgc-brillo{0%{transform:translateX(-120%)}38%,100%{transform:translateX(120%)}}
.sgc .sgc-meta-cab{grid-row:1;grid-column:2;display:flex;flex-direction:column;align-items:flex-start;gap:4px;min-width:0}
.sgc .sgc-meta .tag{color:#fff;opacity:.9}
.sgc .sgc-meta .h.t{font-size:26px;line-height:1;color:#fff;margin:0;white-space:nowrap}
.sgc .sgc-meta-pill{display:inline-block;margin-top:8px;background:#000;color:#fff;border-radius:99px;padding:6px 12px;font-family:Oswald,"Arial Narrow",sans-serif;font-weight:700;font-size:12px;letter-spacing:.12em;text-transform:uppercase;white-space:nowrap}
.sgc .sgc-meta-tx{grid-column:1/-1;margin:18px 0 0;font-size:16px;line-height:1.45;color:#fff}
.sgc .sgc-meta-barras{grid-column:1/-1;display:flex;gap:4px;margin-top:16px}
.sgc .sgc-meta-barras i{flex:1;height:8px;border-radius:2px;background:rgba(255,255,255,.3)}
.sgc .sgc-meta-barras i.on{background:#fff}
.sgc .sgc-meta-prog{grid-column:1/-1;margin-top:8px;font-family:Oswald,"Arial Narrow",sans-serif;font-weight:500;font-size:13px;letter-spacing:.12em;text-transform:uppercase;color:#fff}
.sgc .sgc-meta-prog b{font-weight:700;font-size:15px}
.sgc .sgc-meta:focus-visible{outline:3px solid #000;outline-offset:3px}
@media (prefers-reduced-motion:reduce){.sgc .sgc-meta-sello::after{animation:none;display:none}}

/* «Tu cuenta» al final del inicio de la primera vez (2.7.0) */
.sgc .sgc-pie-cuenta{margin-top:40px}
