/* RepublicaPass V23 — clean event detail hierarchy on mobile. */
.rp-event-mobile-media,.rp-event-mobile-summary{display:none}

@media(max-width:820px){
  /* Event image is shown at its real aspect ratio: no forced crop. */
  .rp-page-evento .rp-event-mobile-media{
    display:block!important;position:relative!important;width:100%!important;
    background:#020403!important;overflow:hidden!important;
  }
  .rp-page-evento .rp-event-mobile-image{
    display:block!important;width:100%!important;height:auto!important;aspect-ratio:auto!important;
    max-height:none!important;object-fit:contain!important;object-position:center!important;
    background:#020403!important;
  }
  .rp-page-evento .rp-event-mobile-media::after{
    content:"";position:absolute;left:0;right:0;bottom:0;height:26%;pointer-events:none;
    background:linear-gradient(180deg,transparent,rgba(2,7,6,.50));
  }
  .rp-page-evento .rp-event-mobile-date{
    position:absolute;z-index:3;left:14px;bottom:14px;display:grid;place-items:center;
    width:52px;min-height:57px;padding:6px;border-radius:13px;
    background:rgba(2,7,6,.82);border:1px solid rgba(255,255,255,.10);backdrop-filter:blur(10px);
    color:#f6faf7;text-align:center;box-shadow:0 12px 28px rgba(0,0,0,.25);
  }
  .rp-page-evento .rp-event-mobile-date b{font:750 22px/.92 "Space Grotesk",sans-serif;letter-spacing:-.04em}
  .rp-page-evento .rp-event-mobile-date span{margin-top:3px;color:#0df28a;font-size:9px;font-weight:800;letter-spacing:.11em}

  /* Desktop intro is replaced by one clean mobile title block. */
  .rp-page-evento .rp-event-desktop-intro{display:none!important}
  .rp-page-evento .rp-event-mobile-summary{display:block!important;margin:0 0 15px!important}
  .rp-page-evento .event-hero-content{padding:16px 14px 18px!important;background:#020706!important}
  .rp-page-evento .rp-event-mobile-status{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:10px!important;margin-bottom:9px!important}
  .rp-page-evento .rp-event-mobile-status>span{display:inline-flex!important;align-items:center!important;gap:7px!important;min-height:29px!important;padding:0 10px!important;border-radius:999px!important;background:rgba(13,242,138,.075)!important;border:1px solid rgba(13,242,138,.16)!important;color:#a8f5cf!important;font-size:9px!important;font-weight:800!important;letter-spacing:.08em!important}
  .rp-page-evento .rp-event-mobile-status>span i{width:6px!important;height:6px!important;border-radius:50%!important;background:#0df28a!important;box-shadow:0 0 10px rgba(13,242,138,.70)!important}
  .rp-page-evento .rp-event-mobile-status small{min-width:0!important;max-width:48%!important;color:#74837c!important;font-size:8.5px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;text-align:right!important}
  .rp-page-evento .rp-event-mobile-summary h1{margin:0!important;max-width:none!important;color:#f7faf8!important;font:750 clamp(29px,8.2vw,37px)/.98 "Space Grotesk",sans-serif!important;letter-spacing:-.052em!important;overflow-wrap:anywhere!important;word-break:normal!important;text-wrap:balance!important}
  .rp-page-evento .rp-event-mobile-place{display:block!important;margin:9px 0 0!important;color:#aebbb5!important;font-size:11px!important;line-height:1.4!important;white-space:normal!important;overflow-wrap:anywhere!important}
  .rp-page-evento .rp-event-mobile-place span{color:#0df28a!important;margin:0 3px!important}
  .rp-page-evento .rp-event-mobile-subtitle{margin:8px 0 0!important;color:#7e8e86!important;font-size:11px!important;line-height:1.48!important}

  /* Meta cards are concise and never overflow with long venue names. */
  .rp-page-evento .event-meta{display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px!important;margin-top:0!important}
  .rp-page-evento .event-meta span{display:block!important;min-width:0!important;overflow:hidden!important;padding:11px 12px!important;border:1px solid rgba(13,242,138,.075)!important;border-radius:13px!important;background:linear-gradient(150deg,#07110e,#04100c)!important}
  .rp-page-evento .event-meta small{display:block!important;margin-bottom:5px!important;color:#65756e!important;font-size:7.5px!important;font-weight:750!important;letter-spacing:.12em!important}
  .rp-page-evento .event-meta b{display:block!important;min-width:0!important;color:#eaf3ee!important;font-size:10.5px!important;line-height:1.3!important;white-space:normal!important;overflow-wrap:anywhere!important}
  .rp-page-evento .event-visual-actions{margin-top:9px!important}

  /* Remove repeated date/time/location block further down on mobile. */
  .rp-page-evento .premium-info-grid{display:none!important}
  .rp-page-evento .event-copy>.eyebrow{margin-top:8px!important}
  .rp-page-evento .event-copy h2{font-size:23px!important;margin-top:5px!important}
  .rp-page-evento .event-layout{padding-top:3px!important}

  /* Ticket names/descriptions cannot collide with the quantity field. */
  .rp-page-evento .premium-ticket-option{grid-template-columns:minmax(0,1fr) 68px!important;align-items:center!important}
  .rp-page-evento .ticket-copy{min-width:0!important;overflow:hidden!important}
  .rp-page-evento .ticket-name-row{display:flex!important;align-items:flex-start!important;gap:6px!important;min-width:0!important;flex-wrap:wrap!important}
  .rp-page-evento .ticket-name-row b{min-width:0!important;max-width:100%!important;white-space:normal!important;overflow-wrap:anywhere!important;line-height:1.2!important}
  .rp-page-evento .ticket-name-row em{flex:0 0 auto!important;font-size:7px!important}
  .rp-page-evento .ticket-copy small{display:block!important;white-space:normal!important;overflow-wrap:anywhere!important;line-height:1.35!important}

  /* Entrance animation is sequential rather than everything moving at once. */
  .rp-page-evento .rp-event-mobile-date{animation:rp23BadgeIn .55s cubic-bezier(.2,.8,.2,1) .12s both}
  .rp-page-evento .rp-event-mobile-status{animation:rp23Rise .52s cubic-bezier(.2,.8,.2,1) .08s both}
  .rp-page-evento .rp-event-mobile-summary h1{animation:rp23Rise .58s cubic-bezier(.2,.8,.2,1) .14s both}
  .rp-page-evento .rp-event-mobile-place{animation:rp23Rise .55s cubic-bezier(.2,.8,.2,1) .20s both}
  .rp-page-evento .rp-event-mobile-subtitle{animation:rp23Rise .55s cubic-bezier(.2,.8,.2,1) .25s both}
  .rp-page-evento .event-meta{animation:rp23Rise .6s cubic-bezier(.2,.8,.2,1) .29s both}
}

@media(max-width:390px){
  .rp-page-evento .event-hero-content{padding-inline:13px!important}
  .rp-page-evento .rp-event-mobile-summary h1{font-size:28px!important}
  .rp-page-evento .rp-event-mobile-status small{max-width:43%!important;font-size:8px!important}
  .rp-page-evento .event-meta b{font-size:10px!important}
}

@keyframes rp23Rise{from{opacity:0;transform:translateY(12px);filter:blur(3px)}to{opacity:1;transform:none;filter:none}}
@keyframes rp23BadgeIn{from{opacity:0;transform:translateY(9px) scale(.94)}to{opacity:1;transform:none}}

@media(prefers-reduced-motion:reduce){
  .rp-page-evento .rp-event-mobile-date,.rp-page-evento .rp-event-mobile-status,.rp-page-evento .rp-event-mobile-summary h1,.rp-page-evento .rp-event-mobile-place,.rp-page-evento .rp-event-mobile-subtitle,.rp-page-evento .event-meta{animation:none!important}
}
