/* Umbral: nivel 3, recorrido con scroll. Un escenario fijo, cuatro tomas y una planta que acompaña el camino. */
.umbral .arch-heading .button{margin-top:28px;background:#252b2b;color:#ecede9}
.um-walk{background:#111514}
.um-track{height:auto}
.um-sticky{position:relative}
.um-ch{position:relative;display:grid;grid-template-columns:1.4fr .6fr;gap:4vw;align-items:end;padding:5vw}
.um-ch img{width:100%;aspect-ratio:3/2;object-fit:cover}
.um-txt span{font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:#b7c0bb;font-weight:600}
.um-txt h3{font-size:clamp(32px,3.2vw,52px);font-weight:500;letter-spacing:-.05em;line-height:1;color:#ecede9;margin:12px 0}
.um-txt p{color:#c3cbc6;font-size:17px;max-width:360px}
.um-plan,.um-steps{display:none}
.um-pin .um-track{height:520vh}
.um-pin .um-sticky{position:sticky;top:0;height:100svh;overflow:hidden}
.um-pin .um-stage{position:absolute;inset:0}
.um-pin .um-ch{position:absolute;inset:0;display:block;padding:0;will-change:opacity,transform}
.um-pin .um-ch img{width:100%;height:100%;aspect-ratio:auto}
.um-pin .um-ch::after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#0a0d0ccc 0,#0a0d0c00 45%),linear-gradient(90deg,#0a0d0c88 0,#0a0d0c00 50%)}
.um-pin .um-txt{position:absolute;z-index:2;left:6vw;bottom:9vh;max-width:520px}
.um-pin .um-txt h3{font-size:clamp(40px,5vw,84px);color:#fff}
.um-pin .um-txt p,.um-pin .um-txt span{color:#e4e9e6}
.um-pin .um-plan{display:block;position:absolute;z-index:30;top:92px;right:5vw;color:#ecede9;background:#0a0d0c99;padding:12px 14px 8px;backdrop-filter:blur(6px)}
.um-pin .um-plan small{display:block;font-size:11px;letter-spacing:.14em;text-transform:uppercase;margin-top:4px;color:#c3cbc6}
.um-plan #um-dot{fill:#ffcf6b}
.um-pin .um-steps{display:flex;position:absolute;z-index:30;right:5vw;bottom:9vh;gap:22px;list-style:none;margin:0;padding:0}
.um-steps li{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:#aab3ae;font-weight:600;padding-bottom:8px;border-bottom:2px solid #5d6663}
.um-steps li.is-on{color:#fff;border-color:#ffcf6b}
.um-ficha{display:grid;grid-template-columns:1fr 1fr;gap:6vw;align-items:start}
.um-ficha h2{font-size:clamp(38px,4.4vw,68px);font-weight:500;letter-spacing:-.06em;line-height:.98}
.um-ficha dl{margin:0}.um-ficha dl>div{display:grid;grid-template-columns:150px 1fr;gap:20px;padding:20px 0;border-bottom:1px solid var(--line)}.um-ficha dl>div:first-child{border-top:1px solid var(--line)}
.um-ficha dt{font-size:12px;letter-spacing:.14em;text-transform:uppercase;font-weight:700;color:#252b2b;padding-top:4px}.um-ficha dd{margin:0;font-size:18px;color:#252b2b}
.um-note{grid-column:1/-1;font-size:13px}
@media(max-width:900px){.um-ch{display:block;padding:36px 22px 10px}.um-txt{margin-top:18px}.um-pin .um-txt{left:22px;right:22px;bottom:96px;max-width:none}.um-pin .um-txt h3{font-size:36px}.um-pin .um-plan{top:70px;right:16px;transform:scale(.8);transform-origin:top right}.um-pin .um-steps{left:22px;right:22px;bottom:34px;gap:14px;justify-content:space-between}.um-steps li{font-size:10.5px;letter-spacing:.06em}.um-ficha{display:block}.um-ficha dl{margin-top:30px}.um-ficha dl>div{grid-template-columns:1fr;gap:4px}.um-ficha h2{font-size:38px}}
.umbral .arch-heading h1{font-size:clamp(52px,6vw,96px);white-space:nowrap}@media(max-width:900px){.umbral .arch-heading h1{font-size:64px}}
.um-ficha .button{margin-top:26px;background:#252b2b;color:#ecede9;display:inline-block}.um-hint{display:none}.um-pin .um-hint{display:block;position:absolute;z-index:30;left:6vw;top:92px;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:#e4e9e6;font-weight:600}@media(max-width:900px){.um-pin .um-plan{transform:scale(.6);top:60px;right:10px}.um-pin .um-hint{left:22px;top:66px}.um-steps li{padding:10px 0}}

.um-hint{transition:opacity .4s}.um-ficha>div:first-child{grid-row:span 3}.um-ficha>dl,.um-ficha>.um-note,.um-ficha>.button{grid-column:2}.um-ficha>.um-note{margin-top:22px;max-width:480px}.um-ficha>.button{justify-self:start;margin-top:8px}@media(max-width:900px){.um-ficha>div:first-child{grid-row:auto}.um-ficha>dl,.um-ficha>.um-note,.um-ficha>.button{grid-column:auto}}

.um-cut{display:none}.um-pin .um-cut{display:block;position:absolute;top:0;bottom:0;width:2px;margin-left:-2px;z-index:25;background:#ffcf6b;box-shadow:0 0 24px 2px #ffcf6b88;opacity:0;pointer-events:none}.um-pin .um-ch{will-change:clip-path}.um-pin .um-ch img{will-change:transform}

/* Umbral v2: la planta es un dibujo sobre la imagen; la ficha, una lámina de plano */
.um-pin .um-plan{background:none;backdrop-filter:none;padding:0;filter:drop-shadow(0 1px 6px #000a)}
.um-pin .um-hint{top:auto;bottom:9vh;left:auto;right:5vw;transform:translateY(-44px)}
.um-ficha{background:#ecede9;background-image:linear-gradient(#25292a14 1px,transparent 1px),linear-gradient(90deg,#25292a14 1px,transparent 1px);background-size:40px 40px;position:relative}
.um-ficha dt,.um-ficha dd,.um-ficha .eyebrow,.um-note{font-family:ui-monospace,'SF Mono',Menlo,Consolas,monospace}
.um-ficha dd{font-size:16px}.um-ficha dt{font-size:11px}
.um-ficha dl>div{position:relative}.um-ficha dl>div::before{content:'';position:absolute;left:-18px;top:50%;width:10px;border-top:1px solid #252b2b}
.um-ficha::after{content:'ESC 1:100  ·  N ↑';position:absolute;right:5vw;top:26px;font:11px ui-monospace,Menlo,monospace;letter-spacing:.14em;color:#58615e}
.um-note{font-size:12px!important}
@media(max-width:900px){.um-ficha::after{display:none}.um-ficha dl>div::before{display:none}}

.um-ficha{row-gap:0}.um-ficha dl>div::before{top:27px}
.um-ficha .eyebrow{font-family:var(--font);margin-bottom:20px}
.um-ficha>.um-note{margin-top:30px}

/* Umbral v3: planta legible sobre cualquier foto: placa oscura, zonas rotuladas, la activa se enciende */
.um-pin .um-plan{background:#0a0d0ce6;border:1px solid #ecede955;padding:12px 14px 8px;filter:none;backdrop-filter:blur(6px)}
.um-z rect{fill:#ecede911;stroke:#ecede9;stroke-width:1;transition:fill .4s,stroke .4s}
.um-open rect{stroke-dasharray:4 3;fill:none}
.um-z text{font:600 6.5px ui-monospace,Menlo,monospace;letter-spacing:.12em;fill:#c3cbc6;text-anchor:middle;transition:fill .4s}
.um-z.is-on rect{fill:#ffcf6b33;stroke:#ffcf6b}.um-z.is-on text{fill:#ffcf6b}
.um-plan #um-route{stroke:#ecede9aa}
@media(max-width:900px){.um-pin .um-plan{transform:scale(.72);top:58px;right:8px}}
