/* TravisTilley.com — cinematic homepage layer
   Purpose: turn the existing evidence-driven homepage into a dramatic first-view experience
   without changing the site's underlying content, SEO structure, tools or Phase 2 workspace. */

body.elite-home{background:#07090b}
body.elite-home.cin-lock{overflow:hidden}

/* ---------- cinematic opening ---------- */
.cin-intro{position:fixed;inset:0;z-index:99999;background:#050608;color:#f4f6f7;display:grid;place-items:center;overflow:hidden;opacity:1;visibility:visible;transition:opacity .62s cubic-bezier(.4,0,.2,1),visibility .62s}
.cin-intro.is-leaving{opacity:0;visibility:hidden;pointer-events:none}
.cin-intro.is-gone{display:none}
.cin-intro:before{content:"";position:absolute;inset:-20%;background:radial-gradient(circle at 70% 48%,rgba(214,35,54,.22),transparent 27%),radial-gradient(circle at 20% 70%,rgba(104,131,146,.08),transparent 32%);filter:blur(18px);animation:cinGlow 3.2s ease-out both}
.cin-intro:after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(0deg,rgba(255,255,255,.018) 0 1px,transparent 1px 4px);mix-blend-mode:screen;opacity:.45;pointer-events:none}
.cin-intro-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:72px 72px;mask-image:linear-gradient(90deg,transparent,black 40%,black 85%,transparent);opacity:.25;transform:perspective(800px) rotateX(63deg) scale(1.8) translateY(20%);transform-origin:center bottom;animation:cinGrid 2.6s cubic-bezier(.16,1,.3,1) both}
.cin-intro-beam{position:absolute;top:-10%;bottom:-10%;width:18vw;left:-25vw;background:linear-gradient(90deg,transparent,rgba(236,49,68,.05),rgba(255,89,103,.32),rgba(255,255,255,.72),rgba(230,37,57,.12),transparent);filter:blur(18px);transform:skewX(-12deg);animation:cinBeam 2.45s .28s cubic-bezier(.65,0,.35,1) both}
.cin-intro-core{position:relative;z-index:2;width:min(1120px,calc(100% - 80px));padding:40px 0}
.cin-intro-mark{display:flex;align-items:baseline;gap:2px;font:750 21px/1 Manrope,Arial,sans-serif;letter-spacing:-.07em;margin-bottom:35px;opacity:0;animation:cinUp .55s .12s ease-out forwards}
.cin-intro-mark i{font-style:normal;color:#ef3446;font-size:28px}
.cin-intro-kicker,.cin-intro-sub{font:650 11px/1.5 'DM Sans',Arial,sans-serif;letter-spacing:.23em;color:#8f9aa3;margin:0;opacity:0;animation:cinUp .55s .28s ease-out forwards}
.cin-intro h2{margin:24px 0 22px;font:600 clamp(58px,7.6vw,116px)/.86 Manrope,Arial,sans-serif;letter-spacing:-.072em;max-width:1050px;text-transform:uppercase}
.cin-intro h2 span,.cin-intro h2 em{display:block;font-style:normal;clip-path:inset(0 100% 0 0);white-space:nowrap}
.cin-intro h2 span:nth-child(1){animation:cinWipe .72s .45s cubic-bezier(.16,1,.3,1) forwards}
.cin-intro h2 span:nth-child(2){color:#818d95;animation:cinWipe .72s .70s cubic-bezier(.16,1,.3,1) forwards}
.cin-intro h2 em{color:#ed3547;font-family:Georgia,'Times New Roman',serif;font-weight:400;text-transform:none;letter-spacing:-.06em;animation:cinWipe .72s .95s cubic-bezier(.16,1,.3,1) forwards}
.cin-intro-rule{width:min(720px,72vw);height:1px;background:#30383e;position:relative;margin:28px 0 18px;overflow:hidden}
.cin-intro-rule span{display:block;width:0;height:100%;background:linear-gradient(90deg,#d8253a,#ff6b79,#fff);animation:cinRule 1.1s 1.08s cubic-bezier(.16,1,.3,1) forwards}
.cin-intro-sub{animation-delay:1.28s}
.cin-skip{position:absolute;right:34px;bottom:30px;z-index:3;color:#aeb7bd;background:rgba(12,15,18,.72);border:1px solid #343d44;padding:11px 14px;font:650 10px/1 'DM Sans';letter-spacing:.14em;cursor:pointer;backdrop-filter:blur(10px)}
.cin-skip:hover,.cin-skip:focus-visible{color:#fff;border-color:#e54656}

/* ---------- hero: camera, atmosphere, typography ---------- */
.elite-home .e-hero{min-height:820px;height:calc(100svh - 76px);max-height:1120px;background:#07090b;overflow:hidden}
.elite-home .e-hero:before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(circle at 82% 58%,rgba(222,35,54,.13),transparent 16%),radial-gradient(circle at 70% 20%,rgba(255,114,77,.07),transparent 20%);animation:cinAmbient 8s ease-in-out infinite alternate}
.elite-home .e-hero:after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background-image:linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px),linear-gradient(rgba(255,255,255,.012) 1px,transparent 1px);background-size:90px 90px;mask-image:linear-gradient(90deg,transparent 26%,black 52%,black 100%);opacity:.38}
.elite-home .e-hero-art{inset:-2.5%;transition:transform .6s cubic-bezier(.2,.7,.2,1);transform:translate3d(var(--cin-x,0),var(--cin-y,0),0)}
.elite-home .e-hero-art img{animation:cinCamera 14s cubic-bezier(.16,1,.3,1) both;filter:saturate(.92) contrast(1.07) brightness(.92)}
.elite-home .e-hero-shade{background:linear-gradient(90deg,#07090b 0%,rgba(7,9,11,.96) 20%,rgba(7,9,11,.79) 34%,rgba(7,9,11,.22) 56%,rgba(7,9,11,.04) 77%),linear-gradient(0deg,#07090b 0%,transparent 22%,transparent 76%,rgba(7,9,11,.62) 100%)}
.elite-home .e-hero-shade:after{content:"";position:absolute;inset:0;background:linear-gradient(112deg,transparent 35%,rgba(255,255,255,.025) 46%,rgba(230,44,64,.11) 49%,transparent 53%);transform:translateX(-60%);animation:cinHeroSweep 6.8s 2.7s ease-in-out infinite}
.elite-home .e-hero-copy{padding-top:74px;max-width:650px}
.elite-home .e-eyebrow{position:relative}
.elite-home .e-hero .e-eyebrow{opacity:0;animation:cinUp .58s 2.42s ease-out forwards}
.elite-home .e-hero h1{font-size:clamp(52px,5.49vw,84px);line-height:.94;max-width:680px;margin:24px 0 28px;text-shadow:0 20px 50px rgba(0,0,0,.42);animation:none}
.elite-home .e-hero h1 br{display:block}
.elite-home .e-hero h1{clip-path:inset(0 100% 0 0);animation:cinWipe .95s 2.52s cubic-bezier(.16,1,.3,1) forwards}
.elite-home .e-hero h1 em{color:#ff4f61;text-shadow:0 0 32px rgba(230,42,61,.18)}
.elite-home .e-hero-lead{font-size:19px;line-height:1.58;color:#c0c8cd;max-width:400px;opacity:0;transform:translateY(18px);animation:cinUp .65s 2.88s ease-out forwards}
.elite-home .e-hero .e-actions,.elite-home .e-hero-identity,.elite-home .e-platform-entry{opacity:0;transform:translateY(16px);animation:cinUp .62s 3.06s ease-out forwards}
.elite-home .e-hero-identity{animation-delay:3.18s}
.elite-home .e-platform-entry{display:inline-flex;margin-top:17px;padding:9px 0;border-bottom:1px solid rgba(233,79,94,.4);color:#e7edf0;font:650 10px/1.4 'DM Sans';letter-spacing:.14em;text-decoration:none;animation-delay:3.28s}
.elite-home .e-platform-entry:hover{color:#ff5b6b;border-color:#ff5b6b}

/* visual scan line across operation */
.elite-home .e-world-controls:before{content:"";position:absolute;left:48%;right:0;top:0;height:2px;background:linear-gradient(90deg,transparent,rgba(248,77,94,.15),rgba(248,77,94,.72),transparent);box-shadow:0 0 22px rgba(243,64,82,.42);opacity:.65;animation:cinScan 8s 3.2s ease-in-out infinite}
.elite-home .e-hotspot{opacity:0;transform:translateY(12px);animation:cinPinIn .55s forwards}
.elite-home .h-one{animation-delay:3.3s}.elite-home .h-two{animation-delay:3.48s}.elite-home .h-three{animation-delay:3.66s}
.elite-home .e-hotspot>span{width:46px;height:46px;border-color:#ff7b89;background:#d72e40;box-shadow:0 0 0 8px rgba(226,49,68,.12),0 0 30px rgba(235,45,66,.25)}
.elite-home .e-hotspot b{background:rgba(9,13,16,.82);border-color:rgba(255,255,255,.24);box-shadow:0 14px 35px rgba(0,0,0,.28)}

/* right-side evidence HUD */
.cin-hero-hud{position:absolute;right:0;bottom:155px;width:350px;z-index:2;padding:17px 18px 15px;background:linear-gradient(135deg,rgba(10,14,17,.84),rgba(10,14,17,.54));border:1px solid rgba(255,255,255,.18);border-left:2px solid #d82f42;backdrop-filter:blur(14px);box-shadow:0 24px 70px rgba(0,0,0,.30);opacity:0;transform:translateX(24px);animation:cinHud .78s 3.62s cubic-bezier(.16,1,.3,1) forwards}
.cin-hud-head{display:flex;justify-content:space-between;gap:14px;padding-bottom:11px;border-bottom:1px solid rgba(255,255,255,.14);font:650 9px/1.3 'DM Sans';letter-spacing:.15em;color:#e9edf0}
.cin-hud-head i{font-style:normal;color:#df6c78}
.cin-hud-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;padding:15px 0 10px}
.cin-hud-grid>div{border-right:1px solid rgba(255,255,255,.12);padding-right:8px}.cin-hud-grid>div:last-child{border:0}
.cin-hud-grid strong{display:block;font:450 31px/1 Manrope;letter-spacing:-.06em;color:#fff}.cin-hud-grid strong small{font-size:13px;color:#ef5363;margin-left:2px}
.cin-hud-grid span{display:block;color:#91a0aa;font:500 9px/1.35 'DM Sans';margin-top:7px}
.cin-hud-signal{display:flex;align-items:center;gap:9px;color:#b7c1c7;font:650 9px/1.3 'DM Sans';letter-spacing:.11em}
.cin-hud-signal span{width:7px;height:7px;border-radius:50%;background:#e93d51;box-shadow:0 0 0 5px rgba(233,61,81,.10);animation:cinSignal 2s ease-in-out infinite}
.cin-hud-signal b{font-weight:650}
.cin-edge-copy{position:absolute;right:-3px;top:50%;z-index:2;writing-mode:vertical-rl;transform:translateY(-50%) rotate(180deg);font:650 9px/1 'DM Sans';letter-spacing:.19em;color:rgba(226,234,239,.48);opacity:0;animation:cinUp .6s 3.9s ease-out forwards}

.elite-home .e-world-caption{bottom:118px;right:380px;opacity:.82}
.elite-home .e-hero-bottom{z-index:3;background:linear-gradient(90deg,rgba(7,9,11,.62),rgba(7,9,11,.12));backdrop-filter:blur(3px)}

/* first section gets a sharper cinematic handoff */
.elite-home .p-home-paths{position:relative;background:linear-gradient(180deg,#07090b 0%,#0f151a 100%);border-top:1px solid rgba(255,255,255,.08);overflow:hidden}
.elite-home .p-home-paths:before{content:"";position:absolute;left:50%;top:-1px;width:36%;height:1px;background:linear-gradient(90deg,transparent,#e43d50,transparent);transform:translateX(-50%);box-shadow:0 0 18px rgba(228,61,80,.35)}

/* pause button should pause the new ambient movement too */
body.e-paused .e-hero-art img,body.e-paused .e-hero-shade:after,body.e-paused .e-world-controls:before,body.e-paused .cin-hud-signal span,body.e-paused .e-hero:before{animation-play-state:paused!important}

@keyframes cinGlow{from{opacity:0;transform:scale(.86)}to{opacity:1;transform:scale(1)}}
@keyframes cinGrid{from{opacity:0;transform:perspective(800px) rotateX(63deg) scale(2.15) translateY(38%)}to{opacity:.25;transform:perspective(800px) rotateX(63deg) scale(1.8) translateY(20%)}}
@keyframes cinBeam{0%{left:-28vw;opacity:0}20%{opacity:1}100%{left:112vw;opacity:0}}
@keyframes cinUp{to{opacity:1;transform:translateY(0)}}
@keyframes cinWipe{to{clip-path:inset(0 0 0 0)}}
@keyframes cinRule{to{width:100%}}
@keyframes cinCamera{0%{transform:scale(1.13) translate3d(1.6%,-1.1%,0);filter:saturate(.72) contrast(1.15) brightness(.58)}12%{filter:saturate(.9) contrast(1.08) brightness(.9)}100%{transform:scale(1.045) translate3d(0,0,0);filter:saturate(.93) contrast(1.06) brightness(.93)}}
@keyframes cinAmbient{0%{opacity:.65;filter:blur(0)}100%{opacity:1;filter:blur(4px)}}
@keyframes cinHeroSweep{0%,62%{transform:translateX(-65%);opacity:0}72%{opacity:.9}86%{transform:translateX(68%);opacity:.35}100%{transform:translateX(68%);opacity:0}}
@keyframes cinScan{0%,16%{top:8%;opacity:0}28%{opacity:.72}65%{top:83%;opacity:.5}75%,100%{top:83%;opacity:0}}
@keyframes cinPinIn{to{opacity:1;transform:translateY(0)}}
@keyframes cinHud{to{opacity:1;transform:translateX(0)}}
@keyframes cinSignal{0%,100%{opacity:.55;transform:scale(.85)}50%{opacity:1;transform:scale(1)}}

@media(max-width:1120px){.cin-hero-hud{width:310px}.elite-home .e-world-caption{right:340px}.cin-hud-grid strong{font-size:27px}.elite-home .e-hero h1{font-size:clamp(47px,5.4vw,67px)}}
@media(max-width:900px){
  .cin-intro-core{width:calc(100% - 44px)}.cin-intro h2{font-size:clamp(52px,10.4vw,88px)}
  .cin-hero-hud,.cin-edge-copy{display:none}.elite-home .e-world-caption{right:0}.elite-home .e-hero-shade{background:linear-gradient(90deg,#07090bf6 0%,#07090bc9 44%,#07090b38 78%),linear-gradient(0deg,#07090b 0%,transparent 28%,rgba(7,9,11,.22) 100%)}
}
@media(max-width:650px){
  .cin-intro-core{width:calc(100% - 34px)}.cin-intro-kicker{font-size:9px;letter-spacing:.17em}.cin-intro h2{font-size:clamp(46px,14vw,72px);line-height:.9;margin-top:19px}.cin-intro h2 span,.cin-intro h2 em{white-space:normal}.cin-intro-sub{font-size:9px;letter-spacing:.14em}.cin-skip{right:17px;bottom:18px}
  .elite-home .e-hero{height:auto;min-height:780px;max-height:none}.elite-home .e-hero-copy{padding-top:58px;max-width:100%}.elite-home .e-hero h1{font-size:clamp(40px,11.4vw,55px);line-height:.96;max-width:100%;margin-top:20px}.elite-home .e-hero-lead{font-size:16px;max-width:310px}.elite-home .e-hero-art{inset:0}.elite-home .e-hero-art img{object-position:67% center}.elite-home .e-hero-shade{background:linear-gradient(90deg,#07090bf8 0%,rgba(7,9,11,.88) 46%,rgba(7,9,11,.44) 100%),linear-gradient(0deg,#07090b 0%,transparent 26%,rgba(7,9,11,.18) 100%)}
  .elite-home .e-world-controls{opacity:.86}.elite-home .e-hotspot b{display:none}.elite-home .e-hotspot>span{width:39px;height:39px}.h-one{left:75%;top:70%}.h-two{left:66%;top:44%}.h-three{left:82%;top:27%}.elite-home .e-world-caption{display:none}.elite-home .e-hero-bottom{font-size:9px}.elite-home .e-hero-bottom>span{display:none}
}
@media(prefers-reduced-motion:reduce){
  .cin-intro{display:none!important}body.elite-home.cin-lock{overflow:auto}.elite-home .e-hero .e-eyebrow,.elite-home .e-hero h1,.elite-home .e-hero-lead,.elite-home .e-hero .e-actions,.elite-home .e-hero-identity,.elite-home .e-platform-entry,.elite-home .e-hotspot,.cin-hero-hud,.cin-edge-copy{opacity:1!important;transform:none!important;clip-path:none!important;animation:none!important}.elite-home .e-hero-art img{animation:none!important;transform:scale(1.02)}
}

/* Health / Safety / Security title sequence. A single expanding pulse, no strobe. */
.cin-intro{background:#06090c}.cin-intro:before{background:radial-gradient(ellipse at 24% 32%,#57abb522,transparent 40%),radial-gradient(ellipse at 78% 68%,#ed344b30,transparent 45%);animation:none;opacity:1}.cin-intro:after{display:none}.cin-intro-grid{opacity:.25}.cin-intro-core{width:min(1160px,88vw);padding:25px 0}.cin-intro-mark{position:absolute;top:0;right:0;font-size:35px;animation:cinUp .4s .1s forwards}.cin-intro-kicker{animation:cinUp .4s .08s forwards}.cin-intro h2.cin-impact-words{font-family:Manrope,Arial,sans-serif;font-size:clamp(58px,11vw,156px);font-weight:800;line-height:1.03;letter-spacing:-.065em;margin:30px 0 18px;max-width:none}.cin-impact-words>span{clip-path:none!important;white-space:nowrap!important;transform-origin:center;opacity:0;text-shadow:0 16px 65px #0008}.cin-impact-words>span>span{display:inline!important;clip-path:none;animation:none!important}.cin-intro h2 .cin-health{color:#8bd3dd;animation:cinImpact .65s .10s cubic-bezier(.16,1,.3,1) forwards!important}.cin-intro h2 .cin-safety{color:#f7f7f3;text-align:center;animation:cinImpact .65s .65s cubic-bezier(.16,1,.3,1) forwards!important}.cin-intro h2 .cin-security{color:#f4475f;text-align:right;animation:cinImpact .65s 1.2s cubic-bezier(.16,1,.3,1) forwards!important}.cin-mission{color:#c6d0d6;font-size:clamp(15px,1.6vw,21px);letter-spacing:.02em;opacity:0;animation:cinUp .5s 1.75s forwards}.cin-burst{position:absolute;left:66%;top:55%;width:1px;height:1px;pointer-events:none}.cin-burst:before{content:"";position:absolute;width:240px;height:240px;left:-120px;top:-120px;border:2px solid #ef5268;border-radius:50%;box-shadow:0 0 90px #e645572a,inset 0 0 80px #e645572a;animation:cinShock 1.6s 1.1s both}.cin-burst i{position:absolute;width:60px;height:2px;background:linear-gradient(90deg,#ef546a,transparent);transform-origin:0 0;animation:cinShard 1.6s 1.1s both}.cin-skip{min-height:44px;font-size:13px;letter-spacing:.03em}.elite-home #cin-replay{min-height:44px;padding:10px;border:1px solid #6d7c87;background:#111d25;color:#e3e9ed;font:500 12px system-ui;cursor:pointer}.elite-home #cin-replay:focus-visible,.cin-skip:focus-visible{outline:3px solid #8bd3dd;outline-offset:4px}
/* Hero reveals start as the opening leaves, including on repeat visits. */
.elite-home .e-hero h1,.elite-home .e-hero .e-eyebrow,.elite-home .e-hero-lead,.elite-home .e-hero .e-actions,.elite-home .e-hero-identity,.elite-home .e-platform-entry,.elite-home .e-hotspot,.elite-home .cin-hero-hud,.elite-home .cin-edge-copy{opacity:1;transform:none;clip-path:none;animation:none}.elite-home.cin-arrival .e-hero h1{animation:cinLand .75s ease-out both}.elite-home.cin-arrival .e-hero-art img{animation:cinCamera 6s ease-out both}.elite-home.cin-arrival .e-hotspot{animation:cinPinIn .6s .15s both}.elite-home.cin-lock .e-hero-art img{animation-play-state:paused}.elite-home .e-hero-shade:after,.elite-home .e-world-controls:before,.elite-home .cin-hud-signal span,.elite-home .e-hero:before{animation-iteration-count:1!important}
@keyframes cinImpact{from{opacity:0;transform:scale(1.22) translateY(20px);filter:blur(5px)}to{opacity:1;transform:scale(1) translateY(0);filter:blur(0)}}@keyframes cinShock{0%{opacity:0;transform:scale(.2)}20%{opacity:.5}100%{opacity:0;transform:scale(6)}}@keyframes cinShard{0%{opacity:0;transform:rotate(var(--a)) translateX(40px) scaleX(.1)}20%{opacity:.6}100%{opacity:0;transform:rotate(var(--a)) translateX(var(--d)) scaleX(3)}}@keyframes cinLand{from{opacity:.65;transform:translateY(18px)}to{opacity:1;transform:none}}
@media(max-width:650px){.cin-intro-core{width:88vw}.cin-intro-mark{top:-42px;font-size:25px}.cin-intro h2.cin-impact-words{font-size:clamp(46px,16vw,90px);line-height:1.22;margin:30px 0}.cin-intro-kicker{font-size:9px;max-width:85%}.cin-burst{left:55%;top:58%}.elite-home .e-hero-bottom{flex-wrap:wrap;gap:12px}.elite-home .e-hero h1{font-size:clamp(34px,9.6vw,51px)}}
@media(prefers-reduced-motion:reduce){.cin-intro{display:none!important}.elite-home .e-hero:before,.elite-home .e-hero-shade:after,.elite-home .e-world-controls:before,.elite-home .cin-hud-signal span{animation:none!important}.elite-home.cin-arrival .e-hero h1,.elite-home.cin-arrival .e-hero-art img{animation:none!important}}

.cin-intro h2.cin-impact-words>.cin-safety{color:#f7f7f3}.elite-home .p-home-paths h2{color:#f5f7f8!important}.elite-home .p-home-paths a{color:#e6edf1!important}.cin-hud-head,.cin-hud-grid strong,.cin-hud-grid span,.cin-hud-signal,.cin-edge-copy,.elite-home .e-platform-entry{font-family:"DM Sans",Arial,sans-serif}

/* Five distinct title shots: arrive, hold, recede. No strobe or rapid cuts. */
.cin-sequence .cin-intro-core{height:min(680px,82svh);width:min(1240px,92vw);display:flex;flex-direction:column;justify-content:space-between;padding:32px 0}.cin-sequence .cin-intro-mark{top:24px;right:8px}.cin-sequence .cin-intro-kicker{padding-right:75px;font-size:11px}.cin-sequence .cin-intro-grid{animation-duration:6.6s;opacity:.3}.cin-sequence .cin-mission{font-size:12px;letter-spacing:.24em;color:#bbc8d1;animation:cinUp .4s .2s forwards}.cin-stage{position:absolute;inset:70px 0 65px;perspective:1000px;isolation:isolate}.cin-intro .cin-shot{position:absolute;inset:0;width:100%;max-width:none;margin:0;display:flex;flex-direction:column;align-items:center;justify-content:center;opacity:0;transform-style:preserve-3d;animation:cinShot 1.3s var(--beat) both;pointer-events:none;line-height:1.05;text-align:center}.cin-shot:before{content:"";position:absolute;inset:-12%;z-index:-1;background:radial-gradient(ellipse at 50% 54%,var(--glow),transparent 60%);opacity:.17;filter:blur(35px);transform:translateZ(-80px)}.cin-shot:after{content:"";position:absolute;left:50%;top:50%;width:38vw;height:38vw;max-width:540px;max-height:540px;border:1px solid var(--glow);border-radius:50%;opacity:0;transform:translate(-50%,-50%);box-shadow:0 0 45px color-mix(in srgb,var(--glow) 30%,transparent);animation:cinShotRing 1.3s var(--beat) both;z-index:-1}.cin-intro .cin-stage .cin-shot .cin-word{font:850 clamp(66px,12.8vw,180px)/1 Manrope,Arial,sans-serif;letter-spacing:-.06em;white-space:nowrap;clip-path:none!important;animation:none!important;display:block;color:var(--ink);opacity:1;text-shadow:0 1px 0 #657280,0 2px 0 #56616e,0 3px 0 #45515d,0 4px 0 #343f4a,0 5px 0 #29343e,0 6px 0 #1e2933,0 9px 0 #15212c,0 16px 25px #000a,0 0 60px color-mix(in srgb,var(--glow) 30%,transparent);transform:translateZ(100px)}.cin-intro .cin-stage .cin-shot .cin-shot-number{display:block;clip-path:none!important;animation:none!important;opacity:1;font:600 12px/1 Arial,sans-serif;letter-spacing:.2em;color:var(--ink);margin-bottom:26px;transform:translateZ(40px)}.cin-caption{display:block;font:500 clamp(16px,1.8vw,24px)/1.4 'DM Sans',Arial,sans-serif;letter-spacing:0;text-transform:none;color:#eef3f5;margin-top:30px;transform:translateZ(50px)}
@keyframes cinShot{0%{opacity:0;transform:translateZ(360px) rotateX(-16deg) scale(1.18);filter:blur(5px)}18%{opacity:1;transform:translateZ(0) rotateX(0) scale(1);filter:blur(0)}26%,76%{opacity:1;transform:translateZ(0) rotateX(0) scale(1);filter:blur(0)}100%{opacity:0;transform:translateZ(-220px) rotateX(12deg) scale(.83);filter:blur(2px)}}
@keyframes cinShotRing{0%{opacity:0;transform:translate(-50%,-50%) scale(.55)}20%{opacity:.35}85%,100%{opacity:0;transform:translate(-50%,-50%) scale(2.4)}}
@media(max-width:650px){.cin-sequence .cin-intro-core{height:76svh;width:90vw;padding:20px 0}.cin-sequence .cin-intro-mark{top:15px;font-size:25px}.cin-sequence .cin-intro-kicker{font-size:9px;letter-spacing:.12em;max-width:85%}.cin-stage{inset:50px 0}.cin-intro .cin-stage .cin-shot .cin-word{font-size:clamp(40px,13vw,78px);transform:translateZ(30px);text-shadow:0 1px 0 #657280,0 2px 0 #45515d,0 3px 0 #29343e,0 5px 0 #15212c,0 12px 18px #000a,0 0 30px color-mix(in srgb,var(--glow) 25%,transparent)}.cin-caption{font-size:16px;margin-top:24px;max-width:90%;transform:translateZ(15px)}.cin-sequence .cin-mission{font-size:10px;letter-spacing:.18em}.cin-shot:after{width:70vw;height:70vw}.cin-intro .cin-stage .cin-shot .cin-shot-number{font-size:10px;margin-bottom:22px}}
@media(prefers-reduced-motion:reduce){.cin-sequence{display:none!important}.cin-shot,.cin-shot:after{animation:none!important}}

/* Colored electrical arcs and outward fragments, kept behind the readable titles. */
.cin-electric{position:absolute;inset:-10% -5%;z-index:-1;pointer-events:none;transform:translateZ(-30px)}.cin-electric svg{width:100%;height:100%;overflow:visible;filter:drop-shadow(0 0 8px var(--glow))}.cin-electric path{fill:none;stroke:var(--glow);stroke-width:2.8;stroke-linejoin:bevel;stroke-dasharray:1000;stroke-dashoffset:1000;animation:cinArc 1.3s var(--beat) both}.cin-electric .cin-branch{stroke-width:1.2;opacity:.65}.cin-fragments{position:absolute;left:50%;top:50%}.cin-fragments i{position:absolute;width:7px;height:3px;border-radius:1px;background:var(--glow);box-shadow:0 0 14px var(--glow);opacity:0;animation:cinFragments 1.3s var(--beat) both;transform-origin:0 0}.cin-stage:before{content:"";position:absolute;inset:5% -8%;background:linear-gradient(90deg,transparent 49.9%,#99b8d516 50%,transparent 50.1%),linear-gradient(0deg,transparent 49.9%,#99b8d510 50%,transparent 50.1%);border:1px solid #b4d4e412;transform:perspective(800px) rotateY(-18deg) rotateX(8deg);pointer-events:none}
@keyframes cinArc{0%{opacity:0;stroke-dashoffset:1000}15%{opacity:.75}40%{opacity:.6;stroke-dashoffset:0}75%,100%{opacity:0;stroke-dashoffset:0}}
@keyframes cinFragments{0%{opacity:0;transform:rotate(var(--angle)) translateX(90px) scale(.4)}22%{opacity:.7}75%,100%{opacity:0;transform:rotate(var(--angle)) translateX(calc(var(--distance) * 2.6)) scale(.8)}}
@media(max-width:650px){.cin-electric{inset:-25% -10%}.cin-electric path{stroke-width:3.5}.cin-fragments i{width:4px;height:2px}.cin-stage:before{inset:18% 0}}@media(prefers-reduced-motion:reduce){.cin-electric{display:none}}

/* Physical title opening v3. Everything is scoped to the intro overlay. */
.ix-opening{background:#030507;perspective:1100px;transition:opacity .2s ease,visibility .2s;isolation:isolate}.ix-opening:before,.ix-opening:after{display:none}.ix-opening.is-leaving{opacity:0;transform:none}.ix-brand{position:absolute;left:5vw;top:6vh;z-index:9;color:#e9e9e5;font:800 30px/1 Manrope,Arial}.ix-brand>span{color:#f3474c}.ix-brand small{display:block;font:500 8px/2 Arial;letter-spacing:.22em;margin-top:9px}.ix-film{position:absolute;inset:0;overflow:hidden;animation:ixCamera 5.7s linear both}.ix-atmosphere{position:absolute;inset:-20%;background:radial-gradient(ellipse at 50% 62%,#a34a201c,transparent 50%),radial-gradient(circle at 28% 33%,#d488492b 0 1px,transparent 2px),radial-gradient(circle at 72% 68%,#bc683b40 0 1px,transparent 2px);background-size:auto,137px 179px,217px 143px;animation:ixDust 5.7s linear both}.ix-shot{position:absolute;inset:0;display:grid;place-items:center;--hit:.79s;--color:#ec9b38;opacity:0;animation:ixShot 1.05s .18s linear both;perspective:1100px}.ix-health{--hit:1.85s;--color:#93f7ed;animation-delay:1.24s}.ix-security{--hit:2.88s;--color:#77cce9;animation-delay:2.3s;animation-duration:.85s}.ix-title{position:absolute;top:44%;left:50%;width:94vw;text-align:center;transform:translate(-50%,-50%);font:900 clamp(50px,13vw,190px)/1 Manrope,Arial,sans-serif;letter-spacing:-.075em;color:#e9e7df;filter:drop-shadow(0 18px 22px #000)}.ix-title span{display:block!important;white-space:nowrap!important;clip-path:polygon(0 0,100% 0,100% 47%,0 59%)!important;text-shadow:0 1px #a4a8aa,0 3px #6f7377,0 5px #40494f,0 8px #202b32;animation:ixBreakTop .39s var(--hit) ease-in both!important}.ix-title span+span{position:absolute;inset:0;clip-path:polygon(0 59%,100% 47%,100% 100%,0 100%)!important;animation-name:ixBreakBottom!important}.ix-prop{position:absolute;width:clamp(170px,28vw,400px);left:50%;top:48%;filter:drop-shadow(0 20px 25px #000b);transform-style:preserve-3d;animation:ixHelmet .82s .4s cubic-bezier(.2,.6,.3,1) both}.ix-prop svg{display:block;width:100%;overflow:visible}.ix-health .ix-prop{width:clamp(140px,22vw,290px);animation:ixAED .8s 1.47s both}.ix-security .ix-prop{width:clamp(150px,23vw,310px);animation:ixShield .75s 2.38s both}.ix-debris{position:absolute;left:50%;top:46%}.ix-debris i{position:absolute;width:calc(3px + var(--n)*.35px);height:3px;background:var(--color);box-shadow:0 0 9px var(--color);animation:ixDebris .43s var(--hit) ease-out both}.ix-ring{position:absolute;left:50%;top:46%;width:24vw;height:24vw;border:1px solid var(--color);border-radius:50%;box-shadow:0 0 30px color-mix(in srgb,var(--color) 20%,transparent);animation:ixRing .4s var(--hit) ease-out both}.ix-pulse{position:absolute;top:40%;left:0;width:100%;height:24%;overflow:visible;opacity:0;animation:ixPulse .85s 1.37s both;filter:drop-shadow(0 0 8px #61e4d4)}.ix-pulse path{fill:none;stroke:#aaffed;stroke-width:2;stroke-dasharray:1600;stroke-dashoffset:1600;animation:ixTrace .65s 1.37s ease-out both}.ix-scan{position:absolute;left:0;top:30%;width:100%;height:2px;background:linear-gradient(90deg,transparent,#bcfaff,transparent);box-shadow:0 0 22px #6ed5e5;animation:ixScan .65s 2.4s both}.ix-montage{position:absolute;inset:0;perspective:800px}.ix-montage>div{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;opacity:0;animation:ixQuick .32s var(--t) both;background:radial-gradient(ellipse at center,color-mix(in srgb,var(--c) 8%,transparent),transparent 62%)}.ix-montage span{font:850 clamp(30px,9vw,138px)/1 Manrope,Arial;letter-spacing:-.06em;color:var(--c);text-shadow:0 5px #17232c}.ix-montage small{font:500 10px/1.5 Arial;color:#9aa9af;letter-spacing:.35em;margin-top:28px}.ix-montage>div:after{content:'';position:absolute;inset:28% 10%;border-top:1px solid color-mix(in srgb,var(--c) 30%,transparent);border-bottom:1px solid color-mix(in srgb,var(--c) 15%,transparent);transform:rotate(-8deg)}.ix-blackout{position:absolute;inset:0;background:#030507;z-index:5;opacity:0;animation:ixBlackout 5.7s steps(1) both}.ix-reveal{position:absolute;inset:0;z-index:6;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;opacity:0;animation:ixReveal 1.12s 4.58s both}.ix-reveal small{color:#a1adb4;font:500 10px Arial;letter-spacing:.4em}.ix-reveal p{font:850 clamp(45px,9vw,126px)/.96 Manrope,Arial;letter-spacing:-.065em;color:#f0efea;margin:28px 0}.ix-reveal em{font-style:normal;color:#f35158}.ix-reveal>span{font:500 9px Arial;letter-spacing:.3em;color:#a1adb4}.ix-opening .cin-skip{z-index:12;background:#080c10b8}
@keyframes ixShot{0%{opacity:0;transform:scale(1.6) translateZ(150px);filter:blur(8px)}14%,84%{opacity:1;transform:none;filter:none}100%{opacity:0;transform:scale(.96);filter:blur(2px)}}
@keyframes ixHelmet{0%{opacity:0;transform:translate(135%,-155%) rotateZ(58deg) rotateY(-45deg) scale(.6)}12%{opacity:1}48%{transform:translate(-44%,-48%) rotateZ(-18deg) rotateY(-12deg) scale(1)}65%{opacity:1;transform:translate(-52%,-41%) rotateZ(-28deg) scale(1.06)}100%{opacity:0;transform:translate(-100%,48%) rotateZ(-53deg) scale(1.3)}}
@keyframes ixAED{0%{opacity:0;transform:translate(-170%,100%) rotateZ(-30deg) rotateY(40deg) scale(.55)}18%{opacity:1}48%{transform:translate(-50%,-48%) rotateZ(9deg) rotateY(-10deg) scale(1)}70%{opacity:1;transform:translate(-40%,-55%) rotateZ(4deg) scale(1.08)}100%{opacity:0;transform:translate(60%,-110%) rotateZ(32deg) scale(1.3)}}
@keyframes ixShield{0%{opacity:0;transform:translate(-50%,-50%) rotateY(85deg) scale(.35)}20%{opacity:1}62%{transform:translate(-50%,-50%) rotateY(-12deg) scale(1)}80%{opacity:1;transform:translate(-50%,-50%) rotateY(0) scale(1.13)}100%{opacity:0;transform:translate(-50%,-50%) scale(2)}}
@keyframes ixBreakTop{0%{transform:none;opacity:1}100%{transform:translate(-9%,-100%) rotate(-5deg);opacity:0}}@keyframes ixBreakBottom{0%{transform:none;opacity:1}100%{transform:translate(13%,140%) rotate(8deg);opacity:0}}
@keyframes ixDebris{0%{opacity:0;transform:rotate(var(--a)) translateX(10px)}12%{opacity:1}100%{opacity:0;transform:rotate(var(--a)) translateX(var(--d)) rotate(180deg)}}@keyframes ixRing{0%{opacity:0;transform:translate(-50%,-50%) scale(.2)}18%{opacity:.6}100%{opacity:0;transform:translate(-50%,-50%) scale(3)}}
@keyframes ixCamera{0%,13.8%,17%,32.4%,36%,50.5%,54%,100%{transform:none}14.3%,33%,51%{transform:translate(4px,-3px) rotate(.2deg)}15%,34%,52%{transform:translate(-3px,2px) rotate(-.15deg)}16%,35%,53%{transform:translate(1px,-1px)}}@keyframes ixDust{from{transform:translateY(15px);opacity:.25}to{transform:translateY(-25px);opacity:.7}}
@keyframes ixPulse{0%{opacity:0}20%,65%{opacity:.75}100%{opacity:0;transform:scaleY(1.3)}}@keyframes ixTrace{to{stroke-dashoffset:0}}@keyframes ixScan{0%{opacity:0;transform:translateY(-30px)}10%,70%{opacity:.65}100%{opacity:0;transform:translateY(35vh)}}
@keyframes ixQuick{0%{opacity:0;transform:translateZ(-130px) rotateX(12deg)}12%,75%{opacity:1;transform:none}100%{opacity:0;transform:translateZ(140px)}}@keyframes ixBlackout{0%{opacity:0}76%{opacity:1}100%{opacity:1}}@keyframes ixReveal{0%{opacity:0;transform:scale(.97)}22%,100%{opacity:1;transform:scale(1)}}
@media(max-width:650px){.ix-title{font-size:14vw}.ix-brand{top:5vh;font-size:25px}.ix-prop{width:48vw}.ix-health .ix-prop{width:40vw}.ix-security .ix-prop{width:42vw}.ix-montage small{font-size:8px;letter-spacing:.17em}.ix-reveal p{font-size:11vw}.ix-ring{width:50vw;height:50vw}.ix-montage>div:after{inset:34% 5%}}
@media(prefers-reduced-motion:reduce){.ix-opening{display:none!important}.ix-opening *{animation:none!important}}


/* ================================================================
   Physical cinematic opening v4 — Audit vs. Reality story
   SAFETY → HEALTH → SECURITY → corporate audit confidence → field reality
   → "Passing the safety audit doesn't mean your people are safe."
   ================================================================ */
.ix-opening .ix-film{animation:ixCameraV4 8.9s linear both}
.ix-opening .ix-atmosphere{animation:ixDustV4 8.9s linear both}

/* Corporate scorecard: intentionally clean, calm and reassuring before the break. */
.ix-audit{position:absolute;inset:0;z-index:3;display:grid;place-items:center;opacity:0;pointer-events:none;animation:ixAuditScene 1.48s 3.12s cubic-bezier(.16,1,.3,1) both;background:radial-gradient(circle at 50% 50%,rgba(69,141,112,.1),transparent 52%)}
.ix-audit-shell{position:relative;width:min(760px,82vw);padding:clamp(20px,3vw,34px);border:1px solid rgba(204,225,216,.2);background:linear-gradient(145deg,rgba(12,19,18,.96),rgba(7,11,12,.98));box-shadow:0 40px 110px #000,0 0 55px rgba(56,176,121,.08);overflow:hidden}
.ix-audit-shell:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(108,255,180,.035),transparent);transform:translateX(-100%);animation:ixAuditSheen 1.15s 3.22s ease-out both}
.ix-audit-head{display:flex;justify-content:space-between;align-items:center;padding-bottom:16px;border-bottom:1px solid rgba(255,255,255,.09);font:700 10px/1 Arial,sans-serif;letter-spacing:.25em;color:#d6dedd}
.ix-audit-head b{color:#6ee7a8;font-size:9px}
.ix-audit-main{display:grid;grid-template-columns:minmax(150px,.7fr) 1.3fr;gap:clamp(18px,4vw,48px);align-items:center;padding:clamp(18px,3vw,30px) 0}
.ix-audit-score strong{display:block;font:800 clamp(62px,10vw,116px)/.8 Manrope,Arial,sans-serif;letter-spacing:-.08em;color:#f1f5f3;text-shadow:0 0 35px rgba(76,214,148,.08)}
.ix-audit-score small{display:block;margin-top:15px;font:600 9px/1.3 Arial,sans-serif;letter-spacing:.22em;color:#7fc9a8}
.ix-audit-list{display:grid;gap:8px}
.ix-audit-list>div{display:grid;grid-template-columns:26px 1fr auto;gap:9px;align-items:center;padding:10px 12px;background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.055);opacity:0;transform:translateX(18px);animation:ixAuditRow .32s calc(3.28s + var(--n)*.12s) ease-out forwards}
.ix-audit-list span{display:grid;place-items:center;width:20px;height:20px;border-radius:50%;background:#155a3b;color:#8bffc4;font:800 11px Arial}
.ix-audit-list b,.ix-audit-list em{font:600 10px/1.2 Arial,sans-serif;letter-spacing:.08em;color:#d7dfdc;font-style:normal;text-transform:uppercase}
.ix-audit-list em{color:#79d9a8;font-size:9px}
.ix-audit-pass{padding:11px 14px;border:1px solid rgba(75,226,151,.28);background:rgba(28,119,76,.12);font:800 12px/1 Arial,sans-serif;letter-spacing:.28em;color:#79e7ae;text-align:center;opacity:0;animation:ixAuditPass .28s 3.84s ease-out forwards}
.ix-audit-glitch{position:absolute;inset:0;pointer-events:none;background:linear-gradient(transparent 45%,rgba(255,52,68,.1) 46%,rgba(255,52,68,.32) 47%,transparent 48%);opacity:0;animation:ixAuditGlitch .38s 4.24s steps(2,end) both}

/* Field reality: same operation, now scanned for controls rather than admired as a score. */
.ix-reality{position:absolute;inset:0;z-index:4;overflow:hidden;opacity:0;pointer-events:none;background:#040608;animation:ixRealityScene 1.62s 4.48s cubic-bezier(.16,1,.3,1) both}
.ix-reality-bg{position:absolute;inset:-3%;background:linear-gradient(90deg,rgba(3,5,7,.87),rgba(3,5,7,.34),rgba(3,5,7,.48)),url('assets/industrial-world.webp') center/cover no-repeat;filter:saturate(.65) contrast(1.12) brightness(.66);transform:scale(1.08);animation:ixRealityPush 1.62s 4.48s ease-out both}
.ix-reality-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:70px 70px;mask-image:linear-gradient(90deg,transparent,black 35%,black 100%);opacity:.28}
.ix-reality-copy{position:absolute;left:6vw;top:12vh;z-index:2;max-width:500px}
.ix-reality-copy small{display:block;color:#98a3a8;font:650 9px/1 Arial,sans-serif;letter-spacing:.28em;margin-bottom:13px}
.ix-reality-copy strong{display:block;color:#f2f0eb;font:800 clamp(32px,5vw,72px)/.93 Manrope,Arial,sans-serif;letter-spacing:-.055em}
.ix-risk-tag{position:absolute;z-index:3;width:min(250px,27vw);padding:10px 12px 10px 17px;border-left:2px solid #ff4655;background:linear-gradient(90deg,rgba(112,11,22,.62),rgba(9,12,15,.74));box-shadow:0 8px 35px #0008;opacity:0;transform:translateY(8px);animation:ixRiskTag .26s var(--tag) ease-out forwards}
.ix-risk-tag:before,.ix-risk-tag:after{content:"";position:absolute;left:-2px;width:36px;height:1px;background:#ff4655}.ix-risk-tag:before{top:0}.ix-risk-tag:after{bottom:0}
.ix-risk-tag i{position:absolute;left:-7px;top:50%;width:12px;height:12px;border:1px solid #ff4655;border-radius:50%;transform:translateY(-50%);box-shadow:0 0 15px #ff4655}
.ix-risk-tag span,.ix-risk-tag b{display:block;font-family:Arial,sans-serif;text-transform:uppercase}.ix-risk-tag span{font-size:9px;font-weight:800;letter-spacing:.14em;color:#fff}.ix-risk-tag b{font-size:7px;font-weight:600;letter-spacing:.17em;color:#ff97a1;margin-top:5px}
.ix-risk-a{left:55%;top:24%}.ix-risk-b{left:71%;top:46%}.ix-risk-c{left:38%;top:64%}.ix-risk-d{left:77%;top:72%}.ix-risk-e{left:18%;top:41%}
.ix-reality-sweep{position:absolute;z-index:2;left:-20%;top:0;width:18%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,64,82,.05),rgba(255,110,120,.24),rgba(255,255,255,.34),transparent);filter:blur(4px);transform:skewX(-8deg);animation:ixRealitySweep 1.15s 4.67s ease-in-out both}

/* Hard cut, then the philosophy. No vague slogan. */
.ix-blackout-v4{position:absolute;inset:0;z-index:5;background:#020304;opacity:0;pointer-events:none;animation:ixBlackV4 8.9s steps(1,end) both}
.ix-message{position:absolute;inset:0;z-index:6;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:7vw;opacity:0;pointer-events:none;animation:ixMessageScene 2.62s 6.14s cubic-bezier(.16,1,.3,1) both}
.ix-message small{font:700 9px/1 Arial,sans-serif;letter-spacing:.34em;color:#8b959b;opacity:0;animation:ixMessageUp .35s 6.32s ease-out forwards}
.ix-message p{margin:20px 0 22px;max-width:1180px;font:850 clamp(35px,6.25vw,92px)/.94 Manrope,Arial,sans-serif;letter-spacing:-.062em;text-transform:uppercase;color:#f2f1ec}
.ix-message p span,.ix-message p em{display:block;font-style:normal;opacity:0;transform:translateY(18px)}
.ix-message p span{animation:ixMessageUp .42s 6.45s ease-out forwards}.ix-message p em{color:#f24a55;animation:ixMessageUp .5s 6.77s ease-out forwards}
.ix-message>b{font:750 clamp(12px,1.45vw,18px)/1.3 Arial,sans-serif;letter-spacing:.12em;color:#e2e5e4;text-transform:uppercase;opacity:0;animation:ixMessageUp .42s 7.38s ease-out forwards}
.ix-message>i{margin-top:15px;font:600 8px/1 Arial,sans-serif;letter-spacing:.31em;color:#79848a;font-style:normal;opacity:0;animation:ixMessageUp .4s 7.75s ease-out forwards}

@keyframes ixCameraV4{0%,13.8%,17%,32.4%,36%,50.5%,54%,100%{transform:none}14.3%,33%,51%{transform:translate(4px,-3px) rotate(.2deg)}15%,34%,52%{transform:translate(-3px,2px) rotate(-.15deg)}16%,35%,53%{transform:translate(1px,-1px)}}
@keyframes ixDustV4{0%{transform:translateY(15px);opacity:.25}70%{transform:translateY(-25px);opacity:.68}100%{transform:translateY(-32px);opacity:.36}}
@keyframes ixAuditScene{0%{opacity:0;transform:scale(1.08);filter:blur(6px)}12%,82%{opacity:1;transform:none;filter:none}94%{opacity:1;transform:scale(.985);filter:none}100%{opacity:0;transform:scale(1.02);filter:blur(2px)}}
@keyframes ixAuditSheen{to{transform:translateX(100%)}}
@keyframes ixAuditRow{to{opacity:1;transform:none}}
@keyframes ixAuditPass{from{opacity:0;transform:scale(.96)}to{opacity:1;transform:none}}
@keyframes ixAuditGlitch{0%,100%{opacity:0}18%,34%,58%{opacity:1;transform:translateX(5px)}26%,48%,70%{opacity:.45;transform:translateX(-6px)}}
@keyframes ixRealityScene{0%{opacity:0;filter:blur(4px)}10%,86%{opacity:1;filter:none}100%{opacity:0;filter:brightness(.35)}}
@keyframes ixRealityPush{from{transform:scale(1.12)}to{transform:scale(1.025)}}
@keyframes ixRiskTag{to{opacity:1;transform:none}}
@keyframes ixRealitySweep{from{transform:translateX(0) skewX(-8deg)}to{transform:translateX(760%) skewX(-8deg)}}
@keyframes ixBlackV4{0%,68%{opacity:0}69%,100%{opacity:1}}
@keyframes ixMessageScene{0%{opacity:0;transform:scale(.985)}10%,90%{opacity:1;transform:none}100%{opacity:0;transform:scale(1.012)}}
@keyframes ixMessageUp{to{opacity:1;transform:none}}

@media(max-width:650px){
  .ix-audit-shell{width:88vw;padding:18px}.ix-audit-main{grid-template-columns:1fr;gap:16px;padding:16px 0}.ix-audit-score{display:flex;align-items:end;gap:12px}.ix-audit-score strong{font-size:56px}.ix-audit-score small{margin:0 0 5px;max-width:95px}.ix-audit-list>div{padding:8px 9px}.ix-audit-list b{font-size:9px}.ix-audit-pass{font-size:9px}
  .ix-reality-copy{left:6vw;top:9vh;max-width:74vw}.ix-reality-copy strong{font-size:36px}.ix-risk-tag{width:42vw;padding:8px 8px 8px 13px}.ix-risk-a{left:49%;top:31%}.ix-risk-b{left:55%;top:48%}.ix-risk-c{left:14%;top:66%}.ix-risk-d{left:57%;top:76%}.ix-risk-e{left:10%;top:44%}.ix-risk-tag span{font-size:7px}.ix-risk-tag b{font-size:6px}
  .ix-message{padding:8vw}.ix-message p{font-size:clamp(34px,10vw,58px);line-height:.97;margin:18px 0}.ix-message>b{font-size:10px;max-width:84vw}.ix-message small{font-size:7px;letter-spacing:.24em}
}
@media(prefers-reduced-motion:reduce){.ix-audit,.ix-audit *,.ix-reality,.ix-reality *,.ix-blackout-v4,.ix-message,.ix-message *{animation:none!important}}

/* ================================================================
   Physical cinematic opening v6 — slower hazard reveal with deeper reality push
   SAFETY → HEALTH → SECURITY → sustained audit scorecard → field reality
   → philosophy reveal. Total runtime: ~21.8 seconds.
   ================================================================ */
.ix-opening .ix-film{animation:ixCameraV6 21.8s linear both}
.ix-opening .ix-atmosphere{animation:ixDustV6 21.8s linear both}

/* Give each opening pillar room to land instead of flashing past. */
.ix-shot{--hit:1.12s;animation:ixShot 1.55s .25s linear both}
.ix-health{--hit:2.72s;animation-delay:1.85s;animation-duration:1.55s}
.ix-security{--hit:4.32s;animation-delay:3.45s;animation-duration:1.55s}
.ix-title span{animation:ixBreakTop .48s var(--hit) ease-in both!important}
.ix-title span+span{animation-name:ixBreakBottom!important}
.ix-prop{animation:ixHelmet 1.08s .48s cubic-bezier(.2,.6,.3,1) both}
.ix-health .ix-prop{animation:ixAED 1.05s 2.08s both}
.ix-security .ix-prop{animation:ixShield 1.02s 3.72s both}
.ix-pulse{animation:ixPulse 1.05s 2.02s both}
.ix-pulse path{animation:ixTrace .82s 2.02s ease-out both}
.ix-scan{animation:ixScan .9s 3.68s both}

/* Scorecard gets a true scene: entrance, sequential evidence, pass stamp, then hold. */
.ix-audit{animation:ixAuditSceneV5 5.05s 5.10s cubic-bezier(.16,1,.3,1) both;background:radial-gradient(circle at 50% 50%,rgba(69,141,112,.13),transparent 55%)}
.ix-audit-shell{width:min(820px,84vw);box-shadow:0 44px 130px #000,0 0 70px rgba(56,176,121,.1);transform-origin:center}
.ix-audit-shell:before{animation:ixAuditSheen 2.9s 5.35s ease-out both}
.ix-audit-list>div{animation:ixAuditRowV5 .5s calc(5.82s + var(--n)*.62s) cubic-bezier(.16,1,.3,1) forwards}
.ix-audit-pass{animation:ixAuditPassV5 .58s 8.55s cubic-bezier(.16,1,.3,1) forwards}
.ix-audit-glitch{animation:ixAuditGlitchV5 .54s 9.82s steps(2,end) both}

/* Field reality has time to be read, not merely glimpsed. */
.ix-reality{animation:ixRealitySceneV6 5.15s 10.18s cubic-bezier(.16,1,.3,1) both}
.ix-reality-bg{animation:ixRealityPushV6 5.15s 10.18s cubic-bezier(.16,1,.3,1) both}
.ix-risk-a{--tag:10.82s}.ix-risk-b{--tag:11.42s}.ix-risk-c{--tag:12.02s}.ix-risk-d{--tag:12.62s}.ix-risk-e{--tag:13.22s}
.ix-risk-tag{animation:ixRiskTag .4s var(--tag) ease-out forwards}
.ix-reality-sweep{animation:ixRealitySweepV6 3.4s 10.38s ease-in-out both}

/* Hold the blackout for a beat before the message. */
.ix-blackout-v4{animation:ixBlackV6 21.8s steps(1,end) both}
.ix-message{animation:ixMessageSceneV6 4.75s 15.92s cubic-bezier(.16,1,.3,1) both}
.ix-message small{animation:ixMessageUp .42s 16.22s ease-out forwards}
.ix-message p span{animation:ixMessageUp .54s 16.54s ease-out forwards}
.ix-message p em{animation:ixMessageUp .6s 17.02s ease-out forwards}
.ix-message>b{animation:ixMessageUp .5s 18.02s ease-out forwards}
.ix-message>i{animation:ixMessageUp .44s 18.58s ease-out forwards}

@keyframes ixCameraV6{
  0%,6.6%,9.6%,16.8%,19.8%,27%,30%,100%{transform:none}
  7.1%,17.3%,27.5%{transform:translate(4px,-3px) rotate(.2deg)}
  7.8%,18%,28.2%{transform:translate(-3px,2px) rotate(-.15deg)}
  8.7%,18.9%,29.1%{transform:translate(1px,-1px)}
}
@keyframes ixDustV6{0%{transform:translateY(15px);opacity:.24}62%{transform:translateY(-22px);opacity:.62}100%{transform:translateY(-34px);opacity:.35}}
@keyframes ixAuditSceneV5{
  0%{opacity:0;transform:scale(1.075);filter:blur(7px)}
  8%{opacity:1;transform:scale(1.018);filter:blur(1px)}
  16%,82%{opacity:1;transform:none;filter:none}
  88%{opacity:1;transform:scale(.992);filter:none}
  100%{opacity:0;transform:scale(1.035);filter:blur(3px)}
}
@keyframes ixAuditRowV5{0%{opacity:0;transform:translateX(22px);filter:blur(2px)}100%{opacity:1;transform:none;filter:none}}
@keyframes ixAuditPassV5{0%{opacity:0;transform:scale(.9);letter-spacing:.4em}70%{opacity:1;transform:scale(1.025);letter-spacing:.28em}100%{opacity:1;transform:none;letter-spacing:.28em}}
@keyframes ixAuditGlitchV5{0%,100%{opacity:0}18%,34%,58%{opacity:1;transform:translateX(5px)}26%,48%,70%{opacity:.5;transform:translateX(-6px)}}
@keyframes ixRealitySceneV6{0%{opacity:0;filter:blur(6px)}8%,90%{opacity:1;filter:none}100%{opacity:0;filter:brightness(.22)}}
@keyframes ixRealityPushV6{0%{transform:scale(1.28) translate(-2%,-1%)}45%{transform:scale(1.14) translate(-1%,0)}100%{transform:scale(1.02) translate(0,0)}}
@keyframes ixBlackV6{0%,73.2%{opacity:0}74.4%,100%{opacity:1}}
@keyframes ixMessageSceneV6{0%{opacity:0;transform:scale(.982)}8%,92%{opacity:1;transform:none}100%{opacity:0;transform:scale(1.008)}}

@media(max-width:650px){
  .ix-audit-shell{width:90vw}
  .ix-audit-main{gap:18px}
  .ix-message p{font-size:clamp(32px,9.6vw,56px)}
}
@media(prefers-reduced-motion:reduce){.ix-opening .ix-film,.ix-opening .ix-atmosphere{animation:none!important}}

@keyframes ixRealitySweepV6{0%{transform:translateX(0) skewX(-8deg);opacity:.0}10%{opacity:1}100%{transform:translateX(860%) skewX(-8deg);opacity:.35}}

/* Homepage hero headline final sizing guard — intentional ~40% reduction from cinematic theme defaults. */
.elite-home .e-hero h1{font-size:clamp(52px,5.49vw,84px)!important;line-height:.94!important}
@media(max-width:1120px){.elite-home .e-hero h1{font-size:clamp(47px,5.4vw,67px)!important}}
@media(max-width:650px){.elite-home .e-hero h1{font-size:clamp(34px,9.6vw,51px)!important;line-height:.96!important}}

.elite-home .e-weather-home-entry{
  margin-left:18px;color:#ff7180!important;border-bottom-color:#ef485c!important
}
.elite-home .e-weather-home-entry:hover{color:#fff!important}
@media(max-width:650px){
  .elite-home .e-weather-home-entry{margin-left:0;margin-top:8px;display:table}
}
