*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--gold: #C9A84C;--goldk: #A07830;--navy: #0A0A0A;--navy2: #141414;--navy-mid: #141414;--navy-card: #1A1A1A;--card: #1A1A1A;--teal: #00C896;--tealk: #00A87E;--white: #FFFFFF;--slate: #888888;--border: rgba(255,255,255,.08);--red: #EF4444;--green: #22C55E;--orange: #F97316;--blue: #3B82F6;--purple: #7C3AED;--font-display: "Cormorant Garamond", serif;--font-body: "DM Sans", sans-serif;--font-mono: "DM Mono", monospace}body.light{--navy: #F8F9FF;--navy2: #EEF0FA;--navy-mid: #EEF0FA;--navy-card: #FFFFFF;--card: #FFFFFF;--white: #1A1F36;--slate: #5A6785;--border: rgba(0,0,0,.09);--gold: #B8891A;--goldk: #8B6510}html{scroll-behavior:smooth}html,body{height:100%;font-family:var(--font-body);background:var(--navy);color:var(--white);overflow-x:hidden}::-webkit-scrollbar{width:5px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--gold);border-radius:3px}#transition-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;pointer-events:all;background:var(--navy);opacity:1;transition:opacity .3s ease}.t-curtain{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--navy);transform:translateY(0);will-change:transform}.t-logo{position:absolute;top:50%;left:50%;transform:translate(-50%,-52%);opacity:0;text-align:center;z-index:4;white-space:nowrap;letter-spacing:-2px}.t-logo-valet{display:inline-block;font-family:var(--font-display);font-size:clamp(64px,10vw,130px);font-weight:700;color:var(--white);transform:translate(-30px);opacity:0}.t-logo-iq{display:inline-block;font-family:var(--font-display);font-size:clamp(64px,10vw,130px);font-weight:700;color:var(--gold);transform:translate(30px);opacity:0;text-shadow:0 0 60px rgba(201,168,76,.5)}.t-divider{width:0%;height:1px;background:linear-gradient(90deg,transparent,var(--gold),transparent);margin:8px auto;opacity:0}.t-tagline{position:absolute;left:50%;top:calc(50% + clamp(46px,7vw,90px));transform:translate(-50%);opacity:0;color:var(--slate);font-family:var(--font-display);white-space:nowrap;z-index:4;letter-spacing:2px;text-transform:uppercase;font-size:clamp(10px,1.2vw,15px);font-weight:300}.t-glow{position:absolute;top:50%;left:50%;width:500px;height:500px;transform:translate(-50%,-50%) scale(0);background:radial-gradient(circle,rgba(201,168,76,.15) 0%,rgba(201,168,76,.05) 40%,transparent 70%);border-radius:50%;z-index:1;opacity:0}.t-dots{position:absolute;bottom:12%;left:50%;transform:translate(-50%);display:flex;gap:12px;opacity:0;z-index:4}.t-dot{width:6px;height:6px;border-radius:50%;background:var(--gold);animation:tdot 1.2s ease-in-out infinite}.t-dot:nth-child(2){animation-delay:.2s}.t-dot:nth-child(3){animation-delay:.4s}@keyframes tdot{0%,to{opacity:.2;transform:translateY(0) scale(.8)}50%{opacity:1;transform:translateY(-7px) scale(1.2)}}#theme-ripple{position:fixed;border-radius:50%;pointer-events:none;z-index:8888;transform:scale(0);display:none}#theme-ripple.light-ripple{background:radial-gradient(circle,#eef0fa,#f8f9ff);animation:rippleOut .7s cubic-bezier(.22,1,.36,1) forwards}#theme-ripple.dark-ripple{background:radial-gradient(circle,#1a1a1a,#0a0a0a);animation:rippleOut .7s cubic-bezier(.22,1,.36,1) forwards}@keyframes rippleOut{0%{transform:scale(0);opacity:1}to{transform:scale(1);opacity:1}}@keyframes fadeUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.8)}}@keyframes ping{0%{transform:scale(1);opacity:1}75%,to{transform:scale(2);opacity:0}}@keyframes celebBounce{0%,to{transform:translateY(0) rotate(-5deg)}25%{transform:translateY(-8px) rotate(5deg)}75%{transform:translateY(-4px) rotate(-3deg)}}@keyframes starPop{0%{opacity:0;transform:scale(0) rotate(-30deg)}to{opacity:1;transform:scale(1) rotate(0)}}@keyframes marqueeScroll{0%{transform:translate(0)}to{transform:translate(-50%)}}@keyframes scanLine{0%{top:0;opacity:1}to{top:100%;opacity:0}}@keyframes nfcRipple{0%{transform:scale(1);opacity:.8}to{transform:scale(2.5);opacity:0}}@keyframes livePulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.8)}}@keyframes gridMove{0%{background-position:0 0}to{background-position:60px 60px}}.v-mark{background:linear-gradient(135deg,var(--gold),var(--goldk));border-radius:8px;display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-weight:900;color:#000;flex-shrink:0}.btn-primary{padding:16px 36px;background:linear-gradient(135deg,#c9a84c,#a07830);border:none;border-radius:10px;color:var(--navy);font-weight:700;font-size:16px;cursor:pointer;text-decoration:none;display:inline-block;transition:transform .2s,box-shadow .2s;box-shadow:0 4px 24px #c9a84c4d}.btn-primary:hover{transform:translateY(-3px);box-shadow:0 12px 36px #c9a84c73}.btn-ghost{padding:16px 36px;background:transparent;border:1px solid var(--border);border-radius:10px;color:var(--white);font-weight:500;font-size:16px;cursor:pointer;text-decoration:none;display:inline-block;transition:border-color .2s,background .2s}.btn-ghost:hover{border-color:#ffffff4d;background:#ffffff0d}.badge{display:inline-flex;align-items:center;padding:3px 10px;border-radius:100px;font-size:10px;font-weight:700}.badge-green{background:#22c55e26;color:var(--green);border:1px solid rgba(34,197,94,.25)}.badge-gold{background:#c9a84c26;color:var(--gold);border:1px solid rgba(201,168,76,.25)}.badge-blue{background:#3b82f626;color:#60a5fa;border:1px solid rgba(59,130,246,.25)}.badge-slate{background:#8899bb1a;color:var(--slate);border:1px solid var(--border)}.badge-red{background:#ef444426;color:var(--red);border:1px solid rgba(239,68,68,.25)}body{transition:background .5s ease,color .5s ease}@keyframes ownerLogoIn{0%{opacity:0;transform:translateY(20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes ownerLineIn{0%{opacity:0;transform:scaleX(0)}to{opacity:1;transform:scaleX(1)}}@keyframes ownerTagIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes introFadeOut{0%{opacity:1;pointer-events:all}to{opacity:0;pointer-events:none}}@keyframes ownerRipple{0%{transform:scale(0);opacity:1}to{transform:scale(1);opacity:1}}
