.mesh-gallery-intro { display: flex; align-items: end; justify-content: space-between; gap: 32px; margin-bottom: 34px; }
.mesh-gallery-intro h2 { margin: 0; color: #f2f3f2; font-size: clamp(30px, 4.1vw, 58px); font-weight: 450; letter-spacing: -.055em; line-height: 1; }
.mesh-gallery-intro p { max-width: 390px; margin: 0; color: #b6babb; font-size: 14px; line-height: 1.5; }
#atlasGrid.atlas-grid { display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)) !important; grid-auto-flow: row !important; grid-auto-rows: auto !important; gap: clamp(12px, 2vw, 24px) !important; align-items: stretch !important; }
#atlasGrid .mesh-tile:nth-child(n) { grid-column: auto !important; grid-row: auto !important; width: 100% !important; height: auto !important; min-height: 0 !important; aspect-ratio: 1.18; margin: 0 !important; background: #000 !important; border: 0 !important; border-radius: 0 !important; box-shadow: none !important; isolation: isolate; overflow: hidden !important; cursor: default !important; }
#atlasGrid .mesh-tile::before { display: none !important; }
#atlasGrid .mesh-tile::after { content: ''; position: absolute; z-index: 1; inset: auto 0 0; height: 100px; pointer-events: none; background: linear-gradient(transparent, rgba(0,0,0,.68)); }
#atlasGrid .mesh-tile .mesh-canvas { display: block !important; position: absolute !important; inset: 0 !important; width: 100% !important; height: 100% !important; border-radius: 0 !important; pointer-events: auto !important; touch-action: pan-y; cursor: grab; }
#atlasGrid .mesh-tile .mesh-canvas:active { cursor: grabbing; }
#atlasGrid .mesh-tile .mesh-caption { position: absolute; z-index: 2; left: 22px; bottom: 19px; color: #f1f2f1; font: 500 13px/1.2 Arial, sans-serif; letter-spacing: .005em; pointer-events: none; }
#atlasGrid .mesh-tile .mesh-explode { position: absolute; z-index: 3; right: 15px; bottom: 14px; min-height: 36px; padding: 0 13px; border: 1px solid rgba(255,255,255,.34); border-radius: 4px; background: rgba(0,0,0,.76); color: #f4f4f3; font: 500 11px/1 Arial, sans-serif; cursor: pointer; }
#atlasGrid .mesh-tile .mesh-explode:hover { background: #f2f2f0; color: #070808; border-color: #f2f2f0; }
#atlasGrid .mesh-tile .mesh-explode:focus-visible,
#atlasGrid .mesh-tile .mesh-canvas:focus-visible { outline: 2px solid #fff !important; outline-offset: -3px !important; }
#atlasGrid .mesh-tile.mesh-error::after { content: '3D model could not load'; position: absolute; inset: 0; display: grid; place-items: center; height: auto; background: #000; color: #ddd; font: 13px Arial, sans-serif; }
[hidden] { display: none !important; }
@media (max-width: 700px) {
  .mesh-gallery-intro { display: block; margin-bottom: 24px; }
  .mesh-gallery-intro p { margin-top: 12px; font-size: 13px; }
  #atlasGrid.atlas-grid { grid-template-columns: minmax(0, 1fr) !important; gap: 12px !important; }
  #atlasGrid .mesh-tile:nth-child(n) { aspect-ratio: 1.15; }
  #atlasGrid .mesh-figure.mesh-tile { aspect-ratio: .93; }
  #atlasGrid .mesh-tile .mesh-caption { left: 13px; bottom: 13px; font-size: 11px; }
  #atlasGrid .mesh-tile .mesh-explode { right: 9px; bottom: 8px; min-height: 34px; padding: 0 10px; font-size: 10px; }
}
