/** Shopify CDN: Minification failed

Line 688:0 Unexpected "@media"
Line 781:32 Unexpected "("

**/
/* Hackmore theme — Brittany Blair Group
   Breakpoints: phones < 750px, header switches to the menu button < 900px. */

:root {
  --bridle: #292219;
  --greige: #EDE5D9;
  --snow: #F2E2CD;
  --palomino: #DDA884;
  --palomino-deep: #C98E68;
  --willow: #799291;
  --willow-dark: #6A8382;
  --sky: #9AB6B3;
  --muted: #6B6458;
  --muted-2: #5A5247;
  --error: #8A4B2A;
  --line: rgba(41, 34, 25, 0.18);
  --font-body: 'Brandon Grotesque', 'Jost', 'Helvetica Neue', Arial, sans-serif;
  --font-head: 'Laredo Rounded', 'Saira', 'Helvetica Neue', Arial, sans-serif;
  --font-script: 'Miss Confidential', 'Brush Script MT', cursive;
  --track: 0.08em;
  --gutter: 56px;
}

/* ---------- Base ---------- */
*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; scroll-behavior: smooth; }
body {
  margin: 0;
  background: var(--greige);
  color: var(--bridle);
  font-family: var(--font-body);
  font-weight: 300;
  font-size: 18px;
  line-height: 1.6;
  letter-spacing: var(--track);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
body.hm-locked { overflow: hidden; }
img { max-width: 100%; height: auto; }
a { color: inherit; text-decoration: none; }
button { font: inherit; color: inherit; letter-spacing: inherit; cursor: pointer; }
h1, h2, h3, p { margin: 0; }
h1, h2, h3 { font-weight: 400; }
ul[role="list"], ol[role="list"] { list-style: none; margin: 0; padding: 0; }
fieldset { border: 0; margin: 0; padding: 0; min-width: 0; }
:focus-visible { outline: 2px solid var(--palomino-deep); outline-offset: 3px; }
.hm-main:focus { outline: none; }

.laredo { font-family: var(--font-head); font-weight: 400; text-transform: uppercase; letter-spacing: 0.16em; }
.script { font-family: var(--font-script); font-weight: 400; text-transform: none; letter-spacing: 0; }
.visually-hidden { position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; }
.hm-skip { position: absolute; left: 12px; top: -60px; z-index: 200; padding: 12px 18px; background: var(--bridle); color: var(--snow); }
.hm-skip:focus { top: 12px; }
.ph { position: relative; overflow: hidden; }
.hm-cover { display: block; width: 100%; height: 100%; object-fit: cover; object-position: var(--pos-d, 50% 50%); }
.hm-placeholder { background: #E7D5BD; fill: rgba(41, 34, 25, 0.25); }
.hm-only-mobile { display: none !important; }
.hm-nowrap { white-space: nowrap; }
.hm-error { color: var(--error); font-size: 16px; }
.hm-rte > *:first-child { margin-top: 0; }
.hm-rte > *:last-child { margin-bottom: 0; }
.hm-rte a { border-bottom: 1px solid currentColor; padding-bottom: 1px; }
.hm-rte ul, .hm-rte ol { padding-left: 1.2em; }
.hm-pattern { position: absolute; inset: 0; opacity: var(--pattern-op, 0.6); pointer-events: none; }

/* ---------- Buttons & links ---------- */
.hm-btn {
  display: inline-flex; align-items: center; justify-content: center;
  min-height: 56px; padding: 0 38px;
  font-family: var(--font-head); font-weight: 400; font-size: 14px; letter-spacing: 0.2em; text-transform: uppercase;
  border: 0; border-radius: 0; background: transparent; color: var(--bridle);
  white-space: nowrap; text-align: center;
  transition: background-color .15s ease, color .15s ease, box-shadow .15s ease;
}
.hm-btn[disabled] { opacity: .55; cursor: not-allowed; }
.hm-btn--bridle { background: var(--bridle); color: var(--snow); }
.hm-btn--bridle:hover:not([disabled]) { background: #3A3125; }
.hm-btn--willow { background: var(--willow); color: var(--snow); }
.hm-btn--willow:hover { background: var(--willow-dark); }
.hm-btn--outline { background: transparent; box-shadow: inset 0 0 0 2px currentColor; }
.hm-btn--outline:hover { background: rgba(41, 34, 25, 0.28); }
.hm-btn--snow { color: var(--snow); }
.hm-btn--palomino { color: var(--palomino); }
.hm-btn--lg { min-height: 68px; padding: 0 56px; font-size: 17px; }
.hm-btn--tall { min-height: 58px; }
.hm-btn--block { display: flex; width: 100%; }
.hm-link { background: none; border: 0; border-bottom: 1px solid currentColor; padding: 0 0 2px; font: inherit; letter-spacing: inherit; color: inherit; }
.hm-iconbtn { width: 44px; height: 44px; padding: 0; border: 0; background: none; display: inline-flex; align-items: center; justify-content: center; color: inherit; }

.hm-arrow {
  position: absolute; top: 50%; transform: translateY(-50%); z-index: 2;
  width: 52px; height: 52px; padding: 0; border-radius: 50%;
  border: 1.5px solid rgba(242, 226, 205, 0.85); background: rgba(41, 34, 25, 0.25); color: var(--snow);
  display: flex; align-items: center; justify-content: center; transition: background .15s ease;
}
.hm-arrow:hover { background: rgba(41, 34, 25, 0.5); }
.hm-arrow--prev { left: 28px; }
.hm-arrow--next { right: 28px; }

/* ---------- Header ---------- */
.hm-header { position: relative; z-index: 30; background: var(--greige); border-bottom: 1px solid rgba(41, 34, 25, 0.12); }
.hm-header__inner { display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 24px; padding: 22px var(--gutter) 32px; }
.hm-header__burger { display: none; }
.hm-header__nav { display: flex; gap: 44px; font-size: 13px; }
.hm-header__nav a, .hm-header__cart-text { padding: 8px 0; border-bottom: 1px solid transparent; }
.hm-header__nav a:hover, .hm-header__nav a[aria-current="page"], .hm-header__cart:hover .hm-header__cart-text { border-bottom-color: currentColor; }
.hm-header__logo { grid-column: 2; display: block; }
.hm-header__logo img { display: block; width: var(--logo-w); height: auto; }
.hm-header__end { display: flex; justify-content: flex-end; }
.hm-header__cart { display: inline-flex; align-items: center; font-size: 13px; }
.hm-header__cart-icon { display: none; position: relative; width: 44px; height: 44px; align-items: center; justify-content: center; }
.hm-header__badge {
  position: absolute; top: 4px; right: 2px; min-width: 17px; height: 17px; padding: 0 4px; border-radius: 9px;
  background: var(--palomino); color: var(--bridle); font-size: 9px; letter-spacing: 0; line-height: 17px; text-align: center;
}
.hm-mobile-menu { display: none; }

@media (max-width: 899px) {
  .hm-header__inner { grid-template-columns: 44px 1fr 44px; gap: 0; padding: 12px 14px 16px; }
  .hm-header__burger { display: inline-flex; }
  .hm-header__burger-close { display: none; }
  .hm-header__burger[aria-expanded="true"] .hm-header__burger-open { display: none; }
  .hm-header__burger[aria-expanded="true"] .hm-header__burger-close { display: inline-flex; }
  .hm-header__nav { display: none; }
  .hm-header__logo { justify-self: center; }
  .hm-header__logo img { width: var(--logo-w-m); }
  .hm-header__cart-text { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
  .hm-header__cart-icon { display: inline-flex; }
  .hm-mobile-menu:not([hidden]) {
    display: block; position: absolute; left: 0; right: 0; top: 100%;
    padding: 6px 26px 40px; background: var(--greige); font-size: 15px;
    box-shadow: 0 18px 30px rgba(41, 34, 25, 0.18);
  }
  .hm-mobile-menu a { display: flex; align-items: center; justify-content: space-between; min-height: 60px; border-bottom: 1px solid rgba(41, 34, 25, 0.14); }
  .hm-mobile-menu .hm-icon { font-size: 18px; color: var(--palomino-deep); }
  .hm-mobile-menu__script { margin-top: 30px; font-size: 30px; color: var(--palomino-deep); text-align: center; }
}

/* ---------- Footer ---------- */
.hm-footer { background: var(--bridle); color: var(--snow); padding: 90px 48px 40px; }
.hm-footer__top { max-width: 1240px; margin: 0 auto; display: flex; justify-content: space-between; align-items: flex-start; gap: 56px; }
.hm-footer__brand { flex: none; display: flex; flex-direction: column; align-items: center; gap: 22px; }
.hm-footer__logo img { display: block; width: 150px; height: auto; }
.hm-footer__cols { display: grid; grid-template-columns: repeat(3, minmax(150px, 1fr)); gap: 40px 72px; }
.hm-footer__heading { margin: 0 0 20px; font-size: 12px; color: var(--palomino); }
.hm-footer__links { display: flex; flex-direction: column; gap: 14px; font-size: 16px; line-height: 1.4; }
.hm-footer__links a:hover { color: var(--palomino); }
.hm-footer__links a[aria-current="page"] { color: var(--palomino); }
.hm-footer__bottom { max-width: 1240px; margin: 72px auto 0; padding-top: 26px; border-top: 1px solid #4A4034; display: flex; justify-content: space-between; gap: 12px; font-size: 14px; color: #BFB3A2; }
.hm-footer__tagline { font-size: 11px; }

/* ---------- Hero ---------- */
.hm-hero { position: relative; aspect-ratio: 3 / 2; min-height: 620px; max-height: 1000px; width: 100%; overflow: hidden; background: #394754; }
.hm-hero__media { position: absolute; inset: 0; }
.hm-hero__shade { display: none; }
.hm-hero__btn { position: absolute; top: var(--btn-top, 52%); transform: translateY(-50%); }
.hm-hero--btn-right .hm-hero__btn { right: 8%; }
.hm-hero--btn-left .hm-hero__btn { left: 8%; }
.hm-hero--btn-center .hm-hero__btn { left: 50%; transform: translate(-50%, -50%); }

/* ---------- Intro ---------- */
.hm-intro { position: relative; overflow: hidden; padding: 120px var(--gutter); background: var(--greige); }
.hm-intro__inner { position: relative; max-width: 1240px; margin: 0 auto; display: flex; align-items: center; justify-content: space-between; gap: 64px; }
.hm-intro__text { flex: 1 1 auto; min-width: 0; display: flex; flex-direction: column; align-items: flex-start; gap: 22px; }
.hm-intro__heading { font-size: 50px; line-height: 1.25; letter-spacing: 0.16em; }
.hm-intro__script { font-size: 40px; line-height: 1.2; }
.hm-intro__body { font-size: 19px; line-height: 1.75; }
.hm-intro__body p { margin: 0 0 18px; }
.hm-intro__btn { margin-top: 12px; }
.hm-intro__media { flex: 0 1 400px; width: 100%; aspect-ratio: 4 / 5; }
@media (min-width: 1000px) { .hm-intro--one-line .hm-intro__body p { white-space: nowrap; } }

/* ---------- Carousel ---------- */
.hm-carousel { position: relative; overflow: hidden; aspect-ratio: 16 / 9; max-height: 860px; width: 100%; background: var(--bridle); }
.hm-carousel__track { position: absolute; inset: 0; }
.hm-carousel__slide { position: absolute; inset: 0; opacity: 0; transition: opacity .6s ease; }
.hm-carousel__slide.is-active { opacity: 1; }
.hm-carousel__shade { position: absolute; left: 0; right: 0; bottom: 0; height: 40%; background: linear-gradient(180deg, rgba(41, 34, 25, 0) 0%, rgba(41, 34, 25, 0.45) 100%); pointer-events: none; }
.hm-carousel__btn { position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); z-index: 2; }
.hm-dots { position: absolute; right: 48px; bottom: 58px; z-index: 2; display: flex; gap: 10px; }
.hm-dot { width: 28px; height: 28px; padding: 0; border: 0; background: none; display: flex; align-items: center; justify-content: center; }
.hm-dot span { width: 9px; height: 9px; border-radius: 50%; background: var(--snow); opacity: .45; transition: opacity .2s ease; }
.hm-dot[aria-current="true"] span { opacity: 1; }

/* ---------- Banner ---------- */
.hm-banner { position: relative; min-height: var(--banner-h, 760px); padding: 0 7%; background: var(--bridle); display: flex; align-items: center; justify-content: flex-end; overflow: hidden; }
.hm-banner__media { position: absolute; inset: 0; }
.hm-banner__shade { position: absolute; inset: 0; background: rgba(41, 34, 25, var(--shade, 0.25)); }
.hm-banner__text { position: relative; margin: 120px 0 0; display: flex; flex-wrap: wrap; align-items: baseline; justify-content: flex-end; gap: 6px 20px; text-align: right; font-weight: 400; }
.hm-banner__script { font-size: 30px; line-height: 1; }
.hm-banner__heading { font-size: 48px; line-height: 1.15; letter-spacing: 0.14em; text-transform: uppercase; }

/* ---------- Image + text ---------- */
.hm-split { display: flex; background: var(--split-bg); color: var(--split-fg); }
.hm-split--right { flex-direction: row-reverse; }
.hm-split__media { flex: 1 1 50%; min-height: 740px; }
.hm-split__media .hm-cover, .hm-split__media svg { position: absolute; inset: 0; }
.hm-split__text { position: relative; isolation: isolate; overflow: hidden; flex: 1 1 50%; padding: 100px 80px; display: flex; flex-direction: column; justify-content: center; }
.hm-split__text .hm-pattern { z-index: -2; }
.hm-split__tint { position: absolute; inset: 0; z-index: -1; background: rgba(28, 38, 40, 0.18); }
.hm-split__text.has-pattern { text-shadow: 0 1px 10px rgba(20, 28, 30, .35); }
.hm-split__copy { display: flex; flex-direction: column; gap: 20px; }
.hm-split--align-center .hm-split__copy { align-items: center; text-align: center; }
.hm-split--align-left .hm-split__copy { align-items: flex-start; text-align: left; }
.hm-split__logo { width: 92px; height: auto; margin-bottom: 8px; }
.hm-split__script { font-size: 44px; line-height: 1.2; }
.hm-split__heading { font-size: 32px; line-height: 1.4; letter-spacing: 0.14em; }
.hm-split__body { max-width: 480px; font-size: 18px; line-height: 1.8; }
.hm-split__body p { margin: 0 0 16px; }

/* ---------- Details ---------- */
.hm-details { position: relative; overflow: hidden; background: var(--details-bg); color: var(--details-fg); padding: 110px 48px 120px; }
.hm-details__inner { position: relative; max-width: 1240px; margin: 0 auto; }
.hm-details__head { display: flex; flex-direction: column; align-items: center; gap: 6px; margin-bottom: 60px; text-align: center; }
.hm-details__script { font-size: 48px; line-height: 1.2; }
.hm-details__heading { font-size: 40px; line-height: 1.3; letter-spacing: 0.14em; }
.hm-details__grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 36px; }
.hm-details__card { display: flex; flex-direction: column; gap: 18px; }
.hm-details__img { aspect-ratio: 2 / 3; }
.hm-details__title { font-size: 13px; line-height: 1.5; }

/* ---------- Product ---------- */
.hm-product { padding: 28px var(--gutter) 110px; }
.hm-crumbs { max-width: 1344px; margin: 0 auto 28px; font-size: 11px; color: var(--muted); }
.hm-crumbs a:hover { color: var(--bridle); }
.hm-product__grid { max-width: 1344px; margin: 0 auto; display: flex; gap: 72px; align-items: flex-start; }
.hm-gallery { flex: 1 1 56%; min-width: 0; display: flex; gap: 14px; }
.hm-gallery__thumbs { flex: 0 0 64px; display: flex; flex-direction: column; gap: 10px; }
.hm-gallery__thumb { flex: 1 1 0; min-height: 0; width: 100%; padding: 0; border: 0; background: #E7D5BD; opacity: .65; transition: opacity .15s ease; }
.hm-gallery__thumb:hover { opacity: 1; }
.hm-gallery__thumb[aria-pressed="true"] { opacity: 1; outline: 1.5px solid var(--bridle); outline-offset: 3px; }
.hm-gallery__thumb .hm-cover { position: absolute; inset: 0; }
.hm-gallery__main { flex: 1 1 auto; aspect-ratio: 2 / 3; background: #E7D5BD; }
.hm-gallery__slide { position: absolute; inset: 0; display: none; }
.hm-gallery__slide.is-active { display: block; }
.hm-gallery__arrow, .hm-gallery__count { display: none; }
.hm-gallery__count { position: absolute; right: 14px; bottom: 14px; padding: 6px 10px; background: rgba(41, 34, 25, 0.55); color: var(--snow); font-size: 10px; }

.hm-product__info { flex: 1 1 44%; max-width: 560px; min-width: 0; display: flex; flex-direction: column; gap: 22px; padding-top: 14px; }
.hm-product__title { font-size: 46px; line-height: 1.15; letter-spacing: 0.14em; }
.hm-product__price { display: flex; flex-wrap: wrap; align-items: baseline; gap: 14px; }
.hm-product__price .laredo { font-size: 22px; letter-spacing: 0.12em; }
.hm-product__compare { color: var(--muted); font-size: 16px; }
.hm-product__price-note { font-size: 16px; color: var(--muted); }
.hm-product__desc { font-size: 18px; line-height: 1.75; }
.hm-product__desc p { margin: 0 0 14px; }
.hm-product__desc p:first-child { font-size: 20px; line-height: 1.6; }
.hm-product__made { display: flex; flex-direction: column; gap: 4px; padding: 16px 0; border-top: 1px solid rgba(41, 34, 25, .2); border-bottom: 1px solid rgba(41, 34, 25, .2); font-size: 16px; }
.hm-product__made-sub { font-size: 15px; color: var(--muted-2); }
.hm-product__form { display: flex; flex-direction: column; gap: 22px; }

.hm-opt { position: relative; }
.hm-opt__label { float: left; width: 100%; margin-bottom: 14px; padding: 0; font-size: 12px; }
.hm-opt__label + *, .hm-opt__fit + * { clear: both; }
.hm-opt__value { font-family: var(--font-body); text-transform: none; letter-spacing: var(--track); font-size: 16px; }
.hm-opt__fit { position: absolute; top: -2px; right: 0; font-size: 15px; }
.hm-swatches { display: flex; gap: 14px; }
.hm-swatch { position: relative; display: inline-flex; cursor: pointer; }
.hm-swatch input, .hm-size input { position: absolute; opacity: 0; width: 1px; height: 1px; margin: 0; }
.hm-swatch__dot { width: 44px; height: 44px; border-radius: 50%; background: var(--swatch); border: 2px solid var(--greige); }
.hm-swatch input:checked + .hm-swatch__dot { outline: 1.5px solid var(--bridle); outline-offset: 2px; }
.hm-swatch input:focus-visible + .hm-swatch__dot { outline: 2px solid var(--palomino-deep); outline-offset: 3px; }
.hm-sizes { display: flex; flex-wrap: wrap; gap: 10px; }
.hm-size { position: relative; cursor: pointer; }
.hm-size span {
  display: flex; align-items: center; justify-content: center; min-width: 58px; min-height: 50px; padding: 0 12px;
  border: 1.5px solid var(--bridle); font-family: var(--font-head); font-size: 14px; letter-spacing: 0.1em;
  transition: background .15s ease, color .15s ease;
}
.hm-size:hover span { background: rgba(41, 34, 25, .08); }
.hm-size input:checked + span { background: var(--bridle); color: var(--snow); }
.hm-size input:focus-visible + span { outline: 2px solid var(--palomino-deep); outline-offset: 2px; }
.hm-size.is-unavailable span { opacity: .45; text-decoration: line-through; }

.hm-product__buy { display: flex; flex-wrap: wrap; gap: 12px; padding-top: 4px; }
.hm-qty { display: flex; align-items: center; border: 1.5px solid var(--bridle); min-height: 58px; }
.hm-qty__btn { width: 48px; height: 54px; padding: 0; border: 0; background: none; font-size: 22px; }
.hm-qty__input, .hm-qty__val { width: 30px; min-width: 22px; border: 0; background: none; padding: 0; text-align: center; font: inherit; font-size: 18px; color: inherit; -moz-appearance: textfield; }
.hm-qty__input::-webkit-outer-spin-button, .hm-qty__input::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
.hm-product__add { flex: 1 1 240px; min-height: 58px; padding: 0 20px; }
.hm-product__msg { margin-top: -8px; }

.hm-accs { margin-top: 8px; border-bottom: 1px solid rgba(41, 34, 25, .25); }
.hm-acc__summary { display: flex; justify-content: space-between; align-items: center; min-height: 62px; border-top: 1px solid rgba(41, 34, 25, .25); list-style: none; cursor: pointer; font-size: 13px; }
.hm-acc__summary::-webkit-details-marker { display: none; }
.hm-acc__sign::after { content: '+'; font-size: 24px; line-height: 1; font-family: var(--font-body); }
.hm-acc[open] .hm-acc__sign::after { content: '\2212'; }
.hm-acc__body { padding: 4px 0 12px; font-size: 16.5px; line-height: 1.7; }
.hm-acc__body p { margin: 0 0 14px; }
.hm-acc__body strong { font-family: var(--font-head); font-weight: 400; text-transform: uppercase; letter-spacing: .12em; font-size: 12.5px; margin-right: 4px; }

/* ---------- Full image, story, values ---------- */
.hm-full-image__img { display: block; width: 100%; height: auto; }
.hm-story { padding: 120px var(--gutter); }
.hm-story__inner { max-width: 1180px; margin: 0 auto; display: flex; gap: 96px; align-items: flex-start; }
.hm-story__side { flex: 0 0 340px; display: flex; flex-direction: column; align-items: flex-start; gap: 18px; }
.hm-story__logo { display: block; width: var(--logo-w, 190px); height: auto; }
.hm-story__heading { font-size: 32px; line-height: 1.35; }
.hm-story__body { flex: 1 1 auto; font-size: 19px; line-height: 1.8; }
.hm-story__body p { margin: 0 0 22px; }

.hm-values { padding: 120px var(--gutter); }
.hm-values__inner { max-width: 1180px; margin: 0 auto; display: flex; flex-direction: column; align-items: center; gap: 56px; }
.hm-values__heading { font-size: 36px; line-height: 1.3; text-align: center; }
.hm-values__grid { width: 100%; display: grid; grid-template-columns: repeat(3, 1fr); gap: 48px; }
.hm-values__item { display: flex; flex-direction: column; align-items: center; gap: 14px; padding-top: 28px; border-top: 1.5px solid var(--palomino); text-align: center; }
.hm-values__word { font-size: 38px; line-height: 1.1; }
.hm-values__text { font-size: 17px; line-height: 1.75; }
.hm-values__logo { display: block; width: 320px; max-width: 80%; height: auto; margin-top: 24px; }

/* ---------- Page title, list, help box ---------- */
.hm-title-band { padding: 110px var(--gutter) 20px; display: flex; flex-direction: column; align-items: center; gap: 10px; text-align: center; }
.hm-title-band__script { font-size: 44px; line-height: 1.2; color: var(--palomino-deep); }
.hm-title-band__title { font-size: 52px; line-height: 1.2; letter-spacing: 0.16em; }
.hm-title-band__text { max-width: 820px; margin-top: 40px; font-size: 21px; line-height: 1.8; }
.template-page--contact .hm-title-band__text { max-width: 640px; margin-top: 18px; }

.hm-list { padding: 56px var(--gutter) 0; }
.hm-list__inner { max-width: 820px; margin: 0 auto; }
.hm-list__heading { margin-bottom: 18px; font-size: 22px; line-height: 1.4; }
.hm-list__item { display: grid; grid-template-columns: 56px 1fr; gap: 0 20px; padding: 30px 0; border-top: 1px solid var(--line); }
.hm-list__item:last-child { border-bottom: 1px solid var(--line); }
.hm-list__num { padding-top: 3px; font-size: 13px; color: var(--palomino-deep); }
.hm-list__copy { display: flex; flex-direction: column; gap: 8px; }
.hm-list__title { font-size: 15px; line-height: 1.5; letter-spacing: 0.14em; }
.hm-list__text { font-size: 18px; line-height: 1.8; }

.hm-help { padding: 56px var(--gutter) 110px; }
.hm-help__box { max-width: 820px; margin: 0 auto; padding: 40px 44px; background: var(--snow); display: flex; flex-direction: column; align-items: center; gap: 16px; text-align: center; }
.hm-help__script { font-size: 34px; line-height: 1.2; }
.hm-help__text { font-size: 18px; line-height: 1.7; }
.hm-help .hm-btn { margin-top: 6px; }

/* ---------- Forms & contact ---------- */
.hm-input {
  width: 100%; min-height: 52px; padding: 12px 14px;
  border: 1.5px solid rgba(41, 34, 25, .55); border-radius: 0; background: rgba(255, 255, 255, .35);
  font-family: var(--font-body); font-weight: 300; font-size: 17px; letter-spacing: .04em; color: var(--bridle);
  -webkit-appearance: none; appearance: none;
}
.hm-input:focus { outline: none; border-color: var(--bridle); background: rgba(255, 255, 255, .6); box-shadow: 0 0 0 3px rgba(221, 168, 132, .45); }
.hm-textarea { min-height: 170px; resize: vertical; line-height: 1.6; }
.hm-select {
  padding-right: 40px; background-repeat: no-repeat; background-position: right 14px center;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%23292219' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");
}
.hm-field { display: flex; flex-direction: column; gap: 8px; min-width: 0; }
.hm-field__label { font-size: 11px; }
.hm-field__hint { font-family: var(--font-body); text-transform: none; letter-spacing: .04em; font-size: 13px; color: var(--muted); }
.hm-form { display: flex; flex-direction: column; gap: 22px; }
.hm-form__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 22px 20px; }

.hm-contact { padding: 64px var(--gutter) 120px; }
.hm-contact__inner { max-width: 1180px; margin: 0 auto; display: flex; gap: 64px; align-items: flex-start; }
.hm-contact__form { flex: 1 1 640px; min-width: 0; }
.hm-contact__send { align-self: flex-start; padding: 0 52px; }
.hm-contact__errors ul { margin: 6px 0 0; padding-left: 1.2em; }
.hm-contact__thanks { background: var(--snow); padding: 56px 48px; display: flex; flex-direction: column; align-items: center; gap: 14px; text-align: center; font-size: 17px; line-height: 1.7; }
.hm-contact__thanks-script { font-size: 44px; line-height: 1.1; color: var(--palomino-deep); }
.hm-contact__aside { flex: 0 1 400px; min-width: 0; background: var(--snow); padding: 44px 40px 36px; display: flex; flex-direction: column; }
.hm-contact__aside-script { margin-bottom: 18px; font-size: 36px; line-height: 1.2; }
.hm-contact__row { display: flex; flex-direction: column; gap: 6px; padding: 18px 0; border-top: 1px solid rgba(41, 34, 25, .16); }
.hm-contact__row-label { font-size: 11px; color: var(--palomino-deep); }
.hm-contact__row-text { font-size: 17px; line-height: 1.75; overflow-wrap: anywhere; }

/* ---------- Cart drawer ---------- */
.hm-drawer { position: fixed; inset: 0; z-index: 100; visibility: hidden; pointer-events: none; }
.hm-drawer.is-open { visibility: visible; pointer-events: auto; }
.hm-drawer__overlay { position: absolute; inset: 0; background: rgba(41, 34, 25, 0.45); opacity: 0; transition: opacity .3s ease; }
.hm-drawer.is-open .hm-drawer__overlay { opacity: 1; }
.hm-drawer__panel {
  position: absolute; top: 0; right: 0; bottom: 0; width: 480px; max-width: 100%;
  background: var(--greige); box-shadow: -18px 0 40px rgba(41, 34, 25, 0.22);
  transform: translateX(100%); transition: transform .32s ease; outline: none;
}
.hm-drawer.is-open .hm-drawer__panel { transform: none; }
.hm-drawer__content { height: 100%; display: flex; flex-direction: column; }
.hm-drawer__head { display: flex; align-items: center; justify-content: space-between; padding: 22px 20px 22px 32px; border-bottom: 1px solid rgba(41, 34, 25, 0.14); }
.hm-drawer__title { font-size: 15px; letter-spacing: 0.18em; }
.hm-drawer__count { color: var(--palomino-deep); }
.hm-drawer__body { flex: 1 1 auto; overflow-y: auto; padding: 26px 32px; overscroll-behavior: contain; }
.hm-drawer.is-busy .hm-drawer__body { opacity: .6; pointer-events: none; }

.hm-items { display: flex; flex-direction: column; gap: 26px; }
.hm-item { display: flex; gap: 18px; padding-bottom: 26px; border-bottom: 1px solid rgba(41, 34, 25, 0.14); }
.hm-item__img { flex: none; width: 104px; height: 156px; background: #E7D5BD; }
.hm-item__img .hm-cover { position: absolute; inset: 0; }
.hm-item__info { flex: 1 1 auto; min-width: 0; display: flex; flex-direction: column; gap: 6px; }
.hm-item__top { display: flex; justify-content: space-between; align-items: baseline; gap: 10px; }
.hm-item__title { font-size: 14px; letter-spacing: 0.14em; }
.hm-item__price { font-size: 14px; letter-spacing: 0.1em; white-space: nowrap; }
.hm-item__variant, .hm-item__prop { font-size: 15.5px; color: var(--muted-2); }
.hm-tag { align-self: flex-start; margin-top: 2px; padding: 5px 9px 4px; background: var(--palomino); color: var(--bridle); font-size: 10px; letter-spacing: 0.16em; }
.hm-item__actions { margin-top: auto; padding-top: 12px; display: flex; align-items: center; justify-content: space-between; }
.hm-qty--sm { min-height: 42px; }
.hm-qty--sm .hm-qty__btn { width: 38px; height: 40px; font-size: 18px; }
.hm-qty--sm .hm-qty__val, .hm-qty--sm .hm-qty__input { font-size: 16px; }
.hm-item__remove { font-size: 14px; color: var(--muted-2); }

.hm-note { margin-top: 26px; padding: 22px 22px 20px; background: var(--snow); display: flex; flex-direction: column; gap: 8px; }
.hm-note__script { font-size: 26px; line-height: 1.15; color: var(--palomino-deep); }
.hm-note__text { font-size: 15.5px; line-height: 1.65; }
.hm-note__text p { margin: 0; }
.hm-drawer__returns { margin-top: 22px; display: flex; gap: 12px; align-items: flex-start; font-size: 14.5px; line-height: 1.6; color: var(--muted-2); }
.hm-drawer__returns .hm-icon { flex: none; margin-top: 1px; color: var(--palomino-deep); }
.hm-drawer__returns a { color: var(--bridle); }
.hm-drawer__foot { padding: 22px 32px 30px; border-top: 1px solid rgba(41, 34, 25, 0.14); display: flex; flex-direction: column; gap: 12px; }
.hm-drawer__subtotal { display: flex; justify-content: space-between; align-items: baseline; gap: 12px; }
.hm-drawer__subtotal .laredo { font-size: 13px; letter-spacing: 0.18em; }
.hm-drawer__subtotal .hm-drawer__subtotal-price { font-size: 18px; letter-spacing: 0.1em; }
.hm-drawer__tax { font-size: 14px; color: var(--muted); }
.hm-drawer__checkout { margin: 4px 0 0; }
.hm-drawer__checkout .hm-btn { font-size: 14px; }
.hm-drawer__continue { align-self: center; margin-top: 4px; font-size: 14.5px; }
.hm-drawer__empty { padding-top: 120px; display: flex; flex-direction: column; align-items: center; gap: 14px; text-align: center; }
.hm-drawer__empty-logo { width: 110px; height: auto; margin-bottom: 10px; }
.hm-drawer__empty-title { font-size: 16px; }
.hm-drawer__empty-text { font-size: 16px; color: var(--muted-2); }
.hm-drawer__empty .hm-btn { margin-top: 10px; }

/* ---------- Cart page ---------- */
.hm-cart-page__inner { max-width: 1100px; margin: 0 auto; padding: 40px var(--gutter) 110px; }
.hm-cart-page__form { display: grid; grid-template-columns: 1.4fr 1fr; gap: 56px; align-items: start; }
.hm-cart-page__side { display: flex; flex-direction: column; gap: 14px; }
.hm-cart-page__side .hm-note { margin: 0 0 8px; }
.hm-cart-page .hm-drawer__empty { padding-top: 40px; }

/* ---------- Generic pages ---------- */
.hm-page { padding-bottom: 110px; }
.hm-page__content { max-width: 820px; margin: 0 auto; padding: 40px var(--gutter) 0; font-size: 18px; line-height: 1.8; }
.hm-page__content p { margin: 0 0 1em; }
.hm-page__image { max-width: 1100px; margin: 30px auto 0; padding: 0 var(--gutter); }
.hm-page__actions { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 24px; margin-top: 36px; padding: 0 var(--gutter); }
.hm-search { display: flex; gap: 10px; max-width: 600px; margin: 0 auto 30px; }
.hm-search .hm-input { flex: 1 1 auto; }
.hm-search__count { margin-bottom: 18px; color: var(--muted); }
.hm-results { display: flex; flex-direction: column; gap: 12px; }
.hm-grid { max-width: 1240px; margin: 0 auto; padding: 40px var(--gutter) 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 40px 36px; }
.hm-card { display: flex; flex-direction: column; gap: 10px; }
.hm-card__img { aspect-ratio: 4 / 5; background: #E7D5BD; }
.hm-card__img--tall { aspect-ratio: 2 / 3; }
.hm-card__title { font-size: 14px; }
.hm-card__meta { font-size: 13px; color: var(--muted); }
.hm-paginate { margin-top: 40px; text-align: center; font-family: var(--font-head); letter-spacing: .14em; }
.hm-paginate .page, .hm-paginate .next, .hm-paginate .prev { padding: 0 8px; }
.hm-giftcard { text-align: center; }
.hm-giftcard__code { margin: 8px 0 24px; font-family: var(--font-head); font-size: 22px; letter-spacing: .16em; }
#QrCode { display: flex; justify-content: center; margin-bottom: 20px; }

/* ---------- Password page ---------- */
.hm-pw { background: var(--snow); padding: 22px 24px 26px; text-align: center; }
.hm-pw__toggle { display: inline-block; font-size: 12px; cursor: pointer; list-style: none; border-bottom: 1px solid currentColor; padding-bottom: 2px; }
.hm-pw__toggle::-webkit-details-marker { display: none; }
.hm-pw__panel { max-width: 440px; margin: 18px auto 0; display: flex; flex-direction: column; gap: 12px; }
.hm-pw__label { font-size: 11px; display: block; margin-bottom: 8px; text-align: left; }
.hm-pw__row { display: flex; gap: 10px; }
.hm-pw__owner { font-size: 14px; color: var(--muted); }

/* =================================================================
   Tablet
   ================================================================= */
@media (max-width: 1100px) {
  :root { --gutter: 36px; }
  .hm-product__grid { gap: 48px; }
  .hm-story__inner { gap: 56px; }
  .hm-story__side { flex-basis: 260px; }
  .hm-split__text { padding: 80px 48px; }
  .hm-contact__inner { gap: 40px; }
  .hm-footer__cols { gap: 36px 40px; }
}

/* =================================================================
   Phones
   ================================================================= */
@media (max-width: 749px) {
  :root { --track: 0.06em; --gutter: 24px; }
  body { font-size: 17px; }
  .hm-only-mobile { display: block !important; }
  .hm-only-desktop { display: none !important; }
  .hm-cover { object-position: var(--pos-m, var(--pos-d, 50% 50%)); }

  .hm-btn { min-height: 54px; padding: 0 24px; font-size: 13px; }
  .hm-btn--lg { min-height: 54px; padding: 0 22px; font-size: 13px; }
  .hm-btn--outline { box-shadow: inset 0 0 0 1.5px currentColor; }
  .hm-arrow { width: 44px; height: 44px; }
  .hm-arrow--prev { left: 12px; }
  .hm-arrow--next { right: 12px; }

  /* Footer */
  .hm-footer { padding: 64px 26px 30px; }
  .hm-footer__top { flex-direction: column; align-items: stretch; gap: 36px; }
  .hm-footer__brand { gap: 18px; }
  .hm-footer__logo img { width: 112px; }
  .hm-footer__cols { grid-template-columns: 1fr 1fr; gap: 36px 20px; }
  .hm-footer__col--2 { order: 3; }
  .hm-footer__heading { margin-bottom: 14px; font-size: 11px; }
  .hm-footer__links { gap: 10px; font-size: 15px; }
  .hm-footer__bottom { margin-top: 48px; padding-top: 22px; flex-direction: column; align-items: center; gap: 10px; font-size: 13px; line-height: 1.6; text-align: center; }
  .hm-footer__sep { display: none; }
  .hm-footer__made { display: block; }
  .hm-footer__tagline { font-size: 10px; }

  /* Hero */
  .hm-hero { aspect-ratio: auto; height: var(--hero-h-m, 640px); min-height: 0; max-height: none; }
  .hm-hero__shade { display: block; position: absolute; left: 0; right: 0; bottom: 0; height: 45%; background: linear-gradient(180deg, rgba(41, 34, 25, 0) 0%, rgba(41, 34, 25, 0.45) 100%); }
  .hm-hero .hm-hero__btn { top: auto; bottom: 34px; left: 24px; right: 24px; transform: none; }

  /* Intro */
  .hm-intro { padding: 72px 24px 0; }
  .hm-intro__inner { flex-direction: column; align-items: stretch; gap: 0; }
  .hm-intro__text { gap: 16px; }
  .hm-intro__heading { font-size: 30px; line-height: 1.3; }
  .hm-intro__script { font-size: 32px; }
  .hm-intro__body { font-size: 17px; line-height: 1.7; }
  .hm-intro__body p { margin-bottom: 14px; }
  .hm-intro__btn { align-self: stretch; margin-top: 8px; }
  .hm-intro__media { flex: none; width: auto; margin: 48px -24px 0; }

  /* Carousel */
  .hm-carousel { aspect-ratio: 4 / 5; max-height: none; }
  .hm-carousel__btn { padding: 0 18px; letter-spacing: .16em; }
  .hm-dots { left: 0; right: 0; bottom: 18px; justify-content: center; gap: 2px; }
  .hm-dot { width: 26px; height: 26px; }
  .hm-dot span { width: 8px; height: 8px; }

  /* Banner */
  .hm-banner { min-height: 560px; padding: 0; align-items: flex-end; justify-content: flex-start; }
  .hm-banner__shade { background: linear-gradient(180deg, rgba(41, 34, 25, 0.05) 40%, rgba(41, 34, 25, 0.55) 100%); }
  .hm-banner__text { margin: 0; padding: 0 24px 40px; flex-direction: column; align-items: flex-start; gap: 4px; text-align: left; }
  .hm-banner__script { font-size: 28px; }
  .hm-banner__heading { font-size: 28px; line-height: 1.25; }


  /* Image + text */
  .hm-split, .hm-split--right { flex-direction: column; }
  .hm-split__media { flex: none; min-height: 0; aspect-ratio: 4 / 5; }
  .hm-split__text { padding: 64px 24px 72px; }
  .hm-split__copy { gap: 16px; }
  .hm-split__logo { width: 76px; margin-bottom: 6px; }
  .hm-split__script { font-size: 36px; }
  .hm-split__heading { font-size: 22px; line-height: 1.45; }
  .hm-split__body { font-size: 16.5px; line-height: 1.75; }

  /* Details */
  .hm-details { padding: 72px 0 80px; }
  .hm-details__head { padding: 0 24px; margin-bottom: 40px; gap: 8px; }
  .hm-details__script { font-size: 32px; line-height: 1.25; }
  .hm-details__heading { font-size: 22px; line-height: 1.4; }
  .hm-details__grid { display: flex; gap: 14px; overflow-x: auto; scroll-snap-type: x mandatory; padding: 0 24px; scroll-padding: 0 24px; -webkit-overflow-scrolling: touch; scrollbar-width: none; }
  .hm-details__grid::-webkit-scrollbar { display: none; }
  .hm-details__grid::after { content: ''; flex: 0 0 10px; }
  .hm-details__card { flex: 0 0 270px; scroll-snap-align: start; gap: 14px; }
  .hm-details__title { font-size: 12px; }

  /* Product */
  .hm-product { padding: 0 0 72px; }
  .hm-crumbs { display: none; }
  .hm-product__grid { flex-direction: column; gap: 0; }
  .hm-gallery { flex: none; width: 100%; flex-direction: column; gap: 12px; }
  .hm-gallery__main { order: 1; width: 100%; }
  .hm-gallery__thumbs { order: 2; flex: none; flex-direction: row; gap: 8px; overflow-x: auto; padding: 0 24px; scroll-padding: 0 24px; scroll-snap-type: x mandatory; scrollbar-width: none; }
  .hm-gallery__thumbs::-webkit-scrollbar { display: none; }
  .hm-gallery__thumb { flex: 0 0 58px; height: 87px; scroll-snap-align: start; }
  .hm-gallery__thumb[aria-pressed="true"] { outline-width: 2px; outline-offset: -2px; }
  .hm-gallery__arrow { display: flex; }
  .hm-gallery__count { display: block; }
  .hm-product__info { max-width: none; width: 100%; padding: 30px 24px 0; gap: 20px; }
  .hm-product__title { font-size: 30px; line-height: 1.2; }
  .hm-product__price .laredo { font-size: 19px; }
  .hm-product__price-note { font-size: 15px; }
  .hm-product__desc { font-size: 16.5px; line-height: 1.7; }
  .hm-product__desc p:first-child { font-size: 18px; line-height: 1.55; }
  .hm-product__made { font-size: 15px; padding: 14px 0; }
  .hm-product__made-sub { font-size: 14px; line-height: 1.55; }
  .hm-opt__label { font-size: 11px; margin-bottom: 12px; }
  .hm-opt__value { font-size: 15px; }
  .hm-opt__fit { font-size: 14px; }
  .hm-sizes { display: grid; grid-template-columns: repeat(4, 1fr); gap: 8px; }
  .hm-size span { min-width: 0; padding: 0; }
  .hm-product__buy { flex-wrap: nowrap; gap: 10px; }
  .hm-qty { min-height: 54px; flex: none; }
  .hm-qty__btn { width: 40px; height: 50px; font-size: 20px; }
  .hm-qty__input { font-size: 17px; }
  .hm-product__add { flex: 1 1 auto; min-height: 54px; padding: 0 12px; letter-spacing: .16em; }
  .hm-acc__summary { min-height: 60px; font-size: 12px; }
  .hm-acc__body { font-size: 15.5px; }
  .hm-acc__body strong { display: block; margin: 0 0 2px; font-size: 11.5px; }

  /* Story & values */
  .hm-story { padding: 72px 24px; }
  .hm-story__inner { flex-direction: column; gap: 30px; }
  .hm-story__side { flex: none; gap: 14px; }
  .hm-story__logo { width: var(--logo-w-m, 150px); }
  .hm-story__heading { font-size: 26px; }
  .hm-story__body { font-size: 17px; line-height: 1.75; }
  .hm-story__body p { margin-bottom: 18px; }
  .hm-values { padding: 72px 24px 80px; }
  .hm-values__inner { gap: 36px; }
  .hm-values__heading { font-size: 24px; line-height: 1.35; }
  .hm-values__grid { grid-template-columns: 1fr; gap: 32px; }
  .hm-values__item { gap: 10px; padding-top: 24px; }
  .hm-values__word { font-size: 32px; }
  .hm-values__text { font-size: 16px; line-height: 1.7; }
  .hm-values__logo { width: 230px; margin-top: 16px; }

  /* Title band, list, help */
  .hm-title-band { padding: 64px 24px 8px; gap: 8px; }
  .hm-title-band__script { font-size: 34px; }
  .hm-title-band__title { font-size: 28px; line-height: 1.35; }
  .hm-title-band__text { margin-top: 24px; font-size: 17.5px; line-height: 1.75; }
  .template-page--contact .hm-title-band__text { margin-top: 14px; font-size: 17px; }
  .hm-list { padding: 40px 24px 0; }
  .hm-list__heading { font-size: 17px; line-height: 1.45; margin-bottom: 14px; }
  .hm-list__item { grid-template-columns: 34px 1fr; gap: 0 12px; padding: 24px 0; }
  .hm-list__num { font-size: 12px; }
  .hm-list__copy { gap: 6px; }
  .hm-list__title { font-size: 13px; }
  .hm-list__text { font-size: 16px; line-height: 1.7; }
  .hm-help { padding: 44px 24px 72px; }
  .hm-help__box { padding: 36px 24px; gap: 14px; }
  .hm-help__script { font-size: 30px; }
  .hm-help__text { font-size: 16px; }
  .hm-help .hm-btn { align-self: stretch; }

  /* Contact */
  .hm-contact { padding: 36px 24px 72px; }
  .hm-contact__inner { flex-direction: column; gap: 44px; }
  .hm-contact__form, .hm-contact__aside { flex: none; width: 100%; }
  .hm-form__grid { grid-template-columns: 1fr; }
  .hm-contact__send { align-self: stretch; padding: 0 24px; }
  .hm-contact__thanks { padding: 40px 24px; }
  .hm-contact__thanks-script { font-size: 34px; }
  .hm-contact__aside { padding: 36px 24px 30px; }
  .hm-contact__aside-script { font-size: 30px; }

  /* Drawer */
  .hm-drawer__panel { width: 100%; }
  .hm-drawer__head { padding: 14px 12px 14px 22px; }
  .hm-drawer__body { padding: 26px 22px; }
  .hm-drawer__foot { padding: 22px 22px 26px; }
  .hm-item__img { width: 92px; height: 138px; }
  .hm-item__top { flex-direction: column; gap: 4px; }
  .hm-drawer__empty { padding-top: 90px; }

  /* Cart page & misc */
  .hm-cart-page__inner { padding: 24px 24px 72px; }
  .hm-cart-page__form { grid-template-columns: 1fr; gap: 32px; }
  .hm-page { padding-bottom: 72px; }
  .hm-grid { grid-template-columns: 1fr; padding-top: 30px; }
}

/* Mobile: centred text on Home and Our Story */
@media (max-width: 749px) {
  .hm-intro__text { align-items: center; text-align: center; }
  .hm-banner { justify-content: center; }
  .hm-banner__text { width: 100%; align-items: center; text-align: center; }
  .hm-banner__heading { padding-left: 0.14em; font-size: 28px; }
  .hm-story__side { align-self: stretch; align-items: center; }
  .hm-story__logo { width: 116px; }
  .hm-story__body { text-align: center; }
  .hm-split--align-left .hm-split__copy { align-items: center; text-align: center; }
  .hm-hero .hm-hero__btn { top: 50%; bottom: auto; left: 50%; right: auto; transform: translate(-50%, -50%); }
}

/* Home intro: "Our Story" button over Chelsea's photo */
.hm-intro__img-shade { position: absolute; inset: 0; background: rgba(41, 34, 25, 0.22); pointer-events: none; }
.hm-intro__img-btn { position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); }

   /* Home intro: Willow star under the text */
   .hm-intro__star { display: block; width: 40px; height: auto; margin-top: 4px; }
   @media (max-width: 749px) { .hm-intro__star { width: 34px; } }

   /* Home intro: "ride the moment" in Sage */
.hm-intro__script { color: #818468; }

   /* Footer: social icons under the last link column */
   .hm-footer__social { display: flex; gap: 2px; margin: 18px 0 0 -11px; }
   .hm-footer__social a:hover { color: var(--palomino); }\\/* Home intro: heading on one line on desktop */


@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { transition-duration: 0s !important; animation-duration: 0s !important; }
}

/* Home intro: heading on one line on desktop */
@media (min-width: 750px) { .hm-intro__heading br { display: none; } }

/* Home intro: pin photo to its frame (fixes zoomed crop on iPhone) */
.hm-intro__media .hm-cover { position: absolute; inset: 0; width: 100%; height: 100%; }

   /* Product: "Limited Edition" colour row */
   .hm-opt__sub { margin: 20px 0 14px; font-size: 11px; }

   /* Home carousel: match the photos' 3:2 shape so nothing is cropped */
.hm-carousel { aspect-ratio: 3 / 2; max-height: none; }


/* ---------- Size guide (Oct 23) ---------- */
.hm-sg { width: min(860px, calc(100% - 48px)); max-width: none; max-height: calc(100vh - 48px); max-height: calc(100dvh - 48px); padding: 0; border: 0; background: var(--greige); color: var(--bridle); overflow: hidden; }
.hm-sg::backdrop { background: rgba(41, 34, 25, 0.55); }
.hm-sg[open] { display: flex; }
.hm-sg__panel { display: flex; flex-direction: column; width: 100%; max-height: inherit; }
.hm-sg__head { display: flex; align-items: center; justify-content: space-between; padding: 18px 20px 14px 36px; border-bottom: 1px solid var(--line); }
.hm-sg__title { margin: 0; font-size: 22px; letter-spacing: 0.14em; text-transform: uppercase; font-weight: 400; }
.hm-sg__body { overflow-y: auto; padding: 24px 36px 32px; -webkit-overflow-scrolling: touch; }
.hm-sg__intro { margin: 0 0 20px; font-size: 16px; color: var(--muted-2); }
.hm-sg__controls { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 14px; margin-bottom: 26px; }
.hm-sg__sizes { display: flex; flex-wrap: wrap; gap: 8px; }
.hm-sg__size, .hm-sg__unit { min-width: 46px; height: 42px; padding: 0 10px; border: 1.5px solid var(--bridle); background: transparent; color: var(--bridle); font-family: var(--font-head); font-size: 13px; letter-spacing: 0.1em; cursor: pointer; transition: background .15s ease, color .15s ease; }
.hm-sg__size:hover, .hm-sg__unit:hover { background: rgba(41, 34, 25, .08); }
.hm-sg__size[aria-pressed="true"], .hm-sg__unit[aria-pressed="true"] { background: var(--bridle); color: var(--snow); }
.hm-sg__units { display: flex; }
.hm-sg__unit { min-width: 48px; text-transform: uppercase; }
.hm-sg__unit + .hm-sg__unit { margin-left: -1.5px; }
.hm-sg__fit { display: grid; grid-template-columns: 210px 1fr; gap: 40px; align-items: start; }
.hm-sg__diagram { width: 100%; height: auto; overflow: visible; }
.hm-sg__pant { fill: var(--snow); stroke: var(--bridle); stroke-width: 1.4; stroke-linejoin: round; }
.hm-sg__seam { fill: none; stroke: var(--bridle); stroke-width: 0.8; opacity: .55; }
.hm-sg__m path { fill: none; stroke: #818468; stroke-width: 1.6; stroke-dasharray: 3 2.5; stroke-linecap: round; }
.hm-sg__dots circle { fill: #818468; }
.hm-sg__dots text { fill: #fff; font-family: var(--font-head); font-size: 9.5px; text-anchor: middle; dominant-baseline: central; letter-spacing: 0; }
.hm-sg__list { list-style: none; margin: 0; padding: 0; }
.hm-sg__item { display: grid; grid-template-columns: 30px 1fr auto; column-gap: 12px; align-items: baseline; padding: 11px 0; border-bottom: 1px solid var(--line); }
.hm-sg__item:first-child { border-top: 1px solid var(--line); }
.hm-sg__num { display: inline-flex; align-items: center; justify-content: center; width: 22px; height: 22px; border-radius: 50%; background: #818468; color: #fff; font-family: var(--font-head); font-size: 11px; letter-spacing: 0; align-self: center; }
.hm-sg__name { font-family: var(--font-head); font-size: 14px; letter-spacing: 0.1em; text-transform: uppercase; }
.hm-sg__val { font-size: 18px; font-weight: 400; white-space: nowrap; }
.hm-sg__how { grid-column: 2 / -1; font-size: 14px; line-height: 1.45; color: var(--muted); margin-top: 2px; }
.hm-sg__tip { margin-top: 30px; padding: 20px 24px; background: var(--snow); }
.hm-sg__tip-title { margin: 0 0 6px; font-size: 13px; letter-spacing: 0.14em; text-transform: uppercase; }
.hm-sg__tip .hm-rte p { margin: 0; font-size: 16px; }
.hm-sg__all { margin-top: 26px; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.hm-sg__all summary { display: flex; justify-content: space-between; padding: 14px 0; cursor: pointer; list-style: none; font-size: 13px; letter-spacing: 0.14em; text-transform: uppercase; }
.hm-sg__all summary::-webkit-details-marker { display: none; }
.hm-sg__all[open] summary span { transform: rotate(45deg); }
.hm-sg__all summary span { transition: transform .2s ease; font-size: 18px; line-height: 1; }
.hm-sg__scroll { overflow-x: auto; margin-bottom: 18px; -webkit-overflow-scrolling: touch; }
.hm-sg__table { width: 100%; border-collapse: collapse; font-size: 15px; white-space: nowrap; }
.hm-sg__table th, .hm-sg__table td { padding: 9px 10px; text-align: center; border-bottom: 1px solid var(--line); }
.hm-sg__table thead th { font-family: var(--font-head); font-weight: 400; font-size: 13px; letter-spacing: 0.1em; }
.hm-sg__table tbody th { text-align: left; font-weight: 400; position: sticky; left: 0; background: var(--greige); padding-left: 0; }
.hm-sg__table .is-active { background: rgba(129, 132, 104, .18); }
.hm-sg__foot { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: baseline; gap: 12px 24px; margin-top: 22px; font-size: 15px; }
.hm-sg__help { margin: 0; color: var(--muted-2); }
.hm-sg__help a { color: var(--bridle); }
.hm-sg__hem { font-size: 15px; cursor: pointer; }
@media (max-width: 749px) {
  .hm-sg { width: 100%; height: 100%; max-height: 100%; margin: 0; }
  .hm-sg__head { padding: 10px 8px 10px 20px; }
  .hm-sg__title { font-size: 18px; }
  .hm-sg__body { padding: 18px 20px 32px; }
  .hm-sg__intro { font-size: 15px; }
  .hm-sg__controls { margin-bottom: 20px; }
  .hm-sg__sizes { gap: 6px; width: 100%; }
  .hm-sg__size { min-width: 0; flex: 1 0 calc(25% - 6px); height: 40px; }
  .hm-sg__fit { grid-template-columns: 1fr; gap: 18px; }
  .hm-sg__diagram { width: 150px; margin: 0 auto; display: block; }
  .hm-sg__tip { padding: 16px 18px; }
  .hm-sg__foot { flex-direction: column; }
}
.hm-sg__table thead th:first-child { text-align: left; padding-left: 0; }

/* Script sign-off under image + text copy (Oct 23) */
.hm-split__signoff { margin: 18px 0 0; font-size: 40px; line-height: 1.2; }
@media (max-width: 749px) { .hm-split__signoff { font-size: 34px; } }

/* Image + text: adjustable photo width (Oct 23) */
@media (min-width: 750px) {
  .hm-split__media { flex: 0 0 var(--media-w, 50%); }
  .hm-split__text { flex: 1 1 0; }
  .hm-split__body { max-width: 620px; }
}
* ---------- Collaborators page (Oct 24) ---------- */
.hm-collabs { padding: 44px var(--gutter) 120px; }
.hm-collabs .hm-collabs__grid { margin-left: auto; margin-right: auto; }
.hm-collabs__heading { margin: 0 0 40px; text-align: center; font-size: 22px; letter-spacing: 0.14em; text-transform: uppercase; font-weight: 400; }
.hm-collabs__grid { list-style: none; margin: 0 auto; padding: 0; max-width: 1180px; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 22px; }
.hm-collab { background: var(--snow); padding: 40px 24px 36px; display: flex; flex-direction: column; align-items: center; text-align: center; }
.hm-collab__star { width: 30px; height: auto; margin-bottom: 20px; }
.hm-collab__img { position: relative; width: 120px; aspect-ratio: 1; border-radius: 50%; overflow: hidden; margin-bottom: 20px; }
.hm-collab__role { margin: 0 0 10px; font-size: 12px; letter-spacing: 0.22em; text-transform: uppercase; color: #818468; }
.hm-collab__name { margin: 0; font-size: 19px; line-height: 1.35; letter-spacing: 0.1em; text-transform: uppercase; font-weight: 400; }
.hm-collab__text { margin: 10px 0 0; font-size: 15px; line-height: 1.55; color: var(--muted-2); }
.hm-collab__links { margin-top: auto; padding-top: 22px; display: flex; flex-direction: column; align-items: center; gap: 10px; }
.hm-collab__ig { display: inline-flex; align-items: center; gap: 6px; color: var(--bridle); text-decoration: none; font-size: 15px; }
.hm-collab__ig svg { width: 20px; height: 20px; flex: none; }
.hm-collab__ig:hover span { text-decoration: underline; text-underline-offset: 3px; }
.hm-collab__web { margin-top: 8px; font-size: 15px; color: var(--bridle); text-decoration: none; letter-spacing: 0.06em; border-bottom: 1px solid var(--palomino-deep); padding-bottom: 1px; }
.hm-collab__web:hover { color: var(--palomino-deep); }
@media (max-width: 1100px) { .hm-collabs__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); max-width: 760px; } }
@media (max-width: 749px) {
  .hm-collabs { padding: 24px 20px 80px; }
  .hm-collabs__grid { grid-template-columns: 1fr; gap: 14px; }
  .hm-collab { padding: 32px 20px 28px; }
}
.hm-collabs__signoff { margin-top: 64px; display: flex; flex-direction: column; align-items: center; gap: 2px; text-align: center; }
.hm-collabs__signoff-script { margin: 0; font-size: 44px; line-height: 1.2; color: var(--palomino-deep); }
.hm-collabs__signoff-name { margin: 0; font-size: 26px; letter-spacing: 0.16em; text-transform: uppercase; }
@media (max-width: 749px) { .hm-collabs__signoff { margin-top: 44px; } .hm-collabs__signoff-script { font-size: 36px; } .hm-collabs__signoff-name { font-size: 22px; } }

.hm-collabs__signoff { padding-bottom: 110px; }
@media (max-width: 749px) { .hm-collabs__signoff { padding-bottom: 70px; } }

/* Collaborators: 3 per row, uneven last row centred (Oct 24) */
@media (min-width: 750px) {
  .hm-collabs .hm-collabs__grid { display: flex; flex-wrap: wrap; justify-content: center; max-width: 960px; }
  .hm-collab { flex: 0 0 calc((100% - 44px) / 3); }
}
@media (min-width: 750px) and (max-width: 1000px) { .hm-collab { flex-basis: calc((100% - 22px) / 2); } }