/* OBSIDIAN — architectural garage entry. Uses the original loader lifecycle. */
html.motion #loader{display:block;overflow:hidden;background:transparent;isolation:isolate;clip-path:none;opacity:1;transition:visibility 0s 2.25s;perspective:1400px}
html.motion #loader.done{clip-path:none;opacity:1;visibility:hidden;pointer-events:none}
.garage-door{position:absolute;inset:0;background:#16191c;transform:translate3d(0,0,0);will-change:transform;box-shadow:0 30px 65px 18px #000c;transition:transform 2.2s cubic-bezier(.64,0,.18,1)}
html.motion #loader.done .garage-door{transform:translate3d(0,-103%,0)}
.garage-door-skin{position:absolute;inset:0;background:radial-gradient(ellipse at 50% 32%,#ffffff09,transparent 55%),linear-gradient(90deg,#0009,transparent 12%,#ffffff03 48%,transparent 85%,#000a),repeating-linear-gradient(0deg,transparent 0,transparent calc(12.5% - 7px),#060809 calc(12.5% - 6px),#090b0d calc(12.5% - 4px),#353a3e calc(12.5% - 2px),#171b1e 12.5%),repeating-linear-gradient(0deg,#ffffff02 0px,#ffffff02 1px,transparent 1px,transparent 4px),linear-gradient(110deg,#171b1e,#24292d 46%,#14181c);box-shadow:inset 0 15px 45px #000a,inset 20px 0 28px #0008,inset -20px 0 28px #0008}
.garage-door-skin:after{content:'';position:absolute;inset:0;opacity:.13;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath fill='%23fff' filter='url(%23n)' d='M0 0h160v160H0z'/%3E%3C/svg%3E");mix-blend-mode:soft-light}
.garage-surround{position:absolute;inset:0;z-index:4;pointer-events:none;transition:opacity .65s 1.45s}
.done .garage-surround{opacity:0}
.garage-track{position:absolute;top:0;bottom:0;width:clamp(12px,2.5vw,42px);background:linear-gradient(90deg,#030405,#363b40 25%,#0c0f12 35%,#252a2f 70%,#07090b);box-shadow:5px 0 15px #000b}
.garage-track-left{left:0}.garage-track-right{right:0;transform:scaleX(-1)}
.garage-header{position:absolute;left:0;right:0;top:0;height:clamp(16px,3vh,32px);background:linear-gradient(#0c0f12,#20252a 65%,#080a0c);box-shadow:0 10px 24px #000b;border-bottom:1px solid #ffffff12}
.garage-sign{position:absolute;top:44%;left:50%;transform:translate(-50%,-50%);width:90%;display:flex;flex-direction:column;align-items:center;text-align:center;color:#cdd4da;text-shadow:0 2px 2px #000,0 -1px 0 #ffffff25}
.garage-emblem{width:clamp(46px,5.1vw,76px);height:auto;stroke:#c4cdd4;stroke-width:.85;filter:drop-shadow(0 3px 2px #000b);margin-bottom:clamp(22px,4vh,40px)}
.garage-wordmark{font-family:var(--sans,Arial,sans-serif);font-size:clamp(38px,8.5vw,136px);font-weight:300;line-height:1.15;letter-spacing:.24em;padding-left:.24em;background:linear-gradient(170deg,#f1f4f5 8%,#b3bec6 42%,#eef1f3 53%,#7b878f 90%);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 3px 1px #0009);text-shadow:none}
.garage-submark{margin-top:15px;font:400 clamp(9px,1vw,13px)/1.5 var(--mono,monospace);letter-spacing:.46em;padding-left:.46em;color:#b3bdc5}
.garage-sign-rule{width:32px;height:1px;background:#9cabb866;margin:28px 0 17px}
.garage-caption{font:400 9px/1.6 var(--mono,monospace);letter-spacing:.3em;color:#74818a}
.garage-light{position:absolute;top:15%;height:57%;width:2px;background:linear-gradient(transparent,#dcefffaa 16%,#e2f0ffc9 75%,transparent);box-shadow:0 0 8px 1px #cfebff33,0 0 45px 13px #c0ddff08}
.garage-light-left{left:9%}.garage-light-right{right:9%}
.garage-handle{position:absolute;left:50%;bottom:19%;transform:translateX(-50%);width:90px;height:11px;border:1px solid #050607;border-radius:3px;background:linear-gradient(#31383e,#171b1e 40%,#080a0c 60%,#353d43);box-shadow:0 3px 4px #0009,inset 0 1px 0 #ffffff18;display:flex;align-items:center;justify-content:space-between;padding:0 7px}
.garage-handle i{width:3px;height:3px;border-radius:50%;background:#66717b;box-shadow:0 1px 1px #000}
.garage-loading{position:absolute;left:50%;bottom:8%;transform:translateX(-50%);width:min(340px,68vw);display:flex;align-items:center;justify-content:space-between;gap:16px;padding-bottom:15px;font:400 9px/1.5 var(--mono,monospace);letter-spacing:.12em;color:#8d9ba6}
.garage-status{display:flex;gap:9px;align-items:center;font-size:8px;letter-spacing:.13em}
.garage-status i{width:4px;height:4px;border-radius:50%;background:#c9e3ef;box-shadow:0 0 7px #c9e3ef88}
.garage-counter{font-variant-numeric:tabular-nums;color:#c7d2db;white-space:nowrap}.garage-counter small{font-size:8px;color:#62717d}
.garage-progress{position:absolute;left:0;right:0;bottom:0;height:1px;background:#ffffff12;overflow:hidden}
.garage-progress:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#6b7f8e,#dbeaf2);transform-origin:left;animation:garage-charge 2.3s cubic-bezier(.18,.6,.2,1) both}
.done .garage-progress:after{transform:scaleX(1);animation:none}
.garage-bottom-seal{position:absolute;left:0;right:0;bottom:0;height:9px;background:linear-gradient(#555d62,#0a0c0e 35%,#030405 80%);border-bottom:1px solid #c8e2f078;box-shadow:0 4px 16px #bfdfff20,0 18px 36px 14px #000b}
@keyframes garage-charge{from{transform:scaleX(0)}to{transform:scaleX(.94)}}
@media(max-width:600px){.garage-wordmark{font-size:10vw;letter-spacing:.16em;padding-left:.16em}.garage-submark{font-size:8px;letter-spacing:.25em}.garage-light-left{left:6%}.garage-light-right{right:6%}.garage-status{font-size:7px;letter-spacing:.04em}.garage-caption{font-size:8px}.garage-sign{top:43%}}
@media(prefers-reduced-motion:reduce){html.motion #loader{display:none}.garage-door,.garage-surround{transition:none}.garage-progress:after{animation:none}}
