/* Final mobile UX pass — loaded LAST. Desktop remains untouched. */
@media (max-width:760px){
  :root{--mobile-pad:16px;--mobile-header:64px}
  html{-webkit-text-size-adjust:100%;scroll-padding-top:76px}
  body{overflow-x:hidden!important;padding-bottom:0!important}
  .container{width:calc(100% - 32px)!important;max-width:none!important;margin-inline:auto!important}
  .section{padding:72px 0!important}
  img{max-width:100%;height:auto}
  a,button,input,select,textarea{touch-action:manipulation}
  a,button{min-height:44px}

  /* Header */
  html body .site-header,
  html body .site-header.scrolled{
    position:fixed!important;top:0!important;left:0!important;right:0!important;
    width:100%!important;height:64px!important;padding:0 10px 0 12px!important;
    transform:none!important;border-radius:0!important;
    grid-template-columns:minmax(0,1fr) auto auto!important;gap:8px!important;
    background:rgba(3,52,43,.98)!important;backdrop-filter:blur(16px)!important;
  }
  html body .site-header .brand{min-width:0!important;max-width:170px!important;gap:8px!important}
  html body .site-header .brand-mark{width:36px!important;height:36px!important;flex:0 0 36px!important}
  html body .site-header .brand-text b{font-size:12px!important;line-height:1!important}
  html body .site-header .brand-text small{display:block!important;font-size:7px!important;margin-top:4px!important;white-space:nowrap!important}
  html body .site-header .desktop-nav{display:none!important}
  html body .site-header .header-cta{height:40px!important;min-height:40px!important;padding:0 11px!important;font-size:10px!important;background:#bd8c50!important;color:#fff!important}
  html body .site-header .menu-toggle{display:block!important;width:42px!important;height:42px!important;min-height:42px!important}
  .mobile-menu{z-index:880!important;padding:88px 18px calc(24px + env(safe-area-inset-bottom))!important;background:rgba(3,47,39,.995)!important}
  .mobile-menu nav{gap:0!important}
  .mobile-menu nav>a:not(.button){display:flex!important;align-items:center!important;min-height:58px!important;padding:0!important;border-bottom:1px solid rgba(255,255,255,.12)!important;font-size:27px!important;line-height:1.05!important}
  .mobile-menu .button{margin-top:18px!important;min-height:56px!important;width:100%!important}

  /* Hero: copy first, conference photo second */
  html body main#top .ref-hero{height:auto!important;min-height:0!important;margin-top:64px!important;overflow:hidden!important;background:#032f27!important;border-radius:0 0 14px 14px!important}
  html body main#top .ref-hero-left{position:relative!important;inset:auto!important;width:100%!important;min-height:0!important;padding:28px 16px 30px!important;background:#032f27!important}
  .ref-hero-star,.ref-hero-date,.ref-hero-title,.ref-hero-desc,.ref-hero-venue,.ref-hero-actions{position:relative!important;left:auto!important;top:auto!important;right:auto!important;bottom:auto!important}
  .ref-hero-star{margin:0 0 14px!important;font-size:18px!important}
  .ref-hero-date{width:210px!important;height:64px!important;margin:0 0 22px!important;padding:9px 12px!important}
  .ref-hero-date strong{font-size:34px!important;line-height:.82!important}
  .ref-hero-date span{font-size:10px!important;margin-top:7px!important;letter-spacing:.06em!important}
  .ref-hero-title{width:100%!important;margin:0!important;line-height:.86!important}
  .ref-hero-title span{font-size:clamp(47px,14vw,61px)!important;line-height:.88!important;white-space:nowrap!important}
  .ref-hero-title em{margin-top:.14em!important;font-size:clamp(36px,10.3vw,46px)!important;line-height:.92!important;white-space:normal!important;overflow-wrap:anywhere!important}
  .ref-hero-desc{width:100%!important;margin:20px 0 0!important;font-size:15px!important;line-height:1.55!important;color:#dce5e1!important}
  .ref-hero-venue{width:100%!important;margin:18px 0 0!important;font-size:12.5px!important;line-height:1.5!important;gap:10px!important;color:#e0e8e4!important}
  .ref-hero-venue b{font-size:13px!important}
  .ref-hero-actions{display:grid!important;grid-template-columns:1fr!important;gap:9px!important;margin:24px 0 0!important;width:100%!important}
  .ref-hero-btn,.ref-hero-btn.primary,.ref-hero-btn.secondary{width:100%!important;height:56px!important;min-height:56px!important;padding:0 16px!important;font-size:11px!important}

  html body main#top .ref-hero-visual{
    position:relative!important;inset:auto!important;width:100%!important;height:auto!important;aspect-ratio:16/10!important;min-height:260px!important;max-height:none!important;
    background-color:#061a24!important;background-image:url("assets/conference-main.jpg")!important;background-size:cover!important;background-position:center center!important;background-repeat:no-repeat!important;
  }
  html body main#top .ref-hero-visual::before{
    content:""!important;display:block!important;position:absolute!important;z-index:8!important;
    top:14px!important;right:14px!important;width:88px!important;height:88px!important;
    background:url("assets/vrv-afnu.png") center/contain no-repeat!important;filter:none!important;opacity:1!important;transform:none!important;
  }
  html body main#top .ref-hero-visual::after{
    content:""!important;display:block!important;position:absolute!important;z-index:8!important;
    top:20px!important;right:112px!important;width:min(46vw,190px)!important;aspect-ratio:2048/624!important;
    background:url("assets/dim-ria.png") center/contain no-repeat!important;filter:none!important;opacity:1!important;transform:none!important;
  }
  html body main#top .ref-hero-blend{
    display:block!important;position:absolute!important;z-index:4!important;left:0!important;right:0!important;top:auto!important;bottom:calc(62.5vw - 58px)!important;width:100%!important;height:76px!important;
    background:linear-gradient(180deg,rgba(3,47,39,0) 0%,rgba(3,47,39,.55) 50%,#032f27 100%)!important;pointer-events:none!important;
  }

  /* Section titles and supporting copy */
  .section-title{font-size:clamp(40px,11.2vw,54px)!important;line-height:.96!important;letter-spacing:-.045em!important}
  .about-copy p,.outcomes-head p,.ticket-heading p,.location-copy p,.final-copy p{font-size:16px!important;line-height:1.6!important}
  .section-kicker{font-size:11px!important;letter-spacing:.12em!important}

  /* About / outcomes */
  .about-layout,.ticket-heading,.final-grid{grid-template-columns:1fr!important;gap:26px!important}
  .benefit-grid{grid-template-columns:1fr!important;gap:0!important;margin-top:42px!important}
  .benefit{min-height:0!important;padding:22px 0!important}
  .benefit h3{font-size:23px!important;line-height:1.12!important}
  .benefit p{font-size:15px!important;line-height:1.55!important}
  .outcomes-grid{display:flex!important;gap:12px!important;margin:36px -16px 0 0!important;padding-right:16px!important;overflow-x:auto!important;scroll-snap-type:x mandatory!important;scrollbar-width:none!important;-webkit-overflow-scrolling:touch!important}
  .outcomes-grid::-webkit-scrollbar{display:none!important}
  .outcome-item{flex:0 0 min(82vw,330px)!important;min-height:190px!important;padding:24px!important;scroll-snap-align:start!important;transform:none!important}
  .outcome-item strong{font-size:29px!important;line-height:1.06!important}

  /* Program */
  .program-head{grid-template-columns:1fr!important;gap:24px!important}
  .day-tabs{display:grid!important;grid-template-columns:1fr 1fr!important;width:100%!important}
  .day-tab{min-width:0!important;min-height:58px!important;padding:12px!important;font-size:15px!important}
  .day-tab span{font-size:10px!important;margin-top:5px!important}
  .schedule{margin-top:28px!important}
  .schedule-row{grid-template-columns:82px minmax(0,1fr)!important;gap:12px!important;align-items:start!important;padding:18px 0!important}
  .schedule-row time{font-size:13px!important;line-height:1.25!important;padding-top:2px!important}
  .schedule-row .tag{font-size:20px!important;line-height:1.08!important;letter-spacing:-.02em!important;text-transform:none!important}
  .schedule-row h3{font-size:16px!important;line-height:1.4!important;margin-top:7px!important}
  .schedule-row p{font-size:14px!important;line-height:1.45!important}
  .schedule-row .arrow{display:none!important}
  .schedule-row.break .tag,.schedule-row.dinner .tag{font-size:14px!important;text-transform:uppercase!important;letter-spacing:.06em!important}

  /* Speakers — swipe cards, large readable names */
  .speakers-head{display:block!important}
  .side-note{margin-top:18px!important;font-size:15px!important;line-height:1.55!important}
  html body .speaker-grid{display:flex!important;grid-template-columns:none!important;gap:12px!important;margin:36px -16px 0 0!important;padding:0 16px 10px 0!important;overflow-x:auto!important;scroll-snap-type:x mandatory!important;scrollbar-width:none!important;-webkit-overflow-scrolling:touch!important}
  html body .speaker-grid::-webkit-scrollbar{display:none!important}
  html body .speaker-card,html body .speaker-card:nth-child(n){flex:0 0 min(82vw,340px)!important;margin-top:0!important;scroll-snap-align:start!important}
  html body .speaker-image{aspect-ratio:4/4.65!important}
  html body .speaker-info{padding:16px 2px 22px!important}
  html body .speaker-info h3{font-size:28px!important;line-height:1.04!important;margin-bottom:10px!important}
  html body .speaker-info p{display:block!important;min-height:0!important;font-size:15px!important;line-height:1.5!important;margin-bottom:12px!important}
  html body .speaker-info span{font-size:11px!important;line-height:1.3!important}

  /* Tickets */
  .ticket-grid{grid-template-columns:1fr!important;gap:12px!important;margin-top:40px!important}
  .ticket-card,.contact-card{min-height:0!important;padding:24px 20px!important}
  .ticket-card .price{margin:34px 0 20px!important}
  .ticket-card .price strong{font-size:64px!important;line-height:.9!important}
  .ticket-card>p{font-size:16px!important;line-height:1.55!important}
  .ticket-card li{font-size:14px!important;line-height:1.4!important;padding:13px 0!important}
  .ticket-card .button{min-height:56px!important;font-size:12px!important}

  /* Countdown — always one row */
  .countdown-section{padding:68px 0!important}
  .countdown-wrap{padding:30px 0!important;gap:24px!important}
  .countdown-wrap h2{font-size:clamp(36px,10vw,48px)!important;line-height:1!important}
  .countdown{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;width:100%!important}
  .countdown>div{min-width:0!important;padding:12px 4px!important;text-align:center!important}
  .countdown strong{font-size:clamp(28px,8vw,38px)!important;line-height:1!important}
  .countdown span{display:block!important;margin-top:6px!important;font-size:9px!important;line-height:1.1!important;letter-spacing:.05em!important;white-space:nowrap!important}

  /* Registration */
  .registration-layout{display:block!important;width:100%!important}
  .participants-head{text-align:center!important;margin-inline:auto!important}
  .participants-head .section-title::after{font-size:clamp(38px,11vw,52px)!important;line-height:.96!important}
  .registration-form{width:100%!important;max-width:100%!important;margin:30px auto 0!important}
  .registration-form label{font-size:14px!important}
  .registration-form input,.registration-form select,.registration-form textarea{width:100%!important;min-height:56px!important;font-size:17px!important;padding:12px 14px!important}
  .registration-form button{width:100%!important;min-height:58px!important;font-size:13px!important}
  .registration-form .consent{font-size:14px!important;line-height:1.45!important}

  /* Location / partners / footer */
  .location{padding:72px 0!important}
  .location-card{grid-template-columns:1fr!important;min-height:0!important}
  .location-visual{min-height:300px!important;height:62vw!important;max-height:390px!important}
  .location-copy{min-height:0!important;padding:28px 20px!important}
  .location-copy h2{font-size:clamp(38px,10.5vw,50px)!important}
  .location-copy p{font-size:16px!important}
  .location-features{display:flex!important;flex-wrap:wrap!important;gap:8px!important}
  .location-features span{font-size:11px!important;min-height:36px!important;display:inline-flex!important;align-items:center!important}
  .partner-row{display:grid!important;grid-template-columns:1fr!important;gap:22px!important;padding:26px 0!important;text-align:center!important}
  .partner-row img{max-width:min(76vw,300px)!important;max-height:110px!important;margin:0 auto!important;object-fit:contain!important}
  .footer{padding:34px 16px calc(34px + env(safe-area-inset-bottom))!important}
  .footer-inner,.footer-nav{display:flex!important;flex-wrap:wrap!important;gap:14px 18px!important;align-items:center!important}
  .footer-nav a{font-size:13px!important;white-space:nowrap!important;min-height:36px!important;display:inline-flex!important;align-items:center!important}

  .final-cta{padding:72px 0!important}
  .final-copy h2{font-size:clamp(46px,12vw,64px)!important;line-height:.92!important}
  .contact-panel a{min-height:54px!important;font-size:15px!important}

  /* Avoid decorative overflow on small screens */
  .mouse-glow,.hero-grid,.hero-orb,.marquee,.edition-stamp{display:none!important}
}

@media (max-width:390px){
  .container{width:calc(100% - 28px)!important}
  html body .site-header .header-cta{padding:0 9px!important;font-size:9px!important}
  .ref-hero-title span{font-size:46px!important}
  .ref-hero-title em{font-size:35px!important}
  html body main#top .ref-hero-visual::before{width:74px!important;height:74px!important;right:10px!important;top:10px!important}
  html body main#top .ref-hero-visual::after{right:92px!important;top:16px!important;width:150px!important}
  .schedule-row{grid-template-columns:76px minmax(0,1fr)!important}
  .schedule-row .tag{font-size:18px!important}
  .countdown strong{font-size:28px!important}
  .countdown span{font-size:8px!important;letter-spacing:0!important}
}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto!important}
  *{animation:none!important;transition:none!important}
}
