/* Exclusivo de la pagina corporativa Roydisa (536). */
.elementor.elementor-536 { gap: 0 !important; color: #344150; }
.elementor-536 .e-con,
.elementor-536 .elementor-widget { min-width: 0; }
.elementor-536 > .e-con { width: 100% !important; max-width: none !important; margin: 0 !important; }
.elementor-536 > .e-con > .e-con-inner { width: 100% !important; max-width: 1200px !important; padding: 0 !important; }
.elementor-536 .elementor-invisible { visibility: visible !important; }
.elementor-536 .elementor-heading-title { color: #172333 !important; line-height: 1.2 !important; }
.elementor-536 .elementor-widget-text-editor { font-size: 17px; line-height: 1.75; color: #52606d; }
.elementor-536 .elementor-widget-text-editor p:last-child { margin-bottom: 0; }
.elementor-536 .elementor-widget-button .elementor-button {
    padding: 13px 22px !important; border-radius: 7px !important;
    background: #c90000 !important; color: #fff !important; border: 1px solid #c90000;
    font-size: 16px !important; font-weight: 600; text-transform: none; letter-spacing: 0;
}
.elementor-536 .elementor-widget-button .elementor-button:hover { background: #a00000 !important; }
.elementor-536 .elementor-button:focus-visible { outline: 2px solid #172333; outline-offset: 4px; }

/* Cabecera y marcas, con la misma escala de las paginas interiores actuales. */
.elementor-536 .elementor-element-4a5a306,
.elementor-536 .elementor-element-11ca65d {
    min-height: 170px !important; --min-height: 170px; background-color: #172333 !important;
}
.elementor-536 .elementor-element-11ca65d {
    padding: 40px 24px !important; background-blend-mode: luminosity;
}
.elementor-536 .elementor-element-11ca65d::before { background: #172333 !important; opacity: .6 !important; }
.elementor-536 .elementor-element-5abf660 { width: 100% !important; max-width: 1200px !important; margin: 0 auto !important; padding: 0 !important; }
.elementor-536 .elementor-element-5abf660 > .e-con-inner { padding: 0 !important; }
.elementor-536 .elementor-element-6c0b9e4 .elementor-heading-title { color: #fff !important; font-size: 42px !important; }
.elementor-536 .elementor-element-6d8ea98 { padding: 24px !important; border-bottom: 1px solid #edf0f2; }
.elementor-536 .elementor-element-6d8ea98 > .e-con-inner { gap: 24px !important; align-items: center; }
.elementor-536 .elementor-element-845d89f { width: 130px !important; flex: 0 0 130px; }
.elementor-536 .elementor-element-845d89f .elementor-heading-title { font-size: 17px !important; }
.elementor-536 .elementor-element-c2cac65 { width: 100% !important; flex: 1; }
.elementor-536 .elementor-element-c2cac65 .swiper { min-width: 0; width: 100%; }
.elementor-536 .elementor-element-c2cac65 .swiper-slide-inner { height: 56px; display: flex; align-items: center; justify-content: center; }
.elementor-536 .elementor-element-c2cac65 img { max-width: 120px; max-height: 48px; width: auto; object-fit: contain; }

/* Presentacion: fotografias sin superposiciones y texto en una columna legible. */
.elementor-536 .elementor-element-e9f022b { min-height: 0 !important; --min-height: 0; padding: 56px 24px 40px !important; }
.elementor-536 .elementor-element-e9f022b > .e-con-inner {
    display: grid !important; grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr);
    gap: 48px !important; align-items: center !important;
}
.elementor-536 .elementor-element-4b1ff4b,
.elementor-536 .elementor-element-ee50e09 { width: 100% !important; padding: 0 !important; margin: 0 !important; }
.elementor-536 .elementor-element-4b1ff4b { gap: 16px !important; }
.elementor-536 .elementor-element-76bdc0d,
.elementor-536 .elementor-element-c0dc0a0 { position: static !important; inset: auto !important; transform: none !important; width: 100% !important; margin: 0 !important; }
.elementor-536 .elementor-element-c0dc0a0 { order: -1 !important; }
.elementor-536 .elementor-element-76bdc0d { max-width: 70% !important; align-self: flex-end !important; }
.elementor-536 :is(.elementor-element-76bdc0d, .elementor-element-c0dc0a0) img { display: block; width: 100% !important; height: auto !important; border-radius: 12px !important; }
.elementor-536 .elementor-element-ee50e09 { gap: 22px !important; }
.elementor-536 .elementor-element-0ed7e77 .elementor-heading-title { font-size: 34px !important; }
.elementor-536 .elementor-element-07814ad { width: 100% !important; }

/* Contadores originales: cifras protagonistas y etiquetas sin superposiciones. */
.elementor-536 .elementor-element-f4cde38 { padding: 0 24px 48px !important; }
.elementor-536 .elementor-element-f4cde38 > .e-con-inner { display: grid !important; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px !important; }
.elementor-536 :is(.elementor-element-7ccf899, .elementor-element-0ce93d5, .elementor-element-01aacc2) {
    width: 100% !important; padding: 28px 20px !important; gap: 10px !important;
    border: 0; background: transparent; text-align: center;
}
.elementor-536 .elementor-counter-number-wrapper { display: flex; gap: 4px; color: #c90000 !important; font-size: 64px !important; font-weight: 600; line-height: 1.1; justify-content: center; }
.elementor-536 .elementor-counter-number-wrapper > span { flex: 0 0 auto !important; }
.elementor-536 :is(.elementor-element-18e364b, .elementor-element-12d19a2, .elementor-element-6f0d17b) { position: static !important; inset: auto !important; transform: none !important; width: 100% !important; margin: 0 !important; }
.elementor-536 :is(.elementor-element-18e364b, .elementor-element-12d19a2, .elementor-element-6f0d17b) .elementor-heading-title { font-size: 17px !important; text-align: center; }

/* Distribucion y equipo: conservar la fotografia recortada con el simbolo Roydisa. */
.elementor-536 .elementor-element-3b4531d { padding: 48px 24px !important; background: #f8fafb; }
.elementor-536 .elementor-element-3b4531d > .e-con-inner { display: grid !important; grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr); gap: 48px !important; align-items: center; }
.elementor-536 .elementor-element-c06b9d1,
.elementor-536 .elementor-element-fa03668 { width: 100% !important; max-width: none !important; margin: 0 !important; }
.elementor-536 .elementor-element-fa03668 { order: 0 !important; }
.elementor-536 .elementor-element-fa03668 img { display: block; width: 100% !important; max-width: 500px; height: auto !important; aspect-ratio: 1; object-fit: cover; margin: 0 auto; }

/* Servicios: fotografias y descripciones siempre visibles, sin volteos. */
.elementor-536 .elementor-element-85e11a9 { min-height: 0 !important; --min-height: 0; padding: 56px 24px !important; background: #fff; }
.elementor-536 .elementor-element-f739f08 {
    width: 100% !important; max-width: 1200px !important; min-height: 0 !important;
    padding: 0 !important; gap: 12px !important; background: none !important;
}
.elementor-536 .elementor-element-f739f08::before { display: none !important; }
.elementor-536 .elementor-element-1fb5dae .elementor-heading-title { font-size: 16px !important; color: #c90000 !important; }
.elementor-536 .elementor-element-4ef7e94 .elementor-heading-title { font-size: 34px !important; }
.elementor-536 .elementor-element-84b367d { display: block !important; width: 100% !important; padding: 0 !important; margin: 16px 0 0 !important; }
.elementor-536 .elementor-element-e20ea00 {
    width: 100% !important; max-width: none !important; padding: 0 0 64px !important;
    --e-n-carousel-swiper-offset-size: 0px !important; --e-n-carousel-swiper-slides-gap: 24px !important;
}
.elementor-536 .elementor-element-e20ea00 .e-n-carousel { width: 100%; }
.elementor-536 .elementor-element-e20ea00 .swiper-slide { height: auto; }
.elementor-536 .elementor-element-e20ea00 .swiper-slide > .e-con,
.elementor-536 .elementor-widget-flip-box,
.elementor-536 .elementor-widget-flip-box > .elementor-widget-container { width: 100% !important; height: 100%; padding: 0 !important; }
.elementor-536 .elementor-flip-box {
    display: flex; flex-direction: column; height: 100% !important; min-height: 460px;
    border: 1px solid #e2e6ea; border-radius: 12px !important; overflow: hidden; background: #fff;
}
.elementor-536 .elementor-flip-box__layer { position: relative !important; inset: auto !important; width: 100% !important; transform: none !important; opacity: 1 !important; transition: none !important; border-radius: 0 !important; }
.elementor-536 .elementor-flip-box__front { flex: 0 0 210px; height: 210px !important; background-color: #172333; background-size: cover !important; background-position: center !important; }
.elementor-536 .elementor-flip-box__front .elementor-flip-box__layer__overlay { height: 100%; padding: 22px !important; align-items: flex-start !important; justify-content: flex-end !important; background: linear-gradient(transparent 25%, #172333dc) !important; }
.elementor-536 .elementor-flip-box__front .elementor-flip-box__layer__inner { width: 100% !important; transform: none !important; }
.elementor-536 .elementor-flip-box__front .elementor-icon-wrapper { display: none; }
.elementor-536 .elementor-flip-box__front .elementor-flip-box__layer__title { margin: 0 !important; color: #fff !important; font-size: 24px !important; line-height: 1.2 !important; text-align: left !important; }
.elementor-536 .elementor-flip-box__back { flex: 1; height: auto !important; background: #fff !important; color: #344150 !important; }
.elementor-536 .elementor-flip-box__back .elementor-flip-box__layer__overlay { height: 100%; padding: 22px !important; background: transparent !important; }
.elementor-536 .elementor-flip-box__back .elementor-flip-box__layer__inner { width: 100%; display: flex; flex-direction: column; align-items: flex-start; height: 100%; transform: none !important; text-align: left !important; }
.elementor-536 .elementor-flip-box__back .elementor-flip-box__layer__title { color: #172333 !important; font-size: 18px !important; line-height: 1.4 !important; margin: 0 0 12px !important; }
.elementor-536 .elementor-flip-box__layer__description { color: #52606d !important; font-size: 15px !important; line-height: 1.6 !important; }
.elementor-536 .elementor-flip-box__button { margin-top: auto; padding: 18px 0 0 !important; color: #c90000 !important; background: none !important; border: 0 !important; font-size: 15px !important; font-weight: 600; }
.elementor-536 .elementor-flip-box__back:focus-visible { outline: 2px solid #c90000; outline-offset: -4px; }
.elementor-536 .elementor-element-e20ea00 .swiper-pagination-fraction { bottom: 12px !important; color: #52606d; font-size: 14px; pointer-events: none; }
.elementor-536 .elementor-element-e20ea00 .elementor-swiper-button { top: auto !important; bottom: 0 !important; transform: none !important; }
.elementor-536 .elementor-element-e20ea00 .elementor-swiper-button-prev { left: calc(50% - 88px) !important; }
.elementor-536 .elementor-element-e20ea00 .elementor-swiper-button-next { right: calc(50% - 88px) !important; }

/* Capacidades: las cuatro tarjetas quedan visibles sin animacion de entrada. */
.elementor-536 .elementor-element-d2a9331 { padding: 48px 24px !important; background: #f8fafb; animation: none !important; transform: none !important; }
.elementor-536 .elementor-element-7cef70a { width: 100% !important; max-width: 1200px !important; margin: 0 auto !important; padding: 0 !important; }
.elementor-536 .elementor-element-7cef70a > .e-con-inner { width: 100% !important; max-width: none !important; padding: 0 !important; gap: 28px !important; }
.elementor-536 .elementor-element-39b0bb7 .elementor-heading-title { font-size: 34px !important; }
.elementor-536 .elementor-element-381e59f { display: grid !important; grid-template-columns: repeat(4, minmax(0, 1fr)); width: 100% !important; gap: 20px !important; padding: 0 !important; }
.elementor-536 .elementor-element-381e59f > .elementor-widget { width: 100% !important; padding: 24px 20px; border: 1px solid #e2e6ea; border-radius: 12px; background: #fff; }
.elementor-536 .elementor-image-box-img { width: 48px !important; margin: 0 auto 18px !important; }
.elementor-536 .elementor-image-box-img img { width: 48px !important; height: 48px !important; }
.elementor-536 .elementor-image-box-title { margin: 0 0 12px !important; font-size: 21px !important; line-height: 1.3; color: #172333 !important; }
.elementor-536 .elementor-image-box-description { color: #52606d !important; font-size: 15px !important; line-height: 1.65 !important; }

@media (max-width: 1023px) {
    .elementor-536 .elementor-element-e9f022b > .e-con-inner,
    .elementor-536 .elementor-element-3b4531d > .e-con-inner { gap: 28px !important; }
    .elementor-536 .elementor-element-381e59f { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 767px) {
    .elementor-536 .elementor-element-4a5a306,
    .elementor-536 .elementor-element-11ca65d { min-height: 128px !important; --min-height: 128px; }
    .elementor-536 .elementor-element-11ca65d { padding: 30px 20px !important; }
    .elementor-536 .elementor-element-6c0b9e4 .elementor-heading-title { font-size: 32px !important; }
    .elementor-536 .elementor-element-6d8ea98 { padding: 20px !important; }
    .elementor-536 .elementor-element-6d8ea98 > .e-con-inner { flex-direction: column !important; gap: 14px !important; }
    .elementor-536 .elementor-element-845d89f { width: 100% !important; flex-basis: auto; }
    .elementor-536 .elementor-element-c2cac65 { flex: none; }
    .elementor-536 .elementor-element-e9f022b { padding: 32px 20px !important; }
    .elementor-536 .elementor-element-e9f022b > .e-con-inner,
    .elementor-536 .elementor-element-3b4531d > .e-con-inner { grid-template-columns: minmax(0, 1fr); gap: 24px !important; }
    .elementor-536 .elementor-element-4b1ff4b { display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px !important; align-items: center; }
    .elementor-536 .elementor-element-76bdc0d { max-width: 100% !important; align-self: center !important; }
    .elementor-536 .elementor-widget-text-editor { font-size: 16px; line-height: 1.7; }
    .elementor-536 .elementor-element-0ed7e77 .elementor-heading-title,
    .elementor-536 .elementor-element-4ef7e94 .elementor-heading-title,
    .elementor-536 .elementor-element-39b0bb7 .elementor-heading-title { font-size: 28px !important; }
    .elementor-536 .elementor-element-f4cde38 { padding: 0 20px 32px !important; }
    .elementor-536 .elementor-element-f4cde38 > .e-con-inner { gap: 8px !important; }
    .elementor-536 :is(.elementor-element-7ccf899, .elementor-element-0ce93d5, .elementor-element-01aacc2) { padding: 20px 6px !important; }
    .elementor-536 .elementor-counter-number-wrapper { font-size: 34px !important; }
    .elementor-536 :is(.elementor-element-18e364b, .elementor-element-12d19a2, .elementor-element-6f0d17b) .elementor-heading-title { font-size: 13px !important; line-height: 1.4 !important; }
    .elementor-536 .elementor-element-3b4531d { padding: 32px 20px !important; }
    .elementor-536 .elementor-element-85e11a9 { padding: 36px 20px !important; }
    .elementor-536 .elementor-flip-box { min-height: 460px; }
    .elementor-536 .elementor-element-d2a9331 { padding: 36px 20px !important; }
    .elementor-536 .elementor-element-381e59f { grid-template-columns: minmax(0, 1fr); gap: 16px !important; }
    .elementor-536 .elementor-element-381e59f > .elementor-widget { padding: 24px; }
}
@media (prefers-reduced-motion: reduce) {
    .elementor-536 .elementor-flip-box__layer { transition: none !important; }
}
