/* GWX Participaciones — Frontend */
.gwx-plans-wrap { max-width: 900px; margin: 0 auto; padding: 20px 0; font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif; }
.gwx-plans-grid { display: flex; flex-wrap: wrap; gap: 24px; justify-content: center; }
.gwx-plan-card  { background: #fff; border-radius: 18px; box-shadow: 0 4px 24px rgba(36,61,43,.09); flex: 1 1 260px; max-width: 300px; position: relative; border: 2px solid transparent; transition: box-shadow .3s, transform .3s; overflow: hidden; }
.gwx-plan-card:hover { box-shadow: 0 10px 40px rgba(36,61,43,.16); transform: translateY(-4px); }
.gwx-plan-featured { border-color: #243d2b; }
.gwx-plan-badge { background: linear-gradient(90deg,#f7971e,#ffd200); color: #1a3020; font-size:.75em; font-weight:700; text-transform:uppercase; letter-spacing:.1em; padding:5px 16px; text-align:center; }
.gwx-plan-header { background: linear-gradient(135deg,#243d2b,#1a3020); color:#fff; padding: 28px 24px 20px; text-align:center; }
.gwx-plan-header h3 { margin:0 0 12px; font-size:1.2em; font-weight:800; color: #fff !important; }
.gwx-plan-price { display:flex; align-items:baseline; justify-content:center; gap:4px; }
.gwx-price-amount { font-size:2.4em; font-weight:900; }
.gwx-price-period { font-size:.9em; opacity:.75; }
.gwx-plan-body { padding: 24px; }
.gwx-plan-desc { color:#666; font-size:.9em; margin:0 0 16px; }
.gwx-plan-features { list-style:none; margin:0; padding:0; }
.gwx-plan-features li { padding:6px 0; font-size:.9em; color:#444; border-bottom:1px solid #f0f0f0; }
.gwx-plan-footer { padding: 0 24px 28px; text-align:center; }
.gwx-btn-subscribe { background:linear-gradient(135deg,#243d2b,#1a3020); color:#fff; border:none; padding:13px 32px; border-radius:50px; font-size:.95em; font-weight:700; cursor:pointer; width:100%; transition:filter .2s, transform .2s; }
.gwx-btn-subscribe:hover { filter:brightness(1.15); transform:scale(1.02); }
.gwx-plan-featured .gwx-btn-subscribe { background:linear-gradient(90deg,#f7971e,#ffd200); color:#1a3020; }
/* Modal */
.gwx-modal { position:fixed; inset:0; z-index:99999; display:flex; align-items:center; justify-content:center; }
#gwx-modal-overlay { position:fixed; inset:0; background:rgba(0,0,0,.55); z-index:99998; }
.gwx-modal-inner { background:#fff; border-radius:16px; padding:36px; max-width:420px; width:90%; z-index:99999; position:relative; box-shadow:0 16px 60px rgba(0,0,0,.25); }
.gwx-modal-inner h3 { margin:0 0 24px; font-size:1.2em; color:#1a3020; }
.gwx-modal-close { position:absolute; top:14px; right:18px; background:none; border:none; font-size:1.5em; cursor:pointer; color:#888; line-height:1; }
.gwx-form-group { margin-bottom:18px; }
.gwx-form-group label { display:block; font-size:.88em; font-weight:600; color:#555; margin-bottom:6px; }
.gwx-form-group input { width:100%; padding:11px 14px; border:1.5px solid #ddd; border-radius:8px; font-size:.95em; box-sizing:border-box; transition:border-color .2s; }
.gwx-form-group input:focus { border-color:#243d2b; outline:none; }
.gwx-btn-checkout { width:100%; background:linear-gradient(135deg,#243d2b,#1a3020); color:#e8dfc8; border:none; padding:14px; border-radius:50px; font-size:1em; font-weight:700; cursor:pointer; margin-top:8px; }
.gwx-secure-note { text-align:center; font-size:.8em; color:#999; margin-top:12px; }
.gwx-error { color:#c0392b; background:#fee2e2; border-radius:8px; padding:10px 16px; margin-bottom:16px; font-size:.9em; }
@media(max-width:600px) { .gwx-plan-card { max-width:100%; } }
