.elementor-4294 .elementor-element.elementor-element-5e8e9ee{--display:flex;--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-4294 .elementor-element.elementor-element-d80b7e0 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-4294 .elementor-element.elementor-element-a4d3be3{--display:flex;--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-4294 .elementor-element.elementor-element-b6f0ac0{--display:flex;--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-4294 .elementor-element.elementor-element-da7ef5a{--spacer-size:88px;}.elementor-4294 .elementor-element.elementor-element-7c9631f{--display:flex;--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-4294 .elementor-element.elementor-element-4d0ff0d > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-4294 .elementor-element.elementor-element-0dfb023{--display:flex;--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-4294 .elementor-element.elementor-element-8cf8bc0 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-4294 .elementor-element.elementor-element-f7d4e17{--display:flex;--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-4294 .elementor-element.elementor-element-6b7f5ce > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-4294 .elementor-element.elementor-element-d508439{--display:flex;--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-4294 .elementor-element.elementor-element-ff10ef6 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}/* Start custom CSS for html, class: .elementor-element-d80b7e0 */.sector-hero {
  position: relative;
  width: 100%;
  height: 100vh;
  background: #05050a;
  overflow: hidden;
  display: flex;
  align-items: center;
  color: white;
}

/* fondo uwu */
.sector-bg {
  position: absolute;
  inset: 0;
  background-image: url("https://img.freepik.com/foto-gratis/diseno-conexiones-red-3d-puntos-lineas-conexion-plexo_1048-11879.jpg?semt=ais_hybrid&w=740&q=80");
  background-size: cover;
  background-position: center;
  opacity: 0.2;
  z-index: 0;
}

.sector-grid {
  position: absolute;
  inset: 0;
  background-image:
    linear-gradient(rgba(237,40,57,0.05) 1px, transparent 1px),
    linear-gradient(90deg, rgba(237,40,57,0.05) 1px, transparent 1px);
  background-size: 60px 60px;
  z-index: 0;
}

/* layout */
.sector-inner {
  position: relative;
  z-index: 2;
  width: 100%;
  max-width: 1300px;
  margin: 0 auto;
  padding: 6rem 2rem;

  display: grid;
  grid-template-columns: 1fr 450px;
  gap: 60px;
  align-items: center;
}

/* overlay contenido */
.sector-inner::before {
  content: "";
  position: absolute;
  inset: 0;

  background: linear-gradient(
    to right,
    rgba(5,5,10,0.75) 0%,
    rgba(5,5,10,0.5) 40%,
    rgba(5,5,10,0.15) 70%,
    transparent 100%
  );

  z-index: 0;
}

.sector-left,
.sector-right {
  position: relative;
  z-index: 2;
}


.sector-label {
  color: #ed2839;
  letter-spacing: 4px;
  font-size: 0.8rem;
  margin-bottom: 10px;
}

.sector-title {
  font-size: 2.8rem;
  font-family: "Merriweather", serif;
  margin-bottom: 20px;
  line-height: 1.3;
}

.sector-title span {
  color: #ed2839;
}

.highlight {
  color: #ffffff;
}

.sector-desc {
  color: #d1d5db;
  max-width: 520px;
  margin-bottom: 30px;
}

/* botones */
.sector-cta {
  display: flex;
  gap: 15px;
}

.sector-cta button {
  background: #ed2839;
  border: none;
  padding: 12px 20px;
  color: white;
  cursor: pointer;
  border-radius: 6px;
  transition: 0.3s;
}

.sector-cta button:hover {
  background: #c71f2e;
}

.sector-cta .secondary {
  background: transparent;
  border: 1px solid #ed2839;
}

/* imagen */
.sector-image img {
  width: 100%;
  height: 520px;
  object-fit: cover;
  border-radius: 16px;

  box-shadow:
    0 40px 80px rgba(0,0,0,0.6),
    0 10px 30px rgba(237,40,57,0.2);

  opacity: 0;
  transform: translateY(40px);
}

/* animaciones */
.sector-title,
.sector-desc {
  opacity: 0;
  transform: translateY(30px);
}

.sector-hero.active .sector-title {
  animation: fadeUp 0.6s ease forwards;
}

.sector-hero.active .sector-desc {
  animation: fadeUp 0.6s ease 0.2s forwards;
}

.sector-hero.active .sector-image img {
  animation: fadeUp 0.8s ease 0.4s forwards;
}

@keyframes fadeUp {
  to {
    opacity: 1;
    transform: translateY(0);
  }
}


@media (max-width: 900px) {
  .sector-inner {
    grid-template-columns: 1fr;
    text-align: center;
  }

  .sector-cta {
    justify-content: center;
  }

  .sector-image img {
    height: 380px;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-d5920c1 */.sector-risks {
  position: relative;
  padding: 140px 20px;
  background: #ffffff;
  overflow: hidden;
}

/* fondo sutil */
.sector-risks-bg {
  position: absolute;
  inset: 0;

  background:
    radial-gradient(400px 400px at 20% 30%, rgba(237,40,57,0.05), transparent 70%),
    radial-gradient(500px 500px at 80% 70%, rgba(0,0,0,0.08), transparent 70%);

  z-index: 0;
}

.sector-risks-container {
  position: relative;
  z-index: 2;
  max-width: 1200px;
  margin: 0 auto;
  text-align: center;
}

/* header */
.sector-risks-label {
  color: #ed2839;
  letter-spacing: 4px;
  font-size: 0.8rem;
  margin-bottom: 10px;
}

.sector-risks-title {
  font-size: 2.5rem;
  font-family: "Merriweather", serif;
  margin-bottom: 15px;
  color: #0b132b;
}

.sector-risks-sub {
  max-width: 700px;
  margin: 0 auto 80px;
  color: #6b7280;
}

/* layout */
.sector-risks-layout {
  display: grid;
  grid-template-columns: 1.2fr 1fr;
  gap: 60px;
  align-items: center;
}

/* parte de la izq xd*/
.sector-risks-story {
  text-align: left;
  opacity: 0;
  transform: translateX(-40px);
}

.story-image img {
  width: 100%;
  height: 260px;
  object-fit: cover;
  border-radius: 12px;
  margin-bottom: 25px;

  box-shadow: 0 20px 40px rgba(0,0,0,0.08);
}

.story-content h3 {
  font-family: "Merriweather", serif;
  margin-bottom: 20px;
}

.story-steps .step {
  display: flex;
  gap: 15px;
  margin-bottom: 15px;
}

.step span {
  color: #ed2839;
  font-weight: bold;
}

/*parte der xd*/
.sector-risks-cards {
  display: grid;
  gap: 20px;

  opacity: 0;
  transform: translateX(40px);
}

.risk-card {
  background: #ffffff;
  padding: 25px;
  border-radius: 10px;
  text-align: left;

  box-shadow: 0 10px 25px rgba(0,0,0,0.05);
  transition: 0.3s;
  position: relative;
  overflow: hidden;
}

/* línea roja hover */
.risk-card::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 4px;
  height: 100%;
  background: #ed2839;

  transform: scaleY(0);
  transform-origin: top;
  transition: transform 0.3s ease;

  border-top-left-radius: 10px;
  border-bottom-left-radius: 10px;
}

.risk-card:hover::before {
  transform: scaleY(1);
}

.risk-card:hover {
  transform: translateY(-5px);
}

/* insight */
.sector-risks-insight {
  margin-top: 80px;
  font-style: italic;
  color: #374151;
  max-width: 700px;
  margin-left: auto;
  margin-right: auto;

  opacity: 0;
  transform: translateY(30px);
}


.sector-risks.active .sector-risks-story {
  animation: fadeLeft 0.6s ease forwards;
}

.sector-risks.active .sector-risks-cards {
  animation: fadeRight 0.6s ease 0.2s forwards;
}

.sector-risks.active .sector-risks-insight {
  animation: fadeUp 0.6s ease 0.4s forwards;
}

@keyframes fadeLeft {
  to { opacity: 1; transform: translateX(0); }
}

@keyframes fadeRight {
  to { opacity: 1; transform: translateX(0); }
}

@keyframes fadeUp {
  to { opacity: 1; transform: translateY(0); }
}


@media (max-width: 900px) {
  .sector-risks-layout {
    grid-template-columns: 1fr;
  }

  .sector-risks-story,
  .sector-risks-cards {
    transform: none;
  }

  .story-image img {
    height: 200px;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-4d0ff0d */.sector-compliance {
  position: relative;
  padding: 140px 20px;
  background: #ffffff;
  overflow: hidden;
}

/* fondo sutil */
.sector-compliance-bg {
  position: absolute;
  inset: 0;

  background:
    radial-gradient(400px 400px at 20% 30%, rgba(237,40,57,0.05), transparent 70%),
    radial-gradient(500px 500px at 80% 70%, rgba(0,0,0,0.05), transparent 70%);

  z-index: 0;
}

.sector-compliance-container {
  position: relative;
  z-index: 2;
  max-width: 1200px;
  margin: 0 auto;
  text-align: center;
}

/* header */
.sector-compliance-label {
  color: #ed2839;
  letter-spacing: 4px;
  font-size: 0.8rem;
  margin-bottom: 10px;
}

.sector-compliance-title {
  font-size: 2.5rem;
  font-family: "Merriweather", serif;
  margin-bottom: 15px;
  color: #0b132b;
}

.sector-compliance-sub {
  max-width: 700px;
  margin: 0 auto 80px;
  color: #6b7280;
}

/* layout */
.sector-compliance-layout {
  display: grid;
  grid-template-columns: 1fr 1.2fr;
  gap: 80px;
  align-items: center;
}

/* ===== STACK IZQUIERDA ===== */
.compliance-stack {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 30px;
  text-align: left;

  opacity: 0;
  transform: translateX(-40px);
}

.stack-line {
  position: absolute;
  left: 10px;
  top: 0;
  bottom: 0;
  width: 2px;
  background: linear-gradient(to bottom, #ed2839, transparent);
}

.stack-item {
  position: relative;
  padding-left: 40px;
}

.stack-item::before {
  content: "";
  position: absolute;
  left: 2px;
  top: 8px;
  width: 14px;
  height: 14px;
  background: #ed2839;
  border-radius: 3px;
  box-shadow: 0 0 10px rgba(237,40,57,0.5);
}

.stack-item h4 {
  margin-bottom: 5px;
  color: #0b132b;
}

.stack-item p {
  font-size: 0.9rem;
  color: #6b7280;
}

/* ===== DERECHA ===== */
.compliance-content {
  text-align: left;

  opacity: 0;
  transform: translateX(40px);
}

.compliance-content h3 {
  font-family: "Merriweather", serif;
  margin-bottom: 15px;
}

.compliance-content p {
  color: #6b7280;
  margin-bottom: 25px;
}

/* lista */
.compliance-points div {
  margin-bottom: 12px;
  color: #374151;
}

/* insight */
.compliance-insight {
  margin-top: 30px;
  font-style: italic;
  color: #111827;
}

/* animaciones */
.sector-compliance.active .compliance-stack {
  animation: fadeLeft 0.6s ease forwards;
}

.sector-compliance.active .compliance-content {
  animation: fadeRight 0.6s ease 0.2s forwards;
}

@keyframes fadeLeft {
  to { opacity: 1; transform: translateX(0); }
}

@keyframes fadeRight {
  to { opacity: 1; transform: translateX(0); }
}

/* responsive */
@media (max-width: 900px) {
  .sector-compliance-layout {
    grid-template-columns: 1fr;
  }

  .compliance-content {
    text-align: center;
  }

  .compliance-stack {
    align-items: center;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-8cf8bc0 */.arch-split {
  position: relative;
  padding: 110px 20px;
  background: #05050a;
  color: white;
  overflow: hidden;
}

/* fondo */
.arch-split-bg {
  position: absolute;
  inset: 0;
  background-image: url("TU-IMAGEN.jpg");
  background-size: cover;
  background-position: center;
  opacity: 0.1;
}

/* container */
.arch-split-container {
  position: relative;
  z-index: 2;
  max-width: 1200px;
  margin: 0 auto;

  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 60px;
  align-items: center;
}

/* LEFT */
.arch-left {
  opacity: 0;
  transform: translateY(30px);
}

.arch-label {
  color: #ed2839;
  letter-spacing: 4px;
  font-size: 0.8rem;
  margin-bottom: 10px;
}

.arch-title {
  font-size: 2.4rem;
  font-family: "Merriweather", serif;
  margin-bottom: 20px;
}

.arch-desc {
  color: #a1a1aa;
  margin-bottom: 30px;
  line-height: 1.6;
}

.arch-points div {
  margin-bottom: 12px;
  padding-left: 18px;
  position: relative;
  color: #e5e5e5;
}

.arch-points div::before {
  content: "";
  position: absolute;
  left: 0;
  top: 8px;
  width: 8px;
  height: 8px;
  background: #ed2839;
  border-radius: 2px;
}

/* RIGHT */
.arch-right {
  opacity: 0;
  transform: translateY(30px);
}

/* diagrama */
.arch-diagram {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

/* capas */
.layer {
  position: relative;
  padding: 16px 20px;
  border-radius: 8px;

  background: rgba(255,255,255,0.04);
  border: 1px solid rgba(255,255,255,0.08);

  backdrop-filter: blur(10px);

  font-size: 0.9rem;
  text-align: center;

  transition: 0.3s;
}

/* línea conexión */
.layer::after {
  content: "";
  position: absolute;
  bottom: -16px;
  left: 50%;
  width: 2px;
  height: 16px;
  background: linear-gradient(to bottom, #ed2839, transparent);
  transform: translateX(-50%);
}

.layer:last-child::after {
  display: none;
}

/* hover */
.layer:hover {
  background: rgba(237,40,57,0.08);
  border-color: rgba(237,40,57,0.4);
  transform: translateY(-3px);
}

/* animación */
.arch-split.active .arch-left {
  animation: fadeUp 0.6s ease forwards;
}

.arch-split.active .arch-right {
  animation: fadeUp 0.6s ease 0.3s forwards;
}

.arch-split.active .layer {
  animation: fadeUp 0.5s ease forwards;
}

.arch-split.active .layer:nth-child(1) { animation-delay: 0.4s; }
.arch-split.active .layer:nth-child(2) { animation-delay: 0.5s; }
.arch-split.active .layer:nth-child(3) { animation-delay: 0.6s; }
.arch-split.active .layer:nth-child(4) { animation-delay: 0.7s; }
.arch-split.active .layer:nth-child(5) { animation-delay: 0.8s; }

@keyframes fadeUp {
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/* responsive */
@media (max-width: 900px) {
  .arch-split-container {
    grid-template-columns: 1fr;
    text-align: center;
  }

  .arch-points div {
    padding-left: 0;
  }

  .arch-points div::before {
    display: none;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-6b7f5ce */.cases-section {
  position: relative;
  padding: 140px 20px;
  background: #ffffff;
  overflow: hidden;
}


.cases-bg {
  position: absolute;
  inset: 0;

  background:
    radial-gradient(400px 300px at 20% 30%, rgba(237,40,57,0.06), transparent 70%),
    radial-gradient(500px 400px at 80% 70%, rgba(0,0,0,0.05), transparent 70%),
    url("https://cyberfusion.pe/wp-content/uploads/2023/03/service-shape-comp.png");

  background-repeat: no-repeat;
  background-position: 20% 30%, 80% 70%, center;
  background-size: auto, auto, 600px;

  opacity: 0.35;
  z-index: 0;
}

.cases-container {
  position: relative;
  z-index: 2;
  max-width: 1200px;
  margin: 0 auto;
  text-align: center;
}

.cases-label {
  color: #ed2839;
  letter-spacing: 4px;
  font-size: 0.8rem;
  margin-bottom: 10px;
}

.cases-title {
  font-size: 2.5rem;
  font-family: "Merriweather", serif;
  margin-bottom: 70px;
  color: #0b132b;
}


.cases-carousel {
  overflow: hidden;
}

.cases-track {
  display: flex;
  gap: 24px;
  transition: transform 0.4s ease;
}

/* tarjetas */
.case-card {
  flex: 0 0 calc(50% - 12px);
  background: rgba(255,255,255,0.9);
  backdrop-filter: blur(6px);
  padding: 40px; 
  border-radius: 12px;
  text-align: left;
  box-shadow: 0 20px 50px rgba(0,0,0,0.08);
  position: relative;
  overflow: hidden;
}


@media (max-width: 900px) {
  .case-card {
    flex: 0 0 100%;
  }
}


.case-id {
  font-size: 0.7rem;
  letter-spacing: 2px;
  color: #ed2839;
  margin-bottom: 15px;
  display: block;
}


.case-card h3 {
  margin-top: 12px;
  margin-bottom: 6px;
  font-size: 0.95rem;
  color: #0b132b;
}

.case-card p {
  font-size: 0.95rem;
  color: #6b7280;
}


.case-result {
  margin-top: 25px;
}

.case-result span {
  font-size: 2.2rem;
  color: #ed2839;
  font-weight: bold;
}


.case-card::before {
  content: "";
  position: absolute;
  left: 0;
  top: 12px;
  height: calc(100% - 24px);
  width: 4px;
  background: #ed2839;
  border-radius: 6px;
  transform: scaleY(0);
  transform-origin: top;
  transition: 0.3s;
}

.case-card::before {
  content: "";
  position: absolute;

  left: 0;
  top: 0;

  width: 4px;
  height: 100%;

  background: linear-gradient(
    to bottom,
    #ed2839,
    rgba(237,40,57,0.6)
  );


  border-top-left-radius: 12px;
  border-bottom-left-radius: 12px;


  opacity: 0;
  transform: translateX(-6px);

  transition: 
    opacity 0.25s ease,
    transform 0.25s ease;
}

.case-card:hover {
  transform: translateY(-6px);
}

.case-card:hover::before {
  opacity: 1;
  transform: translateX(0);
}

.cases-controls {
  margin-top: 40px;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 20px;
}

.cases-btn {
  border: none;
  background: none;
  font-size: 2rem;
  cursor: pointer;
  color: #999;
}

.cases-btn:hover {
  color: #ed2839;
}

/* dots */
.dot {
  width: 8px;
  height: 8px;
  background: #ccc;
  display: inline-block;
  margin: 0 5px;
  border-radius: 50%;
  cursor: pointer;
}

.dot.active {
  background: #ed2839;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-ff10ef6 */.cta-final {
  position: relative;
  padding: 140px 20px;
  background: #ffffff;
  overflow: hidden;
  color: #0b132b;
}


.cta-bg {
  position: absolute;
  inset: 0;

  background:
    radial-gradient(400px 300px at 20% 30%, rgba(237,40,57,0.05), transparent 70%),
    radial-gradient(500px 400px at 80% 70%, rgba(0,0,0,0.04), transparent 70%),
    url("https://img.freepik.com/free-photo/abstract-red-smooth-wave-lines_1017-24875.jpg?semt=ais_hybrid&w=740&q=80");

  background-repeat: no-repeat;
  background-position: center;
  background-size: 100%;

  opacity: 0.3;
  z-index: 0;
}


.cta-container {
  position: relative;
  z-index: 2;
  max-width: 1300px;
  margin: 0 auto;

  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 80px;
  align-items: center;
}

.cta-left {
  opacity: 0;
  transform: translateX(-40px);
}

.cta-label {
  color: #ed2839;
  letter-spacing: 4px;
  font-size: 0.8rem;
  margin-bottom: 15px;
}

.cta-title {
  font-size: 2.8rem;
  font-family: "Merriweather", serif;
  margin-bottom: 20px;
}

.cta-title span {
  color: #ed2839;
}

.cta-desc {
  color: #6b7280;
  max-width: 500px;
  margin-bottom: 30px;
}


.cta-buttons {
  display: flex;
  gap: 15px;
  margin-bottom: 20px;
}

.cta-btn {
  padding: 14px 22px;
  border-radius: 6px;
  text-decoration: none;
  font-size: 0.9rem;
  transition: 0.3s ease;
}

.cta-btn.primary {
  background: #ed2839;
  color: white;
}

.cta-btn.secondary {
  border: 1px solid #ddd;
  color: #0b132b;
}


.cta-trust {
  font-size: 0.8rem;
  color: #888;
}


.cta-right {
  display: flex;
  flex-direction: column;
  align-items: center;
}


.cta-image img {
  width: 100%;
  max-width: 510px;
  height: 480px;
  object-fit: cover;
  border-radius: 16px;

  box-shadow: 0 30px 70px rgba(0,0,0,0.15);

  opacity: 0;
  transform: translateY(40px);
}


.cta-stats {
  margin-top: 20px;
  display: flex;
  gap: 15px;
  justify-content: center;
}

.cta-stat {
  background: rgba(255,255,255,0.95);
  backdrop-filter: blur(8px);

  padding: 12px 16px;
  border-radius: 8px;

  min-width: 120px;
  text-align: center;

  box-shadow: 0 10px 25px rgba(0,0,0,0.12);
}

.cta-stat strong {
  display: block;
  font-size: 1.3rem;
  color: #ed2839;
}

.cta-stat span {
  font-size: 0.7rem;
  color: #6b7280;
}


.cta-final.active .cta-left {
  animation: fadeLeft 0.8s ease forwards;
}

.cta-final.active .cta-image img {
  animation: fadeUp 0.8s ease 0.3s forwards;
}

@keyframes fadeLeft {
  to {
    opacity: 1;
    transform: translateX(0);
  }
}

@keyframes fadeUp {
  to {
    opacity: 1;
    transform: translateY(0);
  }
}


@media (max-width: 900px) {
  .cta-container {
    grid-template-columns: 1fr;
    text-align: center;
  }

  .cta-buttons {
    justify-content: center;
  }

  .cta-stats {
    flex-wrap: wrap;
  }
}/* End custom CSS */