:root{--ink:#151413;--gold:#C9A24A;--gold2:#E9CF8C;--gold3:#FFF0C2;--cream:#f3ede2;--ease:cubic-bezier(.16,1,.3,1);--pad:clamp(16px,4vw,56px)}
*{box-sizing:border-box;margin:0;padding:0}
html,body{overflow-x:hidden}
body{font-family:"Inter Tight",system-ui,sans-serif;font-variant-numeric:lining-nums;font-feature-settings:"lnum" 1;background:#18181b;color:var(--cream);-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
.banner{position:relative;z-index:30;display:flex;justify-content:center;align-items:center;gap:12px;padding:13px var(--pad);background:linear-gradient(90deg,#b8902f,var(--gold) 20%,var(--gold2) 50%,var(--gold) 80%,#b8902f);color:var(--ink);font-weight:600;font-size:15px;text-align:center;line-height:1.35;overflow:hidden}
.banner b{font-weight:800}.banner span{text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}
.banner i{font-style:normal;font-weight:800}
.banner::after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 35%,rgba(255,255,255,.55) 50%,transparent 65%);transform:translateX(-100%);animation:sweep 5s var(--ease) 1.2s infinite}
@keyframes sweep{0%{transform:translateX(-100%)}40%,100%{transform:translateX(100%)}}
.nav-wrap{position:absolute;left:0;right:0;z-index:40;display:flex;justify-content:space-between;align-items:center;padding:20px var(--pad);gap:20px}
.logo{font-weight:800;font-size:19px;letter-spacing:.14em;text-transform:uppercase;white-space:nowrap}.logo span{color:var(--gold2)}
.pill{display:flex;align-items:center;gap:4px;background:rgba(250,247,240,.96);color:var(--ink);border-radius:14px;padding:6px;box-shadow:0 10px 40px -12px rgba(0,0,0,.5)}
.pill a{padding:11px 16px;border-radius:10px;font-weight:600;font-size:15px;white-space:nowrap;transition:background .3s}
.pill a:hover{background:rgba(201,162,74,.18)}
.pill .call{background:linear-gradient(135deg,var(--gold2),var(--gold));font-weight:700}
/* HERO: Jason dead center */
.hero{position:relative;height:100svh;min-height:640px;overflow:hidden;background:radial-gradient(60% 70% at 50% 55%,#4a4b52 0%,#36373d 40%,#232327 75%,#18181b 100%)}
.bigname{position:absolute;left:0;right:0;top:15%;z-index:1;display:flex;flex-direction:column;align-items:center;font-weight:900;text-transform:uppercase;letter-spacing:-.045em;line-height:.82;font-size:clamp(70px,13.5vw,250px);pointer-events:none;user-select:none}
.bigname span{background:linear-gradient(180deg,rgba(255,240,194,.95),rgba(201,162,74,.75));-webkit-background-clip:text;background-clip:text;color:transparent}
.bigname span:last-child{background:linear-gradient(180deg,rgba(233,207,140,.9),rgba(169,130,47,.55));-webkit-background-clip:text;background-clip:text}
.glow{position:absolute;left:50%;bottom:0;width:min(80vw,1100px);height:70%;transform:translateX(-50%);background:radial-gradient(50% 60% at 50% 60%,rgba(201,162,74,.28),transparent 70%);z-index:2;pointer-events:none}
.me{position:absolute;left:50%;bottom:0;height:82%;width:auto;max-width:none;transform:translateX(-50%);z-index:5;filter:drop-shadow(0 30px 60px rgba(0,0,0,.55));animation:rise 1.4s var(--ease) both;pointer-events:none}
@keyframes rise{from{opacity:0;transform:translate(-50%,40px)}to{opacity:1;transform:translateX(-50%)}}
.orbit{position:absolute;inset:0;z-index:6;pointer-events:none}
.orb{--d:clamp(92px,11vw,168px);position:absolute;left:0;top:0;width:var(--d);height:var(--d);margin:calc(var(--d)/-2) 0 0 calc(var(--d)/-2);border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:0 14px;pointer-events:auto;will-change:transform;box-shadow:0 18px 50px -14px rgba(0,0,0,.75),inset 0 0 0 1px rgba(255,255,255,.22);transition:box-shadow .4s}
.orb::before{content:"";position:absolute;inset:0;border-radius:50%;background:radial-gradient(circle at 32% 26%,rgba(255,255,255,.35),transparent 55%);pointer-events:none}
.orb b{position:relative;font-weight:800;font-size:clamp(12px,1.15vw,18px);line-height:1.1}
.orb small{position:relative;font-size:clamp(9px,.8vw,12px);font-weight:600;margin-top:5px;opacity:.85;white-space:nowrap}
.o1{background:#1f5a3c;color:#f3ede2}
.o2{background:linear-gradient(135deg,#FFF0C2,#C9A24A 60%,#a9822f);color:#151413}
.o3{background:#0d5c45;color:#f3ede2}
.orb:hover,.orb:focus-visible{box-shadow:0 22px 70px -10px rgba(201,162,74,.75),inset 0 0 0 2px rgba(255,240,194,.8);outline:none}
.intro{position:relative;z-index:3;text-align:center;padding:44px var(--pad) 70px;background:linear-gradient(180deg,#18181b,#141416);display:flex;flex-direction:column;align-items:center}
.kicker{font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:var(--gold2);font-weight:600;margin-bottom:14px;line-height:1.5}
.sub{font-size:clamp(17px,1.5vw,21px);line-height:1.5;color:#e4ddd0;max-width:640px;margin-bottom:20px}
.rotator{min-height:52px;display:flex;align-items:center;justify-content:center;margin-bottom:24px;max-width:640px;width:100%}
.rot{display:grid;width:100%}
.rot em{grid-area:1/1;font-style:normal;font-weight:700;font-size:clamp(16px,1.4vw,20px);line-height:1.35;color:#fff;opacity:0;transform:translateY(10px);transition:opacity .25s,transform .25s}
.rot em.on{opacity:1;transform:none;transition:opacity .7s var(--ease) .25s,transform .7s var(--ease) .25s}
.ctas{display:flex;flex-wrap:wrap;gap:12px;justify-content:center}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:54px;padding:0 30px;border-radius:12px;font-weight:700;font-size:16px;transition:transform .3s var(--ease)}
.btn.gold{background:linear-gradient(135deg,var(--gold3),var(--gold) 55%,#a9822f);color:var(--ink);box-shadow:0 12px 40px -12px rgba(201,162,74,.7)}
.btn.line{border:1.5px solid rgba(233,207,140,.7);color:var(--gold3)}
.btn:hover{transform:translateY(-2px)}
footer{padding:26px var(--pad);background:#111113;color:#b4ab9b;font-size:13px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;border-top:1px solid rgba(201,162,74,.3)}
@media (max-width:1100px){.pill a:not(.call){padding:10px 11px;font-size:14px}}
@media (max-width:900px){
 .nav-wrap{position:relative;flex-direction:column;align-items:stretch;padding:14px var(--pad);background:#2a2b30}
 .logo{text-align:center;font-size:16px}
 .pill{flex-wrap:wrap;justify-content:center}.pill a:not(.call){flex:1 1 auto;text-align:center;padding:10px 6px;font-size:14px}.pill .call{flex:1 1 100%;text-align:center}
 .banner{font-size:13px;padding:10px 14px}
 .hero{height:auto;min-height:0;aspect-ratio:390/520}
 .bigname{top:8%;font-size:20vw}
 .me{height:auto;width:128vw}
 .orb{--d:94px;padding:0 8px}.orb b{font-size:11.5px}.orb small{font-size:9px}
 .btn{flex:1 1 auto}
}
@media (max-width:900px){.bigname{font-size:15.6vw;top:6%}}
.banner{display:grid;padding:0}
.bmsg{grid-area:1/1;display:flex;justify-content:center;align-items:center;gap:12px;padding:13px var(--pad);opacity:0;visibility:hidden;transform:translateY(8px);transition:opacity .5s,transform .5s var(--ease),visibility 0s .5s;position:relative;z-index:1}
.bmsg.on{opacity:1;visibility:visible;transform:none;transition:opacity .6s .15s,transform .6s var(--ease) .15s}
.bmsg span{text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}.bmsg i{font-style:normal;font-weight:800}
.dual{position:absolute;left:0;right:0;z-index:2;top:calc(15% + clamp(70px,13.5vw,250px)*1.68);display:flex;justify-content:center;gap:16px;font-weight:800;letter-spacing:.3em;text-transform:uppercase;font-size:clamp(13px,1.3vw,20px);color:var(--cream)}
.dual i{font-style:normal;color:var(--gold)}
.twin{display:grid;grid-template-columns:1fr 1fr;gap:20px;max-width:1080px;width:100%;margin:10px 0 30px;text-align:left}
.half{background:linear-gradient(180deg,rgba(255,255,255,.04),rgba(255,255,255,.015));border:1px solid rgba(201,162,74,.35);border-radius:18px;padding:30px;display:flex;flex-direction:column;gap:14px}
.half h2{font-size:clamp(28px,2.6vw,40px);font-weight:900;letter-spacing:-.03em;color:var(--gold2)}
.half p{color:#e4ddd0;line-height:1.55;font-size:16px;flex:1}
.half .btn{align-self:stretch}
.kicker{font-size:clamp(14px,1.2vw,17px)}
@media (max-width:760px){.twin{grid-template-columns:1fr}.half{padding:22px}.dual{top:calc(6% + 15.6vw*1.66);letter-spacing:.2em;font-size:12px}}
.dual{top:calc(15% - 40px)}
.bigname{top:calc(15% + 4px)}
@media (max-width:760px){.dual{top:3%}.bigname{top:9%}}
/* v18 photoreal gold orbs */
.orb,.o1,.o2,.o3{color:#3b2406;overflow:hidden;isolation:isolate;
background:
 radial-gradient(circle at 34% 28%,rgba(255,253,235,.95) 0,rgba(255,244,200,.6) 9%,rgba(255,230,150,0) 26%),
 radial-gradient(circle at 70% 82%,rgba(255,226,140,.55) 0,rgba(255,210,110,0) 30%),
 radial-gradient(circle at 50% 50%,#f6d77c 0,#e2b44a 38%,#b8862a 62%,#7d5414 84%,#4a2f08 100%);
box-shadow:inset 0 0 0 2px rgba(255,236,170,.55),inset 0 0 0 4px rgba(120,80,16,.45),inset 0 -10px 22px rgba(60,35,4,.55),inset 0 8px 16px rgba(255,248,215,.45),0 18px 40px -12px rgba(0,0,0,.7),0 0 26px 4px rgba(255,196,80,.45),0 0 70px 14px rgba(230,170,60,.22);
animation:bloom 3.2s ease-in-out infinite}
@keyframes bloom{50%{box-shadow:inset 0 0 0 2px rgba(255,236,170,.55),inset 0 0 0 4px rgba(120,80,16,.45),inset 0 -10px 22px rgba(60,35,4,.55),inset 0 8px 16px rgba(255,248,215,.45),0 18px 40px -12px rgba(0,0,0,.7),0 0 40px 10px rgba(255,205,95,.7),0 0 110px 30px rgba(235,175,60,.35)}}
.orb::before{inset:7%;background:radial-gradient(circle at 50% 50%,transparent 66%,rgba(90,58,10,.35) 70%,rgba(255,240,190,.35) 73%,transparent 76%);z-index:-1}
.orb::after{content:"";position:absolute;inset:-20%;z-index:0;pointer-events:none;background:linear-gradient(115deg,transparent 40%,rgba(255,252,235,.55) 50%,transparent 60%);transform:translateX(-120%);animation:sheen 4.5s ease-in-out infinite}
.o2::after{animation-delay:1.5s}.o3::after{animation-delay:3s}.o2{animation-delay:1s}.o3{animation-delay:2s}
@keyframes sheen{0%,55%{transform:translateX(-120%)}85%,100%{transform:translateX(120%)}}
.orb b,.orb small{z-index:1;font-variant-numeric:lining-nums;text-shadow:0 1px 0 rgba(255,245,210,.75),0 -1px 0 rgba(70,40,4,.35)}
.orb b{font-weight:900;color:#3a2205}.orb small{color:#4e3109;opacity:1}
.orb:hover,.orb:focus-visible{animation-play-state:paused;box-shadow:inset 0 0 0 2px rgba(255,236,170,.8),inset 0 -10px 22px rgba(60,35,4,.5),0 0 50px 14px rgba(255,210,100,.8),0 0 130px 40px rgba(235,175,60,.4)}
@media (prefers-reduced-motion:reduce){.orb,.orb::after{animation-duration:9s}}
/* v19 rendered gold coins (Blender Cycles) */
.orb,.o1,.o2,.o3{background:url(../assets/img/coin-o1.webp?v=3) 0 0/800% 100% no-repeat;box-shadow:none;overflow:visible;animation:none;filter:drop-shadow(0 16px 22px rgba(0,0,0,.55))}
.o2{background-image:url(../assets/img/coin-o2.webp?v=3)}.o3{background-image:url(../assets/img/coin-o3.webp?v=3)}
.orb b,.orb small{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.orb::before{content:"";inset:-6%;z-index:-1;background:radial-gradient(circle,rgba(255,200,90,.55) 0,rgba(240,170,60,.22) 45%,transparent 70%);animation:bloom2 3.2s ease-in-out infinite}
.o2::before{animation-delay:1s}.o3::before{animation-delay:2s}
@keyframes bloom2{0%,100%{transform:scale(1);opacity:.65}50%{transform:scale(1.18);opacity:1}}
.orb::after{inset:4%;border-radius:50%;overflow:hidden;opacity:.5;mix-blend-mode:screen;background:linear-gradient(115deg,transparent 42%,rgba(255,250,230,.5) 50%,transparent 58%) no-repeat;background-size:300% 100%;transform:none;animation:sheen2 5s ease-in-out infinite}
@keyframes sheen2{0%,60%{background-position:100% 0}90%,100%{background-position:0 0}}
.orb:hover,.orb:focus-visible{box-shadow:none;filter:drop-shadow(0 0 26px rgba(255,205,95,.85)) drop-shadow(0 16px 22px rgba(0,0,0,.5))}
.orb:hover::before{animation-play-state:paused;opacity:1}
@media (max-width:900px){.orb{--d:112px}}
/* v21: no white bar - nav pill transparent/dark-gold */
.pill{background:transparent;box-shadow:none;color:var(--gold3);padding:0;gap:6px}
.pill a{color:var(--gold3);border:1px solid rgba(201,162,74,.45);background:rgba(20,20,22,.35);backdrop-filter:blur(6px)}
.pill a:hover{background:rgba(201,162,74,.22)}
.pill .call{background:linear-gradient(135deg,rgba(233,207,140,.25),rgba(201,162,74,.18));color:var(--gold3);border-color:rgba(233,207,140,.8)}
@media (max-width:900px){.nav-wrap{background:#18181b}.pill{gap:6px}}
/* v22: nav moved below hero, never overlaps */
.nav-wrap{position:relative;justify-content:center;flex-wrap:wrap;background:#18181b;padding:18px var(--pad);border-bottom:1px solid rgba(201,162,74,.2)}
.nav-wrap .logo{display:none}
/* v23 scroll motion & polish */
.fx .rv{opacity:0;transform:translateY(34px);}.rv{transition:opacity .9s var(--ease),transform .9s var(--ease)}
.fx .rv.in,.rv.in{opacity:1;transform:none}
.bigname{will-change:transform}
.cglow{position:fixed;left:0;top:0;width:400px;height:400px;border-radius:50%;pointer-events:none;z-index:30;opacity:0;transition:opacity .5s;background:radial-gradient(circle,rgba(233,190,95,.16),rgba(201,162,74,.06) 40%,transparent 70%);mix-blend-mode:screen}
.btn,.pill a,.half{position:relative;overflow:hidden;transition:opacity .9s var(--ease),transform .6s var(--ease),box-shadow .45s var(--ease),border-color .45s,background .3s}
.btn::after,.pill a::after,.half::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(110deg,transparent 35%,rgba(255,240,194,.28) 50%,transparent 65%);transform:translateX(-120%);transition:transform .9s var(--ease)}
.btn:hover::after,.pill a:hover::after,.half:hover::after{transform:translateX(120%)}
.btn:hover,.pill a:hover{transform:translateY(-3px);box-shadow:0 14px 36px -12px rgba(201,162,74,.65)}
.half:hover{transform:translateY(-6px);border-color:rgba(233,207,140,.7);box-shadow:0 26px 60px -24px rgba(201,162,74,.45)}
@media (prefers-reduced-motion:reduce){.rv{opacity:1;transform:none;transition:none}.btn::after,.pill a::after,.half::after{display:none}.btn:hover,.pill a:hover,.half:hover{transform:none}}
/* v24 two doors */
.doors{display:flex;gap:18px;width:100%;max-width:1240px;height:clamp(440px,62vh,600px);margin:16px 0 34px;text-align:left}
.door{position:relative;flex:1 1 0;border-radius:22px;overflow:hidden;border:1px solid rgba(201,162,74,.4);display:flex;align-items:flex-end;isolation:isolate;transition:flex-grow .8s var(--ease),box-shadow .6s var(--ease),border-color .5s,opacity .9s var(--ease),transform .9s var(--ease)}
.dimg{position:absolute;inset:0;z-index:-2;background-size:cover;background-position:center;transform:scale(1.04);transition:transform 1.2s var(--ease),filter .8s}
.d-ai .dimg{background-position:center 25%;filter:saturate(.9)}
.door::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(20,20,22,.05) 25%,rgba(20,20,22,.6) 58%,rgba(14,14,16,.95))}
.d-ai::before{background:radial-gradient(80% 60% at 50% 30%,transparent,rgba(14,14,16,.35)),linear-gradient(180deg,rgba(20,20,22,.05) 30%,rgba(20,20,22,.6) 60%,rgba(14,14,16,.95))}
.dbody{display:flex;flex-direction:column;gap:12px;padding:clamp(22px,3vw,40px);width:100%}
.dbody small{font-weight:700;letter-spacing:.3em;text-transform:uppercase;font-size:12px;color:var(--gold2)}
.door h2{font-size:clamp(40px,5vw,76px);font-weight:900;letter-spacing:-.04em;line-height:.9;background:linear-gradient(180deg,var(--gold3),var(--gold));-webkit-background-clip:text;background-clip:text;color:transparent}
.door p{color:#efe8db;font-size:clamp(15px,1.2vw,18px);line-height:1.45;max-width:440px}
.door .btn{align-self:flex-start}
.door:hover,.door:focus-visible{flex-grow:1.35;border-color:rgba(233,207,140,.9);box-shadow:0 0 0 1px rgba(233,207,140,.5),0 30px 90px -20px rgba(201,162,74,.6);outline:none}
.door:hover .dimg{transform:scale(1.1)}
@media (max-width:760px){.doors{flex-direction:column;height:auto}.door{min-height:400px}.door:hover{flex-grow:1}}
@media (prefers-reduced-motion:reduce){.door,.dimg{transition:none}.door:hover .dimg{transform:scale(1.04)}}
/* v25 three gold cards */
.gcards{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(18px,2.4vw,34px);width:100%;max-width:1180px;margin:26px 0 40px;text-align:left}
.gcard{--fd:0s;display:block;border-radius:20px;padding:1.5px;background:linear-gradient(135deg,#fff3c4 0%,#e9c46a 18%,#9c6f1e 38%,#f6d77c 55%,#b8862a 75%,#fff0c2 100%);animation:gpulse 3.6s ease-in-out infinite;animation-delay:var(--fd);transition:opacity .9s var(--ease),transform .9s var(--ease),filter .4s}
.gcard:nth-child(2){--fd:-1.2s}.gcard:nth-child(3){--fd:-2.4s}
.gin{position:relative;display:flex;flex-direction:column;gap:10px;height:100%;border-radius:19px;padding:28px 28px 24px;overflow:hidden;background:radial-gradient(120% 90% at 20% 0%,rgba(246,215,124,.16),transparent 55%),linear-gradient(180deg,#1d1c1f,#141416);animation:bob 5.5s ease-in-out infinite;animation-delay:var(--fd)}
.gcard{animation:gpulse 3.6s ease-in-out infinite,bob 5.5s ease-in-out infinite;animation-delay:var(--fd),var(--fd)}.gin{animation:none}
.gin::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(110deg,transparent 35%,rgba(255,240,194,.18) 50%,transparent 65%);transform:translateX(-130%);animation:gsweep 6s ease-in-out infinite;animation-delay:var(--fd)}
.gin small{font-weight:800;letter-spacing:.3em;font-size:12px;color:var(--gold2)}
.gin h2{font-size:clamp(30px,2.8vw,42px);font-weight:900;letter-spacing:-.035em;line-height:1;background:linear-gradient(180deg,#fff3c4,#e2b44a 55%,#a9822f);-webkit-background-clip:text;background-clip:text;color:transparent;font-variant-numeric:lining-nums}
.gin p{color:#e7dfd0;font-size:16px;line-height:1.45;flex:1}
.gin i{font-style:normal;font-weight:700;font-size:14px;color:var(--gold3);letter-spacing:.04em}
@keyframes gpulse{0%,100%{box-shadow:0 0 18px 0 rgba(226,180,74,.25),0 20px 50px -24px rgba(0,0,0,.8)}50%{box-shadow:0 0 38px 6px rgba(240,195,90,.45),0 20px 50px -24px rgba(0,0,0,.8)}}
@keyframes bob{0%,100%{translate:0 0}50%{translate:0 -9px}}
@keyframes gsweep{0%,60%{transform:translateX(-130%)}85%,100%{transform:translateX(130%)}}
.gcard:hover,.gcard:focus-visible{filter:brightness(1.15);outline:none}
.gcard.in:hover,.gcard.in:focus-visible{transform:translateY(-8px)}
@media (max-width:760px){.gcards{grid-template-columns:1fr;gap:18px;margin:18px 0 22px}.intro{padding-bottom:28px}.rotator{margin-bottom:0;min-height:0}}
@media (prefers-reduced-motion:reduce){.gcard{animation:none;box-shadow:0 0 26px 2px rgba(226,180,74,.3)}.gin::after{display:none}.gcard.in:hover{transform:none}}
/* v26 amaterasu-inspired */
.drift{position:absolute;inset:0;z-index:0;overflow:hidden;pointer-events:none}
.drift i{position:absolute;width:60vmax;height:60vmax;border-radius:50%;left:50%;top:45%;margin:-30vmax 0 0 -30vmax;background:radial-gradient(circle,rgba(226,180,74,.16),rgba(201,162,74,.05) 40%,transparent 68%);animation:drift1 26s ease-in-out infinite alternate;will-change:transform}
.drift i:nth-child(2){background:radial-gradient(circle,rgba(243,226,180,.10),transparent 62%);animation:drift2 34s ease-in-out infinite alternate}
.drift i:nth-child(3){width:40vmax;height:40vmax;margin:-20vmax 0 0 -20vmax;background:radial-gradient(circle,rgba(190,140,50,.14),transparent 65%);animation:drift3 22s ease-in-out infinite alternate}
@keyframes drift1{0%{transform:translate(-18%,-6%)}100%{transform:translate(14%,8%)}}
@keyframes drift2{0%{transform:translate(20%,10%) scale(1.1)}100%{transform:translate(-16%,-10%) scale(.9)}}
@keyframes drift3{0%{transform:translate(-30%,20%)}100%{transform:translate(28%,-14%)}}
.oline{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;overflow:visible}
.oline path{fill:none;stroke:rgba(233,207,140,.38);stroke-width:1.2}
.oline.back{z-index:3}.oline.back path{stroke:rgba(233,207,140,.22)}.oline.front{z-index:6}
.xrings{position:absolute;inset:0;width:100%;height:100%;z-index:1;pointer-events:none;transition:transform 1.2s var(--ease)}
.xrings circle{fill:none;stroke:rgba(201,162,74,.12);stroke-width:1}
.orbit{z-index:7}
.intro.reveal{will-change:clip-path}
.revring{position:absolute;border-radius:50%;pointer-events:none;z-index:5;border:2px solid rgba(233,207,140,.85);box-shadow:inset 0 0 40px rgba(226,180,74,.35),0 0 30px rgba(226,180,74,.5);opacity:0}
.iov{display:none}
.intro-on .iov{display:flex;position:fixed;inset:0;z-index:100;background:#141416;align-items:center;justify-content:center;transition:opacity .45s ease}
.iring{position:absolute;width:min(60vw,340px);aspect-ratio:1;border-radius:50%;border:1.5px solid rgba(233,207,140,.85);box-shadow:0 0 30px rgba(226,180,74,.35);animation:iring .7s var(--ease) both}
.iname{font-weight:800;letter-spacing:.22em;text-transform:uppercase;font-size:clamp(15px,1.6vw,20px);color:var(--cream);animation:ifade .6s ease both}.iname span{color:var(--gold2)}
@keyframes iring{from{transform:scale(.6);opacity:0}to{transform:scale(1);opacity:1}}
@keyframes ifade{from{opacity:0;letter-spacing:.5em}to{opacity:1}}
.intro-out .iring{transform:scale(9);opacity:0;transition:transform .7s cubic-bezier(.7,0,.3,1),opacity .7s ease}
.intro-out .iname{opacity:0;transition:opacity .25s}
.intro-out .iov{opacity:0;transition:opacity .5s ease .2s}
.intro-on .me{animation-delay:.8s}
.intro-on .orbit{opacity:0}.intro-done .orbit{opacity:1;transition:opacity .6s ease}
@media (max-width:900px){.drift i{animation-duration:40s}.xrings{display:none}}
@media (prefers-reduced-motion:reduce){.drift i{animation:none}.xrings{transition:none}}
/* v27 failsafes: overlay never blocks, fades itself out even without JS */
.intro-on .iov{pointer-events:none;animation:iovKill .4s ease 2.2s forwards}
@keyframes iovKill{to{opacity:0;visibility:hidden}}
/* v28 phone performance */
.touch .drift i{animation:none}
.touch .drift i:nth-child(2),.touch .drift i:nth-child(3){display:none}
.touch .gcard{animation:none;box-shadow:0 0 26px 2px rgba(226,180,74,.3),0 20px 50px -24px rgba(0,0,0,.8)}
.touch .gin::after,.touch .orb::after{display:none}
.touch .orb::before{animation:none;opacity:.8}
.touch .xrings{display:none}
.touch .cglow{display:none}
.orb{will-change:transform;backface-visibility:hidden}
.orbit{z-index:auto!important}
/* v30 true orbit + glow */
.orb,.o1,.o2,.o3{background:none!important;filter:none!important;animation:none!important;box-shadow:none!important;overflow:visible!important}
.orb::before,.orb::after{display:none!important}
.orb .face{position:absolute;inset:0;border-radius:50%;background:center/contain no-repeat;will-change:transform;filter:drop-shadow(0 12px 16px rgba(0,0,0,.5))}
.o1 .face{background-image:url(../assets/img/coin-o1-flat.webp?v=1)}.o2 .face{background-image:url(../assets/img/coin-o2-flat.webp?v=1)}.o3 .face{background-image:url(../assets/img/coin-o3-flat.webp?v=1)}
.orb .shade{position:absolute;inset:3%;border-radius:50%;background:#0d0d0f;opacity:0;pointer-events:none}
.orb .halo{position:absolute;inset:-45%;background:url(../assets/img/halo.webp?v=1) center/100% 100% no-repeat;opacity:.6;pointer-events:none;mix-blend-mode:screen}
.orb:hover .face{filter:drop-shadow(0 0 18px rgba(255,205,95,.9))}
.orbit{opacity:0;transition:opacity .6s}.coins-ready .orbit{opacity:1}
.intro-on .orbit{opacity:0}
.rim{position:absolute;left:50%;bottom:0;height:82%;width:auto;transform:translateX(-50%);z-index:4;pointer-events:none;opacity:.55;animation:rimp 5s ease-in-out infinite}
@keyframes rimp{50%{opacity:.85}}
.nameglow{position:absolute;left:50%;top:14%;width:min(90vw,1200px);height:min(30vw,380px);transform:translateX(-50%);z-index:0;pointer-events:none;background:radial-gradient(50% 50% at 50% 55%,rgba(240,190,80,.28),transparent 70%);animation:rimp 6s ease-in-out infinite}
.oline .gl{stroke:rgba(255,205,100,.12)!important;stroke-width:6!important}
.oline.back{z-index:0!important}.oline.front{z-index:6}
.comet{position:absolute;left:-14px;top:-14px;width:28px;height:28px;border-radius:50%;pointer-events:none;background:radial-gradient(circle,#fff6d8 0,rgba(255,215,120,.85) 18%,rgba(240,180,70,.25) 45%,transparent 70%);will-change:transform,opacity}
.sparks{position:absolute;inset:0;z-index:2;pointer-events:none;overflow:hidden}
.sparks i{position:absolute;left:var(--x);top:var(--y);width:4px;height:4px;border-radius:50%;background:radial-gradient(circle,#fff3c4,rgba(233,190,95,0) 70%);box-shadow:0 0 6px rgba(255,210,110,.8);opacity:0;animation:spark var(--d) linear var(--dl) infinite;will-change:transform,opacity}
@keyframes spark{0%{transform:translate3d(0,20px,0);opacity:0}20%{opacity:.9}80%{opacity:.6}100%{transform:translate3d(14px,-70px,0);opacity:0}}
.touch .sparks i:nth-child(n+8){display:none}
.gcard{background:linear-gradient(135deg,#fff8d6 0%,#f0cf78 18%,#b8862a 38%,#ffe39a 55%,#c9962f 75%,#fff4cc 100%)}
.gcard{position:relative}.gcard::after{content:"";position:absolute;inset:-10px;border-radius:28px;pointer-events:none;background:radial-gradient(60% 70% at 50% 50%,rgba(240,190,80,.0),transparent);box-shadow:0 0 34px 6px rgba(240,195,90,.45);opacity:.35;animation:cardp 4.5s ease-in-out infinite;z-index:-1}
.gcard:nth-child(2)::after{animation-delay:-1.5s}.gcard:nth-child(3)::after{animation-delay:-3s}
@keyframes cardp{50%{opacity:1}}
@media (max-width:900px){.rim{width:128vw;height:auto}.orb{--d:100px!important}}
@media (prefers-reduced-motion:reduce){.sparks,.comet{display:none}.rim,.nameglow,.gcard::after{animation:none}}
/* rim sprite has 60px@0.5x padding (=120px source) on left/right/top: scale container to match */
.rim{height:calc(82% * (1027 + 120) / 1027);opacity:.5}
@media (max-width:900px){.rim{width:calc(128vw * (1295 + 240) / 1295);height:auto}}
.oline,.comet,.xrings{display:none!important}
@media (max-width:900px){.rim{width:calc(128vw * (1295 + 240) / 1295);height:auto}}
.oline,.comet,.xrings{display:none!important}
/* v33 preview: three metals */
.o1 .face{background-image:url(../assets/img/coin6-o1-600.webp?v=7);background-image:image-set(url(../assets/img/coin6-o1-340.webp?v=7) 1x,url(../assets/img/coin6-o1-600.webp?v=7) 2x,url(../assets/img/coin6-o1-900.webp?v=7) 3x)}.o2 .face{background-image:url(../assets/img/coin6-o2-600.webp?v=6);background-image:image-set(url(../assets/img/coin6-o2-340.webp?v=6) 1x,url(../assets/img/coin6-o2-600.webp?v=6) 2x,url(../assets/img/coin6-o2-900.webp?v=6) 3x)}.o3 .face{background-image:url(../assets/img/coin6-o3-600.webp?v=6);background-image:image-set(url(../assets/img/coin6-o3-340.webp?v=6) 1x,url(../assets/img/coin6-o3-600.webp?v=6) 2x,url(../assets/img/coin6-o3-900.webp?v=6) 3x)}
.o1 .halo{background-image:url(../assets/img/halo-o1.webp?v=2)}.o2 .halo{background-image:url(../assets/img/halo-o2.webp?v=2)}.o3 .halo{background-image:url(../assets/img/halo-o3.webp?v=2);mix-blend-mode:screen}
.o3 .halo{opacity:.5}

/* v36 round coins: uniform scale only, softer halo, contact shadow */
.orb .face{filter:drop-shadow(0 6px 6px rgba(0,0,0,.55)) drop-shadow(0 14px 18px rgba(0,0,0,.35))}.orb .halo{inset:-30%}

/* v38 cinematic video */
.vsec{position:relative;width:100%;height:min(92svh,820px);min-height:520px;overflow:hidden;background:#141414 center/cover no-repeat;display:flex;align-items:center;justify-content:center;text-align:center}
.vbg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transform:translateZ(0)}
.vshade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(14,14,15,.85) 0%,rgba(14,14,15,.25) 30%,rgba(14,14,15,.35) 62%,rgba(14,14,15,.9) 100%),radial-gradient(70% 55% at 50% 50%,rgba(0,0,0,.35),transparent 75%)}
.vtxt{position:relative;z-index:2;padding:0 22px;max-width:1100px}
.vtxt h2{margin:0;font-family:"Inter Tight",system-ui,sans-serif;font-weight:900;letter-spacing:-.03em;line-height:.95;font-size:clamp(44px,7.4vw,112px);font-variant-numeric:lining-nums;background:linear-gradient(180deg,#fff1c4 0%,#f0c868 45%,#b8862a 100%);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 4px 18px rgba(0,0,0,.55))}
.vtxt p{margin:18px 0 30px;color:#f3e6c4;font-size:clamp(15px,1.5vw,20px);letter-spacing:.14em;text-transform:uppercase;font-weight:600;text-shadow:0 2px 10px rgba(0,0,0,.7)}
.vbtn{display:inline-block;padding:16px 38px;border-radius:999px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:#1a1306;text-decoration:none;background:linear-gradient(135deg,#fff3c8,#f0c868 40%,#c9962f 75%,#ffe39a);box-shadow:0 10px 30px -8px rgba(240,190,80,.6);transition:transform .3s,box-shadow .3s}
.vbtn:hover{transform:translateY(-3px);box-shadow:0 16px 40px -8px rgba(240,190,80,.85)}
.fx .vtxt.rv{opacity:0;transform:translateY(34px);transition:opacity 1.1s ease,transform 1.1s cubic-bezier(.2,.7,.2,1)}
.fx .vtxt.rv.in{opacity:1;transform:none}
@media (max-width:700px) and (orientation:portrait){.vsec{height:88svh;min-height:560px}}
.orb .face{background-size:contain!important;border-radius:0!important;filter:drop-shadow(0 0 10px rgba(255,200,90,.35)) drop-shadow(0 10px 14px rgba(0,0,0,.55))!important}
.orb:hover .face,.orb:focus-visible .face{filter:drop-shadow(0 0 22px rgba(255,205,95,.85)) drop-shadow(0 10px 14px rgba(0,0,0,.5))!important}
/* v53 3D coins with angle-driven light */
.o1 .face{background-image:url(../assets/coins/buy-sell-rent-v52.webp?v=52)!important}.o2 .face{background-image:url(../assets/coins/one-percent-v52.webp?v=52)!important}.o3 .face{background-image:url(../assets/coins/ai-studio-v52.webp?v=52)!important}
.has3d .orb .face{background-size:0 0!important;perspective:600px}
.coin{position:absolute;inset:0;transform-style:preserve-3d}
.coin>i{position:absolute;inset:0;backface-visibility:hidden;background:var(--img) center/contain no-repeat}
.coin>.cf{transform:translateZ(4.5px);filter:brightness(var(--bf,1)) contrast(var(--cf,1)) saturate(var(--sf,1))}
.coin>.cb{transform:rotateY(180deg) translateZ(4.5px);filter:brightness(var(--bb,1)) contrast(var(--cb,1)) saturate(var(--sb,1))}
.coin>.ce{backface-visibility:visible;filter:brightness(var(--eb,.55)) sepia(.3)}
.coin>i>b,.coin>i>s,.coin>i>u{position:absolute;inset:0;-webkit-mask:var(--img) center/contain no-repeat;mask:var(--img) center/contain no-repeat;pointer-events:none}
.coin>i>u{background:radial-gradient(circle at 50% 50%,rgba(40,24,4,.2),rgba(30,18,2,.85));opacity:var(--dk,0)}
.coin>.cf>b{background:radial-gradient(ellipse 34% 60% at var(--hxf,50%) 38%,rgba(255,252,235,.95),rgba(255,226,150,.45) 45%,transparent 75%),linear-gradient(100deg,transparent calc(var(--hxf,50%) - 22%),rgba(255,248,220,.7) var(--hxf,50%),transparent calc(var(--hxf,50%) + 22%));mix-blend-mode:soft-light;opacity:var(--sp,0)}
.coin>.cb>b{background:radial-gradient(ellipse 34% 60% at var(--hxb,50%) 38%,rgba(255,252,235,.95),rgba(255,226,150,.45) 45%,transparent 75%),linear-gradient(100deg,transparent calc(var(--hxb,50%) - 22%),rgba(255,248,220,.7) var(--hxb,50%),transparent calc(var(--hxb,50%) + 22%));mix-blend-mode:soft-light;opacity:var(--spb,0)}
.coin>i>s{background:radial-gradient(circle at var(--gx,20%) var(--gy,20%),rgba(255,255,245,1) 0,rgba(255,240,190,.7) 3%,transparent 9%),radial-gradient(ellipse 30% 50% at var(--hx2,50%) 40%,rgba(255,250,225,.55),transparent 70%);mix-blend-mode:screen;opacity:var(--fl,0)}
.coin>.cb>s{opacity:var(--flb,0)}
@media (prefers-reduced-motion:reduce){.coin{transform:none!important}}
/* v56 name first, then Jason rises */
.rise56 .iov{display:none!important}
.rise56 .me{animation:rise56 3s cubic-bezier(.22,.8,.3,1) 1.2s both}
.rise56 .rim{animation:rise56r 3s cubic-bezier(.22,.8,.3,1) 1.2s both,rimp 5s ease-in-out 4.2s infinite}
@keyframes rise56{0%{opacity:0;transform:translate(-50%,38vh)}35%{opacity:1}100%{opacity:1;transform:translateX(-50%)}}
@keyframes rise56r{0%{opacity:0;transform:translate(-50%,38vh)}100%{opacity:.5;transform:translateX(-50%)}}
.rise56 .orbit,.rise56 .oline,.rise56 .comet{opacity:0!important;transform:scale(.92);transition:none}
.rise56.rise56-done .orbit,.rise56.rise56-done .oline,.rise56.rise56-done .comet{opacity:1!important;transform:none;transition:opacity 1.1s ease,transform 1.3s cubic-bezier(.22,.8,.3,1)}
/* v57 slow rise from bottom of screen */
.rise56 .me{animation:rise57 4.6s cubic-bezier(.2,.65,.25,1) 1.2s both}
.rise56 .rim{animation:rise57r 4.6s cubic-bezier(.2,.65,.25,1) 1.2s both,rimp 5s ease-in-out 5.8s infinite}
@keyframes rise57{0%{transform:translate(-50%,calc(100vh + 20px))}100%{transform:translateX(-50%)}}
@keyframes rise57r{0%{opacity:.5;transform:translate(-50%,calc(100vh + 20px))}100%{opacity:.5;transform:translateX(-50%)}}
.rise56:not(.rise56-done),.rise56:not(.rise56-done) body{overflow-x:hidden}
