
:root{--v:#1a7a30;--v2:#399b53;--n:#0A0A0A;--b:#FFFFFF;--gl:#D1D5DB;--a:#F59E0B;--br:rgba(57,155,83,0.18);}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
body{background:var(--n);color:var(--b);font-family:'Space Mono',monospace;overflow-x:hidden;}

/* NAV */









/* HERO */
.hero{position:relative;min-height:100vh;display:flex;align-items:center;justify-content:center;overflow:hidden;padding:120px 48px 80px;}
.hg{position:absolute;inset:0;background:linear-gradient(rgba(57,155,83,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(57,155,83,.06) 1px,transparent 1px);background-size:60px 60px;}
#c3d{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;}
.hb{position:relative;z-index:1;text-align:center;max-width:860px;}
.htag{font-family:'DM Serif Display',cursive;font-size:1.2rem;color:var(--a);margin-bottom:24px;display:block;opacity:0;animation:fu .8s ease .3s forwards;}
.ht{font-family:'DM Serif Display',serif;font-size:clamp(3.5rem,9vw,7.5rem);font-weight:400;line-height:.95;margin-bottom:32px;opacity:0;animation:fu 1s ease .5s forwards;}
.ht .sk{-webkit-text-stroke:1.5px var(--b);color:transparent;display:block;}
.ht .gn{color:var(--v2);display:block;}
.hs{font-size:clamp(.75rem,1.5vw,.9rem);color:var(--gl);max-width:460px;margin:0 auto 48px;line-height:1.8;opacity:0;animation:fu 1s ease .8s forwards;}
.hc{display:flex;gap:16px;justify-content:center;flex-wrap:wrap;opacity:0;animation:fu 1s ease 1.1s forwards;}
.btn{background:var(--v);color:var(--b);padding:15px 34px;font-family:'Space Mono',monospace;font-size:0.75rem;letter-spacing:.2em;text-transform:uppercase;text-decoration:none;display:inline-flex;align-items:center;gap:10px;position:relative;overflow:hidden;transition:transform .3s;}
.btn::before{content:'';position:absolute;inset:0;background:var(--v2);transform:translateX(-101%);transition:transform .4s cubic-bezier(.77,0,.175,1);}
.btn:hover::before{transform:translateX(0);}
.btn:hover{transform:translateY(-2px);}
.btn span{position:relative;z-index:1;}
.btno{background:transparent;border:1px solid rgba(255,255,255,.2);color:var(--b);padding:15px 34px;font-family:'Space Mono',monospace;font-size:0.75rem;letter-spacing:.2em;text-transform:uppercase;text-decoration:none;display:inline-flex;align-items:center;transition:border-color .3s,color .3s,transform .3s;}
.btno:hover{border-color:var(--a);color:var(--a);transform:translateY(-2px);}
/* SOCIAL PROOF */
.hsp{display:flex;align-items:center;justify-content:center;gap:0;margin-top:48px;opacity:0;animation:fu 1s ease 1.4s forwards;flex-wrap:wrap;}
.hsp-item{display:flex;flex-direction:column;align-items:center;gap:4px;padding:0 28px;}
.hsp-div{width:1px;height:32px;background:rgba(255,255,255,.1);}
.hsp-n{font-family:'Space Mono',monospace;font-size:clamp(1rem,2.5vw,1.5rem);font-weight:700;color:var(--b);letter-spacing:-.02em;}
.hsp-n.hsp-txt{font-size:clamp(.7rem,1.5vw,.95rem);letter-spacing:.05em;}
.hsp-l{font-size:0.75rem;letter-spacing:.22em;text-transform:uppercase;color:rgba(255,255,255,0.65);}
@media(max-width:600px){.hsp-item{padding:8px 14px;}.hsp-div{width:32px;height:1px;}}
.si{position:absolute;bottom:40px;left:44px;display:flex;flex-direction:column;align-items:center;gap:8px;opacity:0;animation:fi 1s ease 1.8s forwards;}
.si span{font-size:0.75rem;letter-spacing:.3em;text-transform:uppercase;color:var(--gl);opacity:.4;writing-mode:vertical-rl;}
.sl{width:1px;height:48px;background:linear-gradient(to bottom,rgba(245,158,11,.6),transparent);animation:sp 2.5s ease-in-out infinite;}

/* STRIP */
.strip{background:var(--v2);padding:36px 48px;display:flex;justify-content:center;position:relative;overflow:hidden;}
.strip::before{content:'';position:absolute;inset:0;background:repeating-linear-gradient(-45deg,transparent,transparent 10px,rgba(255,255,255,.02) 10px,rgba(255,255,255,.02) 11px);}
.strip-q{font-family:'DM Serif Display',serif;font-style:italic;font-size:clamp(1.4rem,3vw,2rem);color:#fff;text-align:center;position:relative;}
.strip-ref{font-family:'Space Mono',monospace;font-size:0.75rem;letter-spacing:.2em;color:rgba(255,255,255,0.65);text-transform:uppercase;margin-top:6px;display:block;}

/* MANIFESTO */
.man{padding:130px 48px;max-width:840px;margin:0 auto;position:relative;overflow:hidden;}
#cman{position:absolute;right:-80px;top:0;bottom:0;width:320px;pointer-events:none;}
.sh{display:flex;align-items:center;gap:20px;margin-bottom:72px;opacity:0;transform:translateY(28px);transition:opacity .8s,transform .8s;}
.sh.v{opacity:1;transform:translateY(0);}
.sn{font-family:'DM Serif Display',cursive;font-size:0.9rem;color:var(--a);}
.sl2{flex:1;height:1px;background:rgba(255,255,255,.09);}
.st{font-size:0.75rem;letter-spacing:.2em;text-transform:uppercase;color:rgba(255,255,255,0.65);}
.ph{font-family:'DM Serif Display',serif;font-size:clamp(2rem,5vw,3.8rem);font-weight:700;line-height:1.1;margin-bottom:56px;opacity:0;transform:translateY(36px);transition:opacity .9s,transform .9s;position:relative;}
.ph.v{opacity:1;transform:translateY(0);}
.ph.dim{color:rgba(255,255,255,0.65);font-family:'DM Serif Display',serif;font-style:italic;}
.ph .an{font-family:'DM Serif Display',cursive;color:var(--a);font-size:.55em;display:block;margin-bottom:8px;}
.ph .gr{color:var(--v2);}
.ph .ac{color:var(--a);}
.u{display:inline-block;position:relative;}
.u::after{content:'';position:absolute;bottom:-3px;left:0;width:100%;height:3px;background:var(--a);clip-path:polygon(0 40%,2% 0%,4% 60%,6% 20%,8% 70%,10% 30%,15% 80%,20% 10%,25% 60%,30% 25%,35% 70%,40% 15%,45% 60%,50% 20%,55% 65%,60% 30%,65% 75%,70% 35%,75% 70%,80% 25%,85% 70%,90% 20%,95% 60%,100% 40%,100% 100%,0 100%);}
.mcta{display:flex;align-items:center;gap:20px;margin-top:16px;opacity:0;transform:translateY(18px);transition:opacity .8s,transform .8s;}
.mcta.v{opacity:1;transform:translateY(0);}
.mctl{flex:1;height:1px;background:rgba(255,255,255,.07);}
.mctb{display:inline-flex;align-items:center;gap:10px;text-decoration:none;padding:13px 26px;border:1px solid rgba(57,155,83,.35);transition:border-color .3s,background .3s,transform .3s;white-space:nowrap;}
.mctb:hover{border-color:var(--a);background:rgba(57,155,83,.06);transform:translateY(-2px);}
.mctb span{font-family:'Space Mono',monospace;font-size:0.75rem;letter-spacing:.2em;text-transform:uppercase;color:var(--gl);opacity:.75;}
.mcta-arr{font-size:0.9rem;color:var(--a);transition:transform .3s;}
.mctb:hover .mcta-arr{transform:translateX(4px);}

/* BLOG */
.blog{padding:110px 48px;border-top:1px solid rgba(255,255,255,.05);position:relative;overflow:hidden;}
#cblog{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;}
.bi{max-width:1100px;margin:0 auto;position:relative;z-index:1;}
.bt{font-family:'DM Serif Display',serif;font-size:clamp(2.4rem,5vw,3.8rem);font-weight:400;line-height:1.05;margin-bottom:10px;opacity:0;transform:translateY(18px);transition:opacity .8s,transform .8s;}
.bt.v{opacity:1;transform:translateY(0);}
.bt .gr{color:var(--v2);}
.bsb{font-size:0.75rem;color:var(--gl);letter-spacing:.15em;text-transform:uppercase;margin-bottom:52px;opacity:0;transition:opacity .8s .1s;}
.bsb.v{opacity:.45;}
.bg{display:grid;grid-template-columns:1fr 1fr 1fr;gap:2px;}
.bfilt{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:40px;opacity:0;transition:opacity .8s .15s;}
.bfilt.v{opacity:1;}
.bf{font-family:'Space Mono',monospace;font-size:0.75rem;letter-spacing:.18em;text-transform:uppercase;padding:8px 16px;border:1px solid rgba(255,255,255,.12);background:transparent;color:rgba(255,255,255,0.65);cursor:pointer;transition:border-color .25s,color .25s,background .25s;}
.bf.act{border-color:var(--v2);color:var(--b);background:rgba(57,155,83,.12);}
.bf:hover{border-color:var(--v2);color:var(--b);}
.blog-more{display:flex;align-items:center;gap:20px;margin-top:36px;opacity:0;transform:translateY(14px);transition:opacity .8s .3s,transform .8s .3s;}
.blog-more.v{opacity:1;transform:translateY(0);}
.blog-more-line{flex:1;height:1px;background:rgba(255,255,255,.07);}
.card{background:#1a2332;padding:36px;position:relative;overflow:hidden;transition:background .35s,opacity .8s,transform .8s;opacity:0;transform:translateY(28px);}
.card.v{opacity:1;transform:translateY(0);}
.card::before{content:'';position:absolute;left:0;top:0;bottom:0;width:2px;background:var(--v2);transform:scaleY(0);transform-origin:bottom;transition:transform .35s;}
.card:hover{background:#243040;}
.card:hover::before{transform:scaleY(1);}
.card.ft{grid-column:1/-1;background:var(--v);display:grid;grid-template-columns:1fr auto;align-items:end;gap:32px;padding:44px;}
.card.ft .ft-body{display:flex;flex-direction:column;gap:0;}
.card.ft::before{background:var(--a);}
.card.ft:hover{background:var(--v2);}
.ccat{font-family:'Space Mono',monospace;font-size:0.75rem;letter-spacing:.28em;text-transform:uppercase;color:var(--a);margin-bottom:18px;display:block;}
.card.ft .ccat{color:rgba(255,255,255,0.65);}
.ctit{font-family:'DM Serif Display',serif;font-size:clamp(1rem,2vw,1.45rem);font-weight:700;line-height:1.2;margin-bottom:14px;}
.cex{font-size:0.75rem;line-height:1.8;color:rgba(255,255,255,0.65);margin-bottom:28px;flex:1;}
.cl{font-family:'Space Mono',monospace;font-size:0.75rem;letter-spacing:.15em;text-transform:uppercase;color:var(--a);text-decoration:none;transition:letter-spacing .3s;}
.cl:hover{letter-spacing:.28em;}


/* CEREBRO PREVIEW */
.cerebro-prev {
  padding: 110px 48px;
  border-top: 1px solid rgba(57,155,83,.14);
  border-bottom: 1px solid rgba(57,155,83,.14);
  background: linear-gradient(135deg, #0d1a0f 0%, var(--n) 50%, #0d1a0f 100%);
  position: relative; overflow: hidden;
}
.cp-inner {
  max-width: 1100px; margin: 0 auto;
  display: grid; grid-template-columns: 1fr 1fr;
  gap: 64px; align-items: center;
}
.cp-header { display: flex; align-items: center; gap: 16px; margin-bottom: 28px; }
.cp-num { font-family: 'DM Serif Display', cursive; font-size:0.9rem; color: var(--a); }
.cp-line { flex: 1; height: 1px; background: rgba(255,255,255,.09); }
.cp-tag { font-size:0.75rem; letter-spacing: .2em; text-transform: uppercase; color:rgba(255,255,255,0.65); white-space: nowrap; }
.cp-title {
  font-family: 'DM Serif Display', serif;
  font-size: clamp(2.4rem, 4.5vw, 3.8rem);
  font-weight: 400; line-height: 1; margin-bottom: 18px;
  opacity: 0; transform: translateY(22px); transition: opacity .8s, transform .8s;
}
.cp-title.v { opacity: 1; transform: translateY(0); }
.cp-title em { color: var(--a); font-style: italic; display: block; }
.cp-desc {
  font-size:0.75rem; line-height: 1.85; color:rgba(255,255,255,0.65);
  margin-bottom: 32px; max-width: 380px;
  opacity: 0; transform: translateY(22px); transition: opacity .8s .1s, transform .8s .1s;
}
.cp-desc.v { opacity: 1; transform: translateY(0); }
.cp-cta {
  opacity: 0; transform: translateY(22px); transition: opacity .8s .2s, transform .8s .2s;
  display: inline-flex;
}
.cp-cta.v { opacity: 1; transform: translateY(0); }

/* Terminal window */
.cp-bar-wrap {
  opacity: 0; transform: translateY(22px); transition: opacity .8s .15s, transform .8s .15s;
}
.cp-bar-wrap.v { opacity: 1; transform: translateY(0); }
.cp-topbar {
  background: #1a1a1a; border: 1px solid rgba(57,155,83,.2);
  border-bottom: none; padding: 9px 14px;
  display: flex; align-items: center; gap: 8px;
}
.cp-dots { display: flex; gap: 5px; }
.cp-dots span { width: 9px; height: 9px; border-radius: 50%; }
.cp-dots span:nth-child(1) { background: #ff5f57; }
.cp-dots span:nth-child(2) { background: #febc2e; }
.cp-dots span:nth-child(3) { background: #28c840; }
.cp-barlabel {
  font-size:0.75rem; letter-spacing: .18em; text-transform: uppercase;
  color:rgba(255,255,255,0.65); margin-left: 6px;
}
.cp-live {
  margin-left: auto; display: flex; align-items: center; gap: 5px;
  font-size:0.75rem; letter-spacing: .15em; text-transform: uppercase; color: var(--v2);
}
.cp-pulse { width: 5px; height: 5px; border-radius: 50%; background: var(--v2); animation: pulse 2s ease-in-out infinite; }
.cp-terminal {
  background: #0c0f0c; border: 1px solid rgba(57,155,83,.2);
  padding: 22px 20px; display: flex; flex-direction: column; gap: 16px;
}
.cp-module {}
.cp-mod-row {
  display: flex; align-items: center; gap: 8px; margin-bottom: 7px;
}
.cp-mod-icon { font-size:0.8rem; color: var(--a); width: 16px; text-align: center; }
.cp-mod-name { font-size:0.75rem; letter-spacing: .1em; text-transform: uppercase; color:rgba(255,255,255,0.65); flex: 1; }
.cp-mod-n { font-size:0.75rem; letter-spacing: .12em; text-transform: uppercase; color:rgba(255,255,255,0.65); }
.cp-track { height: 2px; background: rgba(255,255,255,.07); overflow: hidden; }
.cp-fill {
  height: 100%; width: var(--w);
  background: linear-gradient(90deg, var(--v2), var(--a));
  transform: scaleX(0); transform-origin: left;
}
.cp-bar-wrap.v .cp-fill {
  animation: barfill 1.2s cubic-bezier(.16,1,.3,1) forwards;
}
.cp-bar-wrap.v .cp-module:nth-child(1) .cp-fill { animation-delay: .1s; }
.cp-bar-wrap.v .cp-module:nth-child(2) .cp-fill { animation-delay: .25s; }
.cp-bar-wrap.v .cp-module:nth-child(3) .cp-fill { animation-delay: .4s; }
.cp-bar-wrap.v .cp-module:nth-child(4) .cp-fill { animation-delay: .55s; }
.cp-footer-bar {
  display: flex; gap: 20px; padding-top: 12px;
  border-top: 1px solid rgba(255,255,255,.05);
  font-size:0.75rem; letter-spacing: .12em; text-transform: uppercase; color:rgba(255,255,255,0.65);
}
.cp-footer-bar em { color: var(--v2); font-style: normal; }
.cp-cursor { margin-left: auto; color: var(--v2); animation: blink 1.2s step-end infinite; }
@keyframes barfill { to { transform: scaleX(1); } }
@keyframes blink { 0%,100%{opacity:1;} 50%{opacity:0;} }
@keyframes pulse { 0%,100%{opacity:1;transform:scale(1);} 50%{opacity:.4;transform:scale(.7);} }

/* REDES */
.redes{padding:110px 48px;text-align:center;position:relative;overflow:hidden;}
#credes{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;}
.rtag{font-family:'DM Serif Display',cursive;font-size:1.05rem;color:var(--a);margin-bottom:18px;display:block;opacity:0;transition:opacity .8s;}
.rtag.v{opacity:1;}
.rtit{font-family:'DM Serif Display',serif;font-size:clamp(2.2rem,5.5vw,4.5rem);font-weight:900;line-height:1;margin-bottom:14px;opacity:0;transform:translateY(28px);transition:opacity .8s .2s,transform .8s .2s;}
.rtit.v{opacity:1;transform:translateY(0);}
.rsub{font-size:0.75rem;color:var(--gl);letter-spacing:.1em;margin-bottom:52px;opacity:0;transition:opacity .8s .4s;}
.rsub.v{opacity:.55;}
.sg{display:flex;justify-content:center;gap:20px;flex-wrap:wrap;opacity:0;transform:translateY(18px);transition:opacity .8s .5s,transform .8s .5s;position:relative;z-index:1;}
.sg.v{opacity:1;transform:translateY(0);}
.sc{width:150px;height:150px;border:1px solid rgba(255,255,255,.08);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;text-decoration:none;color:var(--b);position:relative;overflow:hidden;transition:transform .4s,border-color .4s;}
.sc::before{content:'';position:absolute;inset:0;background:var(--v);transform:translateY(101%);transition:transform .4s cubic-bezier(.77,0,.175,1);}
.sc:hover::before{transform:translateY(0);}
.sc:hover{transform:translateY(-5px);border-color:var(--v2);}
.sc svg,.sc span{position:relative;z-index:1;}
.sn2{font-family:'Space Mono',monospace;font-size:0.75rem;letter-spacing:.18em;text-transform:uppercase;opacity:.65;}
.sh2{font-family:'DM Serif Display',cursive;font-size:0.95rem;color:var(--a);}

/* FOOTER */
footer{border-top:1px solid rgba(255,255,255,.06);padding:48px 48px 28px;}
.ft-top{display:flex;justify-content:space-between;align-items:flex-start;gap:48px;margin-bottom:40px;flex-wrap:wrap;}
.ft-brand{display:flex;flex-direction:column;gap:10px;max-width:240px;}
.ft-logo{font-family:'DM Serif Display',serif;font-size:1.5rem;color:var(--b);}
.ft-tagline{font-size:0.75rem;line-height:1.7;color:rgba(255,255,255,0.65);letter-spacing:.04em;}
.ft-links{display:flex;gap:48px;flex-wrap:wrap;}
.ft-col{display:flex;flex-direction:column;gap:12px;}
.ft-col-title{font-family:'Space Mono',monospace;font-size:0.75rem;letter-spacing:.22em;text-transform:uppercase;color:var(--v2);margin-bottom:4px;}
.ft-col a{font-size:0.75rem;color:rgba(255,255,255,0.65);text-decoration:none;letter-spacing:.06em;transition:color .25s;}
.ft-col a:hover{color:var(--a);}
.ft-bottom{border-top:1px solid rgba(255,255,255,.05);padding-top:20px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px;}
footer p{font-size:0.75rem;color:var(--gl);opacity:.22;letter-spacing:.12em;text-transform:uppercase;}

/* ANIMATIONS */
@keyframes fu{from{opacity:0;transform:translateY(28px);}to{opacity:1;transform:translateY(0);}}
@keyframes fi{from{opacity:0;}to{opacity:1;}}
@keyframes sp{0%{transform:scaleY(0);transform-origin:top;}50%{transform:scaleY(1);transform-origin:top;}51%{transform-origin:bottom;}100%{transform:scaleY(0);transform-origin:bottom;opacity:0;}}

/* MOBILE */
@media(max-width:768px){
  
  
  
  .hero{padding:100px 20px 72px;text-align:center;}
  .hc{flex-direction:column;align-items:center;}
  .btn,.btno{width:100%;max-width:260px;justify-content:center;}
  .si{left:16px;bottom:24px;}
  .strip{padding:28px 20px;}
  .man{padding:60px 20px;overflow:hidden;}
  #cman{display:none;}
  .ph{font-size:clamp(1.5rem,7vw,2.6rem);margin-bottom:40px;}
  .blog{padding:60px 20px;}
  .bg{grid-template-columns:1fr;}
  .mob-hide{display:none;}
  .card.ft{grid-column:span 1;}
  .card{padding:26px 22px;}
  .cerebro-prev{padding:60px 20px;}
  .cp-inner{grid-template-columns:1fr;gap:32px;}
  .redes{padding:60px 20px;}
  .sc{width:96px;height:96px;}
  footer{padding:32px 20px 20px;}.ft-top{flex-direction:column;gap:32px;}.ft-links{gap:28px;}.ft-bottom{flex-direction:column;align-items:flex-start;}
  /* Extra small */
  @media(max-width:480px){
    .ht{font-size:clamp(2.8rem,13vw,4rem);}
    .hs{font-size:0.75rem;}
    .ph{font-size:clamp(1.4rem,8vw,2.2rem);}
    
    
    
  }
}

/* MOBILE NAV HAMBURGER */
.ham { display:none; flex-direction:column; gap:5px; cursor:pointer; padding:4px; z-index:300; border:none; background:transparent; }
.ham span { display:block; width:22px; height:1.5px; background:var(--b,#fff); transition:transform .3s, opacity .3s; }



.mob-menu {
  display:none; position:fixed; inset:0; z-index:250;
  background:rgba(10,10,10,.97); backdrop-filter:blur(20px);
  flex-direction:column; align-items:center; justify-content:center; gap:0;
  opacity:0; transform:translateY(-8px); transition:opacity .3s, transform .3s;
pointer-events:none;}
.mob-menu.open { opacity:1; transform:translateY(0); pointer-events:auto;}
.mob-menu a {
  font-family:'Space Mono',monospace; font-size:1rem; letter-spacing:.3em;
  text-transform:uppercase; color:rgba(255,255,255,0.65); text-decoration:none;
  padding:20px 0; width:100%; text-align:center;
  border-bottom:1px solid rgba(255,255,255,.06);
  transition:color .25s, background .25s;
}
.mob-menu a:first-child { border-top:1px solid rgba(255,255,255,.06); }

.mob-menu a.on { color:#fff; }
@media(max-width:768px) {
  .ham { display:flex; }
  .nl, .nt { display:none !important; }
  .mob-menu { display:flex; pointer-events:none; }
  .mob-menu.open { pointer-events:all; }
}

/* ── NAV ─────────────────────────────────────────────────────────────────── */
nav{position:fixed;top:0;left:0;right:0;z-index:200;padding:20px 48px;display:flex;justify-content:space-between;align-items:center;transition:background .4s;}
nav.on{background:rgba(10,10,10,.88);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid rgba(57,155,83,.18);}
.n-logo{font-family:'DM Serif Display',serif;font-size:1rem;font-weight:900;letter-spacing:.15em;color:#fff;text-decoration:none;text-transform:uppercase;}
.n-logo .d{color:#399b53;}
.n-links{display:flex;gap:28px;align-items:center;}
.n-links a{font-size:0.75rem;letter-spacing:.2em;text-transform:uppercase;color:rgba(255,255,255,0.65);text-decoration:none;transition:color .3s;}
.n-links a:hover,.n-links a.on{color:#F59E0B;}
.n-tag{font-size:0.75rem;letter-spacing:.18em;text-transform:uppercase;color:rgba(255,255,255,0.65);}
/* HAMBURGER */
.ham{display:none;flex-direction:column;gap:5px;cursor:pointer;padding:4px;border:none;background:transparent;z-index:300;}
.ham span{display:block;width:22px;height:1.5px;background:#fff;transition:transform .3s,opacity .3s;}
.ham.open span:nth-child(1){transform:translateY(6.5px) rotate(45deg);}
.ham.open span:nth-child(2){opacity:0;}
.ham.open span:nth-child(3){transform:translateY(-6.5px) rotate(-45deg);}
.mob-menu{display:none;position:fixed;inset:0;z-index:250;background:rgba(10,10,10,.97);backdrop-filter:blur(20px);flex-direction:column;align-items:center;justify-content:center;opacity:0;transform:translateY(-8px);transition:opacity .3s,transform .3s;pointer-events:none;}
.mob-menu.open{opacity:1;transform:translateY(0);pointer-events:all;}
.mob-menu a{font-family:'Space Mono',monospace;font-size:1rem;letter-spacing:.3em;text-transform:uppercase;color:rgba(255,255,255,0.65);text-decoration:none;padding:20px 0;width:100%;text-align:center;border-bottom:1px solid rgba(255,255,255,.06);transition:color .25s;}
.mob-menu a:first-child{border-top:1px solid rgba(255,255,255,.06);}
.mob-menu a:hover,.mob-menu a.on{color:#F59E0B;}
@media(max-width:768px){
  nav{padding:16px 20px;}
  .ham{display:flex;}
  .n-links,.n-tag{display:none!important;}
  .mob-menu{display:flex;}
}

/* ── RECURSOS PREVIEW ─────────────────────────────────────────────────── */
.recursos-prev {
  padding: 110px 48px;
  border-top: 1px solid rgba(255,255,255,.05);
  position: relative; overflow: hidden;
}
.rp-inner {
  max-width: 1100px; margin: 0 auto;
  display: grid; grid-template-columns: 1fr 1fr; gap: 80px; align-items: center;
}
.rp-header { display: flex; align-items: center; gap: 16px; margin-bottom: 28px; }
.rp-num { font-family: 'DM Serif Display', cursive; font-size:0.9rem; color: var(--v2); }
.rp-line { flex: 1; height: 1px; background: rgba(255,255,255,.09); }
.rp-tag { font-size:0.75rem; letter-spacing: .2em; text-transform: uppercase; color:rgba(255,255,255,0.65); white-space: nowrap; }
.rp-title {
  font-family: 'DM Serif Display', serif; font-size: clamp(2.4rem, 4vw, 3.6rem);
  font-weight: 400; line-height: .95; margin-bottom: 18px;
  opacity: 0; transform: translateY(20px); transition: opacity .8s, transform .8s;
}
.rp-title.v { opacity: 1; transform: translateY(0); }
.rp-title em { color: var(--v2); font-style: italic; display: block; }
.rp-desc {
  font-size:0.75rem; line-height: 1.85; color:rgba(255,255,255,0.65);
  max-width: 380px; margin-bottom: 28px;
  opacity: 0; transform: translateY(16px); transition: opacity .8s .15s, transform .8s .15s;
}
.rp-desc.v { opacity: 1; transform: translateY(0); }
.rp-cta {
  opacity: 0; transform: translateY(14px); transition: opacity .8s .3s, transform .8s .3s;
}
.rp-cta.v { opacity: 1; transform: translateY(0); }
/* Grid de tarjetas derecha */
.rp-cards {
  display: grid; grid-template-columns: 1fr 1fr; gap: 2px;
  opacity: 0; transform: translateY(24px); transition: opacity .9s .2s, transform .9s .2s;
}
.rp-cards.v { opacity: 1; transform: translateY(0); }
.rp-card {
  background: #0f0f0f; border: 1px solid rgba(255,255,255,.06);
  padding: 20px; text-decoration: none; color: var(--b);
  position: relative; overflow: hidden;
  transition: border-color .3s, background .3s;
  display: flex; flex-direction: column; gap: 8px;
}
.rp-card::before {
  content: ''; position: absolute; left: 0; top: 0; bottom: 0; width: 2px;
  background: var(--v2); transform: scaleY(0); transform-origin: bottom;
  transition: transform .3s;
}
.rp-card:hover { border-color: var(--br); background: rgba(57,155,83,.03); }
.rp-card:hover::before { transform: scaleY(1); }
.rp-card-cat {
  font-size:0.75rem; letter-spacing: .22em; text-transform: uppercase; color: var(--a);
}
.rp-card-title {
  font-family: 'DM Serif Display', serif; font-size:0.88rem;
  font-weight: 400; line-height: 1.3; color: var(--b);
}
.rp-card-arr {
  font-size:0.75rem; color:rgba(255,255,255,0.65); margin-top: auto;
  transition: color .3s, transform .3s;
}
.rp-card:hover .rp-card-arr { color: var(--v2); transform: translateX(3px); }
/* Card destacada (primera) */
.rp-card.featured {
  grid-column: 1 / -1; background: rgba(26,122,48,.06);
  border-color: rgba(57,155,83,.2); flex-direction: row; align-items: center; gap: 16px;
}
.rp-card.featured .rp-card-title { font-size: 1rem; flex: 1; }
.rp-card.featured::before { width: 3px; background: var(--a); }
.rp-ver-mas {
  display: inline-flex; align-items: center; gap: 8px;
  font-size:0.75rem; letter-spacing: .2em; text-transform: uppercase;
  color:rgba(255,255,255,0.65); text-decoration: none;
  margin-top: 16px; transition: color .3s;
}
.rp-ver-mas:hover { color: var(--a); }
@media(max-width:900px){
  .recursos-prev { padding: 80px 24px; }
  .rp-inner { grid-template-columns: 1fr; gap: 48px; }
  .rp-cards { grid-template-columns: 1fr; }
  .rp-card.featured { flex-direction: column; }
}

.cp-actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap;}
.btn-ghost{display:inline-flex;align-items:center;justify-content:center;padding:13px 22px;border:1px solid rgba(255,255,255,.16);color:rgba(255,255,255,0.65);text-decoration:none;font-family:'Space Mono',monospace;font-size:0.75rem;letter-spacing:.2em;text-transform:uppercase;transition:border-color .3s,color .3s,background .3s;}
.btn-ghost:hover{border-color:var(--v2);color:#fff;background:rgba(57,155,83,.08);}
@media(max-width:600px){.cp-actions{flex-direction:column;align-items:stretch;}.cp-actions>*{width:100%;}}
