/* RepublicaPass V27 — richer, structured mobile home */
.rp27-mobile-intro,.rp27-mobile-featured,.rp27-mobile-marquee,.rp27-mobile-how,.rp27-mobile-organizer{display:none}

@media(max-width:820px){
  :root{--rp27-green:#0df28a;--rp27-bg:#020706;--rp27-card:#06100d;--rp27-card2:#081511;--rp27-line:rgba(13,242,138,.09);--rp27-muted:#8d9e96;--rp27-ease:cubic-bezier(.18,.82,.2,1)}

  /* Keep hero clean, but give it a more deliberate visual finish. */
  .rp-homepage-v16 .rp-cinema-photo{border-bottom:1px solid rgba(13,242,138,.07)!important}
  .rp-homepage-v16 .rp-cinema-photo::after{background:linear-gradient(180deg,transparent 0%,transparent 66%,rgba(2,7,6,.98) 100%)!important}
  .rp-homepage-v16 .rp-cinema-copy{position:relative!important;padding:21px 16px 29px!important;background:radial-gradient(circle at 88% 4%,rgba(13,242,138,.055),transparent 31%),#020706!important}
  .rp-homepage-v16 .rp-cinema-copy::before{content:"";position:absolute;left:16px;top:0;width:54px;height:1px;background:linear-gradient(90deg,var(--rp27-green),transparent);box-shadow:0 0 14px rgba(13,242,138,.34)}
  .rp-homepage-v16 .rp-cinema-copy h2{max-width:11ch!important;font-size:36px!important;line-height:.93!important}
  .rp-homepage-v16 .rp-cinema-copy>p{max-width:34ch!important;font-size:13px!important;line-height:1.6!important;color:#a9b8b1!important}
  .rp-homepage-v16 .rp-cinema-primary{min-height:56px!important;border-radius:16px!important;font-size:13px!important}
  .rp-homepage-v16 .rp-cinema-primary::before{content:""!important;display:block!important;position:absolute!important;inset:0!important;background:linear-gradient(110deg,transparent 20%,rgba(255,255,255,.35) 45%,transparent 68%)!important;transform:translateX(-130%)!important;animation:rp27CtaSweep 4.2s ease-in-out 1.2s infinite!important}

  /* Compact trust strip — useful info, not decorative noise. */
  .rp27-mobile-intro{display:block;padding:0 14px 28px;background:#020706}
  .rp27-mobile-intro-grid{display:grid;grid-template-columns:1fr;gap:8px}
  .rp27-mini-feature{display:grid;grid-template-columns:38px minmax(0,1fr);align-items:center;gap:11px;padding:11px 12px;border:1px solid rgba(255,255,255,.055);border-radius:15px;background:linear-gradient(145deg,rgba(8,20,16,.88),rgba(4,11,9,.94));box-shadow:0 12px 30px rgba(0,0,0,.13)}
  .rp27-mini-feature>span{display:grid;place-items:center;width:38px;height:38px;border:1px solid rgba(13,242,138,.13);border-radius:12px;background:rgba(13,242,138,.045);color:var(--rp27-green);font-size:17px;box-shadow:inset 0 0 18px rgba(13,242,138,.035)}
  .rp27-mini-feature b{display:block;color:#edf5f1;font-size:12px;line-height:1.15}.rp27-mini-feature small{display:block;margin-top:3px;color:#788980;font-size:9.5px;line-height:1.35}
  .rp27-mini-feature.visible>span{animation:rp27IconPulse 3s ease-in-out infinite}

  /* Featured event gives the home a clear information anchor. */
  .rp27-mobile-featured{display:block;margin:0 14px 34px;padding:16px;border:1px solid rgba(13,242,138,.10);border-radius:22px;background:linear-gradient(155deg,#081510 0%,#040b09 70%);box-shadow:0 22px 55px rgba(0,0,0,.28);overflow:hidden;position:relative;isolation:isolate}
  .rp27-mobile-featured::before{content:"";position:absolute;inset:-1px;z-index:-1;border-radius:inherit;background:linear-gradient(120deg,transparent 0%,rgba(13,242,138,.16) 35%,transparent 60%);opacity:.42;transform:translateX(-78%);animation:rp27FeaturedBorder 6s ease-in-out infinite}
  .rp27-featured-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:13px}
  .rp27-featured-head small{display:block;margin-bottom:5px;color:#66776e;font-size:7px;font-weight:800;letter-spacing:.15em}.rp27-featured-head h2{margin:0;max-width:12ch;color:#f1f7f4;font:700 22px/1 "Space Grotesk",sans-serif;letter-spacing:-.045em;overflow-wrap:anywhere}
  .rp27-live-dot{display:inline-flex;align-items:center;gap:6px;flex:0 0 auto;min-height:26px;padding:0 9px;border:1px solid rgba(13,242,138,.13);border-radius:999px;background:rgba(13,242,138,.045);color:#a7b7af;font-size:7px;font-weight:800;letter-spacing:.08em}.rp27-live-dot i{width:6px;height:6px;border-radius:50%;background:var(--rp27-green);box-shadow:0 0 10px rgba(13,242,138,.65);animation:rp27Live 1.8s ease-in-out infinite}
  .rp27-featured-media{display:block;position:relative;aspect-ratio:3/2;border-radius:16px;overflow:hidden;background:#09100d;border:1px solid rgba(255,255,255,.055)}
  .rp27-featured-media::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 46%,rgba(0,0,0,.69) 100%)}
  .rp27-featured-media::before{content:"";position:absolute;inset:0;z-index:2;background:linear-gradient(110deg,transparent 25%,rgba(255,255,255,.12) 48%,rgba(13,242,138,.075) 53%,transparent 72%);transform:translateX(-150%);animation:rp27MediaSweep 5.7s ease-in-out 1.2s infinite;pointer-events:none}
  .rp27-featured-media img{width:100%;height:100%;display:block;object-fit:cover;object-position:center;animation:rp27FeaturedPhoto 8.5s ease-in-out infinite alternate;will-change:transform}
  .rp27-featured-date{position:absolute;z-index:3;left:10px;top:10px;display:inline-flex;align-items:baseline;gap:4px;min-height:30px;padding:0 10px;border:1px solid rgba(13,242,138,.16);border-radius:999px;background:rgba(2,8,6,.72);backdrop-filter:blur(9px);color:#f2f8f5}.rp27-featured-date b{font:700 13px/1 "Space Grotesk",sans-serif}.rp27-featured-date small{font-size:7px;font-weight:800;letter-spacing:.1em;color:#9fb0a8}
  .rp27-featured-city{position:absolute;z-index:3;left:12px;right:12px;bottom:11px;color:#eff6f2;font-size:9px;font-weight:650;text-shadow:0 2px 12px rgba(0,0,0,.5)}
  .rp27-featured-info{padding-top:13px}
  .rp27-featured-meta{display:grid;grid-template-columns:1fr 1fr;gap:8px}.rp27-featured-meta span{min-width:0;padding:10px;border:1px solid rgba(255,255,255,.045);border-radius:12px;background:rgba(255,255,255,.018)}.rp27-featured-meta small{display:block;margin-bottom:4px;color:#62736a;font-size:6px;font-weight:800;letter-spacing:.12em}.rp27-featured-meta b{display:block;color:#dce7e1;font-size:9.5px;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rp27-featured-meta span:last-child b{color:#6ff2ad}
  .rp27-featured-stock{margin-top:11px}.rp27-featured-stock>div:first-child{display:flex;justify-content:space-between;gap:10px;color:#75867d;font-size:8px}.rp27-featured-stock b{color:#aebdb6;font-weight:650}.rp27-stock-track{height:4px!important;margin-top:7px;border-radius:999px;background:rgba(255,255,255,.055);overflow:hidden}.rp27-stock-track i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#0df28a,#6ef3ae);box-shadow:0 0 12px rgba(13,242,138,.22);animation:rp27StockGlow 2.8s ease-in-out infinite}
  .rp27-featured-cta{display:flex;align-items:center;justify-content:space-between;min-height:49px;margin-top:13px;padding:0 14px;border-radius:13px;background:rgba(13,242,138,.065);border:1px solid rgba(13,242,138,.14);color:#eaf5ef;text-decoration:none;font-size:11px;font-weight:700}.rp27-featured-cta b{color:var(--rp27-green);font-size:18px;animation:rp27Arrow 1.7s ease-in-out infinite}

  /* Movement divider connects sections and keeps the page alive. */
  .rp27-mobile-marquee{display:block;overflow:hidden;margin:0 0 5px;border-top:1px solid rgba(13,242,138,.065);border-bottom:1px solid rgba(13,242,138,.065);background:rgba(13,242,138,.018)}
  .rp27-mobile-marquee>div{display:flex;width:max-content;gap:15px;align-items:center;padding:10px 0;color:#52645a;font-size:7px;font-weight:800;letter-spacing:.15em;white-space:nowrap;animation:rp27Marquee 22s linear infinite}.rp27-mobile-marquee i{color:var(--rp27-green);font-style:normal;opacity:.8}

  /* Events section gets a stronger heading and more breathing room. */
  .rp-homepage-v16 .rp-home-events{padding:34px 14px 38px!important}
  .rp-homepage-v16 .rp-home-events .homev3-heading{display:block!important;margin-bottom:17px!important}.rp-homepage-v16 .rp-home-events .homev3-heading h2{font-size:27px!important;line-height:.98!important}.rp-homepage-v16 .rp-home-events .homev3-heading p{margin-top:7px!important;max-width:31ch!important;color:#72847b!important;font-size:10.5px!important;line-height:1.45!important}
  .rp-homepage-v16 .homev3-events{gap:11px!important}
  .rp-homepage-v16 .rp-centered-action{margin-top:15px!important}.rp-homepage-v16 .rp-centered-action .btn{width:100%!important;min-height:48px!important;border-radius:14px!important;border-color:rgba(13,242,138,.13)!important;color:#d8e5df!important;background:rgba(13,242,138,.025)!important}

  /* Replace the generic desktop guide cards with a useful mobile story. */
  .rp-homepage-v16 .rp-guide-section{display:none!important}
  .rp27-mobile-how{display:block;margin:0;padding:38px 14px 18px;background:linear-gradient(180deg,#020706,#030c09)}
  .rp27-section-head small,.rp27-mobile-organizer>small{display:block;margin-bottom:8px;color:#5d7065;font-size:7px;font-weight:800;letter-spacing:.15em}.rp27-section-head h2,.rp27-mobile-organizer h2{margin:0;color:#f0f6f3;font:700 27px/1 "Space Grotesk",sans-serif;letter-spacing:-.05em;text-wrap:balance}.rp27-section-head p,.rp27-mobile-organizer p{max-width:32ch;margin:10px 0 0;color:#819189;font-size:11px;line-height:1.55}
  .rp27-how-list{display:grid;gap:8px;margin-top:19px}.rp27-how-list article{display:grid;grid-template-columns:40px minmax(0,1fr);gap:11px;padding:13px;border:1px solid rgba(255,255,255,.05);border-radius:15px;background:linear-gradient(145deg,#07110e,#040b09)}.rp27-how-list article>span{display:grid;place-items:center;width:40px;height:40px;border-radius:12px;border:1px solid rgba(13,242,138,.10);background:rgba(13,242,138,.035);color:var(--rp27-green);font:700 11px/1 "Space Grotesk",sans-serif}.rp27-how-list b{display:block;margin-top:2px;color:#eaf2ee;font-size:12px}.rp27-how-list p{margin:4px 0 0;color:#76877e;font-size:9.5px;line-height:1.45}
  .rp27-how-list article.visible>span{animation:rp27StepFloat 3.4s ease-in-out infinite}.rp27-how-list article:nth-child(2)>span{animation-delay:-1.1s}.rp27-how-list article:nth-child(3)>span{animation-delay:-2.2s}

  .rp27-mobile-organizer{display:block;position:relative;overflow:hidden;margin:22px 14px 34px;padding:22px 18px;border:1px solid rgba(13,242,138,.10);border-radius:21px;background:radial-gradient(circle at 100% 0%,rgba(13,242,138,.11),transparent 42%),linear-gradient(145deg,#07130f,#030a08);isolation:isolate}
  .rp27-organizer-orbit{position:absolute;z-index:-1;right:-105px;top:-85px;width:190px;height:190px;border:1px solid rgba(13,242,138,.16);border-radius:50%;box-shadow:0 0 38px rgba(13,242,138,.035);animation:rp27Orbit 6s ease-in-out infinite}.rp27-mobile-organizer h2{max-width:12ch;font-size:25px}.rp27-mobile-organizer>a{display:flex;align-items:center;justify-content:space-between;min-height:48px;margin-top:17px;padding:0 14px;border-radius:13px;background:var(--rp27-green);color:#021008;text-decoration:none;font-size:10.5px;font-weight:800}.rp27-mobile-organizer>a span{font-size:18px;animation:rp27Arrow 1.7s ease-in-out infinite}

  /* Stronger reveal only for home content. */
  .rp-homepage-v16 .reveal{transition-duration:.76s!important;transition-timing-function:var(--rp27-ease)!important}
  .rp27-mobile-featured.reveal,.rp27-mobile-how.reveal,.rp27-mobile-organizer.reveal{opacity:0;transform:translateY(22px) scale(.985);filter:blur(5px)}
  .rp27-mobile-featured.reveal.visible,.rp27-mobile-how.reveal.visible,.rp27-mobile-organizer.reveal.visible{opacity:1;transform:none;filter:none}
}

@media(max-width:390px){
  .rp-homepage-v16 .rp-cinema-copy h2{font-size:33px!important}.rp27-featured-head h2{font-size:20px}.rp27-featured-meta{grid-template-columns:1fr}.rp27-featured-meta b{white-space:normal}.rp27-section-head h2{font-size:25px}.rp27-mobile-organizer h2{font-size:23px}
}

@keyframes rp27CtaSweep{0%,58%{transform:translateX(-130%);opacity:0}66%{opacity:.8}86%{transform:translateX(130%);opacity:0}100%{transform:translateX(130%);opacity:0}}
@keyframes rp27IconPulse{0%,100%{border-color:rgba(13,242,138,.11);box-shadow:inset 0 0 18px rgba(13,242,138,.025)}50%{border-color:rgba(13,242,138,.24);box-shadow:inset 0 0 20px rgba(13,242,138,.055),0 0 17px rgba(13,242,138,.035)}}
@keyframes rp27FeaturedBorder{0%,45%{transform:translateX(-78%);opacity:.1}65%{opacity:.6}100%{transform:translateX(78%);opacity:.1}}
@keyframes rp27Live{0%,100%{opacity:.6;transform:scale(.88)}50%{opacity:1;transform:scale(1.18)}}
@keyframes rp27FeaturedPhoto{0%{transform:scale(1.02) translate3d(0,0,0)}100%{transform:scale(1.075) translate3d(-5px,-3px,0)}}
@keyframes rp27MediaSweep{0%,58%{transform:translateX(-150%);opacity:0}67%{opacity:.65}88%{transform:translateX(150%);opacity:0}100%{transform:translateX(150%);opacity:0}}
@keyframes rp27StockGlow{0%,100%{filter:brightness(.9)}50%{filter:brightness(1.25)}}
@keyframes rp27Arrow{0%,100%{transform:translateX(0)}50%{transform:translateX(4px)}}
@keyframes rp27Marquee{to{transform:translateX(-50%)}}
@keyframes rp27StepFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-3px)}}
@keyframes rp27Orbit{0%,100%{transform:scale(.96);opacity:.55}50%{transform:scale(1.06);opacity:1}}

@media(prefers-reduced-motion:reduce){
  .rp27-mini-feature>span,.rp27-live-dot i,.rp27-featured-media img,.rp27-featured-media::before,.rp27-stock-track i,.rp27-featured-cta b,.rp27-mobile-marquee>div,.rp27-how-list article>span,.rp27-organizer-orbit,.rp27-mobile-organizer>a span,.rp-homepage-v16 .rp-cinema-primary::before{animation:none!important}
}
