/* ============ Galería "Del render a la vida" (dentro del recorrido) ============ */
#gal{position:fixed;inset:0;z-index:70;background:#0e0b09;color:var(--marfil,#f3ecdd);font-family:var(--sans);display:none;flex-direction:column;opacity:0;transition:opacity .45s}
#gal.on{display:flex}#gal.vis{opacity:1}
#gal button{font:inherit;color:inherit;background:none;border:0;cursor:pointer;padding:0}
.gl-cab{flex:none;padding:calc(14px + var(--sa-t,0px)) 16px 0;display:flex;align-items:flex-start;gap:12px}
.gl-cab h2{font:500 27px/1.05 var(--serif);letter-spacing:.005em}
.gl-cab h2 small{display:block;font:400 9.5px var(--sans);letter-spacing:.3em;text-transform:uppercase;color:rgba(243,236,221,.6);margin-bottom:6px}
.gl-cab p{font-size:12px;color:rgba(243,236,221,.6);margin-top:6px;max-width:520px}
.gl-x{margin-left:auto;flex:none;width:42px;height:42px;display:grid;place-items:center;border:1px solid rgba(243,236,221,.35)!important;border-radius:2px}
.gl-x svg{width:18px;height:18px;stroke:currentColor;stroke-width:1.4;fill:none}
.gl-fil{flex:none;display:flex;gap:6px;padding:14px 16px 2px;overflow-x:auto;scrollbar-width:none}
.gl-fil::-webkit-scrollbar{display:none}
.gl-fil+.gl-fil{padding-top:6px;padding-bottom:12px;border-bottom:1px solid rgba(243,236,221,.12)}
.gl-ch{flex:none;padding:7px 12px!important;border:1px solid rgba(243,236,221,.2)!important;border-radius:2px;font-size:10px!important;letter-spacing:.18em;text-transform:uppercase;color:rgba(243,236,221,.62)!important;white-space:nowrap}
.gl-ch.on{border-color:var(--marfil,#f3ecdd)!important;color:var(--marfil,#f3ecdd)!important;background:rgba(243,236,221,.08)!important}
.gl-ch b{font-weight:400;opacity:.55;margin-left:4px}
.gl-scroll{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;padding:14px 12px calc(30px + var(--sa-b,0px))}
.gl-mos{column-width:250px;column-gap:10px}
.gl-it{break-inside:avoid;margin-bottom:10px;position:relative;display:block;width:100%;overflow:hidden;border-radius:2px;background:#1a1410;text-align:left}
.gl-it img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.gl-it .o{clip-path:inset(0 0 0 0);transition:clip-path 1.6s cubic-bezier(.7,0,.2,1)}
.gl-it.rev .o{clip-path:inset(0 0 0 100%)}
.gl-it::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(10,8,6,.78));pointer-events:none}
.gl-it .tx{position:absolute;left:10px;right:10px;bottom:9px;z-index:2}
.gl-it .tx b{display:block;font:500 15px/1.15 var(--serif)}
.gl-it .tx span{font-size:8.5px;letter-spacing:.22em;text-transform:uppercase;opacity:.7}
.gl-it .tg{position:absolute;top:8px;left:8px;z-index:2;font-size:8.5px;letter-spacing:.2em;text-transform:uppercase;padding:3px 6px;background:rgba(14,11,9,.6);border:1px solid rgba(243,236,221,.35);border-radius:2px}
.gl-it .tg i{display:inline-block;width:0;height:0;border-left:6px solid currentColor;border-top:4px solid transparent;border-bottom:4px solid transparent;margin-right:5px;vertical-align:0}
/* visor */
#gal-v{position:fixed;inset:0;z-index:72;background:#000;display:none;flex-direction:column}
#gal-v.on{display:flex}
.gv-top{flex:none;display:flex;align-items:center;gap:10px;padding:calc(10px + var(--sa-t,0px)) 12px 8px;background:linear-gradient(#000,rgba(0,0,0,0))}
.gv-tit{flex:1;min-width:0}
.gv-tit b{display:block;font:500 19px/1.1 var(--serif);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.gv-tit span{font-size:9px;letter-spacing:.24em;text-transform:uppercase;opacity:.65}
.gv-zona{flex:1;min-height:0;position:relative;display:flex;align-items:center;justify-content:center}
.gv-c{position:relative;overflow:hidden;touch-action:none;user-select:none;-webkit-user-select:none;cursor:ew-resize;--x:100%}
.gv-c img,.gv-c video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;pointer-events:none}
.gv-c .o{clip-path:inset(0 calc(100% - var(--x)) 0 0)}
.gv-c .ln{position:absolute;top:0;bottom:0;left:var(--x);width:1px;background:var(--marfil,#f3ecdd);box-shadow:0 0 10px rgba(0,0,0,.7)}
.gv-c .ln::after{content:"";position:absolute;top:50%;left:0;width:34px;height:34px;margin:-17px 0 0 -17px;border-radius:50%;border:1px solid var(--marfil,#f3ecdd);background:rgba(14,11,9,.5) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 24'%3E%3Cpath d='M14 4 4 12l10 8zM34 4l10 8-10 8z' fill='%23f3ecdd'/%3E%3C/svg%3E") center/18px no-repeat}
.gv-c .et{position:absolute;top:10px;font-size:9px;letter-spacing:.24em;text-transform:uppercase;padding:4px 8px;background:rgba(14,11,9,.62);border-radius:2px;transition:opacity .3s;pointer-events:none}
.gv-c .et.l{left:10px}.gv-c .et.r{right:10px}
.gv-c.lado{display:grid;grid-template-columns:1fr 1fr;gap:2px;cursor:default}
.gv-c.lado img,.gv-c.lado video{position:relative;clip-path:none}.gv-c.lado .o{order:-1}.gv-c.lado .ln{display:none}
@media (orientation:portrait){.gv-c.lado{grid-template-columns:1fr;grid-template-rows:1fr 1fr}}
.gv-nav{position:absolute;top:50%;margin-top:-24px;width:44px;height:48px;display:grid;place-items:center;background:rgba(14,11,9,.5)!important;border:1px solid rgba(243,236,221,.4)!important;border-radius:2px;z-index:3}
.gv-nav svg{width:18px;height:18px;stroke:currentColor;stroke-width:1.5;fill:none}
.gv-prev{left:10px}.gv-next{right:10px}
.gv-pie{flex:none;padding:8px 12px calc(10px + var(--sa-b,0px));background:linear-gradient(rgba(0,0,0,0),#000 30%)}
.gv-acc{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;align-items:center}
.gv-acc::-webkit-scrollbar{display:none}
.gv-acc .gl-ch{display:inline-flex;align-items:center;gap:6px}
.gv-acc .sep{flex:1}
.gv-ir{border-color:rgba(243,236,221,.7)!important;color:var(--marfil,#f3ecdd)!important}
.gv-tira{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;margin-top:10px;padding-bottom:2px}
.gv-tira::-webkit-scrollbar{display:none}
.gv-tira button{flex:none;height:46px;border-radius:2px;overflow:hidden;opacity:.45;outline:1px solid transparent;transition:opacity .25s}
.gv-tira button.on{opacity:1;outline-color:var(--marfil,#f3ecdd)}
.gv-tira img{height:100%;width:auto;display:block}
#b-gal{position:fixed;right:calc(12px + var(--sa-r,0px));top:calc(158px + var(--sa-t,0px));z-index:12;display:none;align-items:center;gap:8px;padding:10px 13px;border-radius:2px;font:400 9.5px var(--sans);letter-spacing:.24em;text-transform:uppercase;color:var(--marfil);border:1px solid rgba(243,236,221,.5);white-space:nowrap;background:rgba(16,12,9,.62)}
#b-gal svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.3}
body.entro #b-gal{display:flex}
body.mini-grande #b-gal{opacity:0;pointer-events:none}
@media (max-width:699px){#b-gal{right:auto;left:calc(12px + var(--sa-l,0px));top:calc(204px + var(--sa-t,0px))}} /* en el celu, debajo de Recorrido Townhouse */
.gv-top .gv-ir{flex:none}
