.base-wall{display:none;position:absolute;z-index:4;top:61px;left:0;width:100%;height:clamp(155px,21vh,215px);overflow:hidden;perspective:2400px;isolation:isolate;mask-image:linear-gradient(transparent,#000 14%,#000 52%,transparent 100%);transition:opacity .45s}
.earth-home .base-wall{display:block}
.base-wall-plane{position:absolute;left:50%;top:50%;height:540px;transform:translate(-50%,-50%) rotateX(12deg) rotateY(var(--turn,0deg)) rotateZ(-3deg);transform-style:preserve-3d;transition:transform .4s ease-out}
.base-wall-column{width:clamp(180px,16vw,260px);flex-shrink:0}
.base-wall-track{animation:base-drift var(--duration) linear var(--delay) infinite;will-change:transform}
.base-wall-column:nth-child(even) .base-wall-track{animation-direction:reverse}
.base-wall-group{display:flex;flex-direction:column;gap:15px;padding-bottom:15px}
.base-wall-tile{position:relative;margin:0;height:clamp(108px,9vw,150px);border-radius:9px;overflow:hidden;background:#d5e5ed;box-shadow:0 7px 18px #254f7021;transition:filter .25s,transform .25s;filter:saturate(.78)}
.base-wall-tile img{width:100%;height:100%;object-fit:cover}
.base-wall-tile figcaption{position:absolute;bottom:0;left:0;right:0;padding:20px 12px 8px;background:linear-gradient(transparent,#082e4ac4);color:#fff;font-size:10px;letter-spacing:2px;text-shadow:0 1px 4px #123}
.base-wall:hover .base-wall-track,.base-wall:hover .base-wall-belt{animation-play-state:paused}
.base-wall-tile:hover{filter:saturate(1);transform:scale(1.025)}
.base-wall-tile.image-unavailable img{visibility:hidden}
.wall-offscreen .base-wall-track,.wall-offscreen .base-wall-belt{animation-play-state:paused}
.entering-stars .base-wall,.earth-preview .base-wall{opacity:0;pointer-events:none}
.earth-home .site-header{height:62px}
.earth-home .site-header .brand img{width:214px}
.earth-home .home-copy{top:max(258px,29vh)!important}
.earth-home .anniversary b{font-size:76px}
.earth-home .anniversary{margin-bottom:8px}
.earth-home .home-copy h1{font-size:clamp(38px,3.7vw,56px)}
@keyframes base-drift{from{transform:translate3d(0,0,0)}to{transform:translate3d(0,-50%,0)}}
@media(min-width:801px) and (max-height:820px){.base-wall{height:145px;top:55px}.earth-home .site-header{height:56px}.earth-home .home-copy{top:195px!important}.earth-home .anniversary b{font-size:56px}.earth-home .home-copy h1{font-size:38px}.earth-home .home-copy .eyebrow{font-size:9px;margin-bottom:4px}.earth-home .hero-story{margin-top:5px}.earth-home .hero-button{margin-top:10px;min-height:43px}}
@media(max-width:800px){.base-wall{top:55px;height:135px}.base-wall-plane{transform:translate(-50%,-50%) rotateX(12deg) rotateZ(-3deg)}.base-wall-panel{gap:10px;padding-right:10px}.base-wall-column{width:150px}.base-wall-tile{height:96px;border-radius:6px}.base-wall-group{gap:10px;padding-bottom:10px}.base-wall-tile figcaption{font-size:8px;padding:16px 8px 6px}.earth-home .site-header{height:56px}.earth-home .site-header .brand img{width:170px}.earth-home .home-copy{top:195px!important}.earth-home .anniversary b{font-size:48px}.earth-home .anniversary{margin-bottom:5px}.earth-home .home-copy h1{font-size:29px}.earth-home .hero-subtitle{margin-top:8px}.earth-home .hero-story{margin-top:6px}.earth-home .hero-button{margin-top:10px}}
@media(prefers-reduced-motion:reduce){.base-wall-track{animation:none;will-change:auto;transform:translateY(-20%)}.base-wall-plane,.base-wall-tile{transition:none}.base-wall-tile:hover{transform:none}}
@media(max-width:800px){.earth-home .home-copy{left:24px;margin-left:0;margin-right:0}}

/* A repeated horizontal belt carries independently drifting vertical columns. */
.base-wall-belt{display:flex;width:200%;animation:base-wall-sideways var(--horizontal-duration) linear infinite reverse;will-change:transform}
.base-wall-panel{display:flex;gap:16px;padding-right:16px;width:50%;flex-shrink:0}
@keyframes base-wall-sideways{to{transform:translate3d(-50%,0,0)}}
@media(max-width:800px){.base-wall-panel{gap:10px;padding-right:10px}}
@media(prefers-reduced-motion:reduce){.base-wall-belt{animation:none;will-change:auto}}
.base-wall{pointer-events:auto}


