/* ===================================================
   Páginas de trabajo (diseño nuevo) — CSS compartido
   Cada página define su composición con estilos inline
   (medidas en cqw, tomadas de la plantilla de 1414 px).
=================================================== */
.w-art{position:relative;width:100%;container-type:inline-size;color:var(--blue);font-family:'Poppins',sans-serif;overflow:hidden;}
.w-art > *,.w-art .gg > *{position:absolute;margin:0;}
.w-art .gg{position:static;}
.w-art > .w-nav{position:static;}
.w-art .w-nav > *{position:absolute;}
.w-small{font-size:.7072cqw;line-height:1;font-weight:400;color:var(--gray);text-decoration:none;white-space:nowrap;transition:opacity .2s;}
a.w-small:hover{color:var(--blue);}
.w-proj{color:var(--gray);font-size:1.584cqw;line-height:1;letter-spacing:.01em;font-weight:300;white-space:nowrap;text-align:right;}
.w-title{color:var(--gray);font-size:3.642cqw;line-height:1;font-weight:300;white-space:nowrap;text-align:right;letter-spacing:0;}
.w-txt{font-size:.9547cqw;line-height:.9476cqw;font-weight:400;color:var(--ink);white-space:nowrap;}
.w-txt.r{text-align:right;}
.w-g{font-size:1.5276cqw;line-height:1;letter-spacing:.0135em;font-weight:300;color:var(--gray);white-space:nowrap;pointer-events:none;z-index:4;}
.w-cnt{font-size:.9547cqw;line-height:1;font-weight:400;color:var(--gray);white-space:nowrap;text-align:right;}
.w-ph{border:0;padding:0;background:#222;cursor:zoom-in;overflow:hidden;z-index:2;}
.w-ph img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .45s ease;}
.w-ph:hover img{transform:scale(1.04);}
.w-ph:focus-visible{outline:2px solid var(--blue);outline-offset:3px;}
.w-ph img.fit{position:absolute;max-width:none;object-fit:fill;width:var(--iw);height:var(--ih);left:var(--il);top:var(--it);}
.w-ph.free{background:none;}
.w-ph.free img{object-fit:contain;}
.w-ph.free:hover img{transform:scale(1.03);}

/* ---------- VIDEO (Phygital) ---------- */
.vid{border:0;padding:0;background:#1a1020;border-radius:.5659cqw;overflow:hidden;cursor:pointer;z-index:2;}
.vid video{width:100%;height:100%;object-fit:cover;display:block;pointer-events:none;}
.vid .hint{position:absolute;right:.9901cqw;bottom:.9901cqw;background:var(--blue);color:#fff;font-family:'Poppins',sans-serif;font-weight:600;font-size:.8487cqw;line-height:1;padding:.4243cqw .6365cqw;opacity:0;transition:opacity .25s;}
.vid:hover .hint,.vid:focus-visible .hint{opacity:1;}
.vid:focus-visible{outline:2px solid var(--blue);outline-offset:3px;}
.player{position:fixed;inset:0;z-index:1000;background:#000;display:none;align-items:center;justify-content:center;}
.player.open{display:flex;}
.player video{width:100%;height:100%;max-height:100vh;background:#000;}
.player .x{position:absolute;top:18px;right:18px;z-index:2;width:42px;height:42px;border:0;border-radius:999px;background:rgba(255,255,255,.14);color:#fff;font-size:20px;cursor:pointer;}
.player .x:hover{background:rgba(255,255,255,.28);}
.player:fullscreen .x{display:none;}

/* ---------- GALERÍA ---------- */
.lightbox{position:fixed;inset:0;z-index:1000;background:rgba(10,10,10,.95);display:none;align-items:center;justify-content:center;padding:40px;}
.lightbox.light{background:rgba(255,255,255,.985);}
.lightbox.open{display:flex;}
.lightbox img{max-width:min(92vw,1300px);max-height:88vh;object-fit:contain;}
.lightbox button{position:fixed;background:rgba(255,255,255,.1);color:#fff;border:0;cursor:pointer;font-family:'Poppins',sans-serif;font-weight:600;display:flex;align-items:center;justify-content:center;border-radius:999px;transition:background .15s;}
.lightbox button:hover{background:rgba(255,255,255,.24);}
.lightbox.light button{background:rgba(2,18,255,.08);color:var(--blue);}
.lightbox.light button:hover{background:rgba(2,18,255,.18);}
.lb-close{top:22px;right:22px;width:42px;height:42px;font-size:20px;}
.lb-prev,.lb-next{top:50%;transform:translateY(-50%);width:48px;height:48px;font-size:20px;}
.lb-prev{left:22px;} .lb-next{right:22px;}
.lightbox.single .lb-prev,.lightbox.single .lb-next,.lightbox.single .lb-count{display:none;}
.lb-count{position:fixed;bottom:24px;left:0;right:0;text-align:center;font-size:13px;font-weight:500;color:var(--gray);}
.lightbox.light .lb-count{color:var(--blue);}

/* ---------- REVISTA ---------- */
.mag{z-index:2;}
.mag-wrap{--pw:calc(var(--ph) * var(--pr));position:relative;width:100%;height:100%;font-family:'Poppins',sans-serif;}
.stage{position:relative;width:100%;height:var(--ph);}
.book{position:absolute;top:0;left:50%;margin-left:calc(var(--pw) * -1);width:calc(var(--pw) * 2);height:100%;perspective:calc(var(--ph) * 3.2);
  transform:translateX(calc(var(--pw) * var(--s,0)));transition:transform .9s cubic-bezier(.5,.05,.2,1);}
.pg{position:absolute;top:0;width:var(--pw);height:100%;background:#fff;box-shadow:0 0 0 1px rgba(0,0,0,.06),0 .9cqw 2.6cqw rgba(0,0,0,.14);}
.mag-wrap.is-fs .pg{box-shadow:0 0 0 1px rgba(255,255,255,.06),0 10px 40px rgba(0,0,0,.6);}
.pg.L{left:0;} .pg.R{left:var(--pw);}
.pg[data-k="none"]{background:none;box-shadow:none;}
.pg[data-k="none"] img,.pg[data-k="blank"] img,.leaf [data-k="blank"] img{visibility:hidden;}
.pg img,.leaf img{width:100%;height:100%;object-fit:cover;display:block;user-select:none;-webkit-user-drag:none;}
.pg.L::after,.leaf .b::after,.pg.R::before,.leaf .f::after{content:"";position:absolute;top:0;bottom:0;width:7%;pointer-events:none;}
.pg.L::after{right:0;background:linear-gradient(to left,rgba(0,0,0,.2),transparent);}
.pg.R::before{left:0;background:linear-gradient(to right,rgba(0,0,0,.2),transparent);}
.pg[data-k="none"]::after,.pg[data-k="none"]::before{display:none;}
.leaf{position:absolute;top:0;width:var(--pw);height:100%;display:none;transform-style:preserve-3d;transition:transform .9s cubic-bezier(.5,.05,.2,1);z-index:3;}
.leaf.on{display:block;}
.leaf.fwd{left:var(--pw);transform-origin:left center;}
.leaf.fwd.go{transform:rotateY(-180deg);}
.leaf.bwd{left:0;transform-origin:right center;}
.leaf.bwd.go{transform:rotateY(180deg);}
.leaf .f,.leaf .b{position:absolute;inset:0;background:#fff;backface-visibility:hidden;-webkit-backface-visibility:hidden;box-shadow:0 0 0 1px rgba(0,0,0,.06);}
.leaf .b{transform:rotateY(180deg);}
.leaf .f::after{left:0;background:linear-gradient(to right,rgba(0,0,0,.2),transparent);}
.leaf.bwd .f::after{left:auto;right:0;background:linear-gradient(to left,rgba(0,0,0,.2),transparent);}
.leaf .b::after{left:0;background:linear-gradient(to right,rgba(0,0,0,.2),transparent);}
.leaf.bwd .b::after{left:auto;right:0;background:linear-gradient(to left,rgba(0,0,0,.2),transparent);}
.hit{position:absolute;top:0;height:100%;width:50%;background:none;border:0;padding:0;z-index:5;}
.hit.l{left:0;cursor:w-resize;} .hit.r{right:0;cursor:e-resize;}
.hit:disabled{cursor:default;}
.hit:focus-visible{outline:2px solid var(--blue);outline-offset:-2px;}
.ctrl{position:absolute;left:0;right:0;top:calc(var(--ph) + var(--cgap,0.9901cqw));display:flex;align-items:center;justify-content:center;gap:1.1315cqw;font-size:.9590cqw;font-weight:500;color:var(--blue);}
.ctrl button{font:inherit;color:inherit;background:none;border:1px solid currentColor;border-radius:999px;cursor:pointer;height:2.7em;min-width:2.7em;padding:0 1em;display:inline-flex;align-items:center;justify-content:center;gap:.5em;transition:background .15s,color .15s,opacity .15s;}
.ctrl button:hover:not(:disabled){background:var(--blue);color:#fff;}
.ctrl button:disabled{opacity:.3;cursor:default;}
.ctrl .arr{padding:0;width:2.7em;}
.ctrl .lbl{min-width:9em;text-align:center;letter-spacing:.02em;}
.mg-x{display:none;}
/* en la página: sólo se ve la tapa; al hacer clic se abre el visor */
.mag-wrap:not(.is-fs) .ctrl{display:none;}
.mag-wrap:not(.is-fs) .hit.r{left:var(--pw);right:auto;width:var(--pw);cursor:zoom-in;}
.mag-wrap:not(.is-fs) .hit.l{display:none;}
.mag-wrap:not(.is-fs) .pg.R{cursor:zoom-in;}
/* visor: la revista se agranda sobre la página, el resto baja de opacidad */
.mag-wrap.is-fs{position:fixed;inset:0;z-index:2000;width:auto;height:auto;background:rgba(255,255,255,.9);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:22px;--ph:min(72vh,calc(58vw / var(--pr) * .69984)) !important;color:var(--blue);font-size:14px;animation:mgIn .28s ease both;}
@keyframes mgIn{from{opacity:0}to{opacity:1}}
.mag-wrap.is-fs .stage{flex:none;}
.mag-wrap.is-fs .ctrl{position:static;color:var(--blue);}
.mag-wrap.is-fs .pg{box-shadow:0 0 0 1px rgba(0,0,0,.07),0 14px 50px rgba(0,0,0,.26);}
.mag-wrap.is-fs .pg[data-k="none"]{box-shadow:none;}
.mag-wrap.is-fs .mg-x{display:flex;position:absolute;top:22px;right:22px;width:42px;height:42px;border-radius:999px;border:0;background:rgba(2,18,255,.08);color:var(--blue);font-size:20px;font-family:'Poppins',sans-serif;font-weight:600;align-items:center;justify-content:center;cursor:pointer;z-index:6;transition:background .15s;}
.mag-wrap.is-fs .mg-x:hover{background:rgba(2,18,255,.18);}
@media (prefers-reduced-motion:reduce){ .book,.leaf{transition-duration:.01s;} }

@media (min-width:761px){ .w-art{margin-top:-13.154vw;} }
.page-work .top-logo{left:1.768%;}
@media (max-width:760px){ .page-work .top-logo{left:20px;} }

/* ---------- CELULAR ---------- */
@media (max-width:760px){
  .w-art{aspect-ratio:auto !important;container-type:normal;display:flex;flex-direction:column;padding:130px 20px 20px;}
  .w-art > *{position:static !important;transform:none !important;}
  .w-art .gg{display:block;margin:26px 0 8px;}
  .w-art .gg > *{position:static !important;display:inline;}
  .w-small{font-size:11px;white-space:normal;}
  .w-small.back{position:absolute !important;top:70px !important;left:20px !important;}
  .w-proj{font-size:15px;margin-top:18px;}
  .w-title{font-size:9vw;white-space:normal;margin-top:6px;}
  .w-txt{font-size:13.5px;line-height:19px;white-space:normal;margin-top:22px;max-width:420px;}
  .w-txt.r{text-align:left;}
  .w-g{font-size:21px;line-height:1.35;white-space:normal;}
  .w-g::after{content:" ";}
  .w-cnt{font-size:12px;margin-top:22px;margin-bottom:6px;}
  .w-ph{width:100% !important;height:auto !important;aspect-ratio:var(--ar);position:relative !important;left:auto !important;top:auto !important;}
  .w-ph img{height:auto;}
  .w-ph img.fit{position:static;width:100%;height:100%;object-fit:cover;object-position:var(--op);}
  .w-ph.free img{height:100%;object-fit:contain;}
  .vid{width:100% !important;height:auto !important;aspect-ratio:4/3;margin-top:26px;border-radius:6px;}
  .vid .hint{opacity:1;font-size:11px;padding:6px 8px;right:10px;bottom:10px;}
  .mag{width:100% !important;height:auto !important;margin-top:26px;}
  .mag-wrap{--ph:calc(min(66vw,300px) / var(--pr)) !important;height:auto;}
  .mag-wrap.is-fs{--ph:min(66vh,calc(45vw / var(--pr))) !important;}
  .d-only{display:none;}
  .w-nav{display:flex;justify-content:space-between;margin-top:40px;}
  .w-nav > *{position:static !important;}
}
