/* Continuous project journey */
.portfolio-page #grp-clientes>.tabla{display:block!important;perspective:1400px;max-width:1050px;margin-inline:auto}.portfolio-page .journey-card{margin:0 0 48px!important;transform-style:preserve-3d;transform:perspective(1400px) rotateX(var(--tilt,0deg)) scale(var(--scale,1));transform-origin:center center;transition:box-shadow .3s;box-shadow:0 18px 50px #15233412;will-change:transform}.portfolio-page .journey-card .project-cover{display:grid!important;grid-template-columns:1.3fr 1fr!important;align-items:stretch;min-height:360px}.portfolio-page .journey-card .editorial-card-photo{height:100%!important;min-height:360px;object-fit:cover}.portfolio-page .journey-card .project-number{display:none!important}.portfolio-page .journey-card .project-info{padding:36px!important;margin:0!important;display:flex;flex-direction:column;justify-content:center;min-width:0}.portfolio-page .project-category{display:block;font-size:12px;letter-spacing:.1em;line-height:1.7;margin-bottom:16px}.portfolio-page .project-info>b{font-size:clamp(24px,2.8vw,34px);line-height:1.22;overflow-wrap:anywhere}.portfolio-page .project-location{display:block;font-size:15px;line-height:1.65;margin:18px 0 24px}.portfolio-page .project-cue{display:block;margin-top:auto!important;padding:18px 0 0!important}.portfolio-page .catalog-more{display:none!important}.portfolio-page .project-card.page-hidden{display:block!important}.portfolio-page .editorial-hero{min-height:340px}.portfolio-page #project-viewer[open]{animation:unfold-project .5s cubic-bezier(.2,.8,.2,1)}@keyframes unfold-project{from{opacity:0;transform:perspective(1600px) rotateY(-14deg) scale(.9)}to{opacity:1;transform:perspective(1600px) rotateY(0) scale(1)}}
/* Trajectory: chapters connected by a gold spine. */
.portfolio-page .trajectory-route>.tabla{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;padding-left:28px;border-left:3px solid #e6b916}.portfolio-page .history-chapter{border:1px solid #dce1e5!important;background:#fff;border-radius:12px;overflow:hidden;margin:0!important;padding:0!important;position:relative}.portfolio-page .history-chapter>summary{padding:24px!important;display:flex;gap:18px;align-items:center;font-size:19px;line-height:1.35;min-height:112px;cursor:pointer}.portfolio-page .history-chapter .route-number{font:700 32px 'IBM Plex Mono',monospace;color:#b18b0c}.portfolio-page .history-chapter[open]{grid-column:1/-1;background:#f8fafb;border-top:4px solid #f5c518!important}.portfolio-page .history-chapter .chips{padding:0 24px 24px!important}.portfolio-page .history-chapter .chip{max-width:100%;min-width:0}.portfolio-page .history-chapter li{font-size:15px;line-height:1.8;padding-block:12px}.portfolio-page .history-chapter.is-current{box-shadow:0 8px 30px #1b243010}.viewer-description p{line-height:1.8!important}.viewer-description h2{margin:16px 0 24px!important}.viewer-stage{overflow:hidden}
/* Foundation reading rhythm */
body[data-foundation] .foundation-intro{padding-block:clamp(72px,9vw,112px) 48px!important}body[data-foundation] .foundation-intro h1{margin:18px 0 28px;line-height:1.12}body[data-foundation] p{line-height:1.85;max-width:76ch}body[data-foundation] #ecko{padding-top:28px}body[data-foundation] #ecko p{margin-bottom:28px}body[data-foundation] .soil-feature{margin-top:28px}body[data-foundation] .proy p{margin-top:18px;margin-bottom:26px}body[data-foundation] .wrap{padding-inline:clamp(24px,4vw,60px)}
@media(max-width:700px){.portfolio-page .journey-card{margin-bottom:28px!important}.portfolio-page .journey-card .project-cover{display:flex!important;min-height:0}.portfolio-page .journey-card .editorial-card-photo{height:240px!important;min-height:0}.portfolio-page .journey-card .project-info{padding:24px!important}.portfolio-page .project-info>b{font-size:25px}.portfolio-page .trajectory-route>.tabla{grid-template-columns:1fr;padding-left:14px;gap:14px}.portfolio-page .history-chapter>summary{padding:20px!important;font-size:18px}.portfolio-page .history-chapter .chips{padding:0 18px 20px!important}body[data-foundation] .foundation-intro{padding-top:70px!important}body[data-foundation] .foundation-intro h1{font-size:clamp(34px,9vw,46px)}body[data-foundation] p{font-size:16px;line-height:1.85}.viewer-description{padding:26px!important}}
@media(prefers-reduced-motion:reduce){.portfolio-page .journey-card{transform:none!important;will-change:auto}.portfolio-page #project-viewer[open]{animation:none}}
/* Vertical carousel: stable panels, native scrolling, no rotation or zoom. */
.portfolio-page #grp-clientes>.vertical-carousel{display:block!important;height:min(720px,76dvh);min-height:430px;overflow-y:auto;overflow-x:hidden;scroll-snap-type:y mandatory;scroll-behavior:auto;perspective:none!important;position:relative;scrollbar-width:thin;scrollbar-color:#b59a32 #e8edf0;border-radius:10px;-webkit-overflow-scrolling:touch}.portfolio-page .vertical-carousel .journey-card{height:100%;min-height:100%;box-sizing:border-box;margin:0!important;border-radius:0;scroll-snap-align:start;scroll-snap-stop:always;transform:none!important;transition:none!important;will-change:auto;box-shadow:none}.portfolio-page .vertical-carousel .project-cover{height:100%;min-height:0!important}.portfolio-page .vertical-carousel .editorial-card-photo{min-height:0!important;object-fit:cover}.vertical-status{display:flex;justify-content:space-between;gap:18px;max-width:1050px;margin:22px auto 12px;font-size:13px;color:#576471}.vertical-status span{font-variant-numeric:tabular-nums;color:#826709}.vertical-carousel:focus-visible{outline:3px solid #e6b916;outline-offset:4px}.portfolio-page #project-viewer[open]{animation:none!important;transform:none!important}@media(max-width:700px){.portfolio-page #grp-clientes>.vertical-carousel{height:74dvh;min-height:440px}.portfolio-page .vertical-carousel .project-cover{display:grid!important;grid-template-columns:1fr!important;grid-template-rows:48% 52%;gap:0}.portfolio-page .vertical-carousel .editorial-card-photo{height:100%!important;width:100%;object-fit:cover}.portfolio-page .vertical-carousel .project-info{padding:20px 24px!important;justify-content:flex-start;overflow:auto}.portfolio-page .vertical-carousel .project-info>b{font-size:clamp(20px,5.5vw,26px)}.portfolio-page .vertical-carousel .project-category{font-size:11px;margin-bottom:10px}.portfolio-page .vertical-carousel .project-location{font-size:13px;margin:10px 0 12px}.portfolio-page .vertical-carousel .project-cue{padding-top:10px!important;font-size:14px}}
