.page-demo main{
  display:flex;
  flex-direction:column;
}

.page-demo .editorial-page-header{order:1}
.page-demo .luminous-showcase{order:2}
.page-demo .process{order:3}
.page-demo .demo-closing{order:4}

.demo-image-open{
  position:relative;
  display:block;
  width:100%;
  padding:0;
  border:0;
  background:transparent;
  color:#fff;
  cursor:zoom-in;
  overflow:hidden;
  text-align:inherit;
}

.demo-image-open img{
  display:block;
  width:100%;
  height:auto;
  transition:transform .35s ease,filter .35s ease;
}

.portal-image-preview{height:clamp(280px,30vw,390px);background:#f5efe4}
.portal-image-preview img{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover;transition:transform .45s ease,filter .35s ease;transform:scale(1.92)!important}
.portal-image-preview[data-active-portal="owner"] img{transform-origin:70% 27%}
.portal-image-preview[data-active-portal="manager"] img{transform-origin:28% 78%}
.portal-image-preview[data-active-portal="newhire"] img{transform-origin:76% 78%}
.portal-image-preview:hover img,.portal-image-preview:focus-visible img{transform:scale(1.96)!important;filter:brightness(1.03)}
.portal-image-preview[data-active-portal="owner"] img{object-fit:contain;transform:scale(1)!important;transform-origin:center}
.portal-image-preview[data-active-portal="owner"]:hover img,.portal-image-preview[data-active-portal="owner"]:focus-visible img{transform:scale(1.015)!important}

.portal-concept-disclaimer{margin:.7rem 0 0;padding:.72rem .85rem;border-left:2px solid rgba(239,200,108,.72);background:rgba(239,200,108,.06);color:rgba(235,237,247,.76);font-size:.76rem;line-height:1.5}
.portal-concept-disclaimer strong{color:#efc86c}

.demo-image-open span{
  position:absolute;
  right:16px;
  bottom:16px;
  padding:.55rem .8rem;
  border:1px solid rgba(255,255,255,.42);
  border-radius:999px;
  background:rgba(5,10,31,.82);
  color:#fff4ca;
  font-size:.78rem;
  font-weight:800;
  letter-spacing:.04em;
  backdrop-filter:blur(10px);
}

.demo-image-open:hover img,
.demo-image-open:focus-visible img{
  transform:scale(1.015);
  filter:brightness(1.04);
}

.portal-explorer{
  margin-top:24px;
  padding-top:22px;
  border-top:1px solid rgba(239,200,108,.2);
}

.portal-tabs{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
}

.portal-tab{
  min-height:42px;
  padding:.65rem .9rem;
  border:1px solid rgba(239,200,108,.25);
  border-radius:8px 8px 0 0;
  background:rgba(255,255,255,.035);
  color:rgba(239,242,252,.76);
  font:inherit;
  font-weight:800;
  cursor:pointer;
}

.portal-tab:hover,
.portal-tab:focus-visible,
.portal-tab.is-active{
  color:#07122d;
  background:linear-gradient(135deg,#f2c85f,#ffe7a1);
  border-color:#f2cf73;
}

.portal-panel{
  min-height:430px;
  padding:22px;
  border:1px solid rgba(239,200,108,.25);
  border-radius:0 14px 14px 14px;
  background:linear-gradient(145deg,rgba(28,50,93,.62),rgba(10,25,57,.68));
}

.luminous-showcase-grid{align-items:stretch}
.luminous-showcase-card{display:flex!important;flex-direction:column!important;height:100%}
.luminous-showcase-card>div{display:flex;flex:1;flex-direction:column}
.physical-explorer{margin-top:24px;padding-top:22px;border-top:1px solid rgba(239,200,108,.2)}
.experience-detail-label{margin:0 0 12px!important;color:#f2cb6d!important;font-size:.72rem!important;font-weight:800;letter-spacing:.14em;text-transform:uppercase}
.physical-resource-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.physical-resource-grid article{display:grid;align-content:start;gap:7px;min-height:154px;padding:16px;border:1px solid rgba(239,200,108,.2);border-radius:13px;background:linear-gradient(145deg,rgba(28,50,93,.5),rgba(10,25,57,.58))}
.physical-resource-grid strong{color:#fff3c5;font-family:Georgia,serif;font-size:1.04rem}
.physical-resource-grid span{color:rgba(239,242,252,.8);font-size:.86rem;line-height:1.5}
.physical-resource-grid small{margin-top:auto;padding-top:8px;border-top:1px solid rgba(239,200,108,.14);color:rgba(239,200,108,.76);font-size:.69rem;line-height:1.45}
.experience-connection-note{margin:14px 0 0!important;padding:14px 16px;border-left:2px solid #f2cb6d;background:rgba(239,200,108,.055);color:rgba(239,242,252,.76)!important;font-size:.82rem!important;line-height:1.55!important}
.experience-connection-note strong{color:#fff3c5}

.portal-panel>strong{
  display:block;
  color:#fff3c5;
  font-family:Georgia,serif;
  font-size:1.28rem;
}

.portal-panel>p{
  margin:.55rem 0 .85rem!important;
  color:rgba(239,242,252,.82)!important;
  line-height:1.55;
}

.portal-panel ul{
  margin:0;
  padding:0;
  list-style:none;
}

.portal-panel li{
  position:relative;
  margin:.42rem 0;
  padding-left:1rem;
  color:rgba(239,242,252,.78);
}

.portal-panel li::before{
  content:"✦";
  position:absolute;
  left:0;
  color:#f2cb6d;
  font-size:.62rem;
  top:.28rem;
}

.portal-value{margin-top:16px;padding:14px 16px;border-left:2px solid #f2cb6d;background:rgba(239,200,108,.055)}
.portal-value span{display:block;margin-bottom:5px;color:#f2cb6d;font-size:.68rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.portal-value p{margin:0!important;color:rgba(239,242,252,.82)!important;font-size:.84rem!important;line-height:1.5!important}
.portal-trainer-note{margin:14px 0 0!important;color:rgba(239,242,252,.68)!important;font-size:.78rem!important;line-height:1.5!important}
.portal-trainer-note strong{color:#fff3c5}

.demo-scope-note{
  max-width:900px;
  margin:34px auto 0;
  padding:22px 0 0;
  border-top:1px solid rgba(239,200,108,.24);
  color:rgba(231,235,247,.75);
  text-align:center;
  line-height:1.65;
}

.demo-scope-note strong{
  color:#f4d98f;
}

.demo-preview-explainer{
  max-width:700px!important;
  margin:24px auto 0!important;
  padding:20px 22px;
  border-left:2px solid #f1cc70;
  background:rgba(239,200,108,.065);
  text-align:left;
  font-size:1rem!important;
}

.demo-preview-explainer strong{
  color:#fff2bd;
}

.demo-credibility-line{
  margin:24px auto 0!important;
  color:rgba(234,238,250,.72)!important;
  font-size:.94rem!important;
  letter-spacing:.01em;
}

.demo-lightbox{
  width:min(94vw,1400px);
  max-width:none;
  max-height:92vh;
  padding:0;
  border:1px solid rgba(239,200,108,.38);
  border-radius:20px;
  background:#071127;
  color:#fff;
  box-shadow:0 40px 120px rgba(0,0,0,.7);
  cursor:default!important;
  overflow:hidden;
}

.demo-lightbox::backdrop{
  background:rgba(1,4,16,.88);
  backdrop-filter:blur(8px);
}

.demo-lightbox-shell{
  display:flex;
  max-height:92vh;
  flex-direction:column;
  overflow:hidden;
  cursor:default!important;
}

.demo-lightbox-bar{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  padding:14px 18px;
  border-bottom:1px solid rgba(239,200,108,.2);
  position:relative;
  z-index:20;
  background:#071127;
  cursor:default!important;
}

.demo-lightbox-close{
  padding:.55rem .8rem;
  border:1px solid rgba(255,255,255,.24);
  border-radius:999px;
  background:rgba(255,255,255,.06);
  color:#fff;
  font:inherit;
  cursor:pointer;
  position:relative;
  z-index:30;
  pointer-events:auto!important;
  cursor:pointer!important;
}

.demo-lightbox-close:hover,.demo-lightbox-close:focus-visible{color:#07122d;background:#f2cb6d;border-color:#f2cb6d;outline:2px solid rgba(255,255,255,.85);outline-offset:2px}

.demo-lightbox img{
  display:block;
  width:100%;
  height:auto;
  max-height:calc(92vh - 60px);
  object-fit:contain;
  background:#f5efe4;
  cursor:default!important;
}

.demo-lightbox[data-portal-crop]:not([data-portal-crop=""]) img{width:100%;height:calc(92vh - 60px);max-width:none;max-height:none;object-fit:cover;transform:scale(1.92)}
.demo-lightbox[data-portal-crop="owner"] img{transform-origin:70% 27%}
.demo-lightbox[data-portal-crop="manager"] img{transform-origin:28% 78%}
.demo-lightbox[data-portal-crop="newhire"] img{transform-origin:76% 78%}
.demo-lightbox[data-portal-crop="owner"] img{height:calc(92vh - 60px);object-fit:contain;transform:scale(1);transform-origin:center}
.demo-lightbox[open],.demo-lightbox[open] *{cursor:auto!important}.demo-lightbox[open] .demo-lightbox-close{cursor:pointer!important}

@media(max-width:760px){
  .portal-tabs{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
  }

  .portal-tab{
    padding:.6rem .35rem;
    font-size:.82rem;
  }

  .portal-panel{
    min-height:0;
    padding:18px;
  }

  .physical-resource-grid{grid-template-columns:1fr}
  .physical-resource-grid article{min-height:0}

  .portal-image-preview{height:260px}

  .demo-image-open span{
    right:10px;
    bottom:10px;
  }
}

/* v482: keep portal controls, preview, and details in one interaction. */
.portal-showcase-card{grid-column:1/-1!important;display:block!important}
.portal-showcase-intro{max-width:850px}
.portal-showcase-card .portal-explorer{margin-top:20px;padding-top:20px}
.portal-showcase-card .portal-tabs{position:relative;z-index:2;width:100%;margin-bottom:14px;padding:7px;border:1px solid rgba(239,200,108,.22);border-radius:14px;background:rgba(6,10,30,.72)}
.portal-showcase-card .portal-tab{flex:1;border-radius:9px;min-height:44px}
.portal-workspace{display:grid;grid-template-columns:minmax(0,1.18fr) minmax(320px,.82fr);gap:18px;align-items:stretch}
.portal-visual{min-width:0;margin:0;display:flex;flex-direction:column}
.portal-showcase-card .portal-image-preview{height:clamp(330px,34vw,500px);border:1px solid rgba(255,255,255,.12);border-radius:16px}
.portal-showcase-card .portal-panel{min-height:0;height:100%;box-sizing:border-box}
.portal-showcase-card .portal-concept-disclaimer{margin-top:8px}

@media(max-width:900px){
  .portal-workspace{grid-template-columns:1fr}
  .portal-showcase-card .portal-image-preview{height:auto;aspect-ratio:16/9}
  .portal-showcase-card .portal-panel{height:auto}
}

@media(max-width:760px){
  .portal-showcase-card .portal-tabs{position:sticky;top:74px;box-shadow:0 12px 28px rgba(0,0,0,.28)}
  .portal-showcase-card .portal-tab{min-width:0}
  .portal-workspace{gap:12px}
}

/* v483: balanced explorer layouts for portals and physical guides. */
.portal-showcase-card>div,.manual-showcase-card>div{display:block!important;flex:none!important;box-sizing:border-box}
.portal-showcase-card .portal-showcase-intro,.manual-showcase-card .manual-showcase-intro{padding:1.6rem .25rem .4rem}
.portal-showcase-card .portal-explorer,.manual-showcase-card .manual-explorer{padding:20px 0 0!important}
.portal-showcase-card .portal-tabs,.manual-showcase-card .manual-tabs{box-sizing:border-box}
.portal-workspace{width:100%;min-width:0;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.portal-visual{aspect-ratio:auto!important;overflow:visible!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}
.portal-showcase-card .portal-image-preview{width:100%;max-width:100%;box-sizing:border-box;overflow:hidden}
.portal-showcase-card .portal-panel{min-width:0;overflow:hidden;overflow-wrap:anywhere}

.manual-showcase-card{grid-column:1/-1!important;display:block!important}
.manual-showcase-intro{max-width:850px}
.manual-tabs{position:relative;z-index:2;display:flex;width:100%;margin-bottom:14px;padding:7px;border:1px solid rgba(239,200,108,.22);border-radius:14px;background:rgba(6,10,30,.72)}
.manual-tab{flex:1;min-height:44px;padding:.65rem .7rem;border:1px solid rgba(239,200,108,.25);border-radius:9px;background:rgba(255,255,255,.035);color:rgba(239,242,252,.76);font:inherit;font-weight:800;cursor:pointer}
.manual-tab+.manual-tab{margin-left:8px}
.manual-tab:hover,.manual-tab:focus-visible,.manual-tab.is-active{color:#07122d;background:linear-gradient(135deg,#f2c85f,#ffe7a1);border-color:#f2cf73}
.manual-workspace{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px;align-items:stretch;width:100%;min-width:0}
.manual-visual{min-width:0;margin:0;overflow:hidden;border-radius:16px;background:#080b1b;box-shadow:0 22px 60px rgba(0,0,0,.25)}
.manual-visual .demo-image-open{height:100%}
.manual-visual img{width:100%;height:100%;object-fit:cover}
.manual-panel{min-width:0;padding:22px;border:1px solid rgba(239,200,108,.24);border-radius:16px;background:linear-gradient(145deg,rgba(25,46,86,.72),rgba(8,21,50,.82));overflow-wrap:anywhere}
.manual-panel>strong{display:block;color:#fff3c5;font-family:Georgia,serif;font-size:1.35rem;line-height:1.2}
.manual-panel>p{margin:.55rem 0 .85rem;color:rgba(239,242,252,.82);line-height:1.58}
.manual-panel ul{margin:0;padding:0;list-style:none}
.manual-panel li{position:relative;margin:.45rem 0;padding-left:1.1rem;color:rgba(239,242,252,.85);line-height:1.45}
.manual-panel li::before{content:"✦";position:absolute;left:0;top:.15rem;color:#efc86c;font-size:.65rem}
.manual-value{margin-top:18px;padding:15px;border-left:2px solid #efc86c;background:rgba(255,255,255,.04)}
.manual-value span{display:block;margin-bottom:5px;color:#efc86c;font-size:.68rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}
.manual-value p{margin:0;color:rgba(239,242,252,.82);line-height:1.5}

@media(max-width:900px){
  .portal-workspace,.manual-workspace{grid-template-columns:1fr}
  .manual-visual{aspect-ratio:16/10}
}

@media(max-width:760px){
  .manual-tabs{position:sticky;top:74px;display:grid;grid-template-columns:1fr 1fr;gap:7px;box-shadow:0 12px 28px rgba(0,0,0,.28)}
  .manual-tab+.manual-tab{margin-left:0}
  .manual-workspace{gap:12px}
}

/* v484: prevent tall document and portal content from crossing grid rows. */
.luminous-showcase-grid{grid-auto-rows:max-content!important;align-items:start!important}
.portal-showcase-card,.manual-showcase-card{height:auto!important;min-height:0!important;align-self:start!important;overflow:visible!important;isolation:isolate}
.portal-showcase-card{margin-top:8px}
.manual-showcase-card{margin-bottom:8px}
.portal-workspace,.manual-workspace{box-sizing:border-box;align-items:start}
.portal-visual,.manual-visual,.portal-panel,.manual-panel{box-sizing:border-box;max-width:100%;min-height:0}
.portal-panel,.manual-panel{position:relative;z-index:1;overflow:visible}
.manual-panel ul,.portal-panel ul{max-width:100%}
.manual-panel li,.portal-panel li{max-width:100%;overflow-wrap:anywhere}

@media(max-width:1150px){
  .portal-workspace,.manual-workspace{grid-template-columns:1fr}
  .portal-showcase-card .portal-image-preview{height:auto;aspect-ratio:16/9}
  .manual-visual{aspect-ratio:16/10}
}

/* v459: keep the opening masthead as the complete first-screen experience. */
.page-demo .editorial-page-header{
  min-height:100vh!important;
  min-height:100svh!important;
  display:flex!important;
  align-items:center!important;
}

.page-demo .editorial-page-header-inner{
  flex:1 1 auto;
}

/* v485: concept disclosure and platform compatibility. */
.complete-system-disclaimer{margin-top:10px;padding:12px 14px;border-left:2px solid #efc86c;background:rgba(7,13,34,.72);color:rgba(239,242,252,.82);font-size:.78rem;line-height:1.5}
.complete-system-disclaimer strong{color:#efc86c}
.platform-compatibility{margin-top:18px;padding:16px;border:1px solid rgba(239,200,108,.2);border-radius:14px;background:linear-gradient(145deg,rgba(25,46,86,.5),rgba(8,21,50,.7))}
.platform-compatibility>strong{display:block;color:#fff3c5;font-family:Georgia,serif;font-size:1.02rem}
.platform-compatibility>p{margin:.42rem 0 .8rem;color:rgba(239,242,252,.8);font-size:.9rem;line-height:1.5}
.platform-compatibility ul{display:flex;flex-wrap:wrap;gap:7px;margin:0!important;padding:0!important;list-style:none!important}
.platform-compatibility li{margin:0!important;padding:6px 10px!important;border:1px solid rgba(239,200,108,.24);border-radius:999px;background:rgba(255,255,255,.045);color:#f7df9a!important;font-size:.74rem;font-weight:800;line-height:1.2}
.platform-compatibility li::before{display:none!important}
