:root{
  --bg:#15100f; --panel:#221a18; --line:#000; --ink:#fff1dc; --mute:#b9a698;
  --gold:#ffc94a; --gold2:#ff9a3d; --coral:#f0524a; --violet:#8a3d8f;
  --s:#ff7f7f; --a:#ffbf7f; --b:#ffdf7f; --c:#ffff7f; --f:#7fbfff;
  --disp:'Bowlby One',Impact,sans-serif; --body:'Inter',system-ui,sans-serif; --mono:'JetBrains Mono',ui-monospace,monospace;
  --w:1360px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;scroll-padding-top:72px;overflow-x:hidden}
body{min-width:1180px;background:var(--bg);color:var(--ink);font:16px/1.55 var(--body);overflow-x:hidden}
body::before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;
  background:radial-gradient(1200px 600px at 85% -10%,rgba(240,82,74,.22),transparent 60%),
             radial-gradient(900px 500px at 0% 30%,rgba(138,61,143,.2),transparent 60%)}
img{display:block;max-width:100%;height:auto}
a{color:inherit;text-decoration:none}
em{font-style:normal;color:var(--gold)}
.kick{font:700 13px/1 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--gold2);margin-bottom:14px}

/* NAV */
.nav{position:sticky;top:0;z-index:50;height:64px;display:flex;align-items:center;gap:32px;padding:0 40px;
  background:rgba(21,16,15,.86);backdrop-filter:blur(10px);border-bottom:2px solid #000}
.brand{display:flex;align-items:center;gap:12px;font:22px/1 var(--disp)}
.brand img{width:40px;height:40px;border-radius:8px;border:2px solid var(--gold)}
.chip{font:700 13px/1 var(--mono);background:var(--gold);color:#000;padding:6px 9px;border-radius:6px}
.links{display:flex;gap:26px;margin-left:auto;font-weight:600;color:var(--mute)}
.links a:hover{color:var(--ink)}
.nav-cta{display:flex;gap:10px}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;height:44px;padding:0 20px;border-radius:10px;
  font:800 15px/1 var(--body);border:2px solid #000;transition:transform .15s,box-shadow .15s;cursor:pointer;white-space:nowrap}
.btn svg{width:17px;height:17px;fill:currentColor}
.btn--gold{background:linear-gradient(180deg,var(--gold),var(--gold2));color:#1a0d00;box-shadow:0 4px 0 #000}
.btn--ghost{background:#2c2220;color:var(--ink);box-shadow:0 4px 0 #000}
.btn:hover{transform:translateY(-2px);box-shadow:0 6px 0 #000}
.btn:active{transform:translateY(2px);box-shadow:0 1px 0 #000}
.btn--big{height:56px;padding:0 28px;font-size:17px}

/* HERO */
.hero{max-width:var(--w);margin:0 auto;padding:26px 40px 0;box-sizing:content-box}
.hero-top{display:flex;align-items:flex-end;justify-content:space-between;gap:32px;margin-bottom:22px}
h1{font:96px/.92 var(--disp);letter-spacing:-.01em;text-shadow:0 5px 0 #000,0 0 40px rgba(255,138,61,.35);white-space:nowrap}
h1 .ch{display:inline-block;animation:drop .6s cubic-bezier(.2,1.6,.4,1) both}
@keyframes drop{from{opacity:0;transform:translateY(-60px) rotate(-8deg)}}

.ca-card{flex:0 0 400px;background:var(--panel);border:2px solid #000;border-radius:14px;padding:16px;box-shadow:0 6px 0 #000}
.ca-label{display:block;font:700 11px/1 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--mute);margin-bottom:9px}
.ca-row{display:flex;align-items:stretch;background:#0e0a09;border:2px solid #000;border-radius:10px;overflow:hidden}
.ca-row code{flex:1;min-width:0;padding:11px 12px;font:700 15px/1.35 var(--mono);color:var(--gold);word-break:break-all}
.copy{flex:0 0 auto;padding:0 18px;border:0;border-left:2px solid #000;background:var(--gold);color:#000;font:800 14px var(--body);cursor:pointer}
.copy:hover{background:#ffe08a}
.ca-btns{display:flex;gap:10px;margin-top:12px}
.ca-btns .btn{flex:1}

/* TIER ROWS */
.tier{display:flex;border:2px solid #000;border-top:0;background:var(--panel)}
.tier--god{border-top:2px solid #000;border-radius:14px 14px 0 0;overflow:hidden}
.tl{flex:0 0 170px;display:flex;flex-direction:column;align-items:center;justify-content:center;border-right:2px solid #000;color:#120a05;position:relative}
.tl span{font:64px/1 var(--disp)}
.tl small{font:800 13px/1 var(--mono);letter-spacing:.3em;text-transform:uppercase;margin-top:6px}
.tier--god .tl{background:linear-gradient(115deg,#ffb52e 0%,#ffe48a 30%,#ffc94a 45%,#ff9a3d 70%,#ffd86b 100%);background-size:250% 100%;animation:shine 4s linear infinite}
.tier--god .tl span{font-size:58px;text-shadow:0 3px 0 rgba(255,255,255,.45)}
@keyframes shine{to{background-position:-250% 0}}
.crown{width:64px;height:40px;fill:#120a05;margin-bottom:10px;animation:bob 2.4s ease-in-out infinite}
@keyframes bob{50%{transform:translateY(-6px) rotate(-4deg)}}
.tier--s .tl{background:var(--s)} .tier--a .tl{background:var(--a)} .tier--b .tl{background:var(--b)}
.tier--c .tl{background:var(--c)} .tier--f .tl{background:var(--f)}
.tr{flex:1;min-width:0;display:flex;align-items:center;gap:14px;padding:14px;position:relative}
.god-shot{padding:0;overflow:hidden}
.god-shot img{width:100%;transition:transform 1.2s cubic-bezier(.2,.8,.2,1)}
.god-shot:hover img{transform:scale(1.03)}
.sticker{position:absolute;top:18px;left:18px;font:22px/1 var(--disp);background:var(--coral);color:#fff;padding:10px 16px;border:2px solid #000;border-radius:10px;
  transform:rotate(-6deg);box-shadow:0 4px 0 #000}

.list{max-width:var(--w);margin:0 auto 0;padding:0 40px;box-sizing:content-box}
.list .tier:last-child{border-radius:0 0 14px 14px;overflow:hidden}
.tile{flex:0 0 240px;height:180px;border:2px solid #000;border-radius:8px;overflow:hidden;position:relative;background:#000;transition:transform .2s}
.tile:hover{transform:translateY(-4px) rotate(-1.5deg)}
.tile img{width:100%;height:100%;object-fit:cover}
.tile figcaption{position:absolute;left:0;right:0;bottom:0;padding:22px 10px 8px;font:800 14px/1 var(--body);background:linear-gradient(transparent,rgba(0,0,0,.8))}
.tile--txt{display:flex;align-items:center;justify-content:center;text-align:center;font:26px/1.05 var(--disp);color:var(--ink);background:#2f2523}
.tier--f .tile--txt{background:#1d2633;color:#a9cdf5}
.note{margin-left:auto;padding-right:16px;max-width:300px;text-align:right;font:600 15px/1.4 var(--body);color:var(--mute);font-style:italic}

/* VERDICT */
.verdict{max-width:var(--w);margin:110px auto 0;padding:0 40px;box-sizing:content-box;display:grid;grid-template-columns:560px 1fr;gap:70px;align-items:center}
.portrait{position:relative;border:3px solid #000;border-radius:18px;overflow:hidden;aspect-ratio:4/5;box-shadow:12px 12px 0 var(--coral),12px 12px 0 2px #000;transform:rotate(-1.5deg)}
.portrait img{width:100%;height:100%;object-fit:cover}
.badge{position:absolute;top:18px;right:18px;font:34px/1 var(--disp);color:#120a05;background:linear-gradient(135deg,#ffe48a,#ff9a3d);padding:14px 18px;border:3px solid #000;border-radius:12px;transform:rotate(8deg);box-shadow:0 5px 0 #000}
h2{font:58px/1 var(--disp);text-shadow:0 4px 0 #000;margin-bottom:28px}
.grades{list-style:none;border:2px solid #000;border-radius:14px;overflow:hidden;background:var(--panel);margin-bottom:30px}
.grades li{display:flex;align-items:center;justify-content:space-between;padding:12px 18px;border-bottom:2px solid #000;font:700 19px/1 var(--body)}
.grades li:last-child{border-bottom:0}
.g{display:inline-grid;place-items:center;min-width:52px;height:42px;padding:0 10px;border:2px solid #000;border-radius:8px;font:22px/1 var(--disp);color:#120a05}
.g--god{background:linear-gradient(135deg,#ffe48a,#ff9a3d)} .g--s{background:var(--s)} .g--a{background:var(--a)}
.g--b{background:var(--b)} .g--f{background:var(--f)}

/* SCENES (shown only when art lands) */
.scene{position:relative;height:min(600px,41.6vw);margin-top:110px;background:center/cover no-repeat;display:flex;align-items:center;border-top:2px solid #000;border-bottom:2px solid #000}
.scene--l{justify-content:flex-start} .scene--r{justify-content:flex-end}
.scene-copy{max-width:440px;margin:0 56px;padding:28px 32px;border-radius:16px;background:radial-gradient(closest-side,rgba(10,6,5,.72),rgba(10,6,5,.35))}
.scene-copy h2{font-size:64px;margin:14px 0 10px}
.scene-copy p{font-size:19px;font-weight:600}
.pill{display:inline-block;font:20px/1 var(--disp);background:var(--s);color:#120a05;padding:8px 14px;border:2px solid #000;border-radius:8px}

/* HOW */
.how{max-width:var(--w);margin:120px auto 0;padding:0 40px;box-sizing:content-box}
.steps{list-style:none;display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.steps li{background:var(--panel);border:2px solid #000;border-radius:14px;padding:22px;box-shadow:0 6px 0 #000}
.steps .g{margin-bottom:16px}
.steps h3{font:24px/1.1 var(--disp);margin-bottom:8px}
.steps p{color:var(--mute)}

/* FINALE */
.finale{margin-top:130px;min-height:640px;display:grid;place-items:center;text-align:center;border-top:2px solid #000;
  background:linear-gradient(rgba(21,16,15,.35),rgba(21,16,15,.55)),url(../img/finale.jpg) center/cover no-repeat}
.finale-in{padding:60px 40px}
.god-tile{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;width:150px;height:150px;border:3px solid #000;border-radius:16px;color:#120a05;
  background:linear-gradient(115deg,#ffb52e 0%,#ffe48a 30%,#ffc94a 45%,#ff9a3d 70%,#ffd86b 100%);background-size:250% 100%;animation:shine 4s linear infinite;box-shadow:0 7px 0 #000;transform:rotate(-4deg);margin-bottom:26px}
.god-tile span{font:52px/1 var(--disp)} .god-tile small{font:800 12px/1 var(--mono);letter-spacing:.3em;text-transform:uppercase;margin-top:4px}
.finale h2{font-size:72px;margin-bottom:10px}
.finale .sub{font:700 22px/1.3 var(--body);margin-bottom:26px}
.ca-row--wide{width:560px;margin:0 auto}
.ca-row--wide code{font-size:18px;padding:15px 16px}
.finale .ca-btns{justify-content:center;margin-top:18px}
.finale .ca-btns .btn{flex:0 0 auto}

.foot{max-width:var(--w);margin:0 auto;padding:30px 40px 40px;box-sizing:content-box;color:var(--mute);font-size:13px;display:flex;justify-content:space-between;gap:40px}
.foot p:first-child{max-width:860px}

/* toast + reveal */
.toast{position:fixed;left:50%;bottom:36px;translate:-50% 30px;opacity:0;visibility:hidden;z-index:90;font:22px/1 var(--disp);color:#120a05;
  background:linear-gradient(135deg,#ffe48a,#ff9a3d);padding:16px 24px;border:3px solid #000;border-radius:12px;box-shadow:0 6px 0 #000;transition:.25s}
.toast.on{opacity:1;visibility:visible;translate:-50% 0}
.reveal{opacity:0;translate:0 40px;transition:opacity .7s,translate .7s cubic-bezier(.2,.8,.2,1)}
.list .tier.reveal{translate:none}
.reveal.in{opacity:1;translate:0 0}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}.reveal{opacity:1;translate:none}}
.scene--beach{background-image:url(../img/scene-beach.jpg)}
.scene--night{background-image:url(../img/scene-night.jpg)}
.foot-r{display:flex;flex-direction:column;align-items:flex-end;gap:10px;flex:0 0 auto}
.visits{display:none;align-items:center;gap:10px;font:700 12px/1 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--mute);
  background:var(--panel);border:2px solid #000;border-radius:10px;padding:8px 8px 8px 12px;box-shadow:0 4px 0 #000}
.visits:has(#website_visits_aaron:not([hidden])){display:inline-flex}
.visits #website_visits_aaron{font:16px/1 var(--disp);letter-spacing:0;color:#120a05;background:linear-gradient(135deg,#ffe48a,#ff9a3d);border:2px solid #000;border-radius:7px;padding:6px 10px}
