/* Homepage composition: retain the established type scale and section padding. */
@media (min-width: 1001px) {
  #dom-ecosystem .dom-ecosystem-layout {
    grid-template-columns: minmax(0,1fr) clamp(150px,14vw,200px);
    gap: 20px 32px;
    align-items: center;
  }
  #dom-ecosystem .dom-ecosystem-layout h2 { grid-column:1; grid-row:1; max-width:none; margin:0; }
  #dom-ecosystem .dom-ecosystem-layout .dom-ecosystem-mark {
    grid-column:2; grid-row:1; width:100%; max-width:200px; aspect-ratio:1; margin:0; align-self:center;
  }
  #dom-ecosystem .dom-ecosystem-layout .dom-family-intro { grid-column:1/-1; grid-row:2; margin:0; max-width:none; }
  #dom-ecosystem .dom-ecosystem-layout .dom-ecosystem-grid { grid-column:1/-1; grid-row:3; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
  #dom-ecosystem .dom-direction-card { display:flex; flex-direction:column; padding:14px 16px; }
  #dom-ecosystem .dom-direction-links { margin-top:auto; }
  #dom-ecosystem .dom-ecosystem-layout .dom-direction-note { grid-column:1/-1; grid-row:4; margin:0; }
  #dom-xr-practice .dom-xr-practice-layout { display:grid; grid-template-columns:minmax(0,1.15fr) minmax(0,1fr); align-items:start; }
  #dom-xr-practice .dom-xr-practice-copy { display:block; }
  #dom-xr-practice .dom-xr-practice-heading { margin:30px 0 20px; text-align:left; }
  #dom-xr-practice .dom-xr-practice-heading .dom-section-subtitle { padding:0; border:0; margin:0 0 14px; }
  #dom-xr-practice .dom-xr-practice-heading>p:last-child { text-wrap:pretty; }
  #dom-xr-practice .dom-xr-practice-path { grid-template-columns:1fr; gap:18px; }
  #dom-xr-practice .dom-xr-practice-actions { justify-content:flex-start; margin-top:20px; }
  #dom-xr-practice .dom-xr-stage-note { text-align:left; }
  #dom-campus .dom-campus-layout { grid-template-columns:minmax(0,1fr) auto; gap:32px; align-items:start; }
  #dom-campus .dom-campus-path { grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px 24px; }
  #dom-campus .dom-campus-photo {
    --campus-height:clamp(540px,calc(100svh - 70px - 2 * var(--dom-section-space)),760px);
    height:var(--campus-height); width:calc(var(--campus-height) * 693 / 1536);
    min-height:0; max-height:none; align-self:center;
  }
  #dom-campus .dom-campus-photo img { inset:0 0 0 auto; height:100%; width:auto; max-width:none; object-fit:contain; object-position:right center; }
  #dom-campus .dom-campus-copy>.dom-family-intro { margin-bottom:20px; }
  #dom-campus .dom-campus-facilities { margin-top:18px; padding-top:14px; }
  #dom-campus .dom-family-status { margin:12px 0; }
  #dom-education-research .dom-family-intro { max-width:none; margin-bottom:18px; }
  #dom-education-research .dom-learning-products { gap:24px; margin-top:18px; }
  #dom-education-research .dom-learning-products>article { display:flex; flex-direction:column; padding:20px; }
  #dom-education-research .dom-learning-products h3 { margin-bottom:12px; }
  #dom-education-research .dom-learning-products p { margin-bottom:12px; }
  #dom-education-research .dom-learning-flow { gap:12px; margin:12px 0; }
  #dom-education-research .dom-learning-flow li { padding:10px 0; }
  #dom-education-research .dom-learning-products .btn { align-self:flex-start; margin-top:auto; }
  #dom-education-research .dom-family-status { margin:16px 0 0; }
}
#dom-xr-practice .dom-xr-identity h2 { font-size:var(--dom-title); line-height:1.2; letter-spacing:-.04em; font-weight:500; margin:0 0 14px; }
#dom-xr-practice .dom-xr-identity .dom-family-label { margin:0 0 20px; }
#dom-xr-practice .dom-xr-together { text-align:left; margin:0 0 22px; padding:0; border:0; }
#dom-xr-practice .dom-xr-concept { position:static; margin:0; }
#dom-xr-practice .dom-xr-together p { margin:0; }
/* Reinstate an unmistakable, slow halo on the current interactive step. */
#dom-xr-neuromap [data-step-panel] .guide-current {
  outline:0; border-color:#a9f7c7; border-radius:12px;
  background:rgba(80,177,116,.10);
  animation:dom-active-step 2.6s ease-in-out infinite!important;
}
#dom-xr-neuromap [data-step-panel] .guide-current::before {
  animation:dom-active-halo 2.6s ease-in-out infinite;
  opacity:1; border:2px solid #b5ffd0; background:rgba(87,198,128,.08);
  box-shadow:0 0 20px 5px #7be8a866,inset 0 0 18px #70eea338;
}
@keyframes dom-active-step {
  0%,100% { box-shadow:0 0 14px 2px #7be8a84d,inset 0 0 12px #70eea319; }
  50% { box-shadow:0 0 30px 6px #7be8a88c,inset 0 0 24px #70eea33d; }
}
@keyframes dom-active-halo { 0%,100% { opacity:.45; } 50% { opacity:1; } }
#dom-collaborate .cta-video-wrap { border:1px solid #b0f7c8; animation:dom-invitation-halo 3.4s ease-in-out infinite; }
@keyframes dom-invitation-halo {
  0%,100% { border-color:#a9f4c28c; box-shadow:0 0 16px 2px #70dca34d,inset 0 0 18px #70dca31f; }
  50% { border-color:#c9ffdd; box-shadow:0 0 32px 7px #70dca38c,0 0 72px #70dca347,inset 0 0 30px #70dca338; }
}
@media (max-width:1000px) {
  #dom-xr-practice .dom-xr-practice-copy { margin-top:28px; }
  #dom-campus .dom-campus-photo img { object-position:right center; }
}
@media (prefers-reduced-motion:reduce) {
  #dom-xr-neuromap [data-step-panel] .guide-current,
  #dom-xr-neuromap [data-step-panel] .guide-current::before,
  #dom-collaborate .cta-video-wrap { animation:none!important; }
  #dom-xr-neuromap [data-step-panel] .guide-current::before { opacity:.75; }
  #dom-collaborate .cta-video-wrap { box-shadow:0 0 28px #70dca366; }
}
/* Spend width before height; tighten only spacing inside the compositions. */
@media (min-width:1001px) {
  #dom-ecosystem .dom-ecosystem-layout { grid-template-columns:minmax(0,1fr) 180px; gap:12px 32px; }
  #dom-ecosystem .dom-ecosystem-layout .dom-ecosystem-mark { max-width:180px; }
  #dom-ecosystem .dom-direction-card { padding:12px 16px; }
  #dom-ecosystem .dom-direction-card h3 { margin-bottom:8px; }
  #dom-ecosystem .dom-direction-card p { line-height:1.45; margin-bottom:10px; }
  #dom-ecosystem .dom-ecosystem-layout .dom-family-intro { line-height:1.5; }
  #dom-xr-practice .dom-xr-identity { display:grid; grid-template-columns:auto minmax(0,1fr); column-gap:20px; align-items:baseline; margin-bottom:18px; }
  #dom-xr-practice .dom-xr-identity .eyebrow { grid-column:1/-1; margin-bottom:10px; }
  #dom-xr-practice .dom-xr-identity h2,#dom-xr-practice .dom-xr-identity .dom-family-label { margin:0; }
  #dom-xr-practice .dom-xr-concept { width:100%; max-width:100%; margin:0; }
  #dom-xr-practice .dom-xr-visual-column { min-width:0; }
  #dom-xr-practice .dom-xr-together { margin-bottom:18px; }
  #dom-xr-practice .dom-xr-together p,#dom-xr-practice .dom-xr-practice-path p,#dom-xr-practice .dom-xr-practice-heading>p:last-child { line-height:1.45; }
  #dom-xr-practice .dom-xr-practice-heading { margin-bottom:14px; }
  #dom-xr-practice .dom-xr-practice-heading .dom-section-subtitle { line-height:1.25; margin-bottom:12px; }
  #dom-xr-practice .dom-xr-practice-path { gap:12px; }
  #dom-xr-practice .dom-xr-practice-path h3 { margin-bottom:4px; }
  #dom-xr-practice .dom-xr-practice-actions { margin-top:12px; }
  #dom-xr-practice .dom-xr-stage-note { margin-top:10px; }
  #dom-campus .dom-campus-layout { row-gap:18px; }
  #dom-campus .dom-campus-heading { grid-column:1/-1; }
  #dom-campus .dom-campus-heading h2 { margin-bottom:12px; }
  #dom-campus .dom-campus-heading .dom-section-subtitle { max-width:none; margin-bottom:12px; }
  #dom-campus .dom-campus-heading .dom-family-intro { max-width:none; margin:0; line-height:1.5; }
  #dom-campus .dom-campus-photo { --campus-height:clamp(400px,calc(100svh - 70px - 2 * var(--dom-section-space) - 220px),650px); align-self:start; }
  #dom-campus .dom-campus-path { gap:14px 24px; }
  #dom-campus .dom-campus-path p,#dom-campus .dom-campus-facilities { line-height:1.45; }
  #dom-campus .dom-campus-path h3 { line-height:1.3; margin-bottom:6px; }
  #dom-campus .dom-campus-facilities { margin-top:14px; padding-top:12px; }
  #dom-campus .dom-family-status { margin:10px 0; }
  #dom-education-research h2 { margin-bottom:12px; }
  #dom-education-research .dom-section-subtitle { margin-bottom:12px; }
  #dom-education-research .dom-family-intro { line-height:1.45; margin-bottom:12px; }
  #dom-education-research .dom-learning-products { margin-top:12px; }
  #dom-education-research .dom-learning-products>article { padding:16px 20px; }
  #dom-education-research .dom-learning-products p { line-height:1.45; margin-bottom:10px; }
  #dom-education-research .dom-learning-flow { margin:8px 0; }
  #dom-education-research .dom-learning-flow li { padding:6px 0; }
  #dom-education-research .dom-family-status { margin-top:12px; }
}
@media (min-width:1001px) {
  #dom-ecosystem .dom-ecosystem-layout { gap:8px 32px; }
  #dom-ecosystem .dom-ecosystem-layout h2 { line-height:1.12; }
  #dom-ecosystem .dom-direction-card p { line-height:1.4; margin-bottom:8px; }
  #dom-xr-practice .dom-xr-identity { margin-bottom:10px; }
  #dom-xr-practice .dom-xr-together { margin-bottom:12px; }
  #dom-xr-practice .dom-xr-together h3 { line-height:1.25; margin-bottom:8px; }
  #dom-xr-practice .dom-xr-together p { line-height:1.4; }
  #dom-xr-practice #dom-xr-scene { position:relative; }
  #dom-xr-practice #dom-xr-scene .dr-caption,
  #dom-xr-practice #dom-xr-scene .dr-note {
    position:absolute; left:8px; right:8px; z-index:2; margin:0; padding:5px 8px;
    width:fit-content; max-width:calc(100% - 16px); pointer-events:none;
    border-radius:6px; background:rgba(2,12,8,.72);
  }
  #dom-xr-practice #dom-xr-scene .dr-caption { top:6px; }
  #dom-xr-practice #dom-xr-scene .dr-note { bottom:6px; }
  #dom-campus .dom-campus-heading .dom-family-brand { margin-bottom:8px; }
  #dom-campus .dom-campus-heading h2 { margin-bottom:10px; }
  #dom-campus .dom-campus-heading .dom-section-subtitle { line-height:1.2; margin-bottom:10px; }
  #dom-campus .dom-campus-layout { row-gap:14px; }
  #dom-campus .dom-campus-path { gap:10px 24px; }
  #dom-campus .dom-campus-path p { line-height:1.4; }
  #dom-campus .dom-campus-path h3 { margin-bottom:4px; }
  #dom-campus .dom-campus-facilities { max-width:none; }
  #dom-campus .dom-campus-bottom { display:flex; align-items:center; gap:24px; margin-top:14px; }
  #dom-campus .dom-campus-bottom .dom-family-status { flex:1; min-width:0; max-width:none; margin:0; }
  #dom-campus .dom-campus-bottom .btn { flex:none; }
}
@media (min-width:1001px) {
  #dom-ecosystem .dom-ecosystem-layout { grid-template-columns:minmax(0,1fr) 168px; }
  #dom-ecosystem .dom-ecosystem-layout .dom-ecosystem-mark { max-width:168px; }
  #dom-ecosystem .dom-direction-card { padding-block:10px; }
  #dom-campus .dom-campus-heading .dom-family-brand { margin-bottom:6px; }
  #dom-campus .dom-campus-heading h2 { margin-bottom:8px; }
  #dom-campus .dom-campus-heading .dom-section-subtitle { line-height:1.15; margin-bottom:8px; }
  #dom-campus .dom-campus-layout { row-gap:12px; }
  #dom-campus .dom-campus-path { row-gap:8px; }
  #dom-campus .dom-campus-path h3 { margin-bottom:2px; }
  #dom-campus .dom-campus-facilities { margin-top:12px; padding-top:10px; }
  #dom-campus .dom-campus-bottom { margin-top:12px; }
}
@media (max-width:1000px) {
  #dom-campus .dom-campus-layout { grid-template-columns:1fr; }
  #dom-campus .dom-campus-heading { grid-column:1/-1; }
  #dom-campus .dom-campus-photo { width:min(100%,380px); margin:24px auto 0; aspect-ratio:693/1536; min-height:0; max-height:650px; }
  #dom-campus .dom-campus-photo img { inset:0 0 0 auto; height:100%; width:auto; max-width:none; object-fit:contain; }
  #dom-campus .dom-campus-bottom { margin-top:16px; }
}
@media (min-width:1001px) {
  #dom-ecosystem .dom-ecosystem-layout h2 { line-height:1.1; }
  #dom-ecosystem .dom-direction-card { padding:8px 12px; }
  #dom-xr-practice .dom-xr-concept { max-width:650px; }
  #dom-campus .dom-campus-layout { row-gap:10px; }
  #dom-campus .dom-campus-path { grid-template-columns:repeat(2,minmax(0,1fr)); gap:6px 24px; }
  #dom-campus .dom-campus-path article { grid-template-columns:20px minmax(0,1fr); column-gap:10px; }
  #dom-campus .dom-campus-path p { line-height:1.35; }
  #dom-campus .dom-campus-facilities { margin-top:10px; padding-top:8px; }
  #dom-education-research .dom-learning-flow li { padding-block:5px; }
}
@media (min-width:1001px) {
  #dom-campus .dom-campus-photo { --campus-height:clamp(400px,calc(100svh - 70px - 2 * var(--dom-section-space) - 245px),650px); }
}
@media (min-width:1001px) {
  #dom-xr-practice .dom-xr-identity { row-gap:0; }
  #dom-xr-practice .dom-xr-identity .eyebrow { margin:0 0 10px; }
  #dom-xr-practice .dom-xr-practice-heading { margin-top:28px; }
}
@media (max-width:1000px) {
  #dom-ecosystem .dom-ecosystem-layout { grid-template-columns:minmax(0,1fr) clamp(90px,14vw,140px); gap:20px; }
  #dom-ecosystem .dom-ecosystem-layout>div:first-child { display:contents; }
  #dom-ecosystem .dom-ecosystem-layout h2 { grid-column:1; grid-row:1; margin:0; }
  #dom-ecosystem .dom-ecosystem-layout .dom-ecosystem-mark { grid-column:2; grid-row:1; width:100%; max-width:140px!important; margin:0; align-self:center; }
  #dom-ecosystem .dom-ecosystem-layout .dom-family-intro { grid-column:1/-1; grid-row:2; margin:0; }
  #dom-ecosystem .dom-ecosystem-layout .dom-ecosystem-grid { grid-column:1/-1; grid-row:3; grid-template-columns:repeat(2,minmax(0,1fr)); }
  #dom-ecosystem .dom-ecosystem-layout .dom-direction-note { grid-column:1/-1; grid-row:4; margin:0; }
  #dom-campus .dom-campus-photo { width:min(100%,293px); height:auto; aspect-ratio:693/1536; max-height:none; }
}
@media (max-width:600px) {
  #dom-ecosystem .dom-ecosystem-layout .dom-ecosystem-grid { grid-template-columns:1fr; }
}
@media (max-width:1000px) {
  #dom-campus .dom-campus-bottom .btn { max-width:100%; white-space:normal; text-align:center; }
}
