.slogan>div{animation-duration:var(--slogan-duration,45s)}
.slogan-copy{display:block;flex:0 0 auto;white-space:pre}
.slogan-measure{position:absolute;left:0;top:0;visibility:hidden;pointer-events:none;white-space:pre}
.footer-grid .footer-contact-link{display:flex;align-items:flex-start;gap:9px}
.footer-contact-link>span{min-width:0;overflow-wrap:anywhere}
.footer-contact-icon{flex:0 0 20px;width:20px;height:20px;object-fit:contain;margin-top:2px}
.footer-grid .social-icons>a{width:44px;height:44px;min-height:44px;background:transparent;border-radius:0}
.footer-grid .social-icons>a>img{width:44px;height:44px;object-fit:contain}
.contact-grid>div{min-width:0}
.contact-address-row,.contact-grid .contact-link{display:flex;align-items:flex-start;gap:9px}
.contact-address-row>span,.contact-link>span{min-width:0;overflow-wrap:anywhere}
.contact-icon{flex:0 0 22px;width:22px;height:22px;object-fit:contain}
.contact-grid .social-icons>a{width:44px;height:44px;min-height:44px;flex:0 0 44px;background:transparent;border-radius:0}
.contact-grid .social-icons>a>img{display:block;width:44px;height:44px;object-fit:contain}
.enquiry-intro .enquiry-contact{display:grid;gap:10px;max-width:100%;margin:28px 0 40px}
.enquiry-intro .enquiry-contact>div{align-items:center;gap:14px;min-width:0}
.enquiry-contact dt{display:flex;align-items:center;gap:8px;flex:0 0 100px;width:auto}
.enquiry-contact dt svg{width:20px;height:20px}
.enquiry-contact dd{min-width:0}
.enquiry-contact a{display:inline-flex;align-items:center;min-height:32px;overflow-wrap:anywhere;font-weight:600}
.enquiry-contact a:hover,.enquiry-contact a:focus-visible{text-decoration:underline;text-underline-offset:4px}
@media(min-width:1150px){
  .search-area>.directory-search{top:-24px}
  .category-circle{--node-size:118px}
  .category-circle.wheel-orbiting{--centre-size:228px;--label-space:64px}
  .category-icon svg{width:72px;height:72px}
  .category>span:last-child{font-size:18px;max-width:180px}
  html[data-visitor-text="large"] .category>span:last-child{font-size:20px;max-width:190px}
  .circle-centre>a,.circle-centre strong{font-size:18px}
  .event-card .event-poster{height:280px;aspect-ratio:auto;object-fit:cover;object-position:center}
  .event-card .event-copy{padding:20px}
  .event-heading{margin-bottom:14px}
  .carousel-controls{gap:6px}
  .carousel-controls .icon-button{width:32px;height:32px;min-height:32px}
  .carousel-controls .icon-button svg{width:16px;height:16px}
  .footer-grid nav>a{min-height:24px;padding-block:0;line-height:1.6}
  .footer-grid .footer-contact-link{min-height:30px}
  .footer-group summary{min-height:24px;margin-bottom:8px}
  .visit>.container{width:min(1630px,84.895833%)}
  .visit h2{font-size:60px;margin-bottom:64px}
  .contact-grid{grid-template-columns:minmax(0,412fr) minmax(0,488fr) minmax(0,438fr) minmax(230px,292fr);gap:0;padding-top:0;font-size:20px;line-height:1.55}
  .contact-grid>img{width:300px;max-width:calc(100% - 24px)}
  .contact-grid>div{padding-right:24px}
  .contact-grid>div:last-child{padding-right:0}
  .contact-grid>div:nth-child(3){padding-right:0}
  .contact-grid h3{font-size:32px;line-height:1.22;margin-bottom:4px}
  .contact-grid .contact-link{gap:11px;align-items:flex-start}
  .contact-grid .contact-link .contact-icon{flex-basis:30px;width:30px;height:30px}
  .contact-grid .contact-link img[src$="contact-mail.svg"]{height:22px;margin-top:4px}
  .contact-address-row .contact-icon{height:30px;margin-top:2px}
  .contact-grid .social-icons{gap:18px}
  .contact-grid .social-icons>a{flex-basis:44px}
  html[data-visitor-text="large"] .contact-grid{font-size:23px}
  .footer-grid{grid-template-columns:1.5fr .65fr 1.3fr 200px;gap:32px}
  .footer-group summary{color:var(--desktop-orange)}
}
@media(min-width:1150px) and (pointer:coarse){
  .carousel-controls .icon-button{width:44px;height:44px;min-height:44px}
  .footer-grid nav>a{min-height:44px}
  .footer-grid .footer-contact-link{min-height:44px}
  .footer-group summary{min-height:44px}
}
@media(max-width:600px){
  .carousel-controls{gap:0}
  .carousel-controls .icon-button{position:relative;isolation:isolate;width:44px;height:44px;min-height:44px;border:0;background:transparent;padding:0}
  /* Keep the touch target larger than its visible button. */
  .carousel-controls .icon-button::before{content:"";position:absolute;inset:6px;z-index:-1;background:#fff;border:1px solid #d6d0c5;border-radius:6px;pointer-events:none}
  .carousel-controls .icon-button svg{width:16px;height:16px}
  .search-area>.directory-search{top:-12px}
  .category-watermark{
    inset:auto;left:50%;top:var(--orbit-y);
    width:min(100%,calc(var(--orbit-radius) * 390 / 139));height:auto;aspect-ratio:390/420;
    transform:translate(-50%,-46.428571%);opacity:1;pointer-events:none;
    background-image:url("assets/artwork/mobile-category-words.svg?v=0.1.52");
    background-position:center;background-size:100% 100%;background-repeat:no-repeat;
  }
  .category-watermark>span{visibility:hidden}
  .enquiry-intro .enquiry-contact{margin:18px 0 0}
  .enquiry-contact dt{flex-basis:84px}
  .enquiry-contact a{min-height:44px}
}
@media(min-width:1150px) and (max-width:1799.999px){
  .visit h2{font-size:48px;margin-bottom:52px}
  .contact-grid{grid-template-columns:minmax(0,412fr) minmax(0,488fr) minmax(316px,438fr) minmax(206px,292fr);font-size:16px}
  .contact-grid>img{width:240px}
  .contact-grid>div{padding-right:16px}
  .contact-grid>div:nth-child(3),.contact-grid>div:last-child{padding-right:0}
  .contact-grid h3{font-size:26px;margin-bottom:2px}
  .contact-grid .contact-link{gap:10px;min-height:34px}
  .contact-grid .contact-link .contact-icon{flex-basis:26px;width:26px;height:26px}
  .contact-grid .contact-link img[src$="contact-mail.svg"]{height:19px;margin-top:3px}
  .contact-address-row .contact-icon{flex-basis:18px;width:18px;height:26px;margin-top:0}
  .contact-grid .social-icons{gap:10px}
  .contact-grid .social-icons>a{place-items:start center}
  .contact-grid .social-icons>a>img{width:36px;height:36px}
  html[data-visitor-text="large"] .contact-grid{font-size:19px}
}
@media(min-width:1150px) and (max-width:1439.999px){
  .visit h2{font-size:40px;margin-bottom:40px}
  .contact-grid{grid-template-columns:minmax(200px,412fr) minmax(0,488fr) minmax(270px,438fr) minmax(176px,292fr);font-size:14px}
  .contact-grid>img{width:200px}
  .contact-grid h3{font-size:22px;margin-bottom:0}
  .contact-grid .contact-link{gap:9px;min-height:28px}
  .contact-grid .contact-link .contact-icon{flex-basis:20px;width:20px;height:20px}
  .contact-grid .contact-link img[src$="contact-mail.svg"]{height:15px;margin-top:3px}
  .contact-address-row .contact-icon{flex-basis:15px;width:15px;height:21px}
  .contact-grid .social-icons{gap:0}
  .contact-grid .social-icons>a>img{width:30px;height:30px}
  html[data-visitor-text="large"] .contact-grid{font-size:17px}
}
