.oe-footer{margin:0 32px 32px;background:#f7f7f7;color:#343434;font-weight:400}
.oe-footer-inner{max-width:1920px;margin:0 auto;padding:0 32px}
.oe-footer-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));position:relative;padding:64px 0 72px;min-height:420px}
.oe-footer-brand{grid-column:span 3;position:relative;padding-right:40px}
.oe-footer-tagline{font-size:48px;line-height:1.15;margin:0;letter-spacing:-.025em}
.oe-footer-column{position:relative;padding-right:24px}
.oe-footer-column h2{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px;line-height:1.5;letter-spacing:.05em;text-transform:uppercase;color:#6f7069;font-weight:400;margin:0 0 28px}
.oe-footer-column ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:12px}
.oe-footer-column li,.oe-footer-column li a{font-size:20px;line-height:1.35;font-weight:400}
.oe-footer a{color:inherit;text-decoration:none}
.oe-footer-column li a:hover,.oe-footer-bottom a:hover{text-decoration:none}
.oe-footer a:focus-visible{outline:2px solid #343434;outline-offset:5px}
.oe-footer .oe-footer-login{display:inline-block;margin-top:28px;font-size:20px;line-height:1.35}
.oe-footer .oe-footer-login:hover{text-decoration:none}
.oe-footer-bottom{display:flex;align-items:center;gap:26px;padding:28px 0 32px;font:11px/1.5 ui-monospace,SFMono-Regular,Menlo,monospace;text-transform:uppercase;letter-spacing:.04em}
.oe-footer-bottom span{color:#6f7069}
@media(max-width:1000px){.oe-footer-grid{grid-template-columns:repeat(3,minmax(0,1fr));row-gap:56px}.oe-footer-brand{grid-column:1/-1}.oe-footer-brand::before,.oe-footer-brand::after{display:none}.oe-footer-column::before{top:0;bottom:0}.oe-footer-column{padding-left:16px}}
@media(max-width:600px){.oe-footer-inner{padding:0 20px}.oe-footer-grid{grid-template-columns:repeat(2,minmax(0,1fr));padding:40px 0;gap:36px 20px;border:0}.oe-footer-brand{grid-column:1/-1}.oe-footer-tagline{font-size:44px;margin-top:0}.oe-footer-column{padding:0}.oe-footer-column::before{display:none}.oe-footer-column h2{margin-bottom:20px}.oe-footer-column li,.oe-footer-column li a{font-size:18px}.oe-footer-column:last-child{grid-column:1;grid-row:3}.oe-footer-bottom{gap:18px;flex-wrap:wrap;font-size:10px}.oe-footer-column ul{gap:12px}}

.oe-footer-wordmark{display:block;width:100%;height:auto;margin:24px 0 0;padding-bottom:24px}
@media(max-width:600px){.oe-footer{margin:0 16px 16px}.oe-footer-wordmark{margin-top:12px;padding-bottom:20px}}
/* Layer the oversized wordmark behind the lower navigation rows. */
.oe-footer-inner{display:grid;isolation:isolate}
.oe-footer-grid{grid-area:1 / 1;z-index:1}
.oe-footer-wordmark{grid-area:1 / 1;align-self:start;margin:264px 0 0;padding:0;z-index:0;pointer-events:none}
.oe-footer-bottom{grid-area:2 / 1;position:relative;z-index:1;align-self:end}
@media(max-width:1000px){.oe-footer-wordmark{margin-top:400px}}
@media(max-width:600px){.oe-footer-wordmark{margin-top:384px}}

/* Keep equal inner gutters around the wordmark, with utilities overlaid at its foot. */
.oe-footer-inner{position:relative;padding-bottom:32px}
.oe-footer-wordmark{align-self:end}
.oe-footer-bottom{position:absolute;left:32px;right:32px;bottom:32px;padding:0;justify-content:space-between}
.oe-footer-socials{display:flex;align-items:center;gap:20px}
.oe-footer-social{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;color:#343434;border-radius:2px}
.oe-footer-social svg{display:block;transition:opacity .16s ease}
.oe-footer-social:hover svg{opacity:.7}
.oe-footer-social:focus-visible{outline:2px solid #343434;outline-offset:3px}
@media(max-width:600px){.oe-footer-inner{padding-bottom:20px}.oe-footer-bottom{left:20px;right:20px;bottom:20px;gap:12px}.oe-footer-socials{gap:12px}}

/* Give the footer more breathing room and strengthen its small labels. */
.oe-footer-grid{padding-top:104px}
.oe-footer-wordmark{margin-top:344px}
.oe-footer-column h2{font-size:13px}
.oe-footer-bottom{font-size:13px}
.oe-footer-tagline{font-weight:500;background:url('/_local/optimized/blurred1.webp') center/cover no-repeat;background-clip:text;-webkit-background-clip:text;color:transparent;-webkit-text-fill-color:transparent}
@media(min-width:601px) and (max-width:1000px){.oe-footer-wordmark{margin-top:480px}}
@media(max-width:600px){.oe-footer-grid{padding-top:64px;padding-bottom:64px}.oe-footer-wordmark{margin-top:432px}.oe-footer-bottom{font-size:12px}.oe-footer-column h2{font-size:13px}}
/* A warmer crop and a larger desktop footer tagline. */
.oe-footer-tagline{background-size:180% auto;background-position:18% 58%}
@media(min-width:1001px){.oe-footer-tagline{font-size:56px}}
.oe-footer-tagline{background-position:100% 62%}
/* Compact wordmark preview within the left half of the footer. */
@media(min-width:1001px){.oe-footer-wordmark{width:50%;margin-top:160px;justify-self:start}}
/* The wordmark sits behind the footer until an extra end-of-page scroll lifts it. */
.oe-footer{position:relative;z-index:2}
.oe-footer-reveal{position:fixed;left:clamp(48px,4.444vw,64px);right:clamp(48px,4.444vw,64px);bottom:32px;z-index:0;visibility:hidden;pointer-events:none}
/* The reveal sits beneath the page: main and the footer paint above it, so the wordmark only shows in the gap the lifted footer opens. */
body>main,main.site-main{position:relative;z-index:1;background:#fff}
.oe-footer{position:relative;z-index:2}
.oe-footer-reveal-wordmark{display:block;width:100%;height:auto}
.oe-footer-reveal.is-visible{visibility:visible}
@media(max-width:600px){.oe-footer-reveal{left:36px;right:36px;bottom:17px}}

/* Slow movement stays within the green and gold crop of the tagline. */
.oe-footer-tagline{animation:footer-tagline-drift 18s ease-in-out infinite alternate}
@keyframes footer-tagline-drift{from{background-position:100% 62%}to{background-position:88% 70%}}
@media(prefers-reduced-motion:reduce){.oe-footer-tagline{animation:none}}
@media(max-width:600px){.oe-footer .oe-footer-login{font-size:18px}}

/* Suppress viewport rubber-banding only. The inherited body overflow-x
   creates a nested scroll container: contain/none there traps wheel/touch input
   before it can reach the actual document scroller on interior pages. */
html:has(.oe-footer-reveal){overscroll-behavior-y:none}

.oe-footer-trademark{font-size:.3em;line-height:0;vertical-align:super;margin-left:.12em;color:#697b69;-webkit-text-fill-color:currentColor}

.oe-footer-pitch{font-size:clamp(20px,1.52778vw,24px);font-weight:400;line-height:1.35;letter-spacing:normal;color:#343434;max-width:560px;margin:32px 0 0;text-wrap:pretty}
@media(max-width:600px){.oe-footer-pitch{margin-top:24px;font-size:20px}}
/* Position utilities against the inner box, not its inset grid area. */
.oe-footer-bottom{grid-area:auto}

/* Reveal a directional arrow without shifting the footer navigation. */
.oe-footer-column a,.oe-footer-legal a{position:relative;display:inline-block}
.oe-footer-column a::after,.oe-footer-legal a::after{content:"→";position:absolute;left:100%;top:0;margin-left:.22em;opacity:0;transform:translateX(-4px);transition:opacity .16s ease,transform .16s ease;pointer-events:none}
.oe-footer-column a:hover::after,.oe-footer-column a:focus-visible::after,.oe-footer-legal a:hover::after,.oe-footer-legal a:focus-visible::after{opacity:1;transform:translateX(0)}
@media(prefers-reduced-motion:reduce){.oe-footer-column a::after,.oe-footer-legal a::after{transition:none}}

/* Legal links, copyright and social icons share a ruled bottom row. */
.oe-footer-bottom{position:relative;grid-area:2 / 1;left:auto;right:auto;bottom:auto;border-top:1px solid rgba(52,52,52,.18);padding:24px 0 0;font-family:inherit;text-transform:none;letter-spacing:normal}
.oe-footer-legal{display:flex;align-items:center;flex-wrap:wrap;gap:28px}
.oe-footer-legal a{color:#343434}
.oe-footer-copyright{color:#6f7069;white-space:nowrap}
@media(max-width:600px){.oe-footer-bottom{align-items:flex-start;row-gap:20px}.oe-footer-legal{gap:16px 24px}.oe-footer-copyright{flex-basis:100%;white-space:normal}}
