/* Footer scene (Micro2 Core): full-bleed behind the footer content */
.m2-scene{position:absolute;inset:0;z-index:0;overflow:hidden}
.m2-scene-gl{position:absolute;inset:0;width:100%;height:100%;display:block;opacity:0;transition:opacity 1.4s ease;touch-action:pan-y}
.m2-scene.is-live .m2-scene-gl{opacity:1}
.m2-scene.is-grabbing .m2-scene-gl{cursor:grabbing!important}

/* still version: shown first, and kept with no WebGL, data saver or low power */
.m2-scene-still{position:absolute;inset:0;pointer-events:none;transition:opacity 1.2s ease;background:radial-gradient(22% 14% at 50% 74%,rgba(201,157,81,.2),transparent 70%),#060606} /* never catches clicks meant for the 3D pieces */
.m2-scene.is-live .m2-scene-still{opacity:0}
.m2-stars{display:none;position:absolute;inset:0 0 30%;background-image:radial-gradient(1px 1px at 12% 22%,#fff8,transparent),radial-gradient(1px 1px at 27% 8%,#fff6,transparent),radial-gradient(1.5px 1.5px at 41% 31%,#ffe9c4aa,transparent),radial-gradient(1px 1px at 58% 14%,#fff7,transparent),radial-gradient(1px 1px at 66% 38%,#fff5,transparent),radial-gradient(1.5px 1.5px at 79% 20%,#ffe9c4aa,transparent),radial-gradient(1px 1px at 88% 9%,#fff6,transparent),radial-gradient(1px 1px at 7% 44%,#fff4,transparent),radial-gradient(1px 1px at 93% 41%,#fff5,transparent),radial-gradient(1px 1px at 35% 52%,#fff3,transparent)}
.m2-horizon{display:none;position:absolute;inset:55% -10% auto;height:40%;background:radial-gradient(50% 50% at 50% 50%,rgba(201,157,81,.16),transparent 70%);filter:blur(10px)}
.m2-still-mark{position:absolute;left:50%;bottom:205px;width:clamp(80px,9vw,120px);transform:translate(-50%,50%);border-radius:14px;opacity:.85} /* the still fallback: in the stage, above the bottom row */
@media (max-width:899.98px){.m2-still-mark{bottom:250px}}

/* "Drag & drop" label above the M2 mark (placed by footer3d.js) */
.m2-scene-hint{position:absolute;left:0;top:0;z-index:2;opacity:0;pointer-events:none;padding:7px 12px;background:var(--m2-gold);color:#000;font:600 11px/1 var(--m2-mono);letter-spacing:.12em;text-transform:uppercase;white-space:nowrap;transition:opacity .6s}
.m2-scene-hint::after{content:"";position:absolute;left:50%;bottom:-5px;width:10px;height:10px;background:inherit;transform:translateX(-50%) rotate(45deg)}
.m2-scene.is-live .m2-scene-hint{opacity:1}
.m2-scene.has-dragged .m2-scene-hint{opacity:0}

/* Ask AI and language */
.m2-ask-ai ul{display:grid!important;grid-template-columns:repeat(2,minmax(0,max-content));gap:10px 22px!important}
.m2-ask-ai a span,.foot-icons a span{font-size:14.5px}
.m2-lang p{display:flex;gap:10px;align-items:center;font-size:15.5px}
.m2-lang a[aria-current]{color:var(--m2-gold)}
@media (prefers-reduced-motion:reduce){.m2-scene-gl,.m2-scene-still{transition:none}}
.foot.can-grab,.foot.can-grab *{cursor:grab!important}
.foot.is-dragging,.foot.is-dragging *{cursor:grabbing!important;user-select:none;-webkit-user-select:none}
.foot .foot-offices p{font-size:14px;line-height:1.55;color:var(--m2-mute);margin:0 0 16px}
.foot-offices b{display:block;color:var(--m2-cream);font-weight:500}
