/* MIHAO — cinematic temple atmosphere */
:root{--ink:#e8dfc7;--cream:#e8dfc7;--deep:#171813;--gold:#bca571;--red:#762b22;--muted:#b4a78b;--serif:'DM Sans',Arial,sans-serif;--sans:'DM Sans',Arial,sans-serif}
html{scroll-behavior:smooth}body{background:#151713;color:#e8dfc7;font-family:var(--sans)}
a,button{font-family:inherit}button:focus-visible,a:focus-visible{outline:2px solid #d8be79;outline-offset:4px}
.header{position:absolute;top:0;left:0;width:100%;height:78px;z-index:20;padding:0 4.5%;gap:20px;background:linear-gradient(180deg,rgba(10,13,10,.76),rgba(10,13,10,.12));border:0;box-shadow:none}
.brand{font:700 22px/.9 var(--sans);letter-spacing:.02em;color:#eee5cd;text-shadow:none;transform:none}.brand-dot,.footer-brand span{color:#bf9275}.brand small{font:600 7px/1 var(--sans);color:#c0b395;letter-spacing:.18em;margin-top:7px}.brand-stamp{width:33px;height:36px;border:1px solid #c1a674;color:#e7d9ba;background:#752c23;border-radius:0;box-shadow:none;transform:none;font:500 22px Georgia,serif}
.header nav{display:flex;gap:22px;font-size:10px;letter-spacing:.09em;text-transform:uppercase}.header nav a{color:#ded3bc;padding:10px 2px;border:0;border-radius:0;font-weight:600}.header nav a:hover{color:#fff7df;background:none}.header-actions{gap:18px}.sound{background:#1c201ab3;border:1px solid #b1a08075;border-radius:2px;padding:9px 11px;color:#eee2cb;box-shadow:none;font-size:10px;font-weight:600;letter-spacing:.04em}.sound-icon{color:#c7a879;font-size:15px}.pill{display:inline-flex;align-items:center;justify-content:space-between;gap:26px;border:1px solid #c1a578;border-radius:2px;box-shadow:none;text-transform:uppercase;font:700 10px var(--sans);letter-spacing:.1em;transition:background .2s,border-color .2s,color .2s,transform .2s}.pill:hover{transform:none;box-shadow:none}.header-cta{padding:12px 15px;background:#692a22d9;border-color:#b38e68;color:#f3e3ca;transform:none}.header-cta:hover{background:#85382b;color:#fff1d9;transform:none}.primary{min-width:0;background:#a04230;border-color:#bb9671;color:#fff0d6;box-shadow:none}.primary:hover{background:#bd5840;color:#fff8e6}
.hero{position:relative;display:block;width:100%;height:100svh;min-height:690px;max-height:none;padding:0;overflow:hidden;background:#253229 url('./assets/temple.jpg') center/cover no-repeat;border:0}
.hero:before{content:'';position:absolute;inset:0;z-index:3;pointer-events:none;opacity:1;mask-image:none;background:linear-gradient(180deg,rgba(10,12,9,.25) 0%,transparent 24%,transparent 50%,rgba(11,13,10,.82) 100%),radial-gradient(ellipse at center,transparent 35%,rgba(10,13,10,.23) 100%)}
.hero:after{content:'';position:absolute;inset:0;z-index:4;pointer-events:none;display:block;left:0;bottom:0;border:0;box-shadow:none;transform:none;padding:0;opacity:.12;background-image:repeating-radial-gradient(circle at 23% 47%,rgba(250,237,205,.5) 0 .35px,transparent .55px 2px),repeating-radial-gradient(circle at 77% 31%,rgba(9,10,8,.6) 0 .4px,transparent .7px 2.5px);background-size:5px 5px,7px 7px}
.hero-topline,.chaos-layer,.chaos-cat,.chaos-note,.chaos-spark,.degen-sticker,.halo,.orbit,.vertical-text,.art-label,.hero-side{display:none!important}
.hero-body{position:absolute;inset:0;display:block;width:100%;height:100%;min-height:0}
.hero-art{position:absolute;inset:0;z-index:1;display:block;width:100%;height:100%;min-height:0;margin:0;pointer-events:none;isolation:auto}
.cat-stage{position:absolute;inset:0;z-index:1;display:block;width:100%;height:100%;max-height:none;filter:none;pointer-events:auto}
.cat-stage canvas{position:absolute;inset:0;width:100%;height:100%;touch-action:pan-y;cursor:grab}.cat-stage canvas:active{cursor:grabbing}.cat-fallback{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);max-width:min(52vw,600px);max-height:70%;opacity:.85;mix-blend-mode:normal}.cat-stage.ready .cat-fallback{opacity:0}#model-loading{bottom:50%;left:50%;transform:translateX(-50%);color:#eee0be;text-shadow:0 2px 5px #111;font-size:9px;font-weight:600;z-index:2}
.hero-copy{position:absolute;z-index:6;inset:auto auto 9% 4.5%;width:min(450px,52%);max-width:none;margin:0;padding:0;pointer-events:none;transform:none}.hero-copy .eyebrow{position:static;display:block;margin:0 0 14px;padding:0;background:none;color:#d9c59a;border:0;box-shadow:none;transform:none;font-size:9px;letter-spacing:.2em;font-weight:700;text-shadow:0 1px 6px #111}.hero-copy .tiny-star{color:#c79c72;font-size:12px;margin-right:6px}
.hero h1{position:static;width:auto;transform:none;margin:0 0 12px;text-align:left;white-space:normal;font:700 clamp(38px,4.3vw,66px)/.96 var(--sans);letter-spacing:-.055em;color:#f3ebd9;-webkit-text-stroke:0;paint-order:normal;text-shadow:0 2px 15px rgba(0,0,0,.6)}.hero h1 em{font:inherit;font-style:normal;color:#dfc9a2;-webkit-text-stroke:0;text-shadow:inherit}.hero h1 br{display:none}
.hero-copy p{position:static;max-width:360px;margin:0;color:#e4d8c1;background:none;border:0;box-shadow:none;transform:none;padding:0;font:400 13px/1.55 var(--sans);text-shadow:0 1px 7px #0b0c0a}.hero-buttons{position:static;display:flex;gap:16px;margin:19px 0 0;pointer-events:auto;align-items:center}.hero-buttons .primary{min-width:0;padding:12px 15px;background:#883c2d;border:1px solid #c1a578;color:#fff3de;box-shadow:none;transform:none;font-size:10px}.hero-buttons .primary:hover{background:#a94b38;transform:none;box-shadow:none}.hero-buttons .text-link{padding:10px 0;background:none;border:0;box-shadow:none;transform:none;color:#eee1c8;font-size:10px;font-weight:600;text-decoration:none}.hero-buttons .text-link:hover{color:#fff}
.hero-bottom{position:absolute;z-index:6;right:4.5%;bottom:5%;left:auto;display:block;color:#dfd3b8;font-size:9px;text-shadow:0 1px 6px #000}.hero-bottom .scroll-note{padding:0;background:none;transform:none}.hero-bottom .scroll-arrow{color:#d9bd86}.hero-index{display:none}
.scene-divider{position:relative;display:flex;align-items:center;justify-content:center;min-height:88px;padding:24px 6%;background:#27271e;color:#cbb990;border-top:1px solid #8e785344;border-bottom:1px solid #8e785344;text-align:center;font-size:10px;font-weight:600;letter-spacing:.2em;text-transform:uppercase}
.ticker{background:#27271e;color:#cdbb94;border-block:1px solid #a9906244;box-shadow:none;transform:none;padding:13px 0;font-size:9px;font-weight:600;letter-spacing:.16em}.ticker span{color:#9a5343;font-size:12px}.ticker div{animation-duration:42s}
.section-pad{position:relative;padding:100px 6%;border:0}.section-kicker{border-bottom:1px solid #b5a07a52;padding-bottom:18px;color:#a99b7d;opacity:1;font-size:9px;letter-spacing:.17em;font-weight:600}.section-pad h2{margin:20px 0;font:600 clamp(44px,5.2vw,76px)/1.02 var(--sans);letter-spacing:-.055em;text-transform:none;color:#eee6d4;transform:none;-webkit-text-stroke:0;paint-order:normal;text-shadow:none}.section-pad h2 em{font:inherit;color:#c2a874;text-shadow:none;-webkit-text-stroke:0}.eyebrow{color:#b9a47c;font-size:9px;letter-spacing:.18em;font-weight:700}
.story{background:#1a1c16;color:#e8dfc7;overflow:hidden}.story:before,.story:after{display:none}.chaos-manifesto{position:relative;padding:0;max-width:900px}.chaos-manifesto h2{transform:none;text-shadow:none;-webkit-text-stroke:0;color:#eee6d4}.chaos-manifesto h2 em{color:#c2a874}.chaos-manifesto p{max-width:510px;color:#b9ae99;font:400 15px/1.7 var(--sans)}.manifesto-burst,.manifesto-stamp,.manifesto-small{display:none}.manifesto-kicker{color:#bfa881;font-size:9px;font-weight:700;letter-spacing:.18em}.manifesto-button{display:inline-block;margin-top:15px;padding:12px 15px;border:1px solid #ad9672;color:#f0e4cd;font-size:10px;letter-spacing:.1em}
.memes{background:linear-gradient(145deg,#171a15,#20211a 75%);color:#eee6d4}.memes:before{opacity:.1;background:repeating-radial-gradient(circle at 25% 30%,#b9ab8a 0 .35px,transparent .7px 3px) 0 0/7px 7px}.memes .section-kicker{border-color:#b5a07a52}.memes .eyebrow,.pfp .eyebrow,.contract .eyebrow{display:block;padding:0;background:none;border:0;box-shadow:none;transform:none;color:#bba47c}.memes h2,.pfp h2,.contract h2{color:#eee6d4;transform:none;text-shadow:none;-webkit-text-stroke:0;paint-order:normal}.memes h2 em,.pfp h2 em,.contract h2 em{color:#c4a976}
.section-heading{display:flex;align-items:end;justify-content:space-between;gap:40px;padding:64px 0 35px}.section-heading h2{margin-bottom:0}.section-intro{width:min(320px,40%);color:#b7ad98;font:400 13px/1.7 var(--sans)}.collection-count{width:max-content;display:flex;gap:10px;align-items:center;margin-top:20px;padding:0;background:none;border:0;box-shadow:none;transform:none;color:#c5aa76}.collection-count span{font:500 34px/.9 var(--sans);letter-spacing:-.05em;color:#dfc395;transform:none}.collection-count small{color:#9e937e;font-size:8px;font-weight:600;letter-spacing:.11em}
.meme-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.meme-card,.meme-card:nth-child(n){display:block;aspect-ratio:1;border:1px solid #9e8d6950;border-radius:2px;background:#272820;box-shadow:none;transform:none;overflow:hidden;transition:filter .2s,border-color .2s}.meme-card:hover,.meme-card:nth-child(n):hover{z-index:1;transform:none;box-shadow:none;border-color:#c1a578;filter:brightness(1.08)}.meme-card img{transition:transform .4s}.meme-card:hover img{transform:scale(1.04)}.meme-card:after{content:'VIEW  ↗';background:linear-gradient(transparent,#111811ca);font-size:9px;color:#f6ecd8;font-weight:600}.gallery-bottom{color:#aa9c81;font-weight:600}.outline-button,.outline-button:hover{background:transparent;color:#e7dac1;border:1px solid #a88e69;border-radius:2px;box-shadow:none;transform:none;font-size:10px;font-weight:700}.outline-button:hover{background:#3a3025;color:#fff1db}
.pfp{background:radial-gradient(ellipse at 72% 50%,#403d2d,#24271e 55%,#1c211b);color:#ede3ce;overflow:hidden}.pfp:before{opacity:.08;background:repeating-radial-gradient(circle at 38% 30%,#c1aa84 0 .4px,transparent .6px 3px) 0 0/7px 7px}.pfp .section-kicker{border-color:#b5a07a52}.pfp-layout{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center;padding:70px 0 15px}.pfp-copy p{max-width:390px;color:#bcb09b;font:400 14px/1.75 var(--sans)}.pfp .primary,.pfp .primary:hover{min-width:0;padding:14px 18px;background:#893e30;color:#fff2dc;border:1px solid #c2a277;border-radius:2px;box-shadow:none;transform:none;font-size:10px}.pfp .primary:hover{background:#a9503b}.pfp-hint{color:#a99c80;font-weight:600;font-size:9px}.oracle-wrap{min-height:450px;transform:none}.oracle-ring{width:380px;height:380px;background:none;border:1px solid #b9a27a70}.ring-b{width:420px;height:420px;background:none;border:1px dashed #ad987553;opacity:1}.oracle-card{width:280px;padding:11px;background:#352b22;color:#e4d6bd;border:1px solid #b89b72;border-radius:2px;box-shadow:0 18px 45px #080b0855;transform:rotate(3deg)}.oracle-label,.oracle-bottom{font-size:8px;letter-spacing:.1em;font-weight:600}.oracle-image{border:0;background:#5b4a37}.oracle-bottom a{color:#ead9b9;text-decoration-thickness:1px}.oracle-star{color:#c5a775;text-shadow:none;font-size:30px}.oracle-seal{width:58px;height:58px;background:#843528;color:#f2e2c3;border:1px solid #d6b482;box-shadow:none;border-radius:0;transform:rotate(-7deg);font:30px Georgia,serif}
.contract{background:linear-gradient(135deg,#3a201b,#5c2b22 58%,#2b201b);color:#f1e5d0}.contract:before{opacity:.09;background:repeating-radial-gradient(circle at 40% 30%,#d8bd8d 0 .4px,transparent .6px 3px) 0 0/7px 7px;mask-image:none}.contract .section-kicker{border-color:#b5a07a52}.contract-inner{position:relative;display:grid;grid-template-columns:1fr 1fr;padding:70px 0 25px;gap:30px}.contract-inner p{color:#d1beaa;font:400 14px/1.7 var(--sans);text-shadow:none}.contract-box{max-width:600px;background:#221b17a8;color:#eadbc4;border:1px solid #ae8a68;border-radius:2px;box-shadow:none;transform:none;padding:14px 16px}.contract-box small{color:#bda485;font-size:8px;font-weight:600}.contract-box code{color:#eadcc6;font:500 12px var(--sans)}.contract-box button{background:none;color:#e9d3af;border:0;border-radius:0;padding:9px;font-size:10px}.contract-box button:hover{background:#ffffff18}.contract-actions .primary{background:#c1a77a;border-color:#c1a77a;color:#241c16}.contract-actions .primary:hover{background:#ddc69a}.contract .text-link{color:#eedec7;text-decoration:none}.closing-mark{gap:10px;color:#bd9b6e}.closing-mark>span,.closing-mark>span:first-child,.closing-mark>span:nth-child(2),.closing-mark>span:nth-child(3){padding:5px 10px;background:none;color:#c7a97c;border:1px solid #b99a6d;box-shadow:none;transform:none;font:clamp(60px,7vw,110px) Georgia,serif}.closing-mark div{color:#cfb898;font-weight:600}
footer{background:#111510;color:#9f977e;border-top:1px solid #927f5e44;font-size:9px;font-weight:600}.footer-brand{font:700 25px var(--sans);letter-spacing:.02em;color:#e9ddc4}footer a:last-child{color:#cfbb96}
dialog{background:#1c1d18;color:#e9dfce;border:1px solid #ab936e;border-radius:2px;box-shadow:0 20px 80px #0009}dialog::backdrop{background:#0a0d0bd9}.dialog-close{background:#292a23;color:#eee3d1;border:1px solid #bba481;border-radius:2px}.dialog-actions{font-weight:600}.dialog-actions a{color:#d7bf97}
@media(max-width:900px){.header{padding-inline:4%}.header nav{display:flex;gap:14px}.header nav a{padding:8px 0}.header-cta{display:none}.hero{height:100svh;min-height:680px;max-height:none}.hero-body{position:absolute;inset:0;display:block}.hero-art{inset:0;width:100%;height:100%;margin:0}.cat-stage{width:100%;height:100%}.hero-copy{bottom:9%;left:4.5%;width:min(450px,55%)}.hero h1{font-size:clamp(36px,5.5vw,56px)}.section-pad{padding:80px 6%}.oracle-ring{width:330px;height:330px}.ring-b{width:370px;height:370px}}
@media(max-width:650px){.header{height:67px;padding:0 5%;gap:10px}.header nav{display:none}.brand{font-size:21px}.brand-stamp{width:31px;height:34px}.brand small{font-size:6px}.sound{padding:7px 9px}.hero{height:100svh;min-height:700px;max-height:none;padding:0;background-image:url('./assets/temple.jpg');background-size:cover;background-position:center}.hero:after{display:block}.hero-body{position:absolute;inset:0;display:block}.hero-art{position:absolute;inset:0;display:block;width:100%;height:100%;margin:0}.cat-stage{width:100%;height:100%;max-height:none}.cat-fallback{max-width:80vw;max-height:65%}.hero-copy{position:absolute;inset:auto 6% 8% 6%;width:auto;max-width:340px;padding:0}.hero-copy .eyebrow{position:static;margin:0 0 9px;padding:0;font-size:8px}.hero h1{position:static;transform:none;width:auto;text-align:left;font-size:clamp(32px,9vw,48px);line-height:1;margin:0 0 8px;text-shadow:0 2px 12px #000b;-webkit-text-stroke:0}.hero h1 em{text-shadow:inherit;-webkit-text-stroke:0}.hero-copy p{position:static;max-width:290px;margin:0;padding:0;font-size:12px;line-height:1.45;transform:none}.hero-buttons{position:static;left:auto;right:auto;bottom:auto;margin:14px 0 0;gap:16px}.hero-buttons .primary{min-width:0;padding:11px 12px;font-size:9px;transform:none}.hero-buttons .text-link{padding:8px 0;font-size:9px;transform:none}.hero-bottom{bottom:3%;right:6%;font-size:8px}.hero-bottom .scroll-note{padding:0;background:none;transform:none}.scene-divider{min-height:68px;font-size:8px;padding:20px 5%}.section-pad{padding:65px 6%}.section-pad h2{font-size:clamp(40px,11vw,58px)}.section-kicker{font-size:8px}.section-heading{display:block;padding:48px 0 25px}.section-intro{width:auto;max-width:100%;margin-top:20px}.meme-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.meme-card,.meme-card:nth-child(n){border-width:1px;box-shadow:none;transform:none}.pfp-layout{grid-template-columns:1fr;gap:18px;padding:48px 0 0}.oracle-wrap{min-height:390px}.oracle-ring{width:285px;height:285px}.ring-b{width:325px;height:325px}.oracle-card{width:225px}.oracle-seal{right:8%;bottom:16%}.contract-inner{grid-template-columns:1fr;padding:48px 0 10px}.contract-box{padding:12px}.contract-box code{font-size:10px;overflow-wrap:anywhere}.closing-mark{min-height:190px}.closing-mark>span,.closing-mark>span:first-child,.closing-mark>span:nth-child(2),.closing-mark>span:nth-child(3){font-size:55px}.closing-mark div{bottom:0}footer{font-size:8px}footer>span{display:none}}
@media(max-width:370px){.hero h1{font-size:31px}.hero-buttons{gap:10px}.hero-buttons .primary{padding:10px}.oracle-ring{width:250px;height:250px}.ring-b{width:290px;height:290px}.oracle-card{width:205px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.ticker div{animation:none}*,*:before,*:after{transition-duration:.01ms!important}}
.hero-bottom{display:flex;gap:1.5em}.scene-divider{gap:clamp(1rem,4vw,4rem)}
.look-switch{white-space:nowrap}.look-switch:disabled{opacity:.55;cursor:wait}@media(max-width:650px){.header-actions{gap:6px}.look-switch,.sound{font-size:9px;padding:7px 8px}}
#background-canvas{pointer-events:none;image-rendering:auto}#cat-canvas{image-rendering:auto}
.ecosystem-invite{background:#24261e;border-block:1px solid #a08e654a;padding:56px 7%;color:#eee5ce}.ecosystem-invite-content{display:flex;justify-content:space-between;align-items:end;gap:30px}.ecosystem-invite-kicker{color:#bda678;font-size:9px;letter-spacing:.19em;font-weight:700}.ecosystem-invite h2{font:700 clamp(32px,4.7vw,63px)/1 var(--sans);letter-spacing:-.04em;margin:14px 0 12px}.ecosystem-invite p{color:#c1b69f;font-size:14px;line-height:1.6;margin:0}.ecosystem-invite-link{display:flex;justify-content:space-between;align-items:center;gap:45px;border:1px solid #b69d75;color:#efe4cd;padding:15px 18px;font-size:10px;font-weight:700;letter-spacing:.11em;white-space:nowrap}.ecosystem-invite-link:hover{background:#773b2e}.header nav{gap:18px}@media(max-width:650px){.ecosystem-invite{padding:48px 6%}.ecosystem-invite-content{align-items:start;flex-direction:column;gap:22px}.ecosystem-invite h2{font-size:38px}.ecosystem-invite-link{width:100%;max-width:290px}}
