:root{font-family:Inter,Helvetica Neue,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#333;background-color:#fff;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{min-width:320px;min-height:100vh}a{text-decoration:none;color:inherit}button{border:none;outline:none;cursor:pointer;font-family:inherit}h1{font-size:3.2em;line-height:1.1}@media (prefers-color-scheme: dark){:root{color:#ffffffde;background-color:#242424}.app-container{background-color:#242424}.feature-card,.app-mockup{background-color:#333}.features-section{background-color:#1a1a1a}footer{background-color:#111}}:root{--primary-color: #d5acff;--secondary-color: #131417;--accent-color: #e74c3c;--text-color: #333;--light-gray: #f5f7fa;--white: #ffffff;--max-width: 1200px;--dark-blue: #131417}*{margin:0;padding:0;box-sizing:border-box}html,body{overflow-x:hidden;width:100%;max-width:100%}body{font-family:Inter,Helvetica Neue,sans-serif;color:var(--text-color);line-height:1.6;background-color:var(--white)}.app-container{min-height:100vh;display:flex;flex-direction:column;background-color:var(--white);width:100%;max-width:100%;overflow-x:hidden}.app-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem 2rem;max-width:var(--max-width);margin:0 auto;width:100%;background-color:var(--white);box-shadow:0 2px 10px #0000000d;position:relative}.logo-container h1{font-size:2rem;font-weight:700;color:var(--primary-color)}.nav-menu ul{display:flex;list-style:none;gap:2rem}.nav-menu a{text-decoration:none;color:var(--text-color);font-weight:500;transition:color .3s ease}.nav-menu a:hover{color:var(--primary-color)}.mobile-nav{display:none}.desktop-nav,.desktop-only{display:block}.mobile-only{display:none}.floating-menu-btn{position:fixed;top:1.5rem;right:1.5rem;background:#fff;border:none;cursor:pointer;padding:.75rem;width:3rem;height:3rem;border-radius:50%;box-shadow:0 4px 12px #00000026;display:none;flex-direction:column;justify-content:center;align-items:center;gap:.25rem;z-index:1001;transition:all .3s ease}.floating-menu-btn:hover{box-shadow:0 6px 16px #0003;transform:translateY(-2px)}.hamburger-btn{background:none;border:none;cursor:pointer;padding:.5rem;width:2.5rem;height:2.5rem;flex-direction:column;justify-content:center;align-items:center;gap:.25rem;z-index:1001}.hamburger-line{width:1.5rem;height:2px;background-color:var(--text-color);transition:all .3s ease;transform-origin:center}.hamburger-line.open:nth-child(1){transform:rotate(45deg) translate(.35rem,.35rem)}.hamburger-line.open:nth-child(2){opacity:0}.hamburger-line.open:nth-child(3){transform:rotate(-45deg) translate(.35rem,-.35rem)}.mobile-menu{position:fixed;top:0;right:-100%;width:280px;height:100vh;background-color:var(--white);box-shadow:-5px 0 15px #0000001a;transition:right .3s ease;z-index:1000;padding-top:6rem}.mobile-menu.open{right:0}.mobile-menu ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column}.mobile-menu li{border-bottom:1px solid var(--light-gray)}.mobile-menu a{display:block;padding:1.25rem 2rem;text-decoration:none;color:var(--text-color);font-weight:500;font-size:1.1rem;transition:all .3s ease}.mobile-menu a:hover{background-color:var(--light-gray);color:var(--primary-color)}.mobile-menu-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#00000080;z-index:999;transition:opacity .3s ease}.hero-section{display:flex;align-items:center;justify-content:space-between;padding:2rem;max-width:var(--max-width);margin:0 auto;min-height:60vh;background-color:var(--white)}.hero-content{flex:1;max-width:600px}.hero-content h1{font-size:3rem;line-height:1.2;margin-bottom:1.5rem;color:var(--dark-blue)}.hero-content p{font-size:1.25rem;margin-bottom:2rem;color:#666}.download-btn{background-color:var(--primary-color);color:#fff;border:none;padding:1rem 2rem;font-size:1.2rem;font-weight:600;border-radius:8px;cursor:pointer;transition:background-color .3s ease}.hero-download-btn,.desktop-download-btn{align-self:flex-start;margin-left:0}.mobile-download-btn{display:none}.download-btn:hover{background-color:var(--secondary-color)}.hero-image{flex:1;display:flex;justify-content:center;align-items:center;position:relative}.app-mockup{width:300px;height:600px;background-color:var(--light-gray);border-radius:30px;box-shadow:0 20px 40px #0000001a;position:relative;overflow:hidden}.features-section{padding:5rem 2rem;max-width:var(--max-width);margin:0 auto;text-align:center;background-color:var(--light-gray)}.features-section h2{font-size:2.5rem;margin-bottom:3rem;color:var(--dark-blue)}.feature-cards{display:flex;justify-content:center;gap:2rem;flex-wrap:wrap}.feature-card{background-color:var(--white);padding:2rem;border-radius:12px;box-shadow:0 5px 15px #0000000d;flex:1;min-width:250px;max-width:350px;transition:transform .3s ease}.feature-card:hover{transform:translateY(-10px)}.feature-card h3{font-size:1.5rem;margin-bottom:1rem;color:var(--primary-color)}.feature-card p{color:var(--text-color)}footer{margin-top:auto;padding:2rem;text-align:center;background-color:var(--light-gray);color:var(--dark-blue)}.benefits-section{padding:5rem 2rem;max-width:var(--max-width);margin:0 auto;background-color:var(--white)}.benefits-section h2{font-size:2.5rem;margin-bottom:3rem;text-align:center;color:var(--dark-blue)}.benefits-container{display:flex;justify-content:center;gap:3rem;flex-wrap:wrap}.benefit-column{flex:1;min-width:300px;max-width:550px}.benefit-column h3{font-size:1.8rem;color:var(--primary-color);margin-bottom:1.5rem;text-align:center}.benefits-list{list-style:none}.benefits-list li{margin-bottom:2rem;padding:1.5rem;background-color:var(--light-gray);border-radius:12px;box-shadow:0 4px 12px #0000000d;transition:transform .3s ease}.benefits-list li:hover{transform:translateY(-5px);box-shadow:0 8px 15px #0000001a}.benefits-list li strong{display:block;font-size:1.2rem;margin-bottom:.5rem;color:var(--dark-blue)}.benefits-list li p{color:#666}.contact-section{padding:5rem 2rem;background-color:var(--primary-color);color:var(--white);text-align:center}.contact-section h2{font-size:2.5rem;margin-bottom:1rem}.contact-section p{font-size:1.25rem;margin-bottom:2rem;max-width:700px;margin-left:auto;margin-right:auto}.cta-buttons{display:flex;justify-content:center;gap:1.5rem;flex-wrap:wrap}.download-btn.primary{background-color:#fff;color:var(--primary-color)}.download-btn.primary:hover{background-color:var(--light-gray)}.download-btn.secondary{background-color:transparent;border:2px solid var(--white)}.download-btn.secondary:hover{background-color:#ffffff1a}.privacy-policy-link{background:none;border:none;color:var(--dark-blue);text-decoration:underline;cursor:pointer;font-size:inherit;font-family:inherit;padding:0;margin:0}.privacy-policy-link:hover{color:var(--primary-color)}@media screen and (max-width: 768px){html,body{width:100vw;max-width:100vw;overflow-x:hidden}.app-container{width:100vw;max-width:100vw}main{width:100%;max-width:100vw;overflow-x:hidden}section{width:100%;max-width:100vw;overflow-x:hidden}.app-header{display:none}.mobile-only{display:flex}.desktop-nav{display:none}.mobile-nav,.hamburger-btn,.floating-menu-btn{display:flex}.hero-section{flex-direction:column;text-align:center;gap:2rem;padding:2rem 1rem 1.5rem;width:100%;max-width:100vw;overflow-x:hidden}.hero-content{margin-bottom:0;order:3;width:100%;max-width:100%}.hero-image{order:1;width:100%;max-width:100%;overflow-x:hidden}.mobile-download-btn{display:block;order:2;align-self:center;margin:0}.desktop-download-btn{display:none}.hero-content h1{font-size:2.5rem}.benefits-container{flex-direction:column;align-items:center}.cta-buttons{flex-direction:column;align-items:center;gap:1rem}.download-btn{width:80%;max-width:300px}}.punchpass-demo{display:flex;justify-content:center;align-items:center;margin:2rem 0;position:relative}.phone-container{position:relative;width:320px;height:640px;border-radius:40px;border:12px solid #000000;overflow:hidden;background-color:#f5f7fa;box-shadow:0 25px 50px #0003}.phone-screen{height:100%;display:flex;flex-direction:column;position:relative}.phone-screen:before{content:"";position:absolute;top:0;left:50%;transform:translate(-50%);width:150px;height:30px;background-color:#000;border-bottom-left-radius:14px;border-bottom-right-radius:14px;z-index:10}.phone-screen:after{content:"";position:absolute;bottom:8px;left:50%;transform:translate(-50%);width:120px;height:5px;background-color:#000;border-radius:20px;z-index:10}.phone-header{background-color:#131417;margin:40px 15px 0;padding:20px;color:#fff;border-radius:20px;box-shadow:0 4px 10px #0000001a}.app-title{display:flex;align-items:center;gap:10px}.app-logo{width:40px;height:40px;background:#fff;border-radius:50%;padding:5px}.app-title h2{margin:0;font-size:1.5rem;font-weight:700}.app-title span{font-weight:400}.phone-content{padding:1rem;display:flex;flex-direction:column;gap:1.5rem;height:calc(100% - 80px);flex:1;overflow:hidden;margin-bottom:20px;position:relative}.catchphrase-overlay{position:absolute;top:75%;left:50%;transform:translate(-50%);z-index:100;width:500px;display:flex;justify-content:center;align-items:center;pointer-events:none}.catchphrase{font-size:1.3rem;font-weight:700;padding:20px 30px;border-radius:15px;text-align:center;animation:fadeIn .5s ease forwards;line-height:1.3;letter-spacing:.3px;box-shadow:0 8px 25px #00000026;width:100%;max-width:480px}@media screen and (max-width: 768px){.punchpass-demo{width:100%;max-width:100vw;overflow-x:hidden;margin:1rem 0}.phone-container{max-width:calc(100vw - 2rem);width:320px}.catchphrase-overlay{width:90vw;max-width:400px;left:50%;transform:translate(-50%)}.catchphrase{font-size:1.1rem;padding:15px 20px;max-width:100%;line-height:1.2;letter-spacing:.2px;margin:0 auto;box-sizing:border-box}}.catchphrase-0{background:linear-gradient(135deg,#ff6b6b,#ff8e8e);color:#fff}.catchphrase-1{background:linear-gradient(135deg,#5c8ce6,#42a5f5);color:#fff}.catchphrase-2{background:linear-gradient(135deg,#8c42f5,#b066ff);color:#fff}.catchphrase-3{background:linear-gradient(135deg,#26c6da,#00e5ff);color:#fff}@keyframes fadeIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.phone-catchphrase-container,.phone-catchphrase{display:none}.stamp-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(3,1fr);gap:1rem;max-width:300px;margin:0 auto}.stamp-grid.clearing-grid{position:relative}.stamp-slot{width:70px;height:70px;border-radius:50%;border:2px solid #d5acff;display:flex;align-items:center;justify-content:center;transition:all .3s ease}.stamp-slot.filled{background-color:#d5acff;transform:scale(1.05);box-shadow:0 4px 8px #d5acff33}.stamp-slot.filled.clearing{background-color:#d5acff;animation:slotFadeOut .5s ease forwards}.stamp-icon{width:40px;height:40px;animation:stampIn .5s ease forwards}.stamp-icon.clearing{animation:stampOut .5s ease forwards}.reward-area{display:flex;justify-content:center;align-items:center;height:120px;margin-top:1rem}.reward-animation{display:flex;flex-direction:column;align-items:center;gap:1rem;opacity:0;transform:scale(.5);transition:all .5s ease}.reward-animation.show{opacity:1;transform:scale(1);animation:rewardAppear .5s ease forwards}.gift-container{width:70px;height:70px;display:flex;justify-content:center;align-items:center;background-color:#e0ebff;border-radius:50%;box-shadow:0 6px 12px #5c8ce64d;animation:pulse 1.5s infinite}.gift-icon{width:40px;height:40px}.reward-text{display:flex;flex-direction:column;align-items:center;text-align:center}.reward-counter{background-color:#5c8ce6;color:#fff;font-weight:700;padding:2px 8px;border-radius:12px;font-size:1rem}.reward-text p{margin:.5rem 0 0;font-weight:700;color:#1f3157}.status-text{text-align:center;font-weight:500;color:#1f3157;margin-top:auto;padding:1rem;background-color:#e0ebff;border-radius:12px}@keyframes stampIn{0%{opacity:0;transform:scale(0)}60%{transform:scale(1.2)}to{opacity:1;transform:scale(1)}}@keyframes stampOut{0%{opacity:1;transform:scale(1)}40%{opacity:1;transform:scale(1.2)}to{opacity:0;transform:scale(0)}}@keyframes slotFadeOut{0%{background-color:#5c8ce6;box-shadow:0 4px 8px #5c8ce633}to{background-color:transparent;box-shadow:none}}@keyframes rewardAppear{0%{opacity:0;transform:scale(.5)}to{opacity:1;transform:scale(1)}}@keyframes pulse{0%{transform:scale(1);box-shadow:0 6px 12px #5c8ce64d}50%{transform:scale(1.05);box-shadow:0 12px 24px #5c8ce680}to{transform:scale(1);box-shadow:0 6px 12px #5c8ce64d}}.privacy-policy-page{min-height:100vh;background-color:#f8f9fa;padding:0}.privacy-policy-nav{background-color:#fff;padding:1rem 2rem;box-shadow:0 2px 4px #0000001a;position:sticky;top:0;z-index:100}.privacy-policy-container{max-width:800px;margin:2rem auto;background:#fff;border-radius:12px;box-shadow:0 4px 20px #0000001a;overflow:hidden}.privacy-policy-page-header{background-color:#d5acff;color:#fff;padding:2rem;text-align:center}.privacy-policy-page-header h1{margin:0;font-size:2.5rem;font-weight:600}.privacy-policy-content{padding:3rem;line-height:1.7;color:#333}.privacy-policy-content h2{color:#d5acff;font-size:1.6rem;margin-bottom:1.5rem;margin-top:0;text-align:center;border-bottom:2px solid #e9ecef;padding-bottom:1rem}.privacy-policy-content h3{color:#131417;font-size:1.3rem;margin-top:2.5rem;margin-bottom:1rem;border-left:4px solid #d5acff;padding-left:1rem}.privacy-policy-content p{margin-bottom:1.2rem;text-align:justify}.privacy-policy-content ul{margin-bottom:1.5rem;padding-left:2rem}.privacy-policy-content li{margin-bottom:.8rem;line-height:1.6}.privacy-policy-content strong{color:#131417;font-weight:600}.privacy-policy-content a{color:#d5acff;text-decoration:underline;font-weight:500;transition:color .2s ease}.privacy-policy-content a:hover{color:#131417;text-decoration:underline}@media screen and (max-width: 768px){.privacy-policy-page{padding:1rem}.privacy-policy-container{margin:0 1rem;border-radius:8px}.privacy-policy-page-header{padding:1.5rem}.privacy-policy-page-header h1{font-size:2rem}.privacy-policy-content{padding:2rem 1.5rem}.privacy-policy-content h2{font-size:1.4rem}.privacy-policy-content h3{font-size:1.2rem;margin-top:2rem}.privacy-policy-content p{text-align:left}.privacy-policy-content ul{padding-left:1.5rem}}.terms-conditions-page{min-height:100vh;background-color:#f8f9fa;padding:0}.terms-conditions-nav{background-color:#fff;padding:1rem 2rem;box-shadow:0 2px 4px #0000001a;position:sticky;top:0;z-index:100}.back-to-home{color:#d5acff;text-decoration:none;font-weight:500;display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border-radius:6px;transition:background-color .2s ease}.back-to-home:hover{background-color:#f8f9fa;color:#131417}.terms-conditions-container{max-width:800px;margin:2rem auto;background:#fff;border-radius:12px;box-shadow:0 4px 20px #0000001a;overflow:hidden}.terms-conditions-page-header{background-color:#d5acff;color:#fff;padding:2rem;text-align:center}.terms-conditions-page-header h1{margin:0;font-size:2.5rem;font-weight:600}.terms-conditions-content{padding:3rem;line-height:1.7;color:#333}.terms-conditions-content h2{color:#d5acff;font-size:1.6rem;margin-bottom:1.5rem;margin-top:0;text-align:center;border-bottom:2px solid #e9ecef;padding-bottom:1rem}.terms-conditions-content h3{color:#131417;font-size:1.3rem;margin-top:2.5rem;margin-bottom:1rem;border-left:4px solid #d5acff;padding-left:1rem}.terms-conditions-content h4{color:#131417;font-size:1.1rem;margin-top:2rem;margin-bottom:1rem;font-weight:600}.terms-conditions-content p{margin-bottom:1.2rem;text-align:justify}.terms-conditions-content ul{margin-bottom:1.5rem;padding-left:2rem}.terms-conditions-content li{margin-bottom:.8rem;line-height:1.6}.terms-conditions-content strong{color:#131417;font-weight:600}.terms-conditions-content a{color:#d5acff;text-decoration:underline;font-weight:500;transition:color .2s ease}.terms-conditions-content a:hover{color:#131417;text-decoration:underline}@media screen and (max-width: 768px){.terms-conditions-page{padding:1rem}.terms-conditions-container{margin:0 1rem;border-radius:8px}.terms-conditions-page-header{padding:1.5rem}.terms-conditions-page-header h1{font-size:2rem}.terms-conditions-content{padding:2rem 1.5rem}.terms-conditions-content h2{font-size:1.4rem}.terms-conditions-content h3{font-size:1.2rem;margin-top:2rem}.terms-conditions-content h4{font-size:1.1rem;margin-top:1.5rem}.terms-conditions-content p{text-align:left}.terms-conditions-content ul{padding-left:1.5rem}}
