.elementor-31 .elementor-element.elementor-element-f952e4d{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--padding-top:20px;--padding-bottom:20px;--padding-left:0px;--padding-right:0px;}.elementor-31 .elementor-element.elementor-element-263e32d{--display:flex;--justify-content:center;--align-items:flex-start;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );}.elementor-31 .elementor-element.elementor-element-263e32d.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-31 .elementor-element.elementor-element-5d7c088 img{width:187px;}.elementor-31 .elementor-element.elementor-element-48e0ba6{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;}.elementor-31 .elementor-element.elementor-element-48e0ba6.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-widget-mega-menu > .e-n-menu > .e-n-menu-wrapper > .e-n-menu-heading > .e-n-menu-item > .e-n-menu-title, .elementor-widget-mega-menu > .e-n-menu > .e-n-menu-wrapper > .e-n-menu-heading > .e-n-menu-item > .e-n-menu-title > .e-n-menu-title-container, .elementor-widget-mega-menu > .e-n-menu > .e-n-menu-wrapper > .e-n-menu-heading > .e-n-menu-item > .e-n-menu-title > .e-n-menu-title-container > span{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-mega-menu{--n-menu-divider-color:var( --e-global-color-text );}.elementor-31 .elementor-element.elementor-element-9f0e795{--display:flex;}.elementor-31 .elementor-element.elementor-element-ac65511{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-31 .elementor-element.elementor-element-b696511{--display:flex;--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;--gap:10px 10px;--row-gap:10px;--column-gap:10px;border-style:solid;--border-style:solid;border-width:0px 1px 0px 0px;--border-top-width:0px;--border-right-width:1px;--border-bottom-width:0px;--border-left-width:0px;border-color:#FFFFFF1A;--border-color:#FFFFFF1A;--padding-top:40px;--padding-bottom:40px;--padding-left:40px;--padding-right:40px;}.elementor-31 .elementor-element.elementor-element-4ab386b{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--align-items:center;--gap:9px 9px;--row-gap:9px;--column-gap:9px;border-style:solid;--border-style:solid;border-width:0px 0px 01px 0px;--border-top-width:0px;--border-right-width:0px;--border-bottom-width:01px;--border-left-width:0px;border-color:#FFFFFF1F;--border-color:#FFFFFF1F;--margin-top:0px;--margin-bottom:8px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:14px;--padding-left:0px;--padding-right:0px;}.elementor-widget-icon.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-primary );}.elementor-widget-icon.elementor-view-framed .elementor-icon, .elementor-widget-icon.elementor-view-default .elementor-icon{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-widget-icon.elementor-view-framed .elementor-icon, .elementor-widget-icon.elementor-view-default .elementor-icon svg{fill:var( --e-global-color-primary );}.elementor-31 .elementor-element.elementor-element-95f767d{margin:4px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-31 .elementor-element.elementor-element-95f767d .elementor-icon-wrapper{text-align:center;}.elementor-31 .elementor-element.elementor-element-95f767d.elementor-view-stacked .elementor-icon{background-color:#0D17AC00;}.elementor-31 .elementor-element.elementor-element-95f767d.elementor-view-framed .elementor-icon, .elementor-31 .elementor-element.elementor-element-95f767d.elementor-view-default .elementor-icon{color:#0D17AC00;border-color:#0D17AC00;}.elementor-31 .elementor-element.elementor-element-95f767d.elementor-view-framed .elementor-icon, .elementor-31 .elementor-element.elementor-element-95f767d.elementor-view-default .elementor-icon svg{fill:#0D17AC00;}.elementor-31 .elementor-element.elementor-element-95f767d .elementor-icon{font-size:13px;}.elementor-31 .elementor-element.elementor-element-95f767d .elementor-icon svg{height:13px;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-31 .elementor-element.elementor-element-e2dca65 .elementor-heading-title{font-family:"Albert Sans", Sans-serif;font-size:11px;font-weight:500;text-transform:uppercase;letter-spacing:1.5px;color:#7B93F0;}.elementor-widget-icon-box.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-primary );}.elementor-widget-icon-box.elementor-view-framed .elementor-icon, .elementor-widget-icon-box.elementor-view-default .elementor-icon{fill:var( --e-global-color-primary );color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-widget-icon-box .elementor-icon-box-title, .elementor-widget-icon-box .elementor-icon-box-title a{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-icon-box .elementor-icon-box-title{color:var( --e-global-color-primary );}.elementor-widget-icon-box:has(:hover) .elementor-icon-box-title,
					 .elementor-widget-icon-box:has(:focus) .elementor-icon-box-title{color:var( --e-global-color-primary );}.elementor-widget-icon-box .elementor-icon-box-description{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-31 .elementor-element.elementor-element-f0b22e4 .elementor-icon-box-wrapper{align-items:start;text-align:start;gap:15px;}.elementor-31 .elementor-element.elementor-element-9950aaf .elementor-icon-box-wrapper{align-items:start;text-align:start;gap:15px;}.elementor-31 .elementor-element.elementor-element-e6a3d0a .elementor-icon-box-wrapper{align-items:start;text-align:start;gap:15px;}.elementor-31 .elementor-element.elementor-element-86f2b7e .elementor-icon-box-wrapper{align-items:start;text-align:start;gap:15px;}.elementor-31 .elementor-element.elementor-element-0b46100 .elementor-icon-box-wrapper{align-items:start;text-align:start;gap:15px;}.elementor-31 .elementor-element.elementor-element-8261654 .elementor-icon-box-wrapper{align-items:start;text-align:start;gap:15px;}.elementor-widget-button .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-31 .elementor-element.elementor-element-5bb13a2 .elementor-button{background-color:#275AB600;font-family:"Albert Sans", Sans-serif;font-weight:500;fill:var( --e-global-color-ead2a3b );color:var( --e-global-color-ead2a3b );border-radius:9999px 9999px 9999px 9999px;padding:0px 0px 0px 0px;}.elementor-31 .elementor-element.elementor-element-5bb13a2{padding:20px 0px 0px 0px;}.elementor-31 .elementor-element.elementor-element-5bb13a2 .elementor-button-content-wrapper{flex-direction:row-reverse;}.elementor-31 .elementor-element.elementor-element-5bb13a2 .elementor-button .elementor-button-content-wrapper{gap:19px;}.elementor-31 .elementor-element.elementor-element-d322efb{--display:flex;--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;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--padding-top:40px;--padding-bottom:40px;--padding-left:40px;--padding-right:40px;}.elementor-31 .elementor-element.elementor-element-d5529a0{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--align-items:center;--gap:9px 9px;--row-gap:9px;--column-gap:9px;border-style:solid;--border-style:solid;border-width:0px 0px 01px 0px;--border-top-width:0px;--border-right-width:0px;--border-bottom-width:01px;--border-left-width:0px;border-color:#FFFFFF1F;--border-color:#FFFFFF1F;--margin-top:0px;--margin-bottom:8px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:14px;--padding-left:0px;--padding-right:0px;}.elementor-31 .elementor-element.elementor-element-e6633ff{margin:4px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-31 .elementor-element.elementor-element-e6633ff .elementor-icon-wrapper{text-align:center;}.elementor-31 .elementor-element.elementor-element-e6633ff.elementor-view-stacked .elementor-icon{background-color:#0D17AC00;}.elementor-31 .elementor-element.elementor-element-e6633ff.elementor-view-framed .elementor-icon, .elementor-31 .elementor-element.elementor-element-e6633ff.elementor-view-default .elementor-icon{color:#0D17AC00;border-color:#0D17AC00;}.elementor-31 .elementor-element.elementor-element-e6633ff.elementor-view-framed .elementor-icon, .elementor-31 .elementor-element.elementor-element-e6633ff.elementor-view-default .elementor-icon svg{fill:#0D17AC00;}.elementor-31 .elementor-element.elementor-element-e6633ff .elementor-icon{font-size:13px;}.elementor-31 .elementor-element.elementor-element-e6633ff .elementor-icon svg{height:13px;}.elementor-31 .elementor-element.elementor-element-1a909e8 .elementor-heading-title{font-family:"Albert Sans", Sans-serif;font-size:11px;font-weight:500;text-transform:uppercase;letter-spacing:1.5px;color:#7B93F0;}.elementor-31 .elementor-element.elementor-element-3293fc4 .elementor-icon-box-wrapper{align-items:start;text-align:start;gap:15px;}.elementor-31 .elementor-element.elementor-element-5a2c3ca .elementor-icon-box-wrapper{align-items:start;text-align:start;gap:15px;}.elementor-31 .elementor-element.elementor-element-cc6f1ce .elementor-icon-box-wrapper{align-items:start;text-align:start;gap:15px;}.elementor-31 .elementor-element.elementor-element-ca8a88e .elementor-icon-box-wrapper{align-items:start;text-align:start;gap:15px;}.elementor-31 .elementor-element.elementor-element-735ab2d .elementor-icon-box-wrapper{align-items:start;text-align:start;gap:15px;}.elementor-31 .elementor-element.elementor-element-3cbc789 .elementor-icon-box-wrapper{align-items:start;text-align:start;gap:15px;}.elementor-31 .elementor-element.elementor-element-e278906 .elementor-button{background-color:#275AB600;font-family:"Albert Sans", Sans-serif;font-weight:500;fill:var( --e-global-color-ead2a3b );color:var( --e-global-color-ead2a3b );border-radius:9999px 9999px 9999px 9999px;padding:0px 0px 0px 0px;}.elementor-31 .elementor-element.elementor-element-e278906{padding:20px 0px 0px 0px;}.elementor-31 .elementor-element.elementor-element-e278906 .elementor-button-content-wrapper{flex-direction:row-reverse;}.elementor-31 .elementor-element.elementor-element-e278906 .elementor-button .elementor-button-content-wrapper{gap:19px;}.elementor-31 .elementor-element.elementor-element-d40d0f1{--display:flex;}.elementor-31 .elementor-element.elementor-element-c854699{--display:flex;}.elementor-31 .elementor-element.elementor-element-582f76b{--n-menu-dropdown-content-max-width:initial;--n-menu-heading-justify-content:center;--n-menu-title-flex-grow:initial;--n-menu-title-justify-content:initial;--n-menu-title-justify-content-mobile:center;--n-menu-heading-wrap:wrap;--n-menu-heading-overflow-x:initial;--n-menu-title-distance-from-content:27px;--n-menu-open-animation-duration:500ms;--n-menu-toggle-icon-wrapper-animation-duration:500ms;--n-menu-title-space-between:0px;--n-menu-title-font-size:17px;--n-menu-title-transition:300ms;--n-menu-icon-size:16px;--n-menu-dropdown-indicator-color-normal:#02010100;--n-menu-dropdown-indicator-color-hover:#02010100;--n-menu-dropdown-indicator-color-active:#02010100;--n-menu-toggle-icon-size:20px;--n-menu-toggle-icon-hover-duration:500ms;--n-menu-toggle-icon-distance-from-dropdown:0px;}.elementor-31 .elementor-element.elementor-element-582f76b > .e-n-menu > .e-n-menu-wrapper > .e-n-menu-heading > .e-n-menu-item > .e-n-menu-title, .elementor-31 .elementor-element.elementor-element-582f76b > .e-n-menu > .e-n-menu-wrapper > .e-n-menu-heading > .e-n-menu-item > .e-n-menu-title > .e-n-menu-title-container, .elementor-31 .elementor-element.elementor-element-582f76b > .e-n-menu > .e-n-menu-wrapper > .e-n-menu-heading > .e-n-menu-item > .e-n-menu-title > .e-n-menu-title-container > span{font-family:"Albert Sans", Sans-serif;font-weight:600;}.elementor-31 .elementor-element.elementor-element-582f76b {--n-menu-title-color-active:var( --e-global-color-primary );}.elementor-31 .elementor-element.elementor-element-e474342 .jet-mobile-menu__container{z-index:999;}.elementor-31 .elementor-element.elementor-element-e474342 .jet-mobile-menu-widget .jet-mobile-menu-cover{z-index:calc(999-1);}.elementor-31 .elementor-element.elementor-element-e474342 .jet-mobile-menu__item .jet-menu-icon{align-self:center;justify-content:center;}.elementor-31 .elementor-element.elementor-element-e474342 .jet-mobile-menu__item .jet-menu-badge{align-self:flex-start;}.elementor-31 .elementor-element.elementor-element-d717626{--display:flex;--justify-content:center;--align-items:flex-end;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );}.elementor-31 .elementor-element.elementor-element-2474d7d .elementor-button{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );background-color:transparent;background-image:linear-gradient(180deg, var( --e-global-color-accent ) 0%, var( --e-global-color-primary ) 100%);border-radius:9999px 9999px 9999px 9999px;}.elementor-31:not(.elementor-motion-effects-element-type-background), .elementor-31 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://cibergy.com/wp-content/uploads/2026/01/Fondo-ruido-scaled.png");}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}@media(max-width:1024px){.elementor-31 .elementor-element.elementor-element-f952e4d{--padding-top:20px;--padding-bottom:20px;--padding-left:20px;--padding-right:20px;}.elementor-31 .elementor-element.elementor-element-48e0ba6{--justify-content:flex-end;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--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-31 .elementor-element.elementor-element-b696511{--padding-top:15px;--padding-bottom:15px;--padding-left:15px;--padding-right:15px;}.elementor-31 .elementor-element.elementor-element-d322efb{--padding-top:15px;--padding-bottom:15px;--padding-left:15px;--padding-right:15px;}.elementor-31 .elementor-element.elementor-element-582f76b{--n-menu-title-distance-from-content:0px;--n-menu-title-space-between:0px;--n-menu-dropdown-indicator-space:3px;--n-menu-toggle-icon-distance-from-dropdown:39px;}}@media(max-width:767px){.elementor-31 .elementor-element.elementor-element-263e32d{--width:50%;}.elementor-31 .elementor-element.elementor-element-48e0ba6{--width:40%;--justify-content:flex-end;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-31 .elementor-element.elementor-element-ac65511{--gap:30px 30px;--row-gap:30px;--column-gap:30px;}.elementor-31 .elementor-element.elementor-element-582f76b{--n-menu-heading-justify-content:center;--n-menu-title-flex-grow:initial;--n-menu-title-justify-content:initial;--n-menu-title-justify-content-mobile:center;--n-menu-toggle-align:center;}}@media(min-width:768px){.elementor-31 .elementor-element.elementor-element-f952e4d{--content-width:1440px;}.elementor-31 .elementor-element.elementor-element-263e32d{--width:25%;}.elementor-31 .elementor-element.elementor-element-48e0ba6{--width:50%;}.elementor-31 .elementor-element.elementor-element-b696511{--content-width:82%;}.elementor-31 .elementor-element.elementor-element-d322efb{--content-width:82%;}.elementor-31 .elementor-element.elementor-element-d717626{--width:25%;}}@media(max-width:1024px) and (min-width:768px){.elementor-31 .elementor-element.elementor-element-263e32d{--width:50%;}.elementor-31 .elementor-element.elementor-element-48e0ba6{--width:25%;}}/* Start custom CSS for button, class: .elementor-element-5bb13a2 *//* 1) Permite animar el ángulo del degradado */
@property --beam-angle {
  syntax: "<angle>";
  initial-value: 315deg;   /* arranca arriba-izquierda */
  inherits: false;
}

/* 2) El botón: contexto para el haz */
#hero-cta {
  position: relative;
  z-index: 0;
  overflow: visible;
}

/* 3) El haz recortado al borde (anillo de 2px) */
#hero-cta::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: 999px;               /* ← sigue la redondez del botón */
  padding: 2px;                        /* grosor del haz */
  background: conic-gradient(
    from var(--beam-angle),
    #ffffff 0deg,                      /* cabeza del cometa */
    rgba(255,255,255,0.55) 25deg,      /* estela */
    rgba(255,255,255,0) 70deg,         /* se apaga */
    transparent 360deg
  );
  -webkit-mask:
    linear-gradient(#fff 0 0) content-box,
    linear-gradient(#fff 0 0);
          mask:
    linear-gradient(#fff 0 0) content-box,
    linear-gradient(#fff 0 0);
  -webkit-mask-composite: xor;
          mask-composite: exclude;
  filter: drop-shadow(0 0 5px rgba(255,255,255,0.9));  /* brillo */
  opacity: 0;
  transition: opacity .2s ease;
  pointer-events: none;
}

/* 4) Al pasar el cursor: UNA vuelta y desaparece */
#hero-cta:hover::before {
  animation: hero-cta-beam 1.2s linear;   /* sin "infinite" = una vez */
}

@keyframes hero-cta-beam {
  0%   { --beam-angle: 315deg; opacity: 0; }
  12%  { opacity: 1; }
  88%  { opacity: 1; }
  100% { --beam-angle: 675deg; opacity: 0; }  /* 315 + 360 = vuelta completa */
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-b696511 *//* ============================================================
   CIBERGY · MEGAMENÚ — servicios (columna)
   ============================================================ */

/* ---- Cada servicio (Icon Box) ---- */
.cbg-svc{
  position:relative;
  border-radius:9px;
  padding:12px 16px !important;               /* ← respiración del hover */
  transition:background .35s ease, transform .4s cubic-bezier(.22,1,.36,1);
}
.cbg-svc .elementor-icon-box-wrapper{
  display:flex !important;
  align-items:flex-start !important;
  gap:15px;
  text-align:left !important;
}
.cbg-svc .elementor-icon-box-icon{
  margin:0 !important;
}

/* Barra de acento a la izquierda (más grande y centrada) */
.cbg-svc::before{
  content:"";
  position:absolute;
  left:0; top:50%;
  width:3px; height:64%;
  border-radius:3px;
  background:#7B93F0;
  transform:translateY(-50%) scaleY(0);
  transform-origin:center;
  transition:transform .4s cubic-bezier(.22,1,.36,1);
}

/* ---- Caja del icono ---- */
.cbg-svc .elementor-icon{
  width:34px !important;
  height:34px !important;
  border-radius:8px;
  display:grid !important;
  place-items:center;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.10);
  transition:background .35s ease, border-color .35s ease;
}
.cbg-svc .elementor-icon svg{
  width:17px !important;
  height:17px !important;
  stroke:#7B93F0;
  transition:stroke .35s ease;
}

/* ---- Textos ---- */
.cbg-svc .elementor-icon-box-title,
.cbg-svc .elementor-icon-box-title *{
  font-size:14.5px !important;
  font-weight:500 !important;
  line-height:1.3 !important;
  color:rgba(255,255,255,.92) !important;
  margin:0 0 3px 0 !important;
}
.cbg-svc .elementor-icon-box-description{
  font-size:12.5px !important;
  line-height:1.4 !important;
  color:rgba(255,255,255,.48) !important;
  transition:color .35s ease;
}

/* ---- Estado HOVER del servicio ---- */
.cbg-svc:hover{
  background:rgba(255,255,255,.05);
  transform:translateX(6px);
}
.cbg-svc:hover::before{ transform:translateY(-50%) scaleY(1); }
.cbg-svc:hover .elementor-icon{
  background:#3B5BD9;
  border-color:#3B5BD9;
}
.cbg-svc:hover .elementor-icon svg{ stroke:#fff; }
.cbg-svc:hover .elementor-icon-box-description{ color:rgba(255,255,255,.68); }

/* ---- Botón "All ..." del pie ---- */
.cbg-all .elementor-button{
  background:transparent !important;
  padding:0 !important;
  color:rgba(255,255,255,.75) !important;
  font-size:12.5px !important;
  text-transform:uppercase;
  letter-spacing:.14em;
  transition:color .3s ease;
}
.cbg-all .elementor-button:hover{ color:#fff !important; }
.cbg-all .elementor-button-icon{
  transition:transform .45s cubic-bezier(.22,1,.36,1);
}
.cbg-all .elementor-button:hover .elementor-button-icon{ transform:translateX(7px); }/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-e278906 *//* 1) Permite animar el ángulo del degradado */
@property --beam-angle {
  syntax: "<angle>";
  initial-value: 315deg;   /* arranca arriba-izquierda */
  inherits: false;
}

/* 2) El botón: contexto para el haz */
#hero-cta {
  position: relative;
  z-index: 0;
  overflow: visible;
}

/* 3) El haz recortado al borde (anillo de 2px) */
#hero-cta::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: 999px;               /* ← sigue la redondez del botón */
  padding: 2px;                        /* grosor del haz */
  background: conic-gradient(
    from var(--beam-angle),
    #ffffff 0deg,                      /* cabeza del cometa */
    rgba(255,255,255,0.55) 25deg,      /* estela */
    rgba(255,255,255,0) 70deg,         /* se apaga */
    transparent 360deg
  );
  -webkit-mask:
    linear-gradient(#fff 0 0) content-box,
    linear-gradient(#fff 0 0);
          mask:
    linear-gradient(#fff 0 0) content-box,
    linear-gradient(#fff 0 0);
  -webkit-mask-composite: xor;
          mask-composite: exclude;
  filter: drop-shadow(0 0 5px rgba(255,255,255,0.9));  /* brillo */
  opacity: 0;
  transition: opacity .2s ease;
  pointer-events: none;
}

/* 4) Al pasar el cursor: UNA vuelta y desaparece */
#hero-cta:hover::before {
  animation: hero-cta-beam 1.2s linear;   /* sin "infinite" = una vez */
}

@keyframes hero-cta-beam {
  0%   { --beam-angle: 315deg; opacity: 0; }
  12%  { opacity: 1; }
  88%  { opacity: 1; }
  100% { --beam-angle: 675deg; opacity: 0; }  /* 315 + 360 = vuelta completa */
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-d322efb *//* ============================================================
   CIBERGY · MEGAMENÚ — servicios (columna)
   ============================================================ */

/* ---- Cada servicio (Icon Box) ---- */
.cbg-svc{
  position:relative;
  border-radius:9px;
  padding:12px 16px !important;               /* ← respiración del hover */
  transition:background .35s ease, transform .4s cubic-bezier(.22,1,.36,1);
}
.cbg-svc .elementor-icon-box-wrapper{
  display:flex !important;
  align-items:flex-start !important;
  gap:15px;
  text-align:left !important;
}
.cbg-svc .elementor-icon-box-icon{
  margin:0 !important;
}

/* Barra de acento a la izquierda (más grande y centrada) */
.cbg-svc::before{
  content:"";
  position:absolute;
  left:0; top:50%;
  width:3px; height:64%;
  border-radius:3px;
  background:#7B93F0;
  transform:translateY(-50%) scaleY(0);
  transform-origin:center;
  transition:transform .4s cubic-bezier(.22,1,.36,1);
}

/* ---- Caja del icono ---- */
.cbg-svc .elementor-icon{
  width:34px !important;
  height:34px !important;
  border-radius:8px;
  display:grid !important;
  place-items:center;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.10);
  transition:background .35s ease, border-color .35s ease;
}
.cbg-svc .elementor-icon svg{
  width:17px !important;
  height:17px !important;
  stroke:#7B93F0;
  transition:stroke .35s ease;
}

/* ---- Textos ---- */
.cbg-svc .elementor-icon-box-title,
.cbg-svc .elementor-icon-box-title *{
  font-size:14.5px !important;
  font-weight:500 !important;
  line-height:1.3 !important;
  color:rgba(255,255,255,.92) !important;
  margin:0 0 3px 0 !important;
}
.cbg-svc .elementor-icon-box-description{
  font-size:12.5px !important;
  line-height:1.4 !important;
  color:rgba(255,255,255,.48) !important;
  transition:color .35s ease;
}

/* ---- Estado HOVER del servicio ---- */
.cbg-svc:hover{
  background:rgba(255,255,255,.05);
  transform:translateX(6px);
}
.cbg-svc:hover::before{ transform:translateY(-50%) scaleY(1); }
.cbg-svc:hover .elementor-icon{
  background:#3B5BD9;
  border-color:#3B5BD9;
}
.cbg-svc:hover .elementor-icon svg{ stroke:#fff; }
.cbg-svc:hover .elementor-icon-box-description{ color:rgba(255,255,255,.68); }

/* ---- Botón "All ..." del pie ---- */
.cbg-all .elementor-button{
  background:transparent !important;
  padding:0 !important;
  color:rgba(255,255,255,.75) !important;
  font-size:12.5px !important;
  text-transform:uppercase;
  letter-spacing:.14em;
  transition:color .3s ease;
}
.cbg-all .elementor-button:hover{ color:#fff !important; }
.cbg-all .elementor-button-icon{
  transition:transform .45s cubic-bezier(.22,1,.36,1);
}
.cbg-all .elementor-button:hover .elementor-button-icon{ transform:translateX(7px); }/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-ac65511 *//* ===== CIBERGY · Megamenú — fondo del panel ===== */
.cbg-mega{
  background:
    radial-gradient(90% 120% at 15% 0%, rgba(59,91,217,.30) 0%, transparent 55%),
    radial-gradient(70% 100% at 88% 100%, rgba(123,147,240,.18) 0%, transparent 60%),
    linear-gradient(170deg,#0E1249 0%,#080B33 55%,#05071F 100%) !important;
  border-top:1px solid rgba(123,147,240,.28) !important;
  box-shadow:0 30px 60px -20px rgba(5,7,31,.55) !important;
}

/* Padding interior del panel */
.cbg-mega{
  padding:44px 32px 36px !important;
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-5bb13a2 *//* 1) Permite animar el ángulo del degradado */
@property --beam-angle {
  syntax: "<angle>";
  initial-value: 315deg;   /* arranca arriba-izquierda */
  inherits: false;
}

/* 2) El botón: contexto para el haz */
#hero-cta {
  position: relative;
  z-index: 0;
  overflow: visible;
}

/* 3) El haz recortado al borde (anillo de 2px) */
#hero-cta::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: 999px;               /* ← sigue la redondez del botón */
  padding: 2px;                        /* grosor del haz */
  background: conic-gradient(
    from var(--beam-angle),
    #ffffff 0deg,                      /* cabeza del cometa */
    rgba(255,255,255,0.55) 25deg,      /* estela */
    rgba(255,255,255,0) 70deg,         /* se apaga */
    transparent 360deg
  );
  -webkit-mask:
    linear-gradient(#fff 0 0) content-box,
    linear-gradient(#fff 0 0);
          mask:
    linear-gradient(#fff 0 0) content-box,
    linear-gradient(#fff 0 0);
  -webkit-mask-composite: xor;
          mask-composite: exclude;
  filter: drop-shadow(0 0 5px rgba(255,255,255,0.9));  /* brillo */
  opacity: 0;
  transition: opacity .2s ease;
  pointer-events: none;
}

/* 4) Al pasar el cursor: UNA vuelta y desaparece */
#hero-cta:hover::before {
  animation: hero-cta-beam 1.2s linear;   /* sin "infinite" = una vez */
}

@keyframes hero-cta-beam {
  0%   { --beam-angle: 315deg; opacity: 0; }
  12%  { opacity: 1; }
  88%  { opacity: 1; }
  100% { --beam-angle: 675deg; opacity: 0; }  /* 315 + 360 = vuelta completa */
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-b696511 *//* ============================================================
   CIBERGY · MEGAMENÚ — servicios (columna)
   ============================================================ */

/* ---- Cada servicio (Icon Box) ---- */
.cbg-svc{
  position:relative;
  border-radius:9px;
  padding:12px 16px !important;               /* ← respiración del hover */
  transition:background .35s ease, transform .4s cubic-bezier(.22,1,.36,1);
}
.cbg-svc .elementor-icon-box-wrapper{
  display:flex !important;
  align-items:flex-start !important;
  gap:15px;
  text-align:left !important;
}
.cbg-svc .elementor-icon-box-icon{
  margin:0 !important;
}

/* Barra de acento a la izquierda (más grande y centrada) */
.cbg-svc::before{
  content:"";
  position:absolute;
  left:0; top:50%;
  width:3px; height:64%;
  border-radius:3px;
  background:#7B93F0;
  transform:translateY(-50%) scaleY(0);
  transform-origin:center;
  transition:transform .4s cubic-bezier(.22,1,.36,1);
}

/* ---- Caja del icono ---- */
.cbg-svc .elementor-icon{
  width:34px !important;
  height:34px !important;
  border-radius:8px;
  display:grid !important;
  place-items:center;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.10);
  transition:background .35s ease, border-color .35s ease;
}
.cbg-svc .elementor-icon svg{
  width:17px !important;
  height:17px !important;
  stroke:#7B93F0;
  transition:stroke .35s ease;
}

/* ---- Textos ---- */
.cbg-svc .elementor-icon-box-title,
.cbg-svc .elementor-icon-box-title *{
  font-size:14.5px !important;
  font-weight:500 !important;
  line-height:1.3 !important;
  color:rgba(255,255,255,.92) !important;
  margin:0 0 3px 0 !important;
}
.cbg-svc .elementor-icon-box-description{
  font-size:12.5px !important;
  line-height:1.4 !important;
  color:rgba(255,255,255,.48) !important;
  transition:color .35s ease;
}

/* ---- Estado HOVER del servicio ---- */
.cbg-svc:hover{
  background:rgba(255,255,255,.05);
  transform:translateX(6px);
}
.cbg-svc:hover::before{ transform:translateY(-50%) scaleY(1); }
.cbg-svc:hover .elementor-icon{
  background:#3B5BD9;
  border-color:#3B5BD9;
}
.cbg-svc:hover .elementor-icon svg{ stroke:#fff; }
.cbg-svc:hover .elementor-icon-box-description{ color:rgba(255,255,255,.68); }

/* ---- Botón "All ..." del pie ---- */
.cbg-all .elementor-button{
  background:transparent !important;
  padding:0 !important;
  color:rgba(255,255,255,.75) !important;
  font-size:12.5px !important;
  text-transform:uppercase;
  letter-spacing:.14em;
  transition:color .3s ease;
}
.cbg-all .elementor-button:hover{ color:#fff !important; }
.cbg-all .elementor-button-icon{
  transition:transform .45s cubic-bezier(.22,1,.36,1);
}
.cbg-all .elementor-button:hover .elementor-button-icon{ transform:translateX(7px); }/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-e278906 *//* 1) Permite animar el ángulo del degradado */
@property --beam-angle {
  syntax: "<angle>";
  initial-value: 315deg;   /* arranca arriba-izquierda */
  inherits: false;
}

/* 2) El botón: contexto para el haz */
#hero-cta {
  position: relative;
  z-index: 0;
  overflow: visible;
}

/* 3) El haz recortado al borde (anillo de 2px) */
#hero-cta::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: 999px;               /* ← sigue la redondez del botón */
  padding: 2px;                        /* grosor del haz */
  background: conic-gradient(
    from var(--beam-angle),
    #ffffff 0deg,                      /* cabeza del cometa */
    rgba(255,255,255,0.55) 25deg,      /* estela */
    rgba(255,255,255,0) 70deg,         /* se apaga */
    transparent 360deg
  );
  -webkit-mask:
    linear-gradient(#fff 0 0) content-box,
    linear-gradient(#fff 0 0);
          mask:
    linear-gradient(#fff 0 0) content-box,
    linear-gradient(#fff 0 0);
  -webkit-mask-composite: xor;
          mask-composite: exclude;
  filter: drop-shadow(0 0 5px rgba(255,255,255,0.9));  /* brillo */
  opacity: 0;
  transition: opacity .2s ease;
  pointer-events: none;
}

/* 4) Al pasar el cursor: UNA vuelta y desaparece */
#hero-cta:hover::before {
  animation: hero-cta-beam 1.2s linear;   /* sin "infinite" = una vez */
}

@keyframes hero-cta-beam {
  0%   { --beam-angle: 315deg; opacity: 0; }
  12%  { opacity: 1; }
  88%  { opacity: 1; }
  100% { --beam-angle: 675deg; opacity: 0; }  /* 315 + 360 = vuelta completa */
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-d322efb *//* ============================================================
   CIBERGY · MEGAMENÚ — servicios (columna)
   ============================================================ */

/* ---- Cada servicio (Icon Box) ---- */
.cbg-svc{
  position:relative;
  border-radius:9px;
  padding:12px 16px !important;               /* ← respiración del hover */
  transition:background .35s ease, transform .4s cubic-bezier(.22,1,.36,1);
}
.cbg-svc .elementor-icon-box-wrapper{
  display:flex !important;
  align-items:flex-start !important;
  gap:15px;
  text-align:left !important;
}
.cbg-svc .elementor-icon-box-icon{
  margin:0 !important;
}

/* Barra de acento a la izquierda (más grande y centrada) */
.cbg-svc::before{
  content:"";
  position:absolute;
  left:0; top:50%;
  width:3px; height:64%;
  border-radius:3px;
  background:#7B93F0;
  transform:translateY(-50%) scaleY(0);
  transform-origin:center;
  transition:transform .4s cubic-bezier(.22,1,.36,1);
}

/* ---- Caja del icono ---- */
.cbg-svc .elementor-icon{
  width:34px !important;
  height:34px !important;
  border-radius:8px;
  display:grid !important;
  place-items:center;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.10);
  transition:background .35s ease, border-color .35s ease;
}
.cbg-svc .elementor-icon svg{
  width:17px !important;
  height:17px !important;
  stroke:#7B93F0;
  transition:stroke .35s ease;
}

/* ---- Textos ---- */
.cbg-svc .elementor-icon-box-title,
.cbg-svc .elementor-icon-box-title *{
  font-size:14.5px !important;
  font-weight:500 !important;
  line-height:1.3 !important;
  color:rgba(255,255,255,.92) !important;
  margin:0 0 3px 0 !important;
}
.cbg-svc .elementor-icon-box-description{
  font-size:12.5px !important;
  line-height:1.4 !important;
  color:rgba(255,255,255,.48) !important;
  transition:color .35s ease;
}

/* ---- Estado HOVER del servicio ---- */
.cbg-svc:hover{
  background:rgba(255,255,255,.05);
  transform:translateX(6px);
}
.cbg-svc:hover::before{ transform:translateY(-50%) scaleY(1); }
.cbg-svc:hover .elementor-icon{
  background:#3B5BD9;
  border-color:#3B5BD9;
}
.cbg-svc:hover .elementor-icon svg{ stroke:#fff; }
.cbg-svc:hover .elementor-icon-box-description{ color:rgba(255,255,255,.68); }

/* ---- Botón "All ..." del pie ---- */
.cbg-all .elementor-button{
  background:transparent !important;
  padding:0 !important;
  color:rgba(255,255,255,.75) !important;
  font-size:12.5px !important;
  text-transform:uppercase;
  letter-spacing:.14em;
  transition:color .3s ease;
}
.cbg-all .elementor-button:hover{ color:#fff !important; }
.cbg-all .elementor-button-icon{
  transition:transform .45s cubic-bezier(.22,1,.36,1);
}
.cbg-all .elementor-button:hover .elementor-button-icon{ transform:translateX(7px); }/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-ac65511 *//* ===== CIBERGY · Megamenú — fondo del panel ===== */
.cbg-mega{
  background:
    radial-gradient(90% 120% at 15% 0%, rgba(59,91,217,.30) 0%, transparent 55%),
    radial-gradient(70% 100% at 88% 100%, rgba(123,147,240,.18) 0%, transparent 60%),
    linear-gradient(170deg,#0E1249 0%,#080B33 55%,#05071F 100%) !important;
  border-top:1px solid rgba(123,147,240,.28) !important;
  box-shadow:0 30px 60px -20px rgba(5,7,31,.55) !important;
}

/* Padding interior del panel */
.cbg-mega{
  padding:44px 32px 36px !important;
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-5bb13a2 *//* 1) Permite animar el ángulo del degradado */
@property --beam-angle {
  syntax: "<angle>";
  initial-value: 315deg;   /* arranca arriba-izquierda */
  inherits: false;
}

/* 2) El botón: contexto para el haz */
#hero-cta {
  position: relative;
  z-index: 0;
  overflow: visible;
}

/* 3) El haz recortado al borde (anillo de 2px) */
#hero-cta::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: 999px;               /* ← sigue la redondez del botón */
  padding: 2px;                        /* grosor del haz */
  background: conic-gradient(
    from var(--beam-angle),
    #ffffff 0deg,                      /* cabeza del cometa */
    rgba(255,255,255,0.55) 25deg,      /* estela */
    rgba(255,255,255,0) 70deg,         /* se apaga */
    transparent 360deg
  );
  -webkit-mask:
    linear-gradient(#fff 0 0) content-box,
    linear-gradient(#fff 0 0);
          mask:
    linear-gradient(#fff 0 0) content-box,
    linear-gradient(#fff 0 0);
  -webkit-mask-composite: xor;
          mask-composite: exclude;
  filter: drop-shadow(0 0 5px rgba(255,255,255,0.9));  /* brillo */
  opacity: 0;
  transition: opacity .2s ease;
  pointer-events: none;
}

/* 4) Al pasar el cursor: UNA vuelta y desaparece */
#hero-cta:hover::before {
  animation: hero-cta-beam 1.2s linear;   /* sin "infinite" = una vez */
}

@keyframes hero-cta-beam {
  0%   { --beam-angle: 315deg; opacity: 0; }
  12%  { opacity: 1; }
  88%  { opacity: 1; }
  100% { --beam-angle: 675deg; opacity: 0; }  /* 315 + 360 = vuelta completa */
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-b696511 *//* ============================================================
   CIBERGY · MEGAMENÚ — servicios (columna)
   ============================================================ */

/* ---- Cada servicio (Icon Box) ---- */
.cbg-svc{
  position:relative;
  border-radius:9px;
  padding:12px 16px !important;               /* ← respiración del hover */
  transition:background .35s ease, transform .4s cubic-bezier(.22,1,.36,1);
}
.cbg-svc .elementor-icon-box-wrapper{
  display:flex !important;
  align-items:flex-start !important;
  gap:15px;
  text-align:left !important;
}
.cbg-svc .elementor-icon-box-icon{
  margin:0 !important;
}

/* Barra de acento a la izquierda (más grande y centrada) */
.cbg-svc::before{
  content:"";
  position:absolute;
  left:0; top:50%;
  width:3px; height:64%;
  border-radius:3px;
  background:#7B93F0;
  transform:translateY(-50%) scaleY(0);
  transform-origin:center;
  transition:transform .4s cubic-bezier(.22,1,.36,1);
}

/* ---- Caja del icono ---- */
.cbg-svc .elementor-icon{
  width:34px !important;
  height:34px !important;
  border-radius:8px;
  display:grid !important;
  place-items:center;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.10);
  transition:background .35s ease, border-color .35s ease;
}
.cbg-svc .elementor-icon svg{
  width:17px !important;
  height:17px !important;
  stroke:#7B93F0;
  transition:stroke .35s ease;
}

/* ---- Textos ---- */
.cbg-svc .elementor-icon-box-title,
.cbg-svc .elementor-icon-box-title *{
  font-size:14.5px !important;
  font-weight:500 !important;
  line-height:1.3 !important;
  color:rgba(255,255,255,.92) !important;
  margin:0 0 3px 0 !important;
}
.cbg-svc .elementor-icon-box-description{
  font-size:12.5px !important;
  line-height:1.4 !important;
  color:rgba(255,255,255,.48) !important;
  transition:color .35s ease;
}

/* ---- Estado HOVER del servicio ---- */
.cbg-svc:hover{
  background:rgba(255,255,255,.05);
  transform:translateX(6px);
}
.cbg-svc:hover::before{ transform:translateY(-50%) scaleY(1); }
.cbg-svc:hover .elementor-icon{
  background:#3B5BD9;
  border-color:#3B5BD9;
}
.cbg-svc:hover .elementor-icon svg{ stroke:#fff; }
.cbg-svc:hover .elementor-icon-box-description{ color:rgba(255,255,255,.68); }

/* ---- Botón "All ..." del pie ---- */
.cbg-all .elementor-button{
  background:transparent !important;
  padding:0 !important;
  color:rgba(255,255,255,.75) !important;
  font-size:12.5px !important;
  text-transform:uppercase;
  letter-spacing:.14em;
  transition:color .3s ease;
}
.cbg-all .elementor-button:hover{ color:#fff !important; }
.cbg-all .elementor-button-icon{
  transition:transform .45s cubic-bezier(.22,1,.36,1);
}
.cbg-all .elementor-button:hover .elementor-button-icon{ transform:translateX(7px); }/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-e278906 *//* 1) Permite animar el ángulo del degradado */
@property --beam-angle {
  syntax: "<angle>";
  initial-value: 315deg;   /* arranca arriba-izquierda */
  inherits: false;
}

/* 2) El botón: contexto para el haz */
#hero-cta {
  position: relative;
  z-index: 0;
  overflow: visible;
}

/* 3) El haz recortado al borde (anillo de 2px) */
#hero-cta::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: 999px;               /* ← sigue la redondez del botón */
  padding: 2px;                        /* grosor del haz */
  background: conic-gradient(
    from var(--beam-angle),
    #ffffff 0deg,                      /* cabeza del cometa */
    rgba(255,255,255,0.55) 25deg,      /* estela */
    rgba(255,255,255,0) 70deg,         /* se apaga */
    transparent 360deg
  );
  -webkit-mask:
    linear-gradient(#fff 0 0) content-box,
    linear-gradient(#fff 0 0);
          mask:
    linear-gradient(#fff 0 0) content-box,
    linear-gradient(#fff 0 0);
  -webkit-mask-composite: xor;
          mask-composite: exclude;
  filter: drop-shadow(0 0 5px rgba(255,255,255,0.9));  /* brillo */
  opacity: 0;
  transition: opacity .2s ease;
  pointer-events: none;
}

/* 4) Al pasar el cursor: UNA vuelta y desaparece */
#hero-cta:hover::before {
  animation: hero-cta-beam 1.2s linear;   /* sin "infinite" = una vez */
}

@keyframes hero-cta-beam {
  0%   { --beam-angle: 315deg; opacity: 0; }
  12%  { opacity: 1; }
  88%  { opacity: 1; }
  100% { --beam-angle: 675deg; opacity: 0; }  /* 315 + 360 = vuelta completa */
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-d322efb *//* ============================================================
   CIBERGY · MEGAMENÚ — servicios (columna)
   ============================================================ */

/* ---- Cada servicio (Icon Box) ---- */
.cbg-svc{
  position:relative;
  border-radius:9px;
  padding:12px 16px !important;               /* ← respiración del hover */
  transition:background .35s ease, transform .4s cubic-bezier(.22,1,.36,1);
}
.cbg-svc .elementor-icon-box-wrapper{
  display:flex !important;
  align-items:flex-start !important;
  gap:15px;
  text-align:left !important;
}
.cbg-svc .elementor-icon-box-icon{
  margin:0 !important;
}

/* Barra de acento a la izquierda (más grande y centrada) */
.cbg-svc::before{
  content:"";
  position:absolute;
  left:0; top:50%;
  width:3px; height:64%;
  border-radius:3px;
  background:#7B93F0;
  transform:translateY(-50%) scaleY(0);
  transform-origin:center;
  transition:transform .4s cubic-bezier(.22,1,.36,1);
}

/* ---- Caja del icono ---- */
.cbg-svc .elementor-icon{
  width:34px !important;
  height:34px !important;
  border-radius:8px;
  display:grid !important;
  place-items:center;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.10);
  transition:background .35s ease, border-color .35s ease;
}
.cbg-svc .elementor-icon svg{
  width:17px !important;
  height:17px !important;
  stroke:#7B93F0;
  transition:stroke .35s ease;
}

/* ---- Textos ---- */
.cbg-svc .elementor-icon-box-title,
.cbg-svc .elementor-icon-box-title *{
  font-size:14.5px !important;
  font-weight:500 !important;
  line-height:1.3 !important;
  color:rgba(255,255,255,.92) !important;
  margin:0 0 3px 0 !important;
}
.cbg-svc .elementor-icon-box-description{
  font-size:12.5px !important;
  line-height:1.4 !important;
  color:rgba(255,255,255,.48) !important;
  transition:color .35s ease;
}

/* ---- Estado HOVER del servicio ---- */
.cbg-svc:hover{
  background:rgba(255,255,255,.05);
  transform:translateX(6px);
}
.cbg-svc:hover::before{ transform:translateY(-50%) scaleY(1); }
.cbg-svc:hover .elementor-icon{
  background:#3B5BD9;
  border-color:#3B5BD9;
}
.cbg-svc:hover .elementor-icon svg{ stroke:#fff; }
.cbg-svc:hover .elementor-icon-box-description{ color:rgba(255,255,255,.68); }

/* ---- Botón "All ..." del pie ---- */
.cbg-all .elementor-button{
  background:transparent !important;
  padding:0 !important;
  color:rgba(255,255,255,.75) !important;
  font-size:12.5px !important;
  text-transform:uppercase;
  letter-spacing:.14em;
  transition:color .3s ease;
}
.cbg-all .elementor-button:hover{ color:#fff !important; }
.cbg-all .elementor-button-icon{
  transition:transform .45s cubic-bezier(.22,1,.36,1);
}
.cbg-all .elementor-button:hover .elementor-button-icon{ transform:translateX(7px); }/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-ac65511 *//* ===== CIBERGY · Megamenú — fondo del panel ===== */
.cbg-mega{
  background:
    radial-gradient(90% 120% at 15% 0%, rgba(59,91,217,.30) 0%, transparent 55%),
    radial-gradient(70% 100% at 88% 100%, rgba(123,147,240,.18) 0%, transparent 60%),
    linear-gradient(170deg,#0E1249 0%,#080B33 55%,#05071F 100%) !important;
  border-top:1px solid rgba(123,147,240,.28) !important;
  box-shadow:0 30px 60px -20px rgba(5,7,31,.55) !important;
}

/* Padding interior del panel */
.cbg-mega{
  padding:44px 32px 36px !important;
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-5bb13a2 *//* 1) Permite animar el ángulo del degradado */
@property --beam-angle {
  syntax: "<angle>";
  initial-value: 315deg;   /* arranca arriba-izquierda */
  inherits: false;
}

/* 2) El botón: contexto para el haz */
#hero-cta {
  position: relative;
  z-index: 0;
  overflow: visible;
}

/* 3) El haz recortado al borde (anillo de 2px) */
#hero-cta::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: 999px;               /* ← sigue la redondez del botón */
  padding: 2px;                        /* grosor del haz */
  background: conic-gradient(
    from var(--beam-angle),
    #ffffff 0deg,                      /* cabeza del cometa */
    rgba(255,255,255,0.55) 25deg,      /* estela */
    rgba(255,255,255,0) 70deg,         /* se apaga */
    transparent 360deg
  );
  -webkit-mask:
    linear-gradient(#fff 0 0) content-box,
    linear-gradient(#fff 0 0);
          mask:
    linear-gradient(#fff 0 0) content-box,
    linear-gradient(#fff 0 0);
  -webkit-mask-composite: xor;
          mask-composite: exclude;
  filter: drop-shadow(0 0 5px rgba(255,255,255,0.9));  /* brillo */
  opacity: 0;
  transition: opacity .2s ease;
  pointer-events: none;
}

/* 4) Al pasar el cursor: UNA vuelta y desaparece */
#hero-cta:hover::before {
  animation: hero-cta-beam 1.2s linear;   /* sin "infinite" = una vez */
}

@keyframes hero-cta-beam {
  0%   { --beam-angle: 315deg; opacity: 0; }
  12%  { opacity: 1; }
  88%  { opacity: 1; }
  100% { --beam-angle: 675deg; opacity: 0; }  /* 315 + 360 = vuelta completa */
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-b696511 *//* ============================================================
   CIBERGY · MEGAMENÚ — servicios (columna)
   ============================================================ */

/* ---- Cada servicio (Icon Box) ---- */
.cbg-svc{
  position:relative;
  border-radius:9px;
  padding:12px 16px !important;               /* ← respiración del hover */
  transition:background .35s ease, transform .4s cubic-bezier(.22,1,.36,1);
}
.cbg-svc .elementor-icon-box-wrapper{
  display:flex !important;
  align-items:flex-start !important;
  gap:15px;
  text-align:left !important;
}
.cbg-svc .elementor-icon-box-icon{
  margin:0 !important;
}

/* Barra de acento a la izquierda (más grande y centrada) */
.cbg-svc::before{
  content:"";
  position:absolute;
  left:0; top:50%;
  width:3px; height:64%;
  border-radius:3px;
  background:#7B93F0;
  transform:translateY(-50%) scaleY(0);
  transform-origin:center;
  transition:transform .4s cubic-bezier(.22,1,.36,1);
}

/* ---- Caja del icono ---- */
.cbg-svc .elementor-icon{
  width:34px !important;
  height:34px !important;
  border-radius:8px;
  display:grid !important;
  place-items:center;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.10);
  transition:background .35s ease, border-color .35s ease;
}
.cbg-svc .elementor-icon svg{
  width:17px !important;
  height:17px !important;
  stroke:#7B93F0;
  transition:stroke .35s ease;
}

/* ---- Textos ---- */
.cbg-svc .elementor-icon-box-title,
.cbg-svc .elementor-icon-box-title *{
  font-size:14.5px !important;
  font-weight:500 !important;
  line-height:1.3 !important;
  color:rgba(255,255,255,.92) !important;
  margin:0 0 3px 0 !important;
}
.cbg-svc .elementor-icon-box-description{
  font-size:12.5px !important;
  line-height:1.4 !important;
  color:rgba(255,255,255,.48) !important;
  transition:color .35s ease;
}

/* ---- Estado HOVER del servicio ---- */
.cbg-svc:hover{
  background:rgba(255,255,255,.05);
  transform:translateX(6px);
}
.cbg-svc:hover::before{ transform:translateY(-50%) scaleY(1); }
.cbg-svc:hover .elementor-icon{
  background:#3B5BD9;
  border-color:#3B5BD9;
}
.cbg-svc:hover .elementor-icon svg{ stroke:#fff; }
.cbg-svc:hover .elementor-icon-box-description{ color:rgba(255,255,255,.68); }

/* ---- Botón "All ..." del pie ---- */
.cbg-all .elementor-button{
  background:transparent !important;
  padding:0 !important;
  color:rgba(255,255,255,.75) !important;
  font-size:12.5px !important;
  text-transform:uppercase;
  letter-spacing:.14em;
  transition:color .3s ease;
}
.cbg-all .elementor-button:hover{ color:#fff !important; }
.cbg-all .elementor-button-icon{
  transition:transform .45s cubic-bezier(.22,1,.36,1);
}
.cbg-all .elementor-button:hover .elementor-button-icon{ transform:translateX(7px); }/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-e278906 *//* 1) Permite animar el ángulo del degradado */
@property --beam-angle {
  syntax: "<angle>";
  initial-value: 315deg;   /* arranca arriba-izquierda */
  inherits: false;
}

/* 2) El botón: contexto para el haz */
#hero-cta {
  position: relative;
  z-index: 0;
  overflow: visible;
}

/* 3) El haz recortado al borde (anillo de 2px) */
#hero-cta::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: 999px;               /* ← sigue la redondez del botón */
  padding: 2px;                        /* grosor del haz */
  background: conic-gradient(
    from var(--beam-angle),
    #ffffff 0deg,                      /* cabeza del cometa */
    rgba(255,255,255,0.55) 25deg,      /* estela */
    rgba(255,255,255,0) 70deg,         /* se apaga */
    transparent 360deg
  );
  -webkit-mask:
    linear-gradient(#fff 0 0) content-box,
    linear-gradient(#fff 0 0);
          mask:
    linear-gradient(#fff 0 0) content-box,
    linear-gradient(#fff 0 0);
  -webkit-mask-composite: xor;
          mask-composite: exclude;
  filter: drop-shadow(0 0 5px rgba(255,255,255,0.9));  /* brillo */
  opacity: 0;
  transition: opacity .2s ease;
  pointer-events: none;
}

/* 4) Al pasar el cursor: UNA vuelta y desaparece */
#hero-cta:hover::before {
  animation: hero-cta-beam 1.2s linear;   /* sin "infinite" = una vez */
}

@keyframes hero-cta-beam {
  0%   { --beam-angle: 315deg; opacity: 0; }
  12%  { opacity: 1; }
  88%  { opacity: 1; }
  100% { --beam-angle: 675deg; opacity: 0; }  /* 315 + 360 = vuelta completa */
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-d322efb *//* ============================================================
   CIBERGY · MEGAMENÚ — servicios (columna)
   ============================================================ */

/* ---- Cada servicio (Icon Box) ---- */
.cbg-svc{
  position:relative;
  border-radius:9px;
  padding:12px 16px !important;               /* ← respiración del hover */
  transition:background .35s ease, transform .4s cubic-bezier(.22,1,.36,1);
}
.cbg-svc .elementor-icon-box-wrapper{
  display:flex !important;
  align-items:flex-start !important;
  gap:15px;
  text-align:left !important;
}
.cbg-svc .elementor-icon-box-icon{
  margin:0 !important;
}

/* Barra de acento a la izquierda (más grande y centrada) */
.cbg-svc::before{
  content:"";
  position:absolute;
  left:0; top:50%;
  width:3px; height:64%;
  border-radius:3px;
  background:#7B93F0;
  transform:translateY(-50%) scaleY(0);
  transform-origin:center;
  transition:transform .4s cubic-bezier(.22,1,.36,1);
}

/* ---- Caja del icono ---- */
.cbg-svc .elementor-icon{
  width:34px !important;
  height:34px !important;
  border-radius:8px;
  display:grid !important;
  place-items:center;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.10);
  transition:background .35s ease, border-color .35s ease;
}
.cbg-svc .elementor-icon svg{
  width:17px !important;
  height:17px !important;
  stroke:#7B93F0;
  transition:stroke .35s ease;
}

/* ---- Textos ---- */
.cbg-svc .elementor-icon-box-title,
.cbg-svc .elementor-icon-box-title *{
  font-size:14.5px !important;
  font-weight:500 !important;
  line-height:1.3 !important;
  color:rgba(255,255,255,.92) !important;
  margin:0 0 3px 0 !important;
}
.cbg-svc .elementor-icon-box-description{
  font-size:12.5px !important;
  line-height:1.4 !important;
  color:rgba(255,255,255,.48) !important;
  transition:color .35s ease;
}

/* ---- Estado HOVER del servicio ---- */
.cbg-svc:hover{
  background:rgba(255,255,255,.05);
  transform:translateX(6px);
}
.cbg-svc:hover::before{ transform:translateY(-50%) scaleY(1); }
.cbg-svc:hover .elementor-icon{
  background:#3B5BD9;
  border-color:#3B5BD9;
}
.cbg-svc:hover .elementor-icon svg{ stroke:#fff; }
.cbg-svc:hover .elementor-icon-box-description{ color:rgba(255,255,255,.68); }

/* ---- Botón "All ..." del pie ---- */
.cbg-all .elementor-button{
  background:transparent !important;
  padding:0 !important;
  color:rgba(255,255,255,.75) !important;
  font-size:12.5px !important;
  text-transform:uppercase;
  letter-spacing:.14em;
  transition:color .3s ease;
}
.cbg-all .elementor-button:hover{ color:#fff !important; }
.cbg-all .elementor-button-icon{
  transition:transform .45s cubic-bezier(.22,1,.36,1);
}
.cbg-all .elementor-button:hover .elementor-button-icon{ transform:translateX(7px); }/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-ac65511 *//* ===== CIBERGY · Megamenú — fondo del panel ===== */
.cbg-mega{
  background:
    radial-gradient(90% 120% at 15% 0%, rgba(59,91,217,.30) 0%, transparent 55%),
    radial-gradient(70% 100% at 88% 100%, rgba(123,147,240,.18) 0%, transparent 60%),
    linear-gradient(170deg,#0E1249 0%,#080B33 55%,#05071F 100%) !important;
  border-top:1px solid rgba(123,147,240,.28) !important;
  box-shadow:0 30px 60px -20px rgba(5,7,31,.55) !important;
}

/* Padding interior del panel */
.cbg-mega{
  padding:44px 32px 36px !important;
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-5bb13a2 *//* 1) Permite animar el ángulo del degradado */
@property --beam-angle {
  syntax: "<angle>";
  initial-value: 315deg;   /* arranca arriba-izquierda */
  inherits: false;
}

/* 2) El botón: contexto para el haz */
#hero-cta {
  position: relative;
  z-index: 0;
  overflow: visible;
}

/* 3) El haz recortado al borde (anillo de 2px) */
#hero-cta::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: 999px;               /* ← sigue la redondez del botón */
  padding: 2px;                        /* grosor del haz */
  background: conic-gradient(
    from var(--beam-angle),
    #ffffff 0deg,                      /* cabeza del cometa */
    rgba(255,255,255,0.55) 25deg,      /* estela */
    rgba(255,255,255,0) 70deg,         /* se apaga */
    transparent 360deg
  );
  -webkit-mask:
    linear-gradient(#fff 0 0) content-box,
    linear-gradient(#fff 0 0);
          mask:
    linear-gradient(#fff 0 0) content-box,
    linear-gradient(#fff 0 0);
  -webkit-mask-composite: xor;
          mask-composite: exclude;
  filter: drop-shadow(0 0 5px rgba(255,255,255,0.9));  /* brillo */
  opacity: 0;
  transition: opacity .2s ease;
  pointer-events: none;
}

/* 4) Al pasar el cursor: UNA vuelta y desaparece */
#hero-cta:hover::before {
  animation: hero-cta-beam 1.2s linear;   /* sin "infinite" = una vez */
}

@keyframes hero-cta-beam {
  0%   { --beam-angle: 315deg; opacity: 0; }
  12%  { opacity: 1; }
  88%  { opacity: 1; }
  100% { --beam-angle: 675deg; opacity: 0; }  /* 315 + 360 = vuelta completa */
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-b696511 *//* ============================================================
   CIBERGY · MEGAMENÚ — servicios (columna)
   ============================================================ */

/* ---- Cada servicio (Icon Box) ---- */
.cbg-svc{
  position:relative;
  border-radius:9px;
  padding:12px 16px !important;               /* ← respiración del hover */
  transition:background .35s ease, transform .4s cubic-bezier(.22,1,.36,1);
}
.cbg-svc .elementor-icon-box-wrapper{
  display:flex !important;
  align-items:flex-start !important;
  gap:15px;
  text-align:left !important;
}
.cbg-svc .elementor-icon-box-icon{
  margin:0 !important;
}

/* Barra de acento a la izquierda (más grande y centrada) */
.cbg-svc::before{
  content:"";
  position:absolute;
  left:0; top:50%;
  width:3px; height:64%;
  border-radius:3px;
  background:#7B93F0;
  transform:translateY(-50%) scaleY(0);
  transform-origin:center;
  transition:transform .4s cubic-bezier(.22,1,.36,1);
}

/* ---- Caja del icono ---- */
.cbg-svc .elementor-icon{
  width:34px !important;
  height:34px !important;
  border-radius:8px;
  display:grid !important;
  place-items:center;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.10);
  transition:background .35s ease, border-color .35s ease;
}
.cbg-svc .elementor-icon svg{
  width:17px !important;
  height:17px !important;
  stroke:#7B93F0;
  transition:stroke .35s ease;
}

/* ---- Textos ---- */
.cbg-svc .elementor-icon-box-title,
.cbg-svc .elementor-icon-box-title *{
  font-size:14.5px !important;
  font-weight:500 !important;
  line-height:1.3 !important;
  color:rgba(255,255,255,.92) !important;
  margin:0 0 3px 0 !important;
}
.cbg-svc .elementor-icon-box-description{
  font-size:12.5px !important;
  line-height:1.4 !important;
  color:rgba(255,255,255,.48) !important;
  transition:color .35s ease;
}

/* ---- Estado HOVER del servicio ---- */
.cbg-svc:hover{
  background:rgba(255,255,255,.05);
  transform:translateX(6px);
}
.cbg-svc:hover::before{ transform:translateY(-50%) scaleY(1); }
.cbg-svc:hover .elementor-icon{
  background:#3B5BD9;
  border-color:#3B5BD9;
}
.cbg-svc:hover .elementor-icon svg{ stroke:#fff; }
.cbg-svc:hover .elementor-icon-box-description{ color:rgba(255,255,255,.68); }

/* ---- Botón "All ..." del pie ---- */
.cbg-all .elementor-button{
  background:transparent !important;
  padding:0 !important;
  color:rgba(255,255,255,.75) !important;
  font-size:12.5px !important;
  text-transform:uppercase;
  letter-spacing:.14em;
  transition:color .3s ease;
}
.cbg-all .elementor-button:hover{ color:#fff !important; }
.cbg-all .elementor-button-icon{
  transition:transform .45s cubic-bezier(.22,1,.36,1);
}
.cbg-all .elementor-button:hover .elementor-button-icon{ transform:translateX(7px); }/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-e278906 *//* 1) Permite animar el ángulo del degradado */
@property --beam-angle {
  syntax: "<angle>";
  initial-value: 315deg;   /* arranca arriba-izquierda */
  inherits: false;
}

/* 2) El botón: contexto para el haz */
#hero-cta {
  position: relative;
  z-index: 0;
  overflow: visible;
}

/* 3) El haz recortado al borde (anillo de 2px) */
#hero-cta::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: 999px;               /* ← sigue la redondez del botón */
  padding: 2px;                        /* grosor del haz */
  background: conic-gradient(
    from var(--beam-angle),
    #ffffff 0deg,                      /* cabeza del cometa */
    rgba(255,255,255,0.55) 25deg,      /* estela */
    rgba(255,255,255,0) 70deg,         /* se apaga */
    transparent 360deg
  );
  -webkit-mask:
    linear-gradient(#fff 0 0) content-box,
    linear-gradient(#fff 0 0);
          mask:
    linear-gradient(#fff 0 0) content-box,
    linear-gradient(#fff 0 0);
  -webkit-mask-composite: xor;
          mask-composite: exclude;
  filter: drop-shadow(0 0 5px rgba(255,255,255,0.9));  /* brillo */
  opacity: 0;
  transition: opacity .2s ease;
  pointer-events: none;
}

/* 4) Al pasar el cursor: UNA vuelta y desaparece */
#hero-cta:hover::before {
  animation: hero-cta-beam 1.2s linear;   /* sin "infinite" = una vez */
}

@keyframes hero-cta-beam {
  0%   { --beam-angle: 315deg; opacity: 0; }
  12%  { opacity: 1; }
  88%  { opacity: 1; }
  100% { --beam-angle: 675deg; opacity: 0; }  /* 315 + 360 = vuelta completa */
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-d322efb *//* ============================================================
   CIBERGY · MEGAMENÚ — servicios (columna)
   ============================================================ */

/* ---- Cada servicio (Icon Box) ---- */
.cbg-svc{
  position:relative;
  border-radius:9px;
  padding:12px 16px !important;               /* ← respiración del hover */
  transition:background .35s ease, transform .4s cubic-bezier(.22,1,.36,1);
}
.cbg-svc .elementor-icon-box-wrapper{
  display:flex !important;
  align-items:flex-start !important;
  gap:15px;
  text-align:left !important;
}
.cbg-svc .elementor-icon-box-icon{
  margin:0 !important;
}

/* Barra de acento a la izquierda (más grande y centrada) */
.cbg-svc::before{
  content:"";
  position:absolute;
  left:0; top:50%;
  width:3px; height:64%;
  border-radius:3px;
  background:#7B93F0;
  transform:translateY(-50%) scaleY(0);
  transform-origin:center;
  transition:transform .4s cubic-bezier(.22,1,.36,1);
}

/* ---- Caja del icono ---- */
.cbg-svc .elementor-icon{
  width:34px !important;
  height:34px !important;
  border-radius:8px;
  display:grid !important;
  place-items:center;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.10);
  transition:background .35s ease, border-color .35s ease;
}
.cbg-svc .elementor-icon svg{
  width:17px !important;
  height:17px !important;
  stroke:#7B93F0;
  transition:stroke .35s ease;
}

/* ---- Textos ---- */
.cbg-svc .elementor-icon-box-title,
.cbg-svc .elementor-icon-box-title *{
  font-size:14.5px !important;
  font-weight:500 !important;
  line-height:1.3 !important;
  color:rgba(255,255,255,.92) !important;
  margin:0 0 3px 0 !important;
}
.cbg-svc .elementor-icon-box-description{
  font-size:12.5px !important;
  line-height:1.4 !important;
  color:rgba(255,255,255,.48) !important;
  transition:color .35s ease;
}

/* ---- Estado HOVER del servicio ---- */
.cbg-svc:hover{
  background:rgba(255,255,255,.05);
  transform:translateX(6px);
}
.cbg-svc:hover::before{ transform:translateY(-50%) scaleY(1); }
.cbg-svc:hover .elementor-icon{
  background:#3B5BD9;
  border-color:#3B5BD9;
}
.cbg-svc:hover .elementor-icon svg{ stroke:#fff; }
.cbg-svc:hover .elementor-icon-box-description{ color:rgba(255,255,255,.68); }

/* ---- Botón "All ..." del pie ---- */
.cbg-all .elementor-button{
  background:transparent !important;
  padding:0 !important;
  color:rgba(255,255,255,.75) !important;
  font-size:12.5px !important;
  text-transform:uppercase;
  letter-spacing:.14em;
  transition:color .3s ease;
}
.cbg-all .elementor-button:hover{ color:#fff !important; }
.cbg-all .elementor-button-icon{
  transition:transform .45s cubic-bezier(.22,1,.36,1);
}
.cbg-all .elementor-button:hover .elementor-button-icon{ transform:translateX(7px); }/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-ac65511 *//* ===== CIBERGY · Megamenú — fondo del panel ===== */
.cbg-mega{
  background:
    radial-gradient(90% 120% at 15% 0%, rgba(59,91,217,.30) 0%, transparent 55%),
    radial-gradient(70% 100% at 88% 100%, rgba(123,147,240,.18) 0%, transparent 60%),
    linear-gradient(170deg,#0E1249 0%,#080B33 55%,#05071F 100%) !important;
  border-top:1px solid rgba(123,147,240,.28) !important;
  box-shadow:0 30px 60px -20px rgba(5,7,31,.55) !important;
}

/* Padding interior del panel */
.cbg-mega{
  padding:44px 32px 36px !important;
}/* End custom CSS */
/* Start custom CSS for mega-menu, class: .elementor-element-582f76b *//* La flecha del megamenú gira al abrir */
.elementor-nav-menu .elementor-menu-toggle,
.cbg-mega{ /* no tocar, referencia */ }/* End custom CSS */
/* Start custom CSS for jet-mobile-menu, class: .elementor-element-e474342 *//* ============================================================
   CIBERGY — MENÚ MÓVIL (JetMenu · widget "Mobile Menu")
   v1 (07/09/2026)
   ⚠️ El fondo va en `__container-inner`, NO en `__container`:
   el widget pinta el inner de blanco y tapa el degradado.
   ⚠️ Los SVG necesitan el fill en `svg` Y en `svg path`.
   ============================================================ */

/* ---------- Hamburguesa en la cabecera ---------- */
.jet-mobile-menu__toggle{
  padding:6px !important;
}
.jet-mobile-menu__toggle .jet-mobile-menu__toggle-icon svg,
.jet-mobile-menu__toggle .jet-mobile-menu__toggle-icon svg path{
  width:24px !important;
  height:24px !important;
  fill:#0D17AC !important;
  transition:opacity .25s ease;
}
.jet-mobile-menu__toggle:active .jet-mobile-menu__toggle-icon svg{ opacity:.6; }

/* ---------- Velo sobre la página ---------- */
.jet-mobile-menu-cover{
  background:rgba(5,7,31,.66) !important;
  backdrop-filter:blur(3px);
  -webkit-backdrop-filter:blur(3px);
}

/* ---------- El panel ---------- */
.jet-mobile-menu__container{
  width:min(87vw,360px) !important;
  max-width:none !important;
  background:#05071F !important;
  box-shadow:0 0 60px rgba(0,0,0,.55) !important;
  border-right:1px solid rgba(255,255,255,.08);
}
.jet-mobile-menu__container-inner{
  background:
    radial-gradient(120% 60% at 0% 0%, rgba(59,91,217,.42) 0%, transparent 58%),
    linear-gradient(180deg,#0E1249 0%,#080B33 45%,#05071F 100%) !important;
  padding:20px 26px 40px !important;
  display:flex !important;
  flex-direction:column;
}

/* Haz de luz superior, el mismo gesto que en Practice Areas */
.jet-mobile-menu__container::before{
  content:"";
  position:absolute;
  top:0; left:0;
  width:100%; height:2px;
  z-index:3;
  background:linear-gradient(90deg,#fff,rgba(123,147,240,.6),transparent);
}

/* ---------- Fila superior: rótulo + aspa ---------- */
.jet-mobile-menu__controls{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  min-height:52px;
  margin-bottom:14px !important;
  border-bottom:1px solid rgba(255,255,255,.10);
  padding-bottom:18px !important;
}

/* Rótulo "Menu" cuando NO estamos dentro de un submenú */
.jet-mobile-menu__controls:not(:has(.jet-mobile-menu__breadcrumbs))::before{
  content:"Menu";
  font-family:"Albert Sans", sans-serif;
  font-size:11px;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:rgba(255,255,255,.42);
}

/* Aspa / volver */
.jet-mobile-menu__back{
  width:40px !important;
  height:40px !important;
  display:flex !important;
  align-items:center;
  justify-content:center;
  margin-left:auto !important;
  border:1px solid rgba(255,255,255,.18);
  border-radius:50%;
  transition:border-color .25s ease, background .25s ease;
}
.jet-mobile-menu__back:active{
  background:rgba(123,147,240,.14);
  border-color:#7B93F0;
}
.jet-mobile-menu__back svg,
.jet-mobile-menu__back svg path{
  width:15px !important;
  height:15px !important;
  fill:#FFFFFF !important;
  color:#FFFFFF !important;
}

/* Miga de pan del submenú */
.jet-mobile-menu__breadcrumbs{
  display:flex !important;
  align-items:center;
  gap:6px;
  min-width:0;
}
.jet-mobile-menu__breadcrumb .breadcrumb-label,
.jet-mobile-menu__breadcrumb{
  font-family:"Albert Sans", sans-serif !important;
  font-size:11px !important;
  letter-spacing:.18em !important;
  text-transform:uppercase !important;
  color:#7B93F0 !important;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}

/* ---------- Lista ---------- */
.jet-mobile-menu__items{
  margin:0 !important;
  padding:0 !important;
  list-style:none !important;
}
.jet-mobile-menu__item{
  padding:0 !important;
}
.jet-mobile-menu__item + .jet-mobile-menu__item{
  border-top:1px solid rgba(255,255,255,.10);
}
.jet-mobile-menu__item-inner{
  display:flex !important;
  align-items:center !important;
  gap:10px;
  padding:0 !important;
}
.jet-mobile-menu__item .mobile-link{
  padding:17px 0 !important;
  background:transparent !important;
  transition:padding-left .3s ease, color .25s ease;
}
.jet-mobile-menu__item .jet-menu-label{
  font-family:"Albert Sans", sans-serif !important;
  font-size:19px !important;
  font-weight:400 !important;
  line-height:1.3 !important;
  letter-spacing:.005em;
  color:#F4F5FA !important;
}
.jet-mobile-menu__item .mobile-link:active{ padding-left:8px !important; }
.jet-mobile-menu__item .mobile-link:active .jet-menu-label{ color:#7B93F0 !important; }

/* Página actual */
.jet-mobile-menu__item--active > .jet-mobile-menu__item-inner .jet-menu-label,
.current-menu-item > .jet-mobile-menu__item-inner .jet-menu-label{
  color:#7B93F0 !important;
}

/* Segundo nivel: un punto más discreto */
.jet-mobile-menu__item .mobile-sub-level-link .jet-menu-label{
  font-size:16px !important;
  color:rgba(244,245,250,.82) !important;
}

/* Flecha de submenú */
.jet-dropdown-arrow{
  width:30px !important;
  height:30px !important;
  display:flex !important;
  align-items:center;
  justify-content:center;
  flex:0 0 30px;
  border-radius:50%;
  background:rgba(255,255,255,.06);
  transition:background .25s ease;
}
.jet-dropdown-arrow svg,
.jet-dropdown-arrow svg path{
  width:11px !important;
  height:11px !important;
  fill:#7B93F0 !important;
  color:#7B93F0 !important;
}
.jet-mobile-menu__item-inner:active .jet-dropdown-arrow{
  background:rgba(123,147,240,.20);
}

/* ---------- Entrada escalonada al abrir ---------- */
@keyframes cbgMenuIn{
  from{ opacity:0; transform:translateX(-14px); }
  to  { opacity:1; transform:none; }
}
body.jet-mobile-menu-visible .jet-mobile-menu__item{
  animation:cbgMenuIn .45s cubic-bezier(.22,1,.36,1) both;
}
body.jet-mobile-menu-visible .jet-mobile-menu__item:nth-child(1){ animation-delay:.06s }
body.jet-mobile-menu-visible .jet-mobile-menu__item:nth-child(2){ animation-delay:.12s }
body.jet-mobile-menu-visible .jet-mobile-menu__item:nth-child(3){ animation-delay:.18s }
body.jet-mobile-menu-visible .jet-mobile-menu__item:nth-child(4){ animation-delay:.24s }
body.jet-mobile-menu-visible .jet-mobile-menu__item:nth-child(5){ animation-delay:.30s }
body.jet-mobile-menu-visible .jet-mobile-menu__item:nth-child(n+6){ animation-delay:.36s }

@media (prefers-reduced-motion:reduce){
  body.jet-mobile-menu-visible .jet-mobile-menu__item{ animation:none; }
}/* End custom CSS */