/* Home-only bands (this file is included only on /). */
/* Líneas de negocio: charcoal from the gray pass — do not retint. */
.home-lines{
  --hl-bg:#16181b;
  --hl-text:#F2F3F5;
  --hl-muted:#C5C8CC;
  --hl-body:#D8DBDF;
  --hl-card:#1c1f23;
  --hl-line:rgba(220,224,228,.12);
  position:relative;
  background:#16181b;
  color:#F2F3F5;
  padding-top:4.5rem;
  padding-bottom:5.5rem;
}
.home-lines .container{position:relative;z-index:1}
.home-lines .eyebrow{color:#C5C8CC}
.home-lines h2{color:#F2F3F5}
.home-lines .line-card{
  background:#1c1f23;
  border:1px solid rgba(220,224,228,.12);
  color:#F2F3F5;
  box-shadow:0 12px 32px rgba(0,0,0,.28);
}
.home-lines .line-card h3{color:#F2F3F5}
.home-lines .line-card p{color:#D8DBDF}
.home-lines .muted{color:#C5C8CC}
.home-lines .read-more{color:#D5D8DC}
.home-lines .read-more:hover{color:#fff}
.home-lines .read-more:focus-visible,
.home-lines a:focus-visible{
  outline:2px solid #C5CDD6;
  outline-offset:3px;
}
.home-lines .tag{
  background:rgba(255,255,255,.08);
  color:#E8EAED;
}
.home-lines .tag-new{
  background:rgba(157,117,205,.22);
  color:#E4D7F5;
}

/* Home hero fades into charcoal so the logo marquee / Líneas junction is seamless. */
.fondo-c .hero.home-hero{
  background:radial-gradient(ellipse at top right,var(--accent-glow),transparent 60%),linear-gradient(180deg,var(--c-morado-1) 0%,var(--c-morado-2) calc(100% - 3.5rem),#16181b 100%);
}
.con-textura.fondo-c .hero.home-hero{
  background:var(--tex-oscuro) 0 0/var(--tex-size) repeat,radial-gradient(ellipse at top right,var(--accent-glow),transparent 60%),linear-gradient(180deg,var(--c-morado-1) 0%,var(--c-morado-2) calc(100% - 3.5rem),#16181b 100%);
}

/* Home +data coverflow (dark band, brand glow). Scoped so the rest of the page is unchanged. */
.data-featured{
  --df-bg:#0E0B14;
  --df-bg2:#16121F;
  --df-card:rgba(22,18,31,.72);
  --df-text:#ECEAF2;
  --df-muted:#A39DB5;
  --df-line:rgba(236,234,242,.16);
  --df-glow:rgba(157,117,205,.45);
  --df-glow2:rgba(125,87,175,.28);
  --df-accent:#9D75CD;
  --df-accent2:#C9B3E8;
  position:relative;
  overflow:hidden;
  color:var(--df-text);
  background:
    radial-gradient(ellipse 80% 60% at 50% -10%,rgba(125,87,175,.34),transparent 58%),
    radial-gradient(ellipse 50% 40% at 90% 90%,rgba(60,38,92,.4),transparent 60%),
    linear-gradient(180deg,#1A1029 0%,#0E0B14 55%,#16121F 100%);
  padding-bottom:5rem;
}
.data-featured .eyebrow{color:var(--df-accent2)}
.data-featured h2{color:var(--df-text);margin:.35rem 0 1.6rem}
.data-featured-all{margin-top:1.8rem}
.data-featured-all .read-more{color:var(--df-accent2)}
.data-featured-all .read-more:hover{color:#fff}

.data-slider{position:relative;margin-top:.4rem}
.data-slider-viewport{
  perspective:1400px;
  perspective-origin:50% 45%;
  overflow:visible;
}
.data-slider-stage{
  position:relative;
  height:clamp(420px,62vw,560px);
  transform-style:preserve-3d;
  touch-action:pan-y;
}
/* Before JS: show the first slide (links already in the HTML). */
.data-slide:first-child{
  transform:translateX(-50%) translateZ(80px) scale(1);
  opacity:1;
  pointer-events:auto;
  z-index:5;
  border-color:rgba(201,179,232,.45);
}
.data-slide{
  position:absolute;
  top:0;left:50%;
  width:min(640px,78%);
  height:100%;
  margin:0;
  display:flex;
  flex-direction:column;
  border-radius:20px;
  overflow:hidden;
  background:var(--df-card);
  border:1px solid var(--df-line);
  box-shadow:0 0 0 1px rgba(157,117,205,.12),0 18px 50px rgba(0,0,0,.45);
  backdrop-filter:blur(16px) saturate(1.2);
  -webkit-backdrop-filter:blur(16px) saturate(1.2);
  transform-origin:center center;
  transform-style:preserve-3d;
  transform:translateX(-50%) translateZ(-280px) scale(.82);
  opacity:0;
  pointer-events:none;
  transition:transform .7s cubic-bezier(.22,.7,.25,1),opacity .55s ease,box-shadow .5s ease,filter .5s ease,border-color .5s ease;
  z-index:0;
}
.data-slide[data-pos="0"]{
  transform:translateX(-50%) translateZ(80px) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg)) scale(1);
  opacity:1;
  pointer-events:auto;
  z-index:5;
  border-color:rgba(201,179,232,.45);
  box-shadow:
    0 0 0 1px rgba(157,117,205,.4),
    0 0 42px var(--df-glow2),
    0 24px 60px rgba(0,0,0,.5);
}
.data-slide[data-pos="-1"]{
  transform:translateX(-118%) translateZ(-140px) rotateY(32deg) scale(.88);
  opacity:.72;
  pointer-events:auto;
  z-index:3;
  filter:brightness(.72);
}
.data-slide[data-pos="1"]{
  transform:translateX(18%) translateZ(-140px) rotateY(-32deg) scale(.88);
  opacity:.72;
  pointer-events:auto;
  z-index:3;
  filter:brightness(.72);
}
.data-slide[data-pos="-2"],
.data-slide[data-pos="2"]{
  transform:translateX(calc(var(--dir,1) * -160%)) translateZ(-320px) rotateY(calc(var(--dir,1) * 42deg)) scale(.75);
  opacity:0;
  z-index:1;
  pointer-events:none;
}
.data-slide[data-pos="-2"]{--dir:1}
.data-slide[data-pos="2"]{--dir:-1}

.data-slide-cover{
  display:block;
  flex:0 0 auto;
  position:relative;
  overflow:hidden;
  background:#1A1029;
}
.data-slide-cover img{
  display:block;
  width:100%;
  height:auto;
  aspect-ratio:1200/630;
  object-fit:cover;
  transform:scale(1.04);
  transition:transform .8s ease;
}
.data-slide[data-pos="0"] .data-slide-cover img{transform:scale(1)}
.data-slide-cover::after{
  content:"";
  position:absolute;inset:auto 0 0;height:42%;
  background:linear-gradient(180deg,transparent,rgba(14,11,20,.82));
  pointer-events:none;
}
.data-slide-body{
  flex:1 1 auto;
  display:flex;
  flex-direction:column;
  gap:.55rem;
  padding:1rem 1.35rem 1.35rem;
}
.data-slide-meta{
  display:flex;align-items:center;gap:.7rem;flex-wrap:wrap;
  margin:0;font-size:.8rem;color:var(--df-muted);
}
.data-slide-meta .tag{
  margin:0;
  font-size:.72rem;
  letter-spacing:.04em;
  text-transform:uppercase;
  font-weight:600;
}
.data-slide .tag-ciencia{background:rgba(168,216,110,.16);color:#C8E89A}
.data-slide .tag-tecnologia{background:rgba(91,184,240,.16);color:#9DD4F7}
.data-slide .tag-datos{background:rgba(63,203,142,.16);color:#8BE0B8}
.data-slide .tag-podcast{background:rgba(224,123,214,.16);color:#F0B6EA}
.data-slide-body h3{
  margin:0;
  font-family:var(--ms-font-display,Sora,system-ui,sans-serif);
  font-size:clamp(1.15rem,2.2vw,1.55rem);
  line-height:1.25;
  font-weight:600;
}
.data-slide-body h3 a{color:var(--df-text)}
.data-slide-body h3 a:hover{color:#fff}
.data-slide-excerpt{
  margin:0;
  color:var(--df-muted);
  font-size:.95rem;
  line-height:1.5;
  display:-webkit-box;
  -webkit-line-clamp:3;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.data-slide-more{
  margin-top:auto;
  align-self:flex-start;
  padding:.65rem 1.2rem;
  box-shadow:0 0 24px rgba(157,117,205,.28);
}
.data-slide-more:focus-visible,
.data-slider-arrow:focus-visible,
.data-slider-dot:focus-visible,
.data-slide-body h3 a:focus-visible{
  outline:2px solid var(--df-accent2);
  outline-offset:3px;
}

.data-slider-ui{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:.8rem;
  margin-top:1.4rem;
}
.data-slider-arrow{
  width:44px;height:44px;
  border-radius:50%;
  border:1px solid var(--df-line);
  background:rgba(22,18,31,.7);
  color:var(--df-text);
  cursor:pointer;
  display:grid;place-items:center;
  backdrop-filter:blur(8px);
  transition:border-color .2s,background .2s,box-shadow .2s;
}
.data-slider-arrow:hover{
  border-color:var(--df-accent);
  box-shadow:0 0 18px var(--df-glow2);
  background:rgba(60,38,92,.6);
}
.data-slider-arrow svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.data-slider-dots{display:flex;gap:.45rem;align-items:center}
.data-slider-dot{
  width:8px;height:8px;padding:0;
  border:0;border-radius:999px;
  background:rgba(236,234,242,.28);
  cursor:pointer;
  transition:width .3s,background .3s,box-shadow .3s;
}
.data-slider-dot[aria-current="true"]{
  width:22px;
  background:var(--df-accent);
  box-shadow:0 0 12px var(--df-glow);
}

.data-slider-progress{
  position:absolute;left:0;right:0;bottom:0;
  height:2px;
  background:rgba(236,234,242,.08);
  overflow:hidden;
  pointer-events:none;
}
.data-slider-progress > span{
  display:block;height:100%;width:100%;
  background:linear-gradient(90deg,#7D57AF,#9D75CD,#C9B3E8);
  transform-origin:left center;
  transform:scaleX(0);
}
.data-slider.is-playing .data-slider-progress > span{
  animation:data-slider-progress var(--autoplay,6500ms) linear forwards;
}
@keyframes data-slider-progress{from{transform:scaleX(0)}to{transform:scaleX(1)}}

@media (max-width:700px){
  .data-slider-stage{height:clamp(460px,148vw,620px)}
  .data-slide{width:min(92%,420px)}
  .data-slide[data-pos="-1"]{
    transform:translateX(-102%) translateZ(-180px) rotateY(24deg) scale(.86);
  }
  .data-slide[data-pos="1"]{
    transform:translateX(2%) translateZ(-180px) rotateY(-24deg) scale(.86);
  }
  .data-slide-excerpt{-webkit-line-clamp:4}
}

@media (prefers-reduced-motion:reduce){
  .data-slider-stage{height:auto;min-height:0;perspective:none}
  .data-slide,
  .data-slide[data-pos="-1"],
  .data-slide[data-pos="1"],
  .data-slide[data-pos="-2"],
  .data-slide[data-pos="2"],
  .data-slide[data-pos="0"]{
    position:relative;left:auto;top:auto;
    width:100%;
    height:auto;
    transform:none !important;
    filter:none;
    opacity:0;
    pointer-events:none;
    transition:opacity .35s ease;
    box-shadow:0 0 0 1px rgba(157,117,205,.35),0 16px 40px rgba(0,0,0,.4);
  }
  .data-slide[data-pos="0"]{
    opacity:1;
    pointer-events:auto;
    position:relative;
  }
  .data-slide-cover img{transform:none;transition:none}
  .data-slider-progress,.data-slider.is-playing .data-slider-progress > span{animation:none;display:none}
}
