.project-live{padding-top:0!important}.project-visual{position:relative;height:auto;aspect-ratio:4/3;overflow:hidden;border:1px solid #ffffff1c;background:#151718;isolation:isolate}.project-visual>img{width:100%;height:100%;object-fit:cover;display:block;transition:transform 1s cubic-bezier(.16,1,.3,1),filter .8s;transform-origin:var(--focus-x,50%) var(--focus-y,50%)}.project-live.is-focused .project-visual>img{transform:scale(1.72);filter:brightness(.62)}.project-hotspot{position:absolute;z-index:4;left:var(--x);top:var(--y);width:42px;height:42px;transform:translate(-50%,-50%);border:1px solid #f5df25;border-radius:50%;background:#111b;color:#f5df25;display:grid;place-items:center;cursor:pointer;transition:opacity .35s,transform .35s,background .35s}.project-hotspot i{position:absolute;inset:-9px;border:1px solid #f5df2570;border-radius:50%;animation:projectPulse 2s ease-out infinite}.project-hotspot b{font-size:10px}.project-hotspot:hover,.project-hotspot:focus-visible{background:#f5df25;color:#101111;transform:translate(-50%,-50%) scale(1.12)}.project-live.is-focused .project-hotspot{opacity:0;pointer-events:none}.project-spec{position:absolute;z-index:5;inset:auto 18px 18px 18px;padding:24px;background:#0b0d0ee8;border:1px solid #f5df2545;backdrop-filter:blur(20px);color:#fff;opacity:0;transform:translateY(25px);pointer-events:none;transition:opacity .55s,transform .65s cubic-bezier(.16,1,.3,1)}.project-live.is-focused .project-spec{opacity:1;transform:none;pointer-events:auto}.project-spec small{color:#f5df25;font-size:10px;letter-spacing:.15em}.project-spec h3{margin:10px 0 12px!important;font-size:clamp(25px,2.4vw,35px)!important}.project-spec ul{display:grid;gap:7px;margin:0;padding-left:18px;color:#c9cdcd;font-size:13px;line-height:1.35}.project-reset{margin-top:18px;padding:10px 0;color:#f5df25;font-size:10px;letter-spacing:.12em;border-bottom:1px solid #f5df2550}.project-live>h3{font-size:clamp(20px,2vw,28px)!important;margin-top:15px!important}.project-live>span{position:absolute;z-index:6;top:15px;left:15px;color:#fff;background:#0b0d0ebd;border:1px solid #ffffff2b;padding:8px 10px}.project-live{position:relative}@keyframes projectPulse{0%{opacity:.9;transform:scale(.72)}75%,100%{opacity:0;transform:scale(1.55)}}
@media(max-width:760px){.project-spec{inset:auto 10px 10px;padding:20px}.project-live.is-focused .project-visual>img{transform:scale(1.55)}}
@media(prefers-reduced-motion:reduce){.project-hotspot i{animation:none}.project-visual>img,.project-spec{transition:none}}

/* Project cards open a dedicated technical hotspot view. */
.project-live .project-visual{cursor:pointer}.project-live .project-visual:after{content:'VER MODIFICACIONES  ↗';position:absolute;right:16px;bottom:16px;z-index:4;padding:12px 14px;background:#0b0d0ed9;border:1px solid #f5df2570;color:#f5df25;font:700 11px/1 Inter,sans-serif;letter-spacing:.11em;transition:background .3s,color .3s,transform .3s}.project-live .project-visual:hover:after{background:#f5df25;color:#101111;transform:translateY(-3px)}.project-live>.project-visual>.project-hotspot,.project-live>.project-visual>.project-spec{display:none}
.project-dialog{width:min(1240px,94vw);height:min(780px,90svh);max-width:none;max-height:none;padding:0;border:1px solid #ffffff24;background:#080a0a;color:#f4f5f2;overflow:hidden;box-shadow:0 40px 120px #000b}.project-dialog::backdrop{background:#030404dc;backdrop-filter:blur(12px)}.project-dialog[open]{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(300px,.72fr);animation:projectDialogIn .65s cubic-bezier(.16,1,.3,1)}.project-dialog-close{position:absolute;z-index:20;right:18px;top:18px;width:44px;height:44px;border:1px solid #ffffff2d;border-radius:50%;background:#080a0acc;color:#fff;font-size:25px;cursor:pointer;transition:background .25s,color .25s,transform .25s}.project-dialog-close:hover{background:#f5df25;color:#101111;transform:rotate(90deg)}.project-dialog-stage{position:relative;min-width:0;background:#111;overflow:hidden}.project-dialog-stage>img{width:100%;height:100%;object-fit:cover;display:block;transition:transform 1.05s cubic-bezier(.16,1,.3,1);transform-origin:var(--focus-x,50%) var(--focus-y,50%)}.project-dialog-stage.is-zoomed>img{transform:scale(1.34)}#projectDialogHotspots{position:absolute;inset:0}.project-dialog .project-hotspot{display:grid}.project-dialog .project-hotspot.is-active{background:#f5df25;color:#101111;transform:translate(-50%,-50%) scale(1.15)}.project-dialog-copy{display:flex;flex-direction:column;justify-content:center;padding:clamp(34px,5vw,76px);background:linear-gradient(145deg,#121515,#080909);border-left:1px solid #ffffff18}.project-dialog-copy>p{color:#f5df25;font-size:11px;letter-spacing:.17em}.project-dialog-copy h2{font:600 clamp(35px,4vw,62px)/.92 var(--display);letter-spacing:-.035em;margin:18px 0 22px}.project-dialog-copy>span{color:#9da3a3;font-size:14px;line-height:1.6}.project-dialog-copy ol{display:grid;gap:2px;margin:30px 0 0;padding:0;list-style:none;counter-reset:project}.project-dialog-copy li{counter-increment:project;padding:13px 10px 13px 42px;position:relative;border-top:1px solid #ffffff12;color:#c9cdcd;font-size:14px;line-height:1.35;transition:background .3s,color .3s,padding .3s}.project-dialog-copy li:before{content:'0' counter(project);position:absolute;left:8px;color:#737979;font-size:10px}.project-dialog-copy li.is-active{padding-left:48px;background:#f5df2510;color:#fff}.project-dialog-copy li.is-active:before{color:#f5df25}@keyframes projectDialogIn{from{opacity:0;transform:translateY(28px) scale(.98)}to{opacity:1;transform:none}}
@media(max-width:780px){.project-dialog{height:min(90svh,860px);overflow:auto}.project-dialog[open]{grid-template-columns:1fr;grid-template-rows:minmax(330px,48svh) auto}.project-dialog-copy{border-left:0;border-top:1px solid #ffffff18;padding:30px 24px}.project-dialog-copy h2{font-size:38px}.project-dialog-copy>span{display:none}.project-dialog-copy ol{margin-top:20px}.project-dialog-close{position:fixed}}
