
/* V2.9.1: clean room photography and accessible touch interactions */
.hero .version-tag{display:inline-block;background:#fff;border:1px solid #cbdff7;padding:6px 12px;border-radius:20px;color:#426786;font-size:12px;font-weight:800;margin:5px 0 0}
.scene.v291{background:#eff7fd; isolation:isolate;}
.scene.v291>.room-photo{width:100%;height:auto;max-height:none;aspect-ratio:16 / 9;object-fit:cover;object-position:center;display:block}
.scene.v291 .character-inside{position:absolute;right:3%;bottom:4%;width:clamp(94px,15%,170px);background:#fffffff0;border:3px solid #fff;border-radius:24px;overflow:hidden;box-shadow:0 10px 30px #233b5e55;text-align:center;transform:rotate(2deg)}
.scene.v291 .character-inside img{width:100%;aspect-ratio:4/4.5;object-fit:cover;object-position:top;display:block}
.scene.v291 .character-inside b{display:block;background:white;color:#145caa;padding:4px;font-size:14px}
.scene.v291 .scene-overlay{position:relative;inset:auto;max-width:none;box-shadow:none;border-radius:0;background:#fff;display:flex;align-items:center;gap:16px;padding:16px 18px}
.scene.v291 .scene-overlay img{width:68px;height:76px}
.scene.v291 .scene-overlay p{font-size:clamp(14px,2vw,17px)}
.room-activities{margin:25px auto 15px}
.room-activities>h2{text-align:center;font-size:clamp(23px,3vw,30px);margin:0 0 7px}
.room-activities>p{text-align:center;color:#536b83;margin:0 0 20px}
.activity-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.activity-card{font:inherit;text-align:left;min-height:115px;background:#fff;border:2px solid #d8e8fa;padding:20px;cursor:pointer;border-radius:20px;color:#214764}
.activity-card:hover,.activity-card:focus-visible{border-color:#0862c7;outline:2px solid #a9cefa}
.activity-card .emoji{font-size:30px;display:block;margin-bottom:10px}
.activity-card strong{font-size:18px;display:block;color:#075fc3}
.activity-card small{display:block;color:#607791;font-size:14px;margin-top:5px}
.activity-dialog{border:0;border-radius:25px;padding:25px;width:min(90vw,460px);box-shadow:0 25px 90px #253e5c66;color:#25415e}
.activity-dialog::backdrop{background:#112c43a8}
.activity-dialog h2{font-size:25px;color:#075fc3;margin:0 0 12px}
.activity-dialog p{font-size:18px;line-height:1.55}
.activity-dialog button{border:0;background:#075fc3;color:#fff;font:inherit;font-weight:750;padding:12px 24px;border-radius:24px;cursor:pointer}
.room-next{margin:20px 0;padding:15px 20px;text-align:center;background:#fff8fc;border:1px solid #f2dcea;border-radius:18px;font-size:15px}
@media(max-width:750px){.scene.v291>.room-photo{aspect-ratio:4/3;object-fit:cover}.scene.v291 .character-inside{width:clamp(85px,27%,125px)}.scene.v291 .scene-overlay{padding:13px}.scene.v291 .scene-overlay img{width:58px;height:68px}}
@media(max-width:490px){.activity-grid{grid-template-columns:1fr}.scene.v291>.room-photo{aspect-ratio:5/4}.scene.v291 .character-inside{bottom:4%;right:3%;width:86px;border-radius:16px}.scene.v291 .character-inside b{font-size:11px}.scene.v291 .scene-overlay h2{font-size:20px}.activity-card{min-height:85px;padding:16px}}
@media(prefers-reduced-motion:reduce){.scene.v291 .character-inside{transform:none}}

/* V2.9.1a — Tok Daddy photography studio: show the whole image and no floating portrait */
.scene.v291.tok-daddy-studio>.room-photo{aspect-ratio:3 / 2;object-fit:contain;background:#f9eddd}
@media(max-width:750px){.scene.v291.tok-daddy-studio>.room-photo{aspect-ratio:auto;width:100%;height:auto;object-fit:contain}}


/* V2.9.1b: full-frame photos on every device; no mobile cropping. */
.scene.v291 > img.room-photo,
.scene.v291.tok-daddy-studio > img.room-photo,
.scene.shared > img,
.scene.shared > img:first-child {
  display:block;
  width:100%;
  height:auto;
  max-height:none;
  aspect-ratio:auto;
  object-fit:contain;
  object-position:center;
}
.scene.v291 .scene-overlay{
  display:flex;
  align-items:center;
  gap:16px;
  padding:18px 20px;
}
.scene.v291 .scene-overlay .character-inside{
  position:static;
  inset:auto;
  transform:none;
  flex:0 0 auto;
  width:clamp(72px,11vw,110px);
  background:#fff;
  border:2px solid #e2edf8;
  border-radius:16px;
  overflow:hidden;
  box-shadow:none;
}
.scene.v291 .scene-overlay .character-inside img{
  display:block;
  width:100%;
  height:auto;
  aspect-ratio:auto;
  object-fit:contain;
}
.scene.v291 .scene-overlay .character-inside b{
  display:block;
  color:#0959b6;
  background:white;
  font-size:12px;
  padding:3px;
}
@media(max-width:750px){
  .scene.v291 > img.room-photo,
  .scene.v291.tok-daddy-studio > img.room-photo,
  .scene.shared > img{height:auto;max-height:none;aspect-ratio:auto;object-fit:contain;}
  .scene.v291 .scene-overlay{padding:14px;gap:12px;}
}
@media(max-width:490px){
  .scene.v291 > img.room-photo,
  .scene.v291.tok-daddy-studio > img.room-photo,
  .scene.shared > img{height:auto;max-height:none;aspect-ratio:auto;object-fit:contain;}
  .scene.v291 .scene-overlay .character-inside{width:76px;}
  .scene.v291 .scene-overlay h2{font-size:clamp(18px,5vw,23px)}
  .scene.v291 .scene-overlay p{font-size:clamp(14px,3.8vw,17px)}
}

/* V2.9.2 scenes retain original image aspect ratios on all screen sizes */
.scene.integrated-v292 img.room-photo{width:100%;height:auto;max-height:none;aspect-ratio:auto;object-fit:contain;object-position:center;}

/* V2.9.2a: approved natural action scenes, never crop on mobile */
.scene.integrated-v292 img.room-photo{display:block;width:100%;height:auto!important;max-height:none!important;aspect-ratio:auto!important;object-fit:contain!important;object-position:center;}
