/* GT – GreenTahr Club ([gt_club]). Colores en variables (--gcl-*) que pone el plugin. */
.gt-cl { position: relative; overflow: hidden; padding: 88px 0; color: #fff; font-family: Inter, sans-serif;
  background:
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 600' preserveAspectRatio='none'%3E%3Cg fill='none' stroke='%23ffffff' stroke-opacity='.07' stroke-width='1.2'%3E%3Cpath d='M-20 520C120 470 220 500 330 455S540 330 660 360 860 470 980 420 1140 300 1220 320'/%3E%3Cpath d='M-20 470C110 430 230 450 340 405S540 285 665 312 870 420 985 372 1140 255 1220 272'/%3E%3Cpath d='M-20 420C100 390 240 400 350 355S545 240 670 264 880 370 990 324 1140 210 1220 224'/%3E%3Cpath d='M-20 370C90 350 250 350 360 305S550 195 675 216 890 320 995 276 1140 165 1220 176'/%3E%3Cpath d='M-20 320C80 310 260 300 370 255S555 150 680 168 900 270 1000 228 1140 120 1220 128'/%3E%3Cpath d='M-20 270C70 270 270 250 380 205S560 105 685 120 910 220 1005 180 1140 75 1220 80'/%3E%3Cpath d='M-20 220C60 230 280 200 390 155S565 60 690 72 920 170 1010 132 1140 30 1220 32'/%3E%3Cpath d='M600 150c40-30 90-28 120 0s10 70-50 70-110-40-70-70z'/%3E%3Cpath d='M610 140c50-45 125-40 155 2s0 102-80 100-140-58-75-102z'/%3E%3C/g%3E%3C/svg%3E") center / cover no-repeat,
    radial-gradient(60% 80% at 8% 10%, rgba(255,255,255,.10) 0%, rgba(255,255,255,0) 60%),
    radial-gradient(55% 75% at 100% 100%, rgba(0,0,0,.35) 0%, rgba(0,0,0,0) 70%),
    linear-gradient(160deg, var(--gcl-light) 0%, var(--gcl-base) 35%, var(--gcl-mid) 75%, var(--gcl-deep) 100%); }
.gt-cl *, .gt-cl *::before, .gt-cl *::after { box-sizing: border-box; }
.gt-cl-in { width: min(1140px, calc(100% - 48px)); margin: 0 auto; display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: 72px; align-items: center; }

/* Tarjeta de socio */
.gt-cl-card { width: 100%; max-width: 340px; aspect-ratio: 1.586; perspective: 900px; margin: 0 0 34px; }
.gt-cl-card-in { position: relative; width: 100%; height: 100%; border-radius: 16px; overflow: hidden; padding: 20px 22px; transform: rotateX(var(--rx, 6deg)) rotateY(var(--ry, -10deg)); transform-style: preserve-3d; transition: transform .25s ease-out;
  background: radial-gradient(120% 90% at 0% 0%, rgba(255,255,255,.14) 0%, rgba(255,255,255,0) 55%), linear-gradient(145deg, var(--gcl-mid) 0%, var(--gcl-deep) 100%);
  border: 1px solid var(--gcl-a55); box-shadow: 0 30px 60px rgba(0,0,0,.40), 0 6px 14px rgba(0,0,0,.25), inset 0 1px 0 rgba(255,255,255,.12); }
.gt-cl-card-in::after { content: ""; position: absolute; inset: 0; border-radius: inherit; background: repeating-linear-gradient(115deg, rgba(255,255,255,.025) 0 2px, transparent 2px 7px); pointer-events: none; }
.gt-cl-card-sheen { position: absolute; inset: -40%; background: linear-gradient(105deg, transparent 40%, rgba(255,255,255,.18) 50%, transparent 60%); transform: translateX(var(--sx, -30%)); transition: transform .4s ease-out; pointer-events: none; }
.gt-cl-card-logo { position: absolute; top: 18px; left: 22px; width: 68px; height: 60px; background: linear-gradient(135deg, var(--gcl-acc-l), var(--gcl-acc-d)); -webkit-mask: var(--logo) left top / contain no-repeat; mask: var(--logo) left top / contain no-repeat; }
.gt-cl-card-num { position: absolute; top: 16px; right: 22px; font: 800 30px/1 'Work Sans', sans-serif; color: transparent; -webkit-text-stroke: 1.2px var(--gcl-acc); letter-spacing: -.02em; }
.gt-cl-card-chip { position: absolute; left: 22px; top: 50%; width: 40px; height: 30px; border-radius: 6px; background: linear-gradient(135deg, var(--gcl-acc-l), var(--gcl-acc-d)); opacity: .85; }
.gt-cl-card-chip::before { content: ""; position: absolute; inset: 7px 9px; border: 1px solid rgba(0,0,0,.25); border-radius: 3px; }
.gt-cl-card-name { position: absolute; left: 22px; right: 22px; bottom: 18px; font: 700 13px/1 'Work Sans', sans-serif; letter-spacing: .24em; text-transform: uppercase; color: rgba(255,255,255,.92); }

/* Texto */
.gt-cl .gt-cl-title { margin: 0 0 14px !important; padding: 0 !important; font: 800 44px/1.02 'Work Sans', sans-serif !important; letter-spacing: -.02em; color: #fff !important; }
.gt-cl .gt-cl-text { margin: 0 0 28px !important; padding: 0 !important; font-size: 16px; line-height: 1.6; color: rgba(255,255,255,.86) !important; max-width: 440px; }
.gt-cl .gt-cl-cta { display: inline-flex; align-items: center; gap: 10px; padding: 17px 30px; border-radius: 999px; background: linear-gradient(135deg, var(--gcl-acc-l) 0%, var(--gcl-acc-d) 100%); color: var(--gcl-on) !important; font: 700 13px/1 'Work Sans', sans-serif; letter-spacing: .1em; text-transform: uppercase; text-decoration: none !important; box-shadow: 0 12px 28px var(--gcl-a35); transition: transform .2s ease, gap .2s ease, box-shadow .2s ease; }
.gt-cl .gt-cl-cta:hover { transform: translateY(-2px); gap: 14px; box-shadow: 0 16px 34px var(--gcl-a35); }

/* Ventaja principal */
.gt-cl-hl { display: flex; align-items: center; gap: 26px; padding: 22px 28px; margin: 0 0 16px; border-radius: 14px; background: linear-gradient(120deg, var(--gcl-a12) 0%, rgba(255,255,255,.04) 100%); border: 1px solid var(--gcl-a35); }
.gt-cl-hl-num { flex: 0 0 auto; font: 800 76px/.9 'Work Sans', sans-serif; letter-spacing: -.04em; color: transparent; -webkit-text-stroke: 1.6px var(--gcl-acc); }
.gt-cl-hl-txt strong { display: block; font: 800 20px/1.2 'Work Sans', sans-serif; color: #fff; margin: 0 0 6px; }
.gt-cl-hl-txt span { display: block; font-size: 15px; line-height: 1.5; color: rgba(255,255,255,.82); }

/* Otras ventajas */
.gt-cl .gt-cl-grid { list-style: none !important; margin: 0 !important; padding: 0 !important; display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.gt-cl .gt-cl-tile { list-style: none !important; margin: 0 !important; padding: 18px 18px !important; display: flex; gap: 14px; align-items: flex-start; border-radius: 12px; background: rgba(255,255,255,.06); border: 1px solid rgba(255,255,255,.10); -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px); transition: transform .2s ease, background .2s ease, border-color .2s ease; }
.gt-cl .gt-cl-tile:hover { transform: translateY(-3px); background: rgba(255,255,255,.09); border-color: var(--gcl-a35); }
.gt-cl-tile:last-child:nth-child(odd) { grid-column: 1 / -1; }
.gt-cl-ico { flex: 0 0 44px; width: 44px; height: 44px; border-radius: 50%; display: flex; align-items: center; justify-content: center; color: var(--gcl-acc); border: 1px solid var(--gcl-a55); background: rgba(0,0,0,.12); }
.gt-cl-tile div > strong { display: block; font: 700 15px/1.3 'Work Sans', sans-serif; color: #fff; margin: 2px 0 4px; }
.gt-cl-tile div > span { display: block; font-size: 14px; line-height: 1.45; color: rgba(255,255,255,.78); }

@media (max-width: 980px) {
  .gt-cl-in { grid-template-columns: 1fr; gap: 48px; }
  .gt-cl-left { display: flex; flex-direction: column; align-items: flex-start; }
}
@media (max-width: 767px) {
  .gt-cl { padding: 56px 0; }
  .gt-cl-in { width: calc(100% - 32px); gap: 40px; }
  .gt-cl-left { align-items: center; text-align: center; }
  .gt-cl-card { max-width: 300px; margin-bottom: 28px; }
  .gt-cl .gt-cl-title { font-size: 34px !important; }
  .gt-cl .gt-cl-text { margin-left: auto !important; margin-right: auto !important; font-size: 15px; }
  .gt-cl .gt-cl-cta { width: 100%; justify-content: center; }
  .gt-cl-hl { gap: 18px; padding: 18px; }
  .gt-cl-hl-num { font-size: 56px; }
  .gt-cl-hl-txt strong { font-size: 17px; }
  .gt-cl-hl-txt span { font-size: 14px; }
  .gt-cl .gt-cl-grid { grid-template-columns: 1fr; }
}
@media (prefers-reduced-motion: reduce) { .gt-cl-card-in, .gt-cl-card-sheen, .gt-cl .gt-cl-tile, .gt-cl .gt-cl-cta { transition: none; } }
