body:before{content:"";position:fixed;top:0;left:0;width:100%;height:100%;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%' height='100%' filter='url(%23noise)' opacity='0.06'/%3E%3C/svg%3E");pointer-events:none;z-index:1000}.hero{box-sizing:content-box;max-width:var(--frame-width);margin:0 auto;padding:30px 16px 0;text-align:center}.hero-frame{background:var(--red);padding:6px;box-shadow:0 10px 40px #00000026}.hero-inner{background:var(--cream);padding:35px 20px;border:2px solid var(--navy);position:relative}.corner{position:absolute;width:25px;height:25px;border:3px solid var(--gold)}.corner-tl{top:8px;left:8px;border-right:none;border-bottom:none}.corner-tr{top:8px;right:8px;border-left:none;border-bottom:none}.corner-bl{bottom:8px;left:8px;border-right:none;border-top:none}.corner-br{bottom:8px;right:8px;border-left:none;border-top:none}.hero .badge{margin-bottom:20px}.hero h1{font-family:Alfa Slab One,cursive;font-size:2.8rem;color:var(--red);text-transform:uppercase;line-height:1;margin-bottom:8px;text-shadow:2px 2px 0 var(--red-dark)}.hero-subtitle{font-family:Oswald,sans-serif;font-size:1rem;color:var(--navy);text-transform:uppercase;letter-spacing:2px;margin-bottom:25px}.dice-row{display:flex;justify-content:center;gap:10px;margin-bottom:25px}.hero-die{width:45px;height:45px;background:#fffef9;border:2px solid var(--navy);border-radius:6px;display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(3,1fr);padding:6px;gap:2px;box-shadow:2px 2px 0 var(--navy)}.hero-die:nth-child(odd){transform:rotate(-6deg)}.hero-die:nth-child(2n){transform:rotate(4deg)}.hero-die .dot{background:var(--red);border-radius:50%}.hero-tagline{font-family:Lora,serif;font-style:italic;font-size:.95rem;color:var(--brown);margin-bottom:25px;line-height:1.5}.hero-note{margin-top:20px;font-family:Oswald,sans-serif;font-size:.75rem;text-transform:uppercase;letter-spacing:1px;color:#888}.hero-buttons{display:flex;flex-direction:column;gap:12px}.features{padding:50px 20px;margin-top:40px;background:var(--navy)}.features:before{content:"";display:block;height:12px;background:repeating-linear-gradient(90deg,var(--gold) 0px,var(--gold) 20px,var(--red) 20px,var(--red) 40px);margin:-50px -20px 40px}.features-title{font-family:Alfa Slab One,cursive;font-size:1.8rem;color:var(--gold);text-transform:uppercase;text-align:center;margin-bottom:30px}.features-grid{max-width:800px;margin:0 auto}.feature-card{background:var(--cream);padding:25px 20px;margin-bottom:15px;border:3px solid var(--brown);position:relative}.feature-number{position:absolute;top:-12px;left:15px;background:var(--red);color:#fff;font-family:Alfa Slab One,cursive;font-size:1.2rem;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border:2px solid var(--red-dark)}.feature-card h3{font-family:Oswald,sans-serif;font-size:1.1rem;text-transform:uppercase;color:var(--navy);margin-bottom:8px;margin-top:5px}.feature-card p{font-size:.95rem;color:var(--brown);line-height:1.5}.social-proof{padding:40px 20px;background:var(--cream);text-align:center}.social-badge{display:inline-block;background:var(--gold);padding:20px 30px;border:4px solid var(--brown);position:relative}.social-badge h3{font-family:Alfa Slab One,cursive;font-size:2rem;color:var(--navy);margin-bottom:5px}.social-badge p{font-family:Oswald,sans-serif;text-transform:uppercase;letter-spacing:2px;font-size:.8rem;color:var(--brown)}.testimonial{padding:40px 20px;background:var(--cream)}.testimonial-card{background:#fff;border:3px solid var(--navy);padding:25px 20px;position:relative;max-width:600px;margin:0 auto}.testimonial-card:before{content:'"';position:absolute;top:10px;left:15px;font-family:Alfa Slab One,cursive;font-size:3rem;color:var(--gold);line-height:1}.testimonial-card blockquote{font-size:1rem;line-height:1.6;color:var(--brown);margin-bottom:15px;padding-left:10px;font-style:italic}.testimonial-author{display:flex;align-items:center;gap:12px}.author-avatar{width:40px;height:40px;border-radius:50%;background:var(--gold);display:flex;align-items:center;justify-content:center;font-size:1.2rem;border:2px solid var(--brown)}.author-info strong{display:block;font-family:Oswald,sans-serif;font-size:.9rem;text-transform:uppercase}.author-info span{font-size:.8rem;color:#888}.final-cta{padding:50px 20px;background:var(--red);text-align:center}.final-cta:before{content:"";display:block;height:10px;background:repeating-linear-gradient(90deg,var(--navy) 0px,var(--navy) 15px,var(--gold) 15px,var(--gold) 30px);margin:-50px -20px 30px}.final-cta h2{font-family:Alfa Slab One,cursive;font-size:2rem;color:var(--cream);text-transform:uppercase;margin-bottom:10px;text-shadow:2px 2px 0 var(--red-dark)}.final-cta p{font-family:Lora,serif;font-style:italic;color:#ffffffe6;margin-bottom:25px}.final-cta .btn-primary{background:var(--gold);color:var(--navy);border-color:var(--brown);max-width:300px;margin:0 auto}.final-cta .btn-primary:hover{background:#c4983b}#app.in-room .landing-page,#app.in-room .site-footer{display:none}#app.in-room nav{display:none}#app.in-room .join-modal{display:none!important}.join-modal{position:fixed;top:0;left:0;right:0;bottom:0;background:#003049e6;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px;animation:fadeIn .2s ease}.join-modal-content{position:relative;width:100%;max-width:450px;animation:slideUp .3s ease}.join-modal-close{position:absolute;top:-15px;right:-15px;width:40px;height:40px;background:var(--red);color:#fff;border:3px solid var(--red-dark);border-radius:50%;font-size:1.5rem;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:10;padding:0;line-height:1;box-shadow:2px 2px 0 var(--navy)}.join-modal-close:hover{background:var(--red-dark)}@media(max-height:500px)and (orientation:landscape){.hero{padding:20px}.hero-inner{padding:25px 20px}.hero h1{font-size:2rem}.dice-row{margin-bottom:15px}.hero-die{width:35px;height:35px}}@media(min-width:600px){.hero h1{font-size:4rem}.hero-inner{padding:50px 40px}.features{padding:60px 40px}.feature-card{padding:30px}.hero-buttons{flex-direction:row;justify-content:center;gap:15px}.hero-buttons .btn-primary,.hero-buttons .btn-secondary{margin:0;min-width:200px}}
