:root{
  --ink:#080b08;
  --deep:#0d130e;
  --moss:#253727;
  --fern:#56734e;
  --sage:#a3b18b;
  --sand:#d6b978;
  --amber:#c87926;
  --cream:#efe6cf;
  --paper:#d8cfb7;
  --line:rgba(239,230,207,.18);
  --mx:0;
  --my:0;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--ink)}
body{margin:0;background:var(--ink);color:var(--cream);font-family:"Trebuchet MS","Segoe UI",Arial,sans-serif;overflow-x:hidden;cursor:default}
a{color:inherit;text-decoration:none}
button{font:inherit}
::selection{background:var(--sand);color:var(--ink)}
.grain{position:fixed;inset:0;pointer-events:none;z-index:90;opacity:.14;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.84' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.32'/%3E%3C/svg%3E");mix-blend-mode:soft-light}
.cursor-orbit{position:fixed;width:42px;height:42px;border:1px solid rgba(214,185,120,.45);border-radius:50%;left:0;top:0;transform:translate(-50%,-50%);pointer-events:none;z-index:95;transition:width .2s,height .2s,border-color .2s;mix-blend-mode:screen}
.cursor-orbit span{position:absolute;width:4px;height:4px;background:var(--sand);border-radius:50%;left:50%;top:50%;transform:translate(-50%,-50%)}
body.link-hover .cursor-orbit{width:64px;height:64px;border-color:rgba(239,230,207,.8)}
.topbar{position:fixed;left:32px;right:32px;top:22px;height:66px;z-index:80;display:flex;align-items:center;justify-content:space-between;padding:0 20px;border:1px solid rgba(239,230,207,.14);background:rgba(7,11,8,.62);backdrop-filter:blur(16px);border-radius:18px;box-shadow:0 16px 50px rgba(0,0,0,.22)}
.brand{display:flex;gap:12px;align-items:center;font-weight:800;letter-spacing:.02em;text-transform:uppercase;font-size:14px}
.brand img{width:34px;height:34px;border-radius:50%;object-fit:cover;border:1px solid rgba(214,185,120,.35)}
.topbar nav{display:flex;gap:30px;color:rgba(239,230,207,.62);font-size:12px;font-weight:800;letter-spacing:.16em;text-transform:uppercase}
.topbar nav a,.mini-link{transition:color .2s,transform .2s}
.topbar nav a:hover,.mini-link:hover{color:var(--cream);transform:translateY(-1px)}
.top-actions{display:flex;gap:8px}.mini-link{font-size:11px;font-weight:900;letter-spacing:.12em;border:1px solid var(--line);padding:10px 13px;border-radius:11px;background:rgba(255,255,255,.03)}
.hero{position:relative;min-height:1080px;height:100vh;max-height:1180px;overflow:hidden;background:radial-gradient(circle at 72% 40%,rgba(181,124,49,.18),transparent 23%),radial-gradient(circle at 20% 85%,rgba(69,105,64,.28),transparent 28%),linear-gradient(135deg,#0a0f0b 0%,#111912 44%,#080b08 100%)}
.hero:after{content:"";position:absolute;inset:auto 0 0;height:280px;background:linear-gradient(transparent,var(--ink));pointer-events:none;z-index:4}
.hero-haze{position:absolute;border-radius:50%;filter:blur(90px);opacity:.38;pointer-events:none;animation:breathe 7s ease-in-out infinite alternate}.haze-a{width:500px;height:500px;background:#6e7e3f;left:-120px;top:120px}.haze-b{width:460px;height:460px;background:#8f5c21;right:5%;bottom:3%;animation-delay:-2.5s}
.canopy{position:absolute;width:560px;height:620px;filter:blur(1px);opacity:.56;z-index:1;background:radial-gradient(ellipse at 50% 50%,#203c25 0 16%,transparent 17%),radial-gradient(ellipse at 30% 72%,#182b1c 0 12%,transparent 13%),radial-gradient(ellipse at 72% 25%,#2b4026 0 14%,transparent 15%);transform:translate3d(calc(var(--mx)*1px),calc(var(--my)*1px),0)}
.canopy-left{left:-210px;bottom:40px;rotate:-13deg}.canopy-right{right:-230px;top:110px;rotate:31deg;opacity:.35}
.hero-copy{position:absolute;z-index:10;left:8.2vw;top:25%;width:610px;transform:translate3d(calc(var(--mx)*1px),calc(var(--my)*1px),0)}
.eyebrow,.section-kicker{margin:0 0 20px;color:var(--sand);font-size:12px;font-weight:900;letter-spacing:.24em;text-transform:uppercase}
h1{margin:0;font-family:Georgia,"Times New Roman",serif;font-weight:400;line-height:.78;letter-spacing:-.065em;font-size:clamp(92px,8vw,156px)}
h1 span{display:block;color:rgba(239,230,207,.9);font-style:italic}h1 strong{display:block;font-weight:900;color:var(--cream)}
.ticker-badge{display:inline-flex;margin-top:25px;border:1px solid rgba(214,185,120,.4);background:rgba(214,185,120,.08);color:var(--sand);font-weight:900;letter-spacing:.18em;padding:11px 15px;border-radius:999px;text-transform:uppercase}
.hero-intro{max-width:500px;color:rgba(239,230,207,.66);font-size:18px;line-height:1.65;margin:24px 0 28px}
.hero-buttons{display:flex;gap:12px}.btn{position:relative;display:inline-flex;align-items:center;justify-content:center;min-width:156px;height:52px;padding:0 20px;border-radius:14px;font-size:12px;font-weight:900;letter-spacing:.14em;overflow:hidden;transition:transform .2s,box-shadow .2s,border-color .2s}.btn:before{content:"";position:absolute;inset:0;transform:translateX(-105%);transition:transform .35s;background:linear-gradient(110deg,transparent,rgba(255,255,255,.14),transparent)}.btn:hover:before{transform:translateX(105%)}.btn:hover{transform:translateY(-3px)}.btn.claw{background:var(--cream);color:var(--ink);box-shadow:0 10px 35px rgba(214,185,120,.12)}.btn.leaf{border:1px solid rgba(239,230,207,.25);background:rgba(255,255,255,.04)}
.hero-character-wrap{position:absolute;z-index:8;width:min(63vw,1030px);right:-2vw;bottom:-5px;height:90%;display:flex;align-items:flex-end;justify-content:center;transform:translate3d(calc(var(--mx)*1px),calc(var(--my)*1px),0)}
.hero-character{width:100%;height:100%;object-fit:contain;object-position:center bottom;filter:drop-shadow(0 26px 50px rgba(0,0,0,.72)) saturate(.98);animation:catFloat 5.5s ease-in-out infinite;transform-origin:50% 100%;position:relative;z-index:3}
.character-shadow{position:absolute;width:58%;height:70px;left:22%;bottom:21px;background:rgba(0,0,0,.72);filter:blur(28px);border-radius:50%;z-index:1}
.eye-glow{position:absolute;width:180px;height:180px;border-radius:50%;background:rgba(200,121,38,.11);filter:blur(45px);z-index:2;animation:eyePulse 3.8s ease-in-out infinite}.eye-glow-a{left:42%;top:35%}.eye-glow-b{right:14%;top:36%;animation-delay:-1.4s}
.secret-mark{position:absolute;z-index:6;right:17%;top:17%;width:38px;height:38px;border-radius:50%;border:1px solid rgba(239,230,207,.12);background:rgba(7,11,8,.28);color:rgba(239,230,207,.3);cursor:pointer;transition:.25s}.secret-mark:hover{color:var(--sand);border-color:rgba(214,185,120,.42);rotate:12deg}
.contract-panel{position:absolute;z-index:14;left:8.2vw;bottom:7.3%;width:min(680px,47vw);display:grid;grid-template-columns:1fr auto;grid-template-areas:"label button" "value button";gap:6px 18px;padding:16px 16px 16px 19px;border-radius:16px;border:1px solid rgba(239,230,207,.16);background:rgba(8,11,8,.6);backdrop-filter:blur(14px);box-shadow:0 16px 38px rgba(0,0,0,.24);transform:translate3d(calc(var(--mx)*1px),calc(var(--my)*1px),0)}
.contract-label{grid-area:label;font-size:9px;font-weight:900;letter-spacing:.2em;color:var(--sand)}.contract-value{grid-area:value;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:rgba(239,230,207,.76);font-size:12px}.copy-btn{grid-area:button;border:0;border-radius:11px;background:var(--sand);color:var(--ink);padding:0 17px;font-size:11px;font-weight:900;letter-spacing:.11em;cursor:pointer;transition:transform .2s,background .2s}.copy-btn:hover{transform:translateY(-2px);background:#ead29c}.copy-btn:active{transform:translateY(0) scale(.98)}
.scroll-note{position:absolute;right:4.2vw;bottom:4.8%;z-index:12;display:flex;align-items:center;gap:10px;font-size:9px;font-weight:900;letter-spacing:.18em;color:rgba(239,230,207,.5);writing-mode:vertical-rl}.scroll-note span{width:1px;height:44px;background:linear-gradient(var(--sand),transparent);animation:scan 1.8s infinite}
.marquee{height:70px;background:var(--sand);color:var(--ink);overflow:hidden;display:flex;align-items:center;border-top:1px solid #ecd59e;border-bottom:1px solid #826b3e}.marquee-track{display:flex;align-items:center;gap:27px;white-space:nowrap;min-width:max-content;animation:marquee 26s linear infinite;font-weight:900;letter-spacing:.16em;font-size:12px}.marquee-track i{font-style:normal;opacity:.45}
.trail-section{position:relative;min-height:980px;padding:160px 8.2vw 120px;background:linear-gradient(180deg,#0a0d09,#121a12 52%,#0a0d09);display:grid;grid-template-columns:43% 57%;align-items:center;overflow:hidden}.trail-section:before{content:"";position:absolute;width:1000px;height:1000px;border:1px solid rgba(163,177,139,.08);border-radius:50%;left:-520px;top:80px;box-shadow:0 0 0 120px rgba(163,177,139,.015),0 0 0 260px rgba(163,177,139,.01)}
.trail-number{position:absolute;left:3vw;top:110px;font-family:Georgia,serif;font-size:220px;color:rgba(239,230,207,.035);line-height:1}.trail-copy{position:relative;z-index:2;max-width:630px;padding-right:60px}.trail-copy h2,.lore-copy h2,.observation-title h2,.den-copy h2,.final-content h2{font-family:Georgia,"Times New Roman",serif;font-weight:400;font-size:clamp(54px,5vw,92px);line-height:.98;letter-spacing:-.045em;margin:0;color:var(--cream)}.trail-copy>p:last-child,.den-copy>p:last-child{max-width:510px;color:rgba(239,230,207,.62);line-height:1.75;font-size:17px;margin-top:27px}
.trail-visual{position:relative;z-index:3;display:flex;justify-content:flex-end}.photo-window{width:min(720px,44vw);height:640px;position:relative;border-radius:38% 9% 32% 12%/25% 13% 37% 16%;overflow:hidden;box-shadow:0 38px 90px rgba(0,0,0,.46);border:1px solid rgba(239,230,207,.14);transform:rotate(1.5deg)}.photo-window img{width:100%;height:100%;object-fit:cover;transform:scale(1.02);transition:transform 1s ease}.photo-window:hover img{transform:scale(1.08)}.photo-window:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 56%,rgba(4,8,5,.68))}.focus-frame{position:absolute;inset:34px;border:1px solid rgba(239,230,207,.23);border-radius:34% 5% 28% 8%/21% 9% 31% 13%;z-index:2}.focus-frame:before,.focus-frame:after{content:"";position:absolute;width:30px;height:1px;background:var(--sand);left:50%;top:50%}.focus-frame:after{rotate:90deg}.photo-tag{position:absolute;z-index:4;bottom:28px;left:35px;font-size:10px;font-weight:900;letter-spacing:.17em;color:var(--paper)}
.paw-path{position:absolute;left:47%;bottom:100px;display:flex;gap:50px;rotate:-10deg;color:rgba(214,185,120,.2)}.paw-path span{font-size:12px;transform:scaleY(.7)}.paw-path span:nth-child(even){transform:translateY(-18px) scaleY(.7)}
.lore-section{position:relative;min-height:1000px;padding:120px 8.2vw;background:radial-gradient(circle at 20% 50%,rgba(133,94,40,.15),transparent 30%),linear-gradient(115deg,#090b08,#15130c 70%,#0a0d09);display:grid;grid-template-columns:52% 48%;align-items:center;overflow:hidden}.lore-cat{position:relative;height:730px;display:flex;align-items:center;justify-content:center;perspective:1000px;transition:transform .15s ease-out}.lore-cat img{position:relative;z-index:3;width:88%;height:90%;object-fit:contain;filter:drop-shadow(0 28px 40px rgba(0,0,0,.62));animation:catFloat 6.8s ease-in-out infinite reverse}.moon-ring{position:absolute;width:580px;height:580px;border-radius:50%;border:1px solid rgba(214,185,120,.25);box-shadow:0 0 0 80px rgba(214,185,120,.018),0 0 0 170px rgba(214,185,120,.009);background:radial-gradient(circle,rgba(214,185,120,.09),transparent 66%)}.specimen-label{position:absolute;z-index:5;left:8%;bottom:9%;padding:9px 12px;border:1px solid rgba(239,230,207,.18);background:rgba(8,11,8,.58);backdrop-filter:blur(8px);font-size:9px;font-weight:900;letter-spacing:.16em;color:var(--paper)}
.lore-copy{position:relative;z-index:4;padding-left:45px}.rules{margin-top:48px;border-top:1px solid var(--line)}.rules article{display:grid;grid-template-columns:70px 1fr;gap:18px;padding:26px 0;border-bottom:1px solid var(--line);align-items:start}.rules span{font-family:Georgia,serif;color:var(--sand);font-size:25px}.rules p{margin:0;max-width:460px;color:rgba(239,230,207,.68);font-size:17px;line-height:1.6}.rules article:hover p{color:var(--cream)}
.firefly-field{position:absolute;inset:0;pointer-events:none;background-image:radial-gradient(circle at 16% 21%,rgba(214,185,120,.6) 0 1px,transparent 2px),radial-gradient(circle at 28% 74%,rgba(214,185,120,.4) 0 1px,transparent 2px),radial-gradient(circle at 73% 18%,rgba(214,185,120,.35) 0 1px,transparent 2px),radial-gradient(circle at 82% 65%,rgba(214,185,120,.45) 0 1px,transparent 2px);background-size:230px 210px,330px 310px,260px 280px,390px 360px;animation:drift 13s linear infinite;opacity:.6}
.observation-section{position:relative;min-height:880px;padding:150px 8.2vw;background:#d7ceb6;color:#111810;overflow:hidden}.observation-section .section-kicker{color:#6e542d}.observation-title{display:flex;align-items:end;justify-content:space-between;border-bottom:1px solid rgba(17,24,16,.18);padding-bottom:35px}.observation-title h2{color:#111810;max-width:920px}.observation-grid{display:grid;grid-template-columns:1.1fr .9fr 1fr;gap:22px;margin-top:75px;align-items:stretch}.meter-card,.odd-note,.coordinates{min-height:250px;border:1px solid rgba(17,24,16,.2);padding:30px;position:relative}.meter-title,.odd-note>span,.coordinates>span{font-size:10px;font-weight:900;letter-spacing:.18em;color:rgba(17,24,16,.58)}.meter{height:16px;border:1px solid rgba(17,24,16,.5);margin:76px 0 12px;padding:3px}.meter b{display:block;width:var(--fill);height:100%;background:#111810;animation:meterIn 1.6s ease both}.meter-value{font-size:12px;font-weight:900;letter-spacing:.12em}.odd-note{background:#111810;color:var(--cream);border-radius:30px 4px 30px 4px;transform:rotate(-2deg);transition:transform .2s}.odd-note strong{display:block;font-family:Georgia,serif;font-weight:400;font-style:italic;font-size:38px;line-height:1.05;margin-top:55px}.coordinates{display:flex;flex-direction:column;justify-content:space-between;border-radius:50% 8px 8px 8px}.coordinates strong{font-family:Georgia,serif;font-weight:400;font-size:28px;line-height:1.15}.leaf-cluster{position:absolute;right:-80px;top:-60px;width:440px;height:330px;opacity:.14;rotate:-12deg}.leaf-cluster i{position:absolute;width:180px;height:70px;background:#243722;border-radius:100% 0 100% 0;transform-origin:0 100%}.leaf-cluster i:nth-child(1){left:30px;top:80px;rotate:20deg}.leaf-cluster i:nth-child(2){left:120px;top:10px;rotate:55deg}.leaf-cluster i:nth-child(3){left:190px;top:90px;rotate:100deg}.leaf-cluster i:nth-child(4){left:115px;top:170px;rotate:145deg}
.den-section{min-height:820px;padding:150px 8.2vw;background:radial-gradient(circle at 90% 10%,rgba(95,121,79,.18),transparent 24%),#0c120d;display:grid;grid-template-columns:42% 58%;gap:70px;align-items:center}.den-copy h2{font-size:72px}.den-actions{display:grid;gap:18px}.den-door{position:relative;min-height:170px;padding:28px 32px;border:1px solid rgba(239,230,207,.16);background:rgba(255,255,255,.025);display:grid;grid-template-columns:1fr auto;grid-template-rows:auto 1fr;align-items:end;overflow:hidden;transition:transform .3s,border-color .3s,background .3s}.den-door:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 95% 50%,rgba(214,185,120,.2),transparent 27%);opacity:0;transition:opacity .3s}.den-door:hover{transform:translateX(-10px);border-color:rgba(214,185,120,.45);background:rgba(214,185,120,.05)}.den-door:hover:before{opacity:1}.door-label{grid-column:1/-1;align-self:start;font-size:9px;font-weight:900;letter-spacing:.18em;color:var(--sand)}.den-door strong{font-family:Georgia,serif;font-size:40px;font-weight:400}.den-door em{font-style:normal;font-size:32px;color:var(--sand);transition:transform .3s}.den-door:hover em{transform:translate(8px,-8px)}
.final-section{position:relative;min-height:920px;background:radial-gradient(circle at 50% 30%,rgba(188,119,40,.13),transparent 24%),linear-gradient(#080b08,#030403);display:flex;align-items:center;justify-content:center;padding:150px 8.2vw 90px;overflow:hidden}.final-section:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 49.9%,rgba(239,230,207,.04) 50%,transparent 50.1%),linear-gradient(transparent 49.9%,rgba(239,230,207,.03) 50%,transparent 50.1%);background-size:100px 100px;mask-image:linear-gradient(transparent,black 25%,black 75%,transparent)}.final-eyes{position:absolute;top:130px;left:50%;transform:translateX(-50%);display:flex;gap:92px;opacity:.3}.final-eyes span{width:50px;height:24px;background:radial-gradient(ellipse at center,#ffc462 0 12%,#a96820 14% 28%,#17120b 30% 62%,transparent 65%);border-radius:50%;filter:drop-shadow(0 0 18px rgba(200,121,38,.5));animation:blink 6s infinite}.final-eyes span:nth-child(2){animation-delay:.05s}.final-content{text-align:center;position:relative;z-index:2;width:min(980px,75vw)}.final-content h2{font-size:clamp(80px,8vw,150px);font-style:italic;line-height:.85}.final-ticker{font-size:18px;font-weight:900;letter-spacing:.18em;color:var(--sand);text-transform:uppercase;margin:28px 0 46px}.final-contract{display:grid;grid-template-columns:1fr auto;border:1px solid rgba(239,230,207,.18);background:rgba(255,255,255,.025);padding:8px;border-radius:15px;max-width:740px;margin:0 auto}.final-contract code{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:left;padding:15px;color:rgba(239,230,207,.68)}.final-contract button{border:0;border-radius:10px;padding:0 20px;background:var(--sand);font-size:10px;font-weight:900;letter-spacing:.12em;cursor:pointer}.final-links{display:flex;justify-content:center;gap:28px;margin-top:30px;font-size:11px;font-weight:900;letter-spacing:.14em}.final-links a{color:rgba(239,230,207,.62);transition:color .2s}.final-links a:hover{color:var(--sand)}footer{position:absolute;bottom:30px;left:8.2vw;right:8.2vw;display:flex;justify-content:space-between;border-top:1px solid rgba(239,230,207,.12);padding-top:20px;color:rgba(239,230,207,.35);font-size:9px;font-weight:900;letter-spacing:.17em}
.toast,.secret-message{position:fixed;z-index:100;left:50%;bottom:38px;transform:translate(-50%,24px);padding:13px 17px;border:1px solid rgba(214,185,120,.35);background:rgba(8,11,8,.9);backdrop-filter:blur(12px);border-radius:999px;color:var(--sand);font-size:10px;font-weight:900;letter-spacing:.14em;opacity:0;pointer-events:none;transition:.3s}.toast.show,.secret-message.show{opacity:1;transform:translate(-50%,0)}.secret-message{bottom:94px;color:var(--cream)}
.reveal{opacity:0;transform:translateY(32px);transition:opacity .85s ease,transform .85s cubic-bezier(.2,.7,.1,1)}.reveal.visible{opacity:1;transform:none}
@keyframes catFloat{0%,100%{transform:translateY(0) rotate(.1deg)}50%{transform:translateY(-12px) rotate(-.25deg)}}
@keyframes breathe{to{transform:scale(1.15);opacity:.5}}
@keyframes eyePulse{50%{transform:scale(1.2);opacity:.65}}
@keyframes scan{0%{transform:scaleY(.2);transform-origin:top}50%{transform:scaleY(1);transform-origin:top}51%{transform-origin:bottom}100%{transform:scaleY(.2);transform-origin:bottom}}
@keyframes marquee{to{transform:translateX(-50%)}}
@keyframes drift{to{background-position:230px -210px,-330px 310px,260px 280px,-390px -360px}}
@keyframes meterIn{from{width:0}}
@keyframes blink{0%,45%,48%,100%{transform:scaleY(1)}46%,47%{transform:scaleY(.06)}}
@media (max-width:1450px){
  .hero-copy{left:6vw;width:540px}.contract-panel{left:6vw;width:570px}.hero-character-wrap{width:66vw;right:-7vw}.trail-section,.lore-section,.observation-section,.den-section,.final-section{padding-left:6vw;padding-right:6vw}.trail-copy h2,.lore-copy h2{font-size:68px}.photo-window{height:560px}.topbar{left:22px;right:22px}.den-copy h2{font-size:62px}
}
@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition-duration:.01ms!important}.reveal{opacity:1;transform:none}}
