/* v26 · Una operación continua; tres perspectivas sobre la misma plataforma. */
.op.journey-section, .actors.perspective-section { display: block; min-height: 0; padding-block: clamp(90px, 9vw, 148px); scroll-snap-align: none; }
.journey-heading, .perspective-heading { margin-bottom: 58px; }
.journey-eyebrow, .perspective-eyebrow { font-size: .6875rem; letter-spacing: .18em; text-transform: uppercase; font-weight: 600; }
.journey-eyebrow { color: #c6b58c; }
.journey-heading h2, .perspective-heading h2 { margin-top: 25px; font-size: clamp(2.5rem, 4.8vw, 4.25rem); line-height: 1.06; letter-spacing: -.055em; font-weight: 500; }
.journey-heading h2 em, .perspective-heading h2 em { font-style: normal; }
.journey-heading h2 em { color: #a8b6ab; }
.journey-heading > p:last-child { margin-top: 24px; color: #a6b2a9; max-width: 35em; font-size: 1rem; line-height: 1.7; }
.journey { --journey-step: 0; }
.journey-nav { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 28px; }
.journey-tab { display: grid; grid-template-columns: auto 1fr; gap: 3px 13px; text-align: left; padding: 14px 0 22px; border: 0; background: transparent; color: #85928a; cursor: pointer; transition: color .2s; }
.journey-tab > span { grid-row: 1 / 3; padding-top: 3px; font-size: .75rem; color: #78867c; }
.journey-tab b { font-size: 1.25rem; font-weight: 500; }
.journey-tab small { font-size: .8125rem; }
.journey-tab[aria-selected=true] { color: #e9eade; }
.journey-tab[aria-selected=true] > span { color: #d8bf8a; }
.journey-tab:hover { color: #d8bf8a; }
.journey-track { height: 1px; background: #d8bf8a24; margin-bottom: 30px; position: relative; }
.journey-track #op-fill { position: absolute; top: 0; left: 0; display: block; height: 2px; width: 33.333%; background: #d8bf8a; transform: translateX(calc(var(--journey-step) * 100%)); transition: transform .6s cubic-bezier(.22, 1, .36, 1); }
.journey .journey-stage.op-grid { display: block; margin: 0; padding: 0; overflow: hidden; border: 1px solid #f4f1e719; border-radius: 20px; background: #101b15; box-shadow: 0 25px 70px -45px #000a; }
.journey-context { display: flex; align-items: center; gap: 14px; padding: 22px 32px; border-bottom: 1px solid #f4f1e714; background: #f4f1e702; }
.journey-avatar { width: 42px; height: 42px; border-radius: 50%; background: #d8bf8a17; border: 1px solid #d8bf8a33; color: #d8bf8a; font-size: .8125rem; display: inline-flex; align-items: center; justify-content: center; flex: none; }
.journey-context > div { display: grid; gap: 2px; }
.journey-context b { font-size: .9375rem; font-weight: 600; }
.journey-context > div > span { font-size: .75rem; color: #94a298; }
.journey-unit { margin-left: auto; color: #94a298; font-size: .75rem; display: flex; align-items: center; gap: 14px; }
.journey-unit > b { color: #eceee8; font-size: 1.5rem; font-weight: 500; letter-spacing: -.06em; }
.journey-panel { display: grid; grid-template-columns: 1fr 1fr; align-items: center; gap: clamp(32px, 5vw, 76px); min-height: 370px; padding: 44px; animation: journeyAppear .45s ease both; }
.journey-panel[hidden], .perspective-panel[hidden] { display: none !important; }
.journey-status { display: inline-flex; align-items: center; gap: 8px; color: #94ceac; font-size: .75rem; }
.journey-status::before { content: ''; width: 5px; height: 5px; border-radius: 50%; background: currentColor; }
.journey-status-gold { color: #d8bf8a; }
.journey-story h3 { margin-top: 17px; color: #edf0e8; font-size: clamp(1.625rem, 2.5vw, 2.25rem); line-height: 1.15; font-weight: 500; letter-spacing: -.045em; }
.journey-story > p { max-width: 30em; margin-top: 18px; color: #a6b2a9; font-size: .875rem; line-height: 1.8; }
.journey-person { margin-top: 26px; display: flex; align-items: center; gap: 11px; color: #d8bf8a; }
.journey-person > span:last-child { display: grid; gap: 1px; color: #8f9c92; font-size: .6875rem; }
.journey-person b { font-size: .75rem; color: #c3cdc5; font-weight: 500; }
.journey-avatar-small { width: 31px; height: 31px; font-size: .625rem; }
.journey-caption { font-size: .625rem; letter-spacing: .12em; text-transform: uppercase; color: #a4b1a6; margin-bottom: 22px; }
.journey-timeline { display: grid; gap: 0; }
.journey-timeline li { position: relative; display: flex; align-items: center; gap: 16px; padding: 19px 0; }
.journey-timeline li:not(:last-child)::after { content: ''; position: absolute; width: 1px; left: 4px; top: 35px; bottom: -18px; background: #d8bf8a33; }
.journey-timeline li > i { position: relative; z-index: 1; display: block; width: 9px; height: 9px; border: 1px solid #849e8d; background: #101b15; border-radius: 50%; flex: none; }
.journey-timeline li > div { display: grid; gap: 5px; }
.journey-timeline b, .journey-document b, .journey-payment b { font-size: .875rem; font-weight: 500; color: #e5e9df; }
.journey-timeline li > div > span, .journey-document div > span, .journey-payment div > span { color: #95a397; font-size: .75rem; }
.journey-timeline small, .journey-timeline .i { margin-left: auto; color: #718679; font-size: .6875rem; }
.journey-timeline .journey-current > i { background: #d8bf8a; border-color: #d8bf8a; box-shadow: 0 0 0 5px #d8bf8a0c; }
.journey-current b, .journey-current .i { color: #d8bf8a; }
.journey-price { font-size: clamp(2.5rem, 4vw, 3.625rem); line-height: 1; font-weight: 500; letter-spacing: -.065em; color: #e5e9df; }
.journey-price > small { font-size: .8125rem; letter-spacing: 0; color: #a4b1a6; margin-right: 10px; }
.journey-terms { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; margin: 26px 0; padding-bottom: 24px; border-bottom: 1px solid #f4f1e714; }
.journey-terms dt { color: #8f9e94; font-size: .6875rem; }
.journey-terms dd { margin: 5px 0 0; font-size: .9375rem; color: #d6dfd3; }
.journey-document { display: flex; align-items: center; gap: 14px; }
.journey-document > .i { width: 27px; height: 27px; color: #d8bf8a; }
.journey-document > div { display: grid; gap: 4px; }
.journey-state-dot { width: 6px; height: 6px; margin-left: auto; border-radius: 50%; background: #d8bf8a; }
.journey-payment { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 19px 0; border-bottom: 1px solid #f4f1e712; }
.journey-payment > div { display: grid; gap: 4px; }
.journey-paid, .journey-review { font-size: .6875rem; white-space: nowrap; }
.journey-paid { color: #94ceac; }
.journey-paid > .i { margin-left: 5px; }
.journey-review { color: #d8bf8a; }
.journey-footnote { margin-top: 20px; font-size: .6875rem; line-height: 1.7; color: #8f9e93; }

.actors.perspective-section { background: #e8e5dc; color: #13281e; }
.perspective-heading { max-width: 52rem; }
.perspective-eyebrow { color: #5a685d; }
.perspective-heading h2 { color: #142a1e; }
.perspective-heading h2 em { color: #697b6c; }
.perspective-heading > p:last-child { margin-top: 26px; max-width: 39em; font-size: 1rem; line-height: 1.75; color: #5c695f; }
.perspective-nav { display: flex; gap: 8px; align-items: stretch; border-bottom: 1px solid #17332626; padding-bottom: 20px; margin-bottom: 42px; }
.perspective-tab { display: flex; align-items: center; justify-content: center; gap: 10px; padding: 14px 20px; border: 1px solid transparent; border-radius: 12px; background: transparent; color: #667268; font-size: .875rem; cursor: pointer; transition: background .25s, color .25s, border-color .25s; }
.perspective-tab:hover { color: #173326; background: #1733260a; }
.perspective-tab[aria-selected=true] { color: #f2efe6; background: #173326; border-color: #173326; box-shadow: 0 5px 16px -8px #17332680; }
.perspective-tab:focus-visible { outline-color: #173326; }
.perspective-panel { display: grid; grid-template-columns: minmax(240px, .85fr) minmax(0, 1.15fr); gap: clamp(35px, 8vw, 110px); align-items: center; min-height: 375px; animation: journeyAppear .45s ease both; }
.perspective-number { display: block; font-size: .8125rem; color: #8a9588; letter-spacing: .08em; margin-bottom: 30px; }
.perspective-intro h3 { color: #173326; font-size: clamp(1.875rem, 3vw, 2.625rem); font-weight: 500; letter-spacing: -.045em; line-height: 1.15; }
.perspective-intro > p { font-size: .9375rem; max-width: 28em; color: #5c695f; line-height: 1.8; margin-top: 20px; }
.perspective-access { margin-top: 30px; display: flex; flex-wrap: wrap; gap: 9px 16px; }
.perspective-access li { font-size: .6875rem; display: flex; align-items: center; gap: 7px; color: #526356; }
.perspective-access li::before { content: ''; display: block; width: 4px; height: 4px; border-radius: 50%; background: #748772; }
.perspective-product { border-radius: 20px; background: #12241a; color: #edf0e6; border: 1px solid #23402c; padding: 26px 30px 0; box-shadow: 0 25px 50px -30px #10281d85; }
.perspective-product > header { display: flex; align-items: center; gap: 12px; padding-bottom: 22px; border-bottom: 1px solid #e8e5dc1a; }
.perspective-product-icon { color: #d8bf8a; width: 33px; height: 33px; display: flex; align-items: center; justify-content: center; border: 1px solid #d8bf8a2a; border-radius: 9px; }
.perspective-product > header > div { display: grid; gap: 3px; }
.perspective-product header b { font-size: .875rem; font-weight: 500; }
.perspective-product header div > span { color: #98aa9a; font-size: .6875rem; }
.perspective-demo { margin-left: auto; font-size: .625rem; color: #7f9482; }
.perspective-project, .perspective-network-row { display: flex; align-items: center; gap: 13px; margin-top: 28px; }
.perspective-project-monogram { width: 39px; height: 39px; border-radius: 10px; background: #e8e5dc08; border: 1px solid #e8e5dc16; color: #b5c7b2; font-size: .6875rem; display: flex; align-items: center; justify-content: center; flex: none; }
.perspective-product h4 { font-size: .875rem; font-weight: 500; margin: 0; }
.perspective-project p, .perspective-network-row p { font-size: .6875rem; margin-top: 4px; color: #95aa98; }
.perspective-project strong { display: grid; font-size: 1.625rem; font-weight: 500; letter-spacing: -.035em; text-align: right; margin-left: auto; line-height: 1.1; }
.perspective-project strong > small { font-size: .625rem; letter-spacing: 0; font-weight: 400; color: #93a898; margin-top: 4px; }
.perspective-progress { height: 3px; background: #e8e5dc12; margin-top: 15px; border-radius: 2px; overflow: hidden; }
.perspective-progress > i { display: block; height: 100%; background: #c7bb91; transform-origin: left; animation: perspectiveProgress .65s cubic-bezier(.22, 1, .36, 1) both; }
.perspective-progress-72 { width: 72%; }
.perspective-progress-41 { width: 41%; }
.perspective-progress-25 { width: 25%; }
.perspective-product > footer { margin: 28px -30px 0; display: flex; align-items: center; gap: 9px; border-top: 1px solid #e8e5dc12; padding: 16px 30px; font-size: .625rem; color: #9aae9d; }
.perspective-network-row { padding-bottom: 28px; border-bottom: 1px solid #e8e5dc12; }
.perspective-network-row:last-of-type { border-bottom: 0; padding-bottom: 8px; }
.perspective-tag { font-size: .625rem; color: #d8bf8a; border: 1px solid #d8bf8a33; padding: 5px 10px; border-radius: 7px; margin-left: auto; white-space: nowrap; }
.perspective-tag-green { color: #9ac9ab; border-color: #9ac9ab33; }
.perspective-next { display: flex; flex-direction: column; align-items: flex-start; padding-top: 26px; gap: 10px; }
.perspective-next > span { font-size: .6875rem; color: #95aa98; }
.perspective-next > strong { font-size: clamp(1.875rem, 3vw, 2.375rem); letter-spacing: -.04em; font-weight: 500; line-height: 1.15; }
.perspective-next > b { color: #d8bf8a; font-size: .875rem; font-weight: 400; }
.perspective-client-progress { display: flex; align-items: center; justify-content: space-between; margin-top: 30px; font-size: .6875rem; color: #95aa98; }
.perspective-client-progress b { font-weight: 400; color: #d8bf8a; }
.perspective-footnote { font-size: .6875rem; color: #6d796e; margin-top: 32px; line-height: 1.6; }
@keyframes journeyAppear { from { opacity: 0; transform: translateY(9px); } to { opacity: 1; transform: none; } }
@keyframes perspectiveProgress { from { transform: scaleX(0); } to { transform: scaleX(1); } }
@media (max-width: 760px) {
  .op.journey-section, .actors.perspective-section { padding-block: 78px; }
  .journey-heading, .perspective-heading { margin-bottom: 36px; }
  .journey-heading h2, .perspective-heading h2 { font-size: clamp(2rem, 7.8vw, 3.5rem); }
  .journey-heading > p:last-child, .perspective-heading > p:last-child { font-size: .875rem; }
  .journey-nav { gap: 10px; }
  .journey-tab { display: flex; flex-direction: column; gap: 6px; }
  .journey-tab b { font-size: .875rem; }
  .journey-tab small { display: none; }
  .journey-track { margin-bottom: 20px; }
  .journey-context { padding: 18px; gap: 10px; }
  .journey-context > div > span { display: none; }
  .journey-context b { font-size: .8125rem; }
  .journey-unit { gap: 8px; font-size: .625rem; }
  .journey-unit > b { font-size: 1.25rem; }
  .journey-panel { grid-template-columns: 1fr; gap: 30px; padding: 25px 20px; min-height: 550px; align-content: start; }
  .journey-story h3 { font-size: 1.75rem; }
  .journey-person { margin-top: 20px; }
  .journey-caption { margin-bottom: 8px; }
  .journey-evidence { border-top: 1px solid #f4f1e715; padding-top: 22px; }
  .journey-timeline li { gap: 12px; padding: 15px 0; }
  .journey-timeline b { font-size: .8125rem; }
  .journey-timeline li > div > span { font-size: .6875rem; }
  .perspective-nav { gap: 5px; margin-bottom: 28px; padding-bottom: 16px; }
  .perspective-tab { flex: 1; padding: 13px 5px; gap: 8px; flex-direction: column; font-size: .6875rem; border-radius: 10px; }
  .perspective-tab .i { width: 17px; height: 17px; }
  .perspective-panel { grid-template-columns: 1fr; min-height: 0; gap: 30px; }
  .perspective-number { margin-bottom: 14px; }
  .perspective-intro h3 { font-size: 1.875rem; }
  .perspective-intro > p { font-size: .875rem; margin-top: 14px; }
  .perspective-access { margin-top: 18px; }
  .perspective-product { padding: 22px 20px 0; }
  .perspective-product > footer { margin-left: -20px; margin-right: -20px; padding-inline: 20px; }
  .perspective-product header b { font-size: .8125rem; }
  .perspective-project-monogram { width: 34px; height: 34px; }
  .perspective-project, .perspective-network-row { gap: 10px; }
  .perspective-product h4 { font-size: .8125rem; }
  .perspective-tag { padding: 4px 7px; font-size: .5625rem; }
  .perspective-footnote { margin-top: 22px; }
}
@media (prefers-reduced-motion: reduce) {
  .journey-panel, .perspective-panel, .perspective-progress > i { animation: none; }
  .journey-track #op-fill, .journey-tab, .perspective-tab { transition: none; }
}
