/* Servicios con curva, aislado del resto de la página. */
.services.services--journey{padding:0;background:#000;color:#fff;--orange:var(--signal);--quiet:#090909;overflow:clip}
.services--journey .journey-symbols{position:absolute;width:0;height:0;overflow:hidden}
.services--journey .service{border:0;margin:0;border-radius:0;background:transparent}
.services--journey .service__panel{display:block;grid-template-rows:none;transition:none}
.services--journey .service__inner{overflow:visible}
.services--journey .service__copy{display:block;gap:0;justify-items:normal}
.services--journey .service__copy p{max-width:none}
.services--journey .service__media{aspect-ratio:auto;border-radius:0;overflow:visible}
.services--journey .service__media>video{height:auto}
.services--journey .service__media--image>img{height:auto;object-fit:contain}
.services--journey .services-intro h2{margin:0;letter-spacing:normal}
.services--journey .service__station h2,.services--journey .service__description h3{margin:0}
.services--journey .services-intro { position: relative; isolation: isolate; padding: 95px 11vw 100px var(--gutter); min-height: 360px; display: flex; justify-content: flex-end; align-items: center; overflow: clip; }
.services--journey .intro-watermark,
.services--journey .watermarks span { font-family: Aesthetic, serif; font-style: italic; font-weight: 400; white-space: nowrap; line-height: 0.82; letter-spacing: -0.055em; color: var(--quiet); pointer-events: none; user-select: none; }
.services--journey .intro-watermark { position: absolute; z-index: -1; top: 5px; left: -3vw; font-size: 36vw; }
.services--journey .services-intro h2 { font-size: clamp(30px, 3.2vw, 54px); line-height: 1.3; text-align: right; font-weight: 400; }
.services--journey .services-intro h2 > span { display: block; }
.services--journey .services-intro h2 strong { display: block; font-weight: 800; }
.services--journey .services-intro h2 em { color: var(--orange); font-style: normal; }
.services--journey #services-journey { position: relative; isolation: isolate; padding: 0px 0px 110px; }
.services--journey .watermarks { position: absolute; inset: 0px; overflow: hidden; z-index: -2; pointer-events: none; display: flex; flex-direction: column; justify-content: space-around; }
.services--journey .watermarks span { font-size: 36vw; transform: translateX(-3vw); }
/* The last word fades out before the bottom edge, so it doesn't end on a straight cut against Hablemos */
.services--journey .watermarks { -webkit-mask-image: linear-gradient(to bottom, #000 calc(100% - 20rem), transparent); mask-image: linear-gradient(to bottom, #000 calc(100% - 20rem), transparent); }
.services--journey .route { position: absolute; top: 0px; left: 0px; width: 100%; height: 100%; overflow: visible; pointer-events: none; z-index: -1; }
.services--journey .route path { fill: none; stroke-linecap: round; stroke-linejoin: round; stroke-width: 7; }
.services--journey .route__guide { stroke: rgb(255, 255, 255); opacity: 0.095; }
.services--journey .route__ink { stroke: rgb(255, 255, 255); }
.services--journey .route__tip { fill: rgb(255, 255, 255); }
.services--journey .service { position: relative; padding-bottom: 88px; }
.services--journey .service__station { width: 43%; margin-left: 51%; min-height: 255px; display: flex; align-items: flex-start; justify-content: center; padding-top: 25px; position: relative; }
.services--journey .service:nth-child(2n) .service__station { margin-left: 6%; }
.services--journey .service__station h2 { width: 100%; font-weight: 400; }
.services--journey .service__toggle { width: 100%; display: flex; flex-direction: column; align-items: center; gap: 20px; border: 0px; padding: 8px 0px 0px; background: transparent; text-align: center; position: relative; }
.services--journey .service__name { font-size: clamp(19px, 2.05vw, 33px); font-weight: 400; line-height: 1.4; max-width: 100%; text-wrap: balance; }
.services--journey .service__icon { width: 154px; height: 154px; display: block; background: rgb(0, 0, 0); border-radius: 40%; position: relative; transform-origin: 50% 70%; flex-shrink: 0; }
.services--journey .service__icon svg { width: 100%; height: 100%; }
.services--journey .service__toggle:hover .service__name { color: var(--orange); }
.services--journey .service.is-open .service__name { color: rgb(255, 255, 255); }
.services--journey .service__panel { position: relative; z-index: 2; overflow: hidden; }
html.js .services--journey .service__panel { height: 0px; visibility: hidden; }
.services--journey .service__inner { width: min(1180px,calc(100% - 2*var(--gutter))); margin: 0px auto; display: grid; grid-template-columns: minmax(0px, 1.35fr) minmax(0px, 1fr); gap: clamp(32px, 5vw, 76px); padding: 38px 0px 64px; align-items: center; }
.services--journey .service:nth-child(2n) .service__media { order: 2; }
.services--journey .service:nth-child(2n) .service__copy { order: 1; }
.services--journey .service__media { position: relative; min-width: 0px; transform-origin: 50% 0px; background: rgb(0, 0, 0); isolation: isolate; }
.services--journey .service__media > video { width: 100%; aspect-ratio: 16 / 9; object-fit: cover; }
.services--journey .service__media > .flyer { max-height: 430px; width: 100%; object-fit: contain; }
.services--journey .service__copy { min-width: 0px; position: relative; padding: 12px 0px; }
.services--journey .service__description { background: rgb(0, 0, 0); border: 1px solid rgba(255, 255, 255, 0.7); border-radius: 44px; padding: 28px 30px; transform: rotate(-3deg); transform-origin: 50% 50%; }
.services--journey .service__description h3 { font-size: 15px; line-height: 1.6; font-weight: 700; margin-bottom: 17px; }
.services--journey .service__description p { font-size: 13px; line-height: 1.85; font-weight: 400; }
.services--journey .service__description .service__statement { font-size: 15px; line-height: 1.65; margin-bottom: 18px; }
.services--journey .service__description .service__extra { margin-top: 15px; font-size: 12px; }
.services--journey .service__actions { display: flex; flex-wrap: wrap; gap: 13px; margin-top: 30px; justify-content: flex-start; }
.services--journey .service__actions .btn { font-size: 10px; min-height: 48px; gap: 12px; padding-left: 18px; }
.services--journey .service__actions .btn__dot { width: 29px; height: 29px; flex-basis: 29px; }
.services--journey .service__actions .btn--outline { background: transparent; }
.services--journey .service__media--chat { display: flex; align-items: center; justify-content: center; flex-direction: column; padding: 12px 0px; }
@media (min-width: 1700px){
.services--journey .service__inner { width: min(1360px, 82%); }
.services--journey .service__description p { font-size: 15px; }
.services--journey .service__description h3 { font-size: 18px; }
.services--journey .service__name { font-size: 36px; }
.services--journey .service__icon { width: 175px; height: 175px; }
.services--journey .service__station { min-height: 285px; }
}
@media (max-width: 1100px){
.services--journey .services-intro { padding-right: 6vw; min-height: 310px; }
.services--journey .service__station { width: 49%; margin-left: 47%; }
.services--journey .service:nth-child(2n) .service__station { margin-left: 4%; }
.services--journey .service__name { font-size: 22px; }
.services--journey .service__inner { gap: 30px; }
.services--journey .service__description { padding: 25px; border-radius: 32px; }
.services--journey .service__description p { font-size: 12px; }
.services--journey .service__actions { flex-direction: column; align-items: flex-start; }
.services--journey .service__actions .btn { font-size: 10px; }
}
@media (max-width: 760px){
.services--journey .services-intro { min-height: 275px; padding: 70px 24px 65px; }
.services--journey .intro-watermark { font-size: 60vw; top: 30px; left: -12vw; }
.services--journey .services-intro h2 { font-size: clamp(20px, 4.8vw, 32px); line-height: 1.5; }
.services--journey .services-intro h2 strong { max-width: 460px; }
.services--journey .watermarks span { font-size: 62vw; transform: translateX(-11vw); }
.services--journey .service { padding-bottom: 55px; }
.services--journey .service__station { min-height: 210px; width: 73%; margin-left: 24%; padding-top: 20px; }
.services--journey .service:nth-child(2n) .service__station { margin-left: 3%; }
.services--journey .service__name { font-size: clamp(15px, 3.65vw, 23px); line-height: 1.65; }
.services--journey .service__toggle { gap: 15px; }
.services--journey .service__icon { width: 112px; height: 112px; }
.services--journey .service__inner { grid-template-columns: minmax(0px, 1fr); width: calc(100% - 44px); gap: 26px; padding: 28px 0px 45px; }
.services--journey .service:nth-child(2n) .service__media,
.services--journey .service:nth-child(2n) .service__copy { order: initial; }
.services--journey .service__description { transform: rotate(-2deg); padding: 26px 24px; border-radius: 34px; }
.services--journey .service__description h3 { font-size: 14px; }
.services--journey .service__description p { font-size: 12px; line-height: 1.9; }
.services--journey .service__actions { flex-direction: column; gap: 12px; align-items: stretch; margin-top: 26px; }
.services--journey .service__actions .btn { font-size: 11px; padding-left: 20px; min-height: 51px; }
.services--journey .service__media > .flyer { max-height: 410px; }
.services--journey .route path { stroke-width: 5; }
.services--journey .service__copy { padding: 0px 0px 6px; }
}
@media (max-width: 380px){
.services--journey .service__name { font-size: 14px; }
.services--journey .service__inner { width: calc(100% - 36px); }
.services--journey .service__description { padding: 24px 20px; }
.services--journey .service__description p { font-size: 11px; }
.services--journey .service__actions .btn { font-size: 10px; }
.services--journey .services-intro { padding-inline: 20px; }
}
html.js .services--journey .service.is-open .service__panel,
html.js .services--journey .service.is-changing .service__panel { visibility: visible; }
.services--journey .services-intro h2,
.services--journey .service__name { text-transform: uppercase; }
.services--journey .service__actions .btn { font-size: 12px; }
@media (max-width: 760px){
.services--journey .service__description p { font-size: 12px; }
.services--journey .service__actions .btn { font-size: 12px; }
}
/* Ajustes de la propuesta aprobada */
.services--journey .intro-watermark,
.services--journey .watermarks span { font-family: 'Aesthetic', serif; }
.services--journey .intro-watermark,
.services--journey .watermarks span { font-style: italic; font-weight: 400; font-synthesis: none; letter-spacing: -0.01em; line-height: 1.15; }
.services--journey .intro-watermark { font-size: 24vw; top: 36px; left: -8vw; }
.services--journey .watermarks span { font-size: 25vw; transform: translateX(-8vw); color: rgb(7, 7, 7); }
.services--journey .services-intro { min-height: 330px; padding-top: 70px; padding-bottom: 80px; }
.services--journey .services-intro h2 { font-size: clamp(29px, 3.15vw, 50px); }
.services--journey .service { padding-bottom: 106px; }
.services--journey .service__station { min-height: 238px; }
.services--journey .service__toggle { gap: 20px; }
.services--journey .service__name { font-size: clamp(19px, 1.9vw, 30px); width: max-content; max-width: 100%; padding: 0.12em 0.25em; background: rgb(0, 0, 0); box-shadow: rgb(0, 0, 0) 0px 0px 15px 10px; position: relative; z-index: 1; }
.services--journey .service__icon { width: 138px; height: 138px; background: rgb(0, 0, 0); box-shadow: rgb(0, 0, 0) 0px 0px 15px 10px; }
.services--journey .service__inner { width: min(1140px, 84%); gap: 60px; padding-top: 36px; padding-bottom: 54px; }
.services--journey .service__media { background: rgb(0, 0, 0); box-shadow: rgb(0, 0, 0) 0px 0px 18px 8px; }
.services--journey .service__description { border-color: rgb(169, 169, 169); padding: 30px 32px; box-shadow: rgb(0, 0, 0) 0px 0px 16px 8px; }
.services--journey .service__description p { line-height: 1.9; }
.services--journey .service__actions .btn { font-size: 12px; }
.services--journey .service__actions .btn--outline { background: rgb(0, 0, 0); }
.services--journey .service__actions { gap: 14px; }
.services--journey .route { z-index: -1; }
.services--journey .route path { stroke-width: 6; }
.services--journey .route__guide { opacity: 0.14; }
.services--journey .route__tip { fill: var(--signal); }
@media (max-width: 1100px){
.services--journey .service__inner { gap: 34px; width: 86%; }
.services--journey .service__description { padding: 25px 26px; }
.services--journey .service__actions .btn { font-size: 12px; }
}
@media (max-width: 760px){
.services--journey .services-intro { min-height: 265px; padding: 64px 24px 60px; }
.services--journey .services-intro h2 { font-size: clamp(20px, 4.8vw, 32px); }
.services--journey .intro-watermark { font-size: 41vw; top: 45px; left: -14vw; }
.services--journey .watermarks span { font-size: 44vw; transform: translateX(-15vw); }
.services--journey .service { padding-bottom: 76px; }
.services--journey .service__station { min-height: 196px; }
.services--journey .service__name { font-size: clamp(14px, 3.65vw, 23px); padding: 0.14em 0.2em; box-shadow: rgb(0, 0, 0) 0px 0px 10px 6px; }
.services--journey .service__icon { width: 100px; height: 100px; box-shadow: rgb(0, 0, 0) 0px 0px 10px 6px; }
.services--journey .service__inner { width: calc(100% - 48px); gap: 28px; padding: 28px 0px 44px; }
.services--journey .service__description { padding: 27px 24px; border-radius: 32px; box-shadow: rgb(0, 0, 0) 0px 0px 12px 5px; }
.services--journey .service__description p { font-size: 12px; line-height: 1.9; }
.services--journey .service__actions .btn { font-size: 12px; min-height: 51px; }
.services--journey .route path { stroke-width: 4; }
}
/* Aesthetic en el fondo; el contenido y las demos conservan Mortend. */
.services--journey .intro-watermark,.services--journey .watermarks span{font-family:'Aesthetic',serif;font-style:italic;font-weight:400;font-synthesis:none}
.services--journey .service.is-open .service__inner{padding-bottom:54px}
.services--journey .service__description h3{margin-bottom:17px}
.services--journey .service__description p+p{margin-top:15px}
.services--journey .service__actions .btn{font-size:12px}
.services--journey .btn--signal{color:var(--void)}
.services--journey .btn--signal:focus-visible{color:#000}
@media(hover:hover){.services--journey .btn--signal:hover{color:#000}}
.services--journey .service__media--phone{height:430px;grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr);place-items:center;padding:20px;background:#0c0c0c;border-radius:24px}
.services--journey .phone{width:min(100%,320px);min-width:0;height:390px;padding:0;border:1px solid #333;border-radius:24px;background:#161616;box-shadow:none;overflow:hidden}
.services--journey .phone__bar{flex-shrink:0;padding:17px 14px;background:#161616;border-color:#333}
.services--journey .phone__bar img{width:28px;height:28px;padding:0;background:transparent}
.services--journey .phone__bar strong,.services--journey .phone__bar span{font-size:12px;line-height:1.5}
.services--journey .phone__bar span{color:var(--signal)}
.services--journey .phone__chat{min-height:0;padding:14px;background:#161616;font-size:12px;line-height:1.8}
.services--journey .phone__chat li{flex-shrink:0;padding:10px;max-width:94%;background:#2c2c2c}
.services--journey .phone__chat .is-client{background:color-mix(in srgb,var(--signal) 28%,#161616);color:var(--ash)}
.services--journey .phone__chat .is-note{background:transparent;box-shadow:none;font-size:12px;line-height:1.7;max-width:100%;color:#bbb}
.services--journey .service__media--flow{min-height:370px;height:auto;padding:65px 28px 30px;background:#0c0c0c;border-radius:24px}
.services--journey .flow__label{font-size:12px;line-height:1.6;letter-spacing:0;font-weight:400;max-width:calc(100% - 40px)}
.services--journey .flow li{font-size:13px;line-height:1.8;font-weight:400;font-stretch:normal;padding-left:28px}
.services--journey .service--auto .service__copy .service__big{font-size:17px;line-height:1.6;max-width:32ch;font-weight:400}
.services--journey .service--auto .service__copy .flow__more{font-size:12px;line-height:1.8}
@media(max-width:760px){
 .services--journey .service.is-open .service__inner{padding-bottom:44px}
 .services--journey .service__media--phone{height:440px;padding:14px}
 .services--journey .phone{height:412px}
 .services--journey .service__media--flow{display:block;padding:24px 20px;min-height:350px}
 .services--journey .flow__label{max-width:100%;margin-bottom:25px;position:static}
 .services--journey .flow li{font-size:12px;line-height:1.8}
 .services--journey .service--auto .service__copy .service__big{font-size:15px}
}

/* Información más compacta en celular, sin recortar el contenido. */
@media(max-width:760px){
 .services--journey .service__inner{gap:20px;padding-top:20px;padding-bottom:32px}
 .services--journey .service.is-open .service__inner{padding-bottom:32px}
 .services--journey .service__copy{padding:4px 0}
 .services--journey .service__description{padding:18px 20px;border-radius:27px}
 .services--journey .service__description h3{font-size:12px;line-height:1.55;margin-bottom:12px;letter-spacing:-.015em}
 .services--journey .service__description p{font-size:12px;line-height:1.65;font-weight:300;letter-spacing:-.015em}
 .services--journey .service__description p+p{margin-top:12px}
 .services--journey .service__actions{margin-top:20px;gap:10px}
 .services--journey .service__actions .btn{min-height:48px;font-size:12px}
 .services--journey .service--auto .service__copy .service__big{font-size:13px;line-height:1.65;letter-spacing:-.015em}
 .services--journey .service--auto .service__copy .flow__more{font-size:12px;line-height:1.65}
}

/* Medios y espacios compactos en celular; el escritorio conserva su tamaño. */
@media(max-width:760px){
 .services--journey .service__inner{gap:16px;padding-top:16px;padding-bottom:26px}
 .services--journey .service.is-open .service__inner{padding-bottom:26px}
 .services--journey .service__description{padding:15px 18px;border-radius:25px}
 .services--journey .service__description h3{margin-bottom:10px}
 .services--journey .service__actions{margin-top:16px}
 .services--journey .service__media:has(>video){width:92%;max-width:330px;justify-self:center}
 .services--journey .service__media>video{display:block;max-height:200px}
 .services--journey .service__media--image>.flyer{display:block;width:auto;max-width:100%;max-height:240px;margin-inline:auto;object-fit:contain}
}
