.hero.hero-download-index.office-product-hero-app-refresh.office-demo-hero {
  min-height: 0;
  padding-top: 64px;
  padding-bottom: 0;
}
.office-demo-hero .product-hero-stage { max-width: 1060px; }
.hero.office-demo-hero > .container { width: 100%; }
.office-demo-preview {
  position: relative;
  height: clamp(176px, 21vw, 224px);
  margin: 28px auto 0;
  text-align: left;
}
.office-demo-shell {
  position: relative;
  inset: auto;
  width: 100%;
  height: 100%;
  max-width: none;
  max-height: none;
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  overflow: clip;
  border: 1px solid #adc4df;
  border-bottom: 0;
  border-radius: 7px 7px 0 0;
  background: #f0f0f0;
  box-shadow: 0 0 0 3px rgb(255 255 255 / .25), 0 12px 48px rgb(0 120 212 / .13);
}
.office-demo-frame {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 1319px;
  height: 720px;
  max-width: none;
  border: 0;
  transform: scale(var(--office-demo-scale, .8));
  transform-origin: top left;
  background: #f0f0f0;
  color-scheme: light;
}
.office-demo-expand {
  position: absolute;
  bottom: 14px;
  right: 16px;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 12px;
  border: 1px solid #c1d0e4;
  border-radius: 6px;
  background: rgb(255 255 255 / .95);
  color: #0078d4;
  font-family: inherit;
  font-size: 12px;
  font-weight: 600;
  line-height: 1.3;
  cursor: pointer;
  box-shadow: 0 3px 12px rgb(0 120 212 / .08);
}
.office-demo-expand:hover { background: #fff; border-color: #0078d4; }
.office-demo-expand:focus-visible { outline: 3px solid #0078d4; outline-offset: 3px; }
.office-demo-shell:modal {
  position: fixed;
  inset: 0;
  margin: auto;
  border: 1px solid #adc4df;
  border-radius: 7px;
  box-shadow: 0 24px 80px rgb(0 0 0 / .3);
}
.office-demo-shell::backdrop { background: rgb(17 32 54 / .62); }
html.office-demo-lock { overflow: hidden; }
@media (max-width: 760px) {
  .hero.hero-download-index.office-product-hero-app-refresh.office-demo-hero { padding-top: 40px; }
  .office-demo-preview { height: clamp(108px, 22vw, 176px); margin-top: 24px; }
  .office-demo-expand { bottom: 10px; right: 10px; padding: 7px 10px; font-size: 11px; }
}

/* Download choices on the Word home page. Keep the existing tabs and ARIA. */
#versions.office-demo-download-tabs .download-tabs-nav {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  max-width: 1060px;
  gap: 12px;
  margin: 0 auto 28px;
  padding: 0;
  background: none;
  border: 0;
  border-radius: 0;
  box-shadow: none;
}
#versions.office-demo-download-tabs .download-tab-btn {
  min-width: 0;
  min-height: 82px;
  justify-content: flex-start;
  gap: 12px;
  padding: 15px 18px;
  border: 1px solid #b4c8e3;
  border-radius: 10px;
  background: #fff;
  color: #244771;
  box-shadow: 0 3px 0 #d5e0ef, 0 6px 16px rgb(0 120 212 / .06);
  cursor: pointer;
  transition: background .15s ease, border-color .15s ease, box-shadow .15s ease, transform .15s ease;
}
#versions.office-demo-download-tabs .download-tab-btn::after {
  content: '›';
  margin-left: auto;
  color: #7892b6;
  font-size: 27px;
  font-weight: 400;
  line-height: 1;
}
#versions.office-demo-download-tabs .download-tab-btn:hover {
  transform: translateY(-2px);
  border-color: #0078d4;
  background: #f3f7fd;
  box-shadow: 0 4px 0 #c5d5eb, 0 9px 20px rgb(0 120 212 / .13);
}
#versions.office-demo-download-tabs .download-tab-btn.active {
  border-color: #0067b6;
  background: #0078d4;
  color: #fff;
  box-shadow: 0 3px 0 #004f8c, 0 7px 18px rgb(0 120 212 / .2);
}
#versions.office-demo-download-tabs .download-tab-btn.active:hover {
  background: #0067b6;
  border-color: #004f8c;
}
#versions.office-demo-download-tabs .download-tab-btn:active {
  transform: translateY(1px);
  box-shadow: 0 1px 0 #b7c9e0;
}
#versions.office-demo-download-tabs .download-tab-btn:focus-visible {
  outline: 3px solid #0078d4;
  outline-offset: 4px;
}
#versions.office-demo-download-tabs .download-tab-btn > .material-symbols-outlined {
  flex: 0 0 36px;
  width: 36px;
  height: 36px;
  display: grid;
  place-items: center;
  border-radius: 8px;
  background: #edf3fc;
  color: #0078d4;
  font-size: 24px;
  line-height: 1;
}
#versions.office-demo-download-tabs .download-tab-text {
  gap: 4px;
  text-align: left;
}
#versions.office-demo-download-tabs .download-tab-text strong {
  color: inherit;
  font-size: 15px;
  font-weight: 750;
  line-height: 1.25;
}
#versions.office-demo-download-tabs .download-tab-text small {
  color: #647b98;
  font-size: 11.5px;
  line-height: 1.35;
  white-space: normal;
}
#versions.office-demo-download-tabs .download-tab-btn.active .download-tab-text small {
  color: #e5eeff;
}
#versions.office-demo-download-tabs .download-tab-btn.active > .material-symbols-outlined {
  background: rgb(255 255 255 / .16);
  color: #fff;
}
#versions.office-demo-download-tabs .download-tab-btn.active::after { color: #fff; }
@media (max-width: 640px) {
  #versions.office-demo-download-tabs .download-tabs-nav { grid-template-columns: 1fr; gap: 10px; }
  #versions.office-demo-download-tabs .download-tab-btn { min-height: 70px; padding: 12px 14px; }
}
@media (prefers-reduced-motion: reduce) {
  #versions.office-demo-download-tabs .download-tab-btn { transition: none; }
}

.office-demo-close { position:absolute; z-index:3; right:12px; top:8px; padding:7px 11px; border:1px solid #c1d0e4; border-radius:6px; background:#fff; color:#0078d4; font-family:inherit; font-size:12px; font-weight:600; line-height:1.3; cursor:pointer; }
.office-demo-close[hidden] { display:none; }
.office-demo-close:focus-visible { outline:3px solid #0078d4; outline-offset:2px; }
.office-demo-shell:modal { padding-top:36px; background:#f4f6f8; }
.office-demo-shell:modal .office-demo-frame { top:36px; }
.office-demo-close { top:3px; bottom:auto; box-shadow:0 2px 12px rgb(0 0 0 / .08); }
