/* Ajustes de lectura y navegación para pantallas pequeñas. */
.menu-toggle{display:none}

@media (max-width:900px){
  .site-header{position:sticky;grid-template-columns:1fr auto auto;gap:12px;padding-inline:20px}
  .menu-toggle{display:inline-grid;grid-template-columns:20px auto;grid-template-rows:repeat(3,3px);gap:4px;align-items:center;width:auto;min-height:42px;padding:8px 10px;border:1px solid #d8d2e6;border-radius:4px;background:#fff;color:var(--purple);cursor:pointer}
  .menu-toggle span{display:block;width:19px;height:2px;background:currentColor;grid-column:1;border-radius:999px;transition:transform .2s ease,opacity .2s ease}
  .menu-toggle b{grid-column:2;grid-row:1 / 4;margin-left:7px;font:800 10px/1 Arial,Helvetica,sans-serif;letter-spacing:.09em;text-transform:uppercase}
  .site-header nav{position:absolute;top:100%;right:14px;left:14px;display:grid;gap:0;max-height:0;overflow:hidden;border:0;background:#fff;box-shadow:0 18px 35px rgba(35,27,77,.14);opacity:0;transition:max-height .3s ease,opacity .2s ease,border .2s ease}
  .site-header nav a{padding:16px 18px;border-bottom:1px solid #eeeaf5;font-size:15px;text-align:left}
  .site-header nav a:last-child{border-bottom:0}
  .site-header.menu-open nav{max-height:360px;border:1px solid #e6e1ef;opacity:1}
  .site-header.menu-open .menu-toggle span:nth-child(1){transform:translateY(6px) rotate(45deg)}
  .site-header.menu-open .menu-toggle span:nth-child(2){opacity:0}
  .site-header.menu-open .menu-toggle span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}
  .hero{min-height:auto;padding-block:72px 105px}
  .hero-content{max-width:680px}
  .hero-registration{gap:10px}
  .hero-registration .button{flex:1 1 205px;min-height:52px;display:grid;place-items:center;text-align:center}
  .quick-facts{max-width:none;margin-inline:20px}
  .countdown{margin-inline:20px}
  .intro,.speakers,.venue-section{padding-inline:24px}
  .social-band .social-links{max-width:100%}
}

@media (max-width:620px){
  .site-header{height:72px;padding-inline:14px;gap:8px}
  .brand img{width:150px;height:56px}
  .nav-cta{padding:10px 12px;font-size:10px}
  .menu-toggle{grid-template-columns:18px;padding:9px;min-width:38px}
  .menu-toggle b{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
  .menu-toggle span{width:18px}
  .site-header.is-scrolled{height:66px}
  .site-header.is-scrolled .brand img{width:144px;height:52px}
  .hero{padding:50px 20px 74px;min-height:680px}
  .eyebrow{margin-bottom:18px;font-size:11px;line-height:1.5}
  .kicker{font-size:12px;letter-spacing:.14em}
  h1{font-size:clamp(40px,12vw,55px);line-height:1.02;letter-spacing:-.04em}
  .lead{margin:22px 0 28px;font-size:16px;line-height:1.65}
  .registration-label{font-size:11px;line-height:1.45}
  .hero-registration .button{flex-basis:100%;padding:14px 16px;font-size:12px}
  .quick-facts{margin-inline:0}
  .quick-facts article{gap:14px;padding:19px 20px}
  .quick-facts strong{font-size:18px}
  .countdown{margin:28px 16px 0;padding:25px 20px}
  .countdown-copy strong{font-size:29px}
  .countdown-numbers{gap:0}
  .countdown-numbers div{padding-left:9px}
  .countdown-numbers b{font-size:27px}
  .intro,.experience,.speakers,.venue-section,.closing,.social-band{padding-inline:20px}
  .intro{padding-block:66px 58px}
  .intro h2,.experience-heading h2,.speakers-heading h2,.venue-heading h2,.closing h2{font-size:clamp(32px,9vw,43px);max-width:100%}
  .intro-copy p{margin-top:16px;font-size:16px;line-height:1.7}
  .experience{padding-block:66px}
  .experience-items article{min-height:0;padding:31px 24px}
  .experience-items h3{margin-top:22px}
  .speakers,.venue-section{padding-block:66px}
  .speaker-featured article{min-height:0;padding:29px 24px}
  .speaker-featured h3{font-size:30px}
  .speaker-guests{padding:26px 22px}
  .venue-heading{margin-bottom:30px}
  .venue-date>span{font-size:68px}
  .venue-map{margin-top:14px}
  .venue-map-copy{padding:30px 23px}
  .venue-map iframe{min-height:280px}
  .preview-grid{padding:10px;gap:10px}
  .feature-card{min-height:255px;padding:34px 25px}
  .feature-card h3{font-size:clamp(28px,8vw,37px);max-width:100%}
  .closing{padding-block:65px;gap:30px}
  .social-band{padding-block:54px}
  .social-band h2{font-size:32px;max-width:100%}
  .social-band .social-links{grid-template-columns:repeat(2,minmax(0,1fr));width:100%}
  .social-band .social-links a:last-child{grid-column:auto}
  footer{padding:31px 20px}
}

@media (max-width:375px){
  .brand img{width:125px}
  .nav-cta{padding-inline:9px}
  .hero{min-height:650px}
  h1{font-size:39px}
  .countdown-numbers b{font-size:24px}
  .countdown-numbers small{font-size:8px}
}
