@charset "UTF-8";
/* 2026-10-06 detail polish: preserve existing wording/prices and target only requested surfaces. */
#body_wrap .hh-home .hh-campaign a { font-weight: 700 !important; }
#body_wrap .l-footer__nav a { font-family: var(--hh-sans); font-size: 16px !important; }
/* Converted pages also need full-width paragraphs, not only a 1100px outer group. */
#body_wrap.page:not(.home) .hh-converted-page > .wp-block-group__inner-container > p {
  width: 100%; max-width: 1100px; min-width: 0; box-sizing: border-box;
  margin-inline: 0;
}
#body_wrap .hh-process-page .hh-process-cta { justify-content: center; margin-top: 28px; }
#body_wrap .hh-process-page .hh-process-cta .wp-block-button__link {
  display: inline-flex; align-items: center; justify-content: center;
  min-height: 50px; padding: 14px 26px; box-sizing: border-box;
  border: 0 !important; border-radius: 999px !important;
  background: var(--hh-yellow) !important; color: var(--hh-ink) !important;
  font-family: var(--hh-sans); font-size: 16px !important; line-height: 1.5;
  font-weight: 700 !important; text-align: center; text-decoration: none;
  box-shadow: var(--hh-shadow);
}
#body_wrap .hh-trial .hh-trial-course--kids .wp-block-list { background: #fff !important; }
/* Sage surfaces for men's content only; all other yellow tables/buttons stay unchanged. */
#body_wrap .hh-trial #hikari { --hh-mens-soft: #e3eedb; --hh-mens-dark: #37532c; --hh-mens-border: #bed0b2; }
#body_wrap .hh-price-page .hh-price-summary--mens { --hh-mens-soft: #e3eedb; --hh-mens-dark: #37532c; --hh-mens-border: #bed0b2; }
#body_wrap.page-id-222 .hh-inner-page { --hh-mens-soft: #e3eedb; --hh-mens-dark: #37532c; --hh-mens-border: #bed0b2; }
#body_wrap.page-id-222 .post_content .hh-menu-explanation { background: #fff !important; }
#body_wrap.page-id-222 .post_content table :is(th,td.column-1) {
  background: var(--hh-mens-soft) !important; color: var(--hh-mens-dark) !important;
}
#body_wrap.page:not(.home) .post_content .hh-trial #hikari .hh-menu-explanation,
#body_wrap.page:not(.home) .post_content .hh-trial #hikari .hh-trial-notice {
  background: #fff !important;
}
#body_wrap .hh-trial #hikari .hh-trial-price th {
  background: var(--hh-mens-soft) !important; color: var(--hh-mens-dark) !important;
}
#body_wrap .hh-trial #hikari .hh-trial-price :is(th,td) { border-color: var(--hh-mens-border) !important; }
#body_wrap .hh-trial #hikari .hh-trial-price,
#body_wrap .hh-trial #hikari .hh-trial-price__tag { border-color: var(--hh-mens-border) !important; }
#body_wrap .hh-trial #hikari .hh-trial-price td strong,
#body_wrap .hh-trial #hikari .hh-trial-price__tag { color: var(--hh-mens-dark) !important; }
#body_wrap .hh-trial #hikari .wp-block-button__link,
#body_wrap .hh-price-page .hh-price-summary--mens .wp-block-button__link,
#body_wrap.page-id-222 .post_content :is(.wp-block-button__link,a.su-button) {
  background: var(--hh-mens-soft) !important; color: var(--hh-mens-dark) !important;
  border: 1px solid var(--hh-mens-border) !important;
}
#body_wrap.page-id-222 .post_content :is(.wp-block-button__link,a.su-button) span { color: var(--hh-mens-dark) !important; }
/* Product specifications are live paragraphs: soft neutral for capacity, cream for price. */
#body_wrap .hh-store-page .hh-store-specs {
  display: flex; flex-wrap: wrap; align-items: stretch; gap: 12px;
  width: 100%; margin: 24px 0 30px;
}
#body_wrap .hh-store-page .hh-store-specs > .wp-block-group__inner-container { display: contents; }
#body_wrap .hh-store-page .hh-store-specs p {
  flex: 1 1 220px; min-width: 0; margin: 0 !important; padding: 14px 18px;
  border: 1px solid #e7ddca; border-radius: 12px; box-sizing: border-box;
  line-height: 1.7; background: #f5f2eb;
}
#body_wrap .hh-store-page .hh-store-specs .hh-store-price { background: #fff5d9; }
#body_wrap .hh-store-page .hh-store-ingredient { margin: 22px 0 !important; }
#body_wrap .hh-store-page .hh-store-ingredient p { margin: 0 !important; }
#body_wrap .hh-store-page .hh-store-ingredient .hh-store-ingredient-name { margin-bottom: 6px !important; }
#body_wrap .hh-store-page .hh-store-ingredient-name strong { font-weight: 700 !important; }
/* Remove the spare LINE image column in content; keep a balanced, centered coupon. */
#body_wrap.page-id-21 .hh-contact-line > .wp-block-group__inner-container > .hh-contact-coupon {
  width: 100%; max-width: 640px; margin: 36px auto 0 !important;
  box-sizing: border-box; height: auto;
}
@media (max-width: 767px) {
  #body_wrap .hh-store-page .hh-store-specs { gap: 10px; margin-block: 20px 26px; }
  #body_wrap .hh-store-page .hh-store-specs p { padding: 14px 16px; }
  #body_wrap .hh-process-page .hh-process-cta .wp-block-button { max-width: 100%; }
  #body_wrap .hh-process-page .hh-process-cta .wp-block-button__link { padding-inline: 22px; }
}
/* 2026-10-06: shared content width. Full-bleed backgrounds and individual cards stay intact. */
#body_wrap.home .hh-home { --hh-content: 1100px; }
#body_wrap.home .hh-home .hh-section-heading { max-width: 1100px; }
#body_wrap.page:not(.home) .l-mainContent {
  width: 100%; max-width: 1100px; margin-inline: auto;
}
#body_wrap.page:not(.home) .post_content {
  padding-inline: 0; box-sizing: border-box;
}
#body_wrap.page:not(.home) .post_content .hh-support-policy {
  width: 100%; max-width: 1100px; min-width: 0;
  box-sizing: border-box; margin-inline: auto;
}
#body_wrap.blog .l-mainContent,
#body_wrap.blog .l-mainContent__inner {
  width: 100%; max-width: 1100px; margin-inline: auto;
}
/* Keep article/archive sidebars: cap the combined layout, not the columns separately. */
#body_wrap:is(.single,.archive,.search) .l-content { max-width: 1196px; }
#body_wrap:is(.single,.archive,.search) .l-mainContent {
  width: 100%; max-width: 1100px;
}
#body_wrap.single .post_content { padding-inline: 0; box-sizing: border-box; }
/* Reviews/Contact follow-up 2026-10-06. Scoped rules preserve all other pages. */
#body_wrap.page-id-19 .hh-inner-lead-image { max-width: 1100px !important; }
#body_wrap.page-id-19 .hh-inner-lead-image img {
  height: 440px !important; max-height: none; object-fit: cover !important; object-position: 65% 40%;
}
#body_wrap .hh-reviews-page .wp-block-details {
  padding: 0; border: 0; border-radius: 0; background: none; overflow: visible;
  margin: 24px 0 52px;
}
#body_wrap .hh-reviews-page .wp-block-details[open] { padding-bottom: 0; }
#body_wrap .hh-reviews-page .wp-block-details summary {
  width: fit-content; max-width: 100%; min-height: 52px; box-sizing: border-box;
  padding: 14px 26px; border: 1px solid transparent; border-radius: 28px;
  background: var(--hh-yellow); color: var(--hh-ink);
  font-family: var(--font_family); font-size: 16px; font-weight: 700;
  line-height: 1.65; list-style-position: inside; cursor: pointer;
  box-shadow: 0 8px 24px rgba(92,72,51,.08);
}
#body_wrap .hh-reviews-page .wp-block-details summary:hover { background: #f5e18b; }
#body_wrap .hh-reviews-page .wp-block-details summary:focus-visible {
  outline: 2px solid var(--hh-ink); outline-offset: 4px;
}
#body_wrap .hh-reviews-page .wp-block-details > .hh-review-grid {
  display: grid; grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 28px; max-width: none; width: 100%; box-sizing: border-box; margin: 28px 0 0;
}
#body_wrap .hh-reviews-page .hh-review-grid > .wp-block-group__inner-container { display: contents; }
#body_wrap .hh-reviews-page .hh-review-card {
  min-width: 0; max-width: none; margin: 0 !important; padding: 20px;
  border: 1px solid var(--hh-line); border-radius: 14px; background: #fffdf9;
}
#body_wrap .hh-reviews-page .hh-review-card figure.wp-block-image {
  max-width: none; width: 100%; margin: 0 !important; padding: 0;
}
#body_wrap .hh-reviews-page .hh-review-card img {
  display: block; width: 100%; height: auto; border-radius: 8px;
}
#body_wrap .hh-reviews-page .hh-review-card p {
  margin: 16px 0 0 !important; padding: 0; max-width: none;
  line-height: 1.8; overflow-wrap: anywhere; color: var(--hh-ink);
}
#body_wrap .hh-reviews-page .wp-block-buttons { justify-content: flex-start; margin-top: 28px; }
#body_wrap .hh-reviews-page .wp-block-button__link { padding: 14px 28px; border-radius: 28px; }
#body_wrap.page-id-21 .hh-contact,
#body_wrap.page-id-21 .hh-contact > .wp-block-group__inner-container > p,
#body_wrap.page-id-21 .hh-contact .hh-contact-notice,
#body_wrap.page-id-21 .hh-contact-line {
  width: 100%; max-width: 1100px; box-sizing: border-box;
}
#body_wrap.page-id-21 .hh-contact > .wp-block-group__inner-container > p { margin-inline: 0; }
#body_wrap.page-id-21 .hh-contact-line-images {
  max-width: none; margin: 36px 0 0; gap: 40px;
}
#body_wrap.page-id-21 .hh-contact-coupon {
  max-width: none; margin: 0; padding: 36px 28px; border: 1px solid #e5d5b9;
  background: var(--hh-yellow-soft); border-radius: 18px; box-sizing: border-box;
}
#body_wrap.page-id-21 .hh-contact-coupon h3 {
  background: none !important; border: 0 !important; padding: 0 !important;
  margin: 0 0 20px; font-size: 22px; color: var(--hh-ink); line-height: 1.5;
}
#body_wrap.page-id-21 .hh-contact-coupon h3:nth-of-type(2) { font-size: clamp(30px,3.2vw,38px); }
#body_wrap.page-id-21 .hh-contact-coupon p { margin: 0 0 24px; }
#body_wrap.page-id-21 .hh-contact-coupon .wp-block-buttons { justify-content: center; }
#body_wrap.page-id-21 .hh-contact-coupon .wp-block-button__link {
  padding: 14px 24px; border-radius: 28px; white-space: normal;
  background: var(--hh-yellow) !important; color: var(--hh-ink) !important;
}
#body_wrap.page-id-21 .hh-contact-line-images > .wp-block-column:last-child figure { max-width: 280px; }
@media (max-width: 767px) {
  #body_wrap.page-id-19 .hh-inner-lead-image img { height: 250px !important; object-position: 65% 45%; }
  #body_wrap .hh-reviews-page .wp-block-details summary { padding: 14px 18px; }
  #body_wrap .hh-reviews-page .wp-block-details > .hh-review-grid { gap: 12px; margin: 22px 0 0; }
  #body_wrap .hh-reviews-page .hh-review-card { padding: 12px; border-radius: 10px; }
  #body_wrap .hh-reviews-page .hh-review-card p { margin-top: 12px !important; }
  #body_wrap.page-id-21 .hh-contact-line-images { gap: 28px; }
  #body_wrap.page-id-21 .hh-contact-coupon { padding: 28px 18px; }
}
/* 2026-10-05: yellow-led surfaces, with explicitly approved home-page exceptions. */
:root {
  --hh-yellow-soft: #fff8dc;
  --hh-green-soft: var(--hh-yellow-soft);
  --hh-green: #795712;
}

/* Real text stays crisp at every zoom/DPR, including the sticky header. */
#body_wrap .hh-brand .c-headLogo__link {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 5px;
  color: var(--hh-ink);
  line-height: 1;
  white-space: nowrap;
  text-decoration: none;
}
#body_wrap .hh-brand-caption {
  font-family: var(--font_family);
  font-size: 15px;
  font-weight: 400;
  letter-spacing: .08em;
  line-height: 1.3;
}
#body_wrap .hh-brand-name {
  font-family: Georgia, "Times New Roman", "Yu Mincho", serif;
  font-size: 28px;
  font-weight: 700;
  letter-spacing: .025em;
  line-height: 1.1;
}
@media (max-width: 959px) {
  #body_wrap .hh-brand-name { font-size: 26px; }
  #body_wrap .hh-brand .c-headLogo__link { gap: 3px; }
}

/* Preserve the typography and structure; change only the surfaces and decoration. */
#body_wrap .hh-home .hh-hero { background: #fffaf0; }
#body_wrap .hh-home .hh-hero::after { border-color: rgba(198,160,68,.18); }
/* Keep the original gold photo outline above the image, below the supplied leaves. */
#body_wrap .hh-home .hh-hero__image::after {
  visibility: visible;
  z-index: 1;
  border-color: var(--hh-gold);
}
/* Restore the original four card/label colors only in the popular-menu section. */
#body_wrap .hh-home .hh-menu-section { --hh-green: #789150; --hh-green-soft: #edf3e5; }
#body_wrap .post_content .hh-rating,
#body_wrap .post_content .hh-rating__score { background: var(--hh-yellow); color: var(--hh-ink); }
#body_wrap .post_content .hh-rating__score { background: none; }
#body_wrap .hh-rating__stars { color: var(--hh-readable-gold); }
#body_wrap :is(.c-postThumb__cat,.c-categoryList__link,.page-numbers.current) {
  background: var(--hh-yellow);
  color: var(--hh-ink);
  border-color: var(--hh-yellow);
}
#body_wrap .c-shareBtns__btn { background: var(--hh-yellow) !important; color: var(--hh-ink) !important; }
#body_wrap .p-postList__thumb::before { background: var(--hh-yellow-soft); }
#body_wrap .p-toc { background: var(--hh-paper); background-image: none; }
#body_wrap .post_content .midashi02 { background: var(--hh-yellow-soft); color: var(--hh-ink) !important; }
#body_wrap :is(.c-searchForm__submit,#sp_menu .c-widget__title) {
  background: var(--hh-yellow);
  color: var(--hh-ink) !important;
}

#body_wrap .hh-trial .hh-trial-intro { background: var(--hh-yellow-soft); }
#body_wrap .hh-trial .hh-trial-course { background: #fffdf9; }
#body_wrap .hh-trial .hh-trial-course--kids { background: var(--hh-yellow-soft); }
#body_wrap .hh-store-page .hh-store-owner-note {
  background: var(--hh-yellow-soft);
  border-left-color: var(--hh-gold);
}
#body_wrap .hh-store-page .hh-store-owner-label { color: var(--hh-ink); }

/* Flat title backgrounds: remove the SVG line pattern and colored gradients. */
#body_wrap.page:not(.home) .l-content::before {
  background: #fcf9ee !important;
  border-bottom: 0;
}
#body_wrap :is(.c-pageTitle,.hh-section-heading)::before,
#body_wrap :is(.c-pageTitle,.hh-section-heading)::after,
#body_wrap .hh-section-heading__en::before {
  display: none !important;
  content: none !important;
}
#body_wrap .post_content :is(h1,h2,h3,h4,h5,h6) {
  border-top: 0 !important;
  border-bottom: 0 !important;
}
#body_wrap .post_content :is(h1,h2,h3,h4,h5,h6)::before,
#body_wrap .post_content :is(h1,h2,h3,h4,h5,h6)::after {
  display: none !important;
  content: none !important;
}
#body_wrap .l-footer .c-widget__title { border: 0; }
#body_wrap .hh-home .hh-campaign {
  border-top: 1px solid var(--hh-line);
  border-bottom: 1px solid var(--hh-line);
}
#body_wrap .hh-tabs .c-tabList { border-bottom: 0; }
#body_wrap .hh-tabs .c-tabList__button[aria-selected="true"] {
  border-bottom: 0 !important;
  background: var(--hh-yellow) !important;
  color: var(--hh-ink) !important;
  border-radius: 8px;
}

/* 2026-10-06: muted champagne with a faint silk texture; no footer leaf motifs. */
#body_wrap .l-footer {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  background: #efe7c9 !important;
  background-image: none !important;
  border-top: 0;
}
#body_wrap .l-footer::before {
  content: "";
  display: block;
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  background-color: transparent;
  background-repeat: no-repeat;
  background-image: url("./hh-footer-silk-20261006.webp");
  background-size: cover;
  background-position: center;
  opacity: .32;
}
#body_wrap .l-footer::after {
  content: none;
  display: none;
}
#body_wrap .l-footer__inner { position: relative; z-index: 1; }
@media (max-width: 767px) {
  #body_wrap .l-footer::before {
    background-position: 65% center;
    opacity: .26;
  }
}

/* 2026-10-05 follow-up: a shorter title band followed by real, clear breathing room. */
#body_wrap.page:not(.home) { --hh-title-band-height: 173.333px; }
#body_wrap.page:not(.home) .l-content::before { height: var(--hh-title-band-height); }
#body_wrap.page:not(.home) .l-mainContent__inner { padding-top: 0; }
#body_wrap.page:not(.home) .c-pageTitle {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: var(--hh-title-band-height);
  margin: 0 auto;
  padding: 20px 12px;
  box-sizing: border-box;
}
#body_wrap.page:not(.home) .post_content { margin-top: 56px; }

/* Button text is an action label, not regular body copy. Include imported inner spans. */
#body_wrap .post_content :is(.wp-block-button__link,.swell-block-button__link,.su-button,.hh-btn,.hh-text-link a),
#body_wrap .post_content :is(.wp-block-button__link,.swell-block-button__link,.su-button,.hh-btn,.hh-text-link a) * {
  font-weight: 700 !important;
}

/* No decorative left rules. Keep table grids and full card outlines intact. */
#body_wrap.page:not(.home) .post_content :is(h1,h2,h3,h4,h5,h6) { border-left: 0 !important; }
#body_wrap.page:not(.home) .post_content :is(.hh-shr-description,.hh-trial-notice,.hh-store-owner-note,.hh-menu-explanation) {
  position: relative;
  border-left: 0 !important;
  border-radius: 14px;
  padding: 36px 40px;
  background: var(--hh-yellow-soft);
  overflow: visible;
}
#body_wrap.page:not(.home) .post_content :is(.hh-shr-description,.hh-trial-notice,.hh-store-owner-note,.hh-menu-explanation)::before,
#body_wrap.page:not(.home) .post_content :is(.hh-shr-description,.hh-trial-notice,.hh-store-owner-note,.hh-menu-explanation)::after {
  content: "";
  display: block;
  visibility: visible;
  position: absolute;
  width: 92px;
  height: 44px;
  background: url("./hh-ashirai.png") center / contain no-repeat;
  pointer-events: none;
  opacity: .45;
}
#body_wrap.page:not(.home) .post_content :is(.hh-shr-description,.hh-trial-notice,.hh-store-owner-note,.hh-menu-explanation)::before {
  top: -12px;
  left: 8px;
}
#body_wrap.page:not(.home) .post_content :is(.hh-shr-description,.hh-trial-notice,.hh-store-owner-note,.hh-menu-explanation)::after {
  bottom: -12px;
  right: 8px;
  transform: rotate(180deg);
}

/* H3/H4 are plain; the supplied leaves belong to explanation frames, not headings. */
#body_wrap.page:not(.home) .post_content .hh-converted-page :is(h3,h4) {
  padding: 0 !important;
  background: none !important;
  border: 0 !important;
  border-radius: 0;
}
#body_wrap.page:not(.home) .post_content .hh-converted-page :is(h3,h4)::before,
#body_wrap.page:not(.home) .post_content .hh-converted-page :is(h3,h4)::after {
  display: none !important;
  content: none !important;
}

/* 2026-10-06: compact summaries, editable price cards and a separate student page. */
#body_wrap.page:not(.home) .post_content .hh-shr-description {
  width: 100%; max-width: 1100px !important; box-sizing: border-box;
}
#body_wrap .hh-trial .hh-trial-course--kids { background: #fff9f5; }
#body_wrap .hh-trial #hikari.hh-trial-course { background: #f2f9ed; }
#body_wrap .hh-trial .hh-trial-care {
  background: #fffaf0; border: 1px solid #e5d5b9;
  border-radius: 18px; padding: clamp(24px,3vw,36px);
  box-shadow: 0 10px 25px rgba(78,50,20,.04);
}
#body_wrap .hh-trial .hh-trial-care:nth-child(2n) { background: #fffdf9; }
#body_wrap .hh-trial .hh-trial-care h3 { margin-top: 0; color: var(--hh-ink); }
#body_wrap .hh-trial .hh-trial-care p { margin-bottom: 0; }
#body_wrap .hh-price-page { width: 100%; max-width: 1100px !important; }
#body_wrap .hh-price-page :is(h2,h3,h4) {
  background: none !important; border: 0 !important;
  padding: 0 !important; color: var(--hh-ink) !important;
  line-height: 1.5; text-align: left !important;
}
#body_wrap .hh-price-page :is(h2,h3,h4)::before,
#body_wrap .hh-price-page :is(h2,h3,h4)::after { content: none !important; display: none !important; }
#body_wrap .hh-price-page h2 { margin: 0 0 28px; font-size: clamp(27px,3vw,36px); }
#body_wrap .hh-price-page h3 { margin: 0 0 20px; font-size: clamp(21px,2.3vw,25px); }
#body_wrap .hh-price-page h4 { margin: 24px 0 18px; font-size: 21px; }
#body_wrap .hh-price-page .hh-price-section { margin: 64px 0; max-width: none; }
#body_wrap .hh-price-page .hh-price-card {
  max-width: none; width: 100%; min-width: 0; box-sizing: border-box;
  margin: 28px 0; padding: clamp(24px,3.5vw,40px);
  border: 1px solid #e5d5b9; border-radius: 18px; background: #fffdf9;
}
#body_wrap .hh-price-page .hh-price-card .hh-price-card { padding: 24px; background: #fff; }
#body_wrap .hh-price-page .hh-price-review-discount { background: #fff8dc; }
#body_wrap .hh-price-page .hh-price-card > :last-child { margin-bottom: 0 !important; }
#body_wrap .hh-price-page .hh-price-summary {
  border: 1px solid #e5d5b9; border-radius: 20px;
  padding: clamp(26px,4vw,44px); box-sizing: border-box;
}
#body_wrap .hh-price-page .hh-price-summary--student { background: #fff8dc; }
#body_wrap .hh-price-page .hh-price-summary--kids { background: #fff9f5; }
#body_wrap .hh-price-page .hh-price-summary--mens { background: #f2f9ed; }
#body_wrap .hh-price-page .hh-price-summary > .wp-block-group { margin: 0; }
#body_wrap .hh-price-page .hh-price-summary .wp-block-button { margin: 0; }
#body_wrap .hh-price-page .hh-payment-logos {
  display: flex !important; align-items: center; justify-content: flex-start;
  gap: 14px; margin: 18px 0 24px; max-width: none;
}
/* SWELL adds this legacy inner wrapper while rendering core groups. */
#body_wrap .hh-price-page .hh-payment-logos > .wp-block-group__inner-container {
  display: flex !important; align-items: center; justify-content: flex-start;
  gap: 14px; width: 100%;
}
#body_wrap .hh-price-page .hh-payment-logos figure {
  flex: 0 0 57px; width: 57px !important; max-width: 57px;
  margin: 0 !important; padding: 0;
}
#body_wrap .hh-price-page .hh-payment-logos img {
  display: block; width: 57px !important; height: auto !important;
  border-radius: 3px; object-fit: contain;
}
#body_wrap .hh-price-page .wp-block-table { margin: 24px 0; max-width: 100%; overflow-x: auto; }
#body_wrap .hh-price-page table { width: 100% !important; table-layout: auto; border-collapse: collapse; }
#body_wrap .hh-price-page table :is(th,td) {
  padding: 16px 20px !important; font-size: 16px !important;
  line-height: 1.75; white-space: normal; overflow-wrap: anywhere;
  border-color: #e5d5b9 !important; color: var(--hh-ink) !important;
}
#body_wrap .hh-price-page table :is(thead th,thead td,th) {
  background: #f8e9a0 !important; color: var(--hh-ink) !important; font-weight: 700 !important;
}
#body_wrap .hh-price-page table tbody td { background: #fffdf9 !important; font-weight: 400 !important; }
#body_wrap .hh-price-page .hh-price-repeat-note { background: #fff8dc; padding: 18px 20px; border-radius: 10px; }
#body_wrap .hh-price-page .hh-price-part-list {
  display: grid !important; grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 10px; max-width: none; margin: 24px 0;
}
#body_wrap .hh-price-page .hh-price-part-list p {
  margin: 0 !important; padding: 14px 16px; border-radius: 8px;
  background: #fff8dc; line-height: 1.5;
}
#body_wrap .hh-price-page .hh-price-part-list > .wp-block-group__inner-container,
#body_wrap .hh-price-page .hh-price-benefit-grid > .wp-block-group__inner-container {
  display: contents;
}
#body_wrap .hh-price-page .hh-price-body-illustration { width: 100%; max-width: 340px; margin: 32px auto; }
#body_wrap .hh-price-page .hh-price-body-illustration figure { margin: 0 !important; }
#body_wrap .hh-price-page .hh-price-body-illustration img { width: 100%; height: auto; border-radius: 10px; }
#body_wrap .hh-price-page .hh-price-benefit-grid {
  display: grid !important; grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 20px; max-width: none; margin: 28px 0;
}
#body_wrap .hh-price-page .hh-price-benefit {
  margin: 0 !important; padding: 30px; border: 1px solid #e5d5b9;
  background: #fff8dc; border-radius: 18px;
}
#body_wrap .hh-price-page .hh-price-benefit h3:nth-child(2) { font-size: clamp(27px,3vw,36px); color: #674a0e !important; }
#body_wrap .hh-price-page .hh-price-benefit p { margin-bottom: 0; }
#body_wrap .hh-price-page #repeat-benefits { scroll-margin-top: 130px; }
#body_wrap .hh-price-page .wp-block-buttons { justify-content: flex-start; gap: 16px; }
@media (max-width: 767px) {
  #body_wrap .hh-price-page .hh-price-section { margin-block: 44px; }
  #body_wrap .hh-price-page .hh-price-card { padding: 24px 20px; }
  #body_wrap .hh-price-page .hh-price-card .hh-price-card { padding: 20px 16px; }
  #body_wrap .hh-price-page table :is(th,td) { padding: 14px !important; }
  #body_wrap .hh-price-page .hh-price-part-list { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 8px; }
  #body_wrap .hh-price-page .hh-price-part-list p { padding: 12px; }
  #body_wrap .hh-price-page .hh-price-benefit-grid { grid-template-columns: 1fr; }
  #body_wrap .hh-price-page .hh-price-benefit { padding: 26px 22px; }
  #body_wrap .hh-price-page .hh-price-body-illustration { max-width: 280px; }
  #body_wrap .hh-price-page #repeat-benefits { scroll-margin-top: 100px; }
  #body_wrap .hh-price-page .wp-block-button__link { width: 100%; text-align: center; }
  #body_wrap .hh-price-page .wp-block-button { max-width: 100%; }
}

/* Native explanation frames: max 1100px, shrink with the container, never fixed height. */
#body_wrap.page:not(.home) .post_content .hh-menu-explanation {
  width: 100%;
  max-width: 1100px;
  min-width: 0;
  box-sizing: border-box;
  margin-inline: auto !important;
  border: 0 !important;
  overflow-wrap: anywhere;
}
#body_wrap.page-id-2 .hh-inner-page { width: 100%; max-width: 1100px !important; }
/* Menu H3 is outside the explanation; original wording and order are unchanged. */
#body_wrap.page-id-2 .hh-menu-explanation {
  margin: 24px auto 44px;
}
#body_wrap.page-id-2 .hh-menu-subheading {
  margin: 44px 0 24px !important;
  padding: 0 !important;
  background: none !important;
  font-size: clamp(22px,2.2vw,26px);
  line-height: 1.5;
}
#body_wrap.page-id-2 .hh-menu-explanation p { margin: 0 0 16px; }
#body_wrap.page-id-2 .hh-menu-explanation p:last-child { margin-bottom: 0; }
#body_wrap .hh-store-page .hh-store-discount { margin-block: 36px 28px; }
#body_wrap .hh-store-page .hh-store-discount p { margin: 0 0 12px; }
#body_wrap .hh-store-page .hh-store-discount p:last-child { margin-bottom: 0; }

/* Process: editable live text replaces the small raster STEP labels. */
#body_wrap .hh-process-page .hh-process-badge {
  flex: 0 0 auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 84px;
  height: 84px;
  min-width: 84px;
  margin: 0 !important;
  padding: 0;
  box-sizing: border-box;
  border: 1px solid var(--hh-gold);
  border-radius: 50%;
  background: var(--hh-yellow-soft);
  color: var(--hh-ink);
  font-size: 15px !important;
  line-height: 1.2 !important;
  letter-spacing: .06em;
  text-align: center;
}
#body_wrap .hh-process-page .hh-process-badge br { display: none; }
#body_wrap .hh-process-page .hh-process-badge strong {
  display: block;
  margin-top: 5px;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 32px !important;
  font-weight: 700 !important;
  line-height: 1;
}
#body_wrap.page:not(.home) .post_content .hh-process-page :is(.hh-process-desktop,.hh-process-mobile) h4 {
  margin: 0 !important;
  padding: 0 !important;
  background: none !important;
  font-size: clamp(22px,2.3vw,25px);
  line-height: 1.5;
}
#body_wrap.page:not(.home) .post_content .hh-process-page :is(.hh-process-desktop,.hh-process-mobile) h4::before,
#body_wrap.page:not(.home) .post_content .hh-process-page :is(.hh-process-desktop,.hh-process-mobile) h4::after {
  display: none !important;
  content: none !important;
}

/* Trial: a text-only welcome, with four genuinely round, wrapping labels. */
#body_wrap .hh-trial .hh-trial-intro__columns { display: block; }
#body_wrap .hh-trial .hh-trial-intro__copy { max-width: 820px; margin-inline: auto !important; text-align: center; }
#body_wrap .hh-trial .hh-trial-intro__copy h2 { text-align: center !important; }
#body_wrap .hh-trial .hh-trial-concerns {
  display: flex !important;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: clamp(10px,2vw,24px);
  margin: 28px auto 0;
}
@media (max-width: 359px) {
  #body_wrap .hh-trial .hh-trial-concerns {
    display: grid !important;
    grid-template-columns: repeat(2,56px);
    gap: 12px;
  }
}
#body_wrap .hh-trial .hh-trial-concerns p {
  flex: 0 0 auto;
  display: grid;
  place-items: center;
  width: clamp(56px,16vw,92px);
  height: auto;
  min-height: 0;
  aspect-ratio: 1;
  margin: 0 !important;
  padding: 0;
  box-sizing: border-box;
  border-radius: 50%;
  font-size: 16px !important;
  font-weight: 400 !important;
  line-height: 1.5;
}
/* Remove the inherited double quotation decoration, not the customer's words. */
#body_wrap .hh-trial blockquote.hh-trial-voice::before,
#body_wrap .hh-trial blockquote.hh-trial-voice::after {
  display: none !important;
  content: none !important;
  border: 0 !important;
}

@media (max-width: 767px) {
  #body_wrap.page:not(.home) { --hh-title-band-height: 123.333px; }
  #body_wrap.page:not(.home) .c-pageTitle { padding-block: 16px; }
  #body_wrap.page:not(.home) .post_content { margin-top: 36px; }
  #body_wrap.page:not(.home) .post_content :is(.hh-shr-description,.hh-trial-notice,.hh-store-owner-note,.hh-menu-explanation) { padding: 30px 22px; }
  #body_wrap.page:not(.home) .post_content :is(.hh-shr-description,.hh-trial-notice,.hh-store-owner-note,.hh-menu-explanation)::before,
  #body_wrap.page:not(.home) .post_content :is(.hh-shr-description,.hh-trial-notice,.hh-store-owner-note,.hh-menu-explanation)::after { width: 72px; height: 36px; }
  #body_wrap .hh-process-page .hh-process-mobile .hh-process-badge { margin: 0 auto 16px !important; }
}

/* Menu additions only: supplied photographs and native editable explanations. */
#body_wrap.page-id-2 .post_content .hh-menu-course {
  width: 100%; max-width: 1100px; box-sizing: border-box;
  margin: 72px auto 0; padding: 40px; border: 1px solid #ead9c8;
  border-radius: 24px; background: #fff8dc;
}
#body_wrap.page-id-2 .post_content .hh-menu-course--kids { background: #fff9f5; }
#body_wrap.page-id-2 .post_content .hh-menu-course h2 { margin: 0 0 32px; }
#body_wrap.page-id-2 .post_content .hh-menu-course-image { margin: 0 0 32px; width: 100%; }
#body_wrap.page-id-2 .post_content .hh-menu-course-image img {
  display: block; width: 100%; height: 400px; object-fit: cover;
  object-position: 50% 32%; border-radius: 16px;
}
#body_wrap.page-id-2 .post_content .hh-menu-course--student .hh-menu-course-image img { object-position: 60% 35%; }
#body_wrap.page-id-2 .post_content .hh-menu-course .hh-menu-explanation { background: #fff !important; margin: 0 0 28px; }
#body_wrap.page-id-2 .post_content .hh-menu-course .wp-block-buttons { margin: 0; }
@media (max-width: 599px) {
  #body_wrap.page-id-2 .post_content .hh-menu-course { margin-top: 48px; padding: 24px 18px; border-radius: 18px; }
  #body_wrap.page-id-2 .post_content .hh-menu-course h2 { margin-bottom: 24px; }
  #body_wrap.page-id-2 .post_content .hh-menu-course-image img { height: 250px; }
  #body_wrap.page-id-2 .post_content .hh-menu-course--student .hh-menu-course-image img { object-position: 64% 35%; }
}

/* Supplied Store sales opening photo only; leave all product photographs untouched. */
#body_wrap.page-id-4122 .post_content .hh-store-lead-image {
  width: 100%; max-width: 1100px !important; box-sizing: border-box;
}
#body_wrap.page-id-4122 .post_content .hh-store-lead-image img {
  height: 440px !important; max-height: none; object-fit: cover !important;
  object-position: 60% 50%;
}
@media (max-width: 767px) {
  #body_wrap.page-id-4122 .post_content .hh-store-lead-image img { height: 250px !important; object-position: 64% 50%; }
}

/* Price only: tax notes directly below each unchanged price table. */
#body_wrap.page-id-15 .post_content .hh-price-page .wp-block-table:has(+ .hh-price-tax-note) { margin-bottom: 12px !important; }
#body_wrap.page-id-15 .post_content .hh-price-page p.hh-price-tax-note {
  margin: 12px 0 24px !important; text-align: right; color: var(--hh-ink);
  font-size: 16px; font-weight: 400; line-height: 1.6;
}
#body_wrap.page-id-15 .post_content .hh-price-summary--mens .hh-price-mens-benefits {
  width: 100%; box-sizing: border-box; margin: 24px 0; padding: 24px 28px;
  border-radius: 14px; background: #fff;
}
#body_wrap.page-id-15 .post_content .hh-price-mens-benefits p { margin: 0; }
@media (max-width: 599px) {
  #body_wrap.page-id-15 .post_content .hh-price-summary--mens .hh-price-mens-benefits { padding: 20px 18px; }
}

/* Store specifications: capacity and price share one rounded frame. */
#body_wrap .hh-store-page .hh-store-specs {
  display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px 28px;
  padding: 20px 24px; border: 1px solid #e7ddca; border-radius: 14px;
  background: #faf8f3; box-sizing: border-box;
}
#body_wrap .hh-store-page .hh-store-specs p,
#body_wrap .hh-store-page .hh-store-specs .hh-store-price {
  padding: 0; border: 0; border-radius: 0; background: transparent;
}
#body_wrap .hh-store-page .hh-store-features { margin: 32px 0; }
#body_wrap .hh-store-page .hh-store-feature-grid {
  display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 20px;
}
#body_wrap .hh-store-page .hh-store-feature-grid > .wp-block-group__inner-container { display: contents; }
#body_wrap .hh-store-page .hh-store-feature {
  margin: 0 !important; padding: 26px 18px; border-radius: 18px;
  background: #fff8dc; text-align: center; box-sizing: border-box;
}
#body_wrap .hh-store-page .hh-store-feature p { margin: 0 !important; line-height: 1.65; }
#body_wrap .hh-store-page .hh-store-feature p.hh-store-feature-value { margin-top: 12px !important; font-size: 20px; }
#body_wrap .hh-store-page .hh-store-feature-value strong { font-weight: 700 !important; }
#body_wrap .hh-store-page p.hh-store-feature-plus { margin: 18px 0 !important; text-align: center; font-weight: 700; }
#body_wrap .hh-store-page p.hh-store-feature-extra {
  margin: 0 !important; padding: 20px 24px; border-radius: 14px;
  background: #f5f2eb; text-align: center;
}
/* Footer: no separators, readable bold menu, quiet shop identity and information card. */
#body_wrap .l-footer__nav li { border: 0 !important; }
#body_wrap .l-footer__nav :is(li,a)::before,
#body_wrap .l-footer__nav :is(li,a)::after { content: none !important; display: none !important; }
#body_wrap .l-footer__nav a { font-size: 16px !important; font-weight: 700 !important; border: 0 !important; }
#body_wrap .l-footer .w-footer { max-width: 1100px; padding-inline: 0; }
#body_wrap .l-footer #text-3 .c-widget__title {
  display: block; width: auto; padding: 0; margin: 0 0 24px;
  border: 0 !important; background: none; color: var(--hh-ink);
  font-family: var(--hh-serif); font-size: clamp(22px,2.2vw,28px);
  font-weight: 700; letter-spacing: .035em; line-height: 1.6;
}
#body_wrap .l-footer #text-3 .c-widget__title::before,
#body_wrap .l-footer #text-3 .c-widget__title::after { content: none !important; display: none !important; }
#body_wrap .l-footer #text-3 .textwidget {
  padding: 24px 28px; background: #fffaf0; border-radius: 18px;
  color: var(--hh-ink); box-sizing: border-box;
}
#body_wrap .l-footer #text-3 .textwidget p { margin: 0; font-size: 16px; font-weight: 400; line-height: 2; }
/* SWELL's native mobile footer menu: three equal, generous tap targets. */
#body_wrap #fix_bottom_menu { display: none !important; }
@media (max-width: 767px) {
  #body_wrap .hh-store-page .hh-store-specs { gap: 8px 16px; padding: 18px; }
  #body_wrap .hh-store-page .hh-store-feature-grid { grid-template-columns: 1fr; gap: 12px; }
  #body_wrap .hh-store-page .hh-store-feature { padding: 22px 18px; }
  #body_wrap .l-footer .l-footer__widgetArea { padding-inline: 20px; }
  #body_wrap .l-footer #text-3 .textwidget { padding: 20px; border-radius: 14px; }
  #body_wrap #fix_bottom_menu {
    display: block !important; position: fixed; inset: auto 0 0 !important;
    padding: 0 0 env(safe-area-inset-bottom); background: #fff8dc;
    color: var(--hh-ink); box-shadow: 0 -3px 18px rgba(63,47,39,.08);
    transition: none; z-index: 100;
  }
  #body_wrap #fix_bottom_menu::before { display: none; }
  #body_wrap #fix_bottom_menu .menu_list { display: flex; width: 100%; height: auto; margin: 0; padding: 0; align-items: stretch; list-style: none; }
  #body_wrap #fix_bottom_menu .menu-item { flex: 1 1 0; min-width: 0; }
  #body_wrap #fix_bottom_menu .menu-item a {
    display: flex; justify-content: center; align-items: center;
    min-height: 60px; padding: 12px 6px; box-sizing: border-box;
    font-family: var(--hh-sans); font-size: 16px; font-weight: 700; line-height: 1.5;
    background: #fff8dc; color: var(--hh-ink);
  }
  #body_wrap #fix_bottom_menu .menu-item:nth-child(2) a { background: #f9edbc; }
  #body_wrap #fix_bottom_menu .menu-item:nth-child(3) a { background: var(--hh-yellow); }
  #body_wrap #fix_bottom_menu .menu-item a:hover { filter: brightness(.97); }
  #body_wrap #fix_bottom_menu .menu-item a:focus-visible { outline: 2px solid var(--hh-ink); outline-offset: -5px; }
  #body_wrap { padding-bottom: calc(60px + env(safe-area-inset-bottom)); }
  html { scroll-padding-bottom: calc(80px + env(safe-area-inset-bottom)); }
  #body_wrap .p-fixBtnWrap { bottom: calc(80px + env(safe-area-inset-bottom)) !important; }
}

/* 2026-10-06: each review topic contains its heading, explanation and disclosure. */
#body_wrap .hh-reviews-page .hh-review-topic {
  width: 100%; max-width: 1100px; box-sizing: border-box;
  margin: 36px auto; padding: 36px 40px;
  border: 1px solid var(--hh-line); border-radius: 20px;
  background: #fffdf9;
}
#body_wrap .hh-reviews-page :is(.hh-review-topic,.hh-review-topic > .wp-block-group__inner-container) > h3 {
  margin: 0 !important;
}
#body_wrap .hh-reviews-page :is(.hh-review-topic,.hh-review-topic > .wp-block-group__inner-container) > p {
  max-width: none; margin: 18px 0 0 !important;
}
#body_wrap .hh-reviews-page .hh-review-topic .wp-block-details {
  margin: 24px 0 0;
}
#body_wrap .hh-reviews-page .hh-review-topic--external .wp-block-buttons {
  margin: 24px 0 0;
}
#body_wrap .hh-reviews-page .hh-review-topic--external :is(.hh-review-topic--external,.wp-block-group__inner-container) > p,
#body_wrap .hh-reviews-page .hh-review-topic--external > p {
  margin-top: 0 !important;
}
@media (max-width: 767px) {
  #body_wrap .hh-reviews-page .hh-review-topic {
    margin: 24px auto; padding: 24px 18px; border-radius: 16px;
  }
}

/* 2026-10-06: scoped Kids / Men's polish. Existing copy and tables stay editable. */
#body_wrap.page-id-5564 .post_content .wp-block-button__link,
#body_wrap.page-id-222 .post_content .wp-block-button__link {
  display: inline-flex; align-items: center; justify-content: center;
  min-height: 52px; padding: 14px 26px !important;
  border-radius: 999px !important; font-size: 16px !important;
  font-weight: 700 !important; line-height: 1.7; text-align: center;
  text-decoration: none; box-sizing: border-box;
}
#body_wrap.page-id-5564 .post_content .wp-block-button__link:focus-visible,
#body_wrap.page-id-222 .post_content .wp-block-button__link:focus-visible {
  outline: 2px solid var(--hh-ink); outline-offset: 4px;
}
#body_wrap.page-id-5564 .post_content .hh-kids-parents {
  width: 100%; max-width: 1100px; margin: 64px auto 0; padding: 44px;
  box-sizing: border-box; background: #fff9f5;
  border: 1px solid #e8d9cf; border-radius: 22px;
}
#body_wrap.page-id-5564 .post_content .hh-kids-parents h2 {
  margin: 0 !important; padding: 0 !important; text-align: left;
  font-size: 24px; line-height: 1.65; color: var(--hh-ink);
  border: 0; background: none;
}
#body_wrap.page-id-5564 .post_content .hh-kids-parents h2::before,
#body_wrap.page-id-5564 .post_content .hh-kids-parents h2::after { content: none !important; }
#body_wrap.page-id-5564 .post_content .hh-kids-parents p { max-width: none; margin: 16px 0 0 !important; }
#body_wrap.page-id-5564 .post_content .hh-kids-care-grid {
  display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 20px;
  margin: 30px 0 !important; width: 100%;
}
#body_wrap.page-id-5564 .post_content .hh-kids-care-grid > .wp-block-group__inner-container,
#body_wrap.page-id-222 .post_content .hh-mens-offers > .wp-block-group__inner-container { display: contents; }
#body_wrap.page-id-5564 .post_content .hh-kids-care-card {
  min-width: 0; margin: 0 !important; padding: 28px;
  background: #fff; border: 1px solid #e8d9cf; border-radius: 16px;
}
#body_wrap.page-id-5564 .post_content .hh-kids-care-card h2 { font-size: 22px; }
#body_wrap.page-id-5564 .post_content .hh-kids-care-card ul { margin: 16px 0 0 !important; padding-left: 1.35em; }
#body_wrap.page-id-5564 .post_content .hh-kids-parents .wp-block-buttons { margin: 30px 0 0; }
#body_wrap.page.page-id-222:not(.home) .l-content::before { background: #edf4e7 !important; }
#body_wrap.page-id-222 .c-pageTitle,
#body_wrap.page-id-222 .post_content :is(h2,h3) { color: #37532c !important; }
#body_wrap.page-id-222 .post_content .hh-mens-offers {
  display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 24px;
  width: 100%; max-width: 1100px; margin: 32px auto 48px;
}
#body_wrap.page-id-222 .post_content .hh-mens-offer {
  min-width: 0; margin: 0 !important; overflow: hidden;
  background: #fff; border: 1px solid #bed0b2; border-radius: 20px;
}
#body_wrap.page-id-222 .post_content .hh-mens-offer-image {
  margin: 0 !important; border: 0; border-radius: 0; box-shadow: none;
}
#body_wrap.page-id-222 .post_content .hh-mens-offer-image img {
  display: block; width: 100%; height: auto; aspect-ratio: 3 / 2;
  object-fit: cover; border-radius: 0; box-shadow: none;
}
#body_wrap.page-id-222 .post_content .hh-mens-offer-copy { padding: 26px; margin: 0 !important; }
#body_wrap.page-id-222 .post_content .hh-mens-offer-copy p { max-width: none; margin: 0 !important; }
#body_wrap.page-id-222 .post_content p.hh-mens-offer-title {
  font-size: 20px !important; font-weight: 700 !important; color: #37532c; line-height: 1.7;
}
#body_wrap.page-id-222 .post_content p.hh-mens-offer-label {
  display: inline-block; margin-top: 18px !important; padding: 4px 12px;
  border-radius: 999px; background: #e3eedb; color: #37532c; font-weight: 700 !important;
}
#body_wrap.page-id-222 .post_content p.hh-mens-offer-price { margin-top: 8px !important; color: #37532c; }
#body_wrap.page-id-222 .post_content .hh-mens-offer-price strong { font-size: 28px; font-weight: 700; }
#body_wrap.page-id-222 .post_content .hh-mens-offer-tax { font-size: 16px; }
#body_wrap.page-id-222 .post_content .hh-mens-benefits {
  width: 100%; max-width: 1100px; box-sizing: border-box;
  margin: 28px 0; padding: 26px 30px; border: 1px solid #bed0b2;
  background: #fff; border-radius: 18px;
}
#body_wrap.page-id-222 .post_content .hh-mens-benefits p { margin: 0 !important; max-width: none; }
#body_wrap.page-id-222 .post_content .wp-block-table {
  border: 1px solid #bed0b2; border-radius: 16px; overflow: hidden;
}
#body_wrap.page-id-222 .post_content .wp-block-table table {
  width: 100% !important; border-color: #bed0b2 !important; margin: 0;
}
#body_wrap.page-id-222 .post_content table :is(th,td) {
  border: 1px solid #bed0b2 !important; background: #fff !important;
  color: var(--hh-ink) !important; line-height: 1.9;
}
#body_wrap.page-id-222 .post_content table tbody tr:nth-child(even) td { background: #f7fbf4 !important; }
#body_wrap.page-id-222 .post_content table :is(th,td.column-1) {
  background: #e3eedb !important; color: #37532c !important;
}
@media (max-width: 767px) {
  #body_wrap.page-id-5564 .post_content .hh-kids-parents { padding: 26px 18px; margin-top: 40px; border-radius: 18px; }
  #body_wrap.page-id-5564 .post_content .hh-kids-care-grid { grid-template-columns: 1fr; gap: 16px; margin: 24px 0 !important; }
  #body_wrap.page-id-5564 .post_content .hh-kids-care-card { padding: 22px 18px; }
  #body_wrap.page-id-5564 .post_content .hh-kids-care-card h2 { font-size: 20px; }
  #body_wrap.page-id-5564 .post_content .wp-block-button__link,
  #body_wrap.page-id-222 .post_content .wp-block-button__link { padding: 14px 18px !important; }
  #body_wrap.page-id-222 .post_content .hh-mens-offers { gap: 12px; margin: 26px auto 36px; }
  #body_wrap.page-id-222 .post_content .hh-mens-offer { border-radius: 14px; }
  #body_wrap.page-id-222 .post_content .hh-mens-offer-copy { padding: 16px 12px; }
  #body_wrap.page-id-222 .post_content p.hh-mens-offer-title { font-size: 16px !important; }
  #body_wrap.page-id-222 .post_content p.hh-mens-offer-label { margin-top: 12px !important; padding: 4px 8px; }
  #body_wrap.page-id-222 .post_content .hh-mens-offer-price strong { font-size: 24px; }
  #body_wrap.page-id-222 .post_content .hh-mens-offer-tax { display: block; }
  #body_wrap.page-id-222 .post_content .hh-mens-benefits { padding: 22px 18px; border-radius: 16px; }
}

/* 2026-10-06: yellow hover line and stable, reachable native Price dropdown. */
#body_wrap :is(.l-header,.l-fixHeader) .c-gnav > li > a::after {
  background: var(--hh-yellow) !important;
}
#body_wrap :is(.l-header,.l-fixHeader) .c-gnav > .menu-item-has-children > .sub-menu {
  left: 50%; top: 100%; margin-top: 0;
  transform: translateX(-50%) !important;
  width: 240px; max-width: calc(100vw - 32px);
  border: 1px solid var(--hh-line); border-radius: 14px;
  background: #fffdf7; color: var(--hh-ink); z-index: 10;
  box-shadow: 0 8px 24px rgba(63,47,39,.10);
}
/* A transparent corridor bridges the space below and beside the parent label. */
#body_wrap :is(.l-header,.l-fixHeader) .c-gnav > .menu-item-has-children > .sub-menu::after {
  content: ""; position: absolute; bottom: 100%; left: 0;
  width: 100%; height: 20px; background: transparent;
}
#body_wrap :is(.l-header,.l-fixHeader) .c-gnav > .menu-item-has-children:is(:hover,:focus-within) > .sub-menu {
  opacity: 1; visibility: visible; pointer-events: auto;
}
#body_wrap :is(.l-header,.l-fixHeader) .c-gnav .sub-menu > li > a {
  display: flex; align-items: center;
  min-height: 64px; padding: 16px 24px 16px 32px;
  font-size: 16px !important; font-weight: 700;
  color: var(--hh-ink); line-height: 1.5;
}
#body_wrap :is(.l-header,.l-fixHeader) .c-gnav .sub-menu > li > a::before { left: 12px; }
#body_wrap :is(.l-header,.l-fixHeader) .c-gnav .sub-menu > li:first-child > a { border-radius: 13px 13px 0 0; }
#body_wrap :is(.l-header,.l-fixHeader) .c-gnav .sub-menu > li:last-child > a { border-radius: 0 0 13px 13px; }
#body_wrap :is(.l-header,.l-fixHeader) .c-gnav .sub-menu > li > a:is(:hover,:focus-visible) { background: #fff8d9; }
#body_wrap :is(.l-header,.l-fixHeader) .c-gnav .sub-menu > li > a:focus-visible {
  outline: 2px solid var(--hh-ink); outline-offset: -4px;
}
#body_wrap :is(.l-header,.l-fixHeader) .c-gnav .sub-menu .ttl { left: 0 !important; transition: none; }

/* Menu men's explanation only: keep the original diagonal leaf decoration. */
#body_wrap.page-id-2 .post_content .hh-menu-explanation:has(+ .wp-block-buttons a[href$="/mens/"]) {
  background: #f2f9ed !important;
}

/* 2026-10-07: course-specific buttons and requested explanation surfaces only. */
#body_wrap.page:not(.home) .post_content .wp-block-button__link[href$="/mens/"] {
  background: #e3eedb !important;
  color: #37532c !important;
  border: 1px solid #bed0b2 !important;
}
#body_wrap.page:not(.home) .post_content .wp-block-button__link[href$="/mens/"]:hover {
  background: #d5e5c9 !important;
}
#body_wrap.page:not(.home) .post_content .wp-block-button__link[href$="/kids/"],
#body_wrap .hh-trial .hh-trial-course--kids .wp-block-button__link,
#body_wrap.page-id-5564 .post_content .wp-block-button__link {
  background: #f4dde2 !important;
  color: #5c3440 !important;
  border: 1px solid #d7acb7 !important;
}
#body_wrap.page:not(.home) .post_content .wp-block-button__link[href$="/kids/"]:hover,
#body_wrap .hh-trial .hh-trial-course--kids .wp-block-button__link:hover,
#body_wrap.page-id-5564 .post_content .wp-block-button__link:hover {
  background: #eed1d8 !important;
}
#body_wrap.page:not(.home) .post_content .wp-block-button__link:is([href$="/mens/"],[href$="/kids/"]) :is(span,i),
#body_wrap .hh-trial .hh-trial-course--kids .wp-block-button__link :is(span,i),
#body_wrap.page-id-5564 .post_content .wp-block-button__link :is(span,i) {
  color: inherit !important;
}
/* The only process step linking to Trial is STEP 01. Frame its final counselling paragraph. */
#body_wrap .hh-process-page .hh-process-step:has(a[href$="/trial-menu/"]) > p:last-child,
#body_wrap .hh-process-page .hh-process-step:has(a[href$="/trial-menu/"]) > .wp-block-group__inner-container > p:last-child {
  box-sizing: border-box;
  width: 100%;
  padding: 28px 30px;
  background: #fff;
  border: 1px solid var(--hh-line);
  border-radius: 16px;
  margin-top: 28px !important;
}
#body_wrap .hh-trial .hh-trial-course__lead {
  width: 100%;
  max-width: 958px;
}
/* Match the existing Trial 'reasons' surface exactly, without changing that section. */
#body_wrap .hh-trial .hh-trial-guide,
#body_wrap .hh-price-page .hh-price-review-discount {
  background: #fcf7f3;
}
/* One outer frame holds the two discount explanations plus their existing price-example card. */
#body_wrap .hh-price-page #repeat-benefits {
  box-sizing: border-box;
  width: 100%;
  max-width: 1100px;
  padding: 44px;
  background: #fffdf9;
  border: 1px solid var(--hh-line);
  border-radius: 24px;
}
#body_wrap .hh-price-page #repeat-benefits .hh-price-card {
  background: #fff;
  margin-bottom: 0;
}
@media (max-width: 767px) {
  #body_wrap .hh-process-page .hh-process-step:has(a[href$="/trial-menu/"]) > p:last-child,
  #body_wrap .hh-process-page .hh-process-step:has(a[href$="/trial-menu/"]) > .wp-block-group__inner-container > p:last-child {
    padding: 22px 18px;
  }
  #body_wrap .hh-price-page #repeat-benefits {
    padding: 28px 20px;
    border-radius: 18px;
  }
}

/* 2026-10-07: one warm yellow family across navigation, content and footer. */
:root {
  --hh-yellow: #efdf9d;
  --hh-yellow-soft: #fbf7e9;
  --hh-yellow-hover: #e8d58b;
  --hh-line: #e7ddc8;
}
#body_wrap .l-footer { background: var(--hh-yellow-soft) !important; }
#body_wrap .l-footer::before { opacity: .14; }
#body_wrap.page:not(.home):not(.page-id-222) .l-content::before { background: var(--hh-yellow-soft) !important; }
#body_wrap .hh-home .hh-hero,
#body_wrap .hh-home .hh-campaign,
#body_wrap .p-breadcrumb.-bg-on { background: var(--hh-yellow-soft); }
#body_wrap .l-footer #text-3 .textwidget { background: var(--hh-paper); }
/* These were separate hard-coded yellows: use the shared soft surface instead. */
#body_wrap .hh-price-page :is(.hh-price-summary--student,.hh-price-repeat-note,.hh-price-part-list p,.hh-price-benefit),
#body_wrap.page-id-2 .post_content .hh-menu-course--student,
#body_wrap .hh-contact-coupon,
#body_wrap .hh-contact-notice,
#body_wrap .hh-store-page .hh-store-feature,
#body_wrap .hh-trial .hh-trial-care:nth-child(2n+1) { background: var(--hh-yellow-soft); }
#body_wrap .hh-price-page table :is(thead th,thead td,th) { background: var(--hh-yellow) !important; }
#body_wrap .hh-trial .hh-trial-price th { background: var(--hh-yellow-soft); }
#body_wrap .hh-reviews-page .wp-block-details summary:hover { background: var(--hh-yellow-hover); }
#body_wrap :is(.l-header,.l-fixHeader) .c-gnav .sub-menu > li > a:is(:hover,:focus-visible) { background: var(--hh-yellow-soft); }
#body_wrap .post_content .wp-block-button__link:not([href$="/mens/"]):not([href$="/kids/"]):hover { --hh-yellow: var(--hh-yellow-hover); }
#body_wrap.page-id-5964 .hh-inner-lead-image img { object-position: 60% 35%; }
/* Match the three Menu course cards; keep the men's own sage identity and supplied photo/leaves. */
#body_wrap.page-id-2 .post_content .hh-menu-course--mens { background: #f2f9ed; border-color: #bed0b2; }
#body_wrap.page-id-2 .post_content .hh-menu-course--mens .hh-menu-explanation:has(+ .wp-block-buttons a[href$="/mens/"]) { background: #fff !important; }
#body_wrap.page-id-2 .post_content .hh-menu-course--mens h2 { color: #37532c !important; }
#body_wrap.page-id-2 .post_content .hh-menu-course--mens .hh-menu-subheading { margin: 0 0 24px !important; }
/* Men's tables: same rounded shell, horizontal rules and spacing as Trial.
   Two-column price tables use Trial's label/value proportions; four-column part lists stay equal. */
#body_wrap.page-id-222 .post_content .wp-block-table { border-radius: 15px; background: #fff; }
#body_wrap.page-id-222 .post_content .wp-block-table table { border: 0 !important; table-layout: fixed; }
#body_wrap.page-id-222 .post_content table tbody tr :is(th,td) {
  padding: 18px 24px !important; min-width: 0 !important;
  border: 0 !important; border-bottom: 1px solid #bed0b2 !important;
  background: #fff !important; color: var(--hh-ink) !important;
  font-size: 16px !important; line-height: 1.85; vertical-align: middle;
  white-space: normal; overflow-wrap: anywhere;
}
#body_wrap.page-id-222 .post_content table tbody tr:last-child :is(th,td) { border-bottom: 0 !important; }
#body_wrap.page-id-222 .post_content table tbody tr:nth-child(even) td { background: #fff !important; }
#body_wrap.page-id-222 .post_content table tbody tr:has(> :last-child:nth-child(2)) > :first-child {
  width: 34% !important; background: #e3eedb !important;
  color: #37532c !important; font-weight: 700 !important;
}
#body_wrap.page-id-222 .post_content table tbody tr:has(> :last-child:nth-child(4)) > :is(th,td) {
  width: 25% !important; background: #fff !important;
  color: var(--hh-ink) !important; font-weight: 400 !important;
}
@media (max-width: 767px) {
  #body_wrap .l-footer::before { opacity: .12; }
  #body_wrap #fix_bottom_menu,
  #body_wrap #fix_bottom_menu .menu-item:nth-child(1) a,
  #body_wrap #fix_bottom_menu .menu-item:nth-child(2) a { background: var(--hh-yellow-soft); }
  #body_wrap.page-id-5964 .hh-inner-lead-image img { object-position: 64% 35%; }
  #body_wrap.page-id-222 .post_content table tbody tr :is(th,td) { padding: 14px 12px !important; }
  #body_wrap.page-id-222 .post_content table tbody tr:has(> :last-child:nth-child(2)) > :first-child { width: 38% !important; }
}

/* 2026-10-07: only the back-to-top outline and arrow, on every page. */
#body_wrap #pagetop {
  border-color: var(--hh-gold-dark) !important;
  color: var(--hh-gold-dark) !important;
}
#body_wrap #pagetop .c-fixBtn__icon { color: inherit !important; }

/* 2026-10-07: Kids-only rose palette. Shared navigation/footer and content stay intact. */
#body_wrap.page-id-5564 .post_content {
  --hh-kids-pink: #f4dde2;
  --hh-kids-soft: #fff5f7;
  --hh-kids-title: #f9edf0;
  --hh-kids-line: #d7acb7;
  --hh-kids-ink: #5c3440;
  --hh-line: var(--hh-kids-line);
  --hh-cream: var(--hh-kids-soft);
  --hh-blush: var(--hh-kids-soft);
}
#body_wrap.page.page-id-5564:not(.home) .l-content::before {
  background: #f9edf0 !important;
}
#body_wrap.page-id-5564 .c-pageTitle,
#body_wrap.page-id-5564 .post_content :is(h2,h3,h4) { color: #5c3440 !important; }
#body_wrap.page-id-5564 .post_content .hh-kids-parents {
  background: var(--hh-kids-soft);
  border-color: var(--hh-kids-line);
}
#body_wrap.page-id-5564 .post_content .hh-kids-care-card {
  background: #fff;
  border-color: var(--hh-kids-line);
}
#body_wrap.page-id-5564 .post_content .wp-block-list {
  background: var(--hh-kids-soft) !important;
  border-color: var(--hh-kids-line) !important;
}
#body_wrap.page-id-5564 .post_content .wp-block-table {
  border-color: var(--hh-kids-line);
  background: #fff;
}
#body_wrap.page-id-5564 .post_content .wp-block-table table,
#body_wrap.page-id-5564 .post_content .wp-block-table :is(th,td) {
  border-color: var(--hh-kids-line) !important;
}
#body_wrap.page-id-5564 .post_content .wp-block-table tr {
  background: #fff !important;
}
#body_wrap.page-id-5564 .post_content .wp-block-table :is(th,td) {
  background: #fff !important;
}
#body_wrap.page-id-5564 .post_content .wp-block-table tr:nth-child(even) :is(th,td) {
  background: var(--hh-kids-soft) !important;
}
#body_wrap.page-id-5564 .post_content .wp-block-table tr:has(> :last-child:nth-child(2)) > :first-child,
#body_wrap.page-id-5564 .post_content .wp-block-table thead :is(th,td) {
  background: var(--hh-kids-pink) !important;
  color: var(--hh-kids-ink) !important;
}
#body_wrap.page-id-5564 .post_content :is(.ribbon1,.hh-trial-price__tag) {
  color: var(--hh-kids-ink) !important;
  border-color: var(--hh-kids-line) !important;
}
#body_wrap.page-id-5564 .post_content .wp-block-button__link {
  background: var(--hh-kids-pink) !important;
  color: var(--hh-kids-ink) !important;
  border-color: var(--hh-kids-line) !important;
}
#body_wrap.page-id-5564 .post_content .wp-block-button__link:hover { background: #eed1d8 !important; }
#body_wrap.page-id-5564 .post_content .wp-block-button__link:focus-visible {
  outline-color: var(--hh-kids-ink);
}

/* 2026-10-07: match the requested table forms, retaining Kids pink / Men's sage. */
#body_wrap.page-id-5564 .post_content .wp-block-table:has(table.tablepress-id-52) {
  border: 1px solid var(--hh-kids-line); border-radius: 15px;
  background: #fff; overflow: hidden;
}
#body_wrap.page-id-5564 .post_content .wp-block-table table.tablepress-id-52 {
  border: 0 !important; table-layout: fixed;
}
#body_wrap.page-id-5564 .post_content table.tablepress-id-52 tbody tr :is(th,td) {
  padding: 18px 24px !important; min-width: 0 !important;
  border: 0 !important; border-bottom: 1px solid var(--hh-kids-line) !important;
  background: #fff !important; color: var(--hh-ink) !important;
  font-size: 16px !important; line-height: 1.85; vertical-align: middle;
  white-space: normal; overflow-wrap: anywhere;
}
#body_wrap.page-id-5564 .post_content table.tablepress-id-52 tbody tr:last-child :is(th,td) {
  border-bottom: 0 !important;
}
#body_wrap.page-id-5564 .post_content .wp-block-table table.tablepress-id-52 tbody tr:nth-child(even) > :is(th,td) { background: #fff !important; }
#body_wrap.page-id-5564 .post_content .wp-block-table table.tablepress-id-52 tbody tr:has(> :last-child:nth-child(2)) > :first-child {
  width: 34% !important; background: var(--hh-kids-pink) !important;
  color: var(--hh-kids-ink) !important; font-weight: 700 !important;
}
/* Four-column parts: the Kids-style full cell grid, not the rounded price shell. */
#body_wrap.page-id-222 .post_content .wp-block-table:has(tbody tr > :last-child:nth-child(4)) {
  border: 0; border-radius: 0; overflow-x: auto;
}
#body_wrap.page-id-222 .post_content table:has(tbody tr > :last-child:nth-child(4)) {
  border-collapse: collapse; table-layout: auto;
}
#body_wrap.page-id-222 .post_content table tbody tr:has(> :last-child:nth-child(4)) > :is(th,td) {
  width: 25% !important; height: auto !important;
  padding: 16px 18px !important; min-width: 0 !important;
  border: 1px solid #bed0b2 !important;
  background: #fff !important; color: var(--hh-ink) !important; font-weight: 400 !important;
}
#body_wrap.page-id-222 .post_content table tbody tr:nth-child(even):has(> :last-child:nth-child(4)) > :is(th,td) {
  background: #f7fbf4 !important;
}
@media (max-width: 767px) {
  #body_wrap.page-id-5564 .post_content table.tablepress-id-52 tbody tr :is(th,td) {
    padding: 14px 12px !important;
  }
  #body_wrap.page-id-5564 .post_content .wp-block-table table.tablepress-id-52 tbody tr:has(> :last-child:nth-child(2)) > :first-child { width: 38% !important; }
  #body_wrap.page-id-222 .post_content table tbody tr:has(> :last-child:nth-child(4)) > :is(th,td) {
    min-width: 0 !important; padding: 14px 10px !important;
  }
}

/* 2026-10-07: introductory amounts only. Normal/session-course prices stay unchanged. */
#body_wrap:is(.page-id-5564,.page-id-5964,.page-id-222,.page-id-15) .post_content td .ribbon1 + :is(.price_b,strong),
#body_wrap.page-id-222 .post_content .hh-mens-offer-price strong {
  font-weight: 700 !important;
}

/* 2026-10-07: freely editable HOME promotion. No schedule or automatic expiry. */
#body_wrap.home .hh-home .hh-home-promotion {
  width: calc(100% - 48px); max-width: 1100px; box-sizing: border-box;
  margin: 30px auto !important; padding: 28px 32px;
  background: #fffdf9; border: 1px solid var(--hh-line); border-radius: 20px;
  box-shadow: 0 8px 24px rgba(92,72,51,.04);
}
#body_wrap.home .hh-home .hh-home-promotion > .wp-block-group__inner-container {
  display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 10px 32px;
}
#body_wrap.home .hh-home .hh-home-promotion :is(p,h2,.wp-block-buttons) {
  min-width: 0; max-width: none; margin: 0 !important;
}
#body_wrap.home .hh-home .hh-home-promotion .hh-home-promotion__period {
  grid-column: 1; justify-self: start; padding: 6px 14px;
  background: var(--hh-yellow-soft); border-radius: 999px;
  color: var(--hh-gold-dark); font-size: 14px !important; line-height: 1.6; font-weight: 700 !important;
}
#body_wrap.home .hh-home .hh-home-promotion .hh-home-promotion__title {
  grid-column: 1; padding: 0; border: 0; background: none;
  color: var(--hh-ink); font-family: var(--hh-serif);
  font-size: clamp(24px,2.4vw,28px) !important; line-height: 1.5; letter-spacing: .04em;
}
#body_wrap.home .hh-home .hh-home-promotion .hh-home-promotion__description {
  grid-column: 1; color: var(--hh-ink); font-size: 16px; line-height: 1.85;
  overflow-wrap: anywhere;
}
#body_wrap.home .hh-home .hh-home-promotion .hh-home-promotion__buttons {
  grid-column: 2; grid-row: 1 / span 3; align-self: center; justify-self: end;
}
#body_wrap.home .hh-home .hh-home-promotion .wp-block-button__link {
  min-height: 52px; padding: 14px 26px; box-sizing: border-box;
  font-size: 16px; line-height: 1.5; font-weight: 700; white-space: normal;
}
/* Add this class in Group > Advanced > Additional CSS classes to hide it.
   Scoped to the public HOME only: hidden content remains editable in the editor. */
#body_wrap.home .hh-home .hh-home-promotion.hh-campaign-hidden { display: none !important; }
@media (max-width: 767px) {
  #body_wrap.home .hh-home .hh-home-promotion {
    width: calc(100% - 32px); margin: 24px auto !important; padding: 24px 20px; border-radius: 16px;
  }
  #body_wrap.home .hh-home .hh-home-promotion > .wp-block-group__inner-container {
    grid-template-columns: minmax(0,1fr); gap: 12px;
  }
  #body_wrap.home .hh-home .hh-home-promotion .hh-home-promotion__buttons {
    grid-column: 1; grid-row: auto; justify-self: start; margin-top: 6px !important;
  }
}

/* 2026-10-07: quieter HOME review notice; mobile-first alignment, no competing yellow pill. */
#body_wrap.home .hh-home .hh-campaign {
  display: block; height: auto; padding: 24px 0;
  background: var(--hh-yellow-soft); text-align: left;
}
#body_wrap.home .hh-home .hh-campaign .hh-review-notice {
  position: relative; width: calc(100% - 48px); max-width: 1100px;
  margin: 0 auto !important; padding: 0 33px; box-sizing: border-box;
}
#body_wrap.home .hh-home .hh-review-notice::before {
  content: ""; position: absolute; left: 0; top: 0; bottom: 0;
  width: 2px; background: var(--hh-gold);
}
#body_wrap.home .hh-home .hh-review-notice > .wp-block-group__inner-container {
  display: grid; grid-template-columns: auto minmax(0,1fr) auto;
  align-items: center; gap: 12px 24px;
}
#body_wrap.home .hh-home .hh-review-notice p {
  width: auto; min-width: 0; max-width: none; margin: 0 !important;
  text-align: left; font-size: 16px !important; line-height: 1.85;
}
#body_wrap.home .hh-home .hh-review-notice .hh-review-notice__title strong {
  display: inline; margin: 0; padding: 0; border: 0; border-radius: 0;
  background: none; color: var(--hh-gold-dark);
  font-size: 16px !important; font-weight: 700 !important; white-space: nowrap;
}
#body_wrap.home .hh-home .hh-review-notice .hh-review-notice__description { overflow-wrap: anywhere; }
#body_wrap.home .hh-home .hh-review-notice .hh-review-notice__link a {
  display: inline-flex; align-items: center; min-height: 44px;
  max-width: 100%; color: var(--hh-gold-dark); background: none;
  font-size: 16px !important; font-weight: 700 !important;
  text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: .25em;
  border-radius: 0; line-height: 1.5;
}
#body_wrap.home .hh-home .hh-review-notice .hh-review-notice__link a:hover { text-decoration-thickness: 2px; }
#body_wrap.home .hh-home .hh-review-notice .hh-review-notice__link a:focus-visible {
  outline: 2px solid var(--hh-gold-dark); outline-offset: 4px;
}
@media (max-width: 767px) {
  #body_wrap.home .hh-home .hh-campaign { padding: 22px 0; }
  #body_wrap.home .hh-home .hh-campaign .hh-review-notice {
    width: calc(100% - 32px); padding: 0 21px;
  }
  #body_wrap.home .hh-home .hh-review-notice > .wp-block-group__inner-container {
    grid-template-columns: minmax(0,1fr); gap: 8px;
  }
}

/* 2026-10-07: bold only the three HOME hero feature labels. */
#body_wrap.home .hh-home .hh-hero .hh-check-list > li { font-weight: 700 !important; }
#body_wrap.home .hh-home .hh-hero .hh-check-list > li::before { font-weight: 400; }


/* Price: editable category photos within the existing design (2026-10-07). */
#body_wrap.page-id-15 .hh-price-page .hh-price-category-heading,
#body_wrap.page-id-15 .hh-price-page .hh-price-category-heading > .wp-block-group__inner-container {
  display: flex; align-items: center; gap: 16px; min-width: 0;
}
#body_wrap.page-id-15 .hh-price-page .hh-price-category-heading {
  max-width: none; width: 100%; margin: 0 0 28px !important;
  padding: 0; border: 0; background: none;
}
#body_wrap.page-id-15 .hh-price-page .hh-price-category-heading .hh-price-category-photo {
  flex: 0 0 80px; width: 80px !important; max-width: 80px !important;
  margin: 0 !important; overflow: hidden; border-radius: 14px;
}
#body_wrap.page-id-15 .hh-price-page .hh-price-category-photo img {
  display: block; width: 80px !important; height: 80px !important;
  object-fit: cover; border-radius: 14px;
}
#body_wrap.page-id-15 .hh-price-page .hh-price-category-heading h2 {
  margin: 0 !important; padding: 0 !important; min-width: 0;
  line-height: 1.45 !important; text-wrap: balance;
}
#body_wrap.page-id-15 .hh-price-category-heading--regular img { object-position: 48% 40%; }
#body_wrap.page-id-15 .hh-price-category-heading--student img { object-position: 65% 30%; }
#body_wrap.page-id-15 .hh-price-category-heading--kids img { object-position: 43% 36%; }
#body_wrap.page-id-15 .hh-price-category-heading--mens img { object-position: 65% 25%; }
#body_wrap.page-id-15 .hh-price-page .hh-inner-lead-image img { object-position: 60% 0% !important; }
@media (max-width: 767px) {
  #body_wrap.page-id-15 .hh-price-page .hh-price-category-heading h2 { font-size: 26px !important; }
  #body_wrap.page-id-15 .hh-price-page .hh-inner-lead-image img { object-position: 70% 32% !important; }
}


/* Store details: keep the desktop's three lines; separate meaningful items on mobile. */
@media (max-width: 767px) {
  #body_wrap .l-footer #text-3 .hh-footer-store-info .hh-footer-detail {
    display: block;
  }
  #body_wrap .l-footer #text-3 .hh-footer-store-info .hh-footer-divider,
  #body_wrap .l-footer #text-3 .hh-footer-store-info br {
    display: none;
  }
}


/* Approved usability refinements: editable section shortcuts, balanced mobile headings,
 * compact parts lists, native review-image lightboxes and larger home text-link targets. */
#body_wrap .post_content .hh-section-shortcuts {
  width: 100%; max-width: 1100px; margin: 28px 0 44px; padding: 0;
}
#body_wrap .post_content .hh-section-shortcuts__label {
  margin: 0 0 12px !important; font-weight: 700 !important;
}
#body_wrap .post_content .hh-section-shortcuts .wp-block-buttons {
  display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 12px; margin: 0 !important;
}
#body_wrap .post_content .hh-section-shortcuts--trial .wp-block-buttons {
  grid-template-columns: repeat(3,minmax(0,1fr));
}
#body_wrap .post_content .hh-section-shortcuts .wp-block-button { width: 100%; margin: 0 !important; }
#body_wrap .post_content .hh-section-shortcuts .wp-block-button__link {
  display: flex; align-items: center; justify-content: center; width: 100%; min-height: 52px;
  padding: 12px 16px !important; border: 1px solid var(--hh-line) !important; border-radius: 12px;
  background: #fffdf9 !important; color: var(--hh-ink) !important; box-shadow: none !important;
  text-wrap: balance; line-height: 1.6; text-decoration: none;
}
#body_wrap .post_content .hh-section-shortcuts .hh-shortcut--kids .wp-block-button__link {
  background: #fff5f7 !important; border-color: #d7acb7 !important; color: #5c3440 !important;
}
#body_wrap .post_content .hh-section-shortcuts .hh-shortcut--mens .wp-block-button__link {
  background: #f2f9ed !important; border-color: #bed0b2 !important; color: #37532c !important;
}
#body_wrap .post_content .hh-section-shortcuts .wp-block-button__link:hover { filter: brightness(.97); }
#body_wrap .post_content .hh-section-shortcuts .wp-block-button__link:focus-visible,
#body_wrap.home .hh-home .hh-text-link a:focus-visible {
  outline: 2px solid var(--hh-gold-dark); outline-offset: 3px;
}
#body_wrap.page-id-15 .hh-price-category-heading[id],
#body_wrap.page-id-1785 .hh-trial-course[id] { scroll-margin-top: 130px; }
#body_wrap.page-id-19 .hh-review-zoom-hint { font-size: 14px !important; color: var(--hh-muted); }
#body_wrap.page-id-19 .hh-review-card .lightbox-trigger { min-width: 44px; min-height: 44px; }
#body_wrap.page-id-19 .hh-review-card img { cursor: zoom-in; }
#body_wrap.home .hh-home .hh-text-link a {
  display: inline-flex; align-items: center; min-height: 44px; max-width: 100%;
  padding-block: 8px; line-height: 1.65;
}
@media (max-width: 767px) {
  #body_wrap .post_content .hh-section-shortcuts .wp-block-buttons { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; }
  #body_wrap .post_content .hh-section-shortcuts .wp-block-button__link { padding-inline: 10px !important; }
  #body_wrap .post_content .hh-inner-page :is(h2,h3) { text-wrap: balance; }
  #body_wrap.page-id-222 .hh-mens-offers-heading .hh-heading-phrase { display: inline-block; white-space: nowrap; }
  #body_wrap.page-id-15 .hh-price-category-heading[id],
  #body_wrap.page-id-1785 .hh-trial-course[id] { scroll-margin-top: 100px; }
}
@media (max-width: 375px) {
  #body_wrap:is(.page-id-222,.page-id-5564) .post_content .hh-mobile-parts table tbody { display: block; }
  #body_wrap:is(.page-id-222,.page-id-5564) .post_content .hh-mobile-parts table tr {
    display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); height: auto !important;
  }
  #body_wrap:is(.page-id-222,.page-id-5564) .post_content .wp-block-table.hh-mobile-parts table tbody tr > td {
    display: block; width: auto !important; height: auto !important; min-height: 58px;
    padding: 14px !important; border-width: 0 1px 1px 0 !important; overflow-wrap: anywhere;
  }
  #body_wrap:is(.page-id-222,.page-id-5564) .post_content .wp-block-table.hh-mobile-parts table tbody tr > td:nth-child(even) { border-right-width: 0 !important; }
  #body_wrap:is(.page-id-222,.page-id-5564) .post_content .wp-block-table.hh-mobile-parts table tbody tr:last-child > td:nth-last-child(-n+2) { border-bottom-width: 0 !important; }
}


/* Blog index only: phone 1 column, tablet 2 columns, desktop 3 columns.
 * Grid includes the gap in its track sizing, unlike the previous flex widths. */
#body_wrap.blog #main_content .p-postList.-type-card {
  display: grid; grid-template-columns: minmax(0,1fr);
  gap: 40px 22px; width: 100%; margin: 0;
}
#body_wrap.blog #main_content .p-postList.-type-card > .p-postList__item {
  width: 100%; min-width: 0; margin: 0;
}
@media (min-width: 768px) {
  #body_wrap.blog #main_content .p-postList.-type-card { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (min-width: 1024px) {
  #body_wrap.blog #main_content .p-postList.-type-card { grid-template-columns: repeat(3,minmax(0,1fr)); }
}
