/* KEONI VGN - Instagram propio */
.kv-ig{position:relative;max-width:1240px;margin:0 auto;padding:0 0 8px}
.kv-ig-pista{display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding:6px 4px 18px;outline:none}
.kv-ig-pista::-webkit-scrollbar{display:none}
.kv-ig-item{position:relative;flex:0 0 calc((100% - 28px)/3);aspect-ratio:1/1;border-radius:14px;overflow:hidden;scroll-snap-align:start;display:block;background:#111;box-shadow:0 18px 40px -22px rgba(0,0,0,.9)}
.kv-ig-item img{width:100%;height:100%;object-fit:cover;display:block;transform:scale(1.001);transition:transform 1.2s cubic-bezier(.2,.7,.2,1),filter .6s ease}
.kv-ig-item::after{content:"";position:absolute;inset:0;border-radius:inherit;box-shadow:inset 0 0 0 1px rgba(195,159,116,.28);pointer-events:none;transition:box-shadow .5s ease}
@media (hover:hover){.kv-ig-item:hover img{transform:scale(1.12)}.kv-ig-item:hover::after{box-shadow:inset 0 0 0 1.5px rgba(255,236,190,.85)}}
.kv-ig-video{position:absolute;top:12px;right:12px;width:26px;height:26px;border-radius:50%;background:rgba(0,0,0,.45);backdrop-filter:blur(6px)}
.kv-ig-video::before{content:"";position:absolute;left:10px;top:7px;border-style:solid;border-width:6px 0 6px 9px;border-color:transparent transparent transparent #fff}
.kv-ig-flecha{position:absolute;top:calc(50% - 40px);width:48px;height:48px;border:0;padding:0;background:transparent;cursor:pointer;z-index:3;filter:drop-shadow(0 2px 6px rgba(0,0,0,.7));opacity:.9}
.kv-ig-flecha::before{content:"";position:absolute;inset:0;background:#fff;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M15 4 7 12l8 8' fill='none' stroke='%23000' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M15 4 7 12l8 8' fill='none' stroke='%23000' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat}
.kv-ig-prev{left:-6px}.kv-ig-next{right:-6px}.kv-ig-next::before{transform:scaleX(-1)}
.kv-ig-flecha[disabled]{opacity:0;pointer-events:none}
.kv-ig-cta-wrap{text-align:center;margin:18px 0 0}
@media (max-width:900px){.kv-ig-item{flex-basis:calc((100% - 14px)/2)}}
@media (max-width:600px){.kv-ig-pista{padding-left:16px;padding-right:16px;scroll-padding:0 16px}.kv-ig-item{flex-basis:82%}.kv-ig-flecha{display:none}}
@media (prefers-reduced-motion:reduce){.kv-ig-pista{scroll-behavior:auto}.kv-ig-item img{transition:none}}
/* 1.1.0 · Visor dentro de la web */
.kv-ig-pista{scroll-behavior:auto}
html.kv-igv-sin-scroll{overflow:hidden}
.kv-igv{position:fixed;inset:0;z-index:99999;display:grid;place-items:center;padding:24px;opacity:0;visibility:hidden;transition:opacity .45s ease,visibility 0s linear .45s}
.kv-igv.kv-abierto{opacity:1;visibility:visible;transition:opacity .45s ease}
.kv-igv-fondo{position:absolute;inset:0;background:rgba(6,6,6,.86);-webkit-backdrop-filter:blur(14px) saturate(1.2);backdrop-filter:blur(14px) saturate(1.2)}
.kv-igv-caja{position:relative;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);width:min(1080px,100%);max-height:calc(100vh - 48px);background:#0d0d0d;border-radius:18px;overflow:hidden;box-shadow:0 0 0 1px rgba(195,159,116,.4),0 40px 90px -20px rgba(0,0,0,.9),0 0 50px rgba(214,10,24,.12);transform:scale(.94);transition:transform .55s cubic-bezier(.2,.8,.2,1)}
.kv-igv.kv-abierto .kv-igv-caja{transform:none}
.kv-igv-caja.kv-in-d{animation:kvIgvD .5s cubic-bezier(.2,.8,.2,1)}.kv-igv-caja.kv-in-i{animation:kvIgvI .5s cubic-bezier(.2,.8,.2,1)}
@keyframes kvIgvD{from{opacity:.2;transform:translateX(40px)}to{opacity:1;transform:none}}@keyframes kvIgvI{from{opacity:.2;transform:translateX(-40px)}to{opacity:1;transform:none}}
.kv-igv-foto{position:relative;margin:0;background:#000;display:grid;place-items:center;min-height:0}
.kv-igv-foto img{width:100%;height:100%;max-height:calc(100vh - 48px);object-fit:contain;display:block}
.kv-igv-play{position:absolute;width:68px;height:68px;border-radius:50%;background:rgba(0,0,0,.5);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);box-shadow:0 0 0 1.5px rgba(255,241,214,.8)}
.kv-igv-play::before{content:"";position:absolute;left:27px;top:21px;border-style:solid;border-width:13px 0 13px 20px;border-color:transparent transparent transparent #fff}
.kv-igv-info{display:flex;flex-direction:column;gap:14px;padding:26px 26px 24px;overflow:auto;color:#e9e4dc;font-size:15px;line-height:1.65}
.kv-igv-cab{display:flex;justify-content:space-between;gap:10px;align-items:baseline;border-bottom:1px solid rgba(195,159,116,.25);padding-bottom:12px}
.kv-igv-cab strong{color:#fff;letter-spacing:.04em}.kv-igv-fecha{color:#a9a197;font-size:13px}
.kv-igv-txt{margin:0;white-space:pre-line;flex:1}
.kv-igv-ir{align-self:flex-start;color:#e3ca8a !important;text-decoration:underline;text-underline-offset:4px;font-size:14px;letter-spacing:.05em}
.kv-igv-x,.kv-igv-ant,.kv-igv-sig{position:absolute;width:48px;height:48px;border-radius:50%;border:1px solid rgba(195,159,116,.6) !important;background:rgba(10,10,10,.6) !important;color:#e3ca8a;cursor:pointer;padding:0 !important;box-shadow:none !important;animation:none !important;z-index:2;transition:background .3s ease,transform .3s ease}
.kv-igv-x:hover,.kv-igv-ant:hover,.kv-igv-sig:hover{background:rgba(214,10,24,.3) !important;transform:scale(1.06)}
.kv-igv-x{top:18px;right:18px}.kv-igv-ant{left:18px;top:calc(50% - 24px)}.kv-igv-sig{right:18px;top:calc(50% - 24px)}
.kv-igv-x::before,.kv-igv-x::after{content:"";position:absolute;left:14px;top:23px;width:20px;height:1.5px;background:currentColor;transform:rotate(45deg)}.kv-igv-x::after{transform:rotate(-45deg)}
.kv-igv-ant::before,.kv-igv-sig::before{content:"";position:absolute;left:19px;top:17px;width:11px;height:11px;border-left:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg)}.kv-igv-sig::before{left:15px;transform:rotate(-135deg)}
@media (max-width:800px){.kv-igv{padding:0}.kv-igv-caja{grid-template-columns:1fr;grid-template-rows:auto minmax(0,1fr);max-height:100vh;height:100%;border-radius:0}.kv-igv-foto img{max-height:62vh}.kv-igv-ant,.kv-igv-sig{top:calc(31vh - 24px)}.kv-igv-x{top:12px;right:12px}}
@media (prefers-reduced-motion:reduce){.kv-igv,.kv-igv-caja{transition:none}.kv-igv-caja.kv-in-d,.kv-igv-caja.kv-in-i{animation:none}}
/* 1.2.0 · video en el visor, sin recuadros de foco al pulsar */
.kv-ig-pista:focus,.kv-ig-item:focus{outline:none}
.kv-ig-item:focus-visible{outline:2px solid rgba(227,202,138,.9);outline-offset:3px}
.kv-igv-foto video{width:100%;height:100%;max-height:calc(100vh - 48px);object-fit:contain;display:block;background:#000}
@media (max-width:800px){.kv-igv-foto video{max-height:62vh}}
button.kv-igv-play{border:0 !important;padding:0 !important;cursor:pointer;animation:none !important;transition:transform .3s ease}
button.kv-igv-play:hover{transform:scale(1.08)}
.kv-igv-carga{position:absolute;width:46px;height:46px;border-radius:50%;border:2px solid rgba(255,241,214,.25);border-top-color:#e3ca8a;animation:kvIgGira .8s linear infinite}
@keyframes kvIgGira{to{transform:rotate(360deg)}}
