/* Havoc V7: white rises through black; the same clipping boundary inverts the artwork. */
#havoc-loader{display:none}
html.hvl-active #havoc-loader{display:block;position:fixed;inset:0;z-index:2147483000;background:#0c0c0c;color:#f8f8f8;isolation:isolate;overflow:hidden;overscroll-behavior:contain;touch-action:none;font-family:Arial,Helvetica,sans-serif;line-height:1;letter-spacing:normal}
#havoc-loader *,#havoc-loader *::before,#havoc-loader *::after{box-sizing:border-box}
#havoc-loader .hvl-art,#havoc-loader .hvl-scene{position:absolute;inset:0;overflow:hidden}
#havoc-loader .hvl-scene{background:#0c0c0c;color:#f8f8f8}
#havoc-loader .hvl-white{background:#f8f8f8;color:#0c0c0c;clip-path:var(--hvl-front,inset(100% 0 0));will-change:clip-path}
#havoc-loader .hvl-atmosphere{position:absolute;inset:0;width:100%;height:100%;object-fit:fill;opacity:.2;filter:grayscale(1);pointer-events:none}
#havoc-loader .hvl-white .hvl-atmosphere{opacity:.075;filter:grayscale(1) invert(1);mix-blend-mode:multiply}
#havoc-loader .hvl-scene::after{content:"";position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(0deg,#00000006 0 1px,transparent 1px 3px);z-index:5}
#havoc-loader .hvl-ghost{position:absolute;width:107%;height:auto;left:-3.2%;top:-5%;opacity:.14;transform:translateY(var(--hvl-ghost-y,0px));pointer-events:none}
#havoc-loader .hvl-white img{filter:brightness(0)}
#havoc-loader .hvl-head{position:absolute;top:4.2%;left:3.3%;right:3.3%;height:12%;border-bottom:1px solid currentColor;color:inherit}
#havoc-loader .hvl-head::after{content:"";position:absolute;left:-4px;right:-4px;bottom:-4px;height:7px;border-left:1px solid currentColor;border-right:1px solid currentColor;opacity:.4}
#havoc-loader .hvl-brand{position:absolute;left:0;top:0;width:10vw;max-width:180px;height:auto}
#havoc-loader .hvl-location{position:absolute;right:0;top:1.4%;font-family:Monaco,Consolas,monospace;font-size:clamp(9px,.89vw,16px);text-align:left;line-height:1.65;letter-spacing:.015em}
#havoc-loader .hvl-location small{display:block;font-size:.78em;opacity:.6}
#havoc-loader .hvl-head{border-color:#8885}
#havoc-loader .hvl-main{position:absolute;inset:0;transform:translateY(var(--hvl-type-y,0px));transition:opacity .16s ease}
#havoc-loader .hvl-title{position:absolute;top:25%;left:16.75%;width:66.5%;height:auto}
#havoc-loader .hvl-title-mobile{display:none}
#havoc-loader .hvl-counter{position:absolute;top:45.6%;left:50%;transform:translateX(-50%);display:flex;align-items:baseline;gap:.07em;white-space:nowrap;font-size:clamp(64px,7.55vw,145px);font-weight:400;font-variant-numeric:tabular-nums;line-height:1;letter-spacing:-.015em}
#havoc-loader .hvl-percent{font-size:.28em;opacity:.85;letter-spacing:0}
#havoc-loader .hvl-counter::after{content:"";position:absolute;top:calc(100% + 22px);left:50%;transform:translateX(-50%);width:9.7vw;border-bottom:1px solid currentColor;opacity:.32}
#havoc-loader .hvl-logo-hit{position:absolute;left:17.6%;top:50%;width:64.8%;height:auto;transform:translateY(-50%) scale(.94);opacity:0;transition:opacity .16s ease,transform .24s cubic-bezier(.16,1,.3,1)}
#havoc-loader.hvl-complete .hvl-main{opacity:0}
#havoc-loader.hvl-complete .hvl-logo-hit{opacity:1;transform:translateY(-50%) scale(1)}
#havoc-loader .hvl-foot{position:absolute;left:3.3%;right:3.3%;bottom:3.3%;height:9%;border-top:1px solid #8885;display:flex;align-items:flex-end;justify-content:space-between;gap:24px}
#havoc-loader .hvl-award{font-size:clamp(10px,1.06vw,19px);font-weight:700;line-height:1.2;letter-spacing:0}
#havoc-loader .hvl-award small{display:block;font-family:Monaco,Consolas,monospace;font-size:.76em;font-weight:400;opacity:.6;margin-top:10px}
#havoc-loader .hvl-state{display:flex;align-items:center;gap:10px;align-self:center;margin-top:22px;font:clamp(10px,.89vw,16px)/1 Monaco,Consolas,monospace;white-space:nowrap}
#havoc-loader .hvl-state::before{content:"";display:block;width:5px;height:5px;border-radius:50%;background:currentColor}
#havoc-loader .hvl-skip{position:absolute;z-index:10;top:18px;left:50%;transform:translate(-50%,-150%);color:#000;background:#fff;border:1px solid #888;border-radius:4px;padding:12px 18px;font:14px Arial,sans-serif}
#havoc-loader .hvl-skip:focus-visible{transform:translate(-50%,0);outline:2px solid #888;outline-offset:3px}
#havoc-loader.hvl-exiting{background:transparent}
#havoc-loader .hvl-panel{position:absolute;inset:0;pointer-events:none;overflow:hidden}
#havoc-loader .hvl-panel .hvl-art{will-change:transform}
@media(max-width:700px) and (orientation:portrait){
 #havoc-loader .hvl-head{left:6%;right:6%;top:max(25px,env(safe-area-inset-top));height:75px}
 #havoc-loader .hvl-brand{width:88px}
 #havoc-loader .hvl-location{font-size:9px;top:4px;line-height:1.7}
 #havoc-loader .hvl-location small{font-size:7px}
 #havoc-loader .hvl-title{display:none}
 #havoc-loader .hvl-title-mobile{display:flex;position:absolute;top:29%;left:8%;width:84%;flex-direction:column;gap:13px;align-items:center}
 #havoc-loader .hvl-title-mobile img{height:auto;width:100%}
 #havoc-loader .hvl-title-mobile img:last-child{width:88%}
 #havoc-loader .hvl-counter{top:56%;font-size:clamp(64px,20vw,96px)}
 #havoc-loader .hvl-counter::after{width:100px;top:calc(100% + 18px)}
 #havoc-loader .hvl-ghost{width:210%;left:-55%;top:22%;opacity:.1}
 #havoc-loader .hvl-logo-hit{width:85%;left:7.5%;top:47%}
 #havoc-loader .hvl-foot{left:6%;right:6%;bottom:max(25px,env(safe-area-inset-bottom));height:76px;gap:20px}
 #havoc-loader .hvl-award{max-width:220px;font-size:10px;line-height:1.4}
 #havoc-loader .hvl-award small{font-size:8px;margin-top:7px}
 #havoc-loader .hvl-state{font-size:9px;gap:6px;margin-top:25px}
}
@media(prefers-reduced-motion:reduce){html.hvl-active #havoc-loader{display:none}}
