:root{--brown:#7a4a21;--dark:#3b1d08;--green:#2f6b3a;--red:#e63946;--cream:#fff6e5;--gold:#ffd43b;--sky:#cfe8f5;--ink:#2a1a0e}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;font-family:"Trebuchet MS",system-ui,-apple-system,Segoe UI,sans-serif;color:var(--ink);background:var(--cream);line-height:1.55;font-size:17px}
img{max-width:100%;display:block}a{color:var(--green)}
h1,h2,h3{font-family:"Arial Black",Impact,"Trebuchet MS",sans-serif;line-height:1.1;color:var(--dark);margin:0 0 .5em}
h1{font-size:clamp(2.2rem,7vw,4.2rem);text-transform:uppercase}h2{font-size:clamp(1.6rem,4.5vw,2.5rem)}h3{font-size:1.25rem}
.wrap{max-width:1120px;margin:0 auto;padding:0 20px}.sec{padding:56px 0}.center{text-align:center}
.sr{position:absolute;left:-9999px}
/* header */
.hdr{position:sticky;top:0;z-index:50;background:var(--cream);border-bottom:5px solid var(--dark)}
.hdr .wrap{display:flex;align-items:center;gap:14px;min-height:72px;flex-wrap:wrap;padding-top:6px;padding-bottom:6px}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--dark);font-family:"Arial Black",Impact,sans-serif;font-size:1.05rem;line-height:1}
.brand img{width:52px;height:52px}.brand small{display:block;font-family:"Trebuchet MS",sans-serif;font-weight:400;font-size:.72rem;color:var(--brown);margin-top:3px}
.nav{display:flex;gap:4px;margin-left:auto;flex-wrap:wrap}
.nav a{text-decoration:none;color:var(--dark);font-weight:800;padding:8px 13px;border-radius:30px;border:3px solid transparent}
.nav a:hover{border-color:var(--dark);background:var(--gold)}.nav a.on{background:var(--dark);color:var(--cream)}
.bask{font:inherit;font-weight:800;background:var(--gold);color:var(--dark);border:3px solid var(--dark);border-radius:30px;padding:7px 15px;cursor:pointer}
.bask b{background:var(--red);color:#fff;border-radius:20px;padding:1px 8px;margin-left:4px}
/* ticker */
.tick{background:var(--red);color:#fff;font-weight:800;overflow:hidden;white-space:nowrap;border-bottom:4px solid var(--dark)}
.tick div{display:inline-block;padding:8px 0;animation:tk 38s linear infinite}.tick span{margin:0 34px}
@keyframes tk{from{transform:translateX(0)}to{transform:translateX(-50%)}}
/* buttons / cards */
.btn{display:inline-block;font:inherit;font-weight:900;font-size:1.05rem;text-decoration:none;color:var(--dark);background:var(--gold);border:4px solid var(--dark);border-radius:16px;padding:12px 24px;cursor:pointer;box-shadow:0 6px 0 var(--dark);transition:transform .1s,box-shadow .1s}
.btn:hover{transform:translateY(3px);box-shadow:0 3px 0 var(--dark)}.btn.red{background:var(--red);color:#fff}.btn.green{background:var(--green);color:#fff}.btn.sm{padding:8px 16px;font-size:.95rem}
.card{background:#fff;border:4px solid var(--dark);border-radius:22px;padding:22px;box-shadow:0 7px 0 var(--dark)}
.grid{display:grid;gap:24px}.g3{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.g2{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.g4{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}
/* hero */
.hero{background:linear-gradient(#cfe8f5 0%,#e6f4e0 100%);border-bottom:6px solid var(--dark);overflow:hidden;position:relative}
.hero .wrap{display:grid;grid-template-columns:1.1fr .9fr;gap:30px;align-items:center;padding-top:44px;padding-bottom:50px}
.hero h1 span{color:var(--red);display:block}.hero p.lead{font-size:1.25rem;margin:0 0 22px}
.polaroid{background:#fff;border:4px solid var(--dark);padding:12px 12px 16px;transform:rotate(3deg);border-radius:8px;box-shadow:8px 10px 0 rgba(59,29,8,.35);max-width:440px;justify-self:center}
.polaroid img{border:3px solid var(--dark);width:100%}.polaroid figcaption{font-weight:800;text-align:center;margin-top:10px;font-size:.95rem}
.peek{position:absolute;right:-30px;bottom:-14px;width:120px;transform:rotate(-14deg)}
.pagehero{background:linear-gradient(#cfe8f5,#e6f4e0);border-bottom:6px solid var(--dark);padding:42px 0 34px;text-align:center}.pagehero p{font-size:1.2rem;max-width:720px;margin:0 auto}
/* stats */
.stat{text-align:center}.stat b{display:block;font-family:"Arial Black",sans-serif;font-size:3rem;color:var(--red)}
.pill{display:inline-block;background:var(--dark);color:var(--gold);font-weight:900;border-radius:30px;padding:4px 14px;font-size:.85rem;letter-spacing:1px;text-transform:uppercase;margin-bottom:10px}
.band{background:var(--dark);color:var(--cream)}.band .card h3{color:var(--dark)}.band h2,.band h3{color:var(--gold)}
.steps .num{width:54px;height:54px;border-radius:50%;background:var(--red);color:#fff;font-family:"Arial Black";font-size:1.6rem;display:grid;place-items:center;border:4px solid var(--dark);margin-bottom:10px}
.cardimg{height:150px;margin:0 auto 10px;object-fit:contain}
/* wanted poster */
.wanted{background:#f3e0b8;border:6px double var(--dark);border-radius:6px;padding:20px;text-align:center;max-width:420px;margin:0 auto;transform:rotate(-2deg);box-shadow:8px 10px 0 rgba(59,29,8,.3)}
.wanted h2{font-size:3rem;margin:0;letter-spacing:4px}.wanted img{height:230px;margin:6px auto;filter:sepia(.35)}.wanted ul{text-align:left;margin:8px 0;padding-left:22px}
/* game */
.game{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;max-width:440px;margin:14px auto}
.hole{aspect-ratio:1;background:radial-gradient(ellipse at 50% 70%,#3b1d08 0 46%,#7a4a21 47% 60%,#5aa04a 61%);border:4px solid var(--dark);border-radius:50%;position:relative;overflow:hidden;cursor:crosshair}
.hole img{position:absolute;left:50%;bottom:-100%;width:82%;transform:translateX(-50%);transition:bottom .18s}.hole.up img{bottom:6%}.hole.hit img{filter:grayscale(1) brightness(1.4)}
.hud{display:flex;gap:16px;justify-content:center;font-weight:900;font-size:1.15rem;flex-wrap:wrap}
.quote{border-left:8px solid var(--gold)}.quote p{margin:0 0 8px;font-size:1.1rem}.quote small{font-weight:800}
/* about */
.tl{border-left:6px solid var(--dark);margin-left:14px;padding-left:26px}.tl>div{position:relative;margin-bottom:26px}.tl>div:before{content:"🐾";position:absolute;left:-48px;top:0;background:var(--cream);font-size:1.3rem}
.meter{height:26px;border:4px solid var(--dark);border-radius:20px;background:linear-gradient(90deg,#4caf50,#ffd43b,#ff9800,#e63946);position:relative;margin:10px 0}.meter i{position:absolute;top:-10px;width:8px;height:42px;background:var(--dark);left:72%;border-radius:4px}
details{background:#fff;border:3px solid var(--dark);border-radius:14px;padding:12px 16px;margin:10px 0}summary{font-weight:900;cursor:pointer}
.ppl img{width:100%;height:170px;object-fit:contain;background:#e6f4e0;border-radius:14px;border:3px solid var(--dark);margin-bottom:10px}
/* forms */
form fieldset{border:4px solid var(--dark);border-radius:18px;margin:0 0 22px;padding:16px 20px 20px;background:#fff}legend{font-family:"Arial Black",sans-serif;background:var(--gold);border:3px solid var(--dark);border-radius:20px;padding:2px 16px;font-size:1.05rem}
label{display:block;font-weight:800;margin:10px 0 0}label small{font-weight:400;color:#6b5a4a}
input[type=text],input[type=email],input[type=tel],input[type=number],select,textarea{width:100%;font:inherit;padding:11px;border:3px solid var(--dark);border-radius:12px;background:#fffdf7;margin-top:4px}
input:focus,select:focus,textarea:focus{outline:4px solid var(--gold)}
.row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:0 16px}
.chk{display:flex;gap:10px;align-items:flex-start;font-weight:600;margin:8px 0}.chk input{width:22px;height:22px;margin-top:2px;flex:none}
.opts{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:2px 16px}
input[type=range]{width:100%;accent-color:var(--red)}
.err{color:#c1121f;font-weight:800;font-size:.9rem;display:none}.bad .err{display:block}.bad input,.bad select,.bad textarea{border-color:var(--red)}
.demo{background:#fff1d6;border:3px dashed var(--brown);border-radius:12px;padding:10px 14px;font-size:.95rem;margin-bottom:18px}
.idcard{max-width:520px;margin:0 auto;background:linear-gradient(135deg,#fff6e5,#ffe7b0);border:6px solid var(--dark);border-radius:22px;padding:20px;box-shadow:8px 10px 0 rgba(59,29,8,.3)}
.idcard .top{display:flex;align-items:center;gap:12px;border-bottom:4px solid var(--red);padding-bottom:10px;margin-bottom:12px}.idcard .top img{width:56px}
.idcard .ph{display:flex;gap:16px}.idcard .ph img{width:130px;height:130px;object-fit:cover;border-radius:14px;border:4px solid var(--dark)}
.idcard h3{margin:0}.idcard .rk{color:var(--red);font-family:"Arial Black";font-size:1.15rem}
/* shop */
.prod{display:flex;flex-direction:column}.prod img{border:3px solid var(--dark);border-radius:14px;margin-bottom:12px;cursor:pointer}.prod h3{margin-bottom:4px}
.price{font-family:"Arial Black",sans-serif;font-size:1.4rem;color:var(--green)}.stars{color:#f5a623;letter-spacing:2px}
.prod .btn{margin-top:auto}.tag{position:absolute;top:10px;left:10px;background:var(--red);color:#fff;font-weight:900;border-radius:30px;padding:2px 12px;border:3px solid var(--dark);font-size:.8rem}
.pw{position:relative}
.ovl{position:fixed;inset:0;background:rgba(42,26,14,.6);display:none;align-items:center;justify-content:center;z-index:90;padding:16px}.ovl.on{display:flex}
.modal{background:var(--cream);border:5px solid var(--dark);border-radius:24px;max-width:760px;width:100%;max-height:92vh;overflow:auto;padding:22px;position:relative}
.x{position:absolute;top:10px;right:12px;font:inherit;font-weight:900;font-size:1.2rem;background:var(--gold);border:3px solid var(--dark);border-radius:50%;width:38px;height:38px;cursor:pointer}
.mg{display:grid;grid-template-columns:1fr 1fr;gap:20px}.mg img{border:3px solid var(--dark);border-radius:14px}
.drawer{position:fixed;top:0;right:0;bottom:0;width:min(420px,100%);background:var(--cream);border-left:6px solid var(--dark);z-index:95;transform:translateX(105%);transition:transform .3s;display:flex;flex-direction:column}.drawer.on{transform:none}
.drawer header{padding:16px 18px;border-bottom:4px solid var(--dark);display:flex;justify-content:space-between;align-items:center}.drawer h3{margin:0}
.items{flex:1;overflow:auto;padding:10px 18px}.it{display:grid;grid-template-columns:70px 1fr auto;gap:12px;align-items:center;border-bottom:2px dashed #b9a27a;padding:12px 0}.it img{border:3px solid var(--dark);border-radius:10px}
.qty button{font:inherit;font-weight:900;border:3px solid var(--dark);background:var(--gold);border-radius:8px;width:28px;height:28px;cursor:pointer}.qty span{display:inline-block;min-width:26px;text-align:center;font-weight:800}
.drawer footer{padding:16px 18px;border-top:4px solid var(--dark)}
.rm{background:none;border:none;color:var(--red);font-weight:800;cursor:pointer;padding:0;font:inherit;font-size:.85rem}
.toast{opacity:0;visibility:hidden;position:fixed;left:50%;bottom:24px;transform:translate(-50%,100px);background:var(--dark);color:var(--gold);font-weight:800;border-radius:30px;padding:12px 22px;z-index:99;transition:transform .3s}.toast.on{opacity:1;visibility:visible;transform:translate(-50%,0)}
/* contact */
.cc{text-align:center}.cc .ic{font-size:2.6rem}.map{border:5px solid var(--dark);border-radius:22px;overflow:hidden;box-shadow:0 7px 0 var(--dark)}.map iframe{width:100%;height:420px;border:0;display:block}
/* footer */
.ftr{background:var(--dark);color:var(--cream);padding:36px 0 26px;font-size:.95rem}.ftr a{color:var(--gold)}.ftr .wrap{display:grid;grid-template-columns:1fr auto;gap:20px;align-items:center}
.ftr img{width:70px}.ftr nav a{margin-right:14px;font-weight:800}
@media(max-width:820px){.hero .wrap{grid-template-columns:1fr}.mg{grid-template-columns:1fr}.nav{margin-left:0;width:100%}.nav a{padding:6px 10px}.ftr .wrap{grid-template-columns:1fr}.peek{display:none}.brand small{display:none}}
@media(prefers-reduced-motion:reduce){.tick div{animation:none}html{scroll-behavior:auto}}
@media print{body *{visibility:hidden}#card,#card *{visibility:visible}#card{position:absolute;left:0;top:0;width:100%}}
