/* Native skin atlas: one editorial frame, three authentic application captures. */
.site-header { grid-template-columns: auto 1fr auto auto; }
.desktop-nav { gap: clamp(13px, 1.55vw, 25px); }
.worlds {
  position: relative; isolation: isolate;
  --world-accent: #82e4ec;
  --world-soft: #b5c9d6;
  --world-rule: rgba(145, 206, 222, .26);
  color: #eaf0ef;
  background: radial-gradient(ellipse 65% 56% at 80% 43%, #122a39 0%, #0b151d 58%, #080e13 100%);
  border-block: 1px solid #24404b;
  scroll-margin-top: 88px;
}
.worlds::before, .worlds::after { content: ''; position: absolute; inset: 0; z-index: -1; pointer-events: none; opacity: 0; transition: opacity .55s cubic-bezier(.2,.75,.2,1); }
.worlds::before { background: radial-gradient(ellipse 65% 58% at 75% 46%, #173856 0%, #0b1c2f 58%, #081321 100%); }
.worlds::after { background: radial-gradient(ellipse 60% 60% at 76% 46%, #244249 0%, #0d2027 58%, #081318 100%); }
.worlds[data-skin='dos'] {
  --world-accent: #ffd487;
  --world-soft: #afc6d7;
  --world-rule: rgba(104, 172, 198, .33);
}
.worlds[data-skin='dos']::before { opacity: 1; }
.worlds[data-skin='classic'] {
  --world-accent: #8bd9d7;
  --world-soft: #c1d4d9;
  --world-rule: rgba(175, 204, 204, .29);
}
.worlds[data-skin='classic']::after { opacity: 1; }
.worlds-inner { padding-block: clamp(68px, 7vw, 116px) clamp(62px, 6vw, 96px); }
.worlds-opening, .worlds-exhibit-top, .worlds-exhibit-bottom {
  display: flex; align-items: center; justify-content: space-between; gap: 20px;
  font: 600 12px/1.4 var(--mono); letter-spacing: .035em;
}
.worlds-opening { padding-bottom: 30px; border-bottom: 1px solid var(--world-rule); }
.worlds-opening .chapter-tag { margin: 0; color: var(--world-accent); }
.worlds-overline { color: #9fbdc4; text-align: right; }
.worlds-layout { display: grid; grid-template-columns: minmax(340px, .78fr) minmax(0, 1.22fr); gap: clamp(36px, 5vw, 100px); align-items: start; padding-top: clamp(47px, 5vw, 83px); }
.worlds-editorial { min-width: 0; }
.worlds-editorial h2 { margin: 0; font: 500 clamp(56px, 5.5vw, 94px)/.97 var(--sans); letter-spacing: -.075em; }
.worlds-editorial h2 i { display: block; margin-top: 4px; color: var(--world-accent); font: 400 1.12em/.88 var(--serif); letter-spacing: -.035em; white-space: nowrap; }
.worlds-intro { max-width: 490px; margin: 32px 0 47px; color: #c1d0d2; font-size: clamp(16px, 1.3vw, 19px); line-height: 1.55; }
.worlds-tabs { border-top: 1px solid var(--world-rule); }
.worlds-tabs button {
  position: relative; display: grid; grid-template-columns: 33px minmax(0, 1fr); grid-template-rows: auto auto;
  width: 100%; min-height: 106px; padding: 20px 18px 20px 2px;
  border: 0; border-bottom: 1px solid var(--world-rule); background: transparent; color: #d9e3e3;
  text-align: left; cursor: pointer; transition: color .25s ease, padding-left .3s ease;
}
.worlds-tabs button::before { content: ''; position: absolute; inset: 0 auto 0 -18px; width: 2px; background: var(--world-accent); opacity: 0; transform: scaleY(.35); transition: opacity .25s ease, transform .3s ease; }
.worlds-tabs button:hover, .worlds-tabs button[aria-selected='true'] { color: var(--world-accent); padding-left: 12px; }
.worlds-tabs button[aria-selected='true']::before { opacity: 1; transform: scaleY(1); }
.worlds-tabs button > span { grid-row: 1 / 3; padding-top: 8px; color: #92aab4; font: 600 12px/1.3 var(--mono); }
.worlds-tabs strong { font: 500 clamp(22px, 2vw, 32px)/1.15 var(--sans); letter-spacing: -.035em; }
.worlds-tabs small { margin-top: 4px; color: #9eb6bd; font: 400 14px/1.4 var(--sans); }
.worlds-tabs button:focus-visible { outline: 2px solid var(--world-accent); outline-offset: -4px; }
.worlds-availability { margin: 23px 0 0; color: #97afb4; font: 500 12px/1.55 var(--mono); }
.worlds-exhibit { min-width: 0; border: 1px solid var(--world-rule); background: rgba(2, 8, 15, .44); box-shadow: 0 30px 100px rgba(0, 0, 0, .18); }
.worlds-exhibit-top { min-height: 62px; padding: 8px 19px; border-bottom: 1px solid var(--world-rule); color: var(--world-accent); }
.worlds-exhibit-top .inspect-button { color: #d6e8ed; border-color: var(--world-rule); min-height: 42px; }
.worlds-exhibit-top .inspect-button { flex: 0 0 auto; white-space: nowrap; }
.worlds-exhibit-top .inspect-button:hover { color: #07131a; background: var(--world-accent); border-color: var(--world-accent); }
.worlds-image-plane { height: clamp(470px, 45vw, 690px); display: grid; grid-template: minmax(0, 1fr) / minmax(0, 1fr); place-items: center; overflow: hidden; padding: 22px; background: #02080f; transition: background-color .4s ease; }
.worlds[data-skin='dos'] .worlds-image-plane { background: #07172a; }
.worlds[data-skin='classic'] .worlds-image-plane { background: #cfd6d3; }
.worlds-image-plane img { width: 100%; height: 100%; min-width: 0; min-height: 0; object-fit: contain; cursor: zoom-in; }
.worlds-image-plane img:focus-visible { outline: 2px solid var(--world-accent); outline-offset: 5px; }
.worlds-exhibit-bottom { min-height: 55px; padding: 10px 19px; border-top: 1px solid var(--world-rule); color: #a7bec4; }
.worlds-exhibit-bottom span:first-child { color: #e2ebea; }
.worlds-finale { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 32px; align-items: end; margin-top: 34px; padding-top: 23px; border-top: 1px solid var(--world-rule); }
.worlds-finale p { max-width: 700px; margin: 0; color: #c5d7d9; font-size: 17px; line-height: 1.6; }
.worlds-specs { display: flex; justify-content: flex-end; gap: clamp(16px, 2.3vw, 38px); color: var(--world-accent); font: 600 11px/1.4 var(--mono); white-space: nowrap; }
@media (max-width: 1300px) {
  .header-descriptor { display: none; }
  .site-header { grid-template-columns: auto 1fr auto; }
  .desktop-nav { justify-self: end; }
  .worlds-layout { grid-template-columns: minmax(300px, .7fr) minmax(0, 1.3fr); gap: 38px; }
  .worlds-editorial h2 { font-size: clamp(51px, 5vw, 75px); }
  .worlds-finale { grid-template-columns: 1fr; gap: 17px; }
  .worlds-specs { justify-content: flex-start; flex-wrap: wrap; }
}
@media (max-width: 980px) {
  .worlds-layout { grid-template-columns: 1fr; gap: 35px; }
  .worlds-editorial h2 { font-size: clamp(57px, 7.4vw, 85px); }
  .worlds-intro { max-width: 700px; margin-bottom: 31px; }
  .worlds-tabs { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border-bottom: 1px solid var(--world-rule); }
  .worlds-tabs button { min-height: 113px; grid-template-columns: 1fr; grid-template-rows: auto auto auto; padding: 12px 10px; border-right: 1px solid var(--world-rule); border-bottom: 0; }
  .worlds-tabs button:last-child { border-right: 0; }
  .worlds-tabs button::before { inset: auto 0 -1px; width: auto; height: 2px; transform: scaleX(.35); }
  .worlds-tabs button[aria-selected='true']::before { transform: scaleX(1); }
  .worlds-tabs button:hover, .worlds-tabs button[aria-selected='true'] { padding-left: 10px; }
  .worlds-tabs button > span { grid-row: auto; padding: 0; }
  .worlds-tabs strong { font-size: 23px; }
  .worlds-tabs small { font-size: 13px; }
  .worlds-availability { margin-top: 18px; }
  .worlds-image-plane { height: min(76vw, 670px); min-height: 400px; }
}
@media (max-width: 680px) {
  .worlds { scroll-margin-top: 68px; }
  .worlds-inner { padding-block: 70px; }
  .worlds-opening { padding-bottom: 18px; }
  .worlds-overline { display: none; }
  .worlds-editorial h2 { font-size: clamp(46px, 11.7vw, 68px); line-height: 1.03; }
  .worlds-editorial h2 i { white-space: normal; }
  .worlds-intro { margin: 23px 0 29px; font-size: 16px; }
  .worlds-layout { padding-top: 39px; gap: 27px; }
  .worlds-tabs button { min-height: 103px; padding: 11px 7px; }
  .worlds-tabs button:hover, .worlds-tabs button[aria-selected='true'] { padding-left: 7px; }
  .worlds-tabs strong { font-size: clamp(14px, 4vw, 20px); letter-spacing: -.04em; }
  .worlds-tabs small { display: none; }
  .worlds-availability { font-size: 11px; }
  .worlds-exhibit-top, .worlds-exhibit-bottom { padding-inline: 12px; font-size: 11px; }
  .worlds-exhibit-top { min-height: 56px; }
  .worlds-exhibit-bottom span:last-child { display: none; }
  .worlds-image-plane { height: min(98vw, 500px); min-height: 300px; padding: 10px; }
  .worlds[data-skin='dos'] .worlds-image-plane, .worlds[data-skin='classic'] .worlds-image-plane { height: min(67vw, 390px); min-height: 210px; }
  .worlds-finale { margin-top: 29px; gap: 20px; }
  .worlds-finale p { font-size: 16px; }
  .worlds-specs { gap: 10px 20px; font-size: 10px; white-space: normal; }
  .studio-frame-actions { flex-wrap: wrap; }
  .studio-view-switch { display: flex; width: 100%; }
  .studio-view-switch button { flex: 1; }
  .studio-frame-top .inspect-button { margin-left: auto; }
}
@media (prefers-reduced-motion: reduce) {
  .worlds::before, .worlds::after, .worlds-image-plane, .worlds-tabs button, .worlds-tabs button::before { transition: none !important; }
}
