/* Desktop editorial layout; mobile retains the approved images and composition. */
.space-page picture { display: contents; }
@media (max-width: 899px) {
  body .space-page .manifesto { padding-block: 44px; }
  body .space-page .manifesto figure img {
    display: block;
    height: auto !important;
    aspect-ratio: 4 / 3;
    object-fit: cover;
  }
}
.space-page .spa-intro-caption { display: none; }
.space-page .space-hero > picture > img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:50% 50%; }
.space-page .spa-v11 .media > picture > img { display:block; width:100%; height:100%; object-fit:cover; }
.space-page .spa-v11 .ritual-media > picture > img { height:auto; object-fit:contain; }
.space-page .spa-v11 .closing-card > picture > img { position:absolute; inset:0; object-position:center 52%; }
@media (min-width: 900px) {
  body .space-page .space-hero > picture > img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center; }
  body .space-page .space-hero { height: min(85svh, 820px); min-height:640px; }
  body .space-page .manifesto .space-shell { display:block; }
  body .space-page .manifesto .space-title { max-width:900px; }
  body .space-page .manifesto figure { margin-top:36px; }
  body .space-page .manifesto figure img { display:block; height:auto; aspect-ratio:2 / 1; object-fit:cover; object-position:center 50%; }
  body .space-page .theme-card { height:400px; }
  body .space-page .story-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; }
  body .space-page .story-card, body .space-page .story-card--featured { grid-column:auto; min-height:0; aspect-ratio:3 / 2; }
  body .space-page .story-card h3 { font-size:clamp(25px,2.3vw,34px); }
  body .space-page .story-card__copy { inset:auto 24px 24px; }
  body .space-page .material-card { height:390px; }
  body .space-page .life .space-shell { display:block; }
  body .space-page .life__visual { margin-top:32px; height:auto; aspect-ratio:2 / 1; }
  body .space-page .life__visual img, body .space-page .project-bridge__card img { display:block; height:100%; object-fit:cover; }
  body .space-page .life__copy { inset:auto 40px 36px; }
  body .space-page .life__copy h3 { font-size:38px; }
  body .space-page .project-bridge__card { height:560px; }
  body .space-page .spa-v11 { width:100%; max-width:none; overflow:hidden; }
  body .space-page .spa-v11 .shell { width:min(calc(100% - 112px),1200px); margin-inline:auto; }
  body .space-page .spa-v11 .intro { padding-top:64px; }
  body .space-page .spa-v11 .intro h2 { font-size:64px; line-height:1.02; max-width:800px; margin:18px 0 32px; }
  body .space-page .spa-v11 .kicker { font-size:11px; }
  body .space-page .spa-v11 .intro-copy { grid-template-columns:1fr 1fr; gap:18px 56px; font-size:17px; line-height:1.65; }
  body .space-page .spa-v11 .intro-media { height:auto; aspect-ratio:16 / 9; margin-top:40px; }
  body .space-page .spa-v11 .media > picture > img { display:block; width:100%; height:100%; object-fit:cover; }
  body .space-page .spa-v11 .intro-media img { object-position:center; }
  body .space-page .spa-intro-caption { display:block; position:absolute; right:40px; top:36px; max-width:270px; color:#fff; font-size:14px; line-height:1.7; letter-spacing:.18em; text-transform:uppercase; text-shadow:0 2px 12px #000; }
  body .space-page .spa-v11 .architecture { padding-top:80px; }
  body .space-page .spa-v11 .architecture-card { height:auto; aspect-ratio:2 / 1; }
  body .space-page .spa-v11 .architecture-copy { top:54px; left:48px; right:48px; }
  body .space-page .spa-v11 .architecture-copy h2 { font-size:58px; }
  body .space-page .spa-v11 .architecture-copy p { font-size:13px; line-height:1.9; }
  body .space-page .spa-v11 .architecture-copy i { margin:34px 0; }
  body .space-page .spa-v11 .rituals { padding:96px 0; }
  body .space-page .spa-v11 .rituals h2 { font-size:60px; margin:18px 0 36px; }
  body .space-page .spa-v11 .ritual-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:48px 28px; }
  body .space-page .spa-v11 .ritual-media { aspect-ratio:16 / 9; }
  body .space-page .spa-v11 .ritual h3 { font-size:25px; margin-top:22px; }
  body .space-page .spa-v11 .ritual p { font-size:16px; line-height:1.65; max-width:530px; }
  body .space-page .spa-v11 .spa { padding-bottom:80px; }
  body .space-page .spa-v11 .spa-card { display:grid; grid-template-columns:1fr 1fr; }
  body .space-page .spa-v11 .spa-copy { padding:48px 40px; }
  body .space-page .spa-v11 .spa-copy h2 { font-size:44px; }
  body .space-page .spa-v11 .spa-copy p, body .space-page .spa-v11 .spa-copy strong { font-size:16px; line-height:1.65; }
  body .space-page .spa-v11 .spa-photo { height:auto; min-height:620px; margin:0; }
  body .space-page .spa-v11 .spa-photo img { object-position:center; }
  body .space-page .spa-v11 .closing { padding-bottom:80px; }
  body .space-page .spa-v11 .closing-card { min-height:0; height:600px; }
  body .space-page .spa-v11 .closing-content { padding:48px; }
  body .space-page .spa-v11 .closing h2 { font-size:46px; max-width:760px; line-height:1.13; }
  body .space-page .spa-v11 .closing-bottom { display:flex; align-items:flex-end; justify-content:space-between; gap:28px; }
  body .space-page .spa-v11 .cta { font-size:14px; min-height:52px; padding:0 24px; }
}
