.elementor-6746 .elementor-element.elementor-element-326c130{--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:flex-start;--gap:0px 20px;--row-gap:0px;--column-gap:20px;--padding-top:70px;--padding-bottom:70px;--padding-left:0px;--padding-right:0px;}.elementor-6746 .elementor-element.elementor-element-e3be9a9{--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;}.elementor-6746 .elementor-element.elementor-element-e3be9a9.e-con{--flex-grow:0;--flex-shrink:0;}.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-6746 .elementor-element.elementor-element-4e2e33a .elementor-heading-title{font-family:"Inter Tight", Sans-serif;font-size:60px;font-weight:600;line-height:60px;}.elementor-widget-text-editor{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-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-6746 .elementor-element.elementor-element-68bd9aa{font-family:"Inter Tight", Sans-serif;font-size:18px;font-weight:400;line-height:24px;color:var( --e-global-color-primary );}.elementor-6746 .elementor-element.elementor-element-e04946f.elementor-element{--flex-grow:0;--flex-shrink:0;}.elementor-6746 .elementor-element.elementor-element-7db51cd{--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;--justify-content:flex-start;}.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-6746 .elementor-element.elementor-element-0fbad9a img{width:100%;}.elementor-6746 .elementor-element.elementor-element-ad7fdda{--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;--padding-top:70px;--padding-bottom:70px;--padding-left:0px;--padding-right:0px;}.elementor-6746 .elementor-element.elementor-element-ad7fdda:not(.elementor-motion-effects-element-type-background), .elementor-6746 .elementor-element.elementor-element-ad7fdda > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F5F5F5;}.elementor-6746 .elementor-element.elementor-element-35e42e1{text-align:center;}.elementor-6746 .elementor-element.elementor-element-35e42e1 .elementor-heading-title{font-family:"Inter Tight", Sans-serif;font-size:52px;font-weight:600;line-height:60px;}.elementor-6746 .elementor-element.elementor-element-88a05f3{text-align:center;font-family:"Inter Tight", Sans-serif;font-size:18px;font-weight:400;line-height:24px;color:var( --e-global-color-primary );}.elementor-6746 .elementor-element.elementor-element-e3ba0db{--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;--padding-top:60px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-6746 .elementor-element.elementor-element-904e84b{text-align:center;}.elementor-6746 .elementor-element.elementor-element-904e84b .elementor-heading-title{font-family:"Inter Tight", Sans-serif;font-size:52px;font-weight:600;line-height:60px;}.elementor-6746 .elementor-element.elementor-element-3e4418f{text-align:center;font-family:"Inter Tight", Sans-serif;font-size:18px;font-weight:400;line-height:24px;color:var( --e-global-color-primary );}.elementor-6746 .elementor-element.elementor-element-4c7dc78{--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;--padding-top:0px;--padding-bottom:60px;--padding-left:0px;--padding-right:0px;}.elementor-6746 .elementor-element.elementor-element-876d3a0{--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;--padding-top:60px;--padding-bottom:60px;--padding-left:0px;--padding-right:0px;}.elementor-6746 .elementor-element.elementor-element-876d3a0:not(.elementor-motion-effects-element-type-background), .elementor-6746 .elementor-element.elementor-element-876d3a0 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#4A1162;}.elementor-6746 .elementor-element.elementor-element-e696b58{text-align:center;}.elementor-6746 .elementor-element.elementor-element-e696b58 .elementor-heading-title{font-family:"Inter Tight", Sans-serif;font-size:52px;font-weight:600;line-height:60px;color:#FFFFFF;}.elementor-6746 .elementor-element.elementor-element-66dfedc > .elementor-widget-container{padding:0px 260px 0px 260px;}.elementor-6746 .elementor-element.elementor-element-66dfedc{text-align:center;font-family:"Inter Tight", Sans-serif;font-size:18px;font-weight:400;line-height:24px;color:#FFFFFF;}:root{--page-title-display:none;}@media(max-width:1024px){.elementor-6746 .elementor-element.elementor-element-326c130{--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;}.elementor-6746 .elementor-element.elementor-element-4e2e33a{text-align:start;}.elementor-6746 .elementor-element.elementor-element-68bd9aa{text-align:start;}.elementor-6746 .elementor-element.elementor-element-e04946f{width:var( --container-widget-width, 740.694px );max-width:740.694px;--container-widget-width:740.694px;--container-widget-flex-grow:0;}.elementor-6746 .elementor-element.elementor-element-e04946f.elementor-element{--align-self:flex-start;}}@media(max-width:767px){.elementor-6746 .elementor-element.elementor-element-326c130{--padding-top:40px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-6746 .elementor-element.elementor-element-4e2e33a{text-align:center;}.elementor-6746 .elementor-element.elementor-element-4e2e33a .elementor-heading-title{font-size:42px;line-height:48px;}.elementor-6746 .elementor-element.elementor-element-68bd9aa{text-align:center;}.elementor-6746 .elementor-element.elementor-element-35e42e1 .elementor-heading-title{font-size:40px;line-height:42px;}.elementor-6746 .elementor-element.elementor-element-904e84b .elementor-heading-title{font-size:40px;line-height:42px;}.elementor-6746 .elementor-element.elementor-element-e696b58 .elementor-heading-title{font-size:40px;line-height:42px;}.elementor-6746 .elementor-element.elementor-element-66dfedc > .elementor-widget-container{padding:0px 140px 0px 140px;}}@media(min-width:768px){.elementor-6746 .elementor-element.elementor-element-326c130{--content-width:1220px;}.elementor-6746 .elementor-element.elementor-element-e3be9a9{--width:50%;}.elementor-6746 .elementor-element.elementor-element-7db51cd{--width:50%;}.elementor-6746 .elementor-element.elementor-element-876d3a0{--content-width:1220px;}}@media(max-width:1024px) and (min-width:768px){.elementor-6746 .elementor-element.elementor-element-e3be9a9{--width:100%;}.elementor-6746 .elementor-element.elementor-element-7db51cd{--width:100%;}}/* Start custom CSS for heading, class: .elementor-element-4e2e33a */h1 .h1-accent{
  color: #ED6A00;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-e04946f *//* =========================
   App buttons – TOP (Hero)
   ========================= */

.app-downloads-top{
  display: flex;
  gap: 16px;
  margin-top: 24px;
}

.app-downloads-top a{
  display: inline-block;
  transition: transform .25s ease;
}

.app-downloads-top a:hover{
  transform: translateY(-2px);
}

.app-downloads-top img{
  height: 56px;
  width: auto;
  display: block;
}

/* =========================
   App buttons TOP – MOBILE
   ========================= */
@media (max-width: 768px){
  .app-downloads-top{
    flex-direction: column;   /* uno debajo del otro */
    align-items: center;      /* centrados */
    justify-content: center;
    gap: 14px;
    margin-top: 28px;
  }

  .app-downloads-top img{
    height: 64px;             /* un poco más grandes en mobile */
  }
}/* End custom CSS */
/* Start custom CSS for image, class: .elementor-element-0fbad9a *//* ===============================
   TILT CARD – Inclinación lateral
   =============================== */

.tilt-card{
  transition: transform .35s ease;
  will-change: transform;
}

/* Inclinación hacia la derecha */
.tilt-card:hover{
  transform: rotate(3deg);
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-9c93cd2 *//* =========================
   Feature Cards – Portal
   ========================= */

.features-cards{
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 24px;
  margin-top: 40px;
}

.feature-card{
  background: #ffffff;
  border-radius: 20px;
  padding: 28px 24px;
  text-align: left;

  /* Blur / sombra morada suave */
  box-shadow:
    0 10px 30px rgba(90, 17, 96, 0.10);

  transition: transform .3s ease, box-shadow .3s ease;
}

.feature-card:hover{
  transform: translateY(-4px);
  box-shadow:
    0 14px 40px rgba(90, 17, 96, 0.14);
}

.feature-card img{
  width: 48px;
  height: auto;
  margin-bottom: 16px;
}

.feature-card h3{
  font-size: 20px;
  font-weight: 600;
  color: #5A1160;
  margin-bottom: 10px;
}

.feature-card p{
  font-size: 18px;
  line-height: 1.5;
  color: #4a4a4a;
}

/* =========================
   Responsive
   ========================= */

@media (max-width: 980px){
  .features-cards{
    grid-template-columns: 1fr;
    gap: 20px;
  }

  .feature-card{
    text-align: center;
  }

  .feature-card img{
    margin-left: auto;
    margin-right: auto;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-e5f10bc *//* =========================
   Recordatorio Importante
   ========================= */

.portal-reminder{
  background: #F7F4F9;
  border-radius: 26px;

  /* ✅ menos aire arriba/abajo */
  padding: 20px 40px;

  margin: 40px auto 0;
}

/* Contenido */
.portal-reminder__content{
  max-width: 1100px;
  margin: 0 auto;
  display: flex;
  align-items: center;
  gap: 28px;

  /* ✅ permite que la imagen “salga” del cuadro */
  overflow: visible;
}

/* =========================
   IMAGEN (más grande y sale)
   ========================= */

.portal-reminder__image{
  flex: 0 0 auto;
  position: relative;
  overflow: visible;
}

.portal-reminder__image img{
  width: 210px;   /* ✅ más grande */
  height: auto;
  display: block;

  border-radius: 0; /* tal cual la pasaste */
  object-fit: initial;

  /* ✅ sobresale del rectángulo (efecto 3D) */
  transform: translateY(-40px);

  filter: drop-shadow(0 18px 28px rgba(90,17,96,0.12));
}

/* =========================
   TEXTO
   ========================= */

.portal-reminder__text{
  flex: 1;
}

.portal-reminder__text h3{
  font-size: 18px;
  font-weight: 700;
  color: #5A1160;
  display: flex;
  align-items: center;
  gap: 10px;

  /* ✅ compactar */
  margin: 0 0 8px;
  line-height: 1.2;
}

.portal-reminder__text p{
  font-size: 18px;
  line-height: 1.4; /* ✅ menos alto para que no “infle” */
  color: #1E1E1E;
  margin: 0;
}

/* Icono más visible */
.portal-reminder__icon{
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

/* =========================
   MOBILE (estilo card vertical)
   ========================= */

@media (max-width: 768px){

  .portal-reminder{
    padding: 22px 18px;
    border-radius: 24px;
  }

  .portal-reminder__content{
    flex-direction: column;
    text-align: center;
    gap: 14px;
  }

  .portal-reminder__image img{
    width: 220px;
    transform: translateY(-10px); /* menos agresivo en mobile */
  }

  .portal-reminder__text h3{
    justify-content: center;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-01dba49 *//* =========================
   App buttons – BOTTOM
   ========================= */

.app-downloads-bottom{
  display: flex;
  justify-content: center;   /* 🔥 centrado en desktop */
  align-items: center;
  gap: 16px;
  margin-top: 32px;
}

.app-downloads-bottom a{
  display: inline-block;
  transition: transform .25s ease;
}

.app-downloads-bottom a:hover{
  transform: translateY(-2px);
}

.app-downloads-bottom img{
  height: 56px;
  width: auto;
  display: block;
}

/* Mobile */
@media (max-width: 768px){
  .app-downloads-bottom{
    flex-direction: column;  /* 🔥 uno debajo del otro */
    gap: 14px;
  }

  .app-downloads-bottom img{
    height: 64px;
  }
}/* End custom CSS */
/* Start custom CSS *//* =========================
   Steps Section
   ========================= */

.steps-section{
  display:flex;
  flex-direction:column;
  gap:80px;
  margin-top:60px;
}

/* Desktop layout 50/50 */
.step-row{
  display:grid;
  grid-template-columns:50% 50%;
  align-items:center;
  gap:60px;
}

.step-row.reverse{
  grid-template-columns:50% 50%;
}

/* Paso 3: sube un poco (desktop) */
.step-row--3{ margin-top:-40px; }

/* Texto */
.step-text{
  max-width:520px;
  position:relative;
}

.step-text h3{
  font-size:24px;
  font-weight:600;
  color:#5A1160;
  margin-bottom:12px;
}

.step-text p{
  font-size:18px;
  line-height:1.55;
  color:#1E1E1E;
}

/* =========================
   NÚMEROS
   ========================= */

.step-number{
  position:absolute;
  background:#ED6A00;
  color:#fff;
  font-weight:800;
  font-size:18px;
  width:44px;
  height:44px;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  z-index:3;
}

/* Paso 1 (card) */
.step-number--card{
  top:-22px;
  left:-22px;
}

/* Paso 2 desktop: arriba derecha dentro del media */
.step-number--top-right{
  top:-22px;
  right:-1px;
}

/* Paso 3 desktop: arriba izquierda dentro del media */
.step-number--top-left{
  top:-22px;
  left:-22px;
}

/* ✅ Por defecto:
   - mostramos desktop numbers
   - ocultamos mobile numbers
*/
.step-number--desktop{ display:flex; }
.step-number--mobile{ display:none; }

/* =========================
   PASO 1 (CARD QR)
   ========================= */

.step-card{
  position:relative;
  background:#fff;
  border-radius:20px;
  padding:32px;
  box-shadow:0 10px 30px rgba(90,17,96,0.10);
}

.qr-card{ text-align:center; }

.step-mini-title{
  font-size:16px;
  font-weight:600;
  margin-bottom:20px;
  color:#5A1160;
}

.qr-group{
  display:flex;
  justify-content:center;
  gap:24px;
  margin-bottom:16px;
}

.qr-group img{
  width:96px;
  height:auto;
  display:block;
}

.qr-group span{
  display:block;
  font-size:14px;
  margin-top:6px;
  color:#6a6a6a;
}

.step-note{
  font-size:14px;
  color:#6a6a6a;
}

/* =========================
   PASO 2 y 3 (MEDIA)
   ========================= */

.step-media{
  position:relative;
  display:flex;
  justify-content:center;
  align-items:center;
  padding:32px;
  overflow:visible;
}

/* Paso 2: más grande */
.step-media--2 .step-image{
  width:100%;
  max-width:460px;
  height:auto;
  display:block;
  filter:drop-shadow(0 18px 26px rgba(90,17,96,.14));
}

/* Paso 3: más pequeño + subido */
.step-media--3 .step-image{
  width:100%;
  max-width:260px;
  height:auto;
  display:block;
  transform:translateY(-18px);
  filter:drop-shadow(0 10px 18px rgba(90,17,96,.10));
}

/* =========================
   ✅ MOBILE: número arriba del título (2 y 3)
   ========================= */

@media (max-width:980px){

  .step-row,
  .step-row.reverse{
    grid-template-columns:1fr;
    gap:22px;
  }

  .step-row--3{ margin-top:0; }

  .step-text{
    max-width:none;
    text-align:center;
  }

  /* Orden: texto arriba / media abajo */
  .step-row > .step-text{ order:1; }
  .step-row > .step-card,
  .step-row > .step-media{ order:2; }

  /* Paso 1: card primero y texto después */
  .step-row:first-child > .step-card{ order:1; }
  .step-row:first-child > .step-text{ order:2; }

  /* (1) más arriba y centrado */
  .step-number--card{
    left:50% !important;
    top:-34px !important;
    transform:translateX(-50%);
  }

  /* ✅ Switch numbers:
     - ocultar desktop
     - mostrar mobile
  */
  .step-number--desktop{ display:none !important; }
  .step-number--mobile{
    display:flex !important;
    position:static !important;     /* entra en flujo */
    margin:0 auto 14px auto;        /* arriba del título */
    transform:none !important;
  }

  /* Media padding */
  .step-media{ padding:22px 18px; }

  .step-media--2 .step-image{ max-width:380px; }

  .step-media--3 .step-image{
    max-width:240px;
    transform:translateY(0);
  }
}/* End custom CSS */