.icon { display: inline-block; flex: none; width: 18px; height: 18px; vertical-align: middle; }
.header-link { display: inline-flex; align-items: center; gap: 6px; min-height: 44px; white-space: nowrap; }
.header-link span { margin: 0; }
.header-link .icon-instagram { width: 17px; height: 17px; }
.header-link .icon-arrow-up-right { width: 15px; height: 15px; }
.primary-nav a { display: inline-flex; align-items: center; min-height: 44px; white-space: nowrap; }
.mobile-nav a { display: flex; align-items: center; min-height: 48px; gap: 6px; }
.wordmark { min-height: 44px; }
.button .icon, .text-link .icon { width: 18px; height: 18px; }
.button { min-height: 50px; }
.text-link { display: inline-flex; align-items: center; gap: 12px; min-height: 44px; padding-top: 7px; }
.occasion-number { display: none; }
.occasion-overlay .icon { float: right; width: 17px; height: 17px; }
.footer-right { gap: 6px; }
.footer-right a { display: inline-flex; align-items: center; gap: 6px; min-height: 44px; }
.footer-right .icon { width: 16px; height: 16px; }
.footer-right small { margin-top: 10px; }
.collection-enquiry { margin-top: 32px; }
@media (max-width: 1330px) and (min-width: 1051px) {
  .header-inner { gap: 15px; padding-inline: 26px; }
  .primary-nav { gap: 16px; }
  .wordmark { font-size: 19px; }
  .primary-nav a, .header-link { font-size: 10px; }
}
@media (max-width: 1050px) {
  .header-link, .primary-nav { display: none; }
}
@media (max-width: 700px) {
  .footer-right { align-items: flex-start; }
  .occasion-overlay strong { font-size: clamp(27px, 8vw, 35px); }
}
