/* WILTL Studios: page openers. Full-bleed render slideshow, bold headline, two actions, filmstrip. */
.op{--op-gold:#ffc21f;--op-ink:#07080c;--op-cream:#fff8e6;position:relative;isolation:isolate;overflow:hidden;color:var(--op-cream);background:var(--op-ink);
  min-height:min(92vh,920px);min-height:min(92svh,920px);display:flex;flex-direction:column;justify-content:flex-end;
  font-family:Archivo,Inter,system-ui,-apple-system,"Segoe UI",Arial,sans-serif;text-align:left}
.op *{box-sizing:border-box}
.op-bg{position:absolute;inset:0;z-index:-2;margin:0}
.op-bg img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transform:scale(1.08);transition:opacity 1.2s ease,transform 7s ease-out}
.op-bg img.on{opacity:1;transform:scale(1)}
.op::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;
  background:linear-gradient(180deg,rgba(7,8,12,.55) 0%,rgba(7,8,12,.05) 28%,rgba(7,8,12,.15) 52%,rgba(7,8,12,.92) 100%),
             linear-gradient(90deg,rgba(7,8,12,.78) 0%,rgba(7,8,12,.25) 55%,rgba(7,8,12,0) 100%)}
.op-in{position:relative;width:100%;max-width:1280px;margin:0 auto;padding:84px 24px 26px}
.op-kick{display:flex;align-items:center;gap:12px;flex-wrap:wrap;font-family:"JetBrains Mono",ui-monospace,Menlo,monospace;font-size:12px;font-weight:500;letter-spacing:.2em;text-transform:uppercase;color:var(--op-gold);margin:0 0 18px}
.op-kick i{font-style:normal;color:var(--op-cream);opacity:.7}
.op-sale{display:inline-flex;align-items:center;gap:8px;background:var(--op-gold);color:var(--op-ink);border-radius:999px;padding:6px 12px;font-family:"JetBrains Mono",ui-monospace,monospace;font-weight:700;font-size:11px;letter-spacing:.14em;text-decoration:none}
.op-sale[hidden]{display:none}
.op h1{margin:0;font-weight:900;font-stretch:118%;text-transform:uppercase;line-height:.9;letter-spacing:-.005em;font-size:clamp(46px,8.4vw,108px);color:var(--op-cream);text-wrap:balance;max-width:14ch}
.op h1 span{display:block}
.op h1 .a{color:var(--op-gold)}
.op h1 span{opacity:0;transform:translateY(.35em);animation:opRise .9s cubic-bezier(.2,.8,.2,1) forwards}
.op h1 span:nth-child(2){animation-delay:.08s}.op h1 span:nth-child(3){animation-delay:.16s}
@keyframes opRise{to{opacity:1;transform:none}}
.op-lead{max-width:560px;margin:20px 0 0;font-size:clamp(16px,1.6vw,19px);line-height:1.5;color:rgba(255,248,230,.9)}
.op-act{display:flex;flex-wrap:wrap;gap:12px;margin:26px 0 0}
.op-b{display:inline-flex;align-items:center;gap:10px;min-height:48px;padding:14px 22px;border-radius:999px;font-weight:800;font-size:13px;letter-spacing:.12em;text-transform:uppercase;text-decoration:none!important;transition:transform .2s,background .2s;cursor:pointer;border:0;font-family:inherit}
.op-b:hover{transform:translateY(-2px)}
.op-b.p{background:var(--op-gold);color:var(--op-ink)!important}
.op-b.g{background:rgba(255,255,255,.08);color:var(--op-cream)!important;box-shadow:inset 0 0 0 1px rgba(255,248,230,.45);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
.op-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:40px 0 0;padding:0;list-style:none}
.op-strip button{position:relative;display:block;width:100%;padding:0;border:0;border-radius:12px;overflow:hidden;background:#000;cursor:pointer;aspect-ratio:16/9;box-shadow:inset 0 0 0 1px rgba(255,255,255,.18)}
.op-strip img{width:100%;height:100%;object-fit:cover;display:block;opacity:.55;transition:opacity .3s,transform .5s}
.op-strip button:hover img,.op-strip button.on img{opacity:1}
.op-strip button.on{box-shadow:inset 0 0 0 2px var(--op-gold)}
.op-strip small{position:absolute;left:8px;right:8px;bottom:7px;font-family:"JetBrains Mono",ui-monospace,monospace;font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:#fff;text-shadow:0 1px 6px rgba(0,0,0,.8);text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.op-strip i{position:absolute;left:0;top:0;height:3px;width:0;background:var(--op-gold)}
.op-strip button.on i{animation:opBar var(--op-t,5.5s) linear forwards}
@keyframes opBar{to{width:100%}}
.op-cue{position:absolute;right:24px;bottom:28px;font-family:"JetBrains Mono",ui-monospace,monospace;font-size:11px;letter-spacing:.24em;color:rgba(255,248,230,.7);writing-mode:vertical-rl;text-transform:uppercase}
@media(max-width:760px){
  .op{min-height:auto}
  .op-in{padding:120px 16px 20px}
  .op-kick{font-size:11px;margin-bottom:14px}
  .op-act{gap:10px}.op-b{padding:13px 18px;font-size:12px}
  .op-strip{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin-top:28px}
  .op-strip small{display:none}
  .op-cue{display:none}
}
@media(prefers-reduced-motion:reduce){.op-bg img{transition:opacity .3s;transform:none}.op h1 span{animation:none;opacity:1;transform:none}.op-strip button.on i{animation:none;width:100%}}

/* Lighting: opener shown as a full-screen intro over the simulator. */
.op.op-over{position:fixed;inset:0;z-index:99995;min-height:0;transition:opacity .45s,visibility 0s .45s}
.op.op-over.gone{opacity:0;visibility:hidden}
.op.op-over .op-in{padding-top:90px}
