/*
 * Registration simplification and responsive refinements.
 * Loaded after register-v3.6.css.
 */

.registration-page{
  overflow-x:hidden;
}

.registration-hero{
  padding-top:clamp(6.2rem,10vw,8rem);
  padding-bottom:clamp(2rem,5vw,3.5rem);
}

.hero-copy h1{
  max-width:13ch;
}

.hero-copy p{
  max-width:40rem;
}

.registration-main{
  padding-top:1rem;
}

.trust-strip article,
.hero-stat-grid article{
  min-width:0;
}

.registration-panel{
  overflow:hidden;
}

.panel-heading,
.form-section,
.modal-body{
  min-width:0;
}

.instruction-rail p,
.section-title-row p,
.modal-head p,
.modal-body > p{
  max-width:44rem;
}

.field-card input,
.field-card select,
.primary-button,
.secondary-button{
  min-height:3.15rem;
}

.primary-button,
.secondary-button{
  touch-action:manipulation;
}


@media(max-width:900px){
  .panel-layout{
    grid-template-columns:1fr;
  }

  .instruction-rail{
    order:2;
  }

  .sticky-instructions{
    position:static;
  }

  .sticky-instructions ol{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media(max-width:640px){
  body.registration-page{
    padding-bottom:calc(8rem + env(safe-area-inset-bottom));
  }

  .registration-hero{
    padding-top:5.8rem;
  }

  .hero-grid,
  .panel-heading{
    gap:1rem;
  }

  .hero-stat-grid,
  .trust-strip{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .hero-seal{
    display:none;
  }

  .panel-progress{
    overflow-x:auto;
    padding-bottom:.3rem;
    scrollbar-width:none;
  }

  .panel-progress::-webkit-scrollbar{
    display:none;
  }

  .panel-progress span{
    flex:0 0 auto;
  }

  .sticky-instructions ol,
  .form-grid,
  .form-grid-four,
  .privacy-grid,
  .member-preview-card,
  .candidate-grid,
  .account-summary{
    grid-template-columns:1fr;
  }

  .instruction-rail{
    display:none;
  }

  .form-actions,
  .modal-actions{
    display:grid;
    grid-template-columns:1fr;
  }

  .form-actions > *,
  .modal-actions > *{
    width:100%;
  }

  .modal-card,
  .modal-card-wide{
    width:min(calc(100% - 1rem),42rem);
    max-height:calc(100vh - 1rem);
    overflow:auto;
    border-radius:1.3rem;
  }

  #footer{
    margin-bottom:1.25rem;
  }


}

@media(max-width:380px){
  .hero-stat-grid,
  .trust-strip{
    grid-template-columns:1fr;
  }
}

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