.app{font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial;color:#111}.app-root-background{min-height:100vh;background-repeat:repeat;background-position:center center;background-size:600px;background-color:#f6f6f6}.app-root-background:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:var(--bg-blur-url, var(--bg-url));background-repeat:repeat;background-position:center center;background-size:1200px;filter:saturate(.95);opacity:.7;transform:scale(1.04);image-rendering:auto;pointer-events:none;z-index:0}.app-root-background{position:relative}.app-root-background>*{position:relative;z-index:1}@media (max-width: 640px){.app-root-background:before{background-size:800px;filter:blur(8px) saturate(.95);opacity:.52;transform:scale(1.02)}}html,body,#root{height:100%}.body{margin:0}.page{padding:20px}main{background:transparent;min-height:calc(100vh - 56px)}.image-map{max-width:600px;width:90%;margin:12px auto;position:relative;display:block}.responsive-image{width:100%;height:auto;display:block;margin:0 auto}.page.mission{max-width:900px;margin:24px auto;padding:20px}.page.mission>header,.page.mission section{background:rgba(255,255,255,.4);padding:18px;border-radius:8px;margin-bottom:18px;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border:1px solid rgba(255,255,255,.6)}.page.mission .lede{font-size:1.1rem;margin-top:8px}.page.mission ul{list-style:none;padding-left:0}.page.mission ul li{margin-bottom:12px}.page.mission ul li p{margin:6px 0 0}.page.contact{max-width:900px;margin:24px auto;padding:20px;position:relative}.page.contact>.contact-content,.page.contact>.contact-content section,.page.contact>.contact-content header{background:rgba(250,250,250,.18);padding:18px;border-radius:8px;margin-bottom:18px;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border:1px solid rgba(255,255,255,.28)}.contact-guard{text-align:center;margin-top:8px}.recaptcha-box{display:inline-block;background:rgba(255,255,255,.72);padding:12px 16px;border-radius:8px}.recaptcha-note{margin-top:8px;font-size:.95rem;color:#222}.btn-sim,.btn-reveal{background:#2b8a3e;color:#fff;border:none;padding:8px 12px;border-radius:6px;cursor:pointer}.btn-sim:hover,.btn-reveal:hover{opacity:.95}.contact-emoji-container{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;overflow:visible;z-index:0}.poop-emoji{position:absolute;top:6vh;font-size:40px;will-change:transform,opacity;animation-name:poop-fall,poop-fade;animation-timing-function:linear,ease-in;animation-fill-mode:forwards;transform:translateY(0)}.phone-emoji{position:absolute;top:6vh;font-size:40px;will-change:transform,opacity;animation-name:poop-fall,poop-fade;animation-timing-function:linear,ease-in;animation-fill-mode:forwards;transform:translateY(0);filter:drop-shadow(0 2px 2px rgba(0,0,0,.12))}.bottom-bounce{position:fixed;bottom:8px;left:0;right:0;display:flex;justify-content:space-between;align-items:flex-end;padding:0 28px;gap:6px;z-index:3;pointer-events:none}.bounce-pair{display:flex;gap:8px;align-items:flex-end}.bounce-emoji{font-size:30px;display:inline-block}.poop-bottom{animation:bounce-slow 3.6s ease-in-out infinite}.phone-bottom{animation:bounce-slower 4.8s ease-in-out infinite}.bottom-bounce .center-pair{margin:0 auto}.bottom-bounce .left-pair{justify-content:flex-start}.bottom-bounce .right-pair{justify-content:flex-end}@keyframes bounce-slow{0%{transform:translateY(0)}50%{transform:translateY(-12px)}to{transform:translateY(0)}}@keyframes bounce-slower{0%{transform:translateY(0)}50%{transform:translateY(-8px)}to{transform:translateY(0)}}@keyframes poop-fall{to{transform:translateY(var(--poop-end, 120vh)) rotate(360deg)}}@keyframes poop-fade{0%{opacity:1}80%{opacity:1}to{opacity:0}}.page.contact:not(.verified) .contact-content{filter:blur(4px) grayscale(.25);opacity:.45}.page.contact.verified .contact-guard{display:none}.page.contact{z-index:1;position:relative}.npc{position:relative;display:inline-block;padding:2px 6px;border-radius:4px}.npc:after{content:attr(data-name);position:absolute;left:50%;transform:translate(-50%) translateY(8px) scale(.85);bottom:100%;background:rgba(20,20,20,.9);color:#fff;padding:6px 8px;border-radius:6px;white-space:nowrap;font-size:.9rem;opacity:0;pointer-events:none;transition:opacity .12s ease,transform .12s ease}.npc:focus:after,.npc:hover:after{opacity:1;transform:translate(-50%) translateY(0) scale(1)}.npc:focus{outline:2px dashed rgba(0,0,0,.15)}.overlay-map .map-btn{position:absolute;background:rgba(181,101,29,.12);border:2px solid rgba(181,101,29,.22);border-radius:8px;cursor:pointer;transition:transform .12s ease,background .12s ease}.overlay-map .map-btn:hover{transform:scale(1.03);background:rgba(181,101,29,.18)}.overlay-map .map-btn:focus{outline:3px solid rgba(181,101,29,.5);transform:scale(1.03)}.overlay-map .map-btn.left{left:6%;top:18%;width:28%;height:48%}.overlay-map .map-btn.right{right:6%;top:18%;width:28%;height:48%}.overlay-map .map-btn.crotch{left:34%;top:48%;width:32%;height:30%;border-radius:30px}.home-fade{position:fixed;top:12px;left:12px;width:46px;height:46px;display:inline-flex;align-items:center;justify-content:center;border-radius:10px;background:rgba(255,255,255,.22);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border:1px solid rgba(255,255,255,.24);box-shadow:0 6px 18px #00000014;z-index:1100;text-decoration:none;pointer-events:auto}.home-fade:focus{outline:3px solid rgba(43,139,62,.85);outline-offset:3px;border-radius:10px}.home-fade:active{transform:translateY(1px)}.home-fade{animation:float-y 3.6s ease-in-out infinite}@keyframes float-y{0%{transform:translateY(0)}50%{transform:translateY(-6px)}to{transform:translateY(0)}}.home-fade .home-fade-logo{width:64px;max-width:14vw;height:auto;display:block}@media (prefers-reduced-motion: reduce){.home-fade{animation:none!important}}.shop-clown{position:fixed;left:50%;transform:translate(-50%);bottom:12px;z-index:5;pointer-events:none}.shop-clown .clown-cig{width:180px;max-width:36vw;height:auto;display:block;animation:clown-bob-xy 5.6s ease-in-out infinite}@keyframes clown-bob-xy{0%{transform:translate(0)}20%{transform:translate(-6px,-6px)}40%{transform:translateY(-10px)}60%{transform:translate(6px,-6px)}80%{transform:translateY(-4px)}to{transform:translate(0)}}@media (prefers-reduced-motion: reduce){.shop-clown .clown-cig{animation:none!important}}
