.wonderland-footer{background:var(--page-background,#fffcf8);border-top:1px solid var(--border)}
.footer-columns{display:grid;grid-template-columns:1.25fr .8fr 1fr;gap:clamp(32px,6vw,90px);padding-block:64px 48px;align-items:start}
.footer-logo{display:block;width:240px;max-width:100%;height:100px;position:relative;overflow:hidden;margin-top:-20px;margin-left:-24px}
.footer-logo img{position:absolute;width:240px;max-width:none;left:0;top:50%;transform:translateY(-50%)}
.footer-about p{font-size:16px;line-height:1.7;max-width:32ch;color:var(--muted);margin:15px 0 0}
.footer-links,.footer-contact{display:flex;flex-direction:column;align-items:flex-start;gap:12px}
.wonderland-footer h2{font-size:20px;font-weight:500;line-height:1.3;color:var(--purple);margin:0 0 10px}
.footer-links a,.footer-contact a,.footer-contact address{font-size:16px;line-height:1.6;overflow-wrap:anywhere}
.footer-contact address{font-style:normal;color:var(--muted);margin:4px 0}
.footer-links a:hover,.footer-contact a:hover,.footer-bottom a:hover{text-decoration:underline;text-underline-offset:4px;color:var(--purple)}
.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid var(--border);padding-block:22px;color:var(--muted);font-size:14px}
.footer-bottom p{margin:0}
@media(max-width:800px){.footer-columns{grid-template-columns:1fr 1fr;gap:36px;padding-block:44px 36px}.footer-about{grid-column:1/-1}.footer-about p{max-width:48ch}.footer-logo{margin-top:-15px}}
@media(max-width:480px){.footer-columns{grid-template-columns:1fr;gap:32px}.footer-about{grid-column:auto}.footer-bottom{flex-direction:column;align-items:flex-start;gap:10px}.footer-logo{width:220px;height:90px}.footer-logo img{width:220px}}

/* Compact footer: brand, navigation, and social links. */
.footer-columns{grid-template-columns:1.1fr 1fr .7fr;gap:48px;padding-block:38px 30px}
.footer-logo{width:205px;height:80px;margin-top:-8px;margin-left:-20px}
.footer-logo img{width:205px}
.footer-links{gap:8px}
.footer-social-icons{display:flex;gap:14px;margin-top:18px}
.social-preview{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border:1px solid #d6c9df;border-radius:50%;color:var(--purple)}
.social-preview svg{width:25px;height:25px}
.footer-bottom{padding-block:16px}
@media(max-width:800px){.footer-columns{grid-template-columns:1fr 1fr;gap:26px 36px}.footer-about{grid-column:1/-1}}
@media(max-width:400px){.footer-columns{gap:24px}.wonderland-footer h2{font-size:18px}}
/* A short, single-row footer on desktop, with natural wrapping on phones. */
.footer-columns{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-block:18px 10px}
.footer-about{flex:0 0 145px}
.footer-logo{width:145px;height:56px;margin:0 0 0 -14px}
.footer-logo img{width:145px;left:0}
.footer-links{flex-direction:row;flex-wrap:wrap;justify-content:center;align-items:center;gap:12px 24px}
.footer-links a{font-size:14px}
.footer-social-icons{gap:10px;margin:0}
.social-preview{width:36px;height:36px}.social-preview svg{width:21px;height:21px}
.footer-bottom{border:0;justify-content:center;padding-block:0 14px;font-size:12px}
@media(max-width:800px){.footer-columns{gap:16px;flex-wrap:wrap;padding-block:16px 10px}.footer-about{flex-basis:145px}.footer-links{order:3;width:100%;gap:10px 20px}.footer-bottom{align-items:center;padding-bottom:12px}.footer-social{margin-left:auto}}
@media(max-width:400px){.footer-links{gap:8px 16px}.footer-links a{font-size:13px}.footer-logo{width:145px;height:56px}.footer-logo img{width:145px}}

/* Recognizable platform colors for the social icons. */
.social-preview.social-facebook{background:#1877f2;border-color:#1877f2;color:#fff}
.social-preview.social-instagram{background:radial-gradient(circle at 30% 100%,#feda75 0%,#fa7e1e 25%,#d62976 52%,#962fbf 75%,#4f5bd5 100%);border:0;color:#fff}

/* Visible keyboard focus for the live social links. */
.social-preview:focus-visible{outline:3px solid var(--purple);outline-offset:4px}
.social-preview:hover{filter:brightness(.92)}
