/* ============================================================
   Se Tendencia — style.css
   Agencia Creativa & Imprenta Premium
   ============================================================ */

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{
  --magenta:#c2417a;
  --magenta2:#d4548c;
  --magenta-claro:#e8a0be;
  --magenta-dark:#8f2e59;
  --gris:#8a8a8a;
  --gris2:#a0a0a0;
  --gris-claro:#e8e8e8;
  --gris-fondo:#f5f5f5;
  --negro:#1a1a1a;
  --negro2:#222222;
  --blanco:#ffffff;
  --texto-apagado:rgba(255,255,255,0.5);
  --texto-mid:rgba(255,255,255,0.72);
  --display:'Nunito',sans-serif;
  --sans:'Nunito Sans',sans-serif;
}
html{scroll-behavior:smooth}
body{background:var(--blanco);color:var(--negro);font-family:var(--sans);font-weight:400;overflow-x:hidden;line-height:1.6}

/* ── NAV ── */
nav{position:fixed;top:0;left:0;right:0;z-index:100;padding:0 56px;height:66px;display:flex;align-items:center;justify-content:space-between;background:rgba(255,255,255,0.97);backdrop-filter:blur(16px);border-bottom:1px solid rgba(194,65,122,0.12);box-shadow:0 1px 24px rgba(194,65,122,0.06)}
.nav-logo{font-family:var(--display);font-size:22px;color:var(--negro);font-weight:900;letter-spacing:-.01em}
.nav-logo span{color:var(--magenta)}
.nav-logo sub{font-size:10px;color:var(--gris);font-weight:600;letter-spacing:.1em;text-transform:uppercase;margin-left:6px;vertical-align:middle}
.nav-links{display:flex;gap:32px;list-style:none}
.nav-links a{font-size:12px;color:var(--gris);text-decoration:none;letter-spacing:.08em;text-transform:uppercase;font-weight:600;transition:color .2s}
.nav-links a:hover{color:var(--magenta)}
.nav-cta{background:var(--magenta);border:none;color:var(--blanco);padding:10px 24px;font-family:var(--display);font-size:12px;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;font-weight:800;transition:all .2s;border-radius:50px}
.nav-cta:hover{background:var(--magenta2);transform:translateY(-1px)}

/* ── HERO ── */
.hero{min-height:100vh;background:linear-gradient(135deg,var(--negro) 0%,var(--negro2) 60%,#2a1520 100%);display:flex;flex-direction:column;justify-content:center;padding:120px 56px 80px;position:relative;overflow:hidden}
.hero::before{content:'';position:absolute;top:-200px;right:-200px;width:600px;height:600px;background:radial-gradient(circle,rgba(194,65,122,0.15) 0%,transparent 70%);pointer-events:none}
.hero::after{content:'';position:absolute;bottom:-100px;left:-100px;width:400px;height:400px;background:radial-gradient(circle,rgba(138,138,138,0.08) 0%,transparent 70%);pointer-events:none}
.hero-eyebrow{font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--magenta);margin-bottom:28px;font-weight:700;display:flex;align-items:center;gap:10px}
.hero-eyebrow::before{content:'★';font-size:10px}
.hero-h1{font-family:var(--display);font-size:clamp(60px,9vw,130px);color:var(--blanco);line-height:.95;font-weight:900;letter-spacing:-.03em;margin-bottom:0}
.hero-h1 .rosa{color:var(--magenta)}
.hero-h1 .gris-txt{color:var(--gris2)}
.hero-sub-row{display:grid;grid-template-columns:1fr 1fr;gap:48px;margin-top:48px;padding-top:40px;border-top:1px solid rgba(255,255,255,0.07)}
.hero-desc{font-size:16px;color:var(--texto-mid);line-height:1.85;max-width:440px;font-family:var(--sans)}
.hero-desc strong{color:var(--blanco);font-weight:600}
.hero-actions{display:flex;flex-direction:column;justify-content:center;gap:12px}
.btn-magenta{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--magenta);color:var(--blanco);padding:16px 36px;font-family:var(--display);font-size:13px;letter-spacing:.04em;border:none;cursor:pointer;font-weight:800;text-decoration:none;transition:all .25s;border-radius:50px}
.btn-magenta:hover{background:var(--magenta2);transform:translateY(-2px);box-shadow:0 8px 24px rgba(194,65,122,0.35)}
.btn-outline-w{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:transparent;color:var(--blanco);padding:16px 36px;font-family:var(--display);font-size:13px;letter-spacing:.04em;border:1.5px solid rgba(255,255,255,0.2);cursor:pointer;font-weight:700;text-decoration:none;transition:all .25s;border-radius:50px}
.btn-outline-w:hover{border-color:var(--magenta);color:var(--magenta)}
.hero-tags{display:flex;gap:8px;flex-wrap:wrap;margin-top:36px}
.tag-pill{background:rgba(194,65,122,0.12);border:1px solid rgba(194,65,122,0.25);color:var(--magenta-claro);padding:7px 18px;font-size:11px;letter-spacing:.08em;text-transform:uppercase;font-weight:700;border-radius:50px;font-family:var(--display)}
.hero-deco{position:absolute;right:56px;bottom:80px;font-family:var(--display);font-size:200px;color:rgba(194,65,122,0.04);font-weight:900;line-height:1;pointer-events:none;letter-spacing:-.05em}

/* ── SECCIÓN BASE ── */
.sec{padding:100px 56px}
.eyebrow{font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--magenta);margin-bottom:14px;font-weight:700;display:flex;align-items:center;gap:8px;font-family:var(--display)}
.eyebrow::before{content:'★';font-size:9px}
h2.title{font-family:var(--display);font-size:clamp(40px,5.5vw,80px);line-height:.98;font-weight:900;letter-spacing:-.02em;margin-bottom:28px}
h2.title .rosa{color:var(--magenta)}
h2.title .gris{color:var(--gris)}

/* ── NOSOTROS ── */
.nosotros-inner{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:start}
.nos-body{font-size:16px;line-height:1.85;color:#555;margin-bottom:18px}
.nos-body strong{color:var(--negro);font-weight:700}
.nos-stats{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:36px}
.nos-stat{background:var(--gris-fondo);padding:24px 20px;border-radius:16px;border:1px solid rgba(194,65,122,0.08)}
.nos-stat-n{font-family:var(--display);font-size:44px;color:var(--magenta);font-weight:900;line-height:1}
.nos-stat-l{font-size:11px;color:var(--gris);letter-spacing:.08em;text-transform:uppercase;margin-top:6px;font-weight:600}
.val-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.val-box{background:var(--gris-fondo);padding:28px 24px;border-radius:16px;border:1px solid rgba(194,65,122,0.06);transition:all .25s}
.val-box:hover{border-color:rgba(194,65,122,0.25);transform:translateY(-2px);box-shadow:0 8px 24px rgba(194,65,122,0.08)}
.val-ico{font-size:22px;margin-bottom:12px}
.val-box h4{font-family:var(--display);font-size:17px;color:var(--negro);font-weight:800;margin-bottom:8px}
.val-box p{font-size:13px;color:var(--gris);line-height:1.7}

/* ── SERVICIOS ── */
.sec-oscuro{background:var(--negro);color:var(--blanco)}
.serv-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:48px}
.serv-card{background:#242424;padding:36px 28px;border-radius:20px;cursor:pointer;transition:all .3s;border:1px solid rgba(194,65,122,0.08)}
.serv-card:hover{background:#2a2a2a;border-color:rgba(194,65,122,0.35);transform:translateY(-4px);box-shadow:0 16px 40px rgba(194,65,122,0.15)}
.serv-n{font-family:var(--display);font-size:44px;color:rgba(194,65,122,0.15);font-weight:900;line-height:1;margin-bottom:18px}
.serv-name{font-family:var(--display);font-size:22px;color:var(--blanco);font-weight:800;margin-bottom:6px}
.serv-sub{font-size:12px;color:var(--magenta);margin-bottom:12px;font-weight:600;font-family:var(--display)}
.serv-desc{font-size:13px;color:rgba(255,255,255,0.45);line-height:1.75;margin-bottom:20px}
.serv-link{font-size:12px;color:var(--magenta);font-weight:700;font-family:var(--display);transition:gap .2s;display:flex;align-items:center;gap:6px}
.serv-card:hover .serv-link{gap:10px}

/* ── TIEMPOS ── */
.tiempos-inner{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}
.tiempo-lista{display:flex;flex-direction:column;gap:0;margin-top:16px}
.tiempo-row{display:flex;justify-content:space-between;align-items:center;padding:16px 0;border-bottom:1px solid var(--gris-claro)}
.tiempo-row:last-child{border-bottom:none}
.tiempo-item{font-size:15px;color:#444;font-weight:400}
.tiempo-val{font-family:var(--display);font-size:16px;color:var(--magenta);font-weight:800}
.tiempos-panel{background:var(--negro);border-radius:24px;overflow:hidden;border:1px solid rgba(194,65,122,0.15)}
.tiempos-header{background:var(--magenta);padding:28px 32px}
.tiempos-header-title{font-family:var(--display);font-size:26px;color:var(--blanco);font-weight:900}
.tiempos-header-sub{font-size:13px;color:rgba(255,255,255,0.7);margin-top:4px}
.tiempos-body{padding:24px 32px;display:flex;flex-direction:column;gap:0}
.t-row{display:flex;justify-content:space-between;padding:13px 0;border-bottom:1px solid rgba(194,65,122,0.08)}
.t-row:last-child{border-bottom:none}
.t-k{font-size:12px;color:rgba(255,255,255,0.4)}
.t-v{font-size:13px;color:var(--blanco);font-weight:600}

/* ── PROCESO ── */
.proceso-steps{display:flex;flex-direction:column;gap:8px;margin-top:48px}
.proceso-step{background:var(--gris-fondo);display:grid;grid-template-columns:64px 1fr auto;align-items:center;gap:24px;padding:24px 32px;border-radius:16px;border:1.5px solid transparent;transition:all .25s;cursor:default}
.proceso-step:hover,.proceso-step.active{background:var(--blanco);border-color:rgba(194,65,122,0.25);box-shadow:0 8px 32px rgba(194,65,122,0.08)}
.step-n{font-family:var(--display);font-size:40px;color:rgba(194,65,122,0.2);font-weight:900;line-height:1}
.proceso-step.active .step-n,.proceso-step:hover .step-n{color:var(--magenta)}
.step-content h3{font-family:var(--display);font-size:18px;color:var(--negro);font-weight:800;margin-bottom:3px}
.step-content p{font-size:13px;color:var(--gris);line-height:1.6}
.step-tag{font-size:10px;color:var(--magenta);letter-spacing:.1em;text-transform:uppercase;font-weight:700;background:rgba(194,65,122,0.08);padding:6px 14px;border-radius:50px;white-space:nowrap;font-family:var(--display)}

/* ── PAQUETE ── */
.paquete-inner{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:48px}
.paquete-izq{background:var(--gris-fondo);padding:48px 40px;border-radius:24px;border:1px solid rgba(194,65,122,0.08)}
.paquete-der{background:var(--magenta);padding:48px 40px;border-radius:24px;display:flex;flex-direction:column;justify-content:space-between}
.pkg-title{font-family:var(--display);font-size:clamp(32px,4vw,54px);font-weight:900;line-height:1;letter-spacing:-.02em;margin-bottom:24px}
.pkg-lista{list-style:none;display:flex;flex-direction:column;gap:0;margin-bottom:32px}
.pkg-lista li{padding:13px 0;border-bottom:1px solid rgba(0,0,0,0.06);font-size:14px;color:#444;display:flex;align-items:center;gap:12px}
.pkg-lista li::before{content:'★';color:var(--magenta);font-size:9px;flex-shrink:0;font-family:var(--display)}
.pkg-lista-w li{border-color:rgba(255,255,255,0.15);color:rgba(255,255,255,0.85)}
.pkg-lista-w li::before{color:rgba(255,255,255,0.6)}
.pkg-cta-label{font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,0.6);margin-bottom:10px;font-weight:700;font-family:var(--display)}
.btn-blanco-solid{display:flex;align-items:center;justify-content:center;gap:8px;background:var(--blanco);color:var(--magenta);padding:16px 32px;font-family:var(--display);font-size:13px;letter-spacing:.04em;border:none;cursor:pointer;font-weight:800;text-decoration:none;transition:all .25s;border-radius:50px}
.btn-blanco-solid:hover{transform:translateY(-2px);box-shadow:0 8px 24px rgba(0,0,0,0.15)}

/* ── TESTIMONIOS ── */
.test-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:48px}
.test-card{background:var(--gris-fondo);padding:32px 28px;border-radius:20px;border:1px solid rgba(194,65,122,0.06);transition:all .25s}
.test-card:hover{border-color:rgba(194,65,122,0.2);transform:translateY(-3px);box-shadow:0 12px 32px rgba(194,65,122,0.08)}
.test-stars{color:var(--magenta);font-size:14px;letter-spacing:2px;margin-bottom:16px}
.test-q{font-size:15px;color:#444;line-height:1.7;margin-bottom:24px}
.test-q strong{color:var(--negro);font-weight:700}
.test-name{font-family:var(--display);font-size:15px;color:var(--negro);font-weight:800}
.test-role{font-size:11px;color:var(--gris);margin-top:2px}

/* ── FAQ ── */
.faq-cols{display:grid;grid-template-columns:1fr 1fr;gap:0 72px;margin-top:48px}
.faq-item{padding:20px 0;border-bottom:1px solid var(--gris-claro)}
.faq-q{font-family:var(--sans);font-size:15px;color:var(--negro);font-weight:600;cursor:pointer;display:flex;justify-content:space-between;align-items:start;gap:14px}
.faq-ico{color:var(--magenta);font-size:22px;line-height:1.1;flex-shrink:0;transition:transform .3s}
.faq-a{font-size:13px;color:var(--gris);line-height:1.8;max-height:0;overflow:hidden;opacity:0;transition:max-height .35s ease,opacity .3s,margin .3s}
.faq-item.open .faq-a{max-height:160px;opacity:1;margin-top:10px}
.faq-item.open .faq-ico{transform:rotate(45deg)}

/* ── CONTACTO ── */
.contacto-wrap{background:var(--negro);padding:100px 56px}
.contacto-inner{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:start}
.ct-h1{font-family:var(--display);font-size:clamp(40px,5.5vw,72px);line-height:.98;font-weight:900;color:var(--blanco);margin-bottom:24px;letter-spacing:-.02em}
.ct-h1 em{color:var(--magenta);font-style:normal}
.ct-sub{font-size:15px;color:rgba(255,255,255,0.55);line-height:1.8;margin-bottom:36px}
.ct-datos{display:flex;flex-direction:column;gap:0;margin-bottom:36px}
.ct-row{display:flex;align-items:center;gap:16px;padding:15px 0;border-bottom:1px solid rgba(255,255,255,0.06)}
.ct-ico{width:38px;height:38px;background:rgba(194,65,122,0.12);border:1px solid rgba(194,65,122,0.2);display:flex;align-items:center;justify-content:center;font-size:15px;flex-shrink:0;border-radius:10px}
.ct-label{font-size:10px;color:var(--magenta);letter-spacing:.1em;text-transform:uppercase;font-weight:700;font-family:var(--display)}
.ct-val{font-size:14px;color:var(--blanco);font-weight:500;margin-top:2px}
.ct-btns{display:flex;flex-direction:column;gap:10px}
.ct-panel{background:#1e1e1e;border-radius:24px;padding:40px;border:1px solid rgba(194,65,122,0.12)}
.ct-panel-header{font-family:var(--display);font-size:28px;color:var(--blanco);font-weight:900;margin-bottom:8px}
.ct-panel-header em{color:var(--magenta);font-style:normal}
.ct-panel-sub{font-size:14px;color:rgba(255,255,255,0.4);margin-bottom:32px;line-height:1.7}
.ct-panel-rows{display:flex;flex-direction:column;gap:0}
.ct-p-row{display:flex;justify-content:space-between;padding:14px 0;border-bottom:1px solid rgba(194,65,122,0.08)}
.ct-p-row:last-child{border-bottom:none}
.ct-p-k{font-size:11px;color:rgba(255,255,255,0.3);letter-spacing:.08em;text-transform:uppercase;font-weight:600}
.ct-p-v{font-size:13px;color:var(--blanco);font-weight:600}

/* ── FOOTER ── */
footer{background:#0e0e0e}
.ft-barra{background:var(--magenta);padding:14px 56px;display:flex;align-items:center;justify-content:space-between}
.ft-barra-txt{font-family:var(--display);font-size:13px;color:var(--blanco);font-weight:800;letter-spacing:.04em}
.ft-main{padding:60px 56px 32px;display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:48px;border-bottom:1px solid rgba(255,255,255,0.05)}
.ft-brand{font-family:var(--display);font-size:26px;color:var(--blanco);font-weight:900;margin-bottom:10px}
.ft-brand span{color:var(--magenta)}
.ft-tagline{font-size:13px;color:rgba(255,255,255,0.28);line-height:1.7;max-width:220px;margin-bottom:20px}
.ft-email{font-size:13px;color:var(--magenta);font-weight:600}
.ft-col-h{font-size:10px;color:rgba(255,255,255,0.18);letter-spacing:.14em;text-transform:uppercase;margin-bottom:16px;font-weight:700;font-family:var(--display)}
.ft-links{list-style:none;display:flex;flex-direction:column;gap:10px}
.ft-links a{font-size:13px;color:rgba(255,255,255,0.35);text-decoration:none;transition:color .2s}
.ft-links a:hover{color:var(--magenta)}
.ft-bottom{padding:22px 56px;display:flex;justify-content:space-between;align-items:center}
.ft-copy{font-size:11px;color:rgba(255,255,255,0.15)}
.ft-lema{font-family:var(--display);font-size:13px;color:rgba(255,255,255,0.15);font-weight:700}

/* ── ANIMATIONS ── */
@keyframes fadeUp{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
.hero-eyebrow{animation:fadeUp .5s ease .05s both}
.hero-h1{animation:fadeUp .6s ease .15s both}
.hero-sub-row{animation:fadeUp .6s ease .3s both}
.hero-tags{animation:fadeUp .5s ease .42s both}

/* ── RESPONSIVE ── */
@media(max-width:900px){
  nav{padding:0 20px;height:60px}
  .nav-links{display:none}
  .hero{padding:100px 24px 60px}
  .hero-sub-row{grid-template-columns:1fr;gap:32px}
  .hero-deco{display:none}
  .sec,.contacto-wrap{padding:64px 24px}
  .nosotros-inner,.tiempos-inner,.contacto-inner{grid-template-columns:1fr;gap:40px}
  .serv-grid,.test-grid,.paquete-inner{grid-template-columns:1fr}
  .faq-cols{grid-template-columns:1fr}
  .proceso-step{grid-template-columns:52px 1fr;gap:16px;padding:20px 20px}
  .step-tag{display:none}
  .ft-main{grid-template-columns:1fr 1fr;gap:28px;padding:40px 24px 24px}
  .ft-barra,.ft-bottom{padding:14px 24px}
  .ft-bottom{flex-direction:column;gap:8px;text-align:center}
}
