/* Only small-screen composition changes; desktop artwork and footer stay intact. */
@media(max-width:768px){
 .footer-main{grid-template-columns:1fr;gap:40px}
 .footer-pages{grid-row:auto;grid-column:auto;display:grid;grid-template-columns:1fr 1fr;gap:18px}
 .footer-pages .eyebrow{grid-column:1/-1}
 .footer-brand{text-align:center}
 .footer-brand>a{display:block;width:fit-content;margin-inline:auto}
 .footer-brand img{margin-inline:auto}
 .footer-brand p{margin-inline:auto}
 #contact .footer-intro{text-align:center}
 #contact .footer-grid{grid-template-columns:minmax(0,1fr)}
 #contact .footer-intro,#contact .footer-enquiry{min-width:0}
 #contact .footer-enquiry-button{font-size:clamp(1.8rem,9vw,2.3rem);gap:16px}
 #contact .footer-logo{display:block;margin-inline:auto}
 .celebration-stage .hero-leopard-wrap{top:auto;bottom:0;height:34%;width:36%;max-width:none}
 .celebration-stage .hero-leopard-img{width:100%;height:100%;max-height:none;object-fit:contain;object-position:bottom}
 .celebration-stage .celebration-brand-lockup{position:absolute;left:0;top:39%;width:100%;padding:0 20px;transform:translateY(-50%)}
 .celebration-stage .brand-title{font-size:clamp(2.2rem,10vw,3.7rem);letter-spacing:.12em;white-space:nowrap}
 .celebration-stage .brand-subtitle{font-size:clamp(1.1rem,5vw,1.65rem)}
 .celebration-stage .brand-badge{font-size:.61rem;letter-spacing:.25em}
 .celebration-stage .brand-badge:before,.celebration-stage .brand-badge:after{width:14px}
 .celebration-stage .celebration-svg-stage{top:39%;height:72%;width:100%;max-height:none}
}
