/*
 * JP Financial — servicios-base.css
 * Base layer extracted intact from Additional CSS in Phase 6.
 */

/* Services-only footer/contact stacking moved out of the global responsive
 * layer in Phase 7. */
body.jp-site.jp-services-page .jp-contact-outer,
body.jp-site.jp-services-page .jp-contact-section,
body.jp-services-page .elementor-location-footer.jp-elementor-footer-fallback,
body.jp-services-page .elementor-location-footer.jp-elementor-footer-fallback .jp-footer-outer {
	background-color: #f5f4f0 !important;
	position: relative !important;
}

body.jp-services-page .elementor-location-footer.jp-elementor-footer-fallback,
body.jp-services-page .elementor-location-footer.jp-elementor-footer-fallback .jp-footer-outer {
	z-index: 40 !important;
}

/* 114: Servicios / services-hero */
.jp-services-page .elementor-element.jp-services-hero, .jp-services-page .elementor-element.jp-services-hero.elementor-section-stretched { position:relative; isolation:isolate; overflow:hidden; color:#fff; min-height:900px; width:100% !important; max-width:100% !important; left:0 !important; right:auto !important; margin-left:0 !important; margin-right:0 !important; padding:0 !important; box-sizing:border-box; }
.jp-services-page .elementor-element.jp-services-hero:before { content:""; position:absolute; inset:0; z-index:0; background:linear-gradient(90deg,rgba(0,0,0,.82) 0%,rgba(0,0,0,.55) 42%,rgba(0,0,0,.08) 100%); pointer-events:none; }
.jp-services-page .elementor-element.jp-services-hero > .elementor-container { position:relative; z-index:1; height:900px; min-height:900px; width:100% !important; max-width:none !important; margin:0 !important; padding:0 !important; align-items:center; }
.jp-services-page .elementor-element.jp-services-hero .jp-services-left, .jp-services-page .elementor-element.jp-services-hero .jp-services-right { height:900px; min-height:900px; }
.jp-services-page .elementor-element.jp-services-hero .jp-services-left > .elementor-widget-wrap { display:flex; flex-direction:row; flex-wrap:wrap; align-content:center; align-items:center; column-gap:16px; }
.jp-services-page .elementor-element.jp-services-hero .jp-services-kicker, .jp-services-page .elementor-element.jp-services-hero .jp-services-title, .jp-services-page .elementor-element.jp-services-hero .jp-services-copy { flex:0 0 100%; }
.jp-services-page .elementor-element.jp-services-hero .jp-services-title .elementor-heading-title { margin:0; }
.jp-services-page .elementor-element.jp-services-hero .jp-services-title em { color:#dafba2; font-style:italic; }
.jp-services-page .elementor-element.jp-services-hero .jp-services-copy { max-width:none; }
.jp-services-page .elementor-element.jp-services-hero .jp-services-copy .elementor-widget-container { max-width:700px; }
.jp-services-page .elementor-element.jp-services-hero .jp-services-copy p { margin:0; }
.jp-services-page .elementor-element.jp-services-hero .jp-services-kicker { text-transform:uppercase; }
.jp-services-page .elementor-element.jp-services-hero .jp-services-button { display:inline-block; flex:0 0 auto !important; width:auto !important; }
.jp-services-page .elementor-element.jp-services-hero .jp-services-button .elementor-button { min-height:58px; display:inline-flex; align-items:center; justify-content:center; transition:background-color .2s ease,color .2s ease,border-color .2s ease,transform .2s ease; }
.jp-services-page .elementor-element.jp-services-hero .jp-services-button .elementor-button:hover { transform:translateY(-1px); }
.jp-services-page .elementor-element.jp-services-hero .jp-services-right > .elementor-widget-wrap { display:flex; flex-direction:column; justify-content:center; align-items:stretch; align-content:center; gap:14px; height:100%; }
@media (min-width:921px) {
  .jp-services-page .elementor-element.jp-services-hero > .elementor-container > .jp-services-left { flex:0 0 66% !important; width:66% !important; max-width:66% !important; min-width:0; }
  .jp-services-page .elementor-element.jp-services-hero > .elementor-container > .jp-services-right { flex:0 0 34% !important; width:34% !important; max-width:34% !important; min-width:0; }
}
.jp-services-page .elementor-element.jp-services-hero .jp-services-right .elementor-inner-section, .jp-services-page .elementor-element.jp-services-hero .jp-services-link-row { width:100% !important; max-width:none !important; margin:0; }
.jp-services-page .elementor-element.jp-services-hero .jp-services-right .elementor-inner-section > .elementor-container, .jp-services-page .elementor-element.jp-services-hero .jp-services-link-row > .elementor-container { display:flex; align-items:center; justify-content:flex-end; width:100%; max-width:none; margin-left:0; margin-right:0; }
.jp-services-page .elementor-element.jp-services-hero .jp-services-link-title-col { width:auto !important; flex:0 0 auto; min-width:0; padding-right:16px; }
.jp-services-page .elementor-element.jp-services-hero .jp-services-link-number-col { width:58px !important; flex:0 0 58px; }
.jp-services-page .elementor-element.jp-services-hero .jp-services-link-title { width:auto; margin:0; }
.jp-services-page .elementor-element.jp-services-hero .jp-services-link-title .elementor-button { padding:0; min-height:18px; display:inline-flex; align-items:center; background:transparent; white-space:nowrap; }
.jp-services-page .elementor-element.jp-services-hero .jp-services-link-title .elementor-button-content-wrapper { display:flex; flex-direction:row; align-items:center; }
.jp-services-page .elementor-element.jp-services-hero .jp-services-link-title .elementor-button-text { order:1; }
.jp-services-page .elementor-element.jp-services-hero .jp-services-link-title .elementor-button-icon { order:2; margin-left:10px; }
.jp-services-page .elementor-element.jp-services-hero .jp-services-link-title .elementor-button:hover { background:transparent; }
.jp-services-page .elementor-element.jp-services-hero .jp-services-link-number { width:58px; margin:0; }
.jp-services-page .elementor-element.jp-services-hero .jp-services-link-number { position:relative; display:block; }
.jp-services-page .elementor-element.jp-services-hero .jp-services-link-number .elementor-widget-container { position:relative; width:58px; padding-left:4px; }
.jp-services-page .elementor-element.jp-services-hero .jp-services-link-number p { color:rgba(255,255,255,.55) !important; margin:0; line-height:11px; transition:color 180ms ease; }
.jp-services-page .elementor-element.jp-services-hero .jp-services-link-number:after { content:""; position:absolute; left:25px; top:50%; width:20px; height:2px; background:rgba(255,255,255,.4); transform:translateY(-50%); display:block; z-index:2; transition:background-color 180ms ease,width 180ms ease; }
.jp-services-page .elementor-element.jp-services-hero .jp-services-link-row:hover .jp-services-link-number:after,
.jp-services-page .elementor-element.jp-services-hero .jp-services-link-row:focus-within .jp-services-link-number:after { width:32px; background:#dafba2; }
.jp-services-page .elementor-element.jp-services-hero .jp-services-link-row:hover .jp-services-link-number p,
.jp-services-page .elementor-element.jp-services-hero .jp-services-link-row:focus-within .jp-services-link-number p { color:#dafba2 !important; }
@media (max-width:1366px) and (min-width:921px) { .jp-services-page .elementor-element.jp-services-hero .jp-services-title .elementor-heading-title { font-size:80px; line-height:82px; letter-spacing:-3.8px; } .jp-services-page .elementor-element.jp-services-hero .jp-services-copy .elementor-widget-container { max-width:620px; } }
@media (max-width:920px) { .jp-services-page .elementor-element.jp-services-hero { min-height:760px; } .jp-services-page .elementor-element.jp-services-hero > .elementor-container { height:760px; min-height:760px; flex-direction:column; justify-content:center; } .jp-services-page .elementor-element.jp-services-hero .jp-services-left, .jp-services-page .elementor-element.jp-services-hero .jp-services-right { width:100%; height:760px; min-height:760px; } .jp-services-page .elementor-element.jp-services-hero .jp-services-left > .elementor-widget-wrap { justify-content:center; text-align:center; } .jp-services-page .elementor-element.jp-services-hero .jp-services-kicker, .jp-services-page .elementor-element.jp-services-hero .jp-services-copy { text-align:center; } .jp-services-page .elementor-element.jp-services-hero .jp-services-copy .elementor-widget-container { max-width:700px; margin-inline:auto; } .jp-services-page .elementor-element.jp-services-hero .jp-services-right > .elementor-widget-wrap { margin-top:44px; align-items:center; } .jp-services-page .elementor-element.jp-services-hero .jp-services-link-row { max-width:320px; } .jp-services-page .elementor-element.jp-services-hero .jp-services-link-title-col { flex:1 1 auto; } .jp-services-page .elementor-element.jp-services-hero .jp-services-link-title .elementor-button { justify-content:flex-end; } }
@media (max-width:560px) { .jp-services-page .elementor-element.jp-services-hero { min-height:760px; } .jp-services-page .elementor-element.jp-services-hero .jp-services-left > .elementor-widget-wrap { padding-left:24px; padding-right:24px; } .jp-services-page .elementor-element.jp-services-hero .jp-services-title { margin-bottom:22px; } .jp-services-page .elementor-element.jp-services-hero .jp-services-copy { margin-bottom:28px; } .jp-services-page .elementor-element.jp-services-hero .jp-services-button .elementor-button { min-height:58px; } .jp-services-page .elementor-element.jp-services-hero .jp-services-right > .elementor-widget-wrap { margin-top:34px; gap:12px; } }
@media (prefers-reduced-motion:reduce) { .jp-services-page .elementor-element.jp-services-hero .jp-services-button .elementor-button { transition:none; } }

/* 114: Servicios / services-stack */
.jp-services-page .elementor-element.jp-services-stack { position:relative; z-index:1; overflow:visible; }
.jp-services-page .elementor-element.jp-services-stack > .elementor-container { width:100% !important; max-width:none !important; margin:0 !important; padding:0 !important; display:block; }
.jp-services-page .elementor-element.jp-services-stack > .elementor-container > .elementor-column { width:100% !important; max-width:none !important; }
.jp-services-page .elementor-element.jp-services-stack > .elementor-container > .elementor-column > .elementor-widget-wrap { display:block; padding:0; }

/* 114: Servicios / service-01 */
.jp-services-page .elementor-element.jp-service01 { position:sticky; top:0; isolation:isolate; overflow:hidden; z-index:21; }
.jp-services-page .elementor-element.jp-service01 > .elementor-container { position:relative; z-index:1; }
.jp-services-page .elementor-element.jp-service01 .jp-service01-left > .elementor-widget-wrap, .jp-services-page .elementor-element.jp-service01 .jp-service01-right > .elementor-widget-wrap { position:relative; align-content:center; }
.jp-services-page .elementor-element.jp-service01 .jp-service01-indicator { position:absolute; left:40px; bottom:20px; z-index:2; display:inline-flex; align-items:center; justify-content:center; width:auto !important; min-width:77px; min-height:28px; margin:0; padding:0 10px; border-radius:999px; background:#dafba2; box-sizing:border-box; }
.jp-services-page .elementor-element.jp-service01 .jp-service01-indicator p { margin:0; color:#001c10; font-family:Inter,sans-serif; font-size:11px; font-weight:700; line-height:1; letter-spacing:.44px; }
.jp-services-page .elementor-element.jp-service01 .jp-service01-meta-row { width:100%; }
.jp-services-page .elementor-element.jp-service01 .jp-service01-meta-row > .elementor-container { width:100%; max-width:none; display:flex; align-items:center; }
.jp-services-page .elementor-element.jp-service01 .jp-service01-meta-label-col { width:36% !important; flex:0 0 36%; }
.jp-services-page .elementor-element.jp-service01 .jp-service01-meta-divider-col { width:64% !important; flex:0 0 64%; padding-left:5px; }
.jp-services-page .elementor-element.jp-service01 .jp-service01-title { margin:0; }
.jp-services-page .elementor-element.jp-service01 .jp-service01-title .elementor-heading-title { margin:0; }
.jp-services-page .elementor-element.jp-service01 .jp-service01-title span { display:inline; padding:0 4px; color:#dafba2; background:rgba(0,53,45,.38); }
.jp-services-page .elementor-element.jp-service01 .jp-service01-copy { max-width:100%; }
.jp-services-page .elementor-element.jp-service01 .jp-service01-copy p { margin:0; }
.jp-services-page .elementor-element.jp-service01 .jp-service01-list-item { position:relative; width:100%; margin:0 0 12px; padding-left:20px; box-sizing:border-box; }
.jp-services-page .elementor-element.jp-service01 .jp-service01-list-item p { margin:0; }
.jp-services-page .elementor-element.jp-service01 .jp-service01-list-item:before { content:""; position:absolute; left:0; top:6px; width:12px; height:12px; border:0.5px solid #00352d; border-radius:50%; background:#dafba2; box-sizing:border-box; }
.jp-services-page .elementor-element.jp-service01 .jp-service01-button { width:auto !important; }
.jp-services-page .elementor-element.jp-service01 .jp-service01-button .elementor-button { display:inline-flex; align-items:center; justify-content:center; transition:background-color .2s ease,color .2s ease; }
.jp-services-page .elementor-element.jp-service01 .jp-service01-button .elementor-button:hover { transform:translateY(-1px); }
@media (max-width:920px) { .jp-services-page .elementor-element.jp-service01 { margin-top:-28px !important; border-radius:28px 28px 0 0; } .jp-services-page .elementor-element.jp-service01 > .elementor-container { min-height:0; flex-direction:column; } .jp-services-page .elementor-element.jp-service01 .jp-service01-left, .jp-services-page .elementor-element.jp-service01 .jp-service01-right { width:100%; min-height:0; padding:0; } .jp-services-page .elementor-element.jp-service01 .jp-service01-left { margin-bottom:48px; } .jp-services-page .elementor-element.jp-service01 .jp-service01-image img { height:auto; aspect-ratio:1.2; } .jp-services-page .elementor-element.jp-service01 .jp-service01-indicator { left:20px; bottom:20px; } .jp-services-page .elementor-element.jp-service01 .jp-service01-meta-label-col { width:42% !important; flex-basis:42%; } .jp-services-page .elementor-element.jp-service01 .jp-service01-meta-divider-col { width:58% !important; flex-basis:58%; padding-left:12px; } .jp-services-page .elementor-element.jp-service01 .jp-service01-title .elementor-heading-title { font-size:42px; line-height:48px; } .jp-services-page .elementor-element.jp-service01 .jp-service01-copy { margin-bottom:24px; } .jp-services-page .elementor-element.jp-service01 .jp-service01-list-item { font-size:16px; line-height:24px; } }
@media (max-width:1366px) and (min-width:921px) { .jp-services-page .elementor-element.jp-service01 .jp-service01-title .elementor-heading-title { font-size:42px; line-height:50px; letter-spacing:-1.7px; } }
@media (max-width:560px) {  .jp-services-page .elementor-element.jp-service01 .jp-service01-left { margin-bottom:40px; } .jp-services-page .elementor-element.jp-service01 .jp-service01-title .elementor-heading-title { font-size:34px; line-height:39px; } .jp-services-page .elementor-element.jp-service01 .jp-service01-kicker { font-size:14px; letter-spacing:1.96px; } .jp-services-page .elementor-element.jp-service01 .jp-service01-button { width:100% !important; } .jp-services-page .elementor-element.jp-service01 .jp-service01-button .elementor-button { width:100%; } }
@media (prefers-reduced-motion:reduce) { .jp-services-page .elementor-element.jp-service01 .jp-service01-button .elementor-button { transition:none; } }
/* JP service section numbers as Elementor media images */
.jp-services-page .elementor-element.jp-service01:before,
.jp-services-page .elementor-element.jp-service02:before,
.jp-services-page .elementor-element.jp-service03:before,
.jp-services-page .jp-service-number-image {
    position: absolute;
    z-index: 0;
    width: 520px;
    max-width: 34vw;
    pointer-events: none;
}

.jp-services-page .jp-service-number-image img {
    display: block;
    width: 100%;
    height: auto;
}

.jp-services-page .jp-service-number-image-01,
.jp-services-page .jp-service-number-image-03 {
    top: 30px;
    right: 70px;
}

.jp-services-page .jp-service-number-image-02,
.jp-services-page .jp-service-number-image-04 {
    top: 34px;
    left: 40px;
}

@media (max-width: 920px) {
    .jp-services-page .jp-service-number-image {
        width: 260px;
        max-width: 68vw;
    }

    .jp-services-page .jp-service-number-image-01,
    .jp-services-page .jp-service-number-image-03 {
        top: 34px;
        right: 20px;
    }

    .jp-services-page .jp-service-number-image-02,
    .jp-services-page .jp-service-number-image-04 {
        top: 34px;
        left: 20px;
    }
}

/* 114: Servicios / service-02 */
.jp-services-page .elementor-element.jp-service02 { position:sticky; top:0; isolation:isolate; overflow:hidden; z-index:22; }
.jp-services-page .elementor-element.jp-service02 > .elementor-container { position:relative; z-index:1; }
.jp-services-page .elementor-element.jp-service02 .jp-service02-left > .elementor-widget-wrap, .jp-services-page .elementor-element.jp-service02 .jp-service02-right > .elementor-widget-wrap { position:relative; align-content:center; }
.jp-services-page .elementor-element.jp-service02 .jp-service02-kicker { text-transform:uppercase; }
.jp-services-page .elementor-element.jp-service02 .jp-service02-meta-row { width:100%; }
.jp-services-page .elementor-element.jp-service02 .jp-service02-meta-row > .elementor-container { width:100%; max-width:none; display:flex; align-items:center; }
.jp-services-page .elementor-element.jp-service02 .jp-service02-meta-label-col { width:36% !important; flex:0 0 36%; }
.jp-services-page .elementor-element.jp-service02 .jp-service02-meta-divider-col { width:64% !important; flex:0 0 64%; padding-left:5px; }
.jp-services-page .elementor-element.jp-service02 .jp-service02-title .elementor-heading-title { margin:0; }
.jp-services-page .elementor-element.jp-service02 .jp-service02-copy p { margin:0; }
.jp-services-page .elementor-element.jp-service02 .jp-service02-list-item { position:relative; width:100%; margin:0 0 12px; padding-left:20px; box-sizing:border-box; }
.jp-services-page .elementor-element.jp-service02 .jp-service02-list-item p { margin:0; }
.jp-services-page .elementor-element.jp-service02 .jp-service02-list-item:before { content:""; position:absolute; left:0; top:6px; width:12px; height:12px; border:0.5px solid #00352d; border-radius:50%; background:#dafba2; box-sizing:border-box; }
.jp-services-page .elementor-element.jp-service02 .jp-service02-button { width:auto !important; }
.jp-services-page .elementor-element.jp-service02 .jp-service02-button .elementor-button { display:inline-flex; align-items:center; justify-content:center; transition:background-color .2s ease,color .2s ease,border-color .2s ease; }
.jp-services-page .elementor-element.jp-service02 .jp-service02-button .elementor-button:hover { transform:translateY(-1px); }
.jp-services-page .elementor-element.jp-service02 .jp-service02-button .elementor-button:hover, .jp-services-page .elementor-element.jp-service02 .jp-service02-button .elementor-button:focus { border-color:#dafba2; }
.jp-services-page .elementor-element.jp-service02 .jp-service02-indicator { position:absolute; left:50px; bottom:16px; z-index:2; display:inline-flex; align-items:center; justify-content:center; width:auto !important; min-width:77px; min-height:28px; margin:0; padding:0 10px; border-radius:999px; background:#dafba2; box-sizing:border-box; }
.jp-services-page .elementor-element.jp-service02 .jp-service02-indicator p { margin:0; color:#001c10; font-family:Inter,sans-serif; font-size:11px; font-weight:700; line-height:1; letter-spacing:.44px; }
@media (max-width:1366px) and (min-width:921px) { .jp-services-page .elementor-element.jp-service02 .jp-service02-title .elementor-heading-title { font-size:42px; line-height:50px; letter-spacing:-1.7px; } }
@media (max-width:920px) { .jp-services-page .elementor-element.jp-service02 { margin-top:-28px !important; border-radius:28px 28px 0 0; } .jp-services-page .elementor-element.jp-service02 > .elementor-container { min-height:0; flex-direction:column; } .jp-services-page .elementor-element.jp-service02 .jp-service02-left, .jp-services-page .elementor-element.jp-service02 .jp-service02-right { width:100%; min-height:0; padding:0; } .jp-services-page .elementor-element.jp-service02 .jp-service02-left { margin-bottom:48px; } .jp-services-page .elementor-element.jp-service02 .jp-service02-right { order:-1; margin-bottom:40px; } .jp-services-page .elementor-element.jp-service02 .jp-service02-image img { height:auto; aspect-ratio:1.2; } .jp-services-page .elementor-element.jp-service02 .jp-service02-indicator { left:20px; bottom:16px; } .jp-services-page .elementor-element.jp-service02 .jp-service02-meta-label-col { width:42% !important; flex-basis:42%; } .jp-services-page .elementor-element.jp-service02 .jp-service02-meta-divider-col { width:58% !important; flex-basis:58%; padding-left:5px; } .jp-services-page .elementor-element.jp-service02 .jp-service02-title .elementor-heading-title { font-size:42px; line-height:48px; } .jp-services-page .elementor-element.jp-service02 .jp-service02-list-item { font-size:16px; line-height:24px; } }
@media (max-width:560px) {  .jp-services-page .elementor-element.jp-service02 .jp-service02-title .elementor-heading-title { font-size:34px; line-height:39px; } .jp-services-page .elementor-element.jp-service02 .jp-service02-kicker { font-size:14px; letter-spacing:1.96px; } .jp-services-page .elementor-element.jp-service02 .jp-service02-button { width:100% !important; } .jp-services-page .elementor-element.jp-service02 .jp-service02-button .elementor-button { width:100%; } }
@media (prefers-reduced-motion:reduce) { .jp-services-page .elementor-element.jp-service02 .jp-service02-button .elementor-button { transition:none; } }

/* 114: Servicios / service-03 */
.jp-services-page .elementor-element.jp-service03 { position:sticky; top:0; isolation:isolate; overflow:hidden; z-index:23; }
.jp-services-page .elementor-element.jp-service03 > .elementor-container { position:relative; z-index:1; }
.jp-services-page .elementor-element.jp-service03 .jp-service03-left > .elementor-widget-wrap, .jp-services-page .elementor-element.jp-service03 .jp-service03-right > .elementor-widget-wrap { position:relative; align-content:center; }
.jp-services-page .elementor-element.jp-service03 .jp-service03-indicator { position:absolute; left:45px; bottom:17px; z-index:2; display:inline-flex; align-items:center; justify-content:center; width:auto !important; min-width:77px; min-height:28px; margin:0; padding:0 10px; border-radius:999px; background:#dafba2; box-sizing:border-box; }
.jp-services-page .elementor-element.jp-service03 .jp-service03-indicator p { margin:0; color:#001c10; font-family:Inter,sans-serif; font-size:11px; font-weight:700; line-height:1; letter-spacing:.44px; }
.jp-services-page .elementor-element.jp-service03 .jp-service03-meta-row { width:100%; }
.jp-services-page .elementor-element.jp-service03 .jp-service03-meta-row > .elementor-container { width:100%; max-width:none; display:flex; align-items:center; }
.jp-services-page .elementor-element.jp-service03 .jp-service03-meta-label-col { width:36% !important; flex:0 0 36%; }
.jp-services-page .elementor-element.jp-service03 .jp-service03-meta-divider-col { width:64% !important; flex:0 0 64%; padding-left:5px; }
.jp-services-page .elementor-element.jp-service03 .jp-service03-title .elementor-heading-title { margin:0; }
.jp-services-page .elementor-element.jp-service03 .jp-service03-title span { display:inline; padding:0 4px; color:#dafba2; background:rgba(0,53,45,.38); }
.jp-services-page .elementor-element.jp-service03 .jp-service03-copy p { margin:0; }
.jp-services-page .elementor-element.jp-service03 .jp-service03-list-item { position:relative; width:100%; margin:0 0 12px; padding-left:20px; box-sizing:border-box; }
.jp-services-page .elementor-element.jp-service03 .jp-service03-list-item p { margin:0; }
.jp-services-page .elementor-element.jp-service03 .jp-service03-list-item:before { content:""; position:absolute; left:0; top:6px; width:12px; height:12px; border:0.5px solid #00352d; border-radius:50%; background:#dafba2; box-sizing:border-box; }
.jp-services-page .elementor-element.jp-service03 .jp-service03-button { width:auto !important; }
.jp-services-page .elementor-element.jp-service03 .jp-service03-button .elementor-button { display:inline-flex; align-items:center; justify-content:center; transition:background-color .2s ease,color .2s ease; }
.jp-services-page .elementor-element.jp-service03 .jp-service03-button .elementor-button:hover { transform:translateY(-1px); }
@media (max-width:1366px) and (min-width:921px) { .jp-services-page .elementor-element.jp-service03 .jp-service03-title .elementor-heading-title { font-size:42px; line-height:50px; letter-spacing:-1.7px; } }
@media (max-width:920px) { .jp-services-page .elementor-element.jp-service03 { margin-top:-28px !important; border-radius:28px 28px 0 0; } .jp-services-page .elementor-element.jp-service03 > .elementor-container { min-height:0; flex-direction:column; } .jp-services-page .elementor-element.jp-service03 .jp-service03-left, .jp-services-page .elementor-element.jp-service03 .jp-service03-right { width:100%; min-height:0; padding:0; } .jp-services-page .elementor-element.jp-service03 .jp-service03-left { margin-bottom:48px; } .jp-services-page .elementor-element.jp-service03 .jp-service03-image img { height:auto; aspect-ratio:1.2; } .jp-services-page .elementor-element.jp-service03 .jp-service03-indicator { left:20px; bottom:17px; } .jp-services-page .elementor-element.jp-service03 .jp-service03-meta-label-col { width:42% !important; flex-basis:42%; } .jp-services-page .elementor-element.jp-service03 .jp-service03-meta-divider-col { width:58% !important; flex-basis:58%; padding-left:5px; } .jp-services-page .elementor-element.jp-service03 .jp-service03-title .elementor-heading-title { font-size:42px; line-height:48px; } .jp-services-page .elementor-element.jp-service03 .jp-service03-list-item { font-size:16px; line-height:24px; } }
@media (max-width:560px) {  .jp-services-page .elementor-element.jp-service03 .jp-service03-title .elementor-heading-title { font-size:34px; line-height:39px; } .jp-services-page .elementor-element.jp-service03 .jp-service03-kicker { font-size:14px; letter-spacing:1.96px; } .jp-services-page .elementor-element.jp-service03 .jp-service03-button { width:100% !important; } .jp-services-page .elementor-element.jp-service03 .jp-service03-button .elementor-button { width:100%; } }
@media (prefers-reduced-motion:reduce) { .jp-services-page .elementor-element.jp-service03 .jp-service03-button .elementor-button { transition:none; } }

/* 114: Servicios / service-04 */
.jp-services-page .elementor-element.jp-service04 { position:sticky; top:0; isolation:isolate; overflow:hidden; z-index:24; }
.jp-services-page .elementor-element.jp-service04 > .elementor-container { position:relative; z-index:1; }
.jp-services-page .elementor-element.jp-service04 .jp-service04-left > .elementor-widget-wrap, .jp-services-page .elementor-element.jp-service04 .jp-service04-right > .elementor-widget-wrap { position:relative; align-content:center; }
.jp-services-page .elementor-element.jp-service04 .jp-service04-meta-row { width:100%; }
.jp-services-page .elementor-element.jp-service04 .jp-service04-meta-row > .elementor-container { width:100%; max-width:none; display:flex; align-items:center; }
.jp-services-page .elementor-element.jp-service04 .jp-service04-meta-label-col { width:36% !important; flex:0 0 36%; }
.jp-services-page .elementor-element.jp-service04 .jp-service04-meta-divider-col { width:64% !important; flex:0 0 64%; padding-left:5px; }
.jp-services-page .elementor-element.jp-service04 .jp-service04-title .elementor-heading-title { margin:0; }
.jp-services-page .elementor-element.jp-service04 .jp-service04-copy p { margin:0; }
.jp-services-page .elementor-element.jp-service04 .jp-service04-list-item { position:relative; width:100%; margin:0 0 12px; padding-left:20px; box-sizing:border-box; }
.jp-services-page .elementor-element.jp-service04 .jp-service04-list-item p { margin:0; }
.jp-services-page .elementor-element.jp-service04 .jp-service04-list-item:before { content:""; position:absolute; left:0; top:6px; width:12px; height:12px; border:0.5px solid #00352d; border-radius:50%; background:#dafba2; box-sizing:border-box; }
.jp-services-page .elementor-element.jp-service04 .jp-service04-button { width:auto !important; }
.jp-services-page .elementor-element.jp-service04 .jp-service04-button .elementor-button { display:inline-flex; align-items:center; justify-content:center; transition:background-color .2s ease,color .2s ease,border-color .2s ease; }
.jp-services-page .elementor-element.jp-service04 .jp-service04-button .elementor-button:hover { transform:translateY(-1px); border-color:#dafba2; }
.jp-services-page .elementor-element.jp-service04 .jp-service04-indicator { position:absolute; left:50px; bottom:20px; z-index:2; display:inline-flex; align-items:center; justify-content:center; width:auto !important; min-width:77px; min-height:28px; margin:0; padding:0 10px; border-radius:999px; background:#dafba2; box-sizing:border-box; }
.jp-services-page .elementor-element.jp-service04 .jp-service04-indicator p { margin:0; color:#001c10; font-family:Inter,sans-serif; font-size:11px; font-weight:700; line-height:1; letter-spacing:.44px; }
@media (max-width:1366px) and (min-width:921px) { .jp-services-page .elementor-element.jp-service04 .jp-service04-title .elementor-heading-title { font-size:42px; line-height:50px; letter-spacing:-1.7px; } }
@media (max-width:920px) { .jp-services-page .elementor-element.jp-service04 { margin-top:-28px !important; border-radius:28px 28px 0 0; } .jp-services-page .elementor-element.jp-service04 > .elementor-container { min-height:0; flex-direction:column; } .jp-services-page .elementor-element.jp-service04 .jp-service04-left, .jp-services-page .elementor-element.jp-service04 .jp-service04-right { width:100%; min-height:0; padding:0; } .jp-services-page .elementor-element.jp-service04 .jp-service04-left { margin-bottom:48px; } .jp-services-page .elementor-element.jp-service04 .jp-service04-right { order:-1; margin-bottom:40px; } .jp-services-page .elementor-element.jp-service04 .jp-service04-image img { height:auto; aspect-ratio:1.2; } .jp-services-page .elementor-element.jp-service04 .jp-service04-indicator { left:20px; bottom:20px; } .jp-services-page .elementor-element.jp-service04 .jp-service04-meta-label-col { width:42% !important; flex-basis:42%; } .jp-services-page .elementor-element.jp-service04 .jp-service04-meta-divider-col { width:58% !important; flex-basis:58%; padding-left:5px; } .jp-services-page .elementor-element.jp-service04 .jp-service04-title .elementor-heading-title { font-size:42px; line-height:48px; } .jp-services-page .elementor-element.jp-service04 .jp-service04-list-item { font-size:16px; line-height:24px; } }
@media (max-width:560px) {  .jp-services-page .elementor-element.jp-service04 .jp-service04-title .elementor-heading-title { font-size:34px; line-height:39px; } .jp-services-page .elementor-element.jp-service04 .jp-service04-kicker { font-size:14px; letter-spacing:1.96px; } .jp-services-page .elementor-element.jp-service04 .jp-service04-button { width:100% !important; } .jp-services-page .elementor-element.jp-service04 .jp-service04-button .elementor-button { width:100%; } }
@media (prefers-reduced-motion:reduce) { .jp-services-page .elementor-element.jp-service04 .jp-service04-button .elementor-button { transition:none; } }

/* 114: Servicios / jp-contact-outer */
.jp-services-page .elementor-element.jp-contact-outer { position:relative; z-index:50; }

/* 114: Servicios / jp-contact1 */
.jp-services-page .elementor-element.jp-contact-section { position:relative; z-index:50; }

/* 114: Servicios / jp-contact-card */
.jp-services-page .elementor-element.jp-contact-card {
    -webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px);
}

/* 114: Servicios / jp-contact-form */
.jp-services-page .elementor-element.jp-contact-form-widget .wpcf7,
.jp-services-page .elementor-element.jp-contact-form-widget .wpcf7-form {
    width: 100%;
}
.jp-services-page .elementor-element.jp-contact-form-widget .wpcf7-form {
    display: flex;
    flex-direction: column;
    gap: 14px;
    margin: 0;
}.jp-services-page .elementor-element.jp-contact-form-widget .wpcf7-form > p,
.jp-services-page .elementor-element.jp-contact-form-widget .jp-cf7-row > p {
    display: contents;
}
.jp-services-page .elementor-element.jp-contact-form-widget .wpcf7-form br {
    display: none;
}
.jp-services-page .elementor-element.jp-contact-form-widget .jp-cf7-row {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
}
.jp-services-page .elementor-element.jp-contact-form-widget .jp-cf7-field {
    display: flex;
    flex-direction: column;
    gap: 6px;
    margin: 0;
}
.jp-services-page .elementor-element.jp-contact-form-widget .jp-cf7-message {
    padding-bottom: 11px;
}
.jp-services-page .elementor-element.jp-contact-form-widget .jp-cf7-label {
    color: rgba(255, 255, 255, 0.72);
    font-family: "Inter", sans-serif;
    font-size: 14px;

    line-height: normal;
}
.jp-services-page .elementor-element.jp-contact-form-widget .wpcf7-form-control-wrap {
    display: block;
    width: 100%;
}
.jp-services-page .elementor-element.jp-contact-form-widget input:not([type="submit"]),
.jp-services-page .elementor-element.jp-contact-form-widget textarea {
    width: 100%;
    margin: 0;
    border: 1px solid rgba(255, 255, 255, 0.15);
    border-radius: 12px;
    outline: 0;
    background: rgba(255, 255, 255, 0.06);
    color: #ffffff;
    font-family: "Inter", sans-serif;
    font-size: 16px;

    line-height: normal;
    box-shadow: none;
    transition: border-color 0.2s ease, background-color 0.2s ease;
}
.jp-services-page .elementor-element.jp-contact-form-widget input:not([type="submit"]) {
    min-height: 50px;
    padding: 15px 17px;
}
.jp-services-page .elementor-element.jp-contact-form-widget textarea {
    min-height: 80px;
    height: 80px;
    padding: 15px 17px;
    resize: none;
}
.jp-services-page .elementor-element.jp-contact-form-widget input::placeholder,
.jp-services-page .elementor-element.jp-contact-form-widget textarea::placeholder {
    color: #c2c2c2;
    opacity: 1;
}
.jp-services-page .elementor-element.jp-contact-form-widget input:not([type="submit"]):focus,
.jp-services-page .elementor-element.jp-contact-form-widget textarea:focus {
    border-color: rgba(255, 255, 255, 0.45);
    background: rgba(255, 255, 255, 0.10);
}
.jp-services-page .elementor-element.jp-contact-form-widget input[type="submit"] {
    width: 100%;
    min-height: 54px;
    margin: 0;
    padding: 16px;
    border: 0;
    border-radius: 999px;
    background: #dafba2;
    color: #00352d;
    font-family: "Inter", sans-serif;
    font-size: 18px;

    line-height: normal;
    cursor: pointer;
    transition: background-color 0.2s ease, color 0.2s ease;
}
.jp-services-page .elementor-element.jp-contact-form-widget input[type="submit"]:hover,
.jp-services-page .elementor-element.jp-contact-form-widget input[type="submit"]:focus {
    background: #00352d;
    color: #dafba2;
}
.jp-services-page .elementor-element.jp-contact-form-widget .wpcf7-spinner {
    position: absolute;
    margin: 15px 0 0 -40px;
}
.jp-services-page .elementor-element.jp-contact-form-widget .wpcf7-not-valid-tip {
    margin-top: 4px;
    color: #ffd1d1;
    font-family: "Inter", sans-serif;
    font-size: 12px;
}
.jp-services-page .elementor-element.jp-contact-form-widget .wpcf7-response-output {
    margin: 0;
    padding: 10px 12px;
    border-color: rgba(255, 255, 255, 0.35);
    border-radius: 10px;
    color: #ffffff;
    font-family: "Inter", sans-serif;
    font-size: 14px;
}
@media (max-width: 767px) {
    .jp-services-page .elementor-element.jp-contact-form-widget .jp-cf7-row {
        grid-template-columns: 1fr;
    }
}
