:root{--red:#D71920;--cream:#F6EFE3;--white:#FFF;--charcoal:#262626;--slate:#5B6770;--amber:#F4B942}*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}body,html{width:100%;min-height:100%;background:var(--cream);font-family:'Karla',sans-serif;color:var(--charcoal);overflow-x:hidden}.scene{min-height:100vh;display:flex;flex-direction:column;position:relative}.bg-split{position:absolute;inset:0;background:var(--cream);z-index:0;overflow:hidden}.bg-split::before{content:'';position:absolute;inset:0;background:var(--red);clip-path:polygon(0 0,70% 0,30% 100%,0 100%)}.pattern-red,.pattern-cream{position:absolute;inset:0;pointer-events:none}.pattern-red{clip-path:polygon(0 0,70% 0,30% 100%,0 100%);z-index:1}.pattern-cream{z-index:0}.film-grain{position:absolute;inset:0;z-index:2;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 200'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.65' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.25'/%3E%3C/svg%3E");mix-blend-mode:overlay}.header{position:absolute;top:0;left:0;padding:2rem;z-index:20}.site-logo{max-width:140px;height:auto}.main-content{flex:1;display:flex;align-items:center;justify-content:center;position:relative;z-index:10;width:100%;padding:6rem 1rem 4rem 1rem}.pass-scene-container{position:relative;width:100%;max-width:440px;display:flex;justify-content:center}.pass-wrapper{position:relative;z-index:10;width:100%;animation:passSettle .9s cubic-bezier(0.2,0.8,0.2,1) forwards;transform:translateY(20px) rotate(-2deg);filter:drop-shadow(0 10px 20px rgba(0,0,0,0.05))}.pass-card{background:var(--cream);border:4px solid var(--red);border-bottom:none;border-radius:20px 20px 0 0;position:relative;display:flex;flex-direction:column;z-index:2}.pass-content{padding:2.5rem 2rem 1.5rem 2rem;position:relative;z-index:2}.pass-shimmer-container{position:absolute;inset:0;border-radius:16px 16px 0 0;overflow:hidden;z-index:1;pointer-events:none}.pass-shimmer{position:absolute;top:0;left:0;width:40%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,0.7),transparent);transform:translateX(-150%) skewX(-20deg);animation:sweep 4s .9s infinite}.torn-bottom{width:100%;height:30px;display:block;margin-top:-1px;position:relative;z-index:1}.emblem{position:absolute;left:-25px;top:25%;background:var(--white);color:var(--red);font-family:'M PLUS Rounded 1c',sans-serif;font-weight:800;font-size:1.4rem;width:65px;height:65px;border-radius:50%;display:flex;align-items:center;justify-content:center;border:4px solid var(--red);box-shadow:0 4px 10px rgba(0,0,0,0.1);z-index:15}.eligibility-badge{position:absolute;right:-15px;top:-15px;background:var(--amber);color:var(--white);padding:.5rem 1rem;border-radius:20px;font-weight:700;font-size:.85rem;box-shadow:0 4px 10px rgba(0,0,0,0.15);z-index:15;white-space:nowrap;opacity:0;transform:scale(0.8);animation:popIn .5s 1.5s cubic-bezier(0.175,0.885,0.32,1.275) forwards}.trust-row{display:flex;align-items:center;gap:.5rem;color:var(--slate);font-size:.9rem;font-weight:700;opacity:0;animation:fadeInUp .6s .9s forwards;margin-bottom:1rem}.stars{display:flex;gap:2px}.stars svg{width:16px;height:16px;fill:var(--amber);transform-origin:center;animation:pulseStar .4s 1.2s ease-in-out}h1{font-family:'M PLUS Rounded 1c',sans-serif;font-weight:800;font-size:clamp(1.7rem,5vw,2.2rem);color:var(--charcoal);line-height:1.15;margin-bottom:1rem}p{font-size:clamp(1rem,2.5vw,1.1rem);line-height:1.5;margin-bottom:1.5rem}.cta-area{display:flex;flex-direction:column;align-items:center;position:relative;margin-top:.5rem}.dashed-line{position:absolute;bottom:-45px;width:2px;height:35px;border-left:2px dashed var(--red);z-index:1}.cta-button{background:var(--charcoal);color:var(--white);text-decoration:none;padding:1.1rem 2.5rem;border-radius:30px;font-family:'M PLUS Rounded 1c',sans-serif;font-weight:700;font-size:1.15rem;box-shadow:0 4px 15px rgba(0,0,0,0.2);transition:transform .2s,background .2s;position:relative;z-index:2;width:100%;text-align:center;max-width:300px}.cta-button:hover,.cta-button:focus{transform:scale(1.03);background:#000;outline:2px solid var(--amber);outline-offset:4px}.cta-sub{color:var(--slate);font-size:.85rem;margin-top:.75rem;font-weight:700}.shopper-wrapper{position:absolute;right:-100px;top:15%;z-index:5;width:160px;pointer-events:none}.site-footer{position:relative;width:100%;display:flex;justify-content:space-between;align-items:center;padding:1.5rem 2rem;z-index:20;font-size:.85rem}.footer-brand{color:var(--white);font-weight:700}.footer-not-affiliated{color:var(--slate);opacity:0;animation:fadeIn .5s 2s forwards}@keyframes passSettle{100%{transform:translateY(0) rotate(0);filter:drop-shadow(0 30px 60px rgba(0,0,0,0.15))}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(10px)}100%{opacity:1;transform:translateY(0)}}@keyframes pulseStar{0%,100%{transform:scale(1)}50%{transform:scale(1.25)}}@keyframes popIn{0%{transform:scale(0.8);opacity:0}70%{transform:scale(1.05);opacity:1}100%{transform:scale(1);opacity:1}}@keyframes fadeIn{to{opacity:1}}@keyframes sweep{0%{transform:translateX(-150%) skewX(-20deg)}30%,100%{transform:translateX(400%) skewX(-20deg)}}@media(max-width:768px){.bg-split::before,.pattern-red{clip-path:polygon(0 0,100% 0,0 100%)}.header{position:relative;padding:1.5rem 1rem 0 1rem;display:flex;justify-content:center}.main-content{padding:2rem 1rem 3rem 1rem}.pass-scene-container{max-width:380px;margin-top:1rem}.shopper-wrapper{right:-30px;top:-60px;width:130px;z-index:1}.emblem{left:-10px;width:55px;height:55px;font-size:1.2rem}.eligibility-badge{right:-5px;top:-12px;font-size:.75rem;padding:.4rem .8rem}.pass-content{padding:2rem 1.5rem 1.5rem 1.5rem}.site-footer{flex-direction:column;gap:.5rem;padding:1rem;justify-content:center;text-align:center}.footer-brand{color:var(--slate)}}@media(max-width:380px){.emblem{left:-5px}.shopper-wrapper{right:-40px;top:-50px;width:110px}h1{font-size:1.6rem}}@media(prefers-reduced-motion:reduce){*,::before,::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}html,body{max-width:100%;overflow-x:clip}