/* Una lámina arquitectónica que se recorre: retrato central y tres capítulos. */
.lore-journey{--lore-rule:#ad938266;--lore-accent:#835850;--lore-muted:#8b796e;position:relative;height:350svh;background:#f8f5f0;color:#382c27;border-top:1px solid var(--lore-rule);isolation:isolate;scroll-margin-top:0!important}
.lore-sticky{position:sticky;top:0;height:100svh;min-height:680px;overflow:hidden;perspective:1400px}
.lore-guides{position:absolute;inset:0;pointer-events:none;display:flex;justify-content:space-between;margin:0 17%;z-index:-1}.lore-guides i{height:100%;border-left:1px solid #b19b861b}.lore-guides:after{content:"";position:absolute;left:-25.75%;right:-25.75%;top:25%;border-top:1px solid #b19b8622}
.lore-heading{position:absolute;left:6.5%;right:8%;top:7%;display:flex;justify-content:space-between;align-items:end;gap:30px}.lore-heading .eyebrow{margin-bottom:17px;color:var(--lore-accent);font-size:10px}.lore-heading h2{font:italic 400 clamp(34px,3.6vw,54px)/1.13 var(--display);letter-spacing:-.045em}.lore-heading h2 em{font-style:inherit;color:#af7c74}.lore-heading>p{font-size:12px;color:var(--lore-muted);line-height:1.8;margin-bottom:6px;max-width:245px}
.lore-watermark{position:absolute;left:50%;top:27%;translate:-50% 0;font:400 clamp(100px,14vw,210px)/1 var(--body);letter-spacing:-.07em;color:transparent;-webkit-text-stroke:1px #b29b803a;pointer-events:none;white-space:nowrap;z-index:-1}
.lore-portrait{position:absolute;bottom:9%;left:50%;width:min(32vw,460px);height:64%;margin:0;translate:-50% 0;transform-origin:50% 85%;will-change:transform;z-index:1;pointer-events:none;display:flex;align-items:end;justify-content:center}
.lore-portrait img{width:100%;height:100%;object-fit:contain;object-position:50% 100%;filter:drop-shadow(14px 18px 15px #59443315);mask-image:linear-gradient(#000 85%,transparent 100%)}
.lore-portrait:not(.has-cutout) img{object-fit:cover;object-position:50% 15%;height:93%;border-radius:48% 48% 0 0;mask-image:linear-gradient(#000 75%,transparent 100%)}
.lore-portrait-orbit{position:absolute;width:115%;aspect-ratio:1;top:14%;border:1px solid #bda58c44;border-radius:50%;z-index:-1}.lore-portrait-orbit:before{content:"";position:absolute;inset:7%;border:1px dashed #bda58c55;border-radius:50%}.lore-portrait-orbit:after{content:"+";position:absolute;top:12%;right:12%;font-size:25px;font-weight:300;color:#af7c74;background:#f8f5f0;padding:0 4px}
.lore-portrait figcaption{position:absolute;left:50%;bottom:-2%;translate:-50% 0;text-align:center;white-space:nowrap;color:#382c27}.lore-portrait figcaption strong{display:block;font:italic 400 clamp(22px,2.1vw,31px)/1.3 var(--display);letter-spacing:-.03em}.lore-portrait figcaption span{display:block;margin-top:7px;font-size:8px;text-transform:uppercase;letter-spacing:.11em;color:var(--lore-muted)}
.lore-panels{position:absolute;inset:31% 0 14%}.lore-chapter{position:absolute;inset:0}.lore-chapter[hidden]{display:none}.lore-card{position:absolute;top:0;width:25.5%;max-width:365px;padding:23px 0 0;border-top:1px solid var(--lore-rule);background:linear-gradient(90deg,#f8f5f0f5,#f8f5f000);z-index:2}.lore-card:before{content:"+";position:absolute;left:-5px;top:-11px;font-size:19px;font-weight:300;line-height:1;color:#af7c74}.lore-card-left{left:6.5%}.lore-card-right{right:8%;top:7%}.lore-card-index{display:block;font:500 9px/1.6 var(--body);letter-spacing:.13em;text-transform:uppercase;color:var(--lore-accent);margin-bottom:22px}.lore-card h3{font:italic 400 clamp(26px,2.6vw,39px)/1.17 var(--display);letter-spacing:-.04em;margin:0 0 24px}.lore-card h3 em{font-style:inherit;color:#af7c74}.lore-card>p{font-size:13px;line-height:1.85;color:#7c6a60;margin-bottom:17px;max-width:33ch}.lore-card-foot{display:block;font-size:8px;text-transform:uppercase;letter-spacing:.08em;border-top:1px solid var(--lore-rule);padding-top:16px;margin-top:23px;color:var(--lore-accent)}
.lore-stat{border-bottom:1px solid #bda58c44;padding:0 0 18px;margin-bottom:20px}.lore-stat strong{font:italic 400 clamp(45px,4.7vw,68px)/1 var(--display);letter-spacing:-.04em}.lore-stat strong span{font:400 10px/1 var(--body);text-transform:uppercase;letter-spacing:.06em;margin-left:12px}.lore-stat p{font-size:12px;line-height:1.7;color:var(--lore-muted);max-width:28ch;margin-top:10px}.lore-studio{color:var(--lore-accent);text-decoration:none;font-size:10px}
.lore-skills,.lore-expertise{list-style:none;margin:0;padding:0}.lore-skills li{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid #bda58c44;padding:13px 0}.lore-skills li>div{display:flex;align-items:center;gap:10px;font-size:13px;font-weight:450}.lore-skills li small{display:block;font-size:9px;font-weight:350;line-height:1.6;color:var(--lore-muted);margin-top:4px}.lore-software-mark{width:30px;height:32px;display:grid;place-items:center;border:1px solid #bda58c77;font-size:12px;color:var(--lore-accent);flex-shrink:0}.lore-rating{text-align:right;flex-shrink:0}.lore-stars{position:relative;display:inline-block;font:400 15px/1.4 Arial,sans-serif;letter-spacing:2px;color:#d5c9bc;white-space:nowrap}.lore-stars-fill{position:absolute;inset:0 auto 0 0;width:0;overflow:hidden;color:#a87562;white-space:nowrap}.lore-rating small{font-size:8px!important;margin-top:0!important}
.lore-expertise li{display:flex;gap:18px;font-size:13px;line-height:1.5;border-top:1px solid #bda58c44;padding:13px 0}.lore-expertise li>span{color:#a78676;font-size:9px;padding-top:3px;min-width:15px}
.lore-education{display:flex;gap:17px;padding:20px 0;border-top:1px solid #bda58c44}.lore-school{font:500 12px/1 var(--body);letter-spacing:.08em;min-width:43px;height:43px;border:1px solid #ad938277;display:grid;place-items:center;color:var(--lore-accent)}.lore-education h4{margin:0 0 7px;font:400 16px/1.4 var(--body)}.lore-education p{font-size:11px;line-height:1.6;color:var(--lore-muted)}.lore-education small{display:block;font-size:9px;line-height:1.7;color:var(--lore-accent);margin-top:9px}.lore-project-link{display:flex;justify-content:space-between;align-items:center;margin-top:20px;border:1px solid #83585077;padding:13px 15px;font-size:11px;text-decoration:none;color:var(--lore-accent)}
.lore-chapter-nav{position:absolute;right:20px;top:47%;display:flex;flex-direction:column;gap:20px;z-index:4}.lore-chapter-nav button{border:0;background:transparent;font:400 8px/1.5 var(--body);color:#a89788;padding:0;display:flex;align-items:center;gap:8px;writing-mode:vertical-rl}.lore-chapter-nav button>span{writing-mode:horizontal-tb;font-size:9px}.lore-chapter-nav button[aria-current]{color:var(--lore-accent)}.lore-nav-track{position:absolute;width:1px;right:-7px;top:0;bottom:0;background:#bda58c55;overflow:hidden}.lore-nav-track i{display:block;width:1px;height:100%;transform:scaleY(0);transform-origin:top;background:#835850}
.lore-bottom{position:absolute;bottom:3%;left:6.5%;right:8%;border-top:1px solid var(--lore-rule);padding-top:17px;display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:9px;letter-spacing:.04em;color:var(--lore-muted)}.lore-scroll-cue{color:var(--lore-accent);display:flex;gap:20px}.lore-scroll-cue>span{display:inline-block}.lore-chapter-count{font-variant-numeric:tabular-nums}
@media(min-width:961px) and (max-height:760px){.lore-sticky{min-height:610px}.lore-heading{top:5%}.lore-heading h2{font-size:36px}.lore-heading .eyebrow{margin-bottom:10px}.lore-panels{top:30%;bottom:10%}.lore-card-index{margin-bottom:15px}.lore-card h3{font-size:28px;margin-bottom:16px}.lore-card>p{font-size:12px;line-height:1.7;margin-bottom:12px}.lore-skills li{padding:10px 0}.lore-expertise li{padding:10px 0}.lore-stat{padding-bottom:14px;margin-bottom:14px}.lore-stat strong{font-size:48px}.lore-portrait{height:62%;bottom:10%}.lore-education{padding:14px 0}.lore-bottom{padding-top:12px}}
/* En pantallas estrechas o con movimiento reducido, el mismo contenido se lee en flujo. */
.lore-journey.is-static{height:auto}.lore-journey.is-static .lore-sticky{position:relative;height:auto;min-height:0;overflow:visible;padding:56px 24px 28px;perspective:none}.lore-journey.is-static .lore-heading{position:relative;inset:auto;max-width:1000px;margin:0 auto;display:block}.lore-journey.is-static .lore-heading h2{font-size:clamp(36px,5vw,54px)}.lore-journey.is-static .lore-heading>p{margin-top:20px;font-size:12px}.lore-journey.is-static .lore-watermark{top:270px;font-size:clamp(70px,17vw,150px);max-width:100%;overflow:hidden}.lore-journey.is-static .lore-portrait{position:relative;bottom:auto;left:auto;translate:none;margin:35px auto 70px;width:min(340px,85%);height:390px;will-change:auto;transform:none!important}.lore-journey.is-static .lore-portrait figcaption{bottom:-26px}.lore-journey.is-static .lore-portrait figcaption span{font-size:8px}.lore-journey.is-static .lore-panels{position:relative;inset:auto;max-width:1000px;margin:0 auto}.lore-journey.is-static .lore-chapter{position:relative;inset:auto;display:grid;grid-template-columns:1fr 1fr;gap:38px;padding:25px 0 30px;scroll-margin-top:24px}.lore-journey.is-static .lore-card{position:relative;inset:auto;width:100%;max-width:none;background:none}.lore-journey.is-static .lore-card h3{font-size:34px}.lore-journey.is-static .lore-card>p{font-size:14px;max-width:42ch}.lore-journey.is-static .lore-chapter-nav{position:relative;inset:auto;flex-direction:row;justify-content:center;gap:24px;margin:10px auto 30px;max-width:1000px}.lore-journey.is-static .lore-chapter-nav button{writing-mode:horizontal-tb;font-size:10px}.lore-journey.is-static .lore-nav-track{display:none}.lore-journey.is-static .lore-bottom{position:relative;inset:auto;max-width:1000px;margin:0 auto;padding-top:20px}.lore-journey.is-static .lore-scroll-cue{display:none}
@media(max-width:600px){.lore-journey.is-static .lore-chapter{grid-template-columns:1fr;gap:32px;padding-bottom:40px}.lore-journey.is-static .lore-portrait{height:340px;width:280px;max-width:92%}.lore-journey.is-static .lore-card h3{font-size:34px}.lore-journey.is-static .lore-card>p{font-size:13px}.lore-journey.is-static .lore-skills li{padding:16px 0}.lore-stars{font-size:18px}.lore-skills li small{font-size:10px}.lore-rating small{font-size:9px!important}.lore-stat strong{font-size:55px}.lore-journey.is-static .lore-chapter-nav{gap:18px}.lore-education h4{font-size:17px}.lore-education p{font-size:12px}.lore-education small{font-size:10px}}
@media(prefers-reduced-motion:reduce){.lore-portrait{will-change:auto}}
