/* The final invitation shares one forest surface with the existing footer. */
#next-market {
 --closing-forest:#214737;
 --paper:#fbfaf7;
 position:relative; isolation:isolate; overflow:hidden;
 min-height:clamp(560px,36.3vw,694px);
 background:var(--closing-forest); color:var(--paper);
}
#next-market::before { content:none; }
.closing-scope { position:absolute; z-index:-1; inset:0; width:100%; height:100%; pointer-events:none; }
.closing-content { width:min(100%,1910px); margin-inline:auto; padding:clamp(94px,8.7vw,166px) 6.5% 82px; }
#closing-title { margin:0; max-width:1120px; font:500 clamp(54px,5.12vw,98px)/1.02 var(--display); letter-spacing:-.04em; }
#closing-title span { display:block; }
.closing-content > p { max-width:min(57vw,850px); margin:32px 0 0; color:#c3cec6; font-size:clamp(18px,1.55vw,29px); line-height:1.4; letter-spacing:-.025em; }
.closing-demo { display:inline-flex; justify-content:space-between; align-items:center; gap:36px; min-height:58px; margin-top:32px; padding:15px 26px; border-radius:6px; background:var(--mint); color:#142e23; font-size:clamp(16px,1.15vw,21px); font-weight:500; line-height:1.4; transition:background .2s ease; }
.closing-demo svg { width:24px; height:24px; fill:none; stroke:currentColor; stroke-width:1.5; stroke-linecap:round; stroke-linejoin:round; transition:transform .3s var(--ease-out); }
.closing-demo:hover { background:#d4e8cc; }
.closing-demo:hover svg, .closing-demo:focus-visible svg { transform:translateX(4px); }
.closing-demo:focus-visible, .closing-motion-toggle:focus-visible { outline:2px solid var(--paper); outline-offset:5px; }
.closing-motion-toggle { position:absolute; right:28px; bottom:20px; display:grid; place-items:center; width:32px; height:32px; padding:6px; border:1px solid #c6ddbc40; border-radius:5px; background:transparent; color:#c6ddbc; cursor:pointer; }
.closing-motion-toggle[hidden] { display:none; }
.closing-motion-toggle svg { width:18px; height:18px; fill:none; stroke:currentColor; stroke-width:1.4; stroke-linecap:round; }
.closing-motion-toggle:hover { background:#c6ddbc12; }
.closing-play, .closing-motion-toggle[aria-pressed="true"] .closing-pause { display:none; }
.closing-motion-toggle[aria-pressed="true"] .closing-play { display:block; }
#next-market + .site-end { background:#214737; color:var(--paper); border-top:1px solid #c6ddbc40; padding:28px 6.5% 24px; min-height:130px; }
#next-market + .site-end p { justify-self:end; color:#c3cec6; }
#next-market + .site-end .brand { color:inherit; }
#next-market + .site-end .brand-mark .mark-accent { fill:#c6ddbc; }
#next-market + .site-end .wordmark-scope { color:#c6ddbc; }
#next-market + .site-end > small { color:#adbbb1; }
@media (max-width:1100px) and (min-width:761px) {
 #next-market { min-height:550px; }
 #closing-title { font-size:clamp(48px,5.1vw,58px); }
 .closing-content { padding-top:100px; }
 .closing-content > p { max-width:66%; font-size:19px; }
 .closing-scope { opacity:.65; }
}
@media (max-width:760px) {
 #next-market { min-height:0; }
 .closing-content { padding:64px 26px 270px; }
 #closing-title { max-width:540px; font-size:clamp(38px,8.7vw,58px); line-height:1.06; }
 #closing-title span { display:inline; }
 .closing-content > p { max-width:480px; margin-top:24px; font-size:18px; line-height:1.5; }
 .closing-demo { min-height:54px; margin-top:28px; gap:25px; padding:14px 20px; font-size:16px; }
 .closing-scope { inset:auto -20px -60px auto; width:1000px; max-width:none; height:432px; opacity:.75; }
 .closing-motion-toggle { right:22px; bottom:18px; }
 #next-market + .site-end { padding:24px 26px; min-height:150px; }
 #next-market + .site-end p { justify-self:start; }
}
@media (prefers-reduced-motion:reduce) {
 .closing-scan { display:none; }
 .closing-demo, .closing-demo svg { transition:none; }
 .closing-demo:hover svg, .closing-demo:focus-visible svg { transform:none; }
}
