/* =============================================
   MEYSHIFTING — styles.css — COMPLETO
   ============================================= */
:root {
  --pink:      #ff2d9b;
  --pinksoft:  #ff6ec7;
  --green:     #00ff88;
  --greensft:  #7affcc;
  --black:     #050308;
  --blackmid:  #0a0512;
  --glass:     rgba(255,255,255,0.05);
  --glassb:    rgba(255,255,255,0.10);
  --w90:       rgba(255,255,255,0.90);
  --w60:       rgba(255,255,255,0.60);
  --w30:       rgba(255,255,255,0.30);
  --w10:       rgba(255,255,255,0.10);
  --fd: 'Cormorant Garamond', Georgia, serif;
  --fb: 'Inter', system-ui, sans-serif;
  --ease: cubic-bezier(0.4,0,0.2,1);
  --spring: cubic-bezier(0.34,1.56,0.64,1);
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{background:var(--black);color:#fff;font-family:var(--fb);overflow-x:hidden;line-height:1.6;cursor:none}
#cursor-dot{
  position:fixed;width:12px;height:12px;border-radius:50%;
  background:var(--pink);pointer-events:none;z-index:9999;
  transform:translate(-50%,-50%);
  box-shadow:0 0 14px var(--pink),0 0 28px var(--pink);
  transition:width .2s,height .2s;mix-blend-mode:screen;
}
#particle-canvas{position:fixed;inset:0;pointer-events:none;z-index:9998;mix-blend-mode:screen}
#starfield{position:fixed;inset:0;pointer-events:none;z-index:0}
.container{max-width:1200px;margin:0 auto;padding:0 clamp(20px,4vw,60px);position:relative;z-index:2}
.fade-in{opacity:0;transform:translateY(24px);transition:opacity .8s var(--ease),transform .8s var(--ease)}
.fade-in.visible{opacity:1;transform:translateY(0)}

/* ---- BUTTONS ---- */
.btn{display:inline-flex;align-items:center;gap:8px;border:none;cursor:none;text-decoration:none;
  font-family:var(--fb);font-weight:500;letter-spacing:.04em;border-radius:100px;transition:all .3s var(--ease)}
.btn-nav{font-size:.82rem;padding:9px 20px;background:rgba(255,45,155,.15);
  border:1px solid rgba(255,45,155,.4);color:#fff}
.btn-nav:hover{background:rgba(255,45,155,.3);box-shadow:0 0 20px rgba(255,45,155,.4)}
.btn-primary{font-size:.92rem;padding:13px 26px;background:var(--pink);color:#fff;
  box-shadow:0 0 24px rgba(255,45,155,.5),0 0 48px rgba(255,45,155,.2)}
.btn-primary:hover{transform:translateY(-2px) scale(1.03);box-shadow:0 0 40px rgba(255,45,155,.7),0 0 80px rgba(255,45,155,.3)}
.btn-outline{font-size:.92rem;padding:12px 22px;background:transparent;
  border:1px solid var(--green);color:var(--green);box-shadow:0 0 16px rgba(0,255,136,.2)}
.btn-outline:hover{background:rgba(0,255,136,.1);box-shadow:0 0 30px rgba(0,255,136,.4)}
.btn-card{font-size:.82rem;padding:10px 20px;margin-top:16px;
  background:rgba(255,45,155,.13);border:1px solid rgba(255,45,155,.45);
  color:var(--pinksoft);display:inline-flex;border-radius:100px}
.btn-card:hover{background:var(--pink);color:#fff;box-shadow:0 0 20px rgba(255,45,155,.5)}
.btn-card-green{border-color:rgba(0,255,136,.45);color:var(--green);background:rgba(0,255,136,.07)}
.btn-card-green:hover{background:var(--green);color:#000}
.btn-big{font-size:1.05rem;font-weight:600;padding:18px 44px;letter-spacing:.06em;
  background:linear-gradient(135deg,var(--pink),#cc00aa,var(--pink));background-size:200% 200%;
  animation:shimmer 4s ease infinite;color:#fff;
  box-shadow:0 0 40px rgba(255,45,155,.55),0 0 80px rgba(255,45,155,.25)}
.btn-big:hover{transform:translateY(-3px) scale(1.03);box-shadow:0 0 60px rgba(255,45,155,.75)}
@keyframes shimmer{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}

/* ---- NAV ---- */
.nav{position:fixed;top:0;left:0;right:0;z-index:100;display:flex;align-items:center;
  justify-content:space-between;padding:18px clamp(20px,4vw,60px);
  background:rgba(5,3,8,.6);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);
  border-bottom:1px solid rgba(255,45,155,.12);transition:background .4s}
.nav-logo{font-family:var(--fd);font-size:1.5rem;font-weight:600;letter-spacing:.02em}
.logo-mey{color:var(--pink);text-shadow:0 0 16px var(--pink)}
.logo-sh{color:var(--green);text-shadow:0 0 16px var(--green)}
.nav-links{display:flex;gap:32px;list-style:none}
.nav-links a{color:var(--w60);text-decoration:none;font-size:.85rem;letter-spacing:.06em;
  transition:color .3s;position:relative}
.nav-links a:hover,.nav-active{color:#fff !important}
.nav-active::after{content:'';position:absolute;bottom:-4px;left:0;right:0;height:2px;
  background:var(--pink);box-shadow:0 0 8px var(--pink)}

/* ---- HERO ---- */
.hero{position:relative;min-height:100vh;overflow:hidden;display:flex;align-items:stretch}
.hero-bg{position:absolute;inset:0;z-index:0}
.hero-img{width:100%;height:100%;object-fit:cover;object-position:center top;
  filter:brightness(.78) saturate(1.1);transform-origin:center;will-change:transform}
.hero-overlay{position:absolute;inset:0;
  background:linear-gradient(to right,rgba(5,3,8,.88) 36%,rgba(5,3,8,.18) 62%,rgba(5,3,8,.05) 100%),
             linear-gradient(to top,rgba(5,3,8,.92) 0%,transparent 38%)}
.hero-content{position:relative;z-index:2;width:100%;max-width:1200px;margin:0 auto;
  padding:140px clamp(20px,4vw,60px) 80px;display:flex;align-items:flex-end}
.hero-left{max-width:500px}
.hero-eyebrow{font-size:.72rem;letter-spacing:.2em;color:var(--w60);text-transform:uppercase;margin-bottom:16px}
.hero-title{font-family:var(--fd);font-size:clamp(3.4rem,7vw,6.5rem);font-weight:400;line-height:1.0;margin-bottom:20px}
.t-pink{color:var(--pink);text-shadow:0 0 30px var(--pink),0 0 60px rgba(255,45,155,.4)}
.t-green{color:var(--green);font-style:italic;text-shadow:0 0 30px var(--green),0 0 60px rgba(0,255,136,.3)}
.hero-body{font-size:.9rem;color:var(--w60);line-height:1.75;margin-bottom:30px}
.hero-ctas{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:40px}
.hero-stats{display:flex;gap:28px;flex-wrap:wrap}
.stat{display:flex;align-items:center;gap:10px}
.stat-icon{font-size:1.3rem;color:var(--pinksoft)}
.stat strong{display:block;font-size:1.1rem;font-weight:600;color:#fff}
.stat small{font-size:.72rem;color:var(--w60);letter-spacing:.06em}
.hero-quote{position:absolute;bottom:90px;right:clamp(20px,4vw,80px);width:220px;padding:24px;
  background:rgba(10,5,18,.78);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);
  border:1px solid rgba(255,45,155,.25);border-radius:16px}
.qmark{font-size:2.4rem;color:var(--pink);line-height:.8;margin-bottom:8px;display:block}
.hero-quote p{font-family:var(--fd);font-size:.95rem;font-style:italic;color:var(--w90);line-height:1.5;margin-bottom:12px}
.qeye{color:var(--pinksoft);font-size:1.2rem;text-align:right}
.hero-hw{position:absolute;top:160px;right:clamp(20px,5vw,160px);font-family:var(--fd);
  font-style:italic;font-size:1.2rem;color:var(--pinksoft);text-shadow:0 0 16px var(--pink);
  line-height:1.5;text-align:center;opacity:.9}

/* ---- CARDS ---- */
.cards-section{position:relative;z-index:1;padding:clamp(60px,8vh,100px) 0;
  background:linear-gradient(to bottom,var(--black) 0%,rgba(10,5,18,.97) 100%)}
.cards-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.card{background:var(--glass);border:1px solid var(--glassb);border-radius:20px;padding:32px 28px;
  position:relative;overflow:hidden;
  transition:transform .4s var(--spring),border-color .3s,box-shadow .3s}
.card:hover{transform:translateY(-6px);border-color:rgba(255,45,155,.35);
  box-shadow:0 20px 60px rgba(255,45,155,.15)}
.card-dark{background:rgba(20,5,30,.72)}
.card h3{font-family:var(--fd);font-size:1.32rem;font-weight:400;color:#fff;margin-bottom:12px}
.card p{font-size:.85rem;color:var(--w60);line-height:1.7}
.card-top{display:flex;align-items:center;gap:10px;margin-bottom:14px}
.spark-green{color:var(--green);font-size:1.1rem}
.spark-pink{color:var(--pinksoft);font-size:1.2rem}

/* chakra */
.chakra-wrap{position:relative;display:flex;justify-content:center;align-items:center;margin:20px 0;height:110px}
.cr{position:absolute;border-radius:50%;border:1px solid rgba(0,255,136,.4)}
.cr1{width:90px;height:90px;animation:spin 8s linear infinite}
.cr2{width:68px;height:68px;border-color:rgba(0,255,136,.3);animation:spin 13s linear infinite reverse}
.cr3{width:48px;height:48px;border-color:rgba(0,255,136,.55);animation:spin 5s linear infinite}
@keyframes spin{from{transform:rotate(0)}to{transform:rotate(360deg)}}
.chakra-svg{position:relative;z-index:2;filter:drop-shadow(0 0 8px rgba(0,255,136,.5))}

/* session */
.session-visual{position:relative;height:110px;border-radius:14px;overflow:hidden;
  background:rgba(180,0,255,.12);display:flex;align-items:center;justify-content:center;margin:20px 0}
.session-glow{position:absolute;inset:0;
  background:radial-gradient(circle at 50% 50%,rgba(255,45,155,.28),transparent 70%);
  animation:pulse 3s ease-in-out infinite}
@keyframes pulse{0%,100%{opacity:.5}50%{opacity:1}}
.session-circles{position:absolute;display:flex;align-items:center;justify-content:center}
.sc{position:absolute;border-radius:50%;border:1px solid}
.sc1{width:80px;height:80px;border-color:rgba(255,45,155,.4);animation:spin 10s linear infinite}
.sc2{width:55px;height:55px;border-color:rgba(200,0,255,.35);animation:spin 7s linear infinite reverse}
.sc3{width:35px;height:35px;border-color:rgba(255,100,200,.5);animation:spin 4s linear infinite}
.play-btn{position:absolute;right:12px;bottom:12px;width:38px;height:38px;border-radius:50%;
  background:rgba(255,45,155,.85);border:none;color:#fff;font-size:.9rem;cursor:none;
  display:flex;align-items:center;justify-content:center;
  box-shadow:0 0 16px rgba(255,45,155,.5);transition:transform .3s,box-shadow .3s;z-index:2}
.play-btn:hover{transform:scale(1.15);box-shadow:0 0 28px rgba(255,45,155,.8)}

/* crystal */
.crystal-wrap{position:relative;display:flex;justify-content:center;margin:20px 0}
.crystal-glow{position:absolute;width:80px;height:80px;border-radius:50%;
  background:rgba(255,45,155,.4);filter:blur(24px);bottom:0;left:50%;transform:translateX(-50%);
  animation:pulse 3s ease-in-out infinite}
.crystal-svg{filter:drop-shadow(0 0 14px rgba(255,45,155,.65));animation:cfloat 4s ease-in-out infinite alternate}
@keyframes cfloat{from{transform:translateY(0)}to{transform:translateY(-10px)}}

/* ---- EXPLORA ---- */
.explora{padding:clamp(60px,8vh,100px) 0;background:var(--blackmid);
  border-top:1px solid rgba(255,45,155,.1)}
.explora-title{font-family:var(--fd);font-size:clamp(1.8rem,3.5vw,2.8rem);font-weight:300;
  text-align:center;color:#fff;margin-bottom:36px}
.sp{color:var(--pink);text-shadow:0 0 12px var(--pink)}
.etabs{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-bottom:32px}
.etab{padding:9px 18px;border-radius:100px;background:var(--glass);border:1px solid var(--glassb);
  color:var(--w60);font-size:.82rem;cursor:none;transition:all .3s;font-family:var(--fb)}
.etab:hover{border-color:rgba(255,45,155,.4);color:var(--pinksoft)}
.etab.active{background:rgba(255,45,155,.2);border-color:var(--pink);color:var(--pinksoft);
  box-shadow:0 0 16px rgba(255,45,155,.25)}
.etab-content{max-width:600px;margin:0 auto;text-align:center}
.epanel{display:none;animation:ftab .4s var(--ease)}
.epanel.active{display:block}
.epanel p{color:var(--w60);margin-bottom:20px;line-height:1.7}
@keyframes ftab{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}

/* ---- TESTIMONIOS ---- */
.testi{padding:clamp(50px,7vh,80px) 0;background:var(--black);border-top:1px solid rgba(0,255,136,.08)}
.tslider{position:relative;overflow:hidden;min-height:130px}
.ttrack{display:flex;transition:transform .6s var(--ease)}
.tslide{min-width:100%;text-align:center;padding:0 20px}
.tq{font-size:2.2rem;color:var(--pink);line-height:.8;display:block;margin-bottom:8px}
.tslide p{font-family:var(--fd);font-style:italic;font-size:1.15rem;color:var(--w90);
  max-width:680px;margin:0 auto 12px;line-height:1.65}
.tslide strong{color:var(--pinksoft);font-size:.88rem;font-weight:400}
.tdots{display:flex;justify-content:center;gap:8px;margin-top:20px}
.tdot{width:8px;height:8px;border-radius:50%;background:var(--w30);
  cursor:none;transition:background .3s,transform .3s;display:inline-block}
.tdot.active{background:var(--pink);transform:scale(1.4);box-shadow:0 0 8px var(--pink)}

/* ---- CTA FINAL ---- */
.cta-section{position:relative;padding:clamp(100px,14vh,150px) 0;text-align:center;overflow:hidden;
  background:radial-gradient(ellipse 80% 70% at 50% 50%,rgba(255,45,155,.18) 0%,transparent 65%),var(--black)}
.cta-orb{position:absolute;border-radius:50%;filter:blur(80px);pointer-events:none}
.co1{width:500px;height:500px;background:rgba(255,45,155,.2);top:-80px;left:50%;
  transform:translateX(-50%);animation:orbf 12s ease-in-out infinite alternate}
.co2{width:280px;height:280px;background:rgba(0,255,136,.12);bottom:0;right:10%;
  animation:orbf2 10s ease-in-out infinite alternate}
@keyframes orbf{from{opacity:.7;transform:translateX(-50%) scale(1)}to{opacity:1;transform:translateX(-50%) scale(1.1)}}
@keyframes orbf2{from{opacity:.5;transform:scale(1)}to{opacity:.9;transform:scale(1.15)}}
.cta-inner{position:relative;z-index:2}
.cta-title{font-family:var(--fd);font-size:clamp(2.5rem,5vw,4.5rem);font-weight:300;
  color:#fff;line-height:1.1;margin-bottom:20px}
.cta-title em{font-style:italic;color:var(--pink);text-shadow:0 0 30px var(--pink)}
.cta-sub{color:var(--w60);font-size:.95rem;line-height:1.7;max-width:460px;margin:0 auto 44px}
.cta-note{margin-top:20px;font-size:.78rem;color:var(--w60);letter-spacing:.08em}

/* ---- FOOTER ---- */
.footer{background:rgba(5,3,8,.97);border-top:1px solid rgba(255,45,155,.1);padding:28px 0;position:relative;z-index:2}
.footer-inner{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px}
.footer p{font-size:.78rem;color:var(--w60)}
.footer-ig{display:flex;align-items:center;gap:6px;color:var(--pinksoft);text-decoration:none;
  font-size:.82rem;transition:color .3s}
.footer-ig:hover{color:var(--pink)}

/* ---- RESPONSIVE ---- */
@media(max-width:1000px){
  .cards-grid{grid-template-columns:1fr 1fr}
  .card:last-child{grid-column:span 2}
}
@media(max-width:700px){
  .nav-links{display:none}
  .hero-content{padding-top:100px;padding-bottom:60px}
  .hero-quote,.hero-hw{display:none}
  .hero-title{font-size:clamp(2.8rem,10vw,4rem)}
  .cards-grid{grid-template-columns:1fr}
  .card:last-child{grid-column:span 1}
  .hero-stats{gap:16px}
  .footer-inner{flex-direction:column;align-items:center;text-align:center}
}
@media(max-width:480px){
  .etab{font-size:.75rem;padding:7px 14px}
  .btn-big{font-size:.9rem;padding:15px 28px}
  .hero-ctas{flex-direction:column;align-items:flex-start}
}
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}
}
