/* Performance and responsive layer for the supplied redesign.
   Desktop composition stays unchanged; mobile receives an intentional stack. */

.rail-track{will-change:auto!important}
.rail-track.is-moving{will-change:transform!important}
.rail-bar{width:100%!important;transform:scaleX(0);transform-origin:left center;will-change:transform}
.ambient-particle-host,.ambient-particles{transform:translateZ(0)}
.redesign-page img[loading="lazy"]{opacity:1}

/* The blurred ambient wash and cursor glow keep the redesign's blur radii. Each
   gets its own compositor layer so the blur rasterises once instead of on every
   move; measured cheaper than removing the filter, which de-promoted them back
   into the shared paint pass. */
.rail-glow,.vertical-glow,.rail-root>div:first-child,.vertical-root>div:nth-child(2){will-change:transform}

@media(min-width:821px){
  /* A drifter's per-frame parallax transform would otherwise invalidate style
     and layout across the whole multi-viewport-wide track. */
  .rail-track>section,.rail-track [data-drift]{contain:layout style}
  .rail-track.is-moving [data-drift]{will-change:transform}
}

.mobile-nav-toggle{display:none}

@media(max-width:820px){
  html,body{width:100%;max-width:100%;overflow-x:hidden!important}
  body.redesign-page{-webkit-text-size-adjust:100%;text-size-adjust:100%}
  body.rail-page{overflow-x:hidden!important;overflow-y:auto!important}
  html.rail-page{overflow-x:hidden!important;overflow-y:auto!important}

  .ambient-particle-host,.ambient-particles{display:none!important}
  .rail-glow,.vertical-glow,.vertical-root>div:nth-child(2){display:none!important}
  .rail-root>div:first-child{position:fixed!important;inset:-12vh -20vw auto!important;width:120vw!important;height:72vh!important;filter:none!important;opacity:.72!important}

  /* Compact, accessible mobile navigation. */
  .site-head,.redesign-shell-header{
    position:sticky!important;top:0!important;left:0!important;right:0!important;
    z-index:100!important;min-height:64px!important;padding:16px 20px!important;
    display:flex!important;align-items:center!important;justify-content:space-between!important;
    flex-wrap:nowrap!important;gap:16px!important;background:#080a0df8!important;
    border-bottom:1px solid #ffffff14!important;backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;pointer-events:auto!important
  }
  .rail-root>.site-head,.vertical-root>.site-head{position:fixed!important}
  .site-head>a,.redesign-shell-header>.redesign-brand{position:relative;z-index:2;min-width:0;pointer-events:auto!important}
  .site-head>a img,.redesign-shell-header .redesign-brand img{height:26px!important}
  .site-head>a span,.redesign-shell-header .redesign-brand span{font-size:17px!important}
  .mobile-nav-toggle{
    position:relative;z-index:2;display:inline-flex;width:44px;height:40px;padding:0;
    align-items:center;justify-content:center;flex-direction:column;gap:7px;
    border:1px solid #ffffff26;border-radius:100px;background:#ffffff08;color:#eaeaea;
    cursor:pointer;pointer-events:auto
  }
  .mobile-nav-toggle span{display:block;width:17px;height:1px;background:currentColor;transition:transform .22s ease,opacity .22s ease}
  .site-head.nav-open .mobile-nav-toggle span:first-child{transform:translateY(4px) rotate(45deg)}
  .site-head.nav-open .mobile-nav-toggle span:last-child{transform:translateY(-4px) rotate(-45deg)}
  .site-head nav,.redesign-shell-header nav{
    position:absolute!important;inset:63px 0 auto!important;width:100%!important;max-height:0;
    display:grid!important;grid-template-columns:1fr!important;gap:0!important;margin:0!important;padding:0 20px!important;
    overflow:hidden!important;background:#080a0dfb!important;border-bottom:1px solid transparent!important;
    opacity:0;visibility:hidden;transform:translateY(-8px);pointer-events:none!important;
    transition:max-height .3s ease,opacity .2s ease,transform .25s ease,visibility 0s linear .3s,padding .3s ease
  }
  .site-head.nav-open nav,.redesign-shell-header.nav-open nav{
    max-height:calc(100dvh - 63px);padding:10px 20px 22px!important;overflow-y:auto!important;
    border-bottom-color:#ffffff1f!important;opacity:1;visibility:visible;transform:none;
    pointer-events:auto!important;transition-delay:0s
  }
  .site-head nav a,.site-head nav .redesign-cart-link,.redesign-shell-header nav a{
    display:flex!important;width:100%!important;min-height:45px;align-items:center;padding:0!important;
    border:0!important;border-bottom:1px solid #ffffff12!important;font-size:15px!important;color:#ffffffa6!important
  }
  .site-head nav a:last-child,.site-head nav .redesign-cart-link:last-child{border-bottom:0!important}
  .site-head nav a[aria-current="page"]{color:#fff!important}
  .redesign-admin-nav>span{padding:12px 0 8px}

  /* The ZIP's horizontal chapters become editorial vertical sections. */
  .rail-root{width:100%!important;min-height:100svh!important;overflow:visible!important}
  .rail-track{position:static!important;width:100%!important;height:auto!important;display:block!important;transform:none!important}
  .rail-track>section{
    position:relative!important;width:100%!important;max-width:none!important;height:auto!important;
    min-height:0!important;max-height:none!important;padding:72px 24px!important;overflow:visible!important;
    border-top:1px solid #ffffff12;box-sizing:border-box
  }
  .rail-track>section:first-child{
    min-height:100svh!important;padding:112px 24px 72px!important;border-top:0;
    display:flex!important;flex-direction:column;align-items:flex-start!important;justify-content:center!important
  }
  .rail-track>section>*{position:static!important;max-width:100%!important;transform:none!important;opacity:1!important}
  .rail-track [data-drift]{position:static!important;width:auto!important;max-width:100%!important;margin:0!important;transform:none!important;opacity:1!important}
  .rail-track h1{font-size:clamp(42px,13vw,60px)!important;line-height:.98!important}
  .rail-track h2{font-size:clamp(30px,9vw,44px)!important;line-height:1.04!important}
  .rail-track h3{font-size:clamp(25px,7vw,34px)!important}
  .rail-track p{max-width:52ch}
  .rail-track img{max-width:100%!important}
  .rail-hud{display:none!important}

  /* Home */
  [data-redesign-page="home"] .rail-track>section:nth-child(2){display:grid!important;grid-template-columns:1fr;gap:48px}
  [data-redesign-page="home"] .rail-track>section:nth-child(2)>h2{margin-bottom:4px!important}
  [data-redesign-page="home"] .rail-track>section:nth-child(2)>a{display:block!important;width:100%!important;margin:0!important}
  [data-redesign-page="home"] .rail-track>section:nth-child(2) img{width:100%!important;height:clamp(190px,58vw,260px)!important;min-height:0!important;margin-bottom:22px!important;object-fit:cover}
  [data-redesign-page="home"] .rail-track>section:nth-child(3){display:grid!important;gap:44px}
  [data-redesign-page="home"] .rail-track>section:nth-child(3) figure{max-width:none!important;margin:0!important;padding-left:20px;border-left:1px solid #8ab4f866}
  [data-redesign-page="home"] .rail-track>section:nth-child(4){display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px 16px}
  [data-redesign-page="home"] .rail-track>section:nth-child(4)>div:first-child{grid-column:1/-1;margin:0 0 18px!important}
  [data-redesign-page="home"] .rail-track>section:nth-child(4)>[data-drift]{display:flex!important;align-items:center;justify-content:center;min-width:0}
  [data-redesign-page="home"] .rail-track>section:nth-child(4) img{width:clamp(70px,23vw,104px)!important;height:clamp(70px,23vw,104px)!important;object-fit:cover}
  [data-redesign-page="home"] .rail-track>section:last-child{min-height:78svh!important;display:flex!important;flex-direction:column;justify-content:center}

  /* About */
  [data-redesign-page="about"] .rail-track>section:nth-child(2){display:grid!important;gap:54px}
  [data-redesign-page="about"] .rail-track>section:nth-child(2)>h2{margin-bottom:4px!important}
  [data-redesign-page="about"] .mcard{padding-left:20px;border-left:1px solid #ffffff1f}
  [data-redesign-page="about"] .semester-section{display:block!important}
  [data-redesign-page="about"] .semester-section>div:first-child{margin:0 0 40px!important}
  [data-redesign-page="about"] .semester-flow,[data-redesign-page="about"] .semester-education,[data-redesign-page="about"] .semester-education-grid{display:block!important;width:100%!important}
  [data-redesign-page="about"] .semester-education{padding:24px 22px 28px!important}
  [data-redesign-page="about"] .semester-education-grid article,[data-redesign-page="about"] .semester-project{width:auto!important}
  [data-redesign-page="about"] .semester-education-grid article+article{margin-top:30px!important}
  [data-redesign-page="about"] .semester-project{padding:36px 22px 0!important}

  /* Leadership */
  [data-redesign-page="leadership"] .rail-track>section:nth-child(2){display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:50px 16px;padding-top:64px!important}
  [data-redesign-page="leadership"] .mem{width:auto!important;min-width:0!important}
  [data-redesign-page="leadership"] .mem>div:first-child{width:100%!important;height:auto!important;min-height:0!important;aspect-ratio:250/308;margin-bottom:18px!important}
  [data-redesign-page="leadership"] .mem h3{font-size:clamp(17px,5.5vw,23px)!important}
  [data-redesign-page="leadership"] .mem p{font-size:13.5px!important}
  .leadership-bio-dialog aside{width:100%!important;padding:76px 24px 36px!important}
  .leadership-bio-close{top:18px;right:18px}

  /* Recruiting */
  [data-redesign-page="join"] .join-timeline{display:block!important}
  [data-redesign-page="join"] .join-timeline-list{display:grid!important;grid-template-columns:1fr!important;gap:0!important}
  [data-redesign-page="join"] .join-timeline-item{width:auto!important;height:auto!important;min-height:0!important;padding:0 0 44px 24px!important;border-left:1px solid #8ab4f866!important}
  [data-redesign-page="join"] .join-timeline-item:last-child{padding-bottom:0!important}
  [data-redesign-page="join"] .join-timeline-copy{position:static!important;width:auto!important}
  [data-redesign-page="join"] .join-timeline-line,[data-redesign-page="join"] .join-timeline-dot{display:none!important}
  [data-redesign-page="join"] .join-application{display:block!important}
  [data-redesign-page="join"] .join-application>div:first-child{margin-bottom:38px!important}
  [data-redesign-page="join"] .application-parts{display:grid!important;grid-template-columns:1fr!important;gap:22px!important}
  [data-redesign-page="join"] .application-part{width:auto!important;min-height:0!important}
  .table-location-dialog{width:calc(100% - 24px)}
  .table-location-panel{padding:18px}
  .table-location-heading{gap:16px}
  .table-location-dialog img{max-height:62dvh}

  /* Placement */
  [data-redesign-page="placement"] .rail-track>section:first-child>div:last-child{align-items:center!important}
  [data-redesign-page="placement"] .rail-track>section:nth-child(2){display:grid!important;grid-template-columns:1fr;gap:46px}
  [data-redesign-page="placement"] .rail-track>section:nth-child(2)>h2{width:auto!important;margin-bottom:6px!important}
  [data-redesign-page="placement"] .rail-track>section:nth-child(3){display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px 16px}
  [data-redesign-page="placement"] .rail-track>section:nth-child(3)>div:first-child{grid-column:1/-1;margin-bottom:22px!important}
  [data-redesign-page="placement"] .rail-track>section:nth-child(3)>a{display:flex!important;align-items:center;justify-content:center;min-width:0}
  [data-redesign-page="placement"] .rail-track>section:nth-child(3) img{width:clamp(70px,23vw,104px)!important;height:clamp(70px,23vw,104px)!important}

  /* Partners */
  [data-redesign-page="partners"] .rail-track>section:nth-child(2){display:grid!important;grid-template-columns:1fr;gap:46px}
  [data-redesign-page="partners"] .rail-track>section:nth-child(2)>h2{width:auto!important;margin-bottom:6px!important}
  [data-redesign-page="partners"] .rail-track>section:nth-child(3){display:block!important}
  [data-redesign-page="partners"] .rail-track>section:nth-child(3)>div:first-child{width:auto!important;margin-bottom:40px!important}
  [data-redesign-page="partners"] .partner-logo-cloud{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px!important;width:100%!important;max-height:none!important}
  [data-redesign-page="partners"] .partner-logo-cloud img{width:100%!important;max-width:160px!important;height:auto!important;justify-self:center}
  [data-redesign-page="partners"] .rail-track>section:nth-child(4){display:grid!important;grid-template-columns:1fr;gap:46px!important}
  [data-redesign-page="partners"] .rail-track>section:nth-child(4)>div{max-width:none!important}
  [data-redesign-page="partners"] .rail-track>section:nth-child(4)>form{max-width:none!important;width:100%!important}
  [data-redesign-page="partners"] form>div[style*="display: flex"]{flex-direction:column!important}

  /* Contact */
  [data-redesign-page="contact"]{min-height:100svh!important}
  [data-redesign-page="contact"] main{padding:120px 24px 72px!important;display:grid!important;grid-template-columns:1fr;gap:64px!important}
  [data-redesign-page="contact"] main>div,[data-redesign-page="contact"] main>form{width:100%!important;max-width:none!important}
  [data-redesign-page="contact"] main>form>div[style*="display: flex"]{flex-direction:column!important}
  [data-redesign-page="contact"] footer{padding:0 24px 36px!important}

  /* Shared vertical routes. */
  .merch-redesign .merch-hero{min-height:0!important;padding:58px 20px 42px!important}
  .merch-redesign #merchHeroTitle{font-size:clamp(44px,14vw,64px)!important}
  .merch-redesign .merch-collection{padding:0 20px 72px!important}
  .merch-redesign .merch-search-control{width:100%;min-width:0!important}
  .merch-redesign .merch-search-control input{width:100%!important}
  .account-redesign .account-section,.admin-redesign #adminAuthGate{min-height:calc(100svh - 64px)!important;padding:72px 20px!important}
  .account-redesign .account-content{padding:48px 20px 72px!important}
  .admin-redesign .admin-app-hero{padding:54px 20px 26px!important}
  .admin-redesign .admin-section>.container{padding-left:20px!important;padding-right:20px!important}
  .auxiliary-redesign #main-content>section{min-height:calc(100svh - 64px);padding:72px 24px!important}
}

@media(max-width:420px){
  .rail-track>section{padding-left:20px!important;padding-right:20px!important}
  .rail-track>section:first-child{padding-left:20px!important;padding-right:20px!important}
  [data-redesign-page="leadership"] .rail-track>section:nth-child(2){grid-template-columns:1fr;gap:58px}
  [data-redesign-page="leadership"] .mem>div:first-child{aspect-ratio:4/4.7}
  [data-redesign-page="home"] .rail-track>section:nth-child(4),[data-redesign-page="placement"] .rail-track>section:nth-child(3){grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media(prefers-reduced-motion:reduce){
  .rail-track{will-change:auto!important}
  .mobile-nav-toggle span,.site-head nav{transition:none!important}
}
