:root {
  --bg-deep: #0A0E1A;
  --bg-mid: #0D1B2A;
  --bg-card: rgba(255,255,255,0.04);
  --border: rgba(255,255,255,0.08);
  --sage: #3EB489;
  --gold: #C9A84C;
  --white: #E8EAF0;
  --gray: #8892A4;
  --fuchsia: #f40383;
  --font-serif: 'Playfair Display', Georgia, serif;
  --font-sans: 'Inter', system-ui, sans-serif;
}

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;font-size:16px}
body{background:linear-gradient(180deg,var(--bg-deep),var(--bg-mid));background-attachment:fixed;color:var(--white);font-family:var(--font-sans);overflow-x:hidden}

/* LOADER */
#loader{position:fixed;inset:0;background:var(--bg-deep);z-index:9999;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:1.5rem;transition:opacity .6s ease}
#loader.hidden{opacity:0;pointer-events:none}
#loader p{font-family:var(--font-serif);color:var(--gold);font-size:1rem;letter-spacing:.3em;opacity:.7}
.fol-svg circle{fill:none;stroke:var(--gold);stroke-width:.8;opacity:.5}
.fol-svg{animation:fol-pulse 3s ease-in-out infinite}
@keyframes fol-pulse{0%,100%{opacity:.4;transform:scale(.97)}50%{opacity:1;transform:scale(1.02)}}

/* NAV */
nav{position:fixed;top:0;left:0;right:0;z-index:100;padding:1.2rem 5%;display:flex;align-items:center;justify-content:space-between;transition:all .4s ease}
nav.scrolled{background:rgba(10,14,26,.9);backdrop-filter:blur(12px);border-bottom:1px solid var(--border);padding:.8rem 5%}
.nav-logo{display:flex;align-items:center;gap:.75rem}
.nav-logo img{height:36px;width:auto;object-fit:contain}
.nav-logo span{font-family:var(--font-serif);font-size:1rem;color:var(--gold);letter-spacing:.05em}
.nav-links{display:flex;gap:2rem;list-style:none}
.nav-links a{color:var(--gray);text-decoration:none;font-size:.875rem;letter-spacing:.05em;transition:color .2s}
.nav-links a:hover{color:var(--sage)}
.nav-cta{background:linear-gradient(135deg,var(--sage),#728777);color:#000;padding:.5rem 1.2rem;border-radius:2rem;font-size:.8rem;font-weight:600;text-decoration:none;letter-spacing:.05em;transition:transform .2s,box-shadow .2s}
.nav-cta:hover{transform:translateY(-1px);box-shadow:0 4px 20px rgba(62,180,137,.3)}
.hamburger{display:none;flex-direction:column;gap:5px;cursor:pointer;background:none;border:none;padding:.5rem}
.hamburger span{display:block;width:24px;height:2px;background:var(--white);transition:all .3s}

/* HERO */
#hero{min-height:100vh;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;padding:8rem 5% 4rem}
.hero-bg{position:absolute;inset:0;background:radial-gradient(ellipse at 30% 50%,rgba(62,180,137,.07) 0%,transparent 60%),radial-gradient(ellipse at 70% 80%,rgba(201,168,76,.06) 0%,transparent 50%)}
#bg-canvas{position:fixed;inset:0;z-index:-1;pointer-events:none}
.hero-content{position:relative;z-index:2;text-align:center;max-width:860px}
.hero-badge{display:inline-block;padding:.4rem 1.2rem;border:1px solid rgba(201,168,76,.4);border-radius:2rem;font-size:.75rem;letter-spacing:.25em;color:var(--gold);margin-bottom:2rem;background:rgba(201,168,76,.06)}
.hero-content h1{font-family:var(--font-serif);font-size:clamp(2.4rem,6vw,4.5rem);line-height:1.15;margin-bottom:1.5rem;font-weight:700}
.hero-content h1 em{font-style:italic;color:var(--sage)}
.hero-content p{font-size:clamp(1rem,2vw,1.2rem);color:var(--gray);max-width:600px;margin:0 auto 2.5rem;line-height:1.8}
.hero-ctas{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}
.btn-primary{background:linear-gradient(135deg,var(--sage),#728777);color:#000;padding:.9rem 2rem;border-radius:3rem;font-weight:700;font-size:.9rem;text-decoration:none;letter-spacing:.04em;transition:all .25s;border:none;cursor:pointer}
.btn-primary:hover{transform:translateY(-2px);box-shadow:0 8px 30px rgba(62,180,137,.35)}
.btn-secondary{background:transparent;color:var(--white);padding:.9rem 2rem;border-radius:3rem;font-size:.9rem;text-decoration:none;letter-spacing:.04em;transition:all .25s;border:1px solid rgba(255,255,255,.2)}
.btn-secondary:hover{border-color:var(--gold);color:var(--gold)}

/* SECTION BASE */
section{padding:6rem 5%}
.section-tag{display:block;font-size:.7rem;letter-spacing:.3em;color:var(--sage);text-transform:uppercase;margin-bottom:1rem}
.section-title{font-family:var(--font-serif);font-size:clamp(1.8rem,4vw,3rem);margin-bottom:1rem;line-height:1.2}
.section-title span{color:var(--gold)}
.section-sub{color:var(--gray);font-size:1rem;line-height:1.8;max-width:620px}
.separator{width:60px;height:1px;background:linear-gradient(90deg,var(--sage),transparent);margin:1.5rem 0}
.fade-in{opacity:0;transform:translateY(30px);transition:opacity .7s ease,transform .7s ease}
.fade-in.visible{opacity:1;transform:translateY(0)}

/* ABOUT */
#about{background:linear-gradient(180deg,var(--bg-deep),var(--bg-mid))}
.about-inner{display:grid;grid-template-columns:1fr 1.2fr;gap:5rem;align-items:center;max-width:1100px;margin:0 auto}
.about-img-wrap{position:relative;width:fit-content;margin:0 auto}
.about-img-wrap img{width:100%;max-width:400px;border-radius:4px;object-fit:cover;display:block;filter:grayscale(20%) contrast(1.05)}
.about-img-frame{position:absolute;inset:-12px;border:1px solid rgba(201,168,76,.25);border-radius:6px;pointer-events:none}
.about-img-frame::before{content:'';position:absolute;top:16px;right:-16px;width:60px;height:60px;border-top:2px solid var(--gold);border-right:2px solid var(--gold)}
.about-img-frame::after{content:'';position:absolute;bottom:16px;left:-16px;width:60px;height:60px;border-bottom:2px solid var(--sage);border-left:2px solid var(--sage)}
.credentials{display:flex;flex-wrap:wrap;gap:.6rem;margin:1.5rem 0}
.cred-pill{padding:.35rem .9rem;border:1px solid var(--border);border-radius:2rem;font-size:.75rem;color:var(--gray);background:var(--bg-card)}
.mantra{margin-top:1.5rem;padding:1.2rem 1.5rem;border-left:2px solid var(--gold);background:var(--bg-card);border-radius:0 4px 4px 0}
.mantra p{font-family:var(--font-serif);font-style:italic;color:var(--gold);font-size:.95rem;line-height:1.7}

/* METODOLOGÍA */
#metodo{background:var(--bg-deep)}
.metodo-header{text-align:center;max-width:640px;margin:0 auto 4rem}
.metodo-header .section-sub{margin:0 auto}
.pillars{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;max-width:1100px;margin:0 auto}.pillars .pillar-card:nth-child(4){grid-column:1/2;margin-left:auto;width:100%}.pillars .pillar-card:nth-child(5){grid-column:2/3;width:100%}@media(max-width:768px){.pillars{grid-template-columns:1fr}.pillars .pillar-card:nth-child(4),.pillars .pillar-card:nth-child(5){grid-column:auto;margin-left:0}}
.pillar-card{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;padding:2rem;position:relative;overflow:hidden;transition:border-color .3s,transform .3s}
.pillar-card:hover{border-color:rgba(62,180,137,.3);transform:translateY(-4px)}
.pillar-card::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--sage),var(--gold))}
.pillar-num{font-family:var(--font-serif);font-size:3rem;color:rgba(201,168,76,.15);font-weight:700;line-height:1;margin-bottom:.75rem}
.pillar-card h3{font-family:var(--font-serif);font-size:1.2rem;margin-bottom:.75rem;color:var(--white)}
.pillar-card p{color:var(--gray);font-size:.875rem;line-height:1.8}
.pillar-icon{width:40px;height:40px;border-radius:50%;background:rgba(255,255,255,0.05);border:1px solid var(--border);display:flex;align-items:center;justify-content:center;margin-bottom:1rem;font-size:1.2rem}

/* ECOSISTEMA */
.eco-header{text-align:center;margin-bottom:4rem}
.eco-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;max-width:1100px;margin:0 auto}
.eco-card{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;padding:2rem;text-align:center;transition:all .3s}
.eco-card.active{border-color:rgba(62,180,137,.4)}
.eco-card:hover{transform:translateY(-4px)}
.eco-icon{font-size:2.5rem;margin-bottom:1rem}
.eco-card h3{font-family:var(--font-serif);font-size:1.15rem;margin-bottom:.75rem}
.eco-card p{color:var(--gray);font-size:.85rem;line-height:1.7;margin-bottom:1.2rem}
.badge-soon{display:inline-block;padding:.3rem .8rem;background:rgba(201,168,76,.1);border:1px solid rgba(201,168,76,.3);border-radius:2rem;font-size:.7rem;letter-spacing:.1em;color:var(--gold)}
.badge-active{display:inline-block;padding:.3rem .8rem;background:rgba(62,180,137,.1);border:1px solid rgba(62,180,137,.3);border-radius:2rem;font-size:.7rem;letter-spacing:.1em;color:var(--sage)}
.btn-eco{display:inline-block;margin-top:1rem;padding:.6rem 1.4rem;background:transparent;border:1px solid var(--sage);color:var(--sage);border-radius:2rem;font-size:.8rem;font-weight:700;text-decoration:none;cursor:pointer;transition:all .2s}
.btn-eco:hover{transform:translateY(-2px);box-shadow:0 4px 20px rgba(62,180,137,.3)}

/* MEMBRESÍA */
.mem-inner{max-width:1000px;margin:0 auto;display:grid;grid-template-columns:1.2fr 1fr;gap:4rem;align-items:start}
.mem-features{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem;margin:2rem 0}
.mem-feat{display:flex;gap:1rem;align-items:flex-start;padding:1.2rem;background:var(--bg-card);border:1px solid var(--border);border-radius:8px;transition:border-color .3s}
.mem-feat:hover{border-color:rgba(201,168,76,.3)}
.mem-feat-icon{flex-shrink:0;width:44px;height:44px;border-radius:50%;background:rgba(255,255,255,0.05);display:flex;align-items:center;justify-content:center;font-size:1.2rem}
.mem-feat h4{font-family:var(--font-serif);font-size:1rem;margin-bottom:.3rem;color:var(--gold)}
.mem-feat p{font-size:.82rem;color:var(--gray);line-height:1.6}
.mem-cta-box{background:var(--bg-card);border:1px solid var(--border);border-radius:16px;padding:2.5rem;text-align:center;position:sticky;top:6rem}
.mem-cta-box h3{font-family:var(--font-serif);font-size:1.5rem;margin-bottom:.75rem}
.mem-cta-box p{color:var(--gray);font-size:.875rem;margin-bottom:1.5rem;line-height:1.7}
.mem-badge{display:inline-block;padding:.4rem 1rem;background:rgba(201,168,76,.1);border:1px solid rgba(201,168,76,.3);border-radius:2rem;font-size:.75rem;color:var(--gold);letter-spacing:.1em;margin-bottom:1rem}
.waitlist-form{display:flex;flex-direction:column;gap:.75rem}
.waitlist-form input{background:rgba(255,255,255,.05);border:1px solid var(--border);border-radius:8px;padding:.85rem 1rem;color:var(--white);font-size:.875rem;outline:none;transition:border-color .2s;font-family:var(--font-sans)}
.waitlist-form input:focus{border-color:var(--gold)}
.waitlist-form input::placeholder{color:var(--gray)}

/* TEST */
#test{background:linear-gradient(180deg,var(--bg-deep),var(--bg-mid));padding:6rem 5%}
.test-container{max-width:760px;margin:0 auto}
.test-header{text-align:center;margin-bottom:3rem}
.test-progress{display:flex;gap:.5rem;justify-content:center;margin-bottom:2.5rem}
.prog-dot{width:10px;height:10px;border-radius:50%;background:var(--border);border:1px solid var(--gray);transition:all .3s}
.prog-dot.active{background:var(--sage);border-color:var(--sage);box-shadow:0 0 10px rgba(62,180,137,.5)}
.prog-dot.done{background:var(--gold);border-color:var(--gold)}
.question-card{background:var(--bg-card);border:1px solid var(--border);border-radius:16px;padding:2.5rem;display:none}
.question-card.active{display:block;animation:slide-in .4s ease}
@keyframes slide-in{from{opacity:0;transform:translateX(20px)}to{opacity:1;transform:translateX(0)}}
.q-category{font-size:.7rem;letter-spacing:.25em;color:var(--sage);text-transform:uppercase;margin-bottom:.75rem}
.q-text{font-family:var(--font-serif);font-size:1.2rem;margin-bottom:1.5rem;line-height:1.6;color:var(--white)}
.q-options{display:flex;flex-direction:column;gap:.75rem}
.q-option{display:flex;align-items:center;gap:1rem;padding:1rem 1.2rem;border:1px solid var(--border);border-radius:8px;cursor:pointer;transition:all .2s;background:rgba(255,255,255,.02)}
.q-option:hover{border-color:rgba(62,180,137,.4);background:rgba(62,180,137,.05)}
.q-option.selected{border-color:var(--sage);background:rgba(62,180,137,.1)}
.q-option input{display:none}
.q-label{font-size:.875rem;color:var(--gray);line-height:1.5;cursor:pointer}
.q-option.selected .q-label{color:var(--white)}
.q-check{width:18px;height:18px;border-radius:50%;border:2px solid var(--border);flex-shrink:0;transition:all .2s;display:flex;align-items:center;justify-content:center}
.q-option.selected .q-check{border-color:var(--sage);background:var(--sage)}
.q-check::after{content:'✓';color:#000;font-size:.65rem;display:none}
.q-option.selected .q-check::after{display:block}
.test-nav{display:flex;justify-content:space-between;align-items:center;margin-top:1.5rem}
.btn-test{padding:.7rem 1.8rem;border-radius:2rem;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s;border:none;font-family:var(--font-sans)}
.btn-test-next{background:linear-gradient(135deg,var(--sage),#728777);color:#000}
.btn-test-prev{background:transparent;color:var(--gray);border:1px solid var(--border)}
.btn-test-prev:hover{border-color:var(--white);color:var(--white)}
.btn-test-next:disabled{opacity:.4;cursor:not-allowed}
.q-counter{font-size:.8rem;color:var(--gray);white-space:nowrap}
.result-card{display:none;text-align:center;animation:slide-in .5s ease}
.result-card.active{display:block}
.result-icon{font-size:3.5rem;margin-bottom:1rem}
.result-card h3{font-family:var(--font-serif);font-size:1.8rem;margin-bottom:1rem;color:var(--gold)}
.result-card p{color:var(--gray);font-size:.95rem;line-height:1.8;max-width:560px;margin:0 auto 2rem}
.result-tag{display:inline-block;padding:.5rem 1.5rem;border:1px solid var(--gold);border-radius:2rem;color:var(--gold);font-size:.8rem;letter-spacing:.1em;margin-bottom:2rem}

/* CONTACT */
#contacto{background:var(--bg-deep)}
.contact-inner{max-width:600px;margin:0 auto;text-align:center}
.contact-form{display:flex;flex-direction:column;gap:1rem;margin:2rem 0}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.contact-form input,.contact-form textarea{background:rgba(255,255,255,.04);border:1px solid var(--border);border-radius:8px;padding:.9rem 1.1rem;color:var(--white);font-size:.875rem;outline:none;transition:border-color .2s;font-family:var(--font-sans);width:100%}
.contact-form textarea{resize:vertical;min-height:120px}
.contact-form input:focus,.contact-form textarea:focus{border-color:var(--sage)}
.contact-form input::placeholder,.contact-form textarea::placeholder{color:var(--gray)}
.s-links{display:flex;gap:1.2rem;justify-content:center;margin-top:2.5rem;flex-wrap:wrap}
.s-link{width:44px;height:44px;display:flex;align-items:center;justify-content:center;border:1px solid var(--border);border-radius:50%;color:var(--gray);font-size:1.2rem;text-decoration:none;transition:all .3s cubic-bezier(0.4, 0, 0.2, 1);background:var(--bg-card)}
.s-link:hover{transform:translateY(-3px)}
.s-links .s-link#s-instagram:hover{border-color:#d6249f;color:#fff;background:radial-gradient(circle at 30% 107%, #fdf497 0%, #fdf497 5%, #fd5949 45%,#d6249f 60%,#285AEB 90%);box-shadow:0 5px 15px rgba(214,36,159,0.2)}
.s-links .s-link#s-facebook:hover{border-color:#1877F2;color:#1877F2;background:rgba(24,119,242,0.1);box-shadow:0 5px 15px rgba(24,119,242,0.2)}
.s-links .s-link#s-tiktok:hover{border-color:#010101;color:#fff;background:#010101;box-shadow:-3px -3px 12px rgba(0,242,254,0.6), 3px 3px 12px rgba(254,9,121,0.6)}
.s-links .s-link#s-linkedin:hover{border-color:#0077B5;color:#0077B5;background:rgba(0,119,181,0.1);box-shadow:0 5px 15px rgba(0,119,181,0.2)}
.s-links .s-link#s-youtube:hover{border-color:#FF0000;color:#FF0000;background:rgba(255,0,0,0.1);box-shadow:0 5px 15px rgba(255,0,0,0.2)}
.s-links .s-link#s-spotify:hover{border-color:#1DB954;color:#1DB954;background:rgba(29,185,84,0.1);box-shadow:0 5px 15px rgba(29,185,84,0.2)}
.success-msg{display:none;padding:1rem;background:rgba(62,180,137,.1);border:1px solid rgba(62,180,137,.3);border-radius:8px;color:var(--sage);font-size:.875rem;margin-top:.5rem}

/* FOOTER */
footer{background:rgba(0,0,0,.3);border-top:1px solid var(--border);padding:2rem 5%;text-align:center}
footer p{color:var(--gray);font-size:.8rem;letter-spacing:.05em}
footer span{color:var(--gold)}
.footer-legal{margin-top:.8rem;font-size:.75rem;color:var(--gray)}
.footer-legal a{color:var(--gray);text-decoration:none;transition:color .2s;margin:0 .5rem}
.footer-legal a:hover{color:var(--gold)}/* DESAFÍO / ¿TE SENTÍS ASÍ? */
#desafio {
  background: linear-gradient(180deg, var(--bg-deep), var(--bg-mid));
  border-bottom: 1px solid var(--border);
}
.desafio-inner {
  display: grid;
  grid-template-columns: 1.2fr 1fr;
  gap: 4rem;
  max-width: 1100px;
  margin: 0 auto;
  align-items: start;
}
.desafio-left {
  display: flex;
  flex-direction: column;
  gap: 1.2rem;
}
.desafio-card {
  background: var(--bg-card);
  border: 1px solid var(--border);
  border-radius: 12px;
  padding: 1.5rem;
  transition: all 0.3s ease;
  display: flex;
  gap: 1.2rem;
  align-items: flex-start;
}
.desafio-card:hover {
  border-color: rgba(244, 3, 131, 0.35);
  transform: translateX(4px);
  box-shadow: 0 6px 24px rgba(244, 3, 131, 0.05);
}
.desafio-card-icon {
  font-size: 1.4rem;
  color: var(--gold);
  margin-top: 0.1rem;
  flex-shrink: 0;
  transition: color 0.3s ease;
}
.desafio-card:hover .desafio-card-icon {
  color: var(--fuchsia);
}
.desafio-card h4 {
  font-family: var(--font-serif);
  font-size: 1.1rem;
  color: var(--white);
  margin-bottom: 0.4rem;
}
.desafio-card p {
  font-size: 0.85rem;
  color: var(--gray);
  line-height: 1.6;
}
.desafio-right {
  background: rgba(62, 180, 137, 0.02);
  border: 1px solid rgba(62, 180, 137, 0.12);
  border-radius: 16px;
  padding: 2.5rem;
  position: sticky;
  top: 6rem;
  box-shadow: 0 10px 30px rgba(0,0,0,0.2);
}
.desafio-right h3 {
  font-family: var(--font-serif);
  font-size: 1.6rem;
  color: var(--sage);
  margin-bottom: 1.2rem;
}
.desafio-right p {
  font-size: 0.95rem;
  color: var(--gray);
  line-height: 1.8;
  margin-bottom: 1.2rem;
}
.desafio-right em {
  display: block;
  font-style: normal;
  font-family: var(--font-serif);
  color: var(--gold);
  font-size: 1.15rem;
  line-height: 1.6;
  border-left: 2px solid var(--gold);
  padding-left: 1rem;
  margin-top: 2rem;
}

/* PARA QUIÉN ESTÁ CREADO */
#para-quien {
  background: var(--bg-deep);
  border-bottom: 1px solid var(--border);
}
.para-quien-header {
  text-align: center;
  max-width: 700px;
  margin: 0 auto 3.5rem;
}
.para-quien-header .section-sub {
  margin: 0 auto;
}
.profiles-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.5rem;
  max-width: 1100px;
  margin: 0 auto 3.5rem;
}
.profile-card {
  background: var(--bg-card);
  border: 1px solid var(--border);
  border-radius: 12px;
  padding: 2.5rem 2rem;
  text-align: center;
  transition: all 0.3s ease;
  position: relative;
  overflow: hidden;
}
.profile-card::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 2px;
  background: linear-gradient(90deg, var(--sage), var(--gold));
}
.profile-card:hover {
  border-color: rgba(62, 180, 137, 0.3);
  transform: translateY(-4px);
}
.profile-card-icon {
  font-size: 2.5rem;
  margin-bottom: 1.2rem;
}
.profile-card h3 {
  font-family: var(--font-serif);
  font-size: 1.3rem;
  color: var(--gold);
  margin-bottom: 0.8rem;
}
.profile-card p {
  color: var(--gray);
  font-size: 0.875rem;
  line-height: 1.7;
}
.para-quien-footer {
  max-width: 860px;
  margin: 0 auto;
  background: rgba(255, 255, 255, 0.01);
  border: 1px solid var(--border);
  border-radius: 12px;
  padding: 2.2rem;
  text-align: center;
  backdrop-filter: blur(8px);
}
.para-quien-footer h4 {
  font-family: var(--font-serif);
  font-style: italic;
  font-size: 1.3rem;
  color: var(--gold);
  margin-bottom: 1rem;
}
.para-quien-footer p {
  color: var(--gray);
  font-size: 0.9rem;
  line-height: 1.8;
  max-width: 740px;
  margin: 0 auto;
}

/* RESPONSIVE */
@media(max-width:900px){
  .about-inner{display:flex;flex-direction:column-reverse;gap:2.5rem}
  .mem-inner{grid-template-columns:1fr}
  .mem-features{grid-template-columns:1fr;gap:1rem}
  .pillars,.eco-grid{grid-template-columns:1fr}
  .mem-cta-box{position:static;padding:1.5rem}
  .about-img-wrap img{max-width:300px}

  /* Centrar cabeceras de sección en móvil */
  .mem-left .section-tag, .mem-left .section-title,
  .desafio-left .section-tag, .desafio-left .section-title,
  .about-text .section-tag, .about-text .section-title {
    text-align: center;
  }
  .mem-left .separator, .desafio-left .separator, .about-text .separator {
    margin: 1.5rem auto;
  }
  
  .desafio-inner {
    grid-template-columns: 1fr;
    gap: 3rem;
  }
  .desafio-right {
    position: static;
    padding: 2rem;
  }
  .profiles-grid {
    grid-template-columns: 1fr;
  }
  .profile-card {
    padding: 2rem;
  }
}
@media(max-width:992px){
  .nav-links,.nav-cta{display:none}
  .nav-links.open{display:flex;flex-direction:column;position:fixed;top:60px;left:0;right:0;background:rgba(10,14,26,.97);padding:2rem;gap:1.5rem;border-bottom:1px solid var(--border)}
  .hamburger{display:flex}
}
@media(max-width:640px){
  .hero-ctas{flex-direction:column;align-items:center}
  .form-row{grid-template-columns:1fr}
  .pillars,.eco-grid{grid-template-columns:1fr}
}

/* ─── NEWSLETTER POPUP ─── */
#newsletter-popup.newsletter-popup-card {
  position: fixed;
  bottom: 24px;
  right: -420px; /* Oculto por defecto */
  width: 360px;
  background: rgba(10, 14, 26, 0.96);
  backdrop-filter: blur(16px);
  border: 1px solid var(--gold);
  border-radius: 12px;
  padding: 1.5rem 1.25rem;
  box-shadow: 0 10px 40px rgba(0, 0, 0, 0.6);
  z-index: 99999;
  transition: right 0.6s cubic-bezier(0.16, 1, 0.3, 1), opacity 0.4s;
  opacity: 0;
  box-sizing: border-box;
}

#newsletter-popup.newsletter-popup-card.show {
  right: 24px;
  opacity: 1;
}

#newsletter-popup .newsletter-popup-close-btn {
  position: absolute;
  top: 10px;
  right: 12px;
  background: none;
  border: none;
  color: var(--gray);
  font-size: 1.6rem;
  cursor: pointer;
  line-height: 1;
  transition: color 0.2s;
  z-index: 10;
}

#newsletter-popup .newsletter-popup-close-btn:hover {
  color: var(--fuchsia);
}

#newsletter-popup .popup-title {
  font-family: var(--font-serif);
  font-size: 1.35rem;
  color: var(--white);
  margin-bottom: 0.5rem;
  text-align: center;
  font-weight: 600;
  letter-spacing: 0.02em;
}

#newsletter-popup .popup-title span {
  color: var(--gold);
}

#newsletter-popup .popup-subtitle {
  font-family: var(--font-sans);
  font-size: 0.82rem;
  color: var(--gray);
  line-height: 1.5;
  margin-bottom: 1.2rem;
  text-align: center;
}

#newsletter-popup #sib-container {
  background: transparent !important;
  border: none !important;
  padding: 0 !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}

#newsletter-popup #sib-form {
  padding: 0 !important;
  margin: 0 !important;
}

#newsletter-popup .entry_block {
  width: 100%;
}

#newsletter-popup .entry__field {
  width: 100%;
}

#newsletter-popup .input {
  width: 100% !important;
  background-color: #121829 !important;
  background: #121829 !important;
  border: 1px solid rgba(255, 255, 255, 0.15) !important;
  border-radius: 8px !important;
  padding: 0.8rem 1rem !important;
  color: #ffffff !important;
  font-size: 0.875rem !important;
  outline: none !important;
  transition: border-color 0.25s !important;
  font-family: var(--font-sans) !important;
  box-sizing: border-box !important;
}

#newsletter-popup .input:-webkit-autofill,
#newsletter-popup .input:-webkit-autofill:hover,
#newsletter-popup .input:-webkit-autofill:focus {
  -webkit-text-fill-color: #ffffff !important;
  -webkit-box-shadow: 0 0 0px 1000px #121829 inset !important;
  transition: background-color 5000s ease-in-out 0s !important;
}

#newsletter-popup .input:focus {
  border-color: var(--sage) !important;
}

#newsletter-popup .input::placeholder {
  color: var(--gray) !important;
  opacity: 0.8;
}

#newsletter-popup .entry__error {
  font-family: var(--font-sans) !important;
  font-size: 0.75rem !important;
  text-align: left !important;
  color: #ffeded !important;
  background-color: #661d1d !important;
  border: 1px solid #ff4949 !important;
  border-radius: 6px !important;
  padding: 6px 10px !important;
  margin-top: 6px !important;
  box-sizing: border-box !important;
}

#newsletter-popup .entry__specification {
  display: block;
  font-family: var(--font-sans);
  font-size: 0.72rem;
  color: var(--gray);
  opacity: 0.7;
  margin-top: 6px;
  text-align: left;
}

#newsletter-popup .popup-submit-btn {
  width: 100% !important;
  background: linear-gradient(135deg, var(--sage), #728777) !important;
  color: #0A0E1A !important;
  padding: 0.85rem !important;
  border-radius: 8px !important;
  font-weight: 700 !important;
  font-size: 0.875rem !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
  border: none !important;
  cursor: pointer !important;
  transition: transform 0.2s, box-shadow 0.2s !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  box-sizing: border-box !important;
  font-family: var(--font-sans) !important;
  margin-top: 0.8rem !important;
}

#newsletter-popup .popup-submit-btn:hover {
  transform: translateY(-1px) !important;
  box-shadow: 0 4px 15px rgba(62, 180, 137, 0.3) !important;
}

#newsletter-popup .sib-form-message-panel {
  text-align: center !important;
  background: transparent !important;
  border: none !important;
  padding: 1rem 0 !important;
  margin: 0 !important;
}

#newsletter-popup .sib-form-message-panel__text {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.75rem;
  color: var(--white);
}

#newsletter-popup #success-message .sib-form-message-panel__inner-text {
  font-family: var(--font-serif);
  font-size: 1.15rem;
  color: var(--gold);
  line-height: 1.4;
  text-align: center;
}

#newsletter-popup #error-message .sib-form-message-panel__inner-text {
  font-family: var(--font-sans);
  font-size: 0.85rem;
  color: #ffeded;
  text-align: center;
}

#newsletter-popup .sib-icon {
  width: 32px;
  height: 32px;
  fill: currentColor;
}

#newsletter-popup #success-message .sib-icon {
  color: var(--sage);
}

#newsletter-popup #error-message .sib-icon {
  color: #ff4949;
}

/* Captcha overrides */
#newsletter-popup .sib-captcha {
  margin: 1rem 0 0.5rem 0;
  display: flex;
  justify-content: center;
}

#newsletter-popup .g-recaptcha {
  transform: scale(0.92);
  transform-origin: center;
}

@media(max-width: 400px) {
  #newsletter-popup.newsletter-popup-card {
    width: calc(100% - 32px);
    bottom: 16px;
    right: -110%;
  }
  #newsletter-popup.newsletter-popup-card.show {
    right: 16px;
  }
  #newsletter-popup .g-recaptcha {
    transform: scale(0.85);
  }
}

/* Botón Flotante para reabrir popup (Pill Shape con etiqueta) */
#newsletter-floating-trigger.newsletter-floating-btn {
  position: fixed;
  bottom: 24px;
  right: -180px; /* Oculto por defecto en el lateral */
  height: 42px;
  padding: 0 16px;
  background: var(--fuchsia);
  color: var(--white);
  border: none;
  border-radius: 21px;
  box-shadow: 0 4px 20px rgba(244, 3, 131, 0.4);
  cursor: pointer;
  z-index: 99998;
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: var(--font-sans);
  font-size: 0.82rem;
  font-weight: 600;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  transition: right 0.5s cubic-bezier(0.16, 1, 0.3, 1), transform 0.3s, background 0.3s;
}

#newsletter-floating-trigger.newsletter-floating-btn:hover {
  background: #d0026e;
  transform: translateY(-2px);
}

#newsletter-floating-trigger.newsletter-floating-btn.show {
  right: 24px;
}

@media(max-width: 992px) {
  #newsletter-floating-trigger.newsletter-floating-btn {
    bottom: 20px;
  }
  #newsletter-floating-trigger.newsletter-floating-btn.show {
    right: 20px;
  }
}

@media(max-width: 480px) {
  #newsletter-floating-trigger.newsletter-floating-btn {
    bottom: 16px;
    height: 38px;
    padding: 0 12px;
    font-size: 0.75rem;
    border-radius: 19px;
  }
  #newsletter-floating-trigger.newsletter-floating-btn.show {
    right: 16px;
  }
  .test-nav {
    display: grid;
    grid-template-areas: 
      "counter counter"
      "prev next";
    gap: 0.8rem;
    justify-content: center;
    align-items: center;
  }
  .btn-test-prev {
    grid-area: prev;
  }
  .q-counter {
    grid-area: counter;
    text-align: center;
    margin-bottom: 0.2rem;
  }
  .btn-test-next {
    grid-area: next;
  }
}

