/* ALMAR-RACK · módulos interactivos de servicio (portados de preview-interactivos.css).
   Solo se carga en Protecciones y Reparación. Todo va dentro de .ix para no afectar al resto del tema. */
.ix{padding:clamp(56px,7vw,104px) 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.ix--tint{background:var(--bg-2)}
.ix-head{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:34px}
.ix-head h2{max-width:24ch;margin-top:14px}
.ix-head .lead{margin-top:14px;max-width:62ch}
.ix-chip{flex:none;padding:8px 12px;border:1px solid var(--line-2);border-radius:999px;font:700 11px/1 var(--body);letter-spacing:.08em;text-transform:uppercase}
.ix-disclaimer{margin-top:18px;color:var(--ink-3);font-size:13px;max-width:80ch}
.ix-list{display:grid;gap:5px;margin:14px 0 0 18px;color:var(--ink-2);font-size:14px}
.ix-list li::marker{color:var(--orange)}

/* --- Selector de protecciones --- */
.ix .protection-lab{display:grid;grid-template-columns:minmax(0,1fr) minmax(340px,.85fr);gap:18px}
.ix .warehouse{position:relative;min-height:585px;border:1px solid var(--line-2);border-radius:var(--r-lg);overflow:hidden;background-color:#F7F8F6;background-image:linear-gradient(rgba(11,18,32,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(11,18,32,.045) 1px,transparent 1px);background-size:18px 18px}
.ix .plan-title{position:absolute;left:20px;right:20px;top:16px;display:flex;justify-content:space-between;padding-bottom:10px;border-bottom:2px solid var(--ink);font-size:10px;letter-spacing:.08em}
.ix .rack-row{position:absolute;left:8%;width:54%;height:44px;display:grid;grid-template-columns:repeat(4,1fr);gap:3px;padding:4px;border:2px solid #1D3557;background:#DCE4EB;box-shadow:0 2px 0 rgba(11,18,32,.1)}
.ix .rack-row i{border-left:3px solid var(--orange);border-right:3px solid var(--orange);background:repeating-linear-gradient(90deg,transparent 0 14px,rgba(11,18,32,.24) 14px 16px)}
.ix .rack-row.r1{top:14%}.ix .rack-row.r2{top:34%}.ix .rack-row.r3{top:58%}.ix .rack-row.r4{top:78%}
.ix .forklift-lane{position:absolute;left:8%;width:54%;height:54px;display:flex;align-items:center;justify-content:center;gap:18px;border-top:1px dashed #8290A1;border-bottom:1px dashed #8290A1;color:#5D6978;font-size:9px;letter-spacing:.12em}
.ix .forklift-lane span{font-size:28px;color:var(--orange)}
.ix .forklift-lane.l1{top:23%}.ix .forklift-lane.l2{top:67%}
.ix .crossing{position:absolute;left:50%;top:43%;width:12%;height:13%;display:grid;place-items:center;background:repeating-linear-gradient(90deg,#F4C430 0 8px,#fff 8px 16px);border:1px solid #B99A24;font-size:8px;font-weight:900;writing-mode:vertical-rl}
.ix .ped-route{position:absolute;right:5%;top:14%;width:19%;height:40%;display:grid;place-items:center;border:3px solid #1B7F5B;background:repeating-linear-gradient(0deg,rgba(27,127,91,.1) 0 16px,transparent 16px 30px);color:#145F45;font-size:9px;font-weight:900;letter-spacing:.08em;writing-mode:vertical-rl}
.ix .dock{position:absolute;right:4%;bottom:6%;width:25%;height:16%;display:grid;grid-template-columns:repeat(3,1fr);gap:4px;padding:7px 7px 22px;background:#263446;color:#fff;font-weight:800}
.ix .dock i{display:grid;place-items:center;border:1px solid rgba(255,255,255,.5);background:#111B29;font-style:normal;font-size:10px}
.ix .dock b{position:absolute;bottom:5px;left:0;right:0;text-align:center;font-size:8px;letter-spacing:.14em}
.ix .plan-column{position:absolute;left:66%;top:14%;width:26px;height:26px;display:grid;place-items:center;background:#8290A1;border:2px solid #1D3557}
.ix .plan-column b{position:absolute;top:100%;margin-top:3px;font-size:7px;letter-spacing:.1em;color:#5D6978}
.ix .plan-bollards{position:absolute;left:63%;top:60%;display:flex;gap:9px}
.ix .plan-bollards i{width:13px;height:13px;border-radius:50%;background:#F4C430;border:2px solid #1D3557}
.ix .plan-machine{position:absolute;right:5%;top:57%;width:19%;height:13%;display:grid;place-items:center;background:repeating-linear-gradient(45deg,#C9D1DA 0 6px,#DCE4EB 6px 12px);border:2px solid #1D3557;font-size:8px;letter-spacing:.1em;color:#1D3557}
.ix .plan-wall{position:absolute;left:3%;right:34%;bottom:2.5%;height:12px;background:repeating-linear-gradient(45deg,#1D3557 0 4px,#8290A1 4px 8px)}
.ix .plan-wall b{position:absolute;left:0;bottom:100%;margin-bottom:3px;font-size:7px;letter-spacing:.12em;color:#5D6978}
.ix .zone{position:absolute;z-index:3;left:var(--x);top:var(--y);min-height:34px;padding:8px 11px;border:2px solid #fff;border-radius:999px;background:var(--orange);color:#fff;box-shadow:0 0 0 3px rgba(194,65,0,.22),var(--sh);font-size:11px;font-weight:800;text-transform:uppercase;cursor:pointer;transform:translate(-50%,-50%);transition:transform .25s,box-shadow .25s,background .25s}
.ix .zone:hover,.ix .zone:focus-visible{transform:translate(-50%,-50%) scale(1.12)}
.ix .zone.is-active{background:var(--ink);box-shadow:0 0 0 4px rgba(11,18,32,.2),var(--sh);animation:ixZonePulse 1.8s ease-in-out infinite}
@keyframes ixZonePulse{50%{box-shadow:0 0 0 10px rgba(194,65,0,.12),0 8px 20px rgba(11,18,32,.16)}}
.ix .protection-detail{overflow:hidden;display:grid;grid-template-rows:auto 1fr;border:1px solid var(--line-2);border-radius:var(--r-lg);background:#fff;box-shadow:0 20px 50px rgba(11,18,32,.05)}
.ix .protection-image{position:relative;overflow:hidden;aspect-ratio:16/9;background:var(--ink)}
.ix .protection-image img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover;transition:opacity .26s,transform .55s var(--ease)}
.ix .protection-image img.is-changing{opacity:.35;transform:scale(1.035)}
.ix .protection-image span{position:absolute;left:16px;bottom:16px;padding:7px 10px;border-radius:5px;background:rgba(8,14,24,.84);color:#fff;font:800 10px/1.25 var(--body);letter-spacing:.08em;text-transform:uppercase}
.ix .protection-copy{display:flex;flex-direction:column;align-items:flex-start;padding:25px 30px}
.ix .protection-copy h3{margin-top:7px;font-size:clamp(1.5rem,2.4vw,2rem)}
.ix .protection-copy>p:not(.field){margin-top:10px;color:var(--ink-2)}
.ix .ix-cta{margin-top:auto;padding-top:0}
.ix .protection-copy .ix-list{margin-bottom:22px}
.ix .family-strip{display:flex;flex-wrap:wrap;gap:8px;margin-top:17px}
.ix .family-strip button{min-height:40px;padding:10px 14px;border:1px solid var(--line-2);border-radius:999px;background:#fff;color:var(--ink);font-size:12px;font-weight:750;cursor:pointer;transition:background .2s,color .2s,transform .2s}
.ix .family-strip button:hover{transform:translateY(-2px)}
.ix .family-strip button.is-active{background:var(--ink);border-color:var(--ink);color:#fff}

/* --- Secuencia de reparación --- */
.ix .repair{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--line-2);border-radius:var(--r-lg);overflow:hidden;background:#fff}
.ix .repair__stage{position:relative;isolation:isolate;display:block;min-height:0;overflow:hidden;background:#111B29}
.ix .repair__stage::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(6,13,24,.8),transparent 46%);z-index:-1}
.ix .repair__stage>img.repair-layer{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:-1;opacity:0;transform:scale(1.08);filter:blur(10px) brightness(.9);transition:opacity 1.1s var(--ease),transform 1.4s var(--ease),filter 1.1s var(--ease)}
.ix .repair__stage>img.repair-layer.is-front{opacity:1;transform:scale(1.02);filter:none;animation:ixRepairDrift 14s ease-in-out 1.4s infinite alternate}
@keyframes ixRepairDrift{from{transform:scale(1.02)}to{transform:scale(1.08) translate(-1%,-1%)}}
.ix .repair-fog{position:absolute;inset:-10%;z-index:0;pointer-events:none;opacity:0;background:radial-gradient(60% 45% at 30% 60%,rgba(235,240,245,.75),transparent 70%),radial-gradient(55% 40% at 75% 40%,rgba(235,240,245,.6),transparent 70%)}
.ix .repair__stage.is-fogging .repair-fog{animation:ixRepairFog 1.4s ease-in-out}
@keyframes ixRepairFog{0%{opacity:0;transform:translateX(-6%)}40%{opacity:.85}100%{opacity:0;transform:translateX(6%)}}
.ix .repair-overlay{position:absolute;inset:0;z-index:1;pointer-events:none}
.ix .rr-tag{position:absolute;top:22px;right:22px;display:grid;place-items:center;width:56px;height:56px;border:1px solid rgba(255,255,255,.2);border-radius:50%;background:var(--ink);color:#fff;font:800 22px/1 var(--disp)}
.ix .rr-caption{position:absolute;left:25px;bottom:23px;padding:10px 14px;border-left:3px solid var(--orange);background:rgba(8,14,24,.82);color:#fff;font-size:12px;font-weight:700}
.ix .repair__copy{padding:clamp(28px,4vw,48px)}
.ix .repair__steps{display:flex;list-style:none;margin:0 0 32px;padding:0;overflow:hidden}
.ix .repair__steps li{flex:1;border-top:4px solid var(--bg-3);padding-top:10px;color:var(--ink-3);font-size:10px;font-weight:800;text-transform:uppercase}
.ix .repair__steps li.is-active{border-color:var(--orange);color:var(--orange)}
.ix .repair__slides{display:grid}
.ix .repair__slide{grid-area:1/1;opacity:0;visibility:hidden;transform:translateY(8px);transition:opacity .5s var(--ease),transform .5s var(--ease),visibility 0s .5s}
.ix .repair__slide.is-active{opacity:1;visibility:visible;transform:none;transition:opacity .6s var(--ease) .15s,transform .6s var(--ease) .15s,visibility 0s}
.ix .repair__slide h3{font-size:clamp(1.6rem,3vw,2.5rem);margin-top:12px}
.ix .repair__slide>p:not(.field){margin-top:18px;color:var(--ink-2)}
.ix .repair__safety{margin-top:18px;padding:13px 14px;border-left:3px solid var(--orange);background:var(--bg-2);font-size:13px;font-weight:600;color:var(--ink-2)}
.ix .repair__actions{display:flex;gap:10px;margin-top:30px}

@media(max-width:1080px){.ix .protection-lab{grid-template-columns:1fr}.ix .warehouse{min-height:520px}}
@media(max-width:850px){.ix-head{align-items:start}.ix-chip{display:none}}
@media(max-width:750px){.ix .repair{grid-template-columns:1fr}.ix .repair__stage{aspect-ratio:4/3}}
@media(min-width:751px){.ix .repair__stage{min-height:520px}}
@media(max-width:560px){.ix-head{margin-bottom:24px}.ix .warehouse{min-height:450px}.ix .rack-row,.ix .forklift-lane{width:58%;left:5%}.ix .ped-route{right:3%;width:20%}.ix .plan-column b,.ix .plan-wall b{display:none}.ix .plan-bollards{gap:5px}.ix .plan-bollards i{width:10px;height:10px}.ix .plan-machine{font-size:6px}.ix .zone{font-size:8px;padding:6px 8px;min-height:30px}.ix .family-strip button{font-size:11px;padding:9px 10px}.ix .protection-copy{padding:22px 20px}.ix .ix-cta{width:100%;justify-content:center}.ix .repair__copy{padding:26px 20px}.ix .repair__steps{gap:2px}.ix .repair__steps li{font-size:0}.ix .repair__steps li::before{content:counter(list-item);font-size:11px}.ix .repair__actions{display:grid}.ix .repair__actions .btn{width:100%}}
@media(prefers-reduced-motion:reduce){.ix .zone,.ix .zone.is-active,.ix .protection-image img,.ix .repair__stage>img.repair-layer,.ix .repair__slide,.ix .family-strip button{transition:none;animation:none}.ix .repair__stage.is-fogging .repair-fog{animation:none}}
