.elementor-427 .elementor-element.elementor-element-e0c5844{--display:flex;--min-height:100vh;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-427 .elementor-element.elementor-element-e0c5844:not(.elementor-motion-effects-element-type-background), .elementor-427 .elementor-element.elementor-element-e0c5844 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFFE3;}body.elementor-page-427:not(.elementor-motion-effects-element-type-background), body.elementor-page-427 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-secondary );}/* Start custom CSS for html, class: .elementor-element-5d78451 */.tunnel-section{
  height:100vh;
  overflow:hidden;
  position:relative;
  background:#fff;
  perspective:1200px;
  transform-style:preserve-3d;
}

/* ventana navegador */

.browser-window{
  position:absolute;
  top:50%;
  left:50%;
  transform:translate(-50%,-50%);
  width:320px;
  height:210px;
  background:#ffffffea;
  border-radius:12px;
  box-shadow:0 10px 30px rgba(0,0,0,.15);
  z-index:10;
  overflow:hidden;
}

.browser-bar{
  background:#d8d8d8;
  padding:10px;
  display:flex;
  align-items:center;
  border-bottom:1px solid #ccc;
}

.dots{
  display:flex;
  gap:6px;
  margin-right:15px;
}

.dots span{
  width:10px;
  height:10px;
  background:#a0a0a0;
  border-radius:50%;
}

.address-bar{
  flex-grow:1;
  height:22px;
  background:#fff;
  border-radius:12px;
}

.browser-content{
  padding:30px;
  font-family:'Courier New', monospace;
  font-size:1.05rem;
  line-height:1.3;
  color:#333;
}

.browser-content .bold{
  font-weight:bold;
}

/* túnel */

.tunnel-item{
  position:absolute;
  top:50%;
  left:50%;
  width:360px;
  cursor:pointer;
  will-change:transform, opacity;
}

.tunnel-item img{
  width:100%;
  display:block;
  border-radius:8px;
  box-shadow:0 40px 120px rgba(0,0,0,.25);
}

/* viewer */

.viewer-overlay{
  position:fixed;
  inset:0;
  background:rgba(0,0,0,0.75);
  display:flex;
  align-items:center;
  justify-content:center;
  opacity:0;
  pointer-events:none;
  transition:.4s ease;
  z-index:9999;
}

.viewer-overlay.active{
  opacity:1;
  pointer-events:auto;
}

.viewer-content{
  position:relative;
  max-width:900px;
  width:90%;
  text-align:center;
}

.viewer-content img{
  width:100%;
  border-radius:12px;
  box-shadow:0 40px 120px rgba(0,0,0,.5);
}

.viewer-caption{
  margin-top:12px;
  font-size:14px;
  color:#000;
}

.visit-btn{
  display:block;
  margin-top:20px;
  text-align:center;
  background:#000;
  color:#fff;
  padding:14px;
  border-radius:10px;
  font-weight:bold;
  text-decoration:none;
  text-transform:uppercase;
  transition:.2s;
}

.visit-btn:hover{
  transform:scale(1.05);
}

.close-btn{
  position:absolute;
  top:-40px;
  right:0;
  font-size:28px;
  color:#fff;
  cursor:pointer;
}/* End custom CSS */