/* University source identity. The catalogue and site shell keep their styles. */
.practice-detail[data-source-identity="universities"]{
  --university-pad-x:32px;
  --university-pad-y:30px;
  container-name:university-card;
  container-type:inline-size;
  background:#fff;
  isolation:isolate;
}
.practice-detail[data-source-identity="universities"]::before{
  background:linear-gradient(90deg,#ff5d00 0%,#ff5d00 27%,#550577 27%,#550577 100%);
  z-index:3;
}
.practice-detail[data-source-identity="universities"] :is(.top,.practice-reading-header).university-hero{
  position:relative;
  isolation:isolate;
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,.95fr);
  grid-template-rows:auto auto;
  align-items:start;
  column-gap:32px;
  row-gap:18px;
  padding-bottom:var(--university-pad-y);
  margin-bottom:24px;
}
.practice-detail[data-source-identity="universities"] :is(.top,.practice-reading-header).university-hero::before{
  content:"";
  position:absolute;
  inset:calc(-1 * var(--university-pad-y)) calc(-1 * var(--university-pad-x)) 0;
  z-index:-1;
  pointer-events:none;
  background:linear-gradient(110deg,#fff 0%,#fbf8fd 44%,#f3ecf7 100%);
  border-bottom:1px solid #e7e1ee;
}
.practice-detail[data-source-identity="universities"] .top.university-hero>.university-hero-copy{
  grid-column:1;
  grid-row:1;
  width:100%;
  min-width:0;
}
.practice-detail[data-source-identity="universities"] .top.university-hero>.university-hero-actions{
  grid-column:1;
  grid-row:2;
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-start;
  align-items:flex-start;
  gap:8px;
  min-width:0;
}
.practice-detail[data-source-identity="universities"] .university-brand{
  display:block;
  min-width:0;
  margin:0 0 20px;
}
.practice-detail[data-source-identity="universities"] .university-brand-copy{
  min-width:0;
}
.practice-detail[data-source-identity="universities"] .university-logo{
  display:block;
  width:196px;
  max-width:100%;
  height:auto;
  aspect-ratio:4086 / 1436;
  object-fit:contain;
  object-position:left center;
  margin:0;
}
.practice-detail[data-source-identity="universities"] .university-brand-caption{
  display:block;
  margin-top:13px;
  color:#550577;
  font-size:12px;
  font-weight:500;
  line-height:1.5;
  letter-spacing:.04em;
}
.practice-detail[data-source-identity="universities"] :is(.top,.practice-reading-header).university-hero>.university-campus{
  grid-column:2;
  grid-row:1 / span 2;
  align-self:center;
  justify-self:center;
  display:block;
  width:100%;
  max-width:560px;
  height:auto;
  aspect-ratio:700 / 320;
  margin:0;
  pointer-events:none;
  user-select:none;
}
.practice-detail[data-source-identity="universities"] :is(.top,.practice-reading-header).university-hero h2{
  min-width:0;
  max-width:none;
  margin:0;
  color:#550577;
  font-size:var(--university-title-size,23px)!important;
  line-height:1.28;
  white-space:normal;
  overflow-wrap:break-word;
  overflow:visible;
  text-overflow:clip;
  -webkit-line-clamp:unset;
}
.practice-detail[data-source-identity="universities"] :is(.top,.practice-reading-header).university-hero .meta{
  min-width:0;
  margin:12px 0 0;
  overflow-wrap:anywhere;
}
.practice-detail[data-source-identity="universities"] .practice-reading-header.university-hero{
  grid-template-rows:auto auto auto;
}
.practice-detail[data-source-identity="universities"] .practice-reading-header.university-hero>.university-brand{
  grid-column:1;
  grid-row:1;
  margin:0;
}
.practice-detail[data-source-identity="universities"] .practice-reading-header.university-hero>h2{
  grid-column:1;
  grid-row:2;
}
.practice-detail[data-source-identity="universities"] .practice-reading-header.university-hero>.meta{
  grid-column:1;
  grid-row:3;
  margin:0;
}
.practice-detail[data-source-identity="universities"] .practice-reading-header.university-hero>.university-campus{
  grid-row:1 / span 3;
}
@container university-card (max-width:720px){
  .practice-detail[data-source-identity="universities"] :is(.top,.practice-reading-header).university-hero{
    grid-template-columns:minmax(0,1fr);
    grid-template-rows:auto auto auto;
    row-gap:20px;
  }
  .practice-detail[data-source-identity="universities"] .top.university-hero>.university-hero-copy{
    grid-column:1;
    grid-row:1;
  }
  .practice-detail[data-source-identity="universities"] .top.university-hero>.university-campus{
    grid-column:1;
    grid-row:2;
    width:100%;
    max-width:480px;
  }
  .practice-detail[data-source-identity="universities"] .top.university-hero>.university-hero-actions{
    grid-column:1;
    grid-row:3;
  }
  .practice-detail[data-source-identity="universities"] .practice-reading-header.university-hero{
    grid-template-rows:auto auto auto auto;
  }
  .practice-detail[data-source-identity="universities"] .practice-reading-header.university-hero>.university-campus{
    grid-column:1;
    grid-row:4;
    width:100%;
    max-width:480px;
  }
  .practice-detail[data-source-identity="universities"] .university-logo{
    width:180px;
  }
}
@media(max-width:560px){
  .practice-detail[data-source-identity="universities"]{
    --university-pad-x:18px;
    --university-pad-y:22px;
  }
}
@media print{
  body:has(.practice-detail[data-source-identity="universities"]) .dt-helper{
    display:none!important;
  }
  .practice-detail[data-source-identity="universities"]{
    container-type:normal;
    max-height:none!important;
    overflow:visible!important;
    break-inside:auto;
  }
  .practice-detail[data-source-identity="universities"] :is(.top,.practice-reading-header).university-hero{
    display:block;
    padding:0 0 16px;
    margin:0 0 20px;
    break-inside:avoid;
  }
  .practice-detail[data-source-identity="universities"] :is(.top,.practice-reading-header).university-hero::before{
    inset:0;
    background:#fff!important;
    border-color:#aaa!important;
  }
  .practice-detail[data-source-identity="universities"] .university-brand{
    margin:0 0 16px!important;
  }
  .practice-detail[data-source-identity="universities"] .university-logo{
    width:50mm;
    max-width:100%;
  }
  .practice-detail[data-source-identity="universities"] :is(.top,.practice-reading-header).university-hero>.university-campus,
  .practice-detail[data-source-identity="universities"] .top.university-hero>.university-hero-actions{
    display:none!important;
  }
  .practice-detail[data-source-identity="universities"] :is(.top,.practice-reading-header).university-hero h2{
    color:#000!important;
    font-size:18pt!important;
    max-height:none!important;
    overflow:visible!important;
  }
  .practice-detail[data-source-identity="universities"] .university-brand-caption,
  .practice-detail[data-source-identity="universities"] :is(.top,.practice-reading-header).university-hero .meta{
    color:#000!important;
  }
  .practice-detail[data-source-identity="universities"] .practice-reading-header.university-hero>.meta{
    margin-top:12px;
  }
}

/* The scene occupies the original image cell; motion never changes layout. */
.practice-detail[data-source-identity="universities"] .university-campus{
  box-sizing:border-box;
  padding:18px;
  object-fit:contain;
}
.practice-detail[data-source-identity="universities"] .university-campus-stage{
  position:relative;
  overflow:hidden;
  contain:layout paint;
}
.practice-detail[data-source-identity="universities"] .university-campus-stage>svg{
  display:block;
  width:100%;
  height:100%;
  overflow:visible;
}
@media print{
  body:has(.practice-detail[data-source-identity="universities"]) #toast{display:none!important}
}
