/* PHANTASM-27 — responsive fixes
 * Applied from the supplied responsive-fixes.css.
 */

.logo-image-center{width:min(600px,88vw);height:auto}
.logo-image{width:min(100px,25vw);height:auto;margin-left:0;padding-left:clamp(8px,3vw,70px)}
body::before,body::after{max-width:100vw;overflow:hidden}
.page-transition,.events-page,.container,.section{max-width:100%;overflow-x:clip}
h2::after{max-width:100%}

@media (min-width:769px) and (max-width:1024px){
  .footer-top{grid-template-columns:1fr 1fr;gap:2rem;padding:2.5rem 3rem}
  .footer-top .footer-col:last-child{grid-column:1/-1;text-align:center}
  .footer-top .footer-title:after{left:50%;transform:translateX(-50%)}
  .footer-top .footer-socials{justify-content:center}
  .schedule-row{grid-template-columns:.6fr 2fr .9fr 1.3fr;padding:18px 20px;font-size:.88rem}
  .admin-grid-row{grid-template-columns:1fr 1fr .8fr 1.4fr .6fr 1fr 1fr .9fr .9fr;font-size:.8rem}
  .events-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}
  .highlight-grid{grid-template-columns:repeat(auto-fit,minmax(220px,300px))}
  .Registercards,.Registercardsnon{grid-template-columns:repeat(3,1fr)}
  .hero-title{font-size:clamp(2.8rem,5vw,4.5rem)}
  .schedule-wrapper,.admin-wrapper{padding:80px 20px}
  .ignite-container{max-width:90%;padding:0 2rem}
}

@media (max-width:768px){
  .container{padding:0 1rem}
  .schedule-wrapper{padding:60px 12px}
  .admin-wrapper{padding:60px 12px}
  .hero-title{font-size:clamp(2rem,8vw,3.2rem);line-height:1.15}
  .schedule-row,.schedule-row.header{display:flex;flex-direction:column;gap:.4rem;padding:16px}
  .schedule-row.header{display:none}
  .admin-table{overflow-x:auto;-webkit-overflow-scrolling:touch}
  .admin-grid-row{min-width:700px}
  .admin-row:not(.header){display:flex;flex-wrap:wrap;gap:.5rem;padding:14px;min-width:unset;border-radius:10px;border:1px solid rgba(255,255,255,.08);margin-bottom:.5rem}
  .events-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:.8rem}
  .event-card{padding:.75rem}
  .event-card h3{font-size:.85rem;margin-bottom:.3rem;padding-top:.7rem}
  .event-card p{font-size:.72rem;line-height:1.35}
  .event-card button{font-size:.65rem;padding:.3rem .5rem}
  .event-card>div:first-child{font-size:.6rem;padding:.15rem .4rem}
  .Registertitle{transform:none;font-size:clamp(1.8rem,8vw,4rem);white-space:normal;letter-spacing:.05em;overflow:visible;text-align:center;line-height:1.2}
  .Registercards{transform:none;grid-template-columns:repeat(2,1fr);gap:.75rem}
  .Registercardsnon{grid-template-columns:repeat(2,1fr);gap:.75rem}
  .container-section{transform:none;padding:2rem 1rem}
  .container-section h1{font-size:clamp(1.8rem,7vw,2.6rem);letter-spacing:1px}
  .highlight-section{width:100%;max-width:320px;box-sizing:border-box;transform:none}
  .highlight-grid{grid-template-columns:1fr;justify-items:center}
  .nav-menu{top:76px;height:calc(100vh - 76px)}
  .about-section{width:auto;margin:0 1rem}
  .ignite-container{padding:0 1.25rem;text-align:center}
  .ignite-container h2{text-align:center}
  .ignite-container h2::after{left:50%;transform:translateX(-50%)}
  .ignite-list{text-align:left}
  .success-card{padding:2rem 1.25rem}
  .payment-page{padding:0 1rem}
  .rules-modal{width:min(94vw,520px)}
}

@media (max-width:480px){
  .Registercards,.Registercardsnon{grid-template-columns:1fr;gap:.75rem}
  .events-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}
  .logo-image-center{width:85vw}
  .hero-actions{gap:.75rem;flex-direction:column;align-items:center}
  .hero-actions .btn,.hero-actions .btn-secondary,.hero-actions .btn-tertiary{width:100%;max-width:280px;justify-content:center}
  .countdown{font-size:1.3rem;letter-spacing:4px}
  .success-title{font-size:1.6rem;letter-spacing:1px}
  .detail-row{grid-template-columns:1fr;gap:4px}
  .detail-value{text-align:left}
  .footer-socials a,.footer-socials a::before{width:44px;height:44px}
  .footer-socials a::before{background-size:176px 44px}
  .footer-socials a[href*="instagram"]::before{background-position:-44px 0}
  .footer-socials a[href*="linkedin"]::before{background-position:-88px 0}
  .footer-socials a[href*="youtube"]::before{background-position:-132px 0}
}

@media (max-width:374px){
  .Registertitle{font-size:clamp(1.5rem,9vw,2.5rem)}
  .events-grid{grid-template-columns:1fr 1fr;gap:.5rem}
  .event-card{padding:.5rem}
  .btn-grp{flex-direction:column;gap:8px}
  .rules-modal{width:98vw;border-radius:12px}
}

@media (min-width:1025px){
  .footer-top{max-width:1200px;margin-left:auto;margin-right:auto;padding:3rem 2rem}
  .events-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}
  .admin-grid-row>*{min-width:0;word-break:break-word}
}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
  .scanline:after{animation:none}
  .live-now{animation:none;opacity:1}
}
