/* geometry.css: the Moroccan geometry layers. geometry.js injects the hidden SVG with the pattern definitions and appends one
   <i class="geo geo-star|geo-lat"> to each host. The layer is a clipping box (inset 0, overflow hidden); inside it the pan (pointer shift)
   and the pattern (scroll drift and turn) are oversized by --geo-os so the edges never show. Lines only, 6 to 8 percent. Never over text:
   the layer sits under the host's own content. */
.geo-defs{position:absolute;width:0;height:0;overflow:hidden;pointer-events:none}
.geo{position:absolute;inset:0;z-index:-1;overflow:hidden;pointer-events:none;contain:layout paint}
.geo.geo-z0{z-index:0}
.geo-pan{position:absolute;left:-28px;right:-28px;top:calc(var(--geo-os,56px) * -1);bottom:calc(var(--geo-os,56px) * -1);display:block;will-change:transform}
.geo-in{position:absolute;inset:0;width:100%;height:100%;display:block;transform-origin:50% 50%}
/* the hosts: a stacking context where the layer sits under the content (z-index -1 stays above the host's own background) */
.ritual,#origin,.site-footer{position:relative;isolation:isolate}
/* the thin divider: one row of stars on the ground of the section above it */
.geo-div{position:relative;height:28px;overflow:hidden;pointer-events:none}
.geo-div svg{display:block;width:100%;height:28px;opacity:.1}
@media (prefers-reduced-motion:reduce){.geo-pan{will-change:auto}}
html:not(.lx-live) .geo-pan{will-change:auto}
