/**
 * Aurelle Jewels — child theme of Hummingbird.
 * Design: hbdemos/design/aurelle-jewels/PLAN.md and the approved canvas "Aurelle Jewels".
 * A Paris jewellery house, dressed like its gift box: Porcelain page, Ivory cards, Velvet green for the one call to
 * action, the top bar and the footer, Champagne hairlines, Garnet for sale prices only. Cormorant Garamond headings,
 * Jost text. Square corners, 1px rules, and arched frames for the hero, the collections and the bridal photo.
 * The signature is the ring sizer: a circle drawn at the true inner diameter of a ring size (assets/js/custom.js).
 * Colours, fonts and layouts come from Theme Kit tokens; this file adds what tokens cannot say.
 * Author: iamshoaibktk@gmail.com · Licence: AFL-3.0
 */
body.hbk {
  --au-porcelain: var(--hb-bg); --au-ivory: color-mix(in srgb, var(--hb-bg) 56%, #fff); --au-blush: var(--hb-surface); --au-velvet: var(--hb-primary); --au-velvet-2: color-mix(in srgb, var(--hb-primary) 75%, #000); --au-mint: color-mix(in srgb, var(--hb-bg) 81%, var(--hb-primary)); --au-mint-2: color-mix(in srgb, var(--hb-bg) 62%, var(--hb-primary));
  --au-champ: var(--hb-accent); --au-champ-text: color-mix(in srgb, var(--hb-accent) 77%, #000); --au-eyebrow: color-mix(in srgb, var(--hb-accent) 59%, #000); --au-champ-light: oklch(from var(--hb-accent) calc(l + 0.151) calc(c * 0.88) h);
  --au-ink: var(--hb-text); --au-ink-2: color-mix(in srgb, var(--hb-text) 85%, #fff); --au-stone: var(--hb-muted); --au-line: var(--hb-border); --au-field: var(--hb-field-border); --au-garnet: var(--hb-sale);
  --au-serif: 'Cormorant Garamond', Georgia, serif;
  --au-arch: 999px 999px 0 0;
  --bs-primary-text-emphasis: var(--au-garnet);
  background: var(--au-porcelain); color: var(--hb-text); font-size: 1rem; line-height: 1.6;
}

/* ---------- Type: Cormorant Garamond headings, sentence case ---------- */
body.hbk :is(h1, h2, h3, .h1, .h2, .h3, .hbk-title, .page-title-section, .product__name) { font-family: var(--au-serif); font-weight: 500; letter-spacing: 0; text-transform: none; color: var(--hb-text); }
body.hbk .hbk-title { font-size: clamp(2.5rem, 3.9vw, 3.5rem); line-height: 1; }
body.hbk .hbk-eyebrow { margin: 0; color: var(--au-eyebrow); font-size: .9375rem; font-weight: 500; letter-spacing: 0; text-transform: none; }
body.hbk a { color: var(--hb-text); text-underline-offset: 5px; }
body.hbk a:hover { color: var(--au-velvet); }
body.hbk a.btn { color: var(--bs-btn-color); }
body.hbk a.btn:hover { color: var(--bs-btn-hover-color); }
body.hbk :focus-visible { outline: 2px solid var(--au-velvet); outline-offset: 2px; }
body.hbk ::selection { background: var(--au-velvet); color: var(--au-porcelain); }

/* ---------- Top bar: Velvet, three promises between champagne diamonds ---------- */
body.hbk .hbk-topbar { background: var(--au-velvet); color: #e3ebe7; font-size: .8125rem; letter-spacing: 0; }
body.hbk .hbk-topbar__inner { gap: 0; padding: .5625rem 1rem; }
body.hbk .hbk-topbar__msg + .hbk-topbar__msg::before { content: "◇"; margin: 0 1rem; color: var(--au-champ); }

/* ---------- Header: search left, the AURELLE mark centred, Account and Bag right; the menu centred below ---------- */
body.hbk #header, body.hbk .header-bottom { background: var(--au-porcelain); }
body.hbk .header-bottom { border-bottom: 1px solid var(--au-line); }
body.hbk .header-bottom .header-block__action-btn { gap: .5rem; padding-left: 0 !important; padding-right: 0 !important; color: var(--hb-text); font-size: .9375rem; font-weight: 400; }
body.hbk .header-bottom .header-block__action-btn:hover { color: var(--au-velvet); }
body.hbk .header-bottom :is(#_desktop_ps_customersignin, #_desktop_ps_shoppingcart) .header-block__icon { display: none; }
body.hbk .header-bottom .header-block__title { display: inline !important; }
body.hbk .header-block__badge { position: static; display: inline-grid; place-items: center; min-width: 1.375rem; height: 1.375rem; margin-left: .125rem; padding: 0 .3125rem; border-radius: 999px; background: var(--au-velvet) !important; color: var(--au-porcelain) !important; font-size: .75rem; font-weight: 500; }
body.hbk .hbk-search-trigger .header-block__action-btn { gap: .625rem; color: var(--hb-text); font-size: .9375rem; }
body.hbk .hbk-search-trigger__icon { display: block !important; }
@media (min-width: 992px) {
  body.hbk .header-bottom__row { position: relative; flex-wrap: wrap; align-items: center !important; min-height: 0; margin: 0; }
  body.hbk .header-bottom__row > * { width: auto; flex: 0 0 auto; padding-left: 0; padding-right: 0; }
  body.hbk .header-bottom__logo { position: absolute; left: 50%; top: 0; height: 4.75rem; display: flex; align-items: center; transform: translateX(-50%); padding: 0; z-index: 1; }
  body.hbk .header-bottom__logo img.logo { width: auto !important; max-width: none; height: 3rem !important; }
  body.hbk .hbk-search-trigger { order: 1; height: 4.75rem; margin: 0; }
  body.hbk #_desktop_ps_customersignin { order: 2; margin-left: auto !important; }
  body.hbk #_desktop_ps_shoppingcart { order: 3; margin-left: 1.75rem; }
  body.hbk .header-bottom__row > :is(#_desktop_ps_customersignin, #_desktop_ps_shoppingcart) { display: flex; align-items: center; height: 4.75rem; }
  body.hbk .header-bottom__row :is(.ps-customersignin, .ps-shoppingcart) { display: flex; align-items: center; }
  body.hbk .header-bottom__row :is(#_desktop_ps_customersignin, #_desktop_ps_shoppingcart) .header-block { margin: 0; padding: 0; }
  body.hbk .ps-mainmenu--desktop { order: 10; flex: 0 0 100%; width: 100%; display: flex; justify-content: center; border-top: 1px solid var(--au-line); }
  body.hbk .ps-mainmenu__tree { flex-wrap: nowrap; justify-content: center; gap: 2.25rem; }
  body.hbk .ps-mainmenu__tree-link { white-space: nowrap; padding: .9375rem 0 .8125rem; border-bottom: 1px solid transparent; color: var(--hb-text); font-size: .9375rem; font-weight: 400; letter-spacing: 0; text-transform: none; }
  body.hbk .ps-mainmenu__tree-link:hover, body.hbk .ps-mainmenu__tree-item.current > .ps-mainmenu__tree-link { border-bottom-color: var(--au-champ); color: var(--hb-text); }
}
body.hbk .ps-mainmenu .dropdown-menu, body.hbk .ps-mainmenu__dropdown { border: 1px solid var(--au-line); border-radius: 0; background: var(--au-ivory); }
@media (max-width: 991.98px) {
  body.hbk .header-bottom__row { min-height: 3.75rem; align-items: center !important; }
  body.hbk .header-bottom__logo { order: 2; flex: 1 1 0; justify-content: center; margin: 0 !important; padding: 0; }
  body.hbk .header-bottom__logo img.logo { height: 2.125rem !important; width: auto !important; max-width: 100%; }
  body.hbk .ps-mainmenu--desktop { order: -1; flex: 0 0 auto; width: auto; padding-right: .25rem; }
  body.hbk :is(.ps-mainmenu__mobile-toggle, .main-menu__toggler) { color: var(--hb-text); }
  body.hbk .header-bottom__row > :is(#_desktop_ps_customersignin, #_desktop_ps_shoppingcart):empty, body.hbk .header-bottom__row > :is(#_desktop_ps_customersignin, #_desktop_ps_shoppingcart):not(:has(*)) { display: none; }
  body.hbk .hbk-search-trigger { order: 1; }
  body.hbk .hbk-search-trigger__label { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
  body.hbk #_mobile_ps_customersignin { order: 3; }
  body.hbk #_mobile_ps_shoppingcart { order: 4; }
  body.hbk #_mobile_ps_shoppingcart .header-block__title { display: none !important; }
  body.hbk #_mobile_ps_shoppingcart .header-block__action-btn { position: relative; }
  body.hbk #_mobile_ps_shoppingcart .header-block__badge { position: absolute; top: .25rem; right: -.25rem; min-width: 1rem; height: 1rem; font-size: .625rem; }
}
/* the search panel */
body.hbk .hbk-search { background: rgba(var(--hb-primary-rgb), .35); }
body.hbk :is(.hbk-search__panel, .hbk-search__inner) { border-radius: 0; background: var(--au-porcelain); color: var(--hb-text); }
body.hbk .hbk-search :is(input[type="search"], .hbk-search__input) { border: 0; border-bottom: 1px solid var(--au-ink); border-radius: 0; background: transparent; font-family: var(--au-serif); font-size: 2rem; }

/* ---------- Buttons: Velvet for the main action, outlined Ink for the second ---------- */
body.hbk .btn { border-radius: 0; font-weight: 500; letter-spacing: 0; text-transform: none; }
body.hbk .btn-primary { --bs-btn-bg: var(--au-velvet); --bs-btn-border-color: var(--au-velvet); --bs-btn-color: var(--au-porcelain); --bs-btn-hover-bg: var(--au-velvet-2); --bs-btn-hover-border-color: var(--au-velvet-2); --bs-btn-hover-color: var(--au-porcelain); --bs-btn-active-bg: var(--au-velvet-2); --bs-btn-active-border-color: var(--au-velvet-2); --bs-btn-active-color: var(--au-porcelain); --bs-btn-disabled-bg: var(--au-line); --bs-btn-disabled-border-color: var(--au-line); --bs-btn-disabled-color: color-mix(in srgb, var(--hb-muted) 91%, #fff); min-height: 3.375rem; padding-left: 1.75rem; padding-right: 1.75rem; }
body.hbk .btn-primary:focus-visible { box-shadow: 0 0 0 2px var(--au-porcelain), 0 0 0 4px var(--au-velvet); outline: none; }
body.hbk :is(.btn-outline-primary, .btn-secondary, .btn-outline-secondary) { --bs-btn-bg: transparent; --bs-btn-color: var(--au-ink); --bs-btn-border-color: var(--au-ink); --bs-btn-hover-bg: var(--au-ink); --bs-btn-hover-color: var(--au-porcelain); --bs-btn-hover-border-color: var(--au-ink); background: transparent; border: 1px solid var(--au-ink); color: var(--hb-text); }
body.hbk :is(.btn-outline-primary, .btn-secondary, .btn-outline-secondary):hover { background: var(--au-ink); color: var(--au-porcelain); }

/* ---------- Fields: 48px on Ivory, 1px borders, Velvet focus ring, Garnet errors ---------- */
body.hbk :is(.form-control, .form-select) { min-height: 3rem; border: 1px solid var(--au-field); border-radius: 0; background-color: var(--au-ivory); color: var(--hb-text); }
body.hbk textarea.form-control { min-height: 6rem; }
body.hbk :is(.form-control, .form-select):hover { border-color: var(--au-stone); }
body.hbk :is(.form-control, .form-select):focus { border-color: var(--au-velvet); background-color: var(--au-ivory); box-shadow: 0 0 0 3px rgba(var(--hb-primary-rgb), .18); outline: none; }
body.hbk .form-control::placeholder { color: color-mix(in srgb, var(--hb-muted) 74%, #fff); }
body.hbk :is(.form-label, .form-control-label, label.required) { color: var(--hb-text); font-size: .9375rem; font-weight: 500; }
body.hbk :is(.form-text, .form-control-comment) { color: var(--au-stone); font-size: .8125rem; }
body.hbk .form-check-input { width: 1.25rem; height: 1.25rem; border: 1px solid var(--au-field); border-radius: 0; background-color: var(--au-ivory); }
body.hbk .form-check-input[type="radio"] { border-radius: 50%; }
body.hbk .form-check-input:checked { background-color: var(--au-velvet); border-color: var(--au-velvet); }
body.hbk .form-check-input:focus { box-shadow: 0 0 0 3px rgba(var(--hb-primary-rgb), .18); border-color: var(--au-velvet); }
body.hbk :is(.is-invalid, .form-control:user-invalid) { border-color: var(--au-garnet) !important; }
body.hbk :is(.invalid-feedback, .help-block .alert-danger) { color: var(--au-garnet); font-weight: 400; }
body.hbk .alert { border: 0; border-radius: 0; color: var(--hb-text); }
body.hbk .alert-danger { border-left: 3px solid var(--au-garnet); background: color-mix(in srgb, var(--hb-bg) 95%, var(--hb-sale)); }
body.hbk :is(.alert-info, .alert-success, .alert-warning) { background: var(--au-blush); }
body.hbk .modal-content { border: 0; border-radius: 0; background: var(--au-porcelain); }

/* ---------- Home ---------- */
body.hbk .hbk-section.hbk-space-l { padding-top: 6rem; padding-bottom: 6rem; }
body.hbk .hbk-section.hbk-bg-surface { background: var(--au-blush); }
body.hbk .hbk-head { margin-bottom: 2rem; }
body.hbk .hbk-head--split { align-items: baseline; }
body.hbk .hbk-head__link { color: var(--hb-text); font-weight: 500; text-decoration: underline; text-decoration-thickness: 1px; }

/* Hero: headline, text and two buttons; the solitaire pendant in a tall arch with its card */
body.hbk .hbk-s-hero .container { max-width: 1320px; }
body.hbk .hbk-hero--split { padding: 3.5rem 0 6rem; background: none; }
body.hbk .hbk-hero--split .hbk-hero__slide { position: relative; grid-template-columns: minmax(0, 6fr) minmax(0, 5fr); gap: 4.5rem; align-items: center; min-height: 0; background: none; }
body.hbk .hbk-hero--split .hbk-hero__content { position: static; padding: 0; background: none; }
body.hbk .hbk-hero--split .hbk-hero__box { display: flex; flex-direction: column; gap: 1.5rem; max-width: none; padding: 0; background: none; color: var(--hb-text); }
body.hbk .hbk-hero--split .hbk-hero__title { margin: 0; max-width: none; color: var(--hb-text); font-size: clamp(3.5rem, 7.2vw, 6.5rem); font-weight: 500; letter-spacing: -.01em; line-height: .92; }
body.hbk .hbk-hero--split .hbk-hero__text { color: var(--au-stone); font-size: 1.1875rem; }
body.hbk .hbk-hero--split .hbk-hero__text p { max-width: 40ch; margin: 0; }
body.hbk .au-hero__btns { display: flex; flex-wrap: wrap; gap: .75rem; }
body.hbk .au-hero__btns .hbk-btn { display: inline-flex; align-items: center; height: 3.375rem; min-height: 0; margin: 0; padding: 0 1.75rem; font-size: 1rem; }
body.hbk .hbk-hero--split .au-hero__media { position: relative; margin: 0; overflow: visible; border-radius: 0; background: none; }
body.hbk .hbk-hero--split .au-hero__media img { display: block; width: 100%; aspect-ratio: 4 / 5; height: auto; object-fit: cover; border-radius: var(--au-arch); }
body.hbk .au-hero__card { position: absolute; left: -2.5rem; bottom: 2.5rem; display: flex; flex-direction: column; gap: .125rem; padding: 1rem 1.25rem; background: var(--au-ivory); box-shadow: 0 1px 0 var(--au-line), 0 18px 40px rgba(var(--hb-primary-rgb), .12); }
body.hbk .au-hero__name { color: var(--hb-text); font-family: var(--au-serif); font-size: 1.5rem; font-weight: 600; line-height: 1.1; text-decoration: none; }
body.hbk .au-hero__meta { color: var(--au-stone); font-size: .875rem; }

/* Shop by collection: six arches with the name below */
body.hbk .au-arches .hbk-cats--tiles { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 1.25rem; }
body.hbk .au-arches .hbk-cats__item { display: flex; flex-direction: column; align-items: center; gap: .875rem; color: var(--hb-text); text-decoration: none; }
body.hbk .au-arches .hbk-cats__media { width: 100%; aspect-ratio: 3 / 4; border-radius: var(--au-arch); overflow: hidden; background: var(--au-blush); }
body.hbk .au-arches .hbk-cats__media img { width: 100%; height: 100%; object-fit: cover; }
body.hbk .au-arches .hbk-cats__body { margin: 0; padding: 0; background: none; text-align: center; }
body.hbk .au-arches .hbk-cats__title { font-family: var(--au-serif); font-size: 1.625rem; font-weight: 600; line-height: 1; }
body.hbk .au-arches .hbk-cats__sub { display: none; }
body.hbk .au-arches .hbk-cats__item:hover .hbk-cats__title { color: var(--au-velvet); text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 6px; }

/* The ring sizer band on Velvet */
body.hbk .au-sizer.hbk-section { background: var(--au-velvet); color: var(--au-porcelain); scroll-margin-top: 6rem; }
body.hbk .au-band { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 6fr); gap: 4.5rem; align-items: center; }
body.hbk .au-band__body { display: flex; flex-direction: column; align-items: flex-start; gap: 1.125rem; }
body.hbk .au-band .hbk-eyebrow { color: var(--au-champ-light); }
body.hbk .au-band .hbk-title { margin: 0; color: var(--au-porcelain); font-size: clamp(2.75rem, 4.4vw, 4rem); }
body.hbk .au-band__text { color: var(--au-mint); }
body.hbk .au-band__text p { max-width: 42ch; margin: 0; }
body.hbk .au-band__link { color: var(--au-porcelain); font-weight: 500; text-decoration: underline; }
body.hbk .au-band__link:hover { color: var(--au-champ-light); }
/* the sizer itself, on the band and in the product panel */
body.hbk .au-sizer:not(.hbk-section) { display: grid; grid-template-columns: minmax(0, 1fr) 16.25rem; gap: 2.5rem; align-items: center; }
body.hbk .au-sizer__stage { position: relative; display: grid; place-items: center; height: 18rem; background: var(--au-porcelain); color: var(--hb-text); }
body.hbk .au-sizer__ring { position: absolute; left: 50%; top: 50%; width: 16.55mm; height: 16.55mm; border-radius: 50%; box-shadow: 0 0 0 2px var(--au-champ), 0 0 0 10px rgba(var(--hb-accent-rgb), .14); transform: translate(-50%, -50%); transition: width .2s ease, height .2s ease; }
body.hbk .au-sizer__mm { position: absolute; left: 0; right: 0; bottom: 1rem; color: var(--au-eyebrow); font-size: .8125rem; font-weight: 500; text-align: center; }
body.hbk .au-sizer__side { display: flex; flex-direction: column; gap: 1rem; }
body.hbk .au-sizer__label { font-size: .875rem; font-weight: 500; }
body.hbk .au-sizer__sizes { display: grid; grid-template-columns: repeat(3, 3.25rem); gap: .625rem; }
body.hbk .au-size { width: 3.25rem; height: 3.25rem; padding: 0; border: 0; border-radius: 50%; background: transparent; box-shadow: inset 0 0 0 1px rgba(247, 244, 239, .35); color: var(--au-porcelain); font: inherit; font-weight: 500; cursor: pointer; }
body.hbk .au-size:hover { box-shadow: inset 0 0 0 1px var(--au-porcelain); }
body.hbk .au-size[aria-checked="true"] { background: var(--au-porcelain); box-shadow: none; color: var(--au-velvet); }
body.hbk .au-size:focus-visible { outline: 2px solid var(--au-champ-light); outline-offset: 2px; }
body.hbk .au-sizer__facts { display: grid; grid-template-columns: auto 1fr; gap: .25rem 1rem; margin: .5rem 0 0; color: var(--au-mint); font-size: .875rem; }
body.hbk .au-sizer__facts dd { margin: 0; color: var(--au-porcelain); }

/* How we make it: the atelier in black and white, three numbered steps */
body.hbk .au-make .hbk-it__row { align-items: center; gap: 4.5rem; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); }
body.hbk .au-make .hbk-it__media img { width: 100%; aspect-ratio: 4 / 5; object-fit: cover; filter: grayscale(1); border-radius: 0; }
body.hbk .au-make .hbk-it__title { margin: 0 0 1.75rem; font-size: clamp(2.5rem, 3.9vw, 3.5rem); line-height: 1; }
body.hbk .au-make .hbk-it__text ol { margin: 0; padding: 0; list-style: none; counter-reset: au-step; }
body.hbk .au-make .hbk-it__text li { display: grid; grid-template-columns: 3.5rem minmax(0, 1fr); column-gap: 1.25rem; padding: 1.5rem 0 1.25rem; border-top: 1px solid var(--au-line); color: var(--au-stone); counter-increment: au-step; }
body.hbk .au-make .hbk-it__text li::before { content: counter(au-step, lower-roman); grid-row: span 2; color: var(--au-champ-text); font-family: var(--au-serif); font-size: 2rem; font-style: italic; line-height: 1; }
body.hbk .au-make .hbk-it__text li strong { display: block; margin-bottom: .375rem; color: var(--hb-text); font-family: var(--au-serif); font-size: 1.875rem; font-weight: 600; line-height: 1.1; }

/* Ready to give: the gift box and a handwritten card */
body.hbk .au-gift .hbk-it__row { align-items: center; gap: 4.5rem; grid-template-columns: minmax(0, 6fr) minmax(0, 5fr); }
body.hbk .au-gift .hbk-it__media img { width: 100%; aspect-ratio: 1; object-fit: cover; border-radius: 0; }
body.hbk .au-gift .hbk-it__title { margin: 0 0 1.125rem; font-size: clamp(2.5rem, 3.9vw, 3.5rem); line-height: 1; }
body.hbk .au-gift .hbk-it__text > p { max-width: 46ch; margin: 0; color: var(--au-stone); font-size: 1.125rem; }
body.hbk .au-gift blockquote { max-width: 26.25rem; margin: 1.75rem 0 0; padding: 1.75rem 2rem; background: var(--au-ivory); box-shadow: 0 1px 0 var(--au-line), 0 18px 40px rgba(var(--hb-primary-rgb), .1); }
body.hbk .au-gift blockquote p { margin: 0; color: var(--hb-text); font-family: var(--au-serif); font-size: 1.75rem; font-style: italic; line-height: 1.2; }
body.hbk .au-gift blockquote footer { margin-top: .75rem; color: var(--au-stone); font-size: .8125rem; }

/* Bridal appointments: the bride in an arch */
body.hbk .au-bridal .hbk-it__row { align-items: center; gap: 4.5rem; grid-template-columns: minmax(0, 5fr) minmax(0, 6fr); }
body.hbk .au-bridal .hbk-it__media img { width: 100%; aspect-ratio: 4 / 5; object-fit: cover; border-radius: var(--au-arch); }
body.hbk .au-bridal .hbk-it__body { display: flex; flex-direction: column; align-items: flex-start; gap: 1.125rem; }
body.hbk .au-bridal .hbk-it__title { margin: 0; font-size: clamp(2.75rem, 4.4vw, 4rem); line-height: 1; }
body.hbk .au-bridal .hbk-it__text { color: var(--au-stone); font-size: 1.125rem; }
body.hbk .au-bridal .hbk-it__text p { max-width: 46ch; margin: 0; }
body.hbk .au-bridal .hbk-btn { --bs-btn-bg: var(--au-velvet); --bs-btn-border-color: var(--au-velvet); --bs-btn-color: var(--au-porcelain); --bs-btn-hover-bg: var(--au-velvet-2); --bs-btn-hover-color: var(--au-porcelain); background: var(--au-velvet); border-color: var(--au-velvet); color: var(--au-porcelain); display: inline-flex; align-items: center; height: 3.375rem; margin-top: .5rem; padding: 0 1.75rem; }
body.hbk .au-bridal .hbk-btn:hover { background: var(--au-velvet-2); color: var(--au-porcelain); }

/* One quote, centred and italic */
body.hbk .au-quote { border-top: 1px solid var(--au-line); }
body.hbk .hbk-quotes--quote { display: block; max-width: 62.5rem; margin: 0 auto; }
body.hbk .hbk-quotes--quote .hbk-quote { align-items: center; max-width: none; margin: 0; padding: 0; border: 0; background: none; text-align: center; }
body.hbk .hbk-quotes--quote .hbk-stars { display: none; }
body.hbk .hbk-quotes--quote .hbk-quote__text { margin: 0; padding: 0; color: var(--hb-text); font-family: var(--au-serif); font-size: clamp(2rem, 3.8vw, 3.25rem); font-style: italic; font-weight: 500; line-height: 1.12; }
body.hbk .hbk-quotes--quote .hbk-quote__who { display: block; margin-top: 1.375rem; color: var(--au-stone); font-size: 1.0625rem; text-align: center; }
body.hbk .hbk-quotes--quote .hbk-quote__who strong { display: inline; color: var(--hb-text); font-weight: 500; }
body.hbk .hbk-quotes--quote .hbk-quote__who strong::after { content: ", "; color: var(--au-stone); font-weight: 400; }
body.hbk .hbk-quotes--quote .hbk-quote__who span { display: inline; font-size: inherit; }

/* ---------- Product cards: an Ivory plate, square photo, serif name, metal and stone, price and colours ---------- */
body.hbk .product-miniature, body.hbk .product-miniature__inner { height: 100%; }
body.hbk .product-miniature__inner { position: relative; display: flex; flex-direction: column; padding: 0; border: 0; background: var(--au-ivory); box-shadow: 0 0 0 1px var(--au-line); transition: box-shadow .2s ease; }
body.hbk .product-miniature__inner:hover { box-shadow: 0 0 0 1px var(--au-champ); }
body.hbk .product-miniature__top { position: relative; overflow: hidden; border-radius: 0; background: var(--au-ivory); }
body.hbk .product-miniature__top img { width: 100%; aspect-ratio: 1; height: auto; object-fit: cover; mix-blend-mode: normal; }
body.hbk .product-miniature__bottom { display: flex; flex: 1 1 auto; flex-direction: column; padding: 1rem 1.125rem 1.25rem; }
body.hbk .product-miniature__infos { display: flex; flex-direction: column; gap: .25rem; padding: 0; }
body.hbk .product-miniature__title { display: block; color: var(--hb-text); font-family: var(--au-serif); font-size: 1.5625rem; font-weight: 600; line-height: 1.1; text-decoration: none; }
body.hbk .product-miniature__title:hover { color: var(--au-velvet); }
body.hbk .product-miniature__infos > .hbk-ftags--card, body.hbk .product-miniature .hbk-ftags--card { order: 1; display: block; margin: 0; color: var(--au-stone); font-size: .875rem; }
body.hbk .product-miniature .hbk-ftags--card .hbk-ftag { display: inline; height: auto; padding: 0; border: 0; background: none; color: inherit; font-size: inherit; font-weight: 400; }
body.hbk .product-miniature .hbk-ftags--card .hbk-ftag + .hbk-ftag::before { content: " · "; }
body.hbk .product-miniature__prices { order: 2; display: flex; flex-direction: row; flex-wrap: nowrap; align-items: center; gap: .5rem; margin: .375rem 0 0; }
body.hbk .product-miniature__price { order: 2; color: var(--hb-text); font-size: 1rem; font-weight: 500; }
body.hbk .product-miniature:has(.product-miniature__regular-price) .product-miniature__price { color: var(--au-garnet); }
body.hbk .product-miniature__discount-price { display: contents; }
body.hbk .product-miniature__regular-price { order: 1; color: var(--au-stone); text-decoration: line-through; }
body.hbk .au-card__dots { order: 3; display: flex; gap: .375rem; margin: 0 0 0 auto; }
body.hbk .au-card__dots a { width: .875rem; height: .875rem; margin: 0; border: 0; border-radius: 50%; box-shadow: inset 0 0 0 1px rgba(var(--hb-text-rgb), .2); }
body.hbk .product-miniature .product-flags { position: absolute; left: .75rem; top: .75rem; z-index: 2; display: flex; flex-direction: column; align-items: flex-start; gap: .25rem; margin: 0; padding: 0; }
body.hbk :is(.product-flags .badge, .product-flag) { padding: .125rem .625rem; border: 0; border-radius: 0; background: var(--au-velvet) !important; color: var(--au-porcelain) !important; font-size: .75rem; font-weight: 500; letter-spacing: 0; text-transform: none; }
body.hbk :is(.product-flag.discount, .product-flag.on-sale, .badge.discount, .badge.on-sale) { background: var(--au-garnet) !important; color: #fff !important; }
body.hbk :is(.product-flags .badge.out_of_stock, .product-flag.out_of_stock) { background: var(--au-ivory) !important; box-shadow: inset 0 0 0 1px var(--au-field); color: var(--au-stone) !important; }
/* add to bag from the card: a small velvet "+" on the photo, shown on hover and for keyboards */
body.hbk .product-miniature__quickview-button, body.hbk .product-miniature__quickview-touch { display: none !important; }
body.hbk .product-miniature__actions { position: absolute; inset: 0 0 auto; aspect-ratio: 1; display: flex; align-items: flex-start; justify-content: flex-end; margin: 0; padding: .625rem; pointer-events: none; z-index: 2; }
body.hbk .product-miniature__form { width: auto; opacity: 0; transform: none !important; pointer-events: auto; transition: opacity .2s ease; }
body.hbk .product-miniature__inner:hover .product-miniature__form, body.hbk .product-miniature__form:focus-within { opacity: 1; }
body.hbk .product-miniature__form .product-miniature__add { display: block; width: 2.75rem; min-height: 0; height: 2.75rem; padding: 0; border: 0; border-radius: 50%; background: var(--au-velvet) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 18 18'%3E%3Cpath d='M9 3v12M3 9h12' stroke='%23f7f4ef' stroke-width='1.6'/%3E%3C/svg%3E") center / 1.125rem no-repeat; color: var(--au-porcelain); }
body.hbk .product-miniature__form .product-miniature__add:hover { background-color: var(--au-velvet-2); }
body.hbk .product-miniature__form .product-miniature__add :is(.material-icons, .product-miniature__add-text) { display: none; }
body.hbk .product-miniature__form .product-miniature__add:is(.is-loading, .is-added, .is-error) { background-image: none; }
body.hbk .product-miniature__form .quantity-button { display: none; }
body.hbk .product-miniature__details { display: none; }
@media (hover: none) { body.hbk .product-miniature__form { opacity: 1; } }
/* quick size panel: round ring sizes */
body.hbk .hbk-qa { border: 1px solid var(--au-line); border-radius: 0; background: var(--au-ivory); color: var(--hb-text); }
body.hbk .hbk-qa__title { color: var(--hb-text); font-weight: 500; }
body.hbk .hbk-qa__opts { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .375rem; }
body.hbk .hbk-qa__opt { height: 2.5rem; border: 1px solid var(--au-field); border-radius: 999px; background: var(--au-ivory); color: var(--hb-text); font-weight: 500; }
body.hbk .hbk-qa__opt:hover, body.hbk .hbk-qa__opt.is-picked { border-color: var(--au-velvet); background: var(--au-velvet); color: var(--au-porcelain); }
body.hbk .hbk-qa__opt[disabled] { border-style: dashed; background: transparent; color: color-mix(in srgb, var(--hb-muted) 74%, #fff); text-decoration: line-through; }

/* ---------- Category pages: centred title, ring sizes as round chips, filter panel, four Ivory cards per row ---------- */
body.hbk .breadcrumb__wrapper { background: none; }
body.hbk .breadcrumb { padding: 1.5rem 0 0; color: var(--au-stone); font-size: .875rem; --bs-breadcrumb-divider-color: var(--au-stone); --bs-breadcrumb-item-active-color: var(--au-stone); }
body.hbk .breadcrumb a { color: var(--au-stone); }
body.hbk .category__header { display: flex; flex-direction: column; align-items: center; gap: .75rem; margin: 1.75rem 0 2.5rem; padding: 0; border: 0; background: none !important; text-align: center; }
body.hbk .category__header :is(.page-title-section, h1) { margin: 0; font-size: clamp(3.5rem, 7vw, 6rem); line-height: .9; }
body.hbk .category__header .category__description { max-width: 46ch; margin: 0 auto; color: var(--au-stone); font-size: 1.125rem; }
body.hbk .category__header .category__description p:last-child { margin-bottom: 0; }
body.hbk .category__header :is(.category__cover, .category__image) { display: none; }
body.hbk #js-product-list-top { margin-bottom: 1.25rem; }
body.hbk .hbk-toolbar { display: flex; flex-wrap: wrap; align-items: center; gap: 1rem 1.5rem; padding: 1.125rem 0; border-top: 1px solid var(--au-line); border-bottom: 1px solid var(--au-line); }
body.hbk .hbk-toolbar__filter { display: inline-flex !important; align-items: center; gap: .625rem; height: 2.75rem; padding: 0 1.125rem; border: 1px solid var(--au-ink); border-radius: 0; background: transparent; color: var(--hb-text); font-size: 1rem; font-weight: 500; cursor: pointer; }
body.hbk .hbk-toolbar__filter:hover { background: var(--au-ink); color: var(--au-porcelain); }
body.hbk .hbk-toolbar__count { margin-left: auto; color: var(--au-stone); font-size: .9375rem; }
body.hbk .hbk-toolbar .products__sort { display: flex; align-items: center; gap: .625rem; margin: 0; }
body.hbk .products__sort-dropdown-button { display: inline-flex; align-items: center; justify-content: space-between; gap: 1.5rem; min-width: 11.5rem; height: 2.75rem; padding: 0 2.5rem 0 .875rem !important; border: 1px solid var(--au-field); border-radius: 0; background: var(--au-ivory) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5l5 5 5-5' fill='none' stroke='%231c2421' stroke-width='1.4'/%3E%3C/svg%3E") no-repeat right .875rem center !important; color: var(--au-ink); font-size: .9375rem; font-weight: 400; }
body.hbk .products__sort-dropdown-button::after { display: none !important; }
body.hbk .products__sort .dropdown-menu { border: 1px solid var(--au-line); border-radius: 0; background: var(--au-ivory); }
/* the ring sizes quick filter */
body.hbk .au-sizes { display: flex; flex-wrap: wrap; align-items: center; gap: .75rem 1.25rem; }
body.hbk .au-sizes[hidden] { display: none; }
body.hbk .au-sizes__label { font-weight: 500; }
body.hbk .au-sizes__guide { font-size: .875rem; text-decoration: underline; }
body.hbk .hbk-chips { display: flex; flex-wrap: wrap; align-items: center; gap: .5rem; }
body.hbk .hbk-chip { display: grid; place-items: center; min-width: 2.75rem; height: 2.75rem; padding: 0 .5rem; border: 1px solid var(--au-field); border-radius: 999px; background: var(--au-ivory); color: var(--hb-text); font-size: .875rem; font-weight: 500; text-decoration: none; }
body.hbk .hbk-chip::before { display: none; }
body.hbk .hbk-chip:hover { border-color: var(--au-ink); }
body.hbk .hbk-chip.is-on { border-color: var(--au-velvet); background: var(--au-velvet); color: var(--au-porcelain); }
body.hbk .active-filters { margin: 1rem 0 1.5rem; padding: 0; background: none; }
body.hbk .active-filters__list { display: flex; flex-wrap: wrap; gap: .5rem; margin: 0; padding: 0; list-style: none; }
body.hbk .active-filters__item { display: block; margin: 0; padding: 0; border: 0; background: none; }
body.hbk .active-filters__item:has(.active-filters__title) { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
body.hbk .active-filters__link { display: inline-flex; align-items: center; gap: .5rem; height: 2.125rem; padding: 0 .375rem 0 .75rem; border: 0; border-radius: 0 !important; background: var(--au-velvet); color: var(--au-porcelain); font-size: .875rem; text-decoration: none; }
body.hbk .active-filters__link:hover { background: var(--au-velvet-2); color: var(--au-porcelain); }
body.hbk .active-filters__link .material-icons { display: grid; place-items: center; width: 1.5rem; height: 1.5rem; color: var(--au-porcelain); font-size: 1rem; }
/* the filter panel */
body.hbk .offcanvas { --bs-offcanvas-bg: var(--au-porcelain); background: var(--au-porcelain); color: var(--hb-text); }
body.hbk .offcanvas-header { border-bottom: 1px solid var(--au-line); }
body.hbk .offcanvas-title { font-family: var(--au-serif); font-size: 2rem; font-weight: 500; }
body.hbk .search-filters .accordion { --bs-accordion-bg: transparent; --bs-accordion-btn-bg: transparent; --bs-accordion-active-bg: transparent; --bs-accordion-active-color: var(--au-ink); --bs-accordion-btn-focus-box-shadow: none; }
body.hbk .search-filters .accordion-item { border: 0; border-top: 1px solid var(--au-line); border-radius: 0; background: none; }
body.hbk .search-filters .accordion-button { padding: 1rem 0 .625rem; background: none; box-shadow: none; color: var(--hb-text); font-size: 1rem; font-weight: 500; }
body.hbk .search-filters .accordion-body { margin: 0; padding: 0 0 1rem; list-style: none; }
body.hbk .search-filters__link, body.hbk .search-filters .form-check-label { color: var(--au-ink-2); font-size: .9375rem; text-decoration: none; }
body.hbk .search-filters__magnitude { color: var(--au-stone); font-size: .8125rem; }
body.hbk .search-filters .noUi-connect { background: var(--au-velvet); }
body.hbk .products__pagination-summary, body.hbk .products__pagination .pagination__number { display: none; }
body.hbk .products__pagination .pagination { --bs-pagination-bg: transparent; --bs-pagination-color: var(--au-ink); --bs-pagination-border-color: var(--au-line); --bs-pagination-active-bg: var(--au-velvet); --bs-pagination-active-border-color: var(--au-velvet); --bs-pagination-active-color: var(--au-porcelain); }
body.hbk .hbk-nextcat { margin-bottom: 5rem; border: 1px solid var(--au-line); border-radius: 0; background: var(--au-ivory); color: var(--hb-text); }
body.hbk .hbk-nextcat:hover { border-color: var(--au-champ); }

/* ---------- Product page ---------- */
@media (min-width: 992px) {
  body#product.hbk .product__container { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr); gap: 4rem; align-items: start; }
  body#product.hbk .product__container > * { width: auto; max-width: none; padding: 0; }
}
body#product.hbk :is(.product__carousel, .carousel-inner, .product__images) { border-radius: 0; overflow: hidden; background: var(--au-ivory); }
body#product.hbk .carousel-item img { aspect-ratio: 1; object-fit: cover; }
body#product.hbk .product__zoom { border: 0; border-radius: 50%; background: rgba(255, 253, 249, .9); color: var(--hb-text); }
body.hbk .au-ref { margin: 0 0 .25rem; color: var(--au-stone); font-size: .875rem; }
body#product.hbk .product__right { display: flex; flex-direction: column; }
body#product.hbk .product__right > .au-ref { order: -3; }
body#product.hbk .product__right > .product__name { order: -2; }
body#product.hbk .product__right > .product__description-short { order: -1; }
body#product.hbk .product__name { margin: 0 0 .5rem; font-size: clamp(2.75rem, 4.4vw, 4rem); line-height: .95; }
body#product.hbk .product__description-short { margin: 0; color: var(--au-stone); font-size: 1.0625rem; }
body#product.hbk .product__description-short p:last-child { margin-bottom: 0; }
body.hbk .product__manufacturer { display: none; }
body#product.hbk .product__prices { margin: 1.375rem 0 0; }
body#product.hbk .product__prices-block { display: flex; flex-direction: row; flex-wrap: wrap; align-items: baseline; gap: .25rem .75rem; }
body#product.hbk :is(.product__current-price, .product__price) { color: var(--hb-text); font-size: 1.75rem; font-weight: 500; }
body#product.hbk .product:has(.product__regular-price) :is(.product__current-price, .product__price) { color: var(--au-garnet); }
body#product.hbk :is(.product__tax-label, .product__tax-info, .product__tax-infos) { margin: 0; color: var(--au-stone); font-size: .875rem; }
body.hbk :is(.product__discount-percentage, .product__discount-amount) { border-radius: 0; background: none; color: var(--au-garnet); font-weight: 500; }
body.hbk .product__regular-price { color: var(--au-stone); }
/* options: colour first, then the ring sizes */
body.hbk .product__variants { display: flex; flex-direction: column; }
body.hbk .product__variants > .product-variant:has(.input-color__input) { order: -1; }
body.hbk .product-variant { position: relative; margin: 1.5rem 0 0; padding: 0; border: 0; }
body.hbk .product-variant__legend { float: left; width: auto; margin: 0 0 .75rem; padding: 0; color: var(--hb-text); font-size: 1rem; font-weight: 500; line-height: 1.5; }
body.hbk .product-variant__selected { display: inline-block; white-space: pre; margin: 0 0 .75rem; color: var(--au-stone); font-weight: 400; line-height: 1.5; }
body.hbk .product-variant__attributes { clear: both; width: 100%; }
body.hbk .product-variant .hbk-sizeguide { display: none; }
body.hbk .product-variant__colors { display: flex; flex-wrap: wrap; gap: .75rem; }
body.hbk .product-variant__color { margin: 0; }
body.hbk .input-color__label { display: grid; place-items: center; width: 2.75rem; height: 2.75rem; margin: 0; padding: 0; border: 0; border-radius: 50%; background: transparent; cursor: pointer; }
body.hbk .input-color__label .color { display: block; width: 2.75rem; height: 2.75rem; margin: 0; border: 0; border-radius: 50%; box-shadow: inset 0 0 0 1px rgba(var(--hb-text-rgb), .2); }
body.hbk :is(.input-color__input:checked + .input-color__label, .input-color__label--active) .color { box-shadow: 0 0 0 2px var(--au-porcelain), 0 0 0 3px var(--au-velvet); }
body.hbk .input-color__input:focus-visible + .input-color__label { outline: 2px solid var(--au-velvet); outline-offset: 5px; }
body.hbk .product-variant__radios { display: flex; flex-wrap: wrap; gap: .5rem; }
body.hbk .product-variant__radio { margin: 0; }
body.hbk .product-variant .btn-check + .btn { display: grid; place-items: center; width: 3rem; height: 3rem; margin: 0; padding: 0; border: 1px solid var(--au-field); border-radius: 50%; background: var(--au-ivory); color: var(--hb-text); font-size: .9375rem; font-weight: 500; box-shadow: none; }
body.hbk .product-variant .btn-check + .btn:hover { border-color: var(--au-ink); background: var(--au-ivory); color: var(--hb-text); }
body.hbk .product-variant .btn-check:checked + .btn { border-color: var(--au-velvet); background: var(--au-velvet); color: var(--au-porcelain); }
body.hbk .product-variant .btn-check:focus-visible + .btn { outline: 2px solid var(--au-velvet); outline-offset: 2px; }
body.hbk .product-variant .btn-check:disabled + .btn { border-style: dashed; background: transparent; color: color-mix(in srgb, var(--hb-muted) 74%, #fff); text-decoration: line-through; }
/* "Find your size" and the ring sizer panel */
body.hbk .au-findsize { position: absolute; top: 0; right: 0; padding: 0; border: 0; background: none; color: var(--hb-text); font: inherit; font-size: .9375rem; line-height: 1.5; text-decoration: underline; text-underline-offset: 4px; cursor: pointer; }
body.hbk .au-findsize:hover { color: var(--au-velvet); }
body.hbk .au-sizer--panel { grid-template-columns: 12.5rem minmax(0, 1fr); gap: 1.5rem; margin-top: 1rem; padding: 1.25rem; background: var(--au-ivory); box-shadow: 0 0 0 1px var(--au-line); }
body.hbk .au-sizer--panel[hidden] { display: none; }
body.hbk .au-sizer--panel .au-sizer__stage { height: 12.5rem; }
body.hbk .au-sizer--panel .au-sizer__side { gap: .5rem; }
body.hbk .au-sizer__title { font-family: var(--au-serif); font-size: 1.625rem; font-weight: 600; line-height: 1.1; }
body.hbk .au-sizer__text { margin: 0; color: var(--au-stone); font-size: .9375rem; }
body.hbk .au-sizer__note { margin: 0; color: var(--au-stone); font-size: .8125rem; }
/* quantity and the Velvet "Add to bag" */
body.hbk .quantity-button__group { flex-wrap: nowrap; width: auto; height: 3.5rem; overflow: hidden; border: 1px solid var(--au-field); border-radius: 0; background: var(--au-ivory); }
body.hbk .quantity-button__group:focus-within { border-color: var(--au-velvet); box-shadow: 0 0 0 3px rgba(var(--hb-primary-rgb), .18); }
body.hbk .quantity-button__group > .btn { flex: none; width: 3rem; height: 100%; min-height: 0; margin: 0; padding: 0; border: 0 !important; border-radius: 0 !important; background: none; color: var(--hb-text); box-shadow: none; }
body.hbk .quantity-button__group > .btn:hover { background: var(--au-blush); color: var(--hb-text); }
body.hbk .quantity-button__group > :is(.form-control, input) { flex: 0 0 2rem; width: 2rem; min-width: 0; min-height: 0; height: 100%; margin: 0; padding: 0; border: 0 !important; border-radius: 0 !important; background: none; color: var(--hb-text); font-weight: 500; text-align: center; box-shadow: none !important; outline: none; }
body.hbk :is(.cart-detailed__line, .cart-item, .hbk-drawer) .quantity-button__group, body.hbk .hbk-qty { height: 2.5rem; }
body.hbk .product__actions-qty-add { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: .75rem; align-items: stretch; margin-top: 1.5rem; }
body.hbk .product__actions-qty-add > * { width: auto; margin: 0; padding: 0; }
body.hbk .product__add-to-cart, body.hbk .product__add-to-cart .btn { width: 100%; }
body.hbk .product__add-to-cart-button { width: 100%; height: 3.5rem; border: 0; border-radius: 0; font-size: 1.0625rem; font-weight: 500; }
body.hbk .product__add-to-cart-button .material-icons { display: none; }
/* the gift line and the three promises */
body.hbk .au-gift { display: flex; align-items: center; gap: .75rem; margin: 1.25rem 0 0; padding: .875rem 1rem; background: var(--au-blush); color: var(--hb-text); font-size: .9375rem; }
body.hbk .au-gift svg { flex: none; color: var(--au-velvet); }
body#product.hbk .hbk-pnote--list { margin: 1.25rem 0 0; padding: 0; border-top: 1px solid var(--au-line); color: var(--au-stone); font-size: .9375rem; gap: 0; list-style: none; }
body#product.hbk .hbk-pnote--list li { position: relative; display: block; padding: .75rem 0 .75rem 1.5rem; border-bottom: 1px solid var(--au-line); }
body#product.hbk .hbk-pnote--list li::before { content: "◇"; position: absolute; left: 0; top: .75rem; width: auto; height: auto; background: none; -webkit-mask: none; mask: none; color: var(--au-champ-text); line-height: 1.6; }
body.hbk .product-additional-info .social-sharing, body.hbk .product-additional-info .ps-sharebuttons { display: none; }
/* The details: the features as one ruled row, the description, the accordion */
body#product.hbk .product__bottom, body#product.hbk .product__bottom-left { display: block; width: 100%; max-width: none; padding: 0; }
body#product.hbk .product__bottom-right { display: none; }
body.hbk .au-details { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 2fr); gap: 3rem; margin-top: 6rem; padding-top: 3rem; border-top: 1px solid var(--au-line); }
body.hbk .au-details__title { margin: 0; font-size: clamp(2.5rem, 3.6vw, 3rem); line-height: 1; }
body.hbk .au-details__specs { display: grid; grid-template-columns: repeat(auto-fit, minmax(8.5rem, 1fr)); margin: 0; border-top: 1px solid var(--au-ink); border-bottom: 1px solid var(--au-line); }
body.hbk .au-details__spec { padding: 1.125rem 1rem 1.125rem 0; }
body.hbk .au-details__spec dt { color: var(--au-stone); font-size: .875rem; font-weight: 400; }
body.hbk .au-details__spec dd { margin: .125rem 0 0; font-family: var(--au-serif); font-size: 1.625rem; font-weight: 600; line-height: 1.15; }
body.hbk .au-details__desc { max-width: 62ch; margin: 1.375rem 0 0; color: var(--au-ink-2); }
body#product.hbk .accordion { --bs-accordion-bg: transparent; --bs-accordion-border-color: var(--au-line); --bs-accordion-btn-bg: transparent; --bs-accordion-active-bg: transparent; --bs-accordion-active-color: var(--au-ink); --bs-accordion-btn-color: var(--au-ink); --bs-accordion-btn-focus-box-shadow: none; margin-top: 1.5rem; border-top: 1px solid var(--au-line); }
body#product.hbk .accordion-item { border: 0; border-bottom: 1px solid var(--au-line); border-radius: 0; background: none; }
body#product.hbk .accordion-button { padding: 1rem 0; background: none; box-shadow: none; color: var(--hb-text); font-family: var(--hb-font-body); font-size: 1rem; font-weight: 500; }
body#product.hbk .accordion-button::after { content: "+"; width: auto; height: auto; background: none; color: var(--au-champ-text); font-size: 1.25rem; font-weight: 400; line-height: 1; transform: none; }
body#product.hbk .accordion-button:not(.collapsed)::after { content: "−"; }
body#product.hbk .accordion-body { padding: 0 0 1.25rem; color: var(--au-stone); }
body#product.hbk .accordion-body :is(.blockreassurance_product > div, .block-reassurance-item) { display: flex; gap: .75rem; align-items: flex-start; padding: .375rem 0; }
body#product.hbk .accordion-body :is(.blockreassurance_product img, .block-reassurance-item img) { width: 1.25rem; height: 1.25rem; }
body#product.hbk :is(.product__accessories, .ps-categoryproducts, .featured-products) { margin-top: 6rem; }
body.hbk .module-products .section-title { margin-bottom: 1.75rem; font-size: clamp(2.25rem, 3.6vw, 3rem); line-height: 1.05; text-transform: none; text-align: left; }
@media (max-width: 991.98px) {
  body.hbk .au-details { grid-template-columns: 1fr; gap: 1.5rem; margin-top: 3.5rem; }
}
/* phones: quantity and "Add to bag" stay at the bottom of the screen */
@media (max-width: 767.98px) {
  body#product.hbk { padding-bottom: 5.5rem; }
  body#product.hbk .product__actions-qty-add { position: fixed; left: 0; right: 0; bottom: 0; z-index: 1020; margin: 0; padding: .75rem 1rem 1.5rem; background: var(--au-ivory); border-top: 1px solid var(--au-line); }
  body#product.hbk .product__actions-qty-add :is(.quantity-button__group, .product__add-to-cart-button) { height: 3.25rem; }
  body#product.hbk .quickview .product__actions-qty-add { position: static; padding: 0; border: 0; background: none; }
  body#product.hbk .product__name { font-size: 2.5rem; }
  body.hbk .au-sizer--panel { grid-template-columns: 7.5rem minmax(0, 1fr); gap: .875rem; padding: .75rem; }
  body.hbk .au-sizer--panel .au-sizer__stage { height: 8.5rem; }
  body.hbk .au-sizer--panel .au-sizer__mm { bottom: .25rem; font-size: .6875rem; }
  body.hbk .au-sizer--panel .au-sizer__title { font-size: 1.25rem; }
  body.hbk .au-sizer--panel .au-sizer__note { display: none; }
  body.hbk .product-variant__radios { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: .375rem; }
  body.hbk .product-variant .btn-check + .btn { width: 100%; height: auto; aspect-ratio: 1; }
  body.hbk .au-details__specs { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

/* ---------- Quick view ---------- */
body.hbk .quickview .modal-content { border: 0; border-radius: 0; background: var(--au-porcelain); }
body.hbk .quickview .product__name { font-size: clamp(2rem, 2.8vw, 2.75rem); }
body.hbk .quickview__footer .social-sharing, body.hbk .quickview__footer .ps-sharebuttons { display: none; }

/* ---------- The bag (side cart): Ivory panel, Velvet bar ---------- */
body.hbk .hbk-drawer__backdrop { background: rgba(var(--hb-primary-rgb), .45); }
body.hbk .hbk-drawer__panel { width: min(28.75rem, 100%); border: 0; background: var(--au-ivory); color: var(--hb-text); box-shadow: -20px 0 50px rgba(var(--hb-primary-rgb), .15); }
body.hbk .hbk-drawer__head { padding: 1.375rem 1.75rem; border-bottom: 1px solid var(--au-line); }
body.hbk .hbk-drawer__title { font-family: var(--au-serif); font-size: 2.25rem; font-weight: 500; line-height: 1; }
body.hbk .hbk-drawer__count { color: var(--au-stone); font-family: var(--hb-font-body); font-size: .9375rem; }
body.hbk .hbk-drawer__close { border: 1px solid var(--au-line); border-radius: 0; color: var(--hb-text); }
body.hbk .hbk-drawer .hbk-freebar { margin: 1.25rem 1.75rem 0; padding: 0; background: none; }
body.hbk .hbk-freebar__text { color: var(--au-ink-2); font-size: .875rem; }
body.hbk .hbk-freebar__text .material-icons { color: var(--au-velvet); }
body.hbk .hbk-freebar__track { height: 2px; border-radius: 0; background: var(--au-line); }
body.hbk .hbk-freebar__track span { background: var(--au-velvet); }
body.hbk .hbk-drawer__lines { padding: 0 1.75rem; }
body.hbk .hbk-line { grid-template-columns: 5.5rem minmax(0, 1fr) auto; gap: 1rem; padding: 1.125rem 0; border-bottom: 1px solid var(--au-line); }
body.hbk .hbk-line__img img { width: 5.5rem; height: 5.5rem; object-fit: cover; mix-blend-mode: normal; border-radius: 0; background: var(--au-porcelain); }
body.hbk .hbk-line__name { color: var(--hb-text); font-family: var(--au-serif); font-size: 1.4375rem; font-weight: 600; line-height: 1.1; text-decoration: none; }
body.hbk .hbk-line__attrs { color: var(--au-stone); font-size: .875rem; }
body.hbk .hbk-line__price { font-weight: 500; }
body.hbk .hbk-line__rm { color: var(--au-stone); font-size: .875rem; text-decoration: underline; }
body.hbk .hbk-qty { border: 1px solid var(--au-field); border-radius: 0; background: none; }
body.hbk .hbk-drawer__foot { padding: 1.25rem 1.75rem 1.75rem; border-top: 1px solid var(--au-line); background: var(--au-ivory); }
body.hbk .au-gift--bag { margin: 0 0 1rem; padding: .75rem .875rem; font-size: .875rem; }
body.hbk .hbk-drawer__total strong { font-size: 1.375rem; font-weight: 500; }
body.hbk .hbk-drawer__note { color: var(--au-stone); font-size: .8125rem; }
body.hbk .hbk-drawer__btn.btn-primary { height: 3.5rem; font-size: 1.0625rem; }
body.hbk .hbk-drawer__btn.btn-outline-primary { align-self: center; min-height: 0; height: auto; padding: .25rem; border: 0; background: none; color: var(--hb-text); font-weight: 400; text-decoration: underline; }
body.hbk .hbk-drawer__btn.btn-outline-primary:hover { background: none; color: var(--au-velvet); }
body.hbk .hbk-drawer__empty .material-icons { color: var(--au-velvet); }
body.hbk .hbk-toast { border: 0; border-radius: 0; background: var(--au-ivory); box-shadow: 0 18px 44px rgba(var(--hb-primary-rgb), .18); }

/* ---------- Cart and checkout: Ivory panels, the gift message ---------- */
body.hbk :is(.cart-grid__aside-wrapper, .checkout-grid__aside-wrapper) { padding: 1.5rem; border: 0; border-radius: 0; background: var(--au-ivory); box-shadow: 0 0 0 1px var(--au-line); }
body.hbk :is(.cart-grid__aside-wrapper, .checkout-grid__aside-wrapper) > h2, body#cart.hbk-cartpage-cards .cart-grid__aside-wrapper > h2 { margin-top: 0; font-family: var(--au-serif); font-size: 1.875rem; font-weight: 500; letter-spacing: 0; text-transform: none; }
body.hbk .cart-summary { background: none; }
body.hbk :is(.cart-summary__totals .cart-summary__line:last-child, .cart-total) { border-top: 1px solid var(--au-ink); font-size: 1.125rem; font-weight: 500; }
body.hbk :is(.cart-detailed__line, .cart-item) { border-color: var(--au-line); border-radius: 0; }
body.hbk-cartpage-cards :is(.cart-detailed__line, .cart-item) { background: var(--au-ivory); box-shadow: 0 0 0 1px var(--au-line); }
body.hbk .product-line__title { color: var(--hb-text); font-family: var(--au-serif); font-size: 1.4375rem; font-weight: 600; text-decoration: none; }
body.hbk .checkout-grid__aside-wrapper { --bs-accordion-bg: transparent; --bs-accordion-btn-bg: transparent; --bs-accordion-active-bg: transparent; --bs-accordion-active-color: var(--au-ink); --bs-accordion-btn-focus-box-shadow: none; }
body.hbk .checkout-grid__aside-wrapper :is(.accordion-item, .accordion-button) { background: transparent; box-shadow: none; }
body.hbk .checkout-steps__step::before, body.hbk .checkout-steps__step::after { background: var(--au-line); }
body.hbk .checkout-steps__number { background: var(--au-ivory); color: var(--au-stone); box-shadow: inset 0 0 0 1px var(--au-field); }
body.hbk .checkout-steps__step--current .checkout-steps__number { background: var(--au-velvet); color: var(--au-porcelain); box-shadow: none; }
body.hbk .checkout-steps__step--success .checkout-steps__number { background: var(--au-champ); color: var(--au-ivory); box-shadow: none; }
body.hbk .checkout-steps__step--success::before, body.hbk .checkout-steps__step--success::after { background: var(--au-champ); }
body.hbk .checkout-steps__btn { color: var(--au-stone); text-decoration: none; }
body.hbk :is(.checkout-steps__step--current, .checkout-steps__step--success) .checkout-steps__btn { color: var(--hb-text); }
body#checkout.hbk .step__title, body#checkout.hbk :is(.checkout-step__title, .step-title) { font-family: var(--au-serif); font-weight: 500; }
body.hbk :is(.address-item, .delivery-option, .payment-option) { border-color: var(--au-field) !important; border-radius: 0; background: var(--au-ivory); }
body.hbk :is(.address-item.selected, .delivery-option:has(input:checked), .payment-option:has(input:checked)) { border-color: var(--au-velvet) !important; box-shadow: inset 0 0 0 1px var(--au-velvet); }
/* the gift option: a blush panel, the message in the card's italic */
body#checkout.hbk :is(.gift, .js-gift-checkbox, #gift) { background: var(--au-blush); }
body#checkout.hbk :is(#gift_message, textarea[name="gift_message"]) { font-family: var(--au-serif); font-size: 1.375rem; font-style: italic; line-height: 1.3; }
body.hbk .nav-tabs { --bs-nav-tabs-link-active-color: var(--au-ink); --bs-nav-tabs-link-active-bg: transparent; --bs-nav-tabs-link-active-border-color: transparent transparent var(--au-velvet); --bs-nav-tabs-border-color: var(--au-line); --bs-nav-link-color: var(--au-stone); --bs-nav-link-hover-color: var(--au-ink); }

/* ---------- Footer: Velvet, the newsletter first ---------- */
body.hbk #footer, body.hbk .footer { background: var(--au-velvet); color: var(--au-mint); }
body.hbk .footer a { color: var(--au-mint); opacity: 1; }
body.hbk .footer a:hover { color: var(--au-porcelain); }
body.hbk .footer-block__title, body.hbk .footer .h4 { color: var(--au-porcelain); font-family: var(--hb-font-body); font-size: .9375rem; font-weight: 500; letter-spacing: 0; text-transform: none; }
body.hbk .footer__main { padding: 4.5rem 0 1.75rem; background: var(--au-velvet); color: var(--au-mint); }
body.hbk .footer__main > .container { display: grid; grid-template-columns: minmax(0, 1fr) auto; column-gap: 0; }
body.hbk .footer__main-top { grid-column: 1 / -1; display: grid; grid-template-columns: minmax(0, 1.8fr) repeat(3, minmax(0, 1fr)); gap: 2.5rem; margin: 0; }
body.hbk .footer__main-top > * { width: auto; max-width: none; padding: 0; margin: 0; text-align: left; }
body.hbk .footer__main-top .footer-block__title { margin: 0 0 .875rem; }
body.hbk .footer__main-top .footer-block__content { display: block !important; }
body.hbk .footer__main-top ul { display: grid; gap: .375rem; margin: 0; padding: 0; list-style: none; }
body.hbk .footer__main-top a { font-size: .9375rem; text-decoration: none; }
body.hbk .footer .hbk-news { display: flex; flex-direction: column; align-items: stretch; gap: .75rem; max-width: none; margin: 0; text-align: left; }
body.hbk .footer .hbk-news :is(.hbk-news__title, .hbk-news__text) { text-align: left; }
body.hbk .hbk-news__title { margin: 0 !important; color: var(--au-porcelain); font-family: var(--au-serif); font-size: 2.5rem; font-weight: 500; letter-spacing: 0; line-height: 1.05; text-transform: none; }
body.hbk .hbk-news__text { max-width: 44ch; margin: 0 !important; color: var(--au-mint); }
body.hbk .hbk-news__text p { margin: 0; }
body.hbk .hbk-news form { display: flex; flex-direction: column; gap: .5rem; }
body.hbk .hbk-news__label { color: var(--au-porcelain); font-size: .8125rem; font-weight: 500; }
body.hbk .hbk-news__row { display: flex; gap: .5rem; max-width: 28.75rem; }
body.hbk .hbk-news .form-control { height: 3.125rem; border: 1px solid rgba(247, 244, 239, .35); border-radius: 0; background: transparent; color: var(--au-porcelain); }
body.hbk .hbk-news .form-control::placeholder { color: var(--au-mint-2); }
body.hbk .hbk-news .form-control:focus { border-color: var(--au-porcelain); box-shadow: 0 0 0 3px rgba(247, 244, 239, .2); }
body.hbk .hbk-news .btn { flex: none; height: 3.125rem; min-height: 0; padding: 0 1.5rem; border: 0; border-radius: 0; background: var(--au-porcelain); color: var(--au-velvet); font-weight: 500; }
body.hbk .hbk-news .btn:hover { background: #fff; color: var(--au-velvet); }
body.hbk .hbk-news__help { margin: 0; color: var(--au-mint-2); font-size: .8125rem; }
body.hbk .footer__main-bottom, body.hbk .footer__main .copyright { align-self: stretch; margin-top: 3.5rem; padding-top: 1.25rem; border-top: 1px solid rgba(247, 244, 239, .18); }
body.hbk .footer__main-bottom { grid-column: 1; margin-left: 0; margin-right: 0; display: flex; flex-wrap: wrap; align-items: center; gap: 1rem 1.5rem; color: var(--au-mint-2); font-size: .875rem; }
body.hbk .footer__main-bottom > * { width: auto; flex: 0 0 auto; padding: 0; }
body.hbk .footer__main-bottom .form-select { width: auto; min-height: 0; height: 2.375rem; padding: 0 2.25rem 0 .75rem; border: 1px solid rgba(247, 244, 239, .25); border-radius: 0; background-color: var(--au-velvet); background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5l5 5 5-5' fill='none' stroke='%23f7f4ef' stroke-width='1.4'/%3E%3C/svg%3E"); background-size: 12px 8px; color: var(--au-porcelain); font-size: .875rem; }
body.hbk .footer__main-bottom .ps-socialfollow { padding: 0 !important; }
body.hbk .footer__main-bottom .ps-socialfollow .container { padding: 0; }
body.hbk .footer__main-bottom .ps-socialfollow a { color: var(--au-mint); }
body.hbk .footer__main .copyright { grid-column: 2; display: flex; align-items: center; justify-content: flex-end; margin-bottom: 0; padding-bottom: 0; color: var(--au-mint-2); font-size: .875rem; text-align: right; }
@media (max-width: 991.98px) {
  body.hbk .footer__main-top { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  body.hbk .footer__main-top > .hbk-news { grid-column: 1 / -1; }
  body.hbk .footer__main > .container { grid-template-columns: 1fr; }
  body.hbk .footer__main .copyright { grid-column: 1; margin-top: 0; border-top: 0; justify-content: flex-start; text-align: left; }
}

/* ---------- Phones and tablets ---------- */
@media (max-width: 991.98px) {
  body.hbk .hbk-hero--split { padding: 1.25rem 0 3rem; }
  body.hbk .hbk-hero--split .hbk-hero__slide { display: flex; flex-direction: column; gap: 1.5rem; }
  body.hbk .au-hero__card { left: .75rem; bottom: .75rem; }
  body.hbk .au-band, body.hbk :is(.au-make, .au-gift, .au-bridal) .hbk-it__row { grid-template-columns: 1fr; gap: 2rem; }
  body.hbk .au-arches .hbk-cats--tiles { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 767.98px) {
  body.hbk .hbk-section.hbk-space-l { padding-top: 3.75rem; padding-bottom: 3.75rem; }
  body.hbk .hbk-hero--split .hbk-hero__title { font-size: 3rem; }
  body.hbk .hbk-hero--split .hbk-hero__text { font-size: 1rem; }
  body.hbk .hbk-hero--split .hbk-eyebrow { display: none; }
  body.hbk .hbk-hero--split .au-hero__media img { aspect-ratio: 1; }
  body.hbk .au-hero__card { display: none; }
  body.hbk .au-hero__btns { display: grid; grid-template-columns: 1fr 1fr; }
  body.hbk .au-hero__btns .hbk-btn { justify-content: center; height: 3.125rem; padding: 0 .75rem; }
  body.hbk .au-arches .hbk-cats--tiles { display: flex; overflow-x: auto; gap: .75rem; margin-right: calc(var(--bs-gutter-x, 1.5rem) * -.5); scrollbar-width: none; scroll-snap-type: x proximity; }
  body.hbk .au-arches .hbk-cats--tiles::-webkit-scrollbar { display: none; }
  body.hbk .au-arches .hbk-cats__item { flex: 0 0 6.5rem; scroll-snap-align: start; }
  body.hbk .au-arches .hbk-cats__title { font-size: 1.25rem; }
  body.hbk .au-sizer:not(.hbk-section) { grid-template-columns: 1fr; gap: 1.25rem; }
  body.hbk .au-band .au-sizer__stage { height: 13.75rem; }
  body.hbk .au-sizer__sizes { grid-template-columns: repeat(6, minmax(0, 1fr)); gap: .375rem; }
  body.hbk .au-size { width: auto; height: auto; aspect-ratio: 1; }
  body.hbk .au-make .hbk-it__text li strong { font-size: 1.5rem; }
  body.hbk .au-gift blockquote p { font-size: 1.375rem; }
  body.hbk .category__header :is(.page-title-section, h1) { font-size: 3.5rem; }
  body.hbk .hbk-toolbar { display: grid; grid-template-columns: 1fr 1fr; gap: .75rem; }
  body.hbk .hbk-toolbar__count { display: none; }
  body.hbk .hbk-toolbar .au-sizes { order: -1; grid-column: 1 / -1; flex-wrap: nowrap; gap: .5rem; overflow: hidden; }
  body.hbk .hbk-toolbar .hbk-toolbar__filter { order: 1; }
  body.hbk .hbk-toolbar .products__sort { order: 2; }
  body.hbk .hbk-toolbar .au-sizes__label, body.hbk .hbk-toolbar .au-sizes__guide { display: none; }
  body.hbk .hbk-toolbar .hbk-toolbar__filter { justify-content: center; width: 100%; }
  body.hbk .hbk-toolbar .products__sort, body.hbk .hbk-toolbar .products__sort-dropdown, body.hbk .products__sort-dropdown-button { width: 100%; min-width: 0; }
  body.hbk .hbk-toolbar .products__sort-label { display: none; }
  body.hbk .hbk-chips { flex-wrap: nowrap; overflow-x: auto; scrollbar-width: none; width: 100%; }
  body.hbk .hbk-chip { flex: 0 0 2.75rem; }
  body.hbk .product-miniature__bottom { padding: .75rem .75rem .875rem; }
  body.hbk .product-miniature__title { font-size: 1.1875rem; }
  body.hbk .au-card__dots, body.hbk .product-miniature .hbk-ftags--card { display: none; }
  body.hbk .footer-block__title--toggle::after, body.hbk .footer-block__title .material-icons, body.hbk .footer__main-top [data-bs-toggle] .material-icons { display: none !important; }
}
@media (prefers-reduced-motion: reduce) {
  body.hbk .au-sizer__ring { transition: none; }
}
